[2026-06-05 00:00:02,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:00:02,840.840 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 00:00:08,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:00:08,626.626 INFO    ] Checking for system updates...
[2026-06-05 00:00:08,669.669 INFO    ] 200
[2026-06-05 00:00:08,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:00:08,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:00:08,739.739 INFO    ] No update needed
[2026-06-05 00:00:08,742.742 INFO    ] Checking for camera pi updates...
[2026-06-05 00:00:08,776.776 INFO    ] 200
[2026-06-05 00:00:08,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:00:08,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:00:08,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:00:08,863.863 INFO    ] No camera update needed
[2026-06-05 00:00:08,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:00:08,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:00:08,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:00:08,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:00:10,920.920 INFO    ] ================================================
[2026-06-05 00:00:10,936.936 INFO    ] Launching Daemon at Fri Jun  5 00:00:10 IST 2026
[2026-06-05 00:00:10,947.947 INFO    ] ================================================
[2026-06-05 00:00:11,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:00:11
[2026-06-05 00:00:12,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:00:12,545.545 INFO    ] Initializing speech engine...
[2026-06-05 00:00:12,557.557 INFO    ] 2026-06-05 00:00:12
[2026-06-05 00:00:12,863.863 INFO    ] 2026-06-05 00:00:12
[2026-06-05 00:00:12,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:00:13,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:00:13,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:00:13,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:00:13,370.370 INFO    ] time= 05/06/2026 00:00:13
[2026-06-05 00:00:13,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:00:13,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:00:13,526.526 INFO    ] No existing commands found in stream
[2026-06-05 00:00:18,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:00:18,574.574 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 00:00:21,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:00:21,320.320 INFO    ] Checking for system updates...
[2026-06-05 00:00:21,358.358 INFO    ] 200
[2026-06-05 00:00:21,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:00:21,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:00:21,418.418 INFO    ] No update needed
[2026-06-05 00:00:21,421.421 INFO    ] Checking for camera pi updates...
[2026-06-05 00:00:21,456.456 INFO    ] 200
[2026-06-05 00:00:21,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:00:21,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:00:21,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:00:21,553.553 INFO    ] No camera update needed
[2026-06-05 00:00:21,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:00:21,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:00:21,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:00:21,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:00:23,612.612 INFO    ] ================================================
[2026-06-05 00:00:23,627.627 INFO    ] Launching Daemon at Fri Jun  5 00:00:23 IST 2026
[2026-06-05 00:00:23,638.638 INFO    ] ================================================
[2026-06-05 00:00:24,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:00:24
[2026-06-05 00:00:24,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:00:25,125.125 INFO    ] Initializing speech engine...
[2026-06-05 00:00:25,139.139 INFO    ] 2026-06-05 00:00:25
[2026-06-05 00:00:25,411.411 INFO    ] 2026-06-05 00:00:25
[2026-06-05 00:00:25,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:00:25,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:00:25,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:00:25,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:00:25,819.819 INFO    ] time= 05/06/2026 00:00:25
[2026-06-05 00:00:25,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:00:25,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:00:26,006.006 INFO    ] No existing commands found in stream
[2026-06-05 00:00:31,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:00:31,035.035 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 00:00:34,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:00:34,314.314 INFO    ] Checking for system updates...
[2026-06-05 00:00:34,350.350 INFO    ] 200
[2026-06-05 00:00:34,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:00:34,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:00:34,415.415 INFO    ] No update needed
[2026-06-05 00:00:34,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 00:00:34,455.455 INFO    ] 200
[2026-06-05 00:00:34,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:00:34,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:00:34,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:00:34,551.551 INFO    ] No camera update needed
[2026-06-05 00:00:34,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:00:34,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:00:34,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:00:34,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:00:36,606.606 INFO    ] ================================================
[2026-06-05 00:00:36,622.622 INFO    ] Launching Daemon at Fri Jun  5 00:00:36 IST 2026
[2026-06-05 00:00:36,633.633 INFO    ] ================================================
[2026-06-05 00:00:37,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:00:37
[2026-06-05 00:00:37,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:00:38,038.038 INFO    ] Initializing speech engine...
[2026-06-05 00:00:38,051.051 INFO    ] 2026-06-05 00:00:38
[2026-06-05 00:00:38,317.317 INFO    ] 2026-06-05 00:00:38
[2026-06-05 00:00:38,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:00:38,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:00:38,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:00:38,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:00:38,694.694 INFO    ] time= 05/06/2026 00:00:38
[2026-06-05 00:00:38,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:00:38,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:00:38,855.855 INFO    ] No existing commands found in stream
[2026-06-05 00:00:43,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:00:43,883.883 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 00:00:46,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:00:46,286.286 INFO    ] Checking for system updates...
[2026-06-05 00:00:46,328.328 INFO    ] 200
[2026-06-05 00:00:46,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:00:46,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:00:46,396.396 INFO    ] No update needed
[2026-06-05 00:00:46,399.399 INFO    ] Checking for camera pi updates...
[2026-06-05 00:00:46,438.438 INFO    ] 200
[2026-06-05 00:00:46,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:00:46,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:00:46,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:00:46,537.537 INFO    ] No camera update needed
[2026-06-05 00:00:46,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:00:46,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:00:46,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:00:46,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:00:48,596.596 INFO    ] ================================================
[2026-06-05 00:00:48,612.612 INFO    ] Launching Daemon at Fri Jun  5 00:00:48 IST 2026
[2026-06-05 00:00:48,623.623 INFO    ] ================================================
[2026-06-05 00:00:49,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:00:49
[2026-06-05 00:00:49,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:00:50,242.242 INFO    ] Initializing speech engine...
[2026-06-05 00:00:50,248.248 INFO    ] 2026-06-05 00:00:50
[2026-06-05 00:00:50,531.531 INFO    ] 2026-06-05 00:00:50
[2026-06-05 00:00:50,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:00:50,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:00:50,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:00:50,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:00:50,994.994 INFO    ] time= 05/06/2026 00:00:50
[2026-06-05 00:00:51,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:00:51,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:00:51,146.146 INFO    ] No existing commands found in stream
[2026-06-05 00:00:56,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:00:56,161.161 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 00:01:00,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:01:00,567.567 INFO    ] Checking for system updates...
[2026-06-05 00:01:00,605.605 INFO    ] 200
[2026-06-05 00:01:00,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:00,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:01:00,672.672 INFO    ] No update needed
[2026-06-05 00:01:00,674.674 INFO    ] Checking for camera pi updates...
[2026-06-05 00:01:00,713.713 INFO    ] 200
[2026-06-05 00:01:00,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:00,758.758 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:01:00,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:01:00,808.808 INFO    ] No camera update needed
[2026-06-05 00:01:00,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:01:00,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:01:00,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:01:00,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:01:02,877.877 INFO    ] ================================================
[2026-06-05 00:01:02,893.893 INFO    ] Launching Daemon at Fri Jun  5 00:01:02 IST 2026
[2026-06-05 00:01:02,905.905 INFO    ] ================================================
[2026-06-05 00:01:03,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:01:03
[2026-06-05 00:01:04,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:01:04,392.392 INFO    ] Initializing speech engine...
[2026-06-05 00:01:04,405.405 INFO    ] 2026-06-05 00:01:04
[2026-06-05 00:01:04,655.655 INFO    ] 2026-06-05 00:01:04
[2026-06-05 00:01:04,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:01:04,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:01:04,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:01:05,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:01:05,063.063 INFO    ] time= 05/06/2026 00:01:05
[2026-06-05 00:01:05,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:01:05,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:01:05,147.147 INFO    ] No existing commands found in stream
[2026-06-05 00:01:10,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:01:10,162.162 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 00:01:13,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:01:13,185.185 INFO    ] Checking for system updates...
[2026-06-05 00:01:13,223.223 INFO    ] 200
[2026-06-05 00:01:13,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:13,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:01:13,288.288 INFO    ] No update needed
[2026-06-05 00:01:13,291.291 INFO    ] Checking for camera pi updates...
[2026-06-05 00:01:13,326.326 INFO    ] 200
[2026-06-05 00:01:13,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:13,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:01:13,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:01:13,421.421 INFO    ] No camera update needed
[2026-06-05 00:01:13,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:01:13,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:01:13,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:01:13,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:01:15,478.478 INFO    ] ================================================
[2026-06-05 00:01:15,494.494 INFO    ] Launching Daemon at Fri Jun  5 00:01:15 IST 2026
[2026-06-05 00:01:15,505.505 INFO    ] ================================================
[2026-06-05 00:01:16,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:01:16
[2026-06-05 00:01:16,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:01:16,913.913 INFO    ] Initializing speech engine...
[2026-06-05 00:01:16,919.919 INFO    ] 2026-06-05 00:01:16
[2026-06-05 00:01:17,211.211 INFO    ] 2026-06-05 00:01:17
[2026-06-05 00:01:17,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:01:17,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:01:17,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:01:17,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:01:17,561.561 INFO    ] time= 05/06/2026 00:01:17
[2026-06-05 00:01:17,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:01:17,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:01:17,644.644 INFO    ] No existing commands found in stream
[2026-06-05 00:01:22,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:01:22,678.678 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 00:01:24,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:01:24,735.735 INFO    ] Checking for system updates...
[2026-06-05 00:01:24,772.772 INFO    ] 200
[2026-06-05 00:01:24,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:24,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:01:24,831.831 INFO    ] No update needed
[2026-06-05 00:01:24,833.833 INFO    ] Checking for camera pi updates...
[2026-06-05 00:01:24,868.868 INFO    ] 200
[2026-06-05 00:01:24,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:24,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:01:25,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:01:25,057.057 INFO    ] No camera update needed
[2026-06-05 00:01:25,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:01:25,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:01:25,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:01:25,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:01:27,113.113 INFO    ] ================================================
[2026-06-05 00:01:27,128.128 INFO    ] Launching Daemon at Fri Jun  5 00:01:27 IST 2026
[2026-06-05 00:01:27,139.139 INFO    ] ================================================
[2026-06-05 00:01:27,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:01:27
[2026-06-05 00:01:28,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:01:28,548.548 INFO    ] Initializing speech engine...
[2026-06-05 00:01:28,571.571 INFO    ] 2026-06-05 00:01:28
[2026-06-05 00:01:28,840.840 INFO    ] 2026-06-05 00:01:28
[2026-06-05 00:01:28,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:01:29,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:01:29,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:01:29,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:01:29,249.249 INFO    ] time= 05/06/2026 00:01:29
[2026-06-05 00:01:29,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:01:29,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:01:29,426.426 INFO    ] No existing commands found in stream
[2026-06-05 00:01:34,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:01:34,454.454 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 00:01:35,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:01:35,691.691 INFO    ] Checking for system updates...
[2026-06-05 00:01:35,727.727 INFO    ] 200
[2026-06-05 00:01:35,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:35,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:01:35,784.784 INFO    ] No update needed
[2026-06-05 00:01:35,787.787 INFO    ] Checking for camera pi updates...
[2026-06-05 00:01:35,820.820 INFO    ] 200
[2026-06-05 00:01:35,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:35,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:01:35,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:01:35,915.915 INFO    ] No camera update needed
[2026-06-05 00:01:35,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:01:35,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:01:35,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:01:35,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:01:37,970.970 INFO    ] ================================================
[2026-06-05 00:01:37,986.986 INFO    ] Launching Daemon at Fri Jun  5 00:01:37 IST 2026
[2026-06-05 00:01:38,997.997 INFO    ] ================================================
[2026-06-05 00:01:38,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:01:38
[2026-06-05 00:01:39,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:01:39,464.464 INFO    ] Initializing speech engine...
[2026-06-05 00:01:39,470.470 INFO    ] 2026-06-05 00:01:39
[2026-06-05 00:01:39,734.734 INFO    ] 2026-06-05 00:01:39
[2026-06-05 00:01:39,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:01:40,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:01:40,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:01:40,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:01:40,215.215 INFO    ] time= 05/06/2026 00:01:40
[2026-06-05 00:01:40,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:01:40,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:01:40,410.410 INFO    ] No existing commands found in stream
[2026-06-05 00:01:45,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:01:45,443.443 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 00:01:49,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:01:49,663.663 INFO    ] Checking for system updates...
[2026-06-05 00:01:49,699.699 INFO    ] 200
[2026-06-05 00:01:49,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:49,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:01:49,762.762 INFO    ] No update needed
[2026-06-05 00:01:49,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 00:01:49,798.798 INFO    ] 200
[2026-06-05 00:01:49,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:01:49,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:01:49,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:01:49,890.890 INFO    ] No camera update needed
[2026-06-05 00:01:49,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:01:49,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:01:49,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:01:49,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:01:51,946.946 INFO    ] ================================================
[2026-06-05 00:01:51,962.962 INFO    ] Launching Daemon at Fri Jun  5 00:01:51 IST 2026
[2026-06-05 00:01:51,973.973 INFO    ] ================================================
[2026-06-05 00:01:52,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:01:52
[2026-06-05 00:01:53,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:01:53,471.471 INFO    ] Initializing speech engine...
[2026-06-05 00:01:53,480.480 INFO    ] 2026-06-05 00:01:53
[2026-06-05 00:01:53,770.770 INFO    ] 2026-06-05 00:01:53
[2026-06-05 00:01:53,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:01:54,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:01:54,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:01:54,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:01:54,168.168 INFO    ] time= 05/06/2026 00:01:54
[2026-06-05 00:01:54,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:01:54,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:01:54,357.357 INFO    ] No existing commands found in stream
[2026-06-05 00:01:59,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:01:59,381.381 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 00:02:00,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:02:00,842.842 INFO    ] Checking for system updates...
[2026-06-05 00:02:00,898.898 INFO    ] 200
[2026-06-05 00:02:00,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:00,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:02:00,966.966 INFO    ] No update needed
[2026-06-05 00:02:00,969.969 INFO    ] Checking for camera pi updates...
[2026-06-05 00:02:01,004.004 INFO    ] 200
[2026-06-05 00:02:01,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:01,053.053 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:02:01,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:02:01,114.114 INFO    ] No camera update needed
[2026-06-05 00:02:01,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:02:01,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:02:01,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:02:01,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:02:03,176.176 INFO    ] ================================================
[2026-06-05 00:02:03,192.192 INFO    ] Launching Daemon at Fri Jun  5 00:02:03 IST 2026
[2026-06-05 00:02:03,203.203 INFO    ] ================================================
[2026-06-05 00:02:03,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:02:03
[2026-06-05 00:02:04,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:02:04,664.664 INFO    ] Initializing speech engine...
[2026-06-05 00:02:04,673.673 INFO    ] 2026-06-05 00:02:04
[2026-06-05 00:02:04,923.923 INFO    ] 2026-06-05 00:02:04
[2026-06-05 00:02:04,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:02:05,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:02:05,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:02:05,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:02:05,417.417 INFO    ] time= 05/06/2026 00:02:05
[2026-06-05 00:02:05,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:02:05,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:02:05,636.636 INFO    ] No existing commands found in stream
[2026-06-05 00:02:10,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:02:10,654.654 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 00:02:13,193.193 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:02:13,195.195 INFO    ] Checking for system updates...
[2026-06-05 00:02:13,231.231 INFO    ] 200
[2026-06-05 00:02:13,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:13,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:02:13,300.300 INFO    ] No update needed
[2026-06-05 00:02:13,302.302 INFO    ] Checking for camera pi updates...
[2026-06-05 00:02:13,338.338 INFO    ] 200
[2026-06-05 00:02:13,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:13,383.383 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:02:13,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:02:13,437.437 INFO    ] No camera update needed
[2026-06-05 00:02:13,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:02:13,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:02:13,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:02:13,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:02:15,497.497 INFO    ] ================================================
[2026-06-05 00:02:15,514.514 INFO    ] Launching Daemon at Fri Jun  5 00:02:15 IST 2026
[2026-06-05 00:02:15,525.525 INFO    ] ================================================
[2026-06-05 00:02:16,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:02:16
[2026-06-05 00:02:16,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:02:16,981.981 INFO    ] Initializing speech engine...
[2026-06-05 00:02:16,990.990 INFO    ] 2026-06-05 00:02:16
[2026-06-05 00:02:17,231.231 INFO    ] 2026-06-05 00:02:17
[2026-06-05 00:02:17,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:02:17,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:02:17,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:02:17,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:02:17,700.700 INFO    ] time= 05/06/2026 00:02:17
[2026-06-05 00:02:17,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:02:17,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:02:17,845.845 INFO    ] No existing commands found in stream
[2026-06-05 00:02:22,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:02:22,859.859 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 00:02:25,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:02:25,848.848 INFO    ] Checking for system updates...
[2026-06-05 00:02:25,887.887 INFO    ] 200
[2026-06-05 00:02:25,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:25,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:02:25,944.944 INFO    ] No update needed
[2026-06-05 00:02:25,946.946 INFO    ] Checking for camera pi updates...
[2026-06-05 00:02:25,980.980 INFO    ] 200
[2026-06-05 00:02:25,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:26,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:02:26,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:02:26,078.078 INFO    ] No camera update needed
[2026-06-05 00:02:26,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:02:26,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:02:26,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:02:26,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:02:28,133.133 INFO    ] ================================================
[2026-06-05 00:02:28,153.153 INFO    ] Launching Daemon at Fri Jun  5 00:02:28 IST 2026
[2026-06-05 00:02:28,164.164 INFO    ] ================================================
[2026-06-05 00:02:28,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:02:28
[2026-06-05 00:02:29,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:02:29,623.623 INFO    ] Initializing speech engine...
[2026-06-05 00:02:29,630.630 INFO    ] 2026-06-05 00:02:29
[2026-06-05 00:02:29,891.891 INFO    ] 2026-06-05 00:02:29
[2026-06-05 00:02:29,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:02:30,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:02:30,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:02:30,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:02:30,365.365 INFO    ] time= 05/06/2026 00:02:30
[2026-06-05 00:02:30,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:02:30,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:02:30,557.557 INFO    ] No existing commands found in stream
[2026-06-05 00:02:35,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:02:35,582.582 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 00:02:37,003.003 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:02:37,005.005 INFO    ] Checking for system updates...
[2026-06-05 00:02:37,041.041 INFO    ] 200
[2026-06-05 00:02:37,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:37,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:02:37,100.100 INFO    ] No update needed
[2026-06-05 00:02:37,102.102 INFO    ] Checking for camera pi updates...
[2026-06-05 00:02:37,143.143 INFO    ] 200
[2026-06-05 00:02:37,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:37,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:02:37,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:02:37,247.247 INFO    ] No camera update needed
[2026-06-05 00:02:37,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:02:37,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:02:37,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:02:37,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:02:39,307.307 INFO    ] ================================================
[2026-06-05 00:02:39,322.322 INFO    ] Launching Daemon at Fri Jun  5 00:02:39 IST 2026
[2026-06-05 00:02:39,333.333 INFO    ] ================================================
[2026-06-05 00:02:39,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:02:39
[2026-06-05 00:02:40,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:02:40,790.790 INFO    ] Initializing speech engine...
[2026-06-05 00:02:40,799.799 INFO    ] 2026-06-05 00:02:40
[2026-06-05 00:02:41,065.065 INFO    ] 2026-06-05 00:02:41
[2026-06-05 00:02:41,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:02:41,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:02:41,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:02:41,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:02:41,470.470 INFO    ] time= 05/06/2026 00:02:41
[2026-06-05 00:02:41,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:02:41,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:02:41,524.524 INFO    ] No existing commands found in stream
[2026-06-05 00:02:46,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:02:46,553.553 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 00:02:47,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:02:47,798.798 INFO    ] Checking for system updates...
[2026-06-05 00:02:47,834.834 INFO    ] 200
[2026-06-05 00:02:47,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:47,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:02:47,894.894 INFO    ] No update needed
[2026-06-05 00:02:47,896.896 INFO    ] Checking for camera pi updates...
[2026-06-05 00:02:47,936.936 INFO    ] 200
[2026-06-05 00:02:47,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:02:47,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:02:48,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:02:48,035.035 INFO    ] No camera update needed
[2026-06-05 00:02:48,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:02:48,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:02:48,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:02:48,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:02:50,094.094 INFO    ] ================================================
[2026-06-05 00:02:50,109.109 INFO    ] Launching Daemon at Fri Jun  5 00:02:50 IST 2026
[2026-06-05 00:02:50,120.120 INFO    ] ================================================
[2026-06-05 00:02:50,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:02:50
[2026-06-05 00:02:51,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:02:51,545.545 INFO    ] Initializing speech engine...
[2026-06-05 00:02:51,553.553 INFO    ] 2026-06-05 00:02:51
[2026-06-05 00:02:51,805.805 INFO    ] 2026-06-05 00:02:51
[2026-06-05 00:02:51,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:02:52,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:02:52,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:02:52,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:02:52,183.183 INFO    ] time= 05/06/2026 00:02:52
[2026-06-05 00:02:52,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:02:52,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:02:52,346.346 INFO    ] No existing commands found in stream
[2026-06-05 00:02:57,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:02:57,374.374 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 00:03:00,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:03:00,628.628 INFO    ] Checking for system updates...
[2026-06-05 00:03:00,664.664 INFO    ] 200
[2026-06-05 00:03:00,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:00,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:03:00,722.722 INFO    ] No update needed
[2026-06-05 00:03:00,724.724 INFO    ] Checking for camera pi updates...
[2026-06-05 00:03:00,760.760 INFO    ] 200
[2026-06-05 00:03:00,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:00,803.803 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:03:00,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:03:00,853.853 INFO    ] No camera update needed
[2026-06-05 00:03:00,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:03:00,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:03:00,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:03:00,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:03:02,916.916 INFO    ] ================================================
[2026-06-05 00:03:02,934.934 INFO    ] Launching Daemon at Fri Jun  5 00:03:02 IST 2026
[2026-06-05 00:03:02,945.945 INFO    ] ================================================
[2026-06-05 00:03:03,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:03:03
[2026-06-05 00:03:04,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:03:04,361.361 INFO    ] Initializing speech engine...
[2026-06-05 00:03:04,368.368 INFO    ] 2026-06-05 00:03:04
[2026-06-05 00:03:04,688.688 INFO    ] 2026-06-05 00:03:04
[2026-06-05 00:03:04,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:03:04,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:03:04,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:03:05,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:03:05,078.078 INFO    ] time= 05/06/2026 00:03:05
[2026-06-05 00:03:05,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:03:05,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:03:05,207.207 INFO    ] No existing commands found in stream
[2026-06-05 00:03:10,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:03:10,236.236 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 00:03:11,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:03:11,784.784 INFO    ] Checking for system updates...
[2026-06-05 00:03:11,821.821 INFO    ] 200
[2026-06-05 00:03:11,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:11,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:03:11,879.879 INFO    ] No update needed
[2026-06-05 00:03:11,882.882 INFO    ] Checking for camera pi updates...
[2026-06-05 00:03:11,916.916 INFO    ] 200
[2026-06-05 00:03:11,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:11,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:03:12,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:03:12,010.010 INFO    ] No camera update needed
[2026-06-05 00:03:12,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:03:12,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:03:12,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:03:12,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:03:14,065.065 INFO    ] ================================================
[2026-06-05 00:03:14,081.081 INFO    ] Launching Daemon at Fri Jun  5 00:03:14 IST 2026
[2026-06-05 00:03:14,093.093 INFO    ] ================================================
[2026-06-05 00:03:14,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:03:14
[2026-06-05 00:03:15,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:03:15,504.504 INFO    ] Initializing speech engine...
[2026-06-05 00:03:15,523.523 INFO    ] 2026-06-05 00:03:15
[2026-06-05 00:03:15,773.773 INFO    ] 2026-06-05 00:03:15
[2026-06-05 00:03:15,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:03:15,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:03:15,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:03:16,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:03:16,149.149 INFO    ] time= 05/06/2026 00:03:16
[2026-06-05 00:03:16,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:03:16,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:03:16,323.323 INFO    ] No existing commands found in stream
[2026-06-05 00:03:21,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:03:21,357.357 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 00:03:23,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:03:23,521.521 INFO    ] Checking for system updates...
[2026-06-05 00:03:23,558.558 INFO    ] 200
[2026-06-05 00:03:23,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:23,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:03:23,616.616 INFO    ] No update needed
[2026-06-05 00:03:23,618.618 INFO    ] Checking for camera pi updates...
[2026-06-05 00:03:23,656.656 INFO    ] 200
[2026-06-05 00:03:23,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:23,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:03:23,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:03:23,759.759 INFO    ] No camera update needed
[2026-06-05 00:03:23,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:03:23,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:03:23,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:03:23,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:03:25,817.817 INFO    ] ================================================
[2026-06-05 00:03:25,832.832 INFO    ] Launching Daemon at Fri Jun  5 00:03:25 IST 2026
[2026-06-05 00:03:25,843.843 INFO    ] ================================================
[2026-06-05 00:03:26,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:03:26
[2026-06-05 00:03:27,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:03:27,334.334 INFO    ] Initializing speech engine...
[2026-06-05 00:03:27,342.342 INFO    ] 2026-06-05 00:03:27
[2026-06-05 00:03:27,602.602 INFO    ] 2026-06-05 00:03:27
[2026-06-05 00:03:27,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:03:27,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:03:27,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:03:28,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:03:28,068.068 INFO    ] time= 05/06/2026 00:03:28
[2026-06-05 00:03:28,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:03:28,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:03:28,211.211 INFO    ] No existing commands found in stream
[2026-06-05 00:03:33,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:03:33,226.226 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 00:03:33,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:03:33,815.815 INFO    ] Checking for system updates...
[2026-06-05 00:03:33,851.851 INFO    ] 200
[2026-06-05 00:03:33,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:33,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:03:33,920.920 INFO    ] No update needed
[2026-06-05 00:03:33,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 00:03:33,957.957 INFO    ] 200
[2026-06-05 00:03:33,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:34,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:03:34,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:03:34,048.048 INFO    ] No camera update needed
[2026-06-05 00:03:34,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:03:34,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:03:34,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:03:34,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:03:36,105.105 INFO    ] ================================================
[2026-06-05 00:03:36,121.121 INFO    ] Launching Daemon at Fri Jun  5 00:03:36 IST 2026
[2026-06-05 00:03:36,133.133 INFO    ] ================================================
[2026-06-05 00:03:36,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:03:36
[2026-06-05 00:03:37,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:03:37,561.561 INFO    ] Initializing speech engine...
[2026-06-05 00:03:37,570.570 INFO    ] 2026-06-05 00:03:37
[2026-06-05 00:03:37,821.821 INFO    ] 2026-06-05 00:03:37
[2026-06-05 00:03:37,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:03:38,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:03:38,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:03:38,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:03:38,286.286 INFO    ] time= 05/06/2026 00:03:38
[2026-06-05 00:03:38,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:03:38,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:03:38,435.435 INFO    ] No existing commands found in stream
[2026-06-05 00:03:43,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:03:43,449.449 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 00:03:47,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:03:47,206.206 INFO    ] Checking for system updates...
[2026-06-05 00:03:47,243.243 INFO    ] 200
[2026-06-05 00:03:47,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:47,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:03:47,301.301 INFO    ] No update needed
[2026-06-05 00:03:47,304.304 INFO    ] Checking for camera pi updates...
[2026-06-05 00:03:47,338.338 INFO    ] 200
[2026-06-05 00:03:47,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:03:47,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:03:47,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:03:47,437.437 INFO    ] No camera update needed
[2026-06-05 00:03:47,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:03:47,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:03:47,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:03:47,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:03:49,492.492 INFO    ] ================================================
[2026-06-05 00:03:49,508.508 INFO    ] Launching Daemon at Fri Jun  5 00:03:49 IST 2026
[2026-06-05 00:03:49,520.520 INFO    ] ================================================
[2026-06-05 00:03:50,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:03:50
[2026-06-05 00:03:50,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:03:50,968.968 INFO    ] Initializing speech engine...
[2026-06-05 00:03:50,991.991 INFO    ] 2026-06-05 00:03:50
[2026-06-05 00:03:51,244.244 INFO    ] 2026-06-05 00:03:51
[2026-06-05 00:03:51,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:03:51,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:03:51,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:03:51,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:03:51,617.617 INFO    ] time= 05/06/2026 00:03:51
[2026-06-05 00:03:51,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:03:51,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:03:51,795.795 INFO    ] No existing commands found in stream
[2026-06-05 00:03:56,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:03:56,827.827 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 00:04:00,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:04:00,655.655 INFO    ] Checking for system updates...
[2026-06-05 00:04:00,696.696 INFO    ] 200
[2026-06-05 00:04:00,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:00,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:04:00,754.754 INFO    ] No update needed
[2026-06-05 00:04:00,757.757 INFO    ] Checking for camera pi updates...
[2026-06-05 00:04:00,792.792 INFO    ] 200
[2026-06-05 00:04:00,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:00,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:04:00,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:04:00,894.894 INFO    ] No camera update needed
[2026-06-05 00:04:00,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:04:00,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:04:00,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:04:00,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:04:02,952.952 INFO    ] ================================================
[2026-06-05 00:04:02,967.967 INFO    ] Launching Daemon at Fri Jun  5 00:04:02 IST 2026
[2026-06-05 00:04:02,977.977 INFO    ] ================================================
[2026-06-05 00:04:03,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:04:03
[2026-06-05 00:04:04,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:04:04,402.402 INFO    ] Initializing speech engine...
[2026-06-05 00:04:04,411.411 INFO    ] 2026-06-05 00:04:04
[2026-06-05 00:04:04,658.658 INFO    ] 2026-06-05 00:04:04
[2026-06-05 00:04:04,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:04:04,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:04:04,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:04:05,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:04:05,114.114 INFO    ] time= 05/06/2026 00:04:05
[2026-06-05 00:04:05,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:04:05,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:04:05,281.281 INFO    ] No existing commands found in stream
[2026-06-05 00:04:10,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:04:10,296.296 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 00:04:14,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:04:14,164.164 INFO    ] Checking for system updates...
[2026-06-05 00:04:14,205.205 INFO    ] 200
[2026-06-05 00:04:14,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:14,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:04:14,271.271 INFO    ] No update needed
[2026-06-05 00:04:14,273.273 INFO    ] Checking for camera pi updates...
[2026-06-05 00:04:14,311.311 INFO    ] 200
[2026-06-05 00:04:14,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:14,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:04:14,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:04:14,392.392 INFO    ] No camera update needed
[2026-06-05 00:04:14,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:04:14,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:04:14,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:04:14,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:04:16,451.451 INFO    ] ================================================
[2026-06-05 00:04:16,466.466 INFO    ] Launching Daemon at Fri Jun  5 00:04:16 IST 2026
[2026-06-05 00:04:16,477.477 INFO    ] ================================================
[2026-06-05 00:04:17,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:04:17
[2026-06-05 00:04:17,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:04:17,932.932 INFO    ] Initializing speech engine...
[2026-06-05 00:04:17,941.941 INFO    ] 2026-06-05 00:04:17
[2026-06-05 00:04:18,196.196 INFO    ] 2026-06-05 00:04:18
[2026-06-05 00:04:18,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:04:18,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:04:18,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:04:18,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:04:18,655.655 INFO    ] time= 05/06/2026 00:04:18
[2026-06-05 00:04:18,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:04:18,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:04:18,868.868 INFO    ] No existing commands found in stream
[2026-06-05 00:04:23,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:04:23,898.898 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 00:04:26,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:04:26,173.173 INFO    ] Checking for system updates...
[2026-06-05 00:04:26,210.210 INFO    ] 200
[2026-06-05 00:04:26,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:26,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:04:26,272.272 INFO    ] No update needed
[2026-06-05 00:04:26,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 00:04:26,311.311 INFO    ] 200
[2026-06-05 00:04:26,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:26,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:04:26,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:04:26,404.404 INFO    ] No camera update needed
[2026-06-05 00:04:26,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:04:26,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:04:26,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:04:26,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:04:28,460.460 INFO    ] ================================================
[2026-06-05 00:04:28,475.475 INFO    ] Launching Daemon at Fri Jun  5 00:04:28 IST 2026
[2026-06-05 00:04:28,485.485 INFO    ] ================================================
[2026-06-05 00:04:29,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:04:29
[2026-06-05 00:04:29,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:04:29,941.941 INFO    ] Initializing speech engine...
[2026-06-05 00:04:29,950.950 INFO    ] 2026-06-05 00:04:29
[2026-06-05 00:04:30,236.236 INFO    ] 2026-06-05 00:04:30
[2026-06-05 00:04:30,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:04:30,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:04:30,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:04:30,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:04:30,704.704 INFO    ] time= 05/06/2026 00:04:30
[2026-06-05 00:04:30,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:04:30,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:04:30,900.900 INFO    ] No existing commands found in stream
[2026-06-05 00:04:35,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:04:35,937.937 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 00:04:40,061.061 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:04:40,063.063 INFO    ] Checking for system updates...
[2026-06-05 00:04:40,104.104 INFO    ] 200
[2026-06-05 00:04:40,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:40,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:04:40,168.168 INFO    ] No update needed
[2026-06-05 00:04:40,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 00:04:40,205.205 INFO    ] 200
[2026-06-05 00:04:40,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:40,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:04:40,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:04:40,296.296 INFO    ] No camera update needed
[2026-06-05 00:04:40,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:04:40,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:04:40,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:04:40,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:04:42,352.352 INFO    ] ================================================
[2026-06-05 00:04:42,367.367 INFO    ] Launching Daemon at Fri Jun  5 00:04:42 IST 2026
[2026-06-05 00:04:42,377.377 INFO    ] ================================================
[2026-06-05 00:04:42,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:04:42
[2026-06-05 00:04:43,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:04:43,842.842 INFO    ] Initializing speech engine...
[2026-06-05 00:04:43,848.848 INFO    ] 2026-06-05 00:04:43
[2026-06-05 00:04:44,108.108 INFO    ] 2026-06-05 00:04:44
[2026-06-05 00:04:44,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:04:44,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:04:44,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:04:44,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:04:44,583.583 INFO    ] time= 05/06/2026 00:04:44
[2026-06-05 00:04:44,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:04:44,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:04:44,750.750 INFO    ] No existing commands found in stream
[2026-06-05 00:04:49,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:04:49,790.790 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 00:04:53,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:04:53,406.406 INFO    ] Checking for system updates...
[2026-06-05 00:04:53,442.442 INFO    ] 200
[2026-06-05 00:04:53,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:53,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:04:53,500.500 INFO    ] No update needed
[2026-06-05 00:04:53,503.503 INFO    ] Checking for camera pi updates...
[2026-06-05 00:04:53,538.538 INFO    ] 200
[2026-06-05 00:04:53,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:04:53,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:04:53,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:04:53,630.630 INFO    ] No camera update needed
[2026-06-05 00:04:53,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:04:53,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:04:53,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:04:53,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:04:55,686.686 INFO    ] ================================================
[2026-06-05 00:04:55,702.702 INFO    ] Launching Daemon at Fri Jun  5 00:04:55 IST 2026
[2026-06-05 00:04:55,712.712 INFO    ] ================================================
[2026-06-05 00:04:56,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:04:56
[2026-06-05 00:04:57,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:04:57,323.323 INFO    ] Initializing speech engine...
[2026-06-05 00:04:57,332.332 INFO    ] 2026-06-05 00:04:57
[2026-06-05 00:04:57,603.603 INFO    ] 2026-06-05 00:04:57
[2026-06-05 00:04:57,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:04:57,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:04:57,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:04:58,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:04:58,093.093 INFO    ] time= 05/06/2026 00:04:58
[2026-06-05 00:04:58,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:04:58,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:04:58,299.299 INFO    ] No existing commands found in stream
[2026-06-05 00:05:03,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:05:03,321.321 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 00:05:05,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:05:05,918.918 INFO    ] Checking for system updates...
[2026-06-05 00:05:05,957.957 INFO    ] 200
[2026-06-05 00:05:05,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:06,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:05:06,023.023 INFO    ] No update needed
[2026-06-05 00:05:06,025.025 INFO    ] Checking for camera pi updates...
[2026-06-05 00:05:06,064.064 INFO    ] 200
[2026-06-05 00:05:06,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:06,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:05:06,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:05:06,167.167 INFO    ] No camera update needed
[2026-06-05 00:05:06,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:05:06,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:05:06,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:05:06,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:05:08,222.222 INFO    ] ================================================
[2026-06-05 00:05:08,238.238 INFO    ] Launching Daemon at Fri Jun  5 00:05:08 IST 2026
[2026-06-05 00:05:08,248.248 INFO    ] ================================================
[2026-06-05 00:05:08,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:05:08
[2026-06-05 00:05:09,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:05:09,661.661 INFO    ] Initializing speech engine...
[2026-06-05 00:05:09,668.668 INFO    ] 2026-06-05 00:05:09
[2026-06-05 00:05:09,963.963 INFO    ] 2026-06-05 00:05:09
[2026-06-05 00:05:10,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:05:10,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:05:10,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:05:10,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:05:10,358.358 INFO    ] time= 05/06/2026 00:05:10
[2026-06-05 00:05:10,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:05:10,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:05:10,553.553 INFO    ] No existing commands found in stream
[2026-06-05 00:05:15,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:05:15,568.568 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 00:05:17,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:05:17,671.671 INFO    ] Checking for system updates...
[2026-06-05 00:05:17,710.710 INFO    ] 200
[2026-06-05 00:05:17,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:17,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:05:17,772.772 INFO    ] No update needed
[2026-06-05 00:05:17,774.774 INFO    ] Checking for camera pi updates...
[2026-06-05 00:05:17,810.810 INFO    ] 200
[2026-06-05 00:05:17,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:17,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:05:17,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:05:17,913.913 INFO    ] No camera update needed
[2026-06-05 00:05:17,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:05:17,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:05:17,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:05:17,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:05:19,972.972 INFO    ] ================================================
[2026-06-05 00:05:19,987.987 INFO    ] Launching Daemon at Fri Jun  5 00:05:19 IST 2026
[2026-06-05 00:05:20,997.997 INFO    ] ================================================
[2026-06-05 00:05:20,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:05:20
[2026-06-05 00:05:21,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:05:21,600.600 INFO    ] Initializing speech engine...
[2026-06-05 00:05:21,611.611 INFO    ] 2026-06-05 00:05:21
[2026-06-05 00:05:21,896.896 INFO    ] 2026-06-05 00:05:21
[2026-06-05 00:05:22,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:05:22,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:05:22,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:05:22,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:05:22,384.384 INFO    ] time= 05/06/2026 00:05:22
[2026-06-05 00:05:22,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:05:22,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:05:22,554.554 INFO    ] No existing commands found in stream
[2026-06-05 00:05:27,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:05:27,577.577 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 00:05:30,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:05:30,626.626 INFO    ] Checking for system updates...
[2026-06-05 00:05:30,663.663 INFO    ] 200
[2026-06-05 00:05:30,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:30,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:05:30,730.730 INFO    ] No update needed
[2026-06-05 00:05:30,733.733 INFO    ] Checking for camera pi updates...
[2026-06-05 00:05:30,768.768 INFO    ] 200
[2026-06-05 00:05:30,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:30,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:05:30,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:05:30,868.868 INFO    ] No camera update needed
[2026-06-05 00:05:30,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:05:30,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:05:30,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:05:30,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:05:32,929.929 INFO    ] ================================================
[2026-06-05 00:05:32,945.945 INFO    ] Launching Daemon at Fri Jun  5 00:05:32 IST 2026
[2026-06-05 00:05:32,957.957 INFO    ] ================================================
[2026-06-05 00:05:33,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:05:33
[2026-06-05 00:05:34,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:05:34,425.425 INFO    ] Initializing speech engine...
[2026-06-05 00:05:34,438.438 INFO    ] 2026-06-05 00:05:34
[2026-06-05 00:05:34,706.706 INFO    ] 2026-06-05 00:05:34
[2026-06-05 00:05:34,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:05:34,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:05:34,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:05:35,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:05:35,079.079 INFO    ] time= 05/06/2026 00:05:35
[2026-06-05 00:05:35,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:05:35,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:05:35,202.202 INFO    ] No existing commands found in stream
[2026-06-05 00:05:40,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:05:40,217.217 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 00:05:41,094.094 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:05:41,097.097 INFO    ] Checking for system updates...
[2026-06-05 00:05:41,133.133 INFO    ] 200
[2026-06-05 00:05:41,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:41,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:05:41,191.191 INFO    ] No update needed
[2026-06-05 00:05:41,194.194 INFO    ] Checking for camera pi updates...
[2026-06-05 00:05:41,231.231 INFO    ] 200
[2026-06-05 00:05:41,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:41,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:05:41,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:05:41,420.420 INFO    ] No camera update needed
[2026-06-05 00:05:41,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:05:41,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:05:41,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:05:41,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:05:43,477.477 INFO    ] ================================================
[2026-06-05 00:05:43,492.492 INFO    ] Launching Daemon at Fri Jun  5 00:05:43 IST 2026
[2026-06-05 00:05:43,502.502 INFO    ] ================================================
[2026-06-05 00:05:44,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:05:44
[2026-06-05 00:05:44,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:05:44,939.939 INFO    ] Initializing speech engine...
[2026-06-05 00:05:44,948.948 INFO    ] 2026-06-05 00:05:44
[2026-06-05 00:05:45,240.240 INFO    ] 2026-06-05 00:05:45
[2026-06-05 00:05:45,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:05:45,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:05:45,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:05:45,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:05:45,624.624 INFO    ] time= 05/06/2026 00:05:45
[2026-06-05 00:05:45,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:05:45,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:05:45,799.799 INFO    ] No existing commands found in stream
[2026-06-05 00:05:50,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:05:50,838.838 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 00:05:52,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:05:52,689.689 INFO    ] Checking for system updates...
[2026-06-05 00:05:52,727.727 INFO    ] 200
[2026-06-05 00:05:52,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:52,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:05:52,788.788 INFO    ] No update needed
[2026-06-05 00:05:52,791.791 INFO    ] Checking for camera pi updates...
[2026-06-05 00:05:52,826.826 INFO    ] 200
[2026-06-05 00:05:52,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:05:52,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:05:52,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:05:52,922.922 INFO    ] No camera update needed
[2026-06-05 00:05:52,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:05:52,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:05:52,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:05:52,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:05:54,983.983 INFO    ] ================================================
[2026-06-05 00:05:55,998.998 INFO    ] Launching Daemon at Fri Jun  5 00:05:54 IST 2026
[2026-06-05 00:05:55,009.009 INFO    ] ================================================
[2026-06-05 00:05:55,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:05:55
[2026-06-05 00:05:56,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:05:56,658.658 INFO    ] Initializing speech engine...
[2026-06-05 00:05:56,666.666 INFO    ] 2026-06-05 00:05:56
[2026-06-05 00:05:56,953.953 INFO    ] 2026-06-05 00:05:56
[2026-06-05 00:05:56,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:05:57,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:05:57,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:05:57,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:05:57,422.422 INFO    ] time= 05/06/2026 00:05:57
[2026-06-05 00:05:57,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:05:57,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:05:57,617.617 INFO    ] No existing commands found in stream
[2026-06-05 00:06:02,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:06:02,643.643 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 00:06:05,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:06:05,774.774 INFO    ] Checking for system updates...
[2026-06-05 00:06:05,824.824 INFO    ] 200
[2026-06-05 00:06:05,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:05,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:06:05,901.901 INFO    ] No update needed
[2026-06-05 00:06:05,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 00:06:05,942.942 INFO    ] 200
[2026-06-05 00:06:05,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:05,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:06:06,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:06:06,043.043 INFO    ] No camera update needed
[2026-06-05 00:06:06,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:06:06,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:06:06,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:06:06,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:06:08,103.103 INFO    ] ================================================
[2026-06-05 00:06:08,118.118 INFO    ] Launching Daemon at Fri Jun  5 00:06:08 IST 2026
[2026-06-05 00:06:08,129.129 INFO    ] ================================================
[2026-06-05 00:06:08,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:06:08
[2026-06-05 00:06:09,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:06:09,585.585 INFO    ] Initializing speech engine...
[2026-06-05 00:06:09,596.596 INFO    ] 2026-06-05 00:06:09
[2026-06-05 00:06:09,857.857 INFO    ] 2026-06-05 00:06:09
[2026-06-05 00:06:09,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:06:10,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:06:10,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:06:10,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:06:10,322.322 INFO    ] time= 05/06/2026 00:06:10
[2026-06-05 00:06:10,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:06:10,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:06:10,467.467 INFO    ] No existing commands found in stream
[2026-06-05 00:06:15,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:06:15,482.482 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 00:06:17,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:06:17,148.148 INFO    ] Checking for system updates...
[2026-06-05 00:06:17,184.184 INFO    ] 200
[2026-06-05 00:06:17,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:17,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:06:17,242.242 INFO    ] No update needed
[2026-06-05 00:06:17,244.244 INFO    ] Checking for camera pi updates...
[2026-06-05 00:06:17,278.278 INFO    ] 200
[2026-06-05 00:06:17,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:17,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:06:17,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:06:17,373.373 INFO    ] No camera update needed
[2026-06-05 00:06:17,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:06:17,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:06:17,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:06:17,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:06:19,430.430 INFO    ] ================================================
[2026-06-05 00:06:19,446.446 INFO    ] Launching Daemon at Fri Jun  5 00:06:19 IST 2026
[2026-06-05 00:06:19,457.457 INFO    ] ================================================
[2026-06-05 00:06:20,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:06:20
[2026-06-05 00:06:20,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:06:20,874.874 INFO    ] Initializing speech engine...
[2026-06-05 00:06:20,893.893 INFO    ] 2026-06-05 00:06:20
[2026-06-05 00:06:21,145.145 INFO    ] 2026-06-05 00:06:21
[2026-06-05 00:06:21,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:06:21,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:06:21,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:06:21,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:06:21,524.524 INFO    ] time= 05/06/2026 00:06:21
[2026-06-05 00:06:21,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:06:21,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:06:21,687.687 INFO    ] No existing commands found in stream
[2026-06-05 00:06:26,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:06:26,720.720 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 00:06:29,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:06:29,322.322 INFO    ] Checking for system updates...
[2026-06-05 00:06:29,358.358 INFO    ] 200
[2026-06-05 00:06:29,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:29,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:06:29,417.417 INFO    ] No update needed
[2026-06-05 00:06:29,419.419 INFO    ] Checking for camera pi updates...
[2026-06-05 00:06:29,453.453 INFO    ] 200
[2026-06-05 00:06:29,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:29,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:06:29,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:06:29,549.549 INFO    ] No camera update needed
[2026-06-05 00:06:29,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:06:29,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:06:29,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:06:29,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:06:31,605.605 INFO    ] ================================================
[2026-06-05 00:06:31,620.620 INFO    ] Launching Daemon at Fri Jun  5 00:06:31 IST 2026
[2026-06-05 00:06:31,631.631 INFO    ] ================================================
[2026-06-05 00:06:32,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:06:32
[2026-06-05 00:06:32,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:06:33,128.128 INFO    ] Initializing speech engine...
[2026-06-05 00:06:33,135.135 INFO    ] 2026-06-05 00:06:33
[2026-06-05 00:06:33,398.398 INFO    ] 2026-06-05 00:06:33
[2026-06-05 00:06:33,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:06:33,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:06:33,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:06:33,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:06:33,815.815 INFO    ] time= 05/06/2026 00:06:33
[2026-06-05 00:06:33,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:06:33,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:06:33,898.898 INFO    ] No existing commands found in stream
[2026-06-05 00:06:38,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:06:38,912.912 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 00:06:42,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:06:42,798.798 INFO    ] Checking for system updates...
[2026-06-05 00:06:42,835.835 INFO    ] 200
[2026-06-05 00:06:42,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:42,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:06:42,893.893 INFO    ] No update needed
[2026-06-05 00:06:42,896.896 INFO    ] Checking for camera pi updates...
[2026-06-05 00:06:42,930.930 INFO    ] 200
[2026-06-05 00:06:42,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:42,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:06:43,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:06:43,034.034 INFO    ] No camera update needed
[2026-06-05 00:06:43,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:06:43,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:06:43,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:06:43,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:06:45,090.090 INFO    ] ================================================
[2026-06-05 00:06:45,105.105 INFO    ] Launching Daemon at Fri Jun  5 00:06:45 IST 2026
[2026-06-05 00:06:45,116.116 INFO    ] ================================================
[2026-06-05 00:06:45,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:06:45
[2026-06-05 00:06:46,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:06:46,582.582 INFO    ] Initializing speech engine...
[2026-06-05 00:06:46,588.588 INFO    ] 2026-06-05 00:06:46
[2026-06-05 00:06:46,847.847 INFO    ] 2026-06-05 00:06:46
[2026-06-05 00:06:46,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:06:47,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:06:47,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:06:47,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:06:47,315.315 INFO    ] time= 05/06/2026 00:06:47
[2026-06-05 00:06:47,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:06:47,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:06:47,535.535 INFO    ] No existing commands found in stream
[2026-06-05 00:06:52,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:06:52,563.563 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 00:06:53,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:06:53,448.448 INFO    ] Checking for system updates...
[2026-06-05 00:06:53,484.484 INFO    ] 200
[2026-06-05 00:06:53,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:53,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:06:53,541.541 INFO    ] No update needed
[2026-06-05 00:06:53,544.544 INFO    ] Checking for camera pi updates...
[2026-06-05 00:06:53,582.582 INFO    ] 200
[2026-06-05 00:06:53,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:06:53,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:06:53,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:06:53,678.678 INFO    ] No camera update needed
[2026-06-05 00:06:53,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:06:53,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:06:53,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:06:53,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:06:55,735.735 INFO    ] ================================================
[2026-06-05 00:06:55,750.750 INFO    ] Launching Daemon at Fri Jun  5 00:06:55 IST 2026
[2026-06-05 00:06:55,761.761 INFO    ] ================================================
[2026-06-05 00:06:56,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:06:56
[2026-06-05 00:06:56,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:06:57,170.170 INFO    ] Initializing speech engine...
[2026-06-05 00:06:57,196.196 INFO    ] 2026-06-05 00:06:57
[2026-06-05 00:06:57,451.451 INFO    ] 2026-06-05 00:06:57
[2026-06-05 00:06:57,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:06:57,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:06:57,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:06:57,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:06:57,832.832 INFO    ] time= 05/06/2026 00:06:57
[2026-06-05 00:06:57,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:06:57,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:06:58,018.018 INFO    ] No existing commands found in stream
[2026-06-05 00:07:03,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:07:03,047.047 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 00:07:04,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:07:04,669.669 INFO    ] Checking for system updates...
[2026-06-05 00:07:04,706.706 INFO    ] 200
[2026-06-05 00:07:04,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:04,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:07:04,769.769 INFO    ] No update needed
[2026-06-05 00:07:04,772.772 INFO    ] Checking for camera pi updates...
[2026-06-05 00:07:04,808.808 INFO    ] 200
[2026-06-05 00:07:04,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:04,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:07:04,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:07:04,885.885 INFO    ] No camera update needed
[2026-06-05 00:07:04,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:07:04,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:07:04,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:07:04,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:07:06,941.941 INFO    ] ================================================
[2026-06-05 00:07:06,957.957 INFO    ] Launching Daemon at Fri Jun  5 00:07:06 IST 2026
[2026-06-05 00:07:06,967.967 INFO    ] ================================================
[2026-06-05 00:07:07,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:07:07
[2026-06-05 00:07:08,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:07:08,406.406 INFO    ] Initializing speech engine...
[2026-06-05 00:07:08,423.423 INFO    ] 2026-06-05 00:07:08
[2026-06-05 00:07:08,726.726 INFO    ] 2026-06-05 00:07:08
[2026-06-05 00:07:08,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:07:08,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:07:08,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:07:09,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:07:09,136.136 INFO    ] time= 05/06/2026 00:07:09
[2026-06-05 00:07:09,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:07:09,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:07:09,275.275 INFO    ] No existing commands found in stream
[2026-06-05 00:07:14,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:07:14,291.291 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 00:07:18,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:07:18,033.033 INFO    ] Checking for system updates...
[2026-06-05 00:07:18,069.069 INFO    ] 200
[2026-06-05 00:07:18,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:18,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:07:18,127.127 INFO    ] No update needed
[2026-06-05 00:07:18,129.129 INFO    ] Checking for camera pi updates...
[2026-06-05 00:07:18,163.163 INFO    ] 200
[2026-06-05 00:07:18,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:18,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:07:18,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:07:18,254.254 INFO    ] No camera update needed
[2026-06-05 00:07:18,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:07:18,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:07:18,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:07:18,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:07:20,313.313 INFO    ] ================================================
[2026-06-05 00:07:20,329.329 INFO    ] Launching Daemon at Fri Jun  5 00:07:20 IST 2026
[2026-06-05 00:07:20,340.340 INFO    ] ================================================
[2026-06-05 00:07:20,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:07:20
[2026-06-05 00:07:21,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:07:21,975.975 INFO    ] Initializing speech engine...
[2026-06-05 00:07:21,989.989 INFO    ] 2026-06-05 00:07:21
[2026-06-05 00:07:22,299.299 INFO    ] 2026-06-05 00:07:22
[2026-06-05 00:07:22,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:07:22,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:07:22,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:07:22,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:07:22,809.809 INFO    ] time= 05/06/2026 00:07:22
[2026-06-05 00:07:22,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:07:22,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:07:22,968.968 INFO    ] No existing commands found in stream
[2026-06-05 00:07:27,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:07:27,986.986 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 00:07:31,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:07:31,185.185 INFO    ] Checking for system updates...
[2026-06-05 00:07:31,223.223 INFO    ] 200
[2026-06-05 00:07:31,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:31,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:07:31,284.284 INFO    ] No update needed
[2026-06-05 00:07:31,287.287 INFO    ] Checking for camera pi updates...
[2026-06-05 00:07:31,323.323 INFO    ] 200
[2026-06-05 00:07:31,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:31,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:07:31,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:07:31,421.421 INFO    ] No camera update needed
[2026-06-05 00:07:31,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:07:31,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:07:31,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:07:31,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:07:33,482.482 INFO    ] ================================================
[2026-06-05 00:07:33,497.497 INFO    ] Launching Daemon at Fri Jun  5 00:07:33 IST 2026
[2026-06-05 00:07:33,508.508 INFO    ] ================================================
[2026-06-05 00:07:34,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:07:34
[2026-06-05 00:07:34,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:07:34,951.951 INFO    ] Initializing speech engine...
[2026-06-05 00:07:34,960.960 INFO    ] 2026-06-05 00:07:34
[2026-06-05 00:07:35,256.256 INFO    ] 2026-06-05 00:07:35
[2026-06-05 00:07:35,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:07:35,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:07:35,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:07:35,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:07:35,655.655 INFO    ] time= 05/06/2026 00:07:35
[2026-06-05 00:07:35,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:07:35,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:07:35,765.765 INFO    ] No existing commands found in stream
[2026-06-05 00:07:40,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:07:40,781.781 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 00:07:43,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:07:43,671.671 INFO    ] Checking for system updates...
[2026-06-05 00:07:43,708.708 INFO    ] 200
[2026-06-05 00:07:43,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:43,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:07:43,769.769 INFO    ] No update needed
[2026-06-05 00:07:43,772.772 INFO    ] Checking for camera pi updates...
[2026-06-05 00:07:43,806.806 INFO    ] 200
[2026-06-05 00:07:43,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:43,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:07:43,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:07:44,000.000 INFO    ] No camera update needed
[2026-06-05 00:07:44,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:07:44,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:07:44,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:07:44,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:07:46,056.056 INFO    ] ================================================
[2026-06-05 00:07:46,071.071 INFO    ] Launching Daemon at Fri Jun  5 00:07:46 IST 2026
[2026-06-05 00:07:46,082.082 INFO    ] ================================================
[2026-06-05 00:07:46,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:07:46
[2026-06-05 00:07:47,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:07:47,734.734 INFO    ] Initializing speech engine...
[2026-06-05 00:07:47,744.744 INFO    ] 2026-06-05 00:07:47
[2026-06-05 00:07:48,063.063 INFO    ] 2026-06-05 00:07:48
[2026-06-05 00:07:48,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:07:48,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:07:48,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:07:48,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:07:48,545.545 INFO    ] time= 05/06/2026 00:07:48
[2026-06-05 00:07:48,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:07:48,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:07:48,708.708 INFO    ] No existing commands found in stream
[2026-06-05 00:07:53,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:07:53,720.720 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 00:07:55,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:07:55,290.290 INFO    ] Checking for system updates...
[2026-06-05 00:07:55,327.327 INFO    ] 200
[2026-06-05 00:07:55,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:55,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:07:55,386.386 INFO    ] No update needed
[2026-06-05 00:07:55,388.388 INFO    ] Checking for camera pi updates...
[2026-06-05 00:07:55,422.422 INFO    ] 200
[2026-06-05 00:07:55,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:07:55,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:07:55,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:07:55,520.520 INFO    ] No camera update needed
[2026-06-05 00:07:55,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:07:55,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:07:55,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:07:55,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:07:57,577.577 INFO    ] ================================================
[2026-06-05 00:07:57,593.593 INFO    ] Launching Daemon at Fri Jun  5 00:07:57 IST 2026
[2026-06-05 00:07:57,604.604 INFO    ] ================================================
[2026-06-05 00:07:58,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:07:58
[2026-06-05 00:07:58,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:07:59,029.029 INFO    ] Initializing speech engine...
[2026-06-05 00:07:59,042.042 INFO    ] 2026-06-05 00:07:59
[2026-06-05 00:07:59,306.306 INFO    ] 2026-06-05 00:07:59
[2026-06-05 00:07:59,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:07:59,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:07:59,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:07:59,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:07:59,769.769 INFO    ] time= 05/06/2026 00:07:59
[2026-06-05 00:07:59,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:07:59,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:07:59,995.995 INFO    ] No existing commands found in stream
[2026-06-05 00:08:05,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:08:05,033.033 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 00:08:06,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:08:06,013.013 INFO    ] Checking for system updates...
[2026-06-05 00:08:06,049.049 INFO    ] 200
[2026-06-05 00:08:06,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:06,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:08:06,108.108 INFO    ] No update needed
[2026-06-05 00:08:06,110.110 INFO    ] Checking for camera pi updates...
[2026-06-05 00:08:06,144.144 INFO    ] 200
[2026-06-05 00:08:06,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:06,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:08:06,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:08:06,241.241 INFO    ] No camera update needed
[2026-06-05 00:08:06,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:08:06,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:08:06,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:08:06,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:08:08,301.301 INFO    ] ================================================
[2026-06-05 00:08:08,317.317 INFO    ] Launching Daemon at Fri Jun  5 00:08:08 IST 2026
[2026-06-05 00:08:08,329.329 INFO    ] ================================================
[2026-06-05 00:08:08,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:08:08
[2026-06-05 00:08:09,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:08:09,794.794 INFO    ] Initializing speech engine...
[2026-06-05 00:08:09,799.799 INFO    ] 2026-06-05 00:08:09
[2026-06-05 00:08:10,060.060 INFO    ] 2026-06-05 00:08:10
[2026-06-05 00:08:10,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:08:10,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:08:10,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:08:10,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:08:10,526.526 INFO    ] time= 05/06/2026 00:08:10
[2026-06-05 00:08:10,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:08:10,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:08:10,731.731 INFO    ] No existing commands found in stream
[2026-06-05 00:08:15,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:08:15,751.751 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 00:08:17,929.929 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:08:17,932.932 INFO    ] Checking for system updates...
[2026-06-05 00:08:17,967.967 INFO    ] 200
[2026-06-05 00:08:17,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:18,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:08:18,025.025 INFO    ] No update needed
[2026-06-05 00:08:18,028.028 INFO    ] Checking for camera pi updates...
[2026-06-05 00:08:18,062.062 INFO    ] 200
[2026-06-05 00:08:18,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:18,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:08:18,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:08:18,164.164 INFO    ] No camera update needed
[2026-06-05 00:08:18,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:08:18,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:08:18,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:08:18,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:08:20,221.221 INFO    ] ================================================
[2026-06-05 00:08:20,237.237 INFO    ] Launching Daemon at Fri Jun  5 00:08:20 IST 2026
[2026-06-05 00:08:20,248.248 INFO    ] ================================================
[2026-06-05 00:08:20,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:08:20
[2026-06-05 00:08:21,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:08:21,708.708 INFO    ] Initializing speech engine...
[2026-06-05 00:08:21,717.717 INFO    ] 2026-06-05 00:08:21
[2026-06-05 00:08:21,978.978 INFO    ] 2026-06-05 00:08:21
[2026-06-05 00:08:22,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:08:22,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:08:22,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:08:22,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:08:22,435.435 INFO    ] time= 05/06/2026 00:08:22
[2026-06-05 00:08:22,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:08:22,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:08:22,578.578 INFO    ] No existing commands found in stream
[2026-06-05 00:08:27,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:08:27,592.592 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 00:08:28,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:08:28,925.925 INFO    ] Checking for system updates...
[2026-06-05 00:08:28,962.962 INFO    ] 200
[2026-06-05 00:08:28,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:29,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:08:29,023.023 INFO    ] No update needed
[2026-06-05 00:08:29,026.026 INFO    ] Checking for camera pi updates...
[2026-06-05 00:08:29,061.061 INFO    ] 200
[2026-06-05 00:08:29,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:29,106.106 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:08:29,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:08:29,157.157 INFO    ] No camera update needed
[2026-06-05 00:08:29,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:08:29,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:08:29,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:08:29,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:08:31,216.216 INFO    ] ================================================
[2026-06-05 00:08:31,232.232 INFO    ] Launching Daemon at Fri Jun  5 00:08:31 IST 2026
[2026-06-05 00:08:31,243.243 INFO    ] ================================================
[2026-06-05 00:08:31,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:08:31
[2026-06-05 00:08:32,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:08:32,710.710 INFO    ] Initializing speech engine...
[2026-06-05 00:08:32,729.729 INFO    ] 2026-06-05 00:08:32
[2026-06-05 00:08:33,002.002 INFO    ] 2026-06-05 00:08:32
[2026-06-05 00:08:33,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:08:33,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:08:33,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:08:33,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:08:33,428.428 INFO    ] time= 05/06/2026 00:08:33
[2026-06-05 00:08:33,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:08:33,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:08:33,515.515 INFO    ] No existing commands found in stream
[2026-06-05 00:08:38,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:08:38,548.548 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 00:08:42,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:08:42,022.022 INFO    ] Checking for system updates...
[2026-06-05 00:08:42,059.059 INFO    ] 200
[2026-06-05 00:08:42,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:42,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:08:42,117.117 INFO    ] No update needed
[2026-06-05 00:08:42,120.120 INFO    ] Checking for camera pi updates...
[2026-06-05 00:08:42,154.154 INFO    ] 200
[2026-06-05 00:08:42,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:42,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:08:42,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:08:42,246.246 INFO    ] No camera update needed
[2026-06-05 00:08:42,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:08:42,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:08:42,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:08:42,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:08:44,302.302 INFO    ] ================================================
[2026-06-05 00:08:44,318.318 INFO    ] Launching Daemon at Fri Jun  5 00:08:44 IST 2026
[2026-06-05 00:08:44,329.329 INFO    ] ================================================
[2026-06-05 00:08:44,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:08:44
[2026-06-05 00:08:45,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:08:45,736.736 INFO    ] Initializing speech engine...
[2026-06-05 00:08:45,751.751 INFO    ] 2026-06-05 00:08:45
[2026-06-05 00:08:46,018.018 INFO    ] 2026-06-05 00:08:46
[2026-06-05 00:08:46,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:08:46,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:08:46,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:08:46,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:08:46,398.398 INFO    ] time= 05/06/2026 00:08:46
[2026-06-05 00:08:46,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:08:46,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:08:46,590.590 INFO    ] No existing commands found in stream
[2026-06-05 00:08:51,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:08:51,613.613 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 00:08:53,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:08:53,669.669 INFO    ] Checking for system updates...
[2026-06-05 00:08:53,723.723 INFO    ] 200
[2026-06-05 00:08:53,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:53,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:08:53,789.789 INFO    ] No update needed
[2026-06-05 00:08:53,792.792 INFO    ] Checking for camera pi updates...
[2026-06-05 00:08:53,831.831 INFO    ] 200
[2026-06-05 00:08:53,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:08:53,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:08:53,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:08:53,948.948 INFO    ] No camera update needed
[2026-06-05 00:08:53,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:08:53,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:08:53,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:08:53,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:08:56,011.011 INFO    ] ================================================
[2026-06-05 00:08:56,027.027 INFO    ] Launching Daemon at Fri Jun  5 00:08:56 IST 2026
[2026-06-05 00:08:56,038.038 INFO    ] ================================================
[2026-06-05 00:08:56,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:08:56
[2026-06-05 00:08:57,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:08:57,686.686 INFO    ] Initializing speech engine...
[2026-06-05 00:08:57,698.698 INFO    ] 2026-06-05 00:08:57
[2026-06-05 00:08:58,008.008 INFO    ] 2026-06-05 00:08:57
[2026-06-05 00:08:58,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:08:58,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:08:58,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:08:58,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:08:58,516.516 INFO    ] time= 05/06/2026 00:08:58
[2026-06-05 00:08:58,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:08:58,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:08:58,667.667 INFO    ] No existing commands found in stream
[2026-06-05 00:09:03,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:09:03,685.685 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 00:09:07,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:09:07,295.295 INFO    ] Checking for system updates...
[2026-06-05 00:09:07,332.332 INFO    ] 200
[2026-06-05 00:09:07,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:07,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:09:07,398.398 INFO    ] No update needed
[2026-06-05 00:09:07,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 00:09:07,436.436 INFO    ] 200
[2026-06-05 00:09:07,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:07,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:09:07,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:09:07,528.528 INFO    ] No camera update needed
[2026-06-05 00:09:07,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:09:07,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:09:07,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:09:07,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:09:09,587.587 INFO    ] ================================================
[2026-06-05 00:09:09,603.603 INFO    ] Launching Daemon at Fri Jun  5 00:09:09 IST 2026
[2026-06-05 00:09:09,614.614 INFO    ] ================================================
[2026-06-05 00:09:10,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:09:10
[2026-06-05 00:09:10,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:09:11,212.212 INFO    ] Initializing speech engine...
[2026-06-05 00:09:11,220.220 INFO    ] 2026-06-05 00:09:11
[2026-06-05 00:09:11,476.476 INFO    ] 2026-06-05 00:09:11
[2026-06-05 00:09:11,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:09:11,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:09:11,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:09:11,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:09:11,938.938 INFO    ] time= 05/06/2026 00:09:11
[2026-06-05 00:09:11,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:09:12,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:09:12,080.080 INFO    ] No existing commands found in stream
[2026-06-05 00:09:17,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:09:17,095.095 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 00:09:17,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:09:17,559.559 INFO    ] Checking for system updates...
[2026-06-05 00:09:17,594.594 INFO    ] 200
[2026-06-05 00:09:17,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:17,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:09:17,651.651 INFO    ] No update needed
[2026-06-05 00:09:17,654.654 INFO    ] Checking for camera pi updates...
[2026-06-05 00:09:17,687.687 INFO    ] 200
[2026-06-05 00:09:17,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:17,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:09:17,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:09:17,782.782 INFO    ] No camera update needed
[2026-06-05 00:09:17,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:09:17,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:09:17,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:09:17,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:09:19,837.837 INFO    ] ================================================
[2026-06-05 00:09:19,852.852 INFO    ] Launching Daemon at Fri Jun  5 00:09:19 IST 2026
[2026-06-05 00:09:19,863.863 INFO    ] ================================================
[2026-06-05 00:09:20,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:09:20
[2026-06-05 00:09:21,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:09:21,288.288 INFO    ] Initializing speech engine...
[2026-06-05 00:09:21,309.309 INFO    ] 2026-06-05 00:09:21
[2026-06-05 00:09:21,580.580 INFO    ] 2026-06-05 00:09:21
[2026-06-05 00:09:21,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:09:21,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:09:21,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:09:22,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:09:22,089.089 INFO    ] time= 05/06/2026 00:09:22
[2026-06-05 00:09:22,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:09:22,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:09:22,282.282 INFO    ] No existing commands found in stream
[2026-06-05 00:09:27,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:09:27,311.311 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 00:09:28,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:09:28,708.708 INFO    ] Checking for system updates...
[2026-06-05 00:09:28,751.751 INFO    ] 200
[2026-06-05 00:09:28,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:28,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:09:28,813.813 INFO    ] No update needed
[2026-06-05 00:09:28,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 00:09:28,852.852 INFO    ] 200
[2026-06-05 00:09:28,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:28,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:09:28,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:09:28,957.957 INFO    ] No camera update needed
[2026-06-05 00:09:28,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:09:28,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:09:28,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:09:28,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:09:31,017.017 INFO    ] ================================================
[2026-06-05 00:09:31,032.032 INFO    ] Launching Daemon at Fri Jun  5 00:09:31 IST 2026
[2026-06-05 00:09:31,044.044 INFO    ] ================================================
[2026-06-05 00:09:31,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:09:31
[2026-06-05 00:09:32,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:09:32,611.611 INFO    ] Initializing speech engine...
[2026-06-05 00:09:32,619.619 INFO    ] 2026-06-05 00:09:32
[2026-06-05 00:09:32,909.909 INFO    ] 2026-06-05 00:09:32
[2026-06-05 00:09:32,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:09:33,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:09:33,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:09:33,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:09:33,304.304 INFO    ] time= 05/06/2026 00:09:33
[2026-06-05 00:09:33,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:09:33,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:09:33,483.483 INFO    ] No existing commands found in stream
[2026-06-05 00:09:38,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:09:38,517.517 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 00:09:39,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:09:39,149.149 INFO    ] Checking for system updates...
[2026-06-05 00:09:39,186.186 INFO    ] 200
[2026-06-05 00:09:39,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:39,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:09:39,246.246 INFO    ] No update needed
[2026-06-05 00:09:39,248.248 INFO    ] Checking for camera pi updates...
[2026-06-05 00:09:39,282.282 INFO    ] 200
[2026-06-05 00:09:39,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:39,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:09:39,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:09:39,378.378 INFO    ] No camera update needed
[2026-06-05 00:09:39,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:09:39,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:09:39,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:09:39,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:09:41,433.433 INFO    ] ================================================
[2026-06-05 00:09:41,450.450 INFO    ] Launching Daemon at Fri Jun  5 00:09:41 IST 2026
[2026-06-05 00:09:41,463.463 INFO    ] ================================================
[2026-06-05 00:09:42,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:09:42
[2026-06-05 00:09:42,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:09:43,106.106 INFO    ] Initializing speech engine...
[2026-06-05 00:09:43,116.116 INFO    ] 2026-06-05 00:09:43
[2026-06-05 00:09:43,394.394 INFO    ] 2026-06-05 00:09:43
[2026-06-05 00:09:43,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:09:43,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:09:43,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:09:43,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:09:43,918.918 INFO    ] time= 05/06/2026 00:09:43
[2026-06-05 00:09:43,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:09:43,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:09:44,068.068 INFO    ] No existing commands found in stream
[2026-06-05 00:09:49,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:09:49,091.091 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 00:09:52,650.650 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:09:52,653.653 INFO    ] Checking for system updates...
[2026-06-05 00:09:52,688.688 INFO    ] 200
[2026-06-05 00:09:52,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:52,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:09:52,750.750 INFO    ] No update needed
[2026-06-05 00:09:52,752.752 INFO    ] Checking for camera pi updates...
[2026-06-05 00:09:52,786.786 INFO    ] 200
[2026-06-05 00:09:52,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:09:52,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:09:52,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:09:52,983.983 INFO    ] No camera update needed
[2026-06-05 00:09:52,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:09:52,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:09:52,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:09:52,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:09:55,040.040 INFO    ] ================================================
[2026-06-05 00:09:55,055.055 INFO    ] Launching Daemon at Fri Jun  5 00:09:55 IST 2026
[2026-06-05 00:09:55,066.066 INFO    ] ================================================
[2026-06-05 00:09:55,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:09:55
[2026-06-05 00:09:56,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:09:56,623.623 INFO    ] Initializing speech engine...
[2026-06-05 00:09:56,633.633 INFO    ] 2026-06-05 00:09:56
[2026-06-05 00:09:56,886.886 INFO    ] 2026-06-05 00:09:56
[2026-06-05 00:09:56,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:09:57,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:09:57,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:09:57,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:09:57,355.355 INFO    ] time= 05/06/2026 00:09:57
[2026-06-05 00:09:57,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:09:57,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:09:57,504.504 INFO    ] No existing commands found in stream
[2026-06-05 00:10:02,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:10:02,522.522 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 00:10:08,595.595 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:10:08,598.598 INFO    ] Checking for system updates...
[2026-06-05 00:10:08,633.633 INFO    ] 200
[2026-06-05 00:10:08,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:08,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:10:08,692.692 INFO    ] No update needed
[2026-06-05 00:10:08,694.694 INFO    ] Checking for camera pi updates...
[2026-06-05 00:10:08,732.732 INFO    ] 200
[2026-06-05 00:10:08,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:08,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:10:08,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:10:08,824.824 INFO    ] No camera update needed
[2026-06-05 00:10:08,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:10:08,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:10:08,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:10:08,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:10:10,882.882 INFO    ] ================================================
[2026-06-05 00:10:10,898.898 INFO    ] Launching Daemon at Fri Jun  5 00:10:10 IST 2026
[2026-06-05 00:10:10,909.909 INFO    ] ================================================
[2026-06-05 00:10:11,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:10:11
[2026-06-05 00:10:12,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:10:12,375.375 INFO    ] Initializing speech engine...
[2026-06-05 00:10:12,391.391 INFO    ] 2026-06-05 00:10:12
[2026-06-05 00:10:12,681.681 INFO    ] 2026-06-05 00:10:12
[2026-06-05 00:10:12,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:10:12,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:10:12,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:10:13,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:10:13,040.040 INFO    ] time= 05/06/2026 00:10:13
[2026-06-05 00:10:13,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:10:13,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:10:13,123.123 INFO    ] No existing commands found in stream
[2026-06-05 00:10:18,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:10:18,139.139 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 00:10:19,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:10:19,515.515 INFO    ] Checking for system updates...
[2026-06-05 00:10:19,552.552 INFO    ] 200
[2026-06-05 00:10:19,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:19,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:10:19,614.614 INFO    ] No update needed
[2026-06-05 00:10:19,617.617 INFO    ] Checking for camera pi updates...
[2026-06-05 00:10:19,650.650 INFO    ] 200
[2026-06-05 00:10:19,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:19,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:10:19,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:10:19,750.750 INFO    ] No camera update needed
[2026-06-05 00:10:19,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:10:19,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:10:19,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:10:19,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:10:21,805.805 INFO    ] ================================================
[2026-06-05 00:10:21,820.820 INFO    ] Launching Daemon at Fri Jun  5 00:10:21 IST 2026
[2026-06-05 00:10:21,831.831 INFO    ] ================================================
[2026-06-05 00:10:22,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:10:22
[2026-06-05 00:10:22,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:10:23,242.242 INFO    ] Initializing speech engine...
[2026-06-05 00:10:23,258.258 INFO    ] 2026-06-05 00:10:23
[2026-06-05 00:10:23,546.546 INFO    ] 2026-06-05 00:10:23
[2026-06-05 00:10:23,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:10:23,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:10:23,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:10:23,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:10:23,949.949 INFO    ] time= 05/06/2026 00:10:23
[2026-06-05 00:10:23,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:10:23,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:10:24,060.060 INFO    ] No existing commands found in stream
[2026-06-05 00:10:29,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:10:29,076.076 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 00:10:31,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:10:31,148.148 INFO    ] Checking for system updates...
[2026-06-05 00:10:31,184.184 INFO    ] 200
[2026-06-05 00:10:31,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:31,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:10:31,242.242 INFO    ] No update needed
[2026-06-05 00:10:31,245.245 INFO    ] Checking for camera pi updates...
[2026-06-05 00:10:31,279.279 INFO    ] 200
[2026-06-05 00:10:31,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:31,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:10:31,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:10:31,360.360 INFO    ] No camera update needed
[2026-06-05 00:10:31,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:10:31,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:10:31,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:10:31,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:10:33,417.417 INFO    ] ================================================
[2026-06-05 00:10:33,433.433 INFO    ] Launching Daemon at Fri Jun  5 00:10:33 IST 2026
[2026-06-05 00:10:33,444.444 INFO    ] ================================================
[2026-06-05 00:10:34,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:10:34
[2026-06-05 00:10:34,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:10:34,846.846 INFO    ] Initializing speech engine...
[2026-06-05 00:10:34,860.860 INFO    ] 2026-06-05 00:10:34
[2026-06-05 00:10:35,152.152 INFO    ] 2026-06-05 00:10:35
[2026-06-05 00:10:35,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:10:35,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:10:35,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:10:35,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:10:35,538.538 INFO    ] time= 05/06/2026 00:10:35
[2026-06-05 00:10:35,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:10:35,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:10:35,666.666 INFO    ] No existing commands found in stream
[2026-06-05 00:10:40,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:10:40,681.681 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 00:10:42,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:10:42,510.510 INFO    ] Checking for system updates...
[2026-06-05 00:10:42,548.548 INFO    ] 200
[2026-06-05 00:10:42,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:42,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:10:42,605.605 INFO    ] No update needed
[2026-06-05 00:10:42,608.608 INFO    ] Checking for camera pi updates...
[2026-06-05 00:10:42,641.641 INFO    ] 200
[2026-06-05 00:10:42,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:42,690.690 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:10:42,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:10:42,750.750 INFO    ] No camera update needed
[2026-06-05 00:10:42,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:10:42,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:10:42,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:10:42,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:10:44,807.807 INFO    ] ================================================
[2026-06-05 00:10:44,823.823 INFO    ] Launching Daemon at Fri Jun  5 00:10:44 IST 2026
[2026-06-05 00:10:44,834.834 INFO    ] ================================================
[2026-06-05 00:10:45,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:10:45
[2026-06-05 00:10:45,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:10:46,239.239 INFO    ] Initializing speech engine...
[2026-06-05 00:10:46,254.254 INFO    ] 2026-06-05 00:10:46
[2026-06-05 00:10:46,522.522 INFO    ] 2026-06-05 00:10:46
[2026-06-05 00:10:46,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:10:46,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:10:46,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:10:46,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:10:46,971.971 INFO    ] time= 05/06/2026 00:10:46
[2026-06-05 00:10:47,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:10:47,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:10:47,154.154 INFO    ] No existing commands found in stream
[2026-06-05 00:10:52,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:10:52,169.169 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 00:10:55,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:10:55,507.507 INFO    ] Checking for system updates...
[2026-06-05 00:10:55,543.543 INFO    ] 200
[2026-06-05 00:10:55,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:55,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:10:55,602.602 INFO    ] No update needed
[2026-06-05 00:10:55,605.605 INFO    ] Checking for camera pi updates...
[2026-06-05 00:10:55,638.638 INFO    ] 200
[2026-06-05 00:10:55,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:10:55,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:10:55,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:10:55,732.732 INFO    ] No camera update needed
[2026-06-05 00:10:55,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:10:55,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:10:55,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:10:55,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:10:57,787.787 INFO    ] ================================================
[2026-06-05 00:10:57,803.803 INFO    ] Launching Daemon at Fri Jun  5 00:10:57 IST 2026
[2026-06-05 00:10:57,814.814 INFO    ] ================================================
[2026-06-05 00:10:58,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:10:58
[2026-06-05 00:10:59,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:10:59,473.473 INFO    ] Initializing speech engine...
[2026-06-05 00:10:59,490.490 INFO    ] 2026-06-05 00:10:59
[2026-06-05 00:10:59,758.758 INFO    ] 2026-06-05 00:10:59
[2026-06-05 00:10:59,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:11:00,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:11:00,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:11:00,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:11:00,281.281 INFO    ] time= 05/06/2026 00:11:00
[2026-06-05 00:11:00,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:11:00,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:11:00,466.466 INFO    ] No existing commands found in stream
[2026-06-05 00:11:05,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:11:05,494.494 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 00:11:08,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:11:08,919.919 INFO    ] Checking for system updates...
[2026-06-05 00:11:08,957.957 INFO    ] 200
[2026-06-05 00:11:08,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:11:09,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:11:09,016.016 INFO    ] No update needed
[2026-06-05 00:11:09,019.019 INFO    ] Checking for camera pi updates...
[2026-06-05 00:11:09,057.057 INFO    ] 200
[2026-06-05 00:11:09,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:11:09,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:11:09,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:11:09,163.163 INFO    ] No camera update needed
[2026-06-05 00:11:09,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:11:09,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:11:09,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:11:09,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:11:11,220.220 INFO    ] ================================================
[2026-06-05 00:11:11,237.237 INFO    ] Launching Daemon at Fri Jun  5 00:11:11 IST 2026
[2026-06-05 00:11:11,248.248 INFO    ] ================================================
[2026-06-05 00:11:11,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:11:11
[2026-06-05 00:11:12,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:11:12,706.706 INFO    ] Initializing speech engine...
[2026-06-05 00:11:12,716.716 INFO    ] 2026-06-05 00:11:12
[2026-06-05 00:11:12,985.985 INFO    ] 2026-06-05 00:11:12
[2026-06-05 00:11:13,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:11:13,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:11:13,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:11:13,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:11:13,343.343 INFO    ] time= 05/06/2026 00:11:13
[2026-06-05 00:11:13,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:11:13,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:11:13,423.423 INFO    ] No existing commands found in stream
[2026-06-05 00:11:18,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:11:18,439.439 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 00:11:20,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:11:20,039.039 INFO    ] Checking for system updates...
[2026-06-05 00:11:20,075.075 INFO    ] 200
[2026-06-05 00:11:20,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:11:20,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:11:20,132.132 INFO    ] No update needed
[2026-06-05 00:11:20,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 00:11:20,173.173 INFO    ] 200
[2026-06-05 00:11:20,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:11:20,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:11:20,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:11:20,266.266 INFO    ] No camera update needed
[2026-06-05 00:11:20,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:11:20,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:11:20,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:11:20,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:11:22,320.320 INFO    ] ================================================
[2026-06-05 00:11:22,337.337 INFO    ] Launching Daemon at Fri Jun  5 00:11:22 IST 2026
[2026-06-05 00:11:22,349.349 INFO    ] ================================================
[2026-06-05 00:11:22,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:11:22
[2026-06-05 00:11:23,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:11:23,767.767 INFO    ] Initializing speech engine...
[2026-06-05 00:11:23,779.779 INFO    ] 2026-06-05 00:11:23
[2026-06-05 00:11:24,046.046 INFO    ] 2026-06-05 00:11:24
[2026-06-05 00:11:24,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:11:24,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:11:24,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:11:24,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:11:24,500.500 INFO    ] time= 05/06/2026 00:11:24
[2026-06-05 00:11:24,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:11:24,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:11:24,746.746 INFO    ] No existing commands found in stream
[2026-06-05 00:11:29,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:11:29,779.779 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 00:11:32,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:11:32,891.891 INFO    ] Checking for system updates...
[2026-06-05 00:11:32,932.932 INFO    ] 200
[2026-06-05 00:11:32,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:11:32,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:11:32,990.990 INFO    ] No update needed
[2026-06-05 00:11:32,992.992 INFO    ] Checking for camera pi updates...
[2026-06-05 00:11:33,025.025 INFO    ] 200
[2026-06-05 00:11:33,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:11:33,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:11:33,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:11:33,111.111 INFO    ] No camera update needed
[2026-06-05 00:11:33,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:11:33,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:11:33,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:11:33,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:11:35,165.165 INFO    ] ================================================
[2026-06-05 00:11:35,182.182 INFO    ] Launching Daemon at Fri Jun  5 00:11:35 IST 2026
[2026-06-05 00:11:35,194.194 INFO    ] ================================================
[2026-06-05 00:11:35,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:11:35
[2026-06-05 00:11:36,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:11:36,611.611 INFO    ] Initializing speech engine...
[2026-06-05 00:11:36,634.634 INFO    ] 2026-06-05 00:11:36
[2026-06-05 00:11:36,891.891 INFO    ] 2026-06-05 00:11:36
[2026-06-05 00:11:36,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:11:37,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:11:37,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:11:37,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:11:37,349.349 INFO    ] time= 05/06/2026 00:11:37
[2026-06-05 00:11:37,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:11:37,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:11:37,520.520 INFO    ] No existing commands found in stream
[2026-06-05 00:11:42,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:11:42,534.534 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 00:11:46,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:11:46,353.353 INFO    ] Checking for system updates...
[2026-06-05 00:11:46,389.389 INFO    ] 200
[2026-06-05 00:11:46,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:11:46,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:11:46,448.448 INFO    ] No update needed
[2026-06-05 00:11:46,451.451 INFO    ] Checking for camera pi updates...
[2026-06-05 00:11:46,484.484 INFO    ] 200
[2026-06-05 00:11:46,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:11:46,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:11:46,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:11:46,579.579 INFO    ] No camera update needed
[2026-06-05 00:11:46,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:11:46,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:11:46,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:11:46,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:11:48,639.639 INFO    ] ================================================
[2026-06-05 00:11:48,654.654 INFO    ] Launching Daemon at Fri Jun  5 00:11:48 IST 2026
[2026-06-05 00:11:48,666.666 INFO    ] ================================================
[2026-06-05 00:11:49,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:11:49
[2026-06-05 00:11:50,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:11:50,358.358 INFO    ] Initializing speech engine...
[2026-06-05 00:11:50,366.366 INFO    ] 2026-06-05 00:11:50
[2026-06-05 00:11:50,661.661 INFO    ] 2026-06-05 00:11:50
[2026-06-05 00:11:50,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:11:50,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:11:50,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:11:51,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:11:51,131.131 INFO    ] time= 05/06/2026 00:11:51
[2026-06-05 00:11:51,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:11:51,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:11:51,274.274 INFO    ] No existing commands found in stream
[2026-06-05 00:11:56,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:11:56,291.291 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 00:12:00,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:12:00,166.166 INFO    ] Checking for system updates...
[2026-06-05 00:12:00,202.202 INFO    ] 200
[2026-06-05 00:12:00,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:00,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:12:00,261.261 INFO    ] No update needed
[2026-06-05 00:12:00,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 00:12:00,297.297 INFO    ] 200
[2026-06-05 00:12:00,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:00,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:12:00,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:12:00,494.494 INFO    ] No camera update needed
[2026-06-05 00:12:00,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:12:00,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:12:00,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:12:00,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:12:02,556.556 INFO    ] ================================================
[2026-06-05 00:12:02,576.576 INFO    ] Launching Daemon at Fri Jun  5 00:12:02 IST 2026
[2026-06-05 00:12:02,593.593 INFO    ] ================================================
[2026-06-05 00:12:03,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:12:03
[2026-06-05 00:12:04,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:12:04,308.308 INFO    ] Initializing speech engine...
[2026-06-05 00:12:04,317.317 INFO    ] 2026-06-05 00:12:04
[2026-06-05 00:12:04,609.609 INFO    ] 2026-06-05 00:12:04
[2026-06-05 00:12:04,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:12:04,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:12:04,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:12:05,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:12:05,162.162 INFO    ] time= 05/06/2026 00:12:05
[2026-06-05 00:12:05,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:12:05,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:12:05,301.301 INFO    ] No existing commands found in stream
[2026-06-05 00:12:10,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:12:10,334.334 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 00:12:11,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:12:11,257.257 INFO    ] Checking for system updates...
[2026-06-05 00:12:11,294.294 INFO    ] 200
[2026-06-05 00:12:11,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:11,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:12:11,352.352 INFO    ] No update needed
[2026-06-05 00:12:11,355.355 INFO    ] Checking for camera pi updates...
[2026-06-05 00:12:11,393.393 INFO    ] 200
[2026-06-05 00:12:11,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:11,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:12:11,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:12:11,489.489 INFO    ] No camera update needed
[2026-06-05 00:12:11,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:12:11,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:12:11,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:12:11,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:12:13,552.552 INFO    ] ================================================
[2026-06-05 00:12:13,567.567 INFO    ] Launching Daemon at Fri Jun  5 00:12:13 IST 2026
[2026-06-05 00:12:13,579.579 INFO    ] ================================================
[2026-06-05 00:12:14,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:12:14
[2026-06-05 00:12:14,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:12:14,999.999 INFO    ] Initializing speech engine...
[2026-06-05 00:12:15,011.011 INFO    ] 2026-06-05 00:12:15
[2026-06-05 00:12:15,262.262 INFO    ] 2026-06-05 00:12:15
[2026-06-05 00:12:15,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:12:15,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:12:15,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:12:15,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:12:15,746.746 INFO    ] time= 05/06/2026 00:12:15
[2026-06-05 00:12:15,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:12:15,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:12:15,895.895 INFO    ] No existing commands found in stream
[2026-06-05 00:12:20,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:12:20,910.910 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 00:12:22,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:12:22,821.821 INFO    ] Checking for system updates...
[2026-06-05 00:12:22,857.857 INFO    ] 200
[2026-06-05 00:12:22,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:22,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:12:22,915.915 INFO    ] No update needed
[2026-06-05 00:12:22,917.917 INFO    ] Checking for camera pi updates...
[2026-06-05 00:12:22,951.951 INFO    ] 200
[2026-06-05 00:12:22,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:22,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:12:23,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:12:23,045.045 INFO    ] No camera update needed
[2026-06-05 00:12:23,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:12:23,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:12:23,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:12:23,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:12:25,102.102 INFO    ] ================================================
[2026-06-05 00:12:25,117.117 INFO    ] Launching Daemon at Fri Jun  5 00:12:25 IST 2026
[2026-06-05 00:12:25,128.128 INFO    ] ================================================
[2026-06-05 00:12:25,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:12:25
[2026-06-05 00:12:26,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:12:26,538.538 INFO    ] Initializing speech engine...
[2026-06-05 00:12:26,545.545 INFO    ] 2026-06-05 00:12:26
[2026-06-05 00:12:26,844.844 INFO    ] 2026-06-05 00:12:26
[2026-06-05 00:12:26,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:12:27,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:12:27,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:12:27,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:12:27,244.244 INFO    ] time= 05/06/2026 00:12:27
[2026-06-05 00:12:27,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:12:27,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:12:27,432.432 INFO    ] No existing commands found in stream
[2026-06-05 00:12:32,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:12:32,457.457 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 00:12:34,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:12:34,072.072 INFO    ] Checking for system updates...
[2026-06-05 00:12:34,112.112 INFO    ] 200
[2026-06-05 00:12:34,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:34,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:12:34,170.170 INFO    ] No update needed
[2026-06-05 00:12:34,173.173 INFO    ] Checking for camera pi updates...
[2026-06-05 00:12:34,210.210 INFO    ] 200
[2026-06-05 00:12:34,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:34,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:12:34,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:12:34,317.317 INFO    ] No camera update needed
[2026-06-05 00:12:34,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:12:34,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:12:34,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:12:34,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:12:36,375.375 INFO    ] ================================================
[2026-06-05 00:12:36,390.390 INFO    ] Launching Daemon at Fri Jun  5 00:12:36 IST 2026
[2026-06-05 00:12:36,401.401 INFO    ] ================================================
[2026-06-05 00:12:36,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:12:36
[2026-06-05 00:12:37,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:12:37,861.861 INFO    ] Initializing speech engine...
[2026-06-05 00:12:37,869.869 INFO    ] 2026-06-05 00:12:37
[2026-06-05 00:12:38,128.128 INFO    ] 2026-06-05 00:12:38
[2026-06-05 00:12:38,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:12:38,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:12:38,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:12:38,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:12:38,617.617 INFO    ] time= 05/06/2026 00:12:38
[2026-06-05 00:12:38,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:12:38,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:12:38,800.800 INFO    ] No existing commands found in stream
[2026-06-05 00:12:43,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:12:43,834.834 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 00:12:45,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:12:45,258.258 INFO    ] Checking for system updates...
[2026-06-05 00:12:45,296.296 INFO    ] 200
[2026-06-05 00:12:45,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:45,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:12:45,360.360 INFO    ] No update needed
[2026-06-05 00:12:45,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 00:12:45,397.397 INFO    ] 200
[2026-06-05 00:12:45,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:45,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:12:45,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:12:45,496.496 INFO    ] No camera update needed
[2026-06-05 00:12:45,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:12:45,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:12:45,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:12:45,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:12:47,556.556 INFO    ] ================================================
[2026-06-05 00:12:47,571.571 INFO    ] Launching Daemon at Fri Jun  5 00:12:47 IST 2026
[2026-06-05 00:12:47,581.581 INFO    ] ================================================
[2026-06-05 00:12:48,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:12:48
[2026-06-05 00:12:48,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:12:49,209.209 INFO    ] Initializing speech engine...
[2026-06-05 00:12:49,216.216 INFO    ] 2026-06-05 00:12:49
[2026-06-05 00:12:49,497.497 INFO    ] 2026-06-05 00:12:49
[2026-06-05 00:12:49,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:12:49,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:12:49,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:12:49,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:12:50,008.008 INFO    ] time= 05/06/2026 00:12:49
[2026-06-05 00:12:50,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:12:50,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:12:50,205.205 INFO    ] No existing commands found in stream
[2026-06-05 00:12:55,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:12:55,234.234 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 00:12:59,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:12:59,382.382 INFO    ] Checking for system updates...
[2026-06-05 00:12:59,420.420 INFO    ] 200
[2026-06-05 00:12:59,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:59,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:12:59,480.480 INFO    ] No update needed
[2026-06-05 00:12:59,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 00:12:59,517.517 INFO    ] 200
[2026-06-05 00:12:59,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:12:59,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:12:59,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:12:59,616.616 INFO    ] No camera update needed
[2026-06-05 00:12:59,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:12:59,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:12:59,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:12:59,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:13:01,681.681 INFO    ] ================================================
[2026-06-05 00:13:01,702.702 INFO    ] Launching Daemon at Fri Jun  5 00:13:01 IST 2026
[2026-06-05 00:13:01,744.744 INFO    ] ================================================
[2026-06-05 00:13:02,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:13:02
[2026-06-05 00:13:03,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:13:03,367.367 INFO    ] Initializing speech engine...
[2026-06-05 00:13:03,376.376 INFO    ] 2026-06-05 00:13:03
[2026-06-05 00:13:03,672.672 INFO    ] 2026-06-05 00:13:03
[2026-06-05 00:13:03,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:13:03,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:13:03,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:13:04,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:13:04,052.052 INFO    ] time= 05/06/2026 00:13:04
[2026-06-05 00:13:04,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:13:04,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:13:04,177.177 INFO    ] No existing commands found in stream
[2026-06-05 00:13:09,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:13:09,192.192 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 00:13:10,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:13:10,227.227 INFO    ] Checking for system updates...
[2026-06-05 00:13:10,266.266 INFO    ] 200
[2026-06-05 00:13:10,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:10,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:13:10,331.331 INFO    ] No update needed
[2026-06-05 00:13:10,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 00:13:10,367.367 INFO    ] 200
[2026-06-05 00:13:10,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:10,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:13:10,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:13:10,467.467 INFO    ] No camera update needed
[2026-06-05 00:13:10,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:13:10,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:13:10,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:13:10,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:13:12,523.523 INFO    ] ================================================
[2026-06-05 00:13:12,540.540 INFO    ] Launching Daemon at Fri Jun  5 00:13:12 IST 2026
[2026-06-05 00:13:12,551.551 INFO    ] ================================================
[2026-06-05 00:13:13,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:13:13
[2026-06-05 00:13:13,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:13:13,950.950 INFO    ] Initializing speech engine...
[2026-06-05 00:13:13,971.971 INFO    ] 2026-06-05 00:13:13
[2026-06-05 00:13:14,230.230 INFO    ] 2026-06-05 00:13:14
[2026-06-05 00:13:14,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:13:14,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:13:14,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:13:14,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:13:14,653.653 INFO    ] time= 05/06/2026 00:13:14
[2026-06-05 00:13:14,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:13:14,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:13:14,808.808 INFO    ] No existing commands found in stream
[2026-06-05 00:13:19,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:13:19,823.823 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 00:13:21,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:13:21,368.368 INFO    ] Checking for system updates...
[2026-06-05 00:13:21,406.406 INFO    ] 200
[2026-06-05 00:13:21,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:21,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:13:21,472.472 INFO    ] No update needed
[2026-06-05 00:13:21,474.474 INFO    ] Checking for camera pi updates...
[2026-06-05 00:13:21,510.510 INFO    ] 200
[2026-06-05 00:13:21,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:21,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:13:21,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:13:21,619.619 INFO    ] No camera update needed
[2026-06-05 00:13:21,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:13:21,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:13:21,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:13:21,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:13:23,676.676 INFO    ] ================================================
[2026-06-05 00:13:23,692.692 INFO    ] Launching Daemon at Fri Jun  5 00:13:23 IST 2026
[2026-06-05 00:13:23,703.703 INFO    ] ================================================
[2026-06-05 00:13:24,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:13:24
[2026-06-05 00:13:25,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:13:25,321.321 INFO    ] Initializing speech engine...
[2026-06-05 00:13:25,332.332 INFO    ] 2026-06-05 00:13:25
[2026-06-05 00:13:25,638.638 INFO    ] 2026-06-05 00:13:25
[2026-06-05 00:13:25,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:13:25,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:13:25,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:13:26,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:13:26,147.147 INFO    ] time= 05/06/2026 00:13:26
[2026-06-05 00:13:26,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:13:26,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:13:26,302.302 INFO    ] No existing commands found in stream
[2026-06-05 00:13:31,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:13:31,325.325 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 00:13:35,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:13:35,158.158 INFO    ] Checking for system updates...
[2026-06-05 00:13:35,195.195 INFO    ] 200
[2026-06-05 00:13:35,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:35,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:13:35,261.261 INFO    ] No update needed
[2026-06-05 00:13:35,264.264 INFO    ] Checking for camera pi updates...
[2026-06-05 00:13:35,298.298 INFO    ] 200
[2026-06-05 00:13:35,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:35,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:13:35,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:13:35,402.402 INFO    ] No camera update needed
[2026-06-05 00:13:35,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:13:35,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:13:35,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:13:35,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:13:37,461.461 INFO    ] ================================================
[2026-06-05 00:13:37,476.476 INFO    ] Launching Daemon at Fri Jun  5 00:13:37 IST 2026
[2026-06-05 00:13:37,487.487 INFO    ] ================================================
[2026-06-05 00:13:38,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:13:38
[2026-06-05 00:13:38,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:13:39,106.106 INFO    ] Initializing speech engine...
[2026-06-05 00:13:39,118.118 INFO    ] 2026-06-05 00:13:39
[2026-06-05 00:13:39,424.424 INFO    ] 2026-06-05 00:13:39
[2026-06-05 00:13:39,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:13:39,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:13:39,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:13:39,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:13:39,929.929 INFO    ] time= 05/06/2026 00:13:39
[2026-06-05 00:13:39,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:13:39,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:13:40,083.083 INFO    ] No existing commands found in stream
[2026-06-05 00:13:45,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:13:45,102.102 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 00:13:45,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:13:45,496.496 INFO    ] Checking for system updates...
[2026-06-05 00:13:45,536.536 INFO    ] 200
[2026-06-05 00:13:45,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:45,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:13:45,600.600 INFO    ] No update needed
[2026-06-05 00:13:45,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 00:13:45,639.639 INFO    ] 200
[2026-06-05 00:13:45,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:45,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:13:45,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:13:45,734.734 INFO    ] No camera update needed
[2026-06-05 00:13:45,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:13:45,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:13:45,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:13:45,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:13:47,790.790 INFO    ] ================================================
[2026-06-05 00:13:47,806.806 INFO    ] Launching Daemon at Fri Jun  5 00:13:47 IST 2026
[2026-06-05 00:13:47,817.817 INFO    ] ================================================
[2026-06-05 00:13:48,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:13:48
[2026-06-05 00:13:49,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:13:49,264.264 INFO    ] Initializing speech engine...
[2026-06-05 00:13:49,284.284 INFO    ] 2026-06-05 00:13:49
[2026-06-05 00:13:49,563.563 INFO    ] 2026-06-05 00:13:49
[2026-06-05 00:13:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:13:49,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:13:49,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:13:49,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:13:49,956.956 INFO    ] time= 05/06/2026 00:13:49
[2026-06-05 00:13:49,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:13:49,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:13:50,063.063 INFO    ] No existing commands found in stream
[2026-06-05 00:13:55,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:13:55,078.078 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 00:13:55,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:13:55,471.471 INFO    ] Checking for system updates...
[2026-06-05 00:13:55,511.511 INFO    ] 200
[2026-06-05 00:13:55,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:55,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:13:55,570.570 INFO    ] No update needed
[2026-06-05 00:13:55,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 00:13:55,610.610 INFO    ] 200
[2026-06-05 00:13:55,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:13:55,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:13:55,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:13:55,708.708 INFO    ] No camera update needed
[2026-06-05 00:13:55,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:13:55,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:13:55,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:13:55,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:13:57,764.764 INFO    ] ================================================
[2026-06-05 00:13:57,781.781 INFO    ] Launching Daemon at Fri Jun  5 00:13:57 IST 2026
[2026-06-05 00:13:57,792.792 INFO    ] ================================================
[2026-06-05 00:13:58,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:13:58
[2026-06-05 00:13:58,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:13:59,197.197 INFO    ] Initializing speech engine...
[2026-06-05 00:13:59,203.203 INFO    ] 2026-06-05 00:13:59
[2026-06-05 00:13:59,498.498 INFO    ] 2026-06-05 00:13:59
[2026-06-05 00:13:59,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:13:59,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:13:59,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:13:59,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:13:59,911.911 INFO    ] time= 05/06/2026 00:13:59
[2026-06-05 00:13:59,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:13:59,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:13:59,998.998 INFO    ] No existing commands found in stream
[2026-06-05 00:14:05,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:14:05,014.014 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 00:14:08,842.842 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:14:08,844.844 INFO    ] Checking for system updates...
[2026-06-05 00:14:08,880.880 INFO    ] 200
[2026-06-05 00:14:08,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:08,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:08,937.937 INFO    ] No update needed
[2026-06-05 00:14:08,940.940 INFO    ] Checking for camera pi updates...
[2026-06-05 00:14:08,974.974 INFO    ] 200
[2026-06-05 00:14:08,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:09,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:14:09,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:09,164.164 INFO    ] No camera update needed
[2026-06-05 00:14:09,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:14:09,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:14:09,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:14:09,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:14:11,218.218 INFO    ] ================================================
[2026-06-05 00:14:11,234.234 INFO    ] Launching Daemon at Fri Jun  5 00:14:11 IST 2026
[2026-06-05 00:14:11,246.246 INFO    ] ================================================
[2026-06-05 00:14:11,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:14:11
[2026-06-05 00:14:12,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:14:12,713.713 INFO    ] Initializing speech engine...
[2026-06-05 00:14:12,719.719 INFO    ] 2026-06-05 00:14:12
[2026-06-05 00:14:12,966.966 INFO    ] 2026-06-05 00:14:12
[2026-06-05 00:14:13,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:14:13,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:14:13,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:14:13,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:14:13,403.403 INFO    ] time= 05/06/2026 00:14:13
[2026-06-05 00:14:13,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:14:13,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:14:13,586.586 INFO    ] No existing commands found in stream
[2026-06-05 00:14:18,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:14:18,601.601 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 00:14:19,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:14:19,868.868 INFO    ] Checking for system updates...
[2026-06-05 00:14:19,904.904 INFO    ] 200
[2026-06-05 00:14:19,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:19,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:19,969.969 INFO    ] No update needed
[2026-06-05 00:14:19,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 00:14:20,009.009 INFO    ] 200
[2026-06-05 00:14:20,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:20,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:14:20,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:20,109.109 INFO    ] No camera update needed
[2026-06-05 00:14:20,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:14:20,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:14:20,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:14:20,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:14:22,167.167 INFO    ] ================================================
[2026-06-05 00:14:22,183.183 INFO    ] Launching Daemon at Fri Jun  5 00:14:22 IST 2026
[2026-06-05 00:14:22,194.194 INFO    ] ================================================
[2026-06-05 00:14:22,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:14:22
[2026-06-05 00:14:23,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:14:23,713.713 INFO    ] Initializing speech engine...
[2026-06-05 00:14:23,720.720 INFO    ] 2026-06-05 00:14:23
[2026-06-05 00:14:23,981.981 INFO    ] 2026-06-05 00:14:23
[2026-06-05 00:14:24,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:14:24,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:14:24,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:14:24,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:14:24,420.420 INFO    ] time= 05/06/2026 00:14:24
[2026-06-05 00:14:24,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:14:24,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:14:24,586.586 INFO    ] No existing commands found in stream
[2026-06-05 00:14:29,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:14:29,600.600 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 00:14:33,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:14:33,858.858 INFO    ] Checking for system updates...
[2026-06-05 00:14:33,894.894 INFO    ] 200
[2026-06-05 00:14:33,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:33,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:33,959.959 INFO    ] No update needed
[2026-06-05 00:14:33,962.962 INFO    ] Checking for camera pi updates...
[2026-06-05 00:14:33,996.996 INFO    ] 200
[2026-06-05 00:14:33,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:34,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:14:34,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:34,089.089 INFO    ] No camera update needed
[2026-06-05 00:14:34,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:14:34,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:14:34,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:14:34,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:14:36,147.147 INFO    ] ================================================
[2026-06-05 00:14:36,163.163 INFO    ] Launching Daemon at Fri Jun  5 00:14:36 IST 2026
[2026-06-05 00:14:36,174.174 INFO    ] ================================================
[2026-06-05 00:14:36,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:14:36
[2026-06-05 00:14:37,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:14:37,836.836 INFO    ] Initializing speech engine...
[2026-06-05 00:14:37,847.847 INFO    ] 2026-06-05 00:14:37
[2026-06-05 00:14:38,122.122 INFO    ] 2026-06-05 00:14:38
[2026-06-05 00:14:38,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:14:38,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:14:38,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:14:38,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:14:38,687.687 INFO    ] time= 05/06/2026 00:14:38
[2026-06-05 00:14:38,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:14:38,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:14:38,844.844 INFO    ] No existing commands found in stream
[2026-06-05 00:14:43,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:14:43,861.861 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 00:14:44,826.826 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:14:44,829.829 INFO    ] Checking for system updates...
[2026-06-05 00:14:44,871.871 INFO    ] 200
[2026-06-05 00:14:44,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:44,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:44,935.935 INFO    ] No update needed
[2026-06-05 00:14:44,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 00:14:44,978.978 INFO    ] 200
[2026-06-05 00:14:44,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:45,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:14:45,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:45,081.081 INFO    ] No camera update needed
[2026-06-05 00:14:45,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:14:45,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:14:45,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:14:45,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:14:47,137.137 INFO    ] ================================================
[2026-06-05 00:14:47,153.153 INFO    ] Launching Daemon at Fri Jun  5 00:14:47 IST 2026
[2026-06-05 00:14:47,164.164 INFO    ] ================================================
[2026-06-05 00:14:47,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:14:47
[2026-06-05 00:14:48,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:14:48,659.659 INFO    ] Initializing speech engine...
[2026-06-05 00:14:48,671.671 INFO    ] 2026-06-05 00:14:48
[2026-06-05 00:14:48,941.941 INFO    ] 2026-06-05 00:14:48
[2026-06-05 00:14:48,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:14:49,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:14:49,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:14:49,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:14:49,318.318 INFO    ] time= 05/06/2026 00:14:49
[2026-06-05 00:14:49,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:14:49,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:14:49,489.489 INFO    ] No existing commands found in stream
[2026-06-05 00:14:54,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:14:54,517.517 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 00:14:58,613.613 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:14:58,615.615 INFO    ] Checking for system updates...
[2026-06-05 00:14:58,655.655 INFO    ] 200
[2026-06-05 00:14:58,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:58,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:58,713.713 INFO    ] No update needed
[2026-06-05 00:14:58,715.715 INFO    ] Checking for camera pi updates...
[2026-06-05 00:14:58,760.760 INFO    ] 200
[2026-06-05 00:14:58,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:14:58,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:14:58,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:14:58,858.858 INFO    ] No camera update needed
[2026-06-05 00:14:58,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:14:58,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:14:58,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:14:58,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:15:00,916.916 INFO    ] ================================================
[2026-06-05 00:15:00,931.931 INFO    ] Launching Daemon at Fri Jun  5 00:15:00 IST 2026
[2026-06-05 00:15:00,942.942 INFO    ] ================================================
[2026-06-05 00:15:01,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:15:01
[2026-06-05 00:15:02,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:15:03,086.086 INFO    ] Initializing speech engine...
[2026-06-05 00:15:03,101.101 INFO    ] 2026-06-05 00:15:03
[2026-06-05 00:15:03,432.432 INFO    ] 2026-06-05 00:15:03
[2026-06-05 00:15:03,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:15:03,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:15:03,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:15:03,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:15:03,832.832 INFO    ] time= 05/06/2026 00:15:03
[2026-06-05 00:15:03,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:15:03,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:15:03,931.931 INFO    ] No existing commands found in stream
[2026-06-05 00:15:08,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:15:08,970.970 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 00:15:11,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:15:11,080.080 INFO    ] Checking for system updates...
[2026-06-05 00:15:11,116.116 INFO    ] 200
[2026-06-05 00:15:11,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:11,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:15:11,173.173 INFO    ] No update needed
[2026-06-05 00:15:11,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 00:15:11,213.213 INFO    ] 200
[2026-06-05 00:15:11,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:11,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:15:11,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:15:11,315.315 INFO    ] No camera update needed
[2026-06-05 00:15:11,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:15:11,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:15:11,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:15:11,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:15:13,371.371 INFO    ] ================================================
[2026-06-05 00:15:13,386.386 INFO    ] Launching Daemon at Fri Jun  5 00:15:13 IST 2026
[2026-06-05 00:15:13,397.397 INFO    ] ================================================
[2026-06-05 00:15:14,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:15:14
[2026-06-05 00:15:14,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:15:15,043.043 INFO    ] Initializing speech engine...
[2026-06-05 00:15:15,049.049 INFO    ] 2026-06-05 00:15:15
[2026-06-05 00:15:15,340.340 INFO    ] 2026-06-05 00:15:15
[2026-06-05 00:15:15,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:15:15,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:15:15,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:15:15,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:15:15,885.885 INFO    ] time= 05/06/2026 00:15:15
[2026-06-05 00:15:15,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:15:15,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:15:16,025.025 INFO    ] No existing commands found in stream
[2026-06-05 00:15:21,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:15:21,058.058 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 00:15:21,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:15:21,945.945 INFO    ] Checking for system updates...
[2026-06-05 00:15:21,986.986 INFO    ] 200
[2026-06-05 00:15:21,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:22,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:15:22,047.047 INFO    ] No update needed
[2026-06-05 00:15:22,050.050 INFO    ] Checking for camera pi updates...
[2026-06-05 00:15:22,089.089 INFO    ] 200
[2026-06-05 00:15:22,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:22,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:15:22,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:15:22,191.191 INFO    ] No camera update needed
[2026-06-05 00:15:22,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:15:22,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:15:22,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:15:22,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:15:24,251.251 INFO    ] ================================================
[2026-06-05 00:15:24,268.268 INFO    ] Launching Daemon at Fri Jun  5 00:15:24 IST 2026
[2026-06-05 00:15:24,281.281 INFO    ] ================================================
[2026-06-05 00:15:24,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:15:24
[2026-06-05 00:15:25,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:15:25,758.758 INFO    ] Initializing speech engine...
[2026-06-05 00:15:25,771.771 INFO    ] 2026-06-05 00:15:25
[2026-06-05 00:15:26,038.038 INFO    ] 2026-06-05 00:15:26
[2026-06-05 00:15:26,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:15:26,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:15:26,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:15:26,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:15:26,503.503 INFO    ] time= 05/06/2026 00:15:26
[2026-06-05 00:15:26,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:15:26,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:15:26,668.668 INFO    ] No existing commands found in stream
[2026-06-05 00:15:31,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:15:31,683.683 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 00:15:34,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:15:34,721.721 INFO    ] Checking for system updates...
[2026-06-05 00:15:34,757.757 INFO    ] 200
[2026-06-05 00:15:34,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:34,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:15:34,814.814 INFO    ] No update needed
[2026-06-05 00:15:34,817.817 INFO    ] Checking for camera pi updates...
[2026-06-05 00:15:34,856.856 INFO    ] 200
[2026-06-05 00:15:34,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:34,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:15:34,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:15:34,951.951 INFO    ] No camera update needed
[2026-06-05 00:15:34,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:15:34,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:15:34,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:15:34,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:15:37,009.009 INFO    ] ================================================
[2026-06-05 00:15:37,026.026 INFO    ] Launching Daemon at Fri Jun  5 00:15:37 IST 2026
[2026-06-05 00:15:37,036.036 INFO    ] ================================================
[2026-06-05 00:15:37,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:15:37
[2026-06-05 00:15:38,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:15:38,468.468 INFO    ] Initializing speech engine...
[2026-06-05 00:15:38,480.480 INFO    ] 2026-06-05 00:15:38
[2026-06-05 00:15:38,750.750 INFO    ] 2026-06-05 00:15:38
[2026-06-05 00:15:38,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:15:39,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:15:39,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:15:39,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:15:39,237.237 INFO    ] time= 05/06/2026 00:15:39
[2026-06-05 00:15:39,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:15:39,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:15:39,379.379 INFO    ] No existing commands found in stream
[2026-06-05 00:15:44,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:15:44,393.393 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 00:15:45,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:15:45,543.543 INFO    ] Checking for system updates...
[2026-06-05 00:15:45,579.579 INFO    ] 200
[2026-06-05 00:15:45,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:45,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:15:45,653.653 INFO    ] No update needed
[2026-06-05 00:15:45,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 00:15:45,690.690 INFO    ] 200
[2026-06-05 00:15:45,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:45,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:15:45,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:15:45,786.786 INFO    ] No camera update needed
[2026-06-05 00:15:45,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:15:45,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:15:45,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:15:45,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:15:47,841.841 INFO    ] ================================================
[2026-06-05 00:15:47,856.856 INFO    ] Launching Daemon at Fri Jun  5 00:15:47 IST 2026
[2026-06-05 00:15:47,867.867 INFO    ] ================================================
[2026-06-05 00:15:48,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:15:48
[2026-06-05 00:15:49,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:15:49,348.348 INFO    ] Initializing speech engine...
[2026-06-05 00:15:49,358.358 INFO    ] 2026-06-05 00:15:49
[2026-06-05 00:15:49,673.673 INFO    ] 2026-06-05 00:15:49
[2026-06-05 00:15:49,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:15:49,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:15:49,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:15:50,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:15:50,186.186 INFO    ] time= 05/06/2026 00:15:50
[2026-06-05 00:15:50,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:15:50,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:15:50,328.328 INFO    ] No existing commands found in stream
[2026-06-05 00:15:55,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:15:55,359.359 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 00:15:59,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:15:59,708.708 INFO    ] Checking for system updates...
[2026-06-05 00:15:59,743.743 INFO    ] 200
[2026-06-05 00:15:59,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:59,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:15:59,801.801 INFO    ] No update needed
[2026-06-05 00:15:59,804.804 INFO    ] Checking for camera pi updates...
[2026-06-05 00:15:59,837.837 INFO    ] 200
[2026-06-05 00:15:59,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:15:59,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:15:59,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:15:59,935.935 INFO    ] No camera update needed
[2026-06-05 00:15:59,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:15:59,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:15:59,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:15:59,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:16:02,994.994 INFO    ] ================================================
[2026-06-05 00:16:02,022.022 INFO    ] Launching Daemon at Fri Jun  5 00:16:02 IST 2026
[2026-06-05 00:16:02,041.041 INFO    ] ================================================
[2026-06-05 00:16:02,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:16:02
[2026-06-05 00:16:03,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:16:03,737.737 INFO    ] Initializing speech engine...
[2026-06-05 00:16:03,745.745 INFO    ] 2026-06-05 00:16:03
[2026-06-05 00:16:03,998.998 INFO    ] 2026-06-05 00:16:03
[2026-06-05 00:16:04,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:16:04,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:16:04,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:16:04,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:16:04,376.376 INFO    ] time= 05/06/2026 00:16:04
[2026-06-05 00:16:04,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:16:04,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:16:04,536.536 INFO    ] No existing commands found in stream
[2026-06-05 00:16:09,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:16:09,563.563 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 00:16:11,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:16:11,082.082 INFO    ] Checking for system updates...
[2026-06-05 00:16:11,118.118 INFO    ] 200
[2026-06-05 00:16:11,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:16:11,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:16:11,183.183 INFO    ] No update needed
[2026-06-05 00:16:11,186.186 INFO    ] Checking for camera pi updates...
[2026-06-05 00:16:11,219.219 INFO    ] 200
[2026-06-05 00:16:11,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:16:11,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:16:11,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:16:11,311.311 INFO    ] No camera update needed
[2026-06-05 00:16:11,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:16:11,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:16:11,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:16:11,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:16:13,368.368 INFO    ] ================================================
[2026-06-05 00:16:13,383.383 INFO    ] Launching Daemon at Fri Jun  5 00:16:13 IST 2026
[2026-06-05 00:16:13,395.395 INFO    ] ================================================
[2026-06-05 00:16:13,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:16:13
[2026-06-05 00:16:14,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:16:14,834.834 INFO    ] Initializing speech engine...
[2026-06-05 00:16:14,840.840 INFO    ] 2026-06-05 00:16:14
[2026-06-05 00:16:15,100.100 INFO    ] 2026-06-05 00:16:15
[2026-06-05 00:16:15,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:16:15,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:16:15,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:16:15,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:16:15,585.585 INFO    ] time= 05/06/2026 00:16:15
[2026-06-05 00:16:15,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:16:15,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:16:15,790.790 INFO    ] No existing commands found in stream
[2026-06-05 00:16:20,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:16:20,812.812 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 00:16:22,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:16:22,582.582 INFO    ] Checking for system updates...
[2026-06-05 00:16:22,623.623 INFO    ] 200
[2026-06-05 00:16:22,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:16:22,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:16:22,682.682 INFO    ] No update needed
[2026-06-05 00:16:22,685.685 INFO    ] Checking for camera pi updates...
[2026-06-05 00:16:22,723.723 INFO    ] 200
[2026-06-05 00:16:22,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:16:22,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:16:22,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:16:22,920.920 INFO    ] No camera update needed
[2026-06-05 00:16:22,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:16:22,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:16:22,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:16:22,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:16:24,984.984 INFO    ] ================================================
[2026-06-05 00:16:25,000.000 INFO    ] Launching Daemon at Fri Jun  5 00:16:24 IST 2026
[2026-06-05 00:16:25,012.012 INFO    ] ================================================
[2026-06-05 00:16:25,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:16:25
[2026-06-05 00:16:26,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:16:26,417.417 INFO    ] Initializing speech engine...
[2026-06-05 00:16:26,441.441 INFO    ] 2026-06-05 00:16:26
[2026-06-05 00:16:26,698.698 INFO    ] 2026-06-05 00:16:26
[2026-06-05 00:16:26,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:16:26,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:16:26,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:16:27,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:16:27,079.079 INFO    ] time= 05/06/2026 00:16:27
[2026-06-05 00:16:27,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:16:27,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:16:27,165.165 INFO    ] No existing commands found in stream
[2026-06-05 00:16:32,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:16:32,198.198 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 00:16:34,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:16:34,184.184 INFO    ] Checking for system updates...
[2026-06-05 00:16:34,221.221 INFO    ] 200
[2026-06-05 00:16:34,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:16:34,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:16:34,279.279 INFO    ] No update needed
[2026-06-05 00:16:34,281.281 INFO    ] Checking for camera pi updates...
[2026-06-05 00:16:34,319.319 INFO    ] 200
[2026-06-05 00:16:34,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:16:34,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:16:34,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:16:34,419.419 INFO    ] No camera update needed
[2026-06-05 00:16:34,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:16:34,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:16:34,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:16:34,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:16:36,474.474 INFO    ] ================================================
[2026-06-05 00:16:36,490.490 INFO    ] Launching Daemon at Fri Jun  5 00:16:36 IST 2026
[2026-06-05 00:16:36,501.501 INFO    ] ================================================
[2026-06-05 00:16:37,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:16:37
[2026-06-05 00:16:37,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:16:37,910.910 INFO    ] Initializing speech engine...
[2026-06-05 00:16:37,925.925 INFO    ] 2026-06-05 00:16:37
[2026-06-05 00:16:38,191.191 INFO    ] 2026-06-05 00:16:38
[2026-06-05 00:16:38,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:16:38,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:16:38,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:16:38,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:16:38,641.641 INFO    ] time= 05/06/2026 00:16:38
[2026-06-05 00:16:38,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:16:38,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:16:38,843.843 INFO    ] No existing commands found in stream
[2026-06-05 00:16:43,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:16:43,882.882 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 00:16:46,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:16:46,260.260 INFO    ] Checking for system updates...
[2026-06-05 00:16:46,297.297 INFO    ] 200
[2026-06-05 00:16:46,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:16:46,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:16:46,354.354 INFO    ] No update needed
[2026-06-05 00:16:46,356.356 INFO    ] Checking for camera pi updates...
[2026-06-05 00:16:46,394.394 INFO    ] 200
[2026-06-05 00:16:46,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:16:46,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:16:46,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:16:46,490.490 INFO    ] No camera update needed
[2026-06-05 00:16:46,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:16:46,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:16:46,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:16:46,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:16:48,544.544 INFO    ] ================================================
[2026-06-05 00:16:48,560.560 INFO    ] Launching Daemon at Fri Jun  5 00:16:48 IST 2026
[2026-06-05 00:16:48,571.571 INFO    ] ================================================
[2026-06-05 00:16:49,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:16:49
[2026-06-05 00:16:49,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:16:50,038.038 INFO    ] Initializing speech engine...
[2026-06-05 00:16:50,047.047 INFO    ] 2026-06-05 00:16:50
[2026-06-05 00:16:50,319.319 INFO    ] 2026-06-05 00:16:50
[2026-06-05 00:16:50,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:16:50,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:16:50,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:16:50,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:16:50,792.792 INFO    ] time= 05/06/2026 00:16:50
[2026-06-05 00:16:50,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:16:50,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:16:50,913.913 INFO    ] No existing commands found in stream
[2026-06-05 00:16:55,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:16:55,928.928 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 00:17:00,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:17:00,335.335 INFO    ] Checking for system updates...
[2026-06-05 00:17:00,371.371 INFO    ] 200
[2026-06-05 00:17:00,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:00,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:17:00,430.430 INFO    ] No update needed
[2026-06-05 00:17:00,433.433 INFO    ] Checking for camera pi updates...
[2026-06-05 00:17:00,467.467 INFO    ] 200
[2026-06-05 00:17:00,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:00,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:17:00,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:17:00,569.569 INFO    ] No camera update needed
[2026-06-05 00:17:00,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:17:00,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:17:00,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:17:00,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:17:02,632.632 INFO    ] ================================================
[2026-06-05 00:17:02,651.651 INFO    ] Launching Daemon at Fri Jun  5 00:17:02 IST 2026
[2026-06-05 00:17:02,664.664 INFO    ] ================================================
[2026-06-05 00:17:03,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:17:03
[2026-06-05 00:17:03,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:17:04,207.207 INFO    ] Initializing speech engine...
[2026-06-05 00:17:04,218.218 INFO    ] 2026-06-05 00:17:04
[2026-06-05 00:17:04,472.472 INFO    ] 2026-06-05 00:17:04
[2026-06-05 00:17:04,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:17:04,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:17:04,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:17:04,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:17:04,949.949 INFO    ] time= 05/06/2026 00:17:04
[2026-06-05 00:17:05,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:17:05,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:17:05,084.084 INFO    ] No existing commands found in stream
[2026-06-05 00:17:10,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:17:10,099.099 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 00:17:13,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:17:13,245.245 INFO    ] Checking for system updates...
[2026-06-05 00:17:13,281.281 INFO    ] 200
[2026-06-05 00:17:13,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:13,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:17:13,346.346 INFO    ] No update needed
[2026-06-05 00:17:13,349.349 INFO    ] Checking for camera pi updates...
[2026-06-05 00:17:13,388.388 INFO    ] 200
[2026-06-05 00:17:13,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:13,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:17:13,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:17:13,477.477 INFO    ] No camera update needed
[2026-06-05 00:17:13,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:17:13,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:17:13,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:17:13,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:17:15,535.535 INFO    ] ================================================
[2026-06-05 00:17:15,551.551 INFO    ] Launching Daemon at Fri Jun  5 00:17:15 IST 2026
[2026-06-05 00:17:15,562.562 INFO    ] ================================================
[2026-06-05 00:17:16,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:17:16
[2026-06-05 00:17:16,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:17:17,090.090 INFO    ] Initializing speech engine...
[2026-06-05 00:17:17,100.100 INFO    ] 2026-06-05 00:17:17
[2026-06-05 00:17:17,367.367 INFO    ] 2026-06-05 00:17:17
[2026-06-05 00:17:17,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:17:17,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:17:17,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:17:17,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:17:17,791.791 INFO    ] time= 05/06/2026 00:17:17
[2026-06-05 00:17:17,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:17:17,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:17:17,972.972 INFO    ] No existing commands found in stream
[2026-06-05 00:17:22,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:17:22,986.986 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 00:17:24,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:17:24,876.876 INFO    ] Checking for system updates...
[2026-06-05 00:17:24,912.912 INFO    ] 200
[2026-06-05 00:17:24,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:24,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:17:24,977.977 INFO    ] No update needed
[2026-06-05 00:17:24,979.979 INFO    ] Checking for camera pi updates...
[2026-06-05 00:17:25,016.016 INFO    ] 200
[2026-06-05 00:17:25,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:25,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:17:25,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:17:25,108.108 INFO    ] No camera update needed
[2026-06-05 00:17:25,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:17:25,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:17:25,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:17:25,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:17:27,164.164 INFO    ] ================================================
[2026-06-05 00:17:27,180.180 INFO    ] Launching Daemon at Fri Jun  5 00:17:27 IST 2026
[2026-06-05 00:17:27,191.191 INFO    ] ================================================
[2026-06-05 00:17:27,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:17:27
[2026-06-05 00:17:28,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:17:28,666.666 INFO    ] Initializing speech engine...
[2026-06-05 00:17:28,676.676 INFO    ] 2026-06-05 00:17:28
[2026-06-05 00:17:28,936.936 INFO    ] 2026-06-05 00:17:28
[2026-06-05 00:17:28,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:17:29,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:17:29,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:17:29,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:17:29,413.413 INFO    ] time= 05/06/2026 00:17:29
[2026-06-05 00:17:29,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:17:29,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:17:29,553.553 INFO    ] No existing commands found in stream
[2026-06-05 00:17:34,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:17:34,567.567 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 00:17:37,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:17:37,645.645 INFO    ] Checking for system updates...
[2026-06-05 00:17:37,685.685 INFO    ] 200
[2026-06-05 00:17:37,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:37,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:17:37,743.743 INFO    ] No update needed
[2026-06-05 00:17:37,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 00:17:37,783.783 INFO    ] 200
[2026-06-05 00:17:37,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:37,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:17:37,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:17:37,879.879 INFO    ] No camera update needed
[2026-06-05 00:17:37,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:17:37,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:17:37,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:17:37,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:17:39,935.935 INFO    ] ================================================
[2026-06-05 00:17:39,950.950 INFO    ] Launching Daemon at Fri Jun  5 00:17:39 IST 2026
[2026-06-05 00:17:39,961.961 INFO    ] ================================================
[2026-06-05 00:17:40,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:17:40
[2026-06-05 00:17:41,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:17:41,408.408 INFO    ] Initializing speech engine...
[2026-06-05 00:17:41,419.419 INFO    ] 2026-06-05 00:17:41
[2026-06-05 00:17:41,683.683 INFO    ] 2026-06-05 00:17:41
[2026-06-05 00:17:41,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:17:41,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:17:41,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:17:42,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:17:42,131.131 INFO    ] time= 05/06/2026 00:17:42
[2026-06-05 00:17:42,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:17:42,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:17:42,281.281 INFO    ] No existing commands found in stream
[2026-06-05 00:17:47,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:17:47,296.296 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 00:17:51,175.175 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:17:51,178.178 INFO    ] Checking for system updates...
[2026-06-05 00:17:51,218.218 INFO    ] 200
[2026-06-05 00:17:51,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:51,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:17:51,277.277 INFO    ] No update needed
[2026-06-05 00:17:51,280.280 INFO    ] Checking for camera pi updates...
[2026-06-05 00:17:51,317.317 INFO    ] 200
[2026-06-05 00:17:51,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:17:51,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:17:51,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:17:51,417.417 INFO    ] No camera update needed
[2026-06-05 00:17:51,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:17:51,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:17:51,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:17:51,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:17:53,474.474 INFO    ] ================================================
[2026-06-05 00:17:53,489.489 INFO    ] Launching Daemon at Fri Jun  5 00:17:53 IST 2026
[2026-06-05 00:17:53,499.499 INFO    ] ================================================
[2026-06-05 00:17:54,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:17:54
[2026-06-05 00:17:54,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:17:55,057.057 INFO    ] Initializing speech engine...
[2026-06-05 00:17:55,071.071 INFO    ] 2026-06-05 00:17:55
[2026-06-05 00:17:55,349.349 INFO    ] 2026-06-05 00:17:55
[2026-06-05 00:17:55,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:17:55,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:17:55,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:17:55,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:17:55,821.821 INFO    ] time= 05/06/2026 00:17:55
[2026-06-05 00:17:55,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:17:55,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:17:55,968.968 INFO    ] No existing commands found in stream
[2026-06-05 00:18:01,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:18:01,009.009 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 00:18:04,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:18:04,544.544 INFO    ] Checking for system updates...
[2026-06-05 00:18:04,581.581 INFO    ] 200
[2026-06-05 00:18:04,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:04,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:18:04,639.639 INFO    ] No update needed
[2026-06-05 00:18:04,641.641 INFO    ] Checking for camera pi updates...
[2026-06-05 00:18:04,678.678 INFO    ] 200
[2026-06-05 00:18:04,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:04,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:18:04,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:18:04,761.761 INFO    ] No camera update needed
[2026-06-05 00:18:04,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:18:04,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:18:04,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:18:04,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:18:06,816.816 INFO    ] ================================================
[2026-06-05 00:18:06,832.832 INFO    ] Launching Daemon at Fri Jun  5 00:18:06 IST 2026
[2026-06-05 00:18:06,844.844 INFO    ] ================================================
[2026-06-05 00:18:07,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:18:07
[2026-06-05 00:18:08,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:18:08,439.439 INFO    ] Initializing speech engine...
[2026-06-05 00:18:08,445.445 INFO    ] 2026-06-05 00:18:08
[2026-06-05 00:18:08,755.755 INFO    ] 2026-06-05 00:18:08
[2026-06-05 00:18:08,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:18:08,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:18:08,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:18:09,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:18:09,146.146 INFO    ] time= 05/06/2026 00:18:09
[2026-06-05 00:18:09,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:18:09,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:18:09,227.227 INFO    ] No existing commands found in stream
[2026-06-05 00:18:14,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:18:14,261.261 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 00:18:17,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:18:17,287.287 INFO    ] Checking for system updates...
[2026-06-05 00:18:17,324.324 INFO    ] 200
[2026-06-05 00:18:17,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:17,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:18:17,389.389 INFO    ] No update needed
[2026-06-05 00:18:17,391.391 INFO    ] Checking for camera pi updates...
[2026-06-05 00:18:17,430.430 INFO    ] 200
[2026-06-05 00:18:17,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:17,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:18:17,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:18:17,521.521 INFO    ] No camera update needed
[2026-06-05 00:18:17,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:18:17,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:18:17,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:18:17,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:18:19,578.578 INFO    ] ================================================
[2026-06-05 00:18:19,593.593 INFO    ] Launching Daemon at Fri Jun  5 00:18:19 IST 2026
[2026-06-05 00:18:19,604.604 INFO    ] ================================================
[2026-06-05 00:18:20,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:18:20
[2026-06-05 00:18:20,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:18:21,037.037 INFO    ] Initializing speech engine...
[2026-06-05 00:18:21,049.049 INFO    ] 2026-06-05 00:18:21
[2026-06-05 00:18:21,318.318 INFO    ] 2026-06-05 00:18:21
[2026-06-05 00:18:21,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:18:21,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:18:21,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:18:21,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:18:21,783.783 INFO    ] time= 05/06/2026 00:18:21
[2026-06-05 00:18:21,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:18:21,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:18:21,936.936 INFO    ] No existing commands found in stream
[2026-06-05 00:18:26,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:18:26,951.951 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 00:18:28,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:18:28,207.207 INFO    ] Checking for system updates...
[2026-06-05 00:18:28,243.243 INFO    ] 200
[2026-06-05 00:18:28,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:28,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:18:28,304.304 INFO    ] No update needed
[2026-06-05 00:18:28,307.307 INFO    ] Checking for camera pi updates...
[2026-06-05 00:18:28,342.342 INFO    ] 200
[2026-06-05 00:18:28,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:28,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:18:28,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:18:28,542.542 INFO    ] No camera update needed
[2026-06-05 00:18:28,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:18:28,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:18:28,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:18:28,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:18:30,601.601 INFO    ] ================================================
[2026-06-05 00:18:30,616.616 INFO    ] Launching Daemon at Fri Jun  5 00:18:30 IST 2026
[2026-06-05 00:18:30,627.627 INFO    ] ================================================
[2026-06-05 00:18:31,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:18:31
[2026-06-05 00:18:31,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:18:32,172.172 INFO    ] Initializing speech engine...
[2026-06-05 00:18:32,181.181 INFO    ] 2026-06-05 00:18:32
[2026-06-05 00:18:32,522.522 INFO    ] 2026-06-05 00:18:32
[2026-06-05 00:18:32,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:18:32,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:18:32,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:18:32,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:18:33,047.047 INFO    ] time= 05/06/2026 00:18:32
[2026-06-05 00:18:33,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:18:33,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:18:33,196.196 INFO    ] No existing commands found in stream
[2026-06-05 00:18:38,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:18:38,225.225 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 00:18:41,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:18:41,825.825 INFO    ] Checking for system updates...
[2026-06-05 00:18:41,861.861 INFO    ] 200
[2026-06-05 00:18:41,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:41,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:18:41,929.929 INFO    ] No update needed
[2026-06-05 00:18:41,931.931 INFO    ] Checking for camera pi updates...
[2026-06-05 00:18:41,965.965 INFO    ] 200
[2026-06-05 00:18:41,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:42,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:18:42,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:18:42,064.064 INFO    ] No camera update needed
[2026-06-05 00:18:42,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:18:42,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:18:42,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:18:42,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:18:44,123.123 INFO    ] ================================================
[2026-06-05 00:18:44,138.138 INFO    ] Launching Daemon at Fri Jun  5 00:18:44 IST 2026
[2026-06-05 00:18:44,149.149 INFO    ] ================================================
[2026-06-05 00:18:44,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:18:44
[2026-06-05 00:18:45,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:18:45,578.578 INFO    ] Initializing speech engine...
[2026-06-05 00:18:45,587.587 INFO    ] 2026-06-05 00:18:45
[2026-06-05 00:18:45,834.834 INFO    ] 2026-06-05 00:18:45
[2026-06-05 00:18:45,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:18:46,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:18:46,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:18:46,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:18:46,306.306 INFO    ] time= 05/06/2026 00:18:46
[2026-06-05 00:18:46,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:18:46,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:18:46,539.539 INFO    ] No existing commands found in stream
[2026-06-05 00:18:51,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:18:51,572.572 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 00:18:55,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:18:55,022.022 INFO    ] Checking for system updates...
[2026-06-05 00:18:55,060.060 INFO    ] 200
[2026-06-05 00:18:55,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:55,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:18:55,120.120 INFO    ] No update needed
[2026-06-05 00:18:55,122.122 INFO    ] Checking for camera pi updates...
[2026-06-05 00:18:55,161.161 INFO    ] 200
[2026-06-05 00:18:55,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:18:55,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:18:55,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:18:55,263.263 INFO    ] No camera update needed
[2026-06-05 00:18:55,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:18:55,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:18:55,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:18:55,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:18:57,320.320 INFO    ] ================================================
[2026-06-05 00:18:57,336.336 INFO    ] Launching Daemon at Fri Jun  5 00:18:57 IST 2026
[2026-06-05 00:18:57,347.347 INFO    ] ================================================
[2026-06-05 00:18:57,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:18:57
[2026-06-05 00:18:58,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:18:58,793.793 INFO    ] Initializing speech engine...
[2026-06-05 00:18:58,816.816 INFO    ] 2026-06-05 00:18:58
[2026-06-05 00:18:59,077.077 INFO    ] 2026-06-05 00:18:59
[2026-06-05 00:18:59,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:18:59,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:18:59,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:18:59,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:18:59,439.439 INFO    ] time= 05/06/2026 00:18:59
[2026-06-05 00:18:59,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:18:59,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:18:59,559.559 INFO    ] No existing commands found in stream
[2026-06-05 00:19:04,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:19:04,582.582 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 00:19:05,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:19:05,214.214 INFO    ] Checking for system updates...
[2026-06-05 00:19:05,251.251 INFO    ] 200
[2026-06-05 00:19:05,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:05,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:19:05,312.312 INFO    ] No update needed
[2026-06-05 00:19:05,315.315 INFO    ] Checking for camera pi updates...
[2026-06-05 00:19:05,349.349 INFO    ] 200
[2026-06-05 00:19:05,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:05,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:19:05,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:19:05,426.426 INFO    ] No camera update needed
[2026-06-05 00:19:05,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:19:05,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:19:05,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:19:05,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:19:07,484.484 INFO    ] ================================================
[2026-06-05 00:19:07,499.499 INFO    ] Launching Daemon at Fri Jun  5 00:19:07 IST 2026
[2026-06-05 00:19:07,510.510 INFO    ] ================================================
[2026-06-05 00:19:08,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:19:08
[2026-06-05 00:19:08,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:19:09,148.148 INFO    ] Initializing speech engine...
[2026-06-05 00:19:09,159.159 INFO    ] 2026-06-05 00:19:09
[2026-06-05 00:19:09,424.424 INFO    ] 2026-06-05 00:19:09
[2026-06-05 00:19:09,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:19:09,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:19:09,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:19:09,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:19:09,879.879 INFO    ] time= 05/06/2026 00:19:09
[2026-06-05 00:19:09,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:19:09,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:19:10,020.020 INFO    ] No existing commands found in stream
[2026-06-05 00:19:15,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:19:15,035.035 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 00:19:17,203.203 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:19:17,206.206 INFO    ] Checking for system updates...
[2026-06-05 00:19:17,246.246 INFO    ] 200
[2026-06-05 00:19:17,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:17,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:19:17,310.310 INFO    ] No update needed
[2026-06-05 00:19:17,313.313 INFO    ] Checking for camera pi updates...
[2026-06-05 00:19:17,350.350 INFO    ] 200
[2026-06-05 00:19:17,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:17,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:19:17,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:19:17,446.446 INFO    ] No camera update needed
[2026-06-05 00:19:17,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:19:17,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:19:17,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:19:17,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:19:19,502.502 INFO    ] ================================================
[2026-06-05 00:19:19,519.519 INFO    ] Launching Daemon at Fri Jun  5 00:19:19 IST 2026
[2026-06-05 00:19:19,530.530 INFO    ] ================================================
[2026-06-05 00:19:20,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:19:20
[2026-06-05 00:19:20,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:19:20,978.978 INFO    ] Initializing speech engine...
[2026-06-05 00:19:20,987.987 INFO    ] 2026-06-05 00:19:20
[2026-06-05 00:19:21,282.282 INFO    ] 2026-06-05 00:19:21
[2026-06-05 00:19:21,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:19:21,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:19:21,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:19:21,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:19:21,663.663 INFO    ] time= 05/06/2026 00:19:21
[2026-06-05 00:19:21,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:19:21,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:19:21,788.788 INFO    ] No existing commands found in stream
[2026-06-05 00:19:26,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:19:26,803.803 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 00:19:31,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:19:31,052.052 INFO    ] Checking for system updates...
[2026-06-05 00:19:31,092.092 INFO    ] 200
[2026-06-05 00:19:31,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:31,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:19:31,151.151 INFO    ] No update needed
[2026-06-05 00:19:31,156.156 INFO    ] Checking for camera pi updates...
[2026-06-05 00:19:31,196.196 INFO    ] 200
[2026-06-05 00:19:31,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:31,240.240 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:19:31,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:19:31,300.300 INFO    ] No camera update needed
[2026-06-05 00:19:31,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:19:31,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:19:31,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:19:31,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:19:33,358.358 INFO    ] ================================================
[2026-06-05 00:19:33,374.374 INFO    ] Launching Daemon at Fri Jun  5 00:19:33 IST 2026
[2026-06-05 00:19:33,384.384 INFO    ] ================================================
[2026-06-05 00:19:33,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:19:33
[2026-06-05 00:19:34,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:19:34,788.788 INFO    ] Initializing speech engine...
[2026-06-05 00:19:34,811.811 INFO    ] 2026-06-05 00:19:34
[2026-06-05 00:19:35,070.070 INFO    ] 2026-06-05 00:19:35
[2026-06-05 00:19:35,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:19:35,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:19:35,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:19:35,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:19:35,567.567 INFO    ] time= 05/06/2026 00:19:35
[2026-06-05 00:19:35,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:19:35,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:19:35,688.688 INFO    ] No existing commands found in stream
[2026-06-05 00:19:40,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:19:40,702.702 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 00:19:44,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:19:44,234.234 INFO    ] Checking for system updates...
[2026-06-05 00:19:44,271.271 INFO    ] 200
[2026-06-05 00:19:44,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:44,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:19:44,329.329 INFO    ] No update needed
[2026-06-05 00:19:44,331.331 INFO    ] Checking for camera pi updates...
[2026-06-05 00:19:44,364.364 INFO    ] 200
[2026-06-05 00:19:44,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:44,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:19:44,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:19:44,463.463 INFO    ] No camera update needed
[2026-06-05 00:19:44,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:19:44,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:19:44,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:19:44,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:19:46,521.521 INFO    ] ================================================
[2026-06-05 00:19:46,537.537 INFO    ] Launching Daemon at Fri Jun  5 00:19:46 IST 2026
[2026-06-05 00:19:46,549.549 INFO    ] ================================================
[2026-06-05 00:19:47,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:19:47
[2026-06-05 00:19:47,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:19:47,998.998 INFO    ] Initializing speech engine...
[2026-06-05 00:19:48,007.007 INFO    ] 2026-06-05 00:19:48
[2026-06-05 00:19:48,266.266 INFO    ] 2026-06-05 00:19:48
[2026-06-05 00:19:48,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:19:48,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:19:48,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:19:48,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:19:48,707.707 INFO    ] time= 05/06/2026 00:19:48
[2026-06-05 00:19:48,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:19:48,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:19:48,876.876 INFO    ] No existing commands found in stream
[2026-06-05 00:19:53,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:19:53,892.892 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 00:19:55,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:19:55,344.344 INFO    ] Checking for system updates...
[2026-06-05 00:19:55,384.384 INFO    ] 200
[2026-06-05 00:19:55,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:55,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:19:55,449.449 INFO    ] No update needed
[2026-06-05 00:19:55,452.452 INFO    ] Checking for camera pi updates...
[2026-06-05 00:19:55,486.486 INFO    ] 200
[2026-06-05 00:19:55,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:19:55,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:19:55,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:19:55,587.587 INFO    ] No camera update needed
[2026-06-05 00:19:55,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:19:55,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:19:55,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:19:55,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:19:57,644.644 INFO    ] ================================================
[2026-06-05 00:19:57,659.659 INFO    ] Launching Daemon at Fri Jun  5 00:19:57 IST 2026
[2026-06-05 00:19:57,671.671 INFO    ] ================================================
[2026-06-05 00:19:58,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:19:58
[2026-06-05 00:19:58,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:19:59,135.135 INFO    ] Initializing speech engine...
[2026-06-05 00:19:59,144.144 INFO    ] 2026-06-05 00:19:59
[2026-06-05 00:19:59,395.395 INFO    ] 2026-06-05 00:19:59
[2026-06-05 00:19:59,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:19:59,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:19:59,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:19:59,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:19:59,870.870 INFO    ] time= 05/06/2026 00:19:59
[2026-06-05 00:19:59,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:19:59,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:20:00,058.058 INFO    ] No existing commands found in stream
[2026-06-05 00:20:05,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:20:05,087.087 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 00:20:08,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:20:08,298.298 INFO    ] Checking for system updates...
[2026-06-05 00:20:08,334.334 INFO    ] 200
[2026-06-05 00:20:08,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:08,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:20:08,393.393 INFO    ] No update needed
[2026-06-05 00:20:08,396.396 INFO    ] Checking for camera pi updates...
[2026-06-05 00:20:08,430.430 INFO    ] 200
[2026-06-05 00:20:08,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:08,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:20:08,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:20:08,507.507 INFO    ] No camera update needed
[2026-06-05 00:20:08,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:20:08,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:20:08,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:20:08,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:20:10,563.563 INFO    ] ================================================
[2026-06-05 00:20:10,578.578 INFO    ] Launching Daemon at Fri Jun  5 00:20:10 IST 2026
[2026-06-05 00:20:10,589.589 INFO    ] ================================================
[2026-06-05 00:20:11,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:20:11
[2026-06-05 00:20:11,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:20:12,014.014 INFO    ] Initializing speech engine...
[2026-06-05 00:20:12,029.029 INFO    ] 2026-06-05 00:20:12
[2026-06-05 00:20:12,285.285 INFO    ] 2026-06-05 00:20:12
[2026-06-05 00:20:12,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:20:12,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:20:12,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:20:12,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:20:12,664.664 INFO    ] time= 05/06/2026 00:20:12
[2026-06-05 00:20:12,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:20:12,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:20:12,856.856 INFO    ] No existing commands found in stream
[2026-06-05 00:20:17,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:20:17,879.879 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 00:20:21,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:20:21,829.829 INFO    ] Checking for system updates...
[2026-06-05 00:20:21,869.869 INFO    ] 200
[2026-06-05 00:20:21,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:21,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:20:21,927.927 INFO    ] No update needed
[2026-06-05 00:20:21,930.930 INFO    ] Checking for camera pi updates...
[2026-06-05 00:20:21,968.968 INFO    ] 200
[2026-06-05 00:20:21,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:22,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:20:22,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:20:22,069.069 INFO    ] No camera update needed
[2026-06-05 00:20:22,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:20:22,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:20:22,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:20:22,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:20:24,123.123 INFO    ] ================================================
[2026-06-05 00:20:24,139.139 INFO    ] Launching Daemon at Fri Jun  5 00:20:24 IST 2026
[2026-06-05 00:20:24,150.150 INFO    ] ================================================
[2026-06-05 00:20:24,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:20:24
[2026-06-05 00:20:25,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:20:25,597.597 INFO    ] Initializing speech engine...
[2026-06-05 00:20:25,609.609 INFO    ] 2026-06-05 00:20:25
[2026-06-05 00:20:25,875.875 INFO    ] 2026-06-05 00:20:25
[2026-06-05 00:20:25,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:20:26,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:20:26,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:20:26,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:20:26,218.218 INFO    ] time= 05/06/2026 00:20:26
[2026-06-05 00:20:26,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:20:26,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:20:26,329.329 INFO    ] No existing commands found in stream
[2026-06-05 00:20:31,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:20:31,344.344 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 00:20:33,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:20:33,088.088 INFO    ] Checking for system updates...
[2026-06-05 00:20:33,124.124 INFO    ] 200
[2026-06-05 00:20:33,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:33,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:20:33,188.188 INFO    ] No update needed
[2026-06-05 00:20:33,190.190 INFO    ] Checking for camera pi updates...
[2026-06-05 00:20:33,224.224 INFO    ] 200
[2026-06-05 00:20:33,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:33,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:20:33,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:20:33,307.307 INFO    ] No camera update needed
[2026-06-05 00:20:33,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:20:33,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:20:33,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:20:33,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:20:35,363.363 INFO    ] ================================================
[2026-06-05 00:20:35,379.379 INFO    ] Launching Daemon at Fri Jun  5 00:20:35 IST 2026
[2026-06-05 00:20:35,389.389 INFO    ] ================================================
[2026-06-05 00:20:36,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:20:36
[2026-06-05 00:20:36,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:20:37,030.030 INFO    ] Initializing speech engine...
[2026-06-05 00:20:37,042.042 INFO    ] 2026-06-05 00:20:37
[2026-06-05 00:20:37,325.325 INFO    ] 2026-06-05 00:20:37
[2026-06-05 00:20:37,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:20:37,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:20:37,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:20:37,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:20:37,791.791 INFO    ] time= 05/06/2026 00:20:37
[2026-06-05 00:20:37,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:20:37,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:20:38,003.003 INFO    ] No existing commands found in stream
[2026-06-05 00:20:43,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:20:43,031.031 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 00:20:44,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:20:44,244.244 INFO    ] Checking for system updates...
[2026-06-05 00:20:44,286.286 INFO    ] 200
[2026-06-05 00:20:44,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:44,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:20:44,344.344 INFO    ] No update needed
[2026-06-05 00:20:44,347.347 INFO    ] Checking for camera pi updates...
[2026-06-05 00:20:44,386.386 INFO    ] 200
[2026-06-05 00:20:44,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:44,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:20:44,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:20:44,493.493 INFO    ] No camera update needed
[2026-06-05 00:20:44,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:20:44,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:20:44,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:20:44,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:20:46,548.548 INFO    ] ================================================
[2026-06-05 00:20:46,563.563 INFO    ] Launching Daemon at Fri Jun  5 00:20:46 IST 2026
[2026-06-05 00:20:46,574.574 INFO    ] ================================================
[2026-06-05 00:20:47,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:20:47
[2026-06-05 00:20:47,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:20:48,011.011 INFO    ] Initializing speech engine...
[2026-06-05 00:20:48,021.021 INFO    ] 2026-06-05 00:20:48
[2026-06-05 00:20:48,271.271 INFO    ] 2026-06-05 00:20:48
[2026-06-05 00:20:48,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:20:48,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:20:48,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:20:48,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:20:48,732.732 INFO    ] time= 05/06/2026 00:20:48
[2026-06-05 00:20:48,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:20:48,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:20:48,923.923 INFO    ] No existing commands found in stream
[2026-06-05 00:20:53,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:20:53,964.964 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 00:20:55,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:20:55,911.911 INFO    ] Checking for system updates...
[2026-06-05 00:20:55,951.951 INFO    ] 200
[2026-06-05 00:20:55,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:56,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:20:56,021.021 INFO    ] No update needed
[2026-06-05 00:20:56,023.023 INFO    ] Checking for camera pi updates...
[2026-06-05 00:20:56,061.061 INFO    ] 200
[2026-06-05 00:20:56,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:20:56,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:20:56,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:20:56,158.158 INFO    ] No camera update needed
[2026-06-05 00:20:56,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:20:56,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:20:56,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:20:56,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:20:58,215.215 INFO    ] ================================================
[2026-06-05 00:20:58,230.230 INFO    ] Launching Daemon at Fri Jun  5 00:20:58 IST 2026
[2026-06-05 00:20:58,241.241 INFO    ] ================================================
[2026-06-05 00:20:58,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:20:58
[2026-06-05 00:20:59,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:20:59,849.849 INFO    ] Initializing speech engine...
[2026-06-05 00:20:59,854.854 INFO    ] 2026-06-05 00:20:59
[2026-06-05 00:21:00,126.126 INFO    ] 2026-06-05 00:21:00
[2026-06-05 00:21:00,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:21:00,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:21:00,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:21:00,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:21:00,577.577 INFO    ] time= 05/06/2026 00:21:00
[2026-06-05 00:21:00,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:21:00,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:21:00,714.714 INFO    ] No existing commands found in stream
[2026-06-05 00:21:05,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:21:05,729.729 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 00:21:09,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:21:09,083.083 INFO    ] Checking for system updates...
[2026-06-05 00:21:09,124.124 INFO    ] 200
[2026-06-05 00:21:09,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:09,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:21:09,183.183 INFO    ] No update needed
[2026-06-05 00:21:09,189.189 INFO    ] Checking for camera pi updates...
[2026-06-05 00:21:09,223.223 INFO    ] 200
[2026-06-05 00:21:09,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:09,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:21:09,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:21:09,317.317 INFO    ] No camera update needed
[2026-06-05 00:21:09,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:21:09,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:21:09,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:21:09,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:21:11,374.374 INFO    ] ================================================
[2026-06-05 00:21:11,389.389 INFO    ] Launching Daemon at Fri Jun  5 00:21:11 IST 2026
[2026-06-05 00:21:11,400.400 INFO    ] ================================================
[2026-06-05 00:21:11,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:21:11
[2026-06-05 00:21:12,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:21:12,870.870 INFO    ] Initializing speech engine...
[2026-06-05 00:21:12,876.876 INFO    ] 2026-06-05 00:21:12
[2026-06-05 00:21:13,123.123 INFO    ] 2026-06-05 00:21:13
[2026-06-05 00:21:13,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:21:13,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:21:13,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:21:13,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:21:13,601.601 INFO    ] time= 05/06/2026 00:21:13
[2026-06-05 00:21:13,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:21:13,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:21:13,745.745 INFO    ] No existing commands found in stream
[2026-06-05 00:21:18,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:21:18,759.759 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 00:21:22,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:21:22,340.340 INFO    ] Checking for system updates...
[2026-06-05 00:21:22,377.377 INFO    ] 200
[2026-06-05 00:21:22,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:22,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:21:22,434.434 INFO    ] No update needed
[2026-06-05 00:21:22,437.437 INFO    ] Checking for camera pi updates...
[2026-06-05 00:21:22,472.472 INFO    ] 200
[2026-06-05 00:21:22,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:22,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:21:22,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:21:22,566.566 INFO    ] No camera update needed
[2026-06-05 00:21:22,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:21:22,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:21:22,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:21:22,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:21:24,624.624 INFO    ] ================================================
[2026-06-05 00:21:24,643.643 INFO    ] Launching Daemon at Fri Jun  5 00:21:24 IST 2026
[2026-06-05 00:21:24,653.653 INFO    ] ================================================
[2026-06-05 00:21:25,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:21:25
[2026-06-05 00:21:25,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:21:26,059.059 INFO    ] Initializing speech engine...
[2026-06-05 00:21:26,082.082 INFO    ] 2026-06-05 00:21:26
[2026-06-05 00:21:26,334.334 INFO    ] 2026-06-05 00:21:26
[2026-06-05 00:21:26,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:21:26,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:21:26,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:21:26,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:21:26,784.784 INFO    ] time= 05/06/2026 00:21:26
[2026-06-05 00:21:26,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:21:26,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:21:26,954.954 INFO    ] No existing commands found in stream
[2026-06-05 00:21:31,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:21:31,970.970 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 00:21:34,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:21:34,288.288 INFO    ] Checking for system updates...
[2026-06-05 00:21:34,325.325 INFO    ] 200
[2026-06-05 00:21:34,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:34,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:21:34,396.396 INFO    ] No update needed
[2026-06-05 00:21:34,399.399 INFO    ] Checking for camera pi updates...
[2026-06-05 00:21:34,432.432 INFO    ] 200
[2026-06-05 00:21:34,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:34,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:21:34,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:21:34,538.538 INFO    ] No camera update needed
[2026-06-05 00:21:34,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:21:34,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:21:34,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:21:34,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:21:36,595.595 INFO    ] ================================================
[2026-06-05 00:21:36,611.611 INFO    ] Launching Daemon at Fri Jun  5 00:21:36 IST 2026
[2026-06-05 00:21:36,621.621 INFO    ] ================================================
[2026-06-05 00:21:37,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:21:37
[2026-06-05 00:21:37,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:21:38,033.033 INFO    ] Initializing speech engine...
[2026-06-05 00:21:38,042.042 INFO    ] 2026-06-05 00:21:38
[2026-06-05 00:21:38,343.343 INFO    ] 2026-06-05 00:21:38
[2026-06-05 00:21:38,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:21:38,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:21:38,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:21:38,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:21:38,734.734 INFO    ] time= 05/06/2026 00:21:38
[2026-06-05 00:21:38,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:21:38,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:21:38,862.862 INFO    ] No existing commands found in stream
[2026-06-05 00:21:43,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:21:43,875.875 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 00:21:45,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:21:45,332.332 INFO    ] Checking for system updates...
[2026-06-05 00:21:45,367.367 INFO    ] 200
[2026-06-05 00:21:45,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:45,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:21:45,434.434 INFO    ] No update needed
[2026-06-05 00:21:45,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 00:21:45,470.470 INFO    ] 200
[2026-06-05 00:21:45,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:45,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:21:45,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:21:45,569.569 INFO    ] No camera update needed
[2026-06-05 00:21:45,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:21:45,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:21:45,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:21:45,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:21:47,625.625 INFO    ] ================================================
[2026-06-05 00:21:47,641.641 INFO    ] Launching Daemon at Fri Jun  5 00:21:47 IST 2026
[2026-06-05 00:21:47,651.651 INFO    ] ================================================
[2026-06-05 00:21:48,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:21:48
[2026-06-05 00:21:48,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:21:49,119.119 INFO    ] Initializing speech engine...
[2026-06-05 00:21:49,124.124 INFO    ] 2026-06-05 00:21:49
[2026-06-05 00:21:49,379.379 INFO    ] 2026-06-05 00:21:49
[2026-06-05 00:21:49,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:21:49,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:21:49,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:21:49,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:21:49,833.833 INFO    ] time= 05/06/2026 00:21:49
[2026-06-05 00:21:49,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:21:49,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:21:50,042.042 INFO    ] No existing commands found in stream
[2026-06-05 00:21:55,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:21:55,057.057 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 00:21:55,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:21:55,900.900 INFO    ] Checking for system updates...
[2026-06-05 00:21:55,938.938 INFO    ] 200
[2026-06-05 00:21:55,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:56,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:21:56,002.002 INFO    ] No update needed
[2026-06-05 00:21:56,005.005 INFO    ] Checking for camera pi updates...
[2026-06-05 00:21:56,044.044 INFO    ] 200
[2026-06-05 00:21:56,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:21:56,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:21:56,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:21:56,145.145 INFO    ] No camera update needed
[2026-06-05 00:21:56,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:21:56,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:21:56,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:21:56,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:21:58,203.203 INFO    ] ================================================
[2026-06-05 00:21:58,219.219 INFO    ] Launching Daemon at Fri Jun  5 00:21:58 IST 2026
[2026-06-05 00:21:58,230.230 INFO    ] ================================================
[2026-06-05 00:21:58,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:21:58
[2026-06-05 00:21:59,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:21:59,713.713 INFO    ] Initializing speech engine...
[2026-06-05 00:21:59,726.726 INFO    ] 2026-06-05 00:21:59
[2026-06-05 00:22:00,021.021 INFO    ] 2026-06-05 00:21:59
[2026-06-05 00:22:00,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:22:00,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:22:00,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:22:00,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:22:00,413.413 INFO    ] time= 05/06/2026 00:22:00
[2026-06-05 00:22:00,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:22:00,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:22:00,541.541 INFO    ] No existing commands found in stream
[2026-06-05 00:22:05,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:22:05,554.554 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 00:22:07,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:22:07,795.795 INFO    ] Checking for system updates...
[2026-06-05 00:22:07,832.832 INFO    ] 200
[2026-06-05 00:22:07,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:07,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:22:07,899.899 INFO    ] No update needed
[2026-06-05 00:22:07,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 00:22:07,940.940 INFO    ] 200
[2026-06-05 00:22:07,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:07,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:22:08,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:22:08,032.032 INFO    ] No camera update needed
[2026-06-05 00:22:08,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:22:08,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:22:08,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:22:08,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:22:10,091.091 INFO    ] ================================================
[2026-06-05 00:22:10,106.106 INFO    ] Launching Daemon at Fri Jun  5 00:22:10 IST 2026
[2026-06-05 00:22:10,117.117 INFO    ] ================================================
[2026-06-05 00:22:10,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:22:10
[2026-06-05 00:22:11,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:22:11,538.538 INFO    ] Initializing speech engine...
[2026-06-05 00:22:11,545.545 INFO    ] 2026-06-05 00:22:11
[2026-06-05 00:22:11,843.843 INFO    ] 2026-06-05 00:22:11
[2026-06-05 00:22:11,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:22:12,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:22:12,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:22:12,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:22:12,197.197 INFO    ] time= 05/06/2026 00:22:12
[2026-06-05 00:22:12,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:22:12,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:22:12,279.279 INFO    ] No existing commands found in stream
[2026-06-05 00:22:17,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:22:17,292.292 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 00:22:19,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:22:19,579.579 INFO    ] Checking for system updates...
[2026-06-05 00:22:19,616.616 INFO    ] 200
[2026-06-05 00:22:19,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:19,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:22:19,676.676 INFO    ] No update needed
[2026-06-05 00:22:19,679.679 INFO    ] Checking for camera pi updates...
[2026-06-05 00:22:19,715.715 INFO    ] 200
[2026-06-05 00:22:19,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:19,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:22:19,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:22:19,811.811 INFO    ] No camera update needed
[2026-06-05 00:22:19,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:22:19,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:22:19,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:22:19,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:22:21,872.872 INFO    ] ================================================
[2026-06-05 00:22:21,887.887 INFO    ] Launching Daemon at Fri Jun  5 00:22:21 IST 2026
[2026-06-05 00:22:21,898.898 INFO    ] ================================================
[2026-06-05 00:22:22,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:22:22
[2026-06-05 00:22:23,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:22:23,383.383 INFO    ] Initializing speech engine...
[2026-06-05 00:22:23,391.391 INFO    ] 2026-06-05 00:22:23
[2026-06-05 00:22:23,659.659 INFO    ] 2026-06-05 00:22:23
[2026-06-05 00:22:23,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:22:23,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:22:23,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:22:24,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:22:24,077.077 INFO    ] time= 05/06/2026 00:22:24
[2026-06-05 00:22:24,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:22:24,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:22:24,170.170 INFO    ] No existing commands found in stream
[2026-06-05 00:22:29,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:22:29,208.208 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 00:22:30,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:22:30,116.116 INFO    ] Checking for system updates...
[2026-06-05 00:22:30,156.156 INFO    ] 200
[2026-06-05 00:22:30,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:30,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:22:30,213.213 INFO    ] No update needed
[2026-06-05 00:22:30,219.219 INFO    ] Checking for camera pi updates...
[2026-06-05 00:22:30,254.254 INFO    ] 200
[2026-06-05 00:22:30,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:30,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:22:30,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:22:30,354.354 INFO    ] No camera update needed
[2026-06-05 00:22:30,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:22:30,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:22:30,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:22:30,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:22:32,411.411 INFO    ] ================================================
[2026-06-05 00:22:32,427.427 INFO    ] Launching Daemon at Fri Jun  5 00:22:32 IST 2026
[2026-06-05 00:22:32,439.439 INFO    ] ================================================
[2026-06-05 00:22:33,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:22:33
[2026-06-05 00:22:33,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:22:33,929.929 INFO    ] Initializing speech engine...
[2026-06-05 00:22:33,940.940 INFO    ] 2026-06-05 00:22:33
[2026-06-05 00:22:34,223.223 INFO    ] 2026-06-05 00:22:34
[2026-06-05 00:22:34,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:22:34,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:22:34,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:22:34,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:22:34,587.587 INFO    ] time= 05/06/2026 00:22:34
[2026-06-05 00:22:34,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:22:34,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:22:34,674.674 INFO    ] No existing commands found in stream
[2026-06-05 00:22:39,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:22:39,709.709 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 00:22:42,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:22:42,529.529 INFO    ] Checking for system updates...
[2026-06-05 00:22:42,564.564 INFO    ] 200
[2026-06-05 00:22:42,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:42,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:22:42,622.622 INFO    ] No update needed
[2026-06-05 00:22:42,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 00:22:42,662.662 INFO    ] 200
[2026-06-05 00:22:42,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:42,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:22:42,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:22:42,878.878 INFO    ] No camera update needed
[2026-06-05 00:22:42,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:22:42,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:22:42,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:22:42,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:22:44,935.935 INFO    ] ================================================
[2026-06-05 00:22:44,958.958 INFO    ] Launching Daemon at Fri Jun  5 00:22:44 IST 2026
[2026-06-05 00:22:44,970.970 INFO    ] ================================================
[2026-06-05 00:22:45,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:22:45
[2026-06-05 00:22:46,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:22:46,369.369 INFO    ] Initializing speech engine...
[2026-06-05 00:22:46,383.383 INFO    ] 2026-06-05 00:22:46
[2026-06-05 00:22:46,645.645 INFO    ] 2026-06-05 00:22:46
[2026-06-05 00:22:46,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:22:46,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:22:46,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:22:47,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:22:47,014.014 INFO    ] time= 05/06/2026 00:22:47
[2026-06-05 00:22:47,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:22:47,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:22:47,195.195 INFO    ] No existing commands found in stream
[2026-06-05 00:22:52,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:22:52,223.223 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 00:22:53,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:22:53,588.588 INFO    ] Checking for system updates...
[2026-06-05 00:22:53,624.624 INFO    ] 200
[2026-06-05 00:22:53,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:53,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:22:53,683.683 INFO    ] No update needed
[2026-06-05 00:22:53,685.685 INFO    ] Checking for camera pi updates...
[2026-06-05 00:22:53,719.719 INFO    ] 200
[2026-06-05 00:22:53,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:22:53,763.763 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:22:53,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:22:53,816.816 INFO    ] No camera update needed
[2026-06-05 00:22:53,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:22:53,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:22:53,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:22:53,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:22:55,870.870 INFO    ] ================================================
[2026-06-05 00:22:55,886.886 INFO    ] Launching Daemon at Fri Jun  5 00:22:55 IST 2026
[2026-06-05 00:22:55,901.901 INFO    ] ================================================
[2026-06-05 00:22:56,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:22:56
[2026-06-05 00:22:57,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:22:57,314.314 INFO    ] Initializing speech engine...
[2026-06-05 00:22:57,334.334 INFO    ] 2026-06-05 00:22:57
[2026-06-05 00:22:57,584.584 INFO    ] 2026-06-05 00:22:57
[2026-06-05 00:22:57,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:22:57,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:22:57,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:22:58,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:22:58,058.058 INFO    ] time= 05/06/2026 00:22:58
[2026-06-05 00:22:58,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:22:58,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:22:58,203.203 INFO    ] No existing commands found in stream
[2026-06-05 00:23:03,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:23:03,218.218 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 00:23:05,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:23:05,505.505 INFO    ] Checking for system updates...
[2026-06-05 00:23:05,541.541 INFO    ] 200
[2026-06-05 00:23:05,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:05,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:23:05,599.599 INFO    ] No update needed
[2026-06-05 00:23:05,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 00:23:05,635.635 INFO    ] 200
[2026-06-05 00:23:05,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:05,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:23:05,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:23:05,729.729 INFO    ] No camera update needed
[2026-06-05 00:23:05,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:23:05,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:23:05,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:23:05,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:23:07,786.786 INFO    ] ================================================
[2026-06-05 00:23:07,801.801 INFO    ] Launching Daemon at Fri Jun  5 00:23:07 IST 2026
[2026-06-05 00:23:07,812.812 INFO    ] ================================================
[2026-06-05 00:23:08,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:23:08
[2026-06-05 00:23:09,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:23:09,459.459 INFO    ] Initializing speech engine...
[2026-06-05 00:23:09,472.472 INFO    ] 2026-06-05 00:23:09
[2026-06-05 00:23:09,760.760 INFO    ] 2026-06-05 00:23:09
[2026-06-05 00:23:09,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:23:10,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:23:10,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:23:10,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:23:10,209.209 INFO    ] time= 05/06/2026 00:23:10
[2026-06-05 00:23:10,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:23:10,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:23:10,363.363 INFO    ] No existing commands found in stream
[2026-06-05 00:23:15,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:23:15,382.382 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 00:23:17,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:23:17,050.050 INFO    ] Checking for system updates...
[2026-06-05 00:23:17,088.088 INFO    ] 200
[2026-06-05 00:23:17,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:17,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:23:17,155.155 INFO    ] No update needed
[2026-06-05 00:23:17,158.158 INFO    ] Checking for camera pi updates...
[2026-06-05 00:23:17,193.193 INFO    ] 200
[2026-06-05 00:23:17,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:17,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:23:17,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:23:17,292.292 INFO    ] No camera update needed
[2026-06-05 00:23:17,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:23:17,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:23:17,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:23:17,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:23:19,352.352 INFO    ] ================================================
[2026-06-05 00:23:19,368.368 INFO    ] Launching Daemon at Fri Jun  5 00:23:19 IST 2026
[2026-06-05 00:23:19,379.379 INFO    ] ================================================
[2026-06-05 00:23:19,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:23:19
[2026-06-05 00:23:20,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:23:20,823.823 INFO    ] Initializing speech engine...
[2026-06-05 00:23:20,832.832 INFO    ] 2026-06-05 00:23:20
[2026-06-05 00:23:21,085.085 INFO    ] 2026-06-05 00:23:21
[2026-06-05 00:23:21,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:23:21,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:23:21,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:23:21,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:23:21,584.584 INFO    ] time= 05/06/2026 00:23:21
[2026-06-05 00:23:21,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:23:21,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:23:21,773.773 INFO    ] No existing commands found in stream
[2026-06-05 00:23:26,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:23:26,799.799 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 00:23:27,721.721 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:23:27,724.724 INFO    ] Checking for system updates...
[2026-06-05 00:23:27,762.762 INFO    ] 200
[2026-06-05 00:23:27,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:27,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:23:27,822.822 INFO    ] No update needed
[2026-06-05 00:23:27,825.825 INFO    ] Checking for camera pi updates...
[2026-06-05 00:23:27,864.864 INFO    ] 200
[2026-06-05 00:23:27,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:27,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:23:27,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:23:27,967.967 INFO    ] No camera update needed
[2026-06-05 00:23:27,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:23:27,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:23:27,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:23:27,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:23:30,029.029 INFO    ] ================================================
[2026-06-05 00:23:30,045.045 INFO    ] Launching Daemon at Fri Jun  5 00:23:30 IST 2026
[2026-06-05 00:23:30,056.056 INFO    ] ================================================
[2026-06-05 00:23:30,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:23:30
[2026-06-05 00:23:31,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:23:31,507.507 INFO    ] Initializing speech engine...
[2026-06-05 00:23:31,531.531 INFO    ] 2026-06-05 00:23:31
[2026-06-05 00:23:31,824.824 INFO    ] 2026-06-05 00:23:31
[2026-06-05 00:23:31,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:23:32,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:23:32,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:23:32,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:23:32,160.160 INFO    ] time= 05/06/2026 00:23:32
[2026-06-05 00:23:32,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:23:32,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:23:32,301.301 INFO    ] No existing commands found in stream
[2026-06-05 00:23:37,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:23:37,315.315 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 00:23:38,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:23:38,205.205 INFO    ] Checking for system updates...
[2026-06-05 00:23:38,242.242 INFO    ] 200
[2026-06-05 00:23:38,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:38,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:23:38,302.302 INFO    ] No update needed
[2026-06-05 00:23:38,305.305 INFO    ] Checking for camera pi updates...
[2026-06-05 00:23:38,339.339 INFO    ] 200
[2026-06-05 00:23:38,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:38,383.383 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:23:38,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:23:38,438.438 INFO    ] No camera update needed
[2026-06-05 00:23:38,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:23:38,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:23:38,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:23:38,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:23:40,498.498 INFO    ] ================================================
[2026-06-05 00:23:40,513.513 INFO    ] Launching Daemon at Fri Jun  5 00:23:40 IST 2026
[2026-06-05 00:23:40,524.524 INFO    ] ================================================
[2026-06-05 00:23:41,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:23:41
[2026-06-05 00:23:41,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:23:42,125.125 INFO    ] Initializing speech engine...
[2026-06-05 00:23:42,132.132 INFO    ] 2026-06-05 00:23:42
[2026-06-05 00:23:42,403.403 INFO    ] 2026-06-05 00:23:42
[2026-06-05 00:23:42,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:23:42,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:23:42,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:23:42,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:23:42,876.876 INFO    ] time= 05/06/2026 00:23:42
[2026-06-05 00:23:42,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:23:42,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:23:43,036.036 INFO    ] No existing commands found in stream
[2026-06-05 00:23:48,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:23:48,052.052 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 00:23:50,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:23:50,085.085 INFO    ] Checking for system updates...
[2026-06-05 00:23:50,122.122 INFO    ] 200
[2026-06-05 00:23:50,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:50,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:23:50,181.181 INFO    ] No update needed
[2026-06-05 00:23:50,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 00:23:50,220.220 INFO    ] 200
[2026-06-05 00:23:50,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:23:50,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:23:50,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:23:50,328.328 INFO    ] No camera update needed
[2026-06-05 00:23:50,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:23:50,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:23:50,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:23:50,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:23:52,387.387 INFO    ] ================================================
[2026-06-05 00:23:52,403.403 INFO    ] Launching Daemon at Fri Jun  5 00:23:52 IST 2026
[2026-06-05 00:23:52,414.414 INFO    ] ================================================
[2026-06-05 00:23:52,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:23:52
[2026-06-05 00:23:53,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:23:53,826.826 INFO    ] Initializing speech engine...
[2026-06-05 00:23:53,841.841 INFO    ] 2026-06-05 00:23:53
[2026-06-05 00:23:54,108.108 INFO    ] 2026-06-05 00:23:54
[2026-06-05 00:23:54,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:23:54,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:23:54,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:23:54,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:23:54,588.588 INFO    ] time= 05/06/2026 00:23:54
[2026-06-05 00:23:54,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:23:54,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:23:54,745.745 INFO    ] No existing commands found in stream
[2026-06-05 00:23:59,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:23:59,772.772 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 00:24:02,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:24:02,348.348 INFO    ] Checking for system updates...
[2026-06-05 00:24:02,390.390 INFO    ] 200
[2026-06-05 00:24:02,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:02,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:02,461.461 INFO    ] No update needed
[2026-06-05 00:24:02,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 00:24:02,502.502 INFO    ] 200
[2026-06-05 00:24:02,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:02,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:24:02,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:02,599.599 INFO    ] No camera update needed
[2026-06-05 00:24:02,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:24:02,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:24:02,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:24:02,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:24:04,661.661 INFO    ] ================================================
[2026-06-05 00:24:04,677.677 INFO    ] Launching Daemon at Fri Jun  5 00:24:04 IST 2026
[2026-06-05 00:24:04,688.688 INFO    ] ================================================
[2026-06-05 00:24:05,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:24:05
[2026-06-05 00:24:05,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:24:06,266.266 INFO    ] Initializing speech engine...
[2026-06-05 00:24:06,278.278 INFO    ] 2026-06-05 00:24:06
[2026-06-05 00:24:06,554.554 INFO    ] 2026-06-05 00:24:06
[2026-06-05 00:24:06,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:24:06,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:24:06,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:24:06,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:24:07,048.048 INFO    ] time= 05/06/2026 00:24:06
[2026-06-05 00:24:07,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:24:07,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:24:07,189.189 INFO    ] No existing commands found in stream
[2026-06-05 00:24:12,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:24:12,205.205 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 00:24:14,090.090 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:24:14,093.093 INFO    ] Checking for system updates...
[2026-06-05 00:24:14,129.129 INFO    ] 200
[2026-06-05 00:24:14,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:14,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:14,188.188 INFO    ] No update needed
[2026-06-05 00:24:14,191.191 INFO    ] Checking for camera pi updates...
[2026-06-05 00:24:14,225.225 INFO    ] 200
[2026-06-05 00:24:14,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:14,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:24:14,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:14,326.326 INFO    ] No camera update needed
[2026-06-05 00:24:14,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:24:14,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:24:14,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:24:14,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:24:16,385.385 INFO    ] ================================================
[2026-06-05 00:24:16,400.400 INFO    ] Launching Daemon at Fri Jun  5 00:24:16 IST 2026
[2026-06-05 00:24:16,412.412 INFO    ] ================================================
[2026-06-05 00:24:16,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:24:16
[2026-06-05 00:24:17,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:24:17,857.857 INFO    ] Initializing speech engine...
[2026-06-05 00:24:17,865.865 INFO    ] 2026-06-05 00:24:17
[2026-06-05 00:24:18,158.158 INFO    ] 2026-06-05 00:24:18
[2026-06-05 00:24:18,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:24:18,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:24:18,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:24:18,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:24:18,568.568 INFO    ] time= 05/06/2026 00:24:18
[2026-06-05 00:24:18,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:24:18,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:24:18,732.732 INFO    ] No existing commands found in stream
[2026-06-05 00:24:23,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:24:23,761.761 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 00:24:26,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:24:26,310.310 INFO    ] Checking for system updates...
[2026-06-05 00:24:26,346.346 INFO    ] 200
[2026-06-05 00:24:26,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:26,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:26,410.410 INFO    ] No update needed
[2026-06-05 00:24:26,412.412 INFO    ] Checking for camera pi updates...
[2026-06-05 00:24:26,446.446 INFO    ] 200
[2026-06-05 00:24:26,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:26,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:24:26,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:26,540.540 INFO    ] No camera update needed
[2026-06-05 00:24:26,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:24:26,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:24:26,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:24:26,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:24:28,597.597 INFO    ] ================================================
[2026-06-05 00:24:28,612.612 INFO    ] Launching Daemon at Fri Jun  5 00:24:28 IST 2026
[2026-06-05 00:24:28,623.623 INFO    ] ================================================
[2026-06-05 00:24:29,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:24:29
[2026-06-05 00:24:29,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:24:30,055.055 INFO    ] Initializing speech engine...
[2026-06-05 00:24:30,064.064 INFO    ] 2026-06-05 00:24:30
[2026-06-05 00:24:30,323.323 INFO    ] 2026-06-05 00:24:30
[2026-06-05 00:24:30,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:24:30,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:24:30,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:24:30,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:24:30,789.789 INFO    ] time= 05/06/2026 00:24:30
[2026-06-05 00:24:30,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:24:30,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:24:30,990.990 INFO    ] No existing commands found in stream
[2026-06-05 00:24:36,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:24:36,005.005 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 00:24:37,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:24:37,862.862 INFO    ] Checking for system updates...
[2026-06-05 00:24:37,900.900 INFO    ] 200
[2026-06-05 00:24:37,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:37,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:37,959.959 INFO    ] No update needed
[2026-06-05 00:24:37,962.962 INFO    ] Checking for camera pi updates...
[2026-06-05 00:24:37,998.998 INFO    ] 200
[2026-06-05 00:24:38,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:38,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:24:38,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:38,093.093 INFO    ] No camera update needed
[2026-06-05 00:24:38,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:24:38,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:24:38,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:24:38,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:24:40,149.149 INFO    ] ================================================
[2026-06-05 00:24:40,165.165 INFO    ] Launching Daemon at Fri Jun  5 00:24:40 IST 2026
[2026-06-05 00:24:40,177.177 INFO    ] ================================================
[2026-06-05 00:24:40,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:24:40
[2026-06-05 00:24:41,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:24:41,712.712 INFO    ] Initializing speech engine...
[2026-06-05 00:24:41,721.721 INFO    ] 2026-06-05 00:24:41
[2026-06-05 00:24:41,989.989 INFO    ] 2026-06-05 00:24:41
[2026-06-05 00:24:42,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:24:42,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:24:42,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:24:42,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:24:42,409.409 INFO    ] time= 05/06/2026 00:24:42
[2026-06-05 00:24:42,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:24:42,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:24:42,494.494 INFO    ] No existing commands found in stream
[2026-06-05 00:24:47,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:24:47,510.510 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 00:24:48,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:24:48,581.581 INFO    ] Checking for system updates...
[2026-06-05 00:24:48,616.616 INFO    ] 200
[2026-06-05 00:24:48,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:48,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:48,676.676 INFO    ] No update needed
[2026-06-05 00:24:48,679.679 INFO    ] Checking for camera pi updates...
[2026-06-05 00:24:48,713.713 INFO    ] 200
[2026-06-05 00:24:48,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:24:48,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:24:48,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:24:48,916.916 INFO    ] No camera update needed
[2026-06-05 00:24:48,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:24:48,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:24:48,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:24:48,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:24:50,973.973 INFO    ] ================================================
[2026-06-05 00:24:50,988.988 INFO    ] Launching Daemon at Fri Jun  5 00:24:50 IST 2026
[2026-06-05 00:24:51,999.999 INFO    ] ================================================
[2026-06-05 00:24:51,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:24:51
[2026-06-05 00:24:52,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:24:52,456.456 INFO    ] Initializing speech engine...
[2026-06-05 00:24:52,465.465 INFO    ] 2026-06-05 00:24:52
[2026-06-05 00:24:52,723.723 INFO    ] 2026-06-05 00:24:52
[2026-06-05 00:24:52,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:24:53,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:24:53,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:24:53,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:24:53,216.216 INFO    ] time= 05/06/2026 00:24:53
[2026-06-05 00:24:53,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:24:53,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:24:53,400.400 INFO    ] No existing commands found in stream
[2026-06-05 00:24:58,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:24:58,426.426 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 00:25:02,306.306 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:25:02,309.309 INFO    ] Checking for system updates...
[2026-06-05 00:25:02,418.418 INFO    ] 200
[2026-06-05 00:25:02,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:02,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:25:02,553.553 INFO    ] No update needed
[2026-06-05 00:25:02,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 00:25:02,605.605 INFO    ] 200
[2026-06-05 00:25:02,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:02,657.657 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:25:02,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:25:02,712.712 INFO    ] No camera update needed
[2026-06-05 00:25:02,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:25:02,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:25:02,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:25:02,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:25:04,780.780 INFO    ] ================================================
[2026-06-05 00:25:04,795.795 INFO    ] Launching Daemon at Fri Jun  5 00:25:04 IST 2026
[2026-06-05 00:25:04,806.806 INFO    ] ================================================
[2026-06-05 00:25:05,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:25:05
[2026-06-05 00:25:05,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:25:06,228.228 INFO    ] Initializing speech engine...
[2026-06-05 00:25:06,237.237 INFO    ] 2026-06-05 00:25:06
[2026-06-05 00:25:06,528.528 INFO    ] 2026-06-05 00:25:06
[2026-06-05 00:25:06,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:25:06,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:25:06,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:25:06,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:25:06,905.905 INFO    ] time= 05/06/2026 00:25:06
[2026-06-05 00:25:06,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:25:06,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:25:07,066.066 INFO    ] No existing commands found in stream
[2026-06-05 00:25:12,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:25:12,106.106 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 00:25:14,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:25:14,121.121 INFO    ] Checking for system updates...
[2026-06-05 00:25:14,158.158 INFO    ] 200
[2026-06-05 00:25:14,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:14,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:25:14,228.228 INFO    ] No update needed
[2026-06-05 00:25:14,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 00:25:14,265.265 INFO    ] 200
[2026-06-05 00:25:14,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:14,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:25:14,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:25:14,367.367 INFO    ] No camera update needed
[2026-06-05 00:25:14,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:25:14,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:25:14,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:25:14,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:25:16,425.425 INFO    ] ================================================
[2026-06-05 00:25:16,440.440 INFO    ] Launching Daemon at Fri Jun  5 00:25:16 IST 2026
[2026-06-05 00:25:16,450.450 INFO    ] ================================================
[2026-06-05 00:25:17,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:25:17
[2026-06-05 00:25:17,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:25:17,928.928 INFO    ] Initializing speech engine...
[2026-06-05 00:25:17,937.937 INFO    ] 2026-06-05 00:25:17
[2026-06-05 00:25:18,223.223 INFO    ] 2026-06-05 00:25:18
[2026-06-05 00:25:18,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:25:18,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:25:18,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:25:18,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:25:18,678.678 INFO    ] time= 05/06/2026 00:25:18
[2026-06-05 00:25:18,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:25:18,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:25:18,826.826 INFO    ] No existing commands found in stream
[2026-06-05 00:25:23,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:25:23,842.842 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 00:25:26,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:25:26,008.008 INFO    ] Checking for system updates...
[2026-06-05 00:25:26,044.044 INFO    ] 200
[2026-06-05 00:25:26,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:26,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:25:26,108.108 INFO    ] No update needed
[2026-06-05 00:25:26,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 00:25:26,148.148 INFO    ] 200
[2026-06-05 00:25:26,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:26,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:25:26,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:25:26,243.243 INFO    ] No camera update needed
[2026-06-05 00:25:26,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:25:26,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:25:26,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:25:26,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:25:28,299.299 INFO    ] ================================================
[2026-06-05 00:25:28,314.314 INFO    ] Launching Daemon at Fri Jun  5 00:25:28 IST 2026
[2026-06-05 00:25:28,325.325 INFO    ] ================================================
[2026-06-05 00:25:28,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:25:28
[2026-06-05 00:25:29,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:25:29,794.794 INFO    ] Initializing speech engine...
[2026-06-05 00:25:29,807.807 INFO    ] 2026-06-05 00:25:29
[2026-06-05 00:25:30,059.059 INFO    ] 2026-06-05 00:25:30
[2026-06-05 00:25:30,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:25:30,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:25:30,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:25:30,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:25:30,430.430 INFO    ] time= 05/06/2026 00:25:30
[2026-06-05 00:25:30,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:25:30,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:25:30,512.512 INFO    ] No existing commands found in stream
[2026-06-05 00:25:35,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:25:35,527.527 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 00:25:36,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:25:36,801.801 INFO    ] Checking for system updates...
[2026-06-05 00:25:36,840.840 INFO    ] 200
[2026-06-05 00:25:36,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:36,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:25:36,897.897 INFO    ] No update needed
[2026-06-05 00:25:36,900.900 INFO    ] Checking for camera pi updates...
[2026-06-05 00:25:36,937.937 INFO    ] 200
[2026-06-05 00:25:36,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:36,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:25:37,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:25:37,037.037 INFO    ] No camera update needed
[2026-06-05 00:25:37,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:25:37,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:25:37,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:25:37,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:25:39,091.091 INFO    ] ================================================
[2026-06-05 00:25:39,107.107 INFO    ] Launching Daemon at Fri Jun  5 00:25:39 IST 2026
[2026-06-05 00:25:39,117.117 INFO    ] ================================================
[2026-06-05 00:25:39,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:25:39
[2026-06-05 00:25:40,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:25:40,549.549 INFO    ] Initializing speech engine...
[2026-06-05 00:25:40,572.572 INFO    ] 2026-06-05 00:25:40
[2026-06-05 00:25:40,829.829 INFO    ] 2026-06-05 00:25:40
[2026-06-05 00:25:40,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:25:41,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:25:41,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:25:41,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:25:41,295.295 INFO    ] time= 05/06/2026 00:25:41
[2026-06-05 00:25:41,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:25:41,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:25:41,451.451 INFO    ] No existing commands found in stream
[2026-06-05 00:25:46,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:25:46,479.479 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 00:25:48,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:25:48,249.249 INFO    ] Checking for system updates...
[2026-06-05 00:25:48,285.285 INFO    ] 200
[2026-06-05 00:25:48,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:48,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:25:48,345.345 INFO    ] No update needed
[2026-06-05 00:25:48,347.347 INFO    ] Checking for camera pi updates...
[2026-06-05 00:25:48,381.381 INFO    ] 200
[2026-06-05 00:25:48,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:48,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:25:48,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:25:48,470.470 INFO    ] No camera update needed
[2026-06-05 00:25:48,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:25:48,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:25:48,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:25:48,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:25:50,524.524 INFO    ] ================================================
[2026-06-05 00:25:50,540.540 INFO    ] Launching Daemon at Fri Jun  5 00:25:50 IST 2026
[2026-06-05 00:25:50,551.551 INFO    ] ================================================
[2026-06-05 00:25:51,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:25:51
[2026-06-05 00:25:51,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:25:52,015.015 INFO    ] Initializing speech engine...
[2026-06-05 00:25:52,024.024 INFO    ] 2026-06-05 00:25:52
[2026-06-05 00:25:52,274.274 INFO    ] 2026-06-05 00:25:52
[2026-06-05 00:25:52,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:25:52,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:25:52,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:25:52,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:25:52,707.707 INFO    ] time= 05/06/2026 00:25:52
[2026-06-05 00:25:52,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:25:52,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:25:52,863.863 INFO    ] No existing commands found in stream
[2026-06-05 00:25:57,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:25:57,882.882 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 00:25:59,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:25:59,098.098 INFO    ] Checking for system updates...
[2026-06-05 00:25:59,135.135 INFO    ] 200
[2026-06-05 00:25:59,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:59,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:25:59,193.193 INFO    ] No update needed
[2026-06-05 00:25:59,195.195 INFO    ] Checking for camera pi updates...
[2026-06-05 00:25:59,233.233 INFO    ] 200
[2026-06-05 00:25:59,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:25:59,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:25:59,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:25:59,327.327 INFO    ] No camera update needed
[2026-06-05 00:25:59,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:25:59,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:25:59,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:25:59,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:26:01,395.395 INFO    ] ================================================
[2026-06-05 00:26:01,421.421 INFO    ] Launching Daemon at Fri Jun  5 00:26:01 IST 2026
[2026-06-05 00:26:01,437.437 INFO    ] ================================================
[2026-06-05 00:26:02,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:26:02
[2026-06-05 00:26:02,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:26:03,020.020 INFO    ] Initializing speech engine...
[2026-06-05 00:26:03,027.027 INFO    ] 2026-06-05 00:26:03
[2026-06-05 00:26:03,317.317 INFO    ] 2026-06-05 00:26:03
[2026-06-05 00:26:03,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:26:03,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:26:03,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:26:03,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:26:03,698.698 INFO    ] time= 05/06/2026 00:26:03
[2026-06-05 00:26:03,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:26:03,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:26:03,821.821 INFO    ] No existing commands found in stream
[2026-06-05 00:26:08,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:26:08,837.837 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 00:26:12,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:26:12,474.474 INFO    ] Checking for system updates...
[2026-06-05 00:26:12,511.511 INFO    ] 200
[2026-06-05 00:26:12,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:12,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:26:12,574.574 INFO    ] No update needed
[2026-06-05 00:26:12,577.577 INFO    ] Checking for camera pi updates...
[2026-06-05 00:26:12,614.614 INFO    ] 200
[2026-06-05 00:26:12,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:12,657.657 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:26:12,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:26:12,703.703 INFO    ] No camera update needed
[2026-06-05 00:26:12,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:26:12,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:26:12,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:26:12,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:26:14,758.758 INFO    ] ================================================
[2026-06-05 00:26:14,776.776 INFO    ] Launching Daemon at Fri Jun  5 00:26:14 IST 2026
[2026-06-05 00:26:14,788.788 INFO    ] ================================================
[2026-06-05 00:26:15,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:26:15
[2026-06-05 00:26:15,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:26:16,250.250 INFO    ] Initializing speech engine...
[2026-06-05 00:26:16,254.254 INFO    ] 2026-06-05 00:26:16
[2026-06-05 00:26:16,502.502 INFO    ] 2026-06-05 00:26:16
[2026-06-05 00:26:16,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:26:16,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:26:16,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:26:16,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:26:16,988.988 INFO    ] time= 05/06/2026 00:26:16
[2026-06-05 00:26:17,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:26:17,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:26:17,176.176 INFO    ] No existing commands found in stream
[2026-06-05 00:26:22,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:26:22,206.206 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 00:26:23,169.169 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:26:23,172.172 INFO    ] Checking for system updates...
[2026-06-05 00:26:23,215.215 INFO    ] 200
[2026-06-05 00:26:23,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:23,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:26:23,280.280 INFO    ] No update needed
[2026-06-05 00:26:23,282.282 INFO    ] Checking for camera pi updates...
[2026-06-05 00:26:23,316.316 INFO    ] 200
[2026-06-05 00:26:23,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:23,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:26:23,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:26:23,411.411 INFO    ] No camera update needed
[2026-06-05 00:26:23,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:26:23,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:26:23,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:26:23,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:26:25,470.470 INFO    ] ================================================
[2026-06-05 00:26:25,486.486 INFO    ] Launching Daemon at Fri Jun  5 00:26:25 IST 2026
[2026-06-05 00:26:25,497.497 INFO    ] ================================================
[2026-06-05 00:26:26,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:26:26
[2026-06-05 00:26:26,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:26:26,949.949 INFO    ] Initializing speech engine...
[2026-06-05 00:26:26,958.958 INFO    ] 2026-06-05 00:26:26
[2026-06-05 00:26:27,251.251 INFO    ] 2026-06-05 00:26:27
[2026-06-05 00:26:27,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:26:27,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:26:27,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:26:27,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:26:27,773.773 INFO    ] time= 05/06/2026 00:26:27
[2026-06-05 00:26:27,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:26:27,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:26:27,945.945 INFO    ] No existing commands found in stream
[2026-06-05 00:26:32,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:26:32,961.961 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 00:26:33,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:26:33,440.440 INFO    ] Checking for system updates...
[2026-06-05 00:26:33,476.476 INFO    ] 200
[2026-06-05 00:26:33,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:33,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:26:33,541.541 INFO    ] No update needed
[2026-06-05 00:26:33,543.543 INFO    ] Checking for camera pi updates...
[2026-06-05 00:26:33,580.580 INFO    ] 200
[2026-06-05 00:26:33,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:33,625.625 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:26:33,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:26:33,676.676 INFO    ] No camera update needed
[2026-06-05 00:26:33,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:26:33,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:26:33,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:26:33,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:26:35,736.736 INFO    ] ================================================
[2026-06-05 00:26:35,751.751 INFO    ] Launching Daemon at Fri Jun  5 00:26:35 IST 2026
[2026-06-05 00:26:35,762.762 INFO    ] ================================================
[2026-06-05 00:26:36,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:26:36
[2026-06-05 00:26:36,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:26:37,203.203 INFO    ] Initializing speech engine...
[2026-06-05 00:26:37,212.212 INFO    ] 2026-06-05 00:26:37
[2026-06-05 00:26:37,504.504 INFO    ] 2026-06-05 00:26:37
[2026-06-05 00:26:37,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:26:37,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:26:37,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:26:37,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:26:37,922.922 INFO    ] time= 05/06/2026 00:26:37
[2026-06-05 00:26:37,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:26:37,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:26:38,008.008 INFO    ] No existing commands found in stream
[2026-06-05 00:26:43,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:26:43,023.023 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 00:26:44,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:26:44,570.570 INFO    ] Checking for system updates...
[2026-06-05 00:26:44,606.606 INFO    ] 200
[2026-06-05 00:26:44,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:44,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:26:44,665.665 INFO    ] No update needed
[2026-06-05 00:26:44,667.667 INFO    ] Checking for camera pi updates...
[2026-06-05 00:26:44,704.704 INFO    ] 200
[2026-06-05 00:26:44,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:44,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:26:44,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:26:44,796.796 INFO    ] No camera update needed
[2026-06-05 00:26:44,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:26:44,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:26:44,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:26:44,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:26:46,852.852 INFO    ] ================================================
[2026-06-05 00:26:46,868.868 INFO    ] Launching Daemon at Fri Jun  5 00:26:46 IST 2026
[2026-06-05 00:26:46,879.879 INFO    ] ================================================
[2026-06-05 00:26:47,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:26:47
[2026-06-05 00:26:48,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:26:48,309.309 INFO    ] Initializing speech engine...
[2026-06-05 00:26:48,319.319 INFO    ] 2026-06-05 00:26:48
[2026-06-05 00:26:48,593.593 INFO    ] 2026-06-05 00:26:48
[2026-06-05 00:26:48,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:26:48,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:26:48,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:26:49,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:26:49,123.123 INFO    ] time= 05/06/2026 00:26:49
[2026-06-05 00:26:49,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:26:49,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:26:49,262.262 INFO    ] No existing commands found in stream
[2026-06-05 00:26:54,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:26:54,290.290 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 00:26:56,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:26:56,310.310 INFO    ] Checking for system updates...
[2026-06-05 00:26:56,351.351 INFO    ] 200
[2026-06-05 00:26:56,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:56,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:26:56,419.419 INFO    ] No update needed
[2026-06-05 00:26:56,422.422 INFO    ] Checking for camera pi updates...
[2026-06-05 00:26:56,460.460 INFO    ] 200
[2026-06-05 00:26:56,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:26:56,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:26:56,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:26:56,659.659 INFO    ] No camera update needed
[2026-06-05 00:26:56,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:26:56,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:26:56,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:26:56,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:26:58,719.719 INFO    ] ================================================
[2026-06-05 00:26:58,735.735 INFO    ] Launching Daemon at Fri Jun  5 00:26:58 IST 2026
[2026-06-05 00:26:58,746.746 INFO    ] ================================================
[2026-06-05 00:26:59,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:26:59
[2026-06-05 00:26:59,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:27:00,164.164 INFO    ] Initializing speech engine...
[2026-06-05 00:27:00,183.183 INFO    ] 2026-06-05 00:27:00
[2026-06-05 00:27:00,434.434 INFO    ] 2026-06-05 00:27:00
[2026-06-05 00:27:00,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:27:00,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:27:00,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:27:00,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:27:00,860.860 INFO    ] time= 05/06/2026 00:27:00
[2026-06-05 00:27:00,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:27:00,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:27:01,018.018 INFO    ] No existing commands found in stream
[2026-06-05 00:27:06,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:27:06,031.031 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 00:27:06,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:27:06,719.719 INFO    ] Checking for system updates...
[2026-06-05 00:27:06,767.767 INFO    ] 200
[2026-06-05 00:27:06,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:06,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:27:06,833.833 INFO    ] No update needed
[2026-06-05 00:27:06,835.835 INFO    ] Checking for camera pi updates...
[2026-06-05 00:27:06,880.880 INFO    ] 200
[2026-06-05 00:27:06,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:06,934.934 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:27:06,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:27:06,990.990 INFO    ] No camera update needed
[2026-06-05 00:27:06,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:27:06,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:27:07,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:27:07,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:27:09,048.048 INFO    ] ================================================
[2026-06-05 00:27:09,064.064 INFO    ] Launching Daemon at Fri Jun  5 00:27:09 IST 2026
[2026-06-05 00:27:09,076.076 INFO    ] ================================================
[2026-06-05 00:27:09,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:27:09
[2026-06-05 00:27:10,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:27:10,648.648 INFO    ] Initializing speech engine...
[2026-06-05 00:27:10,654.654 INFO    ] 2026-06-05 00:27:10
[2026-06-05 00:27:10,948.948 INFO    ] 2026-06-05 00:27:10
[2026-06-05 00:27:10,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:27:11,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:27:11,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:27:11,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:27:11,324.324 INFO    ] time= 05/06/2026 00:27:11
[2026-06-05 00:27:11,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:27:11,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:27:11,487.487 INFO    ] No existing commands found in stream
[2026-06-05 00:27:16,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:27:16,520.520 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 00:27:19,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:27:19,230.230 INFO    ] Checking for system updates...
[2026-06-05 00:27:19,266.266 INFO    ] 200
[2026-06-05 00:27:19,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:19,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:27:19,336.336 INFO    ] No update needed
[2026-06-05 00:27:19,339.339 INFO    ] Checking for camera pi updates...
[2026-06-05 00:27:19,377.377 INFO    ] 200
[2026-06-05 00:27:19,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:19,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:27:19,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:27:19,483.483 INFO    ] No camera update needed
[2026-06-05 00:27:19,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:27:19,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:27:19,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:27:19,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:27:21,538.538 INFO    ] ================================================
[2026-06-05 00:27:21,554.554 INFO    ] Launching Daemon at Fri Jun  5 00:27:21 IST 2026
[2026-06-05 00:27:21,565.565 INFO    ] ================================================
[2026-06-05 00:27:22,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:27:22
[2026-06-05 00:27:22,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:27:22,978.978 INFO    ] Initializing speech engine...
[2026-06-05 00:27:22,987.987 INFO    ] 2026-06-05 00:27:22
[2026-06-05 00:27:23,286.286 INFO    ] 2026-06-05 00:27:23
[2026-06-05 00:27:23,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:27:23,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:27:23,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:27:23,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:27:23,769.769 INFO    ] time= 05/06/2026 00:27:23
[2026-06-05 00:27:23,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:27:23,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:27:23,918.918 INFO    ] No existing commands found in stream
[2026-06-05 00:27:28,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:27:28,935.935 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 00:27:32,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:27:32,286.286 INFO    ] Checking for system updates...
[2026-06-05 00:27:32,328.328 INFO    ] 200
[2026-06-05 00:27:32,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:32,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:27:32,393.393 INFO    ] No update needed
[2026-06-05 00:27:32,396.396 INFO    ] Checking for camera pi updates...
[2026-06-05 00:27:32,434.434 INFO    ] 200
[2026-06-05 00:27:32,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:32,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:27:32,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:27:32,526.526 INFO    ] No camera update needed
[2026-06-05 00:27:32,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:27:32,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:27:32,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:27:32,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:27:34,587.587 INFO    ] ================================================
[2026-06-05 00:27:34,604.604 INFO    ] Launching Daemon at Fri Jun  5 00:27:34 IST 2026
[2026-06-05 00:27:34,615.615 INFO    ] ================================================
[2026-06-05 00:27:35,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:27:35
[2026-06-05 00:27:35,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:27:36,058.058 INFO    ] Initializing speech engine...
[2026-06-05 00:27:36,067.067 INFO    ] 2026-06-05 00:27:36
[2026-06-05 00:27:36,322.322 INFO    ] 2026-06-05 00:27:36
[2026-06-05 00:27:36,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:27:36,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:27:36,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:27:36,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:27:36,703.703 INFO    ] time= 05/06/2026 00:27:36
[2026-06-05 00:27:36,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:27:36,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:27:36,780.780 INFO    ] No existing commands found in stream
[2026-06-05 00:27:41,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:27:41,795.795 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 00:27:43,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:27:43,953.953 INFO    ] Checking for system updates...
[2026-06-05 00:27:43,990.990 INFO    ] 200
[2026-06-05 00:27:43,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:44,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:27:44,060.060 INFO    ] No update needed
[2026-06-05 00:27:44,063.063 INFO    ] Checking for camera pi updates...
[2026-06-05 00:27:44,101.101 INFO    ] 200
[2026-06-05 00:27:44,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:44,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:27:44,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:27:44,199.199 INFO    ] No camera update needed
[2026-06-05 00:27:44,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:27:44,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:27:44,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:27:44,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:27:46,258.258 INFO    ] ================================================
[2026-06-05 00:27:46,274.274 INFO    ] Launching Daemon at Fri Jun  5 00:27:46 IST 2026
[2026-06-05 00:27:46,284.284 INFO    ] ================================================
[2026-06-05 00:27:46,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:27:46
[2026-06-05 00:27:47,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:27:47,748.748 INFO    ] Initializing speech engine...
[2026-06-05 00:27:47,758.758 INFO    ] 2026-06-05 00:27:47
[2026-06-05 00:27:48,015.015 INFO    ] 2026-06-05 00:27:48
[2026-06-05 00:27:48,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:27:48,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:27:48,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:27:48,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:27:48,486.486 INFO    ] time= 05/06/2026 00:27:48
[2026-06-05 00:27:48,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:27:48,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:27:48,632.632 INFO    ] No existing commands found in stream
[2026-06-05 00:27:53,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:27:53,650.650 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 00:27:55,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:27:55,962.962 INFO    ] Checking for system updates...
[2026-06-05 00:27:55,999.999 INFO    ] 200
[2026-06-05 00:27:56,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:56,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:27:56,061.061 INFO    ] No update needed
[2026-06-05 00:27:56,064.064 INFO    ] Checking for camera pi updates...
[2026-06-05 00:27:56,104.104 INFO    ] 200
[2026-06-05 00:27:56,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:27:56,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:27:56,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:27:56,216.216 INFO    ] No camera update needed
[2026-06-05 00:27:56,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:27:56,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:27:56,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:27:56,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:27:58,277.277 INFO    ] ================================================
[2026-06-05 00:27:58,292.292 INFO    ] Launching Daemon at Fri Jun  5 00:27:58 IST 2026
[2026-06-05 00:27:58,303.303 INFO    ] ================================================
[2026-06-05 00:27:58,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:27:58
[2026-06-05 00:27:59,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:27:59,768.768 INFO    ] Initializing speech engine...
[2026-06-05 00:27:59,778.778 INFO    ] 2026-06-05 00:27:59
[2026-06-05 00:28:00,030.030 INFO    ] 2026-06-05 00:28:00
[2026-06-05 00:28:00,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:28:00,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:28:00,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:28:00,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:28:00,511.511 INFO    ] time= 05/06/2026 00:28:00
[2026-06-05 00:28:00,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:28:00,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:28:00,657.657 INFO    ] No existing commands found in stream
[2026-06-05 00:28:05,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:28:05,672.672 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 00:28:07,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:28:07,807.807 INFO    ] Checking for system updates...
[2026-06-05 00:28:07,843.843 INFO    ] 200
[2026-06-05 00:28:07,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:07,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:28:07,901.901 INFO    ] No update needed
[2026-06-05 00:28:07,904.904 INFO    ] Checking for camera pi updates...
[2026-06-05 00:28:07,938.938 INFO    ] 200
[2026-06-05 00:28:07,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:07,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:28:08,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:28:08,034.034 INFO    ] No camera update needed
[2026-06-05 00:28:08,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:28:08,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:28:08,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:28:08,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:28:10,090.090 INFO    ] ================================================
[2026-06-05 00:28:10,105.105 INFO    ] Launching Daemon at Fri Jun  5 00:28:10 IST 2026
[2026-06-05 00:28:10,116.116 INFO    ] ================================================
[2026-06-05 00:28:10,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:28:10
[2026-06-05 00:28:11,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:28:11,539.539 INFO    ] Initializing speech engine...
[2026-06-05 00:28:11,546.546 INFO    ] 2026-06-05 00:28:11
[2026-06-05 00:28:11,851.851 INFO    ] 2026-06-05 00:28:11
[2026-06-05 00:28:11,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:28:12,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:28:12,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:28:12,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:28:12,240.240 INFO    ] time= 05/06/2026 00:28:12
[2026-06-05 00:28:12,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:28:12,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:28:12,369.369 INFO    ] No existing commands found in stream
[2026-06-05 00:28:17,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:28:17,384.384 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 00:28:19,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:28:19,594.594 INFO    ] Checking for system updates...
[2026-06-05 00:28:19,635.635 INFO    ] 200
[2026-06-05 00:28:19,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:19,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:28:19,701.701 INFO    ] No update needed
[2026-06-05 00:28:19,704.704 INFO    ] Checking for camera pi updates...
[2026-06-05 00:28:19,742.742 INFO    ] 200
[2026-06-05 00:28:19,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:19,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:28:19,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:28:19,843.843 INFO    ] No camera update needed
[2026-06-05 00:28:19,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:28:19,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:28:19,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:28:19,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:28:21,900.900 INFO    ] ================================================
[2026-06-05 00:28:21,915.915 INFO    ] Launching Daemon at Fri Jun  5 00:28:21 IST 2026
[2026-06-05 00:28:21,926.926 INFO    ] ================================================
[2026-06-05 00:28:22,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:28:22
[2026-06-05 00:28:23,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:28:23,401.401 INFO    ] Initializing speech engine...
[2026-06-05 00:28:23,412.412 INFO    ] 2026-06-05 00:28:23
[2026-06-05 00:28:23,675.675 INFO    ] 2026-06-05 00:28:23
[2026-06-05 00:28:23,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:28:23,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:28:23,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:28:24,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:28:24,218.218 INFO    ] time= 05/06/2026 00:28:24
[2026-06-05 00:28:24,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:28:24,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:28:24,348.348 INFO    ] No existing commands found in stream
[2026-06-05 00:28:29,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:28:29,381.381 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 00:28:30,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:28:30,370.370 INFO    ] Checking for system updates...
[2026-06-05 00:28:30,407.407 INFO    ] 200
[2026-06-05 00:28:30,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:30,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:28:30,477.477 INFO    ] No update needed
[2026-06-05 00:28:30,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 00:28:30,513.513 INFO    ] 200
[2026-06-05 00:28:30,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:30,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:28:30,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:28:30,612.612 INFO    ] No camera update needed
[2026-06-05 00:28:30,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:28:30,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:28:30,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:28:30,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:28:32,670.670 INFO    ] ================================================
[2026-06-05 00:28:32,687.687 INFO    ] Launching Daemon at Fri Jun  5 00:28:32 IST 2026
[2026-06-05 00:28:32,699.699 INFO    ] ================================================
[2026-06-05 00:28:33,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:28:33
[2026-06-05 00:28:33,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:28:34,191.191 INFO    ] Initializing speech engine...
[2026-06-05 00:28:34,200.200 INFO    ] 2026-06-05 00:28:34
[2026-06-05 00:28:34,502.502 INFO    ] 2026-06-05 00:28:34
[2026-06-05 00:28:34,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:28:34,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:28:34,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:28:34,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:28:34,895.895 INFO    ] time= 05/06/2026 00:28:34
[2026-06-05 00:28:34,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:28:34,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:28:35,023.023 INFO    ] No existing commands found in stream
[2026-06-05 00:28:40,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:28:40,037.037 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 00:28:44,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:28:44,309.309 INFO    ] Checking for system updates...
[2026-06-05 00:28:44,345.345 INFO    ] 200
[2026-06-05 00:28:44,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:44,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:28:44,403.403 INFO    ] No update needed
[2026-06-05 00:28:44,406.406 INFO    ] Checking for camera pi updates...
[2026-06-05 00:28:44,440.440 INFO    ] 200
[2026-06-05 00:28:44,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:44,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:28:44,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:28:44,531.531 INFO    ] No camera update needed
[2026-06-05 00:28:44,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:28:44,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:28:44,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:28:44,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:28:46,587.587 INFO    ] ================================================
[2026-06-05 00:28:46,603.603 INFO    ] Launching Daemon at Fri Jun  5 00:28:46 IST 2026
[2026-06-05 00:28:46,614.614 INFO    ] ================================================
[2026-06-05 00:28:47,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:28:47
[2026-06-05 00:28:47,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:28:48,090.090 INFO    ] Initializing speech engine...
[2026-06-05 00:28:48,097.097 INFO    ] 2026-06-05 00:28:48
[2026-06-05 00:28:48,344.344 INFO    ] 2026-06-05 00:28:48
[2026-06-05 00:28:48,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:28:48,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:28:48,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:28:48,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:28:48,720.720 INFO    ] time= 05/06/2026 00:28:48
[2026-06-05 00:28:48,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:28:48,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:28:48,888.888 INFO    ] No existing commands found in stream
[2026-06-05 00:28:53,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:28:53,926.926 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 00:28:56,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:28:56,916.916 INFO    ] Checking for system updates...
[2026-06-05 00:28:56,951.951 INFO    ] 200
[2026-06-05 00:28:56,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:57,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:28:57,018.018 INFO    ] No update needed
[2026-06-05 00:28:57,020.020 INFO    ] Checking for camera pi updates...
[2026-06-05 00:28:57,058.058 INFO    ] 200
[2026-06-05 00:28:57,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:28:57,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:28:57,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:28:57,159.159 INFO    ] No camera update needed
[2026-06-05 00:28:57,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:28:57,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:28:57,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:28:57,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:28:59,218.218 INFO    ] ================================================
[2026-06-05 00:28:59,234.234 INFO    ] Launching Daemon at Fri Jun  5 00:28:59 IST 2026
[2026-06-05 00:28:59,245.245 INFO    ] ================================================
[2026-06-05 00:28:59,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:28:59
[2026-06-05 00:29:00,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:29:00,665.665 INFO    ] Initializing speech engine...
[2026-06-05 00:29:00,680.680 INFO    ] 2026-06-05 00:29:00
[2026-06-05 00:29:00,962.962 INFO    ] 2026-06-05 00:29:00
[2026-06-05 00:29:00,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:29:01,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:29:01,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:29:01,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:29:01,424.424 INFO    ] time= 05/06/2026 00:29:01
[2026-06-05 00:29:01,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:29:01,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:29:01,589.589 INFO    ] No existing commands found in stream
[2026-06-05 00:29:06,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:29:06,600.600 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 00:29:08,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:29:08,099.099 INFO    ] Checking for system updates...
[2026-06-05 00:29:08,140.140 INFO    ] 200
[2026-06-05 00:29:08,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:29:08,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:29:08,197.197 INFO    ] No update needed
[2026-06-05 00:29:08,200.200 INFO    ] Checking for camera pi updates...
[2026-06-05 00:29:08,239.239 INFO    ] 200
[2026-06-05 00:29:08,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:29:08,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:29:08,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:29:08,345.345 INFO    ] No camera update needed
[2026-06-05 00:29:08,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:29:08,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:29:08,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:29:08,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:29:10,408.408 INFO    ] ================================================
[2026-06-05 00:29:10,427.427 INFO    ] Launching Daemon at Fri Jun  5 00:29:10 IST 2026
[2026-06-05 00:29:10,439.439 INFO    ] ================================================
[2026-06-05 00:29:11,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:29:11
[2026-06-05 00:29:11,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:29:11,985.985 INFO    ] Initializing speech engine...
[2026-06-05 00:29:11,991.991 INFO    ] 2026-06-05 00:29:11
[2026-06-05 00:29:12,300.300 INFO    ] 2026-06-05 00:29:12
[2026-06-05 00:29:12,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:29:12,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:29:12,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:29:12,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:29:12,813.813 INFO    ] time= 05/06/2026 00:29:12
[2026-06-05 00:29:12,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:29:12,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:29:12,956.956 INFO    ] No existing commands found in stream
[2026-06-05 00:29:17,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:29:17,985.985 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 00:29:22,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:29:22,025.025 INFO    ] Checking for system updates...
[2026-06-05 00:29:22,063.063 INFO    ] 200
[2026-06-05 00:29:22,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:29:22,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:29:22,129.129 INFO    ] No update needed
[2026-06-05 00:29:22,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 00:29:22,165.165 INFO    ] 200
[2026-06-05 00:29:22,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:29:22,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:29:22,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:29:22,260.260 INFO    ] No camera update needed
[2026-06-05 00:29:22,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:29:22,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:29:22,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:29:22,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:29:24,315.315 INFO    ] ================================================
[2026-06-05 00:29:24,331.331 INFO    ] Launching Daemon at Fri Jun  5 00:29:24 IST 2026
[2026-06-05 00:29:24,342.342 INFO    ] ================================================
[2026-06-05 00:29:25,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:29:24
[2026-06-05 00:29:25,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:29:25,866.866 INFO    ] Initializing speech engine...
[2026-06-05 00:29:25,875.875 INFO    ] 2026-06-05 00:29:25
[2026-06-05 00:29:26,149.149 INFO    ] 2026-06-05 00:29:26
[2026-06-05 00:29:26,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:29:26,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:29:26,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:29:26,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:29:26,589.589 INFO    ] time= 05/06/2026 00:29:26
[2026-06-05 00:29:26,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:29:26,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:29:26,752.752 INFO    ] No existing commands found in stream
[2026-06-05 00:29:31,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:29:31,767.767 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 00:29:36,694.694 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:29:36,702.702 INFO    ] Checking for system updates...
[2026-06-05 00:29:36,747.747 INFO    ] 200
[2026-06-05 00:29:36,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:29:36,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:29:36,812.812 INFO    ] No update needed
[2026-06-05 00:29:36,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 00:29:36,852.852 INFO    ] 200
[2026-06-05 00:29:36,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:29:36,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:29:36,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:29:36,945.945 INFO    ] No camera update needed
[2026-06-05 00:29:36,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:29:36,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:29:36,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:29:36,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:29:39,001.001 INFO    ] ================================================
[2026-06-05 00:29:39,017.017 INFO    ] Launching Daemon at Fri Jun  5 00:29:39 IST 2026
[2026-06-05 00:29:39,028.028 INFO    ] ================================================
[2026-06-05 00:29:39,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:29:39
[2026-06-05 00:29:40,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:29:40,684.684 INFO    ] Initializing speech engine...
[2026-06-05 00:29:40,691.691 INFO    ] 2026-06-05 00:29:40
[2026-06-05 00:29:40,997.997 INFO    ] 2026-06-05 00:29:40
[2026-06-05 00:29:41,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:29:41,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:29:41,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:29:41,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:29:41,509.509 INFO    ] time= 05/06/2026 00:29:41
[2026-06-05 00:29:41,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:29:41,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:29:41,671.671 INFO    ] No existing commands found in stream
[2026-06-05 00:29:46,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:29:46,700.700 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 00:29:49,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:29:49,727.727 INFO    ] Checking for system updates...
[2026-06-05 00:29:49,764.764 INFO    ] 200
[2026-06-05 00:29:49,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:29:49,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:29:49,824.824 INFO    ] No update needed
[2026-06-05 00:29:49,827.827 INFO    ] Checking for camera pi updates...
[2026-06-05 00:29:49,863.863 INFO    ] 200
[2026-06-05 00:29:49,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:29:49,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:29:49,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:29:49,961.961 INFO    ] No camera update needed
[2026-06-05 00:29:49,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:29:49,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:29:49,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:29:49,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:29:52,019.019 INFO    ] ================================================
[2026-06-05 00:29:52,035.035 INFO    ] Launching Daemon at Fri Jun  5 00:29:52 IST 2026
[2026-06-05 00:29:52,046.046 INFO    ] ================================================
[2026-06-05 00:29:52,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:29:52
[2026-06-05 00:29:53,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:29:53,605.605 INFO    ] Initializing speech engine...
[2026-06-05 00:29:53,617.617 INFO    ] 2026-06-05 00:29:53
[2026-06-05 00:29:53,905.905 INFO    ] 2026-06-05 00:29:53
[2026-06-05 00:29:54,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:29:54,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:29:54,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:29:54,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:29:54,494.494 INFO    ] time= 05/06/2026 00:29:54
[2026-06-05 00:29:54,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:29:54,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:29:54,604.604 INFO    ] No existing commands found in stream
[2026-06-05 00:29:59,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:29:59,629.629 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 00:30:02,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:30:02,873.873 INFO    ] Checking for system updates...
[2026-06-05 00:30:02,931.931 INFO    ] 200
[2026-06-05 00:30:02,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:03,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:30:03,012.012 INFO    ] No update needed
[2026-06-05 00:30:03,017.017 INFO    ] Checking for camera pi updates...
[2026-06-05 00:30:03,078.078 INFO    ] 200
[2026-06-05 00:30:03,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:03,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:30:03,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:30:03,198.198 INFO    ] No camera update needed
[2026-06-05 00:30:03,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:30:03,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:30:03,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:30:03,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:30:05,266.266 INFO    ] ================================================
[2026-06-05 00:30:05,282.282 INFO    ] Launching Daemon at Fri Jun  5 00:30:05 IST 2026
[2026-06-05 00:30:05,293.293 INFO    ] ================================================
[2026-06-05 00:30:05,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:30:05
[2026-06-05 00:30:06,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:30:06,718.718 INFO    ] Initializing speech engine...
[2026-06-05 00:30:06,741.741 INFO    ] 2026-06-05 00:30:06
[2026-06-05 00:30:06,999.999 INFO    ] 2026-06-05 00:30:06
[2026-06-05 00:30:07,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:30:07,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:30:07,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:30:07,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:30:07,356.356 INFO    ] time= 05/06/2026 00:30:07
[2026-06-05 00:30:07,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:30:07,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:30:07,456.456 INFO    ] No existing commands found in stream
[2026-06-05 00:30:12,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:30:12,484.484 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 00:30:13,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:30:13,656.656 INFO    ] Checking for system updates...
[2026-06-05 00:30:13,693.693 INFO    ] 200
[2026-06-05 00:30:13,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:13,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:30:13,765.765 INFO    ] No update needed
[2026-06-05 00:30:13,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 00:30:13,802.802 INFO    ] 200
[2026-06-05 00:30:13,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:13,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:30:13,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:30:13,890.890 INFO    ] No camera update needed
[2026-06-05 00:30:13,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:30:13,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:30:13,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:30:13,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:30:15,948.948 INFO    ] ================================================
[2026-06-05 00:30:15,963.963 INFO    ] Launching Daemon at Fri Jun  5 00:30:15 IST 2026
[2026-06-05 00:30:15,974.974 INFO    ] ================================================
[2026-06-05 00:30:16,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:30:16
[2026-06-05 00:30:17,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:30:17,436.436 INFO    ] Initializing speech engine...
[2026-06-05 00:30:17,445.445 INFO    ] 2026-06-05 00:30:17
[2026-06-05 00:30:17,696.696 INFO    ] 2026-06-05 00:30:17
[2026-06-05 00:30:17,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:30:17,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:30:17,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:30:18,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:30:18,167.167 INFO    ] time= 05/06/2026 00:30:18
[2026-06-05 00:30:18,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:30:18,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:30:18,360.360 INFO    ] No existing commands found in stream
[2026-06-05 00:30:23,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:30:23,390.390 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 00:30:26,052.052 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:30:26,055.055 INFO    ] Checking for system updates...
[2026-06-05 00:30:26,091.091 INFO    ] 200
[2026-06-05 00:30:26,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:26,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:30:26,150.150 INFO    ] No update needed
[2026-06-05 00:30:26,152.152 INFO    ] Checking for camera pi updates...
[2026-06-05 00:30:26,187.187 INFO    ] 200
[2026-06-05 00:30:26,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:26,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:30:26,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:30:26,281.281 INFO    ] No camera update needed
[2026-06-05 00:30:26,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:30:26,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:30:26,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:30:26,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:30:28,336.336 INFO    ] ================================================
[2026-06-05 00:30:28,351.351 INFO    ] Launching Daemon at Fri Jun  5 00:30:28 IST 2026
[2026-06-05 00:30:28,362.362 INFO    ] ================================================
[2026-06-05 00:30:28,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:30:28
[2026-06-05 00:30:29,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:30:29,765.765 INFO    ] Initializing speech engine...
[2026-06-05 00:30:29,771.771 INFO    ] 2026-06-05 00:30:29
[2026-06-05 00:30:30,045.045 INFO    ] 2026-06-05 00:30:30
[2026-06-05 00:30:30,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:30:30,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:30:30,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:30:30,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:30:30,423.423 INFO    ] time= 05/06/2026 00:30:30
[2026-06-05 00:30:30,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:30:30,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:30:30,502.502 INFO    ] No existing commands found in stream
[2026-06-05 00:30:35,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:30:35,540.540 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 00:30:39,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:30:39,722.722 INFO    ] Checking for system updates...
[2026-06-05 00:30:39,758.758 INFO    ] 200
[2026-06-05 00:30:39,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:39,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:30:39,818.818 INFO    ] No update needed
[2026-06-05 00:30:39,820.820 INFO    ] Checking for camera pi updates...
[2026-06-05 00:30:39,855.855 INFO    ] 200
[2026-06-05 00:30:39,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:39,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:30:39,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:30:39,955.955 INFO    ] No camera update needed
[2026-06-05 00:30:39,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:30:39,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:30:39,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:30:39,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:30:42,011.011 INFO    ] ================================================
[2026-06-05 00:30:42,033.033 INFO    ] Launching Daemon at Fri Jun  5 00:30:42 IST 2026
[2026-06-05 00:30:42,046.046 INFO    ] ================================================
[2026-06-05 00:30:42,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:30:42
[2026-06-05 00:30:43,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:30:43,619.619 INFO    ] Initializing speech engine...
[2026-06-05 00:30:43,625.625 INFO    ] 2026-06-05 00:30:43
[2026-06-05 00:30:43,935.935 INFO    ] 2026-06-05 00:30:43
[2026-06-05 00:30:44,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:30:44,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:30:44,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:30:44,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:30:44,441.441 INFO    ] time= 05/06/2026 00:30:44
[2026-06-05 00:30:44,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:30:44,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:30:44,576.576 INFO    ] No existing commands found in stream
[2026-06-05 00:30:49,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:30:49,608.608 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 00:30:50,274.274 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:30:50,277.277 INFO    ] Checking for system updates...
[2026-06-05 00:30:50,314.314 INFO    ] 200
[2026-06-05 00:30:50,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:50,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:30:50,375.375 INFO    ] No update needed
[2026-06-05 00:30:50,378.378 INFO    ] Checking for camera pi updates...
[2026-06-05 00:30:50,416.416 INFO    ] 200
[2026-06-05 00:30:50,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:30:50,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:30:50,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:30:50,511.511 INFO    ] No camera update needed
[2026-06-05 00:30:50,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:30:50,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:30:50,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:30:50,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:30:52,570.570 INFO    ] ================================================
[2026-06-05 00:30:52,586.586 INFO    ] Launching Daemon at Fri Jun  5 00:30:52 IST 2026
[2026-06-05 00:30:52,597.597 INFO    ] ================================================
[2026-06-05 00:30:53,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:30:53
[2026-06-05 00:30:53,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:30:54,038.038 INFO    ] Initializing speech engine...
[2026-06-05 00:30:54,055.055 INFO    ] 2026-06-05 00:30:54
[2026-06-05 00:30:54,311.311 INFO    ] 2026-06-05 00:30:54
[2026-06-05 00:30:54,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:30:54,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:30:54,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:30:54,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:30:54,683.683 INFO    ] time= 05/06/2026 00:30:54
[2026-06-05 00:30:54,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:30:54,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:30:54,810.810 INFO    ] No existing commands found in stream
[2026-06-05 00:30:59,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:30:59,824.824 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 00:31:02,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:31:02,861.861 INFO    ] Checking for system updates...
[2026-06-05 00:31:02,906.906 INFO    ] 200
[2026-06-05 00:31:02,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:02,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:31:02,984.984 INFO    ] No update needed
[2026-06-05 00:31:02,987.987 INFO    ] Checking for camera pi updates...
[2026-06-05 00:31:03,039.039 INFO    ] 200
[2026-06-05 00:31:03,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:03,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:31:03,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:31:03,157.157 INFO    ] No camera update needed
[2026-06-05 00:31:03,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:31:03,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:31:03,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:31:03,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:31:05,217.217 INFO    ] ================================================
[2026-06-05 00:31:05,232.232 INFO    ] Launching Daemon at Fri Jun  5 00:31:05 IST 2026
[2026-06-05 00:31:05,244.244 INFO    ] ================================================
[2026-06-05 00:31:05,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:31:05
[2026-06-05 00:31:06,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:31:06,695.695 INFO    ] Initializing speech engine...
[2026-06-05 00:31:06,714.714 INFO    ] 2026-06-05 00:31:06
[2026-06-05 00:31:06,961.961 INFO    ] 2026-06-05 00:31:06
[2026-06-05 00:31:06,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:31:07,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:31:07,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:31:07,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:31:07,429.429 INFO    ] time= 05/06/2026 00:31:07
[2026-06-05 00:31:07,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:31:07,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:31:07,595.595 INFO    ] No existing commands found in stream
[2026-06-05 00:31:12,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:31:12,634.634 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 00:31:14,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:31:14,238.238 INFO    ] Checking for system updates...
[2026-06-05 00:31:14,274.274 INFO    ] 200
[2026-06-05 00:31:14,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:14,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:31:14,332.332 INFO    ] No update needed
[2026-06-05 00:31:14,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 00:31:14,369.369 INFO    ] 200
[2026-06-05 00:31:14,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:14,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:31:14,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:31:14,559.559 INFO    ] No camera update needed
[2026-06-05 00:31:14,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:31:14,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:31:14,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:31:14,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:31:16,617.617 INFO    ] ================================================
[2026-06-05 00:31:16,632.632 INFO    ] Launching Daemon at Fri Jun  5 00:31:16 IST 2026
[2026-06-05 00:31:16,644.644 INFO    ] ================================================
[2026-06-05 00:31:17,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:31:17
[2026-06-05 00:31:17,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:31:18,069.069 INFO    ] Initializing speech engine...
[2026-06-05 00:31:18,078.078 INFO    ] 2026-06-05 00:31:18
[2026-06-05 00:31:18,372.372 INFO    ] 2026-06-05 00:31:18
[2026-06-05 00:31:18,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:31:18,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:31:18,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:31:18,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:31:18,766.766 INFO    ] time= 05/06/2026 00:31:18
[2026-06-05 00:31:18,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:31:18,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:31:18,874.874 INFO    ] No existing commands found in stream
[2026-06-05 00:31:23,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:31:23,889.889 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 00:31:26,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:31:26,121.121 INFO    ] Checking for system updates...
[2026-06-05 00:31:26,159.159 INFO    ] 200
[2026-06-05 00:31:26,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:26,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:31:26,217.217 INFO    ] No update needed
[2026-06-05 00:31:26,219.219 INFO    ] Checking for camera pi updates...
[2026-06-05 00:31:26,254.254 INFO    ] 200
[2026-06-05 00:31:26,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:26,297.297 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:31:26,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:31:26,345.345 INFO    ] No camera update needed
[2026-06-05 00:31:26,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:31:26,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:31:26,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:31:26,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:31:28,400.400 INFO    ] ================================================
[2026-06-05 00:31:28,416.416 INFO    ] Launching Daemon at Fri Jun  5 00:31:28 IST 2026
[2026-06-05 00:31:28,428.428 INFO    ] ================================================
[2026-06-05 00:31:29,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:31:28
[2026-06-05 00:31:29,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:31:29,847.847 INFO    ] Initializing speech engine...
[2026-06-05 00:31:29,854.854 INFO    ] 2026-06-05 00:31:29
[2026-06-05 00:31:30,144.144 INFO    ] 2026-06-05 00:31:30
[2026-06-05 00:31:30,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:31:30,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:31:30,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:31:30,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:31:30,518.518 INFO    ] time= 05/06/2026 00:31:30
[2026-06-05 00:31:30,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:31:30,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:31:30,643.643 INFO    ] No existing commands found in stream
[2026-06-05 00:31:35,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:31:35,671.671 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 00:31:37,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:31:37,651.651 INFO    ] Checking for system updates...
[2026-06-05 00:31:37,690.690 INFO    ] 200
[2026-06-05 00:31:37,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:37,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:31:37,754.754 INFO    ] No update needed
[2026-06-05 00:31:37,756.756 INFO    ] Checking for camera pi updates...
[2026-06-05 00:31:37,790.790 INFO    ] 200
[2026-06-05 00:31:37,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:37,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:31:37,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:31:37,895.895 INFO    ] No camera update needed
[2026-06-05 00:31:37,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:31:37,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:31:37,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:31:37,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:31:39,953.953 INFO    ] ================================================
[2026-06-05 00:31:39,969.969 INFO    ] Launching Daemon at Fri Jun  5 00:31:39 IST 2026
[2026-06-05 00:31:39,980.980 INFO    ] ================================================
[2026-06-05 00:31:40,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:31:40
[2026-06-05 00:31:41,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:31:41,458.458 INFO    ] Initializing speech engine...
[2026-06-05 00:31:41,468.468 INFO    ] 2026-06-05 00:31:41
[2026-06-05 00:31:41,734.734 INFO    ] 2026-06-05 00:31:41
[2026-06-05 00:31:41,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:31:42,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:31:42,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:31:42,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:31:42,206.206 INFO    ] time= 05/06/2026 00:31:42
[2026-06-05 00:31:42,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:31:42,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:31:42,374.374 INFO    ] No existing commands found in stream
[2026-06-05 00:31:47,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:31:47,389.389 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 00:31:48,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:31:48,945.945 INFO    ] Checking for system updates...
[2026-06-05 00:31:48,981.981 INFO    ] 200
[2026-06-05 00:31:48,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:49,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:31:49,042.042 INFO    ] No update needed
[2026-06-05 00:31:49,044.044 INFO    ] Checking for camera pi updates...
[2026-06-05 00:31:49,078.078 INFO    ] 200
[2026-06-05 00:31:49,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:31:49,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:31:49,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:31:49,174.174 INFO    ] No camera update needed
[2026-06-05 00:31:49,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:31:49,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:31:49,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:31:49,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:31:51,232.232 INFO    ] ================================================
[2026-06-05 00:31:51,248.248 INFO    ] Launching Daemon at Fri Jun  5 00:31:51 IST 2026
[2026-06-05 00:31:51,260.260 INFO    ] ================================================
[2026-06-05 00:31:51,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:31:51
[2026-06-05 00:31:52,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:31:52,896.896 INFO    ] Initializing speech engine...
[2026-06-05 00:31:52,909.909 INFO    ] 2026-06-05 00:31:52
[2026-06-05 00:31:53,192.192 INFO    ] 2026-06-05 00:31:53
[2026-06-05 00:31:53,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:31:53,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:31:53,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:31:53,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:31:53,674.674 INFO    ] time= 05/06/2026 00:31:53
[2026-06-05 00:31:53,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:31:53,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:31:53,866.866 INFO    ] No existing commands found in stream
[2026-06-05 00:31:58,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:31:58,905.905 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 00:32:00,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:32:00,450.450 INFO    ] Checking for system updates...
[2026-06-05 00:32:00,487.487 INFO    ] 200
[2026-06-05 00:32:00,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:00,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:32:00,548.548 INFO    ] No update needed
[2026-06-05 00:32:00,551.551 INFO    ] Checking for camera pi updates...
[2026-06-05 00:32:00,589.589 INFO    ] 200
[2026-06-05 00:32:00,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:00,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:32:00,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:32:00,687.687 INFO    ] No camera update needed
[2026-06-05 00:32:00,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:32:00,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:32:00,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:32:00,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:32:02,770.770 INFO    ] ================================================
[2026-06-05 00:32:02,791.791 INFO    ] Launching Daemon at Fri Jun  5 00:32:02 IST 2026
[2026-06-05 00:32:02,808.808 INFO    ] ================================================
[2026-06-05 00:32:03,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:32:03
[2026-06-05 00:32:04,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:32:04,348.348 INFO    ] Initializing speech engine...
[2026-06-05 00:32:04,357.357 INFO    ] 2026-06-05 00:32:04
[2026-06-05 00:32:04,635.635 INFO    ] 2026-06-05 00:32:04
[2026-06-05 00:32:04,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:32:04,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:32:04,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:32:05,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:32:05,098.098 INFO    ] time= 05/06/2026 00:32:05
[2026-06-05 00:32:05,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:32:05,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:32:05,242.242 INFO    ] No existing commands found in stream
[2026-06-05 00:32:10,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:32:10,258.258 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 00:32:13,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:32:13,078.078 INFO    ] Checking for system updates...
[2026-06-05 00:32:13,119.119 INFO    ] 200
[2026-06-05 00:32:13,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:13,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:32:13,180.180 INFO    ] No update needed
[2026-06-05 00:32:13,183.183 INFO    ] Checking for camera pi updates...
[2026-06-05 00:32:13,222.222 INFO    ] 200
[2026-06-05 00:32:13,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:13,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:32:13,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:32:13,329.329 INFO    ] No camera update needed
[2026-06-05 00:32:13,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:32:13,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:32:13,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:32:13,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:32:15,390.390 INFO    ] ================================================
[2026-06-05 00:32:15,405.405 INFO    ] Launching Daemon at Fri Jun  5 00:32:15 IST 2026
[2026-06-05 00:32:15,416.416 INFO    ] ================================================
[2026-06-05 00:32:16,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:32:16
[2026-06-05 00:32:16,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:32:17,033.033 INFO    ] Initializing speech engine...
[2026-06-05 00:32:17,042.042 INFO    ] 2026-06-05 00:32:17
[2026-06-05 00:32:17,327.327 INFO    ] 2026-06-05 00:32:17
[2026-06-05 00:32:17,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:32:17,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:32:17,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:32:17,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:32:17,870.870 INFO    ] time= 05/06/2026 00:32:17
[2026-06-05 00:32:17,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:32:17,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:32:18,028.028 INFO    ] No existing commands found in stream
[2026-06-05 00:32:23,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:32:23,041.041 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 00:32:25,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:32:25,738.738 INFO    ] Checking for system updates...
[2026-06-05 00:32:25,779.779 INFO    ] 200
[2026-06-05 00:32:25,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:25,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:32:25,845.845 INFO    ] No update needed
[2026-06-05 00:32:25,848.848 INFO    ] Checking for camera pi updates...
[2026-06-05 00:32:25,882.882 INFO    ] 200
[2026-06-05 00:32:25,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:25,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:32:25,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:32:25,978.978 INFO    ] No camera update needed
[2026-06-05 00:32:25,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:32:25,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:32:25,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:32:25,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:32:28,037.037 INFO    ] ================================================
[2026-06-05 00:32:28,052.052 INFO    ] Launching Daemon at Fri Jun  5 00:32:28 IST 2026
[2026-06-05 00:32:28,063.063 INFO    ] ================================================
[2026-06-05 00:32:28,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:32:28
[2026-06-05 00:32:29,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:32:29,519.519 INFO    ] Initializing speech engine...
[2026-06-05 00:32:29,528.528 INFO    ] 2026-06-05 00:32:29
[2026-06-05 00:32:29,789.789 INFO    ] 2026-06-05 00:32:29
[2026-06-05 00:32:29,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:32:30,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:32:30,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:32:30,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:32:30,270.270 INFO    ] time= 05/06/2026 00:32:30
[2026-06-05 00:32:30,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:32:30,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:32:30,460.460 INFO    ] No existing commands found in stream
[2026-06-05 00:32:35,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:32:35,488.488 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 00:32:38,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:32:38,842.842 INFO    ] Checking for system updates...
[2026-06-05 00:32:38,879.879 INFO    ] 200
[2026-06-05 00:32:38,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:38,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:32:38,937.937 INFO    ] No update needed
[2026-06-05 00:32:38,940.940 INFO    ] Checking for camera pi updates...
[2026-06-05 00:32:38,975.975 INFO    ] 200
[2026-06-05 00:32:38,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:39,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:32:39,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:32:39,071.071 INFO    ] No camera update needed
[2026-06-05 00:32:39,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:32:39,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:32:39,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:32:39,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:32:41,128.128 INFO    ] ================================================
[2026-06-05 00:32:41,143.143 INFO    ] Launching Daemon at Fri Jun  5 00:32:41 IST 2026
[2026-06-05 00:32:41,154.154 INFO    ] ================================================
[2026-06-05 00:32:41,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:32:41
[2026-06-05 00:32:42,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:32:42,617.617 INFO    ] Initializing speech engine...
[2026-06-05 00:32:42,622.622 INFO    ] 2026-06-05 00:32:42
[2026-06-05 00:32:42,882.882 INFO    ] 2026-06-05 00:32:42
[2026-06-05 00:32:42,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:32:43,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:32:43,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:32:43,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:32:43,353.353 INFO    ] time= 05/06/2026 00:32:43
[2026-06-05 00:32:43,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:32:43,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:32:43,540.540 INFO    ] No existing commands found in stream
[2026-06-05 00:32:48,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:32:48,574.574 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 00:32:49,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:32:49,315.315 INFO    ] Checking for system updates...
[2026-06-05 00:32:49,358.358 INFO    ] 200
[2026-06-05 00:32:49,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:49,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:32:49,415.415 INFO    ] No update needed
[2026-06-05 00:32:49,418.418 INFO    ] Checking for camera pi updates...
[2026-06-05 00:32:49,453.453 INFO    ] 200
[2026-06-05 00:32:49,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:32:49,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:32:49,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:32:49,552.552 INFO    ] No camera update needed
[2026-06-05 00:32:49,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:32:49,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:32:49,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:32:49,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:32:51,609.609 INFO    ] ================================================
[2026-06-05 00:32:51,624.624 INFO    ] Launching Daemon at Fri Jun  5 00:32:51 IST 2026
[2026-06-05 00:32:51,634.634 INFO    ] ================================================
[2026-06-05 00:32:52,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:32:52
[2026-06-05 00:32:52,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:32:53,112.112 INFO    ] Initializing speech engine...
[2026-06-05 00:32:53,123.123 INFO    ] 2026-06-05 00:32:53
[2026-06-05 00:32:53,385.385 INFO    ] 2026-06-05 00:32:53
[2026-06-05 00:32:53,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:32:53,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:32:53,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:32:53,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:32:53,870.870 INFO    ] time= 05/06/2026 00:32:53
[2026-06-05 00:32:53,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:32:53,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:32:54,059.059 INFO    ] No existing commands found in stream
[2026-06-05 00:32:59,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:32:59,095.095 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 00:33:02,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:33:02,722.722 INFO    ] Checking for system updates...
[2026-06-05 00:33:02,780.780 INFO    ] 200
[2026-06-05 00:33:02,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:02,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:33:02,910.910 INFO    ] No update needed
[2026-06-05 00:33:02,914.914 INFO    ] Checking for camera pi updates...
[2026-06-05 00:33:02,958.958 INFO    ] 200
[2026-06-05 00:33:02,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:03,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:33:03,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:33:03,064.064 INFO    ] No camera update needed
[2026-06-05 00:33:03,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:33:03,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:33:03,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:33:03,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:33:05,129.129 INFO    ] ================================================
[2026-06-05 00:33:05,144.144 INFO    ] Launching Daemon at Fri Jun  5 00:33:05 IST 2026
[2026-06-05 00:33:05,155.155 INFO    ] ================================================
[2026-06-05 00:33:05,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:33:05
[2026-06-05 00:33:06,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:33:06,680.680 INFO    ] Initializing speech engine...
[2026-06-05 00:33:06,695.695 INFO    ] 2026-06-05 00:33:06
[2026-06-05 00:33:06,981.981 INFO    ] 2026-06-05 00:33:06
[2026-06-05 00:33:07,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:33:07,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:33:07,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:33:07,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:33:07,536.536 INFO    ] time= 05/06/2026 00:33:07
[2026-06-05 00:33:07,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:33:07,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:33:07,682.682 INFO    ] No existing commands found in stream
[2026-06-05 00:33:12,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:33:12,719.719 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 00:33:13,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:33:13,658.658 INFO    ] Checking for system updates...
[2026-06-05 00:33:13,696.696 INFO    ] 200
[2026-06-05 00:33:13,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:13,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:33:13,755.755 INFO    ] No update needed
[2026-06-05 00:33:13,758.758 INFO    ] Checking for camera pi updates...
[2026-06-05 00:33:13,797.797 INFO    ] 200
[2026-06-05 00:33:13,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:13,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:33:13,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:33:13,894.894 INFO    ] No camera update needed
[2026-06-05 00:33:13,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:33:13,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:33:13,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:33:13,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:33:15,955.955 INFO    ] ================================================
[2026-06-05 00:33:15,971.971 INFO    ] Launching Daemon at Fri Jun  5 00:33:15 IST 2026
[2026-06-05 00:33:15,981.981 INFO    ] ================================================
[2026-06-05 00:33:16,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:33:16
[2026-06-05 00:33:17,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:33:17,405.405 INFO    ] Initializing speech engine...
[2026-06-05 00:33:17,414.414 INFO    ] 2026-06-05 00:33:17
[2026-06-05 00:33:17,659.659 INFO    ] 2026-06-05 00:33:17
[2026-06-05 00:33:17,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:33:17,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:33:17,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:33:18,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:33:18,133.133 INFO    ] time= 05/06/2026 00:33:18
[2026-06-05 00:33:18,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:33:18,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:33:18,277.277 INFO    ] No existing commands found in stream
[2026-06-05 00:33:23,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:33:23,292.292 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 00:33:25,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:33:25,958.958 INFO    ] Checking for system updates...
[2026-06-05 00:33:25,998.998 INFO    ] 200
[2026-06-05 00:33:26,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:26,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:33:26,058.058 INFO    ] No update needed
[2026-06-05 00:33:26,060.060 INFO    ] Checking for camera pi updates...
[2026-06-05 00:33:26,098.098 INFO    ] 200
[2026-06-05 00:33:26,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:26,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:33:26,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:33:26,291.291 INFO    ] No camera update needed
[2026-06-05 00:33:26,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:33:26,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:33:26,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:33:26,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:33:28,347.347 INFO    ] ================================================
[2026-06-05 00:33:28,363.363 INFO    ] Launching Daemon at Fri Jun  5 00:33:28 IST 2026
[2026-06-05 00:33:28,374.374 INFO    ] ================================================
[2026-06-05 00:33:28,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:33:28
[2026-06-05 00:33:29,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:33:29,858.858 INFO    ] Initializing speech engine...
[2026-06-05 00:33:29,882.882 INFO    ] 2026-06-05 00:33:29
[2026-06-05 00:33:30,149.149 INFO    ] 2026-06-05 00:33:30
[2026-06-05 00:33:30,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:33:30,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:33:30,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:33:30,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:33:30,531.531 INFO    ] time= 05/06/2026 00:33:30
[2026-06-05 00:33:30,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:33:30,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:33:30,692.692 INFO    ] No existing commands found in stream
[2026-06-05 00:33:35,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:33:35,726.726 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 00:33:38,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:33:38,613.613 INFO    ] Checking for system updates...
[2026-06-05 00:33:38,650.650 INFO    ] 200
[2026-06-05 00:33:38,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:38,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:33:38,718.718 INFO    ] No update needed
[2026-06-05 00:33:38,721.721 INFO    ] Checking for camera pi updates...
[2026-06-05 00:33:38,756.756 INFO    ] 200
[2026-06-05 00:33:38,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:38,801.801 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:33:38,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:33:38,856.856 INFO    ] No camera update needed
[2026-06-05 00:33:38,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:33:38,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:33:38,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:33:38,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:33:40,917.917 INFO    ] ================================================
[2026-06-05 00:33:40,933.933 INFO    ] Launching Daemon at Fri Jun  5 00:33:40 IST 2026
[2026-06-05 00:33:40,944.944 INFO    ] ================================================
[2026-06-05 00:33:41,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:33:41
[2026-06-05 00:33:42,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:33:42,443.443 INFO    ] Initializing speech engine...
[2026-06-05 00:33:42,452.452 INFO    ] 2026-06-05 00:33:42
[2026-06-05 00:33:42,714.714 INFO    ] 2026-06-05 00:33:42
[2026-06-05 00:33:42,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:33:42,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:33:43,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:33:43,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:33:43,176.176 INFO    ] time= 05/06/2026 00:33:43
[2026-06-05 00:33:43,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:33:43,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:33:43,320.320 INFO    ] No existing commands found in stream
[2026-06-05 00:33:48,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:33:48,336.336 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 00:33:50,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:33:50,363.363 INFO    ] Checking for system updates...
[2026-06-05 00:33:50,403.403 INFO    ] 200
[2026-06-05 00:33:50,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:50,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:33:50,461.461 INFO    ] No update needed
[2026-06-05 00:33:50,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 00:33:50,497.497 INFO    ] 200
[2026-06-05 00:33:50,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:33:50,540.540 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:33:50,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:33:50,605.605 INFO    ] No camera update needed
[2026-06-05 00:33:50,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:33:50,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:33:50,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:33:50,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:33:52,662.662 INFO    ] ================================================
[2026-06-05 00:33:52,684.684 INFO    ] Launching Daemon at Fri Jun  5 00:33:52 IST 2026
[2026-06-05 00:33:52,695.695 INFO    ] ================================================
[2026-06-05 00:33:53,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:33:53
[2026-06-05 00:33:53,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:33:54,294.294 INFO    ] Initializing speech engine...
[2026-06-05 00:33:54,308.308 INFO    ] 2026-06-05 00:33:54
[2026-06-05 00:33:54,591.591 INFO    ] 2026-06-05 00:33:54
[2026-06-05 00:33:54,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:33:54,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:33:54,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:33:55,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:33:55,131.131 INFO    ] time= 05/06/2026 00:33:55
[2026-06-05 00:33:55,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:33:55,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:33:55,285.285 INFO    ] No existing commands found in stream
[2026-06-05 00:34:00,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:34:00,304.304 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 00:34:01,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:34:01,884.884 INFO    ] Checking for system updates...
[2026-06-05 00:34:01,930.930 INFO    ] 200
[2026-06-05 00:34:01,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:02,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:34:02,004.004 INFO    ] No update needed
[2026-06-05 00:34:02,007.007 INFO    ] Checking for camera pi updates...
[2026-06-05 00:34:02,052.052 INFO    ] 200
[2026-06-05 00:34:02,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:02,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:34:02,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:34:02,165.165 INFO    ] No camera update needed
[2026-06-05 00:34:02,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:34:02,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:34:02,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:34:02,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:34:04,231.231 INFO    ] ================================================
[2026-06-05 00:34:04,247.247 INFO    ] Launching Daemon at Fri Jun  5 00:34:04 IST 2026
[2026-06-05 00:34:04,257.257 INFO    ] ================================================
[2026-06-05 00:34:04,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:34:04
[2026-06-05 00:34:05,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:34:05,718.718 INFO    ] Initializing speech engine...
[2026-06-05 00:34:05,723.723 INFO    ] 2026-06-05 00:34:05
[2026-06-05 00:34:05,985.985 INFO    ] 2026-06-05 00:34:05
[2026-06-05 00:34:06,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:34:06,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:34:06,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:34:06,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:34:06,367.367 INFO    ] time= 05/06/2026 00:34:06
[2026-06-05 00:34:06,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:34:06,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:34:06,534.534 INFO    ] No existing commands found in stream
[2026-06-05 00:34:11,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:34:11,567.567 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 00:34:12,857.857 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:34:12,859.859 INFO    ] Checking for system updates...
[2026-06-05 00:34:12,896.896 INFO    ] 200
[2026-06-05 00:34:12,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:12,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:34:12,955.955 INFO    ] No update needed
[2026-06-05 00:34:12,958.958 INFO    ] Checking for camera pi updates...
[2026-06-05 00:34:13,002.002 INFO    ] 200
[2026-06-05 00:34:13,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:13,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:34:13,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:34:13,093.093 INFO    ] No camera update needed
[2026-06-05 00:34:13,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:34:13,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:34:13,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:34:13,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:34:15,153.153 INFO    ] ================================================
[2026-06-05 00:34:15,168.168 INFO    ] Launching Daemon at Fri Jun  5 00:34:15 IST 2026
[2026-06-05 00:34:15,179.179 INFO    ] ================================================
[2026-06-05 00:34:15,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:34:15
[2026-06-05 00:34:16,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:34:16,596.596 INFO    ] Initializing speech engine...
[2026-06-05 00:34:16,602.602 INFO    ] 2026-06-05 00:34:16
[2026-06-05 00:34:16,902.902 INFO    ] 2026-06-05 00:34:16
[2026-06-05 00:34:16,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:34:17,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:34:17,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:34:17,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:34:17,303.303 INFO    ] time= 05/06/2026 00:34:17
[2026-06-05 00:34:17,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:34:17,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:34:17,469.469 INFO    ] No existing commands found in stream
[2026-06-05 00:34:22,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:34:22,507.507 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 00:34:25,136.136 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:34:25,138.138 INFO    ] Checking for system updates...
[2026-06-05 00:34:25,177.177 INFO    ] 200
[2026-06-05 00:34:25,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:25,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:34:25,235.235 INFO    ] No update needed
[2026-06-05 00:34:25,238.238 INFO    ] Checking for camera pi updates...
[2026-06-05 00:34:25,271.271 INFO    ] 200
[2026-06-05 00:34:25,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:25,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:34:25,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:34:25,364.364 INFO    ] No camera update needed
[2026-06-05 00:34:25,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:34:25,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:34:25,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:34:25,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:34:27,422.422 INFO    ] ================================================
[2026-06-05 00:34:27,439.439 INFO    ] Launching Daemon at Fri Jun  5 00:34:27 IST 2026
[2026-06-05 00:34:27,450.450 INFO    ] ================================================
[2026-06-05 00:34:28,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:34:28
[2026-06-05 00:34:28,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:34:28,876.876 INFO    ] Initializing speech engine...
[2026-06-05 00:34:28,884.884 INFO    ] 2026-06-05 00:34:28
[2026-06-05 00:34:29,131.131 INFO    ] 2026-06-05 00:34:29
[2026-06-05 00:34:29,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:34:29,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:34:29,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:34:29,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:34:29,507.507 INFO    ] time= 05/06/2026 00:34:29
[2026-06-05 00:34:29,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:34:29,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:34:29,689.689 INFO    ] No existing commands found in stream
[2026-06-05 00:34:34,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:34:34,719.719 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 00:34:36,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:34:36,780.780 INFO    ] Checking for system updates...
[2026-06-05 00:34:36,823.823 INFO    ] 200
[2026-06-05 00:34:36,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:36,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:34:36,882.882 INFO    ] No update needed
[2026-06-05 00:34:36,884.884 INFO    ] Checking for camera pi updates...
[2026-06-05 00:34:36,923.923 INFO    ] 200
[2026-06-05 00:34:36,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:36,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:34:37,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:34:37,013.013 INFO    ] No camera update needed
[2026-06-05 00:34:37,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:34:37,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:34:37,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:34:37,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:34:39,072.072 INFO    ] ================================================
[2026-06-05 00:34:39,089.089 INFO    ] Launching Daemon at Fri Jun  5 00:34:39 IST 2026
[2026-06-05 00:34:39,102.102 INFO    ] ================================================
[2026-06-05 00:34:39,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:34:39
[2026-06-05 00:34:40,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:34:40,591.591 INFO    ] Initializing speech engine...
[2026-06-05 00:34:40,600.600 INFO    ] 2026-06-05 00:34:40
[2026-06-05 00:34:40,917.917 INFO    ] 2026-06-05 00:34:40
[2026-06-05 00:34:40,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:34:41,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:34:41,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:34:41,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:34:41,276.276 INFO    ] time= 05/06/2026 00:34:41
[2026-06-05 00:34:41,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:34:41,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:34:41,359.359 INFO    ] No existing commands found in stream
[2026-06-05 00:34:46,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:34:46,372.372 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 00:34:49,581.581 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:34:49,583.583 INFO    ] Checking for system updates...
[2026-06-05 00:34:49,626.626 INFO    ] 200
[2026-06-05 00:34:49,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:49,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:34:49,684.684 INFO    ] No update needed
[2026-06-05 00:34:49,686.686 INFO    ] Checking for camera pi updates...
[2026-06-05 00:34:49,721.721 INFO    ] 200
[2026-06-05 00:34:49,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:34:49,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:34:49,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:34:49,819.819 INFO    ] No camera update needed
[2026-06-05 00:34:49,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:34:49,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:34:49,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:34:49,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:34:51,875.875 INFO    ] ================================================
[2026-06-05 00:34:51,890.890 INFO    ] Launching Daemon at Fri Jun  5 00:34:51 IST 2026
[2026-06-05 00:34:51,902.902 INFO    ] ================================================
[2026-06-05 00:34:52,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:34:52
[2026-06-05 00:34:53,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:34:53,330.330 INFO    ] Initializing speech engine...
[2026-06-05 00:34:53,345.345 INFO    ] 2026-06-05 00:34:53
[2026-06-05 00:34:53,630.630 INFO    ] 2026-06-05 00:34:53
[2026-06-05 00:34:53,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:34:53,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:34:53,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:34:54,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:34:54,011.011 INFO    ] time= 05/06/2026 00:34:54
[2026-06-05 00:34:54,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:34:54,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:34:54,137.137 INFO    ] No existing commands found in stream
[2026-06-05 00:34:59,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:34:59,152.152 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 00:35:02,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:35:02,557.557 INFO    ] Checking for system updates...
[2026-06-05 00:35:02,601.601 INFO    ] 200
[2026-06-05 00:35:02,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:02,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:35:02,679.679 INFO    ] No update needed
[2026-06-05 00:35:02,683.683 INFO    ] Checking for camera pi updates...
[2026-06-05 00:35:02,728.728 INFO    ] 200
[2026-06-05 00:35:02,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:02,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:35:02,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:35:02,833.833 INFO    ] No camera update needed
[2026-06-05 00:35:02,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:35:02,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:35:02,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:35:02,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:35:04,912.912 INFO    ] ================================================
[2026-06-05 00:35:04,927.927 INFO    ] Launching Daemon at Fri Jun  5 00:35:04 IST 2026
[2026-06-05 00:35:04,938.938 INFO    ] ================================================
[2026-06-05 00:35:05,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:35:05
[2026-06-05 00:35:06,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:35:06,416.416 INFO    ] Initializing speech engine...
[2026-06-05 00:35:06,432.432 INFO    ] 2026-06-05 00:35:06
[2026-06-05 00:35:06,712.712 INFO    ] 2026-06-05 00:35:06
[2026-06-05 00:35:06,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:35:06,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:35:07,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:35:07,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:35:07,158.158 INFO    ] time= 05/06/2026 00:35:07
[2026-06-05 00:35:07,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:35:07,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:35:07,349.349 INFO    ] No existing commands found in stream
[2026-06-05 00:35:12,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:35:12,368.368 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 00:35:14,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:35:14,206.206 INFO    ] Checking for system updates...
[2026-06-05 00:35:14,243.243 INFO    ] 200
[2026-06-05 00:35:14,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:14,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:35:14,303.303 INFO    ] No update needed
[2026-06-05 00:35:14,305.305 INFO    ] Checking for camera pi updates...
[2026-06-05 00:35:14,339.339 INFO    ] 200
[2026-06-05 00:35:14,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:14,383.383 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:35:14,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:35:14,431.431 INFO    ] No camera update needed
[2026-06-05 00:35:14,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:35:14,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:35:14,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:35:14,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:35:16,489.489 INFO    ] ================================================
[2026-06-05 00:35:16,504.504 INFO    ] Launching Daemon at Fri Jun  5 00:35:16 IST 2026
[2026-06-05 00:35:16,515.515 INFO    ] ================================================
[2026-06-05 00:35:17,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:35:17
[2026-06-05 00:35:17,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:35:17,933.933 INFO    ] Initializing speech engine...
[2026-06-05 00:35:17,942.942 INFO    ] 2026-06-05 00:35:17
[2026-06-05 00:35:18,196.196 INFO    ] 2026-06-05 00:35:18
[2026-06-05 00:35:18,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:35:18,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:35:18,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:35:18,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:35:18,606.606 INFO    ] time= 05/06/2026 00:35:18
[2026-06-05 00:35:18,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:35:18,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:35:18,690.690 INFO    ] No existing commands found in stream
[2026-06-05 00:35:23,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:35:23,704.704 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 00:35:27,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:35:27,823.823 INFO    ] Checking for system updates...
[2026-06-05 00:35:27,860.860 INFO    ] 200
[2026-06-05 00:35:27,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:27,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:35:27,917.917 INFO    ] No update needed
[2026-06-05 00:35:27,920.920 INFO    ] Checking for camera pi updates...
[2026-06-05 00:35:27,957.957 INFO    ] 200
[2026-06-05 00:35:27,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:28,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:35:28,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:35:28,048.048 INFO    ] No camera update needed
[2026-06-05 00:35:28,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:35:28,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:35:28,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:35:28,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:35:30,107.107 INFO    ] ================================================
[2026-06-05 00:35:30,123.123 INFO    ] Launching Daemon at Fri Jun  5 00:35:30 IST 2026
[2026-06-05 00:35:30,134.134 INFO    ] ================================================
[2026-06-05 00:35:30,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:35:30
[2026-06-05 00:35:31,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:35:31,580.580 INFO    ] Initializing speech engine...
[2026-06-05 00:35:31,597.597 INFO    ] 2026-06-05 00:35:31
[2026-06-05 00:35:31,870.870 INFO    ] 2026-06-05 00:35:31
[2026-06-05 00:35:31,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:35:32,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:35:32,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:35:32,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:35:32,269.269 INFO    ] time= 05/06/2026 00:35:32
[2026-06-05 00:35:32,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:35:32,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:35:32,439.439 INFO    ] No existing commands found in stream
[2026-06-05 00:35:37,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:35:37,472.472 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 00:35:40,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:35:40,607.607 INFO    ] Checking for system updates...
[2026-06-05 00:35:40,643.643 INFO    ] 200
[2026-06-05 00:35:40,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:40,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:35:40,702.702 INFO    ] No update needed
[2026-06-05 00:35:40,704.704 INFO    ] Checking for camera pi updates...
[2026-06-05 00:35:40,738.738 INFO    ] 200
[2026-06-05 00:35:40,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:40,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:35:40,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:35:40,828.828 INFO    ] No camera update needed
[2026-06-05 00:35:40,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:35:40,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:35:40,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:35:40,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:35:42,882.882 INFO    ] ================================================
[2026-06-05 00:35:42,898.898 INFO    ] Launching Daemon at Fri Jun  5 00:35:42 IST 2026
[2026-06-05 00:35:42,910.910 INFO    ] ================================================
[2026-06-05 00:35:43,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:35:43
[2026-06-05 00:35:44,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:35:44,367.367 INFO    ] Initializing speech engine...
[2026-06-05 00:35:44,380.380 INFO    ] 2026-06-05 00:35:44
[2026-06-05 00:35:44,649.649 INFO    ] 2026-06-05 00:35:44
[2026-06-05 00:35:44,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:35:44,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:35:44,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:35:45,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:35:45,048.048 INFO    ] time= 05/06/2026 00:35:45
[2026-06-05 00:35:45,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:35:45,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:35:45,131.131 INFO    ] No existing commands found in stream
[2026-06-05 00:35:50,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:35:50,147.147 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 00:35:53,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:35:53,881.881 INFO    ] Checking for system updates...
[2026-06-05 00:35:53,917.917 INFO    ] 200
[2026-06-05 00:35:53,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:53,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:35:53,974.974 INFO    ] No update needed
[2026-06-05 00:35:53,977.977 INFO    ] Checking for camera pi updates...
[2026-06-05 00:35:54,011.011 INFO    ] 200
[2026-06-05 00:35:54,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:35:54,053.053 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:35:54,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:35:54,105.105 INFO    ] No camera update needed
[2026-06-05 00:35:54,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:35:54,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:35:54,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:35:54,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:35:56,160.160 INFO    ] ================================================
[2026-06-05 00:35:56,175.175 INFO    ] Launching Daemon at Fri Jun  5 00:35:56 IST 2026
[2026-06-05 00:35:56,187.187 INFO    ] ================================================
[2026-06-05 00:35:56,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:35:56
[2026-06-05 00:35:57,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:35:57,632.632 INFO    ] Initializing speech engine...
[2026-06-05 00:35:57,639.639 INFO    ] 2026-06-05 00:35:57
[2026-06-05 00:35:57,897.897 INFO    ] 2026-06-05 00:35:57
[2026-06-05 00:35:57,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:35:58,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:35:58,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:35:58,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:35:58,356.356 INFO    ] time= 05/06/2026 00:35:58
[2026-06-05 00:35:58,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:35:58,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:35:58,565.565 INFO    ] No existing commands found in stream
[2026-06-05 00:36:03,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:36:03,595.595 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 00:36:05,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:36:05,831.831 INFO    ] Checking for system updates...
[2026-06-05 00:36:05,868.868 INFO    ] 200
[2026-06-05 00:36:05,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:05,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:36:05,926.926 INFO    ] No update needed
[2026-06-05 00:36:05,928.928 INFO    ] Checking for camera pi updates...
[2026-06-05 00:36:05,962.962 INFO    ] 200
[2026-06-05 00:36:05,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:06,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:36:06,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:36:06,052.052 INFO    ] No camera update needed
[2026-06-05 00:36:06,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:36:06,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:36:06,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:36:06,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:36:08,108.108 INFO    ] ================================================
[2026-06-05 00:36:08,123.123 INFO    ] Launching Daemon at Fri Jun  5 00:36:08 IST 2026
[2026-06-05 00:36:08,135.135 INFO    ] ================================================
[2026-06-05 00:36:08,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:36:08
[2026-06-05 00:36:09,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:36:09,565.565 INFO    ] Initializing speech engine...
[2026-06-05 00:36:09,581.581 INFO    ] 2026-06-05 00:36:09
[2026-06-05 00:36:09,853.853 INFO    ] 2026-06-05 00:36:09
[2026-06-05 00:36:09,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:36:10,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:36:10,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:36:10,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:36:10,203.203 INFO    ] time= 05/06/2026 00:36:10
[2026-06-05 00:36:10,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:36:10,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:36:10,307.307 INFO    ] No existing commands found in stream
[2026-06-05 00:36:15,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:36:15,322.322 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 00:36:18,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:36:18,937.937 INFO    ] Checking for system updates...
[2026-06-05 00:36:18,973.973 INFO    ] 200
[2026-06-05 00:36:18,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:19,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:36:19,036.036 INFO    ] No update needed
[2026-06-05 00:36:19,038.038 INFO    ] Checking for camera pi updates...
[2026-06-05 00:36:19,072.072 INFO    ] 200
[2026-06-05 00:36:19,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:19,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:36:19,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:36:19,159.159 INFO    ] No camera update needed
[2026-06-05 00:36:19,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:36:19,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:36:19,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:36:19,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:36:21,214.214 INFO    ] ================================================
[2026-06-05 00:36:21,230.230 INFO    ] Launching Daemon at Fri Jun  5 00:36:21 IST 2026
[2026-06-05 00:36:21,240.240 INFO    ] ================================================
[2026-06-05 00:36:21,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:36:21
[2026-06-05 00:36:22,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:36:22,796.796 INFO    ] Initializing speech engine...
[2026-06-05 00:36:22,803.803 INFO    ] 2026-06-05 00:36:22
[2026-06-05 00:36:23,070.070 INFO    ] 2026-06-05 00:36:23
[2026-06-05 00:36:23,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:36:23,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:36:23,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:36:23,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:36:23,545.545 INFO    ] time= 05/06/2026 00:36:23
[2026-06-05 00:36:23,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:36:23,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:36:23,756.756 INFO    ] No existing commands found in stream
[2026-06-05 00:36:28,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:36:28,790.790 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 00:36:32,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:36:32,608.608 INFO    ] Checking for system updates...
[2026-06-05 00:36:32,649.649 INFO    ] 200
[2026-06-05 00:36:32,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:32,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:36:32,719.719 INFO    ] No update needed
[2026-06-05 00:36:32,722.722 INFO    ] Checking for camera pi updates...
[2026-06-05 00:36:32,763.763 INFO    ] 200
[2026-06-05 00:36:32,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:32,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:36:32,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:36:32,846.846 INFO    ] No camera update needed
[2026-06-05 00:36:32,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:36:32,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:36:32,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:36:32,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:36:34,901.901 INFO    ] ================================================
[2026-06-05 00:36:34,916.916 INFO    ] Launching Daemon at Fri Jun  5 00:36:34 IST 2026
[2026-06-05 00:36:34,928.928 INFO    ] ================================================
[2026-06-05 00:36:35,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:36:35
[2026-06-05 00:36:36,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:36:36,494.494 INFO    ] Initializing speech engine...
[2026-06-05 00:36:36,502.502 INFO    ] 2026-06-05 00:36:36
[2026-06-05 00:36:36,787.787 INFO    ] 2026-06-05 00:36:36
[2026-06-05 00:36:36,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:36:37,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:36:37,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:36:37,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:36:37,333.333 INFO    ] time= 05/06/2026 00:36:37
[2026-06-05 00:36:37,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:36:37,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:36:37,466.466 INFO    ] No existing commands found in stream
[2026-06-05 00:36:42,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:36:42,500.500 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 00:36:44,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:36:44,260.260 INFO    ] Checking for system updates...
[2026-06-05 00:36:44,300.300 INFO    ] 200
[2026-06-05 00:36:44,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:44,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:36:44,360.360 INFO    ] No update needed
[2026-06-05 00:36:44,362.362 INFO    ] Checking for camera pi updates...
[2026-06-05 00:36:44,400.400 INFO    ] 200
[2026-06-05 00:36:44,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:44,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:36:44,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:36:44,502.502 INFO    ] No camera update needed
[2026-06-05 00:36:44,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:36:44,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:36:44,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:36:44,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:36:46,557.557 INFO    ] ================================================
[2026-06-05 00:36:46,572.572 INFO    ] Launching Daemon at Fri Jun  5 00:36:46 IST 2026
[2026-06-05 00:36:46,584.584 INFO    ] ================================================
[2026-06-05 00:36:47,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:36:47
[2026-06-05 00:36:47,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:36:48,016.016 INFO    ] Initializing speech engine...
[2026-06-05 00:36:48,025.025 INFO    ] 2026-06-05 00:36:48
[2026-06-05 00:36:48,272.272 INFO    ] 2026-06-05 00:36:48
[2026-06-05 00:36:48,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:36:48,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:36:48,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:36:48,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:36:48,762.762 INFO    ] time= 05/06/2026 00:36:48
[2026-06-05 00:36:48,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:36:48,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:36:48,910.910 INFO    ] No existing commands found in stream
[2026-06-05 00:36:53,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:36:53,926.926 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 00:36:58,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:36:58,022.022 INFO    ] Checking for system updates...
[2026-06-05 00:36:58,057.057 INFO    ] 200
[2026-06-05 00:36:58,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:58,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:36:58,115.115 INFO    ] No update needed
[2026-06-05 00:36:58,117.117 INFO    ] Checking for camera pi updates...
[2026-06-05 00:36:58,152.152 INFO    ] 200
[2026-06-05 00:36:58,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:36:58,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:36:58,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:36:58,247.247 INFO    ] No camera update needed
[2026-06-05 00:36:58,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:36:58,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:36:58,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:36:58,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:37:00,303.303 INFO    ] ================================================
[2026-06-05 00:37:00,322.322 INFO    ] Launching Daemon at Fri Jun  5 00:37:00 IST 2026
[2026-06-05 00:37:00,333.333 INFO    ] ================================================
[2026-06-05 00:37:00,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:37:00
[2026-06-05 00:37:01,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:37:02,016.016 INFO    ] Initializing speech engine...
[2026-06-05 00:37:02,036.036 INFO    ] 2026-06-05 00:37:02
[2026-06-05 00:37:02,372.372 INFO    ] 2026-06-05 00:37:02
[2026-06-05 00:37:02,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:37:02,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:37:02,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:37:02,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:37:02,815.815 INFO    ] time= 05/06/2026 00:37:02
[2026-06-05 00:37:02,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:37:02,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:37:02,990.990 INFO    ] No existing commands found in stream
[2026-06-05 00:37:08,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:37:08,017.017 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 00:37:08,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:37:08,562.562 INFO    ] Checking for system updates...
[2026-06-05 00:37:08,606.606 INFO    ] 200
[2026-06-05 00:37:08,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:08,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:08,705.705 INFO    ] No update needed
[2026-06-05 00:37:08,707.707 INFO    ] Checking for camera pi updates...
[2026-06-05 00:37:08,750.750 INFO    ] 200
[2026-06-05 00:37:08,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:08,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:37:08,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:08,853.853 INFO    ] No camera update needed
[2026-06-05 00:37:08,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:37:08,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:37:08,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:37:08,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:37:10,909.909 INFO    ] ================================================
[2026-06-05 00:37:10,924.924 INFO    ] Launching Daemon at Fri Jun  5 00:37:10 IST 2026
[2026-06-05 00:37:10,935.935 INFO    ] ================================================
[2026-06-05 00:37:11,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:37:11
[2026-06-05 00:37:12,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:37:12,416.416 INFO    ] Initializing speech engine...
[2026-06-05 00:37:12,422.422 INFO    ] 2026-06-05 00:37:12
[2026-06-05 00:37:12,685.685 INFO    ] 2026-06-05 00:37:12
[2026-06-05 00:37:12,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:37:12,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:37:12,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:37:13,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:37:13,087.087 INFO    ] time= 05/06/2026 00:37:13
[2026-06-05 00:37:13,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:37:13,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:37:13,171.171 INFO    ] No existing commands found in stream
[2026-06-05 00:37:18,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:37:18,187.187 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 00:37:21,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:37:21,420.420 INFO    ] Checking for system updates...
[2026-06-05 00:37:21,456.456 INFO    ] 200
[2026-06-05 00:37:21,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:21,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:21,516.516 INFO    ] No update needed
[2026-06-05 00:37:21,518.518 INFO    ] Checking for camera pi updates...
[2026-06-05 00:37:21,556.556 INFO    ] 200
[2026-06-05 00:37:21,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:21,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:37:21,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:21,655.655 INFO    ] No camera update needed
[2026-06-05 00:37:21,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:37:21,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:37:21,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:37:21,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:37:23,710.710 INFO    ] ================================================
[2026-06-05 00:37:23,725.725 INFO    ] Launching Daemon at Fri Jun  5 00:37:23 IST 2026
[2026-06-05 00:37:23,736.736 INFO    ] ================================================
[2026-06-05 00:37:24,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:37:24
[2026-06-05 00:37:24,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:37:25,220.220 INFO    ] Initializing speech engine...
[2026-06-05 00:37:25,228.228 INFO    ] 2026-06-05 00:37:25
[2026-06-05 00:37:25,488.488 INFO    ] 2026-06-05 00:37:25
[2026-06-05 00:37:25,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:37:25,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:37:25,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:37:25,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:37:25,964.964 INFO    ] time= 05/06/2026 00:37:25
[2026-06-05 00:37:26,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:37:26,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:37:26,181.181 INFO    ] No existing commands found in stream
[2026-06-05 00:37:31,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:37:31,205.205 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-05 00:37:34,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:37:34,344.344 INFO    ] Checking for system updates...
[2026-06-05 00:37:34,384.384 INFO    ] 200
[2026-06-05 00:37:34,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:34,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:34,443.443 INFO    ] No update needed
[2026-06-05 00:37:34,446.446 INFO    ] Checking for camera pi updates...
[2026-06-05 00:37:34,484.484 INFO    ] 200
[2026-06-05 00:37:34,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:34,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:37:34,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:34,672.672 INFO    ] No camera update needed
[2026-06-05 00:37:34,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:37:34,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:37:34,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:37:34,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:37:36,730.730 INFO    ] ================================================
[2026-06-05 00:37:36,747.747 INFO    ] Launching Daemon at Fri Jun  5 00:37:36 IST 2026
[2026-06-05 00:37:36,757.757 INFO    ] ================================================
[2026-06-05 00:37:37,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:37:37
[2026-06-05 00:37:37,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:37:38,209.209 INFO    ] Initializing speech engine...
[2026-06-05 00:37:38,217.217 INFO    ] 2026-06-05 00:37:38
[2026-06-05 00:37:38,476.476 INFO    ] 2026-06-05 00:37:38
[2026-06-05 00:37:38,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:37:38,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:37:38,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:37:38,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:37:38,957.957 INFO    ] time= 05/06/2026 00:37:38
[2026-06-05 00:37:39,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:37:39,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:37:39,147.147 INFO    ] No existing commands found in stream
[2026-06-05 00:37:44,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:37:44,180.180 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 00:37:47,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:37:47,220.220 INFO    ] Checking for system updates...
[2026-06-05 00:37:47,261.261 INFO    ] 200
[2026-06-05 00:37:47,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:47,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:47,320.320 INFO    ] No update needed
[2026-06-05 00:37:47,322.322 INFO    ] Checking for camera pi updates...
[2026-06-05 00:37:47,357.357 INFO    ] 200
[2026-06-05 00:37:47,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:47,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:37:47,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:47,457.457 INFO    ] No camera update needed
[2026-06-05 00:37:47,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:37:47,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:37:47,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:37:47,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:37:49,514.514 INFO    ] ================================================
[2026-06-05 00:37:49,530.530 INFO    ] Launching Daemon at Fri Jun  5 00:37:49 IST 2026
[2026-06-05 00:37:49,541.541 INFO    ] ================================================
[2026-06-05 00:37:50,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:37:50
[2026-06-05 00:37:50,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:37:50,939.939 INFO    ] Initializing speech engine...
[2026-06-05 00:37:50,947.947 INFO    ] 2026-06-05 00:37:50
[2026-06-05 00:37:51,222.222 INFO    ] 2026-06-05 00:37:51
[2026-06-05 00:37:51,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:37:51,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:37:51,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:37:51,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:37:51,657.657 INFO    ] time= 05/06/2026 00:37:51
[2026-06-05 00:37:51,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:37:51,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:37:51,825.825 INFO    ] No existing commands found in stream
[2026-06-05 00:37:56,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:37:56,843.843 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 00:37:58,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:37:58,083.083 INFO    ] Checking for system updates...
[2026-06-05 00:37:58,120.120 INFO    ] 200
[2026-06-05 00:37:58,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:58,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:58,177.177 INFO    ] No update needed
[2026-06-05 00:37:58,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 00:37:58,214.214 INFO    ] 200
[2026-06-05 00:37:58,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:37:58,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:37:58,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:37:58,316.316 INFO    ] No camera update needed
[2026-06-05 00:37:58,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:37:58,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:37:58,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:37:58,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:38:00,370.370 INFO    ] ================================================
[2026-06-05 00:38:00,386.386 INFO    ] Launching Daemon at Fri Jun  5 00:38:00 IST 2026
[2026-06-05 00:38:00,397.397 INFO    ] ================================================
[2026-06-05 00:38:01,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:38:01
[2026-06-05 00:38:01,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:38:02,210.210 INFO    ] Initializing speech engine...
[2026-06-05 00:38:02,225.225 INFO    ] 2026-06-05 00:38:02
[2026-06-05 00:38:02,516.516 INFO    ] 2026-06-05 00:38:02
[2026-06-05 00:38:02,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:38:02,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:38:02,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:38:02,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:38:02,919.919 INFO    ] time= 05/06/2026 00:38:02
[2026-06-05 00:38:02,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:38:02,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:38:03,037.037 INFO    ] No existing commands found in stream
[2026-06-05 00:38:08,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:38:08,050.050 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 00:38:10,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:38:10,030.030 INFO    ] Checking for system updates...
[2026-06-05 00:38:10,066.066 INFO    ] 200
[2026-06-05 00:38:10,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:10,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:38:10,127.127 INFO    ] No update needed
[2026-06-05 00:38:10,130.130 INFO    ] Checking for camera pi updates...
[2026-06-05 00:38:10,164.164 INFO    ] 200
[2026-06-05 00:38:10,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:10,207.207 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:38:10,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:38:10,256.256 INFO    ] No camera update needed
[2026-06-05 00:38:10,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:38:10,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:38:10,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:38:10,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:38:12,311.311 INFO    ] ================================================
[2026-06-05 00:38:12,327.327 INFO    ] Launching Daemon at Fri Jun  5 00:38:12 IST 2026
[2026-06-05 00:38:12,338.338 INFO    ] ================================================
[2026-06-05 00:38:12,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:38:12
[2026-06-05 00:38:13,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:38:13,739.739 INFO    ] Initializing speech engine...
[2026-06-05 00:38:13,752.752 INFO    ] 2026-06-05 00:38:13
[2026-06-05 00:38:14,018.018 INFO    ] 2026-06-05 00:38:14
[2026-06-05 00:38:14,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:38:14,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:38:14,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:38:14,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:38:14,392.392 INFO    ] time= 05/06/2026 00:38:14
[2026-06-05 00:38:14,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:38:14,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:38:14,468.468 INFO    ] No existing commands found in stream
[2026-06-05 00:38:19,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:38:19,483.483 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 00:38:20,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:38:20,332.332 INFO    ] Checking for system updates...
[2026-06-05 00:38:20,368.368 INFO    ] 200
[2026-06-05 00:38:20,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:20,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:38:20,427.427 INFO    ] No update needed
[2026-06-05 00:38:20,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 00:38:20,466.466 INFO    ] 200
[2026-06-05 00:38:20,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:20,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:38:20,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:38:20,571.571 INFO    ] No camera update needed
[2026-06-05 00:38:20,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:38:20,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:38:20,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:38:20,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:38:22,626.626 INFO    ] ================================================
[2026-06-05 00:38:22,641.641 INFO    ] Launching Daemon at Fri Jun  5 00:38:22 IST 2026
[2026-06-05 00:38:22,653.653 INFO    ] ================================================
[2026-06-05 00:38:23,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:38:23
[2026-06-05 00:38:23,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:38:24,228.228 INFO    ] Initializing speech engine...
[2026-06-05 00:38:24,241.241 INFO    ] 2026-06-05 00:38:24
[2026-06-05 00:38:24,519.519 INFO    ] 2026-06-05 00:38:24
[2026-06-05 00:38:24,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:38:24,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:38:24,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:38:25,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:38:25,058.058 INFO    ] time= 05/06/2026 00:38:25
[2026-06-05 00:38:25,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:38:25,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:38:25,213.213 INFO    ] No existing commands found in stream
[2026-06-05 00:38:30,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:38:30,240.240 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 00:38:32,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:38:32,833.833 INFO    ] Checking for system updates...
[2026-06-05 00:38:32,871.871 INFO    ] 200
[2026-06-05 00:38:32,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:32,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:38:32,931.931 INFO    ] No update needed
[2026-06-05 00:38:32,934.934 INFO    ] Checking for camera pi updates...
[2026-06-05 00:38:32,970.970 INFO    ] 200
[2026-06-05 00:38:32,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:33,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:38:33,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:38:33,074.074 INFO    ] No camera update needed
[2026-06-05 00:38:33,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:38:33,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:38:33,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:38:33,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:38:35,131.131 INFO    ] ================================================
[2026-06-05 00:38:35,147.147 INFO    ] Launching Daemon at Fri Jun  5 00:38:35 IST 2026
[2026-06-05 00:38:35,158.158 INFO    ] ================================================
[2026-06-05 00:38:35,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:38:35
[2026-06-05 00:38:36,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:38:36,648.648 INFO    ] Initializing speech engine...
[2026-06-05 00:38:36,671.671 INFO    ] 2026-06-05 00:38:36
[2026-06-05 00:38:36,939.939 INFO    ] 2026-06-05 00:38:36
[2026-06-05 00:38:37,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:38:37,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:38:37,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:38:37,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:38:37,427.427 INFO    ] time= 05/06/2026 00:38:37
[2026-06-05 00:38:37,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:38:37,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:38:37,585.585 INFO    ] No existing commands found in stream
[2026-06-05 00:38:42,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:38:42,621.621 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 00:38:44,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:38:44,363.363 INFO    ] Checking for system updates...
[2026-06-05 00:38:44,404.404 INFO    ] 200
[2026-06-05 00:38:44,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:44,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:38:44,463.463 INFO    ] No update needed
[2026-06-05 00:38:44,466.466 INFO    ] Checking for camera pi updates...
[2026-06-05 00:38:44,501.501 INFO    ] 200
[2026-06-05 00:38:44,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:44,546.546 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:38:44,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:38:44,598.598 INFO    ] No camera update needed
[2026-06-05 00:38:44,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:38:44,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:38:44,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:38:44,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:38:46,657.657 INFO    ] ================================================
[2026-06-05 00:38:46,673.673 INFO    ] Launching Daemon at Fri Jun  5 00:38:46 IST 2026
[2026-06-05 00:38:46,684.684 INFO    ] ================================================
[2026-06-05 00:38:47,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:38:47
[2026-06-05 00:38:47,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:38:48,167.167 INFO    ] Initializing speech engine...
[2026-06-05 00:38:48,190.190 INFO    ] 2026-06-05 00:38:48
[2026-06-05 00:38:48,442.442 INFO    ] 2026-06-05 00:38:48
[2026-06-05 00:38:48,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:38:48,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:38:48,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:38:48,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:38:48,879.879 INFO    ] time= 05/06/2026 00:38:48
[2026-06-05 00:38:48,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:38:48,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:38:49,057.057 INFO    ] No existing commands found in stream
[2026-06-05 00:38:54,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:38:54,071.071 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 00:38:57,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:38:57,354.354 INFO    ] Checking for system updates...
[2026-06-05 00:38:57,391.391 INFO    ] 200
[2026-06-05 00:38:57,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:57,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:38:57,462.462 INFO    ] No update needed
[2026-06-05 00:38:57,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 00:38:57,501.501 INFO    ] 200
[2026-06-05 00:38:57,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:38:57,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:38:57,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:38:57,595.595 INFO    ] No camera update needed
[2026-06-05 00:38:57,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:38:57,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:38:57,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:38:57,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:38:59,650.650 INFO    ] ================================================
[2026-06-05 00:38:59,666.666 INFO    ] Launching Daemon at Fri Jun  5 00:38:59 IST 2026
[2026-06-05 00:38:59,677.677 INFO    ] ================================================
[2026-06-05 00:39:00,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:39:00
[2026-06-05 00:39:00,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:39:01,102.102 INFO    ] Initializing speech engine...
[2026-06-05 00:39:01,112.112 INFO    ] 2026-06-05 00:39:01
[2026-06-05 00:39:01,469.469 INFO    ] 2026-06-05 00:39:01
[2026-06-05 00:39:01,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:39:01,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:39:01,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:39:01,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:39:01,868.868 INFO    ] time= 05/06/2026 00:39:01
[2026-06-05 00:39:01,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:39:01,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:39:01,954.954 INFO    ] No existing commands found in stream
[2026-06-05 00:39:06,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:39:06,969.969 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 00:39:09,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:39:09,842.842 INFO    ] Checking for system updates...
[2026-06-05 00:39:09,878.878 INFO    ] 200
[2026-06-05 00:39:09,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:09,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:39:09,943.943 INFO    ] No update needed
[2026-06-05 00:39:09,945.945 INFO    ] Checking for camera pi updates...
[2026-06-05 00:39:09,979.979 INFO    ] 200
[2026-06-05 00:39:09,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:10,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:39:10,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:39:10,068.068 INFO    ] No camera update needed
[2026-06-05 00:39:10,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:39:10,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:39:10,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:39:10,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:39:12,125.125 INFO    ] ================================================
[2026-06-05 00:39:12,141.141 INFO    ] Launching Daemon at Fri Jun  5 00:39:12 IST 2026
[2026-06-05 00:39:12,153.153 INFO    ] ================================================
[2026-06-05 00:39:12,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:39:12
[2026-06-05 00:39:13,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:39:13,665.665 INFO    ] Initializing speech engine...
[2026-06-05 00:39:13,679.679 INFO    ] 2026-06-05 00:39:13
[2026-06-05 00:39:13,959.959 INFO    ] 2026-06-05 00:39:13
[2026-06-05 00:39:14,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:39:14,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:39:14,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:39:14,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:39:14,501.501 INFO    ] time= 05/06/2026 00:39:14
[2026-06-05 00:39:14,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:39:14,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:39:14,664.664 INFO    ] No existing commands found in stream
[2026-06-05 00:39:19,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:39:19,697.697 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 00:39:21,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:39:21,129.129 INFO    ] Checking for system updates...
[2026-06-05 00:39:21,166.166 INFO    ] 200
[2026-06-05 00:39:21,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:21,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:39:21,223.223 INFO    ] No update needed
[2026-06-05 00:39:21,226.226 INFO    ] Checking for camera pi updates...
[2026-06-05 00:39:21,260.260 INFO    ] 200
[2026-06-05 00:39:21,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:21,305.305 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:39:21,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:39:21,351.351 INFO    ] No camera update needed
[2026-06-05 00:39:21,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:39:21,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:39:21,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:39:21,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:39:23,408.408 INFO    ] ================================================
[2026-06-05 00:39:23,423.423 INFO    ] Launching Daemon at Fri Jun  5 00:39:23 IST 2026
[2026-06-05 00:39:23,435.435 INFO    ] ================================================
[2026-06-05 00:39:24,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:39:24
[2026-06-05 00:39:24,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:39:24,930.930 INFO    ] Initializing speech engine...
[2026-06-05 00:39:24,944.944 INFO    ] 2026-06-05 00:39:24
[2026-06-05 00:39:25,221.221 INFO    ] 2026-06-05 00:39:25
[2026-06-05 00:39:25,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:39:25,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:39:25,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:39:25,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:39:25,672.672 INFO    ] time= 05/06/2026 00:39:25
[2026-06-05 00:39:25,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:39:25,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:39:25,817.817 INFO    ] No existing commands found in stream
[2026-06-05 00:39:30,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:39:30,832.832 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 00:39:33,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:39:33,913.913 INFO    ] Checking for system updates...
[2026-06-05 00:39:33,953.953 INFO    ] 200
[2026-06-05 00:39:33,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:34,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:39:34,018.018 INFO    ] No update needed
[2026-06-05 00:39:34,021.021 INFO    ] Checking for camera pi updates...
[2026-06-05 00:39:34,055.055 INFO    ] 200
[2026-06-05 00:39:34,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:34,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:39:34,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:39:34,150.150 INFO    ] No camera update needed
[2026-06-05 00:39:34,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:39:34,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:39:34,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:39:34,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:39:36,207.207 INFO    ] ================================================
[2026-06-05 00:39:36,223.223 INFO    ] Launching Daemon at Fri Jun  5 00:39:36 IST 2026
[2026-06-05 00:39:36,234.234 INFO    ] ================================================
[2026-06-05 00:39:36,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:39:36
[2026-06-05 00:39:37,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:39:37,901.901 INFO    ] Initializing speech engine...
[2026-06-05 00:39:37,906.906 INFO    ] 2026-06-05 00:39:37
[2026-06-05 00:39:38,164.164 INFO    ] 2026-06-05 00:39:38
[2026-06-05 00:39:38,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:39:38,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:39:38,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:39:38,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:39:38,628.628 INFO    ] time= 05/06/2026 00:39:38
[2026-06-05 00:39:38,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:39:38,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:39:38,769.769 INFO    ] No existing commands found in stream
[2026-06-05 00:39:43,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:39:43,784.784 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 00:39:47,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:39:47,472.472 INFO    ] Checking for system updates...
[2026-06-05 00:39:47,509.509 INFO    ] 200
[2026-06-05 00:39:47,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:47,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:39:47,574.574 INFO    ] No update needed
[2026-06-05 00:39:47,577.577 INFO    ] Checking for camera pi updates...
[2026-06-05 00:39:47,619.619 INFO    ] 200
[2026-06-05 00:39:47,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:47,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:39:47,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:39:47,813.813 INFO    ] No camera update needed
[2026-06-05 00:39:47,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:39:47,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:39:47,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:39:47,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:39:49,869.869 INFO    ] ================================================
[2026-06-05 00:39:49,884.884 INFO    ] Launching Daemon at Fri Jun  5 00:39:49 IST 2026
[2026-06-05 00:39:49,895.895 INFO    ] ================================================
[2026-06-05 00:39:50,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:39:50
[2026-06-05 00:39:51,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:39:51,321.321 INFO    ] Initializing speech engine...
[2026-06-05 00:39:51,336.336 INFO    ] 2026-06-05 00:39:51
[2026-06-05 00:39:51,588.588 INFO    ] 2026-06-05 00:39:51
[2026-06-05 00:39:51,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:39:51,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:39:51,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:39:51,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:39:51,964.964 INFO    ] time= 05/06/2026 00:39:51
[2026-06-05 00:39:51,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:39:52,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:39:52,140.140 INFO    ] No existing commands found in stream
[2026-06-05 00:39:57,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:39:57,173.173 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 00:39:57,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:39:57,622.622 INFO    ] Checking for system updates...
[2026-06-05 00:39:57,660.660 INFO    ] 200
[2026-06-05 00:39:57,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:57,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:39:57,718.718 INFO    ] No update needed
[2026-06-05 00:39:57,721.721 INFO    ] Checking for camera pi updates...
[2026-06-05 00:39:57,755.755 INFO    ] 200
[2026-06-05 00:39:57,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:39:57,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:39:57,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:39:57,853.853 INFO    ] No camera update needed
[2026-06-05 00:39:57,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:39:57,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:39:57,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:39:57,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:39:59,909.909 INFO    ] ================================================
[2026-06-05 00:39:59,925.925 INFO    ] Launching Daemon at Fri Jun  5 00:39:59 IST 2026
[2026-06-05 00:39:59,936.936 INFO    ] ================================================
[2026-06-05 00:40:00,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:40:00
[2026-06-05 00:40:01,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:40:02,118.118 INFO    ] Initializing speech engine...
[2026-06-05 00:40:02,122.122 INFO    ] 2026-06-05 00:40:02
[2026-06-05 00:40:02,476.476 INFO    ] 2026-06-05 00:40:02
[2026-06-05 00:40:02,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:40:02,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:40:02,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:40:02,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:40:02,804.804 INFO    ] time= 05/06/2026 00:40:02
[2026-06-05 00:40:02,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:40:02,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:40:02,868.868 INFO    ] No existing commands found in stream
[2026-06-05 00:40:07,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:40:07,884.884 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 00:40:08,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:40:08,816.816 INFO    ] Checking for system updates...
[2026-06-05 00:40:08,853.853 INFO    ] 200
[2026-06-05 00:40:08,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:08,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:40:08,939.939 INFO    ] No update needed
[2026-06-05 00:40:08,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 00:40:08,993.993 INFO    ] 200
[2026-06-05 00:40:09,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:09,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:40:09,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:40:09,100.100 INFO    ] No camera update needed
[2026-06-05 00:40:09,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:40:09,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:40:09,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:40:09,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:40:11,156.156 INFO    ] ================================================
[2026-06-05 00:40:11,171.171 INFO    ] Launching Daemon at Fri Jun  5 00:40:11 IST 2026
[2026-06-05 00:40:11,183.183 INFO    ] ================================================
[2026-06-05 00:40:11,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:40:11
[2026-06-05 00:40:12,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:40:12,602.602 INFO    ] Initializing speech engine...
[2026-06-05 00:40:12,611.611 INFO    ] 2026-06-05 00:40:12
[2026-06-05 00:40:12,856.856 INFO    ] 2026-06-05 00:40:12
[2026-06-05 00:40:12,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:40:13,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:40:13,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:40:13,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:40:13,327.327 INFO    ] time= 05/06/2026 00:40:13
[2026-06-05 00:40:13,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:40:13,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:40:13,474.474 INFO    ] No existing commands found in stream
[2026-06-05 00:40:18,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:40:18,489.489 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 00:40:22,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:40:22,713.713 INFO    ] Checking for system updates...
[2026-06-05 00:40:22,752.752 INFO    ] 200
[2026-06-05 00:40:22,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:22,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:40:22,811.811 INFO    ] No update needed
[2026-06-05 00:40:22,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 00:40:22,853.853 INFO    ] 200
[2026-06-05 00:40:22,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:22,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:40:22,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:40:22,952.952 INFO    ] No camera update needed
[2026-06-05 00:40:22,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:40:22,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:40:22,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:40:22,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:40:25,011.011 INFO    ] ================================================
[2026-06-05 00:40:25,028.028 INFO    ] Launching Daemon at Fri Jun  5 00:40:25 IST 2026
[2026-06-05 00:40:25,039.039 INFO    ] ================================================
[2026-06-05 00:40:25,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:40:25
[2026-06-05 00:40:26,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:40:26,448.448 INFO    ] Initializing speech engine...
[2026-06-05 00:40:26,471.471 INFO    ] 2026-06-05 00:40:26
[2026-06-05 00:40:26,727.727 INFO    ] 2026-06-05 00:40:26
[2026-06-05 00:40:26,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:40:26,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:40:26,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:40:27,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:40:27,104.104 INFO    ] time= 05/06/2026 00:40:27
[2026-06-05 00:40:27,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:40:27,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:40:27,262.262 INFO    ] No existing commands found in stream
[2026-06-05 00:40:32,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:40:32,295.295 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 00:40:35,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:40:35,821.821 INFO    ] Checking for system updates...
[2026-06-05 00:40:35,857.857 INFO    ] 200
[2026-06-05 00:40:35,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:35,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:40:35,921.921 INFO    ] No update needed
[2026-06-05 00:40:35,924.924 INFO    ] Checking for camera pi updates...
[2026-06-05 00:40:35,957.957 INFO    ] 200
[2026-06-05 00:40:35,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:36,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:40:36,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:40:36,053.053 INFO    ] No camera update needed
[2026-06-05 00:40:36,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:40:36,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:40:36,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:40:36,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:40:38,110.110 INFO    ] ================================================
[2026-06-05 00:40:38,126.126 INFO    ] Launching Daemon at Fri Jun  5 00:40:38 IST 2026
[2026-06-05 00:40:38,137.137 INFO    ] ================================================
[2026-06-05 00:40:38,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:40:38
[2026-06-05 00:40:39,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:40:39,753.753 INFO    ] Initializing speech engine...
[2026-06-05 00:40:39,768.768 INFO    ] 2026-06-05 00:40:39
[2026-06-05 00:40:40,053.053 INFO    ] 2026-06-05 00:40:40
[2026-06-05 00:40:40,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:40:40,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:40:40,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:40:40,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:40:40,582.582 INFO    ] time= 05/06/2026 00:40:40
[2026-06-05 00:40:40,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:40:40,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:40:40,742.742 INFO    ] No existing commands found in stream
[2026-06-05 00:40:45,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:40:45,774.774 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 00:40:47,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:40:47,065.065 INFO    ] Checking for system updates...
[2026-06-05 00:40:47,103.103 INFO    ] 200
[2026-06-05 00:40:47,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:47,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:40:47,170.170 INFO    ] No update needed
[2026-06-05 00:40:47,173.173 INFO    ] Checking for camera pi updates...
[2026-06-05 00:40:47,212.212 INFO    ] 200
[2026-06-05 00:40:47,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:47,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:40:47,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:40:47,342.342 INFO    ] No camera update needed
[2026-06-05 00:40:47,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:40:47,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:40:47,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:40:47,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:40:49,400.400 INFO    ] ================================================
[2026-06-05 00:40:49,417.417 INFO    ] Launching Daemon at Fri Jun  5 00:40:49 IST 2026
[2026-06-05 00:40:49,428.428 INFO    ] ================================================
[2026-06-05 00:40:50,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:40:50
[2026-06-05 00:40:50,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:40:51,079.079 INFO    ] Initializing speech engine...
[2026-06-05 00:40:51,084.084 INFO    ] 2026-06-05 00:40:51
[2026-06-05 00:40:51,394.394 INFO    ] 2026-06-05 00:40:51
[2026-06-05 00:40:51,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:40:51,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:40:51,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:40:51,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:40:51,900.900 INFO    ] time= 05/06/2026 00:40:51
[2026-06-05 00:40:51,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:40:51,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:40:52,053.053 INFO    ] No existing commands found in stream
[2026-06-05 00:40:57,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:40:57,073.073 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 00:40:57,568.568 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:40:57,571.571 INFO    ] Checking for system updates...
[2026-06-05 00:40:57,609.609 INFO    ] 200
[2026-06-05 00:40:57,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:57,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:40:57,676.676 INFO    ] No update needed
[2026-06-05 00:40:57,679.679 INFO    ] Checking for camera pi updates...
[2026-06-05 00:40:57,719.719 INFO    ] 200
[2026-06-05 00:40:57,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:40:57,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:40:57,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:40:57,824.824 INFO    ] No camera update needed
[2026-06-05 00:40:57,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:40:57,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:40:57,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:40:57,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:40:59,878.878 INFO    ] ================================================
[2026-06-05 00:40:59,895.895 INFO    ] Launching Daemon at Fri Jun  5 00:40:59 IST 2026
[2026-06-05 00:40:59,907.907 INFO    ] ================================================
[2026-06-05 00:41:00,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:41:00
[2026-06-05 00:41:01,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:41:01,764.764 INFO    ] Initializing speech engine...
[2026-06-05 00:41:01,770.770 INFO    ] 2026-06-05 00:41:01
[2026-06-05 00:41:02,127.127 INFO    ] 2026-06-05 00:41:02
[2026-06-05 00:41:02,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:41:02,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:41:02,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:41:02,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:41:02,542.542 INFO    ] time= 05/06/2026 00:41:02
[2026-06-05 00:41:02,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:41:02,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:41:02,698.698 INFO    ] No existing commands found in stream
[2026-06-05 00:41:07,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:41:07,721.721 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 00:41:08,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:41:08,770.770 INFO    ] Checking for system updates...
[2026-06-05 00:41:08,810.810 INFO    ] 200
[2026-06-05 00:41:08,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:41:08,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:41:08,875.875 INFO    ] No update needed
[2026-06-05 00:41:08,878.878 INFO    ] Checking for camera pi updates...
[2026-06-05 00:41:08,912.912 INFO    ] 200
[2026-06-05 00:41:08,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:41:08,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:41:09,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:41:09,006.006 INFO    ] No camera update needed
[2026-06-05 00:41:09,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:41:09,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:41:09,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:41:09,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:41:11,060.060 INFO    ] ================================================
[2026-06-05 00:41:11,075.075 INFO    ] Launching Daemon at Fri Jun  5 00:41:11 IST 2026
[2026-06-05 00:41:11,086.086 INFO    ] ================================================
[2026-06-05 00:41:11,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:41:11
[2026-06-05 00:41:12,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:41:12,601.601 INFO    ] Initializing speech engine...
[2026-06-05 00:41:12,624.624 INFO    ] 2026-06-05 00:41:12
[2026-06-05 00:41:12,880.880 INFO    ] 2026-06-05 00:41:12
[2026-06-05 00:41:12,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:41:13,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:41:13,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:41:13,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:41:13,228.228 INFO    ] time= 05/06/2026 00:41:13
[2026-06-05 00:41:13,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:41:13,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:41:13,350.350 INFO    ] No existing commands found in stream
[2026-06-05 00:41:18,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:41:18,362.362 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 00:41:22,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:41:22,250.250 INFO    ] Checking for system updates...
[2026-06-05 00:41:22,286.286 INFO    ] 200
[2026-06-05 00:41:22,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:41:22,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:41:22,352.352 INFO    ] No update needed
[2026-06-05 00:41:22,354.354 INFO    ] Checking for camera pi updates...
[2026-06-05 00:41:22,388.388 INFO    ] 200
[2026-06-05 00:41:22,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:41:22,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:41:22,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:41:22,490.490 INFO    ] No camera update needed
[2026-06-05 00:41:22,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:41:22,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:41:22,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:41:22,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:41:24,545.545 INFO    ] ================================================
[2026-06-05 00:41:24,560.560 INFO    ] Launching Daemon at Fri Jun  5 00:41:24 IST 2026
[2026-06-05 00:41:24,571.571 INFO    ] ================================================
[2026-06-05 00:41:25,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:41:25
[2026-06-05 00:41:25,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:41:26,208.208 INFO    ] Initializing speech engine...
[2026-06-05 00:41:26,215.215 INFO    ] 2026-06-05 00:41:26
[2026-06-05 00:41:26,530.530 INFO    ] 2026-06-05 00:41:26
[2026-06-05 00:41:26,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:41:26,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:41:26,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:41:26,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:41:26,971.971 INFO    ] time= 05/06/2026 00:41:26
[2026-06-05 00:41:27,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:41:27,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:41:27,175.175 INFO    ] No existing commands found in stream
[2026-06-05 00:41:32,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:41:32,203.203 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 00:41:36,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:41:36,489.489 INFO    ] Checking for system updates...
[2026-06-05 00:41:36,526.526 INFO    ] 200
[2026-06-05 00:41:36,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:41:36,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:41:36,585.585 INFO    ] No update needed
[2026-06-05 00:41:36,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 00:41:36,626.626 INFO    ] 200
[2026-06-05 00:41:36,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:41:36,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:41:36,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:41:36,717.717 INFO    ] No camera update needed
[2026-06-05 00:41:36,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:41:36,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:41:36,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:41:36,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:41:38,772.772 INFO    ] ================================================
[2026-06-05 00:41:38,788.788 INFO    ] Launching Daemon at Fri Jun  5 00:41:38 IST 2026
[2026-06-05 00:41:38,798.798 INFO    ] ================================================
[2026-06-05 00:41:39,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:41:39
[2026-06-05 00:41:40,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:41:40,330.330 INFO    ] Initializing speech engine...
[2026-06-05 00:41:40,338.338 INFO    ] 2026-06-05 00:41:40
[2026-06-05 00:41:40,591.591 INFO    ] 2026-06-05 00:41:40
[2026-06-05 00:41:40,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:41:40,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:41:40,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:41:40,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:41:40,970.970 INFO    ] time= 05/06/2026 00:41:40
[2026-06-05 00:41:40,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:41:41,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:41:41,155.155 INFO    ] No existing commands found in stream
[2026-06-05 00:41:46,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:41:46,186.186 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 00:41:50,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:41:50,019.019 INFO    ] Checking for system updates...
[2026-06-05 00:41:50,058.058 INFO    ] 200
[2026-06-05 00:41:50,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:41:50,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:41:50,140.140 INFO    ] No update needed
[2026-06-05 00:41:50,143.143 INFO    ] Checking for camera pi updates...
[2026-06-05 00:41:50,183.183 INFO    ] 200
[2026-06-05 00:41:50,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:41:50,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:41:50,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:41:50,381.381 INFO    ] No camera update needed
[2026-06-05 00:41:50,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:41:50,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:41:50,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:41:50,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:41:52,440.440 INFO    ] ================================================
[2026-06-05 00:41:52,456.456 INFO    ] Launching Daemon at Fri Jun  5 00:41:52 IST 2026
[2026-06-05 00:41:52,466.466 INFO    ] ================================================
[2026-06-05 00:41:53,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:41:53
[2026-06-05 00:41:53,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:41:53,875.875 INFO    ] Initializing speech engine...
[2026-06-05 00:41:53,890.890 INFO    ] 2026-06-05 00:41:53
[2026-06-05 00:41:54,152.152 INFO    ] 2026-06-05 00:41:54
[2026-06-05 00:41:54,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:41:54,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:41:54,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:41:54,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:41:54,624.624 INFO    ] time= 05/06/2026 00:41:54
[2026-06-05 00:41:54,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:41:54,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:41:54,785.785 INFO    ] No existing commands found in stream
[2026-06-05 00:41:59,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:41:59,825.825 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 00:42:03,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:42:03,158.158 INFO    ] Checking for system updates...
[2026-06-05 00:42:03,198.198 INFO    ] 200
[2026-06-05 00:42:03,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:03,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:03,256.256 INFO    ] No update needed
[2026-06-05 00:42:03,258.258 INFO    ] Checking for camera pi updates...
[2026-06-05 00:42:03,295.295 INFO    ] 200
[2026-06-05 00:42:03,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:03,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:42:03,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:03,372.372 INFO    ] No camera update needed
[2026-06-05 00:42:03,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:42:03,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:42:03,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:42:03,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:42:05,427.427 INFO    ] ================================================
[2026-06-05 00:42:05,443.443 INFO    ] Launching Daemon at Fri Jun  5 00:42:05 IST 2026
[2026-06-05 00:42:05,453.453 INFO    ] ================================================
[2026-06-05 00:42:06,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:42:06
[2026-06-05 00:42:06,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:42:07,081.081 INFO    ] Initializing speech engine...
[2026-06-05 00:42:07,092.092 INFO    ] 2026-06-05 00:42:07
[2026-06-05 00:42:07,369.369 INFO    ] 2026-06-05 00:42:07
[2026-06-05 00:42:07,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:42:07,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:42:07,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:42:07,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:42:07,850.850 INFO    ] time= 05/06/2026 00:42:07
[2026-06-05 00:42:07,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:42:07,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:42:08,020.020 INFO    ] No existing commands found in stream
[2026-06-05 00:42:13,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:42:13,055.055 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 00:42:13,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:42:13,475.475 INFO    ] Checking for system updates...
[2026-06-05 00:42:13,520.520 INFO    ] 200
[2026-06-05 00:42:13,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:13,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:13,585.585 INFO    ] No update needed
[2026-06-05 00:42:13,588.588 INFO    ] Checking for camera pi updates...
[2026-06-05 00:42:13,623.623 INFO    ] 200
[2026-06-05 00:42:13,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:13,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:42:13,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:13,726.726 INFO    ] No camera update needed
[2026-06-05 00:42:13,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:42:13,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:42:13,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:42:13,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:42:15,783.783 INFO    ] ================================================
[2026-06-05 00:42:15,799.799 INFO    ] Launching Daemon at Fri Jun  5 00:42:15 IST 2026
[2026-06-05 00:42:15,810.810 INFO    ] ================================================
[2026-06-05 00:42:16,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:42:16
[2026-06-05 00:42:16,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:42:17,208.208 INFO    ] Initializing speech engine...
[2026-06-05 00:42:17,216.216 INFO    ] 2026-06-05 00:42:17
[2026-06-05 00:42:17,489.489 INFO    ] 2026-06-05 00:42:17
[2026-06-05 00:42:17,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:42:17,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:42:17,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:42:17,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:42:17,865.865 INFO    ] time= 05/06/2026 00:42:17
[2026-06-05 00:42:17,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:42:17,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:42:17,961.961 INFO    ] No existing commands found in stream
[2026-06-05 00:42:22,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:42:22,973.973 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 00:42:26,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:42:26,634.634 INFO    ] Checking for system updates...
[2026-06-05 00:42:26,673.673 INFO    ] 200
[2026-06-05 00:42:26,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:26,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:26,734.734 INFO    ] No update needed
[2026-06-05 00:42:26,738.738 INFO    ] Checking for camera pi updates...
[2026-06-05 00:42:26,773.773 INFO    ] 200
[2026-06-05 00:42:26,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:26,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:42:26,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:26,865.865 INFO    ] No camera update needed
[2026-06-05 00:42:26,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:42:26,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:42:26,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:42:26,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:42:28,924.924 INFO    ] ================================================
[2026-06-05 00:42:28,940.940 INFO    ] Launching Daemon at Fri Jun  5 00:42:28 IST 2026
[2026-06-05 00:42:28,950.950 INFO    ] ================================================
[2026-06-05 00:42:29,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:42:29
[2026-06-05 00:42:30,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:42:30,596.596 INFO    ] Initializing speech engine...
[2026-06-05 00:42:30,602.602 INFO    ] 2026-06-05 00:42:30
[2026-06-05 00:42:30,889.889 INFO    ] 2026-06-05 00:42:30
[2026-06-05 00:42:30,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:42:31,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:42:31,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:42:31,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:42:31,423.423 INFO    ] time= 05/06/2026 00:42:31
[2026-06-05 00:42:31,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:42:31,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:42:31,599.599 INFO    ] No existing commands found in stream
[2026-06-05 00:42:36,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:42:36,640.640 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 00:42:38,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:42:38,818.818 INFO    ] Checking for system updates...
[2026-06-05 00:42:38,856.856 INFO    ] 200
[2026-06-05 00:42:38,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:38,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:38,923.923 INFO    ] No update needed
[2026-06-05 00:42:38,926.926 INFO    ] Checking for camera pi updates...
[2026-06-05 00:42:38,966.966 INFO    ] 200
[2026-06-05 00:42:38,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:39,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:42:39,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:39,067.067 INFO    ] No camera update needed
[2026-06-05 00:42:39,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:42:39,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:42:39,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:42:39,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:42:41,127.127 INFO    ] ================================================
[2026-06-05 00:42:41,142.142 INFO    ] Launching Daemon at Fri Jun  5 00:42:41 IST 2026
[2026-06-05 00:42:41,153.153 INFO    ] ================================================
[2026-06-05 00:42:41,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:42:41
[2026-06-05 00:42:42,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:42:42,813.813 INFO    ] Initializing speech engine...
[2026-06-05 00:42:42,826.826 INFO    ] 2026-06-05 00:42:42
[2026-06-05 00:42:43,138.138 INFO    ] 2026-06-05 00:42:43
[2026-06-05 00:42:43,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:42:43,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:42:43,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:42:43,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:42:43,648.648 INFO    ] time= 05/06/2026 00:42:43
[2026-06-05 00:42:43,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:42:43,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:42:43,803.803 INFO    ] No existing commands found in stream
[2026-06-05 00:42:48,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:42:48,819.819 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 00:42:52,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:42:52,482.482 INFO    ] Checking for system updates...
[2026-06-05 00:42:52,519.519 INFO    ] 200
[2026-06-05 00:42:52,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:52,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:52,580.580 INFO    ] No update needed
[2026-06-05 00:42:52,583.583 INFO    ] Checking for camera pi updates...
[2026-06-05 00:42:52,618.618 INFO    ] 200
[2026-06-05 00:42:52,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:42:52,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:42:52,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:42:52,714.714 INFO    ] No camera update needed
[2026-06-05 00:42:52,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:42:52,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:42:52,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:42:52,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:42:54,770.770 INFO    ] ================================================
[2026-06-05 00:42:54,785.785 INFO    ] Launching Daemon at Fri Jun  5 00:42:54 IST 2026
[2026-06-05 00:42:54,797.797 INFO    ] ================================================
[2026-06-05 00:42:55,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:42:55
[2026-06-05 00:42:56,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:42:56,358.358 INFO    ] Initializing speech engine...
[2026-06-05 00:42:56,369.369 INFO    ] 2026-06-05 00:42:56
[2026-06-05 00:42:56,680.680 INFO    ] 2026-06-05 00:42:56
[2026-06-05 00:42:56,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:42:56,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:42:56,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:42:57,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:42:57,187.187 INFO    ] time= 05/06/2026 00:42:57
[2026-06-05 00:42:57,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:42:57,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:42:57,371.371 INFO    ] No existing commands found in stream
[2026-06-05 00:43:02,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:43:02,412.412 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 00:43:03,740.740 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:43:03,743.743 INFO    ] Checking for system updates...
[2026-06-05 00:43:03,780.780 INFO    ] 200
[2026-06-05 00:43:03,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:03,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:43:03,858.858 INFO    ] No update needed
[2026-06-05 00:43:03,860.860 INFO    ] Checking for camera pi updates...
[2026-06-05 00:43:03,894.894 INFO    ] 200
[2026-06-05 00:43:03,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:03,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:43:03,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:43:03,983.983 INFO    ] No camera update needed
[2026-06-05 00:43:03,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:43:03,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:43:03,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:43:03,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:43:06,041.041 INFO    ] ================================================
[2026-06-05 00:43:06,059.059 INFO    ] Launching Daemon at Fri Jun  5 00:43:06 IST 2026
[2026-06-05 00:43:06,074.074 INFO    ] ================================================
[2026-06-05 00:43:06,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:43:06
[2026-06-05 00:43:07,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:43:07,550.550 INFO    ] Initializing speech engine...
[2026-06-05 00:43:07,573.573 INFO    ] 2026-06-05 00:43:07
[2026-06-05 00:43:07,826.826 INFO    ] 2026-06-05 00:43:07
[2026-06-05 00:43:07,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:43:08,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:43:08,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:43:08,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:43:08,295.295 INFO    ] time= 05/06/2026 00:43:08
[2026-06-05 00:43:08,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:43:08,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:43:08,506.506 INFO    ] No existing commands found in stream
[2026-06-05 00:43:13,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:43:13,544.544 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 00:43:16,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:43:16,931.931 INFO    ] Checking for system updates...
[2026-06-05 00:43:16,967.967 INFO    ] 200
[2026-06-05 00:43:16,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:17,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:43:17,032.032 INFO    ] No update needed
[2026-06-05 00:43:17,034.034 INFO    ] Checking for camera pi updates...
[2026-06-05 00:43:17,069.069 INFO    ] 200
[2026-06-05 00:43:17,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:17,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:43:17,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:43:17,167.167 INFO    ] No camera update needed
[2026-06-05 00:43:17,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:43:17,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:43:17,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:43:17,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:43:19,225.225 INFO    ] ================================================
[2026-06-05 00:43:19,240.240 INFO    ] Launching Daemon at Fri Jun  5 00:43:19 IST 2026
[2026-06-05 00:43:19,251.251 INFO    ] ================================================
[2026-06-05 00:43:19,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:43:19
[2026-06-05 00:43:20,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:43:20,666.666 INFO    ] Initializing speech engine...
[2026-06-05 00:43:20,687.687 INFO    ] 2026-06-05 00:43:20
[2026-06-05 00:43:20,945.945 INFO    ] 2026-06-05 00:43:20
[2026-06-05 00:43:20,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:43:21,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:43:21,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:43:21,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:43:21,392.392 INFO    ] time= 05/06/2026 00:43:21
[2026-06-05 00:43:21,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:43:21,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:43:21,575.575 INFO    ] No existing commands found in stream
[2026-06-05 00:43:26,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:43:26,589.589 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 00:43:28,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:43:28,568.568 INFO    ] Checking for system updates...
[2026-06-05 00:43:28,604.604 INFO    ] 200
[2026-06-05 00:43:28,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:28,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:43:28,663.663 INFO    ] No update needed
[2026-06-05 00:43:28,666.666 INFO    ] Checking for camera pi updates...
[2026-06-05 00:43:28,704.704 INFO    ] 200
[2026-06-05 00:43:28,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:28,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:43:28,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:43:28,796.796 INFO    ] No camera update needed
[2026-06-05 00:43:28,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:43:28,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:43:28,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:43:28,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:43:30,852.852 INFO    ] ================================================
[2026-06-05 00:43:30,867.867 INFO    ] Launching Daemon at Fri Jun  5 00:43:30 IST 2026
[2026-06-05 00:43:30,878.878 INFO    ] ================================================
[2026-06-05 00:43:31,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:43:31
[2026-06-05 00:43:32,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:43:32,379.379 INFO    ] Initializing speech engine...
[2026-06-05 00:43:32,394.394 INFO    ] 2026-06-05 00:43:32
[2026-06-05 00:43:32,682.682 INFO    ] 2026-06-05 00:43:32
[2026-06-05 00:43:32,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:43:32,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:43:32,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:43:33,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:43:33,079.079 INFO    ] time= 05/06/2026 00:43:33
[2026-06-05 00:43:33,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:43:33,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:43:33,205.205 INFO    ] No existing commands found in stream
[2026-06-05 00:43:38,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:43:38,220.220 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 00:43:39,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:43:39,295.295 INFO    ] Checking for system updates...
[2026-06-05 00:43:39,332.332 INFO    ] 200
[2026-06-05 00:43:39,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:39,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:43:39,390.390 INFO    ] No update needed
[2026-06-05 00:43:39,392.392 INFO    ] Checking for camera pi updates...
[2026-06-05 00:43:39,426.426 INFO    ] 200
[2026-06-05 00:43:39,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:39,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:43:39,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:43:39,526.526 INFO    ] No camera update needed
[2026-06-05 00:43:39,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:43:39,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:43:39,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:43:39,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:43:41,582.582 INFO    ] ================================================
[2026-06-05 00:43:41,598.598 INFO    ] Launching Daemon at Fri Jun  5 00:43:41 IST 2026
[2026-06-05 00:43:41,608.608 INFO    ] ================================================
[2026-06-05 00:43:42,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:43:42
[2026-06-05 00:43:42,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:43:43,028.028 INFO    ] Initializing speech engine...
[2026-06-05 00:43:43,037.037 INFO    ] 2026-06-05 00:43:43
[2026-06-05 00:43:43,292.292 INFO    ] 2026-06-05 00:43:43
[2026-06-05 00:43:43,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:43:43,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:43:43,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:43:43,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:43:43,766.766 INFO    ] time= 05/06/2026 00:43:43
[2026-06-05 00:43:43,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:43:43,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:43:43,903.903 INFO    ] No existing commands found in stream
[2026-06-05 00:43:48,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:43:48,918.918 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 00:43:50,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:43:50,067.067 INFO    ] Checking for system updates...
[2026-06-05 00:43:50,109.109 INFO    ] 200
[2026-06-05 00:43:50,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:50,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:43:50,170.170 INFO    ] No update needed
[2026-06-05 00:43:50,173.173 INFO    ] Checking for camera pi updates...
[2026-06-05 00:43:50,212.212 INFO    ] 200
[2026-06-05 00:43:50,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:43:50,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:43:50,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:43:50,313.313 INFO    ] No camera update needed
[2026-06-05 00:43:50,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:43:50,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:43:50,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:43:50,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:43:52,372.372 INFO    ] ================================================
[2026-06-05 00:43:52,388.388 INFO    ] Launching Daemon at Fri Jun  5 00:43:52 IST 2026
[2026-06-05 00:43:52,398.398 INFO    ] ================================================
[2026-06-05 00:43:52,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:43:52
[2026-06-05 00:43:53,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:43:53,821.821 INFO    ] Initializing speech engine...
[2026-06-05 00:43:53,831.831 INFO    ] 2026-06-05 00:43:53
[2026-06-05 00:43:54,076.076 INFO    ] 2026-06-05 00:43:54
[2026-06-05 00:43:54,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:43:54,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:43:54,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:43:54,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:43:54,542.542 INFO    ] time= 05/06/2026 00:43:54
[2026-06-05 00:43:54,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:43:54,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:43:54,694.694 INFO    ] No existing commands found in stream
[2026-06-05 00:43:59,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:43:59,709.709 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 00:44:00,161.161 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:44:00,164.164 INFO    ] Checking for system updates...
[2026-06-05 00:44:00,200.200 INFO    ] 200
[2026-06-05 00:44:00,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:00,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:44:00,257.257 INFO    ] No update needed
[2026-06-05 00:44:00,260.260 INFO    ] Checking for camera pi updates...
[2026-06-05 00:44:00,293.293 INFO    ] 200
[2026-06-05 00:44:00,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:00,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:44:00,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:44:00,491.491 INFO    ] No camera update needed
[2026-06-05 00:44:00,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:44:00,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:44:00,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:44:00,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:44:02,549.549 INFO    ] ================================================
[2026-06-05 00:44:02,565.565 INFO    ] Launching Daemon at Fri Jun  5 00:44:02 IST 2026
[2026-06-05 00:44:02,576.576 INFO    ] ================================================
[2026-06-05 00:44:03,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:44:03
[2026-06-05 00:44:03,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:44:04,033.033 INFO    ] Initializing speech engine...
[2026-06-05 00:44:04,042.042 INFO    ] 2026-06-05 00:44:04
[2026-06-05 00:44:04,289.289 INFO    ] 2026-06-05 00:44:04
[2026-06-05 00:44:04,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:44:04,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:44:04,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:44:04,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:44:04,759.759 INFO    ] time= 05/06/2026 00:44:04
[2026-06-05 00:44:04,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:44:04,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:44:04,911.911 INFO    ] No existing commands found in stream
[2026-06-05 00:44:09,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:44:09,944.944 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 00:44:10,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:44:10,862.862 INFO    ] Checking for system updates...
[2026-06-05 00:44:10,899.899 INFO    ] 200
[2026-06-05 00:44:10,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:10,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:44:10,970.970 INFO    ] No update needed
[2026-06-05 00:44:10,972.972 INFO    ] Checking for camera pi updates...
[2026-06-05 00:44:11,007.007 INFO    ] 200
[2026-06-05 00:44:11,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:11,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:44:11,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:44:11,106.106 INFO    ] No camera update needed
[2026-06-05 00:44:11,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:44:11,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:44:11,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:44:11,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:44:13,165.165 INFO    ] ================================================
[2026-06-05 00:44:13,180.180 INFO    ] Launching Daemon at Fri Jun  5 00:44:13 IST 2026
[2026-06-05 00:44:13,191.191 INFO    ] ================================================
[2026-06-05 00:44:13,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:44:13
[2026-06-05 00:44:14,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:44:14,797.797 INFO    ] Initializing speech engine...
[2026-06-05 00:44:14,806.806 INFO    ] 2026-06-05 00:44:14
[2026-06-05 00:44:15,075.075 INFO    ] 2026-06-05 00:44:15
[2026-06-05 00:44:15,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:44:15,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:44:15,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:44:15,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:44:15,628.628 INFO    ] time= 05/06/2026 00:44:15
[2026-06-05 00:44:15,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:44:15,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:44:15,767.767 INFO    ] No existing commands found in stream
[2026-06-05 00:44:20,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:44:20,801.801 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 00:44:24,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:44:24,437.437 INFO    ] Checking for system updates...
[2026-06-05 00:44:24,477.477 INFO    ] 200
[2026-06-05 00:44:24,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:24,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:44:24,534.534 INFO    ] No update needed
[2026-06-05 00:44:24,537.537 INFO    ] Checking for camera pi updates...
[2026-06-05 00:44:24,570.570 INFO    ] 200
[2026-06-05 00:44:24,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:24,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:44:24,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:44:24,665.665 INFO    ] No camera update needed
[2026-06-05 00:44:24,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:44:24,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:44:24,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:44:24,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:44:26,722.722 INFO    ] ================================================
[2026-06-05 00:44:26,737.737 INFO    ] Launching Daemon at Fri Jun  5 00:44:26 IST 2026
[2026-06-05 00:44:26,748.748 INFO    ] ================================================
[2026-06-05 00:44:27,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:44:27
[2026-06-05 00:44:27,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:44:28,159.159 INFO    ] Initializing speech engine...
[2026-06-05 00:44:28,165.165 INFO    ] 2026-06-05 00:44:28
[2026-06-05 00:44:28,459.459 INFO    ] 2026-06-05 00:44:28
[2026-06-05 00:44:28,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:44:28,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:44:28,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:44:28,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:44:28,832.832 INFO    ] time= 05/06/2026 00:44:28
[2026-06-05 00:44:28,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:44:28,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:44:28,955.955 INFO    ] No existing commands found in stream
[2026-06-05 00:44:33,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:44:33,970.970 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 00:44:37,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:44:37,577.577 INFO    ] Checking for system updates...
[2026-06-05 00:44:37,613.613 INFO    ] 200
[2026-06-05 00:44:37,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:37,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:44:37,671.671 INFO    ] No update needed
[2026-06-05 00:44:37,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 00:44:37,707.707 INFO    ] 200
[2026-06-05 00:44:37,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:37,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:44:37,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:44:37,800.800 INFO    ] No camera update needed
[2026-06-05 00:44:37,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:44:37,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:44:37,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:44:37,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:44:39,860.860 INFO    ] ================================================
[2026-06-05 00:44:39,876.876 INFO    ] Launching Daemon at Fri Jun  5 00:44:39 IST 2026
[2026-06-05 00:44:39,886.886 INFO    ] ================================================
[2026-06-05 00:44:40,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:44:40
[2026-06-05 00:44:41,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:44:41,323.323 INFO    ] Initializing speech engine...
[2026-06-05 00:44:41,340.340 INFO    ] 2026-06-05 00:44:41
[2026-06-05 00:44:41,608.608 INFO    ] 2026-06-05 00:44:41
[2026-06-05 00:44:41,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:44:41,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:44:41,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:44:42,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:44:42,019.019 INFO    ] time= 05/06/2026 00:44:42
[2026-06-05 00:44:42,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:44:42,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:44:42,166.166 INFO    ] No existing commands found in stream
[2026-06-05 00:44:47,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:44:47,194.194 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 00:44:50,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:44:50,846.846 INFO    ] Checking for system updates...
[2026-06-05 00:44:50,882.882 INFO    ] 200
[2026-06-05 00:44:50,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:50,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:44:50,939.939 INFO    ] No update needed
[2026-06-05 00:44:50,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 00:44:50,976.976 INFO    ] 200
[2026-06-05 00:44:50,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:44:51,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:44:51,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:44:51,078.078 INFO    ] No camera update needed
[2026-06-05 00:44:51,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:44:51,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:44:51,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:44:51,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:44:53,142.142 INFO    ] ================================================
[2026-06-05 00:44:53,157.157 INFO    ] Launching Daemon at Fri Jun  5 00:44:53 IST 2026
[2026-06-05 00:44:53,168.168 INFO    ] ================================================
[2026-06-05 00:44:53,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:44:53
[2026-06-05 00:44:54,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:44:54,597.597 INFO    ] Initializing speech engine...
[2026-06-05 00:44:54,604.604 INFO    ] 2026-06-05 00:44:54
[2026-06-05 00:44:54,856.856 INFO    ] 2026-06-05 00:44:54
[2026-06-05 00:44:54,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:44:55,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:44:55,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:44:55,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:44:55,232.232 INFO    ] time= 05/06/2026 00:44:55
[2026-06-05 00:44:55,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:44:55,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:44:55,388.388 INFO    ] No existing commands found in stream
[2026-06-05 00:45:00,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:45:00,416.416 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-05 00:45:03,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:45:03,825.825 INFO    ] Checking for system updates...
[2026-06-05 00:45:03,887.887 INFO    ] 200
[2026-06-05 00:45:03,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:03,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:45:03,961.961 INFO    ] No update needed
[2026-06-05 00:45:03,963.963 INFO    ] Checking for camera pi updates...
[2026-06-05 00:45:04,006.006 INFO    ] 200
[2026-06-05 00:45:04,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:04,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:45:04,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:45:04,100.100 INFO    ] No camera update needed
[2026-06-05 00:45:04,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:45:04,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:45:04,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:45:04,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:45:06,158.158 INFO    ] ================================================
[2026-06-05 00:45:06,181.181 INFO    ] Launching Daemon at Fri Jun  5 00:45:06 IST 2026
[2026-06-05 00:45:06,193.193 INFO    ] ================================================
[2026-06-05 00:45:06,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:45:06
[2026-06-05 00:45:07,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:45:07,654.654 INFO    ] Initializing speech engine...
[2026-06-05 00:45:07,677.677 INFO    ] 2026-06-05 00:45:07
[2026-06-05 00:45:07,933.933 INFO    ] 2026-06-05 00:45:07
[2026-06-05 00:45:07,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:45:08,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:45:08,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:45:08,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:45:08,412.412 INFO    ] time= 05/06/2026 00:45:08
[2026-06-05 00:45:08,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:45:08,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:45:08,553.553 INFO    ] No existing commands found in stream
[2026-06-05 00:45:13,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:45:13,568.568 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 00:45:17,414.414 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:45:17,416.416 INFO    ] Checking for system updates...
[2026-06-05 00:45:17,452.452 INFO    ] 200
[2026-06-05 00:45:17,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:17,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:45:17,510.510 INFO    ] No update needed
[2026-06-05 00:45:17,513.513 INFO    ] Checking for camera pi updates...
[2026-06-05 00:45:17,550.550 INFO    ] 200
[2026-06-05 00:45:17,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:17,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:45:17,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:45:17,645.645 INFO    ] No camera update needed
[2026-06-05 00:45:17,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:45:17,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:45:17,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:45:17,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:45:19,703.703 INFO    ] ================================================
[2026-06-05 00:45:19,719.719 INFO    ] Launching Daemon at Fri Jun  5 00:45:19 IST 2026
[2026-06-05 00:45:19,731.731 INFO    ] ================================================
[2026-06-05 00:45:20,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:45:20
[2026-06-05 00:45:21,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:45:21,337.337 INFO    ] Initializing speech engine...
[2026-06-05 00:45:21,344.344 INFO    ] 2026-06-05 00:45:21
[2026-06-05 00:45:21,600.600 INFO    ] 2026-06-05 00:45:21
[2026-06-05 00:45:21,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:45:21,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:45:21,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:45:21,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:45:21,970.970 INFO    ] time= 05/06/2026 00:45:21
[2026-06-05 00:45:21,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:45:22,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:45:22,124.124 INFO    ] No existing commands found in stream
[2026-06-05 00:45:27,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:45:27,157.157 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 00:45:31,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:45:31,254.254 INFO    ] Checking for system updates...
[2026-06-05 00:45:31,302.302 INFO    ] 200
[2026-06-05 00:45:31,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:31,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:45:31,365.365 INFO    ] No update needed
[2026-06-05 00:45:31,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 00:45:31,403.403 INFO    ] 200
[2026-06-05 00:45:31,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:31,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:45:31,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:45:31,500.500 INFO    ] No camera update needed
[2026-06-05 00:45:31,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:45:31,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:45:31,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:45:31,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:45:33,566.566 INFO    ] ================================================
[2026-06-05 00:45:33,583.583 INFO    ] Launching Daemon at Fri Jun  5 00:45:33 IST 2026
[2026-06-05 00:45:33,595.595 INFO    ] ================================================
[2026-06-05 00:45:34,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:45:34
[2026-06-05 00:45:34,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:45:35,239.239 INFO    ] Initializing speech engine...
[2026-06-05 00:45:35,244.244 INFO    ] 2026-06-05 00:45:35
[2026-06-05 00:45:35,493.493 INFO    ] 2026-06-05 00:45:35
[2026-06-05 00:45:35,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:45:35,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:45:35,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:45:35,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:45:35,899.899 INFO    ] time= 05/06/2026 00:45:35
[2026-06-05 00:45:35,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:45:35,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:45:35,987.987 INFO    ] No existing commands found in stream
[2026-06-05 00:45:41,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:45:41,004.004 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 00:45:43,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:45:43,752.752 INFO    ] Checking for system updates...
[2026-06-05 00:45:43,788.788 INFO    ] 200
[2026-06-05 00:45:43,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:43,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:45:43,852.852 INFO    ] No update needed
[2026-06-05 00:45:43,854.854 INFO    ] Checking for camera pi updates...
[2026-06-05 00:45:43,888.888 INFO    ] 200
[2026-06-05 00:45:43,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:43,935.935 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:45:43,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:45:43,989.989 INFO    ] No camera update needed
[2026-06-05 00:45:43,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:45:43,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:45:43,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:45:44,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:45:46,044.044 INFO    ] ================================================
[2026-06-05 00:45:46,059.059 INFO    ] Launching Daemon at Fri Jun  5 00:45:46 IST 2026
[2026-06-05 00:45:46,071.071 INFO    ] ================================================
[2026-06-05 00:45:46,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:45:46
[2026-06-05 00:45:47,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:45:47,510.510 INFO    ] Initializing speech engine...
[2026-06-05 00:45:47,516.516 INFO    ] 2026-06-05 00:45:47
[2026-06-05 00:45:47,777.777 INFO    ] 2026-06-05 00:45:47
[2026-06-05 00:45:47,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:45:48,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:45:48,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:45:48,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:45:48,248.248 INFO    ] time= 05/06/2026 00:45:48
[2026-06-05 00:45:48,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:45:48,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:45:48,385.385 INFO    ] No existing commands found in stream
[2026-06-05 00:45:53,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:45:53,400.400 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 00:45:54,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:45:54,649.649 INFO    ] Checking for system updates...
[2026-06-05 00:45:54,686.686 INFO    ] 200
[2026-06-05 00:45:54,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:54,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:45:54,743.743 INFO    ] No update needed
[2026-06-05 00:45:54,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 00:45:54,779.779 INFO    ] 200
[2026-06-05 00:45:54,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:45:54,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:45:54,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:45:54,880.880 INFO    ] No camera update needed
[2026-06-05 00:45:54,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:45:54,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:45:54,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:45:54,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:45:56,937.937 INFO    ] ================================================
[2026-06-05 00:45:56,953.953 INFO    ] Launching Daemon at Fri Jun  5 00:45:56 IST 2026
[2026-06-05 00:45:56,964.964 INFO    ] ================================================
[2026-06-05 00:45:57,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:45:57
[2026-06-05 00:45:58,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:45:58,362.362 INFO    ] Initializing speech engine...
[2026-06-05 00:45:58,370.370 INFO    ] 2026-06-05 00:45:58
[2026-06-05 00:45:58,644.644 INFO    ] 2026-06-05 00:45:58
[2026-06-05 00:45:58,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:45:58,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:45:58,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:45:59,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:45:59,088.088 INFO    ] time= 05/06/2026 00:45:59
[2026-06-05 00:45:59,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:45:59,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:45:59,269.269 INFO    ] No existing commands found in stream
[2026-06-05 00:46:04,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:46:04,283.283 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 00:46:08,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:46:08,095.095 INFO    ] Checking for system updates...
[2026-06-05 00:46:08,136.136 INFO    ] 200
[2026-06-05 00:46:08,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:08,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:46:08,194.194 INFO    ] No update needed
[2026-06-05 00:46:08,197.197 INFO    ] Checking for camera pi updates...
[2026-06-05 00:46:08,230.230 INFO    ] 200
[2026-06-05 00:46:08,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:08,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:46:08,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:46:08,434.434 INFO    ] No camera update needed
[2026-06-05 00:46:08,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:46:08,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:46:08,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:46:08,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:46:10,491.491 INFO    ] ================================================
[2026-06-05 00:46:10,506.506 INFO    ] Launching Daemon at Fri Jun  5 00:46:10 IST 2026
[2026-06-05 00:46:10,518.518 INFO    ] ================================================
[2026-06-05 00:46:11,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:46:11
[2026-06-05 00:46:11,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:46:11,940.940 INFO    ] Initializing speech engine...
[2026-06-05 00:46:11,956.956 INFO    ] 2026-06-05 00:46:11
[2026-06-05 00:46:12,245.245 INFO    ] 2026-06-05 00:46:12
[2026-06-05 00:46:12,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:46:12,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:46:12,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:46:12,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:46:12,637.637 INFO    ] time= 05/06/2026 00:46:12
[2026-06-05 00:46:12,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:46:12,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:46:12,765.765 INFO    ] No existing commands found in stream
[2026-06-05 00:46:17,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:46:17,780.780 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 00:46:19,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:46:19,170.170 INFO    ] Checking for system updates...
[2026-06-05 00:46:19,211.211 INFO    ] 200
[2026-06-05 00:46:19,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:19,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:46:19,268.268 INFO    ] No update needed
[2026-06-05 00:46:19,270.270 INFO    ] Checking for camera pi updates...
[2026-06-05 00:46:19,306.306 INFO    ] 200
[2026-06-05 00:46:19,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:19,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:46:19,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:46:19,404.404 INFO    ] No camera update needed
[2026-06-05 00:46:19,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:46:19,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:46:19,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:46:19,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:46:21,460.460 INFO    ] ================================================
[2026-06-05 00:46:21,477.477 INFO    ] Launching Daemon at Fri Jun  5 00:46:21 IST 2026
[2026-06-05 00:46:21,488.488 INFO    ] ================================================
[2026-06-05 00:46:22,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:46:22
[2026-06-05 00:46:22,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:46:23,173.173 INFO    ] Initializing speech engine...
[2026-06-05 00:46:23,182.182 INFO    ] 2026-06-05 00:46:23
[2026-06-05 00:46:23,490.490 INFO    ] 2026-06-05 00:46:23
[2026-06-05 00:46:23,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:46:23,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:46:23,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:46:23,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:46:24,000.000 INFO    ] time= 05/06/2026 00:46:23
[2026-06-05 00:46:24,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:46:24,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:46:24,152.152 INFO    ] No existing commands found in stream
[2026-06-05 00:46:29,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:46:29,171.171 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 00:46:32,974.974 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:46:32,977.977 INFO    ] Checking for system updates...
[2026-06-05 00:46:33,020.020 INFO    ] 200
[2026-06-05 00:46:33,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:33,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:46:33,081.081 INFO    ] No update needed
[2026-06-05 00:46:33,084.084 INFO    ] Checking for camera pi updates...
[2026-06-05 00:46:33,120.120 INFO    ] 200
[2026-06-05 00:46:33,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:33,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:46:33,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:46:33,224.224 INFO    ] No camera update needed
[2026-06-05 00:46:33,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:46:33,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:46:33,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:46:33,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:46:35,286.286 INFO    ] ================================================
[2026-06-05 00:46:35,302.302 INFO    ] Launching Daemon at Fri Jun  5 00:46:35 IST 2026
[2026-06-05 00:46:35,314.314 INFO    ] ================================================
[2026-06-05 00:46:35,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:46:35
[2026-06-05 00:46:36,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:46:36,727.727 INFO    ] Initializing speech engine...
[2026-06-05 00:46:36,734.734 INFO    ] 2026-06-05 00:46:36
[2026-06-05 00:46:37,042.042 INFO    ] 2026-06-05 00:46:36
[2026-06-05 00:46:37,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:46:37,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:46:37,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:46:37,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:46:37,439.439 INFO    ] time= 05/06/2026 00:46:37
[2026-06-05 00:46:37,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:46:37,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:46:37,500.500 INFO    ] No existing commands found in stream
[2026-06-05 00:46:42,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:46:42,515.515 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 00:46:44,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:46:44,940.940 INFO    ] Checking for system updates...
[2026-06-05 00:46:44,982.982 INFO    ] 200
[2026-06-05 00:46:44,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:45,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:46:45,047.047 INFO    ] No update needed
[2026-06-05 00:46:45,050.050 INFO    ] Checking for camera pi updates...
[2026-06-05 00:46:45,085.085 INFO    ] 200
[2026-06-05 00:46:45,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:45,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:46:45,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:46:45,181.181 INFO    ] No camera update needed
[2026-06-05 00:46:45,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:46:45,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:46:45,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:46:45,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:46:47,237.237 INFO    ] ================================================
[2026-06-05 00:46:47,252.252 INFO    ] Launching Daemon at Fri Jun  5 00:46:47 IST 2026
[2026-06-05 00:46:47,265.265 INFO    ] ================================================
[2026-06-05 00:46:47,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:46:47
[2026-06-05 00:46:48,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:46:48,683.683 INFO    ] Initializing speech engine...
[2026-06-05 00:46:48,706.706 INFO    ] 2026-06-05 00:46:48
[2026-06-05 00:46:48,958.958 INFO    ] 2026-06-05 00:46:48
[2026-06-05 00:46:48,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:46:49,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:46:49,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:46:49,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:46:49,327.327 INFO    ] time= 05/06/2026 00:46:49
[2026-06-05 00:46:49,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:46:49,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:46:49,402.402 INFO    ] No existing commands found in stream
[2026-06-05 00:46:54,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:46:54,417.417 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 00:46:54,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:46:54,862.862 INFO    ] Checking for system updates...
[2026-06-05 00:46:54,898.898 INFO    ] 200
[2026-06-05 00:46:54,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:54,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:46:54,961.961 INFO    ] No update needed
[2026-06-05 00:46:54,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 00:46:55,004.004 INFO    ] 200
[2026-06-05 00:46:55,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:46:55,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:46:55,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:46:55,094.094 INFO    ] No camera update needed
[2026-06-05 00:46:55,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:46:55,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:46:55,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:46:55,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:46:57,151.151 INFO    ] ================================================
[2026-06-05 00:46:57,166.166 INFO    ] Launching Daemon at Fri Jun  5 00:46:57 IST 2026
[2026-06-05 00:46:57,177.177 INFO    ] ================================================
[2026-06-05 00:46:57,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:46:57
[2026-06-05 00:46:58,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:46:58,643.643 INFO    ] Initializing speech engine...
[2026-06-05 00:46:58,654.654 INFO    ] 2026-06-05 00:46:58
[2026-06-05 00:46:58,899.899 INFO    ] 2026-06-05 00:46:58
[2026-06-05 00:46:58,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:46:59,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:46:59,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:46:59,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:46:59,375.375 INFO    ] time= 05/06/2026 00:46:59
[2026-06-05 00:46:59,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:46:59,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:46:59,587.587 INFO    ] No existing commands found in stream
[2026-06-05 00:47:04,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:47:04,620.620 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 00:47:07,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:47:07,657.657 INFO    ] Checking for system updates...
[2026-06-05 00:47:07,693.693 INFO    ] 200
[2026-06-05 00:47:07,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:07,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:47:07,758.758 INFO    ] No update needed
[2026-06-05 00:47:07,760.760 INFO    ] Checking for camera pi updates...
[2026-06-05 00:47:07,798.798 INFO    ] 200
[2026-06-05 00:47:07,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:07,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:47:07,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:47:07,893.893 INFO    ] No camera update needed
[2026-06-05 00:47:07,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:47:07,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:47:07,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:47:07,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:47:09,949.949 INFO    ] ================================================
[2026-06-05 00:47:09,964.964 INFO    ] Launching Daemon at Fri Jun  5 00:47:09 IST 2026
[2026-06-05 00:47:09,975.975 INFO    ] ================================================
[2026-06-05 00:47:10,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:47:10
[2026-06-05 00:47:11,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:47:11,603.603 INFO    ] Initializing speech engine...
[2026-06-05 00:47:11,610.610 INFO    ] 2026-06-05 00:47:11
[2026-06-05 00:47:11,900.900 INFO    ] 2026-06-05 00:47:11
[2026-06-05 00:47:11,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:47:12,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:47:12,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:47:12,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:47:12,435.435 INFO    ] time= 05/06/2026 00:47:12
[2026-06-05 00:47:12,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:47:12,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:47:12,585.585 INFO    ] No existing commands found in stream
[2026-06-05 00:47:17,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:47:17,604.604 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 00:47:20,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:47:20,961.961 INFO    ] Checking for system updates...
[2026-06-05 00:47:20,999.999 INFO    ] 200
[2026-06-05 00:47:21,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:21,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:47:21,064.064 INFO    ] No update needed
[2026-06-05 00:47:21,067.067 INFO    ] Checking for camera pi updates...
[2026-06-05 00:47:21,104.104 INFO    ] 200
[2026-06-05 00:47:21,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:21,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:47:21,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:47:21,208.208 INFO    ] No camera update needed
[2026-06-05 00:47:21,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:47:21,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:47:21,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:47:21,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:47:23,263.263 INFO    ] ================================================
[2026-06-05 00:47:23,278.278 INFO    ] Launching Daemon at Fri Jun  5 00:47:23 IST 2026
[2026-06-05 00:47:23,289.289 INFO    ] ================================================
[2026-06-05 00:47:23,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:47:23
[2026-06-05 00:47:24,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:47:24,689.689 INFO    ] Initializing speech engine...
[2026-06-05 00:47:24,703.703 INFO    ] 2026-06-05 00:47:24
[2026-06-05 00:47:24,968.968 INFO    ] 2026-06-05 00:47:24
[2026-06-05 00:47:25,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:47:25,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:47:25,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:47:25,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:47:25,343.343 INFO    ] time= 05/06/2026 00:47:25
[2026-06-05 00:47:25,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:47:25,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:47:25,504.504 INFO    ] No existing commands found in stream
[2026-06-05 00:47:30,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:47:30,533.533 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 00:47:34,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:47:34,839.839 INFO    ] Checking for system updates...
[2026-06-05 00:47:34,886.886 INFO    ] 200
[2026-06-05 00:47:34,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:34,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:47:34,947.947 INFO    ] No update needed
[2026-06-05 00:47:34,949.949 INFO    ] Checking for camera pi updates...
[2026-06-05 00:47:34,983.983 INFO    ] 200
[2026-06-05 00:47:34,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:35,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:47:35,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:47:35,074.074 INFO    ] No camera update needed
[2026-06-05 00:47:35,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:47:35,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:47:35,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:47:35,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:47:37,132.132 INFO    ] ================================================
[2026-06-05 00:47:37,147.147 INFO    ] Launching Daemon at Fri Jun  5 00:47:37 IST 2026
[2026-06-05 00:47:37,157.157 INFO    ] ================================================
[2026-06-05 00:47:37,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:47:37
[2026-06-05 00:47:38,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:47:38,587.587 INFO    ] Initializing speech engine...
[2026-06-05 00:47:38,596.596 INFO    ] 2026-06-05 00:47:38
[2026-06-05 00:47:38,855.855 INFO    ] 2026-06-05 00:47:38
[2026-06-05 00:47:38,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:47:39,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:47:39,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:47:39,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:47:39,333.333 INFO    ] time= 05/06/2026 00:47:39
[2026-06-05 00:47:39,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:47:39,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:47:39,467.467 INFO    ] No existing commands found in stream
[2026-06-05 00:47:44,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:47:44,484.484 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 00:47:47,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:47:47,940.940 INFO    ] Checking for system updates...
[2026-06-05 00:47:47,981.981 INFO    ] 200
[2026-06-05 00:47:47,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:48,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:47:48,053.053 INFO    ] No update needed
[2026-06-05 00:47:48,056.056 INFO    ] Checking for camera pi updates...
[2026-06-05 00:47:48,094.094 INFO    ] 200
[2026-06-05 00:47:48,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:48,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:47:48,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:47:48,198.198 INFO    ] No camera update needed
[2026-06-05 00:47:48,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:47:48,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:47:48,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:47:48,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:47:50,257.257 INFO    ] ================================================
[2026-06-05 00:47:50,273.273 INFO    ] Launching Daemon at Fri Jun  5 00:47:50 IST 2026
[2026-06-05 00:47:50,284.284 INFO    ] ================================================
[2026-06-05 00:47:50,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:47:50
[2026-06-05 00:47:51,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:47:51,706.706 INFO    ] Initializing speech engine...
[2026-06-05 00:47:51,714.714 INFO    ] 2026-06-05 00:47:51
[2026-06-05 00:47:51,973.973 INFO    ] 2026-06-05 00:47:51
[2026-06-05 00:47:52,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:47:52,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:47:52,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:47:52,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:47:52,352.352 INFO    ] time= 05/06/2026 00:47:52
[2026-06-05 00:47:52,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:47:52,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:47:52,476.476 INFO    ] No existing commands found in stream
[2026-06-05 00:47:57,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:47:57,491.491 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 00:47:59,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:47:59,624.624 INFO    ] Checking for system updates...
[2026-06-05 00:47:59,663.663 INFO    ] 200
[2026-06-05 00:47:59,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:59,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:47:59,721.721 INFO    ] No update needed
[2026-06-05 00:47:59,723.723 INFO    ] Checking for camera pi updates...
[2026-06-05 00:47:59,760.760 INFO    ] 200
[2026-06-05 00:47:59,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:47:59,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:47:59,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:47:59,858.858 INFO    ] No camera update needed
[2026-06-05 00:47:59,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:47:59,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:47:59,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:47:59,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:48:01,917.917 INFO    ] ================================================
[2026-06-05 00:48:01,937.937 INFO    ] Launching Daemon at Fri Jun  5 00:48:01 IST 2026
[2026-06-05 00:48:01,959.959 INFO    ] ================================================
[2026-06-05 00:48:02,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:48:02
[2026-06-05 00:48:03,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:48:03,492.492 INFO    ] Initializing speech engine...
[2026-06-05 00:48:03,500.500 INFO    ] 2026-06-05 00:48:03
[2026-06-05 00:48:03,758.758 INFO    ] 2026-06-05 00:48:03
[2026-06-05 00:48:03,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:48:04,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:48:04,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:48:04,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:48:04,218.218 INFO    ] time= 05/06/2026 00:48:04
[2026-06-05 00:48:04,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:48:04,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:48:04,373.373 INFO    ] No existing commands found in stream
[2026-06-05 00:48:09,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:48:09,408.408 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 00:48:11,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:48:11,107.107 INFO    ] Checking for system updates...
[2026-06-05 00:48:11,145.145 INFO    ] 200
[2026-06-05 00:48:11,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:11,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:48:11,211.211 INFO    ] No update needed
[2026-06-05 00:48:11,214.214 INFO    ] Checking for camera pi updates...
[2026-06-05 00:48:11,253.253 INFO    ] 200
[2026-06-05 00:48:11,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:11,297.297 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:48:11,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:48:11,441.441 INFO    ] No camera update needed
[2026-06-05 00:48:11,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:48:11,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:48:11,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:48:11,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:48:13,497.497 INFO    ] ================================================
[2026-06-05 00:48:13,512.512 INFO    ] Launching Daemon at Fri Jun  5 00:48:13 IST 2026
[2026-06-05 00:48:13,523.523 INFO    ] ================================================
[2026-06-05 00:48:14,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:48:14
[2026-06-05 00:48:14,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:48:14,989.989 INFO    ] Initializing speech engine...
[2026-06-05 00:48:14,997.997 INFO    ] 2026-06-05 00:48:14
[2026-06-05 00:48:15,257.257 INFO    ] 2026-06-05 00:48:15
[2026-06-05 00:48:15,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:48:15,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:48:15,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:48:15,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:48:15,712.712 INFO    ] time= 05/06/2026 00:48:15
[2026-06-05 00:48:15,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:48:15,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:48:15,863.863 INFO    ] No existing commands found in stream
[2026-06-05 00:48:20,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:48:20,879.879 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 00:48:23,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:48:23,668.668 INFO    ] Checking for system updates...
[2026-06-05 00:48:23,705.705 INFO    ] 200
[2026-06-05 00:48:23,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:23,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:48:23,765.765 INFO    ] No update needed
[2026-06-05 00:48:23,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 00:48:23,806.806 INFO    ] 200
[2026-06-05 00:48:23,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:23,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:48:23,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:48:23,902.902 INFO    ] No camera update needed
[2026-06-05 00:48:23,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:48:23,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:48:23,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:48:23,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:48:25,957.957 INFO    ] ================================================
[2026-06-05 00:48:25,972.972 INFO    ] Launching Daemon at Fri Jun  5 00:48:25 IST 2026
[2026-06-05 00:48:25,983.983 INFO    ] ================================================
[2026-06-05 00:48:26,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:48:26
[2026-06-05 00:48:27,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:48:27,632.632 INFO    ] Initializing speech engine...
[2026-06-05 00:48:27,644.644 INFO    ] 2026-06-05 00:48:27
[2026-06-05 00:48:27,899.899 INFO    ] 2026-06-05 00:48:27
[2026-06-05 00:48:27,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:48:28,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:48:28,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:48:28,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:48:28,283.283 INFO    ] time= 05/06/2026 00:48:28
[2026-06-05 00:48:28,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:48:28,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:48:28,411.411 INFO    ] No existing commands found in stream
[2026-06-05 00:48:33,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:48:33,424.424 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 00:48:35,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:48:35,137.137 INFO    ] Checking for system updates...
[2026-06-05 00:48:35,178.178 INFO    ] 200
[2026-06-05 00:48:35,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:35,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:48:35,236.236 INFO    ] No update needed
[2026-06-05 00:48:35,238.238 INFO    ] Checking for camera pi updates...
[2026-06-05 00:48:35,272.272 INFO    ] 200
[2026-06-05 00:48:35,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:35,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:48:35,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:48:35,363.363 INFO    ] No camera update needed
[2026-06-05 00:48:35,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:48:35,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:48:35,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:48:35,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:48:37,419.419 INFO    ] ================================================
[2026-06-05 00:48:37,435.435 INFO    ] Launching Daemon at Fri Jun  5 00:48:37 IST 2026
[2026-06-05 00:48:37,445.445 INFO    ] ================================================
[2026-06-05 00:48:38,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:48:38
[2026-06-05 00:48:38,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:48:39,122.122 INFO    ] Initializing speech engine...
[2026-06-05 00:48:39,128.128 INFO    ] 2026-06-05 00:48:39
[2026-06-05 00:48:39,439.439 INFO    ] 2026-06-05 00:48:39
[2026-06-05 00:48:39,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:48:39,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:48:39,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:48:39,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:48:39,953.953 INFO    ] time= 05/06/2026 00:48:39
[2026-06-05 00:48:39,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:48:40,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:48:40,109.109 INFO    ] No existing commands found in stream
[2026-06-05 00:48:45,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:48:45,129.129 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 00:48:48,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:48:48,176.176 INFO    ] Checking for system updates...
[2026-06-05 00:48:48,218.218 INFO    ] 200
[2026-06-05 00:48:48,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:48,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:48:48,285.285 INFO    ] No update needed
[2026-06-05 00:48:48,287.287 INFO    ] Checking for camera pi updates...
[2026-06-05 00:48:48,322.322 INFO    ] 200
[2026-06-05 00:48:48,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:48,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:48:48,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:48:48,416.416 INFO    ] No camera update needed
[2026-06-05 00:48:48,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:48:48,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:48:48,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:48:48,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:48:50,472.472 INFO    ] ================================================
[2026-06-05 00:48:50,487.487 INFO    ] Launching Daemon at Fri Jun  5 00:48:50 IST 2026
[2026-06-05 00:48:50,498.498 INFO    ] ================================================
[2026-06-05 00:48:51,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:48:51
[2026-06-05 00:48:51,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:48:51,922.922 INFO    ] Initializing speech engine...
[2026-06-05 00:48:51,930.930 INFO    ] 2026-06-05 00:48:51
[2026-06-05 00:48:52,190.190 INFO    ] 2026-06-05 00:48:52
[2026-06-05 00:48:52,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:48:52,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:48:52,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:48:52,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:48:52,642.642 INFO    ] time= 05/06/2026 00:48:52
[2026-06-05 00:48:52,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:48:52,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:48:52,795.795 INFO    ] No existing commands found in stream
[2026-06-05 00:48:57,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:48:57,810.810 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 00:48:59,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:48:59,448.448 INFO    ] Checking for system updates...
[2026-06-05 00:48:59,489.489 INFO    ] 200
[2026-06-05 00:48:59,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:59,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:48:59,554.554 INFO    ] No update needed
[2026-06-05 00:48:59,557.557 INFO    ] Checking for camera pi updates...
[2026-06-05 00:48:59,595.595 INFO    ] 200
[2026-06-05 00:48:59,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:48:59,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:48:59,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:48:59,694.694 INFO    ] No camera update needed
[2026-06-05 00:48:59,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:48:59,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:48:59,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:48:59,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:49:01,752.752 INFO    ] ================================================
[2026-06-05 00:49:01,775.775 INFO    ] Launching Daemon at Fri Jun  5 00:49:01 IST 2026
[2026-06-05 00:49:01,792.792 INFO    ] ================================================
[2026-06-05 00:49:02,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:49:02
[2026-06-05 00:49:03,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:49:03,344.344 INFO    ] Initializing speech engine...
[2026-06-05 00:49:03,351.351 INFO    ] 2026-06-05 00:49:03
[2026-06-05 00:49:03,598.598 INFO    ] 2026-06-05 00:49:03
[2026-06-05 00:49:03,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:49:03,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:49:03,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:49:03,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:49:03,981.981 INFO    ] time= 05/06/2026 00:49:03
[2026-06-05 00:49:04,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:49:04,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:49:04,110.110 INFO    ] No existing commands found in stream
[2026-06-05 00:49:09,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:49:09,131.131 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 00:49:09,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:49:09,566.566 INFO    ] Checking for system updates...
[2026-06-05 00:49:09,606.606 INFO    ] 200
[2026-06-05 00:49:09,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:09,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:49:09,664.664 INFO    ] No update needed
[2026-06-05 00:49:09,666.666 INFO    ] Checking for camera pi updates...
[2026-06-05 00:49:09,702.702 INFO    ] 200
[2026-06-05 00:49:09,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:09,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:49:09,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:49:09,799.799 INFO    ] No camera update needed
[2026-06-05 00:49:09,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:49:09,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:49:09,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:49:09,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:49:11,857.857 INFO    ] ================================================
[2026-06-05 00:49:11,872.872 INFO    ] Launching Daemon at Fri Jun  5 00:49:11 IST 2026
[2026-06-05 00:49:11,883.883 INFO    ] ================================================
[2026-06-05 00:49:12,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:49:12
[2026-06-05 00:49:13,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:49:13,311.311 INFO    ] Initializing speech engine...
[2026-06-05 00:49:13,332.332 INFO    ] 2026-06-05 00:49:13
[2026-06-05 00:49:13,597.597 INFO    ] 2026-06-05 00:49:13
[2026-06-05 00:49:13,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:49:13,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:49:13,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:49:14,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:49:14,111.111 INFO    ] time= 05/06/2026 00:49:14
[2026-06-05 00:49:14,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:49:14,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:49:14,303.303 INFO    ] No existing commands found in stream
[2026-06-05 00:49:19,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:49:19,338.338 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 00:49:22,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:49:22,288.288 INFO    ] Checking for system updates...
[2026-06-05 00:49:22,328.328 INFO    ] 200
[2026-06-05 00:49:22,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:22,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:49:22,393.393 INFO    ] No update needed
[2026-06-05 00:49:22,395.395 INFO    ] Checking for camera pi updates...
[2026-06-05 00:49:22,429.429 INFO    ] 200
[2026-06-05 00:49:22,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:22,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:49:22,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:49:22,532.532 INFO    ] No camera update needed
[2026-06-05 00:49:22,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:49:22,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:49:22,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:49:22,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:49:24,591.591 INFO    ] ================================================
[2026-06-05 00:49:24,606.606 INFO    ] Launching Daemon at Fri Jun  5 00:49:24 IST 2026
[2026-06-05 00:49:24,618.618 INFO    ] ================================================
[2026-06-05 00:49:25,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:49:25
[2026-06-05 00:49:25,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:49:26,108.108 INFO    ] Initializing speech engine...
[2026-06-05 00:49:26,117.117 INFO    ] 2026-06-05 00:49:26
[2026-06-05 00:49:26,380.380 INFO    ] 2026-06-05 00:49:26
[2026-06-05 00:49:26,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:49:26,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:49:26,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:49:26,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:49:26,774.774 INFO    ] time= 05/06/2026 00:49:26
[2026-06-05 00:49:26,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:49:26,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:49:26,853.853 INFO    ] No existing commands found in stream
[2026-06-05 00:49:31,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:49:31,870.870 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 00:49:35,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:49:35,645.645 INFO    ] Checking for system updates...
[2026-06-05 00:49:35,687.687 INFO    ] 200
[2026-06-05 00:49:35,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:35,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:49:35,745.745 INFO    ] No update needed
[2026-06-05 00:49:35,748.748 INFO    ] Checking for camera pi updates...
[2026-06-05 00:49:35,787.787 INFO    ] 200
[2026-06-05 00:49:35,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:35,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:49:35,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:49:35,882.882 INFO    ] No camera update needed
[2026-06-05 00:49:35,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:49:35,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:49:35,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:49:35,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:49:37,937.937 INFO    ] ================================================
[2026-06-05 00:49:37,952.952 INFO    ] Launching Daemon at Fri Jun  5 00:49:37 IST 2026
[2026-06-05 00:49:37,967.967 INFO    ] ================================================
[2026-06-05 00:49:38,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:49:38
[2026-06-05 00:49:39,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:49:39,374.374 INFO    ] Initializing speech engine...
[2026-06-05 00:49:39,396.396 INFO    ] 2026-06-05 00:49:39
[2026-06-05 00:49:39,655.655 INFO    ] 2026-06-05 00:49:39
[2026-06-05 00:49:39,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:49:39,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:49:39,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:49:40,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:49:40,031.031 INFO    ] time= 05/06/2026 00:49:40
[2026-06-05 00:49:40,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:49:40,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:49:40,112.112 INFO    ] No existing commands found in stream
[2026-06-05 00:49:45,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:49:45,129.129 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 00:49:46,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:49:46,690.690 INFO    ] Checking for system updates...
[2026-06-05 00:49:46,732.732 INFO    ] 200
[2026-06-05 00:49:46,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:46,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:49:46,791.791 INFO    ] No update needed
[2026-06-05 00:49:46,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 00:49:46,828.828 INFO    ] 200
[2026-06-05 00:49:46,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:46,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:49:46,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:49:46,924.924 INFO    ] No camera update needed
[2026-06-05 00:49:46,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:49:46,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:49:46,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:49:46,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:49:48,983.983 INFO    ] ================================================
[2026-06-05 00:49:49,999.999 INFO    ] Launching Daemon at Fri Jun  5 00:49:48 IST 2026
[2026-06-05 00:49:49,011.011 INFO    ] ================================================
[2026-06-05 00:49:49,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:49:49
[2026-06-05 00:49:50,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:49:50,474.474 INFO    ] Initializing speech engine...
[2026-06-05 00:49:50,483.483 INFO    ] 2026-06-05 00:49:50
[2026-06-05 00:49:50,747.747 INFO    ] 2026-06-05 00:49:50
[2026-06-05 00:49:50,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:49:51,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:49:51,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:49:51,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:49:51,232.232 INFO    ] time= 05/06/2026 00:49:51
[2026-06-05 00:49:51,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:49:51,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:49:51,352.352 INFO    ] No existing commands found in stream
[2026-06-05 00:49:56,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:49:56,367.367 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 00:49:58,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:49:58,167.167 INFO    ] Checking for system updates...
[2026-06-05 00:49:58,208.208 INFO    ] 200
[2026-06-05 00:49:58,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:58,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:49:58,267.267 INFO    ] No update needed
[2026-06-05 00:49:58,269.269 INFO    ] Checking for camera pi updates...
[2026-06-05 00:49:58,308.308 INFO    ] 200
[2026-06-05 00:49:58,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:49:58,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:49:58,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:49:58,406.406 INFO    ] No camera update needed
[2026-06-05 00:49:58,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:49:58,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:49:58,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:49:58,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:50:00,466.466 INFO    ] ================================================
[2026-06-05 00:50:00,482.482 INFO    ] Launching Daemon at Fri Jun  5 00:50:00 IST 2026
[2026-06-05 00:50:00,493.493 INFO    ] ================================================
[2026-06-05 00:50:01,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:50:01
[2026-06-05 00:50:02,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:50:02,518.518 INFO    ] Initializing speech engine...
[2026-06-05 00:50:02,522.522 INFO    ] 2026-06-05 00:50:02
[2026-06-05 00:50:02,861.861 INFO    ] 2026-06-05 00:50:02
[2026-06-05 00:50:02,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:50:03,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:50:03,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:50:03,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:50:03,272.272 INFO    ] time= 05/06/2026 00:50:03
[2026-06-05 00:50:03,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:50:03,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:50:03,448.448 INFO    ] No existing commands found in stream
[2026-06-05 00:50:08,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:50:08,477.477 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 00:50:11,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:50:11,445.445 INFO    ] Checking for system updates...
[2026-06-05 00:50:11,480.480 INFO    ] 200
[2026-06-05 00:50:11,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:50:11,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:50:11,546.546 INFO    ] No update needed
[2026-06-05 00:50:11,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 00:50:11,586.586 INFO    ] 200
[2026-06-05 00:50:11,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:50:11,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:50:11,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:50:11,674.674 INFO    ] No camera update needed
[2026-06-05 00:50:11,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:50:11,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:50:11,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:50:11,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:50:13,731.731 INFO    ] ================================================
[2026-06-05 00:50:13,747.747 INFO    ] Launching Daemon at Fri Jun  5 00:50:13 IST 2026
[2026-06-05 00:50:13,757.757 INFO    ] ================================================
[2026-06-05 00:50:14,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:50:14
[2026-06-05 00:50:14,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:50:15,218.218 INFO    ] Initializing speech engine...
[2026-06-05 00:50:15,223.223 INFO    ] 2026-06-05 00:50:15
[2026-06-05 00:50:15,484.484 INFO    ] 2026-06-05 00:50:15
[2026-06-05 00:50:15,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:50:15,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:50:15,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:50:15,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:50:15,948.948 INFO    ] time= 05/06/2026 00:50:15
[2026-06-05 00:50:16,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:50:16,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:50:16,141.141 INFO    ] No existing commands found in stream
[2026-06-05 00:50:21,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:50:21,176.176 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 00:50:25,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:50:25,091.091 INFO    ] Checking for system updates...
[2026-06-05 00:50:25,135.135 INFO    ] 200
[2026-06-05 00:50:25,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:50:25,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:50:25,200.200 INFO    ] No update needed
[2026-06-05 00:50:25,202.202 INFO    ] Checking for camera pi updates...
[2026-06-05 00:50:25,240.240 INFO    ] 200
[2026-06-05 00:50:25,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:50:25,283.283 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:50:25,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:50:25,431.431 INFO    ] No camera update needed
[2026-06-05 00:50:25,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:50:25,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:50:25,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:50:25,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:50:27,491.491 INFO    ] ================================================
[2026-06-05 00:50:27,513.513 INFO    ] Launching Daemon at Fri Jun  5 00:50:27 IST 2026
[2026-06-05 00:50:27,523.523 INFO    ] ================================================
[2026-06-05 00:50:28,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:50:28
[2026-06-05 00:50:28,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:50:28,919.919 INFO    ] Initializing speech engine...
[2026-06-05 00:50:28,932.932 INFO    ] 2026-06-05 00:50:28
[2026-06-05 00:50:29,202.202 INFO    ] 2026-06-05 00:50:29
[2026-06-05 00:50:29,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:50:29,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:50:29,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:50:29,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:50:29,573.573 INFO    ] time= 05/06/2026 00:50:29
[2026-06-05 00:50:29,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:50:29,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:50:29,735.735 INFO    ] No existing commands found in stream
[2026-06-05 00:50:34,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:50:34,768.768 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 00:50:37,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:50:37,445.445 INFO    ] Checking for system updates...
[2026-06-05 00:50:37,481.481 INFO    ] 200
[2026-06-05 00:50:37,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:50:37,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:50:37,546.546 INFO    ] No update needed
[2026-06-05 00:50:37,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 00:50:37,582.582 INFO    ] 200
[2026-06-05 00:50:37,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:50:37,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:50:37,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:50:37,686.686 INFO    ] No camera update needed
[2026-06-05 00:50:37,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:50:37,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:50:37,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:50:37,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:50:39,742.742 INFO    ] ================================================
[2026-06-05 00:50:39,758.758 INFO    ] Launching Daemon at Fri Jun  5 00:50:39 IST 2026
[2026-06-05 00:50:39,768.768 INFO    ] ================================================
[2026-06-05 00:50:40,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:50:40
[2026-06-05 00:50:40,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:50:41,174.174 INFO    ] Initializing speech engine...
[2026-06-05 00:50:41,182.182 INFO    ] 2026-06-05 00:50:41
[2026-06-05 00:50:41,473.473 INFO    ] 2026-06-05 00:50:41
[2026-06-05 00:50:41,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:50:41,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:50:41,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:50:41,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:50:41,823.823 INFO    ] time= 05/06/2026 00:50:41
[2026-06-05 00:50:41,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:50:41,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:50:41,907.907 INFO    ] No existing commands found in stream
[2026-06-05 00:50:46,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:50:46,951.951 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 00:50:48,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:50:48,727.727 INFO    ] Checking for system updates...
[2026-06-05 00:50:48,770.770 INFO    ] 200
[2026-06-05 00:50:48,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:50:48,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:50:48,834.834 INFO    ] No update needed
[2026-06-05 00:50:48,837.837 INFO    ] Checking for camera pi updates...
[2026-06-05 00:50:48,881.881 INFO    ] 200
[2026-06-05 00:50:48,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:50:48,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:50:48,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:50:48,985.985 INFO    ] No camera update needed
[2026-06-05 00:50:48,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:50:48,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:50:48,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:50:49,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:50:51,044.044 INFO    ] ================================================
[2026-06-05 00:50:51,059.059 INFO    ] Launching Daemon at Fri Jun  5 00:50:51 IST 2026
[2026-06-05 00:50:51,070.070 INFO    ] ================================================
[2026-06-05 00:50:51,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:50:51
[2026-06-05 00:50:52,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:50:52,474.474 INFO    ] Initializing speech engine...
[2026-06-05 00:50:52,483.483 INFO    ] 2026-06-05 00:50:52
[2026-06-05 00:50:52,786.786 INFO    ] 2026-06-05 00:50:52
[2026-06-05 00:50:52,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:50:52,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:50:52,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:50:53,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:50:53,128.128 INFO    ] time= 05/06/2026 00:50:53
[2026-06-05 00:50:53,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:50:53,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:50:53,208.208 INFO    ] No existing commands found in stream
[2026-06-05 00:50:58,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:50:58,228.228 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 00:51:00,748.748 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:51:00,750.750 INFO    ] Checking for system updates...
[2026-06-05 00:51:00,789.789 INFO    ] 200
[2026-06-05 00:51:00,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:00,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:00,853.853 INFO    ] No update needed
[2026-06-05 00:51:00,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 00:51:00,889.889 INFO    ] 200
[2026-06-05 00:51:00,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:00,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:51:00,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:00,987.987 INFO    ] No camera update needed
[2026-06-05 00:51:00,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:51:00,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:51:00,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:51:01,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:51:03,051.051 INFO    ] ================================================
[2026-06-05 00:51:03,068.068 INFO    ] Launching Daemon at Fri Jun  5 00:51:03 IST 2026
[2026-06-05 00:51:03,080.080 INFO    ] ================================================
[2026-06-05 00:51:03,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:51:03
[2026-06-05 00:51:04,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:51:04,557.557 INFO    ] Initializing speech engine...
[2026-06-05 00:51:04,567.567 INFO    ] 2026-06-05 00:51:04
[2026-06-05 00:51:04,813.813 INFO    ] 2026-06-05 00:51:04
[2026-06-05 00:51:04,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:51:05,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:51:05,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:51:05,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:51:05,289.289 INFO    ] time= 05/06/2026 00:51:05
[2026-06-05 00:51:05,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:51:05,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:51:05,499.499 INFO    ] No existing commands found in stream
[2026-06-05 00:51:10,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:51:10,527.527 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 00:51:12,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:51:12,282.282 INFO    ] Checking for system updates...
[2026-06-05 00:51:12,322.322 INFO    ] 200
[2026-06-05 00:51:12,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:12,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:12,381.381 INFO    ] No update needed
[2026-06-05 00:51:12,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 00:51:12,430.430 INFO    ] 200
[2026-06-05 00:51:12,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:12,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:51:12,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:12,538.538 INFO    ] No camera update needed
[2026-06-05 00:51:12,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:51:12,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:51:12,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:51:12,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:51:14,597.597 INFO    ] ================================================
[2026-06-05 00:51:14,612.612 INFO    ] Launching Daemon at Fri Jun  5 00:51:14 IST 2026
[2026-06-05 00:51:14,623.623 INFO    ] ================================================
[2026-06-05 00:51:15,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:51:15
[2026-06-05 00:51:15,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:51:16,084.084 INFO    ] Initializing speech engine...
[2026-06-05 00:51:16,091.091 INFO    ] 2026-06-05 00:51:16
[2026-06-05 00:51:16,352.352 INFO    ] 2026-06-05 00:51:16
[2026-06-05 00:51:16,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:51:16,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:51:16,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:51:16,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:51:16,805.805 INFO    ] time= 05/06/2026 00:51:16
[2026-06-05 00:51:16,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:51:16,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:51:16,958.958 INFO    ] No existing commands found in stream
[2026-06-05 00:51:21,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:51:21,970.970 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 00:51:22,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:51:22,985.985 INFO    ] Checking for system updates...
[2026-06-05 00:51:23,022.022 INFO    ] 200
[2026-06-05 00:51:23,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:23,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:23,080.080 INFO    ] No update needed
[2026-06-05 00:51:23,083.083 INFO    ] Checking for camera pi updates...
[2026-06-05 00:51:23,118.118 INFO    ] 200
[2026-06-05 00:51:23,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:23,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:51:23,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:23,215.215 INFO    ] No camera update needed
[2026-06-05 00:51:23,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:51:23,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:51:23,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:51:23,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:51:25,271.271 INFO    ] ================================================
[2026-06-05 00:51:25,286.286 INFO    ] Launching Daemon at Fri Jun  5 00:51:25 IST 2026
[2026-06-05 00:51:25,296.296 INFO    ] ================================================
[2026-06-05 00:51:25,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:51:25
[2026-06-05 00:51:26,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:51:26,804.804 INFO    ] Initializing speech engine...
[2026-06-05 00:51:26,814.814 INFO    ] 2026-06-05 00:51:26
[2026-06-05 00:51:27,115.115 INFO    ] 2026-06-05 00:51:27
[2026-06-05 00:51:27,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:51:27,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:51:27,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:51:27,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:51:27,522.522 INFO    ] time= 05/06/2026 00:51:27
[2026-06-05 00:51:27,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:51:27,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:51:27,592.592 INFO    ] No existing commands found in stream
[2026-06-05 00:51:32,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:51:32,609.609 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 00:51:33,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:51:33,322.322 INFO    ] Checking for system updates...
[2026-06-05 00:51:33,363.363 INFO    ] 200
[2026-06-05 00:51:33,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:33,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:33,421.421 INFO    ] No update needed
[2026-06-05 00:51:33,423.423 INFO    ] Checking for camera pi updates...
[2026-06-05 00:51:33,464.464 INFO    ] 200
[2026-06-05 00:51:33,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:33,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:51:33,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:33,562.562 INFO    ] No camera update needed
[2026-06-05 00:51:33,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:51:33,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:51:33,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:51:33,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:51:35,617.617 INFO    ] ================================================
[2026-06-05 00:51:35,632.632 INFO    ] Launching Daemon at Fri Jun  5 00:51:35 IST 2026
[2026-06-05 00:51:35,643.643 INFO    ] ================================================
[2026-06-05 00:51:36,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:51:36
[2026-06-05 00:51:36,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:51:37,290.290 INFO    ] Initializing speech engine...
[2026-06-05 00:51:37,304.304 INFO    ] 2026-06-05 00:51:37
[2026-06-05 00:51:37,619.619 INFO    ] 2026-06-05 00:51:37
[2026-06-05 00:51:37,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:51:37,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:51:37,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:51:38,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:51:38,133.133 INFO    ] time= 05/06/2026 00:51:38
[2026-06-05 00:51:38,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:51:38,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:51:38,287.287 INFO    ] No existing commands found in stream
[2026-06-05 00:51:43,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:51:43,301.301 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 00:51:46,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:51:46,832.832 INFO    ] Checking for system updates...
[2026-06-05 00:51:46,871.871 INFO    ] 200
[2026-06-05 00:51:46,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:46,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:51:46,943.943 INFO    ] No update needed
[2026-06-05 00:51:46,946.946 INFO    ] Checking for camera pi updates...
[2026-06-05 00:51:46,987.987 INFO    ] 200
[2026-06-05 00:51:46,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:47,038.038 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:51:47,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:51:47,089.089 INFO    ] No camera update needed
[2026-06-05 00:51:47,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:51:47,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:51:47,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:51:47,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:51:49,150.150 INFO    ] ================================================
[2026-06-05 00:51:49,166.166 INFO    ] Launching Daemon at Fri Jun  5 00:51:49 IST 2026
[2026-06-05 00:51:49,177.177 INFO    ] ================================================
[2026-06-05 00:51:49,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:51:49
[2026-06-05 00:51:50,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:51:50,583.583 INFO    ] Initializing speech engine...
[2026-06-05 00:51:50,597.597 INFO    ] 2026-06-05 00:51:50
[2026-06-05 00:51:50,865.865 INFO    ] 2026-06-05 00:51:50
[2026-06-05 00:51:50,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:51:51,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:51:51,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:51:51,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:51:51,257.257 INFO    ] time= 05/06/2026 00:51:51
[2026-06-05 00:51:51,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:51:51,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:51:51,372.372 INFO    ] No existing commands found in stream
[2026-06-05 00:51:56,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:51:56,391.391 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 00:51:59,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:51:59,641.641 INFO    ] Checking for system updates...
[2026-06-05 00:51:59,684.684 INFO    ] 200
[2026-06-05 00:51:59,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:59,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:59,754.754 INFO    ] No update needed
[2026-06-05 00:51:59,757.757 INFO    ] Checking for camera pi updates...
[2026-06-05 00:51:59,798.798 INFO    ] 200
[2026-06-05 00:51:59,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:51:59,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:51:59,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:51:59,901.901 INFO    ] No camera update needed
[2026-06-05 00:51:59,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:51:59,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:51:59,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:51:59,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:52:01,965.965 INFO    ] ================================================
[2026-06-05 00:52:01,987.987 INFO    ] Launching Daemon at Fri Jun  5 00:52:01 IST 2026
[2026-06-05 00:52:02,004.004 INFO    ] ================================================
[2026-06-05 00:52:02,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:52:02
[2026-06-05 00:52:03,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:52:03,614.614 INFO    ] Initializing speech engine...
[2026-06-05 00:52:03,629.629 INFO    ] 2026-06-05 00:52:03
[2026-06-05 00:52:03,898.898 INFO    ] 2026-06-05 00:52:03
[2026-06-05 00:52:03,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:52:04,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:52:04,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:52:04,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:52:04,271.271 INFO    ] time= 05/06/2026 00:52:04
[2026-06-05 00:52:04,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:52:04,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:52:04,395.395 INFO    ] No existing commands found in stream
[2026-06-05 00:52:09,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:52:09,411.411 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 00:52:12,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:52:12,378.378 INFO    ] Checking for system updates...
[2026-06-05 00:52:12,414.414 INFO    ] 200
[2026-06-05 00:52:12,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:52:12,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:52:12,477.477 INFO    ] No update needed
[2026-06-05 00:52:12,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 00:52:12,513.513 INFO    ] 200
[2026-06-05 00:52:12,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:52:12,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:52:12,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:52:12,606.606 INFO    ] No camera update needed
[2026-06-05 00:52:12,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:52:12,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:52:12,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:52:12,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:52:14,660.660 INFO    ] ================================================
[2026-06-05 00:52:14,676.676 INFO    ] Launching Daemon at Fri Jun  5 00:52:14 IST 2026
[2026-06-05 00:52:14,688.688 INFO    ] ================================================
[2026-06-05 00:52:15,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:52:15
[2026-06-05 00:52:15,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:52:16,113.113 INFO    ] Initializing speech engine...
[2026-06-05 00:52:16,123.123 INFO    ] 2026-06-05 00:52:16
[2026-06-05 00:52:16,370.370 INFO    ] 2026-06-05 00:52:16
[2026-06-05 00:52:16,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:52:16,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:52:16,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:52:16,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:52:16,788.788 INFO    ] time= 05/06/2026 00:52:16
[2026-06-05 00:52:16,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:52:16,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:52:16,943.943 INFO    ] No existing commands found in stream
[2026-06-05 00:52:21,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:52:21,958.958 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 00:52:24,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:52:24,474.474 INFO    ] Checking for system updates...
[2026-06-05 00:52:24,510.510 INFO    ] 200
[2026-06-05 00:52:24,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:52:24,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:52:24,574.574 INFO    ] No update needed
[2026-06-05 00:52:24,577.577 INFO    ] Checking for camera pi updates...
[2026-06-05 00:52:24,612.612 INFO    ] 200
[2026-06-05 00:52:24,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:52:24,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:52:24,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:52:24,706.706 INFO    ] No camera update needed
[2026-06-05 00:52:24,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:52:24,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:52:24,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:52:24,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:52:26,764.764 INFO    ] ================================================
[2026-06-05 00:52:26,779.779 INFO    ] Launching Daemon at Fri Jun  5 00:52:26 IST 2026
[2026-06-05 00:52:26,790.790 INFO    ] ================================================
[2026-06-05 00:52:27,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:52:27
[2026-06-05 00:52:27,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:52:28,223.223 INFO    ] Initializing speech engine...
[2026-06-05 00:52:28,242.242 INFO    ] 2026-06-05 00:52:28
[2026-06-05 00:52:28,490.490 INFO    ] 2026-06-05 00:52:28
[2026-06-05 00:52:28,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:52:28,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:52:28,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:52:28,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:52:28,997.997 INFO    ] time= 05/06/2026 00:52:28
[2026-06-05 00:52:29,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:52:29,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:52:29,187.187 INFO    ] No existing commands found in stream
[2026-06-05 00:52:34,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:52:34,215.215 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 00:52:35,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:52:35,749.749 INFO    ] Checking for system updates...
[2026-06-05 00:52:35,786.786 INFO    ] 200
[2026-06-05 00:52:35,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:52:35,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:52:35,855.855 INFO    ] No update needed
[2026-06-05 00:52:35,858.858 INFO    ] Checking for camera pi updates...
[2026-06-05 00:52:35,894.894 INFO    ] 200
[2026-06-05 00:52:35,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:52:35,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:52:35,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:52:35,980.980 INFO    ] No camera update needed
[2026-06-05 00:52:35,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:52:35,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:52:35,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:52:35,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:52:38,037.037 INFO    ] ================================================
[2026-06-05 00:52:38,053.053 INFO    ] Launching Daemon at Fri Jun  5 00:52:38 IST 2026
[2026-06-05 00:52:38,064.064 INFO    ] ================================================
[2026-06-05 00:52:38,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:52:38
[2026-06-05 00:52:39,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:52:39,718.718 INFO    ] Initializing speech engine...
[2026-06-05 00:52:39,732.732 INFO    ] 2026-06-05 00:52:39
[2026-06-05 00:52:40,015.015 INFO    ] 2026-06-05 00:52:39
[2026-06-05 00:52:40,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:52:40,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:52:40,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:52:40,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:52:40,477.477 INFO    ] time= 05/06/2026 00:52:40
[2026-06-05 00:52:40,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:52:40,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:52:40,688.688 INFO    ] No existing commands found in stream
[2026-06-05 00:52:45,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:52:45,720.720 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 00:52:46,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:52:46,740.740 INFO    ] Checking for system updates...
[2026-06-05 00:52:46,779.779 INFO    ] 200
[2026-06-05 00:52:46,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:52:46,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:52:46,840.840 INFO    ] No update needed
[2026-06-05 00:52:46,842.842 INFO    ] Checking for camera pi updates...
[2026-06-05 00:52:46,881.881 INFO    ] 200
[2026-06-05 00:52:46,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:52:46,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:52:46,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:52:46,985.985 INFO    ] No camera update needed
[2026-06-05 00:52:46,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:52:46,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:52:46,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:52:47,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:52:49,044.044 INFO    ] ================================================
[2026-06-05 00:52:49,059.059 INFO    ] Launching Daemon at Fri Jun  5 00:52:49 IST 2026
[2026-06-05 00:52:49,070.070 INFO    ] ================================================
[2026-06-05 00:52:49,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:52:49
[2026-06-05 00:52:50,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:52:50,475.475 INFO    ] Initializing speech engine...
[2026-06-05 00:52:50,498.498 INFO    ] 2026-06-05 00:52:50
[2026-06-05 00:52:50,773.773 INFO    ] 2026-06-05 00:52:50
[2026-06-05 00:52:50,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:52:51,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:52:51,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:52:51,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:52:51,162.162 INFO    ] time= 05/06/2026 00:52:51
[2026-06-05 00:52:51,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:52:51,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:52:51,290.290 INFO    ] No existing commands found in stream
[2026-06-05 00:52:56,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:52:56,306.306 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 00:53:00,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:53:00,240.240 INFO    ] Checking for system updates...
[2026-06-05 00:53:00,276.276 INFO    ] 200
[2026-06-05 00:53:00,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:00,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:53:00,342.342 INFO    ] No update needed
[2026-06-05 00:53:00,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 00:53:00,380.380 INFO    ] 200
[2026-06-05 00:53:00,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:00,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:53:00,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:53:00,478.478 INFO    ] No camera update needed
[2026-06-05 00:53:00,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:53:00,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:53:00,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:53:00,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:53:02,550.550 INFO    ] ================================================
[2026-06-05 00:53:02,573.573 INFO    ] Launching Daemon at Fri Jun  5 00:53:02 IST 2026
[2026-06-05 00:53:02,592.592 INFO    ] ================================================
[2026-06-05 00:53:03,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:53:03
[2026-06-05 00:53:03,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:53:04,099.099 INFO    ] Initializing speech engine...
[2026-06-05 00:53:04,114.114 INFO    ] 2026-06-05 00:53:04
[2026-06-05 00:53:04,381.381 INFO    ] 2026-06-05 00:53:04
[2026-06-05 00:53:04,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:53:04,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:53:04,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:53:04,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:53:04,759.759 INFO    ] time= 05/06/2026 00:53:04
[2026-06-05 00:53:04,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:53:04,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:53:04,917.917 INFO    ] No existing commands found in stream
[2026-06-05 00:53:09,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:53:09,946.946 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 00:53:12,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:53:12,084.084 INFO    ] Checking for system updates...
[2026-06-05 00:53:12,121.121 INFO    ] 200
[2026-06-05 00:53:12,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:12,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:53:12,180.180 INFO    ] No update needed
[2026-06-05 00:53:12,182.182 INFO    ] Checking for camera pi updates...
[2026-06-05 00:53:12,220.220 INFO    ] 200
[2026-06-05 00:53:12,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:12,264.264 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:53:12,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:53:12,312.312 INFO    ] No camera update needed
[2026-06-05 00:53:12,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:53:12,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:53:12,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:53:12,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:53:14,367.367 INFO    ] ================================================
[2026-06-05 00:53:14,383.383 INFO    ] Launching Daemon at Fri Jun  5 00:53:14 IST 2026
[2026-06-05 00:53:14,394.394 INFO    ] ================================================
[2026-06-05 00:53:14,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:53:14
[2026-06-05 00:53:15,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:53:15,877.877 INFO    ] Initializing speech engine...
[2026-06-05 00:53:15,883.883 INFO    ] 2026-06-05 00:53:15
[2026-06-05 00:53:16,140.140 INFO    ] 2026-06-05 00:53:16
[2026-06-05 00:53:16,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:53:16,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:53:16,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:53:16,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:53:16,508.508 INFO    ] time= 05/06/2026 00:53:16
[2026-06-05 00:53:16,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:53:16,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:53:16,637.637 INFO    ] No existing commands found in stream
[2026-06-05 00:53:21,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:53:21,652.652 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 00:53:25,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:53:25,003.003 INFO    ] Checking for system updates...
[2026-06-05 00:53:25,047.047 INFO    ] 200
[2026-06-05 00:53:25,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:25,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:53:25,121.121 INFO    ] No update needed
[2026-06-05 00:53:25,124.124 INFO    ] Checking for camera pi updates...
[2026-06-05 00:53:25,165.165 INFO    ] 200
[2026-06-05 00:53:25,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:25,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:53:25,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:53:25,267.267 INFO    ] No camera update needed
[2026-06-05 00:53:25,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:53:25,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:53:25,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:53:25,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:53:27,329.329 INFO    ] ================================================
[2026-06-05 00:53:27,345.345 INFO    ] Launching Daemon at Fri Jun  5 00:53:27 IST 2026
[2026-06-05 00:53:27,357.357 INFO    ] ================================================
[2026-06-05 00:53:28,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:53:28
[2026-06-05 00:53:28,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:53:29,049.049 INFO    ] Initializing speech engine...
[2026-06-05 00:53:29,064.064 INFO    ] 2026-06-05 00:53:29
[2026-06-05 00:53:29,352.352 INFO    ] 2026-06-05 00:53:29
[2026-06-05 00:53:29,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:53:29,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:53:29,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:53:29,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:53:29,904.904 INFO    ] time= 05/06/2026 00:53:29
[2026-06-05 00:53:29,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:53:29,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:53:30,039.039 INFO    ] No existing commands found in stream
[2026-06-05 00:53:35,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:53:35,074.074 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 00:53:36,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:53:36,440.440 INFO    ] Checking for system updates...
[2026-06-05 00:53:36,483.483 INFO    ] 200
[2026-06-05 00:53:36,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:36,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:53:36,545.545 INFO    ] No update needed
[2026-06-05 00:53:36,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 00:53:36,583.583 INFO    ] 200
[2026-06-05 00:53:36,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:36,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:53:36,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:53:36,684.684 INFO    ] No camera update needed
[2026-06-05 00:53:36,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:53:36,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:53:36,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:53:36,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:53:38,744.744 INFO    ] ================================================
[2026-06-05 00:53:38,760.760 INFO    ] Launching Daemon at Fri Jun  5 00:53:38 IST 2026
[2026-06-05 00:53:38,771.771 INFO    ] ================================================
[2026-06-05 00:53:39,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:53:39
[2026-06-05 00:53:39,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:53:40,198.198 INFO    ] Initializing speech engine...
[2026-06-05 00:53:40,210.210 INFO    ] 2026-06-05 00:53:40
[2026-06-05 00:53:40,457.457 INFO    ] 2026-06-05 00:53:40
[2026-06-05 00:53:40,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:53:40,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:53:40,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:53:40,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:53:40,827.827 INFO    ] time= 05/06/2026 00:53:40
[2026-06-05 00:53:40,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:53:40,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:53:40,992.992 INFO    ] No existing commands found in stream
[2026-06-05 00:53:46,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:53:46,025.025 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 00:53:48,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:53:48,508.508 INFO    ] Checking for system updates...
[2026-06-05 00:53:48,544.544 INFO    ] 200
[2026-06-05 00:53:48,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:48,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:53:48,603.603 INFO    ] No update needed
[2026-06-05 00:53:48,605.605 INFO    ] Checking for camera pi updates...
[2026-06-05 00:53:48,639.639 INFO    ] 200
[2026-06-05 00:53:48,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:53:48,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:53:48,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:53:48,735.735 INFO    ] No camera update needed
[2026-06-05 00:53:48,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:53:48,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:53:48,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:53:48,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:53:50,791.791 INFO    ] ================================================
[2026-06-05 00:53:50,806.806 INFO    ] Launching Daemon at Fri Jun  5 00:53:50 IST 2026
[2026-06-05 00:53:50,818.818 INFO    ] ================================================
[2026-06-05 00:53:51,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:53:51
[2026-06-05 00:53:52,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:53:52,477.477 INFO    ] Initializing speech engine...
[2026-06-05 00:53:52,490.490 INFO    ] 2026-06-05 00:53:52
[2026-06-05 00:53:52,802.802 INFO    ] 2026-06-05 00:53:52
[2026-06-05 00:53:52,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:53:53,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:53:53,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:53:53,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:53:53,313.313 INFO    ] time= 05/06/2026 00:53:53
[2026-06-05 00:53:53,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:53:53,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:53:53,439.439 INFO    ] No existing commands found in stream
[2026-06-05 00:53:58,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:53:58,470.470 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 00:54:01,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:54:01,390.390 INFO    ] Checking for system updates...
[2026-06-05 00:54:01,427.427 INFO    ] 200
[2026-06-05 00:54:01,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:01,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:54:01,493.493 INFO    ] No update needed
[2026-06-05 00:54:01,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 00:54:01,530.530 INFO    ] 200
[2026-06-05 00:54:01,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:01,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:54:01,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:54:01,752.752 INFO    ] No camera update needed
[2026-06-05 00:54:01,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:54:01,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:54:01,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:54:01,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:54:03,834.834 INFO    ] ================================================
[2026-06-05 00:54:03,850.850 INFO    ] Launching Daemon at Fri Jun  5 00:54:03 IST 2026
[2026-06-05 00:54:03,862.862 INFO    ] ================================================
[2026-06-05 00:54:04,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:54:04
[2026-06-05 00:54:05,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:54:05,269.269 INFO    ] Initializing speech engine...
[2026-06-05 00:54:05,281.281 INFO    ] 2026-06-05 00:54:05
[2026-06-05 00:54:05,545.545 INFO    ] 2026-06-05 00:54:05
[2026-06-05 00:54:05,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:54:05,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:54:05,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:54:05,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:54:05,923.923 INFO    ] time= 05/06/2026 00:54:05
[2026-06-05 00:54:05,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:54:05,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:54:06,068.068 INFO    ] No existing commands found in stream
[2026-06-05 00:54:11,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:54:11,101.101 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 00:54:11,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:54:11,624.624 INFO    ] Checking for system updates...
[2026-06-05 00:54:11,667.667 INFO    ] 200
[2026-06-05 00:54:11,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:11,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:54:11,727.727 INFO    ] No update needed
[2026-06-05 00:54:11,730.730 INFO    ] Checking for camera pi updates...
[2026-06-05 00:54:11,766.766 INFO    ] 200
[2026-06-05 00:54:11,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:11,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:54:11,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:54:11,876.876 INFO    ] No camera update needed
[2026-06-05 00:54:11,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:54:11,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:54:11,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:54:11,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:54:13,937.937 INFO    ] ================================================
[2026-06-05 00:54:13,953.953 INFO    ] Launching Daemon at Fri Jun  5 00:54:13 IST 2026
[2026-06-05 00:54:13,965.965 INFO    ] ================================================
[2026-06-05 00:54:14,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:54:14
[2026-06-05 00:54:15,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:54:15,362.362 INFO    ] Initializing speech engine...
[2026-06-05 00:54:15,377.377 INFO    ] 2026-06-05 00:54:15
[2026-06-05 00:54:15,642.642 INFO    ] 2026-06-05 00:54:15
[2026-06-05 00:54:15,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:54:15,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:54:15,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:54:16,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:54:16,020.020 INFO    ] time= 05/06/2026 00:54:16
[2026-06-05 00:54:16,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:54:16,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:54:16,190.190 INFO    ] No existing commands found in stream
[2026-06-05 00:54:21,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:54:21,222.222 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 00:54:22,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:54:22,899.899 INFO    ] Checking for system updates...
[2026-06-05 00:54:22,936.936 INFO    ] 200
[2026-06-05 00:54:22,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:22,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:54:22,994.994 INFO    ] No update needed
[2026-06-05 00:54:22,996.996 INFO    ] Checking for camera pi updates...
[2026-06-05 00:54:23,034.034 INFO    ] 200
[2026-06-05 00:54:23,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:23,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:54:23,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:54:23,124.124 INFO    ] No camera update needed
[2026-06-05 00:54:23,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:54:23,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:54:23,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:54:23,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:54:25,180.180 INFO    ] ================================================
[2026-06-05 00:54:25,196.196 INFO    ] Launching Daemon at Fri Jun  5 00:54:25 IST 2026
[2026-06-05 00:54:25,207.207 INFO    ] ================================================
[2026-06-05 00:54:25,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:54:25
[2026-06-05 00:54:26,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:54:26,869.869 INFO    ] Initializing speech engine...
[2026-06-05 00:54:26,881.881 INFO    ] 2026-06-05 00:54:26
[2026-06-05 00:54:27,192.192 INFO    ] 2026-06-05 00:54:27
[2026-06-05 00:54:27,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:54:27,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:54:27,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:54:27,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:54:27,698.698 INFO    ] time= 05/06/2026 00:54:27
[2026-06-05 00:54:27,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:54:27,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:54:27,850.850 INFO    ] No existing commands found in stream
[2026-06-05 00:54:32,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:54:32,871.871 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 00:54:37,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:54:37,142.142 INFO    ] Checking for system updates...
[2026-06-05 00:54:37,180.180 INFO    ] 200
[2026-06-05 00:54:37,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:37,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:54:37,242.242 INFO    ] No update needed
[2026-06-05 00:54:37,244.244 INFO    ] Checking for camera pi updates...
[2026-06-05 00:54:37,279.279 INFO    ] 200
[2026-06-05 00:54:37,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:37,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:54:37,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:54:37,469.469 INFO    ] No camera update needed
[2026-06-05 00:54:37,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:54:37,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:54:37,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:54:37,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:54:39,526.526 INFO    ] ================================================
[2026-06-05 00:54:39,541.541 INFO    ] Launching Daemon at Fri Jun  5 00:54:39 IST 2026
[2026-06-05 00:54:39,552.552 INFO    ] ================================================
[2026-06-05 00:54:40,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:54:40
[2026-06-05 00:54:40,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:54:40,956.956 INFO    ] Initializing speech engine...
[2026-06-05 00:54:40,974.974 INFO    ] 2026-06-05 00:54:40
[2026-06-05 00:54:41,220.220 INFO    ] 2026-06-05 00:54:41
[2026-06-05 00:54:41,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:54:41,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:54:41,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:54:41,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:54:41,586.586 INFO    ] time= 05/06/2026 00:54:41
[2026-06-05 00:54:41,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:54:41,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:54:41,660.660 INFO    ] No existing commands found in stream
[2026-06-05 00:54:46,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:54:46,676.676 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 00:54:50,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:54:50,208.208 INFO    ] Checking for system updates...
[2026-06-05 00:54:50,244.244 INFO    ] 200
[2026-06-05 00:54:50,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:50,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:54:50,304.304 INFO    ] No update needed
[2026-06-05 00:54:50,308.308 INFO    ] Checking for camera pi updates...
[2026-06-05 00:54:50,347.347 INFO    ] 200
[2026-06-05 00:54:50,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:54:50,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:54:50,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:54:50,448.448 INFO    ] No camera update needed
[2026-06-05 00:54:50,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:54:50,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:54:50,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:54:50,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:54:52,509.509 INFO    ] ================================================
[2026-06-05 00:54:52,524.524 INFO    ] Launching Daemon at Fri Jun  5 00:54:52 IST 2026
[2026-06-05 00:54:52,534.534 INFO    ] ================================================
[2026-06-05 00:54:53,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:54:53
[2026-06-05 00:54:53,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:54:53,969.969 INFO    ] Initializing speech engine...
[2026-06-05 00:54:53,976.976 INFO    ] 2026-06-05 00:54:53
[2026-06-05 00:54:54,234.234 INFO    ] 2026-06-05 00:54:54
[2026-06-05 00:54:54,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:54:54,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:54:54,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:54:54,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:54:54,693.693 INFO    ] time= 05/06/2026 00:54:54
[2026-06-05 00:54:54,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:54:54,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:54:54,844.844 INFO    ] No existing commands found in stream
[2026-06-05 00:54:59,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:54:59,861.861 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 00:55:01,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:55:01,620.620 INFO    ] Checking for system updates...
[2026-06-05 00:55:01,772.772 INFO    ] 200
[2026-06-05 00:55:01,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:01,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:55:01,922.922 INFO    ] No update needed
[2026-06-05 00:55:01,951.951 INFO    ] Checking for camera pi updates...
[2026-06-05 00:55:02,004.004 INFO    ] 200
[2026-06-05 00:55:02,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:02,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:55:02,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:55:02,156.156 INFO    ] No camera update needed
[2026-06-05 00:55:02,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:55:02,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:55:02,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:55:02,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:55:04,230.230 INFO    ] ================================================
[2026-06-05 00:55:04,245.245 INFO    ] Launching Daemon at Fri Jun  5 00:55:04 IST 2026
[2026-06-05 00:55:04,256.256 INFO    ] ================================================
[2026-06-05 00:55:04,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:55:04
[2026-06-05 00:55:05,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:55:05,692.692 INFO    ] Initializing speech engine...
[2026-06-05 00:55:05,699.699 INFO    ] 2026-06-05 00:55:05
[2026-06-05 00:55:05,960.960 INFO    ] 2026-06-05 00:55:05
[2026-06-05 00:55:05,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:55:06,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:55:06,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:55:06,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:55:06,317.317 INFO    ] time= 05/06/2026 00:55:06
[2026-06-05 00:55:06,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:55:06,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:55:06,499.499 INFO    ] No existing commands found in stream
[2026-06-05 00:55:11,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:55:11,529.529 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 00:55:13,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:55:13,736.736 INFO    ] Checking for system updates...
[2026-06-05 00:55:13,771.771 INFO    ] 200
[2026-06-05 00:55:13,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:13,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:55:13,830.830 INFO    ] No update needed
[2026-06-05 00:55:13,832.832 INFO    ] Checking for camera pi updates...
[2026-06-05 00:55:13,867.867 INFO    ] 200
[2026-06-05 00:55:13,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:13,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:55:13,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:55:13,961.961 INFO    ] No camera update needed
[2026-06-05 00:55:13,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:55:13,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:55:13,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:55:13,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:55:16,017.017 INFO    ] ================================================
[2026-06-05 00:55:16,033.033 INFO    ] Launching Daemon at Fri Jun  5 00:55:16 IST 2026
[2026-06-05 00:55:16,044.044 INFO    ] ================================================
[2026-06-05 00:55:16,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:55:16
[2026-06-05 00:55:17,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:55:17,614.614 INFO    ] Initializing speech engine...
[2026-06-05 00:55:17,622.622 INFO    ] 2026-06-05 00:55:17
[2026-06-05 00:55:17,914.914 INFO    ] 2026-06-05 00:55:17
[2026-06-05 00:55:18,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:55:18,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:55:18,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:55:18,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:55:18,395.395 INFO    ] time= 05/06/2026 00:55:18
[2026-06-05 00:55:18,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:55:18,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:55:18,580.580 INFO    ] No existing commands found in stream
[2026-06-05 00:55:23,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:55:23,611.611 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 00:55:27,918.918 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:55:27,921.921 INFO    ] Checking for system updates...
[2026-06-05 00:55:27,958.958 INFO    ] 200
[2026-06-05 00:55:27,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:28,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:55:28,022.022 INFO    ] No update needed
[2026-06-05 00:55:28,025.025 INFO    ] Checking for camera pi updates...
[2026-06-05 00:55:28,059.059 INFO    ] 200
[2026-06-05 00:55:28,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:28,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:55:28,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:55:28,149.149 INFO    ] No camera update needed
[2026-06-05 00:55:28,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:55:28,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:55:28,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:55:28,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:55:30,203.203 INFO    ] ================================================
[2026-06-05 00:55:30,218.218 INFO    ] Launching Daemon at Fri Jun  5 00:55:30 IST 2026
[2026-06-05 00:55:30,229.229 INFO    ] ================================================
[2026-06-05 00:55:30,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:55:30
[2026-06-05 00:55:31,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:55:31,730.730 INFO    ] Initializing speech engine...
[2026-06-05 00:55:31,737.737 INFO    ] 2026-06-05 00:55:31
[2026-06-05 00:55:32,025.025 INFO    ] 2026-06-05 00:55:31
[2026-06-05 00:55:32,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:55:32,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:55:32,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:55:32,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:55:32,457.457 INFO    ] time= 05/06/2026 00:55:32
[2026-06-05 00:55:32,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:55:32,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:55:32,639.639 INFO    ] No existing commands found in stream
[2026-06-05 00:55:37,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:55:37,667.667 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 00:55:38,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:55:38,600.600 INFO    ] Checking for system updates...
[2026-06-05 00:55:38,636.636 INFO    ] 200
[2026-06-05 00:55:38,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:38,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:55:38,693.693 INFO    ] No update needed
[2026-06-05 00:55:38,696.696 INFO    ] Checking for camera pi updates...
[2026-06-05 00:55:38,729.729 INFO    ] 200
[2026-06-05 00:55:38,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:38,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:55:38,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:55:38,829.829 INFO    ] No camera update needed
[2026-06-05 00:55:38,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:55:38,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:55:38,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:55:38,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:55:40,885.885 INFO    ] ================================================
[2026-06-05 00:55:40,900.900 INFO    ] Launching Daemon at Fri Jun  5 00:55:40 IST 2026
[2026-06-05 00:55:40,911.911 INFO    ] ================================================
[2026-06-05 00:55:41,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:55:41
[2026-06-05 00:55:42,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:55:42,339.339 INFO    ] Initializing speech engine...
[2026-06-05 00:55:42,348.348 INFO    ] 2026-06-05 00:55:42
[2026-06-05 00:55:42,595.595 INFO    ] 2026-06-05 00:55:42
[2026-06-05 00:55:42,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:55:42,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:55:42,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:55:43,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:55:43,070.070 INFO    ] time= 05/06/2026 00:55:43
[2026-06-05 00:55:43,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:55:43,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:55:43,216.216 INFO    ] No existing commands found in stream
[2026-06-05 00:55:48,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:55:48,231.231 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 00:55:51,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:55:51,360.360 INFO    ] Checking for system updates...
[2026-06-05 00:55:51,396.396 INFO    ] 200
[2026-06-05 00:55:51,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:51,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:55:51,461.461 INFO    ] No update needed
[2026-06-05 00:55:51,463.463 INFO    ] Checking for camera pi updates...
[2026-06-05 00:55:51,497.497 INFO    ] 200
[2026-06-05 00:55:51,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:55:51,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:55:51,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:55:51,592.592 INFO    ] No camera update needed
[2026-06-05 00:55:51,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:55:51,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:55:51,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:55:51,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:55:53,646.646 INFO    ] ================================================
[2026-06-05 00:55:53,662.662 INFO    ] Launching Daemon at Fri Jun  5 00:55:53 IST 2026
[2026-06-05 00:55:53,672.672 INFO    ] ================================================
[2026-06-05 00:55:54,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:55:54
[2026-06-05 00:55:54,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:55:55,248.248 INFO    ] Initializing speech engine...
[2026-06-05 00:55:55,257.257 INFO    ] 2026-06-05 00:55:55
[2026-06-05 00:55:55,505.505 INFO    ] 2026-06-05 00:55:55
[2026-06-05 00:55:55,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:55:55,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:55:55,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:55:55,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:55:55,957.957 INFO    ] time= 05/06/2026 00:55:55
[2026-06-05 00:55:56,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:55:56,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:55:56,122.122 INFO    ] No existing commands found in stream
[2026-06-05 00:56:01,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:56:01,137.137 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 00:56:04,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:56:04,486.486 INFO    ] Checking for system updates...
[2026-06-05 00:56:04,525.525 INFO    ] 200
[2026-06-05 00:56:04,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:04,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:56:04,584.584 INFO    ] No update needed
[2026-06-05 00:56:04,586.586 INFO    ] Checking for camera pi updates...
[2026-06-05 00:56:04,623.623 INFO    ] 200
[2026-06-05 00:56:04,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:04,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:56:04,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:56:04,700.700 INFO    ] No camera update needed
[2026-06-05 00:56:04,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:56:04,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:56:04,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:56:04,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:56:06,757.757 INFO    ] ================================================
[2026-06-05 00:56:06,772.772 INFO    ] Launching Daemon at Fri Jun  5 00:56:06 IST 2026
[2026-06-05 00:56:06,783.783 INFO    ] ================================================
[2026-06-05 00:56:07,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:56:07
[2026-06-05 00:56:08,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:56:08,407.407 INFO    ] Initializing speech engine...
[2026-06-05 00:56:08,420.420 INFO    ] 2026-06-05 00:56:08
[2026-06-05 00:56:08,702.702 INFO    ] 2026-06-05 00:56:08
[2026-06-05 00:56:08,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:56:08,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:56:09,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:56:09,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:56:09,242.242 INFO    ] time= 05/06/2026 00:56:09
[2026-06-05 00:56:09,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:56:09,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:56:09,377.377 INFO    ] No existing commands found in stream
[2026-06-05 00:56:14,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:56:14,406.406 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 00:56:18,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:56:18,083.083 INFO    ] Checking for system updates...
[2026-06-05 00:56:18,120.120 INFO    ] 200
[2026-06-05 00:56:18,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:18,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:56:18,179.179 INFO    ] No update needed
[2026-06-05 00:56:18,182.182 INFO    ] Checking for camera pi updates...
[2026-06-05 00:56:18,220.220 INFO    ] 200
[2026-06-05 00:56:18,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:18,265.265 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:56:18,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:56:18,315.315 INFO    ] No camera update needed
[2026-06-05 00:56:18,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:56:18,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:56:18,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:56:18,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:56:20,372.372 INFO    ] ================================================
[2026-06-05 00:56:20,388.388 INFO    ] Launching Daemon at Fri Jun  5 00:56:20 IST 2026
[2026-06-05 00:56:20,399.399 INFO    ] ================================================
[2026-06-05 00:56:21,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:56:21
[2026-06-05 00:56:21,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:56:22,013.013 INFO    ] Initializing speech engine...
[2026-06-05 00:56:22,028.028 INFO    ] 2026-06-05 00:56:22
[2026-06-05 00:56:22,307.307 INFO    ] 2026-06-05 00:56:22
[2026-06-05 00:56:22,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:56:22,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:56:22,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:56:22,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:56:22,792.792 INFO    ] time= 05/06/2026 00:56:22
[2026-06-05 00:56:22,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:56:22,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:56:22,968.968 INFO    ] No existing commands found in stream
[2026-06-05 00:56:27,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:56:27,998.998 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 00:56:32,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:56:32,134.134 INFO    ] Checking for system updates...
[2026-06-05 00:56:32,177.177 INFO    ] 200
[2026-06-05 00:56:32,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:32,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:56:32,244.244 INFO    ] No update needed
[2026-06-05 00:56:32,247.247 INFO    ] Checking for camera pi updates...
[2026-06-05 00:56:32,286.286 INFO    ] 200
[2026-06-05 00:56:32,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:32,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:56:32,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:56:32,387.387 INFO    ] No camera update needed
[2026-06-05 00:56:32,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:56:32,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:56:32,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:56:32,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:56:34,445.445 INFO    ] ================================================
[2026-06-05 00:56:34,462.462 INFO    ] Launching Daemon at Fri Jun  5 00:56:34 IST 2026
[2026-06-05 00:56:34,472.472 INFO    ] ================================================
[2026-06-05 00:56:35,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:56:35
[2026-06-05 00:56:35,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:56:36,086.086 INFO    ] Initializing speech engine...
[2026-06-05 00:56:36,094.094 INFO    ] 2026-06-05 00:56:36
[2026-06-05 00:56:36,377.377 INFO    ] 2026-06-05 00:56:36
[2026-06-05 00:56:36,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:56:36,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:56:36,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:56:36,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:56:36,843.843 INFO    ] time= 05/06/2026 00:56:36
[2026-06-05 00:56:36,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:56:36,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:56:37,039.039 INFO    ] No existing commands found in stream
[2026-06-05 00:56:42,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:56:42,073.073 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 00:56:45,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:56:45,295.295 INFO    ] Checking for system updates...
[2026-06-05 00:56:45,333.333 INFO    ] 200
[2026-06-05 00:56:45,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:45,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:56:45,399.399 INFO    ] No update needed
[2026-06-05 00:56:45,402.402 INFO    ] Checking for camera pi updates...
[2026-06-05 00:56:45,437.437 INFO    ] 200
[2026-06-05 00:56:45,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:45,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:56:45,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:56:45,641.641 INFO    ] No camera update needed
[2026-06-05 00:56:45,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:56:45,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:56:45,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:56:45,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:56:47,701.701 INFO    ] ================================================
[2026-06-05 00:56:47,717.717 INFO    ] Launching Daemon at Fri Jun  5 00:56:47 IST 2026
[2026-06-05 00:56:47,728.728 INFO    ] ================================================
[2026-06-05 00:56:48,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:56:48
[2026-06-05 00:56:48,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:56:49,179.179 INFO    ] Initializing speech engine...
[2026-06-05 00:56:49,188.188 INFO    ] 2026-06-05 00:56:49
[2026-06-05 00:56:49,429.429 INFO    ] 2026-06-05 00:56:49
[2026-06-05 00:56:49,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:56:49,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:56:49,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:56:49,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:56:49,878.878 INFO    ] time= 05/06/2026 00:56:49
[2026-06-05 00:56:49,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:56:49,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:56:50,047.047 INFO    ] No existing commands found in stream
[2026-06-05 00:56:55,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:56:55,061.061 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-05 00:56:55,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:56:55,849.849 INFO    ] Checking for system updates...
[2026-06-05 00:56:55,885.885 INFO    ] 200
[2026-06-05 00:56:55,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:55,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:56:55,946.946 INFO    ] No update needed
[2026-06-05 00:56:55,949.949 INFO    ] Checking for camera pi updates...
[2026-06-05 00:56:55,982.982 INFO    ] 200
[2026-06-05 00:56:55,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:56:56,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:56:56,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:56:56,076.076 INFO    ] No camera update needed
[2026-06-05 00:56:56,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:56:56,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:56:56,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:56:56,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:56:58,133.133 INFO    ] ================================================
[2026-06-05 00:56:58,149.149 INFO    ] Launching Daemon at Fri Jun  5 00:56:58 IST 2026
[2026-06-05 00:56:58,160.160 INFO    ] ================================================
[2026-06-05 00:56:58,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:56:58
[2026-06-05 00:56:59,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:56:59,767.767 INFO    ] Initializing speech engine...
[2026-06-05 00:56:59,776.776 INFO    ] 2026-06-05 00:56:59
[2026-06-05 00:57:00,048.048 INFO    ] 2026-06-05 00:57:00
[2026-06-05 00:57:00,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:57:00,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:57:00,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:57:00,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:57:00,508.508 INFO    ] time= 05/06/2026 00:57:00
[2026-06-05 00:57:00,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:57:00,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:57:00,672.672 INFO    ] No existing commands found in stream
[2026-06-05 00:57:05,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:57:05,690.690 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 00:57:10,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:57:10,047.047 INFO    ] Checking for system updates...
[2026-06-05 00:57:10,084.084 INFO    ] 200
[2026-06-05 00:57:10,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:10,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:57:10,143.143 INFO    ] No update needed
[2026-06-05 00:57:10,145.145 INFO    ] Checking for camera pi updates...
[2026-06-05 00:57:10,182.182 INFO    ] 200
[2026-06-05 00:57:10,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:10,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:57:10,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:57:10,311.311 INFO    ] No camera update needed
[2026-06-05 00:57:10,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:57:10,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:57:10,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:57:10,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:57:12,370.370 INFO    ] ================================================
[2026-06-05 00:57:12,385.385 INFO    ] Launching Daemon at Fri Jun  5 00:57:12 IST 2026
[2026-06-05 00:57:12,396.396 INFO    ] ================================================
[2026-06-05 00:57:12,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:57:12
[2026-06-05 00:57:13,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:57:13,806.806 INFO    ] Initializing speech engine...
[2026-06-05 00:57:13,819.819 INFO    ] 2026-06-05 00:57:13
[2026-06-05 00:57:14,080.080 INFO    ] 2026-06-05 00:57:14
[2026-06-05 00:57:14,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:57:14,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:57:14,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:57:14,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:57:14,558.558 INFO    ] time= 05/06/2026 00:57:14
[2026-06-05 00:57:14,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:57:14,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:57:14,754.754 INFO    ] No existing commands found in stream
[2026-06-05 00:57:19,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:57:19,784.784 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 00:57:23,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:57:23,639.639 INFO    ] Checking for system updates...
[2026-06-05 00:57:23,676.676 INFO    ] 200
[2026-06-05 00:57:23,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:23,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:57:23,736.736 INFO    ] No update needed
[2026-06-05 00:57:23,738.738 INFO    ] Checking for camera pi updates...
[2026-06-05 00:57:23,776.776 INFO    ] 200
[2026-06-05 00:57:23,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:23,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:57:23,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:57:23,870.870 INFO    ] No camera update needed
[2026-06-05 00:57:23,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:57:23,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:57:23,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:57:23,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:57:25,929.929 INFO    ] ================================================
[2026-06-05 00:57:25,945.945 INFO    ] Launching Daemon at Fri Jun  5 00:57:25 IST 2026
[2026-06-05 00:57:25,956.956 INFO    ] ================================================
[2026-06-05 00:57:26,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:57:26
[2026-06-05 00:57:27,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:57:27,385.385 INFO    ] Initializing speech engine...
[2026-06-05 00:57:27,392.392 INFO    ] 2026-06-05 00:57:27
[2026-06-05 00:57:27,650.650 INFO    ] 2026-06-05 00:57:27
[2026-06-05 00:57:27,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:57:27,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:57:27,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:57:27,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:57:27,995.995 INFO    ] time= 05/06/2026 00:57:27
[2026-06-05 00:57:28,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:57:28,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:57:28,095.095 INFO    ] No existing commands found in stream
[2026-06-05 00:57:33,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:57:33,128.128 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 00:57:34,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:57:34,513.513 INFO    ] Checking for system updates...
[2026-06-05 00:57:34,549.549 INFO    ] 200
[2026-06-05 00:57:34,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:34,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:57:34,613.613 INFO    ] No update needed
[2026-06-05 00:57:34,616.616 INFO    ] Checking for camera pi updates...
[2026-06-05 00:57:34,651.651 INFO    ] 200
[2026-06-05 00:57:34,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:34,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:57:34,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:57:34,743.743 INFO    ] No camera update needed
[2026-06-05 00:57:34,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:57:34,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:57:34,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:57:34,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:57:36,801.801 INFO    ] ================================================
[2026-06-05 00:57:36,816.816 INFO    ] Launching Daemon at Fri Jun  5 00:57:36 IST 2026
[2026-06-05 00:57:36,828.828 INFO    ] ================================================
[2026-06-05 00:57:37,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:57:37
[2026-06-05 00:57:37,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:57:38,242.242 INFO    ] Initializing speech engine...
[2026-06-05 00:57:38,261.261 INFO    ] 2026-06-05 00:57:38
[2026-06-05 00:57:38,508.508 INFO    ] 2026-06-05 00:57:38
[2026-06-05 00:57:38,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:57:38,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:57:38,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:57:38,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:57:38,984.984 INFO    ] time= 05/06/2026 00:57:38
[2026-06-05 00:57:39,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:57:39,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:57:39,128.128 INFO    ] No existing commands found in stream
[2026-06-05 00:57:44,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:57:44,142.142 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 00:57:45,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:57:45,724.724 INFO    ] Checking for system updates...
[2026-06-05 00:57:45,761.761 INFO    ] 200
[2026-06-05 00:57:45,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:45,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:57:45,821.821 INFO    ] No update needed
[2026-06-05 00:57:45,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 00:57:45,858.858 INFO    ] 200
[2026-06-05 00:57:45,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:45,906.906 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:57:45,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:57:45,962.962 INFO    ] No camera update needed
[2026-06-05 00:57:45,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:57:45,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:57:45,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:57:45,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:57:48,021.021 INFO    ] ================================================
[2026-06-05 00:57:48,037.037 INFO    ] Launching Daemon at Fri Jun  5 00:57:48 IST 2026
[2026-06-05 00:57:48,048.048 INFO    ] ================================================
[2026-06-05 00:57:48,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:57:48
[2026-06-05 00:57:49,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:57:49,459.459 INFO    ] Initializing speech engine...
[2026-06-05 00:57:49,466.466 INFO    ] 2026-06-05 00:57:49
[2026-06-05 00:57:49,757.757 INFO    ] 2026-06-05 00:57:49
[2026-06-05 00:57:49,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:57:49,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:57:49,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:57:50,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:57:50,127.127 INFO    ] time= 05/06/2026 00:57:50
[2026-06-05 00:57:50,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:57:50,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:57:50,250.250 INFO    ] No existing commands found in stream
[2026-06-05 00:57:55,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:57:55,266.266 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 00:57:56,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:57:56,576.576 INFO    ] Checking for system updates...
[2026-06-05 00:57:56,611.611 INFO    ] 200
[2026-06-05 00:57:56,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:56,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:57:56,669.669 INFO    ] No update needed
[2026-06-05 00:57:56,671.671 INFO    ] Checking for camera pi updates...
[2026-06-05 00:57:56,706.706 INFO    ] 200
[2026-06-05 00:57:56,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:57:56,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:57:56,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:57:56,806.806 INFO    ] No camera update needed
[2026-06-05 00:57:56,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:57:56,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:57:56,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:57:56,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:57:58,862.862 INFO    ] ================================================
[2026-06-05 00:57:58,878.878 INFO    ] Launching Daemon at Fri Jun  5 00:57:58 IST 2026
[2026-06-05 00:57:58,889.889 INFO    ] ================================================
[2026-06-05 00:57:59,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:57:59
[2026-06-05 00:58:00,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:58:00,464.464 INFO    ] Initializing speech engine...
[2026-06-05 00:58:00,476.476 INFO    ] 2026-06-05 00:58:00
[2026-06-05 00:58:00,742.742 INFO    ] 2026-06-05 00:58:00
[2026-06-05 00:58:00,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:58:01,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:58:01,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:58:01,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:58:01,199.199 INFO    ] time= 05/06/2026 00:58:01
[2026-06-05 00:58:01,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:58:01,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:58:01,433.433 INFO    ] No existing commands found in stream
[2026-06-05 00:58:06,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:58:06,460.460 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 00:58:07,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:58:07,629.629 INFO    ] Checking for system updates...
[2026-06-05 00:58:07,665.665 INFO    ] 200
[2026-06-05 00:58:07,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:07,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:58:07,724.724 INFO    ] No update needed
[2026-06-05 00:58:07,726.726 INFO    ] Checking for camera pi updates...
[2026-06-05 00:58:07,760.760 INFO    ] 200
[2026-06-05 00:58:07,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:07,803.803 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:58:07,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:58:07,852.852 INFO    ] No camera update needed
[2026-06-05 00:58:07,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:58:07,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:58:07,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:58:07,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:58:09,907.907 INFO    ] ================================================
[2026-06-05 00:58:09,922.922 INFO    ] Launching Daemon at Fri Jun  5 00:58:09 IST 2026
[2026-06-05 00:58:09,934.934 INFO    ] ================================================
[2026-06-05 00:58:10,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:58:10
[2026-06-05 00:58:11,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:58:11,439.439 INFO    ] Initializing speech engine...
[2026-06-05 00:58:11,453.453 INFO    ] 2026-06-05 00:58:11
[2026-06-05 00:58:11,726.726 INFO    ] 2026-06-05 00:58:11
[2026-06-05 00:58:11,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:58:12,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:58:12,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:58:12,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:58:12,264.264 INFO    ] time= 05/06/2026 00:58:12
[2026-06-05 00:58:12,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:58:12,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:58:12,416.416 INFO    ] No existing commands found in stream
[2026-06-05 00:58:17,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:58:17,437.437 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 00:58:20,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 00:58:20,103.103 INFO    ] Checking for system updates...
[2026-06-05 00:58:20,140.140 INFO    ] 200
[2026-06-05 00:58:20,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:20,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:58:20,198.198 INFO    ] No update needed
[2026-06-05 00:58:20,200.200 INFO    ] Checking for camera pi updates...
[2026-06-05 00:58:20,241.241 INFO    ] 200
[2026-06-05 00:58:20,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:20,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:58:20,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:58:20,336.336 INFO    ] No camera update needed
[2026-06-05 00:58:20,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:58:20,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:58:20,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:58:20,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:58:22,392.392 INFO    ] ================================================
[2026-06-05 00:58:22,407.407 INFO    ] Launching Daemon at Fri Jun  5 00:58:22 IST 2026
[2026-06-05 00:58:22,417.417 INFO    ] ================================================
[2026-06-05 00:58:23,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:58:22
[2026-06-05 00:58:23,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:58:23,958.958 INFO    ] Initializing speech engine...
[2026-06-05 00:58:23,970.970 INFO    ] 2026-06-05 00:58:23
[2026-06-05 00:58:24,277.277 INFO    ] 2026-06-05 00:58:24
[2026-06-05 00:58:24,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:58:24,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:58:24,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:58:24,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:58:24,703.703 INFO    ] time= 05/06/2026 00:58:24
[2026-06-05 00:58:24,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:58:24,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:58:24,849.849 INFO    ] No existing commands found in stream
[2026-06-05 00:58:29,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:58:29,864.864 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 00:58:30,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:58:30,380.380 INFO    ] Checking for system updates...
[2026-06-05 00:58:30,417.417 INFO    ] 200
[2026-06-05 00:58:30,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:30,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:58:30,478.478 INFO    ] No update needed
[2026-06-05 00:58:30,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 00:58:30,514.514 INFO    ] 200
[2026-06-05 00:58:30,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:30,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:58:30,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:58:30,613.613 INFO    ] No camera update needed
[2026-06-05 00:58:30,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:58:30,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:58:30,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:58:30,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:58:32,678.678 INFO    ] ================================================
[2026-06-05 00:58:32,693.693 INFO    ] Launching Daemon at Fri Jun  5 00:58:32 IST 2026
[2026-06-05 00:58:32,704.704 INFO    ] ================================================
[2026-06-05 00:58:33,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:58:33
[2026-06-05 00:58:33,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:58:34,296.296 INFO    ] Initializing speech engine...
[2026-06-05 00:58:34,305.305 INFO    ] 2026-06-05 00:58:34
[2026-06-05 00:58:34,590.590 INFO    ] 2026-06-05 00:58:34
[2026-06-05 00:58:34,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:58:34,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:58:34,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:58:35,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:58:35,128.128 INFO    ] time= 05/06/2026 00:58:35
[2026-06-05 00:58:35,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:58:35,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:58:35,273.273 INFO    ] No existing commands found in stream
[2026-06-05 00:58:40,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:58:40,298.298 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 00:58:42,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:58:42,779.779 INFO    ] Checking for system updates...
[2026-06-05 00:58:42,816.816 INFO    ] 200
[2026-06-05 00:58:42,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:42,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:58:42,876.876 INFO    ] No update needed
[2026-06-05 00:58:42,879.879 INFO    ] Checking for camera pi updates...
[2026-06-05 00:58:42,913.913 INFO    ] 200
[2026-06-05 00:58:42,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:42,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:58:43,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:58:43,020.020 INFO    ] No camera update needed
[2026-06-05 00:58:43,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:58:43,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:58:43,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:58:43,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:58:45,077.077 INFO    ] ================================================
[2026-06-05 00:58:45,093.093 INFO    ] Launching Daemon at Fri Jun  5 00:58:45 IST 2026
[2026-06-05 00:58:45,103.103 INFO    ] ================================================
[2026-06-05 00:58:45,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:58:45
[2026-06-05 00:58:46,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:58:46,596.596 INFO    ] Initializing speech engine...
[2026-06-05 00:58:46,605.605 INFO    ] 2026-06-05 00:58:46
[2026-06-05 00:58:46,855.855 INFO    ] 2026-06-05 00:58:46
[2026-06-05 00:58:46,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:58:47,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:58:47,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:58:47,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:58:47,346.346 INFO    ] time= 05/06/2026 00:58:47
[2026-06-05 00:58:47,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:58:47,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:58:47,566.566 INFO    ] No existing commands found in stream
[2026-06-05 00:58:52,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:58:52,590.590 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 00:58:54,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:58:54,164.164 INFO    ] Checking for system updates...
[2026-06-05 00:58:54,200.200 INFO    ] 200
[2026-06-05 00:58:54,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:54,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:58:54,268.268 INFO    ] No update needed
[2026-06-05 00:58:54,270.270 INFO    ] Checking for camera pi updates...
[2026-06-05 00:58:54,304.304 INFO    ] 200
[2026-06-05 00:58:54,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:58:54,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:58:54,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:58:54,498.498 INFO    ] No camera update needed
[2026-06-05 00:58:54,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:58:54,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:58:54,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:58:54,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:58:56,553.553 INFO    ] ================================================
[2026-06-05 00:58:56,568.568 INFO    ] Launching Daemon at Fri Jun  5 00:58:56 IST 2026
[2026-06-05 00:58:56,579.579 INFO    ] ================================================
[2026-06-05 00:58:57,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:58:57
[2026-06-05 00:58:57,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:58:57,998.998 INFO    ] Initializing speech engine...
[2026-06-05 00:58:58,016.016 INFO    ] 2026-06-05 00:58:58
[2026-06-05 00:58:58,285.285 INFO    ] 2026-06-05 00:58:58
[2026-06-05 00:58:58,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:58:58,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:58:58,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:58:58,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:58:58,698.698 INFO    ] time= 05/06/2026 00:58:58
[2026-06-05 00:58:58,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:58:58,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:58:58,863.863 INFO    ] No existing commands found in stream
[2026-06-05 00:59:03,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:59:03,891.891 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 00:59:07,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 00:59:07,524.524 INFO    ] Checking for system updates...
[2026-06-05 00:59:07,560.560 INFO    ] 200
[2026-06-05 00:59:07,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:07,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:59:07,619.619 INFO    ] No update needed
[2026-06-05 00:59:07,621.621 INFO    ] Checking for camera pi updates...
[2026-06-05 00:59:07,655.655 INFO    ] 200
[2026-06-05 00:59:07,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:07,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:59:07,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:59:07,737.737 INFO    ] No camera update needed
[2026-06-05 00:59:07,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:59:07,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:59:07,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:59:07,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:59:09,792.792 INFO    ] ================================================
[2026-06-05 00:59:09,807.807 INFO    ] Launching Daemon at Fri Jun  5 00:59:09 IST 2026
[2026-06-05 00:59:09,817.817 INFO    ] ================================================
[2026-06-05 00:59:10,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:59:10
[2026-06-05 00:59:10,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:59:11,265.265 INFO    ] Initializing speech engine...
[2026-06-05 00:59:11,273.273 INFO    ] 2026-06-05 00:59:11
[2026-06-05 00:59:11,544.544 INFO    ] 2026-06-05 00:59:11
[2026-06-05 00:59:11,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:59:11,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:59:11,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:59:11,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:59:11,901.901 INFO    ] time= 05/06/2026 00:59:11
[2026-06-05 00:59:11,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:59:11,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:59:11,984.984 INFO    ] No existing commands found in stream
[2026-06-05 00:59:16,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:59:17,000.000 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 00:59:20,613.613 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 00:59:20,616.616 INFO    ] Checking for system updates...
[2026-06-05 00:59:20,653.653 INFO    ] 200
[2026-06-05 00:59:20,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:20,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:59:20,711.711 INFO    ] No update needed
[2026-06-05 00:59:20,714.714 INFO    ] Checking for camera pi updates...
[2026-06-05 00:59:20,747.747 INFO    ] 200
[2026-06-05 00:59:20,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:20,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:59:20,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:59:20,847.847 INFO    ] No camera update needed
[2026-06-05 00:59:20,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:59:20,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:59:20,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:59:20,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:59:22,903.903 INFO    ] ================================================
[2026-06-05 00:59:22,919.919 INFO    ] Launching Daemon at Fri Jun  5 00:59:22 IST 2026
[2026-06-05 00:59:22,930.930 INFO    ] ================================================
[2026-06-05 00:59:23,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:59:23
[2026-06-05 00:59:24,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:59:24,324.324 INFO    ] Initializing speech engine...
[2026-06-05 00:59:24,339.339 INFO    ] 2026-06-05 00:59:24
[2026-06-05 00:59:24,601.601 INFO    ] 2026-06-05 00:59:24
[2026-06-05 00:59:24,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:59:24,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:59:24,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:59:25,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:59:25,069.069 INFO    ] time= 05/06/2026 00:59:25
[2026-06-05 00:59:25,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:59:25,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:59:25,222.222 INFO    ] No existing commands found in stream
[2026-06-05 00:59:30,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:59:30,237.237 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 00:59:31,251.251 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 00:59:31,254.254 INFO    ] Checking for system updates...
[2026-06-05 00:59:31,295.295 INFO    ] 200
[2026-06-05 00:59:31,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:31,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:59:31,353.353 INFO    ] No update needed
[2026-06-05 00:59:31,356.356 INFO    ] Checking for camera pi updates...
[2026-06-05 00:59:31,394.394 INFO    ] 200
[2026-06-05 00:59:31,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:31,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:59:31,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:59:31,489.489 INFO    ] No camera update needed
[2026-06-05 00:59:31,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:59:31,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:59:31,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:59:31,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:59:33,562.562 INFO    ] ================================================
[2026-06-05 00:59:33,578.578 INFO    ] Launching Daemon at Fri Jun  5 00:59:33 IST 2026
[2026-06-05 00:59:33,589.589 INFO    ] ================================================
[2026-06-05 00:59:34,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:59:34
[2026-06-05 00:59:34,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:59:35,016.016 INFO    ] Initializing speech engine...
[2026-06-05 00:59:35,025.025 INFO    ] 2026-06-05 00:59:35
[2026-06-05 00:59:35,282.282 INFO    ] 2026-06-05 00:59:35
[2026-06-05 00:59:35,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:59:35,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:59:35,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:59:35,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:59:35,753.753 INFO    ] time= 05/06/2026 00:59:35
[2026-06-05 00:59:35,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:59:35,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:59:35,894.894 INFO    ] No existing commands found in stream
[2026-06-05 00:59:40,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:59:40,909.909 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 00:59:43,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 00:59:43,449.449 INFO    ] Checking for system updates...
[2026-06-05 00:59:43,485.485 INFO    ] 200
[2026-06-05 00:59:43,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:43,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:59:43,544.544 INFO    ] No update needed
[2026-06-05 00:59:43,547.547 INFO    ] Checking for camera pi updates...
[2026-06-05 00:59:43,585.585 INFO    ] 200
[2026-06-05 00:59:43,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:43,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:59:43,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 00:59:43,680.680 INFO    ] No camera update needed
[2026-06-05 00:59:43,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:59:43,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:59:43,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:59:43,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:59:45,742.742 INFO    ] ================================================
[2026-06-05 00:59:45,758.758 INFO    ] Launching Daemon at Fri Jun  5 00:59:45 IST 2026
[2026-06-05 00:59:45,769.769 INFO    ] ================================================
[2026-06-05 00:59:46,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:59:46
[2026-06-05 00:59:46,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:59:47,202.202 INFO    ] Initializing speech engine...
[2026-06-05 00:59:47,211.211 INFO    ] 2026-06-05 00:59:47
[2026-06-05 00:59:47,456.456 INFO    ] 2026-06-05 00:59:47
[2026-06-05 00:59:47,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:59:47,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:59:47,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:59:47,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:59:47,826.826 INFO    ] time= 05/06/2026 00:59:47
[2026-06-05 00:59:47,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:59:47,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:59:47,996.996 INFO    ] No existing commands found in stream
[2026-06-05 00:59:53,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 00:59:53,029.029 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 00:59:54,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 00:59:54,421.421 INFO    ] Checking for system updates...
[2026-06-05 00:59:54,457.457 INFO    ] 200
[2026-06-05 00:59:54,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:54,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:59:54,520.520 INFO    ] No update needed
[2026-06-05 00:59:54,527.527 INFO    ] Checking for camera pi updates...
[2026-06-05 00:59:54,561.561 INFO    ] 200
[2026-06-05 00:59:54,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 00:59:54,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 00:59:54,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 00:59:54,654.654 INFO    ] No camera update needed
[2026-06-05 00:59:54,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 00:59:54,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 00:59:54,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 00:59:54,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 00:59:56,711.711 INFO    ] ================================================
[2026-06-05 00:59:56,727.727 INFO    ] Launching Daemon at Fri Jun  5 00:59:56 IST 2026
[2026-06-05 00:59:56,738.738 INFO    ] ================================================
[2026-06-05 00:59:57,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 00:59:57
[2026-06-05 00:59:57,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 00:59:58,173.173 INFO    ] Initializing speech engine...
[2026-06-05 00:59:58,182.182 INFO    ] 2026-06-05 00:59:58
[2026-06-05 00:59:58,430.430 INFO    ] 2026-06-05 00:59:58
[2026-06-05 00:59:58,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 00:59:58,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 00:59:58,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 00:59:58,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 00:59:58,928.928 INFO    ] time= 05/06/2026 00:59:58
[2026-06-05 00:59:58,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 00:59:58,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-05 00:59:59,111.111 INFO    ] No existing commands found in stream
[2026-06-05 01:00:04,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:00:04,142.142 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 01:00:09,552.552 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:00:09,554.554 INFO    ] Checking for system updates...
[2026-06-05 01:00:09,590.590 INFO    ] 200
[2026-06-05 01:00:09,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:00:09,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:00:09,654.654 INFO    ] No update needed
[2026-06-05 01:00:09,657.657 INFO    ] Checking for camera pi updates...
[2026-06-05 01:00:09,690.690 INFO    ] 200
[2026-06-05 01:00:09,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:00:09,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:00:09,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:00:09,794.794 INFO    ] No camera update needed
[2026-06-05 01:00:09,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:00:09,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:00:09,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:00:09,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:00:11,850.850 INFO    ] ================================================
[2026-06-05 01:00:11,866.866 INFO    ] Launching Daemon at Fri Jun  5 01:00:11 IST 2026
[2026-06-05 01:00:11,877.877 INFO    ] ================================================
[2026-06-05 01:00:12,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:00:12
[2026-06-05 01:00:13,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:00:13,480.480 INFO    ] Initializing speech engine...
[2026-06-05 01:00:13,494.494 INFO    ] 2026-06-05 01:00:13
[2026-06-05 01:00:13,764.764 INFO    ] 2026-06-05 01:00:13
[2026-06-05 01:00:13,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:00:14,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:00:14,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:00:14,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:00:14,266.266 INFO    ] time= 05/06/2026 01:00:14
[2026-06-05 01:00:14,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:00:14,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:00:14,471.471 INFO    ] No existing commands found in stream
[2026-06-05 01:00:19,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:00:19,488.488 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 01:00:22,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:00:22,393.393 INFO    ] Checking for system updates...
[2026-06-05 01:00:22,430.430 INFO    ] 200
[2026-06-05 01:00:22,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:00:22,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:00:22,490.490 INFO    ] No update needed
[2026-06-05 01:00:22,493.493 INFO    ] Checking for camera pi updates...
[2026-06-05 01:00:22,528.528 INFO    ] 200
[2026-06-05 01:00:22,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:00:22,572.572 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:00:22,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:00:22,623.623 INFO    ] No camera update needed
[2026-06-05 01:00:22,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:00:22,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:00:22,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:00:22,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:00:24,682.682 INFO    ] ================================================
[2026-06-05 01:00:24,698.698 INFO    ] Launching Daemon at Fri Jun  5 01:00:24 IST 2026
[2026-06-05 01:00:24,709.709 INFO    ] ================================================
[2026-06-05 01:00:25,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:00:25
[2026-06-05 01:00:25,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:00:26,192.192 INFO    ] Initializing speech engine...
[2026-06-05 01:00:26,203.203 INFO    ] 2026-06-05 01:00:26
[2026-06-05 01:00:26,466.466 INFO    ] 2026-06-05 01:00:26
[2026-06-05 01:00:26,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:00:26,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:00:26,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:00:26,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:00:26,917.917 INFO    ] time= 05/06/2026 01:00:26
[2026-06-05 01:00:26,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:00:26,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:00:27,041.041 INFO    ] No existing commands found in stream
[2026-06-05 01:00:32,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:00:32,050.050 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 01:00:36,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:00:36,257.257 INFO    ] Checking for system updates...
[2026-06-05 01:00:36,293.293 INFO    ] 200
[2026-06-05 01:00:36,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:00:36,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:00:36,351.351 INFO    ] No update needed
[2026-06-05 01:00:36,353.353 INFO    ] Checking for camera pi updates...
[2026-06-05 01:00:36,387.387 INFO    ] 200
[2026-06-05 01:00:36,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:00:36,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:00:36,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:00:36,490.490 INFO    ] No camera update needed
[2026-06-05 01:00:36,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:00:36,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:00:36,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:00:36,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:00:38,545.545 INFO    ] ================================================
[2026-06-05 01:00:38,561.561 INFO    ] Launching Daemon at Fri Jun  5 01:00:38 IST 2026
[2026-06-05 01:00:38,571.571 INFO    ] ================================================
[2026-06-05 01:00:39,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:00:39
[2026-06-05 01:00:39,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:00:39,978.978 INFO    ] Initializing speech engine...
[2026-06-05 01:00:40,003.003 INFO    ] 2026-06-05 01:00:39
[2026-06-05 01:00:40,266.266 INFO    ] 2026-06-05 01:00:40
[2026-06-05 01:00:40,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:00:40,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:00:40,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:00:40,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:00:40,727.727 INFO    ] time= 05/06/2026 01:00:40
[2026-06-05 01:00:40,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:00:40,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:00:40,919.919 INFO    ] No existing commands found in stream
[2026-06-05 01:00:45,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:00:45,959.959 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 01:00:49,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:00:49,590.590 INFO    ] Checking for system updates...
[2026-06-05 01:00:49,630.630 INFO    ] 200
[2026-06-05 01:00:49,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:00:49,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:00:49,688.688 INFO    ] No update needed
[2026-06-05 01:00:49,691.691 INFO    ] Checking for camera pi updates...
[2026-06-05 01:00:49,729.729 INFO    ] 200
[2026-06-05 01:00:49,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:00:49,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:00:49,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:00:49,824.824 INFO    ] No camera update needed
[2026-06-05 01:00:49,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:00:49,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:00:49,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:00:49,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:00:51,880.880 INFO    ] ================================================
[2026-06-05 01:00:51,895.895 INFO    ] Launching Daemon at Fri Jun  5 01:00:51 IST 2026
[2026-06-05 01:00:51,906.906 INFO    ] ================================================
[2026-06-05 01:00:52,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:00:52
[2026-06-05 01:00:53,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:00:53,333.333 INFO    ] Initializing speech engine...
[2026-06-05 01:00:53,339.339 INFO    ] 2026-06-05 01:00:53
[2026-06-05 01:00:53,584.584 INFO    ] 2026-06-05 01:00:53
[2026-06-05 01:00:53,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:00:53,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:00:53,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:00:53,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:00:53,951.951 INFO    ] time= 05/06/2026 01:00:53
[2026-06-05 01:00:53,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:00:54,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:00:54,125.125 INFO    ] No existing commands found in stream
[2026-06-05 01:00:59,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:00:59,158.158 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 01:01:00,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:01:00,343.343 INFO    ] Checking for system updates...
[2026-06-05 01:01:00,385.385 INFO    ] 200
[2026-06-05 01:01:00,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:00,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:01:00,443.443 INFO    ] No update needed
[2026-06-05 01:01:00,445.445 INFO    ] Checking for camera pi updates...
[2026-06-05 01:01:00,480.480 INFO    ] 200
[2026-06-05 01:01:00,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:00,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:01:00,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:01:00,677.677 INFO    ] No camera update needed
[2026-06-05 01:01:00,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:01:00,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:01:00,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:01:00,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:01:02,738.738 INFO    ] ================================================
[2026-06-05 01:01:02,756.756 INFO    ] Launching Daemon at Fri Jun  5 01:01:02 IST 2026
[2026-06-05 01:01:02,774.774 INFO    ] ================================================
[2026-06-05 01:01:03,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:01:03
[2026-06-05 01:01:04,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:01:04,300.300 INFO    ] Initializing speech engine...
[2026-06-05 01:01:04,309.309 INFO    ] 2026-06-05 01:01:04
[2026-06-05 01:01:04,555.555 INFO    ] 2026-06-05 01:01:04
[2026-06-05 01:01:04,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:01:04,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:01:04,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:01:04,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:01:05,026.026 INFO    ] time= 05/06/2026 01:01:04
[2026-06-05 01:01:05,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:01:05,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:01:05,182.182 INFO    ] No existing commands found in stream
[2026-06-05 01:01:10,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:01:10,195.195 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 01:01:10,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:01:10,862.862 INFO    ] Checking for system updates...
[2026-06-05 01:01:10,903.903 INFO    ] 200
[2026-06-05 01:01:10,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:10,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:01:10,961.961 INFO    ] No update needed
[2026-06-05 01:01:10,963.963 INFO    ] Checking for camera pi updates...
[2026-06-05 01:01:11,001.001 INFO    ] 200
[2026-06-05 01:01:11,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:11,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:01:11,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:01:11,100.100 INFO    ] No camera update needed
[2026-06-05 01:01:11,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:01:11,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:01:11,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:01:11,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:01:13,157.157 INFO    ] ================================================
[2026-06-05 01:01:13,172.172 INFO    ] Launching Daemon at Fri Jun  5 01:01:13 IST 2026
[2026-06-05 01:01:13,183.183 INFO    ] ================================================
[2026-06-05 01:01:13,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:01:13
[2026-06-05 01:01:14,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:01:14,588.588 INFO    ] Initializing speech engine...
[2026-06-05 01:01:14,614.614 INFO    ] 2026-06-05 01:01:14
[2026-06-05 01:01:14,860.860 INFO    ] 2026-06-05 01:01:14
[2026-06-05 01:01:14,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:01:15,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:01:15,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:01:15,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:01:15,204.204 INFO    ] time= 05/06/2026 01:01:15
[2026-06-05 01:01:15,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:01:15,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:01:15,318.318 INFO    ] No existing commands found in stream
[2026-06-05 01:01:20,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:01:20,332.332 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 01:01:23,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:01:23,234.234 INFO    ] Checking for system updates...
[2026-06-05 01:01:23,270.270 INFO    ] 200
[2026-06-05 01:01:23,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:23,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:01:23,329.329 INFO    ] No update needed
[2026-06-05 01:01:23,332.332 INFO    ] Checking for camera pi updates...
[2026-06-05 01:01:23,368.368 INFO    ] 200
[2026-06-05 01:01:23,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:23,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:01:23,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:01:23,471.471 INFO    ] No camera update needed
[2026-06-05 01:01:23,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:01:23,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:01:23,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:01:23,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:01:25,532.532 INFO    ] ================================================
[2026-06-05 01:01:25,548.548 INFO    ] Launching Daemon at Fri Jun  5 01:01:25 IST 2026
[2026-06-05 01:01:25,559.559 INFO    ] ================================================
[2026-06-05 01:01:26,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:01:26
[2026-06-05 01:01:26,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:01:26,991.991 INFO    ] Initializing speech engine...
[2026-06-05 01:01:26,999.999 INFO    ] 2026-06-05 01:01:26
[2026-06-05 01:01:27,251.251 INFO    ] 2026-06-05 01:01:27
[2026-06-05 01:01:27,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:01:27,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:01:27,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:01:27,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:01:27,628.628 INFO    ] time= 05/06/2026 01:01:27
[2026-06-05 01:01:27,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:01:27,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:01:27,784.784 INFO    ] No existing commands found in stream
[2026-06-05 01:01:32,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:01:32,813.813 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 01:01:36,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:01:36,907.907 INFO    ] Checking for system updates...
[2026-06-05 01:01:36,943.943 INFO    ] 200
[2026-06-05 01:01:36,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:36,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:01:37,000.000 INFO    ] No update needed
[2026-06-05 01:01:37,003.003 INFO    ] Checking for camera pi updates...
[2026-06-05 01:01:37,041.041 INFO    ] 200
[2026-06-05 01:01:37,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:37,085.085 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:01:37,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:01:37,135.135 INFO    ] No camera update needed
[2026-06-05 01:01:37,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:01:37,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:01:37,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:01:37,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:01:39,194.194 INFO    ] ================================================
[2026-06-05 01:01:39,209.209 INFO    ] Launching Daemon at Fri Jun  5 01:01:39 IST 2026
[2026-06-05 01:01:39,221.221 INFO    ] ================================================
[2026-06-05 01:01:39,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:01:39
[2026-06-05 01:01:40,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:01:40,633.633 INFO    ] Initializing speech engine...
[2026-06-05 01:01:40,656.656 INFO    ] 2026-06-05 01:01:40
[2026-06-05 01:01:40,911.911 INFO    ] 2026-06-05 01:01:40
[2026-06-05 01:01:40,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:01:41,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:01:41,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:01:41,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:01:41,288.288 INFO    ] time= 05/06/2026 01:01:41
[2026-06-05 01:01:41,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:01:41,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:01:41,456.456 INFO    ] No existing commands found in stream
[2026-06-05 01:01:46,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:01:46,494.494 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 01:01:49,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:01:49,523.523 INFO    ] Checking for system updates...
[2026-06-05 01:01:49,559.559 INFO    ] 200
[2026-06-05 01:01:49,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:49,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:01:49,623.623 INFO    ] No update needed
[2026-06-05 01:01:49,626.626 INFO    ] Checking for camera pi updates...
[2026-06-05 01:01:49,660.660 INFO    ] 200
[2026-06-05 01:01:49,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:01:49,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:01:49,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:01:49,756.756 INFO    ] No camera update needed
[2026-06-05 01:01:49,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:01:49,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:01:49,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:01:49,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:01:51,813.813 INFO    ] ================================================
[2026-06-05 01:01:51,828.828 INFO    ] Launching Daemon at Fri Jun  5 01:01:51 IST 2026
[2026-06-05 01:01:51,840.840 INFO    ] ================================================
[2026-06-05 01:01:52,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:01:52
[2026-06-05 01:01:53,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:01:53,441.441 INFO    ] Initializing speech engine...
[2026-06-05 01:01:53,453.453 INFO    ] 2026-06-05 01:01:53
[2026-06-05 01:01:53,761.761 INFO    ] 2026-06-05 01:01:53
[2026-06-05 01:01:53,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:01:54,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:01:54,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:01:54,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:01:54,263.263 INFO    ] time= 05/06/2026 01:01:54
[2026-06-05 01:01:54,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:01:54,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:01:54,412.412 INFO    ] No existing commands found in stream
[2026-06-05 01:01:59,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:01:59,437.437 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 01:02:01,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:02:01,921.921 INFO    ] Checking for system updates...
[2026-06-05 01:02:01,994.994 INFO    ] 200
[2026-06-05 01:02:02,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:02,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:02:02,139.139 INFO    ] No update needed
[2026-06-05 01:02:02,143.143 INFO    ] Checking for camera pi updates...
[2026-06-05 01:02:02,200.200 INFO    ] 200
[2026-06-05 01:02:02,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:02,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:02:02,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:02:02,304.304 INFO    ] No camera update needed
[2026-06-05 01:02:02,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:02:02,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:02:02,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:02:02,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:02:04,382.382 INFO    ] ================================================
[2026-06-05 01:02:04,398.398 INFO    ] Launching Daemon at Fri Jun  5 01:02:04 IST 2026
[2026-06-05 01:02:04,408.408 INFO    ] ================================================
[2026-06-05 01:02:04,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:02:04
[2026-06-05 01:02:05,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:02:05,863.863 INFO    ] Initializing speech engine...
[2026-06-05 01:02:05,889.889 INFO    ] 2026-06-05 01:02:05
[2026-06-05 01:02:06,164.164 INFO    ] 2026-06-05 01:02:06
[2026-06-05 01:02:06,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:02:06,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:02:06,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:02:06,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:02:06,583.583 INFO    ] time= 05/06/2026 01:02:06
[2026-06-05 01:02:06,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:02:06,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:02:06,752.752 INFO    ] No existing commands found in stream
[2026-06-05 01:02:11,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:02:11,789.789 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 01:02:14,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:02:14,098.098 INFO    ] Checking for system updates...
[2026-06-05 01:02:14,134.134 INFO    ] 200
[2026-06-05 01:02:14,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:14,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:02:14,192.192 INFO    ] No update needed
[2026-06-05 01:02:14,194.194 INFO    ] Checking for camera pi updates...
[2026-06-05 01:02:14,228.228 INFO    ] 200
[2026-06-05 01:02:14,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:14,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:02:14,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:02:14,327.327 INFO    ] No camera update needed
[2026-06-05 01:02:14,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:02:14,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:02:14,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:02:14,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:02:16,383.383 INFO    ] ================================================
[2026-06-05 01:02:16,398.398 INFO    ] Launching Daemon at Fri Jun  5 01:02:16 IST 2026
[2026-06-05 01:02:16,409.409 INFO    ] ================================================
[2026-06-05 01:02:16,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:02:16
[2026-06-05 01:02:17,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:02:17,835.835 INFO    ] Initializing speech engine...
[2026-06-05 01:02:17,844.844 INFO    ] 2026-06-05 01:02:17
[2026-06-05 01:02:18,092.092 INFO    ] 2026-06-05 01:02:18
[2026-06-05 01:02:18,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:02:18,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:02:18,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:02:18,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:02:18,564.564 INFO    ] time= 05/06/2026 01:02:18
[2026-06-05 01:02:18,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:02:18,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:02:18,711.711 INFO    ] No existing commands found in stream
[2026-06-05 01:02:23,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:02:23,727.727 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 01:02:27,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:02:27,791.791 INFO    ] Checking for system updates...
[2026-06-05 01:02:27,830.830 INFO    ] 200
[2026-06-05 01:02:27,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:27,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:02:27,889.889 INFO    ] No update needed
[2026-06-05 01:02:27,891.891 INFO    ] Checking for camera pi updates...
[2026-06-05 01:02:27,925.925 INFO    ] 200
[2026-06-05 01:02:27,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:27,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:02:28,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:02:28,024.024 INFO    ] No camera update needed
[2026-06-05 01:02:28,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:02:28,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:02:28,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:02:28,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:02:30,079.079 INFO    ] ================================================
[2026-06-05 01:02:30,094.094 INFO    ] Launching Daemon at Fri Jun  5 01:02:30 IST 2026
[2026-06-05 01:02:30,104.104 INFO    ] ================================================
[2026-06-05 01:02:30,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:02:30
[2026-06-05 01:02:31,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:02:31,532.532 INFO    ] Initializing speech engine...
[2026-06-05 01:02:31,542.542 INFO    ] 2026-06-05 01:02:31
[2026-06-05 01:02:31,797.797 INFO    ] 2026-06-05 01:02:31
[2026-06-05 01:02:31,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:02:32,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:02:32,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:02:32,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:02:32,170.170 INFO    ] time= 05/06/2026 01:02:32
[2026-06-05 01:02:32,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:02:32,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:02:32,273.273 INFO    ] No existing commands found in stream
[2026-06-05 01:02:37,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:02:37,311.311 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 01:02:39,062.062 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:02:39,064.064 INFO    ] Checking for system updates...
[2026-06-05 01:02:39,101.101 INFO    ] 200
[2026-06-05 01:02:39,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:39,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:02:39,159.159 INFO    ] No update needed
[2026-06-05 01:02:39,161.161 INFO    ] Checking for camera pi updates...
[2026-06-05 01:02:39,200.200 INFO    ] 200
[2026-06-05 01:02:39,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:39,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:02:39,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:02:39,298.298 INFO    ] No camera update needed
[2026-06-05 01:02:39,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:02:39,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:02:39,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:02:39,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:02:41,354.354 INFO    ] ================================================
[2026-06-05 01:02:41,369.369 INFO    ] Launching Daemon at Fri Jun  5 01:02:41 IST 2026
[2026-06-05 01:02:41,439.439 INFO    ] ================================================
[2026-06-05 01:02:42,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:02:42
[2026-06-05 01:02:42,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:02:43,067.067 INFO    ] Initializing speech engine...
[2026-06-05 01:02:43,076.076 INFO    ] 2026-06-05 01:02:43
[2026-06-05 01:02:43,350.350 INFO    ] 2026-06-05 01:02:43
[2026-06-05 01:02:43,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:02:43,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:02:43,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:02:43,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:02:43,846.846 INFO    ] time= 05/06/2026 01:02:43
[2026-06-05 01:02:43,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:02:43,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:02:44,036.036 INFO    ] No existing commands found in stream
[2026-06-05 01:02:49,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:02:49,071.071 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 01:02:52,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:02:52,331.331 INFO    ] Checking for system updates...
[2026-06-05 01:02:52,370.370 INFO    ] 200
[2026-06-05 01:02:52,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:52,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:02:52,429.429 INFO    ] No update needed
[2026-06-05 01:02:52,431.431 INFO    ] Checking for camera pi updates...
[2026-06-05 01:02:52,470.470 INFO    ] 200
[2026-06-05 01:02:52,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:02:52,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:02:52,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:02:52,576.576 INFO    ] No camera update needed
[2026-06-05 01:02:52,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:02:52,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:02:52,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:02:52,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:02:54,635.635 INFO    ] ================================================
[2026-06-05 01:02:54,651.651 INFO    ] Launching Daemon at Fri Jun  5 01:02:54 IST 2026
[2026-06-05 01:02:54,661.661 INFO    ] ================================================
[2026-06-05 01:02:55,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:02:55
[2026-06-05 01:02:55,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:02:56,262.262 INFO    ] Initializing speech engine...
[2026-06-05 01:02:56,275.275 INFO    ] 2026-06-05 01:02:56
[2026-06-05 01:02:56,552.552 INFO    ] 2026-06-05 01:02:56
[2026-06-05 01:02:56,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:02:56,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:02:56,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:02:56,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:02:57,024.024 INFO    ] time= 05/06/2026 01:02:56
[2026-06-05 01:02:57,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:02:57,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:02:57,149.149 INFO    ] No existing commands found in stream
[2026-06-05 01:03:02,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:03:02,166.166 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 01:03:04,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:03:04,190.190 INFO    ] Checking for system updates...
[2026-06-05 01:03:04,227.227 INFO    ] 200
[2026-06-05 01:03:04,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:04,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:03:04,286.286 INFO    ] No update needed
[2026-06-05 01:03:04,288.288 INFO    ] Checking for camera pi updates...
[2026-06-05 01:03:04,322.322 INFO    ] 200
[2026-06-05 01:03:04,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:04,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:03:04,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:03:04,404.404 INFO    ] No camera update needed
[2026-06-05 01:03:04,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:03:04,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:03:04,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:03:04,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:03:06,460.460 INFO    ] ================================================
[2026-06-05 01:03:06,475.475 INFO    ] Launching Daemon at Fri Jun  5 01:03:06 IST 2026
[2026-06-05 01:03:06,486.486 INFO    ] ================================================
[2026-06-05 01:03:07,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:03:07
[2026-06-05 01:03:07,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:03:07,938.938 INFO    ] Initializing speech engine...
[2026-06-05 01:03:07,944.944 INFO    ] 2026-06-05 01:03:07
[2026-06-05 01:03:08,239.239 INFO    ] 2026-06-05 01:03:08
[2026-06-05 01:03:08,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:03:08,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:03:08,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:03:08,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:03:08,623.623 INFO    ] time= 05/06/2026 01:03:08
[2026-06-05 01:03:08,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:03:08,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:03:08,750.750 INFO    ] No existing commands found in stream
[2026-06-05 01:03:13,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:03:13,766.766 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 01:03:15,084.084 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:03:15,087.087 INFO    ] Checking for system updates...
[2026-06-05 01:03:15,123.123 INFO    ] 200
[2026-06-05 01:03:15,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:15,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:03:15,180.180 INFO    ] No update needed
[2026-06-05 01:03:15,183.183 INFO    ] Checking for camera pi updates...
[2026-06-05 01:03:15,216.216 INFO    ] 200
[2026-06-05 01:03:15,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:15,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:03:15,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:03:15,307.307 INFO    ] No camera update needed
[2026-06-05 01:03:15,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:03:15,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:03:15,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:03:15,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:03:17,362.362 INFO    ] ================================================
[2026-06-05 01:03:17,378.378 INFO    ] Launching Daemon at Fri Jun  5 01:03:17 IST 2026
[2026-06-05 01:03:17,389.389 INFO    ] ================================================
[2026-06-05 01:03:17,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:03:17
[2026-06-05 01:03:18,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:03:18,975.975 INFO    ] Initializing speech engine...
[2026-06-05 01:03:18,984.984 INFO    ] 2026-06-05 01:03:18
[2026-06-05 01:03:19,271.271 INFO    ] 2026-06-05 01:03:19
[2026-06-05 01:03:19,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:03:19,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:03:19,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:03:19,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:03:19,716.716 INFO    ] time= 05/06/2026 01:03:19
[2026-06-05 01:03:19,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:03:19,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:03:19,869.869 INFO    ] No existing commands found in stream
[2026-06-05 01:03:24,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:03:24,886.886 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 01:03:28,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:03:28,654.654 INFO    ] Checking for system updates...
[2026-06-05 01:03:28,691.691 INFO    ] 200
[2026-06-05 01:03:28,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:28,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:03:28,749.749 INFO    ] No update needed
[2026-06-05 01:03:28,751.751 INFO    ] Checking for camera pi updates...
[2026-06-05 01:03:28,785.785 INFO    ] 200
[2026-06-05 01:03:28,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:28,834.834 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:03:28,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:03:28,881.881 INFO    ] No camera update needed
[2026-06-05 01:03:28,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:03:28,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:03:28,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:03:28,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:03:30,936.936 INFO    ] ================================================
[2026-06-05 01:03:30,950.950 INFO    ] Launching Daemon at Fri Jun  5 01:03:30 IST 2026
[2026-06-05 01:03:30,961.961 INFO    ] ================================================
[2026-06-05 01:03:31,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:03:31
[2026-06-05 01:03:32,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:03:32,428.428 INFO    ] Initializing speech engine...
[2026-06-05 01:03:32,436.436 INFO    ] 2026-06-05 01:03:32
[2026-06-05 01:03:32,730.730 INFO    ] 2026-06-05 01:03:32
[2026-06-05 01:03:32,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:03:33,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:03:33,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:03:33,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:03:33,179.179 INFO    ] time= 05/06/2026 01:03:33
[2026-06-05 01:03:33,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:03:33,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:03:33,356.356 INFO    ] No existing commands found in stream
[2026-06-05 01:03:38,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:03:38,372.372 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 01:03:41,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:03:41,867.867 INFO    ] Checking for system updates...
[2026-06-05 01:03:41,906.906 INFO    ] 200
[2026-06-05 01:03:41,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:41,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:03:41,963.963 INFO    ] No update needed
[2026-06-05 01:03:41,966.966 INFO    ] Checking for camera pi updates...
[2026-06-05 01:03:42,000.000 INFO    ] 200
[2026-06-05 01:03:42,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:42,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:03:42,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:03:42,099.099 INFO    ] No camera update needed
[2026-06-05 01:03:42,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:03:42,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:03:42,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:03:42,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:03:44,154.154 INFO    ] ================================================
[2026-06-05 01:03:44,170.170 INFO    ] Launching Daemon at Fri Jun  5 01:03:44 IST 2026
[2026-06-05 01:03:44,181.181 INFO    ] ================================================
[2026-06-05 01:03:44,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:03:44
[2026-06-05 01:03:45,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:03:45,702.702 INFO    ] Initializing speech engine...
[2026-06-05 01:03:45,712.712 INFO    ] 2026-06-05 01:03:45
[2026-06-05 01:03:45,972.972 INFO    ] 2026-06-05 01:03:45
[2026-06-05 01:03:46,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:03:46,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:03:46,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:03:46,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:03:46,354.354 INFO    ] time= 05/06/2026 01:03:46
[2026-06-05 01:03:46,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:03:46,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:03:46,522.522 INFO    ] No existing commands found in stream
[2026-06-05 01:03:51,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:03:51,550.550 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 01:03:53,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:03:53,309.309 INFO    ] Checking for system updates...
[2026-06-05 01:03:53,345.345 INFO    ] 200
[2026-06-05 01:03:53,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:53,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:03:53,402.402 INFO    ] No update needed
[2026-06-05 01:03:53,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 01:03:53,438.438 INFO    ] 200
[2026-06-05 01:03:53,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:03:53,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:03:53,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:03:53,532.532 INFO    ] No camera update needed
[2026-06-05 01:03:53,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:03:53,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:03:53,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:03:53,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:03:55,589.589 INFO    ] ================================================
[2026-06-05 01:03:55,606.606 INFO    ] Launching Daemon at Fri Jun  5 01:03:55 IST 2026
[2026-06-05 01:03:55,617.617 INFO    ] ================================================
[2026-06-05 01:03:56,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:03:56
[2026-06-05 01:03:56,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:03:57,217.217 INFO    ] Initializing speech engine...
[2026-06-05 01:03:57,229.229 INFO    ] 2026-06-05 01:03:57
[2026-06-05 01:03:57,494.494 INFO    ] 2026-06-05 01:03:57
[2026-06-05 01:03:57,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:03:57,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:03:57,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:03:57,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:03:57,929.929 INFO    ] time= 05/06/2026 01:03:57
[2026-06-05 01:03:57,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:03:58,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:03:58,099.099 INFO    ] No existing commands found in stream
[2026-06-05 01:04:03,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:04:03,112.112 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 01:04:06,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:04:06,274.274 INFO    ] Checking for system updates...
[2026-06-05 01:04:06,312.312 INFO    ] 200
[2026-06-05 01:04:06,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:06,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:04:06,372.372 INFO    ] No update needed
[2026-06-05 01:04:06,375.375 INFO    ] Checking for camera pi updates...
[2026-06-05 01:04:06,410.410 INFO    ] 200
[2026-06-05 01:04:06,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:06,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:04:06,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:04:06,517.517 INFO    ] No camera update needed
[2026-06-05 01:04:06,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:04:06,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:04:06,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:04:06,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:04:08,576.576 INFO    ] ================================================
[2026-06-05 01:04:08,592.592 INFO    ] Launching Daemon at Fri Jun  5 01:04:08 IST 2026
[2026-06-05 01:04:08,603.603 INFO    ] ================================================
[2026-06-05 01:04:09,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:04:09
[2026-06-05 01:04:09,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:04:10,006.006 INFO    ] Initializing speech engine...
[2026-06-05 01:04:10,012.012 INFO    ] 2026-06-05 01:04:10
[2026-06-05 01:04:10,301.301 INFO    ] 2026-06-05 01:04:10
[2026-06-05 01:04:10,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:04:10,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:04:10,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:04:10,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:04:10,718.718 INFO    ] time= 05/06/2026 01:04:10
[2026-06-05 01:04:10,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:04:10,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:04:10,870.870 INFO    ] No existing commands found in stream
[2026-06-05 01:04:15,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:04:15,898.898 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-05 01:04:19,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:04:19,272.272 INFO    ] Checking for system updates...
[2026-06-05 01:04:19,308.308 INFO    ] 200
[2026-06-05 01:04:19,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:19,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:04:19,364.364 INFO    ] No update needed
[2026-06-05 01:04:19,367.367 INFO    ] Checking for camera pi updates...
[2026-06-05 01:04:19,400.400 INFO    ] 200
[2026-06-05 01:04:19,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:19,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:04:19,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:04:19,490.490 INFO    ] No camera update needed
[2026-06-05 01:04:19,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:04:19,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:04:19,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:04:19,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:04:21,546.546 INFO    ] ================================================
[2026-06-05 01:04:21,561.561 INFO    ] Launching Daemon at Fri Jun  5 01:04:21 IST 2026
[2026-06-05 01:04:21,579.579 INFO    ] ================================================
[2026-06-05 01:04:22,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:04:22
[2026-06-05 01:04:22,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:04:23,199.199 INFO    ] Initializing speech engine...
[2026-06-05 01:04:23,210.210 INFO    ] 2026-06-05 01:04:23
[2026-06-05 01:04:23,486.486 INFO    ] 2026-06-05 01:04:23
[2026-06-05 01:04:23,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:04:23,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:04:23,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:04:23,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:04:24,024.024 INFO    ] time= 05/06/2026 01:04:23
[2026-06-05 01:04:24,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:04:24,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:04:24,169.169 INFO    ] No existing commands found in stream
[2026-06-05 01:04:29,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:04:29,192.192 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 01:04:30,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:04:30,700.700 INFO    ] Checking for system updates...
[2026-06-05 01:04:30,738.738 INFO    ] 200
[2026-06-05 01:04:30,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:30,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:04:30,804.804 INFO    ] No update needed
[2026-06-05 01:04:30,808.808 INFO    ] Checking for camera pi updates...
[2026-06-05 01:04:30,846.846 INFO    ] 200
[2026-06-05 01:04:30,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:30,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:04:30,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:04:30,947.947 INFO    ] No camera update needed
[2026-06-05 01:04:30,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:04:30,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:04:30,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:04:30,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:04:33,013.013 INFO    ] ================================================
[2026-06-05 01:04:33,029.029 INFO    ] Launching Daemon at Fri Jun  5 01:04:33 IST 2026
[2026-06-05 01:04:33,042.042 INFO    ] ================================================
[2026-06-05 01:04:33,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:04:33
[2026-06-05 01:04:34,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:04:34,668.668 INFO    ] Initializing speech engine...
[2026-06-05 01:04:34,674.674 INFO    ] 2026-06-05 01:04:34
[2026-06-05 01:04:34,963.963 INFO    ] 2026-06-05 01:04:34
[2026-06-05 01:04:35,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:04:35,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:04:35,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:04:35,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:04:35,464.464 INFO    ] time= 05/06/2026 01:04:35
[2026-06-05 01:04:35,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:04:35,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:04:35,652.652 INFO    ] No existing commands found in stream
[2026-06-05 01:04:40,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:04:40,682.682 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 01:04:44,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:04:44,426.426 INFO    ] Checking for system updates...
[2026-06-05 01:04:44,463.463 INFO    ] 200
[2026-06-05 01:04:44,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:44,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:04:44,523.523 INFO    ] No update needed
[2026-06-05 01:04:44,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 01:04:44,561.561 INFO    ] 200
[2026-06-05 01:04:44,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:44,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:04:44,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:04:44,658.658 INFO    ] No camera update needed
[2026-06-05 01:04:44,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:04:44,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:04:44,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:04:44,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:04:46,720.720 INFO    ] ================================================
[2026-06-05 01:04:46,735.735 INFO    ] Launching Daemon at Fri Jun  5 01:04:46 IST 2026
[2026-06-05 01:04:46,746.746 INFO    ] ================================================
[2026-06-05 01:04:47,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:04:47
[2026-06-05 01:04:48,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:04:48,385.385 INFO    ] Initializing speech engine...
[2026-06-05 01:04:48,399.399 INFO    ] 2026-06-05 01:04:48
[2026-06-05 01:04:48,709.709 INFO    ] 2026-06-05 01:04:48
[2026-06-05 01:04:48,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:04:49,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:04:49,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:04:49,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:04:49,219.219 INFO    ] time= 05/06/2026 01:04:49
[2026-06-05 01:04:49,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:04:49,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:04:49,372.372 INFO    ] No existing commands found in stream
[2026-06-05 01:04:54,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:04:54,390.390 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 01:04:55,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:04:55,973.973 INFO    ] Checking for system updates...
[2026-06-05 01:04:56,010.010 INFO    ] 200
[2026-06-05 01:04:56,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:56,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:04:56,072.072 INFO    ] No update needed
[2026-06-05 01:04:56,075.075 INFO    ] Checking for camera pi updates...
[2026-06-05 01:04:56,108.108 INFO    ] 200
[2026-06-05 01:04:56,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:04:56,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:04:56,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:04:56,208.208 INFO    ] No camera update needed
[2026-06-05 01:04:56,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:04:56,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:04:56,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:04:56,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:04:58,263.263 INFO    ] ================================================
[2026-06-05 01:04:58,278.278 INFO    ] Launching Daemon at Fri Jun  5 01:04:58 IST 2026
[2026-06-05 01:04:58,289.289 INFO    ] ================================================
[2026-06-05 01:04:58,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:04:58
[2026-06-05 01:04:59,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:04:59,928.928 INFO    ] Initializing speech engine...
[2026-06-05 01:04:59,942.942 INFO    ] 2026-06-05 01:04:59
[2026-06-05 01:05:00,250.250 INFO    ] 2026-06-05 01:05:00
[2026-06-05 01:05:00,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:05:00,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:05:00,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:05:00,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:05:00,762.762 INFO    ] time= 05/06/2026 01:05:00
[2026-06-05 01:05:00,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:05:00,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:05:00,917.917 INFO    ] No existing commands found in stream
[2026-06-05 01:05:05,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:05:05,946.946 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 01:05:06,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:05:06,682.682 INFO    ] Checking for system updates...
[2026-06-05 01:05:06,720.720 INFO    ] 200
[2026-06-05 01:05:06,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:06,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:05:06,781.781 INFO    ] No update needed
[2026-06-05 01:05:06,783.783 INFO    ] Checking for camera pi updates...
[2026-06-05 01:05:06,817.817 INFO    ] 200
[2026-06-05 01:05:06,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:06,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:05:07,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:05:07,009.009 INFO    ] No camera update needed
[2026-06-05 01:05:07,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:05:07,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:05:07,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:05:07,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:05:09,064.064 INFO    ] ================================================
[2026-06-05 01:05:09,080.080 INFO    ] Launching Daemon at Fri Jun  5 01:05:09 IST 2026
[2026-06-05 01:05:09,091.091 INFO    ] ================================================
[2026-06-05 01:05:09,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:05:09
[2026-06-05 01:05:10,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:05:10,491.491 INFO    ] Initializing speech engine...
[2026-06-05 01:05:10,505.505 INFO    ] 2026-06-05 01:05:10
[2026-06-05 01:05:10,771.771 INFO    ] 2026-06-05 01:05:10
[2026-06-05 01:05:10,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:05:11,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:05:11,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:05:11,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:05:11,249.249 INFO    ] time= 05/06/2026 01:05:11
[2026-06-05 01:05:11,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:05:11,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:05:11,398.398 INFO    ] No existing commands found in stream
[2026-06-05 01:05:16,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:05:16,412.412 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 01:05:19,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:05:19,063.063 INFO    ] Checking for system updates...
[2026-06-05 01:05:19,105.105 INFO    ] 200
[2026-06-05 01:05:19,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:19,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:05:19,164.164 INFO    ] No update needed
[2026-06-05 01:05:19,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 01:05:19,207.207 INFO    ] 200
[2026-06-05 01:05:19,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:19,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:05:19,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:05:19,325.325 INFO    ] No camera update needed
[2026-06-05 01:05:19,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:05:19,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:05:19,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:05:19,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:05:21,387.387 INFO    ] ================================================
[2026-06-05 01:05:21,402.402 INFO    ] Launching Daemon at Fri Jun  5 01:05:21 IST 2026
[2026-06-05 01:05:21,413.413 INFO    ] ================================================
[2026-06-05 01:05:22,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:05:22
[2026-06-05 01:05:22,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:05:23,085.085 INFO    ] Initializing speech engine...
[2026-06-05 01:05:23,090.090 INFO    ] 2026-06-05 01:05:23
[2026-06-05 01:05:23,342.342 INFO    ] 2026-06-05 01:05:23
[2026-06-05 01:05:23,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:05:23,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:05:23,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:05:23,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:05:23,718.718 INFO    ] time= 05/06/2026 01:05:23
[2026-06-05 01:05:23,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:05:23,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:05:23,870.870 INFO    ] No existing commands found in stream
[2026-06-05 01:05:28,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:05:28,898.898 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 01:05:31,237.237 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:05:31,240.240 INFO    ] Checking for system updates...
[2026-06-05 01:05:31,277.277 INFO    ] 200
[2026-06-05 01:05:31,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:31,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:05:31,350.350 INFO    ] No update needed
[2026-06-05 01:05:31,353.353 INFO    ] Checking for camera pi updates...
[2026-06-05 01:05:31,388.388 INFO    ] 200
[2026-06-05 01:05:31,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:31,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:05:31,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:05:31,486.486 INFO    ] No camera update needed
[2026-06-05 01:05:31,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:05:31,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:05:31,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:05:31,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:05:33,546.546 INFO    ] ================================================
[2026-06-05 01:05:33,561.561 INFO    ] Launching Daemon at Fri Jun  5 01:05:33 IST 2026
[2026-06-05 01:05:33,572.572 INFO    ] ================================================
[2026-06-05 01:05:34,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:05:34
[2026-06-05 01:05:34,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:05:35,147.147 INFO    ] Initializing speech engine...
[2026-06-05 01:05:35,156.156 INFO    ] 2026-06-05 01:05:35
[2026-06-05 01:05:35,401.401 INFO    ] 2026-06-05 01:05:35
[2026-06-05 01:05:35,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:05:35,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:05:35,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:05:35,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:05:35,960.960 INFO    ] time= 05/06/2026 01:05:35
[2026-06-05 01:05:35,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:05:35,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:05:36,112.112 INFO    ] No existing commands found in stream
[2026-06-05 01:05:41,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:05:41,133.133 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 01:05:41,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:05:41,753.753 INFO    ] Checking for system updates...
[2026-06-05 01:05:41,790.790 INFO    ] 200
[2026-06-05 01:05:41,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:41,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:05:41,848.848 INFO    ] No update needed
[2026-06-05 01:05:41,851.851 INFO    ] Checking for camera pi updates...
[2026-06-05 01:05:41,884.884 INFO    ] 200
[2026-06-05 01:05:41,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:41,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:05:41,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:05:41,979.979 INFO    ] No camera update needed
[2026-06-05 01:05:41,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:05:41,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:05:41,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:05:41,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:05:44,034.034 INFO    ] ================================================
[2026-06-05 01:05:44,050.050 INFO    ] Launching Daemon at Fri Jun  5 01:05:44 IST 2026
[2026-06-05 01:05:44,061.061 INFO    ] ================================================
[2026-06-05 01:05:44,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:05:44
[2026-06-05 01:05:45,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:05:45,474.474 INFO    ] Initializing speech engine...
[2026-06-05 01:05:45,482.482 INFO    ] 2026-06-05 01:05:45
[2026-06-05 01:05:45,780.780 INFO    ] 2026-06-05 01:05:45
[2026-06-05 01:05:45,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:05:45,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:05:46,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:05:46,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:05:46,167.167 INFO    ] time= 05/06/2026 01:05:46
[2026-06-05 01:05:46,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:05:46,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:05:46,317.317 INFO    ] No existing commands found in stream
[2026-06-05 01:05:51,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:05:51,345.345 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 01:05:54,058.058 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:05:54,060.060 INFO    ] Checking for system updates...
[2026-06-05 01:05:54,096.096 INFO    ] 200
[2026-06-05 01:05:54,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:54,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:05:54,155.155 INFO    ] No update needed
[2026-06-05 01:05:54,157.157 INFO    ] Checking for camera pi updates...
[2026-06-05 01:05:54,191.191 INFO    ] 200
[2026-06-05 01:05:54,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:05:54,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:05:54,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:05:54,289.289 INFO    ] No camera update needed
[2026-06-05 01:05:54,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:05:54,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:05:54,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:05:54,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:05:56,345.345 INFO    ] ================================================
[2026-06-05 01:05:56,360.360 INFO    ] Launching Daemon at Fri Jun  5 01:05:56 IST 2026
[2026-06-05 01:05:56,371.371 INFO    ] ================================================
[2026-06-05 01:05:56,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:05:56
[2026-06-05 01:05:57,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:05:57,794.794 INFO    ] Initializing speech engine...
[2026-06-05 01:05:57,815.815 INFO    ] 2026-06-05 01:05:57
[2026-06-05 01:05:58,104.104 INFO    ] 2026-06-05 01:05:58
[2026-06-05 01:05:58,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:05:58,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:05:58,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:05:58,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:05:58,524.524 INFO    ] time= 05/06/2026 01:05:58
[2026-06-05 01:05:58,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:05:58,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:05:58,614.614 INFO    ] No existing commands found in stream
[2026-06-05 01:06:03,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:06:03,630.630 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 01:06:05,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:06:05,333.333 INFO    ] Checking for system updates...
[2026-06-05 01:06:05,371.371 INFO    ] 200
[2026-06-05 01:06:05,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:05,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:06:05,433.433 INFO    ] No update needed
[2026-06-05 01:06:05,435.435 INFO    ] Checking for camera pi updates...
[2026-06-05 01:06:05,471.471 INFO    ] 200
[2026-06-05 01:06:05,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:05,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:06:05,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:06:05,564.564 INFO    ] No camera update needed
[2026-06-05 01:06:05,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:06:05,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:06:05,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:06:05,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:06:07,618.618 INFO    ] ================================================
[2026-06-05 01:06:07,633.633 INFO    ] Launching Daemon at Fri Jun  5 01:06:07 IST 2026
[2026-06-05 01:06:07,644.644 INFO    ] ================================================
[2026-06-05 01:06:08,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:06:08
[2026-06-05 01:06:08,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:06:09,153.153 INFO    ] Initializing speech engine...
[2026-06-05 01:06:09,159.159 INFO    ] 2026-06-05 01:06:09
[2026-06-05 01:06:09,416.416 INFO    ] 2026-06-05 01:06:09
[2026-06-05 01:06:09,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:06:09,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:06:09,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:06:09,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:06:09,922.922 INFO    ] time= 05/06/2026 01:06:09
[2026-06-05 01:06:09,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:06:09,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:06:10,117.117 INFO    ] No existing commands found in stream
[2026-06-05 01:06:15,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:06:15,150.150 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 01:06:18,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:06:18,246.246 INFO    ] Checking for system updates...
[2026-06-05 01:06:18,284.284 INFO    ] 200
[2026-06-05 01:06:18,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:18,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:06:18,347.347 INFO    ] No update needed
[2026-06-05 01:06:18,350.350 INFO    ] Checking for camera pi updates...
[2026-06-05 01:06:18,387.387 INFO    ] 200
[2026-06-05 01:06:18,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:18,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:06:18,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:06:18,499.499 INFO    ] No camera update needed
[2026-06-05 01:06:18,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:06:18,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:06:18,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:06:18,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:06:20,557.557 INFO    ] ================================================
[2026-06-05 01:06:20,572.572 INFO    ] Launching Daemon at Fri Jun  5 01:06:20 IST 2026
[2026-06-05 01:06:20,583.583 INFO    ] ================================================
[2026-06-05 01:06:21,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:06:21
[2026-06-05 01:06:21,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:06:21,986.986 INFO    ] Initializing speech engine...
[2026-06-05 01:06:21,993.993 INFO    ] 2026-06-05 01:06:21
[2026-06-05 01:06:22,267.267 INFO    ] 2026-06-05 01:06:22
[2026-06-05 01:06:22,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:06:22,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:06:22,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:06:22,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:06:22,642.642 INFO    ] time= 05/06/2026 01:06:22
[2026-06-05 01:06:22,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:06:22,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:06:22,813.813 INFO    ] No existing commands found in stream
[2026-06-05 01:06:27,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:06:27,846.846 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 01:06:30,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:06:30,150.150 INFO    ] Checking for system updates...
[2026-06-05 01:06:30,186.186 INFO    ] 200
[2026-06-05 01:06:30,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:30,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:06:30,247.247 INFO    ] No update needed
[2026-06-05 01:06:30,250.250 INFO    ] Checking for camera pi updates...
[2026-06-05 01:06:30,284.284 INFO    ] 200
[2026-06-05 01:06:30,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:30,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:06:30,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:06:30,372.372 INFO    ] No camera update needed
[2026-06-05 01:06:30,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:06:30,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:06:30,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:06:30,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:06:32,430.430 INFO    ] ================================================
[2026-06-05 01:06:32,447.447 INFO    ] Launching Daemon at Fri Jun  5 01:06:32 IST 2026
[2026-06-05 01:06:32,460.460 INFO    ] ================================================
[2026-06-05 01:06:33,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:06:33
[2026-06-05 01:06:33,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:06:33,898.898 INFO    ] Initializing speech engine...
[2026-06-05 01:06:33,906.906 INFO    ] 2026-06-05 01:06:33
[2026-06-05 01:06:34,161.161 INFO    ] 2026-06-05 01:06:34
[2026-06-05 01:06:34,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:06:34,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:06:34,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:06:34,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:06:34,619.619 INFO    ] time= 05/06/2026 01:06:34
[2026-06-05 01:06:34,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:06:34,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:06:34,763.763 INFO    ] No existing commands found in stream
[2026-06-05 01:06:39,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:06:39,778.778 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 01:06:43,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:06:43,317.317 INFO    ] Checking for system updates...
[2026-06-05 01:06:43,354.354 INFO    ] 200
[2026-06-05 01:06:43,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:43,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:06:43,420.420 INFO    ] No update needed
[2026-06-05 01:06:43,423.423 INFO    ] Checking for camera pi updates...
[2026-06-05 01:06:43,463.463 INFO    ] 200
[2026-06-05 01:06:43,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:43,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:06:43,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:06:43,571.571 INFO    ] No camera update needed
[2026-06-05 01:06:43,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:06:43,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:06:43,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:06:43,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:06:45,626.626 INFO    ] ================================================
[2026-06-05 01:06:45,641.641 INFO    ] Launching Daemon at Fri Jun  5 01:06:45 IST 2026
[2026-06-05 01:06:45,652.652 INFO    ] ================================================
[2026-06-05 01:06:46,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:06:46
[2026-06-05 01:06:46,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:06:47,070.070 INFO    ] Initializing speech engine...
[2026-06-05 01:06:47,079.079 INFO    ] 2026-06-05 01:06:47
[2026-06-05 01:06:47,326.326 INFO    ] 2026-06-05 01:06:47
[2026-06-05 01:06:47,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:06:47,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:06:47,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:06:47,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:06:47,694.694 INFO    ] time= 05/06/2026 01:06:47
[2026-06-05 01:06:47,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:06:47,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:06:47,864.864 INFO    ] No existing commands found in stream
[2026-06-05 01:06:52,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:06:52,897.897 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 01:06:54,353.353 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:06:54,356.356 INFO    ] Checking for system updates...
[2026-06-05 01:06:54,391.391 INFO    ] 200
[2026-06-05 01:06:54,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:54,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:06:54,449.449 INFO    ] No update needed
[2026-06-05 01:06:54,451.451 INFO    ] Checking for camera pi updates...
[2026-06-05 01:06:54,484.484 INFO    ] 200
[2026-06-05 01:06:54,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:06:54,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:06:54,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:06:54,585.585 INFO    ] No camera update needed
[2026-06-05 01:06:54,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:06:54,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:06:54,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:06:54,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:06:56,641.641 INFO    ] ================================================
[2026-06-05 01:06:56,656.656 INFO    ] Launching Daemon at Fri Jun  5 01:06:56 IST 2026
[2026-06-05 01:06:56,667.667 INFO    ] ================================================
[2026-06-05 01:06:57,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:06:57
[2026-06-05 01:06:58,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:06:58,320.320 INFO    ] Initializing speech engine...
[2026-06-05 01:06:58,327.327 INFO    ] 2026-06-05 01:06:58
[2026-06-05 01:06:58,611.611 INFO    ] 2026-06-05 01:06:58
[2026-06-05 01:06:58,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:06:58,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:06:58,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:06:59,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:06:59,069.069 INFO    ] time= 05/06/2026 01:06:59
[2026-06-05 01:06:59,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:06:59,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:06:59,293.293 INFO    ] No existing commands found in stream
[2026-06-05 01:07:04,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:07:04,327.327 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 01:07:05,449.449 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:07:05,452.452 INFO    ] Checking for system updates...
[2026-06-05 01:07:05,492.492 INFO    ] 200
[2026-06-05 01:07:05,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:05,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:07:05,553.553 INFO    ] No update needed
[2026-06-05 01:07:05,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 01:07:05,590.590 INFO    ] 200
[2026-06-05 01:07:05,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:05,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:07:05,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:07:05,690.690 INFO    ] No camera update needed
[2026-06-05 01:07:05,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:07:05,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:07:05,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:07:05,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:07:07,749.749 INFO    ] ================================================
[2026-06-05 01:07:07,764.764 INFO    ] Launching Daemon at Fri Jun  5 01:07:07 IST 2026
[2026-06-05 01:07:07,774.774 INFO    ] ================================================
[2026-06-05 01:07:08,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:07:08
[2026-06-05 01:07:09,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:07:09,302.302 INFO    ] Initializing speech engine...
[2026-06-05 01:07:09,311.311 INFO    ] 2026-06-05 01:07:09
[2026-06-05 01:07:09,561.561 INFO    ] 2026-06-05 01:07:09
[2026-06-05 01:07:09,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:07:09,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:07:09,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:07:09,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:07:10,020.020 INFO    ] time= 05/06/2026 01:07:09
[2026-06-05 01:07:10,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:07:10,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:07:10,202.202 INFO    ] No existing commands found in stream
[2026-06-05 01:07:15,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:07:15,219.219 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 01:07:17,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:07:17,862.862 INFO    ] Checking for system updates...
[2026-06-05 01:07:17,903.903 INFO    ] 200
[2026-06-05 01:07:17,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:17,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:07:17,968.968 INFO    ] No update needed
[2026-06-05 01:07:17,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 01:07:18,016.016 INFO    ] 200
[2026-06-05 01:07:18,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:18,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:07:18,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:07:18,219.219 INFO    ] No camera update needed
[2026-06-05 01:07:18,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:07:18,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:07:18,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:07:18,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:07:20,277.277 INFO    ] ================================================
[2026-06-05 01:07:20,292.292 INFO    ] Launching Daemon at Fri Jun  5 01:07:20 IST 2026
[2026-06-05 01:07:20,303.303 INFO    ] ================================================
[2026-06-05 01:07:20,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:07:20
[2026-06-05 01:07:21,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:07:21,772.772 INFO    ] Initializing speech engine...
[2026-06-05 01:07:21,782.782 INFO    ] 2026-06-05 01:07:21
[2026-06-05 01:07:22,030.030 INFO    ] 2026-06-05 01:07:22
[2026-06-05 01:07:22,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:07:22,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:07:22,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:07:22,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:07:22,496.496 INFO    ] time= 05/06/2026 01:07:22
[2026-06-05 01:07:22,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:07:22,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:07:22,650.650 INFO    ] No existing commands found in stream
[2026-06-05 01:07:27,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:07:27,664.664 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 01:07:31,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:07:31,790.790 INFO    ] Checking for system updates...
[2026-06-05 01:07:31,831.831 INFO    ] 200
[2026-06-05 01:07:31,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:31,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:07:31,899.899 INFO    ] No update needed
[2026-06-05 01:07:31,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 01:07:31,942.942 INFO    ] 200
[2026-06-05 01:07:31,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:31,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:07:32,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:07:32,033.033 INFO    ] No camera update needed
[2026-06-05 01:07:32,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:07:32,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:07:32,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:07:32,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:07:34,092.092 INFO    ] ================================================
[2026-06-05 01:07:34,108.108 INFO    ] Launching Daemon at Fri Jun  5 01:07:34 IST 2026
[2026-06-05 01:07:34,118.118 INFO    ] ================================================
[2026-06-05 01:07:34,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:07:34
[2026-06-05 01:07:35,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:07:35,529.529 INFO    ] Initializing speech engine...
[2026-06-05 01:07:35,541.541 INFO    ] 2026-06-05 01:07:35
[2026-06-05 01:07:35,807.807 INFO    ] 2026-06-05 01:07:35
[2026-06-05 01:07:35,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:07:36,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:07:36,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:07:36,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:07:36,183.183 INFO    ] time= 05/06/2026 01:07:36
[2026-06-05 01:07:36,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:07:36,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:07:36,347.347 INFO    ] No existing commands found in stream
[2026-06-05 01:07:41,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:07:41,375.375 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 01:07:45,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:07:45,507.507 INFO    ] Checking for system updates...
[2026-06-05 01:07:45,543.543 INFO    ] 200
[2026-06-05 01:07:45,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:45,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:07:45,600.600 INFO    ] No update needed
[2026-06-05 01:07:45,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 01:07:45,637.637 INFO    ] 200
[2026-06-05 01:07:45,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:45,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:07:45,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:07:45,731.731 INFO    ] No camera update needed
[2026-06-05 01:07:45,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:07:45,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:07:45,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:07:45,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:07:47,787.787 INFO    ] ================================================
[2026-06-05 01:07:47,802.802 INFO    ] Launching Daemon at Fri Jun  5 01:07:47 IST 2026
[2026-06-05 01:07:47,813.813 INFO    ] ================================================
[2026-06-05 01:07:48,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:07:48
[2026-06-05 01:07:48,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:07:49,277.277 INFO    ] Initializing speech engine...
[2026-06-05 01:07:49,280.280 INFO    ] 2026-06-05 01:07:49
[2026-06-05 01:07:49,549.549 INFO    ] 2026-06-05 01:07:49
[2026-06-05 01:07:49,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:07:49,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:07:49,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:07:49,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:07:49,931.931 INFO    ] time= 05/06/2026 01:07:49
[2026-06-05 01:07:49,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:07:49,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:07:50,114.114 INFO    ] No existing commands found in stream
[2026-06-05 01:07:55,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:07:55,141.141 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 01:07:58,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:07:58,817.817 INFO    ] Checking for system updates...
[2026-06-05 01:07:58,854.854 INFO    ] 200
[2026-06-05 01:07:58,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:58,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:07:58,935.935 INFO    ] No update needed
[2026-06-05 01:07:58,937.937 INFO    ] Checking for camera pi updates...
[2026-06-05 01:07:58,975.975 INFO    ] 200
[2026-06-05 01:07:58,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:07:59,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:07:59,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:07:59,081.081 INFO    ] No camera update needed
[2026-06-05 01:07:59,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:07:59,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:07:59,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:07:59,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:08:01,139.139 INFO    ] ================================================
[2026-06-05 01:08:01,154.154 INFO    ] Launching Daemon at Fri Jun  5 01:08:01 IST 2026
[2026-06-05 01:08:01,165.165 INFO    ] ================================================
[2026-06-05 01:08:01,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:08:01
[2026-06-05 01:08:02,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:08:03,039.039 INFO    ] Initializing speech engine...
[2026-06-05 01:08:03,047.047 INFO    ] 2026-06-05 01:08:03
[2026-06-05 01:08:03,346.346 INFO    ] 2026-06-05 01:08:03
[2026-06-05 01:08:03,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:08:03,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:08:03,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:08:03,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:08:03,861.861 INFO    ] time= 05/06/2026 01:08:03
[2026-06-05 01:08:03,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:08:03,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:08:04,085.085 INFO    ] No existing commands found in stream
[2026-06-05 01:08:09,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:08:09,116.116 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 01:08:13,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:08:13,006.006 INFO    ] Checking for system updates...
[2026-06-05 01:08:13,043.043 INFO    ] 200
[2026-06-05 01:08:13,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:13,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:08:13,111.111 INFO    ] No update needed
[2026-06-05 01:08:13,114.114 INFO    ] Checking for camera pi updates...
[2026-06-05 01:08:13,149.149 INFO    ] 200
[2026-06-05 01:08:13,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:13,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:08:13,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:08:13,250.250 INFO    ] No camera update needed
[2026-06-05 01:08:13,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:08:13,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:08:13,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:08:13,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:08:15,310.310 INFO    ] ================================================
[2026-06-05 01:08:15,326.326 INFO    ] Launching Daemon at Fri Jun  5 01:08:15 IST 2026
[2026-06-05 01:08:15,336.336 INFO    ] ================================================
[2026-06-05 01:08:15,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:08:15
[2026-06-05 01:08:16,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:08:16,807.807 INFO    ] Initializing speech engine...
[2026-06-05 01:08:16,816.816 INFO    ] 2026-06-05 01:08:16
[2026-06-05 01:08:17,076.076 INFO    ] 2026-06-05 01:08:17
[2026-06-05 01:08:17,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:08:17,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:08:17,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:08:17,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:08:17,516.516 INFO    ] time= 05/06/2026 01:08:17
[2026-06-05 01:08:17,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:08:17,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:08:17,684.684 INFO    ] No existing commands found in stream
[2026-06-05 01:08:22,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:08:22,699.699 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 01:08:24,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:08:24,127.127 INFO    ] Checking for system updates...
[2026-06-05 01:08:24,163.163 INFO    ] 200
[2026-06-05 01:08:24,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:24,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:08:24,229.229 INFO    ] No update needed
[2026-06-05 01:08:24,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 01:08:24,266.266 INFO    ] 200
[2026-06-05 01:08:24,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:24,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:08:24,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:08:24,359.359 INFO    ] No camera update needed
[2026-06-05 01:08:24,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:08:24,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:08:24,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:08:24,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:08:26,416.416 INFO    ] ================================================
[2026-06-05 01:08:26,432.432 INFO    ] Launching Daemon at Fri Jun  5 01:08:26 IST 2026
[2026-06-05 01:08:26,442.442 INFO    ] ================================================
[2026-06-05 01:08:27,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:08:27
[2026-06-05 01:08:27,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:08:27,862.862 INFO    ] Initializing speech engine...
[2026-06-05 01:08:27,876.876 INFO    ] 2026-06-05 01:08:27
[2026-06-05 01:08:28,164.164 INFO    ] 2026-06-05 01:08:28
[2026-06-05 01:08:28,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:08:28,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:08:28,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:08:28,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:08:28,577.577 INFO    ] time= 05/06/2026 01:08:28
[2026-06-05 01:08:28,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:08:28,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:08:28,681.681 INFO    ] No existing commands found in stream
[2026-06-05 01:08:33,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:08:33,696.696 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 01:08:34,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:08:34,714.714 INFO    ] Checking for system updates...
[2026-06-05 01:08:34,755.755 INFO    ] 200
[2026-06-05 01:08:34,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:34,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:08:34,821.821 INFO    ] No update needed
[2026-06-05 01:08:34,823.823 INFO    ] Checking for camera pi updates...
[2026-06-05 01:08:34,857.857 INFO    ] 200
[2026-06-05 01:08:34,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:34,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:08:34,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:08:34,951.951 INFO    ] No camera update needed
[2026-06-05 01:08:34,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:08:34,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:08:34,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:08:34,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:08:37,006.006 INFO    ] ================================================
[2026-06-05 01:08:37,022.022 INFO    ] Launching Daemon at Fri Jun  5 01:08:37 IST 2026
[2026-06-05 01:08:37,033.033 INFO    ] ================================================
[2026-06-05 01:08:37,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:08:37
[2026-06-05 01:08:38,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:08:38,460.460 INFO    ] Initializing speech engine...
[2026-06-05 01:08:38,473.473 INFO    ] 2026-06-05 01:08:38
[2026-06-05 01:08:38,720.720 INFO    ] 2026-06-05 01:08:38
[2026-06-05 01:08:38,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:08:38,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:08:38,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:08:39,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:08:39,100.100 INFO    ] time= 05/06/2026 01:08:39
[2026-06-05 01:08:39,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:08:39,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:08:39,253.253 INFO    ] No existing commands found in stream
[2026-06-05 01:08:44,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:08:44,281.281 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 01:08:46,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:08:46,470.470 INFO    ] Checking for system updates...
[2026-06-05 01:08:46,510.510 INFO    ] 200
[2026-06-05 01:08:46,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:46,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:08:46,570.570 INFO    ] No update needed
[2026-06-05 01:08:46,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 01:08:46,610.610 INFO    ] 200
[2026-06-05 01:08:46,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:46,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:08:46,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:08:46,702.702 INFO    ] No camera update needed
[2026-06-05 01:08:46,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:08:46,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:08:46,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:08:46,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:08:48,759.759 INFO    ] ================================================
[2026-06-05 01:08:48,774.774 INFO    ] Launching Daemon at Fri Jun  5 01:08:48 IST 2026
[2026-06-05 01:08:48,784.784 INFO    ] ================================================
[2026-06-05 01:08:49,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:08:49
[2026-06-05 01:08:50,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:08:50,278.278 INFO    ] Initializing speech engine...
[2026-06-05 01:08:50,289.289 INFO    ] 2026-06-05 01:08:50
[2026-06-05 01:08:50,538.538 INFO    ] 2026-06-05 01:08:50
[2026-06-05 01:08:50,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:08:50,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:08:50,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:08:50,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:08:50,906.906 INFO    ] time= 05/06/2026 01:08:50
[2026-06-05 01:08:50,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:08:50,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:08:50,981.981 INFO    ] No existing commands found in stream
[2026-06-05 01:08:55,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:08:55,997.997 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 01:08:59,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:08:59,597.597 INFO    ] Checking for system updates...
[2026-06-05 01:08:59,633.633 INFO    ] 200
[2026-06-05 01:08:59,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:59,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:08:59,695.695 INFO    ] No update needed
[2026-06-05 01:08:59,698.698 INFO    ] Checking for camera pi updates...
[2026-06-05 01:08:59,736.736 INFO    ] 200
[2026-06-05 01:08:59,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:08:59,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:08:59,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:08:59,836.836 INFO    ] No camera update needed
[2026-06-05 01:08:59,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:08:59,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:08:59,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:08:59,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:09:01,896.896 INFO    ] ================================================
[2026-06-05 01:09:01,914.914 INFO    ] Launching Daemon at Fri Jun  5 01:09:01 IST 2026
[2026-06-05 01:09:01,929.929 INFO    ] ================================================
[2026-06-05 01:09:02,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:09:02
[2026-06-05 01:09:03,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:09:03,463.463 INFO    ] Initializing speech engine...
[2026-06-05 01:09:03,473.473 INFO    ] 2026-06-05 01:09:03
[2026-06-05 01:09:03,723.723 INFO    ] 2026-06-05 01:09:03
[2026-06-05 01:09:03,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:09:03,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:09:04,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:09:04,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:09:04,201.201 INFO    ] time= 05/06/2026 01:09:04
[2026-06-05 01:09:04,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:09:04,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:09:04,416.416 INFO    ] No existing commands found in stream
[2026-06-05 01:09:09,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:09:09,440.440 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 01:09:09,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:09:09,870.870 INFO    ] Checking for system updates...
[2026-06-05 01:09:09,914.914 INFO    ] 200
[2026-06-05 01:09:09,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:09,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:09:09,976.976 INFO    ] No update needed
[2026-06-05 01:09:09,979.979 INFO    ] Checking for camera pi updates...
[2026-06-05 01:09:10,017.017 INFO    ] 200
[2026-06-05 01:09:10,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:10,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:09:10,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:09:10,122.122 INFO    ] No camera update needed
[2026-06-05 01:09:10,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:09:10,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:09:10,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:09:10,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:09:12,181.181 INFO    ] ================================================
[2026-06-05 01:09:12,196.196 INFO    ] Launching Daemon at Fri Jun  5 01:09:12 IST 2026
[2026-06-05 01:09:12,207.207 INFO    ] ================================================
[2026-06-05 01:09:12,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:09:12
[2026-06-05 01:09:13,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:09:13,634.634 INFO    ] Initializing speech engine...
[2026-06-05 01:09:13,644.644 INFO    ] 2026-06-05 01:09:13
[2026-06-05 01:09:13,897.897 INFO    ] 2026-06-05 01:09:13
[2026-06-05 01:09:13,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:09:14,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:09:14,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:09:14,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:09:14,251.251 INFO    ] time= 05/06/2026 01:09:14
[2026-06-05 01:09:14,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:09:14,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:09:14,350.350 INFO    ] No existing commands found in stream
[2026-06-05 01:09:19,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:09:19,389.389 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 01:09:20,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:09:20,027.027 INFO    ] Checking for system updates...
[2026-06-05 01:09:20,063.063 INFO    ] 200
[2026-06-05 01:09:20,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:20,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:09:20,127.127 INFO    ] No update needed
[2026-06-05 01:09:20,129.129 INFO    ] Checking for camera pi updates...
[2026-06-05 01:09:20,163.163 INFO    ] 200
[2026-06-05 01:09:20,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:20,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:09:20,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:09:20,257.257 INFO    ] No camera update needed
[2026-06-05 01:09:20,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:09:20,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:09:20,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:09:20,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:09:22,312.312 INFO    ] ================================================
[2026-06-05 01:09:22,331.331 INFO    ] Launching Daemon at Fri Jun  5 01:09:22 IST 2026
[2026-06-05 01:09:22,342.342 INFO    ] ================================================
[2026-06-05 01:09:22,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:09:22
[2026-06-05 01:09:23,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:09:23,938.938 INFO    ] Initializing speech engine...
[2026-06-05 01:09:23,946.946 INFO    ] 2026-06-05 01:09:23
[2026-06-05 01:09:24,232.232 INFO    ] 2026-06-05 01:09:24
[2026-06-05 01:09:24,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:09:24,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:09:24,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:09:24,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:09:24,699.699 INFO    ] time= 05/06/2026 01:09:24
[2026-06-05 01:09:24,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:09:24,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:09:24,915.915 INFO    ] No existing commands found in stream
[2026-06-05 01:09:29,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:09:29,949.949 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 01:09:31,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:09:31,812.812 INFO    ] Checking for system updates...
[2026-06-05 01:09:31,852.852 INFO    ] 200
[2026-06-05 01:09:31,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:31,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:09:31,917.917 INFO    ] No update needed
[2026-06-05 01:09:31,920.920 INFO    ] Checking for camera pi updates...
[2026-06-05 01:09:31,963.963 INFO    ] 200
[2026-06-05 01:09:31,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:32,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:09:32,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:09:32,148.148 INFO    ] No camera update needed
[2026-06-05 01:09:32,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:09:32,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:09:32,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:09:32,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:09:34,209.209 INFO    ] ================================================
[2026-06-05 01:09:34,224.224 INFO    ] Launching Daemon at Fri Jun  5 01:09:34 IST 2026
[2026-06-05 01:09:34,236.236 INFO    ] ================================================
[2026-06-05 01:09:34,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:09:34
[2026-06-05 01:09:35,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:09:35,795.795 INFO    ] Initializing speech engine...
[2026-06-05 01:09:35,803.803 INFO    ] 2026-06-05 01:09:35
[2026-06-05 01:09:36,072.072 INFO    ] 2026-06-05 01:09:36
[2026-06-05 01:09:36,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:09:36,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:09:36,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:09:36,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:09:36,538.538 INFO    ] time= 05/06/2026 01:09:36
[2026-06-05 01:09:36,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:09:36,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:09:36,698.698 INFO    ] No existing commands found in stream
[2026-06-05 01:09:41,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:09:41,716.716 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 01:09:43,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:09:43,728.728 INFO    ] Checking for system updates...
[2026-06-05 01:09:43,765.765 INFO    ] 200
[2026-06-05 01:09:43,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:43,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:09:43,823.823 INFO    ] No update needed
[2026-06-05 01:09:43,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 01:09:43,860.860 INFO    ] 200
[2026-06-05 01:09:43,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:43,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:09:43,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:09:43,957.957 INFO    ] No camera update needed
[2026-06-05 01:09:43,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:09:43,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:09:43,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:09:43,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:09:46,018.018 INFO    ] ================================================
[2026-06-05 01:09:46,034.034 INFO    ] Launching Daemon at Fri Jun  5 01:09:46 IST 2026
[2026-06-05 01:09:46,045.045 INFO    ] ================================================
[2026-06-05 01:09:46,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:09:46
[2026-06-05 01:09:47,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:09:47,449.449 INFO    ] Initializing speech engine...
[2026-06-05 01:09:47,457.457 INFO    ] 2026-06-05 01:09:47
[2026-06-05 01:09:47,743.743 INFO    ] 2026-06-05 01:09:47
[2026-06-05 01:09:47,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:09:47,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:09:48,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:09:48,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:09:48,148.148 INFO    ] time= 05/06/2026 01:09:48
[2026-06-05 01:09:48,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:09:48,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:09:48,304.304 INFO    ] No existing commands found in stream
[2026-06-05 01:09:53,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:09:53,331.331 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 01:09:56,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:09:56,145.145 INFO    ] Checking for system updates...
[2026-06-05 01:09:56,184.184 INFO    ] 200
[2026-06-05 01:09:56,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:56,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:09:56,244.244 INFO    ] No update needed
[2026-06-05 01:09:56,246.246 INFO    ] Checking for camera pi updates...
[2026-06-05 01:09:56,281.281 INFO    ] 200
[2026-06-05 01:09:56,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:09:56,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:09:56,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:09:56,378.378 INFO    ] No camera update needed
[2026-06-05 01:09:56,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:09:56,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:09:56,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:09:56,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:09:58,437.437 INFO    ] ================================================
[2026-06-05 01:09:58,452.452 INFO    ] Launching Daemon at Fri Jun  5 01:09:58 IST 2026
[2026-06-05 01:09:58,463.463 INFO    ] ================================================
[2026-06-05 01:09:59,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:09:59
[2026-06-05 01:09:59,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:09:59,901.901 INFO    ] Initializing speech engine...
[2026-06-05 01:09:59,909.909 INFO    ] 2026-06-05 01:09:59
[2026-06-05 01:10:00,161.161 INFO    ] 2026-06-05 01:10:00
[2026-06-05 01:10:00,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:10:00,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:10:00,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:10:00,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:10:00,612.612 INFO    ] time= 05/06/2026 01:10:00
[2026-06-05 01:10:00,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:10:00,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:10:00,778.778 INFO    ] No existing commands found in stream
[2026-06-05 01:10:05,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:10:05,793.793 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 01:10:08,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:10:08,578.578 INFO    ] Checking for system updates...
[2026-06-05 01:10:08,613.613 INFO    ] 200
[2026-06-05 01:10:08,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:10:08,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:10:08,670.670 INFO    ] No update needed
[2026-06-05 01:10:08,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 01:10:08,708.708 INFO    ] 200
[2026-06-05 01:10:08,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:10:08,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:10:08,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:10:08,801.801 INFO    ] No camera update needed
[2026-06-05 01:10:08,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:10:08,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:10:08,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:10:08,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:10:10,862.862 INFO    ] ================================================
[2026-06-05 01:10:10,877.877 INFO    ] Launching Daemon at Fri Jun  5 01:10:10 IST 2026
[2026-06-05 01:10:10,888.888 INFO    ] ================================================
[2026-06-05 01:10:11,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:10:11
[2026-06-05 01:10:12,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:10:12,303.303 INFO    ] Initializing speech engine...
[2026-06-05 01:10:12,310.310 INFO    ] 2026-06-05 01:10:12
[2026-06-05 01:10:12,600.600 INFO    ] 2026-06-05 01:10:12
[2026-06-05 01:10:12,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:10:12,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:10:12,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:10:12,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:10:12,972.972 INFO    ] time= 05/06/2026 01:10:12
[2026-06-05 01:10:12,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:10:13,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:10:13,094.094 INFO    ] No existing commands found in stream
[2026-06-05 01:10:18,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:10:18,109.109 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 01:10:20,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:10:20,498.498 INFO    ] Checking for system updates...
[2026-06-05 01:10:20,537.537 INFO    ] 200
[2026-06-05 01:10:20,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:10:20,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:10:20,595.595 INFO    ] No update needed
[2026-06-05 01:10:20,597.597 INFO    ] Checking for camera pi updates...
[2026-06-05 01:10:20,632.632 INFO    ] 200
[2026-06-05 01:10:20,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:10:20,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:10:20,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:10:20,731.731 INFO    ] No camera update needed
[2026-06-05 01:10:20,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:10:20,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:10:20,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:10:20,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:10:22,786.786 INFO    ] ================================================
[2026-06-05 01:10:22,802.802 INFO    ] Launching Daemon at Fri Jun  5 01:10:22 IST 2026
[2026-06-05 01:10:22,813.813 INFO    ] ================================================
[2026-06-05 01:10:23,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:10:23
[2026-06-05 01:10:24,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:10:24,388.388 INFO    ] Initializing speech engine...
[2026-06-05 01:10:24,398.398 INFO    ] 2026-06-05 01:10:24
[2026-06-05 01:10:24,673.673 INFO    ] 2026-06-05 01:10:24
[2026-06-05 01:10:24,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:10:24,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:10:24,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:10:25,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:10:25,156.156 INFO    ] time= 05/06/2026 01:10:25
[2026-06-05 01:10:25,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:10:25,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:10:25,351.351 INFO    ] No existing commands found in stream
[2026-06-05 01:10:30,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:10:30,377.377 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 01:10:34,391.391 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:10:34,394.394 INFO    ] Checking for system updates...
[2026-06-05 01:10:34,431.431 INFO    ] 200
[2026-06-05 01:10:34,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:10:34,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:10:34,492.492 INFO    ] No update needed
[2026-06-05 01:10:34,495.495 INFO    ] Checking for camera pi updates...
[2026-06-05 01:10:34,534.534 INFO    ] 200
[2026-06-05 01:10:34,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:10:34,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:10:34,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:10:34,641.641 INFO    ] No camera update needed
[2026-06-05 01:10:34,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:10:34,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:10:34,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:10:34,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:10:36,704.704 INFO    ] ================================================
[2026-06-05 01:10:36,719.719 INFO    ] Launching Daemon at Fri Jun  5 01:10:36 IST 2026
[2026-06-05 01:10:36,730.730 INFO    ] ================================================
[2026-06-05 01:10:37,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:10:37
[2026-06-05 01:10:37,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:10:38,143.143 INFO    ] Initializing speech engine...
[2026-06-05 01:10:38,149.149 INFO    ] 2026-06-05 01:10:38
[2026-06-05 01:10:38,436.436 INFO    ] 2026-06-05 01:10:38
[2026-06-05 01:10:38,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:10:38,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:10:38,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:10:38,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:10:38,849.849 INFO    ] time= 05/06/2026 01:10:38
[2026-06-05 01:10:38,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:10:38,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:10:38,933.933 INFO    ] No existing commands found in stream
[2026-06-05 01:10:43,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:10:43,948.948 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 01:10:47,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:10:47,862.862 INFO    ] Checking for system updates...
[2026-06-05 01:10:47,900.900 INFO    ] 200
[2026-06-05 01:10:47,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:10:47,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:10:47,958.958 INFO    ] No update needed
[2026-06-05 01:10:47,961.961 INFO    ] Checking for camera pi updates...
[2026-06-05 01:10:47,995.995 INFO    ] 200
[2026-06-05 01:10:47,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:10:48,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:10:48,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:10:48,092.092 INFO    ] No camera update needed
[2026-06-05 01:10:48,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:10:48,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:10:48,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:10:48,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:10:50,149.149 INFO    ] ================================================
[2026-06-05 01:10:50,165.165 INFO    ] Launching Daemon at Fri Jun  5 01:10:50 IST 2026
[2026-06-05 01:10:50,175.175 INFO    ] ================================================
[2026-06-05 01:10:50,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:10:50
[2026-06-05 01:10:51,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:10:51,592.592 INFO    ] Initializing speech engine...
[2026-06-05 01:10:51,611.611 INFO    ] 2026-06-05 01:10:51
[2026-06-05 01:10:51,865.865 INFO    ] 2026-06-05 01:10:51
[2026-06-05 01:10:51,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:10:52,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:10:52,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:10:52,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:10:52,326.326 INFO    ] time= 05/06/2026 01:10:52
[2026-06-05 01:10:52,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:10:52,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:10:52,476.476 INFO    ] No existing commands found in stream
[2026-06-05 01:10:57,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:10:57,504.504 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 01:10:59,873.873 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:10:59,876.876 INFO    ] Checking for system updates...
[2026-06-05 01:10:59,913.913 INFO    ] 200
[2026-06-05 01:10:59,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:10:59,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:10:59,978.978 INFO    ] No update needed
[2026-06-05 01:10:59,981.981 INFO    ] Checking for camera pi updates...
[2026-06-05 01:11:00,016.016 INFO    ] 200
[2026-06-05 01:11:00,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:11:00,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:11:00,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:11:00,110.110 INFO    ] No camera update needed
[2026-06-05 01:11:00,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:11:00,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:11:00,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:11:00,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:11:02,173.173 INFO    ] ================================================
[2026-06-05 01:11:02,193.193 INFO    ] Launching Daemon at Fri Jun  5 01:11:02 IST 2026
[2026-06-05 01:11:02,207.207 INFO    ] ================================================
[2026-06-05 01:11:02,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:11:02
[2026-06-05 01:11:03,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:11:03,832.832 INFO    ] Initializing speech engine...
[2026-06-05 01:11:03,841.841 INFO    ] 2026-06-05 01:11:03
[2026-06-05 01:11:04,088.088 INFO    ] 2026-06-05 01:11:04
[2026-06-05 01:11:04,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:11:04,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:11:04,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:11:04,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:11:04,457.457 INFO    ] time= 05/06/2026 01:11:04
[2026-06-05 01:11:04,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:11:04,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:11:04,620.620 INFO    ] No existing commands found in stream
[2026-06-05 01:11:09,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:11:09,654.654 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 01:11:13,721.721 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:11:13,723.723 INFO    ] Checking for system updates...
[2026-06-05 01:11:13,760.760 INFO    ] 200
[2026-06-05 01:11:13,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:11:13,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:11:13,824.824 INFO    ] No update needed
[2026-06-05 01:11:13,827.827 INFO    ] Checking for camera pi updates...
[2026-06-05 01:11:13,861.861 INFO    ] 200
[2026-06-05 01:11:13,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:11:13,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:11:13,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:11:13,964.964 INFO    ] No camera update needed
[2026-06-05 01:11:13,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:11:13,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:11:13,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:11:13,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:11:16,020.020 INFO    ] ================================================
[2026-06-05 01:11:16,036.036 INFO    ] Launching Daemon at Fri Jun  5 01:11:16 IST 2026
[2026-06-05 01:11:16,047.047 INFO    ] ================================================
[2026-06-05 01:11:16,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:11:16
[2026-06-05 01:11:17,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:11:17,531.531 INFO    ] Initializing speech engine...
[2026-06-05 01:11:17,545.545 INFO    ] 2026-06-05 01:11:17
[2026-06-05 01:11:17,808.808 INFO    ] 2026-06-05 01:11:17
[2026-06-05 01:11:17,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:11:18,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:11:18,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:11:18,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:11:18,286.286 INFO    ] time= 05/06/2026 01:11:18
[2026-06-05 01:11:18,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:11:18,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:11:18,506.506 INFO    ] No existing commands found in stream
[2026-06-05 01:11:23,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:11:23,534.534 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 01:11:26,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:11:26,490.490 INFO    ] Checking for system updates...
[2026-06-05 01:11:26,527.527 INFO    ] 200
[2026-06-05 01:11:26,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:11:26,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:11:26,585.585 INFO    ] No update needed
[2026-06-05 01:11:26,588.588 INFO    ] Checking for camera pi updates...
[2026-06-05 01:11:26,623.623 INFO    ] 200
[2026-06-05 01:11:26,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:11:26,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:11:26,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:11:26,721.721 INFO    ] No camera update needed
[2026-06-05 01:11:26,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:11:26,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:11:26,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:11:26,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:11:28,778.778 INFO    ] ================================================
[2026-06-05 01:11:28,794.794 INFO    ] Launching Daemon at Fri Jun  5 01:11:28 IST 2026
[2026-06-05 01:11:28,804.804 INFO    ] ================================================
[2026-06-05 01:11:29,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:11:29
[2026-06-05 01:11:29,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:11:30,232.232 INFO    ] Initializing speech engine...
[2026-06-05 01:11:30,242.242 INFO    ] 2026-06-05 01:11:30
[2026-06-05 01:11:30,486.486 INFO    ] 2026-06-05 01:11:30
[2026-06-05 01:11:30,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:11:30,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:11:30,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:11:30,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:11:30,956.956 INFO    ] time= 05/06/2026 01:11:30
[2026-06-05 01:11:31,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:11:31,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:11:31,149.149 INFO    ] No existing commands found in stream
[2026-06-05 01:11:36,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:11:36,179.179 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 01:11:37,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:11:37,183.183 INFO    ] Checking for system updates...
[2026-06-05 01:11:37,219.219 INFO    ] 200
[2026-06-05 01:11:37,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:11:37,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:11:37,277.277 INFO    ] No update needed
[2026-06-05 01:11:37,280.280 INFO    ] Checking for camera pi updates...
[2026-06-05 01:11:37,314.314 INFO    ] 200
[2026-06-05 01:11:37,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:11:37,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:11:37,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:11:37,506.506 INFO    ] No camera update needed
[2026-06-05 01:11:37,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:11:37,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:11:37,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:11:37,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:11:39,562.562 INFO    ] ================================================
[2026-06-05 01:11:39,578.578 INFO    ] Launching Daemon at Fri Jun  5 01:11:39 IST 2026
[2026-06-05 01:11:39,589.589 INFO    ] ================================================
[2026-06-05 01:11:40,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:11:40
[2026-06-05 01:11:40,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:11:41,011.011 INFO    ] Initializing speech engine...
[2026-06-05 01:11:41,020.020 INFO    ] 2026-06-05 01:11:41
[2026-06-05 01:11:41,282.282 INFO    ] 2026-06-05 01:11:41
[2026-06-05 01:11:41,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:11:41,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:11:41,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:11:41,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:11:41,740.740 INFO    ] time= 05/06/2026 01:11:41
[2026-06-05 01:11:41,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:11:41,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:11:41,887.887 INFO    ] No existing commands found in stream
[2026-06-05 01:11:46,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:11:46,902.902 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 01:11:50,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:11:50,240.240 INFO    ] Checking for system updates...
[2026-06-05 01:11:50,277.277 INFO    ] 200
[2026-06-05 01:11:50,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:11:50,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:11:50,335.335 INFO    ] No update needed
[2026-06-05 01:11:50,337.337 INFO    ] Checking for camera pi updates...
[2026-06-05 01:11:50,373.373 INFO    ] 200
[2026-06-05 01:11:50,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:11:50,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:11:50,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:11:50,474.474 INFO    ] No camera update needed
[2026-06-05 01:11:50,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:11:50,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:11:50,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:11:50,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:11:52,529.529 INFO    ] ================================================
[2026-06-05 01:11:52,545.545 INFO    ] Launching Daemon at Fri Jun  5 01:11:52 IST 2026
[2026-06-05 01:11:52,556.556 INFO    ] ================================================
[2026-06-05 01:11:53,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:11:53
[2026-06-05 01:11:53,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:11:54,106.106 INFO    ] Initializing speech engine...
[2026-06-05 01:11:54,120.120 INFO    ] 2026-06-05 01:11:54
[2026-06-05 01:11:54,386.386 INFO    ] 2026-06-05 01:11:54
[2026-06-05 01:11:54,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:11:54,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:11:54,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:11:54,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:11:54,875.875 INFO    ] time= 05/06/2026 01:11:54
[2026-06-05 01:11:54,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:11:54,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:11:54,990.990 INFO    ] No existing commands found in stream
[2026-06-05 01:12:00,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:12:00,003.003 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 01:12:01,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:12:01,640.640 INFO    ] Checking for system updates...
[2026-06-05 01:12:01,703.703 INFO    ] 200
[2026-06-05 01:12:01,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:01,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:12:01,823.823 INFO    ] No update needed
[2026-06-05 01:12:01,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 01:12:01,870.870 INFO    ] 200
[2026-06-05 01:12:01,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:01,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:12:02,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:12:02,016.016 INFO    ] No camera update needed
[2026-06-05 01:12:02,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:12:02,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:12:02,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:12:02,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:12:04,077.077 INFO    ] ================================================
[2026-06-05 01:12:04,092.092 INFO    ] Launching Daemon at Fri Jun  5 01:12:04 IST 2026
[2026-06-05 01:12:04,104.104 INFO    ] ================================================
[2026-06-05 01:12:04,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:12:04
[2026-06-05 01:12:05,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:12:05,518.518 INFO    ] Initializing speech engine...
[2026-06-05 01:12:05,534.534 INFO    ] 2026-06-05 01:12:05
[2026-06-05 01:12:05,811.811 INFO    ] 2026-06-05 01:12:05
[2026-06-05 01:12:05,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:12:06,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:12:06,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:12:06,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:12:06,244.244 INFO    ] time= 05/06/2026 01:12:06
[2026-06-05 01:12:06,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:12:06,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:12:06,428.428 INFO    ] No existing commands found in stream
[2026-06-05 01:12:11,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:12:11,454.454 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 01:12:14,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:12:14,254.254 INFO    ] Checking for system updates...
[2026-06-05 01:12:14,291.291 INFO    ] 200
[2026-06-05 01:12:14,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:14,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:12:14,356.356 INFO    ] No update needed
[2026-06-05 01:12:14,358.358 INFO    ] Checking for camera pi updates...
[2026-06-05 01:12:14,392.392 INFO    ] 200
[2026-06-05 01:12:14,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:14,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:12:14,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:12:14,483.483 INFO    ] No camera update needed
[2026-06-05 01:12:14,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:12:14,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:12:14,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:12:14,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:12:16,538.538 INFO    ] ================================================
[2026-06-05 01:12:16,554.554 INFO    ] Launching Daemon at Fri Jun  5 01:12:16 IST 2026
[2026-06-05 01:12:16,565.565 INFO    ] ================================================
[2026-06-05 01:12:17,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:12:17
[2026-06-05 01:12:17,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:12:17,987.987 INFO    ] Initializing speech engine...
[2026-06-05 01:12:17,993.993 INFO    ] 2026-06-05 01:12:17
[2026-06-05 01:12:18,238.238 INFO    ] 2026-06-05 01:12:18
[2026-06-05 01:12:18,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:12:18,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:12:18,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:12:18,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:12:18,743.743 INFO    ] time= 05/06/2026 01:12:18
[2026-06-05 01:12:18,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:12:18,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:12:18,921.921 INFO    ] No existing commands found in stream
[2026-06-05 01:12:23,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:12:23,956.956 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 01:12:27,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:12:27,861.861 INFO    ] Checking for system updates...
[2026-06-05 01:12:27,899.899 INFO    ] 200
[2026-06-05 01:12:27,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:27,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:12:27,972.972 INFO    ] No update needed
[2026-06-05 01:12:27,974.974 INFO    ] Checking for camera pi updates...
[2026-06-05 01:12:28,010.010 INFO    ] 200
[2026-06-05 01:12:28,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:28,053.053 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:12:28,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:12:28,107.107 INFO    ] No camera update needed
[2026-06-05 01:12:28,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:12:28,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:12:28,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:12:28,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:12:30,166.166 INFO    ] ================================================
[2026-06-05 01:12:30,181.181 INFO    ] Launching Daemon at Fri Jun  5 01:12:30 IST 2026
[2026-06-05 01:12:30,192.192 INFO    ] ================================================
[2026-06-05 01:12:30,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:12:30
[2026-06-05 01:12:31,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:12:31,788.788 INFO    ] Initializing speech engine...
[2026-06-05 01:12:31,796.796 INFO    ] 2026-06-05 01:12:31
[2026-06-05 01:12:32,064.064 INFO    ] 2026-06-05 01:12:32
[2026-06-05 01:12:32,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:12:32,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:12:32,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:12:32,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:12:32,563.563 INFO    ] time= 05/06/2026 01:12:32
[2026-06-05 01:12:32,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:12:32,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:12:32,710.710 INFO    ] No existing commands found in stream
[2026-06-05 01:12:37,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:12:37,726.726 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 01:12:39,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:12:39,527.527 INFO    ] Checking for system updates...
[2026-06-05 01:12:39,563.563 INFO    ] 200
[2026-06-05 01:12:39,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:39,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:12:39,626.626 INFO    ] No update needed
[2026-06-05 01:12:39,629.629 INFO    ] Checking for camera pi updates...
[2026-06-05 01:12:39,663.663 INFO    ] 200
[2026-06-05 01:12:39,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:39,710.710 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:12:39,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:12:39,767.767 INFO    ] No camera update needed
[2026-06-05 01:12:39,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:12:39,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:12:39,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:12:39,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:12:41,828.828 INFO    ] ================================================
[2026-06-05 01:12:41,843.843 INFO    ] Launching Daemon at Fri Jun  5 01:12:41 IST 2026
[2026-06-05 01:12:41,853.853 INFO    ] ================================================
[2026-06-05 01:12:42,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:12:42
[2026-06-05 01:12:43,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:12:43,271.271 INFO    ] Initializing speech engine...
[2026-06-05 01:12:43,286.286 INFO    ] 2026-06-05 01:12:43
[2026-06-05 01:12:43,561.561 INFO    ] 2026-06-05 01:12:43
[2026-06-05 01:12:43,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:12:43,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:12:43,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:12:43,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:12:43,963.963 INFO    ] time= 05/06/2026 01:12:43
[2026-06-05 01:12:43,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:12:43,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:12:44,120.120 INFO    ] No existing commands found in stream
[2026-06-05 01:12:49,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:12:49,153.153 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 01:12:50,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:12:50,158.158 INFO    ] Checking for system updates...
[2026-06-05 01:12:50,196.196 INFO    ] 200
[2026-06-05 01:12:50,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:50,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:12:50,257.257 INFO    ] No update needed
[2026-06-05 01:12:50,259.259 INFO    ] Checking for camera pi updates...
[2026-06-05 01:12:50,294.294 INFO    ] 200
[2026-06-05 01:12:50,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:12:50,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:12:50,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:12:50,394.394 INFO    ] No camera update needed
[2026-06-05 01:12:50,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:12:50,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:12:50,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:12:50,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:12:52,456.456 INFO    ] ================================================
[2026-06-05 01:12:52,471.471 INFO    ] Launching Daemon at Fri Jun  5 01:12:52 IST 2026
[2026-06-05 01:12:52,482.482 INFO    ] ================================================
[2026-06-05 01:12:53,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:12:53
[2026-06-05 01:12:53,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:12:54,033.033 INFO    ] Initializing speech engine...
[2026-06-05 01:12:54,039.039 INFO    ] 2026-06-05 01:12:54
[2026-06-05 01:12:54,321.321 INFO    ] 2026-06-05 01:12:54
[2026-06-05 01:12:54,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:12:54,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:12:54,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:12:54,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:12:54,781.781 INFO    ] time= 05/06/2026 01:12:54
[2026-06-05 01:12:54,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:12:54,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:12:54,920.920 INFO    ] No existing commands found in stream
[2026-06-05 01:12:59,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:12:59,937.937 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 01:13:01,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:13:01,118.118 INFO    ] Checking for system updates...
[2026-06-05 01:13:01,154.154 INFO    ] 200
[2026-06-05 01:13:01,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:01,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:13:01,214.214 INFO    ] No update needed
[2026-06-05 01:13:01,216.216 INFO    ] Checking for camera pi updates...
[2026-06-05 01:13:01,265.265 INFO    ] 200
[2026-06-05 01:13:01,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:01,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:13:01,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:13:01,490.490 INFO    ] No camera update needed
[2026-06-05 01:13:01,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:13:01,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:13:01,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:13:01,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:13:03,565.565 INFO    ] ================================================
[2026-06-05 01:13:03,580.580 INFO    ] Launching Daemon at Fri Jun  5 01:13:03 IST 2026
[2026-06-05 01:13:03,591.591 INFO    ] ================================================
[2026-06-05 01:13:04,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:13:04
[2026-06-05 01:13:04,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:13:05,191.191 INFO    ] Initializing speech engine...
[2026-06-05 01:13:05,202.202 INFO    ] 2026-06-05 01:13:05
[2026-06-05 01:13:05,481.481 INFO    ] 2026-06-05 01:13:05
[2026-06-05 01:13:05,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:13:05,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:13:05,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:13:05,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:13:05,952.952 INFO    ] time= 05/06/2026 01:13:05
[2026-06-05 01:13:06,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:13:06,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:13:06,124.124 INFO    ] No existing commands found in stream
[2026-06-05 01:13:11,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:13:11,158.158 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 01:13:13,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:13:13,413.413 INFO    ] Checking for system updates...
[2026-06-05 01:13:13,449.449 INFO    ] 200
[2026-06-05 01:13:13,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:13,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:13:13,508.508 INFO    ] No update needed
[2026-06-05 01:13:13,511.511 INFO    ] Checking for camera pi updates...
[2026-06-05 01:13:13,545.545 INFO    ] 200
[2026-06-05 01:13:13,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:13,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:13:13,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:13:13,638.638 INFO    ] No camera update needed
[2026-06-05 01:13:13,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:13:13,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:13:13,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:13:13,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:13:15,697.697 INFO    ] ================================================
[2026-06-05 01:13:15,713.713 INFO    ] Launching Daemon at Fri Jun  5 01:13:15 IST 2026
[2026-06-05 01:13:15,723.723 INFO    ] ================================================
[2026-06-05 01:13:16,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:13:16
[2026-06-05 01:13:16,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:13:17,131.131 INFO    ] Initializing speech engine...
[2026-06-05 01:13:17,140.140 INFO    ] 2026-06-05 01:13:17
[2026-06-05 01:13:17,431.431 INFO    ] 2026-06-05 01:13:17
[2026-06-05 01:13:17,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:13:17,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:13:17,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:13:17,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:13:17,787.787 INFO    ] time= 05/06/2026 01:13:17
[2026-06-05 01:13:17,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:13:17,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:13:17,902.902 INFO    ] No existing commands found in stream
[2026-06-05 01:13:22,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:13:22,918.918 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 01:13:26,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:13:26,798.798 INFO    ] Checking for system updates...
[2026-06-05 01:13:26,834.834 INFO    ] 200
[2026-06-05 01:13:26,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:26,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:13:26,893.893 INFO    ] No update needed
[2026-06-05 01:13:26,895.895 INFO    ] Checking for camera pi updates...
[2026-06-05 01:13:26,929.929 INFO    ] 200
[2026-06-05 01:13:26,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:26,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:13:27,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:13:27,020.020 INFO    ] No camera update needed
[2026-06-05 01:13:27,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:13:27,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:13:27,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:13:27,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:13:29,075.075 INFO    ] ================================================
[2026-06-05 01:13:29,090.090 INFO    ] Launching Daemon at Fri Jun  5 01:13:29 IST 2026
[2026-06-05 01:13:29,100.100 INFO    ] ================================================
[2026-06-05 01:13:29,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:13:29
[2026-06-05 01:13:30,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:13:30,530.530 INFO    ] Initializing speech engine...
[2026-06-05 01:13:30,549.549 INFO    ] 2026-06-05 01:13:30
[2026-06-05 01:13:30,797.797 INFO    ] 2026-06-05 01:13:30
[2026-06-05 01:13:30,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:13:31,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:13:31,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:13:31,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:13:31,269.269 INFO    ] time= 05/06/2026 01:13:31
[2026-06-05 01:13:31,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:13:31,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:13:31,447.447 INFO    ] No existing commands found in stream
[2026-06-05 01:13:36,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:13:36,486.486 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 01:13:39,112.112 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:13:39,115.115 INFO    ] Checking for system updates...
[2026-06-05 01:13:39,152.152 INFO    ] 200
[2026-06-05 01:13:39,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:39,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:13:39,210.210 INFO    ] No update needed
[2026-06-05 01:13:39,213.213 INFO    ] Checking for camera pi updates...
[2026-06-05 01:13:39,250.250 INFO    ] 200
[2026-06-05 01:13:39,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:39,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:13:39,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:13:39,441.441 INFO    ] No camera update needed
[2026-06-05 01:13:39,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:13:39,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:13:39,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:13:39,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:13:41,496.496 INFO    ] ================================================
[2026-06-05 01:13:41,511.511 INFO    ] Launching Daemon at Fri Jun  5 01:13:41 IST 2026
[2026-06-05 01:13:41,521.521 INFO    ] ================================================
[2026-06-05 01:13:42,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:13:42
[2026-06-05 01:13:42,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:13:42,924.924 INFO    ] Initializing speech engine...
[2026-06-05 01:13:42,933.933 INFO    ] 2026-06-05 01:13:42
[2026-06-05 01:13:43,222.222 INFO    ] 2026-06-05 01:13:43
[2026-06-05 01:13:43,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:13:43,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:13:43,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:13:43,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:13:43,596.596 INFO    ] time= 05/06/2026 01:13:43
[2026-06-05 01:13:43,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:13:43,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:13:43,719.719 INFO    ] No existing commands found in stream
[2026-06-05 01:13:48,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:13:48,733.733 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 01:13:50,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:13:50,373.373 INFO    ] Checking for system updates...
[2026-06-05 01:13:50,408.408 INFO    ] 200
[2026-06-05 01:13:50,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:50,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:13:50,482.482 INFO    ] No update needed
[2026-06-05 01:13:50,485.485 INFO    ] Checking for camera pi updates...
[2026-06-05 01:13:50,519.519 INFO    ] 200
[2026-06-05 01:13:50,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:13:50,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:13:50,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:13:50,612.612 INFO    ] No camera update needed
[2026-06-05 01:13:50,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:13:50,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:13:50,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:13:50,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:13:52,667.667 INFO    ] ================================================
[2026-06-05 01:13:52,682.682 INFO    ] Launching Daemon at Fri Jun  5 01:13:52 IST 2026
[2026-06-05 01:13:52,692.692 INFO    ] ================================================
[2026-06-05 01:13:53,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:13:53
[2026-06-05 01:13:53,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:13:54,125.125 INFO    ] Initializing speech engine...
[2026-06-05 01:13:54,145.145 INFO    ] 2026-06-05 01:13:54
[2026-06-05 01:13:54,411.411 INFO    ] 2026-06-05 01:13:54
[2026-06-05 01:13:54,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:13:54,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:13:54,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:13:54,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:13:54,826.826 INFO    ] time= 05/06/2026 01:13:54
[2026-06-05 01:13:54,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:13:54,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:13:54,978.978 INFO    ] No existing commands found in stream
[2026-06-05 01:13:59,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:14:00,000.000 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 01:14:03,966.966 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:14:03,969.969 INFO    ] Checking for system updates...
[2026-06-05 01:14:04,005.005 INFO    ] 200
[2026-06-05 01:14:04,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:04,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:04,062.062 INFO    ] No update needed
[2026-06-05 01:14:04,065.065 INFO    ] Checking for camera pi updates...
[2026-06-05 01:14:04,099.099 INFO    ] 200
[2026-06-05 01:14:04,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:04,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:14:04,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:04,178.178 INFO    ] No camera update needed
[2026-06-05 01:14:04,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:14:04,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:14:04,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:14:04,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:14:06,236.236 INFO    ] ================================================
[2026-06-05 01:14:06,251.251 INFO    ] Launching Daemon at Fri Jun  5 01:14:06 IST 2026
[2026-06-05 01:14:06,262.262 INFO    ] ================================================
[2026-06-05 01:14:06,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:14:06
[2026-06-05 01:14:07,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:14:07,683.683 INFO    ] Initializing speech engine...
[2026-06-05 01:14:07,693.693 INFO    ] 2026-06-05 01:14:07
[2026-06-05 01:14:07,938.938 INFO    ] 2026-06-05 01:14:07
[2026-06-05 01:14:07,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:14:08,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:14:08,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:14:08,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:14:08,305.305 INFO    ] time= 05/06/2026 01:14:08
[2026-06-05 01:14:08,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:14:08,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:14:08,479.479 INFO    ] No existing commands found in stream
[2026-06-05 01:14:13,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:14:13,512.512 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 01:14:15,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:14:15,300.300 INFO    ] Checking for system updates...
[2026-06-05 01:14:15,337.337 INFO    ] 200
[2026-06-05 01:14:15,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:15,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:15,394.394 INFO    ] No update needed
[2026-06-05 01:14:15,397.397 INFO    ] Checking for camera pi updates...
[2026-06-05 01:14:15,436.436 INFO    ] 200
[2026-06-05 01:14:15,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:15,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:14:15,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:15,531.531 INFO    ] No camera update needed
[2026-06-05 01:14:15,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:14:15,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:14:15,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:14:15,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:14:17,587.587 INFO    ] ================================================
[2026-06-05 01:14:17,602.602 INFO    ] Launching Daemon at Fri Jun  5 01:14:17 IST 2026
[2026-06-05 01:14:17,613.613 INFO    ] ================================================
[2026-06-05 01:14:18,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:14:18
[2026-06-05 01:14:18,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:14:19,039.039 INFO    ] Initializing speech engine...
[2026-06-05 01:14:19,044.044 INFO    ] 2026-06-05 01:14:19
[2026-06-05 01:14:19,295.295 INFO    ] 2026-06-05 01:14:19
[2026-06-05 01:14:19,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:14:19,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:14:19,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:14:19,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:14:19,755.755 INFO    ] time= 05/06/2026 01:14:19
[2026-06-05 01:14:19,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:14:19,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:14:19,932.932 INFO    ] No existing commands found in stream
[2026-06-05 01:14:24,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:14:24,972.972 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 01:14:26,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:14:26,839.839 INFO    ] Checking for system updates...
[2026-06-05 01:14:26,879.879 INFO    ] 200
[2026-06-05 01:14:26,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:26,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:26,936.936 INFO    ] No update needed
[2026-06-05 01:14:26,939.939 INFO    ] Checking for camera pi updates...
[2026-06-05 01:14:26,973.973 INFO    ] 200
[2026-06-05 01:14:26,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:27,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:14:27,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:27,077.077 INFO    ] No camera update needed
[2026-06-05 01:14:27,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:14:27,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:14:27,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:14:27,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:14:29,138.138 INFO    ] ================================================
[2026-06-05 01:14:29,154.154 INFO    ] Launching Daemon at Fri Jun  5 01:14:29 IST 2026
[2026-06-05 01:14:29,165.165 INFO    ] ================================================
[2026-06-05 01:14:29,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:14:29
[2026-06-05 01:14:30,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:14:30,791.791 INFO    ] Initializing speech engine...
[2026-06-05 01:14:30,799.799 INFO    ] 2026-06-05 01:14:30
[2026-06-05 01:14:31,075.075 INFO    ] 2026-06-05 01:14:31
[2026-06-05 01:14:31,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:14:31,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:14:31,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:14:31,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:14:31,555.555 INFO    ] time= 05/06/2026 01:14:31
[2026-06-05 01:14:31,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:14:31,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:14:31,713.713 INFO    ] No existing commands found in stream
[2026-06-05 01:14:36,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:14:36,742.742 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 01:14:38,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:14:38,219.219 INFO    ] Checking for system updates...
[2026-06-05 01:14:38,256.256 INFO    ] 200
[2026-06-05 01:14:38,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:38,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:38,323.323 INFO    ] No update needed
[2026-06-05 01:14:38,326.326 INFO    ] Checking for camera pi updates...
[2026-06-05 01:14:38,363.363 INFO    ] 200
[2026-06-05 01:14:38,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:38,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:14:38,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:38,468.468 INFO    ] No camera update needed
[2026-06-05 01:14:38,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:14:38,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:14:38,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:14:38,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:14:40,526.526 INFO    ] ================================================
[2026-06-05 01:14:40,541.541 INFO    ] Launching Daemon at Fri Jun  5 01:14:40 IST 2026
[2026-06-05 01:14:40,552.552 INFO    ] ================================================
[2026-06-05 01:14:41,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:14:41
[2026-06-05 01:14:41,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:14:41,979.979 INFO    ] Initializing speech engine...
[2026-06-05 01:14:41,985.985 INFO    ] 2026-06-05 01:14:41
[2026-06-05 01:14:42,230.230 INFO    ] 2026-06-05 01:14:42
[2026-06-05 01:14:42,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:14:42,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:14:42,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:14:42,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:14:42,704.704 INFO    ] time= 05/06/2026 01:14:42
[2026-06-05 01:14:42,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:14:42,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:14:42,842.842 INFO    ] No existing commands found in stream
[2026-06-05 01:14:47,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:14:47,857.857 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 01:14:51,532.532 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:14:51,535.535 INFO    ] Checking for system updates...
[2026-06-05 01:14:51,571.571 INFO    ] 200
[2026-06-05 01:14:51,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:51,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:51,630.630 INFO    ] No update needed
[2026-06-05 01:14:51,632.632 INFO    ] Checking for camera pi updates...
[2026-06-05 01:14:51,665.665 INFO    ] 200
[2026-06-05 01:14:51,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:14:51,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:14:51,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:14:51,764.764 INFO    ] No camera update needed
[2026-06-05 01:14:51,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:14:51,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:14:51,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:14:51,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:14:53,820.820 INFO    ] ================================================
[2026-06-05 01:14:53,835.835 INFO    ] Launching Daemon at Fri Jun  5 01:14:53 IST 2026
[2026-06-05 01:14:53,846.846 INFO    ] ================================================
[2026-06-05 01:14:54,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:14:54
[2026-06-05 01:14:55,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:14:55,452.452 INFO    ] Initializing speech engine...
[2026-06-05 01:14:55,466.466 INFO    ] 2026-06-05 01:14:55
[2026-06-05 01:14:55,773.773 INFO    ] 2026-06-05 01:14:55
[2026-06-05 01:14:55,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:14:56,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:14:56,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:14:56,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:14:56,276.276 INFO    ] time= 05/06/2026 01:14:56
[2026-06-05 01:14:56,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:14:56,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:14:56,420.420 INFO    ] No existing commands found in stream
[2026-06-05 01:15:01,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:15:01,462.462 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 01:15:03,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:15:03,256.256 INFO    ] Checking for system updates...
[2026-06-05 01:15:03,294.294 INFO    ] 200
[2026-06-05 01:15:03,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:03,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:15:03,353.353 INFO    ] No update needed
[2026-06-05 01:15:03,356.356 INFO    ] Checking for camera pi updates...
[2026-06-05 01:15:03,391.391 INFO    ] 200
[2026-06-05 01:15:03,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:03,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:15:03,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:15:03,474.474 INFO    ] No camera update needed
[2026-06-05 01:15:03,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:15:03,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:15:03,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:15:03,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:15:05,531.531 INFO    ] ================================================
[2026-06-05 01:15:05,547.547 INFO    ] Launching Daemon at Fri Jun  5 01:15:05 IST 2026
[2026-06-05 01:15:05,558.558 INFO    ] ================================================
[2026-06-05 01:15:06,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:15:06
[2026-06-05 01:15:06,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:15:07,053.053 INFO    ] Initializing speech engine...
[2026-06-05 01:15:07,063.063 INFO    ] 2026-06-05 01:15:07
[2026-06-05 01:15:07,330.330 INFO    ] 2026-06-05 01:15:07
[2026-06-05 01:15:07,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:15:07,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:15:07,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:15:07,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:15:07,741.741 INFO    ] time= 05/06/2026 01:15:07
[2026-06-05 01:15:07,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:15:07,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:15:07,826.826 INFO    ] No existing commands found in stream
[2026-06-05 01:15:12,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:15:12,845.845 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 01:15:14,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:15:14,232.232 INFO    ] Checking for system updates...
[2026-06-05 01:15:14,268.268 INFO    ] 200
[2026-06-05 01:15:14,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:14,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:15:14,326.326 INFO    ] No update needed
[2026-06-05 01:15:14,329.329 INFO    ] Checking for camera pi updates...
[2026-06-05 01:15:14,367.367 INFO    ] 200
[2026-06-05 01:15:14,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:14,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:15:14,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:15:14,472.472 INFO    ] No camera update needed
[2026-06-05 01:15:14,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:15:14,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:15:14,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:15:14,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:15:16,529.529 INFO    ] ================================================
[2026-06-05 01:15:16,544.544 INFO    ] Launching Daemon at Fri Jun  5 01:15:16 IST 2026
[2026-06-05 01:15:16,555.555 INFO    ] ================================================
[2026-06-05 01:15:17,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:15:17
[2026-06-05 01:15:17,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:15:17,982.982 INFO    ] Initializing speech engine...
[2026-06-05 01:15:17,991.991 INFO    ] 2026-06-05 01:15:17
[2026-06-05 01:15:18,239.239 INFO    ] 2026-06-05 01:15:18
[2026-06-05 01:15:18,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:15:18,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:15:18,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:15:18,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:15:18,717.717 INFO    ] time= 05/06/2026 01:15:18
[2026-06-05 01:15:18,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:15:18,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:15:18,920.920 INFO    ] No existing commands found in stream
[2026-06-05 01:15:23,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:15:23,950.950 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 01:15:26,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:15:26,048.048 INFO    ] Checking for system updates...
[2026-06-05 01:15:26,088.088 INFO    ] 200
[2026-06-05 01:15:26,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:26,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:15:26,147.147 INFO    ] No update needed
[2026-06-05 01:15:26,150.150 INFO    ] Checking for camera pi updates...
[2026-06-05 01:15:26,184.184 INFO    ] 200
[2026-06-05 01:15:26,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:26,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:15:26,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:15:26,281.281 INFO    ] No camera update needed
[2026-06-05 01:15:26,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:15:26,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:15:26,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:15:26,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:15:28,338.338 INFO    ] ================================================
[2026-06-05 01:15:28,353.353 INFO    ] Launching Daemon at Fri Jun  5 01:15:28 IST 2026
[2026-06-05 01:15:28,364.364 INFO    ] ================================================
[2026-06-05 01:15:29,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:15:29
[2026-06-05 01:15:29,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:15:30,007.007 INFO    ] Initializing speech engine...
[2026-06-05 01:15:30,022.022 INFO    ] 2026-06-05 01:15:30
[2026-06-05 01:15:30,300.300 INFO    ] 2026-06-05 01:15:30
[2026-06-05 01:15:30,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:15:30,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:15:30,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:15:30,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:15:30,838.838 INFO    ] time= 05/06/2026 01:15:30
[2026-06-05 01:15:30,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:15:30,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:15:30,973.973 INFO    ] No existing commands found in stream
[2026-06-05 01:15:36,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:15:36,007.007 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 01:15:39,481.481 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:15:39,484.484 INFO    ] Checking for system updates...
[2026-06-05 01:15:39,521.521 INFO    ] 200
[2026-06-05 01:15:39,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:39,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:15:39,583.583 INFO    ] No update needed
[2026-06-05 01:15:39,586.586 INFO    ] Checking for camera pi updates...
[2026-06-05 01:15:39,620.620 INFO    ] 200
[2026-06-05 01:15:39,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:39,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:15:39,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:15:39,719.719 INFO    ] No camera update needed
[2026-06-05 01:15:39,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:15:39,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:15:39,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:15:39,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:15:41,773.773 INFO    ] ================================================
[2026-06-05 01:15:41,789.789 INFO    ] Launching Daemon at Fri Jun  5 01:15:41 IST 2026
[2026-06-05 01:15:41,799.799 INFO    ] ================================================
[2026-06-05 01:15:42,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:15:42
[2026-06-05 01:15:42,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:15:43,231.231 INFO    ] Initializing speech engine...
[2026-06-05 01:15:43,242.242 INFO    ] 2026-06-05 01:15:43
[2026-06-05 01:15:43,493.493 INFO    ] 2026-06-05 01:15:43
[2026-06-05 01:15:43,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:15:43,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:15:43,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:15:43,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:15:43,961.961 INFO    ] time= 05/06/2026 01:15:43
[2026-06-05 01:15:44,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:15:44,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:15:44,105.105 INFO    ] No existing commands found in stream
[2026-06-05 01:15:49,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:15:49,119.119 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 01:15:53,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:15:53,171.171 INFO    ] Checking for system updates...
[2026-06-05 01:15:53,208.208 INFO    ] 200
[2026-06-05 01:15:53,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:53,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:15:53,277.277 INFO    ] No update needed
[2026-06-05 01:15:53,279.279 INFO    ] Checking for camera pi updates...
[2026-06-05 01:15:53,317.317 INFO    ] 200
[2026-06-05 01:15:53,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:15:53,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:15:53,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:15:53,512.512 INFO    ] No camera update needed
[2026-06-05 01:15:53,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:15:53,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:15:53,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:15:53,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:15:55,571.571 INFO    ] ================================================
[2026-06-05 01:15:55,586.586 INFO    ] Launching Daemon at Fri Jun  5 01:15:55 IST 2026
[2026-06-05 01:15:55,598.598 INFO    ] ================================================
[2026-06-05 01:15:56,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:15:56
[2026-06-05 01:15:56,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:15:57,012.012 INFO    ] Initializing speech engine...
[2026-06-05 01:15:57,035.035 INFO    ] 2026-06-05 01:15:57
[2026-06-05 01:15:57,308.308 INFO    ] 2026-06-05 01:15:57
[2026-06-05 01:15:57,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:15:57,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:15:57,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:15:57,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:15:57,713.713 INFO    ] time= 05/06/2026 01:15:57
[2026-06-05 01:15:57,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:15:57,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:15:57,795.795 INFO    ] No existing commands found in stream
[2026-06-05 01:16:02,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:16:02,812.812 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 01:16:06,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:16:06,958.958 INFO    ] Checking for system updates...
[2026-06-05 01:16:06,993.993 INFO    ] 200
[2026-06-05 01:16:06,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:07,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:16:07,055.055 INFO    ] No update needed
[2026-06-05 01:16:07,057.057 INFO    ] Checking for camera pi updates...
[2026-06-05 01:16:07,091.091 INFO    ] 200
[2026-06-05 01:16:07,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:07,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:16:07,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:16:07,165.165 INFO    ] No camera update needed
[2026-06-05 01:16:07,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:16:07,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:16:07,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:16:07,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:16:09,221.221 INFO    ] ================================================
[2026-06-05 01:16:09,237.237 INFO    ] Launching Daemon at Fri Jun  5 01:16:09 IST 2026
[2026-06-05 01:16:09,248.248 INFO    ] ================================================
[2026-06-05 01:16:09,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:16:09
[2026-06-05 01:16:10,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:16:10,657.657 INFO    ] Initializing speech engine...
[2026-06-05 01:16:10,666.666 INFO    ] 2026-06-05 01:16:10
[2026-06-05 01:16:10,957.957 INFO    ] 2026-06-05 01:16:10
[2026-06-05 01:16:10,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:16:11,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:16:11,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:16:11,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:16:11,346.346 INFO    ] time= 05/06/2026 01:16:11
[2026-06-05 01:16:11,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:16:11,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:16:11,458.458 INFO    ] No existing commands found in stream
[2026-06-05 01:16:16,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:16:16,474.474 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 01:16:19,218.218 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:16:19,221.221 INFO    ] Checking for system updates...
[2026-06-05 01:16:19,260.260 INFO    ] 200
[2026-06-05 01:16:19,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:19,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:16:19,320.320 INFO    ] No update needed
[2026-06-05 01:16:19,322.322 INFO    ] Checking for camera pi updates...
[2026-06-05 01:16:19,361.361 INFO    ] 200
[2026-06-05 01:16:19,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:19,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:16:19,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:16:19,461.461 INFO    ] No camera update needed
[2026-06-05 01:16:19,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:16:19,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:16:19,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:16:19,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:16:21,519.519 INFO    ] ================================================
[2026-06-05 01:16:21,535.535 INFO    ] Launching Daemon at Fri Jun  5 01:16:21 IST 2026
[2026-06-05 01:16:21,547.547 INFO    ] ================================================
[2026-06-05 01:16:22,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:16:22
[2026-06-05 01:16:22,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:16:22,960.960 INFO    ] Initializing speech engine...
[2026-06-05 01:16:22,983.983 INFO    ] 2026-06-05 01:16:22
[2026-06-05 01:16:23,235.235 INFO    ] 2026-06-05 01:16:23
[2026-06-05 01:16:23,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:16:23,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:16:23,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:16:23,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:16:23,686.686 INFO    ] time= 05/06/2026 01:16:23
[2026-06-05 01:16:23,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:16:23,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:16:23,850.850 INFO    ] No existing commands found in stream
[2026-06-05 01:16:28,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:16:28,865.865 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 01:16:31,919.919 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:16:31,922.922 INFO    ] Checking for system updates...
[2026-06-05 01:16:31,964.964 INFO    ] 200
[2026-06-05 01:16:31,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:32,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:16:32,029.029 INFO    ] No update needed
[2026-06-05 01:16:32,032.032 INFO    ] Checking for camera pi updates...
[2026-06-05 01:16:32,073.073 INFO    ] 200
[2026-06-05 01:16:32,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:32,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:16:32,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:16:32,181.181 INFO    ] No camera update needed
[2026-06-05 01:16:32,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:16:32,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:16:32,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:16:32,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:16:34,241.241 INFO    ] ================================================
[2026-06-05 01:16:34,257.257 INFO    ] Launching Daemon at Fri Jun  5 01:16:34 IST 2026
[2026-06-05 01:16:34,269.269 INFO    ] ================================================
[2026-06-05 01:16:34,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:16:34
[2026-06-05 01:16:35,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:16:35,697.697 INFO    ] Initializing speech engine...
[2026-06-05 01:16:35,704.704 INFO    ] 2026-06-05 01:16:35
[2026-06-05 01:16:36,007.007 INFO    ] 2026-06-05 01:16:35
[2026-06-05 01:16:36,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:16:36,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:16:36,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:16:36,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:16:36,391.391 INFO    ] time= 05/06/2026 01:16:36
[2026-06-05 01:16:36,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:16:36,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:16:36,451.451 INFO    ] No existing commands found in stream
[2026-06-05 01:16:41,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:16:41,465.465 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 01:16:42,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:16:42,208.208 INFO    ] Checking for system updates...
[2026-06-05 01:16:42,245.245 INFO    ] 200
[2026-06-05 01:16:42,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:42,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:16:42,305.305 INFO    ] No update needed
[2026-06-05 01:16:42,308.308 INFO    ] Checking for camera pi updates...
[2026-06-05 01:16:42,342.342 INFO    ] 200
[2026-06-05 01:16:42,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:42,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:16:42,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:16:42,442.442 INFO    ] No camera update needed
[2026-06-05 01:16:42,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:16:42,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:16:42,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:16:42,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:16:44,501.501 INFO    ] ================================================
[2026-06-05 01:16:44,517.517 INFO    ] Launching Daemon at Fri Jun  5 01:16:44 IST 2026
[2026-06-05 01:16:44,528.528 INFO    ] ================================================
[2026-06-05 01:16:45,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:16:45
[2026-06-05 01:16:45,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:16:45,956.956 INFO    ] Initializing speech engine...
[2026-06-05 01:16:45,966.966 INFO    ] 2026-06-05 01:16:45
[2026-06-05 01:16:46,212.212 INFO    ] 2026-06-05 01:16:46
[2026-06-05 01:16:46,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:16:46,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:16:46,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:16:46,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:16:46,695.695 INFO    ] time= 05/06/2026 01:16:46
[2026-06-05 01:16:46,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:16:46,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:16:46,921.921 INFO    ] No existing commands found in stream
[2026-06-05 01:16:51,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:16:51,952.952 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 01:16:54,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:16:54,506.506 INFO    ] Checking for system updates...
[2026-06-05 01:16:54,542.542 INFO    ] 200
[2026-06-05 01:16:54,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:54,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:16:54,607.607 INFO    ] No update needed
[2026-06-05 01:16:54,610.610 INFO    ] Checking for camera pi updates...
[2026-06-05 01:16:54,650.650 INFO    ] 200
[2026-06-05 01:16:54,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:16:54,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:16:54,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:16:54,747.747 INFO    ] No camera update needed
[2026-06-05 01:16:54,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:16:54,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:16:54,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:16:54,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:16:56,805.805 INFO    ] ================================================
[2026-06-05 01:16:56,821.821 INFO    ] Launching Daemon at Fri Jun  5 01:16:56 IST 2026
[2026-06-05 01:16:56,832.832 INFO    ] ================================================
[2026-06-05 01:16:57,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:16:57
[2026-06-05 01:16:58,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:16:58,481.481 INFO    ] Initializing speech engine...
[2026-06-05 01:16:58,494.494 INFO    ] 2026-06-05 01:16:58
[2026-06-05 01:16:58,803.803 INFO    ] 2026-06-05 01:16:58
[2026-06-05 01:16:58,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:16:59,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:16:59,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:16:59,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:16:59,311.311 INFO    ] time= 05/06/2026 01:16:59
[2026-06-05 01:16:59,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:16:59,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:16:59,462.462 INFO    ] No existing commands found in stream
[2026-06-05 01:17:04,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:17:04,482.482 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 01:17:05,930.930 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:17:05,933.933 INFO    ] Checking for system updates...
[2026-06-05 01:17:05,972.972 INFO    ] 200
[2026-06-05 01:17:05,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:06,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:17:06,040.040 INFO    ] No update needed
[2026-06-05 01:17:06,043.043 INFO    ] Checking for camera pi updates...
[2026-06-05 01:17:06,087.087 INFO    ] 200
[2026-06-05 01:17:06,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:06,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:17:06,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:17:06,174.174 INFO    ] No camera update needed
[2026-06-05 01:17:06,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:17:06,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:17:06,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:17:06,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:17:08,235.235 INFO    ] ================================================
[2026-06-05 01:17:08,251.251 INFO    ] Launching Daemon at Fri Jun  5 01:17:08 IST 2026
[2026-06-05 01:17:08,262.262 INFO    ] ================================================
[2026-06-05 01:17:08,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:17:08
[2026-06-05 01:17:09,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:17:09,702.702 INFO    ] Initializing speech engine...
[2026-06-05 01:17:09,711.711 INFO    ] 2026-06-05 01:17:09
[2026-06-05 01:17:09,959.959 INFO    ] 2026-06-05 01:17:09
[2026-06-05 01:17:09,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:17:10,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:17:10,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:17:10,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:17:10,434.434 INFO    ] time= 05/06/2026 01:17:10
[2026-06-05 01:17:10,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:17:10,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:17:10,584.584 INFO    ] No existing commands found in stream
[2026-06-05 01:17:15,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:17:15,598.598 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 01:17:16,391.391 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:17:16,394.394 INFO    ] Checking for system updates...
[2026-06-05 01:17:16,432.432 INFO    ] 200
[2026-06-05 01:17:16,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:16,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:17:16,492.492 INFO    ] No update needed
[2026-06-05 01:17:16,495.495 INFO    ] Checking for camera pi updates...
[2026-06-05 01:17:16,531.531 INFO    ] 200
[2026-06-05 01:17:16,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:16,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:17:16,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:17:16,634.634 INFO    ] No camera update needed
[2026-06-05 01:17:16,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:17:16,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:17:16,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:17:16,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:17:18,695.695 INFO    ] ================================================
[2026-06-05 01:17:18,710.710 INFO    ] Launching Daemon at Fri Jun  5 01:17:18 IST 2026
[2026-06-05 01:17:18,722.722 INFO    ] ================================================
[2026-06-05 01:17:19,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:17:19
[2026-06-05 01:17:19,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:17:20,139.139 INFO    ] Initializing speech engine...
[2026-06-05 01:17:20,155.155 INFO    ] 2026-06-05 01:17:20
[2026-06-05 01:17:20,441.441 INFO    ] 2026-06-05 01:17:20
[2026-06-05 01:17:20,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:17:20,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:17:20,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:17:20,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:17:20,824.824 INFO    ] time= 05/06/2026 01:17:20
[2026-06-05 01:17:20,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:17:20,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:17:20,888.888 INFO    ] No existing commands found in stream
[2026-06-05 01:17:25,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:17:25,903.903 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-05 01:17:27,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:17:27,478.478 INFO    ] Checking for system updates...
[2026-06-05 01:17:27,513.513 INFO    ] 200
[2026-06-05 01:17:27,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:27,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:17:27,578.578 INFO    ] No update needed
[2026-06-05 01:17:27,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 01:17:27,614.614 INFO    ] 200
[2026-06-05 01:17:27,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:27,658.658 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:17:27,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:17:27,716.716 INFO    ] No camera update needed
[2026-06-05 01:17:27,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:17:27,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:17:27,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:17:27,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:17:29,771.771 INFO    ] ================================================
[2026-06-05 01:17:29,786.786 INFO    ] Launching Daemon at Fri Jun  5 01:17:29 IST 2026
[2026-06-05 01:17:29,797.797 INFO    ] ================================================
[2026-06-05 01:17:30,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:17:30
[2026-06-05 01:17:31,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:17:31,437.437 INFO    ] Initializing speech engine...
[2026-06-05 01:17:31,452.452 INFO    ] 2026-06-05 01:17:31
[2026-06-05 01:17:31,749.749 INFO    ] 2026-06-05 01:17:31
[2026-06-05 01:17:31,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:17:32,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:17:32,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:17:32,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:17:32,215.215 INFO    ] time= 05/06/2026 01:17:32
[2026-06-05 01:17:32,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:17:32,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:17:32,369.369 INFO    ] No existing commands found in stream
[2026-06-05 01:17:37,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:17:37,382.382 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 01:17:39,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:17:39,305.305 INFO    ] Checking for system updates...
[2026-06-05 01:17:39,349.349 INFO    ] 200
[2026-06-05 01:17:39,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:39,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:17:39,413.413 INFO    ] No update needed
[2026-06-05 01:17:39,416.416 INFO    ] Checking for camera pi updates...
[2026-06-05 01:17:39,462.462 INFO    ] 200
[2026-06-05 01:17:39,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:39,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:17:39,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:17:39,584.584 INFO    ] No camera update needed
[2026-06-05 01:17:39,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:17:39,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:17:39,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:17:39,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:17:41,644.644 INFO    ] ================================================
[2026-06-05 01:17:41,660.660 INFO    ] Launching Daemon at Fri Jun  5 01:17:41 IST 2026
[2026-06-05 01:17:41,672.672 INFO    ] ================================================
[2026-06-05 01:17:42,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:17:42
[2026-06-05 01:17:42,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:17:43,093.093 INFO    ] Initializing speech engine...
[2026-06-05 01:17:43,102.102 INFO    ] 2026-06-05 01:17:43
[2026-06-05 01:17:43,355.355 INFO    ] 2026-06-05 01:17:43
[2026-06-05 01:17:43,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:17:43,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:17:43,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:17:43,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:17:43,682.682 INFO    ] time= 05/06/2026 01:17:43
[2026-06-05 01:17:43,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:17:43,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:17:43,795.795 INFO    ] No existing commands found in stream
[2026-06-05 01:17:48,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:17:48,812.812 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 01:17:51,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:17:51,781.781 INFO    ] Checking for system updates...
[2026-06-05 01:17:51,817.817 INFO    ] 200
[2026-06-05 01:17:51,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:51,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:17:51,883.883 INFO    ] No update needed
[2026-06-05 01:17:51,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 01:17:51,921.921 INFO    ] 200
[2026-06-05 01:17:51,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:17:51,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:17:52,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:17:52,025.025 INFO    ] No camera update needed
[2026-06-05 01:17:52,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:17:52,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:17:52,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:17:52,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:17:54,086.086 INFO    ] ================================================
[2026-06-05 01:17:54,102.102 INFO    ] Launching Daemon at Fri Jun  5 01:17:54 IST 2026
[2026-06-05 01:17:54,114.114 INFO    ] ================================================
[2026-06-05 01:17:54,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:17:54
[2026-06-05 01:17:55,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:17:55,773.773 INFO    ] Initializing speech engine...
[2026-06-05 01:17:55,787.787 INFO    ] 2026-06-05 01:17:55
[2026-06-05 01:17:56,099.099 INFO    ] 2026-06-05 01:17:56
[2026-06-05 01:17:56,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:17:56,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:17:56,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:17:56,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:17:56,607.607 INFO    ] time= 05/06/2026 01:17:56
[2026-06-05 01:17:56,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:17:56,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:17:56,762.762 INFO    ] No existing commands found in stream
[2026-06-05 01:18:01,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:18:01,781.781 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 01:18:04,251.251 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:18:04,254.254 INFO    ] Checking for system updates...
[2026-06-05 01:18:04,291.291 INFO    ] 200
[2026-06-05 01:18:04,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:04,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:18:04,350.350 INFO    ] No update needed
[2026-06-05 01:18:04,352.352 INFO    ] Checking for camera pi updates...
[2026-06-05 01:18:04,386.386 INFO    ] 200
[2026-06-05 01:18:04,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:04,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:18:04,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:18:04,463.463 INFO    ] No camera update needed
[2026-06-05 01:18:04,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:18:04,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:18:04,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:18:04,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:18:06,519.519 INFO    ] ================================================
[2026-06-05 01:18:06,535.535 INFO    ] Launching Daemon at Fri Jun  5 01:18:06 IST 2026
[2026-06-05 01:18:06,546.546 INFO    ] ================================================
[2026-06-05 01:18:07,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:18:07
[2026-06-05 01:18:07,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:18:07,981.981 INFO    ] Initializing speech engine...
[2026-06-05 01:18:07,994.994 INFO    ] 2026-06-05 01:18:07
[2026-06-05 01:18:08,259.259 INFO    ] 2026-06-05 01:18:08
[2026-06-05 01:18:08,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:18:08,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:18:08,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:18:08,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:18:08,672.672 INFO    ] time= 05/06/2026 01:18:08
[2026-06-05 01:18:08,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:18:08,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:18:08,759.759 INFO    ] No existing commands found in stream
[2026-06-05 01:18:13,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:18:13,775.775 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 01:18:16,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:18:16,802.802 INFO    ] Checking for system updates...
[2026-06-05 01:18:16,839.839 INFO    ] 200
[2026-06-05 01:18:16,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:16,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:18:16,898.898 INFO    ] No update needed
[2026-06-05 01:18:16,900.900 INFO    ] Checking for camera pi updates...
[2026-06-05 01:18:16,938.938 INFO    ] 200
[2026-06-05 01:18:16,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:16,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:18:17,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:18:17,032.032 INFO    ] No camera update needed
[2026-06-05 01:18:17,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:18:17,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:18:17,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:18:17,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:18:19,087.087 INFO    ] ================================================
[2026-06-05 01:18:19,103.103 INFO    ] Launching Daemon at Fri Jun  5 01:18:19 IST 2026
[2026-06-05 01:18:19,114.114 INFO    ] ================================================
[2026-06-05 01:18:19,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:18:19
[2026-06-05 01:18:20,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:18:20,586.586 INFO    ] Initializing speech engine...
[2026-06-05 01:18:20,605.605 INFO    ] 2026-06-05 01:18:20
[2026-06-05 01:18:20,877.877 INFO    ] 2026-06-05 01:18:20
[2026-06-05 01:18:20,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:18:21,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:18:21,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:18:21,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:18:21,294.294 INFO    ] time= 05/06/2026 01:18:21
[2026-06-05 01:18:21,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:18:21,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:18:21,480.480 INFO    ] No existing commands found in stream
[2026-06-05 01:18:26,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:18:26,508.508 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 01:18:30,519.519 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:18:30,522.522 INFO    ] Checking for system updates...
[2026-06-05 01:18:30,562.562 INFO    ] 200
[2026-06-05 01:18:30,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:30,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:18:30,623.623 INFO    ] No update needed
[2026-06-05 01:18:30,626.626 INFO    ] Checking for camera pi updates...
[2026-06-05 01:18:30,664.664 INFO    ] 200
[2026-06-05 01:18:30,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:30,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:18:30,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:18:30,765.765 INFO    ] No camera update needed
[2026-06-05 01:18:30,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:18:30,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:18:30,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:18:30,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:18:32,825.825 INFO    ] ================================================
[2026-06-05 01:18:32,841.841 INFO    ] Launching Daemon at Fri Jun  5 01:18:32 IST 2026
[2026-06-05 01:18:32,852.852 INFO    ] ================================================
[2026-06-05 01:18:33,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:18:33
[2026-06-05 01:18:34,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:18:34,280.280 INFO    ] Initializing speech engine...
[2026-06-05 01:18:34,292.292 INFO    ] 2026-06-05 01:18:34
[2026-06-05 01:18:34,558.558 INFO    ] 2026-06-05 01:18:34
[2026-06-05 01:18:34,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:18:34,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:18:34,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:18:34,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:18:34,936.936 INFO    ] time= 05/06/2026 01:18:34
[2026-06-05 01:18:34,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:18:34,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:18:35,061.061 INFO    ] No existing commands found in stream
[2026-06-05 01:18:40,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:18:40,076.076 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 01:18:41,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:18:41,648.648 INFO    ] Checking for system updates...
[2026-06-05 01:18:41,684.684 INFO    ] 200
[2026-06-05 01:18:41,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:41,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:18:41,742.742 INFO    ] No update needed
[2026-06-05 01:18:41,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 01:18:41,782.782 INFO    ] 200
[2026-06-05 01:18:41,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:41,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:18:41,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:18:41,876.876 INFO    ] No camera update needed
[2026-06-05 01:18:41,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:18:41,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:18:41,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:18:41,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:18:43,936.936 INFO    ] ================================================
[2026-06-05 01:18:43,952.952 INFO    ] Launching Daemon at Fri Jun  5 01:18:43 IST 2026
[2026-06-05 01:18:43,965.965 INFO    ] ================================================
[2026-06-05 01:18:44,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:18:44
[2026-06-05 01:18:45,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:18:45,672.672 INFO    ] Initializing speech engine...
[2026-06-05 01:18:45,682.682 INFO    ] 2026-06-05 01:18:45
[2026-06-05 01:18:45,995.995 INFO    ] 2026-06-05 01:18:45
[2026-06-05 01:18:46,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:18:46,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:18:46,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:18:46,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:18:46,543.543 INFO    ] time= 05/06/2026 01:18:46
[2026-06-05 01:18:46,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:18:46,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:18:46,707.707 INFO    ] No existing commands found in stream
[2026-06-05 01:18:51,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:18:51,725.725 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 01:18:53,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:18:53,900.900 INFO    ] Checking for system updates...
[2026-06-05 01:18:53,938.938 INFO    ] 200
[2026-06-05 01:18:53,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:54,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:18:54,006.006 INFO    ] No update needed
[2026-06-05 01:18:54,009.009 INFO    ] Checking for camera pi updates...
[2026-06-05 01:18:54,045.045 INFO    ] 200
[2026-06-05 01:18:54,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:18:54,089.089 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:18:54,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:18:54,146.146 INFO    ] No camera update needed
[2026-06-05 01:18:54,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:18:54,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:18:54,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:18:54,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:18:56,208.208 INFO    ] ================================================
[2026-06-05 01:18:56,224.224 INFO    ] Launching Daemon at Fri Jun  5 01:18:56 IST 2026
[2026-06-05 01:18:56,234.234 INFO    ] ================================================
[2026-06-05 01:18:56,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:18:56
[2026-06-05 01:18:57,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:18:57,893.893 INFO    ] Initializing speech engine...
[2026-06-05 01:18:57,907.907 INFO    ] 2026-06-05 01:18:57
[2026-06-05 01:18:58,224.224 INFO    ] 2026-06-05 01:18:58
[2026-06-05 01:18:58,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:18:58,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:18:58,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:18:58,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:18:58,735.735 INFO    ] time= 05/06/2026 01:18:58
[2026-06-05 01:18:58,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:18:58,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:18:58,887.887 INFO    ] No existing commands found in stream
[2026-06-05 01:19:03,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:19:03,905.905 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 01:19:06,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:19:06,806.806 INFO    ] Checking for system updates...
[2026-06-05 01:19:06,843.843 INFO    ] 200
[2026-06-05 01:19:06,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:06,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:19:06,913.913 INFO    ] No update needed
[2026-06-05 01:19:06,916.916 INFO    ] Checking for camera pi updates...
[2026-06-05 01:19:06,951.951 INFO    ] 200
[2026-06-05 01:19:06,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:06,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:19:07,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:19:07,042.042 INFO    ] No camera update needed
[2026-06-05 01:19:07,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:19:07,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:19:07,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:19:07,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:19:09,097.097 INFO    ] ================================================
[2026-06-05 01:19:09,112.112 INFO    ] Launching Daemon at Fri Jun  5 01:19:09 IST 2026
[2026-06-05 01:19:09,122.122 INFO    ] ================================================
[2026-06-05 01:19:09,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:19:09
[2026-06-05 01:19:10,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:19:10,591.591 INFO    ] Initializing speech engine...
[2026-06-05 01:19:10,599.599 INFO    ] 2026-06-05 01:19:10
[2026-06-05 01:19:10,854.854 INFO    ] 2026-06-05 01:19:10
[2026-06-05 01:19:10,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:19:11,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:19:11,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:19:11,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:19:11,211.211 INFO    ] time= 05/06/2026 01:19:11
[2026-06-05 01:19:11,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:19:11,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:19:11,378.378 INFO    ] No existing commands found in stream
[2026-06-05 01:19:16,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:19:16,411.411 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 01:19:17,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:19:17,904.904 INFO    ] Checking for system updates...
[2026-06-05 01:19:17,940.940 INFO    ] 200
[2026-06-05 01:19:17,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:18,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:19:18,002.002 INFO    ] No update needed
[2026-06-05 01:19:18,005.005 INFO    ] Checking for camera pi updates...
[2026-06-05 01:19:18,039.039 INFO    ] 200
[2026-06-05 01:19:18,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:18,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:19:18,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:19:18,132.132 INFO    ] No camera update needed
[2026-06-05 01:19:18,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:19:18,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:19:18,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:19:18,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:19:20,191.191 INFO    ] ================================================
[2026-06-05 01:19:20,206.206 INFO    ] Launching Daemon at Fri Jun  5 01:19:20 IST 2026
[2026-06-05 01:19:20,216.216 INFO    ] ================================================
[2026-06-05 01:19:20,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:19:20
[2026-06-05 01:19:21,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:19:21,738.738 INFO    ] Initializing speech engine...
[2026-06-05 01:19:21,749.749 INFO    ] 2026-06-05 01:19:21
[2026-06-05 01:19:22,019.019 INFO    ] 2026-06-05 01:19:22
[2026-06-05 01:19:22,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:19:22,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:19:22,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:19:22,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:19:22,520.520 INFO    ] time= 05/06/2026 01:19:22
[2026-06-05 01:19:22,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:19:22,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:19:22,702.702 INFO    ] No existing commands found in stream
[2026-06-05 01:19:27,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:19:27,731.731 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 01:19:30,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:19:30,746.746 INFO    ] Checking for system updates...
[2026-06-05 01:19:30,783.783 INFO    ] 200
[2026-06-05 01:19:30,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:30,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:19:30,842.842 INFO    ] No update needed
[2026-06-05 01:19:30,844.844 INFO    ] Checking for camera pi updates...
[2026-06-05 01:19:30,881.881 INFO    ] 200
[2026-06-05 01:19:30,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:30,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:19:30,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:19:30,972.972 INFO    ] No camera update needed
[2026-06-05 01:19:30,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:19:30,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:19:30,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:19:30,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:19:33,028.028 INFO    ] ================================================
[2026-06-05 01:19:33,045.045 INFO    ] Launching Daemon at Fri Jun  5 01:19:33 IST 2026
[2026-06-05 01:19:33,056.056 INFO    ] ================================================
[2026-06-05 01:19:33,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:19:33
[2026-06-05 01:19:34,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:19:34,509.509 INFO    ] Initializing speech engine...
[2026-06-05 01:19:34,519.519 INFO    ] 2026-06-05 01:19:34
[2026-06-05 01:19:34,763.763 INFO    ] 2026-06-05 01:19:34
[2026-06-05 01:19:34,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:19:35,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:19:35,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:19:35,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:19:35,232.232 INFO    ] time= 05/06/2026 01:19:35
[2026-06-05 01:19:35,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:19:35,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:19:35,446.446 INFO    ] No existing commands found in stream
[2026-06-05 01:19:40,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:19:40,474.474 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 01:19:42,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:19:42,774.774 INFO    ] Checking for system updates...
[2026-06-05 01:19:42,811.811 INFO    ] 200
[2026-06-05 01:19:42,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:42,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:19:42,870.870 INFO    ] No update needed
[2026-06-05 01:19:42,873.873 INFO    ] Checking for camera pi updates...
[2026-06-05 01:19:42,910.910 INFO    ] 200
[2026-06-05 01:19:42,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:42,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:19:43,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:19:43,007.007 INFO    ] No camera update needed
[2026-06-05 01:19:43,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:19:43,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:19:43,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:19:43,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:19:45,066.066 INFO    ] ================================================
[2026-06-05 01:19:45,082.082 INFO    ] Launching Daemon at Fri Jun  5 01:19:45 IST 2026
[2026-06-05 01:19:45,093.093 INFO    ] ================================================
[2026-06-05 01:19:45,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:19:45
[2026-06-05 01:19:46,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:19:46,502.502 INFO    ] Initializing speech engine...
[2026-06-05 01:19:46,514.514 INFO    ] 2026-06-05 01:19:46
[2026-06-05 01:19:46,782.782 INFO    ] 2026-06-05 01:19:46
[2026-06-05 01:19:46,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:19:47,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:19:47,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:19:47,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:19:47,233.233 INFO    ] time= 05/06/2026 01:19:47
[2026-06-05 01:19:47,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:19:47,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:19:47,413.413 INFO    ] No existing commands found in stream
[2026-06-05 01:19:52,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:19:52,428.428 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 01:19:53,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:19:53,913.913 INFO    ] Checking for system updates...
[2026-06-05 01:19:53,950.950 INFO    ] 200
[2026-06-05 01:19:53,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:54,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:19:54,010.010 INFO    ] No update needed
[2026-06-05 01:19:54,012.012 INFO    ] Checking for camera pi updates...
[2026-06-05 01:19:54,050.050 INFO    ] 200
[2026-06-05 01:19:54,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:19:54,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:19:54,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:19:54,153.153 INFO    ] No camera update needed
[2026-06-05 01:19:54,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:19:54,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:19:54,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:19:54,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:19:56,210.210 INFO    ] ================================================
[2026-06-05 01:19:56,225.225 INFO    ] Launching Daemon at Fri Jun  5 01:19:56 IST 2026
[2026-06-05 01:19:56,236.236 INFO    ] ================================================
[2026-06-05 01:19:56,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:19:56
[2026-06-05 01:19:57,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:19:57,747.747 INFO    ] Initializing speech engine...
[2026-06-05 01:19:57,753.753 INFO    ] 2026-06-05 01:19:57
[2026-06-05 01:19:58,043.043 INFO    ] 2026-06-05 01:19:58
[2026-06-05 01:19:58,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:19:58,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:19:58,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:19:58,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:19:58,413.413 INFO    ] time= 05/06/2026 01:19:58
[2026-06-05 01:19:58,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:19:58,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:19:58,538.538 INFO    ] No existing commands found in stream
[2026-06-05 01:20:03,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:20:03,573.573 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 01:20:08,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:20:08,888.888 INFO    ] Checking for system updates...
[2026-06-05 01:20:08,925.925 INFO    ] 200
[2026-06-05 01:20:08,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:08,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:20:08,985.985 INFO    ] No update needed
[2026-06-05 01:20:08,988.988 INFO    ] Checking for camera pi updates...
[2026-06-05 01:20:09,026.026 INFO    ] 200
[2026-06-05 01:20:09,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:09,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:20:09,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:20:09,219.219 INFO    ] No camera update needed
[2026-06-05 01:20:09,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:20:09,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:20:09,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:20:09,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:20:11,278.278 INFO    ] ================================================
[2026-06-05 01:20:11,294.294 INFO    ] Launching Daemon at Fri Jun  5 01:20:11 IST 2026
[2026-06-05 01:20:11,305.305 INFO    ] ================================================
[2026-06-05 01:20:11,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:20:11
[2026-06-05 01:20:12,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:20:12,742.742 INFO    ] Initializing speech engine...
[2026-06-05 01:20:12,750.750 INFO    ] 2026-06-05 01:20:12
[2026-06-05 01:20:13,001.001 INFO    ] 2026-06-05 01:20:12
[2026-06-05 01:20:13,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:20:13,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:20:13,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:20:13,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:20:13,379.379 INFO    ] time= 05/06/2026 01:20:13
[2026-06-05 01:20:13,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:20:13,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:20:13,459.459 INFO    ] No existing commands found in stream
[2026-06-05 01:20:18,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:20:18,477.477 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 01:20:20,562.562 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:20:20,565.565 INFO    ] Checking for system updates...
[2026-06-05 01:20:20,602.602 INFO    ] 200
[2026-06-05 01:20:20,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:20,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:20:20,660.660 INFO    ] No update needed
[2026-06-05 01:20:20,662.662 INFO    ] Checking for camera pi updates...
[2026-06-05 01:20:20,696.696 INFO    ] 200
[2026-06-05 01:20:20,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:20,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:20:20,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:20:20,787.787 INFO    ] No camera update needed
[2026-06-05 01:20:20,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:20:20,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:20:20,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:20:20,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:20:22,845.845 INFO    ] ================================================
[2026-06-05 01:20:22,861.861 INFO    ] Launching Daemon at Fri Jun  5 01:20:22 IST 2026
[2026-06-05 01:20:22,871.871 INFO    ] ================================================
[2026-06-05 01:20:23,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:20:23
[2026-06-05 01:20:24,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:20:24,495.495 INFO    ] Initializing speech engine...
[2026-06-05 01:20:24,500.500 INFO    ] 2026-06-05 01:20:24
[2026-06-05 01:20:24,750.750 INFO    ] 2026-06-05 01:20:24
[2026-06-05 01:20:24,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:20:24,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:20:24,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:20:25,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:20:25,126.126 INFO    ] time= 05/06/2026 01:20:25
[2026-06-05 01:20:25,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:20:25,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:20:25,317.317 INFO    ] No existing commands found in stream
[2026-06-05 01:20:30,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:20:30,346.346 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 01:20:33,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:20:33,031.031 INFO    ] Checking for system updates...
[2026-06-05 01:20:33,080.080 INFO    ] 200
[2026-06-05 01:20:33,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:33,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:20:33,172.172 INFO    ] No update needed
[2026-06-05 01:20:33,175.175 INFO    ] Checking for camera pi updates...
[2026-06-05 01:20:33,211.211 INFO    ] 200
[2026-06-05 01:20:33,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:33,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:20:33,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:20:33,306.306 INFO    ] No camera update needed
[2026-06-05 01:20:33,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:20:33,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:20:33,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:20:33,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:20:35,366.366 INFO    ] ================================================
[2026-06-05 01:20:35,382.382 INFO    ] Launching Daemon at Fri Jun  5 01:20:35 IST 2026
[2026-06-05 01:20:35,393.393 INFO    ] ================================================
[2026-06-05 01:20:35,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:20:35
[2026-06-05 01:20:36,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:20:36,861.861 INFO    ] Initializing speech engine...
[2026-06-05 01:20:36,868.868 INFO    ] 2026-06-05 01:20:36
[2026-06-05 01:20:37,130.130 INFO    ] 2026-06-05 01:20:37
[2026-06-05 01:20:37,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:20:37,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:20:37,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:20:37,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:20:37,603.603 INFO    ] time= 05/06/2026 01:20:37
[2026-06-05 01:20:37,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:20:37,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:20:37,746.746 INFO    ] No existing commands found in stream
[2026-06-05 01:20:42,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:20:42,760.760 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 01:20:46,826.826 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:20:46,828.828 INFO    ] Checking for system updates...
[2026-06-05 01:20:46,865.865 INFO    ] 200
[2026-06-05 01:20:46,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:46,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:20:46,923.923 INFO    ] No update needed
[2026-06-05 01:20:46,926.926 INFO    ] Checking for camera pi updates...
[2026-06-05 01:20:46,960.960 INFO    ] 200
[2026-06-05 01:20:46,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:47,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:20:47,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:20:47,054.054 INFO    ] No camera update needed
[2026-06-05 01:20:47,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:20:47,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:20:47,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:20:47,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:20:49,112.112 INFO    ] ================================================
[2026-06-05 01:20:49,128.128 INFO    ] Launching Daemon at Fri Jun  5 01:20:49 IST 2026
[2026-06-05 01:20:49,139.139 INFO    ] ================================================
[2026-06-05 01:20:49,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:20:49
[2026-06-05 01:20:50,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:20:50,550.550 INFO    ] Initializing speech engine...
[2026-06-05 01:20:50,573.573 INFO    ] 2026-06-05 01:20:50
[2026-06-05 01:20:50,846.846 INFO    ] 2026-06-05 01:20:50
[2026-06-05 01:20:50,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:20:51,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:20:51,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:20:51,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:20:51,216.216 INFO    ] time= 05/06/2026 01:20:51
[2026-06-05 01:20:51,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:20:51,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:20:51,340.340 INFO    ] No existing commands found in stream
[2026-06-05 01:20:56,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:20:56,356.356 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 01:20:56,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:20:56,752.752 INFO    ] Checking for system updates...
[2026-06-05 01:20:56,789.789 INFO    ] 200
[2026-06-05 01:20:56,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:56,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:20:56,846.846 INFO    ] No update needed
[2026-06-05 01:20:56,849.849 INFO    ] Checking for camera pi updates...
[2026-06-05 01:20:56,883.883 INFO    ] 200
[2026-06-05 01:20:56,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:20:56,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:20:56,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:20:56,977.977 INFO    ] No camera update needed
[2026-06-05 01:20:56,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:20:56,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:20:56,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:20:56,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:20:59,033.033 INFO    ] ================================================
[2026-06-05 01:20:59,048.048 INFO    ] Launching Daemon at Fri Jun  5 01:20:59 IST 2026
[2026-06-05 01:20:59,059.059 INFO    ] ================================================
[2026-06-05 01:20:59,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:20:59
[2026-06-05 01:21:00,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:21:00,507.507 INFO    ] Initializing speech engine...
[2026-06-05 01:21:00,532.532 INFO    ] 2026-06-05 01:21:00
[2026-06-05 01:21:00,805.805 INFO    ] 2026-06-05 01:21:00
[2026-06-05 01:21:00,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:21:01,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:21:01,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:21:01,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:21:01,213.213 INFO    ] time= 05/06/2026 01:21:01
[2026-06-05 01:21:01,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:21:01,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:21:01,302.302 INFO    ] No existing commands found in stream
[2026-06-05 01:21:06,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:21:06,315.315 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 01:21:08,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:21:08,868.868 INFO    ] Checking for system updates...
[2026-06-05 01:21:08,904.904 INFO    ] 200
[2026-06-05 01:21:08,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:08,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:21:08,962.962 INFO    ] No update needed
[2026-06-05 01:21:08,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 01:21:08,999.999 INFO    ] 200
[2026-06-05 01:21:09,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:09,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:21:09,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:21:09,095.095 INFO    ] No camera update needed
[2026-06-05 01:21:09,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:21:09,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:21:09,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:21:09,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:21:11,152.152 INFO    ] ================================================
[2026-06-05 01:21:11,167.167 INFO    ] Launching Daemon at Fri Jun  5 01:21:11 IST 2026
[2026-06-05 01:21:11,178.178 INFO    ] ================================================
[2026-06-05 01:21:11,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:21:11
[2026-06-05 01:21:12,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:21:12,663.663 INFO    ] Initializing speech engine...
[2026-06-05 01:21:12,676.676 INFO    ] 2026-06-05 01:21:12
[2026-06-05 01:21:12,941.941 INFO    ] 2026-06-05 01:21:12
[2026-06-05 01:21:12,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:21:13,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:21:13,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:21:13,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:21:13,472.472 INFO    ] time= 05/06/2026 01:21:13
[2026-06-05 01:21:13,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:21:13,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:21:13,611.611 INFO    ] No existing commands found in stream
[2026-06-05 01:21:18,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:21:18,638.638 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 01:21:21,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:21:21,687.687 INFO    ] Checking for system updates...
[2026-06-05 01:21:21,723.723 INFO    ] 200
[2026-06-05 01:21:21,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:21,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:21:21,788.788 INFO    ] No update needed
[2026-06-05 01:21:21,790.790 INFO    ] Checking for camera pi updates...
[2026-06-05 01:21:21,825.825 INFO    ] 200
[2026-06-05 01:21:21,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:21,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:21:21,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:21:21,914.914 INFO    ] No camera update needed
[2026-06-05 01:21:21,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:21:21,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:21:21,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:21:21,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:21:23,974.974 INFO    ] ================================================
[2026-06-05 01:21:23,989.989 INFO    ] Launching Daemon at Fri Jun  5 01:21:23 IST 2026
[2026-06-05 01:21:24,001.001 INFO    ] ================================================
[2026-06-05 01:21:24,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:21:24
[2026-06-05 01:21:25,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:21:25,609.609 INFO    ] Initializing speech engine...
[2026-06-05 01:21:25,624.624 INFO    ] 2026-06-05 01:21:25
[2026-06-05 01:21:25,909.909 INFO    ] 2026-06-05 01:21:25
[2026-06-05 01:21:26,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:21:26,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:21:26,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:21:26,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:21:26,436.436 INFO    ] time= 05/06/2026 01:21:26
[2026-06-05 01:21:26,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:21:26,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:21:26,576.576 INFO    ] No existing commands found in stream
[2026-06-05 01:21:31,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:21:31,611.611 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 01:21:32,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:21:32,128.128 INFO    ] Checking for system updates...
[2026-06-05 01:21:32,173.173 INFO    ] 200
[2026-06-05 01:21:32,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:32,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:21:32,242.242 INFO    ] No update needed
[2026-06-05 01:21:32,245.245 INFO    ] Checking for camera pi updates...
[2026-06-05 01:21:32,283.283 INFO    ] 200
[2026-06-05 01:21:32,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:32,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:21:32,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:21:32,386.386 INFO    ] No camera update needed
[2026-06-05 01:21:32,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:21:32,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:21:32,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:21:32,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:21:34,453.453 INFO    ] ================================================
[2026-06-05 01:21:34,469.469 INFO    ] Launching Daemon at Fri Jun  5 01:21:34 IST 2026
[2026-06-05 01:21:34,479.479 INFO    ] ================================================
[2026-06-05 01:21:35,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:21:35
[2026-06-05 01:21:35,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:21:35,899.899 INFO    ] Initializing speech engine...
[2026-06-05 01:21:35,910.910 INFO    ] 2026-06-05 01:21:35
[2026-06-05 01:21:36,160.160 INFO    ] 2026-06-05 01:21:36
[2026-06-05 01:21:36,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:21:36,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:21:36,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:21:36,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:21:36,628.628 INFO    ] time= 05/06/2026 01:21:36
[2026-06-05 01:21:36,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:21:36,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:21:36,781.781 INFO    ] No existing commands found in stream
[2026-06-05 01:21:41,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:21:41,796.796 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 01:21:45,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:21:45,873.873 INFO    ] Checking for system updates...
[2026-06-05 01:21:45,910.910 INFO    ] 200
[2026-06-05 01:21:45,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:45,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:21:45,968.968 INFO    ] No update needed
[2026-06-05 01:21:45,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 01:21:46,005.005 INFO    ] 200
[2026-06-05 01:21:46,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:46,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:21:46,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:21:46,096.096 INFO    ] No camera update needed
[2026-06-05 01:21:46,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:21:46,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:21:46,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:21:46,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:21:48,156.156 INFO    ] ================================================
[2026-06-05 01:21:48,171.171 INFO    ] Launching Daemon at Fri Jun  5 01:21:48 IST 2026
[2026-06-05 01:21:48,182.182 INFO    ] ================================================
[2026-06-05 01:21:48,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:21:48
[2026-06-05 01:21:49,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:21:49,796.796 INFO    ] Initializing speech engine...
[2026-06-05 01:21:49,806.806 INFO    ] 2026-06-05 01:21:49
[2026-06-05 01:21:50,080.080 INFO    ] 2026-06-05 01:21:50
[2026-06-05 01:21:50,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:21:50,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:21:50,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:21:50,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:21:50,583.583 INFO    ] time= 05/06/2026 01:21:50
[2026-06-05 01:21:50,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:21:50,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:21:50,759.759 INFO    ] No existing commands found in stream
[2026-06-05 01:21:55,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:21:55,796.796 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 01:21:57,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:21:57,211.211 INFO    ] Checking for system updates...
[2026-06-05 01:21:57,248.248 INFO    ] 200
[2026-06-05 01:21:57,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:57,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:21:57,307.307 INFO    ] No update needed
[2026-06-05 01:21:57,310.310 INFO    ] Checking for camera pi updates...
[2026-06-05 01:21:57,348.348 INFO    ] 200
[2026-06-05 01:21:57,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:21:57,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:21:57,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:21:57,447.447 INFO    ] No camera update needed
[2026-06-05 01:21:57,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:21:57,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:21:57,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:21:57,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:21:59,505.505 INFO    ] ================================================
[2026-06-05 01:21:59,520.520 INFO    ] Launching Daemon at Fri Jun  5 01:21:59 IST 2026
[2026-06-05 01:21:59,531.531 INFO    ] ================================================
[2026-06-05 01:22:00,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:22:00
[2026-06-05 01:22:00,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:22:00,988.988 INFO    ] Initializing speech engine...
[2026-06-05 01:22:01,001.001 INFO    ] 2026-06-05 01:22:00
[2026-06-05 01:22:01,332.332 INFO    ] 2026-06-05 01:22:01
[2026-06-05 01:22:01,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:22:01,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:22:01,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:22:01,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:22:01,849.849 INFO    ] time= 05/06/2026 01:22:01
[2026-06-05 01:22:01,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:22:01,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:22:01,983.983 INFO    ] No existing commands found in stream
[2026-06-05 01:22:07,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:22:07,017.017 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 01:22:07,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:22:08,001.001 INFO    ] Checking for system updates...
[2026-06-05 01:22:08,037.037 INFO    ] 200
[2026-06-05 01:22:08,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:08,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:22:08,096.096 INFO    ] No update needed
[2026-06-05 01:22:08,098.098 INFO    ] Checking for camera pi updates...
[2026-06-05 01:22:08,132.132 INFO    ] 200
[2026-06-05 01:22:08,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:08,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:22:08,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:22:08,233.233 INFO    ] No camera update needed
[2026-06-05 01:22:08,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:22:08,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:22:08,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:22:08,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:22:10,288.288 INFO    ] ================================================
[2026-06-05 01:22:10,304.304 INFO    ] Launching Daemon at Fri Jun  5 01:22:10 IST 2026
[2026-06-05 01:22:10,315.315 INFO    ] ================================================
[2026-06-05 01:22:10,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:22:10
[2026-06-05 01:22:11,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:22:11,744.744 INFO    ] Initializing speech engine...
[2026-06-05 01:22:11,753.753 INFO    ] 2026-06-05 01:22:11
[2026-06-05 01:22:12,005.005 INFO    ] 2026-06-05 01:22:11
[2026-06-05 01:22:12,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:22:12,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:22:12,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:22:12,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:22:12,382.382 INFO    ] time= 05/06/2026 01:22:12
[2026-06-05 01:22:12,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:22:12,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:22:12,459.459 INFO    ] No existing commands found in stream
[2026-06-05 01:22:17,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:22:17,474.474 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 01:22:18,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:22:18,049.049 INFO    ] Checking for system updates...
[2026-06-05 01:22:18,089.089 INFO    ] 200
[2026-06-05 01:22:18,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:18,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:22:18,146.146 INFO    ] No update needed
[2026-06-05 01:22:18,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 01:22:18,183.183 INFO    ] 200
[2026-06-05 01:22:18,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:18,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:22:18,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:22:18,380.380 INFO    ] No camera update needed
[2026-06-05 01:22:18,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:22:18,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:22:18,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:22:18,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:22:20,444.444 INFO    ] ================================================
[2026-06-05 01:22:20,459.459 INFO    ] Launching Daemon at Fri Jun  5 01:22:20 IST 2026
[2026-06-05 01:22:20,470.470 INFO    ] ================================================
[2026-06-05 01:22:21,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:22:21
[2026-06-05 01:22:21,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:22:21,908.908 INFO    ] Initializing speech engine...
[2026-06-05 01:22:21,918.918 INFO    ] 2026-06-05 01:22:21
[2026-06-05 01:22:22,170.170 INFO    ] 2026-06-05 01:22:22
[2026-06-05 01:22:22,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:22:22,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:22:22,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:22:22,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:22:22,547.547 INFO    ] time= 05/06/2026 01:22:22
[2026-06-05 01:22:22,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:22:22,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:22:22,623.623 INFO    ] No existing commands found in stream
[2026-06-05 01:22:27,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:22:27,639.639 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-05 01:22:28,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:22:28,150.150 INFO    ] Checking for system updates...
[2026-06-05 01:22:28,187.187 INFO    ] 200
[2026-06-05 01:22:28,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:28,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:22:28,252.252 INFO    ] No update needed
[2026-06-05 01:22:28,255.255 INFO    ] Checking for camera pi updates...
[2026-06-05 01:22:28,291.291 INFO    ] 200
[2026-06-05 01:22:28,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:28,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:22:28,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:22:28,384.384 INFO    ] No camera update needed
[2026-06-05 01:22:28,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:22:28,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:22:28,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:22:28,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:22:30,442.442 INFO    ] ================================================
[2026-06-05 01:22:30,457.457 INFO    ] Launching Daemon at Fri Jun  5 01:22:30 IST 2026
[2026-06-05 01:22:30,468.468 INFO    ] ================================================
[2026-06-05 01:22:31,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:22:31
[2026-06-05 01:22:31,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:22:32,073.073 INFO    ] Initializing speech engine...
[2026-06-05 01:22:32,085.085 INFO    ] 2026-06-05 01:22:32
[2026-06-05 01:22:32,358.358 INFO    ] 2026-06-05 01:22:32
[2026-06-05 01:22:32,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:22:32,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:22:32,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:22:32,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:22:32,745.745 INFO    ] time= 05/06/2026 01:22:32
[2026-06-05 01:22:32,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:22:32,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:22:32,833.833 INFO    ] No existing commands found in stream
[2026-06-05 01:22:37,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:22:37,872.872 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 01:22:42,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:22:42,103.103 INFO    ] Checking for system updates...
[2026-06-05 01:22:42,143.143 INFO    ] 200
[2026-06-05 01:22:42,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:42,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:22:42,200.200 INFO    ] No update needed
[2026-06-05 01:22:42,205.205 INFO    ] Checking for camera pi updates...
[2026-06-05 01:22:42,241.241 INFO    ] 200
[2026-06-05 01:22:42,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:42,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:22:42,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:22:42,337.337 INFO    ] No camera update needed
[2026-06-05 01:22:42,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:22:42,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:22:42,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:22:42,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:22:44,393.393 INFO    ] ================================================
[2026-06-05 01:22:44,408.408 INFO    ] Launching Daemon at Fri Jun  5 01:22:44 IST 2026
[2026-06-05 01:22:44,419.419 INFO    ] ================================================
[2026-06-05 01:22:44,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:22:44
[2026-06-05 01:22:45,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:22:45,836.836 INFO    ] Initializing speech engine...
[2026-06-05 01:22:45,848.848 INFO    ] 2026-06-05 01:22:45
[2026-06-05 01:22:46,100.100 INFO    ] 2026-06-05 01:22:46
[2026-06-05 01:22:46,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:22:46,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:22:46,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:22:46,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:22:46,584.584 INFO    ] time= 05/06/2026 01:22:46
[2026-06-05 01:22:46,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:22:46,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:22:46,726.726 INFO    ] No existing commands found in stream
[2026-06-05 01:22:51,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:22:51,741.741 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 01:22:53,992.992 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:22:53,994.994 INFO    ] Checking for system updates...
[2026-06-05 01:22:54,031.031 INFO    ] 200
[2026-06-05 01:22:54,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:54,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:22:54,098.098 INFO    ] No update needed
[2026-06-05 01:22:54,100.100 INFO    ] Checking for camera pi updates...
[2026-06-05 01:22:54,137.137 INFO    ] 200
[2026-06-05 01:22:54,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:22:54,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:22:54,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:22:54,227.227 INFO    ] No camera update needed
[2026-06-05 01:22:54,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:22:54,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:22:54,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:22:54,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:22:56,281.281 INFO    ] ================================================
[2026-06-05 01:22:56,297.297 INFO    ] Launching Daemon at Fri Jun  5 01:22:56 IST 2026
[2026-06-05 01:22:56,309.309 INFO    ] ================================================
[2026-06-05 01:22:56,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:22:56
[2026-06-05 01:22:57,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:22:57,752.752 INFO    ] Initializing speech engine...
[2026-06-05 01:22:57,761.761 INFO    ] 2026-06-05 01:22:57
[2026-06-05 01:22:58,053.053 INFO    ] 2026-06-05 01:22:58
[2026-06-05 01:22:58,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:22:58,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:22:58,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:22:58,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:22:58,454.454 INFO    ] time= 05/06/2026 01:22:58
[2026-06-05 01:22:58,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:22:58,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:22:58,561.561 INFO    ] No existing commands found in stream
[2026-06-05 01:23:03,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:23:03,577.577 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 01:23:06,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:23:06,145.145 INFO    ] Checking for system updates...
[2026-06-05 01:23:06,182.182 INFO    ] 200
[2026-06-05 01:23:06,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:06,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:23:06,241.241 INFO    ] No update needed
[2026-06-05 01:23:06,244.244 INFO    ] Checking for camera pi updates...
[2026-06-05 01:23:06,278.278 INFO    ] 200
[2026-06-05 01:23:06,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:06,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:23:06,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:23:06,371.371 INFO    ] No camera update needed
[2026-06-05 01:23:06,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:23:06,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:23:06,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:23:06,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:23:08,427.427 INFO    ] ================================================
[2026-06-05 01:23:08,442.442 INFO    ] Launching Daemon at Fri Jun  5 01:23:08 IST 2026
[2026-06-05 01:23:08,454.454 INFO    ] ================================================
[2026-06-05 01:23:09,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:23:09
[2026-06-05 01:23:09,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:23:10,085.085 INFO    ] Initializing speech engine...
[2026-06-05 01:23:10,094.094 INFO    ] 2026-06-05 01:23:10
[2026-06-05 01:23:10,384.384 INFO    ] 2026-06-05 01:23:10
[2026-06-05 01:23:10,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:23:10,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:23:10,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:23:10,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:23:10,852.852 INFO    ] time= 05/06/2026 01:23:10
[2026-06-05 01:23:10,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:23:10,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:23:11,003.003 INFO    ] No existing commands found in stream
[2026-06-05 01:23:16,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:23:16,028.028 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 01:23:20,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:23:20,426.426 INFO    ] Checking for system updates...
[2026-06-05 01:23:20,463.463 INFO    ] 200
[2026-06-05 01:23:20,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:20,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:23:20,529.529 INFO    ] No update needed
[2026-06-05 01:23:20,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 01:23:20,566.566 INFO    ] 200
[2026-06-05 01:23:20,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:20,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:23:20,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:23:20,661.661 INFO    ] No camera update needed
[2026-06-05 01:23:20,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:23:20,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:23:20,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:23:20,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:23:22,716.716 INFO    ] ================================================
[2026-06-05 01:23:22,732.732 INFO    ] Launching Daemon at Fri Jun  5 01:23:22 IST 2026
[2026-06-05 01:23:22,743.743 INFO    ] ================================================
[2026-06-05 01:23:23,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:23:23
[2026-06-05 01:23:23,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:23:24,161.161 INFO    ] Initializing speech engine...
[2026-06-05 01:23:24,185.185 INFO    ] 2026-06-05 01:23:24
[2026-06-05 01:23:24,440.440 INFO    ] 2026-06-05 01:23:24
[2026-06-05 01:23:24,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:23:24,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:23:24,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:23:24,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:23:24,820.820 INFO    ] time= 05/06/2026 01:23:24
[2026-06-05 01:23:24,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:23:24,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:23:24,998.998 INFO    ] No existing commands found in stream
[2026-06-05 01:23:30,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:23:30,027.027 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 01:23:31,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:23:31,367.367 INFO    ] Checking for system updates...
[2026-06-05 01:23:31,410.410 INFO    ] 200
[2026-06-05 01:23:31,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:31,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:23:31,473.473 INFO    ] No update needed
[2026-06-05 01:23:31,475.475 INFO    ] Checking for camera pi updates...
[2026-06-05 01:23:31,511.511 INFO    ] 200
[2026-06-05 01:23:31,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:31,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:23:31,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:23:31,602.602 INFO    ] No camera update needed
[2026-06-05 01:23:31,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:23:31,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:23:31,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:23:31,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:23:33,661.661 INFO    ] ================================================
[2026-06-05 01:23:33,677.677 INFO    ] Launching Daemon at Fri Jun  5 01:23:33 IST 2026
[2026-06-05 01:23:33,688.688 INFO    ] ================================================
[2026-06-05 01:23:34,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:23:34
[2026-06-05 01:23:34,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:23:35,126.126 INFO    ] Initializing speech engine...
[2026-06-05 01:23:35,134.134 INFO    ] 2026-06-05 01:23:35
[2026-06-05 01:23:35,428.428 INFO    ] 2026-06-05 01:23:35
[2026-06-05 01:23:35,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:23:35,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:23:35,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:23:35,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:23:35,845.845 INFO    ] time= 05/06/2026 01:23:35
[2026-06-05 01:23:35,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:23:35,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:23:36,029.029 INFO    ] No existing commands found in stream
[2026-06-05 01:23:41,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:23:41,068.068 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 01:23:41,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:23:41,965.965 INFO    ] Checking for system updates...
[2026-06-05 01:23:42,001.001 INFO    ] 200
[2026-06-05 01:23:42,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:42,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:23:42,066.066 INFO    ] No update needed
[2026-06-05 01:23:42,069.069 INFO    ] Checking for camera pi updates...
[2026-06-05 01:23:42,103.103 INFO    ] 200
[2026-06-05 01:23:42,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:42,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:23:42,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:23:42,209.209 INFO    ] No camera update needed
[2026-06-05 01:23:42,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:23:42,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:23:42,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:23:42,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:23:44,266.266 INFO    ] ================================================
[2026-06-05 01:23:44,281.281 INFO    ] Launching Daemon at Fri Jun  5 01:23:44 IST 2026
[2026-06-05 01:23:44,292.292 INFO    ] ================================================
[2026-06-05 01:23:44,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:23:44
[2026-06-05 01:23:45,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:23:45,700.700 INFO    ] Initializing speech engine...
[2026-06-05 01:23:45,716.716 INFO    ] 2026-06-05 01:23:45
[2026-06-05 01:23:45,996.996 INFO    ] 2026-06-05 01:23:45
[2026-06-05 01:23:46,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:23:46,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:23:46,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:23:46,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:23:46,410.410 INFO    ] time= 05/06/2026 01:23:46
[2026-06-05 01:23:46,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:23:46,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:23:46,495.495 INFO    ] No existing commands found in stream
[2026-06-05 01:23:51,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:23:51,513.513 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 01:23:52,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:23:52,884.884 INFO    ] Checking for system updates...
[2026-06-05 01:23:52,921.921 INFO    ] 200
[2026-06-05 01:23:52,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:52,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:23:52,988.988 INFO    ] No update needed
[2026-06-05 01:23:52,990.990 INFO    ] Checking for camera pi updates...
[2026-06-05 01:23:53,027.027 INFO    ] 200
[2026-06-05 01:23:53,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:23:53,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:23:53,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:23:53,118.118 INFO    ] No camera update needed
[2026-06-05 01:23:53,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:23:53,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:23:53,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:23:53,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:23:55,174.174 INFO    ] ================================================
[2026-06-05 01:23:55,189.189 INFO    ] Launching Daemon at Fri Jun  5 01:23:55 IST 2026
[2026-06-05 01:23:55,200.200 INFO    ] ================================================
[2026-06-05 01:23:55,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:23:55
[2026-06-05 01:23:56,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:23:56,806.806 INFO    ] Initializing speech engine...
[2026-06-05 01:23:56,813.813 INFO    ] 2026-06-05 01:23:56
[2026-06-05 01:23:57,104.104 INFO    ] 2026-06-05 01:23:57
[2026-06-05 01:23:57,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:23:57,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:23:57,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:23:57,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:23:57,581.581 INFO    ] time= 05/06/2026 01:23:57
[2026-06-05 01:23:57,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:23:57,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:23:57,782.782 INFO    ] No existing commands found in stream
[2026-06-05 01:24:02,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:24:02,808.808 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 01:24:05,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:24:05,647.647 INFO    ] Checking for system updates...
[2026-06-05 01:24:05,684.684 INFO    ] 200
[2026-06-05 01:24:05,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:05,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:24:05,743.743 INFO    ] No update needed
[2026-06-05 01:24:05,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 01:24:05,781.781 INFO    ] 200
[2026-06-05 01:24:05,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:05,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:24:05,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:24:05,881.881 INFO    ] No camera update needed
[2026-06-05 01:24:05,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:24:05,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:24:05,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:24:05,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:24:07,940.940 INFO    ] ================================================
[2026-06-05 01:24:07,956.956 INFO    ] Launching Daemon at Fri Jun  5 01:24:07 IST 2026
[2026-06-05 01:24:07,967.967 INFO    ] ================================================
[2026-06-05 01:24:08,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:24:08
[2026-06-05 01:24:09,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:24:09,368.368 INFO    ] Initializing speech engine...
[2026-06-05 01:24:09,375.375 INFO    ] 2026-06-05 01:24:09
[2026-06-05 01:24:09,671.671 INFO    ] 2026-06-05 01:24:09
[2026-06-05 01:24:09,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:24:09,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:24:09,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:24:10,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:24:10,092.092 INFO    ] time= 05/06/2026 01:24:10
[2026-06-05 01:24:10,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:24:10,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:24:10,175.175 INFO    ] No existing commands found in stream
[2026-06-05 01:24:15,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:24:15,190.190 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 01:24:18,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:24:18,364.364 INFO    ] Checking for system updates...
[2026-06-05 01:24:18,399.399 INFO    ] 200
[2026-06-05 01:24:18,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:18,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:24:18,456.456 INFO    ] No update needed
[2026-06-05 01:24:18,459.459 INFO    ] Checking for camera pi updates...
[2026-06-05 01:24:18,496.496 INFO    ] 200
[2026-06-05 01:24:18,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:18,541.541 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:24:18,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:24:18,697.697 INFO    ] No camera update needed
[2026-06-05 01:24:18,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:24:18,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:24:18,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:24:18,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:24:20,753.753 INFO    ] ================================================
[2026-06-05 01:24:20,769.769 INFO    ] Launching Daemon at Fri Jun  5 01:24:20 IST 2026
[2026-06-05 01:24:20,780.780 INFO    ] ================================================
[2026-06-05 01:24:21,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:24:21
[2026-06-05 01:24:21,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:24:22,188.188 INFO    ] Initializing speech engine...
[2026-06-05 01:24:22,197.197 INFO    ] 2026-06-05 01:24:22
[2026-06-05 01:24:22,489.489 INFO    ] 2026-06-05 01:24:22
[2026-06-05 01:24:22,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:24:22,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:24:22,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:24:22,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:24:22,869.869 INFO    ] time= 05/06/2026 01:24:22
[2026-06-05 01:24:22,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:24:22,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:24:22,995.995 INFO    ] No existing commands found in stream
[2026-06-05 01:24:28,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:24:28,011.011 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 01:24:28,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:24:28,631.631 INFO    ] Checking for system updates...
[2026-06-05 01:24:28,670.670 INFO    ] 200
[2026-06-05 01:24:28,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:28,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:24:28,734.734 INFO    ] No update needed
[2026-06-05 01:24:28,736.736 INFO    ] Checking for camera pi updates...
[2026-06-05 01:24:28,770.770 INFO    ] 200
[2026-06-05 01:24:28,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:28,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:24:28,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:24:28,868.868 INFO    ] No camera update needed
[2026-06-05 01:24:28,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:24:28,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:24:28,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:24:28,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:24:30,923.923 INFO    ] ================================================
[2026-06-05 01:24:30,938.938 INFO    ] Launching Daemon at Fri Jun  5 01:24:30 IST 2026
[2026-06-05 01:24:30,949.949 INFO    ] ================================================
[2026-06-05 01:24:31,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:24:31
[2026-06-05 01:24:32,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:24:32,464.464 INFO    ] Initializing speech engine...
[2026-06-05 01:24:32,472.472 INFO    ] 2026-06-05 01:24:32
[2026-06-05 01:24:32,767.767 INFO    ] 2026-06-05 01:24:32
[2026-06-05 01:24:32,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:24:33,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:24:33,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:24:33,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:24:33,240.240 INFO    ] time= 05/06/2026 01:24:33
[2026-06-05 01:24:33,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:24:33,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:24:33,391.391 INFO    ] No existing commands found in stream
[2026-06-05 01:24:38,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:24:38,408.408 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 01:24:39,587.587 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:24:39,590.590 INFO    ] Checking for system updates...
[2026-06-05 01:24:39,628.628 INFO    ] 200
[2026-06-05 01:24:39,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:39,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:24:39,687.687 INFO    ] No update needed
[2026-06-05 01:24:39,690.690 INFO    ] Checking for camera pi updates...
[2026-06-05 01:24:39,725.725 INFO    ] 200
[2026-06-05 01:24:39,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:39,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:24:39,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:24:39,821.821 INFO    ] No camera update needed
[2026-06-05 01:24:39,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:24:39,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:24:39,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:24:39,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:24:41,877.877 INFO    ] ================================================
[2026-06-05 01:24:41,892.892 INFO    ] Launching Daemon at Fri Jun  5 01:24:41 IST 2026
[2026-06-05 01:24:41,902.902 INFO    ] ================================================
[2026-06-05 01:24:42,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:24:42
[2026-06-05 01:24:43,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:24:43,309.309 INFO    ] Initializing speech engine...
[2026-06-05 01:24:43,318.318 INFO    ] 2026-06-05 01:24:43
[2026-06-05 01:24:43,612.612 INFO    ] 2026-06-05 01:24:43
[2026-06-05 01:24:43,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:24:43,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:24:43,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:24:44,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:24:44,027.027 INFO    ] time= 05/06/2026 01:24:44
[2026-06-05 01:24:44,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:24:44,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:24:44,113.113 INFO    ] No existing commands found in stream
[2026-06-05 01:24:49,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:24:49,127.127 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 01:24:50,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:24:50,202.202 INFO    ] Checking for system updates...
[2026-06-05 01:24:50,238.238 INFO    ] 200
[2026-06-05 01:24:50,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:50,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:24:50,297.297 INFO    ] No update needed
[2026-06-05 01:24:50,300.300 INFO    ] Checking for camera pi updates...
[2026-06-05 01:24:50,333.333 INFO    ] 200
[2026-06-05 01:24:50,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:24:50,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:24:50,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:24:50,428.428 INFO    ] No camera update needed
[2026-06-05 01:24:50,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:24:50,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:24:50,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:24:50,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:24:52,483.483 INFO    ] ================================================
[2026-06-05 01:24:52,498.498 INFO    ] Launching Daemon at Fri Jun  5 01:24:52 IST 2026
[2026-06-05 01:24:52,509.509 INFO    ] ================================================
[2026-06-05 01:24:53,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:24:53
[2026-06-05 01:24:53,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:24:53,967.967 INFO    ] Initializing speech engine...
[2026-06-05 01:24:53,991.991 INFO    ] 2026-06-05 01:24:53
[2026-06-05 01:24:54,264.264 INFO    ] 2026-06-05 01:24:54
[2026-06-05 01:24:54,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:24:54,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:24:54,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:24:54,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:24:54,641.641 INFO    ] time= 05/06/2026 01:24:54
[2026-06-05 01:24:54,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:24:54,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:24:54,764.764 INFO    ] No existing commands found in stream
[2026-06-05 01:24:59,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:24:59,779.779 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 01:25:01,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:25:01,216.216 INFO    ] Checking for system updates...
[2026-06-05 01:25:01,256.256 INFO    ] 200
[2026-06-05 01:25:01,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:01,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:25:01,314.314 INFO    ] No update needed
[2026-06-05 01:25:01,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 01:25:01,353.353 INFO    ] 200
[2026-06-05 01:25:01,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:01,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:25:01,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:25:01,527.527 INFO    ] No camera update needed
[2026-06-05 01:25:01,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:25:01,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:25:01,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:25:01,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:25:03,590.590 INFO    ] ================================================
[2026-06-05 01:25:03,607.607 INFO    ] Launching Daemon at Fri Jun  5 01:25:03 IST 2026
[2026-06-05 01:25:03,624.624 INFO    ] ================================================
[2026-06-05 01:25:04,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:25:04
[2026-06-05 01:25:04,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:25:05,251.251 INFO    ] Initializing speech engine...
[2026-06-05 01:25:05,260.260 INFO    ] 2026-06-05 01:25:05
[2026-06-05 01:25:05,544.544 INFO    ] 2026-06-05 01:25:05
[2026-06-05 01:25:05,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:25:05,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:25:05,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:25:05,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:25:06,024.024 INFO    ] time= 05/06/2026 01:25:05
[2026-06-05 01:25:06,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:25:06,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:25:06,236.236 INFO    ] No existing commands found in stream
[2026-06-05 01:25:11,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:25:11,259.259 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 01:25:13,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:25:13,849.849 INFO    ] Checking for system updates...
[2026-06-05 01:25:13,886.886 INFO    ] 200
[2026-06-05 01:25:13,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:13,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:25:13,947.947 INFO    ] No update needed
[2026-06-05 01:25:13,949.949 INFO    ] Checking for camera pi updates...
[2026-06-05 01:25:13,984.984 INFO    ] 200
[2026-06-05 01:25:13,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:14,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:25:14,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:25:14,087.087 INFO    ] No camera update needed
[2026-06-05 01:25:14,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:25:14,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:25:14,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:25:14,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:25:16,146.146 INFO    ] ================================================
[2026-06-05 01:25:16,162.162 INFO    ] Launching Daemon at Fri Jun  5 01:25:16 IST 2026
[2026-06-05 01:25:16,173.173 INFO    ] ================================================
[2026-06-05 01:25:16,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:25:16
[2026-06-05 01:25:17,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:25:17,584.584 INFO    ] Initializing speech engine...
[2026-06-05 01:25:17,596.596 INFO    ] 2026-06-05 01:25:17
[2026-06-05 01:25:17,861.861 INFO    ] 2026-06-05 01:25:17
[2026-06-05 01:25:17,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:25:18,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:25:18,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:25:18,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:25:18,334.334 INFO    ] time= 05/06/2026 01:25:18
[2026-06-05 01:25:18,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:25:18,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:25:18,502.502 INFO    ] No existing commands found in stream
[2026-06-05 01:25:23,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:25:23,530.530 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 01:25:27,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:25:27,847.847 INFO    ] Checking for system updates...
[2026-06-05 01:25:27,885.885 INFO    ] 200
[2026-06-05 01:25:27,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:27,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:25:27,952.952 INFO    ] No update needed
[2026-06-05 01:25:27,955.955 INFO    ] Checking for camera pi updates...
[2026-06-05 01:25:27,993.993 INFO    ] 200
[2026-06-05 01:25:27,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:28,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:25:28,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:25:28,089.089 INFO    ] No camera update needed
[2026-06-05 01:25:28,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:25:28,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:25:28,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:25:28,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:25:30,149.149 INFO    ] ================================================
[2026-06-05 01:25:30,165.165 INFO    ] Launching Daemon at Fri Jun  5 01:25:30 IST 2026
[2026-06-05 01:25:30,177.177 INFO    ] ================================================
[2026-06-05 01:25:30,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:25:30
[2026-06-05 01:25:31,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:25:31,632.632 INFO    ] Initializing speech engine...
[2026-06-05 01:25:31,650.650 INFO    ] 2026-06-05 01:25:31
[2026-06-05 01:25:31,926.926 INFO    ] 2026-06-05 01:25:31
[2026-06-05 01:25:31,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:25:32,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:25:32,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:25:32,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:25:32,348.348 INFO    ] time= 05/06/2026 01:25:32
[2026-06-05 01:25:32,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:25:32,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:25:32,481.481 INFO    ] No existing commands found in stream
[2026-06-05 01:25:37,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:25:37,492.492 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 01:25:41,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:25:41,035.035 INFO    ] Checking for system updates...
[2026-06-05 01:25:41,074.074 INFO    ] 200
[2026-06-05 01:25:41,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:41,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:25:41,141.141 INFO    ] No update needed
[2026-06-05 01:25:41,143.143 INFO    ] Checking for camera pi updates...
[2026-06-05 01:25:41,177.177 INFO    ] 200
[2026-06-05 01:25:41,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:41,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:25:41,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:25:41,274.274 INFO    ] No camera update needed
[2026-06-05 01:25:41,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:25:41,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:25:41,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:25:41,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:25:43,331.331 INFO    ] ================================================
[2026-06-05 01:25:43,347.347 INFO    ] Launching Daemon at Fri Jun  5 01:25:43 IST 2026
[2026-06-05 01:25:43,357.357 INFO    ] ================================================
[2026-06-05 01:25:43,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:25:43
[2026-06-05 01:25:44,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:25:44,820.820 INFO    ] Initializing speech engine...
[2026-06-05 01:25:44,831.831 INFO    ] 2026-06-05 01:25:44
[2026-06-05 01:25:45,078.078 INFO    ] 2026-06-05 01:25:45
[2026-06-05 01:25:45,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:25:45,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:25:45,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:25:45,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:25:45,550.550 INFO    ] time= 05/06/2026 01:25:45
[2026-06-05 01:25:45,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:25:45,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:25:45,698.698 INFO    ] No existing commands found in stream
[2026-06-05 01:25:50,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:25:50,712.712 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 01:25:54,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:25:54,458.458 INFO    ] Checking for system updates...
[2026-06-05 01:25:54,500.500 INFO    ] 200
[2026-06-05 01:25:54,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:54,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:25:54,563.563 INFO    ] No update needed
[2026-06-05 01:25:54,565.565 INFO    ] Checking for camera pi updates...
[2026-06-05 01:25:54,601.601 INFO    ] 200
[2026-06-05 01:25:54,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:25:54,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:25:54,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:25:54,698.698 INFO    ] No camera update needed
[2026-06-05 01:25:54,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:25:54,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:25:54,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:25:54,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:25:56,760.760 INFO    ] ================================================
[2026-06-05 01:25:56,776.776 INFO    ] Launching Daemon at Fri Jun  5 01:25:56 IST 2026
[2026-06-05 01:25:56,786.786 INFO    ] ================================================
[2026-06-05 01:25:57,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:25:57
[2026-06-05 01:25:58,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:25:58,440.440 INFO    ] Initializing speech engine...
[2026-06-05 01:25:58,450.450 INFO    ] 2026-06-05 01:25:58
[2026-06-05 01:25:58,732.732 INFO    ] 2026-06-05 01:25:58
[2026-06-05 01:25:58,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:25:59,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:25:59,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:25:59,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:25:59,293.293 INFO    ] time= 05/06/2026 01:25:59
[2026-06-05 01:25:59,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:25:59,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:25:59,445.445 INFO    ] No existing commands found in stream
[2026-06-05 01:26:04,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:26:04,471.471 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 01:26:05,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:26:05,648.648 INFO    ] Checking for system updates...
[2026-06-05 01:26:05,685.685 INFO    ] 200
[2026-06-05 01:26:05,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:05,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:26:05,752.752 INFO    ] No update needed
[2026-06-05 01:26:05,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 01:26:05,793.793 INFO    ] 200
[2026-06-05 01:26:05,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:05,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:26:05,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:26:05,894.894 INFO    ] No camera update needed
[2026-06-05 01:26:05,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:26:05,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:26:05,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:26:05,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:26:07,952.952 INFO    ] ================================================
[2026-06-05 01:26:07,968.968 INFO    ] Launching Daemon at Fri Jun  5 01:26:07 IST 2026
[2026-06-05 01:26:07,980.980 INFO    ] ================================================
[2026-06-05 01:26:08,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:26:08
[2026-06-05 01:26:09,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:26:09,528.528 INFO    ] Initializing speech engine...
[2026-06-05 01:26:09,540.540 INFO    ] 2026-06-05 01:26:09
[2026-06-05 01:26:09,796.796 INFO    ] 2026-06-05 01:26:09
[2026-06-05 01:26:09,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:26:10,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:26:10,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:26:10,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:26:10,261.261 INFO    ] time= 05/06/2026 01:26:10
[2026-06-05 01:26:10,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:26:10,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:26:10,413.413 INFO    ] No existing commands found in stream
[2026-06-05 01:26:15,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:26:15,427.427 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 01:26:19,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:26:19,327.327 INFO    ] Checking for system updates...
[2026-06-05 01:26:19,368.368 INFO    ] 200
[2026-06-05 01:26:19,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:19,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:26:19,427.427 INFO    ] No update needed
[2026-06-05 01:26:19,430.430 INFO    ] Checking for camera pi updates...
[2026-06-05 01:26:19,468.468 INFO    ] 200
[2026-06-05 01:26:19,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:19,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:26:19,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:26:19,555.555 INFO    ] No camera update needed
[2026-06-05 01:26:19,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:26:19,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:26:19,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:26:19,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:26:21,612.612 INFO    ] ================================================
[2026-06-05 01:26:21,627.627 INFO    ] Launching Daemon at Fri Jun  5 01:26:21 IST 2026
[2026-06-05 01:26:21,638.638 INFO    ] ================================================
[2026-06-05 01:26:22,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:26:22
[2026-06-05 01:26:22,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:26:23,093.093 INFO    ] Initializing speech engine...
[2026-06-05 01:26:23,101.101 INFO    ] 2026-06-05 01:26:23
[2026-06-05 01:26:23,361.361 INFO    ] 2026-06-05 01:26:23
[2026-06-05 01:26:23,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:26:23,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:26:23,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:26:23,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:26:23,835.835 INFO    ] time= 05/06/2026 01:26:23
[2026-06-05 01:26:23,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:26:23,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:26:24,017.017 INFO    ] No existing commands found in stream
[2026-06-05 01:26:29,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:26:29,030.030 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 01:26:33,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:26:33,048.048 INFO    ] Checking for system updates...
[2026-06-05 01:26:33,093.093 INFO    ] 200
[2026-06-05 01:26:33,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:33,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:26:33,172.172 INFO    ] No update needed
[2026-06-05 01:26:33,175.175 INFO    ] Checking for camera pi updates...
[2026-06-05 01:26:33,210.210 INFO    ] 200
[2026-06-05 01:26:33,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:33,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:26:33,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:26:33,291.291 INFO    ] No camera update needed
[2026-06-05 01:26:33,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:26:33,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:26:33,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:26:33,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:26:35,347.347 INFO    ] ================================================
[2026-06-05 01:26:35,362.362 INFO    ] Launching Daemon at Fri Jun  5 01:26:35 IST 2026
[2026-06-05 01:26:35,373.373 INFO    ] ================================================
[2026-06-05 01:26:35,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:26:35
[2026-06-05 01:26:36,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:26:36,841.841 INFO    ] Initializing speech engine...
[2026-06-05 01:26:36,848.848 INFO    ] 2026-06-05 01:26:36
[2026-06-05 01:26:37,110.110 INFO    ] 2026-06-05 01:26:37
[2026-06-05 01:26:37,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:26:37,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:26:37,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:26:37,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:26:37,570.570 INFO    ] time= 05/06/2026 01:26:37
[2026-06-05 01:26:37,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:26:37,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:26:37,791.791 INFO    ] No existing commands found in stream
[2026-06-05 01:26:42,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:26:42,821.821 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 01:26:43,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:26:43,715.715 INFO    ] Checking for system updates...
[2026-06-05 01:26:43,751.751 INFO    ] 200
[2026-06-05 01:26:43,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:43,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:26:43,809.809 INFO    ] No update needed
[2026-06-05 01:26:43,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 01:26:43,846.846 INFO    ] 200
[2026-06-05 01:26:43,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:43,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:26:43,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:26:43,940.940 INFO    ] No camera update needed
[2026-06-05 01:26:43,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:26:43,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:26:43,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:26:43,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:26:46,997.997 INFO    ] ================================================
[2026-06-05 01:26:46,011.011 INFO    ] Launching Daemon at Fri Jun  5 01:26:46 IST 2026
[2026-06-05 01:26:46,022.022 INFO    ] ================================================
[2026-06-05 01:26:46,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:26:46
[2026-06-05 01:26:47,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:26:47,456.456 INFO    ] Initializing speech engine...
[2026-06-05 01:26:47,471.471 INFO    ] 2026-06-05 01:26:47
[2026-06-05 01:26:47,753.753 INFO    ] 2026-06-05 01:26:47
[2026-06-05 01:26:47,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:26:47,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:26:48,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:26:48,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:26:48,133.133 INFO    ] time= 05/06/2026 01:26:48
[2026-06-05 01:26:48,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:26:48,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:26:48,256.256 INFO    ] No existing commands found in stream
[2026-06-05 01:26:53,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:26:53,269.269 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 01:26:54,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:26:54,700.700 INFO    ] Checking for system updates...
[2026-06-05 01:26:54,739.739 INFO    ] 200
[2026-06-05 01:26:54,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:54,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:26:54,803.803 INFO    ] No update needed
[2026-06-05 01:26:54,806.806 INFO    ] Checking for camera pi updates...
[2026-06-05 01:26:54,843.843 INFO    ] 200
[2026-06-05 01:26:54,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:26:54,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:26:54,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:26:54,940.940 INFO    ] No camera update needed
[2026-06-05 01:26:54,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:26:54,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:26:54,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:26:54,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:26:57,995.995 INFO    ] ================================================
[2026-06-05 01:26:57,010.010 INFO    ] Launching Daemon at Fri Jun  5 01:26:57 IST 2026
[2026-06-05 01:26:57,021.021 INFO    ] ================================================
[2026-06-05 01:26:57,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:26:57
[2026-06-05 01:26:58,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:26:58,478.478 INFO    ] Initializing speech engine...
[2026-06-05 01:26:58,490.490 INFO    ] 2026-06-05 01:26:58
[2026-06-05 01:26:58,752.752 INFO    ] 2026-06-05 01:26:58
[2026-06-05 01:26:58,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:26:59,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:26:59,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:26:59,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:26:59,219.219 INFO    ] time= 05/06/2026 01:26:59
[2026-06-05 01:26:59,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:26:59,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:26:59,369.369 INFO    ] No existing commands found in stream
[2026-06-05 01:27:04,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:27:04,404.404 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 01:27:05,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:27:05,369.369 INFO    ] Checking for system updates...
[2026-06-05 01:27:05,405.405 INFO    ] 200
[2026-06-05 01:27:05,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:05,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:27:05,463.463 INFO    ] No update needed
[2026-06-05 01:27:05,466.466 INFO    ] Checking for camera pi updates...
[2026-06-05 01:27:05,500.500 INFO    ] 200
[2026-06-05 01:27:05,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:05,546.546 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:27:05,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:27:05,595.595 INFO    ] No camera update needed
[2026-06-05 01:27:05,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:27:05,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:27:05,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:27:05,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:27:07,655.655 INFO    ] ================================================
[2026-06-05 01:27:07,670.670 INFO    ] Launching Daemon at Fri Jun  5 01:27:07 IST 2026
[2026-06-05 01:27:07,681.681 INFO    ] ================================================
[2026-06-05 01:27:08,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:27:08
[2026-06-05 01:27:09,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:27:09,326.326 INFO    ] Initializing speech engine...
[2026-06-05 01:27:09,340.340 INFO    ] 2026-06-05 01:27:09
[2026-06-05 01:27:09,593.593 INFO    ] 2026-06-05 01:27:09
[2026-06-05 01:27:09,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:27:09,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:27:09,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:27:10,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:27:10,074.074 INFO    ] time= 05/06/2026 01:27:10
[2026-06-05 01:27:10,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:27:10,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:27:10,278.278 INFO    ] No existing commands found in stream
[2026-06-05 01:27:15,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:27:15,302.302 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 01:27:17,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:27:17,528.528 INFO    ] Checking for system updates...
[2026-06-05 01:27:17,564.564 INFO    ] 200
[2026-06-05 01:27:17,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:17,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:27:17,622.622 INFO    ] No update needed
[2026-06-05 01:27:17,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 01:27:17,659.659 INFO    ] 200
[2026-06-05 01:27:17,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:17,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:27:17,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:27:17,749.749 INFO    ] No camera update needed
[2026-06-05 01:27:17,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:27:17,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:27:17,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:27:17,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:27:19,807.807 INFO    ] ================================================
[2026-06-05 01:27:19,823.823 INFO    ] Launching Daemon at Fri Jun  5 01:27:19 IST 2026
[2026-06-05 01:27:19,834.834 INFO    ] ================================================
[2026-06-05 01:27:20,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:27:20
[2026-06-05 01:27:21,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:27:21,311.311 INFO    ] Initializing speech engine...
[2026-06-05 01:27:21,319.319 INFO    ] 2026-06-05 01:27:21
[2026-06-05 01:27:21,609.609 INFO    ] 2026-06-05 01:27:21
[2026-06-05 01:27:21,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:27:21,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:27:21,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:27:22,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:27:22,085.085 INFO    ] time= 05/06/2026 01:27:22
[2026-06-05 01:27:22,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:27:22,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:27:22,288.288 INFO    ] No existing commands found in stream
[2026-06-05 01:27:27,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:27:27,317.317 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 01:27:30,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:27:30,533.533 INFO    ] Checking for system updates...
[2026-06-05 01:27:30,572.572 INFO    ] 200
[2026-06-05 01:27:30,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:30,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:27:30,638.638 INFO    ] No update needed
[2026-06-05 01:27:30,640.640 INFO    ] Checking for camera pi updates...
[2026-06-05 01:27:30,675.675 INFO    ] 200
[2026-06-05 01:27:30,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:30,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:27:30,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:27:30,767.767 INFO    ] No camera update needed
[2026-06-05 01:27:30,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:27:30,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:27:30,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:27:30,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:27:32,824.824 INFO    ] ================================================
[2026-06-05 01:27:32,841.841 INFO    ] Launching Daemon at Fri Jun  5 01:27:32 IST 2026
[2026-06-05 01:27:32,853.853 INFO    ] ================================================
[2026-06-05 01:27:33,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:27:33
[2026-06-05 01:27:34,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:27:34,434.434 INFO    ] Initializing speech engine...
[2026-06-05 01:27:34,442.442 INFO    ] 2026-06-05 01:27:34
[2026-06-05 01:27:34,695.695 INFO    ] 2026-06-05 01:27:34
[2026-06-05 01:27:34,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:27:34,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:27:34,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:27:35,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:27:35,072.072 INFO    ] time= 05/06/2026 01:27:35
[2026-06-05 01:27:35,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:27:35,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:27:35,148.148 INFO    ] No existing commands found in stream
[2026-06-05 01:27:40,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:27:40,164.164 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 01:27:41,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:27:41,293.293 INFO    ] Checking for system updates...
[2026-06-05 01:27:41,333.333 INFO    ] 200
[2026-06-05 01:27:41,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:41,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:27:41,391.391 INFO    ] No update needed
[2026-06-05 01:27:41,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 01:27:41,428.428 INFO    ] 200
[2026-06-05 01:27:41,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:41,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:27:41,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:27:41,530.530 INFO    ] No camera update needed
[2026-06-05 01:27:41,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:27:41,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:27:41,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:27:41,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:27:43,586.586 INFO    ] ================================================
[2026-06-05 01:27:43,601.601 INFO    ] Launching Daemon at Fri Jun  5 01:27:43 IST 2026
[2026-06-05 01:27:43,611.611 INFO    ] ================================================
[2026-06-05 01:27:44,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:27:44
[2026-06-05 01:27:44,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:27:45,013.013 INFO    ] Initializing speech engine...
[2026-06-05 01:27:45,037.037 INFO    ] 2026-06-05 01:27:45
[2026-06-05 01:27:45,293.293 INFO    ] 2026-06-05 01:27:45
[2026-06-05 01:27:45,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:27:45,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:27:45,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:27:45,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:27:45,670.670 INFO    ] time= 05/06/2026 01:27:45
[2026-06-05 01:27:45,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:27:45,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:27:45,839.839 INFO    ] No existing commands found in stream
[2026-06-05 01:27:50,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:27:50,867.867 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 01:27:53,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:27:53,528.528 INFO    ] Checking for system updates...
[2026-06-05 01:27:53,565.565 INFO    ] 200
[2026-06-05 01:27:53,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:53,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:27:53,625.625 INFO    ] No update needed
[2026-06-05 01:27:53,628.628 INFO    ] Checking for camera pi updates...
[2026-06-05 01:27:53,668.668 INFO    ] 200
[2026-06-05 01:27:53,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:27:53,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:27:53,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:27:53,764.764 INFO    ] No camera update needed
[2026-06-05 01:27:53,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:27:53,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:27:53,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:27:53,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:27:55,825.825 INFO    ] ================================================
[2026-06-05 01:27:55,844.844 INFO    ] Launching Daemon at Fri Jun  5 01:27:55 IST 2026
[2026-06-05 01:27:55,854.854 INFO    ] ================================================
[2026-06-05 01:27:56,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:27:56
[2026-06-05 01:27:57,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:27:57,528.528 INFO    ] Initializing speech engine...
[2026-06-05 01:27:57,541.541 INFO    ] 2026-06-05 01:27:57
[2026-06-05 01:27:57,858.858 INFO    ] 2026-06-05 01:27:57
[2026-06-05 01:27:57,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:27:58,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:27:58,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:27:58,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:27:58,368.368 INFO    ] time= 05/06/2026 01:27:58
[2026-06-05 01:27:58,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:27:58,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:27:58,523.523 INFO    ] No existing commands found in stream
[2026-06-05 01:28:03,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:28:03,539.539 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 01:28:06,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:28:06,962.962 INFO    ] Checking for system updates...
[2026-06-05 01:28:07,004.004 INFO    ] 200
[2026-06-05 01:28:07,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:07,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:28:07,074.074 INFO    ] No update needed
[2026-06-05 01:28:07,078.078 INFO    ] Checking for camera pi updates...
[2026-06-05 01:28:07,113.113 INFO    ] 200
[2026-06-05 01:28:07,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:07,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:28:07,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:28:07,210.210 INFO    ] No camera update needed
[2026-06-05 01:28:07,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:28:07,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:28:07,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:28:07,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:28:09,268.268 INFO    ] ================================================
[2026-06-05 01:28:09,284.284 INFO    ] Launching Daemon at Fri Jun  5 01:28:09 IST 2026
[2026-06-05 01:28:09,295.295 INFO    ] ================================================
[2026-06-05 01:28:09,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:28:09
[2026-06-05 01:28:10,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:28:10,739.739 INFO    ] Initializing speech engine...
[2026-06-05 01:28:10,752.752 INFO    ] 2026-06-05 01:28:10
[2026-06-05 01:28:11,019.019 INFO    ] 2026-06-05 01:28:11
[2026-06-05 01:28:11,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:28:11,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:28:11,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:28:11,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:28:11,478.478 INFO    ] time= 05/06/2026 01:28:11
[2026-06-05 01:28:11,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:28:11,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:28:11,681.681 INFO    ] No existing commands found in stream
[2026-06-05 01:28:16,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:28:16,696.696 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 01:28:18,132.132 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:28:18,135.135 INFO    ] Checking for system updates...
[2026-06-05 01:28:18,172.172 INFO    ] 200
[2026-06-05 01:28:18,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:18,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:28:18,229.229 INFO    ] No update needed
[2026-06-05 01:28:18,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 01:28:18,270.270 INFO    ] 200
[2026-06-05 01:28:18,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:18,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:28:18,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:28:18,362.362 INFO    ] No camera update needed
[2026-06-05 01:28:18,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:28:18,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:28:18,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:28:18,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:28:20,418.418 INFO    ] ================================================
[2026-06-05 01:28:20,434.434 INFO    ] Launching Daemon at Fri Jun  5 01:28:20 IST 2026
[2026-06-05 01:28:20,445.445 INFO    ] ================================================
[2026-06-05 01:28:21,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:28:21
[2026-06-05 01:28:21,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:28:22,105.105 INFO    ] Initializing speech engine...
[2026-06-05 01:28:22,114.114 INFO    ] 2026-06-05 01:28:22
[2026-06-05 01:28:22,407.407 INFO    ] 2026-06-05 01:28:22
[2026-06-05 01:28:22,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:28:22,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:28:22,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:28:22,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:28:22,888.888 INFO    ] time= 05/06/2026 01:28:22
[2026-06-05 01:28:22,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:28:22,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:28:23,086.086 INFO    ] No existing commands found in stream
[2026-06-05 01:28:28,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:28:28,123.123 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 01:28:32,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:28:32,050.050 INFO    ] Checking for system updates...
[2026-06-05 01:28:32,091.091 INFO    ] 200
[2026-06-05 01:28:32,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:32,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:28:32,156.156 INFO    ] No update needed
[2026-06-05 01:28:32,159.159 INFO    ] Checking for camera pi updates...
[2026-06-05 01:28:32,196.196 INFO    ] 200
[2026-06-05 01:28:32,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:32,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:28:32,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:28:32,282.282 INFO    ] No camera update needed
[2026-06-05 01:28:32,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:28:32,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:28:32,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:28:32,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:28:34,350.350 INFO    ] ================================================
[2026-06-05 01:28:34,366.366 INFO    ] Launching Daemon at Fri Jun  5 01:28:34 IST 2026
[2026-06-05 01:28:34,376.376 INFO    ] ================================================
[2026-06-05 01:28:34,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:28:34
[2026-06-05 01:28:35,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:28:35,798.798 INFO    ] Initializing speech engine...
[2026-06-05 01:28:35,804.804 INFO    ] 2026-06-05 01:28:35
[2026-06-05 01:28:36,108.108 INFO    ] 2026-06-05 01:28:36
[2026-06-05 01:28:36,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:28:36,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:28:36,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:28:36,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:28:36,513.513 INFO    ] time= 05/06/2026 01:28:36
[2026-06-05 01:28:36,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:28:36,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:28:36,624.624 INFO    ] No existing commands found in stream
[2026-06-05 01:28:41,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:28:41,640.640 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 01:28:43,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:28:43,448.448 INFO    ] Checking for system updates...
[2026-06-05 01:28:43,485.485 INFO    ] 200
[2026-06-05 01:28:43,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:43,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:28:43,545.545 INFO    ] No update needed
[2026-06-05 01:28:43,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 01:28:43,583.583 INFO    ] 200
[2026-06-05 01:28:43,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:43,628.628 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:28:43,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:28:43,775.775 INFO    ] No camera update needed
[2026-06-05 01:28:43,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:28:43,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:28:43,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:28:43,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:28:45,836.836 INFO    ] ================================================
[2026-06-05 01:28:45,851.851 INFO    ] Launching Daemon at Fri Jun  5 01:28:45 IST 2026
[2026-06-05 01:28:45,862.862 INFO    ] ================================================
[2026-06-05 01:28:46,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:28:46
[2026-06-05 01:28:47,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:28:47,338.338 INFO    ] Initializing speech engine...
[2026-06-05 01:28:47,347.347 INFO    ] 2026-06-05 01:28:47
[2026-06-05 01:28:47,620.620 INFO    ] 2026-06-05 01:28:47
[2026-06-05 01:28:47,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:28:47,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:28:47,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:28:47,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:28:48,002.002 INFO    ] time= 05/06/2026 01:28:47
[2026-06-05 01:28:48,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:28:48,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:28:48,128.128 INFO    ] No existing commands found in stream
[2026-06-05 01:28:53,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:28:53,142.142 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 01:28:54,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:28:54,376.376 INFO    ] Checking for system updates...
[2026-06-05 01:28:54,416.416 INFO    ] 200
[2026-06-05 01:28:54,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:54,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:28:54,473.473 INFO    ] No update needed
[2026-06-05 01:28:54,476.476 INFO    ] Checking for camera pi updates...
[2026-06-05 01:28:54,509.509 INFO    ] 200
[2026-06-05 01:28:54,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:28:54,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:28:54,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:28:54,609.609 INFO    ] No camera update needed
[2026-06-05 01:28:54,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:28:54,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:28:54,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:28:54,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:28:56,667.667 INFO    ] ================================================
[2026-06-05 01:28:56,683.683 INFO    ] Launching Daemon at Fri Jun  5 01:28:56 IST 2026
[2026-06-05 01:28:56,694.694 INFO    ] ================================================
[2026-06-05 01:28:57,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:28:57
[2026-06-05 01:28:57,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:28:58,121.121 INFO    ] Initializing speech engine...
[2026-06-05 01:28:58,127.127 INFO    ] 2026-06-05 01:28:58
[2026-06-05 01:28:58,427.427 INFO    ] 2026-06-05 01:28:58
[2026-06-05 01:28:58,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:28:58,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:28:58,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:28:58,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:28:58,784.784 INFO    ] time= 05/06/2026 01:28:58
[2026-06-05 01:28:58,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:28:58,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:28:58,864.864 INFO    ] No existing commands found in stream
[2026-06-05 01:29:03,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:29:03,879.879 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 01:29:07,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:29:07,551.551 INFO    ] Checking for system updates...
[2026-06-05 01:29:07,587.587 INFO    ] 200
[2026-06-05 01:29:07,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:07,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:29:07,645.645 INFO    ] No update needed
[2026-06-05 01:29:07,648.648 INFO    ] Checking for camera pi updates...
[2026-06-05 01:29:07,681.681 INFO    ] 200
[2026-06-05 01:29:07,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:07,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:29:07,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:29:07,789.789 INFO    ] No camera update needed
[2026-06-05 01:29:07,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:29:07,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:29:07,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:29:07,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:29:09,845.845 INFO    ] ================================================
[2026-06-05 01:29:09,860.860 INFO    ] Launching Daemon at Fri Jun  5 01:29:09 IST 2026
[2026-06-05 01:29:09,872.872 INFO    ] ================================================
[2026-06-05 01:29:10,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:29:10
[2026-06-05 01:29:11,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:29:11,311.311 INFO    ] Initializing speech engine...
[2026-06-05 01:29:11,317.317 INFO    ] 2026-06-05 01:29:11
[2026-06-05 01:29:11,579.579 INFO    ] 2026-06-05 01:29:11
[2026-06-05 01:29:11,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:29:11,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:29:11,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:29:11,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:29:12,019.019 INFO    ] time= 05/06/2026 01:29:11
[2026-06-05 01:29:12,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:29:12,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:29:12,184.184 INFO    ] No existing commands found in stream
[2026-06-05 01:29:17,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:29:17,199.199 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 01:29:17,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:29:17,883.883 INFO    ] Checking for system updates...
[2026-06-05 01:29:17,919.919 INFO    ] 200
[2026-06-05 01:29:17,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:17,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:29:17,981.981 INFO    ] No update needed
[2026-06-05 01:29:17,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 01:29:18,021.021 INFO    ] 200
[2026-06-05 01:29:18,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:18,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:29:18,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:29:18,121.121 INFO    ] No camera update needed
[2026-06-05 01:29:18,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:29:18,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:29:18,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:29:18,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:29:20,179.179 INFO    ] ================================================
[2026-06-05 01:29:20,195.195 INFO    ] Launching Daemon at Fri Jun  5 01:29:20 IST 2026
[2026-06-05 01:29:20,206.206 INFO    ] ================================================
[2026-06-05 01:29:20,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:29:20
[2026-06-05 01:29:21,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:29:21,659.659 INFO    ] Initializing speech engine...
[2026-06-05 01:29:21,665.665 INFO    ] 2026-06-05 01:29:21
[2026-06-05 01:29:21,965.965 INFO    ] 2026-06-05 01:29:21
[2026-06-05 01:29:22,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:29:22,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:29:22,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:29:22,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:29:22,386.386 INFO    ] time= 05/06/2026 01:29:22
[2026-06-05 01:29:22,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:29:22,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:29:22,475.475 INFO    ] No existing commands found in stream
[2026-06-05 01:29:27,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:29:27,493.493 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 01:29:28,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:29:28,216.216 INFO    ] Checking for system updates...
[2026-06-05 01:29:28,253.253 INFO    ] 200
[2026-06-05 01:29:28,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:28,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:29:28,313.313 INFO    ] No update needed
[2026-06-05 01:29:28,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 01:29:28,354.354 INFO    ] 200
[2026-06-05 01:29:28,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:28,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:29:28,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:29:28,450.450 INFO    ] No camera update needed
[2026-06-05 01:29:28,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:29:28,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:29:28,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:29:28,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:29:30,509.509 INFO    ] ================================================
[2026-06-05 01:29:30,525.525 INFO    ] Launching Daemon at Fri Jun  5 01:29:30 IST 2026
[2026-06-05 01:29:30,536.536 INFO    ] ================================================
[2026-06-05 01:29:31,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:29:31
[2026-06-05 01:29:31,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:29:32,130.130 INFO    ] Initializing speech engine...
[2026-06-05 01:29:32,138.138 INFO    ] 2026-06-05 01:29:32
[2026-06-05 01:29:32,429.429 INFO    ] 2026-06-05 01:29:32
[2026-06-05 01:29:32,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:29:32,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:29:32,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:29:32,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:29:32,936.936 INFO    ] time= 05/06/2026 01:29:32
[2026-06-05 01:29:32,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:29:33,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:29:33,153.153 INFO    ] No existing commands found in stream
[2026-06-05 01:29:38,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:29:38,193.193 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 01:29:39,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:29:39,504.504 INFO    ] Checking for system updates...
[2026-06-05 01:29:39,541.541 INFO    ] 200
[2026-06-05 01:29:39,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:39,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:29:39,601.601 INFO    ] No update needed
[2026-06-05 01:29:39,604.604 INFO    ] Checking for camera pi updates...
[2026-06-05 01:29:39,639.639 INFO    ] 200
[2026-06-05 01:29:39,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:39,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:29:39,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:29:39,738.738 INFO    ] No camera update needed
[2026-06-05 01:29:39,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:29:39,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:29:39,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:29:39,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:29:41,797.797 INFO    ] ================================================
[2026-06-05 01:29:41,813.813 INFO    ] Launching Daemon at Fri Jun  5 01:29:41 IST 2026
[2026-06-05 01:29:41,823.823 INFO    ] ================================================
[2026-06-05 01:29:42,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:29:42
[2026-06-05 01:29:43,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:29:43,441.441 INFO    ] Initializing speech engine...
[2026-06-05 01:29:43,454.454 INFO    ] 2026-06-05 01:29:43
[2026-06-05 01:29:43,732.732 INFO    ] 2026-06-05 01:29:43
[2026-06-05 01:29:43,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:29:44,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:29:44,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:29:44,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:29:44,272.272 INFO    ] time= 05/06/2026 01:29:44
[2026-06-05 01:29:44,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:29:44,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:29:44,429.429 INFO    ] No existing commands found in stream
[2026-06-05 01:29:49,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:29:49,449.449 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 01:29:53,156.156 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:29:53,159.159 INFO    ] Checking for system updates...
[2026-06-05 01:29:53,197.197 INFO    ] 200
[2026-06-05 01:29:53,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:53,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:29:53,262.262 INFO    ] No update needed
[2026-06-05 01:29:53,265.265 INFO    ] Checking for camera pi updates...
[2026-06-05 01:29:53,300.300 INFO    ] 200
[2026-06-05 01:29:53,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:29:53,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:29:53,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:29:53,393.393 INFO    ] No camera update needed
[2026-06-05 01:29:53,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:29:53,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:29:53,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:29:53,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:29:55,453.453 INFO    ] ================================================
[2026-06-05 01:29:55,468.468 INFO    ] Launching Daemon at Fri Jun  5 01:29:55 IST 2026
[2026-06-05 01:29:55,479.479 INFO    ] ================================================
[2026-06-05 01:29:56,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:29:56
[2026-06-05 01:29:56,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:29:56,901.901 INFO    ] Initializing speech engine...
[2026-06-05 01:29:56,910.910 INFO    ] 2026-06-05 01:29:56
[2026-06-05 01:29:57,205.205 INFO    ] 2026-06-05 01:29:57
[2026-06-05 01:29:57,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:29:57,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:29:57,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:29:57,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:29:57,692.692 INFO    ] time= 05/06/2026 01:29:57
[2026-06-05 01:29:57,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:29:57,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:29:57,866.866 INFO    ] No existing commands found in stream
[2026-06-05 01:30:02,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:30:02,887.887 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 01:30:08,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:30:08,280.280 INFO    ] Checking for system updates...
[2026-06-05 01:30:08,317.317 INFO    ] 200
[2026-06-05 01:30:08,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:08,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:30:08,377.377 INFO    ] No update needed
[2026-06-05 01:30:08,380.380 INFO    ] Checking for camera pi updates...
[2026-06-05 01:30:08,415.415 INFO    ] 200
[2026-06-05 01:30:08,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:08,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:30:08,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:30:08,508.508 INFO    ] No camera update needed
[2026-06-05 01:30:08,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:30:08,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:30:08,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:30:08,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:30:10,567.567 INFO    ] ================================================
[2026-06-05 01:30:10,582.582 INFO    ] Launching Daemon at Fri Jun  5 01:30:10 IST 2026
[2026-06-05 01:30:10,593.593 INFO    ] ================================================
[2026-06-05 01:30:11,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:30:11
[2026-06-05 01:30:11,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:30:12,018.018 INFO    ] Initializing speech engine...
[2026-06-05 01:30:12,027.027 INFO    ] 2026-06-05 01:30:12
[2026-06-05 01:30:12,284.284 INFO    ] 2026-06-05 01:30:12
[2026-06-05 01:30:12,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:30:12,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:30:12,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:30:12,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:30:12,747.747 INFO    ] time= 05/06/2026 01:30:12
[2026-06-05 01:30:12,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:30:12,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:30:12,889.889 INFO    ] No existing commands found in stream
[2026-06-05 01:30:17,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:30:17,903.903 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 01:30:20,647.647 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:30:20,649.649 INFO    ] Checking for system updates...
[2026-06-05 01:30:20,685.685 INFO    ] 200
[2026-06-05 01:30:20,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:20,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:30:20,744.744 INFO    ] No update needed
[2026-06-05 01:30:20,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 01:30:20,780.780 INFO    ] 200
[2026-06-05 01:30:20,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:20,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:30:20,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:30:20,881.881 INFO    ] No camera update needed
[2026-06-05 01:30:20,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:30:20,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:30:20,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:30:20,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:30:22,938.938 INFO    ] ================================================
[2026-06-05 01:30:22,954.954 INFO    ] Launching Daemon at Fri Jun  5 01:30:22 IST 2026
[2026-06-05 01:30:22,966.966 INFO    ] ================================================
[2026-06-05 01:30:23,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:30:23
[2026-06-05 01:30:24,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:30:24,369.369 INFO    ] Initializing speech engine...
[2026-06-05 01:30:24,391.391 INFO    ] 2026-06-05 01:30:24
[2026-06-05 01:30:24,648.648 INFO    ] 2026-06-05 01:30:24
[2026-06-05 01:30:24,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:30:24,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:30:24,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:30:24,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:30:25,006.006 INFO    ] time= 05/06/2026 01:30:24
[2026-06-05 01:30:25,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:30:25,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:30:25,111.111 INFO    ] No existing commands found in stream
[2026-06-05 01:30:30,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:30:30,126.126 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 01:30:33,819.819 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:30:33,822.822 INFO    ] Checking for system updates...
[2026-06-05 01:30:33,865.865 INFO    ] 200
[2026-06-05 01:30:33,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:33,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:30:33,942.942 INFO    ] No update needed
[2026-06-05 01:30:33,944.944 INFO    ] Checking for camera pi updates...
[2026-06-05 01:30:33,994.994 INFO    ] 200
[2026-06-05 01:30:33,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:34,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:30:34,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:30:34,099.099 INFO    ] No camera update needed
[2026-06-05 01:30:34,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:30:34,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:30:34,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:30:34,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:30:36,159.159 INFO    ] ================================================
[2026-06-05 01:30:36,174.174 INFO    ] Launching Daemon at Fri Jun  5 01:30:36 IST 2026
[2026-06-05 01:30:36,186.186 INFO    ] ================================================
[2026-06-05 01:30:36,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:30:36
[2026-06-05 01:30:37,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:30:37,741.741 INFO    ] Initializing speech engine...
[2026-06-05 01:30:37,749.749 INFO    ] 2026-06-05 01:30:37
[2026-06-05 01:30:38,025.025 INFO    ] 2026-06-05 01:30:38
[2026-06-05 01:30:38,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:30:38,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:30:38,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:30:38,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:30:38,477.477 INFO    ] time= 05/06/2026 01:30:38
[2026-06-05 01:30:38,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:30:38,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:30:38,655.655 INFO    ] No existing commands found in stream
[2026-06-05 01:30:43,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:30:43,678.678 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 01:30:45,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:30:45,369.369 INFO    ] Checking for system updates...
[2026-06-05 01:30:45,406.406 INFO    ] 200
[2026-06-05 01:30:45,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:45,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:30:45,468.468 INFO    ] No update needed
[2026-06-05 01:30:45,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 01:30:45,506.506 INFO    ] 200
[2026-06-05 01:30:45,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:45,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:30:45,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:30:45,604.604 INFO    ] No camera update needed
[2026-06-05 01:30:45,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:30:45,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:30:45,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:30:45,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:30:47,663.663 INFO    ] ================================================
[2026-06-05 01:30:47,679.679 INFO    ] Launching Daemon at Fri Jun  5 01:30:47 IST 2026
[2026-06-05 01:30:47,690.690 INFO    ] ================================================
[2026-06-05 01:30:48,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:30:48
[2026-06-05 01:30:48,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:30:49,122.122 INFO    ] Initializing speech engine...
[2026-06-05 01:30:49,136.136 INFO    ] 2026-06-05 01:30:49
[2026-06-05 01:30:49,400.400 INFO    ] 2026-06-05 01:30:49
[2026-06-05 01:30:49,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:30:49,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:30:49,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:30:49,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:30:49,769.769 INFO    ] time= 05/06/2026 01:30:49
[2026-06-05 01:30:49,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:30:49,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:30:49,946.946 INFO    ] No existing commands found in stream
[2026-06-05 01:30:54,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:30:54,970.970 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 01:30:58,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:30:58,136.136 INFO    ] Checking for system updates...
[2026-06-05 01:30:58,172.172 INFO    ] 200
[2026-06-05 01:30:58,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:58,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:30:58,233.233 INFO    ] No update needed
[2026-06-05 01:30:58,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 01:30:58,270.270 INFO    ] 200
[2026-06-05 01:30:58,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:30:58,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:30:58,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:30:58,470.470 INFO    ] No camera update needed
[2026-06-05 01:30:58,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:30:58,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:30:58,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:30:58,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:31:00,526.526 INFO    ] ================================================
[2026-06-05 01:31:00,542.542 INFO    ] Launching Daemon at Fri Jun  5 01:31:00 IST 2026
[2026-06-05 01:31:00,553.553 INFO    ] ================================================
[2026-06-05 01:31:01,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:31:01
[2026-06-05 01:31:01,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:31:02,254.254 INFO    ] Initializing speech engine...
[2026-06-05 01:31:02,257.257 INFO    ] 2026-06-05 01:31:02
[2026-06-05 01:31:02,597.597 INFO    ] 2026-06-05 01:31:02
[2026-06-05 01:31:02,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:31:02,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:31:02,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:31:03,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:31:03,072.072 INFO    ] time= 05/06/2026 01:31:03
[2026-06-05 01:31:03,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:31:03,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:31:03,212.212 INFO    ] No existing commands found in stream
[2026-06-05 01:31:08,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:31:08,240.240 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 01:31:09,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:31:09,330.330 INFO    ] Checking for system updates...
[2026-06-05 01:31:09,366.366 INFO    ] 200
[2026-06-05 01:31:09,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:09,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:31:09,424.424 INFO    ] No update needed
[2026-06-05 01:31:09,427.427 INFO    ] Checking for camera pi updates...
[2026-06-05 01:31:09,461.461 INFO    ] 200
[2026-06-05 01:31:09,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:09,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:31:09,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:31:09,561.561 INFO    ] No camera update needed
[2026-06-05 01:31:09,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:31:09,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:31:09,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:31:09,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:31:11,616.616 INFO    ] ================================================
[2026-06-05 01:31:11,632.632 INFO    ] Launching Daemon at Fri Jun  5 01:31:11 IST 2026
[2026-06-05 01:31:11,643.643 INFO    ] ================================================
[2026-06-05 01:31:12,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:31:12
[2026-06-05 01:31:12,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:31:13,097.097 INFO    ] Initializing speech engine...
[2026-06-05 01:31:13,100.100 INFO    ] 2026-06-05 01:31:13
[2026-06-05 01:31:13,361.361 INFO    ] 2026-06-05 01:31:13
[2026-06-05 01:31:13,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:31:13,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:31:13,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:31:13,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:31:13,843.843 INFO    ] time= 05/06/2026 01:31:13
[2026-06-05 01:31:13,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:31:13,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:31:13,989.989 INFO    ] No existing commands found in stream
[2026-06-05 01:31:19,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:31:19,003.003 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 01:31:20,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:31:20,955.955 INFO    ] Checking for system updates...
[2026-06-05 01:31:20,992.992 INFO    ] 200
[2026-06-05 01:31:20,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:21,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:31:21,050.050 INFO    ] No update needed
[2026-06-05 01:31:21,052.052 INFO    ] Checking for camera pi updates...
[2026-06-05 01:31:21,086.086 INFO    ] 200
[2026-06-05 01:31:21,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:21,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:31:21,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:31:21,179.179 INFO    ] No camera update needed
[2026-06-05 01:31:21,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:31:21,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:31:21,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:31:21,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:31:23,235.235 INFO    ] ================================================
[2026-06-05 01:31:23,251.251 INFO    ] Launching Daemon at Fri Jun  5 01:31:23 IST 2026
[2026-06-05 01:31:23,262.262 INFO    ] ================================================
[2026-06-05 01:31:23,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:31:23
[2026-06-05 01:31:24,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:31:24,730.730 INFO    ] Initializing speech engine...
[2026-06-05 01:31:24,737.737 INFO    ] 2026-06-05 01:31:24
[2026-06-05 01:31:24,998.998 INFO    ] 2026-06-05 01:31:24
[2026-06-05 01:31:25,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:31:25,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:31:25,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:31:25,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:31:25,466.466 INFO    ] time= 05/06/2026 01:31:25
[2026-06-05 01:31:25,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:31:25,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:31:25,610.610 INFO    ] No existing commands found in stream
[2026-06-05 01:31:30,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:31:30,626.626 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 01:31:33,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:31:33,746.746 INFO    ] Checking for system updates...
[2026-06-05 01:31:33,783.783 INFO    ] 200
[2026-06-05 01:31:33,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:33,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:31:33,841.841 INFO    ] No update needed
[2026-06-05 01:31:33,843.843 INFO    ] Checking for camera pi updates...
[2026-06-05 01:31:33,877.877 INFO    ] 200
[2026-06-05 01:31:33,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:33,920.920 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:31:33,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:31:33,972.972 INFO    ] No camera update needed
[2026-06-05 01:31:33,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:31:33,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:31:33,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:31:33,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:31:36,029.029 INFO    ] ================================================
[2026-06-05 01:31:36,045.045 INFO    ] Launching Daemon at Fri Jun  5 01:31:36 IST 2026
[2026-06-05 01:31:36,057.057 INFO    ] ================================================
[2026-06-05 01:31:36,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:31:36
[2026-06-05 01:31:37,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:31:37,521.521 INFO    ] Initializing speech engine...
[2026-06-05 01:31:37,531.531 INFO    ] 2026-06-05 01:31:37
[2026-06-05 01:31:37,793.793 INFO    ] 2026-06-05 01:31:37
[2026-06-05 01:31:37,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:31:38,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:31:38,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:31:38,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:31:38,217.217 INFO    ] time= 05/06/2026 01:31:38
[2026-06-05 01:31:38,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:31:38,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:31:38,396.396 INFO    ] No existing commands found in stream
[2026-06-05 01:31:43,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:31:43,411.411 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 01:31:45,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:31:45,438.438 INFO    ] Checking for system updates...
[2026-06-05 01:31:45,475.475 INFO    ] 200
[2026-06-05 01:31:45,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:45,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:31:45,534.534 INFO    ] No update needed
[2026-06-05 01:31:45,537.537 INFO    ] Checking for camera pi updates...
[2026-06-05 01:31:45,574.574 INFO    ] 200
[2026-06-05 01:31:45,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:45,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:31:45,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:31:45,673.673 INFO    ] No camera update needed
[2026-06-05 01:31:45,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:31:45,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:31:45,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:31:45,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:31:47,730.730 INFO    ] ================================================
[2026-06-05 01:31:47,745.745 INFO    ] Launching Daemon at Fri Jun  5 01:31:47 IST 2026
[2026-06-05 01:31:47,756.756 INFO    ] ================================================
[2026-06-05 01:31:48,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:31:48
[2026-06-05 01:31:48,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:31:49,165.165 INFO    ] Initializing speech engine...
[2026-06-05 01:31:49,179.179 INFO    ] 2026-06-05 01:31:49
[2026-06-05 01:31:49,447.447 INFO    ] 2026-06-05 01:31:49
[2026-06-05 01:31:49,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:31:49,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:31:49,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:31:49,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:31:49,787.787 INFO    ] time= 05/06/2026 01:31:49
[2026-06-05 01:31:49,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:31:49,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:31:49,899.899 INFO    ] No existing commands found in stream
[2026-06-05 01:31:54,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:31:54,914.914 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 01:31:57,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:31:57,678.678 INFO    ] Checking for system updates...
[2026-06-05 01:31:57,714.714 INFO    ] 200
[2026-06-05 01:31:57,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:57,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:31:57,777.777 INFO    ] No update needed
[2026-06-05 01:31:57,779.779 INFO    ] Checking for camera pi updates...
[2026-06-05 01:31:57,813.813 INFO    ] 200
[2026-06-05 01:31:57,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:31:57,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:31:57,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:31:57,903.903 INFO    ] No camera update needed
[2026-06-05 01:31:57,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:31:57,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:31:57,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:31:57,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:31:59,959.959 INFO    ] ================================================
[2026-06-05 01:31:59,974.974 INFO    ] Launching Daemon at Fri Jun  5 01:31:59 IST 2026
[2026-06-05 01:31:59,985.985 INFO    ] ================================================
[2026-06-05 01:32:00,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:32:00
[2026-06-05 01:32:01,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:32:01,553.553 INFO    ] Initializing speech engine...
[2026-06-05 01:32:01,562.562 INFO    ] 2026-06-05 01:32:01
[2026-06-05 01:32:01,841.841 INFO    ] 2026-06-05 01:32:01
[2026-06-05 01:32:01,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:32:02,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:32:02,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:32:02,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:32:02,323.323 INFO    ] time= 05/06/2026 01:32:02
[2026-06-05 01:32:02,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:32:02,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:32:02,498.498 INFO    ] No existing commands found in stream
[2026-06-05 01:32:07,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:32:07,510.510 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 01:32:10,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:32:10,918.918 INFO    ] Checking for system updates...
[2026-06-05 01:32:10,956.956 INFO    ] 200
[2026-06-05 01:32:10,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:11,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:32:11,015.015 INFO    ] No update needed
[2026-06-05 01:32:11,018.018 INFO    ] Checking for camera pi updates...
[2026-06-05 01:32:11,053.053 INFO    ] 200
[2026-06-05 01:32:11,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:11,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:32:11,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:32:11,148.148 INFO    ] No camera update needed
[2026-06-05 01:32:11,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:32:11,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:32:11,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:32:11,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:32:13,208.208 INFO    ] ================================================
[2026-06-05 01:32:13,224.224 INFO    ] Launching Daemon at Fri Jun  5 01:32:13 IST 2026
[2026-06-05 01:32:13,237.237 INFO    ] ================================================
[2026-06-05 01:32:13,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:32:13
[2026-06-05 01:32:14,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:32:14,795.795 INFO    ] Initializing speech engine...
[2026-06-05 01:32:14,804.804 INFO    ] 2026-06-05 01:32:14
[2026-06-05 01:32:15,099.099 INFO    ] 2026-06-05 01:32:15
[2026-06-05 01:32:15,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:32:15,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:32:15,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:32:15,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:32:15,477.477 INFO    ] time= 05/06/2026 01:32:15
[2026-06-05 01:32:15,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:32:15,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:32:15,608.608 INFO    ] No existing commands found in stream
[2026-06-05 01:32:20,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:32:20,623.623 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 01:32:22,064.064 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:32:22,067.067 INFO    ] Checking for system updates...
[2026-06-05 01:32:22,103.103 INFO    ] 200
[2026-06-05 01:32:22,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:22,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:32:22,160.160 INFO    ] No update needed
[2026-06-05 01:32:22,162.162 INFO    ] Checking for camera pi updates...
[2026-06-05 01:32:22,196.196 INFO    ] 200
[2026-06-05 01:32:22,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:22,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:32:22,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:32:22,277.277 INFO    ] No camera update needed
[2026-06-05 01:32:22,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:32:22,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:32:22,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:32:22,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:32:24,335.335 INFO    ] ================================================
[2026-06-05 01:32:24,351.351 INFO    ] Launching Daemon at Fri Jun  5 01:32:24 IST 2026
[2026-06-05 01:32:24,362.362 INFO    ] ================================================
[2026-06-05 01:32:25,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:32:25
[2026-06-05 01:32:25,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:32:25,967.967 INFO    ] Initializing speech engine...
[2026-06-05 01:32:25,975.975 INFO    ] 2026-06-05 01:32:25
[2026-06-05 01:32:26,263.263 INFO    ] 2026-06-05 01:32:26
[2026-06-05 01:32:26,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:32:26,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:32:26,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:32:26,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:32:26,726.726 INFO    ] time= 05/06/2026 01:32:26
[2026-06-05 01:32:26,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:32:26,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:32:26,880.880 INFO    ] No existing commands found in stream
[2026-06-05 01:32:31,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:32:31,891.891 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 01:32:34,906.906 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:32:34,909.909 INFO    ] Checking for system updates...
[2026-06-05 01:32:34,946.946 INFO    ] 200
[2026-06-05 01:32:34,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:35,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:32:35,005.005 INFO    ] No update needed
[2026-06-05 01:32:35,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 01:32:35,042.042 INFO    ] 200
[2026-06-05 01:32:35,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:35,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:32:35,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:32:35,137.137 INFO    ] No camera update needed
[2026-06-05 01:32:35,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:32:35,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:32:35,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:32:35,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:32:37,193.193 INFO    ] ================================================
[2026-06-05 01:32:37,209.209 INFO    ] Launching Daemon at Fri Jun  5 01:32:37 IST 2026
[2026-06-05 01:32:37,220.220 INFO    ] ================================================
[2026-06-05 01:32:37,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:32:37
[2026-06-05 01:32:38,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:32:38,680.680 INFO    ] Initializing speech engine...
[2026-06-05 01:32:38,688.688 INFO    ] 2026-06-05 01:32:38
[2026-06-05 01:32:38,949.949 INFO    ] 2026-06-05 01:32:38
[2026-06-05 01:32:38,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:32:39,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:32:39,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:32:39,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:32:39,413.413 INFO    ] time= 05/06/2026 01:32:39
[2026-06-05 01:32:39,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:32:39,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:32:39,555.555 INFO    ] No existing commands found in stream
[2026-06-05 01:32:44,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:32:44,570.570 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 01:32:48,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:32:48,719.719 INFO    ] Checking for system updates...
[2026-06-05 01:32:48,756.756 INFO    ] 200
[2026-06-05 01:32:48,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:48,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:32:48,816.816 INFO    ] No update needed
[2026-06-05 01:32:48,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 01:32:48,853.853 INFO    ] 200
[2026-06-05 01:32:48,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:48,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:32:48,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:32:48,947.947 INFO    ] No camera update needed
[2026-06-05 01:32:48,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:32:48,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:32:48,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:32:48,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:32:51,006.006 INFO    ] ================================================
[2026-06-05 01:32:51,022.022 INFO    ] Launching Daemon at Fri Jun  5 01:32:51 IST 2026
[2026-06-05 01:32:51,033.033 INFO    ] ================================================
[2026-06-05 01:32:51,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:32:51
[2026-06-05 01:32:52,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:32:52,504.504 INFO    ] Initializing speech engine...
[2026-06-05 01:32:52,511.511 INFO    ] 2026-06-05 01:32:52
[2026-06-05 01:32:52,771.771 INFO    ] 2026-06-05 01:32:52
[2026-06-05 01:32:52,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:32:53,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:32:53,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:32:53,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:32:53,235.235 INFO    ] time= 05/06/2026 01:32:53
[2026-06-05 01:32:53,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:32:53,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:32:53,396.396 INFO    ] No existing commands found in stream
[2026-06-05 01:32:58,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:32:58,435.435 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 01:32:58,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:32:58,935.935 INFO    ] Checking for system updates...
[2026-06-05 01:32:58,976.976 INFO    ] 200
[2026-06-05 01:32:58,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:59,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:32:59,033.033 INFO    ] No update needed
[2026-06-05 01:32:59,035.035 INFO    ] Checking for camera pi updates...
[2026-06-05 01:32:59,068.068 INFO    ] 200
[2026-06-05 01:32:59,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:32:59,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:32:59,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:32:59,144.144 INFO    ] No camera update needed
[2026-06-05 01:32:59,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:32:59,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:32:59,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:32:59,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:33:01,200.200 INFO    ] ================================================
[2026-06-05 01:33:01,215.215 INFO    ] Launching Daemon at Fri Jun  5 01:33:01 IST 2026
[2026-06-05 01:33:01,226.226 INFO    ] ================================================
[2026-06-05 01:33:01,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:33:01
[2026-06-05 01:33:02,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:33:02,849.849 INFO    ] Initializing speech engine...
[2026-06-05 01:33:02,857.857 INFO    ] 2026-06-05 01:33:02
[2026-06-05 01:33:03,166.166 INFO    ] 2026-06-05 01:33:03
[2026-06-05 01:33:03,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:33:03,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:33:03,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:33:03,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:33:03,607.607 INFO    ] time= 05/06/2026 01:33:03
[2026-06-05 01:33:03,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:33:03,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:33:03,747.747 INFO    ] No existing commands found in stream
[2026-06-05 01:33:08,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:33:08,763.763 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 01:33:10,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:33:10,524.524 INFO    ] Checking for system updates...
[2026-06-05 01:33:10,562.562 INFO    ] 200
[2026-06-05 01:33:10,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:33:10,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:33:10,621.621 INFO    ] No update needed
[2026-06-05 01:33:10,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 01:33:10,658.658 INFO    ] 200
[2026-06-05 01:33:10,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:33:10,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:33:10,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:33:10,749.749 INFO    ] No camera update needed
[2026-06-05 01:33:10,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:33:10,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:33:10,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:33:10,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:33:12,807.807 INFO    ] ================================================
[2026-06-05 01:33:12,822.822 INFO    ] Launching Daemon at Fri Jun  5 01:33:12 IST 2026
[2026-06-05 01:33:12,834.834 INFO    ] ================================================
[2026-06-05 01:33:13,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:33:13
[2026-06-05 01:33:14,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:33:14,318.318 INFO    ] Initializing speech engine...
[2026-06-05 01:33:14,326.326 INFO    ] 2026-06-05 01:33:14
[2026-06-05 01:33:14,601.601 INFO    ] 2026-06-05 01:33:14
[2026-06-05 01:33:14,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:33:14,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:33:14,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:33:14,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:33:14,981.981 INFO    ] time= 05/06/2026 01:33:14
[2026-06-05 01:33:14,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:33:15,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:33:15,065.065 INFO    ] No existing commands found in stream
[2026-06-05 01:33:20,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:33:20,078.078 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 01:33:23,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:33:23,771.771 INFO    ] Checking for system updates...
[2026-06-05 01:33:23,808.808 INFO    ] 200
[2026-06-05 01:33:23,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:33:23,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:33:23,868.868 INFO    ] No update needed
[2026-06-05 01:33:23,871.871 INFO    ] Checking for camera pi updates...
[2026-06-05 01:33:23,905.905 INFO    ] 200
[2026-06-05 01:33:23,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:33:23,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:33:23,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:33:23,996.996 INFO    ] No camera update needed
[2026-06-05 01:33:23,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:33:24,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:33:24,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:33:24,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:33:26,051.051 INFO    ] ================================================
[2026-06-05 01:33:26,067.067 INFO    ] Launching Daemon at Fri Jun  5 01:33:26 IST 2026
[2026-06-05 01:33:26,077.077 INFO    ] ================================================
[2026-06-05 01:33:26,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:33:26
[2026-06-05 01:33:27,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:33:27,605.605 INFO    ] Initializing speech engine...
[2026-06-05 01:33:27,629.629 INFO    ] 2026-06-05 01:33:27
[2026-06-05 01:33:27,886.886 INFO    ] 2026-06-05 01:33:27
[2026-06-05 01:33:27,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:33:28,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:33:28,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:33:28,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:33:28,335.335 INFO    ] time= 05/06/2026 01:33:28
[2026-06-05 01:33:28,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:33:28,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:33:28,511.511 INFO    ] No existing commands found in stream
[2026-06-05 01:33:33,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:33:33,526.526 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 01:33:37,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:33:37,145.145 INFO    ] Checking for system updates...
[2026-06-05 01:33:37,181.181 INFO    ] 200
[2026-06-05 01:33:37,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:33:37,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:33:37,238.238 INFO    ] No update needed
[2026-06-05 01:33:37,240.240 INFO    ] Checking for camera pi updates...
[2026-06-05 01:33:37,275.275 INFO    ] 200
[2026-06-05 01:33:37,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:33:37,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:33:37,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:33:37,365.365 INFO    ] No camera update needed
[2026-06-05 01:33:37,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:33:37,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:33:37,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:33:37,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:33:39,422.422 INFO    ] ================================================
[2026-06-05 01:33:39,438.438 INFO    ] Launching Daemon at Fri Jun  5 01:33:39 IST 2026
[2026-06-05 01:33:39,449.449 INFO    ] ================================================
[2026-06-05 01:33:40,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:33:40
[2026-06-05 01:33:40,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:33:40,854.854 INFO    ] Initializing speech engine...
[2026-06-05 01:33:40,879.879 INFO    ] 2026-06-05 01:33:40
[2026-06-05 01:33:41,137.137 INFO    ] 2026-06-05 01:33:41
[2026-06-05 01:33:41,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:33:41,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:33:41,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:33:41,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:33:41,642.642 INFO    ] time= 05/06/2026 01:33:41
[2026-06-05 01:33:41,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:33:41,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:33:41,842.842 INFO    ] No existing commands found in stream
[2026-06-05 01:33:46,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:33:46,870.870 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 01:33:49,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:33:49,746.746 INFO    ] Checking for system updates...
[2026-06-05 01:33:49,781.781 INFO    ] 200
[2026-06-05 01:33:49,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:33:49,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:33:49,838.838 INFO    ] No update needed
[2026-06-05 01:33:49,841.841 INFO    ] Checking for camera pi updates...
[2026-06-05 01:33:49,877.877 INFO    ] 200
[2026-06-05 01:33:49,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:33:49,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:33:49,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:33:49,970.970 INFO    ] No camera update needed
[2026-06-05 01:33:49,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:33:49,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:33:49,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:33:49,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:33:52,024.024 INFO    ] ================================================
[2026-06-05 01:33:52,040.040 INFO    ] Launching Daemon at Fri Jun  5 01:33:52 IST 2026
[2026-06-05 01:33:52,050.050 INFO    ] ================================================
[2026-06-05 01:33:52,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:33:52
[2026-06-05 01:33:53,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:33:53,485.485 INFO    ] Initializing speech engine...
[2026-06-05 01:33:53,495.495 INFO    ] 2026-06-05 01:33:53
[2026-06-05 01:33:53,782.782 INFO    ] 2026-06-05 01:33:53
[2026-06-05 01:33:53,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:33:54,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:33:54,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:33:54,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:33:54,177.177 INFO    ] time= 05/06/2026 01:33:54
[2026-06-05 01:33:54,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:33:54,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:33:54,340.340 INFO    ] No existing commands found in stream
[2026-06-05 01:33:59,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:33:59,373.373 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 01:34:00,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:34:00,410.410 INFO    ] Checking for system updates...
[2026-06-05 01:34:00,446.446 INFO    ] 200
[2026-06-05 01:34:00,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:00,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:34:00,506.506 INFO    ] No update needed
[2026-06-05 01:34:00,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 01:34:00,543.543 INFO    ] 200
[2026-06-05 01:34:00,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:00,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:34:00,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:34:00,633.633 INFO    ] No camera update needed
[2026-06-05 01:34:00,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:34:00,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:34:00,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:34:00,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:34:02,691.691 INFO    ] ================================================
[2026-06-05 01:34:02,718.718 INFO    ] Launching Daemon at Fri Jun  5 01:34:02 IST 2026
[2026-06-05 01:34:02,731.731 INFO    ] ================================================
[2026-06-05 01:34:03,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:34:03
[2026-06-05 01:34:03,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:34:04,257.257 INFO    ] Initializing speech engine...
[2026-06-05 01:34:04,275.275 INFO    ] 2026-06-05 01:34:04
[2026-06-05 01:34:04,528.528 INFO    ] 2026-06-05 01:34:04
[2026-06-05 01:34:04,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:34:04,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:34:04,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:34:04,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:34:04,905.905 INFO    ] time= 05/06/2026 01:34:04
[2026-06-05 01:34:04,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:34:04,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:34:05,087.087 INFO    ] No existing commands found in stream
[2026-06-05 01:34:10,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:34:10,120.120 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 01:34:12,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:34:12,370.370 INFO    ] Checking for system updates...
[2026-06-05 01:34:12,408.408 INFO    ] 200
[2026-06-05 01:34:12,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:12,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:34:12,475.475 INFO    ] No update needed
[2026-06-05 01:34:12,478.478 INFO    ] Checking for camera pi updates...
[2026-06-05 01:34:12,516.516 INFO    ] 200
[2026-06-05 01:34:12,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:12,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:34:12,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:34:12,606.606 INFO    ] No camera update needed
[2026-06-05 01:34:12,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:34:12,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:34:12,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:34:12,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:34:14,665.665 INFO    ] ================================================
[2026-06-05 01:34:14,680.680 INFO    ] Launching Daemon at Fri Jun  5 01:34:14 IST 2026
[2026-06-05 01:34:14,691.691 INFO    ] ================================================
[2026-06-05 01:34:15,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:34:15
[2026-06-05 01:34:15,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:34:16,126.126 INFO    ] Initializing speech engine...
[2026-06-05 01:34:16,151.151 INFO    ] 2026-06-05 01:34:16
[2026-06-05 01:34:16,426.426 INFO    ] 2026-06-05 01:34:16
[2026-06-05 01:34:16,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:34:16,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:34:16,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:34:16,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:34:16,803.803 INFO    ] time= 05/06/2026 01:34:16
[2026-06-05 01:34:16,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:34:16,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:34:16,927.927 INFO    ] No existing commands found in stream
[2026-06-05 01:34:21,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:34:21,942.942 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 01:34:23,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:34:23,977.977 INFO    ] Checking for system updates...
[2026-06-05 01:34:24,013.013 INFO    ] 200
[2026-06-05 01:34:24,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:24,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:34:24,078.078 INFO    ] No update needed
[2026-06-05 01:34:24,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 01:34:24,115.115 INFO    ] 200
[2026-06-05 01:34:24,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:24,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:34:24,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:34:24,211.211 INFO    ] No camera update needed
[2026-06-05 01:34:24,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:34:24,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:34:24,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:34:24,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:34:26,266.266 INFO    ] ================================================
[2026-06-05 01:34:26,281.281 INFO    ] Launching Daemon at Fri Jun  5 01:34:26 IST 2026
[2026-06-05 01:34:26,292.292 INFO    ] ================================================
[2026-06-05 01:34:26,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:34:26
[2026-06-05 01:34:27,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:34:27,742.742 INFO    ] Initializing speech engine...
[2026-06-05 01:34:27,749.749 INFO    ] 2026-06-05 01:34:27
[2026-06-05 01:34:28,006.006 INFO    ] 2026-06-05 01:34:28
[2026-06-05 01:34:28,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:34:28,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:34:28,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:34:28,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:34:28,472.472 INFO    ] time= 05/06/2026 01:34:28
[2026-06-05 01:34:28,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:34:28,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:34:28,618.618 INFO    ] No existing commands found in stream
[2026-06-05 01:34:33,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:34:33,632.632 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 01:34:37,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:34:37,371.371 INFO    ] Checking for system updates...
[2026-06-05 01:34:37,407.407 INFO    ] 200
[2026-06-05 01:34:37,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:37,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:34:37,471.471 INFO    ] No update needed
[2026-06-05 01:34:37,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 01:34:37,510.510 INFO    ] 200
[2026-06-05 01:34:37,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:37,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:34:37,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:34:37,601.601 INFO    ] No camera update needed
[2026-06-05 01:34:37,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:34:37,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:34:37,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:34:37,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:34:39,657.657 INFO    ] ================================================
[2026-06-05 01:34:39,673.673 INFO    ] Launching Daemon at Fri Jun  5 01:34:39 IST 2026
[2026-06-05 01:34:39,683.683 INFO    ] ================================================
[2026-06-05 01:34:40,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:34:40
[2026-06-05 01:34:40,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:34:41,139.139 INFO    ] Initializing speech engine...
[2026-06-05 01:34:41,148.148 INFO    ] 2026-06-05 01:34:41
[2026-06-05 01:34:41,419.419 INFO    ] 2026-06-05 01:34:41
[2026-06-05 01:34:41,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:34:41,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:34:41,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:34:41,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:34:41,906.906 INFO    ] time= 05/06/2026 01:34:41
[2026-06-05 01:34:41,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:34:41,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:34:42,086.086 INFO    ] No existing commands found in stream
[2026-06-05 01:34:47,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:34:47,101.101 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 01:34:49,390.390 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:34:49,393.393 INFO    ] Checking for system updates...
[2026-06-05 01:34:49,429.429 INFO    ] 200
[2026-06-05 01:34:49,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:49,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:34:49,486.486 INFO    ] No update needed
[2026-06-05 01:34:49,489.489 INFO    ] Checking for camera pi updates...
[2026-06-05 01:34:49,522.522 INFO    ] 200
[2026-06-05 01:34:49,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:34:49,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:34:49,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:34:49,610.610 INFO    ] No camera update needed
[2026-06-05 01:34:49,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:34:49,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:34:49,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:34:49,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:34:51,667.667 INFO    ] ================================================
[2026-06-05 01:34:51,682.682 INFO    ] Launching Daemon at Fri Jun  5 01:34:51 IST 2026
[2026-06-05 01:34:51,693.693 INFO    ] ================================================
[2026-06-05 01:34:52,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:34:52
[2026-06-05 01:34:52,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:34:53,254.254 INFO    ] Initializing speech engine...
[2026-06-05 01:34:53,268.268 INFO    ] 2026-06-05 01:34:53
[2026-06-05 01:34:53,574.574 INFO    ] 2026-06-05 01:34:53
[2026-06-05 01:34:53,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:34:53,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:34:53,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:34:54,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:34:54,080.080 INFO    ] time= 05/06/2026 01:34:54
[2026-06-05 01:34:54,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:34:54,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:34:54,237.237 INFO    ] No existing commands found in stream
[2026-06-05 01:34:59,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:34:59,269.269 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 01:34:59,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:35:00,001.001 INFO    ] Checking for system updates...
[2026-06-05 01:35:00,037.037 INFO    ] 200
[2026-06-05 01:35:00,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:00,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:35:00,097.097 INFO    ] No update needed
[2026-06-05 01:35:00,100.100 INFO    ] Checking for camera pi updates...
[2026-06-05 01:35:00,137.137 INFO    ] 200
[2026-06-05 01:35:00,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:00,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:35:00,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:35:00,238.238 INFO    ] No camera update needed
[2026-06-05 01:35:00,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:35:00,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:35:00,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:35:00,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:35:02,340.340 INFO    ] ================================================
[2026-06-05 01:35:02,407.407 INFO    ] Launching Daemon at Fri Jun  5 01:35:02 IST 2026
[2026-06-05 01:35:02,449.449 INFO    ] ================================================
[2026-06-05 01:35:03,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:35:03
[2026-06-05 01:35:03,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:35:04,187.187 INFO    ] Initializing speech engine...
[2026-06-05 01:35:04,200.200 INFO    ] 2026-06-05 01:35:04
[2026-06-05 01:35:04,466.466 INFO    ] 2026-06-05 01:35:04
[2026-06-05 01:35:04,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:35:04,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:35:04,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:35:04,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:35:04,848.848 INFO    ] time= 05/06/2026 01:35:04
[2026-06-05 01:35:04,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:35:04,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:35:05,019.019 INFO    ] No existing commands found in stream
[2026-06-05 01:35:10,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:35:10,047.047 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 01:35:11,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:35:11,789.789 INFO    ] Checking for system updates...
[2026-06-05 01:35:11,825.825 INFO    ] 200
[2026-06-05 01:35:11,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:11,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:35:11,883.883 INFO    ] No update needed
[2026-06-05 01:35:11,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 01:35:11,919.919 INFO    ] 200
[2026-06-05 01:35:11,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:11,961.961 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:35:12,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:35:12,115.115 INFO    ] No camera update needed
[2026-06-05 01:35:12,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:35:12,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:35:12,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:35:12,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:35:14,175.175 INFO    ] ================================================
[2026-06-05 01:35:14,190.190 INFO    ] Launching Daemon at Fri Jun  5 01:35:14 IST 2026
[2026-06-05 01:35:14,201.201 INFO    ] ================================================
[2026-06-05 01:35:14,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:35:14
[2026-06-05 01:35:15,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:35:15,768.768 INFO    ] Initializing speech engine...
[2026-06-05 01:35:15,774.774 INFO    ] 2026-06-05 01:35:15
[2026-06-05 01:35:16,066.066 INFO    ] 2026-06-05 01:35:16
[2026-06-05 01:35:16,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:35:16,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:35:16,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:35:16,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:35:16,615.615 INFO    ] time= 05/06/2026 01:35:16
[2026-06-05 01:35:16,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:35:16,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:35:16,759.759 INFO    ] No existing commands found in stream
[2026-06-05 01:35:21,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:35:21,787.787 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 01:35:24,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:35:24,274.274 INFO    ] Checking for system updates...
[2026-06-05 01:35:24,310.310 INFO    ] 200
[2026-06-05 01:35:24,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:24,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:35:24,369.369 INFO    ] No update needed
[2026-06-05 01:35:24,371.371 INFO    ] Checking for camera pi updates...
[2026-06-05 01:35:24,405.405 INFO    ] 200
[2026-06-05 01:35:24,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:24,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:35:24,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:35:24,499.499 INFO    ] No camera update needed
[2026-06-05 01:35:24,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:35:24,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:35:24,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:35:24,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:35:26,555.555 INFO    ] ================================================
[2026-06-05 01:35:26,570.570 INFO    ] Launching Daemon at Fri Jun  5 01:35:26 IST 2026
[2026-06-05 01:35:26,580.580 INFO    ] ================================================
[2026-06-05 01:35:27,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:35:27
[2026-06-05 01:35:27,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:35:28,211.211 INFO    ] Initializing speech engine...
[2026-06-05 01:35:28,222.222 INFO    ] 2026-06-05 01:35:28
[2026-06-05 01:35:28,540.540 INFO    ] 2026-06-05 01:35:28
[2026-06-05 01:35:28,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:35:28,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:35:28,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:35:29,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:35:29,050.050 INFO    ] time= 05/06/2026 01:35:29
[2026-06-05 01:35:29,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:35:29,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:35:29,199.199 INFO    ] No existing commands found in stream
[2026-06-05 01:35:34,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:35:34,221.221 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 01:35:37,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:35:37,130.130 INFO    ] Checking for system updates...
[2026-06-05 01:35:37,168.168 INFO    ] 200
[2026-06-05 01:35:37,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:37,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:35:37,227.227 INFO    ] No update needed
[2026-06-05 01:35:37,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 01:35:37,268.268 INFO    ] 200
[2026-06-05 01:35:37,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:37,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:35:37,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:35:37,368.368 INFO    ] No camera update needed
[2026-06-05 01:35:37,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:35:37,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:35:37,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:35:37,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:35:39,422.422 INFO    ] ================================================
[2026-06-05 01:35:39,437.437 INFO    ] Launching Daemon at Fri Jun  5 01:35:39 IST 2026
[2026-06-05 01:35:39,448.448 INFO    ] ================================================
[2026-06-05 01:35:40,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:35:40
[2026-06-05 01:35:40,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:35:40,907.907 INFO    ] Initializing speech engine...
[2026-06-05 01:35:40,916.916 INFO    ] 2026-06-05 01:35:40
[2026-06-05 01:35:41,164.164 INFO    ] 2026-06-05 01:35:41
[2026-06-05 01:35:41,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:35:41,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:35:41,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:35:41,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:35:41,665.665 INFO    ] time= 05/06/2026 01:35:41
[2026-06-05 01:35:41,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:35:41,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:35:41,791.791 INFO    ] No existing commands found in stream
[2026-06-05 01:35:46,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:35:46,806.806 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 01:35:49,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:35:49,381.381 INFO    ] Checking for system updates...
[2026-06-05 01:35:49,424.424 INFO    ] 200
[2026-06-05 01:35:49,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:49,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:35:49,493.493 INFO    ] No update needed
[2026-06-05 01:35:49,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 01:35:49,532.532 INFO    ] 200
[2026-06-05 01:35:49,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:35:49,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:35:49,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:35:49,623.623 INFO    ] No camera update needed
[2026-06-05 01:35:49,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:35:49,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:35:49,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:35:49,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:35:51,682.682 INFO    ] ================================================
[2026-06-05 01:35:51,698.698 INFO    ] Launching Daemon at Fri Jun  5 01:35:51 IST 2026
[2026-06-05 01:35:51,710.710 INFO    ] ================================================
[2026-06-05 01:35:52,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:35:52
[2026-06-05 01:35:52,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:35:53,129.129 INFO    ] Initializing speech engine...
[2026-06-05 01:35:53,139.139 INFO    ] 2026-06-05 01:35:53
[2026-06-05 01:35:53,390.390 INFO    ] 2026-06-05 01:35:53
[2026-06-05 01:35:53,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:35:53,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:35:53,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:35:53,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:35:53,773.773 INFO    ] time= 05/06/2026 01:35:53
[2026-06-05 01:35:53,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:35:53,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:35:53,894.894 INFO    ] No existing commands found in stream
[2026-06-05 01:35:58,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:35:58,920.920 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 01:36:01,895.895 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:36:01,899.899 INFO    ] Checking for system updates...
[2026-06-05 01:36:01,948.948 INFO    ] 200
[2026-06-05 01:36:01,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:02,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:36:02,015.015 INFO    ] No update needed
[2026-06-05 01:36:02,019.019 INFO    ] Checking for camera pi updates...
[2026-06-05 01:36:02,058.058 INFO    ] 200
[2026-06-05 01:36:02,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:02,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:36:02,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:36:02,207.207 INFO    ] No camera update needed
[2026-06-05 01:36:02,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:36:02,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:36:02,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:36:02,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:36:04,269.269 INFO    ] ================================================
[2026-06-05 01:36:04,284.284 INFO    ] Launching Daemon at Fri Jun  5 01:36:04 IST 2026
[2026-06-05 01:36:04,296.296 INFO    ] ================================================
[2026-06-05 01:36:04,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:36:04
[2026-06-05 01:36:05,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:36:05,760.760 INFO    ] Initializing speech engine...
[2026-06-05 01:36:05,766.766 INFO    ] 2026-06-05 01:36:05
[2026-06-05 01:36:06,017.017 INFO    ] 2026-06-05 01:36:06
[2026-06-05 01:36:06,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:36:06,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:36:06,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:36:06,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:36:06,431.431 INFO    ] time= 05/06/2026 01:36:06
[2026-06-05 01:36:06,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:36:06,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:36:06,597.597 INFO    ] No existing commands found in stream
[2026-06-05 01:36:11,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:36:11,631.631 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 01:36:15,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:36:15,967.967 INFO    ] Checking for system updates...
[2026-06-05 01:36:16,311.311 INFO    ] 200
[2026-06-05 01:36:16,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:16,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:36:16,373.373 INFO    ] No update needed
[2026-06-05 01:36:16,375.375 INFO    ] Checking for camera pi updates...
[2026-06-05 01:36:16,409.409 INFO    ] 200
[2026-06-05 01:36:16,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:16,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:36:16,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:36:16,515.515 INFO    ] No camera update needed
[2026-06-05 01:36:16,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:36:16,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:36:16,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:36:16,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:36:18,571.571 INFO    ] ================================================
[2026-06-05 01:36:18,587.587 INFO    ] Launching Daemon at Fri Jun  5 01:36:18 IST 2026
[2026-06-05 01:36:18,598.598 INFO    ] ================================================
[2026-06-05 01:36:19,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:36:19
[2026-06-05 01:36:19,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:36:20,149.149 INFO    ] Initializing speech engine...
[2026-06-05 01:36:20,155.155 INFO    ] 2026-06-05 01:36:20
[2026-06-05 01:36:20,427.427 INFO    ] 2026-06-05 01:36:20
[2026-06-05 01:36:20,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:36:20,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:36:20,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:36:20,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:36:20,909.909 INFO    ] time= 05/06/2026 01:36:20
[2026-06-05 01:36:20,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:36:21,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:36:21,183.183 INFO    ] No existing commands found in stream
[2026-06-05 01:36:26,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:36:26,288.288 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 01:36:29,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:36:29,206.206 INFO    ] Checking for system updates...
[2026-06-05 01:36:29,243.243 INFO    ] 200
[2026-06-05 01:36:29,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:29,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:36:29,307.307 INFO    ] No update needed
[2026-06-05 01:36:29,310.310 INFO    ] Checking for camera pi updates...
[2026-06-05 01:36:29,343.343 INFO    ] 200
[2026-06-05 01:36:29,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:29,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:36:29,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:36:29,439.439 INFO    ] No camera update needed
[2026-06-05 01:36:29,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:36:29,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:36:29,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:36:29,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:36:31,498.498 INFO    ] ================================================
[2026-06-05 01:36:31,514.514 INFO    ] Launching Daemon at Fri Jun  5 01:36:31 IST 2026
[2026-06-05 01:36:31,566.566 INFO    ] ================================================
[2026-06-05 01:36:32,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:36:32
[2026-06-05 01:36:32,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:36:33,270.270 INFO    ] Initializing speech engine...
[2026-06-05 01:36:33,280.280 INFO    ] 2026-06-05 01:36:33
[2026-06-05 01:36:33,549.549 INFO    ] 2026-06-05 01:36:33
[2026-06-05 01:36:33,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:36:33,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:36:33,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:36:33,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:36:33,948.948 INFO    ] time= 05/06/2026 01:36:33
[2026-06-05 01:36:33,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:36:33,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:36:34,057.057 INFO    ] No existing commands found in stream
[2026-06-05 01:36:39,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:36:39,347.347 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 01:36:41,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:36:41,634.634 INFO    ] Checking for system updates...
[2026-06-05 01:36:41,674.674 INFO    ] 200
[2026-06-05 01:36:41,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:41,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:36:41,734.734 INFO    ] No update needed
[2026-06-05 01:36:41,736.736 INFO    ] Checking for camera pi updates...
[2026-06-05 01:36:41,774.774 INFO    ] 200
[2026-06-05 01:36:41,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:41,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:36:41,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:36:41,872.872 INFO    ] No camera update needed
[2026-06-05 01:36:41,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:36:41,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:36:41,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:36:41,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:36:43,929.929 INFO    ] ================================================
[2026-06-05 01:36:43,944.944 INFO    ] Launching Daemon at Fri Jun  5 01:36:43 IST 2026
[2026-06-05 01:36:43,954.954 INFO    ] ================================================
[2026-06-05 01:36:44,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:36:44
[2026-06-05 01:36:45,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:36:45,417.417 INFO    ] Initializing speech engine...
[2026-06-05 01:36:45,426.426 INFO    ] 2026-06-05 01:36:45
[2026-06-05 01:36:45,685.685 INFO    ] 2026-06-05 01:36:45
[2026-06-05 01:36:45,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:36:45,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:36:45,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:36:46,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:36:46,149.149 INFO    ] time= 05/06/2026 01:36:46
[2026-06-05 01:36:46,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:36:46,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:36:46,292.292 INFO    ] No existing commands found in stream
[2026-06-05 01:36:51,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:36:51,307.307 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 01:36:52,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:36:52,149.149 INFO    ] Checking for system updates...
[2026-06-05 01:36:52,189.189 INFO    ] 200
[2026-06-05 01:36:52,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:52,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:36:52,250.250 INFO    ] No update needed
[2026-06-05 01:36:52,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 01:36:52,292.292 INFO    ] 200
[2026-06-05 01:36:52,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:36:52,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:36:52,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:36:52,399.399 INFO    ] No camera update needed
[2026-06-05 01:36:52,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:36:52,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:36:52,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:36:52,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:36:54,454.454 INFO    ] ================================================
[2026-06-05 01:36:54,469.469 INFO    ] Launching Daemon at Fri Jun  5 01:36:54 IST 2026
[2026-06-05 01:36:54,480.480 INFO    ] ================================================
[2026-06-05 01:36:55,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:36:55
[2026-06-05 01:36:55,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:36:56,096.096 INFO    ] Initializing speech engine...
[2026-06-05 01:36:56,105.105 INFO    ] 2026-06-05 01:36:56
[2026-06-05 01:36:56,409.409 INFO    ] 2026-06-05 01:36:56
[2026-06-05 01:36:56,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:36:56,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:36:56,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:36:56,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:36:56,918.918 INFO    ] time= 05/06/2026 01:36:56
[2026-06-05 01:36:56,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:36:56,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:36:57,075.075 INFO    ] No existing commands found in stream
[2026-06-05 01:37:02,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:37:02,103.103 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 01:37:05,114.114 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:37:05,117.117 INFO    ] Checking for system updates...
[2026-06-05 01:37:05,158.158 INFO    ] 200
[2026-06-05 01:37:05,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:05,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:37:05,217.217 INFO    ] No update needed
[2026-06-05 01:37:05,220.220 INFO    ] Checking for camera pi updates...
[2026-06-05 01:37:05,255.255 INFO    ] 200
[2026-06-05 01:37:05,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:05,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:37:05,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:37:05,338.338 INFO    ] No camera update needed
[2026-06-05 01:37:05,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:37:05,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:37:05,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:37:05,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:37:07,396.396 INFO    ] ================================================
[2026-06-05 01:37:07,411.411 INFO    ] Launching Daemon at Fri Jun  5 01:37:07 IST 2026
[2026-06-05 01:37:07,422.422 INFO    ] ================================================
[2026-06-05 01:37:07,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:37:07
[2026-06-05 01:37:08,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:37:08,839.839 INFO    ] Initializing speech engine...
[2026-06-05 01:37:08,849.849 INFO    ] 2026-06-05 01:37:08
[2026-06-05 01:37:09,097.097 INFO    ] 2026-06-05 01:37:09
[2026-06-05 01:37:09,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:37:09,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:37:09,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:37:09,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:37:09,437.437 INFO    ] time= 05/06/2026 01:37:09
[2026-06-05 01:37:09,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:37:09,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:37:09,549.549 INFO    ] No existing commands found in stream
[2026-06-05 01:37:14,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:37:14,565.565 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 01:37:16,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:37:16,431.431 INFO    ] Checking for system updates...
[2026-06-05 01:37:16,466.466 INFO    ] 200
[2026-06-05 01:37:16,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:16,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:37:16,530.530 INFO    ] No update needed
[2026-06-05 01:37:16,532.532 INFO    ] Checking for camera pi updates...
[2026-06-05 01:37:16,566.566 INFO    ] 200
[2026-06-05 01:37:16,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:16,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:37:16,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:37:16,768.768 INFO    ] No camera update needed
[2026-06-05 01:37:16,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:37:16,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:37:16,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:37:16,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:37:18,824.824 INFO    ] ================================================
[2026-06-05 01:37:18,839.839 INFO    ] Launching Daemon at Fri Jun  5 01:37:18 IST 2026
[2026-06-05 01:37:18,850.850 INFO    ] ================================================
[2026-06-05 01:37:19,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:37:19
[2026-06-05 01:37:20,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:37:20,248.248 INFO    ] Initializing speech engine...
[2026-06-05 01:37:20,257.257 INFO    ] 2026-06-05 01:37:20
[2026-06-05 01:37:20,531.531 INFO    ] 2026-06-05 01:37:20
[2026-06-05 01:37:20,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:37:20,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:37:20,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:37:20,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:37:20,907.907 INFO    ] time= 05/06/2026 01:37:20
[2026-06-05 01:37:20,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:37:20,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:37:21,071.071 INFO    ] No existing commands found in stream
[2026-06-05 01:37:26,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:37:26,099.099 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 01:37:27,970.970 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:37:27,973.973 INFO    ] Checking for system updates...
[2026-06-05 01:37:28,009.009 INFO    ] 200
[2026-06-05 01:37:28,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:28,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:37:28,073.073 INFO    ] No update needed
[2026-06-05 01:37:28,075.075 INFO    ] Checking for camera pi updates...
[2026-06-05 01:37:28,109.109 INFO    ] 200
[2026-06-05 01:37:28,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:28,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:37:28,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:37:28,199.199 INFO    ] No camera update needed
[2026-06-05 01:37:28,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:37:28,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:37:28,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:37:28,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:37:30,256.256 INFO    ] ================================================
[2026-06-05 01:37:30,271.271 INFO    ] Launching Daemon at Fri Jun  5 01:37:30 IST 2026
[2026-06-05 01:37:30,282.282 INFO    ] ================================================
[2026-06-05 01:37:30,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:37:30
[2026-06-05 01:37:31,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:37:31,849.849 INFO    ] Initializing speech engine...
[2026-06-05 01:37:31,864.864 INFO    ] 2026-06-05 01:37:31
[2026-06-05 01:37:32,167.167 INFO    ] 2026-06-05 01:37:32
[2026-06-05 01:37:32,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:37:32,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:37:32,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:37:32,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:37:32,727.727 INFO    ] time= 05/06/2026 01:37:32
[2026-06-05 01:37:32,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:37:32,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:37:32,864.864 INFO    ] No existing commands found in stream
[2026-06-05 01:37:37,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:37:37,895.895 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 01:37:40,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:37:40,961.961 INFO    ] Checking for system updates...
[2026-06-05 01:37:40,997.997 INFO    ] 200
[2026-06-05 01:37:40,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:41,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:37:41,054.054 INFO    ] No update needed
[2026-06-05 01:37:41,056.056 INFO    ] Checking for camera pi updates...
[2026-06-05 01:37:41,091.091 INFO    ] 200
[2026-06-05 01:37:41,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:41,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:37:41,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:37:41,196.196 INFO    ] No camera update needed
[2026-06-05 01:37:41,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:37:41,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:37:41,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:37:41,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:37:43,251.251 INFO    ] ================================================
[2026-06-05 01:37:43,267.267 INFO    ] Launching Daemon at Fri Jun  5 01:37:43 IST 2026
[2026-06-05 01:37:43,279.279 INFO    ] ================================================
[2026-06-05 01:37:43,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:37:43
[2026-06-05 01:37:44,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:37:44,724.724 INFO    ] Initializing speech engine...
[2026-06-05 01:37:44,734.734 INFO    ] 2026-06-05 01:37:44
[2026-06-05 01:37:44,992.992 INFO    ] 2026-06-05 01:37:44
[2026-06-05 01:37:45,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:37:45,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:37:45,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:37:45,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:37:45,461.461 INFO    ] time= 05/06/2026 01:37:45
[2026-06-05 01:37:45,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:37:45,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:37:45,605.605 INFO    ] No existing commands found in stream
[2026-06-05 01:37:50,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:37:50,622.622 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 01:37:51,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:37:51,444.444 INFO    ] Checking for system updates...
[2026-06-05 01:37:51,484.484 INFO    ] 200
[2026-06-05 01:37:51,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:51,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:37:51,542.542 INFO    ] No update needed
[2026-06-05 01:37:51,545.545 INFO    ] Checking for camera pi updates...
[2026-06-05 01:37:51,582.582 INFO    ] 200
[2026-06-05 01:37:51,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:37:51,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:37:51,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:37:51,678.678 INFO    ] No camera update needed
[2026-06-05 01:37:51,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:37:51,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:37:51,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:37:51,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:37:53,737.737 INFO    ] ================================================
[2026-06-05 01:37:53,752.752 INFO    ] Launching Daemon at Fri Jun  5 01:37:53 IST 2026
[2026-06-05 01:37:53,763.763 INFO    ] ================================================
[2026-06-05 01:37:54,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:37:54
[2026-06-05 01:37:54,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:37:55,172.172 INFO    ] Initializing speech engine...
[2026-06-05 01:37:55,193.193 INFO    ] 2026-06-05 01:37:55
[2026-06-05 01:37:55,465.465 INFO    ] 2026-06-05 01:37:55
[2026-06-05 01:37:55,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:37:55,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:37:55,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:37:55,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:37:55,968.968 INFO    ] time= 05/06/2026 01:37:55
[2026-06-05 01:37:56,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:37:56,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:37:56,111.111 INFO    ] No existing commands found in stream
[2026-06-05 01:38:01,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:38:01,128.128 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 01:38:04,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:38:04,143.143 INFO    ] Checking for system updates...
[2026-06-05 01:38:04,181.181 INFO    ] 200
[2026-06-05 01:38:04,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:04,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:38:04,240.240 INFO    ] No update needed
[2026-06-05 01:38:04,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 01:38:04,278.278 INFO    ] 200
[2026-06-05 01:38:04,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:04,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:38:04,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:38:04,362.362 INFO    ] No camera update needed
[2026-06-05 01:38:04,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:38:04,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:38:04,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:38:04,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:38:06,422.422 INFO    ] ================================================
[2026-06-05 01:38:06,437.437 INFO    ] Launching Daemon at Fri Jun  5 01:38:06 IST 2026
[2026-06-05 01:38:06,449.449 INFO    ] ================================================
[2026-06-05 01:38:07,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:38:07
[2026-06-05 01:38:07,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:38:07,916.916 INFO    ] Initializing speech engine...
[2026-06-05 01:38:07,925.925 INFO    ] 2026-06-05 01:38:07
[2026-06-05 01:38:08,221.221 INFO    ] 2026-06-05 01:38:08
[2026-06-05 01:38:08,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:38:08,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:38:08,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:38:08,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:38:08,605.605 INFO    ] time= 05/06/2026 01:38:08
[2026-06-05 01:38:08,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:38:08,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:38:08,731.731 INFO    ] No existing commands found in stream
[2026-06-05 01:38:13,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:38:13,746.746 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 01:38:15,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:38:15,044.044 INFO    ] Checking for system updates...
[2026-06-05 01:38:15,085.085 INFO    ] 200
[2026-06-05 01:38:15,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:15,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:38:15,143.143 INFO    ] No update needed
[2026-06-05 01:38:15,145.145 INFO    ] Checking for camera pi updates...
[2026-06-05 01:38:15,183.183 INFO    ] 200
[2026-06-05 01:38:15,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:15,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:38:15,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:38:15,284.284 INFO    ] No camera update needed
[2026-06-05 01:38:15,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:38:15,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:38:15,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:38:15,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:38:17,339.339 INFO    ] ================================================
[2026-06-05 01:38:17,356.356 INFO    ] Launching Daemon at Fri Jun  5 01:38:17 IST 2026
[2026-06-05 01:38:17,366.366 INFO    ] ================================================
[2026-06-05 01:38:18,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:38:18
[2026-06-05 01:38:18,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:38:19,021.021 INFO    ] Initializing speech engine...
[2026-06-05 01:38:19,032.032 INFO    ] 2026-06-05 01:38:19
[2026-06-05 01:38:19,322.322 INFO    ] 2026-06-05 01:38:19
[2026-06-05 01:38:19,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:38:19,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:38:19,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:38:19,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:38:19,855.855 INFO    ] time= 05/06/2026 01:38:19
[2026-06-05 01:38:19,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:38:19,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:38:20,011.011 INFO    ] No existing commands found in stream
[2026-06-05 01:38:25,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:38:25,037.037 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 01:38:29,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:38:29,124.124 INFO    ] Checking for system updates...
[2026-06-05 01:38:29,166.166 INFO    ] 200
[2026-06-05 01:38:29,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:29,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:38:29,234.234 INFO    ] No update needed
[2026-06-05 01:38:29,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 01:38:29,272.272 INFO    ] 200
[2026-06-05 01:38:29,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:29,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:38:29,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:38:29,369.369 INFO    ] No camera update needed
[2026-06-05 01:38:29,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:38:29,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:38:29,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:38:29,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:38:31,429.429 INFO    ] ================================================
[2026-06-05 01:38:31,445.445 INFO    ] Launching Daemon at Fri Jun  5 01:38:31 IST 2026
[2026-06-05 01:38:31,456.456 INFO    ] ================================================
[2026-06-05 01:38:32,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:38:32
[2026-06-05 01:38:32,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:38:33,014.014 INFO    ] Initializing speech engine...
[2026-06-05 01:38:33,030.030 INFO    ] 2026-06-05 01:38:33
[2026-06-05 01:38:33,324.324 INFO    ] 2026-06-05 01:38:33
[2026-06-05 01:38:33,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:38:33,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:38:33,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:38:33,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:38:33,703.703 INFO    ] time= 05/06/2026 01:38:33
[2026-06-05 01:38:33,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:38:33,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:38:33,882.882 INFO    ] No existing commands found in stream
[2026-06-05 01:38:38,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:38:38,910.910 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 01:38:40,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:38:40,800.800 INFO    ] Checking for system updates...
[2026-06-05 01:38:40,837.837 INFO    ] 200
[2026-06-05 01:38:40,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:40,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:38:40,894.894 INFO    ] No update needed
[2026-06-05 01:38:40,897.897 INFO    ] Checking for camera pi updates...
[2026-06-05 01:38:40,931.931 INFO    ] 200
[2026-06-05 01:38:40,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:40,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:38:41,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:38:41,007.007 INFO    ] No camera update needed
[2026-06-05 01:38:41,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:38:41,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:38:41,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:38:41,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:38:43,062.062 INFO    ] ================================================
[2026-06-05 01:38:43,078.078 INFO    ] Launching Daemon at Fri Jun  5 01:38:43 IST 2026
[2026-06-05 01:38:43,088.088 INFO    ] ================================================
[2026-06-05 01:38:43,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:38:43
[2026-06-05 01:38:44,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:38:44,498.498 INFO    ] Initializing speech engine...
[2026-06-05 01:38:44,504.504 INFO    ] 2026-06-05 01:38:44
[2026-06-05 01:38:44,808.808 INFO    ] 2026-06-05 01:38:44
[2026-06-05 01:38:44,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:38:45,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:38:45,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:38:45,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:38:45,189.189 INFO    ] time= 05/06/2026 01:38:45
[2026-06-05 01:38:45,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:38:45,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:38:45,370.370 INFO    ] No existing commands found in stream
[2026-06-05 01:38:50,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:38:50,390.390 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 01:38:53,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:38:53,235.235 INFO    ] Checking for system updates...
[2026-06-05 01:38:53,272.272 INFO    ] 200
[2026-06-05 01:38:53,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:53,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:38:53,337.337 INFO    ] No update needed
[2026-06-05 01:38:53,340.340 INFO    ] Checking for camera pi updates...
[2026-06-05 01:38:53,378.378 INFO    ] 200
[2026-06-05 01:38:53,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:38:53,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:38:53,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:38:53,469.469 INFO    ] No camera update needed
[2026-06-05 01:38:53,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:38:53,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:38:53,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:38:53,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:38:55,526.526 INFO    ] ================================================
[2026-06-05 01:38:55,542.542 INFO    ] Launching Daemon at Fri Jun  5 01:38:55 IST 2026
[2026-06-05 01:38:55,553.553 INFO    ] ================================================
[2026-06-05 01:38:56,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:38:56
[2026-06-05 01:38:56,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:38:56,956.956 INFO    ] Initializing speech engine...
[2026-06-05 01:38:56,970.970 INFO    ] 2026-06-05 01:38:56
[2026-06-05 01:38:57,236.236 INFO    ] 2026-06-05 01:38:57
[2026-06-05 01:38:57,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:38:57,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:38:57,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:38:57,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:38:57,684.684 INFO    ] time= 05/06/2026 01:38:57
[2026-06-05 01:38:57,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:38:57,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:38:57,869.869 INFO    ] No existing commands found in stream
[2026-06-05 01:39:02,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:39:02,885.885 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 01:39:05,500.500 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:39:05,503.503 INFO    ] Checking for system updates...
[2026-06-05 01:39:05,539.539 INFO    ] 200
[2026-06-05 01:39:05,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:05,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:39:05,598.598 INFO    ] No update needed
[2026-06-05 01:39:05,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 01:39:05,634.634 INFO    ] 200
[2026-06-05 01:39:05,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:05,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:39:05,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:39:05,729.729 INFO    ] No camera update needed
[2026-06-05 01:39:05,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:39:05,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:39:05,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:39:05,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:39:07,786.786 INFO    ] ================================================
[2026-06-05 01:39:07,801.801 INFO    ] Launching Daemon at Fri Jun  5 01:39:07 IST 2026
[2026-06-05 01:39:07,812.812 INFO    ] ================================================
[2026-06-05 01:39:08,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:39:08
[2026-06-05 01:39:08,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:39:09,273.273 INFO    ] Initializing speech engine...
[2026-06-05 01:39:09,289.289 INFO    ] 2026-06-05 01:39:09
[2026-06-05 01:39:09,569.569 INFO    ] 2026-06-05 01:39:09
[2026-06-05 01:39:09,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:39:09,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:39:09,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:39:09,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:39:09,952.952 INFO    ] time= 05/06/2026 01:39:09
[2026-06-05 01:39:09,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:39:09,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:39:10,075.075 INFO    ] No existing commands found in stream
[2026-06-05 01:39:15,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:39:15,090.090 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 01:39:16,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:39:16,201.201 INFO    ] Checking for system updates...
[2026-06-05 01:39:16,238.238 INFO    ] 200
[2026-06-05 01:39:16,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:16,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:39:16,303.303 INFO    ] No update needed
[2026-06-05 01:39:16,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 01:39:16,340.340 INFO    ] 200
[2026-06-05 01:39:16,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:16,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:39:16,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:39:16,444.444 INFO    ] No camera update needed
[2026-06-05 01:39:16,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:39:16,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:39:16,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:39:16,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:39:18,499.499 INFO    ] ================================================
[2026-06-05 01:39:18,515.515 INFO    ] Launching Daemon at Fri Jun  5 01:39:18 IST 2026
[2026-06-05 01:39:18,526.526 INFO    ] ================================================
[2026-06-05 01:39:19,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:39:19
[2026-06-05 01:39:19,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:39:20,187.187 INFO    ] Initializing speech engine...
[2026-06-05 01:39:20,196.196 INFO    ] 2026-06-05 01:39:20
[2026-06-05 01:39:20,475.475 INFO    ] 2026-06-05 01:39:20
[2026-06-05 01:39:20,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:39:20,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:39:20,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:39:20,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:39:20,932.932 INFO    ] time= 05/06/2026 01:39:20
[2026-06-05 01:39:20,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:39:21,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:39:21,081.081 INFO    ] No existing commands found in stream
[2026-06-05 01:39:26,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:39:26,096.096 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 01:39:29,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:39:29,046.046 INFO    ] Checking for system updates...
[2026-06-05 01:39:29,082.082 INFO    ] 200
[2026-06-05 01:39:29,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:29,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:39:29,141.141 INFO    ] No update needed
[2026-06-05 01:39:29,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 01:39:29,177.177 INFO    ] 200
[2026-06-05 01:39:29,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:29,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:39:29,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:39:29,371.371 INFO    ] No camera update needed
[2026-06-05 01:39:29,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:39:29,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:39:29,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:39:29,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:39:31,426.426 INFO    ] ================================================
[2026-06-05 01:39:31,443.443 INFO    ] Launching Daemon at Fri Jun  5 01:39:31 IST 2026
[2026-06-05 01:39:31,454.454 INFO    ] ================================================
[2026-06-05 01:39:32,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:39:32
[2026-06-05 01:39:32,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:39:33,003.003 INFO    ] Initializing speech engine...
[2026-06-05 01:39:33,014.014 INFO    ] 2026-06-05 01:39:33
[2026-06-05 01:39:33,313.313 INFO    ] 2026-06-05 01:39:33
[2026-06-05 01:39:33,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:39:33,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:39:33,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:39:33,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:39:33,789.789 INFO    ] time= 05/06/2026 01:39:33
[2026-06-05 01:39:33,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:39:33,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:39:33,931.931 INFO    ] No existing commands found in stream
[2026-06-05 01:39:38,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:39:38,944.944 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 01:39:42,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:39:42,410.410 INFO    ] Checking for system updates...
[2026-06-05 01:39:42,447.447 INFO    ] 200
[2026-06-05 01:39:42,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:42,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:39:42,506.506 INFO    ] No update needed
[2026-06-05 01:39:42,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 01:39:42,543.543 INFO    ] 200
[2026-06-05 01:39:42,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:42,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:39:42,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:39:42,637.637 INFO    ] No camera update needed
[2026-06-05 01:39:42,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:39:42,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:39:42,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:39:42,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:39:44,693.693 INFO    ] ================================================
[2026-06-05 01:39:44,709.709 INFO    ] Launching Daemon at Fri Jun  5 01:39:44 IST 2026
[2026-06-05 01:39:44,720.720 INFO    ] ================================================
[2026-06-05 01:39:45,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:39:45
[2026-06-05 01:39:45,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:39:46,208.208 INFO    ] Initializing speech engine...
[2026-06-05 01:39:46,218.218 INFO    ] 2026-06-05 01:39:46
[2026-06-05 01:39:46,519.519 INFO    ] 2026-06-05 01:39:46
[2026-06-05 01:39:46,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:39:46,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:39:46,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:39:46,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:39:46,889.889 INFO    ] time= 05/06/2026 01:39:46
[2026-06-05 01:39:46,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:39:46,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:39:47,045.045 INFO    ] No existing commands found in stream
[2026-06-05 01:39:52,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:39:52,059.059 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 01:39:55,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:39:55,567.567 INFO    ] Checking for system updates...
[2026-06-05 01:39:55,610.610 INFO    ] 200
[2026-06-05 01:39:55,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:55,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:39:55,670.670 INFO    ] No update needed
[2026-06-05 01:39:55,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 01:39:55,713.713 INFO    ] 200
[2026-06-05 01:39:55,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:39:55,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:39:55,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:39:55,814.814 INFO    ] No camera update needed
[2026-06-05 01:39:55,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:39:55,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:39:55,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:39:55,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:39:57,874.874 INFO    ] ================================================
[2026-06-05 01:39:57,890.890 INFO    ] Launching Daemon at Fri Jun  5 01:39:57 IST 2026
[2026-06-05 01:39:57,901.901 INFO    ] ================================================
[2026-06-05 01:39:58,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:39:58
[2026-06-05 01:39:59,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:39:59,325.325 INFO    ] Initializing speech engine...
[2026-06-05 01:39:59,334.334 INFO    ] 2026-06-05 01:39:59
[2026-06-05 01:39:59,589.589 INFO    ] 2026-06-05 01:39:59
[2026-06-05 01:39:59,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:39:59,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:39:59,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:40:00,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:40:00,047.047 INFO    ] time= 05/06/2026 01:40:00
[2026-06-05 01:40:00,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:40:00,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:40:00,191.191 INFO    ] No existing commands found in stream
[2026-06-05 01:40:05,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:40:05,206.206 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 01:40:08,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:40:08,911.911 INFO    ] Checking for system updates...
[2026-06-05 01:40:08,947.947 INFO    ] 200
[2026-06-05 01:40:08,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:09,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:40:09,006.006 INFO    ] No update needed
[2026-06-05 01:40:09,009.009 INFO    ] Checking for camera pi updates...
[2026-06-05 01:40:09,043.043 INFO    ] 200
[2026-06-05 01:40:09,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:09,087.087 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:40:09,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:40:09,138.138 INFO    ] No camera update needed
[2026-06-05 01:40:09,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:40:09,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:40:09,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:40:09,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:40:11,197.197 INFO    ] ================================================
[2026-06-05 01:40:11,216.216 INFO    ] Launching Daemon at Fri Jun  5 01:40:11 IST 2026
[2026-06-05 01:40:11,228.228 INFO    ] ================================================
[2026-06-05 01:40:11,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:40:11
[2026-06-05 01:40:12,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:40:12,656.656 INFO    ] Initializing speech engine...
[2026-06-05 01:40:12,665.665 INFO    ] 2026-06-05 01:40:12
[2026-06-05 01:40:12,911.911 INFO    ] 2026-06-05 01:40:12
[2026-06-05 01:40:12,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:40:13,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:40:13,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:40:13,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:40:13,385.385 INFO    ] time= 05/06/2026 01:40:13
[2026-06-05 01:40:13,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:40:13,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:40:13,562.562 INFO    ] No existing commands found in stream
[2026-06-05 01:40:18,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:40:18,601.601 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 01:40:20,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:40:20,230.230 INFO    ] Checking for system updates...
[2026-06-05 01:40:20,267.267 INFO    ] 200
[2026-06-05 01:40:20,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:20,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:40:20,324.324 INFO    ] No update needed
[2026-06-05 01:40:20,327.327 INFO    ] Checking for camera pi updates...
[2026-06-05 01:40:20,361.361 INFO    ] 200
[2026-06-05 01:40:20,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:20,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:40:20,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:40:20,473.473 INFO    ] No camera update needed
[2026-06-05 01:40:20,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:40:20,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:40:20,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:40:20,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:40:22,528.528 INFO    ] ================================================
[2026-06-05 01:40:22,544.544 INFO    ] Launching Daemon at Fri Jun  5 01:40:22 IST 2026
[2026-06-05 01:40:22,555.555 INFO    ] ================================================
[2026-06-05 01:40:23,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:40:23
[2026-06-05 01:40:23,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:40:24,025.025 INFO    ] Initializing speech engine...
[2026-06-05 01:40:24,032.032 INFO    ] 2026-06-05 01:40:24
[2026-06-05 01:40:24,278.278 INFO    ] 2026-06-05 01:40:24
[2026-06-05 01:40:24,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:40:24,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:40:24,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:40:24,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:40:24,756.756 INFO    ] time= 05/06/2026 01:40:24
[2026-06-05 01:40:24,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:40:24,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:40:24,903.903 INFO    ] No existing commands found in stream
[2026-06-05 01:40:29,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:40:29,936.936 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 01:40:31,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:40:31,146.146 INFO    ] Checking for system updates...
[2026-06-05 01:40:31,183.183 INFO    ] 200
[2026-06-05 01:40:31,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:31,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:40:31,251.251 INFO    ] No update needed
[2026-06-05 01:40:31,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 01:40:31,289.289 INFO    ] 200
[2026-06-05 01:40:31,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:31,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:40:31,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:40:31,385.385 INFO    ] No camera update needed
[2026-06-05 01:40:31,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:40:31,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:40:31,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:40:31,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:40:33,442.442 INFO    ] ================================================
[2026-06-05 01:40:33,459.459 INFO    ] Launching Daemon at Fri Jun  5 01:40:33 IST 2026
[2026-06-05 01:40:33,470.470 INFO    ] ================================================
[2026-06-05 01:40:34,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:40:34
[2026-06-05 01:40:34,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:40:34,893.893 INFO    ] Initializing speech engine...
[2026-06-05 01:40:34,900.900 INFO    ] 2026-06-05 01:40:34
[2026-06-05 01:40:35,149.149 INFO    ] 2026-06-05 01:40:35
[2026-06-05 01:40:35,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:40:35,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:40:35,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:40:35,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:40:35,592.592 INFO    ] time= 05/06/2026 01:40:35
[2026-06-05 01:40:35,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:40:35,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:40:35,826.826 INFO    ] No existing commands found in stream
[2026-06-05 01:40:40,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:40:40,854.854 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 01:40:42,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:40:42,717.717 INFO    ] Checking for system updates...
[2026-06-05 01:40:42,753.753 INFO    ] 200
[2026-06-05 01:40:42,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:42,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:40:42,816.816 INFO    ] No update needed
[2026-06-05 01:40:42,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 01:40:42,853.853 INFO    ] 200
[2026-06-05 01:40:42,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:42,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:40:42,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:40:42,952.952 INFO    ] No camera update needed
[2026-06-05 01:40:42,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:40:42,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:40:42,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:40:42,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:40:45,009.009 INFO    ] ================================================
[2026-06-05 01:40:45,025.025 INFO    ] Launching Daemon at Fri Jun  5 01:40:45 IST 2026
[2026-06-05 01:40:45,036.036 INFO    ] ================================================
[2026-06-05 01:40:45,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:40:45
[2026-06-05 01:40:46,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:40:46,604.604 INFO    ] Initializing speech engine...
[2026-06-05 01:40:46,612.612 INFO    ] 2026-06-05 01:40:46
[2026-06-05 01:40:46,906.906 INFO    ] 2026-06-05 01:40:46
[2026-06-05 01:40:46,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:40:47,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:40:47,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:40:47,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:40:47,388.388 INFO    ] time= 05/06/2026 01:40:47
[2026-06-05 01:40:47,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:40:47,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:40:47,569.569 INFO    ] No existing commands found in stream
[2026-06-05 01:40:52,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:40:52,609.609 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 01:40:55,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:40:55,935.935 INFO    ] Checking for system updates...
[2026-06-05 01:40:55,973.973 INFO    ] 200
[2026-06-05 01:40:55,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:56,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:40:56,034.034 INFO    ] No update needed
[2026-06-05 01:40:56,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 01:40:56,071.071 INFO    ] 200
[2026-06-05 01:40:56,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:40:56,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:40:56,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:40:56,166.166 INFO    ] No camera update needed
[2026-06-05 01:40:56,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:40:56,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:40:56,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:40:56,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:40:58,221.221 INFO    ] ================================================
[2026-06-05 01:40:58,237.237 INFO    ] Launching Daemon at Fri Jun  5 01:40:58 IST 2026
[2026-06-05 01:40:58,248.248 INFO    ] ================================================
[2026-06-05 01:40:58,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:40:58
[2026-06-05 01:40:59,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:40:59,697.697 INFO    ] Initializing speech engine...
[2026-06-05 01:40:59,719.719 INFO    ] 2026-06-05 01:40:59
[2026-06-05 01:40:59,979.979 INFO    ] 2026-06-05 01:40:59
[2026-06-05 01:41:00,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:41:00,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:41:00,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:41:00,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:41:00,356.356 INFO    ] time= 05/06/2026 01:41:00
[2026-06-05 01:41:00,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:41:00,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:41:00,513.513 INFO    ] No existing commands found in stream
[2026-06-05 01:41:05,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:41:05,546.546 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 01:41:07,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:41:07,331.331 INFO    ] Checking for system updates...
[2026-06-05 01:41:07,367.367 INFO    ] 200
[2026-06-05 01:41:07,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:07,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:41:07,430.430 INFO    ] No update needed
[2026-06-05 01:41:07,433.433 INFO    ] Checking for camera pi updates...
[2026-06-05 01:41:07,469.469 INFO    ] 200
[2026-06-05 01:41:07,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:07,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:41:07,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:41:07,563.563 INFO    ] No camera update needed
[2026-06-05 01:41:07,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:41:07,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:41:07,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:41:07,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:41:09,619.619 INFO    ] ================================================
[2026-06-05 01:41:09,635.635 INFO    ] Launching Daemon at Fri Jun  5 01:41:09 IST 2026
[2026-06-05 01:41:09,646.646 INFO    ] ================================================
[2026-06-05 01:41:10,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:41:10
[2026-06-05 01:41:10,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:41:11,048.048 INFO    ] Initializing speech engine...
[2026-06-05 01:41:11,057.057 INFO    ] 2026-06-05 01:41:11
[2026-06-05 01:41:11,329.329 INFO    ] 2026-06-05 01:41:11
[2026-06-05 01:41:11,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:41:11,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:41:11,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:41:11,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:41:11,817.817 INFO    ] time= 05/06/2026 01:41:11
[2026-06-05 01:41:11,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:41:11,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:41:11,972.972 INFO    ] No existing commands found in stream
[2026-06-05 01:41:17,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:41:17,010.010 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 01:41:21,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:41:21,242.242 INFO    ] Checking for system updates...
[2026-06-05 01:41:21,278.278 INFO    ] 200
[2026-06-05 01:41:21,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:21,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:41:21,336.336 INFO    ] No update needed
[2026-06-05 01:41:21,338.338 INFO    ] Checking for camera pi updates...
[2026-06-05 01:41:21,372.372 INFO    ] 200
[2026-06-05 01:41:21,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:21,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:41:21,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:41:21,465.465 INFO    ] No camera update needed
[2026-06-05 01:41:21,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:41:21,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:41:21,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:41:21,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:41:23,521.521 INFO    ] ================================================
[2026-06-05 01:41:23,537.537 INFO    ] Launching Daemon at Fri Jun  5 01:41:23 IST 2026
[2026-06-05 01:41:23,549.549 INFO    ] ================================================
[2026-06-05 01:41:24,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:41:24
[2026-06-05 01:41:24,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:41:24,975.975 INFO    ] Initializing speech engine...
[2026-06-05 01:41:24,984.984 INFO    ] 2026-06-05 01:41:24
[2026-06-05 01:41:25,230.230 INFO    ] 2026-06-05 01:41:25
[2026-06-05 01:41:25,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:41:25,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:41:25,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:41:25,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:41:25,704.704 INFO    ] time= 05/06/2026 01:41:25
[2026-06-05 01:41:25,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:41:25,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:41:25,849.849 INFO    ] No existing commands found in stream
[2026-06-05 01:41:30,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:41:30,859.859 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 01:41:31,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:41:31,723.723 INFO    ] Checking for system updates...
[2026-06-05 01:41:31,766.766 INFO    ] 200
[2026-06-05 01:41:31,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:31,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:41:31,836.836 INFO    ] No update needed
[2026-06-05 01:41:31,839.839 INFO    ] Checking for camera pi updates...
[2026-06-05 01:41:31,879.879 INFO    ] 200
[2026-06-05 01:41:31,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:31,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:41:32,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:41:32,067.067 INFO    ] No camera update needed
[2026-06-05 01:41:32,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:41:32,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:41:32,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:41:32,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:41:34,127.127 INFO    ] ================================================
[2026-06-05 01:41:34,142.142 INFO    ] Launching Daemon at Fri Jun  5 01:41:34 IST 2026
[2026-06-05 01:41:34,153.153 INFO    ] ================================================
[2026-06-05 01:41:34,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:41:34
[2026-06-05 01:41:35,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:41:35,626.626 INFO    ] Initializing speech engine...
[2026-06-05 01:41:35,635.635 INFO    ] 2026-06-05 01:41:35
[2026-06-05 01:41:35,895.895 INFO    ] 2026-06-05 01:41:35
[2026-06-05 01:41:35,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:41:36,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:41:36,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:41:36,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:41:36,360.360 INFO    ] time= 05/06/2026 01:41:36
[2026-06-05 01:41:36,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:41:36,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:41:36,506.506 INFO    ] No existing commands found in stream
[2026-06-05 01:41:41,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:41:41,523.523 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 01:41:43,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:41:43,403.403 INFO    ] Checking for system updates...
[2026-06-05 01:41:43,449.449 INFO    ] 200
[2026-06-05 01:41:43,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:43,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:41:43,507.507 INFO    ] No update needed
[2026-06-05 01:41:43,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 01:41:43,547.547 INFO    ] 200
[2026-06-05 01:41:43,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:43,594.594 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:41:43,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:41:43,642.642 INFO    ] No camera update needed
[2026-06-05 01:41:43,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:41:43,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:41:43,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:41:43,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:41:45,697.697 INFO    ] ================================================
[2026-06-05 01:41:45,713.713 INFO    ] Launching Daemon at Fri Jun  5 01:41:45 IST 2026
[2026-06-05 01:41:45,724.724 INFO    ] ================================================
[2026-06-05 01:41:46,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:41:46
[2026-06-05 01:41:46,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:41:47,217.217 INFO    ] Initializing speech engine...
[2026-06-05 01:41:47,226.226 INFO    ] 2026-06-05 01:41:47
[2026-06-05 01:41:47,501.501 INFO    ] 2026-06-05 01:41:47
[2026-06-05 01:41:47,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:41:47,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:41:47,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:41:47,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:41:47,965.965 INFO    ] time= 05/06/2026 01:41:47
[2026-06-05 01:41:48,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:41:48,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:41:48,115.115 INFO    ] No existing commands found in stream
[2026-06-05 01:41:53,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:41:53,127.127 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 01:41:57,223.223 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:41:57,227.227 INFO    ] Checking for system updates...
[2026-06-05 01:41:57,264.264 INFO    ] 200
[2026-06-05 01:41:57,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:57,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:41:57,324.324 INFO    ] No update needed
[2026-06-05 01:41:57,327.327 INFO    ] Checking for camera pi updates...
[2026-06-05 01:41:57,362.362 INFO    ] 200
[2026-06-05 01:41:57,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:41:57,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:41:57,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:41:57,455.455 INFO    ] No camera update needed
[2026-06-05 01:41:57,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:41:57,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:41:57,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:41:57,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:41:59,513.513 INFO    ] ================================================
[2026-06-05 01:41:59,528.528 INFO    ] Launching Daemon at Fri Jun  5 01:41:59 IST 2026
[2026-06-05 01:41:59,539.539 INFO    ] ================================================
[2026-06-05 01:42:00,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:42:00
[2026-06-05 01:42:00,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:42:01,230.230 INFO    ] Initializing speech engine...
[2026-06-05 01:42:01,234.234 INFO    ] 2026-06-05 01:42:01
[2026-06-05 01:42:01,780.780 INFO    ] 2026-06-05 01:42:01
[2026-06-05 01:42:01,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:42:02,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:42:02,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:42:02,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:42:02,258.258 INFO    ] time= 05/06/2026 01:42:02
[2026-06-05 01:42:02,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:42:02,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:42:02,465.465 INFO    ] No existing commands found in stream
[2026-06-05 01:42:07,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:42:07,479.479 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 01:42:08,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:42:08,612.612 INFO    ] Checking for system updates...
[2026-06-05 01:42:08,648.648 INFO    ] 200
[2026-06-05 01:42:08,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:08,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:42:08,709.709 INFO    ] No update needed
[2026-06-05 01:42:08,711.711 INFO    ] Checking for camera pi updates...
[2026-06-05 01:42:08,745.745 INFO    ] 200
[2026-06-05 01:42:08,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:08,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:42:08,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:42:08,838.838 INFO    ] No camera update needed
[2026-06-05 01:42:08,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:42:08,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:42:08,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:42:08,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:42:10,893.893 INFO    ] ================================================
[2026-06-05 01:42:10,909.909 INFO    ] Launching Daemon at Fri Jun  5 01:42:10 IST 2026
[2026-06-05 01:42:10,920.920 INFO    ] ================================================
[2026-06-05 01:42:11,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:42:11
[2026-06-05 01:42:12,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:42:12,425.425 INFO    ] Initializing speech engine...
[2026-06-05 01:42:12,435.435 INFO    ] 2026-06-05 01:42:12
[2026-06-05 01:42:12,684.684 INFO    ] 2026-06-05 01:42:12
[2026-06-05 01:42:12,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:42:12,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:42:12,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:42:13,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:42:13,059.059 INFO    ] time= 05/06/2026 01:42:13
[2026-06-05 01:42:13,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:42:13,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:42:13,217.217 INFO    ] No existing commands found in stream
[2026-06-05 01:42:18,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:42:18,245.245 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 01:42:19,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:42:19,483.483 INFO    ] Checking for system updates...
[2026-06-05 01:42:19,525.525 INFO    ] 200
[2026-06-05 01:42:19,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:19,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:42:19,591.591 INFO    ] No update needed
[2026-06-05 01:42:19,594.594 INFO    ] Checking for camera pi updates...
[2026-06-05 01:42:19,632.632 INFO    ] 200
[2026-06-05 01:42:19,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:19,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:42:19,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:42:19,727.727 INFO    ] No camera update needed
[2026-06-05 01:42:19,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:42:19,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:42:19,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:42:19,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:42:21,788.788 INFO    ] ================================================
[2026-06-05 01:42:21,803.803 INFO    ] Launching Daemon at Fri Jun  5 01:42:21 IST 2026
[2026-06-05 01:42:21,814.814 INFO    ] ================================================
[2026-06-05 01:42:22,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:42:22
[2026-06-05 01:42:23,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:42:23,415.415 INFO    ] Initializing speech engine...
[2026-06-05 01:42:23,421.421 INFO    ] 2026-06-05 01:42:23
[2026-06-05 01:42:23,667.667 INFO    ] 2026-06-05 01:42:23
[2026-06-05 01:42:23,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:42:23,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:42:23,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:42:24,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:42:24,048.048 INFO    ] time= 05/06/2026 01:42:24
[2026-06-05 01:42:24,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:42:24,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:42:24,235.235 INFO    ] No existing commands found in stream
[2026-06-05 01:42:29,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:42:29,258.258 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 01:42:32,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:42:32,610.610 INFO    ] Checking for system updates...
[2026-06-05 01:42:32,647.647 INFO    ] 200
[2026-06-05 01:42:32,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:32,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:42:32,708.708 INFO    ] No update needed
[2026-06-05 01:42:32,710.710 INFO    ] Checking for camera pi updates...
[2026-06-05 01:42:32,747.747 INFO    ] 200
[2026-06-05 01:42:32,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:32,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:42:32,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:42:32,829.829 INFO    ] No camera update needed
[2026-06-05 01:42:32,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:42:32,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:42:32,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:42:32,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:42:34,888.888 INFO    ] ================================================
[2026-06-05 01:42:34,903.903 INFO    ] Launching Daemon at Fri Jun  5 01:42:34 IST 2026
[2026-06-05 01:42:34,913.913 INFO    ] ================================================
[2026-06-05 01:42:35,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:42:35
[2026-06-05 01:42:36,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:42:36,336.336 INFO    ] Initializing speech engine...
[2026-06-05 01:42:36,352.352 INFO    ] 2026-06-05 01:42:36
[2026-06-05 01:42:36,619.619 INFO    ] 2026-06-05 01:42:36
[2026-06-05 01:42:36,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:42:36,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:42:36,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:42:37,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:42:37,107.107 INFO    ] time= 05/06/2026 01:42:37
[2026-06-05 01:42:37,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:42:37,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:42:37,250.250 INFO    ] No existing commands found in stream
[2026-06-05 01:42:42,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:42:42,260.260 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 01:42:45,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:42:45,045.045 INFO    ] Checking for system updates...
[2026-06-05 01:42:45,085.085 INFO    ] 200
[2026-06-05 01:42:45,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:45,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:42:45,142.142 INFO    ] No update needed
[2026-06-05 01:42:45,145.145 INFO    ] Checking for camera pi updates...
[2026-06-05 01:42:45,181.181 INFO    ] 200
[2026-06-05 01:42:45,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:45,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:42:45,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:42:45,271.271 INFO    ] No camera update needed
[2026-06-05 01:42:45,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:42:45,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:42:45,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:42:45,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:42:47,327.327 INFO    ] ================================================
[2026-06-05 01:42:47,342.342 INFO    ] Launching Daemon at Fri Jun  5 01:42:47 IST 2026
[2026-06-05 01:42:47,353.353 INFO    ] ================================================
[2026-06-05 01:42:48,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:42:48
[2026-06-05 01:42:48,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:42:48,986.986 INFO    ] Initializing speech engine...
[2026-06-05 01:42:48,995.995 INFO    ] 2026-06-05 01:42:48
[2026-06-05 01:42:49,284.284 INFO    ] 2026-06-05 01:42:49
[2026-06-05 01:42:49,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:42:49,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:42:49,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:42:49,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:42:49,836.836 INFO    ] time= 05/06/2026 01:42:49
[2026-06-05 01:42:49,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:42:49,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:42:49,994.994 INFO    ] No existing commands found in stream
[2026-06-05 01:42:55,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:42:55,014.014 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 01:42:55,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:42:55,384.384 INFO    ] Checking for system updates...
[2026-06-05 01:42:55,424.424 INFO    ] 200
[2026-06-05 01:42:55,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:55,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:42:55,482.482 INFO    ] No update needed
[2026-06-05 01:42:55,484.484 INFO    ] Checking for camera pi updates...
[2026-06-05 01:42:55,518.518 INFO    ] 200
[2026-06-05 01:42:55,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:42:55,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:42:55,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:42:55,616.616 INFO    ] No camera update needed
[2026-06-05 01:42:55,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:42:55,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:42:55,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:42:55,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:42:57,672.672 INFO    ] ================================================
[2026-06-05 01:42:57,687.687 INFO    ] Launching Daemon at Fri Jun  5 01:42:57 IST 2026
[2026-06-05 01:42:57,698.698 INFO    ] ================================================
[2026-06-05 01:42:58,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:42:58
[2026-06-05 01:42:58,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:42:59,132.132 INFO    ] Initializing speech engine...
[2026-06-05 01:42:59,148.148 INFO    ] 2026-06-05 01:42:59
[2026-06-05 01:42:59,423.423 INFO    ] 2026-06-05 01:42:59
[2026-06-05 01:42:59,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:42:59,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:42:59,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:42:59,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:42:59,844.844 INFO    ] time= 05/06/2026 01:42:59
[2026-06-05 01:42:59,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:42:59,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:43:00,035.035 INFO    ] No existing commands found in stream
[2026-06-05 01:43:05,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:43:05,063.063 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 01:43:06,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:43:06,032.032 INFO    ] Checking for system updates...
[2026-06-05 01:43:06,075.075 INFO    ] 200
[2026-06-05 01:43:06,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:06,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:43:06,152.152 INFO    ] No update needed
[2026-06-05 01:43:06,154.154 INFO    ] Checking for camera pi updates...
[2026-06-05 01:43:06,189.189 INFO    ] 200
[2026-06-05 01:43:06,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:06,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:43:06,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:43:06,298.298 INFO    ] No camera update needed
[2026-06-05 01:43:06,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:43:06,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:43:06,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:43:06,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:43:08,355.355 INFO    ] ================================================
[2026-06-05 01:43:08,371.371 INFO    ] Launching Daemon at Fri Jun  5 01:43:08 IST 2026
[2026-06-05 01:43:08,381.381 INFO    ] ================================================
[2026-06-05 01:43:08,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:43:08
[2026-06-05 01:43:09,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:43:09,790.790 INFO    ] Initializing speech engine...
[2026-06-05 01:43:09,797.797 INFO    ] 2026-06-05 01:43:09
[2026-06-05 01:43:10,091.091 INFO    ] 2026-06-05 01:43:10
[2026-06-05 01:43:10,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:43:10,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:43:10,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:43:10,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:43:10,469.469 INFO    ] time= 05/06/2026 01:43:10
[2026-06-05 01:43:10,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:43:10,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:43:10,596.596 INFO    ] No existing commands found in stream
[2026-06-05 01:43:15,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:43:15,610.610 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 01:43:19,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:43:19,423.423 INFO    ] Checking for system updates...
[2026-06-05 01:43:19,459.459 INFO    ] 200
[2026-06-05 01:43:19,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:19,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:43:19,518.518 INFO    ] No update needed
[2026-06-05 01:43:19,520.520 INFO    ] Checking for camera pi updates...
[2026-06-05 01:43:19,554.554 INFO    ] 200
[2026-06-05 01:43:19,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:19,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:43:19,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:43:19,650.650 INFO    ] No camera update needed
[2026-06-05 01:43:19,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:43:19,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:43:19,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:43:19,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:43:21,706.706 INFO    ] ================================================
[2026-06-05 01:43:21,722.722 INFO    ] Launching Daemon at Fri Jun  5 01:43:21 IST 2026
[2026-06-05 01:43:21,732.732 INFO    ] ================================================
[2026-06-05 01:43:22,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:43:22
[2026-06-05 01:43:22,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:43:23,140.140 INFO    ] Initializing speech engine...
[2026-06-05 01:43:23,154.154 INFO    ] 2026-06-05 01:43:23
[2026-06-05 01:43:23,439.439 INFO    ] 2026-06-05 01:43:23
[2026-06-05 01:43:23,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:43:23,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:43:23,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:43:23,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:43:23,795.795 INFO    ] time= 05/06/2026 01:43:23
[2026-06-05 01:43:23,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:43:23,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:43:23,880.880 INFO    ] No existing commands found in stream
[2026-06-05 01:43:28,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:43:28,923.923 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 01:43:30,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:43:30,855.855 INFO    ] Checking for system updates...
[2026-06-05 01:43:30,893.893 INFO    ] 200
[2026-06-05 01:43:30,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:30,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:43:30,951.951 INFO    ] No update needed
[2026-06-05 01:43:30,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 01:43:30,986.986 INFO    ] 200
[2026-06-05 01:43:30,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:31,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:43:31,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:43:31,082.082 INFO    ] No camera update needed
[2026-06-05 01:43:31,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:43:31,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:43:31,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:43:31,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:43:33,138.138 INFO    ] ================================================
[2026-06-05 01:43:33,153.153 INFO    ] Launching Daemon at Fri Jun  5 01:43:33 IST 2026
[2026-06-05 01:43:33,164.164 INFO    ] ================================================
[2026-06-05 01:43:33,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:43:33
[2026-06-05 01:43:34,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:43:34,791.791 INFO    ] Initializing speech engine...
[2026-06-05 01:43:34,805.805 INFO    ] 2026-06-05 01:43:34
[2026-06-05 01:43:35,117.117 INFO    ] 2026-06-05 01:43:35
[2026-06-05 01:43:35,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:43:35,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:43:35,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:43:35,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:43:35,644.644 INFO    ] time= 05/06/2026 01:43:35
[2026-06-05 01:43:35,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:43:35,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:43:35,805.805 INFO    ] No existing commands found in stream
[2026-06-05 01:43:40,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:43:40,839.839 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 01:43:42,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:43:42,021.021 INFO    ] Checking for system updates...
[2026-06-05 01:43:42,058.058 INFO    ] 200
[2026-06-05 01:43:42,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:42,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:43:42,115.115 INFO    ] No update needed
[2026-06-05 01:43:42,118.118 INFO    ] Checking for camera pi updates...
[2026-06-05 01:43:42,152.152 INFO    ] 200
[2026-06-05 01:43:42,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:42,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:43:42,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:43:42,350.350 INFO    ] No camera update needed
[2026-06-05 01:43:42,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:43:42,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:43:42,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:43:42,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:43:44,408.408 INFO    ] ================================================
[2026-06-05 01:43:44,424.424 INFO    ] Launching Daemon at Fri Jun  5 01:43:44 IST 2026
[2026-06-05 01:43:44,436.436 INFO    ] ================================================
[2026-06-05 01:43:45,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:43:45
[2026-06-05 01:43:45,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:43:45,894.894 INFO    ] Initializing speech engine...
[2026-06-05 01:43:45,901.901 INFO    ] 2026-06-05 01:43:45
[2026-06-05 01:43:46,163.163 INFO    ] 2026-06-05 01:43:46
[2026-06-05 01:43:46,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:43:46,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:43:46,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:43:46,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:43:46,632.632 INFO    ] time= 05/06/2026 01:43:46
[2026-06-05 01:43:46,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:43:46,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:43:46,774.774 INFO    ] No existing commands found in stream
[2026-06-05 01:43:51,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:43:51,790.790 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 01:43:52,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:43:52,657.657 INFO    ] Checking for system updates...
[2026-06-05 01:43:52,697.697 INFO    ] 200
[2026-06-05 01:43:52,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:52,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:43:52,754.754 INFO    ] No update needed
[2026-06-05 01:43:52,757.757 INFO    ] Checking for camera pi updates...
[2026-06-05 01:43:52,791.791 INFO    ] 200
[2026-06-05 01:43:52,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:43:52,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:43:52,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:43:52,886.886 INFO    ] No camera update needed
[2026-06-05 01:43:52,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:43:52,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:43:52,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:43:52,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:43:54,945.945 INFO    ] ================================================
[2026-06-05 01:43:54,961.961 INFO    ] Launching Daemon at Fri Jun  5 01:43:54 IST 2026
[2026-06-05 01:43:54,972.972 INFO    ] ================================================
[2026-06-05 01:43:55,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:43:55
[2026-06-05 01:43:56,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:43:56,422.422 INFO    ] Initializing speech engine...
[2026-06-05 01:43:56,429.429 INFO    ] 2026-06-05 01:43:56
[2026-06-05 01:43:56,727.727 INFO    ] 2026-06-05 01:43:56
[2026-06-05 01:43:56,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:43:56,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:43:56,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:43:57,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:43:57,108.108 INFO    ] time= 05/06/2026 01:43:57
[2026-06-05 01:43:57,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:43:57,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:43:57,233.233 INFO    ] No existing commands found in stream
[2026-06-05 01:44:02,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:44:02,250.250 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 01:44:02,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:44:02,935.935 INFO    ] Checking for system updates...
[2026-06-05 01:44:02,975.975 INFO    ] 200
[2026-06-05 01:44:02,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:03,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:44:03,032.032 INFO    ] No update needed
[2026-06-05 01:44:03,034.034 INFO    ] Checking for camera pi updates...
[2026-06-05 01:44:03,068.068 INFO    ] 200
[2026-06-05 01:44:03,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:03,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:44:03,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:44:03,145.145 INFO    ] No camera update needed
[2026-06-05 01:44:03,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:44:03,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:44:03,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:44:03,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:44:05,201.201 INFO    ] ================================================
[2026-06-05 01:44:05,217.217 INFO    ] Launching Daemon at Fri Jun  5 01:44:05 IST 2026
[2026-06-05 01:44:05,228.228 INFO    ] ================================================
[2026-06-05 01:44:05,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:44:05
[2026-06-05 01:44:06,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:44:06,688.688 INFO    ] Initializing speech engine...
[2026-06-05 01:44:06,701.701 INFO    ] 2026-06-05 01:44:06
[2026-06-05 01:44:06,952.952 INFO    ] 2026-06-05 01:44:06
[2026-06-05 01:44:06,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:44:07,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:44:07,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:44:07,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:44:07,453.453 INFO    ] time= 05/06/2026 01:44:07
[2026-06-05 01:44:07,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:44:07,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:44:07,632.632 INFO    ] No existing commands found in stream
[2026-06-05 01:44:12,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:44:12,661.661 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 01:44:16,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:44:16,562.562 INFO    ] Checking for system updates...
[2026-06-05 01:44:16,618.618 INFO    ] 200
[2026-06-05 01:44:16,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:16,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:44:16,676.676 INFO    ] No update needed
[2026-06-05 01:44:16,678.678 INFO    ] Checking for camera pi updates...
[2026-06-05 01:44:16,712.712 INFO    ] 200
[2026-06-05 01:44:16,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:16,756.756 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:44:16,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:44:16,806.806 INFO    ] No camera update needed
[2026-06-05 01:44:16,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:44:16,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:44:16,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:44:16,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:44:18,861.861 INFO    ] ================================================
[2026-06-05 01:44:18,877.877 INFO    ] Launching Daemon at Fri Jun  5 01:44:18 IST 2026
[2026-06-05 01:44:18,888.888 INFO    ] ================================================
[2026-06-05 01:44:19,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:44:19
[2026-06-05 01:44:20,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:44:20,445.445 INFO    ] Initializing speech engine...
[2026-06-05 01:44:20,451.451 INFO    ] 2026-06-05 01:44:20
[2026-06-05 01:44:20,719.719 INFO    ] 2026-06-05 01:44:20
[2026-06-05 01:44:20,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:44:21,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:44:21,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:44:21,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:44:21,201.201 INFO    ] time= 05/06/2026 01:44:21
[2026-06-05 01:44:21,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:44:21,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:44:21,358.358 INFO    ] No existing commands found in stream
[2026-06-05 01:44:26,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:44:26,398.398 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 01:44:30,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:44:30,321.321 INFO    ] Checking for system updates...
[2026-06-05 01:44:30,358.358 INFO    ] 200
[2026-06-05 01:44:30,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:30,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:44:30,421.421 INFO    ] No update needed
[2026-06-05 01:44:30,424.424 INFO    ] Checking for camera pi updates...
[2026-06-05 01:44:30,460.460 INFO    ] 200
[2026-06-05 01:44:30,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:30,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:44:30,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:44:30,554.554 INFO    ] No camera update needed
[2026-06-05 01:44:30,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:44:30,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:44:30,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:44:30,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:44:32,612.612 INFO    ] ================================================
[2026-06-05 01:44:32,628.628 INFO    ] Launching Daemon at Fri Jun  5 01:44:32 IST 2026
[2026-06-05 01:44:32,639.639 INFO    ] ================================================
[2026-06-05 01:44:33,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:44:33
[2026-06-05 01:44:33,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:44:34,038.038 INFO    ] Initializing speech engine...
[2026-06-05 01:44:34,047.047 INFO    ] 2026-06-05 01:44:34
[2026-06-05 01:44:34,322.322 INFO    ] 2026-06-05 01:44:34
[2026-06-05 01:44:34,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:44:34,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:44:34,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:44:34,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:44:34,768.768 INFO    ] time= 05/06/2026 01:44:34
[2026-06-05 01:44:34,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:44:34,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:44:34,951.951 INFO    ] No existing commands found in stream
[2026-06-05 01:44:39,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:44:39,966.966 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 01:44:41,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:44:41,356.356 INFO    ] Checking for system updates...
[2026-06-05 01:44:41,393.393 INFO    ] 200
[2026-06-05 01:44:41,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:41,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:44:41,452.452 INFO    ] No update needed
[2026-06-05 01:44:41,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 01:44:41,488.488 INFO    ] 200
[2026-06-05 01:44:41,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:41,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:44:41,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:44:41,587.587 INFO    ] No camera update needed
[2026-06-05 01:44:41,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:44:41,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:44:41,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:44:41,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:44:43,645.645 INFO    ] ================================================
[2026-06-05 01:44:43,660.660 INFO    ] Launching Daemon at Fri Jun  5 01:44:43 IST 2026
[2026-06-05 01:44:43,671.671 INFO    ] ================================================
[2026-06-05 01:44:44,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:44:44
[2026-06-05 01:44:44,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:44:45,096.096 INFO    ] Initializing speech engine...
[2026-06-05 01:44:45,104.104 INFO    ] 2026-06-05 01:44:45
[2026-06-05 01:44:45,356.356 INFO    ] 2026-06-05 01:44:45
[2026-06-05 01:44:45,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:44:45,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:44:45,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:44:45,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:44:45,838.838 INFO    ] time= 05/06/2026 01:44:45
[2026-06-05 01:44:45,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:44:45,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:44:45,993.993 INFO    ] No existing commands found in stream
[2026-06-05 01:44:51,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:44:51,010.010 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 01:44:51,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:44:51,797.797 INFO    ] Checking for system updates...
[2026-06-05 01:44:51,835.835 INFO    ] 200
[2026-06-05 01:44:51,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:51,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:44:51,898.898 INFO    ] No update needed
[2026-06-05 01:44:51,900.900 INFO    ] Checking for camera pi updates...
[2026-06-05 01:44:51,933.933 INFO    ] 200
[2026-06-05 01:44:51,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:44:51,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:44:52,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:44:52,028.028 INFO    ] No camera update needed
[2026-06-05 01:44:52,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:44:52,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:44:52,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:44:52,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:44:54,082.082 INFO    ] ================================================
[2026-06-05 01:44:54,097.097 INFO    ] Launching Daemon at Fri Jun  5 01:44:54 IST 2026
[2026-06-05 01:44:54,108.108 INFO    ] ================================================
[2026-06-05 01:44:54,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:44:54
[2026-06-05 01:44:55,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:44:55,519.519 INFO    ] Initializing speech engine...
[2026-06-05 01:44:55,538.538 INFO    ] 2026-06-05 01:44:55
[2026-06-05 01:44:55,789.789 INFO    ] 2026-06-05 01:44:55
[2026-06-05 01:44:55,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:44:56,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:44:56,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:44:56,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:44:56,245.245 INFO    ] time= 05/06/2026 01:44:56
[2026-06-05 01:44:56,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:44:56,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:44:56,422.422 INFO    ] No existing commands found in stream
[2026-06-05 01:45:01,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:45:01,439.439 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 01:45:05,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:45:05,310.310 INFO    ] Checking for system updates...
[2026-06-05 01:45:05,346.346 INFO    ] 200
[2026-06-05 01:45:05,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:05,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:45:05,404.404 INFO    ] No update needed
[2026-06-05 01:45:05,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 01:45:05,441.441 INFO    ] 200
[2026-06-05 01:45:05,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:05,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:45:05,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:45:05,535.535 INFO    ] No camera update needed
[2026-06-05 01:45:05,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:45:05,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:45:05,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:45:05,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:45:07,592.592 INFO    ] ================================================
[2026-06-05 01:45:07,608.608 INFO    ] Launching Daemon at Fri Jun  5 01:45:07 IST 2026
[2026-06-05 01:45:07,620.620 INFO    ] ================================================
[2026-06-05 01:45:08,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:45:08
[2026-06-05 01:45:08,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:45:09,160.160 INFO    ] Initializing speech engine...
[2026-06-05 01:45:09,170.170 INFO    ] 2026-06-05 01:45:09
[2026-06-05 01:45:09,490.490 INFO    ] 2026-06-05 01:45:09
[2026-06-05 01:45:09,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:45:09,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:45:09,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:45:09,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:45:10,027.027 INFO    ] time= 05/06/2026 01:45:10
[2026-06-05 01:45:10,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:45:10,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:45:10,172.172 INFO    ] No existing commands found in stream
[2026-06-05 01:45:15,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:45:15,196.196 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 01:45:16,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:45:16,663.663 INFO    ] Checking for system updates...
[2026-06-05 01:45:16,701.701 INFO    ] 200
[2026-06-05 01:45:16,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:16,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:45:16,765.765 INFO    ] No update needed
[2026-06-05 01:45:16,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 01:45:16,801.801 INFO    ] 200
[2026-06-05 01:45:16,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:16,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:45:16,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:45:16,904.904 INFO    ] No camera update needed
[2026-06-05 01:45:16,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:45:16,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:45:16,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:45:16,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:45:18,961.961 INFO    ] ================================================
[2026-06-05 01:45:18,976.976 INFO    ] Launching Daemon at Fri Jun  5 01:45:18 IST 2026
[2026-06-05 01:45:18,987.987 INFO    ] ================================================
[2026-06-05 01:45:19,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:45:19
[2026-06-05 01:45:20,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:45:20,414.414 INFO    ] Initializing speech engine...
[2026-06-05 01:45:20,439.439 INFO    ] 2026-06-05 01:45:20
[2026-06-05 01:45:20,708.708 INFO    ] 2026-06-05 01:45:20
[2026-06-05 01:45:20,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:45:20,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:45:20,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:45:21,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:45:21,120.120 INFO    ] time= 05/06/2026 01:45:21
[2026-06-05 01:45:21,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:45:21,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:45:21,306.306 INFO    ] No existing commands found in stream
[2026-06-05 01:45:26,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:45:26,334.334 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 01:45:27,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:45:27,623.623 INFO    ] Checking for system updates...
[2026-06-05 01:45:27,659.659 INFO    ] 200
[2026-06-05 01:45:27,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:27,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:45:27,717.717 INFO    ] No update needed
[2026-06-05 01:45:27,719.719 INFO    ] Checking for camera pi updates...
[2026-06-05 01:45:27,753.753 INFO    ] 200
[2026-06-05 01:45:27,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:27,797.797 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:45:27,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:45:27,850.850 INFO    ] No camera update needed
[2026-06-05 01:45:27,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:45:27,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:45:27,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:45:27,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:45:29,908.908 INFO    ] ================================================
[2026-06-05 01:45:29,923.923 INFO    ] Launching Daemon at Fri Jun  5 01:45:29 IST 2026
[2026-06-05 01:45:29,934.934 INFO    ] ================================================
[2026-06-05 01:45:30,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:45:30
[2026-06-05 01:45:31,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:45:31,397.397 INFO    ] Initializing speech engine...
[2026-06-05 01:45:31,404.404 INFO    ] 2026-06-05 01:45:31
[2026-06-05 01:45:31,677.677 INFO    ] 2026-06-05 01:45:31
[2026-06-05 01:45:31,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:45:31,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:45:31,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:45:32,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:45:32,091.091 INFO    ] time= 05/06/2026 01:45:32
[2026-06-05 01:45:32,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:45:32,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:45:32,202.202 INFO    ] No existing commands found in stream
[2026-06-05 01:45:37,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:45:37,220.220 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 01:45:40,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:45:40,513.513 INFO    ] Checking for system updates...
[2026-06-05 01:45:40,549.549 INFO    ] 200
[2026-06-05 01:45:40,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:40,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:45:40,609.609 INFO    ] No update needed
[2026-06-05 01:45:40,611.611 INFO    ] Checking for camera pi updates...
[2026-06-05 01:45:40,646.646 INFO    ] 200
[2026-06-05 01:45:40,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:40,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:45:40,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:45:40,743.743 INFO    ] No camera update needed
[2026-06-05 01:45:40,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:45:40,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:45:40,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:45:40,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:45:42,799.799 INFO    ] ================================================
[2026-06-05 01:45:42,816.816 INFO    ] Launching Daemon at Fri Jun  5 01:45:42 IST 2026
[2026-06-05 01:45:42,826.826 INFO    ] ================================================
[2026-06-05 01:45:43,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:45:43
[2026-06-05 01:45:44,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:45:44,293.293 INFO    ] Initializing speech engine...
[2026-06-05 01:45:44,299.299 INFO    ] 2026-06-05 01:45:44
[2026-06-05 01:45:44,561.561 INFO    ] 2026-06-05 01:45:44
[2026-06-05 01:45:44,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:45:44,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:45:44,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:45:45,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:45:45,104.104 INFO    ] time= 05/06/2026 01:45:45
[2026-06-05 01:45:45,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:45:45,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:45:45,239.239 INFO    ] No existing commands found in stream
[2026-06-05 01:45:50,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:45:50,269.269 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 01:45:53,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:45:53,046.046 INFO    ] Checking for system updates...
[2026-06-05 01:45:53,082.082 INFO    ] 200
[2026-06-05 01:45:53,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:53,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:45:53,144.144 INFO    ] No update needed
[2026-06-05 01:45:53,146.146 INFO    ] Checking for camera pi updates...
[2026-06-05 01:45:53,182.182 INFO    ] 200
[2026-06-05 01:45:53,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:45:53,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:45:53,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:45:53,374.374 INFO    ] No camera update needed
[2026-06-05 01:45:53,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:45:53,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:45:53,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:45:53,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:45:55,430.430 INFO    ] ================================================
[2026-06-05 01:45:55,445.445 INFO    ] Launching Daemon at Fri Jun  5 01:45:55 IST 2026
[2026-06-05 01:45:55,457.457 INFO    ] ================================================
[2026-06-05 01:45:56,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:45:56
[2026-06-05 01:45:56,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:45:56,962.962 INFO    ] Initializing speech engine...
[2026-06-05 01:45:56,971.971 INFO    ] 2026-06-05 01:45:56
[2026-06-05 01:45:57,232.232 INFO    ] 2026-06-05 01:45:57
[2026-06-05 01:45:57,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:45:57,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:45:57,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:45:57,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:45:57,725.725 INFO    ] time= 05/06/2026 01:45:57
[2026-06-05 01:45:57,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:45:57,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:45:57,858.858 INFO    ] No existing commands found in stream
[2026-06-05 01:46:02,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:46:02,870.870 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 01:46:06,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:46:06,796.796 INFO    ] Checking for system updates...
[2026-06-05 01:46:06,833.833 INFO    ] 200
[2026-06-05 01:46:06,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:06,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:46:06,894.894 INFO    ] No update needed
[2026-06-05 01:46:06,897.897 INFO    ] Checking for camera pi updates...
[2026-06-05 01:46:06,932.932 INFO    ] 200
[2026-06-05 01:46:06,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:06,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:46:07,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:46:07,031.031 INFO    ] No camera update needed
[2026-06-05 01:46:07,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:46:07,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:46:07,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:46:07,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:46:09,182.182 INFO    ] ================================================
[2026-06-05 01:46:09,198.198 INFO    ] Launching Daemon at Fri Jun  5 01:46:09 IST 2026
[2026-06-05 01:46:09,210.210 INFO    ] ================================================
[2026-06-05 01:46:09,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:46:09
[2026-06-05 01:46:10,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:46:10,639.639 INFO    ] Initializing speech engine...
[2026-06-05 01:46:10,645.645 INFO    ] 2026-06-05 01:46:10
[2026-06-05 01:46:10,904.904 INFO    ] 2026-06-05 01:46:10
[2026-06-05 01:46:10,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:46:11,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:46:11,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:46:11,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:46:11,360.360 INFO    ] time= 05/06/2026 01:46:11
[2026-06-05 01:46:11,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:46:11,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:46:11,546.546 INFO    ] No existing commands found in stream
[2026-06-05 01:46:16,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:46:16,587.587 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 01:46:19,820.820 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:46:19,881.881 INFO    ] Checking for system updates...
[2026-06-05 01:46:19,923.923 INFO    ] 200
[2026-06-05 01:46:19,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:19,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:46:19,981.981 INFO    ] No update needed
[2026-06-05 01:46:19,983.983 INFO    ] Checking for camera pi updates...
[2026-06-05 01:46:20,019.019 INFO    ] 200
[2026-06-05 01:46:20,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:20,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:46:20,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:46:20,129.129 INFO    ] No camera update needed
[2026-06-05 01:46:20,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:46:20,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:46:20,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:46:20,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:46:22,185.185 INFO    ] ================================================
[2026-06-05 01:46:22,201.201 INFO    ] Launching Daemon at Fri Jun  5 01:46:22 IST 2026
[2026-06-05 01:46:22,212.212 INFO    ] ================================================
[2026-06-05 01:46:22,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:46:22
[2026-06-05 01:46:23,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:46:23,750.750 INFO    ] Initializing speech engine...
[2026-06-05 01:46:23,765.765 INFO    ] 2026-06-05 01:46:23
[2026-06-05 01:46:24,030.030 INFO    ] 2026-06-05 01:46:24
[2026-06-05 01:46:24,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:46:24,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:46:24,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:46:24,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:46:24,525.525 INFO    ] time= 05/06/2026 01:46:24
[2026-06-05 01:46:24,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:46:24,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:46:24,749.749 INFO    ] No existing commands found in stream
[2026-06-05 01:46:29,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:46:29,767.767 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 01:46:32,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:46:32,173.173 INFO    ] Checking for system updates...
[2026-06-05 01:46:32,213.213 INFO    ] 200
[2026-06-05 01:46:32,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:32,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:46:32,284.284 INFO    ] No update needed
[2026-06-05 01:46:32,288.288 INFO    ] Checking for camera pi updates...
[2026-06-05 01:46:32,326.326 INFO    ] 200
[2026-06-05 01:46:32,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:32,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:46:32,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:46:32,419.419 INFO    ] No camera update needed
[2026-06-05 01:46:32,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:46:32,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:46:32,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:46:32,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:46:34,481.481 INFO    ] ================================================
[2026-06-05 01:46:34,497.497 INFO    ] Launching Daemon at Fri Jun  5 01:46:34 IST 2026
[2026-06-05 01:46:34,508.508 INFO    ] ================================================
[2026-06-05 01:46:35,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:46:35
[2026-06-05 01:46:35,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:46:35,930.930 INFO    ] Initializing speech engine...
[2026-06-05 01:46:35,944.944 INFO    ] 2026-06-05 01:46:35
[2026-06-05 01:46:36,227.227 INFO    ] 2026-06-05 01:46:36
[2026-06-05 01:46:36,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:46:36,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:46:36,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:46:36,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:46:36,602.602 INFO    ] time= 05/06/2026 01:46:36
[2026-06-05 01:46:36,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:46:36,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:46:36,726.726 INFO    ] No existing commands found in stream
[2026-06-05 01:46:41,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:46:41,738.738 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 01:46:44,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:46:44,735.735 INFO    ] Checking for system updates...
[2026-06-05 01:46:44,772.772 INFO    ] 200
[2026-06-05 01:46:44,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:44,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:46:44,833.833 INFO    ] No update needed
[2026-06-05 01:46:44,836.836 INFO    ] Checking for camera pi updates...
[2026-06-05 01:46:44,871.871 INFO    ] 200
[2026-06-05 01:46:44,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:44,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:46:44,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:46:44,977.977 INFO    ] No camera update needed
[2026-06-05 01:46:44,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:46:44,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:46:44,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:46:44,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:46:47,040.040 INFO    ] ================================================
[2026-06-05 01:46:47,056.056 INFO    ] Launching Daemon at Fri Jun  5 01:46:47 IST 2026
[2026-06-05 01:46:47,067.067 INFO    ] ================================================
[2026-06-05 01:46:47,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:46:47
[2026-06-05 01:46:48,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:46:48,497.497 INFO    ] Initializing speech engine...
[2026-06-05 01:46:48,507.507 INFO    ] 2026-06-05 01:46:48
[2026-06-05 01:46:48,753.753 INFO    ] 2026-06-05 01:46:48
[2026-06-05 01:46:48,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:46:49,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:46:49,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:46:49,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:46:49,241.241 INFO    ] time= 05/06/2026 01:46:49
[2026-06-05 01:46:49,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:46:49,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:46:49,384.384 INFO    ] No existing commands found in stream
[2026-06-05 01:46:54,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:46:54,399.399 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 01:46:56,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:46:56,952.952 INFO    ] Checking for system updates...
[2026-06-05 01:46:56,988.988 INFO    ] 200
[2026-06-05 01:46:56,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:57,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:46:57,052.052 INFO    ] No update needed
[2026-06-05 01:46:57,054.054 INFO    ] Checking for camera pi updates...
[2026-06-05 01:46:57,088.088 INFO    ] 200
[2026-06-05 01:46:57,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:46:57,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:46:57,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:46:57,181.181 INFO    ] No camera update needed
[2026-06-05 01:46:57,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:46:57,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:46:57,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:46:57,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:46:59,238.238 INFO    ] ================================================
[2026-06-05 01:46:59,253.253 INFO    ] Launching Daemon at Fri Jun  5 01:46:59 IST 2026
[2026-06-05 01:46:59,263.263 INFO    ] ================================================
[2026-06-05 01:46:59,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:46:59
[2026-06-05 01:47:00,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:47:00,677.677 INFO    ] Initializing speech engine...
[2026-06-05 01:47:00,685.685 INFO    ] 2026-06-05 01:47:00
[2026-06-05 01:47:00,978.978 INFO    ] 2026-06-05 01:47:00
[2026-06-05 01:47:01,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:47:01,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:47:01,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:47:01,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:47:01,387.387 INFO    ] time= 05/06/2026 01:47:01
[2026-06-05 01:47:01,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:47:01,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:47:01,466.466 INFO    ] No existing commands found in stream
[2026-06-05 01:47:06,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:47:06,479.479 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 01:47:07,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:47:07,593.593 INFO    ] Checking for system updates...
[2026-06-05 01:47:07,630.630 INFO    ] 200
[2026-06-05 01:47:07,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:07,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:47:07,689.689 INFO    ] No update needed
[2026-06-05 01:47:07,691.691 INFO    ] Checking for camera pi updates...
[2026-06-05 01:47:07,726.726 INFO    ] 200
[2026-06-05 01:47:07,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:07,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:47:07,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:47:07,820.820 INFO    ] No camera update needed
[2026-06-05 01:47:07,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:47:07,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:47:07,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:47:07,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:47:09,877.877 INFO    ] ================================================
[2026-06-05 01:47:09,892.892 INFO    ] Launching Daemon at Fri Jun  5 01:47:09 IST 2026
[2026-06-05 01:47:09,903.903 INFO    ] ================================================
[2026-06-05 01:47:10,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:47:10
[2026-06-05 01:47:11,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:47:11,391.391 INFO    ] Initializing speech engine...
[2026-06-05 01:47:11,412.412 INFO    ] 2026-06-05 01:47:11
[2026-06-05 01:47:11,672.672 INFO    ] 2026-06-05 01:47:11
[2026-06-05 01:47:11,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:47:11,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:47:11,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:47:12,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:47:12,048.048 INFO    ] time= 05/06/2026 01:47:12
[2026-06-05 01:47:12,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:47:12,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:47:12,206.206 INFO    ] No existing commands found in stream
[2026-06-05 01:47:17,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:47:17,239.239 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 01:47:19,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:47:19,249.249 INFO    ] Checking for system updates...
[2026-06-05 01:47:19,285.285 INFO    ] 200
[2026-06-05 01:47:19,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:19,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:47:19,343.343 INFO    ] No update needed
[2026-06-05 01:47:19,346.346 INFO    ] Checking for camera pi updates...
[2026-06-05 01:47:19,380.380 INFO    ] 200
[2026-06-05 01:47:19,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:19,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:47:19,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:47:19,487.487 INFO    ] No camera update needed
[2026-06-05 01:47:19,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:47:19,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:47:19,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:47:19,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:47:21,542.542 INFO    ] ================================================
[2026-06-05 01:47:21,559.559 INFO    ] Launching Daemon at Fri Jun  5 01:47:21 IST 2026
[2026-06-05 01:47:21,570.570 INFO    ] ================================================
[2026-06-05 01:47:22,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:47:22
[2026-06-05 01:47:22,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:47:23,193.193 INFO    ] Initializing speech engine...
[2026-06-05 01:47:23,204.204 INFO    ] 2026-06-05 01:47:23
[2026-06-05 01:47:23,523.523 INFO    ] 2026-06-05 01:47:23
[2026-06-05 01:47:23,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:47:23,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:47:23,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:47:23,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:47:23,982.982 INFO    ] time= 05/06/2026 01:47:23
[2026-06-05 01:47:24,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:47:24,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:47:24,110.110 INFO    ] No existing commands found in stream
[2026-06-05 01:47:29,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:47:29,128.128 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 01:47:32,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:47:32,072.072 INFO    ] Checking for system updates...
[2026-06-05 01:47:32,116.116 INFO    ] 200
[2026-06-05 01:47:32,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:32,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:47:32,190.190 INFO    ] No update needed
[2026-06-05 01:47:32,192.192 INFO    ] Checking for camera pi updates...
[2026-06-05 01:47:32,238.238 INFO    ] 200
[2026-06-05 01:47:32,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:32,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:47:32,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:47:32,334.334 INFO    ] No camera update needed
[2026-06-05 01:47:32,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:47:32,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:47:32,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:47:32,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:47:34,397.397 INFO    ] ================================================
[2026-06-05 01:47:34,413.413 INFO    ] Launching Daemon at Fri Jun  5 01:47:34 IST 2026
[2026-06-05 01:47:34,424.424 INFO    ] ================================================
[2026-06-05 01:47:35,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:47:35
[2026-06-05 01:47:35,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:47:35,874.874 INFO    ] Initializing speech engine...
[2026-06-05 01:47:35,883.883 INFO    ] 2026-06-05 01:47:35
[2026-06-05 01:47:36,134.134 INFO    ] 2026-06-05 01:47:36
[2026-06-05 01:47:36,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:47:36,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:47:36,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:47:36,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:47:36,591.591 INFO    ] time= 05/06/2026 01:47:36
[2026-06-05 01:47:36,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:47:36,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:47:36,814.814 INFO    ] No existing commands found in stream
[2026-06-05 01:47:41,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:47:41,846.846 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 01:47:43,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:47:43,701.701 INFO    ] Checking for system updates...
[2026-06-05 01:47:43,737.737 INFO    ] 200
[2026-06-05 01:47:43,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:43,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:47:43,795.795 INFO    ] No update needed
[2026-06-05 01:47:43,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 01:47:43,832.832 INFO    ] 200
[2026-06-05 01:47:43,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:43,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:47:43,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:47:43,926.926 INFO    ] No camera update needed
[2026-06-05 01:47:43,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:47:43,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:47:43,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:47:43,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:47:45,983.983 INFO    ] ================================================
[2026-06-05 01:47:46,999.999 INFO    ] Launching Daemon at Fri Jun  5 01:47:45 IST 2026
[2026-06-05 01:47:46,011.011 INFO    ] ================================================
[2026-06-05 01:47:46,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:47:46
[2026-06-05 01:47:47,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:47:47,440.440 INFO    ] Initializing speech engine...
[2026-06-05 01:47:47,447.447 INFO    ] 2026-06-05 01:47:47
[2026-06-05 01:47:47,706.706 INFO    ] 2026-06-05 01:47:47
[2026-06-05 01:47:47,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:47:47,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:47:47,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:47:48,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:47:48,141.141 INFO    ] time= 05/06/2026 01:47:48
[2026-06-05 01:47:48,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:47:48,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:47:48,328.328 INFO    ] No existing commands found in stream
[2026-06-05 01:47:53,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:47:53,368.368 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 01:47:57,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:47:57,103.103 INFO    ] Checking for system updates...
[2026-06-05 01:47:57,139.139 INFO    ] 200
[2026-06-05 01:47:57,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:57,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:47:57,198.198 INFO    ] No update needed
[2026-06-05 01:47:57,201.201 INFO    ] Checking for camera pi updates...
[2026-06-05 01:47:57,238.238 INFO    ] 200
[2026-06-05 01:47:57,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:47:57,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:47:57,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:47:57,436.436 INFO    ] No camera update needed
[2026-06-05 01:47:57,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:47:57,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:47:57,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:47:57,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:47:59,492.492 INFO    ] ================================================
[2026-06-05 01:47:59,509.509 INFO    ] Launching Daemon at Fri Jun  5 01:47:59 IST 2026
[2026-06-05 01:47:59,520.520 INFO    ] ================================================
[2026-06-05 01:48:00,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:48:00
[2026-06-05 01:48:00,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:48:00,956.956 INFO    ] Initializing speech engine...
[2026-06-05 01:48:00,972.972 INFO    ] 2026-06-05 01:48:00
[2026-06-05 01:48:01,251.251 INFO    ] 2026-06-05 01:48:01
[2026-06-05 01:48:01,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:48:01,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:48:01,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:48:01,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:48:01,633.633 INFO    ] time= 05/06/2026 01:48:01
[2026-06-05 01:48:01,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:48:01,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:48:01,721.721 INFO    ] No existing commands found in stream
[2026-06-05 01:48:06,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:48:06,734.734 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 01:48:10,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:48:10,242.242 INFO    ] Checking for system updates...
[2026-06-05 01:48:10,279.279 INFO    ] 200
[2026-06-05 01:48:10,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:48:10,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:48:10,339.339 INFO    ] No update needed
[2026-06-05 01:48:10,342.342 INFO    ] Checking for camera pi updates...
[2026-06-05 01:48:10,391.391 INFO    ] 200
[2026-06-05 01:48:10,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:48:10,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:48:10,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:48:10,487.487 INFO    ] No camera update needed
[2026-06-05 01:48:10,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:48:10,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:48:10,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:48:10,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:48:12,545.545 INFO    ] ================================================
[2026-06-05 01:48:12,561.561 INFO    ] Launching Daemon at Fri Jun  5 01:48:12 IST 2026
[2026-06-05 01:48:12,573.573 INFO    ] ================================================
[2026-06-05 01:48:13,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:48:13
[2026-06-05 01:48:13,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:48:13,983.983 INFO    ] Initializing speech engine...
[2026-06-05 01:48:13,997.997 INFO    ] 2026-06-05 01:48:13
[2026-06-05 01:48:14,266.266 INFO    ] 2026-06-05 01:48:14
[2026-06-05 01:48:14,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:48:14,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:48:14,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:48:14,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:48:14,650.650 INFO    ] time= 05/06/2026 01:48:14
[2026-06-05 01:48:14,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:48:14,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:48:14,845.845 INFO    ] No existing commands found in stream
[2026-06-05 01:48:19,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:48:19,864.864 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 01:48:23,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:48:23,662.662 INFO    ] Checking for system updates...
[2026-06-05 01:48:23,698.698 INFO    ] 200
[2026-06-05 01:48:23,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:48:23,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:48:23,757.757 INFO    ] No update needed
[2026-06-05 01:48:23,760.760 INFO    ] Checking for camera pi updates...
[2026-06-05 01:48:23,794.794 INFO    ] 200
[2026-06-05 01:48:23,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:48:23,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:48:23,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:48:23,898.898 INFO    ] No camera update needed
[2026-06-05 01:48:23,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:48:23,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:48:23,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:48:23,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:48:25,956.956 INFO    ] ================================================
[2026-06-05 01:48:25,972.972 INFO    ] Launching Daemon at Fri Jun  5 01:48:25 IST 2026
[2026-06-05 01:48:25,983.983 INFO    ] ================================================
[2026-06-05 01:48:26,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:48:26
[2026-06-05 01:48:27,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:48:27,448.448 INFO    ] Initializing speech engine...
[2026-06-05 01:48:27,458.458 INFO    ] 2026-06-05 01:48:27
[2026-06-05 01:48:27,708.708 INFO    ] 2026-06-05 01:48:27
[2026-06-05 01:48:27,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:48:27,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:48:28,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:48:28,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:48:28,187.187 INFO    ] time= 05/06/2026 01:48:28
[2026-06-05 01:48:28,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:48:28,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:48:28,334.334 INFO    ] No existing commands found in stream
[2026-06-05 01:48:33,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:48:33,352.352 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 01:48:36,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:48:36,272.272 INFO    ] Checking for system updates...
[2026-06-05 01:48:36,327.327 INFO    ] 200
[2026-06-05 01:48:36,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 01:48:36,333.333 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 01:48:36,336.336 INFO    ] Checking for camera pi updates...
[2026-06-05 01:48:36,380.380 INFO    ] 200
[2026-06-05 01:48:36,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 01:48:36,387.387 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 01:48:36,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:48:36,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:48:36,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:48:36,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:48:38,453.453 INFO    ] ================================================
[2026-06-05 01:48:38,470.470 INFO    ] Launching Daemon at Fri Jun  5 01:48:38 IST 2026
[2026-06-05 01:48:38,482.482 INFO    ] ================================================
[2026-06-05 01:48:39,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:48:39
[2026-06-05 01:48:39,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:48:39,953.953 INFO    ] Initializing speech engine...
[2026-06-05 01:48:39,963.963 INFO    ] 2026-06-05 01:48:39
[2026-06-05 01:48:40,222.222 INFO    ] 2026-06-05 01:48:40
[2026-06-05 01:48:40,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:48:40,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:48:40,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:48:40,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:48:40,685.685 INFO    ] time= 05/06/2026 01:48:40
[2026-06-05 01:48:40,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:48:40,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:48:40,826.826 INFO    ] No existing commands found in stream
[2026-06-05 01:48:45,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:48:45,841.841 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 01:48:49,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:48:49,314.314 INFO    ] Checking for system updates...
[2026-06-05 01:48:49,355.355 INFO    ] 200
[2026-06-05 01:48:49,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:48:49,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:48:49,419.419 INFO    ] No update needed
[2026-06-05 01:48:49,421.421 INFO    ] Checking for camera pi updates...
[2026-06-05 01:48:49,464.464 INFO    ] 200
[2026-06-05 01:48:49,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:48:49,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:48:49,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:48:49,562.562 INFO    ] No camera update needed
[2026-06-05 01:48:49,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:48:49,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:48:49,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:48:49,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:48:51,620.620 INFO    ] ================================================
[2026-06-05 01:48:51,635.635 INFO    ] Launching Daemon at Fri Jun  5 01:48:51 IST 2026
[2026-06-05 01:48:51,649.649 INFO    ] ================================================
[2026-06-05 01:48:52,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:48:52
[2026-06-05 01:48:52,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:48:53,075.075 INFO    ] Initializing speech engine...
[2026-06-05 01:48:53,083.083 INFO    ] 2026-06-05 01:48:53
[2026-06-05 01:48:53,336.336 INFO    ] 2026-06-05 01:48:53
[2026-06-05 01:48:53,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:48:53,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:48:53,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:48:53,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:48:53,839.839 INFO    ] time= 05/06/2026 01:48:53
[2026-06-05 01:48:53,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:48:53,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:48:53,971.971 INFO    ] No existing commands found in stream
[2026-06-05 01:48:58,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:48:58,986.986 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 01:49:00,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:49:00,200.200 INFO    ] Checking for system updates...
[2026-06-05 01:49:00,240.240 INFO    ] 200
[2026-06-05 01:49:00,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:00,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:49:00,299.299 INFO    ] No update needed
[2026-06-05 01:49:00,302.302 INFO    ] Checking for camera pi updates...
[2026-06-05 01:49:00,337.337 INFO    ] 200
[2026-06-05 01:49:00,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:00,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:49:00,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:49:00,432.432 INFO    ] No camera update needed
[2026-06-05 01:49:00,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:49:00,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:49:00,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:49:00,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:49:02,514.514 INFO    ] ================================================
[2026-06-05 01:49:02,540.540 INFO    ] Launching Daemon at Fri Jun  5 01:49:02 IST 2026
[2026-06-05 01:49:02,558.558 INFO    ] ================================================
[2026-06-05 01:49:03,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:49:03
[2026-06-05 01:49:03,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:49:04,083.083 INFO    ] Initializing speech engine...
[2026-06-05 01:49:04,098.098 INFO    ] 2026-06-05 01:49:04
[2026-06-05 01:49:04,377.377 INFO    ] 2026-06-05 01:49:04
[2026-06-05 01:49:04,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:49:04,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:49:04,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:49:04,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:49:04,849.849 INFO    ] time= 05/06/2026 01:49:04
[2026-06-05 01:49:04,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:49:04,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:49:05,086.086 INFO    ] No existing commands found in stream
[2026-06-05 01:49:10,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:49:10,106.106 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 01:49:14,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:49:14,020.020 INFO    ] Checking for system updates...
[2026-06-05 01:49:14,058.058 INFO    ] 200
[2026-06-05 01:49:14,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:14,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:49:14,116.116 INFO    ] No update needed
[2026-06-05 01:49:14,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 01:49:14,156.156 INFO    ] 200
[2026-06-05 01:49:14,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:14,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:49:14,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:49:14,245.245 INFO    ] No camera update needed
[2026-06-05 01:49:14,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:49:14,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:49:14,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:49:14,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:49:16,300.300 INFO    ] ================================================
[2026-06-05 01:49:16,315.315 INFO    ] Launching Daemon at Fri Jun  5 01:49:16 IST 2026
[2026-06-05 01:49:16,326.326 INFO    ] ================================================
[2026-06-05 01:49:16,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:49:16
[2026-06-05 01:49:17,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:49:17,747.747 INFO    ] Initializing speech engine...
[2026-06-05 01:49:17,761.761 INFO    ] 2026-06-05 01:49:17
[2026-06-05 01:49:18,013.013 INFO    ] 2026-06-05 01:49:18
[2026-06-05 01:49:18,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:49:18,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:49:18,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:49:18,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:49:18,531.531 INFO    ] time= 05/06/2026 01:49:18
[2026-06-05 01:49:18,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:49:18,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:49:18,645.645 INFO    ] No existing commands found in stream
[2026-06-05 01:49:23,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:49:23,660.660 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 01:49:27,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:49:27,448.448 INFO    ] Checking for system updates...
[2026-06-05 01:49:27,485.485 INFO    ] 200
[2026-06-05 01:49:27,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:27,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:49:27,544.544 INFO    ] No update needed
[2026-06-05 01:49:27,546.546 INFO    ] Checking for camera pi updates...
[2026-06-05 01:49:27,580.580 INFO    ] 200
[2026-06-05 01:49:27,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:27,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:49:27,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:49:27,673.673 INFO    ] No camera update needed
[2026-06-05 01:49:27,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:49:27,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:49:27,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:49:27,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:49:29,734.734 INFO    ] ================================================
[2026-06-05 01:49:29,749.749 INFO    ] Launching Daemon at Fri Jun  5 01:49:29 IST 2026
[2026-06-05 01:49:29,760.760 INFO    ] ================================================
[2026-06-05 01:49:30,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:49:30
[2026-06-05 01:49:30,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:49:31,227.227 INFO    ] Initializing speech engine...
[2026-06-05 01:49:31,234.234 INFO    ] 2026-06-05 01:49:31
[2026-06-05 01:49:31,511.511 INFO    ] 2026-06-05 01:49:31
[2026-06-05 01:49:31,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:49:31,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:49:31,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:49:31,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:49:31,898.898 INFO    ] time= 05/06/2026 01:49:31
[2026-06-05 01:49:31,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:49:31,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:49:32,104.104 INFO    ] No existing commands found in stream
[2026-06-05 01:49:37,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:49:37,119.119 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 01:49:40,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:49:40,981.981 INFO    ] Checking for system updates...
[2026-06-05 01:49:41,018.018 INFO    ] 200
[2026-06-05 01:49:41,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:41,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:49:41,078.078 INFO    ] No update needed
[2026-06-05 01:49:41,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 01:49:41,115.115 INFO    ] 200
[2026-06-05 01:49:41,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:41,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:49:41,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:49:41,210.210 INFO    ] No camera update needed
[2026-06-05 01:49:41,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:49:41,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:49:41,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:49:41,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:49:43,267.267 INFO    ] ================================================
[2026-06-05 01:49:43,282.282 INFO    ] Launching Daemon at Fri Jun  5 01:49:43 IST 2026
[2026-06-05 01:49:43,293.293 INFO    ] ================================================
[2026-06-05 01:49:43,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:49:43
[2026-06-05 01:49:44,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:49:44,739.739 INFO    ] Initializing speech engine...
[2026-06-05 01:49:44,761.761 INFO    ] 2026-06-05 01:49:44
[2026-06-05 01:49:45,032.032 INFO    ] 2026-06-05 01:49:45
[2026-06-05 01:49:45,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:49:45,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:49:45,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:49:45,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:49:45,448.448 INFO    ] time= 05/06/2026 01:49:45
[2026-06-05 01:49:45,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:49:45,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:49:45,600.600 INFO    ] No existing commands found in stream
[2026-06-05 01:49:50,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:49:50,633.633 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 01:49:52,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:49:52,892.892 INFO    ] Checking for system updates...
[2026-06-05 01:49:52,932.932 INFO    ] 200
[2026-06-05 01:49:52,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:52,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:49:52,990.990 INFO    ] No update needed
[2026-06-05 01:49:52,993.993 INFO    ] Checking for camera pi updates...
[2026-06-05 01:49:53,032.032 INFO    ] 200
[2026-06-05 01:49:53,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:49:53,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:49:53,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:49:53,127.127 INFO    ] No camera update needed
[2026-06-05 01:49:53,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:49:53,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:49:53,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:49:53,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:49:55,183.183 INFO    ] ================================================
[2026-06-05 01:49:55,199.199 INFO    ] Launching Daemon at Fri Jun  5 01:49:55 IST 2026
[2026-06-05 01:49:55,209.209 INFO    ] ================================================
[2026-06-05 01:49:55,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:49:55
[2026-06-05 01:49:56,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:49:56,651.651 INFO    ] Initializing speech engine...
[2026-06-05 01:49:56,660.660 INFO    ] 2026-06-05 01:49:56
[2026-06-05 01:49:56,920.920 INFO    ] 2026-06-05 01:49:56
[2026-06-05 01:49:56,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:49:57,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:49:57,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:49:57,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:49:57,363.363 INFO    ] time= 05/06/2026 01:49:57
[2026-06-05 01:49:57,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:49:57,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:49:57,529.529 INFO    ] No existing commands found in stream
[2026-06-05 01:50:02,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:50:02,551.551 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 01:50:03,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:50:03,363.363 INFO    ] Checking for system updates...
[2026-06-05 01:50:03,399.399 INFO    ] 200
[2026-06-05 01:50:03,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:03,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:50:03,467.467 INFO    ] No update needed
[2026-06-05 01:50:03,469.469 INFO    ] Checking for camera pi updates...
[2026-06-05 01:50:03,503.503 INFO    ] 200
[2026-06-05 01:50:03,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:03,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:50:03,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:50:03,597.597 INFO    ] No camera update needed
[2026-06-05 01:50:03,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:50:03,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:50:03,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:50:03,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:50:05,654.654 INFO    ] ================================================
[2026-06-05 01:50:05,670.670 INFO    ] Launching Daemon at Fri Jun  5 01:50:05 IST 2026
[2026-06-05 01:50:05,681.681 INFO    ] ================================================
[2026-06-05 01:50:06,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:50:06
[2026-06-05 01:50:06,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:50:07,127.127 INFO    ] Initializing speech engine...
[2026-06-05 01:50:07,136.136 INFO    ] 2026-06-05 01:50:07
[2026-06-05 01:50:07,430.430 INFO    ] 2026-06-05 01:50:07
[2026-06-05 01:50:07,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:50:07,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:50:07,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:50:07,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:50:07,846.846 INFO    ] time= 05/06/2026 01:50:07
[2026-06-05 01:50:07,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:50:07,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:50:08,020.020 INFO    ] No existing commands found in stream
[2026-06-05 01:50:13,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:50:13,053.053 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 01:50:14,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:50:14,320.320 INFO    ] Checking for system updates...
[2026-06-05 01:50:14,360.360 INFO    ] 200
[2026-06-05 01:50:14,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:14,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:50:14,424.424 INFO    ] No update needed
[2026-06-05 01:50:14,427.427 INFO    ] Checking for camera pi updates...
[2026-06-05 01:50:14,465.465 INFO    ] 200
[2026-06-05 01:50:14,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:14,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:50:14,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:50:14,546.546 INFO    ] No camera update needed
[2026-06-05 01:50:14,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:50:14,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:50:14,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:50:14,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:50:16,606.606 INFO    ] ================================================
[2026-06-05 01:50:16,622.622 INFO    ] Launching Daemon at Fri Jun  5 01:50:16 IST 2026
[2026-06-05 01:50:16,634.634 INFO    ] ================================================
[2026-06-05 01:50:17,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:50:17
[2026-06-05 01:50:17,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:50:18,100.100 INFO    ] Initializing speech engine...
[2026-06-05 01:50:18,111.111 INFO    ] 2026-06-05 01:50:18
[2026-06-05 01:50:18,373.373 INFO    ] 2026-06-05 01:50:18
[2026-06-05 01:50:18,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:50:18,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:50:18,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:50:18,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:50:18,866.866 INFO    ] time= 05/06/2026 01:50:18
[2026-06-05 01:50:18,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:50:18,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:50:19,046.046 INFO    ] No existing commands found in stream
[2026-06-05 01:50:24,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:50:24,071.071 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 01:50:27,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:50:27,922.922 INFO    ] Checking for system updates...
[2026-06-05 01:50:27,964.964 INFO    ] 200
[2026-06-05 01:50:27,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:28,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:50:28,023.023 INFO    ] No update needed
[2026-06-05 01:50:28,026.026 INFO    ] Checking for camera pi updates...
[2026-06-05 01:50:28,065.065 INFO    ] 200
[2026-06-05 01:50:28,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:28,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:50:28,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:50:28,165.165 INFO    ] No camera update needed
[2026-06-05 01:50:28,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:50:28,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:50:28,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:50:28,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:50:30,225.225 INFO    ] ================================================
[2026-06-05 01:50:30,240.240 INFO    ] Launching Daemon at Fri Jun  5 01:50:30 IST 2026
[2026-06-05 01:50:30,251.251 INFO    ] ================================================
[2026-06-05 01:50:30,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:50:30
[2026-06-05 01:50:31,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:50:31,731.731 INFO    ] Initializing speech engine...
[2026-06-05 01:50:31,739.739 INFO    ] 2026-06-05 01:50:31
[2026-06-05 01:50:32,019.019 INFO    ] 2026-06-05 01:50:32
[2026-06-05 01:50:32,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:50:32,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:50:32,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:50:32,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:50:32,400.400 INFO    ] time= 05/06/2026 01:50:32
[2026-06-05 01:50:32,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:50:32,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:50:32,590.590 INFO    ] No existing commands found in stream
[2026-06-05 01:50:37,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:50:37,624.624 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 01:50:39,795.795 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:50:39,798.798 INFO    ] Checking for system updates...
[2026-06-05 01:50:39,834.834 INFO    ] 200
[2026-06-05 01:50:39,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:39,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:50:39,893.893 INFO    ] No update needed
[2026-06-05 01:50:39,896.896 INFO    ] Checking for camera pi updates...
[2026-06-05 01:50:39,935.935 INFO    ] 200
[2026-06-05 01:50:39,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:39,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:50:40,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:50:40,031.031 INFO    ] No camera update needed
[2026-06-05 01:50:40,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:50:40,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:50:40,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:50:40,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:50:42,088.088 INFO    ] ================================================
[2026-06-05 01:50:42,103.103 INFO    ] Launching Daemon at Fri Jun  5 01:50:42 IST 2026
[2026-06-05 01:50:42,115.115 INFO    ] ================================================
[2026-06-05 01:50:42,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:50:42
[2026-06-05 01:50:43,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:50:43,687.687 INFO    ] Initializing speech engine...
[2026-06-05 01:50:43,695.695 INFO    ] 2026-06-05 01:50:43
[2026-06-05 01:50:43,977.977 INFO    ] 2026-06-05 01:50:43
[2026-06-05 01:50:44,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:50:44,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:50:44,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:50:44,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:50:44,509.509 INFO    ] time= 05/06/2026 01:50:44
[2026-06-05 01:50:44,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:50:44,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:50:44,661.661 INFO    ] No existing commands found in stream
[2026-06-05 01:50:49,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:50:49,680.680 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 01:50:51,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:50:51,950.950 INFO    ] Checking for system updates...
[2026-06-05 01:50:51,990.990 INFO    ] 200
[2026-06-05 01:50:51,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:52,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:50:52,051.051 INFO    ] No update needed
[2026-06-05 01:50:52,053.053 INFO    ] Checking for camera pi updates...
[2026-06-05 01:50:52,089.089 INFO    ] 200
[2026-06-05 01:50:52,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:50:52,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:50:52,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:50:52,191.191 INFO    ] No camera update needed
[2026-06-05 01:50:52,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:50:52,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:50:52,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:50:52,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:50:54,247.247 INFO    ] ================================================
[2026-06-05 01:50:54,262.262 INFO    ] Launching Daemon at Fri Jun  5 01:50:54 IST 2026
[2026-06-05 01:50:54,274.274 INFO    ] ================================================
[2026-06-05 01:50:54,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:50:54
[2026-06-05 01:50:55,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:50:55,679.679 INFO    ] Initializing speech engine...
[2026-06-05 01:50:55,687.687 INFO    ] 2026-06-05 01:50:55
[2026-06-05 01:50:55,975.975 INFO    ] 2026-06-05 01:50:55
[2026-06-05 01:50:56,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:50:56,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:50:56,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:50:56,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:50:56,374.374 INFO    ] time= 05/06/2026 01:50:56
[2026-06-05 01:50:56,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:50:56,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:50:56,538.538 INFO    ] No existing commands found in stream
[2026-06-05 01:51:01,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:51:01,574.574 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 01:51:05,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:51:05,122.122 INFO    ] Checking for system updates...
[2026-06-05 01:51:05,158.158 INFO    ] 200
[2026-06-05 01:51:05,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:05,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:51:05,222.222 INFO    ] No update needed
[2026-06-05 01:51:05,224.224 INFO    ] Checking for camera pi updates...
[2026-06-05 01:51:05,258.258 INFO    ] 200
[2026-06-05 01:51:05,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:05,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:51:05,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:51:05,350.350 INFO    ] No camera update needed
[2026-06-05 01:51:05,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:51:05,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:51:05,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:51:05,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:51:07,407.407 INFO    ] ================================================
[2026-06-05 01:51:07,422.422 INFO    ] Launching Daemon at Fri Jun  5 01:51:07 IST 2026
[2026-06-05 01:51:07,434.434 INFO    ] ================================================
[2026-06-05 01:51:08,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:51:07
[2026-06-05 01:51:08,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:51:08,837.837 INFO    ] Initializing speech engine...
[2026-06-05 01:51:08,843.843 INFO    ] 2026-06-05 01:51:08
[2026-06-05 01:51:09,131.131 INFO    ] 2026-06-05 01:51:09
[2026-06-05 01:51:09,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:51:09,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:51:09,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:51:09,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:51:09,469.469 INFO    ] time= 05/06/2026 01:51:09
[2026-06-05 01:51:09,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:51:09,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:51:09,546.546 INFO    ] No existing commands found in stream
[2026-06-05 01:51:14,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:51:14,560.560 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 01:51:16,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:51:16,831.831 INFO    ] Checking for system updates...
[2026-06-05 01:51:16,868.868 INFO    ] 200
[2026-06-05 01:51:16,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:16,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:51:16,938.938 INFO    ] No update needed
[2026-06-05 01:51:16,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 01:51:16,981.981 INFO    ] 200
[2026-06-05 01:51:16,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:17,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:51:17,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:51:17,090.090 INFO    ] No camera update needed
[2026-06-05 01:51:17,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:51:17,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:51:17,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:51:17,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:51:19,152.152 INFO    ] ================================================
[2026-06-05 01:51:19,167.167 INFO    ] Launching Daemon at Fri Jun  5 01:51:19 IST 2026
[2026-06-05 01:51:19,179.179 INFO    ] ================================================
[2026-06-05 01:51:19,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:51:19
[2026-06-05 01:51:20,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:51:20,591.591 INFO    ] Initializing speech engine...
[2026-06-05 01:51:20,604.604 INFO    ] 2026-06-05 01:51:20
[2026-06-05 01:51:20,880.880 INFO    ] 2026-06-05 01:51:20
[2026-06-05 01:51:20,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:51:21,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:51:21,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:51:21,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:51:21,288.288 INFO    ] time= 05/06/2026 01:51:21
[2026-06-05 01:51:21,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:51:21,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:51:21,434.434 INFO    ] No existing commands found in stream
[2026-06-05 01:51:26,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:51:26,462.462 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 01:51:29,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:51:29,307.307 INFO    ] Checking for system updates...
[2026-06-05 01:51:29,343.343 INFO    ] 200
[2026-06-05 01:51:29,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:29,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:51:29,401.401 INFO    ] No update needed
[2026-06-05 01:51:29,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 01:51:29,436.436 INFO    ] 200
[2026-06-05 01:51:29,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:29,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:51:29,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:51:29,530.530 INFO    ] No camera update needed
[2026-06-05 01:51:29,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:51:29,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:51:29,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:51:29,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:51:31,588.588 INFO    ] ================================================
[2026-06-05 01:51:31,607.607 INFO    ] Launching Daemon at Fri Jun  5 01:51:31 IST 2026
[2026-06-05 01:51:31,619.619 INFO    ] ================================================
[2026-06-05 01:51:32,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:51:32
[2026-06-05 01:51:32,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:51:33,230.230 INFO    ] Initializing speech engine...
[2026-06-05 01:51:33,236.236 INFO    ] 2026-06-05 01:51:33
[2026-06-05 01:51:33,508.508 INFO    ] 2026-06-05 01:51:33
[2026-06-05 01:51:33,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:51:33,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:51:33,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:51:33,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:51:33,963.963 INFO    ] time= 05/06/2026 01:51:33
[2026-06-05 01:51:34,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:51:34,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:51:34,178.178 INFO    ] No existing commands found in stream
[2026-06-05 01:51:39,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:51:39,207.207 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 01:51:41,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:51:41,636.636 INFO    ] Checking for system updates...
[2026-06-05 01:51:41,673.673 INFO    ] 200
[2026-06-05 01:51:41,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:41,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:51:41,734.734 INFO    ] No update needed
[2026-06-05 01:51:41,737.737 INFO    ] Checking for camera pi updates...
[2026-06-05 01:51:41,771.771 INFO    ] 200
[2026-06-05 01:51:41,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:41,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:51:41,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:51:41,866.866 INFO    ] No camera update needed
[2026-06-05 01:51:41,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:51:41,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:51:41,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:51:41,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:51:43,923.923 INFO    ] ================================================
[2026-06-05 01:51:43,938.938 INFO    ] Launching Daemon at Fri Jun  5 01:51:43 IST 2026
[2026-06-05 01:51:43,950.950 INFO    ] ================================================
[2026-06-05 01:51:44,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:51:44
[2026-06-05 01:51:45,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:51:45,357.357 INFO    ] Initializing speech engine...
[2026-06-05 01:51:45,366.366 INFO    ] 2026-06-05 01:51:45
[2026-06-05 01:51:45,650.650 INFO    ] 2026-06-05 01:51:45
[2026-06-05 01:51:45,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:51:45,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:51:45,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:51:46,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:51:46,054.054 INFO    ] time= 05/06/2026 01:51:46
[2026-06-05 01:51:46,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:51:46,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:51:46,217.217 INFO    ] No existing commands found in stream
[2026-06-05 01:51:51,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:51:51,245.245 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 01:51:54,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:51:54,446.446 INFO    ] Checking for system updates...
[2026-06-05 01:51:54,485.485 INFO    ] 200
[2026-06-05 01:51:54,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:54,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:51:54,543.543 INFO    ] No update needed
[2026-06-05 01:51:54,546.546 INFO    ] Checking for camera pi updates...
[2026-06-05 01:51:54,579.579 INFO    ] 200
[2026-06-05 01:51:54,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:51:54,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:51:54,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:51:54,658.658 INFO    ] No camera update needed
[2026-06-05 01:51:54,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:51:54,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:51:54,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:51:54,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:51:56,717.717 INFO    ] ================================================
[2026-06-05 01:51:56,732.732 INFO    ] Launching Daemon at Fri Jun  5 01:51:56 IST 2026
[2026-06-05 01:51:56,743.743 INFO    ] ================================================
[2026-06-05 01:51:57,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:51:57
[2026-06-05 01:51:57,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:51:58,185.185 INFO    ] Initializing speech engine...
[2026-06-05 01:51:58,190.190 INFO    ] 2026-06-05 01:51:58
[2026-06-05 01:51:58,479.479 INFO    ] 2026-06-05 01:51:58
[2026-06-05 01:51:58,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:51:58,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:51:58,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:51:58,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:51:58,861.861 INFO    ] time= 05/06/2026 01:51:58
[2026-06-05 01:51:58,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:51:58,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:51:58,965.965 INFO    ] No existing commands found in stream
[2026-06-05 01:52:03,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:52:03,980.980 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 01:52:07,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:52:07,247.247 INFO    ] Checking for system updates...
[2026-06-05 01:52:07,284.284 INFO    ] 200
[2026-06-05 01:52:07,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:07,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:52:07,342.342 INFO    ] No update needed
[2026-06-05 01:52:07,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 01:52:07,378.378 INFO    ] 200
[2026-06-05 01:52:07,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:07,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:52:07,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:52:07,576.576 INFO    ] No camera update needed
[2026-06-05 01:52:07,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:52:07,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:52:07,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:52:07,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:52:09,633.633 INFO    ] ================================================
[2026-06-05 01:52:09,648.648 INFO    ] Launching Daemon at Fri Jun  5 01:52:09 IST 2026
[2026-06-05 01:52:09,659.659 INFO    ] ================================================
[2026-06-05 01:52:10,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:52:10
[2026-06-05 01:52:10,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:52:11,080.080 INFO    ] Initializing speech engine...
[2026-06-05 01:52:11,095.095 INFO    ] 2026-06-05 01:52:11
[2026-06-05 01:52:11,359.359 INFO    ] 2026-06-05 01:52:11
[2026-06-05 01:52:11,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:52:11,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:52:11,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:52:11,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:52:11,726.726 INFO    ] time= 05/06/2026 01:52:11
[2026-06-05 01:52:11,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:52:11,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:52:11,846.846 INFO    ] No existing commands found in stream
[2026-06-05 01:52:16,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:52:16,862.862 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 01:52:17,938.938 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:52:17,941.941 INFO    ] Checking for system updates...
[2026-06-05 01:52:17,982.982 INFO    ] 200
[2026-06-05 01:52:17,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:18,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:52:18,041.041 INFO    ] No update needed
[2026-06-05 01:52:18,043.043 INFO    ] Checking for camera pi updates...
[2026-06-05 01:52:18,077.077 INFO    ] 200
[2026-06-05 01:52:18,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:18,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:52:18,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:52:18,172.172 INFO    ] No camera update needed
[2026-06-05 01:52:18,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:52:18,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:52:18,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:52:18,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:52:20,230.230 INFO    ] ================================================
[2026-06-05 01:52:20,246.246 INFO    ] Launching Daemon at Fri Jun  5 01:52:20 IST 2026
[2026-06-05 01:52:20,257.257 INFO    ] ================================================
[2026-06-05 01:52:20,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:52:20
[2026-06-05 01:52:21,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:52:21,669.669 INFO    ] Initializing speech engine...
[2026-06-05 01:52:21,678.678 INFO    ] 2026-06-05 01:52:21
[2026-06-05 01:52:21,969.969 INFO    ] 2026-06-05 01:52:21
[2026-06-05 01:52:22,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:52:22,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:52:22,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:52:22,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:52:22,344.344 INFO    ] time= 05/06/2026 01:52:22
[2026-06-05 01:52:22,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:52:22,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:52:22,453.453 INFO    ] No existing commands found in stream
[2026-06-05 01:52:27,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:52:27,468.468 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 01:52:28,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:52:28,260.260 INFO    ] Checking for system updates...
[2026-06-05 01:52:28,296.296 INFO    ] 200
[2026-06-05 01:52:28,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:28,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:52:28,355.355 INFO    ] No update needed
[2026-06-05 01:52:28,358.358 INFO    ] Checking for camera pi updates...
[2026-06-05 01:52:28,396.396 INFO    ] 200
[2026-06-05 01:52:28,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:28,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:52:28,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:52:28,498.498 INFO    ] No camera update needed
[2026-06-05 01:52:28,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:52:28,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:52:28,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:52:28,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:52:30,556.556 INFO    ] ================================================
[2026-06-05 01:52:30,571.571 INFO    ] Launching Daemon at Fri Jun  5 01:52:30 IST 2026
[2026-06-05 01:52:30,583.583 INFO    ] ================================================
[2026-06-05 01:52:31,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:52:31
[2026-06-05 01:52:31,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:52:32,218.218 INFO    ] Initializing speech engine...
[2026-06-05 01:52:32,230.230 INFO    ] 2026-06-05 01:52:32
[2026-06-05 01:52:32,535.535 INFO    ] 2026-06-05 01:52:32
[2026-06-05 01:52:32,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:52:32,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:52:32,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:52:32,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:52:33,016.016 INFO    ] time= 05/06/2026 01:52:32
[2026-06-05 01:52:33,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:52:33,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:52:33,196.196 INFO    ] No existing commands found in stream
[2026-06-05 01:52:38,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:52:38,211.211 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 01:52:39,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:52:39,675.675 INFO    ] Checking for system updates...
[2026-06-05 01:52:39,711.711 INFO    ] 200
[2026-06-05 01:52:39,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:39,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:52:39,769.769 INFO    ] No update needed
[2026-06-05 01:52:39,771.771 INFO    ] Checking for camera pi updates...
[2026-06-05 01:52:39,805.805 INFO    ] 200
[2026-06-05 01:52:39,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:39,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:52:39,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:52:39,904.904 INFO    ] No camera update needed
[2026-06-05 01:52:39,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:52:39,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:52:39,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:52:39,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:52:41,959.959 INFO    ] ================================================
[2026-06-05 01:52:41,975.975 INFO    ] Launching Daemon at Fri Jun  5 01:52:41 IST 2026
[2026-06-05 01:52:41,986.986 INFO    ] ================================================
[2026-06-05 01:52:42,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:52:42
[2026-06-05 01:52:43,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:52:43,413.413 INFO    ] Initializing speech engine...
[2026-06-05 01:52:43,433.433 INFO    ] 2026-06-05 01:52:43
[2026-06-05 01:52:43,705.705 INFO    ] 2026-06-05 01:52:43
[2026-06-05 01:52:43,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:52:43,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:52:43,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:52:44,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:52:44,106.106 INFO    ] time= 05/06/2026 01:52:44
[2026-06-05 01:52:44,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:52:44,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:52:44,260.260 INFO    ] No existing commands found in stream
[2026-06-05 01:52:49,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:52:49,288.288 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 01:52:51,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:52:51,004.004 INFO    ] Checking for system updates...
[2026-06-05 01:52:51,044.044 INFO    ] 200
[2026-06-05 01:52:51,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:51,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:52:51,106.106 INFO    ] No update needed
[2026-06-05 01:52:51,108.108 INFO    ] Checking for camera pi updates...
[2026-06-05 01:52:51,143.143 INFO    ] 200
[2026-06-05 01:52:51,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:52:51,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:52:51,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:52:51,228.228 INFO    ] No camera update needed
[2026-06-05 01:52:51,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:52:51,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:52:51,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:52:51,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:52:53,286.286 INFO    ] ================================================
[2026-06-05 01:52:53,302.302 INFO    ] Launching Daemon at Fri Jun  5 01:52:53 IST 2026
[2026-06-05 01:52:53,313.313 INFO    ] ================================================
[2026-06-05 01:52:53,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:52:53
[2026-06-05 01:52:54,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:52:54,760.760 INFO    ] Initializing speech engine...
[2026-06-05 01:52:54,785.785 INFO    ] 2026-06-05 01:52:54
[2026-06-05 01:52:55,053.053 INFO    ] 2026-06-05 01:52:55
[2026-06-05 01:52:55,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:52:55,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:52:55,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:52:55,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:52:55,419.419 INFO    ] time= 05/06/2026 01:52:55
[2026-06-05 01:52:55,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:52:55,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:52:55,540.540 INFO    ] No existing commands found in stream
[2026-06-05 01:53:00,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:53:00,556.556 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 01:53:03,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:53:03,114.114 INFO    ] Checking for system updates...
[2026-06-05 01:53:03,151.151 INFO    ] 200
[2026-06-05 01:53:03,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:03,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:53:03,212.212 INFO    ] No update needed
[2026-06-05 01:53:03,215.215 INFO    ] Checking for camera pi updates...
[2026-06-05 01:53:03,250.250 INFO    ] 200
[2026-06-05 01:53:03,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:03,297.297 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:53:03,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:53:03,340.340 INFO    ] No camera update needed
[2026-06-05 01:53:03,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:53:03,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:53:03,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:53:03,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:53:05,396.396 INFO    ] ================================================
[2026-06-05 01:53:05,412.412 INFO    ] Launching Daemon at Fri Jun  5 01:53:05 IST 2026
[2026-06-05 01:53:05,423.423 INFO    ] ================================================
[2026-06-05 01:53:06,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:53:06
[2026-06-05 01:53:06,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:53:06,908.908 INFO    ] Initializing speech engine...
[2026-06-05 01:53:06,913.913 INFO    ] 2026-06-05 01:53:06
[2026-06-05 01:53:07,173.173 INFO    ] 2026-06-05 01:53:07
[2026-06-05 01:53:07,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:53:07,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:53:07,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:53:07,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:53:07,668.668 INFO    ] time= 05/06/2026 01:53:07
[2026-06-05 01:53:07,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:53:07,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:53:07,835.835 INFO    ] No existing commands found in stream
[2026-06-05 01:53:12,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:53:12,865.865 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 01:53:16,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:53:16,697.697 INFO    ] Checking for system updates...
[2026-06-05 01:53:16,733.733 INFO    ] 200
[2026-06-05 01:53:16,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:16,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:53:16,792.792 INFO    ] No update needed
[2026-06-05 01:53:16,794.794 INFO    ] Checking for camera pi updates...
[2026-06-05 01:53:16,843.843 INFO    ] 200
[2026-06-05 01:53:16,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:16,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:53:16,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:53:16,936.936 INFO    ] No camera update needed
[2026-06-05 01:53:16,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:53:16,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:53:16,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:53:16,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:53:18,992.992 INFO    ] ================================================
[2026-06-05 01:53:19,007.007 INFO    ] Launching Daemon at Fri Jun  5 01:53:19 IST 2026
[2026-06-05 01:53:19,018.018 INFO    ] ================================================
[2026-06-05 01:53:19,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:53:19
[2026-06-05 01:53:20,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:53:20,570.570 INFO    ] Initializing speech engine...
[2026-06-05 01:53:20,581.581 INFO    ] 2026-06-05 01:53:20
[2026-06-05 01:53:20,864.864 INFO    ] 2026-06-05 01:53:20
[2026-06-05 01:53:20,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:53:21,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:53:21,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:53:21,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:53:21,329.329 INFO    ] time= 05/06/2026 01:53:21
[2026-06-05 01:53:21,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:53:21,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:53:21,465.465 INFO    ] No existing commands found in stream
[2026-06-05 01:53:26,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:53:26,493.493 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 01:53:29,423.423 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:53:29,426.426 INFO    ] Checking for system updates...
[2026-06-05 01:53:29,462.462 INFO    ] 200
[2026-06-05 01:53:29,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:29,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:53:29,523.523 INFO    ] No update needed
[2026-06-05 01:53:29,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 01:53:29,560.560 INFO    ] 200
[2026-06-05 01:53:29,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:29,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:53:29,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:53:29,649.649 INFO    ] No camera update needed
[2026-06-05 01:53:29,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:53:29,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:53:29,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:53:29,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:53:31,710.710 INFO    ] ================================================
[2026-06-05 01:53:31,728.728 INFO    ] Launching Daemon at Fri Jun  5 01:53:31 IST 2026
[2026-06-05 01:53:31,739.739 INFO    ] ================================================
[2026-06-05 01:53:32,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:53:32
[2026-06-05 01:53:32,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:53:33,265.265 INFO    ] Initializing speech engine...
[2026-06-05 01:53:33,274.274 INFO    ] 2026-06-05 01:53:33
[2026-06-05 01:53:33,524.524 INFO    ] 2026-06-05 01:53:33
[2026-06-05 01:53:33,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:53:33,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:53:33,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:53:33,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:53:34,014.014 INFO    ] time= 05/06/2026 01:53:33
[2026-06-05 01:53:34,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:53:34,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:53:34,144.144 INFO    ] No existing commands found in stream
[2026-06-05 01:53:39,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:53:39,159.159 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 01:53:39,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:53:39,576.576 INFO    ] Checking for system updates...
[2026-06-05 01:53:39,613.613 INFO    ] 200
[2026-06-05 01:53:39,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:39,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:53:39,673.673 INFO    ] No update needed
[2026-06-05 01:53:39,675.675 INFO    ] Checking for camera pi updates...
[2026-06-05 01:53:39,710.710 INFO    ] 200
[2026-06-05 01:53:39,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:39,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:53:39,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:53:39,806.806 INFO    ] No camera update needed
[2026-06-05 01:53:39,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:53:39,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:53:39,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:53:39,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:53:41,864.864 INFO    ] ================================================
[2026-06-05 01:53:41,879.879 INFO    ] Launching Daemon at Fri Jun  5 01:53:41 IST 2026
[2026-06-05 01:53:41,890.890 INFO    ] ================================================
[2026-06-05 01:53:42,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:53:42
[2026-06-05 01:53:43,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:53:43,352.352 INFO    ] Initializing speech engine...
[2026-06-05 01:53:43,366.366 INFO    ] 2026-06-05 01:53:43
[2026-06-05 01:53:43,627.627 INFO    ] 2026-06-05 01:53:43
[2026-06-05 01:53:43,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:53:43,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:53:43,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:53:43,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:53:43,996.996 INFO    ] time= 05/06/2026 01:53:43
[2026-06-05 01:53:44,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:53:44,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:53:44,110.110 INFO    ] No existing commands found in stream
[2026-06-05 01:53:49,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:53:49,125.125 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 01:53:52,730.730 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:53:52,733.733 INFO    ] Checking for system updates...
[2026-06-05 01:53:52,769.769 INFO    ] 200
[2026-06-05 01:53:52,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:52,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:53:52,837.837 INFO    ] No update needed
[2026-06-05 01:53:52,839.839 INFO    ] Checking for camera pi updates...
[2026-06-05 01:53:52,872.872 INFO    ] 200
[2026-06-05 01:53:52,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:53:52,918.918 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:53:52,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:53:52,965.965 INFO    ] No camera update needed
[2026-06-05 01:53:52,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:53:52,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:53:52,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:53:52,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:53:55,022.022 INFO    ] ================================================
[2026-06-05 01:53:55,044.044 INFO    ] Launching Daemon at Fri Jun  5 01:53:55 IST 2026
[2026-06-05 01:53:55,055.055 INFO    ] ================================================
[2026-06-05 01:53:55,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:53:55
[2026-06-05 01:53:56,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:53:56,667.667 INFO    ] Initializing speech engine...
[2026-06-05 01:53:56,675.675 INFO    ] 2026-06-05 01:53:56
[2026-06-05 01:53:56,954.954 INFO    ] 2026-06-05 01:53:56
[2026-06-05 01:53:57,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:53:57,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:53:57,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:53:57,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:53:57,323.323 INFO    ] time= 05/06/2026 01:53:57
[2026-06-05 01:53:57,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:53:57,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:53:57,483.483 INFO    ] No existing commands found in stream
[2026-06-05 01:54:02,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:54:02,519.519 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 01:54:03,143.143 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:54:03,146.146 INFO    ] Checking for system updates...
[2026-06-05 01:54:03,184.184 INFO    ] 200
[2026-06-05 01:54:03,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:03,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:54:03,244.244 INFO    ] No update needed
[2026-06-05 01:54:03,247.247 INFO    ] Checking for camera pi updates...
[2026-06-05 01:54:03,281.281 INFO    ] 200
[2026-06-05 01:54:03,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:03,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:54:03,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:54:03,371.371 INFO    ] No camera update needed
[2026-06-05 01:54:03,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:54:03,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:54:03,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:54:03,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:54:05,436.436 INFO    ] ================================================
[2026-06-05 01:54:05,452.452 INFO    ] Launching Daemon at Fri Jun  5 01:54:05 IST 2026
[2026-06-05 01:54:05,463.463 INFO    ] ================================================
[2026-06-05 01:54:06,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:54:06
[2026-06-05 01:54:06,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:54:06,893.893 INFO    ] Initializing speech engine...
[2026-06-05 01:54:06,900.900 INFO    ] 2026-06-05 01:54:06
[2026-06-05 01:54:07,197.197 INFO    ] 2026-06-05 01:54:07
[2026-06-05 01:54:07,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:54:07,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:54:07,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:54:07,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:54:07,550.550 INFO    ] time= 05/06/2026 01:54:07
[2026-06-05 01:54:07,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:54:07,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:54:07,634.634 INFO    ] No existing commands found in stream
[2026-06-05 01:54:12,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:54:12,648.648 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 01:54:14,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:54:14,530.530 INFO    ] Checking for system updates...
[2026-06-05 01:54:14,566.566 INFO    ] 200
[2026-06-05 01:54:14,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:14,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:54:14,625.625 INFO    ] No update needed
[2026-06-05 01:54:14,627.627 INFO    ] Checking for camera pi updates...
[2026-06-05 01:54:14,661.661 INFO    ] 200
[2026-06-05 01:54:14,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:14,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:54:14,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:54:14,855.855 INFO    ] No camera update needed
[2026-06-05 01:54:14,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:54:14,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:54:14,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:54:14,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:54:16,912.912 INFO    ] ================================================
[2026-06-05 01:54:16,928.928 INFO    ] Launching Daemon at Fri Jun  5 01:54:16 IST 2026
[2026-06-05 01:54:16,938.938 INFO    ] ================================================
[2026-06-05 01:54:17,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:54:17
[2026-06-05 01:54:18,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:54:18,565.565 INFO    ] Initializing speech engine...
[2026-06-05 01:54:18,574.574 INFO    ] 2026-06-05 01:54:18
[2026-06-05 01:54:18,860.860 INFO    ] 2026-06-05 01:54:18
[2026-06-05 01:54:18,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:54:19,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:54:19,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:54:19,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:54:19,342.342 INFO    ] time= 05/06/2026 01:54:19
[2026-06-05 01:54:19,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:54:19,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:54:19,528.528 INFO    ] No existing commands found in stream
[2026-06-05 01:54:24,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:54:24,563.563 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 01:54:25,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:54:25,170.170 INFO    ] Checking for system updates...
[2026-06-05 01:54:25,208.208 INFO    ] 200
[2026-06-05 01:54:25,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:25,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:54:25,277.277 INFO    ] No update needed
[2026-06-05 01:54:25,279.279 INFO    ] Checking for camera pi updates...
[2026-06-05 01:54:25,313.313 INFO    ] 200
[2026-06-05 01:54:25,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:25,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:54:25,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:54:25,413.413 INFO    ] No camera update needed
[2026-06-05 01:54:25,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:54:25,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:54:25,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:54:25,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:54:27,469.469 INFO    ] ================================================
[2026-06-05 01:54:27,485.485 INFO    ] Launching Daemon at Fri Jun  5 01:54:27 IST 2026
[2026-06-05 01:54:27,496.496 INFO    ] ================================================
[2026-06-05 01:54:28,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:54:28
[2026-06-05 01:54:28,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:54:29,126.126 INFO    ] Initializing speech engine...
[2026-06-05 01:54:29,137.137 INFO    ] 2026-06-05 01:54:29
[2026-06-05 01:54:29,450.450 INFO    ] 2026-06-05 01:54:29
[2026-06-05 01:54:29,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:54:29,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:54:29,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:54:29,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:54:29,955.955 INFO    ] time= 05/06/2026 01:54:29
[2026-06-05 01:54:29,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:54:30,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:54:30,110.110 INFO    ] No existing commands found in stream
[2026-06-05 01:54:35,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:54:35,134.134 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 01:54:39,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:54:39,249.249 INFO    ] Checking for system updates...
[2026-06-05 01:54:39,291.291 INFO    ] 200
[2026-06-05 01:54:39,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:39,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:54:39,358.358 INFO    ] No update needed
[2026-06-05 01:54:39,362.362 INFO    ] Checking for camera pi updates...
[2026-06-05 01:54:39,411.411 INFO    ] 200
[2026-06-05 01:54:39,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:39,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:54:39,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:54:39,520.520 INFO    ] No camera update needed
[2026-06-05 01:54:39,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:54:39,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:54:39,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:54:39,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:54:41,583.583 INFO    ] ================================================
[2026-06-05 01:54:41,599.599 INFO    ] Launching Daemon at Fri Jun  5 01:54:41 IST 2026
[2026-06-05 01:54:41,609.609 INFO    ] ================================================
[2026-06-05 01:54:42,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:54:42
[2026-06-05 01:54:42,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:54:43,071.071 INFO    ] Initializing speech engine...
[2026-06-05 01:54:43,078.078 INFO    ] 2026-06-05 01:54:43
[2026-06-05 01:54:43,368.368 INFO    ] 2026-06-05 01:54:43
[2026-06-05 01:54:43,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:54:43,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:54:43,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:54:43,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:54:43,828.828 INFO    ] time= 05/06/2026 01:54:43
[2026-06-05 01:54:43,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:54:43,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:54:43,973.973 INFO    ] No existing commands found in stream
[2026-06-05 01:54:48,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:54:48,990.990 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 01:54:50,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:54:50,680.680 INFO    ] Checking for system updates...
[2026-06-05 01:54:50,716.716 INFO    ] 200
[2026-06-05 01:54:50,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:50,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:54:50,781.781 INFO    ] No update needed
[2026-06-05 01:54:50,783.783 INFO    ] Checking for camera pi updates...
[2026-06-05 01:54:50,817.817 INFO    ] 200
[2026-06-05 01:54:50,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:54:50,861.861 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:54:50,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:54:50,907.907 INFO    ] No camera update needed
[2026-06-05 01:54:50,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:54:50,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:54:50,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:54:50,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:54:52,967.967 INFO    ] ================================================
[2026-06-05 01:54:52,982.982 INFO    ] Launching Daemon at Fri Jun  5 01:54:52 IST 2026
[2026-06-05 01:54:52,993.993 INFO    ] ================================================
[2026-06-05 01:54:53,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:54:53
[2026-06-05 01:54:54,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:54:54,430.430 INFO    ] Initializing speech engine...
[2026-06-05 01:54:54,445.445 INFO    ] 2026-06-05 01:54:54
[2026-06-05 01:54:54,731.731 INFO    ] 2026-06-05 01:54:54
[2026-06-05 01:54:54,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:54:54,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:54:54,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:54:55,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:54:55,151.151 INFO    ] time= 05/06/2026 01:54:55
[2026-06-05 01:54:55,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:54:55,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:54:55,235.235 INFO    ] No existing commands found in stream
[2026-06-05 01:55:00,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:55:00,251.251 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 01:55:03,711.711 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:55:03,713.713 INFO    ] Checking for system updates...
[2026-06-05 01:55:03,751.751 INFO    ] 200
[2026-06-05 01:55:03,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:03,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:55:03,810.810 INFO    ] No update needed
[2026-06-05 01:55:03,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 01:55:03,846.846 INFO    ] 200
[2026-06-05 01:55:03,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:03,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:55:03,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:55:03,924.924 INFO    ] No camera update needed
[2026-06-05 01:55:03,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:55:03,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:55:03,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:55:03,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:55:05,988.988 INFO    ] ================================================
[2026-06-05 01:55:06,005.005 INFO    ] Launching Daemon at Fri Jun  5 01:55:06 IST 2026
[2026-06-05 01:55:06,020.020 INFO    ] ================================================
[2026-06-05 01:55:06,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:55:06
[2026-06-05 01:55:07,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:55:07,447.447 INFO    ] Initializing speech engine...
[2026-06-05 01:55:07,472.472 INFO    ] 2026-06-05 01:55:07
[2026-06-05 01:55:07,748.748 INFO    ] 2026-06-05 01:55:07
[2026-06-05 01:55:07,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:55:07,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:55:07,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:55:08,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:55:08,170.170 INFO    ] time= 05/06/2026 01:55:08
[2026-06-05 01:55:08,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:55:08,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:55:08,257.257 INFO    ] No existing commands found in stream
[2026-06-05 01:55:13,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:55:13,276.276 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 01:55:14,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:55:14,396.396 INFO    ] Checking for system updates...
[2026-06-05 01:55:14,432.432 INFO    ] 200
[2026-06-05 01:55:14,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:14,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:55:14,497.497 INFO    ] No update needed
[2026-06-05 01:55:14,499.499 INFO    ] Checking for camera pi updates...
[2026-06-05 01:55:14,534.534 INFO    ] 200
[2026-06-05 01:55:14,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:14,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:55:14,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:55:14,639.639 INFO    ] No camera update needed
[2026-06-05 01:55:14,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:55:14,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:55:14,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:55:14,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:55:16,693.693 INFO    ] ================================================
[2026-06-05 01:55:16,710.710 INFO    ] Launching Daemon at Fri Jun  5 01:55:16 IST 2026
[2026-06-05 01:55:16,721.721 INFO    ] ================================================
[2026-06-05 01:55:17,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:55:17
[2026-06-05 01:55:17,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:55:18,149.149 INFO    ] Initializing speech engine...
[2026-06-05 01:55:18,156.156 INFO    ] 2026-06-05 01:55:18
[2026-06-05 01:55:18,452.452 INFO    ] 2026-06-05 01:55:18
[2026-06-05 01:55:18,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:55:18,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:55:18,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:55:18,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:55:18,854.854 INFO    ] time= 05/06/2026 01:55:18
[2026-06-05 01:55:18,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:55:18,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:55:19,023.023 INFO    ] No existing commands found in stream
[2026-06-05 01:55:24,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:55:24,058.058 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 01:55:27,063.063 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:55:27,066.066 INFO    ] Checking for system updates...
[2026-06-05 01:55:27,103.103 INFO    ] 200
[2026-06-05 01:55:27,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:27,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:55:27,162.162 INFO    ] No update needed
[2026-06-05 01:55:27,164.164 INFO    ] Checking for camera pi updates...
[2026-06-05 01:55:27,199.199 INFO    ] 200
[2026-06-05 01:55:27,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:27,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:55:27,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:55:27,294.294 INFO    ] No camera update needed
[2026-06-05 01:55:27,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:55:27,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:55:27,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:55:27,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:55:29,349.349 INFO    ] ================================================
[2026-06-05 01:55:29,364.364 INFO    ] Launching Daemon at Fri Jun  5 01:55:29 IST 2026
[2026-06-05 01:55:29,375.375 INFO    ] ================================================
[2026-06-05 01:55:29,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:55:29
[2026-06-05 01:55:30,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:55:30,780.780 INFO    ] Initializing speech engine...
[2026-06-05 01:55:30,796.796 INFO    ] 2026-06-05 01:55:30
[2026-06-05 01:55:31,062.062 INFO    ] 2026-06-05 01:55:31
[2026-06-05 01:55:31,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:55:31,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:55:31,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:55:31,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:55:31,468.468 INFO    ] time= 05/06/2026 01:55:31
[2026-06-05 01:55:31,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:55:31,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:55:31,650.650 INFO    ] No existing commands found in stream
[2026-06-05 01:55:36,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:55:36,678.678 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 01:55:39,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:55:39,703.703 INFO    ] Checking for system updates...
[2026-06-05 01:55:39,743.743 INFO    ] 200
[2026-06-05 01:55:39,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:39,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:55:39,808.808 INFO    ] No update needed
[2026-06-05 01:55:39,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 01:55:39,851.851 INFO    ] 200
[2026-06-05 01:55:39,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:39,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:55:39,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:55:39,954.954 INFO    ] No camera update needed
[2026-06-05 01:55:39,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:55:39,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:55:39,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:55:39,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:55:42,013.013 INFO    ] ================================================
[2026-06-05 01:55:42,028.028 INFO    ] Launching Daemon at Fri Jun  5 01:55:42 IST 2026
[2026-06-05 01:55:42,039.039 INFO    ] ================================================
[2026-06-05 01:55:42,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:55:42
[2026-06-05 01:55:43,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:55:43,488.488 INFO    ] Initializing speech engine...
[2026-06-05 01:55:43,513.513 INFO    ] 2026-06-05 01:55:43
[2026-06-05 01:55:43,785.785 INFO    ] 2026-06-05 01:55:43
[2026-06-05 01:55:43,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:55:44,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:55:44,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:55:44,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:55:44,165.165 INFO    ] time= 05/06/2026 01:55:44
[2026-06-05 01:55:44,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:55:44,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:55:44,289.289 INFO    ] No existing commands found in stream
[2026-06-05 01:55:49,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:55:49,304.304 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 01:55:52,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:55:52,628.628 INFO    ] Checking for system updates...
[2026-06-05 01:55:52,668.668 INFO    ] 200
[2026-06-05 01:55:52,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:52,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:55:52,726.726 INFO    ] No update needed
[2026-06-05 01:55:52,728.728 INFO    ] Checking for camera pi updates...
[2026-06-05 01:55:52,766.766 INFO    ] 200
[2026-06-05 01:55:52,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:55:52,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:55:52,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:55:52,872.872 INFO    ] No camera update needed
[2026-06-05 01:55:52,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:55:52,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:55:52,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:55:52,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:55:54,930.930 INFO    ] ================================================
[2026-06-05 01:55:54,945.945 INFO    ] Launching Daemon at Fri Jun  5 01:55:54 IST 2026
[2026-06-05 01:55:54,956.956 INFO    ] ================================================
[2026-06-05 01:55:55,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:55:55
[2026-06-05 01:55:56,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:55:56,586.586 INFO    ] Initializing speech engine...
[2026-06-05 01:55:56,596.596 INFO    ] 2026-06-05 01:55:56
[2026-06-05 01:55:56,913.913 INFO    ] 2026-06-05 01:55:56
[2026-06-05 01:55:57,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:55:57,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:55:57,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:55:57,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:55:57,369.369 INFO    ] time= 05/06/2026 01:55:57
[2026-06-05 01:55:57,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:55:57,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:55:57,501.501 INFO    ] No existing commands found in stream
[2026-06-05 01:56:02,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:56:02,520.520 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 01:56:02,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:56:02,998.998 INFO    ] Checking for system updates...
[2026-06-05 01:56:03,035.035 INFO    ] 200
[2026-06-05 01:56:03,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:03,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:56:03,096.096 INFO    ] No update needed
[2026-06-05 01:56:03,099.099 INFO    ] Checking for camera pi updates...
[2026-06-05 01:56:03,134.134 INFO    ] 200
[2026-06-05 01:56:03,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:03,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:56:03,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:56:03,227.227 INFO    ] No camera update needed
[2026-06-05 01:56:03,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:56:03,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:56:03,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:56:03,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:56:05,289.289 INFO    ] ================================================
[2026-06-05 01:56:05,305.305 INFO    ] Launching Daemon at Fri Jun  5 01:56:05 IST 2026
[2026-06-05 01:56:05,316.316 INFO    ] ================================================
[2026-06-05 01:56:05,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:56:05
[2026-06-05 01:56:06,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:56:06,915.915 INFO    ] Initializing speech engine...
[2026-06-05 01:56:06,931.931 INFO    ] 2026-06-05 01:56:06
[2026-06-05 01:56:07,215.215 INFO    ] 2026-06-05 01:56:07
[2026-06-05 01:56:07,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:56:07,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:56:07,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:56:07,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:56:07,594.594 INFO    ] time= 05/06/2026 01:56:07
[2026-06-05 01:56:07,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:56:07,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:56:07,716.716 INFO    ] No existing commands found in stream
[2026-06-05 01:56:12,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:56:12,738.738 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 01:56:14,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:56:14,369.369 INFO    ] Checking for system updates...
[2026-06-05 01:56:14,410.410 INFO    ] 200
[2026-06-05 01:56:14,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:14,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:56:14,468.468 INFO    ] No update needed
[2026-06-05 01:56:14,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 01:56:14,504.504 INFO    ] 200
[2026-06-05 01:56:14,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:14,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:56:14,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:56:14,606.606 INFO    ] No camera update needed
[2026-06-05 01:56:14,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:56:14,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:56:14,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:56:14,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:56:16,662.662 INFO    ] ================================================
[2026-06-05 01:56:16,678.678 INFO    ] Launching Daemon at Fri Jun  5 01:56:16 IST 2026
[2026-06-05 01:56:16,690.690 INFO    ] ================================================
[2026-06-05 01:56:17,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:56:17
[2026-06-05 01:56:17,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:56:18,269.269 INFO    ] Initializing speech engine...
[2026-06-05 01:56:18,283.283 INFO    ] 2026-06-05 01:56:18
[2026-06-05 01:56:18,568.568 INFO    ] 2026-06-05 01:56:18
[2026-06-05 01:56:18,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:56:18,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:56:18,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:56:19,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:56:19,098.098 INFO    ] time= 05/06/2026 01:56:19
[2026-06-05 01:56:19,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:56:19,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:56:19,251.251 INFO    ] No existing commands found in stream
[2026-06-05 01:56:24,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:56:24,268.268 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 01:56:28,504.504 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:56:28,507.507 INFO    ] Checking for system updates...
[2026-06-05 01:56:28,544.544 INFO    ] 200
[2026-06-05 01:56:28,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:28,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:56:28,609.609 INFO    ] No update needed
[2026-06-05 01:56:28,612.612 INFO    ] Checking for camera pi updates...
[2026-06-05 01:56:28,648.648 INFO    ] 200
[2026-06-05 01:56:28,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:28,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:56:28,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:56:28,842.842 INFO    ] No camera update needed
[2026-06-05 01:56:28,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:56:28,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:56:28,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:56:28,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:56:30,900.900 INFO    ] ================================================
[2026-06-05 01:56:30,917.917 INFO    ] Launching Daemon at Fri Jun  5 01:56:30 IST 2026
[2026-06-05 01:56:30,928.928 INFO    ] ================================================
[2026-06-05 01:56:31,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:56:31
[2026-06-05 01:56:32,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:56:32,632.632 INFO    ] Initializing speech engine...
[2026-06-05 01:56:32,641.641 INFO    ] 2026-06-05 01:56:32
[2026-06-05 01:56:32,925.925 INFO    ] 2026-06-05 01:56:32
[2026-06-05 01:56:32,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:56:33,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:56:33,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:56:33,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:56:33,462.462 INFO    ] time= 05/06/2026 01:56:33
[2026-06-05 01:56:33,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:56:33,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:56:33,601.601 INFO    ] No existing commands found in stream
[2026-06-05 01:56:38,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:56:38,629.629 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 01:56:40,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:56:40,395.395 INFO    ] Checking for system updates...
[2026-06-05 01:56:40,434.434 INFO    ] 200
[2026-06-05 01:56:40,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:40,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:56:40,493.493 INFO    ] No update needed
[2026-06-05 01:56:40,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 01:56:40,531.531 INFO    ] 200
[2026-06-05 01:56:40,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:40,575.575 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:56:40,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:56:40,627.627 INFO    ] No camera update needed
[2026-06-05 01:56:40,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:56:40,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:56:40,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:56:40,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:56:42,685.685 INFO    ] ================================================
[2026-06-05 01:56:42,702.702 INFO    ] Launching Daemon at Fri Jun  5 01:56:42 IST 2026
[2026-06-05 01:56:42,717.717 INFO    ] ================================================
[2026-06-05 01:56:43,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:56:43
[2026-06-05 01:56:43,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:56:44,176.176 INFO    ] Initializing speech engine...
[2026-06-05 01:56:44,185.185 INFO    ] 2026-06-05 01:56:44
[2026-06-05 01:56:44,436.436 INFO    ] 2026-06-05 01:56:44
[2026-06-05 01:56:44,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:56:44,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:56:44,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:56:44,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:56:44,909.909 INFO    ] time= 05/06/2026 01:56:44
[2026-06-05 01:56:44,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:56:45,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:56:45,058.058 INFO    ] No existing commands found in stream
[2026-06-05 01:56:50,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:56:50,072.072 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 01:56:51,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:56:51,821.821 INFO    ] Checking for system updates...
[2026-06-05 01:56:51,860.860 INFO    ] 200
[2026-06-05 01:56:51,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:51,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:56:51,924.924 INFO    ] No update needed
[2026-06-05 01:56:51,927.927 INFO    ] Checking for camera pi updates...
[2026-06-05 01:56:51,961.961 INFO    ] 200
[2026-06-05 01:56:51,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:56:52,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:56:52,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:56:52,060.060 INFO    ] No camera update needed
[2026-06-05 01:56:52,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:56:52,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:56:52,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:56:52,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:56:54,118.118 INFO    ] ================================================
[2026-06-05 01:56:54,133.133 INFO    ] Launching Daemon at Fri Jun  5 01:56:54 IST 2026
[2026-06-05 01:56:54,144.144 INFO    ] ================================================
[2026-06-05 01:56:54,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:56:54
[2026-06-05 01:56:55,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:56:55,600.600 INFO    ] Initializing speech engine...
[2026-06-05 01:56:55,610.610 INFO    ] 2026-06-05 01:56:55
[2026-06-05 01:56:55,869.869 INFO    ] 2026-06-05 01:56:55
[2026-06-05 01:56:55,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:56:56,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:56:56,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:56:56,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:56:56,328.328 INFO    ] time= 05/06/2026 01:56:56
[2026-06-05 01:56:56,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:56:56,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:56:56,477.477 INFO    ] No existing commands found in stream
[2026-06-05 01:57:01,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:57:01,492.492 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 01:57:03,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:57:03,074.074 INFO    ] Checking for system updates...
[2026-06-05 01:57:03,119.119 INFO    ] 200
[2026-06-05 01:57:03,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:03,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:57:03,216.216 INFO    ] No update needed
[2026-06-05 01:57:03,220.220 INFO    ] Checking for camera pi updates...
[2026-06-05 01:57:03,262.262 INFO    ] 200
[2026-06-05 01:57:03,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:03,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:57:03,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:57:03,363.363 INFO    ] No camera update needed
[2026-06-05 01:57:03,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:57:03,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:57:03,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:57:03,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:57:05,435.435 INFO    ] ================================================
[2026-06-05 01:57:05,450.450 INFO    ] Launching Daemon at Fri Jun  5 01:57:05 IST 2026
[2026-06-05 01:57:05,461.461 INFO    ] ================================================
[2026-06-05 01:57:06,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:57:06
[2026-06-05 01:57:06,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:57:06,924.924 INFO    ] Initializing speech engine...
[2026-06-05 01:57:06,930.930 INFO    ] 2026-06-05 01:57:06
[2026-06-05 01:57:07,189.189 INFO    ] 2026-06-05 01:57:07
[2026-06-05 01:57:07,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:57:07,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:57:07,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:57:07,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:57:07,670.670 INFO    ] time= 05/06/2026 01:57:07
[2026-06-05 01:57:07,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:57:07,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:57:07,854.854 INFO    ] No existing commands found in stream
[2026-06-05 01:57:12,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:57:12,892.892 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 01:57:14,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:57:14,116.116 INFO    ] Checking for system updates...
[2026-06-05 01:57:14,153.153 INFO    ] 200
[2026-06-05 01:57:14,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:14,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:57:14,214.214 INFO    ] No update needed
[2026-06-05 01:57:14,217.217 INFO    ] Checking for camera pi updates...
[2026-06-05 01:57:14,251.251 INFO    ] 200
[2026-06-05 01:57:14,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:14,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:57:14,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:57:14,359.359 INFO    ] No camera update needed
[2026-06-05 01:57:14,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:57:14,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:57:14,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:57:14,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:57:16,420.420 INFO    ] ================================================
[2026-06-05 01:57:16,435.435 INFO    ] Launching Daemon at Fri Jun  5 01:57:16 IST 2026
[2026-06-05 01:57:16,446.446 INFO    ] ================================================
[2026-06-05 01:57:17,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:57:17
[2026-06-05 01:57:17,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:57:18,065.065 INFO    ] Initializing speech engine...
[2026-06-05 01:57:18,077.077 INFO    ] 2026-06-05 01:57:18
[2026-06-05 01:57:18,364.364 INFO    ] 2026-06-05 01:57:18
[2026-06-05 01:57:18,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:57:18,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:57:18,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:57:18,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:57:18,834.834 INFO    ] time= 05/06/2026 01:57:18
[2026-06-05 01:57:18,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:57:18,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:57:18,960.960 INFO    ] No existing commands found in stream
[2026-06-05 01:57:23,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:57:23,980.980 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 01:57:26,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:57:26,302.302 INFO    ] Checking for system updates...
[2026-06-05 01:57:26,343.343 INFO    ] 200
[2026-06-05 01:57:26,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:26,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:57:26,403.403 INFO    ] No update needed
[2026-06-05 01:57:26,406.406 INFO    ] Checking for camera pi updates...
[2026-06-05 01:57:26,441.441 INFO    ] 200
[2026-06-05 01:57:26,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:26,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:57:26,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:57:26,535.535 INFO    ] No camera update needed
[2026-06-05 01:57:26,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:57:26,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:57:26,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:57:26,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:57:28,596.596 INFO    ] ================================================
[2026-06-05 01:57:28,612.612 INFO    ] Launching Daemon at Fri Jun  5 01:57:28 IST 2026
[2026-06-05 01:57:28,623.623 INFO    ] ================================================
[2026-06-05 01:57:29,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:57:29
[2026-06-05 01:57:29,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:57:30,022.022 INFO    ] Initializing speech engine...
[2026-06-05 01:57:30,036.036 INFO    ] 2026-06-05 01:57:30
[2026-06-05 01:57:30,298.298 INFO    ] 2026-06-05 01:57:30
[2026-06-05 01:57:30,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:57:30,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:57:30,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:57:30,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:57:30,789.789 INFO    ] time= 05/06/2026 01:57:30
[2026-06-05 01:57:30,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:57:30,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:57:30,912.912 INFO    ] No existing commands found in stream
[2026-06-05 01:57:35,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:57:35,926.926 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 01:57:40,108.108 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:57:40,111.111 INFO    ] Checking for system updates...
[2026-06-05 01:57:40,147.147 INFO    ] 200
[2026-06-05 01:57:40,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:40,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:57:40,205.205 INFO    ] No update needed
[2026-06-05 01:57:40,208.208 INFO    ] Checking for camera pi updates...
[2026-06-05 01:57:40,243.243 INFO    ] 200
[2026-06-05 01:57:40,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:40,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:57:40,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:57:40,343.343 INFO    ] No camera update needed
[2026-06-05 01:57:40,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:57:40,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:57:40,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:57:40,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:57:42,400.400 INFO    ] ================================================
[2026-06-05 01:57:42,416.416 INFO    ] Launching Daemon at Fri Jun  5 01:57:42 IST 2026
[2026-06-05 01:57:42,427.427 INFO    ] ================================================
[2026-06-05 01:57:43,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:57:42
[2026-06-05 01:57:43,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:57:43,836.836 INFO    ] Initializing speech engine...
[2026-06-05 01:57:43,859.859 INFO    ] 2026-06-05 01:57:43
[2026-06-05 01:57:44,110.110 INFO    ] 2026-06-05 01:57:44
[2026-06-05 01:57:44,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:57:44,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:57:44,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:57:44,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:57:44,581.581 INFO    ] time= 05/06/2026 01:57:44
[2026-06-05 01:57:44,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:57:44,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:57:44,727.727 INFO    ] No existing commands found in stream
[2026-06-05 01:57:49,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:57:49,742.742 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 01:57:51,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:57:51,580.580 INFO    ] Checking for system updates...
[2026-06-05 01:57:51,621.621 INFO    ] 200
[2026-06-05 01:57:51,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:51,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:57:51,679.679 INFO    ] No update needed
[2026-06-05 01:57:51,682.682 INFO    ] Checking for camera pi updates...
[2026-06-05 01:57:51,716.716 INFO    ] 200
[2026-06-05 01:57:51,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:57:51,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:57:51,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:57:51,808.808 INFO    ] No camera update needed
[2026-06-05 01:57:51,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:57:51,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:57:51,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:57:51,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:57:53,865.865 INFO    ] ================================================
[2026-06-05 01:57:53,880.880 INFO    ] Launching Daemon at Fri Jun  5 01:57:53 IST 2026
[2026-06-05 01:57:53,891.891 INFO    ] ================================================
[2026-06-05 01:57:54,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:57:54
[2026-06-05 01:57:55,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:57:55,290.290 INFO    ] Initializing speech engine...
[2026-06-05 01:57:55,312.312 INFO    ] 2026-06-05 01:57:55
[2026-06-05 01:57:55,564.564 INFO    ] 2026-06-05 01:57:55
[2026-06-05 01:57:55,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:57:55,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:57:55,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:57:55,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:57:55,930.930 INFO    ] time= 05/06/2026 01:57:55
[2026-06-05 01:57:55,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:57:55,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:57:56,108.108 INFO    ] No existing commands found in stream
[2026-06-05 01:58:01,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:58:01,138.138 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 01:58:02,887.887 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:58:02,890.890 INFO    ] Checking for system updates...
[2026-06-05 01:58:02,930.930 INFO    ] 200
[2026-06-05 01:58:02,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:03,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:58:03,020.020 INFO    ] No update needed
[2026-06-05 01:58:03,024.024 INFO    ] Checking for camera pi updates...
[2026-06-05 01:58:03,073.073 INFO    ] 200
[2026-06-05 01:58:03,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:03,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:58:03,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:58:03,205.205 INFO    ] No camera update needed
[2026-06-05 01:58:03,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:58:03,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:58:03,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:58:03,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:58:05,261.261 INFO    ] ================================================
[2026-06-05 01:58:05,276.276 INFO    ] Launching Daemon at Fri Jun  5 01:58:05 IST 2026
[2026-06-05 01:58:05,286.286 INFO    ] ================================================
[2026-06-05 01:58:05,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:58:05
[2026-06-05 01:58:06,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:58:06,733.733 INFO    ] Initializing speech engine...
[2026-06-05 01:58:06,742.742 INFO    ] 2026-06-05 01:58:06
[2026-06-05 01:58:06,989.989 INFO    ] 2026-06-05 01:58:06
[2026-06-05 01:58:07,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:58:07,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:58:07,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:58:07,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:58:07,487.487 INFO    ] time= 05/06/2026 01:58:07
[2026-06-05 01:58:07,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:58:07,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:58:07,614.614 INFO    ] No existing commands found in stream
[2026-06-05 01:58:12,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:58:12,646.646 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 01:58:13,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:58:13,208.208 INFO    ] Checking for system updates...
[2026-06-05 01:58:13,245.245 INFO    ] 200
[2026-06-05 01:58:13,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:13,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:58:13,303.303 INFO    ] No update needed
[2026-06-05 01:58:13,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 01:58:13,343.343 INFO    ] 200
[2026-06-05 01:58:13,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:13,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:58:13,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:58:13,444.444 INFO    ] No camera update needed
[2026-06-05 01:58:13,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:58:13,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:58:13,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:58:13,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:58:15,503.503 INFO    ] ================================================
[2026-06-05 01:58:15,518.518 INFO    ] Launching Daemon at Fri Jun  5 01:58:15 IST 2026
[2026-06-05 01:58:15,528.528 INFO    ] ================================================
[2026-06-05 01:58:16,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:58:16
[2026-06-05 01:58:16,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:58:16,924.924 INFO    ] Initializing speech engine...
[2026-06-05 01:58:16,939.939 INFO    ] 2026-06-05 01:58:16
[2026-06-05 01:58:17,200.200 INFO    ] 2026-06-05 01:58:17
[2026-06-05 01:58:17,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:58:17,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:58:17,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:58:17,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:58:17,579.579 INFO    ] time= 05/06/2026 01:58:17
[2026-06-05 01:58:17,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:58:17,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:58:17,767.767 INFO    ] No existing commands found in stream
[2026-06-05 01:58:22,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:58:22,787.787 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 01:58:23,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:58:23,470.470 INFO    ] Checking for system updates...
[2026-06-05 01:58:23,506.506 INFO    ] 200
[2026-06-05 01:58:23,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:23,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:58:23,565.565 INFO    ] No update needed
[2026-06-05 01:58:23,568.568 INFO    ] Checking for camera pi updates...
[2026-06-05 01:58:23,602.602 INFO    ] 200
[2026-06-05 01:58:23,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:23,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:58:23,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:58:23,709.709 INFO    ] No camera update needed
[2026-06-05 01:58:23,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:58:23,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:58:23,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:58:23,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:58:25,765.765 INFO    ] ================================================
[2026-06-05 01:58:25,780.780 INFO    ] Launching Daemon at Fri Jun  5 01:58:25 IST 2026
[2026-06-05 01:58:25,791.791 INFO    ] ================================================
[2026-06-05 01:58:26,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:58:26
[2026-06-05 01:58:27,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:58:27,370.370 INFO    ] Initializing speech engine...
[2026-06-05 01:58:27,378.378 INFO    ] 2026-06-05 01:58:27
[2026-06-05 01:58:27,649.649 INFO    ] 2026-06-05 01:58:27
[2026-06-05 01:58:27,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:58:27,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:58:27,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:58:28,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:58:28,129.129 INFO    ] time= 05/06/2026 01:58:28
[2026-06-05 01:58:28,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:58:28,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:58:28,278.278 INFO    ] No existing commands found in stream
[2026-06-05 01:58:33,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:58:33,293.293 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 01:58:36,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 01:58:36,681.681 INFO    ] Checking for system updates...
[2026-06-05 01:58:36,717.717 INFO    ] 200
[2026-06-05 01:58:36,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:36,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:58:36,777.777 INFO    ] No update needed
[2026-06-05 01:58:36,780.780 INFO    ] Checking for camera pi updates...
[2026-06-05 01:58:36,817.817 INFO    ] 200
[2026-06-05 01:58:36,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:36,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:58:36,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:58:36,913.913 INFO    ] No camera update needed
[2026-06-05 01:58:36,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:58:36,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:58:36,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:58:36,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:58:38,971.971 INFO    ] ================================================
[2026-06-05 01:58:38,986.986 INFO    ] Launching Daemon at Fri Jun  5 01:58:38 IST 2026
[2026-06-05 01:58:39,997.997 INFO    ] ================================================
[2026-06-05 01:58:39,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:58:39
[2026-06-05 01:58:40,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:58:40,407.407 INFO    ] Initializing speech engine...
[2026-06-05 01:58:40,431.431 INFO    ] 2026-06-05 01:58:40
[2026-06-05 01:58:40,689.689 INFO    ] 2026-06-05 01:58:40
[2026-06-05 01:58:40,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:58:40,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:58:40,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:58:41,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:58:41,068.068 INFO    ] time= 05/06/2026 01:58:41
[2026-06-05 01:58:41,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:58:41,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:58:41,235.235 INFO    ] No existing commands found in stream
[2026-06-05 01:58:46,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:58:46,269.269 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 01:58:48,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:58:48,204.204 INFO    ] Checking for system updates...
[2026-06-05 01:58:48,240.240 INFO    ] 200
[2026-06-05 01:58:48,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:48,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:58:48,311.311 INFO    ] No update needed
[2026-06-05 01:58:48,313.313 INFO    ] Checking for camera pi updates...
[2026-06-05 01:58:48,354.354 INFO    ] 200
[2026-06-05 01:58:48,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:48,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:58:48,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:58:48,448.448 INFO    ] No camera update needed
[2026-06-05 01:58:48,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:58:48,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:58:48,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:58:48,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:58:50,505.505 INFO    ] ================================================
[2026-06-05 01:58:50,520.520 INFO    ] Launching Daemon at Fri Jun  5 01:58:50 IST 2026
[2026-06-05 01:58:50,531.531 INFO    ] ================================================
[2026-06-05 01:58:51,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:58:51
[2026-06-05 01:58:51,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:58:51,955.955 INFO    ] Initializing speech engine...
[2026-06-05 01:58:51,974.974 INFO    ] 2026-06-05 01:58:51
[2026-06-05 01:58:52,226.226 INFO    ] 2026-06-05 01:58:52
[2026-06-05 01:58:52,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:58:52,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:58:52,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:58:52,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:58:52,608.608 INFO    ] time= 05/06/2026 01:58:52
[2026-06-05 01:58:52,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:58:52,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:58:52,796.796 INFO    ] No existing commands found in stream
[2026-06-05 01:58:57,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:58:57,823.823 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 01:58:58,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 01:58:58,735.735 INFO    ] Checking for system updates...
[2026-06-05 01:58:58,772.772 INFO    ] 200
[2026-06-05 01:58:58,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:58,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:58:58,832.832 INFO    ] No update needed
[2026-06-05 01:58:58,834.834 INFO    ] Checking for camera pi updates...
[2026-06-05 01:58:58,872.872 INFO    ] 200
[2026-06-05 01:58:58,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:58:58,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:58:58,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:58:58,960.960 INFO    ] No camera update needed
[2026-06-05 01:58:58,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:58:58,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:58:58,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:58:58,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:59:01,019.019 INFO    ] ================================================
[2026-06-05 01:59:01,034.034 INFO    ] Launching Daemon at Fri Jun  5 01:59:01 IST 2026
[2026-06-05 01:59:01,044.044 INFO    ] ================================================
[2026-06-05 01:59:01,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:59:01
[2026-06-05 01:59:02,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:59:02,716.716 INFO    ] Initializing speech engine...
[2026-06-05 01:59:02,732.732 INFO    ] 2026-06-05 01:59:02
[2026-06-05 01:59:03,018.018 INFO    ] 2026-06-05 01:59:03
[2026-06-05 01:59:03,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:59:03,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:59:03,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:59:03,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:59:03,450.450 INFO    ] time= 05/06/2026 01:59:03
[2026-06-05 01:59:03,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:59:03,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:59:03,637.637 INFO    ] No existing commands found in stream
[2026-06-05 01:59:08,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:59:08,671.671 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 01:59:09,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 01:59:09,359.359 INFO    ] Checking for system updates...
[2026-06-05 01:59:09,397.397 INFO    ] 200
[2026-06-05 01:59:09,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:09,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:59:09,464.464 INFO    ] No update needed
[2026-06-05 01:59:09,467.467 INFO    ] Checking for camera pi updates...
[2026-06-05 01:59:09,502.502 INFO    ] 200
[2026-06-05 01:59:09,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:09,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:59:09,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:59:09,597.597 INFO    ] No camera update needed
[2026-06-05 01:59:09,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:59:09,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:59:09,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:59:09,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:59:11,657.657 INFO    ] ================================================
[2026-06-05 01:59:11,671.671 INFO    ] Launching Daemon at Fri Jun  5 01:59:11 IST 2026
[2026-06-05 01:59:11,682.682 INFO    ] ================================================
[2026-06-05 01:59:12,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:59:12
[2026-06-05 01:59:13,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:59:13,309.309 INFO    ] Initializing speech engine...
[2026-06-05 01:59:13,319.319 INFO    ] 2026-06-05 01:59:13
[2026-06-05 01:59:13,612.612 INFO    ] 2026-06-05 01:59:13
[2026-06-05 01:59:13,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:59:13,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:59:13,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:59:14,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:59:14,161.161 INFO    ] time= 05/06/2026 01:59:14
[2026-06-05 01:59:14,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:59:14,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:59:14,301.301 INFO    ] No existing commands found in stream
[2026-06-05 01:59:19,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:59:19,335.335 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 01:59:20,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 01:59:20,633.633 INFO    ] Checking for system updates...
[2026-06-05 01:59:20,674.674 INFO    ] 200
[2026-06-05 01:59:20,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:20,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:59:20,741.741 INFO    ] No update needed
[2026-06-05 01:59:20,744.744 INFO    ] Checking for camera pi updates...
[2026-06-05 01:59:20,783.783 INFO    ] 200
[2026-06-05 01:59:20,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:20,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:59:20,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:59:20,880.880 INFO    ] No camera update needed
[2026-06-05 01:59:20,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:59:20,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:59:20,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:59:20,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:59:22,938.938 INFO    ] ================================================
[2026-06-05 01:59:22,953.953 INFO    ] Launching Daemon at Fri Jun  5 01:59:22 IST 2026
[2026-06-05 01:59:22,964.964 INFO    ] ================================================
[2026-06-05 01:59:23,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:59:23
[2026-06-05 01:59:24,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:59:24,420.420 INFO    ] Initializing speech engine...
[2026-06-05 01:59:24,427.427 INFO    ] 2026-06-05 01:59:24
[2026-06-05 01:59:24,675.675 INFO    ] 2026-06-05 01:59:24
[2026-06-05 01:59:24,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:59:24,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:59:24,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:59:25,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:59:25,054.054 INFO    ] time= 05/06/2026 01:59:25
[2026-06-05 01:59:25,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:59:25,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:59:25,238.238 INFO    ] No existing commands found in stream
[2026-06-05 01:59:30,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:59:30,266.266 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 01:59:32,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:59:32,413.413 INFO    ] Checking for system updates...
[2026-06-05 01:59:32,452.452 INFO    ] 200
[2026-06-05 01:59:32,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:32,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:59:32,523.523 INFO    ] No update needed
[2026-06-05 01:59:32,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 01:59:32,562.562 INFO    ] 200
[2026-06-05 01:59:32,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:32,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:59:32,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:59:32,647.647 INFO    ] No camera update needed
[2026-06-05 01:59:32,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:59:32,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:59:32,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:59:32,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:59:34,707.707 INFO    ] ================================================
[2026-06-05 01:59:34,723.723 INFO    ] Launching Daemon at Fri Jun  5 01:59:34 IST 2026
[2026-06-05 01:59:34,733.733 INFO    ] ================================================
[2026-06-05 01:59:35,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:59:35
[2026-06-05 01:59:35,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:59:36,179.179 INFO    ] Initializing speech engine...
[2026-06-05 01:59:36,188.188 INFO    ] 2026-06-05 01:59:36
[2026-06-05 01:59:36,485.485 INFO    ] 2026-06-05 01:59:36
[2026-06-05 01:59:36,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:59:36,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:59:36,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:59:36,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:59:36,876.876 INFO    ] time= 05/06/2026 01:59:36
[2026-06-05 01:59:36,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:59:36,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:59:37,002.002 INFO    ] No existing commands found in stream
[2026-06-05 01:59:42,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:59:42,018.018 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 01:59:44,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 01:59:44,038.038 INFO    ] Checking for system updates...
[2026-06-05 01:59:44,074.074 INFO    ] 200
[2026-06-05 01:59:44,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:44,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:59:44,132.132 INFO    ] No update needed
[2026-06-05 01:59:44,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 01:59:44,168.168 INFO    ] 200
[2026-06-05 01:59:44,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:44,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:59:44,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 01:59:44,264.264 INFO    ] No camera update needed
[2026-06-05 01:59:44,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:59:44,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:59:44,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:59:44,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:59:46,321.321 INFO    ] ================================================
[2026-06-05 01:59:46,337.337 INFO    ] Launching Daemon at Fri Jun  5 01:59:46 IST 2026
[2026-06-05 01:59:46,348.348 INFO    ] ================================================
[2026-06-05 01:59:47,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:59:47
[2026-06-05 01:59:47,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:59:48,005.005 INFO    ] Initializing speech engine...
[2026-06-05 01:59:48,013.013 INFO    ] 2026-06-05 01:59:48
[2026-06-05 01:59:48,307.307 INFO    ] 2026-06-05 01:59:48
[2026-06-05 01:59:48,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 01:59:48,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 01:59:48,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 01:59:48,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 01:59:48,779.779 INFO    ] time= 05/06/2026 01:59:48
[2026-06-05 01:59:48,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 01:59:48,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-05 01:59:48,999.999 INFO    ] No existing commands found in stream
[2026-06-05 01:59:54,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 01:59:54,033.033 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 01:59:55,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 01:59:55,731.731 INFO    ] Checking for system updates...
[2026-06-05 01:59:55,768.768 INFO    ] 200
[2026-06-05 01:59:55,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:55,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:59:55,828.828 INFO    ] No update needed
[2026-06-05 01:59:55,831.831 INFO    ] Checking for camera pi updates...
[2026-06-05 01:59:55,866.866 INFO    ] 200
[2026-06-05 01:59:55,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 01:59:55,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 01:59:55,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 01:59:55,958.958 INFO    ] No camera update needed
[2026-06-05 01:59:55,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-05 01:59:55,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 01:59:55,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 01:59:55,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 01:59:58,017.017 INFO    ] ================================================
[2026-06-05 01:59:58,032.032 INFO    ] Launching Daemon at Fri Jun  5 01:59:58 IST 2026
[2026-06-05 01:59:58,043.043 INFO    ] ================================================
[2026-06-05 01:59:58,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 01:59:58
[2026-06-05 01:59:59,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 01:59:59,467.467 INFO    ] Initializing speech engine...
[2026-06-05 01:59:59,477.477 INFO    ] 2026-06-05 01:59:59
[2026-06-05 01:59:59,772.772 INFO    ] 2026-06-05 01:59:59
[2026-06-05 01:59:59,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:00:00,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:00:00,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:00:00,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:00:00,196.196 INFO    ] time= 05/06/2026 02:00:00
[2026-06-05 02:00:00,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:00:00,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:00:00,354.354 INFO    ] No existing commands found in stream
[2026-06-05 02:00:05,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:00:05,408.408 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 02:00:09,073.073 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:00:09,076.076 INFO    ] Checking for system updates...
[2026-06-05 02:00:09,114.114 INFO    ] 200
[2026-06-05 02:00:09,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:09,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:00:09,174.174 INFO    ] No update needed
[2026-06-05 02:00:09,177.177 INFO    ] Checking for camera pi updates...
[2026-06-05 02:00:09,211.211 INFO    ] 200
[2026-06-05 02:00:09,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:09,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:00:09,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:00:09,315.315 INFO    ] No camera update needed
[2026-06-05 02:00:09,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:00:09,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:00:09,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:00:09,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:00:11,372.372 INFO    ] ================================================
[2026-06-05 02:00:11,388.388 INFO    ] Launching Daemon at Fri Jun  5 02:00:11 IST 2026
[2026-06-05 02:00:11,400.400 INFO    ] ================================================
[2026-06-05 02:00:12,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:00:12
[2026-06-05 02:00:12,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:00:13,046.046 INFO    ] Initializing speech engine...
[2026-06-05 02:00:13,061.061 INFO    ] 2026-06-05 02:00:13
[2026-06-05 02:00:13,352.352 INFO    ] 2026-06-05 02:00:13
[2026-06-05 02:00:13,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:00:13,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:00:13,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:00:13,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:00:13,895.895 INFO    ] time= 05/06/2026 02:00:13
[2026-06-05 02:00:13,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:00:13,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:00:14,052.052 INFO    ] No existing commands found in stream
[2026-06-05 02:00:19,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:00:19,074.074 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 02:00:20,134.134 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:00:20,138.138 INFO    ] Checking for system updates...
[2026-06-05 02:00:20,176.176 INFO    ] 200
[2026-06-05 02:00:20,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:20,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:00:20,236.236 INFO    ] No update needed
[2026-06-05 02:00:20,239.239 INFO    ] Checking for camera pi updates...
[2026-06-05 02:00:20,274.274 INFO    ] 200
[2026-06-05 02:00:20,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:20,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:00:20,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:00:20,369.369 INFO    ] No camera update needed
[2026-06-05 02:00:20,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:00:20,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:00:20,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:00:20,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:00:22,424.424 INFO    ] ================================================
[2026-06-05 02:00:22,440.440 INFO    ] Launching Daemon at Fri Jun  5 02:00:22 IST 2026
[2026-06-05 02:00:22,452.452 INFO    ] ================================================
[2026-06-05 02:00:23,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:00:23
[2026-06-05 02:00:23,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:00:23,860.860 INFO    ] Initializing speech engine...
[2026-06-05 02:00:23,884.884 INFO    ] 2026-06-05 02:00:23
[2026-06-05 02:00:24,160.160 INFO    ] 2026-06-05 02:00:24
[2026-06-05 02:00:24,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:00:24,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:00:24,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:00:24,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:00:24,646.646 INFO    ] time= 05/06/2026 02:00:24
[2026-06-05 02:00:24,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:00:24,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:00:24,808.808 INFO    ] No existing commands found in stream
[2026-06-05 02:00:29,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:00:29,827.827 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 02:00:30,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:00:30,355.355 INFO    ] Checking for system updates...
[2026-06-05 02:00:30,391.391 INFO    ] 200
[2026-06-05 02:00:30,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:30,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:00:30,453.453 INFO    ] No update needed
[2026-06-05 02:00:30,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 02:00:30,495.495 INFO    ] 200
[2026-06-05 02:00:30,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:30,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:00:30,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:00:30,586.586 INFO    ] No camera update needed
[2026-06-05 02:00:30,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:00:30,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:00:30,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:00:30,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:00:32,644.644 INFO    ] ================================================
[2026-06-05 02:00:32,661.661 INFO    ] Launching Daemon at Fri Jun  5 02:00:32 IST 2026
[2026-06-05 02:00:32,674.674 INFO    ] ================================================
[2026-06-05 02:00:33,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:00:33
[2026-06-05 02:00:33,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:00:34,181.181 INFO    ] Initializing speech engine...
[2026-06-05 02:00:34,190.190 INFO    ] 2026-06-05 02:00:34
[2026-06-05 02:00:34,452.452 INFO    ] 2026-06-05 02:00:34
[2026-06-05 02:00:34,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:00:34,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:00:34,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:00:34,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:00:34,814.814 INFO    ] time= 05/06/2026 02:00:34
[2026-06-05 02:00:34,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:00:34,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:00:34,942.942 INFO    ] No existing commands found in stream
[2026-06-05 02:00:39,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:00:39,958.958 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 02:00:43,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:00:43,795.795 INFO    ] Checking for system updates...
[2026-06-05 02:00:43,831.831 INFO    ] 200
[2026-06-05 02:00:43,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:43,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:00:43,890.890 INFO    ] No update needed
[2026-06-05 02:00:43,892.892 INFO    ] Checking for camera pi updates...
[2026-06-05 02:00:43,926.926 INFO    ] 200
[2026-06-05 02:00:43,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:43,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:00:44,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:00:44,121.121 INFO    ] No camera update needed
[2026-06-05 02:00:44,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:00:44,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:00:44,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:00:44,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:00:46,179.179 INFO    ] ================================================
[2026-06-05 02:00:46,195.195 INFO    ] Launching Daemon at Fri Jun  5 02:00:46 IST 2026
[2026-06-05 02:00:46,207.207 INFO    ] ================================================
[2026-06-05 02:00:46,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:00:46
[2026-06-05 02:00:47,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:00:47,663.663 INFO    ] Initializing speech engine...
[2026-06-05 02:00:47,675.675 INFO    ] 2026-06-05 02:00:47
[2026-06-05 02:00:47,929.929 INFO    ] 2026-06-05 02:00:47
[2026-06-05 02:00:47,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:00:48,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:00:48,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:00:48,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:00:48,308.308 INFO    ] time= 05/06/2026 02:00:48
[2026-06-05 02:00:48,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:00:48,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:00:48,464.464 INFO    ] No existing commands found in stream
[2026-06-05 02:00:53,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:00:53,492.492 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 02:00:55,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:00:55,956.956 INFO    ] Checking for system updates...
[2026-06-05 02:00:55,992.992 INFO    ] 200
[2026-06-05 02:00:55,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:56,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:00:56,059.059 INFO    ] No update needed
[2026-06-05 02:00:56,061.061 INFO    ] Checking for camera pi updates...
[2026-06-05 02:00:56,099.099 INFO    ] 200
[2026-06-05 02:00:56,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:00:56,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:00:56,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:00:56,186.186 INFO    ] No camera update needed
[2026-06-05 02:00:56,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:00:56,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:00:56,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:00:56,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:00:58,245.245 INFO    ] ================================================
[2026-06-05 02:00:58,261.261 INFO    ] Launching Daemon at Fri Jun  5 02:00:58 IST 2026
[2026-06-05 02:00:58,273.273 INFO    ] ================================================
[2026-06-05 02:00:58,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:00:58
[2026-06-05 02:00:59,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:00:59,736.736 INFO    ] Initializing speech engine...
[2026-06-05 02:00:59,743.743 INFO    ] 2026-06-05 02:00:59
[2026-06-05 02:01:00,004.004 INFO    ] 2026-06-05 02:00:59
[2026-06-05 02:01:00,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:01:00,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:01:00,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:01:00,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:01:00,489.489 INFO    ] time= 05/06/2026 02:01:00
[2026-06-05 02:01:00,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:01:00,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:01:00,662.662 INFO    ] No existing commands found in stream
[2026-06-05 02:01:05,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:01:05,692.692 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 02:01:08,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:01:08,061.061 INFO    ] Checking for system updates...
[2026-06-05 02:01:08,097.097 INFO    ] 200
[2026-06-05 02:01:08,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:01:08,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:01:08,155.155 INFO    ] No update needed
[2026-06-05 02:01:08,158.158 INFO    ] Checking for camera pi updates...
[2026-06-05 02:01:08,192.192 INFO    ] 200
[2026-06-05 02:01:08,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:01:08,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:01:08,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:01:08,284.284 INFO    ] No camera update needed
[2026-06-05 02:01:08,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:01:08,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:01:08,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:01:08,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:01:10,344.344 INFO    ] ================================================
[2026-06-05 02:01:10,359.359 INFO    ] Launching Daemon at Fri Jun  5 02:01:10 IST 2026
[2026-06-05 02:01:10,371.371 INFO    ] ================================================
[2026-06-05 02:01:10,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:01:10
[2026-06-05 02:01:11,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:01:11,791.791 INFO    ] Initializing speech engine...
[2026-06-05 02:01:11,801.801 INFO    ] 2026-06-05 02:01:11
[2026-06-05 02:01:12,051.051 INFO    ] 2026-06-05 02:01:12
[2026-06-05 02:01:12,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:01:12,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:01:12,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:01:12,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:01:12,427.427 INFO    ] time= 05/06/2026 02:01:12
[2026-06-05 02:01:12,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:01:12,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:01:12,565.565 INFO    ] No existing commands found in stream
[2026-06-05 02:01:17,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:01:17,593.593 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 02:01:21,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:01:21,539.539 INFO    ] Checking for system updates...
[2026-06-05 02:01:21,575.575 INFO    ] 200
[2026-06-05 02:01:21,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:01:21,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:01:21,639.639 INFO    ] No update needed
[2026-06-05 02:01:21,641.641 INFO    ] Checking for camera pi updates...
[2026-06-05 02:01:21,678.678 INFO    ] 200
[2026-06-05 02:01:21,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:01:21,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:01:21,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:01:21,771.771 INFO    ] No camera update needed
[2026-06-05 02:01:21,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:01:21,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:01:21,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:01:21,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:01:23,827.827 INFO    ] ================================================
[2026-06-05 02:01:23,843.843 INFO    ] Launching Daemon at Fri Jun  5 02:01:23 IST 2026
[2026-06-05 02:01:23,854.854 INFO    ] ================================================
[2026-06-05 02:01:24,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:01:24
[2026-06-05 02:01:25,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:01:25,367.367 INFO    ] Initializing speech engine...
[2026-06-05 02:01:25,376.376 INFO    ] 2026-06-05 02:01:25
[2026-06-05 02:01:25,638.638 INFO    ] 2026-06-05 02:01:25
[2026-06-05 02:01:25,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:01:25,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:01:25,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:01:26,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:01:26,103.103 INFO    ] time= 05/06/2026 02:01:26
[2026-06-05 02:01:26,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:01:26,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:01:26,248.248 INFO    ] No existing commands found in stream
[2026-06-05 02:01:31,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:01:31,277.277 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 02:01:33,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:01:33,582.582 INFO    ] Checking for system updates...
[2026-06-05 02:01:33,618.618 INFO    ] 200
[2026-06-05 02:01:33,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:01:33,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:01:33,686.686 INFO    ] No update needed
[2026-06-05 02:01:33,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 02:01:33,722.722 INFO    ] 200
[2026-06-05 02:01:33,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:01:33,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:01:33,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:01:33,802.802 INFO    ] No camera update needed
[2026-06-05 02:01:33,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:01:33,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:01:33,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:01:33,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:01:35,861.861 INFO    ] ================================================
[2026-06-05 02:01:35,877.877 INFO    ] Launching Daemon at Fri Jun  5 02:01:35 IST 2026
[2026-06-05 02:01:35,888.888 INFO    ] ================================================
[2026-06-05 02:01:36,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:01:36
[2026-06-05 02:01:37,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:01:37,333.333 INFO    ] Initializing speech engine...
[2026-06-05 02:01:37,349.349 INFO    ] 2026-06-05 02:01:37
[2026-06-05 02:01:37,606.606 INFO    ] 2026-06-05 02:01:37
[2026-06-05 02:01:37,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:01:37,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:01:37,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:01:38,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:01:38,064.064 INFO    ] time= 05/06/2026 02:01:38
[2026-06-05 02:01:38,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:01:38,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:01:38,229.229 INFO    ] No existing commands found in stream
[2026-06-05 02:01:43,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:01:43,243.243 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 02:01:47,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:01:47,141.141 INFO    ] Checking for system updates...
[2026-06-05 02:01:47,180.180 INFO    ] 200
[2026-06-05 02:01:47,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:01:47,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:01:47,248.248 INFO    ] No update needed
[2026-06-05 02:01:47,251.251 INFO    ] Checking for camera pi updates...
[2026-06-05 02:01:47,287.287 INFO    ] 200
[2026-06-05 02:01:47,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:01:47,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:01:47,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:01:47,390.390 INFO    ] No camera update needed
[2026-06-05 02:01:47,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:01:47,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:01:47,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:01:47,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:01:49,454.454 INFO    ] ================================================
[2026-06-05 02:01:49,469.469 INFO    ] Launching Daemon at Fri Jun  5 02:01:49 IST 2026
[2026-06-05 02:01:49,481.481 INFO    ] ================================================
[2026-06-05 02:01:50,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:01:50
[2026-06-05 02:01:50,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:01:51,003.003 INFO    ] Initializing speech engine...
[2026-06-05 02:01:51,011.011 INFO    ] 2026-06-05 02:01:51
[2026-06-05 02:01:51,279.279 INFO    ] 2026-06-05 02:01:51
[2026-06-05 02:01:51,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:01:51,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:01:51,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:01:51,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:01:51,657.657 INFO    ] time= 05/06/2026 02:01:51
[2026-06-05 02:01:51,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:01:51,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:01:51,838.838 INFO    ] No existing commands found in stream
[2026-06-05 02:01:56,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:01:56,867.867 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 02:02:00,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:02:00,417.417 INFO    ] Checking for system updates...
[2026-06-05 02:02:00,454.454 INFO    ] 200
[2026-06-05 02:02:00,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:00,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:02:00,518.518 INFO    ] No update needed
[2026-06-05 02:02:00,521.521 INFO    ] Checking for camera pi updates...
[2026-06-05 02:02:00,555.555 INFO    ] 200
[2026-06-05 02:02:00,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:00,598.598 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:02:00,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:02:00,650.650 INFO    ] No camera update needed
[2026-06-05 02:02:00,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:02:00,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:02:00,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:02:00,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:02:02,714.714 INFO    ] ================================================
[2026-06-05 02:02:02,737.737 INFO    ] Launching Daemon at Fri Jun  5 02:02:02 IST 2026
[2026-06-05 02:02:02,771.771 INFO    ] ================================================
[2026-06-05 02:02:03,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:02:03
[2026-06-05 02:02:04,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:02:04,334.334 INFO    ] Initializing speech engine...
[2026-06-05 02:02:04,345.345 INFO    ] 2026-06-05 02:02:04
[2026-06-05 02:02:04,619.619 INFO    ] 2026-06-05 02:02:04
[2026-06-05 02:02:04,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:02:04,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:02:04,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:02:04,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:02:04,992.992 INFO    ] time= 05/06/2026 02:02:04
[2026-06-05 02:02:05,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:02:05,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:02:05,150.150 INFO    ] No existing commands found in stream
[2026-06-05 02:02:10,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:02:10,163.163 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 02:02:13,111.111 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:02:13,114.114 INFO    ] Checking for system updates...
[2026-06-05 02:02:13,156.156 INFO    ] 200
[2026-06-05 02:02:13,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:13,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:02:13,223.223 INFO    ] No update needed
[2026-06-05 02:02:13,225.225 INFO    ] Checking for camera pi updates...
[2026-06-05 02:02:13,259.259 INFO    ] 200
[2026-06-05 02:02:13,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:13,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:02:13,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:02:13,378.378 INFO    ] No camera update needed
[2026-06-05 02:02:13,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:02:13,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:02:13,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:02:13,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:02:15,434.434 INFO    ] ================================================
[2026-06-05 02:02:15,449.449 INFO    ] Launching Daemon at Fri Jun  5 02:02:15 IST 2026
[2026-06-05 02:02:15,461.461 INFO    ] ================================================
[2026-06-05 02:02:16,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:02:16
[2026-06-05 02:02:16,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:02:17,152.152 INFO    ] Initializing speech engine...
[2026-06-05 02:02:17,160.160 INFO    ] 2026-06-05 02:02:17
[2026-06-05 02:02:17,453.453 INFO    ] 2026-06-05 02:02:17
[2026-06-05 02:02:17,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:02:17,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:02:17,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:02:17,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:02:18,004.004 INFO    ] time= 05/06/2026 02:02:17
[2026-06-05 02:02:18,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:02:18,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:02:18,160.160 INFO    ] No existing commands found in stream
[2026-06-05 02:02:23,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:02:23,179.179 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 02:02:26,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:02:26,535.535 INFO    ] Checking for system updates...
[2026-06-05 02:02:26,578.578 INFO    ] 200
[2026-06-05 02:02:26,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:26,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:02:26,638.638 INFO    ] No update needed
[2026-06-05 02:02:26,641.641 INFO    ] Checking for camera pi updates...
[2026-06-05 02:02:26,676.676 INFO    ] 200
[2026-06-05 02:02:26,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:26,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:02:26,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:02:26,784.784 INFO    ] No camera update needed
[2026-06-05 02:02:26,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:02:26,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:02:26,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:02:26,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:02:28,846.846 INFO    ] ================================================
[2026-06-05 02:02:28,862.862 INFO    ] Launching Daemon at Fri Jun  5 02:02:28 IST 2026
[2026-06-05 02:02:28,873.873 INFO    ] ================================================
[2026-06-05 02:02:29,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:02:29
[2026-06-05 02:02:30,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:02:30,326.326 INFO    ] Initializing speech engine...
[2026-06-05 02:02:30,337.337 INFO    ] 2026-06-05 02:02:30
[2026-06-05 02:02:30,584.584 INFO    ] 2026-06-05 02:02:30
[2026-06-05 02:02:30,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:02:30,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:02:30,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:02:30,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:02:30,956.956 INFO    ] time= 05/06/2026 02:02:30
[2026-06-05 02:02:30,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:02:31,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:02:31,123.123 INFO    ] No existing commands found in stream
[2026-06-05 02:02:36,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:02:36,157.157 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 02:02:40,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:02:40,148.148 INFO    ] Checking for system updates...
[2026-06-05 02:02:40,184.184 INFO    ] 200
[2026-06-05 02:02:40,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:40,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:02:40,243.243 INFO    ] No update needed
[2026-06-05 02:02:40,245.245 INFO    ] Checking for camera pi updates...
[2026-06-05 02:02:40,279.279 INFO    ] 200
[2026-06-05 02:02:40,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:40,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:02:40,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:02:40,380.380 INFO    ] No camera update needed
[2026-06-05 02:02:40,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:02:40,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:02:40,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:02:40,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:02:42,437.437 INFO    ] ================================================
[2026-06-05 02:02:42,454.454 INFO    ] Launching Daemon at Fri Jun  5 02:02:42 IST 2026
[2026-06-05 02:02:42,465.465 INFO    ] ================================================
[2026-06-05 02:02:43,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:02:43
[2026-06-05 02:02:43,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:02:43,901.901 INFO    ] Initializing speech engine...
[2026-06-05 02:02:43,913.913 INFO    ] 2026-06-05 02:02:43
[2026-06-05 02:02:44,165.165 INFO    ] 2026-06-05 02:02:44
[2026-06-05 02:02:44,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:02:44,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:02:44,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:02:44,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:02:44,653.653 INFO    ] time= 05/06/2026 02:02:44
[2026-06-05 02:02:44,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:02:44,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:02:44,872.872 INFO    ] No existing commands found in stream
[2026-06-05 02:02:49,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:02:49,900.900 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 02:02:51,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:02:51,434.434 INFO    ] Checking for system updates...
[2026-06-05 02:02:51,471.471 INFO    ] 200
[2026-06-05 02:02:51,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:51,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:02:51,538.538 INFO    ] No update needed
[2026-06-05 02:02:51,540.540 INFO    ] Checking for camera pi updates...
[2026-06-05 02:02:51,578.578 INFO    ] 200
[2026-06-05 02:02:51,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:02:51,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:02:51,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:02:51,773.773 INFO    ] No camera update needed
[2026-06-05 02:02:51,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:02:51,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:02:51,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:02:51,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:02:53,831.831 INFO    ] ================================================
[2026-06-05 02:02:53,847.847 INFO    ] Launching Daemon at Fri Jun  5 02:02:53 IST 2026
[2026-06-05 02:02:53,858.858 INFO    ] ================================================
[2026-06-05 02:02:54,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:02:54
[2026-06-05 02:02:55,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:02:55,317.317 INFO    ] Initializing speech engine...
[2026-06-05 02:02:55,336.336 INFO    ] 2026-06-05 02:02:55
[2026-06-05 02:02:55,630.630 INFO    ] 2026-06-05 02:02:55
[2026-06-05 02:02:55,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:02:55,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:02:55,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:02:55,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:02:56,000.000 INFO    ] time= 05/06/2026 02:02:55
[2026-06-05 02:02:56,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:02:56,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:02:56,082.082 INFO    ] No existing commands found in stream
[2026-06-05 02:03:01,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:03:01,096.096 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 02:03:02,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:03:02,562.562 INFO    ] Checking for system updates...
[2026-06-05 02:03:02,616.616 INFO    ] 200
[2026-06-05 02:03:02,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:02,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:03:02,685.685 INFO    ] No update needed
[2026-06-05 02:03:02,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 02:03:02,732.732 INFO    ] 200
[2026-06-05 02:03:02,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:02,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:03:02,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:03:02,835.835 INFO    ] No camera update needed
[2026-06-05 02:03:02,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:03:02,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:03:02,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:03:02,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:03:04,902.902 INFO    ] ================================================
[2026-06-05 02:03:04,919.919 INFO    ] Launching Daemon at Fri Jun  5 02:03:04 IST 2026
[2026-06-05 02:03:04,930.930 INFO    ] ================================================
[2026-06-05 02:03:05,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:03:05
[2026-06-05 02:03:06,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:03:06,393.393 INFO    ] Initializing speech engine...
[2026-06-05 02:03:06,402.402 INFO    ] 2026-06-05 02:03:06
[2026-06-05 02:03:06,653.653 INFO    ] 2026-06-05 02:03:06
[2026-06-05 02:03:06,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:03:06,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:03:06,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:03:07,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:03:07,025.025 INFO    ] time= 05/06/2026 02:03:07
[2026-06-05 02:03:07,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:03:07,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:03:07,096.096 INFO    ] No existing commands found in stream
[2026-06-05 02:03:12,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:03:12,110.110 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 02:03:13,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:03:13,680.680 INFO    ] Checking for system updates...
[2026-06-05 02:03:13,717.717 INFO    ] 200
[2026-06-05 02:03:13,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:13,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:03:13,774.774 INFO    ] No update needed
[2026-06-05 02:03:13,777.777 INFO    ] Checking for camera pi updates...
[2026-06-05 02:03:13,811.811 INFO    ] 200
[2026-06-05 02:03:13,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:13,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:03:13,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:03:13,911.911 INFO    ] No camera update needed
[2026-06-05 02:03:13,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:03:13,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:03:13,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:03:13,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:03:15,970.970 INFO    ] ================================================
[2026-06-05 02:03:15,986.986 INFO    ] Launching Daemon at Fri Jun  5 02:03:15 IST 2026
[2026-06-05 02:03:16,997.997 INFO    ] ================================================
[2026-06-05 02:03:16,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:03:16
[2026-06-05 02:03:17,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:03:17,467.467 INFO    ] Initializing speech engine...
[2026-06-05 02:03:17,479.479 INFO    ] 2026-06-05 02:03:17
[2026-06-05 02:03:17,744.744 INFO    ] 2026-06-05 02:03:17
[2026-06-05 02:03:17,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:03:18,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:03:18,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:03:18,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:03:18,285.285 INFO    ] time= 05/06/2026 02:03:18
[2026-06-05 02:03:18,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:03:18,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:03:18,424.424 INFO    ] No existing commands found in stream
[2026-06-05 02:03:23,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:03:23,452.452 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 02:03:23,980.980 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:03:23,983.983 INFO    ] Checking for system updates...
[2026-06-05 02:03:24,024.024 INFO    ] 200
[2026-06-05 02:03:24,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:24,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:03:24,090.090 INFO    ] No update needed
[2026-06-05 02:03:24,092.092 INFO    ] Checking for camera pi updates...
[2026-06-05 02:03:24,126.126 INFO    ] 200
[2026-06-05 02:03:24,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:24,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:03:24,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:03:24,223.223 INFO    ] No camera update needed
[2026-06-05 02:03:24,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:03:24,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:03:24,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:03:24,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:03:26,279.279 INFO    ] ================================================
[2026-06-05 02:03:26,295.295 INFO    ] Launching Daemon at Fri Jun  5 02:03:26 IST 2026
[2026-06-05 02:03:26,307.307 INFO    ] ================================================
[2026-06-05 02:03:26,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:03:26
[2026-06-05 02:03:27,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:03:27,751.751 INFO    ] Initializing speech engine...
[2026-06-05 02:03:27,767.767 INFO    ] 2026-06-05 02:03:27
[2026-06-05 02:03:28,034.034 INFO    ] 2026-06-05 02:03:28
[2026-06-05 02:03:28,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:03:28,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:03:28,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:03:28,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:03:28,525.525 INFO    ] time= 05/06/2026 02:03:28
[2026-06-05 02:03:28,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:03:28,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:03:28,697.697 INFO    ] No existing commands found in stream
[2026-06-05 02:03:33,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:03:33,737.737 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-05 02:03:37,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:03:37,139.139 INFO    ] Checking for system updates...
[2026-06-05 02:03:37,175.175 INFO    ] 200
[2026-06-05 02:03:37,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:37,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:03:37,240.240 INFO    ] No update needed
[2026-06-05 02:03:37,242.242 INFO    ] Checking for camera pi updates...
[2026-06-05 02:03:37,276.276 INFO    ] 200
[2026-06-05 02:03:37,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:37,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:03:37,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:03:37,374.374 INFO    ] No camera update needed
[2026-06-05 02:03:37,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:03:37,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:03:37,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:03:37,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:03:39,432.432 INFO    ] ================================================
[2026-06-05 02:03:39,448.448 INFO    ] Launching Daemon at Fri Jun  5 02:03:39 IST 2026
[2026-06-05 02:03:39,459.459 INFO    ] ================================================
[2026-06-05 02:03:40,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:03:40
[2026-06-05 02:03:40,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:03:40,906.906 INFO    ] Initializing speech engine...
[2026-06-05 02:03:40,923.923 INFO    ] 2026-06-05 02:03:40
[2026-06-05 02:03:41,211.211 INFO    ] 2026-06-05 02:03:41
[2026-06-05 02:03:41,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:03:41,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:03:41,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:03:41,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:03:41,632.632 INFO    ] time= 05/06/2026 02:03:41
[2026-06-05 02:03:41,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:03:41,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:03:41,851.851 INFO    ] No existing commands found in stream
[2026-06-05 02:03:46,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:03:46,872.872 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 02:03:49,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:03:49,942.942 INFO    ] Checking for system updates...
[2026-06-05 02:03:49,979.979 INFO    ] 200
[2026-06-05 02:03:49,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:50,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:03:50,046.046 INFO    ] No update needed
[2026-06-05 02:03:50,048.048 INFO    ] Checking for camera pi updates...
[2026-06-05 02:03:50,082.082 INFO    ] 200
[2026-06-05 02:03:50,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:03:50,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:03:50,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:03:50,179.179 INFO    ] No camera update needed
[2026-06-05 02:03:50,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:03:50,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:03:50,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:03:50,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:03:52,235.235 INFO    ] ================================================
[2026-06-05 02:03:52,250.250 INFO    ] Launching Daemon at Fri Jun  5 02:03:52 IST 2026
[2026-06-05 02:03:52,262.262 INFO    ] ================================================
[2026-06-05 02:03:52,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:03:52
[2026-06-05 02:03:53,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:03:53,722.722 INFO    ] Initializing speech engine...
[2026-06-05 02:03:53,730.730 INFO    ] 2026-06-05 02:03:53
[2026-06-05 02:03:53,980.980 INFO    ] 2026-06-05 02:03:53
[2026-06-05 02:03:54,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:03:54,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:03:54,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:03:54,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:03:54,459.459 INFO    ] time= 05/06/2026 02:03:54
[2026-06-05 02:03:54,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:03:54,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:03:54,597.597 INFO    ] No existing commands found in stream
[2026-06-05 02:03:59,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:03:59,612.612 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 02:04:00,561.561 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:04:00,564.564 INFO    ] Checking for system updates...
[2026-06-05 02:04:00,600.600 INFO    ] 200
[2026-06-05 02:04:00,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:00,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:04:00,665.665 INFO    ] No update needed
[2026-06-05 02:04:00,668.668 INFO    ] Checking for camera pi updates...
[2026-06-05 02:04:00,706.706 INFO    ] 200
[2026-06-05 02:04:00,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:00,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:04:00,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:04:00,799.799 INFO    ] No camera update needed
[2026-06-05 02:04:00,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:04:00,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:04:00,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:04:00,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:04:02,876.876 INFO    ] ================================================
[2026-06-05 02:04:02,896.896 INFO    ] Launching Daemon at Fri Jun  5 02:04:02 IST 2026
[2026-06-05 02:04:02,913.913 INFO    ] ================================================
[2026-06-05 02:04:03,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:04:03
[2026-06-05 02:04:04,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:04:04,567.567 INFO    ] Initializing speech engine...
[2026-06-05 02:04:04,574.574 INFO    ] 2026-06-05 02:04:04
[2026-06-05 02:04:04,863.863 INFO    ] 2026-06-05 02:04:04
[2026-06-05 02:04:04,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:04:05,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:04:05,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:04:05,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:04:05,340.340 INFO    ] time= 05/06/2026 02:04:05
[2026-06-05 02:04:05,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:04:05,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:04:05,474.474 INFO    ] No existing commands found in stream
[2026-06-05 02:04:10,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:04:10,491.491 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 02:04:13,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:04:13,130.130 INFO    ] Checking for system updates...
[2026-06-05 02:04:13,171.171 INFO    ] 200
[2026-06-05 02:04:13,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:13,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:04:13,232.232 INFO    ] No update needed
[2026-06-05 02:04:13,235.235 INFO    ] Checking for camera pi updates...
[2026-06-05 02:04:13,270.270 INFO    ] 200
[2026-06-05 02:04:13,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:13,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:04:13,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:04:13,363.363 INFO    ] No camera update needed
[2026-06-05 02:04:13,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:04:13,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:04:13,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:04:13,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:04:15,420.420 INFO    ] ================================================
[2026-06-05 02:04:15,437.437 INFO    ] Launching Daemon at Fri Jun  5 02:04:15 IST 2026
[2026-06-05 02:04:15,448.448 INFO    ] ================================================
[2026-06-05 02:04:16,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:04:16
[2026-06-05 02:04:16,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:04:16,908.908 INFO    ] Initializing speech engine...
[2026-06-05 02:04:16,917.917 INFO    ] 2026-06-05 02:04:16
[2026-06-05 02:04:17,168.168 INFO    ] 2026-06-05 02:04:17
[2026-06-05 02:04:17,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:04:17,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:04:17,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:04:17,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:04:17,539.539 INFO    ] time= 05/06/2026 02:04:17
[2026-06-05 02:04:17,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:04:17,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:04:17,617.617 INFO    ] No existing commands found in stream
[2026-06-05 02:04:22,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:04:22,650.650 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 02:04:24,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:04:24,053.053 INFO    ] Checking for system updates...
[2026-06-05 02:04:24,090.090 INFO    ] 200
[2026-06-05 02:04:24,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:24,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:04:24,147.147 INFO    ] No update needed
[2026-06-05 02:04:24,150.150 INFO    ] Checking for camera pi updates...
[2026-06-05 02:04:24,183.183 INFO    ] 200
[2026-06-05 02:04:24,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:24,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:04:24,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:04:24,283.283 INFO    ] No camera update needed
[2026-06-05 02:04:24,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:04:24,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:04:24,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:04:24,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:04:26,339.339 INFO    ] ================================================
[2026-06-05 02:04:26,354.354 INFO    ] Launching Daemon at Fri Jun  5 02:04:26 IST 2026
[2026-06-05 02:04:26,365.365 INFO    ] ================================================
[2026-06-05 02:04:26,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:04:26
[2026-06-05 02:04:27,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:04:27,790.790 INFO    ] Initializing speech engine...
[2026-06-05 02:04:27,796.796 INFO    ] 2026-06-05 02:04:27
[2026-06-05 02:04:28,096.096 INFO    ] 2026-06-05 02:04:28
[2026-06-05 02:04:28,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:04:28,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:04:28,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:04:28,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:04:28,472.472 INFO    ] time= 05/06/2026 02:04:28
[2026-06-05 02:04:28,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:04:28,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:04:28,596.596 INFO    ] No existing commands found in stream
[2026-06-05 02:04:33,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:04:33,611.611 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-05 02:04:34,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:04:34,381.381 INFO    ] Checking for system updates...
[2026-06-05 02:04:34,420.420 INFO    ] 200
[2026-06-05 02:04:34,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:34,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:04:34,485.485 INFO    ] No update needed
[2026-06-05 02:04:34,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 02:04:34,521.521 INFO    ] 200
[2026-06-05 02:04:34,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:34,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:04:34,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:04:34,618.618 INFO    ] No camera update needed
[2026-06-05 02:04:34,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:04:34,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:04:34,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:04:34,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:04:36,674.674 INFO    ] ================================================
[2026-06-05 02:04:36,689.689 INFO    ] Launching Daemon at Fri Jun  5 02:04:36 IST 2026
[2026-06-05 02:04:36,699.699 INFO    ] ================================================
[2026-06-05 02:04:37,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:04:37
[2026-06-05 02:04:38,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:04:38,303.303 INFO    ] Initializing speech engine...
[2026-06-05 02:04:38,309.309 INFO    ] 2026-06-05 02:04:38
[2026-06-05 02:04:38,592.592 INFO    ] 2026-06-05 02:04:38
[2026-06-05 02:04:38,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:04:38,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:04:38,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:04:39,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:04:39,070.070 INFO    ] time= 05/06/2026 02:04:39
[2026-06-05 02:04:39,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:04:39,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:04:39,276.276 INFO    ] No existing commands found in stream
[2026-06-05 02:04:44,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:04:44,301.301 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 02:04:46,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:04:46,377.377 INFO    ] Checking for system updates...
[2026-06-05 02:04:46,414.414 INFO    ] 200
[2026-06-05 02:04:46,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:46,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:04:46,474.474 INFO    ] No update needed
[2026-06-05 02:04:46,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 02:04:46,511.511 INFO    ] 200
[2026-06-05 02:04:46,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:46,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:04:46,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:04:46,604.604 INFO    ] No camera update needed
[2026-06-05 02:04:46,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:04:46,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:04:46,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:04:46,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:04:48,663.663 INFO    ] ================================================
[2026-06-05 02:04:48,678.678 INFO    ] Launching Daemon at Fri Jun  5 02:04:48 IST 2026
[2026-06-05 02:04:48,689.689 INFO    ] ================================================
[2026-06-05 02:04:49,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:04:49
[2026-06-05 02:04:50,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:04:50,316.316 INFO    ] Initializing speech engine...
[2026-06-05 02:04:50,332.332 INFO    ] 2026-06-05 02:04:50
[2026-06-05 02:04:50,618.618 INFO    ] 2026-06-05 02:04:50
[2026-06-05 02:04:50,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:04:50,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:04:50,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:04:51,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:04:51,149.149 INFO    ] time= 05/06/2026 02:04:51
[2026-06-05 02:04:51,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:04:51,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:04:51,308.308 INFO    ] No existing commands found in stream
[2026-06-05 02:04:56,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:04:56,336.336 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 02:04:57,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:04:57,382.382 INFO    ] Checking for system updates...
[2026-06-05 02:04:57,423.423 INFO    ] 200
[2026-06-05 02:04:57,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:57,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:04:57,483.483 INFO    ] No update needed
[2026-06-05 02:04:57,486.486 INFO    ] Checking for camera pi updates...
[2026-06-05 02:04:57,521.521 INFO    ] 200
[2026-06-05 02:04:57,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:04:57,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:04:57,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:04:57,716.716 INFO    ] No camera update needed
[2026-06-05 02:04:57,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:04:57,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:04:57,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:04:57,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:04:59,773.773 INFO    ] ================================================
[2026-06-05 02:04:59,789.789 INFO    ] Launching Daemon at Fri Jun  5 02:04:59 IST 2026
[2026-06-05 02:04:59,800.800 INFO    ] ================================================
[2026-06-05 02:05:00,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:05:00
[2026-06-05 02:05:00,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:05:01,213.213 INFO    ] Initializing speech engine...
[2026-06-05 02:05:01,236.236 INFO    ] 2026-06-05 02:05:01
[2026-06-05 02:05:01,511.511 INFO    ] 2026-06-05 02:05:01
[2026-06-05 02:05:01,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:05:01,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:05:01,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:05:01,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:05:01,922.922 INFO    ] time= 05/06/2026 02:05:01
[2026-06-05 02:05:01,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:05:01,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:05:02,012.012 INFO    ] No existing commands found in stream
[2026-06-05 02:05:07,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:05:07,025.025 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 02:05:08,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:05:08,022.022 INFO    ] Checking for system updates...
[2026-06-05 02:05:08,058.058 INFO    ] 200
[2026-06-05 02:05:08,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:08,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:05:08,116.116 INFO    ] No update needed
[2026-06-05 02:05:08,118.118 INFO    ] Checking for camera pi updates...
[2026-06-05 02:05:08,152.152 INFO    ] 200
[2026-06-05 02:05:08,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:08,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:05:08,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:05:08,256.256 INFO    ] No camera update needed
[2026-06-05 02:05:08,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:05:08,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:05:08,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:05:08,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:05:10,313.313 INFO    ] ================================================
[2026-06-05 02:05:10,328.328 INFO    ] Launching Daemon at Fri Jun  5 02:05:10 IST 2026
[2026-06-05 02:05:10,339.339 INFO    ] ================================================
[2026-06-05 02:05:10,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:05:10
[2026-06-05 02:05:11,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:05:11,962.962 INFO    ] Initializing speech engine...
[2026-06-05 02:05:11,969.969 INFO    ] 2026-06-05 02:05:11
[2026-06-05 02:05:12,261.261 INFO    ] 2026-06-05 02:05:12
[2026-06-05 02:05:12,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:05:12,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:05:12,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:05:12,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:05:12,700.700 INFO    ] time= 05/06/2026 02:05:12
[2026-06-05 02:05:12,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:05:12,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:05:12,893.893 INFO    ] No existing commands found in stream
[2026-06-05 02:05:17,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:05:17,934.934 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 02:05:21,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:05:21,029.029 INFO    ] Checking for system updates...
[2026-06-05 02:05:21,066.066 INFO    ] 200
[2026-06-05 02:05:21,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:21,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:05:21,133.133 INFO    ] No update needed
[2026-06-05 02:05:21,136.136 INFO    ] Checking for camera pi updates...
[2026-06-05 02:05:21,171.171 INFO    ] 200
[2026-06-05 02:05:21,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:21,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:05:21,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:05:21,265.265 INFO    ] No camera update needed
[2026-06-05 02:05:21,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:05:21,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:05:21,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:05:21,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:05:23,325.325 INFO    ] ================================================
[2026-06-05 02:05:23,340.340 INFO    ] Launching Daemon at Fri Jun  5 02:05:23 IST 2026
[2026-06-05 02:05:23,351.351 INFO    ] ================================================
[2026-06-05 02:05:23,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:05:23
[2026-06-05 02:05:24,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:05:24,815.815 INFO    ] Initializing speech engine...
[2026-06-05 02:05:24,823.823 INFO    ] 2026-06-05 02:05:24
[2026-06-05 02:05:25,083.083 INFO    ] 2026-06-05 02:05:25
[2026-06-05 02:05:25,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:05:25,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:05:25,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:05:25,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:05:25,551.551 INFO    ] time= 05/06/2026 02:05:25
[2026-06-05 02:05:25,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:05:25,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:05:25,730.730 INFO    ] No existing commands found in stream
[2026-06-05 02:05:30,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:05:30,765.765 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 02:05:32,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:05:32,990.990 INFO    ] Checking for system updates...
[2026-06-05 02:05:33,036.036 INFO    ] 200
[2026-06-05 02:05:33,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:33,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:05:33,105.105 INFO    ] No update needed
[2026-06-05 02:05:33,108.108 INFO    ] Checking for camera pi updates...
[2026-06-05 02:05:33,149.149 INFO    ] 200
[2026-06-05 02:05:33,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:33,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:05:33,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:05:33,247.247 INFO    ] No camera update needed
[2026-06-05 02:05:33,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:05:33,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:05:33,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:05:33,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:05:35,302.302 INFO    ] ================================================
[2026-06-05 02:05:35,317.317 INFO    ] Launching Daemon at Fri Jun  5 02:05:35 IST 2026
[2026-06-05 02:05:35,328.328 INFO    ] ================================================
[2026-06-05 02:05:35,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:05:35
[2026-06-05 02:05:36,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:05:36,864.864 INFO    ] Initializing speech engine...
[2026-06-05 02:05:36,873.873 INFO    ] 2026-06-05 02:05:36
[2026-06-05 02:05:37,167.167 INFO    ] 2026-06-05 02:05:37
[2026-06-05 02:05:37,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:05:37,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:05:37,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:05:37,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:05:37,587.587 INFO    ] time= 05/06/2026 02:05:37
[2026-06-05 02:05:37,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:05:37,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:05:37,676.676 INFO    ] No existing commands found in stream
[2026-06-05 02:05:42,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:05:42,691.691 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 02:05:44,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:05:44,274.274 INFO    ] Checking for system updates...
[2026-06-05 02:05:44,309.309 INFO    ] 200
[2026-06-05 02:05:44,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:44,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:05:44,369.369 INFO    ] No update needed
[2026-06-05 02:05:44,371.371 INFO    ] Checking for camera pi updates...
[2026-06-05 02:05:44,405.405 INFO    ] 200
[2026-06-05 02:05:44,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:44,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:05:44,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:05:44,511.511 INFO    ] No camera update needed
[2026-06-05 02:05:44,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:05:44,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:05:44,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:05:44,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:05:46,570.570 INFO    ] ================================================
[2026-06-05 02:05:46,585.585 INFO    ] Launching Daemon at Fri Jun  5 02:05:46 IST 2026
[2026-06-05 02:05:46,596.596 INFO    ] ================================================
[2026-06-05 02:05:47,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:05:47
[2026-06-05 02:05:47,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:05:48,000.000 INFO    ] Initializing speech engine...
[2026-06-05 02:05:48,023.023 INFO    ] 2026-06-05 02:05:48
[2026-06-05 02:05:48,291.291 INFO    ] 2026-06-05 02:05:48
[2026-06-05 02:05:48,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:05:48,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:05:48,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:05:48,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:05:48,782.782 INFO    ] time= 05/06/2026 02:05:48
[2026-06-05 02:05:48,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:05:48,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:05:48,937.937 INFO    ] No existing commands found in stream
[2026-06-05 02:05:53,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:05:53,952.952 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 02:05:54,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:05:54,989.989 INFO    ] Checking for system updates...
[2026-06-05 02:05:55,024.024 INFO    ] 200
[2026-06-05 02:05:55,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:55,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:05:55,083.083 INFO    ] No update needed
[2026-06-05 02:05:55,085.085 INFO    ] Checking for camera pi updates...
[2026-06-05 02:05:55,119.119 INFO    ] 200
[2026-06-05 02:05:55,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:05:55,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:05:55,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:05:55,222.222 INFO    ] No camera update needed
[2026-06-05 02:05:55,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:05:55,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:05:55,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:05:55,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:05:57,281.281 INFO    ] ================================================
[2026-06-05 02:05:57,296.296 INFO    ] Launching Daemon at Fri Jun  5 02:05:57 IST 2026
[2026-06-05 02:05:57,307.307 INFO    ] ================================================
[2026-06-05 02:05:57,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:05:57
[2026-06-05 02:05:58,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:05:58,775.775 INFO    ] Initializing speech engine...
[2026-06-05 02:05:58,785.785 INFO    ] 2026-06-05 02:05:58
[2026-06-05 02:05:59,048.048 INFO    ] 2026-06-05 02:05:59
[2026-06-05 02:05:59,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:05:59,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:05:59,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:05:59,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:05:59,549.549 INFO    ] time= 05/06/2026 02:05:59
[2026-06-05 02:05:59,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:05:59,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:05:59,715.715 INFO    ] No existing commands found in stream
[2026-06-05 02:06:04,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:06:04,740.740 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 02:06:06,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:06:06,537.537 INFO    ] Checking for system updates...
[2026-06-05 02:06:06,582.582 INFO    ] 200
[2026-06-05 02:06:06,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:06,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:06:06,664.664 INFO    ] No update needed
[2026-06-05 02:06:06,667.667 INFO    ] Checking for camera pi updates...
[2026-06-05 02:06:06,702.702 INFO    ] 200
[2026-06-05 02:06:06,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:06,745.745 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:06:06,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:06:06,800.800 INFO    ] No camera update needed
[2026-06-05 02:06:06,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:06:06,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:06:06,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:06:06,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:06:08,857.857 INFO    ] ================================================
[2026-06-05 02:06:08,873.873 INFO    ] Launching Daemon at Fri Jun  5 02:06:08 IST 2026
[2026-06-05 02:06:08,884.884 INFO    ] ================================================
[2026-06-05 02:06:09,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:06:09
[2026-06-05 02:06:10,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:06:10,505.505 INFO    ] Initializing speech engine...
[2026-06-05 02:06:10,513.513 INFO    ] 2026-06-05 02:06:10
[2026-06-05 02:06:10,805.805 INFO    ] 2026-06-05 02:06:10
[2026-06-05 02:06:10,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:06:11,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:06:11,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:06:11,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:06:11,287.287 INFO    ] time= 05/06/2026 02:06:11
[2026-06-05 02:06:11,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:06:11,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:06:11,494.494 INFO    ] No existing commands found in stream
[2026-06-05 02:06:16,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:06:16,531.531 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 02:06:20,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:06:20,399.399 INFO    ] Checking for system updates...
[2026-06-05 02:06:20,436.436 INFO    ] 200
[2026-06-05 02:06:20,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:20,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:06:20,496.496 INFO    ] No update needed
[2026-06-05 02:06:20,499.499 INFO    ] Checking for camera pi updates...
[2026-06-05 02:06:20,533.533 INFO    ] 200
[2026-06-05 02:06:20,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:20,579.579 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:06:20,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:06:20,625.625 INFO    ] No camera update needed
[2026-06-05 02:06:20,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:06:20,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:06:20,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:06:20,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:06:22,687.687 INFO    ] ================================================
[2026-06-05 02:06:22,702.702 INFO    ] Launching Daemon at Fri Jun  5 02:06:22 IST 2026
[2026-06-05 02:06:22,713.713 INFO    ] ================================================
[2026-06-05 02:06:23,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:06:23
[2026-06-05 02:06:23,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:06:24,144.144 INFO    ] Initializing speech engine...
[2026-06-05 02:06:24,163.163 INFO    ] 2026-06-05 02:06:24
[2026-06-05 02:06:24,419.419 INFO    ] 2026-06-05 02:06:24
[2026-06-05 02:06:24,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:06:24,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:06:24,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:06:24,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:06:24,797.797 INFO    ] time= 05/06/2026 02:06:24
[2026-06-05 02:06:24,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:06:24,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:06:24,968.968 INFO    ] No existing commands found in stream
[2026-06-05 02:06:30,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:06:30,007.007 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 02:06:34,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:06:34,123.123 INFO    ] Checking for system updates...
[2026-06-05 02:06:34,159.159 INFO    ] 200
[2026-06-05 02:06:34,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:34,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:06:34,222.222 INFO    ] No update needed
[2026-06-05 02:06:34,224.224 INFO    ] Checking for camera pi updates...
[2026-06-05 02:06:34,258.258 INFO    ] 200
[2026-06-05 02:06:34,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:34,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:06:34,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:06:34,356.356 INFO    ] No camera update needed
[2026-06-05 02:06:34,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:06:34,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:06:34,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:06:34,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:06:36,412.412 INFO    ] ================================================
[2026-06-05 02:06:36,428.428 INFO    ] Launching Daemon at Fri Jun  5 02:06:36 IST 2026
[2026-06-05 02:06:36,438.438 INFO    ] ================================================
[2026-06-05 02:06:37,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:06:37
[2026-06-05 02:06:37,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:06:37,878.878 INFO    ] Initializing speech engine...
[2026-06-05 02:06:37,888.888 INFO    ] 2026-06-05 02:06:37
[2026-06-05 02:06:38,144.144 INFO    ] 2026-06-05 02:06:38
[2026-06-05 02:06:38,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:06:38,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:06:38,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:06:38,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:06:38,632.632 INFO    ] time= 05/06/2026 02:06:38
[2026-06-05 02:06:38,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:06:38,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:06:38,831.831 INFO    ] No existing commands found in stream
[2026-06-05 02:06:43,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:06:43,860.860 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 02:06:46,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:06:46,500.500 INFO    ] Checking for system updates...
[2026-06-05 02:06:46,537.537 INFO    ] 200
[2026-06-05 02:06:46,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:46,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:06:46,601.601 INFO    ] No update needed
[2026-06-05 02:06:46,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 02:06:46,641.641 INFO    ] 200
[2026-06-05 02:06:46,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:46,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:06:46,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:06:46,733.733 INFO    ] No camera update needed
[2026-06-05 02:06:46,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:06:46,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:06:46,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:06:46,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:06:48,792.792 INFO    ] ================================================
[2026-06-05 02:06:48,807.807 INFO    ] Launching Daemon at Fri Jun  5 02:06:48 IST 2026
[2026-06-05 02:06:48,817.817 INFO    ] ================================================
[2026-06-05 02:06:49,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:06:49
[2026-06-05 02:06:49,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:06:50,235.235 INFO    ] Initializing speech engine...
[2026-06-05 02:06:50,241.241 INFO    ] 2026-06-05 02:06:50
[2026-06-05 02:06:50,534.534 INFO    ] 2026-06-05 02:06:50
[2026-06-05 02:06:50,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:06:50,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:06:50,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:06:50,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:06:50,913.913 INFO    ] time= 05/06/2026 02:06:50
[2026-06-05 02:06:50,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:06:50,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:06:51,045.045 INFO    ] No existing commands found in stream
[2026-06-05 02:06:56,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:06:56,068.068 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 02:06:58,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:06:58,507.507 INFO    ] Checking for system updates...
[2026-06-05 02:06:58,547.547 INFO    ] 200
[2026-06-05 02:06:58,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:58,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:06:58,604.604 INFO    ] No update needed
[2026-06-05 02:06:58,607.607 INFO    ] Checking for camera pi updates...
[2026-06-05 02:06:58,645.645 INFO    ] 200
[2026-06-05 02:06:58,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:06:58,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:06:58,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:06:58,836.836 INFO    ] No camera update needed
[2026-06-05 02:06:58,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:06:58,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:06:58,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:06:58,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:07:00,891.891 INFO    ] ================================================
[2026-06-05 02:07:00,908.908 INFO    ] Launching Daemon at Fri Jun  5 02:07:00 IST 2026
[2026-06-05 02:07:00,920.920 INFO    ] ================================================
[2026-06-05 02:07:01,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:07:01
[2026-06-05 02:07:02,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:07:02,664.664 INFO    ] Initializing speech engine...
[2026-06-05 02:07:02,668.668 INFO    ] 2026-06-05 02:07:02
[2026-06-05 02:07:02,974.974 INFO    ] 2026-06-05 02:07:02
[2026-06-05 02:07:03,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:07:03,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:07:03,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:07:03,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:07:03,406.406 INFO    ] time= 05/06/2026 02:07:03
[2026-06-05 02:07:03,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:07:03,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:07:03,612.612 INFO    ] No existing commands found in stream
[2026-06-05 02:07:08,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:07:08,642.642 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 02:07:10,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:07:10,081.081 INFO    ] Checking for system updates...
[2026-06-05 02:07:10,117.117 INFO    ] 200
[2026-06-05 02:07:10,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:10,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:07:10,174.174 INFO    ] No update needed
[2026-06-05 02:07:10,177.177 INFO    ] Checking for camera pi updates...
[2026-06-05 02:07:10,211.211 INFO    ] 200
[2026-06-05 02:07:10,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:10,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:07:10,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:07:10,311.311 INFO    ] No camera update needed
[2026-06-05 02:07:10,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:07:10,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:07:10,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:07:10,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:07:12,366.366 INFO    ] ================================================
[2026-06-05 02:07:12,381.381 INFO    ] Launching Daemon at Fri Jun  5 02:07:12 IST 2026
[2026-06-05 02:07:12,392.392 INFO    ] ================================================
[2026-06-05 02:07:12,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:07:12
[2026-06-05 02:07:13,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:07:13,821.821 INFO    ] Initializing speech engine...
[2026-06-05 02:07:13,844.844 INFO    ] 2026-06-05 02:07:13
[2026-06-05 02:07:14,097.097 INFO    ] 2026-06-05 02:07:14
[2026-06-05 02:07:14,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:07:14,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:07:14,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:07:14,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:07:14,464.464 INFO    ] time= 05/06/2026 02:07:14
[2026-06-05 02:07:14,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:07:14,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:07:14,629.629 INFO    ] No existing commands found in stream
[2026-06-05 02:07:19,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:07:19,657.657 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 02:07:22,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:07:22,311.311 INFO    ] Checking for system updates...
[2026-06-05 02:07:22,348.348 INFO    ] 200
[2026-06-05 02:07:22,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:22,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:07:22,408.408 INFO    ] No update needed
[2026-06-05 02:07:22,411.411 INFO    ] Checking for camera pi updates...
[2026-06-05 02:07:22,450.450 INFO    ] 200
[2026-06-05 02:07:22,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:22,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:07:22,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:07:22,556.556 INFO    ] No camera update needed
[2026-06-05 02:07:22,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:07:22,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:07:22,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:07:22,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:07:24,617.617 INFO    ] ================================================
[2026-06-05 02:07:24,632.632 INFO    ] Launching Daemon at Fri Jun  5 02:07:24 IST 2026
[2026-06-05 02:07:24,643.643 INFO    ] ================================================
[2026-06-05 02:07:25,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:07:25
[2026-06-05 02:07:25,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:07:26,058.058 INFO    ] Initializing speech engine...
[2026-06-05 02:07:26,071.071 INFO    ] 2026-06-05 02:07:26
[2026-06-05 02:07:26,338.338 INFO    ] 2026-06-05 02:07:26
[2026-06-05 02:07:26,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:07:26,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:07:26,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:07:26,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:07:26,695.695 INFO    ] time= 05/06/2026 02:07:26
[2026-06-05 02:07:26,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:07:26,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:07:26,793.793 INFO    ] No existing commands found in stream
[2026-06-05 02:07:31,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:07:31,809.809 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 02:07:33,628.628 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:07:33,630.630 INFO    ] Checking for system updates...
[2026-06-05 02:07:33,666.666 INFO    ] 200
[2026-06-05 02:07:33,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:33,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:07:33,723.723 INFO    ] No update needed
[2026-06-05 02:07:33,726.726 INFO    ] Checking for camera pi updates...
[2026-06-05 02:07:33,759.759 INFO    ] 200
[2026-06-05 02:07:33,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:33,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:07:33,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:07:33,850.850 INFO    ] No camera update needed
[2026-06-05 02:07:33,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:07:33,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:07:33,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:07:33,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:07:35,904.904 INFO    ] ================================================
[2026-06-05 02:07:35,920.920 INFO    ] Launching Daemon at Fri Jun  5 02:07:35 IST 2026
[2026-06-05 02:07:35,930.930 INFO    ] ================================================
[2026-06-05 02:07:36,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:07:36
[2026-06-05 02:07:37,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:07:37,352.352 INFO    ] Initializing speech engine...
[2026-06-05 02:07:37,360.360 INFO    ] 2026-06-05 02:07:37
[2026-06-05 02:07:37,611.611 INFO    ] 2026-06-05 02:07:37
[2026-06-05 02:07:37,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:07:37,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:07:37,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:07:37,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:07:37,988.988 INFO    ] time= 05/06/2026 02:07:37
[2026-06-05 02:07:37,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:07:38,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:07:38,150.150 INFO    ] No existing commands found in stream
[2026-06-05 02:07:43,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:07:43,178.178 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 02:07:44,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:07:44,980.980 INFO    ] Checking for system updates...
[2026-06-05 02:07:45,016.016 INFO    ] 200
[2026-06-05 02:07:45,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:45,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:07:45,073.073 INFO    ] No update needed
[2026-06-05 02:07:45,076.076 INFO    ] Checking for camera pi updates...
[2026-06-05 02:07:45,109.109 INFO    ] 200
[2026-06-05 02:07:45,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:45,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:07:45,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:07:45,205.205 INFO    ] No camera update needed
[2026-06-05 02:07:45,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:07:45,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:07:45,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:07:45,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:07:47,259.259 INFO    ] ================================================
[2026-06-05 02:07:47,274.274 INFO    ] Launching Daemon at Fri Jun  5 02:07:47 IST 2026
[2026-06-05 02:07:47,285.285 INFO    ] ================================================
[2026-06-05 02:07:47,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:07:47
[2026-06-05 02:07:48,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:07:48,727.727 INFO    ] Initializing speech engine...
[2026-06-05 02:07:48,736.736 INFO    ] 2026-06-05 02:07:48
[2026-06-05 02:07:49,027.027 INFO    ] 2026-06-05 02:07:49
[2026-06-05 02:07:49,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:07:49,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:07:49,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:07:49,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:07:49,517.517 INFO    ] time= 05/06/2026 02:07:49
[2026-06-05 02:07:49,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:07:49,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:07:49,732.732 INFO    ] No existing commands found in stream
[2026-06-05 02:07:54,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:07:54,766.766 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 02:07:58,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:07:58,336.336 INFO    ] Checking for system updates...
[2026-06-05 02:07:58,377.377 INFO    ] 200
[2026-06-05 02:07:58,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:58,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:07:58,437.437 INFO    ] No update needed
[2026-06-05 02:07:58,440.440 INFO    ] Checking for camera pi updates...
[2026-06-05 02:07:58,475.475 INFO    ] 200
[2026-06-05 02:07:58,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:07:58,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:07:58,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:07:58,578.578 INFO    ] No camera update needed
[2026-06-05 02:07:58,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:07:58,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:07:58,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:07:58,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:08:00,637.637 INFO    ] ================================================
[2026-06-05 02:08:00,652.652 INFO    ] Launching Daemon at Fri Jun  5 02:08:00 IST 2026
[2026-06-05 02:08:00,662.662 INFO    ] ================================================
[2026-06-05 02:08:01,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:08:01
[2026-06-05 02:08:01,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:08:02,381.381 INFO    ] Initializing speech engine...
[2026-06-05 02:08:02,395.395 INFO    ] 2026-06-05 02:08:02
[2026-06-05 02:08:02,743.743 INFO    ] 2026-06-05 02:08:02
[2026-06-05 02:08:02,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:08:02,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:08:03,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:08:03,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:08:03,255.255 INFO    ] time= 05/06/2026 02:08:03
[2026-06-05 02:08:03,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:08:03,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:08:03,420.420 INFO    ] No existing commands found in stream
[2026-06-05 02:08:08,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:08:08,455.455 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 02:08:08,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:08:08,939.939 INFO    ] Checking for system updates...
[2026-06-05 02:08:08,976.976 INFO    ] 200
[2026-06-05 02:08:08,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:09,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:08:09,033.033 INFO    ] No update needed
[2026-06-05 02:08:09,036.036 INFO    ] Checking for camera pi updates...
[2026-06-05 02:08:09,073.073 INFO    ] 200
[2026-06-05 02:08:09,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:09,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:08:09,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:08:09,167.167 INFO    ] No camera update needed
[2026-06-05 02:08:09,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:08:09,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:08:09,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:08:09,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:08:11,221.221 INFO    ] ================================================
[2026-06-05 02:08:11,237.237 INFO    ] Launching Daemon at Fri Jun  5 02:08:11 IST 2026
[2026-06-05 02:08:11,253.253 INFO    ] ================================================
[2026-06-05 02:08:11,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:08:11
[2026-06-05 02:08:12,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:08:12,670.670 INFO    ] Initializing speech engine...
[2026-06-05 02:08:12,676.676 INFO    ] 2026-06-05 02:08:12
[2026-06-05 02:08:12,968.968 INFO    ] 2026-06-05 02:08:12
[2026-06-05 02:08:13,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:08:13,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:08:13,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:08:13,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:08:13,342.342 INFO    ] time= 05/06/2026 02:08:13
[2026-06-05 02:08:13,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:08:13,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:08:13,466.466 INFO    ] No existing commands found in stream
[2026-06-05 02:08:18,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:08:18,481.481 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 02:08:21,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:08:21,591.591 INFO    ] Checking for system updates...
[2026-06-05 02:08:21,627.627 INFO    ] 200
[2026-06-05 02:08:21,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:21,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:08:21,686.686 INFO    ] No update needed
[2026-06-05 02:08:21,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 02:08:21,722.722 INFO    ] 200
[2026-06-05 02:08:21,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:21,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:08:21,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:08:21,822.822 INFO    ] No camera update needed
[2026-06-05 02:08:21,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:08:21,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:08:21,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:08:21,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:08:23,878.878 INFO    ] ================================================
[2026-06-05 02:08:23,893.893 INFO    ] Launching Daemon at Fri Jun  5 02:08:23 IST 2026
[2026-06-05 02:08:23,904.904 INFO    ] ================================================
[2026-06-05 02:08:24,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:08:24
[2026-06-05 02:08:25,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:08:25,332.332 INFO    ] Initializing speech engine...
[2026-06-05 02:08:25,352.352 INFO    ] 2026-06-05 02:08:25
[2026-06-05 02:08:25,619.619 INFO    ] 2026-06-05 02:08:25
[2026-06-05 02:08:25,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:08:25,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:08:25,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:08:26,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:08:26,034.034 INFO    ] time= 05/06/2026 02:08:26
[2026-06-05 02:08:26,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:08:26,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:08:26,219.219 INFO    ] No existing commands found in stream
[2026-06-05 02:08:31,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:08:31,247.247 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 02:08:32,697.697 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:08:32,700.700 INFO    ] Checking for system updates...
[2026-06-05 02:08:32,739.739 INFO    ] 200
[2026-06-05 02:08:32,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:32,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:08:32,803.803 INFO    ] No update needed
[2026-06-05 02:08:32,806.806 INFO    ] Checking for camera pi updates...
[2026-06-05 02:08:32,842.842 INFO    ] 200
[2026-06-05 02:08:32,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:32,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:08:32,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:08:32,935.935 INFO    ] No camera update needed
[2026-06-05 02:08:32,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:08:32,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:08:32,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:08:32,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:08:34,994.994 INFO    ] ================================================
[2026-06-05 02:08:35,009.009 INFO    ] Launching Daemon at Fri Jun  5 02:08:35 IST 2026
[2026-06-05 02:08:35,020.020 INFO    ] ================================================
[2026-06-05 02:08:35,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:08:35
[2026-06-05 02:08:36,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:08:36,604.604 INFO    ] Initializing speech engine...
[2026-06-05 02:08:36,612.612 INFO    ] 2026-06-05 02:08:36
[2026-06-05 02:08:36,883.883 INFO    ] 2026-06-05 02:08:36
[2026-06-05 02:08:36,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:08:37,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:08:37,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:08:37,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:08:37,330.330 INFO    ] time= 05/06/2026 02:08:37
[2026-06-05 02:08:37,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:08:37,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:08:37,549.549 INFO    ] No existing commands found in stream
[2026-06-05 02:08:42,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:08:42,579.579 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 02:08:43,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:08:43,648.648 INFO    ] Checking for system updates...
[2026-06-05 02:08:43,684.684 INFO    ] 200
[2026-06-05 02:08:43,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:43,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:08:43,749.749 INFO    ] No update needed
[2026-06-05 02:08:43,751.751 INFO    ] Checking for camera pi updates...
[2026-06-05 02:08:43,785.785 INFO    ] 200
[2026-06-05 02:08:43,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:43,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:08:43,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:08:43,875.875 INFO    ] No camera update needed
[2026-06-05 02:08:43,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:08:43,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:08:43,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:08:43,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:08:45,930.930 INFO    ] ================================================
[2026-06-05 02:08:45,946.946 INFO    ] Launching Daemon at Fri Jun  5 02:08:45 IST 2026
[2026-06-05 02:08:45,958.958 INFO    ] ================================================
[2026-06-05 02:08:46,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:08:46
[2026-06-05 02:08:47,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:08:47,374.374 INFO    ] Initializing speech engine...
[2026-06-05 02:08:47,383.383 INFO    ] 2026-06-05 02:08:47
[2026-06-05 02:08:47,674.674 INFO    ] 2026-06-05 02:08:47
[2026-06-05 02:08:47,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:08:47,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:08:47,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:08:48,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:08:48,049.049 INFO    ] time= 05/06/2026 02:08:48
[2026-06-05 02:08:48,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:08:48,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:08:48,176.176 INFO    ] No existing commands found in stream
[2026-06-05 02:08:53,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:08:53,191.191 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 02:08:55,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:08:55,679.679 INFO    ] Checking for system updates...
[2026-06-05 02:08:55,718.718 INFO    ] 200
[2026-06-05 02:08:55,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:55,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:08:55,781.781 INFO    ] No update needed
[2026-06-05 02:08:55,783.783 INFO    ] Checking for camera pi updates...
[2026-06-05 02:08:55,817.817 INFO    ] 200
[2026-06-05 02:08:55,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:08:55,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:08:55,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:08:55,914.914 INFO    ] No camera update needed
[2026-06-05 02:08:55,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:08:55,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:08:55,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:08:55,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:08:57,972.972 INFO    ] ================================================
[2026-06-05 02:08:57,988.988 INFO    ] Launching Daemon at Fri Jun  5 02:08:57 IST 2026
[2026-06-05 02:08:58,000.000 INFO    ] ================================================
[2026-06-05 02:08:58,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:08:58
[2026-06-05 02:08:59,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:08:59,608.608 INFO    ] Initializing speech engine...
[2026-06-05 02:08:59,622.622 INFO    ] 2026-06-05 02:08:59
[2026-06-05 02:08:59,898.898 INFO    ] 2026-06-05 02:08:59
[2026-06-05 02:08:59,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:09:00,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:09:00,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:09:00,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:09:00,360.360 INFO    ] time= 05/06/2026 02:09:00
[2026-06-05 02:09:00,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:09:00,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:09:00,501.501 INFO    ] No existing commands found in stream
[2026-06-05 02:09:05,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:09:05,517.517 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 02:09:05,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:09:05,977.977 INFO    ] Checking for system updates...
[2026-06-05 02:09:06,015.015 INFO    ] 200
[2026-06-05 02:09:06,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:06,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:09:06,074.074 INFO    ] No update needed
[2026-06-05 02:09:06,077.077 INFO    ] Checking for camera pi updates...
[2026-06-05 02:09:06,112.112 INFO    ] 200
[2026-06-05 02:09:06,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:06,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:09:06,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:09:06,216.216 INFO    ] No camera update needed
[2026-06-05 02:09:06,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:09:06,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:09:06,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:09:06,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:09:08,282.282 INFO    ] ================================================
[2026-06-05 02:09:08,299.299 INFO    ] Launching Daemon at Fri Jun  5 02:09:08 IST 2026
[2026-06-05 02:09:08,310.310 INFO    ] ================================================
[2026-06-05 02:09:08,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:09:08
[2026-06-05 02:09:09,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:09:09,775.775 INFO    ] Initializing speech engine...
[2026-06-05 02:09:09,782.782 INFO    ] 2026-06-05 02:09:09
[2026-06-05 02:09:10,043.043 INFO    ] 2026-06-05 02:09:10
[2026-06-05 02:09:10,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:09:10,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:09:10,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:09:10,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:09:10,503.503 INFO    ] time= 05/06/2026 02:09:10
[2026-06-05 02:09:10,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:09:10,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:09:10,655.655 INFO    ] No existing commands found in stream
[2026-06-05 02:09:15,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:09:15,674.674 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 02:09:16,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:09:16,268.268 INFO    ] Checking for system updates...
[2026-06-05 02:09:16,304.304 INFO    ] 200
[2026-06-05 02:09:16,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:16,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:09:16,362.362 INFO    ] No update needed
[2026-06-05 02:09:16,364.364 INFO    ] Checking for camera pi updates...
[2026-06-05 02:09:16,399.399 INFO    ] 200
[2026-06-05 02:09:16,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:16,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:09:16,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:09:16,495.495 INFO    ] No camera update needed
[2026-06-05 02:09:16,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:09:16,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:09:16,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:09:16,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:09:18,552.552 INFO    ] ================================================
[2026-06-05 02:09:18,567.567 INFO    ] Launching Daemon at Fri Jun  5 02:09:18 IST 2026
[2026-06-05 02:09:18,579.579 INFO    ] ================================================
[2026-06-05 02:09:19,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:09:19
[2026-06-05 02:09:19,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:09:20,021.021 INFO    ] Initializing speech engine...
[2026-06-05 02:09:20,044.044 INFO    ] 2026-06-05 02:09:20
[2026-06-05 02:09:20,318.318 INFO    ] 2026-06-05 02:09:20
[2026-06-05 02:09:20,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:09:20,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:09:20,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:09:20,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:09:20,717.717 INFO    ] time= 05/06/2026 02:09:20
[2026-06-05 02:09:20,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:09:20,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:09:20,826.826 INFO    ] No existing commands found in stream
[2026-06-05 02:09:25,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:09:25,841.841 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 02:09:29,096.096 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:09:29,099.099 INFO    ] Checking for system updates...
[2026-06-05 02:09:29,135.135 INFO    ] 200
[2026-06-05 02:09:29,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:29,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:09:29,193.193 INFO    ] No update needed
[2026-06-05 02:09:29,195.195 INFO    ] Checking for camera pi updates...
[2026-06-05 02:09:29,230.230 INFO    ] 200
[2026-06-05 02:09:29,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:29,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:09:29,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:09:29,321.321 INFO    ] No camera update needed
[2026-06-05 02:09:29,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:09:29,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:09:29,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:09:29,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:09:31,377.377 INFO    ] ================================================
[2026-06-05 02:09:31,394.394 INFO    ] Launching Daemon at Fri Jun  5 02:09:31 IST 2026
[2026-06-05 02:09:31,405.405 INFO    ] ================================================
[2026-06-05 02:09:31,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:09:31
[2026-06-05 02:09:32,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:09:32,884.884 INFO    ] Initializing speech engine...
[2026-06-05 02:09:32,900.900 INFO    ] 2026-06-05 02:09:32
[2026-06-05 02:09:33,188.188 INFO    ] 2026-06-05 02:09:33
[2026-06-05 02:09:33,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:09:33,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:09:33,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:09:33,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:09:33,590.590 INFO    ] time= 05/06/2026 02:09:33
[2026-06-05 02:09:33,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:09:33,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:09:33,719.719 INFO    ] No existing commands found in stream
[2026-06-05 02:09:38,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:09:38,733.733 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 02:09:42,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:09:42,568.568 INFO    ] Checking for system updates...
[2026-06-05 02:09:42,604.604 INFO    ] 200
[2026-06-05 02:09:42,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:42,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:09:42,662.662 INFO    ] No update needed
[2026-06-05 02:09:42,665.665 INFO    ] Checking for camera pi updates...
[2026-06-05 02:09:42,699.699 INFO    ] 200
[2026-06-05 02:09:42,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:42,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:09:42,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:09:42,798.798 INFO    ] No camera update needed
[2026-06-05 02:09:42,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:09:42,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:09:42,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:09:42,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:09:44,855.855 INFO    ] ================================================
[2026-06-05 02:09:44,871.871 INFO    ] Launching Daemon at Fri Jun  5 02:09:44 IST 2026
[2026-06-05 02:09:44,883.883 INFO    ] ================================================
[2026-06-05 02:09:45,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:09:45
[2026-06-05 02:09:46,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:09:46,344.344 INFO    ] Initializing speech engine...
[2026-06-05 02:09:46,353.353 INFO    ] 2026-06-05 02:09:46
[2026-06-05 02:09:46,612.612 INFO    ] 2026-06-05 02:09:46
[2026-06-05 02:09:46,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:09:46,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:09:46,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:09:47,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:09:47,071.071 INFO    ] time= 05/06/2026 02:09:47
[2026-06-05 02:09:47,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:09:47,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:09:47,220.220 INFO    ] No existing commands found in stream
[2026-06-05 02:09:52,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:09:52,234.234 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 02:09:53,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:09:53,015.015 INFO    ] Checking for system updates...
[2026-06-05 02:09:53,051.051 INFO    ] 200
[2026-06-05 02:09:53,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:53,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:09:53,116.116 INFO    ] No update needed
[2026-06-05 02:09:53,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 02:09:53,157.157 INFO    ] 200
[2026-06-05 02:09:53,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:09:53,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:09:53,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:09:53,261.261 INFO    ] No camera update needed
[2026-06-05 02:09:53,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:09:53,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:09:53,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:09:53,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:09:55,318.318 INFO    ] ================================================
[2026-06-05 02:09:55,334.334 INFO    ] Launching Daemon at Fri Jun  5 02:09:55 IST 2026
[2026-06-05 02:09:55,345.345 INFO    ] ================================================
[2026-06-05 02:09:56,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:09:56
[2026-06-05 02:09:56,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:09:56,931.931 INFO    ] Initializing speech engine...
[2026-06-05 02:09:56,942.942 INFO    ] 2026-06-05 02:09:56
[2026-06-05 02:09:57,207.207 INFO    ] 2026-06-05 02:09:57
[2026-06-05 02:09:57,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:09:57,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:09:57,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:09:57,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:09:57,662.662 INFO    ] time= 05/06/2026 02:09:57
[2026-06-05 02:09:57,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:09:57,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:09:57,801.801 INFO    ] No existing commands found in stream
[2026-06-05 02:10:02,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:10:02,816.816 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 02:10:08,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:10:08,585.585 INFO    ] Checking for system updates...
[2026-06-05 02:10:08,622.622 INFO    ] 200
[2026-06-05 02:10:08,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:08,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:10:08,685.685 INFO    ] No update needed
[2026-06-05 02:10:08,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 02:10:08,722.722 INFO    ] 200
[2026-06-05 02:10:08,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:08,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:10:08,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:10:08,819.819 INFO    ] No camera update needed
[2026-06-05 02:10:08,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:10:08,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:10:08,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:10:08,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:10:10,876.876 INFO    ] ================================================
[2026-06-05 02:10:10,891.891 INFO    ] Launching Daemon at Fri Jun  5 02:10:10 IST 2026
[2026-06-05 02:10:10,902.902 INFO    ] ================================================
[2026-06-05 02:10:11,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:10:11
[2026-06-05 02:10:12,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:10:12,373.373 INFO    ] Initializing speech engine...
[2026-06-05 02:10:12,382.382 INFO    ] 2026-06-05 02:10:12
[2026-06-05 02:10:12,644.644 INFO    ] 2026-06-05 02:10:12
[2026-06-05 02:10:12,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:10:12,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:10:12,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:10:13,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:10:13,135.135 INFO    ] time= 05/06/2026 02:10:13
[2026-06-05 02:10:13,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:10:13,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:10:13,262.262 INFO    ] No existing commands found in stream
[2026-06-05 02:10:18,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:10:18,281.281 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 02:10:19,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:10:19,506.506 INFO    ] Checking for system updates...
[2026-06-05 02:10:19,542.542 INFO    ] 200
[2026-06-05 02:10:19,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:19,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:10:19,606.606 INFO    ] No update needed
[2026-06-05 02:10:19,609.609 INFO    ] Checking for camera pi updates...
[2026-06-05 02:10:19,646.646 INFO    ] 200
[2026-06-05 02:10:19,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:19,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:10:19,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:10:19,747.747 INFO    ] No camera update needed
[2026-06-05 02:10:19,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:10:19,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:10:19,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:10:19,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:10:21,803.803 INFO    ] ================================================
[2026-06-05 02:10:21,819.819 INFO    ] Launching Daemon at Fri Jun  5 02:10:21 IST 2026
[2026-06-05 02:10:21,830.830 INFO    ] ================================================
[2026-06-05 02:10:22,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:10:22
[2026-06-05 02:10:23,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:10:23,302.302 INFO    ] Initializing speech engine...
[2026-06-05 02:10:23,311.311 INFO    ] 2026-06-05 02:10:23
[2026-06-05 02:10:23,625.625 INFO    ] 2026-06-05 02:10:23
[2026-06-05 02:10:23,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:10:23,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:10:23,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:10:24,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:10:24,131.131 INFO    ] time= 05/06/2026 02:10:24
[2026-06-05 02:10:24,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:10:24,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:10:24,272.272 INFO    ] No existing commands found in stream
[2026-06-05 02:10:29,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:10:29,302.302 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 02:10:30,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:10:30,033.033 INFO    ] Checking for system updates...
[2026-06-05 02:10:30,069.069 INFO    ] 200
[2026-06-05 02:10:30,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:30,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:10:30,132.132 INFO    ] No update needed
[2026-06-05 02:10:30,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 02:10:30,171.171 INFO    ] 200
[2026-06-05 02:10:30,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:30,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:10:30,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:10:30,265.265 INFO    ] No camera update needed
[2026-06-05 02:10:30,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:10:30,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:10:30,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:10:30,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:10:32,322.322 INFO    ] ================================================
[2026-06-05 02:10:32,338.338 INFO    ] Launching Daemon at Fri Jun  5 02:10:32 IST 2026
[2026-06-05 02:10:32,351.351 INFO    ] ================================================
[2026-06-05 02:10:32,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:10:32
[2026-06-05 02:10:33,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:10:33,843.843 INFO    ] Initializing speech engine...
[2026-06-05 02:10:33,852.852 INFO    ] 2026-06-05 02:10:33
[2026-06-05 02:10:34,111.111 INFO    ] 2026-06-05 02:10:34
[2026-06-05 02:10:34,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:10:34,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:10:34,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:10:34,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:10:34,579.579 INFO    ] time= 05/06/2026 02:10:34
[2026-06-05 02:10:34,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:10:34,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:10:34,715.715 INFO    ] No existing commands found in stream
[2026-06-05 02:10:39,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:10:39,730.730 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 02:10:40,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:10:40,586.586 INFO    ] Checking for system updates...
[2026-06-05 02:10:40,622.622 INFO    ] 200
[2026-06-05 02:10:40,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:40,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:10:40,680.680 INFO    ] No update needed
[2026-06-05 02:10:40,682.682 INFO    ] Checking for camera pi updates...
[2026-06-05 02:10:40,722.722 INFO    ] 200
[2026-06-05 02:10:40,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:40,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:10:40,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:10:40,821.821 INFO    ] No camera update needed
[2026-06-05 02:10:40,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:10:40,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:10:40,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:10:40,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:10:42,878.878 INFO    ] ================================================
[2026-06-05 02:10:42,894.894 INFO    ] Launching Daemon at Fri Jun  5 02:10:42 IST 2026
[2026-06-05 02:10:42,905.905 INFO    ] ================================================
[2026-06-05 02:10:43,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:10:43
[2026-06-05 02:10:44,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:10:44,511.511 INFO    ] Initializing speech engine...
[2026-06-05 02:10:44,520.520 INFO    ] 2026-06-05 02:10:44
[2026-06-05 02:10:44,804.804 INFO    ] 2026-06-05 02:10:44
[2026-06-05 02:10:44,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:10:45,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:10:45,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:10:45,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:10:45,341.341 INFO    ] time= 05/06/2026 02:10:45
[2026-06-05 02:10:45,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:10:45,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:10:45,493.493 INFO    ] No existing commands found in stream
[2026-06-05 02:10:50,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:10:50,510.510 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 02:10:52,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:10:52,339.339 INFO    ] Checking for system updates...
[2026-06-05 02:10:52,375.375 INFO    ] 200
[2026-06-05 02:10:52,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:52,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:10:52,437.437 INFO    ] No update needed
[2026-06-05 02:10:52,440.440 INFO    ] Checking for camera pi updates...
[2026-06-05 02:10:52,476.476 INFO    ] 200
[2026-06-05 02:10:52,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:10:52,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:10:52,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:10:52,571.571 INFO    ] No camera update needed
[2026-06-05 02:10:52,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:10:52,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:10:52,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:10:52,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:10:54,626.626 INFO    ] ================================================
[2026-06-05 02:10:54,642.642 INFO    ] Launching Daemon at Fri Jun  5 02:10:54 IST 2026
[2026-06-05 02:10:54,653.653 INFO    ] ================================================
[2026-06-05 02:10:55,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:10:55
[2026-06-05 02:10:55,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:10:56,061.061 INFO    ] Initializing speech engine...
[2026-06-05 02:10:56,083.083 INFO    ] 2026-06-05 02:10:56
[2026-06-05 02:10:56,334.334 INFO    ] 2026-06-05 02:10:56
[2026-06-05 02:10:56,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:10:56,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:10:56,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:10:56,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:10:56,784.784 INFO    ] time= 05/06/2026 02:10:56
[2026-06-05 02:10:56,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:10:56,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:10:57,041.041 INFO    ] No existing commands found in stream
[2026-06-05 02:11:02,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:11:02,059.059 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 02:11:04,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:11:04,543.543 INFO    ] Checking for system updates...
[2026-06-05 02:11:04,579.579 INFO    ] 200
[2026-06-05 02:11:04,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:04,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:11:04,643.643 INFO    ] No update needed
[2026-06-05 02:11:04,645.645 INFO    ] Checking for camera pi updates...
[2026-06-05 02:11:04,680.680 INFO    ] 200
[2026-06-05 02:11:04,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:04,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:11:04,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:11:04,859.859 INFO    ] No camera update needed
[2026-06-05 02:11:04,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:11:04,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:11:04,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:11:04,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:11:06,924.924 INFO    ] ================================================
[2026-06-05 02:11:06,939.939 INFO    ] Launching Daemon at Fri Jun  5 02:11:06 IST 2026
[2026-06-05 02:11:06,951.951 INFO    ] ================================================
[2026-06-05 02:11:07,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:11:07
[2026-06-05 02:11:08,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:11:08,396.396 INFO    ] Initializing speech engine...
[2026-06-05 02:11:08,412.412 INFO    ] 2026-06-05 02:11:08
[2026-06-05 02:11:08,701.701 INFO    ] 2026-06-05 02:11:08
[2026-06-05 02:11:08,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:11:08,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:11:08,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:11:09,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:11:09,120.120 INFO    ] time= 05/06/2026 02:11:09
[2026-06-05 02:11:09,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:11:09,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:11:09,204.204 INFO    ] No existing commands found in stream
[2026-06-05 02:11:14,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:11:14,220.220 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 02:11:14,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:11:14,836.836 INFO    ] Checking for system updates...
[2026-06-05 02:11:14,871.871 INFO    ] 200
[2026-06-05 02:11:14,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:14,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:11:14,935.935 INFO    ] No update needed
[2026-06-05 02:11:14,937.937 INFO    ] Checking for camera pi updates...
[2026-06-05 02:11:14,974.974 INFO    ] 200
[2026-06-05 02:11:14,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:15,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:11:15,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:11:15,066.066 INFO    ] No camera update needed
[2026-06-05 02:11:15,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:11:15,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:11:15,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:11:15,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:11:17,121.121 INFO    ] ================================================
[2026-06-05 02:11:17,137.137 INFO    ] Launching Daemon at Fri Jun  5 02:11:17 IST 2026
[2026-06-05 02:11:17,148.148 INFO    ] ================================================
[2026-06-05 02:11:17,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:11:17
[2026-06-05 02:11:18,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:11:18,665.665 INFO    ] Initializing speech engine...
[2026-06-05 02:11:18,676.676 INFO    ] 2026-06-05 02:11:18
[2026-06-05 02:11:18,949.949 INFO    ] 2026-06-05 02:11:18
[2026-06-05 02:11:18,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:11:19,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:11:19,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:11:19,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:11:19,430.430 INFO    ] time= 05/06/2026 02:11:19
[2026-06-05 02:11:19,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:11:19,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:11:19,586.586 INFO    ] No existing commands found in stream
[2026-06-05 02:11:24,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:11:24,604.604 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 02:11:26,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:11:26,580.580 INFO    ] Checking for system updates...
[2026-06-05 02:11:26,621.621 INFO    ] 200
[2026-06-05 02:11:26,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:26,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:11:26,687.687 INFO    ] No update needed
[2026-06-05 02:11:26,690.690 INFO    ] Checking for camera pi updates...
[2026-06-05 02:11:26,728.728 INFO    ] 200
[2026-06-05 02:11:26,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:26,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:11:26,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:11:26,826.826 INFO    ] No camera update needed
[2026-06-05 02:11:26,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:11:26,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:11:26,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:11:26,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:11:28,885.885 INFO    ] ================================================
[2026-06-05 02:11:28,901.901 INFO    ] Launching Daemon at Fri Jun  5 02:11:28 IST 2026
[2026-06-05 02:11:28,912.912 INFO    ] ================================================
[2026-06-05 02:11:29,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:11:29
[2026-06-05 02:11:30,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:11:30,356.356 INFO    ] Initializing speech engine...
[2026-06-05 02:11:30,366.366 INFO    ] 2026-06-05 02:11:30
[2026-06-05 02:11:30,623.623 INFO    ] 2026-06-05 02:11:30
[2026-06-05 02:11:30,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:11:30,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:11:30,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:11:31,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:11:31,080.080 INFO    ] time= 05/06/2026 02:11:31
[2026-06-05 02:11:31,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:11:31,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:11:31,252.252 INFO    ] No existing commands found in stream
[2026-06-05 02:11:36,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:11:36,270.270 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 02:11:38,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:11:38,840.840 INFO    ] Checking for system updates...
[2026-06-05 02:11:38,876.876 INFO    ] 200
[2026-06-05 02:11:38,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:38,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:11:38,938.938 INFO    ] No update needed
[2026-06-05 02:11:38,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 02:11:38,979.979 INFO    ] 200
[2026-06-05 02:11:38,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:39,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:11:39,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:11:39,078.078 INFO    ] No camera update needed
[2026-06-05 02:11:39,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:11:39,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:11:39,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:11:39,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:11:41,136.136 INFO    ] ================================================
[2026-06-05 02:11:41,152.152 INFO    ] Launching Daemon at Fri Jun  5 02:11:41 IST 2026
[2026-06-05 02:11:41,164.164 INFO    ] ================================================
[2026-06-05 02:11:41,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:11:41
[2026-06-05 02:11:42,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:11:42,630.630 INFO    ] Initializing speech engine...
[2026-06-05 02:11:42,642.642 INFO    ] 2026-06-05 02:11:42
[2026-06-05 02:11:42,956.956 INFO    ] 2026-06-05 02:11:42
[2026-06-05 02:11:43,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:11:43,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:11:43,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:11:43,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:11:43,481.481 INFO    ] time= 05/06/2026 02:11:43
[2026-06-05 02:11:43,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:11:43,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:11:43,621.621 INFO    ] No existing commands found in stream
[2026-06-05 02:11:48,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:11:48,652.652 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 02:11:50,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:11:50,485.485 INFO    ] Checking for system updates...
[2026-06-05 02:11:50,527.527 INFO    ] 200
[2026-06-05 02:11:50,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:50,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:11:50,589.589 INFO    ] No update needed
[2026-06-05 02:11:50,591.591 INFO    ] Checking for camera pi updates...
[2026-06-05 02:11:50,630.630 INFO    ] 200
[2026-06-05 02:11:50,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:11:50,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:11:50,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:11:50,728.728 INFO    ] No camera update needed
[2026-06-05 02:11:50,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:11:50,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:11:50,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:11:50,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:11:52,783.783 INFO    ] ================================================
[2026-06-05 02:11:52,798.798 INFO    ] Launching Daemon at Fri Jun  5 02:11:52 IST 2026
[2026-06-05 02:11:52,809.809 INFO    ] ================================================
[2026-06-05 02:11:53,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:11:53
[2026-06-05 02:11:53,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:11:54,232.232 INFO    ] Initializing speech engine...
[2026-06-05 02:11:54,256.256 INFO    ] 2026-06-05 02:11:54
[2026-06-05 02:11:54,529.529 INFO    ] 2026-06-05 02:11:54
[2026-06-05 02:11:54,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:11:54,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:11:54,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:11:54,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:11:54,903.903 INFO    ] time= 05/06/2026 02:11:54
[2026-06-05 02:11:54,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:11:54,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:11:55,022.022 INFO    ] No existing commands found in stream
[2026-06-05 02:12:00,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:12:00,043.043 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 02:12:00,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:12:00,553.553 INFO    ] Checking for system updates...
[2026-06-05 02:12:00,589.589 INFO    ] 200
[2026-06-05 02:12:00,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:00,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:12:00,646.646 INFO    ] No update needed
[2026-06-05 02:12:00,648.648 INFO    ] Checking for camera pi updates...
[2026-06-05 02:12:00,682.682 INFO    ] 200
[2026-06-05 02:12:00,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:00,725.725 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:12:00,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:12:00,785.785 INFO    ] No camera update needed
[2026-06-05 02:12:00,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:12:00,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:12:00,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:12:00,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:12:02,843.843 INFO    ] ================================================
[2026-06-05 02:12:02,866.866 INFO    ] Launching Daemon at Fri Jun  5 02:12:02 IST 2026
[2026-06-05 02:12:02,884.884 INFO    ] ================================================
[2026-06-05 02:12:03,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:12:03
[2026-06-05 02:12:04,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:12:04,426.426 INFO    ] Initializing speech engine...
[2026-06-05 02:12:04,435.435 INFO    ] 2026-06-05 02:12:04
[2026-06-05 02:12:04,694.694 INFO    ] 2026-06-05 02:12:04
[2026-06-05 02:12:04,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:12:04,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:12:04,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:12:05,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:12:05,119.119 INFO    ] time= 05/06/2026 02:12:05
[2026-06-05 02:12:05,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:12:05,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:12:05,299.299 INFO    ] No existing commands found in stream
[2026-06-05 02:12:10,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:12:10,314.314 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 02:12:10,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:12:10,822.822 INFO    ] Checking for system updates...
[2026-06-05 02:12:10,859.859 INFO    ] 200
[2026-06-05 02:12:10,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:10,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:12:10,919.919 INFO    ] No update needed
[2026-06-05 02:12:10,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 02:12:10,956.956 INFO    ] 200
[2026-06-05 02:12:10,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:10,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:12:11,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:12:11,061.061 INFO    ] No camera update needed
[2026-06-05 02:12:11,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:12:11,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:12:11,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:12:11,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:12:13,119.119 INFO    ] ================================================
[2026-06-05 02:12:13,134.134 INFO    ] Launching Daemon at Fri Jun  5 02:12:13 IST 2026
[2026-06-05 02:12:13,145.145 INFO    ] ================================================
[2026-06-05 02:12:13,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:12:13
[2026-06-05 02:12:14,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:12:14,749.749 INFO    ] Initializing speech engine...
[2026-06-05 02:12:14,762.762 INFO    ] 2026-06-05 02:12:14
[2026-06-05 02:12:15,040.040 INFO    ] 2026-06-05 02:12:15
[2026-06-05 02:12:15,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:12:15,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:12:15,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:12:15,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:12:15,520.520 INFO    ] time= 05/06/2026 02:12:15
[2026-06-05 02:12:15,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:12:15,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:12:15,649.649 INFO    ] No existing commands found in stream
[2026-06-05 02:12:20,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:12:20,666.666 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 02:12:21,470.470 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:12:21,473.473 INFO    ] Checking for system updates...
[2026-06-05 02:12:21,510.510 INFO    ] 200
[2026-06-05 02:12:21,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:21,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:12:21,568.568 INFO    ] No update needed
[2026-06-05 02:12:21,571.571 INFO    ] Checking for camera pi updates...
[2026-06-05 02:12:21,607.607 INFO    ] 200
[2026-06-05 02:12:21,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:21,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:12:21,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:12:21,708.708 INFO    ] No camera update needed
[2026-06-05 02:12:21,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:12:21,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:12:21,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:12:21,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:12:23,766.766 INFO    ] ================================================
[2026-06-05 02:12:23,781.781 INFO    ] Launching Daemon at Fri Jun  5 02:12:23 IST 2026
[2026-06-05 02:12:23,793.793 INFO    ] ================================================
[2026-06-05 02:12:24,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:12:24
[2026-06-05 02:12:24,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:12:25,270.270 INFO    ] Initializing speech engine...
[2026-06-05 02:12:25,277.277 INFO    ] 2026-06-05 02:12:25
[2026-06-05 02:12:25,537.537 INFO    ] 2026-06-05 02:12:25
[2026-06-05 02:12:25,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:12:25,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:12:25,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:12:25,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:12:25,976.976 INFO    ] time= 05/06/2026 02:12:25
[2026-06-05 02:12:26,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:12:26,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:12:26,144.144 INFO    ] No existing commands found in stream
[2026-06-05 02:12:31,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:12:31,159.159 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 02:12:31,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:12:31,560.560 INFO    ] Checking for system updates...
[2026-06-05 02:12:31,598.598 INFO    ] 200
[2026-06-05 02:12:31,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:31,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:12:31,655.655 INFO    ] No update needed
[2026-06-05 02:12:31,657.657 INFO    ] Checking for camera pi updates...
[2026-06-05 02:12:31,691.691 INFO    ] 200
[2026-06-05 02:12:31,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:31,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:12:31,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:12:31,781.781 INFO    ] No camera update needed
[2026-06-05 02:12:31,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:12:31,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:12:31,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:12:31,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:12:33,840.840 INFO    ] ================================================
[2026-06-05 02:12:33,855.855 INFO    ] Launching Daemon at Fri Jun  5 02:12:33 IST 2026
[2026-06-05 02:12:33,866.866 INFO    ] ================================================
[2026-06-05 02:12:34,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:12:34
[2026-06-05 02:12:35,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:12:35,476.476 INFO    ] Initializing speech engine...
[2026-06-05 02:12:35,485.485 INFO    ] 2026-06-05 02:12:35
[2026-06-05 02:12:35,761.761 INFO    ] 2026-06-05 02:12:35
[2026-06-05 02:12:35,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:12:36,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:12:36,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:12:36,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:12:36,238.238 INFO    ] time= 05/06/2026 02:12:36
[2026-06-05 02:12:36,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:12:36,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:12:36,400.400 INFO    ] No existing commands found in stream
[2026-06-05 02:12:41,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:12:41,418.418 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 02:12:45,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:12:45,495.495 INFO    ] Checking for system updates...
[2026-06-05 02:12:45,532.532 INFO    ] 200
[2026-06-05 02:12:45,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:45,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:12:45,593.593 INFO    ] No update needed
[2026-06-05 02:12:45,596.596 INFO    ] Checking for camera pi updates...
[2026-06-05 02:12:45,631.631 INFO    ] 200
[2026-06-05 02:12:45,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:45,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:12:45,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:12:45,726.726 INFO    ] No camera update needed
[2026-06-05 02:12:45,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:12:45,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:12:45,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:12:45,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:12:47,784.784 INFO    ] ================================================
[2026-06-05 02:12:47,799.799 INFO    ] Launching Daemon at Fri Jun  5 02:12:47 IST 2026
[2026-06-05 02:12:47,810.810 INFO    ] ================================================
[2026-06-05 02:12:48,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:12:48
[2026-06-05 02:12:48,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:12:49,264.264 INFO    ] Initializing speech engine...
[2026-06-05 02:12:49,273.273 INFO    ] 2026-06-05 02:12:49
[2026-06-05 02:12:49,529.529 INFO    ] 2026-06-05 02:12:49
[2026-06-05 02:12:49,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:12:49,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:12:49,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:12:49,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:12:50,018.018 INFO    ] time= 05/06/2026 02:12:49
[2026-06-05 02:12:50,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:12:50,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:12:50,150.150 INFO    ] No existing commands found in stream
[2026-06-05 02:12:55,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:12:55,165.165 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 02:12:57,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:12:57,076.076 INFO    ] Checking for system updates...
[2026-06-05 02:12:57,111.111 INFO    ] 200
[2026-06-05 02:12:57,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:57,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:12:57,170.170 INFO    ] No update needed
[2026-06-05 02:12:57,173.173 INFO    ] Checking for camera pi updates...
[2026-06-05 02:12:57,208.208 INFO    ] 200
[2026-06-05 02:12:57,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:12:57,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:12:57,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:12:57,315.315 INFO    ] No camera update needed
[2026-06-05 02:12:57,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:12:57,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:12:57,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:12:57,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:12:59,372.372 INFO    ] ================================================
[2026-06-05 02:12:59,388.388 INFO    ] Launching Daemon at Fri Jun  5 02:12:59 IST 2026
[2026-06-05 02:12:59,399.399 INFO    ] ================================================
[2026-06-05 02:12:59,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:12:59
[2026-06-05 02:13:00,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:13:00,801.801 INFO    ] Initializing speech engine...
[2026-06-05 02:13:00,809.809 INFO    ] 2026-06-05 02:13:00
[2026-06-05 02:13:01,084.084 INFO    ] 2026-06-05 02:13:01
[2026-06-05 02:13:01,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:13:01,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:13:01,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:13:01,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:13:01,457.457 INFO    ] time= 05/06/2026 02:13:01
[2026-06-05 02:13:01,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:13:01,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:13:01,537.537 INFO    ] No existing commands found in stream
[2026-06-05 02:13:06,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:13:06,553.553 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 02:13:07,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:13:07,950.950 INFO    ] Checking for system updates...
[2026-06-05 02:13:07,986.986 INFO    ] 200
[2026-06-05 02:13:07,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:08,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:13:08,043.043 INFO    ] No update needed
[2026-06-05 02:13:08,046.046 INFO    ] Checking for camera pi updates...
[2026-06-05 02:13:08,084.084 INFO    ] 200
[2026-06-05 02:13:08,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:08,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:13:08,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:13:08,283.283 INFO    ] No camera update needed
[2026-06-05 02:13:08,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:13:08,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:13:08,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:13:08,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:13:10,339.339 INFO    ] ================================================
[2026-06-05 02:13:10,354.354 INFO    ] Launching Daemon at Fri Jun  5 02:13:10 IST 2026
[2026-06-05 02:13:10,365.365 INFO    ] ================================================
[2026-06-05 02:13:11,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:13:10
[2026-06-05 02:13:11,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:13:11,959.959 INFO    ] Initializing speech engine...
[2026-06-05 02:13:11,968.968 INFO    ] 2026-06-05 02:13:11
[2026-06-05 02:13:12,244.244 INFO    ] 2026-06-05 02:13:12
[2026-06-05 02:13:12,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:13:12,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:13:12,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:13:12,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:13:12,680.680 INFO    ] time= 05/06/2026 02:13:12
[2026-06-05 02:13:12,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:13:12,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:13:12,934.934 INFO    ] No existing commands found in stream
[2026-06-05 02:13:17,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:13:17,972.972 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 02:13:21,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:13:21,889.889 INFO    ] Checking for system updates...
[2026-06-05 02:13:21,926.926 INFO    ] 200
[2026-06-05 02:13:21,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:21,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:13:21,985.985 INFO    ] No update needed
[2026-06-05 02:13:21,988.988 INFO    ] Checking for camera pi updates...
[2026-06-05 02:13:22,027.027 INFO    ] 200
[2026-06-05 02:13:22,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:22,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:13:22,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:13:22,126.126 INFO    ] No camera update needed
[2026-06-05 02:13:22,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:13:22,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:13:22,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:13:22,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:13:24,185.185 INFO    ] ================================================
[2026-06-05 02:13:24,200.200 INFO    ] Launching Daemon at Fri Jun  5 02:13:24 IST 2026
[2026-06-05 02:13:24,212.212 INFO    ] ================================================
[2026-06-05 02:13:24,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:13:24
[2026-06-05 02:13:25,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:13:25,631.631 INFO    ] Initializing speech engine...
[2026-06-05 02:13:25,654.654 INFO    ] 2026-06-05 02:13:25
[2026-06-05 02:13:25,909.909 INFO    ] 2026-06-05 02:13:25
[2026-06-05 02:13:25,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:13:26,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:13:26,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:13:26,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:13:26,264.264 INFO    ] time= 05/06/2026 02:13:26
[2026-06-05 02:13:26,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:13:26,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:13:26,361.361 INFO    ] No existing commands found in stream
[2026-06-05 02:13:31,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:13:31,376.376 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 02:13:34,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:13:34,263.263 INFO    ] Checking for system updates...
[2026-06-05 02:13:34,300.300 INFO    ] 200
[2026-06-05 02:13:34,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:34,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:13:34,365.365 INFO    ] No update needed
[2026-06-05 02:13:34,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 02:13:34,406.406 INFO    ] 200
[2026-06-05 02:13:34,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:34,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:13:34,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:13:34,519.519 INFO    ] No camera update needed
[2026-06-05 02:13:34,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:13:34,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:13:34,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:13:34,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:13:36,579.579 INFO    ] ================================================
[2026-06-05 02:13:36,593.593 INFO    ] Launching Daemon at Fri Jun  5 02:13:36 IST 2026
[2026-06-05 02:13:36,604.604 INFO    ] ================================================
[2026-06-05 02:13:37,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:13:37
[2026-06-05 02:13:37,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:13:38,104.104 INFO    ] Initializing speech engine...
[2026-06-05 02:13:38,112.112 INFO    ] 2026-06-05 02:13:38
[2026-06-05 02:13:38,414.414 INFO    ] 2026-06-05 02:13:38
[2026-06-05 02:13:38,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:13:38,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:13:38,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:13:38,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:13:38,928.928 INFO    ] time= 05/06/2026 02:13:38
[2026-06-05 02:13:38,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:13:38,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:13:39,070.070 INFO    ] No existing commands found in stream
[2026-06-05 02:13:44,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:13:44,099.099 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 02:13:45,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:13:45,278.278 INFO    ] Checking for system updates...
[2026-06-05 02:13:45,316.316 INFO    ] 200
[2026-06-05 02:13:45,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:45,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:13:45,376.376 INFO    ] No update needed
[2026-06-05 02:13:45,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 02:13:45,413.413 INFO    ] 200
[2026-06-05 02:13:45,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:45,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:13:45,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:13:45,520.520 INFO    ] No camera update needed
[2026-06-05 02:13:45,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:13:45,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:13:45,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:13:45,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:13:47,578.578 INFO    ] ================================================
[2026-06-05 02:13:47,594.594 INFO    ] Launching Daemon at Fri Jun  5 02:13:47 IST 2026
[2026-06-05 02:13:47,605.605 INFO    ] ================================================
[2026-06-05 02:13:48,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:13:48
[2026-06-05 02:13:48,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:13:49,219.219 INFO    ] Initializing speech engine...
[2026-06-05 02:13:49,234.234 INFO    ] 2026-06-05 02:13:49
[2026-06-05 02:13:49,516.516 INFO    ] 2026-06-05 02:13:49
[2026-06-05 02:13:49,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:13:49,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:13:49,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:13:49,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:13:50,007.007 INFO    ] time= 05/06/2026 02:13:49
[2026-06-05 02:13:50,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:13:50,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:13:50,181.181 INFO    ] No existing commands found in stream
[2026-06-05 02:13:55,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:13:55,208.208 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 02:13:56,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:13:56,455.455 INFO    ] Checking for system updates...
[2026-06-05 02:13:56,496.496 INFO    ] 200
[2026-06-05 02:13:56,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:56,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:13:56,554.554 INFO    ] No update needed
[2026-06-05 02:13:56,557.557 INFO    ] Checking for camera pi updates...
[2026-06-05 02:13:56,590.590 INFO    ] 200
[2026-06-05 02:13:56,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:13:56,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:13:56,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:13:56,680.680 INFO    ] No camera update needed
[2026-06-05 02:13:56,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:13:56,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:13:56,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:13:56,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:13:58,736.736 INFO    ] ================================================
[2026-06-05 02:13:58,752.752 INFO    ] Launching Daemon at Fri Jun  5 02:13:58 IST 2026
[2026-06-05 02:13:58,763.763 INFO    ] ================================================
[2026-06-05 02:13:59,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:13:59
[2026-06-05 02:13:59,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:14:00,224.224 INFO    ] Initializing speech engine...
[2026-06-05 02:14:00,233.233 INFO    ] 2026-06-05 02:14:00
[2026-06-05 02:14:00,497.497 INFO    ] 2026-06-05 02:14:00
[2026-06-05 02:14:00,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:14:00,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:14:00,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:14:00,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:14:00,883.883 INFO    ] time= 05/06/2026 02:14:00
[2026-06-05 02:14:00,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:14:00,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:14:01,065.065 INFO    ] No existing commands found in stream
[2026-06-05 02:14:06,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:14:06,093.093 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 02:14:09,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:14:09,333.333 INFO    ] Checking for system updates...
[2026-06-05 02:14:09,369.369 INFO    ] 200
[2026-06-05 02:14:09,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:14:09,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:14:09,433.433 INFO    ] No update needed
[2026-06-05 02:14:09,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 02:14:09,470.470 INFO    ] 200
[2026-06-05 02:14:09,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:14:09,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:14:09,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:14:09,558.558 INFO    ] No camera update needed
[2026-06-05 02:14:09,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:14:09,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:14:09,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:14:09,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:14:11,613.613 INFO    ] ================================================
[2026-06-05 02:14:11,629.629 INFO    ] Launching Daemon at Fri Jun  5 02:14:11 IST 2026
[2026-06-05 02:14:11,640.640 INFO    ] ================================================
[2026-06-05 02:14:12,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:14:12
[2026-06-05 02:14:12,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:14:13,055.055 INFO    ] Initializing speech engine...
[2026-06-05 02:14:13,064.064 INFO    ] 2026-06-05 02:14:13
[2026-06-05 02:14:13,358.358 INFO    ] 2026-06-05 02:14:13
[2026-06-05 02:14:13,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:14:13,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:14:13,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:14:13,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:14:13,734.734 INFO    ] time= 05/06/2026 02:14:13
[2026-06-05 02:14:13,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:14:13,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:14:13,861.861 INFO    ] No existing commands found in stream
[2026-06-05 02:14:18,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:14:18,879.879 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 02:14:20,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:14:20,276.276 INFO    ] Checking for system updates...
[2026-06-05 02:14:20,313.313 INFO    ] 200
[2026-06-05 02:14:20,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:14:20,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:14:20,370.370 INFO    ] No update needed
[2026-06-05 02:14:20,373.373 INFO    ] Checking for camera pi updates...
[2026-06-05 02:14:20,406.406 INFO    ] 200
[2026-06-05 02:14:20,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:14:20,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:14:20,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:14:20,497.497 INFO    ] No camera update needed
[2026-06-05 02:14:20,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:14:20,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:14:20,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:14:20,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:14:22,552.552 INFO    ] ================================================
[2026-06-05 02:14:22,569.569 INFO    ] Launching Daemon at Fri Jun  5 02:14:22 IST 2026
[2026-06-05 02:14:22,580.580 INFO    ] ================================================
[2026-06-05 02:14:23,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:14:23
[2026-06-05 02:14:23,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:14:24,030.030 INFO    ] Initializing speech engine...
[2026-06-05 02:14:24,036.036 INFO    ] 2026-06-05 02:14:24
[2026-06-05 02:14:24,299.299 INFO    ] 2026-06-05 02:14:24
[2026-06-05 02:14:24,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:14:24,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:14:24,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:14:24,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:14:24,769.769 INFO    ] time= 05/06/2026 02:14:24
[2026-06-05 02:14:24,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:14:24,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:14:24,969.969 INFO    ] No existing commands found in stream
[2026-06-05 02:14:29,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:14:30,002.002 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 02:14:32,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:14:32,324.324 INFO    ] Checking for system updates...
[2026-06-05 02:14:32,367.367 INFO    ] 200
[2026-06-05 02:14:32,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:14:32,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:14:32,432.432 INFO    ] No update needed
[2026-06-05 02:14:32,435.435 INFO    ] Checking for camera pi updates...
[2026-06-05 02:14:32,480.480 INFO    ] 200
[2026-06-05 02:14:32,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:14:32,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:14:32,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:14:32,573.573 INFO    ] No camera update needed
[2026-06-05 02:14:32,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:14:32,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:14:32,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:14:32,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:14:34,632.632 INFO    ] ================================================
[2026-06-05 02:14:34,647.647 INFO    ] Launching Daemon at Fri Jun  5 02:14:34 IST 2026
[2026-06-05 02:14:34,659.659 INFO    ] ================================================
[2026-06-05 02:14:35,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:14:35
[2026-06-05 02:14:35,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:14:36,278.278 INFO    ] Initializing speech engine...
[2026-06-05 02:14:36,285.285 INFO    ] 2026-06-05 02:14:36
[2026-06-05 02:14:36,569.569 INFO    ] 2026-06-05 02:14:36
[2026-06-05 02:14:36,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:14:36,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:14:36,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:14:36,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:14:37,045.045 INFO    ] time= 05/06/2026 02:14:36
[2026-06-05 02:14:37,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:14:37,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:14:37,246.246 INFO    ] No existing commands found in stream
[2026-06-05 02:14:42,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:14:42,274.274 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 02:14:46,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:14:46,412.412 INFO    ] Checking for system updates...
[2026-06-05 02:14:46,449.449 INFO    ] 200
[2026-06-05 02:14:46,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:14:46,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:14:46,506.506 INFO    ] No update needed
[2026-06-05 02:14:46,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 02:14:46,546.546 INFO    ] 200
[2026-06-05 02:14:46,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:14:46,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:14:46,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:14:46,643.643 INFO    ] No camera update needed
[2026-06-05 02:14:46,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:14:46,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:14:46,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:14:46,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:14:48,700.700 INFO    ] ================================================
[2026-06-05 02:14:48,716.716 INFO    ] Launching Daemon at Fri Jun  5 02:14:48 IST 2026
[2026-06-05 02:14:48,727.727 INFO    ] ================================================
[2026-06-05 02:14:49,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:14:49
[2026-06-05 02:14:50,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:14:50,339.339 INFO    ] Initializing speech engine...
[2026-06-05 02:14:50,346.346 INFO    ] 2026-06-05 02:14:50
[2026-06-05 02:14:50,630.630 INFO    ] 2026-06-05 02:14:50
[2026-06-05 02:14:50,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:14:50,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:14:50,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:14:51,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:14:51,163.163 INFO    ] time= 05/06/2026 02:14:51
[2026-06-05 02:14:51,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:14:51,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:14:51,305.305 INFO    ] No existing commands found in stream
[2026-06-05 02:14:56,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:14:56,332.332 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 02:15:00,299.299 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:15:00,302.302 INFO    ] Checking for system updates...
[2026-06-05 02:15:00,340.340 INFO    ] 200
[2026-06-05 02:15:00,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:00,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:15:00,400.400 INFO    ] No update needed
[2026-06-05 02:15:00,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 02:15:00,437.437 INFO    ] 200
[2026-06-05 02:15:00,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:00,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:15:00,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:15:00,536.536 INFO    ] No camera update needed
[2026-06-05 02:15:00,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:15:00,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:15:00,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:15:00,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:15:02,609.609 INFO    ] ================================================
[2026-06-05 02:15:02,653.653 INFO    ] Launching Daemon at Fri Jun  5 02:15:02 IST 2026
[2026-06-05 02:15:02,676.676 INFO    ] ================================================
[2026-06-05 02:15:03,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:15:03
[2026-06-05 02:15:04,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:15:04,282.282 INFO    ] Initializing speech engine...
[2026-06-05 02:15:04,292.292 INFO    ] 2026-06-05 02:15:04
[2026-06-05 02:15:04,554.554 INFO    ] 2026-06-05 02:15:04
[2026-06-05 02:15:04,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:15:04,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:15:04,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:15:04,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:15:05,009.009 INFO    ] time= 05/06/2026 02:15:04
[2026-06-05 02:15:05,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:15:05,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:15:05,157.157 INFO    ] No existing commands found in stream
[2026-06-05 02:15:10,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:15:10,171.171 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 02:15:13,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:15:13,072.072 INFO    ] Checking for system updates...
[2026-06-05 02:15:13,109.109 INFO    ] 200
[2026-06-05 02:15:13,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:13,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:15:13,167.167 INFO    ] No update needed
[2026-06-05 02:15:13,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 02:15:13,203.203 INFO    ] 200
[2026-06-05 02:15:13,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:13,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:15:13,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:15:13,406.406 INFO    ] No camera update needed
[2026-06-05 02:15:13,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:15:13,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:15:13,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:15:13,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:15:15,462.462 INFO    ] ================================================
[2026-06-05 02:15:15,477.477 INFO    ] Launching Daemon at Fri Jun  5 02:15:15 IST 2026
[2026-06-05 02:15:15,489.489 INFO    ] ================================================
[2026-06-05 02:15:16,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:15:16
[2026-06-05 02:15:16,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:15:16,947.947 INFO    ] Initializing speech engine...
[2026-06-05 02:15:16,954.954 INFO    ] 2026-06-05 02:15:16
[2026-06-05 02:15:17,213.213 INFO    ] 2026-06-05 02:15:17
[2026-06-05 02:15:17,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:15:17,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:15:17,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:15:17,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:15:17,660.660 INFO    ] time= 05/06/2026 02:15:17
[2026-06-05 02:15:17,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:15:17,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:15:17,858.858 INFO    ] No existing commands found in stream
[2026-06-05 02:15:22,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:15:22,872.872 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 02:15:25,430.430 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:15:25,433.433 INFO    ] Checking for system updates...
[2026-06-05 02:15:25,470.470 INFO    ] 200
[2026-06-05 02:15:25,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:25,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:15:25,535.535 INFO    ] No update needed
[2026-06-05 02:15:25,538.538 INFO    ] Checking for camera pi updates...
[2026-06-05 02:15:25,574.574 INFO    ] 200
[2026-06-05 02:15:25,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:25,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:15:25,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:15:25,671.671 INFO    ] No camera update needed
[2026-06-05 02:15:25,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:15:25,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:15:25,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:15:25,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:15:27,728.728 INFO    ] ================================================
[2026-06-05 02:15:27,744.744 INFO    ] Launching Daemon at Fri Jun  5 02:15:27 IST 2026
[2026-06-05 02:15:27,754.754 INFO    ] ================================================
[2026-06-05 02:15:28,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:15:28
[2026-06-05 02:15:28,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:15:29,230.230 INFO    ] Initializing speech engine...
[2026-06-05 02:15:29,238.238 INFO    ] 2026-06-05 02:15:29
[2026-06-05 02:15:29,506.506 INFO    ] 2026-06-05 02:15:29
[2026-06-05 02:15:29,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:15:29,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:15:29,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:15:29,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:15:29,913.913 INFO    ] time= 05/06/2026 02:15:29
[2026-06-05 02:15:29,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:15:29,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:15:30,091.091 INFO    ] No existing commands found in stream
[2026-06-05 02:15:35,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:15:35,119.119 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 02:15:38,922.922 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:15:38,925.925 INFO    ] Checking for system updates...
[2026-06-05 02:15:38,961.961 INFO    ] 200
[2026-06-05 02:15:38,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:39,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:15:39,020.020 INFO    ] No update needed
[2026-06-05 02:15:39,022.022 INFO    ] Checking for camera pi updates...
[2026-06-05 02:15:39,056.056 INFO    ] 200
[2026-06-05 02:15:39,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:39,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:15:39,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:15:39,156.156 INFO    ] No camera update needed
[2026-06-05 02:15:39,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:15:39,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:15:39,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:15:39,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:15:41,212.212 INFO    ] ================================================
[2026-06-05 02:15:41,228.228 INFO    ] Launching Daemon at Fri Jun  5 02:15:41 IST 2026
[2026-06-05 02:15:41,239.239 INFO    ] ================================================
[2026-06-05 02:15:41,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:15:41
[2026-06-05 02:15:42,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:15:42,666.666 INFO    ] Initializing speech engine...
[2026-06-05 02:15:42,674.674 INFO    ] 2026-06-05 02:15:42
[2026-06-05 02:15:42,925.925 INFO    ] 2026-06-05 02:15:42
[2026-06-05 02:15:42,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:15:43,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:15:43,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:15:43,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:15:43,419.419 INFO    ] time= 05/06/2026 02:15:43
[2026-06-05 02:15:43,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:15:43,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:15:43,559.559 INFO    ] No existing commands found in stream
[2026-06-05 02:15:48,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:15:48,573.573 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 02:15:49,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:15:49,066.066 INFO    ] Checking for system updates...
[2026-06-05 02:15:49,102.102 INFO    ] 200
[2026-06-05 02:15:49,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:49,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:15:49,161.161 INFO    ] No update needed
[2026-06-05 02:15:49,163.163 INFO    ] Checking for camera pi updates...
[2026-06-05 02:15:49,198.198 INFO    ] 200
[2026-06-05 02:15:49,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:15:49,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:15:49,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:15:49,296.296 INFO    ] No camera update needed
[2026-06-05 02:15:49,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:15:49,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:15:49,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:15:49,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:15:51,352.352 INFO    ] ================================================
[2026-06-05 02:15:51,369.369 INFO    ] Launching Daemon at Fri Jun  5 02:15:51 IST 2026
[2026-06-05 02:15:51,380.380 INFO    ] ================================================
[2026-06-05 02:15:51,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:15:51
[2026-06-05 02:15:52,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:15:52,825.825 INFO    ] Initializing speech engine...
[2026-06-05 02:15:52,841.841 INFO    ] 2026-06-05 02:15:52
[2026-06-05 02:15:53,132.132 INFO    ] 2026-06-05 02:15:53
[2026-06-05 02:15:53,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:15:53,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:15:53,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:15:53,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:15:53,624.624 INFO    ] time= 05/06/2026 02:15:53
[2026-06-05 02:15:53,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:15:53,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:15:53,774.774 INFO    ] No existing commands found in stream
[2026-06-05 02:15:58,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:15:58,789.789 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 02:16:01,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:16:01,263.263 INFO    ] Checking for system updates...
[2026-06-05 02:16:01,330.330 INFO    ] 200
[2026-06-05 02:16:01,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:01,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:16:01,467.467 INFO    ] No update needed
[2026-06-05 02:16:01,472.472 INFO    ] Checking for camera pi updates...
[2026-06-05 02:16:01,528.528 INFO    ] 200
[2026-06-05 02:16:01,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:01,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:16:01,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:16:01,731.731 INFO    ] No camera update needed
[2026-06-05 02:16:01,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:16:01,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:16:01,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:16:01,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:16:03,805.805 INFO    ] ================================================
[2026-06-05 02:16:03,821.821 INFO    ] Launching Daemon at Fri Jun  5 02:16:03 IST 2026
[2026-06-05 02:16:03,832.832 INFO    ] ================================================
[2026-06-05 02:16:04,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:16:04
[2026-06-05 02:16:05,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:16:05,303.303 INFO    ] Initializing speech engine...
[2026-06-05 02:16:05,313.313 INFO    ] 2026-06-05 02:16:05
[2026-06-05 02:16:05,562.562 INFO    ] 2026-06-05 02:16:05
[2026-06-05 02:16:05,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:16:05,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:16:05,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:16:05,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:16:05,934.934 INFO    ] time= 05/06/2026 02:16:05
[2026-06-05 02:16:05,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:16:05,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:16:06,063.063 INFO    ] No existing commands found in stream
[2026-06-05 02:16:11,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:16:11,078.078 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 02:16:12,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:16:12,280.280 INFO    ] Checking for system updates...
[2026-06-05 02:16:12,317.317 INFO    ] 200
[2026-06-05 02:16:12,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:12,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:16:12,382.382 INFO    ] No update needed
[2026-06-05 02:16:12,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 02:16:12,419.419 INFO    ] 200
[2026-06-05 02:16:12,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:12,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:16:12,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:16:12,527.527 INFO    ] No camera update needed
[2026-06-05 02:16:12,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:16:12,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:16:12,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:16:12,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:16:14,587.587 INFO    ] ================================================
[2026-06-05 02:16:14,602.602 INFO    ] Launching Daemon at Fri Jun  5 02:16:14 IST 2026
[2026-06-05 02:16:14,614.614 INFO    ] ================================================
[2026-06-05 02:16:15,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:16:15
[2026-06-05 02:16:15,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:16:16,033.033 INFO    ] Initializing speech engine...
[2026-06-05 02:16:16,042.042 INFO    ] 2026-06-05 02:16:16
[2026-06-05 02:16:16,289.289 INFO    ] 2026-06-05 02:16:16
[2026-06-05 02:16:16,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:16:16,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:16:16,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:16:16,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:16:16,688.688 INFO    ] time= 05/06/2026 02:16:16
[2026-06-05 02:16:16,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:16:16,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:16:16,775.775 INFO    ] No existing commands found in stream
[2026-06-05 02:16:21,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:16:21,791.791 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 02:16:22,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:16:22,581.581 INFO    ] Checking for system updates...
[2026-06-05 02:16:22,620.620 INFO    ] 200
[2026-06-05 02:16:22,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:22,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:16:22,677.677 INFO    ] No update needed
[2026-06-05 02:16:22,679.679 INFO    ] Checking for camera pi updates...
[2026-06-05 02:16:22,716.716 INFO    ] 200
[2026-06-05 02:16:22,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:22,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:16:22,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:16:22,820.820 INFO    ] No camera update needed
[2026-06-05 02:16:22,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:16:22,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:16:22,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:16:22,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:16:24,877.877 INFO    ] ================================================
[2026-06-05 02:16:24,892.892 INFO    ] Launching Daemon at Fri Jun  5 02:16:24 IST 2026
[2026-06-05 02:16:24,903.903 INFO    ] ================================================
[2026-06-05 02:16:25,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:16:25
[2026-06-05 02:16:26,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:16:26,315.315 INFO    ] Initializing speech engine...
[2026-06-05 02:16:26,339.339 INFO    ] 2026-06-05 02:16:26
[2026-06-05 02:16:26,611.611 INFO    ] 2026-06-05 02:16:26
[2026-06-05 02:16:26,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:16:26,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:16:26,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:16:26,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:16:27,020.020 INFO    ] time= 05/06/2026 02:16:27
[2026-06-05 02:16:27,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:16:27,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:16:27,108.108 INFO    ] No existing commands found in stream
[2026-06-05 02:16:32,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:16:32,123.123 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 02:16:35,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:16:35,091.091 INFO    ] Checking for system updates...
[2026-06-05 02:16:35,130.130 INFO    ] 200
[2026-06-05 02:16:35,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:35,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:16:35,193.193 INFO    ] No update needed
[2026-06-05 02:16:35,195.195 INFO    ] Checking for camera pi updates...
[2026-06-05 02:16:35,230.230 INFO    ] 200
[2026-06-05 02:16:35,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:35,275.275 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:16:35,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:16:35,322.322 INFO    ] No camera update needed
[2026-06-05 02:16:35,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:16:35,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:16:35,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:16:35,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:16:37,378.378 INFO    ] ================================================
[2026-06-05 02:16:37,393.393 INFO    ] Launching Daemon at Fri Jun  5 02:16:37 IST 2026
[2026-06-05 02:16:37,404.404 INFO    ] ================================================
[2026-06-05 02:16:38,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:16:38
[2026-06-05 02:16:38,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:16:39,016.016 INFO    ] Initializing speech engine...
[2026-06-05 02:16:39,024.024 INFO    ] 2026-06-05 02:16:39
[2026-06-05 02:16:39,295.295 INFO    ] 2026-06-05 02:16:39
[2026-06-05 02:16:39,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:16:39,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:16:39,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:16:39,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:16:39,793.793 INFO    ] time= 05/06/2026 02:16:39
[2026-06-05 02:16:39,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:16:39,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:16:39,991.991 INFO    ] No existing commands found in stream
[2026-06-05 02:16:45,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:16:45,020.020 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 02:16:47,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:16:47,067.067 INFO    ] Checking for system updates...
[2026-06-05 02:16:47,103.103 INFO    ] 200
[2026-06-05 02:16:47,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:47,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:16:47,161.161 INFO    ] No update needed
[2026-06-05 02:16:47,164.164 INFO    ] Checking for camera pi updates...
[2026-06-05 02:16:47,201.201 INFO    ] 200
[2026-06-05 02:16:47,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:16:47,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:16:47,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:16:47,300.300 INFO    ] No camera update needed
[2026-06-05 02:16:47,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:16:47,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:16:47,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:16:47,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:16:49,358.358 INFO    ] ================================================
[2026-06-05 02:16:49,374.374 INFO    ] Launching Daemon at Fri Jun  5 02:16:49 IST 2026
[2026-06-05 02:16:49,385.385 INFO    ] ================================================
[2026-06-05 02:16:49,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:16:49
[2026-06-05 02:16:50,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:16:50,825.825 INFO    ] Initializing speech engine...
[2026-06-05 02:16:50,834.834 INFO    ] 2026-06-05 02:16:50
[2026-06-05 02:16:51,086.086 INFO    ] 2026-06-05 02:16:51
[2026-06-05 02:16:51,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:16:51,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:16:51,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:16:51,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:16:51,569.569 INFO    ] time= 05/06/2026 02:16:51
[2026-06-05 02:16:51,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:16:51,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:16:51,717.717 INFO    ] No existing commands found in stream
[2026-06-05 02:16:56,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:16:56,731.731 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 02:17:00,290.290 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:17:00,292.292 INFO    ] Checking for system updates...
[2026-06-05 02:17:00,330.330 INFO    ] 200
[2026-06-05 02:17:00,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:00,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:17:00,396.396 INFO    ] No update needed
[2026-06-05 02:17:00,400.400 INFO    ] Checking for camera pi updates...
[2026-06-05 02:17:00,434.434 INFO    ] 200
[2026-06-05 02:17:00,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:00,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:17:00,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:17:00,538.538 INFO    ] No camera update needed
[2026-06-05 02:17:00,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:17:00,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:17:00,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:17:00,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:17:02,600.600 INFO    ] ================================================
[2026-06-05 02:17:02,621.621 INFO    ] Launching Daemon at Fri Jun  5 02:17:02 IST 2026
[2026-06-05 02:17:02,638.638 INFO    ] ================================================
[2026-06-05 02:17:03,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:17:03
[2026-06-05 02:17:04,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:17:04,370.370 INFO    ] Initializing speech engine...
[2026-06-05 02:17:04,381.381 INFO    ] 2026-06-05 02:17:04
[2026-06-05 02:17:04,671.671 INFO    ] 2026-06-05 02:17:04
[2026-06-05 02:17:04,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:17:04,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:17:04,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:17:05,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:17:05,157.157 INFO    ] time= 05/06/2026 02:17:05
[2026-06-05 02:17:05,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:17:05,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:17:05,334.334 INFO    ] No existing commands found in stream
[2026-06-05 02:17:10,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:17:10,360.360 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 02:17:14,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:17:14,602.602 INFO    ] Checking for system updates...
[2026-06-05 02:17:14,643.643 INFO    ] 200
[2026-06-05 02:17:14,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:14,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:17:14,702.702 INFO    ] No update needed
[2026-06-05 02:17:14,704.704 INFO    ] Checking for camera pi updates...
[2026-06-05 02:17:14,739.739 INFO    ] 200
[2026-06-05 02:17:14,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:14,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:17:14,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:17:14,843.843 INFO    ] No camera update needed
[2026-06-05 02:17:14,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:17:14,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:17:14,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:17:14,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:17:16,899.899 INFO    ] ================================================
[2026-06-05 02:17:16,914.914 INFO    ] Launching Daemon at Fri Jun  5 02:17:16 IST 2026
[2026-06-05 02:17:16,924.924 INFO    ] ================================================
[2026-06-05 02:17:17,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:17:17
[2026-06-05 02:17:18,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:17:18,566.566 INFO    ] Initializing speech engine...
[2026-06-05 02:17:18,572.572 INFO    ] 2026-06-05 02:17:18
[2026-06-05 02:17:18,850.850 INFO    ] 2026-06-05 02:17:18
[2026-06-05 02:17:18,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:17:19,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:17:19,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:17:19,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:17:19,404.404 INFO    ] time= 05/06/2026 02:17:19
[2026-06-05 02:17:19,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:17:19,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:17:19,581.581 INFO    ] No existing commands found in stream
[2026-06-05 02:17:24,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:17:24,612.612 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 02:17:26,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:17:26,004.004 INFO    ] Checking for system updates...
[2026-06-05 02:17:26,042.042 INFO    ] 200
[2026-06-05 02:17:26,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:26,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:17:26,104.104 INFO    ] No update needed
[2026-06-05 02:17:26,106.106 INFO    ] Checking for camera pi updates...
[2026-06-05 02:17:26,142.142 INFO    ] 200
[2026-06-05 02:17:26,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:26,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:17:26,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:17:26,345.345 INFO    ] No camera update needed
[2026-06-05 02:17:26,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:17:26,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:17:26,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:17:26,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:17:28,407.407 INFO    ] ================================================
[2026-06-05 02:17:28,422.422 INFO    ] Launching Daemon at Fri Jun  5 02:17:28 IST 2026
[2026-06-05 02:17:28,434.434 INFO    ] ================================================
[2026-06-05 02:17:29,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:17:29
[2026-06-05 02:17:29,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:17:29,874.874 INFO    ] Initializing speech engine...
[2026-06-05 02:17:29,887.887 INFO    ] 2026-06-05 02:17:29
[2026-06-05 02:17:30,133.133 INFO    ] 2026-06-05 02:17:30
[2026-06-05 02:17:30,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:17:30,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:17:30,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:17:30,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:17:30,574.574 INFO    ] time= 05/06/2026 02:17:30
[2026-06-05 02:17:30,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:17:30,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:17:30,753.753 INFO    ] No existing commands found in stream
[2026-06-05 02:17:35,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:17:35,768.768 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 02:17:39,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:17:39,488.488 INFO    ] Checking for system updates...
[2026-06-05 02:17:39,528.528 INFO    ] 200
[2026-06-05 02:17:39,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:39,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:17:39,587.587 INFO    ] No update needed
[2026-06-05 02:17:39,589.589 INFO    ] Checking for camera pi updates...
[2026-06-05 02:17:39,623.623 INFO    ] 200
[2026-06-05 02:17:39,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:39,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:17:39,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:17:39,734.734 INFO    ] No camera update needed
[2026-06-05 02:17:39,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:17:39,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:17:39,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:17:39,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:17:41,791.791 INFO    ] ================================================
[2026-06-05 02:17:41,808.808 INFO    ] Launching Daemon at Fri Jun  5 02:17:41 IST 2026
[2026-06-05 02:17:41,820.820 INFO    ] ================================================
[2026-06-05 02:17:42,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:17:42
[2026-06-05 02:17:43,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:17:43,294.294 INFO    ] Initializing speech engine...
[2026-06-05 02:17:43,299.299 INFO    ] 2026-06-05 02:17:43
[2026-06-05 02:17:43,561.561 INFO    ] 2026-06-05 02:17:43
[2026-06-05 02:17:43,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:17:43,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:17:43,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:17:43,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:17:44,037.037 INFO    ] time= 05/06/2026 02:17:43
[2026-06-05 02:17:44,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:17:44,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:17:44,175.175 INFO    ] No existing commands found in stream
[2026-06-05 02:17:49,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:17:49,190.190 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 02:17:50,468.468 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:17:50,471.471 INFO    ] Checking for system updates...
[2026-06-05 02:17:50,511.511 INFO    ] 200
[2026-06-05 02:17:50,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:50,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:17:50,576.576 INFO    ] No update needed
[2026-06-05 02:17:50,579.579 INFO    ] Checking for camera pi updates...
[2026-06-05 02:17:50,613.613 INFO    ] 200
[2026-06-05 02:17:50,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:17:50,657.657 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:17:50,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:17:50,716.716 INFO    ] No camera update needed
[2026-06-05 02:17:50,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:17:50,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:17:50,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:17:50,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:17:52,773.773 INFO    ] ================================================
[2026-06-05 02:17:52,788.788 INFO    ] Launching Daemon at Fri Jun  5 02:17:52 IST 2026
[2026-06-05 02:17:52,799.799 INFO    ] ================================================
[2026-06-05 02:17:53,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:17:53
[2026-06-05 02:17:53,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:17:54,212.212 INFO    ] Initializing speech engine...
[2026-06-05 02:17:54,221.221 INFO    ] 2026-06-05 02:17:54
[2026-06-05 02:17:54,495.495 INFO    ] 2026-06-05 02:17:54
[2026-06-05 02:17:54,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:17:54,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:17:54,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:17:54,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:17:54,872.872 INFO    ] time= 05/06/2026 02:17:54
[2026-06-05 02:17:54,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:17:54,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:17:54,955.955 INFO    ] No existing commands found in stream
[2026-06-05 02:17:59,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:17:59,973.973 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 02:18:02,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:18:02,659.659 INFO    ] Checking for system updates...
[2026-06-05 02:18:02,702.702 INFO    ] 200
[2026-06-05 02:18:02,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:02,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:18:02,775.775 INFO    ] No update needed
[2026-06-05 02:18:02,778.778 INFO    ] Checking for camera pi updates...
[2026-06-05 02:18:02,821.821 INFO    ] 200
[2026-06-05 02:18:02,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:02,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:18:02,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:18:02,925.925 INFO    ] No camera update needed
[2026-06-05 02:18:02,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:18:02,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:18:02,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:18:02,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:18:04,985.985 INFO    ] ================================================
[2026-06-05 02:18:05,000.000 INFO    ] Launching Daemon at Fri Jun  5 02:18:04 IST 2026
[2026-06-05 02:18:05,011.011 INFO    ] ================================================
[2026-06-05 02:18:05,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:18:05
[2026-06-05 02:18:06,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:18:06,419.419 INFO    ] Initializing speech engine...
[2026-06-05 02:18:06,437.437 INFO    ] 2026-06-05 02:18:06
[2026-06-05 02:18:06,700.700 INFO    ] 2026-06-05 02:18:06
[2026-06-05 02:18:06,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:18:06,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:18:06,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:18:07,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:18:07,062.062 INFO    ] time= 05/06/2026 02:18:07
[2026-06-05 02:18:07,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:18:07,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:18:07,180.180 INFO    ] No existing commands found in stream
[2026-06-05 02:18:12,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:18:12,195.195 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 02:18:16,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:18:16,504.504 INFO    ] Checking for system updates...
[2026-06-05 02:18:16,544.544 INFO    ] 200
[2026-06-05 02:18:16,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:16,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:18:16,608.608 INFO    ] No update needed
[2026-06-05 02:18:16,610.610 INFO    ] Checking for camera pi updates...
[2026-06-05 02:18:16,644.644 INFO    ] 200
[2026-06-05 02:18:16,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:16,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:18:16,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:18:16,757.757 INFO    ] No camera update needed
[2026-06-05 02:18:16,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:18:16,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:18:16,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:18:16,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:18:18,814.814 INFO    ] ================================================
[2026-06-05 02:18:18,829.829 INFO    ] Launching Daemon at Fri Jun  5 02:18:18 IST 2026
[2026-06-05 02:18:18,840.840 INFO    ] ================================================
[2026-06-05 02:18:19,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:18:19
[2026-06-05 02:18:20,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:18:20,302.302 INFO    ] Initializing speech engine...
[2026-06-05 02:18:20,309.309 INFO    ] 2026-06-05 02:18:20
[2026-06-05 02:18:20,570.570 INFO    ] 2026-06-05 02:18:20
[2026-06-05 02:18:20,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:18:20,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:18:20,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:18:20,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:18:21,029.029 INFO    ] time= 05/06/2026 02:18:20
[2026-06-05 02:18:21,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:18:21,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:18:21,178.178 INFO    ] No existing commands found in stream
[2026-06-05 02:18:26,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:18:26,192.192 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 02:18:27,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:18:27,681.681 INFO    ] Checking for system updates...
[2026-06-05 02:18:27,719.719 INFO    ] 200
[2026-06-05 02:18:27,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:27,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:18:27,779.779 INFO    ] No update needed
[2026-06-05 02:18:27,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 02:18:27,817.817 INFO    ] 200
[2026-06-05 02:18:27,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:27,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:18:27,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:18:27,912.912 INFO    ] No camera update needed
[2026-06-05 02:18:27,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:18:27,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:18:27,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:18:27,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:18:29,974.974 INFO    ] ================================================
[2026-06-05 02:18:29,991.991 INFO    ] Launching Daemon at Fri Jun  5 02:18:29 IST 2026
[2026-06-05 02:18:30,002.002 INFO    ] ================================================
[2026-06-05 02:18:30,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:18:30
[2026-06-05 02:18:31,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:18:31,407.407 INFO    ] Initializing speech engine...
[2026-06-05 02:18:31,421.421 INFO    ] 2026-06-05 02:18:31
[2026-06-05 02:18:31,688.688 INFO    ] 2026-06-05 02:18:31
[2026-06-05 02:18:31,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:18:31,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:18:31,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:18:32,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:18:32,062.062 INFO    ] time= 05/06/2026 02:18:32
[2026-06-05 02:18:32,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:18:32,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:18:32,164.164 INFO    ] No existing commands found in stream
[2026-06-05 02:18:37,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:18:37,180.180 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 02:18:39,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:18:39,167.167 INFO    ] Checking for system updates...
[2026-06-05 02:18:39,216.216 INFO    ] 200
[2026-06-05 02:18:39,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:39,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:18:39,283.283 INFO    ] No update needed
[2026-06-05 02:18:39,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 02:18:39,322.322 INFO    ] 200
[2026-06-05 02:18:39,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:39,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:18:39,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:18:39,427.427 INFO    ] No camera update needed
[2026-06-05 02:18:39,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:18:39,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:18:39,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:18:39,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:18:41,488.488 INFO    ] ================================================
[2026-06-05 02:18:41,503.503 INFO    ] Launching Daemon at Fri Jun  5 02:18:41 IST 2026
[2026-06-05 02:18:41,514.514 INFO    ] ================================================
[2026-06-05 02:18:42,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:18:42
[2026-06-05 02:18:42,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:18:43,170.170 INFO    ] Initializing speech engine...
[2026-06-05 02:18:43,185.185 INFO    ] 2026-06-05 02:18:43
[2026-06-05 02:18:43,471.471 INFO    ] 2026-06-05 02:18:43
[2026-06-05 02:18:43,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:18:43,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:18:43,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:18:43,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:18:43,958.958 INFO    ] time= 05/06/2026 02:18:43
[2026-06-05 02:18:44,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:18:44,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:18:44,169.169 INFO    ] No existing commands found in stream
[2026-06-05 02:18:49,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:18:49,208.208 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 02:18:50,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:18:50,100.100 INFO    ] Checking for system updates...
[2026-06-05 02:18:50,142.142 INFO    ] 200
[2026-06-05 02:18:50,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:50,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:18:50,210.210 INFO    ] No update needed
[2026-06-05 02:18:50,213.213 INFO    ] Checking for camera pi updates...
[2026-06-05 02:18:50,252.252 INFO    ] 200
[2026-06-05 02:18:50,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:18:50,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:18:50,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:18:50,348.348 INFO    ] No camera update needed
[2026-06-05 02:18:50,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:18:50,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:18:50,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:18:50,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:18:52,411.411 INFO    ] ================================================
[2026-06-05 02:18:52,428.428 INFO    ] Launching Daemon at Fri Jun  5 02:18:52 IST 2026
[2026-06-05 02:18:52,438.438 INFO    ] ================================================
[2026-06-05 02:18:53,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:18:53
[2026-06-05 02:18:53,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:18:53,913.913 INFO    ] Initializing speech engine...
[2026-06-05 02:18:53,925.925 INFO    ] 2026-06-05 02:18:53
[2026-06-05 02:18:54,203.203 INFO    ] 2026-06-05 02:18:54
[2026-06-05 02:18:54,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:18:54,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:18:54,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:18:54,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:18:54,596.596 INFO    ] time= 05/06/2026 02:18:54
[2026-06-05 02:18:54,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:18:54,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:18:54,725.725 INFO    ] No existing commands found in stream
[2026-06-05 02:18:59,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:18:59,740.740 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 02:19:01,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:19:01,699.699 INFO    ] Checking for system updates...
[2026-06-05 02:19:01,735.735 INFO    ] 200
[2026-06-05 02:19:01,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:01,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:19:01,794.794 INFO    ] No update needed
[2026-06-05 02:19:01,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 02:19:01,830.830 INFO    ] 200
[2026-06-05 02:19:01,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:01,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:19:01,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:19:01,987.987 INFO    ] No camera update needed
[2026-06-05 02:19:01,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:19:01,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:19:02,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:19:02,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:19:04,054.054 INFO    ] ================================================
[2026-06-05 02:19:04,069.069 INFO    ] Launching Daemon at Fri Jun  5 02:19:04 IST 2026
[2026-06-05 02:19:04,080.080 INFO    ] ================================================
[2026-06-05 02:19:04,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:19:04
[2026-06-05 02:19:05,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:19:05,549.549 INFO    ] Initializing speech engine...
[2026-06-05 02:19:05,556.556 INFO    ] 2026-06-05 02:19:05
[2026-06-05 02:19:05,805.805 INFO    ] 2026-06-05 02:19:05
[2026-06-05 02:19:05,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:19:06,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:19:06,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:19:06,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:19:06,304.304 INFO    ] time= 05/06/2026 02:19:06
[2026-06-05 02:19:06,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:19:06,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:19:06,518.518 INFO    ] No existing commands found in stream
[2026-06-05 02:19:11,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:19:11,534.534 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 02:19:14,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:19:14,822.822 INFO    ] Checking for system updates...
[2026-06-05 02:19:14,858.858 INFO    ] 200
[2026-06-05 02:19:14,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:14,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:19:14,920.920 INFO    ] No update needed
[2026-06-05 02:19:14,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 02:19:14,962.962 INFO    ] 200
[2026-06-05 02:19:14,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:15,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:19:15,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:19:15,060.060 INFO    ] No camera update needed
[2026-06-05 02:19:15,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:19:15,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:19:15,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:19:15,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:19:17,121.121 INFO    ] ================================================
[2026-06-05 02:19:17,137.137 INFO    ] Launching Daemon at Fri Jun  5 02:19:17 IST 2026
[2026-06-05 02:19:17,148.148 INFO    ] ================================================
[2026-06-05 02:19:17,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:19:17
[2026-06-05 02:19:18,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:19:18,589.589 INFO    ] Initializing speech engine...
[2026-06-05 02:19:18,599.599 INFO    ] 2026-06-05 02:19:18
[2026-06-05 02:19:18,896.896 INFO    ] 2026-06-05 02:19:18
[2026-06-05 02:19:18,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:19:19,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:19:19,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:19:19,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:19:19,297.297 INFO    ] time= 05/06/2026 02:19:19
[2026-06-05 02:19:19,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:19:19,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:19:19,407.407 INFO    ] No existing commands found in stream
[2026-06-05 02:19:24,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:19:24,422.422 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 02:19:26,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:19:26,516.516 INFO    ] Checking for system updates...
[2026-06-05 02:19:26,553.553 INFO    ] 200
[2026-06-05 02:19:26,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:26,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:19:26,612.612 INFO    ] No update needed
[2026-06-05 02:19:26,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 02:19:26,648.648 INFO    ] 200
[2026-06-05 02:19:26,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:26,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:19:26,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:19:26,744.744 INFO    ] No camera update needed
[2026-06-05 02:19:26,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:19:26,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:19:26,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:19:26,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:19:28,800.800 INFO    ] ================================================
[2026-06-05 02:19:28,816.816 INFO    ] Launching Daemon at Fri Jun  5 02:19:28 IST 2026
[2026-06-05 02:19:28,827.827 INFO    ] ================================================
[2026-06-05 02:19:29,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:19:29
[2026-06-05 02:19:30,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:19:30,276.276 INFO    ] Initializing speech engine...
[2026-06-05 02:19:30,289.289 INFO    ] 2026-06-05 02:19:30
[2026-06-05 02:19:30,553.553 INFO    ] 2026-06-05 02:19:30
[2026-06-05 02:19:30,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:19:30,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:19:30,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:19:30,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:19:30,930.930 INFO    ] time= 05/06/2026 02:19:30
[2026-06-05 02:19:30,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:19:30,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:19:31,088.088 INFO    ] No existing commands found in stream
[2026-06-05 02:19:36,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:19:36,122.122 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 02:19:40,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:19:40,179.179 INFO    ] Checking for system updates...
[2026-06-05 02:19:40,215.215 INFO    ] 200
[2026-06-05 02:19:40,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:40,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:19:40,273.273 INFO    ] No update needed
[2026-06-05 02:19:40,275.275 INFO    ] Checking for camera pi updates...
[2026-06-05 02:19:40,309.309 INFO    ] 200
[2026-06-05 02:19:40,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:40,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:19:40,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:19:40,406.406 INFO    ] No camera update needed
[2026-06-05 02:19:40,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:19:40,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:19:40,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:19:40,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:19:42,462.462 INFO    ] ================================================
[2026-06-05 02:19:42,477.477 INFO    ] Launching Daemon at Fri Jun  5 02:19:42 IST 2026
[2026-06-05 02:19:42,488.488 INFO    ] ================================================
[2026-06-05 02:19:43,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:19:43
[2026-06-05 02:19:43,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:19:43,942.942 INFO    ] Initializing speech engine...
[2026-06-05 02:19:43,949.949 INFO    ] 2026-06-05 02:19:43
[2026-06-05 02:19:44,208.208 INFO    ] 2026-06-05 02:19:44
[2026-06-05 02:19:44,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:19:44,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:19:44,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:19:44,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:19:44,676.676 INFO    ] time= 05/06/2026 02:19:44
[2026-06-05 02:19:44,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:19:44,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:19:44,849.849 INFO    ] No existing commands found in stream
[2026-06-05 02:19:49,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:19:49,883.883 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 02:19:52,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:19:52,339.339 INFO    ] Checking for system updates...
[2026-06-05 02:19:52,378.378 INFO    ] 200
[2026-06-05 02:19:52,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:52,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:19:52,437.437 INFO    ] No update needed
[2026-06-05 02:19:52,440.440 INFO    ] Checking for camera pi updates...
[2026-06-05 02:19:52,476.476 INFO    ] 200
[2026-06-05 02:19:52,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:19:52,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:19:52,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:19:52,579.579 INFO    ] No camera update needed
[2026-06-05 02:19:52,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:19:52,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:19:52,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:19:52,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:19:54,640.640 INFO    ] ================================================
[2026-06-05 02:19:54,656.656 INFO    ] Launching Daemon at Fri Jun  5 02:19:54 IST 2026
[2026-06-05 02:19:54,666.666 INFO    ] ================================================
[2026-06-05 02:19:55,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:19:55
[2026-06-05 02:19:55,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:19:56,123.123 INFO    ] Initializing speech engine...
[2026-06-05 02:19:56,137.137 INFO    ] 2026-06-05 02:19:56
[2026-06-05 02:19:56,428.428 INFO    ] 2026-06-05 02:19:56
[2026-06-05 02:19:56,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:19:56,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:19:56,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:19:56,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:19:56,836.836 INFO    ] time= 05/06/2026 02:19:56
[2026-06-05 02:19:56,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:19:56,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:19:56,945.945 INFO    ] No existing commands found in stream
[2026-06-05 02:20:01,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:20:01,963.963 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 02:20:08,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:20:08,890.890 INFO    ] Checking for system updates...
[2026-06-05 02:20:08,927.927 INFO    ] 200
[2026-06-05 02:20:08,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:08,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:20:08,984.984 INFO    ] No update needed
[2026-06-05 02:20:08,987.987 INFO    ] Checking for camera pi updates...
[2026-06-05 02:20:09,021.021 INFO    ] 200
[2026-06-05 02:20:09,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:09,064.064 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:20:09,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:20:09,115.115 INFO    ] No camera update needed
[2026-06-05 02:20:09,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:20:09,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:20:09,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:20:09,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:20:11,171.171 INFO    ] ================================================
[2026-06-05 02:20:11,187.187 INFO    ] Launching Daemon at Fri Jun  5 02:20:11 IST 2026
[2026-06-05 02:20:11,197.197 INFO    ] ================================================
[2026-06-05 02:20:11,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:20:11
[2026-06-05 02:20:12,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:20:12,609.609 INFO    ] Initializing speech engine...
[2026-06-05 02:20:12,619.619 INFO    ] 2026-06-05 02:20:12
[2026-06-05 02:20:12,917.917 INFO    ] 2026-06-05 02:20:12
[2026-06-05 02:20:12,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:20:13,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:20:13,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:20:13,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:20:13,281.281 INFO    ] time= 05/06/2026 02:20:13
[2026-06-05 02:20:13,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:20:13,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:20:13,369.369 INFO    ] No existing commands found in stream
[2026-06-05 02:20:18,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:20:18,382.382 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 02:20:22,533.533 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:20:22,536.536 INFO    ] Checking for system updates...
[2026-06-05 02:20:22,572.572 INFO    ] 200
[2026-06-05 02:20:22,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:22,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:20:22,634.634 INFO    ] No update needed
[2026-06-05 02:20:22,637.637 INFO    ] Checking for camera pi updates...
[2026-06-05 02:20:22,671.671 INFO    ] 200
[2026-06-05 02:20:22,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:22,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:20:22,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:20:22,770.770 INFO    ] No camera update needed
[2026-06-05 02:20:22,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:20:22,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:20:22,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:20:22,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:20:24,826.826 INFO    ] ================================================
[2026-06-05 02:20:24,841.841 INFO    ] Launching Daemon at Fri Jun  5 02:20:24 IST 2026
[2026-06-05 02:20:24,852.852 INFO    ] ================================================
[2026-06-05 02:20:25,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:20:25
[2026-06-05 02:20:26,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:20:26,567.567 INFO    ] Initializing speech engine...
[2026-06-05 02:20:26,575.575 INFO    ] 2026-06-05 02:20:26
[2026-06-05 02:20:26,869.869 INFO    ] 2026-06-05 02:20:26
[2026-06-05 02:20:26,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:20:27,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:20:27,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:20:27,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:20:27,390.390 INFO    ] time= 05/06/2026 02:20:27
[2026-06-05 02:20:27,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:20:27,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:20:27,566.566 INFO    ] No existing commands found in stream
[2026-06-05 02:20:32,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:20:32,600.600 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 02:20:35,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:20:35,922.922 INFO    ] Checking for system updates...
[2026-06-05 02:20:35,959.959 INFO    ] 200
[2026-06-05 02:20:35,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:36,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:20:36,018.018 INFO    ] No update needed
[2026-06-05 02:20:36,020.020 INFO    ] Checking for camera pi updates...
[2026-06-05 02:20:36,054.054 INFO    ] 200
[2026-06-05 02:20:36,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:36,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:20:36,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:20:36,149.149 INFO    ] No camera update needed
[2026-06-05 02:20:36,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:20:36,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:20:36,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:20:36,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:20:38,205.205 INFO    ] ================================================
[2026-06-05 02:20:38,220.220 INFO    ] Launching Daemon at Fri Jun  5 02:20:38 IST 2026
[2026-06-05 02:20:38,231.231 INFO    ] ================================================
[2026-06-05 02:20:38,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:20:38
[2026-06-05 02:20:39,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:20:39,693.693 INFO    ] Initializing speech engine...
[2026-06-05 02:20:39,714.714 INFO    ] 2026-06-05 02:20:39
[2026-06-05 02:20:39,999.999 INFO    ] 2026-06-05 02:20:39
[2026-06-05 02:20:40,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:20:40,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:20:40,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:20:40,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:20:40,427.427 INFO    ] time= 05/06/2026 02:20:40
[2026-06-05 02:20:40,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:20:40,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:20:40,513.513 INFO    ] No existing commands found in stream
[2026-06-05 02:20:45,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:20:45,528.528 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 02:20:48,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:20:48,578.578 INFO    ] Checking for system updates...
[2026-06-05 02:20:48,614.614 INFO    ] 200
[2026-06-05 02:20:48,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:48,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:20:48,672.672 INFO    ] No update needed
[2026-06-05 02:20:48,675.675 INFO    ] Checking for camera pi updates...
[2026-06-05 02:20:48,709.709 INFO    ] 200
[2026-06-05 02:20:48,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:48,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:20:48,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:20:48,804.804 INFO    ] No camera update needed
[2026-06-05 02:20:48,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:20:48,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:20:48,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:20:48,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:20:50,859.859 INFO    ] ================================================
[2026-06-05 02:20:50,874.874 INFO    ] Launching Daemon at Fri Jun  5 02:20:50 IST 2026
[2026-06-05 02:20:50,885.885 INFO    ] ================================================
[2026-06-05 02:20:51,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:20:51
[2026-06-05 02:20:52,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:20:52,298.298 INFO    ] Initializing speech engine...
[2026-06-05 02:20:52,315.315 INFO    ] 2026-06-05 02:20:52
[2026-06-05 02:20:52,592.592 INFO    ] 2026-06-05 02:20:52
[2026-06-05 02:20:52,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:20:52,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:20:52,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:20:52,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:20:53,018.018 INFO    ] time= 05/06/2026 02:20:53
[2026-06-05 02:20:53,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:20:53,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:20:53,084.084 INFO    ] No existing commands found in stream
[2026-06-05 02:20:58,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:20:58,111.111 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 02:20:59,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:20:59,608.608 INFO    ] Checking for system updates...
[2026-06-05 02:20:59,646.646 INFO    ] 200
[2026-06-05 02:20:59,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:59,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:20:59,705.705 INFO    ] No update needed
[2026-06-05 02:20:59,708.708 INFO    ] Checking for camera pi updates...
[2026-06-05 02:20:59,746.746 INFO    ] 200
[2026-06-05 02:20:59,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:20:59,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:20:59,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:20:59,851.851 INFO    ] No camera update needed
[2026-06-05 02:20:59,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:20:59,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:20:59,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:20:59,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:21:01,912.912 INFO    ] ================================================
[2026-06-05 02:21:01,933.933 INFO    ] Launching Daemon at Fri Jun  5 02:21:01 IST 2026
[2026-06-05 02:21:01,946.946 INFO    ] ================================================
[2026-06-05 02:21:02,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:21:02
[2026-06-05 02:21:03,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:21:03,505.505 INFO    ] Initializing speech engine...
[2026-06-05 02:21:03,514.514 INFO    ] 2026-06-05 02:21:03
[2026-06-05 02:21:03,763.763 INFO    ] 2026-06-05 02:21:03
[2026-06-05 02:21:03,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:21:03,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:21:04,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:21:04,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:21:04,141.141 INFO    ] time= 05/06/2026 02:21:04
[2026-06-05 02:21:04,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:21:04,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:21:04,286.286 INFO    ] No existing commands found in stream
[2026-06-05 02:21:09,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:21:09,299.299 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 02:21:10,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:21:10,787.787 INFO    ] Checking for system updates...
[2026-06-05 02:21:10,823.823 INFO    ] 200
[2026-06-05 02:21:10,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:10,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:21:10,881.881 INFO    ] No update needed
[2026-06-05 02:21:10,884.884 INFO    ] Checking for camera pi updates...
[2026-06-05 02:21:10,918.918 INFO    ] 200
[2026-06-05 02:21:10,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:10,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:21:11,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:21:11,012.012 INFO    ] No camera update needed
[2026-06-05 02:21:11,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:21:11,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:21:11,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:21:11,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:21:13,068.068 INFO    ] ================================================
[2026-06-05 02:21:13,083.083 INFO    ] Launching Daemon at Fri Jun  5 02:21:13 IST 2026
[2026-06-05 02:21:13,094.094 INFO    ] ================================================
[2026-06-05 02:21:13,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:21:13
[2026-06-05 02:21:14,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:21:14,538.538 INFO    ] Initializing speech engine...
[2026-06-05 02:21:14,549.549 INFO    ] 2026-06-05 02:21:14
[2026-06-05 02:21:14,800.800 INFO    ] 2026-06-05 02:21:14
[2026-06-05 02:21:14,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:21:15,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:21:15,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:21:15,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:21:15,284.284 INFO    ] time= 05/06/2026 02:21:15
[2026-06-05 02:21:15,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:21:15,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:21:15,434.434 INFO    ] No existing commands found in stream
[2026-06-05 02:21:20,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:21:20,449.449 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 02:21:23,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:21:23,605.605 INFO    ] Checking for system updates...
[2026-06-05 02:21:23,641.641 INFO    ] 200
[2026-06-05 02:21:23,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:23,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:21:23,700.700 INFO    ] No update needed
[2026-06-05 02:21:23,703.703 INFO    ] Checking for camera pi updates...
[2026-06-05 02:21:23,737.737 INFO    ] 200
[2026-06-05 02:21:23,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:23,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:21:23,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:21:23,830.830 INFO    ] No camera update needed
[2026-06-05 02:21:23,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:21:23,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:21:23,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:21:23,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:21:25,885.885 INFO    ] ================================================
[2026-06-05 02:21:25,900.900 INFO    ] Launching Daemon at Fri Jun  5 02:21:25 IST 2026
[2026-06-05 02:21:25,911.911 INFO    ] ================================================
[2026-06-05 02:21:26,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:21:26
[2026-06-05 02:21:27,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:21:27,374.374 INFO    ] Initializing speech engine...
[2026-06-05 02:21:27,379.379 INFO    ] 2026-06-05 02:21:27
[2026-06-05 02:21:27,644.644 INFO    ] 2026-06-05 02:21:27
[2026-06-05 02:21:27,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:21:27,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:21:27,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:21:28,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:21:28,106.106 INFO    ] time= 05/06/2026 02:21:28
[2026-06-05 02:21:28,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:21:28,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:21:28,257.257 INFO    ] No existing commands found in stream
[2026-06-05 02:21:33,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:21:33,285.285 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 02:21:34,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:21:34,784.784 INFO    ] Checking for system updates...
[2026-06-05 02:21:34,821.821 INFO    ] 200
[2026-06-05 02:21:34,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:34,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:21:34,879.879 INFO    ] No update needed
[2026-06-05 02:21:34,881.881 INFO    ] Checking for camera pi updates...
[2026-06-05 02:21:34,916.916 INFO    ] 200
[2026-06-05 02:21:34,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:34,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:21:35,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:21:35,104.104 INFO    ] No camera update needed
[2026-06-05 02:21:35,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:21:35,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:21:35,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:21:35,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:21:37,161.161 INFO    ] ================================================
[2026-06-05 02:21:37,176.176 INFO    ] Launching Daemon at Fri Jun  5 02:21:37 IST 2026
[2026-06-05 02:21:37,187.187 INFO    ] ================================================
[2026-06-05 02:21:37,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:21:37
[2026-06-05 02:21:38,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:21:38,589.589 INFO    ] Initializing speech engine...
[2026-06-05 02:21:38,602.602 INFO    ] 2026-06-05 02:21:38
[2026-06-05 02:21:38,868.868 INFO    ] 2026-06-05 02:21:38
[2026-06-05 02:21:38,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:21:39,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:21:39,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:21:39,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:21:39,206.206 INFO    ] time= 05/06/2026 02:21:39
[2026-06-05 02:21:39,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:21:39,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:21:39,318.318 INFO    ] No existing commands found in stream
[2026-06-05 02:21:44,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:21:44,333.333 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 02:21:45,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:21:45,725.725 INFO    ] Checking for system updates...
[2026-06-05 02:21:45,761.761 INFO    ] 200
[2026-06-05 02:21:45,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:45,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:21:45,819.819 INFO    ] No update needed
[2026-06-05 02:21:45,822.822 INFO    ] Checking for camera pi updates...
[2026-06-05 02:21:45,855.855 INFO    ] 200
[2026-06-05 02:21:45,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:45,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:21:45,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:21:45,953.953 INFO    ] No camera update needed
[2026-06-05 02:21:45,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:21:45,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:21:45,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:21:45,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:21:48,010.010 INFO    ] ================================================
[2026-06-05 02:21:48,025.025 INFO    ] Launching Daemon at Fri Jun  5 02:21:48 IST 2026
[2026-06-05 02:21:48,036.036 INFO    ] ================================================
[2026-06-05 02:21:48,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:21:48
[2026-06-05 02:21:49,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:21:49,719.719 INFO    ] Initializing speech engine...
[2026-06-05 02:21:49,728.728 INFO    ] 2026-06-05 02:21:49
[2026-06-05 02:21:50,051.051 INFO    ] 2026-06-05 02:21:50
[2026-06-05 02:21:50,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:21:50,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:21:50,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:21:50,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:21:50,574.574 INFO    ] time= 05/06/2026 02:21:50
[2026-06-05 02:21:50,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:21:50,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:21:50,726.726 INFO    ] No existing commands found in stream
[2026-06-05 02:21:55,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:21:55,753.753 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 02:21:57,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:21:57,677.677 INFO    ] Checking for system updates...
[2026-06-05 02:21:57,715.715 INFO    ] 200
[2026-06-05 02:21:57,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:57,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:21:57,776.776 INFO    ] No update needed
[2026-06-05 02:21:57,779.779 INFO    ] Checking for camera pi updates...
[2026-06-05 02:21:57,815.815 INFO    ] 200
[2026-06-05 02:21:57,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:21:57,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:21:57,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:21:57,919.919 INFO    ] No camera update needed
[2026-06-05 02:21:57,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:21:57,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:21:57,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:21:57,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:21:59,979.979 INFO    ] ================================================
[2026-06-05 02:22:00,994.994 INFO    ] Launching Daemon at Fri Jun  5 02:21:59 IST 2026
[2026-06-05 02:22:00,005.005 INFO    ] ================================================
[2026-06-05 02:22:00,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:22:00
[2026-06-05 02:22:01,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:22:01,675.675 INFO    ] Initializing speech engine...
[2026-06-05 02:22:01,690.690 INFO    ] 2026-06-05 02:22:01
[2026-06-05 02:22:01,969.969 INFO    ] 2026-06-05 02:22:01
[2026-06-05 02:22:02,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:22:02,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:22:02,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:22:02,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:22:02,362.362 INFO    ] time= 05/06/2026 02:22:02
[2026-06-05 02:22:02,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:22:02,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:22:02,454.454 INFO    ] No existing commands found in stream
[2026-06-05 02:22:07,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:22:07,469.469 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 02:22:09,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:22:09,220.220 INFO    ] Checking for system updates...
[2026-06-05 02:22:09,255.255 INFO    ] 200
[2026-06-05 02:22:09,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:09,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:22:09,314.314 INFO    ] No update needed
[2026-06-05 02:22:09,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 02:22:09,350.350 INFO    ] 200
[2026-06-05 02:22:09,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:09,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:22:09,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:22:09,441.441 INFO    ] No camera update needed
[2026-06-05 02:22:09,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:22:09,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:22:09,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:22:09,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:22:11,499.499 INFO    ] ================================================
[2026-06-05 02:22:11,514.514 INFO    ] Launching Daemon at Fri Jun  5 02:22:11 IST 2026
[2026-06-05 02:22:11,525.525 INFO    ] ================================================
[2026-06-05 02:22:12,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:22:12
[2026-06-05 02:22:12,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:22:12,945.945 INFO    ] Initializing speech engine...
[2026-06-05 02:22:12,958.958 INFO    ] 2026-06-05 02:22:12
[2026-06-05 02:22:13,220.220 INFO    ] 2026-06-05 02:22:13
[2026-06-05 02:22:13,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:22:13,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:22:13,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:22:13,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:22:13,590.590 INFO    ] time= 05/06/2026 02:22:13
[2026-06-05 02:22:13,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:22:13,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:22:13,754.754 INFO    ] No existing commands found in stream
[2026-06-05 02:22:18,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:22:18,787.787 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 02:22:22,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:22:22,192.192 INFO    ] Checking for system updates...
[2026-06-05 02:22:22,227.227 INFO    ] 200
[2026-06-05 02:22:22,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:22,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:22:22,284.284 INFO    ] No update needed
[2026-06-05 02:22:22,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 02:22:22,321.321 INFO    ] 200
[2026-06-05 02:22:22,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:22,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:22:22,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:22:22,397.397 INFO    ] No camera update needed
[2026-06-05 02:22:22,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:22:22,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:22:22,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:22:22,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:22:24,452.452 INFO    ] ================================================
[2026-06-05 02:22:24,467.467 INFO    ] Launching Daemon at Fri Jun  5 02:22:24 IST 2026
[2026-06-05 02:22:24,485.485 INFO    ] ================================================
[2026-06-05 02:22:25,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:22:25
[2026-06-05 02:22:25,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:22:25,946.946 INFO    ] Initializing speech engine...
[2026-06-05 02:22:25,952.952 INFO    ] 2026-06-05 02:22:25
[2026-06-05 02:22:26,201.201 INFO    ] 2026-06-05 02:22:26
[2026-06-05 02:22:26,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:22:26,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:22:26,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:22:26,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:22:26,663.663 INFO    ] time= 05/06/2026 02:22:26
[2026-06-05 02:22:26,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:22:26,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:22:26,816.816 INFO    ] No existing commands found in stream
[2026-06-05 02:22:31,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:22:31,831.831 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 02:22:33,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:22:33,930.930 INFO    ] Checking for system updates...
[2026-06-05 02:22:33,967.967 INFO    ] 200
[2026-06-05 02:22:33,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:34,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:22:34,028.028 INFO    ] No update needed
[2026-06-05 02:22:34,030.030 INFO    ] Checking for camera pi updates...
[2026-06-05 02:22:34,069.069 INFO    ] 200
[2026-06-05 02:22:34,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:34,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:22:34,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:22:34,157.157 INFO    ] No camera update needed
[2026-06-05 02:22:34,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:22:34,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:22:34,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:22:34,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:22:36,215.215 INFO    ] ================================================
[2026-06-05 02:22:36,231.231 INFO    ] Launching Daemon at Fri Jun  5 02:22:36 IST 2026
[2026-06-05 02:22:36,241.241 INFO    ] ================================================
[2026-06-05 02:22:36,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:22:36
[2026-06-05 02:22:37,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:22:37,700.700 INFO    ] Initializing speech engine...
[2026-06-05 02:22:37,710.710 INFO    ] 2026-06-05 02:22:37
[2026-06-05 02:22:37,959.959 INFO    ] 2026-06-05 02:22:37
[2026-06-05 02:22:37,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:22:38,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:22:38,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:22:38,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:22:38,337.337 INFO    ] time= 05/06/2026 02:22:38
[2026-06-05 02:22:38,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:22:38,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:22:38,516.516 INFO    ] No existing commands found in stream
[2026-06-05 02:22:43,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:22:43,539.539 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 02:22:44,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:22:44,267.267 INFO    ] Checking for system updates...
[2026-06-05 02:22:44,304.304 INFO    ] 200
[2026-06-05 02:22:44,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:44,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:22:44,368.368 INFO    ] No update needed
[2026-06-05 02:22:44,370.370 INFO    ] Checking for camera pi updates...
[2026-06-05 02:22:44,404.404 INFO    ] 200
[2026-06-05 02:22:44,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:44,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:22:44,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:22:44,496.496 INFO    ] No camera update needed
[2026-06-05 02:22:44,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:22:44,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:22:44,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:22:44,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:22:46,550.550 INFO    ] ================================================
[2026-06-05 02:22:46,566.566 INFO    ] Launching Daemon at Fri Jun  5 02:22:46 IST 2026
[2026-06-05 02:22:46,576.576 INFO    ] ================================================
[2026-06-05 02:22:47,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:22:47
[2026-06-05 02:22:47,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:22:48,043.043 INFO    ] Initializing speech engine...
[2026-06-05 02:22:48,050.050 INFO    ] 2026-06-05 02:22:48
[2026-06-05 02:22:48,311.311 INFO    ] 2026-06-05 02:22:48
[2026-06-05 02:22:48,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:22:48,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:22:48,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:22:48,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:22:48,704.704 INFO    ] time= 05/06/2026 02:22:48
[2026-06-05 02:22:48,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:22:48,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:22:48,879.879 INFO    ] No existing commands found in stream
[2026-06-05 02:22:53,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:22:53,912.912 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 02:22:55,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:22:55,388.388 INFO    ] Checking for system updates...
[2026-06-05 02:22:55,426.426 INFO    ] 200
[2026-06-05 02:22:55,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:55,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:22:55,484.484 INFO    ] No update needed
[2026-06-05 02:22:55,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 02:22:55,533.533 INFO    ] 200
[2026-06-05 02:22:55,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:22:55,579.579 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:22:55,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:22:55,633.633 INFO    ] No camera update needed
[2026-06-05 02:22:55,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:22:55,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:22:55,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:22:55,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:22:57,691.691 INFO    ] ================================================
[2026-06-05 02:22:57,706.706 INFO    ] Launching Daemon at Fri Jun  5 02:22:57 IST 2026
[2026-06-05 02:22:57,717.717 INFO    ] ================================================
[2026-06-05 02:22:58,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:22:58
[2026-06-05 02:22:58,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:22:59,230.230 INFO    ] Initializing speech engine...
[2026-06-05 02:22:59,244.244 INFO    ] 2026-06-05 02:22:59
[2026-06-05 02:22:59,523.523 INFO    ] 2026-06-05 02:22:59
[2026-06-05 02:22:59,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:22:59,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:22:59,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:23:00,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:23:00,056.056 INFO    ] time= 05/06/2026 02:23:00
[2026-06-05 02:23:00,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:23:00,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:23:00,193.193 INFO    ] No existing commands found in stream
[2026-06-05 02:23:05,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:23:05,224.224 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 02:23:06,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:23:06,027.027 INFO    ] Checking for system updates...
[2026-06-05 02:23:06,068.068 INFO    ] 200
[2026-06-05 02:23:06,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:06,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:23:06,133.133 INFO    ] No update needed
[2026-06-05 02:23:06,136.136 INFO    ] Checking for camera pi updates...
[2026-06-05 02:23:06,174.174 INFO    ] 200
[2026-06-05 02:23:06,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:06,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:23:06,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:23:06,282.282 INFO    ] No camera update needed
[2026-06-05 02:23:06,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:23:06,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:23:06,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:23:06,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:23:08,341.341 INFO    ] ================================================
[2026-06-05 02:23:08,356.356 INFO    ] Launching Daemon at Fri Jun  5 02:23:08 IST 2026
[2026-06-05 02:23:08,367.367 INFO    ] ================================================
[2026-06-05 02:23:08,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:23:08
[2026-06-05 02:23:09,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:23:09,823.823 INFO    ] Initializing speech engine...
[2026-06-05 02:23:09,832.832 INFO    ] 2026-06-05 02:23:09
[2026-06-05 02:23:10,090.090 INFO    ] 2026-06-05 02:23:10
[2026-06-05 02:23:10,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:23:10,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:23:10,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:23:10,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:23:10,409.409 INFO    ] time= 05/06/2026 02:23:10
[2026-06-05 02:23:10,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:23:10,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:23:10,534.534 INFO    ] No existing commands found in stream
[2026-06-05 02:23:15,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:23:15,554.554 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 02:23:19,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:23:19,825.825 INFO    ] Checking for system updates...
[2026-06-05 02:23:19,862.862 INFO    ] 200
[2026-06-05 02:23:19,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:19,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:23:19,922.922 INFO    ] No update needed
[2026-06-05 02:23:19,924.924 INFO    ] Checking for camera pi updates...
[2026-06-05 02:23:19,958.958 INFO    ] 200
[2026-06-05 02:23:19,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:20,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:23:20,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:23:20,053.053 INFO    ] No camera update needed
[2026-06-05 02:23:20,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:23:20,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:23:20,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:23:20,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:23:22,112.112 INFO    ] ================================================
[2026-06-05 02:23:22,127.127 INFO    ] Launching Daemon at Fri Jun  5 02:23:22 IST 2026
[2026-06-05 02:23:22,137.137 INFO    ] ================================================
[2026-06-05 02:23:22,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:23:22
[2026-06-05 02:23:23,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:23:23,600.600 INFO    ] Initializing speech engine...
[2026-06-05 02:23:23,609.609 INFO    ] 2026-06-05 02:23:23
[2026-06-05 02:23:23,867.867 INFO    ] 2026-06-05 02:23:23
[2026-06-05 02:23:23,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:23:24,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:23:24,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:23:24,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:23:24,327.327 INFO    ] time= 05/06/2026 02:23:24
[2026-06-05 02:23:24,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:23:24,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:23:24,469.469 INFO    ] No existing commands found in stream
[2026-06-05 02:23:29,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:23:29,484.484 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 02:23:32,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:23:32,359.359 INFO    ] Checking for system updates...
[2026-06-05 02:23:32,407.407 INFO    ] 200
[2026-06-05 02:23:32,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:32,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:23:32,476.476 INFO    ] No update needed
[2026-06-05 02:23:32,478.478 INFO    ] Checking for camera pi updates...
[2026-06-05 02:23:32,513.513 INFO    ] 200
[2026-06-05 02:23:32,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:32,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:23:32,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:23:32,596.596 INFO    ] No camera update needed
[2026-06-05 02:23:32,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:23:32,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:23:32,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:23:32,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:23:34,652.652 INFO    ] ================================================
[2026-06-05 02:23:34,668.668 INFO    ] Launching Daemon at Fri Jun  5 02:23:34 IST 2026
[2026-06-05 02:23:34,679.679 INFO    ] ================================================
[2026-06-05 02:23:35,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:23:35
[2026-06-05 02:23:35,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:23:36,139.139 INFO    ] Initializing speech engine...
[2026-06-05 02:23:36,157.157 INFO    ] 2026-06-05 02:23:36
[2026-06-05 02:23:36,436.436 INFO    ] 2026-06-05 02:23:36
[2026-06-05 02:23:36,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:23:36,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:23:36,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:23:36,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:23:36,796.796 INFO    ] time= 05/06/2026 02:23:36
[2026-06-05 02:23:36,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:23:36,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:23:36,877.877 INFO    ] No existing commands found in stream
[2026-06-05 02:23:41,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:23:41,890.890 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 02:23:45,657.657 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:23:45,660.660 INFO    ] Checking for system updates...
[2026-06-05 02:23:45,697.697 INFO    ] 200
[2026-06-05 02:23:45,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:45,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:23:45,764.764 INFO    ] No update needed
[2026-06-05 02:23:45,767.767 INFO    ] Checking for camera pi updates...
[2026-06-05 02:23:45,806.806 INFO    ] 200
[2026-06-05 02:23:45,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:45,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:23:45,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:23:46,001.001 INFO    ] No camera update needed
[2026-06-05 02:23:46,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:23:46,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:23:46,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:23:46,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:23:48,057.057 INFO    ] ================================================
[2026-06-05 02:23:48,073.073 INFO    ] Launching Daemon at Fri Jun  5 02:23:48 IST 2026
[2026-06-05 02:23:48,084.084 INFO    ] ================================================
[2026-06-05 02:23:48,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:23:48
[2026-06-05 02:23:49,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:23:49,578.578 INFO    ] Initializing speech engine...
[2026-06-05 02:23:49,585.585 INFO    ] 2026-06-05 02:23:49
[2026-06-05 02:23:49,858.858 INFO    ] 2026-06-05 02:23:49
[2026-06-05 02:23:49,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:23:50,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:23:50,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:23:50,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:23:50,220.220 INFO    ] time= 05/06/2026 02:23:50
[2026-06-05 02:23:50,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:23:50,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:23:50,315.315 INFO    ] No existing commands found in stream
[2026-06-05 02:23:55,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:23:55,330.330 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 02:23:56,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:23:56,119.119 INFO    ] Checking for system updates...
[2026-06-05 02:23:56,156.156 INFO    ] 200
[2026-06-05 02:23:56,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:56,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:23:56,222.222 INFO    ] No update needed
[2026-06-05 02:23:56,225.225 INFO    ] Checking for camera pi updates...
[2026-06-05 02:23:56,259.259 INFO    ] 200
[2026-06-05 02:23:56,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:23:56,302.302 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:23:56,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:23:56,353.353 INFO    ] No camera update needed
[2026-06-05 02:23:56,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:23:56,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:23:56,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:23:56,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:23:58,409.409 INFO    ] ================================================
[2026-06-05 02:23:58,424.424 INFO    ] Launching Daemon at Fri Jun  5 02:23:58 IST 2026
[2026-06-05 02:23:58,436.436 INFO    ] ================================================
[2026-06-05 02:23:59,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:23:59
[2026-06-05 02:23:59,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:23:59,849.849 INFO    ] Initializing speech engine...
[2026-06-05 02:23:59,862.862 INFO    ] 2026-06-05 02:23:59
[2026-06-05 02:24:00,127.127 INFO    ] 2026-06-05 02:24:00
[2026-06-05 02:24:00,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:24:00,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:24:00,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:24:00,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:24:00,506.506 INFO    ] time= 05/06/2026 02:24:00
[2026-06-05 02:24:00,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:24:00,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:24:00,669.669 INFO    ] No existing commands found in stream
[2026-06-05 02:24:05,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:24:05,697.697 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 02:24:09,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:24:09,014.014 INFO    ] Checking for system updates...
[2026-06-05 02:24:09,054.054 INFO    ] 200
[2026-06-05 02:24:09,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:24:09,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:24:09,121.121 INFO    ] No update needed
[2026-06-05 02:24:09,123.123 INFO    ] Checking for camera pi updates...
[2026-06-05 02:24:09,163.163 INFO    ] 200
[2026-06-05 02:24:09,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:24:09,207.207 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:24:09,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:24:09,261.261 INFO    ] No camera update needed
[2026-06-05 02:24:09,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:24:09,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:24:09,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:24:09,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:24:11,317.317 INFO    ] ================================================
[2026-06-05 02:24:11,333.333 INFO    ] Launching Daemon at Fri Jun  5 02:24:11 IST 2026
[2026-06-05 02:24:11,344.344 INFO    ] ================================================
[2026-06-05 02:24:12,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:24:12
[2026-06-05 02:24:12,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:24:13,007.007 INFO    ] Initializing speech engine...
[2026-06-05 02:24:13,015.015 INFO    ] 2026-06-05 02:24:13
[2026-06-05 02:24:13,292.292 INFO    ] 2026-06-05 02:24:13
[2026-06-05 02:24:13,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:24:13,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:24:13,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:24:13,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:24:13,778.778 INFO    ] time= 05/06/2026 02:24:13
[2026-06-05 02:24:13,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:24:13,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:24:13,956.956 INFO    ] No existing commands found in stream
[2026-06-05 02:24:18,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:24:18,992.992 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-05 02:24:23,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:24:23,163.163 INFO    ] Checking for system updates...
[2026-06-05 02:24:23,206.206 INFO    ] 200
[2026-06-05 02:24:23,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:24:23,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:24:23,273.273 INFO    ] No update needed
[2026-06-05 02:24:23,276.276 INFO    ] Checking for camera pi updates...
[2026-06-05 02:24:23,310.310 INFO    ] 200
[2026-06-05 02:24:23,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:24:23,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:24:23,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:24:23,408.408 INFO    ] No camera update needed
[2026-06-05 02:24:23,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:24:23,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:24:23,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:24:23,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:24:25,463.463 INFO    ] ================================================
[2026-06-05 02:24:25,479.479 INFO    ] Launching Daemon at Fri Jun  5 02:24:25 IST 2026
[2026-06-05 02:24:25,490.490 INFO    ] ================================================
[2026-06-05 02:24:26,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:24:26
[2026-06-05 02:24:26,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:24:27,132.132 INFO    ] Initializing speech engine...
[2026-06-05 02:24:27,140.140 INFO    ] 2026-06-05 02:24:27
[2026-06-05 02:24:27,429.429 INFO    ] 2026-06-05 02:24:27
[2026-06-05 02:24:27,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:24:27,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:24:27,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:24:27,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:24:27,909.909 INFO    ] time= 05/06/2026 02:24:27
[2026-06-05 02:24:27,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:24:27,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:24:28,113.113 INFO    ] No existing commands found in stream
[2026-06-05 02:24:33,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:24:33,140.140 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 02:24:36,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:24:36,763.763 INFO    ] Checking for system updates...
[2026-06-05 02:24:36,800.800 INFO    ] 200
[2026-06-05 02:24:36,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:24:36,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:24:36,859.859 INFO    ] No update needed
[2026-06-05 02:24:36,861.861 INFO    ] Checking for camera pi updates...
[2026-06-05 02:24:36,896.896 INFO    ] 200
[2026-06-05 02:24:36,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:24:36,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:24:36,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:24:36,988.988 INFO    ] No camera update needed
[2026-06-05 02:24:36,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:24:36,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:24:36,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:24:37,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:24:39,043.043 INFO    ] ================================================
[2026-06-05 02:24:39,059.059 INFO    ] Launching Daemon at Fri Jun  5 02:24:39 IST 2026
[2026-06-05 02:24:39,070.070 INFO    ] ================================================
[2026-06-05 02:24:39,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:24:39
[2026-06-05 02:24:40,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:24:40,514.514 INFO    ] Initializing speech engine...
[2026-06-05 02:24:40,520.520 INFO    ] 2026-06-05 02:24:40
[2026-06-05 02:24:40,822.822 INFO    ] 2026-06-05 02:24:40
[2026-06-05 02:24:40,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:24:41,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:24:41,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:24:41,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:24:41,303.303 INFO    ] time= 05/06/2026 02:24:41
[2026-06-05 02:24:41,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:24:41,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:24:41,470.470 INFO    ] No existing commands found in stream
[2026-06-05 02:24:46,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:24:46,485.485 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 02:24:50,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:24:50,841.841 INFO    ] Checking for system updates...
[2026-06-05 02:24:50,881.881 INFO    ] 200
[2026-06-05 02:24:50,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:24:50,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:24:50,947.947 INFO    ] No update needed
[2026-06-05 02:24:50,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 02:24:50,984.984 INFO    ] 200
[2026-06-05 02:24:50,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:24:51,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:24:51,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:24:51,073.073 INFO    ] No camera update needed
[2026-06-05 02:24:51,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:24:51,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:24:51,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:24:51,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:24:53,129.129 INFO    ] ================================================
[2026-06-05 02:24:53,146.146 INFO    ] Launching Daemon at Fri Jun  5 02:24:53 IST 2026
[2026-06-05 02:24:53,158.158 INFO    ] ================================================
[2026-06-05 02:24:53,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:24:53
[2026-06-05 02:24:54,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:24:54,809.809 INFO    ] Initializing speech engine...
[2026-06-05 02:24:54,822.822 INFO    ] 2026-06-05 02:24:54
[2026-06-05 02:24:55,112.112 INFO    ] 2026-06-05 02:24:55
[2026-06-05 02:24:55,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:24:55,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:24:55,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:24:55,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:24:55,594.594 INFO    ] time= 05/06/2026 02:24:55
[2026-06-05 02:24:55,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:24:55,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:24:55,786.786 INFO    ] No existing commands found in stream
[2026-06-05 02:25:00,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:25:00,821.821 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 02:25:01,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:25:01,539.539 INFO    ] Checking for system updates...
[2026-06-05 02:25:01,581.581 INFO    ] 200
[2026-06-05 02:25:01,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:01,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:25:01,641.641 INFO    ] No update needed
[2026-06-05 02:25:01,644.644 INFO    ] Checking for camera pi updates...
[2026-06-05 02:25:01,684.684 INFO    ] 200
[2026-06-05 02:25:01,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:01,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:25:01,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:25:01,894.894 INFO    ] No camera update needed
[2026-06-05 02:25:01,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:25:01,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:25:01,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:25:01,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:25:03,978.978 INFO    ] ================================================
[2026-06-05 02:25:04,994.994 INFO    ] Launching Daemon at Fri Jun  5 02:25:03 IST 2026
[2026-06-05 02:25:04,006.006 INFO    ] ================================================
[2026-06-05 02:25:04,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:25:04
[2026-06-05 02:25:05,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:25:05,652.652 INFO    ] Initializing speech engine...
[2026-06-05 02:25:05,660.660 INFO    ] 2026-06-05 02:25:05
[2026-06-05 02:25:05,941.941 INFO    ] 2026-06-05 02:25:05
[2026-06-05 02:25:06,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:25:06,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:25:06,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:25:06,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:25:06,443.443 INFO    ] time= 05/06/2026 02:25:06
[2026-06-05 02:25:06,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:25:06,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:25:06,623.623 INFO    ] No existing commands found in stream
[2026-06-05 02:25:11,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:25:11,655.655 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 02:25:15,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:25:15,539.539 INFO    ] Checking for system updates...
[2026-06-05 02:25:15,577.577 INFO    ] 200
[2026-06-05 02:25:15,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:15,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:25:15,643.643 INFO    ] No update needed
[2026-06-05 02:25:15,645.645 INFO    ] Checking for camera pi updates...
[2026-06-05 02:25:15,683.683 INFO    ] 200
[2026-06-05 02:25:15,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:15,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:25:15,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:25:15,781.781 INFO    ] No camera update needed
[2026-06-05 02:25:15,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:25:15,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:25:15,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:25:15,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:25:17,836.836 INFO    ] ================================================
[2026-06-05 02:25:17,852.852 INFO    ] Launching Daemon at Fri Jun  5 02:25:17 IST 2026
[2026-06-05 02:25:17,863.863 INFO    ] ================================================
[2026-06-05 02:25:18,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:25:18
[2026-06-05 02:25:19,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:25:19,330.330 INFO    ] Initializing speech engine...
[2026-06-05 02:25:19,338.338 INFO    ] 2026-06-05 02:25:19
[2026-06-05 02:25:19,609.609 INFO    ] 2026-06-05 02:25:19
[2026-06-05 02:25:19,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:25:19,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:25:19,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:25:20,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:25:20,066.066 INFO    ] time= 05/06/2026 02:25:20
[2026-06-05 02:25:20,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:25:20,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:25:20,206.206 INFO    ] No existing commands found in stream
[2026-06-05 02:25:25,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:25:25,220.220 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 02:25:25,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:25:25,752.752 INFO    ] Checking for system updates...
[2026-06-05 02:25:25,790.790 INFO    ] 200
[2026-06-05 02:25:25,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:25,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:25:25,850.850 INFO    ] No update needed
[2026-06-05 02:25:25,852.852 INFO    ] Checking for camera pi updates...
[2026-06-05 02:25:25,887.887 INFO    ] 200
[2026-06-05 02:25:25,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:25,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:25:25,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:25:25,993.993 INFO    ] No camera update needed
[2026-06-05 02:25:25,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:25:25,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:25:26,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:25:26,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:25:28,056.056 INFO    ] ================================================
[2026-06-05 02:25:28,072.072 INFO    ] Launching Daemon at Fri Jun  5 02:25:28 IST 2026
[2026-06-05 02:25:28,082.082 INFO    ] ================================================
[2026-06-05 02:25:28,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:25:28
[2026-06-05 02:25:29,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:25:29,495.495 INFO    ] Initializing speech engine...
[2026-06-05 02:25:29,503.503 INFO    ] 2026-06-05 02:25:29
[2026-06-05 02:25:29,782.782 INFO    ] 2026-06-05 02:25:29
[2026-06-05 02:25:29,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:25:30,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:25:30,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:25:30,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:25:30,163.163 INFO    ] time= 05/06/2026 02:25:30
[2026-06-05 02:25:30,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:25:30,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:25:30,329.329 INFO    ] No existing commands found in stream
[2026-06-05 02:25:35,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:25:35,362.362 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 02:25:38,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:25:38,347.347 INFO    ] Checking for system updates...
[2026-06-05 02:25:38,383.383 INFO    ] 200
[2026-06-05 02:25:38,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:38,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:25:38,448.448 INFO    ] No update needed
[2026-06-05 02:25:38,450.450 INFO    ] Checking for camera pi updates...
[2026-06-05 02:25:38,484.484 INFO    ] 200
[2026-06-05 02:25:38,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:38,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:25:38,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:25:38,575.575 INFO    ] No camera update needed
[2026-06-05 02:25:38,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:25:38,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:25:38,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:25:38,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:25:40,632.632 INFO    ] ================================================
[2026-06-05 02:25:40,648.648 INFO    ] Launching Daemon at Fri Jun  5 02:25:40 IST 2026
[2026-06-05 02:25:40,659.659 INFO    ] ================================================
[2026-06-05 02:25:41,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:25:41
[2026-06-05 02:25:41,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:25:42,123.123 INFO    ] Initializing speech engine...
[2026-06-05 02:25:42,132.132 INFO    ] 2026-06-05 02:25:42
[2026-06-05 02:25:42,376.376 INFO    ] 2026-06-05 02:25:42
[2026-06-05 02:25:42,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:25:42,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:25:42,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:25:42,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:25:42,748.748 INFO    ] time= 05/06/2026 02:25:42
[2026-06-05 02:25:42,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:25:42,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:25:42,916.916 INFO    ] No existing commands found in stream
[2026-06-05 02:25:47,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:25:47,949.949 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 02:25:50,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:25:50,128.128 INFO    ] Checking for system updates...
[2026-06-05 02:25:50,164.164 INFO    ] 200
[2026-06-05 02:25:50,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:50,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:25:50,232.232 INFO    ] No update needed
[2026-06-05 02:25:50,234.234 INFO    ] Checking for camera pi updates...
[2026-06-05 02:25:50,272.272 INFO    ] 200
[2026-06-05 02:25:50,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:25:50,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:25:50,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:25:50,467.467 INFO    ] No camera update needed
[2026-06-05 02:25:50,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:25:50,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:25:50,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:25:50,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:25:52,522.522 INFO    ] ================================================
[2026-06-05 02:25:52,537.537 INFO    ] Launching Daemon at Fri Jun  5 02:25:52 IST 2026
[2026-06-05 02:25:52,549.549 INFO    ] ================================================
[2026-06-05 02:25:53,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:25:53
[2026-06-05 02:25:53,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:25:54,200.200 INFO    ] Initializing speech engine...
[2026-06-05 02:25:54,205.205 INFO    ] 2026-06-05 02:25:54
[2026-06-05 02:25:54,491.491 INFO    ] 2026-06-05 02:25:54
[2026-06-05 02:25:54,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:25:54,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:25:54,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:25:54,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:25:55,024.024 INFO    ] time= 05/06/2026 02:25:54
[2026-06-05 02:25:55,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:25:55,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:25:55,181.181 INFO    ] No existing commands found in stream
[2026-06-05 02:26:00,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:26:00,207.207 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 02:26:01,429.429 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:26:01,432.432 INFO    ] Checking for system updates...
[2026-06-05 02:26:01,469.469 INFO    ] 200
[2026-06-05 02:26:01,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:01,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:26:01,544.544 INFO    ] No update needed
[2026-06-05 02:26:01,547.547 INFO    ] Checking for camera pi updates...
[2026-06-05 02:26:01,580.580 INFO    ] 200
[2026-06-05 02:26:01,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:01,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:26:01,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:26:01,733.733 INFO    ] No camera update needed
[2026-06-05 02:26:01,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:26:01,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:26:01,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:26:01,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:26:03,790.790 INFO    ] ================================================
[2026-06-05 02:26:03,806.806 INFO    ] Launching Daemon at Fri Jun  5 02:26:03 IST 2026
[2026-06-05 02:26:03,817.817 INFO    ] ================================================
[2026-06-05 02:26:04,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:26:04
[2026-06-05 02:26:04,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:26:05,271.271 INFO    ] Initializing speech engine...
[2026-06-05 02:26:05,278.278 INFO    ] 2026-06-05 02:26:05
[2026-06-05 02:26:05,542.542 INFO    ] 2026-06-05 02:26:05
[2026-06-05 02:26:05,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:26:05,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:26:05,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:26:05,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:26:06,029.029 INFO    ] time= 05/06/2026 02:26:05
[2026-06-05 02:26:06,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:26:06,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:26:06,251.251 INFO    ] No existing commands found in stream
[2026-06-05 02:26:11,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:26:11,272.272 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 02:26:14,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:26:14,810.810 INFO    ] Checking for system updates...
[2026-06-05 02:26:14,851.851 INFO    ] 200
[2026-06-05 02:26:14,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:14,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:26:14,915.915 INFO    ] No update needed
[2026-06-05 02:26:14,918.918 INFO    ] Checking for camera pi updates...
[2026-06-05 02:26:14,952.952 INFO    ] 200
[2026-06-05 02:26:14,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:14,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:26:15,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:26:15,049.049 INFO    ] No camera update needed
[2026-06-05 02:26:15,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:26:15,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:26:15,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:26:15,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:26:17,104.104 INFO    ] ================================================
[2026-06-05 02:26:17,119.119 INFO    ] Launching Daemon at Fri Jun  5 02:26:17 IST 2026
[2026-06-05 02:26:17,130.130 INFO    ] ================================================
[2026-06-05 02:26:17,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:26:17
[2026-06-05 02:26:18,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:26:18,590.590 INFO    ] Initializing speech engine...
[2026-06-05 02:26:18,596.596 INFO    ] 2026-06-05 02:26:18
[2026-06-05 02:26:18,857.857 INFO    ] 2026-06-05 02:26:18
[2026-06-05 02:26:18,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:26:19,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:26:19,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:26:19,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:26:19,323.323 INFO    ] time= 05/06/2026 02:26:19
[2026-06-05 02:26:19,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:26:19,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:26:19,464.464 INFO    ] No existing commands found in stream
[2026-06-05 02:26:24,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:26:24,479.479 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 02:26:28,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:26:28,772.772 INFO    ] Checking for system updates...
[2026-06-05 02:26:28,812.812 INFO    ] 200
[2026-06-05 02:26:28,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:28,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:26:28,876.876 INFO    ] No update needed
[2026-06-05 02:26:28,879.879 INFO    ] Checking for camera pi updates...
[2026-06-05 02:26:28,916.916 INFO    ] 200
[2026-06-05 02:26:28,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:28,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:26:29,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:26:29,011.011 INFO    ] No camera update needed
[2026-06-05 02:26:29,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:26:29,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:26:29,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:26:29,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:26:31,070.070 INFO    ] ================================================
[2026-06-05 02:26:31,091.091 INFO    ] Launching Daemon at Fri Jun  5 02:26:31 IST 2026
[2026-06-05 02:26:31,102.102 INFO    ] ================================================
[2026-06-05 02:26:31,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:26:31
[2026-06-05 02:26:32,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:26:32,780.780 INFO    ] Initializing speech engine...
[2026-06-05 02:26:32,792.792 INFO    ] 2026-06-05 02:26:32
[2026-06-05 02:26:33,073.073 INFO    ] 2026-06-05 02:26:33
[2026-06-05 02:26:33,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:26:33,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:26:33,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:26:33,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:26:33,579.579 INFO    ] time= 05/06/2026 02:26:33
[2026-06-05 02:26:33,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:26:33,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:26:33,742.742 INFO    ] No existing commands found in stream
[2026-06-05 02:26:38,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:26:38,765.765 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 02:26:43,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:26:43,006.006 INFO    ] Checking for system updates...
[2026-06-05 02:26:43,043.043 INFO    ] 200
[2026-06-05 02:26:43,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:43,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:26:43,108.108 INFO    ] No update needed
[2026-06-05 02:26:43,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 02:26:43,145.145 INFO    ] 200
[2026-06-05 02:26:43,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:43,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:26:43,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:26:43,242.242 INFO    ] No camera update needed
[2026-06-05 02:26:43,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:26:43,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:26:43,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:26:43,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:26:45,298.298 INFO    ] ================================================
[2026-06-05 02:26:45,313.313 INFO    ] Launching Daemon at Fri Jun  5 02:26:45 IST 2026
[2026-06-05 02:26:45,323.323 INFO    ] ================================================
[2026-06-05 02:26:45,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:26:45
[2026-06-05 02:26:46,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:26:46,868.868 INFO    ] Initializing speech engine...
[2026-06-05 02:26:46,882.882 INFO    ] 2026-06-05 02:26:46
[2026-06-05 02:26:47,136.136 INFO    ] 2026-06-05 02:26:47
[2026-06-05 02:26:47,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:26:47,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:26:47,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:26:47,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:26:47,599.599 INFO    ] time= 05/06/2026 02:26:47
[2026-06-05 02:26:47,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:26:47,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:26:47,795.795 INFO    ] No existing commands found in stream
[2026-06-05 02:26:52,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:26:52,835.835 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 02:26:54,932.932 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:26:54,934.934 INFO    ] Checking for system updates...
[2026-06-05 02:26:54,974.974 INFO    ] 200
[2026-06-05 02:26:54,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:55,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:26:55,038.038 INFO    ] No update needed
[2026-06-05 02:26:55,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 02:26:55,077.077 INFO    ] 200
[2026-06-05 02:26:55,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:26:55,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:26:55,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:26:55,182.182 INFO    ] No camera update needed
[2026-06-05 02:26:55,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:26:55,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:26:55,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:26:55,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:26:57,237.237 INFO    ] ================================================
[2026-06-05 02:26:57,252.252 INFO    ] Launching Daemon at Fri Jun  5 02:26:57 IST 2026
[2026-06-05 02:26:57,263.263 INFO    ] ================================================
[2026-06-05 02:26:57,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:26:57
[2026-06-05 02:26:58,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:26:58,767.767 INFO    ] Initializing speech engine...
[2026-06-05 02:26:58,772.772 INFO    ] 2026-06-05 02:26:58
[2026-06-05 02:26:59,022.022 INFO    ] 2026-06-05 02:26:59
[2026-06-05 02:26:59,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:26:59,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:26:59,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:26:59,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:26:59,506.506 INFO    ] time= 05/06/2026 02:26:59
[2026-06-05 02:26:59,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:26:59,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:26:59,651.651 INFO    ] No existing commands found in stream
[2026-06-05 02:27:04,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:27:04,666.666 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 02:27:08,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:27:08,288.288 INFO    ] Checking for system updates...
[2026-06-05 02:27:08,328.328 INFO    ] 200
[2026-06-05 02:27:08,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:08,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:27:08,392.392 INFO    ] No update needed
[2026-06-05 02:27:08,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 02:27:08,432.432 INFO    ] 200
[2026-06-05 02:27:08,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:08,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:27:08,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:27:08,527.527 INFO    ] No camera update needed
[2026-06-05 02:27:08,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:27:08,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:27:08,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:27:08,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:27:10,584.584 INFO    ] ================================================
[2026-06-05 02:27:10,600.600 INFO    ] Launching Daemon at Fri Jun  5 02:27:10 IST 2026
[2026-06-05 02:27:10,610.610 INFO    ] ================================================
[2026-06-05 02:27:11,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:27:11
[2026-06-05 02:27:11,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:27:12,247.247 INFO    ] Initializing speech engine...
[2026-06-05 02:27:12,261.261 INFO    ] 2026-06-05 02:27:12
[2026-06-05 02:27:12,551.551 INFO    ] 2026-06-05 02:27:12
[2026-06-05 02:27:12,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:27:12,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:27:12,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:27:12,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:27:13,019.019 INFO    ] time= 05/06/2026 02:27:12
[2026-06-05 02:27:13,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:27:13,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:27:13,162.162 INFO    ] No existing commands found in stream
[2026-06-05 02:27:18,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:27:18,179.179 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 02:27:19,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:27:19,166.166 INFO    ] Checking for system updates...
[2026-06-05 02:27:19,208.208 INFO    ] 200
[2026-06-05 02:27:19,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:19,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:27:19,268.268 INFO    ] No update needed
[2026-06-05 02:27:19,270.270 INFO    ] Checking for camera pi updates...
[2026-06-05 02:27:19,309.309 INFO    ] 200
[2026-06-05 02:27:19,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:19,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:27:19,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:27:19,415.415 INFO    ] No camera update needed
[2026-06-05 02:27:19,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:27:19,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:27:19,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:27:19,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:27:21,474.474 INFO    ] ================================================
[2026-06-05 02:27:21,489.489 INFO    ] Launching Daemon at Fri Jun  5 02:27:21 IST 2026
[2026-06-05 02:27:21,500.500 INFO    ] ================================================
[2026-06-05 02:27:22,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:27:22
[2026-06-05 02:27:22,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:27:22,901.901 INFO    ] Initializing speech engine...
[2026-06-05 02:27:22,916.916 INFO    ] 2026-06-05 02:27:22
[2026-06-05 02:27:23,181.181 INFO    ] 2026-06-05 02:27:23
[2026-06-05 02:27:23,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:27:23,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:27:23,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:27:23,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:27:23,552.552 INFO    ] time= 05/06/2026 02:27:23
[2026-06-05 02:27:23,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:27:23,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:27:23,633.633 INFO    ] No existing commands found in stream
[2026-06-05 02:27:28,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:27:28,648.648 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 02:27:31,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:27:31,295.295 INFO    ] Checking for system updates...
[2026-06-05 02:27:31,335.335 INFO    ] 200
[2026-06-05 02:27:31,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:31,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:27:31,399.399 INFO    ] No update needed
[2026-06-05 02:27:31,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 02:27:31,439.439 INFO    ] 200
[2026-06-05 02:27:31,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:31,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:27:31,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:27:31,531.531 INFO    ] No camera update needed
[2026-06-05 02:27:31,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:27:31,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:27:31,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:27:31,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:27:33,589.589 INFO    ] ================================================
[2026-06-05 02:27:33,604.604 INFO    ] Launching Daemon at Fri Jun  5 02:27:33 IST 2026
[2026-06-05 02:27:33,615.615 INFO    ] ================================================
[2026-06-05 02:27:34,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:27:34
[2026-06-05 02:27:34,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:27:35,026.026 INFO    ] Initializing speech engine...
[2026-06-05 02:27:35,033.033 INFO    ] 2026-06-05 02:27:35
[2026-06-05 02:27:35,305.305 INFO    ] 2026-06-05 02:27:35
[2026-06-05 02:27:35,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:27:35,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:27:35,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:27:35,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:27:35,683.683 INFO    ] time= 05/06/2026 02:27:35
[2026-06-05 02:27:35,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:27:35,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:27:35,868.868 INFO    ] No existing commands found in stream
[2026-06-05 02:27:40,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:27:40,897.897 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 02:27:44,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:27:44,980.980 INFO    ] Checking for system updates...
[2026-06-05 02:27:45,019.019 INFO    ] 200
[2026-06-05 02:27:45,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:45,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:27:45,082.082 INFO    ] No update needed
[2026-06-05 02:27:45,084.084 INFO    ] Checking for camera pi updates...
[2026-06-05 02:27:45,121.121 INFO    ] 200
[2026-06-05 02:27:45,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:45,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:27:45,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:27:45,221.221 INFO    ] No camera update needed
[2026-06-05 02:27:45,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:27:45,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:27:45,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:27:45,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:27:47,277.277 INFO    ] ================================================
[2026-06-05 02:27:47,292.292 INFO    ] Launching Daemon at Fri Jun  5 02:27:47 IST 2026
[2026-06-05 02:27:47,303.303 INFO    ] ================================================
[2026-06-05 02:27:47,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:27:47
[2026-06-05 02:27:48,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:27:48,722.722 INFO    ] Initializing speech engine...
[2026-06-05 02:27:48,742.742 INFO    ] 2026-06-05 02:27:48
[2026-06-05 02:27:48,997.997 INFO    ] 2026-06-05 02:27:48
[2026-06-05 02:27:49,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:27:49,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:27:49,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:27:49,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:27:49,374.374 INFO    ] time= 05/06/2026 02:27:49
[2026-06-05 02:27:49,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:27:49,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:27:49,451.451 INFO    ] No existing commands found in stream
[2026-06-05 02:27:54,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:27:54,463.463 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 02:27:55,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:27:55,149.149 INFO    ] Checking for system updates...
[2026-06-05 02:27:55,188.188 INFO    ] 200
[2026-06-05 02:27:55,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:55,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:27:55,246.246 INFO    ] No update needed
[2026-06-05 02:27:55,248.248 INFO    ] Checking for camera pi updates...
[2026-06-05 02:27:55,281.281 INFO    ] 200
[2026-06-05 02:27:55,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:27:55,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:27:55,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:27:55,475.475 INFO    ] No camera update needed
[2026-06-05 02:27:55,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:27:55,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:27:55,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:27:55,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:27:57,532.532 INFO    ] ================================================
[2026-06-05 02:27:57,547.547 INFO    ] Launching Daemon at Fri Jun  5 02:27:57 IST 2026
[2026-06-05 02:27:57,557.557 INFO    ] ================================================
[2026-06-05 02:27:58,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:27:58
[2026-06-05 02:27:58,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:27:58,980.980 INFO    ] Initializing speech engine...
[2026-06-05 02:27:58,992.992 INFO    ] 2026-06-05 02:27:58
[2026-06-05 02:27:59,259.259 INFO    ] 2026-06-05 02:27:59
[2026-06-05 02:27:59,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:27:59,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:27:59,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:27:59,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:27:59,642.642 INFO    ] time= 05/06/2026 02:27:59
[2026-06-05 02:27:59,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:27:59,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:27:59,839.839 INFO    ] No existing commands found in stream
[2026-06-05 02:28:04,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:28:04,852.852 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 02:28:09,140.140 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:28:09,142.142 INFO    ] Checking for system updates...
[2026-06-05 02:28:09,182.182 INFO    ] 200
[2026-06-05 02:28:09,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:09,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:28:09,244.244 INFO    ] No update needed
[2026-06-05 02:28:09,247.247 INFO    ] Checking for camera pi updates...
[2026-06-05 02:28:09,281.281 INFO    ] 200
[2026-06-05 02:28:09,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:09,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:28:09,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:28:09,383.383 INFO    ] No camera update needed
[2026-06-05 02:28:09,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:28:09,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:28:09,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:28:09,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:28:11,442.442 INFO    ] ================================================
[2026-06-05 02:28:11,457.457 INFO    ] Launching Daemon at Fri Jun  5 02:28:11 IST 2026
[2026-06-05 02:28:11,468.468 INFO    ] ================================================
[2026-06-05 02:28:12,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:28:12
[2026-06-05 02:28:12,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:28:12,881.881 INFO    ] Initializing speech engine...
[2026-06-05 02:28:12,904.904 INFO    ] 2026-06-05 02:28:12
[2026-06-05 02:28:13,163.163 INFO    ] 2026-06-05 02:28:13
[2026-06-05 02:28:13,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:28:13,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:28:13,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:28:13,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:28:13,642.642 INFO    ] time= 05/06/2026 02:28:13
[2026-06-05 02:28:13,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:28:13,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:28:13,805.805 INFO    ] No existing commands found in stream
[2026-06-05 02:28:18,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:28:18,845.845 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 02:28:20,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:28:20,156.156 INFO    ] Checking for system updates...
[2026-06-05 02:28:20,195.195 INFO    ] 200
[2026-06-05 02:28:20,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:20,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:28:20,258.258 INFO    ] No update needed
[2026-06-05 02:28:20,260.260 INFO    ] Checking for camera pi updates...
[2026-06-05 02:28:20,298.298 INFO    ] 200
[2026-06-05 02:28:20,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:20,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:28:20,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:28:20,391.391 INFO    ] No camera update needed
[2026-06-05 02:28:20,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:28:20,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:28:20,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:28:20,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:28:22,449.449 INFO    ] ================================================
[2026-06-05 02:28:22,464.464 INFO    ] Launching Daemon at Fri Jun  5 02:28:22 IST 2026
[2026-06-05 02:28:22,475.475 INFO    ] ================================================
[2026-06-05 02:28:23,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:28:23
[2026-06-05 02:28:23,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:28:24,086.086 INFO    ] Initializing speech engine...
[2026-06-05 02:28:24,094.094 INFO    ] 2026-06-05 02:28:24
[2026-06-05 02:28:24,383.383 INFO    ] 2026-06-05 02:28:24
[2026-06-05 02:28:24,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:28:24,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:28:24,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:28:24,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:28:24,874.874 INFO    ] time= 05/06/2026 02:28:24
[2026-06-05 02:28:24,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:28:24,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:28:25,059.059 INFO    ] No existing commands found in stream
[2026-06-05 02:28:30,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:28:30,095.095 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 02:28:33,275.275 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:28:33,278.278 INFO    ] Checking for system updates...
[2026-06-05 02:28:33,315.315 INFO    ] 200
[2026-06-05 02:28:33,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:33,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:28:33,376.376 INFO    ] No update needed
[2026-06-05 02:28:33,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 02:28:33,417.417 INFO    ] 200
[2026-06-05 02:28:33,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:33,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:28:33,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:28:33,519.519 INFO    ] No camera update needed
[2026-06-05 02:28:33,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:28:33,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:28:33,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:28:33,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:28:35,577.577 INFO    ] ================================================
[2026-06-05 02:28:35,592.592 INFO    ] Launching Daemon at Fri Jun  5 02:28:35 IST 2026
[2026-06-05 02:28:35,604.604 INFO    ] ================================================
[2026-06-05 02:28:36,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:28:36
[2026-06-05 02:28:36,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:28:37,298.298 INFO    ] Initializing speech engine...
[2026-06-05 02:28:37,312.312 INFO    ] 2026-06-05 02:28:37
[2026-06-05 02:28:37,600.600 INFO    ] 2026-06-05 02:28:37
[2026-06-05 02:28:37,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:28:37,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:28:37,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:28:37,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:28:37,975.975 INFO    ] time= 05/06/2026 02:28:37
[2026-06-05 02:28:37,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:28:38,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:28:38,128.128 INFO    ] No existing commands found in stream
[2026-06-05 02:28:43,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:28:43,161.161 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 02:28:47,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:28:47,286.286 INFO    ] Checking for system updates...
[2026-06-05 02:28:47,321.321 INFO    ] 200
[2026-06-05 02:28:47,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:47,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:28:47,384.384 INFO    ] No update needed
[2026-06-05 02:28:47,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 02:28:47,424.424 INFO    ] 200
[2026-06-05 02:28:47,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:47,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:28:47,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:28:47,521.521 INFO    ] No camera update needed
[2026-06-05 02:28:47,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:28:47,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:28:47,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:28:47,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:28:49,576.576 INFO    ] ================================================
[2026-06-05 02:28:49,591.591 INFO    ] Launching Daemon at Fri Jun  5 02:28:49 IST 2026
[2026-06-05 02:28:49,602.602 INFO    ] ================================================
[2026-06-05 02:28:50,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:28:50
[2026-06-05 02:28:50,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:28:51,058.058 INFO    ] Initializing speech engine...
[2026-06-05 02:28:51,068.068 INFO    ] 2026-06-05 02:28:51
[2026-06-05 02:28:51,317.317 INFO    ] 2026-06-05 02:28:51
[2026-06-05 02:28:51,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:28:51,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:28:51,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:28:51,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:28:51,794.794 INFO    ] time= 05/06/2026 02:28:51
[2026-06-05 02:28:51,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:28:51,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:28:51,998.998 INFO    ] No existing commands found in stream
[2026-06-05 02:28:57,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:28:57,029.029 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 02:28:59,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:28:59,028.028 INFO    ] Checking for system updates...
[2026-06-05 02:28:59,069.069 INFO    ] 200
[2026-06-05 02:28:59,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:59,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:28:59,135.135 INFO    ] No update needed
[2026-06-05 02:28:59,138.138 INFO    ] Checking for camera pi updates...
[2026-06-05 02:28:59,173.173 INFO    ] 200
[2026-06-05 02:28:59,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:28:59,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:28:59,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:28:59,269.269 INFO    ] No camera update needed
[2026-06-05 02:28:59,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:28:59,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:28:59,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:28:59,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:29:01,331.331 INFO    ] ================================================
[2026-06-05 02:29:01,346.346 INFO    ] Launching Daemon at Fri Jun  5 02:29:01 IST 2026
[2026-06-05 02:29:01,357.357 INFO    ] ================================================
[2026-06-05 02:29:02,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:29:02
[2026-06-05 02:29:02,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:29:03,047.047 INFO    ] Initializing speech engine...
[2026-06-05 02:29:03,063.063 INFO    ] 2026-06-05 02:29:03
[2026-06-05 02:29:03,332.332 INFO    ] 2026-06-05 02:29:03
[2026-06-05 02:29:03,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:29:03,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:29:03,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:29:03,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:29:03,709.709 INFO    ] time= 05/06/2026 02:29:03
[2026-06-05 02:29:03,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:29:03,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:29:03,849.849 INFO    ] No existing commands found in stream
[2026-06-05 02:29:08,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:29:08,862.862 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 02:29:11,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:29:11,620.620 INFO    ] Checking for system updates...
[2026-06-05 02:29:11,661.661 INFO    ] 200
[2026-06-05 02:29:11,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:11,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:29:11,726.726 INFO    ] No update needed
[2026-06-05 02:29:11,728.728 INFO    ] Checking for camera pi updates...
[2026-06-05 02:29:11,766.766 INFO    ] 200
[2026-06-05 02:29:11,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:11,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:29:11,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:29:11,860.860 INFO    ] No camera update needed
[2026-06-05 02:29:11,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:29:11,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:29:11,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:29:11,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:29:13,917.917 INFO    ] ================================================
[2026-06-05 02:29:13,932.932 INFO    ] Launching Daemon at Fri Jun  5 02:29:13 IST 2026
[2026-06-05 02:29:13,943.943 INFO    ] ================================================
[2026-06-05 02:29:14,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:29:14
[2026-06-05 02:29:15,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:29:15,363.363 INFO    ] Initializing speech engine...
[2026-06-05 02:29:15,372.372 INFO    ] 2026-06-05 02:29:15
[2026-06-05 02:29:15,618.618 INFO    ] 2026-06-05 02:29:15
[2026-06-05 02:29:15,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:29:15,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:29:15,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:29:15,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:29:15,986.986 INFO    ] time= 05/06/2026 02:29:15
[2026-06-05 02:29:15,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:29:16,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:29:16,156.156 INFO    ] No existing commands found in stream
[2026-06-05 02:29:21,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:29:21,189.189 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 02:29:23,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:29:23,798.798 INFO    ] Checking for system updates...
[2026-06-05 02:29:23,839.839 INFO    ] 200
[2026-06-05 02:29:23,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:23,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:29:23,904.904 INFO    ] No update needed
[2026-06-05 02:29:23,907.907 INFO    ] Checking for camera pi updates...
[2026-06-05 02:29:23,949.949 INFO    ] 200
[2026-06-05 02:29:23,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:23,998.998 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:29:24,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:29:24,048.048 INFO    ] No camera update needed
[2026-06-05 02:29:24,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:29:24,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:29:24,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:29:24,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:29:26,104.104 INFO    ] ================================================
[2026-06-05 02:29:26,121.121 INFO    ] Launching Daemon at Fri Jun  5 02:29:26 IST 2026
[2026-06-05 02:29:26,132.132 INFO    ] ================================================
[2026-06-05 02:29:26,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:29:26
[2026-06-05 02:29:27,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:29:27,540.540 INFO    ] Initializing speech engine...
[2026-06-05 02:29:27,552.552 INFO    ] 2026-06-05 02:29:27
[2026-06-05 02:29:27,819.819 INFO    ] 2026-06-05 02:29:27
[2026-06-05 02:29:27,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:29:28,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:29:28,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:29:28,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:29:28,203.203 INFO    ] time= 05/06/2026 02:29:28
[2026-06-05 02:29:28,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:29:28,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:29:28,316.316 INFO    ] No existing commands found in stream
[2026-06-05 02:29:33,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:29:33,329.329 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 02:29:34,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:29:34,828.828 INFO    ] Checking for system updates...
[2026-06-05 02:29:34,864.864 INFO    ] 200
[2026-06-05 02:29:34,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:34,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:29:34,921.921 INFO    ] No update needed
[2026-06-05 02:29:34,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 02:29:34,958.958 INFO    ] 200
[2026-06-05 02:29:34,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:35,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:29:35,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:29:35,054.054 INFO    ] No camera update needed
[2026-06-05 02:29:35,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:29:35,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:29:35,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:29:35,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:29:37,109.109 INFO    ] ================================================
[2026-06-05 02:29:37,125.125 INFO    ] Launching Daemon at Fri Jun  5 02:29:37 IST 2026
[2026-06-05 02:29:37,138.138 INFO    ] ================================================
[2026-06-05 02:29:37,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:29:37
[2026-06-05 02:29:38,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:29:38,544.544 INFO    ] Initializing speech engine...
[2026-06-05 02:29:38,567.567 INFO    ] 2026-06-05 02:29:38
[2026-06-05 02:29:38,819.819 INFO    ] 2026-06-05 02:29:38
[2026-06-05 02:29:38,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:29:39,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:29:39,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:29:39,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:29:39,167.167 INFO    ] time= 05/06/2026 02:29:39
[2026-06-05 02:29:39,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:29:39,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:29:39,261.261 INFO    ] No existing commands found in stream
[2026-06-05 02:29:44,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:29:44,276.276 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 02:29:45,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:29:45,861.861 INFO    ] Checking for system updates...
[2026-06-05 02:29:45,897.897 INFO    ] 200
[2026-06-05 02:29:45,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:45,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:29:45,963.963 INFO    ] No update needed
[2026-06-05 02:29:45,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 02:29:46,003.003 INFO    ] 200
[2026-06-05 02:29:46,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:46,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:29:46,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:29:46,098.098 INFO    ] No camera update needed
[2026-06-05 02:29:46,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:29:46,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:29:46,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:29:46,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:29:48,155.155 INFO    ] ================================================
[2026-06-05 02:29:48,172.172 INFO    ] Launching Daemon at Fri Jun  5 02:29:48 IST 2026
[2026-06-05 02:29:48,183.183 INFO    ] ================================================
[2026-06-05 02:29:48,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:29:48
[2026-06-05 02:29:49,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:29:49,633.633 INFO    ] Initializing speech engine...
[2026-06-05 02:29:49,640.640 INFO    ] 2026-06-05 02:29:49
[2026-06-05 02:29:49,900.900 INFO    ] 2026-06-05 02:29:49
[2026-06-05 02:29:49,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:29:50,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:29:50,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:29:50,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:29:50,399.399 INFO    ] time= 05/06/2026 02:29:50
[2026-06-05 02:29:50,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:29:50,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:29:50,568.568 INFO    ] No existing commands found in stream
[2026-06-05 02:29:55,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:29:55,602.602 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 02:29:59,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:29:59,129.129 INFO    ] Checking for system updates...
[2026-06-05 02:29:59,165.165 INFO    ] 200
[2026-06-05 02:29:59,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:59,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:29:59,240.240 INFO    ] No update needed
[2026-06-05 02:29:59,242.242 INFO    ] Checking for camera pi updates...
[2026-06-05 02:29:59,280.280 INFO    ] 200
[2026-06-05 02:29:59,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:29:59,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:29:59,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:29:59,477.477 INFO    ] No camera update needed
[2026-06-05 02:29:59,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:29:59,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:29:59,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:29:59,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:30:01,534.534 INFO    ] ================================================
[2026-06-05 02:30:01,558.558 INFO    ] Launching Daemon at Fri Jun  5 02:30:01 IST 2026
[2026-06-05 02:30:01,593.593 INFO    ] ================================================
[2026-06-05 02:30:03,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:30:03
[2026-06-05 02:30:04,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:30:04,309.309 INFO    ] Initializing speech engine...
[2026-06-05 02:30:04,318.318 INFO    ] 2026-06-05 02:30:04
[2026-06-05 02:30:04,570.570 INFO    ] 2026-06-05 02:30:04
[2026-06-05 02:30:04,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:30:04,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:30:04,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:30:05,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:30:05,052.052 INFO    ] time= 05/06/2026 02:30:05
[2026-06-05 02:30:05,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:30:05,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:30:05,191.191 INFO    ] No existing commands found in stream
[2026-06-05 02:30:10,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:30:10,207.207 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 02:30:10,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:30:10,690.690 INFO    ] Checking for system updates...
[2026-06-05 02:30:10,730.730 INFO    ] 200
[2026-06-05 02:30:10,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:30:10,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:30:10,788.788 INFO    ] No update needed
[2026-06-05 02:30:10,790.790 INFO    ] Checking for camera pi updates...
[2026-06-05 02:30:10,831.831 INFO    ] 200
[2026-06-05 02:30:10,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:30:10,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:30:10,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:30:10,930.930 INFO    ] No camera update needed
[2026-06-05 02:30:10,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:30:10,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:30:10,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:30:10,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:30:12,985.985 INFO    ] ================================================
[2026-06-05 02:30:13,001.001 INFO    ] Launching Daemon at Fri Jun  5 02:30:12 IST 2026
[2026-06-05 02:30:13,012.012 INFO    ] ================================================
[2026-06-05 02:30:13,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:30:13
[2026-06-05 02:30:14,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:30:14,443.443 INFO    ] Initializing speech engine...
[2026-06-05 02:30:14,453.453 INFO    ] 2026-06-05 02:30:14
[2026-06-05 02:30:14,699.699 INFO    ] 2026-06-05 02:30:14
[2026-06-05 02:30:14,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:30:14,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:30:14,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:30:15,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:30:15,069.069 INFO    ] time= 05/06/2026 02:30:15
[2026-06-05 02:30:15,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:30:15,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:30:15,251.251 INFO    ] No existing commands found in stream
[2026-06-05 02:30:20,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:30:20,279.279 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 02:30:21,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:30:21,134.134 INFO    ] Checking for system updates...
[2026-06-05 02:30:21,171.171 INFO    ] 200
[2026-06-05 02:30:21,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:30:21,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:30:21,239.239 INFO    ] No update needed
[2026-06-05 02:30:21,242.242 INFO    ] Checking for camera pi updates...
[2026-06-05 02:30:21,279.279 INFO    ] 200
[2026-06-05 02:30:21,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:30:21,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:30:21,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:30:21,379.379 INFO    ] No camera update needed
[2026-06-05 02:30:21,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:30:21,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:30:21,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:30:21,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:30:23,437.437 INFO    ] ================================================
[2026-06-05 02:30:23,453.453 INFO    ] Launching Daemon at Fri Jun  5 02:30:23 IST 2026
[2026-06-05 02:30:23,464.464 INFO    ] ================================================
[2026-06-05 02:30:24,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:30:24
[2026-06-05 02:30:24,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:30:24,915.915 INFO    ] Initializing speech engine...
[2026-06-05 02:30:24,931.931 INFO    ] 2026-06-05 02:30:24
[2026-06-05 02:30:25,207.207 INFO    ] 2026-06-05 02:30:25
[2026-06-05 02:30:25,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:30:25,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:30:25,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:30:25,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:30:25,589.589 INFO    ] time= 05/06/2026 02:30:25
[2026-06-05 02:30:25,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:30:25,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:30:25,717.717 INFO    ] No existing commands found in stream
[2026-06-05 02:30:30,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:30:30,733.733 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 02:30:31,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:30:31,241.241 INFO    ] Checking for system updates...
[2026-06-05 02:30:31,285.285 INFO    ] 200
[2026-06-05 02:30:31,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:30:31,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:30:31,343.343 INFO    ] No update needed
[2026-06-05 02:30:31,346.346 INFO    ] Checking for camera pi updates...
[2026-06-05 02:30:31,383.383 INFO    ] 200
[2026-06-05 02:30:31,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:30:31,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:30:31,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:30:31,486.486 INFO    ] No camera update needed
[2026-06-05 02:30:31,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:30:31,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:30:31,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:30:31,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:30:33,546.546 INFO    ] ================================================
[2026-06-05 02:30:33,561.561 INFO    ] Launching Daemon at Fri Jun  5 02:30:33 IST 2026
[2026-06-05 02:30:33,573.573 INFO    ] ================================================
[2026-06-05 02:30:34,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:30:34
[2026-06-05 02:30:34,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:30:34,993.993 INFO    ] Initializing speech engine...
[2026-06-05 02:30:35,002.002 INFO    ] 2026-06-05 02:30:34
[2026-06-05 02:30:35,299.299 INFO    ] 2026-06-05 02:30:35
[2026-06-05 02:30:35,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:30:35,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:30:35,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:30:35,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:30:35,683.683 INFO    ] time= 05/06/2026 02:30:35
[2026-06-05 02:30:35,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:30:35,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:30:35,814.814 INFO    ] No existing commands found in stream
[2026-06-05 02:30:40,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:30:40,829.829 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 02:30:41,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:30:41,671.671 INFO    ] Checking for system updates...
[2026-06-05 02:30:41,715.715 INFO    ] 200
[2026-06-05 02:30:41,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 02:30:41,721.721 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 02:30:41,724.724 INFO    ] Checking for camera pi updates...
[2026-06-05 02:30:41,779.779 INFO    ] 200
[2026-06-05 02:30:41,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 02:30:41,785.785 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 02:30:41,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:30:41,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:30:41,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:30:41,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:30:43,847.847 INFO    ] ================================================
[2026-06-05 02:30:43,873.873 INFO    ] Launching Daemon at Fri Jun  5 02:30:43 IST 2026
[2026-06-05 02:30:43,884.884 INFO    ] ================================================
[2026-06-05 02:30:44,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:30:44
[2026-06-05 02:30:45,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:30:45,307.307 INFO    ] Initializing speech engine...
[2026-06-05 02:30:45,325.325 INFO    ] 2026-06-05 02:30:45
[2026-06-05 02:30:45,573.573 INFO    ] 2026-06-05 02:30:45
[2026-06-05 02:30:45,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:30:45,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:30:45,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:30:46,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:30:46,012.012 INFO    ] time= 05/06/2026 02:30:46
[2026-06-05 02:30:46,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:30:46,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:30:46,192.192 INFO    ] No existing commands found in stream
[2026-06-05 02:30:51,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:30:51,208.208 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 02:30:51,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:30:51,795.795 INFO    ] Checking for system updates...
[2026-06-05 02:30:51,832.832 INFO    ] 200
[2026-06-05 02:30:51,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:30:51,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:30:51,890.890 INFO    ] No update needed
[2026-06-05 02:30:51,892.892 INFO    ] Checking for camera pi updates...
[2026-06-05 02:30:51,931.931 INFO    ] 200
[2026-06-05 02:30:51,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:30:51,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:30:52,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:30:52,038.038 INFO    ] No camera update needed
[2026-06-05 02:30:52,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:30:52,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:30:52,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:30:52,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:30:54,093.093 INFO    ] ================================================
[2026-06-05 02:30:54,109.109 INFO    ] Launching Daemon at Fri Jun  5 02:30:54 IST 2026
[2026-06-05 02:30:54,121.121 INFO    ] ================================================
[2026-06-05 02:30:54,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:30:54
[2026-06-05 02:30:55,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:30:55,807.807 INFO    ] Initializing speech engine...
[2026-06-05 02:30:55,819.819 INFO    ] 2026-06-05 02:30:55
[2026-06-05 02:30:56,133.133 INFO    ] 2026-06-05 02:30:56
[2026-06-05 02:30:56,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:30:56,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:30:56,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:30:56,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:30:56,559.559 INFO    ] time= 05/06/2026 02:30:56
[2026-06-05 02:30:56,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:30:56,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:30:56,800.800 INFO    ] No existing commands found in stream
[2026-06-05 02:31:01,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:31:01,822.822 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 02:31:04,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:31:04,217.217 INFO    ] Checking for system updates...
[2026-06-05 02:31:04,255.255 INFO    ] 200
[2026-06-05 02:31:04,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:04,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:31:04,322.322 INFO    ] No update needed
[2026-06-05 02:31:04,325.325 INFO    ] Checking for camera pi updates...
[2026-06-05 02:31:04,364.364 INFO    ] 200
[2026-06-05 02:31:04,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:04,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:31:04,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:31:04,448.448 INFO    ] No camera update needed
[2026-06-05 02:31:04,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:31:04,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:31:04,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:31:04,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:31:06,506.506 INFO    ] ================================================
[2026-06-05 02:31:06,522.522 INFO    ] Launching Daemon at Fri Jun  5 02:31:06 IST 2026
[2026-06-05 02:31:06,534.534 INFO    ] ================================================
[2026-06-05 02:31:07,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:31:07
[2026-06-05 02:31:07,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:31:07,966.966 INFO    ] Initializing speech engine...
[2026-06-05 02:31:07,981.981 INFO    ] 2026-06-05 02:31:07
[2026-06-05 02:31:08,246.246 INFO    ] 2026-06-05 02:31:08
[2026-06-05 02:31:08,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:31:08,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:31:08,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:31:08,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:31:08,709.709 INFO    ] time= 05/06/2026 02:31:08
[2026-06-05 02:31:08,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:31:08,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:31:08,913.913 INFO    ] No existing commands found in stream
[2026-06-05 02:31:13,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:31:13,926.926 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 02:31:16,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:31:16,032.032 INFO    ] Checking for system updates...
[2026-06-05 02:31:16,069.069 INFO    ] 200
[2026-06-05 02:31:16,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:16,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:31:16,136.136 INFO    ] No update needed
[2026-06-05 02:31:16,139.139 INFO    ] Checking for camera pi updates...
[2026-06-05 02:31:16,178.178 INFO    ] 200
[2026-06-05 02:31:16,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:16,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:31:16,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:31:16,281.281 INFO    ] No camera update needed
[2026-06-05 02:31:16,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:31:16,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:31:16,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:31:16,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:31:18,341.341 INFO    ] ================================================
[2026-06-05 02:31:18,357.357 INFO    ] Launching Daemon at Fri Jun  5 02:31:18 IST 2026
[2026-06-05 02:31:18,369.369 INFO    ] ================================================
[2026-06-05 02:31:18,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:31:18
[2026-06-05 02:31:19,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:31:19,959.959 INFO    ] Initializing speech engine...
[2026-06-05 02:31:19,970.970 INFO    ] 2026-06-05 02:31:19
[2026-06-05 02:31:20,214.214 INFO    ] 2026-06-05 02:31:20
[2026-06-05 02:31:20,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:31:20,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:31:20,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:31:20,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:31:20,584.584 INFO    ] time= 05/06/2026 02:31:20
[2026-06-05 02:31:20,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:31:20,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:31:20,787.787 INFO    ] No existing commands found in stream
[2026-06-05 02:31:25,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:31:25,802.802 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 02:31:28,448.448 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:31:28,450.450 INFO    ] Checking for system updates...
[2026-06-05 02:31:28,487.487 INFO    ] 200
[2026-06-05 02:31:28,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:28,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:31:28,553.553 INFO    ] No update needed
[2026-06-05 02:31:28,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 02:31:28,590.590 INFO    ] 200
[2026-06-05 02:31:28,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:28,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:31:28,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:31:28,688.688 INFO    ] No camera update needed
[2026-06-05 02:31:28,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:31:28,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:31:28,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:31:28,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:31:30,751.751 INFO    ] ================================================
[2026-06-05 02:31:30,767.767 INFO    ] Launching Daemon at Fri Jun  5 02:31:30 IST 2026
[2026-06-05 02:31:30,778.778 INFO    ] ================================================
[2026-06-05 02:31:31,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:31:31
[2026-06-05 02:31:32,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:31:32,362.362 INFO    ] Initializing speech engine...
[2026-06-05 02:31:32,371.371 INFO    ] 2026-06-05 02:31:32
[2026-06-05 02:31:32,682.682 INFO    ] 2026-06-05 02:31:32
[2026-06-05 02:31:32,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:31:32,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:31:32,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:31:33,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:31:33,151.151 INFO    ] time= 05/06/2026 02:31:33
[2026-06-05 02:31:33,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:31:33,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:31:33,285.285 INFO    ] No existing commands found in stream
[2026-06-05 02:31:38,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:31:38,298.298 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 02:31:42,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:31:42,377.377 INFO    ] Checking for system updates...
[2026-06-05 02:31:42,419.419 INFO    ] 200
[2026-06-05 02:31:42,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:42,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:31:42,484.484 INFO    ] No update needed
[2026-06-05 02:31:42,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 02:31:42,526.526 INFO    ] 200
[2026-06-05 02:31:42,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:42,574.574 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:31:42,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:31:42,622.622 INFO    ] No camera update needed
[2026-06-05 02:31:42,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:31:42,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:31:42,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:31:42,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:31:44,688.688 INFO    ] ================================================
[2026-06-05 02:31:44,704.704 INFO    ] Launching Daemon at Fri Jun  5 02:31:44 IST 2026
[2026-06-05 02:31:44,715.715 INFO    ] ================================================
[2026-06-05 02:31:45,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:31:45
[2026-06-05 02:31:46,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:31:46,367.367 INFO    ] Initializing speech engine...
[2026-06-05 02:31:46,373.373 INFO    ] 2026-06-05 02:31:46
[2026-06-05 02:31:46,660.660 INFO    ] 2026-06-05 02:31:46
[2026-06-05 02:31:46,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:31:46,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:31:46,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:31:47,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:31:47,131.131 INFO    ] time= 05/06/2026 02:31:47
[2026-06-05 02:31:47,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:31:47,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:31:47,259.259 INFO    ] No existing commands found in stream
[2026-06-05 02:31:52,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:31:52,276.276 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 02:31:54,758.758 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:31:54,761.761 INFO    ] Checking for system updates...
[2026-06-05 02:31:54,803.803 INFO    ] 200
[2026-06-05 02:31:54,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:54,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:31:54,869.869 INFO    ] No update needed
[2026-06-05 02:31:54,872.872 INFO    ] Checking for camera pi updates...
[2026-06-05 02:31:54,910.910 INFO    ] 200
[2026-06-05 02:31:54,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:31:54,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:31:55,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:31:55,015.015 INFO    ] No camera update needed
[2026-06-05 02:31:55,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:31:55,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:31:55,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:31:55,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:31:57,070.070 INFO    ] ================================================
[2026-06-05 02:31:57,088.088 INFO    ] Launching Daemon at Fri Jun  5 02:31:57 IST 2026
[2026-06-05 02:31:57,099.099 INFO    ] ================================================
[2026-06-05 02:31:57,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:31:57
[2026-06-05 02:31:58,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:31:58,787.787 INFO    ] Initializing speech engine...
[2026-06-05 02:31:58,799.799 INFO    ] 2026-06-05 02:31:58
[2026-06-05 02:31:59,089.089 INFO    ] 2026-06-05 02:31:59
[2026-06-05 02:31:59,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:31:59,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:31:59,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:31:59,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:31:59,587.587 INFO    ] time= 05/06/2026 02:31:59
[2026-06-05 02:31:59,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:31:59,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:31:59,772.772 INFO    ] No existing commands found in stream
[2026-06-05 02:32:04,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:32:04,809.809 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 02:32:07,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:32:07,449.449 INFO    ] Checking for system updates...
[2026-06-05 02:32:07,490.490 INFO    ] 200
[2026-06-05 02:32:07,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:07,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:32:07,555.555 INFO    ] No update needed
[2026-06-05 02:32:07,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 02:32:07,596.596 INFO    ] 200
[2026-06-05 02:32:07,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:07,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:32:07,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:32:07,695.695 INFO    ] No camera update needed
[2026-06-05 02:32:07,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:32:07,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:32:07,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:32:07,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:32:09,749.749 INFO    ] ================================================
[2026-06-05 02:32:09,765.765 INFO    ] Launching Daemon at Fri Jun  5 02:32:09 IST 2026
[2026-06-05 02:32:09,776.776 INFO    ] ================================================
[2026-06-05 02:32:10,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:32:10
[2026-06-05 02:32:10,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:32:11,225.225 INFO    ] Initializing speech engine...
[2026-06-05 02:32:11,232.232 INFO    ] 2026-06-05 02:32:11
[2026-06-05 02:32:11,530.530 INFO    ] 2026-06-05 02:32:11
[2026-06-05 02:32:11,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:32:11,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:32:11,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:32:11,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:32:11,918.918 INFO    ] time= 05/06/2026 02:32:11
[2026-06-05 02:32:11,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:32:11,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:32:12,046.046 INFO    ] No existing commands found in stream
[2026-06-05 02:32:17,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:32:17,059.059 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 02:32:20,331.331 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:32:20,334.334 INFO    ] Checking for system updates...
[2026-06-05 02:32:20,374.374 INFO    ] 200
[2026-06-05 02:32:20,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:20,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:32:20,440.440 INFO    ] No update needed
[2026-06-05 02:32:20,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 02:32:20,476.476 INFO    ] 200
[2026-06-05 02:32:20,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:20,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:32:20,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:32:20,583.583 INFO    ] No camera update needed
[2026-06-05 02:32:20,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:32:20,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:32:20,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:32:20,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:32:22,638.638 INFO    ] ================================================
[2026-06-05 02:32:22,654.654 INFO    ] Launching Daemon at Fri Jun  5 02:32:22 IST 2026
[2026-06-05 02:32:22,664.664 INFO    ] ================================================
[2026-06-05 02:32:23,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:32:23
[2026-06-05 02:32:23,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:32:24,102.102 INFO    ] Initializing speech engine...
[2026-06-05 02:32:24,111.111 INFO    ] 2026-06-05 02:32:24
[2026-06-05 02:32:24,362.362 INFO    ] 2026-06-05 02:32:24
[2026-06-05 02:32:24,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:32:24,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:32:24,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:32:24,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:32:24,855.855 INFO    ] time= 05/06/2026 02:32:24
[2026-06-05 02:32:24,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:32:24,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:32:24,994.994 INFO    ] No existing commands found in stream
[2026-06-05 02:32:30,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:32:30,009.009 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 02:32:32,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:32:32,994.994 INFO    ] Checking for system updates...
[2026-06-05 02:32:33,039.039 INFO    ] 200
[2026-06-05 02:32:33,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:33,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:32:33,109.109 INFO    ] No update needed
[2026-06-05 02:32:33,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 02:32:33,152.152 INFO    ] 200
[2026-06-05 02:32:33,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:33,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:32:33,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:32:33,260.260 INFO    ] No camera update needed
[2026-06-05 02:32:33,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:32:33,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:32:33,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:32:33,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:32:35,323.323 INFO    ] ================================================
[2026-06-05 02:32:35,339.339 INFO    ] Launching Daemon at Fri Jun  5 02:32:35 IST 2026
[2026-06-05 02:32:35,350.350 INFO    ] ================================================
[2026-06-05 02:32:36,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:32:36
[2026-06-05 02:32:36,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:32:36,897.897 INFO    ] Initializing speech engine...
[2026-06-05 02:32:36,911.911 INFO    ] 2026-06-05 02:32:36
[2026-06-05 02:32:37,177.177 INFO    ] 2026-06-05 02:32:37
[2026-06-05 02:32:37,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:32:37,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:32:37,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:32:37,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:32:37,556.556 INFO    ] time= 05/06/2026 02:32:37
[2026-06-05 02:32:37,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:32:37,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:32:37,722.722 INFO    ] No existing commands found in stream
[2026-06-05 02:32:42,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:32:42,750.750 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 02:32:44,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:32:44,638.638 INFO    ] Checking for system updates...
[2026-06-05 02:32:44,674.674 INFO    ] 200
[2026-06-05 02:32:44,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:44,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:32:44,740.740 INFO    ] No update needed
[2026-06-05 02:32:44,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 02:32:44,777.777 INFO    ] 200
[2026-06-05 02:32:44,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:44,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:32:44,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:32:44,873.873 INFO    ] No camera update needed
[2026-06-05 02:32:44,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:32:44,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:32:44,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:32:44,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:32:46,932.932 INFO    ] ================================================
[2026-06-05 02:32:46,948.948 INFO    ] Launching Daemon at Fri Jun  5 02:32:46 IST 2026
[2026-06-05 02:32:46,959.959 INFO    ] ================================================
[2026-06-05 02:32:47,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:32:47
[2026-06-05 02:32:48,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:32:48,583.583 INFO    ] Initializing speech engine...
[2026-06-05 02:32:48,595.595 INFO    ] 2026-06-05 02:32:48
[2026-06-05 02:32:48,882.882 INFO    ] 2026-06-05 02:32:48
[2026-06-05 02:32:48,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:32:49,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:32:49,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:32:49,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:32:49,326.326 INFO    ] time= 05/06/2026 02:32:49
[2026-06-05 02:32:49,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:32:49,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:32:49,478.478 INFO    ] No existing commands found in stream
[2026-06-05 02:32:54,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:32:54,508.508 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 02:32:55,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:32:55,866.866 INFO    ] Checking for system updates...
[2026-06-05 02:32:55,907.907 INFO    ] 200
[2026-06-05 02:32:55,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:55,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:32:55,973.973 INFO    ] No update needed
[2026-06-05 02:32:55,976.976 INFO    ] Checking for camera pi updates...
[2026-06-05 02:32:56,014.014 INFO    ] 200
[2026-06-05 02:32:56,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:32:56,060.060 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:32:56,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:32:56,112.112 INFO    ] No camera update needed
[2026-06-05 02:32:56,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:32:56,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:32:56,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:32:56,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:32:58,168.168 INFO    ] ================================================
[2026-06-05 02:32:58,183.183 INFO    ] Launching Daemon at Fri Jun  5 02:32:58 IST 2026
[2026-06-05 02:32:58,194.194 INFO    ] ================================================
[2026-06-05 02:32:58,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:32:58
[2026-06-05 02:32:59,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:32:59,846.846 INFO    ] Initializing speech engine...
[2026-06-05 02:32:59,857.857 INFO    ] 2026-06-05 02:32:59
[2026-06-05 02:33:00,144.144 INFO    ] 2026-06-05 02:33:00
[2026-06-05 02:33:00,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:33:00,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:33:00,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:33:00,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:33:00,611.611 INFO    ] time= 05/06/2026 02:33:00
[2026-06-05 02:33:00,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:33:00,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:33:00,756.756 INFO    ] No existing commands found in stream
[2026-06-05 02:33:05,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:33:05,772.772 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 02:33:06,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:33:06,462.462 INFO    ] Checking for system updates...
[2026-06-05 02:33:06,502.502 INFO    ] 200
[2026-06-05 02:33:06,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:06,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:33:06,560.560 INFO    ] No update needed
[2026-06-05 02:33:06,563.563 INFO    ] Checking for camera pi updates...
[2026-06-05 02:33:06,604.604 INFO    ] 200
[2026-06-05 02:33:06,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:06,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:33:06,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:33:06,712.712 INFO    ] No camera update needed
[2026-06-05 02:33:06,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:33:06,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:33:06,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:33:06,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:33:08,775.775 INFO    ] ================================================
[2026-06-05 02:33:08,790.790 INFO    ] Launching Daemon at Fri Jun  5 02:33:08 IST 2026
[2026-06-05 02:33:08,800.800 INFO    ] ================================================
[2026-06-05 02:33:09,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:33:09
[2026-06-05 02:33:09,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:33:10,273.273 INFO    ] Initializing speech engine...
[2026-06-05 02:33:10,280.280 INFO    ] 2026-06-05 02:33:10
[2026-06-05 02:33:10,544.544 INFO    ] 2026-06-05 02:33:10
[2026-06-05 02:33:10,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:33:10,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:33:10,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:33:10,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:33:10,941.941 INFO    ] time= 05/06/2026 02:33:10
[2026-06-05 02:33:10,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:33:10,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:33:11,051.051 INFO    ] No existing commands found in stream
[2026-06-05 02:33:16,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:33:16,068.068 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 02:33:19,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:33:20,001.001 INFO    ] Checking for system updates...
[2026-06-05 02:33:20,042.042 INFO    ] 200
[2026-06-05 02:33:20,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:20,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:33:20,108.108 INFO    ] No update needed
[2026-06-05 02:33:20,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 02:33:20,149.149 INFO    ] 200
[2026-06-05 02:33:20,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:20,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:33:20,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:33:20,254.254 INFO    ] No camera update needed
[2026-06-05 02:33:20,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:33:20,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:33:20,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:33:20,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:33:22,310.310 INFO    ] ================================================
[2026-06-05 02:33:22,325.325 INFO    ] Launching Daemon at Fri Jun  5 02:33:22 IST 2026
[2026-06-05 02:33:22,335.335 INFO    ] ================================================
[2026-06-05 02:33:22,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:33:22
[2026-06-05 02:33:23,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:33:23,763.763 INFO    ] Initializing speech engine...
[2026-06-05 02:33:23,773.773 INFO    ] 2026-06-05 02:33:23
[2026-06-05 02:33:24,023.023 INFO    ] 2026-06-05 02:33:24
[2026-06-05 02:33:24,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:33:24,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:33:24,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:33:24,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:33:24,404.404 INFO    ] time= 05/06/2026 02:33:24
[2026-06-05 02:33:24,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:33:24,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:33:24,569.569 INFO    ] No existing commands found in stream
[2026-06-05 02:33:29,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:33:29,597.597 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 02:33:31,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:33:31,540.540 INFO    ] Checking for system updates...
[2026-06-05 02:33:31,580.580 INFO    ] 200
[2026-06-05 02:33:31,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:31,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:33:31,639.639 INFO    ] No update needed
[2026-06-05 02:33:31,641.641 INFO    ] Checking for camera pi updates...
[2026-06-05 02:33:31,674.674 INFO    ] 200
[2026-06-05 02:33:31,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:31,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:33:31,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:33:31,760.760 INFO    ] No camera update needed
[2026-06-05 02:33:31,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:33:31,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:33:31,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:33:31,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:33:33,817.817 INFO    ] ================================================
[2026-06-05 02:33:33,833.833 INFO    ] Launching Daemon at Fri Jun  5 02:33:33 IST 2026
[2026-06-05 02:33:33,843.843 INFO    ] ================================================
[2026-06-05 02:33:34,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:33:34
[2026-06-05 02:33:35,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:33:35,467.467 INFO    ] Initializing speech engine...
[2026-06-05 02:33:35,477.477 INFO    ] 2026-06-05 02:33:35
[2026-06-05 02:33:35,755.755 INFO    ] 2026-06-05 02:33:35
[2026-06-05 02:33:35,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:33:36,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:33:36,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:33:36,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:33:36,241.241 INFO    ] time= 05/06/2026 02:33:36
[2026-06-05 02:33:36,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:33:36,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:33:36,379.379 INFO    ] No existing commands found in stream
[2026-06-05 02:33:41,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:33:41,418.418 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 02:33:45,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:33:45,744.744 INFO    ] Checking for system updates...
[2026-06-05 02:33:45,786.786 INFO    ] 200
[2026-06-05 02:33:45,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:45,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:33:45,853.853 INFO    ] No update needed
[2026-06-05 02:33:45,856.856 INFO    ] Checking for camera pi updates...
[2026-06-05 02:33:45,895.895 INFO    ] 200
[2026-06-05 02:33:45,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:45,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:33:46,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:33:46,007.007 INFO    ] No camera update needed
[2026-06-05 02:33:46,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:33:46,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:33:46,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:33:46,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:33:48,067.067 INFO    ] ================================================
[2026-06-05 02:33:48,083.083 INFO    ] Launching Daemon at Fri Jun  5 02:33:48 IST 2026
[2026-06-05 02:33:48,094.094 INFO    ] ================================================
[2026-06-05 02:33:48,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:33:48
[2026-06-05 02:33:49,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:33:49,523.523 INFO    ] Initializing speech engine...
[2026-06-05 02:33:49,532.532 INFO    ] 2026-06-05 02:33:49
[2026-06-05 02:33:49,782.782 INFO    ] 2026-06-05 02:33:49
[2026-06-05 02:33:49,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:33:49,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:33:50,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:33:50,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:33:50,161.161 INFO    ] time= 05/06/2026 02:33:50
[2026-06-05 02:33:50,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:33:50,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:33:50,325.325 INFO    ] No existing commands found in stream
[2026-06-05 02:33:55,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:33:55,359.359 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 02:33:57,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:33:57,423.423 INFO    ] Checking for system updates...
[2026-06-05 02:33:57,464.464 INFO    ] 200
[2026-06-05 02:33:57,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:57,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:33:57,529.529 INFO    ] No update needed
[2026-06-05 02:33:57,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 02:33:57,569.569 INFO    ] 200
[2026-06-05 02:33:57,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:33:57,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:33:57,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:33:57,663.663 INFO    ] No camera update needed
[2026-06-05 02:33:57,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:33:57,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:33:57,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:33:57,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:33:59,720.720 INFO    ] ================================================
[2026-06-05 02:33:59,737.737 INFO    ] Launching Daemon at Fri Jun  5 02:33:59 IST 2026
[2026-06-05 02:33:59,747.747 INFO    ] ================================================
[2026-06-05 02:34:00,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:34:00
[2026-06-05 02:34:01,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:34:01,393.393 INFO    ] Initializing speech engine...
[2026-06-05 02:34:01,405.405 INFO    ] 2026-06-05 02:34:01
[2026-06-05 02:34:01,684.684 INFO    ] 2026-06-05 02:34:01
[2026-06-05 02:34:01,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:34:01,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:34:01,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:34:02,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:34:02,096.096 INFO    ] time= 05/06/2026 02:34:02
[2026-06-05 02:34:02,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:34:02,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:34:02,156.156 INFO    ] No existing commands found in stream
[2026-06-05 02:34:07,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:34:07,177.177 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 02:34:11,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:34:11,061.061 INFO    ] Checking for system updates...
[2026-06-05 02:34:11,101.101 INFO    ] 200
[2026-06-05 02:34:11,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:34:11,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:34:11,166.166 INFO    ] No update needed
[2026-06-05 02:34:11,168.168 INFO    ] Checking for camera pi updates...
[2026-06-05 02:34:11,203.203 INFO    ] 200
[2026-06-05 02:34:11,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:34:11,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:34:11,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:34:11,402.402 INFO    ] No camera update needed
[2026-06-05 02:34:11,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:34:11,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:34:11,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:34:11,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:34:13,458.458 INFO    ] ================================================
[2026-06-05 02:34:13,474.474 INFO    ] Launching Daemon at Fri Jun  5 02:34:13 IST 2026
[2026-06-05 02:34:13,486.486 INFO    ] ================================================
[2026-06-05 02:34:14,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:34:14
[2026-06-05 02:34:14,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:34:14,891.891 INFO    ] Initializing speech engine...
[2026-06-05 02:34:14,897.897 INFO    ] 2026-06-05 02:34:14
[2026-06-05 02:34:15,195.195 INFO    ] 2026-06-05 02:34:15
[2026-06-05 02:34:15,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:34:15,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:34:15,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:34:15,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:34:15,556.556 INFO    ] time= 05/06/2026 02:34:15
[2026-06-05 02:34:15,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:34:15,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:34:15,707.707 INFO    ] No existing commands found in stream
[2026-06-05 02:34:20,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:34:20,720.720 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 02:34:25,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:34:25,060.060 INFO    ] Checking for system updates...
[2026-06-05 02:34:25,100.100 INFO    ] 200
[2026-06-05 02:34:25,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:34:25,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:34:25,165.165 INFO    ] No update needed
[2026-06-05 02:34:25,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 02:34:25,205.205 INFO    ] 200
[2026-06-05 02:34:25,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:34:25,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:34:25,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:34:25,302.302 INFO    ] No camera update needed
[2026-06-05 02:34:25,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:34:25,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:34:25,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:34:25,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:34:27,358.358 INFO    ] ================================================
[2026-06-05 02:34:27,374.374 INFO    ] Launching Daemon at Fri Jun  5 02:34:27 IST 2026
[2026-06-05 02:34:27,385.385 INFO    ] ================================================
[2026-06-05 02:34:28,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:34:28
[2026-06-05 02:34:28,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:34:29,023.023 INFO    ] Initializing speech engine...
[2026-06-05 02:34:29,034.034 INFO    ] 2026-06-05 02:34:29
[2026-06-05 02:34:29,309.309 INFO    ] 2026-06-05 02:34:29
[2026-06-05 02:34:29,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:34:29,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:34:29,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:34:29,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:34:29,796.796 INFO    ] time= 05/06/2026 02:34:29
[2026-06-05 02:34:29,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:34:29,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:34:29,942.942 INFO    ] No existing commands found in stream
[2026-06-05 02:34:34,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:34:34,958.958 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 02:34:38,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:34:38,313.313 INFO    ] Checking for system updates...
[2026-06-05 02:34:38,351.351 INFO    ] 200
[2026-06-05 02:34:38,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:34:38,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:34:38,411.411 INFO    ] No update needed
[2026-06-05 02:34:38,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 02:34:38,452.452 INFO    ] 200
[2026-06-05 02:34:38,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:34:38,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:34:38,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:34:38,556.556 INFO    ] No camera update needed
[2026-06-05 02:34:38,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:34:38,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:34:38,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:34:38,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:34:40,618.618 INFO    ] ================================================
[2026-06-05 02:34:40,640.640 INFO    ] Launching Daemon at Fri Jun  5 02:34:40 IST 2026
[2026-06-05 02:34:40,652.652 INFO    ] ================================================
[2026-06-05 02:34:41,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:34:41
[2026-06-05 02:34:41,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:34:42,099.099 INFO    ] Initializing speech engine...
[2026-06-05 02:34:42,109.109 INFO    ] 2026-06-05 02:34:42
[2026-06-05 02:34:42,372.372 INFO    ] 2026-06-05 02:34:42
[2026-06-05 02:34:42,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:34:42,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:34:42,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:34:42,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:34:42,834.834 INFO    ] time= 05/06/2026 02:34:42
[2026-06-05 02:34:42,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:34:42,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:34:42,987.987 INFO    ] No existing commands found in stream
[2026-06-05 02:34:47,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:34:48,000.000 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 02:34:52,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:34:52,264.264 INFO    ] Checking for system updates...
[2026-06-05 02:34:52,307.307 INFO    ] 200
[2026-06-05 02:34:52,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:34:52,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:34:52,372.372 INFO    ] No update needed
[2026-06-05 02:34:52,375.375 INFO    ] Checking for camera pi updates...
[2026-06-05 02:34:52,409.409 INFO    ] 200
[2026-06-05 02:34:52,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:34:52,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:34:52,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:34:52,506.506 INFO    ] No camera update needed
[2026-06-05 02:34:52,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:34:52,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:34:52,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:34:52,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:34:54,562.562 INFO    ] ================================================
[2026-06-05 02:34:54,578.578 INFO    ] Launching Daemon at Fri Jun  5 02:34:54 IST 2026
[2026-06-05 02:34:54,589.589 INFO    ] ================================================
[2026-06-05 02:34:55,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:34:55
[2026-06-05 02:34:55,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:34:56,225.225 INFO    ] Initializing speech engine...
[2026-06-05 02:34:56,240.240 INFO    ] 2026-06-05 02:34:56
[2026-06-05 02:34:56,532.532 INFO    ] 2026-06-05 02:34:56
[2026-06-05 02:34:56,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:34:56,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:34:56,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:34:57,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:34:57,077.077 INFO    ] time= 05/06/2026 02:34:57
[2026-06-05 02:34:57,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:34:57,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:34:57,206.206 INFO    ] No existing commands found in stream
[2026-06-05 02:35:02,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:35:02,240.240 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 02:35:05,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:35:05,145.145 INFO    ] Checking for system updates...
[2026-06-05 02:35:05,184.184 INFO    ] 200
[2026-06-05 02:35:05,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:05,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:35:05,244.244 INFO    ] No update needed
[2026-06-05 02:35:05,247.247 INFO    ] Checking for camera pi updates...
[2026-06-05 02:35:05,282.282 INFO    ] 200
[2026-06-05 02:35:05,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:05,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:35:05,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:35:05,369.369 INFO    ] No camera update needed
[2026-06-05 02:35:05,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:35:05,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:35:05,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:35:05,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:35:07,429.429 INFO    ] ================================================
[2026-06-05 02:35:07,445.445 INFO    ] Launching Daemon at Fri Jun  5 02:35:07 IST 2026
[2026-06-05 02:35:07,456.456 INFO    ] ================================================
[2026-06-05 02:35:08,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:35:08
[2026-06-05 02:35:08,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:35:08,912.912 INFO    ] Initializing speech engine...
[2026-06-05 02:35:08,918.918 INFO    ] 2026-06-05 02:35:08
[2026-06-05 02:35:09,182.182 INFO    ] 2026-06-05 02:35:09
[2026-06-05 02:35:09,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:35:09,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:35:09,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:35:09,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:35:09,724.724 INFO    ] time= 05/06/2026 02:35:09
[2026-06-05 02:35:09,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:35:09,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:35:09,869.869 INFO    ] No existing commands found in stream
[2026-06-05 02:35:14,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:35:14,892.892 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 02:35:19,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:35:19,002.002 INFO    ] Checking for system updates...
[2026-06-05 02:35:19,044.044 INFO    ] 200
[2026-06-05 02:35:19,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:19,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:35:19,102.102 INFO    ] No update needed
[2026-06-05 02:35:19,105.105 INFO    ] Checking for camera pi updates...
[2026-06-05 02:35:19,138.138 INFO    ] 200
[2026-06-05 02:35:19,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:19,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:35:19,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:35:19,238.238 INFO    ] No camera update needed
[2026-06-05 02:35:19,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:35:19,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:35:19,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:35:19,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:35:21,295.295 INFO    ] ================================================
[2026-06-05 02:35:21,311.311 INFO    ] Launching Daemon at Fri Jun  5 02:35:21 IST 2026
[2026-06-05 02:35:21,323.323 INFO    ] ================================================
[2026-06-05 02:35:21,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:35:21
[2026-06-05 02:35:22,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:35:22,725.725 INFO    ] Initializing speech engine...
[2026-06-05 02:35:22,733.733 INFO    ] 2026-06-05 02:35:22
[2026-06-05 02:35:23,006.006 INFO    ] 2026-06-05 02:35:22
[2026-06-05 02:35:23,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:35:23,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:35:23,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:35:23,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:35:23,384.384 INFO    ] time= 05/06/2026 02:35:23
[2026-06-05 02:35:23,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:35:23,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:35:23,567.567 INFO    ] No existing commands found in stream
[2026-06-05 02:35:28,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:35:28,600.600 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 02:35:31,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:35:31,631.631 INFO    ] Checking for system updates...
[2026-06-05 02:35:31,667.667 INFO    ] 200
[2026-06-05 02:35:31,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:31,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:35:31,733.733 INFO    ] No update needed
[2026-06-05 02:35:31,735.735 INFO    ] Checking for camera pi updates...
[2026-06-05 02:35:31,768.768 INFO    ] 200
[2026-06-05 02:35:31,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:31,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:35:31,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:35:31,869.869 INFO    ] No camera update needed
[2026-06-05 02:35:31,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:35:31,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:35:31,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:35:31,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:35:33,939.939 INFO    ] ================================================
[2026-06-05 02:35:33,955.955 INFO    ] Launching Daemon at Fri Jun  5 02:35:33 IST 2026
[2026-06-05 02:35:33,966.966 INFO    ] ================================================
[2026-06-05 02:35:34,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:35:34
[2026-06-05 02:35:35,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:35:35,428.428 INFO    ] Initializing speech engine...
[2026-06-05 02:35:35,436.436 INFO    ] 2026-06-05 02:35:35
[2026-06-05 02:35:35,698.698 INFO    ] 2026-06-05 02:35:35
[2026-06-05 02:35:35,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:35:35,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:35:35,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:35:36,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:35:36,163.163 INFO    ] time= 05/06/2026 02:35:36
[2026-06-05 02:35:36,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:35:36,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:35:36,305.305 INFO    ] No existing commands found in stream
[2026-06-05 02:35:41,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:35:41,319.319 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 02:35:42,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:35:42,186.186 INFO    ] Checking for system updates...
[2026-06-05 02:35:42,222.222 INFO    ] 200
[2026-06-05 02:35:42,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:42,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:35:42,281.281 INFO    ] No update needed
[2026-06-05 02:35:42,284.284 INFO    ] Checking for camera pi updates...
[2026-06-05 02:35:42,317.317 INFO    ] 200
[2026-06-05 02:35:42,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:42,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:35:42,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:35:42,407.407 INFO    ] No camera update needed
[2026-06-05 02:35:42,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:35:42,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:35:42,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:35:42,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:35:44,463.463 INFO    ] ================================================
[2026-06-05 02:35:44,483.483 INFO    ] Launching Daemon at Fri Jun  5 02:35:44 IST 2026
[2026-06-05 02:35:44,494.494 INFO    ] ================================================
[2026-06-05 02:35:45,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:35:45
[2026-06-05 02:35:45,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:35:46,126.126 INFO    ] Initializing speech engine...
[2026-06-05 02:35:46,136.136 INFO    ] 2026-06-05 02:35:46
[2026-06-05 02:35:46,411.411 INFO    ] 2026-06-05 02:35:46
[2026-06-05 02:35:46,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:35:46,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:35:46,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:35:46,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:35:46,883.883 INFO    ] time= 05/06/2026 02:35:46
[2026-06-05 02:35:46,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:35:46,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:35:47,104.104 INFO    ] No existing commands found in stream
[2026-06-05 02:35:52,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:35:52,134.134 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 02:35:56,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:35:56,175.175 INFO    ] Checking for system updates...
[2026-06-05 02:35:56,216.216 INFO    ] 200
[2026-06-05 02:35:56,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:56,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:35:56,281.281 INFO    ] No update needed
[2026-06-05 02:35:56,283.283 INFO    ] Checking for camera pi updates...
[2026-06-05 02:35:56,318.318 INFO    ] 200
[2026-06-05 02:35:56,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:35:56,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:35:56,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:35:56,415.415 INFO    ] No camera update needed
[2026-06-05 02:35:56,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:35:56,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:35:56,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:35:56,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:35:58,473.473 INFO    ] ================================================
[2026-06-05 02:35:58,489.489 INFO    ] Launching Daemon at Fri Jun  5 02:35:58 IST 2026
[2026-06-05 02:35:58,500.500 INFO    ] ================================================
[2026-06-05 02:35:59,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:35:59
[2026-06-05 02:35:59,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:35:59,960.960 INFO    ] Initializing speech engine...
[2026-06-05 02:35:59,969.969 INFO    ] 2026-06-05 02:35:59
[2026-06-05 02:36:00,227.227 INFO    ] 2026-06-05 02:36:00
[2026-06-05 02:36:00,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:36:00,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:36:00,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:36:00,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:36:00,584.584 INFO    ] time= 05/06/2026 02:36:00
[2026-06-05 02:36:00,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:36:00,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:36:00,761.761 INFO    ] No existing commands found in stream
[2026-06-05 02:36:05,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:36:05,789.789 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 02:36:08,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:36:08,262.262 INFO    ] Checking for system updates...
[2026-06-05 02:36:08,302.302 INFO    ] 200
[2026-06-05 02:36:08,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:08,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:36:08,361.361 INFO    ] No update needed
[2026-06-05 02:36:08,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 02:36:08,401.401 INFO    ] 200
[2026-06-05 02:36:08,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:08,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:36:08,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:36:08,494.494 INFO    ] No camera update needed
[2026-06-05 02:36:08,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:36:08,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:36:08,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:36:08,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:36:10,550.550 INFO    ] ================================================
[2026-06-05 02:36:10,566.566 INFO    ] Launching Daemon at Fri Jun  5 02:36:10 IST 2026
[2026-06-05 02:36:10,577.577 INFO    ] ================================================
[2026-06-05 02:36:11,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:36:11
[2026-06-05 02:36:11,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:36:11,995.995 INFO    ] Initializing speech engine...
[2026-06-05 02:36:12,019.019 INFO    ] 2026-06-05 02:36:12
[2026-06-05 02:36:12,278.278 INFO    ] 2026-06-05 02:36:12
[2026-06-05 02:36:12,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:36:12,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:36:12,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:36:12,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:36:12,655.655 INFO    ] time= 05/06/2026 02:36:12
[2026-06-05 02:36:12,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:36:12,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:36:12,818.818 INFO    ] No existing commands found in stream
[2026-06-05 02:36:17,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:36:17,851.851 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 02:36:21,034.034 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:36:21,037.037 INFO    ] Checking for system updates...
[2026-06-05 02:36:21,073.073 INFO    ] 200
[2026-06-05 02:36:21,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:21,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:36:21,131.131 INFO    ] No update needed
[2026-06-05 02:36:21,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 02:36:21,168.168 INFO    ] 200
[2026-06-05 02:36:21,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:21,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:36:21,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:36:21,358.358 INFO    ] No camera update needed
[2026-06-05 02:36:21,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:36:21,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:36:21,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:36:21,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:36:23,415.415 INFO    ] ================================================
[2026-06-05 02:36:23,430.430 INFO    ] Launching Daemon at Fri Jun  5 02:36:23 IST 2026
[2026-06-05 02:36:23,441.441 INFO    ] ================================================
[2026-06-05 02:36:24,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:36:24
[2026-06-05 02:36:24,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:36:24,909.909 INFO    ] Initializing speech engine...
[2026-06-05 02:36:24,918.918 INFO    ] 2026-06-05 02:36:24
[2026-06-05 02:36:25,220.220 INFO    ] 2026-06-05 02:36:25
[2026-06-05 02:36:25,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:36:25,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:36:25,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:36:25,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:36:25,604.604 INFO    ] time= 05/06/2026 02:36:25
[2026-06-05 02:36:25,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:36:25,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:36:25,735.735 INFO    ] No existing commands found in stream
[2026-06-05 02:36:30,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:36:30,749.749 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 02:36:32,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:36:32,321.321 INFO    ] Checking for system updates...
[2026-06-05 02:36:32,372.372 INFO    ] 200
[2026-06-05 02:36:32,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:32,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:36:32,456.456 INFO    ] No update needed
[2026-06-05 02:36:32,460.460 INFO    ] Checking for camera pi updates...
[2026-06-05 02:36:32,510.510 INFO    ] 200
[2026-06-05 02:36:32,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:32,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:36:32,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:36:32,607.607 INFO    ] No camera update needed
[2026-06-05 02:36:32,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:36:32,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:36:32,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:36:32,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:36:34,673.673 INFO    ] ================================================
[2026-06-05 02:36:34,688.688 INFO    ] Launching Daemon at Fri Jun  5 02:36:34 IST 2026
[2026-06-05 02:36:34,699.699 INFO    ] ================================================
[2026-06-05 02:36:35,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:36:35
[2026-06-05 02:36:35,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:36:36,163.163 INFO    ] Initializing speech engine...
[2026-06-05 02:36:36,171.171 INFO    ] 2026-06-05 02:36:36
[2026-06-05 02:36:36,430.430 INFO    ] 2026-06-05 02:36:36
[2026-06-05 02:36:36,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:36:36,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:36:36,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:36:36,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:36:36,875.875 INFO    ] time= 05/06/2026 02:36:36
[2026-06-05 02:36:36,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:36:36,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:36:37,035.035 INFO    ] No existing commands found in stream
[2026-06-05 02:36:42,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:36:42,050.050 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 02:36:43,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:36:43,340.340 INFO    ] Checking for system updates...
[2026-06-05 02:36:43,381.381 INFO    ] 200
[2026-06-05 02:36:43,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:43,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:36:43,449.449 INFO    ] No update needed
[2026-06-05 02:36:43,452.452 INFO    ] Checking for camera pi updates...
[2026-06-05 02:36:43,490.490 INFO    ] 200
[2026-06-05 02:36:43,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:43,540.540 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:36:43,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:36:43,587.587 INFO    ] No camera update needed
[2026-06-05 02:36:43,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:36:43,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:36:43,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:36:43,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:36:45,647.647 INFO    ] ================================================
[2026-06-05 02:36:45,662.662 INFO    ] Launching Daemon at Fri Jun  5 02:36:45 IST 2026
[2026-06-05 02:36:45,673.673 INFO    ] ================================================
[2026-06-05 02:36:46,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:36:46
[2026-06-05 02:36:46,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:36:47,151.151 INFO    ] Initializing speech engine...
[2026-06-05 02:36:47,158.158 INFO    ] 2026-06-05 02:36:47
[2026-06-05 02:36:47,450.450 INFO    ] 2026-06-05 02:36:47
[2026-06-05 02:36:47,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:36:47,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:36:47,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:36:47,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:36:47,914.914 INFO    ] time= 05/06/2026 02:36:47
[2026-06-05 02:36:47,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:36:48,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:36:48,065.065 INFO    ] No existing commands found in stream
[2026-06-05 02:36:53,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:36:53,081.081 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 02:36:54,021.021 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:36:54,024.024 INFO    ] Checking for system updates...
[2026-06-05 02:36:54,062.062 INFO    ] 200
[2026-06-05 02:36:54,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:54,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:36:54,121.121 INFO    ] No update needed
[2026-06-05 02:36:54,123.123 INFO    ] Checking for camera pi updates...
[2026-06-05 02:36:54,157.157 INFO    ] 200
[2026-06-05 02:36:54,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:36:54,207.207 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:36:54,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:36:54,261.261 INFO    ] No camera update needed
[2026-06-05 02:36:54,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:36:54,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:36:54,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:36:54,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:36:56,316.316 INFO    ] ================================================
[2026-06-05 02:36:56,331.331 INFO    ] Launching Daemon at Fri Jun  5 02:36:56 IST 2026
[2026-06-05 02:36:56,342.342 INFO    ] ================================================
[2026-06-05 02:36:57,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:36:56
[2026-06-05 02:36:57,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:36:57,988.988 INFO    ] Initializing speech engine...
[2026-06-05 02:36:57,997.997 INFO    ] 2026-06-05 02:36:57
[2026-06-05 02:36:58,287.287 INFO    ] 2026-06-05 02:36:58
[2026-06-05 02:36:58,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:36:58,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:36:58,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:36:58,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:36:58,837.837 INFO    ] time= 05/06/2026 02:36:58
[2026-06-05 02:36:58,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:36:58,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:36:58,997.997 INFO    ] No existing commands found in stream
[2026-06-05 02:37:04,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:37:04,013.013 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 02:37:07,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:37:07,541.541 INFO    ] Checking for system updates...
[2026-06-05 02:37:07,578.578 INFO    ] 200
[2026-06-05 02:37:07,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:07,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:37:07,638.638 INFO    ] No update needed
[2026-06-05 02:37:07,641.641 INFO    ] Checking for camera pi updates...
[2026-06-05 02:37:07,676.676 INFO    ] 200
[2026-06-05 02:37:07,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:07,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:37:07,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:37:07,774.774 INFO    ] No camera update needed
[2026-06-05 02:37:07,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:37:07,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:37:07,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:37:07,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:37:09,832.832 INFO    ] ================================================
[2026-06-05 02:37:09,848.848 INFO    ] Launching Daemon at Fri Jun  5 02:37:09 IST 2026
[2026-06-05 02:37:09,859.859 INFO    ] ================================================
[2026-06-05 02:37:10,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:37:10
[2026-06-05 02:37:11,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:37:11,292.292 INFO    ] Initializing speech engine...
[2026-06-05 02:37:11,306.306 INFO    ] 2026-06-05 02:37:11
[2026-06-05 02:37:11,590.590 INFO    ] 2026-06-05 02:37:11
[2026-06-05 02:37:11,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:37:11,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:37:11,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:37:11,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:37:11,970.970 INFO    ] time= 05/06/2026 02:37:11
[2026-06-05 02:37:11,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:37:11,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:37:12,082.082 INFO    ] No existing commands found in stream
[2026-06-05 02:37:17,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:37:17,110.110 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 02:37:20,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:37:20,939.939 INFO    ] Checking for system updates...
[2026-06-05 02:37:20,976.976 INFO    ] 200
[2026-06-05 02:37:20,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:21,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:37:21,039.039 INFO    ] No update needed
[2026-06-05 02:37:21,041.041 INFO    ] Checking for camera pi updates...
[2026-06-05 02:37:21,075.075 INFO    ] 200
[2026-06-05 02:37:21,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:21,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:37:21,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:37:21,172.172 INFO    ] No camera update needed
[2026-06-05 02:37:21,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:37:21,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:37:21,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:37:21,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:37:23,232.232 INFO    ] ================================================
[2026-06-05 02:37:23,247.247 INFO    ] Launching Daemon at Fri Jun  5 02:37:23 IST 2026
[2026-06-05 02:37:23,258.258 INFO    ] ================================================
[2026-06-05 02:37:23,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:37:23
[2026-06-05 02:37:24,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:37:24,750.750 INFO    ] Initializing speech engine...
[2026-06-05 02:37:24,761.761 INFO    ] 2026-06-05 02:37:24
[2026-06-05 02:37:25,053.053 INFO    ] 2026-06-05 02:37:25
[2026-06-05 02:37:25,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:37:25,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:37:25,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:37:25,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:37:25,596.596 INFO    ] time= 05/06/2026 02:37:25
[2026-06-05 02:37:25,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:37:25,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:37:25,758.758 INFO    ] No existing commands found in stream
[2026-06-05 02:37:30,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:37:30,774.774 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 02:37:31,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:37:31,844.844 INFO    ] Checking for system updates...
[2026-06-05 02:37:31,889.889 INFO    ] 200
[2026-06-05 02:37:31,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:31,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:37:31,953.953 INFO    ] No update needed
[2026-06-05 02:37:31,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 02:37:31,998.998 INFO    ] 200
[2026-06-05 02:37:32,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:32,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:37:32,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:37:32,111.111 INFO    ] No camera update needed
[2026-06-05 02:37:32,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:37:32,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:37:32,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:37:32,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:37:34,170.170 INFO    ] ================================================
[2026-06-05 02:37:34,186.186 INFO    ] Launching Daemon at Fri Jun  5 02:37:34 IST 2026
[2026-06-05 02:37:34,196.196 INFO    ] ================================================
[2026-06-05 02:37:34,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:37:34
[2026-06-05 02:37:35,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:37:35,623.623 INFO    ] Initializing speech engine...
[2026-06-05 02:37:35,631.631 INFO    ] 2026-06-05 02:37:35
[2026-06-05 02:37:35,929.929 INFO    ] 2026-06-05 02:37:35
[2026-06-05 02:37:35,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:37:36,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:37:36,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:37:36,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:37:36,288.288 INFO    ] time= 05/06/2026 02:37:36
[2026-06-05 02:37:36,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:37:36,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:37:36,371.371 INFO    ] No existing commands found in stream
[2026-06-05 02:37:41,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:37:41,386.386 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 02:37:43,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:37:43,226.226 INFO    ] Checking for system updates...
[2026-06-05 02:37:43,264.264 INFO    ] 200
[2026-06-05 02:37:43,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:43,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:37:43,322.322 INFO    ] No update needed
[2026-06-05 02:37:43,325.325 INFO    ] Checking for camera pi updates...
[2026-06-05 02:37:43,359.359 INFO    ] 200
[2026-06-05 02:37:43,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:43,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:37:43,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:37:43,448.448 INFO    ] No camera update needed
[2026-06-05 02:37:43,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:37:43,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:37:43,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:37:43,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:37:45,504.504 INFO    ] ================================================
[2026-06-05 02:37:45,525.525 INFO    ] Launching Daemon at Fri Jun  5 02:37:45 IST 2026
[2026-06-05 02:37:45,536.536 INFO    ] ================================================
[2026-06-05 02:37:46,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:37:46
[2026-06-05 02:37:46,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:37:47,114.114 INFO    ] Initializing speech engine...
[2026-06-05 02:37:47,128.128 INFO    ] 2026-06-05 02:37:47
[2026-06-05 02:37:47,411.411 INFO    ] 2026-06-05 02:37:47
[2026-06-05 02:37:47,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:37:47,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:37:47,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:37:47,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:37:47,961.961 INFO    ] time= 05/06/2026 02:37:47
[2026-06-05 02:37:47,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:37:47,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:37:48,124.124 INFO    ] No existing commands found in stream
[2026-06-05 02:37:53,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:37:53,151.151 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 02:37:54,207.207 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:37:54,210.210 INFO    ] Checking for system updates...
[2026-06-05 02:37:54,248.248 INFO    ] 200
[2026-06-05 02:37:54,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:54,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:37:54,308.308 INFO    ] No update needed
[2026-06-05 02:37:54,311.311 INFO    ] Checking for camera pi updates...
[2026-06-05 02:37:54,352.352 INFO    ] 200
[2026-06-05 02:37:54,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:37:54,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:37:54,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:37:54,455.455 INFO    ] No camera update needed
[2026-06-05 02:37:54,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:37:54,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:37:54,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:37:54,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:37:56,514.514 INFO    ] ================================================
[2026-06-05 02:37:56,530.530 INFO    ] Launching Daemon at Fri Jun  5 02:37:56 IST 2026
[2026-06-05 02:37:56,541.541 INFO    ] ================================================
[2026-06-05 02:37:57,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:37:57
[2026-06-05 02:37:57,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:37:58,176.176 INFO    ] Initializing speech engine...
[2026-06-05 02:37:58,182.182 INFO    ] 2026-06-05 02:37:58
[2026-06-05 02:37:58,483.483 INFO    ] 2026-06-05 02:37:58
[2026-06-05 02:37:58,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:37:58,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:37:58,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:37:58,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:37:59,025.025 INFO    ] time= 05/06/2026 02:37:58
[2026-06-05 02:37:59,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:37:59,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:37:59,166.166 INFO    ] No existing commands found in stream
[2026-06-05 02:38:04,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:38:04,199.199 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 02:38:06,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:38:06,508.508 INFO    ] Checking for system updates...
[2026-06-05 02:38:06,544.544 INFO    ] 200
[2026-06-05 02:38:06,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:06,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:38:06,603.603 INFO    ] No update needed
[2026-06-05 02:38:06,605.605 INFO    ] Checking for camera pi updates...
[2026-06-05 02:38:06,639.639 INFO    ] 200
[2026-06-05 02:38:06,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:06,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:38:06,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:38:06,733.733 INFO    ] No camera update needed
[2026-06-05 02:38:06,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:38:06,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:38:06,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:38:06,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:38:08,789.789 INFO    ] ================================================
[2026-06-05 02:38:08,804.804 INFO    ] Launching Daemon at Fri Jun  5 02:38:08 IST 2026
[2026-06-05 02:38:08,814.814 INFO    ] ================================================
[2026-06-05 02:38:09,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:38:09
[2026-06-05 02:38:10,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:38:10,284.284 INFO    ] Initializing speech engine...
[2026-06-05 02:38:10,297.297 INFO    ] 2026-06-05 02:38:10
[2026-06-05 02:38:10,562.562 INFO    ] 2026-06-05 02:38:10
[2026-06-05 02:38:10,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:38:10,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:38:10,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:38:10,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:38:10,940.940 INFO    ] time= 05/06/2026 02:38:10
[2026-06-05 02:38:10,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:38:10,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:38:11,062.062 INFO    ] No existing commands found in stream
[2026-06-05 02:38:16,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:38:16,078.078 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 02:38:19,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:38:19,647.647 INFO    ] Checking for system updates...
[2026-06-05 02:38:19,683.683 INFO    ] 200
[2026-06-05 02:38:19,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:19,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:38:19,746.746 INFO    ] No update needed
[2026-06-05 02:38:19,748.748 INFO    ] Checking for camera pi updates...
[2026-06-05 02:38:19,782.782 INFO    ] 200
[2026-06-05 02:38:19,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:19,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:38:19,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:38:19,879.879 INFO    ] No camera update needed
[2026-06-05 02:38:19,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:38:19,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:38:19,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:38:19,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:38:21,934.934 INFO    ] ================================================
[2026-06-05 02:38:21,949.949 INFO    ] Launching Daemon at Fri Jun  5 02:38:21 IST 2026
[2026-06-05 02:38:21,960.960 INFO    ] ================================================
[2026-06-05 02:38:22,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:38:22
[2026-06-05 02:38:23,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:38:23,566.566 INFO    ] Initializing speech engine...
[2026-06-05 02:38:23,574.574 INFO    ] 2026-06-05 02:38:23
[2026-06-05 02:38:23,861.861 INFO    ] 2026-06-05 02:38:23
[2026-06-05 02:38:23,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:38:24,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:38:24,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:38:24,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:38:24,335.335 INFO    ] time= 05/06/2026 02:38:24
[2026-06-05 02:38:24,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:38:24,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:38:24,473.473 INFO    ] No existing commands found in stream
[2026-06-05 02:38:29,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:38:29,489.489 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 02:38:32,791.791 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:38:32,794.794 INFO    ] Checking for system updates...
[2026-06-05 02:38:32,836.836 INFO    ] 200
[2026-06-05 02:38:32,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:32,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:38:32,906.906 INFO    ] No update needed
[2026-06-05 02:38:32,909.909 INFO    ] Checking for camera pi updates...
[2026-06-05 02:38:32,952.952 INFO    ] 200
[2026-06-05 02:38:32,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:32,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:38:33,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:38:33,035.035 INFO    ] No camera update needed
[2026-06-05 02:38:33,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:38:33,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:38:33,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:38:33,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:38:35,091.091 INFO    ] ================================================
[2026-06-05 02:38:35,107.107 INFO    ] Launching Daemon at Fri Jun  5 02:38:35 IST 2026
[2026-06-05 02:38:35,118.118 INFO    ] ================================================
[2026-06-05 02:38:35,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:38:35
[2026-06-05 02:38:36,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:38:36,566.566 INFO    ] Initializing speech engine...
[2026-06-05 02:38:36,573.573 INFO    ] 2026-06-05 02:38:36
[2026-06-05 02:38:36,867.867 INFO    ] 2026-06-05 02:38:36
[2026-06-05 02:38:36,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:38:37,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:38:37,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:38:37,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:38:37,246.246 INFO    ] time= 05/06/2026 02:38:37
[2026-06-05 02:38:37,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:38:37,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:38:37,373.373 INFO    ] No existing commands found in stream
[2026-06-05 02:38:42,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:38:42,406.406 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 02:38:44,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:38:44,033.033 INFO    ] Checking for system updates...
[2026-06-05 02:38:44,070.070 INFO    ] 200
[2026-06-05 02:38:44,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:44,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:38:44,130.130 INFO    ] No update needed
[2026-06-05 02:38:44,133.133 INFO    ] Checking for camera pi updates...
[2026-06-05 02:38:44,166.166 INFO    ] 200
[2026-06-05 02:38:44,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:44,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:38:44,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:38:44,263.263 INFO    ] No camera update needed
[2026-06-05 02:38:44,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:38:44,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:38:44,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:38:44,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:38:46,323.323 INFO    ] ================================================
[2026-06-05 02:38:46,338.338 INFO    ] Launching Daemon at Fri Jun  5 02:38:46 IST 2026
[2026-06-05 02:38:46,350.350 INFO    ] ================================================
[2026-06-05 02:38:46,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:38:46
[2026-06-05 02:38:47,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:38:47,769.769 INFO    ] Initializing speech engine...
[2026-06-05 02:38:47,779.779 INFO    ] 2026-06-05 02:38:47
[2026-06-05 02:38:48,024.024 INFO    ] 2026-06-05 02:38:48
[2026-06-05 02:38:48,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:38:48,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:38:48,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:38:48,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:38:48,494.494 INFO    ] time= 05/06/2026 02:38:48
[2026-06-05 02:38:48,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:38:48,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:38:48,643.643 INFO    ] No existing commands found in stream
[2026-06-05 02:38:53,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:38:53,661.661 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 02:38:55,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:38:55,028.028 INFO    ] Checking for system updates...
[2026-06-05 02:38:55,064.064 INFO    ] 200
[2026-06-05 02:38:55,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:55,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:38:55,121.121 INFO    ] No update needed
[2026-06-05 02:38:55,123.123 INFO    ] Checking for camera pi updates...
[2026-06-05 02:38:55,157.157 INFO    ] 200
[2026-06-05 02:38:55,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:38:55,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:38:55,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:38:55,257.257 INFO    ] No camera update needed
[2026-06-05 02:38:55,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:38:55,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:38:55,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:38:55,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:38:57,311.311 INFO    ] ================================================
[2026-06-05 02:38:57,327.327 INFO    ] Launching Daemon at Fri Jun  5 02:38:57 IST 2026
[2026-06-05 02:38:57,338.338 INFO    ] ================================================
[2026-06-05 02:38:57,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:38:57
[2026-06-05 02:38:58,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:38:58,957.957 INFO    ] Initializing speech engine...
[2026-06-05 02:38:58,962.962 INFO    ] 2026-06-05 02:38:58
[2026-06-05 02:38:59,209.209 INFO    ] 2026-06-05 02:38:59
[2026-06-05 02:38:59,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:38:59,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:38:59,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:38:59,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:38:59,588.588 INFO    ] time= 05/06/2026 02:38:59
[2026-06-05 02:38:59,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:38:59,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:38:59,751.751 INFO    ] No existing commands found in stream
[2026-06-05 02:39:04,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:39:04,785.785 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 02:39:05,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:39:05,859.859 INFO    ] Checking for system updates...
[2026-06-05 02:39:05,895.895 INFO    ] 200
[2026-06-05 02:39:05,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:05,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:39:05,953.953 INFO    ] No update needed
[2026-06-05 02:39:05,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 02:39:05,994.994 INFO    ] 200
[2026-06-05 02:39:05,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:06,037.037 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:39:06,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:39:06,098.098 INFO    ] No camera update needed
[2026-06-05 02:39:06,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:39:06,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:39:06,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:39:06,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:39:08,155.155 INFO    ] ================================================
[2026-06-05 02:39:08,171.171 INFO    ] Launching Daemon at Fri Jun  5 02:39:08 IST 2026
[2026-06-05 02:39:08,183.183 INFO    ] ================================================
[2026-06-05 02:39:08,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:39:08
[2026-06-05 02:39:09,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:39:09,638.638 INFO    ] Initializing speech engine...
[2026-06-05 02:39:09,648.648 INFO    ] 2026-06-05 02:39:09
[2026-06-05 02:39:09,908.908 INFO    ] 2026-06-05 02:39:09
[2026-06-05 02:39:09,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:39:10,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:39:10,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:39:10,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:39:10,366.366 INFO    ] time= 05/06/2026 02:39:10
[2026-06-05 02:39:10,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:39:10,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:39:10,538.538 INFO    ] No existing commands found in stream
[2026-06-05 02:39:15,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:39:15,577.577 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 02:39:19,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:39:19,019.019 INFO    ] Checking for system updates...
[2026-06-05 02:39:19,059.059 INFO    ] 200
[2026-06-05 02:39:19,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:19,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:39:19,116.116 INFO    ] No update needed
[2026-06-05 02:39:19,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 02:39:19,153.153 INFO    ] 200
[2026-06-05 02:39:19,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:19,202.202 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:39:19,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:39:19,234.234 INFO    ] No camera update needed
[2026-06-05 02:39:19,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:39:19,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:39:19,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:39:19,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:39:21,290.290 INFO    ] ================================================
[2026-06-05 02:39:21,306.306 INFO    ] Launching Daemon at Fri Jun  5 02:39:21 IST 2026
[2026-06-05 02:39:21,317.317 INFO    ] ================================================
[2026-06-05 02:39:21,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:39:21
[2026-06-05 02:39:22,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:39:22,970.970 INFO    ] Initializing speech engine...
[2026-06-05 02:39:22,980.980 INFO    ] 2026-06-05 02:39:22
[2026-06-05 02:39:23,248.248 INFO    ] 2026-06-05 02:39:23
[2026-06-05 02:39:23,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:39:23,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:39:23,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:39:23,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:39:23,662.662 INFO    ] time= 05/06/2026 02:39:23
[2026-06-05 02:39:23,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:39:23,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:39:23,806.806 INFO    ] No existing commands found in stream
[2026-06-05 02:39:28,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:39:28,822.822 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 02:39:31,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:39:31,484.484 INFO    ] Checking for system updates...
[2026-06-05 02:39:31,528.528 INFO    ] 200
[2026-06-05 02:39:31,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:31,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:39:31,607.607 INFO    ] No update needed
[2026-06-05 02:39:31,611.611 INFO    ] Checking for camera pi updates...
[2026-06-05 02:39:31,649.649 INFO    ] 200
[2026-06-05 02:39:31,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:31,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:39:31,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:39:31,767.767 INFO    ] No camera update needed
[2026-06-05 02:39:31,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:39:31,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:39:31,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:39:31,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:39:33,834.834 INFO    ] ================================================
[2026-06-05 02:39:33,850.850 INFO    ] Launching Daemon at Fri Jun  5 02:39:33 IST 2026
[2026-06-05 02:39:33,861.861 INFO    ] ================================================
[2026-06-05 02:39:34,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:39:34
[2026-06-05 02:39:35,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:39:35,266.266 INFO    ] Initializing speech engine...
[2026-06-05 02:39:35,289.289 INFO    ] 2026-06-05 02:39:35
[2026-06-05 02:39:35,545.545 INFO    ] 2026-06-05 02:39:35
[2026-06-05 02:39:35,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:39:35,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:39:35,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:39:35,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:39:35,923.923 INFO    ] time= 05/06/2026 02:39:35
[2026-06-05 02:39:35,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:39:35,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:39:35,999.999 INFO    ] No existing commands found in stream
[2026-06-05 02:39:41,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:39:41,014.014 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 02:39:45,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:39:45,309.309 INFO    ] Checking for system updates...
[2026-06-05 02:39:45,346.346 INFO    ] 200
[2026-06-05 02:39:45,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:45,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:39:45,406.406 INFO    ] No update needed
[2026-06-05 02:39:45,409.409 INFO    ] Checking for camera pi updates...
[2026-06-05 02:39:45,443.443 INFO    ] 200
[2026-06-05 02:39:45,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:45,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:39:45,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:39:45,543.543 INFO    ] No camera update needed
[2026-06-05 02:39:45,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:39:45,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:39:45,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:39:45,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:39:47,600.600 INFO    ] ================================================
[2026-06-05 02:39:47,616.616 INFO    ] Launching Daemon at Fri Jun  5 02:39:47 IST 2026
[2026-06-05 02:39:47,627.627 INFO    ] ================================================
[2026-06-05 02:39:48,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:39:48
[2026-06-05 02:39:48,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:39:49,093.093 INFO    ] Initializing speech engine...
[2026-06-05 02:39:49,101.101 INFO    ] 2026-06-05 02:39:49
[2026-06-05 02:39:49,359.359 INFO    ] 2026-06-05 02:39:49
[2026-06-05 02:39:49,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:39:49,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:39:49,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:39:49,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:39:49,829.829 INFO    ] time= 05/06/2026 02:39:49
[2026-06-05 02:39:49,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:39:49,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:39:50,020.020 INFO    ] No existing commands found in stream
[2026-06-05 02:39:55,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:39:55,036.036 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 02:39:59,310.310 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:39:59,313.313 INFO    ] Checking for system updates...
[2026-06-05 02:39:59,349.349 INFO    ] 200
[2026-06-05 02:39:59,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:59,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:39:59,413.413 INFO    ] No update needed
[2026-06-05 02:39:59,415.415 INFO    ] Checking for camera pi updates...
[2026-06-05 02:39:59,449.449 INFO    ] 200
[2026-06-05 02:39:59,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:39:59,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:39:59,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:39:59,544.544 INFO    ] No camera update needed
[2026-06-05 02:39:59,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:39:59,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:39:59,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:39:59,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:40:01,616.616 INFO    ] ================================================
[2026-06-05 02:40:01,699.699 INFO    ] Launching Daemon at Fri Jun  5 02:40:01 IST 2026
[2026-06-05 02:40:01,739.739 INFO    ] ================================================
[2026-06-05 02:40:02,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:40:02
[2026-06-05 02:40:03,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:40:03,684.684 INFO    ] Initializing speech engine...
[2026-06-05 02:40:03,693.693 INFO    ] 2026-06-05 02:40:03
[2026-06-05 02:40:03,963.963 INFO    ] 2026-06-05 02:40:03
[2026-06-05 02:40:03,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:40:04,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:40:04,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:40:04,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:40:04,450.450 INFO    ] time= 05/06/2026 02:40:04
[2026-06-05 02:40:04,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:40:04,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:40:04,609.609 INFO    ] No existing commands found in stream
[2026-06-05 02:40:09,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:40:09,633.633 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 02:40:10,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:40:10,936.936 INFO    ] Checking for system updates...
[2026-06-05 02:40:10,972.972 INFO    ] 200
[2026-06-05 02:40:10,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:11,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:40:11,037.037 INFO    ] No update needed
[2026-06-05 02:40:11,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 02:40:11,079.079 INFO    ] 200
[2026-06-05 02:40:11,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:11,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:40:11,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:40:11,178.178 INFO    ] No camera update needed
[2026-06-05 02:40:11,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:40:11,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:40:11,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:40:11,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:40:13,237.237 INFO    ] ================================================
[2026-06-05 02:40:13,253.253 INFO    ] Launching Daemon at Fri Jun  5 02:40:13 IST 2026
[2026-06-05 02:40:13,265.265 INFO    ] ================================================
[2026-06-05 02:40:13,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:40:13
[2026-06-05 02:40:14,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:40:14,683.683 INFO    ] Initializing speech engine...
[2026-06-05 02:40:14,687.687 INFO    ] 2026-06-05 02:40:14
[2026-06-05 02:40:14,979.979 INFO    ] 2026-06-05 02:40:14
[2026-06-05 02:40:15,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:40:15,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:40:15,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:40:15,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:40:15,394.394 INFO    ] time= 05/06/2026 02:40:15
[2026-06-05 02:40:15,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:40:15,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:40:15,481.481 INFO    ] No existing commands found in stream
[2026-06-05 02:40:20,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:40:20,497.497 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 02:40:21,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:40:21,721.721 INFO    ] Checking for system updates...
[2026-06-05 02:40:21,760.760 INFO    ] 200
[2026-06-05 02:40:21,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:21,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:40:21,817.817 INFO    ] No update needed
[2026-06-05 02:40:21,820.820 INFO    ] Checking for camera pi updates...
[2026-06-05 02:40:21,853.853 INFO    ] 200
[2026-06-05 02:40:21,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:21,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:40:21,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:40:21,947.947 INFO    ] No camera update needed
[2026-06-05 02:40:21,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:40:21,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:40:21,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:40:21,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:40:24,004.004 INFO    ] ================================================
[2026-06-05 02:40:24,020.020 INFO    ] Launching Daemon at Fri Jun  5 02:40:24 IST 2026
[2026-06-05 02:40:24,031.031 INFO    ] ================================================
[2026-06-05 02:40:24,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:40:24
[2026-06-05 02:40:25,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:40:25,445.445 INFO    ] Initializing speech engine...
[2026-06-05 02:40:25,463.463 INFO    ] 2026-06-05 02:40:25
[2026-06-05 02:40:25,717.717 INFO    ] 2026-06-05 02:40:25
[2026-06-05 02:40:25,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:40:26,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:40:26,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:40:26,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:40:26,196.196 INFO    ] time= 05/06/2026 02:40:26
[2026-06-05 02:40:26,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:40:26,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:40:26,358.358 INFO    ] No existing commands found in stream
[2026-06-05 02:40:31,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:40:31,376.376 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 02:40:34,889.889 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:40:34,891.891 INFO    ] Checking for system updates...
[2026-06-05 02:40:34,928.928 INFO    ] 200
[2026-06-05 02:40:34,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:34,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:40:34,986.986 INFO    ] No update needed
[2026-06-05 02:40:34,989.989 INFO    ] Checking for camera pi updates...
[2026-06-05 02:40:35,022.022 INFO    ] 200
[2026-06-05 02:40:35,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:35,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:40:35,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:40:35,223.223 INFO    ] No camera update needed
[2026-06-05 02:40:35,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:40:35,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:40:35,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:40:35,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:40:37,278.278 INFO    ] ================================================
[2026-06-05 02:40:37,293.293 INFO    ] Launching Daemon at Fri Jun  5 02:40:37 IST 2026
[2026-06-05 02:40:37,304.304 INFO    ] ================================================
[2026-06-05 02:40:37,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:40:37
[2026-06-05 02:40:38,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:40:38,758.758 INFO    ] Initializing speech engine...
[2026-06-05 02:40:38,774.774 INFO    ] 2026-06-05 02:40:38
[2026-06-05 02:40:39,061.061 INFO    ] 2026-06-05 02:40:39
[2026-06-05 02:40:39,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:40:39,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:40:39,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:40:39,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:40:39,484.484 INFO    ] time= 05/06/2026 02:40:39
[2026-06-05 02:40:39,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:40:39,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:40:39,645.645 INFO    ] No existing commands found in stream
[2026-06-05 02:40:44,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:40:44,679.679 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 02:40:46,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:40:46,889.889 INFO    ] Checking for system updates...
[2026-06-05 02:40:46,926.926 INFO    ] 200
[2026-06-05 02:40:46,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:46,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:40:46,983.983 INFO    ] No update needed
[2026-06-05 02:40:46,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 02:40:47,023.023 INFO    ] 200
[2026-06-05 02:40:47,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:47,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:40:47,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:40:47,114.114 INFO    ] No camera update needed
[2026-06-05 02:40:47,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:40:47,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:40:47,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:40:47,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:40:49,170.170 INFO    ] ================================================
[2026-06-05 02:40:49,185.185 INFO    ] Launching Daemon at Fri Jun  5 02:40:49 IST 2026
[2026-06-05 02:40:49,197.197 INFO    ] ================================================
[2026-06-05 02:40:49,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:40:49
[2026-06-05 02:40:50,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:40:50,830.830 INFO    ] Initializing speech engine...
[2026-06-05 02:40:50,842.842 INFO    ] 2026-06-05 02:40:50
[2026-06-05 02:40:51,152.152 INFO    ] 2026-06-05 02:40:51
[2026-06-05 02:40:51,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:40:51,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:40:51,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:40:51,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:40:51,594.594 INFO    ] time= 05/06/2026 02:40:51
[2026-06-05 02:40:51,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:40:51,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:40:51,791.791 INFO    ] No existing commands found in stream
[2026-06-05 02:40:56,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:40:56,825.825 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 02:40:59,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:40:59,179.179 INFO    ] Checking for system updates...
[2026-06-05 02:40:59,220.220 INFO    ] 200
[2026-06-05 02:40:59,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:59,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:40:59,278.278 INFO    ] No update needed
[2026-06-05 02:40:59,281.281 INFO    ] Checking for camera pi updates...
[2026-06-05 02:40:59,319.319 INFO    ] 200
[2026-06-05 02:40:59,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:40:59,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:40:59,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:40:59,423.423 INFO    ] No camera update needed
[2026-06-05 02:40:59,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:40:59,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:40:59,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:40:59,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:41:01,481.481 INFO    ] ================================================
[2026-06-05 02:41:01,497.497 INFO    ] Launching Daemon at Fri Jun  5 02:41:01 IST 2026
[2026-06-05 02:41:01,507.507 INFO    ] ================================================
[2026-06-05 02:41:02,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:41:02
[2026-06-05 02:41:02,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:41:03,141.141 INFO    ] Initializing speech engine...
[2026-06-05 02:41:03,159.159 INFO    ] 2026-06-05 02:41:03
[2026-06-05 02:41:03,490.490 INFO    ] 2026-06-05 02:41:03
[2026-06-05 02:41:03,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:41:03,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:41:03,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:41:03,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:41:03,957.957 INFO    ] time= 05/06/2026 02:41:03
[2026-06-05 02:41:04,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:41:04,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:41:04,138.138 INFO    ] No existing commands found in stream
[2026-06-05 02:41:09,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:41:09,152.152 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 02:41:10,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:41:10,869.869 INFO    ] Checking for system updates...
[2026-06-05 02:41:10,906.906 INFO    ] 200
[2026-06-05 02:41:10,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:41:10,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:41:10,964.964 INFO    ] No update needed
[2026-06-05 02:41:10,967.967 INFO    ] Checking for camera pi updates...
[2026-06-05 02:41:11,013.013 INFO    ] 200
[2026-06-05 02:41:11,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:41:11,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:41:11,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:41:11,111.111 INFO    ] No camera update needed
[2026-06-05 02:41:11,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:41:11,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:41:11,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:41:11,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:41:13,167.167 INFO    ] ================================================
[2026-06-05 02:41:13,183.183 INFO    ] Launching Daemon at Fri Jun  5 02:41:13 IST 2026
[2026-06-05 02:41:13,194.194 INFO    ] ================================================
[2026-06-05 02:41:13,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:41:13
[2026-06-05 02:41:14,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:41:14,889.889 INFO    ] Initializing speech engine...
[2026-06-05 02:41:14,901.901 INFO    ] 2026-06-05 02:41:14
[2026-06-05 02:41:15,212.212 INFO    ] 2026-06-05 02:41:15
[2026-06-05 02:41:15,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:41:15,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:41:15,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:41:15,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:41:15,724.724 INFO    ] time= 05/06/2026 02:41:15
[2026-06-05 02:41:15,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:41:15,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:41:15,874.874 INFO    ] No existing commands found in stream
[2026-06-05 02:41:20,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:41:20,894.894 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 02:41:22,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:41:22,719.719 INFO    ] Checking for system updates...
[2026-06-05 02:41:22,756.756 INFO    ] 200
[2026-06-05 02:41:22,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:41:22,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:41:22,823.823 INFO    ] No update needed
[2026-06-05 02:41:22,825.825 INFO    ] Checking for camera pi updates...
[2026-06-05 02:41:22,859.859 INFO    ] 200
[2026-06-05 02:41:22,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:41:22,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:41:22,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:41:22,958.958 INFO    ] No camera update needed
[2026-06-05 02:41:22,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:41:22,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:41:22,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:41:22,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:41:25,014.014 INFO    ] ================================================
[2026-06-05 02:41:25,029.029 INFO    ] Launching Daemon at Fri Jun  5 02:41:25 IST 2026
[2026-06-05 02:41:25,041.041 INFO    ] ================================================
[2026-06-05 02:41:25,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:41:25
[2026-06-05 02:41:26,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:41:26,510.510 INFO    ] Initializing speech engine...
[2026-06-05 02:41:26,516.516 INFO    ] 2026-06-05 02:41:26
[2026-06-05 02:41:26,766.766 INFO    ] 2026-06-05 02:41:26
[2026-06-05 02:41:26,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:41:27,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:41:27,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:41:27,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:41:27,239.239 INFO    ] time= 05/06/2026 02:41:27
[2026-06-05 02:41:27,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:41:27,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:41:27,443.443 INFO    ] No existing commands found in stream
[2026-06-05 02:41:32,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:41:32,471.471 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 02:41:34,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:41:34,294.294 INFO    ] Checking for system updates...
[2026-06-05 02:41:34,330.330 INFO    ] 200
[2026-06-05 02:41:34,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:41:34,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:41:34,398.398 INFO    ] No update needed
[2026-06-05 02:41:34,400.400 INFO    ] Checking for camera pi updates...
[2026-06-05 02:41:34,434.434 INFO    ] 200
[2026-06-05 02:41:34,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:41:34,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:41:34,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:41:34,511.511 INFO    ] No camera update needed
[2026-06-05 02:41:34,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:41:34,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:41:34,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:41:34,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:41:36,567.567 INFO    ] ================================================
[2026-06-05 02:41:36,582.582 INFO    ] Launching Daemon at Fri Jun  5 02:41:36 IST 2026
[2026-06-05 02:41:36,593.593 INFO    ] ================================================
[2026-06-05 02:41:37,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:41:37
[2026-06-05 02:41:37,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:41:38,073.073 INFO    ] Initializing speech engine...
[2026-06-05 02:41:38,078.078 INFO    ] 2026-06-05 02:41:38
[2026-06-05 02:41:38,345.345 INFO    ] 2026-06-05 02:41:38
[2026-06-05 02:41:38,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:41:38,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:41:38,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:41:38,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:41:38,702.702 INFO    ] time= 05/06/2026 02:41:38
[2026-06-05 02:41:38,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:41:38,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:41:38,879.879 INFO    ] No existing commands found in stream
[2026-06-05 02:41:43,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:41:43,910.910 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 02:41:47,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:41:47,402.402 INFO    ] Checking for system updates...
[2026-06-05 02:41:47,439.439 INFO    ] 200
[2026-06-05 02:41:47,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:41:47,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:41:47,499.499 INFO    ] No update needed
[2026-06-05 02:41:47,501.501 INFO    ] Checking for camera pi updates...
[2026-06-05 02:41:47,535.535 INFO    ] 200
[2026-06-05 02:41:47,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:41:47,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:41:47,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:41:47,638.638 INFO    ] No camera update needed
[2026-06-05 02:41:47,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:41:47,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:41:47,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:41:47,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:41:49,694.694 INFO    ] ================================================
[2026-06-05 02:41:49,709.709 INFO    ] Launching Daemon at Fri Jun  5 02:41:49 IST 2026
[2026-06-05 02:41:49,720.720 INFO    ] ================================================
[2026-06-05 02:41:50,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:41:50
[2026-06-05 02:41:50,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:41:51,147.147 INFO    ] Initializing speech engine...
[2026-06-05 02:41:51,155.155 INFO    ] 2026-06-05 02:41:51
[2026-06-05 02:41:51,438.438 INFO    ] 2026-06-05 02:41:51
[2026-06-05 02:41:51,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:41:51,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:41:51,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:41:51,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:41:51,907.907 INFO    ] time= 05/06/2026 02:41:51
[2026-06-05 02:41:51,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:41:51,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:41:52,054.054 INFO    ] No existing commands found in stream
[2026-06-05 02:41:57,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:41:57,071.071 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 02:42:01,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:42:01,266.266 INFO    ] Checking for system updates...
[2026-06-05 02:42:01,302.302 INFO    ] 200
[2026-06-05 02:42:01,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:01,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:42:01,361.361 INFO    ] No update needed
[2026-06-05 02:42:01,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 02:42:01,402.402 INFO    ] 200
[2026-06-05 02:42:01,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:01,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:42:01,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:42:01,503.503 INFO    ] No camera update needed
[2026-06-05 02:42:01,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:42:01,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:42:01,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:42:01,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:42:03,564.564 INFO    ] ================================================
[2026-06-05 02:42:03,581.581 INFO    ] Launching Daemon at Fri Jun  5 02:42:03 IST 2026
[2026-06-05 02:42:03,592.592 INFO    ] ================================================
[2026-06-05 02:42:04,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:42:04
[2026-06-05 02:42:04,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:42:05,266.266 INFO    ] Initializing speech engine...
[2026-06-05 02:42:05,275.275 INFO    ] 2026-06-05 02:42:05
[2026-06-05 02:42:05,565.565 INFO    ] 2026-06-05 02:42:05
[2026-06-05 02:42:05,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:42:05,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:42:05,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:42:05,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:42:06,039.039 INFO    ] time= 05/06/2026 02:42:05
[2026-06-05 02:42:06,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:42:06,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:42:06,246.246 INFO    ] No existing commands found in stream
[2026-06-05 02:42:11,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:42:11,282.282 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 02:42:12,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:42:12,957.957 INFO    ] Checking for system updates...
[2026-06-05 02:42:13,000.000 INFO    ] 200
[2026-06-05 02:42:13,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:13,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:42:13,059.059 INFO    ] No update needed
[2026-06-05 02:42:13,062.062 INFO    ] Checking for camera pi updates...
[2026-06-05 02:42:13,097.097 INFO    ] 200
[2026-06-05 02:42:13,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:13,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:42:13,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:42:13,200.200 INFO    ] No camera update needed
[2026-06-05 02:42:13,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:42:13,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:42:13,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:42:13,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:42:15,259.259 INFO    ] ================================================
[2026-06-05 02:42:15,276.276 INFO    ] Launching Daemon at Fri Jun  5 02:42:15 IST 2026
[2026-06-05 02:42:15,286.286 INFO    ] ================================================
[2026-06-05 02:42:15,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:42:15
[2026-06-05 02:42:16,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:42:16,736.736 INFO    ] Initializing speech engine...
[2026-06-05 02:42:16,744.744 INFO    ] 2026-06-05 02:42:16
[2026-06-05 02:42:17,020.020 INFO    ] 2026-06-05 02:42:17
[2026-06-05 02:42:17,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:42:17,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:42:17,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:42:17,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:42:17,409.409 INFO    ] time= 05/06/2026 02:42:17
[2026-06-05 02:42:17,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:42:17,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:42:17,544.544 INFO    ] No existing commands found in stream
[2026-06-05 02:42:22,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:42:22,577.577 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 02:42:24,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:42:24,032.032 INFO    ] Checking for system updates...
[2026-06-05 02:42:24,073.073 INFO    ] 200
[2026-06-05 02:42:24,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:24,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:42:24,131.131 INFO    ] No update needed
[2026-06-05 02:42:24,133.133 INFO    ] Checking for camera pi updates...
[2026-06-05 02:42:24,171.171 INFO    ] 200
[2026-06-05 02:42:24,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:24,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:42:24,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:42:24,281.281 INFO    ] No camera update needed
[2026-06-05 02:42:24,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:42:24,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:42:24,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:42:24,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:42:26,346.346 INFO    ] ================================================
[2026-06-05 02:42:26,361.361 INFO    ] Launching Daemon at Fri Jun  5 02:42:26 IST 2026
[2026-06-05 02:42:26,372.372 INFO    ] ================================================
[2026-06-05 02:42:26,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:42:26
[2026-06-05 02:42:27,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:42:27,775.775 INFO    ] Initializing speech engine...
[2026-06-05 02:42:27,788.788 INFO    ] 2026-06-05 02:42:27
[2026-06-05 02:42:28,051.051 INFO    ] 2026-06-05 02:42:28
[2026-06-05 02:42:28,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:42:28,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:42:28,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:42:28,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:42:28,507.507 INFO    ] time= 05/06/2026 02:42:28
[2026-06-05 02:42:28,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:42:28,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:42:28,671.671 INFO    ] No existing commands found in stream
[2026-06-05 02:42:33,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:42:33,685.685 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 02:42:37,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:42:37,748.748 INFO    ] Checking for system updates...
[2026-06-05 02:42:37,784.784 INFO    ] 200
[2026-06-05 02:42:37,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:37,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:42:37,853.853 INFO    ] No update needed
[2026-06-05 02:42:37,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 02:42:37,894.894 INFO    ] 200
[2026-06-05 02:42:37,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:37,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:42:38,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:42:38,085.085 INFO    ] No camera update needed
[2026-06-05 02:42:38,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:42:38,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:42:38,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:42:38,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:42:40,141.141 INFO    ] ================================================
[2026-06-05 02:42:40,157.157 INFO    ] Launching Daemon at Fri Jun  5 02:42:40 IST 2026
[2026-06-05 02:42:40,169.169 INFO    ] ================================================
[2026-06-05 02:42:40,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:42:40
[2026-06-05 02:42:41,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:42:41,791.791 INFO    ] Initializing speech engine...
[2026-06-05 02:42:41,810.810 INFO    ] 2026-06-05 02:42:41
[2026-06-05 02:42:42,057.057 INFO    ] 2026-06-05 02:42:42
[2026-06-05 02:42:42,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:42:42,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:42:42,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:42:42,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:42:42,528.528 INFO    ] time= 05/06/2026 02:42:42
[2026-06-05 02:42:42,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:42:42,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:42:42,672.672 INFO    ] No existing commands found in stream
[2026-06-05 02:42:47,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:42:47,687.687 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 02:42:49,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:42:49,799.799 INFO    ] Checking for system updates...
[2026-06-05 02:42:49,835.835 INFO    ] 200
[2026-06-05 02:42:49,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:49,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:42:49,898.898 INFO    ] No update needed
[2026-06-05 02:42:49,901.901 INFO    ] Checking for camera pi updates...
[2026-06-05 02:42:49,936.936 INFO    ] 200
[2026-06-05 02:42:49,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:42:49,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:42:50,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:42:50,037.037 INFO    ] No camera update needed
[2026-06-05 02:42:50,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:42:50,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:42:50,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:42:50,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:42:52,100.100 INFO    ] ================================================
[2026-06-05 02:42:52,114.114 INFO    ] Launching Daemon at Fri Jun  5 02:42:52 IST 2026
[2026-06-05 02:42:52,125.125 INFO    ] ================================================
[2026-06-05 02:42:52,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:42:52
[2026-06-05 02:42:53,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:42:53,609.609 INFO    ] Initializing speech engine...
[2026-06-05 02:42:53,615.615 INFO    ] 2026-06-05 02:42:53
[2026-06-05 02:42:53,865.865 INFO    ] 2026-06-05 02:42:53
[2026-06-05 02:42:53,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:42:54,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:42:54,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:42:54,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:42:54,368.368 INFO    ] time= 05/06/2026 02:42:54
[2026-06-05 02:42:54,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:42:54,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:42:54,540.540 INFO    ] No existing commands found in stream
[2026-06-05 02:42:59,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:42:59,571.571 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 02:43:00,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:43:00,930.930 INFO    ] Checking for system updates...
[2026-06-05 02:43:00,967.967 INFO    ] 200
[2026-06-05 02:43:00,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:01,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:43:01,036.036 INFO    ] No update needed
[2026-06-05 02:43:01,039.039 INFO    ] Checking for camera pi updates...
[2026-06-05 02:43:01,078.078 INFO    ] 200
[2026-06-05 02:43:01,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:01,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:43:01,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:43:01,182.182 INFO    ] No camera update needed
[2026-06-05 02:43:01,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:43:01,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:43:01,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:43:01,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:43:03,247.247 INFO    ] ================================================
[2026-06-05 02:43:03,263.263 INFO    ] Launching Daemon at Fri Jun  5 02:43:03 IST 2026
[2026-06-05 02:43:03,273.273 INFO    ] ================================================
[2026-06-05 02:43:03,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:43:03
[2026-06-05 02:43:04,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:43:04,873.873 INFO    ] Initializing speech engine...
[2026-06-05 02:43:04,881.881 INFO    ] 2026-06-05 02:43:04
[2026-06-05 02:43:05,169.169 INFO    ] 2026-06-05 02:43:05
[2026-06-05 02:43:05,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:43:05,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:43:05,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:43:05,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:43:05,636.636 INFO    ] time= 05/06/2026 02:43:05
[2026-06-05 02:43:05,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:43:05,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:43:05,779.779 INFO    ] No existing commands found in stream
[2026-06-05 02:43:10,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:43:10,796.796 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 02:43:14,103.103 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:43:14,107.107 INFO    ] Checking for system updates...
[2026-06-05 02:43:14,148.148 INFO    ] 200
[2026-06-05 02:43:14,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:14,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:43:14,211.211 INFO    ] No update needed
[2026-06-05 02:43:14,213.213 INFO    ] Checking for camera pi updates...
[2026-06-05 02:43:14,247.247 INFO    ] 200
[2026-06-05 02:43:14,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:14,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:43:14,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:43:14,344.344 INFO    ] No camera update needed
[2026-06-05 02:43:14,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:43:14,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:43:14,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:43:14,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:43:16,399.399 INFO    ] ================================================
[2026-06-05 02:43:16,415.415 INFO    ] Launching Daemon at Fri Jun  5 02:43:16 IST 2026
[2026-06-05 02:43:16,426.426 INFO    ] ================================================
[2026-06-05 02:43:17,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:43:17
[2026-06-05 02:43:17,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:43:18,075.075 INFO    ] Initializing speech engine...
[2026-06-05 02:43:18,081.081 INFO    ] 2026-06-05 02:43:18
[2026-06-05 02:43:18,389.389 INFO    ] 2026-06-05 02:43:18
[2026-06-05 02:43:18,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:43:18,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:43:18,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:43:18,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:43:18,899.899 INFO    ] time= 05/06/2026 02:43:18
[2026-06-05 02:43:18,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:43:18,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:43:19,052.052 INFO    ] No existing commands found in stream
[2026-06-05 02:43:24,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:43:24,072.072 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 02:43:28,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:43:28,075.075 INFO    ] Checking for system updates...
[2026-06-05 02:43:28,113.113 INFO    ] 200
[2026-06-05 02:43:28,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:28,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:43:28,171.171 INFO    ] No update needed
[2026-06-05 02:43:28,174.174 INFO    ] Checking for camera pi updates...
[2026-06-05 02:43:28,207.207 INFO    ] 200
[2026-06-05 02:43:28,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:28,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:43:28,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:43:28,298.298 INFO    ] No camera update needed
[2026-06-05 02:43:28,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:43:28,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:43:28,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:43:28,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:43:30,354.354 INFO    ] ================================================
[2026-06-05 02:43:30,369.369 INFO    ] Launching Daemon at Fri Jun  5 02:43:30 IST 2026
[2026-06-05 02:43:30,380.380 INFO    ] ================================================
[2026-06-05 02:43:31,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:43:31
[2026-06-05 02:43:31,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:43:32,025.025 INFO    ] Initializing speech engine...
[2026-06-05 02:43:32,051.051 INFO    ] 2026-06-05 02:43:32
[2026-06-05 02:43:32,345.345 INFO    ] 2026-06-05 02:43:32
[2026-06-05 02:43:32,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:43:32,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:43:32,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:43:32,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:43:32,758.758 INFO    ] time= 05/06/2026 02:43:32
[2026-06-05 02:43:32,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:43:32,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:43:32,952.952 INFO    ] No existing commands found in stream
[2026-06-05 02:43:37,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:43:37,993.993 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 02:43:40,151.151 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:43:40,154.154 INFO    ] Checking for system updates...
[2026-06-05 02:43:40,190.190 INFO    ] 200
[2026-06-05 02:43:40,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:40,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:43:40,249.249 INFO    ] No update needed
[2026-06-05 02:43:40,251.251 INFO    ] Checking for camera pi updates...
[2026-06-05 02:43:40,286.286 INFO    ] 200
[2026-06-05 02:43:40,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:40,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:43:40,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:43:40,386.386 INFO    ] No camera update needed
[2026-06-05 02:43:40,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:43:40,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:43:40,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:43:40,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:43:42,448.448 INFO    ] ================================================
[2026-06-05 02:43:42,463.463 INFO    ] Launching Daemon at Fri Jun  5 02:43:42 IST 2026
[2026-06-05 02:43:42,473.473 INFO    ] ================================================
[2026-06-05 02:43:43,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:43:43
[2026-06-05 02:43:43,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:43:44,098.098 INFO    ] Initializing speech engine...
[2026-06-05 02:43:44,107.107 INFO    ] 2026-06-05 02:43:44
[2026-06-05 02:43:44,393.393 INFO    ] 2026-06-05 02:43:44
[2026-06-05 02:43:44,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:43:44,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:43:44,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:43:44,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:43:44,888.888 INFO    ] time= 05/06/2026 02:43:44
[2026-06-05 02:43:44,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:43:44,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:43:45,055.055 INFO    ] No existing commands found in stream
[2026-06-05 02:43:50,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:43:50,091.091 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 02:43:53,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:43:53,987.987 INFO    ] Checking for system updates...
[2026-06-05 02:43:54,028.028 INFO    ] 200
[2026-06-05 02:43:54,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:54,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:43:54,092.092 INFO    ] No update needed
[2026-06-05 02:43:54,095.095 INFO    ] Checking for camera pi updates...
[2026-06-05 02:43:54,132.132 INFO    ] 200
[2026-06-05 02:43:54,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:43:54,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:43:54,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:43:54,229.229 INFO    ] No camera update needed
[2026-06-05 02:43:54,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:43:54,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:43:54,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:43:54,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:43:56,283.283 INFO    ] ================================================
[2026-06-05 02:43:56,298.298 INFO    ] Launching Daemon at Fri Jun  5 02:43:56 IST 2026
[2026-06-05 02:43:56,309.309 INFO    ] ================================================
[2026-06-05 02:43:56,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:43:56
[2026-06-05 02:43:57,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:43:57,744.744 INFO    ] Initializing speech engine...
[2026-06-05 02:43:57,751.751 INFO    ] 2026-06-05 02:43:57
[2026-06-05 02:43:58,009.009 INFO    ] 2026-06-05 02:43:58
[2026-06-05 02:43:58,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:43:58,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:43:58,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:43:58,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:43:58,501.501 INFO    ] time= 05/06/2026 02:43:58
[2026-06-05 02:43:58,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:43:58,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:43:58,706.706 INFO    ] No existing commands found in stream
[2026-06-05 02:44:03,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:44:03,737.737 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 02:44:06,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:44:06,349.349 INFO    ] Checking for system updates...
[2026-06-05 02:44:06,390.390 INFO    ] 200
[2026-06-05 02:44:06,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:06,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:44:06,448.448 INFO    ] No update needed
[2026-06-05 02:44:06,450.450 INFO    ] Checking for camera pi updates...
[2026-06-05 02:44:06,485.485 INFO    ] 200
[2026-06-05 02:44:06,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:06,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:44:06,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:44:06,575.575 INFO    ] No camera update needed
[2026-06-05 02:44:06,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:44:06,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:44:06,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:44:06,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:44:08,629.629 INFO    ] ================================================
[2026-06-05 02:44:08,645.645 INFO    ] Launching Daemon at Fri Jun  5 02:44:08 IST 2026
[2026-06-05 02:44:08,655.655 INFO    ] ================================================
[2026-06-05 02:44:09,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:44:09
[2026-06-05 02:44:09,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:44:10,150.150 INFO    ] Initializing speech engine...
[2026-06-05 02:44:10,158.158 INFO    ] 2026-06-05 02:44:10
[2026-06-05 02:44:10,407.407 INFO    ] 2026-06-05 02:44:10
[2026-06-05 02:44:10,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:44:10,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:44:10,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:44:10,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:44:10,869.869 INFO    ] time= 05/06/2026 02:44:10
[2026-06-05 02:44:10,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:44:10,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:44:11,025.025 INFO    ] No existing commands found in stream
[2026-06-05 02:44:16,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:44:16,040.040 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 02:44:19,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:44:19,251.251 INFO    ] Checking for system updates...
[2026-06-05 02:44:19,291.291 INFO    ] 200
[2026-06-05 02:44:19,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:19,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:44:19,350.350 INFO    ] No update needed
[2026-06-05 02:44:19,352.352 INFO    ] Checking for camera pi updates...
[2026-06-05 02:44:19,387.387 INFO    ] 200
[2026-06-05 02:44:19,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:19,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:44:19,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:44:19,480.480 INFO    ] No camera update needed
[2026-06-05 02:44:19,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:44:19,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:44:19,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:44:19,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:44:21,537.537 INFO    ] ================================================
[2026-06-05 02:44:21,552.552 INFO    ] Launching Daemon at Fri Jun  5 02:44:21 IST 2026
[2026-06-05 02:44:21,563.563 INFO    ] ================================================
[2026-06-05 02:44:22,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:44:22
[2026-06-05 02:44:22,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:44:23,205.205 INFO    ] Initializing speech engine...
[2026-06-05 02:44:23,213.213 INFO    ] 2026-06-05 02:44:23
[2026-06-05 02:44:23,501.501 INFO    ] 2026-06-05 02:44:23
[2026-06-05 02:44:23,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:44:23,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:44:23,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:44:23,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:44:23,991.991 INFO    ] time= 05/06/2026 02:44:23
[2026-06-05 02:44:24,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:44:24,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:44:24,167.167 INFO    ] No existing commands found in stream
[2026-06-05 02:44:29,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:44:29,198.198 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 02:44:32,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:44:32,806.806 INFO    ] Checking for system updates...
[2026-06-05 02:44:32,849.849 INFO    ] 200
[2026-06-05 02:44:32,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:32,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:44:32,925.925 INFO    ] No update needed
[2026-06-05 02:44:32,928.928 INFO    ] Checking for camera pi updates...
[2026-06-05 02:44:32,961.961 INFO    ] 200
[2026-06-05 02:44:32,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:33,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:44:33,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:44:33,043.043 INFO    ] No camera update needed
[2026-06-05 02:44:33,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:44:33,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:44:33,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:44:33,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:44:35,099.099 INFO    ] ================================================
[2026-06-05 02:44:35,114.114 INFO    ] Launching Daemon at Fri Jun  5 02:44:35 IST 2026
[2026-06-05 02:44:35,124.124 INFO    ] ================================================
[2026-06-05 02:44:35,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:44:35
[2026-06-05 02:44:36,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:44:36,614.614 INFO    ] Initializing speech engine...
[2026-06-05 02:44:36,629.629 INFO    ] 2026-06-05 02:44:36
[2026-06-05 02:44:36,897.897 INFO    ] 2026-06-05 02:44:36
[2026-06-05 02:44:36,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:44:37,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:44:37,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:44:37,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:44:37,405.405 INFO    ] time= 05/06/2026 02:44:37
[2026-06-05 02:44:37,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:44:37,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:44:37,582.582 INFO    ] No existing commands found in stream
[2026-06-05 02:44:42,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:44:42,617.617 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 02:44:43,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:44:43,132.132 INFO    ] Checking for system updates...
[2026-06-05 02:44:43,173.173 INFO    ] 200
[2026-06-05 02:44:43,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:43,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:44:43,231.231 INFO    ] No update needed
[2026-06-05 02:44:43,233.233 INFO    ] Checking for camera pi updates...
[2026-06-05 02:44:43,271.271 INFO    ] 200
[2026-06-05 02:44:43,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:43,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:44:43,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:44:43,464.464 INFO    ] No camera update needed
[2026-06-05 02:44:43,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:44:43,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:44:43,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:44:43,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:44:45,524.524 INFO    ] ================================================
[2026-06-05 02:44:45,539.539 INFO    ] Launching Daemon at Fri Jun  5 02:44:45 IST 2026
[2026-06-05 02:44:45,550.550 INFO    ] ================================================
[2026-06-05 02:44:46,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:44:46
[2026-06-05 02:44:46,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:44:47,019.019 INFO    ] Initializing speech engine...
[2026-06-05 02:44:47,027.027 INFO    ] 2026-06-05 02:44:47
[2026-06-05 02:44:47,283.283 INFO    ] 2026-06-05 02:44:47
[2026-06-05 02:44:47,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:44:47,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:44:47,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:44:47,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:44:47,745.745 INFO    ] time= 05/06/2026 02:44:47
[2026-06-05 02:44:47,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:44:47,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:44:47,889.889 INFO    ] No existing commands found in stream
[2026-06-05 02:44:52,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:44:52,904.904 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 02:44:54,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:44:54,988.988 INFO    ] Checking for system updates...
[2026-06-05 02:44:55,025.025 INFO    ] 200
[2026-06-05 02:44:55,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:55,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:44:55,083.083 INFO    ] No update needed
[2026-06-05 02:44:55,086.086 INFO    ] Checking for camera pi updates...
[2026-06-05 02:44:55,120.120 INFO    ] 200
[2026-06-05 02:44:55,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:44:55,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:44:55,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:44:55,212.212 INFO    ] No camera update needed
[2026-06-05 02:44:55,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:44:55,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:44:55,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:44:55,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:44:57,269.269 INFO    ] ================================================
[2026-06-05 02:44:57,285.285 INFO    ] Launching Daemon at Fri Jun  5 02:44:57 IST 2026
[2026-06-05 02:44:57,297.297 INFO    ] ================================================
[2026-06-05 02:44:57,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:44:57
[2026-06-05 02:44:58,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:44:58,752.752 INFO    ] Initializing speech engine...
[2026-06-05 02:44:58,758.758 INFO    ] 2026-06-05 02:44:58
[2026-06-05 02:44:59,019.019 INFO    ] 2026-06-05 02:44:59
[2026-06-05 02:44:59,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:44:59,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:44:59,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:44:59,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:44:59,472.472 INFO    ] time= 05/06/2026 02:44:59
[2026-06-05 02:44:59,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:44:59,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:44:59,624.624 INFO    ] No existing commands found in stream
[2026-06-05 02:45:04,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:45:04,639.639 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 02:45:06,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:45:06,536.536 INFO    ] Checking for system updates...
[2026-06-05 02:45:06,576.576 INFO    ] 200
[2026-06-05 02:45:06,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:06,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:06,633.633 INFO    ] No update needed
[2026-06-05 02:45:06,636.636 INFO    ] Checking for camera pi updates...
[2026-06-05 02:45:06,673.673 INFO    ] 200
[2026-06-05 02:45:06,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:06,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:45:06,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:06,783.783 INFO    ] No camera update needed
[2026-06-05 02:45:06,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:45:06,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:45:06,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:45:06,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:45:08,856.856 INFO    ] ================================================
[2026-06-05 02:45:08,872.872 INFO    ] Launching Daemon at Fri Jun  5 02:45:08 IST 2026
[2026-06-05 02:45:08,883.883 INFO    ] ================================================
[2026-06-05 02:45:09,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:45:09
[2026-06-05 02:45:10,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:45:10,311.311 INFO    ] Initializing speech engine...
[2026-06-05 02:45:10,320.320 INFO    ] 2026-06-05 02:45:10
[2026-06-05 02:45:10,567.567 INFO    ] 2026-06-05 02:45:10
[2026-06-05 02:45:10,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:45:10,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:45:10,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:45:10,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:45:11,037.037 INFO    ] time= 05/06/2026 02:45:10
[2026-06-05 02:45:11,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:45:11,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:45:11,183.183 INFO    ] No existing commands found in stream
[2026-06-05 02:45:16,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:45:16,197.197 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 02:45:18,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:45:18,982.982 INFO    ] Checking for system updates...
[2026-06-05 02:45:19,018.018 INFO    ] 200
[2026-06-05 02:45:19,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:19,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:19,080.080 INFO    ] No update needed
[2026-06-05 02:45:19,083.083 INFO    ] Checking for camera pi updates...
[2026-06-05 02:45:19,120.120 INFO    ] 200
[2026-06-05 02:45:19,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:19,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:45:19,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:19,206.206 INFO    ] No camera update needed
[2026-06-05 02:45:19,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:45:19,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:45:19,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:45:19,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:45:21,269.269 INFO    ] ================================================
[2026-06-05 02:45:21,285.285 INFO    ] Launching Daemon at Fri Jun  5 02:45:21 IST 2026
[2026-06-05 02:45:21,296.296 INFO    ] ================================================
[2026-06-05 02:45:21,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:45:21
[2026-06-05 02:45:22,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:45:22,761.761 INFO    ] Initializing speech engine...
[2026-06-05 02:45:22,772.772 INFO    ] 2026-06-05 02:45:22
[2026-06-05 02:45:23,034.034 INFO    ] 2026-06-05 02:45:23
[2026-06-05 02:45:23,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:45:23,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:45:23,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:45:23,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:45:23,580.580 INFO    ] time= 05/06/2026 02:45:23
[2026-06-05 02:45:23,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:45:23,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:45:23,716.716 INFO    ] No existing commands found in stream
[2026-06-05 02:45:28,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:45:28,748.748 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 02:45:30,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:45:30,361.361 INFO    ] Checking for system updates...
[2026-06-05 02:45:30,398.398 INFO    ] 200
[2026-06-05 02:45:30,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:30,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:30,458.458 INFO    ] No update needed
[2026-06-05 02:45:30,460.460 INFO    ] Checking for camera pi updates...
[2026-06-05 02:45:30,494.494 INFO    ] 200
[2026-06-05 02:45:30,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:30,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:45:30,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:30,590.590 INFO    ] No camera update needed
[2026-06-05 02:45:30,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:45:30,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:45:30,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:45:30,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:45:32,648.648 INFO    ] ================================================
[2026-06-05 02:45:32,666.666 INFO    ] Launching Daemon at Fri Jun  5 02:45:32 IST 2026
[2026-06-05 02:45:32,680.680 INFO    ] ================================================
[2026-06-05 02:45:33,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:45:33
[2026-06-05 02:45:34,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:45:34,325.325 INFO    ] Initializing speech engine...
[2026-06-05 02:45:34,335.335 INFO    ] 2026-06-05 02:45:34
[2026-06-05 02:45:34,621.621 INFO    ] 2026-06-05 02:45:34
[2026-06-05 02:45:34,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:45:34,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:45:34,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:45:35,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:45:35,156.156 INFO    ] time= 05/06/2026 02:45:35
[2026-06-05 02:45:35,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:45:35,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:45:35,303.303 INFO    ] No existing commands found in stream
[2026-06-05 02:45:40,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:45:40,323.323 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 02:45:42,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:45:42,230.230 INFO    ] Checking for system updates...
[2026-06-05 02:45:42,273.273 INFO    ] 200
[2026-06-05 02:45:42,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:42,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:42,339.339 INFO    ] No update needed
[2026-06-05 02:45:42,341.341 INFO    ] Checking for camera pi updates...
[2026-06-05 02:45:42,375.375 INFO    ] 200
[2026-06-05 02:45:42,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:42,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:45:42,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:42,472.472 INFO    ] No camera update needed
[2026-06-05 02:45:42,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:45:42,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:45:42,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:45:42,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:45:44,535.535 INFO    ] ================================================
[2026-06-05 02:45:44,550.550 INFO    ] Launching Daemon at Fri Jun  5 02:45:44 IST 2026
[2026-06-05 02:45:44,560.560 INFO    ] ================================================
[2026-06-05 02:45:45,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:45:45
[2026-06-05 02:45:45,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:45:46,040.040 INFO    ] Initializing speech engine...
[2026-06-05 02:45:46,050.050 INFO    ] 2026-06-05 02:45:46
[2026-06-05 02:45:46,301.301 INFO    ] 2026-06-05 02:45:46
[2026-06-05 02:45:46,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:45:46,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:45:46,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:45:46,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:45:46,789.789 INFO    ] time= 05/06/2026 02:45:46
[2026-06-05 02:45:46,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:45:46,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:45:46,937.937 INFO    ] No existing commands found in stream
[2026-06-05 02:45:51,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:45:51,952.952 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 02:45:54,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:45:54,621.621 INFO    ] Checking for system updates...
[2026-06-05 02:45:54,661.661 INFO    ] 200
[2026-06-05 02:45:54,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:54,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:54,718.718 INFO    ] No update needed
[2026-06-05 02:45:54,721.721 INFO    ] Checking for camera pi updates...
[2026-06-05 02:45:54,756.756 INFO    ] 200
[2026-06-05 02:45:54,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:45:54,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:45:54,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:45:54,851.851 INFO    ] No camera update needed
[2026-06-05 02:45:54,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:45:54,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:45:54,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:45:54,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:45:56,908.908 INFO    ] ================================================
[2026-06-05 02:45:56,923.923 INFO    ] Launching Daemon at Fri Jun  5 02:45:56 IST 2026
[2026-06-05 02:45:56,934.934 INFO    ] ================================================
[2026-06-05 02:45:57,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:45:57
[2026-06-05 02:45:58,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:45:58,354.354 INFO    ] Initializing speech engine...
[2026-06-05 02:45:58,363.363 INFO    ] 2026-06-05 02:45:58
[2026-06-05 02:45:58,658.658 INFO    ] 2026-06-05 02:45:58
[2026-06-05 02:45:58,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:45:58,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:45:58,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:45:59,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:45:59,075.075 INFO    ] time= 05/06/2026 02:45:59
[2026-06-05 02:45:59,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:45:59,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:45:59,178.178 INFO    ] No existing commands found in stream
[2026-06-05 02:46:04,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:46:04,205.205 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 02:46:07,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:46:07,178.178 INFO    ] Checking for system updates...
[2026-06-05 02:46:07,215.215 INFO    ] 200
[2026-06-05 02:46:07,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:46:07,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:46:07,272.272 INFO    ] No update needed
[2026-06-05 02:46:07,275.275 INFO    ] Checking for camera pi updates...
[2026-06-05 02:46:07,309.309 INFO    ] 200
[2026-06-05 02:46:07,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:46:07,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:46:07,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:46:07,409.409 INFO    ] No camera update needed
[2026-06-05 02:46:07,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:46:07,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:46:07,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:46:07,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:46:09,463.463 INFO    ] ================================================
[2026-06-05 02:46:09,478.478 INFO    ] Launching Daemon at Fri Jun  5 02:46:09 IST 2026
[2026-06-05 02:46:09,489.489 INFO    ] ================================================
[2026-06-05 02:46:10,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:46:10
[2026-06-05 02:46:10,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:46:10,932.932 INFO    ] Initializing speech engine...
[2026-06-05 02:46:10,939.939 INFO    ] 2026-06-05 02:46:10
[2026-06-05 02:46:11,198.198 INFO    ] 2026-06-05 02:46:11
[2026-06-05 02:46:11,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:46:11,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:46:11,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:46:11,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:46:11,654.654 INFO    ] time= 05/06/2026 02:46:11
[2026-06-05 02:46:11,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:46:11,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:46:11,809.809 INFO    ] No existing commands found in stream
[2026-06-05 02:46:16,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:46:16,833.833 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 02:46:20,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:46:20,967.967 INFO    ] Checking for system updates...
[2026-06-05 02:46:21,005.005 INFO    ] 200
[2026-06-05 02:46:21,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:46:21,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:46:21,068.068 INFO    ] No update needed
[2026-06-05 02:46:21,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 02:46:21,107.107 INFO    ] 200
[2026-06-05 02:46:21,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:46:21,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:46:21,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:46:21,200.200 INFO    ] No camera update needed
[2026-06-05 02:46:21,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:46:21,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:46:21,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:46:21,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:46:23,257.257 INFO    ] ================================================
[2026-06-05 02:46:23,273.273 INFO    ] Launching Daemon at Fri Jun  5 02:46:23 IST 2026
[2026-06-05 02:46:23,284.284 INFO    ] ================================================
[2026-06-05 02:46:23,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:46:23
[2026-06-05 02:46:24,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:46:24,866.866 INFO    ] Initializing speech engine...
[2026-06-05 02:46:24,873.873 INFO    ] 2026-06-05 02:46:24
[2026-06-05 02:46:25,141.141 INFO    ] 2026-06-05 02:46:25
[2026-06-05 02:46:25,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:46:25,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:46:25,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:46:25,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:46:25,577.577 INFO    ] time= 05/06/2026 02:46:25
[2026-06-05 02:46:25,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:46:25,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:46:25,752.752 INFO    ] No existing commands found in stream
[2026-06-05 02:46:30,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:46:30,787.787 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 02:46:32,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:46:32,902.902 INFO    ] Checking for system updates...
[2026-06-05 02:46:32,940.940 INFO    ] 200
[2026-06-05 02:46:32,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:46:33,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:46:33,003.003 INFO    ] No update needed
[2026-06-05 02:46:33,006.006 INFO    ] Checking for camera pi updates...
[2026-06-05 02:46:33,041.041 INFO    ] 200
[2026-06-05 02:46:33,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:46:33,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:46:33,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:46:33,139.139 INFO    ] No camera update needed
[2026-06-05 02:46:33,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:46:33,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:46:33,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:46:33,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:46:35,202.202 INFO    ] ================================================
[2026-06-05 02:46:35,218.218 INFO    ] Launching Daemon at Fri Jun  5 02:46:35 IST 2026
[2026-06-05 02:46:35,233.233 INFO    ] ================================================
[2026-06-05 02:46:35,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:46:35
[2026-06-05 02:46:36,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:46:36,662.662 INFO    ] Initializing speech engine...
[2026-06-05 02:46:36,672.672 INFO    ] 2026-06-05 02:46:36
[2026-06-05 02:46:36,922.922 INFO    ] 2026-06-05 02:46:36
[2026-06-05 02:46:36,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:46:37,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:46:37,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:46:37,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:46:37,279.279 INFO    ] time= 05/06/2026 02:46:37
[2026-06-05 02:46:37,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:46:37,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:46:37,377.377 INFO    ] No existing commands found in stream
[2026-06-05 02:46:42,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:46:42,391.391 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 02:46:46,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:46:46,290.290 INFO    ] Checking for system updates...
[2026-06-05 02:46:46,326.326 INFO    ] 200
[2026-06-05 02:46:46,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:46:46,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:46:46,383.383 INFO    ] No update needed
[2026-06-05 02:46:46,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 02:46:46,419.419 INFO    ] 200
[2026-06-05 02:46:46,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:46:46,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:46:46,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:46:46,607.607 INFO    ] No camera update needed
[2026-06-05 02:46:46,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:46:46,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:46:46,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:46:46,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:46:48,666.666 INFO    ] ================================================
[2026-06-05 02:46:48,682.682 INFO    ] Launching Daemon at Fri Jun  5 02:46:48 IST 2026
[2026-06-05 02:46:48,693.693 INFO    ] ================================================
[2026-06-05 02:46:49,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:46:49
[2026-06-05 02:46:49,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:46:50,114.114 INFO    ] Initializing speech engine...
[2026-06-05 02:46:50,124.124 INFO    ] 2026-06-05 02:46:50
[2026-06-05 02:46:50,368.368 INFO    ] 2026-06-05 02:46:50
[2026-06-05 02:46:50,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:46:50,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:46:50,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:46:50,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:46:50,715.715 INFO    ] time= 05/06/2026 02:46:50
[2026-06-05 02:46:50,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:46:50,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:46:50,813.813 INFO    ] No existing commands found in stream
[2026-06-05 02:46:55,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:46:55,836.836 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 02:47:00,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:47:00,087.087 INFO    ] Checking for system updates...
[2026-06-05 02:47:00,126.126 INFO    ] 200
[2026-06-05 02:47:00,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:00,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:47:00,189.189 INFO    ] No update needed
[2026-06-05 02:47:00,191.191 INFO    ] Checking for camera pi updates...
[2026-06-05 02:47:00,225.225 INFO    ] 200
[2026-06-05 02:47:00,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:00,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:47:00,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:47:00,322.322 INFO    ] No camera update needed
[2026-06-05 02:47:00,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:47:00,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:47:00,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:47:00,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:47:02,382.382 INFO    ] ================================================
[2026-06-05 02:47:02,403.403 INFO    ] Launching Daemon at Fri Jun  5 02:47:02 IST 2026
[2026-06-05 02:47:02,420.420 INFO    ] ================================================
[2026-06-05 02:47:03,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:47:03
[2026-06-05 02:47:03,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:47:04,124.124 INFO    ] Initializing speech engine...
[2026-06-05 02:47:04,133.133 INFO    ] 2026-06-05 02:47:04
[2026-06-05 02:47:04,419.419 INFO    ] 2026-06-05 02:47:04
[2026-06-05 02:47:04,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:47:04,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:47:04,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:47:04,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:47:04,886.886 INFO    ] time= 05/06/2026 02:47:04
[2026-06-05 02:47:04,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:47:04,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:47:05,036.036 INFO    ] No existing commands found in stream
[2026-06-05 02:47:10,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:47:10,050.050 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 02:47:10,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:47:10,771.771 INFO    ] Checking for system updates...
[2026-06-05 02:47:10,807.807 INFO    ] 200
[2026-06-05 02:47:10,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:10,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:47:10,864.864 INFO    ] No update needed
[2026-06-05 02:47:10,866.866 INFO    ] Checking for camera pi updates...
[2026-06-05 02:47:10,900.900 INFO    ] 200
[2026-06-05 02:47:10,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:10,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:47:11,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:47:11,002.002 INFO    ] No camera update needed
[2026-06-05 02:47:11,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:47:11,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:47:11,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:47:11,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:47:13,060.060 INFO    ] ================================================
[2026-06-05 02:47:13,077.077 INFO    ] Launching Daemon at Fri Jun  5 02:47:13 IST 2026
[2026-06-05 02:47:13,087.087 INFO    ] ================================================
[2026-06-05 02:47:13,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:47:13
[2026-06-05 02:47:14,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:47:14,561.561 INFO    ] Initializing speech engine...
[2026-06-05 02:47:14,568.568 INFO    ] 2026-06-05 02:47:14
[2026-06-05 02:47:14,828.828 INFO    ] 2026-06-05 02:47:14
[2026-06-05 02:47:14,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:47:15,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:47:15,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:47:15,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:47:15,269.269 INFO    ] time= 05/06/2026 02:47:15
[2026-06-05 02:47:15,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:47:15,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:47:15,436.436 INFO    ] No existing commands found in stream
[2026-06-05 02:47:20,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:47:20,451.451 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 02:47:24,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:47:24,060.060 INFO    ] Checking for system updates...
[2026-06-05 02:47:24,096.096 INFO    ] 200
[2026-06-05 02:47:24,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:24,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:47:24,167.167 INFO    ] No update needed
[2026-06-05 02:47:24,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 02:47:24,205.205 INFO    ] 200
[2026-06-05 02:47:24,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:24,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:47:24,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:47:24,302.302 INFO    ] No camera update needed
[2026-06-05 02:47:24,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:47:24,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:47:24,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:47:24,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:47:26,358.358 INFO    ] ================================================
[2026-06-05 02:47:26,373.373 INFO    ] Launching Daemon at Fri Jun  5 02:47:26 IST 2026
[2026-06-05 02:47:26,384.384 INFO    ] ================================================
[2026-06-05 02:47:26,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:47:26
[2026-06-05 02:47:27,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:47:27,831.831 INFO    ] Initializing speech engine...
[2026-06-05 02:47:27,838.838 INFO    ] 2026-06-05 02:47:27
[2026-06-05 02:47:28,083.083 INFO    ] 2026-06-05 02:47:28
[2026-06-05 02:47:28,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:47:28,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:47:28,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:47:28,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:47:28,578.578 INFO    ] time= 05/06/2026 02:47:28
[2026-06-05 02:47:28,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:47:28,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:47:28,710.710 INFO    ] No existing commands found in stream
[2026-06-05 02:47:33,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:47:33,733.733 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 02:47:36,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:47:36,827.827 INFO    ] Checking for system updates...
[2026-06-05 02:47:36,866.866 INFO    ] 200
[2026-06-05 02:47:36,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:36,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:47:36,923.923 INFO    ] No update needed
[2026-06-05 02:47:36,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 02:47:36,963.963 INFO    ] 200
[2026-06-05 02:47:36,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:37,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:47:37,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:47:37,067.067 INFO    ] No camera update needed
[2026-06-05 02:47:37,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:47:37,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:47:37,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:47:37,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:47:39,123.123 INFO    ] ================================================
[2026-06-05 02:47:39,139.139 INFO    ] Launching Daemon at Fri Jun  5 02:47:39 IST 2026
[2026-06-05 02:47:39,150.150 INFO    ] ================================================
[2026-06-05 02:47:39,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:47:39
[2026-06-05 02:47:40,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:47:40,578.578 INFO    ] Initializing speech engine...
[2026-06-05 02:47:40,588.588 INFO    ] 2026-06-05 02:47:40
[2026-06-05 02:47:40,835.835 INFO    ] 2026-06-05 02:47:40
[2026-06-05 02:47:40,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:47:41,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:47:41,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:47:41,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:47:41,211.211 INFO    ] time= 05/06/2026 02:47:41
[2026-06-05 02:47:41,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:47:41,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:47:41,371.371 INFO    ] No existing commands found in stream
[2026-06-05 02:47:46,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:47:46,400.400 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 02:47:47,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:47:47,741.741 INFO    ] Checking for system updates...
[2026-06-05 02:47:47,777.777 INFO    ] 200
[2026-06-05 02:47:47,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:47,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:47:47,849.849 INFO    ] No update needed
[2026-06-05 02:47:47,852.852 INFO    ] Checking for camera pi updates...
[2026-06-05 02:47:47,885.885 INFO    ] 200
[2026-06-05 02:47:47,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:47,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:47:47,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:47:47,980.980 INFO    ] No camera update needed
[2026-06-05 02:47:47,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:47:47,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:47:47,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:47:47,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:47:50,036.036 INFO    ] ================================================
[2026-06-05 02:47:50,052.052 INFO    ] Launching Daemon at Fri Jun  5 02:47:50 IST 2026
[2026-06-05 02:47:50,063.063 INFO    ] ================================================
[2026-06-05 02:47:50,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:47:50
[2026-06-05 02:47:51,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:47:51,535.535 INFO    ] Initializing speech engine...
[2026-06-05 02:47:51,544.544 INFO    ] 2026-06-05 02:47:51
[2026-06-05 02:47:51,803.803 INFO    ] 2026-06-05 02:47:51
[2026-06-05 02:47:51,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:47:52,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:47:52,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:47:52,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:47:52,266.266 INFO    ] time= 05/06/2026 02:47:52
[2026-06-05 02:47:52,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:47:52,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:47:52,410.410 INFO    ] No existing commands found in stream
[2026-06-05 02:47:57,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:47:57,426.426 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 02:47:57,863.863 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:47:57,868.868 INFO    ] Checking for system updates...
[2026-06-05 02:47:57,913.913 INFO    ] 200
[2026-06-05 02:47:57,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:57,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:47:57,982.982 INFO    ] No update needed
[2026-06-05 02:47:57,985.985 INFO    ] Checking for camera pi updates...
[2026-06-05 02:47:58,022.022 INFO    ] 200
[2026-06-05 02:47:58,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:47:58,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:47:58,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:47:58,123.123 INFO    ] No camera update needed
[2026-06-05 02:47:58,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:47:58,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:47:58,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:47:58,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:48:00,179.179 INFO    ] ================================================
[2026-06-05 02:48:00,194.194 INFO    ] Launching Daemon at Fri Jun  5 02:48:00 IST 2026
[2026-06-05 02:48:00,205.205 INFO    ] ================================================
[2026-06-05 02:48:00,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:48:00
[2026-06-05 02:48:01,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:48:01,619.619 INFO    ] Initializing speech engine...
[2026-06-05 02:48:01,646.646 INFO    ] 2026-06-05 02:48:01
[2026-06-05 02:48:02,172.172 INFO    ] 2026-06-05 02:48:02
[2026-06-05 02:48:02,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:48:02,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:48:02,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:48:02,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:48:02,666.666 INFO    ] time= 05/06/2026 02:48:02
[2026-06-05 02:48:02,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:48:02,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:48:02,830.830 INFO    ] No existing commands found in stream
[2026-06-05 02:48:07,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:48:07,860.860 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 02:48:08,803.803 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:48:08,806.806 INFO    ] Checking for system updates...
[2026-06-05 02:48:08,842.842 INFO    ] 200
[2026-06-05 02:48:08,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:08,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:48:08,901.901 INFO    ] No update needed
[2026-06-05 02:48:08,903.903 INFO    ] Checking for camera pi updates...
[2026-06-05 02:48:08,945.945 INFO    ] 200
[2026-06-05 02:48:08,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:08,988.988 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:48:09,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:48:09,037.037 INFO    ] No camera update needed
[2026-06-05 02:48:09,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:48:09,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:48:09,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:48:09,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:48:11,095.095 INFO    ] ================================================
[2026-06-05 02:48:11,112.112 INFO    ] Launching Daemon at Fri Jun  5 02:48:11 IST 2026
[2026-06-05 02:48:11,123.123 INFO    ] ================================================
[2026-06-05 02:48:11,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:48:11
[2026-06-05 02:48:12,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:48:12,553.553 INFO    ] Initializing speech engine...
[2026-06-05 02:48:12,562.562 INFO    ] 2026-06-05 02:48:12
[2026-06-05 02:48:12,813.813 INFO    ] 2026-06-05 02:48:12
[2026-06-05 02:48:12,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:48:13,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:48:13,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:48:13,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:48:13,188.188 INFO    ] time= 05/06/2026 02:48:13
[2026-06-05 02:48:13,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:48:13,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:48:13,269.269 INFO    ] No existing commands found in stream
[2026-06-05 02:48:18,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:48:18,282.282 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 02:48:20,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:48:20,671.671 INFO    ] Checking for system updates...
[2026-06-05 02:48:20,710.710 INFO    ] 200
[2026-06-05 02:48:20,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:20,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:48:20,778.778 INFO    ] No update needed
[2026-06-05 02:48:20,780.780 INFO    ] Checking for camera pi updates...
[2026-06-05 02:48:20,818.818 INFO    ] 200
[2026-06-05 02:48:20,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:20,861.861 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:48:20,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:48:20,897.897 INFO    ] No camera update needed
[2026-06-05 02:48:20,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:48:20,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:48:20,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:48:20,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:48:22,952.952 INFO    ] ================================================
[2026-06-05 02:48:22,969.969 INFO    ] Launching Daemon at Fri Jun  5 02:48:22 IST 2026
[2026-06-05 02:48:22,980.980 INFO    ] ================================================
[2026-06-05 02:48:23,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:48:23
[2026-06-05 02:48:24,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:48:24,407.407 INFO    ] Initializing speech engine...
[2026-06-05 02:48:24,416.416 INFO    ] 2026-06-05 02:48:24
[2026-06-05 02:48:24,662.662 INFO    ] 2026-06-05 02:48:24
[2026-06-05 02:48:24,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:48:24,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:48:24,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:48:25,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:48:25,032.032 INFO    ] time= 05/06/2026 02:48:25
[2026-06-05 02:48:25,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:48:25,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:48:25,206.206 INFO    ] No existing commands found in stream
[2026-06-05 02:48:30,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:48:30,239.239 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 02:48:34,449.449 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:48:34,451.451 INFO    ] Checking for system updates...
[2026-06-05 02:48:34,487.487 INFO    ] 200
[2026-06-05 02:48:34,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:34,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:48:34,546.546 INFO    ] No update needed
[2026-06-05 02:48:34,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 02:48:34,587.587 INFO    ] 200
[2026-06-05 02:48:34,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:34,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:48:34,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:48:34,678.678 INFO    ] No camera update needed
[2026-06-05 02:48:34,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:48:34,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:48:34,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:48:34,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:48:36,733.733 INFO    ] ================================================
[2026-06-05 02:48:36,749.749 INFO    ] Launching Daemon at Fri Jun  5 02:48:36 IST 2026
[2026-06-05 02:48:36,760.760 INFO    ] ================================================
[2026-06-05 02:48:37,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:48:37
[2026-06-05 02:48:37,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:48:38,165.165 INFO    ] Initializing speech engine...
[2026-06-05 02:48:38,174.174 INFO    ] 2026-06-05 02:48:38
[2026-06-05 02:48:38,449.449 INFO    ] 2026-06-05 02:48:38
[2026-06-05 02:48:38,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:48:38,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:48:38,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:48:38,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:48:38,830.830 INFO    ] time= 05/06/2026 02:48:38
[2026-06-05 02:48:38,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:48:38,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:48:39,009.009 INFO    ] No existing commands found in stream
[2026-06-05 02:48:44,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:48:44,047.047 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 02:48:46,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:48:46,992.992 INFO    ] Checking for system updates...
[2026-06-05 02:48:47,027.027 INFO    ] 200
[2026-06-05 02:48:47,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:47,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:48:47,085.085 INFO    ] No update needed
[2026-06-05 02:48:47,087.087 INFO    ] Checking for camera pi updates...
[2026-06-05 02:48:47,121.121 INFO    ] 200
[2026-06-05 02:48:47,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:47,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:48:47,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:48:47,222.222 INFO    ] No camera update needed
[2026-06-05 02:48:47,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:48:47,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:48:47,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:48:47,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:48:49,277.277 INFO    ] ================================================
[2026-06-05 02:48:49,293.293 INFO    ] Launching Daemon at Fri Jun  5 02:48:49 IST 2026
[2026-06-05 02:48:49,304.304 INFO    ] ================================================
[2026-06-05 02:48:49,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:48:49
[2026-06-05 02:48:50,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:48:50,771.771 INFO    ] Initializing speech engine...
[2026-06-05 02:48:50,778.778 INFO    ] 2026-06-05 02:48:50
[2026-06-05 02:48:51,039.039 INFO    ] 2026-06-05 02:48:51
[2026-06-05 02:48:51,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:48:51,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:48:51,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:48:51,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:48:51,505.505 INFO    ] time= 05/06/2026 02:48:51
[2026-06-05 02:48:51,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:48:51,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:48:51,646.646 INFO    ] No existing commands found in stream
[2026-06-05 02:48:56,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:48:56,661.661 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 02:48:59,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:48:59,005.005 INFO    ] Checking for system updates...
[2026-06-05 02:48:59,048.048 INFO    ] 200
[2026-06-05 02:48:59,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:59,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:48:59,108.108 INFO    ] No update needed
[2026-06-05 02:48:59,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 02:48:59,151.151 INFO    ] 200
[2026-06-05 02:48:59,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:48:59,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:48:59,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:48:59,368.368 INFO    ] No camera update needed
[2026-06-05 02:48:59,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:48:59,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:48:59,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:48:59,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:49:01,428.428 INFO    ] ================================================
[2026-06-05 02:49:01,444.444 INFO    ] Launching Daemon at Fri Jun  5 02:49:01 IST 2026
[2026-06-05 02:49:01,454.454 INFO    ] ================================================
[2026-06-05 02:49:02,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:49:02
[2026-06-05 02:49:02,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:49:03,235.235 INFO    ] Initializing speech engine...
[2026-06-05 02:49:03,247.247 INFO    ] 2026-06-05 02:49:03
[2026-06-05 02:49:03,527.527 INFO    ] 2026-06-05 02:49:03
[2026-06-05 02:49:03,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:49:03,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:49:03,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:49:03,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:49:03,965.965 INFO    ] time= 05/06/2026 02:49:03
[2026-06-05 02:49:03,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:49:04,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:49:04,135.135 INFO    ] No existing commands found in stream
[2026-06-05 02:49:09,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:49:09,150.150 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 02:49:11,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:49:11,257.257 INFO    ] Checking for system updates...
[2026-06-05 02:49:11,294.294 INFO    ] 200
[2026-06-05 02:49:11,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:11,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:49:11,360.360 INFO    ] No update needed
[2026-06-05 02:49:11,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 02:49:11,401.401 INFO    ] 200
[2026-06-05 02:49:11,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:11,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:49:11,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:49:11,502.502 INFO    ] No camera update needed
[2026-06-05 02:49:11,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:49:11,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:49:11,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:49:11,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:49:13,560.560 INFO    ] ================================================
[2026-06-05 02:49:13,576.576 INFO    ] Launching Daemon at Fri Jun  5 02:49:13 IST 2026
[2026-06-05 02:49:13,586.586 INFO    ] ================================================
[2026-06-05 02:49:14,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:49:14
[2026-06-05 02:49:14,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:49:15,030.030 INFO    ] Initializing speech engine...
[2026-06-05 02:49:15,057.057 INFO    ] 2026-06-05 02:49:15
[2026-06-05 02:49:15,330.330 INFO    ] 2026-06-05 02:49:15
[2026-06-05 02:49:15,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:49:15,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:49:15,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:49:15,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:49:15,681.681 INFO    ] time= 05/06/2026 02:49:15
[2026-06-05 02:49:15,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:49:15,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:49:15,760.760 INFO    ] No existing commands found in stream
[2026-06-05 02:49:20,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:49:20,776.776 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 02:49:22,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:49:22,944.944 INFO    ] Checking for system updates...
[2026-06-05 02:49:22,984.984 INFO    ] 200
[2026-06-05 02:49:22,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:23,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:49:23,044.044 INFO    ] No update needed
[2026-06-05 02:49:23,047.047 INFO    ] Checking for camera pi updates...
[2026-06-05 02:49:23,082.082 INFO    ] 200
[2026-06-05 02:49:23,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:23,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:49:23,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:49:23,181.181 INFO    ] No camera update needed
[2026-06-05 02:49:23,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:49:23,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:49:23,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:49:23,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:49:25,241.241 INFO    ] ================================================
[2026-06-05 02:49:25,256.256 INFO    ] Launching Daemon at Fri Jun  5 02:49:25 IST 2026
[2026-06-05 02:49:25,267.267 INFO    ] ================================================
[2026-06-05 02:49:25,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:49:25
[2026-06-05 02:49:26,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:49:26,679.679 INFO    ] Initializing speech engine...
[2026-06-05 02:49:26,686.686 INFO    ] 2026-06-05 02:49:26
[2026-06-05 02:49:26,959.959 INFO    ] 2026-06-05 02:49:26
[2026-06-05 02:49:26,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:49:27,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:49:27,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:49:27,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:49:27,339.339 INFO    ] time= 05/06/2026 02:49:27
[2026-06-05 02:49:27,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:49:27,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:49:27,523.523 INFO    ] No existing commands found in stream
[2026-06-05 02:49:32,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:49:32,551.551 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 02:49:34,178.178 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:49:34,180.180 INFO    ] Checking for system updates...
[2026-06-05 02:49:34,231.231 INFO    ] 200
[2026-06-05 02:49:34,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:34,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:49:34,301.301 INFO    ] No update needed
[2026-06-05 02:49:34,304.304 INFO    ] Checking for camera pi updates...
[2026-06-05 02:49:34,342.342 INFO    ] 200
[2026-06-05 02:49:34,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:34,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:49:34,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:49:34,452.452 INFO    ] No camera update needed
[2026-06-05 02:49:34,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:49:34,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:49:34,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:49:34,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:49:36,515.515 INFO    ] ================================================
[2026-06-05 02:49:36,531.531 INFO    ] Launching Daemon at Fri Jun  5 02:49:36 IST 2026
[2026-06-05 02:49:36,541.541 INFO    ] ================================================
[2026-06-05 02:49:37,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:49:37
[2026-06-05 02:49:37,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:49:38,148.148 INFO    ] Initializing speech engine...
[2026-06-05 02:49:38,156.156 INFO    ] 2026-06-05 02:49:38
[2026-06-05 02:49:38,428.428 INFO    ] 2026-06-05 02:49:38
[2026-06-05 02:49:38,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:49:38,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:49:38,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:49:38,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:49:38,884.884 INFO    ] time= 05/06/2026 02:49:38
[2026-06-05 02:49:38,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:49:39,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:49:39,065.065 INFO    ] No existing commands found in stream
[2026-06-05 02:49:44,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:49:44,081.081 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 02:49:45,312.312 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:49:45,315.315 INFO    ] Checking for system updates...
[2026-06-05 02:49:45,353.353 INFO    ] 200
[2026-06-05 02:49:45,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:45,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:49:45,418.418 INFO    ] No update needed
[2026-06-05 02:49:45,421.421 INFO    ] Checking for camera pi updates...
[2026-06-05 02:49:45,456.456 INFO    ] 200
[2026-06-05 02:49:45,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:45,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:49:45,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:49:45,558.558 INFO    ] No camera update needed
[2026-06-05 02:49:45,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:49:45,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:49:45,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:49:45,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:49:47,617.617 INFO    ] ================================================
[2026-06-05 02:49:47,632.632 INFO    ] Launching Daemon at Fri Jun  5 02:49:47 IST 2026
[2026-06-05 02:49:47,643.643 INFO    ] ================================================
[2026-06-05 02:49:48,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:49:48
[2026-06-05 02:49:48,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:49:49,067.067 INFO    ] Initializing speech engine...
[2026-06-05 02:49:49,085.085 INFO    ] 2026-06-05 02:49:49
[2026-06-05 02:49:49,357.357 INFO    ] 2026-06-05 02:49:49
[2026-06-05 02:49:49,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:49:49,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:49:49,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:49:49,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:49:49,745.745 INFO    ] time= 05/06/2026 02:49:49
[2026-06-05 02:49:49,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:49:49,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:49:49,855.855 INFO    ] No existing commands found in stream
[2026-06-05 02:49:54,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:49:54,873.873 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 02:49:56,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:49:56,478.478 INFO    ] Checking for system updates...
[2026-06-05 02:49:56,514.514 INFO    ] 200
[2026-06-05 02:49:56,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:56,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:49:56,572.572 INFO    ] No update needed
[2026-06-05 02:49:56,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 02:49:56,608.608 INFO    ] 200
[2026-06-05 02:49:56,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:49:56,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:49:56,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:49:56,697.697 INFO    ] No camera update needed
[2026-06-05 02:49:56,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:49:56,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:49:56,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:49:56,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:49:58,754.754 INFO    ] ================================================
[2026-06-05 02:49:58,770.770 INFO    ] Launching Daemon at Fri Jun  5 02:49:58 IST 2026
[2026-06-05 02:49:58,781.781 INFO    ] ================================================
[2026-06-05 02:49:59,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:49:59
[2026-06-05 02:50:00,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:50:00,323.323 INFO    ] Initializing speech engine...
[2026-06-05 02:50:00,330.330 INFO    ] 2026-06-05 02:50:00
[2026-06-05 02:50:00,615.615 INFO    ] 2026-06-05 02:50:00
[2026-06-05 02:50:00,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:50:00,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:50:00,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:50:01,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:50:01,110.110 INFO    ] time= 05/06/2026 02:50:01
[2026-06-05 02:50:01,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:50:01,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:50:01,274.274 INFO    ] No existing commands found in stream
[2026-06-05 02:50:06,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:50:06,295.295 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 02:50:08,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:50:08,635.635 INFO    ] Checking for system updates...
[2026-06-05 02:50:08,672.672 INFO    ] 200
[2026-06-05 02:50:08,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:08,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:50:08,732.732 INFO    ] No update needed
[2026-06-05 02:50:08,735.735 INFO    ] Checking for camera pi updates...
[2026-06-05 02:50:08,770.770 INFO    ] 200
[2026-06-05 02:50:08,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:08,815.815 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:50:08,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:50:08,863.863 INFO    ] No camera update needed
[2026-06-05 02:50:08,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:50:08,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:50:08,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:50:08,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:50:10,923.923 INFO    ] ================================================
[2026-06-05 02:50:10,939.939 INFO    ] Launching Daemon at Fri Jun  5 02:50:10 IST 2026
[2026-06-05 02:50:10,950.950 INFO    ] ================================================
[2026-06-05 02:50:11,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:50:11
[2026-06-05 02:50:12,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:50:12,576.576 INFO    ] Initializing speech engine...
[2026-06-05 02:50:12,588.588 INFO    ] 2026-06-05 02:50:12
[2026-06-05 02:50:12,865.865 INFO    ] 2026-06-05 02:50:12
[2026-06-05 02:50:12,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:50:13,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:50:13,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:50:13,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:50:13,403.403 INFO    ] time= 05/06/2026 02:50:13
[2026-06-05 02:50:13,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:50:13,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:50:13,557.557 INFO    ] No existing commands found in stream
[2026-06-05 02:50:18,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:50:18,578.578 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 02:50:19,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:50:19,740.740 INFO    ] Checking for system updates...
[2026-06-05 02:50:19,781.781 INFO    ] 200
[2026-06-05 02:50:19,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:19,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:50:19,841.841 INFO    ] No update needed
[2026-06-05 02:50:19,843.843 INFO    ] Checking for camera pi updates...
[2026-06-05 02:50:19,879.879 INFO    ] 200
[2026-06-05 02:50:19,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:19,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:50:19,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:50:19,981.981 INFO    ] No camera update needed
[2026-06-05 02:50:19,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:50:19,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:50:19,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:50:19,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:50:22,039.039 INFO    ] ================================================
[2026-06-05 02:50:22,054.054 INFO    ] Launching Daemon at Fri Jun  5 02:50:22 IST 2026
[2026-06-05 02:50:22,065.065 INFO    ] ================================================
[2026-06-05 02:50:22,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:50:22
[2026-06-05 02:50:23,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:50:23,529.529 INFO    ] Initializing speech engine...
[2026-06-05 02:50:23,553.553 INFO    ] 2026-06-05 02:50:23
[2026-06-05 02:50:23,836.836 INFO    ] 2026-06-05 02:50:23
[2026-06-05 02:50:23,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:50:24,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:50:24,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:50:24,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:50:24,216.216 INFO    ] time= 05/06/2026 02:50:24
[2026-06-05 02:50:24,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:50:24,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:50:24,341.341 INFO    ] No existing commands found in stream
[2026-06-05 02:50:29,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:50:29,356.356 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 02:50:33,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:50:33,190.190 INFO    ] Checking for system updates...
[2026-06-05 02:50:33,226.226 INFO    ] 200
[2026-06-05 02:50:33,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:33,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:50:33,285.285 INFO    ] No update needed
[2026-06-05 02:50:33,288.288 INFO    ] Checking for camera pi updates...
[2026-06-05 02:50:33,322.322 INFO    ] 200
[2026-06-05 02:50:33,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:33,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:50:33,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:50:33,403.403 INFO    ] No camera update needed
[2026-06-05 02:50:33,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:50:33,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:50:33,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:50:33,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:50:35,461.461 INFO    ] ================================================
[2026-06-05 02:50:35,477.477 INFO    ] Launching Daemon at Fri Jun  5 02:50:35 IST 2026
[2026-06-05 02:50:35,488.488 INFO    ] ================================================
[2026-06-05 02:50:36,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:50:36
[2026-06-05 02:50:36,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:50:36,934.934 INFO    ] Initializing speech engine...
[2026-06-05 02:50:36,942.942 INFO    ] 2026-06-05 02:50:36
[2026-06-05 02:50:37,222.222 INFO    ] 2026-06-05 02:50:37
[2026-06-05 02:50:37,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:50:37,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:50:37,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:50:37,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:50:37,671.671 INFO    ] time= 05/06/2026 02:50:37
[2026-06-05 02:50:37,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:50:37,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:50:37,823.823 INFO    ] No existing commands found in stream
[2026-06-05 02:50:42,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:50:42,851.851 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 02:50:43,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:50:43,600.600 INFO    ] Checking for system updates...
[2026-06-05 02:50:43,650.650 INFO    ] 200
[2026-06-05 02:50:43,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:43,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:50:43,712.712 INFO    ] No update needed
[2026-06-05 02:50:43,714.714 INFO    ] Checking for camera pi updates...
[2026-06-05 02:50:43,748.748 INFO    ] 200
[2026-06-05 02:50:43,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:43,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:50:43,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:50:43,848.848 INFO    ] No camera update needed
[2026-06-05 02:50:43,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:50:43,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:50:43,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:50:43,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:50:45,904.904 INFO    ] ================================================
[2026-06-05 02:50:45,920.920 INFO    ] Launching Daemon at Fri Jun  5 02:50:45 IST 2026
[2026-06-05 02:50:45,931.931 INFO    ] ================================================
[2026-06-05 02:50:46,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:50:46
[2026-06-05 02:50:47,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:50:47,336.336 INFO    ] Initializing speech engine...
[2026-06-05 02:50:47,349.349 INFO    ] 2026-06-05 02:50:47
[2026-06-05 02:50:47,617.617 INFO    ] 2026-06-05 02:50:47
[2026-06-05 02:50:47,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:50:47,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:50:47,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:50:48,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:50:48,118.118 INFO    ] time= 05/06/2026 02:50:48
[2026-06-05 02:50:48,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:50:48,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:50:48,251.251 INFO    ] No existing commands found in stream
[2026-06-05 02:50:53,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:50:53,266.266 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 02:50:56,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:50:56,607.607 INFO    ] Checking for system updates...
[2026-06-05 02:50:56,643.643 INFO    ] 200
[2026-06-05 02:50:56,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:56,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:50:56,702.702 INFO    ] No update needed
[2026-06-05 02:50:56,704.704 INFO    ] Checking for camera pi updates...
[2026-06-05 02:50:56,739.739 INFO    ] 200
[2026-06-05 02:50:56,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:50:56,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:50:56,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:50:56,837.837 INFO    ] No camera update needed
[2026-06-05 02:50:56,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:50:56,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:50:56,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:50:56,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:50:58,894.894 INFO    ] ================================================
[2026-06-05 02:50:58,910.910 INFO    ] Launching Daemon at Fri Jun  5 02:50:58 IST 2026
[2026-06-05 02:50:58,922.922 INFO    ] ================================================
[2026-06-05 02:50:59,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:50:59
[2026-06-05 02:51:00,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:51:00,335.335 INFO    ] Initializing speech engine...
[2026-06-05 02:51:00,343.343 INFO    ] 2026-06-05 02:51:00
[2026-06-05 02:51:00,637.637 INFO    ] 2026-06-05 02:51:00
[2026-06-05 02:51:00,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:51:00,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:51:00,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:51:01,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:51:01,031.031 INFO    ] time= 05/06/2026 02:51:01
[2026-06-05 02:51:01,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:51:01,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:51:01,138.138 INFO    ] No existing commands found in stream
[2026-06-05 02:51:06,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:51:06,153.153 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 02:51:09,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:51:09,822.822 INFO    ] Checking for system updates...
[2026-06-05 02:51:09,858.858 INFO    ] 200
[2026-06-05 02:51:09,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:09,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:51:09,916.916 INFO    ] No update needed
[2026-06-05 02:51:09,919.919 INFO    ] Checking for camera pi updates...
[2026-06-05 02:51:09,956.956 INFO    ] 200
[2026-06-05 02:51:09,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:09,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:51:10,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:51:10,050.050 INFO    ] No camera update needed
[2026-06-05 02:51:10,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:51:10,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:51:10,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:51:10,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:51:12,106.106 INFO    ] ================================================
[2026-06-05 02:51:12,122.122 INFO    ] Launching Daemon at Fri Jun  5 02:51:12 IST 2026
[2026-06-05 02:51:12,134.134 INFO    ] ================================================
[2026-06-05 02:51:12,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:51:12
[2026-06-05 02:51:13,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:51:13,587.587 INFO    ] Initializing speech engine...
[2026-06-05 02:51:13,597.597 INFO    ] 2026-06-05 02:51:13
[2026-06-05 02:51:13,846.846 INFO    ] 2026-06-05 02:51:13
[2026-06-05 02:51:13,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:51:14,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:51:14,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:51:14,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:51:14,351.351 INFO    ] time= 05/06/2026 02:51:14
[2026-06-05 02:51:14,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:51:14,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:51:14,536.536 INFO    ] No existing commands found in stream
[2026-06-05 02:51:19,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:51:19,569.569 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 02:51:23,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:51:23,725.725 INFO    ] Checking for system updates...
[2026-06-05 02:51:23,762.762 INFO    ] 200
[2026-06-05 02:51:23,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:23,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:51:23,823.823 INFO    ] No update needed
[2026-06-05 02:51:23,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 02:51:23,863.863 INFO    ] 200
[2026-06-05 02:51:23,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:23,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:51:23,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:51:23,959.959 INFO    ] No camera update needed
[2026-06-05 02:51:23,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:51:23,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:51:23,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:51:23,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:51:26,015.015 INFO    ] ================================================
[2026-06-05 02:51:26,031.031 INFO    ] Launching Daemon at Fri Jun  5 02:51:26 IST 2026
[2026-06-05 02:51:26,042.042 INFO    ] ================================================
[2026-06-05 02:51:26,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:51:26
[2026-06-05 02:51:27,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:51:27,446.446 INFO    ] Initializing speech engine...
[2026-06-05 02:51:27,461.461 INFO    ] 2026-06-05 02:51:27
[2026-06-05 02:51:27,726.726 INFO    ] 2026-06-05 02:51:27
[2026-06-05 02:51:27,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:51:27,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:51:27,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:51:28,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:51:28,105.105 INFO    ] time= 05/06/2026 02:51:28
[2026-06-05 02:51:28,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:51:28,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:51:28,258.258 INFO    ] No existing commands found in stream
[2026-06-05 02:51:33,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:51:33,287.287 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 02:51:34,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:51:34,277.277 INFO    ] Checking for system updates...
[2026-06-05 02:51:34,313.313 INFO    ] 200
[2026-06-05 02:51:34,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:34,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:51:34,379.379 INFO    ] No update needed
[2026-06-05 02:51:34,381.381 INFO    ] Checking for camera pi updates...
[2026-06-05 02:51:34,416.416 INFO    ] 200
[2026-06-05 02:51:34,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:34,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:51:34,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:51:34,508.508 INFO    ] No camera update needed
[2026-06-05 02:51:34,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:51:34,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:51:34,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:51:34,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:51:36,564.564 INFO    ] ================================================
[2026-06-05 02:51:36,580.580 INFO    ] Launching Daemon at Fri Jun  5 02:51:36 IST 2026
[2026-06-05 02:51:36,591.591 INFO    ] ================================================
[2026-06-05 02:51:37,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:51:37
[2026-06-05 02:51:37,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:51:38,056.056 INFO    ] Initializing speech engine...
[2026-06-05 02:51:38,063.063 INFO    ] 2026-06-05 02:51:38
[2026-06-05 02:51:38,325.325 INFO    ] 2026-06-05 02:51:38
[2026-06-05 02:51:38,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:51:38,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:51:38,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:51:38,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:51:38,789.789 INFO    ] time= 05/06/2026 02:51:38
[2026-06-05 02:51:38,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:51:38,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:51:39,017.017 INFO    ] No existing commands found in stream
[2026-06-05 02:51:44,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:51:44,039.039 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 02:51:44,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:51:44,577.577 INFO    ] Checking for system updates...
[2026-06-05 02:51:44,613.613 INFO    ] 200
[2026-06-05 02:51:44,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:44,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:51:44,679.679 INFO    ] No update needed
[2026-06-05 02:51:44,682.682 INFO    ] Checking for camera pi updates...
[2026-06-05 02:51:44,717.717 INFO    ] 200
[2026-06-05 02:51:44,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:44,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:51:44,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:51:44,811.811 INFO    ] No camera update needed
[2026-06-05 02:51:44,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:51:44,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:51:44,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:51:44,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:51:46,871.871 INFO    ] ================================================
[2026-06-05 02:51:46,887.887 INFO    ] Launching Daemon at Fri Jun  5 02:51:46 IST 2026
[2026-06-05 02:51:46,899.899 INFO    ] ================================================
[2026-06-05 02:51:47,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:51:47
[2026-06-05 02:51:48,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:51:48,309.309 INFO    ] Initializing speech engine...
[2026-06-05 02:51:48,316.316 INFO    ] 2026-06-05 02:51:48
[2026-06-05 02:51:48,605.605 INFO    ] 2026-06-05 02:51:48
[2026-06-05 02:51:48,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:51:48,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:51:48,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:51:48,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:51:49,016.016 INFO    ] time= 05/06/2026 02:51:48
[2026-06-05 02:51:49,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:51:49,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:51:49,107.107 INFO    ] No existing commands found in stream
[2026-06-05 02:51:54,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:51:54,124.124 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 02:51:58,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:51:58,412.412 INFO    ] Checking for system updates...
[2026-06-05 02:51:58,450.450 INFO    ] 200
[2026-06-05 02:51:58,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:58,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:51:58,508.508 INFO    ] No update needed
[2026-06-05 02:51:58,510.510 INFO    ] Checking for camera pi updates...
[2026-06-05 02:51:58,545.545 INFO    ] 200
[2026-06-05 02:51:58,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:51:58,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:51:58,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:51:58,640.640 INFO    ] No camera update needed
[2026-06-05 02:51:58,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:51:58,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:51:58,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:51:58,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:52:00,697.697 INFO    ] ================================================
[2026-06-05 02:52:00,713.713 INFO    ] Launching Daemon at Fri Jun  5 02:52:00 IST 2026
[2026-06-05 02:52:00,724.724 INFO    ] ================================================
[2026-06-05 02:52:01,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:52:01
[2026-06-05 02:52:01,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:52:02,459.459 INFO    ] Initializing speech engine...
[2026-06-05 02:52:02,489.489 INFO    ] 2026-06-05 02:52:02
[2026-06-05 02:52:02,828.828 INFO    ] 2026-06-05 02:52:02
[2026-06-05 02:52:02,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:52:03,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:52:03,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:52:03,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:52:03,307.307 INFO    ] time= 05/06/2026 02:52:03
[2026-06-05 02:52:03,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:52:03,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:52:03,495.495 INFO    ] No existing commands found in stream
[2026-06-05 02:52:08,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:52:08,508.508 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 02:52:09,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:52:09,408.408 INFO    ] Checking for system updates...
[2026-06-05 02:52:09,444.444 INFO    ] 200
[2026-06-05 02:52:09,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:09,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:52:09,502.502 INFO    ] No update needed
[2026-06-05 02:52:09,504.504 INFO    ] Checking for camera pi updates...
[2026-06-05 02:52:09,538.538 INFO    ] 200
[2026-06-05 02:52:09,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:09,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:52:09,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:52:09,628.628 INFO    ] No camera update needed
[2026-06-05 02:52:09,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:52:09,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:52:09,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:52:09,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:52:11,687.687 INFO    ] ================================================
[2026-06-05 02:52:11,703.703 INFO    ] Launching Daemon at Fri Jun  5 02:52:11 IST 2026
[2026-06-05 02:52:11,714.714 INFO    ] ================================================
[2026-06-05 02:52:12,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:52:12
[2026-06-05 02:52:12,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:52:13,121.121 INFO    ] Initializing speech engine...
[2026-06-05 02:52:13,128.128 INFO    ] 2026-06-05 02:52:13
[2026-06-05 02:52:13,419.419 INFO    ] 2026-06-05 02:52:13
[2026-06-05 02:52:13,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:52:13,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:52:13,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:52:13,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:52:13,809.809 INFO    ] time= 05/06/2026 02:52:13
[2026-06-05 02:52:13,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:52:13,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:52:13,915.915 INFO    ] No existing commands found in stream
[2026-06-05 02:52:18,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:52:18,927.927 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 02:52:20,235.235 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:52:20,237.237 INFO    ] Checking for system updates...
[2026-06-05 02:52:20,274.274 INFO    ] 200
[2026-06-05 02:52:20,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:20,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:52:20,332.332 INFO    ] No update needed
[2026-06-05 02:52:20,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 02:52:20,368.368 INFO    ] 200
[2026-06-05 02:52:20,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:20,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:52:20,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:52:20,444.444 INFO    ] No camera update needed
[2026-06-05 02:52:20,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:52:20,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:52:20,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:52:20,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:52:22,500.500 INFO    ] ================================================
[2026-06-05 02:52:22,515.515 INFO    ] Launching Daemon at Fri Jun  5 02:52:22 IST 2026
[2026-06-05 02:52:22,527.527 INFO    ] ================================================
[2026-06-05 02:52:23,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:52:23
[2026-06-05 02:52:23,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:52:23,963.963 INFO    ] Initializing speech engine...
[2026-06-05 02:52:23,972.972 INFO    ] 2026-06-05 02:52:23
[2026-06-05 02:52:24,242.242 INFO    ] 2026-06-05 02:52:24
[2026-06-05 02:52:24,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:52:24,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:52:24,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:52:24,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:52:24,700.700 INFO    ] time= 05/06/2026 02:52:24
[2026-06-05 02:52:24,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:52:24,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:52:24,855.855 INFO    ] No existing commands found in stream
[2026-06-05 02:52:29,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:52:29,893.893 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 02:52:31,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:52:31,818.818 INFO    ] Checking for system updates...
[2026-06-05 02:52:31,853.853 INFO    ] 200
[2026-06-05 02:52:31,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:31,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:52:31,913.913 INFO    ] No update needed
[2026-06-05 02:52:31,915.915 INFO    ] Checking for camera pi updates...
[2026-06-05 02:52:31,949.949 INFO    ] 200
[2026-06-05 02:52:31,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:31,992.992 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:52:32,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:52:32,027.027 INFO    ] No camera update needed
[2026-06-05 02:52:32,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:52:32,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:52:32,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:52:32,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:52:34,082.082 INFO    ] ================================================
[2026-06-05 02:52:34,098.098 INFO    ] Launching Daemon at Fri Jun  5 02:52:34 IST 2026
[2026-06-05 02:52:34,110.110 INFO    ] ================================================
[2026-06-05 02:52:34,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:52:34
[2026-06-05 02:52:35,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:52:35,547.547 INFO    ] Initializing speech engine...
[2026-06-05 02:52:35,559.559 INFO    ] 2026-06-05 02:52:35
[2026-06-05 02:52:35,818.818 INFO    ] 2026-06-05 02:52:35
[2026-06-05 02:52:35,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:52:36,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:52:36,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:52:36,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:52:36,192.192 INFO    ] time= 05/06/2026 02:52:36
[2026-06-05 02:52:36,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:52:36,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:52:36,282.282 INFO    ] No existing commands found in stream
[2026-06-05 02:52:41,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:52:41,297.297 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 02:52:43,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:52:43,686.686 INFO    ] Checking for system updates...
[2026-06-05 02:52:43,726.726 INFO    ] 200
[2026-06-05 02:52:43,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:43,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:52:43,785.785 INFO    ] No update needed
[2026-06-05 02:52:43,788.788 INFO    ] Checking for camera pi updates...
[2026-06-05 02:52:43,822.822 INFO    ] 200
[2026-06-05 02:52:43,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:43,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:52:43,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:52:43,913.913 INFO    ] No camera update needed
[2026-06-05 02:52:43,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:52:43,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:52:43,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:52:43,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:52:45,971.971 INFO    ] ================================================
[2026-06-05 02:52:45,986.986 INFO    ] Launching Daemon at Fri Jun  5 02:52:45 IST 2026
[2026-06-05 02:52:46,997.997 INFO    ] ================================================
[2026-06-05 02:52:46,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:52:46
[2026-06-05 02:52:47,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:52:47,598.598 INFO    ] Initializing speech engine...
[2026-06-05 02:52:47,606.606 INFO    ] 2026-06-05 02:52:47
[2026-06-05 02:52:47,923.923 INFO    ] 2026-06-05 02:52:47
[2026-06-05 02:52:48,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:52:48,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:52:48,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:52:48,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:52:48,427.427 INFO    ] time= 05/06/2026 02:52:48
[2026-06-05 02:52:48,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:52:48,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:52:48,563.563 INFO    ] No existing commands found in stream
[2026-06-05 02:52:53,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:52:53,593.593 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 02:52:57,697.697 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:52:57,700.700 INFO    ] Checking for system updates...
[2026-06-05 02:52:57,737.737 INFO    ] 200
[2026-06-05 02:52:57,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:57,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:52:57,798.798 INFO    ] No update needed
[2026-06-05 02:52:57,800.800 INFO    ] Checking for camera pi updates...
[2026-06-05 02:52:57,834.834 INFO    ] 200
[2026-06-05 02:52:57,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:52:57,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:52:57,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:52:57,938.938 INFO    ] No camera update needed
[2026-06-05 02:52:57,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:52:57,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:52:57,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:52:57,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:52:59,994.994 INFO    ] ================================================
[2026-06-05 02:53:00,009.009 INFO    ] Launching Daemon at Fri Jun  5 02:53:00 IST 2026
[2026-06-05 02:53:00,020.020 INFO    ] ================================================
[2026-06-05 02:53:00,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:53:00
[2026-06-05 02:53:01,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:53:01,487.487 INFO    ] Initializing speech engine...
[2026-06-05 02:53:01,512.512 INFO    ] 2026-06-05 02:53:01
[2026-06-05 02:53:01,781.781 INFO    ] 2026-06-05 02:53:01
[2026-06-05 02:53:01,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:53:02,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:53:02,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:53:02,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:53:02,235.235 INFO    ] time= 05/06/2026 02:53:02
[2026-06-05 02:53:02,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:53:02,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:53:02,298.298 INFO    ] No existing commands found in stream
[2026-06-05 02:53:07,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:53:07,311.311 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 02:53:08,647.647 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:53:08,650.650 INFO    ] Checking for system updates...
[2026-06-05 02:53:08,687.687 INFO    ] 200
[2026-06-05 02:53:08,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:08,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:53:08,753.753 INFO    ] No update needed
[2026-06-05 02:53:08,758.758 INFO    ] Checking for camera pi updates...
[2026-06-05 02:53:08,798.798 INFO    ] 200
[2026-06-05 02:53:08,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:08,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:53:09,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:53:09,014.014 INFO    ] No camera update needed
[2026-06-05 02:53:09,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:53:09,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:53:09,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:53:09,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:53:11,081.081 INFO    ] ================================================
[2026-06-05 02:53:11,096.096 INFO    ] Launching Daemon at Fri Jun  5 02:53:11 IST 2026
[2026-06-05 02:53:11,107.107 INFO    ] ================================================
[2026-06-05 02:53:11,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:53:11
[2026-06-05 02:53:12,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:53:12,632.632 INFO    ] Initializing speech engine...
[2026-06-05 02:53:12,639.639 INFO    ] 2026-06-05 02:53:12
[2026-06-05 02:53:12,927.927 INFO    ] 2026-06-05 02:53:12
[2026-06-05 02:53:12,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:53:13,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:53:13,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:53:13,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:53:13,299.299 INFO    ] time= 05/06/2026 02:53:13
[2026-06-05 02:53:13,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:53:13,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:53:13,421.421 INFO    ] No existing commands found in stream
[2026-06-05 02:53:18,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:53:18,436.436 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 02:53:19,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:53:19,996.996 INFO    ] Checking for system updates...
[2026-06-05 02:53:20,036.036 INFO    ] 200
[2026-06-05 02:53:20,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:20,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:53:20,093.093 INFO    ] No update needed
[2026-06-05 02:53:20,095.095 INFO    ] Checking for camera pi updates...
[2026-06-05 02:53:20,132.132 INFO    ] 200
[2026-06-05 02:53:20,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:20,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:53:20,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:53:20,231.231 INFO    ] No camera update needed
[2026-06-05 02:53:20,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:53:20,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:53:20,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:53:20,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:53:22,286.286 INFO    ] ================================================
[2026-06-05 02:53:22,302.302 INFO    ] Launching Daemon at Fri Jun  5 02:53:22 IST 2026
[2026-06-05 02:53:22,313.313 INFO    ] ================================================
[2026-06-05 02:53:22,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:53:22
[2026-06-05 02:53:23,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:53:23,898.898 INFO    ] Initializing speech engine...
[2026-06-05 02:53:23,907.907 INFO    ] 2026-06-05 02:53:23
[2026-06-05 02:53:24,193.193 INFO    ] 2026-06-05 02:53:24
[2026-06-05 02:53:24,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:53:24,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:53:24,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:53:24,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:53:24,653.653 INFO    ] time= 05/06/2026 02:53:24
[2026-06-05 02:53:24,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:53:24,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:53:24,889.889 INFO    ] No existing commands found in stream
[2026-06-05 02:53:29,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:53:29,915.915 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 02:53:32,538.538 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:53:32,541.541 INFO    ] Checking for system updates...
[2026-06-05 02:53:32,585.585 INFO    ] 200
[2026-06-05 02:53:32,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:32,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:53:32,654.654 INFO    ] No update needed
[2026-06-05 02:53:32,657.657 INFO    ] Checking for camera pi updates...
[2026-06-05 02:53:32,697.697 INFO    ] 200
[2026-06-05 02:53:32,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:32,759.759 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:53:32,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:53:32,799.799 INFO    ] No camera update needed
[2026-06-05 02:53:32,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:53:32,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:53:32,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:53:32,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:53:34,858.858 INFO    ] ================================================
[2026-06-05 02:53:34,874.874 INFO    ] Launching Daemon at Fri Jun  5 02:53:34 IST 2026
[2026-06-05 02:53:34,886.886 INFO    ] ================================================
[2026-06-05 02:53:35,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:53:35
[2026-06-05 02:53:36,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:53:36,310.310 INFO    ] Initializing speech engine...
[2026-06-05 02:53:36,323.323 INFO    ] 2026-06-05 02:53:36
[2026-06-05 02:53:36,610.610 INFO    ] 2026-06-05 02:53:36
[2026-06-05 02:53:36,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:53:36,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:53:36,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:53:36,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:53:36,986.986 INFO    ] time= 05/06/2026 02:53:36
[2026-06-05 02:53:37,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:53:37,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:53:37,111.111 INFO    ] No existing commands found in stream
[2026-06-05 02:53:42,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:53:42,127.127 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 02:53:44,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:53:44,319.319 INFO    ] Checking for system updates...
[2026-06-05 02:53:44,355.355 INFO    ] 200
[2026-06-05 02:53:44,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:44,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:53:44,415.415 INFO    ] No update needed
[2026-06-05 02:53:44,418.418 INFO    ] Checking for camera pi updates...
[2026-06-05 02:53:44,451.451 INFO    ] 200
[2026-06-05 02:53:44,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:44,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:53:44,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:53:44,545.545 INFO    ] No camera update needed
[2026-06-05 02:53:44,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:53:44,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:53:44,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:53:44,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:53:46,602.602 INFO    ] ================================================
[2026-06-05 02:53:46,618.618 INFO    ] Launching Daemon at Fri Jun  5 02:53:46 IST 2026
[2026-06-05 02:53:46,629.629 INFO    ] ================================================
[2026-06-05 02:53:47,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:53:47
[2026-06-05 02:53:47,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:53:48,080.080 INFO    ] Initializing speech engine...
[2026-06-05 02:53:48,089.089 INFO    ] 2026-06-05 02:53:48
[2026-06-05 02:53:48,356.356 INFO    ] 2026-06-05 02:53:48
[2026-06-05 02:53:48,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:53:48,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:53:48,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:53:48,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:53:48,728.728 INFO    ] time= 05/06/2026 02:53:48
[2026-06-05 02:53:48,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:53:48,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:53:48,856.856 INFO    ] No existing commands found in stream
[2026-06-05 02:53:53,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:53:53,869.869 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 02:53:57,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:53:57,675.675 INFO    ] Checking for system updates...
[2026-06-05 02:53:57,713.713 INFO    ] 200
[2026-06-05 02:53:57,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:57,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:53:57,779.779 INFO    ] No update needed
[2026-06-05 02:53:57,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 02:53:57,817.817 INFO    ] 200
[2026-06-05 02:53:57,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:53:57,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:53:57,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:53:57,915.915 INFO    ] No camera update needed
[2026-06-05 02:53:57,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:53:57,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:53:57,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:53:57,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:53:59,974.974 INFO    ] ================================================
[2026-06-05 02:53:59,990.990 INFO    ] Launching Daemon at Fri Jun  5 02:53:59 IST 2026
[2026-06-05 02:54:00,001.001 INFO    ] ================================================
[2026-06-05 02:54:00,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:54:00
[2026-06-05 02:54:01,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:54:01,415.415 INFO    ] Initializing speech engine...
[2026-06-05 02:54:01,424.424 INFO    ] 2026-06-05 02:54:01
[2026-06-05 02:54:01,718.718 INFO    ] 2026-06-05 02:54:01
[2026-06-05 02:54:01,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:54:01,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:54:01,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:54:02,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:54:02,311.311 INFO    ] time= 05/06/2026 02:54:02
[2026-06-05 02:54:02,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:54:02,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:54:02,518.518 INFO    ] No existing commands found in stream
[2026-06-05 02:54:07,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:54:07,537.537 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 02:54:09,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:54:09,305.305 INFO    ] Checking for system updates...
[2026-06-05 02:54:09,341.341 INFO    ] 200
[2026-06-05 02:54:09,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:09,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:54:09,400.400 INFO    ] No update needed
[2026-06-05 02:54:09,402.402 INFO    ] Checking for camera pi updates...
[2026-06-05 02:54:09,441.441 INFO    ] 200
[2026-06-05 02:54:09,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:09,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:54:09,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:54:09,550.550 INFO    ] No camera update needed
[2026-06-05 02:54:09,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:54:09,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:54:09,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:54:09,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:54:11,608.608 INFO    ] ================================================
[2026-06-05 02:54:11,624.624 INFO    ] Launching Daemon at Fri Jun  5 02:54:11 IST 2026
[2026-06-05 02:54:11,635.635 INFO    ] ================================================
[2026-06-05 02:54:12,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:54:12
[2026-06-05 02:54:12,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:54:13,185.185 INFO    ] Initializing speech engine...
[2026-06-05 02:54:13,195.195 INFO    ] 2026-06-05 02:54:13
[2026-06-05 02:54:13,465.465 INFO    ] 2026-06-05 02:54:13
[2026-06-05 02:54:13,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:54:13,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:54:13,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:54:13,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:54:13,945.945 INFO    ] time= 05/06/2026 02:54:13
[2026-06-05 02:54:13,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:54:14,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:54:14,097.097 INFO    ] No existing commands found in stream
[2026-06-05 02:54:19,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:54:19,127.127 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-05 02:54:19,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:54:19,700.700 INFO    ] Checking for system updates...
[2026-06-05 02:54:19,737.737 INFO    ] 200
[2026-06-05 02:54:19,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:19,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:54:19,796.796 INFO    ] No update needed
[2026-06-05 02:54:19,799.799 INFO    ] Checking for camera pi updates...
[2026-06-05 02:54:19,833.833 INFO    ] 200
[2026-06-05 02:54:19,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:19,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:54:19,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:54:19,936.936 INFO    ] No camera update needed
[2026-06-05 02:54:19,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:54:19,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:54:19,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:54:19,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:54:21,993.993 INFO    ] ================================================
[2026-06-05 02:54:22,009.009 INFO    ] Launching Daemon at Fri Jun  5 02:54:22 IST 2026
[2026-06-05 02:54:22,020.020 INFO    ] ================================================
[2026-06-05 02:54:22,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:54:22
[2026-06-05 02:54:23,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:54:23,421.421 INFO    ] Initializing speech engine...
[2026-06-05 02:54:23,429.429 INFO    ] 2026-06-05 02:54:23
[2026-06-05 02:54:23,717.717 INFO    ] 2026-06-05 02:54:23
[2026-06-05 02:54:23,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:54:23,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:54:24,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:54:24,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:54:24,209.209 INFO    ] time= 05/06/2026 02:54:24
[2026-06-05 02:54:24,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:54:24,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:54:24,396.396 INFO    ] No existing commands found in stream
[2026-06-05 02:54:29,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:54:29,410.410 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 02:54:30,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:54:30,355.355 INFO    ] Checking for system updates...
[2026-06-05 02:54:30,392.392 INFO    ] 200
[2026-06-05 02:54:30,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:30,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:54:30,450.450 INFO    ] No update needed
[2026-06-05 02:54:30,453.453 INFO    ] Checking for camera pi updates...
[2026-06-05 02:54:30,486.486 INFO    ] 200
[2026-06-05 02:54:30,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:30,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:54:30,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:54:30,578.578 INFO    ] No camera update needed
[2026-06-05 02:54:30,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:54:30,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:54:30,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:54:30,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:54:32,638.638 INFO    ] ================================================
[2026-06-05 02:54:32,656.656 INFO    ] Launching Daemon at Fri Jun  5 02:54:32 IST 2026
[2026-06-05 02:54:32,667.667 INFO    ] ================================================
[2026-06-05 02:54:33,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:54:33
[2026-06-05 02:54:33,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:54:34,233.233 INFO    ] Initializing speech engine...
[2026-06-05 02:54:34,248.248 INFO    ] 2026-06-05 02:54:34
[2026-06-05 02:54:34,559.559 INFO    ] 2026-06-05 02:54:34
[2026-06-05 02:54:34,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:54:34,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:54:34,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:54:34,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:54:35,015.015 INFO    ] time= 05/06/2026 02:54:34
[2026-06-05 02:54:35,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:54:35,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:54:35,159.159 INFO    ] No existing commands found in stream
[2026-06-05 02:54:40,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:54:40,199.199 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 02:54:41,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:54:41,707.707 INFO    ] Checking for system updates...
[2026-06-05 02:54:41,747.747 INFO    ] 200
[2026-06-05 02:54:41,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:41,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:54:41,812.812 INFO    ] No update needed
[2026-06-05 02:54:41,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 02:54:41,852.852 INFO    ] 200
[2026-06-05 02:54:41,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:41,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:54:41,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:54:41,945.945 INFO    ] No camera update needed
[2026-06-05 02:54:41,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:54:41,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:54:41,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:54:41,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:54:44,003.003 INFO    ] ================================================
[2026-06-05 02:54:44,019.019 INFO    ] Launching Daemon at Fri Jun  5 02:54:44 IST 2026
[2026-06-05 02:54:44,029.029 INFO    ] ================================================
[2026-06-05 02:54:44,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:54:44
[2026-06-05 02:54:45,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:54:45,563.563 INFO    ] Initializing speech engine...
[2026-06-05 02:54:45,572.572 INFO    ] 2026-06-05 02:54:45
[2026-06-05 02:54:45,836.836 INFO    ] 2026-06-05 02:54:45
[2026-06-05 02:54:45,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:54:46,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:54:46,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:54:46,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:54:46,298.298 INFO    ] time= 05/06/2026 02:54:46
[2026-06-05 02:54:46,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:54:46,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:54:46,440.440 INFO    ] No existing commands found in stream
[2026-06-05 02:54:51,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:54:51,455.455 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 02:54:53,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:54:53,876.876 INFO    ] Checking for system updates...
[2026-06-05 02:54:53,913.913 INFO    ] 200
[2026-06-05 02:54:53,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:53,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:54:53,973.973 INFO    ] No update needed
[2026-06-05 02:54:53,975.975 INFO    ] Checking for camera pi updates...
[2026-06-05 02:54:54,013.013 INFO    ] 200
[2026-06-05 02:54:54,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:54:54,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:54:54,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:54:54,118.118 INFO    ] No camera update needed
[2026-06-05 02:54:54,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:54:54,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:54:54,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:54:54,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:54:56,176.176 INFO    ] ================================================
[2026-06-05 02:54:56,192.192 INFO    ] Launching Daemon at Fri Jun  5 02:54:56 IST 2026
[2026-06-05 02:54:56,203.203 INFO    ] ================================================
[2026-06-05 02:54:56,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:54:56
[2026-06-05 02:54:57,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:54:57,757.757 INFO    ] Initializing speech engine...
[2026-06-05 02:54:57,766.766 INFO    ] 2026-06-05 02:54:57
[2026-06-05 02:54:58,034.034 INFO    ] 2026-06-05 02:54:58
[2026-06-05 02:54:58,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:54:58,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:54:58,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:54:58,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:54:58,492.492 INFO    ] time= 05/06/2026 02:54:58
[2026-06-05 02:54:58,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:54:58,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:54:58,644.644 INFO    ] No existing commands found in stream
[2026-06-05 02:55:03,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:55:03,660.660 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 02:55:04,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:55:04,554.554 INFO    ] Checking for system updates...
[2026-06-05 02:55:04,592.592 INFO    ] 200
[2026-06-05 02:55:04,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:04,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:55:04,651.651 INFO    ] No update needed
[2026-06-05 02:55:04,653.653 INFO    ] Checking for camera pi updates...
[2026-06-05 02:55:04,688.688 INFO    ] 200
[2026-06-05 02:55:04,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:04,731.731 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:55:04,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:55:04,766.766 INFO    ] No camera update needed
[2026-06-05 02:55:04,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:55:04,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:55:04,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:55:04,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:55:06,823.823 INFO    ] ================================================
[2026-06-05 02:55:06,840.840 INFO    ] Launching Daemon at Fri Jun  5 02:55:06 IST 2026
[2026-06-05 02:55:06,852.852 INFO    ] ================================================
[2026-06-05 02:55:07,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:55:07
[2026-06-05 02:55:08,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:55:08,316.316 INFO    ] Initializing speech engine...
[2026-06-05 02:55:08,330.330 INFO    ] 2026-06-05 02:55:08
[2026-06-05 02:55:08,587.587 INFO    ] 2026-06-05 02:55:08
[2026-06-05 02:55:08,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:55:08,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:55:08,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:55:09,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:55:09,084.084 INFO    ] time= 05/06/2026 02:55:09
[2026-06-05 02:55:09,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:55:09,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:55:09,293.293 INFO    ] No existing commands found in stream
[2026-06-05 02:55:14,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:55:14,312.312 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 02:55:14,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:55:14,699.699 INFO    ] Checking for system updates...
[2026-06-05 02:55:14,735.735 INFO    ] 200
[2026-06-05 02:55:14,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:14,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:55:14,793.793 INFO    ] No update needed
[2026-06-05 02:55:14,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 02:55:14,829.829 INFO    ] 200
[2026-06-05 02:55:14,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:14,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:55:15,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:55:15,024.024 INFO    ] No camera update needed
[2026-06-05 02:55:15,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:55:15,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:55:15,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:55:15,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:55:17,081.081 INFO    ] ================================================
[2026-06-05 02:55:17,096.096 INFO    ] Launching Daemon at Fri Jun  5 02:55:17 IST 2026
[2026-06-05 02:55:17,106.106 INFO    ] ================================================
[2026-06-05 02:55:17,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:55:17
[2026-06-05 02:55:18,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:55:18,524.524 INFO    ] Initializing speech engine...
[2026-06-05 02:55:18,532.532 INFO    ] 2026-06-05 02:55:18
[2026-06-05 02:55:18,807.807 INFO    ] 2026-06-05 02:55:18
[2026-06-05 02:55:18,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:55:19,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:55:19,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:55:19,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:55:19,182.182 INFO    ] time= 05/06/2026 02:55:19
[2026-06-05 02:55:19,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:55:19,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:55:19,348.348 INFO    ] No existing commands found in stream
[2026-06-05 02:55:24,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:55:24,376.376 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 02:55:28,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:55:28,037.037 INFO    ] Checking for system updates...
[2026-06-05 02:55:28,074.074 INFO    ] 200
[2026-06-05 02:55:28,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:28,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:55:28,133.133 INFO    ] No update needed
[2026-06-05 02:55:28,136.136 INFO    ] Checking for camera pi updates...
[2026-06-05 02:55:28,174.174 INFO    ] 200
[2026-06-05 02:55:28,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:28,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:55:28,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:55:28,274.274 INFO    ] No camera update needed
[2026-06-05 02:55:28,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:55:28,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:55:28,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:55:28,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:55:30,329.329 INFO    ] ================================================
[2026-06-05 02:55:30,344.344 INFO    ] Launching Daemon at Fri Jun  5 02:55:30 IST 2026
[2026-06-05 02:55:30,354.354 INFO    ] ================================================
[2026-06-05 02:55:30,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:55:30
[2026-06-05 02:55:31,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:55:31,756.756 INFO    ] Initializing speech engine...
[2026-06-05 02:55:31,770.770 INFO    ] 2026-06-05 02:55:31
[2026-06-05 02:55:32,037.037 INFO    ] 2026-06-05 02:55:32
[2026-06-05 02:55:32,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:55:32,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:55:32,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:55:32,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:55:32,402.402 INFO    ] time= 05/06/2026 02:55:32
[2026-06-05 02:55:32,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:55:32,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:55:32,519.519 INFO    ] No existing commands found in stream
[2026-06-05 02:55:37,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:55:37,534.534 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 02:55:41,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:55:41,150.150 INFO    ] Checking for system updates...
[2026-06-05 02:55:41,190.190 INFO    ] 200
[2026-06-05 02:55:41,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:41,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:55:41,248.248 INFO    ] No update needed
[2026-06-05 02:55:41,250.250 INFO    ] Checking for camera pi updates...
[2026-06-05 02:55:41,284.284 INFO    ] 200
[2026-06-05 02:55:41,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:41,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:55:41,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:55:41,374.374 INFO    ] No camera update needed
[2026-06-05 02:55:41,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:55:41,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:55:41,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:55:41,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:55:43,429.429 INFO    ] ================================================
[2026-06-05 02:55:43,444.444 INFO    ] Launching Daemon at Fri Jun  5 02:55:43 IST 2026
[2026-06-05 02:55:43,455.455 INFO    ] ================================================
[2026-06-05 02:55:44,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:55:44
[2026-06-05 02:55:44,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:55:45,050.050 INFO    ] Initializing speech engine...
[2026-06-05 02:55:45,057.057 INFO    ] 2026-06-05 02:55:45
[2026-06-05 02:55:45,333.333 INFO    ] 2026-06-05 02:55:45
[2026-06-05 02:55:45,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:55:45,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:55:45,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:55:45,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:55:45,781.781 INFO    ] time= 05/06/2026 02:55:45
[2026-06-05 02:55:45,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:55:45,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:55:45,930.930 INFO    ] No existing commands found in stream
[2026-06-05 02:55:50,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:55:50,944.944 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 02:55:53,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:55:53,906.906 INFO    ] Checking for system updates...
[2026-06-05 02:55:53,943.943 INFO    ] 200
[2026-06-05 02:55:53,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:53,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:55:54,001.001 INFO    ] No update needed
[2026-06-05 02:55:54,003.003 INFO    ] Checking for camera pi updates...
[2026-06-05 02:55:54,041.041 INFO    ] 200
[2026-06-05 02:55:54,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:55:54,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:55:54,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:55:54,143.143 INFO    ] No camera update needed
[2026-06-05 02:55:54,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:55:54,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:55:54,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:55:54,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:55:56,201.201 INFO    ] ================================================
[2026-06-05 02:55:56,216.216 INFO    ] Launching Daemon at Fri Jun  5 02:55:56 IST 2026
[2026-06-05 02:55:56,227.227 INFO    ] ================================================
[2026-06-05 02:55:56,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:55:56
[2026-06-05 02:55:57,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:55:57,763.763 INFO    ] Initializing speech engine...
[2026-06-05 02:55:57,772.772 INFO    ] 2026-06-05 02:55:57
[2026-06-05 02:55:58,018.018 INFO    ] 2026-06-05 02:55:58
[2026-06-05 02:55:58,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:55:58,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:55:58,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:55:58,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:55:58,391.391 INFO    ] time= 05/06/2026 02:55:58
[2026-06-05 02:55:58,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:55:58,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:55:58,583.583 INFO    ] No existing commands found in stream
[2026-06-05 02:56:03,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:56:03,598.598 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 02:56:07,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:56:07,658.658 INFO    ] Checking for system updates...
[2026-06-05 02:56:07,695.695 INFO    ] 200
[2026-06-05 02:56:07,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:07,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:56:07,759.759 INFO    ] No update needed
[2026-06-05 02:56:07,762.762 INFO    ] Checking for camera pi updates...
[2026-06-05 02:56:07,796.796 INFO    ] 200
[2026-06-05 02:56:07,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:07,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:56:07,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:56:07,897.897 INFO    ] No camera update needed
[2026-06-05 02:56:07,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:56:07,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:56:07,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:56:07,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:56:09,955.955 INFO    ] ================================================
[2026-06-05 02:56:09,970.970 INFO    ] Launching Daemon at Fri Jun  5 02:56:09 IST 2026
[2026-06-05 02:56:09,980.980 INFO    ] ================================================
[2026-06-05 02:56:10,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:56:10
[2026-06-05 02:56:11,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:56:11,521.521 INFO    ] Initializing speech engine...
[2026-06-05 02:56:11,533.533 INFO    ] 2026-06-05 02:56:11
[2026-06-05 02:56:11,808.808 INFO    ] 2026-06-05 02:56:11
[2026-06-05 02:56:11,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:56:12,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:56:12,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:56:12,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:56:12,247.247 INFO    ] time= 05/06/2026 02:56:12
[2026-06-05 02:56:12,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:56:12,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:56:12,404.404 INFO    ] No existing commands found in stream
[2026-06-05 02:56:17,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:56:17,421.421 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 02:56:20,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:56:20,923.923 INFO    ] Checking for system updates...
[2026-06-05 02:56:20,960.960 INFO    ] 200
[2026-06-05 02:56:20,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:21,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:56:21,019.019 INFO    ] No update needed
[2026-06-05 02:56:21,021.021 INFO    ] Checking for camera pi updates...
[2026-06-05 02:56:21,056.056 INFO    ] 200
[2026-06-05 02:56:21,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:21,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:56:21,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:56:21,152.152 INFO    ] No camera update needed
[2026-06-05 02:56:21,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:56:21,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:56:21,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:56:21,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:56:23,212.212 INFO    ] ================================================
[2026-06-05 02:56:23,227.227 INFO    ] Launching Daemon at Fri Jun  5 02:56:23 IST 2026
[2026-06-05 02:56:23,238.238 INFO    ] ================================================
[2026-06-05 02:56:23,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:56:23
[2026-06-05 02:56:24,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:56:24,657.657 INFO    ] Initializing speech engine...
[2026-06-05 02:56:24,676.676 INFO    ] 2026-06-05 02:56:24
[2026-06-05 02:56:24,929.929 INFO    ] 2026-06-05 02:56:24
[2026-06-05 02:56:24,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:56:25,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:56:25,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:56:25,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:56:25,381.381 INFO    ] time= 05/06/2026 02:56:25
[2026-06-05 02:56:25,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:56:25,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:56:25,537.537 INFO    ] No existing commands found in stream
[2026-06-05 02:56:30,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:56:30,550.550 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 02:56:34,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:56:34,213.213 INFO    ] Checking for system updates...
[2026-06-05 02:56:34,249.249 INFO    ] 200
[2026-06-05 02:56:34,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:34,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:56:34,309.309 INFO    ] No update needed
[2026-06-05 02:56:34,312.312 INFO    ] Checking for camera pi updates...
[2026-06-05 02:56:34,347.347 INFO    ] 200
[2026-06-05 02:56:34,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:34,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:56:34,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:56:34,445.445 INFO    ] No camera update needed
[2026-06-05 02:56:34,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:56:34,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:56:34,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:56:34,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:56:36,503.503 INFO    ] ================================================
[2026-06-05 02:56:36,519.519 INFO    ] Launching Daemon at Fri Jun  5 02:56:36 IST 2026
[2026-06-05 02:56:36,529.529 INFO    ] ================================================
[2026-06-05 02:56:37,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:56:37
[2026-06-05 02:56:37,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:56:37,986.986 INFO    ] Initializing speech engine...
[2026-06-05 02:56:37,993.993 INFO    ] 2026-06-05 02:56:37
[2026-06-05 02:56:38,252.252 INFO    ] 2026-06-05 02:56:38
[2026-06-05 02:56:38,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:56:38,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:56:38,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:56:38,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:56:38,710.710 INFO    ] time= 05/06/2026 02:56:38
[2026-06-05 02:56:38,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:56:38,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:56:38,856.856 INFO    ] No existing commands found in stream
[2026-06-05 02:56:43,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:56:43,871.871 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 02:56:45,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:56:45,047.047 INFO    ] Checking for system updates...
[2026-06-05 02:56:45,082.082 INFO    ] 200
[2026-06-05 02:56:45,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:45,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:56:45,142.142 INFO    ] No update needed
[2026-06-05 02:56:45,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 02:56:45,178.178 INFO    ] 200
[2026-06-05 02:56:45,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:45,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:56:45,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:56:45,286.286 INFO    ] No camera update needed
[2026-06-05 02:56:45,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:56:45,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:56:45,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:56:45,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:56:47,341.341 INFO    ] ================================================
[2026-06-05 02:56:47,356.356 INFO    ] Launching Daemon at Fri Jun  5 02:56:47 IST 2026
[2026-06-05 02:56:47,367.367 INFO    ] ================================================
[2026-06-05 02:56:47,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:56:47
[2026-06-05 02:56:48,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:56:48,776.776 INFO    ] Initializing speech engine...
[2026-06-05 02:56:48,790.790 INFO    ] 2026-06-05 02:56:48
[2026-06-05 02:56:49,053.053 INFO    ] 2026-06-05 02:56:49
[2026-06-05 02:56:49,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:56:49,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:56:49,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:56:49,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:56:49,525.525 INFO    ] time= 05/06/2026 02:56:49
[2026-06-05 02:56:49,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:56:49,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:56:49,735.735 INFO    ] No existing commands found in stream
[2026-06-05 02:56:54,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:56:54,760.760 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 02:56:55,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 02:56:55,499.499 INFO    ] Checking for system updates...
[2026-06-05 02:56:55,540.540 INFO    ] 200
[2026-06-05 02:56:55,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:55,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:56:55,600.600 INFO    ] No update needed
[2026-06-05 02:56:55,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 02:56:55,642.642 INFO    ] 200
[2026-06-05 02:56:55,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:56:55,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:56:55,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:56:55,743.743 INFO    ] No camera update needed
[2026-06-05 02:56:55,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:56:55,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:56:55,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:56:55,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:56:57,800.800 INFO    ] ================================================
[2026-06-05 02:56:57,815.815 INFO    ] Launching Daemon at Fri Jun  5 02:56:57 IST 2026
[2026-06-05 02:56:57,826.826 INFO    ] ================================================
[2026-06-05 02:56:58,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:56:58
[2026-06-05 02:56:58,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:56:59,234.234 INFO    ] Initializing speech engine...
[2026-06-05 02:56:59,253.253 INFO    ] 2026-06-05 02:56:59
[2026-06-05 02:56:59,502.502 INFO    ] 2026-06-05 02:56:59
[2026-06-05 02:56:59,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:56:59,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:56:59,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:56:59,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:56:59,872.872 INFO    ] time= 05/06/2026 02:56:59
[2026-06-05 02:56:59,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:56:59,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:56:59,960.960 INFO    ] No existing commands found in stream
[2026-06-05 02:57:04,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:57:04,992.992 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 02:57:09,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:57:09,341.341 INFO    ] Checking for system updates...
[2026-06-05 02:57:09,377.377 INFO    ] 200
[2026-06-05 02:57:09,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:57:09,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:57:09,435.435 INFO    ] No update needed
[2026-06-05 02:57:09,437.437 INFO    ] Checking for camera pi updates...
[2026-06-05 02:57:09,479.479 INFO    ] 200
[2026-06-05 02:57:09,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:57:09,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:57:09,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:57:09,585.585 INFO    ] No camera update needed
[2026-06-05 02:57:09,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:57:09,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:57:09,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:57:09,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:57:11,639.639 INFO    ] ================================================
[2026-06-05 02:57:11,654.654 INFO    ] Launching Daemon at Fri Jun  5 02:57:11 IST 2026
[2026-06-05 02:57:11,665.665 INFO    ] ================================================
[2026-06-05 02:57:12,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:57:12
[2026-06-05 02:57:12,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:57:13,196.196 INFO    ] Initializing speech engine...
[2026-06-05 02:57:13,205.205 INFO    ] 2026-06-05 02:57:13
[2026-06-05 02:57:13,453.453 INFO    ] 2026-06-05 02:57:13
[2026-06-05 02:57:13,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:57:13,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:57:13,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:57:13,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:57:13,899.899 INFO    ] time= 05/06/2026 02:57:13
[2026-06-05 02:57:13,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:57:14,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:57:14,134.134 INFO    ] No existing commands found in stream
[2026-06-05 02:57:19,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:57:19,164.164 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 02:57:22,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:57:22,169.169 INFO    ] Checking for system updates...
[2026-06-05 02:57:22,205.205 INFO    ] 200
[2026-06-05 02:57:22,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:57:22,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:57:22,263.263 INFO    ] No update needed
[2026-06-05 02:57:22,265.265 INFO    ] Checking for camera pi updates...
[2026-06-05 02:57:22,299.299 INFO    ] 200
[2026-06-05 02:57:22,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:57:22,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:57:22,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:57:22,491.491 INFO    ] No camera update needed
[2026-06-05 02:57:22,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:57:22,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:57:22,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:57:22,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:57:24,546.546 INFO    ] ================================================
[2026-06-05 02:57:24,561.561 INFO    ] Launching Daemon at Fri Jun  5 02:57:24 IST 2026
[2026-06-05 02:57:24,572.572 INFO    ] ================================================
[2026-06-05 02:57:25,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:57:25
[2026-06-05 02:57:25,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:57:26,163.163 INFO    ] Initializing speech engine...
[2026-06-05 02:57:26,168.168 INFO    ] 2026-06-05 02:57:26
[2026-06-05 02:57:26,416.416 INFO    ] 2026-06-05 02:57:26
[2026-06-05 02:57:26,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:57:26,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:57:26,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:57:26,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:57:26,795.795 INFO    ] time= 05/06/2026 02:57:26
[2026-06-05 02:57:26,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:57:26,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:57:26,879.879 INFO    ] No existing commands found in stream
[2026-06-05 02:57:31,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:57:31,902.902 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 02:57:34,703.703 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:57:34,705.705 INFO    ] Checking for system updates...
[2026-06-05 02:57:34,744.744 INFO    ] 200
[2026-06-05 02:57:34,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:57:34,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:57:34,802.802 INFO    ] No update needed
[2026-06-05 02:57:34,804.804 INFO    ] Checking for camera pi updates...
[2026-06-05 02:57:34,838.838 INFO    ] 200
[2026-06-05 02:57:34,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:57:34,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:57:34,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:57:34,933.933 INFO    ] No camera update needed
[2026-06-05 02:57:34,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:57:34,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:57:34,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:57:34,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:57:36,987.987 INFO    ] ================================================
[2026-06-05 02:57:37,002.002 INFO    ] Launching Daemon at Fri Jun  5 02:57:36 IST 2026
[2026-06-05 02:57:37,013.013 INFO    ] ================================================
[2026-06-05 02:57:37,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:57:37
[2026-06-05 02:57:38,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:57:38,434.434 INFO    ] Initializing speech engine...
[2026-06-05 02:57:38,444.444 INFO    ] 2026-06-05 02:57:38
[2026-06-05 02:57:38,688.688 INFO    ] 2026-06-05 02:57:38
[2026-06-05 02:57:38,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:57:38,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:57:38,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:57:39,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:57:39,055.055 INFO    ] time= 05/06/2026 02:57:39
[2026-06-05 02:57:39,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:57:39,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:57:39,224.224 INFO    ] No existing commands found in stream
[2026-06-05 02:57:44,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:57:44,258.258 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 02:57:47,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 02:57:47,454.454 INFO    ] Checking for system updates...
[2026-06-05 02:57:47,490.490 INFO    ] 200
[2026-06-05 02:57:47,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:57:47,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:57:47,548.548 INFO    ] No update needed
[2026-06-05 02:57:47,550.550 INFO    ] Checking for camera pi updates...
[2026-06-05 02:57:47,584.584 INFO    ] 200
[2026-06-05 02:57:47,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:57:47,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:57:47,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:57:47,677.677 INFO    ] No camera update needed
[2026-06-05 02:57:47,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:57:47,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:57:47,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:57:47,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:57:49,734.734 INFO    ] ================================================
[2026-06-05 02:57:49,748.748 INFO    ] Launching Daemon at Fri Jun  5 02:57:49 IST 2026
[2026-06-05 02:57:49,760.760 INFO    ] ================================================
[2026-06-05 02:57:50,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:57:50
[2026-06-05 02:57:50,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:57:51,183.183 INFO    ] Initializing speech engine...
[2026-06-05 02:57:51,192.192 INFO    ] 2026-06-05 02:57:51
[2026-06-05 02:57:51,438.438 INFO    ] 2026-06-05 02:57:51
[2026-06-05 02:57:51,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:57:51,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:57:51,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:57:51,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:57:51,928.928 INFO    ] time= 05/06/2026 02:57:51
[2026-06-05 02:57:51,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:57:52,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:57:52,140.140 INFO    ] No existing commands found in stream
[2026-06-05 02:57:57,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:57:57,159.159 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 02:58:00,380.380 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:58:00,383.383 INFO    ] Checking for system updates...
[2026-06-05 02:58:00,419.419 INFO    ] 200
[2026-06-05 02:58:00,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:00,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:58:00,477.477 INFO    ] No update needed
[2026-06-05 02:58:00,479.479 INFO    ] Checking for camera pi updates...
[2026-06-05 02:58:00,513.513 INFO    ] 200
[2026-06-05 02:58:00,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:00,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:58:00,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:58:00,606.606 INFO    ] No camera update needed
[2026-06-05 02:58:00,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:58:00,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:58:00,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:58:00,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:58:02,666.666 INFO    ] ================================================
[2026-06-05 02:58:02,685.685 INFO    ] Launching Daemon at Fri Jun  5 02:58:02 IST 2026
[2026-06-05 02:58:02,700.700 INFO    ] ================================================
[2026-06-05 02:58:03,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:58:03
[2026-06-05 02:58:04,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:58:04,289.289 INFO    ] Initializing speech engine...
[2026-06-05 02:58:04,302.302 INFO    ] 2026-06-05 02:58:04
[2026-06-05 02:58:04,549.549 INFO    ] 2026-06-05 02:58:04
[2026-06-05 02:58:04,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:58:04,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:58:04,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:58:04,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:58:05,019.019 INFO    ] time= 05/06/2026 02:58:04
[2026-06-05 02:58:05,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:58:05,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:58:05,179.179 INFO    ] No existing commands found in stream
[2026-06-05 02:58:10,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:58:10,218.218 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 02:58:14,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 02:58:14,328.328 INFO    ] Checking for system updates...
[2026-06-05 02:58:14,369.369 INFO    ] 200
[2026-06-05 02:58:14,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:14,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:58:14,434.434 INFO    ] No update needed
[2026-06-05 02:58:14,437.437 INFO    ] Checking for camera pi updates...
[2026-06-05 02:58:14,475.475 INFO    ] 200
[2026-06-05 02:58:14,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:14,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:58:14,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:58:14,576.576 INFO    ] No camera update needed
[2026-06-05 02:58:14,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:58:14,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:58:14,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:58:14,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:58:16,632.632 INFO    ] ================================================
[2026-06-05 02:58:16,648.648 INFO    ] Launching Daemon at Fri Jun  5 02:58:16 IST 2026
[2026-06-05 02:58:16,659.659 INFO    ] ================================================
[2026-06-05 02:58:17,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:58:17
[2026-06-05 02:58:17,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:58:18,081.081 INFO    ] Initializing speech engine...
[2026-06-05 02:58:18,091.091 INFO    ] 2026-06-05 02:58:18
[2026-06-05 02:58:18,335.335 INFO    ] 2026-06-05 02:58:18
[2026-06-05 02:58:18,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:58:18,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:58:18,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:58:18,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:58:18,704.704 INFO    ] time= 05/06/2026 02:58:18
[2026-06-05 02:58:18,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:58:18,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:58:18,879.879 INFO    ] No existing commands found in stream
[2026-06-05 02:58:23,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:58:23,908.908 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 02:58:27,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:58:27,774.774 INFO    ] Checking for system updates...
[2026-06-05 02:58:27,811.811 INFO    ] 200
[2026-06-05 02:58:27,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:27,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:58:27,877.877 INFO    ] No update needed
[2026-06-05 02:58:27,881.881 INFO    ] Checking for camera pi updates...
[2026-06-05 02:58:27,919.919 INFO    ] 200
[2026-06-05 02:58:27,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:27,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:58:28,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:58:28,017.017 INFO    ] No camera update needed
[2026-06-05 02:58:28,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:58:28,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:58:28,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:58:28,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:58:30,076.076 INFO    ] ================================================
[2026-06-05 02:58:30,091.091 INFO    ] Launching Daemon at Fri Jun  5 02:58:30 IST 2026
[2026-06-05 02:58:30,103.103 INFO    ] ================================================
[2026-06-05 02:58:30,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:58:30
[2026-06-05 02:58:31,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:58:31,515.515 INFO    ] Initializing speech engine...
[2026-06-05 02:58:31,534.534 INFO    ] 2026-06-05 02:58:31
[2026-06-05 02:58:31,781.781 INFO    ] 2026-06-05 02:58:31
[2026-06-05 02:58:31,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:58:32,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:58:32,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:58:32,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:58:32,339.339 INFO    ] time= 05/06/2026 02:58:32
[2026-06-05 02:58:32,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:58:32,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:58:32,510.510 INFO    ] No existing commands found in stream
[2026-06-05 02:58:37,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:58:37,550.550 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 02:58:41,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:58:41,321.321 INFO    ] Checking for system updates...
[2026-06-05 02:58:41,358.358 INFO    ] 200
[2026-06-05 02:58:41,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:41,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:58:41,420.420 INFO    ] No update needed
[2026-06-05 02:58:41,423.423 INFO    ] Checking for camera pi updates...
[2026-06-05 02:58:41,461.461 INFO    ] 200
[2026-06-05 02:58:41,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:41,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:58:41,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:58:41,567.567 INFO    ] No camera update needed
[2026-06-05 02:58:41,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:58:41,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:58:41,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:58:41,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:58:43,627.627 INFO    ] ================================================
[2026-06-05 02:58:43,642.642 INFO    ] Launching Daemon at Fri Jun  5 02:58:43 IST 2026
[2026-06-05 02:58:43,654.654 INFO    ] ================================================
[2026-06-05 02:58:44,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:58:44
[2026-06-05 02:58:44,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:58:45,113.113 INFO    ] Initializing speech engine...
[2026-06-05 02:58:45,118.118 INFO    ] 2026-06-05 02:58:45
[2026-06-05 02:58:45,366.366 INFO    ] 2026-06-05 02:58:45
[2026-06-05 02:58:45,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:58:45,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:58:45,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:58:45,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:58:45,800.800 INFO    ] time= 05/06/2026 02:58:45
[2026-06-05 02:58:45,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:58:45,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:58:45,982.982 INFO    ] No existing commands found in stream
[2026-06-05 02:58:50,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:58:50,996.996 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-05 02:58:53,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:58:53,393.393 INFO    ] Checking for system updates...
[2026-06-05 02:58:53,434.434 INFO    ] 200
[2026-06-05 02:58:53,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:53,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:58:53,494.494 INFO    ] No update needed
[2026-06-05 02:58:53,497.497 INFO    ] Checking for camera pi updates...
[2026-06-05 02:58:53,535.535 INFO    ] 200
[2026-06-05 02:58:53,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:58:53,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:58:53,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:58:53,630.630 INFO    ] No camera update needed
[2026-06-05 02:58:53,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:58:53,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:58:53,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:58:53,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:58:55,687.687 INFO    ] ================================================
[2026-06-05 02:58:55,703.703 INFO    ] Launching Daemon at Fri Jun  5 02:58:55 IST 2026
[2026-06-05 02:58:55,714.714 INFO    ] ================================================
[2026-06-05 02:58:56,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:58:56
[2026-06-05 02:58:56,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:58:57,138.138 INFO    ] Initializing speech engine...
[2026-06-05 02:58:57,157.157 INFO    ] 2026-06-05 02:58:57
[2026-06-05 02:58:57,415.415 INFO    ] 2026-06-05 02:58:57
[2026-06-05 02:58:57,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:58:57,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:58:57,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:58:57,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:58:57,795.795 INFO    ] time= 05/06/2026 02:58:57
[2026-06-05 02:58:57,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:58:57,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:58:57,966.966 INFO    ] No existing commands found in stream
[2026-06-05 02:59:02,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:59:02,992.992 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 02:59:06,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 02:59:06,350.350 INFO    ] Checking for system updates...
[2026-06-05 02:59:06,386.386 INFO    ] 200
[2026-06-05 02:59:06,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:06,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:59:06,446.446 INFO    ] No update needed
[2026-06-05 02:59:06,449.449 INFO    ] Checking for camera pi updates...
[2026-06-05 02:59:06,491.491 INFO    ] 200
[2026-06-05 02:59:06,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:06,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:59:06,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:59:06,607.607 INFO    ] No camera update needed
[2026-06-05 02:59:06,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:59:06,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:59:06,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:59:06,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:59:08,665.665 INFO    ] ================================================
[2026-06-05 02:59:08,681.681 INFO    ] Launching Daemon at Fri Jun  5 02:59:08 IST 2026
[2026-06-05 02:59:08,693.693 INFO    ] ================================================
[2026-06-05 02:59:09,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:59:09
[2026-06-05 02:59:10,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:59:10,326.326 INFO    ] Initializing speech engine...
[2026-06-05 02:59:10,337.337 INFO    ] 2026-06-05 02:59:10
[2026-06-05 02:59:10,618.618 INFO    ] 2026-06-05 02:59:10
[2026-06-05 02:59:10,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:59:10,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:59:10,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:59:11,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:59:11,110.110 INFO    ] time= 05/06/2026 02:59:11
[2026-06-05 02:59:11,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:59:11,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:59:11,330.330 INFO    ] No existing commands found in stream
[2026-06-05 02:59:16,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:59:16,351.351 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 02:59:18,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:59:18,532.532 INFO    ] Checking for system updates...
[2026-06-05 02:59:18,569.569 INFO    ] 200
[2026-06-05 02:59:18,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:18,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:59:18,629.629 INFO    ] No update needed
[2026-06-05 02:59:18,632.632 INFO    ] Checking for camera pi updates...
[2026-06-05 02:59:18,667.667 INFO    ] 200
[2026-06-05 02:59:18,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:18,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:59:18,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:59:18,770.770 INFO    ] No camera update needed
[2026-06-05 02:59:18,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:59:18,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:59:18,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:59:18,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:59:20,828.828 INFO    ] ================================================
[2026-06-05 02:59:20,844.844 INFO    ] Launching Daemon at Fri Jun  5 02:59:20 IST 2026
[2026-06-05 02:59:20,855.855 INFO    ] ================================================
[2026-06-05 02:59:21,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:59:21
[2026-06-05 02:59:22,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:59:22,267.267 INFO    ] Initializing speech engine...
[2026-06-05 02:59:22,275.275 INFO    ] 2026-06-05 02:59:22
[2026-06-05 02:59:22,569.569 INFO    ] 2026-06-05 02:59:22
[2026-06-05 02:59:22,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:59:22,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:59:22,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:59:22,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:59:22,947.947 INFO    ] time= 05/06/2026 02:59:22
[2026-06-05 02:59:22,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:59:22,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:59:23,073.073 INFO    ] No existing commands found in stream
[2026-06-05 02:59:28,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:59:28,086.086 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 02:59:28,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:59:28,858.858 INFO    ] Checking for system updates...
[2026-06-05 02:59:28,893.893 INFO    ] 200
[2026-06-05 02:59:28,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:28,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:59:28,958.958 INFO    ] No update needed
[2026-06-05 02:59:28,960.960 INFO    ] Checking for camera pi updates...
[2026-06-05 02:59:28,998.998 INFO    ] 200
[2026-06-05 02:59:29,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:29,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:59:29,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:59:29,192.192 INFO    ] No camera update needed
[2026-06-05 02:59:29,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:59:29,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:59:29,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:59:29,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:59:31,248.248 INFO    ] ================================================
[2026-06-05 02:59:31,263.263 INFO    ] Launching Daemon at Fri Jun  5 02:59:31 IST 2026
[2026-06-05 02:59:31,274.274 INFO    ] ================================================
[2026-06-05 02:59:31,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:59:31
[2026-06-05 02:59:32,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:59:32,780.780 INFO    ] Initializing speech engine...
[2026-06-05 02:59:32,803.803 INFO    ] 2026-06-05 02:59:32
[2026-06-05 02:59:33,090.090 INFO    ] 2026-06-05 02:59:33
[2026-06-05 02:59:33,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:59:33,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:59:33,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:59:33,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:59:33,457.457 INFO    ] time= 05/06/2026 02:59:33
[2026-06-05 02:59:33,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:59:33,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:59:33,579.579 INFO    ] No existing commands found in stream
[2026-06-05 02:59:38,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:59:38,593.593 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 02:59:41,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 02:59:41,578.578 INFO    ] Checking for system updates...
[2026-06-05 02:59:41,614.614 INFO    ] 200
[2026-06-05 02:59:41,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:41,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:59:41,676.676 INFO    ] No update needed
[2026-06-05 02:59:41,678.678 INFO    ] Checking for camera pi updates...
[2026-06-05 02:59:41,712.712 INFO    ] 200
[2026-06-05 02:59:41,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:41,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:59:41,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 02:59:41,807.807 INFO    ] No camera update needed
[2026-06-05 02:59:41,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:59:41,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:59:41,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:59:41,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:59:43,863.863 INFO    ] ================================================
[2026-06-05 02:59:43,878.878 INFO    ] Launching Daemon at Fri Jun  5 02:59:43 IST 2026
[2026-06-05 02:59:43,889.889 INFO    ] ================================================
[2026-06-05 02:59:44,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:59:44
[2026-06-05 02:59:45,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:59:45,311.311 INFO    ] Initializing speech engine...
[2026-06-05 02:59:45,331.331 INFO    ] 2026-06-05 02:59:45
[2026-06-05 02:59:45,594.594 INFO    ] 2026-06-05 02:59:45
[2026-06-05 02:59:45,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:59:45,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:59:45,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:59:45,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:59:45,965.965 INFO    ] time= 05/06/2026 02:59:45
[2026-06-05 02:59:45,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:59:46,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:59:46,088.088 INFO    ] No existing commands found in stream
[2026-06-05 02:59:51,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 02:59:51,104.104 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 02:59:53,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 02:59:53,988.988 INFO    ] Checking for system updates...
[2026-06-05 02:59:54,024.024 INFO    ] 200
[2026-06-05 02:59:54,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:54,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:59:54,082.082 INFO    ] No update needed
[2026-06-05 02:59:54,084.084 INFO    ] Checking for camera pi updates...
[2026-06-05 02:59:54,118.118 INFO    ] 200
[2026-06-05 02:59:54,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 02:59:54,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 02:59:54,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 02:59:54,211.211 INFO    ] No camera update needed
[2026-06-05 02:59:54,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-05 02:59:54,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 02:59:54,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 02:59:54,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 02:59:56,267.267 INFO    ] ================================================
[2026-06-05 02:59:56,282.282 INFO    ] Launching Daemon at Fri Jun  5 02:59:56 IST 2026
[2026-06-05 02:59:56,293.293 INFO    ] ================================================
[2026-06-05 02:59:56,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 02:59:56
[2026-06-05 02:59:57,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 02:59:57,877.877 INFO    ] Initializing speech engine...
[2026-06-05 02:59:57,885.885 INFO    ] 2026-06-05 02:59:57
[2026-06-05 02:59:58,156.156 INFO    ] 2026-06-05 02:59:58
[2026-06-05 02:59:58,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 02:59:58,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 02:59:58,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 02:59:58,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 02:59:58,623.623 INFO    ] time= 05/06/2026 02:59:58
[2026-06-05 02:59:58,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 02:59:58,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-05 02:59:58,822.822 INFO    ] No existing commands found in stream
[2026-06-05 03:00:03,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:00:03,853.853 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 03:00:09,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:00:09,162.162 INFO    ] Checking for system updates...
[2026-06-05 03:00:09,215.215 INFO    ] 200
[2026-06-05 03:00:09,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:00:09,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:00:09,292.292 INFO    ] No update needed
[2026-06-05 03:00:09,294.294 INFO    ] Checking for camera pi updates...
[2026-06-05 03:00:09,330.330 INFO    ] 200
[2026-06-05 03:00:09,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:00:09,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:00:09,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:00:09,430.430 INFO    ] No camera update needed
[2026-06-05 03:00:09,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:00:09,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:00:09,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:00:09,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:00:11,491.491 INFO    ] ================================================
[2026-06-05 03:00:11,507.507 INFO    ] Launching Daemon at Fri Jun  5 03:00:11 IST 2026
[2026-06-05 03:00:11,518.518 INFO    ] ================================================
[2026-06-05 03:00:12,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:00:12
[2026-06-05 03:00:12,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:00:13,137.137 INFO    ] Initializing speech engine...
[2026-06-05 03:00:13,149.149 INFO    ] 2026-06-05 03:00:13
[2026-06-05 03:00:13,436.436 INFO    ] 2026-06-05 03:00:13
[2026-06-05 03:00:13,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:00:13,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:00:13,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:00:13,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:00:13,968.968 INFO    ] time= 05/06/2026 03:00:13
[2026-06-05 03:00:13,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:00:13,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:00:14,121.121 INFO    ] No existing commands found in stream
[2026-06-05 03:00:19,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:00:19,142.142 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 03:00:20,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:00:20,122.122 INFO    ] Checking for system updates...
[2026-06-05 03:00:20,158.158 INFO    ] 200
[2026-06-05 03:00:20,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:00:20,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:00:20,221.221 INFO    ] No update needed
[2026-06-05 03:00:20,224.224 INFO    ] Checking for camera pi updates...
[2026-06-05 03:00:20,257.257 INFO    ] 200
[2026-06-05 03:00:20,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:00:20,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:00:20,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:00:20,353.353 INFO    ] No camera update needed
[2026-06-05 03:00:20,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:00:20,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:00:20,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:00:20,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:00:22,411.411 INFO    ] ================================================
[2026-06-05 03:00:22,427.427 INFO    ] Launching Daemon at Fri Jun  5 03:00:22 IST 2026
[2026-06-05 03:00:22,438.438 INFO    ] ================================================
[2026-06-05 03:00:23,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:00:23
[2026-06-05 03:00:23,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:00:23,894.894 INFO    ] Initializing speech engine...
[2026-06-05 03:00:23,905.905 INFO    ] 2026-06-05 03:00:23
[2026-06-05 03:00:24,196.196 INFO    ] 2026-06-05 03:00:24
[2026-06-05 03:00:24,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:00:24,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:00:24,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:00:24,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:00:24,660.660 INFO    ] time= 05/06/2026 03:00:24
[2026-06-05 03:00:24,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:00:24,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:00:24,808.808 INFO    ] No existing commands found in stream
[2026-06-05 03:00:29,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:00:29,824.824 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 03:00:31,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:00:31,050.050 INFO    ] Checking for system updates...
[2026-06-05 03:00:31,085.085 INFO    ] 200
[2026-06-05 03:00:31,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:00:31,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:00:31,143.143 INFO    ] No update needed
[2026-06-05 03:00:31,146.146 INFO    ] Checking for camera pi updates...
[2026-06-05 03:00:31,180.180 INFO    ] 200
[2026-06-05 03:00:31,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:00:31,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:00:31,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:00:31,280.280 INFO    ] No camera update needed
[2026-06-05 03:00:31,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:00:31,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:00:31,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:00:31,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:00:33,351.351 INFO    ] ================================================
[2026-06-05 03:00:33,367.367 INFO    ] Launching Daemon at Fri Jun  5 03:00:33 IST 2026
[2026-06-05 03:00:33,378.378 INFO    ] ================================================
[2026-06-05 03:00:33,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:00:33
[2026-06-05 03:00:34,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:00:34,801.801 INFO    ] Initializing speech engine...
[2026-06-05 03:00:34,810.810 INFO    ] 2026-06-05 03:00:34
[2026-06-05 03:00:35,059.059 INFO    ] 2026-06-05 03:00:35
[2026-06-05 03:00:35,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:00:35,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:00:35,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:00:35,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:00:35,430.430 INFO    ] time= 05/06/2026 03:00:35
[2026-06-05 03:00:35,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:00:35,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:00:35,512.512 INFO    ] No existing commands found in stream
[2026-06-05 03:00:40,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:00:40,528.528 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 03:00:41,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:00:41,638.638 INFO    ] Checking for system updates...
[2026-06-05 03:00:41,677.677 INFO    ] 200
[2026-06-05 03:00:41,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:00:41,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:00:41,737.737 INFO    ] No update needed
[2026-06-05 03:00:41,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 03:00:41,773.773 INFO    ] 200
[2026-06-05 03:00:41,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:00:41,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:00:41,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:00:41,870.870 INFO    ] No camera update needed
[2026-06-05 03:00:41,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:00:41,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:00:41,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:00:41,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:00:43,928.928 INFO    ] ================================================
[2026-06-05 03:00:43,943.943 INFO    ] Launching Daemon at Fri Jun  5 03:00:43 IST 2026
[2026-06-05 03:00:43,954.954 INFO    ] ================================================
[2026-06-05 03:00:44,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:00:44
[2026-06-05 03:00:45,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:00:45,364.364 INFO    ] Initializing speech engine...
[2026-06-05 03:00:45,376.376 INFO    ] 2026-06-05 03:00:45
[2026-06-05 03:00:45,641.641 INFO    ] 2026-06-05 03:00:45
[2026-06-05 03:00:45,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:00:45,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:00:45,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:00:46,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:00:46,127.127 INFO    ] time= 05/06/2026 03:00:46
[2026-06-05 03:00:46,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:00:46,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:00:46,336.336 INFO    ] No existing commands found in stream
[2026-06-05 03:00:51,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:00:51,369.369 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 03:00:54,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:00:54,691.691 INFO    ] Checking for system updates...
[2026-06-05 03:00:54,737.737 INFO    ] 200
[2026-06-05 03:00:54,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 03:00:54,742.742 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 03:00:54,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 03:00:54,797.797 INFO    ] 200
[2026-06-05 03:00:54,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 03:00:54,802.802 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 03:00:54,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:00:54,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:00:54,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:00:54,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:00:56,864.864 INFO    ] ================================================
[2026-06-05 03:00:56,882.882 INFO    ] Launching Daemon at Fri Jun  5 03:00:56 IST 2026
[2026-06-05 03:00:56,894.894 INFO    ] ================================================
[2026-06-05 03:00:57,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:00:57
[2026-06-05 03:00:58,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:00:58,492.492 INFO    ] Initializing speech engine...
[2026-06-05 03:00:58,503.503 INFO    ] 2026-06-05 03:00:58
[2026-06-05 03:00:58,797.797 INFO    ] 2026-06-05 03:00:58
[2026-06-05 03:00:58,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:00:58,950.950 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 03:00:59,112.112 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:00:59,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:00:59,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:00:59,197.197 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 03:00:59,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:01,361.361 INFO    ] ================================================
[2026-06-05 03:01:01,418.418 INFO    ] Launching Daemon at Fri Jun  5 03:01:01 IST 2026
[2026-06-05 03:01:01,433.433 INFO    ] ================================================
[2026-06-05 03:01:02,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:02
[2026-06-05 03:01:02,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:03,056.056 INFO    ] Initializing speech engine...
[2026-06-05 03:01:03,063.063 INFO    ] 2026-06-05 03:01:03
[2026-06-05 03:01:03,344.344 INFO    ] 2026-06-05 03:01:03
[2026-06-05 03:01:03,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:04,516.516 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 03:01:04,600.600 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:01:04,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:04,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:04,624.624 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 03:01:04,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:06,678.678 INFO    ] ================================================
[2026-06-05 03:01:06,693.693 INFO    ] Launching Daemon at Fri Jun  5 03:01:06 IST 2026
[2026-06-05 03:01:06,704.704 INFO    ] ================================================
[2026-06-05 03:01:07,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:07
[2026-06-05 03:01:07,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:08,169.169 INFO    ] Initializing speech engine...
[2026-06-05 03:01:08,180.180 INFO    ] 2026-06-05 03:01:08
[2026-06-05 03:01:08,427.427 INFO    ] 2026-06-05 03:01:08
[2026-06-05 03:01:08,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:13,518.518 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-05 03:01:13,544.544 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:01:13,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:13,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:13,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:15,597.597 INFO    ] ================================================
[2026-06-05 03:01:15,613.613 INFO    ] Launching Daemon at Fri Jun  5 03:01:15 IST 2026
[2026-06-05 03:01:15,623.623 INFO    ] ================================================
[2026-06-05 03:01:16,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:16
[2026-06-05 03:01:16,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:17,066.066 INFO    ] Initializing speech engine...
[2026-06-05 03:01:17,075.075 INFO    ] 2026-06-05 03:01:17
[2026-06-05 03:01:17,339.339 INFO    ] 2026-06-05 03:01:17
[2026-06-05 03:01:17,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:17,487.487 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 03:01:17,636.636 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:01:17,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:17,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:17,698.698 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 03:01:17,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:19,780.780 INFO    ] ================================================
[2026-06-05 03:01:19,796.796 INFO    ] Launching Daemon at Fri Jun  5 03:01:19 IST 2026
[2026-06-05 03:01:19,806.806 INFO    ] ================================================
[2026-06-05 03:01:20,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:20
[2026-06-05 03:01:20,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:21,256.256 INFO    ] Initializing speech engine...
[2026-06-05 03:01:21,270.270 INFO    ] 2026-06-05 03:01:21
[2026-06-05 03:01:21,557.557 INFO    ] 2026-06-05 03:01:21
[2026-06-05 03:01:21,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:21,654.654 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 03:01:21,826.826 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:01:21,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:21,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:21,940.940 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 03:01:21,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:24,021.021 INFO    ] ================================================
[2026-06-05 03:01:24,036.036 INFO    ] Launching Daemon at Fri Jun  5 03:01:24 IST 2026
[2026-06-05 03:01:24,047.047 INFO    ] ================================================
[2026-06-05 03:01:24,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:24
[2026-06-05 03:01:25,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:25,484.484 INFO    ] Initializing speech engine...
[2026-06-05 03:01:25,491.491 INFO    ] 2026-06-05 03:01:25
[2026-06-05 03:01:25,791.791 INFO    ] 2026-06-05 03:01:25
[2026-06-05 03:01:25,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:25,931.931 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 03:01:26,064.064 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:01:26,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:26,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:26,168.168 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 03:01:26,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:28,252.252 INFO    ] ================================================
[2026-06-05 03:01:28,267.267 INFO    ] Launching Daemon at Fri Jun  5 03:01:28 IST 2026
[2026-06-05 03:01:28,278.278 INFO    ] ================================================
[2026-06-05 03:01:28,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:28
[2026-06-05 03:01:29,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:29,688.688 INFO    ] Initializing speech engine...
[2026-06-05 03:01:29,712.712 INFO    ] 2026-06-05 03:01:29
[2026-06-05 03:01:29,970.970 INFO    ] 2026-06-05 03:01:29
[2026-06-05 03:01:30,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:30,133.133 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 03:01:30,239.239 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:01:30,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:30,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:30,342.342 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 03:01:30,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:32,426.426 INFO    ] ================================================
[2026-06-05 03:01:32,442.442 INFO    ] Launching Daemon at Fri Jun  5 03:01:32 IST 2026
[2026-06-05 03:01:32,453.453 INFO    ] ================================================
[2026-06-05 03:01:33,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:33
[2026-06-05 03:01:33,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:33,888.888 INFO    ] Initializing speech engine...
[2026-06-05 03:01:33,895.895 INFO    ] 2026-06-05 03:01:33
[2026-06-05 03:01:34,189.189 INFO    ] 2026-06-05 03:01:34
[2026-06-05 03:01:34,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:34,283.283 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 03:01:34,442.442 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:01:34,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:34,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:34,562.562 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 03:01:34,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:36,629.629 INFO    ] ================================================
[2026-06-05 03:01:36,643.643 INFO    ] Launching Daemon at Fri Jun  5 03:01:36 IST 2026
[2026-06-05 03:01:36,655.655 INFO    ] ================================================
[2026-06-05 03:01:37,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:37
[2026-06-05 03:01:37,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:38,169.169 INFO    ] Initializing speech engine...
[2026-06-05 03:01:38,193.193 INFO    ] 2026-06-05 03:01:38
[2026-06-05 03:01:38,456.456 INFO    ] 2026-06-05 03:01:38
[2026-06-05 03:01:38,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:38,586.586 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 03:01:38,718.718 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:01:38,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:38,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:38,819.819 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 03:01:38,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:40,893.893 INFO    ] ================================================
[2026-06-05 03:01:40,909.909 INFO    ] Launching Daemon at Fri Jun  5 03:01:40 IST 2026
[2026-06-05 03:01:40,920.920 INFO    ] ================================================
[2026-06-05 03:01:41,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:41
[2026-06-05 03:01:42,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:42,535.535 INFO    ] Initializing speech engine...
[2026-06-05 03:01:42,549.549 INFO    ] 2026-06-05 03:01:42
[2026-06-05 03:01:42,857.857 INFO    ] 2026-06-05 03:01:42
[2026-06-05 03:01:42,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:47,982.982 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-05 03:01:48,012.012 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 03:01:48,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:48,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:48,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:01:50,069.069 INFO    ] ================================================
[2026-06-05 03:01:50,085.085 INFO    ] Launching Daemon at Fri Jun  5 03:01:50 IST 2026
[2026-06-05 03:01:50,096.096 INFO    ] ================================================
[2026-06-05 03:01:50,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:01:50
[2026-06-05 03:01:51,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:01:51,567.567 INFO    ] Initializing speech engine...
[2026-06-05 03:01:51,575.575 INFO    ] 2026-06-05 03:01:51
[2026-06-05 03:01:51,827.827 INFO    ] 2026-06-05 03:01:51
[2026-06-05 03:01:51,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:01:52,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:01:52,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:01:52,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:01:52,235.235 INFO    ] time= 05/06/2026 03:01:52
[2026-06-05 03:01:52,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:01:52,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:01:52,326.326 INFO    ] No existing commands found in stream
[2026-06-05 03:01:57,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:01:57,344.344 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 03:01:59,639.639 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:01:59,641.641 INFO    ] Checking for system updates...
[2026-06-05 03:01:59,677.677 INFO    ] 200
[2026-06-05 03:01:59,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:01:59,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:01:59,741.741 INFO    ] No update needed
[2026-06-05 03:01:59,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 03:01:59,780.780 INFO    ] 200
[2026-06-05 03:01:59,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:01:59,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:01:59,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:01:59,869.869 INFO    ] No camera update needed
[2026-06-05 03:01:59,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:01:59,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:01:59,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:01:59,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:02:01,929.929 INFO    ] ================================================
[2026-06-05 03:02:01,958.958 INFO    ] Launching Daemon at Fri Jun  5 03:02:01 IST 2026
[2026-06-05 03:02:01,984.984 INFO    ] ================================================
[2026-06-05 03:02:02,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:02:02
[2026-06-05 03:02:03,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:02:03,580.580 INFO    ] Initializing speech engine...
[2026-06-05 03:02:03,588.588 INFO    ] 2026-06-05 03:02:03
[2026-06-05 03:02:03,910.910 INFO    ] 2026-06-05 03:02:03
[2026-06-05 03:02:03,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:02:04,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:02:04,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:02:04,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:02:04,420.420 INFO    ] time= 05/06/2026 03:02:04
[2026-06-05 03:02:04,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:02:04,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:02:04,571.571 INFO    ] No existing commands found in stream
[2026-06-05 03:02:09,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:02:09,591.591 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 03:02:11,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:02:11,473.473 INFO    ] Checking for system updates...
[2026-06-05 03:02:11,510.510 INFO    ] 200
[2026-06-05 03:02:11,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:02:11,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:02:11,574.574 INFO    ] No update needed
[2026-06-05 03:02:11,577.577 INFO    ] Checking for camera pi updates...
[2026-06-05 03:02:11,615.615 INFO    ] 200
[2026-06-05 03:02:11,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:02:11,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:02:11,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:02:11,716.716 INFO    ] No camera update needed
[2026-06-05 03:02:11,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:02:11,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:02:11,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:02:11,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:02:13,772.772 INFO    ] ================================================
[2026-06-05 03:02:13,787.787 INFO    ] Launching Daemon at Fri Jun  5 03:02:13 IST 2026
[2026-06-05 03:02:13,798.798 INFO    ] ================================================
[2026-06-05 03:02:14,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:02:14
[2026-06-05 03:02:14,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:02:15,267.267 INFO    ] Initializing speech engine...
[2026-06-05 03:02:15,274.274 INFO    ] 2026-06-05 03:02:15
[2026-06-05 03:02:15,540.540 INFO    ] 2026-06-05 03:02:15
[2026-06-05 03:02:15,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:02:15,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:02:15,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:02:15,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:02:16,049.049 INFO    ] time= 05/06/2026 03:02:15
[2026-06-05 03:02:16,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:02:16,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:02:16,188.188 INFO    ] No existing commands found in stream
[2026-06-05 03:02:21,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:02:21,200.200 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 03:02:25,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:02:25,281.281 INFO    ] Checking for system updates...
[2026-06-05 03:02:25,317.317 INFO    ] 200
[2026-06-05 03:02:25,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:02:25,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:02:25,380.380 INFO    ] No update needed
[2026-06-05 03:02:25,382.382 INFO    ] Checking for camera pi updates...
[2026-06-05 03:02:25,420.420 INFO    ] 200
[2026-06-05 03:02:25,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:02:25,463.463 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:02:25,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:02:25,510.510 INFO    ] No camera update needed
[2026-06-05 03:02:25,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:02:25,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:02:25,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:02:25,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:02:27,567.567 INFO    ] ================================================
[2026-06-05 03:02:27,582.582 INFO    ] Launching Daemon at Fri Jun  5 03:02:27 IST 2026
[2026-06-05 03:02:27,593.593 INFO    ] ================================================
[2026-06-05 03:02:28,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:02:28
[2026-06-05 03:02:28,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:02:29,024.024 INFO    ] Initializing speech engine...
[2026-06-05 03:02:29,033.033 INFO    ] 2026-06-05 03:02:29
[2026-06-05 03:02:29,284.284 INFO    ] 2026-06-05 03:02:29
[2026-06-05 03:02:29,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:02:29,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:02:29,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:02:29,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:02:29,627.627 INFO    ] time= 05/06/2026 03:02:29
[2026-06-05 03:02:29,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:02:29,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:02:29,739.739 INFO    ] No existing commands found in stream
[2026-06-05 03:02:34,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:02:34,754.754 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 03:02:36,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:02:36,580.580 INFO    ] Checking for system updates...
[2026-06-05 03:02:36,616.616 INFO    ] 200
[2026-06-05 03:02:36,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:02:36,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:02:36,673.673 INFO    ] No update needed
[2026-06-05 03:02:36,676.676 INFO    ] Checking for camera pi updates...
[2026-06-05 03:02:36,709.709 INFO    ] 200
[2026-06-05 03:02:36,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:02:36,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:02:36,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:02:36,803.803 INFO    ] No camera update needed
[2026-06-05 03:02:36,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:02:36,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:02:36,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:02:36,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:02:38,859.859 INFO    ] ================================================
[2026-06-05 03:02:38,874.874 INFO    ] Launching Daemon at Fri Jun  5 03:02:38 IST 2026
[2026-06-05 03:02:38,885.885 INFO    ] ================================================
[2026-06-05 03:02:39,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:02:39
[2026-06-05 03:02:40,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:02:40,345.345 INFO    ] Initializing speech engine...
[2026-06-05 03:02:40,354.354 INFO    ] 2026-06-05 03:02:40
[2026-06-05 03:02:40,610.610 INFO    ] 2026-06-05 03:02:40
[2026-06-05 03:02:40,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:02:40,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:02:40,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:02:41,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:02:41,072.072 INFO    ] time= 05/06/2026 03:02:41
[2026-06-05 03:02:41,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:02:41,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:02:41,224.224 INFO    ] No existing commands found in stream
[2026-06-05 03:02:46,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:02:46,239.239 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 03:02:49,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:02:49,863.863 INFO    ] Checking for system updates...
[2026-06-05 03:02:49,899.899 INFO    ] 200
[2026-06-05 03:02:49,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:02:49,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:02:49,957.957 INFO    ] No update needed
[2026-06-05 03:02:49,959.959 INFO    ] Checking for camera pi updates...
[2026-06-05 03:02:49,994.994 INFO    ] 200
[2026-06-05 03:02:49,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:02:50,038.038 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:02:50,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:02:50,082.082 INFO    ] No camera update needed
[2026-06-05 03:02:50,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:02:50,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:02:50,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:02:50,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:02:52,138.138 INFO    ] ================================================
[2026-06-05 03:02:52,153.153 INFO    ] Launching Daemon at Fri Jun  5 03:02:52 IST 2026
[2026-06-05 03:02:52,164.164 INFO    ] ================================================
[2026-06-05 03:02:52,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:02:52
[2026-06-05 03:02:53,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:02:53,588.588 INFO    ] Initializing speech engine...
[2026-06-05 03:02:53,598.598 INFO    ] 2026-06-05 03:02:53
[2026-06-05 03:02:53,856.856 INFO    ] 2026-06-05 03:02:53
[2026-06-05 03:02:53,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:02:54,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:02:54,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:02:54,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:02:54,319.319 INFO    ] time= 05/06/2026 03:02:54
[2026-06-05 03:02:54,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:02:54,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:02:54,466.466 INFO    ] No existing commands found in stream
[2026-06-05 03:02:59,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:02:59,499.499 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 03:03:01,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:03:01,570.570 INFO    ] Checking for system updates...
[2026-06-05 03:03:01,610.610 INFO    ] 200
[2026-06-05 03:03:01,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:01,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:03:01,674.674 INFO    ] No update needed
[2026-06-05 03:03:01,676.676 INFO    ] Checking for camera pi updates...
[2026-06-05 03:03:01,711.711 INFO    ] 200
[2026-06-05 03:03:01,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:01,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:03:01,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:03:01,795.795 INFO    ] No camera update needed
[2026-06-05 03:03:01,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:03:01,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:03:01,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:03:01,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:03:03,854.854 INFO    ] ================================================
[2026-06-05 03:03:03,870.870 INFO    ] Launching Daemon at Fri Jun  5 03:03:03 IST 2026
[2026-06-05 03:03:03,881.881 INFO    ] ================================================
[2026-06-05 03:03:04,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:03:04
[2026-06-05 03:03:05,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:03:05,566.566 INFO    ] Initializing speech engine...
[2026-06-05 03:03:05,578.578 INFO    ] 2026-06-05 03:03:05
[2026-06-05 03:03:05,889.889 INFO    ] 2026-06-05 03:03:05
[2026-06-05 03:03:05,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:03:06,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:03:06,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:03:06,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:03:06,400.400 INFO    ] time= 05/06/2026 03:03:06
[2026-06-05 03:03:06,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:03:06,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:03:06,564.564 INFO    ] No existing commands found in stream
[2026-06-05 03:03:11,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:03:11,599.599 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 03:03:12,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:03:12,108.108 INFO    ] Checking for system updates...
[2026-06-05 03:03:12,150.150 INFO    ] 200
[2026-06-05 03:03:12,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:12,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:03:12,219.219 INFO    ] No update needed
[2026-06-05 03:03:12,223.223 INFO    ] Checking for camera pi updates...
[2026-06-05 03:03:12,258.258 INFO    ] 200
[2026-06-05 03:03:12,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:12,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:03:12,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:03:12,349.349 INFO    ] No camera update needed
[2026-06-05 03:03:12,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:03:12,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:03:12,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:03:12,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:03:14,412.412 INFO    ] ================================================
[2026-06-05 03:03:14,458.458 INFO    ] Launching Daemon at Fri Jun  5 03:03:14 IST 2026
[2026-06-05 03:03:14,471.471 INFO    ] ================================================
[2026-06-05 03:03:15,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:03:15
[2026-06-05 03:03:15,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:03:15,930.930 INFO    ] Initializing speech engine...
[2026-06-05 03:03:15,953.953 INFO    ] 2026-06-05 03:03:15
[2026-06-05 03:03:16,224.224 INFO    ] 2026-06-05 03:03:16
[2026-06-05 03:03:16,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:03:16,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:03:16,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:03:16,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:03:16,587.587 INFO    ] time= 05/06/2026 03:03:16
[2026-06-05 03:03:16,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:03:16,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:03:16,705.705 INFO    ] No existing commands found in stream
[2026-06-05 03:03:21,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:03:21,721.721 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 03:03:24,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:03:24,102.102 INFO    ] Checking for system updates...
[2026-06-05 03:03:24,142.142 INFO    ] 200
[2026-06-05 03:03:24,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:24,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:03:24,202.202 INFO    ] No update needed
[2026-06-05 03:03:24,204.204 INFO    ] Checking for camera pi updates...
[2026-06-05 03:03:24,238.238 INFO    ] 200
[2026-06-05 03:03:24,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:24,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:03:24,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:03:24,332.332 INFO    ] No camera update needed
[2026-06-05 03:03:24,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:03:24,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:03:24,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:03:24,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:03:26,392.392 INFO    ] ================================================
[2026-06-05 03:03:26,407.407 INFO    ] Launching Daemon at Fri Jun  5 03:03:26 IST 2026
[2026-06-05 03:03:26,418.418 INFO    ] ================================================
[2026-06-05 03:03:27,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:03:27
[2026-06-05 03:03:27,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:03:27,882.882 INFO    ] Initializing speech engine...
[2026-06-05 03:03:27,891.891 INFO    ] 2026-06-05 03:03:27
[2026-06-05 03:03:28,155.155 INFO    ] 2026-06-05 03:03:28
[2026-06-05 03:03:28,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:03:28,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:03:28,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:03:28,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:03:28,617.617 INFO    ] time= 05/06/2026 03:03:28
[2026-06-05 03:03:28,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:03:28,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:03:28,764.764 INFO    ] No existing commands found in stream
[2026-06-05 03:03:33,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:03:33,779.779 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 03:03:34,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:03:34,956.956 INFO    ] Checking for system updates...
[2026-06-05 03:03:34,992.992 INFO    ] 200
[2026-06-05 03:03:34,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:35,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:03:35,050.050 INFO    ] No update needed
[2026-06-05 03:03:35,052.052 INFO    ] Checking for camera pi updates...
[2026-06-05 03:03:35,086.086 INFO    ] 200
[2026-06-05 03:03:35,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:35,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:03:35,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:03:35,180.180 INFO    ] No camera update needed
[2026-06-05 03:03:35,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:03:35,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:03:35,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:03:35,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:03:37,235.235 INFO    ] ================================================
[2026-06-05 03:03:37,251.251 INFO    ] Launching Daemon at Fri Jun  5 03:03:37 IST 2026
[2026-06-05 03:03:37,262.262 INFO    ] ================================================
[2026-06-05 03:03:37,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:03:37
[2026-06-05 03:03:38,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:03:38,680.680 INFO    ] Initializing speech engine...
[2026-06-05 03:03:38,689.689 INFO    ] 2026-06-05 03:03:38
[2026-06-05 03:03:38,937.937 INFO    ] 2026-06-05 03:03:38
[2026-06-05 03:03:38,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:03:39,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:03:39,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:03:40,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:03:40,587.587 INFO    ] time= 05/06/2026 03:03:40
[2026-06-05 03:03:40,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:03:40,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:03:40,700.700 INFO    ] No existing commands found in stream
[2026-06-05 03:03:45,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:03:45,714.714 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 03:03:48,135.135 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:03:48,137.137 INFO    ] Checking for system updates...
[2026-06-05 03:03:48,175.175 INFO    ] 200
[2026-06-05 03:03:48,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:48,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:03:48,232.232 INFO    ] No update needed
[2026-06-05 03:03:48,234.234 INFO    ] Checking for camera pi updates...
[2026-06-05 03:03:48,268.268 INFO    ] 200
[2026-06-05 03:03:48,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:03:48,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:03:48,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:03:48,363.363 INFO    ] No camera update needed
[2026-06-05 03:03:48,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:03:48,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:03:48,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:03:48,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:03:50,421.421 INFO    ] ================================================
[2026-06-05 03:03:50,436.436 INFO    ] Launching Daemon at Fri Jun  5 03:03:50 IST 2026
[2026-06-05 03:03:50,447.447 INFO    ] ================================================
[2026-06-05 03:03:51,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:03:51
[2026-06-05 03:03:51,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:03:52,080.080 INFO    ] Initializing speech engine...
[2026-06-05 03:03:52,091.091 INFO    ] 2026-06-05 03:03:52
[2026-06-05 03:03:52,376.376 INFO    ] 2026-06-05 03:03:52
[2026-06-05 03:03:52,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:03:52,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:03:52,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:03:52,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:03:52,906.906 INFO    ] time= 05/06/2026 03:03:52
[2026-06-05 03:03:52,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:03:52,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:03:53,047.047 INFO    ] No existing commands found in stream
[2026-06-05 03:03:58,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:03:58,078.078 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 03:04:00,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:04:00,028.028 INFO    ] Checking for system updates...
[2026-06-05 03:04:00,065.065 INFO    ] 200
[2026-06-05 03:04:00,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:00,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:04:00,135.135 INFO    ] No update needed
[2026-06-05 03:04:00,138.138 INFO    ] Checking for camera pi updates...
[2026-06-05 03:04:00,175.175 INFO    ] 200
[2026-06-05 03:04:00,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:00,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:04:00,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:04:00,278.278 INFO    ] No camera update needed
[2026-06-05 03:04:00,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:04:00,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:04:00,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:04:00,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:04:02,339.339 INFO    ] ================================================
[2026-06-05 03:04:02,362.362 INFO    ] Launching Daemon at Fri Jun  5 03:04:02 IST 2026
[2026-06-05 03:04:02,378.378 INFO    ] ================================================
[2026-06-05 03:04:03,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:04:03
[2026-06-05 03:04:03,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:04:04,097.097 INFO    ] Initializing speech engine...
[2026-06-05 03:04:04,112.112 INFO    ] 2026-06-05 03:04:04
[2026-06-05 03:04:04,385.385 INFO    ] 2026-06-05 03:04:04
[2026-06-05 03:04:04,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:04:04,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:04:04,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:04:04,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:04:04,801.801 INFO    ] time= 05/06/2026 03:04:04
[2026-06-05 03:04:04,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:04:04,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:04:04,886.886 INFO    ] No existing commands found in stream
[2026-06-05 03:04:09,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:04:09,901.901 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 03:04:13,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:04:13,813.813 INFO    ] Checking for system updates...
[2026-06-05 03:04:13,853.853 INFO    ] 200
[2026-06-05 03:04:13,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:13,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:04:13,911.911 INFO    ] No update needed
[2026-06-05 03:04:13,913.913 INFO    ] Checking for camera pi updates...
[2026-06-05 03:04:13,947.947 INFO    ] 200
[2026-06-05 03:04:13,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:13,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:04:14,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:04:14,142.142 INFO    ] No camera update needed
[2026-06-05 03:04:14,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:04:14,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:04:14,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:04:14,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:04:16,201.201 INFO    ] ================================================
[2026-06-05 03:04:16,216.216 INFO    ] Launching Daemon at Fri Jun  5 03:04:16 IST 2026
[2026-06-05 03:04:16,230.230 INFO    ] ================================================
[2026-06-05 03:04:16,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:04:16
[2026-06-05 03:04:17,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:04:17,688.688 INFO    ] Initializing speech engine...
[2026-06-05 03:04:17,694.694 INFO    ] 2026-06-05 03:04:17
[2026-06-05 03:04:17,991.991 INFO    ] 2026-06-05 03:04:17
[2026-06-05 03:04:18,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:04:18,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:04:18,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:04:18,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:04:18,376.376 INFO    ] time= 05/06/2026 03:04:18
[2026-06-05 03:04:18,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:04:18,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:04:18,503.503 INFO    ] No existing commands found in stream
[2026-06-05 03:04:23,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:04:23,519.519 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 03:04:27,523.523 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:04:27,526.526 INFO    ] Checking for system updates...
[2026-06-05 03:04:27,563.563 INFO    ] 200
[2026-06-05 03:04:27,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:27,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:04:27,624.624 INFO    ] No update needed
[2026-06-05 03:04:27,627.627 INFO    ] Checking for camera pi updates...
[2026-06-05 03:04:27,663.663 INFO    ] 200
[2026-06-05 03:04:27,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:27,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:04:27,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:04:27,758.758 INFO    ] No camera update needed
[2026-06-05 03:04:27,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:04:27,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:04:27,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:04:27,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:04:29,814.814 INFO    ] ================================================
[2026-06-05 03:04:29,829.829 INFO    ] Launching Daemon at Fri Jun  5 03:04:29 IST 2026
[2026-06-05 03:04:29,841.841 INFO    ] ================================================
[2026-06-05 03:04:30,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:04:30
[2026-06-05 03:04:31,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:04:31,275.275 INFO    ] Initializing speech engine...
[2026-06-05 03:04:31,284.284 INFO    ] 2026-06-05 03:04:31
[2026-06-05 03:04:31,538.538 INFO    ] 2026-06-05 03:04:31
[2026-06-05 03:04:31,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:04:31,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:04:31,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:04:31,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:04:31,984.984 INFO    ] time= 05/06/2026 03:04:31
[2026-06-05 03:04:31,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:04:32,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:04:32,138.138 INFO    ] No existing commands found in stream
[2026-06-05 03:04:37,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:04:37,156.156 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 03:04:38,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:04:38,446.446 INFO    ] Checking for system updates...
[2026-06-05 03:04:38,482.482 INFO    ] 200
[2026-06-05 03:04:38,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:38,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:04:38,543.543 INFO    ] No update needed
[2026-06-05 03:04:38,545.545 INFO    ] Checking for camera pi updates...
[2026-06-05 03:04:38,579.579 INFO    ] 200
[2026-06-05 03:04:38,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:38,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:04:38,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:04:38,679.679 INFO    ] No camera update needed
[2026-06-05 03:04:38,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:04:38,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:04:38,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:04:38,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:04:40,738.738 INFO    ] ================================================
[2026-06-05 03:04:40,753.753 INFO    ] Launching Daemon at Fri Jun  5 03:04:40 IST 2026
[2026-06-05 03:04:40,764.764 INFO    ] ================================================
[2026-06-05 03:04:41,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:04:41
[2026-06-05 03:04:42,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:04:42,356.356 INFO    ] Initializing speech engine...
[2026-06-05 03:04:42,370.370 INFO    ] 2026-06-05 03:04:42
[2026-06-05 03:04:42,652.652 INFO    ] 2026-06-05 03:04:42
[2026-06-05 03:04:42,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:04:42,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:04:42,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:04:43,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:04:43,120.120 INFO    ] time= 05/06/2026 03:04:43
[2026-06-05 03:04:43,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:04:43,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:04:43,291.291 INFO    ] No existing commands found in stream
[2026-06-05 03:04:48,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:04:48,308.308 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 03:04:50,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:04:50,567.567 INFO    ] Checking for system updates...
[2026-06-05 03:04:50,603.603 INFO    ] 200
[2026-06-05 03:04:50,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:50,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:04:50,668.668 INFO    ] No update needed
[2026-06-05 03:04:50,670.670 INFO    ] Checking for camera pi updates...
[2026-06-05 03:04:50,704.704 INFO    ] 200
[2026-06-05 03:04:50,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:04:50,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:04:50,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:04:50,801.801 INFO    ] No camera update needed
[2026-06-05 03:04:50,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:04:50,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:04:50,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:04:50,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:04:52,858.858 INFO    ] ================================================
[2026-06-05 03:04:52,873.873 INFO    ] Launching Daemon at Fri Jun  5 03:04:52 IST 2026
[2026-06-05 03:04:52,884.884 INFO    ] ================================================
[2026-06-05 03:04:53,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:04:53
[2026-06-05 03:04:54,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:04:54,330.330 INFO    ] Initializing speech engine...
[2026-06-05 03:04:54,343.343 INFO    ] 2026-06-05 03:04:54
[2026-06-05 03:04:54,629.629 INFO    ] 2026-06-05 03:04:54
[2026-06-05 03:04:54,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:04:54,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:04:54,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:04:55,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:04:55,009.009 INFO    ] time= 05/06/2026 03:04:55
[2026-06-05 03:04:55,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:04:55,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:04:55,134.134 INFO    ] No existing commands found in stream
[2026-06-05 03:05:00,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:05:00,149.149 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 03:05:02,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:05:02,582.582 INFO    ] Checking for system updates...
[2026-06-05 03:05:02,640.640 INFO    ] 200
[2026-06-05 03:05:02,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:02,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:05:02,712.712 INFO    ] No update needed
[2026-06-05 03:05:02,715.715 INFO    ] Checking for camera pi updates...
[2026-06-05 03:05:02,757.757 INFO    ] 200
[2026-06-05 03:05:02,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:02,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:05:02,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:05:02,855.855 INFO    ] No camera update needed
[2026-06-05 03:05:02,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:05:02,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:05:02,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:05:02,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:05:04,920.920 INFO    ] ================================================
[2026-06-05 03:05:04,936.936 INFO    ] Launching Daemon at Fri Jun  5 03:05:04 IST 2026
[2026-06-05 03:05:04,947.947 INFO    ] ================================================
[2026-06-05 03:05:05,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:05:05
[2026-06-05 03:05:06,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:05:06,560.560 INFO    ] Initializing speech engine...
[2026-06-05 03:05:06,574.574 INFO    ] 2026-06-05 03:05:06
[2026-06-05 03:05:06,862.862 INFO    ] 2026-06-05 03:05:06
[2026-06-05 03:05:06,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:05:07,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:05:07,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:05:07,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:05:07,412.412 INFO    ] time= 05/06/2026 03:05:07
[2026-06-05 03:05:07,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:05:07,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:05:07,564.564 INFO    ] No existing commands found in stream
[2026-06-05 03:05:12,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:05:12,584.584 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 03:05:14,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:05:14,703.703 INFO    ] Checking for system updates...
[2026-06-05 03:05:14,740.740 INFO    ] 200
[2026-06-05 03:05:14,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:14,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:05:14,800.800 INFO    ] No update needed
[2026-06-05 03:05:14,803.803 INFO    ] Checking for camera pi updates...
[2026-06-05 03:05:14,837.837 INFO    ] 200
[2026-06-05 03:05:14,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:14,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:05:14,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:05:14,930.930 INFO    ] No camera update needed
[2026-06-05 03:05:14,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:05:14,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:05:14,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:05:14,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:05:16,987.987 INFO    ] ================================================
[2026-06-05 03:05:17,004.004 INFO    ] Launching Daemon at Fri Jun  5 03:05:16 IST 2026
[2026-06-05 03:05:17,015.015 INFO    ] ================================================
[2026-06-05 03:05:17,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:05:17
[2026-06-05 03:05:18,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:05:18,456.456 INFO    ] Initializing speech engine...
[2026-06-05 03:05:18,475.475 INFO    ] 2026-06-05 03:05:18
[2026-06-05 03:05:18,719.719 INFO    ] 2026-06-05 03:05:18
[2026-06-05 03:05:18,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:05:19,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:05:19,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:05:19,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:05:19,193.193 INFO    ] time= 05/06/2026 03:05:19
[2026-06-05 03:05:19,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:05:19,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:05:19,336.336 INFO    ] No existing commands found in stream
[2026-06-05 03:05:24,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:05:24,351.351 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 03:05:28,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:05:28,132.132 INFO    ] Checking for system updates...
[2026-06-05 03:05:28,169.169 INFO    ] 200
[2026-06-05 03:05:28,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:28,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:05:28,226.226 INFO    ] No update needed
[2026-06-05 03:05:28,229.229 INFO    ] Checking for camera pi updates...
[2026-06-05 03:05:28,263.263 INFO    ] 200
[2026-06-05 03:05:28,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:28,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:05:28,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:05:28,355.355 INFO    ] No camera update needed
[2026-06-05 03:05:28,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:05:28,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:05:28,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:05:28,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:05:30,413.413 INFO    ] ================================================
[2026-06-05 03:05:30,429.429 INFO    ] Launching Daemon at Fri Jun  5 03:05:30 IST 2026
[2026-06-05 03:05:30,440.440 INFO    ] ================================================
[2026-06-05 03:05:31,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:05:31
[2026-06-05 03:05:31,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:05:32,001.001 INFO    ] Initializing speech engine...
[2026-06-05 03:05:32,010.010 INFO    ] 2026-06-05 03:05:32
[2026-06-05 03:05:32,297.297 INFO    ] 2026-06-05 03:05:32
[2026-06-05 03:05:32,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:05:32,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:05:32,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:05:32,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:05:32,737.737 INFO    ] time= 05/06/2026 03:05:32
[2026-06-05 03:05:32,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:05:32,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:05:32,830.830 INFO    ] No existing commands found in stream
[2026-06-05 03:05:37,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:05:37,847.847 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 03:05:41,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:05:41,044.044 INFO    ] Checking for system updates...
[2026-06-05 03:05:41,080.080 INFO    ] 200
[2026-06-05 03:05:41,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:41,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:05:41,149.149 INFO    ] No update needed
[2026-06-05 03:05:41,151.151 INFO    ] Checking for camera pi updates...
[2026-06-05 03:05:41,190.190 INFO    ] 200
[2026-06-05 03:05:41,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:41,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:05:41,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:05:41,288.288 INFO    ] No camera update needed
[2026-06-05 03:05:41,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:05:41,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:05:41,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:05:41,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:05:43,347.347 INFO    ] ================================================
[2026-06-05 03:05:43,363.363 INFO    ] Launching Daemon at Fri Jun  5 03:05:43 IST 2026
[2026-06-05 03:05:43,375.375 INFO    ] ================================================
[2026-06-05 03:05:43,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:05:43
[2026-06-05 03:05:44,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:05:44,844.844 INFO    ] Initializing speech engine...
[2026-06-05 03:05:44,856.856 INFO    ] 2026-06-05 03:05:44
[2026-06-05 03:05:45,100.100 INFO    ] 2026-06-05 03:05:45
[2026-06-05 03:05:45,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:05:45,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:05:45,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:05:45,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:05:45,556.556 INFO    ] time= 05/06/2026 03:05:45
[2026-06-05 03:05:45,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:05:45,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:05:45,733.733 INFO    ] No existing commands found in stream
[2026-06-05 03:05:50,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:05:50,748.748 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 03:05:52,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:05:52,247.247 INFO    ] Checking for system updates...
[2026-06-05 03:05:52,283.283 INFO    ] 200
[2026-06-05 03:05:52,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:52,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:05:52,347.347 INFO    ] No update needed
[2026-06-05 03:05:52,350.350 INFO    ] Checking for camera pi updates...
[2026-06-05 03:05:52,384.384 INFO    ] 200
[2026-06-05 03:05:52,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:05:52,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:05:52,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:05:52,478.478 INFO    ] No camera update needed
[2026-06-05 03:05:52,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:05:52,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:05:52,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:05:52,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:05:54,533.533 INFO    ] ================================================
[2026-06-05 03:05:54,548.548 INFO    ] Launching Daemon at Fri Jun  5 03:05:54 IST 2026
[2026-06-05 03:05:54,559.559 INFO    ] ================================================
[2026-06-05 03:05:55,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:05:55
[2026-06-05 03:05:55,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:05:55,991.991 INFO    ] Initializing speech engine...
[2026-06-05 03:05:56,013.013 INFO    ] 2026-06-05 03:05:56
[2026-06-05 03:05:56,269.269 INFO    ] 2026-06-05 03:05:56
[2026-06-05 03:05:56,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:05:56,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:05:56,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:05:56,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:05:56,741.741 INFO    ] time= 05/06/2026 03:05:56
[2026-06-05 03:05:56,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:05:56,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:05:56,891.891 INFO    ] No existing commands found in stream
[2026-06-05 03:06:01,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:06:01,906.906 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 03:06:05,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:06:05,553.553 INFO    ] Checking for system updates...
[2026-06-05 03:06:05,589.589 INFO    ] 200
[2026-06-05 03:06:05,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:05,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:06:05,648.648 INFO    ] No update needed
[2026-06-05 03:06:05,651.651 INFO    ] Checking for camera pi updates...
[2026-06-05 03:06:05,685.685 INFO    ] 200
[2026-06-05 03:06:05,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:05,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:06:05,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:06:05,778.778 INFO    ] No camera update needed
[2026-06-05 03:06:05,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:06:05,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:06:05,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:06:05,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:06:07,843.843 INFO    ] ================================================
[2026-06-05 03:06:07,858.858 INFO    ] Launching Daemon at Fri Jun  5 03:06:07 IST 2026
[2026-06-05 03:06:07,869.869 INFO    ] ================================================
[2026-06-05 03:06:08,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:06:08
[2026-06-05 03:06:09,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:06:09,351.351 INFO    ] Initializing speech engine...
[2026-06-05 03:06:09,360.360 INFO    ] 2026-06-05 03:06:09
[2026-06-05 03:06:09,650.650 INFO    ] 2026-06-05 03:06:09
[2026-06-05 03:06:09,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:06:09,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:06:09,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:06:10,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:06:10,119.119 INFO    ] time= 05/06/2026 03:06:10
[2026-06-05 03:06:10,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:06:10,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:06:10,267.267 INFO    ] No existing commands found in stream
[2026-06-05 03:06:15,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:06:15,285.285 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 03:06:17,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:06:17,538.538 INFO    ] Checking for system updates...
[2026-06-05 03:06:17,580.580 INFO    ] 200
[2026-06-05 03:06:17,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:17,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:06:17,645.645 INFO    ] No update needed
[2026-06-05 03:06:17,648.648 INFO    ] Checking for camera pi updates...
[2026-06-05 03:06:17,686.686 INFO    ] 200
[2026-06-05 03:06:17,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:17,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:06:17,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:06:17,882.882 INFO    ] No camera update needed
[2026-06-05 03:06:17,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:06:17,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:06:17,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:06:17,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:06:19,936.936 INFO    ] ================================================
[2026-06-05 03:06:19,951.951 INFO    ] Launching Daemon at Fri Jun  5 03:06:19 IST 2026
[2026-06-05 03:06:19,961.961 INFO    ] ================================================
[2026-06-05 03:06:20,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:06:20
[2026-06-05 03:06:21,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:06:21,444.444 INFO    ] Initializing speech engine...
[2026-06-05 03:06:21,457.457 INFO    ] 2026-06-05 03:06:21
[2026-06-05 03:06:21,722.722 INFO    ] 2026-06-05 03:06:21
[2026-06-05 03:06:21,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:06:21,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:06:21,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:06:22,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:06:22,097.097 INFO    ] time= 05/06/2026 03:06:22
[2026-06-05 03:06:22,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:06:22,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:06:22,287.287 INFO    ] No existing commands found in stream
[2026-06-05 03:06:27,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:06:27,314.314 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 03:06:30,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:06:30,277.277 INFO    ] Checking for system updates...
[2026-06-05 03:06:30,317.317 INFO    ] 200
[2026-06-05 03:06:30,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:30,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:06:30,376.376 INFO    ] No update needed
[2026-06-05 03:06:30,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 03:06:30,416.416 INFO    ] 200
[2026-06-05 03:06:30,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:30,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:06:30,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:06:30,502.502 INFO    ] No camera update needed
[2026-06-05 03:06:30,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:06:30,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:06:30,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:06:30,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:06:32,560.560 INFO    ] ================================================
[2026-06-05 03:06:32,576.576 INFO    ] Launching Daemon at Fri Jun  5 03:06:32 IST 2026
[2026-06-05 03:06:32,587.587 INFO    ] ================================================
[2026-06-05 03:06:33,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:06:33
[2026-06-05 03:06:33,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:06:34,160.160 INFO    ] Initializing speech engine...
[2026-06-05 03:06:34,169.169 INFO    ] 2026-06-05 03:06:34
[2026-06-05 03:06:34,456.456 INFO    ] 2026-06-05 03:06:34
[2026-06-05 03:06:34,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:06:34,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:06:34,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:06:34,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:06:34,993.993 INFO    ] time= 05/06/2026 03:06:34
[2026-06-05 03:06:35,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:06:35,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:06:35,148.148 INFO    ] No existing commands found in stream
[2026-06-05 03:06:40,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:06:40,197.197 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 03:06:43,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:06:43,186.186 INFO    ] Checking for system updates...
[2026-06-05 03:06:43,223.223 INFO    ] 200
[2026-06-05 03:06:43,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:43,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:06:43,281.281 INFO    ] No update needed
[2026-06-05 03:06:43,283.283 INFO    ] Checking for camera pi updates...
[2026-06-05 03:06:43,321.321 INFO    ] 200
[2026-06-05 03:06:43,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:43,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:06:43,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:06:43,407.407 INFO    ] No camera update needed
[2026-06-05 03:06:43,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:06:43,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:06:43,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:06:43,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:06:45,462.462 INFO    ] ================================================
[2026-06-05 03:06:45,477.477 INFO    ] Launching Daemon at Fri Jun  5 03:06:45 IST 2026
[2026-06-05 03:06:45,488.488 INFO    ] ================================================
[2026-06-05 03:06:46,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:06:46
[2026-06-05 03:06:46,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:06:46,933.933 INFO    ] Initializing speech engine...
[2026-06-05 03:06:46,942.942 INFO    ] 2026-06-05 03:06:46
[2026-06-05 03:06:47,201.201 INFO    ] 2026-06-05 03:06:47
[2026-06-05 03:06:47,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:06:47,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:06:47,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:06:47,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:06:47,744.744 INFO    ] time= 05/06/2026 03:06:47
[2026-06-05 03:06:47,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:06:47,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:06:47,883.883 INFO    ] No existing commands found in stream
[2026-06-05 03:06:52,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:06:52,912.912 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 03:06:55,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:06:55,075.075 INFO    ] Checking for system updates...
[2026-06-05 03:06:55,111.111 INFO    ] 200
[2026-06-05 03:06:55,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:55,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:06:55,177.177 INFO    ] No update needed
[2026-06-05 03:06:55,179.179 INFO    ] Checking for camera pi updates...
[2026-06-05 03:06:55,218.218 INFO    ] 200
[2026-06-05 03:06:55,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:06:55,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:06:55,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:06:55,321.321 INFO    ] No camera update needed
[2026-06-05 03:06:55,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:06:55,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:06:55,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:06:55,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:06:57,379.379 INFO    ] ================================================
[2026-06-05 03:06:57,394.394 INFO    ] Launching Daemon at Fri Jun  5 03:06:57 IST 2026
[2026-06-05 03:06:57,405.405 INFO    ] ================================================
[2026-06-05 03:06:58,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:06:58
[2026-06-05 03:06:58,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:06:59,050.050 INFO    ] Initializing speech engine...
[2026-06-05 03:06:59,057.057 INFO    ] 2026-06-05 03:06:59
[2026-06-05 03:06:59,375.375 INFO    ] 2026-06-05 03:06:59
[2026-06-05 03:06:59,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:06:59,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:06:59,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:06:59,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:06:59,885.885 INFO    ] time= 05/06/2026 03:06:59
[2026-06-05 03:06:59,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:06:59,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:07:00,040.040 INFO    ] No existing commands found in stream
[2026-06-05 03:07:05,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:07:05,069.069 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 03:07:07,197.197 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:07:07,200.200 INFO    ] Checking for system updates...
[2026-06-05 03:07:07,238.238 INFO    ] 200
[2026-06-05 03:07:07,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:07,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:07:07,303.303 INFO    ] No update needed
[2026-06-05 03:07:07,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 03:07:07,340.340 INFO    ] 200
[2026-06-05 03:07:07,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:07,385.385 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:07:07,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:07:07,429.429 INFO    ] No camera update needed
[2026-06-05 03:07:07,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:07:07,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:07:07,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:07:07,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:07:09,486.486 INFO    ] ================================================
[2026-06-05 03:07:09,501.501 INFO    ] Launching Daemon at Fri Jun  5 03:07:09 IST 2026
[2026-06-05 03:07:09,512.512 INFO    ] ================================================
[2026-06-05 03:07:10,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:07:10
[2026-06-05 03:07:10,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:07:11,080.080 INFO    ] Initializing speech engine...
[2026-06-05 03:07:11,091.091 INFO    ] 2026-06-05 03:07:11
[2026-06-05 03:07:11,371.371 INFO    ] 2026-06-05 03:07:11
[2026-06-05 03:07:11,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:07:11,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:07:11,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:07:11,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:07:11,911.911 INFO    ] time= 05/06/2026 03:07:11
[2026-06-05 03:07:11,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:07:11,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:07:12,070.070 INFO    ] No existing commands found in stream
[2026-06-05 03:07:17,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:07:17,097.097 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 03:07:19,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:07:19,118.118 INFO    ] Checking for system updates...
[2026-06-05 03:07:19,154.154 INFO    ] 200
[2026-06-05 03:07:19,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:19,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:07:19,220.220 INFO    ] No update needed
[2026-06-05 03:07:19,222.222 INFO    ] Checking for camera pi updates...
[2026-06-05 03:07:19,255.255 INFO    ] 200
[2026-06-05 03:07:19,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:19,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:07:19,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:07:19,355.355 INFO    ] No camera update needed
[2026-06-05 03:07:19,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:07:19,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:07:19,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:07:19,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:07:21,410.410 INFO    ] ================================================
[2026-06-05 03:07:21,425.425 INFO    ] Launching Daemon at Fri Jun  5 03:07:21 IST 2026
[2026-06-05 03:07:21,436.436 INFO    ] ================================================
[2026-06-05 03:07:22,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:07:22
[2026-06-05 03:07:22,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:07:22,839.839 INFO    ] Initializing speech engine...
[2026-06-05 03:07:22,854.854 INFO    ] 2026-06-05 03:07:22
[2026-06-05 03:07:23,120.120 INFO    ] 2026-06-05 03:07:23
[2026-06-05 03:07:23,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:07:23,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:07:23,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:07:23,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:07:23,540.540 INFO    ] time= 05/06/2026 03:07:23
[2026-06-05 03:07:23,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:07:23,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:07:23,692.692 INFO    ] No existing commands found in stream
[2026-06-05 03:07:28,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:07:28,712.712 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 03:07:29,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:07:29,637.637 INFO    ] Checking for system updates...
[2026-06-05 03:07:29,677.677 INFO    ] 200
[2026-06-05 03:07:29,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:29,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:07:29,743.743 INFO    ] No update needed
[2026-06-05 03:07:29,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 03:07:29,783.783 INFO    ] 200
[2026-06-05 03:07:29,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:29,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:07:29,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:07:29,875.875 INFO    ] No camera update needed
[2026-06-05 03:07:29,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:07:29,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:07:29,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:07:29,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:07:31,934.934 INFO    ] ================================================
[2026-06-05 03:07:31,949.949 INFO    ] Launching Daemon at Fri Jun  5 03:07:31 IST 2026
[2026-06-05 03:07:31,960.960 INFO    ] ================================================
[2026-06-05 03:07:32,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:07:32
[2026-06-05 03:07:33,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:07:33,493.493 INFO    ] Initializing speech engine...
[2026-06-05 03:07:33,502.502 INFO    ] 2026-06-05 03:07:33
[2026-06-05 03:07:33,797.797 INFO    ] 2026-06-05 03:07:33
[2026-06-05 03:07:33,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:07:34,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:07:34,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:07:34,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:07:34,215.215 INFO    ] time= 05/06/2026 03:07:34
[2026-06-05 03:07:34,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:07:34,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:07:34,329.329 INFO    ] No existing commands found in stream
[2026-06-05 03:07:39,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:07:39,342.342 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 03:07:43,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:07:43,415.415 INFO    ] Checking for system updates...
[2026-06-05 03:07:43,456.456 INFO    ] 200
[2026-06-05 03:07:43,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:43,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:07:43,520.520 INFO    ] No update needed
[2026-06-05 03:07:43,523.523 INFO    ] Checking for camera pi updates...
[2026-06-05 03:07:43,560.560 INFO    ] 200
[2026-06-05 03:07:43,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:43,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:07:43,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:07:43,655.655 INFO    ] No camera update needed
[2026-06-05 03:07:43,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:07:43,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:07:43,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:07:43,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:07:45,709.709 INFO    ] ================================================
[2026-06-05 03:07:45,724.724 INFO    ] Launching Daemon at Fri Jun  5 03:07:45 IST 2026
[2026-06-05 03:07:45,735.735 INFO    ] ================================================
[2026-06-05 03:07:46,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:07:46
[2026-06-05 03:07:47,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:07:47,307.307 INFO    ] Initializing speech engine...
[2026-06-05 03:07:47,312.312 INFO    ] 2026-06-05 03:07:47
[2026-06-05 03:07:47,573.573 INFO    ] 2026-06-05 03:07:47
[2026-06-05 03:07:47,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:07:47,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:07:47,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:07:48,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:07:48,023.023 INFO    ] time= 05/06/2026 03:07:48
[2026-06-05 03:07:48,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:07:48,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:07:48,209.209 INFO    ] No existing commands found in stream
[2026-06-05 03:07:53,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:07:53,220.220 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 03:07:54,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:07:54,088.088 INFO    ] Checking for system updates...
[2026-06-05 03:07:54,124.124 INFO    ] 200
[2026-06-05 03:07:54,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:54,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:07:54,183.183 INFO    ] No update needed
[2026-06-05 03:07:54,185.185 INFO    ] Checking for camera pi updates...
[2026-06-05 03:07:54,223.223 INFO    ] 200
[2026-06-05 03:07:54,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:07:54,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:07:54,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:07:54,313.313 INFO    ] No camera update needed
[2026-06-05 03:07:54,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:07:54,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:07:54,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:07:54,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:07:56,370.370 INFO    ] ================================================
[2026-06-05 03:07:56,388.388 INFO    ] Launching Daemon at Fri Jun  5 03:07:56 IST 2026
[2026-06-05 03:07:56,399.399 INFO    ] ================================================
[2026-06-05 03:07:56,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:07:56
[2026-06-05 03:07:57,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:07:57,865.865 INFO    ] Initializing speech engine...
[2026-06-05 03:07:57,879.879 INFO    ] 2026-06-05 03:07:57
[2026-06-05 03:07:58,146.146 INFO    ] 2026-06-05 03:07:58
[2026-06-05 03:07:58,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:07:58,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:07:58,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:07:58,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:07:58,525.525 INFO    ] time= 05/06/2026 03:07:58
[2026-06-05 03:07:58,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:07:58,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:07:58,649.649 INFO    ] No existing commands found in stream
[2026-06-05 03:08:03,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:08:03,662.662 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 03:08:07,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:08:07,571.571 INFO    ] Checking for system updates...
[2026-06-05 03:08:07,611.611 INFO    ] 200
[2026-06-05 03:08:07,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:08:07,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:08:07,676.676 INFO    ] No update needed
[2026-06-05 03:08:07,679.679 INFO    ] Checking for camera pi updates...
[2026-06-05 03:08:07,716.716 INFO    ] 200
[2026-06-05 03:08:07,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:08:07,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:08:07,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:08:07,809.809 INFO    ] No camera update needed
[2026-06-05 03:08:07,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:08:07,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:08:07,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:08:07,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:08:09,864.864 INFO    ] ================================================
[2026-06-05 03:08:09,879.879 INFO    ] Launching Daemon at Fri Jun  5 03:08:09 IST 2026
[2026-06-05 03:08:09,891.891 INFO    ] ================================================
[2026-06-05 03:08:10,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:08:10
[2026-06-05 03:08:11,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:08:11,315.315 INFO    ] Initializing speech engine...
[2026-06-05 03:08:11,324.324 INFO    ] 2026-06-05 03:08:11
[2026-06-05 03:08:11,570.570 INFO    ] 2026-06-05 03:08:11
[2026-06-05 03:08:11,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:08:11,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:08:11,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:08:12,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:08:12,033.033 INFO    ] time= 05/06/2026 03:08:12
[2026-06-05 03:08:12,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:08:12,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:08:12,198.198 INFO    ] No existing commands found in stream
[2026-06-05 03:08:17,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:08:17,213.213 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 03:08:19,709.709 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:08:19,712.712 INFO    ] Checking for system updates...
[2026-06-05 03:08:19,751.751 INFO    ] 200
[2026-06-05 03:08:19,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:08:19,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:08:19,815.815 INFO    ] No update needed
[2026-06-05 03:08:19,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 03:08:19,854.854 INFO    ] 200
[2026-06-05 03:08:19,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:08:19,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:08:20,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:08:20,038.038 INFO    ] No camera update needed
[2026-06-05 03:08:20,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:08:20,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:08:20,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:08:20,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:08:22,096.096 INFO    ] ================================================
[2026-06-05 03:08:22,111.111 INFO    ] Launching Daemon at Fri Jun  5 03:08:22 IST 2026
[2026-06-05 03:08:22,122.122 INFO    ] ================================================
[2026-06-05 03:08:22,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:08:22
[2026-06-05 03:08:23,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:08:23,744.744 INFO    ] Initializing speech engine...
[2026-06-05 03:08:23,752.752 INFO    ] 2026-06-05 03:08:23
[2026-06-05 03:08:24,055.055 INFO    ] 2026-06-05 03:08:24
[2026-06-05 03:08:24,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:08:24,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:08:24,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:08:24,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:08:24,563.563 INFO    ] time= 05/06/2026 03:08:24
[2026-06-05 03:08:24,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:08:24,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:08:24,716.716 INFO    ] No existing commands found in stream
[2026-06-05 03:08:29,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:08:29,735.735 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 03:08:33,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:08:33,856.856 INFO    ] Checking for system updates...
[2026-06-05 03:08:33,893.893 INFO    ] 200
[2026-06-05 03:08:33,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:08:33,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:08:33,959.959 INFO    ] No update needed
[2026-06-05 03:08:33,962.962 INFO    ] Checking for camera pi updates...
[2026-06-05 03:08:33,996.996 INFO    ] 200
[2026-06-05 03:08:33,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:08:34,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:08:34,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:08:34,094.094 INFO    ] No camera update needed
[2026-06-05 03:08:34,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:08:34,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:08:34,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:08:34,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:08:36,154.154 INFO    ] ================================================
[2026-06-05 03:08:36,170.170 INFO    ] Launching Daemon at Fri Jun  5 03:08:36 IST 2026
[2026-06-05 03:08:36,181.181 INFO    ] ================================================
[2026-06-05 03:08:36,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:08:36
[2026-06-05 03:08:37,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:08:37,794.794 INFO    ] Initializing speech engine...
[2026-06-05 03:08:37,808.808 INFO    ] 2026-06-05 03:08:37
[2026-06-05 03:08:38,119.119 INFO    ] 2026-06-05 03:08:38
[2026-06-05 03:08:38,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:08:38,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:08:38,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:08:38,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:08:38,619.619 INFO    ] time= 05/06/2026 03:08:38
[2026-06-05 03:08:38,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:08:38,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:08:38,760.760 INFO    ] No existing commands found in stream
[2026-06-05 03:08:43,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:08:43,789.789 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 03:08:46,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:08:46,228.228 INFO    ] Checking for system updates...
[2026-06-05 03:08:46,281.281 INFO    ] 200
[2026-06-05 03:08:46,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:08:46,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:08:46,350.350 INFO    ] No update needed
[2026-06-05 03:08:46,353.353 INFO    ] Checking for camera pi updates...
[2026-06-05 03:08:46,391.391 INFO    ] 200
[2026-06-05 03:08:46,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:08:46,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:08:46,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:08:46,497.497 INFO    ] No camera update needed
[2026-06-05 03:08:46,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:08:46,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:08:46,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:08:46,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:08:48,556.556 INFO    ] ================================================
[2026-06-05 03:08:48,571.571 INFO    ] Launching Daemon at Fri Jun  5 03:08:48 IST 2026
[2026-06-05 03:08:48,582.582 INFO    ] ================================================
[2026-06-05 03:08:49,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:08:49
[2026-06-05 03:08:49,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:08:50,191.191 INFO    ] Initializing speech engine...
[2026-06-05 03:08:50,199.199 INFO    ] 2026-06-05 03:08:50
[2026-06-05 03:08:50,481.481 INFO    ] 2026-06-05 03:08:50
[2026-06-05 03:08:50,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:08:50,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:08:50,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:08:50,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:08:50,947.947 INFO    ] time= 05/06/2026 03:08:50
[2026-06-05 03:08:51,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:08:51,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:08:51,085.085 INFO    ] No existing commands found in stream
[2026-06-05 03:08:56,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:08:56,100.100 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 03:09:00,137.137 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:09:00,141.141 INFO    ] Checking for system updates...
[2026-06-05 03:09:00,178.178 INFO    ] 200
[2026-06-05 03:09:00,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:00,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:09:00,238.238 INFO    ] No update needed
[2026-06-05 03:09:00,241.241 INFO    ] Checking for camera pi updates...
[2026-06-05 03:09:00,276.276 INFO    ] 200
[2026-06-05 03:09:00,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:00,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:09:00,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:09:00,370.370 INFO    ] No camera update needed
[2026-06-05 03:09:00,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:09:00,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:09:00,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:09:00,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:09:02,432.432 INFO    ] ================================================
[2026-06-05 03:09:02,450.450 INFO    ] Launching Daemon at Fri Jun  5 03:09:02 IST 2026
[2026-06-05 03:09:02,462.462 INFO    ] ================================================
[2026-06-05 03:09:03,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:09:03
[2026-06-05 03:09:03,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:09:03,985.985 INFO    ] Initializing speech engine...
[2026-06-05 03:09:03,997.997 INFO    ] 2026-06-05 03:09:03
[2026-06-05 03:09:04,265.265 INFO    ] 2026-06-05 03:09:04
[2026-06-05 03:09:04,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:09:04,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:09:04,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:09:04,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:09:04,646.646 INFO    ] time= 05/06/2026 03:09:04
[2026-06-05 03:09:04,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:09:04,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:09:04,832.832 INFO    ] No existing commands found in stream
[2026-06-05 03:09:09,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:09:09,862.862 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 03:09:12,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:09:12,509.509 INFO    ] Checking for system updates...
[2026-06-05 03:09:12,551.551 INFO    ] 200
[2026-06-05 03:09:12,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:12,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:09:12,622.622 INFO    ] No update needed
[2026-06-05 03:09:12,625.625 INFO    ] Checking for camera pi updates...
[2026-06-05 03:09:12,664.664 INFO    ] 200
[2026-06-05 03:09:12,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:12,716.716 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:09:12,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:09:12,772.772 INFO    ] No camera update needed
[2026-06-05 03:09:12,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:09:12,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:09:12,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:09:12,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:09:14,833.833 INFO    ] ================================================
[2026-06-05 03:09:14,848.848 INFO    ] Launching Daemon at Fri Jun  5 03:09:14 IST 2026
[2026-06-05 03:09:14,860.860 INFO    ] ================================================
[2026-06-05 03:09:15,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:09:15
[2026-06-05 03:09:16,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:09:16,328.328 INFO    ] Initializing speech engine...
[2026-06-05 03:09:16,335.335 INFO    ] 2026-06-05 03:09:16
[2026-06-05 03:09:16,615.615 INFO    ] 2026-06-05 03:09:16
[2026-06-05 03:09:16,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:09:16,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:09:16,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:09:17,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:09:17,093.093 INFO    ] time= 05/06/2026 03:09:17
[2026-06-05 03:09:17,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:09:17,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:09:17,229.229 INFO    ] No existing commands found in stream
[2026-06-05 03:09:22,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:09:22,244.244 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 03:09:25,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:09:25,826.826 INFO    ] Checking for system updates...
[2026-06-05 03:09:25,863.863 INFO    ] 200
[2026-06-05 03:09:25,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:25,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:09:25,930.930 INFO    ] No update needed
[2026-06-05 03:09:25,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 03:09:25,967.967 INFO    ] 200
[2026-06-05 03:09:25,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:26,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:09:26,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:09:26,062.062 INFO    ] No camera update needed
[2026-06-05 03:09:26,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:09:26,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:09:26,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:09:26,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:09:28,116.116 INFO    ] ================================================
[2026-06-05 03:09:28,131.131 INFO    ] Launching Daemon at Fri Jun  5 03:09:28 IST 2026
[2026-06-05 03:09:28,142.142 INFO    ] ================================================
[2026-06-05 03:09:28,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:09:28
[2026-06-05 03:09:29,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:09:29,593.593 INFO    ] Initializing speech engine...
[2026-06-05 03:09:29,599.599 INFO    ] 2026-06-05 03:09:29
[2026-06-05 03:09:29,899.899 INFO    ] 2026-06-05 03:09:29
[2026-06-05 03:09:29,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:09:30,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:09:30,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:09:30,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:09:30,329.329 INFO    ] time= 05/06/2026 03:09:30
[2026-06-05 03:09:30,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:09:30,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:09:30,414.414 INFO    ] No existing commands found in stream
[2026-06-05 03:09:35,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:09:35,429.429 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 03:09:38,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:09:38,022.022 INFO    ] Checking for system updates...
[2026-06-05 03:09:38,058.058 INFO    ] 200
[2026-06-05 03:09:38,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:38,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:09:38,116.116 INFO    ] No update needed
[2026-06-05 03:09:38,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 03:09:38,152.152 INFO    ] 200
[2026-06-05 03:09:38,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:38,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:09:38,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:09:38,249.249 INFO    ] No camera update needed
[2026-06-05 03:09:38,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:09:38,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:09:38,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:09:38,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:09:40,305.305 INFO    ] ================================================
[2026-06-05 03:09:40,320.320 INFO    ] Launching Daemon at Fri Jun  5 03:09:40 IST 2026
[2026-06-05 03:09:40,331.331 INFO    ] ================================================
[2026-06-05 03:09:40,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:09:40
[2026-06-05 03:09:41,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:09:41,775.775 INFO    ] Initializing speech engine...
[2026-06-05 03:09:41,782.782 INFO    ] 2026-06-05 03:09:41
[2026-06-05 03:09:42,087.087 INFO    ] 2026-06-05 03:09:42
[2026-06-05 03:09:42,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:09:42,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:09:42,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:09:42,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:09:42,472.472 INFO    ] time= 05/06/2026 03:09:42
[2026-06-05 03:09:42,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:09:42,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:09:42,599.599 INFO    ] No existing commands found in stream
[2026-06-05 03:09:47,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:09:47,613.613 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 03:09:50,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:09:50,726.726 INFO    ] Checking for system updates...
[2026-06-05 03:09:50,764.764 INFO    ] 200
[2026-06-05 03:09:50,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:50,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:09:50,831.831 INFO    ] No update needed
[2026-06-05 03:09:50,833.833 INFO    ] Checking for camera pi updates...
[2026-06-05 03:09:50,867.867 INFO    ] 200
[2026-06-05 03:09:50,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:09:50,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:09:50,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:09:50,956.956 INFO    ] No camera update needed
[2026-06-05 03:09:50,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:09:50,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:09:50,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:09:50,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:09:53,010.010 INFO    ] ================================================
[2026-06-05 03:09:53,026.026 INFO    ] Launching Daemon at Fri Jun  5 03:09:53 IST 2026
[2026-06-05 03:09:53,036.036 INFO    ] ================================================
[2026-06-05 03:09:53,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:09:53
[2026-06-05 03:09:54,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:09:54,461.461 INFO    ] Initializing speech engine...
[2026-06-05 03:09:54,468.468 INFO    ] 2026-06-05 03:09:54
[2026-06-05 03:09:54,726.726 INFO    ] 2026-06-05 03:09:54
[2026-06-05 03:09:54,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:09:55,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:09:55,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:09:55,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:09:55,179.179 INFO    ] time= 05/06/2026 03:09:55
[2026-06-05 03:09:55,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:09:55,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:09:55,376.376 INFO    ] No existing commands found in stream
[2026-06-05 03:10:00,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:10:00,411.411 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 03:10:07,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:10:07,946.946 INFO    ] Checking for system updates...
[2026-06-05 03:10:07,986.986 INFO    ] 200
[2026-06-05 03:10:07,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:10:08,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:10:08,046.046 INFO    ] No update needed
[2026-06-05 03:10:08,049.049 INFO    ] Checking for camera pi updates...
[2026-06-05 03:10:08,084.084 INFO    ] 200
[2026-06-05 03:10:08,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:10:08,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:10:08,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:10:08,185.185 INFO    ] No camera update needed
[2026-06-05 03:10:08,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:10:08,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:10:08,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:10:08,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:10:10,245.245 INFO    ] ================================================
[2026-06-05 03:10:10,260.260 INFO    ] Launching Daemon at Fri Jun  5 03:10:10 IST 2026
[2026-06-05 03:10:10,271.271 INFO    ] ================================================
[2026-06-05 03:10:10,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:10:10
[2026-06-05 03:10:11,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:10:11,719.719 INFO    ] Initializing speech engine...
[2026-06-05 03:10:11,728.728 INFO    ] 2026-06-05 03:10:11
[2026-06-05 03:10:12,031.031 INFO    ] 2026-06-05 03:10:11
[2026-06-05 03:10:12,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:10:12,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:10:12,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:10:12,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:10:12,441.441 INFO    ] time= 05/06/2026 03:10:12
[2026-06-05 03:10:12,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:10:12,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:10:12,627.627 INFO    ] No existing commands found in stream
[2026-06-05 03:10:17,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:10:17,658.658 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 03:10:21,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:10:21,883.883 INFO    ] Checking for system updates...
[2026-06-05 03:10:21,920.920 INFO    ] 200
[2026-06-05 03:10:21,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:10:21,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:10:21,984.984 INFO    ] No update needed
[2026-06-05 03:10:21,987.987 INFO    ] Checking for camera pi updates...
[2026-06-05 03:10:22,026.026 INFO    ] 200
[2026-06-05 03:10:22,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:10:22,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:10:22,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:10:22,230.230 INFO    ] No camera update needed
[2026-06-05 03:10:22,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:10:22,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:10:22,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:10:22,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:10:24,290.290 INFO    ] ================================================
[2026-06-05 03:10:24,306.306 INFO    ] Launching Daemon at Fri Jun  5 03:10:24 IST 2026
[2026-06-05 03:10:24,318.318 INFO    ] ================================================
[2026-06-05 03:10:24,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:10:24
[2026-06-05 03:10:25,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:10:25,880.880 INFO    ] Initializing speech engine...
[2026-06-05 03:10:25,890.890 INFO    ] 2026-06-05 03:10:25
[2026-06-05 03:10:26,138.138 INFO    ] 2026-06-05 03:10:26
[2026-06-05 03:10:26,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:10:26,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:10:26,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:10:26,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:10:26,607.607 INFO    ] time= 05/06/2026 03:10:26
[2026-06-05 03:10:26,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:10:26,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:10:26,765.765 INFO    ] No existing commands found in stream
[2026-06-05 03:10:31,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:10:31,793.793 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 03:10:34,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:10:34,274.274 INFO    ] Checking for system updates...
[2026-06-05 03:10:34,310.310 INFO    ] 200
[2026-06-05 03:10:34,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:10:34,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:10:34,373.373 INFO    ] No update needed
[2026-06-05 03:10:34,376.376 INFO    ] Checking for camera pi updates...
[2026-06-05 03:10:34,410.410 INFO    ] 200
[2026-06-05 03:10:34,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:10:34,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:10:34,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:10:34,488.488 INFO    ] No camera update needed
[2026-06-05 03:10:34,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:10:34,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:10:34,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:10:34,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:10:36,546.546 INFO    ] ================================================
[2026-06-05 03:10:36,561.561 INFO    ] Launching Daemon at Fri Jun  5 03:10:36 IST 2026
[2026-06-05 03:10:36,572.572 INFO    ] ================================================
[2026-06-05 03:10:37,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:10:37
[2026-06-05 03:10:37,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:10:38,183.183 INFO    ] Initializing speech engine...
[2026-06-05 03:10:38,190.190 INFO    ] 2026-06-05 03:10:38
[2026-06-05 03:10:38,466.466 INFO    ] 2026-06-05 03:10:38
[2026-06-05 03:10:38,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:10:38,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:10:38,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:10:38,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:10:38,857.857 INFO    ] time= 05/06/2026 03:10:38
[2026-06-05 03:10:38,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:10:38,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:10:38,969.969 INFO    ] No existing commands found in stream
[2026-06-05 03:10:43,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:10:43,984.984 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 03:10:46,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:10:46,145.145 INFO    ] Checking for system updates...
[2026-06-05 03:10:46,184.184 INFO    ] 200
[2026-06-05 03:10:46,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:10:46,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:10:46,247.247 INFO    ] No update needed
[2026-06-05 03:10:46,250.250 INFO    ] Checking for camera pi updates...
[2026-06-05 03:10:46,284.284 INFO    ] 200
[2026-06-05 03:10:46,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:10:46,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:10:46,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:10:46,376.376 INFO    ] No camera update needed
[2026-06-05 03:10:46,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:10:46,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:10:46,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:10:46,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:10:48,431.431 INFO    ] ================================================
[2026-06-05 03:10:48,446.446 INFO    ] Launching Daemon at Fri Jun  5 03:10:48 IST 2026
[2026-06-05 03:10:48,457.457 INFO    ] ================================================
[2026-06-05 03:10:49,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:10:49
[2026-06-05 03:10:49,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:10:49,921.921 INFO    ] Initializing speech engine...
[2026-06-05 03:10:49,927.927 INFO    ] 2026-06-05 03:10:49
[2026-06-05 03:10:50,190.190 INFO    ] 2026-06-05 03:10:50
[2026-06-05 03:10:50,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:10:50,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:10:50,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:10:50,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:10:50,648.648 INFO    ] time= 05/06/2026 03:10:50
[2026-06-05 03:10:50,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:10:50,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:10:50,822.822 INFO    ] No existing commands found in stream
[2026-06-05 03:10:55,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:10:55,838.838 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 03:11:00,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:11:00,093.093 INFO    ] Checking for system updates...
[2026-06-05 03:11:00,128.128 INFO    ] 200
[2026-06-05 03:11:00,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:00,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:11:00,185.185 INFO    ] No update needed
[2026-06-05 03:11:00,188.188 INFO    ] Checking for camera pi updates...
[2026-06-05 03:11:00,221.221 INFO    ] 200
[2026-06-05 03:11:00,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:00,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:11:00,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:11:00,311.311 INFO    ] No camera update needed
[2026-06-05 03:11:00,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:11:00,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:11:00,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:11:00,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:11:02,368.368 INFO    ] ================================================
[2026-06-05 03:11:02,388.388 INFO    ] Launching Daemon at Fri Jun  5 03:11:02 IST 2026
[2026-06-05 03:11:02,404.404 INFO    ] ================================================
[2026-06-05 03:11:03,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:11:03
[2026-06-05 03:11:03,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:11:03,957.957 INFO    ] Initializing speech engine...
[2026-06-05 03:11:03,972.972 INFO    ] 2026-06-05 03:11:03
[2026-06-05 03:11:04,255.255 INFO    ] 2026-06-05 03:11:04
[2026-06-05 03:11:04,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:11:04,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:11:04,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:11:04,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:11:04,623.623 INFO    ] time= 05/06/2026 03:11:04
[2026-06-05 03:11:04,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:11:04,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:11:04,688.688 INFO    ] No existing commands found in stream
[2026-06-05 03:11:09,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:11:09,731.731 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 03:11:13,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:11:13,184.184 INFO    ] Checking for system updates...
[2026-06-05 03:11:13,223.223 INFO    ] 200
[2026-06-05 03:11:13,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:13,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:11:13,291.291 INFO    ] No update needed
[2026-06-05 03:11:13,294.294 INFO    ] Checking for camera pi updates...
[2026-06-05 03:11:13,328.328 INFO    ] 200
[2026-06-05 03:11:13,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:13,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:11:13,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:11:13,415.415 INFO    ] No camera update needed
[2026-06-05 03:11:13,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:11:13,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:11:13,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:11:13,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:11:15,470.470 INFO    ] ================================================
[2026-06-05 03:11:15,485.485 INFO    ] Launching Daemon at Fri Jun  5 03:11:15 IST 2026
[2026-06-05 03:11:15,496.496 INFO    ] ================================================
[2026-06-05 03:11:16,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:11:16
[2026-06-05 03:11:16,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:11:16,903.903 INFO    ] Initializing speech engine...
[2026-06-05 03:11:16,909.909 INFO    ] 2026-06-05 03:11:16
[2026-06-05 03:11:17,207.207 INFO    ] 2026-06-05 03:11:17
[2026-06-05 03:11:17,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:11:17,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:11:17,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:11:17,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:11:17,584.584 INFO    ] time= 05/06/2026 03:11:17
[2026-06-05 03:11:17,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:11:17,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:11:17,708.708 INFO    ] No existing commands found in stream
[2026-06-05 03:11:22,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:11:22,722.722 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 03:11:26,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:11:26,676.676 INFO    ] Checking for system updates...
[2026-06-05 03:11:26,712.712 INFO    ] 200
[2026-06-05 03:11:26,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:26,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:11:26,769.769 INFO    ] No update needed
[2026-06-05 03:11:26,772.772 INFO    ] Checking for camera pi updates...
[2026-06-05 03:11:26,805.805 INFO    ] 200
[2026-06-05 03:11:26,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:26,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:11:26,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:11:26,900.900 INFO    ] No camera update needed
[2026-06-05 03:11:26,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:11:26,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:11:26,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:11:26,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:11:28,955.955 INFO    ] ================================================
[2026-06-05 03:11:28,971.971 INFO    ] Launching Daemon at Fri Jun  5 03:11:28 IST 2026
[2026-06-05 03:11:28,981.981 INFO    ] ================================================
[2026-06-05 03:11:29,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:11:29
[2026-06-05 03:11:30,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:11:30,587.587 INFO    ] Initializing speech engine...
[2026-06-05 03:11:30,593.593 INFO    ] 2026-06-05 03:11:30
[2026-06-05 03:11:30,910.910 INFO    ] 2026-06-05 03:11:30
[2026-06-05 03:11:30,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:11:31,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:11:31,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:11:31,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:11:31,356.356 INFO    ] time= 05/06/2026 03:11:31
[2026-06-05 03:11:31,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:11:31,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:11:31,558.558 INFO    ] No existing commands found in stream
[2026-06-05 03:11:36,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:11:36,584.584 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 03:11:37,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:11:37,059.059 INFO    ] Checking for system updates...
[2026-06-05 03:11:37,096.096 INFO    ] 200
[2026-06-05 03:11:37,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:37,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:11:37,157.157 INFO    ] No update needed
[2026-06-05 03:11:37,160.160 INFO    ] Checking for camera pi updates...
[2026-06-05 03:11:37,198.198 INFO    ] 200
[2026-06-05 03:11:37,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:37,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:11:37,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:11:37,293.293 INFO    ] No camera update needed
[2026-06-05 03:11:37,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:11:37,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:11:37,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:11:37,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:11:39,355.355 INFO    ] ================================================
[2026-06-05 03:11:39,370.370 INFO    ] Launching Daemon at Fri Jun  5 03:11:39 IST 2026
[2026-06-05 03:11:39,381.381 INFO    ] ================================================
[2026-06-05 03:11:39,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:11:39
[2026-06-05 03:11:40,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:11:40,803.803 INFO    ] Initializing speech engine...
[2026-06-05 03:11:40,812.812 INFO    ] 2026-06-05 03:11:40
[2026-06-05 03:11:41,059.059 INFO    ] 2026-06-05 03:11:41
[2026-06-05 03:11:41,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:11:41,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:11:41,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:11:41,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:11:41,428.428 INFO    ] time= 05/06/2026 03:11:41
[2026-06-05 03:11:41,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:11:41,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:11:41,604.604 INFO    ] No existing commands found in stream
[2026-06-05 03:11:46,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:11:46,630.630 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 03:11:50,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:11:50,230.230 INFO    ] Checking for system updates...
[2026-06-05 03:11:50,267.267 INFO    ] 200
[2026-06-05 03:11:50,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:50,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:11:50,331.331 INFO    ] No update needed
[2026-06-05 03:11:50,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 03:11:50,370.370 INFO    ] 200
[2026-06-05 03:11:50,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:11:50,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:11:50,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:11:50,468.468 INFO    ] No camera update needed
[2026-06-05 03:11:50,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:11:50,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:11:50,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:11:50,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:11:52,525.525 INFO    ] ================================================
[2026-06-05 03:11:52,540.540 INFO    ] Launching Daemon at Fri Jun  5 03:11:52 IST 2026
[2026-06-05 03:11:52,551.551 INFO    ] ================================================
[2026-06-05 03:11:53,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:11:53
[2026-06-05 03:11:53,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:11:53,948.948 INFO    ] Initializing speech engine...
[2026-06-05 03:11:53,963.963 INFO    ] 2026-06-05 03:11:53
[2026-06-05 03:11:54,236.236 INFO    ] 2026-06-05 03:11:54
[2026-06-05 03:11:54,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:11:54,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:11:54,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:11:54,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:11:54,622.622 INFO    ] time= 05/06/2026 03:11:54
[2026-06-05 03:11:54,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:11:54,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:11:54,776.776 INFO    ] No existing commands found in stream
[2026-06-05 03:11:59,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:11:59,809.809 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 03:12:03,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:12:03,982.982 INFO    ] Checking for system updates...
[2026-06-05 03:12:04,018.018 INFO    ] 200
[2026-06-05 03:12:04,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:04,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:12:04,077.077 INFO    ] No update needed
[2026-06-05 03:12:04,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 03:12:04,116.116 INFO    ] 200
[2026-06-05 03:12:04,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:04,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:12:04,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:12:04,190.190 INFO    ] No camera update needed
[2026-06-05 03:12:04,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:12:04,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:12:04,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:12:04,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:12:06,244.244 INFO    ] ================================================
[2026-06-05 03:12:06,260.260 INFO    ] Launching Daemon at Fri Jun  5 03:12:06 IST 2026
[2026-06-05 03:12:06,271.271 INFO    ] ================================================
[2026-06-05 03:12:06,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:12:06
[2026-06-05 03:12:07,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:12:07,911.911 INFO    ] Initializing speech engine...
[2026-06-05 03:12:07,916.916 INFO    ] 2026-06-05 03:12:07
[2026-06-05 03:12:08,205.205 INFO    ] 2026-06-05 03:12:08
[2026-06-05 03:12:08,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:12:08,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:12:08,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:12:08,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:12:08,679.679 INFO    ] time= 05/06/2026 03:12:08
[2026-06-05 03:12:08,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:12:08,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:12:08,896.896 INFO    ] No existing commands found in stream
[2026-06-05 03:12:13,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:12:13,919.919 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 03:12:16,318.318 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:12:16,321.321 INFO    ] Checking for system updates...
[2026-06-05 03:12:16,359.359 INFO    ] 200
[2026-06-05 03:12:16,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:16,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:12:16,425.425 INFO    ] No update needed
[2026-06-05 03:12:16,427.427 INFO    ] Checking for camera pi updates...
[2026-06-05 03:12:16,462.462 INFO    ] 200
[2026-06-05 03:12:16,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:16,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:12:16,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:12:16,556.556 INFO    ] No camera update needed
[2026-06-05 03:12:16,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:12:16,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:12:16,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:12:16,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:12:18,614.614 INFO    ] ================================================
[2026-06-05 03:12:18,630.630 INFO    ] Launching Daemon at Fri Jun  5 03:12:18 IST 2026
[2026-06-05 03:12:18,641.641 INFO    ] ================================================
[2026-06-05 03:12:19,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:12:19
[2026-06-05 03:12:19,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:12:20,068.068 INFO    ] Initializing speech engine...
[2026-06-05 03:12:20,077.077 INFO    ] 2026-06-05 03:12:20
[2026-06-05 03:12:20,334.334 INFO    ] 2026-06-05 03:12:20
[2026-06-05 03:12:20,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:12:20,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:12:20,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:12:20,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:12:20,825.825 INFO    ] time= 05/06/2026 03:12:20
[2026-06-05 03:12:20,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:12:20,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:12:21,050.050 INFO    ] No existing commands found in stream
[2026-06-05 03:12:26,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:12:26,067.067 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 03:12:29,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:12:29,556.556 INFO    ] Checking for system updates...
[2026-06-05 03:12:29,598.598 INFO    ] 200
[2026-06-05 03:12:29,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:29,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:12:29,663.663 INFO    ] No update needed
[2026-06-05 03:12:29,665.665 INFO    ] Checking for camera pi updates...
[2026-06-05 03:12:29,701.701 INFO    ] 200
[2026-06-05 03:12:29,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:29,745.745 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:12:29,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:12:29,892.892 INFO    ] No camera update needed
[2026-06-05 03:12:29,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:12:29,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:12:29,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:12:29,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:12:31,949.949 INFO    ] ================================================
[2026-06-05 03:12:31,965.965 INFO    ] Launching Daemon at Fri Jun  5 03:12:31 IST 2026
[2026-06-05 03:12:31,977.977 INFO    ] ================================================
[2026-06-05 03:12:32,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:12:32
[2026-06-05 03:12:33,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:12:33,553.553 INFO    ] Initializing speech engine...
[2026-06-05 03:12:33,562.562 INFO    ] 2026-06-05 03:12:33
[2026-06-05 03:12:33,848.848 INFO    ] 2026-06-05 03:12:33
[2026-06-05 03:12:33,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:12:34,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:12:34,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:12:34,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:12:34,319.319 INFO    ] time= 05/06/2026 03:12:34
[2026-06-05 03:12:34,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:12:34,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:12:34,448.448 INFO    ] No existing commands found in stream
[2026-06-05 03:12:39,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:12:39,463.463 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 03:12:43,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:12:43,423.423 INFO    ] Checking for system updates...
[2026-06-05 03:12:43,461.461 INFO    ] 200
[2026-06-05 03:12:43,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:43,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:12:43,523.523 INFO    ] No update needed
[2026-06-05 03:12:43,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 03:12:43,561.561 INFO    ] 200
[2026-06-05 03:12:43,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:43,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:12:43,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:12:43,658.658 INFO    ] No camera update needed
[2026-06-05 03:12:43,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:12:43,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:12:43,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:12:43,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:12:45,714.714 INFO    ] ================================================
[2026-06-05 03:12:45,730.730 INFO    ] Launching Daemon at Fri Jun  5 03:12:45 IST 2026
[2026-06-05 03:12:45,741.741 INFO    ] ================================================
[2026-06-05 03:12:46,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:12:46
[2026-06-05 03:12:47,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:12:47,372.372 INFO    ] Initializing speech engine...
[2026-06-05 03:12:47,386.386 INFO    ] 2026-06-05 03:12:47
[2026-06-05 03:12:47,640.640 INFO    ] 2026-06-05 03:12:47
[2026-06-05 03:12:47,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:12:47,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:12:47,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:12:48,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:12:48,062.062 INFO    ] time= 05/06/2026 03:12:48
[2026-06-05 03:12:48,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:12:48,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:12:48,148.148 INFO    ] No existing commands found in stream
[2026-06-05 03:12:53,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:12:53,163.163 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 03:12:55,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:12:55,935.935 INFO    ] Checking for system updates...
[2026-06-05 03:12:55,971.971 INFO    ] 200
[2026-06-05 03:12:55,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:56,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:12:56,030.030 INFO    ] No update needed
[2026-06-05 03:12:56,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 03:12:56,072.072 INFO    ] 200
[2026-06-05 03:12:56,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:12:56,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:12:56,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:12:56,175.175 INFO    ] No camera update needed
[2026-06-05 03:12:56,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:12:56,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:12:56,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:12:56,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:12:58,234.234 INFO    ] ================================================
[2026-06-05 03:12:58,250.250 INFO    ] Launching Daemon at Fri Jun  5 03:12:58 IST 2026
[2026-06-05 03:12:58,260.260 INFO    ] ================================================
[2026-06-05 03:12:58,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:12:58
[2026-06-05 03:12:59,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:12:59,729.729 INFO    ] Initializing speech engine...
[2026-06-05 03:12:59,735.735 INFO    ] 2026-06-05 03:12:59
[2026-06-05 03:12:59,999.999 INFO    ] 2026-06-05 03:12:59
[2026-06-05 03:13:00,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:13:00,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:13:00,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:13:00,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:13:00,356.356 INFO    ] time= 05/06/2026 03:13:00
[2026-06-05 03:13:00,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:13:00,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:13:00,527.527 INFO    ] No existing commands found in stream
[2026-06-05 03:13:05,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:13:05,561.561 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 03:13:08,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:13:08,516.516 INFO    ] Checking for system updates...
[2026-06-05 03:13:08,556.556 INFO    ] 200
[2026-06-05 03:13:08,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:13:08,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:13:08,615.615 INFO    ] No update needed
[2026-06-05 03:13:08,617.617 INFO    ] Checking for camera pi updates...
[2026-06-05 03:13:08,651.651 INFO    ] 200
[2026-06-05 03:13:08,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:13:08,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:13:08,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:13:08,740.740 INFO    ] No camera update needed
[2026-06-05 03:13:08,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:13:08,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:13:08,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:13:08,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:13:10,798.798 INFO    ] ================================================
[2026-06-05 03:13:10,814.814 INFO    ] Launching Daemon at Fri Jun  5 03:13:10 IST 2026
[2026-06-05 03:13:10,825.825 INFO    ] ================================================
[2026-06-05 03:13:11,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:13:11
[2026-06-05 03:13:12,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:13:12,288.288 INFO    ] Initializing speech engine...
[2026-06-05 03:13:12,294.294 INFO    ] 2026-06-05 03:13:12
[2026-06-05 03:13:12,604.604 INFO    ] 2026-06-05 03:13:12
[2026-06-05 03:13:12,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:13:12,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:13:12,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:13:12,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:13:12,958.958 INFO    ] time= 05/06/2026 03:13:12
[2026-06-05 03:13:12,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:13:12,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:13:13,048.048 INFO    ] No existing commands found in stream
[2026-06-05 03:13:18,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:13:18,091.091 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 03:13:19,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:13:19,907.907 INFO    ] Checking for system updates...
[2026-06-05 03:13:19,947.947 INFO    ] 200
[2026-06-05 03:13:19,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:13:20,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:13:20,006.006 INFO    ] No update needed
[2026-06-05 03:13:20,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 03:13:20,046.046 INFO    ] 200
[2026-06-05 03:13:20,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:13:20,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:13:20,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:13:20,134.134 INFO    ] No camera update needed
[2026-06-05 03:13:20,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:13:20,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:13:20,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:13:20,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:13:22,189.189 INFO    ] ================================================
[2026-06-05 03:13:22,205.205 INFO    ] Launching Daemon at Fri Jun  5 03:13:22 IST 2026
[2026-06-05 03:13:22,217.217 INFO    ] ================================================
[2026-06-05 03:13:22,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:13:22
[2026-06-05 03:13:23,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:13:23,970.970 INFO    ] Initializing speech engine...
[2026-06-05 03:13:23,984.984 INFO    ] 2026-06-05 03:13:23
[2026-06-05 03:13:24,271.271 INFO    ] 2026-06-05 03:13:24
[2026-06-05 03:13:24,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:13:24,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:13:24,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:13:24,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:13:24,802.802 INFO    ] time= 05/06/2026 03:13:24
[2026-06-05 03:13:24,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:13:24,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:13:24,939.939 INFO    ] No existing commands found in stream
[2026-06-05 03:13:29,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:13:29,971.971 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 03:13:34,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:13:34,270.270 INFO    ] Checking for system updates...
[2026-06-05 03:13:34,307.307 INFO    ] 200
[2026-06-05 03:13:34,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:13:34,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:13:34,367.367 INFO    ] No update needed
[2026-06-05 03:13:34,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 03:13:34,403.403 INFO    ] 200
[2026-06-05 03:13:34,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:13:34,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:13:34,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:13:34,481.481 INFO    ] No camera update needed
[2026-06-05 03:13:34,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:13:34,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:13:34,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:13:34,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:13:36,539.539 INFO    ] ================================================
[2026-06-05 03:13:36,555.555 INFO    ] Launching Daemon at Fri Jun  5 03:13:36 IST 2026
[2026-06-05 03:13:36,566.566 INFO    ] ================================================
[2026-06-05 03:13:37,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:13:37
[2026-06-05 03:13:37,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:13:38,009.009 INFO    ] Initializing speech engine...
[2026-06-05 03:13:38,024.024 INFO    ] 2026-06-05 03:13:38
[2026-06-05 03:13:38,296.296 INFO    ] 2026-06-05 03:13:38
[2026-06-05 03:13:38,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:13:38,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:13:38,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:13:38,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:13:38,678.678 INFO    ] time= 05/06/2026 03:13:38
[2026-06-05 03:13:38,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:13:38,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:13:38,804.804 INFO    ] No existing commands found in stream
[2026-06-05 03:13:43,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:13:43,819.819 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 03:13:47,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:13:47,016.016 INFO    ] Checking for system updates...
[2026-06-05 03:13:47,051.051 INFO    ] 200
[2026-06-05 03:13:47,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:13:47,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:13:47,109.109 INFO    ] No update needed
[2026-06-05 03:13:47,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 03:13:47,145.145 INFO    ] 200
[2026-06-05 03:13:47,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:13:47,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:13:47,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:13:47,236.236 INFO    ] No camera update needed
[2026-06-05 03:13:47,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:13:47,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:13:47,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:13:47,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:13:49,292.292 INFO    ] ================================================
[2026-06-05 03:13:49,308.308 INFO    ] Launching Daemon at Fri Jun  5 03:13:49 IST 2026
[2026-06-05 03:13:49,320.320 INFO    ] ================================================
[2026-06-05 03:13:49,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:13:49
[2026-06-05 03:13:50,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:13:50,778.778 INFO    ] Initializing speech engine...
[2026-06-05 03:13:50,789.789 INFO    ] 2026-06-05 03:13:50
[2026-06-05 03:13:51,049.049 INFO    ] 2026-06-05 03:13:51
[2026-06-05 03:13:51,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:13:51,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:13:51,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:13:51,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:13:51,533.533 INFO    ] time= 05/06/2026 03:13:51
[2026-06-05 03:13:51,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:13:51,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:13:51,681.681 INFO    ] No existing commands found in stream
[2026-06-05 03:13:56,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:13:56,696.696 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 03:14:00,279.279 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:14:00,281.281 INFO    ] Checking for system updates...
[2026-06-05 03:14:00,318.318 INFO    ] 200
[2026-06-05 03:14:00,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:00,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:14:00,383.383 INFO    ] No update needed
[2026-06-05 03:14:00,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 03:14:00,419.419 INFO    ] 200
[2026-06-05 03:14:00,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:00,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:14:00,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:14:00,513.513 INFO    ] No camera update needed
[2026-06-05 03:14:00,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:14:00,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:14:00,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:14:00,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:14:02,573.573 INFO    ] ================================================
[2026-06-05 03:14:02,590.590 INFO    ] Launching Daemon at Fri Jun  5 03:14:02 IST 2026
[2026-06-05 03:14:02,603.603 INFO    ] ================================================
[2026-06-05 03:14:03,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:14:03
[2026-06-05 03:14:03,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:14:04,203.203 INFO    ] Initializing speech engine...
[2026-06-05 03:14:04,208.208 INFO    ] 2026-06-05 03:14:04
[2026-06-05 03:14:04,470.470 INFO    ] 2026-06-05 03:14:04
[2026-06-05 03:14:04,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:14:04,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:14:04,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:14:04,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:14:04,946.946 INFO    ] time= 05/06/2026 03:14:04
[2026-06-05 03:14:05,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:14:05,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:14:05,079.079 INFO    ] No existing commands found in stream
[2026-06-05 03:14:10,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:14:10,094.094 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 03:14:11,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:14:11,541.541 INFO    ] Checking for system updates...
[2026-06-05 03:14:11,577.577 INFO    ] 200
[2026-06-05 03:14:11,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:11,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:14:11,636.636 INFO    ] No update needed
[2026-06-05 03:14:11,638.638 INFO    ] Checking for camera pi updates...
[2026-06-05 03:14:11,679.679 INFO    ] 200
[2026-06-05 03:14:11,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:11,728.728 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:14:11,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:14:11,784.784 INFO    ] No camera update needed
[2026-06-05 03:14:11,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:14:11,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:14:11,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:14:11,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:14:13,840.840 INFO    ] ================================================
[2026-06-05 03:14:13,856.856 INFO    ] Launching Daemon at Fri Jun  5 03:14:13 IST 2026
[2026-06-05 03:14:13,866.866 INFO    ] ================================================
[2026-06-05 03:14:14,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:14:14
[2026-06-05 03:14:15,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:14:15,311.311 INFO    ] Initializing speech engine...
[2026-06-05 03:14:15,328.328 INFO    ] 2026-06-05 03:14:15
[2026-06-05 03:14:15,586.586 INFO    ] 2026-06-05 03:14:15
[2026-06-05 03:14:15,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:14:15,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:14:15,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:14:15,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:14:15,964.964 INFO    ] time= 05/06/2026 03:14:15
[2026-06-05 03:14:15,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:14:15,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:14:16,043.043 INFO    ] No existing commands found in stream
[2026-06-05 03:14:21,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:14:21,071.071 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 03:14:23,221.221 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:14:23,223.223 INFO    ] Checking for system updates...
[2026-06-05 03:14:23,260.260 INFO    ] 200
[2026-06-05 03:14:23,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:23,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:14:23,319.319 INFO    ] No update needed
[2026-06-05 03:14:23,322.322 INFO    ] Checking for camera pi updates...
[2026-06-05 03:14:23,359.359 INFO    ] 200
[2026-06-05 03:14:23,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:23,403.403 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:14:23,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:14:23,446.446 INFO    ] No camera update needed
[2026-06-05 03:14:23,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:14:23,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:14:23,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:14:23,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:14:25,505.505 INFO    ] ================================================
[2026-06-05 03:14:25,522.522 INFO    ] Launching Daemon at Fri Jun  5 03:14:25 IST 2026
[2026-06-05 03:14:25,534.534 INFO    ] ================================================
[2026-06-05 03:14:26,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:14:26
[2026-06-05 03:14:26,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:14:27,031.031 INFO    ] Initializing speech engine...
[2026-06-05 03:14:27,040.040 INFO    ] 2026-06-05 03:14:27
[2026-06-05 03:14:27,289.289 INFO    ] 2026-06-05 03:14:27
[2026-06-05 03:14:27,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:14:27,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:14:27,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:14:27,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:14:27,688.688 INFO    ] time= 05/06/2026 03:14:27
[2026-06-05 03:14:27,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:14:27,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:14:27,778.778 INFO    ] No existing commands found in stream
[2026-06-05 03:14:32,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:14:32,816.816 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 03:14:35,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:14:35,093.093 INFO    ] Checking for system updates...
[2026-06-05 03:14:35,133.133 INFO    ] 200
[2026-06-05 03:14:35,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:35,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:14:35,192.192 INFO    ] No update needed
[2026-06-05 03:14:35,194.194 INFO    ] Checking for camera pi updates...
[2026-06-05 03:14:35,233.233 INFO    ] 200
[2026-06-05 03:14:35,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:35,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:14:35,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:14:35,319.319 INFO    ] No camera update needed
[2026-06-05 03:14:35,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:14:35,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:14:35,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:14:35,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:14:37,380.380 INFO    ] ================================================
[2026-06-05 03:14:37,397.397 INFO    ] Launching Daemon at Fri Jun  5 03:14:37 IST 2026
[2026-06-05 03:14:37,410.410 INFO    ] ================================================
[2026-06-05 03:14:38,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:14:38
[2026-06-05 03:14:38,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:14:39,022.022 INFO    ] Initializing speech engine...
[2026-06-05 03:14:39,034.034 INFO    ] 2026-06-05 03:14:39
[2026-06-05 03:14:39,318.318 INFO    ] 2026-06-05 03:14:39
[2026-06-05 03:14:39,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:14:39,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:14:39,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:14:39,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:14:39,861.861 INFO    ] time= 05/06/2026 03:14:39
[2026-06-05 03:14:39,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:14:39,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:14:40,000.000 INFO    ] No existing commands found in stream
[2026-06-05 03:14:45,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:14:45,031.031 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 03:14:47,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:14:47,427.427 INFO    ] Checking for system updates...
[2026-06-05 03:14:47,464.464 INFO    ] 200
[2026-06-05 03:14:47,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:47,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:14:47,530.530 INFO    ] No update needed
[2026-06-05 03:14:47,532.532 INFO    ] Checking for camera pi updates...
[2026-06-05 03:14:47,570.570 INFO    ] 200
[2026-06-05 03:14:47,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:14:47,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:14:47,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:14:47,663.663 INFO    ] No camera update needed
[2026-06-05 03:14:47,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:14:47,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:14:47,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:14:47,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:14:49,720.720 INFO    ] ================================================
[2026-06-05 03:14:49,736.736 INFO    ] Launching Daemon at Fri Jun  5 03:14:49 IST 2026
[2026-06-05 03:14:49,747.747 INFO    ] ================================================
[2026-06-05 03:14:50,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:14:50
[2026-06-05 03:14:51,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:14:51,412.412 INFO    ] Initializing speech engine...
[2026-06-05 03:14:51,424.424 INFO    ] 2026-06-05 03:14:51
[2026-06-05 03:14:51,737.737 INFO    ] 2026-06-05 03:14:51
[2026-06-05 03:14:51,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:14:52,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:14:52,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:14:52,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:14:52,249.249 INFO    ] time= 05/06/2026 03:14:52
[2026-06-05 03:14:52,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:14:52,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:14:52,404.404 INFO    ] No existing commands found in stream
[2026-06-05 03:14:57,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:14:57,425.425 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 03:15:01,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:15:01,090.090 INFO    ] Checking for system updates...
[2026-06-05 03:15:01,133.133 INFO    ] 200
[2026-06-05 03:15:01,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:01,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:15:01,199.199 INFO    ] No update needed
[2026-06-05 03:15:01,202.202 INFO    ] Checking for camera pi updates...
[2026-06-05 03:15:01,238.238 INFO    ] 200
[2026-06-05 03:15:01,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:01,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:15:01,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:15:01,328.328 INFO    ] No camera update needed
[2026-06-05 03:15:01,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:15:01,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:15:01,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:15:01,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:15:03,405.405 INFO    ] ================================================
[2026-06-05 03:15:03,423.423 INFO    ] Launching Daemon at Fri Jun  5 03:15:03 IST 2026
[2026-06-05 03:15:03,436.436 INFO    ] ================================================
[2026-06-05 03:15:04,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:15:04
[2026-06-05 03:15:04,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:15:04,910.910 INFO    ] Initializing speech engine...
[2026-06-05 03:15:04,920.920 INFO    ] 2026-06-05 03:15:04
[2026-06-05 03:15:05,169.169 INFO    ] 2026-06-05 03:15:05
[2026-06-05 03:15:05,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:15:05,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:15:05,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:15:05,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:15:05,646.646 INFO    ] time= 05/06/2026 03:15:05
[2026-06-05 03:15:05,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:15:05,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:15:05,852.852 INFO    ] No existing commands found in stream
[2026-06-05 03:15:10,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:15:10,882.882 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 03:15:11,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:15:11,568.568 INFO    ] Checking for system updates...
[2026-06-05 03:15:11,605.605 INFO    ] 200
[2026-06-05 03:15:11,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:11,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:15:11,666.666 INFO    ] No update needed
[2026-06-05 03:15:11,672.672 INFO    ] Checking for camera pi updates...
[2026-06-05 03:15:11,713.713 INFO    ] 200
[2026-06-05 03:15:11,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:11,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:15:11,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:15:11,816.816 INFO    ] No camera update needed
[2026-06-05 03:15:11,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:15:11,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:15:11,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:15:11,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:15:13,882.882 INFO    ] ================================================
[2026-06-05 03:15:13,897.897 INFO    ] Launching Daemon at Fri Jun  5 03:15:13 IST 2026
[2026-06-05 03:15:13,908.908 INFO    ] ================================================
[2026-06-05 03:15:14,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:15:14
[2026-06-05 03:15:15,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:15:15,460.460 INFO    ] Initializing speech engine...
[2026-06-05 03:15:15,487.487 INFO    ] 2026-06-05 03:15:15
[2026-06-05 03:15:15,768.768 INFO    ] 2026-06-05 03:15:15
[2026-06-05 03:15:15,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:15:15,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:15:15,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:15:16,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:15:16,177.177 INFO    ] time= 05/06/2026 03:15:16
[2026-06-05 03:15:16,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:15:16,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:15:16,276.276 INFO    ] No existing commands found in stream
[2026-06-05 03:15:21,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:15:21,291.291 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 03:15:24,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:15:24,326.326 INFO    ] Checking for system updates...
[2026-06-05 03:15:24,368.368 INFO    ] 200
[2026-06-05 03:15:24,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:24,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:15:24,433.433 INFO    ] No update needed
[2026-06-05 03:15:24,435.435 INFO    ] Checking for camera pi updates...
[2026-06-05 03:15:24,469.469 INFO    ] 200
[2026-06-05 03:15:24,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:24,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:15:24,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:15:24,572.572 INFO    ] No camera update needed
[2026-06-05 03:15:24,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:15:24,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:15:24,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:15:24,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:15:26,629.629 INFO    ] ================================================
[2026-06-05 03:15:26,644.644 INFO    ] Launching Daemon at Fri Jun  5 03:15:26 IST 2026
[2026-06-05 03:15:26,656.656 INFO    ] ================================================
[2026-06-05 03:15:27,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:15:27
[2026-06-05 03:15:27,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:15:28,122.122 INFO    ] Initializing speech engine...
[2026-06-05 03:15:28,130.130 INFO    ] 2026-06-05 03:15:28
[2026-06-05 03:15:28,410.410 INFO    ] 2026-06-05 03:15:28
[2026-06-05 03:15:28,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:15:28,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:15:28,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:15:28,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:15:28,847.847 INFO    ] time= 05/06/2026 03:15:28
[2026-06-05 03:15:28,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:15:28,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:15:29,009.009 INFO    ] No existing commands found in stream
[2026-06-05 03:15:34,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:15:34,024.024 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 03:15:34,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:15:34,885.885 INFO    ] Checking for system updates...
[2026-06-05 03:15:34,922.922 INFO    ] 200
[2026-06-05 03:15:34,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:34,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:15:34,988.988 INFO    ] No update needed
[2026-06-05 03:15:34,991.991 INFO    ] Checking for camera pi updates...
[2026-06-05 03:15:35,025.025 INFO    ] 200
[2026-06-05 03:15:35,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:35,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:15:35,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:15:35,112.112 INFO    ] No camera update needed
[2026-06-05 03:15:35,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:15:35,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:15:35,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:15:35,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:15:37,167.167 INFO    ] ================================================
[2026-06-05 03:15:37,182.182 INFO    ] Launching Daemon at Fri Jun  5 03:15:37 IST 2026
[2026-06-05 03:15:37,192.192 INFO    ] ================================================
[2026-06-05 03:15:37,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:15:37
[2026-06-05 03:15:38,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:15:38,632.632 INFO    ] Initializing speech engine...
[2026-06-05 03:15:38,637.637 INFO    ] 2026-06-05 03:15:38
[2026-06-05 03:15:38,887.887 INFO    ] 2026-06-05 03:15:38
[2026-06-05 03:15:38,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:15:39,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:15:39,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:15:39,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:15:39,269.269 INFO    ] time= 05/06/2026 03:15:39
[2026-06-05 03:15:39,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:15:39,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:15:39,436.436 INFO    ] No existing commands found in stream
[2026-06-05 03:15:44,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:15:44,464.464 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-05 03:15:47,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:15:47,533.533 INFO    ] Checking for system updates...
[2026-06-05 03:15:47,570.570 INFO    ] 200
[2026-06-05 03:15:47,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:47,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:15:47,628.628 INFO    ] No update needed
[2026-06-05 03:15:47,630.630 INFO    ] Checking for camera pi updates...
[2026-06-05 03:15:47,665.665 INFO    ] 200
[2026-06-05 03:15:47,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:15:47,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:15:47,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:15:47,754.754 INFO    ] No camera update needed
[2026-06-05 03:15:47,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:15:47,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:15:47,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:15:47,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:15:49,811.811 INFO    ] ================================================
[2026-06-05 03:15:49,827.827 INFO    ] Launching Daemon at Fri Jun  5 03:15:49 IST 2026
[2026-06-05 03:15:49,838.838 INFO    ] ================================================
[2026-06-05 03:15:50,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:15:50
[2026-06-05 03:15:51,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:15:51,475.475 INFO    ] Initializing speech engine...
[2026-06-05 03:15:51,482.482 INFO    ] 2026-06-05 03:15:51
[2026-06-05 03:15:51,770.770 INFO    ] 2026-06-05 03:15:51
[2026-06-05 03:15:51,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:15:52,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:15:52,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:15:52,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:15:52,307.307 INFO    ] time= 05/06/2026 03:15:52
[2026-06-05 03:15:52,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:15:52,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:15:52,454.454 INFO    ] No existing commands found in stream
[2026-06-05 03:15:57,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:15:57,480.480 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 03:16:01,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:16:01,060.060 INFO    ] Checking for system updates...
[2026-06-05 03:16:01,104.104 INFO    ] 200
[2026-06-05 03:16:01,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:01,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:16:01,166.166 INFO    ] No update needed
[2026-06-05 03:16:01,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 03:16:01,208.208 INFO    ] 200
[2026-06-05 03:16:01,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:01,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:16:01,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:16:01,304.304 INFO    ] No camera update needed
[2026-06-05 03:16:01,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:16:01,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:16:01,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:16:01,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:16:03,369.369 INFO    ] ================================================
[2026-06-05 03:16:03,384.384 INFO    ] Launching Daemon at Fri Jun  5 03:16:03 IST 2026
[2026-06-05 03:16:03,396.396 INFO    ] ================================================
[2026-06-05 03:16:04,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:16:04
[2026-06-05 03:16:04,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:16:04,889.889 INFO    ] Initializing speech engine...
[2026-06-05 03:16:04,894.894 INFO    ] 2026-06-05 03:16:04
[2026-06-05 03:16:05,143.143 INFO    ] 2026-06-05 03:16:05
[2026-06-05 03:16:05,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:16:05,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:16:05,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:16:05,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:16:05,626.626 INFO    ] time= 05/06/2026 03:16:05
[2026-06-05 03:16:05,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:16:05,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:16:05,781.781 INFO    ] No existing commands found in stream
[2026-06-05 03:16:10,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:16:10,821.821 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 03:16:14,850.850 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:16:14,853.853 INFO    ] Checking for system updates...
[2026-06-05 03:16:14,894.894 INFO    ] 200
[2026-06-05 03:16:14,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:14,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:16:14,958.958 INFO    ] No update needed
[2026-06-05 03:16:14,962.962 INFO    ] Checking for camera pi updates...
[2026-06-05 03:16:15,002.002 INFO    ] 200
[2026-06-05 03:16:15,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:15,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:16:15,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:16:15,099.099 INFO    ] No camera update needed
[2026-06-05 03:16:15,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:16:15,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:16:15,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:16:15,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:16:17,167.167 INFO    ] ================================================
[2026-06-05 03:16:17,183.183 INFO    ] Launching Daemon at Fri Jun  5 03:16:17 IST 2026
[2026-06-05 03:16:17,194.194 INFO    ] ================================================
[2026-06-05 03:16:17,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:16:17
[2026-06-05 03:16:18,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:16:18,778.778 INFO    ] Initializing speech engine...
[2026-06-05 03:16:18,791.791 INFO    ] 2026-06-05 03:16:18
[2026-06-05 03:16:19,072.072 INFO    ] 2026-06-05 03:16:19
[2026-06-05 03:16:19,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:16:19,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:16:19,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:16:19,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:16:19,560.560 INFO    ] time= 05/06/2026 03:16:19
[2026-06-05 03:16:19,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:16:19,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:16:19,720.720 INFO    ] No existing commands found in stream
[2026-06-05 03:16:24,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:16:24,753.753 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 03:16:25,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:16:25,839.839 INFO    ] Checking for system updates...
[2026-06-05 03:16:25,880.880 INFO    ] 200
[2026-06-05 03:16:25,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:25,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:16:25,940.940 INFO    ] No update needed
[2026-06-05 03:16:25,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 03:16:25,977.977 INFO    ] 200
[2026-06-05 03:16:25,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:26,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:16:26,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:16:26,079.079 INFO    ] No camera update needed
[2026-06-05 03:16:26,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:16:26,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:16:26,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:16:26,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:16:28,135.135 INFO    ] ================================================
[2026-06-05 03:16:28,151.151 INFO    ] Launching Daemon at Fri Jun  5 03:16:28 IST 2026
[2026-06-05 03:16:28,161.161 INFO    ] ================================================
[2026-06-05 03:16:28,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:16:28
[2026-06-05 03:16:29,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:16:29,574.574 INFO    ] Initializing speech engine...
[2026-06-05 03:16:29,583.583 INFO    ] 2026-06-05 03:16:29
[2026-06-05 03:16:29,880.880 INFO    ] 2026-06-05 03:16:29
[2026-06-05 03:16:29,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:16:30,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:16:30,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:16:30,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:16:30,266.266 INFO    ] time= 05/06/2026 03:16:30
[2026-06-05 03:16:30,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:16:30,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:16:30,393.393 INFO    ] No existing commands found in stream
[2026-06-05 03:16:35,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:16:35,409.409 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 03:16:38,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:16:38,266.266 INFO    ] Checking for system updates...
[2026-06-05 03:16:38,302.302 INFO    ] 200
[2026-06-05 03:16:38,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:38,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:16:38,366.366 INFO    ] No update needed
[2026-06-05 03:16:38,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 03:16:38,415.415 INFO    ] 200
[2026-06-05 03:16:38,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:38,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:16:38,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:16:38,613.613 INFO    ] No camera update needed
[2026-06-05 03:16:38,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:16:38,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:16:38,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:16:38,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:16:40,669.669 INFO    ] ================================================
[2026-06-05 03:16:40,684.684 INFO    ] Launching Daemon at Fri Jun  5 03:16:40 IST 2026
[2026-06-05 03:16:40,694.694 INFO    ] ================================================
[2026-06-05 03:16:41,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:16:41
[2026-06-05 03:16:41,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:16:42,157.157 INFO    ] Initializing speech engine...
[2026-06-05 03:16:42,167.167 INFO    ] 2026-06-05 03:16:42
[2026-06-05 03:16:42,442.442 INFO    ] 2026-06-05 03:16:42
[2026-06-05 03:16:42,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:16:42,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:16:42,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:16:42,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:16:42,812.812 INFO    ] time= 05/06/2026 03:16:42
[2026-06-05 03:16:42,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:16:42,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:16:42,878.878 INFO    ] No existing commands found in stream
[2026-06-05 03:16:47,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:16:47,922.922 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 03:16:48,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:16:48,839.839 INFO    ] Checking for system updates...
[2026-06-05 03:16:48,877.877 INFO    ] 200
[2026-06-05 03:16:48,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:48,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:16:48,935.935 INFO    ] No update needed
[2026-06-05 03:16:48,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 03:16:48,971.971 INFO    ] 200
[2026-06-05 03:16:48,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:49,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:16:49,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:16:49,068.068 INFO    ] No camera update needed
[2026-06-05 03:16:49,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:16:49,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:16:49,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:16:49,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:16:51,125.125 INFO    ] ================================================
[2026-06-05 03:16:51,140.140 INFO    ] Launching Daemon at Fri Jun  5 03:16:51 IST 2026
[2026-06-05 03:16:51,150.150 INFO    ] ================================================
[2026-06-05 03:16:51,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:16:51
[2026-06-05 03:16:52,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:16:52,600.600 INFO    ] Initializing speech engine...
[2026-06-05 03:16:52,613.613 INFO    ] 2026-06-05 03:16:52
[2026-06-05 03:16:52,898.898 INFO    ] 2026-06-05 03:16:52
[2026-06-05 03:16:52,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:16:53,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:16:53,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:16:53,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:16:53,287.287 INFO    ] time= 05/06/2026 03:16:53
[2026-06-05 03:16:53,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:16:53,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:16:53,412.412 INFO    ] No existing commands found in stream
[2026-06-05 03:16:58,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:16:58,427.427 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 03:16:59,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:16:59,243.243 INFO    ] Checking for system updates...
[2026-06-05 03:16:59,279.279 INFO    ] 200
[2026-06-05 03:16:59,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:59,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:16:59,337.337 INFO    ] No update needed
[2026-06-05 03:16:59,340.340 INFO    ] Checking for camera pi updates...
[2026-06-05 03:16:59,373.373 INFO    ] 200
[2026-06-05 03:16:59,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:16:59,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:16:59,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:16:59,457.457 INFO    ] No camera update needed
[2026-06-05 03:16:59,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:16:59,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:16:59,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:16:59,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:17:01,512.512 INFO    ] ================================================
[2026-06-05 03:17:01,527.527 INFO    ] Launching Daemon at Fri Jun  5 03:17:01 IST 2026
[2026-06-05 03:17:01,538.538 INFO    ] ================================================
[2026-06-05 03:17:02,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:17:02
[2026-06-05 03:17:02,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:17:03,193.193 INFO    ] Initializing speech engine...
[2026-06-05 03:17:03,203.203 INFO    ] 2026-06-05 03:17:03
[2026-06-05 03:17:03,519.519 INFO    ] 2026-06-05 03:17:03
[2026-06-05 03:17:03,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:17:03,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:17:03,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:17:03,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:17:03,883.883 INFO    ] time= 05/06/2026 03:17:03
[2026-06-05 03:17:03,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:17:03,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:17:04,016.016 INFO    ] No existing commands found in stream
[2026-06-05 03:17:09,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:17:09,031.031 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 03:17:11,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:17:11,857.857 INFO    ] Checking for system updates...
[2026-06-05 03:17:11,893.893 INFO    ] 200
[2026-06-05 03:17:11,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:11,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:17:11,951.951 INFO    ] No update needed
[2026-06-05 03:17:11,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 03:17:11,987.987 INFO    ] 200
[2026-06-05 03:17:11,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:12,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:17:12,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:17:12,086.086 INFO    ] No camera update needed
[2026-06-05 03:17:12,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:17:12,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:17:12,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:17:12,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:17:14,148.148 INFO    ] ================================================
[2026-06-05 03:17:14,163.163 INFO    ] Launching Daemon at Fri Jun  5 03:17:14 IST 2026
[2026-06-05 03:17:14,174.174 INFO    ] ================================================
[2026-06-05 03:17:14,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:17:14
[2026-06-05 03:17:15,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:17:15,615.615 INFO    ] Initializing speech engine...
[2026-06-05 03:17:15,622.622 INFO    ] 2026-06-05 03:17:15
[2026-06-05 03:17:15,893.893 INFO    ] 2026-06-05 03:17:15
[2026-06-05 03:17:15,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:17:16,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:17:16,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:17:16,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:17:16,350.350 INFO    ] time= 05/06/2026 03:17:16
[2026-06-05 03:17:16,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:17:16,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:17:16,512.512 INFO    ] No existing commands found in stream
[2026-06-05 03:17:21,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:17:21,529.529 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 03:17:21,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:17:21,921.921 INFO    ] Checking for system updates...
[2026-06-05 03:17:21,957.957 INFO    ] 200
[2026-06-05 03:17:21,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:22,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:17:22,014.014 INFO    ] No update needed
[2026-06-05 03:17:22,017.017 INFO    ] Checking for camera pi updates...
[2026-06-05 03:17:22,050.050 INFO    ] 200
[2026-06-05 03:17:22,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:22,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:17:22,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:17:22,135.135 INFO    ] No camera update needed
[2026-06-05 03:17:22,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:17:22,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:17:22,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:17:22,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:17:24,191.191 INFO    ] ================================================
[2026-06-05 03:17:24,206.206 INFO    ] Launching Daemon at Fri Jun  5 03:17:24 IST 2026
[2026-06-05 03:17:24,217.217 INFO    ] ================================================
[2026-06-05 03:17:24,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:17:24
[2026-06-05 03:17:25,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:17:25,640.640 INFO    ] Initializing speech engine...
[2026-06-05 03:17:25,647.647 INFO    ] 2026-06-05 03:17:25
[2026-06-05 03:17:25,941.941 INFO    ] 2026-06-05 03:17:25
[2026-06-05 03:17:25,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:17:26,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:17:26,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:17:26,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:17:26,321.321 INFO    ] time= 05/06/2026 03:17:26
[2026-06-05 03:17:26,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:17:26,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:17:26,446.446 INFO    ] No existing commands found in stream
[2026-06-05 03:17:31,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:17:31,461.461 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 03:17:33,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:17:33,771.771 INFO    ] Checking for system updates...
[2026-06-05 03:17:33,815.815 INFO    ] 200
[2026-06-05 03:17:33,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:33,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:17:33,874.874 INFO    ] No update needed
[2026-06-05 03:17:33,877.877 INFO    ] Checking for camera pi updates...
[2026-06-05 03:17:33,911.911 INFO    ] 200
[2026-06-05 03:17:33,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:33,953.953 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:17:33,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:17:33,997.997 INFO    ] No camera update needed
[2026-06-05 03:17:34,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:17:34,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:17:34,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:17:34,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:17:36,053.053 INFO    ] ================================================
[2026-06-05 03:17:36,068.068 INFO    ] Launching Daemon at Fri Jun  5 03:17:36 IST 2026
[2026-06-05 03:17:36,079.079 INFO    ] ================================================
[2026-06-05 03:17:36,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:17:36
[2026-06-05 03:17:37,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:17:37,528.528 INFO    ] Initializing speech engine...
[2026-06-05 03:17:37,541.541 INFO    ] 2026-06-05 03:17:37
[2026-06-05 03:17:37,830.830 INFO    ] 2026-06-05 03:17:37
[2026-06-05 03:17:37,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:17:38,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:17:38,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:17:38,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:17:38,231.231 INFO    ] time= 05/06/2026 03:17:38
[2026-06-05 03:17:38,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:17:38,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:17:38,340.340 INFO    ] No existing commands found in stream
[2026-06-05 03:17:43,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:17:43,356.356 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 03:17:47,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:17:47,206.206 INFO    ] Checking for system updates...
[2026-06-05 03:17:47,247.247 INFO    ] 200
[2026-06-05 03:17:47,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:47,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:17:47,307.307 INFO    ] No update needed
[2026-06-05 03:17:47,310.310 INFO    ] Checking for camera pi updates...
[2026-06-05 03:17:47,349.349 INFO    ] 200
[2026-06-05 03:17:47,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:47,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:17:47,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:17:47,439.439 INFO    ] No camera update needed
[2026-06-05 03:17:47,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:17:47,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:17:47,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:17:47,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:17:49,498.498 INFO    ] ================================================
[2026-06-05 03:17:49,514.514 INFO    ] Launching Daemon at Fri Jun  5 03:17:49 IST 2026
[2026-06-05 03:17:49,525.525 INFO    ] ================================================
[2026-06-05 03:17:50,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:17:50
[2026-06-05 03:17:50,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:17:50,987.987 INFO    ] Initializing speech engine...
[2026-06-05 03:17:51,001.001 INFO    ] 2026-06-05 03:17:50
[2026-06-05 03:17:51,265.265 INFO    ] 2026-06-05 03:17:51
[2026-06-05 03:17:51,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:17:51,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:17:51,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:17:51,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:17:51,638.638 INFO    ] time= 05/06/2026 03:17:51
[2026-06-05 03:17:51,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:17:51,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:17:51,801.801 INFO    ] No existing commands found in stream
[2026-06-05 03:17:56,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:17:56,841.841 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 03:17:59,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:17:59,304.304 INFO    ] Checking for system updates...
[2026-06-05 03:17:59,340.340 INFO    ] 200
[2026-06-05 03:17:59,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:59,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:17:59,398.398 INFO    ] No update needed
[2026-06-05 03:17:59,400.400 INFO    ] Checking for camera pi updates...
[2026-06-05 03:17:59,438.438 INFO    ] 200
[2026-06-05 03:17:59,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:17:59,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:17:59,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:17:59,537.537 INFO    ] No camera update needed
[2026-06-05 03:17:59,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:17:59,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:17:59,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:17:59,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:18:01,597.597 INFO    ] ================================================
[2026-06-05 03:18:01,614.614 INFO    ] Launching Daemon at Fri Jun  5 03:18:01 IST 2026
[2026-06-05 03:18:01,626.626 INFO    ] ================================================
[2026-06-05 03:18:02,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:18:02
[2026-06-05 03:18:03,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:18:03,409.409 INFO    ] Initializing speech engine...
[2026-06-05 03:18:03,418.418 INFO    ] 2026-06-05 03:18:03
[2026-06-05 03:18:03,736.736 INFO    ] 2026-06-05 03:18:03
[2026-06-05 03:18:03,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:18:03,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:18:03,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:18:04,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:18:04,097.097 INFO    ] time= 05/06/2026 03:18:04
[2026-06-05 03:18:04,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:18:04,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:18:04,174.174 INFO    ] No existing commands found in stream
[2026-06-05 03:18:09,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:18:09,217.217 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 03:18:12,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:18:12,375.375 INFO    ] Checking for system updates...
[2026-06-05 03:18:12,412.412 INFO    ] 200
[2026-06-05 03:18:12,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:18:12,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:18:12,470.470 INFO    ] No update needed
[2026-06-05 03:18:12,472.472 INFO    ] Checking for camera pi updates...
[2026-06-05 03:18:12,507.507 INFO    ] 200
[2026-06-05 03:18:12,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:18:12,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:18:12,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:18:12,580.580 INFO    ] No camera update needed
[2026-06-05 03:18:12,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:18:12,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:18:12,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:18:12,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:18:14,638.638 INFO    ] ================================================
[2026-06-05 03:18:14,654.654 INFO    ] Launching Daemon at Fri Jun  5 03:18:14 IST 2026
[2026-06-05 03:18:14,665.665 INFO    ] ================================================
[2026-06-05 03:18:15,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:18:15
[2026-06-05 03:18:15,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:18:16,115.115 INFO    ] Initializing speech engine...
[2026-06-05 03:18:16,125.125 INFO    ] 2026-06-05 03:18:16
[2026-06-05 03:18:16,386.386 INFO    ] 2026-06-05 03:18:16
[2026-06-05 03:18:16,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:18:16,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:18:16,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:18:16,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:18:16,836.836 INFO    ] time= 05/06/2026 03:18:16
[2026-06-05 03:18:16,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:18:16,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:18:17,005.005 INFO    ] No existing commands found in stream
[2026-06-05 03:18:22,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:18:22,020.020 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 03:18:25,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:18:25,927.927 INFO    ] Checking for system updates...
[2026-06-05 03:18:25,964.964 INFO    ] 200
[2026-06-05 03:18:25,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:18:26,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:18:26,022.022 INFO    ] No update needed
[2026-06-05 03:18:26,024.024 INFO    ] Checking for camera pi updates...
[2026-06-05 03:18:26,058.058 INFO    ] 200
[2026-06-05 03:18:26,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:18:26,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:18:26,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:18:26,146.146 INFO    ] No camera update needed
[2026-06-05 03:18:26,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:18:26,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:18:26,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:18:26,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:18:28,206.206 INFO    ] ================================================
[2026-06-05 03:18:28,222.222 INFO    ] Launching Daemon at Fri Jun  5 03:18:28 IST 2026
[2026-06-05 03:18:28,233.233 INFO    ] ================================================
[2026-06-05 03:18:28,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:18:28
[2026-06-05 03:18:29,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:18:29,647.647 INFO    ] Initializing speech engine...
[2026-06-05 03:18:29,654.654 INFO    ] 2026-06-05 03:18:29
[2026-06-05 03:18:29,955.955 INFO    ] 2026-06-05 03:18:29
[2026-06-05 03:18:29,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:18:30,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:18:30,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:18:30,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:18:30,343.343 INFO    ] time= 05/06/2026 03:18:30
[2026-06-05 03:18:30,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:18:30,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:18:30,471.471 INFO    ] No existing commands found in stream
[2026-06-05 03:18:35,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:18:35,486.486 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 03:18:38,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:18:38,161.161 INFO    ] Checking for system updates...
[2026-06-05 03:18:38,197.197 INFO    ] 200
[2026-06-05 03:18:38,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:18:38,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:18:38,262.262 INFO    ] No update needed
[2026-06-05 03:18:38,264.264 INFO    ] Checking for camera pi updates...
[2026-06-05 03:18:38,302.302 INFO    ] 200
[2026-06-05 03:18:38,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:18:38,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:18:38,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:18:38,379.379 INFO    ] No camera update needed
[2026-06-05 03:18:38,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:18:38,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:18:38,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:18:38,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:18:40,435.435 INFO    ] ================================================
[2026-06-05 03:18:40,451.451 INFO    ] Launching Daemon at Fri Jun  5 03:18:40 IST 2026
[2026-06-05 03:18:40,462.462 INFO    ] ================================================
[2026-06-05 03:18:41,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:18:41
[2026-06-05 03:18:41,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:18:41,877.877 INFO    ] Initializing speech engine...
[2026-06-05 03:18:41,885.885 INFO    ] 2026-06-05 03:18:41
[2026-06-05 03:18:42,179.179 INFO    ] 2026-06-05 03:18:42
[2026-06-05 03:18:42,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:18:42,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:18:42,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:18:42,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:18:42,560.560 INFO    ] time= 05/06/2026 03:18:42
[2026-06-05 03:18:42,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:18:42,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:18:42,667.667 INFO    ] No existing commands found in stream
[2026-06-05 03:18:47,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:18:47,680.680 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 03:18:51,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:18:51,243.243 INFO    ] Checking for system updates...
[2026-06-05 03:18:51,280.280 INFO    ] 200
[2026-06-05 03:18:51,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:18:51,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:18:51,339.339 INFO    ] No update needed
[2026-06-05 03:18:51,342.342 INFO    ] Checking for camera pi updates...
[2026-06-05 03:18:51,378.378 INFO    ] 200
[2026-06-05 03:18:51,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:18:51,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:18:51,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:18:51,552.552 INFO    ] No camera update needed
[2026-06-05 03:18:51,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:18:51,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:18:51,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:18:51,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:18:53,609.609 INFO    ] ================================================
[2026-06-05 03:18:53,625.625 INFO    ] Launching Daemon at Fri Jun  5 03:18:53 IST 2026
[2026-06-05 03:18:53,636.636 INFO    ] ================================================
[2026-06-05 03:18:54,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:18:54
[2026-06-05 03:18:54,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:18:55,064.064 INFO    ] Initializing speech engine...
[2026-06-05 03:18:55,078.078 INFO    ] 2026-06-05 03:18:55
[2026-06-05 03:18:55,359.359 INFO    ] 2026-06-05 03:18:55
[2026-06-05 03:18:55,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:18:55,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:18:55,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:18:55,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:18:55,772.772 INFO    ] time= 05/06/2026 03:18:55
[2026-06-05 03:18:55,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:18:55,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:18:55,862.862 INFO    ] No existing commands found in stream
[2026-06-05 03:19:00,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:19:00,876.876 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 03:19:03,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:19:03,528.528 INFO    ] Checking for system updates...
[2026-06-05 03:19:03,565.565 INFO    ] 200
[2026-06-05 03:19:03,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:03,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:19:03,631.631 INFO    ] No update needed
[2026-06-05 03:19:03,634.634 INFO    ] Checking for camera pi updates...
[2026-06-05 03:19:03,671.671 INFO    ] 200
[2026-06-05 03:19:03,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:03,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:19:03,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:19:03,757.757 INFO    ] No camera update needed
[2026-06-05 03:19:03,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:19:03,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:19:03,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:19:03,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:19:05,817.817 INFO    ] ================================================
[2026-06-05 03:19:05,839.839 INFO    ] Launching Daemon at Fri Jun  5 03:19:05 IST 2026
[2026-06-05 03:19:05,852.852 INFO    ] ================================================
[2026-06-05 03:19:06,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:19:06
[2026-06-05 03:19:07,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:19:07,284.284 INFO    ] Initializing speech engine...
[2026-06-05 03:19:07,293.293 INFO    ] 2026-06-05 03:19:07
[2026-06-05 03:19:07,543.543 INFO    ] 2026-06-05 03:19:07
[2026-06-05 03:19:07,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:19:07,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:19:07,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:19:07,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:19:07,916.916 INFO    ] time= 05/06/2026 03:19:07
[2026-06-05 03:19:07,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:19:07,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:19:08,075.075 INFO    ] No existing commands found in stream
[2026-06-05 03:19:13,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:19:13,108.108 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 03:19:17,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:19:17,266.266 INFO    ] Checking for system updates...
[2026-06-05 03:19:17,306.306 INFO    ] 200
[2026-06-05 03:19:17,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:17,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:19:17,365.365 INFO    ] No update needed
[2026-06-05 03:19:17,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 03:19:17,405.405 INFO    ] 200
[2026-06-05 03:19:17,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:17,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:19:17,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:19:17,496.496 INFO    ] No camera update needed
[2026-06-05 03:19:17,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:19:17,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:19:17,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:19:17,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:19:19,557.557 INFO    ] ================================================
[2026-06-05 03:19:19,573.573 INFO    ] Launching Daemon at Fri Jun  5 03:19:19 IST 2026
[2026-06-05 03:19:19,584.584 INFO    ] ================================================
[2026-06-05 03:19:20,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:19:20
[2026-06-05 03:19:20,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:19:21,239.239 INFO    ] Initializing speech engine...
[2026-06-05 03:19:21,247.247 INFO    ] 2026-06-05 03:19:21
[2026-06-05 03:19:21,510.510 INFO    ] 2026-06-05 03:19:21
[2026-06-05 03:19:21,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:19:21,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:19:21,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:19:21,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:19:22,034.034 INFO    ] time= 05/06/2026 03:19:21
[2026-06-05 03:19:22,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:19:22,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:19:22,160.160 INFO    ] No existing commands found in stream
[2026-06-05 03:19:27,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:19:27,175.175 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 03:19:29,989.989 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:19:29,992.992 INFO    ] Checking for system updates...
[2026-06-05 03:19:30,028.028 INFO    ] 200
[2026-06-05 03:19:30,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:30,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:19:30,087.087 INFO    ] No update needed
[2026-06-05 03:19:30,089.089 INFO    ] Checking for camera pi updates...
[2026-06-05 03:19:30,123.123 INFO    ] 200
[2026-06-05 03:19:30,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:30,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:19:30,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:19:30,214.214 INFO    ] No camera update needed
[2026-06-05 03:19:30,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:19:30,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:19:30,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:19:30,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:19:32,272.272 INFO    ] ================================================
[2026-06-05 03:19:32,289.289 INFO    ] Launching Daemon at Fri Jun  5 03:19:32 IST 2026
[2026-06-05 03:19:32,301.301 INFO    ] ================================================
[2026-06-05 03:19:32,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:19:32
[2026-06-05 03:19:33,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:19:33,848.848 INFO    ] Initializing speech engine...
[2026-06-05 03:19:33,858.858 INFO    ] 2026-06-05 03:19:33
[2026-06-05 03:19:34,136.136 INFO    ] 2026-06-05 03:19:34
[2026-06-05 03:19:34,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:19:34,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:19:34,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:19:34,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:19:34,499.499 INFO    ] time= 05/06/2026 03:19:34
[2026-06-05 03:19:34,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:19:34,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:19:34,649.649 INFO    ] No existing commands found in stream
[2026-06-05 03:19:39,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:19:39,666.666 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 03:19:41,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:19:41,848.848 INFO    ] Checking for system updates...
[2026-06-05 03:19:41,889.889 INFO    ] 200
[2026-06-05 03:19:41,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:41,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:19:41,954.954 INFO    ] No update needed
[2026-06-05 03:19:41,957.957 INFO    ] Checking for camera pi updates...
[2026-06-05 03:19:41,995.995 INFO    ] 200
[2026-06-05 03:19:41,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:42,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:19:42,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:19:42,088.088 INFO    ] No camera update needed
[2026-06-05 03:19:42,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:19:42,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:19:42,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:19:42,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:19:44,147.147 INFO    ] ================================================
[2026-06-05 03:19:44,162.162 INFO    ] Launching Daemon at Fri Jun  5 03:19:44 IST 2026
[2026-06-05 03:19:44,173.173 INFO    ] ================================================
[2026-06-05 03:19:44,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:19:44
[2026-06-05 03:19:45,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:19:45,605.605 INFO    ] Initializing speech engine...
[2026-06-05 03:19:45,622.622 INFO    ] 2026-06-05 03:19:45
[2026-06-05 03:19:45,909.909 INFO    ] 2026-06-05 03:19:45
[2026-06-05 03:19:45,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:19:46,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:19:46,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:19:46,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:19:46,292.292 INFO    ] time= 05/06/2026 03:19:46
[2026-06-05 03:19:46,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:19:46,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:19:46,418.418 INFO    ] No existing commands found in stream
[2026-06-05 03:19:51,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:19:51,433.433 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 03:19:52,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:19:52,341.341 INFO    ] Checking for system updates...
[2026-06-05 03:19:52,377.377 INFO    ] 200
[2026-06-05 03:19:52,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:52,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:19:52,442.442 INFO    ] No update needed
[2026-06-05 03:19:52,445.445 INFO    ] Checking for camera pi updates...
[2026-06-05 03:19:52,479.479 INFO    ] 200
[2026-06-05 03:19:52,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:19:52,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:19:52,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:19:52,567.567 INFO    ] No camera update needed
[2026-06-05 03:19:52,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:19:52,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:19:52,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:19:52,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:19:54,622.622 INFO    ] ================================================
[2026-06-05 03:19:54,638.638 INFO    ] Launching Daemon at Fri Jun  5 03:19:54 IST 2026
[2026-06-05 03:19:54,648.648 INFO    ] ================================================
[2026-06-05 03:19:55,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:19:55
[2026-06-05 03:19:55,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:19:56,260.260 INFO    ] Initializing speech engine...
[2026-06-05 03:19:56,270.270 INFO    ] 2026-06-05 03:19:56
[2026-06-05 03:19:56,551.551 INFO    ] 2026-06-05 03:19:56
[2026-06-05 03:19:56,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:19:56,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:19:56,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:19:56,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:19:57,036.036 INFO    ] time= 05/06/2026 03:19:56
[2026-06-05 03:19:57,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:19:57,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:19:57,237.237 INFO    ] No existing commands found in stream
[2026-06-05 03:20:02,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:20:02,276.276 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 03:20:08,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:20:08,505.505 INFO    ] Checking for system updates...
[2026-06-05 03:20:08,544.544 INFO    ] 200
[2026-06-05 03:20:08,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:08,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:20:08,612.612 INFO    ] No update needed
[2026-06-05 03:20:08,614.614 INFO    ] Checking for camera pi updates...
[2026-06-05 03:20:08,659.659 INFO    ] 200
[2026-06-05 03:20:08,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:08,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:20:08,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:20:08,766.766 INFO    ] No camera update needed
[2026-06-05 03:20:08,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:20:08,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:20:08,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:20:08,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:20:10,834.834 INFO    ] ================================================
[2026-06-05 03:20:10,849.849 INFO    ] Launching Daemon at Fri Jun  5 03:20:10 IST 2026
[2026-06-05 03:20:10,860.860 INFO    ] ================================================
[2026-06-05 03:20:11,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:20:11
[2026-06-05 03:20:12,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:20:12,296.296 INFO    ] Initializing speech engine...
[2026-06-05 03:20:12,303.303 INFO    ] 2026-06-05 03:20:12
[2026-06-05 03:20:12,592.592 INFO    ] 2026-06-05 03:20:12
[2026-06-05 03:20:12,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:20:12,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:20:12,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:20:13,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:20:13,066.066 INFO    ] time= 05/06/2026 03:20:13
[2026-06-05 03:20:13,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:20:13,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:20:13,179.179 INFO    ] No existing commands found in stream
[2026-06-05 03:20:18,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:20:18,194.194 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 03:20:22,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:20:22,487.487 INFO    ] Checking for system updates...
[2026-06-05 03:20:22,524.524 INFO    ] 200
[2026-06-05 03:20:22,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:22,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:20:22,592.592 INFO    ] No update needed
[2026-06-05 03:20:22,594.594 INFO    ] Checking for camera pi updates...
[2026-06-05 03:20:22,630.630 INFO    ] 200
[2026-06-05 03:20:22,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:22,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:20:22,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:20:22,728.728 INFO    ] No camera update needed
[2026-06-05 03:20:22,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:20:22,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:20:22,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:20:22,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:20:24,791.791 INFO    ] ================================================
[2026-06-05 03:20:24,806.806 INFO    ] Launching Daemon at Fri Jun  5 03:20:24 IST 2026
[2026-06-05 03:20:24,818.818 INFO    ] ================================================
[2026-06-05 03:20:25,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:20:25
[2026-06-05 03:20:25,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:20:26,247.247 INFO    ] Initializing speech engine...
[2026-06-05 03:20:26,256.256 INFO    ] 2026-06-05 03:20:26
[2026-06-05 03:20:26,503.503 INFO    ] 2026-06-05 03:20:26
[2026-06-05 03:20:26,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:20:26,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:20:26,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:20:26,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:20:26,981.981 INFO    ] time= 05/06/2026 03:20:26
[2026-06-05 03:20:27,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:20:27,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:20:27,125.125 INFO    ] No existing commands found in stream
[2026-06-05 03:20:32,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:20:32,140.140 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 03:20:36,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:20:36,251.251 INFO    ] Checking for system updates...
[2026-06-05 03:20:36,287.287 INFO    ] 200
[2026-06-05 03:20:36,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:36,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:20:36,350.350 INFO    ] No update needed
[2026-06-05 03:20:36,352.352 INFO    ] Checking for camera pi updates...
[2026-06-05 03:20:36,386.386 INFO    ] 200
[2026-06-05 03:20:36,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:36,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:20:36,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:20:36,487.487 INFO    ] No camera update needed
[2026-06-05 03:20:36,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:20:36,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:20:36,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:20:36,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:20:38,544.544 INFO    ] ================================================
[2026-06-05 03:20:38,559.559 INFO    ] Launching Daemon at Fri Jun  5 03:20:38 IST 2026
[2026-06-05 03:20:38,570.570 INFO    ] ================================================
[2026-06-05 03:20:39,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:20:39
[2026-06-05 03:20:39,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:20:40,197.197 INFO    ] Initializing speech engine...
[2026-06-05 03:20:40,205.205 INFO    ] 2026-06-05 03:20:40
[2026-06-05 03:20:40,521.521 INFO    ] 2026-06-05 03:20:40
[2026-06-05 03:20:40,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:20:40,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:20:40,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:20:40,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:20:41,028.028 INFO    ] time= 05/06/2026 03:20:40
[2026-06-05 03:20:41,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:20:41,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:20:41,180.180 INFO    ] No existing commands found in stream
[2026-06-05 03:20:46,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:20:46,201.201 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 03:20:47,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:20:47,040.040 INFO    ] Checking for system updates...
[2026-06-05 03:20:47,079.079 INFO    ] 200
[2026-06-05 03:20:47,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:47,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:20:47,141.141 INFO    ] No update needed
[2026-06-05 03:20:47,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 03:20:47,179.179 INFO    ] 200
[2026-06-05 03:20:47,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:47,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:20:47,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:20:47,260.260 INFO    ] No camera update needed
[2026-06-05 03:20:47,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:20:47,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:20:47,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:20:47,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:20:49,316.316 INFO    ] ================================================
[2026-06-05 03:20:49,331.331 INFO    ] Launching Daemon at Fri Jun  5 03:20:49 IST 2026
[2026-06-05 03:20:49,342.342 INFO    ] ================================================
[2026-06-05 03:20:49,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:20:49
[2026-06-05 03:20:50,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:20:50,795.795 INFO    ] Initializing speech engine...
[2026-06-05 03:20:50,819.819 INFO    ] 2026-06-05 03:20:50
[2026-06-05 03:20:51,092.092 INFO    ] 2026-06-05 03:20:51
[2026-06-05 03:20:51,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:20:51,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:20:51,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:20:51,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:20:51,566.566 INFO    ] time= 05/06/2026 03:20:51
[2026-06-05 03:20:51,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:20:51,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:20:51,804.804 INFO    ] No existing commands found in stream
[2026-06-05 03:20:56,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:20:56,820.820 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 03:20:57,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:20:57,985.985 INFO    ] Checking for system updates...
[2026-06-05 03:20:58,026.026 INFO    ] 200
[2026-06-05 03:20:58,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:58,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:20:58,087.087 INFO    ] No update needed
[2026-06-05 03:20:58,089.089 INFO    ] Checking for camera pi updates...
[2026-06-05 03:20:58,124.124 INFO    ] 200
[2026-06-05 03:20:58,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:20:58,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:20:58,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:20:58,303.303 INFO    ] No camera update needed
[2026-06-05 03:20:58,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:20:58,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:20:58,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:20:58,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:21:00,364.364 INFO    ] ================================================
[2026-06-05 03:21:00,379.379 INFO    ] Launching Daemon at Fri Jun  5 03:21:00 IST 2026
[2026-06-05 03:21:00,390.390 INFO    ] ================================================
[2026-06-05 03:21:00,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:21:00
[2026-06-05 03:21:01,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:21:02,080.080 INFO    ] Initializing speech engine...
[2026-06-05 03:21:02,097.097 INFO    ] 2026-06-05 03:21:02
[2026-06-05 03:21:02,383.383 INFO    ] 2026-06-05 03:21:02
[2026-06-05 03:21:02,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:21:02,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:21:02,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:21:02,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:21:02,800.800 INFO    ] time= 05/06/2026 03:21:02
[2026-06-05 03:21:02,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:21:02,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:21:02,902.902 INFO    ] No existing commands found in stream
[2026-06-05 03:21:07,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:21:07,918.918 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 03:21:10,958.958 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:21:10,961.961 INFO    ] Checking for system updates...
[2026-06-05 03:21:11,003.003 INFO    ] 200
[2026-06-05 03:21:11,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:11,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:21:11,070.070 INFO    ] No update needed
[2026-06-05 03:21:11,073.073 INFO    ] Checking for camera pi updates...
[2026-06-05 03:21:11,111.111 INFO    ] 200
[2026-06-05 03:21:11,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:11,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:21:11,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:21:11,188.188 INFO    ] No camera update needed
[2026-06-05 03:21:11,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:21:11,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:21:11,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:21:11,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:21:13,245.245 INFO    ] ================================================
[2026-06-05 03:21:13,260.260 INFO    ] Launching Daemon at Fri Jun  5 03:21:13 IST 2026
[2026-06-05 03:21:13,270.270 INFO    ] ================================================
[2026-06-05 03:21:13,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:21:13
[2026-06-05 03:21:14,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:21:14,724.724 INFO    ] Initializing speech engine...
[2026-06-05 03:21:14,728.728 INFO    ] 2026-06-05 03:21:14
[2026-06-05 03:21:15,033.033 INFO    ] 2026-06-05 03:21:14
[2026-06-05 03:21:15,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:21:15,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:21:15,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:21:15,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:21:15,381.381 INFO    ] time= 05/06/2026 03:21:15
[2026-06-05 03:21:15,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:21:15,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:21:15,461.461 INFO    ] No existing commands found in stream
[2026-06-05 03:21:20,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:21:20,477.477 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 03:21:24,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:21:24,476.476 INFO    ] Checking for system updates...
[2026-06-05 03:21:24,512.512 INFO    ] 200
[2026-06-05 03:21:24,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:24,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:21:24,570.570 INFO    ] No update needed
[2026-06-05 03:21:24,573.573 INFO    ] Checking for camera pi updates...
[2026-06-05 03:21:24,610.610 INFO    ] 200
[2026-06-05 03:21:24,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:24,658.658 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:21:24,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:21:24,713.713 INFO    ] No camera update needed
[2026-06-05 03:21:24,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:21:24,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:21:24,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:21:24,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:21:26,772.772 INFO    ] ================================================
[2026-06-05 03:21:26,787.787 INFO    ] Launching Daemon at Fri Jun  5 03:21:26 IST 2026
[2026-06-05 03:21:26,798.798 INFO    ] ================================================
[2026-06-05 03:21:27,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:21:27
[2026-06-05 03:21:27,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:21:28,237.237 INFO    ] Initializing speech engine...
[2026-06-05 03:21:28,246.246 INFO    ] 2026-06-05 03:21:28
[2026-06-05 03:21:28,504.504 INFO    ] 2026-06-05 03:21:28
[2026-06-05 03:21:28,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:21:28,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:21:28,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:21:28,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:21:28,963.963 INFO    ] time= 05/06/2026 03:21:28
[2026-06-05 03:21:29,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:21:29,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:21:29,110.110 INFO    ] No existing commands found in stream
[2026-06-05 03:21:34,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:21:34,125.125 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 03:21:38,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:21:38,017.017 INFO    ] Checking for system updates...
[2026-06-05 03:21:38,052.052 INFO    ] 200
[2026-06-05 03:21:38,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:38,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:21:38,112.112 INFO    ] No update needed
[2026-06-05 03:21:38,115.115 INFO    ] Checking for camera pi updates...
[2026-06-05 03:21:38,149.149 INFO    ] 200
[2026-06-05 03:21:38,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:38,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:21:38,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:21:38,245.245 INFO    ] No camera update needed
[2026-06-05 03:21:38,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:21:38,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:21:38,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:21:38,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:21:40,302.302 INFO    ] ================================================
[2026-06-05 03:21:40,317.317 INFO    ] Launching Daemon at Fri Jun  5 03:21:40 IST 2026
[2026-06-05 03:21:40,328.328 INFO    ] ================================================
[2026-06-05 03:21:40,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:21:40
[2026-06-05 03:21:41,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:21:41,795.795 INFO    ] Initializing speech engine...
[2026-06-05 03:21:41,805.805 INFO    ] 2026-06-05 03:21:41
[2026-06-05 03:21:42,054.054 INFO    ] 2026-06-05 03:21:42
[2026-06-05 03:21:42,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:21:42,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:21:42,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:21:42,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:21:42,541.541 INFO    ] time= 05/06/2026 03:21:42
[2026-06-05 03:21:42,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:21:42,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:21:42,746.746 INFO    ] No existing commands found in stream
[2026-06-05 03:21:47,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:21:47,779.779 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 03:21:48,637.637 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:21:48,639.639 INFO    ] Checking for system updates...
[2026-06-05 03:21:48,677.677 INFO    ] 200
[2026-06-05 03:21:48,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:48,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:21:48,741.741 INFO    ] No update needed
[2026-06-05 03:21:48,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 03:21:48,777.777 INFO    ] 200
[2026-06-05 03:21:48,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:48,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:21:48,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:21:48,875.875 INFO    ] No camera update needed
[2026-06-05 03:21:48,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:21:48,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:21:48,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:21:48,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:21:50,935.935 INFO    ] ================================================
[2026-06-05 03:21:50,950.950 INFO    ] Launching Daemon at Fri Jun  5 03:21:50 IST 2026
[2026-06-05 03:21:50,961.961 INFO    ] ================================================
[2026-06-05 03:21:51,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:21:51
[2026-06-05 03:21:52,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:21:52,427.427 INFO    ] Initializing speech engine...
[2026-06-05 03:21:52,439.439 INFO    ] 2026-06-05 03:21:52
[2026-06-05 03:21:52,728.728 INFO    ] 2026-06-05 03:21:52
[2026-06-05 03:21:52,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:21:52,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:21:52,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:21:53,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:21:53,153.153 INFO    ] time= 05/06/2026 03:21:53
[2026-06-05 03:21:53,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:21:53,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:21:53,238.238 INFO    ] No existing commands found in stream
[2026-06-05 03:21:58,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:21:58,253.253 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 03:21:59,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:21:59,496.496 INFO    ] Checking for system updates...
[2026-06-05 03:21:59,537.537 INFO    ] 200
[2026-06-05 03:21:59,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:59,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:21:59,602.602 INFO    ] No update needed
[2026-06-05 03:21:59,604.604 INFO    ] Checking for camera pi updates...
[2026-06-05 03:21:59,644.644 INFO    ] 200
[2026-06-05 03:21:59,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:21:59,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:21:59,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:21:59,739.739 INFO    ] No camera update needed
[2026-06-05 03:21:59,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:21:59,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:21:59,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:21:59,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:22:01,794.794 INFO    ] ================================================
[2026-06-05 03:22:01,809.809 INFO    ] Launching Daemon at Fri Jun  5 03:22:01 IST 2026
[2026-06-05 03:22:01,820.820 INFO    ] ================================================
[2026-06-05 03:22:02,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:22:02
[2026-06-05 03:22:03,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:22:03,612.612 INFO    ] Initializing speech engine...
[2026-06-05 03:22:03,630.630 INFO    ] 2026-06-05 03:22:03
[2026-06-05 03:22:03,904.904 INFO    ] 2026-06-05 03:22:03
[2026-06-05 03:22:03,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:22:04,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:22:04,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:22:04,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:22:04,278.278 INFO    ] time= 05/06/2026 03:22:04
[2026-06-05 03:22:04,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:22:04,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:22:04,471.471 INFO    ] No existing commands found in stream
[2026-06-05 03:22:09,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:22:09,485.485 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 03:22:09,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:22:09,892.892 INFO    ] Checking for system updates...
[2026-06-05 03:22:11,752.752 INFO    ] 200
[2026-06-05 03:22:11,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:22:11,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:22:11,815.815 INFO    ] No update needed
[2026-06-05 03:22:11,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 03:22:11,852.852 INFO    ] 200
[2026-06-05 03:22:11,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:22:11,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:22:11,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:22:11,941.941 INFO    ] No camera update needed
[2026-06-05 03:22:11,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:22:11,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:22:11,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:22:11,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:22:14,996.996 INFO    ] ================================================
[2026-06-05 03:22:14,012.012 INFO    ] Launching Daemon at Fri Jun  5 03:22:14 IST 2026
[2026-06-05 03:22:14,023.023 INFO    ] ================================================
[2026-06-05 03:22:14,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:22:14
[2026-06-05 03:22:15,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:22:15,424.424 INFO    ] Initializing speech engine...
[2026-06-05 03:22:15,432.432 INFO    ] 2026-06-05 03:22:15
[2026-06-05 03:22:15,702.702 INFO    ] 2026-06-05 03:22:15
[2026-06-05 03:22:15,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:22:15,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:22:15,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:22:16,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:22:16,173.173 INFO    ] time= 05/06/2026 03:22:16
[2026-06-05 03:22:16,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:22:16,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:22:16,319.319 INFO    ] No existing commands found in stream
[2026-06-05 03:22:21,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:22:21,334.334 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 03:22:25,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:22:25,328.328 INFO    ] Checking for system updates...
[2026-06-05 03:22:25,368.368 INFO    ] 200
[2026-06-05 03:22:25,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:22:25,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:22:25,426.426 INFO    ] No update needed
[2026-06-05 03:22:25,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 03:22:25,466.466 INFO    ] 200
[2026-06-05 03:22:25,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:22:25,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:22:25,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:22:25,556.556 INFO    ] No camera update needed
[2026-06-05 03:22:25,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:22:25,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:22:25,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:22:25,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:22:27,612.612 INFO    ] ================================================
[2026-06-05 03:22:27,627.627 INFO    ] Launching Daemon at Fri Jun  5 03:22:27 IST 2026
[2026-06-05 03:22:27,638.638 INFO    ] ================================================
[2026-06-05 03:22:28,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:22:28
[2026-06-05 03:22:28,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:22:29,125.125 INFO    ] Initializing speech engine...
[2026-06-05 03:22:29,131.131 INFO    ] 2026-06-05 03:22:29
[2026-06-05 03:22:29,382.382 INFO    ] 2026-06-05 03:22:29
[2026-06-05 03:22:29,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:22:29,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:22:29,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:22:29,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:22:29,829.829 INFO    ] time= 05/06/2026 03:22:29
[2026-06-05 03:22:29,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:22:29,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:22:29,997.997 INFO    ] No existing commands found in stream
[2026-06-05 03:22:35,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:22:35,012.012 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 03:22:39,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:22:39,209.209 INFO    ] Checking for system updates...
[2026-06-05 03:22:39,249.249 INFO    ] 200
[2026-06-05 03:22:39,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:22:39,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:22:39,313.313 INFO    ] No update needed
[2026-06-05 03:22:39,315.315 INFO    ] Checking for camera pi updates...
[2026-06-05 03:22:39,356.356 INFO    ] 200
[2026-06-05 03:22:39,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:22:39,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:22:39,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:22:39,432.432 INFO    ] No camera update needed
[2026-06-05 03:22:39,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:22:39,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:22:39,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:22:39,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:22:41,488.488 INFO    ] ================================================
[2026-06-05 03:22:41,504.504 INFO    ] Launching Daemon at Fri Jun  5 03:22:41 IST 2026
[2026-06-05 03:22:41,515.515 INFO    ] ================================================
[2026-06-05 03:22:42,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:22:42
[2026-06-05 03:22:42,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:22:43,173.173 INFO    ] Initializing speech engine...
[2026-06-05 03:22:43,182.182 INFO    ] 2026-06-05 03:22:43
[2026-06-05 03:22:43,432.432 INFO    ] 2026-06-05 03:22:43
[2026-06-05 03:22:43,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:22:43,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:22:43,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:22:43,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:22:43,814.814 INFO    ] time= 05/06/2026 03:22:43
[2026-06-05 03:22:43,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:22:43,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:22:44,000.000 INFO    ] No existing commands found in stream
[2026-06-05 03:22:49,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:22:49,028.028 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 03:22:52,475.475 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:22:52,478.478 INFO    ] Checking for system updates...
[2026-06-05 03:22:52,515.515 INFO    ] 200
[2026-06-05 03:22:52,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:22:52,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:22:52,581.581 INFO    ] No update needed
[2026-06-05 03:22:52,584.584 INFO    ] Checking for camera pi updates...
[2026-06-05 03:22:52,619.619 INFO    ] 200
[2026-06-05 03:22:52,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:22:52,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:22:52,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:22:52,708.708 INFO    ] No camera update needed
[2026-06-05 03:22:52,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:22:52,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:22:52,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:22:52,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:22:54,769.769 INFO    ] ================================================
[2026-06-05 03:22:54,785.785 INFO    ] Launching Daemon at Fri Jun  5 03:22:54 IST 2026
[2026-06-05 03:22:54,796.796 INFO    ] ================================================
[2026-06-05 03:22:55,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:22:55
[2026-06-05 03:22:56,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:22:56,385.385 INFO    ] Initializing speech engine...
[2026-06-05 03:22:56,394.394 INFO    ] 2026-06-05 03:22:56
[2026-06-05 03:22:56,659.659 INFO    ] 2026-06-05 03:22:56
[2026-06-05 03:22:56,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:22:56,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:22:56,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:22:57,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:22:57,147.147 INFO    ] time= 05/06/2026 03:22:57
[2026-06-05 03:22:57,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:22:57,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:22:57,291.291 INFO    ] No existing commands found in stream
[2026-06-05 03:23:02,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:23:02,308.308 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 03:23:05,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:23:05,103.103 INFO    ] Checking for system updates...
[2026-06-05 03:23:05,144.144 INFO    ] 200
[2026-06-05 03:23:05,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:05,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:23:05,210.210 INFO    ] No update needed
[2026-06-05 03:23:05,213.213 INFO    ] Checking for camera pi updates...
[2026-06-05 03:23:05,255.255 INFO    ] 200
[2026-06-05 03:23:05,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:05,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:23:05,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:23:05,362.362 INFO    ] No camera update needed
[2026-06-05 03:23:05,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:23:05,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:23:05,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:23:05,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:23:07,421.421 INFO    ] ================================================
[2026-06-05 03:23:07,437.437 INFO    ] Launching Daemon at Fri Jun  5 03:23:07 IST 2026
[2026-06-05 03:23:07,448.448 INFO    ] ================================================
[2026-06-05 03:23:08,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:23:08
[2026-06-05 03:23:08,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:23:08,911.911 INFO    ] Initializing speech engine...
[2026-06-05 03:23:08,918.918 INFO    ] 2026-06-05 03:23:08
[2026-06-05 03:23:09,179.179 INFO    ] 2026-06-05 03:23:09
[2026-06-05 03:23:09,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:23:09,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:23:09,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:23:09,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:23:09,644.644 INFO    ] time= 05/06/2026 03:23:09
[2026-06-05 03:23:09,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:23:09,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:23:09,788.788 INFO    ] No existing commands found in stream
[2026-06-05 03:23:14,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:23:14,803.803 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 03:23:16,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:23:16,637.637 INFO    ] Checking for system updates...
[2026-06-05 03:23:16,677.677 INFO    ] 200
[2026-06-05 03:23:16,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:16,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:23:16,739.739 INFO    ] No update needed
[2026-06-05 03:23:16,742.742 INFO    ] Checking for camera pi updates...
[2026-06-05 03:23:16,776.776 INFO    ] 200
[2026-06-05 03:23:16,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:16,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:23:16,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:23:16,871.871 INFO    ] No camera update needed
[2026-06-05 03:23:16,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:23:16,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:23:16,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:23:16,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:23:18,932.932 INFO    ] ================================================
[2026-06-05 03:23:18,948.948 INFO    ] Launching Daemon at Fri Jun  5 03:23:18 IST 2026
[2026-06-05 03:23:18,960.960 INFO    ] ================================================
[2026-06-05 03:23:19,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:23:19
[2026-06-05 03:23:20,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:23:20,388.388 INFO    ] Initializing speech engine...
[2026-06-05 03:23:20,397.397 INFO    ] 2026-06-05 03:23:20
[2026-06-05 03:23:20,656.656 INFO    ] 2026-06-05 03:23:20
[2026-06-05 03:23:20,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:23:20,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:23:20,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:23:21,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:23:21,130.130 INFO    ] time= 05/06/2026 03:23:21
[2026-06-05 03:23:21,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:23:21,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:23:21,279.279 INFO    ] No existing commands found in stream
[2026-06-05 03:23:26,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:23:26,294.294 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 03:23:26,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:23:26,753.753 INFO    ] Checking for system updates...
[2026-06-05 03:23:26,789.789 INFO    ] 200
[2026-06-05 03:23:26,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:26,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:23:26,847.847 INFO    ] No update needed
[2026-06-05 03:23:26,850.850 INFO    ] Checking for camera pi updates...
[2026-06-05 03:23:26,884.884 INFO    ] 200
[2026-06-05 03:23:26,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:26,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:23:26,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:23:26,981.981 INFO    ] No camera update needed
[2026-06-05 03:23:26,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:23:26,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:23:26,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:23:26,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:23:29,038.038 INFO    ] ================================================
[2026-06-05 03:23:29,053.053 INFO    ] Launching Daemon at Fri Jun  5 03:23:29 IST 2026
[2026-06-05 03:23:29,065.065 INFO    ] ================================================
[2026-06-05 03:23:29,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:23:29
[2026-06-05 03:23:30,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:23:30,521.521 INFO    ] Initializing speech engine...
[2026-06-05 03:23:30,529.529 INFO    ] 2026-06-05 03:23:30
[2026-06-05 03:23:30,787.787 INFO    ] 2026-06-05 03:23:30
[2026-06-05 03:23:30,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:23:31,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:23:31,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:23:31,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:23:31,246.246 INFO    ] time= 05/06/2026 03:23:31
[2026-06-05 03:23:31,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:23:31,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:23:31,451.451 INFO    ] No existing commands found in stream
[2026-06-05 03:23:36,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:23:36,482.482 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 03:23:37,937.937 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:23:37,940.940 INFO    ] Checking for system updates...
[2026-06-05 03:23:37,981.981 INFO    ] 200
[2026-06-05 03:23:37,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:38,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:23:38,040.040 INFO    ] No update needed
[2026-06-05 03:23:38,043.043 INFO    ] Checking for camera pi updates...
[2026-06-05 03:23:38,079.079 INFO    ] 200
[2026-06-05 03:23:38,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:38,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:23:38,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:23:38,179.179 INFO    ] No camera update needed
[2026-06-05 03:23:38,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:23:38,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:23:38,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:23:38,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:23:40,242.242 INFO    ] ================================================
[2026-06-05 03:23:40,259.259 INFO    ] Launching Daemon at Fri Jun  5 03:23:40 IST 2026
[2026-06-05 03:23:40,273.273 INFO    ] ================================================
[2026-06-05 03:23:40,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:23:40
[2026-06-05 03:23:41,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:23:41,933.933 INFO    ] Initializing speech engine...
[2026-06-05 03:23:41,944.944 INFO    ] 2026-06-05 03:23:41
[2026-06-05 03:23:42,263.263 INFO    ] 2026-06-05 03:23:42
[2026-06-05 03:23:42,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:23:42,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:23:42,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:23:42,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:23:42,681.681 INFO    ] time= 05/06/2026 03:23:42
[2026-06-05 03:23:42,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:23:42,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:23:42,834.834 INFO    ] No existing commands found in stream
[2026-06-05 03:23:47,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:23:47,850.850 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 03:23:50,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:23:50,578.578 INFO    ] Checking for system updates...
[2026-06-05 03:23:50,620.620 INFO    ] 200
[2026-06-05 03:23:50,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:50,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:23:50,685.685 INFO    ] No update needed
[2026-06-05 03:23:50,687.687 INFO    ] Checking for camera pi updates...
[2026-06-05 03:23:50,739.739 INFO    ] 200
[2026-06-05 03:23:50,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:23:50,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:23:50,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:23:50,828.828 INFO    ] No camera update needed
[2026-06-05 03:23:50,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:23:50,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:23:50,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:23:50,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:23:52,883.883 INFO    ] ================================================
[2026-06-05 03:23:52,899.899 INFO    ] Launching Daemon at Fri Jun  5 03:23:52 IST 2026
[2026-06-05 03:23:52,910.910 INFO    ] ================================================
[2026-06-05 03:23:53,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:23:53
[2026-06-05 03:23:54,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:23:54,362.362 INFO    ] Initializing speech engine...
[2026-06-05 03:23:54,379.379 INFO    ] 2026-06-05 03:23:54
[2026-06-05 03:23:54,665.665 INFO    ] 2026-06-05 03:23:54
[2026-06-05 03:23:54,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:23:54,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:23:54,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:23:55,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:23:55,079.079 INFO    ] time= 05/06/2026 03:23:55
[2026-06-05 03:23:55,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:23:55,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:23:55,163.163 INFO    ] No existing commands found in stream
[2026-06-05 03:24:00,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:24:00,179.179 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 03:24:02,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:24:02,935.935 INFO    ] Checking for system updates...
[2026-06-05 03:24:02,977.977 INFO    ] 200
[2026-06-05 03:24:02,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:03,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:24:03,042.042 INFO    ] No update needed
[2026-06-05 03:24:03,049.049 INFO    ] Checking for camera pi updates...
[2026-06-05 03:24:03,106.106 INFO    ] 200
[2026-06-05 03:24:03,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:03,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:24:03,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:24:03,195.195 INFO    ] No camera update needed
[2026-06-05 03:24:03,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:24:03,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:24:03,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:24:03,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:24:05,263.263 INFO    ] ================================================
[2026-06-05 03:24:05,279.279 INFO    ] Launching Daemon at Fri Jun  5 03:24:05 IST 2026
[2026-06-05 03:24:05,290.290 INFO    ] ================================================
[2026-06-05 03:24:05,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:24:05
[2026-06-05 03:24:06,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:24:06,775.775 INFO    ] Initializing speech engine...
[2026-06-05 03:24:06,789.789 INFO    ] 2026-06-05 03:24:06
[2026-06-05 03:24:07,071.071 INFO    ] 2026-06-05 03:24:07
[2026-06-05 03:24:07,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:24:07,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:24:07,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:24:07,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:24:07,568.568 INFO    ] time= 05/06/2026 03:24:07
[2026-06-05 03:24:07,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:24:07,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:24:07,718.718 INFO    ] No existing commands found in stream
[2026-06-05 03:24:12,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:24:12,733.733 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 03:24:13,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:24:13,263.263 INFO    ] Checking for system updates...
[2026-06-05 03:24:13,300.300 INFO    ] 200
[2026-06-05 03:24:13,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:13,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:24:13,647.647 INFO    ] No update needed
[2026-06-05 03:24:13,650.650 INFO    ] Checking for camera pi updates...
[2026-06-05 03:24:13,700.700 INFO    ] 200
[2026-06-05 03:24:13,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:13,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:24:13,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:24:13,802.802 INFO    ] No camera update needed
[2026-06-05 03:24:13,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:24:13,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:24:13,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:24:13,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:24:15,860.860 INFO    ] ================================================
[2026-06-05 03:24:15,877.877 INFO    ] Launching Daemon at Fri Jun  5 03:24:15 IST 2026
[2026-06-05 03:24:15,888.888 INFO    ] ================================================
[2026-06-05 03:24:16,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:24:16
[2026-06-05 03:24:17,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:24:17,303.303 INFO    ] Initializing speech engine...
[2026-06-05 03:24:17,312.312 INFO    ] 2026-06-05 03:24:17
[2026-06-05 03:24:17,602.602 INFO    ] 2026-06-05 03:24:17
[2026-06-05 03:24:17,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:24:17,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:24:17,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:24:18,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:24:18,019.019 INFO    ] time= 05/06/2026 03:24:18
[2026-06-05 03:24:18,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:24:18,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:24:18,090.090 INFO    ] No existing commands found in stream
[2026-06-05 03:24:23,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:24:23,123.123 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 03:24:25,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:24:25,360.360 INFO    ] Checking for system updates...
[2026-06-05 03:24:25,407.407 INFO    ] 200
[2026-06-05 03:24:25,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:25,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:24:25,496.496 INFO    ] No update needed
[2026-06-05 03:24:25,499.499 INFO    ] Checking for camera pi updates...
[2026-06-05 03:24:25,537.537 INFO    ] 200
[2026-06-05 03:24:25,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:25,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:24:25,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:24:25,634.634 INFO    ] No camera update needed
[2026-06-05 03:24:25,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:24:25,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:24:25,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:24:25,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:24:27,691.691 INFO    ] ================================================
[2026-06-05 03:24:27,706.706 INFO    ] Launching Daemon at Fri Jun  5 03:24:27 IST 2026
[2026-06-05 03:24:27,717.717 INFO    ] ================================================
[2026-06-05 03:24:28,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:24:28
[2026-06-05 03:24:28,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:24:29,154.154 INFO    ] Initializing speech engine...
[2026-06-05 03:24:29,175.175 INFO    ] 2026-06-05 03:24:29
[2026-06-05 03:24:29,454.454 INFO    ] 2026-06-05 03:24:29
[2026-06-05 03:24:29,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:24:29,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:24:29,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:24:29,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:24:29,919.919 INFO    ] time= 05/06/2026 03:24:29
[2026-06-05 03:24:29,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:24:29,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:24:30,095.095 INFO    ] No existing commands found in stream
[2026-06-05 03:24:35,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:24:35,108.108 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 03:24:36,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:24:36,981.981 INFO    ] Checking for system updates...
[2026-06-05 03:24:37,020.020 INFO    ] 200
[2026-06-05 03:24:37,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:37,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:24:37,104.104 INFO    ] No update needed
[2026-06-05 03:24:37,107.107 INFO    ] Checking for camera pi updates...
[2026-06-05 03:24:37,141.141 INFO    ] 200
[2026-06-05 03:24:37,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:37,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:24:37,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:24:37,233.233 INFO    ] No camera update needed
[2026-06-05 03:24:37,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:24:37,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:24:37,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:24:37,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:24:39,289.289 INFO    ] ================================================
[2026-06-05 03:24:39,305.305 INFO    ] Launching Daemon at Fri Jun  5 03:24:39 IST 2026
[2026-06-05 03:24:39,316.316 INFO    ] ================================================
[2026-06-05 03:24:39,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:24:39
[2026-06-05 03:24:40,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:24:40,744.744 INFO    ] Initializing speech engine...
[2026-06-05 03:24:40,765.765 INFO    ] 2026-06-05 03:24:40
[2026-06-05 03:24:41,030.030 INFO    ] 2026-06-05 03:24:41
[2026-06-05 03:24:41,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:24:41,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:24:41,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:24:41,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:24:41,403.403 INFO    ] time= 05/06/2026 03:24:41
[2026-06-05 03:24:41,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:24:41,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:24:41,525.525 INFO    ] No existing commands found in stream
[2026-06-05 03:24:46,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:24:46,540.540 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 03:24:48,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:24:48,708.708 INFO    ] Checking for system updates...
[2026-06-05 03:24:48,746.746 INFO    ] 200
[2026-06-05 03:24:48,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:48,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:24:48,804.804 INFO    ] No update needed
[2026-06-05 03:24:48,807.807 INFO    ] Checking for camera pi updates...
[2026-06-05 03:24:48,847.847 INFO    ] 200
[2026-06-05 03:24:48,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:24:48,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:24:48,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:24:48,939.939 INFO    ] No camera update needed
[2026-06-05 03:24:48,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:24:48,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:24:48,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:24:48,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:24:51,995.995 INFO    ] ================================================
[2026-06-05 03:24:51,011.011 INFO    ] Launching Daemon at Fri Jun  5 03:24:51 IST 2026
[2026-06-05 03:24:51,022.022 INFO    ] ================================================
[2026-06-05 03:24:51,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:24:51
[2026-06-05 03:24:52,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:24:52,473.473 INFO    ] Initializing speech engine...
[2026-06-05 03:24:52,492.492 INFO    ] 2026-06-05 03:24:52
[2026-06-05 03:24:52,743.743 INFO    ] 2026-06-05 03:24:52
[2026-06-05 03:24:52,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:24:52,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:24:53,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:24:53,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:24:53,226.226 INFO    ] time= 05/06/2026 03:24:53
[2026-06-05 03:24:53,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:24:53,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:24:53,369.369 INFO    ] No existing commands found in stream
[2026-06-05 03:24:58,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:24:58,384.384 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 03:25:00,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:25:00,266.266 INFO    ] Checking for system updates...
[2026-06-05 03:25:00,302.302 INFO    ] 200
[2026-06-05 03:25:00,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:00,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:25:00,360.360 INFO    ] No update needed
[2026-06-05 03:25:00,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 03:25:00,398.398 INFO    ] 200
[2026-06-05 03:25:00,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:00,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:25:00,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:25:00,488.488 INFO    ] No camera update needed
[2026-06-05 03:25:00,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:25:00,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:25:00,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:25:00,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:25:02,548.548 INFO    ] ================================================
[2026-06-05 03:25:02,570.570 INFO    ] Launching Daemon at Fri Jun  5 03:25:02 IST 2026
[2026-06-05 03:25:02,590.590 INFO    ] ================================================
[2026-06-05 03:25:03,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:25:03
[2026-06-05 03:25:03,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:25:04,238.238 INFO    ] Initializing speech engine...
[2026-06-05 03:25:04,247.247 INFO    ] 2026-06-05 03:25:04
[2026-06-05 03:25:04,517.517 INFO    ] 2026-06-05 03:25:04
[2026-06-05 03:25:04,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:25:04,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:25:04,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:25:04,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:25:05,002.002 INFO    ] time= 05/06/2026 03:25:04
[2026-06-05 03:25:05,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:25:05,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:25:05,151.151 INFO    ] No existing commands found in stream
[2026-06-05 03:25:10,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:25:10,167.167 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 03:25:12,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:25:12,781.781 INFO    ] Checking for system updates...
[2026-06-05 03:25:12,818.818 INFO    ] 200
[2026-06-05 03:25:12,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:12,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:25:12,877.877 INFO    ] No update needed
[2026-06-05 03:25:12,880.880 INFO    ] Checking for camera pi updates...
[2026-06-05 03:25:12,917.917 INFO    ] 200
[2026-06-05 03:25:12,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:12,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:25:13,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:25:13,119.119 INFO    ] No camera update needed
[2026-06-05 03:25:13,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:25:13,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:25:13,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:25:13,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:25:15,178.178 INFO    ] ================================================
[2026-06-05 03:25:15,199.199 INFO    ] Launching Daemon at Fri Jun  5 03:25:15 IST 2026
[2026-06-05 03:25:15,210.210 INFO    ] ================================================
[2026-06-05 03:25:15,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:25:15
[2026-06-05 03:25:16,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:25:16,857.857 INFO    ] Initializing speech engine...
[2026-06-05 03:25:16,866.866 INFO    ] 2026-06-05 03:25:16
[2026-06-05 03:25:17,170.170 INFO    ] 2026-06-05 03:25:17
[2026-06-05 03:25:17,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:25:17,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:25:17,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:25:17,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:25:17,682.682 INFO    ] time= 05/06/2026 03:25:17
[2026-06-05 03:25:17,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:25:17,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:25:17,833.833 INFO    ] No existing commands found in stream
[2026-06-05 03:25:22,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:25:22,852.852 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-05 03:25:26,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:25:26,999.999 INFO    ] Checking for system updates...
[2026-06-05 03:25:27,037.037 INFO    ] 200
[2026-06-05 03:25:27,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:27,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:25:27,096.096 INFO    ] No update needed
[2026-06-05 03:25:27,099.099 INFO    ] Checking for camera pi updates...
[2026-06-05 03:25:27,133.133 INFO    ] 200
[2026-06-05 03:25:27,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:27,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:25:27,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:25:27,219.219 INFO    ] No camera update needed
[2026-06-05 03:25:27,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:25:27,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:25:27,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:25:27,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:25:29,276.276 INFO    ] ================================================
[2026-06-05 03:25:29,291.291 INFO    ] Launching Daemon at Fri Jun  5 03:25:29 IST 2026
[2026-06-05 03:25:29,302.302 INFO    ] ================================================
[2026-06-05 03:25:29,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:25:29
[2026-06-05 03:25:30,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:25:30,855.855 INFO    ] Initializing speech engine...
[2026-06-05 03:25:30,869.869 INFO    ] 2026-06-05 03:25:30
[2026-06-05 03:25:31,148.148 INFO    ] 2026-06-05 03:25:31
[2026-06-05 03:25:31,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:25:31,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:25:31,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:25:31,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:25:31,630.630 INFO    ] time= 05/06/2026 03:25:31
[2026-06-05 03:25:31,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:25:31,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:25:31,846.846 INFO    ] No existing commands found in stream
[2026-06-05 03:25:36,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:25:36,877.877 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 03:25:38,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:25:38,513.513 INFO    ] Checking for system updates...
[2026-06-05 03:25:38,551.551 INFO    ] 200
[2026-06-05 03:25:38,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:38,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:25:38,612.612 INFO    ] No update needed
[2026-06-05 03:25:38,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 03:25:38,650.650 INFO    ] 200
[2026-06-05 03:25:38,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:38,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:25:38,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:25:38,741.741 INFO    ] No camera update needed
[2026-06-05 03:25:38,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:25:38,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:25:38,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:25:38,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:25:40,802.802 INFO    ] ================================================
[2026-06-05 03:25:40,817.817 INFO    ] Launching Daemon at Fri Jun  5 03:25:40 IST 2026
[2026-06-05 03:25:40,828.828 INFO    ] ================================================
[2026-06-05 03:25:41,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:25:41
[2026-06-05 03:25:42,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:25:42,293.293 INFO    ] Initializing speech engine...
[2026-06-05 03:25:42,301.301 INFO    ] 2026-06-05 03:25:42
[2026-06-05 03:25:42,572.572 INFO    ] 2026-06-05 03:25:42
[2026-06-05 03:25:42,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:25:42,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:25:42,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:25:42,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:25:43,043.043 INFO    ] time= 05/06/2026 03:25:42
[2026-06-05 03:25:43,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:25:43,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:25:43,235.235 INFO    ] No existing commands found in stream
[2026-06-05 03:25:48,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:25:48,265.265 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 03:25:51,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:25:51,725.725 INFO    ] Checking for system updates...
[2026-06-05 03:25:51,762.762 INFO    ] 200
[2026-06-05 03:25:51,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:51,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:25:51,820.820 INFO    ] No update needed
[2026-06-05 03:25:51,823.823 INFO    ] Checking for camera pi updates...
[2026-06-05 03:25:51,857.857 INFO    ] 200
[2026-06-05 03:25:51,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:25:51,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:25:51,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:25:51,949.949 INFO    ] No camera update needed
[2026-06-05 03:25:51,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:25:51,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:25:51,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:25:51,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:25:54,004.004 INFO    ] ================================================
[2026-06-05 03:25:54,019.019 INFO    ] Launching Daemon at Fri Jun  5 03:25:54 IST 2026
[2026-06-05 03:25:54,030.030 INFO    ] ================================================
[2026-06-05 03:25:54,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:25:54
[2026-06-05 03:25:55,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:25:55,630.630 INFO    ] Initializing speech engine...
[2026-06-05 03:25:55,639.639 INFO    ] 2026-06-05 03:25:55
[2026-06-05 03:25:55,946.946 INFO    ] 2026-06-05 03:25:55
[2026-06-05 03:25:55,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:25:56,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:25:56,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:25:56,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:25:56,415.415 INFO    ] time= 05/06/2026 03:25:56
[2026-06-05 03:25:56,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:25:56,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:25:56,564.564 INFO    ] No existing commands found in stream
[2026-06-05 03:26:01,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:26:01,581.581 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 03:26:05,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:26:05,018.018 INFO    ] Checking for system updates...
[2026-06-05 03:26:05,055.055 INFO    ] 200
[2026-06-05 03:26:05,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:05,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:26:05,114.114 INFO    ] No update needed
[2026-06-05 03:26:05,118.118 INFO    ] Checking for camera pi updates...
[2026-06-05 03:26:05,152.152 INFO    ] 200
[2026-06-05 03:26:05,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:05,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:26:05,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:26:05,238.238 INFO    ] No camera update needed
[2026-06-05 03:26:05,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:26:05,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:26:05,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:26:05,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:26:07,296.296 INFO    ] ================================================
[2026-06-05 03:26:07,311.311 INFO    ] Launching Daemon at Fri Jun  5 03:26:07 IST 2026
[2026-06-05 03:26:07,321.321 INFO    ] ================================================
[2026-06-05 03:26:07,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:26:07
[2026-06-05 03:26:08,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:26:08,785.785 INFO    ] Initializing speech engine...
[2026-06-05 03:26:08,795.795 INFO    ] 2026-06-05 03:26:08
[2026-06-05 03:26:09,044.044 INFO    ] 2026-06-05 03:26:09
[2026-06-05 03:26:09,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:26:09,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:26:09,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:26:09,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:26:09,496.496 INFO    ] time= 05/06/2026 03:26:09
[2026-06-05 03:26:09,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:26:09,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:26:09,663.663 INFO    ] No existing commands found in stream
[2026-06-05 03:26:14,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:26:14,678.678 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 03:26:15,134.134 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:26:15,137.137 INFO    ] Checking for system updates...
[2026-06-05 03:26:15,174.174 INFO    ] 200
[2026-06-05 03:26:15,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:15,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:26:15,233.233 INFO    ] No update needed
[2026-06-05 03:26:15,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 03:26:15,270.270 INFO    ] 200
[2026-06-05 03:26:15,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:15,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:26:15,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:26:15,342.342 INFO    ] No camera update needed
[2026-06-05 03:26:15,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:26:15,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:26:15,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:26:15,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:26:17,399.399 INFO    ] ================================================
[2026-06-05 03:26:17,413.413 INFO    ] Launching Daemon at Fri Jun  5 03:26:17 IST 2026
[2026-06-05 03:26:17,424.424 INFO    ] ================================================
[2026-06-05 03:26:17,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:26:17
[2026-06-05 03:26:18,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:26:18,848.848 INFO    ] Initializing speech engine...
[2026-06-05 03:26:18,851.851 INFO    ] 2026-06-05 03:26:18
[2026-06-05 03:26:19,171.171 INFO    ] 2026-06-05 03:26:19
[2026-06-05 03:26:19,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:26:19,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:26:19,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:26:19,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:26:19,518.518 INFO    ] time= 05/06/2026 03:26:19
[2026-06-05 03:26:19,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:26:19,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:26:19,598.598 INFO    ] No existing commands found in stream
[2026-06-05 03:26:24,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:26:24,612.612 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 03:26:26,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:26:26,452.452 INFO    ] Checking for system updates...
[2026-06-05 03:26:26,488.488 INFO    ] 200
[2026-06-05 03:26:26,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:26,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:26:26,547.547 INFO    ] No update needed
[2026-06-05 03:26:26,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 03:26:26,586.586 INFO    ] 200
[2026-06-05 03:26:26,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:26,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:26:26,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:26:26,673.673 INFO    ] No camera update needed
[2026-06-05 03:26:26,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:26:26,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:26:26,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:26:26,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:26:28,735.735 INFO    ] ================================================
[2026-06-05 03:26:28,750.750 INFO    ] Launching Daemon at Fri Jun  5 03:26:28 IST 2026
[2026-06-05 03:26:28,762.762 INFO    ] ================================================
[2026-06-05 03:26:29,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:26:29
[2026-06-05 03:26:30,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:26:30,381.381 INFO    ] Initializing speech engine...
[2026-06-05 03:26:30,391.391 INFO    ] 2026-06-05 03:26:30
[2026-06-05 03:26:30,668.668 INFO    ] 2026-06-05 03:26:30
[2026-06-05 03:26:30,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:26:30,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:26:30,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:26:31,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:26:31,155.155 INFO    ] time= 05/06/2026 03:26:31
[2026-06-05 03:26:31,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:26:31,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:26:31,306.306 INFO    ] No existing commands found in stream
[2026-06-05 03:26:36,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:26:36,335.335 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 03:26:39,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:26:39,436.436 INFO    ] Checking for system updates...
[2026-06-05 03:26:39,473.473 INFO    ] 200
[2026-06-05 03:26:39,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:39,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:26:39,533.533 INFO    ] No update needed
[2026-06-05 03:26:39,536.536 INFO    ] Checking for camera pi updates...
[2026-06-05 03:26:39,570.570 INFO    ] 200
[2026-06-05 03:26:39,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:39,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:26:39,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:26:39,668.668 INFO    ] No camera update needed
[2026-06-05 03:26:39,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:26:39,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:26:39,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:26:39,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:26:41,725.725 INFO    ] ================================================
[2026-06-05 03:26:41,740.740 INFO    ] Launching Daemon at Fri Jun  5 03:26:41 IST 2026
[2026-06-05 03:26:41,751.751 INFO    ] ================================================
[2026-06-05 03:26:42,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:26:42
[2026-06-05 03:26:42,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:26:43,238.238 INFO    ] Initializing speech engine...
[2026-06-05 03:26:43,263.263 INFO    ] 2026-06-05 03:26:43
[2026-06-05 03:26:43,532.532 INFO    ] 2026-06-05 03:26:43
[2026-06-05 03:26:43,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:26:43,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:26:43,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:26:44,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:26:44,013.013 INFO    ] time= 05/06/2026 03:26:44
[2026-06-05 03:26:44,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:26:44,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:26:44,181.181 INFO    ] No existing commands found in stream
[2026-06-05 03:26:49,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:26:49,194.194 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 03:26:51,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:26:51,219.219 INFO    ] Checking for system updates...
[2026-06-05 03:26:51,256.256 INFO    ] 200
[2026-06-05 03:26:51,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:51,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:26:51,314.314 INFO    ] No update needed
[2026-06-05 03:26:51,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 03:26:51,350.350 INFO    ] 200
[2026-06-05 03:26:51,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:26:51,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:26:51,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:26:51,439.439 INFO    ] No camera update needed
[2026-06-05 03:26:51,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:26:51,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:26:51,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:26:51,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:26:53,496.496 INFO    ] ================================================
[2026-06-05 03:26:53,510.510 INFO    ] Launching Daemon at Fri Jun  5 03:26:53 IST 2026
[2026-06-05 03:26:53,521.521 INFO    ] ================================================
[2026-06-05 03:26:54,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:26:54
[2026-06-05 03:26:54,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:26:55,114.114 INFO    ] Initializing speech engine...
[2026-06-05 03:26:55,126.126 INFO    ] 2026-06-05 03:26:55
[2026-06-05 03:26:55,386.386 INFO    ] 2026-06-05 03:26:55
[2026-06-05 03:26:55,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:26:55,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:26:55,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:26:55,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:26:55,887.887 INFO    ] time= 05/06/2026 03:26:55
[2026-06-05 03:26:55,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:26:55,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:26:56,004.004 INFO    ] No existing commands found in stream
[2026-06-05 03:27:01,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:27:01,020.020 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 03:27:05,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:27:05,066.066 INFO    ] Checking for system updates...
[2026-06-05 03:27:05,104.104 INFO    ] 200
[2026-06-05 03:27:05,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:05,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:27:05,167.167 INFO    ] No update needed
[2026-06-05 03:27:05,170.170 INFO    ] Checking for camera pi updates...
[2026-06-05 03:27:05,206.206 INFO    ] 200
[2026-06-05 03:27:05,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:05,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:27:05,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:27:05,291.291 INFO    ] No camera update needed
[2026-06-05 03:27:05,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:27:05,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:27:05,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:27:05,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:27:07,346.346 INFO    ] ================================================
[2026-06-05 03:27:07,361.361 INFO    ] Launching Daemon at Fri Jun  5 03:27:07 IST 2026
[2026-06-05 03:27:07,372.372 INFO    ] ================================================
[2026-06-05 03:27:07,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:27:07
[2026-06-05 03:27:08,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:27:08,910.910 INFO    ] Initializing speech engine...
[2026-06-05 03:27:08,922.922 INFO    ] 2026-06-05 03:27:08
[2026-06-05 03:27:09,198.198 INFO    ] 2026-06-05 03:27:09
[2026-06-05 03:27:09,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:27:09,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:27:09,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:27:09,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:27:09,734.734 INFO    ] time= 05/06/2026 03:27:09
[2026-06-05 03:27:09,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:27:09,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:27:09,871.871 INFO    ] No existing commands found in stream
[2026-06-05 03:27:14,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:27:14,900.900 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 03:27:18,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:27:18,784.784 INFO    ] Checking for system updates...
[2026-06-05 03:27:18,821.821 INFO    ] 200
[2026-06-05 03:27:18,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:18,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:27:18,880.880 INFO    ] No update needed
[2026-06-05 03:27:18,882.882 INFO    ] Checking for camera pi updates...
[2026-06-05 03:27:18,916.916 INFO    ] 200
[2026-06-05 03:27:18,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:18,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:27:19,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:27:19,103.103 INFO    ] No camera update needed
[2026-06-05 03:27:19,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:27:19,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:27:19,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:27:19,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:27:21,157.157 INFO    ] ================================================
[2026-06-05 03:27:21,172.172 INFO    ] Launching Daemon at Fri Jun  5 03:27:21 IST 2026
[2026-06-05 03:27:21,183.183 INFO    ] ================================================
[2026-06-05 03:27:21,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:27:21
[2026-06-05 03:27:22,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:27:22,642.642 INFO    ] Initializing speech engine...
[2026-06-05 03:27:22,653.653 INFO    ] 2026-06-05 03:27:22
[2026-06-05 03:27:22,912.912 INFO    ] 2026-06-05 03:27:22
[2026-06-05 03:27:22,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:27:23,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:27:23,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:27:23,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:27:23,373.373 INFO    ] time= 05/06/2026 03:27:23
[2026-06-05 03:27:23,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:27:23,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:27:23,529.529 INFO    ] No existing commands found in stream
[2026-06-05 03:27:28,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:27:28,557.557 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 03:27:31,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:27:31,373.373 INFO    ] Checking for system updates...
[2026-06-05 03:27:31,410.410 INFO    ] 200
[2026-06-05 03:27:31,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:31,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:27:31,467.467 INFO    ] No update needed
[2026-06-05 03:27:31,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 03:27:31,504.504 INFO    ] 200
[2026-06-05 03:27:31,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:31,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:27:31,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:27:31,591.591 INFO    ] No camera update needed
[2026-06-05 03:27:31,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:27:31,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:27:31,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:27:31,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:27:33,653.653 INFO    ] ================================================
[2026-06-05 03:27:33,668.668 INFO    ] Launching Daemon at Fri Jun  5 03:27:33 IST 2026
[2026-06-05 03:27:33,679.679 INFO    ] ================================================
[2026-06-05 03:27:34,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:27:34
[2026-06-05 03:27:34,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:27:35,095.095 INFO    ] Initializing speech engine...
[2026-06-05 03:27:35,115.115 INFO    ] 2026-06-05 03:27:35
[2026-06-05 03:27:35,364.364 INFO    ] 2026-06-05 03:27:35
[2026-06-05 03:27:35,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:27:35,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:27:35,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:27:35,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:27:35,742.742 INFO    ] time= 05/06/2026 03:27:35
[2026-06-05 03:27:35,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:27:35,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:27:35,821.821 INFO    ] No existing commands found in stream
[2026-06-05 03:27:40,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:27:40,843.843 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 03:27:42,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:27:42,353.353 INFO    ] Checking for system updates...
[2026-06-05 03:27:42,395.395 INFO    ] 200
[2026-06-05 03:27:42,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:42,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:27:42,464.464 INFO    ] No update needed
[2026-06-05 03:27:42,466.466 INFO    ] Checking for camera pi updates...
[2026-06-05 03:27:42,500.500 INFO    ] 200
[2026-06-05 03:27:42,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:42,546.546 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:27:42,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:27:42,592.592 INFO    ] No camera update needed
[2026-06-05 03:27:42,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:27:42,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:27:42,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:27:42,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:27:44,652.652 INFO    ] ================================================
[2026-06-05 03:27:44,668.668 INFO    ] Launching Daemon at Fri Jun  5 03:27:44 IST 2026
[2026-06-05 03:27:44,679.679 INFO    ] ================================================
[2026-06-05 03:27:45,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:27:45
[2026-06-05 03:27:45,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:27:46,139.139 INFO    ] Initializing speech engine...
[2026-06-05 03:27:46,145.145 INFO    ] 2026-06-05 03:27:46
[2026-06-05 03:27:46,406.406 INFO    ] 2026-06-05 03:27:46
[2026-06-05 03:27:46,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:27:46,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:27:46,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:27:46,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:27:46,847.847 INFO    ] time= 05/06/2026 03:27:46
[2026-06-05 03:27:46,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:27:46,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:27:46,996.996 INFO    ] No existing commands found in stream
[2026-06-05 03:27:52,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:27:52,013.013 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 03:27:55,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:27:55,735.735 INFO    ] Checking for system updates...
[2026-06-05 03:27:55,773.773 INFO    ] 200
[2026-06-05 03:27:55,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:55,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:27:55,840.840 INFO    ] No update needed
[2026-06-05 03:27:55,845.845 INFO    ] Checking for camera pi updates...
[2026-06-05 03:27:55,879.879 INFO    ] 200
[2026-06-05 03:27:55,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:27:55,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:27:55,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:27:55,952.952 INFO    ] No camera update needed
[2026-06-05 03:27:55,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:27:55,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:27:55,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:27:55,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:27:58,007.007 INFO    ] ================================================
[2026-06-05 03:27:58,022.022 INFO    ] Launching Daemon at Fri Jun  5 03:27:58 IST 2026
[2026-06-05 03:27:58,033.033 INFO    ] ================================================
[2026-06-05 03:27:58,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:27:58
[2026-06-05 03:27:59,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:27:59,435.435 INFO    ] Initializing speech engine...
[2026-06-05 03:27:59,443.443 INFO    ] 2026-06-05 03:27:59
[2026-06-05 03:27:59,739.739 INFO    ] 2026-06-05 03:27:59
[2026-06-05 03:27:59,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:27:59,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:27:59,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:28:00,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:28:00,126.126 INFO    ] time= 05/06/2026 03:28:00
[2026-06-05 03:28:00,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:28:00,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:28:00,253.253 INFO    ] No existing commands found in stream
[2026-06-05 03:28:05,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:28:05,268.268 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 03:28:08,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:28:08,753.753 INFO    ] Checking for system updates...
[2026-06-05 03:28:08,792.792 INFO    ] 200
[2026-06-05 03:28:08,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:08,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:28:08,851.851 INFO    ] No update needed
[2026-06-05 03:28:08,853.853 INFO    ] Checking for camera pi updates...
[2026-06-05 03:28:08,887.887 INFO    ] 200
[2026-06-05 03:28:08,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:08,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:28:08,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:28:08,973.973 INFO    ] No camera update needed
[2026-06-05 03:28:08,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:28:08,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:28:08,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:28:08,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:28:11,029.029 INFO    ] ================================================
[2026-06-05 03:28:11,045.045 INFO    ] Launching Daemon at Fri Jun  5 03:28:11 IST 2026
[2026-06-05 03:28:11,056.056 INFO    ] ================================================
[2026-06-05 03:28:11,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:28:11
[2026-06-05 03:28:12,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:28:12,489.489 INFO    ] Initializing speech engine...
[2026-06-05 03:28:12,498.498 INFO    ] 2026-06-05 03:28:12
[2026-06-05 03:28:12,794.794 INFO    ] 2026-06-05 03:28:12
[2026-06-05 03:28:12,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:28:13,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:28:13,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:28:13,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:28:13,177.177 INFO    ] time= 05/06/2026 03:28:13
[2026-06-05 03:28:13,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:28:13,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:28:13,301.301 INFO    ] No existing commands found in stream
[2026-06-05 03:28:18,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:28:18,350.350 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 03:28:22,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:28:22,727.727 INFO    ] Checking for system updates...
[2026-06-05 03:28:22,763.763 INFO    ] 200
[2026-06-05 03:28:22,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:22,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:28:22,822.822 INFO    ] No update needed
[2026-06-05 03:28:22,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 03:28:22,858.858 INFO    ] 200
[2026-06-05 03:28:22,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:22,906.906 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:28:22,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:28:22,948.948 INFO    ] No camera update needed
[2026-06-05 03:28:22,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:28:22,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:28:22,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:28:22,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:28:25,005.005 INFO    ] ================================================
[2026-06-05 03:28:25,020.020 INFO    ] Launching Daemon at Fri Jun  5 03:28:25 IST 2026
[2026-06-05 03:28:25,031.031 INFO    ] ================================================
[2026-06-05 03:28:25,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:28:25
[2026-06-05 03:28:26,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:28:26,448.448 INFO    ] Initializing speech engine...
[2026-06-05 03:28:26,471.471 INFO    ] 2026-06-05 03:28:26
[2026-06-05 03:28:26,722.722 INFO    ] 2026-06-05 03:28:26
[2026-06-05 03:28:26,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:28:26,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:28:27,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:28:27,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:28:27,189.189 INFO    ] time= 05/06/2026 03:28:27
[2026-06-05 03:28:27,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:28:27,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:28:27,339.339 INFO    ] No existing commands found in stream
[2026-06-05 03:28:32,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:28:32,353.353 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 03:28:34,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:28:34,216.216 INFO    ] Checking for system updates...
[2026-06-05 03:28:34,256.256 INFO    ] 200
[2026-06-05 03:28:34,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:34,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:28:34,313.313 INFO    ] No update needed
[2026-06-05 03:28:34,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 03:28:34,352.352 INFO    ] 200
[2026-06-05 03:28:34,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:34,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:28:34,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:28:34,438.438 INFO    ] No camera update needed
[2026-06-05 03:28:34,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:28:34,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:28:34,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:28:34,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:28:36,494.494 INFO    ] ================================================
[2026-06-05 03:28:36,509.509 INFO    ] Launching Daemon at Fri Jun  5 03:28:36 IST 2026
[2026-06-05 03:28:36,520.520 INFO    ] ================================================
[2026-06-05 03:28:37,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:28:37
[2026-06-05 03:28:37,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:28:37,974.974 INFO    ] Initializing speech engine...
[2026-06-05 03:28:37,990.990 INFO    ] 2026-06-05 03:28:37
[2026-06-05 03:28:38,272.272 INFO    ] 2026-06-05 03:28:38
[2026-06-05 03:28:38,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:28:38,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:28:38,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:28:38,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:28:38,910.910 INFO    ] time= 05/06/2026 03:28:38
[2026-06-05 03:28:38,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:28:38,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:28:39,048.048 INFO    ] No existing commands found in stream
[2026-06-05 03:28:44,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:28:44,072.072 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 03:28:47,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:28:47,651.651 INFO    ] Checking for system updates...
[2026-06-05 03:28:47,687.687 INFO    ] 200
[2026-06-05 03:28:47,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:47,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:28:47,751.751 INFO    ] No update needed
[2026-06-05 03:28:47,753.753 INFO    ] Checking for camera pi updates...
[2026-06-05 03:28:47,786.786 INFO    ] 200
[2026-06-05 03:28:47,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:47,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:28:47,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:28:47,881.881 INFO    ] No camera update needed
[2026-06-05 03:28:47,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:28:47,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:28:47,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:28:47,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:28:49,936.936 INFO    ] ================================================
[2026-06-05 03:28:49,952.952 INFO    ] Launching Daemon at Fri Jun  5 03:28:49 IST 2026
[2026-06-05 03:28:49,964.964 INFO    ] ================================================
[2026-06-05 03:28:50,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:28:50
[2026-06-05 03:28:51,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:28:51,589.589 INFO    ] Initializing speech engine...
[2026-06-05 03:28:51,601.601 INFO    ] 2026-06-05 03:28:51
[2026-06-05 03:28:51,884.884 INFO    ] 2026-06-05 03:28:51
[2026-06-05 03:28:51,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:28:52,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:28:52,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:28:52,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:28:52,328.328 INFO    ] time= 05/06/2026 03:28:52
[2026-06-05 03:28:52,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:28:52,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:28:52,475.475 INFO    ] No existing commands found in stream
[2026-06-05 03:28:57,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:28:57,491.491 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-05 03:28:58,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:28:58,285.285 INFO    ] Checking for system updates...
[2026-06-05 03:28:58,323.323 INFO    ] 200
[2026-06-05 03:28:58,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:58,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:28:58,383.383 INFO    ] No update needed
[2026-06-05 03:28:58,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 03:28:58,421.421 INFO    ] 200
[2026-06-05 03:28:58,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:28:58,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:28:58,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:28:58,511.511 INFO    ] No camera update needed
[2026-06-05 03:28:58,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:28:58,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:28:58,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:28:58,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:29:00,569.569 INFO    ] ================================================
[2026-06-05 03:29:00,584.584 INFO    ] Launching Daemon at Fri Jun  5 03:29:00 IST 2026
[2026-06-05 03:29:00,596.596 INFO    ] ================================================
[2026-06-05 03:29:01,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:29:01
[2026-06-05 03:29:01,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:29:02,260.260 INFO    ] Initializing speech engine...
[2026-06-05 03:29:02,271.271 INFO    ] 2026-06-05 03:29:02
[2026-06-05 03:29:02,548.548 INFO    ] 2026-06-05 03:29:02
[2026-06-05 03:29:02,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:29:02,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:29:02,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:29:03,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:29:03,076.076 INFO    ] time= 05/06/2026 03:29:03
[2026-06-05 03:29:03,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:29:03,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:29:03,236.236 INFO    ] No existing commands found in stream
[2026-06-05 03:29:08,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:29:08,250.250 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 03:29:11,221.221 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:29:11,224.224 INFO    ] Checking for system updates...
[2026-06-05 03:29:11,261.261 INFO    ] 200
[2026-06-05 03:29:11,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:29:11,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:29:11,328.328 INFO    ] No update needed
[2026-06-05 03:29:11,331.331 INFO    ] Checking for camera pi updates...
[2026-06-05 03:29:11,368.368 INFO    ] 200
[2026-06-05 03:29:11,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:29:11,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:29:11,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:29:11,466.466 INFO    ] No camera update needed
[2026-06-05 03:29:11,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:29:11,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:29:11,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:29:11,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:29:13,531.531 INFO    ] ================================================
[2026-06-05 03:29:13,547.547 INFO    ] Launching Daemon at Fri Jun  5 03:29:13 IST 2026
[2026-06-05 03:29:13,558.558 INFO    ] ================================================
[2026-06-05 03:29:14,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:29:14
[2026-06-05 03:29:14,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:29:15,068.068 INFO    ] Initializing speech engine...
[2026-06-05 03:29:15,076.076 INFO    ] 2026-06-05 03:29:15
[2026-06-05 03:29:15,369.369 INFO    ] 2026-06-05 03:29:15
[2026-06-05 03:29:15,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:29:15,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:29:15,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:29:15,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:29:15,715.715 INFO    ] time= 05/06/2026 03:29:15
[2026-06-05 03:29:15,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:29:15,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:29:15,797.797 INFO    ] No existing commands found in stream
[2026-06-05 03:29:20,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:29:20,813.813 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 03:29:25,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:29:25,035.035 INFO    ] Checking for system updates...
[2026-06-05 03:29:25,075.075 INFO    ] 200
[2026-06-05 03:29:25,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:29:25,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:29:25,133.133 INFO    ] No update needed
[2026-06-05 03:29:25,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 03:29:25,170.170 INFO    ] 200
[2026-06-05 03:29:25,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:29:25,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:29:25,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:29:25,349.349 INFO    ] No camera update needed
[2026-06-05 03:29:25,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:29:25,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:29:25,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:29:25,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:29:27,405.405 INFO    ] ================================================
[2026-06-05 03:29:27,421.421 INFO    ] Launching Daemon at Fri Jun  5 03:29:27 IST 2026
[2026-06-05 03:29:27,432.432 INFO    ] ================================================
[2026-06-05 03:29:28,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:29:28
[2026-06-05 03:29:28,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:29:28,891.891 INFO    ] Initializing speech engine...
[2026-06-05 03:29:28,899.899 INFO    ] 2026-06-05 03:29:28
[2026-06-05 03:29:29,159.159 INFO    ] 2026-06-05 03:29:29
[2026-06-05 03:29:29,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:29:29,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:29:29,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:29:29,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:29:29,699.699 INFO    ] time= 05/06/2026 03:29:29
[2026-06-05 03:29:29,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:29:29,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:29:29,840.840 INFO    ] No existing commands found in stream
[2026-06-05 03:29:34,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:29:34,867.867 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 03:29:37,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:29:37,163.163 INFO    ] Checking for system updates...
[2026-06-05 03:29:37,200.200 INFO    ] 200
[2026-06-05 03:29:37,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:29:37,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:29:37,259.259 INFO    ] No update needed
[2026-06-05 03:29:37,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 03:29:37,295.295 INFO    ] 200
[2026-06-05 03:29:37,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:29:37,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:29:37,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:29:37,374.374 INFO    ] No camera update needed
[2026-06-05 03:29:37,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:29:37,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:29:37,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:29:37,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:29:39,432.432 INFO    ] ================================================
[2026-06-05 03:29:39,447.447 INFO    ] Launching Daemon at Fri Jun  5 03:29:39 IST 2026
[2026-06-05 03:29:39,457.457 INFO    ] ================================================
[2026-06-05 03:29:40,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:29:40
[2026-06-05 03:29:40,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:29:40,969.969 INFO    ] Initializing speech engine...
[2026-06-05 03:29:40,977.977 INFO    ] 2026-06-05 03:29:40
[2026-06-05 03:29:41,267.267 INFO    ] 2026-06-05 03:29:41
[2026-06-05 03:29:41,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:29:41,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:29:41,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:29:41,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:29:41,741.741 INFO    ] time= 05/06/2026 03:29:41
[2026-06-05 03:29:41,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:29:41,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:29:41,887.887 INFO    ] No existing commands found in stream
[2026-06-05 03:29:46,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:29:46,903.903 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 03:29:49,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:29:49,609.609 INFO    ] Checking for system updates...
[2026-06-05 03:29:49,646.646 INFO    ] 200
[2026-06-05 03:29:49,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:29:49,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:29:49,705.705 INFO    ] No update needed
[2026-06-05 03:29:49,707.707 INFO    ] Checking for camera pi updates...
[2026-06-05 03:29:49,741.741 INFO    ] 200
[2026-06-05 03:29:49,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:29:49,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:29:49,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:29:49,826.826 INFO    ] No camera update needed
[2026-06-05 03:29:49,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:29:49,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:29:49,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:29:49,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:29:51,882.882 INFO    ] ================================================
[2026-06-05 03:29:51,897.897 INFO    ] Launching Daemon at Fri Jun  5 03:29:51 IST 2026
[2026-06-05 03:29:51,908.908 INFO    ] ================================================
[2026-06-05 03:29:52,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:29:52
[2026-06-05 03:29:53,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:29:53,331.331 INFO    ] Initializing speech engine...
[2026-06-05 03:29:53,340.340 INFO    ] 2026-06-05 03:29:53
[2026-06-05 03:29:53,591.591 INFO    ] 2026-06-05 03:29:53
[2026-06-05 03:29:53,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:29:53,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:29:53,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:29:54,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:29:54,066.066 INFO    ] time= 05/06/2026 03:29:54
[2026-06-05 03:29:54,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:29:54,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:29:54,223.223 INFO    ] No existing commands found in stream
[2026-06-05 03:29:59,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:29:59,237.237 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 03:30:06,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:30:06,012.012 INFO    ] Checking for system updates...
[2026-06-05 03:30:06,052.052 INFO    ] 200
[2026-06-05 03:30:06,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:06,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:30:06,111.111 INFO    ] No update needed
[2026-06-05 03:30:06,113.113 INFO    ] Checking for camera pi updates...
[2026-06-05 03:30:06,147.147 INFO    ] 200
[2026-06-05 03:30:06,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:06,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:30:06,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:30:06,242.242 INFO    ] No camera update needed
[2026-06-05 03:30:06,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:30:06,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:30:06,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:30:06,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:30:08,301.301 INFO    ] ================================================
[2026-06-05 03:30:08,316.316 INFO    ] Launching Daemon at Fri Jun  5 03:30:08 IST 2026
[2026-06-05 03:30:08,327.327 INFO    ] ================================================
[2026-06-05 03:30:08,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:30:08
[2026-06-05 03:30:09,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:30:09,820.820 INFO    ] Initializing speech engine...
[2026-06-05 03:30:09,839.839 INFO    ] 2026-06-05 03:30:09
[2026-06-05 03:30:10,092.092 INFO    ] 2026-06-05 03:30:10
[2026-06-05 03:30:10,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:30:10,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:30:10,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:30:10,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:30:10,550.550 INFO    ] time= 05/06/2026 03:30:10
[2026-06-05 03:30:10,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:30:10,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:30:10,721.721 INFO    ] No existing commands found in stream
[2026-06-05 03:30:15,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:30:15,736.736 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 03:30:17,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:30:17,187.187 INFO    ] Checking for system updates...
[2026-06-05 03:30:17,228.228 INFO    ] 200
[2026-06-05 03:30:17,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:17,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:30:17,296.296 INFO    ] No update needed
[2026-06-05 03:30:17,299.299 INFO    ] Checking for camera pi updates...
[2026-06-05 03:30:17,336.336 INFO    ] 200
[2026-06-05 03:30:17,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:17,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:30:17,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:30:17,428.428 INFO    ] No camera update needed
[2026-06-05 03:30:17,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:30:17,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:30:17,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:30:17,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:30:19,484.484 INFO    ] ================================================
[2026-06-05 03:30:19,500.500 INFO    ] Launching Daemon at Fri Jun  5 03:30:19 IST 2026
[2026-06-05 03:30:19,512.512 INFO    ] ================================================
[2026-06-05 03:30:20,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:30:20
[2026-06-05 03:30:20,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:30:20,997.997 INFO    ] Initializing speech engine...
[2026-06-05 03:30:21,012.012 INFO    ] 2026-06-05 03:30:20
[2026-06-05 03:30:21,292.292 INFO    ] 2026-06-05 03:30:21
[2026-06-05 03:30:21,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:30:21,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:30:21,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:30:21,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:30:21,720.720 INFO    ] time= 05/06/2026 03:30:21
[2026-06-05 03:30:21,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:30:21,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:30:21,899.899 INFO    ] No existing commands found in stream
[2026-06-05 03:30:26,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:30:26,922.922 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 03:30:30,567.567 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:30:30,569.569 INFO    ] Checking for system updates...
[2026-06-05 03:30:30,607.607 INFO    ] 200
[2026-06-05 03:30:30,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:30,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:30:30,666.666 INFO    ] No update needed
[2026-06-05 03:30:30,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 03:30:30,704.704 INFO    ] 200
[2026-06-05 03:30:30,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:30,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:30:30,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:30:30,790.790 INFO    ] No camera update needed
[2026-06-05 03:30:30,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:30:30,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:30:30,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:30:30,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:30:32,859.859 INFO    ] ================================================
[2026-06-05 03:30:32,875.875 INFO    ] Launching Daemon at Fri Jun  5 03:30:32 IST 2026
[2026-06-05 03:30:32,894.894 INFO    ] ================================================
[2026-06-05 03:30:33,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:30:33
[2026-06-05 03:30:34,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:30:34,349.349 INFO    ] Initializing speech engine...
[2026-06-05 03:30:34,372.372 INFO    ] 2026-06-05 03:30:34
[2026-06-05 03:30:34,629.629 INFO    ] 2026-06-05 03:30:34
[2026-06-05 03:30:34,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:30:34,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:30:34,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:30:35,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:30:35,139.139 INFO    ] time= 05/06/2026 03:30:35
[2026-06-05 03:30:35,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:30:35,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:30:35,270.270 INFO    ] No existing commands found in stream
[2026-06-05 03:30:40,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:30:40,286.286 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 03:30:42,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:30:42,262.262 INFO    ] Checking for system updates...
[2026-06-05 03:30:42,302.302 INFO    ] 200
[2026-06-05 03:30:42,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:42,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:30:42,365.365 INFO    ] No update needed
[2026-06-05 03:30:42,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 03:30:42,404.404 INFO    ] 200
[2026-06-05 03:30:42,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:42,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:30:42,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:30:42,499.499 INFO    ] No camera update needed
[2026-06-05 03:30:42,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:30:42,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:30:42,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:30:42,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:30:44,562.562 INFO    ] ================================================
[2026-06-05 03:30:44,578.578 INFO    ] Launching Daemon at Fri Jun  5 03:30:44 IST 2026
[2026-06-05 03:30:44,589.589 INFO    ] ================================================
[2026-06-05 03:30:45,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:30:45
[2026-06-05 03:30:45,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:30:46,166.166 INFO    ] Initializing speech engine...
[2026-06-05 03:30:46,173.173 INFO    ] 2026-06-05 03:30:46
[2026-06-05 03:30:46,451.451 INFO    ] 2026-06-05 03:30:46
[2026-06-05 03:30:46,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:30:46,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:30:46,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:30:46,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:30:46,928.928 INFO    ] time= 05/06/2026 03:30:46
[2026-06-05 03:30:46,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:30:47,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:30:47,080.080 INFO    ] No existing commands found in stream
[2026-06-05 03:30:52,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:30:52,096.096 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 03:30:54,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:30:54,068.068 INFO    ] Checking for system updates...
[2026-06-05 03:30:54,117.117 INFO    ] 200
[2026-06-05 03:30:54,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:54,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:30:54,183.183 INFO    ] No update needed
[2026-06-05 03:30:54,186.186 INFO    ] Checking for camera pi updates...
[2026-06-05 03:30:54,221.221 INFO    ] 200
[2026-06-05 03:30:54,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:30:54,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:30:54,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:30:54,311.311 INFO    ] No camera update needed
[2026-06-05 03:30:54,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:30:54,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:30:54,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:30:54,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:30:56,371.371 INFO    ] ================================================
[2026-06-05 03:30:56,387.387 INFO    ] Launching Daemon at Fri Jun  5 03:30:56 IST 2026
[2026-06-05 03:30:56,399.399 INFO    ] ================================================
[2026-06-05 03:30:56,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:30:56
[2026-06-05 03:30:57,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:30:57,846.846 INFO    ] Initializing speech engine...
[2026-06-05 03:30:57,851.851 INFO    ] 2026-06-05 03:30:57
[2026-06-05 03:30:58,147.147 INFO    ] 2026-06-05 03:30:58
[2026-06-05 03:30:58,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:30:58,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:30:58,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:30:58,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:30:58,524.524 INFO    ] time= 05/06/2026 03:30:58
[2026-06-05 03:30:58,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:30:58,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:30:58,652.652 INFO    ] No existing commands found in stream
[2026-06-05 03:31:03,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:31:03,670.670 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 03:31:05,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:31:05,167.167 INFO    ] Checking for system updates...
[2026-06-05 03:31:05,205.205 INFO    ] 200
[2026-06-05 03:31:05,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:05,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:31:05,264.264 INFO    ] No update needed
[2026-06-05 03:31:05,266.266 INFO    ] Checking for camera pi updates...
[2026-06-05 03:31:05,301.301 INFO    ] 200
[2026-06-05 03:31:05,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:05,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:31:05,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:31:05,398.398 INFO    ] No camera update needed
[2026-06-05 03:31:05,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:31:05,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:31:05,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:31:05,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:31:07,455.455 INFO    ] ================================================
[2026-06-05 03:31:07,470.470 INFO    ] Launching Daemon at Fri Jun  5 03:31:07 IST 2026
[2026-06-05 03:31:07,481.481 INFO    ] ================================================
[2026-06-05 03:31:08,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:31:08
[2026-06-05 03:31:08,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:31:09,104.104 INFO    ] Initializing speech engine...
[2026-06-05 03:31:09,112.112 INFO    ] 2026-06-05 03:31:09
[2026-06-05 03:31:09,402.402 INFO    ] 2026-06-05 03:31:09
[2026-06-05 03:31:09,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:31:09,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:31:09,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:31:09,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:31:09,948.948 INFO    ] time= 05/06/2026 03:31:09
[2026-06-05 03:31:09,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:31:09,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:31:10,093.093 INFO    ] No existing commands found in stream
[2026-06-05 03:31:15,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:31:15,121.121 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 03:31:19,432.432 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:31:19,436.436 INFO    ] Checking for system updates...
[2026-06-05 03:31:19,473.473 INFO    ] 200
[2026-06-05 03:31:19,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:19,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:31:19,533.533 INFO    ] No update needed
[2026-06-05 03:31:19,535.535 INFO    ] Checking for camera pi updates...
[2026-06-05 03:31:19,574.574 INFO    ] 200
[2026-06-05 03:31:19,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:19,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:31:19,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:31:19,668.668 INFO    ] No camera update needed
[2026-06-05 03:31:19,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:31:19,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:31:19,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:31:19,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:31:21,727.727 INFO    ] ================================================
[2026-06-05 03:31:21,742.742 INFO    ] Launching Daemon at Fri Jun  5 03:31:21 IST 2026
[2026-06-05 03:31:21,753.753 INFO    ] ================================================
[2026-06-05 03:31:22,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:31:22
[2026-06-05 03:31:22,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:31:23,196.196 INFO    ] Initializing speech engine...
[2026-06-05 03:31:23,219.219 INFO    ] 2026-06-05 03:31:23
[2026-06-05 03:31:23,474.474 INFO    ] 2026-06-05 03:31:23
[2026-06-05 03:31:23,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:31:23,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:31:23,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:31:23,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:31:23,848.848 INFO    ] time= 05/06/2026 03:31:23
[2026-06-05 03:31:23,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:31:23,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:31:24,020.020 INFO    ] No existing commands found in stream
[2026-06-05 03:31:29,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:31:29,053.053 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 03:31:30,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:31:30,247.247 INFO    ] Checking for system updates...
[2026-06-05 03:31:30,284.284 INFO    ] 200
[2026-06-05 03:31:30,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:30,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:31:30,342.342 INFO    ] No update needed
[2026-06-05 03:31:30,345.345 INFO    ] Checking for camera pi updates...
[2026-06-05 03:31:30,379.379 INFO    ] 200
[2026-06-05 03:31:30,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:30,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:31:30,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:31:30,576.576 INFO    ] No camera update needed
[2026-06-05 03:31:30,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:31:30,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:31:30,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:31:30,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:31:32,636.636 INFO    ] ================================================
[2026-06-05 03:31:32,651.651 INFO    ] Launching Daemon at Fri Jun  5 03:31:32 IST 2026
[2026-06-05 03:31:32,663.663 INFO    ] ================================================
[2026-06-05 03:31:33,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:31:33
[2026-06-05 03:31:33,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:31:34,086.086 INFO    ] Initializing speech engine...
[2026-06-05 03:31:34,092.092 INFO    ] 2026-06-05 03:31:34
[2026-06-05 03:31:34,384.384 INFO    ] 2026-06-05 03:31:34
[2026-06-05 03:31:34,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:31:34,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:31:34,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:31:34,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:31:34,798.798 INFO    ] time= 05/06/2026 03:31:34
[2026-06-05 03:31:34,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:31:34,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:31:34,883.883 INFO    ] No existing commands found in stream
[2026-06-05 03:31:39,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:31:39,898.898 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 03:31:40,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:31:40,646.646 INFO    ] Checking for system updates...
[2026-06-05 03:31:40,684.684 INFO    ] 200
[2026-06-05 03:31:40,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:40,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:31:40,743.743 INFO    ] No update needed
[2026-06-05 03:31:40,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 03:31:40,781.781 INFO    ] 200
[2026-06-05 03:31:40,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:40,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:31:40,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:31:40,856.856 INFO    ] No camera update needed
[2026-06-05 03:31:40,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:31:40,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:31:40,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:31:40,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:31:42,915.915 INFO    ] ================================================
[2026-06-05 03:31:42,931.931 INFO    ] Launching Daemon at Fri Jun  5 03:31:42 IST 2026
[2026-06-05 03:31:42,942.942 INFO    ] ================================================
[2026-06-05 03:31:43,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:31:43
[2026-06-05 03:31:44,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:31:44,405.405 INFO    ] Initializing speech engine...
[2026-06-05 03:31:44,414.414 INFO    ] 2026-06-05 03:31:44
[2026-06-05 03:31:44,672.672 INFO    ] 2026-06-05 03:31:44
[2026-06-05 03:31:44,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:31:44,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:31:44,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:31:45,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:31:45,139.139 INFO    ] time= 05/06/2026 03:31:45
[2026-06-05 03:31:45,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:31:45,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:31:45,283.283 INFO    ] No existing commands found in stream
[2026-06-05 03:31:50,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:31:50,299.299 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 03:31:53,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:31:53,422.422 INFO    ] Checking for system updates...
[2026-06-05 03:31:53,458.458 INFO    ] 200
[2026-06-05 03:31:53,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:53,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:31:53,523.523 INFO    ] No update needed
[2026-06-05 03:31:53,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 03:31:53,559.559 INFO    ] 200
[2026-06-05 03:31:53,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:31:53,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:31:53,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:31:53,645.645 INFO    ] No camera update needed
[2026-06-05 03:31:53,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:31:53,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:31:53,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:31:53,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:31:55,704.704 INFO    ] ================================================
[2026-06-05 03:31:55,720.720 INFO    ] Launching Daemon at Fri Jun  5 03:31:55 IST 2026
[2026-06-05 03:31:55,731.731 INFO    ] ================================================
[2026-06-05 03:31:56,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:31:56
[2026-06-05 03:31:56,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:31:57,178.178 INFO    ] Initializing speech engine...
[2026-06-05 03:31:57,187.187 INFO    ] 2026-06-05 03:31:57
[2026-06-05 03:31:57,476.476 INFO    ] 2026-06-05 03:31:57
[2026-06-05 03:31:57,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:31:57,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:31:57,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:31:57,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:31:58,018.018 INFO    ] time= 05/06/2026 03:31:58
[2026-06-05 03:31:58,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:31:58,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:31:58,168.168 INFO    ] No existing commands found in stream
[2026-06-05 03:32:03,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:32:03,199.199 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 03:32:07,116.116 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:32:07,119.119 INFO    ] Checking for system updates...
[2026-06-05 03:32:07,157.157 INFO    ] 200
[2026-06-05 03:32:07,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:07,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:32:07,216.216 INFO    ] No update needed
[2026-06-05 03:32:07,219.219 INFO    ] Checking for camera pi updates...
[2026-06-05 03:32:07,253.253 INFO    ] 200
[2026-06-05 03:32:07,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:07,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:32:07,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:32:07,342.342 INFO    ] No camera update needed
[2026-06-05 03:32:07,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:32:07,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:32:07,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:32:07,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:32:09,404.404 INFO    ] ================================================
[2026-06-05 03:32:09,420.420 INFO    ] Launching Daemon at Fri Jun  5 03:32:09 IST 2026
[2026-06-05 03:32:09,432.432 INFO    ] ================================================
[2026-06-05 03:32:10,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:32:10
[2026-06-05 03:32:10,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:32:10,840.840 INFO    ] Initializing speech engine...
[2026-06-05 03:32:10,862.862 INFO    ] 2026-06-05 03:32:10
[2026-06-05 03:32:11,118.118 INFO    ] 2026-06-05 03:32:11
[2026-06-05 03:32:11,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:32:11,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:32:11,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:32:11,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:32:11,486.486 INFO    ] time= 05/06/2026 03:32:11
[2026-06-05 03:32:11,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:32:11,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:32:11,560.560 INFO    ] No existing commands found in stream
[2026-06-05 03:32:16,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:32:16,576.576 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 03:32:17,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:32:17,469.469 INFO    ] Checking for system updates...
[2026-06-05 03:32:17,504.504 INFO    ] 200
[2026-06-05 03:32:17,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:17,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:32:17,565.565 INFO    ] No update needed
[2026-06-05 03:32:17,569.569 INFO    ] Checking for camera pi updates...
[2026-06-05 03:32:17,602.602 INFO    ] 200
[2026-06-05 03:32:17,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:17,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:32:17,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:32:17,696.696 INFO    ] No camera update needed
[2026-06-05 03:32:17,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:32:17,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:32:17,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:32:17,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:32:19,752.752 INFO    ] ================================================
[2026-06-05 03:32:19,768.768 INFO    ] Launching Daemon at Fri Jun  5 03:32:19 IST 2026
[2026-06-05 03:32:19,780.780 INFO    ] ================================================
[2026-06-05 03:32:20,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:32:20
[2026-06-05 03:32:20,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:32:21,226.226 INFO    ] Initializing speech engine...
[2026-06-05 03:32:21,235.235 INFO    ] 2026-06-05 03:32:21
[2026-06-05 03:32:21,499.499 INFO    ] 2026-06-05 03:32:21
[2026-06-05 03:32:21,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:32:21,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:32:21,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:32:21,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:32:21,970.970 INFO    ] time= 05/06/2026 03:32:21
[2026-06-05 03:32:22,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:32:22,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:32:22,121.121 INFO    ] No existing commands found in stream
[2026-06-05 03:32:27,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:32:27,136.136 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 03:32:30,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:32:30,698.698 INFO    ] Checking for system updates...
[2026-06-05 03:32:30,738.738 INFO    ] 200
[2026-06-05 03:32:30,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:30,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:32:30,797.797 INFO    ] No update needed
[2026-06-05 03:32:30,800.800 INFO    ] Checking for camera pi updates...
[2026-06-05 03:32:30,833.833 INFO    ] 200
[2026-06-05 03:32:30,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:30,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:32:30,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:32:30,925.925 INFO    ] No camera update needed
[2026-06-05 03:32:30,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:32:30,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:32:30,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:32:30,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:32:32,981.981 INFO    ] ================================================
[2026-06-05 03:32:33,997.997 INFO    ] Launching Daemon at Fri Jun  5 03:32:32 IST 2026
[2026-06-05 03:32:33,009.009 INFO    ] ================================================
[2026-06-05 03:32:33,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:32:33
[2026-06-05 03:32:34,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:32:34,655.655 INFO    ] Initializing speech engine...
[2026-06-05 03:32:34,662.662 INFO    ] 2026-06-05 03:32:34
[2026-06-05 03:32:34,952.952 INFO    ] 2026-06-05 03:32:34
[2026-06-05 03:32:34,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:32:35,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:32:35,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:32:35,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:32:35,413.413 INFO    ] time= 05/06/2026 03:32:35
[2026-06-05 03:32:35,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:32:35,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:32:35,556.556 INFO    ] No existing commands found in stream
[2026-06-05 03:32:40,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:32:40,571.571 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 03:32:44,196.196 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:32:44,199.199 INFO    ] Checking for system updates...
[2026-06-05 03:32:44,235.235 INFO    ] 200
[2026-06-05 03:32:44,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:44,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:32:44,293.293 INFO    ] No update needed
[2026-06-05 03:32:44,295.295 INFO    ] Checking for camera pi updates...
[2026-06-05 03:32:44,328.328 INFO    ] 200
[2026-06-05 03:32:44,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:44,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:32:44,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:32:44,422.422 INFO    ] No camera update needed
[2026-06-05 03:32:44,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:32:44,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:32:44,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:32:44,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:32:46,478.478 INFO    ] ================================================
[2026-06-05 03:32:46,493.493 INFO    ] Launching Daemon at Fri Jun  5 03:32:46 IST 2026
[2026-06-05 03:32:46,504.504 INFO    ] ================================================
[2026-06-05 03:32:47,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:32:47
[2026-06-05 03:32:47,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:32:48,066.066 INFO    ] Initializing speech engine...
[2026-06-05 03:32:48,075.075 INFO    ] 2026-06-05 03:32:48
[2026-06-05 03:32:48,349.349 INFO    ] 2026-06-05 03:32:48
[2026-06-05 03:32:48,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:32:48,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:32:48,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:32:48,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:32:48,855.855 INFO    ] time= 05/06/2026 03:32:48
[2026-06-05 03:32:48,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:32:48,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:32:49,042.042 INFO    ] No existing commands found in stream
[2026-06-05 03:32:54,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:32:54,078.078 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 03:32:54,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:32:54,733.733 INFO    ] Checking for system updates...
[2026-06-05 03:32:54,769.769 INFO    ] 200
[2026-06-05 03:32:54,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:54,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:32:54,833.833 INFO    ] No update needed
[2026-06-05 03:32:54,836.836 INFO    ] Checking for camera pi updates...
[2026-06-05 03:32:54,872.872 INFO    ] 200
[2026-06-05 03:32:54,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:32:54,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:32:54,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:32:54,970.970 INFO    ] No camera update needed
[2026-06-05 03:32:54,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:32:54,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:32:54,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:32:54,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:32:57,028.028 INFO    ] ================================================
[2026-06-05 03:32:57,043.043 INFO    ] Launching Daemon at Fri Jun  5 03:32:57 IST 2026
[2026-06-05 03:32:57,054.054 INFO    ] ================================================
[2026-06-05 03:32:57,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:32:57
[2026-06-05 03:32:58,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:32:58,483.483 INFO    ] Initializing speech engine...
[2026-06-05 03:32:58,493.493 INFO    ] 2026-06-05 03:32:58
[2026-06-05 03:32:58,738.738 INFO    ] 2026-06-05 03:32:58
[2026-06-05 03:32:58,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:32:58,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:32:59,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:32:59,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:32:59,194.194 INFO    ] time= 05/06/2026 03:32:59
[2026-06-05 03:32:59,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:32:59,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:32:59,425.425 INFO    ] No existing commands found in stream
[2026-06-05 03:33:04,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:33:04,456.456 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 03:33:05,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:33:05,202.202 INFO    ] Checking for system updates...
[2026-06-05 03:33:05,240.240 INFO    ] 200
[2026-06-05 03:33:05,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:05,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:33:05,298.298 INFO    ] No update needed
[2026-06-05 03:33:05,303.303 INFO    ] Checking for camera pi updates...
[2026-06-05 03:33:05,350.350 INFO    ] 200
[2026-06-05 03:33:05,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:05,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:33:05,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:33:05,428.428 INFO    ] No camera update needed
[2026-06-05 03:33:05,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:33:05,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:33:05,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:33:05,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:33:07,484.484 INFO    ] ================================================
[2026-06-05 03:33:07,499.499 INFO    ] Launching Daemon at Fri Jun  5 03:33:07 IST 2026
[2026-06-05 03:33:07,510.510 INFO    ] ================================================
[2026-06-05 03:33:08,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:33:08
[2026-06-05 03:33:08,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:33:09,059.059 INFO    ] Initializing speech engine...
[2026-06-05 03:33:09,069.069 INFO    ] 2026-06-05 03:33:09
[2026-06-05 03:33:09,325.325 INFO    ] 2026-06-05 03:33:09
[2026-06-05 03:33:09,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:33:09,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:33:09,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:33:09,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:33:09,796.796 INFO    ] time= 05/06/2026 03:33:09
[2026-06-05 03:33:09,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:33:09,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:33:09,953.953 INFO    ] No existing commands found in stream
[2026-06-05 03:33:14,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:33:14,977.977 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 03:33:17,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:33:17,288.288 INFO    ] Checking for system updates...
[2026-06-05 03:33:17,325.325 INFO    ] 200
[2026-06-05 03:33:17,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:17,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:33:17,384.384 INFO    ] No update needed
[2026-06-05 03:33:17,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 03:33:17,422.422 INFO    ] 200
[2026-06-05 03:33:17,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:17,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:33:17,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:33:17,510.510 INFO    ] No camera update needed
[2026-06-05 03:33:17,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:33:17,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:33:17,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:33:17,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:33:19,569.569 INFO    ] ================================================
[2026-06-05 03:33:19,584.584 INFO    ] Launching Daemon at Fri Jun  5 03:33:19 IST 2026
[2026-06-05 03:33:19,595.595 INFO    ] ================================================
[2026-06-05 03:33:20,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:33:20
[2026-06-05 03:33:20,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:33:21,028.028 INFO    ] Initializing speech engine...
[2026-06-05 03:33:21,037.037 INFO    ] 2026-06-05 03:33:21
[2026-06-05 03:33:21,288.288 INFO    ] 2026-06-05 03:33:21
[2026-06-05 03:33:21,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:33:21,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:33:21,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:33:21,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:33:21,638.638 INFO    ] time= 05/06/2026 03:33:21
[2026-06-05 03:33:21,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:33:21,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:33:21,757.757 INFO    ] No existing commands found in stream
[2026-06-05 03:33:26,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:33:26,772.772 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 03:33:30,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:33:30,280.280 INFO    ] Checking for system updates...
[2026-06-05 03:33:30,318.318 INFO    ] 200
[2026-06-05 03:33:30,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:30,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:33:30,380.380 INFO    ] No update needed
[2026-06-05 03:33:30,382.382 INFO    ] Checking for camera pi updates...
[2026-06-05 03:33:30,416.416 INFO    ] 200
[2026-06-05 03:33:30,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:30,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:33:30,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:33:30,521.521 INFO    ] No camera update needed
[2026-06-05 03:33:30,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:33:30,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:33:30,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:33:30,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:33:32,577.577 INFO    ] ================================================
[2026-06-05 03:33:32,593.593 INFO    ] Launching Daemon at Fri Jun  5 03:33:32 IST 2026
[2026-06-05 03:33:32,605.605 INFO    ] ================================================
[2026-06-05 03:33:33,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:33:33
[2026-06-05 03:33:33,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:33:34,075.075 INFO    ] Initializing speech engine...
[2026-06-05 03:33:34,084.084 INFO    ] 2026-06-05 03:33:34
[2026-06-05 03:33:34,333.333 INFO    ] 2026-06-05 03:33:34
[2026-06-05 03:33:34,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:33:34,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:33:34,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:33:34,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:33:34,719.719 INFO    ] time= 05/06/2026 03:33:34
[2026-06-05 03:33:34,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:33:34,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:33:34,905.905 INFO    ] No existing commands found in stream
[2026-06-05 03:33:39,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:33:39,929.929 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 03:33:41,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:33:41,712.712 INFO    ] Checking for system updates...
[2026-06-05 03:33:41,753.753 INFO    ] 200
[2026-06-05 03:33:41,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:41,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:33:41,817.817 INFO    ] No update needed
[2026-06-05 03:33:41,820.820 INFO    ] Checking for camera pi updates...
[2026-06-05 03:33:41,856.856 INFO    ] 200
[2026-06-05 03:33:41,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:41,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:33:41,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:33:41,951.951 INFO    ] No camera update needed
[2026-06-05 03:33:41,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:33:41,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:33:41,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:33:41,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:33:44,007.007 INFO    ] ================================================
[2026-06-05 03:33:44,023.023 INFO    ] Launching Daemon at Fri Jun  5 03:33:44 IST 2026
[2026-06-05 03:33:44,034.034 INFO    ] ================================================
[2026-06-05 03:33:44,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:33:44
[2026-06-05 03:33:45,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:33:45,490.490 INFO    ] Initializing speech engine...
[2026-06-05 03:33:45,502.502 INFO    ] 2026-06-05 03:33:45
[2026-06-05 03:33:45,782.782 INFO    ] 2026-06-05 03:33:45
[2026-06-05 03:33:45,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:33:46,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:33:46,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:33:46,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:33:46,246.246 INFO    ] time= 05/06/2026 03:33:46
[2026-06-05 03:33:46,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:33:46,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:33:46,380.380 INFO    ] No existing commands found in stream
[2026-06-05 03:33:51,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:33:51,394.394 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 03:33:54,552.552 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:33:54,555.555 INFO    ] Checking for system updates...
[2026-06-05 03:33:54,591.591 INFO    ] 200
[2026-06-05 03:33:54,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:54,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:33:54,648.648 INFO    ] No update needed
[2026-06-05 03:33:54,650.650 INFO    ] Checking for camera pi updates...
[2026-06-05 03:33:54,683.683 INFO    ] 200
[2026-06-05 03:33:54,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:33:54,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:33:54,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:33:54,782.782 INFO    ] No camera update needed
[2026-06-05 03:33:54,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:33:54,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:33:54,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:33:54,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:33:56,839.839 INFO    ] ================================================
[2026-06-05 03:33:56,854.854 INFO    ] Launching Daemon at Fri Jun  5 03:33:56 IST 2026
[2026-06-05 03:33:56,865.865 INFO    ] ================================================
[2026-06-05 03:33:57,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:33:57
[2026-06-05 03:33:58,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:33:58,333.333 INFO    ] Initializing speech engine...
[2026-06-05 03:33:58,342.342 INFO    ] 2026-06-05 03:33:58
[2026-06-05 03:33:58,633.633 INFO    ] 2026-06-05 03:33:58
[2026-06-05 03:33:58,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:33:58,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:33:58,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:33:59,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:33:59,037.037 INFO    ] time= 05/06/2026 03:33:59
[2026-06-05 03:33:59,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:33:59,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:33:59,123.123 INFO    ] No existing commands found in stream
[2026-06-05 03:34:04,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:34:04,139.139 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 03:34:06,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:34:06,518.518 INFO    ] Checking for system updates...
[2026-06-05 03:34:06,570.570 INFO    ] 200
[2026-06-05 03:34:06,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:06,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:34:06,650.650 INFO    ] No update needed
[2026-06-05 03:34:06,653.653 INFO    ] Checking for camera pi updates...
[2026-06-05 03:34:06,688.688 INFO    ] 200
[2026-06-05 03:34:06,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:06,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:34:06,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:34:06,761.761 INFO    ] No camera update needed
[2026-06-05 03:34:06,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:34:06,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:34:06,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:34:06,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:34:08,818.818 INFO    ] ================================================
[2026-06-05 03:34:08,835.835 INFO    ] Launching Daemon at Fri Jun  5 03:34:08 IST 2026
[2026-06-05 03:34:08,846.846 INFO    ] ================================================
[2026-06-05 03:34:09,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:34:09
[2026-06-05 03:34:10,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:34:10,497.497 INFO    ] Initializing speech engine...
[2026-06-05 03:34:10,506.506 INFO    ] 2026-06-05 03:34:10
[2026-06-05 03:34:10,800.800 INFO    ] 2026-06-05 03:34:10
[2026-06-05 03:34:10,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:34:11,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:34:11,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:34:11,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:34:11,267.267 INFO    ] time= 05/06/2026 03:34:11
[2026-06-05 03:34:11,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:34:11,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:34:11,485.485 INFO    ] No existing commands found in stream
[2026-06-05 03:34:16,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:34:16,521.521 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 03:34:18,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:34:18,307.307 INFO    ] Checking for system updates...
[2026-06-05 03:34:18,344.344 INFO    ] 200
[2026-06-05 03:34:18,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:18,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:34:18,403.403 INFO    ] No update needed
[2026-06-05 03:34:18,406.406 INFO    ] Checking for camera pi updates...
[2026-06-05 03:34:18,441.441 INFO    ] 200
[2026-06-05 03:34:18,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:18,492.492 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:34:18,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:34:18,548.548 INFO    ] No camera update needed
[2026-06-05 03:34:18,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:34:18,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:34:18,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:34:18,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:34:20,607.607 INFO    ] ================================================
[2026-06-05 03:34:20,623.623 INFO    ] Launching Daemon at Fri Jun  5 03:34:20 IST 2026
[2026-06-05 03:34:20,634.634 INFO    ] ================================================
[2026-06-05 03:34:21,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:34:21
[2026-06-05 03:34:21,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:34:22,280.280 INFO    ] Initializing speech engine...
[2026-06-05 03:34:22,288.288 INFO    ] 2026-06-05 03:34:22
[2026-06-05 03:34:22,579.579 INFO    ] 2026-06-05 03:34:22
[2026-06-05 03:34:22,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:34:22,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:34:22,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:34:22,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:34:23,059.059 INFO    ] time= 05/06/2026 03:34:22
[2026-06-05 03:34:23,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:34:23,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:34:23,245.245 INFO    ] No existing commands found in stream
[2026-06-05 03:34:28,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:34:28,275.275 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 03:34:32,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:34:32,553.553 INFO    ] Checking for system updates...
[2026-06-05 03:34:32,593.593 INFO    ] 200
[2026-06-05 03:34:32,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:32,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:34:32,657.657 INFO    ] No update needed
[2026-06-05 03:34:32,660.660 INFO    ] Checking for camera pi updates...
[2026-06-05 03:34:32,697.697 INFO    ] 200
[2026-06-05 03:34:32,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:32,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:34:32,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:34:32,788.788 INFO    ] No camera update needed
[2026-06-05 03:34:32,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:34:32,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:34:32,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:34:32,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:34:34,848.848 INFO    ] ================================================
[2026-06-05 03:34:34,863.863 INFO    ] Launching Daemon at Fri Jun  5 03:34:34 IST 2026
[2026-06-05 03:34:34,874.874 INFO    ] ================================================
[2026-06-05 03:34:35,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:34:35
[2026-06-05 03:34:36,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:34:36,532.532 INFO    ] Initializing speech engine...
[2026-06-05 03:34:36,543.543 INFO    ] 2026-06-05 03:34:36
[2026-06-05 03:34:36,829.829 INFO    ] 2026-06-05 03:34:36
[2026-06-05 03:34:36,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:34:37,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:34:37,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:34:37,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:34:37,299.299 INFO    ] time= 05/06/2026 03:34:37
[2026-06-05 03:34:37,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:34:37,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:34:37,510.510 INFO    ] No existing commands found in stream
[2026-06-05 03:34:42,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:34:42,543.543 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 03:34:43,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:34:43,834.834 INFO    ] Checking for system updates...
[2026-06-05 03:34:43,872.872 INFO    ] 200
[2026-06-05 03:34:43,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:43,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:34:43,934.934 INFO    ] No update needed
[2026-06-05 03:34:43,937.937 INFO    ] Checking for camera pi updates...
[2026-06-05 03:34:43,975.975 INFO    ] 200
[2026-06-05 03:34:43,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:44,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:34:44,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:34:44,064.064 INFO    ] No camera update needed
[2026-06-05 03:34:44,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:34:44,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:34:44,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:34:44,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:34:46,125.125 INFO    ] ================================================
[2026-06-05 03:34:46,139.139 INFO    ] Launching Daemon at Fri Jun  5 03:34:46 IST 2026
[2026-06-05 03:34:46,151.151 INFO    ] ================================================
[2026-06-05 03:34:46,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:34:46
[2026-06-05 03:34:47,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:34:47,578.578 INFO    ] Initializing speech engine...
[2026-06-05 03:34:47,588.588 INFO    ] 2026-06-05 03:34:47
[2026-06-05 03:34:47,838.838 INFO    ] 2026-06-05 03:34:47
[2026-06-05 03:34:47,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:34:48,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:34:48,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:34:48,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:34:48,211.211 INFO    ] time= 05/06/2026 03:34:48
[2026-06-05 03:34:48,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:34:48,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:34:48,299.299 INFO    ] No existing commands found in stream
[2026-06-05 03:34:53,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:34:53,315.315 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 03:34:57,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:34:57,369.369 INFO    ] Checking for system updates...
[2026-06-05 03:34:57,405.405 INFO    ] 200
[2026-06-05 03:34:57,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:57,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:34:57,462.462 INFO    ] No update needed
[2026-06-05 03:34:57,465.465 INFO    ] Checking for camera pi updates...
[2026-06-05 03:34:57,498.498 INFO    ] 200
[2026-06-05 03:34:57,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:34:57,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:34:57,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:34:57,590.590 INFO    ] No camera update needed
[2026-06-05 03:34:57,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:34:57,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:34:57,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:34:57,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:34:59,646.646 INFO    ] ================================================
[2026-06-05 03:34:59,661.661 INFO    ] Launching Daemon at Fri Jun  5 03:34:59 IST 2026
[2026-06-05 03:34:59,672.672 INFO    ] ================================================
[2026-06-05 03:35:00,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:35:00
[2026-06-05 03:35:00,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:35:01,108.108 INFO    ] Initializing speech engine...
[2026-06-05 03:35:01,121.121 INFO    ] 2026-06-05 03:35:01
[2026-06-05 03:35:01,413.413 INFO    ] 2026-06-05 03:35:01
[2026-06-05 03:35:01,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:35:01,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:35:01,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:35:01,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:35:01,869.869 INFO    ] time= 05/06/2026 03:35:01
[2026-06-05 03:35:01,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:35:01,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:35:02,019.019 INFO    ] No existing commands found in stream
[2026-06-05 03:35:07,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:35:07,053.053 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 03:35:09,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:35:09,352.352 INFO    ] Checking for system updates...
[2026-06-05 03:35:09,389.389 INFO    ] 200
[2026-06-05 03:35:09,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:35:09,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:35:09,452.452 INFO    ] No update needed
[2026-06-05 03:35:09,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 03:35:09,489.489 INFO    ] 200
[2026-06-05 03:35:09,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:35:09,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:35:09,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:35:09,573.573 INFO    ] No camera update needed
[2026-06-05 03:35:09,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:35:09,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:35:09,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:35:09,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:35:11,629.629 INFO    ] ================================================
[2026-06-05 03:35:11,645.645 INFO    ] Launching Daemon at Fri Jun  5 03:35:11 IST 2026
[2026-06-05 03:35:11,656.656 INFO    ] ================================================
[2026-06-05 03:35:12,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:35:12
[2026-06-05 03:35:12,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:35:13,251.251 INFO    ] Initializing speech engine...
[2026-06-05 03:35:13,259.259 INFO    ] 2026-06-05 03:35:13
[2026-06-05 03:35:13,543.543 INFO    ] 2026-06-05 03:35:13
[2026-06-05 03:35:13,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:35:13,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:35:13,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:35:13,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:35:14,025.025 INFO    ] time= 05/06/2026 03:35:13
[2026-06-05 03:35:14,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:35:14,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:35:14,217.217 INFO    ] No existing commands found in stream
[2026-06-05 03:35:19,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:35:19,252.252 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 03:35:22,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:35:22,622.622 INFO    ] Checking for system updates...
[2026-06-05 03:35:22,663.663 INFO    ] 200
[2026-06-05 03:35:22,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:35:22,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:35:22,726.726 INFO    ] No update needed
[2026-06-05 03:35:22,729.729 INFO    ] Checking for camera pi updates...
[2026-06-05 03:35:22,764.764 INFO    ] 200
[2026-06-05 03:35:22,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:35:22,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:35:22,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:35:22,868.868 INFO    ] No camera update needed
[2026-06-05 03:35:22,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:35:22,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:35:22,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:35:22,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:35:24,930.930 INFO    ] ================================================
[2026-06-05 03:35:24,945.945 INFO    ] Launching Daemon at Fri Jun  5 03:35:24 IST 2026
[2026-06-05 03:35:24,956.956 INFO    ] ================================================
[2026-06-05 03:35:25,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:35:25
[2026-06-05 03:35:26,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:35:26,461.461 INFO    ] Initializing speech engine...
[2026-06-05 03:35:26,476.476 INFO    ] 2026-06-05 03:35:26
[2026-06-05 03:35:26,762.762 INFO    ] 2026-06-05 03:35:26
[2026-06-05 03:35:26,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:35:26,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:35:26,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:35:27,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:35:27,109.109 INFO    ] time= 05/06/2026 03:35:27
[2026-06-05 03:35:27,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:35:27,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:35:27,229.229 INFO    ] No existing commands found in stream
[2026-06-05 03:35:32,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:35:32,268.268 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 03:35:35,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:35:35,059.059 INFO    ] Checking for system updates...
[2026-06-05 03:35:35,094.094 INFO    ] 200
[2026-06-05 03:35:35,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:35:35,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:35:35,154.154 INFO    ] No update needed
[2026-06-05 03:35:35,156.156 INFO    ] Checking for camera pi updates...
[2026-06-05 03:35:35,191.191 INFO    ] 200
[2026-06-05 03:35:35,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:35:35,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:35:35,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:35:35,391.391 INFO    ] No camera update needed
[2026-06-05 03:35:35,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:35:35,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:35:35,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:35:35,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:35:37,448.448 INFO    ] ================================================
[2026-06-05 03:35:37,463.463 INFO    ] Launching Daemon at Fri Jun  5 03:35:37 IST 2026
[2026-06-05 03:35:37,474.474 INFO    ] ================================================
[2026-06-05 03:35:38,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:35:38
[2026-06-05 03:35:38,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:35:38,943.943 INFO    ] Initializing speech engine...
[2026-06-05 03:35:38,949.949 INFO    ] 2026-06-05 03:35:38
[2026-06-05 03:35:39,213.213 INFO    ] 2026-06-05 03:35:39
[2026-06-05 03:35:39,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:35:39,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:35:39,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:35:39,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:35:39,705.705 INFO    ] time= 05/06/2026 03:35:39
[2026-06-05 03:35:39,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:35:39,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:35:39,844.844 INFO    ] No existing commands found in stream
[2026-06-05 03:35:44,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:35:44,867.867 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 03:35:48,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:35:48,639.639 INFO    ] Checking for system updates...
[2026-06-05 03:35:48,675.675 INFO    ] 200
[2026-06-05 03:35:48,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:35:48,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:35:48,734.734 INFO    ] No update needed
[2026-06-05 03:35:48,737.737 INFO    ] Checking for camera pi updates...
[2026-06-05 03:35:48,771.771 INFO    ] 200
[2026-06-05 03:35:48,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:35:48,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:35:48,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:35:48,875.875 INFO    ] No camera update needed
[2026-06-05 03:35:48,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:35:48,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:35:48,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:35:48,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:35:50,932.932 INFO    ] ================================================
[2026-06-05 03:35:50,949.949 INFO    ] Launching Daemon at Fri Jun  5 03:35:50 IST 2026
[2026-06-05 03:35:50,960.960 INFO    ] ================================================
[2026-06-05 03:35:51,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:35:51
[2026-06-05 03:35:52,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:35:52,451.451 INFO    ] Initializing speech engine...
[2026-06-05 03:35:52,460.460 INFO    ] 2026-06-05 03:35:52
[2026-06-05 03:35:52,743.743 INFO    ] 2026-06-05 03:35:52
[2026-06-05 03:35:52,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:35:52,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:35:52,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:35:53,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:35:53,128.128 INFO    ] time= 05/06/2026 03:35:53
[2026-06-05 03:35:53,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:35:53,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:35:53,287.287 INFO    ] No existing commands found in stream
[2026-06-05 03:35:58,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:35:58,315.315 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 03:35:59,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:35:59,976.976 INFO    ] Checking for system updates...
[2026-06-05 03:36:00,013.013 INFO    ] 200
[2026-06-05 03:36:00,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:00,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:36:00,075.075 INFO    ] No update needed
[2026-06-05 03:36:00,078.078 INFO    ] Checking for camera pi updates...
[2026-06-05 03:36:00,113.113 INFO    ] 200
[2026-06-05 03:36:00,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:00,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:36:00,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:36:00,194.194 INFO    ] No camera update needed
[2026-06-05 03:36:00,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:36:00,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:36:00,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:36:00,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:36:02,252.252 INFO    ] ================================================
[2026-06-05 03:36:02,280.280 INFO    ] Launching Daemon at Fri Jun  5 03:36:02 IST 2026
[2026-06-05 03:36:02,296.296 INFO    ] ================================================
[2026-06-05 03:36:02,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:36:02
[2026-06-05 03:36:03,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:36:03,971.971 INFO    ] Initializing speech engine...
[2026-06-05 03:36:03,981.981 INFO    ] 2026-06-05 03:36:03
[2026-06-05 03:36:04,271.271 INFO    ] 2026-06-05 03:36:04
[2026-06-05 03:36:04,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:36:04,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:36:04,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:36:04,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:36:04,740.740 INFO    ] time= 05/06/2026 03:36:04
[2026-06-05 03:36:04,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:36:04,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:36:04,925.925 INFO    ] No existing commands found in stream
[2026-06-05 03:36:09,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:36:09,940.940 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 03:36:13,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:36:13,651.651 INFO    ] Checking for system updates...
[2026-06-05 03:36:13,688.688 INFO    ] 200
[2026-06-05 03:36:13,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:13,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:36:13,749.749 INFO    ] No update needed
[2026-06-05 03:36:13,752.752 INFO    ] Checking for camera pi updates...
[2026-06-05 03:36:13,787.787 INFO    ] 200
[2026-06-05 03:36:13,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:13,835.835 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:36:13,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:36:13,881.881 INFO    ] No camera update needed
[2026-06-05 03:36:13,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:36:13,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:36:13,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:36:13,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:36:15,942.942 INFO    ] ================================================
[2026-06-05 03:36:15,957.957 INFO    ] Launching Daemon at Fri Jun  5 03:36:15 IST 2026
[2026-06-05 03:36:15,968.968 INFO    ] ================================================
[2026-06-05 03:36:16,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:36:16
[2026-06-05 03:36:17,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:36:17,384.384 INFO    ] Initializing speech engine...
[2026-06-05 03:36:17,406.406 INFO    ] 2026-06-05 03:36:17
[2026-06-05 03:36:17,663.663 INFO    ] 2026-06-05 03:36:17
[2026-06-05 03:36:17,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:36:17,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:36:17,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:36:18,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:36:18,145.145 INFO    ] time= 05/06/2026 03:36:18
[2026-06-05 03:36:18,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:36:18,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:36:18,291.291 INFO    ] No existing commands found in stream
[2026-06-05 03:36:23,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:36:23,306.306 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 03:36:26,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:36:26,787.787 INFO    ] Checking for system updates...
[2026-06-05 03:36:26,823.823 INFO    ] 200
[2026-06-05 03:36:26,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:26,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:36:26,884.884 INFO    ] No update needed
[2026-06-05 03:36:26,887.887 INFO    ] Checking for camera pi updates...
[2026-06-05 03:36:26,921.921 INFO    ] 200
[2026-06-05 03:36:26,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:26,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:36:27,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:36:27,015.015 INFO    ] No camera update needed
[2026-06-05 03:36:27,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:36:27,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:36:27,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:36:27,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:36:29,071.071 INFO    ] ================================================
[2026-06-05 03:36:29,086.086 INFO    ] Launching Daemon at Fri Jun  5 03:36:29 IST 2026
[2026-06-05 03:36:29,097.097 INFO    ] ================================================
[2026-06-05 03:36:29,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:36:29
[2026-06-05 03:36:30,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:36:30,521.521 INFO    ] Initializing speech engine...
[2026-06-05 03:36:30,534.534 INFO    ] 2026-06-05 03:36:30
[2026-06-05 03:36:30,783.783 INFO    ] 2026-06-05 03:36:30
[2026-06-05 03:36:30,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:36:30,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:36:31,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:36:31,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:36:31,160.160 INFO    ] time= 05/06/2026 03:36:31
[2026-06-05 03:36:31,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:36:31,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:36:31,338.338 INFO    ] No existing commands found in stream
[2026-06-05 03:36:36,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:36:36,371.371 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 03:36:40,278.278 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:36:40,281.281 INFO    ] Checking for system updates...
[2026-06-05 03:36:40,320.320 INFO    ] 200
[2026-06-05 03:36:40,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:40,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:36:40,383.383 INFO    ] No update needed
[2026-06-05 03:36:40,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 03:36:40,420.420 INFO    ] 200
[2026-06-05 03:36:40,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:40,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:36:40,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:36:40,512.512 INFO    ] No camera update needed
[2026-06-05 03:36:40,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:36:40,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:36:40,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:36:40,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:36:42,568.568 INFO    ] ================================================
[2026-06-05 03:36:42,584.584 INFO    ] Launching Daemon at Fri Jun  5 03:36:42 IST 2026
[2026-06-05 03:36:42,595.595 INFO    ] ================================================
[2026-06-05 03:36:43,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:36:43
[2026-06-05 03:36:43,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:36:44,059.059 INFO    ] Initializing speech engine...
[2026-06-05 03:36:44,068.068 INFO    ] 2026-06-05 03:36:44
[2026-06-05 03:36:44,322.322 INFO    ] 2026-06-05 03:36:44
[2026-06-05 03:36:44,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:36:44,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:36:44,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:36:44,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:36:44,792.792 INFO    ] time= 05/06/2026 03:36:44
[2026-06-05 03:36:44,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:36:44,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:36:44,942.942 INFO    ] No existing commands found in stream
[2026-06-05 03:36:49,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:36:49,966.966 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 03:36:51,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:36:51,773.773 INFO    ] Checking for system updates...
[2026-06-05 03:36:51,810.810 INFO    ] 200
[2026-06-05 03:36:51,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:51,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:36:51,870.870 INFO    ] No update needed
[2026-06-05 03:36:51,873.873 INFO    ] Checking for camera pi updates...
[2026-06-05 03:36:51,907.907 INFO    ] 200
[2026-06-05 03:36:51,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:36:51,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:36:51,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:36:51,994.994 INFO    ] No camera update needed
[2026-06-05 03:36:51,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:36:52,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:36:52,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:36:52,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:36:54,053.053 INFO    ] ================================================
[2026-06-05 03:36:54,068.068 INFO    ] Launching Daemon at Fri Jun  5 03:36:54 IST 2026
[2026-06-05 03:36:54,080.080 INFO    ] ================================================
[2026-06-05 03:36:54,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:36:54
[2026-06-05 03:36:55,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:36:55,570.570 INFO    ] Initializing speech engine...
[2026-06-05 03:36:55,586.586 INFO    ] 2026-06-05 03:36:55
[2026-06-05 03:36:55,854.854 INFO    ] 2026-06-05 03:36:55
[2026-06-05 03:36:55,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:36:56,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:36:56,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:36:56,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:36:56,333.333 INFO    ] time= 05/06/2026 03:36:56
[2026-06-05 03:36:56,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:36:56,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:36:56,512.512 INFO    ] No existing commands found in stream
[2026-06-05 03:37:01,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:37:01,527.527 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 03:37:02,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:37:02,924.924 INFO    ] Checking for system updates...
[2026-06-05 03:37:02,972.972 INFO    ] 200
[2026-06-05 03:37:02,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:03,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:37:03,058.058 INFO    ] No update needed
[2026-06-05 03:37:03,061.061 INFO    ] Checking for camera pi updates...
[2026-06-05 03:37:03,121.121 INFO    ] 200
[2026-06-05 03:37:03,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:03,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:37:03,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:37:03,237.237 INFO    ] No camera update needed
[2026-06-05 03:37:03,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:37:03,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:37:03,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:37:03,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:37:05,303.303 INFO    ] ================================================
[2026-06-05 03:37:05,318.318 INFO    ] Launching Daemon at Fri Jun  5 03:37:05 IST 2026
[2026-06-05 03:37:05,329.329 INFO    ] ================================================
[2026-06-05 03:37:05,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:37:05
[2026-06-05 03:37:06,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:37:06,946.946 INFO    ] Initializing speech engine...
[2026-06-05 03:37:06,955.955 INFO    ] 2026-06-05 03:37:06
[2026-06-05 03:37:07,246.246 INFO    ] 2026-06-05 03:37:07
[2026-06-05 03:37:07,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:37:07,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:37:07,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:37:07,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:37:07,789.789 INFO    ] time= 05/06/2026 03:37:07
[2026-06-05 03:37:07,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:37:07,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:37:07,926.926 INFO    ] No existing commands found in stream
[2026-06-05 03:37:12,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:37:12,960.960 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 03:37:14,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:37:14,767.767 INFO    ] Checking for system updates...
[2026-06-05 03:37:14,808.808 INFO    ] 200
[2026-06-05 03:37:14,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:14,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:37:14,870.870 INFO    ] No update needed
[2026-06-05 03:37:14,874.874 INFO    ] Checking for camera pi updates...
[2026-06-05 03:37:14,923.923 INFO    ] 200
[2026-06-05 03:37:14,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:14,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:37:15,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:37:15,021.021 INFO    ] No camera update needed
[2026-06-05 03:37:15,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:37:15,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:37:15,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:37:15,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:37:17,081.081 INFO    ] ================================================
[2026-06-05 03:37:17,100.100 INFO    ] Launching Daemon at Fri Jun  5 03:37:17 IST 2026
[2026-06-05 03:37:17,111.111 INFO    ] ================================================
[2026-06-05 03:37:17,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:37:17
[2026-06-05 03:37:18,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:37:18,532.532 INFO    ] Initializing speech engine...
[2026-06-05 03:37:18,538.538 INFO    ] 2026-06-05 03:37:18
[2026-06-05 03:37:18,837.837 INFO    ] 2026-06-05 03:37:18
[2026-06-05 03:37:18,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:37:19,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:37:19,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:37:19,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:37:19,242.242 INFO    ] time= 05/06/2026 03:37:19
[2026-06-05 03:37:19,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:37:19,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:37:19,352.352 INFO    ] No existing commands found in stream
[2026-06-05 03:37:24,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:37:24,368.368 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 03:37:27,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:37:27,197.197 INFO    ] Checking for system updates...
[2026-06-05 03:37:27,233.233 INFO    ] 200
[2026-06-05 03:37:27,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:27,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:37:27,292.292 INFO    ] No update needed
[2026-06-05 03:37:27,295.295 INFO    ] Checking for camera pi updates...
[2026-06-05 03:37:27,333.333 INFO    ] 200
[2026-06-05 03:37:27,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:27,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:37:27,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:37:27,411.411 INFO    ] No camera update needed
[2026-06-05 03:37:27,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:37:27,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:37:27,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:37:27,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:37:29,468.468 INFO    ] ================================================
[2026-06-05 03:37:29,484.484 INFO    ] Launching Daemon at Fri Jun  5 03:37:29 IST 2026
[2026-06-05 03:37:29,495.495 INFO    ] ================================================
[2026-06-05 03:37:30,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:37:30
[2026-06-05 03:37:30,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:37:30,952.952 INFO    ] Initializing speech engine...
[2026-06-05 03:37:30,975.975 INFO    ] 2026-06-05 03:37:30
[2026-06-05 03:37:31,230.230 INFO    ] 2026-06-05 03:37:31
[2026-06-05 03:37:31,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:37:31,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:37:31,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:37:31,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:37:31,601.601 INFO    ] time= 05/06/2026 03:37:31
[2026-06-05 03:37:31,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:37:31,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:37:31,679.679 INFO    ] No existing commands found in stream
[2026-06-05 03:37:36,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:37:36,707.707 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 03:37:40,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:37:40,186.186 INFO    ] Checking for system updates...
[2026-06-05 03:37:40,226.226 INFO    ] 200
[2026-06-05 03:37:40,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:40,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:37:40,285.285 INFO    ] No update needed
[2026-06-05 03:37:40,287.287 INFO    ] Checking for camera pi updates...
[2026-06-05 03:37:40,325.325 INFO    ] 200
[2026-06-05 03:37:40,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:40,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:37:40,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:37:40,518.518 INFO    ] No camera update needed
[2026-06-05 03:37:40,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:37:40,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:37:40,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:37:40,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:37:42,577.577 INFO    ] ================================================
[2026-06-05 03:37:42,593.593 INFO    ] Launching Daemon at Fri Jun  5 03:37:42 IST 2026
[2026-06-05 03:37:42,605.605 INFO    ] ================================================
[2026-06-05 03:37:43,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:37:43
[2026-06-05 03:37:43,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:37:44,024.024 INFO    ] Initializing speech engine...
[2026-06-05 03:37:44,038.038 INFO    ] 2026-06-05 03:37:44
[2026-06-05 03:37:44,326.326 INFO    ] 2026-06-05 03:37:44
[2026-06-05 03:37:44,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:37:44,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:37:44,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:37:44,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:37:44,721.721 INFO    ] time= 05/06/2026 03:37:44
[2026-06-05 03:37:44,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:37:44,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:37:44,840.840 INFO    ] No existing commands found in stream
[2026-06-05 03:37:49,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:37:49,858.858 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 03:37:52,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:37:52,616.616 INFO    ] Checking for system updates...
[2026-06-05 03:37:52,652.652 INFO    ] 200
[2026-06-05 03:37:52,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:52,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:37:52,711.711 INFO    ] No update needed
[2026-06-05 03:37:52,713.713 INFO    ] Checking for camera pi updates...
[2026-06-05 03:37:52,747.747 INFO    ] 200
[2026-06-05 03:37:52,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:37:52,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:37:52,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:37:52,843.843 INFO    ] No camera update needed
[2026-06-05 03:37:52,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:37:52,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:37:52,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:37:52,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:37:54,900.900 INFO    ] ================================================
[2026-06-05 03:37:54,917.917 INFO    ] Launching Daemon at Fri Jun  5 03:37:54 IST 2026
[2026-06-05 03:37:54,928.928 INFO    ] ================================================
[2026-06-05 03:37:55,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:37:55
[2026-06-05 03:37:56,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:37:56,368.368 INFO    ] Initializing speech engine...
[2026-06-05 03:37:56,376.376 INFO    ] 2026-06-05 03:37:56
[2026-06-05 03:37:56,675.675 INFO    ] 2026-06-05 03:37:56
[2026-06-05 03:37:56,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:37:56,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:37:56,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:37:57,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:37:57,065.065 INFO    ] time= 05/06/2026 03:37:57
[2026-06-05 03:37:57,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:37:57,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:37:57,264.264 INFO    ] No existing commands found in stream
[2026-06-05 03:38:02,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:38:02,279.279 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 03:38:04,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:38:04,877.877 INFO    ] Checking for system updates...
[2026-06-05 03:38:04,917.917 INFO    ] 200
[2026-06-05 03:38:04,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:04,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:38:04,980.980 INFO    ] No update needed
[2026-06-05 03:38:04,982.982 INFO    ] Checking for camera pi updates...
[2026-06-05 03:38:05,016.016 INFO    ] 200
[2026-06-05 03:38:05,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:05,063.063 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:38:05,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:38:05,114.114 INFO    ] No camera update needed
[2026-06-05 03:38:05,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:38:05,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:38:05,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:38:05,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:38:07,173.173 INFO    ] ================================================
[2026-06-05 03:38:07,188.188 INFO    ] Launching Daemon at Fri Jun  5 03:38:07 IST 2026
[2026-06-05 03:38:07,199.199 INFO    ] ================================================
[2026-06-05 03:38:07,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:38:07
[2026-06-05 03:38:08,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:38:08,698.698 INFO    ] Initializing speech engine...
[2026-06-05 03:38:08,705.705 INFO    ] 2026-06-05 03:38:08
[2026-06-05 03:38:08,999.999 INFO    ] 2026-06-05 03:38:08
[2026-06-05 03:38:09,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:38:09,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:38:09,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:38:09,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:38:09,485.485 INFO    ] time= 05/06/2026 03:38:09
[2026-06-05 03:38:09,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:38:09,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:38:09,619.619 INFO    ] No existing commands found in stream
[2026-06-05 03:38:14,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:38:14,634.634 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 03:38:16,592.592 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:38:16,596.596 INFO    ] Checking for system updates...
[2026-06-05 03:38:16,632.632 INFO    ] 200
[2026-06-05 03:38:16,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:16,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:38:16,698.698 INFO    ] No update needed
[2026-06-05 03:38:16,700.700 INFO    ] Checking for camera pi updates...
[2026-06-05 03:38:16,739.739 INFO    ] 200
[2026-06-05 03:38:16,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:16,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:38:16,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:38:16,814.814 INFO    ] No camera update needed
[2026-06-05 03:38:16,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:38:16,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:38:16,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:38:16,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:38:18,869.869 INFO    ] ================================================
[2026-06-05 03:38:18,885.885 INFO    ] Launching Daemon at Fri Jun  5 03:38:18 IST 2026
[2026-06-05 03:38:18,895.895 INFO    ] ================================================
[2026-06-05 03:38:19,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:38:19
[2026-06-05 03:38:20,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:38:20,443.443 INFO    ] Initializing speech engine...
[2026-06-05 03:38:20,451.451 INFO    ] 2026-06-05 03:38:20
[2026-06-05 03:38:20,705.705 INFO    ] 2026-06-05 03:38:20
[2026-06-05 03:38:20,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:38:20,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:38:20,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:38:21,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:38:21,083.083 INFO    ] time= 05/06/2026 03:38:21
[2026-06-05 03:38:21,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:38:21,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:38:21,160.160 INFO    ] No existing commands found in stream
[2026-06-05 03:38:26,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:38:26,175.175 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 03:38:29,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:38:29,520.520 INFO    ] Checking for system updates...
[2026-06-05 03:38:29,557.557 INFO    ] 200
[2026-06-05 03:38:29,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:29,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:38:29,613.613 INFO    ] No update needed
[2026-06-05 03:38:29,616.616 INFO    ] Checking for camera pi updates...
[2026-06-05 03:38:29,658.658 INFO    ] 200
[2026-06-05 03:38:29,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:29,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:38:29,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:38:29,752.752 INFO    ] No camera update needed
[2026-06-05 03:38:29,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:38:29,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:38:29,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:38:29,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:38:31,812.812 INFO    ] ================================================
[2026-06-05 03:38:31,834.834 INFO    ] Launching Daemon at Fri Jun  5 03:38:31 IST 2026
[2026-06-05 03:38:31,847.847 INFO    ] ================================================
[2026-06-05 03:38:32,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:38:32
[2026-06-05 03:38:33,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:38:33,523.523 INFO    ] Initializing speech engine...
[2026-06-05 03:38:33,532.532 INFO    ] 2026-06-05 03:38:33
[2026-06-05 03:38:33,818.818 INFO    ] 2026-06-05 03:38:33
[2026-06-05 03:38:33,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:38:34,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:38:34,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:38:34,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:38:34,285.285 INFO    ] time= 05/06/2026 03:38:34
[2026-06-05 03:38:34,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:38:34,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:38:34,435.435 INFO    ] No existing commands found in stream
[2026-06-05 03:38:39,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:38:39,451.451 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 03:38:43,791.791 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:38:43,794.794 INFO    ] Checking for system updates...
[2026-06-05 03:38:43,831.831 INFO    ] 200
[2026-06-05 03:38:43,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:43,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:38:43,895.895 INFO    ] No update needed
[2026-06-05 03:38:43,899.899 INFO    ] Checking for camera pi updates...
[2026-06-05 03:38:43,937.937 INFO    ] 200
[2026-06-05 03:38:43,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:43,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:38:44,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:38:44,030.030 INFO    ] No camera update needed
[2026-06-05 03:38:44,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:38:44,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:38:44,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:38:44,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:38:46,090.090 INFO    ] ================================================
[2026-06-05 03:38:46,107.107 INFO    ] Launching Daemon at Fri Jun  5 03:38:46 IST 2026
[2026-06-05 03:38:46,118.118 INFO    ] ================================================
[2026-06-05 03:38:46,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:38:46
[2026-06-05 03:38:47,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:38:47,701.701 INFO    ] Initializing speech engine...
[2026-06-05 03:38:47,709.709 INFO    ] 2026-06-05 03:38:47
[2026-06-05 03:38:47,995.995 INFO    ] 2026-06-05 03:38:47
[2026-06-05 03:38:48,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:38:48,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:38:48,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:38:48,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:38:48,535.535 INFO    ] time= 05/06/2026 03:38:48
[2026-06-05 03:38:48,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:38:48,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:38:48,682.682 INFO    ] No existing commands found in stream
[2026-06-05 03:38:53,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:38:53,712.712 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 03:38:56,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:38:56,182.182 INFO    ] Checking for system updates...
[2026-06-05 03:38:56,222.222 INFO    ] 200
[2026-06-05 03:38:56,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:56,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:38:56,280.280 INFO    ] No update needed
[2026-06-05 03:38:56,282.282 INFO    ] Checking for camera pi updates...
[2026-06-05 03:38:56,321.321 INFO    ] 200
[2026-06-05 03:38:56,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:38:56,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:38:56,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:38:56,409.409 INFO    ] No camera update needed
[2026-06-05 03:38:56,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:38:56,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:38:56,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:38:56,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:38:58,465.465 INFO    ] ================================================
[2026-06-05 03:38:58,480.480 INFO    ] Launching Daemon at Fri Jun  5 03:38:58 IST 2026
[2026-06-05 03:38:58,491.491 INFO    ] ================================================
[2026-06-05 03:38:59,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:38:59
[2026-06-05 03:38:59,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:38:59,940.940 INFO    ] Initializing speech engine...
[2026-06-05 03:38:59,951.951 INFO    ] 2026-06-05 03:38:59
[2026-06-05 03:39:00,211.211 INFO    ] 2026-06-05 03:39:00
[2026-06-05 03:39:00,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:39:00,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:39:00,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:39:00,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:39:00,570.570 INFO    ] time= 05/06/2026 03:39:00
[2026-06-05 03:39:00,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:39:00,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:39:00,751.751 INFO    ] No existing commands found in stream
[2026-06-05 03:39:05,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:39:05,780.780 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 03:39:08,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:39:08,419.419 INFO    ] Checking for system updates...
[2026-06-05 03:39:08,456.456 INFO    ] 200
[2026-06-05 03:39:08,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:08,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:39:08,521.521 INFO    ] No update needed
[2026-06-05 03:39:08,523.523 INFO    ] Checking for camera pi updates...
[2026-06-05 03:39:08,557.557 INFO    ] 200
[2026-06-05 03:39:08,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:08,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:39:08,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:39:08,646.646 INFO    ] No camera update needed
[2026-06-05 03:39:08,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:39:08,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:39:08,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:39:08,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:39:10,703.703 INFO    ] ================================================
[2026-06-05 03:39:10,718.718 INFO    ] Launching Daemon at Fri Jun  5 03:39:10 IST 2026
[2026-06-05 03:39:10,729.729 INFO    ] ================================================
[2026-06-05 03:39:11,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:39:11
[2026-06-05 03:39:11,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:39:12,172.172 INFO    ] Initializing speech engine...
[2026-06-05 03:39:12,181.181 INFO    ] 2026-06-05 03:39:12
[2026-06-05 03:39:12,447.447 INFO    ] 2026-06-05 03:39:12
[2026-06-05 03:39:12,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:39:12,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:39:12,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:39:12,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:39:12,843.843 INFO    ] time= 05/06/2026 03:39:12
[2026-06-05 03:39:12,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:39:12,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:39:13,005.005 INFO    ] No existing commands found in stream
[2026-06-05 03:39:18,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:39:18,030.030 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 03:39:21,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:39:21,942.942 INFO    ] Checking for system updates...
[2026-06-05 03:39:21,979.979 INFO    ] 200
[2026-06-05 03:39:21,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:22,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:39:22,037.037 INFO    ] No update needed
[2026-06-05 03:39:22,039.039 INFO    ] Checking for camera pi updates...
[2026-06-05 03:39:22,086.086 INFO    ] 200
[2026-06-05 03:39:22,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:22,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:39:22,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:39:22,185.185 INFO    ] No camera update needed
[2026-06-05 03:39:22,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:39:22,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:39:22,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:39:22,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:39:24,241.241 INFO    ] ================================================
[2026-06-05 03:39:24,257.257 INFO    ] Launching Daemon at Fri Jun  5 03:39:24 IST 2026
[2026-06-05 03:39:24,268.268 INFO    ] ================================================
[2026-06-05 03:39:24,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:39:24
[2026-06-05 03:39:25,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:39:25,696.696 INFO    ] Initializing speech engine...
[2026-06-05 03:39:25,706.706 INFO    ] 2026-06-05 03:39:25
[2026-06-05 03:39:25,950.950 INFO    ] 2026-06-05 03:39:25
[2026-06-05 03:39:25,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:39:26,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:39:26,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:39:26,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:39:26,419.419 INFO    ] time= 05/06/2026 03:39:26
[2026-06-05 03:39:26,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:39:26,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:39:26,595.595 INFO    ] No existing commands found in stream
[2026-06-05 03:39:31,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:39:31,630.630 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 03:39:35,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:39:35,195.195 INFO    ] Checking for system updates...
[2026-06-05 03:39:35,232.232 INFO    ] 200
[2026-06-05 03:39:35,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:35,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:39:35,294.294 INFO    ] No update needed
[2026-06-05 03:39:35,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 03:39:35,330.330 INFO    ] 200
[2026-06-05 03:39:35,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:35,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:39:35,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:39:35,407.407 INFO    ] No camera update needed
[2026-06-05 03:39:35,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:39:35,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:39:35,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:39:35,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:39:37,465.465 INFO    ] ================================================
[2026-06-05 03:39:37,481.481 INFO    ] Launching Daemon at Fri Jun  5 03:39:37 IST 2026
[2026-06-05 03:39:37,492.492 INFO    ] ================================================
[2026-06-05 03:39:38,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:39:38
[2026-06-05 03:39:38,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:39:38,979.979 INFO    ] Initializing speech engine...
[2026-06-05 03:39:38,988.988 INFO    ] 2026-06-05 03:39:38
[2026-06-05 03:39:39,249.249 INFO    ] 2026-06-05 03:39:39
[2026-06-05 03:39:39,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:39:39,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:39:39,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:39:39,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:39:39,719.719 INFO    ] time= 05/06/2026 03:39:39
[2026-06-05 03:39:39,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:39:39,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:39:39,924.924 INFO    ] No existing commands found in stream
[2026-06-05 03:39:44,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:39:44,958.958 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 03:39:46,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:39:46,082.082 INFO    ] Checking for system updates...
[2026-06-05 03:39:46,119.119 INFO    ] 200
[2026-06-05 03:39:46,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:46,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:39:46,176.176 INFO    ] No update needed
[2026-06-05 03:39:46,179.179 INFO    ] Checking for camera pi updates...
[2026-06-05 03:39:46,216.216 INFO    ] 200
[2026-06-05 03:39:46,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:46,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:39:46,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:39:46,408.408 INFO    ] No camera update needed
[2026-06-05 03:39:46,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:39:46,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:39:46,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:39:46,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:39:48,464.464 INFO    ] ================================================
[2026-06-05 03:39:48,480.480 INFO    ] Launching Daemon at Fri Jun  5 03:39:48 IST 2026
[2026-06-05 03:39:48,491.491 INFO    ] ================================================
[2026-06-05 03:39:49,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:39:49
[2026-06-05 03:39:49,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:39:50,083.083 INFO    ] Initializing speech engine...
[2026-06-05 03:39:50,092.092 INFO    ] 2026-06-05 03:39:50
[2026-06-05 03:39:50,361.361 INFO    ] 2026-06-05 03:39:50
[2026-06-05 03:39:50,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:39:50,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:39:50,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:39:50,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:39:50,843.843 INFO    ] time= 05/06/2026 03:39:50
[2026-06-05 03:39:50,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:39:50,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:39:50,993.993 INFO    ] No existing commands found in stream
[2026-06-05 03:39:56,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:39:56,009.009 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 03:39:59,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:39:59,705.705 INFO    ] Checking for system updates...
[2026-06-05 03:39:59,742.742 INFO    ] 200
[2026-06-05 03:39:59,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:59,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:39:59,801.801 INFO    ] No update needed
[2026-06-05 03:39:59,804.804 INFO    ] Checking for camera pi updates...
[2026-06-05 03:39:59,838.838 INFO    ] 200
[2026-06-05 03:39:59,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:39:59,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:39:59,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:39:59,938.938 INFO    ] No camera update needed
[2026-06-05 03:39:59,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:39:59,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:39:59,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:39:59,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:40:02,051.051 INFO    ] ================================================
[2026-06-05 03:40:02,086.086 INFO    ] Launching Daemon at Fri Jun  5 03:40:02 IST 2026
[2026-06-05 03:40:02,124.124 INFO    ] ================================================
[2026-06-05 03:40:02,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:40:02
[2026-06-05 03:40:03,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:40:03,913.913 INFO    ] Initializing speech engine...
[2026-06-05 03:40:03,921.921 INFO    ] 2026-06-05 03:40:03
[2026-06-05 03:40:04,168.168 INFO    ] 2026-06-05 03:40:04
[2026-06-05 03:40:04,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:40:04,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:40:04,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:40:04,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:40:04,665.665 INFO    ] time= 05/06/2026 03:40:04
[2026-06-05 03:40:04,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:40:04,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:40:04,849.849 INFO    ] No existing commands found in stream
[2026-06-05 03:40:09,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:40:09,882.882 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-05 03:40:10,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:40:10,457.457 INFO    ] Checking for system updates...
[2026-06-05 03:40:10,496.496 INFO    ] 200
[2026-06-05 03:40:10,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:40:10,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:40:10,554.554 INFO    ] No update needed
[2026-06-05 03:40:10,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 03:40:10,593.593 INFO    ] 200
[2026-06-05 03:40:10,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:40:10,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:40:10,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:40:10,679.679 INFO    ] No camera update needed
[2026-06-05 03:40:10,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:40:10,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:40:10,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:40:10,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:40:12,740.740 INFO    ] ================================================
[2026-06-05 03:40:12,756.756 INFO    ] Launching Daemon at Fri Jun  5 03:40:12 IST 2026
[2026-06-05 03:40:12,767.767 INFO    ] ================================================
[2026-06-05 03:40:13,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:40:13
[2026-06-05 03:40:14,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:40:14,352.352 INFO    ] Initializing speech engine...
[2026-06-05 03:40:14,363.363 INFO    ] 2026-06-05 03:40:14
[2026-06-05 03:40:14,629.629 INFO    ] 2026-06-05 03:40:14
[2026-06-05 03:40:14,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:40:14,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:40:14,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:40:15,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:40:15,121.121 INFO    ] time= 05/06/2026 03:40:15
[2026-06-05 03:40:15,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:40:15,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:40:15,259.259 INFO    ] No existing commands found in stream
[2026-06-05 03:40:20,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:40:20,275.275 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 03:40:22,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:40:22,781.781 INFO    ] Checking for system updates...
[2026-06-05 03:40:22,818.818 INFO    ] 200
[2026-06-05 03:40:22,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:40:22,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:40:22,879.879 INFO    ] No update needed
[2026-06-05 03:40:22,881.881 INFO    ] Checking for camera pi updates...
[2026-06-05 03:40:22,915.915 INFO    ] 200
[2026-06-05 03:40:22,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:40:22,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:40:23,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:40:23,004.004 INFO    ] No camera update needed
[2026-06-05 03:40:23,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:40:23,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:40:23,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:40:23,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:40:25,059.059 INFO    ] ================================================
[2026-06-05 03:40:25,074.074 INFO    ] Launching Daemon at Fri Jun  5 03:40:25 IST 2026
[2026-06-05 03:40:25,084.084 INFO    ] ================================================
[2026-06-05 03:40:25,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:40:25
[2026-06-05 03:40:26,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:40:26,510.510 INFO    ] Initializing speech engine...
[2026-06-05 03:40:26,517.517 INFO    ] 2026-06-05 03:40:26
[2026-06-05 03:40:26,804.804 INFO    ] 2026-06-05 03:40:26
[2026-06-05 03:40:26,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:40:27,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:40:27,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:40:27,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:40:27,302.302 INFO    ] time= 05/06/2026 03:40:27
[2026-06-05 03:40:27,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:40:27,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:40:27,485.485 INFO    ] No existing commands found in stream
[2026-06-05 03:40:32,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:40:32,499.499 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 03:40:35,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:40:35,493.493 INFO    ] Checking for system updates...
[2026-06-05 03:40:35,529.529 INFO    ] 200
[2026-06-05 03:40:35,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:40:35,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:40:35,588.588 INFO    ] No update needed
[2026-06-05 03:40:35,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 03:40:35,627.627 INFO    ] 200
[2026-06-05 03:40:35,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:40:35,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:40:35,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:40:35,712.712 INFO    ] No camera update needed
[2026-06-05 03:40:35,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:40:35,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:40:35,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:40:35,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:40:37,767.767 INFO    ] ================================================
[2026-06-05 03:40:37,784.784 INFO    ] Launching Daemon at Fri Jun  5 03:40:37 IST 2026
[2026-06-05 03:40:37,795.795 INFO    ] ================================================
[2026-06-05 03:40:38,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:40:38
[2026-06-05 03:40:39,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:40:39,370.370 INFO    ] Initializing speech engine...
[2026-06-05 03:40:39,378.378 INFO    ] 2026-06-05 03:40:39
[2026-06-05 03:40:39,663.663 INFO    ] 2026-06-05 03:40:39
[2026-06-05 03:40:39,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:40:39,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:40:39,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:40:40,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:40:40,210.210 INFO    ] time= 05/06/2026 03:40:40
[2026-06-05 03:40:40,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:40:40,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:40:40,354.354 INFO    ] No existing commands found in stream
[2026-06-05 03:40:45,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:40:45,381.381 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 03:40:47,191.191 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:40:47,194.194 INFO    ] Checking for system updates...
[2026-06-05 03:40:47,231.231 INFO    ] 200
[2026-06-05 03:40:47,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:40:47,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:40:47,295.295 INFO    ] No update needed
[2026-06-05 03:40:47,298.298 INFO    ] Checking for camera pi updates...
[2026-06-05 03:40:47,332.332 INFO    ] 200
[2026-06-05 03:40:47,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:40:47,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:40:47,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:40:47,427.427 INFO    ] No camera update needed
[2026-06-05 03:40:47,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:40:47,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:40:47,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:40:47,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:40:49,484.484 INFO    ] ================================================
[2026-06-05 03:40:49,499.499 INFO    ] Launching Daemon at Fri Jun  5 03:40:49 IST 2026
[2026-06-05 03:40:49,510.510 INFO    ] ================================================
[2026-06-05 03:40:50,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:40:50
[2026-06-05 03:40:50,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:40:50,968.968 INFO    ] Initializing speech engine...
[2026-06-05 03:40:50,977.977 INFO    ] 2026-06-05 03:40:50
[2026-06-05 03:40:51,236.236 INFO    ] 2026-06-05 03:40:51
[2026-06-05 03:40:51,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:40:51,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:40:51,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:40:51,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:40:51,707.707 INFO    ] time= 05/06/2026 03:40:51
[2026-06-05 03:40:51,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:40:51,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:40:51,846.846 INFO    ] No existing commands found in stream
[2026-06-05 03:40:56,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:40:56,860.860 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 03:41:00,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:41:00,111.111 INFO    ] Checking for system updates...
[2026-06-05 03:41:00,150.150 INFO    ] 200
[2026-06-05 03:41:00,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:00,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:41:00,207.207 INFO    ] No update needed
[2026-06-05 03:41:00,210.210 INFO    ] Checking for camera pi updates...
[2026-06-05 03:41:00,244.244 INFO    ] 200
[2026-06-05 03:41:00,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:00,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:41:00,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:41:00,335.335 INFO    ] No camera update needed
[2026-06-05 03:41:00,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:41:00,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:41:00,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:41:00,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:41:02,395.395 INFO    ] ================================================
[2026-06-05 03:41:02,417.417 INFO    ] Launching Daemon at Fri Jun  5 03:41:02 IST 2026
[2026-06-05 03:41:02,434.434 INFO    ] ================================================
[2026-06-05 03:41:03,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:41:03
[2026-06-05 03:41:03,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:41:04,006.006 INFO    ] Initializing speech engine...
[2026-06-05 03:41:04,015.015 INFO    ] 2026-06-05 03:41:04
[2026-06-05 03:41:04,318.318 INFO    ] 2026-06-05 03:41:04
[2026-06-05 03:41:04,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:41:04,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:41:04,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:41:04,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:41:04,694.694 INFO    ] time= 05/06/2026 03:41:04
[2026-06-05 03:41:04,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:41:04,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:41:04,778.778 INFO    ] No existing commands found in stream
[2026-06-05 03:41:09,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:41:09,792.792 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 03:41:10,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:41:10,495.495 INFO    ] Checking for system updates...
[2026-06-05 03:41:10,531.531 INFO    ] 200
[2026-06-05 03:41:10,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:10,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:41:10,596.596 INFO    ] No update needed
[2026-06-05 03:41:10,598.598 INFO    ] Checking for camera pi updates...
[2026-06-05 03:41:10,632.632 INFO    ] 200
[2026-06-05 03:41:10,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:10,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:41:10,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:41:10,721.721 INFO    ] No camera update needed
[2026-06-05 03:41:10,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:41:10,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:41:10,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:41:10,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:41:12,777.777 INFO    ] ================================================
[2026-06-05 03:41:12,793.793 INFO    ] Launching Daemon at Fri Jun  5 03:41:12 IST 2026
[2026-06-05 03:41:12,804.804 INFO    ] ================================================
[2026-06-05 03:41:13,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:41:13
[2026-06-05 03:41:14,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:41:14,258.258 INFO    ] Initializing speech engine...
[2026-06-05 03:41:14,281.281 INFO    ] 2026-06-05 03:41:14
[2026-06-05 03:41:14,538.538 INFO    ] 2026-06-05 03:41:14
[2026-06-05 03:41:14,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:41:14,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:41:14,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:41:14,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:41:15,013.013 INFO    ] time= 05/06/2026 03:41:14
[2026-06-05 03:41:15,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:41:15,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:41:15,165.165 INFO    ] No existing commands found in stream
[2026-06-05 03:41:20,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:41:20,180.180 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 03:41:21,331.331 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:41:21,333.333 INFO    ] Checking for system updates...
[2026-06-05 03:41:21,370.370 INFO    ] 200
[2026-06-05 03:41:21,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:21,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:41:21,431.431 INFO    ] No update needed
[2026-06-05 03:41:21,434.434 INFO    ] Checking for camera pi updates...
[2026-06-05 03:41:21,470.470 INFO    ] 200
[2026-06-05 03:41:21,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:21,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:41:21,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:41:21,558.558 INFO    ] No camera update needed
[2026-06-05 03:41:21,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:41:21,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:41:21,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:41:21,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:41:23,616.616 INFO    ] ================================================
[2026-06-05 03:41:23,632.632 INFO    ] Launching Daemon at Fri Jun  5 03:41:23 IST 2026
[2026-06-05 03:41:23,643.643 INFO    ] ================================================
[2026-06-05 03:41:24,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:41:24
[2026-06-05 03:41:24,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:41:25,096.096 INFO    ] Initializing speech engine...
[2026-06-05 03:41:25,104.104 INFO    ] 2026-06-05 03:41:25
[2026-06-05 03:41:25,402.402 INFO    ] 2026-06-05 03:41:25
[2026-06-05 03:41:25,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:41:25,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:41:25,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:41:25,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:41:25,823.823 INFO    ] time= 05/06/2026 03:41:25
[2026-06-05 03:41:25,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:41:25,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:41:25,908.908 INFO    ] No existing commands found in stream
[2026-06-05 03:41:30,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:41:30,924.924 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 03:41:34,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:41:34,112.112 INFO    ] Checking for system updates...
[2026-06-05 03:41:34,149.149 INFO    ] 200
[2026-06-05 03:41:34,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:34,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:41:34,208.208 INFO    ] No update needed
[2026-06-05 03:41:34,211.211 INFO    ] Checking for camera pi updates...
[2026-06-05 03:41:34,246.246 INFO    ] 200
[2026-06-05 03:41:34,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:34,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:41:34,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:41:34,335.335 INFO    ] No camera update needed
[2026-06-05 03:41:34,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:41:34,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:41:34,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:41:34,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:41:36,394.394 INFO    ] ================================================
[2026-06-05 03:41:36,411.411 INFO    ] Launching Daemon at Fri Jun  5 03:41:36 IST 2026
[2026-06-05 03:41:36,422.422 INFO    ] ================================================
[2026-06-05 03:41:37,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:41:37
[2026-06-05 03:41:37,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:41:37,912.912 INFO    ] Initializing speech engine...
[2026-06-05 03:41:37,919.919 INFO    ] 2026-06-05 03:41:37
[2026-06-05 03:41:38,180.180 INFO    ] 2026-06-05 03:41:38
[2026-06-05 03:41:38,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:41:38,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:41:38,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:41:38,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:41:38,630.630 INFO    ] time= 05/06/2026 03:41:38
[2026-06-05 03:41:38,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:41:38,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:41:38,793.793 INFO    ] No existing commands found in stream
[2026-06-05 03:41:43,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:41:43,818.818 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 03:41:46,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:41:46,331.331 INFO    ] Checking for system updates...
[2026-06-05 03:41:46,370.370 INFO    ] 200
[2026-06-05 03:41:46,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:46,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:41:46,427.427 INFO    ] No update needed
[2026-06-05 03:41:46,430.430 INFO    ] Checking for camera pi updates...
[2026-06-05 03:41:46,467.467 INFO    ] 200
[2026-06-05 03:41:46,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:46,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:41:46,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:41:46,556.556 INFO    ] No camera update needed
[2026-06-05 03:41:46,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:41:46,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:41:46,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:41:46,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:41:48,610.610 INFO    ] ================================================
[2026-06-05 03:41:48,625.625 INFO    ] Launching Daemon at Fri Jun  5 03:41:48 IST 2026
[2026-06-05 03:41:48,636.636 INFO    ] ================================================
[2026-06-05 03:41:49,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:41:49
[2026-06-05 03:41:49,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:41:50,245.245 INFO    ] Initializing speech engine...
[2026-06-05 03:41:50,265.265 INFO    ] 2026-06-05 03:41:50
[2026-06-05 03:41:50,544.544 INFO    ] 2026-06-05 03:41:50
[2026-06-05 03:41:50,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:41:50,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:41:50,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:41:50,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:41:50,949.949 INFO    ] time= 05/06/2026 03:41:50
[2026-06-05 03:41:50,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:41:50,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:41:51,056.056 INFO    ] No existing commands found in stream
[2026-06-05 03:41:56,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:41:56,072.072 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 03:41:57,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:41:57,214.214 INFO    ] Checking for system updates...
[2026-06-05 03:41:57,250.250 INFO    ] 200
[2026-06-05 03:41:57,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:57,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:41:57,309.309 INFO    ] No update needed
[2026-06-05 03:41:57,311.311 INFO    ] Checking for camera pi updates...
[2026-06-05 03:41:57,347.347 INFO    ] 200
[2026-06-05 03:41:57,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:41:57,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:41:57,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:41:57,546.546 INFO    ] No camera update needed
[2026-06-05 03:41:57,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:41:57,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:41:57,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:41:57,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:41:59,603.603 INFO    ] ================================================
[2026-06-05 03:41:59,619.619 INFO    ] Launching Daemon at Fri Jun  5 03:41:59 IST 2026
[2026-06-05 03:41:59,630.630 INFO    ] ================================================
[2026-06-05 03:42:00,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:42:00
[2026-06-05 03:42:00,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:42:01,093.093 INFO    ] Initializing speech engine...
[2026-06-05 03:42:01,110.110 INFO    ] 2026-06-05 03:42:01
[2026-06-05 03:42:01,388.388 INFO    ] 2026-06-05 03:42:01
[2026-06-05 03:42:01,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:42:01,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:42:01,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:42:01,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:42:01,755.755 INFO    ] time= 05/06/2026 03:42:01
[2026-06-05 03:42:01,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:42:01,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:42:01,861.861 INFO    ] No existing commands found in stream
[2026-06-05 03:42:06,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:42:06,874.874 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 03:42:10,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:42:10,841.841 INFO    ] Checking for system updates...
[2026-06-05 03:42:10,877.877 INFO    ] 200
[2026-06-05 03:42:10,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:10,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:42:10,937.937 INFO    ] No update needed
[2026-06-05 03:42:10,940.940 INFO    ] Checking for camera pi updates...
[2026-06-05 03:42:10,977.977 INFO    ] 200
[2026-06-05 03:42:10,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:11,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:42:11,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:42:11,066.066 INFO    ] No camera update needed
[2026-06-05 03:42:11,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:42:11,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:42:11,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:42:11,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:42:13,120.120 INFO    ] ================================================
[2026-06-05 03:42:13,135.135 INFO    ] Launching Daemon at Fri Jun  5 03:42:13 IST 2026
[2026-06-05 03:42:13,146.146 INFO    ] ================================================
[2026-06-05 03:42:13,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:42:13
[2026-06-05 03:42:14,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:42:14,611.611 INFO    ] Initializing speech engine...
[2026-06-05 03:42:14,618.618 INFO    ] 2026-06-05 03:42:14
[2026-06-05 03:42:14,877.877 INFO    ] 2026-06-05 03:42:14
[2026-06-05 03:42:14,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:42:15,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:42:15,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:42:15,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:42:15,345.345 INFO    ] time= 05/06/2026 03:42:15
[2026-06-05 03:42:15,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:42:15,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:42:15,482.482 INFO    ] No existing commands found in stream
[2026-06-05 03:42:20,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:42:20,497.497 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 03:42:21,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:42:21,558.558 INFO    ] Checking for system updates...
[2026-06-05 03:42:21,595.595 INFO    ] 200
[2026-06-05 03:42:21,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:21,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:42:21,652.652 INFO    ] No update needed
[2026-06-05 03:42:21,655.655 INFO    ] Checking for camera pi updates...
[2026-06-05 03:42:21,689.689 INFO    ] 200
[2026-06-05 03:42:21,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:21,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:42:21,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:42:21,780.780 INFO    ] No camera update needed
[2026-06-05 03:42:21,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:42:21,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:42:21,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:42:21,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:42:23,837.837 INFO    ] ================================================
[2026-06-05 03:42:23,852.852 INFO    ] Launching Daemon at Fri Jun  5 03:42:23 IST 2026
[2026-06-05 03:42:23,863.863 INFO    ] ================================================
[2026-06-05 03:42:24,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:42:24
[2026-06-05 03:42:25,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:42:25,330.330 INFO    ] Initializing speech engine...
[2026-06-05 03:42:25,338.338 INFO    ] 2026-06-05 03:42:25
[2026-06-05 03:42:25,598.598 INFO    ] 2026-06-05 03:42:25
[2026-06-05 03:42:25,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:42:25,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:42:25,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:42:26,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:42:26,059.059 INFO    ] time= 05/06/2026 03:42:26
[2026-06-05 03:42:26,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:42:26,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:42:26,207.207 INFO    ] No existing commands found in stream
[2026-06-05 03:42:31,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:42:31,220.220 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 03:42:33,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:42:33,711.711 INFO    ] Checking for system updates...
[2026-06-05 03:42:33,747.747 INFO    ] 200
[2026-06-05 03:42:33,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:33,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:42:33,804.804 INFO    ] No update needed
[2026-06-05 03:42:33,807.807 INFO    ] Checking for camera pi updates...
[2026-06-05 03:42:33,849.849 INFO    ] 200
[2026-06-05 03:42:33,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:33,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:42:33,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:42:33,937.937 INFO    ] No camera update needed
[2026-06-05 03:42:33,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:42:33,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:42:33,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:42:33,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:42:35,993.993 INFO    ] ================================================
[2026-06-05 03:42:36,009.009 INFO    ] Launching Daemon at Fri Jun  5 03:42:36 IST 2026
[2026-06-05 03:42:36,020.020 INFO    ] ================================================
[2026-06-05 03:42:36,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:42:36
[2026-06-05 03:42:37,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:42:37,459.459 INFO    ] Initializing speech engine...
[2026-06-05 03:42:37,469.469 INFO    ] 2026-06-05 03:42:37
[2026-06-05 03:42:37,713.713 INFO    ] 2026-06-05 03:42:37
[2026-06-05 03:42:37,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:42:37,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:42:37,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:42:38,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:42:38,154.154 INFO    ] time= 05/06/2026 03:42:38
[2026-06-05 03:42:38,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:42:38,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:42:38,335.335 INFO    ] No existing commands found in stream
[2026-06-05 03:42:43,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:42:43,358.358 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 03:42:43,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:42:43,747.747 INFO    ] Checking for system updates...
[2026-06-05 03:42:43,787.787 INFO    ] 200
[2026-06-05 03:42:43,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:43,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:42:43,843.843 INFO    ] No update needed
[2026-06-05 03:42:43,846.846 INFO    ] Checking for camera pi updates...
[2026-06-05 03:42:43,880.880 INFO    ] 200
[2026-06-05 03:42:43,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:43,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:42:43,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:42:43,972.972 INFO    ] No camera update needed
[2026-06-05 03:42:43,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:42:43,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:42:43,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:42:43,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:42:46,030.030 INFO    ] ================================================
[2026-06-05 03:42:46,046.046 INFO    ] Launching Daemon at Fri Jun  5 03:42:46 IST 2026
[2026-06-05 03:42:46,057.057 INFO    ] ================================================
[2026-06-05 03:42:46,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:42:46
[2026-06-05 03:42:47,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:42:47,550.550 INFO    ] Initializing speech engine...
[2026-06-05 03:42:47,560.560 INFO    ] 2026-06-05 03:42:47
[2026-06-05 03:42:47,811.811 INFO    ] 2026-06-05 03:42:47
[2026-06-05 03:42:47,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:42:48,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:42:48,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:42:48,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:42:48,186.186 INFO    ] time= 05/06/2026 03:42:48
[2026-06-05 03:42:48,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:42:48,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:42:48,347.347 INFO    ] No existing commands found in stream
[2026-06-05 03:42:53,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:42:53,386.386 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 03:42:56,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:42:56,721.721 INFO    ] Checking for system updates...
[2026-06-05 03:42:56,764.764 INFO    ] 200
[2026-06-05 03:42:56,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:56,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:42:56,831.831 INFO    ] No update needed
[2026-06-05 03:42:56,833.833 INFO    ] Checking for camera pi updates...
[2026-06-05 03:42:56,867.867 INFO    ] 200
[2026-06-05 03:42:56,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:42:56,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:42:56,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:42:56,954.954 INFO    ] No camera update needed
[2026-06-05 03:42:56,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:42:56,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:42:56,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:42:56,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:42:59,014.014 INFO    ] ================================================
[2026-06-05 03:42:59,030.030 INFO    ] Launching Daemon at Fri Jun  5 03:42:59 IST 2026
[2026-06-05 03:42:59,040.040 INFO    ] ================================================
[2026-06-05 03:42:59,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:42:59
[2026-06-05 03:43:00,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:43:00,447.447 INFO    ] Initializing speech engine...
[2026-06-05 03:43:00,460.460 INFO    ] 2026-06-05 03:43:00
[2026-06-05 03:43:00,721.721 INFO    ] 2026-06-05 03:43:00
[2026-06-05 03:43:00,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:43:01,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:43:01,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:43:01,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:43:01,185.185 INFO    ] time= 05/06/2026 03:43:01
[2026-06-05 03:43:01,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:43:01,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:43:01,339.339 INFO    ] No existing commands found in stream
[2026-06-05 03:43:06,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:43:06,354.354 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 03:43:07,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:43:07,176.176 INFO    ] Checking for system updates...
[2026-06-05 03:43:07,212.212 INFO    ] 200
[2026-06-05 03:43:07,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:07,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:43:07,277.277 INFO    ] No update needed
[2026-06-05 03:43:07,279.279 INFO    ] Checking for camera pi updates...
[2026-06-05 03:43:07,312.312 INFO    ] 200
[2026-06-05 03:43:07,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:07,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:43:07,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:43:07,398.398 INFO    ] No camera update needed
[2026-06-05 03:43:07,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:43:07,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:43:07,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:43:07,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:43:09,454.454 INFO    ] ================================================
[2026-06-05 03:43:09,470.470 INFO    ] Launching Daemon at Fri Jun  5 03:43:09 IST 2026
[2026-06-05 03:43:09,480.480 INFO    ] ================================================
[2026-06-05 03:43:10,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:43:10
[2026-06-05 03:43:10,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:43:10,932.932 INFO    ] Initializing speech engine...
[2026-06-05 03:43:10,943.943 INFO    ] 2026-06-05 03:43:10
[2026-06-05 03:43:11,211.211 INFO    ] 2026-06-05 03:43:11
[2026-06-05 03:43:11,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:43:11,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:43:11,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:43:11,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:43:11,626.626 INFO    ] time= 05/06/2026 03:43:11
[2026-06-05 03:43:11,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:43:11,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:43:11,719.719 INFO    ] No existing commands found in stream
[2026-06-05 03:43:16,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:43:16,753.753 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 03:43:19,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:43:19,442.442 INFO    ] Checking for system updates...
[2026-06-05 03:43:19,480.480 INFO    ] 200
[2026-06-05 03:43:19,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:19,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:43:19,539.539 INFO    ] No update needed
[2026-06-05 03:43:19,542.542 INFO    ] Checking for camera pi updates...
[2026-06-05 03:43:19,581.581 INFO    ] 200
[2026-06-05 03:43:19,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:19,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:43:19,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:43:19,661.661 INFO    ] No camera update needed
[2026-06-05 03:43:19,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:43:19,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:43:19,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:43:19,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:43:21,717.717 INFO    ] ================================================
[2026-06-05 03:43:21,738.738 INFO    ] Launching Daemon at Fri Jun  5 03:43:21 IST 2026
[2026-06-05 03:43:21,749.749 INFO    ] ================================================
[2026-06-05 03:43:22,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:43:22
[2026-06-05 03:43:23,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:43:23,378.378 INFO    ] Initializing speech engine...
[2026-06-05 03:43:23,387.387 INFO    ] 2026-06-05 03:43:23
[2026-06-05 03:43:23,633.633 INFO    ] 2026-06-05 03:43:23
[2026-06-05 03:43:23,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:43:23,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:43:23,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:43:24,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:43:24,086.086 INFO    ] time= 05/06/2026 03:43:24
[2026-06-05 03:43:24,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:43:24,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:43:24,254.254 INFO    ] No existing commands found in stream
[2026-06-05 03:43:29,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:43:29,269.269 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 03:43:29,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:43:29,673.673 INFO    ] Checking for system updates...
[2026-06-05 03:43:29,713.713 INFO    ] 200
[2026-06-05 03:43:29,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:29,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:43:29,770.770 INFO    ] No update needed
[2026-06-05 03:43:29,773.773 INFO    ] Checking for camera pi updates...
[2026-06-05 03:43:29,806.806 INFO    ] 200
[2026-06-05 03:43:29,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:29,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:43:29,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:43:29,898.898 INFO    ] No camera update needed
[2026-06-05 03:43:29,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:43:29,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:43:29,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:43:29,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:43:31,957.957 INFO    ] ================================================
[2026-06-05 03:43:31,974.974 INFO    ] Launching Daemon at Fri Jun  5 03:43:31 IST 2026
[2026-06-05 03:43:31,987.987 INFO    ] ================================================
[2026-06-05 03:43:32,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:43:32
[2026-06-05 03:43:33,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:43:33,695.695 INFO    ] Initializing speech engine...
[2026-06-05 03:43:33,704.704 INFO    ] 2026-06-05 03:43:33
[2026-06-05 03:43:33,963.963 INFO    ] 2026-06-05 03:43:33
[2026-06-05 03:43:33,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:43:34,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:43:34,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:43:34,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:43:34,395.395 INFO    ] time= 05/06/2026 03:43:34
[2026-06-05 03:43:34,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:43:34,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:43:34,565.565 INFO    ] No existing commands found in stream
[2026-06-05 03:43:39,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:43:39,579.579 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 03:43:43,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:43:43,170.170 INFO    ] Checking for system updates...
[2026-06-05 03:43:43,206.206 INFO    ] 200
[2026-06-05 03:43:43,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:43,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:43:43,265.265 INFO    ] No update needed
[2026-06-05 03:43:43,267.267 INFO    ] Checking for camera pi updates...
[2026-06-05 03:43:43,305.305 INFO    ] 200
[2026-06-05 03:43:43,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:43,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:43:43,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:43:43,402.402 INFO    ] No camera update needed
[2026-06-05 03:43:43,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:43:43,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:43:43,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:43:43,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:43:45,459.459 INFO    ] ================================================
[2026-06-05 03:43:45,475.475 INFO    ] Launching Daemon at Fri Jun  5 03:43:45 IST 2026
[2026-06-05 03:43:45,487.487 INFO    ] ================================================
[2026-06-05 03:43:46,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:43:46
[2026-06-05 03:43:46,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:43:47,131.131 INFO    ] Initializing speech engine...
[2026-06-05 03:43:47,139.139 INFO    ] 2026-06-05 03:43:47
[2026-06-05 03:43:47,457.457 INFO    ] 2026-06-05 03:43:47
[2026-06-05 03:43:47,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:43:47,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:43:47,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:43:47,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:43:47,969.969 INFO    ] time= 05/06/2026 03:43:47
[2026-06-05 03:43:47,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:43:48,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:43:48,119.119 INFO    ] No existing commands found in stream
[2026-06-05 03:43:53,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:43:53,140.140 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 03:43:56,803.803 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:43:56,807.807 INFO    ] Checking for system updates...
[2026-06-05 03:43:56,849.849 INFO    ] 200
[2026-06-05 03:43:56,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:56,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:43:56,909.909 INFO    ] No update needed
[2026-06-05 03:43:56,911.911 INFO    ] Checking for camera pi updates...
[2026-06-05 03:43:56,947.947 INFO    ] 200
[2026-06-05 03:43:56,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:43:56,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:43:57,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:43:57,042.042 INFO    ] No camera update needed
[2026-06-05 03:43:57,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:43:57,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:43:57,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:43:57,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:43:59,101.101 INFO    ] ================================================
[2026-06-05 03:43:59,117.117 INFO    ] Launching Daemon at Fri Jun  5 03:43:59 IST 2026
[2026-06-05 03:43:59,128.128 INFO    ] ================================================
[2026-06-05 03:43:59,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:43:59
[2026-06-05 03:44:00,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:44:00,767.767 INFO    ] Initializing speech engine...
[2026-06-05 03:44:00,773.773 INFO    ] 2026-06-05 03:44:00
[2026-06-05 03:44:01,041.041 INFO    ] 2026-06-05 03:44:01
[2026-06-05 03:44:01,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:44:01,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:44:01,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:44:01,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:44:01,460.460 INFO    ] time= 05/06/2026 03:44:01
[2026-06-05 03:44:01,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:44:01,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:44:01,548.548 INFO    ] No existing commands found in stream
[2026-06-05 03:44:06,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:44:06,579.579 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 03:44:07,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:44:07,428.428 INFO    ] Checking for system updates...
[2026-06-05 03:44:07,468.468 INFO    ] 200
[2026-06-05 03:44:07,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:44:07,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:44:07,525.525 INFO    ] No update needed
[2026-06-05 03:44:07,532.532 INFO    ] Checking for camera pi updates...
[2026-06-05 03:44:07,570.570 INFO    ] 200
[2026-06-05 03:44:07,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:44:07,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:44:07,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:44:07,662.662 INFO    ] No camera update needed
[2026-06-05 03:44:07,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:44:07,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:44:07,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:44:07,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:44:09,719.719 INFO    ] ================================================
[2026-06-05 03:44:09,734.734 INFO    ] Launching Daemon at Fri Jun  5 03:44:09 IST 2026
[2026-06-05 03:44:09,746.746 INFO    ] ================================================
[2026-06-05 03:44:10,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:44:10
[2026-06-05 03:44:11,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:44:11,395.395 INFO    ] Initializing speech engine...
[2026-06-05 03:44:11,404.404 INFO    ] 2026-06-05 03:44:11
[2026-06-05 03:44:11,707.707 INFO    ] 2026-06-05 03:44:11
[2026-06-05 03:44:11,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:44:11,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:44:11,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:44:12,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:44:12,218.218 INFO    ] time= 05/06/2026 03:44:12
[2026-06-05 03:44:12,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:44:12,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:44:12,352.352 INFO    ] No existing commands found in stream
[2026-06-05 03:44:17,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:44:17,378.378 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 03:44:20,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:44:20,354.354 INFO    ] Checking for system updates...
[2026-06-05 03:44:20,392.392 INFO    ] 200
[2026-06-05 03:44:20,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:44:20,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:44:20,459.459 INFO    ] No update needed
[2026-06-05 03:44:20,462.462 INFO    ] Checking for camera pi updates...
[2026-06-05 03:44:20,500.500 INFO    ] 200
[2026-06-05 03:44:20,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:44:20,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:44:20,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:44:20,596.596 INFO    ] No camera update needed
[2026-06-05 03:44:20,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:44:20,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:44:20,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:44:20,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:44:22,656.656 INFO    ] ================================================
[2026-06-05 03:44:22,671.671 INFO    ] Launching Daemon at Fri Jun  5 03:44:22 IST 2026
[2026-06-05 03:44:22,683.683 INFO    ] ================================================
[2026-06-05 03:44:23,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:44:23
[2026-06-05 03:44:23,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:44:24,149.149 INFO    ] Initializing speech engine...
[2026-06-05 03:44:24,154.154 INFO    ] 2026-06-05 03:44:24
[2026-06-05 03:44:24,420.420 INFO    ] 2026-06-05 03:44:24
[2026-06-05 03:44:24,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:44:24,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:44:24,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:44:24,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:44:24,802.802 INFO    ] time= 05/06/2026 03:44:24
[2026-06-05 03:44:24,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:44:24,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:44:24,927.927 INFO    ] No existing commands found in stream
[2026-06-05 03:44:29,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:44:29,941.941 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 03:44:34,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:44:34,069.069 INFO    ] Checking for system updates...
[2026-06-05 03:44:34,104.104 INFO    ] 200
[2026-06-05 03:44:34,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:44:34,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:44:34,163.163 INFO    ] No update needed
[2026-06-05 03:44:34,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 03:44:34,198.198 INFO    ] 200
[2026-06-05 03:44:34,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:44:34,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:44:34,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:44:34,284.284 INFO    ] No camera update needed
[2026-06-05 03:44:34,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:44:34,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:44:34,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:44:34,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:44:36,340.340 INFO    ] ================================================
[2026-06-05 03:44:36,356.356 INFO    ] Launching Daemon at Fri Jun  5 03:44:36 IST 2026
[2026-06-05 03:44:36,367.367 INFO    ] ================================================
[2026-06-05 03:44:36,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:44:36
[2026-06-05 03:44:37,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:44:37,817.817 INFO    ] Initializing speech engine...
[2026-06-05 03:44:37,827.827 INFO    ] 2026-06-05 03:44:37
[2026-06-05 03:44:38,101.101 INFO    ] 2026-06-05 03:44:38
[2026-06-05 03:44:38,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:44:38,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:44:38,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:44:38,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:44:38,616.616 INFO    ] time= 05/06/2026 03:44:38
[2026-06-05 03:44:38,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:44:38,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:44:38,761.761 INFO    ] No existing commands found in stream
[2026-06-05 03:44:43,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:44:43,789.789 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 03:44:47,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:44:47,928.928 INFO    ] Checking for system updates...
[2026-06-05 03:44:47,968.968 INFO    ] 200
[2026-06-05 03:44:47,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:44:48,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:44:48,027.027 INFO    ] No update needed
[2026-06-05 03:44:48,030.030 INFO    ] Checking for camera pi updates...
[2026-06-05 03:44:48,065.065 INFO    ] 200
[2026-06-05 03:44:48,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:44:48,110.110 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:44:48,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:44:48,155.155 INFO    ] No camera update needed
[2026-06-05 03:44:48,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:44:48,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:44:48,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:44:48,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:44:50,215.215 INFO    ] ================================================
[2026-06-05 03:44:50,230.230 INFO    ] Launching Daemon at Fri Jun  5 03:44:50 IST 2026
[2026-06-05 03:44:50,241.241 INFO    ] ================================================
[2026-06-05 03:44:50,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:44:50
[2026-06-05 03:44:51,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:44:51,697.697 INFO    ] Initializing speech engine...
[2026-06-05 03:44:51,707.707 INFO    ] 2026-06-05 03:44:51
[2026-06-05 03:44:51,998.998 INFO    ] 2026-06-05 03:44:51
[2026-06-05 03:44:52,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:44:52,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:44:52,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:44:52,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:44:52,374.374 INFO    ] time= 05/06/2026 03:44:52
[2026-06-05 03:44:52,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:44:52,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:44:52,503.503 INFO    ] No existing commands found in stream
[2026-06-05 03:44:57,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:44:57,517.517 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 03:45:01,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:45:01,347.347 INFO    ] Checking for system updates...
[2026-06-05 03:45:01,383.383 INFO    ] 200
[2026-06-05 03:45:01,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:01,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:45:01,443.443 INFO    ] No update needed
[2026-06-05 03:45:01,446.446 INFO    ] Checking for camera pi updates...
[2026-06-05 03:45:01,480.480 INFO    ] 200
[2026-06-05 03:45:01,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:01,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:45:01,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:45:01,567.567 INFO    ] No camera update needed
[2026-06-05 03:45:01,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:45:01,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:45:01,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:45:01,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:45:03,649.649 INFO    ] ================================================
[2026-06-05 03:45:03,667.667 INFO    ] Launching Daemon at Fri Jun  5 03:45:03 IST 2026
[2026-06-05 03:45:03,679.679 INFO    ] ================================================
[2026-06-05 03:45:04,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:45:04
[2026-06-05 03:45:04,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:45:05,136.136 INFO    ] Initializing speech engine...
[2026-06-05 03:45:05,150.150 INFO    ] 2026-06-05 03:45:05
[2026-06-05 03:45:05,412.412 INFO    ] 2026-06-05 03:45:05
[2026-06-05 03:45:05,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:45:05,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:45:05,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:45:05,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:45:05,901.901 INFO    ] time= 05/06/2026 03:45:05
[2026-06-05 03:45:05,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:45:05,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:45:06,104.104 INFO    ] No existing commands found in stream
[2026-06-05 03:45:11,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:45:11,129.129 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 03:45:12,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:45:12,079.079 INFO    ] Checking for system updates...
[2026-06-05 03:45:12,115.115 INFO    ] 200
[2026-06-05 03:45:12,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:12,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:45:12,172.172 INFO    ] No update needed
[2026-06-05 03:45:12,175.175 INFO    ] Checking for camera pi updates...
[2026-06-05 03:45:12,209.209 INFO    ] 200
[2026-06-05 03:45:12,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:12,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:45:12,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:45:12,293.293 INFO    ] No camera update needed
[2026-06-05 03:45:12,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:45:12,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:45:12,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:45:12,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:45:14,349.349 INFO    ] ================================================
[2026-06-05 03:45:14,366.366 INFO    ] Launching Daemon at Fri Jun  5 03:45:14 IST 2026
[2026-06-05 03:45:14,379.379 INFO    ] ================================================
[2026-06-05 03:45:14,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:45:14
[2026-06-05 03:45:15,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:45:15,814.814 INFO    ] Initializing speech engine...
[2026-06-05 03:45:15,824.824 INFO    ] 2026-06-05 03:45:15
[2026-06-05 03:45:16,070.070 INFO    ] 2026-06-05 03:45:16
[2026-06-05 03:45:16,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:45:16,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:45:16,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:45:16,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:45:16,534.534 INFO    ] time= 05/06/2026 03:45:16
[2026-06-05 03:45:16,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:45:16,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:45:16,684.684 INFO    ] No existing commands found in stream
[2026-06-05 03:45:21,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:45:21,699.699 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 03:45:23,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:45:23,553.553 INFO    ] Checking for system updates...
[2026-06-05 03:45:23,589.589 INFO    ] 200
[2026-06-05 03:45:23,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:23,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:45:23,656.656 INFO    ] No update needed
[2026-06-05 03:45:23,658.658 INFO    ] Checking for camera pi updates...
[2026-06-05 03:45:23,692.692 INFO    ] 200
[2026-06-05 03:45:23,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:23,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:45:23,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:45:23,788.788 INFO    ] No camera update needed
[2026-06-05 03:45:23,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:45:23,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:45:23,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:45:23,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:45:25,855.855 INFO    ] ================================================
[2026-06-05 03:45:25,871.871 INFO    ] Launching Daemon at Fri Jun  5 03:45:25 IST 2026
[2026-06-05 03:45:25,886.886 INFO    ] ================================================
[2026-06-05 03:45:26,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:45:26
[2026-06-05 03:45:27,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:45:27,316.316 INFO    ] Initializing speech engine...
[2026-06-05 03:45:27,325.325 INFO    ] 2026-06-05 03:45:27
[2026-06-05 03:45:27,585.585 INFO    ] 2026-06-05 03:45:27
[2026-06-05 03:45:27,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:45:27,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:45:27,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:45:28,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:45:28,129.129 INFO    ] time= 05/06/2026 03:45:28
[2026-06-05 03:45:28,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:45:28,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:45:28,263.263 INFO    ] No existing commands found in stream
[2026-06-05 03:45:33,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:45:33,292.292 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 03:45:34,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:45:34,415.415 INFO    ] Checking for system updates...
[2026-06-05 03:45:34,456.456 INFO    ] 200
[2026-06-05 03:45:34,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:34,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:45:34,521.521 INFO    ] No update needed
[2026-06-05 03:45:34,523.523 INFO    ] Checking for camera pi updates...
[2026-06-05 03:45:34,557.557 INFO    ] 200
[2026-06-05 03:45:34,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:34,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:45:34,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:45:34,645.645 INFO    ] No camera update needed
[2026-06-05 03:45:34,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:45:34,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:45:34,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:45:34,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:45:36,704.704 INFO    ] ================================================
[2026-06-05 03:45:36,720.720 INFO    ] Launching Daemon at Fri Jun  5 03:45:36 IST 2026
[2026-06-05 03:45:36,730.730 INFO    ] ================================================
[2026-06-05 03:45:37,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:45:37
[2026-06-05 03:45:37,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:45:38,165.165 INFO    ] Initializing speech engine...
[2026-06-05 03:45:38,171.171 INFO    ] 2026-06-05 03:45:38
[2026-06-05 03:45:38,470.470 INFO    ] 2026-06-05 03:45:38
[2026-06-05 03:45:38,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:45:38,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:45:38,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:45:38,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:45:38,850.850 INFO    ] time= 05/06/2026 03:45:38
[2026-06-05 03:45:38,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:45:38,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:45:38,955.955 INFO    ] No existing commands found in stream
[2026-06-05 03:45:43,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:45:43,993.993 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 03:45:47,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:45:47,298.298 INFO    ] Checking for system updates...
[2026-06-05 03:45:47,335.335 INFO    ] 200
[2026-06-05 03:45:47,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:47,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:45:47,392.392 INFO    ] No update needed
[2026-06-05 03:45:47,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 03:45:47,428.428 INFO    ] 200
[2026-06-05 03:45:47,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:45:47,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:45:47,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:45:47,503.503 INFO    ] No camera update needed
[2026-06-05 03:45:47,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:45:47,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:45:47,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:45:47,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:45:49,558.558 INFO    ] ================================================
[2026-06-05 03:45:49,574.574 INFO    ] Launching Daemon at Fri Jun  5 03:45:49 IST 2026
[2026-06-05 03:45:49,585.585 INFO    ] ================================================
[2026-06-05 03:45:50,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:45:50
[2026-06-05 03:45:50,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:45:51,243.243 INFO    ] Initializing speech engine...
[2026-06-05 03:45:51,254.254 INFO    ] 2026-06-05 03:45:51
[2026-06-05 03:45:51,566.566 INFO    ] 2026-06-05 03:45:51
[2026-06-05 03:45:51,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:45:51,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:45:51,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:45:52,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:45:52,076.076 INFO    ] time= 05/06/2026 03:45:52
[2026-06-05 03:45:52,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:45:52,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:45:52,232.232 INFO    ] No existing commands found in stream
[2026-06-05 03:45:57,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:45:57,257.257 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 03:46:00,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:46:00,931.931 INFO    ] Checking for system updates...
[2026-06-05 03:46:00,970.970 INFO    ] 200
[2026-06-05 03:46:00,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:01,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:46:01,047.047 INFO    ] No update needed
[2026-06-05 03:46:01,051.051 INFO    ] Checking for camera pi updates...
[2026-06-05 03:46:01,118.118 INFO    ] 200
[2026-06-05 03:46:01,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:01,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:46:01,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:46:01,278.278 INFO    ] No camera update needed
[2026-06-05 03:46:01,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:46:01,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:46:01,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:46:01,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:46:03,368.368 INFO    ] ================================================
[2026-06-05 03:46:03,384.384 INFO    ] Launching Daemon at Fri Jun  5 03:46:03 IST 2026
[2026-06-05 03:46:03,395.395 INFO    ] ================================================
[2026-06-05 03:46:03,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:46:03
[2026-06-05 03:46:04,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:46:04,826.826 INFO    ] Initializing speech engine...
[2026-06-05 03:46:04,832.832 INFO    ] 2026-06-05 03:46:04
[2026-06-05 03:46:05,083.083 INFO    ] 2026-06-05 03:46:05
[2026-06-05 03:46:05,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:46:05,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:46:05,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:46:05,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:46:05,443.443 INFO    ] time= 05/06/2026 03:46:05
[2026-06-05 03:46:05,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:46:05,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:46:05,519.519 INFO    ] No existing commands found in stream
[2026-06-05 03:46:10,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:46:10,530.530 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 03:46:14,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:46:14,655.655 INFO    ] Checking for system updates...
[2026-06-05 03:46:14,695.695 INFO    ] 200
[2026-06-05 03:46:14,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:14,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:46:14,761.761 INFO    ] No update needed
[2026-06-05 03:46:14,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 03:46:14,802.802 INFO    ] 200
[2026-06-05 03:46:14,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:14,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:46:14,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:46:14,998.998 INFO    ] No camera update needed
[2026-06-05 03:46:15,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:46:15,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:46:15,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:46:15,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:46:17,054.054 INFO    ] ================================================
[2026-06-05 03:46:17,071.071 INFO    ] Launching Daemon at Fri Jun  5 03:46:17 IST 2026
[2026-06-05 03:46:17,082.082 INFO    ] ================================================
[2026-06-05 03:46:17,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:46:17
[2026-06-05 03:46:18,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:46:18,545.545 INFO    ] Initializing speech engine...
[2026-06-05 03:46:18,560.560 INFO    ] 2026-06-05 03:46:18
[2026-06-05 03:46:18,834.834 INFO    ] 2026-06-05 03:46:18
[2026-06-05 03:46:18,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:46:19,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:46:19,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:46:19,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:46:19,213.213 INFO    ] time= 05/06/2026 03:46:19
[2026-06-05 03:46:19,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:46:19,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:46:19,344.344 INFO    ] No existing commands found in stream
[2026-06-05 03:46:24,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:46:24,359.359 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 03:46:27,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:46:27,408.408 INFO    ] Checking for system updates...
[2026-06-05 03:46:27,446.446 INFO    ] 200
[2026-06-05 03:46:27,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:27,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:46:27,512.512 INFO    ] No update needed
[2026-06-05 03:46:27,514.514 INFO    ] Checking for camera pi updates...
[2026-06-05 03:46:27,553.553 INFO    ] 200
[2026-06-05 03:46:27,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:27,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:46:27,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:46:27,650.650 INFO    ] No camera update needed
[2026-06-05 03:46:27,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:46:27,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:46:27,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:46:27,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:46:29,709.709 INFO    ] ================================================
[2026-06-05 03:46:29,725.725 INFO    ] Launching Daemon at Fri Jun  5 03:46:29 IST 2026
[2026-06-05 03:46:29,736.736 INFO    ] ================================================
[2026-06-05 03:46:30,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:46:30
[2026-06-05 03:46:30,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:46:31,207.207 INFO    ] Initializing speech engine...
[2026-06-05 03:46:31,210.210 INFO    ] 2026-06-05 03:46:31
[2026-06-05 03:46:31,542.542 INFO    ] 2026-06-05 03:46:31
[2026-06-05 03:46:31,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:46:31,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:46:31,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:46:31,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:46:31,937.937 INFO    ] time= 05/06/2026 03:46:31
[2026-06-05 03:46:31,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:46:31,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:46:32,023.023 INFO    ] No existing commands found in stream
[2026-06-05 03:46:37,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:46:37,044.044 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 03:46:41,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:46:41,242.242 INFO    ] Checking for system updates...
[2026-06-05 03:46:41,284.284 INFO    ] 200
[2026-06-05 03:46:41,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:41,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:46:41,344.344 INFO    ] No update needed
[2026-06-05 03:46:41,347.347 INFO    ] Checking for camera pi updates...
[2026-06-05 03:46:41,387.387 INFO    ] 200
[2026-06-05 03:46:41,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:41,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:46:41,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:46:41,479.479 INFO    ] No camera update needed
[2026-06-05 03:46:41,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:46:41,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:46:41,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:46:41,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:46:43,534.534 INFO    ] ================================================
[2026-06-05 03:46:43,550.550 INFO    ] Launching Daemon at Fri Jun  5 03:46:43 IST 2026
[2026-06-05 03:46:43,562.562 INFO    ] ================================================
[2026-06-05 03:46:44,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:46:44
[2026-06-05 03:46:44,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:46:45,307.307 INFO    ] Initializing speech engine...
[2026-06-05 03:46:45,316.316 INFO    ] 2026-06-05 03:46:45
[2026-06-05 03:46:45,627.627 INFO    ] 2026-06-05 03:46:45
[2026-06-05 03:46:45,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:46:45,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:46:45,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:46:46,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:46:46,072.072 INFO    ] time= 05/06/2026 03:46:46
[2026-06-05 03:46:46,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:46:46,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:46:46,263.263 INFO    ] No existing commands found in stream
[2026-06-05 03:46:51,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:46:51,294.294 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 03:46:51,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:46:51,788.788 INFO    ] Checking for system updates...
[2026-06-05 03:46:51,826.826 INFO    ] 200
[2026-06-05 03:46:51,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:51,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:46:51,886.886 INFO    ] No update needed
[2026-06-05 03:46:51,889.889 INFO    ] Checking for camera pi updates...
[2026-06-05 03:46:51,929.929 INFO    ] 200
[2026-06-05 03:46:51,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:46:51,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:46:52,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:46:52,031.031 INFO    ] No camera update needed
[2026-06-05 03:46:52,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:46:52,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:46:52,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:46:52,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:46:54,088.088 INFO    ] ================================================
[2026-06-05 03:46:54,103.103 INFO    ] Launching Daemon at Fri Jun  5 03:46:54 IST 2026
[2026-06-05 03:46:54,114.114 INFO    ] ================================================
[2026-06-05 03:46:54,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:46:54
[2026-06-05 03:46:55,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:46:55,770.770 INFO    ] Initializing speech engine...
[2026-06-05 03:46:55,776.776 INFO    ] 2026-06-05 03:46:55
[2026-06-05 03:46:56,029.029 INFO    ] 2026-06-05 03:46:56
[2026-06-05 03:46:56,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:46:56,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:46:56,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:46:56,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:46:56,425.425 INFO    ] time= 05/06/2026 03:46:56
[2026-06-05 03:46:56,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:46:56,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:46:56,598.598 INFO    ] No existing commands found in stream
[2026-06-05 03:47:01,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:47:01,631.631 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 03:47:03,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:47:03,150.150 INFO    ] Checking for system updates...
[2026-06-05 03:47:03,201.201 INFO    ] 200
[2026-06-05 03:47:03,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:03,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:47:03,299.299 INFO    ] No update needed
[2026-06-05 03:47:03,302.302 INFO    ] Checking for camera pi updates...
[2026-06-05 03:47:03,343.343 INFO    ] 200
[2026-06-05 03:47:03,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:03,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:47:03,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:47:03,447.447 INFO    ] No camera update needed
[2026-06-05 03:47:03,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:47:03,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:47:03,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:47:03,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:47:05,503.503 INFO    ] ================================================
[2026-06-05 03:47:05,519.519 INFO    ] Launching Daemon at Fri Jun  5 03:47:05 IST 2026
[2026-06-05 03:47:05,530.530 INFO    ] ================================================
[2026-06-05 03:47:06,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:47:06
[2026-06-05 03:47:06,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:47:07,004.004 INFO    ] Initializing speech engine...
[2026-06-05 03:47:07,031.031 INFO    ] 2026-06-05 03:47:07
[2026-06-05 03:47:07,312.312 INFO    ] 2026-06-05 03:47:07
[2026-06-05 03:47:07,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:47:07,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:47:07,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:47:07,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:47:07,690.690 INFO    ] time= 05/06/2026 03:47:07
[2026-06-05 03:47:07,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:47:07,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:47:07,775.775 INFO    ] No existing commands found in stream
[2026-06-05 03:47:12,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:47:12,820.820 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 03:47:14,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:47:14,499.499 INFO    ] Checking for system updates...
[2026-06-05 03:47:14,540.540 INFO    ] 200
[2026-06-05 03:47:14,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:14,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:47:14,602.602 INFO    ] No update needed
[2026-06-05 03:47:14,605.605 INFO    ] Checking for camera pi updates...
[2026-06-05 03:47:14,640.640 INFO    ] 200
[2026-06-05 03:47:14,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:14,690.690 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:47:14,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:47:14,740.740 INFO    ] No camera update needed
[2026-06-05 03:47:14,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:47:14,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:47:14,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:47:14,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:47:16,799.799 INFO    ] ================================================
[2026-06-05 03:47:16,815.815 INFO    ] Launching Daemon at Fri Jun  5 03:47:16 IST 2026
[2026-06-05 03:47:16,826.826 INFO    ] ================================================
[2026-06-05 03:47:17,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:47:17
[2026-06-05 03:47:17,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:47:18,246.246 INFO    ] Initializing speech engine...
[2026-06-05 03:47:18,254.254 INFO    ] 2026-06-05 03:47:18
[2026-06-05 03:47:18,561.561 INFO    ] 2026-06-05 03:47:18
[2026-06-05 03:47:18,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:47:18,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:47:18,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:47:19,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:47:19,058.058 INFO    ] time= 05/06/2026 03:47:19
[2026-06-05 03:47:19,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:47:19,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:47:19,209.209 INFO    ] No existing commands found in stream
[2026-06-05 03:47:24,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:47:24,224.224 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 03:47:28,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:47:28,425.425 INFO    ] Checking for system updates...
[2026-06-05 03:47:28,465.465 INFO    ] 200
[2026-06-05 03:47:28,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:28,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:47:28,524.524 INFO    ] No update needed
[2026-06-05 03:47:28,527.527 INFO    ] Checking for camera pi updates...
[2026-06-05 03:47:28,560.560 INFO    ] 200
[2026-06-05 03:47:28,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:28,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:47:28,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:47:28,654.654 INFO    ] No camera update needed
[2026-06-05 03:47:28,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:47:28,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:47:28,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:47:28,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:47:30,709.709 INFO    ] ================================================
[2026-06-05 03:47:30,724.724 INFO    ] Launching Daemon at Fri Jun  5 03:47:30 IST 2026
[2026-06-05 03:47:30,735.735 INFO    ] ================================================
[2026-06-05 03:47:31,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:47:31
[2026-06-05 03:47:31,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:47:32,225.225 INFO    ] Initializing speech engine...
[2026-06-05 03:47:32,244.244 INFO    ] 2026-06-05 03:47:32
[2026-06-05 03:47:32,536.536 INFO    ] 2026-06-05 03:47:32
[2026-06-05 03:47:32,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:47:32,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:47:32,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:47:32,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:47:32,929.929 INFO    ] time= 05/06/2026 03:47:32
[2026-06-05 03:47:32,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:47:32,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:47:33,010.010 INFO    ] No existing commands found in stream
[2026-06-05 03:47:38,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:47:38,023.023 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 03:47:38,933.933 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:47:38,936.936 INFO    ] Checking for system updates...
[2026-06-05 03:47:38,972.972 INFO    ] 200
[2026-06-05 03:47:38,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:39,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:47:39,032.032 INFO    ] No update needed
[2026-06-05 03:47:39,034.034 INFO    ] Checking for camera pi updates...
[2026-06-05 03:47:39,072.072 INFO    ] 200
[2026-06-05 03:47:39,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:39,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:47:39,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:47:39,161.161 INFO    ] No camera update needed
[2026-06-05 03:47:39,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:47:39,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:47:39,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:47:39,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:47:41,224.224 INFO    ] ================================================
[2026-06-05 03:47:41,240.240 INFO    ] Launching Daemon at Fri Jun  5 03:47:41 IST 2026
[2026-06-05 03:47:41,251.251 INFO    ] ================================================
[2026-06-05 03:47:41,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:47:41
[2026-06-05 03:47:42,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:47:42,732.732 INFO    ] Initializing speech engine...
[2026-06-05 03:47:42,745.745 INFO    ] 2026-06-05 03:47:42
[2026-06-05 03:47:43,009.009 INFO    ] 2026-06-05 03:47:43
[2026-06-05 03:47:43,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:47:43,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:47:43,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:47:43,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:47:43,481.481 INFO    ] time= 05/06/2026 03:47:43
[2026-06-05 03:47:43,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:47:43,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:47:43,623.623 INFO    ] No existing commands found in stream
[2026-06-05 03:47:48,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:47:48,638.638 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 03:47:52,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:47:52,048.048 INFO    ] Checking for system updates...
[2026-06-05 03:47:52,089.089 INFO    ] 200
[2026-06-05 03:47:52,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:52,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:47:52,154.154 INFO    ] No update needed
[2026-06-05 03:47:52,156.156 INFO    ] Checking for camera pi updates...
[2026-06-05 03:47:52,190.190 INFO    ] 200
[2026-06-05 03:47:52,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:47:52,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:47:52,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:47:52,265.265 INFO    ] No camera update needed
[2026-06-05 03:47:52,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:47:52,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:47:52,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:47:52,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:47:54,324.324 INFO    ] ================================================
[2026-06-05 03:47:54,339.339 INFO    ] Launching Daemon at Fri Jun  5 03:47:54 IST 2026
[2026-06-05 03:47:54,350.350 INFO    ] ================================================
[2026-06-05 03:47:54,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:47:54
[2026-06-05 03:47:55,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:47:55,755.755 INFO    ] Initializing speech engine...
[2026-06-05 03:47:55,779.779 INFO    ] 2026-06-05 03:47:55
[2026-06-05 03:47:56,038.038 INFO    ] 2026-06-05 03:47:56
[2026-06-05 03:47:56,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:47:56,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:47:56,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:47:56,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:47:56,544.544 INFO    ] time= 05/06/2026 03:47:56
[2026-06-05 03:47:56,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:47:56,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:47:56,727.727 INFO    ] No existing commands found in stream
[2026-06-05 03:48:01,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:48:01,751.751 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 03:48:03,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:48:03,596.596 INFO    ] Checking for system updates...
[2026-06-05 03:48:03,646.646 INFO    ] 200
[2026-06-05 03:48:03,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:03,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:48:03,711.711 INFO    ] No update needed
[2026-06-05 03:48:03,714.714 INFO    ] Checking for camera pi updates...
[2026-06-05 03:48:03,751.751 INFO    ] 200
[2026-06-05 03:48:03,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:03,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:48:03,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:48:03,830.830 INFO    ] No camera update needed
[2026-06-05 03:48:03,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:48:03,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:48:03,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:48:03,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:48:05,891.891 INFO    ] ================================================
[2026-06-05 03:48:05,907.907 INFO    ] Launching Daemon at Fri Jun  5 03:48:05 IST 2026
[2026-06-05 03:48:05,919.919 INFO    ] ================================================
[2026-06-05 03:48:06,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:48:06
[2026-06-05 03:48:07,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:48:07,368.368 INFO    ] Initializing speech engine...
[2026-06-05 03:48:07,390.390 INFO    ] 2026-06-05 03:48:07
[2026-06-05 03:48:07,648.648 INFO    ] 2026-06-05 03:48:07
[2026-06-05 03:48:07,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:48:07,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:48:07,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:48:08,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:48:08,130.130 INFO    ] time= 05/06/2026 03:48:08
[2026-06-05 03:48:08,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:48:08,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:48:08,281.281 INFO    ] No existing commands found in stream
[2026-06-05 03:48:13,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:48:13,296.296 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 03:48:16,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:48:16,068.068 INFO    ] Checking for system updates...
[2026-06-05 03:48:16,104.104 INFO    ] 200
[2026-06-05 03:48:16,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:16,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:48:16,176.176 INFO    ] No update needed
[2026-06-05 03:48:16,178.178 INFO    ] Checking for camera pi updates...
[2026-06-05 03:48:16,216.216 INFO    ] 200
[2026-06-05 03:48:16,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:16,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:48:16,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:48:16,300.300 INFO    ] No camera update needed
[2026-06-05 03:48:16,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:48:16,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:48:16,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:48:16,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:48:18,355.355 INFO    ] ================================================
[2026-06-05 03:48:18,371.371 INFO    ] Launching Daemon at Fri Jun  5 03:48:18 IST 2026
[2026-06-05 03:48:18,382.382 INFO    ] ================================================
[2026-06-05 03:48:18,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:48:18
[2026-06-05 03:48:19,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:48:19,869.869 INFO    ] Initializing speech engine...
[2026-06-05 03:48:19,882.882 INFO    ] 2026-06-05 03:48:19
[2026-06-05 03:48:20,163.163 INFO    ] 2026-06-05 03:48:20
[2026-06-05 03:48:20,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:48:20,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:48:20,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:48:20,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:48:20,704.704 INFO    ] time= 05/06/2026 03:48:20
[2026-06-05 03:48:20,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:48:20,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:48:20,846.846 INFO    ] No existing commands found in stream
[2026-06-05 03:48:25,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:48:25,874.874 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 03:48:26,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:48:26,884.884 INFO    ] Checking for system updates...
[2026-06-05 03:48:26,924.924 INFO    ] 200
[2026-06-05 03:48:26,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:26,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:48:26,992.992 INFO    ] No update needed
[2026-06-05 03:48:26,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 03:48:27,028.028 INFO    ] 200
[2026-06-05 03:48:27,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:27,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:48:27,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:48:27,218.218 INFO    ] No camera update needed
[2026-06-05 03:48:27,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:48:27,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:48:27,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:48:27,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:48:29,276.276 INFO    ] ================================================
[2026-06-05 03:48:29,291.291 INFO    ] Launching Daemon at Fri Jun  5 03:48:29 IST 2026
[2026-06-05 03:48:29,302.302 INFO    ] ================================================
[2026-06-05 03:48:29,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:48:29
[2026-06-05 03:48:30,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:48:30,750.750 INFO    ] Initializing speech engine...
[2026-06-05 03:48:30,776.776 INFO    ] 2026-06-05 03:48:30
[2026-06-05 03:48:31,048.048 INFO    ] 2026-06-05 03:48:31
[2026-06-05 03:48:31,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:48:31,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:48:31,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:48:31,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:48:31,473.473 INFO    ] time= 05/06/2026 03:48:31
[2026-06-05 03:48:31,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:48:31,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:48:31,623.623 INFO    ] No existing commands found in stream
[2026-06-05 03:48:36,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:48:36,651.651 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 03:48:40,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:48:40,096.096 INFO    ] Checking for system updates...
[2026-06-05 03:48:40,138.138 INFO    ] 200
[2026-06-05 03:48:40,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:40,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:48:40,218.218 INFO    ] No update needed
[2026-06-05 03:48:40,221.221 INFO    ] Checking for camera pi updates...
[2026-06-05 03:48:40,272.272 INFO    ] 200
[2026-06-05 03:48:40,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:40,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:48:40,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:48:40,361.361 INFO    ] No camera update needed
[2026-06-05 03:48:40,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:48:40,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:48:40,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:48:40,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:48:42,415.415 INFO    ] ================================================
[2026-06-05 03:48:42,430.430 INFO    ] Launching Daemon at Fri Jun  5 03:48:42 IST 2026
[2026-06-05 03:48:42,441.441 INFO    ] ================================================
[2026-06-05 03:48:43,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:48:43
[2026-06-05 03:48:43,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:48:43,849.849 INFO    ] Initializing speech engine...
[2026-06-05 03:48:43,855.855 INFO    ] 2026-06-05 03:48:43
[2026-06-05 03:48:44,133.133 INFO    ] 2026-06-05 03:48:44
[2026-06-05 03:48:44,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:48:44,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:48:44,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:48:44,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:48:44,605.605 INFO    ] time= 05/06/2026 03:48:44
[2026-06-05 03:48:44,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:48:44,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:48:44,765.765 INFO    ] No existing commands found in stream
[2026-06-05 03:48:49,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:48:49,785.785 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 03:48:50,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:48:50,532.532 INFO    ] Checking for system updates...
[2026-06-05 03:48:50,573.573 INFO    ] 200
[2026-06-05 03:48:50,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:50,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:48:50,639.639 INFO    ] No update needed
[2026-06-05 03:48:50,642.642 INFO    ] Checking for camera pi updates...
[2026-06-05 03:48:50,680.680 INFO    ] 200
[2026-06-05 03:48:50,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:48:50,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:48:50,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:48:50,778.778 INFO    ] No camera update needed
[2026-06-05 03:48:50,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:48:50,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:48:50,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:48:50,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:48:52,838.838 INFO    ] ================================================
[2026-06-05 03:48:52,853.853 INFO    ] Launching Daemon at Fri Jun  5 03:48:52 IST 2026
[2026-06-05 03:48:52,864.864 INFO    ] ================================================
[2026-06-05 03:48:53,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:48:53
[2026-06-05 03:48:54,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:48:54,477.477 INFO    ] Initializing speech engine...
[2026-06-05 03:48:54,488.488 INFO    ] 2026-06-05 03:48:54
[2026-06-05 03:48:54,767.767 INFO    ] 2026-06-05 03:48:54
[2026-06-05 03:48:54,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:48:55,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:48:55,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:48:55,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:48:55,223.223 INFO    ] time= 05/06/2026 03:48:55
[2026-06-05 03:48:55,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:48:55,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:48:55,373.373 INFO    ] No existing commands found in stream
[2026-06-05 03:49:00,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:49:00,387.387 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 03:49:02,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:49:02,504.504 INFO    ] Checking for system updates...
[2026-06-05 03:49:02,577.577 INFO    ] 200
[2026-06-05 03:49:02,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:02,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:49:02,649.649 INFO    ] No update needed
[2026-06-05 03:49:02,652.652 INFO    ] Checking for camera pi updates...
[2026-06-05 03:49:02,698.698 INFO    ] 200
[2026-06-05 03:49:02,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:02,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:49:02,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:49:02,801.801 INFO    ] No camera update needed
[2026-06-05 03:49:02,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:49:02,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:49:02,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:49:02,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:49:04,867.867 INFO    ] ================================================
[2026-06-05 03:49:04,883.883 INFO    ] Launching Daemon at Fri Jun  5 03:49:04 IST 2026
[2026-06-05 03:49:04,893.893 INFO    ] ================================================
[2026-06-05 03:49:05,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:49:05
[2026-06-05 03:49:06,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:49:06,357.357 INFO    ] Initializing speech engine...
[2026-06-05 03:49:06,364.364 INFO    ] 2026-06-05 03:49:06
[2026-06-05 03:49:06,626.626 INFO    ] 2026-06-05 03:49:06
[2026-06-05 03:49:06,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:49:06,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:49:06,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:49:07,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:49:07,107.107 INFO    ] time= 05/06/2026 03:49:07
[2026-06-05 03:49:07,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:49:07,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:49:07,257.257 INFO    ] No existing commands found in stream
[2026-06-05 03:49:12,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:49:12,272.272 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 03:49:13,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:49:13,890.890 INFO    ] Checking for system updates...
[2026-06-05 03:49:13,926.926 INFO    ] 200
[2026-06-05 03:49:13,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:13,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:49:13,984.984 INFO    ] No update needed
[2026-06-05 03:49:13,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 03:49:14,020.020 INFO    ] 200
[2026-06-05 03:49:14,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:14,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:49:14,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:49:14,110.110 INFO    ] No camera update needed
[2026-06-05 03:49:14,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:49:14,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:49:14,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:49:14,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:49:16,165.165 INFO    ] ================================================
[2026-06-05 03:49:16,181.181 INFO    ] Launching Daemon at Fri Jun  5 03:49:16 IST 2026
[2026-06-05 03:49:16,192.192 INFO    ] ================================================
[2026-06-05 03:49:16,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:49:16
[2026-06-05 03:49:17,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:49:17,764.764 INFO    ] Initializing speech engine...
[2026-06-05 03:49:17,778.778 INFO    ] 2026-06-05 03:49:17
[2026-06-05 03:49:18,051.051 INFO    ] 2026-06-05 03:49:18
[2026-06-05 03:49:18,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:49:18,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:49:18,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:49:18,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:49:18,578.578 INFO    ] time= 05/06/2026 03:49:18
[2026-06-05 03:49:18,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:49:18,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:49:18,739.739 INFO    ] No existing commands found in stream
[2026-06-05 03:49:23,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:49:23,770.770 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 03:49:26,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:49:26,084.084 INFO    ] Checking for system updates...
[2026-06-05 03:49:26,122.122 INFO    ] 200
[2026-06-05 03:49:26,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:26,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:49:26,181.181 INFO    ] No update needed
[2026-06-05 03:49:26,183.183 INFO    ] Checking for camera pi updates...
[2026-06-05 03:49:26,218.218 INFO    ] 200
[2026-06-05 03:49:26,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:26,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:49:26,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:49:26,311.311 INFO    ] No camera update needed
[2026-06-05 03:49:26,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:49:26,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:49:26,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:49:26,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:49:28,367.367 INFO    ] ================================================
[2026-06-05 03:49:28,382.382 INFO    ] Launching Daemon at Fri Jun  5 03:49:28 IST 2026
[2026-06-05 03:49:28,393.393 INFO    ] ================================================
[2026-06-05 03:49:28,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:49:28
[2026-06-05 03:49:29,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:49:29,816.816 INFO    ] Initializing speech engine...
[2026-06-05 03:49:29,829.829 INFO    ] 2026-06-05 03:49:29
[2026-06-05 03:49:30,082.082 INFO    ] 2026-06-05 03:49:30
[2026-06-05 03:49:30,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:49:30,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:49:30,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:49:30,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:49:30,459.459 INFO    ] time= 05/06/2026 03:49:30
[2026-06-05 03:49:30,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:49:30,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:49:30,639.639 INFO    ] No existing commands found in stream
[2026-06-05 03:49:35,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:49:35,667.667 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 03:49:40,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:49:40,034.034 INFO    ] Checking for system updates...
[2026-06-05 03:49:40,070.070 INFO    ] 200
[2026-06-05 03:49:40,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:40,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:49:40,132.132 INFO    ] No update needed
[2026-06-05 03:49:40,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 03:49:40,169.169 INFO    ] 200
[2026-06-05 03:49:40,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:40,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:49:40,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:49:40,321.321 INFO    ] No camera update needed
[2026-06-05 03:49:40,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:49:40,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:49:40,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:49:40,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:49:42,377.377 INFO    ] ================================================
[2026-06-05 03:49:42,392.392 INFO    ] Launching Daemon at Fri Jun  5 03:49:42 IST 2026
[2026-06-05 03:49:42,403.403 INFO    ] ================================================
[2026-06-05 03:49:42,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:49:42
[2026-06-05 03:49:43,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:49:43,796.796 INFO    ] Initializing speech engine...
[2026-06-05 03:49:43,810.810 INFO    ] 2026-06-05 03:49:43
[2026-06-05 03:49:44,074.074 INFO    ] 2026-06-05 03:49:44
[2026-06-05 03:49:44,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:49:44,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:49:44,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:49:44,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:49:44,429.429 INFO    ] time= 05/06/2026 03:49:44
[2026-06-05 03:49:44,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:49:44,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:49:44,529.529 INFO    ] No existing commands found in stream
[2026-06-05 03:49:49,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:49:49,547.547 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 03:49:53,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:49:53,881.881 INFO    ] Checking for system updates...
[2026-06-05 03:49:53,918.918 INFO    ] 200
[2026-06-05 03:49:53,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:53,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:49:53,975.975 INFO    ] No update needed
[2026-06-05 03:49:53,978.978 INFO    ] Checking for camera pi updates...
[2026-06-05 03:49:54,011.011 INFO    ] 200
[2026-06-05 03:49:54,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:49:54,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:49:54,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:49:54,098.098 INFO    ] No camera update needed
[2026-06-05 03:49:54,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:49:54,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:49:54,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:49:54,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:49:56,154.154 INFO    ] ================================================
[2026-06-05 03:49:56,170.170 INFO    ] Launching Daemon at Fri Jun  5 03:49:56 IST 2026
[2026-06-05 03:49:56,180.180 INFO    ] ================================================
[2026-06-05 03:49:56,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:49:56
[2026-06-05 03:49:57,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:49:57,791.791 INFO    ] Initializing speech engine...
[2026-06-05 03:49:57,801.801 INFO    ] 2026-06-05 03:49:57
[2026-06-05 03:49:58,057.057 INFO    ] 2026-06-05 03:49:58
[2026-06-05 03:49:58,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:49:58,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:49:58,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:49:58,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:49:58,510.510 INFO    ] time= 05/06/2026 03:49:58
[2026-06-05 03:49:58,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:49:58,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:49:58,593.593 INFO    ] No existing commands found in stream
[2026-06-05 03:50:03,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:50:03,616.616 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 03:50:08,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:50:08,736.736 INFO    ] Checking for system updates...
[2026-06-05 03:50:08,773.773 INFO    ] 200
[2026-06-05 03:50:08,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:08,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:50:08,831.831 INFO    ] No update needed
[2026-06-05 03:50:08,833.833 INFO    ] Checking for camera pi updates...
[2026-06-05 03:50:08,868.868 INFO    ] 200
[2026-06-05 03:50:08,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:08,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:50:08,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:50:08,961.961 INFO    ] No camera update needed
[2026-06-05 03:50:08,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:50:08,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:50:08,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:50:08,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:50:11,015.015 INFO    ] ================================================
[2026-06-05 03:50:11,030.030 INFO    ] Launching Daemon at Fri Jun  5 03:50:11 IST 2026
[2026-06-05 03:50:11,041.041 INFO    ] ================================================
[2026-06-05 03:50:11,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:50:11
[2026-06-05 03:50:12,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:50:12,635.635 INFO    ] Initializing speech engine...
[2026-06-05 03:50:12,649.649 INFO    ] 2026-06-05 03:50:12
[2026-06-05 03:50:12,955.955 INFO    ] 2026-06-05 03:50:12
[2026-06-05 03:50:13,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:50:13,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:50:13,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:50:13,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:50:13,459.459 INFO    ] time= 05/06/2026 03:50:13
[2026-06-05 03:50:13,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:50:13,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:50:13,585.585 INFO    ] No existing commands found in stream
[2026-06-05 03:50:18,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:50:18,614.614 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 03:50:19,789.789 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:50:19,792.792 INFO    ] Checking for system updates...
[2026-06-05 03:50:19,829.829 INFO    ] 200
[2026-06-05 03:50:19,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:19,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:50:19,892.892 INFO    ] No update needed
[2026-06-05 03:50:19,895.895 INFO    ] Checking for camera pi updates...
[2026-06-05 03:50:19,932.932 INFO    ] 200
[2026-06-05 03:50:19,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:19,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:50:20,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:50:20,021.021 INFO    ] No camera update needed
[2026-06-05 03:50:20,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:50:20,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:50:20,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:50:20,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:50:22,075.075 INFO    ] ================================================
[2026-06-05 03:50:22,091.091 INFO    ] Launching Daemon at Fri Jun  5 03:50:22 IST 2026
[2026-06-05 03:50:22,101.101 INFO    ] ================================================
[2026-06-05 03:50:22,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:50:22
[2026-06-05 03:50:23,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:50:23,552.552 INFO    ] Initializing speech engine...
[2026-06-05 03:50:23,560.560 INFO    ] 2026-06-05 03:50:23
[2026-06-05 03:50:23,819.819 INFO    ] 2026-06-05 03:50:23
[2026-06-05 03:50:23,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:50:24,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:50:24,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:50:24,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:50:24,289.289 INFO    ] time= 05/06/2026 03:50:24
[2026-06-05 03:50:24,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:50:24,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:50:24,431.431 INFO    ] No existing commands found in stream
[2026-06-05 03:50:29,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:50:29,446.446 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 03:50:32,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:50:32,754.754 INFO    ] Checking for system updates...
[2026-06-05 03:50:32,800.800 INFO    ] 200
[2026-06-05 03:50:32,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:32,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:50:32,872.872 INFO    ] No update needed
[2026-06-05 03:50:32,875.875 INFO    ] Checking for camera pi updates...
[2026-06-05 03:50:32,920.920 INFO    ] 200
[2026-06-05 03:50:32,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:32,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:50:33,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:50:33,028.028 INFO    ] No camera update needed
[2026-06-05 03:50:33,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:50:33,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:50:33,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:50:33,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:50:35,086.086 INFO    ] ================================================
[2026-06-05 03:50:35,101.101 INFO    ] Launching Daemon at Fri Jun  5 03:50:35 IST 2026
[2026-06-05 03:50:35,112.112 INFO    ] ================================================
[2026-06-05 03:50:35,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:50:35
[2026-06-05 03:50:36,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:50:36,529.529 INFO    ] Initializing speech engine...
[2026-06-05 03:50:36,538.538 INFO    ] 2026-06-05 03:50:36
[2026-06-05 03:50:36,783.783 INFO    ] 2026-06-05 03:50:36
[2026-06-05 03:50:36,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:50:37,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:50:37,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:50:37,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:50:37,277.277 INFO    ] time= 05/06/2026 03:50:37
[2026-06-05 03:50:37,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:50:37,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:50:37,476.476 INFO    ] No existing commands found in stream
[2026-06-05 03:50:42,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:50:42,503.503 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 03:50:44,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:50:44,157.157 INFO    ] Checking for system updates...
[2026-06-05 03:50:44,197.197 INFO    ] 200
[2026-06-05 03:50:44,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:44,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:50:44,267.267 INFO    ] No update needed
[2026-06-05 03:50:44,269.269 INFO    ] Checking for camera pi updates...
[2026-06-05 03:50:44,305.305 INFO    ] 200
[2026-06-05 03:50:44,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:44,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:50:44,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:50:44,384.384 INFO    ] No camera update needed
[2026-06-05 03:50:44,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:50:44,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:50:44,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:50:44,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:50:46,445.445 INFO    ] ================================================
[2026-06-05 03:50:46,461.461 INFO    ] Launching Daemon at Fri Jun  5 03:50:46 IST 2026
[2026-06-05 03:50:46,471.471 INFO    ] ================================================
[2026-06-05 03:50:47,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:50:47
[2026-06-05 03:50:47,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:50:47,882.882 INFO    ] Initializing speech engine...
[2026-06-05 03:50:47,891.891 INFO    ] 2026-06-05 03:50:47
[2026-06-05 03:50:48,191.191 INFO    ] 2026-06-05 03:50:48
[2026-06-05 03:50:48,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:50:48,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:50:48,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:50:48,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:50:48,606.606 INFO    ] time= 05/06/2026 03:50:48
[2026-06-05 03:50:48,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:50:48,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:50:48,717.717 INFO    ] No existing commands found in stream
[2026-06-05 03:50:53,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:50:53,733.733 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 03:50:54,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:50:54,342.342 INFO    ] Checking for system updates...
[2026-06-05 03:50:54,385.385 INFO    ] 200
[2026-06-05 03:50:54,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:54,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:50:54,456.456 INFO    ] No update needed
[2026-06-05 03:50:54,458.458 INFO    ] Checking for camera pi updates...
[2026-06-05 03:50:54,492.492 INFO    ] 200
[2026-06-05 03:50:54,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:50:54,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:50:54,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:50:54,572.572 INFO    ] No camera update needed
[2026-06-05 03:50:54,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:50:54,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:50:54,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:50:54,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:50:56,627.627 INFO    ] ================================================
[2026-06-05 03:50:56,642.642 INFO    ] Launching Daemon at Fri Jun  5 03:50:56 IST 2026
[2026-06-05 03:50:56,654.654 INFO    ] ================================================
[2026-06-05 03:50:57,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:50:57
[2026-06-05 03:50:57,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:50:58,206.206 INFO    ] Initializing speech engine...
[2026-06-05 03:50:58,216.216 INFO    ] 2026-06-05 03:50:58
[2026-06-05 03:50:58,462.462 INFO    ] 2026-06-05 03:50:58
[2026-06-05 03:50:58,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:50:58,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:50:58,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:50:58,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:50:58,912.912 INFO    ] time= 05/06/2026 03:50:58
[2026-06-05 03:50:58,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:50:59,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:50:59,082.082 INFO    ] No existing commands found in stream
[2026-06-05 03:51:04,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:51:04,097.097 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 03:51:06,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:51:06,824.824 INFO    ] Checking for system updates...
[2026-06-05 03:51:06,863.863 INFO    ] 200
[2026-06-05 03:51:06,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:06,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:51:06,929.929 INFO    ] No update needed
[2026-06-05 03:51:06,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 03:51:06,969.969 INFO    ] 200
[2026-06-05 03:51:06,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:07,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:51:07,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:51:07,056.056 INFO    ] No camera update needed
[2026-06-05 03:51:07,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:51:07,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:51:07,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:51:07,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:51:09,112.112 INFO    ] ================================================
[2026-06-05 03:51:09,127.127 INFO    ] Launching Daemon at Fri Jun  5 03:51:09 IST 2026
[2026-06-05 03:51:09,137.137 INFO    ] ================================================
[2026-06-05 03:51:09,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:51:09
[2026-06-05 03:51:10,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:51:10,582.582 INFO    ] Initializing speech engine...
[2026-06-05 03:51:10,593.593 INFO    ] 2026-06-05 03:51:10
[2026-06-05 03:51:10,855.855 INFO    ] 2026-06-05 03:51:10
[2026-06-05 03:51:10,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:51:11,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:51:11,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:51:11,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:51:11,295.295 INFO    ] time= 05/06/2026 03:51:11
[2026-06-05 03:51:11,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:51:11,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:51:11,473.473 INFO    ] No existing commands found in stream
[2026-06-05 03:51:16,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:51:16,488.488 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 03:51:19,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:51:19,198.198 INFO    ] Checking for system updates...
[2026-06-05 03:51:19,235.235 INFO    ] 200
[2026-06-05 03:51:19,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:19,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:51:19,300.300 INFO    ] No update needed
[2026-06-05 03:51:19,302.302 INFO    ] Checking for camera pi updates...
[2026-06-05 03:51:19,336.336 INFO    ] 200
[2026-06-05 03:51:19,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:19,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:51:19,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:51:19,425.425 INFO    ] No camera update needed
[2026-06-05 03:51:19,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:51:19,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:51:19,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:51:19,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:51:21,482.482 INFO    ] ================================================
[2026-06-05 03:51:21,498.498 INFO    ] Launching Daemon at Fri Jun  5 03:51:21 IST 2026
[2026-06-05 03:51:21,509.509 INFO    ] ================================================
[2026-06-05 03:51:22,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:51:22
[2026-06-05 03:51:22,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:51:22,914.914 INFO    ] Initializing speech engine...
[2026-06-05 03:51:22,920.920 INFO    ] 2026-06-05 03:51:22
[2026-06-05 03:51:23,213.213 INFO    ] 2026-06-05 03:51:23
[2026-06-05 03:51:23,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:51:23,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:51:23,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:51:23,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:51:23,586.586 INFO    ] time= 05/06/2026 03:51:23
[2026-06-05 03:51:23,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:51:23,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:51:23,709.709 INFO    ] No existing commands found in stream
[2026-06-05 03:51:28,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:51:28,722.722 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 03:51:29,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:51:29,724.724 INFO    ] Checking for system updates...
[2026-06-05 03:51:29,764.764 INFO    ] 200
[2026-06-05 03:51:29,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:29,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:51:29,821.821 INFO    ] No update needed
[2026-06-05 03:51:29,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 03:51:29,858.858 INFO    ] 200
[2026-06-05 03:51:29,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:29,905.905 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:51:29,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:51:29,948.948 INFO    ] No camera update needed
[2026-06-05 03:51:29,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:51:29,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:51:29,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:51:29,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:51:32,008.008 INFO    ] ================================================
[2026-06-05 03:51:32,025.025 INFO    ] Launching Daemon at Fri Jun  5 03:51:32 IST 2026
[2026-06-05 03:51:32,036.036 INFO    ] ================================================
[2026-06-05 03:51:32,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:51:32
[2026-06-05 03:51:33,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:51:33,541.541 INFO    ] Initializing speech engine...
[2026-06-05 03:51:33,550.550 INFO    ] 2026-06-05 03:51:33
[2026-06-05 03:51:33,797.797 INFO    ] 2026-06-05 03:51:33
[2026-06-05 03:51:33,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:51:34,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:51:34,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:51:34,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:51:34,251.251 INFO    ] time= 05/06/2026 03:51:34
[2026-06-05 03:51:34,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:51:34,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:51:34,382.382 INFO    ] No existing commands found in stream
[2026-06-05 03:51:39,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:51:39,416.416 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 03:51:40,783.783 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:51:40,786.786 INFO    ] Checking for system updates...
[2026-06-05 03:51:40,826.826 INFO    ] 200
[2026-06-05 03:51:40,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:40,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:51:40,890.890 INFO    ] No update needed
[2026-06-05 03:51:40,892.892 INFO    ] Checking for camera pi updates...
[2026-06-05 03:51:40,926.926 INFO    ] 200
[2026-06-05 03:51:40,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:40,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:51:41,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:51:41,012.012 INFO    ] No camera update needed
[2026-06-05 03:51:41,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:51:41,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:51:41,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:51:41,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:51:43,069.069 INFO    ] ================================================
[2026-06-05 03:51:43,084.084 INFO    ] Launching Daemon at Fri Jun  5 03:51:43 IST 2026
[2026-06-05 03:51:43,094.094 INFO    ] ================================================
[2026-06-05 03:51:43,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:51:43
[2026-06-05 03:51:44,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:51:44,496.496 INFO    ] Initializing speech engine...
[2026-06-05 03:51:44,511.511 INFO    ] 2026-06-05 03:51:44
[2026-06-05 03:51:44,776.776 INFO    ] 2026-06-05 03:51:44
[2026-06-05 03:51:44,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:51:44,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:51:45,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:51:45,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:51:45,156.156 INFO    ] time= 05/06/2026 03:51:45
[2026-06-05 03:51:45,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:51:45,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:51:45,329.329 INFO    ] No existing commands found in stream
[2026-06-05 03:51:50,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:51:50,368.368 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 03:51:52,164.164 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:51:52,167.167 INFO    ] Checking for system updates...
[2026-06-05 03:51:52,202.202 INFO    ] 200
[2026-06-05 03:51:52,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:52,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:51:52,260.260 INFO    ] No update needed
[2026-06-05 03:51:52,262.262 INFO    ] Checking for camera pi updates...
[2026-06-05 03:51:52,297.297 INFO    ] 200
[2026-06-05 03:51:52,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:51:52,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:51:52,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:51:52,392.392 INFO    ] No camera update needed
[2026-06-05 03:51:52,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:51:52,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:51:52,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:51:52,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:51:54,451.451 INFO    ] ================================================
[2026-06-05 03:51:54,465.465 INFO    ] Launching Daemon at Fri Jun  5 03:51:54 IST 2026
[2026-06-05 03:51:54,476.476 INFO    ] ================================================
[2026-06-05 03:51:55,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:51:55
[2026-06-05 03:51:55,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:51:55,886.886 INFO    ] Initializing speech engine...
[2026-06-05 03:51:55,892.892 INFO    ] 2026-06-05 03:51:55
[2026-06-05 03:51:56,186.186 INFO    ] 2026-06-05 03:51:56
[2026-06-05 03:51:56,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:51:56,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:51:56,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:51:56,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:51:56,608.608 INFO    ] time= 05/06/2026 03:51:56
[2026-06-05 03:51:56,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:51:56,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:51:56,695.695 INFO    ] No existing commands found in stream
[2026-06-05 03:52:01,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:52:01,710.710 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 03:52:05,864.864 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:52:05,867.867 INFO    ] Checking for system updates...
[2026-06-05 03:52:05,908.908 INFO    ] 200
[2026-06-05 03:52:05,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:05,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:52:05,965.965 INFO    ] No update needed
[2026-06-05 03:52:05,968.968 INFO    ] Checking for camera pi updates...
[2026-06-05 03:52:06,001.001 INFO    ] 200
[2026-06-05 03:52:06,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:06,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:52:06,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:52:06,106.106 INFO    ] No camera update needed
[2026-06-05 03:52:06,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:52:06,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:52:06,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:52:06,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:52:08,161.161 INFO    ] ================================================
[2026-06-05 03:52:08,176.176 INFO    ] Launching Daemon at Fri Jun  5 03:52:08 IST 2026
[2026-06-05 03:52:08,187.187 INFO    ] ================================================
[2026-06-05 03:52:08,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:52:08
[2026-06-05 03:52:09,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:52:09,621.621 INFO    ] Initializing speech engine...
[2026-06-05 03:52:09,630.630 INFO    ] 2026-06-05 03:52:09
[2026-06-05 03:52:09,883.883 INFO    ] 2026-06-05 03:52:09
[2026-06-05 03:52:09,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:52:10,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:52:10,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:52:10,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:52:10,367.367 INFO    ] time= 05/06/2026 03:52:10
[2026-06-05 03:52:10,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:52:10,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:52:10,492.492 INFO    ] No existing commands found in stream
[2026-06-05 03:52:15,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:52:15,506.506 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 03:52:19,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:52:19,165.165 INFO    ] Checking for system updates...
[2026-06-05 03:52:19,206.206 INFO    ] 200
[2026-06-05 03:52:19,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:19,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:52:19,264.264 INFO    ] No update needed
[2026-06-05 03:52:19,267.267 INFO    ] Checking for camera pi updates...
[2026-06-05 03:52:19,304.304 INFO    ] 200
[2026-06-05 03:52:19,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:19,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:52:19,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:52:19,400.400 INFO    ] No camera update needed
[2026-06-05 03:52:19,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:52:19,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:52:19,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:52:19,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:52:21,457.457 INFO    ] ================================================
[2026-06-05 03:52:21,472.472 INFO    ] Launching Daemon at Fri Jun  5 03:52:21 IST 2026
[2026-06-05 03:52:21,483.483 INFO    ] ================================================
[2026-06-05 03:52:22,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:52:22
[2026-06-05 03:52:22,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:52:22,904.904 INFO    ] Initializing speech engine...
[2026-06-05 03:52:22,913.913 INFO    ] 2026-06-05 03:52:22
[2026-06-05 03:52:23,189.189 INFO    ] 2026-06-05 03:52:23
[2026-06-05 03:52:23,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:52:23,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:52:23,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:52:23,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:52:23,571.571 INFO    ] time= 05/06/2026 03:52:23
[2026-06-05 03:52:23,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:52:23,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:52:23,719.719 INFO    ] No existing commands found in stream
[2026-06-05 03:52:28,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:52:28,747.747 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 03:52:30,566.566 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:52:30,569.569 INFO    ] Checking for system updates...
[2026-06-05 03:52:30,605.605 INFO    ] 200
[2026-06-05 03:52:30,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:30,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:52:30,663.663 INFO    ] No update needed
[2026-06-05 03:52:30,665.665 INFO    ] Checking for camera pi updates...
[2026-06-05 03:52:30,703.703 INFO    ] 200
[2026-06-05 03:52:30,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:30,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:52:30,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:52:30,799.799 INFO    ] No camera update needed
[2026-06-05 03:52:30,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:52:30,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:52:30,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:52:30,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:52:32,856.856 INFO    ] ================================================
[2026-06-05 03:52:32,871.871 INFO    ] Launching Daemon at Fri Jun  5 03:52:32 IST 2026
[2026-06-05 03:52:32,883.883 INFO    ] ================================================
[2026-06-05 03:52:33,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:52:33
[2026-06-05 03:52:34,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:52:34,560.560 INFO    ] Initializing speech engine...
[2026-06-05 03:52:34,571.571 INFO    ] 2026-06-05 03:52:34
[2026-06-05 03:52:34,881.881 INFO    ] 2026-06-05 03:52:34
[2026-06-05 03:52:34,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:52:35,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:52:35,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:52:35,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:52:35,388.388 INFO    ] time= 05/06/2026 03:52:35
[2026-06-05 03:52:35,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:52:35,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:52:35,543.543 INFO    ] No existing commands found in stream
[2026-06-05 03:52:40,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:52:40,577.577 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 03:52:42,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:52:42,432.432 INFO    ] Checking for system updates...
[2026-06-05 03:52:42,470.470 INFO    ] 200
[2026-06-05 03:52:42,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:42,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:52:42,537.537 INFO    ] No update needed
[2026-06-05 03:52:42,540.540 INFO    ] Checking for camera pi updates...
[2026-06-05 03:52:42,576.576 INFO    ] 200
[2026-06-05 03:52:42,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:42,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:52:42,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:52:42,771.771 INFO    ] No camera update needed
[2026-06-05 03:52:42,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:52:42,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:52:42,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:52:42,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:52:44,831.831 INFO    ] ================================================
[2026-06-05 03:52:44,847.847 INFO    ] Launching Daemon at Fri Jun  5 03:52:44 IST 2026
[2026-06-05 03:52:44,858.858 INFO    ] ================================================
[2026-06-05 03:52:45,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:52:45
[2026-06-05 03:52:46,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:52:46,275.275 INFO    ] Initializing speech engine...
[2026-06-05 03:52:46,284.284 INFO    ] 2026-06-05 03:52:46
[2026-06-05 03:52:46,580.580 INFO    ] 2026-06-05 03:52:46
[2026-06-05 03:52:46,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:52:46,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:52:46,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:52:46,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:52:46,966.966 INFO    ] time= 05/06/2026 03:52:46
[2026-06-05 03:52:46,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:52:47,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:52:47,093.093 INFO    ] No existing commands found in stream
[2026-06-05 03:52:52,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:52:52,108.108 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 03:52:55,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:52:55,599.599 INFO    ] Checking for system updates...
[2026-06-05 03:52:55,635.635 INFO    ] 200
[2026-06-05 03:52:55,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:55,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:52:55,693.693 INFO    ] No update needed
[2026-06-05 03:52:55,696.696 INFO    ] Checking for camera pi updates...
[2026-06-05 03:52:55,730.730 INFO    ] 200
[2026-06-05 03:52:55,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:52:55,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:52:55,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:52:55,823.823 INFO    ] No camera update needed
[2026-06-05 03:52:55,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:52:55,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:52:55,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:52:55,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:52:57,877.877 INFO    ] ================================================
[2026-06-05 03:52:57,893.893 INFO    ] Launching Daemon at Fri Jun  5 03:52:57 IST 2026
[2026-06-05 03:52:57,904.904 INFO    ] ================================================
[2026-06-05 03:52:58,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:52:58
[2026-06-05 03:52:59,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:52:59,366.366 INFO    ] Initializing speech engine...
[2026-06-05 03:52:59,371.371 INFO    ] 2026-06-05 03:52:59
[2026-06-05 03:52:59,649.649 INFO    ] 2026-06-05 03:52:59
[2026-06-05 03:52:59,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:52:59,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:52:59,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:53:00,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:53:00,131.131 INFO    ] time= 05/06/2026 03:53:00
[2026-06-05 03:53:00,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:53:00,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:53:00,343.343 INFO    ] No existing commands found in stream
[2026-06-05 03:53:05,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:53:05,371.371 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 03:53:06,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:53:06,868.868 INFO    ] Checking for system updates...
[2026-06-05 03:53:06,907.907 INFO    ] 200
[2026-06-05 03:53:06,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:53:06,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:53:06,964.964 INFO    ] No update needed
[2026-06-05 03:53:06,967.967 INFO    ] Checking for camera pi updates...
[2026-06-05 03:53:07,001.001 INFO    ] 200
[2026-06-05 03:53:07,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:53:07,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:53:07,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:53:07,100.100 INFO    ] No camera update needed
[2026-06-05 03:53:07,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:53:07,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:53:07,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:53:07,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:53:09,155.155 INFO    ] ================================================
[2026-06-05 03:53:09,171.171 INFO    ] Launching Daemon at Fri Jun  5 03:53:09 IST 2026
[2026-06-05 03:53:09,182.182 INFO    ] ================================================
[2026-06-05 03:53:09,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:53:09
[2026-06-05 03:53:10,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:53:10,616.616 INFO    ] Initializing speech engine...
[2026-06-05 03:53:10,627.627 INFO    ] 2026-06-05 03:53:10
[2026-06-05 03:53:10,873.873 INFO    ] 2026-06-05 03:53:10
[2026-06-05 03:53:10,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:53:11,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:53:11,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:53:11,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:53:11,244.244 INFO    ] time= 05/06/2026 03:53:11
[2026-06-05 03:53:11,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:53:11,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:53:11,338.338 INFO    ] No existing commands found in stream
[2026-06-05 03:53:16,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:53:16,353.353 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 03:53:18,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:53:18,949.949 INFO    ] Checking for system updates...
[2026-06-05 03:53:18,985.985 INFO    ] 200
[2026-06-05 03:53:18,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:53:19,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:53:19,049.049 INFO    ] No update needed
[2026-06-05 03:53:19,051.051 INFO    ] Checking for camera pi updates...
[2026-06-05 03:53:19,086.086 INFO    ] 200
[2026-06-05 03:53:19,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:53:19,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:53:19,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:53:19,178.178 INFO    ] No camera update needed
[2026-06-05 03:53:19,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:53:19,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:53:19,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:53:19,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:53:21,235.235 INFO    ] ================================================
[2026-06-05 03:53:21,251.251 INFO    ] Launching Daemon at Fri Jun  5 03:53:21 IST 2026
[2026-06-05 03:53:21,262.262 INFO    ] ================================================
[2026-06-05 03:53:21,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:53:21
[2026-06-05 03:53:22,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:53:22,739.739 INFO    ] Initializing speech engine...
[2026-06-05 03:53:22,758.758 INFO    ] 2026-06-05 03:53:22
[2026-06-05 03:53:23,037.037 INFO    ] 2026-06-05 03:53:23
[2026-06-05 03:53:23,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:53:23,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:53:23,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:53:23,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:53:23,396.396 INFO    ] time= 05/06/2026 03:53:23
[2026-06-05 03:53:23,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:53:23,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:53:23,506.506 INFO    ] No existing commands found in stream
[2026-06-05 03:53:28,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:53:28,540.540 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 03:53:32,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:53:32,599.599 INFO    ] Checking for system updates...
[2026-06-05 03:53:32,646.646 INFO    ] 200
[2026-06-05 03:53:32,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 03:53:32,659.659 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 03:53:32,662.662 INFO    ] Checking for camera pi updates...
[2026-06-05 03:53:32,715.715 INFO    ] 200
[2026-06-05 03:53:32,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 03:53:32,721.721 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 03:53:32,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:53:32,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:53:32,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:53:32,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:53:34,784.784 INFO    ] ================================================
[2026-06-05 03:53:34,800.800 INFO    ] Launching Daemon at Fri Jun  5 03:53:34 IST 2026
[2026-06-05 03:53:34,811.811 INFO    ] ================================================
[2026-06-05 03:53:35,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:53:35
[2026-06-05 03:53:35,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:53:36,212.212 INFO    ] Initializing speech engine...
[2026-06-05 03:53:36,221.221 INFO    ] 2026-06-05 03:53:36
[2026-06-05 03:53:36,495.495 INFO    ] 2026-06-05 03:53:36
[2026-06-05 03:53:36,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:53:36,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:53:36,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:53:36,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:53:36,852.852 INFO    ] time= 05/06/2026 03:53:36
[2026-06-05 03:53:36,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:53:36,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:53:36,949.949 INFO    ] No existing commands found in stream
[2026-06-05 03:53:41,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:53:41,964.964 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 03:53:45,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:53:45,225.225 INFO    ] Checking for system updates...
[2026-06-05 03:53:45,268.268 INFO    ] 200
[2026-06-05 03:53:45,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:53:45,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:53:45,337.337 INFO    ] No update needed
[2026-06-05 03:53:45,341.341 INFO    ] Checking for camera pi updates...
[2026-06-05 03:53:45,378.378 INFO    ] 200
[2026-06-05 03:53:45,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:53:45,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:53:45,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:53:45,485.485 INFO    ] No camera update needed
[2026-06-05 03:53:45,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:53:45,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:53:45,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:53:45,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:53:47,545.545 INFO    ] ================================================
[2026-06-05 03:53:47,560.560 INFO    ] Launching Daemon at Fri Jun  5 03:53:47 IST 2026
[2026-06-05 03:53:47,571.571 INFO    ] ================================================
[2026-06-05 03:53:48,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:53:48
[2026-06-05 03:53:48,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:53:48,976.976 INFO    ] Initializing speech engine...
[2026-06-05 03:53:48,990.990 INFO    ] 2026-06-05 03:53:48
[2026-06-05 03:53:49,256.256 INFO    ] 2026-06-05 03:53:49
[2026-06-05 03:53:49,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:53:49,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:53:49,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:53:49,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:53:49,738.738 INFO    ] time= 05/06/2026 03:53:49
[2026-06-05 03:53:49,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:53:49,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:53:49,931.931 INFO    ] No existing commands found in stream
[2026-06-05 03:53:54,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:53:54,965.965 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 03:53:57,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:53:57,724.724 INFO    ] Checking for system updates...
[2026-06-05 03:53:57,760.760 INFO    ] 200
[2026-06-05 03:53:57,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:53:57,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:53:57,817.817 INFO    ] No update needed
[2026-06-05 03:53:57,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 03:53:57,858.858 INFO    ] 200
[2026-06-05 03:53:57,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:53:57,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:53:57,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:53:57,948.948 INFO    ] No camera update needed
[2026-06-05 03:53:57,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:53:57,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:53:57,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:53:57,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:54:00,002.002 INFO    ] ================================================
[2026-06-05 03:54:00,018.018 INFO    ] Launching Daemon at Fri Jun  5 03:54:00 IST 2026
[2026-06-05 03:54:00,028.028 INFO    ] ================================================
[2026-06-05 03:54:00,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:54:00
[2026-06-05 03:54:01,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:54:01,451.451 INFO    ] Initializing speech engine...
[2026-06-05 03:54:01,460.460 INFO    ] 2026-06-05 03:54:01
[2026-06-05 03:54:01,744.744 INFO    ] 2026-06-05 03:54:01
[2026-06-05 03:54:01,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:54:01,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:54:01,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:54:02,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:54:02,124.124 INFO    ] time= 05/06/2026 03:54:02
[2026-06-05 03:54:02,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:54:02,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:54:02,187.187 INFO    ] No existing commands found in stream
[2026-06-05 03:54:07,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:54:07,201.201 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 03:54:10,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:54:10,314.314 INFO    ] Checking for system updates...
[2026-06-05 03:54:10,351.351 INFO    ] 200
[2026-06-05 03:54:10,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:10,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:54:10,409.409 INFO    ] No update needed
[2026-06-05 03:54:10,412.412 INFO    ] Checking for camera pi updates...
[2026-06-05 03:54:10,446.446 INFO    ] 200
[2026-06-05 03:54:10,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:10,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:54:10,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:54:10,532.532 INFO    ] No camera update needed
[2026-06-05 03:54:10,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:54:10,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:54:10,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:54:10,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:54:12,587.587 INFO    ] ================================================
[2026-06-05 03:54:12,602.602 INFO    ] Launching Daemon at Fri Jun  5 03:54:12 IST 2026
[2026-06-05 03:54:12,612.612 INFO    ] ================================================
[2026-06-05 03:54:13,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:54:13
[2026-06-05 03:54:13,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:54:14,042.042 INFO    ] Initializing speech engine...
[2026-06-05 03:54:14,052.052 INFO    ] 2026-06-05 03:54:14
[2026-06-05 03:54:14,302.302 INFO    ] 2026-06-05 03:54:14
[2026-06-05 03:54:14,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:54:14,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:54:14,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:54:14,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:54:14,659.659 INFO    ] time= 05/06/2026 03:54:14
[2026-06-05 03:54:14,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:54:14,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:54:14,759.759 INFO    ] No existing commands found in stream
[2026-06-05 03:54:19,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:54:19,777.777 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 03:54:20,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:54:20,667.667 INFO    ] Checking for system updates...
[2026-06-05 03:54:20,702.702 INFO    ] 200
[2026-06-05 03:54:20,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:20,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:54:20,760.760 INFO    ] No update needed
[2026-06-05 03:54:20,762.762 INFO    ] Checking for camera pi updates...
[2026-06-05 03:54:20,801.801 INFO    ] 200
[2026-06-05 03:54:20,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:20,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:54:20,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:54:20,888.888 INFO    ] No camera update needed
[2026-06-05 03:54:20,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:54:20,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:54:20,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:54:20,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:54:22,945.945 INFO    ] ================================================
[2026-06-05 03:54:22,960.960 INFO    ] Launching Daemon at Fri Jun  5 03:54:22 IST 2026
[2026-06-05 03:54:22,971.971 INFO    ] ================================================
[2026-06-05 03:54:23,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:54:23
[2026-06-05 03:54:24,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:54:24,408.408 INFO    ] Initializing speech engine...
[2026-06-05 03:54:24,418.418 INFO    ] 2026-06-05 03:54:24
[2026-06-05 03:54:24,669.669 INFO    ] 2026-06-05 03:54:24
[2026-06-05 03:54:24,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:54:24,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:54:24,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:54:25,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:54:25,118.118 INFO    ] time= 05/06/2026 03:54:25
[2026-06-05 03:54:25,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:54:25,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:54:25,304.304 INFO    ] No existing commands found in stream
[2026-06-05 03:54:30,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:54:30,322.322 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 03:54:32,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:54:32,204.204 INFO    ] Checking for system updates...
[2026-06-05 03:54:32,245.245 INFO    ] 200
[2026-06-05 03:54:32,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:32,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:54:32,318.318 INFO    ] No update needed
[2026-06-05 03:54:32,321.321 INFO    ] Checking for camera pi updates...
[2026-06-05 03:54:32,364.364 INFO    ] 200
[2026-06-05 03:54:32,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:32,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:54:32,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:54:32,457.457 INFO    ] No camera update needed
[2026-06-05 03:54:32,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:54:32,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:54:32,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:54:32,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:54:34,520.520 INFO    ] ================================================
[2026-06-05 03:54:34,536.536 INFO    ] Launching Daemon at Fri Jun  5 03:54:34 IST 2026
[2026-06-05 03:54:34,548.548 INFO    ] ================================================
[2026-06-05 03:54:35,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:54:35
[2026-06-05 03:54:35,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:54:35,946.946 INFO    ] Initializing speech engine...
[2026-06-05 03:54:35,960.960 INFO    ] 2026-06-05 03:54:35
[2026-06-05 03:54:36,226.226 INFO    ] 2026-06-05 03:54:36
[2026-06-05 03:54:36,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:54:36,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:54:36,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:54:36,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:54:36,604.604 INFO    ] time= 05/06/2026 03:54:36
[2026-06-05 03:54:36,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:54:36,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:54:36,778.778 INFO    ] No existing commands found in stream
[2026-06-05 03:54:41,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:54:41,895.895 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 03:54:46,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:54:46,280.280 INFO    ] Checking for system updates...
[2026-06-05 03:54:46,318.318 INFO    ] 200
[2026-06-05 03:54:46,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:46,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:54:46,378.378 INFO    ] No update needed
[2026-06-05 03:54:46,381.381 INFO    ] Checking for camera pi updates...
[2026-06-05 03:54:46,416.416 INFO    ] 200
[2026-06-05 03:54:46,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:46,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:54:46,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:54:46,625.625 INFO    ] No camera update needed
[2026-06-05 03:54:46,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:54:46,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:54:46,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:54:46,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:54:48,682.682 INFO    ] ================================================
[2026-06-05 03:54:48,697.697 INFO    ] Launching Daemon at Fri Jun  5 03:54:48 IST 2026
[2026-06-05 03:54:48,707.707 INFO    ] ================================================
[2026-06-05 03:54:49,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:54:49
[2026-06-05 03:54:49,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:54:50,165.165 INFO    ] Initializing speech engine...
[2026-06-05 03:54:50,175.175 INFO    ] 2026-06-05 03:54:50
[2026-06-05 03:54:50,436.436 INFO    ] 2026-06-05 03:54:50
[2026-06-05 03:54:50,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:54:50,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:54:50,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:54:50,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:54:50,896.896 INFO    ] time= 05/06/2026 03:54:50
[2026-06-05 03:54:50,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:54:50,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:54:51,043.043 INFO    ] No existing commands found in stream
[2026-06-05 03:54:56,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:54:56,058.058 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 03:54:59,021.021 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:54:59,023.023 INFO    ] Checking for system updates...
[2026-06-05 03:54:59,064.064 INFO    ] 200
[2026-06-05 03:54:59,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:59,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:54:59,123.123 INFO    ] No update needed
[2026-06-05 03:54:59,126.126 INFO    ] Checking for camera pi updates...
[2026-06-05 03:54:59,165.165 INFO    ] 200
[2026-06-05 03:54:59,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:54:59,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:54:59,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:54:59,266.266 INFO    ] No camera update needed
[2026-06-05 03:54:59,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:54:59,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:54:59,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:54:59,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:55:01,327.327 INFO    ] ================================================
[2026-06-05 03:55:01,342.342 INFO    ] Launching Daemon at Fri Jun  5 03:55:01 IST 2026
[2026-06-05 03:55:01,353.353 INFO    ] ================================================
[2026-06-05 03:55:02,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:55:02
[2026-06-05 03:55:02,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:55:03,135.135 INFO    ] Initializing speech engine...
[2026-06-05 03:55:03,140.140 INFO    ] 2026-06-05 03:55:03
[2026-06-05 03:55:03,463.463 INFO    ] 2026-06-05 03:55:03
[2026-06-05 03:55:03,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:55:03,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:55:03,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:55:03,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:55:03,930.930 INFO    ] time= 05/06/2026 03:55:03
[2026-06-05 03:55:03,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:55:03,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:55:04,020.020 INFO    ] No existing commands found in stream
[2026-06-05 03:55:09,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:55:09,032.032 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 03:55:11,112.112 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:55:11,114.114 INFO    ] Checking for system updates...
[2026-06-05 03:55:11,155.155 INFO    ] 200
[2026-06-05 03:55:11,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:55:11,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:55:11,214.214 INFO    ] No update needed
[2026-06-05 03:55:11,217.217 INFO    ] Checking for camera pi updates...
[2026-06-05 03:55:11,256.256 INFO    ] 200
[2026-06-05 03:55:11,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:55:11,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:55:11,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:55:11,353.353 INFO    ] No camera update needed
[2026-06-05 03:55:11,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:55:11,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:55:11,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:55:11,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:55:13,407.407 INFO    ] ================================================
[2026-06-05 03:55:13,423.423 INFO    ] Launching Daemon at Fri Jun  5 03:55:13 IST 2026
[2026-06-05 03:55:13,434.434 INFO    ] ================================================
[2026-06-05 03:55:14,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:55:14
[2026-06-05 03:55:14,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:55:15,119.119 INFO    ] Initializing speech engine...
[2026-06-05 03:55:15,131.131 INFO    ] 2026-06-05 03:55:15
[2026-06-05 03:55:15,421.421 INFO    ] 2026-06-05 03:55:15
[2026-06-05 03:55:15,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:55:15,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:55:15,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:55:15,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:55:15,955.955 INFO    ] time= 05/06/2026 03:55:15
[2026-06-05 03:55:15,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:55:16,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:55:16,117.117 INFO    ] No existing commands found in stream
[2026-06-05 03:55:21,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:55:21,150.150 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 03:55:24,630.630 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:55:24,633.633 INFO    ] Checking for system updates...
[2026-06-05 03:55:24,678.678 INFO    ] 200
[2026-06-05 03:55:24,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:55:24,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:55:24,741.741 INFO    ] No update needed
[2026-06-05 03:55:24,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 03:55:24,782.782 INFO    ] 200
[2026-06-05 03:55:24,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:55:24,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:55:24,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:55:24,868.868 INFO    ] No camera update needed
[2026-06-05 03:55:24,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:55:24,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:55:24,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:55:24,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:55:26,924.924 INFO    ] ================================================
[2026-06-05 03:55:26,947.947 INFO    ] Launching Daemon at Fri Jun  5 03:55:26 IST 2026
[2026-06-05 03:55:26,959.959 INFO    ] ================================================
[2026-06-05 03:55:27,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:55:27
[2026-06-05 03:55:28,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:55:28,591.591 INFO    ] Initializing speech engine...
[2026-06-05 03:55:28,606.606 INFO    ] 2026-06-05 03:55:28
[2026-06-05 03:55:28,895.895 INFO    ] 2026-06-05 03:55:28
[2026-06-05 03:55:28,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:55:29,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:55:29,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:55:29,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:55:29,260.260 INFO    ] time= 05/06/2026 03:55:29
[2026-06-05 03:55:29,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:55:29,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:55:29,345.345 INFO    ] No existing commands found in stream
[2026-06-05 03:55:34,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:55:34,359.359 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 03:55:37,207.207 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:55:37,210.210 INFO    ] Checking for system updates...
[2026-06-05 03:55:37,247.247 INFO    ] 200
[2026-06-05 03:55:37,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:55:37,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:55:37,312.312 INFO    ] No update needed
[2026-06-05 03:55:37,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 03:55:37,349.349 INFO    ] 200
[2026-06-05 03:55:37,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:55:37,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:55:37,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:55:37,436.436 INFO    ] No camera update needed
[2026-06-05 03:55:37,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:55:37,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:55:37,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:55:37,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:55:39,494.494 INFO    ] ================================================
[2026-06-05 03:55:39,511.511 INFO    ] Launching Daemon at Fri Jun  5 03:55:39 IST 2026
[2026-06-05 03:55:39,523.523 INFO    ] ================================================
[2026-06-05 03:55:40,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:55:40
[2026-06-05 03:55:40,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:55:40,998.998 INFO    ] Initializing speech engine...
[2026-06-05 03:55:41,009.009 INFO    ] 2026-06-05 03:55:41
[2026-06-05 03:55:41,270.270 INFO    ] 2026-06-05 03:55:41
[2026-06-05 03:55:41,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:55:41,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:55:41,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:55:41,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:55:41,732.732 INFO    ] time= 05/06/2026 03:55:41
[2026-06-05 03:55:41,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:55:41,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:55:41,881.881 INFO    ] No existing commands found in stream
[2026-06-05 03:55:46,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:55:46,896.896 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 03:55:50,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:55:50,192.192 INFO    ] Checking for system updates...
[2026-06-05 03:55:50,233.233 INFO    ] 200
[2026-06-05 03:55:50,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:55:50,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:55:50,301.301 INFO    ] No update needed
[2026-06-05 03:55:50,303.303 INFO    ] Checking for camera pi updates...
[2026-06-05 03:55:50,338.338 INFO    ] 200
[2026-06-05 03:55:50,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:55:50,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:55:50,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:55:50,432.432 INFO    ] No camera update needed
[2026-06-05 03:55:50,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:55:50,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:55:50,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:55:50,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:55:52,487.487 INFO    ] ================================================
[2026-06-05 03:55:52,503.503 INFO    ] Launching Daemon at Fri Jun  5 03:55:52 IST 2026
[2026-06-05 03:55:52,515.515 INFO    ] ================================================
[2026-06-05 03:55:53,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:55:53
[2026-06-05 03:55:53,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:55:54,238.238 INFO    ] Initializing speech engine...
[2026-06-05 03:55:54,250.250 INFO    ] 2026-06-05 03:55:54
[2026-06-05 03:55:54,567.567 INFO    ] 2026-06-05 03:55:54
[2026-06-05 03:55:54,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:55:54,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:55:54,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:55:55,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:55:55,082.082 INFO    ] time= 05/06/2026 03:55:55
[2026-06-05 03:55:55,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:55:55,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:55:55,234.234 INFO    ] No existing commands found in stream
[2026-06-05 03:56:00,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:56:00,258.258 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 03:56:02,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:56:02,397.397 INFO    ] Checking for system updates...
[2026-06-05 03:56:02,456.456 INFO    ] 200
[2026-06-05 03:56:02,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:02,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:56:02,526.526 INFO    ] No update needed
[2026-06-05 03:56:02,529.529 INFO    ] Checking for camera pi updates...
[2026-06-05 03:56:02,567.567 INFO    ] 200
[2026-06-05 03:56:02,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:02,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:56:02,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:56:02,702.702 INFO    ] No camera update needed
[2026-06-05 03:56:02,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:56:02,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:56:02,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:56:02,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:56:04,768.768 INFO    ] ================================================
[2026-06-05 03:56:04,784.784 INFO    ] Launching Daemon at Fri Jun  5 03:56:04 IST 2026
[2026-06-05 03:56:04,795.795 INFO    ] ================================================
[2026-06-05 03:56:05,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:56:05
[2026-06-05 03:56:06,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:56:06,454.454 INFO    ] Initializing speech engine...
[2026-06-05 03:56:06,462.462 INFO    ] 2026-06-05 03:56:06
[2026-06-05 03:56:06,734.734 INFO    ] 2026-06-05 03:56:06
[2026-06-05 03:56:06,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:56:07,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:56:07,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:56:07,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:56:07,208.208 INFO    ] time= 05/06/2026 03:56:07
[2026-06-05 03:56:07,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:56:07,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:56:07,370.370 INFO    ] No existing commands found in stream
[2026-06-05 03:56:12,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:56:12,386.386 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 03:56:13,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:56:13,867.867 INFO    ] Checking for system updates...
[2026-06-05 03:56:13,909.909 INFO    ] 200
[2026-06-05 03:56:13,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:13,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:56:13,968.968 INFO    ] No update needed
[2026-06-05 03:56:13,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 03:56:14,010.010 INFO    ] 200
[2026-06-05 03:56:14,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:14,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:56:14,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:56:14,106.106 INFO    ] No camera update needed
[2026-06-05 03:56:14,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:56:14,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:56:14,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:56:14,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:56:16,166.166 INFO    ] ================================================
[2026-06-05 03:56:16,182.182 INFO    ] Launching Daemon at Fri Jun  5 03:56:16 IST 2026
[2026-06-05 03:56:16,193.193 INFO    ] ================================================
[2026-06-05 03:56:16,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:56:16
[2026-06-05 03:56:17,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:56:17,619.619 INFO    ] Initializing speech engine...
[2026-06-05 03:56:17,629.629 INFO    ] 2026-06-05 03:56:17
[2026-06-05 03:56:17,879.879 INFO    ] 2026-06-05 03:56:17
[2026-06-05 03:56:17,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:56:18,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:56:18,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:56:18,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:56:18,370.370 INFO    ] time= 05/06/2026 03:56:18
[2026-06-05 03:56:18,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:56:18,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:56:18,510.510 INFO    ] No existing commands found in stream
[2026-06-05 03:56:23,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:56:23,526.526 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 03:56:24,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:56:24,040.040 INFO    ] Checking for system updates...
[2026-06-05 03:56:24,079.079 INFO    ] 200
[2026-06-05 03:56:24,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:24,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:56:24,140.140 INFO    ] No update needed
[2026-06-05 03:56:24,143.143 INFO    ] Checking for camera pi updates...
[2026-06-05 03:56:24,179.179 INFO    ] 200
[2026-06-05 03:56:24,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:24,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:56:24,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:56:24,266.266 INFO    ] No camera update needed
[2026-06-05 03:56:24,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:56:24,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:56:24,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:56:24,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:56:26,321.321 INFO    ] ================================================
[2026-06-05 03:56:26,337.337 INFO    ] Launching Daemon at Fri Jun  5 03:56:26 IST 2026
[2026-06-05 03:56:26,348.348 INFO    ] ================================================
[2026-06-05 03:56:26,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:56:26
[2026-06-05 03:56:27,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:56:27,807.807 INFO    ] Initializing speech engine...
[2026-06-05 03:56:27,826.826 INFO    ] 2026-06-05 03:56:27
[2026-06-05 03:56:28,083.083 INFO    ] 2026-06-05 03:56:28
[2026-06-05 03:56:28,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:56:28,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:56:28,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:56:28,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:56:28,565.565 INFO    ] time= 05/06/2026 03:56:28
[2026-06-05 03:56:28,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:56:28,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:56:28,757.757 INFO    ] No existing commands found in stream
[2026-06-05 03:56:33,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:56:33,787.787 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 03:56:37,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:56:37,900.900 INFO    ] Checking for system updates...
[2026-06-05 03:56:37,938.938 INFO    ] 200
[2026-06-05 03:56:37,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:37,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:56:38,001.001 INFO    ] No update needed
[2026-06-05 03:56:38,006.006 INFO    ] Checking for camera pi updates...
[2026-06-05 03:56:38,054.054 INFO    ] 200
[2026-06-05 03:56:38,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:38,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:56:38,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:56:38,140.140 INFO    ] No camera update needed
[2026-06-05 03:56:38,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:56:38,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:56:38,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:56:38,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:56:40,195.195 INFO    ] ================================================
[2026-06-05 03:56:40,211.211 INFO    ] Launching Daemon at Fri Jun  5 03:56:40 IST 2026
[2026-06-05 03:56:40,222.222 INFO    ] ================================================
[2026-06-05 03:56:40,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:56:40
[2026-06-05 03:56:41,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:56:41,630.630 INFO    ] Initializing speech engine...
[2026-06-05 03:56:41,639.639 INFO    ] 2026-06-05 03:56:41
[2026-06-05 03:56:41,929.929 INFO    ] 2026-06-05 03:56:41
[2026-06-05 03:56:41,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:56:42,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:56:42,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:56:42,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:56:42,335.335 INFO    ] time= 05/06/2026 03:56:42
[2026-06-05 03:56:42,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:56:42,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:56:42,507.507 INFO    ] No existing commands found in stream
[2026-06-05 03:56:47,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:56:47,535.535 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 03:56:49,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:56:49,512.512 INFO    ] Checking for system updates...
[2026-06-05 03:56:49,551.551 INFO    ] 200
[2026-06-05 03:56:49,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:49,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:56:49,614.614 INFO    ] No update needed
[2026-06-05 03:56:49,616.616 INFO    ] Checking for camera pi updates...
[2026-06-05 03:56:49,650.650 INFO    ] 200
[2026-06-05 03:56:49,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:56:49,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:56:49,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:56:49,839.839 INFO    ] No camera update needed
[2026-06-05 03:56:49,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:56:49,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:56:49,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:56:49,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:56:51,896.896 INFO    ] ================================================
[2026-06-05 03:56:51,911.911 INFO    ] Launching Daemon at Fri Jun  5 03:56:51 IST 2026
[2026-06-05 03:56:51,922.922 INFO    ] ================================================
[2026-06-05 03:56:52,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:56:52
[2026-06-05 03:56:53,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:56:53,372.372 INFO    ] Initializing speech engine...
[2026-06-05 03:56:53,378.378 INFO    ] 2026-06-05 03:56:53
[2026-06-05 03:56:53,627.627 INFO    ] 2026-06-05 03:56:53
[2026-06-05 03:56:53,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:56:53,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:56:53,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:56:53,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:56:53,997.997 INFO    ] time= 05/06/2026 03:56:53
[2026-06-05 03:56:54,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:56:54,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:56:54,172.172 INFO    ] No existing commands found in stream
[2026-06-05 03:56:59,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:56:59,200.200 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 03:57:01,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:57:01,983.983 INFO    ] Checking for system updates...
[2026-06-05 03:57:02,028.028 INFO    ] 200
[2026-06-05 03:57:02,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:02,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:02,096.096 INFO    ] No update needed
[2026-06-05 03:57:02,100.100 INFO    ] Checking for camera pi updates...
[2026-06-05 03:57:02,142.142 INFO    ] 200
[2026-06-05 03:57:02,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:02,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:57:02,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:02,232.232 INFO    ] No camera update needed
[2026-06-05 03:57:02,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:57:02,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:57:02,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:57:02,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:57:04,292.292 INFO    ] ================================================
[2026-06-05 03:57:04,308.308 INFO    ] Launching Daemon at Fri Jun  5 03:57:04 IST 2026
[2026-06-05 03:57:04,319.319 INFO    ] ================================================
[2026-06-05 03:57:04,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:57:04
[2026-06-05 03:57:05,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:57:05,734.734 INFO    ] Initializing speech engine...
[2026-06-05 03:57:05,754.754 INFO    ] 2026-06-05 03:57:05
[2026-06-05 03:57:06,017.017 INFO    ] 2026-06-05 03:57:05
[2026-06-05 03:57:06,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:57:06,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:57:06,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:57:06,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:57:06,402.402 INFO    ] time= 05/06/2026 03:57:06
[2026-06-05 03:57:06,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:57:06,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:57:06,511.511 INFO    ] No existing commands found in stream
[2026-06-05 03:57:11,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:57:11,530.530 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 03:57:12,214.214 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:57:12,217.217 INFO    ] Checking for system updates...
[2026-06-05 03:57:12,255.255 INFO    ] 200
[2026-06-05 03:57:12,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:12,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:57:12,313.313 INFO    ] No update needed
[2026-06-05 03:57:12,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 03:57:12,349.349 INFO    ] 200
[2026-06-05 03:57:12,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:12,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:57:12,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:57:12,437.437 INFO    ] No camera update needed
[2026-06-05 03:57:12,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:57:12,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:57:12,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:57:12,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:57:14,492.492 INFO    ] ================================================
[2026-06-05 03:57:14,508.508 INFO    ] Launching Daemon at Fri Jun  5 03:57:14 IST 2026
[2026-06-05 03:57:14,519.519 INFO    ] ================================================
[2026-06-05 03:57:15,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:57:15
[2026-06-05 03:57:15,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:57:15,967.967 INFO    ] Initializing speech engine...
[2026-06-05 03:57:15,987.987 INFO    ] 2026-06-05 03:57:15
[2026-06-05 03:57:16,259.259 INFO    ] 2026-06-05 03:57:16
[2026-06-05 03:57:16,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:57:16,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:57:16,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:57:16,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:57:16,629.629 INFO    ] time= 05/06/2026 03:57:16
[2026-06-05 03:57:16,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:57:16,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:57:16,751.751 INFO    ] No existing commands found in stream
[2026-06-05 03:57:21,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:57:21,768.768 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 03:57:24,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:57:24,073.073 INFO    ] Checking for system updates...
[2026-06-05 03:57:24,114.114 INFO    ] 200
[2026-06-05 03:57:24,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:24,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:24,173.173 INFO    ] No update needed
[2026-06-05 03:57:24,175.175 INFO    ] Checking for camera pi updates...
[2026-06-05 03:57:24,211.211 INFO    ] 200
[2026-06-05 03:57:24,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:24,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:57:24,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:24,314.314 INFO    ] No camera update needed
[2026-06-05 03:57:24,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:57:24,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:57:24,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:57:24,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:57:26,372.372 INFO    ] ================================================
[2026-06-05 03:57:26,387.387 INFO    ] Launching Daemon at Fri Jun  5 03:57:26 IST 2026
[2026-06-05 03:57:26,398.398 INFO    ] ================================================
[2026-06-05 03:57:26,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:57:26
[2026-06-05 03:57:27,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:57:27,848.848 INFO    ] Initializing speech engine...
[2026-06-05 03:57:27,863.863 INFO    ] 2026-06-05 03:57:27
[2026-06-05 03:57:28,144.144 INFO    ] 2026-06-05 03:57:28
[2026-06-05 03:57:28,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:57:28,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:57:28,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:57:28,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:57:28,501.501 INFO    ] time= 05/06/2026 03:57:28
[2026-06-05 03:57:28,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:57:28,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:57:28,596.596 INFO    ] No existing commands found in stream
[2026-06-05 03:57:33,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:57:33,610.610 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 03:57:35,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:57:35,699.699 INFO    ] Checking for system updates...
[2026-06-05 03:57:35,738.738 INFO    ] 200
[2026-06-05 03:57:35,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:35,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:35,801.801 INFO    ] No update needed
[2026-06-05 03:57:35,804.804 INFO    ] Checking for camera pi updates...
[2026-06-05 03:57:35,837.837 INFO    ] 200
[2026-06-05 03:57:35,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:35,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:57:35,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:35,929.929 INFO    ] No camera update needed
[2026-06-05 03:57:35,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:57:35,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:57:35,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:57:35,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:57:37,986.986 INFO    ] ================================================
[2026-06-05 03:57:38,001.001 INFO    ] Launching Daemon at Fri Jun  5 03:57:37 IST 2026
[2026-06-05 03:57:38,011.011 INFO    ] ================================================
[2026-06-05 03:57:38,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:57:38
[2026-06-05 03:57:39,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:57:39,442.442 INFO    ] Initializing speech engine...
[2026-06-05 03:57:39,456.456 INFO    ] 2026-06-05 03:57:39
[2026-06-05 03:57:39,723.723 INFO    ] 2026-06-05 03:57:39
[2026-06-05 03:57:39,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:57:39,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:57:40,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:57:40,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:57:40,193.193 INFO    ] time= 05/06/2026 03:57:40
[2026-06-05 03:57:40,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:57:40,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:57:40,402.402 INFO    ] No existing commands found in stream
[2026-06-05 03:57:45,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:57:45,431.431 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 03:57:46,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:57:46,040.040 INFO    ] Checking for system updates...
[2026-06-05 03:57:46,079.079 INFO    ] 200
[2026-06-05 03:57:46,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:46,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:46,143.143 INFO    ] No update needed
[2026-06-05 03:57:46,145.145 INFO    ] Checking for camera pi updates...
[2026-06-05 03:57:46,179.179 INFO    ] 200
[2026-06-05 03:57:46,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:46,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:57:46,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:46,268.268 INFO    ] No camera update needed
[2026-06-05 03:57:46,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:57:46,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:57:46,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:57:46,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:57:48,323.323 INFO    ] ================================================
[2026-06-05 03:57:48,344.344 INFO    ] Launching Daemon at Fri Jun  5 03:57:48 IST 2026
[2026-06-05 03:57:48,355.355 INFO    ] ================================================
[2026-06-05 03:57:48,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:57:48
[2026-06-05 03:57:49,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:57:49,781.781 INFO    ] Initializing speech engine...
[2026-06-05 03:57:49,802.802 INFO    ] 2026-06-05 03:57:49
[2026-06-05 03:57:50,067.067 INFO    ] 2026-06-05 03:57:50
[2026-06-05 03:57:50,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:57:50,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:57:50,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:57:50,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:57:50,481.481 INFO    ] time= 05/06/2026 03:57:50
[2026-06-05 03:57:50,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:57:50,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:57:50,563.563 INFO    ] No existing commands found in stream
[2026-06-05 03:57:55,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:57:55,579.579 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 03:57:56,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:57:56,373.373 INFO    ] Checking for system updates...
[2026-06-05 03:57:56,413.413 INFO    ] 200
[2026-06-05 03:57:56,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:56,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:56,471.471 INFO    ] No update needed
[2026-06-05 03:57:56,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 03:57:56,508.508 INFO    ] 200
[2026-06-05 03:57:56,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:57:56,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:57:56,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:57:56,600.600 INFO    ] No camera update needed
[2026-06-05 03:57:56,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:57:56,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:57:56,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:57:56,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:57:58,656.656 INFO    ] ================================================
[2026-06-05 03:57:58,671.671 INFO    ] Launching Daemon at Fri Jun  5 03:57:58 IST 2026
[2026-06-05 03:57:58,682.682 INFO    ] ================================================
[2026-06-05 03:57:59,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:57:59
[2026-06-05 03:58:00,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:58:00,305.305 INFO    ] Initializing speech engine...
[2026-06-05 03:58:00,323.323 INFO    ] 2026-06-05 03:58:00
[2026-06-05 03:58:00,593.593 INFO    ] 2026-06-05 03:58:00
[2026-06-05 03:58:00,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:58:00,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:58:00,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:58:01,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:58:01,063.063 INFO    ] time= 05/06/2026 03:58:01
[2026-06-05 03:58:01,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:58:01,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:58:01,208.208 INFO    ] No existing commands found in stream
[2026-06-05 03:58:06,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:58:06,221.221 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 03:58:09,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 03:58:09,499.499 INFO    ] Checking for system updates...
[2026-06-05 03:58:09,539.539 INFO    ] 200
[2026-06-05 03:58:09,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:09,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:58:09,600.600 INFO    ] No update needed
[2026-06-05 03:58:09,604.604 INFO    ] Checking for camera pi updates...
[2026-06-05 03:58:09,647.647 INFO    ] 200
[2026-06-05 03:58:09,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:09,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:58:09,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:58:09,739.739 INFO    ] No camera update needed
[2026-06-05 03:58:09,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:58:09,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:58:09,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:58:09,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:58:11,795.795 INFO    ] ================================================
[2026-06-05 03:58:11,810.810 INFO    ] Launching Daemon at Fri Jun  5 03:58:11 IST 2026
[2026-06-05 03:58:11,821.821 INFO    ] ================================================
[2026-06-05 03:58:12,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:58:12
[2026-06-05 03:58:12,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:58:13,226.226 INFO    ] Initializing speech engine...
[2026-06-05 03:58:13,239.239 INFO    ] 2026-06-05 03:58:13
[2026-06-05 03:58:13,504.504 INFO    ] 2026-06-05 03:58:13
[2026-06-05 03:58:13,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:58:13,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:58:13,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:58:13,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:58:13,982.982 INFO    ] time= 05/06/2026 03:58:13
[2026-06-05 03:58:14,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:58:14,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:58:14,129.129 INFO    ] No existing commands found in stream
[2026-06-05 03:58:19,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:58:19,149.149 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 03:58:22,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:58:22,220.220 INFO    ] Checking for system updates...
[2026-06-05 03:58:22,262.262 INFO    ] 200
[2026-06-05 03:58:22,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:22,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:58:22,323.323 INFO    ] No update needed
[2026-06-05 03:58:22,326.326 INFO    ] Checking for camera pi updates...
[2026-06-05 03:58:22,361.361 INFO    ] 200
[2026-06-05 03:58:22,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:22,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:58:22,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:58:22,453.453 INFO    ] No camera update needed
[2026-06-05 03:58:22,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:58:22,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:58:22,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:58:22,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:58:24,515.515 INFO    ] ================================================
[2026-06-05 03:58:24,531.531 INFO    ] Launching Daemon at Fri Jun  5 03:58:24 IST 2026
[2026-06-05 03:58:24,542.542 INFO    ] ================================================
[2026-06-05 03:58:25,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:58:25
[2026-06-05 03:58:25,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:58:26,144.144 INFO    ] Initializing speech engine...
[2026-06-05 03:58:26,158.158 INFO    ] 2026-06-05 03:58:26
[2026-06-05 03:58:26,436.436 INFO    ] 2026-06-05 03:58:26
[2026-06-05 03:58:26,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:58:26,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:58:26,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:58:26,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:58:26,938.938 INFO    ] time= 05/06/2026 03:58:26
[2026-06-05 03:58:26,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:58:27,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:58:27,147.147 INFO    ] No existing commands found in stream
[2026-06-05 03:58:32,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:58:32,178.178 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 03:58:34,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:58:34,020.020 INFO    ] Checking for system updates...
[2026-06-05 03:58:34,058.058 INFO    ] 200
[2026-06-05 03:58:34,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:34,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:58:34,126.126 INFO    ] No update needed
[2026-06-05 03:58:34,129.129 INFO    ] Checking for camera pi updates...
[2026-06-05 03:58:34,165.165 INFO    ] 200
[2026-06-05 03:58:34,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:34,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:58:34,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:58:34,264.264 INFO    ] No camera update needed
[2026-06-05 03:58:34,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:58:34,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:58:34,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:58:34,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:58:36,325.325 INFO    ] ================================================
[2026-06-05 03:58:36,342.342 INFO    ] Launching Daemon at Fri Jun  5 03:58:36 IST 2026
[2026-06-05 03:58:36,354.354 INFO    ] ================================================
[2026-06-05 03:58:37,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:58:37
[2026-06-05 03:58:37,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:58:38,010.010 INFO    ] Initializing speech engine...
[2026-06-05 03:58:38,021.021 INFO    ] 2026-06-05 03:58:38
[2026-06-05 03:58:38,330.330 INFO    ] 2026-06-05 03:58:38
[2026-06-05 03:58:38,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:58:38,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:58:38,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:58:38,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:58:38,784.784 INFO    ] time= 05/06/2026 03:58:38
[2026-06-05 03:58:38,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:58:38,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:58:39,001.001 INFO    ] No existing commands found in stream
[2026-06-05 03:58:44,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:58:44,024.024 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 03:58:45,675.675 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 03:58:45,678.678 INFO    ] Checking for system updates...
[2026-06-05 03:58:45,719.719 INFO    ] 200
[2026-06-05 03:58:45,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:45,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:58:45,785.785 INFO    ] No update needed
[2026-06-05 03:58:45,788.788 INFO    ] Checking for camera pi updates...
[2026-06-05 03:58:45,827.827 INFO    ] 200
[2026-06-05 03:58:45,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:45,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:58:45,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:58:45,926.926 INFO    ] No camera update needed
[2026-06-05 03:58:45,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:58:45,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:58:45,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:58:45,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:58:47,986.986 INFO    ] ================================================
[2026-06-05 03:58:48,001.001 INFO    ] Launching Daemon at Fri Jun  5 03:58:47 IST 2026
[2026-06-05 03:58:48,012.012 INFO    ] ================================================
[2026-06-05 03:58:48,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:58:48
[2026-06-05 03:58:49,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:58:49,444.444 INFO    ] Initializing speech engine...
[2026-06-05 03:58:49,458.458 INFO    ] 2026-06-05 03:58:49
[2026-06-05 03:58:49,726.726 INFO    ] 2026-06-05 03:58:49
[2026-06-05 03:58:49,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:58:50,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:58:50,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:58:50,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:58:50,196.196 INFO    ] time= 05/06/2026 03:58:50
[2026-06-05 03:58:50,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:58:50,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:58:50,364.364 INFO    ] No existing commands found in stream
[2026-06-05 03:58:55,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:58:55,379.379 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 03:58:56,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:58:56,337.337 INFO    ] Checking for system updates...
[2026-06-05 03:58:56,373.373 INFO    ] 200
[2026-06-05 03:58:56,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:56,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:58:56,441.441 INFO    ] No update needed
[2026-06-05 03:58:56,443.443 INFO    ] Checking for camera pi updates...
[2026-06-05 03:58:56,477.477 INFO    ] 200
[2026-06-05 03:58:56,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:58:56,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:58:56,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:58:56,665.665 INFO    ] No camera update needed
[2026-06-05 03:58:56,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:58:56,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:58:56,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:58:56,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:58:58,722.722 INFO    ] ================================================
[2026-06-05 03:58:58,737.737 INFO    ] Launching Daemon at Fri Jun  5 03:58:58 IST 2026
[2026-06-05 03:58:58,748.748 INFO    ] ================================================
[2026-06-05 03:58:59,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:58:59
[2026-06-05 03:59:00,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:59:00,379.379 INFO    ] Initializing speech engine...
[2026-06-05 03:59:00,387.387 INFO    ] 2026-06-05 03:59:00
[2026-06-05 03:59:00,673.673 INFO    ] 2026-06-05 03:59:00
[2026-06-05 03:59:00,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:59:00,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:59:00,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:59:01,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:59:01,118.118 INFO    ] time= 05/06/2026 03:59:01
[2026-06-05 03:59:01,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:59:01,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:59:01,208.208 INFO    ] No existing commands found in stream
[2026-06-05 03:59:06,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:59:06,222.222 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 03:59:08,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 03:59:08,468.468 INFO    ] Checking for system updates...
[2026-06-05 03:59:08,508.508 INFO    ] 200
[2026-06-05 03:59:08,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:59:08,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:59:08,572.572 INFO    ] No update needed
[2026-06-05 03:59:08,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 03:59:08,610.610 INFO    ] 200
[2026-06-05 03:59:08,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:59:08,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:59:08,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:59:08,698.698 INFO    ] No camera update needed
[2026-06-05 03:59:08,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:59:08,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:59:08,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:59:08,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:59:10,756.756 INFO    ] ================================================
[2026-06-05 03:59:10,771.771 INFO    ] Launching Daemon at Fri Jun  5 03:59:10 IST 2026
[2026-06-05 03:59:10,782.782 INFO    ] ================================================
[2026-06-05 03:59:11,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:59:11
[2026-06-05 03:59:11,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:59:12,190.190 INFO    ] Initializing speech engine...
[2026-06-05 03:59:12,205.205 INFO    ] 2026-06-05 03:59:12
[2026-06-05 03:59:12,484.484 INFO    ] 2026-06-05 03:59:12
[2026-06-05 03:59:12,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:59:12,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:59:12,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:59:12,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:59:12,895.895 INFO    ] time= 05/06/2026 03:59:12
[2026-06-05 03:59:12,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:59:12,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:59:12,978.978 INFO    ] No existing commands found in stream
[2026-06-05 03:59:17,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:59:17,993.993 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 03:59:19,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 03:59:19,697.697 INFO    ] Checking for system updates...
[2026-06-05 03:59:19,737.737 INFO    ] 200
[2026-06-05 03:59:19,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:59:19,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:59:19,800.800 INFO    ] No update needed
[2026-06-05 03:59:19,803.803 INFO    ] Checking for camera pi updates...
[2026-06-05 03:59:19,838.838 INFO    ] 200
[2026-06-05 03:59:19,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:59:19,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:59:19,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:59:19,938.938 INFO    ] No camera update needed
[2026-06-05 03:59:19,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:59:19,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:59:19,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:59:19,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:59:22,997.997 INFO    ] ================================================
[2026-06-05 03:59:22,012.012 INFO    ] Launching Daemon at Fri Jun  5 03:59:22 IST 2026
[2026-06-05 03:59:22,023.023 INFO    ] ================================================
[2026-06-05 03:59:22,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:59:22
[2026-06-05 03:59:23,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:59:23,440.440 INFO    ] Initializing speech engine...
[2026-06-05 03:59:23,452.452 INFO    ] 2026-06-05 03:59:23
[2026-06-05 03:59:23,701.701 INFO    ] 2026-06-05 03:59:23
[2026-06-05 03:59:23,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:59:23,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:59:23,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:59:24,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:59:24,079.079 INFO    ] time= 05/06/2026 03:59:24
[2026-06-05 03:59:24,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:59:24,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:59:24,202.202 INFO    ] No existing commands found in stream
[2026-06-05 03:59:29,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:59:29,218.218 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 03:59:33,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 03:59:33,462.462 INFO    ] Checking for system updates...
[2026-06-05 03:59:33,502.502 INFO    ] 200
[2026-06-05 03:59:33,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:59:33,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:59:33,563.563 INFO    ] No update needed
[2026-06-05 03:59:33,566.566 INFO    ] Checking for camera pi updates...
[2026-06-05 03:59:33,601.601 INFO    ] 200
[2026-06-05 03:59:33,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:59:33,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:59:33,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 03:59:33,692.692 INFO    ] No camera update needed
[2026-06-05 03:59:33,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:59:33,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:59:33,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:59:33,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:59:35,748.748 INFO    ] ================================================
[2026-06-05 03:59:35,763.763 INFO    ] Launching Daemon at Fri Jun  5 03:59:35 IST 2026
[2026-06-05 03:59:35,774.774 INFO    ] ================================================
[2026-06-05 03:59:36,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:59:36
[2026-06-05 03:59:37,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:59:37,387.387 INFO    ] Initializing speech engine...
[2026-06-05 03:59:37,395.395 INFO    ] 2026-06-05 03:59:37
[2026-06-05 03:59:37,668.668 INFO    ] 2026-06-05 03:59:37
[2026-06-05 03:59:37,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:59:37,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:59:37,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:59:38,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:59:38,234.234 INFO    ] time= 05/06/2026 03:59:38
[2026-06-05 03:59:38,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:59:38,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:59:38,382.382 INFO    ] No existing commands found in stream
[2026-06-05 03:59:43,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:59:43,415.415 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 03:59:47,216.216 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 03:59:47,219.219 INFO    ] Checking for system updates...
[2026-06-05 03:59:47,256.256 INFO    ] 200
[2026-06-05 03:59:47,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:59:47,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:59:47,316.316 INFO    ] No update needed
[2026-06-05 03:59:47,318.318 INFO    ] Checking for camera pi updates...
[2026-06-05 03:59:47,352.352 INFO    ] 200
[2026-06-05 03:59:47,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 03:59:47,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 03:59:47,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 03:59:47,448.448 INFO    ] No camera update needed
[2026-06-05 03:59:47,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 03:59:47,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 03:59:47,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 03:59:47,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 03:59:49,504.504 INFO    ] ================================================
[2026-06-05 03:59:49,519.519 INFO    ] Launching Daemon at Fri Jun  5 03:59:49 IST 2026
[2026-06-05 03:59:49,531.531 INFO    ] ================================================
[2026-06-05 03:59:50,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 03:59:50
[2026-06-05 03:59:50,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 03:59:51,138.138 INFO    ] Initializing speech engine...
[2026-06-05 03:59:51,148.148 INFO    ] 2026-06-05 03:59:51
[2026-06-05 03:59:51,433.433 INFO    ] 2026-06-05 03:59:51
[2026-06-05 03:59:51,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 03:59:51,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 03:59:51,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 03:59:51,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 03:59:51,898.898 INFO    ] time= 05/06/2026 03:59:51
[2026-06-05 03:59:51,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 03:59:51,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 03:59:52,049.049 INFO    ] No existing commands found in stream
[2026-06-05 03:59:57,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 03:59:57,078.078 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 04:00:00,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:00:00,529.529 INFO    ] Checking for system updates...
[2026-06-05 04:00:00,566.566 INFO    ] 200
[2026-06-05 04:00:00,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:00,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:00:00,624.624 INFO    ] No update needed
[2026-06-05 04:00:00,627.627 INFO    ] Checking for camera pi updates...
[2026-06-05 04:00:00,661.661 INFO    ] 200
[2026-06-05 04:00:00,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:00,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:00:00,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:00:00,749.749 INFO    ] No camera update needed
[2026-06-05 04:00:00,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:00:00,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:00:00,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:00:00,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:00:03,938.938 INFO    ] ================================================
[2026-06-05 04:00:03,120.120 INFO    ] Launching Daemon at Fri Jun  5 04:00:03 IST 2026
[2026-06-05 04:00:03,228.228 INFO    ] ================================================
[2026-06-05 04:00:05,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:00:05
[2026-06-05 04:00:06,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:00:07,102.102 INFO    ] Initializing speech engine...
[2026-06-05 04:00:07,112.112 INFO    ] 2026-06-05 04:00:07
[2026-06-05 04:00:07,381.381 INFO    ] 2026-06-05 04:00:07
[2026-06-05 04:00:07,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:00:07,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:00:07,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:00:07,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:00:07,792.792 INFO    ] time= 05/06/2026 04:00:07
[2026-06-05 04:00:07,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:00:07,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:00:07,966.966 INFO    ] No existing commands found in stream
[2026-06-05 04:00:12,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:00:13,000.000 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 04:00:14,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:00:14,153.153 INFO    ] Checking for system updates...
[2026-06-05 04:00:14,188.188 INFO    ] 200
[2026-06-05 04:00:14,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:14,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:00:14,246.246 INFO    ] No update needed
[2026-06-05 04:00:14,249.249 INFO    ] Checking for camera pi updates...
[2026-06-05 04:00:14,283.283 INFO    ] 200
[2026-06-05 04:00:14,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:14,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:00:14,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:00:14,359.359 INFO    ] No camera update needed
[2026-06-05 04:00:14,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:00:14,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:00:14,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:00:14,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:00:16,416.416 INFO    ] ================================================
[2026-06-05 04:00:16,431.431 INFO    ] Launching Daemon at Fri Jun  5 04:00:16 IST 2026
[2026-06-05 04:00:16,442.442 INFO    ] ================================================
[2026-06-05 04:00:17,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:00:17
[2026-06-05 04:00:17,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:00:18,019.019 INFO    ] Initializing speech engine...
[2026-06-05 04:00:18,028.028 INFO    ] 2026-06-05 04:00:18
[2026-06-05 04:00:18,302.302 INFO    ] 2026-06-05 04:00:18
[2026-06-05 04:00:18,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:00:18,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:00:18,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:00:18,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:00:18,767.767 INFO    ] time= 05/06/2026 04:00:18
[2026-06-05 04:00:18,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:00:18,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:00:18,923.923 INFO    ] No existing commands found in stream
[2026-06-05 04:00:23,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:00:23,959.959 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 04:00:26,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:00:26,129.129 INFO    ] Checking for system updates...
[2026-06-05 04:00:26,166.166 INFO    ] 200
[2026-06-05 04:00:26,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:26,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:00:26,230.230 INFO    ] No update needed
[2026-06-05 04:00:26,233.233 INFO    ] Checking for camera pi updates...
[2026-06-05 04:00:26,268.268 INFO    ] 200
[2026-06-05 04:00:26,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:26,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:00:26,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:00:26,358.358 INFO    ] No camera update needed
[2026-06-05 04:00:26,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:00:26,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:00:26,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:00:26,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:00:28,416.416 INFO    ] ================================================
[2026-06-05 04:00:28,431.431 INFO    ] Launching Daemon at Fri Jun  5 04:00:28 IST 2026
[2026-06-05 04:00:28,442.442 INFO    ] ================================================
[2026-06-05 04:00:29,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:00:29
[2026-06-05 04:00:29,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:00:29,876.876 INFO    ] Initializing speech engine...
[2026-06-05 04:00:29,900.900 INFO    ] 2026-06-05 04:00:29
[2026-06-05 04:00:30,168.168 INFO    ] 2026-06-05 04:00:30
[2026-06-05 04:00:30,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:00:30,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:00:30,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:00:30,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:00:30,539.539 INFO    ] time= 05/06/2026 04:00:30
[2026-06-05 04:00:30,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:00:30,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:00:30,661.661 INFO    ] No existing commands found in stream
[2026-06-05 04:00:35,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:00:35,673.673 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 04:00:39,087.087 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:00:39,090.090 INFO    ] Checking for system updates...
[2026-06-05 04:00:39,126.126 INFO    ] 200
[2026-06-05 04:00:39,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:39,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:00:39,213.213 INFO    ] No update needed
[2026-06-05 04:00:39,215.215 INFO    ] Checking for camera pi updates...
[2026-06-05 04:00:39,250.250 INFO    ] 200
[2026-06-05 04:00:39,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:39,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:00:39,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:00:39,341.341 INFO    ] No camera update needed
[2026-06-05 04:00:39,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:00:39,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:00:39,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:00:39,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:00:41,411.411 INFO    ] ================================================
[2026-06-05 04:00:41,426.426 INFO    ] Launching Daemon at Fri Jun  5 04:00:41 IST 2026
[2026-06-05 04:00:41,437.437 INFO    ] ================================================
[2026-06-05 04:00:42,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:00:42
[2026-06-05 04:00:42,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:00:42,846.846 INFO    ] Initializing speech engine...
[2026-06-05 04:00:42,859.859 INFO    ] 2026-06-05 04:00:42
[2026-06-05 04:00:43,126.126 INFO    ] 2026-06-05 04:00:43
[2026-06-05 04:00:43,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:00:43,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:00:43,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:00:43,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:00:43,617.617 INFO    ] time= 05/06/2026 04:00:43
[2026-06-05 04:00:43,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:00:43,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:00:43,759.759 INFO    ] No existing commands found in stream
[2026-06-05 04:00:48,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:00:48,773.773 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-05 04:00:53,191.191 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:00:53,193.193 INFO    ] Checking for system updates...
[2026-06-05 04:00:53,229.229 INFO    ] 200
[2026-06-05 04:00:53,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:53,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:00:53,291.291 INFO    ] No update needed
[2026-06-05 04:00:53,293.293 INFO    ] Checking for camera pi updates...
[2026-06-05 04:00:53,329.329 INFO    ] 200
[2026-06-05 04:00:53,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:00:53,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:00:53,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:00:53,429.429 INFO    ] No camera update needed
[2026-06-05 04:00:53,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:00:53,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:00:53,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:00:53,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:00:55,485.485 INFO    ] ================================================
[2026-06-05 04:00:55,501.501 INFO    ] Launching Daemon at Fri Jun  5 04:00:55 IST 2026
[2026-06-05 04:00:55,512.512 INFO    ] ================================================
[2026-06-05 04:00:56,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:00:56
[2026-06-05 04:00:56,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:00:56,959.959 INFO    ] Initializing speech engine...
[2026-06-05 04:00:56,970.970 INFO    ] 2026-06-05 04:00:56
[2026-06-05 04:00:57,240.240 INFO    ] 2026-06-05 04:00:57
[2026-06-05 04:00:57,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:00:57,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:00:57,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:00:57,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:00:57,704.704 INFO    ] time= 05/06/2026 04:00:57
[2026-06-05 04:00:57,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:00:57,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:00:57,798.798 INFO    ] No existing commands found in stream
[2026-06-05 04:01:02,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:01:02,812.812 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 04:01:04,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:01:04,749.749 INFO    ] Checking for system updates...
[2026-06-05 04:01:04,785.785 INFO    ] 200
[2026-06-05 04:01:04,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:04,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:01:04,847.847 INFO    ] No update needed
[2026-06-05 04:01:04,849.849 INFO    ] Checking for camera pi updates...
[2026-06-05 04:01:04,883.883 INFO    ] 200
[2026-06-05 04:01:04,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:04,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:01:04,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:01:04,960.960 INFO    ] No camera update needed
[2026-06-05 04:01:04,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:01:04,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:01:04,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:01:04,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:01:07,016.016 INFO    ] ================================================
[2026-06-05 04:01:07,032.032 INFO    ] Launching Daemon at Fri Jun  5 04:01:07 IST 2026
[2026-06-05 04:01:07,043.043 INFO    ] ================================================
[2026-06-05 04:01:07,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:01:07
[2026-06-05 04:01:08,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:01:08,450.450 INFO    ] Initializing speech engine...
[2026-06-05 04:01:08,457.457 INFO    ] 2026-06-05 04:01:08
[2026-06-05 04:01:08,750.750 INFO    ] 2026-06-05 04:01:08
[2026-06-05 04:01:08,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:01:08,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:01:08,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:01:09,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:01:09,166.166 INFO    ] time= 05/06/2026 04:01:09
[2026-06-05 04:01:09,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:01:09,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:01:09,250.250 INFO    ] No existing commands found in stream
[2026-06-05 04:01:14,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:01:14,271.271 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 04:01:14,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:01:14,751.751 INFO    ] Checking for system updates...
[2026-06-05 04:01:14,791.791 INFO    ] 200
[2026-06-05 04:01:14,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:14,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:01:14,849.849 INFO    ] No update needed
[2026-06-05 04:01:14,852.852 INFO    ] Checking for camera pi updates...
[2026-06-05 04:01:14,885.885 INFO    ] 200
[2026-06-05 04:01:14,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:14,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:01:14,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:01:14,976.976 INFO    ] No camera update needed
[2026-06-05 04:01:14,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:01:14,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:01:14,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:01:14,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:01:17,031.031 INFO    ] ================================================
[2026-06-05 04:01:17,047.047 INFO    ] Launching Daemon at Fri Jun  5 04:01:17 IST 2026
[2026-06-05 04:01:17,058.058 INFO    ] ================================================
[2026-06-05 04:01:17,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:01:17
[2026-06-05 04:01:18,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:01:18,497.497 INFO    ] Initializing speech engine...
[2026-06-05 04:01:18,506.506 INFO    ] 2026-06-05 04:01:18
[2026-06-05 04:01:18,770.770 INFO    ] 2026-06-05 04:01:18
[2026-06-05 04:01:18,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:01:18,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:01:19,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:01:19,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:01:19,241.241 INFO    ] time= 05/06/2026 04:01:19
[2026-06-05 04:01:19,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:01:19,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:01:19,403.403 INFO    ] No existing commands found in stream
[2026-06-05 04:01:24,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:01:24,440.440 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 04:01:26,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:01:26,613.613 INFO    ] Checking for system updates...
[2026-06-05 04:01:26,649.649 INFO    ] 200
[2026-06-05 04:01:26,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:26,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:01:26,717.717 INFO    ] No update needed
[2026-06-05 04:01:26,720.720 INFO    ] Checking for camera pi updates...
[2026-06-05 04:01:26,753.753 INFO    ] 200
[2026-06-05 04:01:26,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:26,797.797 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:01:26,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:01:26,849.849 INFO    ] No camera update needed
[2026-06-05 04:01:26,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:01:26,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:01:26,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:01:26,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:01:28,907.907 INFO    ] ================================================
[2026-06-05 04:01:28,922.922 INFO    ] Launching Daemon at Fri Jun  5 04:01:28 IST 2026
[2026-06-05 04:01:28,932.932 INFO    ] ================================================
[2026-06-05 04:01:29,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:01:29
[2026-06-05 04:01:30,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:01:30,336.336 INFO    ] Initializing speech engine...
[2026-06-05 04:01:30,351.351 INFO    ] 2026-06-05 04:01:30
[2026-06-05 04:01:30,607.607 INFO    ] 2026-06-05 04:01:30
[2026-06-05 04:01:30,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:01:30,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:01:30,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:01:31,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:01:31,081.081 INFO    ] time= 05/06/2026 04:01:31
[2026-06-05 04:01:31,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:01:31,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:01:31,314.314 INFO    ] No existing commands found in stream
[2026-06-05 04:01:36,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:01:36,344.344 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 04:01:39,935.935 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:01:39,938.938 INFO    ] Checking for system updates...
[2026-06-05 04:01:39,974.974 INFO    ] 200
[2026-06-05 04:01:39,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:40,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:01:40,036.036 INFO    ] No update needed
[2026-06-05 04:01:40,038.038 INFO    ] Checking for camera pi updates...
[2026-06-05 04:01:40,076.076 INFO    ] 200
[2026-06-05 04:01:40,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:40,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:01:40,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:01:40,159.159 INFO    ] No camera update needed
[2026-06-05 04:01:40,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:01:40,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:01:40,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:01:40,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:01:42,215.215 INFO    ] ================================================
[2026-06-05 04:01:42,231.231 INFO    ] Launching Daemon at Fri Jun  5 04:01:42 IST 2026
[2026-06-05 04:01:42,244.244 INFO    ] ================================================
[2026-06-05 04:01:42,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:01:42
[2026-06-05 04:01:43,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:01:43,828.828 INFO    ] Initializing speech engine...
[2026-06-05 04:01:43,836.836 INFO    ] 2026-06-05 04:01:43
[2026-06-05 04:01:44,116.116 INFO    ] 2026-06-05 04:01:44
[2026-06-05 04:01:44,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:01:44,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:01:44,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:01:44,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:01:44,569.569 INFO    ] time= 05/06/2026 04:01:44
[2026-06-05 04:01:44,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:01:44,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:01:44,726.726 INFO    ] No existing commands found in stream
[2026-06-05 04:01:49,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:01:49,762.762 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 04:01:51,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:01:51,377.377 INFO    ] Checking for system updates...
[2026-06-05 04:01:51,414.414 INFO    ] 200
[2026-06-05 04:01:51,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:51,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:01:51,474.474 INFO    ] No update needed
[2026-06-05 04:01:51,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 04:01:51,512.512 INFO    ] 200
[2026-06-05 04:01:51,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:01:51,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:01:51,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:01:51,608.608 INFO    ] No camera update needed
[2026-06-05 04:01:51,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:01:51,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:01:51,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:01:51,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:01:53,667.667 INFO    ] ================================================
[2026-06-05 04:01:53,683.683 INFO    ] Launching Daemon at Fri Jun  5 04:01:53 IST 2026
[2026-06-05 04:01:53,694.694 INFO    ] ================================================
[2026-06-05 04:01:54,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:01:54
[2026-06-05 04:01:54,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:01:55,109.109 INFO    ] Initializing speech engine...
[2026-06-05 04:01:55,132.132 INFO    ] 2026-06-05 04:01:55
[2026-06-05 04:01:55,388.388 INFO    ] 2026-06-05 04:01:55
[2026-06-05 04:01:55,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:01:55,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:01:55,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:01:55,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:01:55,766.766 INFO    ] time= 05/06/2026 04:01:55
[2026-06-05 04:01:55,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:01:55,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:01:55,957.957 INFO    ] No existing commands found in stream
[2026-06-05 04:02:00,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:02:00,984.984 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 04:02:04,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:02:04,842.842 INFO    ] Checking for system updates...
[2026-06-05 04:02:04,882.882 INFO    ] 200
[2026-06-05 04:02:04,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:04,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:02:04,947.947 INFO    ] No update needed
[2026-06-05 04:02:04,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 04:02:04,983.983 INFO    ] 200
[2026-06-05 04:02:04,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:05,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:02:05,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:02:05,057.057 INFO    ] No camera update needed
[2026-06-05 04:02:05,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:02:05,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:02:05,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:02:05,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:02:07,114.114 INFO    ] ================================================
[2026-06-05 04:02:07,130.130 INFO    ] Launching Daemon at Fri Jun  5 04:02:07 IST 2026
[2026-06-05 04:02:07,141.141 INFO    ] ================================================
[2026-06-05 04:02:07,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:02:07
[2026-06-05 04:02:08,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:02:08,621.621 INFO    ] Initializing speech engine...
[2026-06-05 04:02:08,628.628 INFO    ] 2026-06-05 04:02:08
[2026-06-05 04:02:08,913.913 INFO    ] 2026-06-05 04:02:08
[2026-06-05 04:02:08,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:02:09,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:02:09,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:02:09,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:02:09,281.281 INFO    ] time= 05/06/2026 04:02:09
[2026-06-05 04:02:09,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:02:09,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:02:09,364.364 INFO    ] No existing commands found in stream
[2026-06-05 04:02:14,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:02:14,402.402 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 04:02:15,710.710 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:02:15,712.712 INFO    ] Checking for system updates...
[2026-06-05 04:02:15,749.749 INFO    ] 200
[2026-06-05 04:02:15,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:15,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:02:15,810.810 INFO    ] No update needed
[2026-06-05 04:02:15,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 04:02:15,850.850 INFO    ] 200
[2026-06-05 04:02:15,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:15,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:02:15,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:02:15,953.953 INFO    ] No camera update needed
[2026-06-05 04:02:15,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:02:15,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:02:15,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:02:15,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:02:18,011.011 INFO    ] ================================================
[2026-06-05 04:02:18,027.027 INFO    ] Launching Daemon at Fri Jun  5 04:02:18 IST 2026
[2026-06-05 04:02:18,037.037 INFO    ] ================================================
[2026-06-05 04:02:18,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:02:18
[2026-06-05 04:02:19,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:02:19,499.499 INFO    ] Initializing speech engine...
[2026-06-05 04:02:19,517.517 INFO    ] 2026-06-05 04:02:19
[2026-06-05 04:02:19,794.794 INFO    ] 2026-06-05 04:02:19
[2026-06-05 04:02:19,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:02:19,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:02:19,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:02:20,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:02:20,151.151 INFO    ] time= 05/06/2026 04:02:20
[2026-06-05 04:02:20,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:02:20,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:02:20,226.226 INFO    ] No existing commands found in stream
[2026-06-05 04:02:25,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:02:25,240.240 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 04:02:28,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:02:28,880.880 INFO    ] Checking for system updates...
[2026-06-05 04:02:28,916.916 INFO    ] 200
[2026-06-05 04:02:28,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:28,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:02:28,974.974 INFO    ] No update needed
[2026-06-05 04:02:28,976.976 INFO    ] Checking for camera pi updates...
[2026-06-05 04:02:29,010.010 INFO    ] 200
[2026-06-05 04:02:29,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:29,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:02:29,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:02:29,095.095 INFO    ] No camera update needed
[2026-06-05 04:02:29,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:02:29,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:02:29,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:02:29,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:02:31,150.150 INFO    ] ================================================
[2026-06-05 04:02:31,165.165 INFO    ] Launching Daemon at Fri Jun  5 04:02:31 IST 2026
[2026-06-05 04:02:31,176.176 INFO    ] ================================================
[2026-06-05 04:02:31,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:02:31
[2026-06-05 04:02:32,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:02:32,811.811 INFO    ] Initializing speech engine...
[2026-06-05 04:02:32,817.817 INFO    ] 2026-06-05 04:02:32
[2026-06-05 04:02:33,080.080 INFO    ] 2026-06-05 04:02:33
[2026-06-05 04:02:33,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:02:33,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:02:33,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:02:33,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:02:33,541.541 INFO    ] time= 05/06/2026 04:02:33
[2026-06-05 04:02:33,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:02:33,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:02:33,690.690 INFO    ] No existing commands found in stream
[2026-06-05 04:02:38,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:02:38,704.704 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 04:02:41,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:02:41,802.802 INFO    ] Checking for system updates...
[2026-06-05 04:02:41,844.844 INFO    ] 200
[2026-06-05 04:02:41,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:41,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:02:41,912.912 INFO    ] No update needed
[2026-06-05 04:02:41,914.914 INFO    ] Checking for camera pi updates...
[2026-06-05 04:02:41,955.955 INFO    ] 200
[2026-06-05 04:02:41,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:42,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:02:42,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:02:42,048.048 INFO    ] No camera update needed
[2026-06-05 04:02:42,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:02:42,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:02:42,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:02:42,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:02:44,110.110 INFO    ] ================================================
[2026-06-05 04:02:44,126.126 INFO    ] Launching Daemon at Fri Jun  5 04:02:44 IST 2026
[2026-06-05 04:02:44,137.137 INFO    ] ================================================
[2026-06-05 04:02:44,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:02:44
[2026-06-05 04:02:45,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:02:45,543.543 INFO    ] Initializing speech engine...
[2026-06-05 04:02:45,558.558 INFO    ] 2026-06-05 04:02:45
[2026-06-05 04:02:45,825.825 INFO    ] 2026-06-05 04:02:45
[2026-06-05 04:02:45,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:02:46,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:02:46,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:02:46,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:02:46,202.202 INFO    ] time= 05/06/2026 04:02:46
[2026-06-05 04:02:46,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:02:46,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:02:46,370.370 INFO    ] No existing commands found in stream
[2026-06-05 04:02:51,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:02:51,393.393 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 04:02:53,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:02:53,954.954 INFO    ] Checking for system updates...
[2026-06-05 04:02:53,990.990 INFO    ] 200
[2026-06-05 04:02:53,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:54,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:02:54,055.055 INFO    ] No update needed
[2026-06-05 04:02:54,057.057 INFO    ] Checking for camera pi updates...
[2026-06-05 04:02:54,095.095 INFO    ] 200
[2026-06-05 04:02:54,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:02:54,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:02:54,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:02:54,188.188 INFO    ] No camera update needed
[2026-06-05 04:02:54,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:02:54,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:02:54,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:02:54,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:02:56,246.246 INFO    ] ================================================
[2026-06-05 04:02:56,261.261 INFO    ] Launching Daemon at Fri Jun  5 04:02:56 IST 2026
[2026-06-05 04:02:56,272.272 INFO    ] ================================================
[2026-06-05 04:02:56,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:02:56
[2026-06-05 04:02:57,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:02:57,729.729 INFO    ] Initializing speech engine...
[2026-06-05 04:02:57,734.734 INFO    ] 2026-06-05 04:02:57
[2026-06-05 04:02:57,998.998 INFO    ] 2026-06-05 04:02:57
[2026-06-05 04:02:58,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:02:58,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:02:58,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:02:58,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:02:58,463.463 INFO    ] time= 05/06/2026 04:02:58
[2026-06-05 04:02:58,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:02:58,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:02:58,604.604 INFO    ] No existing commands found in stream
[2026-06-05 04:03:03,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:03:03,619.619 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 04:03:07,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:03:07,542.542 INFO    ] Checking for system updates...
[2026-06-05 04:03:07,578.578 INFO    ] 200
[2026-06-05 04:03:07,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:07,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:03:07,637.637 INFO    ] No update needed
[2026-06-05 04:03:07,640.640 INFO    ] Checking for camera pi updates...
[2026-06-05 04:03:07,678.678 INFO    ] 200
[2026-06-05 04:03:07,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:07,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:03:07,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:03:07,883.883 INFO    ] No camera update needed
[2026-06-05 04:03:07,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:03:07,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:03:07,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:03:07,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:03:09,941.941 INFO    ] ================================================
[2026-06-05 04:03:09,957.957 INFO    ] Launching Daemon at Fri Jun  5 04:03:09 IST 2026
[2026-06-05 04:03:09,967.967 INFO    ] ================================================
[2026-06-05 04:03:10,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:03:10
[2026-06-05 04:03:11,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:03:11,550.550 INFO    ] Initializing speech engine...
[2026-06-05 04:03:11,564.564 INFO    ] 2026-06-05 04:03:11
[2026-06-05 04:03:11,834.834 INFO    ] 2026-06-05 04:03:11
[2026-06-05 04:03:11,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:03:12,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:03:12,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:03:12,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:03:12,309.309 INFO    ] time= 05/06/2026 04:03:12
[2026-06-05 04:03:12,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:03:12,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:03:12,456.456 INFO    ] No existing commands found in stream
[2026-06-05 04:03:17,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:03:17,472.472 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 04:03:21,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:03:21,418.418 INFO    ] Checking for system updates...
[2026-06-05 04:03:21,456.456 INFO    ] 200
[2026-06-05 04:03:21,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:21,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:03:21,515.515 INFO    ] No update needed
[2026-06-05 04:03:21,518.518 INFO    ] Checking for camera pi updates...
[2026-06-05 04:03:21,553.553 INFO    ] 200
[2026-06-05 04:03:21,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:21,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:03:21,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:03:21,642.642 INFO    ] No camera update needed
[2026-06-05 04:03:21,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:03:21,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:03:21,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:03:21,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:03:23,701.701 INFO    ] ================================================
[2026-06-05 04:03:23,717.717 INFO    ] Launching Daemon at Fri Jun  5 04:03:23 IST 2026
[2026-06-05 04:03:23,727.727 INFO    ] ================================================
[2026-06-05 04:03:24,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:03:24
[2026-06-05 04:03:24,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:03:25,149.149 INFO    ] Initializing speech engine...
[2026-06-05 04:03:25,154.154 INFO    ] 2026-06-05 04:03:25
[2026-06-05 04:03:25,454.454 INFO    ] 2026-06-05 04:03:25
[2026-06-05 04:03:25,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:03:25,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:03:25,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:03:25,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:03:25,863.863 INFO    ] time= 05/06/2026 04:03:25
[2026-06-05 04:03:25,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:03:25,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:03:26,012.012 INFO    ] No existing commands found in stream
[2026-06-05 04:03:31,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:03:31,040.040 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 04:03:34,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:03:34,844.844 INFO    ] Checking for system updates...
[2026-06-05 04:03:34,880.880 INFO    ] 200
[2026-06-05 04:03:34,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:34,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:03:34,943.943 INFO    ] No update needed
[2026-06-05 04:03:34,946.946 INFO    ] Checking for camera pi updates...
[2026-06-05 04:03:34,981.981 INFO    ] 200
[2026-06-05 04:03:34,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:35,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:03:35,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:03:35,082.082 INFO    ] No camera update needed
[2026-06-05 04:03:35,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:03:35,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:03:35,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:03:35,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:03:37,137.137 INFO    ] ================================================
[2026-06-05 04:03:37,152.152 INFO    ] Launching Daemon at Fri Jun  5 04:03:37 IST 2026
[2026-06-05 04:03:37,163.163 INFO    ] ================================================
[2026-06-05 04:03:37,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:03:37
[2026-06-05 04:03:38,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:03:38,663.663 INFO    ] Initializing speech engine...
[2026-06-05 04:03:38,667.667 INFO    ] 2026-06-05 04:03:38
[2026-06-05 04:03:38,967.967 INFO    ] 2026-06-05 04:03:38
[2026-06-05 04:03:39,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:03:39,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:03:39,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:03:39,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:03:39,327.327 INFO    ] time= 05/06/2026 04:03:39
[2026-06-05 04:03:39,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:03:39,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:03:39,453.453 INFO    ] No existing commands found in stream
[2026-06-05 04:03:44,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:03:44,468.468 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 04:03:47,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:03:47,143.143 INFO    ] Checking for system updates...
[2026-06-05 04:03:47,182.182 INFO    ] 200
[2026-06-05 04:03:47,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:47,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:03:47,246.246 INFO    ] No update needed
[2026-06-05 04:03:47,248.248 INFO    ] Checking for camera pi updates...
[2026-06-05 04:03:47,285.285 INFO    ] 200
[2026-06-05 04:03:47,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:47,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:03:47,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:03:47,381.381 INFO    ] No camera update needed
[2026-06-05 04:03:47,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:03:47,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:03:47,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:03:47,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:03:49,437.437 INFO    ] ================================================
[2026-06-05 04:03:49,452.452 INFO    ] Launching Daemon at Fri Jun  5 04:03:49 IST 2026
[2026-06-05 04:03:49,463.463 INFO    ] ================================================
[2026-06-05 04:03:50,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:03:50
[2026-06-05 04:03:50,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:03:50,961.961 INFO    ] Initializing speech engine...
[2026-06-05 04:03:50,971.971 INFO    ] 2026-06-05 04:03:50
[2026-06-05 04:03:51,241.241 INFO    ] 2026-06-05 04:03:51
[2026-06-05 04:03:51,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:03:51,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:03:51,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:03:51,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:03:51,616.616 INFO    ] time= 05/06/2026 04:03:51
[2026-06-05 04:03:51,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:03:51,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:03:51,714.714 INFO    ] No existing commands found in stream
[2026-06-05 04:03:56,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:03:56,753.753 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 04:03:58,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:03:58,694.694 INFO    ] Checking for system updates...
[2026-06-05 04:03:58,731.731 INFO    ] 200
[2026-06-05 04:03:58,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:58,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:03:58,790.790 INFO    ] No update needed
[2026-06-05 04:03:58,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 04:03:58,827.827 INFO    ] 200
[2026-06-05 04:03:58,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:03:58,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:03:58,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:03:58,922.922 INFO    ] No camera update needed
[2026-06-05 04:03:58,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:03:58,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:03:58,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:03:58,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:04:00,986.986 INFO    ] ================================================
[2026-06-05 04:04:01,001.001 INFO    ] Launching Daemon at Fri Jun  5 04:04:00 IST 2026
[2026-06-05 04:04:01,011.011 INFO    ] ================================================
[2026-06-05 04:04:01,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:04:01
[2026-06-05 04:04:02,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:04:02,834.834 INFO    ] Initializing speech engine...
[2026-06-05 04:04:02,848.848 INFO    ] 2026-06-05 04:04:02
[2026-06-05 04:04:03,200.200 INFO    ] 2026-06-05 04:04:03
[2026-06-05 04:04:03,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:04:03,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:04:03,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:04:03,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:04:03,678.678 INFO    ] time= 05/06/2026 04:04:03
[2026-06-05 04:04:03,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:04:03,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:04:03,831.831 INFO    ] No existing commands found in stream
[2026-06-05 04:04:08,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:04:08,845.845 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 04:04:10,276.276 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:04:10,279.279 INFO    ] Checking for system updates...
[2026-06-05 04:04:10,316.316 INFO    ] 200
[2026-06-05 04:04:10,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:10,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:10,376.376 INFO    ] No update needed
[2026-06-05 04:04:10,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 04:04:10,413.413 INFO    ] 200
[2026-06-05 04:04:10,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:10,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:04:10,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:10,504.504 INFO    ] No camera update needed
[2026-06-05 04:04:10,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:04:10,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:04:10,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:04:10,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:04:12,559.559 INFO    ] ================================================
[2026-06-05 04:04:12,574.574 INFO    ] Launching Daemon at Fri Jun  5 04:04:12 IST 2026
[2026-06-05 04:04:12,585.585 INFO    ] ================================================
[2026-06-05 04:04:13,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:04:13
[2026-06-05 04:04:13,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:04:14,074.074 INFO    ] Initializing speech engine...
[2026-06-05 04:04:14,079.079 INFO    ] 2026-06-05 04:04:14
[2026-06-05 04:04:14,342.342 INFO    ] 2026-06-05 04:04:14
[2026-06-05 04:04:14,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:04:14,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:04:14,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:04:14,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:04:14,827.827 INFO    ] time= 05/06/2026 04:04:14
[2026-06-05 04:04:14,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:04:14,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:04:15,031.031 INFO    ] No existing commands found in stream
[2026-06-05 04:04:20,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:04:20,053.053 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 04:04:20,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:04:20,652.652 INFO    ] Checking for system updates...
[2026-06-05 04:04:20,693.693 INFO    ] 200
[2026-06-05 04:04:20,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:20,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:20,760.760 INFO    ] No update needed
[2026-06-05 04:04:20,763.763 INFO    ] Checking for camera pi updates...
[2026-06-05 04:04:20,802.802 INFO    ] 200
[2026-06-05 04:04:20,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:20,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:04:20,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:20,896.896 INFO    ] No camera update needed
[2026-06-05 04:04:20,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:04:20,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:04:20,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:04:20,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:04:22,954.954 INFO    ] ================================================
[2026-06-05 04:04:22,970.970 INFO    ] Launching Daemon at Fri Jun  5 04:04:22 IST 2026
[2026-06-05 04:04:22,981.981 INFO    ] ================================================
[2026-06-05 04:04:23,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:04:23
[2026-06-05 04:04:24,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:04:24,545.545 INFO    ] Initializing speech engine...
[2026-06-05 04:04:24,551.551 INFO    ] 2026-06-05 04:04:24
[2026-06-05 04:04:24,850.850 INFO    ] 2026-06-05 04:04:24
[2026-06-05 04:04:24,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:04:25,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:04:25,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:04:25,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:04:25,336.336 INFO    ] time= 05/06/2026 04:04:25
[2026-06-05 04:04:25,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:04:25,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:04:25,554.554 INFO    ] No existing commands found in stream
[2026-06-05 04:04:30,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:04:30,582.582 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 04:04:32,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:04:32,371.371 INFO    ] Checking for system updates...
[2026-06-05 04:04:32,412.412 INFO    ] 200
[2026-06-05 04:04:32,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:32,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:32,477.477 INFO    ] No update needed
[2026-06-05 04:04:32,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 04:04:32,517.517 INFO    ] 200
[2026-06-05 04:04:32,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:32,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:04:32,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:32,635.635 INFO    ] No camera update needed
[2026-06-05 04:04:32,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:04:32,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:04:32,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:04:32,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:04:34,700.700 INFO    ] ================================================
[2026-06-05 04:04:34,716.716 INFO    ] Launching Daemon at Fri Jun  5 04:04:34 IST 2026
[2026-06-05 04:04:34,727.727 INFO    ] ================================================
[2026-06-05 04:04:35,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:04:35
[2026-06-05 04:04:36,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:04:36,333.333 INFO    ] Initializing speech engine...
[2026-06-05 04:04:36,343.343 INFO    ] 2026-06-05 04:04:36
[2026-06-05 04:04:36,605.605 INFO    ] 2026-06-05 04:04:36
[2026-06-05 04:04:36,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:04:36,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:04:36,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:04:37,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:04:37,082.082 INFO    ] time= 05/06/2026 04:04:37
[2026-06-05 04:04:37,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:04:37,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:04:37,307.307 INFO    ] No existing commands found in stream
[2026-06-05 04:04:42,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:04:42,335.335 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 04:04:46,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:04:46,007.007 INFO    ] Checking for system updates...
[2026-06-05 04:04:46,048.048 INFO    ] 200
[2026-06-05 04:04:46,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:46,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:46,113.113 INFO    ] No update needed
[2026-06-05 04:04:46,115.115 INFO    ] Checking for camera pi updates...
[2026-06-05 04:04:46,153.153 INFO    ] 200
[2026-06-05 04:04:46,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:46,202.202 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:04:46,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:46,243.243 INFO    ] No camera update needed
[2026-06-05 04:04:46,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:04:46,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:04:46,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:04:46,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:04:48,300.300 INFO    ] ================================================
[2026-06-05 04:04:48,316.316 INFO    ] Launching Daemon at Fri Jun  5 04:04:48 IST 2026
[2026-06-05 04:04:48,327.327 INFO    ] ================================================
[2026-06-05 04:04:48,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:04:48
[2026-06-05 04:04:49,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:04:49,857.857 INFO    ] Initializing speech engine...
[2026-06-05 04:04:49,865.865 INFO    ] 2026-06-05 04:04:49
[2026-06-05 04:04:50,161.161 INFO    ] 2026-06-05 04:04:50
[2026-06-05 04:04:50,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:04:50,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:04:50,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:04:50,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:04:50,644.644 INFO    ] time= 05/06/2026 04:04:50
[2026-06-05 04:04:50,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:04:50,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:04:50,851.851 INFO    ] No existing commands found in stream
[2026-06-05 04:04:55,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:04:55,873.873 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 04:04:57,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:04:57,326.326 INFO    ] Checking for system updates...
[2026-06-05 04:04:57,368.368 INFO    ] 200
[2026-06-05 04:04:57,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:57,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:57,435.435 INFO    ] No update needed
[2026-06-05 04:04:57,438.438 INFO    ] Checking for camera pi updates...
[2026-06-05 04:04:57,477.477 INFO    ] 200
[2026-06-05 04:04:57,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:04:57,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:04:57,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:04:57,585.585 INFO    ] No camera update needed
[2026-06-05 04:04:57,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:04:57,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:04:57,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:04:57,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:04:59,644.644 INFO    ] ================================================
[2026-06-05 04:04:59,659.659 INFO    ] Launching Daemon at Fri Jun  5 04:04:59 IST 2026
[2026-06-05 04:04:59,670.670 INFO    ] ================================================
[2026-06-05 04:05:00,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:05:00
[2026-06-05 04:05:00,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:05:01,212.212 INFO    ] Initializing speech engine...
[2026-06-05 04:05:01,225.225 INFO    ] 2026-06-05 04:05:01
[2026-06-05 04:05:01,504.504 INFO    ] 2026-06-05 04:05:01
[2026-06-05 04:05:01,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:05:01,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:05:01,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:05:01,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:05:01,991.991 INFO    ] time= 05/06/2026 04:05:01
[2026-06-05 04:05:01,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:05:02,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:05:02,090.090 INFO    ] No existing commands found in stream
[2026-06-05 04:05:07,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:05:07,103.103 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 04:05:09,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:05:09,447.447 INFO    ] Checking for system updates...
[2026-06-05 04:05:09,487.487 INFO    ] 200
[2026-06-05 04:05:09,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:05:09,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:05:09,558.558 INFO    ] No update needed
[2026-06-05 04:05:09,561.561 INFO    ] Checking for camera pi updates...
[2026-06-05 04:05:09,613.613 INFO    ] 200
[2026-06-05 04:05:09,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:05:09,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:05:09,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:05:09,820.820 INFO    ] No camera update needed
[2026-06-05 04:05:09,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:05:09,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:05:09,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:05:09,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:05:11,881.881 INFO    ] ================================================
[2026-06-05 04:05:11,897.897 INFO    ] Launching Daemon at Fri Jun  5 04:05:11 IST 2026
[2026-06-05 04:05:11,908.908 INFO    ] ================================================
[2026-06-05 04:05:12,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:05:12
[2026-06-05 04:05:13,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:05:13,340.340 INFO    ] Initializing speech engine...
[2026-06-05 04:05:13,350.350 INFO    ] 2026-06-05 04:05:13
[2026-06-05 04:05:13,609.609 INFO    ] 2026-06-05 04:05:13
[2026-06-05 04:05:13,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:05:13,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:05:13,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:05:13,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:05:13,999.999 INFO    ] time= 05/06/2026 04:05:13
[2026-06-05 04:05:14,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:05:14,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:05:14,086.086 INFO    ] No existing commands found in stream
[2026-06-05 04:05:19,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:05:19,101.101 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 04:05:23,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:05:23,139.139 INFO    ] Checking for system updates...
[2026-06-05 04:05:23,175.175 INFO    ] 200
[2026-06-05 04:05:23,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:05:23,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:05:23,244.244 INFO    ] No update needed
[2026-06-05 04:05:23,246.246 INFO    ] Checking for camera pi updates...
[2026-06-05 04:05:23,280.280 INFO    ] 200
[2026-06-05 04:05:23,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:05:23,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:05:23,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:05:23,379.379 INFO    ] No camera update needed
[2026-06-05 04:05:23,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:05:23,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:05:23,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:05:23,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:05:25,436.436 INFO    ] ================================================
[2026-06-05 04:05:25,451.451 INFO    ] Launching Daemon at Fri Jun  5 04:05:25 IST 2026
[2026-06-05 04:05:25,461.461 INFO    ] ================================================
[2026-06-05 04:05:26,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:05:26
[2026-06-05 04:05:26,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:05:27,096.096 INFO    ] Initializing speech engine...
[2026-06-05 04:05:27,105.105 INFO    ] 2026-06-05 04:05:27
[2026-06-05 04:05:27,391.391 INFO    ] 2026-06-05 04:05:27
[2026-06-05 04:05:27,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:05:27,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:05:27,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:05:27,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:05:27,856.856 INFO    ] time= 05/06/2026 04:05:27
[2026-06-05 04:05:27,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:05:27,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:05:28,072.072 INFO    ] No existing commands found in stream
[2026-06-05 04:05:33,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:05:33,098.098 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 04:05:36,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:05:36,645.645 INFO    ] Checking for system updates...
[2026-06-05 04:05:36,686.686 INFO    ] 200
[2026-06-05 04:05:36,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:05:36,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:05:36,753.753 INFO    ] No update needed
[2026-06-05 04:05:36,756.756 INFO    ] Checking for camera pi updates...
[2026-06-05 04:05:36,791.791 INFO    ] 200
[2026-06-05 04:05:36,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:05:36,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:05:36,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:05:36,883.883 INFO    ] No camera update needed
[2026-06-05 04:05:36,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:05:36,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:05:36,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:05:36,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:05:38,939.939 INFO    ] ================================================
[2026-06-05 04:05:38,954.954 INFO    ] Launching Daemon at Fri Jun  5 04:05:38 IST 2026
[2026-06-05 04:05:38,966.966 INFO    ] ================================================
[2026-06-05 04:05:39,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:05:39
[2026-06-05 04:05:40,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:05:40,376.376 INFO    ] Initializing speech engine...
[2026-06-05 04:05:40,391.391 INFO    ] 2026-06-05 04:05:40
[2026-06-05 04:05:40,661.661 INFO    ] 2026-06-05 04:05:40
[2026-06-05 04:05:40,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:05:40,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:05:40,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:05:41,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:05:41,143.143 INFO    ] time= 05/06/2026 04:05:41
[2026-06-05 04:05:41,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:05:41,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:05:41,352.352 INFO    ] No existing commands found in stream
[2026-06-05 04:05:46,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:05:46,382.382 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 04:05:50,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:05:50,474.474 INFO    ] Checking for system updates...
[2026-06-05 04:05:50,514.514 INFO    ] 200
[2026-06-05 04:05:50,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:05:50,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:05:50,573.573 INFO    ] No update needed
[2026-06-05 04:05:50,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 04:05:50,612.612 INFO    ] 200
[2026-06-05 04:05:50,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:05:50,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:05:50,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:05:50,717.717 INFO    ] No camera update needed
[2026-06-05 04:05:50,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:05:50,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:05:50,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:05:50,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:05:52,773.773 INFO    ] ================================================
[2026-06-05 04:05:52,788.788 INFO    ] Launching Daemon at Fri Jun  5 04:05:52 IST 2026
[2026-06-05 04:05:52,799.799 INFO    ] ================================================
[2026-06-05 04:05:53,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:05:53
[2026-06-05 04:05:53,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:05:54,253.253 INFO    ] Initializing speech engine...
[2026-06-05 04:05:54,277.277 INFO    ] 2026-06-05 04:05:54
[2026-06-05 04:05:54,553.553 INFO    ] 2026-06-05 04:05:54
[2026-06-05 04:05:54,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:05:54,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:05:54,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:05:54,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:05:54,919.919 INFO    ] time= 05/06/2026 04:05:54
[2026-06-05 04:05:54,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:05:54,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:05:55,045.045 INFO    ] No existing commands found in stream
[2026-06-05 04:06:00,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:06:00,071.071 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 04:06:02,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:06:02,368.368 INFO    ] Checking for system updates...
[2026-06-05 04:06:02,414.414 INFO    ] 200
[2026-06-05 04:06:02,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:02,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:06:02,480.480 INFO    ] No update needed
[2026-06-05 04:06:02,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 04:06:02,527.527 INFO    ] 200
[2026-06-05 04:06:02,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:02,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:06:02,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:06:02,642.642 INFO    ] No camera update needed
[2026-06-05 04:06:02,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:06:02,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:06:02,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:06:02,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:06:04,706.706 INFO    ] ================================================
[2026-06-05 04:06:04,721.721 INFO    ] Launching Daemon at Fri Jun  5 04:06:04 IST 2026
[2026-06-05 04:06:04,731.731 INFO    ] ================================================
[2026-06-05 04:06:05,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:06:05
[2026-06-05 04:06:05,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:06:06,201.201 INFO    ] Initializing speech engine...
[2026-06-05 04:06:06,216.216 INFO    ] 2026-06-05 04:06:06
[2026-06-05 04:06:06,503.503 INFO    ] 2026-06-05 04:06:06
[2026-06-05 04:06:06,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:06:06,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:06:06,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:06:06,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:06:07,024.024 INFO    ] time= 05/06/2026 04:06:06
[2026-06-05 04:06:07,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:06:07,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:06:07,228.228 INFO    ] No existing commands found in stream
[2026-06-05 04:06:12,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:06:12,250.250 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 04:06:14,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:06:14,581.581 INFO    ] Checking for system updates...
[2026-06-05 04:06:14,618.618 INFO    ] 200
[2026-06-05 04:06:14,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:14,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:06:14,678.678 INFO    ] No update needed
[2026-06-05 04:06:14,681.681 INFO    ] Checking for camera pi updates...
[2026-06-05 04:06:14,718.718 INFO    ] 200
[2026-06-05 04:06:14,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:14,767.767 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:06:14,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:06:14,815.815 INFO    ] No camera update needed
[2026-06-05 04:06:14,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:06:14,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:06:14,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:06:14,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:06:16,872.872 INFO    ] ================================================
[2026-06-05 04:06:16,887.887 INFO    ] Launching Daemon at Fri Jun  5 04:06:16 IST 2026
[2026-06-05 04:06:16,899.899 INFO    ] ================================================
[2026-06-05 04:06:17,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:06:17
[2026-06-05 04:06:18,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:06:18,342.342 INFO    ] Initializing speech engine...
[2026-06-05 04:06:18,357.357 INFO    ] 2026-06-05 04:06:18
[2026-06-05 04:06:18,640.640 INFO    ] 2026-06-05 04:06:18
[2026-06-05 04:06:18,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:06:18,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:06:18,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:06:19,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:06:19,030.030 INFO    ] time= 05/06/2026 04:06:19
[2026-06-05 04:06:19,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:06:19,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:06:19,136.136 INFO    ] No existing commands found in stream
[2026-06-05 04:06:24,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:06:24,151.151 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 04:06:26,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:06:26,789.789 INFO    ] Checking for system updates...
[2026-06-05 04:06:26,828.828 INFO    ] 200
[2026-06-05 04:06:26,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:26,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:06:26,886.886 INFO    ] No update needed
[2026-06-05 04:06:26,889.889 INFO    ] Checking for camera pi updates...
[2026-06-05 04:06:26,922.922 INFO    ] 200
[2026-06-05 04:06:26,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:26,965.965 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:06:27,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:06:27,013.013 INFO    ] No camera update needed
[2026-06-05 04:06:27,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:06:27,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:06:27,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:06:27,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:06:29,068.068 INFO    ] ================================================
[2026-06-05 04:06:29,084.084 INFO    ] Launching Daemon at Fri Jun  5 04:06:29 IST 2026
[2026-06-05 04:06:29,097.097 INFO    ] ================================================
[2026-06-05 04:06:29,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:06:29
[2026-06-05 04:06:30,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:06:30,570.570 INFO    ] Initializing speech engine...
[2026-06-05 04:06:30,584.584 INFO    ] 2026-06-05 04:06:30
[2026-06-05 04:06:30,851.851 INFO    ] 2026-06-05 04:06:30
[2026-06-05 04:06:30,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:06:31,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:06:31,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:06:31,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:06:31,229.229 INFO    ] time= 05/06/2026 04:06:31
[2026-06-05 04:06:31,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:06:31,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:06:31,334.334 INFO    ] No existing commands found in stream
[2026-06-05 04:06:36,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:06:36,368.368 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 04:06:38,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:06:38,702.702 INFO    ] Checking for system updates...
[2026-06-05 04:06:38,738.738 INFO    ] 200
[2026-06-05 04:06:38,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:38,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:06:38,798.798 INFO    ] No update needed
[2026-06-05 04:06:38,801.801 INFO    ] Checking for camera pi updates...
[2026-06-05 04:06:38,836.836 INFO    ] 200
[2026-06-05 04:06:38,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:38,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:06:38,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:06:38,937.937 INFO    ] No camera update needed
[2026-06-05 04:06:38,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:06:38,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:06:38,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:06:38,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:06:41,999.999 INFO    ] ================================================
[2026-06-05 04:06:41,014.014 INFO    ] Launching Daemon at Fri Jun  5 04:06:41 IST 2026
[2026-06-05 04:06:41,024.024 INFO    ] ================================================
[2026-06-05 04:06:41,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:06:41
[2026-06-05 04:06:42,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:06:42,472.472 INFO    ] Initializing speech engine...
[2026-06-05 04:06:42,478.478 INFO    ] 2026-06-05 04:06:42
[2026-06-05 04:06:42,738.738 INFO    ] 2026-06-05 04:06:42
[2026-06-05 04:06:42,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:06:43,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:06:43,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:06:43,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:06:43,200.200 INFO    ] time= 05/06/2026 04:06:43
[2026-06-05 04:06:43,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:06:43,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:06:43,349.349 INFO    ] No existing commands found in stream
[2026-06-05 04:06:48,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:06:48,364.364 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 04:06:51,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:06:51,741.741 INFO    ] Checking for system updates...
[2026-06-05 04:06:51,799.799 INFO    ] 200
[2026-06-05 04:06:51,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:51,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:06:51,901.901 INFO    ] No update needed
[2026-06-05 04:06:51,904.904 INFO    ] Checking for camera pi updates...
[2026-06-05 04:06:51,942.942 INFO    ] 200
[2026-06-05 04:06:51,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:06:51,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:06:52,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:06:52,064.064 INFO    ] No camera update needed
[2026-06-05 04:06:52,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:06:52,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:06:52,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:06:52,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:06:54,120.120 INFO    ] ================================================
[2026-06-05 04:06:54,135.135 INFO    ] Launching Daemon at Fri Jun  5 04:06:54 IST 2026
[2026-06-05 04:06:54,146.146 INFO    ] ================================================
[2026-06-05 04:06:54,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:06:54
[2026-06-05 04:06:55,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:06:55,573.573 INFO    ] Initializing speech engine...
[2026-06-05 04:06:55,582.582 INFO    ] 2026-06-05 04:06:55
[2026-06-05 04:06:55,877.877 INFO    ] 2026-06-05 04:06:55
[2026-06-05 04:06:55,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:06:56,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:06:56,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:06:56,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:06:56,302.302 INFO    ] time= 05/06/2026 04:06:56
[2026-06-05 04:06:56,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:06:56,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:06:56,384.384 INFO    ] No existing commands found in stream
[2026-06-05 04:07:01,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:07:01,401.401 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 04:07:03,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:07:03,721.721 INFO    ] Checking for system updates...
[2026-06-05 04:07:03,758.758 INFO    ] 200
[2026-06-05 04:07:03,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:03,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:07:03,822.822 INFO    ] No update needed
[2026-06-05 04:07:03,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 04:07:03,857.857 INFO    ] 200
[2026-06-05 04:07:03,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:03,905.905 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:07:03,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:07:03,944.944 INFO    ] No camera update needed
[2026-06-05 04:07:03,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:07:03,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:07:03,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:07:03,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:07:06,005.005 INFO    ] ================================================
[2026-06-05 04:07:06,021.021 INFO    ] Launching Daemon at Fri Jun  5 04:07:06 IST 2026
[2026-06-05 04:07:06,032.032 INFO    ] ================================================
[2026-06-05 04:07:06,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:07:06
[2026-06-05 04:07:07,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:07:07,474.474 INFO    ] Initializing speech engine...
[2026-06-05 04:07:07,488.488 INFO    ] 2026-06-05 04:07:07
[2026-06-05 04:07:07,775.775 INFO    ] 2026-06-05 04:07:07
[2026-06-05 04:07:07,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:07:08,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:07:08,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:07:08,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:07:08,150.150 INFO    ] time= 05/06/2026 04:07:08
[2026-06-05 04:07:08,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:07:08,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:07:08,275.275 INFO    ] No existing commands found in stream
[2026-06-05 04:07:13,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:07:13,290.290 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 04:07:15,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:07:15,160.160 INFO    ] Checking for system updates...
[2026-06-05 04:07:15,198.198 INFO    ] 200
[2026-06-05 04:07:15,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:15,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:07:15,257.257 INFO    ] No update needed
[2026-06-05 04:07:15,260.260 INFO    ] Checking for camera pi updates...
[2026-06-05 04:07:15,294.294 INFO    ] 200
[2026-06-05 04:07:15,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:15,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:07:15,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:07:15,492.492 INFO    ] No camera update needed
[2026-06-05 04:07:15,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:07:15,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:07:15,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:07:15,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:07:17,552.552 INFO    ] ================================================
[2026-06-05 04:07:17,567.567 INFO    ] Launching Daemon at Fri Jun  5 04:07:17 IST 2026
[2026-06-05 04:07:17,578.578 INFO    ] ================================================
[2026-06-05 04:07:18,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:07:18
[2026-06-05 04:07:18,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:07:19,165.165 INFO    ] Initializing speech engine...
[2026-06-05 04:07:19,172.172 INFO    ] 2026-06-05 04:07:19
[2026-06-05 04:07:19,442.442 INFO    ] 2026-06-05 04:07:19
[2026-06-05 04:07:19,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:07:19,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:07:19,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:07:19,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:07:19,896.896 INFO    ] time= 05/06/2026 04:07:19
[2026-06-05 04:07:19,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:07:20,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:07:20,086.086 INFO    ] No existing commands found in stream
[2026-06-05 04:07:25,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:07:25,125.125 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 04:07:29,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:07:29,050.050 INFO    ] Checking for system updates...
[2026-06-05 04:07:29,091.091 INFO    ] 200
[2026-06-05 04:07:29,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:29,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:07:29,152.152 INFO    ] No update needed
[2026-06-05 04:07:29,155.155 INFO    ] Checking for camera pi updates...
[2026-06-05 04:07:29,193.193 INFO    ] 200
[2026-06-05 04:07:29,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:29,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:07:29,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:07:29,286.286 INFO    ] No camera update needed
[2026-06-05 04:07:29,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:07:29,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:07:29,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:07:29,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:07:31,347.347 INFO    ] ================================================
[2026-06-05 04:07:31,364.364 INFO    ] Launching Daemon at Fri Jun  5 04:07:31 IST 2026
[2026-06-05 04:07:31,377.377 INFO    ] ================================================
[2026-06-05 04:07:31,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:07:31
[2026-06-05 04:07:32,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:07:32,850.850 INFO    ] Initializing speech engine...
[2026-06-05 04:07:32,859.859 INFO    ] 2026-06-05 04:07:32
[2026-06-05 04:07:33,150.150 INFO    ] 2026-06-05 04:07:33
[2026-06-05 04:07:33,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:07:33,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:07:33,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:07:33,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:07:33,528.528 INFO    ] time= 05/06/2026 04:07:33
[2026-06-05 04:07:33,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:07:33,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:07:33,652.652 INFO    ] No existing commands found in stream
[2026-06-05 04:07:38,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:07:38,668.668 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 04:07:41,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:07:41,516.516 INFO    ] Checking for system updates...
[2026-06-05 04:07:41,552.552 INFO    ] 200
[2026-06-05 04:07:41,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:41,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:07:41,612.612 INFO    ] No update needed
[2026-06-05 04:07:41,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 04:07:41,653.653 INFO    ] 200
[2026-06-05 04:07:41,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:41,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:07:41,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:07:41,741.741 INFO    ] No camera update needed
[2026-06-05 04:07:41,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:07:41,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:07:41,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:07:41,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:07:43,801.801 INFO    ] ================================================
[2026-06-05 04:07:43,816.816 INFO    ] Launching Daemon at Fri Jun  5 04:07:43 IST 2026
[2026-06-05 04:07:43,827.827 INFO    ] ================================================
[2026-06-05 04:07:44,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:07:44
[2026-06-05 04:07:45,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:07:45,297.297 INFO    ] Initializing speech engine...
[2026-06-05 04:07:45,306.306 INFO    ] 2026-06-05 04:07:45
[2026-06-05 04:07:45,569.569 INFO    ] 2026-06-05 04:07:45
[2026-06-05 04:07:45,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:07:45,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:07:45,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:07:45,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:07:46,044.044 INFO    ] time= 05/06/2026 04:07:45
[2026-06-05 04:07:46,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:07:46,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:07:46,196.196 INFO    ] No existing commands found in stream
[2026-06-05 04:07:51,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:07:51,227.227 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 04:07:52,765.765 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:07:52,768.768 INFO    ] Checking for system updates...
[2026-06-05 04:07:52,803.803 INFO    ] 200
[2026-06-05 04:07:52,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:52,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:07:52,862.862 INFO    ] No update needed
[2026-06-05 04:07:52,864.864 INFO    ] Checking for camera pi updates...
[2026-06-05 04:07:52,898.898 INFO    ] 200
[2026-06-05 04:07:52,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:07:52,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:07:52,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:07:52,998.998 INFO    ] No camera update needed
[2026-06-05 04:07:53,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:07:53,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:07:53,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:07:53,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:07:55,057.057 INFO    ] ================================================
[2026-06-05 04:07:55,072.072 INFO    ] Launching Daemon at Fri Jun  5 04:07:55 IST 2026
[2026-06-05 04:07:55,084.084 INFO    ] ================================================
[2026-06-05 04:07:55,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:07:55
[2026-06-05 04:07:56,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:07:56,505.505 INFO    ] Initializing speech engine...
[2026-06-05 04:07:56,513.513 INFO    ] 2026-06-05 04:07:56
[2026-06-05 04:07:56,806.806 INFO    ] 2026-06-05 04:07:56
[2026-06-05 04:07:56,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:07:57,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:07:57,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:07:57,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:07:57,219.219 INFO    ] time= 05/06/2026 04:07:57
[2026-06-05 04:07:57,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:07:57,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:07:57,364.364 INFO    ] No existing commands found in stream
[2026-06-05 04:08:02,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:08:02,391.391 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 04:08:02,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:08:02,978.978 INFO    ] Checking for system updates...
[2026-06-05 04:08:03,021.021 INFO    ] 200
[2026-06-05 04:08:03,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:03,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:03,088.088 INFO    ] No update needed
[2026-06-05 04:08:03,091.091 INFO    ] Checking for camera pi updates...
[2026-06-05 04:08:03,130.130 INFO    ] 200
[2026-06-05 04:08:03,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:03,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:08:03,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:03,214.214 INFO    ] No camera update needed
[2026-06-05 04:08:03,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:08:03,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:08:03,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:08:03,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:08:05,274.274 INFO    ] ================================================
[2026-06-05 04:08:05,290.290 INFO    ] Launching Daemon at Fri Jun  5 04:08:05 IST 2026
[2026-06-05 04:08:05,301.301 INFO    ] ================================================
[2026-06-05 04:08:05,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:08:05
[2026-06-05 04:08:06,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:08:06,727.727 INFO    ] Initializing speech engine...
[2026-06-05 04:08:06,733.733 INFO    ] 2026-06-05 04:08:06
[2026-06-05 04:08:07,062.062 INFO    ] 2026-06-05 04:08:07
[2026-06-05 04:08:07,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:08:07,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:08:07,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:08:07,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:08:07,463.463 INFO    ] time= 05/06/2026 04:08:07
[2026-06-05 04:08:07,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:08:07,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:08:07,572.572 INFO    ] No existing commands found in stream
[2026-06-05 04:08:12,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:08:12,587.587 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 04:08:14,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:08:14,702.702 INFO    ] Checking for system updates...
[2026-06-05 04:08:14,738.738 INFO    ] 200
[2026-06-05 04:08:14,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:14,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:14,798.798 INFO    ] No update needed
[2026-06-05 04:08:14,800.800 INFO    ] Checking for camera pi updates...
[2026-06-05 04:08:14,834.834 INFO    ] 200
[2026-06-05 04:08:14,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:14,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:08:14,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:14,921.921 INFO    ] No camera update needed
[2026-06-05 04:08:14,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:08:14,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:08:14,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:08:14,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:08:16,977.977 INFO    ] ================================================
[2026-06-05 04:08:16,992.992 INFO    ] Launching Daemon at Fri Jun  5 04:08:16 IST 2026
[2026-06-05 04:08:17,003.003 INFO    ] ================================================
[2026-06-05 04:08:17,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:08:17
[2026-06-05 04:08:18,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:08:18,532.532 INFO    ] Initializing speech engine...
[2026-06-05 04:08:18,544.544 INFO    ] 2026-06-05 04:08:18
[2026-06-05 04:08:18,830.830 INFO    ] 2026-06-05 04:08:18
[2026-06-05 04:08:18,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:08:19,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:08:19,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:08:19,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:08:19,365.365 INFO    ] time= 05/06/2026 04:08:19
[2026-06-05 04:08:19,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:08:19,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:08:19,504.504 INFO    ] No existing commands found in stream
[2026-06-05 04:08:24,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:08:24,533.533 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 04:08:25,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:08:25,822.822 INFO    ] Checking for system updates...
[2026-06-05 04:08:25,861.861 INFO    ] 200
[2026-06-05 04:08:25,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:25,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:25,922.922 INFO    ] No update needed
[2026-06-05 04:08:25,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 04:08:25,960.960 INFO    ] 200
[2026-06-05 04:08:25,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:26,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:08:26,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:26,062.062 INFO    ] No camera update needed
[2026-06-05 04:08:26,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:08:26,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:08:26,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:08:26,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:08:28,121.121 INFO    ] ================================================
[2026-06-05 04:08:28,136.136 INFO    ] Launching Daemon at Fri Jun  5 04:08:28 IST 2026
[2026-06-05 04:08:28,148.148 INFO    ] ================================================
[2026-06-05 04:08:28,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:08:28
[2026-06-05 04:08:29,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:08:29,604.604 INFO    ] Initializing speech engine...
[2026-06-05 04:08:29,615.615 INFO    ] 2026-06-05 04:08:29
[2026-06-05 04:08:29,877.877 INFO    ] 2026-06-05 04:08:29
[2026-06-05 04:08:29,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:08:30,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:08:30,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:08:30,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:08:30,341.341 INFO    ] time= 05/06/2026 04:08:30
[2026-06-05 04:08:30,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:08:30,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:08:30,485.485 INFO    ] No existing commands found in stream
[2026-06-05 04:08:35,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:08:35,500.500 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 04:08:39,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:08:39,038.038 INFO    ] Checking for system updates...
[2026-06-05 04:08:39,074.074 INFO    ] 200
[2026-06-05 04:08:39,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:39,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:39,132.132 INFO    ] No update needed
[2026-06-05 04:08:39,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 04:08:39,170.170 INFO    ] 200
[2026-06-05 04:08:39,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:39,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:08:39,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:39,264.264 INFO    ] No camera update needed
[2026-06-05 04:08:39,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:08:39,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:08:39,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:08:39,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:08:41,322.322 INFO    ] ================================================
[2026-06-05 04:08:41,338.338 INFO    ] Launching Daemon at Fri Jun  5 04:08:41 IST 2026
[2026-06-05 04:08:41,348.348 INFO    ] ================================================
[2026-06-05 04:08:41,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:08:41
[2026-06-05 04:08:42,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:08:42,896.896 INFO    ] Initializing speech engine...
[2026-06-05 04:08:42,903.903 INFO    ] 2026-06-05 04:08:42
[2026-06-05 04:08:43,225.225 INFO    ] 2026-06-05 04:08:43
[2026-06-05 04:08:43,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:08:43,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:08:43,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:08:43,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:08:43,753.753 INFO    ] time= 05/06/2026 04:08:43
[2026-06-05 04:08:43,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:08:43,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:08:43,913.913 INFO    ] No existing commands found in stream
[2026-06-05 04:08:48,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:08:48,932.932 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 04:08:50,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:08:50,308.308 INFO    ] Checking for system updates...
[2026-06-05 04:08:50,346.346 INFO    ] 200
[2026-06-05 04:08:50,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:50,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:50,403.403 INFO    ] No update needed
[2026-06-05 04:08:50,406.406 INFO    ] Checking for camera pi updates...
[2026-06-05 04:08:50,440.440 INFO    ] 200
[2026-06-05 04:08:50,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:08:50,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:08:50,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:08:50,532.532 INFO    ] No camera update needed
[2026-06-05 04:08:50,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:08:50,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:08:50,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:08:50,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:08:52,586.586 INFO    ] ================================================
[2026-06-05 04:08:52,601.601 INFO    ] Launching Daemon at Fri Jun  5 04:08:52 IST 2026
[2026-06-05 04:08:52,612.612 INFO    ] ================================================
[2026-06-05 04:08:53,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:08:53
[2026-06-05 04:08:53,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:08:54,022.022 INFO    ] Initializing speech engine...
[2026-06-05 04:08:54,030.030 INFO    ] 2026-06-05 04:08:54
[2026-06-05 04:08:54,333.333 INFO    ] 2026-06-05 04:08:54
[2026-06-05 04:08:54,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:08:54,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:08:54,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:08:54,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:08:54,697.697 INFO    ] time= 05/06/2026 04:08:54
[2026-06-05 04:08:54,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:08:54,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:08:54,849.849 INFO    ] No existing commands found in stream
[2026-06-05 04:08:59,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:08:59,863.863 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 04:09:03,279.279 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:09:03,283.283 INFO    ] Checking for system updates...
[2026-06-05 04:09:03,338.338 INFO    ] 200
[2026-06-05 04:09:03,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:03,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:09:03,412.412 INFO    ] No update needed
[2026-06-05 04:09:03,415.415 INFO    ] Checking for camera pi updates...
[2026-06-05 04:09:03,460.460 INFO    ] 200
[2026-06-05 04:09:03,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:03,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:09:03,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:09:03,544.544 INFO    ] No camera update needed
[2026-06-05 04:09:03,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:09:03,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:09:03,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:09:03,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:09:05,601.601 INFO    ] ================================================
[2026-06-05 04:09:05,616.616 INFO    ] Launching Daemon at Fri Jun  5 04:09:05 IST 2026
[2026-06-05 04:09:05,627.627 INFO    ] ================================================
[2026-06-05 04:09:06,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:09:06
[2026-06-05 04:09:06,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:09:07,077.077 INFO    ] Initializing speech engine...
[2026-06-05 04:09:07,085.085 INFO    ] 2026-06-05 04:09:07
[2026-06-05 04:09:07,382.382 INFO    ] 2026-06-05 04:09:07
[2026-06-05 04:09:07,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:09:07,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:09:07,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:09:07,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:09:07,848.848 INFO    ] time= 05/06/2026 04:09:07
[2026-06-05 04:09:07,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:09:07,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:09:08,042.042 INFO    ] No existing commands found in stream
[2026-06-05 04:09:13,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:09:13,082.082 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 04:09:14,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:09:14,578.578 INFO    ] Checking for system updates...
[2026-06-05 04:09:14,618.618 INFO    ] 200
[2026-06-05 04:09:14,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:14,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:09:14,676.676 INFO    ] No update needed
[2026-06-05 04:09:14,678.678 INFO    ] Checking for camera pi updates...
[2026-06-05 04:09:14,716.716 INFO    ] 200
[2026-06-05 04:09:14,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:14,759.759 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:09:14,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:09:14,806.806 INFO    ] No camera update needed
[2026-06-05 04:09:14,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:09:14,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:09:14,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:09:14,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:09:16,864.864 INFO    ] ================================================
[2026-06-05 04:09:16,880.880 INFO    ] Launching Daemon at Fri Jun  5 04:09:16 IST 2026
[2026-06-05 04:09:16,891.891 INFO    ] ================================================
[2026-06-05 04:09:17,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:09:17
[2026-06-05 04:09:18,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:09:18,317.317 INFO    ] Initializing speech engine...
[2026-06-05 04:09:18,326.326 INFO    ] 2026-06-05 04:09:18
[2026-06-05 04:09:18,571.571 INFO    ] 2026-06-05 04:09:18
[2026-06-05 04:09:18,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:09:18,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:09:18,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:09:19,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:09:19,077.077 INFO    ] time= 05/06/2026 04:09:19
[2026-06-05 04:09:19,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:09:19,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:09:19,272.272 INFO    ] No existing commands found in stream
[2026-06-05 04:09:24,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:09:24,298.298 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 04:09:25,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:09:25,004.004 INFO    ] Checking for system updates...
[2026-06-05 04:09:25,040.040 INFO    ] 200
[2026-06-05 04:09:25,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:25,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:09:25,104.104 INFO    ] No update needed
[2026-06-05 04:09:25,106.106 INFO    ] Checking for camera pi updates...
[2026-06-05 04:09:25,144.144 INFO    ] 200
[2026-06-05 04:09:25,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:25,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:09:25,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:09:25,338.338 INFO    ] No camera update needed
[2026-06-05 04:09:25,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:09:25,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:09:25,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:09:25,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:09:27,396.396 INFO    ] ================================================
[2026-06-05 04:09:27,411.411 INFO    ] Launching Daemon at Fri Jun  5 04:09:27 IST 2026
[2026-06-05 04:09:27,422.422 INFO    ] ================================================
[2026-06-05 04:09:27,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:09:27
[2026-06-05 04:09:28,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:09:28,823.823 INFO    ] Initializing speech engine...
[2026-06-05 04:09:28,831.831 INFO    ] 2026-06-05 04:09:28
[2026-06-05 04:09:29,132.132 INFO    ] 2026-06-05 04:09:29
[2026-06-05 04:09:29,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:09:29,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:09:29,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:09:29,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:09:29,493.493 INFO    ] time= 05/06/2026 04:09:29
[2026-06-05 04:09:29,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:09:29,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:09:29,601.601 INFO    ] No existing commands found in stream
[2026-06-05 04:09:34,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:09:34,634.634 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 04:09:38,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:09:38,645.645 INFO    ] Checking for system updates...
[2026-06-05 04:09:38,686.686 INFO    ] 200
[2026-06-05 04:09:38,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:38,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:09:38,743.743 INFO    ] No update needed
[2026-06-05 04:09:38,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 04:09:38,783.783 INFO    ] 200
[2026-06-05 04:09:38,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:38,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:09:38,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:09:38,875.875 INFO    ] No camera update needed
[2026-06-05 04:09:38,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:09:38,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:09:38,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:09:38,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:09:40,931.931 INFO    ] ================================================
[2026-06-05 04:09:40,946.946 INFO    ] Launching Daemon at Fri Jun  5 04:09:40 IST 2026
[2026-06-05 04:09:40,957.957 INFO    ] ================================================
[2026-06-05 04:09:41,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:09:41
[2026-06-05 04:09:42,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:09:42,526.526 INFO    ] Initializing speech engine...
[2026-06-05 04:09:42,543.543 INFO    ] 2026-06-05 04:09:42
[2026-06-05 04:09:42,817.817 INFO    ] 2026-06-05 04:09:42
[2026-06-05 04:09:42,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:09:43,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:09:43,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:09:43,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:09:43,192.192 INFO    ] time= 05/06/2026 04:09:43
[2026-06-05 04:09:43,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:09:43,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:09:43,370.370 INFO    ] No existing commands found in stream
[2026-06-05 04:09:48,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:09:48,398.398 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 04:09:50,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:09:50,751.751 INFO    ] Checking for system updates...
[2026-06-05 04:09:50,787.787 INFO    ] 200
[2026-06-05 04:09:50,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:50,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:09:50,853.853 INFO    ] No update needed
[2026-06-05 04:09:50,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 04:09:50,888.888 INFO    ] 200
[2026-06-05 04:09:50,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:09:50,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:09:50,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:09:50,979.979 INFO    ] No camera update needed
[2026-06-05 04:09:50,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:09:50,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:09:50,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:09:50,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:09:53,037.037 INFO    ] ================================================
[2026-06-05 04:09:53,055.055 INFO    ] Launching Daemon at Fri Jun  5 04:09:53 IST 2026
[2026-06-05 04:09:53,069.069 INFO    ] ================================================
[2026-06-05 04:09:53,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:09:53
[2026-06-05 04:09:54,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:09:54,513.513 INFO    ] Initializing speech engine...
[2026-06-05 04:09:54,519.519 INFO    ] 2026-06-05 04:09:54
[2026-06-05 04:09:54,819.819 INFO    ] 2026-06-05 04:09:54
[2026-06-05 04:09:54,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:09:55,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:09:55,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:09:55,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:09:55,202.202 INFO    ] time= 05/06/2026 04:09:55
[2026-06-05 04:09:55,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:09:55,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:09:55,329.329 INFO    ] No existing commands found in stream
[2026-06-05 04:10:00,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:10:00,343.343 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 04:10:02,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:10:02,328.328 INFO    ] Checking for system updates...
[2026-06-05 04:10:02,443.443 INFO    ] 200
[2026-06-05 04:10:02,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:02,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:10:02,669.669 INFO    ] No update needed
[2026-06-05 04:10:02,672.672 INFO    ] Checking for camera pi updates...
[2026-06-05 04:10:02,743.743 INFO    ] 200
[2026-06-05 04:10:02,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:02,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:10:02,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:10:02,900.900 INFO    ] No camera update needed
[2026-06-05 04:10:02,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:10:02,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:10:02,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:10:02,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:10:04,967.967 INFO    ] ================================================
[2026-06-05 04:10:04,981.981 INFO    ] Launching Daemon at Fri Jun  5 04:10:04 IST 2026
[2026-06-05 04:10:04,992.992 INFO    ] ================================================
[2026-06-05 04:10:05,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:10:05
[2026-06-05 04:10:06,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:10:06,418.418 INFO    ] Initializing speech engine...
[2026-06-05 04:10:06,437.437 INFO    ] 2026-06-05 04:10:06
[2026-06-05 04:10:06,693.693 INFO    ] 2026-06-05 04:10:06
[2026-06-05 04:10:06,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:10:06,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:10:06,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:10:07,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:10:07,089.089 INFO    ] time= 05/06/2026 04:10:07
[2026-06-05 04:10:07,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:10:07,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:10:07,200.200 INFO    ] No existing commands found in stream
[2026-06-05 04:10:12,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:10:12,215.215 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 04:10:14,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:10:14,379.379 INFO    ] Checking for system updates...
[2026-06-05 04:10:14,416.416 INFO    ] 200
[2026-06-05 04:10:14,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:14,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:10:14,479.479 INFO    ] No update needed
[2026-06-05 04:10:14,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 04:10:14,515.515 INFO    ] 200
[2026-06-05 04:10:14,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:14,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:10:14,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:10:14,605.605 INFO    ] No camera update needed
[2026-06-05 04:10:14,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:10:14,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:10:14,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:10:14,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:10:16,660.660 INFO    ] ================================================
[2026-06-05 04:10:16,675.675 INFO    ] Launching Daemon at Fri Jun  5 04:10:16 IST 2026
[2026-06-05 04:10:16,686.686 INFO    ] ================================================
[2026-06-05 04:10:17,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:10:17
[2026-06-05 04:10:17,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:10:18,107.107 INFO    ] Initializing speech engine...
[2026-06-05 04:10:18,123.123 INFO    ] 2026-06-05 04:10:18
[2026-06-05 04:10:18,405.405 INFO    ] 2026-06-05 04:10:18
[2026-06-05 04:10:18,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:10:18,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:10:18,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:10:18,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:10:18,779.779 INFO    ] time= 05/06/2026 04:10:18
[2026-06-05 04:10:18,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:10:18,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:10:18,903.903 INFO    ] No existing commands found in stream
[2026-06-05 04:10:23,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:10:23,918.918 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 04:10:27,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:10:27,344.344 INFO    ] Checking for system updates...
[2026-06-05 04:10:27,384.384 INFO    ] 200
[2026-06-05 04:10:27,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:27,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:10:27,465.465 INFO    ] No update needed
[2026-06-05 04:10:27,467.467 INFO    ] Checking for camera pi updates...
[2026-06-05 04:10:27,522.522 INFO    ] 200
[2026-06-05 04:10:27,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:27,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:10:27,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:10:27,610.610 INFO    ] No camera update needed
[2026-06-05 04:10:27,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:10:27,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:10:27,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:10:27,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:10:29,665.665 INFO    ] ================================================
[2026-06-05 04:10:29,680.680 INFO    ] Launching Daemon at Fri Jun  5 04:10:29 IST 2026
[2026-06-05 04:10:29,691.691 INFO    ] ================================================
[2026-06-05 04:10:30,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:10:30
[2026-06-05 04:10:30,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:10:31,152.152 INFO    ] Initializing speech engine...
[2026-06-05 04:10:31,170.170 INFO    ] 2026-06-05 04:10:31
[2026-06-05 04:10:31,446.446 INFO    ] 2026-06-05 04:10:31
[2026-06-05 04:10:31,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:10:31,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:10:31,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:10:31,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:10:31,809.809 INFO    ] time= 05/06/2026 04:10:31
[2026-06-05 04:10:31,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:10:31,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:10:31,892.892 INFO    ] No existing commands found in stream
[2026-06-05 04:10:36,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:10:36,906.906 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 04:10:37,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:10:37,424.424 INFO    ] Checking for system updates...
[2026-06-05 04:10:37,463.463 INFO    ] 200
[2026-06-05 04:10:37,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:37,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:10:37,529.529 INFO    ] No update needed
[2026-06-05 04:10:37,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 04:10:37,569.569 INFO    ] 200
[2026-06-05 04:10:37,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:37,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:10:37,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:10:37,664.664 INFO    ] No camera update needed
[2026-06-05 04:10:37,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:10:37,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:10:37,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:10:37,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:10:39,721.721 INFO    ] ================================================
[2026-06-05 04:10:39,736.736 INFO    ] Launching Daemon at Fri Jun  5 04:10:39 IST 2026
[2026-06-05 04:10:39,747.747 INFO    ] ================================================
[2026-06-05 04:10:40,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:10:40
[2026-06-05 04:10:40,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:10:41,153.153 INFO    ] Initializing speech engine...
[2026-06-05 04:10:41,176.176 INFO    ] 2026-06-05 04:10:41
[2026-06-05 04:10:41,435.435 INFO    ] 2026-06-05 04:10:41
[2026-06-05 04:10:41,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:10:41,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:10:41,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:10:41,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:10:41,773.773 INFO    ] time= 05/06/2026 04:10:41
[2026-06-05 04:10:41,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:10:41,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:10:41,907.907 INFO    ] No existing commands found in stream
[2026-06-05 04:10:46,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:10:46,921.921 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 04:10:49,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:10:49,591.591 INFO    ] Checking for system updates...
[2026-06-05 04:10:49,630.630 INFO    ] 200
[2026-06-05 04:10:49,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:49,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:10:49,688.688 INFO    ] No update needed
[2026-06-05 04:10:49,691.691 INFO    ] Checking for camera pi updates...
[2026-06-05 04:10:49,728.728 INFO    ] 200
[2026-06-05 04:10:49,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:10:49,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:10:49,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:10:49,820.820 INFO    ] No camera update needed
[2026-06-05 04:10:49,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:10:49,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:10:49,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:10:49,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:10:51,875.875 INFO    ] ================================================
[2026-06-05 04:10:51,890.890 INFO    ] Launching Daemon at Fri Jun  5 04:10:51 IST 2026
[2026-06-05 04:10:51,901.901 INFO    ] ================================================
[2026-06-05 04:10:52,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:10:52
[2026-06-05 04:10:53,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:10:53,576.576 INFO    ] Initializing speech engine...
[2026-06-05 04:10:53,592.592 INFO    ] 2026-06-05 04:10:53
[2026-06-05 04:10:53,859.859 INFO    ] 2026-06-05 04:10:53
[2026-06-05 04:10:53,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:10:54,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:10:54,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:10:54,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:10:54,286.286 INFO    ] time= 05/06/2026 04:10:54
[2026-06-05 04:10:54,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:10:54,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:10:54,459.459 INFO    ] No existing commands found in stream
[2026-06-05 04:10:59,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:10:59,492.492 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 04:11:02,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:11:02,883.883 INFO    ] Checking for system updates...
[2026-06-05 04:11:02,923.923 INFO    ] 200
[2026-06-05 04:11:02,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:02,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:11:03,002.002 INFO    ] No update needed
[2026-06-05 04:11:03,004.004 INFO    ] Checking for camera pi updates...
[2026-06-05 04:11:03,043.043 INFO    ] 200
[2026-06-05 04:11:03,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:03,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:11:03,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:11:03,125.125 INFO    ] No camera update needed
[2026-06-05 04:11:03,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:11:03,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:11:03,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:11:03,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:11:05,179.179 INFO    ] ================================================
[2026-06-05 04:11:05,195.195 INFO    ] Launching Daemon at Fri Jun  5 04:11:05 IST 2026
[2026-06-05 04:11:05,206.206 INFO    ] ================================================
[2026-06-05 04:11:05,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:11:05
[2026-06-05 04:11:06,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:11:06,694.694 INFO    ] Initializing speech engine...
[2026-06-05 04:11:06,703.703 INFO    ] 2026-06-05 04:11:06
[2026-06-05 04:11:06,955.955 INFO    ] 2026-06-05 04:11:06
[2026-06-05 04:11:06,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:11:07,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:11:07,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:11:07,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:11:07,421.421 INFO    ] time= 05/06/2026 04:11:07
[2026-06-05 04:11:07,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:11:07,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:11:07,574.574 INFO    ] No existing commands found in stream
[2026-06-05 04:11:12,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:11:12,589.589 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 04:11:16,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:11:16,661.661 INFO    ] Checking for system updates...
[2026-06-05 04:11:16,703.703 INFO    ] 200
[2026-06-05 04:11:16,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:16,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:11:16,771.771 INFO    ] No update needed
[2026-06-05 04:11:16,774.774 INFO    ] Checking for camera pi updates...
[2026-06-05 04:11:16,813.813 INFO    ] 200
[2026-06-05 04:11:16,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:16,859.859 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:11:16,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:11:16,915.915 INFO    ] No camera update needed
[2026-06-05 04:11:16,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:11:16,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:11:16,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:11:16,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:11:18,976.976 INFO    ] ================================================
[2026-06-05 04:11:18,991.991 INFO    ] Launching Daemon at Fri Jun  5 04:11:18 IST 2026
[2026-06-05 04:11:19,002.002 INFO    ] ================================================
[2026-06-05 04:11:19,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:11:19
[2026-06-05 04:11:20,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:11:20,555.555 INFO    ] Initializing speech engine...
[2026-06-05 04:11:20,564.564 INFO    ] 2026-06-05 04:11:20
[2026-06-05 04:11:20,844.844 INFO    ] 2026-06-05 04:11:20
[2026-06-05 04:11:20,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:11:21,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:11:21,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:11:21,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:11:21,332.332 INFO    ] time= 05/06/2026 04:11:21
[2026-06-05 04:11:21,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:11:21,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:11:21,523.523 INFO    ] No existing commands found in stream
[2026-06-05 04:11:26,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:11:26,551.551 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 04:11:30,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:11:30,764.764 INFO    ] Checking for system updates...
[2026-06-05 04:11:30,806.806 INFO    ] 200
[2026-06-05 04:11:30,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:30,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:11:30,878.878 INFO    ] No update needed
[2026-06-05 04:11:30,882.882 INFO    ] Checking for camera pi updates...
[2026-06-05 04:11:30,920.920 INFO    ] 200
[2026-06-05 04:11:30,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:30,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:11:31,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:11:31,119.119 INFO    ] No camera update needed
[2026-06-05 04:11:31,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:11:31,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:11:31,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:11:31,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:11:33,178.178 INFO    ] ================================================
[2026-06-05 04:11:33,193.193 INFO    ] Launching Daemon at Fri Jun  5 04:11:33 IST 2026
[2026-06-05 04:11:33,204.204 INFO    ] ================================================
[2026-06-05 04:11:33,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:11:33
[2026-06-05 04:11:34,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:11:34,852.852 INFO    ] Initializing speech engine...
[2026-06-05 04:11:34,860.860 INFO    ] 2026-06-05 04:11:34
[2026-06-05 04:11:35,177.177 INFO    ] 2026-06-05 04:11:35
[2026-06-05 04:11:35,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:11:35,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:11:35,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:11:35,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:11:35,681.681 INFO    ] time= 05/06/2026 04:11:35
[2026-06-05 04:11:35,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:11:35,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:11:35,833.833 INFO    ] No existing commands found in stream
[2026-06-05 04:11:40,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:11:40,853.853 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 04:11:44,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:11:44,208.208 INFO    ] Checking for system updates...
[2026-06-05 04:11:44,250.250 INFO    ] 200
[2026-06-05 04:11:44,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:44,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:11:44,316.316 INFO    ] No update needed
[2026-06-05 04:11:44,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 04:11:44,359.359 INFO    ] 200
[2026-06-05 04:11:44,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:44,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:11:44,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:11:44,453.453 INFO    ] No camera update needed
[2026-06-05 04:11:44,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:11:44,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:11:44,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:11:44,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:11:46,509.509 INFO    ] ================================================
[2026-06-05 04:11:46,524.524 INFO    ] Launching Daemon at Fri Jun  5 04:11:46 IST 2026
[2026-06-05 04:11:46,535.535 INFO    ] ================================================
[2026-06-05 04:11:47,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:11:47
[2026-06-05 04:11:47,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:11:47,994.994 INFO    ] Initializing speech engine...
[2026-06-05 04:11:48,000.000 INFO    ] 2026-06-05 04:11:47
[2026-06-05 04:11:48,274.274 INFO    ] 2026-06-05 04:11:48
[2026-06-05 04:11:48,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:11:48,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:11:48,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:11:48,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:11:48,731.731 INFO    ] time= 05/06/2026 04:11:48
[2026-06-05 04:11:48,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:11:48,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:11:48,869.869 INFO    ] No existing commands found in stream
[2026-06-05 04:11:53,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:11:53,883.883 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 04:11:58,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:11:58,047.047 INFO    ] Checking for system updates...
[2026-06-05 04:11:58,087.087 INFO    ] 200
[2026-06-05 04:11:58,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:58,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:11:58,146.146 INFO    ] No update needed
[2026-06-05 04:11:58,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 04:11:58,183.183 INFO    ] 200
[2026-06-05 04:11:58,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:11:58,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:11:58,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:11:58,270.270 INFO    ] No camera update needed
[2026-06-05 04:11:58,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:11:58,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:11:58,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:11:58,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:12:00,327.327 INFO    ] ================================================
[2026-06-05 04:12:00,342.342 INFO    ] Launching Daemon at Fri Jun  5 04:12:00 IST 2026
[2026-06-05 04:12:00,353.353 INFO    ] ================================================
[2026-06-05 04:12:00,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:12:00
[2026-06-05 04:12:01,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:12:02,067.067 INFO    ] Initializing speech engine...
[2026-06-05 04:12:02,080.080 INFO    ] 2026-06-05 04:12:02
[2026-06-05 04:12:02,448.448 INFO    ] 2026-06-05 04:12:02
[2026-06-05 04:12:02,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:12:02,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:12:02,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:12:02,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:12:02,998.998 INFO    ] time= 05/06/2026 04:12:02
[2026-06-05 04:12:03,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:12:03,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:12:03,125.125 INFO    ] No existing commands found in stream
[2026-06-05 04:12:08,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:12:08,161.161 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 04:12:08,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:12:08,680.680 INFO    ] Checking for system updates...
[2026-06-05 04:12:08,716.716 INFO    ] 200
[2026-06-05 04:12:08,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:08,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:12:08,774.774 INFO    ] No update needed
[2026-06-05 04:12:08,777.777 INFO    ] Checking for camera pi updates...
[2026-06-05 04:12:08,811.811 INFO    ] 200
[2026-06-05 04:12:08,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:08,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:12:08,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:12:08,906.906 INFO    ] No camera update needed
[2026-06-05 04:12:08,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:12:08,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:12:08,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:12:08,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:12:10,961.961 INFO    ] ================================================
[2026-06-05 04:12:10,976.976 INFO    ] Launching Daemon at Fri Jun  5 04:12:10 IST 2026
[2026-06-05 04:12:10,987.987 INFO    ] ================================================
[2026-06-05 04:12:11,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:12:11
[2026-06-05 04:12:12,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:12:12,400.400 INFO    ] Initializing speech engine...
[2026-06-05 04:12:12,402.402 INFO    ] 2026-06-05 04:12:12
[2026-06-05 04:12:12,671.671 INFO    ] 2026-06-05 04:12:12
[2026-06-05 04:12:12,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:12:12,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:12:12,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:12:13,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:12:13,023.023 INFO    ] time= 05/06/2026 04:12:13
[2026-06-05 04:12:13,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:12:13,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:12:13,138.138 INFO    ] No existing commands found in stream
[2026-06-05 04:12:18,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:12:18,154.154 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 04:12:20,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:12:20,461.461 INFO    ] Checking for system updates...
[2026-06-05 04:12:20,497.497 INFO    ] 200
[2026-06-05 04:12:20,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:20,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:12:20,556.556 INFO    ] No update needed
[2026-06-05 04:12:20,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 04:12:20,596.596 INFO    ] 200
[2026-06-05 04:12:20,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:20,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:12:20,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:12:20,683.683 INFO    ] No camera update needed
[2026-06-05 04:12:20,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:12:20,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:12:20,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:12:20,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:12:22,741.741 INFO    ] ================================================
[2026-06-05 04:12:22,756.756 INFO    ] Launching Daemon at Fri Jun  5 04:12:22 IST 2026
[2026-06-05 04:12:22,767.767 INFO    ] ================================================
[2026-06-05 04:12:23,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:12:23
[2026-06-05 04:12:23,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:12:24,164.164 INFO    ] Initializing speech engine...
[2026-06-05 04:12:24,177.177 INFO    ] 2026-06-05 04:12:24
[2026-06-05 04:12:24,463.463 INFO    ] 2026-06-05 04:12:24
[2026-06-05 04:12:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:12:24,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:12:24,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:12:24,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:12:24,911.911 INFO    ] time= 05/06/2026 04:12:24
[2026-06-05 04:12:24,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:12:24,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:12:25,111.111 INFO    ] No existing commands found in stream
[2026-06-05 04:12:30,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:12:30,125.125 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 04:12:32,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:12:32,395.395 INFO    ] Checking for system updates...
[2026-06-05 04:12:32,440.440 INFO    ] 200
[2026-06-05 04:12:32,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:32,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:12:32,513.513 INFO    ] No update needed
[2026-06-05 04:12:32,516.516 INFO    ] Checking for camera pi updates...
[2026-06-05 04:12:32,550.550 INFO    ] 200
[2026-06-05 04:12:32,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:32,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:12:32,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:12:32,626.626 INFO    ] No camera update needed
[2026-06-05 04:12:32,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:12:32,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:12:32,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:12:32,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:12:34,684.684 INFO    ] ================================================
[2026-06-05 04:12:34,699.699 INFO    ] Launching Daemon at Fri Jun  5 04:12:34 IST 2026
[2026-06-05 04:12:34,709.709 INFO    ] ================================================
[2026-06-05 04:12:35,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:12:35
[2026-06-05 04:12:35,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:12:36,119.119 INFO    ] Initializing speech engine...
[2026-06-05 04:12:36,133.133 INFO    ] 2026-06-05 04:12:36
[2026-06-05 04:12:36,431.431 INFO    ] 2026-06-05 04:12:36
[2026-06-05 04:12:36,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:12:36,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:12:36,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:12:36,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:12:36,816.816 INFO    ] time= 05/06/2026 04:12:36
[2026-06-05 04:12:36,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:12:36,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:12:36,882.882 INFO    ] No existing commands found in stream
[2026-06-05 04:12:41,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:12:41,910.910 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 04:12:45,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:12:45,231.231 INFO    ] Checking for system updates...
[2026-06-05 04:12:45,271.271 INFO    ] 200
[2026-06-05 04:12:45,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:45,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:12:45,335.335 INFO    ] No update needed
[2026-06-05 04:12:45,337.337 INFO    ] Checking for camera pi updates...
[2026-06-05 04:12:45,371.371 INFO    ] 200
[2026-06-05 04:12:45,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:45,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:12:45,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:12:45,469.469 INFO    ] No camera update needed
[2026-06-05 04:12:45,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:12:45,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:12:45,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:12:45,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:12:47,524.524 INFO    ] ================================================
[2026-06-05 04:12:47,541.541 INFO    ] Launching Daemon at Fri Jun  5 04:12:47 IST 2026
[2026-06-05 04:12:47,560.560 INFO    ] ================================================
[2026-06-05 04:12:48,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:12:48
[2026-06-05 04:12:48,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:12:48,984.984 INFO    ] Initializing speech engine...
[2026-06-05 04:12:49,007.007 INFO    ] 2026-06-05 04:12:48
[2026-06-05 04:12:49,263.263 INFO    ] 2026-06-05 04:12:49
[2026-06-05 04:12:49,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:12:49,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:12:49,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:12:49,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:12:49,685.685 INFO    ] time= 05/06/2026 04:12:49
[2026-06-05 04:12:49,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:12:49,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:12:49,853.853 INFO    ] No existing commands found in stream
[2026-06-05 04:12:54,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:12:54,881.881 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 04:12:55,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:12:55,946.946 INFO    ] Checking for system updates...
[2026-06-05 04:12:55,983.983 INFO    ] 200
[2026-06-05 04:12:55,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:56,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:12:56,040.040 INFO    ] No update needed
[2026-06-05 04:12:56,043.043 INFO    ] Checking for camera pi updates...
[2026-06-05 04:12:56,081.081 INFO    ] 200
[2026-06-05 04:12:56,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:12:56,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:12:56,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:12:56,178.178 INFO    ] No camera update needed
[2026-06-05 04:12:56,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:12:56,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:12:56,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:12:56,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:12:58,233.233 INFO    ] ================================================
[2026-06-05 04:12:58,248.248 INFO    ] Launching Daemon at Fri Jun  5 04:12:58 IST 2026
[2026-06-05 04:12:58,259.259 INFO    ] ================================================
[2026-06-05 04:12:58,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:12:58
[2026-06-05 04:12:59,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:12:59,740.740 INFO    ] Initializing speech engine...
[2026-06-05 04:12:59,747.747 INFO    ] 2026-06-05 04:12:59
[2026-06-05 04:13:00,005.005 INFO    ] 2026-06-05 04:12:59
[2026-06-05 04:13:00,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:13:00,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:13:00,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:13:00,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:13:00,463.463 INFO    ] time= 05/06/2026 04:13:00
[2026-06-05 04:13:00,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:13:00,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:13:00,606.606 INFO    ] No existing commands found in stream
[2026-06-05 04:13:05,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:13:05,620.620 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 04:13:08,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:13:08,412.412 INFO    ] Checking for system updates...
[2026-06-05 04:13:08,449.449 INFO    ] 200
[2026-06-05 04:13:08,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:08,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:13:08,516.516 INFO    ] No update needed
[2026-06-05 04:13:08,519.519 INFO    ] Checking for camera pi updates...
[2026-06-05 04:13:08,554.554 INFO    ] 200
[2026-06-05 04:13:08,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:08,605.605 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:13:08,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:13:08,650.650 INFO    ] No camera update needed
[2026-06-05 04:13:08,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:13:08,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:13:08,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:13:08,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:13:10,713.713 INFO    ] ================================================
[2026-06-05 04:13:10,728.728 INFO    ] Launching Daemon at Fri Jun  5 04:13:10 IST 2026
[2026-06-05 04:13:10,739.739 INFO    ] ================================================
[2026-06-05 04:13:11,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:13:11
[2026-06-05 04:13:12,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:13:12,390.390 INFO    ] Initializing speech engine...
[2026-06-05 04:13:12,405.405 INFO    ] 2026-06-05 04:13:12
[2026-06-05 04:13:12,715.715 INFO    ] 2026-06-05 04:13:12
[2026-06-05 04:13:12,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:13:12,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:13:13,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:13:13,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:13:13,226.226 INFO    ] time= 05/06/2026 04:13:13
[2026-06-05 04:13:13,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:13:13,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:13:13,383.383 INFO    ] No existing commands found in stream
[2026-06-05 04:13:18,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:13:18,406.406 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 04:13:21,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:13:21,468.468 INFO    ] Checking for system updates...
[2026-06-05 04:13:21,517.517 INFO    ] 200
[2026-06-05 04:13:21,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:21,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:13:21,592.592 INFO    ] No update needed
[2026-06-05 04:13:21,595.595 INFO    ] Checking for camera pi updates...
[2026-06-05 04:13:21,641.641 INFO    ] 200
[2026-06-05 04:13:21,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:21,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:13:21,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:13:21,743.743 INFO    ] No camera update needed
[2026-06-05 04:13:21,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:13:21,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:13:21,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:13:21,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:13:23,801.801 INFO    ] ================================================
[2026-06-05 04:13:23,817.817 INFO    ] Launching Daemon at Fri Jun  5 04:13:23 IST 2026
[2026-06-05 04:13:23,828.828 INFO    ] ================================================
[2026-06-05 04:13:24,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:13:24
[2026-06-05 04:13:25,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:13:25,356.356 INFO    ] Initializing speech engine...
[2026-06-05 04:13:25,363.363 INFO    ] 2026-06-05 04:13:25
[2026-06-05 04:13:25,648.648 INFO    ] 2026-06-05 04:13:25
[2026-06-05 04:13:25,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:13:25,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:13:25,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:13:26,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:13:26,129.129 INFO    ] time= 05/06/2026 04:13:26
[2026-06-05 04:13:26,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:13:26,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:13:26,326.326 INFO    ] No existing commands found in stream
[2026-06-05 04:13:31,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:13:31,358.358 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 04:13:33,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:13:33,179.179 INFO    ] Checking for system updates...
[2026-06-05 04:13:33,215.215 INFO    ] 200
[2026-06-05 04:13:33,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:33,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:13:33,275.275 INFO    ] No update needed
[2026-06-05 04:13:33,277.277 INFO    ] Checking for camera pi updates...
[2026-06-05 04:13:33,315.315 INFO    ] 200
[2026-06-05 04:13:33,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:33,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:13:33,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:13:33,421.421 INFO    ] No camera update needed
[2026-06-05 04:13:33,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:13:33,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:13:33,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:13:33,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:13:35,477.477 INFO    ] ================================================
[2026-06-05 04:13:35,492.492 INFO    ] Launching Daemon at Fri Jun  5 04:13:35 IST 2026
[2026-06-05 04:13:35,502.502 INFO    ] ================================================
[2026-06-05 04:13:36,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:13:36
[2026-06-05 04:13:36,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:13:36,918.918 INFO    ] Initializing speech engine...
[2026-06-05 04:13:36,934.934 INFO    ] 2026-06-05 04:13:36
[2026-06-05 04:13:37,222.222 INFO    ] 2026-06-05 04:13:37
[2026-06-05 04:13:37,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:13:37,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:13:37,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:13:37,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:13:37,605.605 INFO    ] time= 05/06/2026 04:13:37
[2026-06-05 04:13:37,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:13:37,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:13:37,733.733 INFO    ] No existing commands found in stream
[2026-06-05 04:13:42,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:13:42,747.747 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 04:13:44,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:13:44,507.507 INFO    ] Checking for system updates...
[2026-06-05 04:13:44,543.543 INFO    ] 200
[2026-06-05 04:13:44,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:44,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:13:44,604.604 INFO    ] No update needed
[2026-06-05 04:13:44,607.607 INFO    ] Checking for camera pi updates...
[2026-06-05 04:13:44,643.643 INFO    ] 200
[2026-06-05 04:13:44,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:44,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:13:44,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:13:44,741.741 INFO    ] No camera update needed
[2026-06-05 04:13:44,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:13:44,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:13:44,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:13:44,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:13:46,803.803 INFO    ] ================================================
[2026-06-05 04:13:46,818.818 INFO    ] Launching Daemon at Fri Jun  5 04:13:46 IST 2026
[2026-06-05 04:13:46,828.828 INFO    ] ================================================
[2026-06-05 04:13:47,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:13:47
[2026-06-05 04:13:47,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:13:48,239.239 INFO    ] Initializing speech engine...
[2026-06-05 04:13:48,249.249 INFO    ] 2026-06-05 04:13:48
[2026-06-05 04:13:48,546.546 INFO    ] 2026-06-05 04:13:48
[2026-06-05 04:13:48,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:13:48,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:13:48,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:13:48,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:13:48,930.930 INFO    ] time= 05/06/2026 04:13:48
[2026-06-05 04:13:48,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:13:48,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:13:49,056.056 INFO    ] No existing commands found in stream
[2026-06-05 04:13:54,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:13:54,071.071 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 04:13:56,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:13:56,943.943 INFO    ] Checking for system updates...
[2026-06-05 04:13:56,984.984 INFO    ] 200
[2026-06-05 04:13:56,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:57,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:13:57,053.053 INFO    ] No update needed
[2026-06-05 04:13:57,055.055 INFO    ] Checking for camera pi updates...
[2026-06-05 04:13:57,089.089 INFO    ] 200
[2026-06-05 04:13:57,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:13:57,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:13:57,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:13:57,180.180 INFO    ] No camera update needed
[2026-06-05 04:13:57,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:13:57,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:13:57,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:13:57,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:13:59,238.238 INFO    ] ================================================
[2026-06-05 04:13:59,257.257 INFO    ] Launching Daemon at Fri Jun  5 04:13:59 IST 2026
[2026-06-05 04:13:59,273.273 INFO    ] ================================================
[2026-06-05 04:13:59,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:13:59
[2026-06-05 04:14:00,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:14:00,925.925 INFO    ] Initializing speech engine...
[2026-06-05 04:14:00,934.934 INFO    ] 2026-06-05 04:14:00
[2026-06-05 04:14:01,220.220 INFO    ] 2026-06-05 04:14:01
[2026-06-05 04:14:01,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:14:01,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:14:01,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:14:01,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:14:01,661.661 INFO    ] time= 05/06/2026 04:14:01
[2026-06-05 04:14:01,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:14:01,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:14:01,746.746 INFO    ] No existing commands found in stream
[2026-06-05 04:14:06,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:14:06,760.760 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 04:14:07,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:14:07,285.285 INFO    ] Checking for system updates...
[2026-06-05 04:14:07,321.321 INFO    ] 200
[2026-06-05 04:14:07,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:07,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:14:07,381.381 INFO    ] No update needed
[2026-06-05 04:14:07,383.383 INFO    ] Checking for camera pi updates...
[2026-06-05 04:14:07,420.420 INFO    ] 200
[2026-06-05 04:14:07,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:07,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:14:07,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:14:07,509.509 INFO    ] No camera update needed
[2026-06-05 04:14:07,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:14:07,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:14:07,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:14:07,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:14:09,571.571 INFO    ] ================================================
[2026-06-05 04:14:09,587.587 INFO    ] Launching Daemon at Fri Jun  5 04:14:09 IST 2026
[2026-06-05 04:14:09,598.598 INFO    ] ================================================
[2026-06-05 04:14:10,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:14:10
[2026-06-05 04:14:10,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:14:10,999.999 INFO    ] Initializing speech engine...
[2026-06-05 04:14:11,007.007 INFO    ] 2026-06-05 04:14:11
[2026-06-05 04:14:11,280.280 INFO    ] 2026-06-05 04:14:11
[2026-06-05 04:14:11,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:14:11,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:14:11,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:14:11,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:14:11,653.653 INFO    ] time= 05/06/2026 04:14:11
[2026-06-05 04:14:11,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:14:11,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:14:11,732.732 INFO    ] No existing commands found in stream
[2026-06-05 04:14:16,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:14:16,747.747 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 04:14:17,987.987 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:14:17,994.994 INFO    ] Checking for system updates...
[2026-06-05 04:14:18,041.041 INFO    ] 200
[2026-06-05 04:14:18,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:18,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:14:18,111.111 INFO    ] No update needed
[2026-06-05 04:14:18,113.113 INFO    ] Checking for camera pi updates...
[2026-06-05 04:14:18,148.148 INFO    ] 200
[2026-06-05 04:14:18,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:18,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:14:18,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:14:18,239.239 INFO    ] No camera update needed
[2026-06-05 04:14:18,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:14:18,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:14:18,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:14:18,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:14:20,297.297 INFO    ] ================================================
[2026-06-05 04:14:20,312.312 INFO    ] Launching Daemon at Fri Jun  5 04:14:20 IST 2026
[2026-06-05 04:14:20,323.323 INFO    ] ================================================
[2026-06-05 04:14:20,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:14:20
[2026-06-05 04:14:21,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:14:21,855.855 INFO    ] Initializing speech engine...
[2026-06-05 04:14:21,869.869 INFO    ] 2026-06-05 04:14:21
[2026-06-05 04:14:22,152.152 INFO    ] 2026-06-05 04:14:22
[2026-06-05 04:14:22,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:14:22,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:14:22,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:14:22,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:14:22,600.600 INFO    ] time= 05/06/2026 04:14:22
[2026-06-05 04:14:22,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:14:22,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:14:22,757.757 INFO    ] No existing commands found in stream
[2026-06-05 04:14:27,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:14:27,776.776 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 04:14:30,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:14:30,360.360 INFO    ] Checking for system updates...
[2026-06-05 04:14:30,400.400 INFO    ] 200
[2026-06-05 04:14:30,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:30,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:14:30,462.462 INFO    ] No update needed
[2026-06-05 04:14:30,465.465 INFO    ] Checking for camera pi updates...
[2026-06-05 04:14:30,503.503 INFO    ] 200
[2026-06-05 04:14:30,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:30,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:14:30,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:14:30,597.597 INFO    ] No camera update needed
[2026-06-05 04:14:30,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:14:30,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:14:30,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:14:30,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:14:32,653.653 INFO    ] ================================================
[2026-06-05 04:14:32,669.669 INFO    ] Launching Daemon at Fri Jun  5 04:14:32 IST 2026
[2026-06-05 04:14:32,680.680 INFO    ] ================================================
[2026-06-05 04:14:33,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:14:33
[2026-06-05 04:14:33,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:14:34,148.148 INFO    ] Initializing speech engine...
[2026-06-05 04:14:34,157.157 INFO    ] 2026-06-05 04:14:34
[2026-06-05 04:14:34,431.431 INFO    ] 2026-06-05 04:14:34
[2026-06-05 04:14:34,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:14:34,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:14:34,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:14:34,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:14:34,809.809 INFO    ] time= 05/06/2026 04:14:34
[2026-06-05 04:14:34,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:14:34,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:14:34,974.974 INFO    ] No existing commands found in stream
[2026-06-05 04:14:39,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:14:40,001.001 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 04:14:42,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:14:42,075.075 INFO    ] Checking for system updates...
[2026-06-05 04:14:42,112.112 INFO    ] 200
[2026-06-05 04:14:42,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:42,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:14:42,181.181 INFO    ] No update needed
[2026-06-05 04:14:42,183.183 INFO    ] Checking for camera pi updates...
[2026-06-05 04:14:42,218.218 INFO    ] 200
[2026-06-05 04:14:42,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:42,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:14:42,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:14:42,321.321 INFO    ] No camera update needed
[2026-06-05 04:14:42,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:14:42,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:14:42,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:14:42,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:14:44,379.379 INFO    ] ================================================
[2026-06-05 04:14:44,394.394 INFO    ] Launching Daemon at Fri Jun  5 04:14:44 IST 2026
[2026-06-05 04:14:44,405.405 INFO    ] ================================================
[2026-06-05 04:14:45,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:14:45
[2026-06-05 04:14:45,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:14:46,102.102 INFO    ] Initializing speech engine...
[2026-06-05 04:14:46,116.116 INFO    ] 2026-06-05 04:14:46
[2026-06-05 04:14:46,412.412 INFO    ] 2026-06-05 04:14:46
[2026-06-05 04:14:46,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:14:46,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:14:46,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:14:46,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:14:46,960.960 INFO    ] time= 05/06/2026 04:14:46
[2026-06-05 04:14:46,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:14:46,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:14:47,123.123 INFO    ] No existing commands found in stream
[2026-06-05 04:14:52,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:14:52,157.157 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 04:14:54,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:14:54,972.972 INFO    ] Checking for system updates...
[2026-06-05 04:14:55,009.009 INFO    ] 200
[2026-06-05 04:14:55,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:55,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:14:55,076.076 INFO    ] No update needed
[2026-06-05 04:14:55,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 04:14:55,117.117 INFO    ] 200
[2026-06-05 04:14:55,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:14:55,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:14:55,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:14:55,213.213 INFO    ] No camera update needed
[2026-06-05 04:14:55,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:14:55,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:14:55,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:14:55,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:14:57,267.267 INFO    ] ================================================
[2026-06-05 04:14:57,282.282 INFO    ] Launching Daemon at Fri Jun  5 04:14:57 IST 2026
[2026-06-05 04:14:57,293.293 INFO    ] ================================================
[2026-06-05 04:14:57,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:14:57
[2026-06-05 04:14:58,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:14:58,847.847 INFO    ] Initializing speech engine...
[2026-06-05 04:14:58,853.853 INFO    ] 2026-06-05 04:14:58
[2026-06-05 04:14:59,128.128 INFO    ] 2026-06-05 04:14:59
[2026-06-05 04:14:59,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:14:59,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:14:59,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:14:59,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:14:59,493.493 INFO    ] time= 05/06/2026 04:14:59
[2026-06-05 04:14:59,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:14:59,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:14:59,582.582 INFO    ] No existing commands found in stream
[2026-06-05 04:15:04,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:15:04,620.620 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 04:15:07,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:15:07,216.216 INFO    ] Checking for system updates...
[2026-06-05 04:15:07,257.257 INFO    ] 200
[2026-06-05 04:15:07,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:07,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:15:07,316.316 INFO    ] No update needed
[2026-06-05 04:15:07,318.318 INFO    ] Checking for camera pi updates...
[2026-06-05 04:15:07,352.352 INFO    ] 200
[2026-06-05 04:15:07,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:07,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:15:07,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:15:07,450.450 INFO    ] No camera update needed
[2026-06-05 04:15:07,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:15:07,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:15:07,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:15:07,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:15:09,507.507 INFO    ] ================================================
[2026-06-05 04:15:09,522.522 INFO    ] Launching Daemon at Fri Jun  5 04:15:09 IST 2026
[2026-06-05 04:15:09,534.534 INFO    ] ================================================
[2026-06-05 04:15:10,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:15:10
[2026-06-05 04:15:10,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:15:10,992.992 INFO    ] Initializing speech engine...
[2026-06-05 04:15:11,003.003 INFO    ] 2026-06-05 04:15:10
[2026-06-05 04:15:11,266.266 INFO    ] 2026-06-05 04:15:11
[2026-06-05 04:15:11,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:15:11,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:15:11,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:15:11,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:15:11,756.756 INFO    ] time= 05/06/2026 04:15:11
[2026-06-05 04:15:11,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:15:11,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:15:11,939.939 INFO    ] No existing commands found in stream
[2026-06-05 04:15:16,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:15:16,970.970 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 04:15:21,206.206 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:15:21,208.208 INFO    ] Checking for system updates...
[2026-06-05 04:15:21,249.249 INFO    ] 200
[2026-06-05 04:15:21,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:21,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:15:21,308.308 INFO    ] No update needed
[2026-06-05 04:15:21,311.311 INFO    ] Checking for camera pi updates...
[2026-06-05 04:15:21,349.349 INFO    ] 200
[2026-06-05 04:15:21,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:21,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:15:21,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:15:21,445.445 INFO    ] No camera update needed
[2026-06-05 04:15:21,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:15:21,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:15:21,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:15:21,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:15:23,500.500 INFO    ] ================================================
[2026-06-05 04:15:23,516.516 INFO    ] Launching Daemon at Fri Jun  5 04:15:23 IST 2026
[2026-06-05 04:15:23,527.527 INFO    ] ================================================
[2026-06-05 04:15:24,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:15:24
[2026-06-05 04:15:24,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:15:24,972.972 INFO    ] Initializing speech engine...
[2026-06-05 04:15:24,986.986 INFO    ] 2026-06-05 04:15:24
[2026-06-05 04:15:25,279.279 INFO    ] 2026-06-05 04:15:25
[2026-06-05 04:15:25,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:15:25,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:15:25,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:15:25,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:15:25,672.672 INFO    ] time= 05/06/2026 04:15:25
[2026-06-05 04:15:25,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:15:25,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:15:25,794.794 INFO    ] No existing commands found in stream
[2026-06-05 04:15:30,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:15:30,816.816 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 04:15:32,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:15:32,344.344 INFO    ] Checking for system updates...
[2026-06-05 04:15:32,384.384 INFO    ] 200
[2026-06-05 04:15:32,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:32,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:15:32,461.461 INFO    ] No update needed
[2026-06-05 04:15:32,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 04:15:32,505.505 INFO    ] 200
[2026-06-05 04:15:32,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:32,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:15:32,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:15:32,603.603 INFO    ] No camera update needed
[2026-06-05 04:15:32,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:15:32,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:15:32,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:15:32,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:15:34,664.664 INFO    ] ================================================
[2026-06-05 04:15:34,680.680 INFO    ] Launching Daemon at Fri Jun  5 04:15:34 IST 2026
[2026-06-05 04:15:34,691.691 INFO    ] ================================================
[2026-06-05 04:15:35,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:15:35
[2026-06-05 04:15:36,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:15:36,369.369 INFO    ] Initializing speech engine...
[2026-06-05 04:15:36,380.380 INFO    ] 2026-06-05 04:15:36
[2026-06-05 04:15:36,695.695 INFO    ] 2026-06-05 04:15:36
[2026-06-05 04:15:36,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:15:36,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:15:37,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:15:37,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:15:37,205.205 INFO    ] time= 05/06/2026 04:15:37
[2026-06-05 04:15:37,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:15:37,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:15:37,357.357 INFO    ] No existing commands found in stream
[2026-06-05 04:15:42,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:15:42,378.378 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 04:15:44,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:15:44,842.842 INFO    ] Checking for system updates...
[2026-06-05 04:15:44,884.884 INFO    ] 200
[2026-06-05 04:15:44,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:44,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:15:44,951.951 INFO    ] No update needed
[2026-06-05 04:15:44,954.954 INFO    ] Checking for camera pi updates...
[2026-06-05 04:15:44,990.990 INFO    ] 200
[2026-06-05 04:15:44,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:45,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:15:45,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:15:45,192.192 INFO    ] No camera update needed
[2026-06-05 04:15:45,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:15:45,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:15:45,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:15:45,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:15:47,251.251 INFO    ] ================================================
[2026-06-05 04:15:47,266.266 INFO    ] Launching Daemon at Fri Jun  5 04:15:47 IST 2026
[2026-06-05 04:15:47,277.277 INFO    ] ================================================
[2026-06-05 04:15:47,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:15:47
[2026-06-05 04:15:48,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:15:48,861.861 INFO    ] Initializing speech engine...
[2026-06-05 04:15:48,869.869 INFO    ] 2026-06-05 04:15:48
[2026-06-05 04:15:49,167.167 INFO    ] 2026-06-05 04:15:49
[2026-06-05 04:15:49,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:15:49,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:15:49,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:15:49,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:15:49,563.563 INFO    ] time= 05/06/2026 04:15:49
[2026-06-05 04:15:49,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:15:49,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:15:49,646.646 INFO    ] No existing commands found in stream
[2026-06-05 04:15:54,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:15:54,660.660 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 04:15:55,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:15:55,134.134 INFO    ] Checking for system updates...
[2026-06-05 04:15:55,170.170 INFO    ] 200
[2026-06-05 04:15:55,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:55,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:15:55,235.235 INFO    ] No update needed
[2026-06-05 04:15:55,238.238 INFO    ] Checking for camera pi updates...
[2026-06-05 04:15:55,271.271 INFO    ] 200
[2026-06-05 04:15:55,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:15:55,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:15:55,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:15:55,369.369 INFO    ] No camera update needed
[2026-06-05 04:15:55,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:15:55,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:15:55,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:15:55,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:15:57,426.426 INFO    ] ================================================
[2026-06-05 04:15:57,442.442 INFO    ] Launching Daemon at Fri Jun  5 04:15:57 IST 2026
[2026-06-05 04:15:57,453.453 INFO    ] ================================================
[2026-06-05 04:15:58,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:15:58
[2026-06-05 04:15:58,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:15:58,880.880 INFO    ] Initializing speech engine...
[2026-06-05 04:15:58,889.889 INFO    ] 2026-06-05 04:15:58
[2026-06-05 04:15:59,135.135 INFO    ] 2026-06-05 04:15:59
[2026-06-05 04:15:59,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:15:59,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:15:59,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:15:59,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:15:59,606.606 INFO    ] time= 05/06/2026 04:15:59
[2026-06-05 04:15:59,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:15:59,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:15:59,766.766 INFO    ] No existing commands found in stream
[2026-06-05 04:16:04,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:16:04,781.781 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 04:16:05,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:16:05,851.851 INFO    ] Checking for system updates...
[2026-06-05 04:16:05,892.892 INFO    ] 200
[2026-06-05 04:16:05,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:05,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:16:05,966.966 INFO    ] No update needed
[2026-06-05 04:16:05,968.968 INFO    ] Checking for camera pi updates...
[2026-06-05 04:16:06,002.002 INFO    ] 200
[2026-06-05 04:16:06,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:06,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:16:06,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:16:06,092.092 INFO    ] No camera update needed
[2026-06-05 04:16:06,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:16:06,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:16:06,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:16:06,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:16:08,157.157 INFO    ] ================================================
[2026-06-05 04:16:08,173.173 INFO    ] Launching Daemon at Fri Jun  5 04:16:08 IST 2026
[2026-06-05 04:16:08,183.183 INFO    ] ================================================
[2026-06-05 04:16:08,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:16:08
[2026-06-05 04:16:09,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:16:09,609.609 INFO    ] Initializing speech engine...
[2026-06-05 04:16:09,618.618 INFO    ] 2026-06-05 04:16:09
[2026-06-05 04:16:09,915.915 INFO    ] 2026-06-05 04:16:09
[2026-06-05 04:16:09,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:16:10,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:16:10,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:16:10,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:16:10,301.301 INFO    ] time= 05/06/2026 04:16:10
[2026-06-05 04:16:10,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:16:10,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:16:10,427.427 INFO    ] No existing commands found in stream
[2026-06-05 04:16:15,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:16:15,442.442 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 04:16:17,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:16:17,907.907 INFO    ] Checking for system updates...
[2026-06-05 04:16:17,943.943 INFO    ] 200
[2026-06-05 04:16:17,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:18,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:16:18,003.003 INFO    ] No update needed
[2026-06-05 04:16:18,005.005 INFO    ] Checking for camera pi updates...
[2026-06-05 04:16:18,040.040 INFO    ] 200
[2026-06-05 04:16:18,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:18,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:16:18,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:16:18,139.139 INFO    ] No camera update needed
[2026-06-05 04:16:18,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:16:18,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:16:18,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:16:18,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:16:20,196.196 INFO    ] ================================================
[2026-06-05 04:16:20,211.211 INFO    ] Launching Daemon at Fri Jun  5 04:16:20 IST 2026
[2026-06-05 04:16:20,222.222 INFO    ] ================================================
[2026-06-05 04:16:20,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:16:20
[2026-06-05 04:16:21,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:16:21,636.636 INFO    ] Initializing speech engine...
[2026-06-05 04:16:21,644.644 INFO    ] 2026-06-05 04:16:21
[2026-06-05 04:16:21,939.939 INFO    ] 2026-06-05 04:16:21
[2026-06-05 04:16:21,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:16:22,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:16:22,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:16:22,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:16:22,327.327 INFO    ] time= 05/06/2026 04:16:22
[2026-06-05 04:16:22,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:16:22,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:16:22,454.454 INFO    ] No existing commands found in stream
[2026-06-05 04:16:27,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:16:27,469.469 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 04:16:28,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:16:28,400.400 INFO    ] Checking for system updates...
[2026-06-05 04:16:28,440.440 INFO    ] 200
[2026-06-05 04:16:28,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:28,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:16:28,506.506 INFO    ] No update needed
[2026-06-05 04:16:28,508.508 INFO    ] Checking for camera pi updates...
[2026-06-05 04:16:28,543.543 INFO    ] 200
[2026-06-05 04:16:28,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:28,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:16:28,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:16:28,643.643 INFO    ] No camera update needed
[2026-06-05 04:16:28,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:16:28,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:16:28,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:16:28,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:16:30,701.701 INFO    ] ================================================
[2026-06-05 04:16:30,716.716 INFO    ] Launching Daemon at Fri Jun  5 04:16:30 IST 2026
[2026-06-05 04:16:30,727.727 INFO    ] ================================================
[2026-06-05 04:16:31,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:16:31
[2026-06-05 04:16:31,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:16:32,264.264 INFO    ] Initializing speech engine...
[2026-06-05 04:16:32,275.275 INFO    ] 2026-06-05 04:16:32
[2026-06-05 04:16:32,571.571 INFO    ] 2026-06-05 04:16:32
[2026-06-05 04:16:32,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:16:32,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:16:32,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:16:33,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:16:33,109.109 INFO    ] time= 05/06/2026 04:16:33
[2026-06-05 04:16:33,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:16:33,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:16:33,280.280 INFO    ] No existing commands found in stream
[2026-06-05 04:16:38,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:16:38,299.299 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 04:16:40,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:16:40,865.865 INFO    ] Checking for system updates...
[2026-06-05 04:16:40,905.905 INFO    ] 200
[2026-06-05 04:16:40,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:40,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:16:40,964.964 INFO    ] No update needed
[2026-06-05 04:16:40,967.967 INFO    ] Checking for camera pi updates...
[2026-06-05 04:16:41,004.004 INFO    ] 200
[2026-06-05 04:16:41,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:41,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:16:41,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:16:41,100.100 INFO    ] No camera update needed
[2026-06-05 04:16:41,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:16:41,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:16:41,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:16:41,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:16:43,156.156 INFO    ] ================================================
[2026-06-05 04:16:43,172.172 INFO    ] Launching Daemon at Fri Jun  5 04:16:43 IST 2026
[2026-06-05 04:16:43,183.183 INFO    ] ================================================
[2026-06-05 04:16:43,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:16:43
[2026-06-05 04:16:44,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:16:44,637.637 INFO    ] Initializing speech engine...
[2026-06-05 04:16:44,661.661 INFO    ] 2026-06-05 04:16:44
[2026-06-05 04:16:44,941.941 INFO    ] 2026-06-05 04:16:44
[2026-06-05 04:16:44,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:16:45,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:16:45,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:16:45,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:16:45,340.340 INFO    ] time= 05/06/2026 04:16:45
[2026-06-05 04:16:45,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:16:45,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:16:45,451.451 INFO    ] No existing commands found in stream
[2026-06-05 04:16:50,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:16:50,466.466 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 04:16:54,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:16:54,381.381 INFO    ] Checking for system updates...
[2026-06-05 04:16:54,421.421 INFO    ] 200
[2026-06-05 04:16:54,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:54,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:16:54,480.480 INFO    ] No update needed
[2026-06-05 04:16:54,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 04:16:54,521.521 INFO    ] 200
[2026-06-05 04:16:54,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:16:54,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:16:54,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:16:54,612.612 INFO    ] No camera update needed
[2026-06-05 04:16:54,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:16:54,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:16:54,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:16:54,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:16:56,670.670 INFO    ] ================================================
[2026-06-05 04:16:56,684.684 INFO    ] Launching Daemon at Fri Jun  5 04:16:56 IST 2026
[2026-06-05 04:16:56,695.695 INFO    ] ================================================
[2026-06-05 04:16:57,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:16:57
[2026-06-05 04:16:58,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:16:58,329.329 INFO    ] Initializing speech engine...
[2026-06-05 04:16:58,336.336 INFO    ] 2026-06-05 04:16:58
[2026-06-05 04:16:58,618.618 INFO    ] 2026-06-05 04:16:58
[2026-06-05 04:16:58,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:16:58,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:16:58,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:16:59,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:16:59,074.074 INFO    ] time= 05/06/2026 04:16:59
[2026-06-05 04:16:59,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:16:59,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:16:59,230.230 INFO    ] No existing commands found in stream
[2026-06-05 04:17:04,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:17:04,240.240 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 04:17:05,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:17:05,683.683 INFO    ] Checking for system updates...
[2026-06-05 04:17:05,720.720 INFO    ] 200
[2026-06-05 04:17:05,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:05,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:05,788.788 INFO    ] No update needed
[2026-06-05 04:17:05,791.791 INFO    ] Checking for camera pi updates...
[2026-06-05 04:17:05,829.829 INFO    ] 200
[2026-06-05 04:17:05,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:05,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:17:05,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:05,929.929 INFO    ] No camera update needed
[2026-06-05 04:17:05,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:17:05,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:17:05,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:17:05,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:17:07,984.984 INFO    ] ================================================
[2026-06-05 04:17:08,000.000 INFO    ] Launching Daemon at Fri Jun  5 04:17:07 IST 2026
[2026-06-05 04:17:08,010.010 INFO    ] ================================================
[2026-06-05 04:17:08,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:17:08
[2026-06-05 04:17:09,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:17:09,675.675 INFO    ] Initializing speech engine...
[2026-06-05 04:17:09,690.690 INFO    ] 2026-06-05 04:17:09
[2026-06-05 04:17:09,957.957 INFO    ] 2026-06-05 04:17:09
[2026-06-05 04:17:10,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:17:10,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:17:10,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:17:10,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:17:10,415.415 INFO    ] time= 05/06/2026 04:17:10
[2026-06-05 04:17:10,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:17:10,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:17:10,582.582 INFO    ] No existing commands found in stream
[2026-06-05 04:17:15,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:17:15,597.597 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 04:17:18,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:17:18,080.080 INFO    ] Checking for system updates...
[2026-06-05 04:17:18,117.117 INFO    ] 200
[2026-06-05 04:17:18,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:18,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:18,174.174 INFO    ] No update needed
[2026-06-05 04:17:18,177.177 INFO    ] Checking for camera pi updates...
[2026-06-05 04:17:18,211.211 INFO    ] 200
[2026-06-05 04:17:18,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:18,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:17:18,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:18,286.286 INFO    ] No camera update needed
[2026-06-05 04:17:18,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:17:18,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:17:18,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:17:18,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:17:20,342.342 INFO    ] ================================================
[2026-06-05 04:17:20,357.357 INFO    ] Launching Daemon at Fri Jun  5 04:17:20 IST 2026
[2026-06-05 04:17:20,368.368 INFO    ] ================================================
[2026-06-05 04:17:21,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:17:21
[2026-06-05 04:17:21,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:17:21,985.985 INFO    ] Initializing speech engine...
[2026-06-05 04:17:21,993.993 INFO    ] 2026-06-05 04:17:21
[2026-06-05 04:17:22,295.295 INFO    ] 2026-06-05 04:17:22
[2026-06-05 04:17:22,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:17:22,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:17:22,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:17:22,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:17:22,679.679 INFO    ] time= 05/06/2026 04:17:22
[2026-06-05 04:17:22,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:17:22,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:17:22,848.848 INFO    ] No existing commands found in stream
[2026-06-05 04:17:27,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:17:27,882.882 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 04:17:28,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:17:28,353.353 INFO    ] Checking for system updates...
[2026-06-05 04:17:28,391.391 INFO    ] 200
[2026-06-05 04:17:28,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:28,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:28,459.459 INFO    ] No update needed
[2026-06-05 04:17:28,462.462 INFO    ] Checking for camera pi updates...
[2026-06-05 04:17:28,498.498 INFO    ] 200
[2026-06-05 04:17:28,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:28,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:17:28,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:28,600.600 INFO    ] No camera update needed
[2026-06-05 04:17:28,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:17:28,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:17:28,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:17:28,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:17:30,660.660 INFO    ] ================================================
[2026-06-05 04:17:30,676.676 INFO    ] Launching Daemon at Fri Jun  5 04:17:30 IST 2026
[2026-06-05 04:17:30,687.687 INFO    ] ================================================
[2026-06-05 04:17:31,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:17:31
[2026-06-05 04:17:31,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:17:32,202.202 INFO    ] Initializing speech engine...
[2026-06-05 04:17:32,213.213 INFO    ] 2026-06-05 04:17:32
[2026-06-05 04:17:32,526.526 INFO    ] 2026-06-05 04:17:32
[2026-06-05 04:17:32,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:17:32,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:17:32,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:17:32,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:17:32,936.936 INFO    ] time= 05/06/2026 04:17:32
[2026-06-05 04:17:33,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:17:33,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:17:33,153.153 INFO    ] No existing commands found in stream
[2026-06-05 04:17:38,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:17:38,181.181 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 04:17:39,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:17:39,498.498 INFO    ] Checking for system updates...
[2026-06-05 04:17:39,535.535 INFO    ] 200
[2026-06-05 04:17:39,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:39,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:39,592.592 INFO    ] No update needed
[2026-06-05 04:17:39,595.595 INFO    ] Checking for camera pi updates...
[2026-06-05 04:17:39,633.633 INFO    ] 200
[2026-06-05 04:17:39,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:39,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:17:39,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:39,725.725 INFO    ] No camera update needed
[2026-06-05 04:17:39,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:17:39,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:17:39,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:17:39,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:17:41,782.782 INFO    ] ================================================
[2026-06-05 04:17:41,798.798 INFO    ] Launching Daemon at Fri Jun  5 04:17:41 IST 2026
[2026-06-05 04:17:41,809.809 INFO    ] ================================================
[2026-06-05 04:17:42,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:17:42
[2026-06-05 04:17:42,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:17:43,230.230 INFO    ] Initializing speech engine...
[2026-06-05 04:17:43,240.240 INFO    ] 2026-06-05 04:17:43
[2026-06-05 04:17:43,489.489 INFO    ] 2026-06-05 04:17:43
[2026-06-05 04:17:43,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:17:43,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:17:43,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:17:43,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:17:43,963.963 INFO    ] time= 05/06/2026 04:17:43
[2026-06-05 04:17:44,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:17:44,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:17:44,172.172 INFO    ] No existing commands found in stream
[2026-06-05 04:17:49,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:17:49,197.197 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 04:17:51,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:17:51,372.372 INFO    ] Checking for system updates...
[2026-06-05 04:17:51,408.408 INFO    ] 200
[2026-06-05 04:17:51,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:51,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:51,466.466 INFO    ] No update needed
[2026-06-05 04:17:51,468.468 INFO    ] Checking for camera pi updates...
[2026-06-05 04:17:51,502.502 INFO    ] 200
[2026-06-05 04:17:51,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:17:51,546.546 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:17:51,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:17:51,695.695 INFO    ] No camera update needed
[2026-06-05 04:17:51,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:17:51,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:17:51,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:17:51,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:17:53,753.753 INFO    ] ================================================
[2026-06-05 04:17:53,768.768 INFO    ] Launching Daemon at Fri Jun  5 04:17:53 IST 2026
[2026-06-05 04:17:53,780.780 INFO    ] ================================================
[2026-06-05 04:17:54,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:17:54
[2026-06-05 04:17:54,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:17:55,240.240 INFO    ] Initializing speech engine...
[2026-06-05 04:17:55,249.249 INFO    ] 2026-06-05 04:17:55
[2026-06-05 04:17:55,508.508 INFO    ] 2026-06-05 04:17:55
[2026-06-05 04:17:55,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:17:55,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:17:55,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:17:55,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:17:56,012.012 INFO    ] time= 05/06/2026 04:17:55
[2026-06-05 04:17:56,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:17:56,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:17:56,217.217 INFO    ] No existing commands found in stream
[2026-06-05 04:18:01,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:18:01,251.251 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 04:18:02,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:18:02,554.554 INFO    ] Checking for system updates...
[2026-06-05 04:18:02,602.602 INFO    ] 200
[2026-06-05 04:18:02,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:02,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:18:02,737.737 INFO    ] No update needed
[2026-06-05 04:18:02,740.740 INFO    ] Checking for camera pi updates...
[2026-06-05 04:18:02,796.796 INFO    ] 200
[2026-06-05 04:18:02,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:02,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:18:02,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:18:02,904.904 INFO    ] No camera update needed
[2026-06-05 04:18:02,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:18:02,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:18:02,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:18:02,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:18:04,967.967 INFO    ] ================================================
[2026-06-05 04:18:04,983.983 INFO    ] Launching Daemon at Fri Jun  5 04:18:04 IST 2026
[2026-06-05 04:18:05,995.995 INFO    ] ================================================
[2026-06-05 04:18:05,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:18:05
[2026-06-05 04:18:06,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:18:06,452.452 INFO    ] Initializing speech engine...
[2026-06-05 04:18:06,467.467 INFO    ] 2026-06-05 04:18:06
[2026-06-05 04:18:06,725.725 INFO    ] 2026-06-05 04:18:06
[2026-06-05 04:18:06,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:18:06,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:18:07,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:18:07,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:18:07,206.206 INFO    ] time= 05/06/2026 04:18:07
[2026-06-05 04:18:07,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:18:07,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:18:07,383.383 INFO    ] No existing commands found in stream
[2026-06-05 04:18:12,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:18:12,398.398 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 04:18:14,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:18:14,005.005 INFO    ] Checking for system updates...
[2026-06-05 04:18:14,046.046 INFO    ] 200
[2026-06-05 04:18:14,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:14,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:18:14,111.111 INFO    ] No update needed
[2026-06-05 04:18:14,114.114 INFO    ] Checking for camera pi updates...
[2026-06-05 04:18:14,152.152 INFO    ] 200
[2026-06-05 04:18:14,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:14,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:18:14,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:18:14,243.243 INFO    ] No camera update needed
[2026-06-05 04:18:14,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:18:14,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:18:14,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:18:14,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:18:16,299.299 INFO    ] ================================================
[2026-06-05 04:18:16,315.315 INFO    ] Launching Daemon at Fri Jun  5 04:18:16 IST 2026
[2026-06-05 04:18:16,327.327 INFO    ] ================================================
[2026-06-05 04:18:16,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:18:16
[2026-06-05 04:18:17,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:18:17,916.916 INFO    ] Initializing speech engine...
[2026-06-05 04:18:17,928.928 INFO    ] 2026-06-05 04:18:17
[2026-06-05 04:18:18,175.175 INFO    ] 2026-06-05 04:18:18
[2026-06-05 04:18:18,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:18:18,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:18:18,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:18:18,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:18:18,644.644 INFO    ] time= 05/06/2026 04:18:18
[2026-06-05 04:18:18,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:18:18,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:18:18,833.833 INFO    ] No existing commands found in stream
[2026-06-05 04:18:23,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:18:23,849.849 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 04:18:24,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:18:24,256.256 INFO    ] Checking for system updates...
[2026-06-05 04:18:24,298.298 INFO    ] 200
[2026-06-05 04:18:24,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:24,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:18:24,358.358 INFO    ] No update needed
[2026-06-05 04:18:24,361.361 INFO    ] Checking for camera pi updates...
[2026-06-05 04:18:24,396.396 INFO    ] 200
[2026-06-05 04:18:24,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:24,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:18:24,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:18:24,501.501 INFO    ] No camera update needed
[2026-06-05 04:18:24,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:18:24,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:18:24,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:18:24,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:18:26,559.559 INFO    ] ================================================
[2026-06-05 04:18:26,574.574 INFO    ] Launching Daemon at Fri Jun  5 04:18:26 IST 2026
[2026-06-05 04:18:26,586.586 INFO    ] ================================================
[2026-06-05 04:18:27,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:18:27
[2026-06-05 04:18:27,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:18:28,012.012 INFO    ] Initializing speech engine...
[2026-06-05 04:18:28,021.021 INFO    ] 2026-06-05 04:18:28
[2026-06-05 04:18:28,266.266 INFO    ] 2026-06-05 04:18:28
[2026-06-05 04:18:28,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:18:28,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:18:28,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:18:28,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:18:28,710.710 INFO    ] time= 05/06/2026 04:18:28
[2026-06-05 04:18:28,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:18:28,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:18:28,892.892 INFO    ] No existing commands found in stream
[2026-06-05 04:18:33,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:18:33,907.907 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 04:18:35,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:18:35,295.295 INFO    ] Checking for system updates...
[2026-06-05 04:18:35,335.335 INFO    ] 200
[2026-06-05 04:18:35,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:35,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:18:35,392.392 INFO    ] No update needed
[2026-06-05 04:18:35,395.395 INFO    ] Checking for camera pi updates...
[2026-06-05 04:18:35,432.432 INFO    ] 200
[2026-06-05 04:18:35,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:35,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:18:35,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:18:35,523.523 INFO    ] No camera update needed
[2026-06-05 04:18:35,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:18:35,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:18:35,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:18:35,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:18:37,579.579 INFO    ] ================================================
[2026-06-05 04:18:37,595.595 INFO    ] Launching Daemon at Fri Jun  5 04:18:37 IST 2026
[2026-06-05 04:18:37,607.607 INFO    ] ================================================
[2026-06-05 04:18:38,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:18:38
[2026-06-05 04:18:38,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:18:39,032.032 INFO    ] Initializing speech engine...
[2026-06-05 04:18:39,040.040 INFO    ] 2026-06-05 04:18:39
[2026-06-05 04:18:39,290.290 INFO    ] 2026-06-05 04:18:39
[2026-06-05 04:18:39,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:18:39,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:18:39,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:18:39,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:18:39,667.667 INFO    ] time= 05/06/2026 04:18:39
[2026-06-05 04:18:39,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:18:39,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:18:39,832.832 INFO    ] No existing commands found in stream
[2026-06-05 04:18:44,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:18:44,860.860 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 04:18:49,208.208 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:18:49,211.211 INFO    ] Checking for system updates...
[2026-06-05 04:18:49,250.250 INFO    ] 200
[2026-06-05 04:18:49,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:49,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:18:49,315.315 INFO    ] No update needed
[2026-06-05 04:18:49,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 04:18:49,355.355 INFO    ] 200
[2026-06-05 04:18:49,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:18:49,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:18:49,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:18:49,457.457 INFO    ] No camera update needed
[2026-06-05 04:18:49,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:18:49,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:18:49,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:18:49,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:18:51,523.523 INFO    ] ================================================
[2026-06-05 04:18:51,538.538 INFO    ] Launching Daemon at Fri Jun  5 04:18:51 IST 2026
[2026-06-05 04:18:51,550.550 INFO    ] ================================================
[2026-06-05 04:18:52,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:18:52
[2026-06-05 04:18:52,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:18:53,003.003 INFO    ] Initializing speech engine...
[2026-06-05 04:18:53,010.010 INFO    ] 2026-06-05 04:18:53
[2026-06-05 04:18:53,338.338 INFO    ] 2026-06-05 04:18:53
[2026-06-05 04:18:53,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:18:53,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:18:53,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:18:53,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:18:53,700.700 INFO    ] time= 05/06/2026 04:18:53
[2026-06-05 04:18:53,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:18:53,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:18:53,845.845 INFO    ] No existing commands found in stream
[2026-06-05 04:18:58,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:18:58,860.860 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 04:19:01,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:19:01,038.038 INFO    ] Checking for system updates...
[2026-06-05 04:19:01,078.078 INFO    ] 200
[2026-06-05 04:19:01,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:01,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:19:01,135.135 INFO    ] No update needed
[2026-06-05 04:19:01,138.138 INFO    ] Checking for camera pi updates...
[2026-06-05 04:19:01,172.172 INFO    ] 200
[2026-06-05 04:19:01,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:01,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:19:01,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:19:01,243.243 INFO    ] No camera update needed
[2026-06-05 04:19:01,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:19:01,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:19:01,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:19:01,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:19:03,305.305 INFO    ] ================================================
[2026-06-05 04:19:03,321.321 INFO    ] Launching Daemon at Fri Jun  5 04:19:03 IST 2026
[2026-06-05 04:19:03,332.332 INFO    ] ================================================
[2026-06-05 04:19:03,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:19:03
[2026-06-05 04:19:04,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:19:04,803.803 INFO    ] Initializing speech engine...
[2026-06-05 04:19:04,818.818 INFO    ] 2026-06-05 04:19:04
[2026-06-05 04:19:05,114.114 INFO    ] 2026-06-05 04:19:05
[2026-06-05 04:19:05,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:19:05,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:19:05,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:19:05,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:19:05,476.476 INFO    ] time= 05/06/2026 04:19:05
[2026-06-05 04:19:05,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:19:05,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:19:05,561.561 INFO    ] No existing commands found in stream
[2026-06-05 04:19:10,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:19:10,575.575 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 04:19:13,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:19:13,971.971 INFO    ] Checking for system updates...
[2026-06-05 04:19:14,013.013 INFO    ] 200
[2026-06-05 04:19:14,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:14,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:19:14,079.079 INFO    ] No update needed
[2026-06-05 04:19:14,082.082 INFO    ] Checking for camera pi updates...
[2026-06-05 04:19:14,120.120 INFO    ] 200
[2026-06-05 04:19:14,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:14,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:19:14,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:19:14,214.214 INFO    ] No camera update needed
[2026-06-05 04:19:14,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:19:14,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:19:14,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:19:14,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:19:16,269.269 INFO    ] ================================================
[2026-06-05 04:19:16,284.284 INFO    ] Launching Daemon at Fri Jun  5 04:19:16 IST 2026
[2026-06-05 04:19:16,297.297 INFO    ] ================================================
[2026-06-05 04:19:16,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:19:16
[2026-06-05 04:19:17,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:19:17,725.725 INFO    ] Initializing speech engine...
[2026-06-05 04:19:17,738.738 INFO    ] 2026-06-05 04:19:17
[2026-06-05 04:19:17,989.989 INFO    ] 2026-06-05 04:19:17
[2026-06-05 04:19:18,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:19:18,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:19:18,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:19:18,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:19:18,365.365 INFO    ] time= 05/06/2026 04:19:18
[2026-06-05 04:19:18,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:19:18,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:19:18,563.563 INFO    ] No existing commands found in stream
[2026-06-05 04:19:23,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:19:23,580.580 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 04:19:26,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:19:26,041.041 INFO    ] Checking for system updates...
[2026-06-05 04:19:26,078.078 INFO    ] 200
[2026-06-05 04:19:26,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:26,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:19:26,135.135 INFO    ] No update needed
[2026-06-05 04:19:26,138.138 INFO    ] Checking for camera pi updates...
[2026-06-05 04:19:26,171.171 INFO    ] 200
[2026-06-05 04:19:26,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:26,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:19:26,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:19:26,263.263 INFO    ] No camera update needed
[2026-06-05 04:19:26,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:19:26,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:19:26,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:19:26,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:19:28,326.326 INFO    ] ================================================
[2026-06-05 04:19:28,342.342 INFO    ] Launching Daemon at Fri Jun  5 04:19:28 IST 2026
[2026-06-05 04:19:28,353.353 INFO    ] ================================================
[2026-06-05 04:19:28,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:19:28
[2026-06-05 04:19:29,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:19:29,818.818 INFO    ] Initializing speech engine...
[2026-06-05 04:19:29,829.829 INFO    ] 2026-06-05 04:19:29
[2026-06-05 04:19:30,077.077 INFO    ] 2026-06-05 04:19:30
[2026-06-05 04:19:30,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:19:30,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:19:30,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:19:30,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:19:30,549.549 INFO    ] time= 05/06/2026 04:19:30
[2026-06-05 04:19:30,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:19:30,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:19:30,698.698 INFO    ] No existing commands found in stream
[2026-06-05 04:19:35,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:19:35,713.713 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 04:19:36,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:19:36,079.079 INFO    ] Checking for system updates...
[2026-06-05 04:19:36,116.116 INFO    ] 200
[2026-06-05 04:19:36,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:36,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:19:36,180.180 INFO    ] No update needed
[2026-06-05 04:19:36,183.183 INFO    ] Checking for camera pi updates...
[2026-06-05 04:19:36,220.220 INFO    ] 200
[2026-06-05 04:19:36,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:36,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:19:36,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:19:36,321.321 INFO    ] No camera update needed
[2026-06-05 04:19:36,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:19:36,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:19:36,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:19:36,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:19:38,379.379 INFO    ] ================================================
[2026-06-05 04:19:38,395.395 INFO    ] Launching Daemon at Fri Jun  5 04:19:38 IST 2026
[2026-06-05 04:19:38,406.406 INFO    ] ================================================
[2026-06-05 04:19:39,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:19:39
[2026-06-05 04:19:39,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:19:39,973.973 INFO    ] Initializing speech engine...
[2026-06-05 04:19:39,987.987 INFO    ] 2026-06-05 04:19:39
[2026-06-05 04:19:40,255.255 INFO    ] 2026-06-05 04:19:40
[2026-06-05 04:19:40,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:19:40,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:19:40,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:19:40,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:19:40,632.632 INFO    ] time= 05/06/2026 04:19:40
[2026-06-05 04:19:40,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:19:40,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:19:40,809.809 INFO    ] No existing commands found in stream
[2026-06-05 04:19:45,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:19:45,842.842 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 04:19:46,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:19:46,310.310 INFO    ] Checking for system updates...
[2026-06-05 04:19:46,350.350 INFO    ] 200
[2026-06-05 04:19:46,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:46,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:19:46,414.414 INFO    ] No update needed
[2026-06-05 04:19:46,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 04:19:46,455.455 INFO    ] 200
[2026-06-05 04:19:46,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:46,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:19:46,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:19:46,552.552 INFO    ] No camera update needed
[2026-06-05 04:19:46,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:19:46,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:19:46,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:19:46,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:19:48,606.606 INFO    ] ================================================
[2026-06-05 04:19:48,621.621 INFO    ] Launching Daemon at Fri Jun  5 04:19:48 IST 2026
[2026-06-05 04:19:48,632.632 INFO    ] ================================================
[2026-06-05 04:19:49,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:19:49
[2026-06-05 04:19:49,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:19:50,129.129 INFO    ] Initializing speech engine...
[2026-06-05 04:19:50,135.135 INFO    ] 2026-06-05 04:19:50
[2026-06-05 04:19:50,397.397 INFO    ] 2026-06-05 04:19:50
[2026-06-05 04:19:50,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:19:50,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:19:50,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:19:50,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:19:50,882.882 INFO    ] time= 05/06/2026 04:19:50
[2026-06-05 04:19:50,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:19:50,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:19:51,026.026 INFO    ] No existing commands found in stream
[2026-06-05 04:19:56,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:19:56,042.042 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 04:19:57,922.922 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:19:57,925.925 INFO    ] Checking for system updates...
[2026-06-05 04:19:57,969.969 INFO    ] 200
[2026-06-05 04:19:57,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:58,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:19:58,029.029 INFO    ] No update needed
[2026-06-05 04:19:58,032.032 INFO    ] Checking for camera pi updates...
[2026-06-05 04:19:58,065.065 INFO    ] 200
[2026-06-05 04:19:58,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:19:58,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:19:58,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:19:58,260.260 INFO    ] No camera update needed
[2026-06-05 04:19:58,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:19:58,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:19:58,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:19:58,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:20:00,317.317 INFO    ] ================================================
[2026-06-05 04:20:00,332.332 INFO    ] Launching Daemon at Fri Jun  5 04:20:00 IST 2026
[2026-06-05 04:20:00,343.343 INFO    ] ================================================
[2026-06-05 04:20:00,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:20:00
[2026-06-05 04:20:01,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:20:02,493.493 INFO    ] Initializing speech engine...
[2026-06-05 04:20:02,497.497 INFO    ] 2026-06-05 04:20:02
[2026-06-05 04:20:02,862.862 INFO    ] 2026-06-05 04:20:02
[2026-06-05 04:20:02,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:20:03,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:20:03,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:20:03,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:20:03,230.230 INFO    ] time= 05/06/2026 04:20:03
[2026-06-05 04:20:03,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:20:03,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:20:03,425.425 INFO    ] No existing commands found in stream
[2026-06-05 04:20:08,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:20:08,440.440 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 04:20:08,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:20:08,940.940 INFO    ] Checking for system updates...
[2026-06-05 04:20:08,985.985 INFO    ] 200
[2026-06-05 04:20:08,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:09,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:20:09,068.068 INFO    ] No update needed
[2026-06-05 04:20:09,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 04:20:09,121.121 INFO    ] 200
[2026-06-05 04:20:09,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:09,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:20:09,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:20:09,218.218 INFO    ] No camera update needed
[2026-06-05 04:20:09,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:20:09,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:20:09,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:20:09,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:20:11,294.294 INFO    ] ================================================
[2026-06-05 04:20:11,310.310 INFO    ] Launching Daemon at Fri Jun  5 04:20:11 IST 2026
[2026-06-05 04:20:11,321.321 INFO    ] ================================================
[2026-06-05 04:20:11,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:20:11
[2026-06-05 04:20:12,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:20:12,798.798 INFO    ] Initializing speech engine...
[2026-06-05 04:20:12,805.805 INFO    ] 2026-06-05 04:20:12
[2026-06-05 04:20:13,057.057 INFO    ] 2026-06-05 04:20:13
[2026-06-05 04:20:13,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:20:13,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:20:13,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:20:13,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:20:13,399.399 INFO    ] time= 05/06/2026 04:20:13
[2026-06-05 04:20:13,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:20:13,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:20:13,508.508 INFO    ] No existing commands found in stream
[2026-06-05 04:20:18,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:20:18,524.524 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-05 04:20:20,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:20:20,163.163 INFO    ] Checking for system updates...
[2026-06-05 04:20:20,204.204 INFO    ] 200
[2026-06-05 04:20:20,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:20,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:20:20,270.270 INFO    ] No update needed
[2026-06-05 04:20:20,272.272 INFO    ] Checking for camera pi updates...
[2026-06-05 04:20:20,307.307 INFO    ] 200
[2026-06-05 04:20:20,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:20,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:20:20,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:20:20,403.403 INFO    ] No camera update needed
[2026-06-05 04:20:20,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:20:20,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:20:20,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:20:20,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:20:22,463.463 INFO    ] ================================================
[2026-06-05 04:20:22,478.478 INFO    ] Launching Daemon at Fri Jun  5 04:20:22 IST 2026
[2026-06-05 04:20:22,489.489 INFO    ] ================================================
[2026-06-05 04:20:23,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:20:23
[2026-06-05 04:20:23,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:20:24,000.000 INFO    ] Initializing speech engine...
[2026-06-05 04:20:24,009.009 INFO    ] 2026-06-05 04:20:24
[2026-06-05 04:20:24,261.261 INFO    ] 2026-06-05 04:20:24
[2026-06-05 04:20:24,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:20:24,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:20:24,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:20:24,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:20:24,723.723 INFO    ] time= 05/06/2026 04:20:24
[2026-06-05 04:20:24,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:20:24,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:20:24,935.935 INFO    ] No existing commands found in stream
[2026-06-05 04:20:29,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:20:29,969.969 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 04:20:34,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:20:34,098.098 INFO    ] Checking for system updates...
[2026-06-05 04:20:34,139.139 INFO    ] 200
[2026-06-05 04:20:34,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:34,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:20:34,199.199 INFO    ] No update needed
[2026-06-05 04:20:34,202.202 INFO    ] Checking for camera pi updates...
[2026-06-05 04:20:34,235.235 INFO    ] 200
[2026-06-05 04:20:34,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:34,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:20:34,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:20:34,323.323 INFO    ] No camera update needed
[2026-06-05 04:20:34,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:20:34,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:20:34,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:20:34,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:20:36,380.380 INFO    ] ================================================
[2026-06-05 04:20:36,395.395 INFO    ] Launching Daemon at Fri Jun  5 04:20:36 IST 2026
[2026-06-05 04:20:36,405.405 INFO    ] ================================================
[2026-06-05 04:20:37,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:20:37
[2026-06-05 04:20:37,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:20:38,057.057 INFO    ] Initializing speech engine...
[2026-06-05 04:20:38,068.068 INFO    ] 2026-06-05 04:20:38
[2026-06-05 04:20:38,351.351 INFO    ] 2026-06-05 04:20:38
[2026-06-05 04:20:38,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:20:38,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:20:38,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:20:38,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:20:38,816.816 INFO    ] time= 05/06/2026 04:20:38
[2026-06-05 04:20:38,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:20:38,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:20:39,037.037 INFO    ] No existing commands found in stream
[2026-06-05 04:20:44,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:20:44,063.063 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 04:20:46,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:20:46,237.237 INFO    ] Checking for system updates...
[2026-06-05 04:20:46,279.279 INFO    ] 200
[2026-06-05 04:20:46,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:46,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:20:46,348.348 INFO    ] No update needed
[2026-06-05 04:20:46,350.350 INFO    ] Checking for camera pi updates...
[2026-06-05 04:20:46,390.390 INFO    ] 200
[2026-06-05 04:20:46,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:46,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:20:46,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:20:46,489.489 INFO    ] No camera update needed
[2026-06-05 04:20:46,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:20:46,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:20:46,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:20:46,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:20:48,548.548 INFO    ] ================================================
[2026-06-05 04:20:48,563.563 INFO    ] Launching Daemon at Fri Jun  5 04:20:48 IST 2026
[2026-06-05 04:20:48,575.575 INFO    ] ================================================
[2026-06-05 04:20:49,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:20:49
[2026-06-05 04:20:49,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:20:50,000.000 INFO    ] Initializing speech engine...
[2026-06-05 04:20:50,009.009 INFO    ] 2026-06-05 04:20:50
[2026-06-05 04:20:50,305.305 INFO    ] 2026-06-05 04:20:50
[2026-06-05 04:20:50,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:20:50,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:20:50,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:20:50,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:20:50,845.845 INFO    ] time= 05/06/2026 04:20:50
[2026-06-05 04:20:50,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:20:50,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:20:50,999.999 INFO    ] No existing commands found in stream
[2026-06-05 04:20:56,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:20:56,019.019 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 04:20:58,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:20:58,668.668 INFO    ] Checking for system updates...
[2026-06-05 04:20:58,711.711 INFO    ] 200
[2026-06-05 04:20:58,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:58,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:20:58,780.780 INFO    ] No update needed
[2026-06-05 04:20:58,783.783 INFO    ] Checking for camera pi updates...
[2026-06-05 04:20:58,823.823 INFO    ] 200
[2026-06-05 04:20:58,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:20:58,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:20:58,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:20:58,915.915 INFO    ] No camera update needed
[2026-06-05 04:20:58,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:20:58,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:20:58,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:20:58,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:21:00,975.975 INFO    ] ================================================
[2026-06-05 04:21:00,991.991 INFO    ] Launching Daemon at Fri Jun  5 04:21:00 IST 2026
[2026-06-05 04:21:01,002.002 INFO    ] ================================================
[2026-06-05 04:21:01,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:21:01
[2026-06-05 04:21:02,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:21:02,673.673 INFO    ] Initializing speech engine...
[2026-06-05 04:21:02,685.685 INFO    ] 2026-06-05 04:21:02
[2026-06-05 04:21:02,973.973 INFO    ] 2026-06-05 04:21:02
[2026-06-05 04:21:03,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:21:03,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:21:03,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:21:03,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:21:03,351.351 INFO    ] time= 05/06/2026 04:21:03
[2026-06-05 04:21:03,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:21:03,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:21:03,459.459 INFO    ] No existing commands found in stream
[2026-06-05 04:21:08,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:21:08,473.473 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 04:21:09,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:21:09,714.714 INFO    ] Checking for system updates...
[2026-06-05 04:21:09,752.752 INFO    ] 200
[2026-06-05 04:21:09,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:09,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:21:09,812.812 INFO    ] No update needed
[2026-06-05 04:21:09,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 04:21:09,851.851 INFO    ] 200
[2026-06-05 04:21:09,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:09,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:21:09,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:21:09,954.954 INFO    ] No camera update needed
[2026-06-05 04:21:09,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:21:09,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:21:09,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:21:09,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:21:12,013.013 INFO    ] ================================================
[2026-06-05 04:21:12,028.028 INFO    ] Launching Daemon at Fri Jun  5 04:21:12 IST 2026
[2026-06-05 04:21:12,038.038 INFO    ] ================================================
[2026-06-05 04:21:12,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:21:12
[2026-06-05 04:21:13,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:21:13,447.447 INFO    ] Initializing speech engine...
[2026-06-05 04:21:13,470.470 INFO    ] 2026-06-05 04:21:13
[2026-06-05 04:21:13,723.723 INFO    ] 2026-06-05 04:21:13
[2026-06-05 04:21:13,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:21:14,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:21:14,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:21:14,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:21:14,196.196 INFO    ] time= 05/06/2026 04:21:14
[2026-06-05 04:21:14,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:21:14,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:21:14,346.346 INFO    ] No existing commands found in stream
[2026-06-05 04:21:19,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:21:19,361.361 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 04:21:23,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:21:23,012.012 INFO    ] Checking for system updates...
[2026-06-05 04:21:23,053.053 INFO    ] 200
[2026-06-05 04:21:23,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:23,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:21:23,113.113 INFO    ] No update needed
[2026-06-05 04:21:23,116.116 INFO    ] Checking for camera pi updates...
[2026-06-05 04:21:23,152.152 INFO    ] 200
[2026-06-05 04:21:23,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:23,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:21:23,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:21:23,258.258 INFO    ] No camera update needed
[2026-06-05 04:21:23,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:21:23,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:21:23,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:21:23,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:21:25,318.318 INFO    ] ================================================
[2026-06-05 04:21:25,333.333 INFO    ] Launching Daemon at Fri Jun  5 04:21:25 IST 2026
[2026-06-05 04:21:25,344.344 INFO    ] ================================================
[2026-06-05 04:21:25,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:21:25
[2026-06-05 04:21:26,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:21:26,756.756 INFO    ] Initializing speech engine...
[2026-06-05 04:21:26,762.762 INFO    ] 2026-06-05 04:21:26
[2026-06-05 04:21:27,063.063 INFO    ] 2026-06-05 04:21:27
[2026-06-05 04:21:27,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:21:27,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:21:27,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:21:27,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:21:27,489.489 INFO    ] time= 05/06/2026 04:21:27
[2026-06-05 04:21:27,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:21:27,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:21:27,580.580 INFO    ] No existing commands found in stream
[2026-06-05 04:21:32,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:21:32,602.602 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 04:21:35,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:21:35,350.350 INFO    ] Checking for system updates...
[2026-06-05 04:21:35,386.386 INFO    ] 200
[2026-06-05 04:21:35,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:35,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:21:35,445.445 INFO    ] No update needed
[2026-06-05 04:21:35,448.448 INFO    ] Checking for camera pi updates...
[2026-06-05 04:21:35,482.482 INFO    ] 200
[2026-06-05 04:21:35,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:35,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:21:35,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:21:35,568.568 INFO    ] No camera update needed
[2026-06-05 04:21:35,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:21:35,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:21:35,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:21:35,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:21:37,625.625 INFO    ] ================================================
[2026-06-05 04:21:37,640.640 INFO    ] Launching Daemon at Fri Jun  5 04:21:37 IST 2026
[2026-06-05 04:21:37,651.651 INFO    ] ================================================
[2026-06-05 04:21:38,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:21:38
[2026-06-05 04:21:38,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:21:39,073.073 INFO    ] Initializing speech engine...
[2026-06-05 04:21:39,082.082 INFO    ] 2026-06-05 04:21:39
[2026-06-05 04:21:39,328.328 INFO    ] 2026-06-05 04:21:39
[2026-06-05 04:21:39,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:21:39,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:21:39,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:21:39,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:21:39,803.803 INFO    ] time= 05/06/2026 04:21:39
[2026-06-05 04:21:39,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:21:39,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:21:40,022.022 INFO    ] No existing commands found in stream
[2026-06-05 04:21:45,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:21:45,051.051 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 04:21:48,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:21:48,687.687 INFO    ] Checking for system updates...
[2026-06-05 04:21:48,730.730 INFO    ] 200
[2026-06-05 04:21:48,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:48,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:21:48,808.808 INFO    ] No update needed
[2026-06-05 04:21:48,811.811 INFO    ] Checking for camera pi updates...
[2026-06-05 04:21:48,849.849 INFO    ] 200
[2026-06-05 04:21:48,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:48,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:21:48,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:21:48,941.941 INFO    ] No camera update needed
[2026-06-05 04:21:48,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:21:48,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:21:48,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:21:48,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:21:51,002.002 INFO    ] ================================================
[2026-06-05 04:21:51,018.018 INFO    ] Launching Daemon at Fri Jun  5 04:21:51 IST 2026
[2026-06-05 04:21:51,029.029 INFO    ] ================================================
[2026-06-05 04:21:51,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:21:51
[2026-06-05 04:21:52,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:21:52,430.430 INFO    ] Initializing speech engine...
[2026-06-05 04:21:52,439.439 INFO    ] 2026-06-05 04:21:52
[2026-06-05 04:21:52,713.713 INFO    ] 2026-06-05 04:21:52
[2026-06-05 04:21:52,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:21:52,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:21:52,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:21:53,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:21:53,108.108 INFO    ] time= 05/06/2026 04:21:53
[2026-06-05 04:21:53,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:21:53,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:21:53,199.199 INFO    ] No existing commands found in stream
[2026-06-05 04:21:58,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:21:58,214.214 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-05 04:21:58,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:21:58,629.629 INFO    ] Checking for system updates...
[2026-06-05 04:21:58,671.671 INFO    ] 200
[2026-06-05 04:21:58,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:58,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:21:58,737.737 INFO    ] No update needed
[2026-06-05 04:21:58,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 04:21:58,774.774 INFO    ] 200
[2026-06-05 04:21:58,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:21:58,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:21:58,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:21:58,874.874 INFO    ] No camera update needed
[2026-06-05 04:21:58,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:21:58,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:21:58,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:21:58,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:22:00,933.933 INFO    ] ================================================
[2026-06-05 04:22:00,949.949 INFO    ] Launching Daemon at Fri Jun  5 04:22:00 IST 2026
[2026-06-05 04:22:00,960.960 INFO    ] ================================================
[2026-06-05 04:22:01,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:22:01
[2026-06-05 04:22:02,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:22:02,686.686 INFO    ] Initializing speech engine...
[2026-06-05 04:22:02,700.700 INFO    ] 2026-06-05 04:22:02
[2026-06-05 04:22:02,982.982 INFO    ] 2026-06-05 04:22:02
[2026-06-05 04:22:03,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:22:03,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:22:03,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:22:03,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:22:03,520.520 INFO    ] time= 05/06/2026 04:22:03
[2026-06-05 04:22:03,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:22:03,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:22:03,745.745 INFO    ] No existing commands found in stream
[2026-06-05 04:22:08,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:22:08,776.776 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 04:22:10,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:22:10,336.336 INFO    ] Checking for system updates...
[2026-06-05 04:22:10,374.374 INFO    ] 200
[2026-06-05 04:22:10,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:10,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:22:10,503.503 INFO    ] No update needed
[2026-06-05 04:22:10,506.506 INFO    ] Checking for camera pi updates...
[2026-06-05 04:22:10,545.545 INFO    ] 200
[2026-06-05 04:22:10,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:10,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:22:10,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:22:10,648.648 INFO    ] No camera update needed
[2026-06-05 04:22:10,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:22:10,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:22:10,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:22:10,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:22:12,706.706 INFO    ] ================================================
[2026-06-05 04:22:12,721.721 INFO    ] Launching Daemon at Fri Jun  5 04:22:12 IST 2026
[2026-06-05 04:22:12,732.732 INFO    ] ================================================
[2026-06-05 04:22:13,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:22:13
[2026-06-05 04:22:13,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:22:14,201.201 INFO    ] Initializing speech engine...
[2026-06-05 04:22:14,224.224 INFO    ] 2026-06-05 04:22:14
[2026-06-05 04:22:14,498.498 INFO    ] 2026-06-05 04:22:14
[2026-06-05 04:22:14,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:22:14,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:22:14,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:22:14,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:22:15,005.005 INFO    ] time= 05/06/2026 04:22:14
[2026-06-05 04:22:15,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:22:15,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:22:15,200.200 INFO    ] No existing commands found in stream
[2026-06-05 04:22:20,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:22:20,225.225 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 04:22:20,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:22:20,673.673 INFO    ] Checking for system updates...
[2026-06-05 04:22:20,710.710 INFO    ] 200
[2026-06-05 04:22:20,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:20,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:22:20,776.776 INFO    ] No update needed
[2026-06-05 04:22:20,779.779 INFO    ] Checking for camera pi updates...
[2026-06-05 04:22:20,817.817 INFO    ] 200
[2026-06-05 04:22:20,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:20,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:22:20,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:22:20,910.910 INFO    ] No camera update needed
[2026-06-05 04:22:20,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:22:20,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:22:20,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:22:20,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:22:22,965.965 INFO    ] ================================================
[2026-06-05 04:22:22,980.980 INFO    ] Launching Daemon at Fri Jun  5 04:22:22 IST 2026
[2026-06-05 04:22:22,991.991 INFO    ] ================================================
[2026-06-05 04:22:23,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:22:23
[2026-06-05 04:22:24,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:22:24,431.431 INFO    ] Initializing speech engine...
[2026-06-05 04:22:24,439.439 INFO    ] 2026-06-05 04:22:24
[2026-06-05 04:22:24,685.685 INFO    ] 2026-06-05 04:22:24
[2026-06-05 04:22:24,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:22:24,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:22:24,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:22:25,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:22:25,070.070 INFO    ] time= 05/06/2026 04:22:25
[2026-06-05 04:22:25,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:22:25,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:22:25,258.258 INFO    ] No existing commands found in stream
[2026-06-05 04:22:30,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:22:30,281.281 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 04:22:32,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:22:32,606.606 INFO    ] Checking for system updates...
[2026-06-05 04:22:32,649.649 INFO    ] 200
[2026-06-05 04:22:32,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:32,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:22:32,712.712 INFO    ] No update needed
[2026-06-05 04:22:32,715.715 INFO    ] Checking for camera pi updates...
[2026-06-05 04:22:32,752.752 INFO    ] 200
[2026-06-05 04:22:32,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:32,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:22:32,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:22:32,858.858 INFO    ] No camera update needed
[2026-06-05 04:22:32,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:22:32,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:22:32,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:22:32,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:22:34,918.918 INFO    ] ================================================
[2026-06-05 04:22:34,934.934 INFO    ] Launching Daemon at Fri Jun  5 04:22:34 IST 2026
[2026-06-05 04:22:34,945.945 INFO    ] ================================================
[2026-06-05 04:22:35,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:22:35
[2026-06-05 04:22:36,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:22:36,367.367 INFO    ] Initializing speech engine...
[2026-06-05 04:22:36,376.376 INFO    ] 2026-06-05 04:22:36
[2026-06-05 04:22:36,621.621 INFO    ] 2026-06-05 04:22:36
[2026-06-05 04:22:36,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:22:36,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:22:36,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:22:37,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:22:37,098.098 INFO    ] time= 05/06/2026 04:22:37
[2026-06-05 04:22:37,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:22:37,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:22:37,291.291 INFO    ] No existing commands found in stream
[2026-06-05 04:22:42,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:22:42,316.316 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 04:22:42,990.990 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:22:42,993.993 INFO    ] Checking for system updates...
[2026-06-05 04:22:43,029.029 INFO    ] 200
[2026-06-05 04:22:43,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:43,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:22:43,087.087 INFO    ] No update needed
[2026-06-05 04:22:43,090.090 INFO    ] Checking for camera pi updates...
[2026-06-05 04:22:43,127.127 INFO    ] 200
[2026-06-05 04:22:43,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:43,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:22:43,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:22:43,221.221 INFO    ] No camera update needed
[2026-06-05 04:22:43,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:22:43,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:22:43,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:22:43,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:22:45,276.276 INFO    ] ================================================
[2026-06-05 04:22:45,291.291 INFO    ] Launching Daemon at Fri Jun  5 04:22:45 IST 2026
[2026-06-05 04:22:45,302.302 INFO    ] ================================================
[2026-06-05 04:22:45,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:22:45
[2026-06-05 04:22:46,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:22:46,890.890 INFO    ] Initializing speech engine...
[2026-06-05 04:22:46,900.900 INFO    ] 2026-06-05 04:22:46
[2026-06-05 04:22:47,172.172 INFO    ] 2026-06-05 04:22:47
[2026-06-05 04:22:47,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:22:47,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:22:47,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:22:47,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:22:47,661.661 INFO    ] time= 05/06/2026 04:22:47
[2026-06-05 04:22:47,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:22:47,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:22:47,863.863 INFO    ] No existing commands found in stream
[2026-06-05 04:22:52,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:22:52,893.893 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 04:22:56,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:22:56,263.263 INFO    ] Checking for system updates...
[2026-06-05 04:22:56,301.301 INFO    ] 200
[2026-06-05 04:22:56,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:56,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:22:56,368.368 INFO    ] No update needed
[2026-06-05 04:22:56,371.371 INFO    ] Checking for camera pi updates...
[2026-06-05 04:22:56,411.411 INFO    ] 200
[2026-06-05 04:22:56,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:22:56,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:22:56,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:22:56,507.507 INFO    ] No camera update needed
[2026-06-05 04:22:56,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:22:56,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:22:56,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:22:56,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:22:58,566.566 INFO    ] ================================================
[2026-06-05 04:22:58,581.581 INFO    ] Launching Daemon at Fri Jun  5 04:22:58 IST 2026
[2026-06-05 04:22:58,592.592 INFO    ] ================================================
[2026-06-05 04:22:59,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:22:59
[2026-06-05 04:22:59,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:23:00,016.016 INFO    ] Initializing speech engine...
[2026-06-05 04:23:00,022.022 INFO    ] 2026-06-05 04:23:00
[2026-06-05 04:23:00,335.335 INFO    ] 2026-06-05 04:23:00
[2026-06-05 04:23:00,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:23:00,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:23:00,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:23:00,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:23:00,682.682 INFO    ] time= 05/06/2026 04:23:00
[2026-06-05 04:23:00,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:23:00,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:23:00,792.792 INFO    ] No existing commands found in stream
[2026-06-05 04:23:05,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:23:05,807.807 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 04:23:10,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:23:10,034.034 INFO    ] Checking for system updates...
[2026-06-05 04:23:10,073.073 INFO    ] 200
[2026-06-05 04:23:10,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:10,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:23:10,134.134 INFO    ] No update needed
[2026-06-05 04:23:10,138.138 INFO    ] Checking for camera pi updates...
[2026-06-05 04:23:10,177.177 INFO    ] 200
[2026-06-05 04:23:10,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:10,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:23:10,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:23:10,274.274 INFO    ] No camera update needed
[2026-06-05 04:23:10,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:23:10,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:23:10,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:23:10,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:23:12,331.331 INFO    ] ================================================
[2026-06-05 04:23:12,346.346 INFO    ] Launching Daemon at Fri Jun  5 04:23:12 IST 2026
[2026-06-05 04:23:12,357.357 INFO    ] ================================================
[2026-06-05 04:23:12,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:23:12
[2026-06-05 04:23:13,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:23:13,850.850 INFO    ] Initializing speech engine...
[2026-06-05 04:23:13,864.864 INFO    ] 2026-06-05 04:23:13
[2026-06-05 04:23:14,138.138 INFO    ] 2026-06-05 04:23:14
[2026-06-05 04:23:14,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:23:14,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:23:14,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:23:14,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:23:14,553.553 INFO    ] time= 05/06/2026 04:23:14
[2026-06-05 04:23:14,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:23:14,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:23:14,735.735 INFO    ] No existing commands found in stream
[2026-06-05 04:23:19,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:23:19,750.750 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 04:23:20,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:23:20,983.983 INFO    ] Checking for system updates...
[2026-06-05 04:23:21,020.020 INFO    ] 200
[2026-06-05 04:23:21,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:21,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:23:21,078.078 INFO    ] No update needed
[2026-06-05 04:23:21,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 04:23:21,120.120 INFO    ] 200
[2026-06-05 04:23:21,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:21,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:23:21,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:23:21,218.218 INFO    ] No camera update needed
[2026-06-05 04:23:21,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:23:21,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:23:21,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:23:21,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:23:23,277.277 INFO    ] ================================================
[2026-06-05 04:23:23,293.293 INFO    ] Launching Daemon at Fri Jun  5 04:23:23 IST 2026
[2026-06-05 04:23:23,305.305 INFO    ] ================================================
[2026-06-05 04:23:23,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:23:23
[2026-06-05 04:23:24,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:23:25,010.010 INFO    ] Initializing speech engine...
[2026-06-05 04:23:25,019.019 INFO    ] 2026-06-05 04:23:25
[2026-06-05 04:23:25,307.307 INFO    ] 2026-06-05 04:23:25
[2026-06-05 04:23:25,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:23:25,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:23:25,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:23:25,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:23:25,781.781 INFO    ] time= 05/06/2026 04:23:25
[2026-06-05 04:23:25,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:23:25,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:23:25,931.931 INFO    ] No existing commands found in stream
[2026-06-05 04:23:30,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:23:30,946.946 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 04:23:32,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:23:32,371.371 INFO    ] Checking for system updates...
[2026-06-05 04:23:32,410.410 INFO    ] 200
[2026-06-05 04:23:32,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:32,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:23:32,478.478 INFO    ] No update needed
[2026-06-05 04:23:32,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 04:23:32,528.528 INFO    ] 200
[2026-06-05 04:23:32,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:32,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:23:32,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:23:32,611.611 INFO    ] No camera update needed
[2026-06-05 04:23:32,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:23:32,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:23:32,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:23:32,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:23:34,679.679 INFO    ] ================================================
[2026-06-05 04:23:34,695.695 INFO    ] Launching Daemon at Fri Jun  5 04:23:34 IST 2026
[2026-06-05 04:23:34,706.706 INFO    ] ================================================
[2026-06-05 04:23:35,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:23:35
[2026-06-05 04:23:35,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:23:36,189.189 INFO    ] Initializing speech engine...
[2026-06-05 04:23:36,199.199 INFO    ] 2026-06-05 04:23:36
[2026-06-05 04:23:36,496.496 INFO    ] 2026-06-05 04:23:36
[2026-06-05 04:23:36,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:23:36,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:23:36,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:23:36,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:23:36,954.954 INFO    ] time= 05/06/2026 04:23:36
[2026-06-05 04:23:37,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:23:37,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:23:37,105.105 INFO    ] No existing commands found in stream
[2026-06-05 04:23:42,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:23:42,119.119 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 04:23:42,639.639 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:23:42,641.641 INFO    ] Checking for system updates...
[2026-06-05 04:23:42,677.677 INFO    ] 200
[2026-06-05 04:23:42,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:42,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:23:42,736.736 INFO    ] No update needed
[2026-06-05 04:23:42,738.738 INFO    ] Checking for camera pi updates...
[2026-06-05 04:23:42,776.776 INFO    ] 200
[2026-06-05 04:23:42,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:42,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:23:42,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:23:42,860.860 INFO    ] No camera update needed
[2026-06-05 04:23:42,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:23:42,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:23:42,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:23:42,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:23:44,915.915 INFO    ] ================================================
[2026-06-05 04:23:44,930.930 INFO    ] Launching Daemon at Fri Jun  5 04:23:44 IST 2026
[2026-06-05 04:23:44,941.941 INFO    ] ================================================
[2026-06-05 04:23:45,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:23:45
[2026-06-05 04:23:46,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:23:46,565.565 INFO    ] Initializing speech engine...
[2026-06-05 04:23:46,571.571 INFO    ] 2026-06-05 04:23:46
[2026-06-05 04:23:46,855.855 INFO    ] 2026-06-05 04:23:46
[2026-06-05 04:23:46,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:23:47,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:23:47,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:23:47,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:23:47,400.400 INFO    ] time= 05/06/2026 04:23:47
[2026-06-05 04:23:47,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:23:47,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:23:47,564.564 INFO    ] No existing commands found in stream
[2026-06-05 04:23:52,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:23:52,582.582 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 04:23:54,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:23:54,552.552 INFO    ] Checking for system updates...
[2026-06-05 04:23:54,590.590 INFO    ] 200
[2026-06-05 04:23:54,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:54,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:23:54,649.649 INFO    ] No update needed
[2026-06-05 04:23:54,652.652 INFO    ] Checking for camera pi updates...
[2026-06-05 04:23:54,687.687 INFO    ] 200
[2026-06-05 04:23:54,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:23:54,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:23:54,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:23:54,779.779 INFO    ] No camera update needed
[2026-06-05 04:23:54,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:23:54,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:23:54,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:23:54,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:23:56,837.837 INFO    ] ================================================
[2026-06-05 04:23:56,852.852 INFO    ] Launching Daemon at Fri Jun  5 04:23:56 IST 2026
[2026-06-05 04:23:56,862.862 INFO    ] ================================================
[2026-06-05 04:23:57,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:23:57
[2026-06-05 04:23:58,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:23:58,275.275 INFO    ] Initializing speech engine...
[2026-06-05 04:23:58,282.282 INFO    ] 2026-06-05 04:23:58
[2026-06-05 04:23:58,573.573 INFO    ] 2026-06-05 04:23:58
[2026-06-05 04:23:58,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:23:58,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:23:58,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:23:58,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:23:59,004.004 INFO    ] time= 05/06/2026 04:23:58
[2026-06-05 04:23:59,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:23:59,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:23:59,095.095 INFO    ] No existing commands found in stream
[2026-06-05 04:24:04,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:24:04,108.108 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 04:24:05,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:24:05,155.155 INFO    ] Checking for system updates...
[2026-06-05 04:24:05,192.192 INFO    ] 200
[2026-06-05 04:24:05,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:05,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:24:05,253.253 INFO    ] No update needed
[2026-06-05 04:24:05,256.256 INFO    ] Checking for camera pi updates...
[2026-06-05 04:24:05,292.292 INFO    ] 200
[2026-06-05 04:24:05,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:05,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:24:05,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:24:05,468.468 INFO    ] No camera update needed
[2026-06-05 04:24:05,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:24:05,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:24:05,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:24:05,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:24:07,525.525 INFO    ] ================================================
[2026-06-05 04:24:07,540.540 INFO    ] Launching Daemon at Fri Jun  5 04:24:07 IST 2026
[2026-06-05 04:24:07,551.551 INFO    ] ================================================
[2026-06-05 04:24:08,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:24:08
[2026-06-05 04:24:08,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:24:08,987.987 INFO    ] Initializing speech engine...
[2026-06-05 04:24:08,993.993 INFO    ] 2026-06-05 04:24:08
[2026-06-05 04:24:09,237.237 INFO    ] 2026-06-05 04:24:09
[2026-06-05 04:24:09,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:24:09,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:24:09,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:24:09,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:24:09,729.729 INFO    ] time= 05/06/2026 04:24:09
[2026-06-05 04:24:09,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:24:09,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:24:09,889.889 INFO    ] No existing commands found in stream
[2026-06-05 04:24:14,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:24:14,904.904 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 04:24:17,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:24:17,614.614 INFO    ] Checking for system updates...
[2026-06-05 04:24:17,651.651 INFO    ] 200
[2026-06-05 04:24:17,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:17,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:24:17,715.715 INFO    ] No update needed
[2026-06-05 04:24:17,718.718 INFO    ] Checking for camera pi updates...
[2026-06-05 04:24:17,754.754 INFO    ] 200
[2026-06-05 04:24:17,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:17,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:24:17,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:24:17,849.849 INFO    ] No camera update needed
[2026-06-05 04:24:17,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:24:17,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:24:17,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:24:17,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:24:19,905.905 INFO    ] ================================================
[2026-06-05 04:24:19,920.920 INFO    ] Launching Daemon at Fri Jun  5 04:24:19 IST 2026
[2026-06-05 04:24:19,931.931 INFO    ] ================================================
[2026-06-05 04:24:20,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:24:20
[2026-06-05 04:24:21,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:24:21,385.385 INFO    ] Initializing speech engine...
[2026-06-05 04:24:21,394.394 INFO    ] 2026-06-05 04:24:21
[2026-06-05 04:24:21,644.644 INFO    ] 2026-06-05 04:24:21
[2026-06-05 04:24:21,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:24:21,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:24:21,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:24:22,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:24:22,039.039 INFO    ] time= 05/06/2026 04:24:22
[2026-06-05 04:24:22,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:24:22,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:24:22,218.218 INFO    ] No existing commands found in stream
[2026-06-05 04:24:27,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:24:27,246.246 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 04:24:30,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:24:30,430.430 INFO    ] Checking for system updates...
[2026-06-05 04:24:30,466.466 INFO    ] 200
[2026-06-05 04:24:30,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:30,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:24:30,523.523 INFO    ] No update needed
[2026-06-05 04:24:30,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 04:24:30,562.562 INFO    ] 200
[2026-06-05 04:24:30,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:30,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:24:30,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:24:30,656.656 INFO    ] No camera update needed
[2026-06-05 04:24:30,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:24:30,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:24:30,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:24:30,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:24:32,713.713 INFO    ] ================================================
[2026-06-05 04:24:32,730.730 INFO    ] Launching Daemon at Fri Jun  5 04:24:32 IST 2026
[2026-06-05 04:24:32,743.743 INFO    ] ================================================
[2026-06-05 04:24:33,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:24:33
[2026-06-05 04:24:33,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:24:34,259.259 INFO    ] Initializing speech engine...
[2026-06-05 04:24:34,264.264 INFO    ] 2026-06-05 04:24:34
[2026-06-05 04:24:34,525.525 INFO    ] 2026-06-05 04:24:34
[2026-06-05 04:24:34,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:24:34,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:24:34,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:24:34,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:24:35,004.004 INFO    ] time= 05/06/2026 04:24:34
[2026-06-05 04:24:35,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:24:35,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:24:35,130.130 INFO    ] No existing commands found in stream
[2026-06-05 04:24:40,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:24:40,146.146 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 04:24:40,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:24:40,707.707 INFO    ] Checking for system updates...
[2026-06-05 04:24:40,743.743 INFO    ] 200
[2026-06-05 04:24:40,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:40,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:24:40,803.803 INFO    ] No update needed
[2026-06-05 04:24:40,805.805 INFO    ] Checking for camera pi updates...
[2026-06-05 04:24:40,841.841 INFO    ] 200
[2026-06-05 04:24:40,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:40,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:24:40,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:24:40,933.933 INFO    ] No camera update needed
[2026-06-05 04:24:40,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:24:40,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:24:40,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:24:40,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:24:42,989.989 INFO    ] ================================================
[2026-06-05 04:24:43,004.004 INFO    ] Launching Daemon at Fri Jun  5 04:24:42 IST 2026
[2026-06-05 04:24:43,015.015 INFO    ] ================================================
[2026-06-05 04:24:43,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:24:43
[2026-06-05 04:24:44,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:24:44,458.458 INFO    ] Initializing speech engine...
[2026-06-05 04:24:44,479.479 INFO    ] 2026-06-05 04:24:44
[2026-06-05 04:24:44,766.766 INFO    ] 2026-06-05 04:24:44
[2026-06-05 04:24:44,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:24:44,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:24:44,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:24:45,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:24:45,107.107 INFO    ] time= 05/06/2026 04:24:45
[2026-06-05 04:24:45,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:24:45,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:24:45,185.185 INFO    ] No existing commands found in stream
[2026-06-05 04:24:50,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:24:50,198.198 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 04:24:54,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:24:54,369.369 INFO    ] Checking for system updates...
[2026-06-05 04:24:54,406.406 INFO    ] 200
[2026-06-05 04:24:54,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:54,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:24:54,470.470 INFO    ] No update needed
[2026-06-05 04:24:54,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 04:24:54,513.513 INFO    ] 200
[2026-06-05 04:24:54,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:24:54,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:24:54,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:24:54,621.621 INFO    ] No camera update needed
[2026-06-05 04:24:54,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:24:54,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:24:54,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:24:54,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:24:56,680.680 INFO    ] ================================================
[2026-06-05 04:24:56,696.696 INFO    ] Launching Daemon at Fri Jun  5 04:24:56 IST 2026
[2026-06-05 04:24:56,706.706 INFO    ] ================================================
[2026-06-05 04:24:57,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:24:57
[2026-06-05 04:24:57,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:24:58,122.122 INFO    ] Initializing speech engine...
[2026-06-05 04:24:58,144.144 INFO    ] 2026-06-05 04:24:58
[2026-06-05 04:24:58,414.414 INFO    ] 2026-06-05 04:24:58
[2026-06-05 04:24:58,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:24:58,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:24:58,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:24:58,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:24:58,785.785 INFO    ] time= 05/06/2026 04:24:58
[2026-06-05 04:24:58,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:24:58,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:24:58,907.907 INFO    ] No existing commands found in stream
[2026-06-05 04:25:03,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:25:03,923.923 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 04:25:07,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:25:07,672.672 INFO    ] Checking for system updates...
[2026-06-05 04:25:07,708.708 INFO    ] 200
[2026-06-05 04:25:07,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:07,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:25:07,776.776 INFO    ] No update needed
[2026-06-05 04:25:07,779.779 INFO    ] Checking for camera pi updates...
[2026-06-05 04:25:07,815.815 INFO    ] 200
[2026-06-05 04:25:07,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:07,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:25:07,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:25:07,904.904 INFO    ] No camera update needed
[2026-06-05 04:25:07,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:25:07,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:25:07,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:25:07,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:25:09,960.960 INFO    ] ================================================
[2026-06-05 04:25:09,977.977 INFO    ] Launching Daemon at Fri Jun  5 04:25:09 IST 2026
[2026-06-05 04:25:09,988.988 INFO    ] ================================================
[2026-06-05 04:25:10,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:25:10
[2026-06-05 04:25:11,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:25:11,435.435 INFO    ] Initializing speech engine...
[2026-06-05 04:25:11,460.460 INFO    ] 2026-06-05 04:25:11
[2026-06-05 04:25:11,730.730 INFO    ] 2026-06-05 04:25:11
[2026-06-05 04:25:11,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:25:11,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:25:11,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:25:12,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:25:12,116.116 INFO    ] time= 05/06/2026 04:25:12
[2026-06-05 04:25:12,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:25:12,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:25:12,221.221 INFO    ] No existing commands found in stream
[2026-06-05 04:25:17,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:25:17,237.237 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 04:25:21,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:25:21,064.064 INFO    ] Checking for system updates...
[2026-06-05 04:25:21,101.101 INFO    ] 200
[2026-06-05 04:25:21,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:21,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:25:21,165.165 INFO    ] No update needed
[2026-06-05 04:25:21,168.168 INFO    ] Checking for camera pi updates...
[2026-06-05 04:25:21,205.205 INFO    ] 200
[2026-06-05 04:25:21,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:21,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:25:21,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:25:21,295.295 INFO    ] No camera update needed
[2026-06-05 04:25:21,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:25:21,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:25:21,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:25:21,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:25:23,442.442 INFO    ] ================================================
[2026-06-05 04:25:23,458.458 INFO    ] Launching Daemon at Fri Jun  5 04:25:23 IST 2026
[2026-06-05 04:25:23,469.469 INFO    ] ================================================
[2026-06-05 04:25:24,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:25:24
[2026-06-05 04:25:24,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:25:24,890.890 INFO    ] Initializing speech engine...
[2026-06-05 04:25:24,897.897 INFO    ] 2026-06-05 04:25:24
[2026-06-05 04:25:25,173.173 INFO    ] 2026-06-05 04:25:25
[2026-06-05 04:25:25,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:25:25,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:25:25,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:25:25,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:25:25,551.551 INFO    ] time= 05/06/2026 04:25:25
[2026-06-05 04:25:25,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:25:25,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:25:25,722.722 INFO    ] No existing commands found in stream
[2026-06-05 04:25:30,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:25:30,750.750 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 04:25:33,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:25:33,583.583 INFO    ] Checking for system updates...
[2026-06-05 04:25:33,620.620 INFO    ] 200
[2026-06-05 04:25:33,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:33,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:25:33,677.677 INFO    ] No update needed
[2026-06-05 04:25:33,679.679 INFO    ] Checking for camera pi updates...
[2026-06-05 04:25:33,713.713 INFO    ] 200
[2026-06-05 04:25:33,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:33,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:25:33,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:25:33,802.802 INFO    ] No camera update needed
[2026-06-05 04:25:33,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:25:33,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:25:33,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:25:33,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:25:35,858.858 INFO    ] ================================================
[2026-06-05 04:25:35,874.874 INFO    ] Launching Daemon at Fri Jun  5 04:25:35 IST 2026
[2026-06-05 04:25:35,885.885 INFO    ] ================================================
[2026-06-05 04:25:36,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:25:36
[2026-06-05 04:25:37,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:25:37,442.442 INFO    ] Initializing speech engine...
[2026-06-05 04:25:37,450.450 INFO    ] 2026-06-05 04:25:37
[2026-06-05 04:25:37,732.732 INFO    ] 2026-06-05 04:25:37
[2026-06-05 04:25:37,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:25:38,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:25:38,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:25:38,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:25:38,266.266 INFO    ] time= 05/06/2026 04:25:38
[2026-06-05 04:25:38,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:25:38,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:25:38,403.403 INFO    ] No existing commands found in stream
[2026-06-05 04:25:43,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:25:43,432.432 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 04:25:45,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:25:45,516.516 INFO    ] Checking for system updates...
[2026-06-05 04:25:45,553.553 INFO    ] 200
[2026-06-05 04:25:45,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:45,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:25:45,612.612 INFO    ] No update needed
[2026-06-05 04:25:45,614.614 INFO    ] Checking for camera pi updates...
[2026-06-05 04:25:45,651.651 INFO    ] 200
[2026-06-05 04:25:45,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:45,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:25:45,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:25:45,754.754 INFO    ] No camera update needed
[2026-06-05 04:25:45,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:25:45,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:25:45,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:25:45,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:25:47,812.812 INFO    ] ================================================
[2026-06-05 04:25:47,828.828 INFO    ] Launching Daemon at Fri Jun  5 04:25:47 IST 2026
[2026-06-05 04:25:47,839.839 INFO    ] ================================================
[2026-06-05 04:25:48,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:25:48
[2026-06-05 04:25:49,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:25:49,405.405 INFO    ] Initializing speech engine...
[2026-06-05 04:25:49,418.418 INFO    ] 2026-06-05 04:25:49
[2026-06-05 04:25:49,690.690 INFO    ] 2026-06-05 04:25:49
[2026-06-05 04:25:49,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:25:49,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:25:49,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:25:50,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:25:50,236.236 INFO    ] time= 05/06/2026 04:25:50
[2026-06-05 04:25:50,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:25:50,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:25:50,376.376 INFO    ] No existing commands found in stream
[2026-06-05 04:25:55,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:25:55,402.402 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 04:25:56,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:25:56,951.951 INFO    ] Checking for system updates...
[2026-06-05 04:25:56,990.990 INFO    ] 200
[2026-06-05 04:25:56,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:57,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:25:57,055.055 INFO    ] No update needed
[2026-06-05 04:25:57,058.058 INFO    ] Checking for camera pi updates...
[2026-06-05 04:25:57,093.093 INFO    ] 200
[2026-06-05 04:25:57,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:25:57,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:25:57,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:25:57,195.195 INFO    ] No camera update needed
[2026-06-05 04:25:57,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:25:57,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:25:57,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:25:57,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:25:59,254.254 INFO    ] ================================================
[2026-06-05 04:25:59,270.270 INFO    ] Launching Daemon at Fri Jun  5 04:25:59 IST 2026
[2026-06-05 04:25:59,281.281 INFO    ] ================================================
[2026-06-05 04:25:59,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:25:59
[2026-06-05 04:26:00,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:26:00,684.684 INFO    ] Initializing speech engine...
[2026-06-05 04:26:00,700.700 INFO    ] 2026-06-05 04:26:00
[2026-06-05 04:26:00,952.952 INFO    ] 2026-06-05 04:26:00
[2026-06-05 04:26:00,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:26:01,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:26:01,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:26:01,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:26:01,320.320 INFO    ] time= 05/06/2026 04:26:01
[2026-06-05 04:26:01,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:26:01,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:26:01,462.462 INFO    ] No existing commands found in stream
[2026-06-05 04:26:06,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:26:06,490.490 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 04:26:09,176.176 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:26:09,178.178 INFO    ] Checking for system updates...
[2026-06-05 04:26:09,214.214 INFO    ] 200
[2026-06-05 04:26:09,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:26:09,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:26:09,277.277 INFO    ] No update needed
[2026-06-05 04:26:09,280.280 INFO    ] Checking for camera pi updates...
[2026-06-05 04:26:09,317.317 INFO    ] 200
[2026-06-05 04:26:09,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:26:09,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:26:09,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:26:09,511.511 INFO    ] No camera update needed
[2026-06-05 04:26:09,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:26:09,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:26:09,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:26:09,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:26:11,568.568 INFO    ] ================================================
[2026-06-05 04:26:11,583.583 INFO    ] Launching Daemon at Fri Jun  5 04:26:11 IST 2026
[2026-06-05 04:26:11,594.594 INFO    ] ================================================
[2026-06-05 04:26:12,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:26:12
[2026-06-05 04:26:12,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:26:13,007.007 INFO    ] Initializing speech engine...
[2026-06-05 04:26:13,021.021 INFO    ] 2026-06-05 04:26:13
[2026-06-05 04:26:13,289.289 INFO    ] 2026-06-05 04:26:13
[2026-06-05 04:26:13,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:26:13,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:26:13,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:26:13,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:26:13,663.663 INFO    ] time= 05/06/2026 04:26:13
[2026-06-05 04:26:13,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:26:13,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:26:13,742.742 INFO    ] No existing commands found in stream
[2026-06-05 04:26:18,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:26:18,775.775 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 04:26:21,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:26:21,387.387 INFO    ] Checking for system updates...
[2026-06-05 04:26:21,423.423 INFO    ] 200
[2026-06-05 04:26:21,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:26:21,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:26:21,480.480 INFO    ] No update needed
[2026-06-05 04:26:21,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 04:26:21,516.516 INFO    ] 200
[2026-06-05 04:26:21,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:26:21,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:26:21,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:26:21,616.616 INFO    ] No camera update needed
[2026-06-05 04:26:21,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:26:21,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:26:21,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:26:21,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:26:23,680.680 INFO    ] ================================================
[2026-06-05 04:26:23,696.696 INFO    ] Launching Daemon at Fri Jun  5 04:26:23 IST 2026
[2026-06-05 04:26:23,707.707 INFO    ] ================================================
[2026-06-05 04:26:24,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:26:24
[2026-06-05 04:26:24,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:26:25,169.169 INFO    ] Initializing speech engine...
[2026-06-05 04:26:25,178.178 INFO    ] 2026-06-05 04:26:25
[2026-06-05 04:26:25,433.433 INFO    ] 2026-06-05 04:26:25
[2026-06-05 04:26:25,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:26:25,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:26:25,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:26:25,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:26:25,907.907 INFO    ] time= 05/06/2026 04:26:25
[2026-06-05 04:26:25,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:26:25,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:26:26,058.058 INFO    ] No existing commands found in stream
[2026-06-05 04:26:31,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:26:31,073.073 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 04:26:35,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:26:35,270.270 INFO    ] Checking for system updates...
[2026-06-05 04:26:35,307.307 INFO    ] 200
[2026-06-05 04:26:35,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:26:35,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:26:35,366.366 INFO    ] No update needed
[2026-06-05 04:26:35,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 04:26:35,403.403 INFO    ] 200
[2026-06-05 04:26:35,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:26:35,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:26:35,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:26:35,504.504 INFO    ] No camera update needed
[2026-06-05 04:26:35,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:26:35,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:26:35,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:26:35,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:26:37,567.567 INFO    ] ================================================
[2026-06-05 04:26:37,587.587 INFO    ] Launching Daemon at Fri Jun  5 04:26:37 IST 2026
[2026-06-05 04:26:37,601.601 INFO    ] ================================================
[2026-06-05 04:26:38,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:26:38
[2026-06-05 04:26:38,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:26:39,063.063 INFO    ] Initializing speech engine...
[2026-06-05 04:26:39,076.076 INFO    ] 2026-06-05 04:26:39
[2026-06-05 04:26:39,330.330 INFO    ] 2026-06-05 04:26:39
[2026-06-05 04:26:39,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:26:39,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:26:39,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:26:39,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:26:39,788.788 INFO    ] time= 05/06/2026 04:26:39
[2026-06-05 04:26:39,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:26:39,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:26:39,961.961 INFO    ] No existing commands found in stream
[2026-06-05 04:26:44,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:26:44,975.975 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 04:26:47,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:26:47,789.789 INFO    ] Checking for system updates...
[2026-06-05 04:26:47,825.825 INFO    ] 200
[2026-06-05 04:26:47,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:26:47,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:26:47,883.883 INFO    ] No update needed
[2026-06-05 04:26:47,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 04:26:47,919.919 INFO    ] 200
[2026-06-05 04:26:47,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:26:47,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:26:48,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:26:48,016.016 INFO    ] No camera update needed
[2026-06-05 04:26:48,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:26:48,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:26:48,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:26:48,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:26:50,073.073 INFO    ] ================================================
[2026-06-05 04:26:50,089.089 INFO    ] Launching Daemon at Fri Jun  5 04:26:50 IST 2026
[2026-06-05 04:26:50,101.101 INFO    ] ================================================
[2026-06-05 04:26:50,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:26:50
[2026-06-05 04:26:51,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:26:51,530.530 INFO    ] Initializing speech engine...
[2026-06-05 04:26:51,538.538 INFO    ] 2026-06-05 04:26:51
[2026-06-05 04:26:51,792.792 INFO    ] 2026-06-05 04:26:51
[2026-06-05 04:26:51,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:26:52,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:26:52,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:26:52,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:26:52,257.257 INFO    ] time= 05/06/2026 04:26:52
[2026-06-05 04:26:52,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:26:52,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:26:52,465.465 INFO    ] No existing commands found in stream
[2026-06-05 04:26:57,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:26:57,490.490 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 04:27:00,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:27:00,738.738 INFO    ] Checking for system updates...
[2026-06-05 04:27:00,777.777 INFO    ] 200
[2026-06-05 04:27:00,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:00,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:27:00,846.846 INFO    ] No update needed
[2026-06-05 04:27:00,848.848 INFO    ] Checking for camera pi updates...
[2026-06-05 04:27:00,882.882 INFO    ] 200
[2026-06-05 04:27:00,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:00,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:27:00,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:27:00,977.977 INFO    ] No camera update needed
[2026-06-05 04:27:00,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:27:00,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:27:00,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:27:00,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:27:03,044.044 INFO    ] ================================================
[2026-06-05 04:27:03,064.064 INFO    ] Launching Daemon at Fri Jun  5 04:27:03 IST 2026
[2026-06-05 04:27:03,083.083 INFO    ] ================================================
[2026-06-05 04:27:03,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:27:03
[2026-06-05 04:27:04,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:27:04,554.554 INFO    ] Initializing speech engine...
[2026-06-05 04:27:04,563.563 INFO    ] 2026-06-05 04:27:04
[2026-06-05 04:27:04,816.816 INFO    ] 2026-06-05 04:27:04
[2026-06-05 04:27:04,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:27:05,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:27:05,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:27:05,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:27:05,287.287 INFO    ] time= 05/06/2026 04:27:05
[2026-06-05 04:27:05,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:27:05,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:27:05,431.431 INFO    ] No existing commands found in stream
[2026-06-05 04:27:10,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:27:10,459.459 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 04:27:13,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:27:13,188.188 INFO    ] Checking for system updates...
[2026-06-05 04:27:13,227.227 INFO    ] 200
[2026-06-05 04:27:13,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:13,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:27:13,291.291 INFO    ] No update needed
[2026-06-05 04:27:13,294.294 INFO    ] Checking for camera pi updates...
[2026-06-05 04:27:13,327.327 INFO    ] 200
[2026-06-05 04:27:13,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:13,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:27:13,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:27:13,422.422 INFO    ] No camera update needed
[2026-06-05 04:27:13,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:27:13,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:27:13,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:27:13,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:27:15,480.480 INFO    ] ================================================
[2026-06-05 04:27:15,495.495 INFO    ] Launching Daemon at Fri Jun  5 04:27:15 IST 2026
[2026-06-05 04:27:15,507.507 INFO    ] ================================================
[2026-06-05 04:27:16,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:27:16
[2026-06-05 04:27:16,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:27:17,012.012 INFO    ] Initializing speech engine...
[2026-06-05 04:27:17,022.022 INFO    ] 2026-06-05 04:27:17
[2026-06-05 04:27:17,273.273 INFO    ] 2026-06-05 04:27:17
[2026-06-05 04:27:17,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:27:17,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:27:17,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:27:17,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:27:17,757.757 INFO    ] time= 05/06/2026 04:27:17
[2026-06-05 04:27:17,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:27:17,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:27:17,894.894 INFO    ] No existing commands found in stream
[2026-06-05 04:27:22,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:27:22,909.909 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 04:27:25,298.298 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:27:25,301.301 INFO    ] Checking for system updates...
[2026-06-05 04:27:25,337.337 INFO    ] 200
[2026-06-05 04:27:25,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:25,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:27:25,394.394 INFO    ] No update needed
[2026-06-05 04:27:25,397.397 INFO    ] Checking for camera pi updates...
[2026-06-05 04:27:25,434.434 INFO    ] 200
[2026-06-05 04:27:25,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:25,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:27:25,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:27:25,530.530 INFO    ] No camera update needed
[2026-06-05 04:27:25,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:27:25,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:27:25,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:27:25,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:27:27,588.588 INFO    ] ================================================
[2026-06-05 04:27:27,603.603 INFO    ] Launching Daemon at Fri Jun  5 04:27:27 IST 2026
[2026-06-05 04:27:27,615.615 INFO    ] ================================================
[2026-06-05 04:27:28,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:27:28
[2026-06-05 04:27:28,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:27:29,074.074 INFO    ] Initializing speech engine...
[2026-06-05 04:27:29,079.079 INFO    ] 2026-06-05 04:27:29
[2026-06-05 04:27:29,326.326 INFO    ] 2026-06-05 04:27:29
[2026-06-05 04:27:29,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:27:29,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:27:29,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:27:29,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:27:29,781.781 INFO    ] time= 05/06/2026 04:27:29
[2026-06-05 04:27:29,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:27:29,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:27:29,949.949 INFO    ] No existing commands found in stream
[2026-06-05 04:27:34,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:27:34,963.963 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 04:27:36,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:27:36,058.058 INFO    ] Checking for system updates...
[2026-06-05 04:27:36,097.097 INFO    ] 200
[2026-06-05 04:27:36,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:36,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:27:36,154.154 INFO    ] No update needed
[2026-06-05 04:27:36,157.157 INFO    ] Checking for camera pi updates...
[2026-06-05 04:27:36,191.191 INFO    ] 200
[2026-06-05 04:27:36,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:36,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:27:36,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:27:36,275.275 INFO    ] No camera update needed
[2026-06-05 04:27:36,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:27:36,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:27:36,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:27:36,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:27:38,331.331 INFO    ] ================================================
[2026-06-05 04:27:38,346.346 INFO    ] Launching Daemon at Fri Jun  5 04:27:38 IST 2026
[2026-06-05 04:27:38,358.358 INFO    ] ================================================
[2026-06-05 04:27:38,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:27:38
[2026-06-05 04:27:39,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:27:39,805.805 INFO    ] Initializing speech engine...
[2026-06-05 04:27:39,814.814 INFO    ] 2026-06-05 04:27:39
[2026-06-05 04:27:40,073.073 INFO    ] 2026-06-05 04:27:40
[2026-06-05 04:27:40,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:27:40,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:27:40,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:27:40,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:27:40,532.532 INFO    ] time= 05/06/2026 04:27:40
[2026-06-05 04:27:40,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:27:40,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:27:40,679.679 INFO    ] No existing commands found in stream
[2026-06-05 04:27:45,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:27:45,694.694 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 04:27:46,840.840 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:27:46,843.843 INFO    ] Checking for system updates...
[2026-06-05 04:27:46,881.881 INFO    ] 200
[2026-06-05 04:27:46,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:46,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:27:46,949.949 INFO    ] No update needed
[2026-06-05 04:27:46,952.952 INFO    ] Checking for camera pi updates...
[2026-06-05 04:27:46,989.989 INFO    ] 200
[2026-06-05 04:27:46,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:27:47,037.037 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:27:47,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:27:47,083.083 INFO    ] No camera update needed
[2026-06-05 04:27:47,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:27:47,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:27:47,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:27:47,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:27:49,139.139 INFO    ] ================================================
[2026-06-05 04:27:49,154.154 INFO    ] Launching Daemon at Fri Jun  5 04:27:49 IST 2026
[2026-06-05 04:27:49,165.165 INFO    ] ================================================
[2026-06-05 04:27:49,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:27:49
[2026-06-05 04:27:50,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:27:50,564.564 INFO    ] Initializing speech engine...
[2026-06-05 04:27:50,572.572 INFO    ] 2026-06-05 04:27:50
[2026-06-05 04:27:50,847.847 INFO    ] 2026-06-05 04:27:50
[2026-06-05 04:27:50,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:27:51,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:27:51,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:27:51,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:27:51,229.229 INFO    ] time= 05/06/2026 04:27:51
[2026-06-05 04:27:51,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:27:51,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:27:51,426.426 INFO    ] No existing commands found in stream
[2026-06-05 04:27:56,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:27:56,440.440 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 04:28:03,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:28:03,364.364 INFO    ] Checking for system updates...
[2026-06-05 04:28:03,409.409 INFO    ] 200
[2026-06-05 04:28:03,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:03,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:28:03,493.493 INFO    ] No update needed
[2026-06-05 04:28:03,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 04:28:03,539.539 INFO    ] 200
[2026-06-05 04:28:03,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:03,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:28:03,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:28:03,613.613 INFO    ] No camera update needed
[2026-06-05 04:28:03,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:28:03,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:28:03,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:28:03,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:28:05,674.674 INFO    ] ================================================
[2026-06-05 04:28:05,689.689 INFO    ] Launching Daemon at Fri Jun  5 04:28:05 IST 2026
[2026-06-05 04:28:05,700.700 INFO    ] ================================================
[2026-06-05 04:28:06,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:28:06
[2026-06-05 04:28:06,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:28:07,172.172 INFO    ] Initializing speech engine...
[2026-06-05 04:28:07,181.181 INFO    ] 2026-06-05 04:28:07
[2026-06-05 04:28:07,445.445 INFO    ] 2026-06-05 04:28:07
[2026-06-05 04:28:07,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:28:07,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:28:07,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:28:07,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:28:07,905.905 INFO    ] time= 05/06/2026 04:28:07
[2026-06-05 04:28:07,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:28:07,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:28:08,055.055 INFO    ] No existing commands found in stream
[2026-06-05 04:28:13,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:28:13,079.079 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 04:28:15,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:28:15,157.157 INFO    ] Checking for system updates...
[2026-06-05 04:28:15,194.194 INFO    ] 200
[2026-06-05 04:28:15,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:15,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:28:15,259.259 INFO    ] No update needed
[2026-06-05 04:28:15,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 04:28:15,295.295 INFO    ] 200
[2026-06-05 04:28:15,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:15,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:28:15,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:28:15,483.483 INFO    ] No camera update needed
[2026-06-05 04:28:15,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:28:15,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:28:15,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:28:15,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:28:17,540.540 INFO    ] ================================================
[2026-06-05 04:28:17,556.556 INFO    ] Launching Daemon at Fri Jun  5 04:28:17 IST 2026
[2026-06-05 04:28:17,567.567 INFO    ] ================================================
[2026-06-05 04:28:18,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:28:18
[2026-06-05 04:28:18,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:28:18,972.972 INFO    ] Initializing speech engine...
[2026-06-05 04:28:18,995.995 INFO    ] 2026-06-05 04:28:18
[2026-06-05 04:28:19,252.252 INFO    ] 2026-06-05 04:28:19
[2026-06-05 04:28:19,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:28:19,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:28:19,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:28:19,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:28:19,707.707 INFO    ] time= 05/06/2026 04:28:19
[2026-06-05 04:28:19,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:28:19,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:28:19,842.842 INFO    ] No existing commands found in stream
[2026-06-05 04:28:24,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:28:24,859.859 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 04:28:26,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:28:26,519.519 INFO    ] Checking for system updates...
[2026-06-05 04:28:26,558.558 INFO    ] 200
[2026-06-05 04:28:26,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:26,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:28:26,615.615 INFO    ] No update needed
[2026-06-05 04:28:26,618.618 INFO    ] Checking for camera pi updates...
[2026-06-05 04:28:26,652.652 INFO    ] 200
[2026-06-05 04:28:26,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:26,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:28:26,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:28:26,753.753 INFO    ] No camera update needed
[2026-06-05 04:28:26,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:28:26,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:28:26,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:28:26,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:28:28,811.811 INFO    ] ================================================
[2026-06-05 04:28:28,826.826 INFO    ] Launching Daemon at Fri Jun  5 04:28:28 IST 2026
[2026-06-05 04:28:28,837.837 INFO    ] ================================================
[2026-06-05 04:28:29,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:28:29
[2026-06-05 04:28:30,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:28:30,309.309 INFO    ] Initializing speech engine...
[2026-06-05 04:28:30,319.319 INFO    ] 2026-06-05 04:28:30
[2026-06-05 04:28:30,587.587 INFO    ] 2026-06-05 04:28:30
[2026-06-05 04:28:30,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:28:30,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:28:30,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:28:30,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:28:30,969.969 INFO    ] time= 05/06/2026 04:28:30
[2026-06-05 04:28:30,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:28:31,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:28:31,094.094 INFO    ] No existing commands found in stream
[2026-06-05 04:28:36,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:28:36,109.109 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 04:28:39,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:28:39,934.934 INFO    ] Checking for system updates...
[2026-06-05 04:28:39,970.970 INFO    ] 200
[2026-06-05 04:28:39,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:40,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:28:40,028.028 INFO    ] No update needed
[2026-06-05 04:28:40,030.030 INFO    ] Checking for camera pi updates...
[2026-06-05 04:28:40,067.067 INFO    ] 200
[2026-06-05 04:28:40,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:40,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:28:40,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:28:40,171.171 INFO    ] No camera update needed
[2026-06-05 04:28:40,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:28:40,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:28:40,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:28:40,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:28:42,229.229 INFO    ] ================================================
[2026-06-05 04:28:42,244.244 INFO    ] Launching Daemon at Fri Jun  5 04:28:42 IST 2026
[2026-06-05 04:28:42,255.255 INFO    ] ================================================
[2026-06-05 04:28:42,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:28:42
[2026-06-05 04:28:43,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:28:43,715.715 INFO    ] Initializing speech engine...
[2026-06-05 04:28:43,724.724 INFO    ] 2026-06-05 04:28:43
[2026-06-05 04:28:43,973.973 INFO    ] 2026-06-05 04:28:43
[2026-06-05 04:28:44,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:28:44,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:28:44,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:28:44,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:28:44,350.350 INFO    ] time= 05/06/2026 04:28:44
[2026-06-05 04:28:44,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:28:44,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:28:44,522.522 INFO    ] No existing commands found in stream
[2026-06-05 04:28:49,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:28:49,549.549 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 04:28:52,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:28:52,738.738 INFO    ] Checking for system updates...
[2026-06-05 04:28:52,778.778 INFO    ] 200
[2026-06-05 04:28:52,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:52,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:28:52,864.864 INFO    ] No update needed
[2026-06-05 04:28:52,867.867 INFO    ] Checking for camera pi updates...
[2026-06-05 04:28:52,906.906 INFO    ] 200
[2026-06-05 04:28:52,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:28:52,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:28:53,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:28:53,009.009 INFO    ] No camera update needed
[2026-06-05 04:28:53,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:28:53,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:28:53,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:28:53,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:28:55,070.070 INFO    ] ================================================
[2026-06-05 04:28:55,087.087 INFO    ] Launching Daemon at Fri Jun  5 04:28:55 IST 2026
[2026-06-05 04:28:55,098.098 INFO    ] ================================================
[2026-06-05 04:28:55,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:28:55
[2026-06-05 04:28:56,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:28:56,556.556 INFO    ] Initializing speech engine...
[2026-06-05 04:28:56,581.581 INFO    ] 2026-06-05 04:28:56
[2026-06-05 04:28:56,857.857 INFO    ] 2026-06-05 04:28:56
[2026-06-05 04:28:56,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:28:57,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:28:57,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:28:57,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:28:57,275.275 INFO    ] time= 05/06/2026 04:28:57
[2026-06-05 04:28:57,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:28:57,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:28:57,363.363 INFO    ] No existing commands found in stream
[2026-06-05 04:29:02,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:29:02,401.401 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 04:29:02,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:29:02,956.956 INFO    ] Checking for system updates...
[2026-06-05 04:29:03,016.016 INFO    ] 200
[2026-06-05 04:29:03,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:03,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:29:03,083.083 INFO    ] No update needed
[2026-06-05 04:29:03,086.086 INFO    ] Checking for camera pi updates...
[2026-06-05 04:29:03,128.128 INFO    ] 200
[2026-06-05 04:29:03,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:03,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:29:03,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:29:03,214.214 INFO    ] No camera update needed
[2026-06-05 04:29:03,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:29:03,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:29:03,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:29:03,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:29:05,272.272 INFO    ] ================================================
[2026-06-05 04:29:05,288.288 INFO    ] Launching Daemon at Fri Jun  5 04:29:05 IST 2026
[2026-06-05 04:29:05,302.302 INFO    ] ================================================
[2026-06-05 04:29:05,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:29:05
[2026-06-05 04:29:06,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:29:06,830.830 INFO    ] Initializing speech engine...
[2026-06-05 04:29:06,842.842 INFO    ] 2026-06-05 04:29:06
[2026-06-05 04:29:07,093.093 INFO    ] 2026-06-05 04:29:07
[2026-06-05 04:29:07,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:29:07,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:29:07,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:29:07,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:29:07,555.555 INFO    ] time= 05/06/2026 04:29:07
[2026-06-05 04:29:07,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:29:07,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:29:07,726.726 INFO    ] No existing commands found in stream
[2026-06-05 04:29:12,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:29:12,741.741 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 04:29:13,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:29:13,641.641 INFO    ] Checking for system updates...
[2026-06-05 04:29:13,677.677 INFO    ] 200
[2026-06-05 04:29:13,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:13,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:29:13,739.739 INFO    ] No update needed
[2026-06-05 04:29:13,742.742 INFO    ] Checking for camera pi updates...
[2026-06-05 04:29:13,778.778 INFO    ] 200
[2026-06-05 04:29:13,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:13,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:29:13,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:29:13,866.866 INFO    ] No camera update needed
[2026-06-05 04:29:13,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:29:13,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:29:13,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:29:13,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:29:15,920.920 INFO    ] ================================================
[2026-06-05 04:29:15,936.936 INFO    ] Launching Daemon at Fri Jun  5 04:29:15 IST 2026
[2026-06-05 04:29:15,947.947 INFO    ] ================================================
[2026-06-05 04:29:16,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:29:16
[2026-06-05 04:29:17,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:29:17,515.515 INFO    ] Initializing speech engine...
[2026-06-05 04:29:17,528.528 INFO    ] 2026-06-05 04:29:17
[2026-06-05 04:29:17,803.803 INFO    ] 2026-06-05 04:29:17
[2026-06-05 04:29:17,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:29:18,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:29:18,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:29:18,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:29:18,189.189 INFO    ] time= 05/06/2026 04:29:18
[2026-06-05 04:29:18,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:29:18,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:29:18,386.386 INFO    ] No existing commands found in stream
[2026-06-05 04:29:23,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:29:23,402.402 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 04:29:24,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:29:24,644.644 INFO    ] Checking for system updates...
[2026-06-05 04:29:24,686.686 INFO    ] 200
[2026-06-05 04:29:24,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:24,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:29:24,744.744 INFO    ] No update needed
[2026-06-05 04:29:24,747.747 INFO    ] Checking for camera pi updates...
[2026-06-05 04:29:24,782.782 INFO    ] 200
[2026-06-05 04:29:24,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:24,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:29:24,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:29:24,868.868 INFO    ] No camera update needed
[2026-06-05 04:29:24,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:29:24,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:29:24,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:29:24,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:29:26,927.927 INFO    ] ================================================
[2026-06-05 04:29:26,942.942 INFO    ] Launching Daemon at Fri Jun  5 04:29:26 IST 2026
[2026-06-05 04:29:26,953.953 INFO    ] ================================================
[2026-06-05 04:29:27,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:29:27
[2026-06-05 04:29:28,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:29:28,438.438 INFO    ] Initializing speech engine...
[2026-06-05 04:29:28,444.444 INFO    ] 2026-06-05 04:29:28
[2026-06-05 04:29:28,726.726 INFO    ] 2026-06-05 04:29:28
[2026-06-05 04:29:28,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:29:28,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:29:28,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:29:29,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:29:29,072.072 INFO    ] time= 05/06/2026 04:29:29
[2026-06-05 04:29:29,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:29:29,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:29:29,153.153 INFO    ] No existing commands found in stream
[2026-06-05 04:29:34,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:29:34,168.168 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 04:29:36,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:29:36,826.826 INFO    ] Checking for system updates...
[2026-06-05 04:29:36,861.861 INFO    ] 200
[2026-06-05 04:29:36,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:36,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:29:36,924.924 INFO    ] No update needed
[2026-06-05 04:29:36,927.927 INFO    ] Checking for camera pi updates...
[2026-06-05 04:29:36,960.960 INFO    ] 200
[2026-06-05 04:29:36,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:37,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:29:37,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:29:37,051.051 INFO    ] No camera update needed
[2026-06-05 04:29:37,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:29:37,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:29:37,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:29:37,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:29:39,108.108 INFO    ] ================================================
[2026-06-05 04:29:39,123.123 INFO    ] Launching Daemon at Fri Jun  5 04:29:39 IST 2026
[2026-06-05 04:29:39,135.135 INFO    ] ================================================
[2026-06-05 04:29:39,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:29:39
[2026-06-05 04:29:40,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:29:40,596.596 INFO    ] Initializing speech engine...
[2026-06-05 04:29:40,605.605 INFO    ] 2026-06-05 04:29:40
[2026-06-05 04:29:40,854.854 INFO    ] 2026-06-05 04:29:40
[2026-06-05 04:29:40,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:29:41,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:29:41,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:29:41,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:29:41,339.339 INFO    ] time= 05/06/2026 04:29:41
[2026-06-05 04:29:41,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:29:41,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:29:41,469.469 INFO    ] No existing commands found in stream
[2026-06-05 04:29:46,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:29:46,484.484 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 04:29:50,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:29:50,021.021 INFO    ] Checking for system updates...
[2026-06-05 04:29:50,056.056 INFO    ] 200
[2026-06-05 04:29:50,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:50,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:29:50,114.114 INFO    ] No update needed
[2026-06-05 04:29:50,117.117 INFO    ] Checking for camera pi updates...
[2026-06-05 04:29:50,153.153 INFO    ] 200
[2026-06-05 04:29:50,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:29:50,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:29:50,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:29:50,255.255 INFO    ] No camera update needed
[2026-06-05 04:29:50,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:29:50,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:29:50,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:29:50,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:29:52,309.309 INFO    ] ================================================
[2026-06-05 04:29:52,325.325 INFO    ] Launching Daemon at Fri Jun  5 04:29:52 IST 2026
[2026-06-05 04:29:52,337.337 INFO    ] ================================================
[2026-06-05 04:29:52,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:29:52
[2026-06-05 04:29:53,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:29:53,841.841 INFO    ] Initializing speech engine...
[2026-06-05 04:29:53,860.860 INFO    ] 2026-06-05 04:29:53
[2026-06-05 04:29:54,110.110 INFO    ] 2026-06-05 04:29:54
[2026-06-05 04:29:54,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:29:54,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:29:54,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:29:54,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:29:54,576.576 INFO    ] time= 05/06/2026 04:29:54
[2026-06-05 04:29:54,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:29:54,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:29:54,726.726 INFO    ] No existing commands found in stream
[2026-06-05 04:29:59,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:29:59,763.763 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 04:30:02,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:30:02,400.400 INFO    ] Checking for system updates...
[2026-06-05 04:30:02,515.515 INFO    ] 200
[2026-06-05 04:30:02,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:02,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:30:02,741.741 INFO    ] No update needed
[2026-06-05 04:30:02,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 04:30:02,868.868 INFO    ] 200
[2026-06-05 04:30:02,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:02,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:30:03,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:30:03,011.011 INFO    ] No camera update needed
[2026-06-05 04:30:03,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:30:03,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:30:03,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:30:03,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:30:05,074.074 INFO    ] ================================================
[2026-06-05 04:30:05,090.090 INFO    ] Launching Daemon at Fri Jun  5 04:30:05 IST 2026
[2026-06-05 04:30:05,101.101 INFO    ] ================================================
[2026-06-05 04:30:05,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:30:05
[2026-06-05 04:30:06,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:30:06,542.542 INFO    ] Initializing speech engine...
[2026-06-05 04:30:06,549.549 INFO    ] 2026-06-05 04:30:06
[2026-06-05 04:30:06,792.792 INFO    ] 2026-06-05 04:30:06
[2026-06-05 04:30:06,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:30:07,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:30:07,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:30:07,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:30:07,280.280 INFO    ] time= 05/06/2026 04:30:07
[2026-06-05 04:30:07,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:30:07,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:30:07,429.429 INFO    ] No existing commands found in stream
[2026-06-05 04:30:12,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:30:12,443.443 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 04:30:15,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:30:15,588.588 INFO    ] Checking for system updates...
[2026-06-05 04:30:15,624.624 INFO    ] 200
[2026-06-05 04:30:15,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:15,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:30:15,682.682 INFO    ] No update needed
[2026-06-05 04:30:15,685.685 INFO    ] Checking for camera pi updates...
[2026-06-05 04:30:15,721.721 INFO    ] 200
[2026-06-05 04:30:15,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:15,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:30:15,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:30:15,807.807 INFO    ] No camera update needed
[2026-06-05 04:30:15,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:30:15,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:30:15,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:30:15,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:30:17,862.862 INFO    ] ================================================
[2026-06-05 04:30:17,877.877 INFO    ] Launching Daemon at Fri Jun  5 04:30:17 IST 2026
[2026-06-05 04:30:17,888.888 INFO    ] ================================================
[2026-06-05 04:30:18,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:30:18
[2026-06-05 04:30:19,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:30:19,331.331 INFO    ] Initializing speech engine...
[2026-06-05 04:30:19,339.339 INFO    ] 2026-06-05 04:30:19
[2026-06-05 04:30:19,598.598 INFO    ] 2026-06-05 04:30:19
[2026-06-05 04:30:19,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:30:19,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:30:19,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:30:20,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:30:20,084.084 INFO    ] time= 05/06/2026 04:30:20
[2026-06-05 04:30:20,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:30:20,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:30:20,279.279 INFO    ] No existing commands found in stream
[2026-06-05 04:30:25,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:30:25,309.309 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 04:30:29,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:30:29,583.583 INFO    ] Checking for system updates...
[2026-06-05 04:30:29,622.622 INFO    ] 200
[2026-06-05 04:30:29,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:29,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:30:29,682.682 INFO    ] No update needed
[2026-06-05 04:30:29,684.684 INFO    ] Checking for camera pi updates...
[2026-06-05 04:30:29,719.719 INFO    ] 200
[2026-06-05 04:30:29,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:29,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:30:29,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:30:29,910.910 INFO    ] No camera update needed
[2026-06-05 04:30:29,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:30:29,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:30:29,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:30:29,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:30:31,969.969 INFO    ] ================================================
[2026-06-05 04:30:31,986.986 INFO    ] Launching Daemon at Fri Jun  5 04:30:31 IST 2026
[2026-06-05 04:30:32,998.998 INFO    ] ================================================
[2026-06-05 04:30:32,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:30:32
[2026-06-05 04:30:33,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:30:33,696.696 INFO    ] Initializing speech engine...
[2026-06-05 04:30:33,710.710 INFO    ] 2026-06-05 04:30:33
[2026-06-05 04:30:33,988.988 INFO    ] 2026-06-05 04:30:33
[2026-06-05 04:30:34,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:30:34,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:30:34,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:30:34,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:30:34,458.458 INFO    ] time= 05/06/2026 04:30:34
[2026-06-05 04:30:34,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:30:34,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:30:34,596.596 INFO    ] No existing commands found in stream
[2026-06-05 04:30:39,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:30:39,621.621 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 04:30:40,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:30:40,344.344 INFO    ] Checking for system updates...
[2026-06-05 04:30:40,386.386 INFO    ] 200
[2026-06-05 04:30:40,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:40,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:30:40,453.453 INFO    ] No update needed
[2026-06-05 04:30:40,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 04:30:40,493.493 INFO    ] 200
[2026-06-05 04:30:40,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:40,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:30:40,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:30:40,580.580 INFO    ] No camera update needed
[2026-06-05 04:30:40,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:30:40,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:30:40,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:30:40,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:30:42,634.634 INFO    ] ================================================
[2026-06-05 04:30:42,649.649 INFO    ] Launching Daemon at Fri Jun  5 04:30:42 IST 2026
[2026-06-05 04:30:42,660.660 INFO    ] ================================================
[2026-06-05 04:30:43,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:30:43
[2026-06-05 04:30:43,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:30:44,102.102 INFO    ] Initializing speech engine...
[2026-06-05 04:30:44,125.125 INFO    ] 2026-06-05 04:30:44
[2026-06-05 04:30:44,387.387 INFO    ] 2026-06-05 04:30:44
[2026-06-05 04:30:44,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:30:44,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:30:44,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:30:44,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:30:44,891.891 INFO    ] time= 05/06/2026 04:30:44
[2026-06-05 04:30:44,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:30:44,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:30:45,100.100 INFO    ] No existing commands found in stream
[2026-06-05 04:30:50,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:30:50,129.129 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 04:30:53,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:30:53,876.876 INFO    ] Checking for system updates...
[2026-06-05 04:30:53,912.912 INFO    ] 200
[2026-06-05 04:30:53,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:53,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:30:53,971.971 INFO    ] No update needed
[2026-06-05 04:30:53,973.973 INFO    ] Checking for camera pi updates...
[2026-06-05 04:30:54,008.008 INFO    ] 200
[2026-06-05 04:30:54,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:30:54,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:30:54,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:30:54,102.102 INFO    ] No camera update needed
[2026-06-05 04:30:54,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:30:54,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:30:54,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:30:54,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:30:56,159.159 INFO    ] ================================================
[2026-06-05 04:30:56,174.174 INFO    ] Launching Daemon at Fri Jun  5 04:30:56 IST 2026
[2026-06-05 04:30:56,185.185 INFO    ] ================================================
[2026-06-05 04:30:56,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:30:56
[2026-06-05 04:30:57,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:30:57,597.597 INFO    ] Initializing speech engine...
[2026-06-05 04:30:57,603.603 INFO    ] 2026-06-05 04:30:57
[2026-06-05 04:30:57,897.897 INFO    ] 2026-06-05 04:30:57
[2026-06-05 04:30:57,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:30:58,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:30:58,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:30:58,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:30:58,318.318 INFO    ] time= 05/06/2026 04:30:58
[2026-06-05 04:30:58,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:30:58,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:30:58,472.472 INFO    ] No existing commands found in stream
[2026-06-05 04:31:03,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:31:03,500.500 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 04:31:06,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:31:06,147.147 INFO    ] Checking for system updates...
[2026-06-05 04:31:06,187.187 INFO    ] 200
[2026-06-05 04:31:06,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:06,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:31:06,249.249 INFO    ] No update needed
[2026-06-05 04:31:06,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 04:31:06,286.286 INFO    ] 200
[2026-06-05 04:31:06,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:06,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:31:06,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:31:06,387.387 INFO    ] No camera update needed
[2026-06-05 04:31:06,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:31:06,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:31:06,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:31:06,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:31:08,442.442 INFO    ] ================================================
[2026-06-05 04:31:08,458.458 INFO    ] Launching Daemon at Fri Jun  5 04:31:08 IST 2026
[2026-06-05 04:31:08,469.469 INFO    ] ================================================
[2026-06-05 04:31:09,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:31:09
[2026-06-05 04:31:09,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:31:09,905.905 INFO    ] Initializing speech engine...
[2026-06-05 04:31:09,920.920 INFO    ] 2026-06-05 04:31:09
[2026-06-05 04:31:10,191.191 INFO    ] 2026-06-05 04:31:10
[2026-06-05 04:31:10,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:31:10,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:31:10,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:31:10,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:31:10,604.604 INFO    ] time= 05/06/2026 04:31:10
[2026-06-05 04:31:10,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:31:10,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:31:10,792.792 INFO    ] No existing commands found in stream
[2026-06-05 04:31:15,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:31:15,830.830 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 04:31:18,900.900 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:31:18,903.903 INFO    ] Checking for system updates...
[2026-06-05 04:31:18,942.942 INFO    ] 200
[2026-06-05 04:31:18,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:19,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:31:19,005.005 INFO    ] No update needed
[2026-06-05 04:31:19,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 04:31:19,042.042 INFO    ] 200
[2026-06-05 04:31:19,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:19,085.085 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:31:19,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:31:19,137.137 INFO    ] No camera update needed
[2026-06-05 04:31:19,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:31:19,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:31:19,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:31:19,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:31:21,196.196 INFO    ] ================================================
[2026-06-05 04:31:21,212.212 INFO    ] Launching Daemon at Fri Jun  5 04:31:21 IST 2026
[2026-06-05 04:31:21,223.223 INFO    ] ================================================
[2026-06-05 04:31:21,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:31:21
[2026-06-05 04:31:22,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:31:22,665.665 INFO    ] Initializing speech engine...
[2026-06-05 04:31:22,684.684 INFO    ] 2026-06-05 04:31:22
[2026-06-05 04:31:22,948.948 INFO    ] 2026-06-05 04:31:22
[2026-06-05 04:31:22,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:31:23,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:31:23,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:31:23,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:31:23,318.318 INFO    ] time= 05/06/2026 04:31:23
[2026-06-05 04:31:23,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:31:23,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:31:23,492.492 INFO    ] No existing commands found in stream
[2026-06-05 04:31:28,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:31:28,520.520 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 04:31:32,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:31:32,816.816 INFO    ] Checking for system updates...
[2026-06-05 04:31:32,854.854 INFO    ] 200
[2026-06-05 04:31:32,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:32,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:31:32,913.913 INFO    ] No update needed
[2026-06-05 04:31:32,915.915 INFO    ] Checking for camera pi updates...
[2026-06-05 04:31:32,949.949 INFO    ] 200
[2026-06-05 04:31:32,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:32,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:31:33,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:31:33,026.026 INFO    ] No camera update needed
[2026-06-05 04:31:33,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:31:33,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:31:33,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:31:33,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:31:35,082.082 INFO    ] ================================================
[2026-06-05 04:31:35,098.098 INFO    ] Launching Daemon at Fri Jun  5 04:31:35 IST 2026
[2026-06-05 04:31:35,109.109 INFO    ] ================================================
[2026-06-05 04:31:35,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:31:35
[2026-06-05 04:31:36,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:31:36,565.565 INFO    ] Initializing speech engine...
[2026-06-05 04:31:36,575.575 INFO    ] 2026-06-05 04:31:36
[2026-06-05 04:31:36,836.836 INFO    ] 2026-06-05 04:31:36
[2026-06-05 04:31:36,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:31:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:31:37,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:31:37,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:31:37,378.378 INFO    ] time= 05/06/2026 04:31:37
[2026-06-05 04:31:37,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:31:37,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:31:37,517.517 INFO    ] No existing commands found in stream
[2026-06-05 04:31:42,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:31:42,544.544 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 04:31:47,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:31:47,155.155 INFO    ] Checking for system updates...
[2026-06-05 04:31:47,192.192 INFO    ] 200
[2026-06-05 04:31:47,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:47,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:31:47,250.250 INFO    ] No update needed
[2026-06-05 04:31:47,253.253 INFO    ] Checking for camera pi updates...
[2026-06-05 04:31:47,289.289 INFO    ] 200
[2026-06-05 04:31:47,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:47,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:31:47,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:31:47,389.389 INFO    ] No camera update needed
[2026-06-05 04:31:47,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:31:47,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:31:47,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:31:47,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:31:49,448.448 INFO    ] ================================================
[2026-06-05 04:31:49,464.464 INFO    ] Launching Daemon at Fri Jun  5 04:31:49 IST 2026
[2026-06-05 04:31:49,475.475 INFO    ] ================================================
[2026-06-05 04:31:50,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:31:50
[2026-06-05 04:31:50,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:31:50,875.875 INFO    ] Initializing speech engine...
[2026-06-05 04:31:50,882.882 INFO    ] 2026-06-05 04:31:50
[2026-06-05 04:31:51,162.162 INFO    ] 2026-06-05 04:31:51
[2026-06-05 04:31:51,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:31:51,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:31:51,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:31:51,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:31:51,618.618 INFO    ] time= 05/06/2026 04:31:51
[2026-06-05 04:31:51,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:31:51,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:31:51,793.793 INFO    ] No existing commands found in stream
[2026-06-05 04:31:56,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:31:56,807.807 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-05 04:31:57,461.461 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:31:57,464.464 INFO    ] Checking for system updates...
[2026-06-05 04:31:57,503.503 INFO    ] 200
[2026-06-05 04:31:57,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:57,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:31:57,561.561 INFO    ] No update needed
[2026-06-05 04:31:57,563.563 INFO    ] Checking for camera pi updates...
[2026-06-05 04:31:57,597.597 INFO    ] 200
[2026-06-05 04:31:57,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:31:57,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:31:57,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:31:57,686.686 INFO    ] No camera update needed
[2026-06-05 04:31:57,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:31:57,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:31:57,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:31:57,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:31:59,741.741 INFO    ] ================================================
[2026-06-05 04:31:59,758.758 INFO    ] Launching Daemon at Fri Jun  5 04:31:59 IST 2026
[2026-06-05 04:31:59,770.770 INFO    ] ================================================
[2026-06-05 04:32:00,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:32:00
[2026-06-05 04:32:01,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:32:01,365.365 INFO    ] Initializing speech engine...
[2026-06-05 04:32:01,374.374 INFO    ] 2026-06-05 04:32:01
[2026-06-05 04:32:01,667.667 INFO    ] 2026-06-05 04:32:01
[2026-06-05 04:32:01,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:32:01,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:32:01,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:32:02,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:32:02,081.081 INFO    ] time= 05/06/2026 04:32:02
[2026-06-05 04:32:02,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:32:02,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:32:02,161.161 INFO    ] No existing commands found in stream
[2026-06-05 04:32:07,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:32:07,175.175 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 04:32:09,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:32:09,799.799 INFO    ] Checking for system updates...
[2026-06-05 04:32:09,837.837 INFO    ] 200
[2026-06-05 04:32:09,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:09,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:32:09,896.896 INFO    ] No update needed
[2026-06-05 04:32:09,898.898 INFO    ] Checking for camera pi updates...
[2026-06-05 04:32:09,933.933 INFO    ] 200
[2026-06-05 04:32:09,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:09,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:32:10,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:32:10,007.007 INFO    ] No camera update needed
[2026-06-05 04:32:10,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:32:10,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:32:10,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:32:10,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:32:12,071.071 INFO    ] ================================================
[2026-06-05 04:32:12,087.087 INFO    ] Launching Daemon at Fri Jun  5 04:32:12 IST 2026
[2026-06-05 04:32:12,098.098 INFO    ] ================================================
[2026-06-05 04:32:12,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:32:12
[2026-06-05 04:32:13,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:32:13,602.602 INFO    ] Initializing speech engine...
[2026-06-05 04:32:13,612.612 INFO    ] 2026-06-05 04:32:13
[2026-06-05 04:32:13,879.879 INFO    ] 2026-06-05 04:32:13
[2026-06-05 04:32:13,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:32:14,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:32:14,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:32:14,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:32:14,287.287 INFO    ] time= 05/06/2026 04:32:14
[2026-06-05 04:32:14,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:32:14,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:32:14,371.371 INFO    ] No existing commands found in stream
[2026-06-05 04:32:19,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:32:19,387.387 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 04:32:23,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:32:23,177.177 INFO    ] Checking for system updates...
[2026-06-05 04:32:23,217.217 INFO    ] 200
[2026-06-05 04:32:23,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:23,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:32:23,281.281 INFO    ] No update needed
[2026-06-05 04:32:23,284.284 INFO    ] Checking for camera pi updates...
[2026-06-05 04:32:23,317.317 INFO    ] 200
[2026-06-05 04:32:23,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:23,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:32:23,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:32:23,407.407 INFO    ] No camera update needed
[2026-06-05 04:32:23,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:32:23,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:32:23,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:32:23,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:32:25,464.464 INFO    ] ================================================
[2026-06-05 04:32:25,480.480 INFO    ] Launching Daemon at Fri Jun  5 04:32:25 IST 2026
[2026-06-05 04:32:25,491.491 INFO    ] ================================================
[2026-06-05 04:32:26,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:32:26
[2026-06-05 04:32:26,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:32:26,974.974 INFO    ] Initializing speech engine...
[2026-06-05 04:32:26,983.983 INFO    ] 2026-06-05 04:32:26
[2026-06-05 04:32:27,242.242 INFO    ] 2026-06-05 04:32:27
[2026-06-05 04:32:27,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:32:27,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:32:27,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:32:27,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:32:27,701.701 INFO    ] time= 05/06/2026 04:32:27
[2026-06-05 04:32:27,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:32:27,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:32:27,844.844 INFO    ] No existing commands found in stream
[2026-06-05 04:32:32,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:32:32,860.860 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 04:32:34,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:32:34,028.028 INFO    ] Checking for system updates...
[2026-06-05 04:32:34,068.068 INFO    ] 200
[2026-06-05 04:32:34,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:34,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:32:34,132.132 INFO    ] No update needed
[2026-06-05 04:32:34,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 04:32:34,175.175 INFO    ] 200
[2026-06-05 04:32:34,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:34,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:32:34,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:32:34,272.272 INFO    ] No camera update needed
[2026-06-05 04:32:34,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:32:34,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:32:34,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:32:34,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:32:36,335.335 INFO    ] ================================================
[2026-06-05 04:32:36,352.352 INFO    ] Launching Daemon at Fri Jun  5 04:32:36 IST 2026
[2026-06-05 04:32:36,362.362 INFO    ] ================================================
[2026-06-05 04:32:36,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:32:36
[2026-06-05 04:32:37,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:32:37,761.761 INFO    ] Initializing speech engine...
[2026-06-05 04:32:37,776.776 INFO    ] 2026-06-05 04:32:37
[2026-06-05 04:32:38,042.042 INFO    ] 2026-06-05 04:32:38
[2026-06-05 04:32:38,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:32:38,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:32:38,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:32:38,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:32:38,510.510 INFO    ] time= 05/06/2026 04:32:38
[2026-06-05 04:32:38,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:32:38,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:32:38,681.681 INFO    ] No existing commands found in stream
[2026-06-05 04:32:43,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:32:43,698.698 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 04:32:45,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:32:45,123.123 INFO    ] Checking for system updates...
[2026-06-05 04:32:45,168.168 INFO    ] 200
[2026-06-05 04:32:45,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:45,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:32:45,229.229 INFO    ] No update needed
[2026-06-05 04:32:45,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 04:32:45,267.267 INFO    ] 200
[2026-06-05 04:32:45,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:45,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:32:45,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:32:45,363.363 INFO    ] No camera update needed
[2026-06-05 04:32:45,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:32:45,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:32:45,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:32:45,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:32:47,422.422 INFO    ] ================================================
[2026-06-05 04:32:47,438.438 INFO    ] Launching Daemon at Fri Jun  5 04:32:47 IST 2026
[2026-06-05 04:32:47,450.450 INFO    ] ================================================
[2026-06-05 04:32:48,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:32:48
[2026-06-05 04:32:48,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:32:49,024.024 INFO    ] Initializing speech engine...
[2026-06-05 04:32:49,033.033 INFO    ] 2026-06-05 04:32:49
[2026-06-05 04:32:49,301.301 INFO    ] 2026-06-05 04:32:49
[2026-06-05 04:32:49,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:32:49,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:32:49,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:32:49,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:32:49,667.667 INFO    ] time= 05/06/2026 04:32:49
[2026-06-05 04:32:49,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:32:49,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:32:49,816.816 INFO    ] No existing commands found in stream
[2026-06-05 04:32:54,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:32:54,849.849 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 04:32:56,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:32:56,401.401 INFO    ] Checking for system updates...
[2026-06-05 04:32:56,450.450 INFO    ] 200
[2026-06-05 04:32:56,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:56,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:32:56,518.518 INFO    ] No update needed
[2026-06-05 04:32:56,521.521 INFO    ] Checking for camera pi updates...
[2026-06-05 04:32:56,561.561 INFO    ] 200
[2026-06-05 04:32:56,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:32:56,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:32:56,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:32:56,666.666 INFO    ] No camera update needed
[2026-06-05 04:32:56,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:32:56,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:32:56,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:32:56,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:32:58,731.731 INFO    ] ================================================
[2026-06-05 04:32:58,782.782 INFO    ] Launching Daemon at Fri Jun  5 04:32:58 IST 2026
[2026-06-05 04:32:58,793.793 INFO    ] ================================================
[2026-06-05 04:32:59,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:32:59
[2026-06-05 04:32:59,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:33:00,189.189 INFO    ] Initializing speech engine...
[2026-06-05 04:33:00,203.203 INFO    ] 2026-06-05 04:33:00
[2026-06-05 04:33:00,480.480 INFO    ] 2026-06-05 04:33:00
[2026-06-05 04:33:00,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:33:00,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:33:00,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:33:00,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:33:00,852.852 INFO    ] time= 05/06/2026 04:33:00
[2026-06-05 04:33:00,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:33:00,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:33:00,977.977 INFO    ] No existing commands found in stream
[2026-06-05 04:33:05,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:33:05,992.992 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 04:33:09,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:33:09,376.376 INFO    ] Checking for system updates...
[2026-06-05 04:33:09,416.416 INFO    ] 200
[2026-06-05 04:33:09,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:09,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:33:09,480.480 INFO    ] No update needed
[2026-06-05 04:33:09,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 04:33:09,516.516 INFO    ] 200
[2026-06-05 04:33:09,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:09,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:33:09,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:33:09,621.621 INFO    ] No camera update needed
[2026-06-05 04:33:09,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:33:09,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:33:09,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:33:09,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:33:11,676.676 INFO    ] ================================================
[2026-06-05 04:33:11,692.692 INFO    ] Launching Daemon at Fri Jun  5 04:33:11 IST 2026
[2026-06-05 04:33:11,702.702 INFO    ] ================================================
[2026-06-05 04:33:12,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:33:12
[2026-06-05 04:33:12,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:33:13,172.172 INFO    ] Initializing speech engine...
[2026-06-05 04:33:13,179.179 INFO    ] 2026-06-05 04:33:13
[2026-06-05 04:33:13,439.439 INFO    ] 2026-06-05 04:33:13
[2026-06-05 04:33:13,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:33:13,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:33:13,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:33:13,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:33:13,909.909 INFO    ] time= 05/06/2026 04:33:13
[2026-06-05 04:33:13,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:33:13,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:33:14,048.048 INFO    ] No existing commands found in stream
[2026-06-05 04:33:19,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:33:19,060.060 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 04:33:21,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:33:21,375.375 INFO    ] Checking for system updates...
[2026-06-05 04:33:21,411.411 INFO    ] 200
[2026-06-05 04:33:21,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:21,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:33:21,469.469 INFO    ] No update needed
[2026-06-05 04:33:21,471.471 INFO    ] Checking for camera pi updates...
[2026-06-05 04:33:21,509.509 INFO    ] 200
[2026-06-05 04:33:21,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:21,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:33:21,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:33:21,597.597 INFO    ] No camera update needed
[2026-06-05 04:33:21,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:33:21,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:33:21,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:33:21,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:33:23,654.654 INFO    ] ================================================
[2026-06-05 04:33:23,669.669 INFO    ] Launching Daemon at Fri Jun  5 04:33:23 IST 2026
[2026-06-05 04:33:23,679.679 INFO    ] ================================================
[2026-06-05 04:33:24,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:33:24
[2026-06-05 04:33:24,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:33:25,090.090 INFO    ] Initializing speech engine...
[2026-06-05 04:33:25,098.098 INFO    ] 2026-06-05 04:33:25
[2026-06-05 04:33:25,392.392 INFO    ] 2026-06-05 04:33:25
[2026-06-05 04:33:25,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:33:25,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:33:25,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:33:25,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:33:25,805.805 INFO    ] time= 05/06/2026 04:33:25
[2026-06-05 04:33:25,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:33:25,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:33:25,893.893 INFO    ] No existing commands found in stream
[2026-06-05 04:33:30,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:33:30,908.908 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 04:33:32,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:33:32,144.144 INFO    ] Checking for system updates...
[2026-06-05 04:33:32,188.188 INFO    ] 200
[2026-06-05 04:33:32,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:32,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:33:32,252.252 INFO    ] No update needed
[2026-06-05 04:33:32,259.259 INFO    ] Checking for camera pi updates...
[2026-06-05 04:33:32,296.296 INFO    ] 200
[2026-06-05 04:33:32,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:32,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:33:32,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:33:32,377.377 INFO    ] No camera update needed
[2026-06-05 04:33:32,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:33:32,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:33:32,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:33:32,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:33:34,435.435 INFO    ] ================================================
[2026-06-05 04:33:34,450.450 INFO    ] Launching Daemon at Fri Jun  5 04:33:34 IST 2026
[2026-06-05 04:33:34,461.461 INFO    ] ================================================
[2026-06-05 04:33:35,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:33:35
[2026-06-05 04:33:35,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:33:36,043.043 INFO    ] Initializing speech engine...
[2026-06-05 04:33:36,059.059 INFO    ] 2026-06-05 04:33:36
[2026-06-05 04:33:36,325.325 INFO    ] 2026-06-05 04:33:36
[2026-06-05 04:33:36,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:33:36,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:33:36,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:33:36,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:33:36,860.860 INFO    ] time= 05/06/2026 04:33:36
[2026-06-05 04:33:36,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:33:36,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:33:37,026.026 INFO    ] No existing commands found in stream
[2026-06-05 04:33:42,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:33:42,057.057 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 04:33:42,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:33:42,522.522 INFO    ] Checking for system updates...
[2026-06-05 04:33:42,559.559 INFO    ] 200
[2026-06-05 04:33:42,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:42,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:33:42,617.617 INFO    ] No update needed
[2026-06-05 04:33:42,620.620 INFO    ] Checking for camera pi updates...
[2026-06-05 04:33:42,658.658 INFO    ] 200
[2026-06-05 04:33:42,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:42,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:33:42,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:33:42,744.744 INFO    ] No camera update needed
[2026-06-05 04:33:42,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:33:42,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:33:42,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:33:42,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:33:44,800.800 INFO    ] ================================================
[2026-06-05 04:33:44,815.815 INFO    ] Launching Daemon at Fri Jun  5 04:33:44 IST 2026
[2026-06-05 04:33:44,826.826 INFO    ] ================================================
[2026-06-05 04:33:45,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:33:45
[2026-06-05 04:33:45,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:33:46,255.255 INFO    ] Initializing speech engine...
[2026-06-05 04:33:46,264.264 INFO    ] 2026-06-05 04:33:46
[2026-06-05 04:33:46,513.513 INFO    ] 2026-06-05 04:33:46
[2026-06-05 04:33:46,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:33:46,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:33:46,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:33:46,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:33:47,013.013 INFO    ] time= 05/06/2026 04:33:46
[2026-06-05 04:33:47,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:33:47,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:33:47,202.202 INFO    ] No existing commands found in stream
[2026-06-05 04:33:52,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:33:52,235.235 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 04:33:55,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:33:55,832.832 INFO    ] Checking for system updates...
[2026-06-05 04:33:55,872.872 INFO    ] 200
[2026-06-05 04:33:55,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:55,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:33:55,937.937 INFO    ] No update needed
[2026-06-05 04:33:55,939.939 INFO    ] Checking for camera pi updates...
[2026-06-05 04:33:55,975.975 INFO    ] 200
[2026-06-05 04:33:55,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:33:56,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:33:56,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:33:56,069.069 INFO    ] No camera update needed
[2026-06-05 04:33:56,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:33:56,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:33:56,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:33:56,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:33:58,132.132 INFO    ] ================================================
[2026-06-05 04:33:58,148.148 INFO    ] Launching Daemon at Fri Jun  5 04:33:58 IST 2026
[2026-06-05 04:33:58,158.158 INFO    ] ================================================
[2026-06-05 04:33:58,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:33:58
[2026-06-05 04:33:59,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:33:59,602.602 INFO    ] Initializing speech engine...
[2026-06-05 04:33:59,612.612 INFO    ] 2026-06-05 04:33:59
[2026-06-05 04:33:59,909.909 INFO    ] 2026-06-05 04:33:59
[2026-06-05 04:33:59,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:34:00,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:34:00,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:34:00,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:34:00,286.286 INFO    ] time= 05/06/2026 04:34:00
[2026-06-05 04:34:00,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:34:00,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:34:00,403.403 INFO    ] No existing commands found in stream
[2026-06-05 04:34:05,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:34:05,430.430 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 04:34:07,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:34:07,004.004 INFO    ] Checking for system updates...
[2026-06-05 04:34:07,045.045 INFO    ] 200
[2026-06-05 04:34:07,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:07,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:34:07,103.103 INFO    ] No update needed
[2026-06-05 04:34:07,106.106 INFO    ] Checking for camera pi updates...
[2026-06-05 04:34:07,140.140 INFO    ] 200
[2026-06-05 04:34:07,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:07,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:34:07,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:34:07,222.222 INFO    ] No camera update needed
[2026-06-05 04:34:07,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:34:07,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:34:07,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:34:07,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:34:09,278.278 INFO    ] ================================================
[2026-06-05 04:34:09,293.293 INFO    ] Launching Daemon at Fri Jun  5 04:34:09 IST 2026
[2026-06-05 04:34:09,304.304 INFO    ] ================================================
[2026-06-05 04:34:09,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:34:09
[2026-06-05 04:34:10,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:34:10,756.756 INFO    ] Initializing speech engine...
[2026-06-05 04:34:10,762.762 INFO    ] 2026-06-05 04:34:10
[2026-06-05 04:34:11,060.060 INFO    ] 2026-06-05 04:34:11
[2026-06-05 04:34:11,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:34:11,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:34:11,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:34:11,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:34:11,483.483 INFO    ] time= 05/06/2026 04:34:11
[2026-06-05 04:34:11,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:34:11,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:34:11,643.643 INFO    ] No existing commands found in stream
[2026-06-05 04:34:16,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:34:16,681.681 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 04:34:20,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:34:20,461.461 INFO    ] Checking for system updates...
[2026-06-05 04:34:20,498.498 INFO    ] 200
[2026-06-05 04:34:20,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:20,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:34:20,563.563 INFO    ] No update needed
[2026-06-05 04:34:20,565.565 INFO    ] Checking for camera pi updates...
[2026-06-05 04:34:20,606.606 INFO    ] 200
[2026-06-05 04:34:20,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:20,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:34:20,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:34:20,706.706 INFO    ] No camera update needed
[2026-06-05 04:34:20,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:34:20,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:34:20,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:34:20,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:34:22,762.762 INFO    ] ================================================
[2026-06-05 04:34:22,777.777 INFO    ] Launching Daemon at Fri Jun  5 04:34:22 IST 2026
[2026-06-05 04:34:22,789.789 INFO    ] ================================================
[2026-06-05 04:34:23,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:34:23
[2026-06-05 04:34:23,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:34:24,216.216 INFO    ] Initializing speech engine...
[2026-06-05 04:34:24,225.225 INFO    ] 2026-06-05 04:34:24
[2026-06-05 04:34:24,473.473 INFO    ] 2026-06-05 04:34:24
[2026-06-05 04:34:24,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:34:24,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:34:24,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:34:24,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:34:24,851.851 INFO    ] time= 05/06/2026 04:34:24
[2026-06-05 04:34:24,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:34:24,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:34:25,023.023 INFO    ] No existing commands found in stream
[2026-06-05 04:34:30,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:34:30,057.057 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 04:34:33,018.018 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:34:33,021.021 INFO    ] Checking for system updates...
[2026-06-05 04:34:33,070.070 INFO    ] 200
[2026-06-05 04:34:33,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:33,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:34:33,136.136 INFO    ] No update needed
[2026-06-05 04:34:33,139.139 INFO    ] Checking for camera pi updates...
[2026-06-05 04:34:33,177.177 INFO    ] 200
[2026-06-05 04:34:33,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:33,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:34:33,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:34:33,287.287 INFO    ] No camera update needed
[2026-06-05 04:34:33,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:34:33,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:34:33,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:34:33,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:34:35,360.360 INFO    ] ================================================
[2026-06-05 04:34:35,374.374 INFO    ] Launching Daemon at Fri Jun  5 04:34:35 IST 2026
[2026-06-05 04:34:35,385.385 INFO    ] ================================================
[2026-06-05 04:34:35,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:34:35
[2026-06-05 04:34:36,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:34:36,830.830 INFO    ] Initializing speech engine...
[2026-06-05 04:34:36,837.837 INFO    ] 2026-06-05 04:34:36
[2026-06-05 04:34:37,100.100 INFO    ] 2026-06-05 04:34:37
[2026-06-05 04:34:37,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:34:37,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:34:37,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:34:37,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:34:37,619.619 INFO    ] time= 05/06/2026 04:34:37
[2026-06-05 04:34:37,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:34:37,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:34:37,785.785 INFO    ] No existing commands found in stream
[2026-06-05 04:34:42,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:34:42,813.813 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 04:34:47,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:34:47,023.023 INFO    ] Checking for system updates...
[2026-06-05 04:34:47,063.063 INFO    ] 200
[2026-06-05 04:34:47,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:47,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:34:47,127.127 INFO    ] No update needed
[2026-06-05 04:34:47,129.129 INFO    ] Checking for camera pi updates...
[2026-06-05 04:34:47,163.163 INFO    ] 200
[2026-06-05 04:34:47,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:47,207.207 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:34:47,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:34:47,363.363 INFO    ] No camera update needed
[2026-06-05 04:34:47,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:34:47,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:34:47,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:34:47,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:34:49,421.421 INFO    ] ================================================
[2026-06-05 04:34:49,436.436 INFO    ] Launching Daemon at Fri Jun  5 04:34:49 IST 2026
[2026-06-05 04:34:49,448.448 INFO    ] ================================================
[2026-06-05 04:34:50,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:34:50
[2026-06-05 04:34:50,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:34:50,895.895 INFO    ] Initializing speech engine...
[2026-06-05 04:34:50,909.909 INFO    ] 2026-06-05 04:34:50
[2026-06-05 04:34:51,182.182 INFO    ] 2026-06-05 04:34:51
[2026-06-05 04:34:51,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:34:51,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:34:51,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:34:51,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:34:51,561.561 INFO    ] time= 05/06/2026 04:34:51
[2026-06-05 04:34:51,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:34:51,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:34:51,732.732 INFO    ] No existing commands found in stream
[2026-06-05 04:34:56,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:34:56,765.765 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 04:34:57,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:34:57,736.736 INFO    ] Checking for system updates...
[2026-06-05 04:34:57,772.772 INFO    ] 200
[2026-06-05 04:34:57,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:57,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:34:57,838.838 INFO    ] No update needed
[2026-06-05 04:34:57,840.840 INFO    ] Checking for camera pi updates...
[2026-06-05 04:34:57,879.879 INFO    ] 200
[2026-06-05 04:34:57,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:34:57,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:34:57,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:34:57,970.970 INFO    ] No camera update needed
[2026-06-05 04:34:57,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:34:57,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:34:57,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:34:57,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:35:00,027.027 INFO    ] ================================================
[2026-06-05 04:35:00,042.042 INFO    ] Launching Daemon at Fri Jun  5 04:35:00 IST 2026
[2026-06-05 04:35:00,053.053 INFO    ] ================================================
[2026-06-05 04:35:00,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:35:00
[2026-06-05 04:35:01,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:35:01,501.501 INFO    ] Initializing speech engine...
[2026-06-05 04:35:01,508.508 INFO    ] 2026-06-05 04:35:01
[2026-06-05 04:35:01,790.790 INFO    ] 2026-06-05 04:35:01
[2026-06-05 04:35:01,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:35:02,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:35:02,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:35:02,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:35:02,302.302 INFO    ] time= 05/06/2026 04:35:02
[2026-06-05 04:35:02,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:35:02,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:35:02,374.374 INFO    ] No existing commands found in stream
[2026-06-05 04:35:07,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:35:07,388.388 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 04:35:09,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:35:09,415.415 INFO    ] Checking for system updates...
[2026-06-05 04:35:09,452.452 INFO    ] 200
[2026-06-05 04:35:09,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:09,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:35:09,517.517 INFO    ] No update needed
[2026-06-05 04:35:09,519.519 INFO    ] Checking for camera pi updates...
[2026-06-05 04:35:09,557.557 INFO    ] 200
[2026-06-05 04:35:09,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:09,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:35:09,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:35:09,650.650 INFO    ] No camera update needed
[2026-06-05 04:35:09,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:35:09,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:35:09,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:35:09,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:35:11,705.705 INFO    ] ================================================
[2026-06-05 04:35:11,720.720 INFO    ] Launching Daemon at Fri Jun  5 04:35:11 IST 2026
[2026-06-05 04:35:11,731.731 INFO    ] ================================================
[2026-06-05 04:35:12,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:35:12
[2026-06-05 04:35:12,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:35:13,176.176 INFO    ] Initializing speech engine...
[2026-06-05 04:35:13,196.196 INFO    ] 2026-06-05 04:35:13
[2026-06-05 04:35:13,486.486 INFO    ] 2026-06-05 04:35:13
[2026-06-05 04:35:13,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:35:13,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:35:13,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:35:13,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:35:13,841.841 INFO    ] time= 05/06/2026 04:35:13
[2026-06-05 04:35:13,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:35:13,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:35:13,928.928 INFO    ] No existing commands found in stream
[2026-06-05 04:35:18,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:35:18,944.944 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 04:35:22,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:35:22,487.487 INFO    ] Checking for system updates...
[2026-06-05 04:35:22,523.523 INFO    ] 200
[2026-06-05 04:35:22,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:22,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:35:22,589.589 INFO    ] No update needed
[2026-06-05 04:35:22,591.591 INFO    ] Checking for camera pi updates...
[2026-06-05 04:35:22,629.629 INFO    ] 200
[2026-06-05 04:35:22,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:22,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:35:22,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:35:22,719.719 INFO    ] No camera update needed
[2026-06-05 04:35:22,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:35:22,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:35:22,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:35:22,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:35:24,774.774 INFO    ] ================================================
[2026-06-05 04:35:24,790.790 INFO    ] Launching Daemon at Fri Jun  5 04:35:24 IST 2026
[2026-06-05 04:35:24,801.801 INFO    ] ================================================
[2026-06-05 04:35:25,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:35:25
[2026-06-05 04:35:26,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:35:26,431.431 INFO    ] Initializing speech engine...
[2026-06-05 04:35:26,440.440 INFO    ] 2026-06-05 04:35:26
[2026-06-05 04:35:26,726.726 INFO    ] 2026-06-05 04:35:26
[2026-06-05 04:35:26,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:35:27,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:35:27,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:35:27,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:35:27,263.263 INFO    ] time= 05/06/2026 04:35:27
[2026-06-05 04:35:27,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:35:27,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:35:27,405.405 INFO    ] No existing commands found in stream
[2026-06-05 04:35:32,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:35:32,434.434 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 04:35:34,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:35:34,121.121 INFO    ] Checking for system updates...
[2026-06-05 04:35:34,162.162 INFO    ] 200
[2026-06-05 04:35:34,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:34,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:35:34,228.228 INFO    ] No update needed
[2026-06-05 04:35:34,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 04:35:34,268.268 INFO    ] 200
[2026-06-05 04:35:34,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:34,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:35:34,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:35:34,368.368 INFO    ] No camera update needed
[2026-06-05 04:35:34,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:35:34,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:35:34,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:35:34,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:35:36,423.423 INFO    ] ================================================
[2026-06-05 04:35:36,439.439 INFO    ] Launching Daemon at Fri Jun  5 04:35:36 IST 2026
[2026-06-05 04:35:36,451.451 INFO    ] ================================================
[2026-06-05 04:35:37,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:35:37
[2026-06-05 04:35:37,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:35:37,874.874 INFO    ] Initializing speech engine...
[2026-06-05 04:35:37,883.883 INFO    ] 2026-06-05 04:35:37
[2026-06-05 04:35:38,180.180 INFO    ] 2026-06-05 04:35:38
[2026-06-05 04:35:38,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:35:38,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:35:38,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:35:38,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:35:38,565.565 INFO    ] time= 05/06/2026 04:35:38
[2026-06-05 04:35:38,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:35:38,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:35:38,695.695 INFO    ] No existing commands found in stream
[2026-06-05 04:35:43,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:35:43,709.709 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 04:35:45,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:35:45,821.821 INFO    ] Checking for system updates...
[2026-06-05 04:35:45,857.857 INFO    ] 200
[2026-06-05 04:35:45,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:45,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:35:45,917.917 INFO    ] No update needed
[2026-06-05 04:35:45,919.919 INFO    ] Checking for camera pi updates...
[2026-06-05 04:35:45,958.958 INFO    ] 200
[2026-06-05 04:35:45,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:46,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:35:46,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:35:46,037.037 INFO    ] No camera update needed
[2026-06-05 04:35:46,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:35:46,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:35:46,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:35:46,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:35:48,094.094 INFO    ] ================================================
[2026-06-05 04:35:48,109.109 INFO    ] Launching Daemon at Fri Jun  5 04:35:48 IST 2026
[2026-06-05 04:35:48,119.119 INFO    ] ================================================
[2026-06-05 04:35:48,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:35:48
[2026-06-05 04:35:49,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:35:49,551.551 INFO    ] Initializing speech engine...
[2026-06-05 04:35:49,561.561 INFO    ] 2026-06-05 04:35:49
[2026-06-05 04:35:49,817.817 INFO    ] 2026-06-05 04:35:49
[2026-06-05 04:35:49,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:35:50,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:35:50,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:35:50,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:35:50,305.305 INFO    ] time= 05/06/2026 04:35:50
[2026-06-05 04:35:50,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:35:50,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:35:50,444.444 INFO    ] No existing commands found in stream
[2026-06-05 04:35:55,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:35:55,459.459 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 04:35:57,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:35:57,686.686 INFO    ] Checking for system updates...
[2026-06-05 04:35:57,726.726 INFO    ] 200
[2026-06-05 04:35:57,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:57,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:35:57,791.791 INFO    ] No update needed
[2026-06-05 04:35:57,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 04:35:57,828.828 INFO    ] 200
[2026-06-05 04:35:57,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:35:57,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:35:57,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:35:57,908.908 INFO    ] No camera update needed
[2026-06-05 04:35:57,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:35:57,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:35:57,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:35:57,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:35:59,966.966 INFO    ] ================================================
[2026-06-05 04:35:59,982.982 INFO    ] Launching Daemon at Fri Jun  5 04:35:59 IST 2026
[2026-06-05 04:35:59,993.993 INFO    ] ================================================
[2026-06-05 04:36:00,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:36:00
[2026-06-05 04:36:01,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:36:01,767.767 INFO    ] Initializing speech engine...
[2026-06-05 04:36:01,781.781 INFO    ] 2026-06-05 04:36:01
[2026-06-05 04:36:02,208.208 INFO    ] 2026-06-05 04:36:02
[2026-06-05 04:36:02,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:36:02,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:36:02,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:36:02,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:36:02,720.720 INFO    ] time= 05/06/2026 04:36:02
[2026-06-05 04:36:02,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:36:02,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:36:02,931.931 INFO    ] No existing commands found in stream
[2026-06-05 04:36:07,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:36:07,973.973 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 04:36:10,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:36:10,709.709 INFO    ] Checking for system updates...
[2026-06-05 04:36:10,749.749 INFO    ] 200
[2026-06-05 04:36:10,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:36:10,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:36:10,808.808 INFO    ] No update needed
[2026-06-05 04:36:10,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 04:36:10,844.844 INFO    ] 200
[2026-06-05 04:36:10,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:36:10,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:36:10,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:36:10,942.942 INFO    ] No camera update needed
[2026-06-05 04:36:10,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:36:10,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:36:10,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:36:10,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:36:13,000.000 INFO    ] ================================================
[2026-06-05 04:36:13,016.016 INFO    ] Launching Daemon at Fri Jun  5 04:36:13 IST 2026
[2026-06-05 04:36:13,027.027 INFO    ] ================================================
[2026-06-05 04:36:13,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:36:13
[2026-06-05 04:36:14,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:36:14,477.477 INFO    ] Initializing speech engine...
[2026-06-05 04:36:14,491.491 INFO    ] 2026-06-05 04:36:14
[2026-06-05 04:36:14,770.770 INFO    ] 2026-06-05 04:36:14
[2026-06-05 04:36:14,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:36:15,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:36:15,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:36:15,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:36:15,241.241 INFO    ] time= 05/06/2026 04:36:15
[2026-06-05 04:36:15,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:36:15,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:36:15,394.394 INFO    ] No existing commands found in stream
[2026-06-05 04:36:20,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:36:20,409.409 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 04:36:23,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:36:23,609.609 INFO    ] Checking for system updates...
[2026-06-05 04:36:23,650.650 INFO    ] 200
[2026-06-05 04:36:23,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:36:23,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:36:23,715.715 INFO    ] No update needed
[2026-06-05 04:36:23,717.717 INFO    ] Checking for camera pi updates...
[2026-06-05 04:36:23,751.751 INFO    ] 200
[2026-06-05 04:36:23,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:36:23,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:36:23,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:36:23,852.852 INFO    ] No camera update needed
[2026-06-05 04:36:23,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:36:23,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:36:23,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:36:23,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:36:25,908.908 INFO    ] ================================================
[2026-06-05 04:36:25,923.923 INFO    ] Launching Daemon at Fri Jun  5 04:36:25 IST 2026
[2026-06-05 04:36:25,934.934 INFO    ] ================================================
[2026-06-05 04:36:26,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:36:26
[2026-06-05 04:36:27,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:36:27,551.551 INFO    ] Initializing speech engine...
[2026-06-05 04:36:27,561.561 INFO    ] 2026-06-05 04:36:27
[2026-06-05 04:36:27,850.850 INFO    ] 2026-06-05 04:36:27
[2026-06-05 04:36:27,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:36:28,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:36:28,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:36:28,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:36:28,330.330 INFO    ] time= 05/06/2026 04:36:28
[2026-06-05 04:36:28,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:36:28,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:36:28,540.540 INFO    ] No existing commands found in stream
[2026-06-05 04:36:33,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:36:33,578.578 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 04:36:37,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:36:37,049.049 INFO    ] Checking for system updates...
[2026-06-05 04:36:37,090.090 INFO    ] 200
[2026-06-05 04:36:37,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:36:37,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:36:37,148.148 INFO    ] No update needed
[2026-06-05 04:36:37,150.150 INFO    ] Checking for camera pi updates...
[2026-06-05 04:36:37,187.187 INFO    ] 200
[2026-06-05 04:36:37,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:36:37,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:36:37,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:36:37,282.282 INFO    ] No camera update needed
[2026-06-05 04:36:37,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:36:37,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:36:37,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:36:37,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:36:39,338.338 INFO    ] ================================================
[2026-06-05 04:36:39,353.353 INFO    ] Launching Daemon at Fri Jun  5 04:36:39 IST 2026
[2026-06-05 04:36:39,364.364 INFO    ] ================================================
[2026-06-05 04:36:39,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:36:39
[2026-06-05 04:36:40,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:36:40,831.831 INFO    ] Initializing speech engine...
[2026-06-05 04:36:40,839.839 INFO    ] 2026-06-05 04:36:40
[2026-06-05 04:36:41,100.100 INFO    ] 2026-06-05 04:36:41
[2026-06-05 04:36:41,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:36:41,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:36:41,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:36:41,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:36:41,565.565 INFO    ] time= 05/06/2026 04:36:41
[2026-06-05 04:36:41,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:36:41,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:36:41,740.740 INFO    ] No existing commands found in stream
[2026-06-05 04:36:46,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:36:46,781.781 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 04:36:50,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:36:50,428.428 INFO    ] Checking for system updates...
[2026-06-05 04:36:50,468.468 INFO    ] 200
[2026-06-05 04:36:50,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:36:50,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:36:50,531.531 INFO    ] No update needed
[2026-06-05 04:36:50,534.534 INFO    ] Checking for camera pi updates...
[2026-06-05 04:36:50,570.570 INFO    ] 200
[2026-06-05 04:36:50,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:36:50,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:36:50,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:36:50,758.758 INFO    ] No camera update needed
[2026-06-05 04:36:50,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:36:50,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:36:50,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:36:50,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:36:52,815.815 INFO    ] ================================================
[2026-06-05 04:36:52,830.830 INFO    ] Launching Daemon at Fri Jun  5 04:36:52 IST 2026
[2026-06-05 04:36:52,841.841 INFO    ] ================================================
[2026-06-05 04:36:53,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:36:53
[2026-06-05 04:36:53,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:36:54,269.269 INFO    ] Initializing speech engine...
[2026-06-05 04:36:54,276.276 INFO    ] 2026-06-05 04:36:54
[2026-06-05 04:36:54,536.536 INFO    ] 2026-06-05 04:36:54
[2026-06-05 04:36:54,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:36:54,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:36:54,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:36:54,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:36:55,020.020 INFO    ] time= 05/06/2026 04:36:54
[2026-06-05 04:36:55,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:36:55,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:36:55,227.227 INFO    ] No existing commands found in stream
[2026-06-05 04:37:00,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:37:00,257.257 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 04:37:01,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:37:01,577.577 INFO    ] Checking for system updates...
[2026-06-05 04:37:01,650.650 INFO    ] 200
[2026-06-05 04:37:01,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:01,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:37:01,728.728 INFO    ] No update needed
[2026-06-05 04:37:01,730.730 INFO    ] Checking for camera pi updates...
[2026-06-05 04:37:01,768.768 INFO    ] 200
[2026-06-05 04:37:01,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:01,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:37:01,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:37:01,874.874 INFO    ] No camera update needed
[2026-06-05 04:37:01,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:37:01,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:37:01,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:37:01,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:37:03,941.941 INFO    ] ================================================
[2026-06-05 04:37:03,956.956 INFO    ] Launching Daemon at Fri Jun  5 04:37:03 IST 2026
[2026-06-05 04:37:03,967.967 INFO    ] ================================================
[2026-06-05 04:37:04,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:37:04
[2026-06-05 04:37:05,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:37:05,532.532 INFO    ] Initializing speech engine...
[2026-06-05 04:37:05,540.540 INFO    ] 2026-06-05 04:37:05
[2026-06-05 04:37:05,790.790 INFO    ] 2026-06-05 04:37:05
[2026-06-05 04:37:05,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:37:06,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:37:06,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:37:06,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:37:06,203.203 INFO    ] time= 05/06/2026 04:37:06
[2026-06-05 04:37:06,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:37:06,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:37:06,404.404 INFO    ] No existing commands found in stream
[2026-06-05 04:37:11,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:37:11,421.421 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 04:37:13,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:37:13,068.068 INFO    ] Checking for system updates...
[2026-06-05 04:37:13,109.109 INFO    ] 200
[2026-06-05 04:37:13,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:13,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:37:13,169.169 INFO    ] No update needed
[2026-06-05 04:37:13,172.172 INFO    ] Checking for camera pi updates...
[2026-06-05 04:37:13,207.207 INFO    ] 200
[2026-06-05 04:37:13,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:13,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:37:13,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:37:13,290.290 INFO    ] No camera update needed
[2026-06-05 04:37:13,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:37:13,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:37:13,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:37:13,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:37:15,349.349 INFO    ] ================================================
[2026-06-05 04:37:15,364.364 INFO    ] Launching Daemon at Fri Jun  5 04:37:15 IST 2026
[2026-06-05 04:37:15,375.375 INFO    ] ================================================
[2026-06-05 04:37:15,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:37:15
[2026-06-05 04:37:16,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:37:16,789.789 INFO    ] Initializing speech engine...
[2026-06-05 04:37:16,801.801 INFO    ] 2026-06-05 04:37:16
[2026-06-05 04:37:17,067.067 INFO    ] 2026-06-05 04:37:17
[2026-06-05 04:37:17,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:37:17,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:37:17,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:37:17,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:37:17,420.420 INFO    ] time= 05/06/2026 04:37:17
[2026-06-05 04:37:17,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:37:17,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:37:17,534.534 INFO    ] No existing commands found in stream
[2026-06-05 04:37:22,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:37:22,550.550 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 04:37:24,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:37:24,763.763 INFO    ] Checking for system updates...
[2026-06-05 04:37:24,799.799 INFO    ] 200
[2026-06-05 04:37:24,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:24,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:37:24,857.857 INFO    ] No update needed
[2026-06-05 04:37:24,859.859 INFO    ] Checking for camera pi updates...
[2026-06-05 04:37:24,897.897 INFO    ] 200
[2026-06-05 04:37:24,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:24,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:37:24,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:37:24,988.988 INFO    ] No camera update needed
[2026-06-05 04:37:24,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:37:24,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:37:24,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:37:25,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:37:27,044.044 INFO    ] ================================================
[2026-06-05 04:37:27,059.059 INFO    ] Launching Daemon at Fri Jun  5 04:37:27 IST 2026
[2026-06-05 04:37:27,069.069 INFO    ] ================================================
[2026-06-05 04:37:27,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:37:27
[2026-06-05 04:37:28,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:37:28,549.549 INFO    ] Initializing speech engine...
[2026-06-05 04:37:28,559.559 INFO    ] 2026-06-05 04:37:28
[2026-06-05 04:37:28,823.823 INFO    ] 2026-06-05 04:37:28
[2026-06-05 04:37:28,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:37:29,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:37:29,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:37:29,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:37:29,219.219 INFO    ] time= 05/06/2026 04:37:29
[2026-06-05 04:37:29,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:37:29,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:37:29,384.384 INFO    ] No existing commands found in stream
[2026-06-05 04:37:34,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:37:34,417.417 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 04:37:35,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:37:35,109.109 INFO    ] Checking for system updates...
[2026-06-05 04:37:35,145.145 INFO    ] 200
[2026-06-05 04:37:35,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:35,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:37:35,204.204 INFO    ] No update needed
[2026-06-05 04:37:35,206.206 INFO    ] Checking for camera pi updates...
[2026-06-05 04:37:35,257.257 INFO    ] 200
[2026-06-05 04:37:35,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:35,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:37:35,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:37:35,353.353 INFO    ] No camera update needed
[2026-06-05 04:37:35,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:37:35,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:37:35,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:37:35,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:37:37,410.410 INFO    ] ================================================
[2026-06-05 04:37:37,426.426 INFO    ] Launching Daemon at Fri Jun  5 04:37:37 IST 2026
[2026-06-05 04:37:37,438.438 INFO    ] ================================================
[2026-06-05 04:37:38,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:37:38
[2026-06-05 04:37:38,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:37:38,902.902 INFO    ] Initializing speech engine...
[2026-06-05 04:37:38,913.913 INFO    ] 2026-06-05 04:37:38
[2026-06-05 04:37:39,162.162 INFO    ] 2026-06-05 04:37:39
[2026-06-05 04:37:39,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:37:39,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:37:39,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:37:39,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:37:39,658.658 INFO    ] time= 05/06/2026 04:37:39
[2026-06-05 04:37:39,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:37:39,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:37:39,790.790 INFO    ] No existing commands found in stream
[2026-06-05 04:37:44,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:37:44,808.808 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 04:37:48,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:37:48,232.232 INFO    ] Checking for system updates...
[2026-06-05 04:37:48,268.268 INFO    ] 200
[2026-06-05 04:37:48,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:48,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:37:48,326.326 INFO    ] No update needed
[2026-06-05 04:37:48,329.329 INFO    ] Checking for camera pi updates...
[2026-06-05 04:37:48,363.363 INFO    ] 200
[2026-06-05 04:37:48,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:37:48,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:37:48,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:37:48,451.451 INFO    ] No camera update needed
[2026-06-05 04:37:48,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:37:48,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:37:48,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:37:48,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:37:50,508.508 INFO    ] ================================================
[2026-06-05 04:37:50,524.524 INFO    ] Launching Daemon at Fri Jun  5 04:37:50 IST 2026
[2026-06-05 04:37:50,536.536 INFO    ] ================================================
[2026-06-05 04:37:51,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:37:51
[2026-06-05 04:37:51,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:37:52,012.012 INFO    ] Initializing speech engine...
[2026-06-05 04:37:52,021.021 INFO    ] 2026-06-05 04:37:52
[2026-06-05 04:37:52,318.318 INFO    ] 2026-06-05 04:37:52
[2026-06-05 04:37:52,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:37:52,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:37:52,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:37:52,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:37:52,697.697 INFO    ] time= 05/06/2026 04:37:52
[2026-06-05 04:37:52,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:37:52,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:37:52,811.811 INFO    ] No existing commands found in stream
[2026-06-05 04:37:57,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:37:57,826.826 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 04:38:00,949.949 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:38:00,952.952 INFO    ] Checking for system updates...
[2026-06-05 04:38:00,992.992 INFO    ] 200
[2026-06-05 04:38:00,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:01,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:38:01,054.054 INFO    ] No update needed
[2026-06-05 04:38:01,058.058 INFO    ] Checking for camera pi updates...
[2026-06-05 04:38:01,154.154 INFO    ] 200
[2026-06-05 04:38:01,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:01,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:38:01,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:38:01,307.307 INFO    ] No camera update needed
[2026-06-05 04:38:01,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:38:01,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:38:01,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:38:01,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:38:03,392.392 INFO    ] ================================================
[2026-06-05 04:38:03,413.413 INFO    ] Launching Daemon at Fri Jun  5 04:38:03 IST 2026
[2026-06-05 04:38:03,424.424 INFO    ] ================================================
[2026-06-05 04:38:04,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:38:04
[2026-06-05 04:38:04,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:38:04,939.939 INFO    ] Initializing speech engine...
[2026-06-05 04:38:04,949.949 INFO    ] 2026-06-05 04:38:04
[2026-06-05 04:38:05,212.212 INFO    ] 2026-06-05 04:38:05
[2026-06-05 04:38:05,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:38:05,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:38:05,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:38:05,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:38:05,550.550 INFO    ] time= 05/06/2026 04:38:05
[2026-06-05 04:38:05,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:38:05,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:38:05,660.660 INFO    ] No existing commands found in stream
[2026-06-05 04:38:10,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:38:10,674.674 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 04:38:13,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:38:13,638.638 INFO    ] Checking for system updates...
[2026-06-05 04:38:13,678.678 INFO    ] 200
[2026-06-05 04:38:13,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:13,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:38:13,736.736 INFO    ] No update needed
[2026-06-05 04:38:13,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 04:38:13,772.772 INFO    ] 200
[2026-06-05 04:38:13,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:13,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:38:13,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:38:13,849.849 INFO    ] No camera update needed
[2026-06-05 04:38:13,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:38:13,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:38:13,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:38:13,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:38:15,907.907 INFO    ] ================================================
[2026-06-05 04:38:15,923.923 INFO    ] Launching Daemon at Fri Jun  5 04:38:15 IST 2026
[2026-06-05 04:38:15,935.935 INFO    ] ================================================
[2026-06-05 04:38:16,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:38:16
[2026-06-05 04:38:17,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:38:17,573.573 INFO    ] Initializing speech engine...
[2026-06-05 04:38:17,581.581 INFO    ] 2026-06-05 04:38:17
[2026-06-05 04:38:17,871.871 INFO    ] 2026-06-05 04:38:17
[2026-06-05 04:38:17,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:38:18,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:38:18,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:38:18,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:38:18,337.337 INFO    ] time= 05/06/2026 04:38:18
[2026-06-05 04:38:18,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:38:18,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:38:18,489.489 INFO    ] No existing commands found in stream
[2026-06-05 04:38:23,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:38:23,514.514 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 04:38:24,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:38:24,145.145 INFO    ] Checking for system updates...
[2026-06-05 04:38:24,182.182 INFO    ] 200
[2026-06-05 04:38:24,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:24,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:38:24,242.242 INFO    ] No update needed
[2026-06-05 04:38:24,245.245 INFO    ] Checking for camera pi updates...
[2026-06-05 04:38:24,284.284 INFO    ] 200
[2026-06-05 04:38:24,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:24,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:38:24,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:38:24,388.388 INFO    ] No camera update needed
[2026-06-05 04:38:24,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:38:24,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:38:24,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:38:24,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:38:26,446.446 INFO    ] ================================================
[2026-06-05 04:38:26,461.461 INFO    ] Launching Daemon at Fri Jun  5 04:38:26 IST 2026
[2026-06-05 04:38:26,474.474 INFO    ] ================================================
[2026-06-05 04:38:27,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:38:27
[2026-06-05 04:38:27,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:38:28,008.008 INFO    ] Initializing speech engine...
[2026-06-05 04:38:28,020.020 INFO    ] 2026-06-05 04:38:28
[2026-06-05 04:38:28,303.303 INFO    ] 2026-06-05 04:38:28
[2026-06-05 04:38:28,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:38:28,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:38:28,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:38:28,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:38:28,765.765 INFO    ] time= 05/06/2026 04:38:28
[2026-06-05 04:38:28,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:38:28,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:38:28,921.921 INFO    ] No existing commands found in stream
[2026-06-05 04:38:33,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:38:33,936.936 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 04:38:37,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:38:37,812.812 INFO    ] Checking for system updates...
[2026-06-05 04:38:37,851.851 INFO    ] 200
[2026-06-05 04:38:37,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:37,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:38:37,909.909 INFO    ] No update needed
[2026-06-05 04:38:37,911.911 INFO    ] Checking for camera pi updates...
[2026-06-05 04:38:37,947.947 INFO    ] 200
[2026-06-05 04:38:37,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:37,992.992 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:38:38,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:38:38,043.043 INFO    ] No camera update needed
[2026-06-05 04:38:38,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:38:38,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:38:38,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:38:38,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:38:40,098.098 INFO    ] ================================================
[2026-06-05 04:38:40,113.113 INFO    ] Launching Daemon at Fri Jun  5 04:38:40 IST 2026
[2026-06-05 04:38:40,124.124 INFO    ] ================================================
[2026-06-05 04:38:40,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:38:40
[2026-06-05 04:38:41,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:38:41,575.575 INFO    ] Initializing speech engine...
[2026-06-05 04:38:41,588.588 INFO    ] 2026-06-05 04:38:41
[2026-06-05 04:38:41,874.874 INFO    ] 2026-06-05 04:38:41
[2026-06-05 04:38:41,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:38:42,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:38:42,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:38:42,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:38:42,251.251 INFO    ] time= 05/06/2026 04:38:42
[2026-06-05 04:38:42,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:38:42,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:38:42,373.373 INFO    ] No existing commands found in stream
[2026-06-05 04:38:47,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:38:47,394.394 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 04:38:50,162.162 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:38:50,164.164 INFO    ] Checking for system updates...
[2026-06-05 04:38:50,205.205 INFO    ] 200
[2026-06-05 04:38:50,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:50,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:38:50,283.283 INFO    ] No update needed
[2026-06-05 04:38:50,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 04:38:50,320.320 INFO    ] 200
[2026-06-05 04:38:50,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:38:50,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:38:50,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:38:50,412.412 INFO    ] No camera update needed
[2026-06-05 04:38:50,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:38:50,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:38:50,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:38:50,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:38:52,469.469 INFO    ] ================================================
[2026-06-05 04:38:52,484.484 INFO    ] Launching Daemon at Fri Jun  5 04:38:52 IST 2026
[2026-06-05 04:38:52,495.495 INFO    ] ================================================
[2026-06-05 04:38:53,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:38:53
[2026-06-05 04:38:53,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:38:53,917.917 INFO    ] Initializing speech engine...
[2026-06-05 04:38:53,923.923 INFO    ] 2026-06-05 04:38:53
[2026-06-05 04:38:54,171.171 INFO    ] 2026-06-05 04:38:54
[2026-06-05 04:38:54,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:38:54,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:38:54,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:38:54,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:38:54,546.546 INFO    ] time= 05/06/2026 04:38:54
[2026-06-05 04:38:54,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:38:54,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:38:54,705.705 INFO    ] No existing commands found in stream
[2026-06-05 04:38:59,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:38:59,738.738 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 04:39:03,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:39:03,754.754 INFO    ] Checking for system updates...
[2026-06-05 04:39:03,790.790 INFO    ] 200
[2026-06-05 04:39:03,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:03,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:39:03,852.852 INFO    ] No update needed
[2026-06-05 04:39:03,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 04:39:03,888.888 INFO    ] 200
[2026-06-05 04:39:03,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:03,935.935 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:39:03,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:39:03,966.966 INFO    ] No camera update needed
[2026-06-05 04:39:03,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:39:03,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:39:03,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:39:03,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:39:06,021.021 INFO    ] ================================================
[2026-06-05 04:39:06,037.037 INFO    ] Launching Daemon at Fri Jun  5 04:39:06 IST 2026
[2026-06-05 04:39:06,047.047 INFO    ] ================================================
[2026-06-05 04:39:06,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:39:06
[2026-06-05 04:39:07,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:39:07,595.595 INFO    ] Initializing speech engine...
[2026-06-05 04:39:07,609.609 INFO    ] 2026-06-05 04:39:07
[2026-06-05 04:39:07,897.897 INFO    ] 2026-06-05 04:39:07
[2026-06-05 04:39:08,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:39:08,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:39:08,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:39:08,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:39:08,441.441 INFO    ] time= 05/06/2026 04:39:08
[2026-06-05 04:39:08,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:39:08,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:39:08,586.586 INFO    ] No existing commands found in stream
[2026-06-05 04:39:13,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:39:13,615.615 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 04:39:15,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:39:15,003.003 INFO    ] Checking for system updates...
[2026-06-05 04:39:15,040.040 INFO    ] 200
[2026-06-05 04:39:15,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:15,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:39:15,108.108 INFO    ] No update needed
[2026-06-05 04:39:15,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 04:39:15,146.146 INFO    ] 200
[2026-06-05 04:39:15,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:15,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:39:15,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:39:15,244.244 INFO    ] No camera update needed
[2026-06-05 04:39:15,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:39:15,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:39:15,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:39:15,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:39:17,302.302 INFO    ] ================================================
[2026-06-05 04:39:17,318.318 INFO    ] Launching Daemon at Fri Jun  5 04:39:17 IST 2026
[2026-06-05 04:39:17,329.329 INFO    ] ================================================
[2026-06-05 04:39:17,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:39:17
[2026-06-05 04:39:18,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:39:18,769.769 INFO    ] Initializing speech engine...
[2026-06-05 04:39:18,778.778 INFO    ] 2026-06-05 04:39:18
[2026-06-05 04:39:19,029.029 INFO    ] 2026-06-05 04:39:19
[2026-06-05 04:39:19,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:39:19,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:39:19,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:39:19,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:39:19,518.518 INFO    ] time= 05/06/2026 04:39:19
[2026-06-05 04:39:19,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:39:19,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:39:19,671.671 INFO    ] No existing commands found in stream
[2026-06-05 04:39:24,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:39:24,701.701 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 04:39:25,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:39:25,103.103 INFO    ] Checking for system updates...
[2026-06-05 04:39:25,138.138 INFO    ] 200
[2026-06-05 04:39:25,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:25,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:39:25,203.203 INFO    ] No update needed
[2026-06-05 04:39:25,205.205 INFO    ] Checking for camera pi updates...
[2026-06-05 04:39:25,243.243 INFO    ] 200
[2026-06-05 04:39:25,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:25,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:39:25,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:39:25,334.334 INFO    ] No camera update needed
[2026-06-05 04:39:25,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:39:25,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:39:25,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:39:25,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:39:27,391.391 INFO    ] ================================================
[2026-06-05 04:39:27,406.406 INFO    ] Launching Daemon at Fri Jun  5 04:39:27 IST 2026
[2026-06-05 04:39:27,416.416 INFO    ] ================================================
[2026-06-05 04:39:28,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:39:28
[2026-06-05 04:39:28,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:39:28,878.878 INFO    ] Initializing speech engine...
[2026-06-05 04:39:28,904.904 INFO    ] 2026-06-05 04:39:28
[2026-06-05 04:39:29,181.181 INFO    ] 2026-06-05 04:39:29
[2026-06-05 04:39:29,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:39:29,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:39:29,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:39:29,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:39:29,561.561 INFO    ] time= 05/06/2026 04:39:29
[2026-06-05 04:39:29,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:39:29,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:39:29,688.688 INFO    ] No existing commands found in stream
[2026-06-05 04:39:34,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:39:34,702.702 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 04:39:35,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:39:35,361.361 INFO    ] Checking for system updates...
[2026-06-05 04:39:35,404.404 INFO    ] 200
[2026-06-05 04:39:35,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:35,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:39:35,470.470 INFO    ] No update needed
[2026-06-05 04:39:35,472.472 INFO    ] Checking for camera pi updates...
[2026-06-05 04:39:35,515.515 INFO    ] 200
[2026-06-05 04:39:35,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:35,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:39:35,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:39:35,608.608 INFO    ] No camera update needed
[2026-06-05 04:39:35,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:39:35,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:39:35,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:39:35,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:39:37,668.668 INFO    ] ================================================
[2026-06-05 04:39:37,683.683 INFO    ] Launching Daemon at Fri Jun  5 04:39:37 IST 2026
[2026-06-05 04:39:37,694.694 INFO    ] ================================================
[2026-06-05 04:39:38,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:39:38
[2026-06-05 04:39:38,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:39:39,112.112 INFO    ] Initializing speech engine...
[2026-06-05 04:39:39,121.121 INFO    ] 2026-06-05 04:39:39
[2026-06-05 04:39:39,417.417 INFO    ] 2026-06-05 04:39:39
[2026-06-05 04:39:39,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:39:39,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:39:39,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:39:39,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:39:39,799.799 INFO    ] time= 05/06/2026 04:39:39
[2026-06-05 04:39:39,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:39:39,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:39:39,924.924 INFO    ] No existing commands found in stream
[2026-06-05 04:39:44,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:39:44,939.939 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 04:39:45,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:39:45,415.415 INFO    ] Checking for system updates...
[2026-06-05 04:39:45,455.455 INFO    ] 200
[2026-06-05 04:39:45,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:45,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:39:45,513.513 INFO    ] No update needed
[2026-06-05 04:39:45,516.516 INFO    ] Checking for camera pi updates...
[2026-06-05 04:39:45,550.550 INFO    ] 200
[2026-06-05 04:39:45,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:45,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:39:45,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:39:45,644.644 INFO    ] No camera update needed
[2026-06-05 04:39:45,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:39:45,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:39:45,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:39:45,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:39:47,699.699 INFO    ] ================================================
[2026-06-05 04:39:47,714.714 INFO    ] Launching Daemon at Fri Jun  5 04:39:47 IST 2026
[2026-06-05 04:39:47,725.725 INFO    ] ================================================
[2026-06-05 04:39:48,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:39:48
[2026-06-05 04:39:48,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:39:49,128.128 INFO    ] Initializing speech engine...
[2026-06-05 04:39:49,141.141 INFO    ] 2026-06-05 04:39:49
[2026-06-05 04:39:49,407.407 INFO    ] 2026-06-05 04:39:49
[2026-06-05 04:39:49,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:39:49,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:39:49,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:39:49,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:39:49,893.893 INFO    ] time= 05/06/2026 04:39:49
[2026-06-05 04:39:49,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:39:49,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:39:50,040.040 INFO    ] No existing commands found in stream
[2026-06-05 04:39:55,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:39:55,050.050 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 04:39:56,203.203 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:39:56,206.206 INFO    ] Checking for system updates...
[2026-06-05 04:39:56,251.251 INFO    ] 200
[2026-06-05 04:39:56,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:56,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:39:56,342.342 INFO    ] No update needed
[2026-06-05 04:39:56,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 04:39:56,400.400 INFO    ] 200
[2026-06-05 04:39:56,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:39:56,446.446 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:39:56,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:39:56,488.488 INFO    ] No camera update needed
[2026-06-05 04:39:56,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:39:56,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:39:56,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:39:56,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:39:58,545.545 INFO    ] ================================================
[2026-06-05 04:39:58,560.560 INFO    ] Launching Daemon at Fri Jun  5 04:39:58 IST 2026
[2026-06-05 04:39:58,570.570 INFO    ] ================================================
[2026-06-05 04:39:59,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:39:59
[2026-06-05 04:39:59,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:40:00,034.034 INFO    ] Initializing speech engine...
[2026-06-05 04:40:00,043.043 INFO    ] 2026-06-05 04:40:00
[2026-06-05 04:40:00,305.305 INFO    ] 2026-06-05 04:40:00
[2026-06-05 04:40:00,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:40:00,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:40:00,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:40:00,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:40:00,772.772 INFO    ] time= 05/06/2026 04:40:00
[2026-06-05 04:40:00,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:40:00,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:40:00,919.919 INFO    ] No existing commands found in stream
[2026-06-05 04:40:05,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:40:05,955.955 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 04:40:08,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:40:08,225.225 INFO    ] Checking for system updates...
[2026-06-05 04:40:08,261.261 INFO    ] 200
[2026-06-05 04:40:08,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:08,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:40:08,319.319 INFO    ] No update needed
[2026-06-05 04:40:08,321.321 INFO    ] Checking for camera pi updates...
[2026-06-05 04:40:08,355.355 INFO    ] 200
[2026-06-05 04:40:08,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:08,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:40:08,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:40:08,444.444 INFO    ] No camera update needed
[2026-06-05 04:40:08,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:40:08,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:40:08,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:40:08,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:40:10,506.506 INFO    ] ================================================
[2026-06-05 04:40:10,521.521 INFO    ] Launching Daemon at Fri Jun  5 04:40:10 IST 2026
[2026-06-05 04:40:10,532.532 INFO    ] ================================================
[2026-06-05 04:40:11,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:40:11
[2026-06-05 04:40:11,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:40:12,120.120 INFO    ] Initializing speech engine...
[2026-06-05 04:40:12,137.137 INFO    ] 2026-06-05 04:40:12
[2026-06-05 04:40:12,407.407 INFO    ] 2026-06-05 04:40:12
[2026-06-05 04:40:12,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:40:12,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:40:12,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:40:12,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:40:12,790.790 INFO    ] time= 05/06/2026 04:40:12
[2026-06-05 04:40:12,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:40:12,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:40:12,964.964 INFO    ] No existing commands found in stream
[2026-06-05 04:40:17,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:40:17,999.999 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 04:40:21,759.759 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:40:21,762.762 INFO    ] Checking for system updates...
[2026-06-05 04:40:21,799.799 INFO    ] 200
[2026-06-05 04:40:21,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:21,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:40:21,869.869 INFO    ] No update needed
[2026-06-05 04:40:21,872.872 INFO    ] Checking for camera pi updates...
[2026-06-05 04:40:21,906.906 INFO    ] 200
[2026-06-05 04:40:21,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:21,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:40:21,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:40:21,995.995 INFO    ] No camera update needed
[2026-06-05 04:40:21,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:40:22,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:40:22,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:40:22,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:40:24,053.053 INFO    ] ================================================
[2026-06-05 04:40:24,069.069 INFO    ] Launching Daemon at Fri Jun  5 04:40:24 IST 2026
[2026-06-05 04:40:24,080.080 INFO    ] ================================================
[2026-06-05 04:40:24,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:40:24
[2026-06-05 04:40:25,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:40:25,522.522 INFO    ] Initializing speech engine...
[2026-06-05 04:40:25,529.529 INFO    ] 2026-06-05 04:40:25
[2026-06-05 04:40:25,790.790 INFO    ] 2026-06-05 04:40:25
[2026-06-05 04:40:25,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:40:26,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:40:26,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:40:26,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:40:26,250.250 INFO    ] time= 05/06/2026 04:40:26
[2026-06-05 04:40:26,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:40:26,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:40:26,464.464 INFO    ] No existing commands found in stream
[2026-06-05 04:40:31,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:40:31,495.495 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 04:40:34,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:40:34,973.973 INFO    ] Checking for system updates...
[2026-06-05 04:40:35,010.010 INFO    ] 200
[2026-06-05 04:40:35,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:35,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:40:35,067.067 INFO    ] No update needed
[2026-06-05 04:40:35,070.070 INFO    ] Checking for camera pi updates...
[2026-06-05 04:40:35,106.106 INFO    ] 200
[2026-06-05 04:40:35,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:35,149.149 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:40:35,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:40:35,196.196 INFO    ] No camera update needed
[2026-06-05 04:40:35,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:40:35,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:40:35,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:40:35,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:40:37,256.256 INFO    ] ================================================
[2026-06-05 04:40:37,271.271 INFO    ] Launching Daemon at Fri Jun  5 04:40:37 IST 2026
[2026-06-05 04:40:37,282.282 INFO    ] ================================================
[2026-06-05 04:40:37,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:40:37
[2026-06-05 04:40:38,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:40:38,717.717 INFO    ] Initializing speech engine...
[2026-06-05 04:40:38,727.727 INFO    ] 2026-06-05 04:40:38
[2026-06-05 04:40:39,032.032 INFO    ] 2026-06-05 04:40:38
[2026-06-05 04:40:39,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:40:39,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:40:39,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:40:39,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:40:39,458.458 INFO    ] time= 05/06/2026 04:40:39
[2026-06-05 04:40:39,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:40:39,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:40:39,587.587 INFO    ] No existing commands found in stream
[2026-06-05 04:40:44,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:40:44,620.620 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 04:40:45,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:40:45,658.658 INFO    ] Checking for system updates...
[2026-06-05 04:40:45,695.695 INFO    ] 200
[2026-06-05 04:40:45,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:45,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:40:45,753.753 INFO    ] No update needed
[2026-06-05 04:40:45,756.756 INFO    ] Checking for camera pi updates...
[2026-06-05 04:40:45,790.790 INFO    ] 200
[2026-06-05 04:40:45,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:45,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:40:45,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:40:45,889.889 INFO    ] No camera update needed
[2026-06-05 04:40:45,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:40:45,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:40:45,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:40:45,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:40:47,943.943 INFO    ] ================================================
[2026-06-05 04:40:47,959.959 INFO    ] Launching Daemon at Fri Jun  5 04:40:47 IST 2026
[2026-06-05 04:40:47,970.970 INFO    ] ================================================
[2026-06-05 04:40:48,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:40:48
[2026-06-05 04:40:49,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:40:49,599.599 INFO    ] Initializing speech engine...
[2026-06-05 04:40:49,613.613 INFO    ] 2026-06-05 04:40:49
[2026-06-05 04:40:49,922.922 INFO    ] 2026-06-05 04:40:49
[2026-06-05 04:40:50,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:40:50,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:40:50,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:40:50,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:40:50,427.427 INFO    ] time= 05/06/2026 04:40:50
[2026-06-05 04:40:50,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:40:50,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:40:50,558.558 INFO    ] No existing commands found in stream
[2026-06-05 04:40:55,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:40:55,592.592 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 04:40:57,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:40:57,320.320 INFO    ] Checking for system updates...
[2026-06-05 04:40:57,361.361 INFO    ] 200
[2026-06-05 04:40:57,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:57,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:40:57,420.420 INFO    ] No update needed
[2026-06-05 04:40:57,423.423 INFO    ] Checking for camera pi updates...
[2026-06-05 04:40:57,457.457 INFO    ] 200
[2026-06-05 04:40:57,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:40:57,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:40:57,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:40:57,547.547 INFO    ] No camera update needed
[2026-06-05 04:40:57,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:40:57,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:40:57,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:40:57,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:40:59,602.602 INFO    ] ================================================
[2026-06-05 04:40:59,618.618 INFO    ] Launching Daemon at Fri Jun  5 04:40:59 IST 2026
[2026-06-05 04:40:59,628.628 INFO    ] ================================================
[2026-06-05 04:41:00,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:41:00
[2026-06-05 04:41:00,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:41:01,052.052 INFO    ] Initializing speech engine...
[2026-06-05 04:41:01,061.061 INFO    ] 2026-06-05 04:41:01
[2026-06-05 04:41:01,330.330 INFO    ] 2026-06-05 04:41:01
[2026-06-05 04:41:01,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:41:01,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:41:01,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:41:01,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:41:01,794.794 INFO    ] time= 05/06/2026 04:41:01
[2026-06-05 04:41:01,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:41:01,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:41:01,857.857 INFO    ] No existing commands found in stream
[2026-06-05 04:41:06,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:41:06,869.869 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 04:41:09,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:41:09,215.215 INFO    ] Checking for system updates...
[2026-06-05 04:41:09,251.251 INFO    ] 200
[2026-06-05 04:41:09,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:09,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:41:09,315.315 INFO    ] No update needed
[2026-06-05 04:41:09,318.318 INFO    ] Checking for camera pi updates...
[2026-06-05 04:41:09,351.351 INFO    ] 200
[2026-06-05 04:41:09,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:09,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:41:09,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:41:09,532.532 INFO    ] No camera update needed
[2026-06-05 04:41:09,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:41:09,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:41:09,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:41:09,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:41:11,587.587 INFO    ] ================================================
[2026-06-05 04:41:11,602.602 INFO    ] Launching Daemon at Fri Jun  5 04:41:11 IST 2026
[2026-06-05 04:41:11,613.613 INFO    ] ================================================
[2026-06-05 04:41:12,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:41:12
[2026-06-05 04:41:12,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:41:13,015.015 INFO    ] Initializing speech engine...
[2026-06-05 04:41:13,030.030 INFO    ] 2026-06-05 04:41:13
[2026-06-05 04:41:13,297.297 INFO    ] 2026-06-05 04:41:13
[2026-06-05 04:41:13,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:41:13,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:41:13,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:41:13,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:41:13,779.779 INFO    ] time= 05/06/2026 04:41:13
[2026-06-05 04:41:13,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:41:13,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:41:13,992.992 INFO    ] No existing commands found in stream
[2026-06-05 04:41:19,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:41:19,018.018 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 04:41:20,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:41:20,332.332 INFO    ] Checking for system updates...
[2026-06-05 04:41:20,367.367 INFO    ] 200
[2026-06-05 04:41:20,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:20,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:41:20,429.429 INFO    ] No update needed
[2026-06-05 04:41:20,432.432 INFO    ] Checking for camera pi updates...
[2026-06-05 04:41:20,466.466 INFO    ] 200
[2026-06-05 04:41:20,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:20,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:41:20,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:41:20,552.552 INFO    ] No camera update needed
[2026-06-05 04:41:20,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:41:20,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:41:20,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:41:20,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:41:22,607.607 INFO    ] ================================================
[2026-06-05 04:41:22,622.622 INFO    ] Launching Daemon at Fri Jun  5 04:41:22 IST 2026
[2026-06-05 04:41:22,632.632 INFO    ] ================================================
[2026-06-05 04:41:23,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:41:23
[2026-06-05 04:41:23,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:41:24,047.047 INFO    ] Initializing speech engine...
[2026-06-05 04:41:24,062.062 INFO    ] 2026-06-05 04:41:24
[2026-06-05 04:41:24,330.330 INFO    ] 2026-06-05 04:41:24
[2026-06-05 04:41:24,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:41:24,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:41:24,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:41:24,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:41:24,811.811 INFO    ] time= 05/06/2026 04:41:24
[2026-06-05 04:41:24,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:41:24,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:41:24,962.962 INFO    ] No existing commands found in stream
[2026-06-05 04:41:29,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:41:29,977.977 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 04:41:32,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:41:32,190.190 INFO    ] Checking for system updates...
[2026-06-05 04:41:32,231.231 INFO    ] 200
[2026-06-05 04:41:32,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:32,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:41:32,302.302 INFO    ] No update needed
[2026-06-05 04:41:32,305.305 INFO    ] Checking for camera pi updates...
[2026-06-05 04:41:32,341.341 INFO    ] 200
[2026-06-05 04:41:32,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:32,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:41:32,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:41:32,428.428 INFO    ] No camera update needed
[2026-06-05 04:41:32,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:41:32,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:41:32,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:41:32,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:41:34,488.488 INFO    ] ================================================
[2026-06-05 04:41:34,504.504 INFO    ] Launching Daemon at Fri Jun  5 04:41:34 IST 2026
[2026-06-05 04:41:34,514.514 INFO    ] ================================================
[2026-06-05 04:41:35,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:41:35
[2026-06-05 04:41:35,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:41:35,978.978 INFO    ] Initializing speech engine...
[2026-06-05 04:41:35,984.984 INFO    ] 2026-06-05 04:41:35
[2026-06-05 04:41:36,236.236 INFO    ] 2026-06-05 04:41:36
[2026-06-05 04:41:36,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:41:36,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:41:36,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:41:36,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:41:36,736.736 INFO    ] time= 05/06/2026 04:41:36
[2026-06-05 04:41:36,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:41:36,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:41:36,918.918 INFO    ] No existing commands found in stream
[2026-06-05 04:41:41,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:41:41,948.948 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 04:41:45,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:41:45,830.830 INFO    ] Checking for system updates...
[2026-06-05 04:41:45,866.866 INFO    ] 200
[2026-06-05 04:41:45,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:45,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:41:45,934.934 INFO    ] No update needed
[2026-06-05 04:41:45,937.937 INFO    ] Checking for camera pi updates...
[2026-06-05 04:41:45,975.975 INFO    ] 200
[2026-06-05 04:41:45,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:46,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:41:46,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:41:46,066.066 INFO    ] No camera update needed
[2026-06-05 04:41:46,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:41:46,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:41:46,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:41:46,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:41:48,128.128 INFO    ] ================================================
[2026-06-05 04:41:48,143.143 INFO    ] Launching Daemon at Fri Jun  5 04:41:48 IST 2026
[2026-06-05 04:41:48,154.154 INFO    ] ================================================
[2026-06-05 04:41:48,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:41:48
[2026-06-05 04:41:49,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:41:49,605.605 INFO    ] Initializing speech engine...
[2026-06-05 04:41:49,618.618 INFO    ] 2026-06-05 04:41:49
[2026-06-05 04:41:49,906.906 INFO    ] 2026-06-05 04:41:49
[2026-06-05 04:41:49,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:41:50,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:41:50,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:41:50,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:41:50,289.289 INFO    ] time= 05/06/2026 04:41:50
[2026-06-05 04:41:50,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:41:50,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:41:50,414.414 INFO    ] No existing commands found in stream
[2026-06-05 04:41:55,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:41:55,430.430 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 04:41:56,558.558 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:41:56,561.561 INFO    ] Checking for system updates...
[2026-06-05 04:41:56,598.598 INFO    ] 200
[2026-06-05 04:41:56,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:56,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:41:56,656.656 INFO    ] No update needed
[2026-06-05 04:41:56,658.658 INFO    ] Checking for camera pi updates...
[2026-06-05 04:41:56,696.696 INFO    ] 200
[2026-06-05 04:41:56,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:41:56,739.739 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:41:56,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:41:56,782.782 INFO    ] No camera update needed
[2026-06-05 04:41:56,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:41:56,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:41:56,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:41:56,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:41:58,836.836 INFO    ] ================================================
[2026-06-05 04:41:58,851.851 INFO    ] Launching Daemon at Fri Jun  5 04:41:58 IST 2026
[2026-06-05 04:41:58,862.862 INFO    ] ================================================
[2026-06-05 04:41:59,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:41:59
[2026-06-05 04:42:00,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:42:00,296.296 INFO    ] Initializing speech engine...
[2026-06-05 04:42:00,308.308 INFO    ] 2026-06-05 04:42:00
[2026-06-05 04:42:00,573.573 INFO    ] 2026-06-05 04:42:00
[2026-06-05 04:42:00,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:42:00,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:42:00,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:42:00,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:42:00,974.974 INFO    ] time= 05/06/2026 04:42:00
[2026-06-05 04:42:00,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:42:01,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:42:01,082.082 INFO    ] No existing commands found in stream
[2026-06-05 04:42:06,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:42:06,098.098 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 04:42:08,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:42:08,036.036 INFO    ] Checking for system updates...
[2026-06-05 04:42:08,072.072 INFO    ] 200
[2026-06-05 04:42:08,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:08,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:42:08,130.130 INFO    ] No update needed
[2026-06-05 04:42:08,132.132 INFO    ] Checking for camera pi updates...
[2026-06-05 04:42:08,170.170 INFO    ] 200
[2026-06-05 04:42:08,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:08,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:42:08,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:42:08,264.264 INFO    ] No camera update needed
[2026-06-05 04:42:08,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:42:08,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:42:08,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:42:08,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:42:10,321.321 INFO    ] ================================================
[2026-06-05 04:42:10,336.336 INFO    ] Launching Daemon at Fri Jun  5 04:42:10 IST 2026
[2026-06-05 04:42:10,347.347 INFO    ] ================================================
[2026-06-05 04:42:10,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:42:10
[2026-06-05 04:42:11,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:42:11,816.816 INFO    ] Initializing speech engine...
[2026-06-05 04:42:11,824.824 INFO    ] 2026-06-05 04:42:11
[2026-06-05 04:42:12,114.114 INFO    ] 2026-06-05 04:42:12
[2026-06-05 04:42:12,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:42:12,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:42:12,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:42:12,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:42:12,666.666 INFO    ] time= 05/06/2026 04:42:12
[2026-06-05 04:42:12,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:42:12,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:42:12,829.829 INFO    ] No existing commands found in stream
[2026-06-05 04:42:17,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:42:17,853.853 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 04:42:18,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:42:18,643.643 INFO    ] Checking for system updates...
[2026-06-05 04:42:18,684.684 INFO    ] 200
[2026-06-05 04:42:18,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:18,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:42:18,750.750 INFO    ] No update needed
[2026-06-05 04:42:18,753.753 INFO    ] Checking for camera pi updates...
[2026-06-05 04:42:18,789.789 INFO    ] 200
[2026-06-05 04:42:18,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:18,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:42:18,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:42:18,866.866 INFO    ] No camera update needed
[2026-06-05 04:42:18,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:42:18,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:42:18,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:42:18,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:42:20,924.924 INFO    ] ================================================
[2026-06-05 04:42:20,940.940 INFO    ] Launching Daemon at Fri Jun  5 04:42:20 IST 2026
[2026-06-05 04:42:20,951.951 INFO    ] ================================================
[2026-06-05 04:42:21,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:42:21
[2026-06-05 04:42:22,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:42:22,378.378 INFO    ] Initializing speech engine...
[2026-06-05 04:42:22,401.401 INFO    ] 2026-06-05 04:42:22
[2026-06-05 04:42:22,657.657 INFO    ] 2026-06-05 04:42:22
[2026-06-05 04:42:22,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:42:22,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:42:22,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:42:23,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:42:23,041.041 INFO    ] time= 05/06/2026 04:42:23
[2026-06-05 04:42:23,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:42:23,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:42:23,212.212 INFO    ] No existing commands found in stream
[2026-06-05 04:42:28,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:42:28,246.246 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 04:42:32,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:42:32,578.578 INFO    ] Checking for system updates...
[2026-06-05 04:42:32,619.619 INFO    ] 200
[2026-06-05 04:42:32,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:32,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:42:32,690.690 INFO    ] No update needed
[2026-06-05 04:42:32,693.693 INFO    ] Checking for camera pi updates...
[2026-06-05 04:42:32,732.732 INFO    ] 200
[2026-06-05 04:42:32,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:32,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:42:32,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:42:32,803.803 INFO    ] No camera update needed
[2026-06-05 04:42:32,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:42:32,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:42:32,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:42:32,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:42:34,860.860 INFO    ] ================================================
[2026-06-05 04:42:34,875.875 INFO    ] Launching Daemon at Fri Jun  5 04:42:34 IST 2026
[2026-06-05 04:42:34,885.885 INFO    ] ================================================
[2026-06-05 04:42:35,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:42:35
[2026-06-05 04:42:36,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:42:36,327.327 INFO    ] Initializing speech engine...
[2026-06-05 04:42:36,338.338 INFO    ] 2026-06-05 04:42:36
[2026-06-05 04:42:36,588.588 INFO    ] 2026-06-05 04:42:36
[2026-06-05 04:42:36,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:42:36,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:42:36,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:42:37,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:42:37,072.072 INFO    ] time= 05/06/2026 04:42:37
[2026-06-05 04:42:37,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:42:37,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:42:37,250.250 INFO    ] No existing commands found in stream
[2026-06-05 04:42:42,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:42:42,265.265 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 04:42:44,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:42:44,149.149 INFO    ] Checking for system updates...
[2026-06-05 04:42:44,184.184 INFO    ] 200
[2026-06-05 04:42:44,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:44,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:42:44,242.242 INFO    ] No update needed
[2026-06-05 04:42:44,245.245 INFO    ] Checking for camera pi updates...
[2026-06-05 04:42:44,279.279 INFO    ] 200
[2026-06-05 04:42:44,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:44,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:42:44,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:42:44,362.362 INFO    ] No camera update needed
[2026-06-05 04:42:44,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:42:44,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:42:44,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:42:44,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:42:46,417.417 INFO    ] ================================================
[2026-06-05 04:42:46,433.433 INFO    ] Launching Daemon at Fri Jun  5 04:42:46 IST 2026
[2026-06-05 04:42:46,444.444 INFO    ] ================================================
[2026-06-05 04:42:47,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:42:47
[2026-06-05 04:42:47,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:42:47,938.938 INFO    ] Initializing speech engine...
[2026-06-05 04:42:47,948.948 INFO    ] 2026-06-05 04:42:47
[2026-06-05 04:42:48,231.231 INFO    ] 2026-06-05 04:42:48
[2026-06-05 04:42:48,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:42:48,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:42:48,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:42:48,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:42:48,577.577 INFO    ] time= 05/06/2026 04:42:48
[2026-06-05 04:42:48,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:42:48,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:42:48,717.717 INFO    ] No existing commands found in stream
[2026-06-05 04:42:53,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:42:53,731.731 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 04:42:55,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:42:55,979.979 INFO    ] Checking for system updates...
[2026-06-05 04:42:56,021.021 INFO    ] 200
[2026-06-05 04:42:56,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:56,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:42:56,082.082 INFO    ] No update needed
[2026-06-05 04:42:56,085.085 INFO    ] Checking for camera pi updates...
[2026-06-05 04:42:56,125.125 INFO    ] 200
[2026-06-05 04:42:56,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:42:56,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:42:56,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:42:56,213.213 INFO    ] No camera update needed
[2026-06-05 04:42:56,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:42:56,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:42:56,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:42:56,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:42:58,272.272 INFO    ] ================================================
[2026-06-05 04:42:58,288.288 INFO    ] Launching Daemon at Fri Jun  5 04:42:58 IST 2026
[2026-06-05 04:42:58,298.298 INFO    ] ================================================
[2026-06-05 04:42:58,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:42:58
[2026-06-05 04:42:59,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:42:59,986.986 INFO    ] Initializing speech engine...
[2026-06-05 04:42:59,997.997 INFO    ] 2026-06-05 04:42:59
[2026-06-05 04:43:00,273.273 INFO    ] 2026-06-05 04:43:00
[2026-06-05 04:43:00,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:43:00,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:43:00,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:43:00,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:43:00,753.753 INFO    ] time= 05/06/2026 04:43:00
[2026-06-05 04:43:00,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:43:00,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:43:00,937.937 INFO    ] No existing commands found in stream
[2026-06-05 04:43:05,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:43:05,967.967 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 04:43:07,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:43:07,566.566 INFO    ] Checking for system updates...
[2026-06-05 04:43:07,603.603 INFO    ] 200
[2026-06-05 04:43:07,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:43:07,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:43:07,669.669 INFO    ] No update needed
[2026-06-05 04:43:07,671.671 INFO    ] Checking for camera pi updates...
[2026-06-05 04:43:07,705.705 INFO    ] 200
[2026-06-05 04:43:07,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:43:07,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:43:07,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:43:07,794.794 INFO    ] No camera update needed
[2026-06-05 04:43:07,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:43:07,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:43:07,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:43:07,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:43:09,849.849 INFO    ] ================================================
[2026-06-05 04:43:09,867.867 INFO    ] Launching Daemon at Fri Jun  5 04:43:09 IST 2026
[2026-06-05 04:43:09,879.879 INFO    ] ================================================
[2026-06-05 04:43:10,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:43:10
[2026-06-05 04:43:11,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:43:11,548.548 INFO    ] Initializing speech engine...
[2026-06-05 04:43:11,560.560 INFO    ] 2026-06-05 04:43:11
[2026-06-05 04:43:11,842.842 INFO    ] 2026-06-05 04:43:11
[2026-06-05 04:43:11,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:43:12,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:43:12,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:43:12,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:43:12,323.323 INFO    ] time= 05/06/2026 04:43:12
[2026-06-05 04:43:12,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:43:12,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:43:12,532.532 INFO    ] No existing commands found in stream
[2026-06-05 04:43:17,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:43:18,333.333 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 04:43:22,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:43:22,214.214 INFO    ] Checking for system updates...
[2026-06-05 04:43:22,255.255 INFO    ] 200
[2026-06-05 04:43:22,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:43:22,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:43:22,320.320 INFO    ] No update needed
[2026-06-05 04:43:22,323.323 INFO    ] Checking for camera pi updates...
[2026-06-05 04:43:22,362.362 INFO    ] 200
[2026-06-05 04:43:22,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:43:22,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:43:22,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:43:22,567.567 INFO    ] No camera update needed
[2026-06-05 04:43:22,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:43:22,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:43:22,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:43:22,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:43:24,628.628 INFO    ] ================================================
[2026-06-05 04:43:24,644.644 INFO    ] Launching Daemon at Fri Jun  5 04:43:24 IST 2026
[2026-06-05 04:43:24,656.656 INFO    ] ================================================
[2026-06-05 04:43:25,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:43:25
[2026-06-05 04:43:25,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:43:26,105.105 INFO    ] Initializing speech engine...
[2026-06-05 04:43:26,123.123 INFO    ] 2026-06-05 04:43:26
[2026-06-05 04:43:26,400.400 INFO    ] 2026-06-05 04:43:26
[2026-06-05 04:43:26,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:43:26,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:43:26,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:43:26,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:43:26,785.785 INFO    ] time= 05/06/2026 04:43:26
[2026-06-05 04:43:26,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:43:26,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:43:26,911.911 INFO    ] No existing commands found in stream
[2026-06-05 04:43:31,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:43:31,926.926 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 04:43:35,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:43:35,930.930 INFO    ] Checking for system updates...
[2026-06-05 04:43:35,967.967 INFO    ] 200
[2026-06-05 04:43:35,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:43:36,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:43:36,025.025 INFO    ] No update needed
[2026-06-05 04:43:36,028.028 INFO    ] Checking for camera pi updates...
[2026-06-05 04:43:36,062.062 INFO    ] 200
[2026-06-05 04:43:36,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:43:36,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:43:36,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:43:36,153.153 INFO    ] No camera update needed
[2026-06-05 04:43:36,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:43:36,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:43:36,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:43:36,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:43:38,210.210 INFO    ] ================================================
[2026-06-05 04:43:38,226.226 INFO    ] Launching Daemon at Fri Jun  5 04:43:38 IST 2026
[2026-06-05 04:43:38,237.237 INFO    ] ================================================
[2026-06-05 04:43:38,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:43:38
[2026-06-05 04:43:39,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:43:39,655.655 INFO    ] Initializing speech engine...
[2026-06-05 04:43:39,680.680 INFO    ] 2026-06-05 04:43:39
[2026-06-05 04:43:39,938.938 INFO    ] 2026-06-05 04:43:39
[2026-06-05 04:43:39,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:43:40,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:43:40,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:43:40,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:43:40,407.407 INFO    ] time= 05/06/2026 04:43:40
[2026-06-05 04:43:40,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:43:40,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:43:40,577.577 INFO    ] No existing commands found in stream
[2026-06-05 04:43:45,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:43:45,605.605 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 04:43:49,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:43:49,790.790 INFO    ] Checking for system updates...
[2026-06-05 04:43:49,830.830 INFO    ] 200
[2026-06-05 04:43:49,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:43:49,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:43:49,887.887 INFO    ] No update needed
[2026-06-05 04:43:49,890.890 INFO    ] Checking for camera pi updates...
[2026-06-05 04:43:49,927.927 INFO    ] 200
[2026-06-05 04:43:49,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:43:49,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:43:50,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:43:50,023.023 INFO    ] No camera update needed
[2026-06-05 04:43:50,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:43:50,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:43:50,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:43:50,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:43:52,080.080 INFO    ] ================================================
[2026-06-05 04:43:52,096.096 INFO    ] Launching Daemon at Fri Jun  5 04:43:52 IST 2026
[2026-06-05 04:43:52,106.106 INFO    ] ================================================
[2026-06-05 04:43:52,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:43:52
[2026-06-05 04:43:53,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:43:53,531.531 INFO    ] Initializing speech engine...
[2026-06-05 04:43:53,554.554 INFO    ] 2026-06-05 04:43:53
[2026-06-05 04:43:53,810.810 INFO    ] 2026-06-05 04:43:53
[2026-06-05 04:43:53,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:43:54,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:43:54,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:43:54,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:43:54,191.191 INFO    ] time= 05/06/2026 04:43:54
[2026-06-05 04:43:54,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:43:54,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:43:54,369.369 INFO    ] No existing commands found in stream
[2026-06-05 04:43:59,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:43:59,402.402 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 04:44:03,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:44:03,470.470 INFO    ] Checking for system updates...
[2026-06-05 04:44:03,505.505 INFO    ] 200
[2026-06-05 04:44:03,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:03,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:44:03,567.567 INFO    ] No update needed
[2026-06-05 04:44:03,570.570 INFO    ] Checking for camera pi updates...
[2026-06-05 04:44:03,609.609 INFO    ] 200
[2026-06-05 04:44:03,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:03,665.665 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:44:03,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:44:03,697.697 INFO    ] No camera update needed
[2026-06-05 04:44:03,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:44:03,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:44:03,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:44:03,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:44:05,753.753 INFO    ] ================================================
[2026-06-05 04:44:05,769.769 INFO    ] Launching Daemon at Fri Jun  5 04:44:05 IST 2026
[2026-06-05 04:44:05,781.781 INFO    ] ================================================
[2026-06-05 04:44:06,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:44:06
[2026-06-05 04:44:07,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:44:07,392.392 INFO    ] Initializing speech engine...
[2026-06-05 04:44:07,405.405 INFO    ] 2026-06-05 04:44:07
[2026-06-05 04:44:07,687.687 INFO    ] 2026-06-05 04:44:07
[2026-06-05 04:44:07,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:44:07,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:44:07,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:44:08,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:44:08,152.152 INFO    ] time= 05/06/2026 04:44:08
[2026-06-05 04:44:08,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:44:08,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:44:08,342.342 INFO    ] No existing commands found in stream
[2026-06-05 04:44:13,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:44:13,358.358 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 04:44:16,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:44:16,734.734 INFO    ] Checking for system updates...
[2026-06-05 04:44:16,772.772 INFO    ] 200
[2026-06-05 04:44:16,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:16,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:44:16,839.839 INFO    ] No update needed
[2026-06-05 04:44:16,842.842 INFO    ] Checking for camera pi updates...
[2026-06-05 04:44:16,877.877 INFO    ] 200
[2026-06-05 04:44:16,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:16,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:44:16,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:44:16,970.970 INFO    ] No camera update needed
[2026-06-05 04:44:16,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:44:16,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:44:16,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:44:16,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:44:19,029.029 INFO    ] ================================================
[2026-06-05 04:44:19,044.044 INFO    ] Launching Daemon at Fri Jun  5 04:44:19 IST 2026
[2026-06-05 04:44:19,055.055 INFO    ] ================================================
[2026-06-05 04:44:19,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:44:19
[2026-06-05 04:44:20,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:44:20,493.493 INFO    ] Initializing speech engine...
[2026-06-05 04:44:20,499.499 INFO    ] 2026-06-05 04:44:20
[2026-06-05 04:44:20,793.793 INFO    ] 2026-06-05 04:44:20
[2026-06-05 04:44:20,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:44:21,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:44:21,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:44:21,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:44:21,194.194 INFO    ] time= 05/06/2026 04:44:21
[2026-06-05 04:44:21,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:44:21,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:44:21,304.304 INFO    ] No existing commands found in stream
[2026-06-05 04:44:26,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:44:26,318.318 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 04:44:30,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:44:30,061.061 INFO    ] Checking for system updates...
[2026-06-05 04:44:30,098.098 INFO    ] 200
[2026-06-05 04:44:30,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:30,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:44:30,162.162 INFO    ] No update needed
[2026-06-05 04:44:30,166.166 INFO    ] Checking for camera pi updates...
[2026-06-05 04:44:30,207.207 INFO    ] 200
[2026-06-05 04:44:30,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:30,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:44:30,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:44:30,307.307 INFO    ] No camera update needed
[2026-06-05 04:44:30,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:44:30,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:44:30,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:44:30,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:44:32,368.368 INFO    ] ================================================
[2026-06-05 04:44:32,385.385 INFO    ] Launching Daemon at Fri Jun  5 04:44:32 IST 2026
[2026-06-05 04:44:32,397.397 INFO    ] ================================================
[2026-06-05 04:44:33,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:44:33
[2026-06-05 04:44:33,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:44:34,007.007 INFO    ] Initializing speech engine...
[2026-06-05 04:44:34,014.014 INFO    ] 2026-06-05 04:44:34
[2026-06-05 04:44:34,325.325 INFO    ] 2026-06-05 04:44:34
[2026-06-05 04:44:34,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:44:34,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:44:34,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:44:34,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:44:34,838.838 INFO    ] time= 05/06/2026 04:44:34
[2026-06-05 04:44:34,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:44:34,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:44:34,979.979 INFO    ] No existing commands found in stream
[2026-06-05 04:44:40,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:44:40,008.008 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 04:44:43,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:44:43,118.118 INFO    ] Checking for system updates...
[2026-06-05 04:44:43,156.156 INFO    ] 200
[2026-06-05 04:44:43,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:43,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:44:43,217.217 INFO    ] No update needed
[2026-06-05 04:44:43,220.220 INFO    ] Checking for camera pi updates...
[2026-06-05 04:44:43,255.255 INFO    ] 200
[2026-06-05 04:44:43,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:43,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:44:43,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:44:43,348.348 INFO    ] No camera update needed
[2026-06-05 04:44:43,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:44:43,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:44:43,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:44:43,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:44:45,405.405 INFO    ] ================================================
[2026-06-05 04:44:45,420.420 INFO    ] Launching Daemon at Fri Jun  5 04:44:45 IST 2026
[2026-06-05 04:44:45,430.430 INFO    ] ================================================
[2026-06-05 04:44:45,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:44:45
[2026-06-05 04:44:46,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:44:46,837.837 INFO    ] Initializing speech engine...
[2026-06-05 04:44:46,850.850 INFO    ] 2026-06-05 04:44:46
[2026-06-05 04:44:47,116.116 INFO    ] 2026-06-05 04:44:47
[2026-06-05 04:44:47,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:44:47,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:44:47,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:44:47,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:44:47,602.602 INFO    ] time= 05/06/2026 04:44:47
[2026-06-05 04:44:47,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:44:47,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:44:47,811.811 INFO    ] No existing commands found in stream
[2026-06-05 04:44:52,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:44:52,841.841 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 04:44:55,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:44:55,589.589 INFO    ] Checking for system updates...
[2026-06-05 04:44:55,626.626 INFO    ] 200
[2026-06-05 04:44:55,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:55,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:44:55,684.684 INFO    ] No update needed
[2026-06-05 04:44:55,686.686 INFO    ] Checking for camera pi updates...
[2026-06-05 04:44:55,722.722 INFO    ] 200
[2026-06-05 04:44:55,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:44:55,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:44:55,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:44:55,827.827 INFO    ] No camera update needed
[2026-06-05 04:44:55,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:44:55,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:44:55,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:44:55,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:44:57,882.882 INFO    ] ================================================
[2026-06-05 04:44:57,898.898 INFO    ] Launching Daemon at Fri Jun  5 04:44:57 IST 2026
[2026-06-05 04:44:57,910.910 INFO    ] ================================================
[2026-06-05 04:44:58,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:44:58
[2026-06-05 04:44:59,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:44:59,361.361 INFO    ] Initializing speech engine...
[2026-06-05 04:44:59,371.371 INFO    ] 2026-06-05 04:44:59
[2026-06-05 04:44:59,669.669 INFO    ] 2026-06-05 04:44:59
[2026-06-05 04:44:59,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:44:59,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:44:59,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:45:00,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:45:00,056.056 INFO    ] time= 05/06/2026 04:45:00
[2026-06-05 04:45:00,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:45:00,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:45:00,183.183 INFO    ] No existing commands found in stream
[2026-06-05 04:45:05,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:45:05,199.199 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 04:45:08,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:45:08,676.676 INFO    ] Checking for system updates...
[2026-06-05 04:45:08,713.713 INFO    ] 200
[2026-06-05 04:45:08,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:08,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:45:08,772.772 INFO    ] No update needed
[2026-06-05 04:45:08,774.774 INFO    ] Checking for camera pi updates...
[2026-06-05 04:45:08,808.808 INFO    ] 200
[2026-06-05 04:45:08,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:08,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:45:08,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:45:08,900.900 INFO    ] No camera update needed
[2026-06-05 04:45:08,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:45:08,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:45:08,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:45:08,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:45:10,964.964 INFO    ] ================================================
[2026-06-05 04:45:10,980.980 INFO    ] Launching Daemon at Fri Jun  5 04:45:10 IST 2026
[2026-06-05 04:45:10,991.991 INFO    ] ================================================
[2026-06-05 04:45:11,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:45:11
[2026-06-05 04:45:12,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:45:12,419.419 INFO    ] Initializing speech engine...
[2026-06-05 04:45:12,428.428 INFO    ] 2026-06-05 04:45:12
[2026-06-05 04:45:12,678.678 INFO    ] 2026-06-05 04:45:12
[2026-06-05 04:45:12,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:45:12,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:45:12,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:45:13,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:45:13,169.169 INFO    ] time= 05/06/2026 04:45:13
[2026-06-05 04:45:13,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:45:13,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:45:13,378.378 INFO    ] No existing commands found in stream
[2026-06-05 04:45:18,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:45:18,401.401 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 04:45:20,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:45:20,536.536 INFO    ] Checking for system updates...
[2026-06-05 04:45:20,577.577 INFO    ] 200
[2026-06-05 04:45:20,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:20,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:45:20,636.636 INFO    ] No update needed
[2026-06-05 04:45:20,639.639 INFO    ] Checking for camera pi updates...
[2026-06-05 04:45:20,678.678 INFO    ] 200
[2026-06-05 04:45:20,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:20,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:45:20,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:45:20,778.778 INFO    ] No camera update needed
[2026-06-05 04:45:20,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:45:20,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:45:20,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:45:20,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:45:22,838.838 INFO    ] ================================================
[2026-06-05 04:45:22,855.855 INFO    ] Launching Daemon at Fri Jun  5 04:45:22 IST 2026
[2026-06-05 04:45:22,867.867 INFO    ] ================================================
[2026-06-05 04:45:23,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:45:23
[2026-06-05 04:45:24,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:45:24,520.520 INFO    ] Initializing speech engine...
[2026-06-05 04:45:24,534.534 INFO    ] 2026-06-05 04:45:24
[2026-06-05 04:45:24,849.849 INFO    ] 2026-06-05 04:45:24
[2026-06-05 04:45:24,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:45:25,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:45:25,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:45:25,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:45:25,357.357 INFO    ] time= 05/06/2026 04:45:25
[2026-06-05 04:45:25,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:45:25,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:45:25,496.496 INFO    ] No existing commands found in stream
[2026-06-05 04:45:30,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:45:30,524.524 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 04:45:32,889.889 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:45:32,892.892 INFO    ] Checking for system updates...
[2026-06-05 04:45:32,936.936 INFO    ] 200
[2026-06-05 04:45:32,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:32,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:45:32,996.996 INFO    ] No update needed
[2026-06-05 04:45:32,999.999 INFO    ] Checking for camera pi updates...
[2026-06-05 04:45:33,038.038 INFO    ] 200
[2026-06-05 04:45:33,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:33,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:45:33,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:45:33,133.133 INFO    ] No camera update needed
[2026-06-05 04:45:33,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:45:33,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:45:33,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:45:33,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:45:35,195.195 INFO    ] ================================================
[2026-06-05 04:45:35,211.211 INFO    ] Launching Daemon at Fri Jun  5 04:45:35 IST 2026
[2026-06-05 04:45:35,222.222 INFO    ] ================================================
[2026-06-05 04:45:35,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:45:35
[2026-06-05 04:45:36,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:45:36,637.637 INFO    ] Initializing speech engine...
[2026-06-05 04:45:36,646.646 INFO    ] 2026-06-05 04:45:36
[2026-06-05 04:45:36,942.942 INFO    ] 2026-06-05 04:45:36
[2026-06-05 04:45:36,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:45:37,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:45:37,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:45:37,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:45:37,327.327 INFO    ] time= 05/06/2026 04:45:37
[2026-06-05 04:45:37,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:45:37,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:45:37,453.453 INFO    ] No existing commands found in stream
[2026-06-05 04:45:42,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:45:42,469.469 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 04:45:44,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:45:44,429.429 INFO    ] Checking for system updates...
[2026-06-05 04:45:44,466.466 INFO    ] 200
[2026-06-05 04:45:44,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:44,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:45:44,524.524 INFO    ] No update needed
[2026-06-05 04:45:44,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 04:45:44,565.565 INFO    ] 200
[2026-06-05 04:45:44,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:44,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:45:44,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:45:44,653.653 INFO    ] No camera update needed
[2026-06-05 04:45:44,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:45:44,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:45:44,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:45:44,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:45:46,708.708 INFO    ] ================================================
[2026-06-05 04:45:46,723.723 INFO    ] Launching Daemon at Fri Jun  5 04:45:46 IST 2026
[2026-06-05 04:45:46,735.735 INFO    ] ================================================
[2026-06-05 04:45:47,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:45:47
[2026-06-05 04:45:47,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:45:48,169.169 INFO    ] Initializing speech engine...
[2026-06-05 04:45:48,176.176 INFO    ] 2026-06-05 04:45:48
[2026-06-05 04:45:48,471.471 INFO    ] 2026-06-05 04:45:48
[2026-06-05 04:45:48,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:45:48,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:45:48,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:45:48,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:45:48,856.856 INFO    ] time= 05/06/2026 04:45:48
[2026-06-05 04:45:48,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:45:48,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:45:48,985.985 INFO    ] No existing commands found in stream
[2026-06-05 04:45:53,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:45:53,999.999 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 04:45:54,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:45:55,000.000 INFO    ] Checking for system updates...
[2026-06-05 04:45:55,037.037 INFO    ] 200
[2026-06-05 04:45:55,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:55,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:45:55,096.096 INFO    ] No update needed
[2026-06-05 04:45:55,098.098 INFO    ] Checking for camera pi updates...
[2026-06-05 04:45:55,133.133 INFO    ] 200
[2026-06-05 04:45:55,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:45:55,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:45:55,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:45:55,231.231 INFO    ] No camera update needed
[2026-06-05 04:45:55,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:45:55,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:45:55,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:45:55,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:45:57,289.289 INFO    ] ================================================
[2026-06-05 04:45:57,305.305 INFO    ] Launching Daemon at Fri Jun  5 04:45:57 IST 2026
[2026-06-05 04:45:57,317.317 INFO    ] ================================================
[2026-06-05 04:45:57,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:45:57
[2026-06-05 04:45:58,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:45:58,962.962 INFO    ] Initializing speech engine...
[2026-06-05 04:45:58,973.973 INFO    ] 2026-06-05 04:45:58
[2026-06-05 04:45:59,260.260 INFO    ] 2026-06-05 04:45:59
[2026-06-05 04:45:59,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:45:59,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:45:59,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:45:59,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:45:59,793.793 INFO    ] time= 05/06/2026 04:45:59
[2026-06-05 04:45:59,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:45:59,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:45:59,948.948 INFO    ] No existing commands found in stream
[2026-06-05 04:46:04,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:46:04,969.969 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 04:46:08,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:46:08,127.127 INFO    ] Checking for system updates...
[2026-06-05 04:46:08,165.165 INFO    ] 200
[2026-06-05 04:46:08,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:46:08,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:46:08,234.234 INFO    ] No update needed
[2026-06-05 04:46:08,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 04:46:08,271.271 INFO    ] 200
[2026-06-05 04:46:08,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:46:08,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:46:08,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:46:08,358.358 INFO    ] No camera update needed
[2026-06-05 04:46:08,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:46:08,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:46:08,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:46:08,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:46:10,415.415 INFO    ] ================================================
[2026-06-05 04:46:10,432.432 INFO    ] Launching Daemon at Fri Jun  5 04:46:10 IST 2026
[2026-06-05 04:46:10,443.443 INFO    ] ================================================
[2026-06-05 04:46:11,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:46:11
[2026-06-05 04:46:11,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:46:11,901.901 INFO    ] Initializing speech engine...
[2026-06-05 04:46:11,908.908 INFO    ] 2026-06-05 04:46:11
[2026-06-05 04:46:12,169.169 INFO    ] 2026-06-05 04:46:12
[2026-06-05 04:46:12,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:46:12,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:46:12,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:46:12,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:46:12,653.653 INFO    ] time= 05/06/2026 04:46:12
[2026-06-05 04:46:12,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:46:12,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:46:12,846.846 INFO    ] No existing commands found in stream
[2026-06-05 04:46:17,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:46:17,879.879 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 04:46:20,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:46:20,090.090 INFO    ] Checking for system updates...
[2026-06-05 04:46:20,127.127 INFO    ] 200
[2026-06-05 04:46:20,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:46:20,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:46:20,192.192 INFO    ] No update needed
[2026-06-05 04:46:20,195.195 INFO    ] Checking for camera pi updates...
[2026-06-05 04:46:20,233.233 INFO    ] 200
[2026-06-05 04:46:20,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:46:20,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:46:20,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:46:20,325.325 INFO    ] No camera update needed
[2026-06-05 04:46:20,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:46:20,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:46:20,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:46:20,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:46:22,383.383 INFO    ] ================================================
[2026-06-05 04:46:22,399.399 INFO    ] Launching Daemon at Fri Jun  5 04:46:22 IST 2026
[2026-06-05 04:46:22,409.409 INFO    ] ================================================
[2026-06-05 04:46:22,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:46:22
[2026-06-05 04:46:23,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:46:23,873.873 INFO    ] Initializing speech engine...
[2026-06-05 04:46:23,878.878 INFO    ] 2026-06-05 04:46:23
[2026-06-05 04:46:24,133.133 INFO    ] 2026-06-05 04:46:24
[2026-06-05 04:46:24,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:46:24,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:46:24,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:46:24,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:46:24,512.512 INFO    ] time= 05/06/2026 04:46:24
[2026-06-05 04:46:24,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:46:24,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:46:24,591.591 INFO    ] No existing commands found in stream
[2026-06-05 04:46:29,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:46:29,607.607 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 04:46:33,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:46:33,916.916 INFO    ] Checking for system updates...
[2026-06-05 04:46:33,954.954 INFO    ] 200
[2026-06-05 04:46:33,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:46:34,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:46:34,017.017 INFO    ] No update needed
[2026-06-05 04:46:34,020.020 INFO    ] Checking for camera pi updates...
[2026-06-05 04:46:34,055.055 INFO    ] 200
[2026-06-05 04:46:34,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:46:34,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:46:34,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:46:34,159.159 INFO    ] No camera update needed
[2026-06-05 04:46:34,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:46:34,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:46:34,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:46:34,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:46:36,217.217 INFO    ] ================================================
[2026-06-05 04:46:36,232.232 INFO    ] Launching Daemon at Fri Jun  5 04:46:36 IST 2026
[2026-06-05 04:46:36,244.244 INFO    ] ================================================
[2026-06-05 04:46:36,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:46:36
[2026-06-05 04:46:37,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:46:37,853.853 INFO    ] Initializing speech engine...
[2026-06-05 04:46:37,864.864 INFO    ] 2026-06-05 04:46:37
[2026-06-05 04:46:38,169.169 INFO    ] 2026-06-05 04:46:38
[2026-06-05 04:46:38,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:46:38,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:46:38,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:46:38,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:46:38,679.679 INFO    ] time= 05/06/2026 04:46:38
[2026-06-05 04:46:38,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:46:38,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:46:38,815.815 INFO    ] No existing commands found in stream
[2026-06-05 04:46:43,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:46:43,847.847 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 04:46:45,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:46:45,799.799 INFO    ] Checking for system updates...
[2026-06-05 04:46:45,842.842 INFO    ] 200
[2026-06-05 04:46:45,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:46:45,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:46:45,907.907 INFO    ] No update needed
[2026-06-05 04:46:45,910.910 INFO    ] Checking for camera pi updates...
[2026-06-05 04:46:45,950.950 INFO    ] 200
[2026-06-05 04:46:45,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:46:46,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:46:46,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:46:46,049.049 INFO    ] No camera update needed
[2026-06-05 04:46:46,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:46:46,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:46:46,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:46:46,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:46:48,112.112 INFO    ] ================================================
[2026-06-05 04:46:48,128.128 INFO    ] Launching Daemon at Fri Jun  5 04:46:48 IST 2026
[2026-06-05 04:46:48,139.139 INFO    ] ================================================
[2026-06-05 04:46:48,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:46:48
[2026-06-05 04:46:49,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:46:49,567.567 INFO    ] Initializing speech engine...
[2026-06-05 04:46:49,576.576 INFO    ] 2026-06-05 04:46:49
[2026-06-05 04:46:49,829.829 INFO    ] 2026-06-05 04:46:49
[2026-06-05 04:46:49,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:46:50,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:46:50,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:46:50,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:46:50,329.329 INFO    ] time= 05/06/2026 04:46:50
[2026-06-05 04:46:50,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:46:50,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:46:50,504.504 INFO    ] No existing commands found in stream
[2026-06-05 04:46:55,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:46:55,533.533 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 04:46:57,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:46:57,523.523 INFO    ] Checking for system updates...
[2026-06-05 04:46:57,564.564 INFO    ] 200
[2026-06-05 04:46:57,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 04:46:57,569.569 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 04:46:57,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 04:46:57,621.621 INFO    ] 200
[2026-06-05 04:46:57,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 04:46:57,626.626 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 04:46:57,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:46:57,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:46:57,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:46:57,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:46:59,681.681 INFO    ] ================================================
[2026-06-05 04:46:59,697.697 INFO    ] Launching Daemon at Fri Jun  5 04:46:59 IST 2026
[2026-06-05 04:46:59,708.708 INFO    ] ================================================
[2026-06-05 04:47:00,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:47:00
[2026-06-05 04:47:00,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:47:01,133.133 INFO    ] Initializing speech engine...
[2026-06-05 04:47:01,158.158 INFO    ] 2026-06-05 04:47:01
[2026-06-05 04:47:01,435.435 INFO    ] 2026-06-05 04:47:01
[2026-06-05 04:47:01,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:47:01,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:47:01,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:47:01,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:47:01,924.924 INFO    ] time= 05/06/2026 04:47:01
[2026-06-05 04:47:01,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:47:01,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:47:02,053.053 INFO    ] No existing commands found in stream
[2026-06-05 04:47:07,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:47:07,080.080 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 04:47:10,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:47:10,154.154 INFO    ] Checking for system updates...
[2026-06-05 04:47:10,191.191 INFO    ] 200
[2026-06-05 04:47:10,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:47:10,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:47:10,249.249 INFO    ] No update needed
[2026-06-05 04:47:10,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 04:47:10,289.289 INFO    ] 200
[2026-06-05 04:47:10,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:47:10,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:47:10,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:47:10,392.392 INFO    ] No camera update needed
[2026-06-05 04:47:10,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:47:10,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:47:10,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:47:10,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:47:12,447.447 INFO    ] ================================================
[2026-06-05 04:47:12,463.463 INFO    ] Launching Daemon at Fri Jun  5 04:47:12 IST 2026
[2026-06-05 04:47:12,474.474 INFO    ] ================================================
[2026-06-05 04:47:13,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:47:13
[2026-06-05 04:47:13,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:47:13,882.882 INFO    ] Initializing speech engine...
[2026-06-05 04:47:13,895.895 INFO    ] 2026-06-05 04:47:13
[2026-06-05 04:47:14,153.153 INFO    ] 2026-06-05 04:47:14
[2026-06-05 04:47:14,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:47:14,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:47:14,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:47:14,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:47:14,533.533 INFO    ] time= 05/06/2026 04:47:14
[2026-06-05 04:47:14,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:47:14,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:47:14,652.652 INFO    ] No existing commands found in stream
[2026-06-05 04:47:19,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:47:19,672.672 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 04:47:20,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:47:20,834.834 INFO    ] Checking for system updates...
[2026-06-05 04:47:20,881.881 INFO    ] 200
[2026-06-05 04:47:20,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:47:20,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:47:20,950.950 INFO    ] No update needed
[2026-06-05 04:47:20,952.952 INFO    ] Checking for camera pi updates...
[2026-06-05 04:47:20,991.991 INFO    ] 200
[2026-06-05 04:47:20,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:47:21,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:47:21,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:47:21,089.089 INFO    ] No camera update needed
[2026-06-05 04:47:21,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:47:21,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:47:21,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:47:21,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:47:23,145.145 INFO    ] ================================================
[2026-06-05 04:47:23,162.162 INFO    ] Launching Daemon at Fri Jun  5 04:47:23 IST 2026
[2026-06-05 04:47:23,173.173 INFO    ] ================================================
[2026-06-05 04:47:23,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:47:23
[2026-06-05 04:47:24,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:47:24,719.719 INFO    ] Initializing speech engine...
[2026-06-05 04:47:24,727.727 INFO    ] 2026-06-05 04:47:24
[2026-06-05 04:47:24,991.991 INFO    ] 2026-06-05 04:47:24
[2026-06-05 04:47:25,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:47:25,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:47:25,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:47:25,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:47:25,332.332 INFO    ] time= 05/06/2026 04:47:25
[2026-06-05 04:47:25,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:47:25,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:47:25,448.448 INFO    ] No existing commands found in stream
[2026-06-05 04:47:30,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:47:30,462.462 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 04:47:33,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:47:33,378.378 INFO    ] Checking for system updates...
[2026-06-05 04:47:33,417.417 INFO    ] 200
[2026-06-05 04:47:33,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:47:33,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:47:33,476.476 INFO    ] No update needed
[2026-06-05 04:47:33,479.479 INFO    ] Checking for camera pi updates...
[2026-06-05 04:47:33,521.521 INFO    ] 200
[2026-06-05 04:47:33,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:47:33,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:47:33,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:47:33,610.610 INFO    ] No camera update needed
[2026-06-05 04:47:33,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:47:33,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:47:33,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:47:33,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:47:35,667.667 INFO    ] ================================================
[2026-06-05 04:47:35,683.683 INFO    ] Launching Daemon at Fri Jun  5 04:47:35 IST 2026
[2026-06-05 04:47:35,695.695 INFO    ] ================================================
[2026-06-05 04:47:36,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:47:36
[2026-06-05 04:47:36,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:47:37,149.149 INFO    ] Initializing speech engine...
[2026-06-05 04:47:37,157.157 INFO    ] 2026-06-05 04:47:37
[2026-06-05 04:47:37,457.457 INFO    ] 2026-06-05 04:47:37
[2026-06-05 04:47:37,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:47:37,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:47:37,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:47:37,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:47:37,877.877 INFO    ] time= 05/06/2026 04:47:37
[2026-06-05 04:47:37,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:47:37,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:47:37,966.966 INFO    ] No existing commands found in stream
[2026-06-05 04:47:42,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:47:42,982.982 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 04:47:45,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:47:45,611.611 INFO    ] Checking for system updates...
[2026-06-05 04:47:45,648.648 INFO    ] 200
[2026-06-05 04:47:45,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:47:45,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:47:45,714.714 INFO    ] No update needed
[2026-06-05 04:47:45,716.716 INFO    ] Checking for camera pi updates...
[2026-06-05 04:47:45,757.757 INFO    ] 200
[2026-06-05 04:47:45,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:47:45,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:47:45,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:47:45,958.958 INFO    ] No camera update needed
[2026-06-05 04:47:45,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:47:45,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:47:45,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:47:45,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:47:48,015.015 INFO    ] ================================================
[2026-06-05 04:47:48,031.031 INFO    ] Launching Daemon at Fri Jun  5 04:47:48 IST 2026
[2026-06-05 04:47:48,043.043 INFO    ] ================================================
[2026-06-05 04:47:48,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:47:48
[2026-06-05 04:47:49,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:47:49,462.462 INFO    ] Initializing speech engine...
[2026-06-05 04:47:49,481.481 INFO    ] 2026-06-05 04:47:49
[2026-06-05 04:47:49,729.729 INFO    ] 2026-06-05 04:47:49
[2026-06-05 04:47:49,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:47:50,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:47:50,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:47:50,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:47:50,226.226 INFO    ] time= 05/06/2026 04:47:50
[2026-06-05 04:47:50,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:47:50,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:47:50,416.416 INFO    ] No existing commands found in stream
[2026-06-05 04:47:55,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:47:55,440.440 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-05 04:47:59,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:47:59,800.800 INFO    ] Checking for system updates...
[2026-06-05 04:47:59,838.838 INFO    ] 200
[2026-06-05 04:47:59,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:47:59,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:47:59,899.899 INFO    ] No update needed
[2026-06-05 04:47:59,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 04:47:59,942.942 INFO    ] 200
[2026-06-05 04:47:59,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:00,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:48:00,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:48:00,050.050 INFO    ] No camera update needed
[2026-06-05 04:48:00,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:48:00,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:48:00,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:48:00,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:48:02,126.126 INFO    ] ================================================
[2026-06-05 04:48:02,167.167 INFO    ] Launching Daemon at Fri Jun  5 04:48:02 IST 2026
[2026-06-05 04:48:02,205.205 INFO    ] ================================================
[2026-06-05 04:48:03,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:48:03
[2026-06-05 04:48:03,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:48:04,067.067 INFO    ] Initializing speech engine...
[2026-06-05 04:48:04,095.095 INFO    ] 2026-06-05 04:48:04
[2026-06-05 04:48:04,370.370 INFO    ] 2026-06-05 04:48:04
[2026-06-05 04:48:04,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:48:04,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:48:04,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:48:04,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:48:04,884.884 INFO    ] time= 05/06/2026 04:48:04
[2026-06-05 04:48:04,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:48:04,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:48:05,063.063 INFO    ] No existing commands found in stream
[2026-06-05 04:48:10,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:48:10,077.077 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 04:48:13,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:48:13,118.118 INFO    ] Checking for system updates...
[2026-06-05 04:48:13,156.156 INFO    ] 200
[2026-06-05 04:48:13,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:13,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:48:13,215.215 INFO    ] No update needed
[2026-06-05 04:48:13,218.218 INFO    ] Checking for camera pi updates...
[2026-06-05 04:48:13,255.255 INFO    ] 200
[2026-06-05 04:48:13,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:13,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:48:13,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:48:13,345.345 INFO    ] No camera update needed
[2026-06-05 04:48:13,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:48:13,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:48:13,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:48:13,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:48:15,407.407 INFO    ] ================================================
[2026-06-05 04:48:15,423.423 INFO    ] Launching Daemon at Fri Jun  5 04:48:15 IST 2026
[2026-06-05 04:48:15,434.434 INFO    ] ================================================
[2026-06-05 04:48:16,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:48:16
[2026-06-05 04:48:16,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:48:16,863.863 INFO    ] Initializing speech engine...
[2026-06-05 04:48:16,886.886 INFO    ] 2026-06-05 04:48:16
[2026-06-05 04:48:17,142.142 INFO    ] 2026-06-05 04:48:17
[2026-06-05 04:48:17,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:48:17,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:48:17,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:48:17,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:48:17,657.657 INFO    ] time= 05/06/2026 04:48:17
[2026-06-05 04:48:17,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:48:17,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:48:17,805.805 INFO    ] No existing commands found in stream
[2026-06-05 04:48:22,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:48:22,844.844 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 04:48:25,275.275 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:48:25,278.278 INFO    ] Checking for system updates...
[2026-06-05 04:48:25,318.318 INFO    ] 200
[2026-06-05 04:48:25,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:25,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:48:25,376.376 INFO    ] No update needed
[2026-06-05 04:48:25,378.378 INFO    ] Checking for camera pi updates...
[2026-06-05 04:48:25,417.417 INFO    ] 200
[2026-06-05 04:48:25,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:25,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:48:25,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:48:25,507.507 INFO    ] No camera update needed
[2026-06-05 04:48:25,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:48:25,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:48:25,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:48:25,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:48:27,564.564 INFO    ] ================================================
[2026-06-05 04:48:27,581.581 INFO    ] Launching Daemon at Fri Jun  5 04:48:27 IST 2026
[2026-06-05 04:48:27,593.593 INFO    ] ================================================
[2026-06-05 04:48:28,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:48:28
[2026-06-05 04:48:28,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:48:29,028.028 INFO    ] Initializing speech engine...
[2026-06-05 04:48:29,045.045 INFO    ] 2026-06-05 04:48:29
[2026-06-05 04:48:29,308.308 INFO    ] 2026-06-05 04:48:29
[2026-06-05 04:48:29,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:48:29,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:48:29,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:48:29,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:48:29,688.688 INFO    ] time= 05/06/2026 04:48:29
[2026-06-05 04:48:29,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:48:29,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:48:29,787.787 INFO    ] No existing commands found in stream
[2026-06-05 04:48:34,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:48:34,808.808 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 04:48:37,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:48:37,983.983 INFO    ] Checking for system updates...
[2026-06-05 04:48:38,021.021 INFO    ] 200
[2026-06-05 04:48:38,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:38,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:48:38,089.089 INFO    ] No update needed
[2026-06-05 04:48:38,092.092 INFO    ] Checking for camera pi updates...
[2026-06-05 04:48:38,127.127 INFO    ] 200
[2026-06-05 04:48:38,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:38,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:48:38,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:48:38,228.228 INFO    ] No camera update needed
[2026-06-05 04:48:38,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:48:38,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:48:38,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:48:38,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:48:40,289.289 INFO    ] ================================================
[2026-06-05 04:48:40,306.306 INFO    ] Launching Daemon at Fri Jun  5 04:48:40 IST 2026
[2026-06-05 04:48:40,318.318 INFO    ] ================================================
[2026-06-05 04:48:40,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:48:40
[2026-06-05 04:48:41,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:48:41,783.783 INFO    ] Initializing speech engine...
[2026-06-05 04:48:41,795.795 INFO    ] 2026-06-05 04:48:41
[2026-06-05 04:48:42,070.070 INFO    ] 2026-06-05 04:48:42
[2026-06-05 04:48:42,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:48:42,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:48:42,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:48:42,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:48:42,444.444 INFO    ] time= 05/06/2026 04:48:42
[2026-06-05 04:48:42,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:48:42,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:48:42,615.615 INFO    ] No existing commands found in stream
[2026-06-05 04:48:47,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:48:47,648.648 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 04:48:48,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:48:48,597.597 INFO    ] Checking for system updates...
[2026-06-05 04:48:48,633.633 INFO    ] 200
[2026-06-05 04:48:48,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:48,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:48:48,693.693 INFO    ] No update needed
[2026-06-05 04:48:48,696.696 INFO    ] Checking for camera pi updates...
[2026-06-05 04:48:48,730.730 INFO    ] 200
[2026-06-05 04:48:48,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:48,774.774 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:48:48,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:48:48,827.827 INFO    ] No camera update needed
[2026-06-05 04:48:48,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:48:48,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:48:48,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:48:48,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:48:50,886.886 INFO    ] ================================================
[2026-06-05 04:48:50,902.902 INFO    ] Launching Daemon at Fri Jun  5 04:48:50 IST 2026
[2026-06-05 04:48:50,914.914 INFO    ] ================================================
[2026-06-05 04:48:51,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:48:51
[2026-06-05 04:48:52,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:48:52,347.347 INFO    ] Initializing speech engine...
[2026-06-05 04:48:52,355.355 INFO    ] 2026-06-05 04:48:52
[2026-06-05 04:48:52,675.675 INFO    ] 2026-06-05 04:48:52
[2026-06-05 04:48:52,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:48:52,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:48:52,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:48:53,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:48:53,045.045 INFO    ] time= 05/06/2026 04:48:53
[2026-06-05 04:48:53,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:48:53,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:48:53,131.131 INFO    ] No existing commands found in stream
[2026-06-05 04:48:58,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:48:58,144.144 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 04:48:58,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:48:58,642.642 INFO    ] Checking for system updates...
[2026-06-05 04:48:58,683.683 INFO    ] 200
[2026-06-05 04:48:58,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:58,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:48:58,752.752 INFO    ] No update needed
[2026-06-05 04:48:58,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 04:48:58,788.788 INFO    ] 200
[2026-06-05 04:48:58,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:48:58,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:48:58,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:48:58,890.890 INFO    ] No camera update needed
[2026-06-05 04:48:58,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:48:58,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:48:58,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:48:58,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:49:00,946.946 INFO    ] ================================================
[2026-06-05 04:49:00,962.962 INFO    ] Launching Daemon at Fri Jun  5 04:49:00 IST 2026
[2026-06-05 04:49:00,973.973 INFO    ] ================================================
[2026-06-05 04:49:01,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:49:01
[2026-06-05 04:49:02,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:49:02,646.646 INFO    ] Initializing speech engine...
[2026-06-05 04:49:02,653.653 INFO    ] 2026-06-05 04:49:02
[2026-06-05 04:49:02,946.946 INFO    ] 2026-06-05 04:49:02
[2026-06-05 04:49:02,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:49:03,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:49:03,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:49:03,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:49:03,365.365 INFO    ] time= 05/06/2026 04:49:03
[2026-06-05 04:49:03,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:49:03,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:49:03,449.449 INFO    ] No existing commands found in stream
[2026-06-05 04:49:08,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:49:08,471.471 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 04:49:11,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:49:11,530.530 INFO    ] Checking for system updates...
[2026-06-05 04:49:11,568.568 INFO    ] 200
[2026-06-05 04:49:11,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:49:11,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:49:11,627.627 INFO    ] No update needed
[2026-06-05 04:49:11,630.630 INFO    ] Checking for camera pi updates...
[2026-06-05 04:49:11,668.668 INFO    ] 200
[2026-06-05 04:49:11,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:49:11,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:49:11,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:49:11,762.762 INFO    ] No camera update needed
[2026-06-05 04:49:11,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:49:11,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:49:11,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:49:11,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:49:13,822.822 INFO    ] ================================================
[2026-06-05 04:49:13,838.838 INFO    ] Launching Daemon at Fri Jun  5 04:49:13 IST 2026
[2026-06-05 04:49:13,849.849 INFO    ] ================================================
[2026-06-05 04:49:14,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:49:14
[2026-06-05 04:49:15,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:49:15,317.317 INFO    ] Initializing speech engine...
[2026-06-05 04:49:15,333.333 INFO    ] 2026-06-05 04:49:15
[2026-06-05 04:49:15,591.591 INFO    ] 2026-06-05 04:49:15
[2026-06-05 04:49:15,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:49:15,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:49:15,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:49:15,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:49:15,965.965 INFO    ] time= 05/06/2026 04:49:15
[2026-06-05 04:49:15,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:49:16,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:49:16,146.146 INFO    ] No existing commands found in stream
[2026-06-05 04:49:21,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:49:21,179.179 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 04:49:24,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:49:24,839.839 INFO    ] Checking for system updates...
[2026-06-05 04:49:24,876.876 INFO    ] 200
[2026-06-05 04:49:24,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:49:24,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:49:24,933.933 INFO    ] No update needed
[2026-06-05 04:49:24,935.935 INFO    ] Checking for camera pi updates...
[2026-06-05 04:49:24,970.970 INFO    ] 200
[2026-06-05 04:49:24,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:49:25,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:49:25,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:49:25,064.064 INFO    ] No camera update needed
[2026-06-05 04:49:25,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:49:25,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:49:25,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:49:25,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:49:27,127.127 INFO    ] ================================================
[2026-06-05 04:49:27,142.142 INFO    ] Launching Daemon at Fri Jun  5 04:49:27 IST 2026
[2026-06-05 04:49:27,153.153 INFO    ] ================================================
[2026-06-05 04:49:27,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:49:27
[2026-06-05 04:49:28,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:49:28,565.565 INFO    ] Initializing speech engine...
[2026-06-05 04:49:28,574.574 INFO    ] 2026-06-05 04:49:28
[2026-06-05 04:49:28,867.867 INFO    ] 2026-06-05 04:49:28
[2026-06-05 04:49:28,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:49:29,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:49:29,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:49:29,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:49:29,247.247 INFO    ] time= 05/06/2026 04:49:29
[2026-06-05 04:49:29,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:49:29,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:49:29,371.371 INFO    ] No existing commands found in stream
[2026-06-05 04:49:34,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:49:34,386.386 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 04:49:36,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:49:36,874.874 INFO    ] Checking for system updates...
[2026-06-05 04:49:36,914.914 INFO    ] 200
[2026-06-05 04:49:36,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:49:36,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:49:36,972.972 INFO    ] No update needed
[2026-06-05 04:49:36,974.974 INFO    ] Checking for camera pi updates...
[2026-06-05 04:49:37,011.011 INFO    ] 200
[2026-06-05 04:49:37,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:49:37,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:49:37,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:49:37,105.105 INFO    ] No camera update needed
[2026-06-05 04:49:37,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:49:37,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:49:37,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:49:37,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:49:39,160.160 INFO    ] ================================================
[2026-06-05 04:49:39,176.176 INFO    ] Launching Daemon at Fri Jun  5 04:49:39 IST 2026
[2026-06-05 04:49:39,187.187 INFO    ] ================================================
[2026-06-05 04:49:39,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:49:39
[2026-06-05 04:49:40,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:49:40,749.749 INFO    ] Initializing speech engine...
[2026-06-05 04:49:40,757.757 INFO    ] 2026-06-05 04:49:40
[2026-06-05 04:49:41,021.021 INFO    ] 2026-06-05 04:49:41
[2026-06-05 04:49:41,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:49:41,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:49:41,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:49:41,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:49:41,397.397 INFO    ] time= 05/06/2026 04:49:41
[2026-06-05 04:49:41,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:49:41,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:49:41,566.566 INFO    ] No existing commands found in stream
[2026-06-05 04:49:46,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:49:46,594.594 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 04:49:48,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:49:48,468.468 INFO    ] Checking for system updates...
[2026-06-05 04:49:48,503.503 INFO    ] 200
[2026-06-05 04:49:48,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:49:48,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:49:48,562.562 INFO    ] No update needed
[2026-06-05 04:49:48,565.565 INFO    ] Checking for camera pi updates...
[2026-06-05 04:49:48,598.598 INFO    ] 200
[2026-06-05 04:49:48,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:49:48,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:49:48,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:49:48,797.797 INFO    ] No camera update needed
[2026-06-05 04:49:48,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:49:48,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:49:48,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:49:48,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:49:50,852.852 INFO    ] ================================================
[2026-06-05 04:49:50,868.868 INFO    ] Launching Daemon at Fri Jun  5 04:49:50 IST 2026
[2026-06-05 04:49:50,878.878 INFO    ] ================================================
[2026-06-05 04:49:51,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:49:51
[2026-06-05 04:49:52,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:49:52,313.313 INFO    ] Initializing speech engine...
[2026-06-05 04:49:52,319.319 INFO    ] 2026-06-05 04:49:52
[2026-06-05 04:49:52,620.620 INFO    ] 2026-06-05 04:49:52
[2026-06-05 04:49:52,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:49:52,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:49:52,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:49:53,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:49:53,044.044 INFO    ] time= 05/06/2026 04:49:53
[2026-06-05 04:49:53,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:49:53,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:49:53,136.136 INFO    ] No existing commands found in stream
[2026-06-05 04:49:58,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:49:58,152.152 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 04:50:00,386.386 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:50:00,389.389 INFO    ] Checking for system updates...
[2026-06-05 04:50:00,425.425 INFO    ] 200
[2026-06-05 04:50:00,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:00,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:50:00,496.496 INFO    ] No update needed
[2026-06-05 04:50:00,498.498 INFO    ] Checking for camera pi updates...
[2026-06-05 04:50:00,540.540 INFO    ] 200
[2026-06-05 04:50:00,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:00,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:50:00,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:50:00,647.647 INFO    ] No camera update needed
[2026-06-05 04:50:00,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:50:00,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:50:00,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:50:00,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:50:02,743.743 INFO    ] ================================================
[2026-06-05 04:50:02,767.767 INFO    ] Launching Daemon at Fri Jun  5 04:50:02 IST 2026
[2026-06-05 04:50:02,779.779 INFO    ] ================================================
[2026-06-05 04:50:03,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:50:03
[2026-06-05 04:50:03,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:50:04,254.254 INFO    ] Initializing speech engine...
[2026-06-05 04:50:04,264.264 INFO    ] 2026-06-05 04:50:04
[2026-06-05 04:50:04,515.515 INFO    ] 2026-06-05 04:50:04
[2026-06-05 04:50:04,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:50:04,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:50:04,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:50:04,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:50:04,893.893 INFO    ] time= 05/06/2026 04:50:04
[2026-06-05 04:50:04,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:50:04,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:50:05,032.032 INFO    ] No existing commands found in stream
[2026-06-05 04:50:10,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:50:10,060.060 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 04:50:11,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:50:11,944.944 INFO    ] Checking for system updates...
[2026-06-05 04:50:11,987.987 INFO    ] 200
[2026-06-05 04:50:11,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:12,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:50:12,058.058 INFO    ] No update needed
[2026-06-05 04:50:12,061.061 INFO    ] Checking for camera pi updates...
[2026-06-05 04:50:12,098.098 INFO    ] 200
[2026-06-05 04:50:12,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:12,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:50:12,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:50:12,191.191 INFO    ] No camera update needed
[2026-06-05 04:50:12,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:50:12,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:50:12,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:50:12,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:50:14,250.250 INFO    ] ================================================
[2026-06-05 04:50:14,266.266 INFO    ] Launching Daemon at Fri Jun  5 04:50:14 IST 2026
[2026-06-05 04:50:14,278.278 INFO    ] ================================================
[2026-06-05 04:50:14,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:50:14
[2026-06-05 04:50:15,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:50:15,740.740 INFO    ] Initializing speech engine...
[2026-06-05 04:50:15,747.747 INFO    ] 2026-06-05 04:50:15
[2026-06-05 04:50:15,993.993 INFO    ] 2026-06-05 04:50:15
[2026-06-05 04:50:16,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:50:16,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:50:16,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:50:16,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:50:16,341.341 INFO    ] time= 05/06/2026 04:50:16
[2026-06-05 04:50:16,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:50:16,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:50:16,450.450 INFO    ] No existing commands found in stream
[2026-06-05 04:50:21,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:50:21,466.466 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 04:50:22,801.801 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:50:22,804.804 INFO    ] Checking for system updates...
[2026-06-05 04:50:22,840.840 INFO    ] 200
[2026-06-05 04:50:22,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:22,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:50:22,899.899 INFO    ] No update needed
[2026-06-05 04:50:22,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 04:50:22,940.940 INFO    ] 200
[2026-06-05 04:50:22,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:22,983.983 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:50:23,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:50:23,023.023 INFO    ] No camera update needed
[2026-06-05 04:50:23,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:50:23,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:50:23,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:50:23,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:50:25,081.081 INFO    ] ================================================
[2026-06-05 04:50:25,097.097 INFO    ] Launching Daemon at Fri Jun  5 04:50:25 IST 2026
[2026-06-05 04:50:25,108.108 INFO    ] ================================================
[2026-06-05 04:50:25,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:50:25
[2026-06-05 04:50:26,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:50:26,540.540 INFO    ] Initializing speech engine...
[2026-06-05 04:50:26,553.553 INFO    ] 2026-06-05 04:50:26
[2026-06-05 04:50:26,801.801 INFO    ] 2026-06-05 04:50:26
[2026-06-05 04:50:26,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:50:27,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:50:27,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:50:27,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:50:27,143.143 INFO    ] time= 05/06/2026 04:50:27
[2026-06-05 04:50:27,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:50:27,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:50:27,256.256 INFO    ] No existing commands found in stream
[2026-06-05 04:50:32,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:50:32,272.272 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 04:50:34,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:50:34,579.579 INFO    ] Checking for system updates...
[2026-06-05 04:50:34,617.617 INFO    ] 200
[2026-06-05 04:50:34,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:34,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:50:34,683.683 INFO    ] No update needed
[2026-06-05 04:50:34,686.686 INFO    ] Checking for camera pi updates...
[2026-06-05 04:50:34,721.721 INFO    ] 200
[2026-06-05 04:50:34,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:34,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:50:34,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:50:34,811.811 INFO    ] No camera update needed
[2026-06-05 04:50:34,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:50:34,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:50:34,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:50:34,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:50:36,886.886 INFO    ] ================================================
[2026-06-05 04:50:36,902.902 INFO    ] Launching Daemon at Fri Jun  5 04:50:36 IST 2026
[2026-06-05 04:50:36,913.913 INFO    ] ================================================
[2026-06-05 04:50:37,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:50:37
[2026-06-05 04:50:38,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:50:38,464.464 INFO    ] Initializing speech engine...
[2026-06-05 04:50:38,473.473 INFO    ] 2026-06-05 04:50:38
[2026-06-05 04:50:38,749.749 INFO    ] 2026-06-05 04:50:38
[2026-06-05 04:50:38,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:50:39,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:50:39,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:50:39,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:50:39,312.312 INFO    ] time= 05/06/2026 04:50:39
[2026-06-05 04:50:39,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:50:39,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:50:39,452.452 INFO    ] No existing commands found in stream
[2026-06-05 04:50:44,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:50:44,487.487 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 04:50:45,061.061 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:50:45,064.064 INFO    ] Checking for system updates...
[2026-06-05 04:50:45,105.105 INFO    ] 200
[2026-06-05 04:50:45,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:45,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:50:45,164.164 INFO    ] No update needed
[2026-06-05 04:50:45,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 04:50:45,202.202 INFO    ] 200
[2026-06-05 04:50:45,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:45,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:50:45,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:50:45,298.298 INFO    ] No camera update needed
[2026-06-05 04:50:45,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:50:45,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:50:45,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:50:45,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:50:47,357.357 INFO    ] ================================================
[2026-06-05 04:50:47,374.374 INFO    ] Launching Daemon at Fri Jun  5 04:50:47 IST 2026
[2026-06-05 04:50:47,385.385 INFO    ] ================================================
[2026-06-05 04:50:48,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:50:48
[2026-06-05 04:50:48,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:50:48,995.995 INFO    ] Initializing speech engine...
[2026-06-05 04:50:49,004.004 INFO    ] 2026-06-05 04:50:48
[2026-06-05 04:50:49,282.282 INFO    ] 2026-06-05 04:50:49
[2026-06-05 04:50:49,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:50:49,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:50:49,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:50:49,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:50:49,761.761 INFO    ] time= 05/06/2026 04:50:49
[2026-06-05 04:50:49,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:50:49,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:50:49,944.944 INFO    ] No existing commands found in stream
[2026-06-05 04:50:54,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:50:54,981.981 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 04:50:57,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:50:57,931.931 INFO    ] Checking for system updates...
[2026-06-05 04:50:57,970.970 INFO    ] 200
[2026-06-05 04:50:57,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:58,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:50:58,029.029 INFO    ] No update needed
[2026-06-05 04:50:58,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 04:50:58,066.066 INFO    ] 200
[2026-06-05 04:50:58,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:50:58,110.110 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:50:58,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:50:58,158.158 INFO    ] No camera update needed
[2026-06-05 04:50:58,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:50:58,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:50:58,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:50:58,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:51:00,212.212 INFO    ] ================================================
[2026-06-05 04:51:00,229.229 INFO    ] Launching Daemon at Fri Jun  5 04:51:00 IST 2026
[2026-06-05 04:51:00,240.240 INFO    ] ================================================
[2026-06-05 04:51:00,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:51:00
[2026-06-05 04:51:01,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:51:01,987.987 INFO    ] Initializing speech engine...
[2026-06-05 04:51:02,000.000 INFO    ] 2026-06-05 04:51:01
[2026-06-05 04:51:02,404.404 INFO    ] 2026-06-05 04:51:02
[2026-06-05 04:51:02,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:51:02,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:51:02,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:51:02,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:51:02,902.902 INFO    ] time= 05/06/2026 04:51:02
[2026-06-05 04:51:02,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:51:02,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:51:03,032.032 INFO    ] No existing commands found in stream
[2026-06-05 04:51:08,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:51:08,056.056 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 04:51:09,292.292 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:51:09,295.295 INFO    ] Checking for system updates...
[2026-06-05 04:51:09,331.331 INFO    ] 200
[2026-06-05 04:51:09,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:09,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:51:09,392.392 INFO    ] No update needed
[2026-06-05 04:51:09,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 04:51:09,434.434 INFO    ] 200
[2026-06-05 04:51:09,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:09,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:51:09,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:51:09,527.527 INFO    ] No camera update needed
[2026-06-05 04:51:09,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:51:09,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:51:09,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:51:09,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:51:11,587.587 INFO    ] ================================================
[2026-06-05 04:51:11,602.602 INFO    ] Launching Daemon at Fri Jun  5 04:51:11 IST 2026
[2026-06-05 04:51:11,613.613 INFO    ] ================================================
[2026-06-05 04:51:12,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:51:12
[2026-06-05 04:51:12,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:51:13,289.289 INFO    ] Initializing speech engine...
[2026-06-05 04:51:13,295.295 INFO    ] 2026-06-05 04:51:13
[2026-06-05 04:51:13,576.576 INFO    ] 2026-06-05 04:51:13
[2026-06-05 04:51:13,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:51:13,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:51:13,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:51:14,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:51:14,065.065 INFO    ] time= 05/06/2026 04:51:14
[2026-06-05 04:51:14,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:51:14,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:51:14,190.190 INFO    ] No existing commands found in stream
[2026-06-05 04:51:19,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:51:19,207.207 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 04:51:21,709.709 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:51:21,712.712 INFO    ] Checking for system updates...
[2026-06-05 04:51:21,749.749 INFO    ] 200
[2026-06-05 04:51:21,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:21,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:51:21,809.809 INFO    ] No update needed
[2026-06-05 04:51:21,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 04:51:21,848.848 INFO    ] 200
[2026-06-05 04:51:21,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:21,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:51:21,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:51:21,937.937 INFO    ] No camera update needed
[2026-06-05 04:51:21,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:51:21,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:51:21,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:51:21,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:51:23,993.993 INFO    ] ================================================
[2026-06-05 04:51:24,008.008 INFO    ] Launching Daemon at Fri Jun  5 04:51:24 IST 2026
[2026-06-05 04:51:24,019.019 INFO    ] ================================================
[2026-06-05 04:51:24,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:51:24
[2026-06-05 04:51:25,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:51:25,418.418 INFO    ] Initializing speech engine...
[2026-06-05 04:51:25,441.441 INFO    ] 2026-06-05 04:51:25
[2026-06-05 04:51:25,693.693 INFO    ] 2026-06-05 04:51:25
[2026-06-05 04:51:25,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:51:25,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:51:25,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:51:26,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:51:26,157.157 INFO    ] time= 05/06/2026 04:51:26
[2026-06-05 04:51:26,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:51:26,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:51:26,331.331 INFO    ] No existing commands found in stream
[2026-06-05 04:51:31,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:51:31,347.347 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 04:51:35,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:51:35,725.725 INFO    ] Checking for system updates...
[2026-06-05 04:51:35,765.765 INFO    ] 200
[2026-06-05 04:51:35,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:35,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:51:35,823.823 INFO    ] No update needed
[2026-06-05 04:51:35,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 04:51:35,860.860 INFO    ] 200
[2026-06-05 04:51:35,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:35,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:51:35,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:51:35,950.950 INFO    ] No camera update needed
[2026-06-05 04:51:35,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:51:35,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:51:35,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:51:35,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:51:38,005.005 INFO    ] ================================================
[2026-06-05 04:51:38,020.020 INFO    ] Launching Daemon at Fri Jun  5 04:51:38 IST 2026
[2026-06-05 04:51:38,031.031 INFO    ] ================================================
[2026-06-05 04:51:38,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:51:38
[2026-06-05 04:51:39,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:51:39,455.455 INFO    ] Initializing speech engine...
[2026-06-05 04:51:39,473.473 INFO    ] 2026-06-05 04:51:39
[2026-06-05 04:51:39,726.726 INFO    ] 2026-06-05 04:51:39
[2026-06-05 04:51:39,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:51:40,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:51:40,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:51:40,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:51:40,195.195 INFO    ] time= 05/06/2026 04:51:40
[2026-06-05 04:51:40,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:51:40,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:51:40,359.359 INFO    ] No existing commands found in stream
[2026-06-05 04:51:45,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:51:45,374.374 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 04:51:47,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:51:47,093.093 INFO    ] Checking for system updates...
[2026-06-05 04:51:47,133.133 INFO    ] 200
[2026-06-05 04:51:47,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:47,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:51:47,191.191 INFO    ] No update needed
[2026-06-05 04:51:47,193.193 INFO    ] Checking for camera pi updates...
[2026-06-05 04:51:47,231.231 INFO    ] 200
[2026-06-05 04:51:47,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:47,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:51:47,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:51:47,319.319 INFO    ] No camera update needed
[2026-06-05 04:51:47,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:51:47,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:51:47,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:51:47,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:51:49,373.373 INFO    ] ================================================
[2026-06-05 04:51:49,388.388 INFO    ] Launching Daemon at Fri Jun  5 04:51:49 IST 2026
[2026-06-05 04:51:49,399.399 INFO    ] ================================================
[2026-06-05 04:51:49,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:51:49
[2026-06-05 04:51:50,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:51:50,827.827 INFO    ] Initializing speech engine...
[2026-06-05 04:51:50,837.837 INFO    ] 2026-06-05 04:51:50
[2026-06-05 04:51:51,085.085 INFO    ] 2026-06-05 04:51:51
[2026-06-05 04:51:51,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:51:51,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:51:51,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:51:51,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:51:51,547.547 INFO    ] time= 05/06/2026 04:51:51
[2026-06-05 04:51:51,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:51:51,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:51:51,721.721 INFO    ] No existing commands found in stream
[2026-06-05 04:51:56,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:51:56,736.736 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 04:51:59,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:51:59,538.538 INFO    ] Checking for system updates...
[2026-06-05 04:51:59,575.575 INFO    ] 200
[2026-06-05 04:51:59,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:59,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:51:59,632.632 INFO    ] No update needed
[2026-06-05 04:51:59,635.635 INFO    ] Checking for camera pi updates...
[2026-06-05 04:51:59,669.669 INFO    ] 200
[2026-06-05 04:51:59,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:51:59,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:51:59,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:51:59,855.855 INFO    ] No camera update needed
[2026-06-05 04:51:59,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:51:59,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:51:59,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:51:59,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:52:01,915.915 INFO    ] ================================================
[2026-06-05 04:52:01,933.933 INFO    ] Launching Daemon at Fri Jun  5 04:52:01 IST 2026
[2026-06-05 04:52:01,947.947 INFO    ] ================================================
[2026-06-05 04:52:02,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:52:02
[2026-06-05 04:52:03,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:52:03,580.580 INFO    ] Initializing speech engine...
[2026-06-05 04:52:03,591.591 INFO    ] 2026-06-05 04:52:03
[2026-06-05 04:52:03,901.901 INFO    ] 2026-06-05 04:52:03
[2026-06-05 04:52:03,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:52:04,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:52:04,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:52:04,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:52:04,307.307 INFO    ] time= 05/06/2026 04:52:04
[2026-06-05 04:52:04,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:52:04,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:52:04,417.417 INFO    ] No existing commands found in stream
[2026-06-05 04:52:09,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:52:09,432.432 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 04:52:11,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:52:11,140.140 INFO    ] Checking for system updates...
[2026-06-05 04:52:11,181.181 INFO    ] 200
[2026-06-05 04:52:11,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:11,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:52:11,247.247 INFO    ] No update needed
[2026-06-05 04:52:11,249.249 INFO    ] Checking for camera pi updates...
[2026-06-05 04:52:11,283.283 INFO    ] 200
[2026-06-05 04:52:11,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:11,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:52:11,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:52:11,371.371 INFO    ] No camera update needed
[2026-06-05 04:52:11,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:52:11,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:52:11,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:52:11,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:52:13,426.426 INFO    ] ================================================
[2026-06-05 04:52:13,442.442 INFO    ] Launching Daemon at Fri Jun  5 04:52:13 IST 2026
[2026-06-05 04:52:13,453.453 INFO    ] ================================================
[2026-06-05 04:52:14,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:52:14
[2026-06-05 04:52:14,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:52:15,072.072 INFO    ] Initializing speech engine...
[2026-06-05 04:52:15,079.079 INFO    ] 2026-06-05 04:52:15
[2026-06-05 04:52:15,352.352 INFO    ] 2026-06-05 04:52:15
[2026-06-05 04:52:15,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:52:15,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:52:15,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:52:15,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:52:15,912.912 INFO    ] time= 05/06/2026 04:52:15
[2026-06-05 04:52:15,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:52:15,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:52:16,070.070 INFO    ] No existing commands found in stream
[2026-06-05 04:52:21,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:52:21,089.089 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 04:52:22,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:52:22,243.243 INFO    ] Checking for system updates...
[2026-06-05 04:52:22,281.281 INFO    ] 200
[2026-06-05 04:52:22,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:22,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:52:22,341.341 INFO    ] No update needed
[2026-06-05 04:52:22,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 04:52:22,382.382 INFO    ] 200
[2026-06-05 04:52:22,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:22,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:52:22,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:52:22,465.465 INFO    ] No camera update needed
[2026-06-05 04:52:22,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:52:22,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:52:22,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:52:22,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:52:24,521.521 INFO    ] ================================================
[2026-06-05 04:52:24,536.536 INFO    ] Launching Daemon at Fri Jun  5 04:52:24 IST 2026
[2026-06-05 04:52:24,547.547 INFO    ] ================================================
[2026-06-05 04:52:25,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:52:25
[2026-06-05 04:52:25,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:52:25,962.962 INFO    ] Initializing speech engine...
[2026-06-05 04:52:25,968.968 INFO    ] 2026-06-05 04:52:25
[2026-06-05 04:52:26,243.243 INFO    ] 2026-06-05 04:52:26
[2026-06-05 04:52:26,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:52:26,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:52:26,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:52:26,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:52:26,621.621 INFO    ] time= 05/06/2026 04:52:26
[2026-06-05 04:52:26,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:52:26,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:52:26,771.771 INFO    ] No existing commands found in stream
[2026-06-05 04:52:31,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:52:31,800.800 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 04:52:33,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:52:33,172.172 INFO    ] Checking for system updates...
[2026-06-05 04:52:33,208.208 INFO    ] 200
[2026-06-05 04:52:33,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:33,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:52:33,267.267 INFO    ] No update needed
[2026-06-05 04:52:33,270.270 INFO    ] Checking for camera pi updates...
[2026-06-05 04:52:33,307.307 INFO    ] 200
[2026-06-05 04:52:33,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:33,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:52:33,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:52:33,383.383 INFO    ] No camera update needed
[2026-06-05 04:52:33,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:52:33,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:52:33,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:52:33,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:52:35,444.444 INFO    ] ================================================
[2026-06-05 04:52:35,460.460 INFO    ] Launching Daemon at Fri Jun  5 04:52:35 IST 2026
[2026-06-05 04:52:35,471.471 INFO    ] ================================================
[2026-06-05 04:52:36,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:52:36
[2026-06-05 04:52:36,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:52:36,954.954 INFO    ] Initializing speech engine...
[2026-06-05 04:52:36,962.962 INFO    ] 2026-06-05 04:52:36
[2026-06-05 04:52:37,262.262 INFO    ] 2026-06-05 04:52:37
[2026-06-05 04:52:37,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:52:37,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:52:37,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:52:37,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:52:37,689.689 INFO    ] time= 05/06/2026 04:52:37
[2026-06-05 04:52:37,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:52:37,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:52:37,780.780 INFO    ] No existing commands found in stream
[2026-06-05 04:52:42,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:52:42,796.796 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 04:52:44,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:52:44,323.323 INFO    ] Checking for system updates...
[2026-06-05 04:52:44,359.359 INFO    ] 200
[2026-06-05 04:52:44,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:44,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:52:44,427.427 INFO    ] No update needed
[2026-06-05 04:52:44,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 04:52:44,462.462 INFO    ] 200
[2026-06-05 04:52:44,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:44,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:52:44,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:52:44,554.554 INFO    ] No camera update needed
[2026-06-05 04:52:44,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:52:44,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:52:44,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:52:44,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:52:46,612.612 INFO    ] ================================================
[2026-06-05 04:52:46,628.628 INFO    ] Launching Daemon at Fri Jun  5 04:52:46 IST 2026
[2026-06-05 04:52:46,640.640 INFO    ] ================================================
[2026-06-05 04:52:47,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:52:47
[2026-06-05 04:52:47,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:52:48,064.064 INFO    ] Initializing speech engine...
[2026-06-05 04:52:48,072.072 INFO    ] 2026-06-05 04:52:48
[2026-06-05 04:52:48,362.362 INFO    ] 2026-06-05 04:52:48
[2026-06-05 04:52:48,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:52:48,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:52:48,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:52:48,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:52:48,781.781 INFO    ] time= 05/06/2026 04:52:48
[2026-06-05 04:52:48,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:52:48,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:52:48,893.893 INFO    ] No existing commands found in stream
[2026-06-05 04:52:53,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:52:53,909.909 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 04:52:55,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:52:55,075.075 INFO    ] Checking for system updates...
[2026-06-05 04:52:55,111.111 INFO    ] 200
[2026-06-05 04:52:55,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:55,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:52:55,178.178 INFO    ] No update needed
[2026-06-05 04:52:55,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 04:52:55,218.218 INFO    ] 200
[2026-06-05 04:52:55,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:52:55,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:52:55,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:52:55,315.315 INFO    ] No camera update needed
[2026-06-05 04:52:55,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:52:55,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:52:55,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:52:55,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:52:57,373.373 INFO    ] ================================================
[2026-06-05 04:52:57,390.390 INFO    ] Launching Daemon at Fri Jun  5 04:52:57 IST 2026
[2026-06-05 04:52:57,401.401 INFO    ] ================================================
[2026-06-05 04:52:57,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:52:57
[2026-06-05 04:52:58,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:52:58,819.819 INFO    ] Initializing speech engine...
[2026-06-05 04:52:58,828.828 INFO    ] 2026-06-05 04:52:58
[2026-06-05 04:52:59,131.131 INFO    ] 2026-06-05 04:52:59
[2026-06-05 04:52:59,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:52:59,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:52:59,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:52:59,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:52:59,562.562 INFO    ] time= 05/06/2026 04:52:59
[2026-06-05 04:52:59,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:52:59,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:52:59,654.654 INFO    ] No existing commands found in stream
[2026-06-05 04:53:04,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:53:04,669.669 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 04:53:08,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:53:08,031.031 INFO    ] Checking for system updates...
[2026-06-05 04:53:08,071.071 INFO    ] 200
[2026-06-05 04:53:08,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:08,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:53:08,139.139 INFO    ] No update needed
[2026-06-05 04:53:08,141.141 INFO    ] Checking for camera pi updates...
[2026-06-05 04:53:08,176.176 INFO    ] 200
[2026-06-05 04:53:08,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:08,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:53:08,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:53:08,272.272 INFO    ] No camera update needed
[2026-06-05 04:53:08,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:53:08,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:53:08,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:53:08,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:53:10,331.331 INFO    ] ================================================
[2026-06-05 04:53:10,347.347 INFO    ] Launching Daemon at Fri Jun  5 04:53:10 IST 2026
[2026-06-05 04:53:10,359.359 INFO    ] ================================================
[2026-06-05 04:53:10,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:53:10
[2026-06-05 04:53:11,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:53:11,819.819 INFO    ] Initializing speech engine...
[2026-06-05 04:53:11,828.828 INFO    ] 2026-06-05 04:53:11
[2026-06-05 04:53:12,090.090 INFO    ] 2026-06-05 04:53:12
[2026-06-05 04:53:12,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:53:12,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:53:12,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:53:12,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:53:12,519.519 INFO    ] time= 05/06/2026 04:53:12
[2026-06-05 04:53:12,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:53:12,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:53:12,705.705 INFO    ] No existing commands found in stream
[2026-06-05 04:53:17,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:53:17,720.720 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 04:53:18,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:53:18,152.152 INFO    ] Checking for system updates...
[2026-06-05 04:53:18,192.192 INFO    ] 200
[2026-06-05 04:53:18,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:18,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:53:18,251.251 INFO    ] No update needed
[2026-06-05 04:53:18,253.253 INFO    ] Checking for camera pi updates...
[2026-06-05 04:53:18,291.291 INFO    ] 200
[2026-06-05 04:53:18,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:18,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:53:18,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:53:18,379.379 INFO    ] No camera update needed
[2026-06-05 04:53:18,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:53:18,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:53:18,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:53:18,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:53:20,435.435 INFO    ] ================================================
[2026-06-05 04:53:20,451.451 INFO    ] Launching Daemon at Fri Jun  5 04:53:20 IST 2026
[2026-06-05 04:53:20,462.462 INFO    ] ================================================
[2026-06-05 04:53:21,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:53:21
[2026-06-05 04:53:21,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:53:21,920.920 INFO    ] Initializing speech engine...
[2026-06-05 04:53:21,930.930 INFO    ] 2026-06-05 04:53:21
[2026-06-05 04:53:22,235.235 INFO    ] 2026-06-05 04:53:22
[2026-06-05 04:53:22,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:53:22,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:53:22,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:53:22,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:53:22,647.647 INFO    ] time= 05/06/2026 04:53:22
[2026-06-05 04:53:22,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:53:22,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:53:22,759.759 INFO    ] No existing commands found in stream
[2026-06-05 04:53:27,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:53:27,775.775 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 04:53:31,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:53:31,875.875 INFO    ] Checking for system updates...
[2026-06-05 04:53:31,923.923 INFO    ] 200
[2026-06-05 04:53:31,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:32,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:53:32,004.004 INFO    ] No update needed
[2026-06-05 04:53:32,007.007 INFO    ] Checking for camera pi updates...
[2026-06-05 04:53:32,050.050 INFO    ] 200
[2026-06-05 04:53:32,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:32,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:53:32,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:53:32,136.136 INFO    ] No camera update needed
[2026-06-05 04:53:32,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:53:32,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:53:32,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:53:32,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:53:34,202.202 INFO    ] ================================================
[2026-06-05 04:53:34,218.218 INFO    ] Launching Daemon at Fri Jun  5 04:53:34 IST 2026
[2026-06-05 04:53:34,230.230 INFO    ] ================================================
[2026-06-05 04:53:34,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:53:34
[2026-06-05 04:53:35,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:53:35,775.775 INFO    ] Initializing speech engine...
[2026-06-05 04:53:35,780.780 INFO    ] 2026-06-05 04:53:35
[2026-06-05 04:53:36,028.028 INFO    ] 2026-06-05 04:53:36
[2026-06-05 04:53:36,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:53:36,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:53:36,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:53:36,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:53:36,525.525 INFO    ] time= 05/06/2026 04:53:36
[2026-06-05 04:53:36,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:53:36,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:53:36,665.665 INFO    ] No existing commands found in stream
[2026-06-05 04:53:41,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:53:41,680.680 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 04:53:44,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:53:44,498.498 INFO    ] Checking for system updates...
[2026-06-05 04:53:44,540.540 INFO    ] 200
[2026-06-05 04:53:44,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:44,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:53:44,599.599 INFO    ] No update needed
[2026-06-05 04:53:44,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 04:53:44,636.636 INFO    ] 200
[2026-06-05 04:53:44,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:44,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:53:44,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:53:44,729.729 INFO    ] No camera update needed
[2026-06-05 04:53:44,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:53:44,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:53:44,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:53:44,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:53:46,791.791 INFO    ] ================================================
[2026-06-05 04:53:46,808.808 INFO    ] Launching Daemon at Fri Jun  5 04:53:46 IST 2026
[2026-06-05 04:53:46,820.820 INFO    ] ================================================
[2026-06-05 04:53:47,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:53:47
[2026-06-05 04:53:48,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:53:48,328.328 INFO    ] Initializing speech engine...
[2026-06-05 04:53:48,337.337 INFO    ] 2026-06-05 04:53:48
[2026-06-05 04:53:48,620.620 INFO    ] 2026-06-05 04:53:48
[2026-06-05 04:53:48,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:53:48,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:53:48,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:53:48,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:53:49,003.003 INFO    ] time= 05/06/2026 04:53:48
[2026-06-05 04:53:49,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:53:49,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:53:49,090.090 INFO    ] No existing commands found in stream
[2026-06-05 04:53:54,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:53:54,138.138 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 04:53:56,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:53:56,942.942 INFO    ] Checking for system updates...
[2026-06-05 04:53:56,978.978 INFO    ] 200
[2026-06-05 04:53:56,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:57,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:53:57,039.039 INFO    ] No update needed
[2026-06-05 04:53:57,041.041 INFO    ] Checking for camera pi updates...
[2026-06-05 04:53:57,076.076 INFO    ] 200
[2026-06-05 04:53:57,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:53:57,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:53:57,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:53:57,163.163 INFO    ] No camera update needed
[2026-06-05 04:53:57,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:53:57,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:53:57,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:53:57,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:53:59,221.221 INFO    ] ================================================
[2026-06-05 04:53:59,236.236 INFO    ] Launching Daemon at Fri Jun  5 04:53:59 IST 2026
[2026-06-05 04:53:59,248.248 INFO    ] ================================================
[2026-06-05 04:53:59,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:53:59
[2026-06-05 04:54:00,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:54:00,724.724 INFO    ] Initializing speech engine...
[2026-06-05 04:54:00,733.733 INFO    ] 2026-06-05 04:54:00
[2026-06-05 04:54:00,992.992 INFO    ] 2026-06-05 04:54:00
[2026-06-05 04:54:01,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:54:01,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:54:01,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:54:01,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:54:01,402.402 INFO    ] time= 05/06/2026 04:54:01
[2026-06-05 04:54:01,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:54:01,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:54:01,461.461 INFO    ] No existing commands found in stream
[2026-06-05 04:54:06,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:54:06,478.478 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 04:54:10,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:54:10,247.247 INFO    ] Checking for system updates...
[2026-06-05 04:54:10,289.289 INFO    ] 200
[2026-06-05 04:54:10,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:10,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:54:10,354.354 INFO    ] No update needed
[2026-06-05 04:54:10,357.357 INFO    ] Checking for camera pi updates...
[2026-06-05 04:54:10,391.391 INFO    ] 200
[2026-06-05 04:54:10,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:10,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:54:10,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:54:10,479.479 INFO    ] No camera update needed
[2026-06-05 04:54:10,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:54:10,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:54:10,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:54:10,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:54:12,535.535 INFO    ] ================================================
[2026-06-05 04:54:12,551.551 INFO    ] Launching Daemon at Fri Jun  5 04:54:12 IST 2026
[2026-06-05 04:54:12,563.563 INFO    ] ================================================
[2026-06-05 04:54:13,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:54:13
[2026-06-05 04:54:13,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:54:14,018.018 INFO    ] Initializing speech engine...
[2026-06-05 04:54:14,028.028 INFO    ] 2026-06-05 04:54:14
[2026-06-05 04:54:14,289.289 INFO    ] 2026-06-05 04:54:14
[2026-06-05 04:54:14,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:54:14,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:54:14,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:54:14,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:54:14,759.759 INFO    ] time= 05/06/2026 04:54:14
[2026-06-05 04:54:14,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:54:14,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:54:14,898.898 INFO    ] No existing commands found in stream
[2026-06-05 04:54:19,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:54:19,913.913 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 04:54:23,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:54:23,140.140 INFO    ] Checking for system updates...
[2026-06-05 04:54:23,180.180 INFO    ] 200
[2026-06-05 04:54:23,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:23,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:54:23,239.239 INFO    ] No update needed
[2026-06-05 04:54:23,241.241 INFO    ] Checking for camera pi updates...
[2026-06-05 04:54:23,275.275 INFO    ] 200
[2026-06-05 04:54:23,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:23,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:54:23,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:54:23,377.377 INFO    ] No camera update needed
[2026-06-05 04:54:23,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:54:23,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:54:23,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:54:23,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:54:25,435.435 INFO    ] ================================================
[2026-06-05 04:54:25,451.451 INFO    ] Launching Daemon at Fri Jun  5 04:54:25 IST 2026
[2026-06-05 04:54:25,462.462 INFO    ] ================================================
[2026-06-05 04:54:26,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:54:26
[2026-06-05 04:54:26,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:54:26,935.935 INFO    ] Initializing speech engine...
[2026-06-05 04:54:26,942.942 INFO    ] 2026-06-05 04:54:26
[2026-06-05 04:54:27,203.203 INFO    ] 2026-06-05 04:54:27
[2026-06-05 04:54:27,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:54:27,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:54:27,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:54:27,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:54:27,674.674 INFO    ] time= 05/06/2026 04:54:27
[2026-06-05 04:54:27,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:54:27,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:54:27,813.813 INFO    ] No existing commands found in stream
[2026-06-05 04:54:32,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:54:32,829.829 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 04:54:34,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:54:34,880.880 INFO    ] Checking for system updates...
[2026-06-05 04:54:34,917.917 INFO    ] 200
[2026-06-05 04:54:34,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:34,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:54:34,982.982 INFO    ] No update needed
[2026-06-05 04:54:34,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 04:54:35,018.018 INFO    ] 200
[2026-06-05 04:54:35,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:35,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:54:35,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:54:35,119.119 INFO    ] No camera update needed
[2026-06-05 04:54:35,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:54:35,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:54:35,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:54:35,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:54:37,176.176 INFO    ] ================================================
[2026-06-05 04:54:37,192.192 INFO    ] Launching Daemon at Fri Jun  5 04:54:37 IST 2026
[2026-06-05 04:54:37,203.203 INFO    ] ================================================
[2026-06-05 04:54:37,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:54:37
[2026-06-05 04:54:38,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:54:38,841.841 INFO    ] Initializing speech engine...
[2026-06-05 04:54:38,849.849 INFO    ] 2026-06-05 04:54:38
[2026-06-05 04:54:39,139.139 INFO    ] 2026-06-05 04:54:39
[2026-06-05 04:54:39,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:54:39,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:54:39,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:54:39,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:54:39,626.626 INFO    ] time= 05/06/2026 04:54:39
[2026-06-05 04:54:39,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:54:39,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:54:39,823.823 INFO    ] No existing commands found in stream
[2026-06-05 04:54:44,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:54:44,853.853 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 04:54:45,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:54:45,326.326 INFO    ] Checking for system updates...
[2026-06-05 04:54:45,368.368 INFO    ] 200
[2026-06-05 04:54:45,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:45,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:54:45,427.427 INFO    ] No update needed
[2026-06-05 04:54:45,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 04:54:45,463.463 INFO    ] 200
[2026-06-05 04:54:45,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:45,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:54:45,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:54:45,556.556 INFO    ] No camera update needed
[2026-06-05 04:54:45,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:54:45,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:54:45,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:54:45,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:54:47,611.611 INFO    ] ================================================
[2026-06-05 04:54:47,626.626 INFO    ] Launching Daemon at Fri Jun  5 04:54:47 IST 2026
[2026-06-05 04:54:47,637.637 INFO    ] ================================================
[2026-06-05 04:54:48,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:54:48
[2026-06-05 04:54:48,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:54:49,107.107 INFO    ] Initializing speech engine...
[2026-06-05 04:54:49,113.113 INFO    ] 2026-06-05 04:54:49
[2026-06-05 04:54:49,361.361 INFO    ] 2026-06-05 04:54:49
[2026-06-05 04:54:49,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:54:49,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:54:49,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:54:49,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:54:49,831.831 INFO    ] time= 05/06/2026 04:54:49
[2026-06-05 04:54:49,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:54:49,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:54:49,994.994 INFO    ] No existing commands found in stream
[2026-06-05 04:54:55,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:54:55,033.033 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 04:54:59,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:54:59,332.332 INFO    ] Checking for system updates...
[2026-06-05 04:54:59,369.369 INFO    ] 200
[2026-06-05 04:54:59,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:59,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:54:59,433.433 INFO    ] No update needed
[2026-06-05 04:54:59,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 04:54:59,473.473 INFO    ] 200
[2026-06-05 04:54:59,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:54:59,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:54:59,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:54:59,551.551 INFO    ] No camera update needed
[2026-06-05 04:54:59,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:54:59,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:54:59,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:54:59,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:55:01,694.694 INFO    ] ================================================
[2026-06-05 04:55:01,737.737 INFO    ] Launching Daemon at Fri Jun  5 04:55:01 IST 2026
[2026-06-05 04:55:01,762.762 INFO    ] ================================================
[2026-06-05 04:55:02,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:55:02
[2026-06-05 04:55:03,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:55:03,357.357 INFO    ] Initializing speech engine...
[2026-06-05 04:55:03,369.369 INFO    ] 2026-06-05 04:55:03
[2026-06-05 04:55:03,695.695 INFO    ] 2026-06-05 04:55:03
[2026-06-05 04:55:03,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:55:03,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:55:03,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:55:04,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:55:04,105.105 INFO    ] time= 05/06/2026 04:55:04
[2026-06-05 04:55:04,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:55:04,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:55:04,229.229 INFO    ] No existing commands found in stream
[2026-06-05 04:55:09,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:55:09,254.254 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 04:55:12,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:55:12,422.422 INFO    ] Checking for system updates...
[2026-06-05 04:55:12,463.463 INFO    ] 200
[2026-06-05 04:55:12,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:55:12,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:55:12,524.524 INFO    ] No update needed
[2026-06-05 04:55:12,527.527 INFO    ] Checking for camera pi updates...
[2026-06-05 04:55:12,565.565 INFO    ] 200
[2026-06-05 04:55:12,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:55:12,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:55:12,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:55:12,662.662 INFO    ] No camera update needed
[2026-06-05 04:55:12,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:55:12,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:55:12,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:55:12,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:55:14,718.718 INFO    ] ================================================
[2026-06-05 04:55:14,734.734 INFO    ] Launching Daemon at Fri Jun  5 04:55:14 IST 2026
[2026-06-05 04:55:14,745.745 INFO    ] ================================================
[2026-06-05 04:55:15,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:55:15
[2026-06-05 04:55:15,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:55:16,170.170 INFO    ] Initializing speech engine...
[2026-06-05 04:55:16,179.179 INFO    ] 2026-06-05 04:55:16
[2026-06-05 04:55:16,424.424 INFO    ] 2026-06-05 04:55:16
[2026-06-05 04:55:16,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:55:16,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:55:16,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:55:16,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:55:16,833.833 INFO    ] time= 05/06/2026 04:55:16
[2026-06-05 04:55:16,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:55:16,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:55:17,008.008 INFO    ] No existing commands found in stream
[2026-06-05 04:55:22,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:55:22,036.036 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 04:55:23,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:55:23,980.980 INFO    ] Checking for system updates...
[2026-06-05 04:55:24,021.021 INFO    ] 200
[2026-06-05 04:55:24,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:55:24,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:55:24,098.098 INFO    ] No update needed
[2026-06-05 04:55:24,101.101 INFO    ] Checking for camera pi updates...
[2026-06-05 04:55:24,136.136 INFO    ] 200
[2026-06-05 04:55:24,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:55:24,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:55:24,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:55:24,238.238 INFO    ] No camera update needed
[2026-06-05 04:55:24,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:55:24,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:55:24,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:55:24,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:55:26,297.297 INFO    ] ================================================
[2026-06-05 04:55:26,313.313 INFO    ] Launching Daemon at Fri Jun  5 04:55:26 IST 2026
[2026-06-05 04:55:26,324.324 INFO    ] ================================================
[2026-06-05 04:55:26,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:55:26
[2026-06-05 04:55:27,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:55:27,790.790 INFO    ] Initializing speech engine...
[2026-06-05 04:55:27,798.798 INFO    ] 2026-06-05 04:55:27
[2026-06-05 04:55:28,051.051 INFO    ] 2026-06-05 04:55:28
[2026-06-05 04:55:28,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:55:28,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:55:28,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:55:28,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:55:28,527.527 INFO    ] time= 05/06/2026 04:55:28
[2026-06-05 04:55:28,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:55:28,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:55:28,676.676 INFO    ] No existing commands found in stream
[2026-06-05 04:55:33,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:55:33,691.691 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 04:55:37,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:55:37,879.879 INFO    ] Checking for system updates...
[2026-06-05 04:55:37,915.915 INFO    ] 200
[2026-06-05 04:55:37,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:55:37,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:55:37,973.973 INFO    ] No update needed
[2026-06-05 04:55:37,976.976 INFO    ] Checking for camera pi updates...
[2026-06-05 04:55:38,014.014 INFO    ] 200
[2026-06-05 04:55:38,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:55:38,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:55:38,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:55:38,113.113 INFO    ] No camera update needed
[2026-06-05 04:55:38,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:55:38,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:55:38,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:55:38,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:55:40,170.170 INFO    ] ================================================
[2026-06-05 04:55:40,187.187 INFO    ] Launching Daemon at Fri Jun  5 04:55:40 IST 2026
[2026-06-05 04:55:40,199.199 INFO    ] ================================================
[2026-06-05 04:55:40,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:55:40
[2026-06-05 04:55:41,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:55:41,608.608 INFO    ] Initializing speech engine...
[2026-06-05 04:55:41,622.622 INFO    ] 2026-06-05 04:55:41
[2026-06-05 04:55:41,890.890 INFO    ] 2026-06-05 04:55:41
[2026-06-05 04:55:41,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:55:42,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:55:42,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:55:42,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:55:42,268.268 INFO    ] time= 05/06/2026 04:55:42
[2026-06-05 04:55:42,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:55:42,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:55:42,437.437 INFO    ] No existing commands found in stream
[2026-06-05 04:55:47,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:55:47,464.464 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 04:55:47,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:55:47,934.934 INFO    ] Checking for system updates...
[2026-06-05 04:55:47,970.970 INFO    ] 200
[2026-06-05 04:55:47,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:55:48,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:55:48,035.035 INFO    ] No update needed
[2026-06-05 04:55:48,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 04:55:48,071.071 INFO    ] 200
[2026-06-05 04:55:48,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:55:48,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:55:48,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:55:48,183.183 INFO    ] No camera update needed
[2026-06-05 04:55:48,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:55:48,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:55:48,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:55:48,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:55:50,240.240 INFO    ] ================================================
[2026-06-05 04:55:50,256.256 INFO    ] Launching Daemon at Fri Jun  5 04:55:50 IST 2026
[2026-06-05 04:55:50,267.267 INFO    ] ================================================
[2026-06-05 04:55:50,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:55:50
[2026-06-05 04:55:51,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:55:51,736.736 INFO    ] Initializing speech engine...
[2026-06-05 04:55:51,743.743 INFO    ] 2026-06-05 04:55:51
[2026-06-05 04:55:52,007.007 INFO    ] 2026-06-05 04:55:52
[2026-06-05 04:55:52,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:55:52,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:55:52,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:55:52,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:55:52,489.489 INFO    ] time= 05/06/2026 04:55:52
[2026-06-05 04:55:52,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:55:52,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:55:52,618.618 INFO    ] No existing commands found in stream
[2026-06-05 04:55:57,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:55:57,632.632 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 04:56:00,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:56:00,788.788 INFO    ] Checking for system updates...
[2026-06-05 04:56:00,824.824 INFO    ] 200
[2026-06-05 04:56:00,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:00,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:56:00,884.884 INFO    ] No update needed
[2026-06-05 04:56:00,887.887 INFO    ] Checking for camera pi updates...
[2026-06-05 04:56:00,921.921 INFO    ] 200
[2026-06-05 04:56:00,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:00,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:56:01,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:56:01,022.022 INFO    ] No camera update needed
[2026-06-05 04:56:01,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:56:01,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:56:01,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:56:01,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:56:03,083.083 INFO    ] ================================================
[2026-06-05 04:56:03,098.098 INFO    ] Launching Daemon at Fri Jun  5 04:56:03 IST 2026
[2026-06-05 04:56:03,109.109 INFO    ] ================================================
[2026-06-05 04:56:03,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:56:03
[2026-06-05 04:56:04,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:56:04,525.525 INFO    ] Initializing speech engine...
[2026-06-05 04:56:04,537.537 INFO    ] 2026-06-05 04:56:04
[2026-06-05 04:56:04,782.782 INFO    ] 2026-06-05 04:56:04
[2026-06-05 04:56:04,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:56:04,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:56:05,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:56:05,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:56:05,151.151 INFO    ] time= 05/06/2026 04:56:05
[2026-06-05 04:56:05,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:56:05,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:56:05,307.307 INFO    ] No existing commands found in stream
[2026-06-05 04:56:10,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:56:10,335.335 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 04:56:14,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:56:14,693.693 INFO    ] Checking for system updates...
[2026-06-05 04:56:14,729.729 INFO    ] 200
[2026-06-05 04:56:14,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:14,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:56:14,794.794 INFO    ] No update needed
[2026-06-05 04:56:14,797.797 INFO    ] Checking for camera pi updates...
[2026-06-05 04:56:14,830.830 INFO    ] 200
[2026-06-05 04:56:14,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:14,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:56:15,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:56:15,027.027 INFO    ] No camera update needed
[2026-06-05 04:56:15,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:56:15,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:56:15,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:56:15,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:56:17,081.081 INFO    ] ================================================
[2026-06-05 04:56:17,096.096 INFO    ] Launching Daemon at Fri Jun  5 04:56:17 IST 2026
[2026-06-05 04:56:17,107.107 INFO    ] ================================================
[2026-06-05 04:56:17,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:56:17
[2026-06-05 04:56:18,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:56:18,534.534 INFO    ] Initializing speech engine...
[2026-06-05 04:56:18,540.540 INFO    ] 2026-06-05 04:56:18
[2026-06-05 04:56:18,825.825 INFO    ] 2026-06-05 04:56:18
[2026-06-05 04:56:18,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:56:19,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:56:19,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:56:19,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:56:19,197.197 INFO    ] time= 05/06/2026 04:56:19
[2026-06-05 04:56:19,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:56:19,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:56:19,374.374 INFO    ] No existing commands found in stream
[2026-06-05 04:56:24,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:56:24,407.407 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 04:56:25,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:56:25,168.168 INFO    ] Checking for system updates...
[2026-06-05 04:56:25,209.209 INFO    ] 200
[2026-06-05 04:56:25,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:25,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:56:25,268.268 INFO    ] No update needed
[2026-06-05 04:56:25,271.271 INFO    ] Checking for camera pi updates...
[2026-06-05 04:56:25,310.310 INFO    ] 200
[2026-06-05 04:56:25,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:25,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:56:25,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:56:25,405.405 INFO    ] No camera update needed
[2026-06-05 04:56:25,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:56:25,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:56:25,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:56:25,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:56:27,465.465 INFO    ] ================================================
[2026-06-05 04:56:27,481.481 INFO    ] Launching Daemon at Fri Jun  5 04:56:27 IST 2026
[2026-06-05 04:56:27,491.491 INFO    ] ================================================
[2026-06-05 04:56:28,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:56:28
[2026-06-05 04:56:28,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:56:28,946.946 INFO    ] Initializing speech engine...
[2026-06-05 04:56:28,955.955 INFO    ] 2026-06-05 04:56:28
[2026-06-05 04:56:29,203.203 INFO    ] 2026-06-05 04:56:29
[2026-06-05 04:56:29,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:56:29,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:56:29,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:56:29,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:56:29,690.690 INFO    ] time= 05/06/2026 04:56:29
[2026-06-05 04:56:29,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:56:29,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:56:29,833.833 INFO    ] No existing commands found in stream
[2026-06-05 04:56:34,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:56:34,849.849 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 04:56:38,840.840 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:56:38,843.843 INFO    ] Checking for system updates...
[2026-06-05 04:56:38,879.879 INFO    ] 200
[2026-06-05 04:56:38,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:38,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:56:38,937.937 INFO    ] No update needed
[2026-06-05 04:56:38,940.940 INFO    ] Checking for camera pi updates...
[2026-06-05 04:56:38,973.973 INFO    ] 200
[2026-06-05 04:56:38,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:39,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:56:39,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:56:39,079.079 INFO    ] No camera update needed
[2026-06-05 04:56:39,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:56:39,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:56:39,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:56:39,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:56:41,137.137 INFO    ] ================================================
[2026-06-05 04:56:41,153.153 INFO    ] Launching Daemon at Fri Jun  5 04:56:41 IST 2026
[2026-06-05 04:56:41,165.165 INFO    ] ================================================
[2026-06-05 04:56:41,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:56:41
[2026-06-05 04:56:42,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:56:42,592.592 INFO    ] Initializing speech engine...
[2026-06-05 04:56:42,601.601 INFO    ] 2026-06-05 04:56:42
[2026-06-05 04:56:42,875.875 INFO    ] 2026-06-05 04:56:42
[2026-06-05 04:56:42,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:56:43,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:56:43,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:56:43,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:56:43,255.255 INFO    ] time= 05/06/2026 04:56:43
[2026-06-05 04:56:43,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:56:43,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:56:43,422.422 INFO    ] No existing commands found in stream
[2026-06-05 04:56:48,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:56:48,456.456 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 04:56:51,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:56:51,458.458 INFO    ] Checking for system updates...
[2026-06-05 04:56:51,495.495 INFO    ] 200
[2026-06-05 04:56:51,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:51,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:56:51,554.554 INFO    ] No update needed
[2026-06-05 04:56:51,557.557 INFO    ] Checking for camera pi updates...
[2026-06-05 04:56:51,596.596 INFO    ] 200
[2026-06-05 04:56:51,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:56:51,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:56:51,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:56:51,688.688 INFO    ] No camera update needed
[2026-06-05 04:56:51,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:56:51,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:56:51,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:56:51,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:56:53,747.747 INFO    ] ================================================
[2026-06-05 04:56:53,762.762 INFO    ] Launching Daemon at Fri Jun  5 04:56:53 IST 2026
[2026-06-05 04:56:53,773.773 INFO    ] ================================================
[2026-06-05 04:56:54,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:56:54
[2026-06-05 04:56:55,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:56:55,415.415 INFO    ] Initializing speech engine...
[2026-06-05 04:56:55,430.430 INFO    ] 2026-06-05 04:56:55
[2026-06-05 04:56:55,724.724 INFO    ] 2026-06-05 04:56:55
[2026-06-05 04:56:55,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:56:56,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:56:56,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:56:56,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:56:56,267.267 INFO    ] time= 05/06/2026 04:56:56
[2026-06-05 04:56:56,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:56:56,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:56:56,424.424 INFO    ] No existing commands found in stream
[2026-06-05 04:57:01,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:57:01,442.442 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 04:57:02,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:57:02,384.384 INFO    ] Checking for system updates...
[2026-06-05 04:57:02,436.436 INFO    ] 200
[2026-06-05 04:57:02,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:02,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:57:02,510.510 INFO    ] No update needed
[2026-06-05 04:57:02,512.512 INFO    ] Checking for camera pi updates...
[2026-06-05 04:57:02,560.560 INFO    ] 200
[2026-06-05 04:57:02,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:02,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:57:02,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:57:02,643.643 INFO    ] No camera update needed
[2026-06-05 04:57:02,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:57:02,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:57:02,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:57:02,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:57:04,700.700 INFO    ] ================================================
[2026-06-05 04:57:04,715.715 INFO    ] Launching Daemon at Fri Jun  5 04:57:04 IST 2026
[2026-06-05 04:57:04,727.727 INFO    ] ================================================
[2026-06-05 04:57:05,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:57:05
[2026-06-05 04:57:05,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:57:06,181.181 INFO    ] Initializing speech engine...
[2026-06-05 04:57:06,190.190 INFO    ] 2026-06-05 04:57:06
[2026-06-05 04:57:06,436.436 INFO    ] 2026-06-05 04:57:06
[2026-06-05 04:57:06,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:57:06,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:57:06,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:57:06,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:57:06,885.885 INFO    ] time= 05/06/2026 04:57:06
[2026-06-05 04:57:06,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:57:06,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:57:07,053.053 INFO    ] No existing commands found in stream
[2026-06-05 04:57:12,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:57:12,068.068 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-05 04:57:12,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:57:12,484.484 INFO    ] Checking for system updates...
[2026-06-05 04:57:12,520.520 INFO    ] 200
[2026-06-05 04:57:12,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:12,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:57:12,578.578 INFO    ] No update needed
[2026-06-05 04:57:12,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 04:57:12,619.619 INFO    ] 200
[2026-06-05 04:57:12,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:12,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:57:12,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:57:12,713.713 INFO    ] No camera update needed
[2026-06-05 04:57:12,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:57:12,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:57:12,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:57:12,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:57:14,768.768 INFO    ] ================================================
[2026-06-05 04:57:14,783.783 INFO    ] Launching Daemon at Fri Jun  5 04:57:14 IST 2026
[2026-06-05 04:57:14,794.794 INFO    ] ================================================
[2026-06-05 04:57:15,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:57:15
[2026-06-05 04:57:16,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:57:16,373.373 INFO    ] Initializing speech engine...
[2026-06-05 04:57:16,386.386 INFO    ] 2026-06-05 04:57:16
[2026-06-05 04:57:16,668.668 INFO    ] 2026-06-05 04:57:16
[2026-06-05 04:57:16,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:57:16,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:57:16,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:57:17,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:57:17,187.187 INFO    ] time= 05/06/2026 04:57:17
[2026-06-05 04:57:17,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:57:17,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:57:17,331.331 INFO    ] No existing commands found in stream
[2026-06-05 04:57:22,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:57:22,382.382 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 04:57:24,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:57:24,381.381 INFO    ] Checking for system updates...
[2026-06-05 04:57:24,418.418 INFO    ] 200
[2026-06-05 04:57:24,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:24,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:57:24,476.476 INFO    ] No update needed
[2026-06-05 04:57:24,479.479 INFO    ] Checking for camera pi updates...
[2026-06-05 04:57:24,512.512 INFO    ] 200
[2026-06-05 04:57:24,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:24,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:57:24,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:57:24,613.613 INFO    ] No camera update needed
[2026-06-05 04:57:24,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:57:24,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:57:24,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:57:24,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:57:26,668.668 INFO    ] ================================================
[2026-06-05 04:57:26,684.684 INFO    ] Launching Daemon at Fri Jun  5 04:57:26 IST 2026
[2026-06-05 04:57:26,695.695 INFO    ] ================================================
[2026-06-05 04:57:27,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:57:27
[2026-06-05 04:57:27,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:57:28,122.122 INFO    ] Initializing speech engine...
[2026-06-05 04:57:28,144.144 INFO    ] 2026-06-05 04:57:28
[2026-06-05 04:57:28,396.396 INFO    ] 2026-06-05 04:57:28
[2026-06-05 04:57:28,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:57:28,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:57:28,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:57:28,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:57:28,846.846 INFO    ] time= 05/06/2026 04:57:28
[2026-06-05 04:57:28,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:57:28,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:57:29,013.013 INFO    ] No existing commands found in stream
[2026-06-05 04:57:34,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:57:34,028.028 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 04:57:35,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:57:35,773.773 INFO    ] Checking for system updates...
[2026-06-05 04:57:35,813.813 INFO    ] 200
[2026-06-05 04:57:35,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:35,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:57:35,871.871 INFO    ] No update needed
[2026-06-05 04:57:35,873.873 INFO    ] Checking for camera pi updates...
[2026-06-05 04:57:35,915.915 INFO    ] 200
[2026-06-05 04:57:35,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:35,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:57:36,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:57:36,007.007 INFO    ] No camera update needed
[2026-06-05 04:57:36,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:57:36,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:57:36,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:57:36,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:57:38,063.063 INFO    ] ================================================
[2026-06-05 04:57:38,079.079 INFO    ] Launching Daemon at Fri Jun  5 04:57:38 IST 2026
[2026-06-05 04:57:38,089.089 INFO    ] ================================================
[2026-06-05 04:57:38,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:57:38
[2026-06-05 04:57:39,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:57:39,709.709 INFO    ] Initializing speech engine...
[2026-06-05 04:57:39,723.723 INFO    ] 2026-06-05 04:57:39
[2026-06-05 04:57:40,009.009 INFO    ] 2026-06-05 04:57:39
[2026-06-05 04:57:40,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:57:40,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:57:40,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:57:40,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:57:40,477.477 INFO    ] time= 05/06/2026 04:57:40
[2026-06-05 04:57:40,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:57:40,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:57:40,623.623 INFO    ] No existing commands found in stream
[2026-06-05 04:57:45,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:57:45,639.639 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-05 04:57:46,072.072 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:57:46,075.075 INFO    ] Checking for system updates...
[2026-06-05 04:57:46,112.112 INFO    ] 200
[2026-06-05 04:57:46,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:46,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:57:46,171.171 INFO    ] No update needed
[2026-06-05 04:57:46,173.173 INFO    ] Checking for camera pi updates...
[2026-06-05 04:57:46,211.211 INFO    ] 200
[2026-06-05 04:57:46,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:46,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:57:46,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:57:46,303.303 INFO    ] No camera update needed
[2026-06-05 04:57:46,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:57:46,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:57:46,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:57:46,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:57:48,357.357 INFO    ] ================================================
[2026-06-05 04:57:48,373.373 INFO    ] Launching Daemon at Fri Jun  5 04:57:48 IST 2026
[2026-06-05 04:57:48,385.385 INFO    ] ================================================
[2026-06-05 04:57:49,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:57:49
[2026-06-05 04:57:49,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:57:50,042.042 INFO    ] Initializing speech engine...
[2026-06-05 04:57:50,051.051 INFO    ] 2026-06-05 04:57:50
[2026-06-05 04:57:50,324.324 INFO    ] 2026-06-05 04:57:50
[2026-06-05 04:57:50,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:57:50,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:57:50,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:57:50,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:57:50,811.811 INFO    ] time= 05/06/2026 04:57:50
[2026-06-05 04:57:50,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:57:50,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:57:51,014.014 INFO    ] No existing commands found in stream
[2026-06-05 04:57:56,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:57:56,040.040 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 04:57:57,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 04:57:57,801.801 INFO    ] Checking for system updates...
[2026-06-05 04:57:57,837.837 INFO    ] 200
[2026-06-05 04:57:57,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:57,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:57:57,900.900 INFO    ] No update needed
[2026-06-05 04:57:57,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 04:57:57,937.937 INFO    ] 200
[2026-06-05 04:57:57,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:57:57,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:57:58,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:57:58,045.045 INFO    ] No camera update needed
[2026-06-05 04:57:58,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:57:58,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:57:58,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:57:58,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:58:00,100.100 INFO    ] ================================================
[2026-06-05 04:58:00,116.116 INFO    ] Launching Daemon at Fri Jun  5 04:58:00 IST 2026
[2026-06-05 04:58:00,127.127 INFO    ] ================================================
[2026-06-05 04:58:00,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:58:00
[2026-06-05 04:58:01,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:58:01,672.672 INFO    ] Initializing speech engine...
[2026-06-05 04:58:01,685.685 INFO    ] 2026-06-05 04:58:01
[2026-06-05 04:58:01,969.969 INFO    ] 2026-06-05 04:58:01
[2026-06-05 04:58:02,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:58:02,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:58:02,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:58:02,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:58:02,433.433 INFO    ] time= 05/06/2026 04:58:02
[2026-06-05 04:58:02,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:58:02,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:58:02,579.579 INFO    ] No existing commands found in stream
[2026-06-05 04:58:07,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:58:07,624.624 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 04:58:08,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:58:08,433.433 INFO    ] Checking for system updates...
[2026-06-05 04:58:08,472.472 INFO    ] 200
[2026-06-05 04:58:08,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:08,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:58:08,537.537 INFO    ] No update needed
[2026-06-05 04:58:08,539.539 INFO    ] Checking for camera pi updates...
[2026-06-05 04:58:08,574.574 INFO    ] 200
[2026-06-05 04:58:08,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:08,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:58:08,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:58:08,661.661 INFO    ] No camera update needed
[2026-06-05 04:58:08,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:58:08,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:58:08,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:58:08,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:58:10,719.719 INFO    ] ================================================
[2026-06-05 04:58:10,734.734 INFO    ] Launching Daemon at Fri Jun  5 04:58:10 IST 2026
[2026-06-05 04:58:10,745.745 INFO    ] ================================================
[2026-06-05 04:58:11,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:58:11
[2026-06-05 04:58:12,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:58:12,378.378 INFO    ] Initializing speech engine...
[2026-06-05 04:58:12,385.385 INFO    ] 2026-06-05 04:58:12
[2026-06-05 04:58:12,657.657 INFO    ] 2026-06-05 04:58:12
[2026-06-05 04:58:12,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:58:12,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:58:12,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:58:13,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:58:13,159.159 INFO    ] time= 05/06/2026 04:58:13
[2026-06-05 04:58:13,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:58:13,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:58:13,362.362 INFO    ] No existing commands found in stream
[2026-06-05 04:58:18,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:58:18,393.393 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 04:58:19,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 04:58:19,912.912 INFO    ] Checking for system updates...
[2026-06-05 04:58:19,955.955 INFO    ] 200
[2026-06-05 04:58:19,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:20,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:58:20,022.022 INFO    ] No update needed
[2026-06-05 04:58:20,024.024 INFO    ] Checking for camera pi updates...
[2026-06-05 04:58:20,062.062 INFO    ] 200
[2026-06-05 04:58:20,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:20,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:58:20,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:58:20,265.265 INFO    ] No camera update needed
[2026-06-05 04:58:20,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:58:20,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:58:20,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:58:20,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:58:22,320.320 INFO    ] ================================================
[2026-06-05 04:58:22,335.335 INFO    ] Launching Daemon at Fri Jun  5 04:58:22 IST 2026
[2026-06-05 04:58:22,346.346 INFO    ] ================================================
[2026-06-05 04:58:22,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:58:22
[2026-06-05 04:58:23,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:58:23,843.843 INFO    ] Initializing speech engine...
[2026-06-05 04:58:23,856.856 INFO    ] 2026-06-05 04:58:23
[2026-06-05 04:58:24,136.136 INFO    ] 2026-06-05 04:58:24
[2026-06-05 04:58:24,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:58:24,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:58:24,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:58:24,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:58:24,604.604 INFO    ] time= 05/06/2026 04:58:24
[2026-06-05 04:58:24,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:58:24,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:58:24,766.766 INFO    ] No existing commands found in stream
[2026-06-05 04:58:29,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:58:29,806.806 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 04:58:31,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:58:31,222.222 INFO    ] Checking for system updates...
[2026-06-05 04:58:31,262.262 INFO    ] 200
[2026-06-05 04:58:31,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:31,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:58:31,325.325 INFO    ] No update needed
[2026-06-05 04:58:31,328.328 INFO    ] Checking for camera pi updates...
[2026-06-05 04:58:31,365.365 INFO    ] 200
[2026-06-05 04:58:31,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:31,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:58:31,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:58:31,457.457 INFO    ] No camera update needed
[2026-06-05 04:58:31,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:58:31,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:58:31,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:58:31,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:58:33,515.515 INFO    ] ================================================
[2026-06-05 04:58:33,530.530 INFO    ] Launching Daemon at Fri Jun  5 04:58:33 IST 2026
[2026-06-05 04:58:33,540.540 INFO    ] ================================================
[2026-06-05 04:58:34,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:58:34
[2026-06-05 04:58:34,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:58:34,979.979 INFO    ] Initializing speech engine...
[2026-06-05 04:58:34,996.996 INFO    ] 2026-06-05 04:58:34
[2026-06-05 04:58:35,280.280 INFO    ] 2026-06-05 04:58:35
[2026-06-05 04:58:35,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:58:35,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:58:35,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:58:35,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:58:35,668.668 INFO    ] time= 05/06/2026 04:58:35
[2026-06-05 04:58:35,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:58:35,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:58:35,808.808 INFO    ] No existing commands found in stream
[2026-06-05 04:58:40,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:58:40,831.831 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 04:58:41,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:58:41,725.725 INFO    ] Checking for system updates...
[2026-06-05 04:58:41,765.765 INFO    ] 200
[2026-06-05 04:58:41,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:41,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:58:41,823.823 INFO    ] No update needed
[2026-06-05 04:58:41,825.825 INFO    ] Checking for camera pi updates...
[2026-06-05 04:58:41,862.862 INFO    ] 200
[2026-06-05 04:58:41,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:41,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:58:41,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:58:41,949.949 INFO    ] No camera update needed
[2026-06-05 04:58:41,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:58:41,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:58:41,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:58:41,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:58:44,004.004 INFO    ] ================================================
[2026-06-05 04:58:44,020.020 INFO    ] Launching Daemon at Fri Jun  5 04:58:44 IST 2026
[2026-06-05 04:58:44,030.030 INFO    ] ================================================
[2026-06-05 04:58:44,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:58:44
[2026-06-05 04:58:45,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:58:45,498.498 INFO    ] Initializing speech engine...
[2026-06-05 04:58:45,505.505 INFO    ] 2026-06-05 04:58:45
[2026-06-05 04:58:45,768.768 INFO    ] 2026-06-05 04:58:45
[2026-06-05 04:58:45,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:58:45,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:58:45,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:58:46,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:58:46,137.137 INFO    ] time= 05/06/2026 04:58:46
[2026-06-05 04:58:46,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:58:46,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:58:46,346.346 INFO    ] No existing commands found in stream
[2026-06-05 04:58:51,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:58:51,360.360 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 04:58:53,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 04:58:53,035.035 INFO    ] Checking for system updates...
[2026-06-05 04:58:53,071.071 INFO    ] 200
[2026-06-05 04:58:53,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:53,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:58:53,129.129 INFO    ] No update needed
[2026-06-05 04:58:53,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 04:58:53,169.169 INFO    ] 200
[2026-06-05 04:58:53,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:58:53,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:58:53,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:58:53,261.261 INFO    ] No camera update needed
[2026-06-05 04:58:53,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:58:53,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:58:53,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:58:53,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:58:55,316.316 INFO    ] ================================================
[2026-06-05 04:58:55,331.331 INFO    ] Launching Daemon at Fri Jun  5 04:58:55 IST 2026
[2026-06-05 04:58:55,342.342 INFO    ] ================================================
[2026-06-05 04:58:55,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:58:55
[2026-06-05 04:58:56,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:58:56,773.773 INFO    ] Initializing speech engine...
[2026-06-05 04:58:56,781.781 INFO    ] 2026-06-05 04:58:56
[2026-06-05 04:58:57,039.039 INFO    ] 2026-06-05 04:58:57
[2026-06-05 04:58:57,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:58:57,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:58:57,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:58:57,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:58:57,419.419 INFO    ] time= 05/06/2026 04:58:57
[2026-06-05 04:58:57,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:58:57,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:58:57,572.572 INFO    ] No existing commands found in stream
[2026-06-05 04:59:02,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:59:02,608.608 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 04:59:05,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:59:05,376.376 INFO    ] Checking for system updates...
[2026-06-05 04:59:05,416.416 INFO    ] 200
[2026-06-05 04:59:05,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:05,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:59:05,479.479 INFO    ] No update needed
[2026-06-05 04:59:05,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 04:59:05,518.518 INFO    ] 200
[2026-06-05 04:59:05,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:05,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:59:05,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:59:05,607.607 INFO    ] No camera update needed
[2026-06-05 04:59:05,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:59:05,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:59:05,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:59:05,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:59:07,668.668 INFO    ] ================================================
[2026-06-05 04:59:07,684.684 INFO    ] Launching Daemon at Fri Jun  5 04:59:07 IST 2026
[2026-06-05 04:59:07,695.695 INFO    ] ================================================
[2026-06-05 04:59:08,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:59:08
[2026-06-05 04:59:08,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:59:09,188.188 INFO    ] Initializing speech engine...
[2026-06-05 04:59:09,200.200 INFO    ] 2026-06-05 04:59:09
[2026-06-05 04:59:09,467.467 INFO    ] 2026-06-05 04:59:09
[2026-06-05 04:59:09,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:59:09,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:59:09,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:59:09,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:59:09,818.818 INFO    ] time= 05/06/2026 04:59:09
[2026-06-05 04:59:09,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:59:09,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:59:09,901.901 INFO    ] No existing commands found in stream
[2026-06-05 04:59:14,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:59:14,920.920 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 04:59:19,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 04:59:19,028.028 INFO    ] Checking for system updates...
[2026-06-05 04:59:19,065.065 INFO    ] 200
[2026-06-05 04:59:19,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:19,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:59:19,127.127 INFO    ] No update needed
[2026-06-05 04:59:19,130.130 INFO    ] Checking for camera pi updates...
[2026-06-05 04:59:19,164.164 INFO    ] 200
[2026-06-05 04:59:19,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:19,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:59:19,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:59:19,253.253 INFO    ] No camera update needed
[2026-06-05 04:59:19,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:59:19,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:59:19,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:59:19,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:59:21,309.309 INFO    ] ================================================
[2026-06-05 04:59:21,325.325 INFO    ] Launching Daemon at Fri Jun  5 04:59:21 IST 2026
[2026-06-05 04:59:21,336.336 INFO    ] ================================================
[2026-06-05 04:59:21,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:59:21
[2026-06-05 04:59:22,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:59:22,883.883 INFO    ] Initializing speech engine...
[2026-06-05 04:59:22,895.895 INFO    ] 2026-06-05 04:59:22
[2026-06-05 04:59:23,157.157 INFO    ] 2026-06-05 04:59:23
[2026-06-05 04:59:23,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:59:23,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:59:23,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:59:23,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:59:23,527.527 INFO    ] time= 05/06/2026 04:59:23
[2026-06-05 04:59:23,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:59:23,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:59:23,714.714 INFO    ] No existing commands found in stream
[2026-06-05 04:59:28,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:59:28,736.736 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 04:59:32,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:59:32,532.532 INFO    ] Checking for system updates...
[2026-06-05 04:59:32,575.575 INFO    ] 200
[2026-06-05 04:59:32,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:32,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:59:32,638.638 INFO    ] No update needed
[2026-06-05 04:59:32,641.641 INFO    ] Checking for camera pi updates...
[2026-06-05 04:59:32,678.678 INFO    ] 200
[2026-06-05 04:59:32,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:32,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:59:32,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:59:32,765.765 INFO    ] No camera update needed
[2026-06-05 04:59:32,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:59:32,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:59:32,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:59:32,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:59:34,823.823 INFO    ] ================================================
[2026-06-05 04:59:34,838.838 INFO    ] Launching Daemon at Fri Jun  5 04:59:34 IST 2026
[2026-06-05 04:59:34,849.849 INFO    ] ================================================
[2026-06-05 04:59:35,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:59:35
[2026-06-05 04:59:36,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:59:36,269.269 INFO    ] Initializing speech engine...
[2026-06-05 04:59:36,279.279 INFO    ] 2026-06-05 04:59:36
[2026-06-05 04:59:36,535.535 INFO    ] 2026-06-05 04:59:36
[2026-06-05 04:59:36,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:59:36,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:59:36,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:59:36,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:59:36,980.980 INFO    ] time= 05/06/2026 04:59:36
[2026-06-05 04:59:37,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:59:37,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:59:37,179.179 INFO    ] No existing commands found in stream
[2026-06-05 04:59:42,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:59:42,194.194 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 04:59:46,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 04:59:46,152.152 INFO    ] Checking for system updates...
[2026-06-05 04:59:46,191.191 INFO    ] 200
[2026-06-05 04:59:46,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:46,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:59:46,254.254 INFO    ] No update needed
[2026-06-05 04:59:46,256.256 INFO    ] Checking for camera pi updates...
[2026-06-05 04:59:46,290.290 INFO    ] 200
[2026-06-05 04:59:46,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:46,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:59:46,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 04:59:46,387.387 INFO    ] No camera update needed
[2026-06-05 04:59:46,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:59:46,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:59:46,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:59:46,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 04:59:48,441.441 INFO    ] ================================================
[2026-06-05 04:59:48,456.456 INFO    ] Launching Daemon at Fri Jun  5 04:59:48 IST 2026
[2026-06-05 04:59:48,466.466 INFO    ] ================================================
[2026-06-05 04:59:49,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 04:59:49
[2026-06-05 04:59:49,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 04:59:49,925.925 INFO    ] Initializing speech engine...
[2026-06-05 04:59:49,936.936 INFO    ] 2026-06-05 04:59:49
[2026-06-05 04:59:50,197.197 INFO    ] 2026-06-05 04:59:50
[2026-06-05 04:59:50,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 04:59:50,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 04:59:50,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 04:59:50,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 04:59:50,661.661 INFO    ] time= 05/06/2026 04:59:50
[2026-06-05 04:59:50,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 04:59:50,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 04:59:50,808.808 INFO    ] No existing commands found in stream
[2026-06-05 04:59:55,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 04:59:55,831.831 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 04:59:58,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 04:59:58,769.769 INFO    ] Checking for system updates...
[2026-06-05 04:59:58,809.809 INFO    ] 200
[2026-06-05 04:59:58,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:58,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:59:58,868.868 INFO    ] No update needed
[2026-06-05 04:59:58,870.870 INFO    ] Checking for camera pi updates...
[2026-06-05 04:59:58,911.911 INFO    ] 200
[2026-06-05 04:59:58,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 04:59:58,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 04:59:58,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 04:59:58,986.986 INFO    ] No camera update needed
[2026-06-05 04:59:58,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-05 04:59:58,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 04:59:58,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 04:59:59,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:00:01,042.042 INFO    ] ================================================
[2026-06-05 05:00:01,058.058 INFO    ] Launching Daemon at Fri Jun  5 05:00:01 IST 2026
[2026-06-05 05:00:01,069.069 INFO    ] ================================================
[2026-06-05 05:00:01,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:00:01
[2026-06-05 05:00:03,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:00:05,098.098 INFO    ] Initializing speech engine...
[2026-06-05 05:00:05,102.102 INFO    ] 2026-06-05 05:00:05
[2026-06-05 05:00:06,004.004 INFO    ] 2026-06-05 05:00:06
[2026-06-05 05:00:06,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:00:06,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:00:06,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:00:06,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:00:06,667.667 INFO    ] time= 05/06/2026 05:00:06
[2026-06-05 05:00:06,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:00:06,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:00:06,774.774 INFO    ] No existing commands found in stream
[2026-06-05 05:00:11,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:00:11,803.803 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 05:00:14,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:00:14,343.343 INFO    ] Checking for system updates...
[2026-06-05 05:00:14,383.383 INFO    ] 200
[2026-06-05 05:00:14,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:00:14,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:00:14,447.447 INFO    ] No update needed
[2026-06-05 05:00:14,449.449 INFO    ] Checking for camera pi updates...
[2026-06-05 05:00:14,487.487 INFO    ] 200
[2026-06-05 05:00:14,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:00:14,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:00:14,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:00:14,586.586 INFO    ] No camera update needed
[2026-06-05 05:00:14,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:00:14,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:00:14,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:00:14,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:00:16,643.643 INFO    ] ================================================
[2026-06-05 05:00:16,658.658 INFO    ] Launching Daemon at Fri Jun  5 05:00:16 IST 2026
[2026-06-05 05:00:16,670.670 INFO    ] ================================================
[2026-06-05 05:00:17,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:00:17
[2026-06-05 05:00:17,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:00:18,077.077 INFO    ] Initializing speech engine...
[2026-06-05 05:00:18,084.084 INFO    ] 2026-06-05 05:00:18
[2026-06-05 05:00:18,376.376 INFO    ] 2026-06-05 05:00:18
[2026-06-05 05:00:18,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:00:18,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:00:18,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:00:18,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:00:18,755.755 INFO    ] time= 05/06/2026 05:00:18
[2026-06-05 05:00:18,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:00:18,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:00:18,879.879 INFO    ] No existing commands found in stream
[2026-06-05 05:00:23,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:00:23,895.895 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 05:00:25,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:00:25,222.222 INFO    ] Checking for system updates...
[2026-06-05 05:00:25,261.261 INFO    ] 200
[2026-06-05 05:00:25,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:00:25,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:00:25,320.320 INFO    ] No update needed
[2026-06-05 05:00:25,322.322 INFO    ] Checking for camera pi updates...
[2026-06-05 05:00:25,359.359 INFO    ] 200
[2026-06-05 05:00:25,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:00:25,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:00:25,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:00:25,549.549 INFO    ] No camera update needed
[2026-06-05 05:00:25,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:00:25,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:00:25,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:00:25,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:00:27,605.605 INFO    ] ================================================
[2026-06-05 05:00:27,621.621 INFO    ] Launching Daemon at Fri Jun  5 05:00:27 IST 2026
[2026-06-05 05:00:27,633.633 INFO    ] ================================================
[2026-06-05 05:00:28,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:00:28
[2026-06-05 05:00:28,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:00:29,248.248 INFO    ] Initializing speech engine...
[2026-06-05 05:00:29,262.262 INFO    ] 2026-06-05 05:00:29
[2026-06-05 05:00:29,542.542 INFO    ] 2026-06-05 05:00:29
[2026-06-05 05:00:29,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:00:29,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:00:29,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:00:29,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:00:30,020.020 INFO    ] time= 05/06/2026 05:00:29
[2026-06-05 05:00:30,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:00:30,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:00:30,211.211 INFO    ] No existing commands found in stream
[2026-06-05 05:00:35,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:00:35,247.247 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 05:00:36,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:00:36,284.284 INFO    ] Checking for system updates...
[2026-06-05 05:00:36,321.321 INFO    ] 200
[2026-06-05 05:00:36,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:00:36,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:00:36,381.381 INFO    ] No update needed
[2026-06-05 05:00:36,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 05:00:36,422.422 INFO    ] 200
[2026-06-05 05:00:36,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:00:36,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:00:36,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:00:36,514.514 INFO    ] No camera update needed
[2026-06-05 05:00:36,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:00:36,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:00:36,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:00:36,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:00:38,572.572 INFO    ] ================================================
[2026-06-05 05:00:38,587.587 INFO    ] Launching Daemon at Fri Jun  5 05:00:38 IST 2026
[2026-06-05 05:00:38,598.598 INFO    ] ================================================
[2026-06-05 05:00:39,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:00:39
[2026-06-05 05:00:39,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:00:39,993.993 INFO    ] Initializing speech engine...
[2026-06-05 05:00:40,002.002 INFO    ] 2026-06-05 05:00:39
[2026-06-05 05:00:40,271.271 INFO    ] 2026-06-05 05:00:40
[2026-06-05 05:00:40,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:00:40,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:00:40,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:00:40,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:00:40,643.643 INFO    ] time= 05/06/2026 05:00:40
[2026-06-05 05:00:40,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:00:40,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:00:40,819.819 INFO    ] No existing commands found in stream
[2026-06-05 05:00:45,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:00:45,852.852 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 05:00:49,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:00:49,195.195 INFO    ] Checking for system updates...
[2026-06-05 05:00:49,231.231 INFO    ] 200
[2026-06-05 05:00:49,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:00:49,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:00:49,295.295 INFO    ] No update needed
[2026-06-05 05:00:49,298.298 INFO    ] Checking for camera pi updates...
[2026-06-05 05:00:49,335.335 INFO    ] 200
[2026-06-05 05:00:49,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:00:49,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:00:49,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:00:49,423.423 INFO    ] No camera update needed
[2026-06-05 05:00:49,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:00:49,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:00:49,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:00:49,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:00:51,480.480 INFO    ] ================================================
[2026-06-05 05:00:51,495.495 INFO    ] Launching Daemon at Fri Jun  5 05:00:51 IST 2026
[2026-06-05 05:00:51,506.506 INFO    ] ================================================
[2026-06-05 05:00:52,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:00:52
[2026-06-05 05:00:52,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:00:53,088.088 INFO    ] Initializing speech engine...
[2026-06-05 05:00:53,096.096 INFO    ] 2026-06-05 05:00:53
[2026-06-05 05:00:53,366.366 INFO    ] 2026-06-05 05:00:53
[2026-06-05 05:00:53,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:00:53,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:00:53,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:00:53,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:00:53,860.860 INFO    ] time= 05/06/2026 05:00:53
[2026-06-05 05:00:53,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:00:53,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:00:53,982.982 INFO    ] No existing commands found in stream
[2026-06-05 05:00:58,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:00:58,998.998 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 05:01:01,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:01:01,712.712 INFO    ] Checking for system updates...
[2026-06-05 05:01:01,766.766 INFO    ] 200
[2026-06-05 05:01:01,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:01,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:01:01,907.907 INFO    ] No update needed
[2026-06-05 05:01:01,915.915 INFO    ] Checking for camera pi updates...
[2026-06-05 05:01:01,964.964 INFO    ] 200
[2026-06-05 05:01:01,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:02,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:01:02,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:01:02,121.121 INFO    ] No camera update needed
[2026-06-05 05:01:02,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:01:02,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:01:02,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:01:02,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:01:04,194.194 INFO    ] ================================================
[2026-06-05 05:01:04,209.209 INFO    ] Launching Daemon at Fri Jun  5 05:01:04 IST 2026
[2026-06-05 05:01:04,220.220 INFO    ] ================================================
[2026-06-05 05:01:04,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:01:04
[2026-06-05 05:01:05,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:01:05,651.651 INFO    ] Initializing speech engine...
[2026-06-05 05:01:05,661.661 INFO    ] 2026-06-05 05:01:05
[2026-06-05 05:01:05,913.913 INFO    ] 2026-06-05 05:01:05
[2026-06-05 05:01:05,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:01:06,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:01:06,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:01:06,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:01:06,403.403 INFO    ] time= 05/06/2026 05:01:06
[2026-06-05 05:01:06,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:01:06,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:01:06,586.586 INFO    ] No existing commands found in stream
[2026-06-05 05:01:11,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:01:11,626.626 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 05:01:13,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:01:13,034.034 INFO    ] Checking for system updates...
[2026-06-05 05:01:13,076.076 INFO    ] 200
[2026-06-05 05:01:13,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:13,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:01:13,133.133 INFO    ] No update needed
[2026-06-05 05:01:13,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 05:01:13,174.174 INFO    ] 200
[2026-06-05 05:01:13,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:13,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:01:13,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:01:13,269.269 INFO    ] No camera update needed
[2026-06-05 05:01:13,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:01:13,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:01:13,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:01:13,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:01:15,326.326 INFO    ] ================================================
[2026-06-05 05:01:15,342.342 INFO    ] Launching Daemon at Fri Jun  5 05:01:15 IST 2026
[2026-06-05 05:01:15,353.353 INFO    ] ================================================
[2026-06-05 05:01:15,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:01:15
[2026-06-05 05:01:16,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:01:16,788.788 INFO    ] Initializing speech engine...
[2026-06-05 05:01:16,804.804 INFO    ] 2026-06-05 05:01:16
[2026-06-05 05:01:17,090.090 INFO    ] 2026-06-05 05:01:17
[2026-06-05 05:01:17,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:01:17,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:01:17,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:01:17,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:01:17,512.512 INFO    ] time= 05/06/2026 05:01:17
[2026-06-05 05:01:17,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:01:17,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:01:17,597.597 INFO    ] No existing commands found in stream
[2026-06-05 05:01:22,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:01:22,612.612 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 05:01:26,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:01:26,328.328 INFO    ] Checking for system updates...
[2026-06-05 05:01:26,368.368 INFO    ] 200
[2026-06-05 05:01:26,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:26,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:01:26,433.433 INFO    ] No update needed
[2026-06-05 05:01:26,435.435 INFO    ] Checking for camera pi updates...
[2026-06-05 05:01:26,470.470 INFO    ] 200
[2026-06-05 05:01:26,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:26,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:01:26,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:01:26,567.567 INFO    ] No camera update needed
[2026-06-05 05:01:26,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:01:26,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:01:26,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:01:26,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:01:28,628.628 INFO    ] ================================================
[2026-06-05 05:01:28,643.643 INFO    ] Launching Daemon at Fri Jun  5 05:01:28 IST 2026
[2026-06-05 05:01:28,655.655 INFO    ] ================================================
[2026-06-05 05:01:29,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:01:29
[2026-06-05 05:01:29,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:01:30,098.098 INFO    ] Initializing speech engine...
[2026-06-05 05:01:30,109.109 INFO    ] 2026-06-05 05:01:30
[2026-06-05 05:01:30,362.362 INFO    ] 2026-06-05 05:01:30
[2026-06-05 05:01:30,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:01:30,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:01:30,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:01:30,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:01:30,752.752 INFO    ] time= 05/06/2026 05:01:30
[2026-06-05 05:01:30,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:01:30,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:01:30,878.878 INFO    ] No existing commands found in stream
[2026-06-05 05:01:35,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:01:35,894.894 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 05:01:37,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:01:37,462.462 INFO    ] Checking for system updates...
[2026-06-05 05:01:37,498.498 INFO    ] 200
[2026-06-05 05:01:37,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:37,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:01:37,556.556 INFO    ] No update needed
[2026-06-05 05:01:37,559.559 INFO    ] Checking for camera pi updates...
[2026-06-05 05:01:37,596.596 INFO    ] 200
[2026-06-05 05:01:37,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:37,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:01:37,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:01:37,683.683 INFO    ] No camera update needed
[2026-06-05 05:01:37,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:01:37,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:01:37,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:01:37,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:01:39,741.741 INFO    ] ================================================
[2026-06-05 05:01:39,757.757 INFO    ] Launching Daemon at Fri Jun  5 05:01:39 IST 2026
[2026-06-05 05:01:39,768.768 INFO    ] ================================================
[2026-06-05 05:01:40,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:01:40
[2026-06-05 05:01:40,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:01:41,235.235 INFO    ] Initializing speech engine...
[2026-06-05 05:01:41,244.244 INFO    ] 2026-06-05 05:01:41
[2026-06-05 05:01:41,542.542 INFO    ] 2026-06-05 05:01:41
[2026-06-05 05:01:41,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:01:41,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:01:41,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:01:41,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:01:41,928.928 INFO    ] time= 05/06/2026 05:01:41
[2026-06-05 05:01:41,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:01:41,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:01:42,054.054 INFO    ] No existing commands found in stream
[2026-06-05 05:01:47,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:01:47,071.071 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 05:01:50,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:01:50,656.656 INFO    ] Checking for system updates...
[2026-06-05 05:01:50,696.696 INFO    ] 200
[2026-06-05 05:01:50,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:50,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:01:50,760.760 INFO    ] No update needed
[2026-06-05 05:01:50,763.763 INFO    ] Checking for camera pi updates...
[2026-06-05 05:01:50,797.797 INFO    ] 200
[2026-06-05 05:01:50,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:01:50,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:01:50,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:01:50,885.885 INFO    ] No camera update needed
[2026-06-05 05:01:50,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:01:50,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:01:50,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:01:50,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:01:52,940.940 INFO    ] ================================================
[2026-06-05 05:01:52,956.956 INFO    ] Launching Daemon at Fri Jun  5 05:01:52 IST 2026
[2026-06-05 05:01:52,967.967 INFO    ] ================================================
[2026-06-05 05:01:53,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:01:53
[2026-06-05 05:01:54,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:01:54,523.523 INFO    ] Initializing speech engine...
[2026-06-05 05:01:54,538.538 INFO    ] 2026-06-05 05:01:54
[2026-06-05 05:01:54,827.827 INFO    ] 2026-06-05 05:01:54
[2026-06-05 05:01:54,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:01:55,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:01:55,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:01:55,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:01:55,295.295 INFO    ] time= 05/06/2026 05:01:55
[2026-06-05 05:01:55,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:01:55,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:01:55,428.428 INFO    ] No existing commands found in stream
[2026-06-05 05:02:00,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:02:00,448.448 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 05:02:00,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:02:00,988.988 INFO    ] Checking for system updates...
[2026-06-05 05:02:01,035.035 INFO    ] 200
[2026-06-05 05:02:01,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:01,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:02:01,110.110 INFO    ] No update needed
[2026-06-05 05:02:01,114.114 INFO    ] Checking for camera pi updates...
[2026-06-05 05:02:01,161.161 INFO    ] 200
[2026-06-05 05:02:01,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:01,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:02:01,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:02:01,253.253 INFO    ] No camera update needed
[2026-06-05 05:02:01,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:02:01,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:02:01,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:02:01,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:02:03,313.313 INFO    ] ================================================
[2026-06-05 05:02:03,335.335 INFO    ] Launching Daemon at Fri Jun  5 05:02:03 IST 2026
[2026-06-05 05:02:03,349.349 INFO    ] ================================================
[2026-06-05 05:02:04,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:02:04
[2026-06-05 05:02:05,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:02:05,550.550 INFO    ] Initializing speech engine...
[2026-06-05 05:02:05,560.560 INFO    ] 2026-06-05 05:02:05
[2026-06-05 05:02:05,901.901 INFO    ] 2026-06-05 05:02:05
[2026-06-05 05:02:05,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:02:06,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:02:06,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:02:06,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:02:06,389.389 INFO    ] time= 05/06/2026 05:02:06
[2026-06-05 05:02:06,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:02:06,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:02:06,606.606 INFO    ] No existing commands found in stream
[2026-06-05 05:02:11,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:02:11,630.630 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 05:02:12,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:02:12,492.492 INFO    ] Checking for system updates...
[2026-06-05 05:02:12,530.530 INFO    ] 200
[2026-06-05 05:02:12,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:12,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:02:12,590.590 INFO    ] No update needed
[2026-06-05 05:02:12,593.593 INFO    ] Checking for camera pi updates...
[2026-06-05 05:02:12,631.631 INFO    ] 200
[2026-06-05 05:02:12,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:12,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:02:12,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:02:12,738.738 INFO    ] No camera update needed
[2026-06-05 05:02:12,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:02:12,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:02:12,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:02:12,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:02:14,798.798 INFO    ] ================================================
[2026-06-05 05:02:14,923.923 INFO    ] Launching Daemon at Fri Jun  5 05:02:14 IST 2026
[2026-06-05 05:02:14,935.935 INFO    ] ================================================
[2026-06-05 05:02:15,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:02:15
[2026-06-05 05:02:16,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:02:16,473.473 INFO    ] Initializing speech engine...
[2026-06-05 05:02:16,482.482 INFO    ] 2026-06-05 05:02:16
[2026-06-05 05:02:16,781.781 INFO    ] 2026-06-05 05:02:16
[2026-06-05 05:02:16,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:02:16,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:02:16,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:02:17,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:02:17,135.135 INFO    ] time= 05/06/2026 05:02:17
[2026-06-05 05:02:17,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:02:17,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:02:17,218.218 INFO    ] No existing commands found in stream
[2026-06-05 05:02:22,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:02:22,232.232 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 05:02:25,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:02:25,110.110 INFO    ] Checking for system updates...
[2026-06-05 05:02:25,146.146 INFO    ] 200
[2026-06-05 05:02:25,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:25,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:02:25,206.206 INFO    ] No update needed
[2026-06-05 05:02:25,209.209 INFO    ] Checking for camera pi updates...
[2026-06-05 05:02:25,248.248 INFO    ] 200
[2026-06-05 05:02:25,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:25,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:02:25,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:02:25,347.347 INFO    ] No camera update needed
[2026-06-05 05:02:25,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:02:25,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:02:25,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:02:25,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:02:27,404.404 INFO    ] ================================================
[2026-06-05 05:02:27,420.420 INFO    ] Launching Daemon at Fri Jun  5 05:02:27 IST 2026
[2026-06-05 05:02:27,432.432 INFO    ] ================================================
[2026-06-05 05:02:28,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:02:28
[2026-06-05 05:02:28,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:02:29,022.022 INFO    ] Initializing speech engine...
[2026-06-05 05:02:29,035.035 INFO    ] 2026-06-05 05:02:29
[2026-06-05 05:02:29,345.345 INFO    ] 2026-06-05 05:02:29
[2026-06-05 05:02:29,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:02:29,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:02:29,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:02:29,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:02:29,854.854 INFO    ] time= 05/06/2026 05:02:29
[2026-06-05 05:02:29,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:02:29,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:02:30,010.010 INFO    ] No existing commands found in stream
[2026-06-05 05:02:35,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:02:35,030.030 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 05:02:36,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:02:36,127.127 INFO    ] Checking for system updates...
[2026-06-05 05:02:36,168.168 INFO    ] 200
[2026-06-05 05:02:36,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:36,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:02:36,228.228 INFO    ] No update needed
[2026-06-05 05:02:36,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 05:02:36,268.268 INFO    ] 200
[2026-06-05 05:02:36,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:36,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:02:36,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:02:36,363.363 INFO    ] No camera update needed
[2026-06-05 05:02:36,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:02:36,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:02:36,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:02:36,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:02:38,420.420 INFO    ] ================================================
[2026-06-05 05:02:38,437.437 INFO    ] Launching Daemon at Fri Jun  5 05:02:38 IST 2026
[2026-06-05 05:02:38,448.448 INFO    ] ================================================
[2026-06-05 05:02:39,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:02:39
[2026-06-05 05:02:39,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:02:39,991.991 INFO    ] Initializing speech engine...
[2026-06-05 05:02:40,004.004 INFO    ] 2026-06-05 05:02:39
[2026-06-05 05:02:40,312.312 INFO    ] 2026-06-05 05:02:40
[2026-06-05 05:02:40,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:02:40,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:02:40,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:02:40,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:02:40,816.816 INFO    ] time= 05/06/2026 05:02:40
[2026-06-05 05:02:40,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:02:40,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:02:40,970.970 INFO    ] No existing commands found in stream
[2026-06-05 05:02:45,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:02:45,990.990 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 05:02:49,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:02:49,473.473 INFO    ] Checking for system updates...
[2026-06-05 05:02:49,511.511 INFO    ] 200
[2026-06-05 05:02:49,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:49,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:02:49,579.579 INFO    ] No update needed
[2026-06-05 05:02:49,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 05:02:49,617.617 INFO    ] 200
[2026-06-05 05:02:49,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:02:49,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:02:49,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:02:49,710.710 INFO    ] No camera update needed
[2026-06-05 05:02:49,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:02:49,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:02:49,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:02:49,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:02:51,774.774 INFO    ] ================================================
[2026-06-05 05:02:51,790.790 INFO    ] Launching Daemon at Fri Jun  5 05:02:51 IST 2026
[2026-06-05 05:02:51,802.802 INFO    ] ================================================
[2026-06-05 05:02:52,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:02:52
[2026-06-05 05:02:53,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:02:53,405.405 INFO    ] Initializing speech engine...
[2026-06-05 05:02:53,414.414 INFO    ] 2026-06-05 05:02:53
[2026-06-05 05:02:53,703.703 INFO    ] 2026-06-05 05:02:53
[2026-06-05 05:02:53,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:02:53,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:02:53,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:02:54,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:02:54,174.174 INFO    ] time= 05/06/2026 05:02:54
[2026-06-05 05:02:54,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:02:54,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:02:54,311.311 INFO    ] No existing commands found in stream
[2026-06-05 05:02:59,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:02:59,328.328 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 05:03:01,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:03:01,823.823 INFO    ] Checking for system updates...
[2026-06-05 05:03:01,922.922 INFO    ] 200
[2026-06-05 05:03:01,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:02,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:03:02,050.050 INFO    ] No update needed
[2026-06-05 05:03:02,054.054 INFO    ] Checking for camera pi updates...
[2026-06-05 05:03:02,121.121 INFO    ] 200
[2026-06-05 05:03:02,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:02,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:03:02,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:03:02,252.252 INFO    ] No camera update needed
[2026-06-05 05:03:02,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:03:02,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:03:02,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:03:02,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:03:04,328.328 INFO    ] ================================================
[2026-06-05 05:03:04,344.344 INFO    ] Launching Daemon at Fri Jun  5 05:03:04 IST 2026
[2026-06-05 05:03:04,355.355 INFO    ] ================================================
[2026-06-05 05:03:04,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:03:04
[2026-06-05 05:03:05,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:03:05,756.756 INFO    ] Initializing speech engine...
[2026-06-05 05:03:05,771.771 INFO    ] 2026-06-05 05:03:05
[2026-06-05 05:03:06,037.037 INFO    ] 2026-06-05 05:03:06
[2026-06-05 05:03:06,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:03:06,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:03:06,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:03:06,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:03:06,414.414 INFO    ] time= 05/06/2026 05:03:06
[2026-06-05 05:03:06,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:03:06,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:03:06,588.588 INFO    ] No existing commands found in stream
[2026-06-05 05:03:11,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:03:11,617.617 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 05:03:12,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:03:12,754.754 INFO    ] Checking for system updates...
[2026-06-05 05:03:12,797.797 INFO    ] 200
[2026-06-05 05:03:12,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:12,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:03:12,858.858 INFO    ] No update needed
[2026-06-05 05:03:12,861.861 INFO    ] Checking for camera pi updates...
[2026-06-05 05:03:12,898.898 INFO    ] 200
[2026-06-05 05:03:12,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:12,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:03:12,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:03:12,997.997 INFO    ] No camera update needed
[2026-06-05 05:03:12,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:03:13,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:03:13,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:03:13,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:03:15,053.053 INFO    ] ================================================
[2026-06-05 05:03:15,069.069 INFO    ] Launching Daemon at Fri Jun  5 05:03:15 IST 2026
[2026-06-05 05:03:15,079.079 INFO    ] ================================================
[2026-06-05 05:03:15,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:03:15
[2026-06-05 05:03:16,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:03:16,524.524 INFO    ] Initializing speech engine...
[2026-06-05 05:03:16,529.529 INFO    ] 2026-06-05 05:03:16
[2026-06-05 05:03:16,780.780 INFO    ] 2026-06-05 05:03:16
[2026-06-05 05:03:16,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:03:17,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:03:17,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:03:17,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:03:17,230.230 INFO    ] time= 05/06/2026 05:03:17
[2026-06-05 05:03:17,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:03:17,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:03:17,415.415 INFO    ] No existing commands found in stream
[2026-06-05 05:03:22,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:03:22,429.429 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 05:03:25,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:03:25,977.977 INFO    ] Checking for system updates...
[2026-06-05 05:03:26,013.013 INFO    ] 200
[2026-06-05 05:03:26,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:26,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:03:26,078.078 INFO    ] No update needed
[2026-06-05 05:03:26,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 05:03:26,114.114 INFO    ] 200
[2026-06-05 05:03:26,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:26,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:03:26,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:03:26,211.211 INFO    ] No camera update needed
[2026-06-05 05:03:26,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:03:26,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:03:26,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:03:26,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:03:28,267.267 INFO    ] ================================================
[2026-06-05 05:03:28,283.283 INFO    ] Launching Daemon at Fri Jun  5 05:03:28 IST 2026
[2026-06-05 05:03:28,294.294 INFO    ] ================================================
[2026-06-05 05:03:28,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:03:28
[2026-06-05 05:03:29,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:03:29,894.894 INFO    ] Initializing speech engine...
[2026-06-05 05:03:29,903.903 INFO    ] 2026-06-05 05:03:29
[2026-06-05 05:03:30,192.192 INFO    ] 2026-06-05 05:03:30
[2026-06-05 05:03:30,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:03:30,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:03:30,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:03:30,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:03:30,664.664 INFO    ] time= 05/06/2026 05:03:30
[2026-06-05 05:03:30,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:03:30,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:03:30,866.866 INFO    ] No existing commands found in stream
[2026-06-05 05:03:35,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:03:35,892.892 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 05:03:39,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:03:39,779.779 INFO    ] Checking for system updates...
[2026-06-05 05:03:39,817.817 INFO    ] 200
[2026-06-05 05:03:39,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:39,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:03:39,877.877 INFO    ] No update needed
[2026-06-05 05:03:39,880.880 INFO    ] Checking for camera pi updates...
[2026-06-05 05:03:39,915.915 INFO    ] 200
[2026-06-05 05:03:39,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:39,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:03:40,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:03:40,011.011 INFO    ] No camera update needed
[2026-06-05 05:03:40,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:03:40,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:03:40,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:03:40,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:03:42,071.071 INFO    ] ================================================
[2026-06-05 05:03:42,087.087 INFO    ] Launching Daemon at Fri Jun  5 05:03:42 IST 2026
[2026-06-05 05:03:42,097.097 INFO    ] ================================================
[2026-06-05 05:03:42,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:03:42
[2026-06-05 05:03:43,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:03:43,539.539 INFO    ] Initializing speech engine...
[2026-06-05 05:03:43,547.547 INFO    ] 2026-06-05 05:03:43
[2026-06-05 05:03:43,842.842 INFO    ] 2026-06-05 05:03:43
[2026-06-05 05:03:43,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:03:44,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:03:44,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:03:44,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:03:44,355.355 INFO    ] time= 05/06/2026 05:03:44
[2026-06-05 05:03:44,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:03:44,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:03:44,538.538 INFO    ] No existing commands found in stream
[2026-06-05 05:03:49,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:03:49,553.553 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 05:03:51,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:03:51,456.456 INFO    ] Checking for system updates...
[2026-06-05 05:03:51,491.491 INFO    ] 200
[2026-06-05 05:03:51,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:51,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:03:51,550.550 INFO    ] No update needed
[2026-06-05 05:03:51,553.553 INFO    ] Checking for camera pi updates...
[2026-06-05 05:03:51,587.587 INFO    ] 200
[2026-06-05 05:03:51,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:03:51,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:03:51,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:03:51,675.675 INFO    ] No camera update needed
[2026-06-05 05:03:51,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:03:51,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:03:51,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:03:51,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:03:53,732.732 INFO    ] ================================================
[2026-06-05 05:03:53,748.748 INFO    ] Launching Daemon at Fri Jun  5 05:03:53 IST 2026
[2026-06-05 05:03:53,759.759 INFO    ] ================================================
[2026-06-05 05:03:54,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:03:54
[2026-06-05 05:03:54,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:03:55,199.199 INFO    ] Initializing speech engine...
[2026-06-05 05:03:55,215.215 INFO    ] 2026-06-05 05:03:55
[2026-06-05 05:03:55,490.490 INFO    ] 2026-06-05 05:03:55
[2026-06-05 05:03:55,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:03:55,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:03:55,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:03:55,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:03:55,908.908 INFO    ] time= 05/06/2026 05:03:55
[2026-06-05 05:03:55,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:03:55,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:03:55,995.995 INFO    ] No existing commands found in stream
[2026-06-05 05:04:01,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:04:01,013.013 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 05:04:04,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:04:04,133.133 INFO    ] Checking for system updates...
[2026-06-05 05:04:04,169.169 INFO    ] 200
[2026-06-05 05:04:04,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:04,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:04,233.233 INFO    ] No update needed
[2026-06-05 05:04:04,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 05:04:04,270.270 INFO    ] 200
[2026-06-05 05:04:04,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:04,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:04:04,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:04,348.348 INFO    ] No camera update needed
[2026-06-05 05:04:04,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:04:04,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:04:04,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:04:04,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:04:06,404.404 INFO    ] ================================================
[2026-06-05 05:04:06,420.420 INFO    ] Launching Daemon at Fri Jun  5 05:04:06 IST 2026
[2026-06-05 05:04:06,431.431 INFO    ] ================================================
[2026-06-05 05:04:07,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:04:07
[2026-06-05 05:04:07,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:04:07,994.994 INFO    ] Initializing speech engine...
[2026-06-05 05:04:08,002.002 INFO    ] 2026-06-05 05:04:07
[2026-06-05 05:04:08,272.272 INFO    ] 2026-06-05 05:04:08
[2026-06-05 05:04:08,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:04:08,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:04:08,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:04:08,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:04:08,746.746 INFO    ] time= 05/06/2026 05:04:08
[2026-06-05 05:04:08,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:04:08,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:04:08,914.914 INFO    ] No existing commands found in stream
[2026-06-05 05:04:13,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:04:13,930.930 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 05:04:16,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:04:16,588.588 INFO    ] Checking for system updates...
[2026-06-05 05:04:16,624.624 INFO    ] 200
[2026-06-05 05:04:16,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:16,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:16,684.684 INFO    ] No update needed
[2026-06-05 05:04:16,687.687 INFO    ] Checking for camera pi updates...
[2026-06-05 05:04:16,721.721 INFO    ] 200
[2026-06-05 05:04:16,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:16,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:04:16,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:16,815.815 INFO    ] No camera update needed
[2026-06-05 05:04:16,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:04:16,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:04:16,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:04:16,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:04:18,870.870 INFO    ] ================================================
[2026-06-05 05:04:18,885.885 INFO    ] Launching Daemon at Fri Jun  5 05:04:18 IST 2026
[2026-06-05 05:04:18,896.896 INFO    ] ================================================
[2026-06-05 05:04:19,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:04:19
[2026-06-05 05:04:20,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:04:20,365.365 INFO    ] Initializing speech engine...
[2026-06-05 05:04:20,375.375 INFO    ] 2026-06-05 05:04:20
[2026-06-05 05:04:20,681.681 INFO    ] 2026-06-05 05:04:20
[2026-06-05 05:04:20,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:04:20,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:04:20,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:04:21,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:04:21,061.061 INFO    ] time= 05/06/2026 05:04:21
[2026-06-05 05:04:21,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:04:21,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:04:21,187.187 INFO    ] No existing commands found in stream
[2026-06-05 05:04:26,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:04:26,203.203 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 05:04:28,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:04:28,385.385 INFO    ] Checking for system updates...
[2026-06-05 05:04:28,421.421 INFO    ] 200
[2026-06-05 05:04:28,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:28,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:28,480.480 INFO    ] No update needed
[2026-06-05 05:04:28,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 05:04:28,516.516 INFO    ] 200
[2026-06-05 05:04:28,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:28,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:04:28,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:28,606.606 INFO    ] No camera update needed
[2026-06-05 05:04:28,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:04:28,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:04:28,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:04:28,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:04:30,662.662 INFO    ] ================================================
[2026-06-05 05:04:30,678.678 INFO    ] Launching Daemon at Fri Jun  5 05:04:30 IST 2026
[2026-06-05 05:04:30,689.689 INFO    ] ================================================
[2026-06-05 05:04:31,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:04:31
[2026-06-05 05:04:31,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:04:32,306.306 INFO    ] Initializing speech engine...
[2026-06-05 05:04:32,320.320 INFO    ] 2026-06-05 05:04:32
[2026-06-05 05:04:32,627.627 INFO    ] 2026-06-05 05:04:32
[2026-06-05 05:04:32,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:04:32,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:04:32,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:04:33,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:04:33,117.117 INFO    ] time= 05/06/2026 05:04:33
[2026-06-05 05:04:33,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:04:33,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:04:33,305.305 INFO    ] No existing commands found in stream
[2026-06-05 05:04:38,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:04:38,340.340 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 05:04:42,308.308 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:04:42,310.310 INFO    ] Checking for system updates...
[2026-06-05 05:04:42,347.347 INFO    ] 200
[2026-06-05 05:04:42,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:42,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:42,404.404 INFO    ] No update needed
[2026-06-05 05:04:42,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 05:04:42,444.444 INFO    ] 200
[2026-06-05 05:04:42,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:42,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:04:42,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:42,651.651 INFO    ] No camera update needed
[2026-06-05 05:04:42,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:04:42,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:04:42,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:04:42,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:04:44,710.710 INFO    ] ================================================
[2026-06-05 05:04:44,729.729 INFO    ] Launching Daemon at Fri Jun  5 05:04:44 IST 2026
[2026-06-05 05:04:44,740.740 INFO    ] ================================================
[2026-06-05 05:04:45,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:04:45
[2026-06-05 05:04:46,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:04:46,382.382 INFO    ] Initializing speech engine...
[2026-06-05 05:04:46,390.390 INFO    ] 2026-06-05 05:04:46
[2026-06-05 05:04:46,676.676 INFO    ] 2026-06-05 05:04:46
[2026-06-05 05:04:46,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:04:46,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:04:46,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:04:47,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:04:47,229.229 INFO    ] time= 05/06/2026 05:04:47
[2026-06-05 05:04:47,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:04:47,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:04:47,379.379 INFO    ] No existing commands found in stream
[2026-06-05 05:04:52,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:04:52,406.406 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 05:04:54,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:04:54,953.953 INFO    ] Checking for system updates...
[2026-06-05 05:04:54,994.994 INFO    ] 200
[2026-06-05 05:04:54,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:55,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:55,058.058 INFO    ] No update needed
[2026-06-05 05:04:55,061.061 INFO    ] Checking for camera pi updates...
[2026-06-05 05:04:55,096.096 INFO    ] 200
[2026-06-05 05:04:55,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:04:55,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:04:55,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:04:55,177.177 INFO    ] No camera update needed
[2026-06-05 05:04:55,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:04:55,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:04:55,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:04:55,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:04:57,237.237 INFO    ] ================================================
[2026-06-05 05:04:57,252.252 INFO    ] Launching Daemon at Fri Jun  5 05:04:57 IST 2026
[2026-06-05 05:04:57,263.263 INFO    ] ================================================
[2026-06-05 05:04:57,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:04:57
[2026-06-05 05:04:58,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:04:58,803.803 INFO    ] Initializing speech engine...
[2026-06-05 05:04:58,811.811 INFO    ] 2026-06-05 05:04:58
[2026-06-05 05:04:59,112.112 INFO    ] 2026-06-05 05:04:59
[2026-06-05 05:04:59,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:04:59,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:04:59,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:04:59,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:04:59,496.496 INFO    ] time= 05/06/2026 05:04:59
[2026-06-05 05:04:59,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:04:59,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:04:59,620.620 INFO    ] No existing commands found in stream
[2026-06-05 05:05:04,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:05:04,636.636 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 05:05:07,611.611 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:05:07,614.614 INFO    ] Checking for system updates...
[2026-06-05 05:05:07,651.651 INFO    ] 200
[2026-06-05 05:05:07,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:07,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:05:07,719.719 INFO    ] No update needed
[2026-06-05 05:05:07,721.721 INFO    ] Checking for camera pi updates...
[2026-06-05 05:05:07,755.755 INFO    ] 200
[2026-06-05 05:05:07,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:07,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:05:07,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:05:07,849.849 INFO    ] No camera update needed
[2026-06-05 05:05:07,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:05:07,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:05:07,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:05:07,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:05:09,906.906 INFO    ] ================================================
[2026-06-05 05:05:09,921.921 INFO    ] Launching Daemon at Fri Jun  5 05:05:09 IST 2026
[2026-06-05 05:05:09,932.932 INFO    ] ================================================
[2026-06-05 05:05:10,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:05:10
[2026-06-05 05:05:11,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:05:11,550.550 INFO    ] Initializing speech engine...
[2026-06-05 05:05:11,557.557 INFO    ] 2026-06-05 05:05:11
[2026-06-05 05:05:11,834.834 INFO    ] 2026-06-05 05:05:11
[2026-06-05 05:05:11,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:05:12,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:05:12,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:05:12,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:05:12,338.338 INFO    ] time= 05/06/2026 05:05:12
[2026-06-05 05:05:12,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:05:12,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:05:12,522.522 INFO    ] No existing commands found in stream
[2026-06-05 05:05:17,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:05:17,548.548 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 05:05:20,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:05:20,377.377 INFO    ] Checking for system updates...
[2026-06-05 05:05:20,414.414 INFO    ] 200
[2026-06-05 05:05:20,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:20,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:05:20,474.474 INFO    ] No update needed
[2026-06-05 05:05:20,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 05:05:20,512.512 INFO    ] 200
[2026-06-05 05:05:20,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:20,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:05:20,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:05:20,611.611 INFO    ] No camera update needed
[2026-06-05 05:05:20,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:05:20,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:05:20,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:05:20,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:05:22,670.670 INFO    ] ================================================
[2026-06-05 05:05:22,685.685 INFO    ] Launching Daemon at Fri Jun  5 05:05:22 IST 2026
[2026-06-05 05:05:22,696.696 INFO    ] ================================================
[2026-06-05 05:05:23,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:05:23
[2026-06-05 05:05:23,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:05:24,185.185 INFO    ] Initializing speech engine...
[2026-06-05 05:05:24,191.191 INFO    ] 2026-06-05 05:05:24
[2026-06-05 05:05:24,451.451 INFO    ] 2026-06-05 05:05:24
[2026-06-05 05:05:24,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:05:24,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:05:24,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:05:24,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:05:24,918.918 INFO    ] time= 05/06/2026 05:05:24
[2026-06-05 05:05:24,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:05:25,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:05:25,076.076 INFO    ] No existing commands found in stream
[2026-06-05 05:05:30,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:05:30,090.090 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 05:05:32,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:05:32,753.753 INFO    ] Checking for system updates...
[2026-06-05 05:05:32,794.794 INFO    ] 200
[2026-06-05 05:05:32,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:32,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:05:32,865.865 INFO    ] No update needed
[2026-06-05 05:05:32,867.867 INFO    ] Checking for camera pi updates...
[2026-06-05 05:05:32,904.904 INFO    ] 200
[2026-06-05 05:05:32,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:32,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:05:32,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:05:32,991.991 INFO    ] No camera update needed
[2026-06-05 05:05:32,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:05:32,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:05:33,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:05:33,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:05:35,051.051 INFO    ] ================================================
[2026-06-05 05:05:35,067.067 INFO    ] Launching Daemon at Fri Jun  5 05:05:35 IST 2026
[2026-06-05 05:05:35,078.078 INFO    ] ================================================
[2026-06-05 05:05:35,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:05:35
[2026-06-05 05:05:36,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:05:36,495.495 INFO    ] Initializing speech engine...
[2026-06-05 05:05:36,510.510 INFO    ] 2026-06-05 05:05:36
[2026-06-05 05:05:36,778.778 INFO    ] 2026-06-05 05:05:36
[2026-06-05 05:05:36,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:05:36,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:05:37,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:05:37,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:05:37,163.163 INFO    ] time= 05/06/2026 05:05:37
[2026-06-05 05:05:37,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:05:37,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:05:37,242.242 INFO    ] No existing commands found in stream
[2026-06-05 05:05:42,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:05:42,260.260 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 05:05:45,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:05:45,524.524 INFO    ] Checking for system updates...
[2026-06-05 05:05:45,560.560 INFO    ] 200
[2026-06-05 05:05:45,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:45,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:05:45,626.626 INFO    ] No update needed
[2026-06-05 05:05:45,628.628 INFO    ] Checking for camera pi updates...
[2026-06-05 05:05:45,666.666 INFO    ] 200
[2026-06-05 05:05:45,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:45,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:05:45,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:05:45,757.757 INFO    ] No camera update needed
[2026-06-05 05:05:45,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:05:45,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:05:45,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:05:45,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:05:47,814.814 INFO    ] ================================================
[2026-06-05 05:05:47,829.829 INFO    ] Launching Daemon at Fri Jun  5 05:05:47 IST 2026
[2026-06-05 05:05:47,840.840 INFO    ] ================================================
[2026-06-05 05:05:48,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:05:48
[2026-06-05 05:05:48,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:05:49,257.257 INFO    ] Initializing speech engine...
[2026-06-05 05:05:49,273.273 INFO    ] 2026-06-05 05:05:49
[2026-06-05 05:05:49,560.560 INFO    ] 2026-06-05 05:05:49
[2026-06-05 05:05:49,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:05:49,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:05:49,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:05:49,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:05:49,941.941 INFO    ] time= 05/06/2026 05:05:49
[2026-06-05 05:05:49,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:05:49,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:05:50,068.068 INFO    ] No existing commands found in stream
[2026-06-05 05:05:55,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:05:55,081.081 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 05:05:56,680.680 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:05:56,682.682 INFO    ] Checking for system updates...
[2026-06-05 05:05:56,718.718 INFO    ] 200
[2026-06-05 05:05:56,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:56,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:05:56,780.780 INFO    ] No update needed
[2026-06-05 05:05:56,783.783 INFO    ] Checking for camera pi updates...
[2026-06-05 05:05:56,817.817 INFO    ] 200
[2026-06-05 05:05:56,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:05:56,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:05:56,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:05:56,904.904 INFO    ] No camera update needed
[2026-06-05 05:05:56,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:05:56,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:05:56,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:05:56,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:05:58,959.959 INFO    ] ================================================
[2026-06-05 05:05:58,975.975 INFO    ] Launching Daemon at Fri Jun  5 05:05:58 IST 2026
[2026-06-05 05:05:58,986.986 INFO    ] ================================================
[2026-06-05 05:05:59,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:05:59
[2026-06-05 05:06:00,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:06:00,408.408 INFO    ] Initializing speech engine...
[2026-06-05 05:06:00,417.417 INFO    ] 2026-06-05 05:06:00
[2026-06-05 05:06:00,712.712 INFO    ] 2026-06-05 05:06:00
[2026-06-05 05:06:00,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:06:00,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:06:00,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:06:01,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:06:01,134.134 INFO    ] time= 05/06/2026 05:06:01
[2026-06-05 05:06:01,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:06:01,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:06:01,221.221 INFO    ] No existing commands found in stream
[2026-06-05 05:06:06,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:06:06,236.236 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 05:06:10,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:06:10,399.399 INFO    ] Checking for system updates...
[2026-06-05 05:06:10,438.438 INFO    ] 200
[2026-06-05 05:06:10,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:10,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:06:10,495.495 INFO    ] No update needed
[2026-06-05 05:06:10,498.498 INFO    ] Checking for camera pi updates...
[2026-06-05 05:06:10,532.532 INFO    ] 200
[2026-06-05 05:06:10,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:10,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:06:10,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:06:10,631.631 INFO    ] No camera update needed
[2026-06-05 05:06:10,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:06:10,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:06:10,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:06:10,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:06:12,686.686 INFO    ] ================================================
[2026-06-05 05:06:12,701.701 INFO    ] Launching Daemon at Fri Jun  5 05:06:12 IST 2026
[2026-06-05 05:06:12,711.711 INFO    ] ================================================
[2026-06-05 05:06:13,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:06:13
[2026-06-05 05:06:13,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:06:14,156.156 INFO    ] Initializing speech engine...
[2026-06-05 05:06:14,172.172 INFO    ] 2026-06-05 05:06:14
[2026-06-05 05:06:14,437.437 INFO    ] 2026-06-05 05:06:14
[2026-06-05 05:06:14,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:06:14,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:06:14,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:06:14,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:06:14,818.818 INFO    ] time= 05/06/2026 05:06:14
[2026-06-05 05:06:14,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:06:14,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:06:14,955.955 INFO    ] No existing commands found in stream
[2026-06-05 05:06:19,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:06:19,971.971 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 05:06:23,673.673 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:06:23,676.676 INFO    ] Checking for system updates...
[2026-06-05 05:06:23,715.715 INFO    ] 200
[2026-06-05 05:06:23,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:23,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:06:23,779.779 INFO    ] No update needed
[2026-06-05 05:06:23,781.781 INFO    ] Checking for camera pi updates...
[2026-06-05 05:06:23,815.815 INFO    ] 200
[2026-06-05 05:06:23,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:23,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:06:23,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:06:23,905.905 INFO    ] No camera update needed
[2026-06-05 05:06:23,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:06:23,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:06:23,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:06:23,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:06:25,961.961 INFO    ] ================================================
[2026-06-05 05:06:25,979.979 INFO    ] Launching Daemon at Fri Jun  5 05:06:25 IST 2026
[2026-06-05 05:06:25,990.990 INFO    ] ================================================
[2026-06-05 05:06:26,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:06:26
[2026-06-05 05:06:27,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:06:27,469.469 INFO    ] Initializing speech engine...
[2026-06-05 05:06:27,483.483 INFO    ] 2026-06-05 05:06:27
[2026-06-05 05:06:27,797.797 INFO    ] 2026-06-05 05:06:27
[2026-06-05 05:06:27,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:06:28,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:06:28,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:06:28,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:06:28,319.319 INFO    ] time= 05/06/2026 05:06:28
[2026-06-05 05:06:28,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:06:28,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:06:28,451.451 INFO    ] No existing commands found in stream
[2026-06-05 05:06:33,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:06:33,491.491 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 05:06:34,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:06:34,031.031 INFO    ] Checking for system updates...
[2026-06-05 05:06:34,069.069 INFO    ] 200
[2026-06-05 05:06:34,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:34,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:06:34,129.129 INFO    ] No update needed
[2026-06-05 05:06:34,132.132 INFO    ] Checking for camera pi updates...
[2026-06-05 05:06:34,167.167 INFO    ] 200
[2026-06-05 05:06:34,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:34,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:06:34,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:06:34,260.260 INFO    ] No camera update needed
[2026-06-05 05:06:34,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:06:34,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:06:34,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:06:34,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:06:36,326.326 INFO    ] ================================================
[2026-06-05 05:06:36,341.341 INFO    ] Launching Daemon at Fri Jun  5 05:06:36 IST 2026
[2026-06-05 05:06:36,352.352 INFO    ] ================================================
[2026-06-05 05:06:36,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:06:36
[2026-06-05 05:06:37,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:06:37,813.813 INFO    ] Initializing speech engine...
[2026-06-05 05:06:37,835.835 INFO    ] 2026-06-05 05:06:37
[2026-06-05 05:06:38,087.087 INFO    ] 2026-06-05 05:06:38
[2026-06-05 05:06:38,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:06:38,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:06:38,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:06:38,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:06:38,556.556 INFO    ] time= 05/06/2026 05:06:38
[2026-06-05 05:06:38,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:06:38,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:06:38,702.702 INFO    ] No existing commands found in stream
[2026-06-05 05:06:43,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:06:43,717.717 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 05:06:47,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:06:47,756.756 INFO    ] Checking for system updates...
[2026-06-05 05:06:47,793.793 INFO    ] 200
[2026-06-05 05:06:47,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:47,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:06:47,861.861 INFO    ] No update needed
[2026-06-05 05:06:47,865.865 INFO    ] Checking for camera pi updates...
[2026-06-05 05:06:47,902.902 INFO    ] 200
[2026-06-05 05:06:47,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:47,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:06:48,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:06:48,098.098 INFO    ] No camera update needed
[2026-06-05 05:06:48,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:06:48,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:06:48,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:06:48,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:06:50,154.154 INFO    ] ================================================
[2026-06-05 05:06:50,169.169 INFO    ] Launching Daemon at Fri Jun  5 05:06:50 IST 2026
[2026-06-05 05:06:50,180.180 INFO    ] ================================================
[2026-06-05 05:06:50,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:06:50
[2026-06-05 05:06:51,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:06:51,604.604 INFO    ] Initializing speech engine...
[2026-06-05 05:06:51,614.614 INFO    ] 2026-06-05 05:06:51
[2026-06-05 05:06:51,858.858 INFO    ] 2026-06-05 05:06:51
[2026-06-05 05:06:51,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:06:52,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:06:52,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:06:52,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:06:52,355.355 INFO    ] time= 05/06/2026 05:06:52
[2026-06-05 05:06:52,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:06:52,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:06:52,532.532 INFO    ] No existing commands found in stream
[2026-06-05 05:06:57,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:06:57,562.562 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 05:06:59,763.763 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:06:59,766.766 INFO    ] Checking for system updates...
[2026-06-05 05:06:59,802.802 INFO    ] 200
[2026-06-05 05:06:59,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:59,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:06:59,866.866 INFO    ] No update needed
[2026-06-05 05:06:59,868.868 INFO    ] Checking for camera pi updates...
[2026-06-05 05:06:59,905.905 INFO    ] 200
[2026-06-05 05:06:59,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:06:59,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:06:59,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:06:59,996.996 INFO    ] No camera update needed
[2026-06-05 05:06:59,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:07:00,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:07:00,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:07:00,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:07:02,062.062 INFO    ] ================================================
[2026-06-05 05:07:02,102.102 INFO    ] Launching Daemon at Fri Jun  5 05:07:02 IST 2026
[2026-06-05 05:07:02,123.123 INFO    ] ================================================
[2026-06-05 05:07:02,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:07:02
[2026-06-05 05:07:03,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:07:03,841.841 INFO    ] Initializing speech engine...
[2026-06-05 05:07:03,851.851 INFO    ] 2026-06-05 05:07:03
[2026-06-05 05:07:04,098.098 INFO    ] 2026-06-05 05:07:04
[2026-06-05 05:07:04,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:07:04,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:07:04,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:07:04,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:07:04,534.534 INFO    ] time= 05/06/2026 05:07:04
[2026-06-05 05:07:04,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:07:04,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:07:04,718.718 INFO    ] No existing commands found in stream
[2026-06-05 05:07:09,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:07:09,733.733 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 05:07:10,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:07:10,584.584 INFO    ] Checking for system updates...
[2026-06-05 05:07:10,626.626 INFO    ] 200
[2026-06-05 05:07:10,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:10,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:07:10,690.690 INFO    ] No update needed
[2026-06-05 05:07:10,693.693 INFO    ] Checking for camera pi updates...
[2026-06-05 05:07:10,726.726 INFO    ] 200
[2026-06-05 05:07:10,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:10,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:07:10,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:07:10,799.799 INFO    ] No camera update needed
[2026-06-05 05:07:10,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:07:10,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:07:10,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:07:10,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:07:12,857.857 INFO    ] ================================================
[2026-06-05 05:07:12,872.872 INFO    ] Launching Daemon at Fri Jun  5 05:07:12 IST 2026
[2026-06-05 05:07:12,883.883 INFO    ] ================================================
[2026-06-05 05:07:13,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:07:13
[2026-06-05 05:07:14,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:07:14,353.353 INFO    ] Initializing speech engine...
[2026-06-05 05:07:14,358.358 INFO    ] 2026-06-05 05:07:14
[2026-06-05 05:07:14,618.618 INFO    ] 2026-06-05 05:07:14
[2026-06-05 05:07:14,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:07:14,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:07:14,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:07:15,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:07:15,104.104 INFO    ] time= 05/06/2026 05:07:15
[2026-06-05 05:07:15,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:07:15,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:07:15,233.233 INFO    ] No existing commands found in stream
[2026-06-05 05:07:20,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:07:20,247.247 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 05:07:21,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:07:21,063.063 INFO    ] Checking for system updates...
[2026-06-05 05:07:21,100.100 INFO    ] 200
[2026-06-05 05:07:21,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:21,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:07:21,157.157 INFO    ] No update needed
[2026-06-05 05:07:21,160.160 INFO    ] Checking for camera pi updates...
[2026-06-05 05:07:21,194.194 INFO    ] 200
[2026-06-05 05:07:21,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:21,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:07:21,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:07:21,298.298 INFO    ] No camera update needed
[2026-06-05 05:07:21,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:07:21,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:07:21,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:07:21,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:07:23,354.354 INFO    ] ================================================
[2026-06-05 05:07:23,371.371 INFO    ] Launching Daemon at Fri Jun  5 05:07:23 IST 2026
[2026-06-05 05:07:23,386.386 INFO    ] ================================================
[2026-06-05 05:07:23,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:07:23
[2026-06-05 05:07:24,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:07:24,809.809 INFO    ] Initializing speech engine...
[2026-06-05 05:07:24,819.819 INFO    ] 2026-06-05 05:07:24
[2026-06-05 05:07:25,079.079 INFO    ] 2026-06-05 05:07:25
[2026-06-05 05:07:25,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:07:25,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:07:25,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:07:25,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:07:25,540.540 INFO    ] time= 05/06/2026 05:07:25
[2026-06-05 05:07:25,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:07:25,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:07:25,681.681 INFO    ] No existing commands found in stream
[2026-06-05 05:07:30,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:07:30,696.696 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 05:07:32,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:07:32,127.127 INFO    ] Checking for system updates...
[2026-06-05 05:07:32,171.171 INFO    ] 200
[2026-06-05 05:07:32,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:32,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:07:32,233.233 INFO    ] No update needed
[2026-06-05 05:07:32,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 05:07:32,271.271 INFO    ] 200
[2026-06-05 05:07:32,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:32,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:07:32,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:07:32,362.362 INFO    ] No camera update needed
[2026-06-05 05:07:32,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:07:32,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:07:32,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:07:32,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:07:34,421.421 INFO    ] ================================================
[2026-06-05 05:07:34,437.437 INFO    ] Launching Daemon at Fri Jun  5 05:07:34 IST 2026
[2026-06-05 05:07:34,449.449 INFO    ] ================================================
[2026-06-05 05:07:35,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:07:35
[2026-06-05 05:07:35,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:07:35,913.913 INFO    ] Initializing speech engine...
[2026-06-05 05:07:35,923.923 INFO    ] 2026-06-05 05:07:35
[2026-06-05 05:07:36,182.182 INFO    ] 2026-06-05 05:07:36
[2026-06-05 05:07:36,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:07:36,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:07:36,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:07:36,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:07:36,640.640 INFO    ] time= 05/06/2026 05:07:36
[2026-06-05 05:07:36,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:07:36,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:07:36,764.764 INFO    ] No existing commands found in stream
[2026-06-05 05:07:41,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:07:41,782.782 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 05:07:44,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:07:44,249.249 INFO    ] Checking for system updates...
[2026-06-05 05:07:44,289.289 INFO    ] 200
[2026-06-05 05:07:44,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:44,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:07:44,350.350 INFO    ] No update needed
[2026-06-05 05:07:44,353.353 INFO    ] Checking for camera pi updates...
[2026-06-05 05:07:44,393.393 INFO    ] 200
[2026-06-05 05:07:44,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:44,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:07:44,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:07:44,492.492 INFO    ] No camera update needed
[2026-06-05 05:07:44,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:07:44,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:07:44,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:07:44,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:07:46,559.559 INFO    ] ================================================
[2026-06-05 05:07:46,575.575 INFO    ] Launching Daemon at Fri Jun  5 05:07:46 IST 2026
[2026-06-05 05:07:46,586.586 INFO    ] ================================================
[2026-06-05 05:07:47,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:07:47
[2026-06-05 05:07:47,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:07:48,132.132 INFO    ] Initializing speech engine...
[2026-06-05 05:07:48,138.138 INFO    ] 2026-06-05 05:07:48
[2026-06-05 05:07:48,389.389 INFO    ] 2026-06-05 05:07:48
[2026-06-05 05:07:48,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:07:48,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:07:48,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:07:48,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:07:48,868.868 INFO    ] time= 05/06/2026 05:07:48
[2026-06-05 05:07:48,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:07:48,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:07:49,013.013 INFO    ] No existing commands found in stream
[2026-06-05 05:07:54,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:07:54,028.028 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 05:07:56,271.271 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:07:56,274.274 INFO    ] Checking for system updates...
[2026-06-05 05:07:56,321.321 INFO    ] 200
[2026-06-05 05:07:56,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:56,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:07:56,400.400 INFO    ] No update needed
[2026-06-05 05:07:56,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 05:07:56,451.451 INFO    ] 200
[2026-06-05 05:07:56,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:07:56,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:07:56,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:07:56,561.561 INFO    ] No camera update needed
[2026-06-05 05:07:56,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:07:56,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:07:56,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:07:56,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:07:58,620.620 INFO    ] ================================================
[2026-06-05 05:07:58,635.635 INFO    ] Launching Daemon at Fri Jun  5 05:07:58 IST 2026
[2026-06-05 05:07:58,647.647 INFO    ] ================================================
[2026-06-05 05:07:59,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:07:59
[2026-06-05 05:07:59,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:08:00,057.057 INFO    ] Initializing speech engine...
[2026-06-05 05:08:00,076.076 INFO    ] 2026-06-05 05:08:00
[2026-06-05 05:08:00,336.336 INFO    ] 2026-06-05 05:08:00
[2026-06-05 05:08:00,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:08:00,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:08:00,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:08:00,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:08:00,807.807 INFO    ] time= 05/06/2026 05:08:00
[2026-06-05 05:08:00,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:08:00,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:08:00,972.972 INFO    ] No existing commands found in stream
[2026-06-05 05:08:05,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:08:05,987.987 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 05:08:09,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:08:09,159.159 INFO    ] Checking for system updates...
[2026-06-05 05:08:09,196.196 INFO    ] 200
[2026-06-05 05:08:09,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:09,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:08:09,255.255 INFO    ] No update needed
[2026-06-05 05:08:09,257.257 INFO    ] Checking for camera pi updates...
[2026-06-05 05:08:09,295.295 INFO    ] 200
[2026-06-05 05:08:09,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:09,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:08:09,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:08:09,383.383 INFO    ] No camera update needed
[2026-06-05 05:08:09,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:08:09,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:08:09,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:08:09,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:08:11,439.439 INFO    ] ================================================
[2026-06-05 05:08:11,455.455 INFO    ] Launching Daemon at Fri Jun  5 05:08:11 IST 2026
[2026-06-05 05:08:11,466.466 INFO    ] ================================================
[2026-06-05 05:08:12,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:08:12
[2026-06-05 05:08:12,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:08:13,048.048 INFO    ] Initializing speech engine...
[2026-06-05 05:08:13,070.070 INFO    ] 2026-06-05 05:08:13
[2026-06-05 05:08:13,329.329 INFO    ] 2026-06-05 05:08:13
[2026-06-05 05:08:13,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:08:13,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:08:13,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:08:13,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:08:13,807.807 INFO    ] time= 05/06/2026 05:08:13
[2026-06-05 05:08:13,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:08:13,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:08:13,962.962 INFO    ] No existing commands found in stream
[2026-06-05 05:08:18,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:08:18,976.976 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 05:08:21,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:08:21,320.320 INFO    ] Checking for system updates...
[2026-06-05 05:08:21,356.356 INFO    ] 200
[2026-06-05 05:08:21,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:21,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:08:21,415.415 INFO    ] No update needed
[2026-06-05 05:08:21,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 05:08:21,456.456 INFO    ] 200
[2026-06-05 05:08:21,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:21,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:08:21,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:08:21,550.550 INFO    ] No camera update needed
[2026-06-05 05:08:21,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:08:21,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:08:21,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:08:21,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:08:23,605.605 INFO    ] ================================================
[2026-06-05 05:08:23,621.621 INFO    ] Launching Daemon at Fri Jun  5 05:08:23 IST 2026
[2026-06-05 05:08:23,632.632 INFO    ] ================================================
[2026-06-05 05:08:24,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:08:24
[2026-06-05 05:08:24,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:08:25,089.089 INFO    ] Initializing speech engine...
[2026-06-05 05:08:25,098.098 INFO    ] 2026-06-05 05:08:25
[2026-06-05 05:08:25,357.357 INFO    ] 2026-06-05 05:08:25
[2026-06-05 05:08:25,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:08:25,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:08:25,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:08:25,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:08:25,817.817 INFO    ] time= 05/06/2026 05:08:25
[2026-06-05 05:08:25,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:08:25,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:08:26,009.009 INFO    ] No existing commands found in stream
[2026-06-05 05:08:31,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:08:31,023.023 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 05:08:33,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:08:33,969.969 INFO    ] Checking for system updates...
[2026-06-05 05:08:34,017.017 INFO    ] 200
[2026-06-05 05:08:34,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:34,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:08:34,083.083 INFO    ] No update needed
[2026-06-05 05:08:34,085.085 INFO    ] Checking for camera pi updates...
[2026-06-05 05:08:34,119.119 INFO    ] 200
[2026-06-05 05:08:34,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:34,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:08:34,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:08:34,203.203 INFO    ] No camera update needed
[2026-06-05 05:08:34,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:08:34,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:08:34,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:08:34,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:08:36,259.259 INFO    ] ================================================
[2026-06-05 05:08:36,275.275 INFO    ] Launching Daemon at Fri Jun  5 05:08:36 IST 2026
[2026-06-05 05:08:36,286.286 INFO    ] ================================================
[2026-06-05 05:08:36,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:08:36
[2026-06-05 05:08:37,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:08:37,724.724 INFO    ] Initializing speech engine...
[2026-06-05 05:08:37,742.742 INFO    ] 2026-06-05 05:08:37
[2026-06-05 05:08:37,994.994 INFO    ] 2026-06-05 05:08:37
[2026-06-05 05:08:38,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:08:38,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:08:38,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:08:38,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:08:38,482.482 INFO    ] time= 05/06/2026 05:08:38
[2026-06-05 05:08:38,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:08:38,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:08:38,632.632 INFO    ] No existing commands found in stream
[2026-06-05 05:08:43,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:08:43,647.647 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 05:08:46,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:08:46,654.654 INFO    ] Checking for system updates...
[2026-06-05 05:08:46,695.695 INFO    ] 200
[2026-06-05 05:08:46,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:46,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:08:46,752.752 INFO    ] No update needed
[2026-06-05 05:08:46,755.755 INFO    ] Checking for camera pi updates...
[2026-06-05 05:08:46,789.789 INFO    ] 200
[2026-06-05 05:08:46,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:46,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:08:46,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:08:46,885.885 INFO    ] No camera update needed
[2026-06-05 05:08:46,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:08:46,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:08:46,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:08:46,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:08:48,946.946 INFO    ] ================================================
[2026-06-05 05:08:48,964.964 INFO    ] Launching Daemon at Fri Jun  5 05:08:48 IST 2026
[2026-06-05 05:08:48,982.982 INFO    ] ================================================
[2026-06-05 05:08:49,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:08:49
[2026-06-05 05:08:50,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:08:50,384.384 INFO    ] Initializing speech engine...
[2026-06-05 05:08:50,409.409 INFO    ] 2026-06-05 05:08:50
[2026-06-05 05:08:50,664.664 INFO    ] 2026-06-05 05:08:50
[2026-06-05 05:08:50,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:08:50,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:08:50,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:08:51,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:08:51,042.042 INFO    ] time= 05/06/2026 05:08:51
[2026-06-05 05:08:51,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:08:51,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:08:51,118.118 INFO    ] No existing commands found in stream
[2026-06-05 05:08:56,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:08:56,134.134 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 05:08:58,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:08:58,935.935 INFO    ] Checking for system updates...
[2026-06-05 05:08:58,971.971 INFO    ] 200
[2026-06-05 05:08:58,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:59,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:08:59,036.036 INFO    ] No update needed
[2026-06-05 05:08:59,038.038 INFO    ] Checking for camera pi updates...
[2026-06-05 05:08:59,076.076 INFO    ] 200
[2026-06-05 05:08:59,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:08:59,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:08:59,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:08:59,270.270 INFO    ] No camera update needed
[2026-06-05 05:08:59,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:08:59,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:08:59,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:08:59,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:09:01,324.324 INFO    ] ================================================
[2026-06-05 05:09:01,340.340 INFO    ] Launching Daemon at Fri Jun  5 05:09:01 IST 2026
[2026-06-05 05:09:01,350.350 INFO    ] ================================================
[2026-06-05 05:09:01,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:09:01
[2026-06-05 05:09:02,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:09:02,960.960 INFO    ] Initializing speech engine...
[2026-06-05 05:09:02,978.978 INFO    ] 2026-06-05 05:09:02
[2026-06-05 05:09:03,265.265 INFO    ] 2026-06-05 05:09:03
[2026-06-05 05:09:03,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:09:03,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:09:03,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:09:03,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:09:03,697.697 INFO    ] time= 05/06/2026 05:09:03
[2026-06-05 05:09:03,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:09:03,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:09:03,798.798 INFO    ] No existing commands found in stream
[2026-06-05 05:09:08,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:09:08,837.837 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 05:09:09,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:09:09,870.870 INFO    ] Checking for system updates...
[2026-06-05 05:09:09,907.907 INFO    ] 200
[2026-06-05 05:09:09,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:09,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:09:09,964.964 INFO    ] No update needed
[2026-06-05 05:09:09,967.967 INFO    ] Checking for camera pi updates...
[2026-06-05 05:09:10,004.004 INFO    ] 200
[2026-06-05 05:09:10,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:10,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:09:10,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:09:10,091.091 INFO    ] No camera update needed
[2026-06-05 05:09:10,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:09:10,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:09:10,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:09:10,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:09:12,146.146 INFO    ] ================================================
[2026-06-05 05:09:12,162.162 INFO    ] Launching Daemon at Fri Jun  5 05:09:12 IST 2026
[2026-06-05 05:09:12,173.173 INFO    ] ================================================
[2026-06-05 05:09:12,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:09:12
[2026-06-05 05:09:13,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:09:13,632.632 INFO    ] Initializing speech engine...
[2026-06-05 05:09:13,641.641 INFO    ] 2026-06-05 05:09:13
[2026-06-05 05:09:13,901.901 INFO    ] 2026-06-05 05:09:13
[2026-06-05 05:09:13,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:09:14,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:09:14,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:09:14,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:09:14,360.360 INFO    ] time= 05/06/2026 05:09:14
[2026-06-05 05:09:14,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:09:14,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:09:14,510.510 INFO    ] No existing commands found in stream
[2026-06-05 05:09:19,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:09:19,524.524 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 05:09:23,145.145 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:09:23,148.148 INFO    ] Checking for system updates...
[2026-06-05 05:09:23,186.186 INFO    ] 200
[2026-06-05 05:09:23,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:23,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:09:23,248.248 INFO    ] No update needed
[2026-06-05 05:09:23,250.250 INFO    ] Checking for camera pi updates...
[2026-06-05 05:09:23,287.287 INFO    ] 200
[2026-06-05 05:09:23,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:23,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:09:23,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:09:23,379.379 INFO    ] No camera update needed
[2026-06-05 05:09:23,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:09:23,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:09:23,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:09:23,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:09:25,434.434 INFO    ] ================================================
[2026-06-05 05:09:25,450.450 INFO    ] Launching Daemon at Fri Jun  5 05:09:25 IST 2026
[2026-06-05 05:09:25,461.461 INFO    ] ================================================
[2026-06-05 05:09:26,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:09:26
[2026-06-05 05:09:26,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:09:26,942.942 INFO    ] Initializing speech engine...
[2026-06-05 05:09:26,949.949 INFO    ] 2026-06-05 05:09:26
[2026-06-05 05:09:27,247.247 INFO    ] 2026-06-05 05:09:27
[2026-06-05 05:09:27,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:09:27,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:09:27,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:09:27,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:09:27,621.621 INFO    ] time= 05/06/2026 05:09:27
[2026-06-05 05:09:27,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:09:27,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:09:27,746.746 INFO    ] No existing commands found in stream
[2026-06-05 05:09:32,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:09:32,762.762 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 05:09:36,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:09:36,320.320 INFO    ] Checking for system updates...
[2026-06-05 05:09:36,359.359 INFO    ] 200
[2026-06-05 05:09:36,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:36,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:09:36,424.424 INFO    ] No update needed
[2026-06-05 05:09:36,426.426 INFO    ] Checking for camera pi updates...
[2026-06-05 05:09:36,464.464 INFO    ] 200
[2026-06-05 05:09:36,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:36,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:09:36,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:09:36,559.559 INFO    ] No camera update needed
[2026-06-05 05:09:36,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:09:36,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:09:36,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:09:36,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:09:38,614.614 INFO    ] ================================================
[2026-06-05 05:09:38,631.631 INFO    ] Launching Daemon at Fri Jun  5 05:09:38 IST 2026
[2026-06-05 05:09:38,642.642 INFO    ] ================================================
[2026-06-05 05:09:39,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:09:39
[2026-06-05 05:09:39,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:09:40,186.186 INFO    ] Initializing speech engine...
[2026-06-05 05:09:40,193.193 INFO    ] 2026-06-05 05:09:40
[2026-06-05 05:09:40,464.464 INFO    ] 2026-06-05 05:09:40
[2026-06-05 05:09:40,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:09:40,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:09:40,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:09:40,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:09:40,917.917 INFO    ] time= 05/06/2026 05:09:40
[2026-06-05 05:09:40,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:09:41,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:09:41,062.062 INFO    ] No existing commands found in stream
[2026-06-05 05:09:46,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:09:46,080.080 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 05:09:47,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:09:47,808.808 INFO    ] Checking for system updates...
[2026-06-05 05:09:47,845.845 INFO    ] 200
[2026-06-05 05:09:47,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:47,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:09:47,909.909 INFO    ] No update needed
[2026-06-05 05:09:47,912.912 INFO    ] Checking for camera pi updates...
[2026-06-05 05:09:47,946.946 INFO    ] 200
[2026-06-05 05:09:47,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:47,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:09:48,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:09:48,036.036 INFO    ] No camera update needed
[2026-06-05 05:09:48,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:09:48,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:09:48,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:09:48,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:09:50,094.094 INFO    ] ================================================
[2026-06-05 05:09:50,111.111 INFO    ] Launching Daemon at Fri Jun  5 05:09:50 IST 2026
[2026-06-05 05:09:50,123.123 INFO    ] ================================================
[2026-06-05 05:09:50,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:09:50
[2026-06-05 05:09:51,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:09:51,525.525 INFO    ] Initializing speech engine...
[2026-06-05 05:09:51,531.531 INFO    ] 2026-06-05 05:09:51
[2026-06-05 05:09:51,804.804 INFO    ] 2026-06-05 05:09:51
[2026-06-05 05:09:51,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:09:52,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:09:52,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:09:52,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:09:52,144.144 INFO    ] time= 05/06/2026 05:09:52
[2026-06-05 05:09:52,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:09:52,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:09:52,257.257 INFO    ] No existing commands found in stream
[2026-06-05 05:09:57,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:09:57,272.272 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 05:09:59,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:09:59,569.569 INFO    ] Checking for system updates...
[2026-06-05 05:09:59,609.609 INFO    ] 200
[2026-06-05 05:09:59,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:59,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:09:59,673.673 INFO    ] No update needed
[2026-06-05 05:09:59,675.675 INFO    ] Checking for camera pi updates...
[2026-06-05 05:09:59,712.712 INFO    ] 200
[2026-06-05 05:09:59,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:09:59,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:09:59,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:09:59,816.816 INFO    ] No camera update needed
[2026-06-05 05:09:59,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:09:59,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:09:59,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:09:59,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:10:01,873.873 INFO    ] ================================================
[2026-06-05 05:10:01,919.919 INFO    ] Launching Daemon at Fri Jun  5 05:10:01 IST 2026
[2026-06-05 05:10:02,981.981 INFO    ] ================================================
[2026-06-05 05:10:03,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:10:03
[2026-06-05 05:10:03,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:10:04,174.174 INFO    ] Initializing speech engine...
[2026-06-05 05:10:04,181.181 INFO    ] 2026-06-05 05:10:04
[2026-06-05 05:10:04,474.474 INFO    ] 2026-06-05 05:10:04
[2026-06-05 05:10:04,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:10:04,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:10:04,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:10:04,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:10:04,978.978 INFO    ] time= 05/06/2026 05:10:04
[2026-06-05 05:10:04,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:10:05,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:10:05,119.119 INFO    ] No existing commands found in stream
[2026-06-05 05:10:10,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:10:10,149.149 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 05:10:12,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:10:12,508.508 INFO    ] Checking for system updates...
[2026-06-05 05:10:12,550.550 INFO    ] 200
[2026-06-05 05:10:12,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:10:12,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:10:12,620.620 INFO    ] No update needed
[2026-06-05 05:10:12,623.623 INFO    ] Checking for camera pi updates...
[2026-06-05 05:10:12,659.659 INFO    ] 200
[2026-06-05 05:10:12,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:10:12,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:10:12,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:10:12,759.759 INFO    ] No camera update needed
[2026-06-05 05:10:12,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:10:12,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:10:12,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:10:12,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:10:14,818.818 INFO    ] ================================================
[2026-06-05 05:10:14,833.833 INFO    ] Launching Daemon at Fri Jun  5 05:10:14 IST 2026
[2026-06-05 05:10:14,844.844 INFO    ] ================================================
[2026-06-05 05:10:15,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:10:15
[2026-06-05 05:10:16,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:10:16,442.442 INFO    ] Initializing speech engine...
[2026-06-05 05:10:16,449.449 INFO    ] 2026-06-05 05:10:16
[2026-06-05 05:10:16,713.713 INFO    ] 2026-06-05 05:10:16
[2026-06-05 05:10:16,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:10:16,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:10:16,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:10:17,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:10:17,179.179 INFO    ] time= 05/06/2026 05:10:17
[2026-06-05 05:10:17,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:10:17,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:10:17,317.317 INFO    ] No existing commands found in stream
[2026-06-05 05:10:22,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:10:22,332.332 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 05:10:25,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:10:25,426.426 INFO    ] Checking for system updates...
[2026-06-05 05:10:25,466.466 INFO    ] 200
[2026-06-05 05:10:25,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:10:25,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:10:25,524.524 INFO    ] No update needed
[2026-06-05 05:10:25,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 05:10:25,564.564 INFO    ] 200
[2026-06-05 05:10:25,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:10:25,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:10:25,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:10:25,659.659 INFO    ] No camera update needed
[2026-06-05 05:10:25,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:10:25,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:10:25,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:10:25,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:10:27,715.715 INFO    ] ================================================
[2026-06-05 05:10:27,730.730 INFO    ] Launching Daemon at Fri Jun  5 05:10:27 IST 2026
[2026-06-05 05:10:27,741.741 INFO    ] ================================================
[2026-06-05 05:10:28,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:10:28
[2026-06-05 05:10:29,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:10:29,347.347 INFO    ] Initializing speech engine...
[2026-06-05 05:10:29,353.353 INFO    ] 2026-06-05 05:10:29
[2026-06-05 05:10:29,623.623 INFO    ] 2026-06-05 05:10:29
[2026-06-05 05:10:29,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:10:29,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:10:29,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:10:30,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:10:30,097.097 INFO    ] time= 05/06/2026 05:10:30
[2026-06-05 05:10:30,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:10:30,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:10:30,245.245 INFO    ] No existing commands found in stream
[2026-06-05 05:10:35,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:10:35,260.260 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 05:10:38,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:10:38,295.295 INFO    ] Checking for system updates...
[2026-06-05 05:10:38,332.332 INFO    ] 200
[2026-06-05 05:10:38,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:10:38,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:10:38,389.389 INFO    ] No update needed
[2026-06-05 05:10:38,391.391 INFO    ] Checking for camera pi updates...
[2026-06-05 05:10:38,425.425 INFO    ] 200
[2026-06-05 05:10:38,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:10:38,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:10:38,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:10:38,520.520 INFO    ] No camera update needed
[2026-06-05 05:10:38,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:10:38,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:10:38,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:10:38,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:10:40,575.575 INFO    ] ================================================
[2026-06-05 05:10:40,590.590 INFO    ] Launching Daemon at Fri Jun  5 05:10:40 IST 2026
[2026-06-05 05:10:40,601.601 INFO    ] ================================================
[2026-06-05 05:10:41,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:10:41
[2026-06-05 05:10:41,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:10:42,080.080 INFO    ] Initializing speech engine...
[2026-06-05 05:10:42,086.086 INFO    ] 2026-06-05 05:10:42
[2026-06-05 05:10:42,333.333 INFO    ] 2026-06-05 05:10:42
[2026-06-05 05:10:42,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:10:42,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:10:42,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:10:42,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:10:42,702.702 INFO    ] time= 05/06/2026 05:10:42
[2026-06-05 05:10:42,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:10:42,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:10:42,880.880 INFO    ] No existing commands found in stream
[2026-06-05 05:10:47,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:10:47,913.913 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 05:10:51,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:10:51,557.557 INFO    ] Checking for system updates...
[2026-06-05 05:10:51,598.598 INFO    ] 200
[2026-06-05 05:10:51,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:10:51,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:10:51,659.659 INFO    ] No update needed
[2026-06-05 05:10:51,662.662 INFO    ] Checking for camera pi updates...
[2026-06-05 05:10:51,697.697 INFO    ] 200
[2026-06-05 05:10:51,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:10:51,741.741 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:10:51,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:10:51,786.786 INFO    ] No camera update needed
[2026-06-05 05:10:51,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:10:51,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:10:51,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:10:51,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:10:53,844.844 INFO    ] ================================================
[2026-06-05 05:10:53,859.859 INFO    ] Launching Daemon at Fri Jun  5 05:10:53 IST 2026
[2026-06-05 05:10:53,870.870 INFO    ] ================================================
[2026-06-05 05:10:54,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:10:54
[2026-06-05 05:10:55,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:10:55,286.286 INFO    ] Initializing speech engine...
[2026-06-05 05:10:55,295.295 INFO    ] 2026-06-05 05:10:55
[2026-06-05 05:10:55,539.539 INFO    ] 2026-06-05 05:10:55
[2026-06-05 05:10:55,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:10:55,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:10:55,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:10:55,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:10:56,032.032 INFO    ] time= 05/06/2026 05:10:55
[2026-06-05 05:10:56,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:10:56,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:10:56,219.219 INFO    ] No existing commands found in stream
[2026-06-05 05:11:01,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:11:01,252.252 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 05:11:01,702.702 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:11:01,705.705 INFO    ] Checking for system updates...
[2026-06-05 05:11:01,745.745 INFO    ] 200
[2026-06-05 05:11:01,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:01,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:11:01,820.820 INFO    ] No update needed
[2026-06-05 05:11:01,823.823 INFO    ] Checking for camera pi updates...
[2026-06-05 05:11:01,871.871 INFO    ] 200
[2026-06-05 05:11:01,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:01,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:11:02,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:11:02,094.094 INFO    ] No camera update needed
[2026-06-05 05:11:02,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:11:02,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:11:02,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:11:02,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:11:04,167.167 INFO    ] ================================================
[2026-06-05 05:11:04,182.182 INFO    ] Launching Daemon at Fri Jun  5 05:11:04 IST 2026
[2026-06-05 05:11:04,193.193 INFO    ] ================================================
[2026-06-05 05:11:04,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:11:04
[2026-06-05 05:11:05,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:11:05,617.617 INFO    ] Initializing speech engine...
[2026-06-05 05:11:05,626.626 INFO    ] 2026-06-05 05:11:05
[2026-06-05 05:11:05,886.886 INFO    ] 2026-06-05 05:11:05
[2026-06-05 05:11:05,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:11:06,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:11:06,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:11:06,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:11:06,378.378 INFO    ] time= 05/06/2026 05:11:06
[2026-06-05 05:11:06,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:11:06,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:11:06,513.513 INFO    ] No existing commands found in stream
[2026-06-05 05:11:11,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:11:11,528.528 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 05:11:15,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:11:15,314.314 INFO    ] Checking for system updates...
[2026-06-05 05:11:15,353.353 INFO    ] 200
[2026-06-05 05:11:15,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:15,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:11:15,417.417 INFO    ] No update needed
[2026-06-05 05:11:15,420.420 INFO    ] Checking for camera pi updates...
[2026-06-05 05:11:15,458.458 INFO    ] 200
[2026-06-05 05:11:15,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:15,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:11:15,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:11:15,547.547 INFO    ] No camera update needed
[2026-06-05 05:11:15,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:11:15,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:11:15,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:11:15,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:11:17,605.605 INFO    ] ================================================
[2026-06-05 05:11:17,620.620 INFO    ] Launching Daemon at Fri Jun  5 05:11:17 IST 2026
[2026-06-05 05:11:17,631.631 INFO    ] ================================================
[2026-06-05 05:11:18,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:11:18
[2026-06-05 05:11:18,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:11:19,039.039 INFO    ] Initializing speech engine...
[2026-06-05 05:11:19,061.061 INFO    ] 2026-06-05 05:11:19
[2026-06-05 05:11:19,321.321 INFO    ] 2026-06-05 05:11:19
[2026-06-05 05:11:19,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:11:19,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:11:19,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:11:19,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:11:19,796.796 INFO    ] time= 05/06/2026 05:11:19
[2026-06-05 05:11:19,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:11:19,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:11:19,975.975 INFO    ] No existing commands found in stream
[2026-06-05 05:11:24,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:11:24,990.990 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 05:11:25,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:11:25,760.760 INFO    ] Checking for system updates...
[2026-06-05 05:11:25,795.795 INFO    ] 200
[2026-06-05 05:11:25,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:25,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:11:25,854.854 INFO    ] No update needed
[2026-06-05 05:11:25,856.856 INFO    ] Checking for camera pi updates...
[2026-06-05 05:11:25,890.890 INFO    ] 200
[2026-06-05 05:11:25,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:25,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:11:25,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:11:25,988.988 INFO    ] No camera update needed
[2026-06-05 05:11:25,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:11:25,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:11:25,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:11:26,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:11:28,045.045 INFO    ] ================================================
[2026-06-05 05:11:28,060.060 INFO    ] Launching Daemon at Fri Jun  5 05:11:28 IST 2026
[2026-06-05 05:11:28,071.071 INFO    ] ================================================
[2026-06-05 05:11:28,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:11:28
[2026-06-05 05:11:29,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:11:29,479.479 INFO    ] Initializing speech engine...
[2026-06-05 05:11:29,501.501 INFO    ] 2026-06-05 05:11:29
[2026-06-05 05:11:29,753.753 INFO    ] 2026-06-05 05:11:29
[2026-06-05 05:11:29,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:11:30,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:11:30,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:11:30,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:11:30,205.205 INFO    ] time= 05/06/2026 05:11:30
[2026-06-05 05:11:30,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:11:30,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:11:30,372.372 INFO    ] No existing commands found in stream
[2026-06-05 05:11:35,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:11:35,387.387 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 05:11:37,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:11:37,456.456 INFO    ] Checking for system updates...
[2026-06-05 05:11:37,497.497 INFO    ] 200
[2026-06-05 05:11:37,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:37,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:11:37,569.569 INFO    ] No update needed
[2026-06-05 05:11:37,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 05:11:37,611.611 INFO    ] 200
[2026-06-05 05:11:37,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:37,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:11:37,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:11:37,702.702 INFO    ] No camera update needed
[2026-06-05 05:11:37,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:11:37,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:11:37,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:11:37,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:11:39,762.762 INFO    ] ================================================
[2026-06-05 05:11:39,778.778 INFO    ] Launching Daemon at Fri Jun  5 05:11:39 IST 2026
[2026-06-05 05:11:39,788.788 INFO    ] ================================================
[2026-06-05 05:11:40,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:11:40
[2026-06-05 05:11:40,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:11:41,192.192 INFO    ] Initializing speech engine...
[2026-06-05 05:11:41,207.207 INFO    ] 2026-06-05 05:11:41
[2026-06-05 05:11:41,474.474 INFO    ] 2026-06-05 05:11:41
[2026-06-05 05:11:41,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:11:41,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:11:41,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:11:41,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:11:41,852.852 INFO    ] time= 05/06/2026 05:11:41
[2026-06-05 05:11:41,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:11:41,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:11:41,928.928 INFO    ] No existing commands found in stream
[2026-06-05 05:11:46,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:11:46,944.944 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 05:11:50,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:11:50,636.636 INFO    ] Checking for system updates...
[2026-06-05 05:11:50,677.677 INFO    ] 200
[2026-06-05 05:11:50,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:50,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:11:50,747.747 INFO    ] No update needed
[2026-06-05 05:11:50,750.750 INFO    ] Checking for camera pi updates...
[2026-06-05 05:11:50,789.789 INFO    ] 200
[2026-06-05 05:11:50,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:11:50,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:11:50,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:11:50,887.887 INFO    ] No camera update needed
[2026-06-05 05:11:50,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:11:50,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:11:50,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:11:50,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:11:52,943.943 INFO    ] ================================================
[2026-06-05 05:11:52,958.958 INFO    ] Launching Daemon at Fri Jun  5 05:11:52 IST 2026
[2026-06-05 05:11:52,969.969 INFO    ] ================================================
[2026-06-05 05:11:53,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:11:53
[2026-06-05 05:11:54,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:11:54,434.434 INFO    ] Initializing speech engine...
[2026-06-05 05:11:54,444.444 INFO    ] 2026-06-05 05:11:54
[2026-06-05 05:11:54,714.714 INFO    ] 2026-06-05 05:11:54
[2026-06-05 05:11:54,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:11:54,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:11:55,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:11:55,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:11:55,188.188 INFO    ] time= 05/06/2026 05:11:55
[2026-06-05 05:11:55,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:11:55,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:11:55,338.338 INFO    ] No existing commands found in stream
[2026-06-05 05:12:00,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:12:00,352.352 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 05:12:01,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:12:01,814.814 INFO    ] Checking for system updates...
[2026-06-05 05:12:01,859.859 INFO    ] 200
[2026-06-05 05:12:01,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:01,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:12:01,934.934 INFO    ] No update needed
[2026-06-05 05:12:01,939.939 INFO    ] Checking for camera pi updates...
[2026-06-05 05:12:01,979.979 INFO    ] 200
[2026-06-05 05:12:01,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:02,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:12:02,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:12:02,080.080 INFO    ] No camera update needed
[2026-06-05 05:12:02,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:12:02,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:12:02,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:12:02,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:12:04,141.141 INFO    ] ================================================
[2026-06-05 05:12:04,156.156 INFO    ] Launching Daemon at Fri Jun  5 05:12:04 IST 2026
[2026-06-05 05:12:04,167.167 INFO    ] ================================================
[2026-06-05 05:12:04,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:12:04
[2026-06-05 05:12:05,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:12:05,650.650 INFO    ] Initializing speech engine...
[2026-06-05 05:12:05,659.659 INFO    ] 2026-06-05 05:12:05
[2026-06-05 05:12:05,944.944 INFO    ] 2026-06-05 05:12:05
[2026-06-05 05:12:06,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:12:06,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:12:06,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:12:06,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:12:06,468.468 INFO    ] time= 05/06/2026 05:12:06
[2026-06-05 05:12:06,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:12:06,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:12:06,588.588 INFO    ] No existing commands found in stream
[2026-06-05 05:12:11,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:12:11,604.604 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 05:12:12,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:12:12,716.716 INFO    ] Checking for system updates...
[2026-06-05 05:12:12,753.753 INFO    ] 200
[2026-06-05 05:12:12,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:12,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:12:12,812.812 INFO    ] No update needed
[2026-06-05 05:12:12,815.815 INFO    ] Checking for camera pi updates...
[2026-06-05 05:12:12,850.850 INFO    ] 200
[2026-06-05 05:12:12,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:12,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:12:12,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:12:12,945.945 INFO    ] No camera update needed
[2026-06-05 05:12:12,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:12:12,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:12:12,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:12:12,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:12:15,002.002 INFO    ] ================================================
[2026-06-05 05:12:15,017.017 INFO    ] Launching Daemon at Fri Jun  5 05:12:15 IST 2026
[2026-06-05 05:12:15,028.028 INFO    ] ================================================
[2026-06-05 05:12:15,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:12:15
[2026-06-05 05:12:16,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:12:16,585.585 INFO    ] Initializing speech engine...
[2026-06-05 05:12:16,594.594 INFO    ] 2026-06-05 05:12:16
[2026-06-05 05:12:16,857.857 INFO    ] 2026-06-05 05:12:16
[2026-06-05 05:12:16,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:12:17,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:12:17,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:12:17,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:12:17,221.221 INFO    ] time= 05/06/2026 05:12:17
[2026-06-05 05:12:17,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:12:17,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:12:17,343.343 INFO    ] No existing commands found in stream
[2026-06-05 05:12:22,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:12:22,376.376 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 05:12:25,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:12:25,652.652 INFO    ] Checking for system updates...
[2026-06-05 05:12:25,688.688 INFO    ] 200
[2026-06-05 05:12:25,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:25,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:12:25,751.751 INFO    ] No update needed
[2026-06-05 05:12:25,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 05:12:25,792.792 INFO    ] 200
[2026-06-05 05:12:25,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:25,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:12:25,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:12:25,886.886 INFO    ] No camera update needed
[2026-06-05 05:12:25,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:12:25,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:12:25,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:12:25,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:12:27,942.942 INFO    ] ================================================
[2026-06-05 05:12:27,958.958 INFO    ] Launching Daemon at Fri Jun  5 05:12:27 IST 2026
[2026-06-05 05:12:27,969.969 INFO    ] ================================================
[2026-06-05 05:12:28,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:12:28
[2026-06-05 05:12:29,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:12:29,451.451 INFO    ] Initializing speech engine...
[2026-06-05 05:12:29,460.460 INFO    ] 2026-06-05 05:12:29
[2026-06-05 05:12:29,708.708 INFO    ] 2026-06-05 05:12:29
[2026-06-05 05:12:29,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:12:29,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:12:29,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:12:30,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:12:30,174.174 INFO    ] time= 05/06/2026 05:12:30
[2026-06-05 05:12:30,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:12:30,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:12:30,326.326 INFO    ] No existing commands found in stream
[2026-06-05 05:12:35,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:12:35,340.340 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 05:12:36,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:12:36,499.499 INFO    ] Checking for system updates...
[2026-06-05 05:12:36,535.535 INFO    ] 200
[2026-06-05 05:12:36,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:36,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:12:36,597.597 INFO    ] No update needed
[2026-06-05 05:12:36,599.599 INFO    ] Checking for camera pi updates...
[2026-06-05 05:12:36,633.633 INFO    ] 200
[2026-06-05 05:12:36,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:36,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:12:36,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:12:36,727.727 INFO    ] No camera update needed
[2026-06-05 05:12:36,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:12:36,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:12:36,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:12:36,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:12:38,784.784 INFO    ] ================================================
[2026-06-05 05:12:38,800.800 INFO    ] Launching Daemon at Fri Jun  5 05:12:38 IST 2026
[2026-06-05 05:12:38,812.812 INFO    ] ================================================
[2026-06-05 05:12:39,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:12:39
[2026-06-05 05:12:40,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:12:40,334.334 INFO    ] Initializing speech engine...
[2026-06-05 05:12:40,343.343 INFO    ] 2026-06-05 05:12:40
[2026-06-05 05:12:40,630.630 INFO    ] 2026-06-05 05:12:40
[2026-06-05 05:12:40,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:12:40,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:12:40,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:12:41,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:12:41,120.120 INFO    ] time= 05/06/2026 05:12:41
[2026-06-05 05:12:41,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:12:41,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:12:41,317.317 INFO    ] No existing commands found in stream
[2026-06-05 05:12:46,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:12:46,349.349 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 05:12:50,363.363 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:12:50,366.366 INFO    ] Checking for system updates...
[2026-06-05 05:12:50,403.403 INFO    ] 200
[2026-06-05 05:12:50,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:50,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:12:50,463.463 INFO    ] No update needed
[2026-06-05 05:12:50,466.466 INFO    ] Checking for camera pi updates...
[2026-06-05 05:12:50,501.501 INFO    ] 200
[2026-06-05 05:12:50,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:12:50,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:12:50,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:12:50,593.593 INFO    ] No camera update needed
[2026-06-05 05:12:50,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:12:50,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:12:50,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:12:50,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:12:52,650.650 INFO    ] ================================================
[2026-06-05 05:12:52,665.665 INFO    ] Launching Daemon at Fri Jun  5 05:12:52 IST 2026
[2026-06-05 05:12:52,676.676 INFO    ] ================================================
[2026-06-05 05:12:53,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:12:53
[2026-06-05 05:12:53,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:12:54,093.093 INFO    ] Initializing speech engine...
[2026-06-05 05:12:54,116.116 INFO    ] 2026-06-05 05:12:54
[2026-06-05 05:12:54,392.392 INFO    ] 2026-06-05 05:12:54
[2026-06-05 05:12:54,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:12:54,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:12:54,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:12:54,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:12:54,804.804 INFO    ] time= 05/06/2026 05:12:54
[2026-06-05 05:12:54,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:12:54,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:12:54,973.973 INFO    ] No existing commands found in stream
[2026-06-05 05:12:59,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:13:00,001.001 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 05:13:00,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:13:00,988.988 INFO    ] Checking for system updates...
[2026-06-05 05:13:01,024.024 INFO    ] 200
[2026-06-05 05:13:01,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:01,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:13:01,126.126 INFO    ] No update needed
[2026-06-05 05:13:01,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 05:13:01,221.221 INFO    ] 200
[2026-06-05 05:13:01,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:01,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:13:01,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:13:01,390.390 INFO    ] No camera update needed
[2026-06-05 05:13:01,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:13:01,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:13:01,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:13:01,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:13:03,470.470 INFO    ] ================================================
[2026-06-05 05:13:03,486.486 INFO    ] Launching Daemon at Fri Jun  5 05:13:03 IST 2026
[2026-06-05 05:13:03,497.497 INFO    ] ================================================
[2026-06-05 05:13:04,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:13:04
[2026-06-05 05:13:04,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:13:04,952.952 INFO    ] Initializing speech engine...
[2026-06-05 05:13:04,972.972 INFO    ] 2026-06-05 05:13:04
[2026-06-05 05:13:05,237.237 INFO    ] 2026-06-05 05:13:05
[2026-06-05 05:13:05,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:13:05,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:13:05,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:13:05,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:13:05,634.634 INFO    ] time= 05/06/2026 05:13:05
[2026-06-05 05:13:05,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:13:05,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:13:05,722.722 INFO    ] No existing commands found in stream
[2026-06-05 05:13:10,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:13:10,740.740 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 05:13:12,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:13:12,417.417 INFO    ] Checking for system updates...
[2026-06-05 05:13:12,453.453 INFO    ] 200
[2026-06-05 05:13:12,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:12,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:13:12,510.510 INFO    ] No update needed
[2026-06-05 05:13:12,513.513 INFO    ] Checking for camera pi updates...
[2026-06-05 05:13:12,549.549 INFO    ] 200
[2026-06-05 05:13:12,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:12,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:13:12,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:13:12,735.735 INFO    ] No camera update needed
[2026-06-05 05:13:12,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:13:12,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:13:12,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:13:12,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:13:14,791.791 INFO    ] ================================================
[2026-06-05 05:13:14,807.807 INFO    ] Launching Daemon at Fri Jun  5 05:13:14 IST 2026
[2026-06-05 05:13:14,818.818 INFO    ] ================================================
[2026-06-05 05:13:15,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:13:15
[2026-06-05 05:13:16,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:13:16,370.370 INFO    ] Initializing speech engine...
[2026-06-05 05:13:16,382.382 INFO    ] 2026-06-05 05:13:16
[2026-06-05 05:13:16,653.653 INFO    ] 2026-06-05 05:13:16
[2026-06-05 05:13:16,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:13:16,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:13:16,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:13:17,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:13:17,152.152 INFO    ] time= 05/06/2026 05:13:17
[2026-06-05 05:13:17,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:13:17,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:13:17,353.353 INFO    ] No existing commands found in stream
[2026-06-05 05:13:22,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:13:22,437.437 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 05:13:24,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:13:24,200.200 INFO    ] Checking for system updates...
[2026-06-05 05:13:24,237.237 INFO    ] 200
[2026-06-05 05:13:24,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:24,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:13:24,297.297 INFO    ] No update needed
[2026-06-05 05:13:24,300.300 INFO    ] Checking for camera pi updates...
[2026-06-05 05:13:24,338.338 INFO    ] 200
[2026-06-05 05:13:24,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:24,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:13:24,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:13:24,426.426 INFO    ] No camera update needed
[2026-06-05 05:13:24,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:13:24,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:13:24,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:13:24,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:13:26,482.482 INFO    ] ================================================
[2026-06-05 05:13:26,498.498 INFO    ] Launching Daemon at Fri Jun  5 05:13:26 IST 2026
[2026-06-05 05:13:26,509.509 INFO    ] ================================================
[2026-06-05 05:13:27,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:13:27
[2026-06-05 05:13:27,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:13:27,991.991 INFO    ] Initializing speech engine...
[2026-06-05 05:13:28,000.000 INFO    ] 2026-06-05 05:13:27
[2026-06-05 05:13:28,247.247 INFO    ] 2026-06-05 05:13:28
[2026-06-05 05:13:28,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:13:28,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:13:28,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:13:28,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:13:28,716.716 INFO    ] time= 05/06/2026 05:13:28
[2026-06-05 05:13:28,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:13:28,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:13:28,873.873 INFO    ] No existing commands found in stream
[2026-06-05 05:13:33,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:13:33,889.889 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 05:13:35,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:13:35,858.858 INFO    ] Checking for system updates...
[2026-06-05 05:13:35,894.894 INFO    ] 200
[2026-06-05 05:13:35,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:35,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:13:35,954.954 INFO    ] No update needed
[2026-06-05 05:13:35,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 05:13:35,993.993 INFO    ] 200
[2026-06-05 05:13:35,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:36,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:13:36,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:13:36,079.079 INFO    ] No camera update needed
[2026-06-05 05:13:36,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:13:36,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:13:36,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:13:36,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:13:38,135.135 INFO    ] ================================================
[2026-06-05 05:13:38,150.150 INFO    ] Launching Daemon at Fri Jun  5 05:13:38 IST 2026
[2026-06-05 05:13:38,161.161 INFO    ] ================================================
[2026-06-05 05:13:38,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:13:38
[2026-06-05 05:13:39,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:13:39,618.618 INFO    ] Initializing speech engine...
[2026-06-05 05:13:39,624.624 INFO    ] 2026-06-05 05:13:39
[2026-06-05 05:13:39,870.870 INFO    ] 2026-06-05 05:13:39
[2026-06-05 05:13:39,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:13:40,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:13:40,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:13:40,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:13:40,344.344 INFO    ] time= 05/06/2026 05:13:40
[2026-06-05 05:13:40,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:13:40,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:13:40,488.488 INFO    ] No existing commands found in stream
[2026-06-05 05:13:45,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:13:45,505.505 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 05:13:48,515.515 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:13:48,518.518 INFO    ] Checking for system updates...
[2026-06-05 05:13:48,553.553 INFO    ] 200
[2026-06-05 05:13:48,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:48,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:13:48,611.611 INFO    ] No update needed
[2026-06-05 05:13:48,614.614 INFO    ] Checking for camera pi updates...
[2026-06-05 05:13:48,648.648 INFO    ] 200
[2026-06-05 05:13:48,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:48,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:13:48,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:13:48,739.739 INFO    ] No camera update needed
[2026-06-05 05:13:48,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:13:48,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:13:48,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:13:48,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:13:50,796.796 INFO    ] ================================================
[2026-06-05 05:13:50,811.811 INFO    ] Launching Daemon at Fri Jun  5 05:13:50 IST 2026
[2026-06-05 05:13:50,822.822 INFO    ] ================================================
[2026-06-05 05:13:51,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:13:51
[2026-06-05 05:13:51,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:13:52,224.224 INFO    ] Initializing speech engine...
[2026-06-05 05:13:52,239.239 INFO    ] 2026-06-05 05:13:52
[2026-06-05 05:13:52,506.506 INFO    ] 2026-06-05 05:13:52
[2026-06-05 05:13:52,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:13:52,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:13:52,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:13:52,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:13:52,883.883 INFO    ] time= 05/06/2026 05:13:52
[2026-06-05 05:13:52,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:13:52,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:13:52,989.989 INFO    ] No existing commands found in stream
[2026-06-05 05:13:58,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:13:58,004.004 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 05:13:59,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:13:59,049.049 INFO    ] Checking for system updates...
[2026-06-05 05:13:59,085.085 INFO    ] 200
[2026-06-05 05:13:59,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:59,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:13:59,143.143 INFO    ] No update needed
[2026-06-05 05:13:59,145.145 INFO    ] Checking for camera pi updates...
[2026-06-05 05:13:59,179.179 INFO    ] 200
[2026-06-05 05:13:59,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:13:59,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:13:59,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:13:59,277.277 INFO    ] No camera update needed
[2026-06-05 05:13:59,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:13:59,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:13:59,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:13:59,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:14:01,332.332 INFO    ] ================================================
[2026-06-05 05:14:01,348.348 INFO    ] Launching Daemon at Fri Jun  5 05:14:01 IST 2026
[2026-06-05 05:14:01,359.359 INFO    ] ================================================
[2026-06-05 05:14:02,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:14:02
[2026-06-05 05:14:02,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:14:03,047.047 INFO    ] Initializing speech engine...
[2026-06-05 05:14:03,073.073 INFO    ] 2026-06-05 05:14:03
[2026-06-05 05:14:03,368.368 INFO    ] 2026-06-05 05:14:03
[2026-06-05 05:14:03,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:14:03,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:14:03,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:14:03,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:14:03,906.906 INFO    ] time= 05/06/2026 05:14:03
[2026-06-05 05:14:03,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:14:04,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:14:04,072.072 INFO    ] No existing commands found in stream
[2026-06-05 05:14:09,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:14:09,105.105 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 05:14:10,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:14:10,499.499 INFO    ] Checking for system updates...
[2026-06-05 05:14:10,536.536 INFO    ] 200
[2026-06-05 05:14:10,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:10,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:14:10,600.600 INFO    ] No update needed
[2026-06-05 05:14:10,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 05:14:10,636.636 INFO    ] 200
[2026-06-05 05:14:10,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:10,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:14:10,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:14:10,730.730 INFO    ] No camera update needed
[2026-06-05 05:14:10,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:14:10,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:14:10,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:14:10,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:14:12,786.786 INFO    ] ================================================
[2026-06-05 05:14:12,803.803 INFO    ] Launching Daemon at Fri Jun  5 05:14:12 IST 2026
[2026-06-05 05:14:12,814.814 INFO    ] ================================================
[2026-06-05 05:14:13,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:14:13
[2026-06-05 05:14:13,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:14:14,247.247 INFO    ] Initializing speech engine...
[2026-06-05 05:14:14,265.265 INFO    ] 2026-06-05 05:14:14
[2026-06-05 05:14:14,517.517 INFO    ] 2026-06-05 05:14:14
[2026-06-05 05:14:14,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:14:14,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:14:14,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:14:14,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:14:14,896.896 INFO    ] time= 05/06/2026 05:14:14
[2026-06-05 05:14:14,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:14:14,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:14:15,055.055 INFO    ] No existing commands found in stream
[2026-06-05 05:14:20,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:14:20,088.088 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 05:14:22,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:14:22,467.467 INFO    ] Checking for system updates...
[2026-06-05 05:14:22,503.503 INFO    ] 200
[2026-06-05 05:14:22,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:22,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:14:22,560.560 INFO    ] No update needed
[2026-06-05 05:14:22,562.562 INFO    ] Checking for camera pi updates...
[2026-06-05 05:14:22,599.599 INFO    ] 200
[2026-06-05 05:14:22,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:22,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:14:22,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:14:22,684.684 INFO    ] No camera update needed
[2026-06-05 05:14:22,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:14:22,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:14:22,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:14:22,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:14:24,742.742 INFO    ] ================================================
[2026-06-05 05:14:24,757.757 INFO    ] Launching Daemon at Fri Jun  5 05:14:24 IST 2026
[2026-06-05 05:14:24,769.769 INFO    ] ================================================
[2026-06-05 05:14:25,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:14:25
[2026-06-05 05:14:25,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:14:26,168.168 INFO    ] Initializing speech engine...
[2026-06-05 05:14:26,180.180 INFO    ] 2026-06-05 05:14:26
[2026-06-05 05:14:26,446.446 INFO    ] 2026-06-05 05:14:26
[2026-06-05 05:14:26,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:14:26,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:14:26,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:14:26,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:14:26,803.803 INFO    ] time= 05/06/2026 05:14:26
[2026-06-05 05:14:26,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:14:26,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:14:26,900.900 INFO    ] No existing commands found in stream
[2026-06-05 05:14:31,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:14:31,916.916 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 05:14:35,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:14:35,101.101 INFO    ] Checking for system updates...
[2026-06-05 05:14:35,137.137 INFO    ] 200
[2026-06-05 05:14:35,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:35,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:14:35,204.204 INFO    ] No update needed
[2026-06-05 05:14:35,206.206 INFO    ] Checking for camera pi updates...
[2026-06-05 05:14:35,245.245 INFO    ] 200
[2026-06-05 05:14:35,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:35,295.295 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:14:35,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:14:35,339.339 INFO    ] No camera update needed
[2026-06-05 05:14:35,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:14:35,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:14:35,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:14:35,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:14:37,398.398 INFO    ] ================================================
[2026-06-05 05:14:37,414.414 INFO    ] Launching Daemon at Fri Jun  5 05:14:37 IST 2026
[2026-06-05 05:14:37,425.425 INFO    ] ================================================
[2026-06-05 05:14:38,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:14:38
[2026-06-05 05:14:38,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:14:38,919.919 INFO    ] Initializing speech engine...
[2026-06-05 05:14:38,928.928 INFO    ] 2026-06-05 05:14:38
[2026-06-05 05:14:39,176.176 INFO    ] 2026-06-05 05:14:39
[2026-06-05 05:14:39,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:14:39,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:14:39,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:14:39,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:14:39,645.645 INFO    ] time= 05/06/2026 05:14:39
[2026-06-05 05:14:39,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:14:39,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:14:39,799.799 INFO    ] No existing commands found in stream
[2026-06-05 05:14:44,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:14:44,833.833 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 05:14:45,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:14:45,868.868 INFO    ] Checking for system updates...
[2026-06-05 05:14:45,904.904 INFO    ] 200
[2026-06-05 05:14:45,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:45,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:14:45,963.963 INFO    ] No update needed
[2026-06-05 05:14:45,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 05:14:46,003.003 INFO    ] 200
[2026-06-05 05:14:46,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:46,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:14:46,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:14:46,091.091 INFO    ] No camera update needed
[2026-06-05 05:14:46,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:14:46,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:14:46,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:14:46,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:14:48,149.149 INFO    ] ================================================
[2026-06-05 05:14:48,169.169 INFO    ] Launching Daemon at Fri Jun  5 05:14:48 IST 2026
[2026-06-05 05:14:48,180.180 INFO    ] ================================================
[2026-06-05 05:14:48,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:14:48
[2026-06-05 05:14:49,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:14:49,670.670 INFO    ] Initializing speech engine...
[2026-06-05 05:14:49,679.679 INFO    ] 2026-06-05 05:14:49
[2026-06-05 05:14:49,943.943 INFO    ] 2026-06-05 05:14:49
[2026-06-05 05:14:49,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:14:50,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:14:50,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:14:50,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:14:50,400.400 INFO    ] time= 05/06/2026 05:14:50
[2026-06-05 05:14:50,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:14:50,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:14:50,552.552 INFO    ] No existing commands found in stream
[2026-06-05 05:14:55,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:14:55,575.575 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 05:14:59,316.316 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:14:59,318.318 INFO    ] Checking for system updates...
[2026-06-05 05:14:59,355.355 INFO    ] 200
[2026-06-05 05:14:59,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:59,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:14:59,413.413 INFO    ] No update needed
[2026-06-05 05:14:59,415.415 INFO    ] Checking for camera pi updates...
[2026-06-05 05:14:59,449.449 INFO    ] 200
[2026-06-05 05:14:59,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:14:59,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:14:59,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:14:59,539.539 INFO    ] No camera update needed
[2026-06-05 05:14:59,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:14:59,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:14:59,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:14:59,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:15:01,595.595 INFO    ] ================================================
[2026-06-05 05:15:01,611.611 INFO    ] Launching Daemon at Fri Jun  5 05:15:01 IST 2026
[2026-06-05 05:15:01,623.623 INFO    ] ================================================
[2026-06-05 05:15:02,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:15:02
[2026-06-05 05:15:03,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:15:03,753.753 INFO    ] Initializing speech engine...
[2026-06-05 05:15:03,764.764 INFO    ] 2026-06-05 05:15:03
[2026-06-05 05:15:04,109.109 INFO    ] 2026-06-05 05:15:04
[2026-06-05 05:15:04,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:15:04,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:15:04,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:15:04,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:15:04,509.509 INFO    ] time= 05/06/2026 05:15:04
[2026-06-05 05:15:04,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:15:04,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:15:04,685.685 INFO    ] No existing commands found in stream
[2026-06-05 05:15:09,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:15:09,719.719 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 05:15:11,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:15:11,499.499 INFO    ] Checking for system updates...
[2026-06-05 05:15:11,535.535 INFO    ] 200
[2026-06-05 05:15:11,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:11,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:15:11,594.594 INFO    ] No update needed
[2026-06-05 05:15:11,596.596 INFO    ] Checking for camera pi updates...
[2026-06-05 05:15:11,630.630 INFO    ] 200
[2026-06-05 05:15:11,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:11,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:15:11,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:15:11,719.719 INFO    ] No camera update needed
[2026-06-05 05:15:11,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:15:11,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:15:11,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:15:11,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:15:13,778.778 INFO    ] ================================================
[2026-06-05 05:15:13,794.794 INFO    ] Launching Daemon at Fri Jun  5 05:15:13 IST 2026
[2026-06-05 05:15:13,806.806 INFO    ] ================================================
[2026-06-05 05:15:14,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:15:14
[2026-06-05 05:15:14,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:15:15,228.228 INFO    ] Initializing speech engine...
[2026-06-05 05:15:15,237.237 INFO    ] 2026-06-05 05:15:15
[2026-06-05 05:15:15,483.483 INFO    ] 2026-06-05 05:15:15
[2026-06-05 05:15:15,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:15:15,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:15:15,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:15:15,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:15:15,855.855 INFO    ] time= 05/06/2026 05:15:15
[2026-06-05 05:15:15,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:15:15,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:15:16,035.035 INFO    ] No existing commands found in stream
[2026-06-05 05:15:21,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:15:21,063.063 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 05:15:23,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:15:23,362.362 INFO    ] Checking for system updates...
[2026-06-05 05:15:23,399.399 INFO    ] 200
[2026-06-05 05:15:23,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:23,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:15:23,464.464 INFO    ] No update needed
[2026-06-05 05:15:23,467.467 INFO    ] Checking for camera pi updates...
[2026-06-05 05:15:23,500.500 INFO    ] 200
[2026-06-05 05:15:23,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:23,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:15:23,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:15:23,694.694 INFO    ] No camera update needed
[2026-06-05 05:15:23,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:15:23,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:15:23,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:15:23,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:15:25,751.751 INFO    ] ================================================
[2026-06-05 05:15:25,768.768 INFO    ] Launching Daemon at Fri Jun  5 05:15:25 IST 2026
[2026-06-05 05:15:25,780.780 INFO    ] ================================================
[2026-06-05 05:15:26,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:15:26
[2026-06-05 05:15:26,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:15:27,221.221 INFO    ] Initializing speech engine...
[2026-06-05 05:15:27,228.228 INFO    ] 2026-06-05 05:15:27
[2026-06-05 05:15:27,486.486 INFO    ] 2026-06-05 05:15:27
[2026-06-05 05:15:27,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:15:27,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:15:27,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:15:27,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:15:27,905.905 INFO    ] time= 05/06/2026 05:15:27
[2026-06-05 05:15:27,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:15:27,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:15:28,061.061 INFO    ] No existing commands found in stream
[2026-06-05 05:15:33,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:15:33,076.076 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 05:15:34,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:15:34,108.108 INFO    ] Checking for system updates...
[2026-06-05 05:15:34,146.146 INFO    ] 200
[2026-06-05 05:15:34,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:34,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:15:34,206.206 INFO    ] No update needed
[2026-06-05 05:15:34,208.208 INFO    ] Checking for camera pi updates...
[2026-06-05 05:15:34,248.248 INFO    ] 200
[2026-06-05 05:15:34,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:34,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:15:34,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:15:34,347.347 INFO    ] No camera update needed
[2026-06-05 05:15:34,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:15:34,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:15:34,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:15:34,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:15:36,407.407 INFO    ] ================================================
[2026-06-05 05:15:36,423.423 INFO    ] Launching Daemon at Fri Jun  5 05:15:36 IST 2026
[2026-06-05 05:15:36,434.434 INFO    ] ================================================
[2026-06-05 05:15:37,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:15:37
[2026-06-05 05:15:37,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:15:37,919.919 INFO    ] Initializing speech engine...
[2026-06-05 05:15:37,943.943 INFO    ] 2026-06-05 05:15:37
[2026-06-05 05:15:38,225.225 INFO    ] 2026-06-05 05:15:38
[2026-06-05 05:15:38,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:15:38,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:15:38,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:15:38,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:15:38,612.612 INFO    ] time= 05/06/2026 05:15:38
[2026-06-05 05:15:38,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:15:38,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:15:38,692.692 INFO    ] No existing commands found in stream
[2026-06-05 05:15:43,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:15:43,710.710 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 05:15:45,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:15:45,445.445 INFO    ] Checking for system updates...
[2026-06-05 05:15:45,482.482 INFO    ] 200
[2026-06-05 05:15:45,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:45,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:15:45,549.549 INFO    ] No update needed
[2026-06-05 05:15:45,551.551 INFO    ] Checking for camera pi updates...
[2026-06-05 05:15:45,585.585 INFO    ] 200
[2026-06-05 05:15:45,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:45,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:15:45,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:15:45,684.684 INFO    ] No camera update needed
[2026-06-05 05:15:45,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:15:45,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:15:45,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:15:45,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:15:47,740.740 INFO    ] ================================================
[2026-06-05 05:15:47,756.756 INFO    ] Launching Daemon at Fri Jun  5 05:15:47 IST 2026
[2026-06-05 05:15:47,768.768 INFO    ] ================================================
[2026-06-05 05:15:48,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:15:48
[2026-06-05 05:15:49,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:15:49,472.472 INFO    ] Initializing speech engine...
[2026-06-05 05:15:49,482.482 INFO    ] 2026-06-05 05:15:49
[2026-06-05 05:15:49,791.791 INFO    ] 2026-06-05 05:15:49
[2026-06-05 05:15:49,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:15:50,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:15:50,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:15:50,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:15:50,302.302 INFO    ] time= 05/06/2026 05:15:50
[2026-06-05 05:15:50,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:15:50,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:15:50,452.452 INFO    ] No existing commands found in stream
[2026-06-05 05:15:55,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:15:55,473.473 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 05:15:58,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:15:58,850.850 INFO    ] Checking for system updates...
[2026-06-05 05:15:58,888.888 INFO    ] 200
[2026-06-05 05:15:58,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:58,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:15:58,948.948 INFO    ] No update needed
[2026-06-05 05:15:58,951.951 INFO    ] Checking for camera pi updates...
[2026-06-05 05:15:58,991.991 INFO    ] 200
[2026-06-05 05:15:58,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:15:59,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:15:59,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:15:59,089.089 INFO    ] No camera update needed
[2026-06-05 05:15:59,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:15:59,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:15:59,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:15:59,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:16:01,149.149 INFO    ] ================================================
[2026-06-05 05:16:01,164.164 INFO    ] Launching Daemon at Fri Jun  5 05:16:01 IST 2026
[2026-06-05 05:16:01,175.175 INFO    ] ================================================
[2026-06-05 05:16:02,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:16:02
[2026-06-05 05:16:02,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:16:03,074.074 INFO    ] Initializing speech engine...
[2026-06-05 05:16:03,090.090 INFO    ] 2026-06-05 05:16:03
[2026-06-05 05:16:03,394.394 INFO    ] 2026-06-05 05:16:03
[2026-06-05 05:16:03,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:16:03,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:16:03,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:16:03,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:16:03,869.869 INFO    ] time= 05/06/2026 05:16:03
[2026-06-05 05:16:03,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:16:03,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:16:04,030.030 INFO    ] No existing commands found in stream
[2026-06-05 05:16:09,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:16:09,044.044 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 05:16:09,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:16:09,758.758 INFO    ] Checking for system updates...
[2026-06-05 05:16:09,795.795 INFO    ] 200
[2026-06-05 05:16:09,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:09,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:16:09,853.853 INFO    ] No update needed
[2026-06-05 05:16:09,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 05:16:09,890.890 INFO    ] 200
[2026-06-05 05:16:09,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:09,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:16:09,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:16:09,987.987 INFO    ] No camera update needed
[2026-06-05 05:16:09,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:16:09,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:16:09,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:16:10,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:16:12,044.044 INFO    ] ================================================
[2026-06-05 05:16:12,059.059 INFO    ] Launching Daemon at Fri Jun  5 05:16:12 IST 2026
[2026-06-05 05:16:12,070.070 INFO    ] ================================================
[2026-06-05 05:16:12,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:16:12
[2026-06-05 05:16:13,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:16:13,496.496 INFO    ] Initializing speech engine...
[2026-06-05 05:16:13,502.502 INFO    ] 2026-06-05 05:16:13
[2026-06-05 05:16:13,811.811 INFO    ] 2026-06-05 05:16:13
[2026-06-05 05:16:13,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:16:14,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:16:14,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:16:14,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:16:14,196.196 INFO    ] time= 05/06/2026 05:16:14
[2026-06-05 05:16:14,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:16:14,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:16:14,321.321 INFO    ] No existing commands found in stream
[2026-06-05 05:16:19,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:16:19,342.342 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 05:16:20,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:16:20,736.736 INFO    ] Checking for system updates...
[2026-06-05 05:16:20,776.776 INFO    ] 200
[2026-06-05 05:16:20,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:20,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:16:20,836.836 INFO    ] No update needed
[2026-06-05 05:16:20,838.838 INFO    ] Checking for camera pi updates...
[2026-06-05 05:16:20,877.877 INFO    ] 200
[2026-06-05 05:16:20,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:20,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:16:20,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:16:20,973.973 INFO    ] No camera update needed
[2026-06-05 05:16:20,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:16:20,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:16:20,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:16:20,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:16:23,029.029 INFO    ] ================================================
[2026-06-05 05:16:23,044.044 INFO    ] Launching Daemon at Fri Jun  5 05:16:23 IST 2026
[2026-06-05 05:16:23,054.054 INFO    ] ================================================
[2026-06-05 05:16:23,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:16:23
[2026-06-05 05:16:24,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:16:24,663.663 INFO    ] Initializing speech engine...
[2026-06-05 05:16:24,676.676 INFO    ] 2026-06-05 05:16:24
[2026-06-05 05:16:24,989.989 INFO    ] 2026-06-05 05:16:24
[2026-06-05 05:16:25,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:16:25,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:16:25,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:16:25,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:16:25,510.510 INFO    ] time= 05/06/2026 05:16:25
[2026-06-05 05:16:25,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:16:25,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:16:25,670.670 INFO    ] No existing commands found in stream
[2026-06-05 05:16:30,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:16:30,688.688 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 05:16:32,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:16:32,766.766 INFO    ] Checking for system updates...
[2026-06-05 05:16:32,806.806 INFO    ] 200
[2026-06-05 05:16:32,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:32,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:16:32,884.884 INFO    ] No update needed
[2026-06-05 05:16:32,886.886 INFO    ] Checking for camera pi updates...
[2026-06-05 05:16:32,924.924 INFO    ] 200
[2026-06-05 05:16:32,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:32,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:16:33,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:16:33,003.003 INFO    ] No camera update needed
[2026-06-05 05:16:33,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:16:33,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:16:33,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:16:33,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:16:35,066.066 INFO    ] ================================================
[2026-06-05 05:16:35,082.082 INFO    ] Launching Daemon at Fri Jun  5 05:16:35 IST 2026
[2026-06-05 05:16:35,093.093 INFO    ] ================================================
[2026-06-05 05:16:35,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:16:35
[2026-06-05 05:16:36,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:16:36,557.557 INFO    ] Initializing speech engine...
[2026-06-05 05:16:36,564.564 INFO    ] 2026-06-05 05:16:36
[2026-06-05 05:16:36,826.826 INFO    ] 2026-06-05 05:16:36
[2026-06-05 05:16:36,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:16:37,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:16:37,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:16:37,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:16:37,285.285 INFO    ] time= 05/06/2026 05:16:37
[2026-06-05 05:16:37,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:16:37,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:16:37,435.435 INFO    ] No existing commands found in stream
[2026-06-05 05:16:42,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:16:42,459.459 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 05:16:45,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:16:45,436.436 INFO    ] Checking for system updates...
[2026-06-05 05:16:45,472.472 INFO    ] 200
[2026-06-05 05:16:45,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:45,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:16:45,532.532 INFO    ] No update needed
[2026-06-05 05:16:45,535.535 INFO    ] Checking for camera pi updates...
[2026-06-05 05:16:45,569.569 INFO    ] 200
[2026-06-05 05:16:45,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:45,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:16:45,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:16:45,654.654 INFO    ] No camera update needed
[2026-06-05 05:16:45,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:16:45,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:16:45,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:16:45,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:16:47,711.711 INFO    ] ================================================
[2026-06-05 05:16:47,732.732 INFO    ] Launching Daemon at Fri Jun  5 05:16:47 IST 2026
[2026-06-05 05:16:47,742.742 INFO    ] ================================================
[2026-06-05 05:16:48,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:16:48
[2026-06-05 05:16:48,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:16:49,199.199 INFO    ] Initializing speech engine...
[2026-06-05 05:16:49,224.224 INFO    ] 2026-06-05 05:16:49
[2026-06-05 05:16:49,497.497 INFO    ] 2026-06-05 05:16:49
[2026-06-05 05:16:49,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:16:49,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:16:49,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:16:49,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:16:49,916.916 INFO    ] time= 05/06/2026 05:16:49
[2026-06-05 05:16:49,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:16:49,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:16:50,063.063 INFO    ] No existing commands found in stream
[2026-06-05 05:16:55,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:16:55,091.091 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 05:16:59,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:16:59,186.186 INFO    ] Checking for system updates...
[2026-06-05 05:16:59,223.223 INFO    ] 200
[2026-06-05 05:16:59,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:59,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:16:59,286.286 INFO    ] No update needed
[2026-06-05 05:16:59,289.289 INFO    ] Checking for camera pi updates...
[2026-06-05 05:16:59,323.323 INFO    ] 200
[2026-06-05 05:16:59,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:16:59,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:16:59,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:16:59,417.417 INFO    ] No camera update needed
[2026-06-05 05:16:59,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:16:59,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:16:59,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:16:59,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:17:01,489.489 INFO    ] ================================================
[2026-06-05 05:17:01,527.527 INFO    ] Launching Daemon at Fri Jun  5 05:17:01 IST 2026
[2026-06-05 05:17:01,568.568 INFO    ] ================================================
[2026-06-05 05:17:02,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:17:02
[2026-06-05 05:17:03,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:17:03,377.377 INFO    ] Initializing speech engine...
[2026-06-05 05:17:03,397.397 INFO    ] 2026-06-05 05:17:03
[2026-06-05 05:17:03,661.661 INFO    ] 2026-06-05 05:17:03
[2026-06-05 05:17:03,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:17:03,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:17:03,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:17:04,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:17:04,040.040 INFO    ] time= 05/06/2026 05:17:04
[2026-06-05 05:17:04,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:17:04,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:17:04,134.134 INFO    ] No existing commands found in stream
[2026-06-05 05:17:09,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:17:09,168.168 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 05:17:10,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:17:10,219.219 INFO    ] Checking for system updates...
[2026-06-05 05:17:10,255.255 INFO    ] 200
[2026-06-05 05:17:10,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:10,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:17:10,317.317 INFO    ] No update needed
[2026-06-05 05:17:10,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 05:17:10,353.353 INFO    ] 200
[2026-06-05 05:17:10,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:10,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:17:10,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:17:10,446.446 INFO    ] No camera update needed
[2026-06-05 05:17:10,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:17:10,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:17:10,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:17:10,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:17:12,502.502 INFO    ] ================================================
[2026-06-05 05:17:12,517.517 INFO    ] Launching Daemon at Fri Jun  5 05:17:12 IST 2026
[2026-06-05 05:17:12,528.528 INFO    ] ================================================
[2026-06-05 05:17:13,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:17:13
[2026-06-05 05:17:13,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:17:13,927.927 INFO    ] Initializing speech engine...
[2026-06-05 05:17:13,935.935 INFO    ] 2026-06-05 05:17:13
[2026-06-05 05:17:14,206.206 INFO    ] 2026-06-05 05:17:14
[2026-06-05 05:17:14,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:17:14,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:17:14,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:17:14,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:17:14,695.695 INFO    ] time= 05/06/2026 05:17:14
[2026-06-05 05:17:14,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:17:14,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:17:14,903.903 INFO    ] No existing commands found in stream
[2026-06-05 05:17:19,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:17:19,930.930 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 05:17:22,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:17:22,924.924 INFO    ] Checking for system updates...
[2026-06-05 05:17:22,962.962 INFO    ] 200
[2026-06-05 05:17:22,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:23,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:17:23,025.025 INFO    ] No update needed
[2026-06-05 05:17:23,027.027 INFO    ] Checking for camera pi updates...
[2026-06-05 05:17:23,063.063 INFO    ] 200
[2026-06-05 05:17:23,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:23,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:17:23,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:17:23,170.170 INFO    ] No camera update needed
[2026-06-05 05:17:23,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:17:23,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:17:23,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:17:23,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:17:25,226.226 INFO    ] ================================================
[2026-06-05 05:17:25,241.241 INFO    ] Launching Daemon at Fri Jun  5 05:17:25 IST 2026
[2026-06-05 05:17:25,251.251 INFO    ] ================================================
[2026-06-05 05:17:25,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:17:25
[2026-06-05 05:17:26,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:17:26,709.709 INFO    ] Initializing speech engine...
[2026-06-05 05:17:26,716.716 INFO    ] 2026-06-05 05:17:26
[2026-06-05 05:17:26,978.978 INFO    ] 2026-06-05 05:17:26
[2026-06-05 05:17:27,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:17:27,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:17:27,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:17:27,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:17:27,418.418 INFO    ] time= 05/06/2026 05:17:27
[2026-06-05 05:17:27,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:17:27,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:17:27,590.590 INFO    ] No existing commands found in stream
[2026-06-05 05:17:32,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:17:32,600.600 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 05:17:36,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:17:36,110.110 INFO    ] Checking for system updates...
[2026-06-05 05:17:36,149.149 INFO    ] 200
[2026-06-05 05:17:36,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:36,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:17:36,211.211 INFO    ] No update needed
[2026-06-05 05:17:36,214.214 INFO    ] Checking for camera pi updates...
[2026-06-05 05:17:36,248.248 INFO    ] 200
[2026-06-05 05:17:36,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:36,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:17:36,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:17:36,333.333 INFO    ] No camera update needed
[2026-06-05 05:17:36,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:17:36,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:17:36,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:17:36,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:17:38,390.390 INFO    ] ================================================
[2026-06-05 05:17:38,404.404 INFO    ] Launching Daemon at Fri Jun  5 05:17:38 IST 2026
[2026-06-05 05:17:38,415.415 INFO    ] ================================================
[2026-06-05 05:17:38,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:17:38
[2026-06-05 05:17:39,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:17:39,874.874 INFO    ] Initializing speech engine...
[2026-06-05 05:17:39,884.884 INFO    ] 2026-06-05 05:17:39
[2026-06-05 05:17:40,150.150 INFO    ] 2026-06-05 05:17:40
[2026-06-05 05:17:40,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:17:40,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:17:40,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:17:40,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:17:40,517.517 INFO    ] time= 05/06/2026 05:17:40
[2026-06-05 05:17:40,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:17:40,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:17:40,641.641 INFO    ] No existing commands found in stream
[2026-06-05 05:17:45,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:17:45,659.659 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 05:17:46,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:17:46,497.497 INFO    ] Checking for system updates...
[2026-06-05 05:17:46,537.537 INFO    ] 200
[2026-06-05 05:17:46,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:46,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:17:46,597.597 INFO    ] No update needed
[2026-06-05 05:17:46,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 05:17:46,634.634 INFO    ] 200
[2026-06-05 05:17:46,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:46,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:17:46,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:17:46,722.722 INFO    ] No camera update needed
[2026-06-05 05:17:46,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:17:46,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:17:46,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:17:46,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:17:48,778.778 INFO    ] ================================================
[2026-06-05 05:17:48,793.793 INFO    ] Launching Daemon at Fri Jun  5 05:17:48 IST 2026
[2026-06-05 05:17:48,804.804 INFO    ] ================================================
[2026-06-05 05:17:49,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:17:49
[2026-06-05 05:17:49,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:17:50,225.225 INFO    ] Initializing speech engine...
[2026-06-05 05:17:50,233.233 INFO    ] 2026-06-05 05:17:50
[2026-06-05 05:17:50,484.484 INFO    ] 2026-06-05 05:17:50
[2026-06-05 05:17:50,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:17:50,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:17:50,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:17:50,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:17:50,926.926 INFO    ] time= 05/06/2026 05:17:50
[2026-06-05 05:17:50,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:17:50,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:17:51,068.068 INFO    ] No existing commands found in stream
[2026-06-05 05:17:56,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:17:56,091.091 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 05:17:58,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:17:58,881.881 INFO    ] Checking for system updates...
[2026-06-05 05:17:58,920.920 INFO    ] 200
[2026-06-05 05:17:58,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:58,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:17:58,982.982 INFO    ] No update needed
[2026-06-05 05:17:58,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 05:17:59,026.026 INFO    ] 200
[2026-06-05 05:17:59,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:17:59,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:17:59,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:17:59,119.119 INFO    ] No camera update needed
[2026-06-05 05:17:59,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:17:59,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:17:59,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:17:59,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:18:01,177.177 INFO    ] ================================================
[2026-06-05 05:18:01,192.192 INFO    ] Launching Daemon at Fri Jun  5 05:18:01 IST 2026
[2026-06-05 05:18:01,202.202 INFO    ] ================================================
[2026-06-05 05:18:01,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:18:01
[2026-06-05 05:18:02,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:18:02,950.950 INFO    ] Initializing speech engine...
[2026-06-05 05:18:02,980.980 INFO    ] 2026-06-05 05:18:02
[2026-06-05 05:18:03,273.273 INFO    ] 2026-06-05 05:18:03
[2026-06-05 05:18:03,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:18:03,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:18:03,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:18:03,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:18:03,653.653 INFO    ] time= 05/06/2026 05:18:03
[2026-06-05 05:18:03,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:18:03,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:18:03,823.823 INFO    ] No existing commands found in stream
[2026-06-05 05:18:08,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:18:08,857.857 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 05:18:12,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:18:12,588.588 INFO    ] Checking for system updates...
[2026-06-05 05:18:12,626.626 INFO    ] 200
[2026-06-05 05:18:12,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:18:12,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:18:12,698.698 INFO    ] No update needed
[2026-06-05 05:18:12,701.701 INFO    ] Checking for camera pi updates...
[2026-06-05 05:18:12,738.738 INFO    ] 200
[2026-06-05 05:18:12,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:18:12,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:18:12,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:18:12,829.829 INFO    ] No camera update needed
[2026-06-05 05:18:12,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:18:12,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:18:12,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:18:12,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:18:14,888.888 INFO    ] ================================================
[2026-06-05 05:18:14,903.903 INFO    ] Launching Daemon at Fri Jun  5 05:18:14 IST 2026
[2026-06-05 05:18:14,915.915 INFO    ] ================================================
[2026-06-05 05:18:15,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:18:15
[2026-06-05 05:18:16,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:18:16,395.395 INFO    ] Initializing speech engine...
[2026-06-05 05:18:16,405.405 INFO    ] 2026-06-05 05:18:16
[2026-06-05 05:18:16,665.665 INFO    ] 2026-06-05 05:18:16
[2026-06-05 05:18:16,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:18:16,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:18:16,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:18:17,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:18:17,036.036 INFO    ] time= 05/06/2026 05:18:17
[2026-06-05 05:18:17,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:18:17,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:18:17,214.214 INFO    ] No existing commands found in stream
[2026-06-05 05:18:22,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:18:22,240.240 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 05:18:24,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:18:24,087.087 INFO    ] Checking for system updates...
[2026-06-05 05:18:24,127.127 INFO    ] 200
[2026-06-05 05:18:24,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:18:24,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:18:24,205.205 INFO    ] No update needed
[2026-06-05 05:18:24,208.208 INFO    ] Checking for camera pi updates...
[2026-06-05 05:18:24,244.244 INFO    ] 200
[2026-06-05 05:18:24,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:18:24,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:18:24,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:18:24,340.340 INFO    ] No camera update needed
[2026-06-05 05:18:24,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:18:24,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:18:24,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:18:24,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:18:26,396.396 INFO    ] ================================================
[2026-06-05 05:18:26,412.412 INFO    ] Launching Daemon at Fri Jun  5 05:18:26 IST 2026
[2026-06-05 05:18:26,423.423 INFO    ] ================================================
[2026-06-05 05:18:26,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:18:26
[2026-06-05 05:18:27,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:18:27,860.860 INFO    ] Initializing speech engine...
[2026-06-05 05:18:27,874.874 INFO    ] 2026-06-05 05:18:27
[2026-06-05 05:18:28,159.159 INFO    ] 2026-06-05 05:18:28
[2026-06-05 05:18:28,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:18:28,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:18:28,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:18:28,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:18:28,530.530 INFO    ] time= 05/06/2026 05:18:28
[2026-06-05 05:18:28,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:18:28,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:18:28,653.653 INFO    ] No existing commands found in stream
[2026-06-05 05:18:33,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:18:33,669.669 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 05:18:37,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:18:37,392.392 INFO    ] Checking for system updates...
[2026-06-05 05:18:37,431.431 INFO    ] 200
[2026-06-05 05:18:37,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:18:37,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:18:37,489.489 INFO    ] No update needed
[2026-06-05 05:18:37,491.491 INFO    ] Checking for camera pi updates...
[2026-06-05 05:18:37,525.525 INFO    ] 200
[2026-06-05 05:18:37,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:18:37,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:18:37,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:18:37,624.624 INFO    ] No camera update needed
[2026-06-05 05:18:37,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:18:37,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:18:37,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:18:37,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:18:39,681.681 INFO    ] ================================================
[2026-06-05 05:18:39,697.697 INFO    ] Launching Daemon at Fri Jun  5 05:18:39 IST 2026
[2026-06-05 05:18:39,707.707 INFO    ] ================================================
[2026-06-05 05:18:40,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:18:40
[2026-06-05 05:18:41,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:18:41,301.301 INFO    ] Initializing speech engine...
[2026-06-05 05:18:41,315.315 INFO    ] 2026-06-05 05:18:41
[2026-06-05 05:18:41,621.621 INFO    ] 2026-06-05 05:18:41
[2026-06-05 05:18:41,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:18:41,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:18:41,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:18:42,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:18:42,061.061 INFO    ] time= 05/06/2026 05:18:42
[2026-06-05 05:18:42,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:18:42,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:18:42,254.254 INFO    ] No existing commands found in stream
[2026-06-05 05:18:47,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:18:47,280.280 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 05:18:50,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:18:50,908.908 INFO    ] Checking for system updates...
[2026-06-05 05:18:50,945.945 INFO    ] 200
[2026-06-05 05:18:50,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:18:51,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:18:51,010.010 INFO    ] No update needed
[2026-06-05 05:18:51,012.012 INFO    ] Checking for camera pi updates...
[2026-06-05 05:18:51,046.046 INFO    ] 200
[2026-06-05 05:18:51,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:18:51,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:18:51,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:18:51,146.146 INFO    ] No camera update needed
[2026-06-05 05:18:51,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:18:51,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:18:51,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:18:51,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:18:53,203.203 INFO    ] ================================================
[2026-06-05 05:18:53,218.218 INFO    ] Launching Daemon at Fri Jun  5 05:18:53 IST 2026
[2026-06-05 05:18:53,229.229 INFO    ] ================================================
[2026-06-05 05:18:53,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:18:53
[2026-06-05 05:18:54,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:18:54,693.693 INFO    ] Initializing speech engine...
[2026-06-05 05:18:54,697.697 INFO    ] 2026-06-05 05:18:54
[2026-06-05 05:18:54,949.949 INFO    ] 2026-06-05 05:18:54
[2026-06-05 05:18:54,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:18:55,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:18:55,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:18:55,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:18:55,336.336 INFO    ] time= 05/06/2026 05:18:55
[2026-06-05 05:18:55,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:18:55,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:18:55,424.424 INFO    ] No existing commands found in stream
[2026-06-05 05:19:00,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:19:00,440.440 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 05:19:01,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:19:01,570.570 INFO    ] Checking for system updates...
[2026-06-05 05:19:01,642.642 INFO    ] 200
[2026-06-05 05:19:01,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:01,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:19:01,762.762 INFO    ] No update needed
[2026-06-05 05:19:01,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 05:19:01,831.831 INFO    ] 200
[2026-06-05 05:19:01,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:01,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:19:01,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:19:01,914.914 INFO    ] No camera update needed
[2026-06-05 05:19:01,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:19:01,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:19:01,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:19:01,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:19:03,977.977 INFO    ] ================================================
[2026-06-05 05:19:03,992.992 INFO    ] Launching Daemon at Fri Jun  5 05:19:03 IST 2026
[2026-06-05 05:19:04,003.003 INFO    ] ================================================
[2026-06-05 05:19:04,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:19:04
[2026-06-05 05:19:05,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:19:05,600.600 INFO    ] Initializing speech engine...
[2026-06-05 05:19:05,612.612 INFO    ] 2026-06-05 05:19:05
[2026-06-05 05:19:05,919.919 INFO    ] 2026-06-05 05:19:05
[2026-06-05 05:19:06,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:19:06,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:19:06,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:19:06,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:19:06,446.446 INFO    ] time= 05/06/2026 05:19:06
[2026-06-05 05:19:06,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:19:06,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:19:06,599.599 INFO    ] No existing commands found in stream
[2026-06-05 05:19:11,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:19:11,619.619 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 05:19:15,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:19:15,312.312 INFO    ] Checking for system updates...
[2026-06-05 05:19:15,353.353 INFO    ] 200
[2026-06-05 05:19:15,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:15,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:19:15,412.412 INFO    ] No update needed
[2026-06-05 05:19:15,415.415 INFO    ] Checking for camera pi updates...
[2026-06-05 05:19:15,450.450 INFO    ] 200
[2026-06-05 05:19:15,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:15,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:19:15,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:19:15,542.542 INFO    ] No camera update needed
[2026-06-05 05:19:15,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:19:15,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:19:15,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:19:15,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:19:17,599.599 INFO    ] ================================================
[2026-06-05 05:19:17,615.615 INFO    ] Launching Daemon at Fri Jun  5 05:19:17 IST 2026
[2026-06-05 05:19:17,627.627 INFO    ] ================================================
[2026-06-05 05:19:18,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:19:18
[2026-06-05 05:19:18,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:19:19,233.233 INFO    ] Initializing speech engine...
[2026-06-05 05:19:19,246.246 INFO    ] 2026-06-05 05:19:19
[2026-06-05 05:19:19,532.532 INFO    ] 2026-06-05 05:19:19
[2026-06-05 05:19:19,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:19:19,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:19:19,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:19:19,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:19:20,011.011 INFO    ] time= 05/06/2026 05:19:19
[2026-06-05 05:19:20,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:19:20,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:19:20,146.146 INFO    ] No existing commands found in stream
[2026-06-05 05:19:25,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:19:25,161.161 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 05:19:26,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:19:26,302.302 INFO    ] Checking for system updates...
[2026-06-05 05:19:26,339.339 INFO    ] 200
[2026-06-05 05:19:26,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:26,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:19:26,399.399 INFO    ] No update needed
[2026-06-05 05:19:26,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 05:19:26,435.435 INFO    ] 200
[2026-06-05 05:19:26,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:26,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:19:26,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:19:26,526.526 INFO    ] No camera update needed
[2026-06-05 05:19:26,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:19:26,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:19:26,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:19:26,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:19:28,584.584 INFO    ] ================================================
[2026-06-05 05:19:28,600.600 INFO    ] Launching Daemon at Fri Jun  5 05:19:28 IST 2026
[2026-06-05 05:19:28,611.611 INFO    ] ================================================
[2026-06-05 05:19:29,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:19:29
[2026-06-05 05:19:29,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:19:30,105.105 INFO    ] Initializing speech engine...
[2026-06-05 05:19:30,114.114 INFO    ] 2026-06-05 05:19:30
[2026-06-05 05:19:30,409.409 INFO    ] 2026-06-05 05:19:30
[2026-06-05 05:19:30,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:19:30,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:19:30,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:19:30,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:19:30,950.950 INFO    ] time= 05/06/2026 05:19:30
[2026-06-05 05:19:30,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:19:30,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:19:31,114.114 INFO    ] No existing commands found in stream
[2026-06-05 05:19:36,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:19:36,137.137 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 05:19:36,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:19:36,530.530 INFO    ] Checking for system updates...
[2026-06-05 05:19:36,567.567 INFO    ] 200
[2026-06-05 05:19:36,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:36,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:19:36,630.630 INFO    ] No update needed
[2026-06-05 05:19:36,632.632 INFO    ] Checking for camera pi updates...
[2026-06-05 05:19:36,666.666 INFO    ] 200
[2026-06-05 05:19:36,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:36,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:19:36,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:19:36,864.864 INFO    ] No camera update needed
[2026-06-05 05:19:36,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:19:36,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:19:36,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:19:36,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:19:38,919.919 INFO    ] ================================================
[2026-06-05 05:19:38,934.934 INFO    ] Launching Daemon at Fri Jun  5 05:19:38 IST 2026
[2026-06-05 05:19:38,945.945 INFO    ] ================================================
[2026-06-05 05:19:39,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:19:39
[2026-06-05 05:19:40,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:19:40,549.549 INFO    ] Initializing speech engine...
[2026-06-05 05:19:40,563.563 INFO    ] 2026-06-05 05:19:40
[2026-06-05 05:19:40,842.842 INFO    ] 2026-06-05 05:19:40
[2026-06-05 05:19:40,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:19:41,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:19:41,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:19:41,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:19:41,371.371 INFO    ] time= 05/06/2026 05:19:41
[2026-06-05 05:19:41,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:19:41,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:19:41,528.528 INFO    ] No existing commands found in stream
[2026-06-05 05:19:46,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:19:46,562.562 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 05:19:49,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:19:49,662.662 INFO    ] Checking for system updates...
[2026-06-05 05:19:49,699.699 INFO    ] 200
[2026-06-05 05:19:49,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:49,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:19:49,761.761 INFO    ] No update needed
[2026-06-05 05:19:49,763.763 INFO    ] Checking for camera pi updates...
[2026-06-05 05:19:49,797.797 INFO    ] 200
[2026-06-05 05:19:49,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:19:49,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:19:49,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:19:49,887.887 INFO    ] No camera update needed
[2026-06-05 05:19:49,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:19:49,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:19:49,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:19:49,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:19:51,941.941 INFO    ] ================================================
[2026-06-05 05:19:51,956.956 INFO    ] Launching Daemon at Fri Jun  5 05:19:51 IST 2026
[2026-06-05 05:19:51,967.967 INFO    ] ================================================
[2026-06-05 05:19:52,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:19:52
[2026-06-05 05:19:53,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:19:53,364.364 INFO    ] Initializing speech engine...
[2026-06-05 05:19:53,372.372 INFO    ] 2026-06-05 05:19:53
[2026-06-05 05:19:53,645.645 INFO    ] 2026-06-05 05:19:53
[2026-06-05 05:19:53,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:19:53,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:19:53,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:19:54,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:19:54,023.023 INFO    ] time= 05/06/2026 05:19:54
[2026-06-05 05:19:54,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:19:54,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:19:54,194.194 INFO    ] No existing commands found in stream
[2026-06-05 05:19:59,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:19:59,221.221 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 05:20:03,705.705 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:20:03,708.708 INFO    ] Checking for system updates...
[2026-06-05 05:20:03,745.745 INFO    ] 200
[2026-06-05 05:20:03,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:03,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:20:03,813.813 INFO    ] No update needed
[2026-06-05 05:20:03,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 05:20:03,851.851 INFO    ] 200
[2026-06-05 05:20:03,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:03,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:20:04,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:20:04,005.005 INFO    ] No camera update needed
[2026-06-05 05:20:04,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:20:04,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:20:04,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:20:04,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:20:06,067.067 INFO    ] ================================================
[2026-06-05 05:20:06,086.086 INFO    ] Launching Daemon at Fri Jun  5 05:20:06 IST 2026
[2026-06-05 05:20:06,097.097 INFO    ] ================================================
[2026-06-05 05:20:06,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:20:06
[2026-06-05 05:20:07,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:20:07,746.746 INFO    ] Initializing speech engine...
[2026-06-05 05:20:07,753.753 INFO    ] 2026-06-05 05:20:07
[2026-06-05 05:20:08,016.016 INFO    ] 2026-06-05 05:20:08
[2026-06-05 05:20:08,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:20:08,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:20:08,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:20:08,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:20:08,507.507 INFO    ] time= 05/06/2026 05:20:08
[2026-06-05 05:20:08,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:20:08,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:20:08,688.688 INFO    ] No existing commands found in stream
[2026-06-05 05:20:13,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:20:13,727.727 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 05:20:17,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:20:17,527.527 INFO    ] Checking for system updates...
[2026-06-05 05:20:17,568.568 INFO    ] 200
[2026-06-05 05:20:17,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:17,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:20:17,626.626 INFO    ] No update needed
[2026-06-05 05:20:17,629.629 INFO    ] Checking for camera pi updates...
[2026-06-05 05:20:17,667.667 INFO    ] 200
[2026-06-05 05:20:17,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:17,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:20:17,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:20:17,758.758 INFO    ] No camera update needed
[2026-06-05 05:20:17,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:20:17,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:20:17,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:20:17,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:20:19,814.814 INFO    ] ================================================
[2026-06-05 05:20:19,829.829 INFO    ] Launching Daemon at Fri Jun  5 05:20:19 IST 2026
[2026-06-05 05:20:19,840.840 INFO    ] ================================================
[2026-06-05 05:20:20,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:20:20
[2026-06-05 05:20:21,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:20:21,494.494 INFO    ] Initializing speech engine...
[2026-06-05 05:20:21,499.499 INFO    ] 2026-06-05 05:20:21
[2026-06-05 05:20:21,812.812 INFO    ] 2026-06-05 05:20:21
[2026-06-05 05:20:21,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:20:22,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:20:22,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:20:22,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:20:22,317.317 INFO    ] time= 05/06/2026 05:20:22
[2026-06-05 05:20:22,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:20:22,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:20:22,470.470 INFO    ] No existing commands found in stream
[2026-06-05 05:20:27,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:20:27,488.488 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 05:20:31,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:20:31,160.160 INFO    ] Checking for system updates...
[2026-06-05 05:20:31,198.198 INFO    ] 200
[2026-06-05 05:20:31,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:31,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:20:31,266.266 INFO    ] No update needed
[2026-06-05 05:20:31,269.269 INFO    ] Checking for camera pi updates...
[2026-06-05 05:20:31,304.304 INFO    ] 200
[2026-06-05 05:20:31,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:31,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:20:31,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:20:31,399.399 INFO    ] No camera update needed
[2026-06-05 05:20:31,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:20:31,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:20:31,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:20:31,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:20:33,458.458 INFO    ] ================================================
[2026-06-05 05:20:33,474.474 INFO    ] Launching Daemon at Fri Jun  5 05:20:33 IST 2026
[2026-06-05 05:20:33,485.485 INFO    ] ================================================
[2026-06-05 05:20:34,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:20:34
[2026-06-05 05:20:34,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:20:34,948.948 INFO    ] Initializing speech engine...
[2026-06-05 05:20:34,962.962 INFO    ] 2026-06-05 05:20:34
[2026-06-05 05:20:35,246.246 INFO    ] 2026-06-05 05:20:35
[2026-06-05 05:20:35,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:20:35,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:20:35,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:20:35,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:20:35,628.628 INFO    ] time= 05/06/2026 05:20:35
[2026-06-05 05:20:35,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:20:35,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:20:35,758.758 INFO    ] No existing commands found in stream
[2026-06-05 05:20:40,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:20:40,774.774 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 05:20:43,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:20:43,100.100 INFO    ] Checking for system updates...
[2026-06-05 05:20:43,142.142 INFO    ] 200
[2026-06-05 05:20:43,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:43,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:20:43,202.202 INFO    ] No update needed
[2026-06-05 05:20:43,205.205 INFO    ] Checking for camera pi updates...
[2026-06-05 05:20:43,240.240 INFO    ] 200
[2026-06-05 05:20:43,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:43,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:20:43,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:20:43,328.328 INFO    ] No camera update needed
[2026-06-05 05:20:43,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:20:43,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:20:43,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:20:43,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:20:45,389.389 INFO    ] ================================================
[2026-06-05 05:20:45,404.404 INFO    ] Launching Daemon at Fri Jun  5 05:20:45 IST 2026
[2026-06-05 05:20:45,414.414 INFO    ] ================================================
[2026-06-05 05:20:45,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:20:45
[2026-06-05 05:20:46,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:20:46,877.877 INFO    ] Initializing speech engine...
[2026-06-05 05:20:46,886.886 INFO    ] 2026-06-05 05:20:46
[2026-06-05 05:20:47,146.146 INFO    ] 2026-06-05 05:20:47
[2026-06-05 05:20:47,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:20:47,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:20:47,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:20:47,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:20:47,626.626 INFO    ] time= 05/06/2026 05:20:47
[2026-06-05 05:20:47,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:20:47,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:20:47,808.808 INFO    ] No existing commands found in stream
[2026-06-05 05:20:52,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:20:52,835.835 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 05:20:53,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:20:53,247.247 INFO    ] Checking for system updates...
[2026-06-05 05:20:53,283.283 INFO    ] 200
[2026-06-05 05:20:53,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:53,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:20:53,350.350 INFO    ] No update needed
[2026-06-05 05:20:53,352.352 INFO    ] Checking for camera pi updates...
[2026-06-05 05:20:53,387.387 INFO    ] 200
[2026-06-05 05:20:53,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:20:53,431.431 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:20:53,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:20:53,479.479 INFO    ] No camera update needed
[2026-06-05 05:20:53,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:20:53,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:20:53,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:20:53,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:20:55,537.537 INFO    ] ================================================
[2026-06-05 05:20:55,553.553 INFO    ] Launching Daemon at Fri Jun  5 05:20:55 IST 2026
[2026-06-05 05:20:55,564.564 INFO    ] ================================================
[2026-06-05 05:20:56,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:20:56
[2026-06-05 05:20:56,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:20:56,975.975 INFO    ] Initializing speech engine...
[2026-06-05 05:20:56,991.991 INFO    ] 2026-06-05 05:20:56
[2026-06-05 05:20:57,246.246 INFO    ] 2026-06-05 05:20:57
[2026-06-05 05:20:57,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:20:57,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:20:57,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:20:57,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:20:57,623.623 INFO    ] time= 05/06/2026 05:20:57
[2026-06-05 05:20:57,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:20:57,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:20:57,817.817 INFO    ] No existing commands found in stream
[2026-06-05 05:21:02,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:21:02,841.841 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 05:21:04,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:21:04,828.828 INFO    ] Checking for system updates...
[2026-06-05 05:21:04,886.886 INFO    ] 200
[2026-06-05 05:21:04,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:04,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:21:04,950.950 INFO    ] No update needed
[2026-06-05 05:21:04,952.952 INFO    ] Checking for camera pi updates...
[2026-06-05 05:21:04,986.986 INFO    ] 200
[2026-06-05 05:21:04,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:05,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:21:05,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:21:05,067.067 INFO    ] No camera update needed
[2026-06-05 05:21:05,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:21:05,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:21:05,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:21:05,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:21:07,124.124 INFO    ] ================================================
[2026-06-05 05:21:07,140.140 INFO    ] Launching Daemon at Fri Jun  5 05:21:07 IST 2026
[2026-06-05 05:21:07,151.151 INFO    ] ================================================
[2026-06-05 05:21:07,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:21:07
[2026-06-05 05:21:08,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:21:08,608.608 INFO    ] Initializing speech engine...
[2026-06-05 05:21:08,613.613 INFO    ] 2026-06-05 05:21:08
[2026-06-05 05:21:08,862.862 INFO    ] 2026-06-05 05:21:08
[2026-06-05 05:21:08,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:21:09,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:21:09,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:21:09,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:21:09,331.331 INFO    ] time= 05/06/2026 05:21:09
[2026-06-05 05:21:09,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:21:09,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:21:09,479.479 INFO    ] No existing commands found in stream
[2026-06-05 05:21:14,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:21:14,494.494 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 05:21:16,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:21:16,431.431 INFO    ] Checking for system updates...
[2026-06-05 05:21:16,467.467 INFO    ] 200
[2026-06-05 05:21:16,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:16,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:21:16,525.525 INFO    ] No update needed
[2026-06-05 05:21:16,527.527 INFO    ] Checking for camera pi updates...
[2026-06-05 05:21:16,561.561 INFO    ] 200
[2026-06-05 05:21:16,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:16,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:21:16,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:21:16,659.659 INFO    ] No camera update needed
[2026-06-05 05:21:16,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:21:16,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:21:16,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:21:16,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:21:18,716.716 INFO    ] ================================================
[2026-06-05 05:21:18,731.731 INFO    ] Launching Daemon at Fri Jun  5 05:21:18 IST 2026
[2026-06-05 05:21:18,742.742 INFO    ] ================================================
[2026-06-05 05:21:19,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:21:19
[2026-06-05 05:21:19,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:21:20,205.205 INFO    ] Initializing speech engine...
[2026-06-05 05:21:20,213.213 INFO    ] 2026-06-05 05:21:20
[2026-06-05 05:21:20,476.476 INFO    ] 2026-06-05 05:21:20
[2026-06-05 05:21:20,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:21:20,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:21:20,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:21:20,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:21:20,957.957 INFO    ] time= 05/06/2026 05:21:20
[2026-06-05 05:21:21,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:21:21,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:21:21,151.151 INFO    ] No existing commands found in stream
[2026-06-05 05:21:26,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:21:26,182.182 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 05:21:27,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:21:27,308.308 INFO    ] Checking for system updates...
[2026-06-05 05:21:27,348.348 INFO    ] 200
[2026-06-05 05:21:27,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:27,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:21:27,409.409 INFO    ] No update needed
[2026-06-05 05:21:27,411.411 INFO    ] Checking for camera pi updates...
[2026-06-05 05:21:27,445.445 INFO    ] 200
[2026-06-05 05:21:27,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:27,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:21:27,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:21:27,541.541 INFO    ] No camera update needed
[2026-06-05 05:21:27,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:21:27,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:21:27,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:21:27,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:21:29,600.600 INFO    ] ================================================
[2026-06-05 05:21:29,615.615 INFO    ] Launching Daemon at Fri Jun  5 05:21:29 IST 2026
[2026-06-05 05:21:29,627.627 INFO    ] ================================================
[2026-06-05 05:21:30,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:21:30
[2026-06-05 05:21:30,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:21:31,103.103 INFO    ] Initializing speech engine...
[2026-06-05 05:21:31,118.118 INFO    ] 2026-06-05 05:21:31
[2026-06-05 05:21:31,404.404 INFO    ] 2026-06-05 05:21:31
[2026-06-05 05:21:31,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:21:31,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:21:31,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:21:31,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:21:31,806.806 INFO    ] time= 05/06/2026 05:21:31
[2026-06-05 05:21:31,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:21:31,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:21:31,871.871 INFO    ] No existing commands found in stream
[2026-06-05 05:21:36,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:21:36,885.885 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 05:21:38,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:21:38,601.601 INFO    ] Checking for system updates...
[2026-06-05 05:21:38,638.638 INFO    ] 200
[2026-06-05 05:21:38,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:38,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:21:38,699.699 INFO    ] No update needed
[2026-06-05 05:21:38,701.701 INFO    ] Checking for camera pi updates...
[2026-06-05 05:21:38,735.735 INFO    ] 200
[2026-06-05 05:21:38,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:38,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:21:38,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:21:38,932.932 INFO    ] No camera update needed
[2026-06-05 05:21:38,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:21:38,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:21:38,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:21:38,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:21:40,988.988 INFO    ] ================================================
[2026-06-05 05:21:41,003.003 INFO    ] Launching Daemon at Fri Jun  5 05:21:40 IST 2026
[2026-06-05 05:21:41,014.014 INFO    ] ================================================
[2026-06-05 05:21:41,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:21:41
[2026-06-05 05:21:42,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:21:42,652.652 INFO    ] Initializing speech engine...
[2026-06-05 05:21:42,673.673 INFO    ] 2026-06-05 05:21:42
[2026-06-05 05:21:42,960.960 INFO    ] 2026-06-05 05:21:42
[2026-06-05 05:21:42,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:21:43,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:21:43,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:21:43,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:21:43,346.346 INFO    ] time= 05/06/2026 05:21:43
[2026-06-05 05:21:43,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:21:43,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:21:43,431.431 INFO    ] No existing commands found in stream
[2026-06-05 05:21:48,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:21:48,445.445 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 05:21:49,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:21:49,676.676 INFO    ] Checking for system updates...
[2026-06-05 05:21:49,720.720 INFO    ] 200
[2026-06-05 05:21:49,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:49,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:21:49,797.797 INFO    ] No update needed
[2026-06-05 05:21:49,800.800 INFO    ] Checking for camera pi updates...
[2026-06-05 05:21:49,838.838 INFO    ] 200
[2026-06-05 05:21:49,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:21:49,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:21:49,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:21:49,916.916 INFO    ] No camera update needed
[2026-06-05 05:21:49,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:21:49,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:21:49,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:21:49,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:21:51,973.973 INFO    ] ================================================
[2026-06-05 05:21:51,989.989 INFO    ] Launching Daemon at Fri Jun  5 05:21:51 IST 2026
[2026-06-05 05:21:52,000.000 INFO    ] ================================================
[2026-06-05 05:21:52,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:21:52
[2026-06-05 05:21:53,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:21:53,403.403 INFO    ] Initializing speech engine...
[2026-06-05 05:21:53,426.426 INFO    ] 2026-06-05 05:21:53
[2026-06-05 05:21:53,683.683 INFO    ] 2026-06-05 05:21:53
[2026-06-05 05:21:53,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:21:53,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:21:53,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:21:54,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:21:54,130.130 INFO    ] time= 05/06/2026 05:21:54
[2026-06-05 05:21:54,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:21:54,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:21:54,270.270 INFO    ] No existing commands found in stream
[2026-06-05 05:21:59,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:21:59,283.283 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 05:22:02,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:22:02,848.848 INFO    ] Checking for system updates...
[2026-06-05 05:22:02,895.895 INFO    ] 200
[2026-06-05 05:22:02,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:02,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:22:02,963.963 INFO    ] No update needed
[2026-06-05 05:22:02,967.967 INFO    ] Checking for camera pi updates...
[2026-06-05 05:22:03,013.013 INFO    ] 200
[2026-06-05 05:22:03,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:03,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:22:03,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:22:03,100.100 INFO    ] No camera update needed
[2026-06-05 05:22:03,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:22:03,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:22:03,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:22:03,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:22:05,168.168 INFO    ] ================================================
[2026-06-05 05:22:05,183.183 INFO    ] Launching Daemon at Fri Jun  5 05:22:05 IST 2026
[2026-06-05 05:22:05,194.194 INFO    ] ================================================
[2026-06-05 05:22:05,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:22:05
[2026-06-05 05:22:06,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:22:06,808.808 INFO    ] Initializing speech engine...
[2026-06-05 05:22:06,814.814 INFO    ] 2026-06-05 05:22:06
[2026-06-05 05:22:07,106.106 INFO    ] 2026-06-05 05:22:07
[2026-06-05 05:22:07,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:22:07,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:22:07,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:22:07,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:22:07,527.527 INFO    ] time= 05/06/2026 05:22:07
[2026-06-05 05:22:07,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:22:07,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:22:07,651.651 INFO    ] No existing commands found in stream
[2026-06-05 05:22:12,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:22:12,666.666 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 05:22:16,992.992 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:22:16,995.995 INFO    ] Checking for system updates...
[2026-06-05 05:22:17,031.031 INFO    ] 200
[2026-06-05 05:22:17,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:17,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:22:17,089.089 INFO    ] No update needed
[2026-06-05 05:22:17,091.091 INFO    ] Checking for camera pi updates...
[2026-06-05 05:22:17,125.125 INFO    ] 200
[2026-06-05 05:22:17,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:17,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:22:17,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:22:17,222.222 INFO    ] No camera update needed
[2026-06-05 05:22:17,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:22:17,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:22:17,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:22:17,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:22:19,277.277 INFO    ] ================================================
[2026-06-05 05:22:19,293.293 INFO    ] Launching Daemon at Fri Jun  5 05:22:19 IST 2026
[2026-06-05 05:22:19,305.305 INFO    ] ================================================
[2026-06-05 05:22:19,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:22:19
[2026-06-05 05:22:20,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:22:20,841.841 INFO    ] Initializing speech engine...
[2026-06-05 05:22:20,852.852 INFO    ] 2026-06-05 05:22:20
[2026-06-05 05:22:21,106.106 INFO    ] 2026-06-05 05:22:21
[2026-06-05 05:22:21,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:22:21,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:22:21,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:22:21,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:22:21,482.482 INFO    ] time= 05/06/2026 05:22:21
[2026-06-05 05:22:21,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:22:21,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:22:21,657.657 INFO    ] No existing commands found in stream
[2026-06-05 05:22:26,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:22:26,690.690 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 05:22:29,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:22:29,346.346 INFO    ] Checking for system updates...
[2026-06-05 05:22:29,387.387 INFO    ] 200
[2026-06-05 05:22:29,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:29,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:22:29,454.454 INFO    ] No update needed
[2026-06-05 05:22:29,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 05:22:29,495.495 INFO    ] 200
[2026-06-05 05:22:29,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:29,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:22:29,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:22:29,585.585 INFO    ] No camera update needed
[2026-06-05 05:22:29,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:22:29,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:22:29,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:22:29,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:22:31,644.644 INFO    ] ================================================
[2026-06-05 05:22:31,662.662 INFO    ] Launching Daemon at Fri Jun  5 05:22:31 IST 2026
[2026-06-05 05:22:31,674.674 INFO    ] ================================================
[2026-06-05 05:22:32,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:22:32
[2026-06-05 05:22:32,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:22:33,222.222 INFO    ] Initializing speech engine...
[2026-06-05 05:22:33,231.231 INFO    ] 2026-06-05 05:22:33
[2026-06-05 05:22:33,547.547 INFO    ] 2026-06-05 05:22:33
[2026-06-05 05:22:33,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:22:33,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:22:33,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:22:34,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:22:34,055.055 INFO    ] time= 05/06/2026 05:22:34
[2026-06-05 05:22:34,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:22:34,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:22:34,224.224 INFO    ] No existing commands found in stream
[2026-06-05 05:22:39,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:22:39,260.260 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 05:22:41,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:22:41,451.451 INFO    ] Checking for system updates...
[2026-06-05 05:22:41,489.489 INFO    ] 200
[2026-06-05 05:22:41,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:41,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:22:41,552.552 INFO    ] No update needed
[2026-06-05 05:22:41,554.554 INFO    ] Checking for camera pi updates...
[2026-06-05 05:22:41,588.588 INFO    ] 200
[2026-06-05 05:22:41,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:41,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:22:41,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:22:41,674.674 INFO    ] No camera update needed
[2026-06-05 05:22:41,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:22:41,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:22:41,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:22:41,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:22:43,730.730 INFO    ] ================================================
[2026-06-05 05:22:43,745.745 INFO    ] Launching Daemon at Fri Jun  5 05:22:43 IST 2026
[2026-06-05 05:22:43,757.757 INFO    ] ================================================
[2026-06-05 05:22:44,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:22:44
[2026-06-05 05:22:44,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:22:45,182.182 INFO    ] Initializing speech engine...
[2026-06-05 05:22:45,196.196 INFO    ] 2026-06-05 05:22:45
[2026-06-05 05:22:45,462.462 INFO    ] 2026-06-05 05:22:45
[2026-06-05 05:22:45,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:22:45,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:22:45,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:22:45,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:22:45,936.936 INFO    ] time= 05/06/2026 05:22:45
[2026-06-05 05:22:45,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:22:46,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:22:46,087.087 INFO    ] No existing commands found in stream
[2026-06-05 05:22:51,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:22:51,102.102 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 05:22:54,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:22:54,407.407 INFO    ] Checking for system updates...
[2026-06-05 05:22:54,443.443 INFO    ] 200
[2026-06-05 05:22:54,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:54,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:22:54,509.509 INFO    ] No update needed
[2026-06-05 05:22:54,511.511 INFO    ] Checking for camera pi updates...
[2026-06-05 05:22:54,545.545 INFO    ] 200
[2026-06-05 05:22:54,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:22:54,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:22:54,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:22:54,635.635 INFO    ] No camera update needed
[2026-06-05 05:22:54,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:22:54,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:22:54,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:22:54,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:22:56,691.691 INFO    ] ================================================
[2026-06-05 05:22:56,707.707 INFO    ] Launching Daemon at Fri Jun  5 05:22:56 IST 2026
[2026-06-05 05:22:56,719.719 INFO    ] ================================================
[2026-06-05 05:22:57,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:22:57
[2026-06-05 05:22:57,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:22:58,205.205 INFO    ] Initializing speech engine...
[2026-06-05 05:22:58,220.220 INFO    ] 2026-06-05 05:22:58
[2026-06-05 05:22:58,531.531 INFO    ] 2026-06-05 05:22:58
[2026-06-05 05:22:58,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:22:58,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:22:58,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:22:59,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:22:59,042.042 INFO    ] time= 05/06/2026 05:22:59
[2026-06-05 05:22:59,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:22:59,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:22:59,209.209 INFO    ] No existing commands found in stream
[2026-06-05 05:23:04,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:23:04,248.248 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 05:23:05,448.448 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:23:05,451.451 INFO    ] Checking for system updates...
[2026-06-05 05:23:05,492.492 INFO    ] 200
[2026-06-05 05:23:05,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:05,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:05,555.555 INFO    ] No update needed
[2026-06-05 05:23:05,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 05:23:05,596.596 INFO    ] 200
[2026-06-05 05:23:05,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:05,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:23:05,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:05,681.681 INFO    ] No camera update needed
[2026-06-05 05:23:05,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:23:05,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:23:05,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:23:05,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:23:07,737.737 INFO    ] ================================================
[2026-06-05 05:23:07,753.753 INFO    ] Launching Daemon at Fri Jun  5 05:23:07 IST 2026
[2026-06-05 05:23:07,764.764 INFO    ] ================================================
[2026-06-05 05:23:08,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:23:08
[2026-06-05 05:23:08,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:23:09,232.232 INFO    ] Initializing speech engine...
[2026-06-05 05:23:09,238.238 INFO    ] 2026-06-05 05:23:09
[2026-06-05 05:23:09,492.492 INFO    ] 2026-06-05 05:23:09
[2026-06-05 05:23:09,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:23:09,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:23:09,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:23:09,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:23:09,969.969 INFO    ] time= 05/06/2026 05:23:09
[2026-06-05 05:23:10,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:23:10,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:23:10,115.115 INFO    ] No existing commands found in stream
[2026-06-05 05:23:15,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:23:15,150.150 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 05:23:15,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:23:15,549.549 INFO    ] Checking for system updates...
[2026-06-05 05:23:15,586.586 INFO    ] 200
[2026-06-05 05:23:15,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:15,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:15,647.647 INFO    ] No update needed
[2026-06-05 05:23:15,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 05:23:15,683.683 INFO    ] 200
[2026-06-05 05:23:15,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:15,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:23:15,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:15,794.794 INFO    ] No camera update needed
[2026-06-05 05:23:15,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:23:15,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:23:15,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:23:15,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:23:17,854.854 INFO    ] ================================================
[2026-06-05 05:23:17,869.869 INFO    ] Launching Daemon at Fri Jun  5 05:23:17 IST 2026
[2026-06-05 05:23:17,880.880 INFO    ] ================================================
[2026-06-05 05:23:18,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:23:18
[2026-06-05 05:23:19,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:23:19,279.279 INFO    ] Initializing speech engine...
[2026-06-05 05:23:19,284.284 INFO    ] 2026-06-05 05:23:19
[2026-06-05 05:23:19,559.559 INFO    ] 2026-06-05 05:23:19
[2026-06-05 05:23:19,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:23:19,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:23:19,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:23:19,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:23:19,942.942 INFO    ] time= 05/06/2026 05:23:19
[2026-06-05 05:23:19,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:23:19,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:23:20,122.122 INFO    ] No existing commands found in stream
[2026-06-05 05:23:25,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:23:25,150.150 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 05:23:28,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:23:28,723.723 INFO    ] Checking for system updates...
[2026-06-05 05:23:28,759.759 INFO    ] 200
[2026-06-05 05:23:28,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:28,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:28,816.816 INFO    ] No update needed
[2026-06-05 05:23:28,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 05:23:28,852.852 INFO    ] 200
[2026-06-05 05:23:28,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:28,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:23:28,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:28,938.938 INFO    ] No camera update needed
[2026-06-05 05:23:28,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:23:28,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:23:28,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:23:28,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:23:30,993.993 INFO    ] ================================================
[2026-06-05 05:23:31,008.008 INFO    ] Launching Daemon at Fri Jun  5 05:23:31 IST 2026
[2026-06-05 05:23:31,019.019 INFO    ] ================================================
[2026-06-05 05:23:31,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:23:31
[2026-06-05 05:23:32,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:23:32,498.498 INFO    ] Initializing speech engine...
[2026-06-05 05:23:32,524.524 INFO    ] 2026-06-05 05:23:32
[2026-06-05 05:23:32,822.822 INFO    ] 2026-06-05 05:23:32
[2026-06-05 05:23:32,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:23:33,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:23:33,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:23:33,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:23:33,178.178 INFO    ] time= 05/06/2026 05:23:33
[2026-06-05 05:23:33,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:23:33,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:23:33,303.303 INFO    ] No existing commands found in stream
[2026-06-05 05:23:38,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:23:38,317.317 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 05:23:38,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:23:38,817.817 INFO    ] Checking for system updates...
[2026-06-05 05:23:38,856.856 INFO    ] 200
[2026-06-05 05:23:38,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:38,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:38,920.920 INFO    ] No update needed
[2026-06-05 05:23:38,922.922 INFO    ] Checking for camera pi updates...
[2026-06-05 05:23:38,956.956 INFO    ] 200
[2026-06-05 05:23:38,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:39,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:23:39,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:39,051.051 INFO    ] No camera update needed
[2026-06-05 05:23:39,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:23:39,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:23:39,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:23:39,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:23:41,108.108 INFO    ] ================================================
[2026-06-05 05:23:41,123.123 INFO    ] Launching Daemon at Fri Jun  5 05:23:41 IST 2026
[2026-06-05 05:23:41,134.134 INFO    ] ================================================
[2026-06-05 05:23:41,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:23:41
[2026-06-05 05:23:42,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:23:42,742.742 INFO    ] Initializing speech engine...
[2026-06-05 05:23:42,755.755 INFO    ] 2026-06-05 05:23:42
[2026-06-05 05:23:43,034.034 INFO    ] 2026-06-05 05:23:43
[2026-06-05 05:23:43,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:23:43,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:23:43,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:23:43,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:23:43,573.573 INFO    ] time= 05/06/2026 05:23:43
[2026-06-05 05:23:43,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:23:43,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:23:43,728.728 INFO    ] No existing commands found in stream
[2026-06-05 05:23:48,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:23:48,762.762 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 05:23:52,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:23:52,071.071 INFO    ] Checking for system updates...
[2026-06-05 05:23:52,107.107 INFO    ] 200
[2026-06-05 05:23:52,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:52,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:52,165.165 INFO    ] No update needed
[2026-06-05 05:23:52,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 05:23:52,205.205 INFO    ] 200
[2026-06-05 05:23:52,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:23:52,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:23:52,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:23:52,395.395 INFO    ] No camera update needed
[2026-06-05 05:23:52,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:23:52,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:23:52,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:23:52,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:23:54,454.454 INFO    ] ================================================
[2026-06-05 05:23:54,470.470 INFO    ] Launching Daemon at Fri Jun  5 05:23:54 IST 2026
[2026-06-05 05:23:54,481.481 INFO    ] ================================================
[2026-06-05 05:23:55,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:23:55
[2026-06-05 05:23:55,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:23:55,920.920 INFO    ] Initializing speech engine...
[2026-06-05 05:23:55,931.931 INFO    ] 2026-06-05 05:23:55
[2026-06-05 05:23:56,192.192 INFO    ] 2026-06-05 05:23:56
[2026-06-05 05:23:56,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:23:56,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:23:56,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:23:56,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:23:56,648.648 INFO    ] time= 05/06/2026 05:23:56
[2026-06-05 05:23:56,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:23:56,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:23:56,796.796 INFO    ] No existing commands found in stream
[2026-06-05 05:24:01,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:24:01,810.810 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 05:24:05,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:24:05,420.420 INFO    ] Checking for system updates...
[2026-06-05 05:24:05,463.463 INFO    ] 200
[2026-06-05 05:24:05,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:05,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:24:05,522.522 INFO    ] No update needed
[2026-06-05 05:24:05,524.524 INFO    ] Checking for camera pi updates...
[2026-06-05 05:24:05,561.561 INFO    ] 200
[2026-06-05 05:24:05,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:05,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:24:05,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:24:05,653.653 INFO    ] No camera update needed
[2026-06-05 05:24:05,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:24:05,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:24:05,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:24:05,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:24:07,708.708 INFO    ] ================================================
[2026-06-05 05:24:07,723.723 INFO    ] Launching Daemon at Fri Jun  5 05:24:07 IST 2026
[2026-06-05 05:24:07,734.734 INFO    ] ================================================
[2026-06-05 05:24:08,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:24:08
[2026-06-05 05:24:08,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:24:09,148.148 INFO    ] Initializing speech engine...
[2026-06-05 05:24:09,156.156 INFO    ] 2026-06-05 05:24:09
[2026-06-05 05:24:09,443.443 INFO    ] 2026-06-05 05:24:09
[2026-06-05 05:24:09,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:24:09,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:24:09,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:24:09,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:24:09,812.812 INFO    ] time= 05/06/2026 05:24:09
[2026-06-05 05:24:09,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:24:09,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:24:09,937.937 INFO    ] No existing commands found in stream
[2026-06-05 05:24:14,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:24:14,956.956 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 05:24:18,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:24:18,467.467 INFO    ] Checking for system updates...
[2026-06-05 05:24:18,506.506 INFO    ] 200
[2026-06-05 05:24:18,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:18,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:24:18,564.564 INFO    ] No update needed
[2026-06-05 05:24:18,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 05:24:18,601.601 INFO    ] 200
[2026-06-05 05:24:18,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:18,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:24:18,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:24:18,693.693 INFO    ] No camera update needed
[2026-06-05 05:24:18,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:24:18,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:24:18,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:24:18,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:24:20,747.747 INFO    ] ================================================
[2026-06-05 05:24:20,763.763 INFO    ] Launching Daemon at Fri Jun  5 05:24:20 IST 2026
[2026-06-05 05:24:20,774.774 INFO    ] ================================================
[2026-06-05 05:24:21,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:24:21
[2026-06-05 05:24:21,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:24:22,196.196 INFO    ] Initializing speech engine...
[2026-06-05 05:24:22,204.204 INFO    ] 2026-06-05 05:24:22
[2026-06-05 05:24:22,491.491 INFO    ] 2026-06-05 05:24:22
[2026-06-05 05:24:22,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:24:22,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:24:22,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:24:22,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:24:22,898.898 INFO    ] time= 05/06/2026 05:24:22
[2026-06-05 05:24:22,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:24:22,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:24:23,063.063 INFO    ] No existing commands found in stream
[2026-06-05 05:24:28,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:24:28,091.091 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 05:24:29,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:24:29,226.226 INFO    ] Checking for system updates...
[2026-06-05 05:24:29,263.263 INFO    ] 200
[2026-06-05 05:24:29,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:29,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:24:29,325.325 INFO    ] No update needed
[2026-06-05 05:24:29,328.328 INFO    ] Checking for camera pi updates...
[2026-06-05 05:24:29,361.361 INFO    ] 200
[2026-06-05 05:24:29,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:29,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:24:29,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:24:29,452.452 INFO    ] No camera update needed
[2026-06-05 05:24:29,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:24:29,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:24:29,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:24:29,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:24:31,508.508 INFO    ] ================================================
[2026-06-05 05:24:31,527.527 INFO    ] Launching Daemon at Fri Jun  5 05:24:31 IST 2026
[2026-06-05 05:24:31,538.538 INFO    ] ================================================
[2026-06-05 05:24:32,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:24:32
[2026-06-05 05:24:32,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:24:33,139.139 INFO    ] Initializing speech engine...
[2026-06-05 05:24:33,147.147 INFO    ] 2026-06-05 05:24:33
[2026-06-05 05:24:33,405.405 INFO    ] 2026-06-05 05:24:33
[2026-06-05 05:24:33,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:24:33,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:24:33,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:24:33,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:24:33,852.852 INFO    ] time= 05/06/2026 05:24:33
[2026-06-05 05:24:33,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:24:33,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:24:34,015.015 INFO    ] No existing commands found in stream
[2026-06-05 05:24:39,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:24:39,030.030 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 05:24:40,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:24:40,542.542 INFO    ] Checking for system updates...
[2026-06-05 05:24:40,578.578 INFO    ] 200
[2026-06-05 05:24:40,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:40,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:24:40,635.635 INFO    ] No update needed
[2026-06-05 05:24:40,638.638 INFO    ] Checking for camera pi updates...
[2026-06-05 05:24:40,671.671 INFO    ] 200
[2026-06-05 05:24:40,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:40,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:24:40,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:24:40,769.769 INFO    ] No camera update needed
[2026-06-05 05:24:40,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:24:40,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:24:40,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:24:40,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:24:42,824.824 INFO    ] ================================================
[2026-06-05 05:24:42,840.840 INFO    ] Launching Daemon at Fri Jun  5 05:24:42 IST 2026
[2026-06-05 05:24:42,852.852 INFO    ] ================================================
[2026-06-05 05:24:43,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:24:43
[2026-06-05 05:24:44,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:24:44,422.422 INFO    ] Initializing speech engine...
[2026-06-05 05:24:44,432.432 INFO    ] 2026-06-05 05:24:44
[2026-06-05 05:24:44,700.700 INFO    ] 2026-06-05 05:24:44
[2026-06-05 05:24:44,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:24:44,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:24:44,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:24:45,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:24:45,195.195 INFO    ] time= 05/06/2026 05:24:45
[2026-06-05 05:24:45,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:24:45,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:24:45,385.385 INFO    ] No existing commands found in stream
[2026-06-05 05:24:50,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:24:50,416.416 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 05:24:51,827.827 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:24:51,830.830 INFO    ] Checking for system updates...
[2026-06-05 05:24:51,870.870 INFO    ] 200
[2026-06-05 05:24:51,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:51,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:24:51,937.937 INFO    ] No update needed
[2026-06-05 05:24:51,940.940 INFO    ] Checking for camera pi updates...
[2026-06-05 05:24:51,981.981 INFO    ] 200
[2026-06-05 05:24:51,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:24:52,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:24:52,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:24:52,074.074 INFO    ] No camera update needed
[2026-06-05 05:24:52,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:24:52,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:24:52,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:24:52,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:24:54,132.132 INFO    ] ================================================
[2026-06-05 05:24:54,147.147 INFO    ] Launching Daemon at Fri Jun  5 05:24:54 IST 2026
[2026-06-05 05:24:54,158.158 INFO    ] ================================================
[2026-06-05 05:24:54,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:24:54
[2026-06-05 05:24:55,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:24:55,585.585 INFO    ] Initializing speech engine...
[2026-06-05 05:24:55,598.598 INFO    ] 2026-06-05 05:24:55
[2026-06-05 05:24:55,860.860 INFO    ] 2026-06-05 05:24:55
[2026-06-05 05:24:55,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:24:56,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:24:56,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:24:56,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:24:56,312.312 INFO    ] time= 05/06/2026 05:24:56
[2026-06-05 05:24:56,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:24:56,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:24:56,475.475 INFO    ] No existing commands found in stream
[2026-06-05 05:25:01,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:25:01,502.502 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 05:25:03,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:25:03,637.637 INFO    ] Checking for system updates...
[2026-06-05 05:25:03,673.673 INFO    ] 200
[2026-06-05 05:25:03,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:03,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:25:03,736.736 INFO    ] No update needed
[2026-06-05 05:25:03,738.738 INFO    ] Checking for camera pi updates...
[2026-06-05 05:25:03,772.772 INFO    ] 200
[2026-06-05 05:25:03,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:03,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:25:03,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:25:03,849.849 INFO    ] No camera update needed
[2026-06-05 05:25:03,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:25:03,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:25:03,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:25:03,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:25:05,906.906 INFO    ] ================================================
[2026-06-05 05:25:05,921.921 INFO    ] Launching Daemon at Fri Jun  5 05:25:05 IST 2026
[2026-06-05 05:25:05,932.932 INFO    ] ================================================
[2026-06-05 05:25:06,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:25:06
[2026-06-05 05:25:07,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:25:07,379.379 INFO    ] Initializing speech engine...
[2026-06-05 05:25:07,388.388 INFO    ] 2026-06-05 05:25:07
[2026-06-05 05:25:07,634.634 INFO    ] 2026-06-05 05:25:07
[2026-06-05 05:25:07,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:25:07,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:25:07,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:25:08,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:25:08,054.054 INFO    ] time= 05/06/2026 05:25:08
[2026-06-05 05:25:08,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:25:08,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:25:08,205.205 INFO    ] No existing commands found in stream
[2026-06-05 05:25:13,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:25:13,219.219 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 05:25:17,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:25:17,054.054 INFO    ] Checking for system updates...
[2026-06-05 05:25:17,090.090 INFO    ] 200
[2026-06-05 05:25:17,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:17,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:25:17,149.149 INFO    ] No update needed
[2026-06-05 05:25:17,151.151 INFO    ] Checking for camera pi updates...
[2026-06-05 05:25:17,186.186 INFO    ] 200
[2026-06-05 05:25:17,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:17,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:25:17,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:25:17,280.280 INFO    ] No camera update needed
[2026-06-05 05:25:17,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:25:17,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:25:17,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:25:17,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:25:19,337.337 INFO    ] ================================================
[2026-06-05 05:25:19,352.352 INFO    ] Launching Daemon at Fri Jun  5 05:25:19 IST 2026
[2026-06-05 05:25:19,362.362 INFO    ] ================================================
[2026-06-05 05:25:19,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:25:19
[2026-06-05 05:25:20,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:25:20,793.793 INFO    ] Initializing speech engine...
[2026-06-05 05:25:20,807.807 INFO    ] 2026-06-05 05:25:20
[2026-06-05 05:25:21,074.074 INFO    ] 2026-06-05 05:25:21
[2026-06-05 05:25:21,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:25:21,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:25:21,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:25:21,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:25:21,557.557 INFO    ] time= 05/06/2026 05:25:21
[2026-06-05 05:25:21,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:25:21,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:25:21,695.695 INFO    ] No existing commands found in stream
[2026-06-05 05:25:26,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:25:26,709.709 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 05:25:30,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:25:30,281.281 INFO    ] Checking for system updates...
[2026-06-05 05:25:30,317.317 INFO    ] 200
[2026-06-05 05:25:30,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:30,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:25:30,377.377 INFO    ] No update needed
[2026-06-05 05:25:30,380.380 INFO    ] Checking for camera pi updates...
[2026-06-05 05:25:30,414.414 INFO    ] 200
[2026-06-05 05:25:30,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:30,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:25:30,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:25:30,501.501 INFO    ] No camera update needed
[2026-06-05 05:25:30,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:25:30,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:25:30,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:25:30,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:25:32,558.558 INFO    ] ================================================
[2026-06-05 05:25:32,573.573 INFO    ] Launching Daemon at Fri Jun  5 05:25:32 IST 2026
[2026-06-05 05:25:32,584.584 INFO    ] ================================================
[2026-06-05 05:25:33,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:25:33
[2026-06-05 05:25:33,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:25:34,002.002 INFO    ] Initializing speech engine...
[2026-06-05 05:25:34,011.011 INFO    ] 2026-06-05 05:25:34
[2026-06-05 05:25:34,267.267 INFO    ] 2026-06-05 05:25:34
[2026-06-05 05:25:34,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:25:34,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:25:34,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:25:34,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:25:34,719.719 INFO    ] time= 05/06/2026 05:25:34
[2026-06-05 05:25:34,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:25:34,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:25:34,871.871 INFO    ] No existing commands found in stream
[2026-06-05 05:25:39,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:25:39,885.885 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 05:25:41,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:25:41,231.231 INFO    ] Checking for system updates...
[2026-06-05 05:25:41,268.268 INFO    ] 200
[2026-06-05 05:25:41,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:41,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:25:41,334.334 INFO    ] No update needed
[2026-06-05 05:25:41,336.336 INFO    ] Checking for camera pi updates...
[2026-06-05 05:25:41,373.373 INFO    ] 200
[2026-06-05 05:25:41,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:41,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:25:41,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:25:41,462.462 INFO    ] No camera update needed
[2026-06-05 05:25:41,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:25:41,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:25:41,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:25:41,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:25:43,518.518 INFO    ] ================================================
[2026-06-05 05:25:43,533.533 INFO    ] Launching Daemon at Fri Jun  5 05:25:43 IST 2026
[2026-06-05 05:25:43,544.544 INFO    ] ================================================
[2026-06-05 05:25:44,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:25:44
[2026-06-05 05:25:44,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:25:44,997.997 INFO    ] Initializing speech engine...
[2026-06-05 05:25:45,006.006 INFO    ] 2026-06-05 05:25:44
[2026-06-05 05:25:45,256.256 INFO    ] 2026-06-05 05:25:45
[2026-06-05 05:25:45,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:25:45,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:25:45,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:25:45,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:25:45,751.751 INFO    ] time= 05/06/2026 05:25:45
[2026-06-05 05:25:45,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:25:45,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:25:45,870.870 INFO    ] No existing commands found in stream
[2026-06-05 05:25:50,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:25:50,885.885 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 05:25:53,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:25:53,281.281 INFO    ] Checking for system updates...
[2026-06-05 05:25:53,320.320 INFO    ] 200
[2026-06-05 05:25:53,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:53,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:25:53,379.379 INFO    ] No update needed
[2026-06-05 05:25:53,381.381 INFO    ] Checking for camera pi updates...
[2026-06-05 05:25:53,420.420 INFO    ] 200
[2026-06-05 05:25:53,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:25:53,463.463 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:25:53,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:25:53,511.511 INFO    ] No camera update needed
[2026-06-05 05:25:53,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:25:53,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:25:53,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:25:53,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:25:55,567.567 INFO    ] ================================================
[2026-06-05 05:25:55,583.583 INFO    ] Launching Daemon at Fri Jun  5 05:25:55 IST 2026
[2026-06-05 05:25:55,594.594 INFO    ] ================================================
[2026-06-05 05:25:56,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:25:56
[2026-06-05 05:25:56,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:25:57,048.048 INFO    ] Initializing speech engine...
[2026-06-05 05:25:57,066.066 INFO    ] 2026-06-05 05:25:57
[2026-06-05 05:25:57,335.335 INFO    ] 2026-06-05 05:25:57
[2026-06-05 05:25:57,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:25:57,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:25:57,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:25:57,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:25:57,723.723 INFO    ] time= 05/06/2026 05:25:57
[2026-06-05 05:25:57,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:25:57,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:25:57,828.828 INFO    ] No existing commands found in stream
[2026-06-05 05:26:02,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:26:02,841.841 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 05:26:06,709.709 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:26:06,712.712 INFO    ] Checking for system updates...
[2026-06-05 05:26:06,748.748 INFO    ] 200
[2026-06-05 05:26:06,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:06,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:26:06,813.813 INFO    ] No update needed
[2026-06-05 05:26:06,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 05:26:06,851.851 INFO    ] 200
[2026-06-05 05:26:06,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:06,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:26:06,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:26:06,954.954 INFO    ] No camera update needed
[2026-06-05 05:26:06,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:26:06,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:26:06,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:26:06,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:26:09,011.011 INFO    ] ================================================
[2026-06-05 05:26:09,026.026 INFO    ] Launching Daemon at Fri Jun  5 05:26:09 IST 2026
[2026-06-05 05:26:09,037.037 INFO    ] ================================================
[2026-06-05 05:26:09,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:26:09
[2026-06-05 05:26:10,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:26:10,460.460 INFO    ] Initializing speech engine...
[2026-06-05 05:26:10,483.483 INFO    ] 2026-06-05 05:26:10
[2026-06-05 05:26:10,736.736 INFO    ] 2026-06-05 05:26:10
[2026-06-05 05:26:10,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:26:10,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:26:11,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:26:11,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:26:11,209.209 INFO    ] time= 05/06/2026 05:26:11
[2026-06-05 05:26:11,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:26:11,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:26:11,358.358 INFO    ] No existing commands found in stream
[2026-06-05 05:26:16,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:26:16,370.370 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 05:26:19,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:26:19,703.703 INFO    ] Checking for system updates...
[2026-06-05 05:26:19,741.741 INFO    ] 200
[2026-06-05 05:26:19,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:19,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:26:19,811.811 INFO    ] No update needed
[2026-06-05 05:26:19,813.813 INFO    ] Checking for camera pi updates...
[2026-06-05 05:26:19,851.851 INFO    ] 200
[2026-06-05 05:26:19,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:19,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:26:19,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:26:19,947.947 INFO    ] No camera update needed
[2026-06-05 05:26:19,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:26:19,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:26:19,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:26:19,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:26:22,006.006 INFO    ] ================================================
[2026-06-05 05:26:22,021.021 INFO    ] Launching Daemon at Fri Jun  5 05:26:22 IST 2026
[2026-06-05 05:26:22,032.032 INFO    ] ================================================
[2026-06-05 05:26:22,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:26:22
[2026-06-05 05:26:23,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:26:23,480.480 INFO    ] Initializing speech engine...
[2026-06-05 05:26:23,493.493 INFO    ] 2026-06-05 05:26:23
[2026-06-05 05:26:23,760.760 INFO    ] 2026-06-05 05:26:23
[2026-06-05 05:26:23,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:26:24,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:26:24,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:26:24,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:26:24,295.295 INFO    ] time= 05/06/2026 05:26:24
[2026-06-05 05:26:24,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:26:24,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:26:24,432.432 INFO    ] No existing commands found in stream
[2026-06-05 05:26:29,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:26:29,462.462 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 05:26:32,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:26:32,235.235 INFO    ] Checking for system updates...
[2026-06-05 05:26:32,275.275 INFO    ] 200
[2026-06-05 05:26:32,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:32,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:26:32,352.352 INFO    ] No update needed
[2026-06-05 05:26:32,356.356 INFO    ] Checking for camera pi updates...
[2026-06-05 05:26:32,393.393 INFO    ] 200
[2026-06-05 05:26:32,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:32,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:26:32,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:26:32,483.483 INFO    ] No camera update needed
[2026-06-05 05:26:32,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:26:32,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:26:32,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:26:32,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:26:34,540.540 INFO    ] ================================================
[2026-06-05 05:26:34,555.555 INFO    ] Launching Daemon at Fri Jun  5 05:26:34 IST 2026
[2026-06-05 05:26:34,566.566 INFO    ] ================================================
[2026-06-05 05:26:35,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:26:35
[2026-06-05 05:26:35,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:26:35,970.970 INFO    ] Initializing speech engine...
[2026-06-05 05:26:35,983.983 INFO    ] 2026-06-05 05:26:35
[2026-06-05 05:26:36,248.248 INFO    ] 2026-06-05 05:26:36
[2026-06-05 05:26:36,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:26:36,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:26:36,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:26:36,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:26:36,630.630 INFO    ] time= 05/06/2026 05:26:36
[2026-06-05 05:26:36,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:26:36,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:26:36,705.705 INFO    ] No existing commands found in stream
[2026-06-05 05:26:41,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:26:41,720.720 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 05:26:44,312.312 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:26:44,315.315 INFO    ] Checking for system updates...
[2026-06-05 05:26:44,351.351 INFO    ] 200
[2026-06-05 05:26:44,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:44,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:26:44,409.409 INFO    ] No update needed
[2026-06-05 05:26:44,411.411 INFO    ] Checking for camera pi updates...
[2026-06-05 05:26:44,449.449 INFO    ] 200
[2026-06-05 05:26:44,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:44,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:26:44,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:26:44,537.537 INFO    ] No camera update needed
[2026-06-05 05:26:44,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:26:44,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:26:44,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:26:44,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:26:46,595.595 INFO    ] ================================================
[2026-06-05 05:26:46,610.610 INFO    ] Launching Daemon at Fri Jun  5 05:26:46 IST 2026
[2026-06-05 05:26:46,620.620 INFO    ] ================================================
[2026-06-05 05:26:47,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:26:47
[2026-06-05 05:26:47,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:26:48,225.225 INFO    ] Initializing speech engine...
[2026-06-05 05:26:48,235.235 INFO    ] 2026-06-05 05:26:48
[2026-06-05 05:26:48,521.521 INFO    ] 2026-06-05 05:26:48
[2026-06-05 05:26:48,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:26:48,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:26:48,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:26:48,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:26:48,991.991 INFO    ] time= 05/06/2026 05:26:48
[2026-06-05 05:26:49,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:26:49,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:26:49,147.147 INFO    ] No existing commands found in stream
[2026-06-05 05:26:54,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:26:54,176.176 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 05:26:55,769.769 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:26:55,772.772 INFO    ] Checking for system updates...
[2026-06-05 05:26:55,809.809 INFO    ] 200
[2026-06-05 05:26:55,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:55,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:26:55,870.870 INFO    ] No update needed
[2026-06-05 05:26:55,873.873 INFO    ] Checking for camera pi updates...
[2026-06-05 05:26:55,911.911 INFO    ] 200
[2026-06-05 05:26:55,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:26:55,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:26:56,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:26:56,003.003 INFO    ] No camera update needed
[2026-06-05 05:26:56,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:26:56,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:26:56,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:26:56,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:26:58,058.058 INFO    ] ================================================
[2026-06-05 05:26:58,073.073 INFO    ] Launching Daemon at Fri Jun  5 05:26:58 IST 2026
[2026-06-05 05:26:58,084.084 INFO    ] ================================================
[2026-06-05 05:26:58,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:26:58
[2026-06-05 05:26:59,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:26:59,587.587 INFO    ] Initializing speech engine...
[2026-06-05 05:26:59,596.596 INFO    ] 2026-06-05 05:26:59
[2026-06-05 05:26:59,841.841 INFO    ] 2026-06-05 05:26:59
[2026-06-05 05:26:59,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:27:00,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:27:00,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:27:00,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:27:00,313.313 INFO    ] time= 05/06/2026 05:27:00
[2026-06-05 05:27:00,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:27:00,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:27:00,458.458 INFO    ] No existing commands found in stream
[2026-06-05 05:27:05,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:27:05,472.472 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 05:27:07,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:27:07,170.170 INFO    ] Checking for system updates...
[2026-06-05 05:27:07,206.206 INFO    ] 200
[2026-06-05 05:27:07,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:27:07,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:27:07,267.267 INFO    ] No update needed
[2026-06-05 05:27:07,270.270 INFO    ] Checking for camera pi updates...
[2026-06-05 05:27:07,305.305 INFO    ] 200
[2026-06-05 05:27:07,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:27:07,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:27:07,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:27:07,396.396 INFO    ] No camera update needed
[2026-06-05 05:27:07,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:27:07,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:27:07,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:27:07,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:27:09,453.453 INFO    ] ================================================
[2026-06-05 05:27:09,468.468 INFO    ] Launching Daemon at Fri Jun  5 05:27:09 IST 2026
[2026-06-05 05:27:09,479.479 INFO    ] ================================================
[2026-06-05 05:27:10,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:27:10
[2026-06-05 05:27:10,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:27:10,969.969 INFO    ] Initializing speech engine...
[2026-06-05 05:27:10,974.974 INFO    ] 2026-06-05 05:27:10
[2026-06-05 05:27:11,236.236 INFO    ] 2026-06-05 05:27:11
[2026-06-05 05:27:11,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:27:11,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:27:11,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:27:11,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:27:11,673.673 INFO    ] time= 05/06/2026 05:27:11
[2026-06-05 05:27:11,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:27:11,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:27:11,853.853 INFO    ] No existing commands found in stream
[2026-06-05 05:27:16,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:27:16,886.886 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 05:27:22,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:27:22,493.493 INFO    ] Checking for system updates...
[2026-06-05 05:27:22,529.529 INFO    ] 200
[2026-06-05 05:27:22,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:27:22,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:27:22,594.594 INFO    ] No update needed
[2026-06-05 05:27:22,597.597 INFO    ] Checking for camera pi updates...
[2026-06-05 05:27:22,635.635 INFO    ] 200
[2026-06-05 05:27:22,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:27:22,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:27:22,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:27:22,736.736 INFO    ] No camera update needed
[2026-06-05 05:27:22,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:27:22,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:27:22,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:27:22,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:27:24,792.792 INFO    ] ================================================
[2026-06-05 05:27:24,807.807 INFO    ] Launching Daemon at Fri Jun  5 05:27:24 IST 2026
[2026-06-05 05:27:24,817.817 INFO    ] ================================================
[2026-06-05 05:27:25,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:27:25
[2026-06-05 05:27:25,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:27:26,242.242 INFO    ] Initializing speech engine...
[2026-06-05 05:27:26,251.251 INFO    ] 2026-06-05 05:27:26
[2026-06-05 05:27:26,499.499 INFO    ] 2026-06-05 05:27:26
[2026-06-05 05:27:26,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:27:26,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:27:26,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:27:26,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:27:26,993.993 INFO    ] time= 05/06/2026 05:27:26
[2026-06-05 05:27:27,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:27:27,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:27:27,122.122 INFO    ] No existing commands found in stream
[2026-06-05 05:27:32,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:27:32,137.137 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 05:27:32,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:27:32,891.891 INFO    ] Checking for system updates...
[2026-06-05 05:27:32,935.935 INFO    ] 200
[2026-06-05 05:27:32,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:27:32,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:27:32,999.999 INFO    ] No update needed
[2026-06-05 05:27:33,001.001 INFO    ] Checking for camera pi updates...
[2026-06-05 05:27:33,041.041 INFO    ] 200
[2026-06-05 05:27:33,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:27:33,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:27:33,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:27:33,132.132 INFO    ] No camera update needed
[2026-06-05 05:27:33,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:27:33,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:27:33,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:27:33,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:27:35,190.190 INFO    ] ================================================
[2026-06-05 05:27:35,206.206 INFO    ] Launching Daemon at Fri Jun  5 05:27:35 IST 2026
[2026-06-05 05:27:35,217.217 INFO    ] ================================================
[2026-06-05 05:27:35,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:27:35
[2026-06-05 05:27:36,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:27:36,646.646 INFO    ] Initializing speech engine...
[2026-06-05 05:27:36,655.655 INFO    ] 2026-06-05 05:27:36
[2026-06-05 05:27:36,917.917 INFO    ] 2026-06-05 05:27:36
[2026-06-05 05:27:36,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:27:37,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:27:37,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:27:37,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:27:37,390.390 INFO    ] time= 05/06/2026 05:27:37
[2026-06-05 05:27:37,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:27:37,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:27:37,541.541 INFO    ] No existing commands found in stream
[2026-06-05 05:27:42,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:27:42,556.556 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 05:27:46,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:27:46,599.599 INFO    ] Checking for system updates...
[2026-06-05 05:27:46,635.635 INFO    ] 200
[2026-06-05 05:27:46,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:27:46,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:27:46,701.701 INFO    ] No update needed
[2026-06-05 05:27:46,703.703 INFO    ] Checking for camera pi updates...
[2026-06-05 05:27:46,740.740 INFO    ] 200
[2026-06-05 05:27:46,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:27:46,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:27:46,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:27:46,845.845 INFO    ] No camera update needed
[2026-06-05 05:27:46,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:27:46,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:27:46,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:27:46,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:27:48,902.902 INFO    ] ================================================
[2026-06-05 05:27:48,917.917 INFO    ] Launching Daemon at Fri Jun  5 05:27:48 IST 2026
[2026-06-05 05:27:48,928.928 INFO    ] ================================================
[2026-06-05 05:27:49,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:27:49
[2026-06-05 05:27:50,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:27:50,370.370 INFO    ] Initializing speech engine...
[2026-06-05 05:27:50,376.376 INFO    ] 2026-06-05 05:27:50
[2026-06-05 05:27:50,623.623 INFO    ] 2026-06-05 05:27:50
[2026-06-05 05:27:50,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:27:50,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:27:50,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:27:51,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:27:51,099.099 INFO    ] time= 05/06/2026 05:27:51
[2026-06-05 05:27:51,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:27:51,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:27:51,242.242 INFO    ] No existing commands found in stream
[2026-06-05 05:27:56,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:27:56,257.257 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 05:28:00,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:28:00,546.546 INFO    ] Checking for system updates...
[2026-06-05 05:28:00,582.582 INFO    ] 200
[2026-06-05 05:28:00,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:00,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:28:00,640.640 INFO    ] No update needed
[2026-06-05 05:28:00,642.642 INFO    ] Checking for camera pi updates...
[2026-06-05 05:28:00,679.679 INFO    ] 200
[2026-06-05 05:28:00,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:00,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:28:00,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:28:00,773.773 INFO    ] No camera update needed
[2026-06-05 05:28:00,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:28:00,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:28:00,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:28:00,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:28:02,832.832 INFO    ] ================================================
[2026-06-05 05:28:02,856.856 INFO    ] Launching Daemon at Fri Jun  5 05:28:02 IST 2026
[2026-06-05 05:28:02,873.873 INFO    ] ================================================
[2026-06-05 05:28:03,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:28:03
[2026-06-05 05:28:04,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:28:04,386.386 INFO    ] Initializing speech engine...
[2026-06-05 05:28:04,405.405 INFO    ] 2026-06-05 05:28:04
[2026-06-05 05:28:04,667.667 INFO    ] 2026-06-05 05:28:04
[2026-06-05 05:28:04,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:28:04,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:28:04,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:28:05,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:28:05,047.047 INFO    ] time= 05/06/2026 05:28:05
[2026-06-05 05:28:05,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:28:05,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:28:05,223.223 INFO    ] No existing commands found in stream
[2026-06-05 05:28:10,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:28:10,254.254 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 05:28:12,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:28:12,614.614 INFO    ] Checking for system updates...
[2026-06-05 05:28:12,651.651 INFO    ] 200
[2026-06-05 05:28:12,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:12,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:28:12,714.714 INFO    ] No update needed
[2026-06-05 05:28:12,717.717 INFO    ] Checking for camera pi updates...
[2026-06-05 05:28:12,750.750 INFO    ] 200
[2026-06-05 05:28:12,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:12,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:28:12,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:28:12,942.942 INFO    ] No camera update needed
[2026-06-05 05:28:12,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:28:12,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:28:12,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:28:12,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:28:15,998.998 INFO    ] ================================================
[2026-06-05 05:28:15,013.013 INFO    ] Launching Daemon at Fri Jun  5 05:28:15 IST 2026
[2026-06-05 05:28:15,024.024 INFO    ] ================================================
[2026-06-05 05:28:15,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:28:15
[2026-06-05 05:28:16,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:28:16,635.635 INFO    ] Initializing speech engine...
[2026-06-05 05:28:16,648.648 INFO    ] 2026-06-05 05:28:16
[2026-06-05 05:28:16,928.928 INFO    ] 2026-06-05 05:28:16
[2026-06-05 05:28:16,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:28:17,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:28:17,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:28:17,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:28:17,463.463 INFO    ] time= 05/06/2026 05:28:17
[2026-06-05 05:28:17,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:28:17,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:28:17,616.616 INFO    ] No existing commands found in stream
[2026-06-05 05:28:22,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:28:22,635.635 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 05:28:24,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:28:24,771.771 INFO    ] Checking for system updates...
[2026-06-05 05:28:24,812.812 INFO    ] 200
[2026-06-05 05:28:24,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:24,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:28:24,873.873 INFO    ] No update needed
[2026-06-05 05:28:24,876.876 INFO    ] Checking for camera pi updates...
[2026-06-05 05:28:24,917.917 INFO    ] 200
[2026-06-05 05:28:24,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:24,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:28:25,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:28:25,010.010 INFO    ] No camera update needed
[2026-06-05 05:28:25,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:28:25,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:28:25,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:28:25,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:28:27,068.068 INFO    ] ================================================
[2026-06-05 05:28:27,083.083 INFO    ] Launching Daemon at Fri Jun  5 05:28:27 IST 2026
[2026-06-05 05:28:27,094.094 INFO    ] ================================================
[2026-06-05 05:28:27,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:28:27
[2026-06-05 05:28:28,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:28:28,702.702 INFO    ] Initializing speech engine...
[2026-06-05 05:28:28,709.709 INFO    ] 2026-06-05 05:28:28
[2026-06-05 05:28:29,022.022 INFO    ] 2026-06-05 05:28:28
[2026-06-05 05:28:29,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:28:29,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:28:29,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:28:29,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:28:29,504.504 INFO    ] time= 05/06/2026 05:28:29
[2026-06-05 05:28:29,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:28:29,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:28:29,646.646 INFO    ] No existing commands found in stream
[2026-06-05 05:28:34,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:28:34,682.682 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 05:28:38,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:28:38,758.758 INFO    ] Checking for system updates...
[2026-06-05 05:28:38,796.796 INFO    ] 200
[2026-06-05 05:28:38,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:38,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:28:38,862.862 INFO    ] No update needed
[2026-06-05 05:28:38,864.864 INFO    ] Checking for camera pi updates...
[2026-06-05 05:28:38,903.903 INFO    ] 200
[2026-06-05 05:28:38,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:38,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:28:38,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:28:38,999.999 INFO    ] No camera update needed
[2026-06-05 05:28:39,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:28:39,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:28:39,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:28:39,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:28:41,058.058 INFO    ] ================================================
[2026-06-05 05:28:41,072.072 INFO    ] Launching Daemon at Fri Jun  5 05:28:41 IST 2026
[2026-06-05 05:28:41,083.083 INFO    ] ================================================
[2026-06-05 05:28:41,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:28:41
[2026-06-05 05:28:42,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:28:42,499.499 INFO    ] Initializing speech engine...
[2026-06-05 05:28:42,515.515 INFO    ] 2026-06-05 05:28:42
[2026-06-05 05:28:42,797.797 INFO    ] 2026-06-05 05:28:42
[2026-06-05 05:28:42,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:28:43,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:28:43,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:28:43,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:28:43,175.175 INFO    ] time= 05/06/2026 05:28:43
[2026-06-05 05:28:43,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:28:43,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:28:43,300.300 INFO    ] No existing commands found in stream
[2026-06-05 05:28:48,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:28:48,314.314 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 05:28:51,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:28:51,508.508 INFO    ] Checking for system updates...
[2026-06-05 05:28:51,547.547 INFO    ] 200
[2026-06-05 05:28:51,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:51,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:28:51,606.606 INFO    ] No update needed
[2026-06-05 05:28:51,608.608 INFO    ] Checking for camera pi updates...
[2026-06-05 05:28:51,645.645 INFO    ] 200
[2026-06-05 05:28:51,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:28:51,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:28:51,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:28:51,734.734 INFO    ] No camera update needed
[2026-06-05 05:28:51,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:28:51,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:28:51,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:28:51,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:28:53,791.791 INFO    ] ================================================
[2026-06-05 05:28:53,807.807 INFO    ] Launching Daemon at Fri Jun  5 05:28:53 IST 2026
[2026-06-05 05:28:53,818.818 INFO    ] ================================================
[2026-06-05 05:28:54,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:28:54
[2026-06-05 05:28:55,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:28:55,423.423 INFO    ] Initializing speech engine...
[2026-06-05 05:28:55,431.431 INFO    ] 2026-06-05 05:28:55
[2026-06-05 05:28:55,717.717 INFO    ] 2026-06-05 05:28:55
[2026-06-05 05:28:55,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:28:56,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:28:56,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:28:56,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:28:56,266.266 INFO    ] time= 05/06/2026 05:28:56
[2026-06-05 05:28:56,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:28:56,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:28:56,399.399 INFO    ] No existing commands found in stream
[2026-06-05 05:29:01,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:29:01,437.437 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 05:29:04,206.206 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:29:04,209.209 INFO    ] Checking for system updates...
[2026-06-05 05:29:04,246.246 INFO    ] 200
[2026-06-05 05:29:04,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:04,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:29:04,306.306 INFO    ] No update needed
[2026-06-05 05:29:04,309.309 INFO    ] Checking for camera pi updates...
[2026-06-05 05:29:04,343.343 INFO    ] 200
[2026-06-05 05:29:04,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:04,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:29:04,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:29:04,422.422 INFO    ] No camera update needed
[2026-06-05 05:29:04,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:29:04,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:29:04,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:29:04,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:29:06,480.480 INFO    ] ================================================
[2026-06-05 05:29:06,496.496 INFO    ] Launching Daemon at Fri Jun  5 05:29:06 IST 2026
[2026-06-05 05:29:06,507.507 INFO    ] ================================================
[2026-06-05 05:29:07,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:29:07
[2026-06-05 05:29:07,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:29:07,995.995 INFO    ] Initializing speech engine...
[2026-06-05 05:29:08,004.004 INFO    ] 2026-06-05 05:29:07
[2026-06-05 05:29:08,302.302 INFO    ] 2026-06-05 05:29:08
[2026-06-05 05:29:08,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:29:08,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:29:08,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:29:08,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:29:08,686.686 INFO    ] time= 05/06/2026 05:29:08
[2026-06-05 05:29:08,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:29:08,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:29:08,813.813 INFO    ] No existing commands found in stream
[2026-06-05 05:29:13,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:29:13,828.828 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 05:29:18,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:29:18,094.094 INFO    ] Checking for system updates...
[2026-06-05 05:29:18,130.130 INFO    ] 200
[2026-06-05 05:29:18,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:18,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:29:18,187.187 INFO    ] No update needed
[2026-06-05 05:29:18,190.190 INFO    ] Checking for camera pi updates...
[2026-06-05 05:29:18,227.227 INFO    ] 200
[2026-06-05 05:29:18,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:18,275.275 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:29:18,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:29:18,318.318 INFO    ] No camera update needed
[2026-06-05 05:29:18,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:29:18,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:29:18,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:29:18,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:29:20,374.374 INFO    ] ================================================
[2026-06-05 05:29:20,390.390 INFO    ] Launching Daemon at Fri Jun  5 05:29:20 IST 2026
[2026-06-05 05:29:20,401.401 INFO    ] ================================================
[2026-06-05 05:29:20,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:29:20
[2026-06-05 05:29:21,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:29:21,863.863 INFO    ] Initializing speech engine...
[2026-06-05 05:29:21,869.869 INFO    ] 2026-06-05 05:29:21
[2026-06-05 05:29:22,133.133 INFO    ] 2026-06-05 05:29:22
[2026-06-05 05:29:22,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:29:22,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:29:22,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:29:22,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:29:22,678.678 INFO    ] time= 05/06/2026 05:29:22
[2026-06-05 05:29:22,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:29:22,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:29:22,817.817 INFO    ] No existing commands found in stream
[2026-06-05 05:29:27,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:29:27,841.841 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 05:29:29,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:29:29,506.506 INFO    ] Checking for system updates...
[2026-06-05 05:29:29,543.543 INFO    ] 200
[2026-06-05 05:29:29,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:29,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:29:29,607.607 INFO    ] No update needed
[2026-06-05 05:29:29,610.610 INFO    ] Checking for camera pi updates...
[2026-06-05 05:29:29,643.643 INFO    ] 200
[2026-06-05 05:29:29,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:29,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:29:29,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:29:29,736.736 INFO    ] No camera update needed
[2026-06-05 05:29:29,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:29:29,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:29:29,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:29:29,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:29:31,793.793 INFO    ] ================================================
[2026-06-05 05:29:31,809.809 INFO    ] Launching Daemon at Fri Jun  5 05:29:31 IST 2026
[2026-06-05 05:29:31,819.819 INFO    ] ================================================
[2026-06-05 05:29:32,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:29:32
[2026-06-05 05:29:33,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:29:33,358.358 INFO    ] Initializing speech engine...
[2026-06-05 05:29:33,375.375 INFO    ] 2026-06-05 05:29:33
[2026-06-05 05:29:33,655.655 INFO    ] 2026-06-05 05:29:33
[2026-06-05 05:29:33,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:29:33,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:29:33,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:29:34,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:29:34,132.132 INFO    ] time= 05/06/2026 05:29:34
[2026-06-05 05:29:34,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:29:34,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:29:34,274.274 INFO    ] No existing commands found in stream
[2026-06-05 05:29:39,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:29:39,303.303 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 05:29:39,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:29:39,873.873 INFO    ] Checking for system updates...
[2026-06-05 05:29:39,911.911 INFO    ] 200
[2026-06-05 05:29:39,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:39,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:29:39,971.971 INFO    ] No update needed
[2026-06-05 05:29:39,974.974 INFO    ] Checking for camera pi updates...
[2026-06-05 05:29:40,009.009 INFO    ] 200
[2026-06-05 05:29:40,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:40,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:29:40,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:29:40,099.099 INFO    ] No camera update needed
[2026-06-05 05:29:40,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:29:40,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:29:40,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:29:40,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:29:42,159.159 INFO    ] ================================================
[2026-06-05 05:29:42,174.174 INFO    ] Launching Daemon at Fri Jun  5 05:29:42 IST 2026
[2026-06-05 05:29:42,186.186 INFO    ] ================================================
[2026-06-05 05:29:42,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:29:42
[2026-06-05 05:29:43,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:29:43,653.653 INFO    ] Initializing speech engine...
[2026-06-05 05:29:43,659.659 INFO    ] 2026-06-05 05:29:43
[2026-06-05 05:29:43,922.922 INFO    ] 2026-06-05 05:29:43
[2026-06-05 05:29:43,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:29:44,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:29:44,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:29:44,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:29:44,393.393 INFO    ] time= 05/06/2026 05:29:44
[2026-06-05 05:29:44,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:29:44,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:29:44,537.537 INFO    ] No existing commands found in stream
[2026-06-05 05:29:49,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:29:49,572.572 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 05:29:51,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:29:51,638.638 INFO    ] Checking for system updates...
[2026-06-05 05:29:51,674.674 INFO    ] 200
[2026-06-05 05:29:51,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:51,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:29:51,732.732 INFO    ] No update needed
[2026-06-05 05:29:51,734.734 INFO    ] Checking for camera pi updates...
[2026-06-05 05:29:51,768.768 INFO    ] 200
[2026-06-05 05:29:51,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:29:51,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:29:51,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:29:51,855.855 INFO    ] No camera update needed
[2026-06-05 05:29:51,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:29:51,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:29:51,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:29:51,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:29:53,917.917 INFO    ] ================================================
[2026-06-05 05:29:53,932.932 INFO    ] Launching Daemon at Fri Jun  5 05:29:53 IST 2026
[2026-06-05 05:29:53,943.943 INFO    ] ================================================
[2026-06-05 05:29:54,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:29:54
[2026-06-05 05:29:55,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:29:55,402.402 INFO    ] Initializing speech engine...
[2026-06-05 05:29:55,409.409 INFO    ] 2026-06-05 05:29:55
[2026-06-05 05:29:55,708.708 INFO    ] 2026-06-05 05:29:55
[2026-06-05 05:29:55,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:29:55,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:29:55,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:29:56,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:29:56,095.095 INFO    ] time= 05/06/2026 05:29:56
[2026-06-05 05:29:56,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:29:56,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:29:56,223.223 INFO    ] No existing commands found in stream
[2026-06-05 05:30:01,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:30:01,237.237 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 05:30:10,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:30:10,978.978 INFO    ] Checking for system updates...
[2026-06-05 05:30:11,019.019 INFO    ] 200
[2026-06-05 05:30:11,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:30:11,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:30:11,077.077 INFO    ] No update needed
[2026-06-05 05:30:11,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 05:30:11,118.118 INFO    ] 200
[2026-06-05 05:30:11,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:30:11,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:30:11,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:30:11,219.219 INFO    ] No camera update needed
[2026-06-05 05:30:11,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:30:11,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:30:11,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:30:11,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:30:13,276.276 INFO    ] ================================================
[2026-06-05 05:30:13,291.291 INFO    ] Launching Daemon at Fri Jun  5 05:30:13 IST 2026
[2026-06-05 05:30:13,303.303 INFO    ] ================================================
[2026-06-05 05:30:13,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:30:13
[2026-06-05 05:30:14,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:30:14,708.708 INFO    ] Initializing speech engine...
[2026-06-05 05:30:14,714.714 INFO    ] 2026-06-05 05:30:14
[2026-06-05 05:30:15,015.015 INFO    ] 2026-06-05 05:30:14
[2026-06-05 05:30:15,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:30:15,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:30:15,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:30:15,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:30:15,375.375 INFO    ] time= 05/06/2026 05:30:15
[2026-06-05 05:30:15,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:30:15,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:30:15,509.509 INFO    ] No existing commands found in stream
[2026-06-05 05:30:20,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:30:20,537.537 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 05:30:23,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:30:23,866.866 INFO    ] Checking for system updates...
[2026-06-05 05:30:23,902.902 INFO    ] 200
[2026-06-05 05:30:23,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:30:23,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:30:23,959.959 INFO    ] No update needed
[2026-06-05 05:30:23,961.961 INFO    ] Checking for camera pi updates...
[2026-06-05 05:30:24,000.000 INFO    ] 200
[2026-06-05 05:30:24,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:30:24,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:30:24,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:30:24,194.194 INFO    ] No camera update needed
[2026-06-05 05:30:24,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:30:24,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:30:24,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:30:24,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:30:26,251.251 INFO    ] ================================================
[2026-06-05 05:30:26,267.267 INFO    ] Launching Daemon at Fri Jun  5 05:30:26 IST 2026
[2026-06-05 05:30:26,278.278 INFO    ] ================================================
[2026-06-05 05:30:26,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:30:26
[2026-06-05 05:30:27,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:30:27,960.960 INFO    ] Initializing speech engine...
[2026-06-05 05:30:27,973.973 INFO    ] 2026-06-05 05:30:27
[2026-06-05 05:30:28,263.263 INFO    ] 2026-06-05 05:30:28
[2026-06-05 05:30:28,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:30:28,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:30:28,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:30:28,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:30:28,819.819 INFO    ] time= 05/06/2026 05:30:28
[2026-06-05 05:30:28,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:30:28,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:30:28,978.978 INFO    ] No existing commands found in stream
[2026-06-05 05:30:33,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:30:33,998.998 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 05:30:37,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:30:37,443.443 INFO    ] Checking for system updates...
[2026-06-05 05:30:37,481.481 INFO    ] 200
[2026-06-05 05:30:37,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:30:37,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:30:37,551.551 INFO    ] No update needed
[2026-06-05 05:30:37,554.554 INFO    ] Checking for camera pi updates...
[2026-06-05 05:30:37,595.595 INFO    ] 200
[2026-06-05 05:30:37,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:30:37,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:30:37,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:30:37,686.686 INFO    ] No camera update needed
[2026-06-05 05:30:37,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:30:37,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:30:37,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:30:37,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:30:39,748.748 INFO    ] ================================================
[2026-06-05 05:30:39,763.763 INFO    ] Launching Daemon at Fri Jun  5 05:30:39 IST 2026
[2026-06-05 05:30:39,774.774 INFO    ] ================================================
[2026-06-05 05:30:40,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:30:40
[2026-06-05 05:30:41,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:30:41,417.417 INFO    ] Initializing speech engine...
[2026-06-05 05:30:41,430.430 INFO    ] 2026-06-05 05:30:41
[2026-06-05 05:30:41,742.742 INFO    ] 2026-06-05 05:30:41
[2026-06-05 05:30:41,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:30:42,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:30:42,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:30:42,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:30:42,256.256 INFO    ] time= 05/06/2026 05:30:42
[2026-06-05 05:30:42,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:30:42,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:30:42,412.412 INFO    ] No existing commands found in stream
[2026-06-05 05:30:47,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:30:47,437.437 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 05:30:50,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:30:50,059.059 INFO    ] Checking for system updates...
[2026-06-05 05:30:50,100.100 INFO    ] 200
[2026-06-05 05:30:50,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:30:50,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:30:50,159.159 INFO    ] No update needed
[2026-06-05 05:30:50,161.161 INFO    ] Checking for camera pi updates...
[2026-06-05 05:30:50,199.199 INFO    ] 200
[2026-06-05 05:30:50,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:30:50,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:30:50,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:30:50,286.286 INFO    ] No camera update needed
[2026-06-05 05:30:50,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:30:50,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:30:50,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:30:50,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:30:52,343.343 INFO    ] ================================================
[2026-06-05 05:30:52,358.358 INFO    ] Launching Daemon at Fri Jun  5 05:30:52 IST 2026
[2026-06-05 05:30:52,369.369 INFO    ] ================================================
[2026-06-05 05:30:52,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:30:52
[2026-06-05 05:30:53,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:30:53,783.783 INFO    ] Initializing speech engine...
[2026-06-05 05:30:53,791.791 INFO    ] 2026-06-05 05:30:53
[2026-06-05 05:30:54,067.067 INFO    ] 2026-06-05 05:30:54
[2026-06-05 05:30:54,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:30:54,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:30:54,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:30:54,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:30:54,451.451 INFO    ] time= 05/06/2026 05:30:54
[2026-06-05 05:30:54,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:30:54,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:30:54,624.624 INFO    ] No existing commands found in stream
[2026-06-05 05:30:59,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:30:59,658.658 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 05:31:01,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:31:01,002.002 INFO    ] Checking for system updates...
[2026-06-05 05:31:01,039.039 INFO    ] 200
[2026-06-05 05:31:01,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:01,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:31:01,097.097 INFO    ] No update needed
[2026-06-05 05:31:01,099.099 INFO    ] Checking for camera pi updates...
[2026-06-05 05:31:01,133.133 INFO    ] 200
[2026-06-05 05:31:01,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:01,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:31:01,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:31:01,230.230 INFO    ] No camera update needed
[2026-06-05 05:31:01,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:31:01,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:31:01,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:31:01,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:31:03,286.286 INFO    ] ================================================
[2026-06-05 05:31:03,302.302 INFO    ] Launching Daemon at Fri Jun  5 05:31:03 IST 2026
[2026-06-05 05:31:03,313.313 INFO    ] ================================================
[2026-06-05 05:31:03,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:31:03
[2026-06-05 05:31:04,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:31:04,829.829 INFO    ] Initializing speech engine...
[2026-06-05 05:31:04,838.838 INFO    ] 2026-06-05 05:31:04
[2026-06-05 05:31:05,111.111 INFO    ] 2026-06-05 05:31:05
[2026-06-05 05:31:05,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:31:05,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:31:05,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:31:05,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:31:05,615.615 INFO    ] time= 05/06/2026 05:31:05
[2026-06-05 05:31:05,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:31:05,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:31:05,830.830 INFO    ] No existing commands found in stream
[2026-06-05 05:31:10,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:31:10,860.860 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 05:31:13,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:31:13,970.970 INFO    ] Checking for system updates...
[2026-06-05 05:31:14,008.008 INFO    ] 200
[2026-06-05 05:31:14,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:14,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:31:14,073.073 INFO    ] No update needed
[2026-06-05 05:31:14,076.076 INFO    ] Checking for camera pi updates...
[2026-06-05 05:31:14,114.114 INFO    ] 200
[2026-06-05 05:31:14,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:14,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:31:14,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:31:14,208.208 INFO    ] No camera update needed
[2026-06-05 05:31:14,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:31:14,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:31:14,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:31:14,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:31:16,264.264 INFO    ] ================================================
[2026-06-05 05:31:16,279.279 INFO    ] Launching Daemon at Fri Jun  5 05:31:16 IST 2026
[2026-06-05 05:31:16,291.291 INFO    ] ================================================
[2026-06-05 05:31:16,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:31:16
[2026-06-05 05:31:17,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:31:17,702.702 INFO    ] Initializing speech engine...
[2026-06-05 05:31:17,718.718 INFO    ] 2026-06-05 05:31:17
[2026-06-05 05:31:18,002.002 INFO    ] 2026-06-05 05:31:17
[2026-06-05 05:31:18,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:31:18,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:31:18,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:31:18,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:31:18,404.404 INFO    ] time= 05/06/2026 05:31:18
[2026-06-05 05:31:18,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:31:18,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:31:18,577.577 INFO    ] No existing commands found in stream
[2026-06-05 05:31:23,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:31:23,611.611 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 05:31:27,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:31:27,502.502 INFO    ] Checking for system updates...
[2026-06-05 05:31:27,539.539 INFO    ] 200
[2026-06-05 05:31:27,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:27,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:31:27,598.598 INFO    ] No update needed
[2026-06-05 05:31:27,601.601 INFO    ] Checking for camera pi updates...
[2026-06-05 05:31:27,634.634 INFO    ] 200
[2026-06-05 05:31:27,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:27,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:31:27,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:31:27,725.725 INFO    ] No camera update needed
[2026-06-05 05:31:27,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:31:27,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:31:27,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:31:27,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:31:29,781.781 INFO    ] ================================================
[2026-06-05 05:31:29,796.796 INFO    ] Launching Daemon at Fri Jun  5 05:31:29 IST 2026
[2026-06-05 05:31:29,807.807 INFO    ] ================================================
[2026-06-05 05:31:30,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:31:30
[2026-06-05 05:31:31,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:31:31,419.419 INFO    ] Initializing speech engine...
[2026-06-05 05:31:31,428.428 INFO    ] 2026-06-05 05:31:31
[2026-06-05 05:31:31,737.737 INFO    ] 2026-06-05 05:31:31
[2026-06-05 05:31:31,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:31:32,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:31:32,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:31:32,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:31:32,210.210 INFO    ] time= 05/06/2026 05:31:32
[2026-06-05 05:31:32,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:31:32,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:31:32,361.361 INFO    ] No existing commands found in stream
[2026-06-05 05:31:37,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:31:37,376.376 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 05:31:39,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:31:39,181.181 INFO    ] Checking for system updates...
[2026-06-05 05:31:39,218.218 INFO    ] 200
[2026-06-05 05:31:39,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:39,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:31:39,277.277 INFO    ] No update needed
[2026-06-05 05:31:39,279.279 INFO    ] Checking for camera pi updates...
[2026-06-05 05:31:39,314.314 INFO    ] 200
[2026-06-05 05:31:39,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:39,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:31:39,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:31:39,411.411 INFO    ] No camera update needed
[2026-06-05 05:31:39,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:31:39,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:31:39,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:31:39,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:31:41,467.467 INFO    ] ================================================
[2026-06-05 05:31:41,483.483 INFO    ] Launching Daemon at Fri Jun  5 05:31:41 IST 2026
[2026-06-05 05:31:41,494.494 INFO    ] ================================================
[2026-06-05 05:31:42,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:31:42
[2026-06-05 05:31:42,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:31:43,189.189 INFO    ] Initializing speech engine...
[2026-06-05 05:31:43,201.201 INFO    ] 2026-06-05 05:31:43
[2026-06-05 05:31:43,485.485 INFO    ] 2026-06-05 05:31:43
[2026-06-05 05:31:43,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:31:43,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:31:43,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:31:43,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:31:43,956.956 INFO    ] time= 05/06/2026 05:31:43
[2026-06-05 05:31:44,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:31:44,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:31:44,168.168 INFO    ] No existing commands found in stream
[2026-06-05 05:31:49,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:31:49,196.196 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 05:31:51,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:31:52,002.002 INFO    ] Checking for system updates...
[2026-06-05 05:31:52,039.039 INFO    ] 200
[2026-06-05 05:31:52,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:52,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:31:52,099.099 INFO    ] No update needed
[2026-06-05 05:31:52,102.102 INFO    ] Checking for camera pi updates...
[2026-06-05 05:31:52,137.137 INFO    ] 200
[2026-06-05 05:31:52,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:31:52,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:31:52,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:31:52,227.227 INFO    ] No camera update needed
[2026-06-05 05:31:52,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:31:52,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:31:52,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:31:52,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:31:54,289.289 INFO    ] ================================================
[2026-06-05 05:31:54,308.308 INFO    ] Launching Daemon at Fri Jun  5 05:31:54 IST 2026
[2026-06-05 05:31:54,320.320 INFO    ] ================================================
[2026-06-05 05:31:54,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:31:54
[2026-06-05 05:31:55,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:31:55,749.749 INFO    ] Initializing speech engine...
[2026-06-05 05:31:55,772.772 INFO    ] 2026-06-05 05:31:55
[2026-06-05 05:31:56,025.025 INFO    ] 2026-06-05 05:31:56
[2026-06-05 05:31:56,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:31:56,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:31:56,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:31:56,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:31:56,481.481 INFO    ] time= 05/06/2026 05:31:56
[2026-06-05 05:31:56,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:31:56,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:31:56,653.653 INFO    ] No existing commands found in stream
[2026-06-05 05:32:01,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:32:01,668.668 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 05:32:03,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:32:03,785.785 INFO    ] Checking for system updates...
[2026-06-05 05:32:03,822.822 INFO    ] 200
[2026-06-05 05:32:03,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:03,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:03,882.882 INFO    ] No update needed
[2026-06-05 05:32:03,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 05:32:03,918.918 INFO    ] 200
[2026-06-05 05:32:03,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:03,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:32:03,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:04,002.002 INFO    ] No camera update needed
[2026-06-05 05:32:04,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:32:04,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:32:04,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:32:04,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:32:06,059.059 INFO    ] ================================================
[2026-06-05 05:32:06,076.076 INFO    ] Launching Daemon at Fri Jun  5 05:32:06 IST 2026
[2026-06-05 05:32:06,091.091 INFO    ] ================================================
[2026-06-05 05:32:06,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:32:06
[2026-06-05 05:32:07,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:32:07,568.568 INFO    ] Initializing speech engine...
[2026-06-05 05:32:07,577.577 INFO    ] 2026-06-05 05:32:07
[2026-06-05 05:32:07,828.828 INFO    ] 2026-06-05 05:32:07
[2026-06-05 05:32:07,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:32:08,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:32:08,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:32:08,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:32:08,281.281 INFO    ] time= 05/06/2026 05:32:08
[2026-06-05 05:32:08,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:32:08,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:32:08,449.449 INFO    ] No existing commands found in stream
[2026-06-05 05:32:13,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:32:13,463.463 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 05:32:15,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:32:15,230.230 INFO    ] Checking for system updates...
[2026-06-05 05:32:15,270.270 INFO    ] 200
[2026-06-05 05:32:15,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:15,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:15,334.334 INFO    ] No update needed
[2026-06-05 05:32:15,337.337 INFO    ] Checking for camera pi updates...
[2026-06-05 05:32:15,371.371 INFO    ] 200
[2026-06-05 05:32:15,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:15,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:32:15,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:15,463.463 INFO    ] No camera update needed
[2026-06-05 05:32:15,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:32:15,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:32:15,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:32:15,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:32:17,520.520 INFO    ] ================================================
[2026-06-05 05:32:17,535.535 INFO    ] Launching Daemon at Fri Jun  5 05:32:17 IST 2026
[2026-06-05 05:32:17,546.546 INFO    ] ================================================
[2026-06-05 05:32:18,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:32:18
[2026-06-05 05:32:18,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:32:18,980.980 INFO    ] Initializing speech engine...
[2026-06-05 05:32:18,989.989 INFO    ] 2026-06-05 05:32:18
[2026-06-05 05:32:19,282.282 INFO    ] 2026-06-05 05:32:19
[2026-06-05 05:32:19,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:32:19,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:32:19,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:32:19,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:32:19,704.704 INFO    ] time= 05/06/2026 05:32:19
[2026-06-05 05:32:19,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:32:19,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:32:19,789.789 INFO    ] No existing commands found in stream
[2026-06-05 05:32:24,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:32:24,805.805 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 05:32:27,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:32:27,358.358 INFO    ] Checking for system updates...
[2026-06-05 05:32:27,396.396 INFO    ] 200
[2026-06-05 05:32:27,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:27,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:27,463.463 INFO    ] No update needed
[2026-06-05 05:32:27,466.466 INFO    ] Checking for camera pi updates...
[2026-06-05 05:32:27,504.504 INFO    ] 200
[2026-06-05 05:32:27,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:27,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:32:27,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:27,687.687 INFO    ] No camera update needed
[2026-06-05 05:32:27,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:32:27,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:32:27,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:32:27,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:32:29,746.746 INFO    ] ================================================
[2026-06-05 05:32:29,761.761 INFO    ] Launching Daemon at Fri Jun  5 05:32:29 IST 2026
[2026-06-05 05:32:29,772.772 INFO    ] ================================================
[2026-06-05 05:32:30,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:32:30
[2026-06-05 05:32:30,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:32:31,202.202 INFO    ] Initializing speech engine...
[2026-06-05 05:32:31,211.211 INFO    ] 2026-06-05 05:32:31
[2026-06-05 05:32:31,503.503 INFO    ] 2026-06-05 05:32:31
[2026-06-05 05:32:31,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:32:31,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:32:31,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:32:31,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:32:31,892.892 INFO    ] time= 05/06/2026 05:32:31
[2026-06-05 05:32:31,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:32:31,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:32:32,095.095 INFO    ] No existing commands found in stream
[2026-06-05 05:32:37,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:32:37,109.109 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 05:32:40,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:32:40,586.586 INFO    ] Checking for system updates...
[2026-06-05 05:32:40,626.626 INFO    ] 200
[2026-06-05 05:32:40,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:40,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:40,683.683 INFO    ] No update needed
[2026-06-05 05:32:40,686.686 INFO    ] Checking for camera pi updates...
[2026-06-05 05:32:40,724.724 INFO    ] 200
[2026-06-05 05:32:40,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:40,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:32:40,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:40,815.815 INFO    ] No camera update needed
[2026-06-05 05:32:40,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:32:40,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:32:40,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:32:40,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:32:42,872.872 INFO    ] ================================================
[2026-06-05 05:32:42,888.888 INFO    ] Launching Daemon at Fri Jun  5 05:32:42 IST 2026
[2026-06-05 05:32:42,898.898 INFO    ] ================================================
[2026-06-05 05:32:43,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:32:43
[2026-06-05 05:32:44,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:32:44,322.322 INFO    ] Initializing speech engine...
[2026-06-05 05:32:44,331.331 INFO    ] 2026-06-05 05:32:44
[2026-06-05 05:32:44,590.590 INFO    ] 2026-06-05 05:32:44
[2026-06-05 05:32:44,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:32:44,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:32:44,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:32:45,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:32:45,046.046 INFO    ] time= 05/06/2026 05:32:45
[2026-06-05 05:32:45,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:32:45,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:32:45,217.217 INFO    ] No existing commands found in stream
[2026-06-05 05:32:50,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:32:50,256.256 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 05:32:51,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:32:51,747.747 INFO    ] Checking for system updates...
[2026-06-05 05:32:51,788.788 INFO    ] 200
[2026-06-05 05:32:51,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:51,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:51,852.852 INFO    ] No update needed
[2026-06-05 05:32:51,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 05:32:51,892.892 INFO    ] 200
[2026-06-05 05:32:51,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:32:51,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:32:51,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:32:51,979.979 INFO    ] No camera update needed
[2026-06-05 05:32:51,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:32:51,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:32:51,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:32:51,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:32:54,035.035 INFO    ] ================================================
[2026-06-05 05:32:54,050.050 INFO    ] Launching Daemon at Fri Jun  5 05:32:54 IST 2026
[2026-06-05 05:32:54,061.061 INFO    ] ================================================
[2026-06-05 05:32:54,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:32:54
[2026-06-05 05:32:55,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:32:55,700.700 INFO    ] Initializing speech engine...
[2026-06-05 05:32:55,713.713 INFO    ] 2026-06-05 05:32:55
[2026-06-05 05:32:55,993.993 INFO    ] 2026-06-05 05:32:55
[2026-06-05 05:32:56,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:32:56,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:32:56,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:32:56,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:32:56,532.532 INFO    ] time= 05/06/2026 05:32:56
[2026-06-05 05:32:56,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:32:56,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:32:56,683.683 INFO    ] No existing commands found in stream
[2026-06-05 05:33:01,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:33:01,701.701 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 05:33:04,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:33:04,909.909 INFO    ] Checking for system updates...
[2026-06-05 05:33:04,945.945 INFO    ] 200
[2026-06-05 05:33:04,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:05,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:33:05,003.003 INFO    ] No update needed
[2026-06-05 05:33:05,005.005 INFO    ] Checking for camera pi updates...
[2026-06-05 05:33:05,041.041 INFO    ] 200
[2026-06-05 05:33:05,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:05,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:33:05,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:33:05,116.116 INFO    ] No camera update needed
[2026-06-05 05:33:05,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:33:05,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:33:05,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:33:05,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:33:07,171.171 INFO    ] ================================================
[2026-06-05 05:33:07,186.186 INFO    ] Launching Daemon at Fri Jun  5 05:33:07 IST 2026
[2026-06-05 05:33:07,196.196 INFO    ] ================================================
[2026-06-05 05:33:07,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:33:07
[2026-06-05 05:33:08,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:33:08,681.681 INFO    ] Initializing speech engine...
[2026-06-05 05:33:08,695.695 INFO    ] 2026-06-05 05:33:08
[2026-06-05 05:33:09,009.009 INFO    ] 2026-06-05 05:33:08
[2026-06-05 05:33:09,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:33:09,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:33:09,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:33:09,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:33:09,522.522 INFO    ] time= 05/06/2026 05:33:09
[2026-06-05 05:33:09,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:33:09,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:33:09,683.683 INFO    ] No existing commands found in stream
[2026-06-05 05:33:14,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:33:14,713.713 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 05:33:15,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:33:15,784.784 INFO    ] Checking for system updates...
[2026-06-05 05:33:15,828.828 INFO    ] 200
[2026-06-05 05:33:15,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:15,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:33:15,902.902 INFO    ] No update needed
[2026-06-05 05:33:15,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 05:33:15,945.945 INFO    ] 200
[2026-06-05 05:33:15,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:15,998.998 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:33:16,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:33:16,042.042 INFO    ] No camera update needed
[2026-06-05 05:33:16,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:33:16,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:33:16,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:33:16,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:33:18,097.097 INFO    ] ================================================
[2026-06-05 05:33:18,112.112 INFO    ] Launching Daemon at Fri Jun  5 05:33:18 IST 2026
[2026-06-05 05:33:18,123.123 INFO    ] ================================================
[2026-06-05 05:33:18,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:33:18
[2026-06-05 05:33:19,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:33:19,787.787 INFO    ] Initializing speech engine...
[2026-06-05 05:33:19,795.795 INFO    ] 2026-06-05 05:33:19
[2026-06-05 05:33:20,092.092 INFO    ] 2026-06-05 05:33:20
[2026-06-05 05:33:20,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:33:20,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:33:20,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:33:20,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:33:20,557.557 INFO    ] time= 05/06/2026 05:33:20
[2026-06-05 05:33:20,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:33:20,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:33:20,773.773 INFO    ] No existing commands found in stream
[2026-06-05 05:33:25,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:33:25,802.802 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 05:33:26,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:33:26,341.341 INFO    ] Checking for system updates...
[2026-06-05 05:33:26,379.379 INFO    ] 200
[2026-06-05 05:33:26,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:26,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:33:26,438.438 INFO    ] No update needed
[2026-06-05 05:33:26,441.441 INFO    ] Checking for camera pi updates...
[2026-06-05 05:33:26,477.477 INFO    ] 200
[2026-06-05 05:33:26,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:26,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:33:26,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:33:26,579.579 INFO    ] No camera update needed
[2026-06-05 05:33:26,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:33:26,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:33:26,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:33:26,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:33:28,641.641 INFO    ] ================================================
[2026-06-05 05:33:28,656.656 INFO    ] Launching Daemon at Fri Jun  5 05:33:28 IST 2026
[2026-06-05 05:33:28,666.666 INFO    ] ================================================
[2026-06-05 05:33:29,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:33:29
[2026-06-05 05:33:29,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:33:30,094.094 INFO    ] Initializing speech engine...
[2026-06-05 05:33:30,102.102 INFO    ] 2026-06-05 05:33:30
[2026-06-05 05:33:30,399.399 INFO    ] 2026-06-05 05:33:30
[2026-06-05 05:33:30,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:33:30,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:33:30,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:33:30,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:33:30,759.759 INFO    ] time= 05/06/2026 05:33:30
[2026-06-05 05:33:30,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:33:30,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:33:30,897.897 INFO    ] No existing commands found in stream
[2026-06-05 05:33:35,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:33:35,920.920 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 05:33:36,482.482 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:33:36,485.485 INFO    ] Checking for system updates...
[2026-06-05 05:33:36,525.525 INFO    ] 200
[2026-06-05 05:33:36,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:36,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:33:36,585.585 INFO    ] No update needed
[2026-06-05 05:33:36,588.588 INFO    ] Checking for camera pi updates...
[2026-06-05 05:33:36,622.622 INFO    ] 200
[2026-06-05 05:33:36,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:36,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:33:36,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:33:36,718.718 INFO    ] No camera update needed
[2026-06-05 05:33:36,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:33:36,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:33:36,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:33:36,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:33:38,773.773 INFO    ] ================================================
[2026-06-05 05:33:38,789.789 INFO    ] Launching Daemon at Fri Jun  5 05:33:38 IST 2026
[2026-06-05 05:33:38,800.800 INFO    ] ================================================
[2026-06-05 05:33:39,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:33:39
[2026-06-05 05:33:39,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:33:40,250.250 INFO    ] Initializing speech engine...
[2026-06-05 05:33:40,258.258 INFO    ] 2026-06-05 05:33:40
[2026-06-05 05:33:40,519.519 INFO    ] 2026-06-05 05:33:40
[2026-06-05 05:33:40,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:33:40,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:33:40,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:33:40,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:33:41,014.014 INFO    ] time= 05/06/2026 05:33:40
[2026-06-05 05:33:41,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:33:41,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:33:41,193.193 INFO    ] No existing commands found in stream
[2026-06-05 05:33:46,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:33:46,220.220 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 05:33:50,297.297 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:33:50,300.300 INFO    ] Checking for system updates...
[2026-06-05 05:33:50,340.340 INFO    ] 200
[2026-06-05 05:33:50,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:50,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:33:50,405.405 INFO    ] No update needed
[2026-06-05 05:33:50,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 05:33:50,442.442 INFO    ] 200
[2026-06-05 05:33:50,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:33:50,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:33:50,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:33:50,531.531 INFO    ] No camera update needed
[2026-06-05 05:33:50,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:33:50,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:33:50,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:33:50,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:33:52,589.589 INFO    ] ================================================
[2026-06-05 05:33:52,604.604 INFO    ] Launching Daemon at Fri Jun  5 05:33:52 IST 2026
[2026-06-05 05:33:52,615.615 INFO    ] ================================================
[2026-06-05 05:33:53,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:33:53
[2026-06-05 05:33:54,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:33:54,358.358 INFO    ] Initializing speech engine...
[2026-06-05 05:33:54,366.366 INFO    ] 2026-06-05 05:33:54
[2026-06-05 05:33:54,677.677 INFO    ] 2026-06-05 05:33:54
[2026-06-05 05:33:54,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:33:54,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:33:54,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:33:55,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:33:55,201.201 INFO    ] time= 05/06/2026 05:33:55
[2026-06-05 05:33:55,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:33:55,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:33:55,335.335 INFO    ] No existing commands found in stream
[2026-06-05 05:34:00,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:34:00,350.350 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 05:34:02,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:34:02,366.366 INFO    ] Checking for system updates...
[2026-06-05 05:34:02,427.427 INFO    ] 200
[2026-06-05 05:34:02,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:02,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:34:02,523.523 INFO    ] No update needed
[2026-06-05 05:34:02,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 05:34:02,577.577 INFO    ] 200
[2026-06-05 05:34:02,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:02,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:34:02,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:34:02,673.673 INFO    ] No camera update needed
[2026-06-05 05:34:02,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:34:02,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:34:02,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:34:02,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:34:04,741.741 INFO    ] ================================================
[2026-06-05 05:34:04,756.756 INFO    ] Launching Daemon at Fri Jun  5 05:34:04 IST 2026
[2026-06-05 05:34:04,767.767 INFO    ] ================================================
[2026-06-05 05:34:05,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:34:05
[2026-06-05 05:34:06,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:34:06,437.437 INFO    ] Initializing speech engine...
[2026-06-05 05:34:06,448.448 INFO    ] 2026-06-05 05:34:06
[2026-06-05 05:34:06,746.746 INFO    ] 2026-06-05 05:34:06
[2026-06-05 05:34:06,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:34:07,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:34:07,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:34:07,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:34:07,293.293 INFO    ] time= 05/06/2026 05:34:07
[2026-06-05 05:34:07,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:34:07,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:34:07,445.445 INFO    ] No existing commands found in stream
[2026-06-05 05:34:12,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:34:12,467.467 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 05:34:16,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:34:16,619.619 INFO    ] Checking for system updates...
[2026-06-05 05:34:16,661.661 INFO    ] 200
[2026-06-05 05:34:16,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:16,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:34:16,734.734 INFO    ] No update needed
[2026-06-05 05:34:16,738.738 INFO    ] Checking for camera pi updates...
[2026-06-05 05:34:16,774.774 INFO    ] 200
[2026-06-05 05:34:16,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:16,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:34:16,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:34:16,869.869 INFO    ] No camera update needed
[2026-06-05 05:34:16,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:34:16,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:34:16,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:34:16,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:34:18,931.931 INFO    ] ================================================
[2026-06-05 05:34:18,950.950 INFO    ] Launching Daemon at Fri Jun  5 05:34:18 IST 2026
[2026-06-05 05:34:18,962.962 INFO    ] ================================================
[2026-06-05 05:34:19,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:34:19
[2026-06-05 05:34:20,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:34:20,407.407 INFO    ] Initializing speech engine...
[2026-06-05 05:34:20,415.415 INFO    ] 2026-06-05 05:34:20
[2026-06-05 05:34:20,666.666 INFO    ] 2026-06-05 05:34:20
[2026-06-05 05:34:20,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:34:20,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:34:20,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:34:21,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:34:21,151.151 INFO    ] time= 05/06/2026 05:34:21
[2026-06-05 05:34:21,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:34:21,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:34:21,308.308 INFO    ] No existing commands found in stream
[2026-06-05 05:34:26,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:34:26,323.323 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 05:34:27,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:34:27,449.449 INFO    ] Checking for system updates...
[2026-06-05 05:34:27,489.489 INFO    ] 200
[2026-06-05 05:34:27,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:27,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:34:27,555.555 INFO    ] No update needed
[2026-06-05 05:34:27,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 05:34:27,593.593 INFO    ] 200
[2026-06-05 05:34:27,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:27,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:34:27,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:34:27,688.688 INFO    ] No camera update needed
[2026-06-05 05:34:27,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:34:27,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:34:27,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:34:27,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:34:29,750.750 INFO    ] ================================================
[2026-06-05 05:34:29,767.767 INFO    ] Launching Daemon at Fri Jun  5 05:34:29 IST 2026
[2026-06-05 05:34:29,779.779 INFO    ] ================================================
[2026-06-05 05:34:30,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:34:30
[2026-06-05 05:34:31,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:34:31,444.444 INFO    ] Initializing speech engine...
[2026-06-05 05:34:31,454.454 INFO    ] 2026-06-05 05:34:31
[2026-06-05 05:34:31,713.713 INFO    ] 2026-06-05 05:34:31
[2026-06-05 05:34:31,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:34:31,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:34:31,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:34:32,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:34:32,109.109 INFO    ] time= 05/06/2026 05:34:32
[2026-06-05 05:34:32,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:34:32,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:34:32,285.285 INFO    ] No existing commands found in stream
[2026-06-05 05:34:37,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:34:37,319.319 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 05:34:38,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:34:38,284.284 INFO    ] Checking for system updates...
[2026-06-05 05:34:38,322.322 INFO    ] 200
[2026-06-05 05:34:38,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:38,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:34:38,384.384 INFO    ] No update needed
[2026-06-05 05:34:38,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 05:34:38,422.422 INFO    ] 200
[2026-06-05 05:34:38,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:38,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:34:38,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:34:38,517.517 INFO    ] No camera update needed
[2026-06-05 05:34:38,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:34:38,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:34:38,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:34:38,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:34:40,577.577 INFO    ] ================================================
[2026-06-05 05:34:40,593.593 INFO    ] Launching Daemon at Fri Jun  5 05:34:40 IST 2026
[2026-06-05 05:34:40,605.605 INFO    ] ================================================
[2026-06-05 05:34:41,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:34:41
[2026-06-05 05:34:41,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:34:42,078.078 INFO    ] Initializing speech engine...
[2026-06-05 05:34:42,087.087 INFO    ] 2026-06-05 05:34:42
[2026-06-05 05:34:42,347.347 INFO    ] 2026-06-05 05:34:42
[2026-06-05 05:34:42,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:34:42,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:34:42,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:34:42,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:34:42,848.848 INFO    ] time= 05/06/2026 05:34:42
[2026-06-05 05:34:42,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:34:42,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:34:43,061.061 INFO    ] No existing commands found in stream
[2026-06-05 05:34:48,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:34:48,085.085 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 05:34:48,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:34:48,600.600 INFO    ] Checking for system updates...
[2026-06-05 05:34:48,643.643 INFO    ] 200
[2026-06-05 05:34:48,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:48,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:34:48,709.709 INFO    ] No update needed
[2026-06-05 05:34:48,712.712 INFO    ] Checking for camera pi updates...
[2026-06-05 05:34:48,747.747 INFO    ] 200
[2026-06-05 05:34:48,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:34:48,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:34:48,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:34:48,843.843 INFO    ] No camera update needed
[2026-06-05 05:34:48,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:34:48,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:34:48,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:34:48,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:34:50,903.903 INFO    ] ================================================
[2026-06-05 05:34:50,920.920 INFO    ] Launching Daemon at Fri Jun  5 05:34:50 IST 2026
[2026-06-05 05:34:50,931.931 INFO    ] ================================================
[2026-06-05 05:34:51,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:34:51
[2026-06-05 05:34:52,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:34:52,579.579 INFO    ] Initializing speech engine...
[2026-06-05 05:34:52,586.586 INFO    ] 2026-06-05 05:34:52
[2026-06-05 05:34:52,869.869 INFO    ] 2026-06-05 05:34:52
[2026-06-05 05:34:52,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:34:53,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:34:53,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:34:53,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:34:53,400.400 INFO    ] time= 05/06/2026 05:34:53
[2026-06-05 05:34:53,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:34:53,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:34:53,542.542 INFO    ] No existing commands found in stream
[2026-06-05 05:34:58,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:34:58,570.570 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 05:35:01,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:35:01,134.134 INFO    ] Checking for system updates...
[2026-06-05 05:35:01,176.176 INFO    ] 200
[2026-06-05 05:35:01,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:01,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:35:01,240.240 INFO    ] No update needed
[2026-06-05 05:35:01,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 05:35:01,278.278 INFO    ] 200
[2026-06-05 05:35:01,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:01,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:35:01,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:35:01,371.371 INFO    ] No camera update needed
[2026-06-05 05:35:01,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:35:01,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:35:01,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:35:01,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:35:03,457.457 INFO    ] ================================================
[2026-06-05 05:35:03,474.474 INFO    ] Launching Daemon at Fri Jun  5 05:35:03 IST 2026
[2026-06-05 05:35:03,485.485 INFO    ] ================================================
[2026-06-05 05:35:04,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:35:04
[2026-06-05 05:35:04,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:35:04,963.963 INFO    ] Initializing speech engine...
[2026-06-05 05:35:04,970.970 INFO    ] 2026-06-05 05:35:04
[2026-06-05 05:35:05,229.229 INFO    ] 2026-06-05 05:35:05
[2026-06-05 05:35:05,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:35:05,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:35:05,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:35:05,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:35:05,624.624 INFO    ] time= 05/06/2026 05:35:05
[2026-06-05 05:35:05,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:35:05,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:35:05,717.717 INFO    ] No existing commands found in stream
[2026-06-05 05:35:10,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:35:10,733.733 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 05:35:12,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:35:12,206.206 INFO    ] Checking for system updates...
[2026-06-05 05:35:12,244.244 INFO    ] 200
[2026-06-05 05:35:12,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:12,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:35:12,303.303 INFO    ] No update needed
[2026-06-05 05:35:12,305.305 INFO    ] Checking for camera pi updates...
[2026-06-05 05:35:12,344.344 INFO    ] 200
[2026-06-05 05:35:12,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:12,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:35:12,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:35:12,449.449 INFO    ] No camera update needed
[2026-06-05 05:35:12,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:35:12,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:35:12,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:35:12,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:35:14,507.507 INFO    ] ================================================
[2026-06-05 05:35:14,523.523 INFO    ] Launching Daemon at Fri Jun  5 05:35:14 IST 2026
[2026-06-05 05:35:14,534.534 INFO    ] ================================================
[2026-06-05 05:35:15,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:35:15
[2026-06-05 05:35:15,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:35:16,186.186 INFO    ] Initializing speech engine...
[2026-06-05 05:35:16,197.197 INFO    ] 2026-06-05 05:35:16
[2026-06-05 05:35:16,504.504 INFO    ] 2026-06-05 05:35:16
[2026-06-05 05:35:16,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:35:16,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:35:16,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:35:16,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:35:17,015.015 INFO    ] time= 05/06/2026 05:35:17
[2026-06-05 05:35:17,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:35:17,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:35:17,171.171 INFO    ] No existing commands found in stream
[2026-06-05 05:35:22,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:35:22,209.209 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 05:35:23,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:35:23,033.033 INFO    ] Checking for system updates...
[2026-06-05 05:35:23,071.071 INFO    ] 200
[2026-06-05 05:35:23,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:23,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:35:23,131.131 INFO    ] No update needed
[2026-06-05 05:35:23,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 05:35:23,173.173 INFO    ] 200
[2026-06-05 05:35:23,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:23,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:35:23,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:35:23,270.270 INFO    ] No camera update needed
[2026-06-05 05:35:23,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:35:23,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:35:23,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:35:23,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:35:25,329.329 INFO    ] ================================================
[2026-06-05 05:35:25,345.345 INFO    ] Launching Daemon at Fri Jun  5 05:35:25 IST 2026
[2026-06-05 05:35:25,356.356 INFO    ] ================================================
[2026-06-05 05:35:25,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:35:25
[2026-06-05 05:35:26,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:35:26,806.806 INFO    ] Initializing speech engine...
[2026-06-05 05:35:26,815.815 INFO    ] 2026-06-05 05:35:26
[2026-06-05 05:35:27,060.060 INFO    ] 2026-06-05 05:35:27
[2026-06-05 05:35:27,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:35:27,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:35:27,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:35:27,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:35:27,534.534 INFO    ] time= 05/06/2026 05:35:27
[2026-06-05 05:35:27,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:35:27,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:35:27,683.683 INFO    ] No existing commands found in stream
[2026-06-05 05:35:32,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:35:32,698.698 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 05:35:37,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:35:37,040.040 INFO    ] Checking for system updates...
[2026-06-05 05:35:37,077.077 INFO    ] 200
[2026-06-05 05:35:37,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:37,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:35:37,135.135 INFO    ] No update needed
[2026-06-05 05:35:37,138.138 INFO    ] Checking for camera pi updates...
[2026-06-05 05:35:37,172.172 INFO    ] 200
[2026-06-05 05:35:37,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:37,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:35:37,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:35:37,269.269 INFO    ] No camera update needed
[2026-06-05 05:35:37,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:35:37,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:35:37,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:35:37,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:35:39,326.326 INFO    ] ================================================
[2026-06-05 05:35:39,342.342 INFO    ] Launching Daemon at Fri Jun  5 05:35:39 IST 2026
[2026-06-05 05:35:39,353.353 INFO    ] ================================================
[2026-06-05 05:35:39,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:35:39
[2026-06-05 05:35:40,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:35:41,016.016 INFO    ] Initializing speech engine...
[2026-06-05 05:35:41,024.024 INFO    ] 2026-06-05 05:35:41
[2026-06-05 05:35:41,316.316 INFO    ] 2026-06-05 05:35:41
[2026-06-05 05:35:41,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:35:41,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:35:41,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:35:41,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:35:41,862.862 INFO    ] time= 05/06/2026 05:35:41
[2026-06-05 05:35:41,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:35:41,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:35:42,022.022 INFO    ] No existing commands found in stream
[2026-06-05 05:35:47,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:35:47,043.043 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 05:35:51,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:35:51,334.334 INFO    ] Checking for system updates...
[2026-06-05 05:35:51,372.372 INFO    ] 200
[2026-06-05 05:35:51,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:51,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:35:51,433.433 INFO    ] No update needed
[2026-06-05 05:35:51,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 05:35:51,471.471 INFO    ] 200
[2026-06-05 05:35:51,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:35:51,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:35:51,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:35:51,574.574 INFO    ] No camera update needed
[2026-06-05 05:35:51,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:35:51,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:35:51,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:35:51,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:35:53,629.629 INFO    ] ================================================
[2026-06-05 05:35:53,645.645 INFO    ] Launching Daemon at Fri Jun  5 05:35:53 IST 2026
[2026-06-05 05:35:53,656.656 INFO    ] ================================================
[2026-06-05 05:35:54,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:35:54
[2026-06-05 05:35:54,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:35:55,103.103 INFO    ] Initializing speech engine...
[2026-06-05 05:35:55,115.115 INFO    ] 2026-06-05 05:35:55
[2026-06-05 05:35:55,370.370 INFO    ] 2026-06-05 05:35:55
[2026-06-05 05:35:55,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:35:55,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:35:55,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:35:55,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:35:55,817.817 INFO    ] time= 05/06/2026 05:35:55
[2026-06-05 05:35:55,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:35:55,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:35:56,004.004 INFO    ] No existing commands found in stream
[2026-06-05 05:36:01,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:36:01,019.019 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 05:36:01,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:36:01,578.578 INFO    ] Checking for system updates...
[2026-06-05 05:36:01,638.638 INFO    ] 200
[2026-06-05 05:36:01,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:01,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:01,719.719 INFO    ] No update needed
[2026-06-05 05:36:01,722.722 INFO    ] Checking for camera pi updates...
[2026-06-05 05:36:01,760.760 INFO    ] 200
[2026-06-05 05:36:01,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:01,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:36:01,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:01,948.948 INFO    ] No camera update needed
[2026-06-05 05:36:01,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:36:01,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:36:01,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:36:01,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:36:04,018.018 INFO    ] ================================================
[2026-06-05 05:36:04,038.038 INFO    ] Launching Daemon at Fri Jun  5 05:36:04 IST 2026
[2026-06-05 05:36:04,050.050 INFO    ] ================================================
[2026-06-05 05:36:04,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:36:04
[2026-06-05 05:36:05,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:36:05,472.472 INFO    ] Initializing speech engine...
[2026-06-05 05:36:05,481.481 INFO    ] 2026-06-05 05:36:05
[2026-06-05 05:36:05,727.727 INFO    ] 2026-06-05 05:36:05
[2026-06-05 05:36:05,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:36:05,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:36:05,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:36:06,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:36:06,101.101 INFO    ] time= 05/06/2026 05:36:06
[2026-06-05 05:36:06,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:36:06,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:36:06,199.199 INFO    ] No existing commands found in stream
[2026-06-05 05:36:11,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:36:11,238.238 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 05:36:15,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:36:15,155.155 INFO    ] Checking for system updates...
[2026-06-05 05:36:15,192.192 INFO    ] 200
[2026-06-05 05:36:15,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:15,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:15,252.252 INFO    ] No update needed
[2026-06-05 05:36:15,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 05:36:15,293.293 INFO    ] 200
[2026-06-05 05:36:15,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:15,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:36:15,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:15,380.380 INFO    ] No camera update needed
[2026-06-05 05:36:15,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:36:15,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:36:15,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:36:15,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:36:17,437.437 INFO    ] ================================================
[2026-06-05 05:36:17,453.453 INFO    ] Launching Daemon at Fri Jun  5 05:36:17 IST 2026
[2026-06-05 05:36:17,464.464 INFO    ] ================================================
[2026-06-05 05:36:18,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:36:18
[2026-06-05 05:36:18,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:36:18,946.946 INFO    ] Initializing speech engine...
[2026-06-05 05:36:18,953.953 INFO    ] 2026-06-05 05:36:18
[2026-06-05 05:36:19,217.217 INFO    ] 2026-06-05 05:36:19
[2026-06-05 05:36:19,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:36:19,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:36:19,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:36:19,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:36:19,683.683 INFO    ] time= 05/06/2026 05:36:19
[2026-06-05 05:36:19,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:36:19,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:36:19,903.903 INFO    ] No existing commands found in stream
[2026-06-05 05:36:24,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:36:24,930.930 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 05:36:25,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:36:25,994.994 INFO    ] Checking for system updates...
[2026-06-05 05:36:26,031.031 INFO    ] 200
[2026-06-05 05:36:26,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:26,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:26,090.090 INFO    ] No update needed
[2026-06-05 05:36:26,092.092 INFO    ] Checking for camera pi updates...
[2026-06-05 05:36:26,130.130 INFO    ] 200
[2026-06-05 05:36:26,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:26,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:36:26,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:26,234.234 INFO    ] No camera update needed
[2026-06-05 05:36:26,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:36:26,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:36:26,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:36:26,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:36:28,292.292 INFO    ] ================================================
[2026-06-05 05:36:28,308.308 INFO    ] Launching Daemon at Fri Jun  5 05:36:28 IST 2026
[2026-06-05 05:36:28,319.319 INFO    ] ================================================
[2026-06-05 05:36:28,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:36:28
[2026-06-05 05:36:29,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:36:29,800.800 INFO    ] Initializing speech engine...
[2026-06-05 05:36:29,823.823 INFO    ] 2026-06-05 05:36:29
[2026-06-05 05:36:30,101.101 INFO    ] 2026-06-05 05:36:30
[2026-06-05 05:36:30,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:36:30,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:36:30,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:36:30,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:36:30,590.590 INFO    ] time= 05/06/2026 05:36:30
[2026-06-05 05:36:30,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:36:30,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:36:30,740.740 INFO    ] No existing commands found in stream
[2026-06-05 05:36:35,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:36:35,756.756 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 05:36:37,520.520 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:36:37,524.524 INFO    ] Checking for system updates...
[2026-06-05 05:36:37,562.562 INFO    ] 200
[2026-06-05 05:36:37,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:37,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:37,622.622 INFO    ] No update needed
[2026-06-05 05:36:37,625.625 INFO    ] Checking for camera pi updates...
[2026-06-05 05:36:37,660.660 INFO    ] 200
[2026-06-05 05:36:37,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:37,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:36:37,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:37,862.862 INFO    ] No camera update needed
[2026-06-05 05:36:37,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:36:37,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:36:37,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:36:37,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:36:39,922.922 INFO    ] ================================================
[2026-06-05 05:36:39,938.938 INFO    ] Launching Daemon at Fri Jun  5 05:36:39 IST 2026
[2026-06-05 05:36:39,949.949 INFO    ] ================================================
[2026-06-05 05:36:40,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:36:40
[2026-06-05 05:36:41,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:36:41,355.355 INFO    ] Initializing speech engine...
[2026-06-05 05:36:41,369.369 INFO    ] 2026-06-05 05:36:41
[2026-06-05 05:36:41,632.632 INFO    ] 2026-06-05 05:36:41
[2026-06-05 05:36:41,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:36:41,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:36:41,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:36:41,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:36:42,003.003 INFO    ] time= 05/06/2026 05:36:41
[2026-06-05 05:36:42,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:36:42,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:36:42,185.185 INFO    ] No existing commands found in stream
[2026-06-05 05:36:47,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:36:47,214.214 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 05:36:49,534.534 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:36:49,536.536 INFO    ] Checking for system updates...
[2026-06-05 05:36:49,573.573 INFO    ] 200
[2026-06-05 05:36:49,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:49,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:49,632.632 INFO    ] No update needed
[2026-06-05 05:36:49,635.635 INFO    ] Checking for camera pi updates...
[2026-06-05 05:36:49,668.668 INFO    ] 200
[2026-06-05 05:36:49,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:36:49,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:36:49,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:36:49,766.766 INFO    ] No camera update needed
[2026-06-05 05:36:49,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:36:49,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:36:49,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:36:49,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:36:51,825.825 INFO    ] ================================================
[2026-06-05 05:36:51,841.841 INFO    ] Launching Daemon at Fri Jun  5 05:36:51 IST 2026
[2026-06-05 05:36:51,852.852 INFO    ] ================================================
[2026-06-05 05:36:52,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:36:52
[2026-06-05 05:36:53,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:36:53,312.312 INFO    ] Initializing speech engine...
[2026-06-05 05:36:53,319.319 INFO    ] 2026-06-05 05:36:53
[2026-06-05 05:36:53,594.594 INFO    ] 2026-06-05 05:36:53
[2026-06-05 05:36:53,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:36:53,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:36:53,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:36:54,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:36:54,072.072 INFO    ] time= 05/06/2026 05:36:54
[2026-06-05 05:36:54,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:36:54,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:36:54,257.257 INFO    ] No existing commands found in stream
[2026-06-05 05:36:59,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:36:59,291.291 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 05:37:00,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:37:00,690.690 INFO    ] Checking for system updates...
[2026-06-05 05:37:00,731.731 INFO    ] 200
[2026-06-05 05:37:00,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:00,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:37:00,791.791 INFO    ] No update needed
[2026-06-05 05:37:00,794.794 INFO    ] Checking for camera pi updates...
[2026-06-05 05:37:00,829.829 INFO    ] 200
[2026-06-05 05:37:00,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:00,874.874 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:37:00,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:37:00,920.920 INFO    ] No camera update needed
[2026-06-05 05:37:00,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:37:00,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:37:00,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:37:00,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:37:02,986.986 INFO    ] ================================================
[2026-06-05 05:37:03,004.004 INFO    ] Launching Daemon at Fri Jun  5 05:37:02 IST 2026
[2026-06-05 05:37:03,017.017 INFO    ] ================================================
[2026-06-05 05:37:03,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:37:03
[2026-06-05 05:37:04,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:37:04,483.483 INFO    ] Initializing speech engine...
[2026-06-05 05:37:04,494.494 INFO    ] 2026-06-05 05:37:04
[2026-06-05 05:37:04,766.766 INFO    ] 2026-06-05 05:37:04
[2026-06-05 05:37:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:37:05,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:37:05,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:37:05,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:37:05,261.261 INFO    ] time= 05/06/2026 05:37:05
[2026-06-05 05:37:05,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:37:05,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:37:05,416.416 INFO    ] No existing commands found in stream
[2026-06-05 05:37:10,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:37:10,432.432 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 05:37:11,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:37:11,016.016 INFO    ] Checking for system updates...
[2026-06-05 05:37:11,054.054 INFO    ] 200
[2026-06-05 05:37:11,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:11,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:37:11,116.116 INFO    ] No update needed
[2026-06-05 05:37:11,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 05:37:11,156.156 INFO    ] 200
[2026-06-05 05:37:11,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:11,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:37:11,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:37:11,256.256 INFO    ] No camera update needed
[2026-06-05 05:37:11,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:37:11,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:37:11,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:37:11,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:37:13,315.315 INFO    ] ================================================
[2026-06-05 05:37:13,331.331 INFO    ] Launching Daemon at Fri Jun  5 05:37:13 IST 2026
[2026-06-05 05:37:13,342.342 INFO    ] ================================================
[2026-06-05 05:37:14,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:37:14
[2026-06-05 05:37:14,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:37:14,908.908 INFO    ] Initializing speech engine...
[2026-06-05 05:37:14,919.919 INFO    ] 2026-06-05 05:37:14
[2026-06-05 05:37:15,180.180 INFO    ] 2026-06-05 05:37:15
[2026-06-05 05:37:15,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:37:15,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:37:15,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:37:15,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:37:15,666.666 INFO    ] time= 05/06/2026 05:37:15
[2026-06-05 05:37:15,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:37:15,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:37:15,862.862 INFO    ] No existing commands found in stream
[2026-06-05 05:37:20,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:37:20,892.892 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 05:37:23,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:37:23,130.130 INFO    ] Checking for system updates...
[2026-06-05 05:37:23,167.167 INFO    ] 200
[2026-06-05 05:37:23,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:23,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:37:23,224.224 INFO    ] No update needed
[2026-06-05 05:37:23,227.227 INFO    ] Checking for camera pi updates...
[2026-06-05 05:37:23,261.261 INFO    ] 200
[2026-06-05 05:37:23,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:23,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:37:23,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:37:23,359.359 INFO    ] No camera update needed
[2026-06-05 05:37:23,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:37:23,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:37:23,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:37:23,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:37:25,414.414 INFO    ] ================================================
[2026-06-05 05:37:25,429.429 INFO    ] Launching Daemon at Fri Jun  5 05:37:25 IST 2026
[2026-06-05 05:37:25,439.439 INFO    ] ================================================
[2026-06-05 05:37:26,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:37:26
[2026-06-05 05:37:26,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:37:26,856.856 INFO    ] Initializing speech engine...
[2026-06-05 05:37:26,865.865 INFO    ] 2026-06-05 05:37:26
[2026-06-05 05:37:27,111.111 INFO    ] 2026-06-05 05:37:27
[2026-06-05 05:37:27,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:37:27,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:37:27,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:37:27,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:37:27,576.576 INFO    ] time= 05/06/2026 05:37:27
[2026-06-05 05:37:27,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:37:27,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:37:27,723.723 INFO    ] No existing commands found in stream
[2026-06-05 05:37:32,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:37:32,738.738 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 05:37:35,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:37:35,231.231 INFO    ] Checking for system updates...
[2026-06-05 05:37:35,267.267 INFO    ] 200
[2026-06-05 05:37:35,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:35,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:37:35,324.324 INFO    ] No update needed
[2026-06-05 05:37:35,327.327 INFO    ] Checking for camera pi updates...
[2026-06-05 05:37:35,360.360 INFO    ] 200
[2026-06-05 05:37:35,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:35,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:37:35,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:37:35,452.452 INFO    ] No camera update needed
[2026-06-05 05:37:35,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:37:35,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:37:35,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:37:35,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:37:37,508.508 INFO    ] ================================================
[2026-06-05 05:37:37,523.523 INFO    ] Launching Daemon at Fri Jun  5 05:37:37 IST 2026
[2026-06-05 05:37:37,533.533 INFO    ] ================================================
[2026-06-05 05:37:38,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:37:38
[2026-06-05 05:37:38,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:37:39,036.036 INFO    ] Initializing speech engine...
[2026-06-05 05:37:39,055.055 INFO    ] 2026-06-05 05:37:39
[2026-06-05 05:37:39,314.314 INFO    ] 2026-06-05 05:37:39
[2026-06-05 05:37:39,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:37:39,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:37:39,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:37:39,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:37:39,693.693 INFO    ] time= 05/06/2026 05:37:39
[2026-06-05 05:37:39,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:37:39,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:37:39,867.867 INFO    ] No existing commands found in stream
[2026-06-05 05:37:44,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:37:44,895.895 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 05:37:45,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:37:45,548.548 INFO    ] Checking for system updates...
[2026-06-05 05:37:45,584.584 INFO    ] 200
[2026-06-05 05:37:45,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:45,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:37:45,643.643 INFO    ] No update needed
[2026-06-05 05:37:45,645.645 INFO    ] Checking for camera pi updates...
[2026-06-05 05:37:45,680.680 INFO    ] 200
[2026-06-05 05:37:45,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:45,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:37:45,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:37:45,771.771 INFO    ] No camera update needed
[2026-06-05 05:37:45,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:37:45,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:37:45,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:37:45,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:37:47,825.825 INFO    ] ================================================
[2026-06-05 05:37:47,841.841 INFO    ] Launching Daemon at Fri Jun  5 05:37:47 IST 2026
[2026-06-05 05:37:47,851.851 INFO    ] ================================================
[2026-06-05 05:37:48,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:37:48
[2026-06-05 05:37:49,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:37:49,508.508 INFO    ] Initializing speech engine...
[2026-06-05 05:37:49,517.517 INFO    ] 2026-06-05 05:37:49
[2026-06-05 05:37:49,783.783 INFO    ] 2026-06-05 05:37:49
[2026-06-05 05:37:49,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:37:50,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:37:50,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:37:50,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:37:50,233.233 INFO    ] time= 05/06/2026 05:37:50
[2026-06-05 05:37:50,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:37:50,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:37:50,376.376 INFO    ] No existing commands found in stream
[2026-06-05 05:37:55,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:37:55,391.391 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 05:37:56,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:37:56,449.449 INFO    ] Checking for system updates...
[2026-06-05 05:37:56,485.485 INFO    ] 200
[2026-06-05 05:37:56,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:56,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:37:56,544.544 INFO    ] No update needed
[2026-06-05 05:37:56,547.547 INFO    ] Checking for camera pi updates...
[2026-06-05 05:37:56,585.585 INFO    ] 200
[2026-06-05 05:37:56,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:37:56,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:37:56,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:37:56,689.689 INFO    ] No camera update needed
[2026-06-05 05:37:56,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:37:56,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:37:56,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:37:56,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:37:58,745.745 INFO    ] ================================================
[2026-06-05 05:37:58,760.760 INFO    ] Launching Daemon at Fri Jun  5 05:37:58 IST 2026
[2026-06-05 05:37:58,771.771 INFO    ] ================================================
[2026-06-05 05:37:59,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:37:59
[2026-06-05 05:37:59,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:38:00,195.195 INFO    ] Initializing speech engine...
[2026-06-05 05:38:00,203.203 INFO    ] 2026-06-05 05:38:00
[2026-06-05 05:38:00,456.456 INFO    ] 2026-06-05 05:38:00
[2026-06-05 05:38:00,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:38:00,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:38:00,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:38:00,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:38:00,922.922 INFO    ] time= 05/06/2026 05:38:00
[2026-06-05 05:38:00,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:38:01,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:38:01,085.085 INFO    ] No existing commands found in stream
[2026-06-05 05:38:06,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:38:06,099.099 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 05:38:06,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:38:06,594.594 INFO    ] Checking for system updates...
[2026-06-05 05:38:06,629.629 INFO    ] 200
[2026-06-05 05:38:06,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:06,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:06,687.687 INFO    ] No update needed
[2026-06-05 05:38:06,689.689 INFO    ] Checking for camera pi updates...
[2026-06-05 05:38:06,727.727 INFO    ] 200
[2026-06-05 05:38:06,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:06,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:38:06,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:06,812.812 INFO    ] No camera update needed
[2026-06-05 05:38:06,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:38:06,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:38:06,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:38:06,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:38:08,868.868 INFO    ] ================================================
[2026-06-05 05:38:08,883.883 INFO    ] Launching Daemon at Fri Jun  5 05:38:08 IST 2026
[2026-06-05 05:38:08,894.894 INFO    ] ================================================
[2026-06-05 05:38:09,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:38:09
[2026-06-05 05:38:10,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:38:10,387.387 INFO    ] Initializing speech engine...
[2026-06-05 05:38:10,400.400 INFO    ] 2026-06-05 05:38:10
[2026-06-05 05:38:10,663.663 INFO    ] 2026-06-05 05:38:10
[2026-06-05 05:38:10,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:38:10,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:38:10,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:38:11,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:38:11,129.129 INFO    ] time= 05/06/2026 05:38:11
[2026-06-05 05:38:11,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:38:11,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:38:11,284.284 INFO    ] No existing commands found in stream
[2026-06-05 05:38:16,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:38:16,299.299 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 05:38:17,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:38:17,820.820 INFO    ] Checking for system updates...
[2026-06-05 05:38:17,857.857 INFO    ] 200
[2026-06-05 05:38:17,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:17,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:17,915.915 INFO    ] No update needed
[2026-06-05 05:38:17,918.918 INFO    ] Checking for camera pi updates...
[2026-06-05 05:38:17,953.953 INFO    ] 200
[2026-06-05 05:38:17,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:17,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:38:18,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:18,038.038 INFO    ] No camera update needed
[2026-06-05 05:38:18,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:38:18,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:38:18,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:38:18,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:38:20,093.093 INFO    ] ================================================
[2026-06-05 05:38:20,109.109 INFO    ] Launching Daemon at Fri Jun  5 05:38:20 IST 2026
[2026-06-05 05:38:20,120.120 INFO    ] ================================================
[2026-06-05 05:38:20,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:38:20
[2026-06-05 05:38:21,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:38:21,530.530 INFO    ] Initializing speech engine...
[2026-06-05 05:38:21,550.550 INFO    ] 2026-06-05 05:38:21
[2026-06-05 05:38:21,796.796 INFO    ] 2026-06-05 05:38:21
[2026-06-05 05:38:21,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:38:22,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:38:22,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:38:22,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:38:22,269.269 INFO    ] time= 05/06/2026 05:38:22
[2026-06-05 05:38:22,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:38:22,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:38:22,416.416 INFO    ] No existing commands found in stream
[2026-06-05 05:38:27,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:38:27,431.431 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 05:38:31,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:38:31,733.733 INFO    ] Checking for system updates...
[2026-06-05 05:38:31,777.777 INFO    ] 200
[2026-06-05 05:38:31,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:31,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:31,854.854 INFO    ] No update needed
[2026-06-05 05:38:31,858.858 INFO    ] Checking for camera pi updates...
[2026-06-05 05:38:31,905.905 INFO    ] 200
[2026-06-05 05:38:31,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:31,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:38:32,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:32,007.007 INFO    ] No camera update needed
[2026-06-05 05:38:32,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:38:32,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:38:32,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:38:32,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:38:34,067.067 INFO    ] ================================================
[2026-06-05 05:38:34,084.084 INFO    ] Launching Daemon at Fri Jun  5 05:38:34 IST 2026
[2026-06-05 05:38:34,095.095 INFO    ] ================================================
[2026-06-05 05:38:34,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:38:34
[2026-06-05 05:38:35,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:38:35,682.682 INFO    ] Initializing speech engine...
[2026-06-05 05:38:35,692.692 INFO    ] 2026-06-05 05:38:35
[2026-06-05 05:38:35,951.951 INFO    ] 2026-06-05 05:38:35
[2026-06-05 05:38:36,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:38:36,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:38:36,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:38:36,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:38:36,416.416 INFO    ] time= 05/06/2026 05:38:36
[2026-06-05 05:38:36,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:38:36,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:38:36,564.564 INFO    ] No existing commands found in stream
[2026-06-05 05:38:41,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:38:41,579.579 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 05:38:44,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:38:44,483.483 INFO    ] Checking for system updates...
[2026-06-05 05:38:44,518.518 INFO    ] 200
[2026-06-05 05:38:44,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:44,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:44,575.575 INFO    ] No update needed
[2026-06-05 05:38:44,577.577 INFO    ] Checking for camera pi updates...
[2026-06-05 05:38:44,612.612 INFO    ] 200
[2026-06-05 05:38:44,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:44,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:38:44,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:44,811.811 INFO    ] No camera update needed
[2026-06-05 05:38:44,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:38:44,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:38:44,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:38:44,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:38:46,869.869 INFO    ] ================================================
[2026-06-05 05:38:46,884.884 INFO    ] Launching Daemon at Fri Jun  5 05:38:46 IST 2026
[2026-06-05 05:38:46,896.896 INFO    ] ================================================
[2026-06-05 05:38:47,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:38:47
[2026-06-05 05:38:48,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:38:48,402.402 INFO    ] Initializing speech engine...
[2026-06-05 05:38:48,412.412 INFO    ] 2026-06-05 05:38:48
[2026-06-05 05:38:48,682.682 INFO    ] 2026-06-05 05:38:48
[2026-06-05 05:38:48,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:38:48,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:38:48,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:38:49,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:38:49,164.164 INFO    ] time= 05/06/2026 05:38:49
[2026-06-05 05:38:49,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:38:49,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:38:49,313.313 INFO    ] No existing commands found in stream
[2026-06-05 05:38:54,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:38:54,330.330 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 05:38:55,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:38:55,388.388 INFO    ] Checking for system updates...
[2026-06-05 05:38:55,427.427 INFO    ] 200
[2026-06-05 05:38:55,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:55,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:55,486.486 INFO    ] No update needed
[2026-06-05 05:38:55,488.488 INFO    ] Checking for camera pi updates...
[2026-06-05 05:38:55,522.522 INFO    ] 200
[2026-06-05 05:38:55,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:38:55,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:38:55,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:38:55,610.610 INFO    ] No camera update needed
[2026-06-05 05:38:55,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:38:55,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:38:55,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:38:55,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:38:57,671.671 INFO    ] ================================================
[2026-06-05 05:38:57,686.686 INFO    ] Launching Daemon at Fri Jun  5 05:38:57 IST 2026
[2026-06-05 05:38:57,697.697 INFO    ] ================================================
[2026-06-05 05:38:58,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:38:58
[2026-06-05 05:38:59,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:38:59,282.282 INFO    ] Initializing speech engine...
[2026-06-05 05:38:59,291.291 INFO    ] 2026-06-05 05:38:59
[2026-06-05 05:38:59,541.541 INFO    ] 2026-06-05 05:38:59
[2026-06-05 05:38:59,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:38:59,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:38:59,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:38:59,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:38:59,918.918 INFO    ] time= 05/06/2026 05:38:59
[2026-06-05 05:38:59,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:38:59,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:39:00,081.081 INFO    ] No existing commands found in stream
[2026-06-05 05:39:05,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:39:05,114.114 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 05:39:08,184.184 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:39:08,187.187 INFO    ] Checking for system updates...
[2026-06-05 05:39:08,227.227 INFO    ] 200
[2026-06-05 05:39:08,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:08,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:39:08,293.293 INFO    ] No update needed
[2026-06-05 05:39:08,295.295 INFO    ] Checking for camera pi updates...
[2026-06-05 05:39:08,333.333 INFO    ] 200
[2026-06-05 05:39:08,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:08,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:39:08,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:39:08,408.408 INFO    ] No camera update needed
[2026-06-05 05:39:08,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:39:08,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:39:08,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:39:08,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:39:10,465.465 INFO    ] ================================================
[2026-06-05 05:39:10,481.481 INFO    ] Launching Daemon at Fri Jun  5 05:39:10 IST 2026
[2026-06-05 05:39:10,492.492 INFO    ] ================================================
[2026-06-05 05:39:11,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:39:11
[2026-06-05 05:39:11,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:39:11,983.983 INFO    ] Initializing speech engine...
[2026-06-05 05:39:11,992.992 INFO    ] 2026-06-05 05:39:11
[2026-06-05 05:39:12,240.240 INFO    ] 2026-06-05 05:39:12
[2026-06-05 05:39:12,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:39:12,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:39:12,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:39:12,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:39:12,794.794 INFO    ] time= 05/06/2026 05:39:12
[2026-06-05 05:39:12,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:39:12,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:39:12,933.933 INFO    ] No existing commands found in stream
[2026-06-05 05:39:17,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:39:17,960.960 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 05:39:20,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:39:20,948.948 INFO    ] Checking for system updates...
[2026-06-05 05:39:20,984.984 INFO    ] 200
[2026-06-05 05:39:20,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:21,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:39:21,043.043 INFO    ] No update needed
[2026-06-05 05:39:21,049.049 INFO    ] Checking for camera pi updates...
[2026-06-05 05:39:21,083.083 INFO    ] 200
[2026-06-05 05:39:21,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:21,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:39:21,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:39:21,173.173 INFO    ] No camera update needed
[2026-06-05 05:39:21,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:39:21,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:39:21,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:39:21,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:39:23,228.228 INFO    ] ================================================
[2026-06-05 05:39:23,242.242 INFO    ] Launching Daemon at Fri Jun  5 05:39:23 IST 2026
[2026-06-05 05:39:23,253.253 INFO    ] ================================================
[2026-06-05 05:39:23,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:39:23
[2026-06-05 05:39:24,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:39:24,686.686 INFO    ] Initializing speech engine...
[2026-06-05 05:39:24,694.694 INFO    ] 2026-06-05 05:39:24
[2026-06-05 05:39:24,951.951 INFO    ] 2026-06-05 05:39:24
[2026-06-05 05:39:25,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:39:25,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:39:25,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:39:25,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:39:25,440.440 INFO    ] time= 05/06/2026 05:39:25
[2026-06-05 05:39:25,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:39:25,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:39:25,634.634 INFO    ] No existing commands found in stream
[2026-06-05 05:39:30,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:39:30,669.669 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 05:39:31,638.638 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:39:31,641.641 INFO    ] Checking for system updates...
[2026-06-05 05:39:31,685.685 INFO    ] 200
[2026-06-05 05:39:31,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:31,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:39:31,751.751 INFO    ] No update needed
[2026-06-05 05:39:31,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 05:39:31,791.791 INFO    ] 200
[2026-06-05 05:39:31,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:31,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:39:31,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:39:31,874.874 INFO    ] No camera update needed
[2026-06-05 05:39:31,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:39:31,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:39:31,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:39:31,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:39:33,934.934 INFO    ] ================================================
[2026-06-05 05:39:33,950.950 INFO    ] Launching Daemon at Fri Jun  5 05:39:33 IST 2026
[2026-06-05 05:39:33,960.960 INFO    ] ================================================
[2026-06-05 05:39:34,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:39:34
[2026-06-05 05:39:35,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:39:35,460.460 INFO    ] Initializing speech engine...
[2026-06-05 05:39:35,472.472 INFO    ] 2026-06-05 05:39:35
[2026-06-05 05:39:35,752.752 INFO    ] 2026-06-05 05:39:35
[2026-06-05 05:39:35,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:39:36,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:39:36,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:39:36,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:39:36,233.233 INFO    ] time= 05/06/2026 05:39:36
[2026-06-05 05:39:36,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:39:36,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:39:36,366.366 INFO    ] No existing commands found in stream
[2026-06-05 05:39:41,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:39:41,382.382 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 05:39:42,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:39:42,918.918 INFO    ] Checking for system updates...
[2026-06-05 05:39:42,960.960 INFO    ] 200
[2026-06-05 05:39:42,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:43,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:39:43,024.024 INFO    ] No update needed
[2026-06-05 05:39:43,026.026 INFO    ] Checking for camera pi updates...
[2026-06-05 05:39:43,064.064 INFO    ] 200
[2026-06-05 05:39:43,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:43,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:39:43,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:39:43,155.155 INFO    ] No camera update needed
[2026-06-05 05:39:43,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:39:43,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:39:43,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:39:43,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:39:45,210.210 INFO    ] ================================================
[2026-06-05 05:39:45,225.225 INFO    ] Launching Daemon at Fri Jun  5 05:39:45 IST 2026
[2026-06-05 05:39:45,236.236 INFO    ] ================================================
[2026-06-05 05:39:45,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:39:45
[2026-06-05 05:39:46,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:39:46,872.872 INFO    ] Initializing speech engine...
[2026-06-05 05:39:46,884.884 INFO    ] 2026-06-05 05:39:46
[2026-06-05 05:39:47,197.197 INFO    ] 2026-06-05 05:39:47
[2026-06-05 05:39:47,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:39:47,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:39:47,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:39:47,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:39:47,639.639 INFO    ] time= 05/06/2026 05:39:47
[2026-06-05 05:39:47,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:39:47,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:39:47,783.783 INFO    ] No existing commands found in stream
[2026-06-05 05:39:52,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:39:52,799.799 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 05:39:53,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:39:53,311.311 INFO    ] Checking for system updates...
[2026-06-05 05:39:53,348.348 INFO    ] 200
[2026-06-05 05:39:53,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:53,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:39:53,420.420 INFO    ] No update needed
[2026-06-05 05:39:53,422.422 INFO    ] Checking for camera pi updates...
[2026-06-05 05:39:53,456.456 INFO    ] 200
[2026-06-05 05:39:53,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:39:53,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:39:53,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:39:53,547.547 INFO    ] No camera update needed
[2026-06-05 05:39:53,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:39:53,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:39:53,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:39:53,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:39:55,602.602 INFO    ] ================================================
[2026-06-05 05:39:55,617.617 INFO    ] Launching Daemon at Fri Jun  5 05:39:55 IST 2026
[2026-06-05 05:39:55,628.628 INFO    ] ================================================
[2026-06-05 05:39:56,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:39:56
[2026-06-05 05:39:56,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:39:57,254.254 INFO    ] Initializing speech engine...
[2026-06-05 05:39:57,263.263 INFO    ] 2026-06-05 05:39:57
[2026-06-05 05:39:57,553.553 INFO    ] 2026-06-05 05:39:57
[2026-06-05 05:39:57,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:39:57,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:39:57,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:39:57,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:39:58,052.052 INFO    ] time= 05/06/2026 05:39:57
[2026-06-05 05:39:58,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:39:58,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:39:58,173.173 INFO    ] No existing commands found in stream
[2026-06-05 05:40:03,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:40:03,190.190 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 05:40:07,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:40:07,937.937 INFO    ] Checking for system updates...
[2026-06-05 05:40:07,977.977 INFO    ] 200
[2026-06-05 05:40:07,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:08,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:40:08,035.035 INFO    ] No update needed
[2026-06-05 05:40:08,038.038 INFO    ] Checking for camera pi updates...
[2026-06-05 05:40:08,075.075 INFO    ] 200
[2026-06-05 05:40:08,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:08,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:40:08,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:40:08,176.176 INFO    ] No camera update needed
[2026-06-05 05:40:08,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:40:08,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:40:08,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:40:08,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:40:10,232.232 INFO    ] ================================================
[2026-06-05 05:40:10,247.247 INFO    ] Launching Daemon at Fri Jun  5 05:40:10 IST 2026
[2026-06-05 05:40:10,257.257 INFO    ] ================================================
[2026-06-05 05:40:10,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:40:10
[2026-06-05 05:40:11,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:40:11,699.699 INFO    ] Initializing speech engine...
[2026-06-05 05:40:11,709.709 INFO    ] 2026-06-05 05:40:11
[2026-06-05 05:40:11,968.968 INFO    ] 2026-06-05 05:40:11
[2026-06-05 05:40:12,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:40:12,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:40:12,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:40:12,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:40:12,430.430 INFO    ] time= 05/06/2026 05:40:12
[2026-06-05 05:40:12,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:40:12,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:40:12,575.575 INFO    ] No existing commands found in stream
[2026-06-05 05:40:17,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:40:17,590.590 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 05:40:18,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:40:18,068.068 INFO    ] Checking for system updates...
[2026-06-05 05:40:18,108.108 INFO    ] 200
[2026-06-05 05:40:18,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:18,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:40:18,165.165 INFO    ] No update needed
[2026-06-05 05:40:18,168.168 INFO    ] Checking for camera pi updates...
[2026-06-05 05:40:18,201.201 INFO    ] 200
[2026-06-05 05:40:18,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:18,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:40:18,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:40:18,292.292 INFO    ] No camera update needed
[2026-06-05 05:40:18,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:40:18,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:40:18,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:40:18,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:40:20,348.348 INFO    ] ================================================
[2026-06-05 05:40:20,363.363 INFO    ] Launching Daemon at Fri Jun  5 05:40:20 IST 2026
[2026-06-05 05:40:20,374.374 INFO    ] ================================================
[2026-06-05 05:40:20,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:40:20
[2026-06-05 05:40:21,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:40:21,797.797 INFO    ] Initializing speech engine...
[2026-06-05 05:40:21,813.813 INFO    ] 2026-06-05 05:40:21
[2026-06-05 05:40:22,095.095 INFO    ] 2026-06-05 05:40:22
[2026-06-05 05:40:22,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:40:22,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:40:22,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:40:22,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:40:22,471.471 INFO    ] time= 05/06/2026 05:40:22
[2026-06-05 05:40:22,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:40:22,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:40:22,598.598 INFO    ] No existing commands found in stream
[2026-06-05 05:40:27,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:40:27,611.611 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 05:40:28,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:40:28,187.187 INFO    ] Checking for system updates...
[2026-06-05 05:40:28,226.226 INFO    ] 200
[2026-06-05 05:40:28,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:28,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:40:28,287.287 INFO    ] No update needed
[2026-06-05 05:40:28,289.289 INFO    ] Checking for camera pi updates...
[2026-06-05 05:40:28,323.323 INFO    ] 200
[2026-06-05 05:40:28,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:28,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:40:28,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:40:28,419.419 INFO    ] No camera update needed
[2026-06-05 05:40:28,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:40:28,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:40:28,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:40:28,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:40:30,476.476 INFO    ] ================================================
[2026-06-05 05:40:30,492.492 INFO    ] Launching Daemon at Fri Jun  5 05:40:30 IST 2026
[2026-06-05 05:40:30,502.502 INFO    ] ================================================
[2026-06-05 05:40:31,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:40:31
[2026-06-05 05:40:31,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:40:31,950.950 INFO    ] Initializing speech engine...
[2026-06-05 05:40:31,973.973 INFO    ] 2026-06-05 05:40:31
[2026-06-05 05:40:32,252.252 INFO    ] 2026-06-05 05:40:32
[2026-06-05 05:40:32,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:40:32,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:40:32,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:40:32,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:40:32,653.653 INFO    ] time= 05/06/2026 05:40:32
[2026-06-05 05:40:32,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:40:32,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:40:32,742.742 INFO    ] No existing commands found in stream
[2026-06-05 05:40:37,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:40:37,754.754 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 05:40:38,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:40:38,922.922 INFO    ] Checking for system updates...
[2026-06-05 05:40:38,960.960 INFO    ] 200
[2026-06-05 05:40:38,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:39,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:40:39,025.025 INFO    ] No update needed
[2026-06-05 05:40:39,028.028 INFO    ] Checking for camera pi updates...
[2026-06-05 05:40:39,063.063 INFO    ] 200
[2026-06-05 05:40:39,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:39,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:40:39,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:40:39,161.161 INFO    ] No camera update needed
[2026-06-05 05:40:39,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:40:39,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:40:39,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:40:39,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:40:41,220.220 INFO    ] ================================================
[2026-06-05 05:40:41,236.236 INFO    ] Launching Daemon at Fri Jun  5 05:40:41 IST 2026
[2026-06-05 05:40:41,247.247 INFO    ] ================================================
[2026-06-05 05:40:41,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:40:41
[2026-06-05 05:40:42,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:40:42,671.671 INFO    ] Initializing speech engine...
[2026-06-05 05:40:42,681.681 INFO    ] 2026-06-05 05:40:42
[2026-06-05 05:40:42,929.929 INFO    ] 2026-06-05 05:40:42
[2026-06-05 05:40:42,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:40:43,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:40:43,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:40:43,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:40:43,405.405 INFO    ] time= 05/06/2026 05:40:43
[2026-06-05 05:40:43,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:40:43,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:40:43,550.550 INFO    ] No existing commands found in stream
[2026-06-05 05:40:48,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:40:48,564.564 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 05:40:49,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:40:49,012.012 INFO    ] Checking for system updates...
[2026-06-05 05:40:49,052.052 INFO    ] 200
[2026-06-05 05:40:49,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:49,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:40:49,116.116 INFO    ] No update needed
[2026-06-05 05:40:49,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 05:40:49,152.152 INFO    ] 200
[2026-06-05 05:40:49,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:40:49,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:40:49,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:40:49,354.354 INFO    ] No camera update needed
[2026-06-05 05:40:49,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:40:49,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:40:49,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:40:49,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:40:51,410.410 INFO    ] ================================================
[2026-06-05 05:40:51,426.426 INFO    ] Launching Daemon at Fri Jun  5 05:40:51 IST 2026
[2026-06-05 05:40:51,437.437 INFO    ] ================================================
[2026-06-05 05:40:52,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:40:52
[2026-06-05 05:40:52,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:40:52,875.875 INFO    ] Initializing speech engine...
[2026-06-05 05:40:52,882.882 INFO    ] 2026-06-05 05:40:52
[2026-06-05 05:40:53,141.141 INFO    ] 2026-06-05 05:40:53
[2026-06-05 05:40:53,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:40:53,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:40:53,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:40:53,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:40:53,561.561 INFO    ] time= 05/06/2026 05:40:53
[2026-06-05 05:40:53,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:40:53,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:40:53,742.742 INFO    ] No existing commands found in stream
[2026-06-05 05:40:58,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:40:58,757.757 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 05:41:01,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:41:01,419.419 INFO    ] Checking for system updates...
[2026-06-05 05:41:01,514.514 INFO    ] 200
[2026-06-05 05:41:01,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:01,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:41:01,639.639 INFO    ] No update needed
[2026-06-05 05:41:01,644.644 INFO    ] Checking for camera pi updates...
[2026-06-05 05:41:01,709.709 INFO    ] 200
[2026-06-05 05:41:01,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:01,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:41:01,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:41:01,831.831 INFO    ] No camera update needed
[2026-06-05 05:41:01,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:41:01,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:41:01,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:41:01,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:41:03,909.909 INFO    ] ================================================
[2026-06-05 05:41:03,924.924 INFO    ] Launching Daemon at Fri Jun  5 05:41:03 IST 2026
[2026-06-05 05:41:03,938.938 INFO    ] ================================================
[2026-06-05 05:41:04,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:41:04
[2026-06-05 05:41:05,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:41:05,437.437 INFO    ] Initializing speech engine...
[2026-06-05 05:41:05,451.451 INFO    ] 2026-06-05 05:41:05
[2026-06-05 05:41:05,764.764 INFO    ] 2026-06-05 05:41:05
[2026-06-05 05:41:05,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:41:06,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:41:06,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:41:06,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:41:06,277.277 INFO    ] time= 05/06/2026 05:41:06
[2026-06-05 05:41:06,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:41:06,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:41:06,422.422 INFO    ] No existing commands found in stream
[2026-06-05 05:41:11,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:41:11,453.453 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 05:41:12,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:41:12,464.464 INFO    ] Checking for system updates...
[2026-06-05 05:41:12,501.501 INFO    ] 200
[2026-06-05 05:41:12,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:12,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:41:12,569.569 INFO    ] No update needed
[2026-06-05 05:41:12,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 05:41:12,611.611 INFO    ] 200
[2026-06-05 05:41:12,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:12,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:41:12,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:41:12,704.704 INFO    ] No camera update needed
[2026-06-05 05:41:12,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:41:12,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:41:12,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:41:12,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:41:14,759.759 INFO    ] ================================================
[2026-06-05 05:41:14,774.774 INFO    ] Launching Daemon at Fri Jun  5 05:41:14 IST 2026
[2026-06-05 05:41:14,785.785 INFO    ] ================================================
[2026-06-05 05:41:15,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:41:15
[2026-06-05 05:41:15,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:41:16,341.341 INFO    ] Initializing speech engine...
[2026-06-05 05:41:16,360.360 INFO    ] 2026-06-05 05:41:16
[2026-06-05 05:41:16,679.679 INFO    ] 2026-06-05 05:41:16
[2026-06-05 05:41:16,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:41:16,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:41:16,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:41:17,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:41:17,147.147 INFO    ] time= 05/06/2026 05:41:17
[2026-06-05 05:41:17,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:41:17,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:41:17,312.312 INFO    ] No existing commands found in stream
[2026-06-05 05:41:22,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:41:22,353.353 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 05:41:23,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:41:23,208.208 INFO    ] Checking for system updates...
[2026-06-05 05:41:23,251.251 INFO    ] 200
[2026-06-05 05:41:23,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:23,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:41:23,315.315 INFO    ] No update needed
[2026-06-05 05:41:23,318.318 INFO    ] Checking for camera pi updates...
[2026-06-05 05:41:23,352.352 INFO    ] 200
[2026-06-05 05:41:23,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:23,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:41:23,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:41:23,450.450 INFO    ] No camera update needed
[2026-06-05 05:41:23,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:41:23,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:41:23,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:41:23,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:41:25,506.506 INFO    ] ================================================
[2026-06-05 05:41:25,520.520 INFO    ] Launching Daemon at Fri Jun  5 05:41:25 IST 2026
[2026-06-05 05:41:25,531.531 INFO    ] ================================================
[2026-06-05 05:41:26,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:41:26
[2026-06-05 05:41:26,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:41:26,939.939 INFO    ] Initializing speech engine...
[2026-06-05 05:41:26,962.962 INFO    ] 2026-06-05 05:41:26
[2026-06-05 05:41:27,214.214 INFO    ] 2026-06-05 05:41:27
[2026-06-05 05:41:27,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:41:27,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:41:27,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:41:27,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:41:27,584.584 INFO    ] time= 05/06/2026 05:41:27
[2026-06-05 05:41:27,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:41:27,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:41:27,749.749 INFO    ] No existing commands found in stream
[2026-06-05 05:41:32,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:41:32,780.780 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 05:41:34,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:41:34,311.311 INFO    ] Checking for system updates...
[2026-06-05 05:41:34,347.347 INFO    ] 200
[2026-06-05 05:41:34,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:34,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:41:34,406.406 INFO    ] No update needed
[2026-06-05 05:41:34,409.409 INFO    ] Checking for camera pi updates...
[2026-06-05 05:41:34,442.442 INFO    ] 200
[2026-06-05 05:41:34,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:34,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:41:34,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:41:34,540.540 INFO    ] No camera update needed
[2026-06-05 05:41:34,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:41:34,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:41:34,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:41:34,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:41:36,594.594 INFO    ] ================================================
[2026-06-05 05:41:36,610.610 INFO    ] Launching Daemon at Fri Jun  5 05:41:36 IST 2026
[2026-06-05 05:41:36,620.620 INFO    ] ================================================
[2026-06-05 05:41:37,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:41:37
[2026-06-05 05:41:37,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:41:38,084.084 INFO    ] Initializing speech engine...
[2026-06-05 05:41:38,090.090 INFO    ] 2026-06-05 05:41:38
[2026-06-05 05:41:38,351.351 INFO    ] 2026-06-05 05:41:38
[2026-06-05 05:41:38,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:41:38,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:41:38,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:41:38,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:41:38,816.816 INFO    ] time= 05/06/2026 05:41:38
[2026-06-05 05:41:38,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:41:38,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:41:38,978.978 INFO    ] No existing commands found in stream
[2026-06-05 05:41:44,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:41:44,018.018 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 05:41:47,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:41:47,894.894 INFO    ] Checking for system updates...
[2026-06-05 05:41:47,935.935 INFO    ] 200
[2026-06-05 05:41:47,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:47,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:41:48,001.001 INFO    ] No update needed
[2026-06-05 05:41:48,003.003 INFO    ] Checking for camera pi updates...
[2026-06-05 05:41:48,038.038 INFO    ] 200
[2026-06-05 05:41:48,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:41:48,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:41:48,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:41:48,138.138 INFO    ] No camera update needed
[2026-06-05 05:41:48,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:41:48,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:41:48,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:41:48,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:41:50,194.194 INFO    ] ================================================
[2026-06-05 05:41:50,210.210 INFO    ] Launching Daemon at Fri Jun  5 05:41:50 IST 2026
[2026-06-05 05:41:50,221.221 INFO    ] ================================================
[2026-06-05 05:41:50,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:41:50
[2026-06-05 05:41:51,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:41:51,737.737 INFO    ] Initializing speech engine...
[2026-06-05 05:41:51,746.746 INFO    ] 2026-06-05 05:41:51
[2026-06-05 05:41:52,055.055 INFO    ] 2026-06-05 05:41:52
[2026-06-05 05:41:52,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:41:52,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:41:52,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:41:52,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:41:52,581.581 INFO    ] time= 05/06/2026 05:41:52
[2026-06-05 05:41:52,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:41:52,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:41:52,722.722 INFO    ] No existing commands found in stream
[2026-06-05 05:41:57,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:41:57,751.751 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 05:42:01,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:42:01,966.966 INFO    ] Checking for system updates...
[2026-06-05 05:42:02,011.011 INFO    ] 200
[2026-06-05 05:42:02,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:02,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:42:02,108.108 INFO    ] No update needed
[2026-06-05 05:42:02,112.112 INFO    ] Checking for camera pi updates...
[2026-06-05 05:42:02,161.161 INFO    ] 200
[2026-06-05 05:42:02,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:02,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:42:02,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:42:02,257.257 INFO    ] No camera update needed
[2026-06-05 05:42:02,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:42:02,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:42:02,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:42:02,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:42:04,324.324 INFO    ] ================================================
[2026-06-05 05:42:04,339.339 INFO    ] Launching Daemon at Fri Jun  5 05:42:04 IST 2026
[2026-06-05 05:42:04,350.350 INFO    ] ================================================
[2026-06-05 05:42:04,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:42:04
[2026-06-05 05:42:05,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:42:05,810.810 INFO    ] Initializing speech engine...
[2026-06-05 05:42:05,820.820 INFO    ] 2026-06-05 05:42:05
[2026-06-05 05:42:06,077.077 INFO    ] 2026-06-05 05:42:06
[2026-06-05 05:42:06,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:42:06,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:42:06,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:42:06,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:42:06,427.427 INFO    ] time= 05/06/2026 05:42:06
[2026-06-05 05:42:06,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:42:06,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:42:06,509.509 INFO    ] No existing commands found in stream
[2026-06-05 05:42:11,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:42:11,521.521 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 05:42:14,426.426 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:42:14,428.428 INFO    ] Checking for system updates...
[2026-06-05 05:42:14,465.465 INFO    ] 200
[2026-06-05 05:42:14,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:14,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:42:14,525.525 INFO    ] No update needed
[2026-06-05 05:42:14,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 05:42:14,563.563 INFO    ] 200
[2026-06-05 05:42:14,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:14,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:42:14,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:42:14,671.671 INFO    ] No camera update needed
[2026-06-05 05:42:14,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:42:14,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:42:14,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:42:14,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:42:16,731.731 INFO    ] ================================================
[2026-06-05 05:42:16,747.747 INFO    ] Launching Daemon at Fri Jun  5 05:42:16 IST 2026
[2026-06-05 05:42:16,758.758 INFO    ] ================================================
[2026-06-05 05:42:17,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:42:17
[2026-06-05 05:42:17,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:42:18,249.249 INFO    ] Initializing speech engine...
[2026-06-05 05:42:18,258.258 INFO    ] 2026-06-05 05:42:18
[2026-06-05 05:42:18,561.561 INFO    ] 2026-06-05 05:42:18
[2026-06-05 05:42:18,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:42:18,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:42:18,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:42:18,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:42:18,944.944 INFO    ] time= 05/06/2026 05:42:18
[2026-06-05 05:42:18,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:42:18,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:42:19,058.058 INFO    ] No existing commands found in stream
[2026-06-05 05:42:24,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:42:24,072.072 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 05:42:24,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:42:24,862.862 INFO    ] Checking for system updates...
[2026-06-05 05:42:24,902.902 INFO    ] 200
[2026-06-05 05:42:24,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:24,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:42:24,963.963 INFO    ] No update needed
[2026-06-05 05:42:24,966.966 INFO    ] Checking for camera pi updates...
[2026-06-05 05:42:25,005.005 INFO    ] 200
[2026-06-05 05:42:25,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:25,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:42:25,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:42:25,093.093 INFO    ] No camera update needed
[2026-06-05 05:42:25,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:42:25,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:42:25,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:42:25,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:42:27,153.153 INFO    ] ================================================
[2026-06-05 05:42:27,168.168 INFO    ] Launching Daemon at Fri Jun  5 05:42:27 IST 2026
[2026-06-05 05:42:27,179.179 INFO    ] ================================================
[2026-06-05 05:42:27,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:42:27
[2026-06-05 05:42:28,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:42:28,601.601 INFO    ] Initializing speech engine...
[2026-06-05 05:42:28,610.610 INFO    ] 2026-06-05 05:42:28
[2026-06-05 05:42:28,863.863 INFO    ] 2026-06-05 05:42:28
[2026-06-05 05:42:28,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:42:29,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:42:29,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:42:29,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:42:29,252.252 INFO    ] time= 05/06/2026 05:42:29
[2026-06-05 05:42:29,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:42:29,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:42:29,379.379 INFO    ] No existing commands found in stream
[2026-06-05 05:42:34,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:42:34,418.418 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 05:42:36,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:42:36,121.121 INFO    ] Checking for system updates...
[2026-06-05 05:42:36,162.162 INFO    ] 200
[2026-06-05 05:42:36,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:36,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:42:36,219.219 INFO    ] No update needed
[2026-06-05 05:42:36,222.222 INFO    ] Checking for camera pi updates...
[2026-06-05 05:42:36,255.255 INFO    ] 200
[2026-06-05 05:42:36,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:36,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:42:36,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:42:36,343.343 INFO    ] No camera update needed
[2026-06-05 05:42:36,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:42:36,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:42:36,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:42:36,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:42:38,400.400 INFO    ] ================================================
[2026-06-05 05:42:38,415.415 INFO    ] Launching Daemon at Fri Jun  5 05:42:38 IST 2026
[2026-06-05 05:42:38,426.426 INFO    ] ================================================
[2026-06-05 05:42:39,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:42:39
[2026-06-05 05:42:39,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:42:40,129.129 INFO    ] Initializing speech engine...
[2026-06-05 05:42:40,137.137 INFO    ] 2026-06-05 05:42:40
[2026-06-05 05:42:40,404.404 INFO    ] 2026-06-05 05:42:40
[2026-06-05 05:42:40,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:42:40,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:42:40,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:42:40,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:42:40,872.872 INFO    ] time= 05/06/2026 05:42:40
[2026-06-05 05:42:40,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:42:40,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:42:41,026.026 INFO    ] No existing commands found in stream
[2026-06-05 05:42:46,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:42:46,040.040 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 05:42:50,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:42:50,028.028 INFO    ] Checking for system updates...
[2026-06-05 05:42:50,065.065 INFO    ] 200
[2026-06-05 05:42:50,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:50,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:42:50,125.125 INFO    ] No update needed
[2026-06-05 05:42:50,128.128 INFO    ] Checking for camera pi updates...
[2026-06-05 05:42:50,163.163 INFO    ] 200
[2026-06-05 05:42:50,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:42:50,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:42:50,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:42:50,268.268 INFO    ] No camera update needed
[2026-06-05 05:42:50,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:42:50,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:42:50,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:42:50,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:42:52,328.328 INFO    ] ================================================
[2026-06-05 05:42:52,343.343 INFO    ] Launching Daemon at Fri Jun  5 05:42:52 IST 2026
[2026-06-05 05:42:52,354.354 INFO    ] ================================================
[2026-06-05 05:42:52,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:42:52
[2026-06-05 05:42:53,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:42:53,781.781 INFO    ] Initializing speech engine...
[2026-06-05 05:42:53,790.790 INFO    ] 2026-06-05 05:42:53
[2026-06-05 05:42:54,068.068 INFO    ] 2026-06-05 05:42:54
[2026-06-05 05:42:54,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:42:54,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:42:54,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:42:54,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:42:54,565.565 INFO    ] time= 05/06/2026 05:42:54
[2026-06-05 05:42:54,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:42:54,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:42:54,723.723 INFO    ] No existing commands found in stream
[2026-06-05 05:42:59,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:42:59,765.765 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 05:43:02,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:43:02,423.423 INFO    ] Checking for system updates...
[2026-06-05 05:43:02,467.467 INFO    ] 200
[2026-06-05 05:43:02,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:02,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:43:02,544.544 INFO    ] No update needed
[2026-06-05 05:43:02,547.547 INFO    ] Checking for camera pi updates...
[2026-06-05 05:43:02,594.594 INFO    ] 200
[2026-06-05 05:43:02,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:02,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:43:02,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:43:02,710.710 INFO    ] No camera update needed
[2026-06-05 05:43:02,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:43:02,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:43:02,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:43:02,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:43:04,769.769 INFO    ] ================================================
[2026-06-05 05:43:04,784.784 INFO    ] Launching Daemon at Fri Jun  5 05:43:04 IST 2026
[2026-06-05 05:43:04,794.794 INFO    ] ================================================
[2026-06-05 05:43:05,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:43:05
[2026-06-05 05:43:05,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:43:06,240.240 INFO    ] Initializing speech engine...
[2026-06-05 05:43:06,256.256 INFO    ] 2026-06-05 05:43:06
[2026-06-05 05:43:06,509.509 INFO    ] 2026-06-05 05:43:06
[2026-06-05 05:43:06,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:43:06,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:43:06,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:43:06,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:43:06,877.877 INFO    ] time= 05/06/2026 05:43:06
[2026-06-05 05:43:06,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:43:06,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:43:07,052.052 INFO    ] No existing commands found in stream
[2026-06-05 05:43:12,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:43:12,085.085 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 05:43:14,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:43:14,002.002 INFO    ] Checking for system updates...
[2026-06-05 05:43:14,039.039 INFO    ] 200
[2026-06-05 05:43:14,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:14,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:43:14,106.106 INFO    ] No update needed
[2026-06-05 05:43:14,109.109 INFO    ] Checking for camera pi updates...
[2026-06-05 05:43:14,142.142 INFO    ] 200
[2026-06-05 05:43:14,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:14,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:43:14,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:43:14,235.235 INFO    ] No camera update needed
[2026-06-05 05:43:14,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:43:14,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:43:14,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:43:14,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:43:16,299.299 INFO    ] ================================================
[2026-06-05 05:43:16,315.315 INFO    ] Launching Daemon at Fri Jun  5 05:43:16 IST 2026
[2026-06-05 05:43:16,326.326 INFO    ] ================================================
[2026-06-05 05:43:16,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:43:16
[2026-06-05 05:43:17,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:43:17,776.776 INFO    ] Initializing speech engine...
[2026-06-05 05:43:17,782.782 INFO    ] 2026-06-05 05:43:17
[2026-06-05 05:43:18,087.087 INFO    ] 2026-06-05 05:43:18
[2026-06-05 05:43:18,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:43:18,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:43:18,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:43:18,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:43:18,522.522 INFO    ] time= 05/06/2026 05:43:18
[2026-06-05 05:43:18,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:43:18,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:43:18,609.609 INFO    ] No existing commands found in stream
[2026-06-05 05:43:23,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:43:23,624.624 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-05 05:43:27,034.034 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:43:27,037.037 INFO    ] Checking for system updates...
[2026-06-05 05:43:27,073.073 INFO    ] 200
[2026-06-05 05:43:27,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:27,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:43:27,132.132 INFO    ] No update needed
[2026-06-05 05:43:27,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 05:43:27,169.169 INFO    ] 200
[2026-06-05 05:43:27,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:27,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:43:27,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:43:27,256.256 INFO    ] No camera update needed
[2026-06-05 05:43:27,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:43:27,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:43:27,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:43:27,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:43:29,312.312 INFO    ] ================================================
[2026-06-05 05:43:29,327.327 INFO    ] Launching Daemon at Fri Jun  5 05:43:29 IST 2026
[2026-06-05 05:43:29,337.337 INFO    ] ================================================
[2026-06-05 05:43:29,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:43:29
[2026-06-05 05:43:30,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:43:30,776.776 INFO    ] Initializing speech engine...
[2026-06-05 05:43:30,787.787 INFO    ] 2026-06-05 05:43:30
[2026-06-05 05:43:31,039.039 INFO    ] 2026-06-05 05:43:31
[2026-06-05 05:43:31,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:43:31,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:43:31,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:43:31,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:43:31,421.421 INFO    ] time= 05/06/2026 05:43:31
[2026-06-05 05:43:31,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:43:31,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:43:31,550.550 INFO    ] No existing commands found in stream
[2026-06-05 05:43:36,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:43:36,563.563 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-05 05:43:39,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:43:39,011.011 INFO    ] Checking for system updates...
[2026-06-05 05:43:39,053.053 INFO    ] 200
[2026-06-05 05:43:39,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:39,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:43:39,113.113 INFO    ] No update needed
[2026-06-05 05:43:39,116.116 INFO    ] Checking for camera pi updates...
[2026-06-05 05:43:39,152.152 INFO    ] 200
[2026-06-05 05:43:39,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:39,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:43:39,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:43:39,254.254 INFO    ] No camera update needed
[2026-06-05 05:43:39,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:43:39,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:43:39,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:43:39,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:43:41,310.310 INFO    ] ================================================
[2026-06-05 05:43:41,326.326 INFO    ] Launching Daemon at Fri Jun  5 05:43:41 IST 2026
[2026-06-05 05:43:41,337.337 INFO    ] ================================================
[2026-06-05 05:43:42,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:43:42
[2026-06-05 05:43:42,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:43:43,049.049 INFO    ] Initializing speech engine...
[2026-06-05 05:43:43,061.061 INFO    ] 2026-06-05 05:43:43
[2026-06-05 05:43:43,361.361 INFO    ] 2026-06-05 05:43:43
[2026-06-05 05:43:43,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:43:43,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:43:43,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:43:43,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:43:43,836.836 INFO    ] time= 05/06/2026 05:43:43
[2026-06-05 05:43:43,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:43:43,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:43:43,979.979 INFO    ] No existing commands found in stream
[2026-06-05 05:43:48,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:43:48,996.996 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 05:43:49,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:43:49,484.484 INFO    ] Checking for system updates...
[2026-06-05 05:43:49,528.528 INFO    ] 200
[2026-06-05 05:43:49,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:49,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:43:49,603.603 INFO    ] No update needed
[2026-06-05 05:43:49,606.606 INFO    ] Checking for camera pi updates...
[2026-06-05 05:43:49,646.646 INFO    ] 200
[2026-06-05 05:43:49,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:49,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:43:49,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:43:49,751.751 INFO    ] No camera update needed
[2026-06-05 05:43:49,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:43:49,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:43:49,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:43:49,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:43:51,811.811 INFO    ] ================================================
[2026-06-05 05:43:51,827.827 INFO    ] Launching Daemon at Fri Jun  5 05:43:51 IST 2026
[2026-06-05 05:43:51,837.837 INFO    ] ================================================
[2026-06-05 05:43:52,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:43:52
[2026-06-05 05:43:53,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:43:53,291.291 INFO    ] Initializing speech engine...
[2026-06-05 05:43:53,299.299 INFO    ] 2026-06-05 05:43:53
[2026-06-05 05:43:53,562.562 INFO    ] 2026-06-05 05:43:53
[2026-06-05 05:43:53,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:43:53,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:43:53,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:43:53,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:43:54,021.021 INFO    ] time= 05/06/2026 05:43:53
[2026-06-05 05:43:54,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:43:54,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:43:54,177.177 INFO    ] No existing commands found in stream
[2026-06-05 05:43:59,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:43:59,191.191 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 05:43:59,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:43:59,777.777 INFO    ] Checking for system updates...
[2026-06-05 05:43:59,813.813 INFO    ] 200
[2026-06-05 05:43:59,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:59,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:43:59,871.871 INFO    ] No update needed
[2026-06-05 05:43:59,873.873 INFO    ] Checking for camera pi updates...
[2026-06-05 05:43:59,907.907 INFO    ] 200
[2026-06-05 05:43:59,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:43:59,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:43:59,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:43:59,999.999 INFO    ] No camera update needed
[2026-06-05 05:44:00,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:44:00,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:44:00,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:44:00,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:44:02,060.060 INFO    ] ================================================
[2026-06-05 05:44:02,077.077 INFO    ] Launching Daemon at Fri Jun  5 05:44:02 IST 2026
[2026-06-05 05:44:02,090.090 INFO    ] ================================================
[2026-06-05 05:44:02,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:44:02
[2026-06-05 05:44:03,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:44:03,660.660 INFO    ] Initializing speech engine...
[2026-06-05 05:44:03,666.666 INFO    ] 2026-06-05 05:44:03
[2026-06-05 05:44:03,928.928 INFO    ] 2026-06-05 05:44:03
[2026-06-05 05:44:03,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:44:04,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:44:04,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:44:04,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:44:04,400.400 INFO    ] time= 05/06/2026 05:44:04
[2026-06-05 05:44:04,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:44:04,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:44:04,540.540 INFO    ] No existing commands found in stream
[2026-06-05 05:44:09,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:44:09,555.555 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 05:44:13,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:44:13,329.329 INFO    ] Checking for system updates...
[2026-06-05 05:44:13,366.366 INFO    ] 200
[2026-06-05 05:44:13,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:44:13,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:44:13,425.425 INFO    ] No update needed
[2026-06-05 05:44:13,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 05:44:13,466.466 INFO    ] 200
[2026-06-05 05:44:13,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:44:13,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:44:13,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:44:13,553.553 INFO    ] No camera update needed
[2026-06-05 05:44:13,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:44:13,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:44:13,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:44:13,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:44:15,612.612 INFO    ] ================================================
[2026-06-05 05:44:15,628.628 INFO    ] Launching Daemon at Fri Jun  5 05:44:15 IST 2026
[2026-06-05 05:44:15,639.639 INFO    ] ================================================
[2026-06-05 05:44:16,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:44:16
[2026-06-05 05:44:16,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:44:17,097.097 INFO    ] Initializing speech engine...
[2026-06-05 05:44:17,106.106 INFO    ] 2026-06-05 05:44:17
[2026-06-05 05:44:17,369.369 INFO    ] 2026-06-05 05:44:17
[2026-06-05 05:44:17,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:44:17,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:44:17,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:44:17,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:44:17,856.856 INFO    ] time= 05/06/2026 05:44:17
[2026-06-05 05:44:17,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:44:17,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:44:17,982.982 INFO    ] No existing commands found in stream
[2026-06-05 05:44:22,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:44:22,997.997 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 05:44:24,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:44:24,859.859 INFO    ] Checking for system updates...
[2026-06-05 05:44:24,896.896 INFO    ] 200
[2026-06-05 05:44:24,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:44:24,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:44:24,962.962 INFO    ] No update needed
[2026-06-05 05:44:24,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 05:44:24,998.998 INFO    ] 200
[2026-06-05 05:44:25,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:44:25,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:44:25,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:44:25,089.089 INFO    ] No camera update needed
[2026-06-05 05:44:25,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:44:25,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:44:25,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:44:25,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:44:27,147.147 INFO    ] ================================================
[2026-06-05 05:44:27,162.162 INFO    ] Launching Daemon at Fri Jun  5 05:44:27 IST 2026
[2026-06-05 05:44:27,174.174 INFO    ] ================================================
[2026-06-05 05:44:27,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:44:27
[2026-06-05 05:44:28,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:44:28,618.618 INFO    ] Initializing speech engine...
[2026-06-05 05:44:28,626.626 INFO    ] 2026-06-05 05:44:28
[2026-06-05 05:44:28,887.887 INFO    ] 2026-06-05 05:44:28
[2026-06-05 05:44:28,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:44:29,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:44:29,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:44:29,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:44:29,362.362 INFO    ] time= 05/06/2026 05:44:29
[2026-06-05 05:44:29,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:44:29,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:44:29,569.569 INFO    ] No existing commands found in stream
[2026-06-05 05:44:34,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:44:34,600.600 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 05:44:35,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:44:35,056.056 INFO    ] Checking for system updates...
[2026-06-05 05:44:35,092.092 INFO    ] 200
[2026-06-05 05:44:35,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:44:35,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:44:35,149.149 INFO    ] No update needed
[2026-06-05 05:44:35,152.152 INFO    ] Checking for camera pi updates...
[2026-06-05 05:44:35,185.185 INFO    ] 200
[2026-06-05 05:44:35,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:44:35,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:44:35,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:44:35,278.278 INFO    ] No camera update needed
[2026-06-05 05:44:35,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:44:35,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:44:35,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:44:35,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:44:37,333.333 INFO    ] ================================================
[2026-06-05 05:44:37,349.349 INFO    ] Launching Daemon at Fri Jun  5 05:44:37 IST 2026
[2026-06-05 05:44:37,360.360 INFO    ] ================================================
[2026-06-05 05:44:38,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:44:38
[2026-06-05 05:44:38,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:44:39,029.029 INFO    ] Initializing speech engine...
[2026-06-05 05:44:39,042.042 INFO    ] 2026-06-05 05:44:39
[2026-06-05 05:44:39,318.318 INFO    ] 2026-06-05 05:44:39
[2026-06-05 05:44:39,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:44:39,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:44:39,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:44:39,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:44:39,847.847 INFO    ] time= 05/06/2026 05:44:39
[2026-06-05 05:44:39,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:44:39,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:44:40,025.025 INFO    ] No existing commands found in stream
[2026-06-05 05:44:45,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:44:45,059.059 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 05:44:49,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:44:49,133.133 INFO    ] Checking for system updates...
[2026-06-05 05:44:49,170.170 INFO    ] 200
[2026-06-05 05:44:49,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:44:49,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:44:49,228.228 INFO    ] No update needed
[2026-06-05 05:44:49,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 05:44:49,273.273 INFO    ] 200
[2026-06-05 05:44:49,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:44:49,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:44:49,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:44:49,366.366 INFO    ] No camera update needed
[2026-06-05 05:44:49,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:44:49,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:44:49,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:44:49,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:44:51,423.423 INFO    ] ================================================
[2026-06-05 05:44:51,439.439 INFO    ] Launching Daemon at Fri Jun  5 05:44:51 IST 2026
[2026-06-05 05:44:51,450.450 INFO    ] ================================================
[2026-06-05 05:44:52,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:44:52
[2026-06-05 05:44:52,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:44:52,858.858 INFO    ] Initializing speech engine...
[2026-06-05 05:44:52,872.872 INFO    ] 2026-06-05 05:44:52
[2026-06-05 05:44:53,138.138 INFO    ] 2026-06-05 05:44:53
[2026-06-05 05:44:53,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:44:53,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:44:53,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:44:53,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:44:53,522.522 INFO    ] time= 05/06/2026 05:44:53
[2026-06-05 05:44:53,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:44:53,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:44:53,686.686 INFO    ] No existing commands found in stream
[2026-06-05 05:44:58,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:44:58,720.720 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 05:44:59,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:44:59,870.870 INFO    ] Checking for system updates...
[2026-06-05 05:44:59,910.910 INFO    ] 200
[2026-06-05 05:44:59,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:44:59,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:44:59,967.967 INFO    ] No update needed
[2026-06-05 05:44:59,970.970 INFO    ] Checking for camera pi updates...
[2026-06-05 05:45:00,008.008 INFO    ] 200
[2026-06-05 05:45:00,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:00,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:45:00,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:45:00,096.096 INFO    ] No camera update needed
[2026-06-05 05:45:00,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:45:00,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:45:00,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:45:00,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:45:02,155.155 INFO    ] ================================================
[2026-06-05 05:45:02,176.176 INFO    ] Launching Daemon at Fri Jun  5 05:45:02 IST 2026
[2026-06-05 05:45:02,190.190 INFO    ] ================================================
[2026-06-05 05:45:02,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:45:02
[2026-06-05 05:45:03,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:45:03,874.874 INFO    ] Initializing speech engine...
[2026-06-05 05:45:03,883.883 INFO    ] 2026-06-05 05:45:03
[2026-06-05 05:45:04,143.143 INFO    ] 2026-06-05 05:45:04
[2026-06-05 05:45:04,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:45:04,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:45:04,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:45:04,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:45:04,602.602 INFO    ] time= 05/06/2026 05:45:04
[2026-06-05 05:45:04,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:45:04,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:45:04,772.772 INFO    ] No existing commands found in stream
[2026-06-05 05:45:09,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:45:09,799.799 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 05:45:12,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:45:12,285.285 INFO    ] Checking for system updates...
[2026-06-05 05:45:12,323.323 INFO    ] 200
[2026-06-05 05:45:12,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:12,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:45:12,382.382 INFO    ] No update needed
[2026-06-05 05:45:12,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 05:45:12,422.422 INFO    ] 200
[2026-06-05 05:45:12,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:12,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:45:12,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:45:12,610.610 INFO    ] No camera update needed
[2026-06-05 05:45:12,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:45:12,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:45:12,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:45:12,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:45:14,669.669 INFO    ] ================================================
[2026-06-05 05:45:14,686.686 INFO    ] Launching Daemon at Fri Jun  5 05:45:14 IST 2026
[2026-06-05 05:45:14,698.698 INFO    ] ================================================
[2026-06-05 05:45:15,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:45:15
[2026-06-05 05:45:15,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:45:16,166.166 INFO    ] Initializing speech engine...
[2026-06-05 05:45:16,177.177 INFO    ] 2026-06-05 05:45:16
[2026-06-05 05:45:16,439.439 INFO    ] 2026-06-05 05:45:16
[2026-06-05 05:45:16,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:45:16,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:45:16,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:45:16,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:45:16,840.840 INFO    ] time= 05/06/2026 05:45:16
[2026-06-05 05:45:16,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:45:16,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:45:16,930.930 INFO    ] No existing commands found in stream
[2026-06-05 05:45:21,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:45:21,947.947 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 05:45:23,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:45:23,610.610 INFO    ] Checking for system updates...
[2026-06-05 05:45:23,650.650 INFO    ] 200
[2026-06-05 05:45:23,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:23,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:45:23,715.715 INFO    ] No update needed
[2026-06-05 05:45:23,718.718 INFO    ] Checking for camera pi updates...
[2026-06-05 05:45:23,761.761 INFO    ] 200
[2026-06-05 05:45:23,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:23,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:45:23,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:45:23,860.860 INFO    ] No camera update needed
[2026-06-05 05:45:23,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:45:23,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:45:23,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:45:23,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:45:25,921.921 INFO    ] ================================================
[2026-06-05 05:45:25,937.937 INFO    ] Launching Daemon at Fri Jun  5 05:45:25 IST 2026
[2026-06-05 05:45:25,948.948 INFO    ] ================================================
[2026-06-05 05:45:26,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:45:26
[2026-06-05 05:45:27,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:45:27,364.364 INFO    ] Initializing speech engine...
[2026-06-05 05:45:27,383.383 INFO    ] 2026-06-05 05:45:27
[2026-06-05 05:45:27,635.635 INFO    ] 2026-06-05 05:45:27
[2026-06-05 05:45:27,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:45:27,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:45:27,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:45:27,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:45:27,990.990 INFO    ] time= 05/06/2026 05:45:27
[2026-06-05 05:45:28,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:45:28,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:45:28,090.090 INFO    ] No existing commands found in stream
[2026-06-05 05:45:33,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:45:33,129.129 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 05:45:34,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:45:34,602.602 INFO    ] Checking for system updates...
[2026-06-05 05:45:34,638.638 INFO    ] 200
[2026-06-05 05:45:34,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:34,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:45:34,695.695 INFO    ] No update needed
[2026-06-05 05:45:34,698.698 INFO    ] Checking for camera pi updates...
[2026-06-05 05:45:34,732.732 INFO    ] 200
[2026-06-05 05:45:34,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:34,774.774 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:45:34,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:45:34,818.818 INFO    ] No camera update needed
[2026-06-05 05:45:34,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:45:34,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:45:34,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:45:34,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:45:36,876.876 INFO    ] ================================================
[2026-06-05 05:45:36,892.892 INFO    ] Launching Daemon at Fri Jun  5 05:45:36 IST 2026
[2026-06-05 05:45:36,902.902 INFO    ] ================================================
[2026-06-05 05:45:37,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:45:37
[2026-06-05 05:45:38,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:45:38,327.327 INFO    ] Initializing speech engine...
[2026-06-05 05:45:38,336.336 INFO    ] 2026-06-05 05:45:38
[2026-06-05 05:45:38,585.585 INFO    ] 2026-06-05 05:45:38
[2026-06-05 05:45:38,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:45:38,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:45:38,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:45:39,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:45:39,034.034 INFO    ] time= 05/06/2026 05:45:39
[2026-06-05 05:45:39,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:45:39,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:45:39,212.212 INFO    ] No existing commands found in stream
[2026-06-05 05:45:44,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:45:44,227.227 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 05:45:45,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:45:45,150.150 INFO    ] Checking for system updates...
[2026-06-05 05:45:45,187.187 INFO    ] 200
[2026-06-05 05:45:45,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:45,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:45:45,250.250 INFO    ] No update needed
[2026-06-05 05:45:45,253.253 INFO    ] Checking for camera pi updates...
[2026-06-05 05:45:45,286.286 INFO    ] 200
[2026-06-05 05:45:45,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:45,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:45:45,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:45:45,386.386 INFO    ] No camera update needed
[2026-06-05 05:45:45,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:45:45,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:45:45,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:45:45,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:45:47,446.446 INFO    ] ================================================
[2026-06-05 05:45:47,461.461 INFO    ] Launching Daemon at Fri Jun  5 05:45:47 IST 2026
[2026-06-05 05:45:47,472.472 INFO    ] ================================================
[2026-06-05 05:45:48,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:45:48
[2026-06-05 05:45:48,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:45:49,122.122 INFO    ] Initializing speech engine...
[2026-06-05 05:45:49,127.127 INFO    ] 2026-06-05 05:45:49
[2026-06-05 05:45:49,408.408 INFO    ] 2026-06-05 05:45:49
[2026-06-05 05:45:49,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:45:49,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:45:49,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:45:49,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:45:49,913.913 INFO    ] time= 05/06/2026 05:45:49
[2026-06-05 05:45:49,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:45:49,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:45:50,108.108 INFO    ] No existing commands found in stream
[2026-06-05 05:45:55,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:45:55,142.142 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 05:45:59,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:45:59,517.517 INFO    ] Checking for system updates...
[2026-06-05 05:45:59,554.554 INFO    ] 200
[2026-06-05 05:45:59,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:59,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:45:59,621.621 INFO    ] No update needed
[2026-06-05 05:45:59,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 05:45:59,659.659 INFO    ] 200
[2026-06-05 05:45:59,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:45:59,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:45:59,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:45:59,740.740 INFO    ] No camera update needed
[2026-06-05 05:45:59,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:45:59,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:45:59,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:45:59,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:46:01,813.813 INFO    ] ================================================
[2026-06-05 05:46:01,844.844 INFO    ] Launching Daemon at Fri Jun  5 05:46:01 IST 2026
[2026-06-05 05:46:01,861.861 INFO    ] ================================================
[2026-06-05 05:46:02,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:46:02
[2026-06-05 05:46:03,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:46:03,613.613 INFO    ] Initializing speech engine...
[2026-06-05 05:46:03,624.624 INFO    ] 2026-06-05 05:46:03
[2026-06-05 05:46:03,895.895 INFO    ] 2026-06-05 05:46:03
[2026-06-05 05:46:03,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:46:04,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:46:04,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:46:04,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:46:04,366.366 INFO    ] time= 05/06/2026 05:46:04
[2026-06-05 05:46:04,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:46:04,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:46:04,522.522 INFO    ] No existing commands found in stream
[2026-06-05 05:46:09,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:46:09,538.538 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 05:46:10,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:46:10,451.451 INFO    ] Checking for system updates...
[2026-06-05 05:46:10,488.488 INFO    ] 200
[2026-06-05 05:46:10,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:10,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:46:10,547.547 INFO    ] No update needed
[2026-06-05 05:46:10,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 05:46:10,583.583 INFO    ] 200
[2026-06-05 05:46:10,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:10,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:46:10,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:46:10,677.677 INFO    ] No camera update needed
[2026-06-05 05:46:10,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:46:10,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:46:10,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:46:10,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:46:12,734.734 INFO    ] ================================================
[2026-06-05 05:46:12,749.749 INFO    ] Launching Daemon at Fri Jun  5 05:46:12 IST 2026
[2026-06-05 05:46:12,760.760 INFO    ] ================================================
[2026-06-05 05:46:13,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:46:13
[2026-06-05 05:46:13,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:46:14,169.169 INFO    ] Initializing speech engine...
[2026-06-05 05:46:14,183.183 INFO    ] 2026-06-05 05:46:14
[2026-06-05 05:46:14,451.451 INFO    ] 2026-06-05 05:46:14
[2026-06-05 05:46:14,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:46:14,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:46:14,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:46:14,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:46:14,830.830 INFO    ] time= 05/06/2026 05:46:14
[2026-06-05 05:46:14,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:46:14,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:46:14,977.977 INFO    ] No existing commands found in stream
[2026-06-05 05:46:20,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:46:20,005.005 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 05:46:20,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:46:20,983.983 INFO    ] Checking for system updates...
[2026-06-05 05:46:21,023.023 INFO    ] 200
[2026-06-05 05:46:21,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:21,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:46:21,087.087 INFO    ] No update needed
[2026-06-05 05:46:21,089.089 INFO    ] Checking for camera pi updates...
[2026-06-05 05:46:21,123.123 INFO    ] 200
[2026-06-05 05:46:21,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:21,166.166 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:46:21,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:46:21,213.213 INFO    ] No camera update needed
[2026-06-05 05:46:21,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:46:21,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:46:21,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:46:21,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:46:23,270.270 INFO    ] ================================================
[2026-06-05 05:46:23,285.285 INFO    ] Launching Daemon at Fri Jun  5 05:46:23 IST 2026
[2026-06-05 05:46:23,296.296 INFO    ] ================================================
[2026-06-05 05:46:23,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:46:23
[2026-06-05 05:46:24,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:46:24,829.829 INFO    ] Initializing speech engine...
[2026-06-05 05:46:24,840.840 INFO    ] 2026-06-05 05:46:24
[2026-06-05 05:46:25,115.115 INFO    ] 2026-06-05 05:46:25
[2026-06-05 05:46:25,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:46:25,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:46:25,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:46:25,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:46:25,610.610 INFO    ] time= 05/06/2026 05:46:25
[2026-06-05 05:46:25,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:46:25,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:46:25,796.796 INFO    ] No existing commands found in stream
[2026-06-05 05:46:30,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:46:30,830.830 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 05:46:31,433.433 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:46:31,436.436 INFO    ] Checking for system updates...
[2026-06-05 05:46:31,473.473 INFO    ] 200
[2026-06-05 05:46:31,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:31,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:46:31,541.541 INFO    ] No update needed
[2026-06-05 05:46:31,543.543 INFO    ] Checking for camera pi updates...
[2026-06-05 05:46:31,577.577 INFO    ] 200
[2026-06-05 05:46:31,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:31,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:46:31,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:46:31,658.658 INFO    ] No camera update needed
[2026-06-05 05:46:31,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:46:31,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:46:31,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:46:31,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:46:33,718.718 INFO    ] ================================================
[2026-06-05 05:46:33,734.734 INFO    ] Launching Daemon at Fri Jun  5 05:46:33 IST 2026
[2026-06-05 05:46:33,744.744 INFO    ] ================================================
[2026-06-05 05:46:34,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:46:34
[2026-06-05 05:46:35,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:46:35,327.327 INFO    ] Initializing speech engine...
[2026-06-05 05:46:35,339.339 INFO    ] 2026-06-05 05:46:35
[2026-06-05 05:46:35,648.648 INFO    ] 2026-06-05 05:46:35
[2026-06-05 05:46:35,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:46:35,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:46:35,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:46:36,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:46:36,156.156 INFO    ] time= 05/06/2026 05:46:36
[2026-06-05 05:46:36,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:46:36,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:46:36,312.312 INFO    ] No existing commands found in stream
[2026-06-05 05:46:41,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:46:41,336.336 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 05:46:43,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:46:43,474.474 INFO    ] Checking for system updates...
[2026-06-05 05:46:43,511.511 INFO    ] 200
[2026-06-05 05:46:43,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:43,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:46:43,588.588 INFO    ] No update needed
[2026-06-05 05:46:43,591.591 INFO    ] Checking for camera pi updates...
[2026-06-05 05:46:43,630.630 INFO    ] 200
[2026-06-05 05:46:43,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:43,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:46:43,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:46:43,730.730 INFO    ] No camera update needed
[2026-06-05 05:46:43,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:46:43,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:46:43,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:46:43,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:46:45,787.787 INFO    ] ================================================
[2026-06-05 05:46:45,801.801 INFO    ] Launching Daemon at Fri Jun  5 05:46:45 IST 2026
[2026-06-05 05:46:45,812.812 INFO    ] ================================================
[2026-06-05 05:46:46,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:46:46
[2026-06-05 05:46:46,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:46:47,271.271 INFO    ] Initializing speech engine...
[2026-06-05 05:46:47,281.281 INFO    ] 2026-06-05 05:46:47
[2026-06-05 05:46:47,529.529 INFO    ] 2026-06-05 05:46:47
[2026-06-05 05:46:47,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:46:47,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:46:47,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:46:47,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:46:48,001.001 INFO    ] time= 05/06/2026 05:46:47
[2026-06-05 05:46:48,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:46:48,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:46:48,149.149 INFO    ] No existing commands found in stream
[2026-06-05 05:46:53,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:46:53,164.164 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 05:46:57,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:46:57,373.373 INFO    ] Checking for system updates...
[2026-06-05 05:46:57,413.413 INFO    ] 200
[2026-06-05 05:46:57,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:57,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:46:57,476.476 INFO    ] No update needed
[2026-06-05 05:46:57,479.479 INFO    ] Checking for camera pi updates...
[2026-06-05 05:46:57,513.513 INFO    ] 200
[2026-06-05 05:46:57,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:46:57,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:46:57,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:46:57,616.616 INFO    ] No camera update needed
[2026-06-05 05:46:57,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:46:57,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:46:57,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:46:57,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:46:59,670.670 INFO    ] ================================================
[2026-06-05 05:46:59,686.686 INFO    ] Launching Daemon at Fri Jun  5 05:46:59 IST 2026
[2026-06-05 05:46:59,696.696 INFO    ] ================================================
[2026-06-05 05:47:00,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:47:00
[2026-06-05 05:47:00,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:47:01,204.204 INFO    ] Initializing speech engine...
[2026-06-05 05:47:01,214.214 INFO    ] 2026-06-05 05:47:01
[2026-06-05 05:47:01,482.482 INFO    ] 2026-06-05 05:47:01
[2026-06-05 05:47:01,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:47:01,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:47:01,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:47:01,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:47:01,985.985 INFO    ] time= 05/06/2026 05:47:01
[2026-06-05 05:47:02,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:47:02,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:47:02,133.133 INFO    ] No existing commands found in stream
[2026-06-05 05:47:07,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:47:07,174.174 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 05:47:10,850.850 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:47:10,853.853 INFO    ] Checking for system updates...
[2026-06-05 05:47:10,889.889 INFO    ] 200
[2026-06-05 05:47:10,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:10,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:47:10,947.947 INFO    ] No update needed
[2026-06-05 05:47:10,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 05:47:10,985.985 INFO    ] 200
[2026-06-05 05:47:10,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:11,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:47:11,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:47:11,075.075 INFO    ] No camera update needed
[2026-06-05 05:47:11,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:47:11,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:47:11,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:47:11,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:47:13,130.130 INFO    ] ================================================
[2026-06-05 05:47:13,145.145 INFO    ] Launching Daemon at Fri Jun  5 05:47:13 IST 2026
[2026-06-05 05:47:13,157.157 INFO    ] ================================================
[2026-06-05 05:47:13,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:47:13
[2026-06-05 05:47:14,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:47:14,647.647 INFO    ] Initializing speech engine...
[2026-06-05 05:47:14,656.656 INFO    ] 2026-06-05 05:47:14
[2026-06-05 05:47:14,947.947 INFO    ] 2026-06-05 05:47:14
[2026-06-05 05:47:14,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:47:15,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:47:15,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:47:15,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:47:15,432.432 INFO    ] time= 05/06/2026 05:47:15
[2026-06-05 05:47:15,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:47:15,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:47:15,635.635 INFO    ] No existing commands found in stream
[2026-06-05 05:47:20,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:47:20,666.666 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 05:47:23,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:47:23,226.226 INFO    ] Checking for system updates...
[2026-06-05 05:47:23,267.267 INFO    ] 200
[2026-06-05 05:47:23,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:23,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:47:23,326.326 INFO    ] No update needed
[2026-06-05 05:47:23,328.328 INFO    ] Checking for camera pi updates...
[2026-06-05 05:47:23,366.366 INFO    ] 200
[2026-06-05 05:47:23,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:23,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:47:23,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:47:23,561.561 INFO    ] No camera update needed
[2026-06-05 05:47:23,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:47:23,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:47:23,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:47:23,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:47:25,620.620 INFO    ] ================================================
[2026-06-05 05:47:25,635.635 INFO    ] Launching Daemon at Fri Jun  5 05:47:25 IST 2026
[2026-06-05 05:47:25,647.647 INFO    ] ================================================
[2026-06-05 05:47:26,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:47:26
[2026-06-05 05:47:26,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:47:27,063.063 INFO    ] Initializing speech engine...
[2026-06-05 05:47:27,072.072 INFO    ] 2026-06-05 05:47:27
[2026-06-05 05:47:27,361.361 INFO    ] 2026-06-05 05:47:27
[2026-06-05 05:47:27,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:47:27,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:47:27,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:47:27,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:47:27,774.774 INFO    ] time= 05/06/2026 05:47:27
[2026-06-05 05:47:27,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:47:27,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:47:27,859.859 INFO    ] No existing commands found in stream
[2026-06-05 05:47:32,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:47:32,870.870 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 05:47:35,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:47:35,982.982 INFO    ] Checking for system updates...
[2026-06-05 05:47:36,021.021 INFO    ] 200
[2026-06-05 05:47:36,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:36,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:47:36,085.085 INFO    ] No update needed
[2026-06-05 05:47:36,087.087 INFO    ] Checking for camera pi updates...
[2026-06-05 05:47:36,122.122 INFO    ] 200
[2026-06-05 05:47:36,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:36,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:47:36,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:47:36,193.193 INFO    ] No camera update needed
[2026-06-05 05:47:36,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:47:36,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:47:36,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:47:36,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:47:38,248.248 INFO    ] ================================================
[2026-06-05 05:47:38,263.263 INFO    ] Launching Daemon at Fri Jun  5 05:47:38 IST 2026
[2026-06-05 05:47:38,274.274 INFO    ] ================================================
[2026-06-05 05:47:38,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:47:38
[2026-06-05 05:47:39,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:47:39,725.725 INFO    ] Initializing speech engine...
[2026-06-05 05:47:39,736.736 INFO    ] 2026-06-05 05:47:39
[2026-06-05 05:47:39,996.996 INFO    ] 2026-06-05 05:47:39
[2026-06-05 05:47:40,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:47:40,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:47:40,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:47:40,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:47:40,456.456 INFO    ] time= 05/06/2026 05:47:40
[2026-06-05 05:47:40,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:47:40,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:47:40,606.606 INFO    ] No existing commands found in stream
[2026-06-05 05:47:45,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:47:45,629.629 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 05:47:46,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:47:46,378.378 INFO    ] Checking for system updates...
[2026-06-05 05:47:46,414.414 INFO    ] 200
[2026-06-05 05:47:46,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:46,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:47:46,472.472 INFO    ] No update needed
[2026-06-05 05:47:46,474.474 INFO    ] Checking for camera pi updates...
[2026-06-05 05:47:46,509.509 INFO    ] 200
[2026-06-05 05:47:46,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:46,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:47:46,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:47:46,600.600 INFO    ] No camera update needed
[2026-06-05 05:47:46,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:47:46,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:47:46,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:47:46,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:47:48,656.656 INFO    ] ================================================
[2026-06-05 05:47:48,673.673 INFO    ] Launching Daemon at Fri Jun  5 05:47:48 IST 2026
[2026-06-05 05:47:48,686.686 INFO    ] ================================================
[2026-06-05 05:47:49,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:47:49
[2026-06-05 05:47:49,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:47:50,284.284 INFO    ] Initializing speech engine...
[2026-06-05 05:47:50,293.293 INFO    ] 2026-06-05 05:47:50
[2026-06-05 05:47:50,554.554 INFO    ] 2026-06-05 05:47:50
[2026-06-05 05:47:50,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:47:50,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:47:50,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:47:51,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:47:51,008.008 INFO    ] time= 05/06/2026 05:47:51
[2026-06-05 05:47:51,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:47:51,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:47:51,206.206 INFO    ] No existing commands found in stream
[2026-06-05 05:47:56,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:47:56,220.220 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 05:47:57,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:47:57,799.799 INFO    ] Checking for system updates...
[2026-06-05 05:47:57,835.835 INFO    ] 200
[2026-06-05 05:47:57,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:57,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:47:57,892.892 INFO    ] No update needed
[2026-06-05 05:47:57,894.894 INFO    ] Checking for camera pi updates...
[2026-06-05 05:47:57,931.931 INFO    ] 200
[2026-06-05 05:47:57,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:47:57,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:47:58,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:47:58,017.017 INFO    ] No camera update needed
[2026-06-05 05:47:58,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:47:58,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:47:58,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:47:58,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:48:00,072.072 INFO    ] ================================================
[2026-06-05 05:48:00,088.088 INFO    ] Launching Daemon at Fri Jun  5 05:48:00 IST 2026
[2026-06-05 05:48:00,099.099 INFO    ] ================================================
[2026-06-05 05:48:00,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:48:00
[2026-06-05 05:48:01,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:48:01,573.573 INFO    ] Initializing speech engine...
[2026-06-05 05:48:01,587.587 INFO    ] 2026-06-05 05:48:01
[2026-06-05 05:48:02,020.020 INFO    ] 2026-06-05 05:48:02
[2026-06-05 05:48:02,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:48:02,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:48:02,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:48:02,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:48:02,540.540 INFO    ] time= 05/06/2026 05:48:02
[2026-06-05 05:48:02,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:48:02,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:48:02,756.756 INFO    ] No existing commands found in stream
[2026-06-05 05:48:07,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:48:07,794.794 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 05:48:10,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:48:10,098.098 INFO    ] Checking for system updates...
[2026-06-05 05:48:10,135.135 INFO    ] 200
[2026-06-05 05:48:10,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:10,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:10,198.198 INFO    ] No update needed
[2026-06-05 05:48:10,200.200 INFO    ] Checking for camera pi updates...
[2026-06-05 05:48:10,234.234 INFO    ] 200
[2026-06-05 05:48:10,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:10,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:48:10,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:10,325.325 INFO    ] No camera update needed
[2026-06-05 05:48:10,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:48:10,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:48:10,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:48:10,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:48:12,380.380 INFO    ] ================================================
[2026-06-05 05:48:12,395.395 INFO    ] Launching Daemon at Fri Jun  5 05:48:12 IST 2026
[2026-06-05 05:48:12,405.405 INFO    ] ================================================
[2026-06-05 05:48:12,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:48:12
[2026-06-05 05:48:13,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:48:13,869.869 INFO    ] Initializing speech engine...
[2026-06-05 05:48:13,878.878 INFO    ] 2026-06-05 05:48:13
[2026-06-05 05:48:14,142.142 INFO    ] 2026-06-05 05:48:14
[2026-06-05 05:48:14,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:48:14,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:48:14,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:48:14,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:48:14,622.622 INFO    ] time= 05/06/2026 05:48:14
[2026-06-05 05:48:14,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:48:14,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:48:14,820.820 INFO    ] No existing commands found in stream
[2026-06-05 05:48:19,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:48:19,835.835 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 05:48:23,061.061 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:48:23,064.064 INFO    ] Checking for system updates...
[2026-06-05 05:48:23,100.100 INFO    ] 200
[2026-06-05 05:48:23,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:23,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:23,165.165 INFO    ] No update needed
[2026-06-05 05:48:23,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 05:48:23,201.201 INFO    ] 200
[2026-06-05 05:48:23,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:23,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:48:23,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:23,287.287 INFO    ] No camera update needed
[2026-06-05 05:48:23,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:48:23,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:48:23,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:48:23,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:48:25,343.343 INFO    ] ================================================
[2026-06-05 05:48:25,358.358 INFO    ] Launching Daemon at Fri Jun  5 05:48:25 IST 2026
[2026-06-05 05:48:25,369.369 INFO    ] ================================================
[2026-06-05 05:48:25,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:48:25
[2026-06-05 05:48:26,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:48:26,897.897 INFO    ] Initializing speech engine...
[2026-06-05 05:48:26,906.906 INFO    ] 2026-06-05 05:48:26
[2026-06-05 05:48:27,177.177 INFO    ] 2026-06-05 05:48:27
[2026-06-05 05:48:27,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:48:27,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:48:27,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:48:27,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:48:27,678.678 INFO    ] time= 05/06/2026 05:48:27
[2026-06-05 05:48:27,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:48:27,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:48:27,869.869 INFO    ] No existing commands found in stream
[2026-06-05 05:48:32,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:48:32,899.899 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 05:48:33,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:48:33,900.900 INFO    ] Checking for system updates...
[2026-06-05 05:48:33,937.937 INFO    ] 200
[2026-06-05 05:48:33,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:33,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:33,997.997 INFO    ] No update needed
[2026-06-05 05:48:33,999.999 INFO    ] Checking for camera pi updates...
[2026-06-05 05:48:34,033.033 INFO    ] 200
[2026-06-05 05:48:34,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:34,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:48:34,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:34,126.126 INFO    ] No camera update needed
[2026-06-05 05:48:34,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:48:34,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:48:34,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:48:34,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:48:36,183.183 INFO    ] ================================================
[2026-06-05 05:48:36,198.198 INFO    ] Launching Daemon at Fri Jun  5 05:48:36 IST 2026
[2026-06-05 05:48:36,209.209 INFO    ] ================================================
[2026-06-05 05:48:36,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:48:36
[2026-06-05 05:48:37,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:48:37,766.766 INFO    ] Initializing speech engine...
[2026-06-05 05:48:37,774.774 INFO    ] 2026-06-05 05:48:37
[2026-06-05 05:48:38,045.045 INFO    ] 2026-06-05 05:48:38
[2026-06-05 05:48:38,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:48:38,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:48:38,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:48:38,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:48:38,566.566 INFO    ] time= 05/06/2026 05:48:38
[2026-06-05 05:48:38,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:48:38,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:48:38,735.735 INFO    ] No existing commands found in stream
[2026-06-05 05:48:43,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:48:43,769.769 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 05:48:47,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:48:47,087.087 INFO    ] Checking for system updates...
[2026-06-05 05:48:47,127.127 INFO    ] 200
[2026-06-05 05:48:47,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:47,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:47,185.185 INFO    ] No update needed
[2026-06-05 05:48:47,188.188 INFO    ] Checking for camera pi updates...
[2026-06-05 05:48:47,225.225 INFO    ] 200
[2026-06-05 05:48:47,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:47,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:48:47,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:47,315.315 INFO    ] No camera update needed
[2026-06-05 05:48:47,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:48:47,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:48:47,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:48:47,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:48:49,374.374 INFO    ] ================================================
[2026-06-05 05:48:49,389.389 INFO    ] Launching Daemon at Fri Jun  5 05:48:49 IST 2026
[2026-06-05 05:48:49,400.400 INFO    ] ================================================
[2026-06-05 05:48:49,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:48:49
[2026-06-05 05:48:50,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:48:50,873.873 INFO    ] Initializing speech engine...
[2026-06-05 05:48:50,881.881 INFO    ] 2026-06-05 05:48:50
[2026-06-05 05:48:51,133.133 INFO    ] 2026-06-05 05:48:51
[2026-06-05 05:48:51,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:48:51,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:48:51,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:48:51,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:48:51,609.609 INFO    ] time= 05/06/2026 05:48:51
[2026-06-05 05:48:51,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:48:51,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:48:51,750.750 INFO    ] No existing commands found in stream
[2026-06-05 05:48:56,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:48:56,765.765 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 05:48:58,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:48:58,146.146 INFO    ] Checking for system updates...
[2026-06-05 05:48:58,185.185 INFO    ] 200
[2026-06-05 05:48:58,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:58,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:58,242.242 INFO    ] No update needed
[2026-06-05 05:48:58,244.244 INFO    ] Checking for camera pi updates...
[2026-06-05 05:48:58,281.281 INFO    ] 200
[2026-06-05 05:48:58,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:48:58,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:48:58,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:48:58,371.371 INFO    ] No camera update needed
[2026-06-05 05:48:58,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:48:58,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:48:58,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:48:58,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:49:00,427.427 INFO    ] ================================================
[2026-06-05 05:49:00,442.442 INFO    ] Launching Daemon at Fri Jun  5 05:49:00 IST 2026
[2026-06-05 05:49:00,453.453 INFO    ] ================================================
[2026-06-05 05:49:01,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:49:01
[2026-06-05 05:49:01,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:49:02,125.125 INFO    ] Initializing speech engine...
[2026-06-05 05:49:02,129.129 INFO    ] 2026-06-05 05:49:02
[2026-06-05 05:49:02,591.591 INFO    ] 2026-06-05 05:49:02
[2026-06-05 05:49:02,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:49:02,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:49:02,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:49:03,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:49:03,074.074 INFO    ] time= 05/06/2026 05:49:03
[2026-06-05 05:49:03,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:49:03,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:49:03,226.226 INFO    ] No existing commands found in stream
[2026-06-05 05:49:08,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:49:08,251.251 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 05:49:09,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:49:09,133.133 INFO    ] Checking for system updates...
[2026-06-05 05:49:09,169.169 INFO    ] 200
[2026-06-05 05:49:09,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:09,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:49:09,227.227 INFO    ] No update needed
[2026-06-05 05:49:09,229.229 INFO    ] Checking for camera pi updates...
[2026-06-05 05:49:09,263.263 INFO    ] 200
[2026-06-05 05:49:09,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:09,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:49:09,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:49:09,357.357 INFO    ] No camera update needed
[2026-06-05 05:49:09,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:49:09,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:49:09,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:49:09,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:49:11,413.413 INFO    ] ================================================
[2026-06-05 05:49:11,428.428 INFO    ] Launching Daemon at Fri Jun  5 05:49:11 IST 2026
[2026-06-05 05:49:11,439.439 INFO    ] ================================================
[2026-06-05 05:49:12,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:49:12
[2026-06-05 05:49:12,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:49:12,902.902 INFO    ] Initializing speech engine...
[2026-06-05 05:49:12,907.907 INFO    ] 2026-06-05 05:49:12
[2026-06-05 05:49:13,174.174 INFO    ] 2026-06-05 05:49:13
[2026-06-05 05:49:13,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:49:13,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:49:13,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:49:13,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:49:13,641.641 INFO    ] time= 05/06/2026 05:49:13
[2026-06-05 05:49:13,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:49:13,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:49:13,786.786 INFO    ] No existing commands found in stream
[2026-06-05 05:49:18,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:49:18,801.801 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 05:49:19,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:49:19,788.788 INFO    ] Checking for system updates...
[2026-06-05 05:49:19,831.831 INFO    ] 200
[2026-06-05 05:49:19,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:19,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:49:19,896.896 INFO    ] No update needed
[2026-06-05 05:49:19,899.899 INFO    ] Checking for camera pi updates...
[2026-06-05 05:49:19,935.935 INFO    ] 200
[2026-06-05 05:49:19,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:19,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:49:20,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:49:20,033.033 INFO    ] No camera update needed
[2026-06-05 05:49:20,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:49:20,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:49:20,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:49:20,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:49:22,092.092 INFO    ] ================================================
[2026-06-05 05:49:22,109.109 INFO    ] Launching Daemon at Fri Jun  5 05:49:22 IST 2026
[2026-06-05 05:49:22,120.120 INFO    ] ================================================
[2026-06-05 05:49:22,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:49:22
[2026-06-05 05:49:23,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:49:23,587.587 INFO    ] Initializing speech engine...
[2026-06-05 05:49:23,596.596 INFO    ] 2026-06-05 05:49:23
[2026-06-05 05:49:23,878.878 INFO    ] 2026-06-05 05:49:23
[2026-06-05 05:49:23,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:49:24,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:49:24,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:49:24,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:49:24,254.254 INFO    ] time= 05/06/2026 05:49:24
[2026-06-05 05:49:24,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:49:24,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:49:24,407.407 INFO    ] No existing commands found in stream
[2026-06-05 05:49:29,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:49:29,440.440 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 05:49:31,191.191 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:49:31,194.194 INFO    ] Checking for system updates...
[2026-06-05 05:49:31,230.230 INFO    ] 200
[2026-06-05 05:49:31,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:31,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:49:31,293.293 INFO    ] No update needed
[2026-06-05 05:49:31,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 05:49:31,334.334 INFO    ] 200
[2026-06-05 05:49:31,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:31,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:49:31,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:49:31,523.523 INFO    ] No camera update needed
[2026-06-05 05:49:31,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:49:31,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:49:31,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:49:31,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:49:33,581.581 INFO    ] ================================================
[2026-06-05 05:49:33,596.596 INFO    ] Launching Daemon at Fri Jun  5 05:49:33 IST 2026
[2026-06-05 05:49:33,607.607 INFO    ] ================================================
[2026-06-05 05:49:34,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:49:34
[2026-06-05 05:49:34,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:49:35,224.224 INFO    ] Initializing speech engine...
[2026-06-05 05:49:35,238.238 INFO    ] 2026-06-05 05:49:35
[2026-06-05 05:49:35,520.520 INFO    ] 2026-06-05 05:49:35
[2026-06-05 05:49:35,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:49:35,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:49:35,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:49:35,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:49:35,984.984 INFO    ] time= 05/06/2026 05:49:35
[2026-06-05 05:49:36,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:49:36,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:49:36,206.206 INFO    ] No existing commands found in stream
[2026-06-05 05:49:41,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:49:41,243.243 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 05:49:42,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:49:42,759.759 INFO    ] Checking for system updates...
[2026-06-05 05:49:42,796.796 INFO    ] 200
[2026-06-05 05:49:42,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:42,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:49:42,853.853 INFO    ] No update needed
[2026-06-05 05:49:42,856.856 INFO    ] Checking for camera pi updates...
[2026-06-05 05:49:42,889.889 INFO    ] 200
[2026-06-05 05:49:42,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:42,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:49:42,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:49:42,975.975 INFO    ] No camera update needed
[2026-06-05 05:49:42,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:49:42,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:49:42,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:49:42,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:49:45,030.030 INFO    ] ================================================
[2026-06-05 05:49:45,045.045 INFO    ] Launching Daemon at Fri Jun  5 05:49:45 IST 2026
[2026-06-05 05:49:45,056.056 INFO    ] ================================================
[2026-06-05 05:49:45,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:49:45
[2026-06-05 05:49:46,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:49:46,664.664 INFO    ] Initializing speech engine...
[2026-06-05 05:49:46,679.679 INFO    ] 2026-06-05 05:49:46
[2026-06-05 05:49:46,968.968 INFO    ] 2026-06-05 05:49:46
[2026-06-05 05:49:47,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:49:47,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:49:47,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:49:47,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:49:47,510.510 INFO    ] time= 05/06/2026 05:49:47
[2026-06-05 05:49:47,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:49:47,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:49:47,651.651 INFO    ] No existing commands found in stream
[2026-06-05 05:49:52,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:49:52,680.680 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 05:49:55,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:49:55,896.896 INFO    ] Checking for system updates...
[2026-06-05 05:49:55,933.933 INFO    ] 200
[2026-06-05 05:49:55,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:55,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:49:55,992.992 INFO    ] No update needed
[2026-06-05 05:49:55,995.995 INFO    ] Checking for camera pi updates...
[2026-06-05 05:49:56,030.030 INFO    ] 200
[2026-06-05 05:49:56,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:49:56,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:49:56,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:49:56,120.120 INFO    ] No camera update needed
[2026-06-05 05:49:56,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:49:56,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:49:56,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:49:56,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:49:58,176.176 INFO    ] ================================================
[2026-06-05 05:49:58,192.192 INFO    ] Launching Daemon at Fri Jun  5 05:49:58 IST 2026
[2026-06-05 05:49:58,203.203 INFO    ] ================================================
[2026-06-05 05:49:58,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:49:58
[2026-06-05 05:49:59,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:49:59,623.623 INFO    ] Initializing speech engine...
[2026-06-05 05:49:59,631.631 INFO    ] 2026-06-05 05:49:59
[2026-06-05 05:49:59,876.876 INFO    ] 2026-06-05 05:49:59
[2026-06-05 05:49:59,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:50:00,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:50:00,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:50:00,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:50:00,352.352 INFO    ] time= 05/06/2026 05:50:00
[2026-06-05 05:50:00,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:50:00,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:50:00,496.496 INFO    ] No existing commands found in stream
[2026-06-05 05:50:05,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:50:05,511.511 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 05:50:08,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:50:09,002.002 INFO    ] Checking for system updates...
[2026-06-05 05:50:09,038.038 INFO    ] 200
[2026-06-05 05:50:09,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:09,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:50:09,096.096 INFO    ] No update needed
[2026-06-05 05:50:09,099.099 INFO    ] Checking for camera pi updates...
[2026-06-05 05:50:09,135.135 INFO    ] 200
[2026-06-05 05:50:09,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:09,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:50:09,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:50:09,224.224 INFO    ] No camera update needed
[2026-06-05 05:50:09,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:50:09,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:50:09,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:50:09,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:50:11,281.281 INFO    ] ================================================
[2026-06-05 05:50:11,296.296 INFO    ] Launching Daemon at Fri Jun  5 05:50:11 IST 2026
[2026-06-05 05:50:11,308.308 INFO    ] ================================================
[2026-06-05 05:50:11,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:50:11
[2026-06-05 05:50:12,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:50:12,702.702 INFO    ] Initializing speech engine...
[2026-06-05 05:50:12,711.711 INFO    ] 2026-06-05 05:50:12
[2026-06-05 05:50:12,985.985 INFO    ] 2026-06-05 05:50:12
[2026-06-05 05:50:13,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:50:13,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:50:13,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:50:13,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:50:13,450.450 INFO    ] time= 05/06/2026 05:50:13
[2026-06-05 05:50:13,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:50:13,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:50:13,615.615 INFO    ] No existing commands found in stream
[2026-06-05 05:50:18,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:50:18,630.630 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 05:50:21,410.410 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:50:21,412.412 INFO    ] Checking for system updates...
[2026-06-05 05:50:21,448.448 INFO    ] 200
[2026-06-05 05:50:21,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:21,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:50:21,506.506 INFO    ] No update needed
[2026-06-05 05:50:21,508.508 INFO    ] Checking for camera pi updates...
[2026-06-05 05:50:21,545.545 INFO    ] 200
[2026-06-05 05:50:21,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:21,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:50:21,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:50:21,645.645 INFO    ] No camera update needed
[2026-06-05 05:50:21,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:50:21,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:50:21,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:50:21,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:50:23,700.700 INFO    ] ================================================
[2026-06-05 05:50:23,716.716 INFO    ] Launching Daemon at Fri Jun  5 05:50:23 IST 2026
[2026-06-05 05:50:23,726.726 INFO    ] ================================================
[2026-06-05 05:50:24,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:50:24
[2026-06-05 05:50:24,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:50:25,197.197 INFO    ] Initializing speech engine...
[2026-06-05 05:50:25,205.205 INFO    ] 2026-06-05 05:50:25
[2026-06-05 05:50:25,478.478 INFO    ] 2026-06-05 05:50:25
[2026-06-05 05:50:25,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:50:25,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:50:25,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:50:25,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:50:25,858.858 INFO    ] time= 05/06/2026 05:50:25
[2026-06-05 05:50:25,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:50:25,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:50:26,022.022 INFO    ] No existing commands found in stream
[2026-06-05 05:50:31,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:50:31,050.050 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 05:50:31,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:50:31,993.993 INFO    ] Checking for system updates...
[2026-06-05 05:50:32,037.037 INFO    ] 200
[2026-06-05 05:50:32,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:32,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:50:32,107.107 INFO    ] No update needed
[2026-06-05 05:50:32,110.110 INFO    ] Checking for camera pi updates...
[2026-06-05 05:50:32,147.147 INFO    ] 200
[2026-06-05 05:50:32,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:32,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:50:32,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:50:32,229.229 INFO    ] No camera update needed
[2026-06-05 05:50:32,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:50:32,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:50:32,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:50:32,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:50:34,289.289 INFO    ] ================================================
[2026-06-05 05:50:34,304.304 INFO    ] Launching Daemon at Fri Jun  5 05:50:34 IST 2026
[2026-06-05 05:50:34,315.315 INFO    ] ================================================
[2026-06-05 05:50:34,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:50:34
[2026-06-05 05:50:35,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:50:35,720.720 INFO    ] Initializing speech engine...
[2026-06-05 05:50:35,729.729 INFO    ] 2026-06-05 05:50:35
[2026-06-05 05:50:36,020.020 INFO    ] 2026-06-05 05:50:35
[2026-06-05 05:50:36,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:50:36,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:50:36,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:50:36,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:50:36,391.391 INFO    ] time= 05/06/2026 05:50:36
[2026-06-05 05:50:36,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:50:36,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:50:36,514.514 INFO    ] No existing commands found in stream
[2026-06-05 05:50:41,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:50:41,528.528 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 05:50:42,970.970 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:50:42,972.972 INFO    ] Checking for system updates...
[2026-06-05 05:50:43,013.013 INFO    ] 200
[2026-06-05 05:50:43,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:43,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:50:43,072.072 INFO    ] No update needed
[2026-06-05 05:50:43,074.074 INFO    ] Checking for camera pi updates...
[2026-06-05 05:50:43,110.110 INFO    ] 200
[2026-06-05 05:50:43,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:43,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:50:43,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:50:43,200.200 INFO    ] No camera update needed
[2026-06-05 05:50:43,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:50:43,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:50:43,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:50:43,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:50:45,254.254 INFO    ] ================================================
[2026-06-05 05:50:45,270.270 INFO    ] Launching Daemon at Fri Jun  5 05:50:45 IST 2026
[2026-06-05 05:50:45,281.281 INFO    ] ================================================
[2026-06-05 05:50:45,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:50:45
[2026-06-05 05:50:46,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:50:46,682.682 INFO    ] Initializing speech engine...
[2026-06-05 05:50:46,688.688 INFO    ] 2026-06-05 05:50:46
[2026-06-05 05:50:46,978.978 INFO    ] 2026-06-05 05:50:46
[2026-06-05 05:50:47,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:50:47,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:50:47,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:50:47,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:50:47,389.389 INFO    ] time= 05/06/2026 05:50:47
[2026-06-05 05:50:47,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:50:47,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:50:47,474.474 INFO    ] No existing commands found in stream
[2026-06-05 05:50:52,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:50:52,508.508 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 05:50:53,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:50:53,037.037 INFO    ] Checking for system updates...
[2026-06-05 05:50:53,073.073 INFO    ] 200
[2026-06-05 05:50:53,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:53,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:50:53,136.136 INFO    ] No update needed
[2026-06-05 05:50:53,139.139 INFO    ] Checking for camera pi updates...
[2026-06-05 05:50:53,175.175 INFO    ] 200
[2026-06-05 05:50:53,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:50:53,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:50:53,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:50:53,262.262 INFO    ] No camera update needed
[2026-06-05 05:50:53,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:50:53,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:50:53,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:50:53,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:50:55,318.318 INFO    ] ================================================
[2026-06-05 05:50:55,333.333 INFO    ] Launching Daemon at Fri Jun  5 05:50:55 IST 2026
[2026-06-05 05:50:55,344.344 INFO    ] ================================================
[2026-06-05 05:50:55,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:50:55
[2026-06-05 05:50:56,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:50:56,936.936 INFO    ] Initializing speech engine...
[2026-06-05 05:50:56,949.949 INFO    ] 2026-06-05 05:50:56
[2026-06-05 05:50:57,228.228 INFO    ] 2026-06-05 05:50:57
[2026-06-05 05:50:57,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:50:57,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:50:57,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:50:57,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:50:57,673.673 INFO    ] time= 05/06/2026 05:50:57
[2026-06-05 05:50:57,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:50:57,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:50:57,826.826 INFO    ] No existing commands found in stream
[2026-06-05 05:51:02,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:51:02,841.841 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 05:51:04,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:51:04,445.445 INFO    ] Checking for system updates...
[2026-06-05 05:51:04,482.482 INFO    ] 200
[2026-06-05 05:51:04,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:04,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:51:04,546.546 INFO    ] No update needed
[2026-06-05 05:51:04,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 05:51:04,582.582 INFO    ] 200
[2026-06-05 05:51:04,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:04,625.625 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:51:04,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:51:04,660.660 INFO    ] No camera update needed
[2026-06-05 05:51:04,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:51:04,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:51:04,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:51:04,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:51:06,718.718 INFO    ] ================================================
[2026-06-05 05:51:06,734.734 INFO    ] Launching Daemon at Fri Jun  5 05:51:06 IST 2026
[2026-06-05 05:51:06,745.745 INFO    ] ================================================
[2026-06-05 05:51:07,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:51:07
[2026-06-05 05:51:08,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:51:08,359.359 INFO    ] Initializing speech engine...
[2026-06-05 05:51:08,364.364 INFO    ] 2026-06-05 05:51:08
[2026-06-05 05:51:08,653.653 INFO    ] 2026-06-05 05:51:08
[2026-06-05 05:51:08,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:51:08,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:51:08,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:51:09,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:51:09,113.113 INFO    ] time= 05/06/2026 05:51:09
[2026-06-05 05:51:09,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:51:09,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:51:09,259.259 INFO    ] No existing commands found in stream
[2026-06-05 05:51:14,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:51:14,276.276 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 05:51:17,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:51:17,131.131 INFO    ] Checking for system updates...
[2026-06-05 05:51:17,173.173 INFO    ] 200
[2026-06-05 05:51:17,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:17,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:51:17,242.242 INFO    ] No update needed
[2026-06-05 05:51:17,244.244 INFO    ] Checking for camera pi updates...
[2026-06-05 05:51:17,282.282 INFO    ] 200
[2026-06-05 05:51:17,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:17,325.325 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:51:17,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:51:17,369.369 INFO    ] No camera update needed
[2026-06-05 05:51:17,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:51:17,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:51:17,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:51:17,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:51:19,423.423 INFO    ] ================================================
[2026-06-05 05:51:19,438.438 INFO    ] Launching Daemon at Fri Jun  5 05:51:19 IST 2026
[2026-06-05 05:51:19,449.449 INFO    ] ================================================
[2026-06-05 05:51:20,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:51:20
[2026-06-05 05:51:20,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:51:20,880.880 INFO    ] Initializing speech engine...
[2026-06-05 05:51:20,887.887 INFO    ] 2026-06-05 05:51:20
[2026-06-05 05:51:21,134.134 INFO    ] 2026-06-05 05:51:21
[2026-06-05 05:51:21,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:51:21,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:51:21,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:51:21,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:51:21,577.577 INFO    ] time= 05/06/2026 05:51:21
[2026-06-05 05:51:21,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:51:21,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:51:21,716.716 INFO    ] No existing commands found in stream
[2026-06-05 05:51:26,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:51:26,741.741 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 05:51:29,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:51:29,839.839 INFO    ] Checking for system updates...
[2026-06-05 05:51:29,878.878 INFO    ] 200
[2026-06-05 05:51:29,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:29,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:51:29,936.936 INFO    ] No update needed
[2026-06-05 05:51:29,939.939 INFO    ] Checking for camera pi updates...
[2026-06-05 05:51:29,976.976 INFO    ] 200
[2026-06-05 05:51:29,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:30,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:51:30,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:51:30,073.073 INFO    ] No camera update needed
[2026-06-05 05:51:30,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:51:30,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:51:30,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:51:30,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:51:32,131.131 INFO    ] ================================================
[2026-06-05 05:51:32,148.148 INFO    ] Launching Daemon at Fri Jun  5 05:51:32 IST 2026
[2026-06-05 05:51:32,160.160 INFO    ] ================================================
[2026-06-05 05:51:32,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:51:32
[2026-06-05 05:51:33,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:51:33,665.665 INFO    ] Initializing speech engine...
[2026-06-05 05:51:33,674.674 INFO    ] 2026-06-05 05:51:33
[2026-06-05 05:51:33,937.937 INFO    ] 2026-06-05 05:51:33
[2026-06-05 05:51:33,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:51:34,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:51:34,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:51:34,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:51:34,386.386 INFO    ] time= 05/06/2026 05:51:34
[2026-06-05 05:51:34,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:51:34,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:51:34,545.545 INFO    ] No existing commands found in stream
[2026-06-05 05:51:39,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:51:39,560.560 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 05:51:40,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:51:40,939.939 INFO    ] Checking for system updates...
[2026-06-05 05:51:40,977.977 INFO    ] 200
[2026-06-05 05:51:40,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:41,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:51:41,046.046 INFO    ] No update needed
[2026-06-05 05:51:41,048.048 INFO    ] Checking for camera pi updates...
[2026-06-05 05:51:41,086.086 INFO    ] 200
[2026-06-05 05:51:41,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:41,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:51:41,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:51:41,276.276 INFO    ] No camera update needed
[2026-06-05 05:51:41,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:51:41,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:51:41,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:51:41,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:51:43,334.334 INFO    ] ================================================
[2026-06-05 05:51:43,350.350 INFO    ] Launching Daemon at Fri Jun  5 05:51:43 IST 2026
[2026-06-05 05:51:43,361.361 INFO    ] ================================================
[2026-06-05 05:51:43,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:51:43
[2026-06-05 05:51:44,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:51:44,825.825 INFO    ] Initializing speech engine...
[2026-06-05 05:51:44,832.832 INFO    ] 2026-06-05 05:51:44
[2026-06-05 05:51:45,090.090 INFO    ] 2026-06-05 05:51:45
[2026-06-05 05:51:45,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:51:45,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:51:45,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:51:45,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:51:45,549.549 INFO    ] time= 05/06/2026 05:51:45
[2026-06-05 05:51:45,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:51:45,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:51:45,705.705 INFO    ] No existing commands found in stream
[2026-06-05 05:51:50,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:51:50,720.720 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 05:51:52,960.960 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:51:52,963.963 INFO    ] Checking for system updates...
[2026-06-05 05:51:53,000.000 INFO    ] 200
[2026-06-05 05:51:53,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:53,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:51:53,069.069 INFO    ] No update needed
[2026-06-05 05:51:53,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 05:51:53,108.108 INFO    ] 200
[2026-06-05 05:51:53,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:51:53,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:51:53,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:51:53,206.206 INFO    ] No camera update needed
[2026-06-05 05:51:53,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:51:53,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:51:53,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:51:53,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:51:55,263.263 INFO    ] ================================================
[2026-06-05 05:51:55,278.278 INFO    ] Launching Daemon at Fri Jun  5 05:51:55 IST 2026
[2026-06-05 05:51:55,289.289 INFO    ] ================================================
[2026-06-05 05:51:55,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:51:55
[2026-06-05 05:51:56,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:51:56,788.788 INFO    ] Initializing speech engine...
[2026-06-05 05:51:56,797.797 INFO    ] 2026-06-05 05:51:56
[2026-06-05 05:51:57,041.041 INFO    ] 2026-06-05 05:51:57
[2026-06-05 05:51:57,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:51:57,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:51:57,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:51:57,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:51:57,475.475 INFO    ] time= 05/06/2026 05:51:57
[2026-06-05 05:51:57,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:51:57,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:51:57,657.657 INFO    ] No existing commands found in stream
[2026-06-05 05:52:02,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:52:02,673.673 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 05:52:04,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:52:04,462.462 INFO    ] Checking for system updates...
[2026-06-05 05:52:04,502.502 INFO    ] 200
[2026-06-05 05:52:04,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:04,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:52:04,568.568 INFO    ] No update needed
[2026-06-05 05:52:04,570.570 INFO    ] Checking for camera pi updates...
[2026-06-05 05:52:04,605.605 INFO    ] 200
[2026-06-05 05:52:04,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:04,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:52:04,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:52:04,680.680 INFO    ] No camera update needed
[2026-06-05 05:52:04,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:52:04,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:52:04,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:52:04,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:52:06,737.737 INFO    ] ================================================
[2026-06-05 05:52:06,753.753 INFO    ] Launching Daemon at Fri Jun  5 05:52:06 IST 2026
[2026-06-05 05:52:06,763.763 INFO    ] ================================================
[2026-06-05 05:52:07,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:52:07
[2026-06-05 05:52:07,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:52:08,241.241 INFO    ] Initializing speech engine...
[2026-06-05 05:52:08,249.249 INFO    ] 2026-06-05 05:52:08
[2026-06-05 05:52:08,509.509 INFO    ] 2026-06-05 05:52:08
[2026-06-05 05:52:08,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:52:08,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:52:08,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:52:08,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:52:08,973.973 INFO    ] time= 05/06/2026 05:52:08
[2026-06-05 05:52:09,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:52:09,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:52:09,116.116 INFO    ] No existing commands found in stream
[2026-06-05 05:52:14,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:52:14,130.130 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 05:52:16,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:52:16,986.986 INFO    ] Checking for system updates...
[2026-06-05 05:52:17,027.027 INFO    ] 200
[2026-06-05 05:52:17,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:17,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:52:17,093.093 INFO    ] No update needed
[2026-06-05 05:52:17,095.095 INFO    ] Checking for camera pi updates...
[2026-06-05 05:52:17,129.129 INFO    ] 200
[2026-06-05 05:52:17,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:17,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:52:17,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:52:17,218.218 INFO    ] No camera update needed
[2026-06-05 05:52:17,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:52:17,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:52:17,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:52:17,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:52:19,272.272 INFO    ] ================================================
[2026-06-05 05:52:19,288.288 INFO    ] Launching Daemon at Fri Jun  5 05:52:19 IST 2026
[2026-06-05 05:52:19,299.299 INFO    ] ================================================
[2026-06-05 05:52:19,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:52:19
[2026-06-05 05:52:20,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:52:20,980.980 INFO    ] Initializing speech engine...
[2026-06-05 05:52:20,989.989 INFO    ] 2026-06-05 05:52:20
[2026-06-05 05:52:21,276.276 INFO    ] 2026-06-05 05:52:21
[2026-06-05 05:52:21,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:52:21,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:52:21,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:52:21,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:52:21,824.824 INFO    ] time= 05/06/2026 05:52:21
[2026-06-05 05:52:21,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:52:21,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:52:21,981.981 INFO    ] No existing commands found in stream
[2026-06-05 05:52:26,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:52:26,997.997 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 05:52:28,748.748 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:52:28,751.751 INFO    ] Checking for system updates...
[2026-06-05 05:52:28,800.800 INFO    ] 200
[2026-06-05 05:52:28,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:28,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:52:28,894.894 INFO    ] No update needed
[2026-06-05 05:52:28,897.897 INFO    ] Checking for camera pi updates...
[2026-06-05 05:52:28,939.939 INFO    ] 200
[2026-06-05 05:52:28,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:28,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:52:29,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:52:29,031.031 INFO    ] No camera update needed
[2026-06-05 05:52:29,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:52:29,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:52:29,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:52:29,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:52:31,088.088 INFO    ] ================================================
[2026-06-05 05:52:31,104.104 INFO    ] Launching Daemon at Fri Jun  5 05:52:31 IST 2026
[2026-06-05 05:52:31,117.117 INFO    ] ================================================
[2026-06-05 05:52:31,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:52:31
[2026-06-05 05:52:32,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:52:32,591.591 INFO    ] Initializing speech engine...
[2026-06-05 05:52:32,601.601 INFO    ] 2026-06-05 05:52:32
[2026-06-05 05:52:32,869.869 INFO    ] 2026-06-05 05:52:32
[2026-06-05 05:52:32,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:52:33,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:52:33,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:52:33,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:52:33,251.251 INFO    ] time= 05/06/2026 05:52:33
[2026-06-05 05:52:33,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:52:33,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:52:33,415.415 INFO    ] No existing commands found in stream
[2026-06-05 05:52:38,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:52:38,450.450 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 05:52:41,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:52:41,559.559 INFO    ] Checking for system updates...
[2026-06-05 05:52:41,601.601 INFO    ] 200
[2026-06-05 05:52:41,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:41,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:52:41,672.672 INFO    ] No update needed
[2026-06-05 05:52:41,674.674 INFO    ] Checking for camera pi updates...
[2026-06-05 05:52:41,713.713 INFO    ] 200
[2026-06-05 05:52:41,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:41,758.758 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:52:41,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:52:41,800.800 INFO    ] No camera update needed
[2026-06-05 05:52:41,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:52:41,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:52:41,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:52:41,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:52:43,857.857 INFO    ] ================================================
[2026-06-05 05:52:43,872.872 INFO    ] Launching Daemon at Fri Jun  5 05:52:43 IST 2026
[2026-06-05 05:52:43,884.884 INFO    ] ================================================
[2026-06-05 05:52:44,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:52:44
[2026-06-05 05:52:45,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:52:45,331.331 INFO    ] Initializing speech engine...
[2026-06-05 05:52:45,340.340 INFO    ] 2026-06-05 05:52:45
[2026-06-05 05:52:45,587.587 INFO    ] 2026-06-05 05:52:45
[2026-06-05 05:52:45,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:52:45,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:52:45,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:52:45,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:52:45,979.979 INFO    ] time= 05/06/2026 05:52:45
[2026-06-05 05:52:46,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:52:46,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:52:46,111.111 INFO    ] No existing commands found in stream
[2026-06-05 05:52:51,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:52:51,126.126 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 05:52:53,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:52:53,426.426 INFO    ] Checking for system updates...
[2026-06-05 05:52:53,468.468 INFO    ] 200
[2026-06-05 05:52:53,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:53,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:52:53,534.534 INFO    ] No update needed
[2026-06-05 05:52:53,537.537 INFO    ] Checking for camera pi updates...
[2026-06-05 05:52:53,576.576 INFO    ] 200
[2026-06-05 05:52:53,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:52:53,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:52:53,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:52:53,674.674 INFO    ] No camera update needed
[2026-06-05 05:52:53,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:52:53,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:52:53,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:52:53,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:52:55,729.729 INFO    ] ================================================
[2026-06-05 05:52:55,745.745 INFO    ] Launching Daemon at Fri Jun  5 05:52:55 IST 2026
[2026-06-05 05:52:55,756.756 INFO    ] ================================================
[2026-06-05 05:52:56,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:52:56
[2026-06-05 05:52:57,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:52:57,380.380 INFO    ] Initializing speech engine...
[2026-06-05 05:52:57,393.393 INFO    ] 2026-06-05 05:52:57
[2026-06-05 05:52:57,687.687 INFO    ] 2026-06-05 05:52:57
[2026-06-05 05:52:57,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:52:58,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:52:58,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:52:58,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:52:58,235.235 INFO    ] time= 05/06/2026 05:52:58
[2026-06-05 05:52:58,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:52:58,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:52:58,395.395 INFO    ] No existing commands found in stream
[2026-06-05 05:53:03,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:53:03,434.434 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 05:53:05,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:53:05,781.781 INFO    ] Checking for system updates...
[2026-06-05 05:53:05,826.826 INFO    ] 200
[2026-06-05 05:53:05,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:05,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:53:05,899.899 INFO    ] No update needed
[2026-06-05 05:53:05,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 05:53:05,940.940 INFO    ] 200
[2026-06-05 05:53:05,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:05,983.983 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:53:06,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:53:06,034.034 INFO    ] No camera update needed
[2026-06-05 05:53:06,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:53:06,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:53:06,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:53:06,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:53:08,090.090 INFO    ] ================================================
[2026-06-05 05:53:08,106.106 INFO    ] Launching Daemon at Fri Jun  5 05:53:08 IST 2026
[2026-06-05 05:53:08,117.117 INFO    ] ================================================
[2026-06-05 05:53:08,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:53:08
[2026-06-05 05:53:09,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:53:09,560.560 INFO    ] Initializing speech engine...
[2026-06-05 05:53:09,572.572 INFO    ] 2026-06-05 05:53:09
[2026-06-05 05:53:09,824.824 INFO    ] 2026-06-05 05:53:09
[2026-06-05 05:53:09,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:53:10,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:53:10,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:53:10,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:53:10,273.273 INFO    ] time= 05/06/2026 05:53:10
[2026-06-05 05:53:10,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:53:10,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:53:10,429.429 INFO    ] No existing commands found in stream
[2026-06-05 05:53:15,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:53:15,444.444 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 05:53:16,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:53:16,818.818 INFO    ] Checking for system updates...
[2026-06-05 05:53:16,859.859 INFO    ] 200
[2026-06-05 05:53:16,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:16,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:53:16,932.932 INFO    ] No update needed
[2026-06-05 05:53:16,935.935 INFO    ] Checking for camera pi updates...
[2026-06-05 05:53:16,973.973 INFO    ] 200
[2026-06-05 05:53:16,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:17,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:53:17,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:53:17,059.059 INFO    ] No camera update needed
[2026-06-05 05:53:17,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:53:17,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:53:17,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:53:17,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:53:19,118.118 INFO    ] ================================================
[2026-06-05 05:53:19,133.133 INFO    ] Launching Daemon at Fri Jun  5 05:53:19 IST 2026
[2026-06-05 05:53:19,144.144 INFO    ] ================================================
[2026-06-05 05:53:19,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:53:19
[2026-06-05 05:53:20,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:53:20,758.758 INFO    ] Initializing speech engine...
[2026-06-05 05:53:20,769.769 INFO    ] 2026-06-05 05:53:20
[2026-06-05 05:53:21,055.055 INFO    ] 2026-06-05 05:53:21
[2026-06-05 05:53:21,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:53:21,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:53:21,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:53:21,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:53:21,545.545 INFO    ] time= 05/06/2026 05:53:21
[2026-06-05 05:53:21,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:53:21,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:53:21,736.736 INFO    ] No existing commands found in stream
[2026-06-05 05:53:26,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:53:26,763.763 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 05:53:28,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:53:28,974.974 INFO    ] Checking for system updates...
[2026-06-05 05:53:29,018.018 INFO    ] 200
[2026-06-05 05:53:29,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:29,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:53:29,092.092 INFO    ] No update needed
[2026-06-05 05:53:29,095.095 INFO    ] Checking for camera pi updates...
[2026-06-05 05:53:29,153.153 INFO    ] 200
[2026-06-05 05:53:29,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:29,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:53:29,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:53:29,246.246 INFO    ] No camera update needed
[2026-06-05 05:53:29,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:53:29,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:53:29,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:53:29,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:53:31,303.303 INFO    ] ================================================
[2026-06-05 05:53:31,320.320 INFO    ] Launching Daemon at Fri Jun  5 05:53:31 IST 2026
[2026-06-05 05:53:31,338.338 INFO    ] ================================================
[2026-06-05 05:53:31,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:53:31
[2026-06-05 05:53:32,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:53:32,899.899 INFO    ] Initializing speech engine...
[2026-06-05 05:53:32,910.910 INFO    ] 2026-06-05 05:53:32
[2026-06-05 05:53:33,196.196 INFO    ] 2026-06-05 05:53:33
[2026-06-05 05:53:33,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:53:33,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:53:33,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:53:33,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:53:33,729.729 INFO    ] time= 05/06/2026 05:53:33
[2026-06-05 05:53:33,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:53:33,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:53:33,884.884 INFO    ] No existing commands found in stream
[2026-06-05 05:53:38,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:53:38,908.908 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 05:53:42,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:53:42,836.836 INFO    ] Checking for system updates...
[2026-06-05 05:53:42,872.872 INFO    ] 200
[2026-06-05 05:53:42,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:42,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:53:42,931.931 INFO    ] No update needed
[2026-06-05 05:53:42,934.934 INFO    ] Checking for camera pi updates...
[2026-06-05 05:53:42,973.973 INFO    ] 200
[2026-06-05 05:53:42,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:43,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:53:43,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:53:43,166.166 INFO    ] No camera update needed
[2026-06-05 05:53:43,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:53:43,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:53:43,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:53:43,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:53:45,226.226 INFO    ] ================================================
[2026-06-05 05:53:45,242.242 INFO    ] Launching Daemon at Fri Jun  5 05:53:45 IST 2026
[2026-06-05 05:53:45,252.252 INFO    ] ================================================
[2026-06-05 05:53:45,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:53:45
[2026-06-05 05:53:46,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:53:46,699.699 INFO    ] Initializing speech engine...
[2026-06-05 05:53:46,708.708 INFO    ] 2026-06-05 05:53:46
[2026-06-05 05:53:47,006.006 INFO    ] 2026-06-05 05:53:46
[2026-06-05 05:53:47,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:53:47,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:53:47,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:53:47,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:53:47,394.394 INFO    ] time= 05/06/2026 05:53:47
[2026-06-05 05:53:47,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:53:47,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:53:47,520.520 INFO    ] No existing commands found in stream
[2026-06-05 05:53:52,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:53:52,536.536 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 05:53:56,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:53:56,748.748 INFO    ] Checking for system updates...
[2026-06-05 05:53:56,788.788 INFO    ] 200
[2026-06-05 05:53:56,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:56,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:53:56,854.854 INFO    ] No update needed
[2026-06-05 05:53:56,856.856 INFO    ] Checking for camera pi updates...
[2026-06-05 05:53:56,894.894 INFO    ] 200
[2026-06-05 05:53:56,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:53:56,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:53:56,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:53:56,988.988 INFO    ] No camera update needed
[2026-06-05 05:53:56,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:53:56,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:53:56,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:53:57,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:53:59,044.044 INFO    ] ================================================
[2026-06-05 05:53:59,059.059 INFO    ] Launching Daemon at Fri Jun  5 05:53:59 IST 2026
[2026-06-05 05:53:59,070.070 INFO    ] ================================================
[2026-06-05 05:53:59,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:53:59
[2026-06-05 05:54:00,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:54:00,485.485 INFO    ] Initializing speech engine...
[2026-06-05 05:54:00,492.492 INFO    ] 2026-06-05 05:54:00
[2026-06-05 05:54:00,795.795 INFO    ] 2026-06-05 05:54:00
[2026-06-05 05:54:00,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:54:01,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:54:01,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:54:01,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:54:01,187.187 INFO    ] time= 05/06/2026 05:54:01
[2026-06-05 05:54:01,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:54:01,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:54:01,315.315 INFO    ] No existing commands found in stream
[2026-06-05 05:54:06,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:54:06,330.330 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 05:54:08,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:54:08,323.323 INFO    ] Checking for system updates...
[2026-06-05 05:54:08,361.361 INFO    ] 200
[2026-06-05 05:54:08,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:08,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:54:08,422.422 INFO    ] No update needed
[2026-06-05 05:54:08,425.425 INFO    ] Checking for camera pi updates...
[2026-06-05 05:54:08,463.463 INFO    ] 200
[2026-06-05 05:54:08,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:08,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:54:08,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:54:08,558.558 INFO    ] No camera update needed
[2026-06-05 05:54:08,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:54:08,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:54:08,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:54:08,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:54:10,614.614 INFO    ] ================================================
[2026-06-05 05:54:10,630.630 INFO    ] Launching Daemon at Fri Jun  5 05:54:10 IST 2026
[2026-06-05 05:54:10,641.641 INFO    ] ================================================
[2026-06-05 05:54:11,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:54:11
[2026-06-05 05:54:11,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:54:12,069.069 INFO    ] Initializing speech engine...
[2026-06-05 05:54:12,079.079 INFO    ] 2026-06-05 05:54:12
[2026-06-05 05:54:12,331.331 INFO    ] 2026-06-05 05:54:12
[2026-06-05 05:54:12,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:54:12,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:54:12,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:54:12,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:54:12,804.804 INFO    ] time= 05/06/2026 05:54:12
[2026-06-05 05:54:12,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:54:12,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:54:12,964.964 INFO    ] No existing commands found in stream
[2026-06-05 05:54:17,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:54:17,975.975 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 05:54:19,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:54:19,024.024 INFO    ] Checking for system updates...
[2026-06-05 05:54:19,066.066 INFO    ] 200
[2026-06-05 05:54:19,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:19,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:54:19,131.131 INFO    ] No update needed
[2026-06-05 05:54:19,133.133 INFO    ] Checking for camera pi updates...
[2026-06-05 05:54:19,170.170 INFO    ] 200
[2026-06-05 05:54:19,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:19,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:54:19,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:54:19,271.271 INFO    ] No camera update needed
[2026-06-05 05:54:19,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:54:19,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:54:19,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:54:19,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:54:21,328.328 INFO    ] ================================================
[2026-06-05 05:54:21,343.343 INFO    ] Launching Daemon at Fri Jun  5 05:54:21 IST 2026
[2026-06-05 05:54:21,354.354 INFO    ] ================================================
[2026-06-05 05:54:21,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:54:21
[2026-06-05 05:54:22,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:54:22,973.973 INFO    ] Initializing speech engine...
[2026-06-05 05:54:22,987.987 INFO    ] 2026-06-05 05:54:22
[2026-06-05 05:54:23,270.270 INFO    ] 2026-06-05 05:54:23
[2026-06-05 05:54:23,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:54:23,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:54:23,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:54:23,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:54:23,762.762 INFO    ] time= 05/06/2026 05:54:23
[2026-06-05 05:54:23,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:54:23,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:54:23,945.945 INFO    ] No existing commands found in stream
[2026-06-05 05:54:28,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:54:28,985.985 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 05:54:30,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:54:30,335.335 INFO    ] Checking for system updates...
[2026-06-05 05:54:30,372.372 INFO    ] 200
[2026-06-05 05:54:30,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:30,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:54:30,432.432 INFO    ] No update needed
[2026-06-05 05:54:30,434.434 INFO    ] Checking for camera pi updates...
[2026-06-05 05:54:30,468.468 INFO    ] 200
[2026-06-05 05:54:30,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:30,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:54:30,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:54:30,555.555 INFO    ] No camera update needed
[2026-06-05 05:54:30,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:54:30,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:54:30,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:54:30,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:54:32,612.612 INFO    ] ================================================
[2026-06-05 05:54:32,630.630 INFO    ] Launching Daemon at Fri Jun  5 05:54:32 IST 2026
[2026-06-05 05:54:32,643.643 INFO    ] ================================================
[2026-06-05 05:54:33,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:54:33
[2026-06-05 05:54:33,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:54:34,147.147 INFO    ] Initializing speech engine...
[2026-06-05 05:54:34,157.157 INFO    ] 2026-06-05 05:54:34
[2026-06-05 05:54:34,413.413 INFO    ] 2026-06-05 05:54:34
[2026-06-05 05:54:34,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:54:34,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:54:34,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:54:34,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:54:34,877.877 INFO    ] time= 05/06/2026 05:54:34
[2026-06-05 05:54:34,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:54:34,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:54:35,032.032 INFO    ] No existing commands found in stream
[2026-06-05 05:54:40,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:54:40,047.047 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 05:54:41,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:54:41,667.667 INFO    ] Checking for system updates...
[2026-06-05 05:54:41,704.704 INFO    ] 200
[2026-06-05 05:54:41,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:41,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:54:41,769.769 INFO    ] No update needed
[2026-06-05 05:54:41,772.772 INFO    ] Checking for camera pi updates...
[2026-06-05 05:54:41,806.806 INFO    ] 200
[2026-06-05 05:54:41,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:41,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:54:41,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:54:41,900.900 INFO    ] No camera update needed
[2026-06-05 05:54:41,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:54:41,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:54:41,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:54:41,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:54:43,960.960 INFO    ] ================================================
[2026-06-05 05:54:43,976.976 INFO    ] Launching Daemon at Fri Jun  5 05:54:43 IST 2026
[2026-06-05 05:54:43,987.987 INFO    ] ================================================
[2026-06-05 05:54:44,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:54:44
[2026-06-05 05:54:45,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:54:45,637.637 INFO    ] Initializing speech engine...
[2026-06-05 05:54:45,644.644 INFO    ] 2026-06-05 05:54:45
[2026-06-05 05:54:45,932.932 INFO    ] 2026-06-05 05:54:45
[2026-06-05 05:54:45,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:54:46,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:54:46,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:54:46,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:54:46,415.415 INFO    ] time= 05/06/2026 05:54:46
[2026-06-05 05:54:46,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:54:46,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:54:46,607.607 INFO    ] No existing commands found in stream
[2026-06-05 05:54:51,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:54:51,639.639 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 05:54:55,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:54:55,973.973 INFO    ] Checking for system updates...
[2026-06-05 05:54:56,016.016 INFO    ] 200
[2026-06-05 05:54:56,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:56,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:54:56,090.090 INFO    ] No update needed
[2026-06-05 05:54:56,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 05:54:56,133.133 INFO    ] 200
[2026-06-05 05:54:56,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:54:56,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:54:56,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:54:56,237.237 INFO    ] No camera update needed
[2026-06-05 05:54:56,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:54:56,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:54:56,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:54:56,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:54:58,297.297 INFO    ] ================================================
[2026-06-05 05:54:58,312.312 INFO    ] Launching Daemon at Fri Jun  5 05:54:58 IST 2026
[2026-06-05 05:54:58,323.323 INFO    ] ================================================
[2026-06-05 05:54:58,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:54:58
[2026-06-05 05:54:59,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:54:59,745.745 INFO    ] Initializing speech engine...
[2026-06-05 05:54:59,754.754 INFO    ] 2026-06-05 05:54:59
[2026-06-05 05:55:00,003.003 INFO    ] 2026-06-05 05:54:59
[2026-06-05 05:55:00,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:55:00,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:55:00,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:55:00,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:55:00,463.463 INFO    ] time= 05/06/2026 05:55:00
[2026-06-05 05:55:00,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:55:00,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:55:00,631.631 INFO    ] No existing commands found in stream
[2026-06-05 05:55:05,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:55:05,646.646 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 05:55:07,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:55:07,194.194 INFO    ] Checking for system updates...
[2026-06-05 05:55:07,233.233 INFO    ] 200
[2026-06-05 05:55:07,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:07,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:55:07,296.296 INFO    ] No update needed
[2026-06-05 05:55:07,298.298 INFO    ] Checking for camera pi updates...
[2026-06-05 05:55:07,332.332 INFO    ] 200
[2026-06-05 05:55:07,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:07,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:55:07,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:55:07,422.422 INFO    ] No camera update needed
[2026-06-05 05:55:07,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:55:07,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:55:07,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:55:07,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:55:09,481.481 INFO    ] ================================================
[2026-06-05 05:55:09,497.497 INFO    ] Launching Daemon at Fri Jun  5 05:55:09 IST 2026
[2026-06-05 05:55:09,509.509 INFO    ] ================================================
[2026-06-05 05:55:10,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:55:10
[2026-06-05 05:55:10,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:55:10,974.974 INFO    ] Initializing speech engine...
[2026-06-05 05:55:10,980.980 INFO    ] 2026-06-05 05:55:10
[2026-06-05 05:55:11,241.241 INFO    ] 2026-06-05 05:55:11
[2026-06-05 05:55:11,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:55:11,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:55:11,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:55:11,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:55:11,705.705 INFO    ] time= 05/06/2026 05:55:11
[2026-06-05 05:55:11,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:55:11,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:55:11,851.851 INFO    ] No existing commands found in stream
[2026-06-05 05:55:16,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:55:16,874.874 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 05:55:18,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:55:18,848.848 INFO    ] Checking for system updates...
[2026-06-05 05:55:18,889.889 INFO    ] 200
[2026-06-05 05:55:18,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:18,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:55:18,957.957 INFO    ] No update needed
[2026-06-05 05:55:18,959.959 INFO    ] Checking for camera pi updates...
[2026-06-05 05:55:18,993.993 INFO    ] 200
[2026-06-05 05:55:18,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:19,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:55:19,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:55:19,089.089 INFO    ] No camera update needed
[2026-06-05 05:55:19,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:55:19,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:55:19,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:55:19,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:55:21,144.144 INFO    ] ================================================
[2026-06-05 05:55:21,159.159 INFO    ] Launching Daemon at Fri Jun  5 05:55:21 IST 2026
[2026-06-05 05:55:21,171.171 INFO    ] ================================================
[2026-06-05 05:55:21,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:55:21
[2026-06-05 05:55:22,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:55:22,620.620 INFO    ] Initializing speech engine...
[2026-06-05 05:55:22,627.627 INFO    ] 2026-06-05 05:55:22
[2026-06-05 05:55:22,887.887 INFO    ] 2026-06-05 05:55:22
[2026-06-05 05:55:22,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:55:23,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:55:23,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:55:23,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:55:23,371.371 INFO    ] time= 05/06/2026 05:55:23
[2026-06-05 05:55:23,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:55:23,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:55:23,560.560 INFO    ] No existing commands found in stream
[2026-06-05 05:55:28,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:55:28,593.593 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 05:55:30,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:55:30,681.681 INFO    ] Checking for system updates...
[2026-06-05 05:55:30,719.719 INFO    ] 200
[2026-06-05 05:55:30,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:30,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:55:30,777.777 INFO    ] No update needed
[2026-06-05 05:55:30,780.780 INFO    ] Checking for camera pi updates...
[2026-06-05 05:55:30,813.813 INFO    ] 200
[2026-06-05 05:55:30,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:30,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:55:30,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:55:30,908.908 INFO    ] No camera update needed
[2026-06-05 05:55:30,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:55:30,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:55:30,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:55:30,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:55:32,966.966 INFO    ] ================================================
[2026-06-05 05:55:32,981.981 INFO    ] Launching Daemon at Fri Jun  5 05:55:32 IST 2026
[2026-06-05 05:55:32,993.993 INFO    ] ================================================
[2026-06-05 05:55:33,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:55:33
[2026-06-05 05:55:34,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:55:34,420.420 INFO    ] Initializing speech engine...
[2026-06-05 05:55:34,429.429 INFO    ] 2026-06-05 05:55:34
[2026-06-05 05:55:34,716.716 INFO    ] 2026-06-05 05:55:34
[2026-06-05 05:55:34,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:55:34,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:55:34,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:55:35,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:55:35,076.076 INFO    ] time= 05/06/2026 05:55:35
[2026-06-05 05:55:35,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:55:35,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:55:35,184.184 INFO    ] No existing commands found in stream
[2026-06-05 05:55:40,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:55:40,212.212 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 05:55:44,054.054 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:55:44,057.057 INFO    ] Checking for system updates...
[2026-06-05 05:55:44,092.092 INFO    ] 200
[2026-06-05 05:55:44,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:44,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:55:44,154.154 INFO    ] No update needed
[2026-06-05 05:55:44,157.157 INFO    ] Checking for camera pi updates...
[2026-06-05 05:55:44,193.193 INFO    ] 200
[2026-06-05 05:55:44,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:44,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:55:44,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:55:44,288.288 INFO    ] No camera update needed
[2026-06-05 05:55:44,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:55:44,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:55:44,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:55:44,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:55:46,343.343 INFO    ] ================================================
[2026-06-05 05:55:46,358.358 INFO    ] Launching Daemon at Fri Jun  5 05:55:46 IST 2026
[2026-06-05 05:55:46,369.369 INFO    ] ================================================
[2026-06-05 05:55:46,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:55:46
[2026-06-05 05:55:47,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:55:47,881.881 INFO    ] Initializing speech engine...
[2026-06-05 05:55:47,889.889 INFO    ] 2026-06-05 05:55:47
[2026-06-05 05:55:48,155.155 INFO    ] 2026-06-05 05:55:48
[2026-06-05 05:55:48,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:55:48,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:55:48,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:55:48,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:55:48,688.688 INFO    ] time= 05/06/2026 05:55:48
[2026-06-05 05:55:48,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:55:48,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:55:48,841.841 INFO    ] No existing commands found in stream
[2026-06-05 05:55:53,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:55:53,869.869 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 05:55:55,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:55:55,305.305 INFO    ] Checking for system updates...
[2026-06-05 05:55:55,346.346 INFO    ] 200
[2026-06-05 05:55:55,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:55,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:55:55,411.411 INFO    ] No update needed
[2026-06-05 05:55:55,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 05:55:55,450.450 INFO    ] 200
[2026-06-05 05:55:55,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:55:55,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:55:55,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:55:55,641.641 INFO    ] No camera update needed
[2026-06-05 05:55:55,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:55:55,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:55:55,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:55:55,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:55:57,696.696 INFO    ] ================================================
[2026-06-05 05:55:57,712.712 INFO    ] Launching Daemon at Fri Jun  5 05:55:57 IST 2026
[2026-06-05 05:55:57,723.723 INFO    ] ================================================
[2026-06-05 05:55:58,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:55:58
[2026-06-05 05:55:58,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:55:59,283.283 INFO    ] Initializing speech engine...
[2026-06-05 05:55:59,297.297 INFO    ] 2026-06-05 05:55:59
[2026-06-05 05:55:59,572.572 INFO    ] 2026-06-05 05:55:59
[2026-06-05 05:55:59,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:55:59,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:55:59,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:55:59,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:56:00,057.057 INFO    ] time= 05/06/2026 05:55:59
[2026-06-05 05:56:00,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:56:00,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:56:00,237.237 INFO    ] No existing commands found in stream
[2026-06-05 05:56:05,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:56:05,271.271 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 05:56:06,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:56:06,926.926 INFO    ] Checking for system updates...
[2026-06-05 05:56:06,967.967 INFO    ] 200
[2026-06-05 05:56:06,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:07,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:56:07,030.030 INFO    ] No update needed
[2026-06-05 05:56:07,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 05:56:07,067.067 INFO    ] 200
[2026-06-05 05:56:07,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:07,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:56:07,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:56:07,168.168 INFO    ] No camera update needed
[2026-06-05 05:56:07,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:56:07,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:56:07,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:56:07,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:56:09,224.224 INFO    ] ================================================
[2026-06-05 05:56:09,240.240 INFO    ] Launching Daemon at Fri Jun  5 05:56:09 IST 2026
[2026-06-05 05:56:09,250.250 INFO    ] ================================================
[2026-06-05 05:56:09,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:56:09
[2026-06-05 05:56:10,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:56:10,836.836 INFO    ] Initializing speech engine...
[2026-06-05 05:56:10,844.844 INFO    ] 2026-06-05 05:56:10
[2026-06-05 05:56:11,111.111 INFO    ] 2026-06-05 05:56:11
[2026-06-05 05:56:11,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:56:11,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:56:11,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:56:11,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:56:11,589.589 INFO    ] time= 05/06/2026 05:56:11
[2026-06-05 05:56:11,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:56:11,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:56:11,741.741 INFO    ] No existing commands found in stream
[2026-06-05 05:56:16,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:56:16,757.757 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 05:56:19,584.584 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:56:19,587.587 INFO    ] Checking for system updates...
[2026-06-05 05:56:19,627.627 INFO    ] 200
[2026-06-05 05:56:19,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:19,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:56:19,690.690 INFO    ] No update needed
[2026-06-05 05:56:19,692.692 INFO    ] Checking for camera pi updates...
[2026-06-05 05:56:19,728.728 INFO    ] 200
[2026-06-05 05:56:19,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:19,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:56:19,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:56:19,819.819 INFO    ] No camera update needed
[2026-06-05 05:56:19,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:56:19,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:56:19,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:56:19,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:56:21,876.876 INFO    ] ================================================
[2026-06-05 05:56:21,891.891 INFO    ] Launching Daemon at Fri Jun  5 05:56:21 IST 2026
[2026-06-05 05:56:21,902.902 INFO    ] ================================================
[2026-06-05 05:56:22,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:56:22
[2026-06-05 05:56:23,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:56:23,492.492 INFO    ] Initializing speech engine...
[2026-06-05 05:56:23,507.507 INFO    ] 2026-06-05 05:56:23
[2026-06-05 05:56:23,794.794 INFO    ] 2026-06-05 05:56:23
[2026-06-05 05:56:23,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:56:24,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:56:24,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:56:24,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:56:24,337.337 INFO    ] time= 05/06/2026 05:56:24
[2026-06-05 05:56:24,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:56:24,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:56:24,478.478 INFO    ] No existing commands found in stream
[2026-06-05 05:56:29,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:56:29,510.510 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 05:56:32,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:56:32,368.368 INFO    ] Checking for system updates...
[2026-06-05 05:56:32,416.416 INFO    ] 200
[2026-06-05 05:56:32,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:32,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:56:32,480.480 INFO    ] No update needed
[2026-06-05 05:56:32,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 05:56:32,516.516 INFO    ] 200
[2026-06-05 05:56:32,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:32,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:56:32,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:56:32,588.588 INFO    ] No camera update needed
[2026-06-05 05:56:32,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:56:32,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:56:32,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:56:32,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:56:34,644.644 INFO    ] ================================================
[2026-06-05 05:56:34,659.659 INFO    ] Launching Daemon at Fri Jun  5 05:56:34 IST 2026
[2026-06-05 05:56:34,670.670 INFO    ] ================================================
[2026-06-05 05:56:35,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:56:35
[2026-06-05 05:56:35,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:56:36,095.095 INFO    ] Initializing speech engine...
[2026-06-05 05:56:36,103.103 INFO    ] 2026-06-05 05:56:36
[2026-06-05 05:56:36,353.353 INFO    ] 2026-06-05 05:56:36
[2026-06-05 05:56:36,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:56:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:56:36,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:56:36,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:56:36,848.848 INFO    ] time= 05/06/2026 05:56:36
[2026-06-05 05:56:36,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:56:36,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:56:36,970.970 INFO    ] No existing commands found in stream
[2026-06-05 05:56:41,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:56:41,986.986 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 05:56:45,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:56:45,547.547 INFO    ] Checking for system updates...
[2026-06-05 05:56:45,584.584 INFO    ] 200
[2026-06-05 05:56:45,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:45,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:56:45,648.648 INFO    ] No update needed
[2026-06-05 05:56:45,650.650 INFO    ] Checking for camera pi updates...
[2026-06-05 05:56:45,684.684 INFO    ] 200
[2026-06-05 05:56:45,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:45,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:56:45,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:56:45,770.770 INFO    ] No camera update needed
[2026-06-05 05:56:45,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:56:45,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:56:45,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:56:45,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:56:47,826.826 INFO    ] ================================================
[2026-06-05 05:56:47,842.842 INFO    ] Launching Daemon at Fri Jun  5 05:56:47 IST 2026
[2026-06-05 05:56:47,853.853 INFO    ] ================================================
[2026-06-05 05:56:48,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:56:48
[2026-06-05 05:56:49,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:56:49,467.467 INFO    ] Initializing speech engine...
[2026-06-05 05:56:49,475.475 INFO    ] 2026-06-05 05:56:49
[2026-06-05 05:56:49,745.745 INFO    ] 2026-06-05 05:56:49
[2026-06-05 05:56:49,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:56:50,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:56:50,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:56:50,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:56:50,210.210 INFO    ] time= 05/06/2026 05:56:50
[2026-06-05 05:56:50,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:56:50,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:56:50,409.409 INFO    ] No existing commands found in stream
[2026-06-05 05:56:55,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:56:55,424.424 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 05:56:58,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 05:56:58,785.785 INFO    ] Checking for system updates...
[2026-06-05 05:56:58,822.822 INFO    ] 200
[2026-06-05 05:56:58,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:58,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:56:58,887.887 INFO    ] No update needed
[2026-06-05 05:56:58,890.890 INFO    ] Checking for camera pi updates...
[2026-06-05 05:56:58,928.928 INFO    ] 200
[2026-06-05 05:56:58,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:56:58,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:56:59,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:56:59,020.020 INFO    ] No camera update needed
[2026-06-05 05:56:59,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:56:59,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:56:59,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:56:59,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:57:01,080.080 INFO    ] ================================================
[2026-06-05 05:57:01,095.095 INFO    ] Launching Daemon at Fri Jun  5 05:57:01 IST 2026
[2026-06-05 05:57:01,106.106 INFO    ] ================================================
[2026-06-05 05:57:01,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:57:01
[2026-06-05 05:57:02,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:57:02,996.996 INFO    ] Initializing speech engine...
[2026-06-05 05:57:03,005.005 INFO    ] 2026-06-05 05:57:02
[2026-06-05 05:57:03,338.338 INFO    ] 2026-06-05 05:57:03
[2026-06-05 05:57:03,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:57:03,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:57:03,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:57:03,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:57:03,757.757 INFO    ] time= 05/06/2026 05:57:03
[2026-06-05 05:57:03,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:57:03,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:57:03,905.905 INFO    ] No existing commands found in stream
[2026-06-05 05:57:08,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:57:08,919.919 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 05:57:11,107.107 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:57:11,110.110 INFO    ] Checking for system updates...
[2026-06-05 05:57:11,150.150 INFO    ] 200
[2026-06-05 05:57:11,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:57:11,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:57:11,209.209 INFO    ] No update needed
[2026-06-05 05:57:11,212.212 INFO    ] Checking for camera pi updates...
[2026-06-05 05:57:11,247.247 INFO    ] 200
[2026-06-05 05:57:11,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:57:11,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:57:11,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:57:11,336.336 INFO    ] No camera update needed
[2026-06-05 05:57:11,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:57:11,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:57:11,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:57:11,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:57:13,395.395 INFO    ] ================================================
[2026-06-05 05:57:13,410.410 INFO    ] Launching Daemon at Fri Jun  5 05:57:13 IST 2026
[2026-06-05 05:57:13,421.421 INFO    ] ================================================
[2026-06-05 05:57:14,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:57:14
[2026-06-05 05:57:14,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:57:15,006.006 INFO    ] Initializing speech engine...
[2026-06-05 05:57:15,015.015 INFO    ] 2026-06-05 05:57:15
[2026-06-05 05:57:15,301.301 INFO    ] 2026-06-05 05:57:15
[2026-06-05 05:57:15,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:57:15,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:57:15,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:57:15,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:57:15,754.754 INFO    ] time= 05/06/2026 05:57:15
[2026-06-05 05:57:15,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:57:15,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:57:15,959.959 INFO    ] No existing commands found in stream
[2026-06-05 05:57:20,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:57:20,990.990 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 05:57:23,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:57:23,933.933 INFO    ] Checking for system updates...
[2026-06-05 05:57:23,971.971 INFO    ] 200
[2026-06-05 05:57:23,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:57:24,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:57:24,034.034 INFO    ] No update needed
[2026-06-05 05:57:24,036.036 INFO    ] Checking for camera pi updates...
[2026-06-05 05:57:24,070.070 INFO    ] 200
[2026-06-05 05:57:24,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:57:24,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:57:24,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:57:24,161.161 INFO    ] No camera update needed
[2026-06-05 05:57:24,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:57:24,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:57:24,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:57:24,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:57:26,217.217 INFO    ] ================================================
[2026-06-05 05:57:26,231.231 INFO    ] Launching Daemon at Fri Jun  5 05:57:26 IST 2026
[2026-06-05 05:57:26,242.242 INFO    ] ================================================
[2026-06-05 05:57:26,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:57:26
[2026-06-05 05:57:27,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:57:27,652.652 INFO    ] Initializing speech engine...
[2026-06-05 05:57:27,666.666 INFO    ] 2026-06-05 05:57:27
[2026-06-05 05:57:27,946.946 INFO    ] 2026-06-05 05:57:27
[2026-06-05 05:57:27,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:57:28,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:57:28,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:57:28,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:57:28,312.312 INFO    ] time= 05/06/2026 05:57:28
[2026-06-05 05:57:28,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:57:28,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:57:28,432.432 INFO    ] No existing commands found in stream
[2026-06-05 05:57:33,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:57:33,447.447 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 05:57:37,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:57:37,276.276 INFO    ] Checking for system updates...
[2026-06-05 05:57:37,313.313 INFO    ] 200
[2026-06-05 05:57:37,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:57:37,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:57:37,372.372 INFO    ] No update needed
[2026-06-05 05:57:37,374.374 INFO    ] Checking for camera pi updates...
[2026-06-05 05:57:37,407.407 INFO    ] 200
[2026-06-05 05:57:37,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:57:37,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:57:37,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:57:37,502.502 INFO    ] No camera update needed
[2026-06-05 05:57:37,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:57:37,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:57:37,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:57:37,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:57:39,558.558 INFO    ] ================================================
[2026-06-05 05:57:39,573.573 INFO    ] Launching Daemon at Fri Jun  5 05:57:39 IST 2026
[2026-06-05 05:57:39,583.583 INFO    ] ================================================
[2026-06-05 05:57:40,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:57:40
[2026-06-05 05:57:40,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:57:41,014.014 INFO    ] Initializing speech engine...
[2026-06-05 05:57:41,023.023 INFO    ] 2026-06-05 05:57:41
[2026-06-05 05:57:41,292.292 INFO    ] 2026-06-05 05:57:41
[2026-06-05 05:57:41,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:57:41,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:57:41,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:57:41,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:57:41,746.746 INFO    ] time= 05/06/2026 05:57:41
[2026-06-05 05:57:41,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:57:41,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:57:41,907.907 INFO    ] No existing commands found in stream
[2026-06-05 05:57:46,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:57:46,921.921 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 05:57:50,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:57:50,257.257 INFO    ] Checking for system updates...
[2026-06-05 05:57:50,295.295 INFO    ] 200
[2026-06-05 05:57:50,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:57:50,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:57:50,372.372 INFO    ] No update needed
[2026-06-05 05:57:50,374.374 INFO    ] Checking for camera pi updates...
[2026-06-05 05:57:50,408.408 INFO    ] 200
[2026-06-05 05:57:50,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:57:50,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:57:50,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:57:50,497.497 INFO    ] No camera update needed
[2026-06-05 05:57:50,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:57:50,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:57:50,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:57:50,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:57:52,553.553 INFO    ] ================================================
[2026-06-05 05:57:52,568.568 INFO    ] Launching Daemon at Fri Jun  5 05:57:52 IST 2026
[2026-06-05 05:57:52,579.579 INFO    ] ================================================
[2026-06-05 05:57:53,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:57:53
[2026-06-05 05:57:53,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:57:54,103.103 INFO    ] Initializing speech engine...
[2026-06-05 05:57:54,112.112 INFO    ] 2026-06-05 05:57:54
[2026-06-05 05:57:54,405.405 INFO    ] 2026-06-05 05:57:54
[2026-06-05 05:57:54,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:57:55,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:57:55,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:57:55,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:57:55,527.527 INFO    ] time= 05/06/2026 05:57:55
[2026-06-05 05:57:55,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:57:55,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:57:55,638.638 INFO    ] No existing commands found in stream
[2026-06-05 05:58:00,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:58:00,652.652 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 05:58:02,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:58:02,034.034 INFO    ] Checking for system updates...
[2026-06-05 05:58:02,088.088 INFO    ] 200
[2026-06-05 05:58:02,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:02,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:58:02,157.157 INFO    ] No update needed
[2026-06-05 05:58:02,160.160 INFO    ] Checking for camera pi updates...
[2026-06-05 05:58:02,201.201 INFO    ] 200
[2026-06-05 05:58:02,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:02,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:58:02,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:58:02,385.385 INFO    ] No camera update needed
[2026-06-05 05:58:02,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:58:02,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:58:02,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:58:02,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:58:04,446.446 INFO    ] ================================================
[2026-06-05 05:58:04,462.462 INFO    ] Launching Daemon at Fri Jun  5 05:58:04 IST 2026
[2026-06-05 05:58:04,472.472 INFO    ] ================================================
[2026-06-05 05:58:05,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:58:05
[2026-06-05 05:58:05,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:58:06,018.018 INFO    ] Initializing speech engine...
[2026-06-05 05:58:06,026.026 INFO    ] 2026-06-05 05:58:06
[2026-06-05 05:58:06,313.313 INFO    ] 2026-06-05 05:58:06
[2026-06-05 05:58:06,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:58:06,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:58:06,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:58:06,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:58:06,783.783 INFO    ] time= 05/06/2026 05:58:06
[2026-06-05 05:58:06,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:58:06,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:58:06,990.990 INFO    ] No existing commands found in stream
[2026-06-05 05:58:12,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:58:12,024.024 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 05:58:16,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:58:16,326.326 INFO    ] Checking for system updates...
[2026-06-05 05:58:16,363.363 INFO    ] 200
[2026-06-05 05:58:16,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:16,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:58:16,430.430 INFO    ] No update needed
[2026-06-05 05:58:16,432.432 INFO    ] Checking for camera pi updates...
[2026-06-05 05:58:16,471.471 INFO    ] 200
[2026-06-05 05:58:16,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:16,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:58:16,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:58:16,565.565 INFO    ] No camera update needed
[2026-06-05 05:58:16,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:58:16,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:58:16,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:58:16,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:58:18,624.624 INFO    ] ================================================
[2026-06-05 05:58:18,639.639 INFO    ] Launching Daemon at Fri Jun  5 05:58:18 IST 2026
[2026-06-05 05:58:18,650.650 INFO    ] ================================================
[2026-06-05 05:58:19,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:58:19
[2026-06-05 05:58:19,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:58:20,096.096 INFO    ] Initializing speech engine...
[2026-06-05 05:58:20,104.104 INFO    ] 2026-06-05 05:58:20
[2026-06-05 05:58:20,386.386 INFO    ] 2026-06-05 05:58:20
[2026-06-05 05:58:20,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:58:20,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:58:20,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:58:20,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:58:20,820.820 INFO    ] time= 05/06/2026 05:58:20
[2026-06-05 05:58:20,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:58:20,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:58:20,941.941 INFO    ] No existing commands found in stream
[2026-06-05 05:58:25,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:58:25,958.958 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 05:58:29,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 05:58:29,283.283 INFO    ] Checking for system updates...
[2026-06-05 05:58:29,323.323 INFO    ] 200
[2026-06-05 05:58:29,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:29,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:58:29,388.388 INFO    ] No update needed
[2026-06-05 05:58:29,391.391 INFO    ] Checking for camera pi updates...
[2026-06-05 05:58:29,425.425 INFO    ] 200
[2026-06-05 05:58:29,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:29,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:58:29,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:58:29,516.516 INFO    ] No camera update needed
[2026-06-05 05:58:29,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:58:29,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:58:29,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:58:29,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:58:31,576.576 INFO    ] ================================================
[2026-06-05 05:58:31,593.593 INFO    ] Launching Daemon at Fri Jun  5 05:58:31 IST 2026
[2026-06-05 05:58:31,604.604 INFO    ] ================================================
[2026-06-05 05:58:32,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:58:32
[2026-06-05 05:58:32,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:58:33,110.110 INFO    ] Initializing speech engine...
[2026-06-05 05:58:33,126.126 INFO    ] 2026-06-05 05:58:33
[2026-06-05 05:58:33,407.407 INFO    ] 2026-06-05 05:58:33
[2026-06-05 05:58:33,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:58:33,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:58:33,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:58:33,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:58:33,790.790 INFO    ] time= 05/06/2026 05:58:33
[2026-06-05 05:58:33,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:58:33,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:58:33,900.900 INFO    ] No existing commands found in stream
[2026-06-05 05:58:38,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:58:38,916.916 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 05:58:41,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:58:41,773.773 INFO    ] Checking for system updates...
[2026-06-05 05:58:41,812.812 INFO    ] 200
[2026-06-05 05:58:41,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:41,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:58:41,875.875 INFO    ] No update needed
[2026-06-05 05:58:41,877.877 INFO    ] Checking for camera pi updates...
[2026-06-05 05:58:41,912.912 INFO    ] 200
[2026-06-05 05:58:41,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:41,955.955 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:58:41,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:58:42,000.000 INFO    ] No camera update needed
[2026-06-05 05:58:42,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:58:42,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:58:42,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:58:42,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:58:44,055.055 INFO    ] ================================================
[2026-06-05 05:58:44,071.071 INFO    ] Launching Daemon at Fri Jun  5 05:58:44 IST 2026
[2026-06-05 05:58:44,083.083 INFO    ] ================================================
[2026-06-05 05:58:44,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:58:44
[2026-06-05 05:58:45,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:58:45,541.541 INFO    ] Initializing speech engine...
[2026-06-05 05:58:45,548.548 INFO    ] 2026-06-05 05:58:45
[2026-06-05 05:58:45,793.793 INFO    ] 2026-06-05 05:58:45
[2026-06-05 05:58:45,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:58:46,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:58:46,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:58:46,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:58:46,166.166 INFO    ] time= 05/06/2026 05:58:46
[2026-06-05 05:58:46,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:58:46,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:58:46,335.335 INFO    ] No existing commands found in stream
[2026-06-05 05:58:51,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:58:51,363.363 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 05:58:51,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:58:51,807.807 INFO    ] Checking for system updates...
[2026-06-05 05:58:51,844.844 INFO    ] 200
[2026-06-05 05:58:51,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:51,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:58:51,904.904 INFO    ] No update needed
[2026-06-05 05:58:51,907.907 INFO    ] Checking for camera pi updates...
[2026-06-05 05:58:51,942.942 INFO    ] 200
[2026-06-05 05:58:51,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:58:51,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:58:52,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:58:52,036.036 INFO    ] No camera update needed
[2026-06-05 05:58:52,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:58:52,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:58:52,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:58:52,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:58:54,094.094 INFO    ] ================================================
[2026-06-05 05:58:54,109.109 INFO    ] Launching Daemon at Fri Jun  5 05:58:54 IST 2026
[2026-06-05 05:58:54,120.120 INFO    ] ================================================
[2026-06-05 05:58:54,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:58:54
[2026-06-05 05:58:55,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:58:55,615.615 INFO    ] Initializing speech engine...
[2026-06-05 05:58:55,626.626 INFO    ] 2026-06-05 05:58:55
[2026-06-05 05:58:55,901.901 INFO    ] 2026-06-05 05:58:55
[2026-06-05 05:58:55,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:58:56,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:58:56,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:58:56,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:58:56,392.392 INFO    ] time= 05/06/2026 05:58:56
[2026-06-05 05:58:56,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:58:56,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:58:56,516.516 INFO    ] No existing commands found in stream
[2026-06-05 05:59:01,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:59:01,532.532 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 05:59:05,382.382 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 05:59:05,385.385 INFO    ] Checking for system updates...
[2026-06-05 05:59:05,422.422 INFO    ] 200
[2026-06-05 05:59:05,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:05,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:59:05,481.481 INFO    ] No update needed
[2026-06-05 05:59:05,484.484 INFO    ] Checking for camera pi updates...
[2026-06-05 05:59:05,518.518 INFO    ] 200
[2026-06-05 05:59:05,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:05,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:59:05,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:59:05,590.590 INFO    ] No camera update needed
[2026-06-05 05:59:05,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:59:05,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:59:05,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:59:05,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:59:07,644.644 INFO    ] ================================================
[2026-06-05 05:59:07,659.659 INFO    ] Launching Daemon at Fri Jun  5 05:59:07 IST 2026
[2026-06-05 05:59:07,670.670 INFO    ] ================================================
[2026-06-05 05:59:08,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:59:08
[2026-06-05 05:59:08,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:59:09,089.089 INFO    ] Initializing speech engine...
[2026-06-05 05:59:09,099.099 INFO    ] 2026-06-05 05:59:09
[2026-06-05 05:59:09,358.358 INFO    ] 2026-06-05 05:59:09
[2026-06-05 05:59:09,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:59:09,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:59:09,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:59:09,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:59:09,820.820 INFO    ] time= 05/06/2026 05:59:09
[2026-06-05 05:59:09,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:59:09,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:59:09,962.962 INFO    ] No existing commands found in stream
[2026-06-05 05:59:14,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:59:14,977.977 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 05:59:16,960.960 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 05:59:16,962.962 INFO    ] Checking for system updates...
[2026-06-05 05:59:17,001.001 INFO    ] 200
[2026-06-05 05:59:17,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:17,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:59:17,059.059 INFO    ] No update needed
[2026-06-05 05:59:17,061.061 INFO    ] Checking for camera pi updates...
[2026-06-05 05:59:17,095.095 INFO    ] 200
[2026-06-05 05:59:17,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:17,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:59:17,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:59:17,184.184 INFO    ] No camera update needed
[2026-06-05 05:59:17,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:59:17,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:59:17,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:59:17,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:59:19,241.241 INFO    ] ================================================
[2026-06-05 05:59:19,256.256 INFO    ] Launching Daemon at Fri Jun  5 05:59:19 IST 2026
[2026-06-05 05:59:19,266.266 INFO    ] ================================================
[2026-06-05 05:59:19,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:59:19
[2026-06-05 05:59:20,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:59:20,728.728 INFO    ] Initializing speech engine...
[2026-06-05 05:59:20,739.739 INFO    ] 2026-06-05 05:59:20
[2026-06-05 05:59:21,012.012 INFO    ] 2026-06-05 05:59:21
[2026-06-05 05:59:21,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:59:21,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:59:21,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:59:21,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:59:21,495.495 INFO    ] time= 05/06/2026 05:59:21
[2026-06-05 05:59:21,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:59:21,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:59:21,705.705 INFO    ] No existing commands found in stream
[2026-06-05 05:59:26,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:59:26,731.731 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 05:59:28,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 05:59:28,432.432 INFO    ] Checking for system updates...
[2026-06-05 05:59:28,470.470 INFO    ] 200
[2026-06-05 05:59:28,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:28,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:59:28,647.647 INFO    ] No update needed
[2026-06-05 05:59:28,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 05:59:28,683.683 INFO    ] 200
[2026-06-05 05:59:28,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:28,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:59:28,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:59:28,774.774 INFO    ] No camera update needed
[2026-06-05 05:59:28,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:59:28,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:59:28,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:59:28,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:59:30,830.830 INFO    ] ================================================
[2026-06-05 05:59:30,844.844 INFO    ] Launching Daemon at Fri Jun  5 05:59:30 IST 2026
[2026-06-05 05:59:30,856.856 INFO    ] ================================================
[2026-06-05 05:59:31,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:59:31
[2026-06-05 05:59:32,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:59:32,354.354 INFO    ] Initializing speech engine...
[2026-06-05 05:59:32,364.364 INFO    ] 2026-06-05 05:59:32
[2026-06-05 05:59:32,643.643 INFO    ] 2026-06-05 05:59:32
[2026-06-05 05:59:32,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:59:32,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:59:32,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:59:33,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:59:33,022.022 INFO    ] time= 05/06/2026 05:59:33
[2026-06-05 05:59:33,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:59:33,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:59:33,141.141 INFO    ] No existing commands found in stream
[2026-06-05 05:59:38,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:59:38,156.156 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 05:59:40,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:59:40,214.214 INFO    ] Checking for system updates...
[2026-06-05 05:59:40,255.255 INFO    ] 200
[2026-06-05 05:59:40,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:40,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:59:40,314.314 INFO    ] No update needed
[2026-06-05 05:59:40,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 05:59:40,351.351 INFO    ] 200
[2026-06-05 05:59:40,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:40,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:59:40,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 05:59:40,442.442 INFO    ] No camera update needed
[2026-06-05 05:59:40,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:59:40,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:59:40,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:59:40,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:59:42,496.496 INFO    ] ================================================
[2026-06-05 05:59:42,511.511 INFO    ] Launching Daemon at Fri Jun  5 05:59:42 IST 2026
[2026-06-05 05:59:42,522.522 INFO    ] ================================================
[2026-06-05 05:59:43,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:59:43
[2026-06-05 05:59:43,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:59:43,942.942 INFO    ] Initializing speech engine...
[2026-06-05 05:59:43,957.957 INFO    ] 2026-06-05 05:59:43
[2026-06-05 05:59:44,224.224 INFO    ] 2026-06-05 05:59:44
[2026-06-05 05:59:44,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:59:44,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:59:44,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:59:44,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:59:44,612.612 INFO    ] time= 05/06/2026 05:59:44
[2026-06-05 05:59:44,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:59:44,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:59:44,783.783 INFO    ] No existing commands found in stream
[2026-06-05 05:59:49,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 05:59:49,806.806 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 05:59:53,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 05:59:53,857.857 INFO    ] Checking for system updates...
[2026-06-05 05:59:53,897.897 INFO    ] 200
[2026-06-05 05:59:53,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:53,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:59:53,960.960 INFO    ] No update needed
[2026-06-05 05:59:53,962.962 INFO    ] Checking for camera pi updates...
[2026-06-05 05:59:53,997.997 INFO    ] 200
[2026-06-05 05:59:53,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 05:59:54,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 05:59:54,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 05:59:54,088.088 INFO    ] No camera update needed
[2026-06-05 05:59:54,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-05 05:59:54,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 05:59:54,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 05:59:54,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 05:59:56,147.147 INFO    ] ================================================
[2026-06-05 05:59:56,163.163 INFO    ] Launching Daemon at Fri Jun  5 05:59:56 IST 2026
[2026-06-05 05:59:56,174.174 INFO    ] ================================================
[2026-06-05 05:59:56,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 05:59:56
[2026-06-05 05:59:57,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 05:59:57,637.637 INFO    ] Initializing speech engine...
[2026-06-05 05:59:57,642.642 INFO    ] 2026-06-05 05:59:57
[2026-06-05 05:59:57,902.902 INFO    ] 2026-06-05 05:59:57
[2026-06-05 05:59:57,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 05:59:58,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 05:59:58,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 05:59:58,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 05:59:58,361.361 INFO    ] time= 05/06/2026 05:59:58
[2026-06-05 05:59:58,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 05:59:58,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 05:59:58,574.574 INFO    ] No existing commands found in stream
[2026-06-05 06:00:03,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:00:03,610.610 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 06:00:10,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:00:10,203.203 INFO    ] Checking for system updates...
[2026-06-05 06:00:10,240.240 INFO    ] 200
[2026-06-05 06:00:10,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:10,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:00:10,299.299 INFO    ] No update needed
[2026-06-05 06:00:10,302.302 INFO    ] Checking for camera pi updates...
[2026-06-05 06:00:10,336.336 INFO    ] 200
[2026-06-05 06:00:10,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:10,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:00:10,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:00:10,528.528 INFO    ] No camera update needed
[2026-06-05 06:00:10,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:00:10,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:00:10,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:00:10,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:00:12,583.583 INFO    ] ================================================
[2026-06-05 06:00:12,599.599 INFO    ] Launching Daemon at Fri Jun  5 06:00:12 IST 2026
[2026-06-05 06:00:12,609.609 INFO    ] ================================================
[2026-06-05 06:00:13,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:00:13
[2026-06-05 06:00:13,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:00:14,065.065 INFO    ] Initializing speech engine...
[2026-06-05 06:00:14,078.078 INFO    ] 2026-06-05 06:00:14
[2026-06-05 06:00:14,329.329 INFO    ] 2026-06-05 06:00:14
[2026-06-05 06:00:14,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:00:14,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:00:14,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:00:14,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:00:14,700.700 INFO    ] time= 05/06/2026 06:00:14
[2026-06-05 06:00:14,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:00:14,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:00:14,868.868 INFO    ] No existing commands found in stream
[2026-06-05 06:00:19,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:00:19,901.901 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 06:00:21,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:00:21,702.702 INFO    ] Checking for system updates...
[2026-06-05 06:00:21,739.739 INFO    ] 200
[2026-06-05 06:00:21,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:21,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:00:21,802.802 INFO    ] No update needed
[2026-06-05 06:00:21,804.804 INFO    ] Checking for camera pi updates...
[2026-06-05 06:00:21,842.842 INFO    ] 200
[2026-06-05 06:00:21,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:21,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:00:21,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:00:21,937.937 INFO    ] No camera update needed
[2026-06-05 06:00:21,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:00:21,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:00:21,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:00:21,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:00:23,994.994 INFO    ] ================================================
[2026-06-05 06:00:24,009.009 INFO    ] Launching Daemon at Fri Jun  5 06:00:24 IST 2026
[2026-06-05 06:00:24,020.020 INFO    ] ================================================
[2026-06-05 06:00:24,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:00:24
[2026-06-05 06:00:25,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:00:25,479.479 INFO    ] Initializing speech engine...
[2026-06-05 06:00:25,489.489 INFO    ] 2026-06-05 06:00:25
[2026-06-05 06:00:25,748.748 INFO    ] 2026-06-05 06:00:25
[2026-06-05 06:00:25,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:00:26,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:00:26,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:00:26,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:00:26,204.204 INFO    ] time= 05/06/2026 06:00:26
[2026-06-05 06:00:26,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:00:26,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:00:26,359.359 INFO    ] No existing commands found in stream
[2026-06-05 06:00:31,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:00:31,374.374 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 06:00:34,299.299 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:00:34,302.302 INFO    ] Checking for system updates...
[2026-06-05 06:00:34,343.343 INFO    ] 200
[2026-06-05 06:00:34,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:34,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:00:34,401.401 INFO    ] No update needed
[2026-06-05 06:00:34,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 06:00:34,438.438 INFO    ] 200
[2026-06-05 06:00:34,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:34,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:00:34,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:00:34,527.527 INFO    ] No camera update needed
[2026-06-05 06:00:34,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:00:34,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:00:34,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:00:34,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:00:36,584.584 INFO    ] ================================================
[2026-06-05 06:00:36,599.599 INFO    ] Launching Daemon at Fri Jun  5 06:00:36 IST 2026
[2026-06-05 06:00:36,609.609 INFO    ] ================================================
[2026-06-05 06:00:37,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:00:37
[2026-06-05 06:00:37,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:00:38,061.061 INFO    ] Initializing speech engine...
[2026-06-05 06:00:38,070.070 INFO    ] 2026-06-05 06:00:38
[2026-06-05 06:00:38,319.319 INFO    ] 2026-06-05 06:00:38
[2026-06-05 06:00:38,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:00:38,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:00:38,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:00:38,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:00:38,807.807 INFO    ] time= 05/06/2026 06:00:38
[2026-06-05 06:00:38,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:00:38,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:00:38,942.942 INFO    ] No existing commands found in stream
[2026-06-05 06:00:43,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:00:43,961.961 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 06:00:45,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:00:45,016.016 INFO    ] Checking for system updates...
[2026-06-05 06:00:45,053.053 INFO    ] 200
[2026-06-05 06:00:45,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:45,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:00:45,116.116 INFO    ] No update needed
[2026-06-05 06:00:45,118.118 INFO    ] Checking for camera pi updates...
[2026-06-05 06:00:45,152.152 INFO    ] 200
[2026-06-05 06:00:45,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:45,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:00:45,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:00:45,243.243 INFO    ] No camera update needed
[2026-06-05 06:00:45,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:00:45,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:00:45,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:00:45,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:00:47,299.299 INFO    ] ================================================
[2026-06-05 06:00:47,314.314 INFO    ] Launching Daemon at Fri Jun  5 06:00:47 IST 2026
[2026-06-05 06:00:47,325.325 INFO    ] ================================================
[2026-06-05 06:00:47,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:00:47
[2026-06-05 06:00:48,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:00:48,736.736 INFO    ] Initializing speech engine...
[2026-06-05 06:00:48,752.752 INFO    ] 2026-06-05 06:00:48
[2026-06-05 06:00:49,032.032 INFO    ] 2026-06-05 06:00:49
[2026-06-05 06:00:49,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:00:49,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:00:49,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:00:49,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:00:49,409.409 INFO    ] time= 05/06/2026 06:00:49
[2026-06-05 06:00:49,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:00:49,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:00:49,532.532 INFO    ] No existing commands found in stream
[2026-06-05 06:00:54,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:00:54,547.547 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 06:00:57,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:00:57,010.010 INFO    ] Checking for system updates...
[2026-06-05 06:00:57,046.046 INFO    ] 200
[2026-06-05 06:00:57,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:57,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:00:57,109.109 INFO    ] No update needed
[2026-06-05 06:00:57,112.112 INFO    ] Checking for camera pi updates...
[2026-06-05 06:00:57,149.149 INFO    ] 200
[2026-06-05 06:00:57,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:00:57,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:00:57,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:00:57,237.237 INFO    ] No camera update needed
[2026-06-05 06:00:57,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:00:57,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:00:57,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:00:57,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:00:59,294.294 INFO    ] ================================================
[2026-06-05 06:00:59,310.310 INFO    ] Launching Daemon at Fri Jun  5 06:00:59 IST 2026
[2026-06-05 06:00:59,320.320 INFO    ] ================================================
[2026-06-05 06:00:59,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:00:59
[2026-06-05 06:01:00,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:01:00,774.774 INFO    ] Initializing speech engine...
[2026-06-05 06:01:00,782.782 INFO    ] 2026-06-05 06:01:00
[2026-06-05 06:01:01,076.076 INFO    ] 2026-06-05 06:01:01
[2026-06-05 06:01:01,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:01:01,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:01:01,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:01:01,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:01:01,453.453 INFO    ] time= 05/06/2026 06:01:01
[2026-06-05 06:01:01,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:01:01,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:01:01,578.578 INFO    ] No existing commands found in stream
[2026-06-05 06:01:06,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:01:06,590.590 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 06:01:10,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:01:10,386.386 INFO    ] Checking for system updates...
[2026-06-05 06:01:10,422.422 INFO    ] 200
[2026-06-05 06:01:10,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:01:10,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:01:10,480.480 INFO    ] No update needed
[2026-06-05 06:01:10,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 06:01:10,516.516 INFO    ] 200
[2026-06-05 06:01:10,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:01:10,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:01:10,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:01:10,607.607 INFO    ] No camera update needed
[2026-06-05 06:01:10,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:01:10,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:01:10,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:01:10,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:01:12,663.663 INFO    ] ================================================
[2026-06-05 06:01:12,678.678 INFO    ] Launching Daemon at Fri Jun  5 06:01:12 IST 2026
[2026-06-05 06:01:12,689.689 INFO    ] ================================================
[2026-06-05 06:01:13,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:01:13
[2026-06-05 06:01:13,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:01:14,152.152 INFO    ] Initializing speech engine...
[2026-06-05 06:01:14,161.161 INFO    ] 2026-06-05 06:01:14
[2026-06-05 06:01:14,407.407 INFO    ] 2026-06-05 06:01:14
[2026-06-05 06:01:14,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:01:14,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:01:14,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:01:14,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:01:14,843.843 INFO    ] time= 05/06/2026 06:01:14
[2026-06-05 06:01:14,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:01:14,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:01:15,027.027 INFO    ] No existing commands found in stream
[2026-06-05 06:01:20,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:01:20,041.041 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 06:01:23,711.711 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:01:23,714.714 INFO    ] Checking for system updates...
[2026-06-05 06:01:23,753.753 INFO    ] 200
[2026-06-05 06:01:23,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:01:23,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:01:23,810.810 INFO    ] No update needed
[2026-06-05 06:01:23,813.813 INFO    ] Checking for camera pi updates...
[2026-06-05 06:01:23,847.847 INFO    ] 200
[2026-06-05 06:01:23,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:01:23,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:01:23,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:01:23,937.937 INFO    ] No camera update needed
[2026-06-05 06:01:23,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:01:23,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:01:23,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:01:23,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:01:25,993.993 INFO    ] ================================================
[2026-06-05 06:01:26,008.008 INFO    ] Launching Daemon at Fri Jun  5 06:01:26 IST 2026
[2026-06-05 06:01:26,019.019 INFO    ] ================================================
[2026-06-05 06:01:26,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:01:26
[2026-06-05 06:01:27,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:01:27,494.494 INFO    ] Initializing speech engine...
[2026-06-05 06:01:27,503.503 INFO    ] 2026-06-05 06:01:27
[2026-06-05 06:01:27,772.772 INFO    ] 2026-06-05 06:01:27
[2026-06-05 06:01:27,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:01:28,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:01:28,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:01:28,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:01:28,245.245 INFO    ] time= 05/06/2026 06:01:28
[2026-06-05 06:01:28,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:01:28,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:01:28,404.404 INFO    ] No existing commands found in stream
[2026-06-05 06:01:33,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:01:33,419.419 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 06:01:35,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:01:35,710.710 INFO    ] Checking for system updates...
[2026-06-05 06:01:35,749.749 INFO    ] 200
[2026-06-05 06:01:35,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:01:35,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:01:35,816.816 INFO    ] No update needed
[2026-06-05 06:01:35,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 06:01:35,854.854 INFO    ] 200
[2026-06-05 06:01:35,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:01:35,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:01:35,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:01:35,950.950 INFO    ] No camera update needed
[2026-06-05 06:01:35,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:01:35,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:01:35,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:01:35,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:01:38,010.010 INFO    ] ================================================
[2026-06-05 06:01:38,024.024 INFO    ] Launching Daemon at Fri Jun  5 06:01:38 IST 2026
[2026-06-05 06:01:38,035.035 INFO    ] ================================================
[2026-06-05 06:01:38,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:01:38
[2026-06-05 06:01:39,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:01:39,456.456 INFO    ] Initializing speech engine...
[2026-06-05 06:01:39,473.473 INFO    ] 2026-06-05 06:01:39
[2026-06-05 06:01:39,741.741 INFO    ] 2026-06-05 06:01:39
[2026-06-05 06:01:39,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:01:39,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:01:39,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:01:40,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:01:40,147.147 INFO    ] time= 05/06/2026 06:01:40
[2026-06-05 06:01:40,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:01:40,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:01:40,291.291 INFO    ] No existing commands found in stream
[2026-06-05 06:01:45,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:01:45,324.324 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 06:01:47,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:01:47,654.654 INFO    ] Checking for system updates...
[2026-06-05 06:01:47,693.693 INFO    ] 200
[2026-06-05 06:01:47,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:01:47,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:01:47,753.753 INFO    ] No update needed
[2026-06-05 06:01:47,755.755 INFO    ] Checking for camera pi updates...
[2026-06-05 06:01:47,790.790 INFO    ] 200
[2026-06-05 06:01:47,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:01:47,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:01:47,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:01:47,878.878 INFO    ] No camera update needed
[2026-06-05 06:01:47,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:01:47,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:01:47,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:01:47,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:01:49,936.936 INFO    ] ================================================
[2026-06-05 06:01:49,951.951 INFO    ] Launching Daemon at Fri Jun  5 06:01:49 IST 2026
[2026-06-05 06:01:49,961.961 INFO    ] ================================================
[2026-06-05 06:01:50,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:01:50
[2026-06-05 06:01:51,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:01:51,419.419 INFO    ] Initializing speech engine...
[2026-06-05 06:01:51,429.429 INFO    ] 2026-06-05 06:01:51
[2026-06-05 06:01:51,679.679 INFO    ] 2026-06-05 06:01:51
[2026-06-05 06:01:51,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:01:51,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:01:51,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:01:52,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:01:52,131.131 INFO    ] time= 05/06/2026 06:01:52
[2026-06-05 06:01:52,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:01:52,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:01:52,307.307 INFO    ] No existing commands found in stream
[2026-06-05 06:01:57,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:01:57,320.320 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 06:02:00,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:02:00,334.334 INFO    ] Checking for system updates...
[2026-06-05 06:02:00,373.373 INFO    ] 200
[2026-06-05 06:02:00,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:00,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:02:00,435.435 INFO    ] No update needed
[2026-06-05 06:02:00,438.438 INFO    ] Checking for camera pi updates...
[2026-06-05 06:02:00,471.471 INFO    ] 200
[2026-06-05 06:02:00,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:00,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:02:00,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:02:00,558.558 INFO    ] No camera update needed
[2026-06-05 06:02:00,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:02:00,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:02:00,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:02:00,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:02:02,618.618 INFO    ] ================================================
[2026-06-05 06:02:02,643.643 INFO    ] Launching Daemon at Fri Jun  5 06:02:02 IST 2026
[2026-06-05 06:02:02,656.656 INFO    ] ================================================
[2026-06-05 06:02:03,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:02:03
[2026-06-05 06:02:04,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:02:04,327.327 INFO    ] Initializing speech engine...
[2026-06-05 06:02:04,332.332 INFO    ] 2026-06-05 06:02:04
[2026-06-05 06:02:04,584.584 INFO    ] 2026-06-05 06:02:04
[2026-06-05 06:02:04,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:02:04,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:02:04,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:02:04,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:02:04,953.953 INFO    ] time= 05/06/2026 06:02:04
[2026-06-05 06:02:04,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:02:04,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:02:05,023.023 INFO    ] No existing commands found in stream
[2026-06-05 06:02:10,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:02:10,045.045 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 06:02:11,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:02:11,728.728 INFO    ] Checking for system updates...
[2026-06-05 06:02:11,766.766 INFO    ] 200
[2026-06-05 06:02:11,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:11,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:02:11,828.828 INFO    ] No update needed
[2026-06-05 06:02:11,833.833 INFO    ] Checking for camera pi updates...
[2026-06-05 06:02:11,882.882 INFO    ] 200
[2026-06-05 06:02:11,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:11,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:02:11,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:02:11,975.975 INFO    ] No camera update needed
[2026-06-05 06:02:11,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:02:11,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:02:11,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:02:11,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:02:14,031.031 INFO    ] ================================================
[2026-06-05 06:02:14,047.047 INFO    ] Launching Daemon at Fri Jun  5 06:02:14 IST 2026
[2026-06-05 06:02:14,058.058 INFO    ] ================================================
[2026-06-05 06:02:14,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:02:14
[2026-06-05 06:02:15,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:02:15,723.723 INFO    ] Initializing speech engine...
[2026-06-05 06:02:15,729.729 INFO    ] 2026-06-05 06:02:15
[2026-06-05 06:02:16,013.013 INFO    ] 2026-06-05 06:02:16
[2026-06-05 06:02:16,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:02:16,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:02:16,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:02:16,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:02:16,493.493 INFO    ] time= 05/06/2026 06:02:16
[2026-06-05 06:02:16,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:02:16,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:02:16,644.644 INFO    ] No existing commands found in stream
[2026-06-05 06:02:21,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:02:21,664.664 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 06:02:25,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:02:25,238.238 INFO    ] Checking for system updates...
[2026-06-05 06:02:25,280.280 INFO    ] 200
[2026-06-05 06:02:25,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:25,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:02:25,348.348 INFO    ] No update needed
[2026-06-05 06:02:25,351.351 INFO    ] Checking for camera pi updates...
[2026-06-05 06:02:25,386.386 INFO    ] 200
[2026-06-05 06:02:25,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:25,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:02:25,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:02:25,591.591 INFO    ] No camera update needed
[2026-06-05 06:02:25,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:02:25,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:02:25,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:02:25,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:02:27,654.654 INFO    ] ================================================
[2026-06-05 06:02:27,670.670 INFO    ] Launching Daemon at Fri Jun  5 06:02:27 IST 2026
[2026-06-05 06:02:27,681.681 INFO    ] ================================================
[2026-06-05 06:02:28,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:02:28
[2026-06-05 06:02:28,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:02:29,084.084 INFO    ] Initializing speech engine...
[2026-06-05 06:02:29,092.092 INFO    ] 2026-06-05 06:02:29
[2026-06-05 06:02:29,367.367 INFO    ] 2026-06-05 06:02:29
[2026-06-05 06:02:29,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:02:29,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:02:29,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:02:29,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:02:29,746.746 INFO    ] time= 05/06/2026 06:02:29
[2026-06-05 06:02:29,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:02:29,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:02:29,926.926 INFO    ] No existing commands found in stream
[2026-06-05 06:02:34,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:02:34,954.954 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 06:02:38,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:02:38,601.601 INFO    ] Checking for system updates...
[2026-06-05 06:02:38,637.637 INFO    ] 200
[2026-06-05 06:02:38,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:38,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:02:38,708.708 INFO    ] No update needed
[2026-06-05 06:02:38,710.710 INFO    ] Checking for camera pi updates...
[2026-06-05 06:02:38,744.744 INFO    ] 200
[2026-06-05 06:02:38,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:38,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:02:38,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:02:38,831.831 INFO    ] No camera update needed
[2026-06-05 06:02:38,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:02:38,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:02:38,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:02:38,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:02:40,886.886 INFO    ] ================================================
[2026-06-05 06:02:40,902.902 INFO    ] Launching Daemon at Fri Jun  5 06:02:40 IST 2026
[2026-06-05 06:02:40,913.913 INFO    ] ================================================
[2026-06-05 06:02:41,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:02:41
[2026-06-05 06:02:42,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:02:42,360.360 INFO    ] Initializing speech engine...
[2026-06-05 06:02:42,371.371 INFO    ] 2026-06-05 06:02:42
[2026-06-05 06:02:42,649.649 INFO    ] 2026-06-05 06:02:42
[2026-06-05 06:02:42,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:02:42,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:02:42,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:02:43,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:02:43,049.049 INFO    ] time= 05/06/2026 06:02:43
[2026-06-05 06:02:43,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:02:43,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:02:43,238.238 INFO    ] No existing commands found in stream
[2026-06-05 06:02:48,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:02:48,262.262 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 06:02:51,261.261 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:02:51,264.264 INFO    ] Checking for system updates...
[2026-06-05 06:02:51,301.301 INFO    ] 200
[2026-06-05 06:02:51,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:51,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:02:51,362.362 INFO    ] No update needed
[2026-06-05 06:02:51,365.365 INFO    ] Checking for camera pi updates...
[2026-06-05 06:02:51,398.398 INFO    ] 200
[2026-06-05 06:02:51,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:02:51,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:02:51,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:02:51,495.495 INFO    ] No camera update needed
[2026-06-05 06:02:51,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:02:51,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:02:51,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:02:51,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:02:53,552.552 INFO    ] ================================================
[2026-06-05 06:02:53,567.567 INFO    ] Launching Daemon at Fri Jun  5 06:02:53 IST 2026
[2026-06-05 06:02:53,578.578 INFO    ] ================================================
[2026-06-05 06:02:54,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:02:54
[2026-06-05 06:02:54,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:02:55,256.256 INFO    ] Initializing speech engine...
[2026-06-05 06:02:55,264.264 INFO    ] 2026-06-05 06:02:55
[2026-06-05 06:02:55,564.564 INFO    ] 2026-06-05 06:02:55
[2026-06-05 06:02:55,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:02:55,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:02:55,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:02:56,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:02:56,108.108 INFO    ] time= 05/06/2026 06:02:56
[2026-06-05 06:02:56,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:02:56,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:02:56,249.249 INFO    ] No existing commands found in stream
[2026-06-05 06:03:01,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:03:01,284.284 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 06:03:01,833.833 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:03:01,836.836 INFO    ] Checking for system updates...
[2026-06-05 06:03:01,877.877 INFO    ] 200
[2026-06-05 06:03:01,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:01,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:01,962.962 INFO    ] No update needed
[2026-06-05 06:03:01,972.972 INFO    ] Checking for camera pi updates...
[2026-06-05 06:03:02,060.060 INFO    ] 200
[2026-06-05 06:03:02,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:02,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:03:02,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:02,224.224 INFO    ] No camera update needed
[2026-06-05 06:03:02,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:03:02,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:03:02,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:03:02,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:03:04,307.307 INFO    ] ================================================
[2026-06-05 06:03:04,322.322 INFO    ] Launching Daemon at Fri Jun  5 06:03:04 IST 2026
[2026-06-05 06:03:04,334.334 INFO    ] ================================================
[2026-06-05 06:03:04,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:03:04
[2026-06-05 06:03:05,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:03:05,780.780 INFO    ] Initializing speech engine...
[2026-06-05 06:03:05,785.785 INFO    ] 2026-06-05 06:03:05
[2026-06-05 06:03:06,035.035 INFO    ] 2026-06-05 06:03:06
[2026-06-05 06:03:06,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:03:06,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:03:06,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:03:06,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:03:06,388.388 INFO    ] time= 05/06/2026 06:03:06
[2026-06-05 06:03:06,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:03:06,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:03:06,517.517 INFO    ] No existing commands found in stream
[2026-06-05 06:03:11,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:03:11,530.530 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 06:03:12,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:03:12,826.826 INFO    ] Checking for system updates...
[2026-06-05 06:03:12,862.862 INFO    ] 200
[2026-06-05 06:03:12,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:12,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:12,929.929 INFO    ] No update needed
[2026-06-05 06:03:12,931.931 INFO    ] Checking for camera pi updates...
[2026-06-05 06:03:12,965.965 INFO    ] 200
[2026-06-05 06:03:12,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:13,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:03:13,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:13,051.051 INFO    ] No camera update needed
[2026-06-05 06:03:13,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:03:13,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:03:13,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:03:13,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:03:15,108.108 INFO    ] ================================================
[2026-06-05 06:03:15,124.124 INFO    ] Launching Daemon at Fri Jun  5 06:03:15 IST 2026
[2026-06-05 06:03:15,135.135 INFO    ] ================================================
[2026-06-05 06:03:15,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:03:15
[2026-06-05 06:03:16,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:03:16,665.665 INFO    ] Initializing speech engine...
[2026-06-05 06:03:16,672.672 INFO    ] 2026-06-05 06:03:16
[2026-06-05 06:03:16,974.974 INFO    ] 2026-06-05 06:03:16
[2026-06-05 06:03:17,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:03:17,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:03:17,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:03:17,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:03:17,411.411 INFO    ] time= 05/06/2026 06:03:17
[2026-06-05 06:03:17,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:03:17,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:03:17,566.566 INFO    ] No existing commands found in stream
[2026-06-05 06:03:22,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:03:22,588.588 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 06:03:26,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:03:26,550.550 INFO    ] Checking for system updates...
[2026-06-05 06:03:26,588.588 INFO    ] 200
[2026-06-05 06:03:26,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:26,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:26,647.647 INFO    ] No update needed
[2026-06-05 06:03:26,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 06:03:26,684.684 INFO    ] 200
[2026-06-05 06:03:26,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:26,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:03:26,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:26,772.772 INFO    ] No camera update needed
[2026-06-05 06:03:26,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:03:26,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:03:26,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:03:26,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:03:28,827.827 INFO    ] ================================================
[2026-06-05 06:03:28,843.843 INFO    ] Launching Daemon at Fri Jun  5 06:03:28 IST 2026
[2026-06-05 06:03:28,854.854 INFO    ] ================================================
[2026-06-05 06:03:29,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:03:29
[2026-06-05 06:03:30,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:03:30,553.553 INFO    ] Initializing speech engine...
[2026-06-05 06:03:30,565.565 INFO    ] 2026-06-05 06:03:30
[2026-06-05 06:03:30,851.851 INFO    ] 2026-06-05 06:03:30
[2026-06-05 06:03:30,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:03:31,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:03:31,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:03:31,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:03:31,396.396 INFO    ] time= 05/06/2026 06:03:31
[2026-06-05 06:03:31,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:03:31,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:03:31,553.553 INFO    ] No existing commands found in stream
[2026-06-05 06:03:36,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:03:36,577.577 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 06:03:37,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:03:37,042.042 INFO    ] Checking for system updates...
[2026-06-05 06:03:37,079.079 INFO    ] 200
[2026-06-05 06:03:37,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:37,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:37,138.138 INFO    ] No update needed
[2026-06-05 06:03:37,141.141 INFO    ] Checking for camera pi updates...
[2026-06-05 06:03:37,175.175 INFO    ] 200
[2026-06-05 06:03:37,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:37,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:03:37,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:37,266.266 INFO    ] No camera update needed
[2026-06-05 06:03:37,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:03:37,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:03:37,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:03:37,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:03:39,322.322 INFO    ] ================================================
[2026-06-05 06:03:39,338.338 INFO    ] Launching Daemon at Fri Jun  5 06:03:39 IST 2026
[2026-06-05 06:03:39,349.349 INFO    ] ================================================
[2026-06-05 06:03:39,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:03:39
[2026-06-05 06:03:40,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:03:40,775.775 INFO    ] Initializing speech engine...
[2026-06-05 06:03:40,784.784 INFO    ] 2026-06-05 06:03:40
[2026-06-05 06:03:41,037.037 INFO    ] 2026-06-05 06:03:41
[2026-06-05 06:03:41,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:03:41,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:03:41,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:03:41,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:03:41,415.415 INFO    ] time= 05/06/2026 06:03:41
[2026-06-05 06:03:41,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:03:41,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:03:41,593.593 INFO    ] No existing commands found in stream
[2026-06-05 06:03:46,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:03:46,626.626 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 06:03:49,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:03:49,831.831 INFO    ] Checking for system updates...
[2026-06-05 06:03:49,871.871 INFO    ] 200
[2026-06-05 06:03:49,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:49,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:49,935.935 INFO    ] No update needed
[2026-06-05 06:03:49,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 06:03:49,981.981 INFO    ] 200
[2026-06-05 06:03:49,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:03:50,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:03:50,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:03:50,061.061 INFO    ] No camera update needed
[2026-06-05 06:03:50,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:03:50,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:03:50,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:03:50,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:03:52,121.121 INFO    ] ================================================
[2026-06-05 06:03:52,137.137 INFO    ] Launching Daemon at Fri Jun  5 06:03:52 IST 2026
[2026-06-05 06:03:52,148.148 INFO    ] ================================================
[2026-06-05 06:03:52,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:03:52
[2026-06-05 06:03:53,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:03:53,807.807 INFO    ] Initializing speech engine...
[2026-06-05 06:03:53,819.819 INFO    ] 2026-06-05 06:03:53
[2026-06-05 06:03:54,134.134 INFO    ] 2026-06-05 06:03:54
[2026-06-05 06:03:54,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:03:54,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:03:54,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:03:54,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:03:54,658.658 INFO    ] time= 05/06/2026 06:03:54
[2026-06-05 06:03:54,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:03:54,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:03:54,801.801 INFO    ] No existing commands found in stream
[2026-06-05 06:03:59,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:03:59,831.831 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 06:04:02,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:04:02,529.529 INFO    ] Checking for system updates...
[2026-06-05 06:04:02,571.571 INFO    ] 200
[2026-06-05 06:04:02,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:02,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:04:02,644.644 INFO    ] No update needed
[2026-06-05 06:04:02,648.648 INFO    ] Checking for camera pi updates...
[2026-06-05 06:04:02,696.696 INFO    ] 200
[2026-06-05 06:04:02,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:02,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:04:02,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:04:02,797.797 INFO    ] No camera update needed
[2026-06-05 06:04:02,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:04:02,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:04:02,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:04:02,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:04:04,863.863 INFO    ] ================================================
[2026-06-05 06:04:04,878.878 INFO    ] Launching Daemon at Fri Jun  5 06:04:04 IST 2026
[2026-06-05 06:04:04,889.889 INFO    ] ================================================
[2026-06-05 06:04:05,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:04:05
[2026-06-05 06:04:06,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:04:06,575.575 INFO    ] Initializing speech engine...
[2026-06-05 06:04:06,581.581 INFO    ] 2026-06-05 06:04:06
[2026-06-05 06:04:06,863.863 INFO    ] 2026-06-05 06:04:06
[2026-06-05 06:04:06,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:04:07,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:04:07,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:04:07,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:04:07,349.349 INFO    ] time= 05/06/2026 06:04:07
[2026-06-05 06:04:07,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:04:07,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:04:07,565.565 INFO    ] No existing commands found in stream
[2026-06-05 06:04:12,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:04:12,605.605 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 06:04:16,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:04:16,577.577 INFO    ] Checking for system updates...
[2026-06-05 06:04:16,616.616 INFO    ] 200
[2026-06-05 06:04:16,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:16,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:04:16,683.683 INFO    ] No update needed
[2026-06-05 06:04:16,686.686 INFO    ] Checking for camera pi updates...
[2026-06-05 06:04:16,720.720 INFO    ] 200
[2026-06-05 06:04:16,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:16,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:04:16,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:04:16,805.805 INFO    ] No camera update needed
[2026-06-05 06:04:16,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:04:16,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:04:16,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:04:16,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:04:18,861.861 INFO    ] ================================================
[2026-06-05 06:04:18,876.876 INFO    ] Launching Daemon at Fri Jun  5 06:04:18 IST 2026
[2026-06-05 06:04:18,887.887 INFO    ] ================================================
[2026-06-05 06:04:19,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:04:19
[2026-06-05 06:04:20,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:04:20,594.594 INFO    ] Initializing speech engine...
[2026-06-05 06:04:20,601.601 INFO    ] 2026-06-05 06:04:20
[2026-06-05 06:04:20,913.913 INFO    ] 2026-06-05 06:04:20
[2026-06-05 06:04:21,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:04:21,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:04:21,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:04:21,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:04:21,431.431 INFO    ] time= 05/06/2026 06:04:21
[2026-06-05 06:04:21,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:04:21,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:04:21,590.590 INFO    ] No existing commands found in stream
[2026-06-05 06:04:26,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:04:26,623.623 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 06:04:28,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:04:28,746.746 INFO    ] Checking for system updates...
[2026-06-05 06:04:28,784.784 INFO    ] 200
[2026-06-05 06:04:28,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:28,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:04:28,843.843 INFO    ] No update needed
[2026-06-05 06:04:28,845.845 INFO    ] Checking for camera pi updates...
[2026-06-05 06:04:28,884.884 INFO    ] 200
[2026-06-05 06:04:28,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:28,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:04:29,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:04:29,080.080 INFO    ] No camera update needed
[2026-06-05 06:04:29,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:04:29,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:04:29,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:04:29,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:04:31,136.136 INFO    ] ================================================
[2026-06-05 06:04:31,152.152 INFO    ] Launching Daemon at Fri Jun  5 06:04:31 IST 2026
[2026-06-05 06:04:31,163.163 INFO    ] ================================================
[2026-06-05 06:04:31,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:04:31
[2026-06-05 06:04:32,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:04:32,637.637 INFO    ] Initializing speech engine...
[2026-06-05 06:04:32,663.663 INFO    ] 2026-06-05 06:04:32
[2026-06-05 06:04:32,938.938 INFO    ] 2026-06-05 06:04:32
[2026-06-05 06:04:32,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:04:33,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:04:33,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:04:33,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:04:33,393.393 INFO    ] time= 05/06/2026 06:04:33
[2026-06-05 06:04:33,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:04:33,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:04:33,590.590 INFO    ] No existing commands found in stream
[2026-06-05 06:04:38,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:04:38,605.605 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 06:04:42,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:04:42,937.937 INFO    ] Checking for system updates...
[2026-06-05 06:04:42,974.974 INFO    ] 200
[2026-06-05 06:04:42,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:43,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:04:43,031.031 INFO    ] No update needed
[2026-06-05 06:04:43,034.034 INFO    ] Checking for camera pi updates...
[2026-06-05 06:04:43,067.067 INFO    ] 200
[2026-06-05 06:04:43,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:43,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:04:43,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:04:43,156.156 INFO    ] No camera update needed
[2026-06-05 06:04:43,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:04:43,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:04:43,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:04:43,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:04:45,213.213 INFO    ] ================================================
[2026-06-05 06:04:45,228.228 INFO    ] Launching Daemon at Fri Jun  5 06:04:45 IST 2026
[2026-06-05 06:04:45,240.240 INFO    ] ================================================
[2026-06-05 06:04:45,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:04:45
[2026-06-05 06:04:46,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:04:46,670.670 INFO    ] Initializing speech engine...
[2026-06-05 06:04:46,679.679 INFO    ] 2026-06-05 06:04:46
[2026-06-05 06:04:46,928.928 INFO    ] 2026-06-05 06:04:46
[2026-06-05 06:04:46,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:04:47,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:04:47,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:04:47,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:04:47,299.299 INFO    ] time= 05/06/2026 06:04:47
[2026-06-05 06:04:47,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:04:47,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:04:47,468.468 INFO    ] No existing commands found in stream
[2026-06-05 06:04:52,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:04:52,500.500 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 06:04:55,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:04:55,371.371 INFO    ] Checking for system updates...
[2026-06-05 06:04:55,412.412 INFO    ] 200
[2026-06-05 06:04:55,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:55,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:04:55,469.469 INFO    ] No update needed
[2026-06-05 06:04:55,471.471 INFO    ] Checking for camera pi updates...
[2026-06-05 06:04:55,509.509 INFO    ] 200
[2026-06-05 06:04:55,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:04:55,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:04:55,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:04:55,601.601 INFO    ] No camera update needed
[2026-06-05 06:04:55,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:04:55,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:04:55,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:04:55,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:04:57,657.657 INFO    ] ================================================
[2026-06-05 06:04:57,673.673 INFO    ] Launching Daemon at Fri Jun  5 06:04:57 IST 2026
[2026-06-05 06:04:57,685.685 INFO    ] ================================================
[2026-06-05 06:04:58,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:04:58
[2026-06-05 06:04:59,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:04:59,354.354 INFO    ] Initializing speech engine...
[2026-06-05 06:04:59,362.362 INFO    ] 2026-06-05 06:04:59
[2026-06-05 06:04:59,669.669 INFO    ] 2026-06-05 06:04:59
[2026-06-05 06:04:59,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:04:59,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:04:59,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:05:00,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:05:00,176.176 INFO    ] time= 05/06/2026 06:05:00
[2026-06-05 06:05:00,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:05:00,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:05:00,317.317 INFO    ] No existing commands found in stream
[2026-06-05 06:05:05,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:05:05,349.349 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 06:05:08,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:05:08,063.063 INFO    ] Checking for system updates...
[2026-06-05 06:05:08,101.101 INFO    ] 200
[2026-06-05 06:05:08,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:08,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:05:08,162.162 INFO    ] No update needed
[2026-06-05 06:05:08,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 06:05:08,200.200 INFO    ] 200
[2026-06-05 06:05:08,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:08,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:05:08,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:05:08,295.295 INFO    ] No camera update needed
[2026-06-05 06:05:08,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:05:08,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:05:08,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:05:08,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:05:10,353.353 INFO    ] ================================================
[2026-06-05 06:05:10,368.368 INFO    ] Launching Daemon at Fri Jun  5 06:05:10 IST 2026
[2026-06-05 06:05:10,379.379 INFO    ] ================================================
[2026-06-05 06:05:10,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:05:10
[2026-06-05 06:05:11,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:05:11,783.783 INFO    ] Initializing speech engine...
[2026-06-05 06:05:11,806.806 INFO    ] 2026-06-05 06:05:11
[2026-06-05 06:05:12,063.063 INFO    ] 2026-06-05 06:05:12
[2026-06-05 06:05:12,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:05:12,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:05:12,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:05:12,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:05:12,528.528 INFO    ] time= 05/06/2026 06:05:12
[2026-06-05 06:05:12,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:05:12,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:05:12,701.701 INFO    ] No existing commands found in stream
[2026-06-05 06:05:17,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:05:17,716.716 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 06:05:20,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:05:20,310.310 INFO    ] Checking for system updates...
[2026-06-05 06:05:20,348.348 INFO    ] 200
[2026-06-05 06:05:20,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:20,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:05:20,411.411 INFO    ] No update needed
[2026-06-05 06:05:20,414.414 INFO    ] Checking for camera pi updates...
[2026-06-05 06:05:20,452.452 INFO    ] 200
[2026-06-05 06:05:20,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:20,495.495 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:05:20,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:05:20,538.538 INFO    ] No camera update needed
[2026-06-05 06:05:20,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:05:20,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:05:20,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:05:20,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:05:22,596.596 INFO    ] ================================================
[2026-06-05 06:05:22,612.612 INFO    ] Launching Daemon at Fri Jun  5 06:05:22 IST 2026
[2026-06-05 06:05:22,623.623 INFO    ] ================================================
[2026-06-05 06:05:23,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:05:23
[2026-06-05 06:05:23,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:05:24,031.031 INFO    ] Initializing speech engine...
[2026-06-05 06:05:24,037.037 INFO    ] 2026-06-05 06:05:24
[2026-06-05 06:05:24,335.335 INFO    ] 2026-06-05 06:05:24
[2026-06-05 06:05:24,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:05:24,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:05:24,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:05:24,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:05:24,719.719 INFO    ] time= 05/06/2026 06:05:24
[2026-06-05 06:05:24,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:05:24,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:05:24,844.844 INFO    ] No existing commands found in stream
[2026-06-05 06:05:29,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:05:29,859.859 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 06:05:31,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:05:31,988.988 INFO    ] Checking for system updates...
[2026-06-05 06:05:32,030.030 INFO    ] 200
[2026-06-05 06:05:32,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:32,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:05:32,088.088 INFO    ] No update needed
[2026-06-05 06:05:32,090.090 INFO    ] Checking for camera pi updates...
[2026-06-05 06:05:32,124.124 INFO    ] 200
[2026-06-05 06:05:32,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:32,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:05:32,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:05:32,212.212 INFO    ] No camera update needed
[2026-06-05 06:05:32,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:05:32,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:05:32,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:05:32,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:05:34,277.277 INFO    ] ================================================
[2026-06-05 06:05:34,292.292 INFO    ] Launching Daemon at Fri Jun  5 06:05:34 IST 2026
[2026-06-05 06:05:34,303.303 INFO    ] ================================================
[2026-06-05 06:05:34,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:05:34
[2026-06-05 06:05:35,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:05:35,871.871 INFO    ] Initializing speech engine...
[2026-06-05 06:05:35,884.884 INFO    ] 2026-06-05 06:05:35
[2026-06-05 06:05:36,225.225 INFO    ] 2026-06-05 06:05:36
[2026-06-05 06:05:36,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:05:36,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:05:36,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:05:36,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:05:36,671.671 INFO    ] time= 05/06/2026 06:05:36
[2026-06-05 06:05:36,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:05:36,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:05:36,846.846 INFO    ] No existing commands found in stream
[2026-06-05 06:05:41,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:05:41,860.860 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 06:05:45,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:05:45,590.590 INFO    ] Checking for system updates...
[2026-06-05 06:05:45,627.627 INFO    ] 200
[2026-06-05 06:05:45,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:45,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:05:45,685.685 INFO    ] No update needed
[2026-06-05 06:05:45,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 06:05:45,723.723 INFO    ] 200
[2026-06-05 06:05:45,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:45,767.767 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:05:45,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:05:45,813.813 INFO    ] No camera update needed
[2026-06-05 06:05:45,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:05:45,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:05:45,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:05:45,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:05:47,868.868 INFO    ] ================================================
[2026-06-05 06:05:47,883.883 INFO    ] Launching Daemon at Fri Jun  5 06:05:47 IST 2026
[2026-06-05 06:05:47,894.894 INFO    ] ================================================
[2026-06-05 06:05:48,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:05:48
[2026-06-05 06:05:49,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:05:49,449.449 INFO    ] Initializing speech engine...
[2026-06-05 06:05:49,460.460 INFO    ] 2026-06-05 06:05:49
[2026-06-05 06:05:49,719.719 INFO    ] 2026-06-05 06:05:49
[2026-06-05 06:05:49,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:05:49,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:05:50,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:05:50,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:05:50,201.201 INFO    ] time= 05/06/2026 06:05:50
[2026-06-05 06:05:50,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:05:50,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:05:50,366.366 INFO    ] No existing commands found in stream
[2026-06-05 06:05:55,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:05:55,381.381 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 06:05:57,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:05:57,122.122 INFO    ] Checking for system updates...
[2026-06-05 06:05:57,160.160 INFO    ] 200
[2026-06-05 06:05:57,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:57,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:05:57,220.220 INFO    ] No update needed
[2026-06-05 06:05:57,222.222 INFO    ] Checking for camera pi updates...
[2026-06-05 06:05:57,260.260 INFO    ] 200
[2026-06-05 06:05:57,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:05:57,305.305 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:05:57,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:05:57,349.349 INFO    ] No camera update needed
[2026-06-05 06:05:57,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:05:57,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:05:57,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:05:57,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:05:59,407.407 INFO    ] ================================================
[2026-06-05 06:05:59,422.422 INFO    ] Launching Daemon at Fri Jun  5 06:05:59 IST 2026
[2026-06-05 06:05:59,433.433 INFO    ] ================================================
[2026-06-05 06:06:00,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:05:59
[2026-06-05 06:06:00,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:06:00,855.855 INFO    ] Initializing speech engine...
[2026-06-05 06:06:00,864.864 INFO    ] 2026-06-05 06:06:00
[2026-06-05 06:06:01,124.124 INFO    ] 2026-06-05 06:06:01
[2026-06-05 06:06:01,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:06:01,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:06:01,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:06:01,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:06:01,579.579 INFO    ] time= 05/06/2026 06:06:01
[2026-06-05 06:06:01,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:06:01,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:06:01,696.696 INFO    ] No existing commands found in stream
[2026-06-05 06:06:06,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:06:06,734.734 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 06:06:07,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:06:07,315.315 INFO    ] Checking for system updates...
[2026-06-05 06:06:07,352.352 INFO    ] 200
[2026-06-05 06:06:07,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:07,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:06:07,411.411 INFO    ] No update needed
[2026-06-05 06:06:07,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 06:06:07,448.448 INFO    ] 200
[2026-06-05 06:06:07,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:07,495.495 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:06:07,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:06:07,544.544 INFO    ] No camera update needed
[2026-06-05 06:06:07,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:06:07,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:06:07,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:06:07,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:06:09,608.608 INFO    ] ================================================
[2026-06-05 06:06:09,624.624 INFO    ] Launching Daemon at Fri Jun  5 06:06:09 IST 2026
[2026-06-05 06:06:09,635.635 INFO    ] ================================================
[2026-06-05 06:06:10,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:06:10
[2026-06-05 06:06:10,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:06:11,059.059 INFO    ] Initializing speech engine...
[2026-06-05 06:06:11,068.068 INFO    ] 2026-06-05 06:06:11
[2026-06-05 06:06:11,363.363 INFO    ] 2026-06-05 06:06:11
[2026-06-05 06:06:11,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:06:11,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:06:11,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:06:11,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:06:11,748.748 INFO    ] time= 05/06/2026 06:06:11
[2026-06-05 06:06:11,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:06:11,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:06:11,875.875 INFO    ] No existing commands found in stream
[2026-06-05 06:06:16,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:06:16,888.888 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 06:06:20,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:06:20,116.116 INFO    ] Checking for system updates...
[2026-06-05 06:06:20,151.151 INFO    ] 200
[2026-06-05 06:06:20,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:20,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:06:20,215.215 INFO    ] No update needed
[2026-06-05 06:06:20,218.218 INFO    ] Checking for camera pi updates...
[2026-06-05 06:06:20,252.252 INFO    ] 200
[2026-06-05 06:06:20,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:20,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:06:20,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:06:20,346.346 INFO    ] No camera update needed
[2026-06-05 06:06:20,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:06:20,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:06:20,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:06:20,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:06:22,403.403 INFO    ] ================================================
[2026-06-05 06:06:22,419.419 INFO    ] Launching Daemon at Fri Jun  5 06:06:22 IST 2026
[2026-06-05 06:06:22,430.430 INFO    ] ================================================
[2026-06-05 06:06:23,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:06:23
[2026-06-05 06:06:23,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:06:24,061.061 INFO    ] Initializing speech engine...
[2026-06-05 06:06:24,073.073 INFO    ] 2026-06-05 06:06:24
[2026-06-05 06:06:24,342.342 INFO    ] 2026-06-05 06:06:24
[2026-06-05 06:06:24,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:06:24,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:06:24,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:06:24,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:06:24,830.830 INFO    ] time= 05/06/2026 06:06:24
[2026-06-05 06:06:24,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:06:24,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:06:25,026.026 INFO    ] No existing commands found in stream
[2026-06-05 06:06:30,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:06:30,055.055 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 06:06:31,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:06:31,643.643 INFO    ] Checking for system updates...
[2026-06-05 06:06:31,683.683 INFO    ] 200
[2026-06-05 06:06:31,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:31,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:06:31,750.750 INFO    ] No update needed
[2026-06-05 06:06:31,753.753 INFO    ] Checking for camera pi updates...
[2026-06-05 06:06:31,797.797 INFO    ] 200
[2026-06-05 06:06:31,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:31,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:06:31,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:06:31,991.991 INFO    ] No camera update needed
[2026-06-05 06:06:31,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:06:31,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:06:32,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:06:32,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:06:34,059.059 INFO    ] ================================================
[2026-06-05 06:06:34,074.074 INFO    ] Launching Daemon at Fri Jun  5 06:06:34 IST 2026
[2026-06-05 06:06:34,086.086 INFO    ] ================================================
[2026-06-05 06:06:34,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:06:34
[2026-06-05 06:06:35,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:06:35,733.733 INFO    ] Initializing speech engine...
[2026-06-05 06:06:35,746.746 INFO    ] 2026-06-05 06:06:35
[2026-06-05 06:06:36,058.058 INFO    ] 2026-06-05 06:06:36
[2026-06-05 06:06:36,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:06:36,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:06:36,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:06:36,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:06:36,568.568 INFO    ] time= 05/06/2026 06:06:36
[2026-06-05 06:06:36,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:06:36,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:06:36,716.716 INFO    ] No existing commands found in stream
[2026-06-05 06:06:41,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:06:41,757.757 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 06:06:42,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:06:42,354.354 INFO    ] Checking for system updates...
[2026-06-05 06:06:42,391.391 INFO    ] 200
[2026-06-05 06:06:42,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:42,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:06:42,460.460 INFO    ] No update needed
[2026-06-05 06:06:42,463.463 INFO    ] Checking for camera pi updates...
[2026-06-05 06:06:42,497.497 INFO    ] 200
[2026-06-05 06:06:42,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:42,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:06:42,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:06:42,591.591 INFO    ] No camera update needed
[2026-06-05 06:06:42,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:06:42,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:06:42,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:06:42,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:06:44,650.650 INFO    ] ================================================
[2026-06-05 06:06:44,667.667 INFO    ] Launching Daemon at Fri Jun  5 06:06:44 IST 2026
[2026-06-05 06:06:44,677.677 INFO    ] ================================================
[2026-06-05 06:06:45,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:06:45
[2026-06-05 06:06:46,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:06:46,315.315 INFO    ] Initializing speech engine...
[2026-06-05 06:06:46,326.326 INFO    ] 2026-06-05 06:06:46
[2026-06-05 06:06:46,635.635 INFO    ] 2026-06-05 06:06:46
[2026-06-05 06:06:46,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:06:46,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:06:46,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:06:47,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:06:47,145.145 INFO    ] time= 05/06/2026 06:06:47
[2026-06-05 06:06:47,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:06:47,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:06:47,299.299 INFO    ] No existing commands found in stream
[2026-06-05 06:06:52,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:06:52,317.317 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 06:06:54,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:06:54,306.306 INFO    ] Checking for system updates...
[2026-06-05 06:06:54,344.344 INFO    ] 200
[2026-06-05 06:06:54,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:54,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:06:54,410.410 INFO    ] No update needed
[2026-06-05 06:06:54,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 06:06:54,455.455 INFO    ] 200
[2026-06-05 06:06:54,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:06:54,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:06:54,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:06:54,553.553 INFO    ] No camera update needed
[2026-06-05 06:06:54,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:06:54,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:06:54,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:06:54,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:06:56,609.609 INFO    ] ================================================
[2026-06-05 06:06:56,626.626 INFO    ] Launching Daemon at Fri Jun  5 06:06:56 IST 2026
[2026-06-05 06:06:56,637.637 INFO    ] ================================================
[2026-06-05 06:06:57,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:06:57
[2026-06-05 06:06:57,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:06:58,243.243 INFO    ] Initializing speech engine...
[2026-06-05 06:06:58,247.247 INFO    ] 2026-06-05 06:06:58
[2026-06-05 06:06:58,517.517 INFO    ] 2026-06-05 06:06:58
[2026-06-05 06:06:58,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:06:58,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:06:58,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:06:58,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:06:58,891.891 INFO    ] time= 05/06/2026 06:06:58
[2026-06-05 06:06:58,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:06:58,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:06:59,014.014 INFO    ] No existing commands found in stream
[2026-06-05 06:07:04,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:07:04,025.025 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 06:07:07,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:07:07,737.737 INFO    ] Checking for system updates...
[2026-06-05 06:07:07,773.773 INFO    ] 200
[2026-06-05 06:07:07,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:07,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:07:07,832.832 INFO    ] No update needed
[2026-06-05 06:07:07,834.834 INFO    ] Checking for camera pi updates...
[2026-06-05 06:07:07,870.870 INFO    ] 200
[2026-06-05 06:07:07,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:07,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:07:07,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:07:07,961.961 INFO    ] No camera update needed
[2026-06-05 06:07:07,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:07:07,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:07:07,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:07:07,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:07:10,017.017 INFO    ] ================================================
[2026-06-05 06:07:10,032.032 INFO    ] Launching Daemon at Fri Jun  5 06:07:10 IST 2026
[2026-06-05 06:07:10,044.044 INFO    ] ================================================
[2026-06-05 06:07:10,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:07:10
[2026-06-05 06:07:11,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:07:11,481.481 INFO    ] Initializing speech engine...
[2026-06-05 06:07:11,488.488 INFO    ] 2026-06-05 06:07:11
[2026-06-05 06:07:11,778.778 INFO    ] 2026-06-05 06:07:11
[2026-06-05 06:07:11,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:07:12,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:07:12,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:07:12,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:07:12,209.209 INFO    ] time= 05/06/2026 06:07:12
[2026-06-05 06:07:12,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:07:12,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:07:12,372.372 INFO    ] No existing commands found in stream
[2026-06-05 06:07:17,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:07:17,405.405 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 06:07:20,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:07:20,444.444 INFO    ] Checking for system updates...
[2026-06-05 06:07:20,481.481 INFO    ] 200
[2026-06-05 06:07:20,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:20,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:07:20,539.539 INFO    ] No update needed
[2026-06-05 06:07:20,542.542 INFO    ] Checking for camera pi updates...
[2026-06-05 06:07:20,575.575 INFO    ] 200
[2026-06-05 06:07:20,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:20,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:07:20,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:07:20,666.666 INFO    ] No camera update needed
[2026-06-05 06:07:20,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:07:20,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:07:20,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:07:20,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:07:22,721.721 INFO    ] ================================================
[2026-06-05 06:07:22,737.737 INFO    ] Launching Daemon at Fri Jun  5 06:07:22 IST 2026
[2026-06-05 06:07:22,748.748 INFO    ] ================================================
[2026-06-05 06:07:23,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:07:23
[2026-06-05 06:07:23,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:07:24,180.180 INFO    ] Initializing speech engine...
[2026-06-05 06:07:24,198.198 INFO    ] 2026-06-05 06:07:24
[2026-06-05 06:07:24,468.468 INFO    ] 2026-06-05 06:07:24
[2026-06-05 06:07:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:07:24,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:07:24,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:07:24,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:07:24,843.843 INFO    ] time= 05/06/2026 06:07:24
[2026-06-05 06:07:24,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:07:24,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:07:24,967.967 INFO    ] No existing commands found in stream
[2026-06-05 06:07:29,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:07:29,983.983 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 06:07:32,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:07:32,073.073 INFO    ] Checking for system updates...
[2026-06-05 06:07:32,120.120 INFO    ] 200
[2026-06-05 06:07:32,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:32,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:07:32,192.192 INFO    ] No update needed
[2026-06-05 06:07:32,194.194 INFO    ] Checking for camera pi updates...
[2026-06-05 06:07:32,231.231 INFO    ] 200
[2026-06-05 06:07:32,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:32,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:07:32,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:07:32,317.317 INFO    ] No camera update needed
[2026-06-05 06:07:32,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:07:32,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:07:32,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:07:32,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:07:34,382.382 INFO    ] ================================================
[2026-06-05 06:07:34,398.398 INFO    ] Launching Daemon at Fri Jun  5 06:07:34 IST 2026
[2026-06-05 06:07:34,410.410 INFO    ] ================================================
[2026-06-05 06:07:34,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:07:34
[2026-06-05 06:07:35,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:07:35,830.830 INFO    ] Initializing speech engine...
[2026-06-05 06:07:35,845.845 INFO    ] 2026-06-05 06:07:35
[2026-06-05 06:07:36,116.116 INFO    ] 2026-06-05 06:07:36
[2026-06-05 06:07:36,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:07:36,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:07:36,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:07:36,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:07:36,489.489 INFO    ] time= 05/06/2026 06:07:36
[2026-06-05 06:07:36,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:07:36,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:07:36,615.615 INFO    ] No existing commands found in stream
[2026-06-05 06:07:41,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:07:41,629.629 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 06:07:45,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:07:45,983.983 INFO    ] Checking for system updates...
[2026-06-05 06:07:46,019.019 INFO    ] 200
[2026-06-05 06:07:46,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:46,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:07:46,076.076 INFO    ] No update needed
[2026-06-05 06:07:46,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 06:07:46,112.112 INFO    ] 200
[2026-06-05 06:07:46,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:46,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:07:46,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:07:46,200.200 INFO    ] No camera update needed
[2026-06-05 06:07:46,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:07:46,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:07:46,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:07:46,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:07:48,256.256 INFO    ] ================================================
[2026-06-05 06:07:48,272.272 INFO    ] Launching Daemon at Fri Jun  5 06:07:48 IST 2026
[2026-06-05 06:07:48,283.283 INFO    ] ================================================
[2026-06-05 06:07:48,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:07:48
[2026-06-05 06:07:49,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:07:49,710.710 INFO    ] Initializing speech engine...
[2026-06-05 06:07:49,723.723 INFO    ] 2026-06-05 06:07:49
[2026-06-05 06:07:49,973.973 INFO    ] 2026-06-05 06:07:49
[2026-06-05 06:07:50,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:07:50,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:07:50,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:07:50,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:07:50,327.327 INFO    ] time= 05/06/2026 06:07:50
[2026-06-05 06:07:50,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:07:50,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:07:50,452.452 INFO    ] No existing commands found in stream
[2026-06-05 06:07:55,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:07:55,467.467 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 06:07:57,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:07:57,880.880 INFO    ] Checking for system updates...
[2026-06-05 06:07:57,917.917 INFO    ] 200
[2026-06-05 06:07:57,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:57,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:07:57,977.977 INFO    ] No update needed
[2026-06-05 06:07:57,980.980 INFO    ] Checking for camera pi updates...
[2026-06-05 06:07:58,016.016 INFO    ] 200
[2026-06-05 06:07:58,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:07:58,060.060 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:07:58,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:07:58,092.092 INFO    ] No camera update needed
[2026-06-05 06:07:58,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:07:58,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:07:58,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:07:58,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:08:00,150.150 INFO    ] ================================================
[2026-06-05 06:08:00,166.166 INFO    ] Launching Daemon at Fri Jun  5 06:08:00 IST 2026
[2026-06-05 06:08:00,177.177 INFO    ] ================================================
[2026-06-05 06:08:00,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:08:00
[2026-06-05 06:08:01,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:08:01,974.974 INFO    ] Initializing speech engine...
[2026-06-05 06:08:01,989.989 INFO    ] 2026-06-05 06:08:01
[2026-06-05 06:08:02,342.342 INFO    ] 2026-06-05 06:08:02
[2026-06-05 06:08:02,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:08:02,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:08:02,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:08:02,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:08:02,812.812 INFO    ] time= 05/06/2026 06:08:02
[2026-06-05 06:08:02,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:08:02,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:08:02,995.995 INFO    ] No existing commands found in stream
[2026-06-05 06:08:08,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:08:08,010.010 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 06:08:09,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:08:09,991.991 INFO    ] Checking for system updates...
[2026-06-05 06:08:10,041.041 INFO    ] 200
[2026-06-05 06:08:10,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:10,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:08:10,112.112 INFO    ] No update needed
[2026-06-05 06:08:10,116.116 INFO    ] Checking for camera pi updates...
[2026-06-05 06:08:10,160.160 INFO    ] 200
[2026-06-05 06:08:10,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:10,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:08:10,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:08:10,273.273 INFO    ] No camera update needed
[2026-06-05 06:08:10,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:08:10,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:08:10,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:08:10,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:08:12,337.337 INFO    ] ================================================
[2026-06-05 06:08:12,354.354 INFO    ] Launching Daemon at Fri Jun  5 06:08:12 IST 2026
[2026-06-05 06:08:12,364.364 INFO    ] ================================================
[2026-06-05 06:08:13,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:08:13
[2026-06-05 06:08:13,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:08:13,996.996 INFO    ] Initializing speech engine...
[2026-06-05 06:08:14,004.004 INFO    ] 2026-06-05 06:08:13
[2026-06-05 06:08:14,282.282 INFO    ] 2026-06-05 06:08:14
[2026-06-05 06:08:14,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:08:14,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:08:14,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:08:14,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:08:14,654.654 INFO    ] time= 05/06/2026 06:08:14
[2026-06-05 06:08:14,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:08:14,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:08:14,822.822 INFO    ] No existing commands found in stream
[2026-06-05 06:08:19,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:08:19,855.855 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 06:08:21,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:08:21,591.591 INFO    ] Checking for system updates...
[2026-06-05 06:08:21,627.627 INFO    ] 200
[2026-06-05 06:08:21,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:21,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:08:21,684.684 INFO    ] No update needed
[2026-06-05 06:08:21,686.686 INFO    ] Checking for camera pi updates...
[2026-06-05 06:08:21,720.720 INFO    ] 200
[2026-06-05 06:08:21,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:21,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:08:21,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:08:21,804.804 INFO    ] No camera update needed
[2026-06-05 06:08:21,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:08:21,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:08:21,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:08:21,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:08:23,864.864 INFO    ] ================================================
[2026-06-05 06:08:23,879.879 INFO    ] Launching Daemon at Fri Jun  5 06:08:23 IST 2026
[2026-06-05 06:08:23,891.891 INFO    ] ================================================
[2026-06-05 06:08:24,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:08:24
[2026-06-05 06:08:25,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:08:25,354.354 INFO    ] Initializing speech engine...
[2026-06-05 06:08:25,364.364 INFO    ] 2026-06-05 06:08:25
[2026-06-05 06:08:25,622.622 INFO    ] 2026-06-05 06:08:25
[2026-06-05 06:08:25,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:08:25,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:08:25,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:08:26,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:08:26,087.087 INFO    ] time= 05/06/2026 06:08:26
[2026-06-05 06:08:26,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:08:26,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:08:26,243.243 INFO    ] No existing commands found in stream
[2026-06-05 06:08:31,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:08:31,261.261 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 06:08:34,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:08:34,550.550 INFO    ] Checking for system updates...
[2026-06-05 06:08:34,588.588 INFO    ] 200
[2026-06-05 06:08:34,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:34,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:08:34,648.648 INFO    ] No update needed
[2026-06-05 06:08:34,650.650 INFO    ] Checking for camera pi updates...
[2026-06-05 06:08:34,689.689 INFO    ] 200
[2026-06-05 06:08:34,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:34,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:08:34,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:08:34,896.896 INFO    ] No camera update needed
[2026-06-05 06:08:34,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:08:34,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:08:34,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:08:34,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:08:36,958.958 INFO    ] ================================================
[2026-06-05 06:08:36,976.976 INFO    ] Launching Daemon at Fri Jun  5 06:08:36 IST 2026
[2026-06-05 06:08:36,989.989 INFO    ] ================================================
[2026-06-05 06:08:37,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:08:37
[2026-06-05 06:08:38,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:08:38,593.593 INFO    ] Initializing speech engine...
[2026-06-05 06:08:38,604.604 INFO    ] 2026-06-05 06:08:38
[2026-06-05 06:08:38,888.888 INFO    ] 2026-06-05 06:08:38
[2026-06-05 06:08:38,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:08:39,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:08:39,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:08:39,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:08:39,351.351 INFO    ] time= 05/06/2026 06:08:39
[2026-06-05 06:08:39,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:08:39,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:08:39,480.480 INFO    ] No existing commands found in stream
[2026-06-05 06:08:44,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:08:44,503.503 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 06:08:48,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:08:48,467.467 INFO    ] Checking for system updates...
[2026-06-05 06:08:48,504.504 INFO    ] 200
[2026-06-05 06:08:48,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:48,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:08:48,564.564 INFO    ] No update needed
[2026-06-05 06:08:48,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 06:08:48,602.602 INFO    ] 200
[2026-06-05 06:08:48,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:48,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:08:48,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:08:48,690.690 INFO    ] No camera update needed
[2026-06-05 06:08:48,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:08:48,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:08:48,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:08:48,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:08:50,749.749 INFO    ] ================================================
[2026-06-05 06:08:50,765.765 INFO    ] Launching Daemon at Fri Jun  5 06:08:50 IST 2026
[2026-06-05 06:08:50,776.776 INFO    ] ================================================
[2026-06-05 06:08:51,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:08:51
[2026-06-05 06:08:52,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:08:52,381.381 INFO    ] Initializing speech engine...
[2026-06-05 06:08:52,396.396 INFO    ] 2026-06-05 06:08:52
[2026-06-05 06:08:52,711.711 INFO    ] 2026-06-05 06:08:52
[2026-06-05 06:08:52,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:08:52,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:08:53,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:08:53,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:08:53,236.236 INFO    ] time= 05/06/2026 06:08:53
[2026-06-05 06:08:53,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:08:53,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:08:53,386.386 INFO    ] No existing commands found in stream
[2026-06-05 06:08:58,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:08:58,412.412 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 06:08:59,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:08:59,671.671 INFO    ] Checking for system updates...
[2026-06-05 06:08:59,709.709 INFO    ] 200
[2026-06-05 06:08:59,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:59,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:08:59,769.769 INFO    ] No update needed
[2026-06-05 06:08:59,772.772 INFO    ] Checking for camera pi updates...
[2026-06-05 06:08:59,807.807 INFO    ] 200
[2026-06-05 06:08:59,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:08:59,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:08:59,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:08:59,900.900 INFO    ] No camera update needed
[2026-06-05 06:08:59,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:08:59,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:08:59,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:08:59,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:09:01,962.962 INFO    ] ================================================
[2026-06-05 06:09:01,986.986 INFO    ] Launching Daemon at Fri Jun  5 06:09:01 IST 2026
[2026-06-05 06:09:02,010.010 INFO    ] ================================================
[2026-06-05 06:09:02,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:09:02
[2026-06-05 06:09:03,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:09:03,532.532 INFO    ] Initializing speech engine...
[2026-06-05 06:09:03,538.538 INFO    ] 2026-06-05 06:09:03
[2026-06-05 06:09:03,830.830 INFO    ] 2026-06-05 06:09:03
[2026-06-05 06:09:03,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:09:04,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:09:04,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:09:04,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:09:04,209.209 INFO    ] time= 05/06/2026 06:09:04
[2026-06-05 06:09:04,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:09:04,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:09:04,331.331 INFO    ] No existing commands found in stream
[2026-06-05 06:09:09,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:09:09,346.346 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 06:09:13,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:09:13,463.463 INFO    ] Checking for system updates...
[2026-06-05 06:09:13,499.499 INFO    ] 200
[2026-06-05 06:09:13,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:09:13,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:09:13,560.560 INFO    ] No update needed
[2026-06-05 06:09:13,562.562 INFO    ] Checking for camera pi updates...
[2026-06-05 06:09:13,596.596 INFO    ] 200
[2026-06-05 06:09:13,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:09:13,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:09:13,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:09:13,686.686 INFO    ] No camera update needed
[2026-06-05 06:09:13,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:09:13,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:09:13,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:09:13,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:09:15,741.741 INFO    ] ================================================
[2026-06-05 06:09:15,757.757 INFO    ] Launching Daemon at Fri Jun  5 06:09:15 IST 2026
[2026-06-05 06:09:15,767.767 INFO    ] ================================================
[2026-06-05 06:09:16,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:09:16
[2026-06-05 06:09:16,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:09:17,182.182 INFO    ] Initializing speech engine...
[2026-06-05 06:09:17,195.195 INFO    ] 2026-06-05 06:09:17
[2026-06-05 06:09:17,477.477 INFO    ] 2026-06-05 06:09:17
[2026-06-05 06:09:17,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:09:17,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:09:17,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:09:17,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:09:17,894.894 INFO    ] time= 05/06/2026 06:09:17
[2026-06-05 06:09:17,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:09:17,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:09:18,047.047 INFO    ] No existing commands found in stream
[2026-06-05 06:09:23,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:09:23,070.070 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 06:09:25,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:09:25,305.305 INFO    ] Checking for system updates...
[2026-06-05 06:09:25,342.342 INFO    ] 200
[2026-06-05 06:09:25,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:09:25,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:09:25,401.401 INFO    ] No update needed
[2026-06-05 06:09:25,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 06:09:25,439.439 INFO    ] 200
[2026-06-05 06:09:25,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:09:25,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:09:25,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:09:25,530.530 INFO    ] No camera update needed
[2026-06-05 06:09:25,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:09:25,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:09:25,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:09:25,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:09:27,589.589 INFO    ] ================================================
[2026-06-05 06:09:27,605.605 INFO    ] Launching Daemon at Fri Jun  5 06:09:27 IST 2026
[2026-06-05 06:09:27,617.617 INFO    ] ================================================
[2026-06-05 06:09:28,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:09:28
[2026-06-05 06:09:28,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:09:29,103.103 INFO    ] Initializing speech engine...
[2026-06-05 06:09:29,112.112 INFO    ] 2026-06-05 06:09:29
[2026-06-05 06:09:29,382.382 INFO    ] 2026-06-05 06:09:29
[2026-06-05 06:09:29,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:09:29,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:09:29,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:09:29,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:09:29,796.796 INFO    ] time= 05/06/2026 06:09:29
[2026-06-05 06:09:29,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:09:29,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:09:29,879.879 INFO    ] No existing commands found in stream
[2026-06-05 06:09:34,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:09:34,896.896 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 06:09:37,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:09:37,540.540 INFO    ] Checking for system updates...
[2026-06-05 06:09:37,576.576 INFO    ] 200
[2026-06-05 06:09:37,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:09:37,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:09:37,635.635 INFO    ] No update needed
[2026-06-05 06:09:37,642.642 INFO    ] Checking for camera pi updates...
[2026-06-05 06:09:37,676.676 INFO    ] 200
[2026-06-05 06:09:37,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:09:37,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:09:37,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:09:37,773.773 INFO    ] No camera update needed
[2026-06-05 06:09:37,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:09:37,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:09:37,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:09:37,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:09:39,829.829 INFO    ] ================================================
[2026-06-05 06:09:39,844.844 INFO    ] Launching Daemon at Fri Jun  5 06:09:39 IST 2026
[2026-06-05 06:09:39,856.856 INFO    ] ================================================
[2026-06-05 06:09:40,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:09:40
[2026-06-05 06:09:41,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:09:41,310.310 INFO    ] Initializing speech engine...
[2026-06-05 06:09:41,321.321 INFO    ] 2026-06-05 06:09:41
[2026-06-05 06:09:41,568.568 INFO    ] 2026-06-05 06:09:41
[2026-06-05 06:09:41,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:09:41,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:09:41,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:09:42,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:09:42,051.051 INFO    ] time= 05/06/2026 06:09:42
[2026-06-05 06:09:42,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:09:42,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:09:42,157.157 INFO    ] No existing commands found in stream
[2026-06-05 06:09:47,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:09:47,172.172 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 06:09:49,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:09:49,803.803 INFO    ] Checking for system updates...
[2026-06-05 06:09:49,840.840 INFO    ] 200
[2026-06-05 06:09:49,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:09:49,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:09:49,899.899 INFO    ] No update needed
[2026-06-05 06:09:49,901.901 INFO    ] Checking for camera pi updates...
[2026-06-05 06:09:49,936.936 INFO    ] 200
[2026-06-05 06:09:49,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:09:49,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:09:50,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:09:50,023.023 INFO    ] No camera update needed
[2026-06-05 06:09:50,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:09:50,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:09:50,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:09:50,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:09:52,080.080 INFO    ] ================================================
[2026-06-05 06:09:52,095.095 INFO    ] Launching Daemon at Fri Jun  5 06:09:52 IST 2026
[2026-06-05 06:09:52,106.106 INFO    ] ================================================
[2026-06-05 06:09:52,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:09:52
[2026-06-05 06:09:53,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:09:53,757.757 INFO    ] Initializing speech engine...
[2026-06-05 06:09:53,768.768 INFO    ] 2026-06-05 06:09:53
[2026-06-05 06:09:54,076.076 INFO    ] 2026-06-05 06:09:54
[2026-06-05 06:09:54,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:09:54,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:09:54,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:09:54,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:09:54,621.621 INFO    ] time= 05/06/2026 06:09:54
[2026-06-05 06:09:54,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:09:54,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:09:54,765.765 INFO    ] No existing commands found in stream
[2026-06-05 06:09:59,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:09:59,791.791 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 06:10:07,335.335 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:10:07,338.338 INFO    ] Checking for system updates...
[2026-06-05 06:10:07,376.376 INFO    ] 200
[2026-06-05 06:10:07,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:07,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:10:07,435.435 INFO    ] No update needed
[2026-06-05 06:10:07,438.438 INFO    ] Checking for camera pi updates...
[2026-06-05 06:10:07,473.473 INFO    ] 200
[2026-06-05 06:10:07,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:07,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:10:07,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:10:07,566.566 INFO    ] No camera update needed
[2026-06-05 06:10:07,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:10:07,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:10:07,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:10:07,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:10:09,628.628 INFO    ] ================================================
[2026-06-05 06:10:09,682.682 INFO    ] Launching Daemon at Fri Jun  5 06:10:09 IST 2026
[2026-06-05 06:10:09,694.694 INFO    ] ================================================
[2026-06-05 06:10:10,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:10:10
[2026-06-05 06:10:10,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:10:11,158.158 INFO    ] Initializing speech engine...
[2026-06-05 06:10:11,168.168 INFO    ] 2026-06-05 06:10:11
[2026-06-05 06:10:11,417.417 INFO    ] 2026-06-05 06:10:11
[2026-06-05 06:10:11,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:10:11,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:10:11,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:10:11,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:10:11,889.889 INFO    ] time= 05/06/2026 06:10:11
[2026-06-05 06:10:11,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:10:11,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:10:12,065.065 INFO    ] No existing commands found in stream
[2026-06-05 06:10:17,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:10:17,088.088 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 06:10:19,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:10:19,152.152 INFO    ] Checking for system updates...
[2026-06-05 06:10:19,191.191 INFO    ] 200
[2026-06-05 06:10:19,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:19,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:10:19,253.253 INFO    ] No update needed
[2026-06-05 06:10:19,255.255 INFO    ] Checking for camera pi updates...
[2026-06-05 06:10:19,290.290 INFO    ] 200
[2026-06-05 06:10:19,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:19,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:10:19,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:10:19,384.384 INFO    ] No camera update needed
[2026-06-05 06:10:19,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:10:19,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:10:19,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:10:19,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:10:21,443.443 INFO    ] ================================================
[2026-06-05 06:10:21,459.459 INFO    ] Launching Daemon at Fri Jun  5 06:10:21 IST 2026
[2026-06-05 06:10:21,470.470 INFO    ] ================================================
[2026-06-05 06:10:22,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:10:22
[2026-06-05 06:10:22,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:10:22,936.936 INFO    ] Initializing speech engine...
[2026-06-05 06:10:22,945.945 INFO    ] 2026-06-05 06:10:22
[2026-06-05 06:10:23,206.206 INFO    ] 2026-06-05 06:10:23
[2026-06-05 06:10:23,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:10:23,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:10:23,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:10:23,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:10:23,668.668 INFO    ] time= 05/06/2026 06:10:23
[2026-06-05 06:10:23,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:10:23,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:10:23,824.824 INFO    ] No existing commands found in stream
[2026-06-05 06:10:28,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:10:28,859.859 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 06:10:29,953.953 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:10:29,956.956 INFO    ] Checking for system updates...
[2026-06-05 06:10:29,991.991 INFO    ] 200
[2026-06-05 06:10:29,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:30,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:10:30,059.059 INFO    ] No update needed
[2026-06-05 06:10:30,062.062 INFO    ] Checking for camera pi updates...
[2026-06-05 06:10:30,096.096 INFO    ] 200
[2026-06-05 06:10:30,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:30,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:10:30,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:10:30,196.196 INFO    ] No camera update needed
[2026-06-05 06:10:30,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:10:30,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:10:30,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:10:30,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:10:32,255.255 INFO    ] ================================================
[2026-06-05 06:10:32,272.272 INFO    ] Launching Daemon at Fri Jun  5 06:10:32 IST 2026
[2026-06-05 06:10:32,283.283 INFO    ] ================================================
[2026-06-05 06:10:32,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:10:32
[2026-06-05 06:10:33,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:10:33,722.722 INFO    ] Initializing speech engine...
[2026-06-05 06:10:33,729.729 INFO    ] 2026-06-05 06:10:33
[2026-06-05 06:10:34,027.027 INFO    ] 2026-06-05 06:10:33
[2026-06-05 06:10:34,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:10:34,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:10:34,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:10:34,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:10:34,405.405 INFO    ] time= 05/06/2026 06:10:34
[2026-06-05 06:10:34,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:10:34,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:10:34,528.528 INFO    ] No existing commands found in stream
[2026-06-05 06:10:39,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:10:39,540.540 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 06:10:41,574.574 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:10:41,577.577 INFO    ] Checking for system updates...
[2026-06-05 06:10:41,614.614 INFO    ] 200
[2026-06-05 06:10:41,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:41,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:10:41,672.672 INFO    ] No update needed
[2026-06-05 06:10:41,674.674 INFO    ] Checking for camera pi updates...
[2026-06-05 06:10:41,708.708 INFO    ] 200
[2026-06-05 06:10:41,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:41,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:10:41,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:10:41,897.897 INFO    ] No camera update needed
[2026-06-05 06:10:41,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:10:41,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:10:41,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:10:41,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:10:43,953.953 INFO    ] ================================================
[2026-06-05 06:10:43,968.968 INFO    ] Launching Daemon at Fri Jun  5 06:10:43 IST 2026
[2026-06-05 06:10:43,978.978 INFO    ] ================================================
[2026-06-05 06:10:44,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:10:44
[2026-06-05 06:10:45,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:10:45,394.394 INFO    ] Initializing speech engine...
[2026-06-05 06:10:45,403.403 INFO    ] 2026-06-05 06:10:45
[2026-06-05 06:10:45,695.695 INFO    ] 2026-06-05 06:10:45
[2026-06-05 06:10:45,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:10:45,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:10:45,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:10:46,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:10:46,090.090 INFO    ] time= 05/06/2026 06:10:46
[2026-06-05 06:10:46,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:10:46,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:10:46,196.196 INFO    ] No existing commands found in stream
[2026-06-05 06:10:51,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:10:51,211.211 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 06:10:52,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:10:52,752.752 INFO    ] Checking for system updates...
[2026-06-05 06:10:52,787.787 INFO    ] 200
[2026-06-05 06:10:52,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:52,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:10:52,848.848 INFO    ] No update needed
[2026-06-05 06:10:52,851.851 INFO    ] Checking for camera pi updates...
[2026-06-05 06:10:52,884.884 INFO    ] 200
[2026-06-05 06:10:52,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:10:52,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:10:52,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:10:52,970.970 INFO    ] No camera update needed
[2026-06-05 06:10:52,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:10:52,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:10:52,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:10:52,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:10:55,027.027 INFO    ] ================================================
[2026-06-05 06:10:55,042.042 INFO    ] Launching Daemon at Fri Jun  5 06:10:55 IST 2026
[2026-06-05 06:10:55,054.054 INFO    ] ================================================
[2026-06-05 06:10:55,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:10:55
[2026-06-05 06:10:56,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:10:56,560.560 INFO    ] Initializing speech engine...
[2026-06-05 06:10:56,568.568 INFO    ] 2026-06-05 06:10:56
[2026-06-05 06:10:56,831.831 INFO    ] 2026-06-05 06:10:56
[2026-06-05 06:10:56,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:10:57,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:10:57,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:10:57,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:10:57,281.281 INFO    ] time= 05/06/2026 06:10:57
[2026-06-05 06:10:57,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:10:57,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:10:57,441.441 INFO    ] No existing commands found in stream
[2026-06-05 06:11:02,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:11:02,457.457 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 06:11:05,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:11:05,706.706 INFO    ] Checking for system updates...
[2026-06-05 06:11:05,747.747 INFO    ] 200
[2026-06-05 06:11:05,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:05,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:11:05,805.805 INFO    ] No update needed
[2026-06-05 06:11:05,807.807 INFO    ] Checking for camera pi updates...
[2026-06-05 06:11:05,843.843 INFO    ] 200
[2026-06-05 06:11:05,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:05,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:11:05,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:11:05,931.931 INFO    ] No camera update needed
[2026-06-05 06:11:05,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:11:05,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:11:05,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:11:05,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:11:07,988.988 INFO    ] ================================================
[2026-06-05 06:11:08,004.004 INFO    ] Launching Daemon at Fri Jun  5 06:11:07 IST 2026
[2026-06-05 06:11:08,014.014 INFO    ] ================================================
[2026-06-05 06:11:08,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:11:08
[2026-06-05 06:11:09,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:11:09,479.479 INFO    ] Initializing speech engine...
[2026-06-05 06:11:09,488.488 INFO    ] 2026-06-05 06:11:09
[2026-06-05 06:11:09,802.802 INFO    ] 2026-06-05 06:11:09
[2026-06-05 06:11:09,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:11:10,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:11:10,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:11:10,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:11:10,241.241 INFO    ] time= 05/06/2026 06:11:10
[2026-06-05 06:11:10,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:11:10,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:11:10,441.441 INFO    ] No existing commands found in stream
[2026-06-05 06:11:15,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:11:15,478.478 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 06:11:17,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:11:17,207.207 INFO    ] Checking for system updates...
[2026-06-05 06:11:17,244.244 INFO    ] 200
[2026-06-05 06:11:17,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:17,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:11:17,303.303 INFO    ] No update needed
[2026-06-05 06:11:17,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 06:11:17,341.341 INFO    ] 200
[2026-06-05 06:11:17,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:17,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:11:17,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:11:17,440.440 INFO    ] No camera update needed
[2026-06-05 06:11:17,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:11:17,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:11:17,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:11:17,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:11:19,499.499 INFO    ] ================================================
[2026-06-05 06:11:19,514.514 INFO    ] Launching Daemon at Fri Jun  5 06:11:19 IST 2026
[2026-06-05 06:11:19,525.525 INFO    ] ================================================
[2026-06-05 06:11:20,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:11:20
[2026-06-05 06:11:20,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:11:21,002.002 INFO    ] Initializing speech engine...
[2026-06-05 06:11:21,012.012 INFO    ] 2026-06-05 06:11:21
[2026-06-05 06:11:21,281.281 INFO    ] 2026-06-05 06:11:21
[2026-06-05 06:11:21,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:11:21,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:11:21,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:11:21,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:11:21,695.695 INFO    ] time= 05/06/2026 06:11:21
[2026-06-05 06:11:21,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:11:21,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:11:21,867.867 INFO    ] No existing commands found in stream
[2026-06-05 06:11:26,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:11:26,896.896 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 06:11:28,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:11:28,349.349 INFO    ] Checking for system updates...
[2026-06-05 06:11:28,385.385 INFO    ] 200
[2026-06-05 06:11:28,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:28,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:11:28,442.442 INFO    ] No update needed
[2026-06-05 06:11:28,444.444 INFO    ] Checking for camera pi updates...
[2026-06-05 06:11:28,477.477 INFO    ] 200
[2026-06-05 06:11:28,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:28,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:11:28,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:11:28,563.563 INFO    ] No camera update needed
[2026-06-05 06:11:28,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:11:28,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:11:28,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:11:28,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:11:30,618.618 INFO    ] ================================================
[2026-06-05 06:11:30,633.633 INFO    ] Launching Daemon at Fri Jun  5 06:11:30 IST 2026
[2026-06-05 06:11:30,644.644 INFO    ] ================================================
[2026-06-05 06:11:31,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:11:31
[2026-06-05 06:11:31,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:11:32,209.209 INFO    ] Initializing speech engine...
[2026-06-05 06:11:32,215.215 INFO    ] 2026-06-05 06:11:32
[2026-06-05 06:11:32,511.511 INFO    ] 2026-06-05 06:11:32
[2026-06-05 06:11:32,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:11:32,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:11:32,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:11:32,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:11:32,911.911 INFO    ] time= 05/06/2026 06:11:32
[2026-06-05 06:11:32,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:11:32,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:11:33,077.077 INFO    ] No existing commands found in stream
[2026-06-05 06:11:38,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:11:38,110.110 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 06:11:42,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:11:42,269.269 INFO    ] Checking for system updates...
[2026-06-05 06:11:42,305.305 INFO    ] 200
[2026-06-05 06:11:42,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:42,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:11:42,370.370 INFO    ] No update needed
[2026-06-05 06:11:42,373.373 INFO    ] Checking for camera pi updates...
[2026-06-05 06:11:42,407.407 INFO    ] 200
[2026-06-05 06:11:42,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:42,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:11:42,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:11:42,499.499 INFO    ] No camera update needed
[2026-06-05 06:11:42,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:11:42,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:11:42,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:11:42,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:11:44,554.554 INFO    ] ================================================
[2026-06-05 06:11:44,569.569 INFO    ] Launching Daemon at Fri Jun  5 06:11:44 IST 2026
[2026-06-05 06:11:44,581.581 INFO    ] ================================================
[2026-06-05 06:11:45,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:11:45
[2026-06-05 06:11:45,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:11:46,028.028 INFO    ] Initializing speech engine...
[2026-06-05 06:11:46,037.037 INFO    ] 2026-06-05 06:11:46
[2026-06-05 06:11:46,332.332 INFO    ] 2026-06-05 06:11:46
[2026-06-05 06:11:46,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:11:46,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:11:46,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:11:46,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:11:46,752.752 INFO    ] time= 05/06/2026 06:11:46
[2026-06-05 06:11:46,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:11:46,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:11:46,912.912 INFO    ] No existing commands found in stream
[2026-06-05 06:11:51,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:11:51,940.940 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 06:11:55,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:11:55,585.585 INFO    ] Checking for system updates...
[2026-06-05 06:11:55,622.622 INFO    ] 200
[2026-06-05 06:11:55,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:55,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:11:55,680.680 INFO    ] No update needed
[2026-06-05 06:11:55,682.682 INFO    ] Checking for camera pi updates...
[2026-06-05 06:11:55,716.716 INFO    ] 200
[2026-06-05 06:11:55,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:11:55,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:11:55,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:11:55,806.806 INFO    ] No camera update needed
[2026-06-05 06:11:55,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:11:55,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:11:55,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:11:55,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:11:57,861.861 INFO    ] ================================================
[2026-06-05 06:11:57,877.877 INFO    ] Launching Daemon at Fri Jun  5 06:11:57 IST 2026
[2026-06-05 06:11:57,888.888 INFO    ] ================================================
[2026-06-05 06:11:58,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:11:58
[2026-06-05 06:11:59,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:11:59,342.342 INFO    ] Initializing speech engine...
[2026-06-05 06:11:59,348.348 INFO    ] 2026-06-05 06:11:59
[2026-06-05 06:11:59,646.646 INFO    ] 2026-06-05 06:11:59
[2026-06-05 06:11:59,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:11:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:11:59,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:12:00,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:12:00,070.070 INFO    ] time= 05/06/2026 06:12:00
[2026-06-05 06:12:00,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:12:00,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:12:00,154.154 INFO    ] No existing commands found in stream
[2026-06-05 06:12:05,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:12:05,170.170 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 06:12:05,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:12:05,930.930 INFO    ] Checking for system updates...
[2026-06-05 06:12:05,966.966 INFO    ] 200
[2026-06-05 06:12:05,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:06,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:12:06,026.026 INFO    ] No update needed
[2026-06-05 06:12:06,029.029 INFO    ] Checking for camera pi updates...
[2026-06-05 06:12:06,064.064 INFO    ] 200
[2026-06-05 06:12:06,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:06,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:12:06,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:12:06,154.154 INFO    ] No camera update needed
[2026-06-05 06:12:06,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:12:06,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:12:06,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:12:06,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:12:08,210.210 INFO    ] ================================================
[2026-06-05 06:12:08,226.226 INFO    ] Launching Daemon at Fri Jun  5 06:12:08 IST 2026
[2026-06-05 06:12:08,237.237 INFO    ] ================================================
[2026-06-05 06:12:08,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:12:08
[2026-06-05 06:12:09,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:12:09,674.674 INFO    ] Initializing speech engine...
[2026-06-05 06:12:09,698.698 INFO    ] 2026-06-05 06:12:09
[2026-06-05 06:12:09,954.954 INFO    ] 2026-06-05 06:12:09
[2026-06-05 06:12:09,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:12:10,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:12:10,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:12:10,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:12:10,331.331 INFO    ] time= 05/06/2026 06:12:10
[2026-06-05 06:12:10,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:12:10,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:12:10,408.408 INFO    ] No existing commands found in stream
[2026-06-05 06:12:15,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:12:15,420.420 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 06:12:17,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:12:17,050.050 INFO    ] Checking for system updates...
[2026-06-05 06:12:17,090.090 INFO    ] 200
[2026-06-05 06:12:17,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:17,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:12:17,148.148 INFO    ] No update needed
[2026-06-05 06:12:17,150.150 INFO    ] Checking for camera pi updates...
[2026-06-05 06:12:17,188.188 INFO    ] 200
[2026-06-05 06:12:17,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:17,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:12:17,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:12:17,284.284 INFO    ] No camera update needed
[2026-06-05 06:12:17,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:12:17,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:12:17,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:12:17,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:12:19,341.341 INFO    ] ================================================
[2026-06-05 06:12:19,357.357 INFO    ] Launching Daemon at Fri Jun  5 06:12:19 IST 2026
[2026-06-05 06:12:19,368.368 INFO    ] ================================================
[2026-06-05 06:12:19,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:12:19
[2026-06-05 06:12:20,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:12:20,788.788 INFO    ] Initializing speech engine...
[2026-06-05 06:12:20,797.797 INFO    ] 2026-06-05 06:12:20
[2026-06-05 06:12:21,096.096 INFO    ] 2026-06-05 06:12:21
[2026-06-05 06:12:21,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:12:21,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:12:21,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:12:21,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:12:21,497.497 INFO    ] time= 05/06/2026 06:12:21
[2026-06-05 06:12:21,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:12:21,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:12:21,592.592 INFO    ] No existing commands found in stream
[2026-06-05 06:12:26,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:12:26,608.608 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 06:12:28,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:12:28,341.341 INFO    ] Checking for system updates...
[2026-06-05 06:12:28,379.379 INFO    ] 200
[2026-06-05 06:12:28,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:28,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:12:28,439.439 INFO    ] No update needed
[2026-06-05 06:12:28,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 06:12:28,477.477 INFO    ] 200
[2026-06-05 06:12:28,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:28,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:12:28,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:12:28,572.572 INFO    ] No camera update needed
[2026-06-05 06:12:28,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:12:28,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:12:28,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:12:28,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:12:30,632.632 INFO    ] ================================================
[2026-06-05 06:12:30,648.648 INFO    ] Launching Daemon at Fri Jun  5 06:12:30 IST 2026
[2026-06-05 06:12:30,659.659 INFO    ] ================================================
[2026-06-05 06:12:31,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:12:31
[2026-06-05 06:12:32,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:12:32,393.393 INFO    ] Initializing speech engine...
[2026-06-05 06:12:32,405.405 INFO    ] 2026-06-05 06:12:32
[2026-06-05 06:12:32,712.712 INFO    ] 2026-06-05 06:12:32
[2026-06-05 06:12:32,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:12:33,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:12:33,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:12:33,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:12:33,186.186 INFO    ] time= 05/06/2026 06:12:33
[2026-06-05 06:12:33,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:12:33,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:12:33,338.338 INFO    ] No existing commands found in stream
[2026-06-05 06:12:38,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:12:38,355.355 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 06:12:40,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:12:40,316.316 INFO    ] Checking for system updates...
[2026-06-05 06:12:40,354.354 INFO    ] 200
[2026-06-05 06:12:40,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:40,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:12:40,414.414 INFO    ] No update needed
[2026-06-05 06:12:40,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 06:12:40,462.462 INFO    ] 200
[2026-06-05 06:12:40,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:40,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:12:40,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:12:40,562.562 INFO    ] No camera update needed
[2026-06-05 06:12:40,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:12:40,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:12:40,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:12:40,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:12:42,622.622 INFO    ] ================================================
[2026-06-05 06:12:42,638.638 INFO    ] Launching Daemon at Fri Jun  5 06:12:42 IST 2026
[2026-06-05 06:12:42,649.649 INFO    ] ================================================
[2026-06-05 06:12:43,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:12:43
[2026-06-05 06:12:43,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:12:44,051.051 INFO    ] Initializing speech engine...
[2026-06-05 06:12:44,059.059 INFO    ] 2026-06-05 06:12:44
[2026-06-05 06:12:44,335.335 INFO    ] 2026-06-05 06:12:44
[2026-06-05 06:12:44,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:12:44,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:12:44,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:12:44,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:12:44,809.809 INFO    ] time= 05/06/2026 06:12:44
[2026-06-05 06:12:44,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:12:44,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:12:44,986.986 INFO    ] No existing commands found in stream
[2026-06-05 06:12:50,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:12:50,008.008 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 06:12:53,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:12:53,009.009 INFO    ] Checking for system updates...
[2026-06-05 06:12:53,046.046 INFO    ] 200
[2026-06-05 06:12:53,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:53,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:12:53,110.110 INFO    ] No update needed
[2026-06-05 06:12:53,113.113 INFO    ] Checking for camera pi updates...
[2026-06-05 06:12:53,150.150 INFO    ] 200
[2026-06-05 06:12:53,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:12:53,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:12:53,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:12:53,342.342 INFO    ] No camera update needed
[2026-06-05 06:12:53,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:12:53,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:12:53,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:12:53,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:12:55,398.398 INFO    ] ================================================
[2026-06-05 06:12:55,413.413 INFO    ] Launching Daemon at Fri Jun  5 06:12:55 IST 2026
[2026-06-05 06:12:55,424.424 INFO    ] ================================================
[2026-06-05 06:12:55,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:12:55
[2026-06-05 06:12:56,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:12:56,850.850 INFO    ] Initializing speech engine...
[2026-06-05 06:12:56,856.856 INFO    ] 2026-06-05 06:12:56
[2026-06-05 06:12:57,156.156 INFO    ] 2026-06-05 06:12:57
[2026-06-05 06:12:57,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:12:57,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:12:57,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:12:57,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:12:57,540.540 INFO    ] time= 05/06/2026 06:12:57
[2026-06-05 06:12:57,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:12:57,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:12:57,668.668 INFO    ] No existing commands found in stream
[2026-06-05 06:13:02,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:13:02,680.680 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 06:13:05,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:13:05,290.290 INFO    ] Checking for system updates...
[2026-06-05 06:13:05,327.327 INFO    ] 200
[2026-06-05 06:13:05,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:05,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:13:05,394.394 INFO    ] No update needed
[2026-06-05 06:13:05,396.396 INFO    ] Checking for camera pi updates...
[2026-06-05 06:13:05,432.432 INFO    ] 200
[2026-06-05 06:13:05,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:05,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:13:05,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:13:05,509.509 INFO    ] No camera update needed
[2026-06-05 06:13:05,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:13:05,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:13:05,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:13:05,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:13:07,568.568 INFO    ] ================================================
[2026-06-05 06:13:07,582.582 INFO    ] Launching Daemon at Fri Jun  5 06:13:07 IST 2026
[2026-06-05 06:13:07,593.593 INFO    ] ================================================
[2026-06-05 06:13:08,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:13:08
[2026-06-05 06:13:08,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:13:09,059.059 INFO    ] Initializing speech engine...
[2026-06-05 06:13:09,069.069 INFO    ] 2026-06-05 06:13:09
[2026-06-05 06:13:09,331.331 INFO    ] 2026-06-05 06:13:09
[2026-06-05 06:13:09,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:13:09,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:13:09,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:13:09,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:13:09,813.813 INFO    ] time= 05/06/2026 06:13:09
[2026-06-05 06:13:09,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:13:09,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:13:09,958.958 INFO    ] No existing commands found in stream
[2026-06-05 06:13:14,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:13:14,970.970 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 06:13:19,285.285 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:13:19,288.288 INFO    ] Checking for system updates...
[2026-06-05 06:13:19,323.323 INFO    ] 200
[2026-06-05 06:13:19,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:19,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:13:19,381.381 INFO    ] No update needed
[2026-06-05 06:13:19,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 06:13:19,425.425 INFO    ] 200
[2026-06-05 06:13:19,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:19,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:13:19,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:13:19,518.518 INFO    ] No camera update needed
[2026-06-05 06:13:19,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:13:19,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:13:19,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:13:19,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:13:21,575.575 INFO    ] ================================================
[2026-06-05 06:13:21,590.590 INFO    ] Launching Daemon at Fri Jun  5 06:13:21 IST 2026
[2026-06-05 06:13:21,601.601 INFO    ] ================================================
[2026-06-05 06:13:22,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:13:22
[2026-06-05 06:13:22,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:13:23,049.049 INFO    ] Initializing speech engine...
[2026-06-05 06:13:23,055.055 INFO    ] 2026-06-05 06:13:23
[2026-06-05 06:13:23,353.353 INFO    ] 2026-06-05 06:13:23
[2026-06-05 06:13:23,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:13:23,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:13:23,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:13:23,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:13:23,738.738 INFO    ] time= 05/06/2026 06:13:23
[2026-06-05 06:13:23,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:13:23,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:13:23,863.863 INFO    ] No existing commands found in stream
[2026-06-05 06:13:28,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:13:28,879.879 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 06:13:30,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:13:30,888.888 INFO    ] Checking for system updates...
[2026-06-05 06:13:30,929.929 INFO    ] 200
[2026-06-05 06:13:30,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:30,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:13:30,995.995 INFO    ] No update needed
[2026-06-05 06:13:30,999.999 INFO    ] Checking for camera pi updates...
[2026-06-05 06:13:31,034.034 INFO    ] 200
[2026-06-05 06:13:31,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:31,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:13:31,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:13:31,130.130 INFO    ] No camera update needed
[2026-06-05 06:13:31,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:13:31,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:13:31,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:13:31,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:13:33,191.191 INFO    ] ================================================
[2026-06-05 06:13:33,207.207 INFO    ] Launching Daemon at Fri Jun  5 06:13:33 IST 2026
[2026-06-05 06:13:33,217.217 INFO    ] ================================================
[2026-06-05 06:13:33,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:13:33
[2026-06-05 06:13:34,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:13:34,843.843 INFO    ] Initializing speech engine...
[2026-06-05 06:13:34,857.857 INFO    ] 2026-06-05 06:13:34
[2026-06-05 06:13:35,166.166 INFO    ] 2026-06-05 06:13:35
[2026-06-05 06:13:35,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:13:35,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:13:35,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:13:35,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:13:35,676.676 INFO    ] time= 05/06/2026 06:13:35
[2026-06-05 06:13:35,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:13:35,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:13:35,778.778 INFO    ] No existing commands found in stream
[2026-06-05 06:13:40,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:13:40,818.818 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 06:13:44,903.903 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:13:44,906.906 INFO    ] Checking for system updates...
[2026-06-05 06:13:44,942.942 INFO    ] 200
[2026-06-05 06:13:44,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:44,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:13:45,001.001 INFO    ] No update needed
[2026-06-05 06:13:45,003.003 INFO    ] Checking for camera pi updates...
[2026-06-05 06:13:45,037.037 INFO    ] 200
[2026-06-05 06:13:45,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:45,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:13:45,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:13:45,129.129 INFO    ] No camera update needed
[2026-06-05 06:13:45,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:13:45,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:13:45,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:13:45,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:13:47,185.185 INFO    ] ================================================
[2026-06-05 06:13:47,199.199 INFO    ] Launching Daemon at Fri Jun  5 06:13:47 IST 2026
[2026-06-05 06:13:47,210.210 INFO    ] ================================================
[2026-06-05 06:13:47,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:13:47
[2026-06-05 06:13:48,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:13:48,623.623 INFO    ] Initializing speech engine...
[2026-06-05 06:13:48,647.647 INFO    ] 2026-06-05 06:13:48
[2026-06-05 06:13:48,923.923 INFO    ] 2026-06-05 06:13:48
[2026-06-05 06:13:48,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:13:49,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:13:49,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:13:49,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:13:49,300.300 INFO    ] time= 05/06/2026 06:13:49
[2026-06-05 06:13:49,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:13:49,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:13:49,425.425 INFO    ] No existing commands found in stream
[2026-06-05 06:13:54,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:13:54,438.438 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 06:13:56,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:13:56,008.008 INFO    ] Checking for system updates...
[2026-06-05 06:13:56,044.044 INFO    ] 200
[2026-06-05 06:13:56,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:56,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:13:56,102.102 INFO    ] No update needed
[2026-06-05 06:13:56,104.104 INFO    ] Checking for camera pi updates...
[2026-06-05 06:13:56,138.138 INFO    ] 200
[2026-06-05 06:13:56,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:13:56,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:13:56,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:13:56,228.228 INFO    ] No camera update needed
[2026-06-05 06:13:56,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:13:56,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:13:56,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:13:56,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:13:58,283.283 INFO    ] ================================================
[2026-06-05 06:13:58,298.298 INFO    ] Launching Daemon at Fri Jun  5 06:13:58 IST 2026
[2026-06-05 06:13:58,310.310 INFO    ] ================================================
[2026-06-05 06:13:58,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:13:58
[2026-06-05 06:13:59,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:13:59,764.764 INFO    ] Initializing speech engine...
[2026-06-05 06:13:59,774.774 INFO    ] 2026-06-05 06:13:59
[2026-06-05 06:14:00,028.028 INFO    ] 2026-06-05 06:14:00
[2026-06-05 06:14:00,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:14:00,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:14:00,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:14:00,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:14:00,503.503 INFO    ] time= 05/06/2026 06:14:00
[2026-06-05 06:14:00,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:14:00,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:14:00,654.654 INFO    ] No existing commands found in stream
[2026-06-05 06:14:05,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:14:05,693.693 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 06:14:07,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:14:07,910.910 INFO    ] Checking for system updates...
[2026-06-05 06:14:07,947.947 INFO    ] 200
[2026-06-05 06:14:07,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:08,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:14:08,006.006 INFO    ] No update needed
[2026-06-05 06:14:08,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 06:14:08,042.042 INFO    ] 200
[2026-06-05 06:14:08,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:08,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:14:08,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:14:08,132.132 INFO    ] No camera update needed
[2026-06-05 06:14:08,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:14:08,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:14:08,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:14:08,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:14:10,189.189 INFO    ] ================================================
[2026-06-05 06:14:10,204.204 INFO    ] Launching Daemon at Fri Jun  5 06:14:10 IST 2026
[2026-06-05 06:14:10,216.216 INFO    ] ================================================
[2026-06-05 06:14:10,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:14:10
[2026-06-05 06:14:11,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:14:11,818.818 INFO    ] Initializing speech engine...
[2026-06-05 06:14:11,828.828 INFO    ] 2026-06-05 06:14:11
[2026-06-05 06:14:12,114.114 INFO    ] 2026-06-05 06:14:12
[2026-06-05 06:14:12,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:14:12,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:14:12,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:14:12,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:14:12,575.575 INFO    ] time= 05/06/2026 06:14:12
[2026-06-05 06:14:12,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:14:12,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:14:12,776.776 INFO    ] No existing commands found in stream
[2026-06-05 06:14:17,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:14:17,805.805 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 06:14:21,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:14:21,963.963 INFO    ] Checking for system updates...
[2026-06-05 06:14:22,000.000 INFO    ] 200
[2026-06-05 06:14:22,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:22,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:14:22,060.060 INFO    ] No update needed
[2026-06-05 06:14:22,062.062 INFO    ] Checking for camera pi updates...
[2026-06-05 06:14:22,097.097 INFO    ] 200
[2026-06-05 06:14:22,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:22,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:14:22,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:14:22,184.184 INFO    ] No camera update needed
[2026-06-05 06:14:22,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:14:22,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:14:22,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:14:22,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:14:24,242.242 INFO    ] ================================================
[2026-06-05 06:14:24,258.258 INFO    ] Launching Daemon at Fri Jun  5 06:14:24 IST 2026
[2026-06-05 06:14:24,269.269 INFO    ] ================================================
[2026-06-05 06:14:24,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:14:24
[2026-06-05 06:14:25,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:14:25,737.737 INFO    ] Initializing speech engine...
[2026-06-05 06:14:25,746.746 INFO    ] 2026-06-05 06:14:25
[2026-06-05 06:14:26,006.006 INFO    ] 2026-06-05 06:14:26
[2026-06-05 06:14:26,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:14:26,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:14:26,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:14:26,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:14:26,421.421 INFO    ] time= 05/06/2026 06:14:26
[2026-06-05 06:14:26,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:14:26,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:14:26,505.505 INFO    ] No existing commands found in stream
[2026-06-05 06:14:31,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:14:31,521.521 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 06:14:31,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:14:31,988.988 INFO    ] Checking for system updates...
[2026-06-05 06:14:32,027.027 INFO    ] 200
[2026-06-05 06:14:32,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:32,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:14:32,090.090 INFO    ] No update needed
[2026-06-05 06:14:32,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 06:14:32,132.132 INFO    ] 200
[2026-06-05 06:14:32,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:32,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:14:32,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:14:32,219.219 INFO    ] No camera update needed
[2026-06-05 06:14:32,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:14:32,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:14:32,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:14:32,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:14:34,279.279 INFO    ] ================================================
[2026-06-05 06:14:34,294.294 INFO    ] Launching Daemon at Fri Jun  5 06:14:34 IST 2026
[2026-06-05 06:14:34,305.305 INFO    ] ================================================
[2026-06-05 06:14:34,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:14:34
[2026-06-05 06:14:35,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:14:35,904.904 INFO    ] Initializing speech engine...
[2026-06-05 06:14:35,917.917 INFO    ] 2026-06-05 06:14:35
[2026-06-05 06:14:36,202.202 INFO    ] 2026-06-05 06:14:36
[2026-06-05 06:14:36,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:14:36,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:14:36,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:14:36,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:14:36,562.562 INFO    ] time= 05/06/2026 06:14:36
[2026-06-05 06:14:36,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:14:36,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:14:36,754.754 INFO    ] No existing commands found in stream
[2026-06-05 06:14:41,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:14:41,776.776 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 06:14:43,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:14:43,209.209 INFO    ] Checking for system updates...
[2026-06-05 06:14:43,246.246 INFO    ] 200
[2026-06-05 06:14:43,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:43,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:14:43,304.304 INFO    ] No update needed
[2026-06-05 06:14:43,307.307 INFO    ] Checking for camera pi updates...
[2026-06-05 06:14:43,342.342 INFO    ] 200
[2026-06-05 06:14:43,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:43,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:14:43,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:14:43,431.431 INFO    ] No camera update needed
[2026-06-05 06:14:43,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:14:43,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:14:43,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:14:43,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:14:45,492.492 INFO    ] ================================================
[2026-06-05 06:14:45,507.507 INFO    ] Launching Daemon at Fri Jun  5 06:14:45 IST 2026
[2026-06-05 06:14:45,519.519 INFO    ] ================================================
[2026-06-05 06:14:46,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:14:46
[2026-06-05 06:14:46,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:14:47,133.133 INFO    ] Initializing speech engine...
[2026-06-05 06:14:47,139.139 INFO    ] 2026-06-05 06:14:47
[2026-06-05 06:14:47,447.447 INFO    ] 2026-06-05 06:14:47
[2026-06-05 06:14:47,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:14:47,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:14:47,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:14:47,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:14:47,952.952 INFO    ] time= 05/06/2026 06:14:47
[2026-06-05 06:14:47,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:14:47,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:14:48,111.111 INFO    ] No existing commands found in stream
[2026-06-05 06:14:53,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:14:53,129.129 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 06:14:53,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:14:53,880.880 INFO    ] Checking for system updates...
[2026-06-05 06:14:53,917.917 INFO    ] 200
[2026-06-05 06:14:53,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:53,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:14:53,976.976 INFO    ] No update needed
[2026-06-05 06:14:53,978.978 INFO    ] Checking for camera pi updates...
[2026-06-05 06:14:54,013.013 INFO    ] 200
[2026-06-05 06:14:54,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:14:54,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:14:54,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:14:54,107.107 INFO    ] No camera update needed
[2026-06-05 06:14:54,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:14:54,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:14:54,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:14:54,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:14:56,166.166 INFO    ] ================================================
[2026-06-05 06:14:56,181.181 INFO    ] Launching Daemon at Fri Jun  5 06:14:56 IST 2026
[2026-06-05 06:14:56,192.192 INFO    ] ================================================
[2026-06-05 06:14:56,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:14:56
[2026-06-05 06:14:57,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:14:57,597.597 INFO    ] Initializing speech engine...
[2026-06-05 06:14:57,603.603 INFO    ] 2026-06-05 06:14:57
[2026-06-05 06:14:57,895.895 INFO    ] 2026-06-05 06:14:57
[2026-06-05 06:14:57,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:14:58,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:14:58,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:14:58,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:14:58,306.306 INFO    ] time= 05/06/2026 06:14:58
[2026-06-05 06:14:58,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:14:58,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:14:58,392.392 INFO    ] No existing commands found in stream
[2026-06-05 06:15:03,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:15:03,409.409 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 06:15:06,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:15:06,599.599 INFO    ] Checking for system updates...
[2026-06-05 06:15:06,653.653 INFO    ] 200
[2026-06-05 06:15:06,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:06,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:15:06,738.738 INFO    ] No update needed
[2026-06-05 06:15:06,741.741 INFO    ] Checking for camera pi updates...
[2026-06-05 06:15:06,778.778 INFO    ] 200
[2026-06-05 06:15:06,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:06,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:15:06,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:15:06,874.874 INFO    ] No camera update needed
[2026-06-05 06:15:06,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:15:06,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:15:06,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:15:06,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:15:08,936.936 INFO    ] ================================================
[2026-06-05 06:15:08,952.952 INFO    ] Launching Daemon at Fri Jun  5 06:15:08 IST 2026
[2026-06-05 06:15:08,963.963 INFO    ] ================================================
[2026-06-05 06:15:09,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:15:09
[2026-06-05 06:15:10,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:15:10,376.376 INFO    ] Initializing speech engine...
[2026-06-05 06:15:10,389.389 INFO    ] 2026-06-05 06:15:10
[2026-06-05 06:15:10,668.668 INFO    ] 2026-06-05 06:15:10
[2026-06-05 06:15:10,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:15:10,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:15:10,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:15:11,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:15:11,065.065 INFO    ] time= 05/06/2026 06:15:11
[2026-06-05 06:15:11,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:15:11,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:15:11,152.152 INFO    ] No existing commands found in stream
[2026-06-05 06:15:16,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:15:16,168.168 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 06:15:19,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:15:19,885.885 INFO    ] Checking for system updates...
[2026-06-05 06:15:19,920.920 INFO    ] 200
[2026-06-05 06:15:19,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:19,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:15:19,978.978 INFO    ] No update needed
[2026-06-05 06:15:19,980.980 INFO    ] Checking for camera pi updates...
[2026-06-05 06:15:20,014.014 INFO    ] 200
[2026-06-05 06:15:20,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:20,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:15:20,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:15:20,117.117 INFO    ] No camera update needed
[2026-06-05 06:15:20,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:15:20,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:15:20,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:15:20,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:15:22,173.173 INFO    ] ================================================
[2026-06-05 06:15:22,188.188 INFO    ] Launching Daemon at Fri Jun  5 06:15:22 IST 2026
[2026-06-05 06:15:22,198.198 INFO    ] ================================================
[2026-06-05 06:15:22,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:15:22
[2026-06-05 06:15:23,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:15:23,610.610 INFO    ] Initializing speech engine...
[2026-06-05 06:15:23,624.624 INFO    ] 2026-06-05 06:15:23
[2026-06-05 06:15:23,906.906 INFO    ] 2026-06-05 06:15:23
[2026-06-05 06:15:23,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:15:24,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:15:24,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:15:24,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:15:24,275.275 INFO    ] time= 05/06/2026 06:15:24
[2026-06-05 06:15:24,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:15:24,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:15:24,397.397 INFO    ] No existing commands found in stream
[2026-06-05 06:15:29,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:15:29,412.412 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 06:15:31,716.716 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:15:31,719.719 INFO    ] Checking for system updates...
[2026-06-05 06:15:31,757.757 INFO    ] 200
[2026-06-05 06:15:31,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:31,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:15:31,815.815 INFO    ] No update needed
[2026-06-05 06:15:31,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 06:15:31,856.856 INFO    ] 200
[2026-06-05 06:15:31,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:31,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:15:31,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:15:31,957.957 INFO    ] No camera update needed
[2026-06-05 06:15:31,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:15:31,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:15:31,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:15:31,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:15:34,016.016 INFO    ] ================================================
[2026-06-05 06:15:34,032.032 INFO    ] Launching Daemon at Fri Jun  5 06:15:34 IST 2026
[2026-06-05 06:15:34,042.042 INFO    ] ================================================
[2026-06-05 06:15:34,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:15:34
[2026-06-05 06:15:35,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:15:35,627.627 INFO    ] Initializing speech engine...
[2026-06-05 06:15:35,636.636 INFO    ] 2026-06-05 06:15:35
[2026-06-05 06:15:35,906.906 INFO    ] 2026-06-05 06:15:35
[2026-06-05 06:15:35,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:15:36,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:15:36,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:15:36,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:15:36,373.373 INFO    ] time= 05/06/2026 06:15:36
[2026-06-05 06:15:36,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:15:36,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:15:36,526.526 INFO    ] No existing commands found in stream
[2026-06-05 06:15:41,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:15:41,550.550 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 06:15:45,542.542 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:15:45,545.545 INFO    ] Checking for system updates...
[2026-06-05 06:15:45,582.582 INFO    ] 200
[2026-06-05 06:15:45,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:45,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:15:45,646.646 INFO    ] No update needed
[2026-06-05 06:15:45,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 06:15:45,684.684 INFO    ] 200
[2026-06-05 06:15:45,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:45,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:15:45,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:15:45,773.773 INFO    ] No camera update needed
[2026-06-05 06:15:45,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:15:45,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:15:45,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:15:45,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:15:47,831.831 INFO    ] ================================================
[2026-06-05 06:15:47,846.846 INFO    ] Launching Daemon at Fri Jun  5 06:15:47 IST 2026
[2026-06-05 06:15:47,858.858 INFO    ] ================================================
[2026-06-05 06:15:48,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:15:48
[2026-06-05 06:15:49,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:15:49,311.311 INFO    ] Initializing speech engine...
[2026-06-05 06:15:49,317.317 INFO    ] 2026-06-05 06:15:49
[2026-06-05 06:15:49,608.608 INFO    ] 2026-06-05 06:15:49
[2026-06-05 06:15:49,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:15:49,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:15:49,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:15:49,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:15:49,981.981 INFO    ] time= 05/06/2026 06:15:49
[2026-06-05 06:15:50,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:15:50,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:15:50,103.103 INFO    ] No existing commands found in stream
[2026-06-05 06:15:55,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:15:55,119.119 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 06:15:56,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:15:56,834.834 INFO    ] Checking for system updates...
[2026-06-05 06:15:56,870.870 INFO    ] 200
[2026-06-05 06:15:56,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:56,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:15:56,927.927 INFO    ] No update needed
[2026-06-05 06:15:56,930.930 INFO    ] Checking for camera pi updates...
[2026-06-05 06:15:56,964.964 INFO    ] 200
[2026-06-05 06:15:56,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:15:57,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:15:57,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:15:57,055.055 INFO    ] No camera update needed
[2026-06-05 06:15:57,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:15:57,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:15:57,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:15:57,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:15:59,110.110 INFO    ] ================================================
[2026-06-05 06:15:59,125.125 INFO    ] Launching Daemon at Fri Jun  5 06:15:59 IST 2026
[2026-06-05 06:15:59,136.136 INFO    ] ================================================
[2026-06-05 06:15:59,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:15:59
[2026-06-05 06:16:00,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:16:00,580.580 INFO    ] Initializing speech engine...
[2026-06-05 06:16:00,607.607 INFO    ] 2026-06-05 06:16:00
[2026-06-05 06:16:00,878.878 INFO    ] 2026-06-05 06:16:00
[2026-06-05 06:16:00,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:16:01,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:16:01,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:16:01,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:16:01,250.250 INFO    ] time= 05/06/2026 06:16:01
[2026-06-05 06:16:01,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:16:01,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:16:01,374.374 INFO    ] No existing commands found in stream
[2026-06-05 06:16:06,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:16:06,390.390 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 06:16:11,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:16:11,135.135 INFO    ] Checking for system updates...
[2026-06-05 06:16:11,172.172 INFO    ] 200
[2026-06-05 06:16:11,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:16:11,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:16:11,229.229 INFO    ] No update needed
[2026-06-05 06:16:11,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 06:16:11,270.270 INFO    ] 200
[2026-06-05 06:16:11,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:16:11,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:16:11,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:16:11,356.356 INFO    ] No camera update needed
[2026-06-05 06:16:11,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:16:11,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:16:11,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:16:11,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:16:13,417.417 INFO    ] ================================================
[2026-06-05 06:16:13,432.432 INFO    ] Launching Daemon at Fri Jun  5 06:16:13 IST 2026
[2026-06-05 06:16:13,443.443 INFO    ] ================================================
[2026-06-05 06:16:14,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:16:14
[2026-06-05 06:16:14,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:16:14,907.907 INFO    ] Initializing speech engine...
[2026-06-05 06:16:14,912.912 INFO    ] 2026-06-05 06:16:14
[2026-06-05 06:16:15,162.162 INFO    ] 2026-06-05 06:16:15
[2026-06-05 06:16:15,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:16:15,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:16:15,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:16:15,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:16:15,546.546 INFO    ] time= 05/06/2026 06:16:15
[2026-06-05 06:16:15,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:16:15,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:16:15,732.732 INFO    ] No existing commands found in stream
[2026-06-05 06:16:20,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:16:20,760.760 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 06:16:24,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:16:24,535.535 INFO    ] Checking for system updates...
[2026-06-05 06:16:24,572.572 INFO    ] 200
[2026-06-05 06:16:24,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:16:24,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:16:24,631.631 INFO    ] No update needed
[2026-06-05 06:16:24,634.634 INFO    ] Checking for camera pi updates...
[2026-06-05 06:16:24,670.670 INFO    ] 200
[2026-06-05 06:16:24,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:16:24,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:16:24,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:16:24,755.755 INFO    ] No camera update needed
[2026-06-05 06:16:24,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:16:24,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:16:24,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:16:24,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:16:26,814.814 INFO    ] ================================================
[2026-06-05 06:16:26,830.830 INFO    ] Launching Daemon at Fri Jun  5 06:16:26 IST 2026
[2026-06-05 06:16:26,841.841 INFO    ] ================================================
[2026-06-05 06:16:27,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:16:27
[2026-06-05 06:16:28,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:16:28,457.457 INFO    ] Initializing speech engine...
[2026-06-05 06:16:28,464.464 INFO    ] 2026-06-05 06:16:28
[2026-06-05 06:16:28,773.773 INFO    ] 2026-06-05 06:16:28
[2026-06-05 06:16:28,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:16:29,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:16:29,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:16:29,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:16:29,281.281 INFO    ] time= 05/06/2026 06:16:29
[2026-06-05 06:16:29,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:16:29,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:16:29,441.441 INFO    ] No existing commands found in stream
[2026-06-05 06:16:34,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:16:34,460.460 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 06:16:35,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:16:35,900.900 INFO    ] Checking for system updates...
[2026-06-05 06:16:35,937.937 INFO    ] 200
[2026-06-05 06:16:35,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:16:35,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:16:35,995.995 INFO    ] No update needed
[2026-06-05 06:16:35,997.997 INFO    ] Checking for camera pi updates...
[2026-06-05 06:16:36,031.031 INFO    ] 200
[2026-06-05 06:16:36,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:16:36,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:16:36,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:16:36,125.125 INFO    ] No camera update needed
[2026-06-05 06:16:36,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:16:36,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:16:36,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:16:36,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:16:38,181.181 INFO    ] ================================================
[2026-06-05 06:16:38,196.196 INFO    ] Launching Daemon at Fri Jun  5 06:16:38 IST 2026
[2026-06-05 06:16:38,207.207 INFO    ] ================================================
[2026-06-05 06:16:38,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:16:38
[2026-06-05 06:16:39,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:16:39,671.671 INFO    ] Initializing speech engine...
[2026-06-05 06:16:39,677.677 INFO    ] 2026-06-05 06:16:39
[2026-06-05 06:16:39,980.980 INFO    ] 2026-06-05 06:16:39
[2026-06-05 06:16:40,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:16:40,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:16:40,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:16:40,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:16:40,381.381 INFO    ] time= 05/06/2026 06:16:40
[2026-06-05 06:16:40,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:16:40,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:16:40,498.498 INFO    ] No existing commands found in stream
[2026-06-05 06:16:45,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:16:45,513.513 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 06:16:49,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:16:49,723.723 INFO    ] Checking for system updates...
[2026-06-05 06:16:49,759.759 INFO    ] 200
[2026-06-05 06:16:49,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:16:49,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:16:49,816.816 INFO    ] No update needed
[2026-06-05 06:16:49,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 06:16:49,852.852 INFO    ] 200
[2026-06-05 06:16:49,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:16:49,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:16:49,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:16:49,948.948 INFO    ] No camera update needed
[2026-06-05 06:16:49,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:16:49,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:16:49,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:16:49,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:16:52,005.005 INFO    ] ================================================
[2026-06-05 06:16:52,021.021 INFO    ] Launching Daemon at Fri Jun  5 06:16:52 IST 2026
[2026-06-05 06:16:52,033.033 INFO    ] ================================================
[2026-06-05 06:16:52,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:16:52
[2026-06-05 06:16:53,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:16:53,462.462 INFO    ] Initializing speech engine...
[2026-06-05 06:16:53,469.469 INFO    ] 2026-06-05 06:16:53
[2026-06-05 06:16:53,773.773 INFO    ] 2026-06-05 06:16:53
[2026-06-05 06:16:53,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:16:54,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:16:54,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:16:54,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:16:54,206.206 INFO    ] time= 05/06/2026 06:16:54
[2026-06-05 06:16:54,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:16:54,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:16:54,293.293 INFO    ] No existing commands found in stream
[2026-06-05 06:16:59,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:16:59,304.304 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 06:16:59,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:16:59,961.961 INFO    ] Checking for system updates...
[2026-06-05 06:16:59,997.997 INFO    ] 200
[2026-06-05 06:17:00,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:00,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:17:00,057.057 INFO    ] No update needed
[2026-06-05 06:17:00,059.059 INFO    ] Checking for camera pi updates...
[2026-06-05 06:17:00,093.093 INFO    ] 200
[2026-06-05 06:17:00,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:00,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:17:00,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:17:00,180.180 INFO    ] No camera update needed
[2026-06-05 06:17:00,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:17:00,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:17:00,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:17:00,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:17:02,240.240 INFO    ] ================================================
[2026-06-05 06:17:02,259.259 INFO    ] Launching Daemon at Fri Jun  5 06:17:02 IST 2026
[2026-06-05 06:17:02,277.277 INFO    ] ================================================
[2026-06-05 06:17:03,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:17:03
[2026-06-05 06:17:03,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:17:03,969.969 INFO    ] Initializing speech engine...
[2026-06-05 06:17:03,976.976 INFO    ] 2026-06-05 06:17:03
[2026-06-05 06:17:04,251.251 INFO    ] 2026-06-05 06:17:04
[2026-06-05 06:17:04,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:17:04,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:17:04,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:17:04,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:17:04,683.683 INFO    ] time= 05/06/2026 06:17:04
[2026-06-05 06:17:04,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:17:04,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:17:04,853.853 INFO    ] No existing commands found in stream
[2026-06-05 06:17:09,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:17:09,868.868 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 06:17:12,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:17:12,572.572 INFO    ] Checking for system updates...
[2026-06-05 06:17:12,609.609 INFO    ] 200
[2026-06-05 06:17:12,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:12,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:17:12,671.671 INFO    ] No update needed
[2026-06-05 06:17:12,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 06:17:12,707.707 INFO    ] 200
[2026-06-05 06:17:12,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:12,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:17:12,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:17:12,906.906 INFO    ] No camera update needed
[2026-06-05 06:17:12,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:17:12,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:17:12,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:17:12,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:17:14,963.963 INFO    ] ================================================
[2026-06-05 06:17:14,978.978 INFO    ] Launching Daemon at Fri Jun  5 06:17:14 IST 2026
[2026-06-05 06:17:14,990.990 INFO    ] ================================================
[2026-06-05 06:17:15,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:17:15
[2026-06-05 06:17:16,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:17:16,453.453 INFO    ] Initializing speech engine...
[2026-06-05 06:17:16,467.467 INFO    ] 2026-06-05 06:17:16
[2026-06-05 06:17:16,732.732 INFO    ] 2026-06-05 06:17:16
[2026-06-05 06:17:16,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:17:16,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:17:16,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:17:17,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:17:17,095.095 INFO    ] time= 05/06/2026 06:17:17
[2026-06-05 06:17:17,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:17:17,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:17:17,215.215 INFO    ] No existing commands found in stream
[2026-06-05 06:17:22,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:17:22,229.229 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 06:17:23,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:17:23,326.326 INFO    ] Checking for system updates...
[2026-06-05 06:17:23,361.361 INFO    ] 200
[2026-06-05 06:17:23,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:23,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:17:23,419.419 INFO    ] No update needed
[2026-06-05 06:17:23,422.422 INFO    ] Checking for camera pi updates...
[2026-06-05 06:17:23,456.456 INFO    ] 200
[2026-06-05 06:17:23,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:23,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:17:23,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:17:23,543.543 INFO    ] No camera update needed
[2026-06-05 06:17:23,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:17:23,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:17:23,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:17:23,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:17:25,598.598 INFO    ] ================================================
[2026-06-05 06:17:25,614.614 INFO    ] Launching Daemon at Fri Jun  5 06:17:25 IST 2026
[2026-06-05 06:17:25,626.626 INFO    ] ================================================
[2026-06-05 06:17:26,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:17:26
[2026-06-05 06:17:26,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:17:27,031.031 INFO    ] Initializing speech engine...
[2026-06-05 06:17:27,053.053 INFO    ] 2026-06-05 06:17:27
[2026-06-05 06:17:27,310.310 INFO    ] 2026-06-05 06:17:27
[2026-06-05 06:17:27,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:17:27,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:17:27,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:17:27,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:17:27,667.667 INFO    ] time= 05/06/2026 06:17:27
[2026-06-05 06:17:27,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:17:27,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:17:27,763.763 INFO    ] No existing commands found in stream
[2026-06-05 06:17:32,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:17:32,779.779 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 06:17:35,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:17:35,484.484 INFO    ] Checking for system updates...
[2026-06-05 06:17:35,520.520 INFO    ] 200
[2026-06-05 06:17:35,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:35,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:17:35,578.578 INFO    ] No update needed
[2026-06-05 06:17:35,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 06:17:35,620.620 INFO    ] 200
[2026-06-05 06:17:35,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:35,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:17:35,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:17:35,708.708 INFO    ] No camera update needed
[2026-06-05 06:17:35,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:17:35,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:17:35,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:17:35,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:17:37,765.765 INFO    ] ================================================
[2026-06-05 06:17:37,781.781 INFO    ] Launching Daemon at Fri Jun  5 06:17:37 IST 2026
[2026-06-05 06:17:37,792.792 INFO    ] ================================================
[2026-06-05 06:17:38,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:17:38
[2026-06-05 06:17:38,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:17:39,252.252 INFO    ] Initializing speech engine...
[2026-06-05 06:17:39,260.260 INFO    ] 2026-06-05 06:17:39
[2026-06-05 06:17:39,531.531 INFO    ] 2026-06-05 06:17:39
[2026-06-05 06:17:39,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:17:39,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:17:39,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:17:39,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:17:39,984.984 INFO    ] time= 05/06/2026 06:17:39
[2026-06-05 06:17:40,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:17:40,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:17:40,129.129 INFO    ] No existing commands found in stream
[2026-06-05 06:17:45,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:17:45,143.143 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 06:17:47,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:17:47,665.665 INFO    ] Checking for system updates...
[2026-06-05 06:17:47,701.701 INFO    ] 200
[2026-06-05 06:17:47,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:47,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:17:47,759.759 INFO    ] No update needed
[2026-06-05 06:17:47,761.761 INFO    ] Checking for camera pi updates...
[2026-06-05 06:17:47,795.795 INFO    ] 200
[2026-06-05 06:17:47,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:17:47,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:17:47,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:17:47,885.885 INFO    ] No camera update needed
[2026-06-05 06:17:47,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:17:47,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:17:47,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:17:47,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:17:49,940.940 INFO    ] ================================================
[2026-06-05 06:17:49,956.956 INFO    ] Launching Daemon at Fri Jun  5 06:17:49 IST 2026
[2026-06-05 06:17:49,968.968 INFO    ] ================================================
[2026-06-05 06:17:50,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:17:50
[2026-06-05 06:17:51,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:17:51,365.365 INFO    ] Initializing speech engine...
[2026-06-05 06:17:51,380.380 INFO    ] 2026-06-05 06:17:51
[2026-06-05 06:17:51,645.645 INFO    ] 2026-06-05 06:17:51
[2026-06-05 06:17:51,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:17:51,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:17:51,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:17:52,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:17:52,022.022 INFO    ] time= 05/06/2026 06:17:52
[2026-06-05 06:17:52,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:17:52,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:17:52,192.192 INFO    ] No existing commands found in stream
[2026-06-05 06:17:57,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:17:57,226.226 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 06:18:01,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:18:01,011.011 INFO    ] Checking for system updates...
[2026-06-05 06:18:01,046.046 INFO    ] 200
[2026-06-05 06:18:01,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:01,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:18:01,105.105 INFO    ] No update needed
[2026-06-05 06:18:01,107.107 INFO    ] Checking for camera pi updates...
[2026-06-05 06:18:01,141.141 INFO    ] 200
[2026-06-05 06:18:01,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:01,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:18:01,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:18:01,236.236 INFO    ] No camera update needed
[2026-06-05 06:18:01,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:18:01,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:18:01,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:18:01,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:18:03,293.293 INFO    ] ================================================
[2026-06-05 06:18:03,310.310 INFO    ] Launching Daemon at Fri Jun  5 06:18:03 IST 2026
[2026-06-05 06:18:03,324.324 INFO    ] ================================================
[2026-06-05 06:18:03,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:18:03
[2026-06-05 06:18:04,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:18:04,739.739 INFO    ] Initializing speech engine...
[2026-06-05 06:18:04,748.748 INFO    ] 2026-06-05 06:18:04
[2026-06-05 06:18:05,038.038 INFO    ] 2026-06-05 06:18:05
[2026-06-05 06:18:05,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:18:05,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:18:05,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:18:05,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:18:05,391.391 INFO    ] time= 05/06/2026 06:18:05
[2026-06-05 06:18:05,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:18:05,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:18:05,471.471 INFO    ] No existing commands found in stream
[2026-06-05 06:18:10,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:18:10,487.487 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 06:18:12,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:18:12,541.541 INFO    ] Checking for system updates...
[2026-06-05 06:18:12,591.591 INFO    ] 200
[2026-06-05 06:18:12,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:12,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:18:12,661.661 INFO    ] No update needed
[2026-06-05 06:18:12,663.663 INFO    ] Checking for camera pi updates...
[2026-06-05 06:18:12,701.701 INFO    ] 200
[2026-06-05 06:18:12,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:12,745.745 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:18:12,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:18:12,794.794 INFO    ] No camera update needed
[2026-06-05 06:18:12,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:18:12,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:18:12,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:18:12,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:18:14,849.849 INFO    ] ================================================
[2026-06-05 06:18:14,864.864 INFO    ] Launching Daemon at Fri Jun  5 06:18:14 IST 2026
[2026-06-05 06:18:14,874.874 INFO    ] ================================================
[2026-06-05 06:18:15,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:18:15
[2026-06-05 06:18:16,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:18:16,283.283 INFO    ] Initializing speech engine...
[2026-06-05 06:18:16,290.290 INFO    ] 2026-06-05 06:18:16
[2026-06-05 06:18:16,590.590 INFO    ] 2026-06-05 06:18:16
[2026-06-05 06:18:16,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:18:16,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:18:16,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:18:16,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:18:16,972.972 INFO    ] time= 05/06/2026 06:18:16
[2026-06-05 06:18:16,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:18:16,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:18:17,106.106 INFO    ] No existing commands found in stream
[2026-06-05 06:18:22,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:18:22,120.120 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 06:18:24,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:18:24,272.272 INFO    ] Checking for system updates...
[2026-06-05 06:18:24,308.308 INFO    ] 200
[2026-06-05 06:18:24,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:24,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:18:24,366.366 INFO    ] No update needed
[2026-06-05 06:18:24,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 06:18:24,402.402 INFO    ] 200
[2026-06-05 06:18:24,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:24,446.446 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:18:24,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:18:24,493.493 INFO    ] No camera update needed
[2026-06-05 06:18:24,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:18:24,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:18:24,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:18:24,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:18:26,550.550 INFO    ] ================================================
[2026-06-05 06:18:26,565.565 INFO    ] Launching Daemon at Fri Jun  5 06:18:26 IST 2026
[2026-06-05 06:18:26,576.576 INFO    ] ================================================
[2026-06-05 06:18:27,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:18:27
[2026-06-05 06:18:27,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:18:28,011.011 INFO    ] Initializing speech engine...
[2026-06-05 06:18:28,020.020 INFO    ] 2026-06-05 06:18:28
[2026-06-05 06:18:28,314.314 INFO    ] 2026-06-05 06:18:28
[2026-06-05 06:18:28,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:18:28,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:18:28,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:18:28,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:18:28,699.699 INFO    ] time= 05/06/2026 06:18:28
[2026-06-05 06:18:28,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:18:28,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:18:28,825.825 INFO    ] No existing commands found in stream
[2026-06-05 06:18:33,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:18:33,838.838 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 06:18:36,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:18:36,261.261 INFO    ] Checking for system updates...
[2026-06-05 06:18:36,297.297 INFO    ] 200
[2026-06-05 06:18:36,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:36,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:18:36,357.357 INFO    ] No update needed
[2026-06-05 06:18:36,359.359 INFO    ] Checking for camera pi updates...
[2026-06-05 06:18:36,392.392 INFO    ] 200
[2026-06-05 06:18:36,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:36,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:18:36,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:18:36,482.482 INFO    ] No camera update needed
[2026-06-05 06:18:36,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:18:36,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:18:36,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:18:36,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:18:38,539.539 INFO    ] ================================================
[2026-06-05 06:18:38,554.554 INFO    ] Launching Daemon at Fri Jun  5 06:18:38 IST 2026
[2026-06-05 06:18:38,566.566 INFO    ] ================================================
[2026-06-05 06:18:39,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:18:39
[2026-06-05 06:18:39,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:18:39,981.981 INFO    ] Initializing speech engine...
[2026-06-05 06:18:39,997.997 INFO    ] 2026-06-05 06:18:39
[2026-06-05 06:18:40,282.282 INFO    ] 2026-06-05 06:18:40
[2026-06-05 06:18:40,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:18:40,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:18:40,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:18:40,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:18:40,708.708 INFO    ] time= 05/06/2026 06:18:40
[2026-06-05 06:18:40,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:18:40,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:18:40,874.874 INFO    ] No existing commands found in stream
[2026-06-05 06:18:45,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:18:45,902.902 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 06:18:46,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:18:46,490.490 INFO    ] Checking for system updates...
[2026-06-05 06:18:46,527.527 INFO    ] 200
[2026-06-05 06:18:46,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:46,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:18:46,586.586 INFO    ] No update needed
[2026-06-05 06:18:46,589.589 INFO    ] Checking for camera pi updates...
[2026-06-05 06:18:46,623.623 INFO    ] 200
[2026-06-05 06:18:46,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:18:46,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:18:46,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:18:46,727.727 INFO    ] No camera update needed
[2026-06-05 06:18:46,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:18:46,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:18:46,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:18:46,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:18:48,783.783 INFO    ] ================================================
[2026-06-05 06:18:48,800.800 INFO    ] Launching Daemon at Fri Jun  5 06:18:48 IST 2026
[2026-06-05 06:18:48,811.811 INFO    ] ================================================
[2026-06-05 06:18:49,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:18:49
[2026-06-05 06:18:50,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:18:50,434.434 INFO    ] Initializing speech engine...
[2026-06-05 06:18:50,449.449 INFO    ] 2026-06-05 06:18:50
[2026-06-05 06:18:50,726.726 INFO    ] 2026-06-05 06:18:50
[2026-06-05 06:18:50,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:18:50,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:18:50,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:18:51,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:18:51,098.098 INFO    ] time= 05/06/2026 06:18:51
[2026-06-05 06:18:51,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:18:51,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:18:51,225.225 INFO    ] No existing commands found in stream
[2026-06-05 06:18:56,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:18:56,241.241 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 06:19:00,474.474 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:19:00,477.477 INFO    ] Checking for system updates...
[2026-06-05 06:19:00,513.513 INFO    ] 200
[2026-06-05 06:19:00,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:00,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:19:00,573.573 INFO    ] No update needed
[2026-06-05 06:19:00,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 06:19:00,610.610 INFO    ] 200
[2026-06-05 06:19:00,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:00,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:19:00,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:19:00,700.700 INFO    ] No camera update needed
[2026-06-05 06:19:00,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:19:00,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:19:00,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:19:00,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:19:02,770.770 INFO    ] ================================================
[2026-06-05 06:19:02,793.793 INFO    ] Launching Daemon at Fri Jun  5 06:19:02 IST 2026
[2026-06-05 06:19:02,812.812 INFO    ] ================================================
[2026-06-05 06:19:03,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:19:03
[2026-06-05 06:19:04,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:19:04,374.374 INFO    ] Initializing speech engine...
[2026-06-05 06:19:04,383.383 INFO    ] 2026-06-05 06:19:04
[2026-06-05 06:19:04,681.681 INFO    ] 2026-06-05 06:19:04
[2026-06-05 06:19:04,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:19:04,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:19:04,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:19:05,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:19:05,135.135 INFO    ] time= 05/06/2026 06:19:05
[2026-06-05 06:19:05,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:19:05,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:19:05,315.315 INFO    ] No existing commands found in stream
[2026-06-05 06:19:10,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:19:10,343.343 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 06:19:14,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:19:14,061.061 INFO    ] Checking for system updates...
[2026-06-05 06:19:14,097.097 INFO    ] 200
[2026-06-05 06:19:14,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:14,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:19:14,156.156 INFO    ] No update needed
[2026-06-05 06:19:14,159.159 INFO    ] Checking for camera pi updates...
[2026-06-05 06:19:14,193.193 INFO    ] 200
[2026-06-05 06:19:14,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:14,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:19:14,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:19:14,281.281 INFO    ] No camera update needed
[2026-06-05 06:19:14,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:19:14,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:19:14,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:19:14,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:19:16,338.338 INFO    ] ================================================
[2026-06-05 06:19:16,353.353 INFO    ] Launching Daemon at Fri Jun  5 06:19:16 IST 2026
[2026-06-05 06:19:16,364.364 INFO    ] ================================================
[2026-06-05 06:19:16,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:19:16
[2026-06-05 06:19:17,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:19:17,836.836 INFO    ] Initializing speech engine...
[2026-06-05 06:19:17,858.858 INFO    ] 2026-06-05 06:19:17
[2026-06-05 06:19:18,123.123 INFO    ] 2026-06-05 06:19:18
[2026-06-05 06:19:18,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:19:18,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:19:18,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:19:18,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:19:18,616.616 INFO    ] time= 05/06/2026 06:19:18
[2026-06-05 06:19:18,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:19:18,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:19:18,752.752 INFO    ] No existing commands found in stream
[2026-06-05 06:19:23,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:19:23,767.767 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 06:19:27,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:19:27,506.506 INFO    ] Checking for system updates...
[2026-06-05 06:19:27,546.546 INFO    ] 200
[2026-06-05 06:19:27,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:27,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:19:27,605.605 INFO    ] No update needed
[2026-06-05 06:19:27,608.608 INFO    ] Checking for camera pi updates...
[2026-06-05 06:19:27,645.645 INFO    ] 200
[2026-06-05 06:19:27,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:27,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:19:27,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:19:27,841.841 INFO    ] No camera update needed
[2026-06-05 06:19:27,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:19:27,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:19:27,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:19:27,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:19:29,900.900 INFO    ] ================================================
[2026-06-05 06:19:29,916.916 INFO    ] Launching Daemon at Fri Jun  5 06:19:29 IST 2026
[2026-06-05 06:19:29,927.927 INFO    ] ================================================
[2026-06-05 06:19:30,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:19:30
[2026-06-05 06:19:31,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:19:31,487.487 INFO    ] Initializing speech engine...
[2026-06-05 06:19:31,497.497 INFO    ] 2026-06-05 06:19:31
[2026-06-05 06:19:31,778.778 INFO    ] 2026-06-05 06:19:31
[2026-06-05 06:19:31,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:19:32,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:19:32,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:19:32,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:19:32,210.210 INFO    ] time= 05/06/2026 06:19:32
[2026-06-05 06:19:32,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:19:32,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:19:32,306.306 INFO    ] No existing commands found in stream
[2026-06-05 06:19:37,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:19:37,356.356 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 06:19:39,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:19:39,120.120 INFO    ] Checking for system updates...
[2026-06-05 06:19:39,157.157 INFO    ] 200
[2026-06-05 06:19:39,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:39,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:19:39,215.215 INFO    ] No update needed
[2026-06-05 06:19:39,217.217 INFO    ] Checking for camera pi updates...
[2026-06-05 06:19:39,251.251 INFO    ] 200
[2026-06-05 06:19:39,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:39,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:19:39,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:19:39,345.345 INFO    ] No camera update needed
[2026-06-05 06:19:39,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:19:39,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:19:39,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:19:39,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:19:41,401.401 INFO    ] ================================================
[2026-06-05 06:19:41,416.416 INFO    ] Launching Daemon at Fri Jun  5 06:19:41 IST 2026
[2026-06-05 06:19:41,427.427 INFO    ] ================================================
[2026-06-05 06:19:42,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:19:42
[2026-06-05 06:19:42,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:19:42,973.973 INFO    ] Initializing speech engine...
[2026-06-05 06:19:42,989.989 INFO    ] 2026-06-05 06:19:42
[2026-06-05 06:19:43,255.255 INFO    ] 2026-06-05 06:19:43
[2026-06-05 06:19:43,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:19:43,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:19:43,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:19:43,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:19:43,719.719 INFO    ] time= 05/06/2026 06:19:43
[2026-06-05 06:19:43,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:19:43,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:19:43,888.888 INFO    ] No existing commands found in stream
[2026-06-05 06:19:48,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:19:48,903.903 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 06:19:50,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:19:50,375.375 INFO    ] Checking for system updates...
[2026-06-05 06:19:50,412.412 INFO    ] 200
[2026-06-05 06:19:50,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:50,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:19:50,470.470 INFO    ] No update needed
[2026-06-05 06:19:50,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 06:19:50,507.507 INFO    ] 200
[2026-06-05 06:19:50,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:19:50,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:19:50,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:19:50,602.602 INFO    ] No camera update needed
[2026-06-05 06:19:50,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:19:50,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:19:50,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:19:50,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:19:52,658.658 INFO    ] ================================================
[2026-06-05 06:19:52,673.673 INFO    ] Launching Daemon at Fri Jun  5 06:19:52 IST 2026
[2026-06-05 06:19:52,684.684 INFO    ] ================================================
[2026-06-05 06:19:53,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:19:53
[2026-06-05 06:19:53,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:19:54,265.265 INFO    ] Initializing speech engine...
[2026-06-05 06:19:54,275.275 INFO    ] 2026-06-05 06:19:54
[2026-06-05 06:19:54,558.558 INFO    ] 2026-06-05 06:19:54
[2026-06-05 06:19:54,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:19:54,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:19:54,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:19:55,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:19:55,096.096 INFO    ] time= 05/06/2026 06:19:55
[2026-06-05 06:19:55,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:19:55,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:19:55,251.251 INFO    ] No existing commands found in stream
[2026-06-05 06:20:00,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:20:00,285.285 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 06:20:01,697.697 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:20:01,710.710 INFO    ] Checking for system updates...
[2026-06-05 06:20:01,797.797 INFO    ] 200
[2026-06-05 06:20:01,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:02,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:20:02,074.074 INFO    ] No update needed
[2026-06-05 06:20:02,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 06:20:02,278.278 INFO    ] 200
[2026-06-05 06:20:02,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:02,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:20:02,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:20:02,494.494 INFO    ] No camera update needed
[2026-06-05 06:20:02,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:20:02,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:20:02,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:20:02,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:20:04,566.566 INFO    ] ================================================
[2026-06-05 06:20:04,582.582 INFO    ] Launching Daemon at Fri Jun  5 06:20:04 IST 2026
[2026-06-05 06:20:04,594.594 INFO    ] ================================================
[2026-06-05 06:20:05,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:20:05
[2026-06-05 06:20:05,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:20:06,059.059 INFO    ] Initializing speech engine...
[2026-06-05 06:20:06,067.067 INFO    ] 2026-06-05 06:20:06
[2026-06-05 06:20:06,328.328 INFO    ] 2026-06-05 06:20:06
[2026-06-05 06:20:06,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:20:06,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:20:06,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:20:06,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:20:06,785.785 INFO    ] time= 05/06/2026 06:20:06
[2026-06-05 06:20:06,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:20:06,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:20:06,964.964 INFO    ] No existing commands found in stream
[2026-06-05 06:20:11,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:20:11,979.979 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 06:20:13,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:20:13,855.855 INFO    ] Checking for system updates...
[2026-06-05 06:20:13,892.892 INFO    ] 200
[2026-06-05 06:20:13,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:13,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:20:13,951.951 INFO    ] No update needed
[2026-06-05 06:20:13,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 06:20:13,987.987 INFO    ] 200
[2026-06-05 06:20:13,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:14,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:20:14,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:20:14,074.074 INFO    ] No camera update needed
[2026-06-05 06:20:14,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:20:14,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:20:14,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:20:14,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:20:16,131.131 INFO    ] ================================================
[2026-06-05 06:20:16,147.147 INFO    ] Launching Daemon at Fri Jun  5 06:20:16 IST 2026
[2026-06-05 06:20:16,159.159 INFO    ] ================================================
[2026-06-05 06:20:16,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:20:16
[2026-06-05 06:20:17,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:20:17,609.609 INFO    ] Initializing speech engine...
[2026-06-05 06:20:17,618.618 INFO    ] 2026-06-05 06:20:17
[2026-06-05 06:20:17,875.875 INFO    ] 2026-06-05 06:20:17
[2026-06-05 06:20:17,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:20:18,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:20:18,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:20:18,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:20:18,341.341 INFO    ] time= 05/06/2026 06:20:18
[2026-06-05 06:20:18,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:20:18,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:20:18,481.481 INFO    ] No existing commands found in stream
[2026-06-05 06:20:23,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:20:23,497.497 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 06:20:27,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:20:27,402.402 INFO    ] Checking for system updates...
[2026-06-05 06:20:27,440.440 INFO    ] 200
[2026-06-05 06:20:27,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:27,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:20:27,509.509 INFO    ] No update needed
[2026-06-05 06:20:27,512.512 INFO    ] Checking for camera pi updates...
[2026-06-05 06:20:27,547.547 INFO    ] 200
[2026-06-05 06:20:27,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:27,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:20:27,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:20:27,644.644 INFO    ] No camera update needed
[2026-06-05 06:20:27,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:20:27,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:20:27,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:20:27,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:20:29,706.706 INFO    ] ================================================
[2026-06-05 06:20:29,723.723 INFO    ] Launching Daemon at Fri Jun  5 06:20:29 IST 2026
[2026-06-05 06:20:29,735.735 INFO    ] ================================================
[2026-06-05 06:20:30,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:20:30
[2026-06-05 06:20:30,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:20:31,196.196 INFO    ] Initializing speech engine...
[2026-06-05 06:20:31,207.207 INFO    ] 2026-06-05 06:20:31
[2026-06-05 06:20:31,471.471 INFO    ] 2026-06-05 06:20:31
[2026-06-05 06:20:31,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:20:31,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:20:31,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:20:31,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:20:31,958.958 INFO    ] time= 05/06/2026 06:20:31
[2026-06-05 06:20:32,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:20:32,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:20:32,107.107 INFO    ] No existing commands found in stream
[2026-06-05 06:20:37,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:20:37,121.121 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 06:20:37,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:20:37,646.646 INFO    ] Checking for system updates...
[2026-06-05 06:20:37,691.691 INFO    ] 200
[2026-06-05 06:20:37,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:37,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:20:37,752.752 INFO    ] No update needed
[2026-06-05 06:20:37,755.755 INFO    ] Checking for camera pi updates...
[2026-06-05 06:20:37,790.790 INFO    ] 200
[2026-06-05 06:20:37,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:37,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:20:37,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:20:37,891.891 INFO    ] No camera update needed
[2026-06-05 06:20:37,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:20:37,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:20:37,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:20:37,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:20:39,952.952 INFO    ] ================================================
[2026-06-05 06:20:39,967.967 INFO    ] Launching Daemon at Fri Jun  5 06:20:39 IST 2026
[2026-06-05 06:20:39,978.978 INFO    ] ================================================
[2026-06-05 06:20:40,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:20:40
[2026-06-05 06:20:41,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:20:41,633.633 INFO    ] Initializing speech engine...
[2026-06-05 06:20:41,642.642 INFO    ] 2026-06-05 06:20:41
[2026-06-05 06:20:41,918.918 INFO    ] 2026-06-05 06:20:41
[2026-06-05 06:20:42,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:20:42,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:20:42,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:20:42,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:20:42,390.390 INFO    ] time= 05/06/2026 06:20:42
[2026-06-05 06:20:42,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:20:42,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:20:42,598.598 INFO    ] No existing commands found in stream
[2026-06-05 06:20:47,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:20:47,640.640 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 06:20:50,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:20:50,413.413 INFO    ] Checking for system updates...
[2026-06-05 06:20:50,449.449 INFO    ] 200
[2026-06-05 06:20:50,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:50,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:20:50,510.510 INFO    ] No update needed
[2026-06-05 06:20:50,512.512 INFO    ] Checking for camera pi updates...
[2026-06-05 06:20:50,546.546 INFO    ] 200
[2026-06-05 06:20:50,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:20:50,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:20:50,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:20:50,635.635 INFO    ] No camera update needed
[2026-06-05 06:20:50,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:20:50,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:20:50,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:20:50,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:20:52,690.690 INFO    ] ================================================
[2026-06-05 06:20:52,711.711 INFO    ] Launching Daemon at Fri Jun  5 06:20:52 IST 2026
[2026-06-05 06:20:52,723.723 INFO    ] ================================================
[2026-06-05 06:20:53,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:20:53
[2026-06-05 06:20:53,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:20:54,144.144 INFO    ] Initializing speech engine...
[2026-06-05 06:20:54,153.153 INFO    ] 2026-06-05 06:20:54
[2026-06-05 06:20:54,405.405 INFO    ] 2026-06-05 06:20:54
[2026-06-05 06:20:54,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:20:54,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:20:54,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:20:54,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:20:54,899.899 INFO    ] time= 05/06/2026 06:20:54
[2026-06-05 06:20:54,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:20:54,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:20:55,087.087 INFO    ] No existing commands found in stream
[2026-06-05 06:21:00,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:21:00,111.111 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 06:21:01,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:21:01,785.785 INFO    ] Checking for system updates...
[2026-06-05 06:21:01,882.882 INFO    ] 200
[2026-06-05 06:21:01,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:01,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:21:01,986.986 INFO    ] No update needed
[2026-06-05 06:21:01,990.990 INFO    ] Checking for camera pi updates...
[2026-06-05 06:21:02,053.053 INFO    ] 200
[2026-06-05 06:21:02,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:02,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:21:02,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:21:02,155.155 INFO    ] No camera update needed
[2026-06-05 06:21:02,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:21:02,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:21:02,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:21:02,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:21:04,223.223 INFO    ] ================================================
[2026-06-05 06:21:04,238.238 INFO    ] Launching Daemon at Fri Jun  5 06:21:04 IST 2026
[2026-06-05 06:21:04,249.249 INFO    ] ================================================
[2026-06-05 06:21:04,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:21:04
[2026-06-05 06:21:05,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:21:05,697.697 INFO    ] Initializing speech engine...
[2026-06-05 06:21:05,703.703 INFO    ] 2026-06-05 06:21:05
[2026-06-05 06:21:05,965.965 INFO    ] 2026-06-05 06:21:05
[2026-06-05 06:21:05,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:21:06,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:21:06,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:21:06,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:21:06,457.457 INFO    ] time= 05/06/2026 06:21:06
[2026-06-05 06:21:06,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:21:06,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:21:06,652.652 INFO    ] No existing commands found in stream
[2026-06-05 06:21:11,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:21:11,681.681 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 06:21:13,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:21:13,496.496 INFO    ] Checking for system updates...
[2026-06-05 06:21:13,532.532 INFO    ] 200
[2026-06-05 06:21:13,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:13,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:21:13,592.592 INFO    ] No update needed
[2026-06-05 06:21:13,595.595 INFO    ] Checking for camera pi updates...
[2026-06-05 06:21:13,629.629 INFO    ] 200
[2026-06-05 06:21:13,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:13,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:21:13,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:21:13,719.719 INFO    ] No camera update needed
[2026-06-05 06:21:13,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:21:13,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:21:13,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:21:13,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:21:15,784.784 INFO    ] ================================================
[2026-06-05 06:21:15,800.800 INFO    ] Launching Daemon at Fri Jun  5 06:21:15 IST 2026
[2026-06-05 06:21:15,812.812 INFO    ] ================================================
[2026-06-05 06:21:16,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:21:16
[2026-06-05 06:21:17,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:21:17,486.486 INFO    ] Initializing speech engine...
[2026-06-05 06:21:17,498.498 INFO    ] 2026-06-05 06:21:17
[2026-06-05 06:21:17,811.811 INFO    ] 2026-06-05 06:21:17
[2026-06-05 06:21:17,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:21:18,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:21:18,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:21:18,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:21:18,324.324 INFO    ] time= 05/06/2026 06:21:18
[2026-06-05 06:21:18,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:21:18,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:21:18,459.459 INFO    ] No existing commands found in stream
[2026-06-05 06:21:23,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:21:23,493.493 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 06:21:27,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:21:27,330.330 INFO    ] Checking for system updates...
[2026-06-05 06:21:27,368.368 INFO    ] 200
[2026-06-05 06:21:27,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:27,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:21:27,431.431 INFO    ] No update needed
[2026-06-05 06:21:27,433.433 INFO    ] Checking for camera pi updates...
[2026-06-05 06:21:27,469.469 INFO    ] 200
[2026-06-05 06:21:27,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:27,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:21:27,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:21:27,568.568 INFO    ] No camera update needed
[2026-06-05 06:21:27,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:21:27,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:21:27,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:21:27,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:21:29,627.627 INFO    ] ================================================
[2026-06-05 06:21:29,642.642 INFO    ] Launching Daemon at Fri Jun  5 06:21:29 IST 2026
[2026-06-05 06:21:29,654.654 INFO    ] ================================================
[2026-06-05 06:21:30,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:21:30
[2026-06-05 06:21:30,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:21:31,299.299 INFO    ] Initializing speech engine...
[2026-06-05 06:21:31,311.311 INFO    ] 2026-06-05 06:21:31
[2026-06-05 06:21:31,600.600 INFO    ] 2026-06-05 06:21:31
[2026-06-05 06:21:31,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:21:31,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:21:31,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:21:32,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:21:32,068.068 INFO    ] time= 05/06/2026 06:21:32
[2026-06-05 06:21:32,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:21:32,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:21:32,224.224 INFO    ] No existing commands found in stream
[2026-06-05 06:21:37,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:21:37,239.239 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 06:21:40,196.196 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:21:40,200.200 INFO    ] Checking for system updates...
[2026-06-05 06:21:40,238.238 INFO    ] 200
[2026-06-05 06:21:40,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:40,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:21:40,299.299 INFO    ] No update needed
[2026-06-05 06:21:40,302.302 INFO    ] Checking for camera pi updates...
[2026-06-05 06:21:40,340.340 INFO    ] 200
[2026-06-05 06:21:40,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:40,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:21:40,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:21:40,436.436 INFO    ] No camera update needed
[2026-06-05 06:21:40,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:21:40,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:21:40,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:21:40,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:21:42,492.492 INFO    ] ================================================
[2026-06-05 06:21:42,508.508 INFO    ] Launching Daemon at Fri Jun  5 06:21:42 IST 2026
[2026-06-05 06:21:42,518.518 INFO    ] ================================================
[2026-06-05 06:21:43,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:21:43
[2026-06-05 06:21:43,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:21:44,164.164 INFO    ] Initializing speech engine...
[2026-06-05 06:21:44,172.172 INFO    ] 2026-06-05 06:21:44
[2026-06-05 06:21:44,491.491 INFO    ] 2026-06-05 06:21:44
[2026-06-05 06:21:44,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:21:44,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:21:44,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:21:44,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:21:44,999.999 INFO    ] time= 05/06/2026 06:21:44
[2026-06-05 06:21:45,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:21:45,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:21:45,155.155 INFO    ] No existing commands found in stream
[2026-06-05 06:21:50,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:21:50,183.183 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 06:21:54,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:21:54,125.125 INFO    ] Checking for system updates...
[2026-06-05 06:21:54,168.168 INFO    ] 200
[2026-06-05 06:21:54,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:54,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:21:54,231.231 INFO    ] No update needed
[2026-06-05 06:21:54,233.233 INFO    ] Checking for camera pi updates...
[2026-06-05 06:21:54,276.276 INFO    ] 200
[2026-06-05 06:21:54,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:21:54,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:21:54,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:21:54,374.374 INFO    ] No camera update needed
[2026-06-05 06:21:54,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:21:54,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:21:54,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:21:54,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:21:56,435.435 INFO    ] ================================================
[2026-06-05 06:21:56,452.452 INFO    ] Launching Daemon at Fri Jun  5 06:21:56 IST 2026
[2026-06-05 06:21:56,463.463 INFO    ] ================================================
[2026-06-05 06:21:57,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:21:57
[2026-06-05 06:21:57,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:21:58,130.130 INFO    ] Initializing speech engine...
[2026-06-05 06:21:58,142.142 INFO    ] 2026-06-05 06:21:58
[2026-06-05 06:21:58,429.429 INFO    ] 2026-06-05 06:21:58
[2026-06-05 06:21:58,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:21:58,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:21:58,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:21:58,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:21:58,885.885 INFO    ] time= 05/06/2026 06:21:58
[2026-06-05 06:21:58,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:21:58,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:21:59,043.043 INFO    ] No existing commands found in stream
[2026-06-05 06:22:04,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:22:04,059.059 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 06:22:05,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:22:05,154.154 INFO    ] Checking for system updates...
[2026-06-05 06:22:05,192.192 INFO    ] 200
[2026-06-05 06:22:05,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:05,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:22:05,253.253 INFO    ] No update needed
[2026-06-05 06:22:05,256.256 INFO    ] Checking for camera pi updates...
[2026-06-05 06:22:05,297.297 INFO    ] 200
[2026-06-05 06:22:05,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:05,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:22:05,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:22:05,380.380 INFO    ] No camera update needed
[2026-06-05 06:22:05,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:22:05,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:22:05,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:22:05,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:22:07,440.440 INFO    ] ================================================
[2026-06-05 06:22:07,456.456 INFO    ] Launching Daemon at Fri Jun  5 06:22:07 IST 2026
[2026-06-05 06:22:07,467.467 INFO    ] ================================================
[2026-06-05 06:22:08,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:22:08
[2026-06-05 06:22:08,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:22:08,886.886 INFO    ] Initializing speech engine...
[2026-06-05 06:22:08,900.900 INFO    ] 2026-06-05 06:22:08
[2026-06-05 06:22:09,192.192 INFO    ] 2026-06-05 06:22:09
[2026-06-05 06:22:09,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:22:09,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:22:09,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:22:09,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:22:09,587.587 INFO    ] time= 05/06/2026 06:22:09
[2026-06-05 06:22:09,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:22:09,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:22:09,717.717 INFO    ] No existing commands found in stream
[2026-06-05 06:22:14,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:22:14,733.733 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 06:22:16,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:22:16,428.428 INFO    ] Checking for system updates...
[2026-06-05 06:22:16,465.465 INFO    ] 200
[2026-06-05 06:22:16,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:16,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:22:16,523.523 INFO    ] No update needed
[2026-06-05 06:22:16,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 06:22:16,560.560 INFO    ] 200
[2026-06-05 06:22:16,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:16,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:22:16,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:22:16,646.646 INFO    ] No camera update needed
[2026-06-05 06:22:16,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:22:16,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:22:16,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:22:16,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:22:18,705.705 INFO    ] ================================================
[2026-06-05 06:22:18,721.721 INFO    ] Launching Daemon at Fri Jun  5 06:22:18 IST 2026
[2026-06-05 06:22:18,732.732 INFO    ] ================================================
[2026-06-05 06:22:19,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:22:19
[2026-06-05 06:22:19,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:22:20,161.161 INFO    ] Initializing speech engine...
[2026-06-05 06:22:20,178.178 INFO    ] 2026-06-05 06:22:20
[2026-06-05 06:22:20,469.469 INFO    ] 2026-06-05 06:22:20
[2026-06-05 06:22:20,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:22:20,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:22:20,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:22:20,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:22:20,832.832 INFO    ] time= 05/06/2026 06:22:20
[2026-06-05 06:22:20,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:22:20,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:22:20,919.919 INFO    ] No existing commands found in stream
[2026-06-05 06:22:25,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:22:25,933.933 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 06:22:28,935.935 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:22:28,938.938 INFO    ] Checking for system updates...
[2026-06-05 06:22:28,976.976 INFO    ] 200
[2026-06-05 06:22:28,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:29,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:22:29,036.036 INFO    ] No update needed
[2026-06-05 06:22:29,039.039 INFO    ] Checking for camera pi updates...
[2026-06-05 06:22:29,074.074 INFO    ] 200
[2026-06-05 06:22:29,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:29,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:22:29,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:22:29,169.169 INFO    ] No camera update needed
[2026-06-05 06:22:29,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:22:29,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:22:29,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:22:29,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:22:31,228.228 INFO    ] ================================================
[2026-06-05 06:22:31,243.243 INFO    ] Launching Daemon at Fri Jun  5 06:22:31 IST 2026
[2026-06-05 06:22:31,254.254 INFO    ] ================================================
[2026-06-05 06:22:31,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:22:31
[2026-06-05 06:22:32,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:22:32,958.958 INFO    ] Initializing speech engine...
[2026-06-05 06:22:32,966.966 INFO    ] 2026-06-05 06:22:32
[2026-06-05 06:22:33,290.290 INFO    ] 2026-06-05 06:22:33
[2026-06-05 06:22:33,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:22:33,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:22:33,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:22:33,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:22:33,742.742 INFO    ] time= 05/06/2026 06:22:33
[2026-06-05 06:22:33,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:22:33,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:22:33,941.941 INFO    ] No existing commands found in stream
[2026-06-05 06:22:38,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:22:38,966.966 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 06:22:39,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:22:39,935.935 INFO    ] Checking for system updates...
[2026-06-05 06:22:39,975.975 INFO    ] 200
[2026-06-05 06:22:39,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:40,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:22:40,034.034 INFO    ] No update needed
[2026-06-05 06:22:40,036.036 INFO    ] Checking for camera pi updates...
[2026-06-05 06:22:40,070.070 INFO    ] 200
[2026-06-05 06:22:40,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:40,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:22:40,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:22:40,155.155 INFO    ] No camera update needed
[2026-06-05 06:22:40,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:22:40,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:22:40,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:22:40,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:22:42,210.210 INFO    ] ================================================
[2026-06-05 06:22:42,226.226 INFO    ] Launching Daemon at Fri Jun  5 06:22:42 IST 2026
[2026-06-05 06:22:42,237.237 INFO    ] ================================================
[2026-06-05 06:22:42,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:22:42
[2026-06-05 06:22:43,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:22:43,697.697 INFO    ] Initializing speech engine...
[2026-06-05 06:22:43,706.706 INFO    ] 2026-06-05 06:22:43
[2026-06-05 06:22:43,967.967 INFO    ] 2026-06-05 06:22:43
[2026-06-05 06:22:44,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:22:44,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:22:44,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:22:44,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:22:44,339.339 INFO    ] time= 05/06/2026 06:22:44
[2026-06-05 06:22:44,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:22:44,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:22:44,467.467 INFO    ] No existing commands found in stream
[2026-06-05 06:22:49,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:22:49,483.483 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 06:22:51,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:22:51,640.640 INFO    ] Checking for system updates...
[2026-06-05 06:22:51,677.677 INFO    ] 200
[2026-06-05 06:22:51,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:51,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:22:51,736.736 INFO    ] No update needed
[2026-06-05 06:22:51,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 06:22:51,773.773 INFO    ] 200
[2026-06-05 06:22:51,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:22:51,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:22:51,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:22:51,876.876 INFO    ] No camera update needed
[2026-06-05 06:22:51,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:22:51,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:22:51,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:22:51,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:22:53,936.936 INFO    ] ================================================
[2026-06-05 06:22:53,952.952 INFO    ] Launching Daemon at Fri Jun  5 06:22:53 IST 2026
[2026-06-05 06:22:53,963.963 INFO    ] ================================================
[2026-06-05 06:22:54,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:22:54
[2026-06-05 06:22:55,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:22:55,416.416 INFO    ] Initializing speech engine...
[2026-06-05 06:22:55,425.425 INFO    ] 2026-06-05 06:22:55
[2026-06-05 06:22:55,681.681 INFO    ] 2026-06-05 06:22:55
[2026-06-05 06:22:55,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:22:55,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:22:55,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:22:56,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:22:56,068.068 INFO    ] time= 05/06/2026 06:22:56
[2026-06-05 06:22:56,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:22:56,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:22:56,253.253 INFO    ] No existing commands found in stream
[2026-06-05 06:23:01,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:23:01,290.290 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 06:23:02,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:23:02,860.860 INFO    ] Checking for system updates...
[2026-06-05 06:23:02,907.907 INFO    ] 200
[2026-06-05 06:23:02,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:02,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:23:02,988.988 INFO    ] No update needed
[2026-06-05 06:23:02,992.992 INFO    ] Checking for camera pi updates...
[2026-06-05 06:23:03,038.038 INFO    ] 200
[2026-06-05 06:23:03,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:03,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:23:03,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:23:03,145.145 INFO    ] No camera update needed
[2026-06-05 06:23:03,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:23:03,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:23:03,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:23:03,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:23:05,207.207 INFO    ] ================================================
[2026-06-05 06:23:05,223.223 INFO    ] Launching Daemon at Fri Jun  5 06:23:05 IST 2026
[2026-06-05 06:23:05,233.233 INFO    ] ================================================
[2026-06-05 06:23:05,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:23:05
[2026-06-05 06:23:06,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:23:06,725.725 INFO    ] Initializing speech engine...
[2026-06-05 06:23:06,736.736 INFO    ] 2026-06-05 06:23:06
[2026-06-05 06:23:06,992.992 INFO    ] 2026-06-05 06:23:06
[2026-06-05 06:23:07,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:23:07,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:23:07,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:23:07,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:23:07,458.458 INFO    ] time= 05/06/2026 06:23:07
[2026-06-05 06:23:07,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:23:07,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:23:07,609.609 INFO    ] No existing commands found in stream
[2026-06-05 06:23:12,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:23:12,624.624 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 06:23:16,971.971 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:23:16,973.973 INFO    ] Checking for system updates...
[2026-06-05 06:23:17,013.013 INFO    ] 200
[2026-06-05 06:23:17,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:17,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:23:17,072.072 INFO    ] No update needed
[2026-06-05 06:23:17,075.075 INFO    ] Checking for camera pi updates...
[2026-06-05 06:23:17,113.113 INFO    ] 200
[2026-06-05 06:23:17,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:17,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:23:17,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:23:17,205.205 INFO    ] No camera update needed
[2026-06-05 06:23:17,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:23:17,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:23:17,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:23:17,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:23:19,263.263 INFO    ] ================================================
[2026-06-05 06:23:19,279.279 INFO    ] Launching Daemon at Fri Jun  5 06:23:19 IST 2026
[2026-06-05 06:23:19,290.290 INFO    ] ================================================
[2026-06-05 06:23:19,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:23:19
[2026-06-05 06:23:20,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:23:20,715.715 INFO    ] Initializing speech engine...
[2026-06-05 06:23:20,723.723 INFO    ] 2026-06-05 06:23:20
[2026-06-05 06:23:20,996.996 INFO    ] 2026-06-05 06:23:20
[2026-06-05 06:23:21,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:23:21,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:23:21,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:23:21,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:23:21,455.455 INFO    ] time= 05/06/2026 06:23:21
[2026-06-05 06:23:21,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:23:21,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:23:21,622.622 INFO    ] No existing commands found in stream
[2026-06-05 06:23:26,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:23:26,637.637 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 06:23:28,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:23:28,386.386 INFO    ] Checking for system updates...
[2026-06-05 06:23:28,424.424 INFO    ] 200
[2026-06-05 06:23:28,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:28,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:23:28,489.489 INFO    ] No update needed
[2026-06-05 06:23:28,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 06:23:28,533.533 INFO    ] 200
[2026-06-05 06:23:28,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:28,578.578 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:23:28,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:23:28,627.627 INFO    ] No camera update needed
[2026-06-05 06:23:28,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:23:28,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:23:28,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:23:28,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:23:30,687.687 INFO    ] ================================================
[2026-06-05 06:23:30,704.704 INFO    ] Launching Daemon at Fri Jun  5 06:23:30 IST 2026
[2026-06-05 06:23:30,715.715 INFO    ] ================================================
[2026-06-05 06:23:31,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:23:31
[2026-06-05 06:23:32,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:23:32,429.429 INFO    ] Initializing speech engine...
[2026-06-05 06:23:32,434.434 INFO    ] 2026-06-05 06:23:32
[2026-06-05 06:23:32,742.742 INFO    ] 2026-06-05 06:23:32
[2026-06-05 06:23:32,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:23:33,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:23:33,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:23:33,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:23:33,215.215 INFO    ] time= 05/06/2026 06:23:33
[2026-06-05 06:23:33,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:23:33,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:23:33,376.376 INFO    ] No existing commands found in stream
[2026-06-05 06:23:38,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:23:38,405.405 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 06:23:42,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:23:42,458.458 INFO    ] Checking for system updates...
[2026-06-05 06:23:42,498.498 INFO    ] 200
[2026-06-05 06:23:42,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:42,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:23:42,557.557 INFO    ] No update needed
[2026-06-05 06:23:42,559.559 INFO    ] Checking for camera pi updates...
[2026-06-05 06:23:42,593.593 INFO    ] 200
[2026-06-05 06:23:42,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:42,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:23:42,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:23:42,787.787 INFO    ] No camera update needed
[2026-06-05 06:23:42,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:23:42,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:23:42,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:23:42,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:23:44,848.848 INFO    ] ================================================
[2026-06-05 06:23:44,864.864 INFO    ] Launching Daemon at Fri Jun  5 06:23:44 IST 2026
[2026-06-05 06:23:44,875.875 INFO    ] ================================================
[2026-06-05 06:23:45,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:23:45
[2026-06-05 06:23:46,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:23:46,525.525 INFO    ] Initializing speech engine...
[2026-06-05 06:23:46,535.535 INFO    ] 2026-06-05 06:23:46
[2026-06-05 06:23:46,821.821 INFO    ] 2026-06-05 06:23:46
[2026-06-05 06:23:46,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:23:47,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:23:47,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:23:47,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:23:47,319.319 INFO    ] time= 05/06/2026 06:23:47
[2026-06-05 06:23:47,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:23:47,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:23:47,495.495 INFO    ] No existing commands found in stream
[2026-06-05 06:23:52,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:23:52,526.526 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 06:23:56,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:23:56,756.756 INFO    ] Checking for system updates...
[2026-06-05 06:23:56,794.794 INFO    ] 200
[2026-06-05 06:23:56,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:56,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:23:56,862.862 INFO    ] No update needed
[2026-06-05 06:23:56,864.864 INFO    ] Checking for camera pi updates...
[2026-06-05 06:23:56,904.904 INFO    ] 200
[2026-06-05 06:23:56,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:23:56,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:23:56,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:23:56,999.999 INFO    ] No camera update needed
[2026-06-05 06:23:57,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:23:57,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:23:57,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:23:57,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:23:59,059.059 INFO    ] ================================================
[2026-06-05 06:23:59,074.074 INFO    ] Launching Daemon at Fri Jun  5 06:23:59 IST 2026
[2026-06-05 06:23:59,085.085 INFO    ] ================================================
[2026-06-05 06:23:59,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:23:59
[2026-06-05 06:24:00,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:24:00,559.559 INFO    ] Initializing speech engine...
[2026-06-05 06:24:00,566.566 INFO    ] 2026-06-05 06:24:00
[2026-06-05 06:24:00,813.813 INFO    ] 2026-06-05 06:24:00
[2026-06-05 06:24:00,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:24:01,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:24:01,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:24:01,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:24:01,290.290 INFO    ] time= 05/06/2026 06:24:01
[2026-06-05 06:24:01,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:24:01,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:24:01,431.431 INFO    ] No existing commands found in stream
[2026-06-05 06:24:06,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:24:06,446.446 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 06:24:08,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:24:08,388.388 INFO    ] Checking for system updates...
[2026-06-05 06:24:08,428.428 INFO    ] 200
[2026-06-05 06:24:08,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:08,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:24:08,494.494 INFO    ] No update needed
[2026-06-05 06:24:08,497.497 INFO    ] Checking for camera pi updates...
[2026-06-05 06:24:08,533.533 INFO    ] 200
[2026-06-05 06:24:08,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:08,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:24:08,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:24:08,630.630 INFO    ] No camera update needed
[2026-06-05 06:24:08,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:24:08,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:24:08,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:24:08,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:24:10,693.693 INFO    ] ================================================
[2026-06-05 06:24:10,709.709 INFO    ] Launching Daemon at Fri Jun  5 06:24:10 IST 2026
[2026-06-05 06:24:10,720.720 INFO    ] ================================================
[2026-06-05 06:24:11,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:24:11
[2026-06-05 06:24:11,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:24:12,142.142 INFO    ] Initializing speech engine...
[2026-06-05 06:24:12,149.149 INFO    ] 2026-06-05 06:24:12
[2026-06-05 06:24:12,452.452 INFO    ] 2026-06-05 06:24:12
[2026-06-05 06:24:12,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:24:12,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:24:12,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:24:12,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:24:12,816.816 INFO    ] time= 05/06/2026 06:24:12
[2026-06-05 06:24:12,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:24:12,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:24:12,901.901 INFO    ] No existing commands found in stream
[2026-06-05 06:24:17,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:24:17,916.916 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 06:24:21,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:24:21,239.239 INFO    ] Checking for system updates...
[2026-06-05 06:24:21,278.278 INFO    ] 200
[2026-06-05 06:24:21,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:21,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:24:21,365.365 INFO    ] No update needed
[2026-06-05 06:24:21,367.367 INFO    ] Checking for camera pi updates...
[2026-06-05 06:24:21,407.407 INFO    ] 200
[2026-06-05 06:24:21,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:21,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:24:21,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:24:21,497.497 INFO    ] No camera update needed
[2026-06-05 06:24:21,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:24:21,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:24:21,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:24:21,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:24:23,553.553 INFO    ] ================================================
[2026-06-05 06:24:23,569.569 INFO    ] Launching Daemon at Fri Jun  5 06:24:23 IST 2026
[2026-06-05 06:24:23,580.580 INFO    ] ================================================
[2026-06-05 06:24:24,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:24:24
[2026-06-05 06:24:24,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:24:25,051.051 INFO    ] Initializing speech engine...
[2026-06-05 06:24:25,057.057 INFO    ] 2026-06-05 06:24:25
[2026-06-05 06:24:25,317.317 INFO    ] 2026-06-05 06:24:25
[2026-06-05 06:24:25,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:24:25,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:24:25,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:24:25,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:24:25,811.811 INFO    ] time= 05/06/2026 06:24:25
[2026-06-05 06:24:25,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:24:25,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:24:25,989.989 INFO    ] No existing commands found in stream
[2026-06-05 06:24:31,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:24:31,025.025 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 06:24:33,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:24:33,309.309 INFO    ] Checking for system updates...
[2026-06-05 06:24:33,345.345 INFO    ] 200
[2026-06-05 06:24:33,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:33,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:24:33,412.412 INFO    ] No update needed
[2026-06-05 06:24:33,414.414 INFO    ] Checking for camera pi updates...
[2026-06-05 06:24:33,450.450 INFO    ] 200
[2026-06-05 06:24:33,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:33,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:24:33,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:24:33,539.539 INFO    ] No camera update needed
[2026-06-05 06:24:33,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:24:33,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:24:33,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:24:33,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:24:35,596.596 INFO    ] ================================================
[2026-06-05 06:24:35,611.611 INFO    ] Launching Daemon at Fri Jun  5 06:24:35 IST 2026
[2026-06-05 06:24:35,623.623 INFO    ] ================================================
[2026-06-05 06:24:36,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:24:36
[2026-06-05 06:24:36,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:24:37,039.039 INFO    ] Initializing speech engine...
[2026-06-05 06:24:37,049.049 INFO    ] 2026-06-05 06:24:37
[2026-06-05 06:24:37,351.351 INFO    ] 2026-06-05 06:24:37
[2026-06-05 06:24:37,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:24:37,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:24:37,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:24:37,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:24:37,748.748 INFO    ] time= 05/06/2026 06:24:37
[2026-06-05 06:24:37,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:24:37,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:24:37,881.881 INFO    ] No existing commands found in stream
[2026-06-05 06:24:42,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:24:42,894.894 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 06:24:45,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:24:45,355.355 INFO    ] Checking for system updates...
[2026-06-05 06:24:45,390.390 INFO    ] 200
[2026-06-05 06:24:45,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:45,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:24:45,448.448 INFO    ] No update needed
[2026-06-05 06:24:45,450.450 INFO    ] Checking for camera pi updates...
[2026-06-05 06:24:45,488.488 INFO    ] 200
[2026-06-05 06:24:45,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:45,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:24:45,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:24:45,582.582 INFO    ] No camera update needed
[2026-06-05 06:24:45,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:24:45,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:24:45,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:24:45,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:24:47,637.637 INFO    ] ================================================
[2026-06-05 06:24:47,653.653 INFO    ] Launching Daemon at Fri Jun  5 06:24:47 IST 2026
[2026-06-05 06:24:47,664.664 INFO    ] ================================================
[2026-06-05 06:24:48,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:24:48
[2026-06-05 06:24:48,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:24:49,143.143 INFO    ] Initializing speech engine...
[2026-06-05 06:24:49,155.155 INFO    ] 2026-06-05 06:24:49
[2026-06-05 06:24:49,469.469 INFO    ] 2026-06-05 06:24:49
[2026-06-05 06:24:49,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:24:49,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:24:49,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:24:49,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:24:49,980.980 INFO    ] time= 05/06/2026 06:24:49
[2026-06-05 06:24:49,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:24:50,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:24:50,137.137 INFO    ] No existing commands found in stream
[2026-06-05 06:24:55,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:24:55,161.161 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 06:24:55,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:24:55,663.663 INFO    ] Checking for system updates...
[2026-06-05 06:24:55,706.706 INFO    ] 200
[2026-06-05 06:24:55,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:55,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:24:55,772.772 INFO    ] No update needed
[2026-06-05 06:24:55,775.775 INFO    ] Checking for camera pi updates...
[2026-06-05 06:24:55,816.816 INFO    ] 200
[2026-06-05 06:24:55,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:24:55,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:24:55,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:24:55,916.916 INFO    ] No camera update needed
[2026-06-05 06:24:55,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:24:55,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:24:55,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:24:55,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:24:57,971.971 INFO    ] ================================================
[2026-06-05 06:24:57,987.987 INFO    ] Launching Daemon at Fri Jun  5 06:24:57 IST 2026
[2026-06-05 06:24:58,998.998 INFO    ] ================================================
[2026-06-05 06:24:58,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:24:58
[2026-06-05 06:24:59,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:24:59,529.529 INFO    ] Initializing speech engine...
[2026-06-05 06:24:59,538.538 INFO    ] 2026-06-05 06:24:59
[2026-06-05 06:24:59,841.841 INFO    ] 2026-06-05 06:24:59
[2026-06-05 06:24:59,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:25:00,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:25:00,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:25:00,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:25:00,213.213 INFO    ] time= 05/06/2026 06:25:00
[2026-06-05 06:25:00,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:25:00,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:25:00,303.303 INFO    ] No existing commands found in stream
[2026-06-05 06:25:05,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:25:05,319.319 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 06:25:06,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:25:06,307.307 INFO    ] Checking for system updates...
[2026-06-05 06:25:06,344.344 INFO    ] 200
[2026-06-05 06:25:06,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:06,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:25:06,414.414 INFO    ] No update needed
[2026-06-05 06:25:06,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 06:25:06,453.453 INFO    ] 200
[2026-06-05 06:25:06,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:06,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:25:06,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:25:06,547.547 INFO    ] No camera update needed
[2026-06-05 06:25:06,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:25:06,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:25:06,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:25:06,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:25:08,607.607 INFO    ] ================================================
[2026-06-05 06:25:08,623.623 INFO    ] Launching Daemon at Fri Jun  5 06:25:08 IST 2026
[2026-06-05 06:25:08,635.635 INFO    ] ================================================
[2026-06-05 06:25:09,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:25:09
[2026-06-05 06:25:09,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:25:10,084.084 INFO    ] Initializing speech engine...
[2026-06-05 06:25:10,103.103 INFO    ] 2026-06-05 06:25:10
[2026-06-05 06:25:10,361.361 INFO    ] 2026-06-05 06:25:10
[2026-06-05 06:25:10,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:25:10,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:25:10,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:25:10,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:25:10,703.703 INFO    ] time= 05/06/2026 06:25:10
[2026-06-05 06:25:10,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:25:10,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:25:10,819.819 INFO    ] No existing commands found in stream
[2026-06-05 06:25:15,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:25:15,837.837 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 06:25:16,524.524 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:25:16,527.527 INFO    ] Checking for system updates...
[2026-06-05 06:25:16,568.568 INFO    ] 200
[2026-06-05 06:25:16,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:16,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:25:16,634.634 INFO    ] No update needed
[2026-06-05 06:25:16,636.636 INFO    ] Checking for camera pi updates...
[2026-06-05 06:25:16,675.675 INFO    ] 200
[2026-06-05 06:25:16,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:16,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:25:16,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:25:16,771.771 INFO    ] No camera update needed
[2026-06-05 06:25:16,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:25:16,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:25:16,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:25:16,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:25:18,828.828 INFO    ] ================================================
[2026-06-05 06:25:18,844.844 INFO    ] Launching Daemon at Fri Jun  5 06:25:18 IST 2026
[2026-06-05 06:25:18,854.854 INFO    ] ================================================
[2026-06-05 06:25:19,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:25:19
[2026-06-05 06:25:20,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:25:20,282.282 INFO    ] Initializing speech engine...
[2026-06-05 06:25:20,304.304 INFO    ] 2026-06-05 06:25:20
[2026-06-05 06:25:20,557.557 INFO    ] 2026-06-05 06:25:20
[2026-06-05 06:25:20,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:25:20,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:25:20,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:25:20,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:25:21,028.028 INFO    ] time= 05/06/2026 06:25:20
[2026-06-05 06:25:21,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:25:21,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:25:21,178.178 INFO    ] No existing commands found in stream
[2026-06-05 06:25:26,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:25:26,192.192 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 06:25:28,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:25:28,421.421 INFO    ] Checking for system updates...
[2026-06-05 06:25:28,463.463 INFO    ] 200
[2026-06-05 06:25:28,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:28,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:25:28,523.523 INFO    ] No update needed
[2026-06-05 06:25:28,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 06:25:28,565.565 INFO    ] 200
[2026-06-05 06:25:28,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:28,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:25:28,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:25:28,654.654 INFO    ] No camera update needed
[2026-06-05 06:25:28,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:25:28,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:25:28,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:25:28,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:25:30,712.712 INFO    ] ================================================
[2026-06-05 06:25:30,727.727 INFO    ] Launching Daemon at Fri Jun  5 06:25:30 IST 2026
[2026-06-05 06:25:30,737.737 INFO    ] ================================================
[2026-06-05 06:25:31,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:25:31
[2026-06-05 06:25:31,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:25:32,283.283 INFO    ] Initializing speech engine...
[2026-06-05 06:25:32,294.294 INFO    ] 2026-06-05 06:25:32
[2026-06-05 06:25:32,589.589 INFO    ] 2026-06-05 06:25:32
[2026-06-05 06:25:32,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:25:32,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:25:32,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:25:33,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:25:33,106.106 INFO    ] time= 05/06/2026 06:25:33
[2026-06-05 06:25:33,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:25:33,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:25:33,219.219 INFO    ] No existing commands found in stream
[2026-06-05 06:25:38,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:25:38,256.256 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 06:25:40,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:25:40,178.178 INFO    ] Checking for system updates...
[2026-06-05 06:25:40,217.217 INFO    ] 200
[2026-06-05 06:25:40,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:40,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:25:40,276.276 INFO    ] No update needed
[2026-06-05 06:25:40,279.279 INFO    ] Checking for camera pi updates...
[2026-06-05 06:25:40,312.312 INFO    ] 200
[2026-06-05 06:25:40,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:40,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:25:40,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:25:40,397.397 INFO    ] No camera update needed
[2026-06-05 06:25:40,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:25:40,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:25:40,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:25:40,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:25:42,453.453 INFO    ] ================================================
[2026-06-05 06:25:42,468.468 INFO    ] Launching Daemon at Fri Jun  5 06:25:42 IST 2026
[2026-06-05 06:25:42,479.479 INFO    ] ================================================
[2026-06-05 06:25:43,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:25:43
[2026-06-05 06:25:43,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:25:43,897.897 INFO    ] Initializing speech engine...
[2026-06-05 06:25:43,908.908 INFO    ] 2026-06-05 06:25:43
[2026-06-05 06:25:44,153.153 INFO    ] 2026-06-05 06:25:44
[2026-06-05 06:25:44,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:25:44,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:25:44,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:25:44,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:25:44,704.704 INFO    ] time= 05/06/2026 06:25:44
[2026-06-05 06:25:44,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:25:44,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:25:44,833.833 INFO    ] No existing commands found in stream
[2026-06-05 06:25:49,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:25:49,866.866 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 06:25:52,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:25:52,543.543 INFO    ] Checking for system updates...
[2026-06-05 06:25:52,579.579 INFO    ] 200
[2026-06-05 06:25:52,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:52,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:25:52,646.646 INFO    ] No update needed
[2026-06-05 06:25:52,648.648 INFO    ] Checking for camera pi updates...
[2026-06-05 06:25:52,687.687 INFO    ] 200
[2026-06-05 06:25:52,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:25:52,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:25:52,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:25:52,892.892 INFO    ] No camera update needed
[2026-06-05 06:25:52,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:25:52,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:25:52,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:25:52,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:25:54,950.950 INFO    ] ================================================
[2026-06-05 06:25:54,966.966 INFO    ] Launching Daemon at Fri Jun  5 06:25:54 IST 2026
[2026-06-05 06:25:54,977.977 INFO    ] ================================================
[2026-06-05 06:25:55,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:25:55
[2026-06-05 06:25:56,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:25:56,416.416 INFO    ] Initializing speech engine...
[2026-06-05 06:25:56,425.425 INFO    ] 2026-06-05 06:25:56
[2026-06-05 06:25:56,671.671 INFO    ] 2026-06-05 06:25:56
[2026-06-05 06:25:56,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:25:56,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:25:56,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:25:57,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:25:57,106.106 INFO    ] time= 05/06/2026 06:25:57
[2026-06-05 06:25:57,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:25:57,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:25:57,286.286 INFO    ] No existing commands found in stream
[2026-06-05 06:26:02,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:26:02,302.302 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 06:26:03,798.798 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:26:03,800.800 INFO    ] Checking for system updates...
[2026-06-05 06:26:03,841.841 INFO    ] 200
[2026-06-05 06:26:03,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:03,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:26:03,899.899 INFO    ] No update needed
[2026-06-05 06:26:03,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 06:26:03,940.940 INFO    ] 200
[2026-06-05 06:26:03,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:03,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:26:04,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:26:04,014.014 INFO    ] No camera update needed
[2026-06-05 06:26:04,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:26:04,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:26:04,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:26:04,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:26:06,077.077 INFO    ] ================================================
[2026-06-05 06:26:06,092.092 INFO    ] Launching Daemon at Fri Jun  5 06:26:06 IST 2026
[2026-06-05 06:26:06,104.104 INFO    ] ================================================
[2026-06-05 06:26:06,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:26:06
[2026-06-05 06:26:07,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:26:07,549.549 INFO    ] Initializing speech engine...
[2026-06-05 06:26:07,555.555 INFO    ] 2026-06-05 06:26:07
[2026-06-05 06:26:07,862.862 INFO    ] 2026-06-05 06:26:07
[2026-06-05 06:26:07,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:26:08,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:26:08,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:26:08,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:26:08,256.256 INFO    ] time= 05/06/2026 06:26:08
[2026-06-05 06:26:08,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:26:08,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:26:08,384.384 INFO    ] No existing commands found in stream
[2026-06-05 06:26:13,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:26:13,400.400 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 06:26:14,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:26:14,454.454 INFO    ] Checking for system updates...
[2026-06-05 06:26:14,493.493 INFO    ] 200
[2026-06-05 06:26:14,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:14,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:26:14,553.553 INFO    ] No update needed
[2026-06-05 06:26:14,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 06:26:14,595.595 INFO    ] 200
[2026-06-05 06:26:14,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:14,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:26:14,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:26:14,693.693 INFO    ] No camera update needed
[2026-06-05 06:26:14,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:26:14,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:26:14,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:26:14,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:26:16,753.753 INFO    ] ================================================
[2026-06-05 06:26:16,768.768 INFO    ] Launching Daemon at Fri Jun  5 06:26:16 IST 2026
[2026-06-05 06:26:16,779.779 INFO    ] ================================================
[2026-06-05 06:26:17,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:26:17
[2026-06-05 06:26:18,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:26:18,455.455 INFO    ] Initializing speech engine...
[2026-06-05 06:26:18,470.470 INFO    ] 2026-06-05 06:26:18
[2026-06-05 06:26:18,764.764 INFO    ] 2026-06-05 06:26:18
[2026-06-05 06:26:18,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:26:19,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:26:19,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:26:19,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:26:19,262.262 INFO    ] time= 05/06/2026 06:26:19
[2026-06-05 06:26:19,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:26:19,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:26:19,466.466 INFO    ] No existing commands found in stream
[2026-06-05 06:26:24,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:26:24,493.493 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 06:26:27,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:26:27,358.358 INFO    ] Checking for system updates...
[2026-06-05 06:26:27,400.400 INFO    ] 200
[2026-06-05 06:26:27,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:27,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:26:27,462.462 INFO    ] No update needed
[2026-06-05 06:26:27,465.465 INFO    ] Checking for camera pi updates...
[2026-06-05 06:26:27,505.505 INFO    ] 200
[2026-06-05 06:26:27,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:27,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:26:27,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:26:27,599.599 INFO    ] No camera update needed
[2026-06-05 06:26:27,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:26:27,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:26:27,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:26:27,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:26:29,660.660 INFO    ] ================================================
[2026-06-05 06:26:29,675.675 INFO    ] Launching Daemon at Fri Jun  5 06:26:29 IST 2026
[2026-06-05 06:26:29,686.686 INFO    ] ================================================
[2026-06-05 06:26:30,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:26:30
[2026-06-05 06:26:30,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:26:31,151.151 INFO    ] Initializing speech engine...
[2026-06-05 06:26:31,166.166 INFO    ] 2026-06-05 06:26:31
[2026-06-05 06:26:31,458.458 INFO    ] 2026-06-05 06:26:31
[2026-06-05 06:26:31,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:26:31,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:26:31,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:26:31,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:26:31,847.847 INFO    ] time= 05/06/2026 06:26:31
[2026-06-05 06:26:31,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:26:31,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:26:31,930.930 INFO    ] No existing commands found in stream
[2026-06-05 06:26:36,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:26:36,944.944 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 06:26:40,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:26:40,950.950 INFO    ] Checking for system updates...
[2026-06-05 06:26:40,987.987 INFO    ] 200
[2026-06-05 06:26:40,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:41,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:26:41,052.052 INFO    ] No update needed
[2026-06-05 06:26:41,055.055 INFO    ] Checking for camera pi updates...
[2026-06-05 06:26:41,089.089 INFO    ] 200
[2026-06-05 06:26:41,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:41,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:26:41,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:26:41,191.191 INFO    ] No camera update needed
[2026-06-05 06:26:41,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:26:41,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:26:41,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:26:41,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:26:43,247.247 INFO    ] ================================================
[2026-06-05 06:26:43,263.263 INFO    ] Launching Daemon at Fri Jun  5 06:26:43 IST 2026
[2026-06-05 06:26:43,273.273 INFO    ] ================================================
[2026-06-05 06:26:43,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:26:43
[2026-06-05 06:26:44,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:26:44,938.938 INFO    ] Initializing speech engine...
[2026-06-05 06:26:44,950.950 INFO    ] 2026-06-05 06:26:44
[2026-06-05 06:26:45,230.230 INFO    ] 2026-06-05 06:26:45
[2026-06-05 06:26:45,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:26:45,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:26:45,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:26:45,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:26:45,697.697 INFO    ] time= 05/06/2026 06:26:45
[2026-06-05 06:26:45,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:26:45,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:26:45,832.832 INFO    ] No existing commands found in stream
[2026-06-05 06:26:50,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:26:50,848.848 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 06:26:53,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:26:53,831.831 INFO    ] Checking for system updates...
[2026-06-05 06:26:53,870.870 INFO    ] 200
[2026-06-05 06:26:53,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:53,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:26:53,931.931 INFO    ] No update needed
[2026-06-05 06:26:53,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 06:26:53,968.968 INFO    ] 200
[2026-06-05 06:26:53,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:26:54,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:26:54,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:26:54,059.059 INFO    ] No camera update needed
[2026-06-05 06:26:54,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:26:54,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:26:54,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:26:54,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:26:56,118.118 INFO    ] ================================================
[2026-06-05 06:26:56,133.133 INFO    ] Launching Daemon at Fri Jun  5 06:26:56 IST 2026
[2026-06-05 06:26:56,144.144 INFO    ] ================================================
[2026-06-05 06:26:56,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:26:56
[2026-06-05 06:26:57,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:26:57,597.597 INFO    ] Initializing speech engine...
[2026-06-05 06:26:57,612.612 INFO    ] 2026-06-05 06:26:57
[2026-06-05 06:26:57,901.901 INFO    ] 2026-06-05 06:26:57
[2026-06-05 06:26:57,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:26:58,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:26:58,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:26:58,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:26:58,284.284 INFO    ] time= 05/06/2026 06:26:58
[2026-06-05 06:26:58,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:26:58,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:26:58,404.404 INFO    ] No existing commands found in stream
[2026-06-05 06:27:03,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:27:03,420.420 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 06:27:07,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:27:07,294.294 INFO    ] Checking for system updates...
[2026-06-05 06:27:07,331.331 INFO    ] 200
[2026-06-05 06:27:07,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:07,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:27:07,389.389 INFO    ] No update needed
[2026-06-05 06:27:07,391.391 INFO    ] Checking for camera pi updates...
[2026-06-05 06:27:07,426.426 INFO    ] 200
[2026-06-05 06:27:07,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:07,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:27:07,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:27:07,524.524 INFO    ] No camera update needed
[2026-06-05 06:27:07,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:27:07,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:27:07,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:27:07,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:27:09,580.580 INFO    ] ================================================
[2026-06-05 06:27:09,595.595 INFO    ] Launching Daemon at Fri Jun  5 06:27:09 IST 2026
[2026-06-05 06:27:09,605.605 INFO    ] ================================================
[2026-06-05 06:27:10,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:27:10
[2026-06-05 06:27:10,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:27:11,052.052 INFO    ] Initializing speech engine...
[2026-06-05 06:27:11,059.059 INFO    ] 2026-06-05 06:27:11
[2026-06-05 06:27:11,308.308 INFO    ] 2026-06-05 06:27:11
[2026-06-05 06:27:11,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:27:11,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:27:11,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:27:11,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:27:11,809.809 INFO    ] time= 05/06/2026 06:27:11
[2026-06-05 06:27:11,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:27:11,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:27:11,938.938 INFO    ] No existing commands found in stream
[2026-06-05 06:27:16,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:27:16,961.961 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 06:27:19,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:27:19,611.611 INFO    ] Checking for system updates...
[2026-06-05 06:27:19,650.650 INFO    ] 200
[2026-06-05 06:27:19,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:19,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:27:19,708.708 INFO    ] No update needed
[2026-06-05 06:27:19,710.710 INFO    ] Checking for camera pi updates...
[2026-06-05 06:27:19,745.745 INFO    ] 200
[2026-06-05 06:27:19,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:19,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:27:19,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:27:19,832.832 INFO    ] No camera update needed
[2026-06-05 06:27:19,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:27:19,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:27:19,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:27:19,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:27:21,888.888 INFO    ] ================================================
[2026-06-05 06:27:21,903.903 INFO    ] Launching Daemon at Fri Jun  5 06:27:21 IST 2026
[2026-06-05 06:27:21,914.914 INFO    ] ================================================
[2026-06-05 06:27:22,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:27:22
[2026-06-05 06:27:23,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:27:23,376.376 INFO    ] Initializing speech engine...
[2026-06-05 06:27:23,395.395 INFO    ] 2026-06-05 06:27:23
[2026-06-05 06:27:23,650.650 INFO    ] 2026-06-05 06:27:23
[2026-06-05 06:27:23,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:27:23,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:27:23,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:27:24,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:27:24,140.140 INFO    ] time= 05/06/2026 06:27:24
[2026-06-05 06:27:24,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:27:24,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:27:24,275.275 INFO    ] No existing commands found in stream
[2026-06-05 06:27:29,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:27:29,315.315 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 06:27:30,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:27:30,785.785 INFO    ] Checking for system updates...
[2026-06-05 06:27:30,823.823 INFO    ] 200
[2026-06-05 06:27:30,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:30,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:27:30,882.882 INFO    ] No update needed
[2026-06-05 06:27:30,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 06:27:30,921.921 INFO    ] 200
[2026-06-05 06:27:30,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:30,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:27:31,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:27:31,014.014 INFO    ] No camera update needed
[2026-06-05 06:27:31,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:27:31,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:27:31,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:27:31,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:27:33,073.073 INFO    ] ================================================
[2026-06-05 06:27:33,089.089 INFO    ] Launching Daemon at Fri Jun  5 06:27:33 IST 2026
[2026-06-05 06:27:33,101.101 INFO    ] ================================================
[2026-06-05 06:27:33,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:27:33
[2026-06-05 06:27:34,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:27:34,521.521 INFO    ] Initializing speech engine...
[2026-06-05 06:27:34,530.530 INFO    ] 2026-06-05 06:27:34
[2026-06-05 06:27:34,821.821 INFO    ] 2026-06-05 06:27:34
[2026-06-05 06:27:34,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:27:35,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:27:35,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:27:35,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:27:35,233.233 INFO    ] time= 05/06/2026 06:27:35
[2026-06-05 06:27:35,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:27:35,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:27:35,320.320 INFO    ] No existing commands found in stream
[2026-06-05 06:27:40,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:27:40,336.336 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 06:27:42,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:27:42,390.390 INFO    ] Checking for system updates...
[2026-06-05 06:27:42,426.426 INFO    ] 200
[2026-06-05 06:27:42,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:42,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:27:42,485.485 INFO    ] No update needed
[2026-06-05 06:27:42,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 06:27:42,522.522 INFO    ] 200
[2026-06-05 06:27:42,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:42,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:27:42,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:27:42,613.613 INFO    ] No camera update needed
[2026-06-05 06:27:42,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:27:42,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:27:42,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:27:42,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:27:44,669.669 INFO    ] ================================================
[2026-06-05 06:27:44,685.685 INFO    ] Launching Daemon at Fri Jun  5 06:27:44 IST 2026
[2026-06-05 06:27:44,696.696 INFO    ] ================================================
[2026-06-05 06:27:45,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:27:45
[2026-06-05 06:27:45,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:27:46,111.111 INFO    ] Initializing speech engine...
[2026-06-05 06:27:46,120.120 INFO    ] 2026-06-05 06:27:46
[2026-06-05 06:27:46,410.410 INFO    ] 2026-06-05 06:27:46
[2026-06-05 06:27:46,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:27:46,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:27:46,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:27:46,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:27:46,786.786 INFO    ] time= 05/06/2026 06:27:46
[2026-06-05 06:27:46,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:27:46,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:27:46,909.909 INFO    ] No existing commands found in stream
[2026-06-05 06:27:51,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:27:51,922.922 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 06:27:56,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:27:56,071.071 INFO    ] Checking for system updates...
[2026-06-05 06:27:56,108.108 INFO    ] 200
[2026-06-05 06:27:56,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:56,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:27:56,171.171 INFO    ] No update needed
[2026-06-05 06:27:56,174.174 INFO    ] Checking for camera pi updates...
[2026-06-05 06:27:56,210.210 INFO    ] 200
[2026-06-05 06:27:56,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:27:56,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:27:56,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:27:56,402.402 INFO    ] No camera update needed
[2026-06-05 06:27:56,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:27:56,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:27:56,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:27:56,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:27:58,458.458 INFO    ] ================================================
[2026-06-05 06:27:58,473.473 INFO    ] Launching Daemon at Fri Jun  5 06:27:58 IST 2026
[2026-06-05 06:27:58,484.484 INFO    ] ================================================
[2026-06-05 06:27:59,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:27:59
[2026-06-05 06:27:59,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:27:59,891.891 INFO    ] Initializing speech engine...
[2026-06-05 06:27:59,897.897 INFO    ] 2026-06-05 06:27:59
[2026-06-05 06:28:00,182.182 INFO    ] 2026-06-05 06:28:00
[2026-06-05 06:28:00,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:28:00,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:28:00,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:28:00,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:28:00,538.538 INFO    ] time= 05/06/2026 06:28:00
[2026-06-05 06:28:00,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:28:00,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:28:00,635.635 INFO    ] No existing commands found in stream
[2026-06-05 06:28:05,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:28:05,650.650 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 06:28:06,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:28:06,293.293 INFO    ] Checking for system updates...
[2026-06-05 06:28:06,329.329 INFO    ] 200
[2026-06-05 06:28:06,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:06,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:28:06,395.395 INFO    ] No update needed
[2026-06-05 06:28:06,397.397 INFO    ] Checking for camera pi updates...
[2026-06-05 06:28:06,432.432 INFO    ] 200
[2026-06-05 06:28:06,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:06,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:28:06,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:28:06,525.525 INFO    ] No camera update needed
[2026-06-05 06:28:06,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:28:06,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:28:06,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:28:06,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:28:08,589.589 INFO    ] ================================================
[2026-06-05 06:28:08,606.606 INFO    ] Launching Daemon at Fri Jun  5 06:28:08 IST 2026
[2026-06-05 06:28:08,618.618 INFO    ] ================================================
[2026-06-05 06:28:09,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:28:09
[2026-06-05 06:28:09,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:28:10,042.042 INFO    ] Initializing speech engine...
[2026-06-05 06:28:10,051.051 INFO    ] 2026-06-05 06:28:10
[2026-06-05 06:28:10,350.350 INFO    ] 2026-06-05 06:28:10
[2026-06-05 06:28:10,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:28:10,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:28:10,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:28:10,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:28:10,734.734 INFO    ] time= 05/06/2026 06:28:10
[2026-06-05 06:28:10,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:28:10,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:28:10,861.861 INFO    ] No existing commands found in stream
[2026-06-05 06:28:15,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:28:15,876.876 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 06:28:19,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:28:19,378.378 INFO    ] Checking for system updates...
[2026-06-05 06:28:19,415.415 INFO    ] 200
[2026-06-05 06:28:19,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:19,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:28:19,473.473 INFO    ] No update needed
[2026-06-05 06:28:19,476.476 INFO    ] Checking for camera pi updates...
[2026-06-05 06:28:19,510.510 INFO    ] 200
[2026-06-05 06:28:19,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:19,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:28:19,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:28:19,601.601 INFO    ] No camera update needed
[2026-06-05 06:28:19,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:28:19,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:28:19,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:28:19,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:28:21,658.658 INFO    ] ================================================
[2026-06-05 06:28:21,674.674 INFO    ] Launching Daemon at Fri Jun  5 06:28:21 IST 2026
[2026-06-05 06:28:21,685.685 INFO    ] ================================================
[2026-06-05 06:28:22,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:28:22
[2026-06-05 06:28:22,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:28:23,122.122 INFO    ] Initializing speech engine...
[2026-06-05 06:28:23,141.141 INFO    ] 2026-06-05 06:28:23
[2026-06-05 06:28:23,390.390 INFO    ] 2026-06-05 06:28:23
[2026-06-05 06:28:23,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:28:23,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:28:23,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:28:23,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:28:23,856.856 INFO    ] time= 05/06/2026 06:28:23
[2026-06-05 06:28:23,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:28:23,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:28:24,006.006 INFO    ] No existing commands found in stream
[2026-06-05 06:28:29,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:28:29,017.017 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 06:28:30,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:28:30,017.017 INFO    ] Checking for system updates...
[2026-06-05 06:28:30,058.058 INFO    ] 200
[2026-06-05 06:28:30,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:30,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:28:30,122.122 INFO    ] No update needed
[2026-06-05 06:28:30,125.125 INFO    ] Checking for camera pi updates...
[2026-06-05 06:28:30,159.159 INFO    ] 200
[2026-06-05 06:28:30,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:30,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:28:30,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:28:30,247.247 INFO    ] No camera update needed
[2026-06-05 06:28:30,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:28:30,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:28:30,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:28:30,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:28:32,306.306 INFO    ] ================================================
[2026-06-05 06:28:32,324.324 INFO    ] Launching Daemon at Fri Jun  5 06:28:32 IST 2026
[2026-06-05 06:28:32,336.336 INFO    ] ================================================
[2026-06-05 06:28:32,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:28:32
[2026-06-05 06:28:33,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:28:33,788.788 INFO    ] Initializing speech engine...
[2026-06-05 06:28:33,802.802 INFO    ] 2026-06-05 06:28:33
[2026-06-05 06:28:34,064.064 INFO    ] 2026-06-05 06:28:34
[2026-06-05 06:28:34,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:28:34,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:28:34,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:28:34,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:28:34,536.536 INFO    ] time= 05/06/2026 06:28:34
[2026-06-05 06:28:34,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:28:34,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:28:34,681.681 INFO    ] No existing commands found in stream
[2026-06-05 06:28:39,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:28:39,696.696 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 06:28:41,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:28:41,090.090 INFO    ] Checking for system updates...
[2026-06-05 06:28:41,128.128 INFO    ] 200
[2026-06-05 06:28:41,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:41,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:28:41,195.195 INFO    ] No update needed
[2026-06-05 06:28:41,198.198 INFO    ] Checking for camera pi updates...
[2026-06-05 06:28:41,234.234 INFO    ] 200
[2026-06-05 06:28:41,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:41,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:28:41,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:28:41,334.334 INFO    ] No camera update needed
[2026-06-05 06:28:41,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:28:41,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:28:41,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:28:41,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:28:43,391.391 INFO    ] ================================================
[2026-06-05 06:28:43,408.408 INFO    ] Launching Daemon at Fri Jun  5 06:28:43 IST 2026
[2026-06-05 06:28:43,419.419 INFO    ] ================================================
[2026-06-05 06:28:43,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:28:43
[2026-06-05 06:28:44,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:28:44,842.842 INFO    ] Initializing speech engine...
[2026-06-05 06:28:44,851.851 INFO    ] 2026-06-05 06:28:44
[2026-06-05 06:28:45,113.113 INFO    ] 2026-06-05 06:28:45
[2026-06-05 06:28:45,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:28:45,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:28:45,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:28:45,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:28:45,570.570 INFO    ] time= 05/06/2026 06:28:45
[2026-06-05 06:28:45,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:28:45,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:28:45,720.720 INFO    ] No existing commands found in stream
[2026-06-05 06:28:50,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:28:50,734.734 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 06:28:54,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:28:54,517.517 INFO    ] Checking for system updates...
[2026-06-05 06:28:54,553.553 INFO    ] 200
[2026-06-05 06:28:54,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:54,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:28:54,613.613 INFO    ] No update needed
[2026-06-05 06:28:54,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 06:28:54,649.649 INFO    ] 200
[2026-06-05 06:28:54,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:28:54,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:28:54,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:28:54,740.740 INFO    ] No camera update needed
[2026-06-05 06:28:54,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:28:54,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:28:54,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:28:54,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:28:56,796.796 INFO    ] ================================================
[2026-06-05 06:28:56,811.811 INFO    ] Launching Daemon at Fri Jun  5 06:28:56 IST 2026
[2026-06-05 06:28:56,822.822 INFO    ] ================================================
[2026-06-05 06:28:57,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:28:57
[2026-06-05 06:28:57,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:28:58,242.242 INFO    ] Initializing speech engine...
[2026-06-05 06:28:58,261.261 INFO    ] 2026-06-05 06:28:58
[2026-06-05 06:28:58,535.535 INFO    ] 2026-06-05 06:28:58
[2026-06-05 06:28:58,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:28:58,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:28:58,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:28:58,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:28:58,963.963 INFO    ] time= 05/06/2026 06:28:58
[2026-06-05 06:28:58,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:28:58,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:28:59,050.050 INFO    ] No existing commands found in stream
[2026-06-05 06:29:04,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:29:04,065.065 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 06:29:06,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:29:06,398.398 INFO    ] Checking for system updates...
[2026-06-05 06:29:06,442.442 INFO    ] 200
[2026-06-05 06:29:06,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:06,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:29:06,513.513 INFO    ] No update needed
[2026-06-05 06:29:06,518.518 INFO    ] Checking for camera pi updates...
[2026-06-05 06:29:06,559.559 INFO    ] 200
[2026-06-05 06:29:06,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:06,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:29:06,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:29:06,649.649 INFO    ] No camera update needed
[2026-06-05 06:29:06,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:29:06,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:29:06,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:29:06,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:29:08,709.709 INFO    ] ================================================
[2026-06-05 06:29:08,724.724 INFO    ] Launching Daemon at Fri Jun  5 06:29:08 IST 2026
[2026-06-05 06:29:08,734.734 INFO    ] ================================================
[2026-06-05 06:29:09,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:29:09
[2026-06-05 06:29:10,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:29:10,393.393 INFO    ] Initializing speech engine...
[2026-06-05 06:29:10,405.405 INFO    ] 2026-06-05 06:29:10
[2026-06-05 06:29:10,713.713 INFO    ] 2026-06-05 06:29:10
[2026-06-05 06:29:10,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:29:11,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:29:11,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:29:11,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:29:11,223.223 INFO    ] time= 05/06/2026 06:29:11
[2026-06-05 06:29:11,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:29:11,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:29:11,383.383 INFO    ] No existing commands found in stream
[2026-06-05 06:29:16,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:29:16,410.410 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 06:29:18,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:29:18,640.640 INFO    ] Checking for system updates...
[2026-06-05 06:29:18,678.678 INFO    ] 200
[2026-06-05 06:29:18,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:18,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:29:18,739.739 INFO    ] No update needed
[2026-06-05 06:29:18,742.742 INFO    ] Checking for camera pi updates...
[2026-06-05 06:29:18,781.781 INFO    ] 200
[2026-06-05 06:29:18,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:18,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:29:18,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:29:18,874.874 INFO    ] No camera update needed
[2026-06-05 06:29:18,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:29:18,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:29:18,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:29:18,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:29:20,930.930 INFO    ] ================================================
[2026-06-05 06:29:20,951.951 INFO    ] Launching Daemon at Fri Jun  5 06:29:20 IST 2026
[2026-06-05 06:29:20,962.962 INFO    ] ================================================
[2026-06-05 06:29:21,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:29:21
[2026-06-05 06:29:22,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:29:22,621.621 INFO    ] Initializing speech engine...
[2026-06-05 06:29:22,633.633 INFO    ] 2026-06-05 06:29:22
[2026-06-05 06:29:22,923.923 INFO    ] 2026-06-05 06:29:22
[2026-06-05 06:29:22,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:29:23,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:29:23,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:29:23,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:29:23,379.379 INFO    ] time= 05/06/2026 06:29:23
[2026-06-05 06:29:23,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:29:23,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:29:23,532.532 INFO    ] No existing commands found in stream
[2026-06-05 06:29:28,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:29:28,550.550 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 06:29:31,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:29:31,659.659 INFO    ] Checking for system updates...
[2026-06-05 06:29:31,697.697 INFO    ] 200
[2026-06-05 06:29:31,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:31,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:29:31,778.778 INFO    ] No update needed
[2026-06-05 06:29:31,781.781 INFO    ] Checking for camera pi updates...
[2026-06-05 06:29:31,824.824 INFO    ] 200
[2026-06-05 06:29:31,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:31,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:29:31,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:29:31,921.921 INFO    ] No camera update needed
[2026-06-05 06:29:31,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:29:31,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:29:31,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:29:31,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:29:33,984.984 INFO    ] ================================================
[2026-06-05 06:29:34,999.999 INFO    ] Launching Daemon at Fri Jun  5 06:29:33 IST 2026
[2026-06-05 06:29:34,010.010 INFO    ] ================================================
[2026-06-05 06:29:34,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:29:34
[2026-06-05 06:29:35,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:29:35,444.444 INFO    ] Initializing speech engine...
[2026-06-05 06:29:35,459.459 INFO    ] 2026-06-05 06:29:35
[2026-06-05 06:29:35,722.722 INFO    ] 2026-06-05 06:29:35
[2026-06-05 06:29:35,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:29:36,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:29:36,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:29:36,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:29:36,194.194 INFO    ] time= 05/06/2026 06:29:36
[2026-06-05 06:29:36,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:29:36,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:29:36,342.342 INFO    ] No existing commands found in stream
[2026-06-05 06:29:41,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:29:41,357.357 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 06:29:43,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:29:43,121.121 INFO    ] Checking for system updates...
[2026-06-05 06:29:43,162.162 INFO    ] 200
[2026-06-05 06:29:43,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:43,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:29:43,221.221 INFO    ] No update needed
[2026-06-05 06:29:43,223.223 INFO    ] Checking for camera pi updates...
[2026-06-05 06:29:43,257.257 INFO    ] 200
[2026-06-05 06:29:43,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:43,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:29:43,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:29:43,345.345 INFO    ] No camera update needed
[2026-06-05 06:29:43,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:29:43,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:29:43,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:29:43,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:29:45,401.401 INFO    ] ================================================
[2026-06-05 06:29:45,417.417 INFO    ] Launching Daemon at Fri Jun  5 06:29:45 IST 2026
[2026-06-05 06:29:45,428.428 INFO    ] ================================================
[2026-06-05 06:29:46,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:29:46
[2026-06-05 06:29:46,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:29:46,913.913 INFO    ] Initializing speech engine...
[2026-06-05 06:29:46,923.923 INFO    ] 2026-06-05 06:29:46
[2026-06-05 06:29:47,171.171 INFO    ] 2026-06-05 06:29:47
[2026-06-05 06:29:47,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:29:47,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:29:47,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:29:47,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:29:47,674.674 INFO    ] time= 05/06/2026 06:29:47
[2026-06-05 06:29:47,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:29:47,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:29:47,846.846 INFO    ] No existing commands found in stream
[2026-06-05 06:29:52,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:29:52,870.870 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 06:29:54,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:29:54,191.191 INFO    ] Checking for system updates...
[2026-06-05 06:29:54,237.237 INFO    ] 200
[2026-06-05 06:29:54,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:54,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:29:54,297.297 INFO    ] No update needed
[2026-06-05 06:29:54,300.300 INFO    ] Checking for camera pi updates...
[2026-06-05 06:29:54,335.335 INFO    ] 200
[2026-06-05 06:29:54,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:29:54,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:29:54,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:29:54,421.421 INFO    ] No camera update needed
[2026-06-05 06:29:54,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:29:54,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:29:54,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:29:54,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:29:56,478.478 INFO    ] ================================================
[2026-06-05 06:29:56,493.493 INFO    ] Launching Daemon at Fri Jun  5 06:29:56 IST 2026
[2026-06-05 06:29:56,505.505 INFO    ] ================================================
[2026-06-05 06:29:57,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:29:57
[2026-06-05 06:29:57,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:29:58,068.068 INFO    ] Initializing speech engine...
[2026-06-05 06:29:58,090.090 INFO    ] 2026-06-05 06:29:58
[2026-06-05 06:29:58,343.343 INFO    ] 2026-06-05 06:29:58
[2026-06-05 06:29:58,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:29:58,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:29:58,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:29:58,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:29:58,814.814 INFO    ] time= 05/06/2026 06:29:58
[2026-06-05 06:29:58,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:29:58,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:29:58,965.965 INFO    ] No existing commands found in stream
[2026-06-05 06:30:03,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:30:03,980.980 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 06:30:08,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:30:08,210.210 INFO    ] Checking for system updates...
[2026-06-05 06:30:08,246.246 INFO    ] 200
[2026-06-05 06:30:08,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:08,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:30:08,303.303 INFO    ] No update needed
[2026-06-05 06:30:08,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 06:30:08,344.344 INFO    ] 200
[2026-06-05 06:30:08,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:08,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:30:08,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:30:08,429.429 INFO    ] No camera update needed
[2026-06-05 06:30:08,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:30:08,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:30:08,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:30:08,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:30:10,485.485 INFO    ] ================================================
[2026-06-05 06:30:10,501.501 INFO    ] Launching Daemon at Fri Jun  5 06:30:10 IST 2026
[2026-06-05 06:30:10,513.513 INFO    ] ================================================
[2026-06-05 06:30:11,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:30:11
[2026-06-05 06:30:11,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:30:11,946.946 INFO    ] Initializing speech engine...
[2026-06-05 06:30:11,956.956 INFO    ] 2026-06-05 06:30:11
[2026-06-05 06:30:12,207.207 INFO    ] 2026-06-05 06:30:12
[2026-06-05 06:30:12,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:30:12,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:30:12,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:30:12,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:30:12,588.588 INFO    ] time= 05/06/2026 06:30:12
[2026-06-05 06:30:12,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:30:12,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:30:12,761.761 INFO    ] No existing commands found in stream
[2026-06-05 06:30:17,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:30:17,794.794 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 06:30:21,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:30:22,003.003 INFO    ] Checking for system updates...
[2026-06-05 06:30:22,046.046 INFO    ] 200
[2026-06-05 06:30:22,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:22,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:30:22,112.112 INFO    ] No update needed
[2026-06-05 06:30:22,115.115 INFO    ] Checking for camera pi updates...
[2026-06-05 06:30:22,153.153 INFO    ] 200
[2026-06-05 06:30:22,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:22,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:30:22,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:30:22,251.251 INFO    ] No camera update needed
[2026-06-05 06:30:22,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:30:22,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:30:22,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:30:22,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:30:24,309.309 INFO    ] ================================================
[2026-06-05 06:30:24,324.324 INFO    ] Launching Daemon at Fri Jun  5 06:30:24 IST 2026
[2026-06-05 06:30:24,335.335 INFO    ] ================================================
[2026-06-05 06:30:24,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:30:24
[2026-06-05 06:30:25,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:30:25,754.754 INFO    ] Initializing speech engine...
[2026-06-05 06:30:25,768.768 INFO    ] 2026-06-05 06:30:25
[2026-06-05 06:30:26,057.057 INFO    ] 2026-06-05 06:30:26
[2026-06-05 06:30:26,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:30:26,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:30:26,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:30:26,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:30:26,432.432 INFO    ] time= 05/06/2026 06:30:26
[2026-06-05 06:30:26,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:30:26,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:30:26,592.592 INFO    ] No existing commands found in stream
[2026-06-05 06:30:31,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:30:31,630.630 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 06:30:34,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:30:34,374.374 INFO    ] Checking for system updates...
[2026-06-05 06:30:34,487.487 INFO    ] 200
[2026-06-05 06:30:34,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:34,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:30:34,545.545 INFO    ] No update needed
[2026-06-05 06:30:34,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 06:30:34,586.586 INFO    ] 200
[2026-06-05 06:30:34,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:34,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:30:34,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:30:34,672.672 INFO    ] No camera update needed
[2026-06-05 06:30:34,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:30:34,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:30:34,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:30:34,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:30:36,727.727 INFO    ] ================================================
[2026-06-05 06:30:36,745.745 INFO    ] Launching Daemon at Fri Jun  5 06:30:36 IST 2026
[2026-06-05 06:30:36,756.756 INFO    ] ================================================
[2026-06-05 06:30:37,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:30:37
[2026-06-05 06:30:38,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:30:38,416.416 INFO    ] Initializing speech engine...
[2026-06-05 06:30:38,427.427 INFO    ] 2026-06-05 06:30:38
[2026-06-05 06:30:38,739.739 INFO    ] 2026-06-05 06:30:38
[2026-06-05 06:30:38,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:30:39,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:30:39,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:30:39,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:30:39,301.301 INFO    ] time= 05/06/2026 06:30:39
[2026-06-05 06:30:39,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:30:39,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:30:39,504.504 INFO    ] No existing commands found in stream
[2026-06-05 06:30:44,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:30:44,538.538 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 06:30:46,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:30:46,060.060 INFO    ] Checking for system updates...
[2026-06-05 06:30:46,097.097 INFO    ] 200
[2026-06-05 06:30:46,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:46,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:30:46,156.156 INFO    ] No update needed
[2026-06-05 06:30:46,158.158 INFO    ] Checking for camera pi updates...
[2026-06-05 06:30:46,192.192 INFO    ] 200
[2026-06-05 06:30:46,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:46,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:30:46,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:30:46,289.289 INFO    ] No camera update needed
[2026-06-05 06:30:46,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:30:46,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:30:46,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:30:46,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:30:48,343.343 INFO    ] ================================================
[2026-06-05 06:30:48,361.361 INFO    ] Launching Daemon at Fri Jun  5 06:30:48 IST 2026
[2026-06-05 06:30:48,372.372 INFO    ] ================================================
[2026-06-05 06:30:49,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:30:49
[2026-06-05 06:30:49,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:30:50,009.009 INFO    ] Initializing speech engine...
[2026-06-05 06:30:50,020.020 INFO    ] 2026-06-05 06:30:50
[2026-06-05 06:30:50,309.309 INFO    ] 2026-06-05 06:30:50
[2026-06-05 06:30:50,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:30:50,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:30:50,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:30:50,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:30:50,804.804 INFO    ] time= 05/06/2026 06:30:50
[2026-06-05 06:30:50,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:30:50,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:30:50,991.991 INFO    ] No existing commands found in stream
[2026-06-05 06:30:56,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:30:56,020.020 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 06:30:58,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:30:58,932.932 INFO    ] Checking for system updates...
[2026-06-05 06:30:58,970.970 INFO    ] 200
[2026-06-05 06:30:58,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:59,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:30:59,032.032 INFO    ] No update needed
[2026-06-05 06:30:59,035.035 INFO    ] Checking for camera pi updates...
[2026-06-05 06:30:59,070.070 INFO    ] 200
[2026-06-05 06:30:59,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:30:59,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:30:59,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:30:59,163.163 INFO    ] No camera update needed
[2026-06-05 06:30:59,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:30:59,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:30:59,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:30:59,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:31:01,224.224 INFO    ] ================================================
[2026-06-05 06:31:01,267.267 INFO    ] Launching Daemon at Fri Jun  5 06:31:01 IST 2026
[2026-06-05 06:31:01,302.302 INFO    ] ================================================
[2026-06-05 06:31:02,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:31:02
[2026-06-05 06:31:02,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:31:03,083.083 INFO    ] Initializing speech engine...
[2026-06-05 06:31:03,092.092 INFO    ] 2026-06-05 06:31:03
[2026-06-05 06:31:03,359.359 INFO    ] 2026-06-05 06:31:03
[2026-06-05 06:31:03,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:31:03,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:31:03,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:31:03,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:31:03,713.713 INFO    ] time= 05/06/2026 06:31:03
[2026-06-05 06:31:03,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:31:03,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:31:03,795.795 INFO    ] No existing commands found in stream
[2026-06-05 06:31:08,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:31:08,809.809 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 06:31:09,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:31:09,881.881 INFO    ] Checking for system updates...
[2026-06-05 06:31:09,918.918 INFO    ] 200
[2026-06-05 06:31:09,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:09,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:31:09,978.978 INFO    ] No update needed
[2026-06-05 06:31:09,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 06:31:10,023.023 INFO    ] 200
[2026-06-05 06:31:10,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:10,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:31:10,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:31:10,123.123 INFO    ] No camera update needed
[2026-06-05 06:31:10,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:31:10,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:31:10,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:31:10,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:31:12,179.179 INFO    ] ================================================
[2026-06-05 06:31:12,194.194 INFO    ] Launching Daemon at Fri Jun  5 06:31:12 IST 2026
[2026-06-05 06:31:12,206.206 INFO    ] ================================================
[2026-06-05 06:31:12,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:31:12
[2026-06-05 06:31:13,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:31:13,642.642 INFO    ] Initializing speech engine...
[2026-06-05 06:31:13,652.652 INFO    ] 2026-06-05 06:31:13
[2026-06-05 06:31:13,919.919 INFO    ] 2026-06-05 06:31:13
[2026-06-05 06:31:13,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:31:14,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:31:14,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:31:14,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:31:14,317.317 INFO    ] time= 05/06/2026 06:31:14
[2026-06-05 06:31:14,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:31:14,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:31:14,425.425 INFO    ] No existing commands found in stream
[2026-06-05 06:31:19,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:31:19,440.440 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 06:31:21,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:31:21,527.527 INFO    ] Checking for system updates...
[2026-06-05 06:31:21,568.568 INFO    ] 200
[2026-06-05 06:31:21,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:21,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:31:21,636.636 INFO    ] No update needed
[2026-06-05 06:31:21,639.639 INFO    ] Checking for camera pi updates...
[2026-06-05 06:31:21,675.675 INFO    ] 200
[2026-06-05 06:31:21,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:21,725.725 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:31:21,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:31:21,772.772 INFO    ] No camera update needed
[2026-06-05 06:31:21,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:31:21,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:31:21,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:31:21,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:31:23,831.831 INFO    ] ================================================
[2026-06-05 06:31:23,846.846 INFO    ] Launching Daemon at Fri Jun  5 06:31:23 IST 2026
[2026-06-05 06:31:23,857.857 INFO    ] ================================================
[2026-06-05 06:31:24,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:31:24
[2026-06-05 06:31:25,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:31:25,495.495 INFO    ] Initializing speech engine...
[2026-06-05 06:31:25,502.502 INFO    ] 2026-06-05 06:31:25
[2026-06-05 06:31:25,790.790 INFO    ] 2026-06-05 06:31:25
[2026-06-05 06:31:25,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:31:26,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:31:26,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:31:26,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:31:26,325.325 INFO    ] time= 05/06/2026 06:31:26
[2026-06-05 06:31:26,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:31:26,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:31:26,464.464 INFO    ] No existing commands found in stream
[2026-06-05 06:31:31,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:31:31,495.495 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 06:31:35,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:31:35,837.837 INFO    ] Checking for system updates...
[2026-06-05 06:31:35,874.874 INFO    ] 200
[2026-06-05 06:31:35,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:35,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:31:35,934.934 INFO    ] No update needed
[2026-06-05 06:31:35,936.936 INFO    ] Checking for camera pi updates...
[2026-06-05 06:31:35,971.971 INFO    ] 200
[2026-06-05 06:31:35,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:36,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:31:36,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:31:36,070.070 INFO    ] No camera update needed
[2026-06-05 06:31:36,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:31:36,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:31:36,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:31:36,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:31:38,130.130 INFO    ] ================================================
[2026-06-05 06:31:38,147.147 INFO    ] Launching Daemon at Fri Jun  5 06:31:38 IST 2026
[2026-06-05 06:31:38,159.159 INFO    ] ================================================
[2026-06-05 06:31:38,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:31:38
[2026-06-05 06:31:39,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:31:39,596.596 INFO    ] Initializing speech engine...
[2026-06-05 06:31:39,602.602 INFO    ] 2026-06-05 06:31:39
[2026-06-05 06:31:39,876.876 INFO    ] 2026-06-05 06:31:39
[2026-06-05 06:31:39,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:31:40,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:31:40,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:31:40,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:31:40,254.254 INFO    ] time= 05/06/2026 06:31:40
[2026-06-05 06:31:40,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:31:40,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:31:40,431.431 INFO    ] No existing commands found in stream
[2026-06-05 06:31:45,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:31:45,464.464 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 06:31:46,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:31:46,499.499 INFO    ] Checking for system updates...
[2026-06-05 06:31:46,536.536 INFO    ] 200
[2026-06-05 06:31:46,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:46,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:31:46,594.594 INFO    ] No update needed
[2026-06-05 06:31:46,596.596 INFO    ] Checking for camera pi updates...
[2026-06-05 06:31:46,631.631 INFO    ] 200
[2026-06-05 06:31:46,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:46,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:31:46,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:31:46,730.730 INFO    ] No camera update needed
[2026-06-05 06:31:46,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:31:46,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:31:46,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:31:46,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:31:48,786.786 INFO    ] ================================================
[2026-06-05 06:31:48,802.802 INFO    ] Launching Daemon at Fri Jun  5 06:31:48 IST 2026
[2026-06-05 06:31:48,813.813 INFO    ] ================================================
[2026-06-05 06:31:49,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:31:49
[2026-06-05 06:31:50,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:31:50,278.278 INFO    ] Initializing speech engine...
[2026-06-05 06:31:50,294.294 INFO    ] 2026-06-05 06:31:50
[2026-06-05 06:31:50,571.571 INFO    ] 2026-06-05 06:31:50
[2026-06-05 06:31:50,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:31:50,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:31:50,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:31:50,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:31:50,963.963 INFO    ] time= 05/06/2026 06:31:50
[2026-06-05 06:31:50,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:31:51,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:31:51,089.089 INFO    ] No existing commands found in stream
[2026-06-05 06:31:56,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:31:56,103.103 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 06:31:59,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:31:59,748.748 INFO    ] Checking for system updates...
[2026-06-05 06:31:59,784.784 INFO    ] 200
[2026-06-05 06:31:59,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:59,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:31:59,842.842 INFO    ] No update needed
[2026-06-05 06:31:59,845.845 INFO    ] Checking for camera pi updates...
[2026-06-05 06:31:59,879.879 INFO    ] 200
[2026-06-05 06:31:59,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:31:59,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:31:59,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:31:59,975.975 INFO    ] No camera update needed
[2026-06-05 06:31:59,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:31:59,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:31:59,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:31:59,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:32:02,033.033 INFO    ] ================================================
[2026-06-05 06:32:02,051.051 INFO    ] Launching Daemon at Fri Jun  5 06:32:02 IST 2026
[2026-06-05 06:32:02,063.063 INFO    ] ================================================
[2026-06-05 06:32:02,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:32:02
[2026-06-05 06:32:03,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:32:03,781.781 INFO    ] Initializing speech engine...
[2026-06-05 06:32:03,795.795 INFO    ] 2026-06-05 06:32:03
[2026-06-05 06:32:04,083.083 INFO    ] 2026-06-05 06:32:04
[2026-06-05 06:32:04,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:32:04,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:32:04,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:32:04,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:32:04,569.569 INFO    ] time= 05/06/2026 06:32:04
[2026-06-05 06:32:04,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:32:04,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:32:04,706.706 INFO    ] No existing commands found in stream
[2026-06-05 06:32:09,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:32:09,724.724 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 06:32:13,817.817 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:32:13,820.820 INFO    ] Checking for system updates...
[2026-06-05 06:32:13,858.858 INFO    ] 200
[2026-06-05 06:32:13,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:32:13,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:32:13,918.918 INFO    ] No update needed
[2026-06-05 06:32:13,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 06:32:13,961.961 INFO    ] 200
[2026-06-05 06:32:13,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:32:14,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:32:14,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:32:14,162.162 INFO    ] No camera update needed
[2026-06-05 06:32:14,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:32:14,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:32:14,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:32:14,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:32:16,227.227 INFO    ] ================================================
[2026-06-05 06:32:16,242.242 INFO    ] Launching Daemon at Fri Jun  5 06:32:16 IST 2026
[2026-06-05 06:32:16,253.253 INFO    ] ================================================
[2026-06-05 06:32:16,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:32:16
[2026-06-05 06:32:17,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:32:17,930.930 INFO    ] Initializing speech engine...
[2026-06-05 06:32:17,936.936 INFO    ] 2026-06-05 06:32:17
[2026-06-05 06:32:18,227.227 INFO    ] 2026-06-05 06:32:18
[2026-06-05 06:32:18,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:32:18,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:32:18,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:32:18,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:32:18,761.761 INFO    ] time= 05/06/2026 06:32:18
[2026-06-05 06:32:18,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:32:18,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:32:18,915.915 INFO    ] No existing commands found in stream
[2026-06-05 06:32:23,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:32:23,945.945 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 06:32:27,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:32:27,372.372 INFO    ] Checking for system updates...
[2026-06-05 06:32:27,411.411 INFO    ] 200
[2026-06-05 06:32:27,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:32:27,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:32:27,471.471 INFO    ] No update needed
[2026-06-05 06:32:27,474.474 INFO    ] Checking for camera pi updates...
[2026-06-05 06:32:27,510.510 INFO    ] 200
[2026-06-05 06:32:27,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:32:27,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:32:27,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:32:27,586.586 INFO    ] No camera update needed
[2026-06-05 06:32:27,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:32:27,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:32:27,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:32:27,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:32:29,647.647 INFO    ] ================================================
[2026-06-05 06:32:29,663.663 INFO    ] Launching Daemon at Fri Jun  5 06:32:29 IST 2026
[2026-06-05 06:32:29,674.674 INFO    ] ================================================
[2026-06-05 06:32:30,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:32:30
[2026-06-05 06:32:31,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:32:31,406.406 INFO    ] Initializing speech engine...
[2026-06-05 06:32:31,415.415 INFO    ] 2026-06-05 06:32:31
[2026-06-05 06:32:31,745.745 INFO    ] 2026-06-05 06:32:31
[2026-06-05 06:32:31,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:32:32,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:32:32,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:32:32,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:32:32,217.217 INFO    ] time= 05/06/2026 06:32:32
[2026-06-05 06:32:32,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:32:32,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:32:32,346.346 INFO    ] No existing commands found in stream
[2026-06-05 06:32:37,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:32:37,361.361 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 06:32:41,094.094 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:32:41,097.097 INFO    ] Checking for system updates...
[2026-06-05 06:32:41,134.134 INFO    ] 200
[2026-06-05 06:32:41,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:32:41,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:32:41,207.207 INFO    ] No update needed
[2026-06-05 06:32:41,210.210 INFO    ] Checking for camera pi updates...
[2026-06-05 06:32:41,249.249 INFO    ] 200
[2026-06-05 06:32:41,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:32:41,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:32:41,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:32:41,347.347 INFO    ] No camera update needed
[2026-06-05 06:32:41,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:32:41,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:32:41,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:32:41,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:32:43,404.404 INFO    ] ================================================
[2026-06-05 06:32:43,420.420 INFO    ] Launching Daemon at Fri Jun  5 06:32:43 IST 2026
[2026-06-05 06:32:43,431.431 INFO    ] ================================================
[2026-06-05 06:32:44,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:32:44
[2026-06-05 06:32:44,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:32:44,874.874 INFO    ] Initializing speech engine...
[2026-06-05 06:32:44,881.881 INFO    ] 2026-06-05 06:32:44
[2026-06-05 06:32:45,183.183 INFO    ] 2026-06-05 06:32:45
[2026-06-05 06:32:45,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:32:45,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:32:45,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:32:45,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:32:45,575.575 INFO    ] time= 05/06/2026 06:32:45
[2026-06-05 06:32:45,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:32:45,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:32:45,703.703 INFO    ] No existing commands found in stream
[2026-06-05 06:32:50,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:32:50,716.716 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 06:32:54,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:32:54,644.644 INFO    ] Checking for system updates...
[2026-06-05 06:32:54,685.685 INFO    ] 200
[2026-06-05 06:32:54,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:32:54,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:32:54,745.745 INFO    ] No update needed
[2026-06-05 06:32:54,748.748 INFO    ] Checking for camera pi updates...
[2026-06-05 06:32:54,786.786 INFO    ] 200
[2026-06-05 06:32:54,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:32:54,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:32:54,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:32:54,873.873 INFO    ] No camera update needed
[2026-06-05 06:32:54,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:32:54,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:32:54,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:32:54,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:32:56,929.929 INFO    ] ================================================
[2026-06-05 06:32:56,946.946 INFO    ] Launching Daemon at Fri Jun  5 06:32:56 IST 2026
[2026-06-05 06:32:56,957.957 INFO    ] ================================================
[2026-06-05 06:32:57,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:32:57
[2026-06-05 06:32:58,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:32:58,371.371 INFO    ] Initializing speech engine...
[2026-06-05 06:32:58,380.380 INFO    ] 2026-06-05 06:32:58
[2026-06-05 06:32:58,678.678 INFO    ] 2026-06-05 06:32:58
[2026-06-05 06:32:58,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:32:58,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:32:58,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:32:59,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:32:59,065.065 INFO    ] time= 05/06/2026 06:32:59
[2026-06-05 06:32:59,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:32:59,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:32:59,191.191 INFO    ] No existing commands found in stream
[2026-06-05 06:33:04,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:33:04,207.207 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 06:33:06,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:33:06,634.634 INFO    ] Checking for system updates...
[2026-06-05 06:33:06,670.670 INFO    ] 200
[2026-06-05 06:33:06,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:06,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:33:06,734.734 INFO    ] No update needed
[2026-06-05 06:33:06,736.736 INFO    ] Checking for camera pi updates...
[2026-06-05 06:33:06,770.770 INFO    ] 200
[2026-06-05 06:33:06,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:06,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:33:06,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:33:06,861.861 INFO    ] No camera update needed
[2026-06-05 06:33:06,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:33:06,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:33:06,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:33:06,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:33:08,919.919 INFO    ] ================================================
[2026-06-05 06:33:08,935.935 INFO    ] Launching Daemon at Fri Jun  5 06:33:08 IST 2026
[2026-06-05 06:33:08,946.946 INFO    ] ================================================
[2026-06-05 06:33:09,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:33:09
[2026-06-05 06:33:10,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:33:10,601.601 INFO    ] Initializing speech engine...
[2026-06-05 06:33:10,608.608 INFO    ] 2026-06-05 06:33:10
[2026-06-05 06:33:10,930.930 INFO    ] 2026-06-05 06:33:10
[2026-06-05 06:33:11,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:33:11,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:33:11,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:33:11,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:33:11,434.434 INFO    ] time= 05/06/2026 06:33:11
[2026-06-05 06:33:11,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:33:11,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:33:11,588.588 INFO    ] No existing commands found in stream
[2026-06-05 06:33:16,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:33:16,607.607 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 06:33:19,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:33:19,367.367 INFO    ] Checking for system updates...
[2026-06-05 06:33:19,405.405 INFO    ] 200
[2026-06-05 06:33:19,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:19,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:33:19,465.465 INFO    ] No update needed
[2026-06-05 06:33:19,468.468 INFO    ] Checking for camera pi updates...
[2026-06-05 06:33:19,507.507 INFO    ] 200
[2026-06-05 06:33:19,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:19,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:33:19,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:33:19,610.610 INFO    ] No camera update needed
[2026-06-05 06:33:19,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:33:19,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:33:19,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:33:19,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:33:21,671.671 INFO    ] ================================================
[2026-06-05 06:33:21,687.687 INFO    ] Launching Daemon at Fri Jun  5 06:33:21 IST 2026
[2026-06-05 06:33:21,698.698 INFO    ] ================================================
[2026-06-05 06:33:22,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:33:22
[2026-06-05 06:33:22,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:33:23,125.125 INFO    ] Initializing speech engine...
[2026-06-05 06:33:23,139.139 INFO    ] 2026-06-05 06:33:23
[2026-06-05 06:33:23,428.428 INFO    ] 2026-06-05 06:33:23
[2026-06-05 06:33:23,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:33:23,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:33:23,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:33:23,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:33:23,857.857 INFO    ] time= 05/06/2026 06:33:23
[2026-06-05 06:33:23,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:33:23,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:33:23,942.942 INFO    ] No existing commands found in stream
[2026-06-05 06:33:28,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:33:28,958.958 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 06:33:32,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:33:32,810.810 INFO    ] Checking for system updates...
[2026-06-05 06:33:32,845.845 INFO    ] 200
[2026-06-05 06:33:32,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:32,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:33:32,903.903 INFO    ] No update needed
[2026-06-05 06:33:32,906.906 INFO    ] Checking for camera pi updates...
[2026-06-05 06:33:32,939.939 INFO    ] 200
[2026-06-05 06:33:32,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:32,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:33:33,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:33:33,029.029 INFO    ] No camera update needed
[2026-06-05 06:33:33,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:33:33,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:33:33,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:33:33,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:33:35,087.087 INFO    ] ================================================
[2026-06-05 06:33:35,103.103 INFO    ] Launching Daemon at Fri Jun  5 06:33:35 IST 2026
[2026-06-05 06:33:35,115.115 INFO    ] ================================================
[2026-06-05 06:33:35,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:33:35
[2026-06-05 06:33:36,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:33:36,591.591 INFO    ] Initializing speech engine...
[2026-06-05 06:33:36,598.598 INFO    ] 2026-06-05 06:33:36
[2026-06-05 06:33:36,857.857 INFO    ] 2026-06-05 06:33:36
[2026-06-05 06:33:36,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:33:37,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:33:37,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:33:37,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:33:37,338.338 INFO    ] time= 05/06/2026 06:33:37
[2026-06-05 06:33:37,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:33:37,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:33:37,480.480 INFO    ] No existing commands found in stream
[2026-06-05 06:33:42,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:33:42,508.508 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 06:33:45,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:33:45,977.977 INFO    ] Checking for system updates...
[2026-06-05 06:33:46,013.013 INFO    ] 200
[2026-06-05 06:33:46,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:46,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:33:46,071.071 INFO    ] No update needed
[2026-06-05 06:33:46,073.073 INFO    ] Checking for camera pi updates...
[2026-06-05 06:33:46,108.108 INFO    ] 200
[2026-06-05 06:33:46,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:46,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:33:46,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:33:46,203.203 INFO    ] No camera update needed
[2026-06-05 06:33:46,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:33:46,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:33:46,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:33:46,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:33:48,261.261 INFO    ] ================================================
[2026-06-05 06:33:48,278.278 INFO    ] Launching Daemon at Fri Jun  5 06:33:48 IST 2026
[2026-06-05 06:33:48,289.289 INFO    ] ================================================
[2026-06-05 06:33:48,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:33:48
[2026-06-05 06:33:49,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:33:49,974.974 INFO    ] Initializing speech engine...
[2026-06-05 06:33:49,988.988 INFO    ] 2026-06-05 06:33:49
[2026-06-05 06:33:50,284.284 INFO    ] 2026-06-05 06:33:50
[2026-06-05 06:33:50,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:33:50,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:33:50,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:33:50,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:33:50,828.828 INFO    ] time= 05/06/2026 06:33:50
[2026-06-05 06:33:50,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:33:50,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:33:50,988.988 INFO    ] No existing commands found in stream
[2026-06-05 06:33:56,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:33:56,019.019 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 06:33:59,387.387 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:33:59,390.390 INFO    ] Checking for system updates...
[2026-06-05 06:33:59,433.433 INFO    ] 200
[2026-06-05 06:33:59,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:59,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:33:59,495.495 INFO    ] No update needed
[2026-06-05 06:33:59,498.498 INFO    ] Checking for camera pi updates...
[2026-06-05 06:33:59,533.533 INFO    ] 200
[2026-06-05 06:33:59,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:33:59,578.578 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:33:59,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:33:59,627.627 INFO    ] No camera update needed
[2026-06-05 06:33:59,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:33:59,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:33:59,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:33:59,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:34:01,689.689 INFO    ] ================================================
[2026-06-05 06:34:01,711.711 INFO    ] Launching Daemon at Fri Jun  5 06:34:01 IST 2026
[2026-06-05 06:34:01,723.723 INFO    ] ================================================
[2026-06-05 06:34:02,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:34:02
[2026-06-05 06:34:03,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:34:03,273.273 INFO    ] Initializing speech engine...
[2026-06-05 06:34:03,282.282 INFO    ] 2026-06-05 06:34:03
[2026-06-05 06:34:03,576.576 INFO    ] 2026-06-05 06:34:03
[2026-06-05 06:34:03,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:34:03,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:34:03,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:34:03,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:34:03,931.931 INFO    ] time= 05/06/2026 06:34:03
[2026-06-05 06:34:03,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:34:03,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:34:04,019.019 INFO    ] No existing commands found in stream
[2026-06-05 06:34:09,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:34:09,047.047 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 06:34:09,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:34:09,476.476 INFO    ] Checking for system updates...
[2026-06-05 06:34:09,517.517 INFO    ] 200
[2026-06-05 06:34:09,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:09,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:34:09,584.584 INFO    ] No update needed
[2026-06-05 06:34:09,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 06:34:09,626.626 INFO    ] 200
[2026-06-05 06:34:09,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:09,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:34:09,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:34:09,733.733 INFO    ] No camera update needed
[2026-06-05 06:34:09,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:34:09,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:34:09,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:34:09,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:34:11,789.789 INFO    ] ================================================
[2026-06-05 06:34:11,805.805 INFO    ] Launching Daemon at Fri Jun  5 06:34:11 IST 2026
[2026-06-05 06:34:11,816.816 INFO    ] ================================================
[2026-06-05 06:34:12,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:34:12
[2026-06-05 06:34:13,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:34:13,312.312 INFO    ] Initializing speech engine...
[2026-06-05 06:34:13,319.319 INFO    ] 2026-06-05 06:34:13
[2026-06-05 06:34:13,581.581 INFO    ] 2026-06-05 06:34:13
[2026-06-05 06:34:13,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:34:13,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:34:13,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:34:13,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:34:14,035.035 INFO    ] time= 05/06/2026 06:34:14
[2026-06-05 06:34:14,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:34:14,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:34:14,187.187 INFO    ] No existing commands found in stream
[2026-06-05 06:34:19,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:34:19,202.202 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 06:34:23,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:34:23,127.127 INFO    ] Checking for system updates...
[2026-06-05 06:34:23,163.163 INFO    ] 200
[2026-06-05 06:34:23,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:23,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:34:23,221.221 INFO    ] No update needed
[2026-06-05 06:34:23,224.224 INFO    ] Checking for camera pi updates...
[2026-06-05 06:34:23,261.261 INFO    ] 200
[2026-06-05 06:34:23,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:23,305.305 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:34:23,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:34:23,452.452 INFO    ] No camera update needed
[2026-06-05 06:34:23,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:34:23,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:34:23,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:34:23,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:34:25,508.508 INFO    ] ================================================
[2026-06-05 06:34:25,525.525 INFO    ] Launching Daemon at Fri Jun  5 06:34:25 IST 2026
[2026-06-05 06:34:25,535.535 INFO    ] ================================================
[2026-06-05 06:34:26,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:34:26
[2026-06-05 06:34:26,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:34:27,173.173 INFO    ] Initializing speech engine...
[2026-06-05 06:34:27,181.181 INFO    ] 2026-06-05 06:34:27
[2026-06-05 06:34:27,486.486 INFO    ] 2026-06-05 06:34:27
[2026-06-05 06:34:27,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:34:27,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:34:27,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:34:27,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:34:27,998.998 INFO    ] time= 05/06/2026 06:34:27
[2026-06-05 06:34:28,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:34:28,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:34:28,151.151 INFO    ] No existing commands found in stream
[2026-06-05 06:34:33,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:34:33,168.168 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 06:34:35,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:34:35,366.366 INFO    ] Checking for system updates...
[2026-06-05 06:34:35,403.403 INFO    ] 200
[2026-06-05 06:34:35,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:35,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:34:35,464.464 INFO    ] No update needed
[2026-06-05 06:34:35,467.467 INFO    ] Checking for camera pi updates...
[2026-06-05 06:34:35,505.505 INFO    ] 200
[2026-06-05 06:34:35,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:35,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:34:35,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:34:35,601.601 INFO    ] No camera update needed
[2026-06-05 06:34:35,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:34:35,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:34:35,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:34:35,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:34:37,660.660 INFO    ] ================================================
[2026-06-05 06:34:37,676.676 INFO    ] Launching Daemon at Fri Jun  5 06:34:37 IST 2026
[2026-06-05 06:34:37,687.687 INFO    ] ================================================
[2026-06-05 06:34:38,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:34:38
[2026-06-05 06:34:38,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:34:39,126.126 INFO    ] Initializing speech engine...
[2026-06-05 06:34:39,139.139 INFO    ] 2026-06-05 06:34:39
[2026-06-05 06:34:39,426.426 INFO    ] 2026-06-05 06:34:39
[2026-06-05 06:34:39,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:34:39,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:34:39,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:34:39,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:34:39,818.818 INFO    ] time= 05/06/2026 06:34:39
[2026-06-05 06:34:39,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:34:39,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:34:39,929.929 INFO    ] No existing commands found in stream
[2026-06-05 06:34:44,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:34:44,968.968 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 06:34:45,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:34:45,957.957 INFO    ] Checking for system updates...
[2026-06-05 06:34:45,993.993 INFO    ] 200
[2026-06-05 06:34:45,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:46,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:34:46,052.052 INFO    ] No update needed
[2026-06-05 06:34:46,055.055 INFO    ] Checking for camera pi updates...
[2026-06-05 06:34:46,093.093 INFO    ] 200
[2026-06-05 06:34:46,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:46,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:34:46,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:34:46,180.180 INFO    ] No camera update needed
[2026-06-05 06:34:46,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:34:46,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:34:46,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:34:46,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:34:48,237.237 INFO    ] ================================================
[2026-06-05 06:34:48,252.252 INFO    ] Launching Daemon at Fri Jun  5 06:34:48 IST 2026
[2026-06-05 06:34:48,263.263 INFO    ] ================================================
[2026-06-05 06:34:48,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:34:48
[2026-06-05 06:34:49,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:34:49,709.709 INFO    ] Initializing speech engine...
[2026-06-05 06:34:49,719.719 INFO    ] 2026-06-05 06:34:49
[2026-06-05 06:34:49,995.995 INFO    ] 2026-06-05 06:34:49
[2026-06-05 06:34:50,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:34:50,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:34:50,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:34:50,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:34:50,489.489 INFO    ] time= 05/06/2026 06:34:50
[2026-06-05 06:34:50,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:34:50,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:34:50,686.686 INFO    ] No existing commands found in stream
[2026-06-05 06:34:55,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:34:55,720.720 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 06:34:59,276.276 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:34:59,279.279 INFO    ] Checking for system updates...
[2026-06-05 06:34:59,317.317 INFO    ] 200
[2026-06-05 06:34:59,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:59,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:34:59,382.382 INFO    ] No update needed
[2026-06-05 06:34:59,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 06:34:59,419.419 INFO    ] 200
[2026-06-05 06:34:59,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:34:59,463.463 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:34:59,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:34:59,511.511 INFO    ] No camera update needed
[2026-06-05 06:34:59,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:34:59,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:34:59,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:34:59,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:35:01,592.592 INFO    ] ================================================
[2026-06-05 06:35:01,631.631 INFO    ] Launching Daemon at Fri Jun  5 06:35:01 IST 2026
[2026-06-05 06:35:01,668.668 INFO    ] ================================================
[2026-06-05 06:35:02,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:35:02
[2026-06-05 06:35:03,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:35:03,349.349 INFO    ] Initializing speech engine...
[2026-06-05 06:35:03,361.361 INFO    ] 2026-06-05 06:35:03
[2026-06-05 06:35:03,610.610 INFO    ] 2026-06-05 06:35:03
[2026-06-05 06:35:03,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:35:03,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:35:03,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:35:03,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:35:03,978.978 INFO    ] time= 05/06/2026 06:35:03
[2026-06-05 06:35:03,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:35:04,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:35:04,153.153 INFO    ] No existing commands found in stream
[2026-06-05 06:35:09,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:35:09,186.186 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 06:35:09,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:35:09,727.727 INFO    ] Checking for system updates...
[2026-06-05 06:35:09,763.763 INFO    ] 200
[2026-06-05 06:35:09,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:09,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:35:09,828.828 INFO    ] No update needed
[2026-06-05 06:35:09,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 06:35:09,864.864 INFO    ] 200
[2026-06-05 06:35:09,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:09,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:35:09,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:35:09,957.957 INFO    ] No camera update needed
[2026-06-05 06:35:09,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:35:09,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:35:09,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:35:09,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:35:12,016.016 INFO    ] ================================================
[2026-06-05 06:35:12,032.032 INFO    ] Launching Daemon at Fri Jun  5 06:35:12 IST 2026
[2026-06-05 06:35:12,042.042 INFO    ] ================================================
[2026-06-05 06:35:12,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:35:12
[2026-06-05 06:35:13,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:35:13,452.452 INFO    ] Initializing speech engine...
[2026-06-05 06:35:13,458.458 INFO    ] 2026-06-05 06:35:13
[2026-06-05 06:35:13,750.750 INFO    ] 2026-06-05 06:35:13
[2026-06-05 06:35:13,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:35:14,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:35:14,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:35:14,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:35:14,166.166 INFO    ] time= 05/06/2026 06:35:14
[2026-06-05 06:35:14,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:35:14,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:35:14,311.311 INFO    ] No existing commands found in stream
[2026-06-05 06:35:19,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:35:19,339.339 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 06:35:21,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:35:21,543.543 INFO    ] Checking for system updates...
[2026-06-05 06:35:21,580.580 INFO    ] 200
[2026-06-05 06:35:21,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:21,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:35:21,640.640 INFO    ] No update needed
[2026-06-05 06:35:21,643.643 INFO    ] Checking for camera pi updates...
[2026-06-05 06:35:21,678.678 INFO    ] 200
[2026-06-05 06:35:21,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:21,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:35:21,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:35:21,768.768 INFO    ] No camera update needed
[2026-06-05 06:35:21,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:35:21,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:35:21,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:35:21,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:35:23,828.828 INFO    ] ================================================
[2026-06-05 06:35:23,843.843 INFO    ] Launching Daemon at Fri Jun  5 06:35:23 IST 2026
[2026-06-05 06:35:23,854.854 INFO    ] ================================================
[2026-06-05 06:35:24,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:35:24
[2026-06-05 06:35:25,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:35:25,303.303 INFO    ] Initializing speech engine...
[2026-06-05 06:35:25,312.312 INFO    ] 2026-06-05 06:35:25
[2026-06-05 06:35:25,566.566 INFO    ] 2026-06-05 06:35:25
[2026-06-05 06:35:25,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:35:25,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:35:25,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:35:25,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:35:25,945.945 INFO    ] time= 05/06/2026 06:35:25
[2026-06-05 06:35:25,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:35:25,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:35:26,102.102 INFO    ] No existing commands found in stream
[2026-06-05 06:35:31,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:35:31,130.130 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 06:35:35,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:35:35,172.172 INFO    ] Checking for system updates...
[2026-06-05 06:35:35,212.212 INFO    ] 200
[2026-06-05 06:35:35,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:35,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:35:35,272.272 INFO    ] No update needed
[2026-06-05 06:35:35,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 06:35:35,312.312 INFO    ] 200
[2026-06-05 06:35:35,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:35,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:35:35,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:35:35,398.398 INFO    ] No camera update needed
[2026-06-05 06:35:35,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:35:35,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:35:35,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:35:35,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:35:37,454.454 INFO    ] ================================================
[2026-06-05 06:35:37,471.471 INFO    ] Launching Daemon at Fri Jun  5 06:35:37 IST 2026
[2026-06-05 06:35:37,482.482 INFO    ] ================================================
[2026-06-05 06:35:38,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:35:38
[2026-06-05 06:35:38,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:35:39,140.140 INFO    ] Initializing speech engine...
[2026-06-05 06:35:39,152.152 INFO    ] 2026-06-05 06:35:39
[2026-06-05 06:35:39,425.425 INFO    ] 2026-06-05 06:35:39
[2026-06-05 06:35:39,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:35:39,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:35:39,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:35:39,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:35:39,841.841 INFO    ] time= 05/06/2026 06:35:39
[2026-06-05 06:35:39,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:35:39,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:35:39,974.974 INFO    ] No existing commands found in stream
[2026-06-05 06:35:44,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:35:44,991.991 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 06:35:49,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:35:49,391.391 INFO    ] Checking for system updates...
[2026-06-05 06:35:49,427.427 INFO    ] 200
[2026-06-05 06:35:49,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:49,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:35:49,486.486 INFO    ] No update needed
[2026-06-05 06:35:49,488.488 INFO    ] Checking for camera pi updates...
[2026-06-05 06:35:49,522.522 INFO    ] 200
[2026-06-05 06:35:49,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:49,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:35:49,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:35:49,615.615 INFO    ] No camera update needed
[2026-06-05 06:35:49,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:35:49,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:35:49,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:35:49,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:35:51,670.670 INFO    ] ================================================
[2026-06-05 06:35:51,685.685 INFO    ] Launching Daemon at Fri Jun  5 06:35:51 IST 2026
[2026-06-05 06:35:51,695.695 INFO    ] ================================================
[2026-06-05 06:35:52,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:35:52
[2026-06-05 06:35:52,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:35:53,114.114 INFO    ] Initializing speech engine...
[2026-06-05 06:35:53,124.124 INFO    ] 2026-06-05 06:35:53
[2026-06-05 06:35:53,418.418 INFO    ] 2026-06-05 06:35:53
[2026-06-05 06:35:53,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:35:53,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:35:53,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:35:53,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:35:53,833.833 INFO    ] time= 05/06/2026 06:35:53
[2026-06-05 06:35:53,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:35:53,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:35:53,923.923 INFO    ] No existing commands found in stream
[2026-06-05 06:35:58,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:35:58,938.938 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 06:35:59,716.716 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:35:59,718.718 INFO    ] Checking for system updates...
[2026-06-05 06:35:59,754.754 INFO    ] 200
[2026-06-05 06:35:59,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:59,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:35:59,817.817 INFO    ] No update needed
[2026-06-05 06:35:59,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 06:35:59,853.853 INFO    ] 200
[2026-06-05 06:35:59,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:35:59,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:35:59,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:35:59,937.937 INFO    ] No camera update needed
[2026-06-05 06:35:59,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:35:59,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:35:59,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:35:59,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:36:02,999.999 INFO    ] ================================================
[2026-06-05 06:36:02,029.029 INFO    ] Launching Daemon at Fri Jun  5 06:36:02 IST 2026
[2026-06-05 06:36:02,046.046 INFO    ] ================================================
[2026-06-05 06:36:02,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:36:02
[2026-06-05 06:36:03,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:36:03,578.578 INFO    ] Initializing speech engine...
[2026-06-05 06:36:03,586.586 INFO    ] 2026-06-05 06:36:03
[2026-06-05 06:36:03,889.889 INFO    ] 2026-06-05 06:36:03
[2026-06-05 06:36:03,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:36:04,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:36:04,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:36:04,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:36:04,318.318 INFO    ] time= 05/06/2026 06:36:04
[2026-06-05 06:36:04,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:36:04,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:36:04,497.497 INFO    ] No existing commands found in stream
[2026-06-05 06:36:09,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:36:09,525.525 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 06:36:12,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:36:12,223.223 INFO    ] Checking for system updates...
[2026-06-05 06:36:12,259.259 INFO    ] 200
[2026-06-05 06:36:12,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:12,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:36:12,316.316 INFO    ] No update needed
[2026-06-05 06:36:12,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 06:36:12,353.353 INFO    ] 200
[2026-06-05 06:36:12,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:12,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:36:12,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:36:12,450.450 INFO    ] No camera update needed
[2026-06-05 06:36:12,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:36:12,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:36:12,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:36:12,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:36:14,505.505 INFO    ] ================================================
[2026-06-05 06:36:14,520.520 INFO    ] Launching Daemon at Fri Jun  5 06:36:14 IST 2026
[2026-06-05 06:36:14,531.531 INFO    ] ================================================
[2026-06-05 06:36:15,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:36:15
[2026-06-05 06:36:15,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:36:15,997.997 INFO    ] Initializing speech engine...
[2026-06-05 06:36:16,006.006 INFO    ] 2026-06-05 06:36:15
[2026-06-05 06:36:16,275.275 INFO    ] 2026-06-05 06:36:16
[2026-06-05 06:36:16,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:36:16,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:36:16,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:36:16,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:36:16,701.701 INFO    ] time= 05/06/2026 06:36:16
[2026-06-05 06:36:16,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:36:16,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:36:16,788.788 INFO    ] No existing commands found in stream
[2026-06-05 06:36:21,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:36:21,803.803 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 06:36:24,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:36:24,849.849 INFO    ] Checking for system updates...
[2026-06-05 06:36:24,886.886 INFO    ] 200
[2026-06-05 06:36:24,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:24,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:36:24,944.944 INFO    ] No update needed
[2026-06-05 06:36:24,947.947 INFO    ] Checking for camera pi updates...
[2026-06-05 06:36:24,981.981 INFO    ] 200
[2026-06-05 06:36:24,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:25,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:36:25,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:36:25,072.072 INFO    ] No camera update needed
[2026-06-05 06:36:25,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:36:25,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:36:25,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:36:25,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:36:27,127.127 INFO    ] ================================================
[2026-06-05 06:36:27,142.142 INFO    ] Launching Daemon at Fri Jun  5 06:36:27 IST 2026
[2026-06-05 06:36:27,153.153 INFO    ] ================================================
[2026-06-05 06:36:27,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:36:27
[2026-06-05 06:36:28,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:36:28,583.583 INFO    ] Initializing speech engine...
[2026-06-05 06:36:28,607.607 INFO    ] 2026-06-05 06:36:28
[2026-06-05 06:36:28,889.889 INFO    ] 2026-06-05 06:36:28
[2026-06-05 06:36:28,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:36:29,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:36:29,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:36:29,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:36:29,290.290 INFO    ] time= 05/06/2026 06:36:29
[2026-06-05 06:36:29,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:36:29,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:36:29,400.400 INFO    ] No existing commands found in stream
[2026-06-05 06:36:34,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:36:34,416.416 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 06:36:36,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:36:36,486.486 INFO    ] Checking for system updates...
[2026-06-05 06:36:36,522.522 INFO    ] 200
[2026-06-05 06:36:36,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:36,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:36:36,588.588 INFO    ] No update needed
[2026-06-05 06:36:36,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 06:36:36,624.624 INFO    ] 200
[2026-06-05 06:36:36,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:36,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:36:36,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:36:36,720.720 INFO    ] No camera update needed
[2026-06-05 06:36:36,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:36:36,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:36:36,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:36:36,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:36:38,775.775 INFO    ] ================================================
[2026-06-05 06:36:38,790.790 INFO    ] Launching Daemon at Fri Jun  5 06:36:38 IST 2026
[2026-06-05 06:36:38,802.802 INFO    ] ================================================
[2026-06-05 06:36:39,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:36:39
[2026-06-05 06:36:40,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:36:40,458.458 INFO    ] Initializing speech engine...
[2026-06-05 06:36:40,471.471 INFO    ] 2026-06-05 06:36:40
[2026-06-05 06:36:40,752.752 INFO    ] 2026-06-05 06:36:40
[2026-06-05 06:36:40,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:36:41,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:36:41,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:36:41,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:36:41,223.223 INFO    ] time= 05/06/2026 06:36:41
[2026-06-05 06:36:41,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:36:41,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:36:41,441.441 INFO    ] No existing commands found in stream
[2026-06-05 06:36:46,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:36:46,467.467 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 06:36:48,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:36:48,055.055 INFO    ] Checking for system updates...
[2026-06-05 06:36:48,093.093 INFO    ] 200
[2026-06-05 06:36:48,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:48,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:36:48,153.153 INFO    ] No update needed
[2026-06-05 06:36:48,156.156 INFO    ] Checking for camera pi updates...
[2026-06-05 06:36:48,191.191 INFO    ] 200
[2026-06-05 06:36:48,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:48,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:36:48,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:36:48,281.281 INFO    ] No camera update needed
[2026-06-05 06:36:48,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:36:48,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:36:48,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:36:48,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:36:50,340.340 INFO    ] ================================================
[2026-06-05 06:36:50,355.355 INFO    ] Launching Daemon at Fri Jun  5 06:36:50 IST 2026
[2026-06-05 06:36:50,366.366 INFO    ] ================================================
[2026-06-05 06:36:50,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:36:50
[2026-06-05 06:36:51,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:36:51,813.813 INFO    ] Initializing speech engine...
[2026-06-05 06:36:51,819.819 INFO    ] 2026-06-05 06:36:51
[2026-06-05 06:36:52,065.065 INFO    ] 2026-06-05 06:36:52
[2026-06-05 06:36:52,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:36:52,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:36:52,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:36:52,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:36:52,434.434 INFO    ] time= 05/06/2026 06:36:52
[2026-06-05 06:36:52,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:36:52,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:36:52,618.618 INFO    ] No existing commands found in stream
[2026-06-05 06:36:57,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:36:57,644.644 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 06:36:58,204.204 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:36:58,207.207 INFO    ] Checking for system updates...
[2026-06-05 06:36:58,245.245 INFO    ] 200
[2026-06-05 06:36:58,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:58,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:36:58,313.313 INFO    ] No update needed
[2026-06-05 06:36:58,315.315 INFO    ] Checking for camera pi updates...
[2026-06-05 06:36:58,355.355 INFO    ] 200
[2026-06-05 06:36:58,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:36:58,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:36:58,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:36:58,447.447 INFO    ] No camera update needed
[2026-06-05 06:36:58,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:36:58,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:36:58,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:36:58,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:37:00,509.509 INFO    ] ================================================
[2026-06-05 06:37:00,524.524 INFO    ] Launching Daemon at Fri Jun  5 06:37:00 IST 2026
[2026-06-05 06:37:00,534.534 INFO    ] ================================================
[2026-06-05 06:37:01,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:37:01
[2026-06-05 06:37:01,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:37:02,231.231 INFO    ] Initializing speech engine...
[2026-06-05 06:37:02,242.242 INFO    ] 2026-06-05 06:37:02
[2026-06-05 06:37:02,539.539 INFO    ] 2026-06-05 06:37:02
[2026-06-05 06:37:02,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:37:02,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:37:02,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:37:02,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:37:02,934.934 INFO    ] time= 05/06/2026 06:37:02
[2026-06-05 06:37:02,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:37:02,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:37:03,031.031 INFO    ] No existing commands found in stream
[2026-06-05 06:37:08,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:37:08,051.051 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 06:37:08,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:37:08,833.833 INFO    ] Checking for system updates...
[2026-06-05 06:37:08,873.873 INFO    ] 200
[2026-06-05 06:37:08,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:08,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:37:08,933.933 INFO    ] No update needed
[2026-06-05 06:37:08,936.936 INFO    ] Checking for camera pi updates...
[2026-06-05 06:37:08,970.970 INFO    ] 200
[2026-06-05 06:37:08,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:09,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:37:09,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:37:09,056.056 INFO    ] No camera update needed
[2026-06-05 06:37:09,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:37:09,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:37:09,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:37:09,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:37:11,115.115 INFO    ] ================================================
[2026-06-05 06:37:11,130.130 INFO    ] Launching Daemon at Fri Jun  5 06:37:11 IST 2026
[2026-06-05 06:37:11,141.141 INFO    ] ================================================
[2026-06-05 06:37:11,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:37:11
[2026-06-05 06:37:12,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:37:12,730.730 INFO    ] Initializing speech engine...
[2026-06-05 06:37:12,738.738 INFO    ] 2026-06-05 06:37:12
[2026-06-05 06:37:12,991.991 INFO    ] 2026-06-05 06:37:12
[2026-06-05 06:37:13,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:37:13,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:37:13,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:37:13,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:37:13,491.491 INFO    ] time= 05/06/2026 06:37:13
[2026-06-05 06:37:13,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:37:13,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:37:13,658.658 INFO    ] No existing commands found in stream
[2026-06-05 06:37:18,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:37:18,698.698 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 06:37:21,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:37:21,427.427 INFO    ] Checking for system updates...
[2026-06-05 06:37:21,463.463 INFO    ] 200
[2026-06-05 06:37:21,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:21,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:37:21,522.522 INFO    ] No update needed
[2026-06-05 06:37:21,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 06:37:21,559.559 INFO    ] 200
[2026-06-05 06:37:21,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:21,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:37:21,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:37:21,650.650 INFO    ] No camera update needed
[2026-06-05 06:37:21,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:37:21,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:37:21,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:37:21,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:37:23,705.705 INFO    ] ================================================
[2026-06-05 06:37:23,720.720 INFO    ] Launching Daemon at Fri Jun  5 06:37:23 IST 2026
[2026-06-05 06:37:23,731.731 INFO    ] ================================================
[2026-06-05 06:37:24,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:37:24
[2026-06-05 06:37:25,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:37:25,352.352 INFO    ] Initializing speech engine...
[2026-06-05 06:37:25,366.366 INFO    ] 2026-06-05 06:37:25
[2026-06-05 06:37:25,645.645 INFO    ] 2026-06-05 06:37:25
[2026-06-05 06:37:25,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:37:25,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:37:25,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:37:26,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:37:26,183.183 INFO    ] time= 05/06/2026 06:37:26
[2026-06-05 06:37:26,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:37:26,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:37:26,341.341 INFO    ] No existing commands found in stream
[2026-06-05 06:37:31,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:37:31,369.369 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 06:37:33,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:37:33,228.228 INFO    ] Checking for system updates...
[2026-06-05 06:37:33,271.271 INFO    ] 200
[2026-06-05 06:37:33,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:33,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:37:33,330.330 INFO    ] No update needed
[2026-06-05 06:37:33,332.332 INFO    ] Checking for camera pi updates...
[2026-06-05 06:37:33,370.370 INFO    ] 200
[2026-06-05 06:37:33,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:33,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:37:33,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:37:33,470.470 INFO    ] No camera update needed
[2026-06-05 06:37:33,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:37:33,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:37:33,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:37:33,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:37:35,525.525 INFO    ] ================================================
[2026-06-05 06:37:35,541.541 INFO    ] Launching Daemon at Fri Jun  5 06:37:35 IST 2026
[2026-06-05 06:37:35,551.551 INFO    ] ================================================
[2026-06-05 06:37:36,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:37:36
[2026-06-05 06:37:36,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:37:37,055.055 INFO    ] Initializing speech engine...
[2026-06-05 06:37:37,068.068 INFO    ] 2026-06-05 06:37:37
[2026-06-05 06:37:37,338.338 INFO    ] 2026-06-05 06:37:37
[2026-06-05 06:37:37,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:37:37,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:37:37,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:37:37,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:37:37,820.820 INFO    ] time= 05/06/2026 06:37:37
[2026-06-05 06:37:37,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:37:37,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:37:38,036.036 INFO    ] No existing commands found in stream
[2026-06-05 06:37:43,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:37:43,064.064 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 06:37:46,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:37:46,879.879 INFO    ] Checking for system updates...
[2026-06-05 06:37:46,915.915 INFO    ] 200
[2026-06-05 06:37:46,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:46,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:37:46,976.976 INFO    ] No update needed
[2026-06-05 06:37:46,978.978 INFO    ] Checking for camera pi updates...
[2026-06-05 06:37:47,012.012 INFO    ] 200
[2026-06-05 06:37:47,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:47,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:37:47,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:37:47,100.100 INFO    ] No camera update needed
[2026-06-05 06:37:47,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:37:47,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:37:47,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:37:47,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:37:49,156.156 INFO    ] ================================================
[2026-06-05 06:37:49,171.171 INFO    ] Launching Daemon at Fri Jun  5 06:37:49 IST 2026
[2026-06-05 06:37:49,182.182 INFO    ] ================================================
[2026-06-05 06:37:49,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:37:49
[2026-06-05 06:37:50,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:37:50,828.828 INFO    ] Initializing speech engine...
[2026-06-05 06:37:50,838.838 INFO    ] 2026-06-05 06:37:50
[2026-06-05 06:37:51,122.122 INFO    ] 2026-06-05 06:37:51
[2026-06-05 06:37:51,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:37:51,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:37:51,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:37:51,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:37:51,704.704 INFO    ] time= 05/06/2026 06:37:51
[2026-06-05 06:37:51,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:37:51,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:37:51,841.841 INFO    ] No existing commands found in stream
[2026-06-05 06:37:56,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:37:56,869.869 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 06:37:58,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:37:58,852.852 INFO    ] Checking for system updates...
[2026-06-05 06:37:58,890.890 INFO    ] 200
[2026-06-05 06:37:58,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:58,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:37:58,950.950 INFO    ] No update needed
[2026-06-05 06:37:58,952.952 INFO    ] Checking for camera pi updates...
[2026-06-05 06:37:58,986.986 INFO    ] 200
[2026-06-05 06:37:58,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:37:59,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:37:59,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:37:59,072.072 INFO    ] No camera update needed
[2026-06-05 06:37:59,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:37:59,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:37:59,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:37:59,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:38:01,128.128 INFO    ] ================================================
[2026-06-05 06:38:01,142.142 INFO    ] Launching Daemon at Fri Jun  5 06:38:01 IST 2026
[2026-06-05 06:38:01,153.153 INFO    ] ================================================
[2026-06-05 06:38:01,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:38:01
[2026-06-05 06:38:02,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:38:02,918.918 INFO    ] Initializing speech engine...
[2026-06-05 06:38:02,934.934 INFO    ] 2026-06-05 06:38:02
[2026-06-05 06:38:03,237.237 INFO    ] 2026-06-05 06:38:03
[2026-06-05 06:38:03,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:38:03,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:38:03,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:38:03,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:38:03,597.597 INFO    ] time= 05/06/2026 06:38:03
[2026-06-05 06:38:03,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:38:03,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:38:03,716.716 INFO    ] No existing commands found in stream
[2026-06-05 06:38:08,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:38:08,732.732 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 06:38:11,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:38:11,721.721 INFO    ] Checking for system updates...
[2026-06-05 06:38:11,758.758 INFO    ] 200
[2026-06-05 06:38:11,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:11,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:38:11,821.821 INFO    ] No update needed
[2026-06-05 06:38:11,823.823 INFO    ] Checking for camera pi updates...
[2026-06-05 06:38:11,858.858 INFO    ] 200
[2026-06-05 06:38:11,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:11,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:38:11,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:38:11,950.950 INFO    ] No camera update needed
[2026-06-05 06:38:11,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:38:11,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:38:11,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:38:11,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:38:14,007.007 INFO    ] ================================================
[2026-06-05 06:38:14,022.022 INFO    ] Launching Daemon at Fri Jun  5 06:38:14 IST 2026
[2026-06-05 06:38:14,032.032 INFO    ] ================================================
[2026-06-05 06:38:14,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:38:14
[2026-06-05 06:38:15,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:38:15,428.428 INFO    ] Initializing speech engine...
[2026-06-05 06:38:15,450.450 INFO    ] 2026-06-05 06:38:15
[2026-06-05 06:38:15,702.702 INFO    ] 2026-06-05 06:38:15
[2026-06-05 06:38:15,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:38:15,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:38:15,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:38:16,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:38:16,195.195 INFO    ] time= 05/06/2026 06:38:16
[2026-06-05 06:38:16,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:38:16,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:38:16,374.374 INFO    ] No existing commands found in stream
[2026-06-05 06:38:21,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:38:21,404.404 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 06:38:22,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:38:22,509.509 INFO    ] Checking for system updates...
[2026-06-05 06:38:22,545.545 INFO    ] 200
[2026-06-05 06:38:22,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:22,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:38:22,603.603 INFO    ] No update needed
[2026-06-05 06:38:22,605.605 INFO    ] Checking for camera pi updates...
[2026-06-05 06:38:22,639.639 INFO    ] 200
[2026-06-05 06:38:22,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:22,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:38:22,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:38:22,729.729 INFO    ] No camera update needed
[2026-06-05 06:38:22,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:38:22,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:38:22,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:38:22,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:38:24,784.784 INFO    ] ================================================
[2026-06-05 06:38:24,799.799 INFO    ] Launching Daemon at Fri Jun  5 06:38:24 IST 2026
[2026-06-05 06:38:24,810.810 INFO    ] ================================================
[2026-06-05 06:38:25,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:38:25
[2026-06-05 06:38:25,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:38:26,265.265 INFO    ] Initializing speech engine...
[2026-06-05 06:38:26,276.276 INFO    ] 2026-06-05 06:38:26
[2026-06-05 06:38:26,539.539 INFO    ] 2026-06-05 06:38:26
[2026-06-05 06:38:26,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:38:26,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:38:26,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:38:26,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:38:27,030.030 INFO    ] time= 05/06/2026 06:38:26
[2026-06-05 06:38:27,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:38:27,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:38:27,216.216 INFO    ] No existing commands found in stream
[2026-06-05 06:38:32,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:38:32,250.250 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-05 06:38:32,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:38:32,884.884 INFO    ] Checking for system updates...
[2026-06-05 06:38:32,925.925 INFO    ] 200
[2026-06-05 06:38:32,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:32,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:38:32,990.990 INFO    ] No update needed
[2026-06-05 06:38:32,992.992 INFO    ] Checking for camera pi updates...
[2026-06-05 06:38:33,029.029 INFO    ] 200
[2026-06-05 06:38:33,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:33,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:38:33,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:38:33,117.117 INFO    ] No camera update needed
[2026-06-05 06:38:33,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:38:33,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:38:33,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:38:33,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:38:35,171.171 INFO    ] ================================================
[2026-06-05 06:38:35,186.186 INFO    ] Launching Daemon at Fri Jun  5 06:38:35 IST 2026
[2026-06-05 06:38:35,197.197 INFO    ] ================================================
[2026-06-05 06:38:35,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:38:35
[2026-06-05 06:38:36,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:38:36,797.797 INFO    ] Initializing speech engine...
[2026-06-05 06:38:36,805.805 INFO    ] 2026-06-05 06:38:36
[2026-06-05 06:38:37,051.051 INFO    ] 2026-06-05 06:38:37
[2026-06-05 06:38:37,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:38:37,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:38:37,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:38:37,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:38:37,566.566 INFO    ] time= 05/06/2026 06:38:37
[2026-06-05 06:38:37,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:38:37,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:38:37,739.739 INFO    ] No existing commands found in stream
[2026-06-05 06:38:42,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:38:42,769.769 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 06:38:45,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:38:45,636.636 INFO    ] Checking for system updates...
[2026-06-05 06:38:45,676.676 INFO    ] 200
[2026-06-05 06:38:45,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:45,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:38:45,735.735 INFO    ] No update needed
[2026-06-05 06:38:45,737.737 INFO    ] Checking for camera pi updates...
[2026-06-05 06:38:45,775.775 INFO    ] 200
[2026-06-05 06:38:45,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:45,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:38:45,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:38:45,962.962 INFO    ] No camera update needed
[2026-06-05 06:38:45,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:38:45,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:38:45,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:38:45,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:38:48,019.019 INFO    ] ================================================
[2026-06-05 06:38:48,034.034 INFO    ] Launching Daemon at Fri Jun  5 06:38:48 IST 2026
[2026-06-05 06:38:48,044.044 INFO    ] ================================================
[2026-06-05 06:38:48,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:38:48
[2026-06-05 06:38:49,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:38:49,470.470 INFO    ] Initializing speech engine...
[2026-06-05 06:38:49,478.478 INFO    ] 2026-06-05 06:38:49
[2026-06-05 06:38:49,729.729 INFO    ] 2026-06-05 06:38:49
[2026-06-05 06:38:49,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:38:49,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:38:50,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:38:50,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:38:50,206.206 INFO    ] time= 05/06/2026 06:38:50
[2026-06-05 06:38:50,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:38:50,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:38:50,364.364 INFO    ] No existing commands found in stream
[2026-06-05 06:38:55,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:38:55,379.379 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 06:38:57,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:38:57,258.258 INFO    ] Checking for system updates...
[2026-06-05 06:38:57,294.294 INFO    ] 200
[2026-06-05 06:38:57,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:57,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:38:57,351.351 INFO    ] No update needed
[2026-06-05 06:38:57,354.354 INFO    ] Checking for camera pi updates...
[2026-06-05 06:38:57,387.387 INFO    ] 200
[2026-06-05 06:38:57,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:38:57,431.431 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:38:57,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:38:57,480.480 INFO    ] No camera update needed
[2026-06-05 06:38:57,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:38:57,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:38:57,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:38:57,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:38:59,534.534 INFO    ] ================================================
[2026-06-05 06:38:59,549.549 INFO    ] Launching Daemon at Fri Jun  5 06:38:59 IST 2026
[2026-06-05 06:38:59,562.562 INFO    ] ================================================
[2026-06-05 06:39:00,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:39:00
[2026-06-05 06:39:00,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:39:01,019.019 INFO    ] Initializing speech engine...
[2026-06-05 06:39:01,027.027 INFO    ] 2026-06-05 06:39:01
[2026-06-05 06:39:01,290.290 INFO    ] 2026-06-05 06:39:01
[2026-06-05 06:39:01,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:39:01,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:39:01,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:39:01,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:39:01,748.748 INFO    ] time= 05/06/2026 06:39:01
[2026-06-05 06:39:01,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:39:01,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:39:01,829.829 INFO    ] No existing commands found in stream
[2026-06-05 06:39:06,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:39:06,842.842 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 06:39:08,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:39:08,184.184 INFO    ] Checking for system updates...
[2026-06-05 06:39:08,226.226 INFO    ] 200
[2026-06-05 06:39:08,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:08,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:39:08,294.294 INFO    ] No update needed
[2026-06-05 06:39:08,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 06:39:08,331.331 INFO    ] 200
[2026-06-05 06:39:08,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:08,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:39:08,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:39:08,426.426 INFO    ] No camera update needed
[2026-06-05 06:39:08,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:39:08,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:39:08,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:39:08,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:39:10,481.481 INFO    ] ================================================
[2026-06-05 06:39:10,496.496 INFO    ] Launching Daemon at Fri Jun  5 06:39:10 IST 2026
[2026-06-05 06:39:10,507.507 INFO    ] ================================================
[2026-06-05 06:39:11,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:39:11
[2026-06-05 06:39:11,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:39:11,912.912 INFO    ] Initializing speech engine...
[2026-06-05 06:39:11,925.925 INFO    ] 2026-06-05 06:39:11
[2026-06-05 06:39:12,192.192 INFO    ] 2026-06-05 06:39:12
[2026-06-05 06:39:12,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:39:12,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:39:12,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:39:12,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:39:12,692.692 INFO    ] time= 05/06/2026 06:39:12
[2026-06-05 06:39:12,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:39:12,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:39:12,826.826 INFO    ] No existing commands found in stream
[2026-06-05 06:39:17,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:39:17,840.840 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 06:39:21,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:39:21,118.118 INFO    ] Checking for system updates...
[2026-06-05 06:39:21,155.155 INFO    ] 200
[2026-06-05 06:39:21,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:21,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:39:21,220.220 INFO    ] No update needed
[2026-06-05 06:39:21,222.222 INFO    ] Checking for camera pi updates...
[2026-06-05 06:39:21,256.256 INFO    ] 200
[2026-06-05 06:39:21,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:21,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:39:21,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:39:21,344.344 INFO    ] No camera update needed
[2026-06-05 06:39:21,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:39:21,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:39:21,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:39:21,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:39:23,399.399 INFO    ] ================================================
[2026-06-05 06:39:23,414.414 INFO    ] Launching Daemon at Fri Jun  5 06:39:23 IST 2026
[2026-06-05 06:39:23,425.425 INFO    ] ================================================
[2026-06-05 06:39:23,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:39:23
[2026-06-05 06:39:24,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:39:24,826.826 INFO    ] Initializing speech engine...
[2026-06-05 06:39:24,847.847 INFO    ] 2026-06-05 06:39:24
[2026-06-05 06:39:25,106.106 INFO    ] 2026-06-05 06:39:25
[2026-06-05 06:39:25,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:39:25,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:39:25,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:39:25,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:39:25,586.586 INFO    ] time= 05/06/2026 06:39:25
[2026-06-05 06:39:25,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:39:25,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:39:25,757.757 INFO    ] No existing commands found in stream
[2026-06-05 06:39:30,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:39:30,797.797 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 06:39:33,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:39:33,867.867 INFO    ] Checking for system updates...
[2026-06-05 06:39:33,904.904 INFO    ] 200
[2026-06-05 06:39:33,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:33,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:39:33,962.962 INFO    ] No update needed
[2026-06-05 06:39:33,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 06:39:33,999.999 INFO    ] 200
[2026-06-05 06:39:34,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:34,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:39:34,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:39:34,086.086 INFO    ] No camera update needed
[2026-06-05 06:39:34,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:39:34,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:39:34,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:39:34,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:39:36,143.143 INFO    ] ================================================
[2026-06-05 06:39:36,158.158 INFO    ] Launching Daemon at Fri Jun  5 06:39:36 IST 2026
[2026-06-05 06:39:36,169.169 INFO    ] ================================================
[2026-06-05 06:39:36,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:39:36
[2026-06-05 06:39:37,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:39:37,687.687 INFO    ] Initializing speech engine...
[2026-06-05 06:39:37,697.697 INFO    ] 2026-06-05 06:39:37
[2026-06-05 06:39:38,008.008 INFO    ] 2026-06-05 06:39:37
[2026-06-05 06:39:38,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:39:38,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:39:38,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:39:38,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:39:38,531.531 INFO    ] time= 05/06/2026 06:39:38
[2026-06-05 06:39:38,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:39:38,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:39:38,675.675 INFO    ] No existing commands found in stream
[2026-06-05 06:39:43,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:39:43,708.708 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 06:39:44,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:39:44,335.335 INFO    ] Checking for system updates...
[2026-06-05 06:39:44,373.373 INFO    ] 200
[2026-06-05 06:39:44,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:44,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:39:44,441.441 INFO    ] No update needed
[2026-06-05 06:39:44,444.444 INFO    ] Checking for camera pi updates...
[2026-06-05 06:39:44,477.477 INFO    ] 200
[2026-06-05 06:39:44,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:44,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:39:44,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:39:44,573.573 INFO    ] No camera update needed
[2026-06-05 06:39:44,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:39:44,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:39:44,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:39:44,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:39:46,628.628 INFO    ] ================================================
[2026-06-05 06:39:46,643.643 INFO    ] Launching Daemon at Fri Jun  5 06:39:46 IST 2026
[2026-06-05 06:39:46,654.654 INFO    ] ================================================
[2026-06-05 06:39:47,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:39:47
[2026-06-05 06:39:47,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:39:48,097.097 INFO    ] Initializing speech engine...
[2026-06-05 06:39:48,120.120 INFO    ] 2026-06-05 06:39:48
[2026-06-05 06:39:48,371.371 INFO    ] 2026-06-05 06:39:48
[2026-06-05 06:39:48,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:39:48,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:39:48,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:39:48,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:39:48,822.822 INFO    ] time= 05/06/2026 06:39:48
[2026-06-05 06:39:48,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:39:48,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:39:48,989.989 INFO    ] No existing commands found in stream
[2026-06-05 06:39:53,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:39:54,000.000 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 06:39:57,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:39:57,773.773 INFO    ] Checking for system updates...
[2026-06-05 06:39:57,815.815 INFO    ] 200
[2026-06-05 06:39:57,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:57,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:39:57,879.879 INFO    ] No update needed
[2026-06-05 06:39:57,881.881 INFO    ] Checking for camera pi updates...
[2026-06-05 06:39:57,916.916 INFO    ] 200
[2026-06-05 06:39:57,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:39:57,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:39:58,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:39:58,010.010 INFO    ] No camera update needed
[2026-06-05 06:39:58,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:39:58,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:39:58,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:39:58,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:40:00,064.064 INFO    ] ================================================
[2026-06-05 06:40:00,080.080 INFO    ] Launching Daemon at Fri Jun  5 06:40:00 IST 2026
[2026-06-05 06:40:00,090.090 INFO    ] ================================================
[2026-06-05 06:40:00,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:40:00
[2026-06-05 06:40:01,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:40:02,133.133 INFO    ] Initializing speech engine...
[2026-06-05 06:40:02,137.137 INFO    ] 2026-06-05 06:40:02
[2026-06-05 06:40:02,537.537 INFO    ] 2026-06-05 06:40:02
[2026-06-05 06:40:02,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:40:02,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:40:02,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:40:02,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:40:02,858.858 INFO    ] time= 05/06/2026 06:40:02
[2026-06-05 06:40:02,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:40:02,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:40:02,930.930 INFO    ] No existing commands found in stream
[2026-06-05 06:40:07,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:40:07,943.943 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 06:40:09,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:40:09,458.458 INFO    ] Checking for system updates...
[2026-06-05 06:40:09,496.496 INFO    ] 200
[2026-06-05 06:40:09,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:09,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:40:09,561.561 INFO    ] No update needed
[2026-06-05 06:40:09,564.564 INFO    ] Checking for camera pi updates...
[2026-06-05 06:40:09,603.603 INFO    ] 200
[2026-06-05 06:40:09,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:09,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:40:09,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:40:09,701.701 INFO    ] No camera update needed
[2026-06-05 06:40:09,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:40:09,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:40:09,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:40:09,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:40:11,758.758 INFO    ] ================================================
[2026-06-05 06:40:11,774.774 INFO    ] Launching Daemon at Fri Jun  5 06:40:11 IST 2026
[2026-06-05 06:40:11,785.785 INFO    ] ================================================
[2026-06-05 06:40:12,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:40:12
[2026-06-05 06:40:12,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:40:13,244.244 INFO    ] Initializing speech engine...
[2026-06-05 06:40:13,255.255 INFO    ] 2026-06-05 06:40:13
[2026-06-05 06:40:13,516.516 INFO    ] 2026-06-05 06:40:13
[2026-06-05 06:40:13,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:40:13,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:40:13,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:40:13,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:40:13,978.978 INFO    ] time= 05/06/2026 06:40:13
[2026-06-05 06:40:14,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:40:14,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:40:14,123.123 INFO    ] No existing commands found in stream
[2026-06-05 06:40:19,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:40:19,157.157 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 06:40:20,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:40:20,252.252 INFO    ] Checking for system updates...
[2026-06-05 06:40:20,294.294 INFO    ] 200
[2026-06-05 06:40:20,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:20,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:40:20,354.354 INFO    ] No update needed
[2026-06-05 06:40:20,357.357 INFO    ] Checking for camera pi updates...
[2026-06-05 06:40:20,392.392 INFO    ] 200
[2026-06-05 06:40:20,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:20,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:40:20,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:40:20,490.490 INFO    ] No camera update needed
[2026-06-05 06:40:20,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:40:20,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:40:20,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:40:20,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:40:22,546.546 INFO    ] ================================================
[2026-06-05 06:40:22,566.566 INFO    ] Launching Daemon at Fri Jun  5 06:40:22 IST 2026
[2026-06-05 06:40:22,577.577 INFO    ] ================================================
[2026-06-05 06:40:23,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:40:23
[2026-06-05 06:40:23,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:40:24,234.234 INFO    ] Initializing speech engine...
[2026-06-05 06:40:24,246.246 INFO    ] 2026-06-05 06:40:24
[2026-06-05 06:40:24,561.561 INFO    ] 2026-06-05 06:40:24
[2026-06-05 06:40:24,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:40:24,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:40:24,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:40:25,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:40:25,066.066 INFO    ] time= 05/06/2026 06:40:25
[2026-06-05 06:40:25,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:40:25,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:40:25,204.204 INFO    ] No existing commands found in stream
[2026-06-05 06:40:30,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:40:30,238.238 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 06:40:32,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:40:32,043.043 INFO    ] Checking for system updates...
[2026-06-05 06:40:32,088.088 INFO    ] 200
[2026-06-05 06:40:32,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:32,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:40:32,161.161 INFO    ] No update needed
[2026-06-05 06:40:32,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 06:40:32,212.212 INFO    ] 200
[2026-06-05 06:40:32,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:32,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:40:32,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:40:32,295.295 INFO    ] No camera update needed
[2026-06-05 06:40:32,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:40:32,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:40:32,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:40:32,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:40:34,361.361 INFO    ] ================================================
[2026-06-05 06:40:34,377.377 INFO    ] Launching Daemon at Fri Jun  5 06:40:34 IST 2026
[2026-06-05 06:40:34,389.389 INFO    ] ================================================
[2026-06-05 06:40:34,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:40:34
[2026-06-05 06:40:35,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:40:35,789.789 INFO    ] Initializing speech engine...
[2026-06-05 06:40:35,804.804 INFO    ] 2026-06-05 06:40:35
[2026-06-05 06:40:36,072.072 INFO    ] 2026-06-05 06:40:36
[2026-06-05 06:40:36,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:40:36,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:40:36,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:40:36,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:40:36,538.538 INFO    ] time= 05/06/2026 06:40:36
[2026-06-05 06:40:36,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:40:36,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:40:36,707.707 INFO    ] No existing commands found in stream
[2026-06-05 06:40:41,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:40:41,731.731 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 06:40:43,685.685 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:40:43,688.688 INFO    ] Checking for system updates...
[2026-06-05 06:40:43,726.726 INFO    ] 200
[2026-06-05 06:40:43,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:43,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:40:43,786.786 INFO    ] No update needed
[2026-06-05 06:40:43,789.789 INFO    ] Checking for camera pi updates...
[2026-06-05 06:40:43,825.825 INFO    ] 200
[2026-06-05 06:40:43,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:43,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:40:43,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:40:43,919.919 INFO    ] No camera update needed
[2026-06-05 06:40:43,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:40:43,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:40:43,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:40:43,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:40:45,978.978 INFO    ] ================================================
[2026-06-05 06:40:45,994.994 INFO    ] Launching Daemon at Fri Jun  5 06:40:45 IST 2026
[2026-06-05 06:40:46,004.004 INFO    ] ================================================
[2026-06-05 06:40:46,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:40:46
[2026-06-05 06:40:47,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:40:47,404.404 INFO    ] Initializing speech engine...
[2026-06-05 06:40:47,419.419 INFO    ] 2026-06-05 06:40:47
[2026-06-05 06:40:47,682.682 INFO    ] 2026-06-05 06:40:47
[2026-06-05 06:40:47,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:40:47,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:40:47,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:40:48,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:40:48,176.176 INFO    ] time= 05/06/2026 06:40:48
[2026-06-05 06:40:48,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:40:48,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:40:48,299.299 INFO    ] No existing commands found in stream
[2026-06-05 06:40:53,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:40:53,314.314 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 06:40:57,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:40:57,283.283 INFO    ] Checking for system updates...
[2026-06-05 06:40:57,321.321 INFO    ] 200
[2026-06-05 06:40:57,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:57,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:40:57,382.382 INFO    ] No update needed
[2026-06-05 06:40:57,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 06:40:57,420.420 INFO    ] 200
[2026-06-05 06:40:57,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:40:57,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:40:57,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:40:57,612.612 INFO    ] No camera update needed
[2026-06-05 06:40:57,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:40:57,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:40:57,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:40:57,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:40:59,667.667 INFO    ] ================================================
[2026-06-05 06:40:59,682.682 INFO    ] Launching Daemon at Fri Jun  5 06:40:59 IST 2026
[2026-06-05 06:40:59,693.693 INFO    ] ================================================
[2026-06-05 06:41:00,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:41:00
[2026-06-05 06:41:00,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:41:01,184.184 INFO    ] Initializing speech engine...
[2026-06-05 06:41:01,193.193 INFO    ] 2026-06-05 06:41:01
[2026-06-05 06:41:01,453.453 INFO    ] 2026-06-05 06:41:01
[2026-06-05 06:41:01,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:41:01,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:41:01,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:41:01,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:41:01,970.970 INFO    ] time= 05/06/2026 06:41:01
[2026-06-05 06:41:01,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:41:01,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:41:02,035.035 INFO    ] No existing commands found in stream
[2026-06-05 06:41:07,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:41:07,048.048 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 06:41:09,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:41:09,607.607 INFO    ] Checking for system updates...
[2026-06-05 06:41:09,644.644 INFO    ] 200
[2026-06-05 06:41:09,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:09,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:41:09,702.702 INFO    ] No update needed
[2026-06-05 06:41:09,704.704 INFO    ] Checking for camera pi updates...
[2026-06-05 06:41:09,738.738 INFO    ] 200
[2026-06-05 06:41:09,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:09,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:41:09,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:41:09,810.810 INFO    ] No camera update needed
[2026-06-05 06:41:09,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:41:09,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:41:09,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:41:09,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:41:11,865.865 INFO    ] ================================================
[2026-06-05 06:41:11,882.882 INFO    ] Launching Daemon at Fri Jun  5 06:41:11 IST 2026
[2026-06-05 06:41:11,893.893 INFO    ] ================================================
[2026-06-05 06:41:12,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:41:12
[2026-06-05 06:41:13,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:41:13,350.350 INFO    ] Initializing speech engine...
[2026-06-05 06:41:13,359.359 INFO    ] 2026-06-05 06:41:13
[2026-06-05 06:41:13,635.635 INFO    ] 2026-06-05 06:41:13
[2026-06-05 06:41:13,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:41:13,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:41:13,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:41:14,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:41:14,079.079 INFO    ] time= 05/06/2026 06:41:14
[2026-06-05 06:41:14,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:41:14,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:41:14,227.227 INFO    ] No existing commands found in stream
[2026-06-05 06:41:19,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:41:19,242.242 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 06:41:20,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:41:20,760.760 INFO    ] Checking for system updates...
[2026-06-05 06:41:20,796.796 INFO    ] 200
[2026-06-05 06:41:20,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:20,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:41:20,860.860 INFO    ] No update needed
[2026-06-05 06:41:20,863.863 INFO    ] Checking for camera pi updates...
[2026-06-05 06:41:20,898.898 INFO    ] 200
[2026-06-05 06:41:20,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:20,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:41:20,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:41:20,995.995 INFO    ] No camera update needed
[2026-06-05 06:41:20,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:41:21,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:41:21,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:41:21,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:41:23,054.054 INFO    ] ================================================
[2026-06-05 06:41:23,069.069 INFO    ] Launching Daemon at Fri Jun  5 06:41:23 IST 2026
[2026-06-05 06:41:23,079.079 INFO    ] ================================================
[2026-06-05 06:41:23,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:41:23
[2026-06-05 06:41:24,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:41:24,601.601 INFO    ] Initializing speech engine...
[2026-06-05 06:41:24,615.615 INFO    ] 2026-06-05 06:41:24
[2026-06-05 06:41:24,897.897 INFO    ] 2026-06-05 06:41:24
[2026-06-05 06:41:24,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:41:25,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:41:25,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:41:25,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:41:25,433.433 INFO    ] time= 05/06/2026 06:41:25
[2026-06-05 06:41:25,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:41:25,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:41:25,579.579 INFO    ] No existing commands found in stream
[2026-06-05 06:41:30,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:41:30,602.602 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 06:41:34,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:41:34,649.649 INFO    ] Checking for system updates...
[2026-06-05 06:41:34,687.687 INFO    ] 200
[2026-06-05 06:41:34,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:34,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:41:34,759.759 INFO    ] No update needed
[2026-06-05 06:41:34,762.762 INFO    ] Checking for camera pi updates...
[2026-06-05 06:41:34,799.799 INFO    ] 200
[2026-06-05 06:41:34,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:34,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:41:34,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:41:34,897.897 INFO    ] No camera update needed
[2026-06-05 06:41:34,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:41:34,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:41:34,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:41:34,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:41:36,955.955 INFO    ] ================================================
[2026-06-05 06:41:36,972.972 INFO    ] Launching Daemon at Fri Jun  5 06:41:36 IST 2026
[2026-06-05 06:41:36,983.983 INFO    ] ================================================
[2026-06-05 06:41:37,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:41:37
[2026-06-05 06:41:38,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:41:38,439.439 INFO    ] Initializing speech engine...
[2026-06-05 06:41:38,449.449 INFO    ] 2026-06-05 06:41:38
[2026-06-05 06:41:38,711.711 INFO    ] 2026-06-05 06:41:38
[2026-06-05 06:41:38,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:41:38,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:41:38,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:41:39,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:41:39,102.102 INFO    ] time= 05/06/2026 06:41:39
[2026-06-05 06:41:39,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:41:39,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:41:39,211.211 INFO    ] No existing commands found in stream
[2026-06-05 06:41:44,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:41:44,227.227 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-05 06:41:45,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:41:45,002.002 INFO    ] Checking for system updates...
[2026-06-05 06:41:45,040.040 INFO    ] 200
[2026-06-05 06:41:45,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:45,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:41:45,105.105 INFO    ] No update needed
[2026-06-05 06:41:45,108.108 INFO    ] Checking for camera pi updates...
[2026-06-05 06:41:45,146.146 INFO    ] 200
[2026-06-05 06:41:45,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:45,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:41:45,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:41:45,257.257 INFO    ] No camera update needed
[2026-06-05 06:41:45,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:41:45,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:41:45,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:41:45,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:41:47,316.316 INFO    ] ================================================
[2026-06-05 06:41:47,331.331 INFO    ] Launching Daemon at Fri Jun  5 06:41:47 IST 2026
[2026-06-05 06:41:47,342.342 INFO    ] ================================================
[2026-06-05 06:41:47,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:41:47
[2026-06-05 06:41:48,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:41:48,773.773 INFO    ] Initializing speech engine...
[2026-06-05 06:41:48,788.788 INFO    ] 2026-06-05 06:41:48
[2026-06-05 06:41:49,038.038 INFO    ] 2026-06-05 06:41:49
[2026-06-05 06:41:49,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:41:49,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:41:49,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:41:49,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:41:49,407.407 INFO    ] time= 05/06/2026 06:41:49
[2026-06-05 06:41:49,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:41:49,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:41:49,581.581 INFO    ] No existing commands found in stream
[2026-06-05 06:41:54,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:41:54,609.609 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 06:41:58,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:41:58,652.652 INFO    ] Checking for system updates...
[2026-06-05 06:41:58,690.690 INFO    ] 200
[2026-06-05 06:41:58,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:58,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:41:58,762.762 INFO    ] No update needed
[2026-06-05 06:41:58,765.765 INFO    ] Checking for camera pi updates...
[2026-06-05 06:41:58,810.810 INFO    ] 200
[2026-06-05 06:41:58,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:41:58,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:41:58,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:41:58,906.906 INFO    ] No camera update needed
[2026-06-05 06:41:58,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:41:58,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:41:58,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:41:58,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:42:00,965.965 INFO    ] ================================================
[2026-06-05 06:42:00,980.980 INFO    ] Launching Daemon at Fri Jun  5 06:42:00 IST 2026
[2026-06-05 06:42:00,991.991 INFO    ] ================================================
[2026-06-05 06:42:01,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:42:01
[2026-06-05 06:42:02,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:42:02,815.815 INFO    ] Initializing speech engine...
[2026-06-05 06:42:02,827.827 INFO    ] 2026-06-05 06:42:02
[2026-06-05 06:42:03,143.143 INFO    ] 2026-06-05 06:42:03
[2026-06-05 06:42:03,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:42:03,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:42:03,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:42:03,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:42:03,632.632 INFO    ] time= 05/06/2026 06:42:03
[2026-06-05 06:42:03,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:42:03,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:42:03,804.804 INFO    ] No existing commands found in stream
[2026-06-05 06:42:08,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:42:08,829.829 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 06:42:09,857.857 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:42:09,859.859 INFO    ] Checking for system updates...
[2026-06-05 06:42:09,898.898 INFO    ] 200
[2026-06-05 06:42:09,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:09,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:42:09,957.957 INFO    ] No update needed
[2026-06-05 06:42:09,960.960 INFO    ] Checking for camera pi updates...
[2026-06-05 06:42:09,997.997 INFO    ] 200
[2026-06-05 06:42:09,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:10,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:42:10,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:42:10,086.086 INFO    ] No camera update needed
[2026-06-05 06:42:10,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:42:10,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:42:10,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:42:10,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:42:12,141.141 INFO    ] ================================================
[2026-06-05 06:42:12,156.156 INFO    ] Launching Daemon at Fri Jun  5 06:42:12 IST 2026
[2026-06-05 06:42:12,167.167 INFO    ] ================================================
[2026-06-05 06:42:12,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:42:12
[2026-06-05 06:42:13,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:42:13,567.567 INFO    ] Initializing speech engine...
[2026-06-05 06:42:13,590.590 INFO    ] 2026-06-05 06:42:13
[2026-06-05 06:42:13,846.846 INFO    ] 2026-06-05 06:42:13
[2026-06-05 06:42:13,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:42:14,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:42:14,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:42:14,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:42:14,223.223 INFO    ] time= 05/06/2026 06:42:14
[2026-06-05 06:42:14,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:42:14,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:42:14,388.388 INFO    ] No existing commands found in stream
[2026-06-05 06:42:19,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:42:19,416.416 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 06:42:20,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:42:20,569.569 INFO    ] Checking for system updates...
[2026-06-05 06:42:20,606.606 INFO    ] 200
[2026-06-05 06:42:20,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:20,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:42:20,664.664 INFO    ] No update needed
[2026-06-05 06:42:20,666.666 INFO    ] Checking for camera pi updates...
[2026-06-05 06:42:20,700.700 INFO    ] 200
[2026-06-05 06:42:20,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:20,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:42:20,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:42:20,798.798 INFO    ] No camera update needed
[2026-06-05 06:42:20,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:42:20,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:42:20,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:42:20,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:42:22,854.854 INFO    ] ================================================
[2026-06-05 06:42:22,872.872 INFO    ] Launching Daemon at Fri Jun  5 06:42:22 IST 2026
[2026-06-05 06:42:22,883.883 INFO    ] ================================================
[2026-06-05 06:42:23,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:42:23
[2026-06-05 06:42:24,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:42:24,364.364 INFO    ] Initializing speech engine...
[2026-06-05 06:42:24,370.370 INFO    ] 2026-06-05 06:42:24
[2026-06-05 06:42:24,645.645 INFO    ] 2026-06-05 06:42:24
[2026-06-05 06:42:24,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:42:24,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:42:24,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:42:25,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:42:25,117.117 INFO    ] time= 05/06/2026 06:42:25
[2026-06-05 06:42:25,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:42:25,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:42:25,242.242 INFO    ] No existing commands found in stream
[2026-06-05 06:42:30,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:42:30,257.257 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 06:42:33,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:42:33,417.417 INFO    ] Checking for system updates...
[2026-06-05 06:42:33,453.453 INFO    ] 200
[2026-06-05 06:42:33,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:33,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:42:33,513.513 INFO    ] No update needed
[2026-06-05 06:42:33,515.515 INFO    ] Checking for camera pi updates...
[2026-06-05 06:42:33,551.551 INFO    ] 200
[2026-06-05 06:42:33,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:33,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:42:33,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:42:33,639.639 INFO    ] No camera update needed
[2026-06-05 06:42:33,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:42:33,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:42:33,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:42:33,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:42:35,694.694 INFO    ] ================================================
[2026-06-05 06:42:35,710.710 INFO    ] Launching Daemon at Fri Jun  5 06:42:35 IST 2026
[2026-06-05 06:42:35,720.720 INFO    ] ================================================
[2026-06-05 06:42:36,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:42:36
[2026-06-05 06:42:37,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:42:37,333.333 INFO    ] Initializing speech engine...
[2026-06-05 06:42:37,338.338 INFO    ] 2026-06-05 06:42:37
[2026-06-05 06:42:37,601.601 INFO    ] 2026-06-05 06:42:37
[2026-06-05 06:42:37,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:42:37,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:42:37,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:42:38,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:42:38,060.060 INFO    ] time= 05/06/2026 06:42:38
[2026-06-05 06:42:38,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:42:38,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:42:38,212.212 INFO    ] No existing commands found in stream
[2026-06-05 06:42:43,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:42:43,244.244 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 06:42:43,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:42:43,694.694 INFO    ] Checking for system updates...
[2026-06-05 06:42:43,731.731 INFO    ] 200
[2026-06-05 06:42:43,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:43,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:42:43,793.793 INFO    ] No update needed
[2026-06-05 06:42:43,795.795 INFO    ] Checking for camera pi updates...
[2026-06-05 06:42:43,829.829 INFO    ] 200
[2026-06-05 06:42:43,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:43,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:42:43,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:42:43,921.921 INFO    ] No camera update needed
[2026-06-05 06:42:43,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:42:43,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:42:43,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:42:43,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:42:45,981.981 INFO    ] ================================================
[2026-06-05 06:42:46,997.997 INFO    ] Launching Daemon at Fri Jun  5 06:42:45 IST 2026
[2026-06-05 06:42:46,008.008 INFO    ] ================================================
[2026-06-05 06:42:46,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:42:46
[2026-06-05 06:42:47,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:42:47,450.450 INFO    ] Initializing speech engine...
[2026-06-05 06:42:47,459.459 INFO    ] 2026-06-05 06:42:47
[2026-06-05 06:42:47,749.749 INFO    ] 2026-06-05 06:42:47
[2026-06-05 06:42:47,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:42:47,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:42:47,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:42:48,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:42:48,123.123 INFO    ] time= 05/06/2026 06:42:48
[2026-06-05 06:42:48,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:42:48,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:42:48,245.245 INFO    ] No existing commands found in stream
[2026-06-05 06:42:53,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:42:53,259.259 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 06:42:56,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:42:56,116.116 INFO    ] Checking for system updates...
[2026-06-05 06:42:56,154.154 INFO    ] 200
[2026-06-05 06:42:56,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:56,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:42:56,212.212 INFO    ] No update needed
[2026-06-05 06:42:56,214.214 INFO    ] Checking for camera pi updates...
[2026-06-05 06:42:56,249.249 INFO    ] 200
[2026-06-05 06:42:56,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:42:56,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:42:56,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:42:56,333.333 INFO    ] No camera update needed
[2026-06-05 06:42:56,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:42:56,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:42:56,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:42:56,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:42:58,388.388 INFO    ] ================================================
[2026-06-05 06:42:58,403.403 INFO    ] Launching Daemon at Fri Jun  5 06:42:58 IST 2026
[2026-06-05 06:42:58,413.413 INFO    ] ================================================
[2026-06-05 06:42:59,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:42:59
[2026-06-05 06:42:59,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:43:00,003.003 INFO    ] Initializing speech engine...
[2026-06-05 06:43:00,010.010 INFO    ] 2026-06-05 06:43:00
[2026-06-05 06:43:00,294.294 INFO    ] 2026-06-05 06:43:00
[2026-06-05 06:43:00,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:43:00,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:43:00,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:43:00,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:43:00,749.749 INFO    ] time= 05/06/2026 06:43:00
[2026-06-05 06:43:00,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:43:00,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:43:00,916.916 INFO    ] No existing commands found in stream
[2026-06-05 06:43:05,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:43:05,958.958 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 06:43:09,712.712 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:43:09,715.715 INFO    ] Checking for system updates...
[2026-06-05 06:43:09,755.755 INFO    ] 200
[2026-06-05 06:43:09,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:09,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:43:09,821.821 INFO    ] No update needed
[2026-06-05 06:43:09,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 06:43:09,863.863 INFO    ] 200
[2026-06-05 06:43:09,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:09,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:43:09,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:43:09,958.958 INFO    ] No camera update needed
[2026-06-05 06:43:09,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:43:09,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:43:09,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:43:09,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:43:12,017.017 INFO    ] ================================================
[2026-06-05 06:43:12,032.032 INFO    ] Launching Daemon at Fri Jun  5 06:43:12 IST 2026
[2026-06-05 06:43:12,043.043 INFO    ] ================================================
[2026-06-05 06:43:12,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:43:12
[2026-06-05 06:43:13,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:43:13,623.623 INFO    ] Initializing speech engine...
[2026-06-05 06:43:13,630.630 INFO    ] 2026-06-05 06:43:13
[2026-06-05 06:43:13,899.899 INFO    ] 2026-06-05 06:43:13
[2026-06-05 06:43:13,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:43:14,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:43:14,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:43:14,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:43:14,369.369 INFO    ] time= 05/06/2026 06:43:14
[2026-06-05 06:43:14,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:43:14,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:43:14,515.515 INFO    ] No existing commands found in stream
[2026-06-05 06:43:19,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:43:19,539.539 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 06:43:21,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:43:21,655.655 INFO    ] Checking for system updates...
[2026-06-05 06:43:21,692.692 INFO    ] 200
[2026-06-05 06:43:21,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:21,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:43:21,751.751 INFO    ] No update needed
[2026-06-05 06:43:21,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 06:43:21,792.792 INFO    ] 200
[2026-06-05 06:43:21,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:21,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:43:21,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:43:21,880.880 INFO    ] No camera update needed
[2026-06-05 06:43:21,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:43:21,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:43:21,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:43:21,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:43:23,939.939 INFO    ] ================================================
[2026-06-05 06:43:23,954.954 INFO    ] Launching Daemon at Fri Jun  5 06:43:23 IST 2026
[2026-06-05 06:43:23,964.964 INFO    ] ================================================
[2026-06-05 06:43:24,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:43:24
[2026-06-05 06:43:25,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:43:25,371.371 INFO    ] Initializing speech engine...
[2026-06-05 06:43:25,380.380 INFO    ] 2026-06-05 06:43:25
[2026-06-05 06:43:25,670.670 INFO    ] 2026-06-05 06:43:25
[2026-06-05 06:43:25,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:43:25,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:43:25,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:43:26,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:43:26,040.040 INFO    ] time= 05/06/2026 06:43:26
[2026-06-05 06:43:26,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:43:26,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:43:26,163.163 INFO    ] No existing commands found in stream
[2026-06-05 06:43:31,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:43:31,179.179 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-05 06:43:32,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:43:32,791.791 INFO    ] Checking for system updates...
[2026-06-05 06:43:32,830.830 INFO    ] 200
[2026-06-05 06:43:32,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:32,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:43:32,902.902 INFO    ] No update needed
[2026-06-05 06:43:32,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 06:43:32,944.944 INFO    ] 200
[2026-06-05 06:43:32,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:33,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:43:33,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:43:33,052.052 INFO    ] No camera update needed
[2026-06-05 06:43:33,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:43:33,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:43:33,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:43:33,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:43:35,110.110 INFO    ] ================================================
[2026-06-05 06:43:35,125.125 INFO    ] Launching Daemon at Fri Jun  5 06:43:35 IST 2026
[2026-06-05 06:43:35,136.136 INFO    ] ================================================
[2026-06-05 06:43:35,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:43:35
[2026-06-05 06:43:36,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:43:36,708.708 INFO    ] Initializing speech engine...
[2026-06-05 06:43:36,719.719 INFO    ] 2026-06-05 06:43:36
[2026-06-05 06:43:37,031.031 INFO    ] 2026-06-05 06:43:37
[2026-06-05 06:43:37,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:43:37,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:43:37,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:43:37,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:43:37,538.538 INFO    ] time= 05/06/2026 06:43:37
[2026-06-05 06:43:37,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:43:37,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:43:37,678.678 INFO    ] No existing commands found in stream
[2026-06-05 06:43:42,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:43:42,708.708 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 06:43:44,707.707 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:43:44,710.710 INFO    ] Checking for system updates...
[2026-06-05 06:43:44,747.747 INFO    ] 200
[2026-06-05 06:43:44,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:44,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:43:44,809.809 INFO    ] No update needed
[2026-06-05 06:43:44,811.811 INFO    ] Checking for camera pi updates...
[2026-06-05 06:43:44,846.846 INFO    ] 200
[2026-06-05 06:43:44,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:44,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:43:44,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:43:44,933.933 INFO    ] No camera update needed
[2026-06-05 06:43:44,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:43:44,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:43:44,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:43:44,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:43:46,992.992 INFO    ] ================================================
[2026-06-05 06:43:47,007.007 INFO    ] Launching Daemon at Fri Jun  5 06:43:47 IST 2026
[2026-06-05 06:43:47,018.018 INFO    ] ================================================
[2026-06-05 06:43:47,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:43:47
[2026-06-05 06:43:48,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:43:48,419.419 INFO    ] Initializing speech engine...
[2026-06-05 06:43:48,425.425 INFO    ] 2026-06-05 06:43:48
[2026-06-05 06:43:48,718.718 INFO    ] 2026-06-05 06:43:48
[2026-06-05 06:43:48,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:43:48,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:43:48,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:43:49,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:43:49,094.094 INFO    ] time= 05/06/2026 06:43:49
[2026-06-05 06:43:49,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:43:49,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:43:49,218.218 INFO    ] No existing commands found in stream
[2026-06-05 06:43:54,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:43:54,233.233 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 06:43:58,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:43:58,138.138 INFO    ] Checking for system updates...
[2026-06-05 06:43:58,178.178 INFO    ] 200
[2026-06-05 06:43:58,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:58,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:43:58,235.235 INFO    ] No update needed
[2026-06-05 06:43:58,238.238 INFO    ] Checking for camera pi updates...
[2026-06-05 06:43:58,271.271 INFO    ] 200
[2026-06-05 06:43:58,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:43:58,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:43:58,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:43:58,360.360 INFO    ] No camera update needed
[2026-06-05 06:43:58,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:43:58,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:43:58,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:43:58,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:44:00,416.416 INFO    ] ================================================
[2026-06-05 06:44:00,432.432 INFO    ] Launching Daemon at Fri Jun  5 06:44:00 IST 2026
[2026-06-05 06:44:00,442.442 INFO    ] ================================================
[2026-06-05 06:44:01,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:44:01
[2026-06-05 06:44:01,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:44:02,266.266 INFO    ] Initializing speech engine...
[2026-06-05 06:44:02,278.278 INFO    ] 2026-06-05 06:44:02
[2026-06-05 06:44:02,566.566 INFO    ] 2026-06-05 06:44:02
[2026-06-05 06:44:02,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:44:02,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:44:02,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:44:03,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:44:03,074.074 INFO    ] time= 05/06/2026 06:44:03
[2026-06-05 06:44:03,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:44:03,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:44:03,277.277 INFO    ] No existing commands found in stream
[2026-06-05 06:44:08,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:44:08,293.293 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 06:44:08,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:44:08,715.715 INFO    ] Checking for system updates...
[2026-06-05 06:44:08,756.756 INFO    ] 200
[2026-06-05 06:44:08,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:08,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:44:08,814.814 INFO    ] No update needed
[2026-06-05 06:44:08,817.817 INFO    ] Checking for camera pi updates...
[2026-06-05 06:44:08,851.851 INFO    ] 200
[2026-06-05 06:44:08,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:08,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:44:08,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:44:08,946.946 INFO    ] No camera update needed
[2026-06-05 06:44:08,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:44:08,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:44:08,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:44:08,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:44:11,002.002 INFO    ] ================================================
[2026-06-05 06:44:11,017.017 INFO    ] Launching Daemon at Fri Jun  5 06:44:11 IST 2026
[2026-06-05 06:44:11,028.028 INFO    ] ================================================
[2026-06-05 06:44:11,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:44:11
[2026-06-05 06:44:12,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:44:12,491.491 INFO    ] Initializing speech engine...
[2026-06-05 06:44:12,497.497 INFO    ] 2026-06-05 06:44:12
[2026-06-05 06:44:12,757.757 INFO    ] 2026-06-05 06:44:12
[2026-06-05 06:44:12,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:44:12,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:44:13,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:44:13,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:44:13,222.222 INFO    ] time= 05/06/2026 06:44:13
[2026-06-05 06:44:13,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:44:13,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:44:13,372.372 INFO    ] No existing commands found in stream
[2026-06-05 06:44:18,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:44:18,404.404 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 06:44:21,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:44:21,782.782 INFO    ] Checking for system updates...
[2026-06-05 06:44:21,820.820 INFO    ] 200
[2026-06-05 06:44:21,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:21,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:44:21,878.878 INFO    ] No update needed
[2026-06-05 06:44:21,880.880 INFO    ] Checking for camera pi updates...
[2026-06-05 06:44:21,918.918 INFO    ] 200
[2026-06-05 06:44:21,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:21,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:44:22,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:44:22,017.017 INFO    ] No camera update needed
[2026-06-05 06:44:22,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:44:22,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:44:22,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:44:22,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:44:24,076.076 INFO    ] ================================================
[2026-06-05 06:44:24,091.091 INFO    ] Launching Daemon at Fri Jun  5 06:44:24 IST 2026
[2026-06-05 06:44:24,102.102 INFO    ] ================================================
[2026-06-05 06:44:24,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:44:24
[2026-06-05 06:44:25,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:44:25,527.527 INFO    ] Initializing speech engine...
[2026-06-05 06:44:25,536.536 INFO    ] 2026-06-05 06:44:25
[2026-06-05 06:44:25,793.793 INFO    ] 2026-06-05 06:44:25
[2026-06-05 06:44:25,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:44:26,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:44:26,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:44:26,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:44:26,275.275 INFO    ] time= 05/06/2026 06:44:26
[2026-06-05 06:44:26,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:44:26,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:44:26,459.459 INFO    ] No existing commands found in stream
[2026-06-05 06:44:31,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:44:31,492.492 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 06:44:34,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:44:34,143.143 INFO    ] Checking for system updates...
[2026-06-05 06:44:34,179.179 INFO    ] 200
[2026-06-05 06:44:34,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:34,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:44:34,237.237 INFO    ] No update needed
[2026-06-05 06:44:34,239.239 INFO    ] Checking for camera pi updates...
[2026-06-05 06:44:34,273.273 INFO    ] 200
[2026-06-05 06:44:34,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:34,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:44:34,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:44:34,362.362 INFO    ] No camera update needed
[2026-06-05 06:44:34,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:44:34,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:44:34,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:44:34,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:44:36,417.417 INFO    ] ================================================
[2026-06-05 06:44:36,431.431 INFO    ] Launching Daemon at Fri Jun  5 06:44:36 IST 2026
[2026-06-05 06:44:36,442.442 INFO    ] ================================================
[2026-06-05 06:44:37,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:44:37
[2026-06-05 06:44:37,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:44:37,912.912 INFO    ] Initializing speech engine...
[2026-06-05 06:44:37,918.918 INFO    ] 2026-06-05 06:44:37
[2026-06-05 06:44:38,180.180 INFO    ] 2026-06-05 06:44:38
[2026-06-05 06:44:38,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:44:38,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:44:38,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:44:38,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:44:38,665.665 INFO    ] time= 05/06/2026 06:44:38
[2026-06-05 06:44:38,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:44:38,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:44:38,866.866 INFO    ] No existing commands found in stream
[2026-06-05 06:44:43,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:44:43,895.895 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 06:44:44,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:44:44,328.328 INFO    ] Checking for system updates...
[2026-06-05 06:44:44,365.365 INFO    ] 200
[2026-06-05 06:44:44,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:44,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:44:44,429.429 INFO    ] No update needed
[2026-06-05 06:44:44,432.432 INFO    ] Checking for camera pi updates...
[2026-06-05 06:44:44,467.467 INFO    ] 200
[2026-06-05 06:44:44,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:44,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:44:44,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:44:44,554.554 INFO    ] No camera update needed
[2026-06-05 06:44:44,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:44:44,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:44:44,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:44:44,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:44:46,610.610 INFO    ] ================================================
[2026-06-05 06:44:46,626.626 INFO    ] Launching Daemon at Fri Jun  5 06:44:46 IST 2026
[2026-06-05 06:44:46,637.637 INFO    ] ================================================
[2026-06-05 06:44:47,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:44:47
[2026-06-05 06:44:47,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:44:48,041.041 INFO    ] Initializing speech engine...
[2026-06-05 06:44:48,055.055 INFO    ] 2026-06-05 06:44:48
[2026-06-05 06:44:48,323.323 INFO    ] 2026-06-05 06:44:48
[2026-06-05 06:44:48,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:44:48,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:44:48,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:44:48,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:44:48,814.814 INFO    ] time= 05/06/2026 06:44:48
[2026-06-05 06:44:48,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:44:48,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:44:48,961.961 INFO    ] No existing commands found in stream
[2026-06-05 06:44:53,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:44:53,976.976 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 06:44:57,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:44:57,561.561 INFO    ] Checking for system updates...
[2026-06-05 06:44:57,598.598 INFO    ] 200
[2026-06-05 06:44:57,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:57,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:44:57,673.673 INFO    ] No update needed
[2026-06-05 06:44:57,676.676 INFO    ] Checking for camera pi updates...
[2026-06-05 06:44:57,711.711 INFO    ] 200
[2026-06-05 06:44:57,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:44:57,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:44:57,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:44:57,811.811 INFO    ] No camera update needed
[2026-06-05 06:44:57,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:44:57,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:44:57,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:44:57,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:44:59,866.866 INFO    ] ================================================
[2026-06-05 06:44:59,881.881 INFO    ] Launching Daemon at Fri Jun  5 06:44:59 IST 2026
[2026-06-05 06:44:59,892.892 INFO    ] ================================================
[2026-06-05 06:45:00,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:45:00
[2026-06-05 06:45:01,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:45:01,347.347 INFO    ] Initializing speech engine...
[2026-06-05 06:45:01,356.356 INFO    ] 2026-06-05 06:45:01
[2026-06-05 06:45:01,636.636 INFO    ] 2026-06-05 06:45:01
[2026-06-05 06:45:01,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:45:02,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:45:02,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:45:02,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:45:02,353.353 INFO    ] time= 05/06/2026 06:45:02
[2026-06-05 06:45:02,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:45:02,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:45:02,420.420 INFO    ] No existing commands found in stream
[2026-06-05 06:45:07,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:45:07,433.433 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 06:45:11,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:45:11,795.795 INFO    ] Checking for system updates...
[2026-06-05 06:45:11,832.832 INFO    ] 200
[2026-06-05 06:45:11,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:45:11,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:45:11,891.891 INFO    ] No update needed
[2026-06-05 06:45:11,894.894 INFO    ] Checking for camera pi updates...
[2026-06-05 06:45:11,932.932 INFO    ] 200
[2026-06-05 06:45:11,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:45:11,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:45:12,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:45:12,130.130 INFO    ] No camera update needed
[2026-06-05 06:45:12,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:45:12,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:45:12,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:45:12,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:45:14,190.190 INFO    ] ================================================
[2026-06-05 06:45:14,206.206 INFO    ] Launching Daemon at Fri Jun  5 06:45:14 IST 2026
[2026-06-05 06:45:14,217.217 INFO    ] ================================================
[2026-06-05 06:45:14,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:45:14
[2026-06-05 06:45:15,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:45:15,782.782 INFO    ] Initializing speech engine...
[2026-06-05 06:45:15,790.790 INFO    ] 2026-06-05 06:45:15
[2026-06-05 06:45:16,050.050 INFO    ] 2026-06-05 06:45:16
[2026-06-05 06:45:16,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:45:16,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:45:16,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:45:16,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:45:16,517.517 INFO    ] time= 05/06/2026 06:45:16
[2026-06-05 06:45:16,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:45:16,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:45:16,708.708 INFO    ] No existing commands found in stream
[2026-06-05 06:45:21,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:45:21,744.744 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 06:45:23,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:45:23,853.853 INFO    ] Checking for system updates...
[2026-06-05 06:45:23,889.889 INFO    ] 200
[2026-06-05 06:45:23,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:45:23,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:45:23,948.948 INFO    ] No update needed
[2026-06-05 06:45:23,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 06:45:23,988.988 INFO    ] 200
[2026-06-05 06:45:23,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:45:24,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:45:24,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:45:24,089.089 INFO    ] No camera update needed
[2026-06-05 06:45:24,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:45:24,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:45:24,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:45:24,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:45:26,144.144 INFO    ] ================================================
[2026-06-05 06:45:26,159.159 INFO    ] Launching Daemon at Fri Jun  5 06:45:26 IST 2026
[2026-06-05 06:45:26,170.170 INFO    ] ================================================
[2026-06-05 06:45:26,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:45:26
[2026-06-05 06:45:27,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:45:27,576.576 INFO    ] Initializing speech engine...
[2026-06-05 06:45:27,599.599 INFO    ] 2026-06-05 06:45:27
[2026-06-05 06:45:27,856.856 INFO    ] 2026-06-05 06:45:27
[2026-06-05 06:45:27,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:45:28,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:45:28,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:45:28,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:45:28,213.213 INFO    ] time= 05/06/2026 06:45:28
[2026-06-05 06:45:28,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:45:28,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:45:28,310.310 INFO    ] No existing commands found in stream
[2026-06-05 06:45:33,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:45:33,326.326 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 06:45:37,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:45:37,331.331 INFO    ] Checking for system updates...
[2026-06-05 06:45:37,370.370 INFO    ] 200
[2026-06-05 06:45:37,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:45:37,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:45:37,435.435 INFO    ] No update needed
[2026-06-05 06:45:37,438.438 INFO    ] Checking for camera pi updates...
[2026-06-05 06:45:37,473.473 INFO    ] 200
[2026-06-05 06:45:37,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:45:37,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:45:37,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:45:37,562.562 INFO    ] No camera update needed
[2026-06-05 06:45:37,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:45:37,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:45:37,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:45:37,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:45:39,620.620 INFO    ] ================================================
[2026-06-05 06:45:39,636.636 INFO    ] Launching Daemon at Fri Jun  5 06:45:39 IST 2026
[2026-06-05 06:45:39,647.647 INFO    ] ================================================
[2026-06-05 06:45:40,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:45:40
[2026-06-05 06:45:41,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:45:41,314.314 INFO    ] Initializing speech engine...
[2026-06-05 06:45:41,322.322 INFO    ] 2026-06-05 06:45:41
[2026-06-05 06:45:41,600.600 INFO    ] 2026-06-05 06:45:41
[2026-06-05 06:45:41,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:45:41,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:45:41,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:45:42,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:45:42,062.062 INFO    ] time= 05/06/2026 06:45:42
[2026-06-05 06:45:42,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:45:42,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:45:42,219.219 INFO    ] No existing commands found in stream
[2026-06-05 06:45:47,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:45:47,234.234 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 06:45:50,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:45:50,655.655 INFO    ] Checking for system updates...
[2026-06-05 06:45:50,695.695 INFO    ] 200
[2026-06-05 06:45:50,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:45:50,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:45:50,761.761 INFO    ] No update needed
[2026-06-05 06:45:50,763.763 INFO    ] Checking for camera pi updates...
[2026-06-05 06:45:50,801.801 INFO    ] 200
[2026-06-05 06:45:50,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:45:50,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:45:50,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:45:50,887.887 INFO    ] No camera update needed
[2026-06-05 06:45:50,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:45:50,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:45:50,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:45:50,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:45:52,945.945 INFO    ] ================================================
[2026-06-05 06:45:52,976.976 INFO    ] Launching Daemon at Fri Jun  5 06:45:52 IST 2026
[2026-06-05 06:45:52,986.986 INFO    ] ================================================
[2026-06-05 06:45:53,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:45:53
[2026-06-05 06:45:54,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:45:54,465.465 INFO    ] Initializing speech engine...
[2026-06-05 06:45:54,477.477 INFO    ] 2026-06-05 06:45:54
[2026-06-05 06:45:54,761.761 INFO    ] 2026-06-05 06:45:54
[2026-06-05 06:45:54,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:45:55,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:45:55,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:45:55,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:45:55,316.316 INFO    ] time= 05/06/2026 06:45:55
[2026-06-05 06:45:55,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:45:55,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:45:55,457.457 INFO    ] No existing commands found in stream
[2026-06-05 06:46:00,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:46:00,489.489 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 06:46:02,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:46:02,160.160 INFO    ] Checking for system updates...
[2026-06-05 06:46:02,200.200 INFO    ] 200
[2026-06-05 06:46:02,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:02,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:46:02,271.271 INFO    ] No update needed
[2026-06-05 06:46:02,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 06:46:02,321.321 INFO    ] 200
[2026-06-05 06:46:02,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:02,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:46:02,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:46:02,421.421 INFO    ] No camera update needed
[2026-06-05 06:46:02,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:46:02,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:46:02,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:46:02,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:46:04,481.481 INFO    ] ================================================
[2026-06-05 06:46:04,496.496 INFO    ] Launching Daemon at Fri Jun  5 06:46:04 IST 2026
[2026-06-05 06:46:04,507.507 INFO    ] ================================================
[2026-06-05 06:46:05,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:46:05
[2026-06-05 06:46:05,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:46:05,989.989 INFO    ] Initializing speech engine...
[2026-06-05 06:46:06,005.005 INFO    ] 2026-06-05 06:46:05
[2026-06-05 06:46:06,261.261 INFO    ] 2026-06-05 06:46:06
[2026-06-05 06:46:06,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:46:06,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:46:06,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:46:06,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:46:06,636.636 INFO    ] time= 05/06/2026 06:46:06
[2026-06-05 06:46:06,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:46:06,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:46:06,821.821 INFO    ] No existing commands found in stream
[2026-06-05 06:46:11,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:46:11,849.849 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 06:46:14,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:46:14,695.695 INFO    ] Checking for system updates...
[2026-06-05 06:46:14,734.734 INFO    ] 200
[2026-06-05 06:46:14,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:14,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:46:14,797.797 INFO    ] No update needed
[2026-06-05 06:46:14,799.799 INFO    ] Checking for camera pi updates...
[2026-06-05 06:46:14,836.836 INFO    ] 200
[2026-06-05 06:46:14,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:14,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:46:14,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:46:14,932.932 INFO    ] No camera update needed
[2026-06-05 06:46:14,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:46:14,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:46:14,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:46:14,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:46:16,989.989 INFO    ] ================================================
[2026-06-05 06:46:17,004.004 INFO    ] Launching Daemon at Fri Jun  5 06:46:16 IST 2026
[2026-06-05 06:46:17,020.020 INFO    ] ================================================
[2026-06-05 06:46:17,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:46:17
[2026-06-05 06:46:18,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:46:18,438.438 INFO    ] Initializing speech engine...
[2026-06-05 06:46:18,450.450 INFO    ] 2026-06-05 06:46:18
[2026-06-05 06:46:18,703.703 INFO    ] 2026-06-05 06:46:18
[2026-06-05 06:46:18,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:46:18,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:46:18,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:46:19,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:46:19,078.078 INFO    ] time= 05/06/2026 06:46:19
[2026-06-05 06:46:19,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:46:19,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:46:19,154.154 INFO    ] No existing commands found in stream
[2026-06-05 06:46:24,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:46:24,169.169 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 06:46:27,339.339 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:46:27,342.342 INFO    ] Checking for system updates...
[2026-06-05 06:46:27,378.378 INFO    ] 200
[2026-06-05 06:46:27,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:27,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:46:27,435.435 INFO    ] No update needed
[2026-06-05 06:46:27,438.438 INFO    ] Checking for camera pi updates...
[2026-06-05 06:46:27,472.472 INFO    ] 200
[2026-06-05 06:46:27,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:27,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:46:27,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:46:27,567.567 INFO    ] No camera update needed
[2026-06-05 06:46:27,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:46:27,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:46:27,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:46:27,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:46:29,625.625 INFO    ] ================================================
[2026-06-05 06:46:29,640.640 INFO    ] Launching Daemon at Fri Jun  5 06:46:29 IST 2026
[2026-06-05 06:46:29,651.651 INFO    ] ================================================
[2026-06-05 06:46:30,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:46:30
[2026-06-05 06:46:30,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:46:31,073.073 INFO    ] Initializing speech engine...
[2026-06-05 06:46:31,082.082 INFO    ] 2026-06-05 06:46:31
[2026-06-05 06:46:31,367.367 INFO    ] 2026-06-05 06:46:31
[2026-06-05 06:46:31,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:46:31,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:46:31,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:46:31,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:46:31,802.802 INFO    ] time= 05/06/2026 06:46:31
[2026-06-05 06:46:31,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:46:31,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:46:31,976.976 INFO    ] No existing commands found in stream
[2026-06-05 06:46:37,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:46:37,004.004 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 06:46:39,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:46:39,450.450 INFO    ] Checking for system updates...
[2026-06-05 06:46:39,489.489 INFO    ] 200
[2026-06-05 06:46:39,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:39,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:46:39,546.546 INFO    ] No update needed
[2026-06-05 06:46:39,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 06:46:39,589.589 INFO    ] 200
[2026-06-05 06:46:39,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:39,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:46:39,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:46:39,676.676 INFO    ] No camera update needed
[2026-06-05 06:46:39,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:46:39,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:46:39,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:46:39,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:46:41,732.732 INFO    ] ================================================
[2026-06-05 06:46:41,746.746 INFO    ] Launching Daemon at Fri Jun  5 06:46:41 IST 2026
[2026-06-05 06:46:41,757.757 INFO    ] ================================================
[2026-06-05 06:46:42,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:46:42
[2026-06-05 06:46:42,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:46:43,178.178 INFO    ] Initializing speech engine...
[2026-06-05 06:46:43,187.187 INFO    ] 2026-06-05 06:46:43
[2026-06-05 06:46:43,437.437 INFO    ] 2026-06-05 06:46:43
[2026-06-05 06:46:43,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:46:43,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:46:43,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:46:43,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:46:43,879.879 INFO    ] time= 05/06/2026 06:46:43
[2026-06-05 06:46:43,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:46:44,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:46:44,060.060 INFO    ] No existing commands found in stream
[2026-06-05 06:46:49,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:46:49,075.075 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 06:46:49,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:46:49,799.799 INFO    ] Checking for system updates...
[2026-06-05 06:46:49,838.838 INFO    ] 200
[2026-06-05 06:46:49,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:49,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:46:49,909.909 INFO    ] No update needed
[2026-06-05 06:46:49,911.911 INFO    ] Checking for camera pi updates...
[2026-06-05 06:46:49,948.948 INFO    ] 200
[2026-06-05 06:46:49,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:46:49,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:46:50,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:46:50,043.043 INFO    ] No camera update needed
[2026-06-05 06:46:50,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:46:50,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:46:50,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:46:50,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:46:52,102.102 INFO    ] ================================================
[2026-06-05 06:46:52,119.119 INFO    ] Launching Daemon at Fri Jun  5 06:46:52 IST 2026
[2026-06-05 06:46:52,131.131 INFO    ] ================================================
[2026-06-05 06:46:52,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:46:52
[2026-06-05 06:46:53,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:46:53,644.644 INFO    ] Initializing speech engine...
[2026-06-05 06:46:53,651.651 INFO    ] 2026-06-05 06:46:53
[2026-06-05 06:46:53,951.951 INFO    ] 2026-06-05 06:46:53
[2026-06-05 06:46:53,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:46:54,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:46:54,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:46:54,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:46:54,323.323 INFO    ] time= 05/06/2026 06:46:54
[2026-06-05 06:46:54,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:46:54,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:46:54,494.494 INFO    ] No existing commands found in stream
[2026-06-05 06:46:59,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:46:59,528.528 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 06:47:01,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:47:01,782.782 INFO    ] Checking for system updates...
[2026-06-05 06:47:01,817.817 INFO    ] 200
[2026-06-05 06:47:01,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:01,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:47:01,876.876 INFO    ] No update needed
[2026-06-05 06:47:01,878.878 INFO    ] Checking for camera pi updates...
[2026-06-05 06:47:01,912.912 INFO    ] 200
[2026-06-05 06:47:01,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:01,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:47:01,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:47:01,998.998 INFO    ] No camera update needed
[2026-06-05 06:47:02,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:47:02,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:47:02,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:47:02,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:47:04,079.079 INFO    ] ================================================
[2026-06-05 06:47:04,095.095 INFO    ] Launching Daemon at Fri Jun  5 06:47:04 IST 2026
[2026-06-05 06:47:04,106.106 INFO    ] ================================================
[2026-06-05 06:47:04,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:47:04
[2026-06-05 06:47:05,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:47:05,679.679 INFO    ] Initializing speech engine...
[2026-06-05 06:47:05,687.687 INFO    ] 2026-06-05 06:47:05
[2026-06-05 06:47:05,944.944 INFO    ] 2026-06-05 06:47:05
[2026-06-05 06:47:05,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:47:06,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:47:06,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:47:06,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:47:06,398.398 INFO    ] time= 05/06/2026 06:47:06
[2026-06-05 06:47:06,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:47:06,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:47:06,557.557 INFO    ] No existing commands found in stream
[2026-06-05 06:47:11,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:47:11,592.592 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 06:47:12,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:47:12,511.511 INFO    ] Checking for system updates...
[2026-06-05 06:47:12,550.550 INFO    ] 200
[2026-06-05 06:47:12,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:12,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:47:12,608.608 INFO    ] No update needed
[2026-06-05 06:47:12,611.611 INFO    ] Checking for camera pi updates...
[2026-06-05 06:47:12,648.648 INFO    ] 200
[2026-06-05 06:47:12,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:12,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:47:12,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:47:12,735.735 INFO    ] No camera update needed
[2026-06-05 06:47:12,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:47:12,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:47:12,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:47:12,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:47:14,793.793 INFO    ] ================================================
[2026-06-05 06:47:14,809.809 INFO    ] Launching Daemon at Fri Jun  5 06:47:14 IST 2026
[2026-06-05 06:47:14,821.821 INFO    ] ================================================
[2026-06-05 06:47:15,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:47:15
[2026-06-05 06:47:16,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:47:16,419.419 INFO    ] Initializing speech engine...
[2026-06-05 06:47:16,428.428 INFO    ] 2026-06-05 06:47:16
[2026-06-05 06:47:16,700.700 INFO    ] 2026-06-05 06:47:16
[2026-06-05 06:47:16,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:47:16,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:47:16,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:47:17,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:47:17,188.188 INFO    ] time= 05/06/2026 06:47:17
[2026-06-05 06:47:17,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:47:17,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:47:17,395.395 INFO    ] No existing commands found in stream
[2026-06-05 06:47:22,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:47:22,430.430 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 06:47:22,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:47:22,807.807 INFO    ] Checking for system updates...
[2026-06-05 06:47:22,847.847 INFO    ] 200
[2026-06-05 06:47:22,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:22,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:47:22,904.904 INFO    ] No update needed
[2026-06-05 06:47:22,907.907 INFO    ] Checking for camera pi updates...
[2026-06-05 06:47:22,941.941 INFO    ] 200
[2026-06-05 06:47:22,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:22,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:47:23,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:47:23,133.133 INFO    ] No camera update needed
[2026-06-05 06:47:23,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:47:23,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:47:23,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:47:23,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:47:25,189.189 INFO    ] ================================================
[2026-06-05 06:47:25,205.205 INFO    ] Launching Daemon at Fri Jun  5 06:47:25 IST 2026
[2026-06-05 06:47:25,216.216 INFO    ] ================================================
[2026-06-05 06:47:25,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:47:25
[2026-06-05 06:47:26,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:47:26,841.841 INFO    ] Initializing speech engine...
[2026-06-05 06:47:26,853.853 INFO    ] 2026-06-05 06:47:26
[2026-06-05 06:47:27,133.133 INFO    ] 2026-06-05 06:47:27
[2026-06-05 06:47:27,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:47:27,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:47:27,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:47:27,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:47:27,584.584 INFO    ] time= 05/06/2026 06:47:27
[2026-06-05 06:47:27,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:47:27,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:47:27,740.740 INFO    ] No existing commands found in stream
[2026-06-05 06:47:32,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:47:32,756.756 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 06:47:34,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:47:34,507.507 INFO    ] Checking for system updates...
[2026-06-05 06:47:34,543.543 INFO    ] 200
[2026-06-05 06:47:34,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:34,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:47:34,600.600 INFO    ] No update needed
[2026-06-05 06:47:34,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 06:47:34,639.639 INFO    ] 200
[2026-06-05 06:47:34,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:34,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:47:34,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:47:34,731.731 INFO    ] No camera update needed
[2026-06-05 06:47:34,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:47:34,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:47:34,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:47:34,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:47:36,787.787 INFO    ] ================================================
[2026-06-05 06:47:36,802.802 INFO    ] Launching Daemon at Fri Jun  5 06:47:36 IST 2026
[2026-06-05 06:47:36,815.815 INFO    ] ================================================
[2026-06-05 06:47:37,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:47:37
[2026-06-05 06:47:37,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:47:38,234.234 INFO    ] Initializing speech engine...
[2026-06-05 06:47:38,250.250 INFO    ] 2026-06-05 06:47:38
[2026-06-05 06:47:38,536.536 INFO    ] 2026-06-05 06:47:38
[2026-06-05 06:47:38,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:47:38,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:47:38,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:47:38,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:47:38,921.921 INFO    ] time= 05/06/2026 06:47:38
[2026-06-05 06:47:38,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:47:38,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:47:39,046.046 INFO    ] No existing commands found in stream
[2026-06-05 06:47:44,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:47:44,061.061 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 06:47:45,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:47:45,747.747 INFO    ] Checking for system updates...
[2026-06-05 06:47:45,787.787 INFO    ] 200
[2026-06-05 06:47:45,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:45,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:47:45,851.851 INFO    ] No update needed
[2026-06-05 06:47:45,853.853 INFO    ] Checking for camera pi updates...
[2026-06-05 06:47:45,887.887 INFO    ] 200
[2026-06-05 06:47:45,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:45,935.935 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:47:45,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:47:45,987.987 INFO    ] No camera update needed
[2026-06-05 06:47:45,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:47:45,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:47:45,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:47:46,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:47:48,043.043 INFO    ] ================================================
[2026-06-05 06:47:48,059.059 INFO    ] Launching Daemon at Fri Jun  5 06:47:48 IST 2026
[2026-06-05 06:47:48,070.070 INFO    ] ================================================
[2026-06-05 06:47:48,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:47:48
[2026-06-05 06:47:49,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:47:49,482.482 INFO    ] Initializing speech engine...
[2026-06-05 06:47:49,496.496 INFO    ] 2026-06-05 06:47:49
[2026-06-05 06:47:49,783.783 INFO    ] 2026-06-05 06:47:49
[2026-06-05 06:47:49,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:47:50,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:47:50,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:47:50,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:47:50,207.207 INFO    ] time= 05/06/2026 06:47:50
[2026-06-05 06:47:50,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:47:50,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:47:50,292.292 INFO    ] No existing commands found in stream
[2026-06-05 06:47:55,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:47:55,307.307 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 06:47:55,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:47:55,957.957 INFO    ] Checking for system updates...
[2026-06-05 06:47:55,993.993 INFO    ] 200
[2026-06-05 06:47:55,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:56,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:47:56,058.058 INFO    ] No update needed
[2026-06-05 06:47:56,061.061 INFO    ] Checking for camera pi updates...
[2026-06-05 06:47:56,095.095 INFO    ] 200
[2026-06-05 06:47:56,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:47:56,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:47:56,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:47:56,186.186 INFO    ] No camera update needed
[2026-06-05 06:47:56,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:47:56,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:47:56,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:47:56,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:47:58,244.244 INFO    ] ================================================
[2026-06-05 06:47:58,260.260 INFO    ] Launching Daemon at Fri Jun  5 06:47:58 IST 2026
[2026-06-05 06:47:58,271.271 INFO    ] ================================================
[2026-06-05 06:47:58,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:47:58
[2026-06-05 06:47:59,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:47:59,735.735 INFO    ] Initializing speech engine...
[2026-06-05 06:47:59,750.750 INFO    ] 2026-06-05 06:47:59
[2026-06-05 06:48:00,041.041 INFO    ] 2026-06-05 06:48:00
[2026-06-05 06:48:00,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:48:00,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:48:00,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:48:00,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:48:00,423.423 INFO    ] time= 05/06/2026 06:48:00
[2026-06-05 06:48:00,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:48:00,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:48:00,537.537 INFO    ] No existing commands found in stream
[2026-06-05 06:48:05,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:48:05,555.555 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 06:48:09,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:48:09,454.454 INFO    ] Checking for system updates...
[2026-06-05 06:48:09,491.491 INFO    ] 200
[2026-06-05 06:48:09,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:09,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:48:09,551.551 INFO    ] No update needed
[2026-06-05 06:48:09,553.553 INFO    ] Checking for camera pi updates...
[2026-06-05 06:48:09,587.587 INFO    ] 200
[2026-06-05 06:48:09,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:09,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:48:09,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:48:09,674.674 INFO    ] No camera update needed
[2026-06-05 06:48:09,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:48:09,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:48:09,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:48:09,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:48:11,732.732 INFO    ] ================================================
[2026-06-05 06:48:11,752.752 INFO    ] Launching Daemon at Fri Jun  5 06:48:11 IST 2026
[2026-06-05 06:48:11,765.765 INFO    ] ================================================
[2026-06-05 06:48:12,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:48:12
[2026-06-05 06:48:13,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:48:13,442.442 INFO    ] Initializing speech engine...
[2026-06-05 06:48:13,452.452 INFO    ] 2026-06-05 06:48:13
[2026-06-05 06:48:13,701.701 INFO    ] 2026-06-05 06:48:13
[2026-06-05 06:48:13,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:48:13,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:48:13,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:48:14,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:48:14,093.093 INFO    ] time= 05/06/2026 06:48:14
[2026-06-05 06:48:14,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:48:14,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:48:14,174.174 INFO    ] No existing commands found in stream
[2026-06-05 06:48:19,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:48:19,198.198 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 06:48:20,493.493 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:48:20,495.495 INFO    ] Checking for system updates...
[2026-06-05 06:48:20,549.549 INFO    ] 200
[2026-06-05 06:48:20,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:20,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:48:20,615.615 INFO    ] No update needed
[2026-06-05 06:48:20,618.618 INFO    ] Checking for camera pi updates...
[2026-06-05 06:48:20,652.652 INFO    ] 200
[2026-06-05 06:48:20,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:20,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:48:20,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:48:20,737.737 INFO    ] No camera update needed
[2026-06-05 06:48:20,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:48:20,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:48:20,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:48:20,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:48:22,794.794 INFO    ] ================================================
[2026-06-05 06:48:22,810.810 INFO    ] Launching Daemon at Fri Jun  5 06:48:22 IST 2026
[2026-06-05 06:48:22,821.821 INFO    ] ================================================
[2026-06-05 06:48:23,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:48:23
[2026-06-05 06:48:24,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:48:24,282.282 INFO    ] Initializing speech engine...
[2026-06-05 06:48:24,292.292 INFO    ] 2026-06-05 06:48:24
[2026-06-05 06:48:24,556.556 INFO    ] 2026-06-05 06:48:24
[2026-06-05 06:48:24,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:48:24,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:48:24,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:48:25,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:48:25,042.042 INFO    ] time= 05/06/2026 06:48:25
[2026-06-05 06:48:25,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:48:25,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:48:25,242.242 INFO    ] No existing commands found in stream
[2026-06-05 06:48:30,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:48:30,257.257 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 06:48:33,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:48:33,228.228 INFO    ] Checking for system updates...
[2026-06-05 06:48:33,273.273 INFO    ] 200
[2026-06-05 06:48:33,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:33,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:48:33,335.335 INFO    ] No update needed
[2026-06-05 06:48:33,338.338 INFO    ] Checking for camera pi updates...
[2026-06-05 06:48:33,373.373 INFO    ] 200
[2026-06-05 06:48:33,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:33,418.418 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:48:33,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:48:33,461.461 INFO    ] No camera update needed
[2026-06-05 06:48:33,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:48:33,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:48:33,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:48:33,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:48:35,520.520 INFO    ] ================================================
[2026-06-05 06:48:35,536.536 INFO    ] Launching Daemon at Fri Jun  5 06:48:35 IST 2026
[2026-06-05 06:48:35,546.546 INFO    ] ================================================
[2026-06-05 06:48:36,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:48:36
[2026-06-05 06:48:36,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:48:36,979.979 INFO    ] Initializing speech engine...
[2026-06-05 06:48:36,988.988 INFO    ] 2026-06-05 06:48:36
[2026-06-05 06:48:37,245.245 INFO    ] 2026-06-05 06:48:37
[2026-06-05 06:48:37,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:48:37,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:48:37,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:48:37,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:48:37,698.698 INFO    ] time= 05/06/2026 06:48:37
[2026-06-05 06:48:37,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:48:37,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:48:37,875.875 INFO    ] No existing commands found in stream
[2026-06-05 06:48:42,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:48:42,899.899 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 06:48:45,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:48:45,092.092 INFO    ] Checking for system updates...
[2026-06-05 06:48:45,129.129 INFO    ] 200
[2026-06-05 06:48:45,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:45,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:48:45,194.194 INFO    ] No update needed
[2026-06-05 06:48:45,197.197 INFO    ] Checking for camera pi updates...
[2026-06-05 06:48:45,235.235 INFO    ] 200
[2026-06-05 06:48:45,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:45,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:48:45,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:48:45,329.329 INFO    ] No camera update needed
[2026-06-05 06:48:45,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:48:45,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:48:45,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:48:45,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:48:47,391.391 INFO    ] ================================================
[2026-06-05 06:48:47,407.407 INFO    ] Launching Daemon at Fri Jun  5 06:48:47 IST 2026
[2026-06-05 06:48:47,418.418 INFO    ] ================================================
[2026-06-05 06:48:47,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:48:47
[2026-06-05 06:48:48,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:48:48,820.820 INFO    ] Initializing speech engine...
[2026-06-05 06:48:48,829.829 INFO    ] 2026-06-05 06:48:48
[2026-06-05 06:48:49,119.119 INFO    ] 2026-06-05 06:48:49
[2026-06-05 06:48:49,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:48:49,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:48:49,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:48:49,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:48:49,535.535 INFO    ] time= 05/06/2026 06:48:49
[2026-06-05 06:48:49,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:48:49,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:48:49,686.686 INFO    ] No existing commands found in stream
[2026-06-05 06:48:54,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:48:54,713.713 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 06:48:59,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:48:59,095.095 INFO    ] Checking for system updates...
[2026-06-05 06:48:59,131.131 INFO    ] 200
[2026-06-05 06:48:59,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:59,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:48:59,194.194 INFO    ] No update needed
[2026-06-05 06:48:59,197.197 INFO    ] Checking for camera pi updates...
[2026-06-05 06:48:59,233.233 INFO    ] 200
[2026-06-05 06:48:59,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:48:59,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:48:59,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:48:59,325.325 INFO    ] No camera update needed
[2026-06-05 06:48:59,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:48:59,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:48:59,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:48:59,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:49:01,381.381 INFO    ] ================================================
[2026-06-05 06:49:01,397.397 INFO    ] Launching Daemon at Fri Jun  5 06:49:01 IST 2026
[2026-06-05 06:49:01,409.409 INFO    ] ================================================
[2026-06-05 06:49:02,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:49:02
[2026-06-05 06:49:02,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:49:03,086.086 INFO    ] Initializing speech engine...
[2026-06-05 06:49:03,096.096 INFO    ] 2026-06-05 06:49:03
[2026-06-05 06:49:03,376.376 INFO    ] 2026-06-05 06:49:03
[2026-06-05 06:49:03,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:49:03,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:49:03,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:49:03,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:49:03,806.806 INFO    ] time= 05/06/2026 06:49:03
[2026-06-05 06:49:03,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:49:03,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:49:03,982.982 INFO    ] No existing commands found in stream
[2026-06-05 06:49:09,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:49:09,017.017 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 06:49:13,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:49:13,244.244 INFO    ] Checking for system updates...
[2026-06-05 06:49:13,282.282 INFO    ] 200
[2026-06-05 06:49:13,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:49:13,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:49:13,342.342 INFO    ] No update needed
[2026-06-05 06:49:13,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 06:49:13,380.380 INFO    ] 200
[2026-06-05 06:49:13,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:49:13,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:49:13,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:49:13,474.474 INFO    ] No camera update needed
[2026-06-05 06:49:13,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:49:13,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:49:13,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:49:13,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:49:15,532.532 INFO    ] ================================================
[2026-06-05 06:49:15,548.548 INFO    ] Launching Daemon at Fri Jun  5 06:49:15 IST 2026
[2026-06-05 06:49:15,558.558 INFO    ] ================================================
[2026-06-05 06:49:16,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:49:16
[2026-06-05 06:49:16,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:49:17,018.018 INFO    ] Initializing speech engine...
[2026-06-05 06:49:17,033.033 INFO    ] 2026-06-05 06:49:17
[2026-06-05 06:49:17,306.306 INFO    ] 2026-06-05 06:49:17
[2026-06-05 06:49:17,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:49:17,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:49:17,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:49:17,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:49:17,806.806 INFO    ] time= 05/06/2026 06:49:17
[2026-06-05 06:49:17,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:49:17,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:49:17,938.938 INFO    ] No existing commands found in stream
[2026-06-05 06:49:22,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:49:22,970.970 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 06:49:25,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:49:25,937.937 INFO    ] Checking for system updates...
[2026-06-05 06:49:25,973.973 INFO    ] 200
[2026-06-05 06:49:25,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:49:26,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:49:26,031.031 INFO    ] No update needed
[2026-06-05 06:49:26,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 06:49:26,067.067 INFO    ] 200
[2026-06-05 06:49:26,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:49:26,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:49:26,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:49:26,260.260 INFO    ] No camera update needed
[2026-06-05 06:49:26,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:49:26,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:49:26,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:49:26,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:49:28,316.316 INFO    ] ================================================
[2026-06-05 06:49:28,331.331 INFO    ] Launching Daemon at Fri Jun  5 06:49:28 IST 2026
[2026-06-05 06:49:28,342.342 INFO    ] ================================================
[2026-06-05 06:49:28,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:49:28
[2026-06-05 06:49:29,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:49:29,790.790 INFO    ] Initializing speech engine...
[2026-06-05 06:49:29,808.808 INFO    ] 2026-06-05 06:49:29
[2026-06-05 06:49:30,060.060 INFO    ] 2026-06-05 06:49:30
[2026-06-05 06:49:30,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:49:30,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:49:30,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:49:30,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:49:30,556.556 INFO    ] time= 05/06/2026 06:49:30
[2026-06-05 06:49:30,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:49:30,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:49:30,745.745 INFO    ] No existing commands found in stream
[2026-06-05 06:49:35,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:49:35,778.778 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 06:49:37,957.957 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:49:37,960.960 INFO    ] Checking for system updates...
[2026-06-05 06:49:37,999.999 INFO    ] 200
[2026-06-05 06:49:38,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:49:38,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:49:38,063.063 INFO    ] No update needed
[2026-06-05 06:49:38,065.065 INFO    ] Checking for camera pi updates...
[2026-06-05 06:49:38,099.099 INFO    ] 200
[2026-06-05 06:49:38,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:49:38,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:49:38,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:49:38,191.191 INFO    ] No camera update needed
[2026-06-05 06:49:38,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:49:38,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:49:38,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:49:38,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:49:40,247.247 INFO    ] ================================================
[2026-06-05 06:49:40,263.263 INFO    ] Launching Daemon at Fri Jun  5 06:49:40 IST 2026
[2026-06-05 06:49:40,273.273 INFO    ] ================================================
[2026-06-05 06:49:40,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:49:40
[2026-06-05 06:49:41,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:49:41,874.874 INFO    ] Initializing speech engine...
[2026-06-05 06:49:41,884.884 INFO    ] 2026-06-05 06:49:41
[2026-06-05 06:49:42,150.150 INFO    ] 2026-06-05 06:49:42
[2026-06-05 06:49:42,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:49:42,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:49:42,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:49:42,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:49:42,647.647 INFO    ] time= 05/06/2026 06:49:42
[2026-06-05 06:49:42,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:49:42,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:49:42,799.799 INFO    ] No existing commands found in stream
[2026-06-05 06:49:47,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:49:47,835.835 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 06:49:48,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:49:48,377.377 INFO    ] Checking for system updates...
[2026-06-05 06:49:48,414.414 INFO    ] 200
[2026-06-05 06:49:48,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:49:48,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:49:48,475.475 INFO    ] No update needed
[2026-06-05 06:49:48,478.478 INFO    ] Checking for camera pi updates...
[2026-06-05 06:49:48,512.512 INFO    ] 200
[2026-06-05 06:49:48,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:49:48,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:49:48,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:49:48,604.604 INFO    ] No camera update needed
[2026-06-05 06:49:48,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:49:48,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:49:48,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:49:48,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:49:50,662.662 INFO    ] ================================================
[2026-06-05 06:49:50,679.679 INFO    ] Launching Daemon at Fri Jun  5 06:49:50 IST 2026
[2026-06-05 06:49:50,690.690 INFO    ] ================================================
[2026-06-05 06:49:51,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:49:51
[2026-06-05 06:49:51,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:49:52,131.131 INFO    ] Initializing speech engine...
[2026-06-05 06:49:52,140.140 INFO    ] 2026-06-05 06:49:52
[2026-06-05 06:49:52,387.387 INFO    ] 2026-06-05 06:49:52
[2026-06-05 06:49:52,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:49:52,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:49:52,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:49:52,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:49:52,868.868 INFO    ] time= 05/06/2026 06:49:52
[2026-06-05 06:49:52,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:49:52,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:49:53,007.007 INFO    ] No existing commands found in stream
[2026-06-05 06:49:58,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:49:58,021.021 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 06:50:01,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:50:01,956.956 INFO    ] Checking for system updates...
[2026-06-05 06:50:02,184.184 INFO    ] 200
[2026-06-05 06:50:02,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:02,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:50:02,434.434 INFO    ] No update needed
[2026-06-05 06:50:02,468.468 INFO    ] Checking for camera pi updates...
[2026-06-05 06:50:02,541.541 INFO    ] 200
[2026-06-05 06:50:02,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:02,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:50:02,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:50:02,722.722 INFO    ] No camera update needed
[2026-06-05 06:50:02,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:50:02,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:50:02,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:50:02,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:50:04,805.805 INFO    ] ================================================
[2026-06-05 06:50:04,820.820 INFO    ] Launching Daemon at Fri Jun  5 06:50:04 IST 2026
[2026-06-05 06:50:04,832.832 INFO    ] ================================================
[2026-06-05 06:50:05,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:50:05
[2026-06-05 06:50:05,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:50:06,295.295 INFO    ] Initializing speech engine...
[2026-06-05 06:50:06,306.306 INFO    ] 2026-06-05 06:50:06
[2026-06-05 06:50:06,592.592 INFO    ] 2026-06-05 06:50:06
[2026-06-05 06:50:06,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:50:06,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:50:06,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:50:07,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:50:07,118.118 INFO    ] time= 05/06/2026 06:50:07
[2026-06-05 06:50:07,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:50:07,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:50:07,219.219 INFO    ] No existing commands found in stream
[2026-06-05 06:50:12,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:50:12,231.231 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 06:50:14,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:50:14,664.664 INFO    ] Checking for system updates...
[2026-06-05 06:50:14,703.703 INFO    ] 200
[2026-06-05 06:50:14,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:14,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:50:14,760.760 INFO    ] No update needed
[2026-06-05 06:50:14,763.763 INFO    ] Checking for camera pi updates...
[2026-06-05 06:50:14,799.799 INFO    ] 200
[2026-06-05 06:50:14,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:14,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:50:14,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:50:14,891.891 INFO    ] No camera update needed
[2026-06-05 06:50:14,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:50:14,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:50:14,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:50:14,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:50:16,947.947 INFO    ] ================================================
[2026-06-05 06:50:16,963.963 INFO    ] Launching Daemon at Fri Jun  5 06:50:16 IST 2026
[2026-06-05 06:50:16,974.974 INFO    ] ================================================
[2026-06-05 06:50:17,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:50:17
[2026-06-05 06:50:18,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:50:18,390.390 INFO    ] Initializing speech engine...
[2026-06-05 06:50:18,414.414 INFO    ] 2026-06-05 06:50:18
[2026-06-05 06:50:18,684.684 INFO    ] 2026-06-05 06:50:18
[2026-06-05 06:50:18,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:50:18,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:50:18,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:50:19,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:50:19,054.054 INFO    ] time= 05/06/2026 06:50:19
[2026-06-05 06:50:19,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:50:19,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:50:19,175.175 INFO    ] No existing commands found in stream
[2026-06-05 06:50:24,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:50:24,190.190 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 06:50:27,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:50:27,855.855 INFO    ] Checking for system updates...
[2026-06-05 06:50:27,891.891 INFO    ] 200
[2026-06-05 06:50:27,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:27,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:50:27,952.952 INFO    ] No update needed
[2026-06-05 06:50:27,955.955 INFO    ] Checking for camera pi updates...
[2026-06-05 06:50:27,989.989 INFO    ] 200
[2026-06-05 06:50:27,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:28,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:50:28,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:50:28,085.085 INFO    ] No camera update needed
[2026-06-05 06:50:28,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:50:28,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:50:28,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:50:28,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:50:30,141.141 INFO    ] ================================================
[2026-06-05 06:50:30,156.156 INFO    ] Launching Daemon at Fri Jun  5 06:50:30 IST 2026
[2026-06-05 06:50:30,167.167 INFO    ] ================================================
[2026-06-05 06:50:30,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:50:30
[2026-06-05 06:50:31,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:50:31,585.585 INFO    ] Initializing speech engine...
[2026-06-05 06:50:31,591.591 INFO    ] 2026-06-05 06:50:31
[2026-06-05 06:50:31,878.878 INFO    ] 2026-06-05 06:50:31
[2026-06-05 06:50:31,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:50:32,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:50:32,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:50:32,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:50:32,281.281 INFO    ] time= 05/06/2026 06:50:32
[2026-06-05 06:50:32,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:50:32,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:50:32,416.416 INFO    ] No existing commands found in stream
[2026-06-05 06:50:37,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:50:37,432.432 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 06:50:40,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:50:40,670.670 INFO    ] Checking for system updates...
[2026-06-05 06:50:40,710.710 INFO    ] 200
[2026-06-05 06:50:40,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:40,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:50:40,772.772 INFO    ] No update needed
[2026-06-05 06:50:40,774.774 INFO    ] Checking for camera pi updates...
[2026-06-05 06:50:40,809.809 INFO    ] 200
[2026-06-05 06:50:40,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:40,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:50:40,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:50:40,903.903 INFO    ] No camera update needed
[2026-06-05 06:50:40,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:50:40,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:50:40,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:50:40,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:50:42,961.961 INFO    ] ================================================
[2026-06-05 06:50:42,977.977 INFO    ] Launching Daemon at Fri Jun  5 06:50:42 IST 2026
[2026-06-05 06:50:42,988.988 INFO    ] ================================================
[2026-06-05 06:50:43,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:50:43
[2026-06-05 06:50:44,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:50:44,394.394 INFO    ] Initializing speech engine...
[2026-06-05 06:50:44,408.408 INFO    ] 2026-06-05 06:50:44
[2026-06-05 06:50:44,672.672 INFO    ] 2026-06-05 06:50:44
[2026-06-05 06:50:44,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:50:45,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:50:46,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:50:46,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:50:46,108.108 INFO    ] time= 05/06/2026 06:50:46
[2026-06-05 06:50:46,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:50:46,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:50:46,175.175 INFO    ] No existing commands found in stream
[2026-06-05 06:50:51,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:50:51,190.190 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 06:50:53,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:50:53,022.022 INFO    ] Checking for system updates...
[2026-06-05 06:50:53,058.058 INFO    ] 200
[2026-06-05 06:50:53,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:53,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:50:53,122.122 INFO    ] No update needed
[2026-06-05 06:50:53,125.125 INFO    ] Checking for camera pi updates...
[2026-06-05 06:50:53,159.159 INFO    ] 200
[2026-06-05 06:50:53,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:50:53,202.202 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:50:53,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:50:53,251.251 INFO    ] No camera update needed
[2026-06-05 06:50:53,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:50:53,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:50:53,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:50:53,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:50:55,307.307 INFO    ] ================================================
[2026-06-05 06:50:55,322.322 INFO    ] Launching Daemon at Fri Jun  5 06:50:55 IST 2026
[2026-06-05 06:50:55,333.333 INFO    ] ================================================
[2026-06-05 06:50:55,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:50:55
[2026-06-05 06:50:56,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:50:56,746.746 INFO    ] Initializing speech engine...
[2026-06-05 06:50:56,762.762 INFO    ] 2026-06-05 06:50:56
[2026-06-05 06:50:57,026.026 INFO    ] 2026-06-05 06:50:57
[2026-06-05 06:50:57,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:50:57,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:50:57,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:50:57,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:50:57,407.407 INFO    ] time= 05/06/2026 06:50:57
[2026-06-05 06:50:57,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:50:57,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:50:57,512.512 INFO    ] No existing commands found in stream
[2026-06-05 06:51:02,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:51:02,528.528 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 06:51:04,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:51:04,528.528 INFO    ] Checking for system updates...
[2026-06-05 06:51:04,564.564 INFO    ] 200
[2026-06-05 06:51:04,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:04,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:51:04,622.622 INFO    ] No update needed
[2026-06-05 06:51:04,625.625 INFO    ] Checking for camera pi updates...
[2026-06-05 06:51:04,658.658 INFO    ] 200
[2026-06-05 06:51:04,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:04,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:51:04,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:51:04,730.730 INFO    ] No camera update needed
[2026-06-05 06:51:04,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:51:04,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:51:04,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:51:04,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:51:06,786.786 INFO    ] ================================================
[2026-06-05 06:51:06,801.801 INFO    ] Launching Daemon at Fri Jun  5 06:51:06 IST 2026
[2026-06-05 06:51:06,812.812 INFO    ] ================================================
[2026-06-05 06:51:07,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:51:07
[2026-06-05 06:51:07,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:51:08,221.221 INFO    ] Initializing speech engine...
[2026-06-05 06:51:08,244.244 INFO    ] 2026-06-05 06:51:08
[2026-06-05 06:51:08,500.500 INFO    ] 2026-06-05 06:51:08
[2026-06-05 06:51:08,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:51:08,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:51:08,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:51:08,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:51:08,878.878 INFO    ] time= 05/06/2026 06:51:08
[2026-06-05 06:51:08,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:51:08,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:51:09,063.063 INFO    ] No existing commands found in stream
[2026-06-05 06:51:14,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:51:14,091.091 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 06:51:16,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:51:16,776.776 INFO    ] Checking for system updates...
[2026-06-05 06:51:16,814.814 INFO    ] 200
[2026-06-05 06:51:16,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:16,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:51:16,876.876 INFO    ] No update needed
[2026-06-05 06:51:16,879.879 INFO    ] Checking for camera pi updates...
[2026-06-05 06:51:16,915.915 INFO    ] 200
[2026-06-05 06:51:16,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:16,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:51:17,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:51:17,013.013 INFO    ] No camera update needed
[2026-06-05 06:51:17,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:51:17,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:51:17,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:51:17,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:51:19,073.073 INFO    ] ================================================
[2026-06-05 06:51:19,089.089 INFO    ] Launching Daemon at Fri Jun  5 06:51:19 IST 2026
[2026-06-05 06:51:19,100.100 INFO    ] ================================================
[2026-06-05 06:51:19,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:51:19
[2026-06-05 06:51:20,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:51:20,567.567 INFO    ] Initializing speech engine...
[2026-06-05 06:51:20,574.574 INFO    ] 2026-06-05 06:51:20
[2026-06-05 06:51:20,834.834 INFO    ] 2026-06-05 06:51:20
[2026-06-05 06:51:20,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:51:21,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:51:21,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:51:21,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:51:21,304.304 INFO    ] time= 05/06/2026 06:51:21
[2026-06-05 06:51:21,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:51:21,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:51:21,442.442 INFO    ] No existing commands found in stream
[2026-06-05 06:51:26,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:51:26,457.457 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 06:51:30,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:51:30,726.726 INFO    ] Checking for system updates...
[2026-06-05 06:51:30,767.767 INFO    ] 200
[2026-06-05 06:51:30,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:30,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:51:30,827.827 INFO    ] No update needed
[2026-06-05 06:51:30,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 06:51:30,863.863 INFO    ] 200
[2026-06-05 06:51:30,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:30,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:51:31,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:51:31,062.062 INFO    ] No camera update needed
[2026-06-05 06:51:31,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:51:31,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:51:31,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:51:31,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:51:33,122.122 INFO    ] ================================================
[2026-06-05 06:51:33,138.138 INFO    ] Launching Daemon at Fri Jun  5 06:51:33 IST 2026
[2026-06-05 06:51:33,149.149 INFO    ] ================================================
[2026-06-05 06:51:33,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:51:33
[2026-06-05 06:51:34,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:51:34,572.572 INFO    ] Initializing speech engine...
[2026-06-05 06:51:34,581.581 INFO    ] 2026-06-05 06:51:34
[2026-06-05 06:51:34,833.833 INFO    ] 2026-06-05 06:51:34
[2026-06-05 06:51:34,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:51:35,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:51:35,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:51:35,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:51:35,228.228 INFO    ] time= 05/06/2026 06:51:35
[2026-06-05 06:51:35,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:51:35,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:51:35,393.393 INFO    ] No existing commands found in stream
[2026-06-05 06:51:40,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:51:40,421.421 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 06:51:44,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:51:44,261.261 INFO    ] Checking for system updates...
[2026-06-05 06:51:44,297.297 INFO    ] 200
[2026-06-05 06:51:44,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:44,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:51:44,356.356 INFO    ] No update needed
[2026-06-05 06:51:44,359.359 INFO    ] Checking for camera pi updates...
[2026-06-05 06:51:44,392.392 INFO    ] 200
[2026-06-05 06:51:44,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:44,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:51:44,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:51:44,480.480 INFO    ] No camera update needed
[2026-06-05 06:51:44,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:51:44,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:51:44,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:51:44,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:51:46,537.537 INFO    ] ================================================
[2026-06-05 06:51:46,553.553 INFO    ] Launching Daemon at Fri Jun  5 06:51:46 IST 2026
[2026-06-05 06:51:46,564.564 INFO    ] ================================================
[2026-06-05 06:51:47,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:51:47
[2026-06-05 06:51:47,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:51:48,137.137 INFO    ] Initializing speech engine...
[2026-06-05 06:51:48,146.146 INFO    ] 2026-06-05 06:51:48
[2026-06-05 06:51:48,403.403 INFO    ] 2026-06-05 06:51:48
[2026-06-05 06:51:48,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:51:48,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:51:48,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:51:48,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:51:48,868.868 INFO    ] time= 05/06/2026 06:51:48
[2026-06-05 06:51:48,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:51:48,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:51:49,009.009 INFO    ] No existing commands found in stream
[2026-06-05 06:51:54,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:51:54,024.024 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 06:51:56,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:51:56,977.977 INFO    ] Checking for system updates...
[2026-06-05 06:51:57,014.014 INFO    ] 200
[2026-06-05 06:51:57,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:57,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:51:57,073.073 INFO    ] No update needed
[2026-06-05 06:51:57,075.075 INFO    ] Checking for camera pi updates...
[2026-06-05 06:51:57,114.114 INFO    ] 200
[2026-06-05 06:51:57,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:51:57,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:51:57,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:51:57,214.214 INFO    ] No camera update needed
[2026-06-05 06:51:57,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:51:57,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:51:57,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:51:57,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:51:59,270.270 INFO    ] ================================================
[2026-06-05 06:51:59,284.284 INFO    ] Launching Daemon at Fri Jun  5 06:51:59 IST 2026
[2026-06-05 06:51:59,296.296 INFO    ] ================================================
[2026-06-05 06:51:59,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:51:59
[2026-06-05 06:52:00,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:52:00,765.765 INFO    ] Initializing speech engine...
[2026-06-05 06:52:00,775.775 INFO    ] 2026-06-05 06:52:00
[2026-06-05 06:52:01,043.043 INFO    ] 2026-06-05 06:52:01
[2026-06-05 06:52:01,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:52:01,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:52:01,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:52:01,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:52:01,480.480 INFO    ] time= 05/06/2026 06:52:01
[2026-06-05 06:52:01,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:52:01,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:52:01,543.543 INFO    ] No existing commands found in stream
[2026-06-05 06:52:06,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:52:06,557.557 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 06:52:09,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:52:09,136.136 INFO    ] Checking for system updates...
[2026-06-05 06:52:09,176.176 INFO    ] 200
[2026-06-05 06:52:09,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:09,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:52:09,235.235 INFO    ] No update needed
[2026-06-05 06:52:09,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 06:52:09,271.271 INFO    ] 200
[2026-06-05 06:52:09,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:09,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:52:09,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:52:09,358.358 INFO    ] No camera update needed
[2026-06-05 06:52:09,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:52:09,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:52:09,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:52:09,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:52:11,413.413 INFO    ] ================================================
[2026-06-05 06:52:11,428.428 INFO    ] Launching Daemon at Fri Jun  5 06:52:11 IST 2026
[2026-06-05 06:52:11,439.439 INFO    ] ================================================
[2026-06-05 06:52:12,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:52:12
[2026-06-05 06:52:12,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:52:12,849.849 INFO    ] Initializing speech engine...
[2026-06-05 06:52:12,855.855 INFO    ] 2026-06-05 06:52:12
[2026-06-05 06:52:13,151.151 INFO    ] 2026-06-05 06:52:13
[2026-06-05 06:52:13,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:52:13,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:52:13,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:52:13,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:52:13,533.533 INFO    ] time= 05/06/2026 06:52:13
[2026-06-05 06:52:13,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:52:13,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:52:13,658.658 INFO    ] No existing commands found in stream
[2026-06-05 06:52:18,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:52:18,673.673 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 06:52:19,112.112 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:52:19,115.115 INFO    ] Checking for system updates...
[2026-06-05 06:52:19,151.151 INFO    ] 200
[2026-06-05 06:52:19,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:19,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:52:19,210.210 INFO    ] No update needed
[2026-06-05 06:52:19,212.212 INFO    ] Checking for camera pi updates...
[2026-06-05 06:52:19,249.249 INFO    ] 200
[2026-06-05 06:52:19,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:19,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:52:19,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:52:19,337.337 INFO    ] No camera update needed
[2026-06-05 06:52:19,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:52:19,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:52:19,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:52:19,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:52:21,392.392 INFO    ] ================================================
[2026-06-05 06:52:21,408.408 INFO    ] Launching Daemon at Fri Jun  5 06:52:21 IST 2026
[2026-06-05 06:52:21,418.418 INFO    ] ================================================
[2026-06-05 06:52:22,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:52:22
[2026-06-05 06:52:22,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:52:22,870.870 INFO    ] Initializing speech engine...
[2026-06-05 06:52:22,876.876 INFO    ] 2026-06-05 06:52:22
[2026-06-05 06:52:23,125.125 INFO    ] 2026-06-05 06:52:23
[2026-06-05 06:52:23,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:52:23,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:52:23,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:52:23,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:52:23,507.507 INFO    ] time= 05/06/2026 06:52:23
[2026-06-05 06:52:23,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:52:23,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:52:23,665.665 INFO    ] No existing commands found in stream
[2026-06-05 06:52:28,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:52:28,693.693 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-05 06:52:31,087.087 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:52:31,090.090 INFO    ] Checking for system updates...
[2026-06-05 06:52:31,133.133 INFO    ] 200
[2026-06-05 06:52:31,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:31,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:52:31,203.203 INFO    ] No update needed
[2026-06-05 06:52:31,206.206 INFO    ] Checking for camera pi updates...
[2026-06-05 06:52:31,255.255 INFO    ] 200
[2026-06-05 06:52:31,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:31,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:52:31,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:52:31,365.365 INFO    ] No camera update needed
[2026-06-05 06:52:31,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:52:31,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:52:31,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:52:31,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:52:33,429.429 INFO    ] ================================================
[2026-06-05 06:52:33,445.445 INFO    ] Launching Daemon at Fri Jun  5 06:52:33 IST 2026
[2026-06-05 06:52:33,455.455 INFO    ] ================================================
[2026-06-05 06:52:34,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:52:34
[2026-06-05 06:52:34,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:52:34,947.947 INFO    ] Initializing speech engine...
[2026-06-05 06:52:34,958.958 INFO    ] 2026-06-05 06:52:34
[2026-06-05 06:52:35,207.207 INFO    ] 2026-06-05 06:52:35
[2026-06-05 06:52:35,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:52:35,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:52:35,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:52:35,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:52:35,674.674 INFO    ] time= 05/06/2026 06:52:35
[2026-06-05 06:52:35,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:52:35,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:52:35,822.822 INFO    ] No existing commands found in stream
[2026-06-05 06:52:40,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:52:40,837.837 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 06:52:43,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:52:43,480.480 INFO    ] Checking for system updates...
[2026-06-05 06:52:43,516.516 INFO    ] 200
[2026-06-05 06:52:43,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:43,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:52:43,574.574 INFO    ] No update needed
[2026-06-05 06:52:43,576.576 INFO    ] Checking for camera pi updates...
[2026-06-05 06:52:43,611.611 INFO    ] 200
[2026-06-05 06:52:43,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:43,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:52:43,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:52:43,708.708 INFO    ] No camera update needed
[2026-06-05 06:52:43,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:52:43,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:52:43,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:52:43,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:52:45,764.764 INFO    ] ================================================
[2026-06-05 06:52:45,779.779 INFO    ] Launching Daemon at Fri Jun  5 06:52:45 IST 2026
[2026-06-05 06:52:45,790.790 INFO    ] ================================================
[2026-06-05 06:52:46,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:52:46
[2026-06-05 06:52:47,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:52:47,410.410 INFO    ] Initializing speech engine...
[2026-06-05 06:52:47,417.417 INFO    ] 2026-06-05 06:52:47
[2026-06-05 06:52:47,705.705 INFO    ] 2026-06-05 06:52:47
[2026-06-05 06:52:47,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:52:47,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:52:47,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:52:48,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:52:48,231.231 INFO    ] time= 05/06/2026 06:52:48
[2026-06-05 06:52:48,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:52:48,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:52:48,375.375 INFO    ] No existing commands found in stream
[2026-06-05 06:52:53,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:52:53,405.405 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 06:52:56,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:52:56,824.824 INFO    ] Checking for system updates...
[2026-06-05 06:52:56,861.861 INFO    ] 200
[2026-06-05 06:52:56,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:56,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:52:56,928.928 INFO    ] No update needed
[2026-06-05 06:52:56,931.931 INFO    ] Checking for camera pi updates...
[2026-06-05 06:52:56,967.967 INFO    ] 200
[2026-06-05 06:52:56,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:52:57,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:52:57,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:52:57,063.063 INFO    ] No camera update needed
[2026-06-05 06:52:57,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:52:57,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:52:57,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:52:57,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:52:59,118.118 INFO    ] ================================================
[2026-06-05 06:52:59,133.133 INFO    ] Launching Daemon at Fri Jun  5 06:52:59 IST 2026
[2026-06-05 06:52:59,143.143 INFO    ] ================================================
[2026-06-05 06:52:59,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:52:59
[2026-06-05 06:53:00,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:53:00,758.758 INFO    ] Initializing speech engine...
[2026-06-05 06:53:00,769.769 INFO    ] 2026-06-05 06:53:00
[2026-06-05 06:53:01,051.051 INFO    ] 2026-06-05 06:53:01
[2026-06-05 06:53:01,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:53:01,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:53:01,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:53:01,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:53:01,505.505 INFO    ] time= 05/06/2026 06:53:01
[2026-06-05 06:53:01,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:53:01,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:53:01,589.589 INFO    ] No existing commands found in stream
[2026-06-05 06:53:06,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:53:06,604.604 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 06:53:08,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:53:08,267.267 INFO    ] Checking for system updates...
[2026-06-05 06:53:08,308.308 INFO    ] 200
[2026-06-05 06:53:08,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:08,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:53:08,368.368 INFO    ] No update needed
[2026-06-05 06:53:08,371.371 INFO    ] Checking for camera pi updates...
[2026-06-05 06:53:08,412.412 INFO    ] 200
[2026-06-05 06:53:08,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:08,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:53:08,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:53:08,501.501 INFO    ] No camera update needed
[2026-06-05 06:53:08,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:53:08,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:53:08,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:53:08,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:53:10,557.557 INFO    ] ================================================
[2026-06-05 06:53:10,572.572 INFO    ] Launching Daemon at Fri Jun  5 06:53:10 IST 2026
[2026-06-05 06:53:10,583.583 INFO    ] ================================================
[2026-06-05 06:53:11,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:53:11
[2026-06-05 06:53:11,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:53:12,070.070 INFO    ] Initializing speech engine...
[2026-06-05 06:53:12,078.078 INFO    ] 2026-06-05 06:53:12
[2026-06-05 06:53:12,352.352 INFO    ] 2026-06-05 06:53:12
[2026-06-05 06:53:12,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:53:12,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:53:12,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:53:12,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:53:12,827.827 INFO    ] time= 05/06/2026 06:53:12
[2026-06-05 06:53:12,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:53:12,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:53:13,024.024 INFO    ] No existing commands found in stream
[2026-06-05 06:53:18,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:53:18,038.038 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 06:53:19,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:53:19,626.626 INFO    ] Checking for system updates...
[2026-06-05 06:53:19,664.664 INFO    ] 200
[2026-06-05 06:53:19,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:19,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:53:19,728.728 INFO    ] No update needed
[2026-06-05 06:53:19,730.730 INFO    ] Checking for camera pi updates...
[2026-06-05 06:53:19,764.764 INFO    ] 200
[2026-06-05 06:53:19,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:19,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:53:19,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:53:19,855.855 INFO    ] No camera update needed
[2026-06-05 06:53:19,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:53:19,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:53:19,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:53:19,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:53:21,912.912 INFO    ] ================================================
[2026-06-05 06:53:21,927.927 INFO    ] Launching Daemon at Fri Jun  5 06:53:21 IST 2026
[2026-06-05 06:53:21,938.938 INFO    ] ================================================
[2026-06-05 06:53:22,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:53:22
[2026-06-05 06:53:23,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:53:23,434.434 INFO    ] Initializing speech engine...
[2026-06-05 06:53:23,442.442 INFO    ] 2026-06-05 06:53:23
[2026-06-05 06:53:23,739.739 INFO    ] 2026-06-05 06:53:23
[2026-06-05 06:53:23,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:53:23,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:53:23,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:53:24,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:53:24,126.126 INFO    ] time= 05/06/2026 06:53:24
[2026-06-05 06:53:24,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:53:24,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:53:24,223.223 INFO    ] No existing commands found in stream
[2026-06-05 06:53:29,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:53:29,257.257 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 06:53:32,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:53:32,103.103 INFO    ] Checking for system updates...
[2026-06-05 06:53:32,142.142 INFO    ] 200
[2026-06-05 06:53:32,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:32,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:53:32,212.212 INFO    ] No update needed
[2026-06-05 06:53:32,215.215 INFO    ] Checking for camera pi updates...
[2026-06-05 06:53:32,251.251 INFO    ] 200
[2026-06-05 06:53:32,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:32,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:53:32,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:53:32,332.332 INFO    ] No camera update needed
[2026-06-05 06:53:32,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:53:32,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:53:32,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:53:32,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:53:34,393.393 INFO    ] ================================================
[2026-06-05 06:53:34,408.408 INFO    ] Launching Daemon at Fri Jun  5 06:53:34 IST 2026
[2026-06-05 06:53:34,419.419 INFO    ] ================================================
[2026-06-05 06:53:35,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:53:35
[2026-06-05 06:53:35,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:53:36,028.028 INFO    ] Initializing speech engine...
[2026-06-05 06:53:36,036.036 INFO    ] 2026-06-05 06:53:36
[2026-06-05 06:53:36,306.306 INFO    ] 2026-06-05 06:53:36
[2026-06-05 06:53:36,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:53:36,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:53:36,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:53:36,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:53:36,684.684 INFO    ] time= 05/06/2026 06:53:36
[2026-06-05 06:53:36,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:53:36,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:53:36,860.860 INFO    ] No existing commands found in stream
[2026-06-05 06:53:41,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:53:41,894.894 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 06:53:42,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:53:42,953.953 INFO    ] Checking for system updates...
[2026-06-05 06:53:42,990.990 INFO    ] 200
[2026-06-05 06:53:42,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:43,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:53:43,056.056 INFO    ] No update needed
[2026-06-05 06:53:43,059.059 INFO    ] Checking for camera pi updates...
[2026-06-05 06:53:43,094.094 INFO    ] 200
[2026-06-05 06:53:43,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:43,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:53:43,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:53:43,294.294 INFO    ] No camera update needed
[2026-06-05 06:53:43,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:53:43,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:53:43,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:53:43,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:53:45,352.352 INFO    ] ================================================
[2026-06-05 06:53:45,368.368 INFO    ] Launching Daemon at Fri Jun  5 06:53:45 IST 2026
[2026-06-05 06:53:45,379.379 INFO    ] ================================================
[2026-06-05 06:53:45,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:53:45
[2026-06-05 06:53:46,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:53:46,801.801 INFO    ] Initializing speech engine...
[2026-06-05 06:53:46,811.811 INFO    ] 2026-06-05 06:53:46
[2026-06-05 06:53:47,057.057 INFO    ] 2026-06-05 06:53:47
[2026-06-05 06:53:47,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:53:47,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:53:47,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:53:47,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:53:47,438.438 INFO    ] time= 05/06/2026 06:53:47
[2026-06-05 06:53:47,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:53:47,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:53:47,608.608 INFO    ] No existing commands found in stream
[2026-06-05 06:53:52,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:53:52,640.640 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 06:53:54,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:53:54,823.823 INFO    ] Checking for system updates...
[2026-06-05 06:53:54,864.864 INFO    ] 200
[2026-06-05 06:53:54,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:54,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:53:54,935.935 INFO    ] No update needed
[2026-06-05 06:53:54,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 06:53:54,973.973 INFO    ] 200
[2026-06-05 06:53:54,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:53:55,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:53:55,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:53:55,072.072 INFO    ] No camera update needed
[2026-06-05 06:53:55,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:53:55,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:53:55,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:53:55,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:53:57,128.128 INFO    ] ================================================
[2026-06-05 06:53:57,144.144 INFO    ] Launching Daemon at Fri Jun  5 06:53:57 IST 2026
[2026-06-05 06:53:57,156.156 INFO    ] ================================================
[2026-06-05 06:53:57,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:53:57
[2026-06-05 06:53:58,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:53:58,636.636 INFO    ] Initializing speech engine...
[2026-06-05 06:53:58,652.652 INFO    ] 2026-06-05 06:53:58
[2026-06-05 06:53:58,936.936 INFO    ] 2026-06-05 06:53:58
[2026-06-05 06:53:58,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:53:59,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:53:59,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:53:59,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:53:59,335.335 INFO    ] time= 05/06/2026 06:53:59
[2026-06-05 06:53:59,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:53:59,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:53:59,392.392 INFO    ] No existing commands found in stream
[2026-06-05 06:54:04,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:54:04,405.405 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 06:54:09,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:54:09,213.213 INFO    ] Checking for system updates...
[2026-06-05 06:54:09,250.250 INFO    ] 200
[2026-06-05 06:54:09,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:09,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:09,310.310 INFO    ] No update needed
[2026-06-05 06:54:09,313.313 INFO    ] Checking for camera pi updates...
[2026-06-05 06:54:09,350.350 INFO    ] 200
[2026-06-05 06:54:09,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:09,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:54:09,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:09,448.448 INFO    ] No camera update needed
[2026-06-05 06:54:09,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:54:09,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:54:09,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:54:09,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:54:11,504.504 INFO    ] ================================================
[2026-06-05 06:54:11,519.519 INFO    ] Launching Daemon at Fri Jun  5 06:54:11 IST 2026
[2026-06-05 06:54:11,530.530 INFO    ] ================================================
[2026-06-05 06:54:12,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:54:12
[2026-06-05 06:54:12,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:54:12,962.962 INFO    ] Initializing speech engine...
[2026-06-05 06:54:12,972.972 INFO    ] 2026-06-05 06:54:12
[2026-06-05 06:54:13,219.219 INFO    ] 2026-06-05 06:54:13
[2026-06-05 06:54:13,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:54:13,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:54:13,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:54:13,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:54:13,652.652 INFO    ] time= 05/06/2026 06:54:13
[2026-06-05 06:54:13,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:54:13,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:54:13,830.830 INFO    ] No existing commands found in stream
[2026-06-05 06:54:18,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:54:18,844.844 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 06:54:22,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:54:22,584.584 INFO    ] Checking for system updates...
[2026-06-05 06:54:22,621.621 INFO    ] 200
[2026-06-05 06:54:22,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:22,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:22,678.678 INFO    ] No update needed
[2026-06-05 06:54:22,680.680 INFO    ] Checking for camera pi updates...
[2026-06-05 06:54:22,715.715 INFO    ] 200
[2026-06-05 06:54:22,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:22,758.758 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:54:22,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:22,805.805 INFO    ] No camera update needed
[2026-06-05 06:54:22,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:54:22,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:54:22,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:54:22,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:54:24,864.864 INFO    ] ================================================
[2026-06-05 06:54:24,880.880 INFO    ] Launching Daemon at Fri Jun  5 06:54:24 IST 2026
[2026-06-05 06:54:24,891.891 INFO    ] ================================================
[2026-06-05 06:54:25,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:54:25
[2026-06-05 06:54:26,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:54:26,306.306 INFO    ] Initializing speech engine...
[2026-06-05 06:54:26,315.315 INFO    ] 2026-06-05 06:54:26
[2026-06-05 06:54:26,562.562 INFO    ] 2026-06-05 06:54:26
[2026-06-05 06:54:26,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:54:26,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:54:26,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:54:26,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:54:27,035.035 INFO    ] time= 05/06/2026 06:54:26
[2026-06-05 06:54:27,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:54:27,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:54:27,176.176 INFO    ] No existing commands found in stream
[2026-06-05 06:54:32,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:54:32,191.191 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 06:54:32,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:54:32,771.771 INFO    ] Checking for system updates...
[2026-06-05 06:54:32,807.807 INFO    ] 200
[2026-06-05 06:54:32,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:32,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:32,864.864 INFO    ] No update needed
[2026-06-05 06:54:32,867.867 INFO    ] Checking for camera pi updates...
[2026-06-05 06:54:32,903.903 INFO    ] 200
[2026-06-05 06:54:32,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:32,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:54:32,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:32,975.975 INFO    ] No camera update needed
[2026-06-05 06:54:32,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:54:32,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:54:32,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:54:32,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:54:35,031.031 INFO    ] ================================================
[2026-06-05 06:54:35,046.046 INFO    ] Launching Daemon at Fri Jun  5 06:54:35 IST 2026
[2026-06-05 06:54:35,058.058 INFO    ] ================================================
[2026-06-05 06:54:35,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:54:35
[2026-06-05 06:54:36,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:54:36,509.509 INFO    ] Initializing speech engine...
[2026-06-05 06:54:36,519.519 INFO    ] 2026-06-05 06:54:36
[2026-06-05 06:54:36,767.767 INFO    ] 2026-06-05 06:54:36
[2026-06-05 06:54:36,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:54:36,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:54:36,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:54:37,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:54:37,135.135 INFO    ] time= 05/06/2026 06:54:37
[2026-06-05 06:54:37,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:54:37,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:54:37,305.305 INFO    ] No existing commands found in stream
[2026-06-05 06:54:42,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:54:42,338.338 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 06:54:43,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:54:43,152.152 INFO    ] Checking for system updates...
[2026-06-05 06:54:43,189.189 INFO    ] 200
[2026-06-05 06:54:43,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:43,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:43,251.251 INFO    ] No update needed
[2026-06-05 06:54:43,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 06:54:43,290.290 INFO    ] 200
[2026-06-05 06:54:43,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:43,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:54:43,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:43,382.382 INFO    ] No camera update needed
[2026-06-05 06:54:43,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:54:43,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:54:43,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:54:43,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:54:45,436.436 INFO    ] ================================================
[2026-06-05 06:54:45,452.452 INFO    ] Launching Daemon at Fri Jun  5 06:54:45 IST 2026
[2026-06-05 06:54:45,464.464 INFO    ] ================================================
[2026-06-05 06:54:46,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:54:46
[2026-06-05 06:54:46,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:54:46,870.870 INFO    ] Initializing speech engine...
[2026-06-05 06:54:46,894.894 INFO    ] 2026-06-05 06:54:46
[2026-06-05 06:54:47,167.167 INFO    ] 2026-06-05 06:54:47
[2026-06-05 06:54:47,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:54:47,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:54:47,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:54:47,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:54:47,519.519 INFO    ] time= 05/06/2026 06:54:47
[2026-06-05 06:54:47,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:54:47,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:54:47,630.630 INFO    ] No existing commands found in stream
[2026-06-05 06:54:52,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:54:52,646.646 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 06:54:56,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:54:56,287.287 INFO    ] Checking for system updates...
[2026-06-05 06:54:56,322.322 INFO    ] 200
[2026-06-05 06:54:56,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:56,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:56,381.381 INFO    ] No update needed
[2026-06-05 06:54:56,383.383 INFO    ] Checking for camera pi updates...
[2026-06-05 06:54:56,417.417 INFO    ] 200
[2026-06-05 06:54:56,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:54:56,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:54:56,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:54:56,508.508 INFO    ] No camera update needed
[2026-06-05 06:54:56,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:54:56,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:54:56,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:54:56,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:54:58,563.563 INFO    ] ================================================
[2026-06-05 06:54:58,578.578 INFO    ] Launching Daemon at Fri Jun  5 06:54:58 IST 2026
[2026-06-05 06:54:58,590.590 INFO    ] ================================================
[2026-06-05 06:54:59,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:54:59
[2026-06-05 06:54:59,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:55:00,135.135 INFO    ] Initializing speech engine...
[2026-06-05 06:55:00,158.158 INFO    ] 2026-06-05 06:55:00
[2026-06-05 06:55:00,423.423 INFO    ] 2026-06-05 06:55:00
[2026-06-05 06:55:00,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:55:00,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:55:00,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:55:00,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:55:00,907.907 INFO    ] time= 05/06/2026 06:55:00
[2026-06-05 06:55:00,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:55:00,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:55:01,106.106 INFO    ] No existing commands found in stream
[2026-06-05 06:55:06,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:55:06,134.134 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 06:55:09,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:55:09,593.593 INFO    ] Checking for system updates...
[2026-06-05 06:55:09,629.629 INFO    ] 200
[2026-06-05 06:55:09,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:09,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:55:09,694.694 INFO    ] No update needed
[2026-06-05 06:55:09,696.696 INFO    ] Checking for camera pi updates...
[2026-06-05 06:55:09,734.734 INFO    ] 200
[2026-06-05 06:55:09,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:09,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:55:09,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:55:09,838.838 INFO    ] No camera update needed
[2026-06-05 06:55:09,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:55:09,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:55:09,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:55:09,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:55:11,894.894 INFO    ] ================================================
[2026-06-05 06:55:11,910.910 INFO    ] Launching Daemon at Fri Jun  5 06:55:11 IST 2026
[2026-06-05 06:55:11,921.921 INFO    ] ================================================
[2026-06-05 06:55:12,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:55:12
[2026-06-05 06:55:13,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:55:13,408.408 INFO    ] Initializing speech engine...
[2026-06-05 06:55:13,418.418 INFO    ] 2026-06-05 06:55:13
[2026-06-05 06:55:13,668.668 INFO    ] 2026-06-05 06:55:13
[2026-06-05 06:55:13,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:55:13,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:55:13,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:55:14,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:55:14,148.148 INFO    ] time= 05/06/2026 06:55:14
[2026-06-05 06:55:14,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:55:14,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:55:14,309.309 INFO    ] No existing commands found in stream
[2026-06-05 06:55:19,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:55:19,322.322 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 06:55:20,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:55:20,038.038 INFO    ] Checking for system updates...
[2026-06-05 06:55:20,077.077 INFO    ] 200
[2026-06-05 06:55:20,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:20,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:55:20,142.142 INFO    ] No update needed
[2026-06-05 06:55:20,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 06:55:20,177.177 INFO    ] 200
[2026-06-05 06:55:20,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:20,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:55:20,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:55:20,274.274 INFO    ] No camera update needed
[2026-06-05 06:55:20,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:55:20,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:55:20,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:55:20,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:55:22,329.329 INFO    ] ================================================
[2026-06-05 06:55:22,344.344 INFO    ] Launching Daemon at Fri Jun  5 06:55:22 IST 2026
[2026-06-05 06:55:22,356.356 INFO    ] ================================================
[2026-06-05 06:55:22,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:55:22
[2026-06-05 06:55:23,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:55:23,789.789 INFO    ] Initializing speech engine...
[2026-06-05 06:55:23,796.796 INFO    ] 2026-06-05 06:55:23
[2026-06-05 06:55:24,044.044 INFO    ] 2026-06-05 06:55:24
[2026-06-05 06:55:24,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:55:24,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:55:24,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:55:24,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:55:24,506.506 INFO    ] time= 05/06/2026 06:55:24
[2026-06-05 06:55:24,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:55:24,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:55:24,682.682 INFO    ] No existing commands found in stream
[2026-06-05 06:55:29,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:55:29,699.699 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 06:55:31,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:55:31,139.139 INFO    ] Checking for system updates...
[2026-06-05 06:55:31,176.176 INFO    ] 200
[2026-06-05 06:55:31,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:31,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:55:31,234.234 INFO    ] No update needed
[2026-06-05 06:55:31,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 06:55:31,271.271 INFO    ] 200
[2026-06-05 06:55:31,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:31,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:55:31,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:55:31,369.369 INFO    ] No camera update needed
[2026-06-05 06:55:31,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:55:31,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:55:31,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:55:31,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:55:33,433.433 INFO    ] ================================================
[2026-06-05 06:55:33,448.448 INFO    ] Launching Daemon at Fri Jun  5 06:55:33 IST 2026
[2026-06-05 06:55:33,459.459 INFO    ] ================================================
[2026-06-05 06:55:34,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:55:34
[2026-06-05 06:55:34,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:55:34,910.910 INFO    ] Initializing speech engine...
[2026-06-05 06:55:34,926.926 INFO    ] 2026-06-05 06:55:34
[2026-06-05 06:55:35,182.182 INFO    ] 2026-06-05 06:55:35
[2026-06-05 06:55:35,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:55:35,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:55:35,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:55:35,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:55:35,657.657 INFO    ] time= 05/06/2026 06:55:35
[2026-06-05 06:55:35,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:55:35,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:55:35,810.810 INFO    ] No existing commands found in stream
[2026-06-05 06:55:40,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:55:40,838.838 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 06:55:42,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:55:42,362.362 INFO    ] Checking for system updates...
[2026-06-05 06:55:42,409.409 INFO    ] 200
[2026-06-05 06:55:42,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:42,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:55:42,474.474 INFO    ] No update needed
[2026-06-05 06:55:42,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 06:55:42,520.520 INFO    ] 200
[2026-06-05 06:55:42,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:42,579.579 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:55:42,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:55:42,626.626 INFO    ] No camera update needed
[2026-06-05 06:55:42,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:55:42,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:55:42,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:55:42,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:55:44,681.681 INFO    ] ================================================
[2026-06-05 06:55:44,696.696 INFO    ] Launching Daemon at Fri Jun  5 06:55:44 IST 2026
[2026-06-05 06:55:44,708.708 INFO    ] ================================================
[2026-06-05 06:55:45,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:55:45
[2026-06-05 06:55:45,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:55:46,130.130 INFO    ] Initializing speech engine...
[2026-06-05 06:55:46,139.139 INFO    ] 2026-06-05 06:55:46
[2026-06-05 06:55:46,383.383 INFO    ] 2026-06-05 06:55:46
[2026-06-05 06:55:46,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:55:46,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:55:46,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:55:46,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:55:46,848.848 INFO    ] time= 05/06/2026 06:55:46
[2026-06-05 06:55:46,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:55:46,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:55:47,007.007 INFO    ] No existing commands found in stream
[2026-06-05 06:55:52,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:55:52,037.037 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 06:55:53,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:55:54,000.000 INFO    ] Checking for system updates...
[2026-06-05 06:55:54,036.036 INFO    ] 200
[2026-06-05 06:55:54,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:54,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:55:54,101.101 INFO    ] No update needed
[2026-06-05 06:55:54,103.103 INFO    ] Checking for camera pi updates...
[2026-06-05 06:55:54,142.142 INFO    ] 200
[2026-06-05 06:55:54,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:55:54,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:55:54,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:55:54,334.334 INFO    ] No camera update needed
[2026-06-05 06:55:54,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:55:54,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:55:54,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:55:54,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:55:56,391.391 INFO    ] ================================================
[2026-06-05 06:55:56,407.407 INFO    ] Launching Daemon at Fri Jun  5 06:55:56 IST 2026
[2026-06-05 06:55:56,419.419 INFO    ] ================================================
[2026-06-05 06:55:56,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:55:56
[2026-06-05 06:55:57,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:55:57,822.822 INFO    ] Initializing speech engine...
[2026-06-05 06:55:57,845.845 INFO    ] 2026-06-05 06:55:57
[2026-06-05 06:55:58,101.101 INFO    ] 2026-06-05 06:55:58
[2026-06-05 06:55:58,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:55:58,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:55:58,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:55:58,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:55:58,590.590 INFO    ] time= 05/06/2026 06:55:58
[2026-06-05 06:55:58,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:55:58,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:55:58,738.738 INFO    ] No existing commands found in stream
[2026-06-05 06:56:03,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:56:03,772.772 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 06:56:04,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:56:04,473.473 INFO    ] Checking for system updates...
[2026-06-05 06:56:04,511.511 INFO    ] 200
[2026-06-05 06:56:04,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:04,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:56:04,571.571 INFO    ] No update needed
[2026-06-05 06:56:04,573.573 INFO    ] Checking for camera pi updates...
[2026-06-05 06:56:04,608.608 INFO    ] 200
[2026-06-05 06:56:04,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:04,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:56:04,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:56:04,687.687 INFO    ] No camera update needed
[2026-06-05 06:56:04,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:56:04,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:56:04,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:56:04,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:56:06,747.747 INFO    ] ================================================
[2026-06-05 06:56:06,763.763 INFO    ] Launching Daemon at Fri Jun  5 06:56:06 IST 2026
[2026-06-05 06:56:06,774.774 INFO    ] ================================================
[2026-06-05 06:56:07,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:56:07
[2026-06-05 06:56:07,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:56:08,190.190 INFO    ] Initializing speech engine...
[2026-06-05 06:56:08,213.213 INFO    ] 2026-06-05 06:56:08
[2026-06-05 06:56:08,487.487 INFO    ] 2026-06-05 06:56:08
[2026-06-05 06:56:08,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:56:08,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:56:08,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:56:08,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:56:08,883.883 INFO    ] time= 05/06/2026 06:56:08
[2026-06-05 06:56:08,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:56:08,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:56:09,013.013 INFO    ] No existing commands found in stream
[2026-06-05 06:56:14,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:56:14,026.026 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 06:56:18,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:56:18,246.246 INFO    ] Checking for system updates...
[2026-06-05 06:56:18,282.282 INFO    ] 200
[2026-06-05 06:56:18,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:18,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:56:18,349.349 INFO    ] No update needed
[2026-06-05 06:56:18,351.351 INFO    ] Checking for camera pi updates...
[2026-06-05 06:56:18,386.386 INFO    ] 200
[2026-06-05 06:56:18,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:18,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:56:18,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:56:18,489.489 INFO    ] No camera update needed
[2026-06-05 06:56:18,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:56:18,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:56:18,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:56:18,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:56:20,544.544 INFO    ] ================================================
[2026-06-05 06:56:20,560.560 INFO    ] Launching Daemon at Fri Jun  5 06:56:20 IST 2026
[2026-06-05 06:56:20,572.572 INFO    ] ================================================
[2026-06-05 06:56:21,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:56:21
[2026-06-05 06:56:21,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:56:22,192.192 INFO    ] Initializing speech engine...
[2026-06-05 06:56:22,204.204 INFO    ] 2026-06-05 06:56:22
[2026-06-05 06:56:22,493.493 INFO    ] 2026-06-05 06:56:22
[2026-06-05 06:56:22,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:56:22,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:56:23,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:56:23,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:56:23,489.489 INFO    ] time= 05/06/2026 06:56:23
[2026-06-05 06:56:23,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:56:23,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:56:23,606.606 INFO    ] No existing commands found in stream
[2026-06-05 06:56:28,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:56:28,640.640 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 06:56:32,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:56:32,373.373 INFO    ] Checking for system updates...
[2026-06-05 06:56:32,413.413 INFO    ] 200
[2026-06-05 06:56:32,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:32,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:56:32,479.479 INFO    ] No update needed
[2026-06-05 06:56:32,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 06:56:32,526.526 INFO    ] 200
[2026-06-05 06:56:32,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:32,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:56:32,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:56:32,630.630 INFO    ] No camera update needed
[2026-06-05 06:56:32,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:56:32,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:56:32,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:56:32,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:56:34,704.704 INFO    ] ================================================
[2026-06-05 06:56:34,720.720 INFO    ] Launching Daemon at Fri Jun  5 06:56:34 IST 2026
[2026-06-05 06:56:34,732.732 INFO    ] ================================================
[2026-06-05 06:56:35,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:56:35
[2026-06-05 06:56:35,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:56:36,202.202 INFO    ] Initializing speech engine...
[2026-06-05 06:56:36,210.210 INFO    ] 2026-06-05 06:56:36
[2026-06-05 06:56:36,470.470 INFO    ] 2026-06-05 06:56:36
[2026-06-05 06:56:36,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:56:36,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:56:36,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:56:36,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:56:36,967.967 INFO    ] time= 05/06/2026 06:56:36
[2026-06-05 06:56:37,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:56:37,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:56:37,158.158 INFO    ] No existing commands found in stream
[2026-06-05 06:56:42,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:56:42,185.185 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 06:56:45,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:56:45,872.872 INFO    ] Checking for system updates...
[2026-06-05 06:56:45,907.907 INFO    ] 200
[2026-06-05 06:56:45,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:45,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:56:45,967.967 INFO    ] No update needed
[2026-06-05 06:56:45,974.974 INFO    ] Checking for camera pi updates...
[2026-06-05 06:56:46,008.008 INFO    ] 200
[2026-06-05 06:56:46,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:46,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:56:46,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:56:46,111.111 INFO    ] No camera update needed
[2026-06-05 06:56:46,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:56:46,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:56:46,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:56:46,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:56:48,170.170 INFO    ] ================================================
[2026-06-05 06:56:48,186.186 INFO    ] Launching Daemon at Fri Jun  5 06:56:48 IST 2026
[2026-06-05 06:56:48,198.198 INFO    ] ================================================
[2026-06-05 06:56:48,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:56:48
[2026-06-05 06:56:49,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:56:49,675.675 INFO    ] Initializing speech engine...
[2026-06-05 06:56:49,683.683 INFO    ] 2026-06-05 06:56:49
[2026-06-05 06:56:49,956.956 INFO    ] 2026-06-05 06:56:49
[2026-06-05 06:56:49,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:56:50,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:56:50,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:56:50,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:56:50,487.487 INFO    ] time= 05/06/2026 06:56:50
[2026-06-05 06:56:50,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:56:50,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:56:50,621.621 INFO    ] No existing commands found in stream
[2026-06-05 06:56:55,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:56:55,651.651 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 06:56:56,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:56:56,630.630 INFO    ] Checking for system updates...
[2026-06-05 06:56:56,667.667 INFO    ] 200
[2026-06-05 06:56:56,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:56,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:56:56,728.728 INFO    ] No update needed
[2026-06-05 06:56:56,731.731 INFO    ] Checking for camera pi updates...
[2026-06-05 06:56:56,771.771 INFO    ] 200
[2026-06-05 06:56:56,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:56:56,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:56:56,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:56:56,872.872 INFO    ] No camera update needed
[2026-06-05 06:56:56,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:56:56,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:56:56,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:56:56,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:56:58,932.932 INFO    ] ================================================
[2026-06-05 06:56:58,948.948 INFO    ] Launching Daemon at Fri Jun  5 06:56:58 IST 2026
[2026-06-05 06:56:58,959.959 INFO    ] ================================================
[2026-06-05 06:56:59,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:56:59
[2026-06-05 06:57:00,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:57:00,385.385 INFO    ] Initializing speech engine...
[2026-06-05 06:57:00,394.394 INFO    ] 2026-06-05 06:57:00
[2026-06-05 06:57:00,641.641 INFO    ] 2026-06-05 06:57:00
[2026-06-05 06:57:00,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:57:00,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:57:00,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:57:01,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:57:01,118.118 INFO    ] time= 05/06/2026 06:57:01
[2026-06-05 06:57:01,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:57:01,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:57:01,301.301 INFO    ] No existing commands found in stream
[2026-06-05 06:57:06,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:57:06,334.334 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 06:57:08,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:57:08,122.122 INFO    ] Checking for system updates...
[2026-06-05 06:57:08,159.159 INFO    ] 200
[2026-06-05 06:57:08,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:08,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:57:08,227.227 INFO    ] No update needed
[2026-06-05 06:57:08,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 06:57:08,264.264 INFO    ] 200
[2026-06-05 06:57:08,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:08,308.308 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:57:08,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:57:08,352.352 INFO    ] No camera update needed
[2026-06-05 06:57:08,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:57:08,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:57:08,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:57:08,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:57:10,448.448 INFO    ] ================================================
[2026-06-05 06:57:10,465.465 INFO    ] Launching Daemon at Fri Jun  5 06:57:10 IST 2026
[2026-06-05 06:57:10,476.476 INFO    ] ================================================
[2026-06-05 06:57:11,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:57:11
[2026-06-05 06:57:11,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:57:12,159.159 INFO    ] Initializing speech engine...
[2026-06-05 06:57:12,172.172 INFO    ] 2026-06-05 06:57:12
[2026-06-05 06:57:12,460.460 INFO    ] 2026-06-05 06:57:12
[2026-06-05 06:57:12,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:57:12,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:57:12,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:57:12,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:57:12,997.997 INFO    ] time= 05/06/2026 06:57:12
[2026-06-05 06:57:13,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:57:13,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:57:13,140.140 INFO    ] No existing commands found in stream
[2026-06-05 06:57:18,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:57:18,169.169 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 06:57:20,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 06:57:20,106.106 INFO    ] Checking for system updates...
[2026-06-05 06:57:20,145.145 INFO    ] 200
[2026-06-05 06:57:20,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:20,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:57:20,205.205 INFO    ] No update needed
[2026-06-05 06:57:20,208.208 INFO    ] Checking for camera pi updates...
[2026-06-05 06:57:20,248.248 INFO    ] 200
[2026-06-05 06:57:20,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:20,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:57:20,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:57:20,343.343 INFO    ] No camera update needed
[2026-06-05 06:57:20,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:57:20,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:57:20,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:57:20,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:57:22,399.399 INFO    ] ================================================
[2026-06-05 06:57:22,414.414 INFO    ] Launching Daemon at Fri Jun  5 06:57:22 IST 2026
[2026-06-05 06:57:22,425.425 INFO    ] ================================================
[2026-06-05 06:57:23,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:57:23
[2026-06-05 06:57:23,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:57:23,935.935 INFO    ] Initializing speech engine...
[2026-06-05 06:57:23,945.945 INFO    ] 2026-06-05 06:57:23
[2026-06-05 06:57:24,193.193 INFO    ] 2026-06-05 06:57:24
[2026-06-05 06:57:24,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:57:24,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:57:24,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:57:24,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:57:24,678.678 INFO    ] time= 05/06/2026 06:57:24
[2026-06-05 06:57:24,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:57:24,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:57:24,878.878 INFO    ] No existing commands found in stream
[2026-06-05 06:57:29,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:57:29,908.908 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 06:57:33,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:57:33,068.068 INFO    ] Checking for system updates...
[2026-06-05 06:57:33,104.104 INFO    ] 200
[2026-06-05 06:57:33,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:33,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:57:33,163.163 INFO    ] No update needed
[2026-06-05 06:57:33,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 06:57:33,200.200 INFO    ] 200
[2026-06-05 06:57:33,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:33,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:57:33,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:57:33,281.281 INFO    ] No camera update needed
[2026-06-05 06:57:33,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:57:33,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:57:33,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:57:33,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:57:35,339.339 INFO    ] ================================================
[2026-06-05 06:57:35,356.356 INFO    ] Launching Daemon at Fri Jun  5 06:57:35 IST 2026
[2026-06-05 06:57:35,367.367 INFO    ] ================================================
[2026-06-05 06:57:35,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:57:35
[2026-06-05 06:57:36,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:57:36,830.830 INFO    ] Initializing speech engine...
[2026-06-05 06:57:36,839.839 INFO    ] 2026-06-05 06:57:36
[2026-06-05 06:57:37,100.100 INFO    ] 2026-06-05 06:57:37
[2026-06-05 06:57:37,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:57:37,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:57:37,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:57:37,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:57:37,584.584 INFO    ] time= 05/06/2026 06:57:37
[2026-06-05 06:57:37,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:57:37,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:57:37,778.778 INFO    ] No existing commands found in stream
[2026-06-05 06:57:42,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:57:42,808.808 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 06:57:44,729.729 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:57:44,732.732 INFO    ] Checking for system updates...
[2026-06-05 06:57:44,769.769 INFO    ] 200
[2026-06-05 06:57:44,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:44,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:57:44,836.836 INFO    ] No update needed
[2026-06-05 06:57:44,838.838 INFO    ] Checking for camera pi updates...
[2026-06-05 06:57:44,877.877 INFO    ] 200
[2026-06-05 06:57:44,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:44,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:57:44,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:57:44,979.979 INFO    ] No camera update needed
[2026-06-05 06:57:44,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:57:44,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:57:44,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:57:44,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:57:47,035.035 INFO    ] ================================================
[2026-06-05 06:57:47,051.051 INFO    ] Launching Daemon at Fri Jun  5 06:57:47 IST 2026
[2026-06-05 06:57:47,063.063 INFO    ] ================================================
[2026-06-05 06:57:47,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:57:47
[2026-06-05 06:57:48,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:57:48,490.490 INFO    ] Initializing speech engine...
[2026-06-05 06:57:48,505.505 INFO    ] 2026-06-05 06:57:48
[2026-06-05 06:57:48,800.800 INFO    ] 2026-06-05 06:57:48
[2026-06-05 06:57:48,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:57:49,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:57:49,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:57:49,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:57:49,316.316 INFO    ] time= 05/06/2026 06:57:49
[2026-06-05 06:57:49,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:57:49,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:57:49,460.460 INFO    ] No existing commands found in stream
[2026-06-05 06:57:54,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:57:54,502.502 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 06:57:56,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 06:57:56,627.627 INFO    ] Checking for system updates...
[2026-06-05 06:57:56,664.664 INFO    ] 200
[2026-06-05 06:57:56,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:56,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:57:56,725.725 INFO    ] No update needed
[2026-06-05 06:57:56,728.728 INFO    ] Checking for camera pi updates...
[2026-06-05 06:57:56,768.768 INFO    ] 200
[2026-06-05 06:57:56,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:57:56,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:57:56,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:57:56,977.977 INFO    ] No camera update needed
[2026-06-05 06:57:56,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:57:56,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:57:56,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:57:56,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:57:59,038.038 INFO    ] ================================================
[2026-06-05 06:57:59,054.054 INFO    ] Launching Daemon at Fri Jun  5 06:57:59 IST 2026
[2026-06-05 06:57:59,065.065 INFO    ] ================================================
[2026-06-05 06:57:59,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:57:59
[2026-06-05 06:58:00,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:58:00,752.752 INFO    ] Initializing speech engine...
[2026-06-05 06:58:00,766.766 INFO    ] 2026-06-05 06:58:00
[2026-06-05 06:58:01,063.063 INFO    ] 2026-06-05 06:58:01
[2026-06-05 06:58:01,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:58:01,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:58:01,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:58:01,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:58:01,461.461 INFO    ] time= 05/06/2026 06:58:01
[2026-06-05 06:58:01,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:58:01,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:58:01,524.524 INFO    ] No existing commands found in stream
[2026-06-05 06:58:06,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:58:06,538.538 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 06:58:10,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:58:10,487.487 INFO    ] Checking for system updates...
[2026-06-05 06:58:10,524.524 INFO    ] 200
[2026-06-05 06:58:10,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:10,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:58:10,592.592 INFO    ] No update needed
[2026-06-05 06:58:10,595.595 INFO    ] Checking for camera pi updates...
[2026-06-05 06:58:10,634.634 INFO    ] 200
[2026-06-05 06:58:10,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:10,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:58:10,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:58:10,737.737 INFO    ] No camera update needed
[2026-06-05 06:58:10,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:58:10,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:58:10,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:58:10,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:58:12,796.796 INFO    ] ================================================
[2026-06-05 06:58:12,812.812 INFO    ] Launching Daemon at Fri Jun  5 06:58:12 IST 2026
[2026-06-05 06:58:12,824.824 INFO    ] ================================================
[2026-06-05 06:58:13,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:58:13
[2026-06-05 06:58:14,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:58:14,275.275 INFO    ] Initializing speech engine...
[2026-06-05 06:58:14,284.284 INFO    ] 2026-06-05 06:58:14
[2026-06-05 06:58:14,534.534 INFO    ] 2026-06-05 06:58:14
[2026-06-05 06:58:14,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:58:14,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:58:14,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:58:14,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:58:14,904.904 INFO    ] time= 05/06/2026 06:58:14
[2026-06-05 06:58:14,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:58:14,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:58:15,087.087 INFO    ] No existing commands found in stream
[2026-06-05 06:58:20,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:58:20,113.113 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 06:58:23,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:58:23,126.126 INFO    ] Checking for system updates...
[2026-06-05 06:58:23,166.166 INFO    ] 200
[2026-06-05 06:58:23,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:23,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:58:23,232.232 INFO    ] No update needed
[2026-06-05 06:58:23,234.234 INFO    ] Checking for camera pi updates...
[2026-06-05 06:58:23,272.272 INFO    ] 200
[2026-06-05 06:58:23,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:23,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:58:23,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:58:23,368.368 INFO    ] No camera update needed
[2026-06-05 06:58:23,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:58:23,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:58:23,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:58:23,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:58:25,425.425 INFO    ] ================================================
[2026-06-05 06:58:25,440.440 INFO    ] Launching Daemon at Fri Jun  5 06:58:25 IST 2026
[2026-06-05 06:58:25,451.451 INFO    ] ================================================
[2026-06-05 06:58:26,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:58:26
[2026-06-05 06:58:26,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:58:27,105.105 INFO    ] Initializing speech engine...
[2026-06-05 06:58:27,110.110 INFO    ] 2026-06-05 06:58:27
[2026-06-05 06:58:27,419.419 INFO    ] 2026-06-05 06:58:27
[2026-06-05 06:58:27,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:58:27,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:58:27,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:58:27,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:58:27,929.929 INFO    ] time= 05/06/2026 06:58:27
[2026-06-05 06:58:27,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:58:27,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:58:28,080.080 INFO    ] No existing commands found in stream
[2026-06-05 06:58:33,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:58:33,098.098 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 06:58:35,915.915 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:58:35,918.918 INFO    ] Checking for system updates...
[2026-06-05 06:58:35,960.960 INFO    ] 200
[2026-06-05 06:58:35,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:36,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:58:36,020.020 INFO    ] No update needed
[2026-06-05 06:58:36,023.023 INFO    ] Checking for camera pi updates...
[2026-06-05 06:58:36,058.058 INFO    ] 200
[2026-06-05 06:58:36,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:36,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:58:36,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:58:36,153.153 INFO    ] No camera update needed
[2026-06-05 06:58:36,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:58:36,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:58:36,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:58:36,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:58:38,213.213 INFO    ] ================================================
[2026-06-05 06:58:38,229.229 INFO    ] Launching Daemon at Fri Jun  5 06:58:38 IST 2026
[2026-06-05 06:58:38,241.241 INFO    ] ================================================
[2026-06-05 06:58:38,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:58:38
[2026-06-05 06:58:39,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:58:39,643.643 INFO    ] Initializing speech engine...
[2026-06-05 06:58:39,650.650 INFO    ] 2026-06-05 06:58:39
[2026-06-05 06:58:39,924.924 INFO    ] 2026-06-05 06:58:39
[2026-06-05 06:58:39,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:58:40,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:58:40,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:58:40,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:58:40,391.391 INFO    ] time= 05/06/2026 06:58:40
[2026-06-05 06:58:40,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:58:40,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:58:40,563.563 INFO    ] No existing commands found in stream
[2026-06-05 06:58:45,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:58:45,586.586 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 06:58:46,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 06:58:46,098.098 INFO    ] Checking for system updates...
[2026-06-05 06:58:46,135.135 INFO    ] 200
[2026-06-05 06:58:46,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:46,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:58:46,196.196 INFO    ] No update needed
[2026-06-05 06:58:46,199.199 INFO    ] Checking for camera pi updates...
[2026-06-05 06:58:46,233.233 INFO    ] 200
[2026-06-05 06:58:46,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:46,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:58:46,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:58:46,321.321 INFO    ] No camera update needed
[2026-06-05 06:58:46,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:58:46,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:58:46,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:58:46,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:58:48,377.377 INFO    ] ================================================
[2026-06-05 06:58:48,392.392 INFO    ] Launching Daemon at Fri Jun  5 06:58:48 IST 2026
[2026-06-05 06:58:48,402.402 INFO    ] ================================================
[2026-06-05 06:58:48,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:58:48
[2026-06-05 06:58:49,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:58:49,861.861 INFO    ] Initializing speech engine...
[2026-06-05 06:58:49,867.867 INFO    ] 2026-06-05 06:58:49
[2026-06-05 06:58:50,131.131 INFO    ] 2026-06-05 06:58:50
[2026-06-05 06:58:50,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:58:50,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:58:50,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:58:50,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:58:50,630.630 INFO    ] time= 05/06/2026 06:58:50
[2026-06-05 06:58:50,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:58:50,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:58:50,812.812 INFO    ] No existing commands found in stream
[2026-06-05 06:58:55,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:58:55,837.837 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 06:58:56,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:58:56,750.750 INFO    ] Checking for system updates...
[2026-06-05 06:58:56,790.790 INFO    ] 200
[2026-06-05 06:58:56,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:56,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:58:56,856.856 INFO    ] No update needed
[2026-06-05 06:58:56,858.858 INFO    ] Checking for camera pi updates...
[2026-06-05 06:58:56,896.896 INFO    ] 200
[2026-06-05 06:58:56,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:58:56,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:58:56,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:58:56,985.985 INFO    ] No camera update needed
[2026-06-05 06:58:56,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:58:56,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:58:56,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:58:57,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:58:59,042.042 INFO    ] ================================================
[2026-06-05 06:58:59,057.057 INFO    ] Launching Daemon at Fri Jun  5 06:58:59 IST 2026
[2026-06-05 06:58:59,068.068 INFO    ] ================================================
[2026-06-05 06:58:59,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:58:59
[2026-06-05 06:59:00,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:59:00,495.495 INFO    ] Initializing speech engine...
[2026-06-05 06:59:00,514.514 INFO    ] 2026-06-05 06:59:00
[2026-06-05 06:59:00,785.785 INFO    ] 2026-06-05 06:59:00
[2026-06-05 06:59:00,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:59:01,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:59:01,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:59:01,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:59:01,199.199 INFO    ] time= 05/06/2026 06:59:01
[2026-06-05 06:59:01,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:59:01,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:59:01,299.299 INFO    ] No existing commands found in stream
[2026-06-05 06:59:06,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:59:06,312.312 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 06:59:09,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 06:59:09,271.271 INFO    ] Checking for system updates...
[2026-06-05 06:59:09,311.311 INFO    ] 200
[2026-06-05 06:59:09,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:09,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:59:09,369.369 INFO    ] No update needed
[2026-06-05 06:59:09,371.371 INFO    ] Checking for camera pi updates...
[2026-06-05 06:59:09,405.405 INFO    ] 200
[2026-06-05 06:59:09,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:09,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:59:09,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:59:09,489.489 INFO    ] No camera update needed
[2026-06-05 06:59:09,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:59:09,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:59:09,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:59:09,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:59:11,546.546 INFO    ] ================================================
[2026-06-05 06:59:11,561.561 INFO    ] Launching Daemon at Fri Jun  5 06:59:11 IST 2026
[2026-06-05 06:59:11,572.572 INFO    ] ================================================
[2026-06-05 06:59:12,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:59:12
[2026-06-05 06:59:12,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:59:13,100.100 INFO    ] Initializing speech engine...
[2026-06-05 06:59:13,113.113 INFO    ] 2026-06-05 06:59:13
[2026-06-05 06:59:13,380.380 INFO    ] 2026-06-05 06:59:13
[2026-06-05 06:59:13,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:59:13,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:59:13,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:59:13,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:59:13,879.879 INFO    ] time= 05/06/2026 06:59:13
[2026-06-05 06:59:13,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:59:13,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:59:14,079.079 INFO    ] No existing commands found in stream
[2026-06-05 06:59:19,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:59:19,113.113 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 06:59:20,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 06:59:20,841.841 INFO    ] Checking for system updates...
[2026-06-05 06:59:20,878.878 INFO    ] 200
[2026-06-05 06:59:20,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:20,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:59:20,942.942 INFO    ] No update needed
[2026-06-05 06:59:20,945.945 INFO    ] Checking for camera pi updates...
[2026-06-05 06:59:20,980.980 INFO    ] 200
[2026-06-05 06:59:20,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:21,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:59:21,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:59:21,081.081 INFO    ] No camera update needed
[2026-06-05 06:59:21,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:59:21,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:59:21,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:59:21,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:59:23,139.139 INFO    ] ================================================
[2026-06-05 06:59:23,154.154 INFO    ] Launching Daemon at Fri Jun  5 06:59:23 IST 2026
[2026-06-05 06:59:23,165.165 INFO    ] ================================================
[2026-06-05 06:59:23,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:59:23
[2026-06-05 06:59:24,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:59:24,749.749 INFO    ] Initializing speech engine...
[2026-06-05 06:59:24,754.754 INFO    ] 2026-06-05 06:59:24
[2026-06-05 06:59:25,028.028 INFO    ] 2026-06-05 06:59:25
[2026-06-05 06:59:25,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:59:25,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:59:25,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:59:25,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:59:25,522.522 INFO    ] time= 05/06/2026 06:59:25
[2026-06-05 06:59:25,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:59:25,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:59:25,733.733 INFO    ] No existing commands found in stream
[2026-06-05 06:59:30,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:59:30,759.759 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 06:59:36,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:59:36,265.265 INFO    ] Checking for system updates...
[2026-06-05 06:59:36,305.305 INFO    ] 200
[2026-06-05 06:59:36,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:36,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:59:36,369.369 INFO    ] No update needed
[2026-06-05 06:59:36,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 06:59:36,406.406 INFO    ] 200
[2026-06-05 06:59:36,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:36,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:59:36,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:59:36,507.507 INFO    ] No camera update needed
[2026-06-05 06:59:36,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:59:36,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:59:36,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:59:36,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:59:38,569.569 INFO    ] ================================================
[2026-06-05 06:59:38,584.584 INFO    ] Launching Daemon at Fri Jun  5 06:59:38 IST 2026
[2026-06-05 06:59:38,595.595 INFO    ] ================================================
[2026-06-05 06:59:39,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:59:39
[2026-06-05 06:59:39,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:59:40,027.027 INFO    ] Initializing speech engine...
[2026-06-05 06:59:40,036.036 INFO    ] 2026-06-05 06:59:40
[2026-06-05 06:59:40,323.323 INFO    ] 2026-06-05 06:59:40
[2026-06-05 06:59:40,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:59:40,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:59:40,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:59:40,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:59:40,694.694 INFO    ] time= 05/06/2026 06:59:40
[2026-06-05 06:59:40,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:59:40,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:59:40,818.818 INFO    ] No existing commands found in stream
[2026-06-05 06:59:45,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:59:45,837.837 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 06:59:46,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:59:46,947.947 INFO    ] Checking for system updates...
[2026-06-05 06:59:46,985.985 INFO    ] 200
[2026-06-05 06:59:46,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:47,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:59:47,050.050 INFO    ] No update needed
[2026-06-05 06:59:47,052.052 INFO    ] Checking for camera pi updates...
[2026-06-05 06:59:47,087.087 INFO    ] 200
[2026-06-05 06:59:47,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:47,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:59:47,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 06:59:47,184.184 INFO    ] No camera update needed
[2026-06-05 06:59:47,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:59:47,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:59:47,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:59:47,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:59:49,242.242 INFO    ] ================================================
[2026-06-05 06:59:49,257.257 INFO    ] Launching Daemon at Fri Jun  5 06:59:49 IST 2026
[2026-06-05 06:59:49,268.268 INFO    ] ================================================
[2026-06-05 06:59:49,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 06:59:49
[2026-06-05 06:59:50,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 06:59:50,705.705 INFO    ] Initializing speech engine...
[2026-06-05 06:59:50,715.715 INFO    ] 2026-06-05 06:59:50
[2026-06-05 06:59:50,977.977 INFO    ] 2026-06-05 06:59:50
[2026-06-05 06:59:51,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 06:59:51,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 06:59:51,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 06:59:51,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 06:59:51,386.386 INFO    ] time= 05/06/2026 06:59:51
[2026-06-05 06:59:51,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 06:59:51,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-05 06:59:51,562.562 INFO    ] No existing commands found in stream
[2026-06-05 06:59:56,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 06:59:56,595.595 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 06:59:57,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 06:59:57,455.455 INFO    ] Checking for system updates...
[2026-06-05 06:59:57,490.490 INFO    ] 200
[2026-06-05 06:59:57,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:57,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:59:57,549.549 INFO    ] No update needed
[2026-06-05 06:59:57,551.551 INFO    ] Checking for camera pi updates...
[2026-06-05 06:59:57,584.584 INFO    ] 200
[2026-06-05 06:59:57,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 06:59:57,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 06:59:57,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 06:59:57,674.674 INFO    ] No camera update needed
[2026-06-05 06:59:57,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 06:59:57,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 06:59:57,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 06:59:57,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 06:59:59,729.729 INFO    ] ================================================
[2026-06-05 06:59:59,744.744 INFO    ] Launching Daemon at Fri Jun  5 06:59:59 IST 2026
[2026-06-05 06:59:59,755.755 INFO    ] ================================================
[2026-06-05 07:00:00,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:00:00
[2026-06-05 07:00:00,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:00:01,341.341 INFO    ] Initializing speech engine...
[2026-06-05 07:00:01,351.351 INFO    ] 2026-06-05 07:00:01
[2026-06-05 07:00:02,574.574 INFO    ] 2026-06-05 07:00:02
[2026-06-05 07:00:02,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:00:03,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:00:03,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:00:03,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:00:03,655.655 INFO    ] time= 05/06/2026 07:00:03
[2026-06-05 07:00:03,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:00:03,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:00:03,793.793 INFO    ] No existing commands found in stream
[2026-06-05 07:00:08,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:00:08,832.832 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 07:00:12,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:00:12,440.440 INFO    ] Checking for system updates...
[2026-06-05 07:00:12,480.480 INFO    ] 200
[2026-06-05 07:00:12,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:00:12,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:00:12,547.547 INFO    ] No update needed
[2026-06-05 07:00:12,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 07:00:12,586.586 INFO    ] 200
[2026-06-05 07:00:12,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:00:12,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:00:12,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:00:12,698.698 INFO    ] No camera update needed
[2026-06-05 07:00:12,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:00:12,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:00:12,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:00:12,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:00:14,761.761 INFO    ] ================================================
[2026-06-05 07:00:14,776.776 INFO    ] Launching Daemon at Fri Jun  5 07:00:14 IST 2026
[2026-06-05 07:00:14,787.787 INFO    ] ================================================
[2026-06-05 07:00:15,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:00:15
[2026-06-05 07:00:16,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:00:16,420.420 INFO    ] Initializing speech engine...
[2026-06-05 07:00:16,429.429 INFO    ] 2026-06-05 07:00:16
[2026-06-05 07:00:16,717.717 INFO    ] 2026-06-05 07:00:16
[2026-06-05 07:00:16,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:00:17,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:00:17,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:00:17,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:00:17,257.257 INFO    ] time= 05/06/2026 07:00:17
[2026-06-05 07:00:17,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:00:17,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:00:17,411.411 INFO    ] No existing commands found in stream
[2026-06-05 07:00:22,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:00:22,430.430 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 07:00:25,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:00:25,157.157 INFO    ] Checking for system updates...
[2026-06-05 07:00:25,194.194 INFO    ] 200
[2026-06-05 07:00:25,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:00:25,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:00:25,253.253 INFO    ] No update needed
[2026-06-05 07:00:25,256.256 INFO    ] Checking for camera pi updates...
[2026-06-05 07:00:25,292.292 INFO    ] 200
[2026-06-05 07:00:25,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:00:25,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:00:25,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:00:25,384.384 INFO    ] No camera update needed
[2026-06-05 07:00:25,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:00:25,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:00:25,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:00:25,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:00:27,441.441 INFO    ] ================================================
[2026-06-05 07:00:27,456.456 INFO    ] Launching Daemon at Fri Jun  5 07:00:27 IST 2026
[2026-06-05 07:00:27,467.467 INFO    ] ================================================
[2026-06-05 07:00:28,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:00:28
[2026-06-05 07:00:28,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:00:28,924.924 INFO    ] Initializing speech engine...
[2026-06-05 07:00:28,933.933 INFO    ] 2026-06-05 07:00:28
[2026-06-05 07:00:29,199.199 INFO    ] 2026-06-05 07:00:29
[2026-06-05 07:00:29,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:00:29,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:00:29,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:00:29,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:00:29,586.586 INFO    ] time= 05/06/2026 07:00:29
[2026-06-05 07:00:29,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:00:29,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:00:29,711.711 INFO    ] No existing commands found in stream
[2026-06-05 07:00:34,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:00:34,726.726 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 07:00:38,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:00:38,766.766 INFO    ] Checking for system updates...
[2026-06-05 07:00:38,812.812 INFO    ] 200
[2026-06-05 07:00:38,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:00:38,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:00:38,879.879 INFO    ] No update needed
[2026-06-05 07:00:38,882.882 INFO    ] Checking for camera pi updates...
[2026-06-05 07:00:38,928.928 INFO    ] 200
[2026-06-05 07:00:38,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:00:38,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:00:39,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:00:39,028.028 INFO    ] No camera update needed
[2026-06-05 07:00:39,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:00:39,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:00:39,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:00:39,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:00:41,087.087 INFO    ] ================================================
[2026-06-05 07:00:41,102.102 INFO    ] Launching Daemon at Fri Jun  5 07:00:41 IST 2026
[2026-06-05 07:00:41,113.113 INFO    ] ================================================
[2026-06-05 07:00:41,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:00:41
[2026-06-05 07:00:42,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:00:42,728.728 INFO    ] Initializing speech engine...
[2026-06-05 07:00:42,739.739 INFO    ] 2026-06-05 07:00:42
[2026-06-05 07:00:43,045.045 INFO    ] 2026-06-05 07:00:43
[2026-06-05 07:00:43,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:00:43,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:00:43,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:00:43,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:00:43,545.545 INFO    ] time= 05/06/2026 07:00:43
[2026-06-05 07:00:43,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:00:43,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:00:43,670.670 INFO    ] No existing commands found in stream
[2026-06-05 07:00:48,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:00:48,698.698 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 07:00:51,429.429 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:00:51,432.432 INFO    ] Checking for system updates...
[2026-06-05 07:00:51,468.468 INFO    ] 200
[2026-06-05 07:00:51,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:00:51,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:00:51,526.526 INFO    ] No update needed
[2026-06-05 07:00:51,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 07:00:51,563.563 INFO    ] 200
[2026-06-05 07:00:51,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:00:51,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:00:51,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:00:51,662.662 INFO    ] No camera update needed
[2026-06-05 07:00:51,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:00:51,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:00:51,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:00:51,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:00:53,717.717 INFO    ] ================================================
[2026-06-05 07:00:53,732.732 INFO    ] Launching Daemon at Fri Jun  5 07:00:53 IST 2026
[2026-06-05 07:00:53,743.743 INFO    ] ================================================
[2026-06-05 07:00:54,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:00:54
[2026-06-05 07:00:54,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:00:55,283.283 INFO    ] Initializing speech engine...
[2026-06-05 07:00:55,295.295 INFO    ] 2026-06-05 07:00:55
[2026-06-05 07:00:55,578.578 INFO    ] 2026-06-05 07:00:55
[2026-06-05 07:00:55,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:00:55,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:00:55,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:00:55,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:00:56,037.037 INFO    ] time= 05/06/2026 07:00:56
[2026-06-05 07:00:56,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:00:56,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:00:56,197.197 INFO    ] No existing commands found in stream
[2026-06-05 07:01:01,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:01:01,219.219 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 07:01:01,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:01:01,800.800 INFO    ] Checking for system updates...
[2026-06-05 07:01:01,846.846 INFO    ] 200
[2026-06-05 07:01:01,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:01,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:01:01,918.918 INFO    ] No update needed
[2026-06-05 07:01:01,922.922 INFO    ] Checking for camera pi updates...
[2026-06-05 07:01:01,969.969 INFO    ] 200
[2026-06-05 07:01:01,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:02,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:01:02,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:01:02,067.067 INFO    ] No camera update needed
[2026-06-05 07:01:02,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:01:02,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:01:02,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:01:02,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:01:04,128.128 INFO    ] ================================================
[2026-06-05 07:01:04,144.144 INFO    ] Launching Daemon at Fri Jun  5 07:01:04 IST 2026
[2026-06-05 07:01:04,155.155 INFO    ] ================================================
[2026-06-05 07:01:04,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:01:04
[2026-06-05 07:01:05,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:01:05,618.618 INFO    ] Initializing speech engine...
[2026-06-05 07:01:05,624.624 INFO    ] 2026-06-05 07:01:05
[2026-06-05 07:01:05,885.885 INFO    ] 2026-06-05 07:01:05
[2026-06-05 07:01:05,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:01:06,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:01:06,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:01:06,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:01:06,343.343 INFO    ] time= 05/06/2026 07:01:06
[2026-06-05 07:01:06,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:01:06,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:01:06,513.513 INFO    ] No existing commands found in stream
[2026-06-05 07:01:11,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:01:11,528.528 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 07:01:15,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:01:15,431.431 INFO    ] Checking for system updates...
[2026-06-05 07:01:15,471.471 INFO    ] 200
[2026-06-05 07:01:15,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:15,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:01:15,530.530 INFO    ] No update needed
[2026-06-05 07:01:15,533.533 INFO    ] Checking for camera pi updates...
[2026-06-05 07:01:15,567.567 INFO    ] 200
[2026-06-05 07:01:15,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:15,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:01:15,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:01:15,663.663 INFO    ] No camera update needed
[2026-06-05 07:01:15,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:01:15,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:01:15,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:01:15,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:01:17,721.721 INFO    ] ================================================
[2026-06-05 07:01:17,736.736 INFO    ] Launching Daemon at Fri Jun  5 07:01:17 IST 2026
[2026-06-05 07:01:17,747.747 INFO    ] ================================================
[2026-06-05 07:01:18,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:01:18
[2026-06-05 07:01:18,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:01:19,208.208 INFO    ] Initializing speech engine...
[2026-06-05 07:01:19,213.213 INFO    ] 2026-06-05 07:01:19
[2026-06-05 07:01:19,475.475 INFO    ] 2026-06-05 07:01:19
[2026-06-05 07:01:19,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:01:19,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:01:19,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:01:19,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:01:19,880.880 INFO    ] time= 05/06/2026 07:01:19
[2026-06-05 07:01:19,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:01:19,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:01:20,045.045 INFO    ] No existing commands found in stream
[2026-06-05 07:01:25,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:01:25,073.073 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 07:01:26,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:01:26,162.162 INFO    ] Checking for system updates...
[2026-06-05 07:01:26,200.200 INFO    ] 200
[2026-06-05 07:01:26,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:26,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:01:26,259.259 INFO    ] No update needed
[2026-06-05 07:01:26,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 07:01:26,296.296 INFO    ] 200
[2026-06-05 07:01:26,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:26,341.341 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:01:26,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:01:26,392.392 INFO    ] No camera update needed
[2026-06-05 07:01:26,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:01:26,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:01:26,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:01:26,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:01:28,451.451 INFO    ] ================================================
[2026-06-05 07:01:28,466.466 INFO    ] Launching Daemon at Fri Jun  5 07:01:28 IST 2026
[2026-06-05 07:01:28,477.477 INFO    ] ================================================
[2026-06-05 07:01:29,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:01:29
[2026-06-05 07:01:29,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:01:29,941.941 INFO    ] Initializing speech engine...
[2026-06-05 07:01:29,949.949 INFO    ] 2026-06-05 07:01:29
[2026-06-05 07:01:30,211.211 INFO    ] 2026-06-05 07:01:30
[2026-06-05 07:01:30,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:01:30,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:01:30,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:01:30,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:01:30,571.571 INFO    ] time= 05/06/2026 07:01:30
[2026-06-05 07:01:30,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:01:30,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:01:30,756.756 INFO    ] No existing commands found in stream
[2026-06-05 07:01:35,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:01:35,781.781 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 07:01:39,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:01:39,031.031 INFO    ] Checking for system updates...
[2026-06-05 07:01:39,067.067 INFO    ] 200
[2026-06-05 07:01:39,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:39,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:01:39,133.133 INFO    ] No update needed
[2026-06-05 07:01:39,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 07:01:39,172.172 INFO    ] 200
[2026-06-05 07:01:39,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:39,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:01:39,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:01:39,275.275 INFO    ] No camera update needed
[2026-06-05 07:01:39,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:01:39,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:01:39,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:01:39,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:01:41,331.331 INFO    ] ================================================
[2026-06-05 07:01:41,346.346 INFO    ] Launching Daemon at Fri Jun  5 07:01:41 IST 2026
[2026-06-05 07:01:41,358.358 INFO    ] ================================================
[2026-06-05 07:01:42,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:01:42
[2026-06-05 07:01:42,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:01:42,964.964 INFO    ] Initializing speech engine...
[2026-06-05 07:01:42,972.972 INFO    ] 2026-06-05 07:01:42
[2026-06-05 07:01:43,229.229 INFO    ] 2026-06-05 07:01:43
[2026-06-05 07:01:43,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:01:43,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:01:43,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:01:43,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:01:43,688.688 INFO    ] time= 05/06/2026 07:01:43
[2026-06-05 07:01:43,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:01:43,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:01:43,888.888 INFO    ] No existing commands found in stream
[2026-06-05 07:01:48,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:01:48,918.918 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 07:01:51,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:01:51,661.661 INFO    ] Checking for system updates...
[2026-06-05 07:01:51,700.700 INFO    ] 200
[2026-06-05 07:01:51,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:51,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:01:51,766.766 INFO    ] No update needed
[2026-06-05 07:01:51,769.769 INFO    ] Checking for camera pi updates...
[2026-06-05 07:01:51,808.808 INFO    ] 200
[2026-06-05 07:01:51,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:01:51,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:01:51,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:01:51,897.897 INFO    ] No camera update needed
[2026-06-05 07:01:51,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:01:51,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:01:51,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:01:51,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:01:53,957.957 INFO    ] ================================================
[2026-06-05 07:01:53,972.972 INFO    ] Launching Daemon at Fri Jun  5 07:01:53 IST 2026
[2026-06-05 07:01:53,983.983 INFO    ] ================================================
[2026-06-05 07:01:54,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:01:54
[2026-06-05 07:01:55,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:01:55,409.409 INFO    ] Initializing speech engine...
[2026-06-05 07:01:55,415.415 INFO    ] 2026-06-05 07:01:55
[2026-06-05 07:01:55,717.717 INFO    ] 2026-06-05 07:01:55
[2026-06-05 07:01:55,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:01:55,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:01:56,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:01:56,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:01:56,197.197 INFO    ] time= 05/06/2026 07:01:56
[2026-06-05 07:01:56,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:01:56,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:01:56,363.363 INFO    ] No existing commands found in stream
[2026-06-05 07:02:01,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:02:01,379.379 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 07:02:03,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:02:03,867.867 INFO    ] Checking for system updates...
[2026-06-05 07:02:03,903.903 INFO    ] 200
[2026-06-05 07:02:03,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:03,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:02:03,962.962 INFO    ] No update needed
[2026-06-05 07:02:03,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 07:02:03,999.999 INFO    ] 200
[2026-06-05 07:02:04,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:04,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:02:04,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:02:04,089.089 INFO    ] No camera update needed
[2026-06-05 07:02:04,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:02:04,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:02:04,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:02:04,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:02:06,148.148 INFO    ] ================================================
[2026-06-05 07:02:06,163.163 INFO    ] Launching Daemon at Fri Jun  5 07:02:06 IST 2026
[2026-06-05 07:02:06,174.174 INFO    ] ================================================
[2026-06-05 07:02:06,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:02:06
[2026-06-05 07:02:07,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:02:07,680.680 INFO    ] Initializing speech engine...
[2026-06-05 07:02:07,689.689 INFO    ] 2026-06-05 07:02:07
[2026-06-05 07:02:07,995.995 INFO    ] 2026-06-05 07:02:07
[2026-06-05 07:02:08,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:02:08,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:02:08,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:02:08,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:02:08,503.503 INFO    ] time= 05/06/2026 07:02:08
[2026-06-05 07:02:08,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:02:08,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:02:08,659.659 INFO    ] No existing commands found in stream
[2026-06-05 07:02:13,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:02:13,688.688 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 07:02:14,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:02:14,112.112 INFO    ] Checking for system updates...
[2026-06-05 07:02:14,153.153 INFO    ] 200
[2026-06-05 07:02:14,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:14,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:02:14,222.222 INFO    ] No update needed
[2026-06-05 07:02:14,225.225 INFO    ] Checking for camera pi updates...
[2026-06-05 07:02:14,264.264 INFO    ] 200
[2026-06-05 07:02:14,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:14,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:02:14,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:02:14,462.462 INFO    ] No camera update needed
[2026-06-05 07:02:14,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:02:14,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:02:14,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:02:14,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:02:16,523.523 INFO    ] ================================================
[2026-06-05 07:02:16,539.539 INFO    ] Launching Daemon at Fri Jun  5 07:02:16 IST 2026
[2026-06-05 07:02:16,550.550 INFO    ] ================================================
[2026-06-05 07:02:17,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:02:17
[2026-06-05 07:02:17,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:02:17,964.964 INFO    ] Initializing speech engine...
[2026-06-05 07:02:17,977.977 INFO    ] 2026-06-05 07:02:17
[2026-06-05 07:02:18,224.224 INFO    ] 2026-06-05 07:02:18
[2026-06-05 07:02:18,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:02:18,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:02:18,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:02:18,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:02:18,592.592 INFO    ] time= 05/06/2026 07:02:18
[2026-06-05 07:02:18,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:02:18,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:02:18,764.764 INFO    ] No existing commands found in stream
[2026-06-05 07:02:23,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:02:23,791.791 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 07:02:26,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:02:26,067.067 INFO    ] Checking for system updates...
[2026-06-05 07:02:26,104.104 INFO    ] 200
[2026-06-05 07:02:26,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:26,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:02:26,163.163 INFO    ] No update needed
[2026-06-05 07:02:26,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 07:02:26,199.199 INFO    ] 200
[2026-06-05 07:02:26,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:26,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:02:26,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:02:26,298.298 INFO    ] No camera update needed
[2026-06-05 07:02:26,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:02:26,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:02:26,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:02:26,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:02:28,354.354 INFO    ] ================================================
[2026-06-05 07:02:28,369.369 INFO    ] Launching Daemon at Fri Jun  5 07:02:28 IST 2026
[2026-06-05 07:02:28,380.380 INFO    ] ================================================
[2026-06-05 07:02:28,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:02:28
[2026-06-05 07:02:29,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:02:29,804.804 INFO    ] Initializing speech engine...
[2026-06-05 07:02:29,810.810 INFO    ] 2026-06-05 07:02:29
[2026-06-05 07:02:30,058.058 INFO    ] 2026-06-05 07:02:30
[2026-06-05 07:02:30,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:02:30,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:02:30,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:02:30,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:02:30,543.543 INFO    ] time= 05/06/2026 07:02:30
[2026-06-05 07:02:30,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:02:30,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:02:30,683.683 INFO    ] No existing commands found in stream
[2026-06-05 07:02:35,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:02:35,699.699 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 07:02:39,184.184 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:02:39,188.188 INFO    ] Checking for system updates...
[2026-06-05 07:02:39,225.225 INFO    ] 200
[2026-06-05 07:02:39,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:39,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:02:39,283.283 INFO    ] No update needed
[2026-06-05 07:02:39,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 07:02:39,320.320 INFO    ] 200
[2026-06-05 07:02:39,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:39,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:02:39,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:02:39,405.405 INFO    ] No camera update needed
[2026-06-05 07:02:39,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:02:39,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:02:39,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:02:39,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:02:41,461.461 INFO    ] ================================================
[2026-06-05 07:02:41,476.476 INFO    ] Launching Daemon at Fri Jun  5 07:02:41 IST 2026
[2026-06-05 07:02:41,487.487 INFO    ] ================================================
[2026-06-05 07:02:42,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:02:42
[2026-06-05 07:02:42,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:02:42,954.954 INFO    ] Initializing speech engine...
[2026-06-05 07:02:42,959.959 INFO    ] 2026-06-05 07:02:42
[2026-06-05 07:02:43,210.210 INFO    ] 2026-06-05 07:02:43
[2026-06-05 07:02:43,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:02:43,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:02:43,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:02:43,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:02:43,585.585 INFO    ] time= 05/06/2026 07:02:43
[2026-06-05 07:02:43,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:02:43,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:02:43,779.779 INFO    ] No existing commands found in stream
[2026-06-05 07:02:48,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:02:48,793.793 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 07:02:53,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:02:53,040.040 INFO    ] Checking for system updates...
[2026-06-05 07:02:53,077.077 INFO    ] 200
[2026-06-05 07:02:53,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:53,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:02:53,134.134 INFO    ] No update needed
[2026-06-05 07:02:53,136.136 INFO    ] Checking for camera pi updates...
[2026-06-05 07:02:53,171.171 INFO    ] 200
[2026-06-05 07:02:53,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:02:53,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:02:53,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:02:53,267.267 INFO    ] No camera update needed
[2026-06-05 07:02:53,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:02:53,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:02:53,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:02:53,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:02:55,323.323 INFO    ] ================================================
[2026-06-05 07:02:55,338.338 INFO    ] Launching Daemon at Fri Jun  5 07:02:55 IST 2026
[2026-06-05 07:02:55,349.349 INFO    ] ================================================
[2026-06-05 07:02:55,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:02:55
[2026-06-05 07:02:56,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:02:56,812.812 INFO    ] Initializing speech engine...
[2026-06-05 07:02:56,827.827 INFO    ] 2026-06-05 07:02:56
[2026-06-05 07:02:57,093.093 INFO    ] 2026-06-05 07:02:57
[2026-06-05 07:02:57,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:02:57,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:02:57,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:02:57,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:02:57,550.550 INFO    ] time= 05/06/2026 07:02:57
[2026-06-05 07:02:57,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:02:57,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:02:57,738.738 INFO    ] No existing commands found in stream
[2026-06-05 07:03:02,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:03:02,754.754 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 07:03:03,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:03:03,505.505 INFO    ] Checking for system updates...
[2026-06-05 07:03:03,549.549 INFO    ] 200
[2026-06-05 07:03:03,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:03,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:03:03,618.618 INFO    ] No update needed
[2026-06-05 07:03:03,621.621 INFO    ] Checking for camera pi updates...
[2026-06-05 07:03:03,658.658 INFO    ] 200
[2026-06-05 07:03:03,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:03,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:03:03,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:03:03,743.743 INFO    ] No camera update needed
[2026-06-05 07:03:03,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:03:03,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:03:03,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:03:03,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:03:05,797.797 INFO    ] ================================================
[2026-06-05 07:03:05,813.813 INFO    ] Launching Daemon at Fri Jun  5 07:03:05 IST 2026
[2026-06-05 07:03:05,825.825 INFO    ] ================================================
[2026-06-05 07:03:06,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:03:06
[2026-06-05 07:03:06,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:03:07,264.264 INFO    ] Initializing speech engine...
[2026-06-05 07:03:07,273.273 INFO    ] 2026-06-05 07:03:07
[2026-06-05 07:03:07,519.519 INFO    ] 2026-06-05 07:03:07
[2026-06-05 07:03:07,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:03:07,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:03:07,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:03:07,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:03:08,009.009 INFO    ] time= 05/06/2026 07:03:07
[2026-06-05 07:03:08,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:03:08,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:03:08,207.207 INFO    ] No existing commands found in stream
[2026-06-05 07:03:13,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:03:13,234.234 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 07:03:16,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:03:16,250.250 INFO    ] Checking for system updates...
[2026-06-05 07:03:16,289.289 INFO    ] 200
[2026-06-05 07:03:16,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:16,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:03:16,355.355 INFO    ] No update needed
[2026-06-05 07:03:16,357.357 INFO    ] Checking for camera pi updates...
[2026-06-05 07:03:16,392.392 INFO    ] 200
[2026-06-05 07:03:16,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:16,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:03:16,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:03:16,493.493 INFO    ] No camera update needed
[2026-06-05 07:03:16,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:03:16,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:03:16,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:03:16,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:03:18,552.552 INFO    ] ================================================
[2026-06-05 07:03:18,568.568 INFO    ] Launching Daemon at Fri Jun  5 07:03:18 IST 2026
[2026-06-05 07:03:18,579.579 INFO    ] ================================================
[2026-06-05 07:03:19,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:03:19
[2026-06-05 07:03:19,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:03:20,185.185 INFO    ] Initializing speech engine...
[2026-06-05 07:03:20,199.199 INFO    ] 2026-06-05 07:03:20
[2026-06-05 07:03:20,462.462 INFO    ] 2026-06-05 07:03:20
[2026-06-05 07:03:20,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:03:20,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:03:20,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:03:20,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:03:20,996.996 INFO    ] time= 05/06/2026 07:03:20
[2026-06-05 07:03:21,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:03:21,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:03:21,137.137 INFO    ] No existing commands found in stream
[2026-06-05 07:03:26,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:03:26,162.162 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 07:03:27,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:03:27,891.891 INFO    ] Checking for system updates...
[2026-06-05 07:03:27,933.933 INFO    ] 200
[2026-06-05 07:03:27,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:27,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:03:27,992.992 INFO    ] No update needed
[2026-06-05 07:03:27,995.995 INFO    ] Checking for camera pi updates...
[2026-06-05 07:03:28,033.033 INFO    ] 200
[2026-06-05 07:03:28,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:28,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:03:28,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:03:28,124.124 INFO    ] No camera update needed
[2026-06-05 07:03:28,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:03:28,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:03:28,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:03:28,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:03:30,179.179 INFO    ] ================================================
[2026-06-05 07:03:30,195.195 INFO    ] Launching Daemon at Fri Jun  5 07:03:30 IST 2026
[2026-06-05 07:03:30,206.206 INFO    ] ================================================
[2026-06-05 07:03:30,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:03:30
[2026-06-05 07:03:31,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:03:31,847.847 INFO    ] Initializing speech engine...
[2026-06-05 07:03:31,861.861 INFO    ] 2026-06-05 07:03:31
[2026-06-05 07:03:32,138.138 INFO    ] 2026-06-05 07:03:32
[2026-06-05 07:03:32,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:03:32,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:03:32,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:03:32,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:03:32,718.718 INFO    ] time= 05/06/2026 07:03:32
[2026-06-05 07:03:32,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:03:32,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:03:32,878.878 INFO    ] No existing commands found in stream
[2026-06-05 07:03:37,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:03:37,907.907 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 07:03:38,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:03:38,814.814 INFO    ] Checking for system updates...
[2026-06-05 07:03:38,850.850 INFO    ] 200
[2026-06-05 07:03:38,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:38,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:03:38,919.919 INFO    ] No update needed
[2026-06-05 07:03:38,922.922 INFO    ] Checking for camera pi updates...
[2026-06-05 07:03:38,957.957 INFO    ] 200
[2026-06-05 07:03:38,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:39,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:03:39,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:03:39,060.060 INFO    ] No camera update needed
[2026-06-05 07:03:39,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:03:39,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:03:39,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:03:39,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:03:41,119.119 INFO    ] ================================================
[2026-06-05 07:03:41,136.136 INFO    ] Launching Daemon at Fri Jun  5 07:03:41 IST 2026
[2026-06-05 07:03:41,147.147 INFO    ] ================================================
[2026-06-05 07:03:41,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:03:41
[2026-06-05 07:03:42,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:03:42,614.614 INFO    ] Initializing speech engine...
[2026-06-05 07:03:42,621.621 INFO    ] 2026-06-05 07:03:42
[2026-06-05 07:03:42,882.882 INFO    ] 2026-06-05 07:03:42
[2026-06-05 07:03:42,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:03:43,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:03:43,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:03:43,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:03:43,306.306 INFO    ] time= 05/06/2026 07:03:43
[2026-06-05 07:03:43,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:03:43,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:03:43,485.485 INFO    ] No existing commands found in stream
[2026-06-05 07:03:48,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:03:48,500.500 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 07:03:51,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:03:51,747.747 INFO    ] Checking for system updates...
[2026-06-05 07:03:51,790.790 INFO    ] 200
[2026-06-05 07:03:51,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:51,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:03:51,850.850 INFO    ] No update needed
[2026-06-05 07:03:51,852.852 INFO    ] Checking for camera pi updates...
[2026-06-05 07:03:51,887.887 INFO    ] 200
[2026-06-05 07:03:51,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:03:51,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:03:51,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:03:51,980.980 INFO    ] No camera update needed
[2026-06-05 07:03:51,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:03:51,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:03:51,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:03:52,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:03:54,045.045 INFO    ] ================================================
[2026-06-05 07:03:54,061.061 INFO    ] Launching Daemon at Fri Jun  5 07:03:54 IST 2026
[2026-06-05 07:03:54,073.073 INFO    ] ================================================
[2026-06-05 07:03:54,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:03:54
[2026-06-05 07:03:55,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:03:55,557.557 INFO    ] Initializing speech engine...
[2026-06-05 07:03:55,566.566 INFO    ] 2026-06-05 07:03:55
[2026-06-05 07:03:55,828.828 INFO    ] 2026-06-05 07:03:55
[2026-06-05 07:03:55,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:03:56,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:03:56,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:03:56,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:03:56,324.324 INFO    ] time= 05/06/2026 07:03:56
[2026-06-05 07:03:56,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:03:56,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:03:56,453.453 INFO    ] No existing commands found in stream
[2026-06-05 07:04:01,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:04:01,468.468 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 07:04:03,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:04:03,068.068 INFO    ] Checking for system updates...
[2026-06-05 07:04:03,112.112 INFO    ] 200
[2026-06-05 07:04:03,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:03,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:04:03,206.206 INFO    ] No update needed
[2026-06-05 07:04:03,217.217 INFO    ] Checking for camera pi updates...
[2026-06-05 07:04:03,268.268 INFO    ] 200
[2026-06-05 07:04:03,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:03,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:04:03,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:04:03,368.368 INFO    ] No camera update needed
[2026-06-05 07:04:03,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:04:03,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:04:03,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:04:03,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:04:05,437.437 INFO    ] ================================================
[2026-06-05 07:04:05,453.453 INFO    ] Launching Daemon at Fri Jun  5 07:04:05 IST 2026
[2026-06-05 07:04:05,465.465 INFO    ] ================================================
[2026-06-05 07:04:06,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:04:06
[2026-06-05 07:04:06,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:04:06,881.881 INFO    ] Initializing speech engine...
[2026-06-05 07:04:06,890.890 INFO    ] 2026-06-05 07:04:06
[2026-06-05 07:04:07,162.162 INFO    ] 2026-06-05 07:04:07
[2026-06-05 07:04:07,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:04:07,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:04:07,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:04:07,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:04:07,540.540 INFO    ] time= 05/06/2026 07:04:07
[2026-06-05 07:04:07,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:04:07,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:04:07,688.688 INFO    ] No existing commands found in stream
[2026-06-05 07:04:12,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:04:12,716.716 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 07:04:15,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:04:15,463.463 INFO    ] Checking for system updates...
[2026-06-05 07:04:15,499.499 INFO    ] 200
[2026-06-05 07:04:15,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:15,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:04:15,557.557 INFO    ] No update needed
[2026-06-05 07:04:15,559.559 INFO    ] Checking for camera pi updates...
[2026-06-05 07:04:15,593.593 INFO    ] 200
[2026-06-05 07:04:15,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:15,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:04:15,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:04:15,689.689 INFO    ] No camera update needed
[2026-06-05 07:04:15,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:04:15,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:04:15,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:04:15,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:04:17,746.746 INFO    ] ================================================
[2026-06-05 07:04:17,762.762 INFO    ] Launching Daemon at Fri Jun  5 07:04:17 IST 2026
[2026-06-05 07:04:17,774.774 INFO    ] ================================================
[2026-06-05 07:04:18,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:04:18
[2026-06-05 07:04:18,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:04:19,201.201 INFO    ] Initializing speech engine...
[2026-06-05 07:04:19,210.210 INFO    ] 2026-06-05 07:04:19
[2026-06-05 07:04:19,459.459 INFO    ] 2026-06-05 07:04:19
[2026-06-05 07:04:19,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:04:19,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:04:19,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:04:19,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:04:19,946.946 INFO    ] time= 05/06/2026 07:04:19
[2026-06-05 07:04:19,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:04:20,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:04:20,090.090 INFO    ] No existing commands found in stream
[2026-06-05 07:04:25,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:04:25,105.105 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 07:04:25,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:04:25,685.685 INFO    ] Checking for system updates...
[2026-06-05 07:04:25,721.721 INFO    ] 200
[2026-06-05 07:04:25,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:25,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:04:25,779.779 INFO    ] No update needed
[2026-06-05 07:04:25,781.781 INFO    ] Checking for camera pi updates...
[2026-06-05 07:04:25,815.815 INFO    ] 200
[2026-06-05 07:04:25,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:25,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:04:26,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:04:26,015.015 INFO    ] No camera update needed
[2026-06-05 07:04:26,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:04:26,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:04:26,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:04:26,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:04:28,072.072 INFO    ] ================================================
[2026-06-05 07:04:28,088.088 INFO    ] Launching Daemon at Fri Jun  5 07:04:28 IST 2026
[2026-06-05 07:04:28,100.100 INFO    ] ================================================
[2026-06-05 07:04:28,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:04:28
[2026-06-05 07:04:29,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:04:29,524.524 INFO    ] Initializing speech engine...
[2026-06-05 07:04:29,534.534 INFO    ] 2026-06-05 07:04:29
[2026-06-05 07:04:29,784.784 INFO    ] 2026-06-05 07:04:29
[2026-06-05 07:04:29,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:04:30,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:04:30,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:04:30,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:04:30,285.285 INFO    ] time= 05/06/2026 07:04:30
[2026-06-05 07:04:30,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:04:30,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:04:30,419.419 INFO    ] No existing commands found in stream
[2026-06-05 07:04:35,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:04:35,433.433 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 07:04:38,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:04:38,501.501 INFO    ] Checking for system updates...
[2026-06-05 07:04:38,542.542 INFO    ] 200
[2026-06-05 07:04:38,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:38,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:04:38,607.607 INFO    ] No update needed
[2026-06-05 07:04:38,609.609 INFO    ] Checking for camera pi updates...
[2026-06-05 07:04:38,643.643 INFO    ] 200
[2026-06-05 07:04:38,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:38,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:04:38,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:04:38,727.727 INFO    ] No camera update needed
[2026-06-05 07:04:38,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:04:38,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:04:38,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:04:38,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:04:40,786.786 INFO    ] ================================================
[2026-06-05 07:04:40,838.838 INFO    ] Launching Daemon at Fri Jun  5 07:04:40 IST 2026
[2026-06-05 07:04:40,849.849 INFO    ] ================================================
[2026-06-05 07:04:41,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:04:41
[2026-06-05 07:04:42,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:04:42,486.486 INFO    ] Initializing speech engine...
[2026-06-05 07:04:42,499.499 INFO    ] 2026-06-05 07:04:42
[2026-06-05 07:04:42,784.784 INFO    ] 2026-06-05 07:04:42
[2026-06-05 07:04:42,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:04:43,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:04:43,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:04:43,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:04:43,274.274 INFO    ] time= 05/06/2026 07:04:43
[2026-06-05 07:04:43,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:04:43,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:04:43,472.472 INFO    ] No existing commands found in stream
[2026-06-05 07:04:48,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:04:48,501.501 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 07:04:52,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:04:52,943.943 INFO    ] Checking for system updates...
[2026-06-05 07:04:52,979.979 INFO    ] 200
[2026-06-05 07:04:52,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:53,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:04:53,045.045 INFO    ] No update needed
[2026-06-05 07:04:53,047.047 INFO    ] Checking for camera pi updates...
[2026-06-05 07:04:53,085.085 INFO    ] 200
[2026-06-05 07:04:53,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:04:53,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:04:53,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:04:53,157.157 INFO    ] No camera update needed
[2026-06-05 07:04:53,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:04:53,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:04:53,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:04:53,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:04:55,213.213 INFO    ] ================================================
[2026-06-05 07:04:55,229.229 INFO    ] Launching Daemon at Fri Jun  5 07:04:55 IST 2026
[2026-06-05 07:04:55,240.240 INFO    ] ================================================
[2026-06-05 07:04:55,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:04:55
[2026-06-05 07:04:56,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:04:56,646.646 INFO    ] Initializing speech engine...
[2026-06-05 07:04:56,660.660 INFO    ] 2026-06-05 07:04:56
[2026-06-05 07:04:56,925.925 INFO    ] 2026-06-05 07:04:56
[2026-06-05 07:04:56,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:04:57,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:04:57,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:04:57,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:04:57,282.282 INFO    ] time= 05/06/2026 07:04:57
[2026-06-05 07:04:57,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:04:57,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:04:57,383.383 INFO    ] No existing commands found in stream
[2026-06-05 07:05:02,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:05:02,410.410 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-05 07:05:03,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:05:03,006.006 INFO    ] Checking for system updates...
[2026-06-05 07:05:03,051.051 INFO    ] 200
[2026-06-05 07:05:03,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:03,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:05:03,128.128 INFO    ] No update needed
[2026-06-05 07:05:03,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 07:05:03,179.179 INFO    ] 200
[2026-06-05 07:05:03,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:03,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:05:03,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:05:03,274.274 INFO    ] No camera update needed
[2026-06-05 07:05:03,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:05:03,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:05:03,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:05:03,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:05:05,333.333 INFO    ] ================================================
[2026-06-05 07:05:05,349.349 INFO    ] Launching Daemon at Fri Jun  5 07:05:05 IST 2026
[2026-06-05 07:05:05,361.361 INFO    ] ================================================
[2026-06-05 07:05:05,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:05:05
[2026-06-05 07:05:06,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:05:06,803.803 INFO    ] Initializing speech engine...
[2026-06-05 07:05:06,826.826 INFO    ] 2026-06-05 07:05:06
[2026-06-05 07:05:07,108.108 INFO    ] 2026-06-05 07:05:07
[2026-06-05 07:05:07,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:05:07,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:05:07,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:05:07,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:05:07,486.486 INFO    ] time= 05/06/2026 07:05:07
[2026-06-05 07:05:07,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:05:07,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:05:07,674.674 INFO    ] No existing commands found in stream
[2026-06-05 07:05:12,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:05:12,698.698 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 07:05:15,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:05:15,322.322 INFO    ] Checking for system updates...
[2026-06-05 07:05:15,359.359 INFO    ] 200
[2026-06-05 07:05:15,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:15,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:05:15,428.428 INFO    ] No update needed
[2026-06-05 07:05:15,431.431 INFO    ] Checking for camera pi updates...
[2026-06-05 07:05:15,466.466 INFO    ] 200
[2026-06-05 07:05:15,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:15,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:05:15,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:05:15,567.567 INFO    ] No camera update needed
[2026-06-05 07:05:15,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:05:15,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:05:15,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:05:15,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:05:17,627.627 INFO    ] ================================================
[2026-06-05 07:05:17,643.643 INFO    ] Launching Daemon at Fri Jun  5 07:05:17 IST 2026
[2026-06-05 07:05:17,654.654 INFO    ] ================================================
[2026-06-05 07:05:18,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:05:18
[2026-06-05 07:05:18,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:05:19,153.153 INFO    ] Initializing speech engine...
[2026-06-05 07:05:19,162.162 INFO    ] 2026-06-05 07:05:19
[2026-06-05 07:05:19,423.423 INFO    ] 2026-06-05 07:05:19
[2026-06-05 07:05:19,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:05:19,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:05:19,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:05:19,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:05:19,850.850 INFO    ] time= 05/06/2026 07:05:19
[2026-06-05 07:05:19,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:05:19,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:05:20,026.026 INFO    ] No existing commands found in stream
[2026-06-05 07:05:25,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:05:25,040.040 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 07:05:26,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:05:26,806.806 INFO    ] Checking for system updates...
[2026-06-05 07:05:26,841.841 INFO    ] 200
[2026-06-05 07:05:26,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:26,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:05:26,918.918 INFO    ] No update needed
[2026-06-05 07:05:26,922.922 INFO    ] Checking for camera pi updates...
[2026-06-05 07:05:26,962.962 INFO    ] 200
[2026-06-05 07:05:26,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:27,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:05:27,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:05:27,055.055 INFO    ] No camera update needed
[2026-06-05 07:05:27,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:05:27,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:05:27,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:05:27,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:05:29,113.113 INFO    ] ================================================
[2026-06-05 07:05:29,130.130 INFO    ] Launching Daemon at Fri Jun  5 07:05:29 IST 2026
[2026-06-05 07:05:29,141.141 INFO    ] ================================================
[2026-06-05 07:05:29,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:05:29
[2026-06-05 07:05:30,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:05:30,727.727 INFO    ] Initializing speech engine...
[2026-06-05 07:05:30,746.746 INFO    ] 2026-06-05 07:05:30
[2026-06-05 07:05:31,024.024 INFO    ] 2026-06-05 07:05:31
[2026-06-05 07:05:31,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:05:31,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:05:31,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:05:31,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:05:31,519.519 INFO    ] time= 05/06/2026 07:05:31
[2026-06-05 07:05:31,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:05:31,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:05:31,715.715 INFO    ] No existing commands found in stream
[2026-06-05 07:05:36,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:05:36,747.747 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 07:05:37,628.628 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:05:37,631.631 INFO    ] Checking for system updates...
[2026-06-05 07:05:37,669.669 INFO    ] 200
[2026-06-05 07:05:37,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:37,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:05:37,729.729 INFO    ] No update needed
[2026-06-05 07:05:37,732.732 INFO    ] Checking for camera pi updates...
[2026-06-05 07:05:37,771.771 INFO    ] 200
[2026-06-05 07:05:37,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:37,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:05:37,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:05:37,870.870 INFO    ] No camera update needed
[2026-06-05 07:05:37,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:05:37,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:05:37,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:05:37,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:05:39,930.930 INFO    ] ================================================
[2026-06-05 07:05:39,947.947 INFO    ] Launching Daemon at Fri Jun  5 07:05:39 IST 2026
[2026-06-05 07:05:39,958.958 INFO    ] ================================================
[2026-06-05 07:05:40,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:05:40
[2026-06-05 07:05:41,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:05:41,591.591 INFO    ] Initializing speech engine...
[2026-06-05 07:05:41,599.599 INFO    ] 2026-06-05 07:05:41
[2026-06-05 07:05:41,871.871 INFO    ] 2026-06-05 07:05:41
[2026-06-05 07:05:41,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:05:42,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:05:42,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:05:42,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:05:42,322.322 INFO    ] time= 05/06/2026 07:05:42
[2026-06-05 07:05:42,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:05:42,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:05:42,461.461 INFO    ] No existing commands found in stream
[2026-06-05 07:05:47,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:05:47,477.477 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 07:05:51,172.172 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:05:51,174.174 INFO    ] Checking for system updates...
[2026-06-05 07:05:51,210.210 INFO    ] 200
[2026-06-05 07:05:51,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:51,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:05:51,267.267 INFO    ] No update needed
[2026-06-05 07:05:51,269.269 INFO    ] Checking for camera pi updates...
[2026-06-05 07:05:51,304.304 INFO    ] 200
[2026-06-05 07:05:51,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:05:51,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:05:51,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:05:51,396.396 INFO    ] No camera update needed
[2026-06-05 07:05:51,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:05:51,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:05:51,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:05:51,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:05:53,451.451 INFO    ] ================================================
[2026-06-05 07:05:53,467.467 INFO    ] Launching Daemon at Fri Jun  5 07:05:53 IST 2026
[2026-06-05 07:05:53,478.478 INFO    ] ================================================
[2026-06-05 07:05:54,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:05:54
[2026-06-05 07:05:54,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:05:54,913.913 INFO    ] Initializing speech engine...
[2026-06-05 07:05:54,918.918 INFO    ] 2026-06-05 07:05:54
[2026-06-05 07:05:55,171.171 INFO    ] 2026-06-05 07:05:55
[2026-06-05 07:05:55,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:05:55,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:05:55,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:05:55,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:05:55,532.532 INFO    ] time= 05/06/2026 07:05:55
[2026-06-05 07:05:55,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:05:55,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:05:55,697.697 INFO    ] No existing commands found in stream
[2026-06-05 07:06:00,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:06:00,735.735 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 07:06:05,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:06:05,071.071 INFO    ] Checking for system updates...
[2026-06-05 07:06:05,118.118 INFO    ] 200
[2026-06-05 07:06:05,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:05,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:06:05,180.180 INFO    ] No update needed
[2026-06-05 07:06:05,183.183 INFO    ] Checking for camera pi updates...
[2026-06-05 07:06:05,221.221 INFO    ] 200
[2026-06-05 07:06:05,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:05,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:06:05,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:06:05,299.299 INFO    ] No camera update needed
[2026-06-05 07:06:05,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:06:05,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:06:05,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:06:05,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:06:07,358.358 INFO    ] ================================================
[2026-06-05 07:06:07,373.373 INFO    ] Launching Daemon at Fri Jun  5 07:06:07 IST 2026
[2026-06-05 07:06:07,385.385 INFO    ] ================================================
[2026-06-05 07:06:07,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:06:07
[2026-06-05 07:06:08,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:06:08,797.797 INFO    ] Initializing speech engine...
[2026-06-05 07:06:08,803.803 INFO    ] 2026-06-05 07:06:08
[2026-06-05 07:06:09,076.076 INFO    ] 2026-06-05 07:06:09
[2026-06-05 07:06:09,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:06:09,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:06:09,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:06:09,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:06:09,587.587 INFO    ] time= 05/06/2026 07:06:09
[2026-06-05 07:06:09,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:06:09,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:06:09,789.789 INFO    ] No existing commands found in stream
[2026-06-05 07:06:14,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:06:14,818.818 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 07:06:17,573.573 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:06:17,576.576 INFO    ] Checking for system updates...
[2026-06-05 07:06:17,612.612 INFO    ] 200
[2026-06-05 07:06:17,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:17,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:06:17,671.671 INFO    ] No update needed
[2026-06-05 07:06:17,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 07:06:17,708.708 INFO    ] 200
[2026-06-05 07:06:17,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:17,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:06:17,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:06:17,798.798 INFO    ] No camera update needed
[2026-06-05 07:06:17,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:06:17,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:06:17,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:06:17,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:06:19,854.854 INFO    ] ================================================
[2026-06-05 07:06:19,870.870 INFO    ] Launching Daemon at Fri Jun  5 07:06:19 IST 2026
[2026-06-05 07:06:19,881.881 INFO    ] ================================================
[2026-06-05 07:06:20,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:06:20
[2026-06-05 07:06:21,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:06:21,383.383 INFO    ] Initializing speech engine...
[2026-06-05 07:06:21,390.390 INFO    ] 2026-06-05 07:06:21
[2026-06-05 07:06:21,650.650 INFO    ] 2026-06-05 07:06:21
[2026-06-05 07:06:21,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:06:21,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:06:21,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:06:22,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:06:22,113.113 INFO    ] time= 05/06/2026 07:06:22
[2026-06-05 07:06:22,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:06:22,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:06:22,257.257 INFO    ] No existing commands found in stream
[2026-06-05 07:06:27,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:06:27,271.271 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 07:06:30,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:06:30,378.378 INFO    ] Checking for system updates...
[2026-06-05 07:06:30,415.415 INFO    ] 200
[2026-06-05 07:06:30,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:30,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:06:30,473.473 INFO    ] No update needed
[2026-06-05 07:06:30,475.475 INFO    ] Checking for camera pi updates...
[2026-06-05 07:06:30,508.508 INFO    ] 200
[2026-06-05 07:06:30,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:30,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:06:30,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:06:30,701.701 INFO    ] No camera update needed
[2026-06-05 07:06:30,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:06:30,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:06:30,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:06:30,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:06:32,761.761 INFO    ] ================================================
[2026-06-05 07:06:32,778.778 INFO    ] Launching Daemon at Fri Jun  5 07:06:32 IST 2026
[2026-06-05 07:06:32,790.790 INFO    ] ================================================
[2026-06-05 07:06:33,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:06:33
[2026-06-05 07:06:34,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:06:34,284.284 INFO    ] Initializing speech engine...
[2026-06-05 07:06:34,291.291 INFO    ] 2026-06-05 07:06:34
[2026-06-05 07:06:34,556.556 INFO    ] 2026-06-05 07:06:34
[2026-06-05 07:06:34,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:06:34,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:06:34,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:06:35,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:06:35,019.019 INFO    ] time= 05/06/2026 07:06:35
[2026-06-05 07:06:35,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:06:35,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:06:35,215.215 INFO    ] No existing commands found in stream
[2026-06-05 07:06:40,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:06:40,230.230 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 07:06:43,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:06:43,629.629 INFO    ] Checking for system updates...
[2026-06-05 07:06:43,667.667 INFO    ] 200
[2026-06-05 07:06:43,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:43,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:06:43,733.733 INFO    ] No update needed
[2026-06-05 07:06:43,736.736 INFO    ] Checking for camera pi updates...
[2026-06-05 07:06:43,771.771 INFO    ] 200
[2026-06-05 07:06:43,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:43,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:06:43,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:06:43,863.863 INFO    ] No camera update needed
[2026-06-05 07:06:43,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:06:43,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:06:43,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:06:43,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:06:45,922.922 INFO    ] ================================================
[2026-06-05 07:06:45,937.937 INFO    ] Launching Daemon at Fri Jun  5 07:06:45 IST 2026
[2026-06-05 07:06:45,948.948 INFO    ] ================================================
[2026-06-05 07:06:46,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:06:46
[2026-06-05 07:06:47,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:06:47,554.554 INFO    ] Initializing speech engine...
[2026-06-05 07:06:47,566.566 INFO    ] 2026-06-05 07:06:47
[2026-06-05 07:06:47,846.846 INFO    ] 2026-06-05 07:06:47
[2026-06-05 07:06:47,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:06:48,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:06:48,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:06:48,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:06:48,308.308 INFO    ] time= 05/06/2026 07:06:48
[2026-06-05 07:06:48,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:06:48,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:06:48,451.451 INFO    ] No existing commands found in stream
[2026-06-05 07:06:53,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:06:53,466.466 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 07:06:57,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:06:57,478.478 INFO    ] Checking for system updates...
[2026-06-05 07:06:57,514.514 INFO    ] 200
[2026-06-05 07:06:57,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:57,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:06:57,572.572 INFO    ] No update needed
[2026-06-05 07:06:57,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 07:06:57,612.612 INFO    ] 200
[2026-06-05 07:06:57,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:06:57,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:06:57,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:06:57,711.711 INFO    ] No camera update needed
[2026-06-05 07:06:57,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:06:57,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:06:57,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:06:57,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:06:59,766.766 INFO    ] ================================================
[2026-06-05 07:06:59,781.781 INFO    ] Launching Daemon at Fri Jun  5 07:06:59 IST 2026
[2026-06-05 07:06:59,792.792 INFO    ] ================================================
[2026-06-05 07:07:00,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:07:00
[2026-06-05 07:07:00,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:07:01,241.241 INFO    ] Initializing speech engine...
[2026-06-05 07:07:01,252.252 INFO    ] 2026-06-05 07:07:01
[2026-06-05 07:07:01,520.520 INFO    ] 2026-06-05 07:07:01
[2026-06-05 07:07:01,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:07:01,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:07:01,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:07:02,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:07:02,011.011 INFO    ] time= 05/06/2026 07:07:02
[2026-06-05 07:07:02,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:07:02,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:07:02,091.091 INFO    ] No existing commands found in stream
[2026-06-05 07:07:07,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:07:07,104.104 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 07:07:09,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:07:09,014.014 INFO    ] Checking for system updates...
[2026-06-05 07:07:09,050.050 INFO    ] 200
[2026-06-05 07:07:09,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:09,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:07:09,108.108 INFO    ] No update needed
[2026-06-05 07:07:09,110.110 INFO    ] Checking for camera pi updates...
[2026-06-05 07:07:09,144.144 INFO    ] 200
[2026-06-05 07:07:09,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:09,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:07:09,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:07:09,246.246 INFO    ] No camera update needed
[2026-06-05 07:07:09,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:07:09,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:07:09,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:07:09,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:07:11,303.303 INFO    ] ================================================
[2026-06-05 07:07:11,318.318 INFO    ] Launching Daemon at Fri Jun  5 07:07:11 IST 2026
[2026-06-05 07:07:11,329.329 INFO    ] ================================================
[2026-06-05 07:07:11,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:07:11
[2026-06-05 07:07:12,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:07:12,806.806 INFO    ] Initializing speech engine...
[2026-06-05 07:07:12,816.816 INFO    ] 2026-06-05 07:07:12
[2026-06-05 07:07:13,077.077 INFO    ] 2026-06-05 07:07:13
[2026-06-05 07:07:13,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:07:13,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:07:13,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:07:13,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:07:13,536.536 INFO    ] time= 05/06/2026 07:07:13
[2026-06-05 07:07:13,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:07:13,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:07:13,682.682 INFO    ] No existing commands found in stream
[2026-06-05 07:07:18,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:07:18,697.697 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 07:07:20,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:07:20,148.148 INFO    ] Checking for system updates...
[2026-06-05 07:07:20,184.184 INFO    ] 200
[2026-06-05 07:07:20,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:20,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:07:20,241.241 INFO    ] No update needed
[2026-06-05 07:07:20,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 07:07:20,277.277 INFO    ] 200
[2026-06-05 07:07:20,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:20,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:07:20,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:07:20,367.367 INFO    ] No camera update needed
[2026-06-05 07:07:20,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:07:20,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:07:20,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:07:20,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:07:22,422.422 INFO    ] ================================================
[2026-06-05 07:07:22,439.439 INFO    ] Launching Daemon at Fri Jun  5 07:07:22 IST 2026
[2026-06-05 07:07:22,449.449 INFO    ] ================================================
[2026-06-05 07:07:23,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:07:23
[2026-06-05 07:07:23,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:07:23,918.918 INFO    ] Initializing speech engine...
[2026-06-05 07:07:23,925.925 INFO    ] 2026-06-05 07:07:23
[2026-06-05 07:07:24,190.190 INFO    ] 2026-06-05 07:07:24
[2026-06-05 07:07:24,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:07:24,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:07:24,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:07:24,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:07:24,685.685 INFO    ] time= 05/06/2026 07:07:24
[2026-06-05 07:07:24,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:07:24,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:07:24,933.933 INFO    ] No existing commands found in stream
[2026-06-05 07:07:29,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:07:29,965.965 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 07:07:30,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:07:30,406.406 INFO    ] Checking for system updates...
[2026-06-05 07:07:30,447.447 INFO    ] 200
[2026-06-05 07:07:30,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:30,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:07:30,506.506 INFO    ] No update needed
[2026-06-05 07:07:30,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 07:07:30,543.543 INFO    ] 200
[2026-06-05 07:07:30,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:30,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:07:30,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:07:30,634.634 INFO    ] No camera update needed
[2026-06-05 07:07:30,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:07:30,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:07:30,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:07:30,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:07:32,693.693 INFO    ] ================================================
[2026-06-05 07:07:32,710.710 INFO    ] Launching Daemon at Fri Jun  5 07:07:32 IST 2026
[2026-06-05 07:07:32,721.721 INFO    ] ================================================
[2026-06-05 07:07:33,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:07:33
[2026-06-05 07:07:33,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:07:34,189.189 INFO    ] Initializing speech engine...
[2026-06-05 07:07:34,198.198 INFO    ] 2026-06-05 07:07:34
[2026-06-05 07:07:34,444.444 INFO    ] 2026-06-05 07:07:34
[2026-06-05 07:07:34,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:07:34,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:07:34,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:07:34,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:07:34,817.817 INFO    ] time= 05/06/2026 07:07:34
[2026-06-05 07:07:34,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:07:34,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:07:34,966.966 INFO    ] No existing commands found in stream
[2026-06-05 07:07:39,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:07:39,994.994 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 07:07:43,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:07:43,664.664 INFO    ] Checking for system updates...
[2026-06-05 07:07:43,704.704 INFO    ] 200
[2026-06-05 07:07:43,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:43,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:07:43,762.762 INFO    ] No update needed
[2026-06-05 07:07:43,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 07:07:43,799.799 INFO    ] 200
[2026-06-05 07:07:43,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:43,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:07:43,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:07:43,891.891 INFO    ] No camera update needed
[2026-06-05 07:07:43,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:07:43,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:07:43,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:07:43,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:07:45,948.948 INFO    ] ================================================
[2026-06-05 07:07:45,964.964 INFO    ] Launching Daemon at Fri Jun  5 07:07:45 IST 2026
[2026-06-05 07:07:45,976.976 INFO    ] ================================================
[2026-06-05 07:07:46,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:07:46
[2026-06-05 07:07:47,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:07:47,412.412 INFO    ] Initializing speech engine...
[2026-06-05 07:07:47,419.419 INFO    ] 2026-06-05 07:07:47
[2026-06-05 07:07:47,679.679 INFO    ] 2026-06-05 07:07:47
[2026-06-05 07:07:47,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:07:47,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:07:48,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:07:48,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:07:48,165.165 INFO    ] time= 05/06/2026 07:07:48
[2026-06-05 07:07:48,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:07:48,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:07:48,321.321 INFO    ] No existing commands found in stream
[2026-06-05 07:07:53,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:07:53,337.337 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 07:07:55,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:07:55,815.815 INFO    ] Checking for system updates...
[2026-06-05 07:07:55,851.851 INFO    ] 200
[2026-06-05 07:07:55,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:55,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:07:55,909.909 INFO    ] No update needed
[2026-06-05 07:07:55,911.911 INFO    ] Checking for camera pi updates...
[2026-06-05 07:07:55,946.946 INFO    ] 200
[2026-06-05 07:07:55,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:07:55,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:07:56,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:07:56,038.038 INFO    ] No camera update needed
[2026-06-05 07:07:56,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:07:56,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:07:56,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:07:56,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:07:58,094.094 INFO    ] ================================================
[2026-06-05 07:07:58,109.109 INFO    ] Launching Daemon at Fri Jun  5 07:07:58 IST 2026
[2026-06-05 07:07:58,120.120 INFO    ] ================================================
[2026-06-05 07:07:58,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:07:58
[2026-06-05 07:07:59,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:07:59,541.541 INFO    ] Initializing speech engine...
[2026-06-05 07:07:59,556.556 INFO    ] 2026-06-05 07:07:59
[2026-06-05 07:07:59,821.821 INFO    ] 2026-06-05 07:07:59
[2026-06-05 07:07:59,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:08:00,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:08:00,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:08:00,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:08:00,198.198 INFO    ] time= 05/06/2026 07:08:00
[2026-06-05 07:08:00,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:08:00,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:08:00,364.364 INFO    ] No existing commands found in stream
[2026-06-05 07:08:05,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:08:05,391.391 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 07:08:06,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:08:06,178.178 INFO    ] Checking for system updates...
[2026-06-05 07:08:06,216.216 INFO    ] 200
[2026-06-05 07:08:06,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:06,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:08:06,275.275 INFO    ] No update needed
[2026-06-05 07:08:06,278.278 INFO    ] Checking for camera pi updates...
[2026-06-05 07:08:06,316.316 INFO    ] 200
[2026-06-05 07:08:06,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:06,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:08:06,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:08:06,389.389 INFO    ] No camera update needed
[2026-06-05 07:08:06,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:08:06,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:08:06,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:08:06,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:08:08,446.446 INFO    ] ================================================
[2026-06-05 07:08:08,462.462 INFO    ] Launching Daemon at Fri Jun  5 07:08:08 IST 2026
[2026-06-05 07:08:08,474.474 INFO    ] ================================================
[2026-06-05 07:08:09,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:08:09
[2026-06-05 07:08:09,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:08:09,909.909 INFO    ] Initializing speech engine...
[2026-06-05 07:08:09,923.923 INFO    ] 2026-06-05 07:08:09
[2026-06-05 07:08:10,187.187 INFO    ] 2026-06-05 07:08:10
[2026-06-05 07:08:10,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:08:10,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:08:10,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:08:10,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:08:10,536.536 INFO    ] time= 05/06/2026 07:08:10
[2026-06-05 07:08:10,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:08:10,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:08:10,626.626 INFO    ] No existing commands found in stream
[2026-06-05 07:08:15,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:08:15,655.655 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 07:08:19,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:08:19,697.697 INFO    ] Checking for system updates...
[2026-06-05 07:08:19,735.735 INFO    ] 200
[2026-06-05 07:08:19,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:19,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:08:19,795.795 INFO    ] No update needed
[2026-06-05 07:08:19,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 07:08:19,834.834 INFO    ] 200
[2026-06-05 07:08:19,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:19,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:08:19,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:08:19,926.926 INFO    ] No camera update needed
[2026-06-05 07:08:19,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:08:19,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:08:19,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:08:19,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:08:21,988.988 INFO    ] ================================================
[2026-06-05 07:08:22,003.003 INFO    ] Launching Daemon at Fri Jun  5 07:08:21 IST 2026
[2026-06-05 07:08:22,014.014 INFO    ] ================================================
[2026-06-05 07:08:22,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:08:22
[2026-06-05 07:08:23,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:08:23,698.698 INFO    ] Initializing speech engine...
[2026-06-05 07:08:23,712.712 INFO    ] 2026-06-05 07:08:23
[2026-06-05 07:08:24,001.001 INFO    ] 2026-06-05 07:08:23
[2026-06-05 07:08:24,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:08:24,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:08:24,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:08:24,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:08:24,495.495 INFO    ] time= 05/06/2026 07:08:24
[2026-06-05 07:08:24,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:08:24,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:08:24,698.698 INFO    ] No existing commands found in stream
[2026-06-05 07:08:29,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:08:29,720.720 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 07:08:31,637.637 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:08:31,640.640 INFO    ] Checking for system updates...
[2026-06-05 07:08:31,683.683 INFO    ] 200
[2026-06-05 07:08:31,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:31,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:08:31,743.743 INFO    ] No update needed
[2026-06-05 07:08:31,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 07:08:31,781.781 INFO    ] 200
[2026-06-05 07:08:31,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:31,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:08:31,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:08:31,981.981 INFO    ] No camera update needed
[2026-06-05 07:08:31,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:08:31,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:08:31,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:08:31,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:08:34,042.042 INFO    ] ================================================
[2026-06-05 07:08:34,057.057 INFO    ] Launching Daemon at Fri Jun  5 07:08:34 IST 2026
[2026-06-05 07:08:34,068.068 INFO    ] ================================================
[2026-06-05 07:08:34,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:08:34
[2026-06-05 07:08:35,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:08:35,521.521 INFO    ] Initializing speech engine...
[2026-06-05 07:08:35,528.528 INFO    ] 2026-06-05 07:08:35
[2026-06-05 07:08:35,776.776 INFO    ] 2026-06-05 07:08:35
[2026-06-05 07:08:35,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:08:35,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:08:35,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:08:36,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:08:36,145.145 INFO    ] time= 05/06/2026 07:08:36
[2026-06-05 07:08:36,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:08:36,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:08:36,324.324 INFO    ] No existing commands found in stream
[2026-06-05 07:08:41,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:08:41,354.354 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 07:08:43,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:08:43,221.221 INFO    ] Checking for system updates...
[2026-06-05 07:08:43,260.260 INFO    ] 200
[2026-06-05 07:08:43,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:43,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:08:43,326.326 INFO    ] No update needed
[2026-06-05 07:08:43,329.329 INFO    ] Checking for camera pi updates...
[2026-06-05 07:08:43,363.363 INFO    ] 200
[2026-06-05 07:08:43,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:43,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:08:43,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:08:43,457.457 INFO    ] No camera update needed
[2026-06-05 07:08:43,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:08:43,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:08:43,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:08:43,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:08:45,515.515 INFO    ] ================================================
[2026-06-05 07:08:45,530.530 INFO    ] Launching Daemon at Fri Jun  5 07:08:45 IST 2026
[2026-06-05 07:08:45,541.541 INFO    ] ================================================
[2026-06-05 07:08:46,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:08:46
[2026-06-05 07:08:46,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:08:46,974.974 INFO    ] Initializing speech engine...
[2026-06-05 07:08:46,981.981 INFO    ] 2026-06-05 07:08:46
[2026-06-05 07:08:47,226.226 INFO    ] 2026-06-05 07:08:47
[2026-06-05 07:08:47,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:08:47,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:08:47,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:08:47,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:08:47,696.696 INFO    ] time= 05/06/2026 07:08:47
[2026-06-05 07:08:47,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:08:47,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:08:47,841.841 INFO    ] No existing commands found in stream
[2026-06-05 07:08:52,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:08:52,856.856 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 07:08:56,537.537 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:08:56,540.540 INFO    ] Checking for system updates...
[2026-06-05 07:08:56,576.576 INFO    ] 200
[2026-06-05 07:08:56,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:56,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:08:56,635.635 INFO    ] No update needed
[2026-06-05 07:08:56,637.637 INFO    ] Checking for camera pi updates...
[2026-06-05 07:08:56,675.675 INFO    ] 200
[2026-06-05 07:08:56,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:08:56,728.728 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:08:56,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:08:56,778.778 INFO    ] No camera update needed
[2026-06-05 07:08:56,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:08:56,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:08:56,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:08:56,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:08:58,832.832 INFO    ] ================================================
[2026-06-05 07:08:58,848.848 INFO    ] Launching Daemon at Fri Jun  5 07:08:58 IST 2026
[2026-06-05 07:08:58,859.859 INFO    ] ================================================
[2026-06-05 07:08:59,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:08:59
[2026-06-05 07:09:00,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:09:00,287.287 INFO    ] Initializing speech engine...
[2026-06-05 07:09:00,296.296 INFO    ] 2026-06-05 07:09:00
[2026-06-05 07:09:00,556.556 INFO    ] 2026-06-05 07:09:00
[2026-06-05 07:09:00,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:09:00,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:09:00,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:09:00,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:09:01,023.023 INFO    ] time= 05/06/2026 07:09:00
[2026-06-05 07:09:01,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:09:01,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:09:01,166.166 INFO    ] No existing commands found in stream
[2026-06-05 07:09:06,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:09:06,180.180 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 07:09:08,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:09:08,565.565 INFO    ] Checking for system updates...
[2026-06-05 07:09:08,602.602 INFO    ] 200
[2026-06-05 07:09:08,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:08,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:09:08,662.662 INFO    ] No update needed
[2026-06-05 07:09:08,664.664 INFO    ] Checking for camera pi updates...
[2026-06-05 07:09:08,700.700 INFO    ] 200
[2026-06-05 07:09:08,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:08,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:09:08,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:09:08,789.789 INFO    ] No camera update needed
[2026-06-05 07:09:08,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:09:08,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:09:08,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:09:08,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:09:10,845.845 INFO    ] ================================================
[2026-06-05 07:09:10,861.861 INFO    ] Launching Daemon at Fri Jun  5 07:09:10 IST 2026
[2026-06-05 07:09:10,872.872 INFO    ] ================================================
[2026-06-05 07:09:11,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:09:11
[2026-06-05 07:09:12,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:09:12,499.499 INFO    ] Initializing speech engine...
[2026-06-05 07:09:12,507.507 INFO    ] 2026-06-05 07:09:12
[2026-06-05 07:09:12,782.782 INFO    ] 2026-06-05 07:09:12
[2026-06-05 07:09:12,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:09:13,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:09:13,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:09:13,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:09:13,331.331 INFO    ] time= 05/06/2026 07:09:13
[2026-06-05 07:09:13,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:09:13,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:09:13,478.478 INFO    ] No existing commands found in stream
[2026-06-05 07:09:18,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:09:18,502.502 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 07:09:20,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:09:20,351.351 INFO    ] Checking for system updates...
[2026-06-05 07:09:20,393.393 INFO    ] 200
[2026-06-05 07:09:20,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:20,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:09:20,459.459 INFO    ] No update needed
[2026-06-05 07:09:20,461.461 INFO    ] Checking for camera pi updates...
[2026-06-05 07:09:20,499.499 INFO    ] 200
[2026-06-05 07:09:20,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:20,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:09:20,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:09:20,587.587 INFO    ] No camera update needed
[2026-06-05 07:09:20,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:09:20,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:09:20,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:09:20,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:09:22,642.642 INFO    ] ================================================
[2026-06-05 07:09:22,658.658 INFO    ] Launching Daemon at Fri Jun  5 07:09:22 IST 2026
[2026-06-05 07:09:22,670.670 INFO    ] ================================================
[2026-06-05 07:09:23,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:09:23
[2026-06-05 07:09:23,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:09:24,089.089 INFO    ] Initializing speech engine...
[2026-06-05 07:09:24,103.103 INFO    ] 2026-06-05 07:09:24
[2026-06-05 07:09:24,368.368 INFO    ] 2026-06-05 07:09:24
[2026-06-05 07:09:24,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:09:24,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:09:24,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:09:24,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:09:24,846.846 INFO    ] time= 05/06/2026 07:09:24
[2026-06-05 07:09:24,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:09:24,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:09:24,999.999 INFO    ] No existing commands found in stream
[2026-06-05 07:09:30,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:09:30,013.013 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 07:09:32,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:09:32,915.915 INFO    ] Checking for system updates...
[2026-06-05 07:09:32,952.952 INFO    ] 200
[2026-06-05 07:09:32,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:33,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:09:33,010.010 INFO    ] No update needed
[2026-06-05 07:09:33,014.014 INFO    ] Checking for camera pi updates...
[2026-06-05 07:09:33,065.065 INFO    ] 200
[2026-06-05 07:09:33,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:33,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:09:33,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:09:33,157.157 INFO    ] No camera update needed
[2026-06-05 07:09:33,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:09:33,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:09:33,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:09:33,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:09:35,213.213 INFO    ] ================================================
[2026-06-05 07:09:35,231.231 INFO    ] Launching Daemon at Fri Jun  5 07:09:35 IST 2026
[2026-06-05 07:09:35,242.242 INFO    ] ================================================
[2026-06-05 07:09:35,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:09:35
[2026-06-05 07:09:36,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:09:36,867.867 INFO    ] Initializing speech engine...
[2026-06-05 07:09:36,881.881 INFO    ] 2026-06-05 07:09:36
[2026-06-05 07:09:37,155.155 INFO    ] 2026-06-05 07:09:37
[2026-06-05 07:09:37,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:09:37,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:09:37,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:09:37,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:09:37,625.625 INFO    ] time= 05/06/2026 07:09:37
[2026-06-05 07:09:37,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:09:37,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:09:37,800.800 INFO    ] No existing commands found in stream
[2026-06-05 07:09:42,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:09:42,811.811 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 07:09:44,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:09:44,534.534 INFO    ] Checking for system updates...
[2026-06-05 07:09:44,571.571 INFO    ] 200
[2026-06-05 07:09:44,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:44,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:09:44,631.631 INFO    ] No update needed
[2026-06-05 07:09:44,634.634 INFO    ] Checking for camera pi updates...
[2026-06-05 07:09:44,672.672 INFO    ] 200
[2026-06-05 07:09:44,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:44,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:09:44,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:09:44,782.782 INFO    ] No camera update needed
[2026-06-05 07:09:44,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:09:44,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:09:44,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:09:44,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:09:46,842.842 INFO    ] ================================================
[2026-06-05 07:09:46,859.859 INFO    ] Launching Daemon at Fri Jun  5 07:09:46 IST 2026
[2026-06-05 07:09:46,871.871 INFO    ] ================================================
[2026-06-05 07:09:47,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:09:47
[2026-06-05 07:09:48,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:09:48,301.301 INFO    ] Initializing speech engine...
[2026-06-05 07:09:48,312.312 INFO    ] 2026-06-05 07:09:48
[2026-06-05 07:09:48,563.563 INFO    ] 2026-06-05 07:09:48
[2026-06-05 07:09:48,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:09:48,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:09:48,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:09:48,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:09:48,923.923 INFO    ] time= 05/06/2026 07:09:48
[2026-06-05 07:09:48,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:09:48,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:09:49,099.099 INFO    ] No existing commands found in stream
[2026-06-05 07:09:54,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:09:54,132.132 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 07:09:56,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:09:56,012.012 INFO    ] Checking for system updates...
[2026-06-05 07:09:56,049.049 INFO    ] 200
[2026-06-05 07:09:56,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:56,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:09:56,110.110 INFO    ] No update needed
[2026-06-05 07:09:56,112.112 INFO    ] Checking for camera pi updates...
[2026-06-05 07:09:56,150.150 INFO    ] 200
[2026-06-05 07:09:56,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:09:56,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:09:56,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:09:56,238.238 INFO    ] No camera update needed
[2026-06-05 07:09:56,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:09:56,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:09:56,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:09:56,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:09:58,294.294 INFO    ] ================================================
[2026-06-05 07:09:58,309.309 INFO    ] Launching Daemon at Fri Jun  5 07:09:58 IST 2026
[2026-06-05 07:09:58,321.321 INFO    ] ================================================
[2026-06-05 07:09:58,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:09:58
[2026-06-05 07:09:59,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:09:59,742.742 INFO    ] Initializing speech engine...
[2026-06-05 07:09:59,759.759 INFO    ] 2026-06-05 07:09:59
[2026-06-05 07:10:00,045.045 INFO    ] 2026-06-05 07:10:00
[2026-06-05 07:10:00,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:10:00,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:10:00,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:10:00,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:10:00,444.444 INFO    ] time= 05/06/2026 07:10:00
[2026-06-05 07:10:00,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:10:00,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:10:00,552.552 INFO    ] No existing commands found in stream
[2026-06-05 07:10:05,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:10:05,568.568 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 07:10:09,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:10:09,779.779 INFO    ] Checking for system updates...
[2026-06-05 07:10:09,815.815 INFO    ] 200
[2026-06-05 07:10:09,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:10:09,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:10:09,875.875 INFO    ] No update needed
[2026-06-05 07:10:09,877.877 INFO    ] Checking for camera pi updates...
[2026-06-05 07:10:09,914.914 INFO    ] 200
[2026-06-05 07:10:09,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:10:09,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:10:09,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:10:10,000.000 INFO    ] No camera update needed
[2026-06-05 07:10:10,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:10:10,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:10:10,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:10:10,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:10:12,055.055 INFO    ] ================================================
[2026-06-05 07:10:12,071.071 INFO    ] Launching Daemon at Fri Jun  5 07:10:12 IST 2026
[2026-06-05 07:10:12,083.083 INFO    ] ================================================
[2026-06-05 07:10:12,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:10:12
[2026-06-05 07:10:13,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:10:13,700.700 INFO    ] Initializing speech engine...
[2026-06-05 07:10:13,712.712 INFO    ] 2026-06-05 07:10:13
[2026-06-05 07:10:14,019.019 INFO    ] 2026-06-05 07:10:13
[2026-06-05 07:10:14,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:10:14,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:10:14,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:10:14,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:10:14,532.532 INFO    ] time= 05/06/2026 07:10:14
[2026-06-05 07:10:14,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:10:14,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:10:14,687.687 INFO    ] No existing commands found in stream
[2026-06-05 07:10:19,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:10:19,713.713 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 07:10:21,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:10:21,925.925 INFO    ] Checking for system updates...
[2026-06-05 07:10:21,967.967 INFO    ] 200
[2026-06-05 07:10:21,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:10:22,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:10:22,034.034 INFO    ] No update needed
[2026-06-05 07:10:22,036.036 INFO    ] Checking for camera pi updates...
[2026-06-05 07:10:22,075.075 INFO    ] 200
[2026-06-05 07:10:22,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:10:22,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:10:22,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:10:22,167.167 INFO    ] No camera update needed
[2026-06-05 07:10:22,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:10:22,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:10:22,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:10:22,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:10:24,226.226 INFO    ] ================================================
[2026-06-05 07:10:24,242.242 INFO    ] Launching Daemon at Fri Jun  5 07:10:24 IST 2026
[2026-06-05 07:10:24,253.253 INFO    ] ================================================
[2026-06-05 07:10:24,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:10:24
[2026-06-05 07:10:25,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:10:25,862.862 INFO    ] Initializing speech engine...
[2026-06-05 07:10:25,869.869 INFO    ] 2026-06-05 07:10:25
[2026-06-05 07:10:26,162.162 INFO    ] 2026-06-05 07:10:26
[2026-06-05 07:10:26,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:10:26,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:10:26,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:10:26,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:10:26,614.614 INFO    ] time= 05/06/2026 07:10:26
[2026-06-05 07:10:26,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:10:26,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:10:26,816.816 INFO    ] No existing commands found in stream
[2026-06-05 07:10:31,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:10:31,847.847 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 07:10:33,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:10:33,925.925 INFO    ] Checking for system updates...
[2026-06-05 07:10:33,963.963 INFO    ] 200
[2026-06-05 07:10:33,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:10:34,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:10:34,022.022 INFO    ] No update needed
[2026-06-05 07:10:34,025.025 INFO    ] Checking for camera pi updates...
[2026-06-05 07:10:34,060.060 INFO    ] 200
[2026-06-05 07:10:34,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:10:34,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:10:34,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:10:34,256.256 INFO    ] No camera update needed
[2026-06-05 07:10:34,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:10:34,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:10:34,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:10:34,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:10:36,315.315 INFO    ] ================================================
[2026-06-05 07:10:36,330.330 INFO    ] Launching Daemon at Fri Jun  5 07:10:36 IST 2026
[2026-06-05 07:10:36,342.342 INFO    ] ================================================
[2026-06-05 07:10:36,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:10:36
[2026-06-05 07:10:37,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:10:37,841.841 INFO    ] Initializing speech engine...
[2026-06-05 07:10:37,855.855 INFO    ] 2026-06-05 07:10:37
[2026-06-05 07:10:38,134.134 INFO    ] 2026-06-05 07:10:38
[2026-06-05 07:10:38,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:10:38,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:10:38,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:10:38,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:10:38,614.614 INFO    ] time= 05/06/2026 07:10:38
[2026-06-05 07:10:38,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:10:38,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:10:38,806.806 INFO    ] No existing commands found in stream
[2026-06-05 07:10:43,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:10:43,842.842 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 07:10:46,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:10:46,178.178 INFO    ] Checking for system updates...
[2026-06-05 07:10:46,215.215 INFO    ] 200
[2026-06-05 07:10:46,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:10:46,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:10:46,282.282 INFO    ] No update needed
[2026-06-05 07:10:46,285.285 INFO    ] Checking for camera pi updates...
[2026-06-05 07:10:46,320.320 INFO    ] 200
[2026-06-05 07:10:46,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:10:46,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:10:46,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:10:46,416.416 INFO    ] No camera update needed
[2026-06-05 07:10:46,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:10:46,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:10:46,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:10:46,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:10:48,472.472 INFO    ] ================================================
[2026-06-05 07:10:48,488.488 INFO    ] Launching Daemon at Fri Jun  5 07:10:48 IST 2026
[2026-06-05 07:10:48,499.499 INFO    ] ================================================
[2026-06-05 07:10:49,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:10:49
[2026-06-05 07:10:49,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:10:50,055.055 INFO    ] Initializing speech engine...
[2026-06-05 07:10:50,066.066 INFO    ] 2026-06-05 07:10:50
[2026-06-05 07:10:50,314.314 INFO    ] 2026-06-05 07:10:50
[2026-06-05 07:10:50,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:10:50,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:10:50,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:10:50,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:10:50,753.753 INFO    ] time= 05/06/2026 07:10:50
[2026-06-05 07:10:50,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:10:50,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:10:50,933.933 INFO    ] No existing commands found in stream
[2026-06-05 07:10:55,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:10:55,948.948 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 07:10:59,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:10:59,854.854 INFO    ] Checking for system updates...
[2026-06-05 07:10:59,891.891 INFO    ] 200
[2026-06-05 07:10:59,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:10:59,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:10:59,951.951 INFO    ] No update needed
[2026-06-05 07:10:59,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 07:10:59,988.988 INFO    ] 200
[2026-06-05 07:10:59,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:11:00,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:11:00,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:11:00,075.075 INFO    ] No camera update needed
[2026-06-05 07:11:00,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:11:00,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:11:00,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:11:00,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:11:02,134.134 INFO    ] ================================================
[2026-06-05 07:11:02,156.156 INFO    ] Launching Daemon at Fri Jun  5 07:11:02 IST 2026
[2026-06-05 07:11:02,169.169 INFO    ] ================================================
[2026-06-05 07:11:02,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:11:02
[2026-06-05 07:11:03,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:11:03,737.737 INFO    ] Initializing speech engine...
[2026-06-05 07:11:03,746.746 INFO    ] 2026-06-05 07:11:03
[2026-06-05 07:11:04,028.028 INFO    ] 2026-06-05 07:11:04
[2026-06-05 07:11:04,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:11:04,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:11:04,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:11:04,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:11:04,562.562 INFO    ] time= 05/06/2026 07:11:04
[2026-06-05 07:11:04,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:11:04,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:11:04,693.693 INFO    ] No existing commands found in stream
[2026-06-05 07:11:09,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:11:09,728.728 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-05 07:11:12,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:11:12,826.826 INFO    ] Checking for system updates...
[2026-06-05 07:11:12,862.862 INFO    ] 200
[2026-06-05 07:11:12,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:11:12,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:11:12,921.921 INFO    ] No update needed
[2026-06-05 07:11:12,924.924 INFO    ] Checking for camera pi updates...
[2026-06-05 07:11:12,959.959 INFO    ] 200
[2026-06-05 07:11:12,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:11:13,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:11:13,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:11:13,051.051 INFO    ] No camera update needed
[2026-06-05 07:11:13,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:11:13,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:11:13,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:11:13,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:11:15,108.108 INFO    ] ================================================
[2026-06-05 07:11:15,124.124 INFO    ] Launching Daemon at Fri Jun  5 07:11:15 IST 2026
[2026-06-05 07:11:15,135.135 INFO    ] ================================================
[2026-06-05 07:11:15,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:11:15
[2026-06-05 07:11:16,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:11:16,561.561 INFO    ] Initializing speech engine...
[2026-06-05 07:11:16,571.571 INFO    ] 2026-06-05 07:11:16
[2026-06-05 07:11:16,816.816 INFO    ] 2026-06-05 07:11:16
[2026-06-05 07:11:16,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:11:17,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:11:17,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:11:17,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:11:17,286.286 INFO    ] time= 05/06/2026 07:11:17
[2026-06-05 07:11:17,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:11:17,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:11:17,494.494 INFO    ] No existing commands found in stream
[2026-06-05 07:11:22,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:11:22,519.519 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 07:11:23,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:11:23,497.497 INFO    ] Checking for system updates...
[2026-06-05 07:11:23,534.534 INFO    ] 200
[2026-06-05 07:11:23,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:11:23,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:11:23,594.594 INFO    ] No update needed
[2026-06-05 07:11:23,596.596 INFO    ] Checking for camera pi updates...
[2026-06-05 07:11:23,631.631 INFO    ] 200
[2026-06-05 07:11:23,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:11:23,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:11:23,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:11:23,723.723 INFO    ] No camera update needed
[2026-06-05 07:11:23,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:11:23,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:11:23,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:11:23,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:11:25,779.779 INFO    ] ================================================
[2026-06-05 07:11:25,794.794 INFO    ] Launching Daemon at Fri Jun  5 07:11:25 IST 2026
[2026-06-05 07:11:25,806.806 INFO    ] ================================================
[2026-06-05 07:11:26,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:11:26
[2026-06-05 07:11:26,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:11:27,247.247 INFO    ] Initializing speech engine...
[2026-06-05 07:11:27,256.256 INFO    ] 2026-06-05 07:11:27
[2026-06-05 07:11:27,508.508 INFO    ] 2026-06-05 07:11:27
[2026-06-05 07:11:27,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:11:27,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:11:27,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:11:27,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:11:27,882.882 INFO    ] time= 05/06/2026 07:11:27
[2026-06-05 07:11:27,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:11:27,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:11:28,048.048 INFO    ] No existing commands found in stream
[2026-06-05 07:11:33,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:11:33,078.078 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 07:11:36,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:11:36,625.625 INFO    ] Checking for system updates...
[2026-06-05 07:11:36,660.660 INFO    ] 200
[2026-06-05 07:11:36,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:11:36,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:11:36,719.719 INFO    ] No update needed
[2026-06-05 07:11:36,722.722 INFO    ] Checking for camera pi updates...
[2026-06-05 07:11:36,755.755 INFO    ] 200
[2026-06-05 07:11:36,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:11:36,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:11:36,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:11:36,850.850 INFO    ] No camera update needed
[2026-06-05 07:11:36,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:11:36,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:11:36,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:11:36,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:11:38,906.906 INFO    ] ================================================
[2026-06-05 07:11:38,921.921 INFO    ] Launching Daemon at Fri Jun  5 07:11:38 IST 2026
[2026-06-05 07:11:38,932.932 INFO    ] ================================================
[2026-06-05 07:11:39,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:11:39
[2026-06-05 07:11:40,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:11:40,379.379 INFO    ] Initializing speech engine...
[2026-06-05 07:11:40,401.401 INFO    ] 2026-06-05 07:11:40
[2026-06-05 07:11:40,697.697 INFO    ] 2026-06-05 07:11:40
[2026-06-05 07:11:40,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:11:40,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:11:40,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:11:41,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:11:41,109.109 INFO    ] time= 05/06/2026 07:11:41
[2026-06-05 07:11:41,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:11:41,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:11:41,201.201 INFO    ] No existing commands found in stream
[2026-06-05 07:11:46,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:11:46,214.214 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 07:11:49,175.175 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:11:49,178.178 INFO    ] Checking for system updates...
[2026-06-05 07:11:49,213.213 INFO    ] 200
[2026-06-05 07:11:49,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:11:49,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:11:49,271.271 INFO    ] No update needed
[2026-06-05 07:11:49,273.273 INFO    ] Checking for camera pi updates...
[2026-06-05 07:11:49,308.308 INFO    ] 200
[2026-06-05 07:11:49,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:11:49,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:11:49,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:11:49,398.398 INFO    ] No camera update needed
[2026-06-05 07:11:49,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:11:49,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:11:49,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:11:49,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:11:51,454.454 INFO    ] ================================================
[2026-06-05 07:11:51,469.469 INFO    ] Launching Daemon at Fri Jun  5 07:11:51 IST 2026
[2026-06-05 07:11:51,480.480 INFO    ] ================================================
[2026-06-05 07:11:52,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:11:52
[2026-06-05 07:11:52,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:11:52,901.901 INFO    ] Initializing speech engine...
[2026-06-05 07:11:52,910.910 INFO    ] 2026-06-05 07:11:52
[2026-06-05 07:11:53,162.162 INFO    ] 2026-06-05 07:11:53
[2026-06-05 07:11:53,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:11:53,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:11:53,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:11:53,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:11:53,523.523 INFO    ] time= 05/06/2026 07:11:53
[2026-06-05 07:11:53,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:11:53,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:11:53,693.693 INFO    ] No existing commands found in stream
[2026-06-05 07:11:58,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:11:58,732.732 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 07:12:02,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:12:02,402.402 INFO    ] Checking for system updates...
[2026-06-05 07:12:02,439.439 INFO    ] 200
[2026-06-05 07:12:02,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:02,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:12:02,510.510 INFO    ] No update needed
[2026-06-05 07:12:02,514.514 INFO    ] Checking for camera pi updates...
[2026-06-05 07:12:02,567.567 INFO    ] 200
[2026-06-05 07:12:02,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:02,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:12:02,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:12:02,687.687 INFO    ] No camera update needed
[2026-06-05 07:12:02,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:12:02,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:12:02,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:12:02,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:12:04,743.743 INFO    ] ================================================
[2026-06-05 07:12:04,758.758 INFO    ] Launching Daemon at Fri Jun  5 07:12:04 IST 2026
[2026-06-05 07:12:04,769.769 INFO    ] ================================================
[2026-06-05 07:12:05,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:12:05
[2026-06-05 07:12:06,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:12:06,339.339 INFO    ] Initializing speech engine...
[2026-06-05 07:12:06,350.350 INFO    ] 2026-06-05 07:12:06
[2026-06-05 07:12:06,612.612 INFO    ] 2026-06-05 07:12:06
[2026-06-05 07:12:06,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:12:06,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:12:06,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:12:07,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:12:07,072.072 INFO    ] time= 05/06/2026 07:12:07
[2026-06-05 07:12:07,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:12:07,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:12:07,260.260 INFO    ] No existing commands found in stream
[2026-06-05 07:12:12,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:12:12,293.293 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 07:12:13,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:12:13,899.899 INFO    ] Checking for system updates...
[2026-06-05 07:12:13,935.935 INFO    ] 200
[2026-06-05 07:12:13,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:13,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:12:13,993.993 INFO    ] No update needed
[2026-06-05 07:12:13,996.996 INFO    ] Checking for camera pi updates...
[2026-06-05 07:12:14,030.030 INFO    ] 200
[2026-06-05 07:12:14,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:14,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:12:14,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:12:14,113.113 INFO    ] No camera update needed
[2026-06-05 07:12:14,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:12:14,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:12:14,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:12:14,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:12:16,172.172 INFO    ] ================================================
[2026-06-05 07:12:16,188.188 INFO    ] Launching Daemon at Fri Jun  5 07:12:16 IST 2026
[2026-06-05 07:12:16,199.199 INFO    ] ================================================
[2026-06-05 07:12:16,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:12:16
[2026-06-05 07:12:17,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:12:17,630.630 INFO    ] Initializing speech engine...
[2026-06-05 07:12:17,639.639 INFO    ] 2026-06-05 07:12:17
[2026-06-05 07:12:17,887.887 INFO    ] 2026-06-05 07:12:17
[2026-06-05 07:12:17,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:12:18,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:12:18,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:12:18,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:12:18,257.257 INFO    ] time= 05/06/2026 07:12:18
[2026-06-05 07:12:18,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:12:18,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:12:18,335.335 INFO    ] No existing commands found in stream
[2026-06-05 07:12:23,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:12:23,368.368 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 07:12:26,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:12:26,104.104 INFO    ] Checking for system updates...
[2026-06-05 07:12:26,140.140 INFO    ] 200
[2026-06-05 07:12:26,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:26,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:12:26,199.199 INFO    ] No update needed
[2026-06-05 07:12:26,201.201 INFO    ] Checking for camera pi updates...
[2026-06-05 07:12:26,240.240 INFO    ] 200
[2026-06-05 07:12:26,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:26,283.283 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:12:26,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:12:26,327.327 INFO    ] No camera update needed
[2026-06-05 07:12:26,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:12:26,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:12:26,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:12:26,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:12:28,386.386 INFO    ] ================================================
[2026-06-05 07:12:28,401.401 INFO    ] Launching Daemon at Fri Jun  5 07:12:28 IST 2026
[2026-06-05 07:12:28,413.413 INFO    ] ================================================
[2026-06-05 07:12:29,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:12:29
[2026-06-05 07:12:29,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:12:30,105.105 INFO    ] Initializing speech engine...
[2026-06-05 07:12:30,110.110 INFO    ] 2026-06-05 07:12:30
[2026-06-05 07:12:30,400.400 INFO    ] 2026-06-05 07:12:30
[2026-06-05 07:12:30,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:12:30,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:12:30,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:12:30,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:12:30,932.932 INFO    ] time= 05/06/2026 07:12:30
[2026-06-05 07:12:30,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:12:30,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:12:31,093.093 INFO    ] No existing commands found in stream
[2026-06-05 07:12:36,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:12:36,122.122 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 07:12:40,277.277 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:12:40,280.280 INFO    ] Checking for system updates...
[2026-06-05 07:12:40,317.317 INFO    ] 200
[2026-06-05 07:12:40,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:40,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:12:40,374.374 INFO    ] No update needed
[2026-06-05 07:12:40,377.377 INFO    ] Checking for camera pi updates...
[2026-06-05 07:12:40,411.411 INFO    ] 200
[2026-06-05 07:12:40,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:40,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:12:40,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:12:40,605.605 INFO    ] No camera update needed
[2026-06-05 07:12:40,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:12:40,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:12:40,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:12:40,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:12:42,660.660 INFO    ] ================================================
[2026-06-05 07:12:42,676.676 INFO    ] Launching Daemon at Fri Jun  5 07:12:42 IST 2026
[2026-06-05 07:12:42,688.688 INFO    ] ================================================
[2026-06-05 07:12:43,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:12:43
[2026-06-05 07:12:44,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:12:44,391.391 INFO    ] Initializing speech engine...
[2026-06-05 07:12:44,404.404 INFO    ] 2026-06-05 07:12:44
[2026-06-05 07:12:44,723.723 INFO    ] 2026-06-05 07:12:44
[2026-06-05 07:12:44,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:12:45,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:12:45,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:12:45,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:12:45,253.253 INFO    ] time= 05/06/2026 07:12:45
[2026-06-05 07:12:45,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:12:45,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:12:45,412.412 INFO    ] No existing commands found in stream
[2026-06-05 07:12:50,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:12:50,437.437 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 07:12:52,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:12:52,828.828 INFO    ] Checking for system updates...
[2026-06-05 07:12:52,867.867 INFO    ] 200
[2026-06-05 07:12:52,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:52,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:12:52,936.936 INFO    ] No update needed
[2026-06-05 07:12:52,940.940 INFO    ] Checking for camera pi updates...
[2026-06-05 07:12:52,980.980 INFO    ] 200
[2026-06-05 07:12:52,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:12:53,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:12:53,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:12:53,078.078 INFO    ] No camera update needed
[2026-06-05 07:12:53,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:12:53,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:12:53,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:12:53,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:12:55,134.134 INFO    ] ================================================
[2026-06-05 07:12:55,150.150 INFO    ] Launching Daemon at Fri Jun  5 07:12:55 IST 2026
[2026-06-05 07:12:55,161.161 INFO    ] ================================================
[2026-06-05 07:12:55,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:12:55
[2026-06-05 07:12:56,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:12:56,767.767 INFO    ] Initializing speech engine...
[2026-06-05 07:12:56,777.777 INFO    ] 2026-06-05 07:12:56
[2026-06-05 07:12:57,089.089 INFO    ] 2026-06-05 07:12:57
[2026-06-05 07:12:57,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:12:57,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:12:57,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:12:57,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:12:57,594.594 INFO    ] time= 05/06/2026 07:12:57
[2026-06-05 07:12:57,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:12:57,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:12:57,727.727 INFO    ] No existing commands found in stream
[2026-06-05 07:13:02,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:13:02,762.762 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 07:13:05,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:13:05,352.352 INFO    ] Checking for system updates...
[2026-06-05 07:13:05,390.390 INFO    ] 200
[2026-06-05 07:13:05,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:05,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:13:05,457.457 INFO    ] No update needed
[2026-06-05 07:13:05,460.460 INFO    ] Checking for camera pi updates...
[2026-06-05 07:13:05,495.495 INFO    ] 200
[2026-06-05 07:13:05,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:05,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:13:05,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:13:05,576.576 INFO    ] No camera update needed
[2026-06-05 07:13:05,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:13:05,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:13:05,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:13:05,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:13:07,635.635 INFO    ] ================================================
[2026-06-05 07:13:07,650.650 INFO    ] Launching Daemon at Fri Jun  5 07:13:07 IST 2026
[2026-06-05 07:13:07,661.661 INFO    ] ================================================
[2026-06-05 07:13:08,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:13:08
[2026-06-05 07:13:08,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:13:09,070.070 INFO    ] Initializing speech engine...
[2026-06-05 07:13:09,083.083 INFO    ] 2026-06-05 07:13:09
[2026-06-05 07:13:09,373.373 INFO    ] 2026-06-05 07:13:09
[2026-06-05 07:13:09,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:13:09,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:13:09,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:13:09,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:13:09,757.757 INFO    ] time= 05/06/2026 07:13:09
[2026-06-05 07:13:09,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:13:09,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:13:09,883.883 INFO    ] No existing commands found in stream
[2026-06-05 07:13:14,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:13:14,899.899 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 07:13:16,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:13:16,042.042 INFO    ] Checking for system updates...
[2026-06-05 07:13:16,079.079 INFO    ] 200
[2026-06-05 07:13:16,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:16,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:13:16,140.140 INFO    ] No update needed
[2026-06-05 07:13:16,143.143 INFO    ] Checking for camera pi updates...
[2026-06-05 07:13:16,181.181 INFO    ] 200
[2026-06-05 07:13:16,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:16,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:13:16,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:13:16,280.280 INFO    ] No camera update needed
[2026-06-05 07:13:16,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:13:16,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:13:16,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:13:16,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:13:18,338.338 INFO    ] ================================================
[2026-06-05 07:13:18,353.353 INFO    ] Launching Daemon at Fri Jun  5 07:13:18 IST 2026
[2026-06-05 07:13:18,364.364 INFO    ] ================================================
[2026-06-05 07:13:18,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:13:18
[2026-06-05 07:13:19,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:13:19,785.785 INFO    ] Initializing speech engine...
[2026-06-05 07:13:19,808.808 INFO    ] 2026-06-05 07:13:19
[2026-06-05 07:13:20,063.063 INFO    ] 2026-06-05 07:13:20
[2026-06-05 07:13:20,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:13:20,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:13:20,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:13:20,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:13:20,442.442 INFO    ] time= 05/06/2026 07:13:20
[2026-06-05 07:13:20,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:13:20,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:13:20,602.602 INFO    ] No existing commands found in stream
[2026-06-05 07:13:25,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:13:25,635.635 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 07:13:28,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:13:28,582.582 INFO    ] Checking for system updates...
[2026-06-05 07:13:28,619.619 INFO    ] 200
[2026-06-05 07:13:28,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:28,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:13:28,677.677 INFO    ] No update needed
[2026-06-05 07:13:28,679.679 INFO    ] Checking for camera pi updates...
[2026-06-05 07:13:28,717.717 INFO    ] 200
[2026-06-05 07:13:28,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:28,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:13:28,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:13:28,789.789 INFO    ] No camera update needed
[2026-06-05 07:13:28,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:13:28,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:13:28,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:13:28,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:13:30,846.846 INFO    ] ================================================
[2026-06-05 07:13:30,861.861 INFO    ] Launching Daemon at Fri Jun  5 07:13:30 IST 2026
[2026-06-05 07:13:30,871.871 INFO    ] ================================================
[2026-06-05 07:13:31,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:13:31
[2026-06-05 07:13:32,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:13:32,429.429 INFO    ] Initializing speech engine...
[2026-06-05 07:13:32,445.445 INFO    ] 2026-06-05 07:13:32
[2026-06-05 07:13:32,711.711 INFO    ] 2026-06-05 07:13:32
[2026-06-05 07:13:32,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:13:32,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:13:32,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:13:33,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:13:33,160.160 INFO    ] time= 05/06/2026 07:13:33
[2026-06-05 07:13:33,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:13:33,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:13:33,272.272 INFO    ] No existing commands found in stream
[2026-06-05 07:13:38,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:13:38,287.287 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 07:13:42,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:13:42,359.359 INFO    ] Checking for system updates...
[2026-06-05 07:13:42,396.396 INFO    ] 200
[2026-06-05 07:13:42,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:42,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:13:42,453.453 INFO    ] No update needed
[2026-06-05 07:13:42,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 07:13:42,490.490 INFO    ] 200
[2026-06-05 07:13:42,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:42,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:13:42,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:13:42,585.585 INFO    ] No camera update needed
[2026-06-05 07:13:42,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:13:42,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:13:42,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:13:42,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:13:44,642.642 INFO    ] ================================================
[2026-06-05 07:13:44,657.657 INFO    ] Launching Daemon at Fri Jun  5 07:13:44 IST 2026
[2026-06-05 07:13:44,668.668 INFO    ] ================================================
[2026-06-05 07:13:45,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:13:45
[2026-06-05 07:13:45,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:13:46,078.078 INFO    ] Initializing speech engine...
[2026-06-05 07:13:46,085.085 INFO    ] 2026-06-05 07:13:46
[2026-06-05 07:13:46,384.384 INFO    ] 2026-06-05 07:13:46
[2026-06-05 07:13:46,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:13:46,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:13:46,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:13:46,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:13:46,866.866 INFO    ] time= 05/06/2026 07:13:46
[2026-06-05 07:13:46,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:13:46,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:13:47,006.006 INFO    ] No existing commands found in stream
[2026-06-05 07:13:52,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:13:52,020.020 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 07:13:53,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:13:53,177.177 INFO    ] Checking for system updates...
[2026-06-05 07:13:53,213.213 INFO    ] 200
[2026-06-05 07:13:53,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:53,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:13:53,270.270 INFO    ] No update needed
[2026-06-05 07:13:53,273.273 INFO    ] Checking for camera pi updates...
[2026-06-05 07:13:53,306.306 INFO    ] 200
[2026-06-05 07:13:53,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:13:53,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:13:53,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:13:53,393.393 INFO    ] No camera update needed
[2026-06-05 07:13:53,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:13:53,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:13:53,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:13:53,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:13:55,448.448 INFO    ] ================================================
[2026-06-05 07:13:55,463.463 INFO    ] Launching Daemon at Fri Jun  5 07:13:55 IST 2026
[2026-06-05 07:13:55,474.474 INFO    ] ================================================
[2026-06-05 07:13:56,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:13:56
[2026-06-05 07:13:56,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:13:57,122.122 INFO    ] Initializing speech engine...
[2026-06-05 07:13:57,136.136 INFO    ] 2026-06-05 07:13:57
[2026-06-05 07:13:57,423.423 INFO    ] 2026-06-05 07:13:57
[2026-06-05 07:13:57,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:13:57,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:13:57,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:13:57,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:13:57,890.890 INFO    ] time= 05/06/2026 07:13:57
[2026-06-05 07:13:57,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:13:57,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:13:58,017.017 INFO    ] No existing commands found in stream
[2026-06-05 07:14:03,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:14:03,031.031 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 07:14:07,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:14:07,251.251 INFO    ] Checking for system updates...
[2026-06-05 07:14:07,289.289 INFO    ] 200
[2026-06-05 07:14:07,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:07,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:14:07,357.357 INFO    ] No update needed
[2026-06-05 07:14:07,360.360 INFO    ] Checking for camera pi updates...
[2026-06-05 07:14:07,396.396 INFO    ] 200
[2026-06-05 07:14:07,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:07,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:14:07,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:14:07,489.489 INFO    ] No camera update needed
[2026-06-05 07:14:07,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:14:07,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:14:07,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:14:07,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:14:09,549.549 INFO    ] ================================================
[2026-06-05 07:14:09,564.564 INFO    ] Launching Daemon at Fri Jun  5 07:14:09 IST 2026
[2026-06-05 07:14:09,574.574 INFO    ] ================================================
[2026-06-05 07:14:10,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:14:10
[2026-06-05 07:14:10,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:14:10,996.996 INFO    ] Initializing speech engine...
[2026-06-05 07:14:11,006.006 INFO    ] 2026-06-05 07:14:10
[2026-06-05 07:14:11,250.250 INFO    ] 2026-06-05 07:14:11
[2026-06-05 07:14:11,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:14:11,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:14:11,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:14:11,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:14:11,805.805 INFO    ] time= 05/06/2026 07:14:11
[2026-06-05 07:14:11,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:14:11,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:14:11,940.940 INFO    ] No existing commands found in stream
[2026-06-05 07:14:16,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:14:16,970.970 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 07:14:21,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:14:21,003.003 INFO    ] Checking for system updates...
[2026-06-05 07:14:21,039.039 INFO    ] 200
[2026-06-05 07:14:21,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:21,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:14:21,098.098 INFO    ] No update needed
[2026-06-05 07:14:21,100.100 INFO    ] Checking for camera pi updates...
[2026-06-05 07:14:21,139.139 INFO    ] 200
[2026-06-05 07:14:21,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:21,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:14:21,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:14:21,229.229 INFO    ] No camera update needed
[2026-06-05 07:14:21,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:14:21,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:14:21,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:14:21,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:14:23,286.286 INFO    ] ================================================
[2026-06-05 07:14:23,301.301 INFO    ] Launching Daemon at Fri Jun  5 07:14:23 IST 2026
[2026-06-05 07:14:23,312.312 INFO    ] ================================================
[2026-06-05 07:14:23,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:14:23
[2026-06-05 07:14:24,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:14:24,725.725 INFO    ] Initializing speech engine...
[2026-06-05 07:14:24,728.728 INFO    ] 2026-06-05 07:14:24
[2026-06-05 07:14:25,011.011 INFO    ] 2026-06-05 07:14:24
[2026-06-05 07:14:25,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:14:25,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:14:25,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:14:25,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:14:25,394.394 INFO    ] time= 05/06/2026 07:14:25
[2026-06-05 07:14:25,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:14:25,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:14:25,519.519 INFO    ] No existing commands found in stream
[2026-06-05 07:14:30,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:14:30,534.534 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 07:14:32,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:14:32,783.783 INFO    ] Checking for system updates...
[2026-06-05 07:14:32,824.824 INFO    ] 200
[2026-06-05 07:14:32,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:32,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:14:32,892.892 INFO    ] No update needed
[2026-06-05 07:14:32,895.895 INFO    ] Checking for camera pi updates...
[2026-06-05 07:14:32,934.934 INFO    ] 200
[2026-06-05 07:14:32,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:32,983.983 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:14:33,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:14:33,017.017 INFO    ] No camera update needed
[2026-06-05 07:14:33,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:14:33,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:14:33,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:14:33,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:14:35,078.078 INFO    ] ================================================
[2026-06-05 07:14:35,093.093 INFO    ] Launching Daemon at Fri Jun  5 07:14:35 IST 2026
[2026-06-05 07:14:35,104.104 INFO    ] ================================================
[2026-06-05 07:14:35,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:14:35
[2026-06-05 07:14:36,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:14:36,506.506 INFO    ] Initializing speech engine...
[2026-06-05 07:14:36,528.528 INFO    ] 2026-06-05 07:14:36
[2026-06-05 07:14:36,779.779 INFO    ] 2026-06-05 07:14:36
[2026-06-05 07:14:36,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:14:37,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:14:37,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:14:37,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:14:37,235.235 INFO    ] time= 05/06/2026 07:14:37
[2026-06-05 07:14:37,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:14:37,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:14:37,404.404 INFO    ] No existing commands found in stream
[2026-06-05 07:14:42,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:14:42,439.439 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 07:14:43,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:14:43,853.853 INFO    ] Checking for system updates...
[2026-06-05 07:14:43,893.893 INFO    ] 200
[2026-06-05 07:14:43,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:43,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:14:43,951.951 INFO    ] No update needed
[2026-06-05 07:14:43,954.954 INFO    ] Checking for camera pi updates...
[2026-06-05 07:14:43,988.988 INFO    ] 200
[2026-06-05 07:14:43,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:44,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:14:44,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:14:44,173.173 INFO    ] No camera update needed
[2026-06-05 07:14:44,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:14:44,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:14:44,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:14:44,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:14:46,230.230 INFO    ] ================================================
[2026-06-05 07:14:46,245.245 INFO    ] Launching Daemon at Fri Jun  5 07:14:46 IST 2026
[2026-06-05 07:14:46,255.255 INFO    ] ================================================
[2026-06-05 07:14:46,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:14:46
[2026-06-05 07:14:47,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:14:47,865.865 INFO    ] Initializing speech engine...
[2026-06-05 07:14:47,874.874 INFO    ] 2026-06-05 07:14:47
[2026-06-05 07:14:48,144.144 INFO    ] 2026-06-05 07:14:48
[2026-06-05 07:14:48,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:14:48,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:14:48,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:14:48,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:14:48,619.619 INFO    ] time= 05/06/2026 07:14:48
[2026-06-05 07:14:48,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:14:48,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:14:48,760.760 INFO    ] No existing commands found in stream
[2026-06-05 07:14:53,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:14:53,776.776 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 07:14:57,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:14:57,662.662 INFO    ] Checking for system updates...
[2026-06-05 07:14:57,699.699 INFO    ] 200
[2026-06-05 07:14:57,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:57,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:14:57,758.758 INFO    ] No update needed
[2026-06-05 07:14:57,761.761 INFO    ] Checking for camera pi updates...
[2026-06-05 07:14:57,796.796 INFO    ] 200
[2026-06-05 07:14:57,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:14:57,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:14:57,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:14:57,893.893 INFO    ] No camera update needed
[2026-06-05 07:14:57,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:14:57,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:14:57,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:14:57,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:14:59,948.948 INFO    ] ================================================
[2026-06-05 07:14:59,963.963 INFO    ] Launching Daemon at Fri Jun  5 07:14:59 IST 2026
[2026-06-05 07:14:59,974.974 INFO    ] ================================================
[2026-06-05 07:15:00,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:15:00
[2026-06-05 07:15:01,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:15:01,380.380 INFO    ] Initializing speech engine...
[2026-06-05 07:15:01,402.402 INFO    ] 2026-06-05 07:15:01
[2026-06-05 07:15:01,653.653 INFO    ] 2026-06-05 07:15:01
[2026-06-05 07:15:01,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:15:01,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:15:01,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:15:02,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:15:02,062.062 INFO    ] time= 05/06/2026 07:15:02
[2026-06-05 07:15:02,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:15:02,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:15:02,148.148 INFO    ] No existing commands found in stream
[2026-06-05 07:15:07,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:15:07,163.163 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 07:15:10,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:15:10,778.778 INFO    ] Checking for system updates...
[2026-06-05 07:15:10,816.816 INFO    ] 200
[2026-06-05 07:15:10,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:10,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:15:10,886.886 INFO    ] No update needed
[2026-06-05 07:15:10,888.888 INFO    ] Checking for camera pi updates...
[2026-06-05 07:15:10,926.926 INFO    ] 200
[2026-06-05 07:15:10,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:10,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:15:11,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:15:11,013.013 INFO    ] No camera update needed
[2026-06-05 07:15:11,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:15:11,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:15:11,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:15:11,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:15:13,078.078 INFO    ] ================================================
[2026-06-05 07:15:13,094.094 INFO    ] Launching Daemon at Fri Jun  5 07:15:13 IST 2026
[2026-06-05 07:15:13,106.106 INFO    ] ================================================
[2026-06-05 07:15:13,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:15:13
[2026-06-05 07:15:14,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:15:14,732.732 INFO    ] Initializing speech engine...
[2026-06-05 07:15:14,752.752 INFO    ] 2026-06-05 07:15:14
[2026-06-05 07:15:15,020.020 INFO    ] 2026-06-05 07:15:15
[2026-06-05 07:15:15,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:15:15,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:15:15,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:15:15,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:15:15,501.501 INFO    ] time= 05/06/2026 07:15:15
[2026-06-05 07:15:15,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:15:15,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:15:15,674.674 INFO    ] No existing commands found in stream
[2026-06-05 07:15:20,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:15:20,690.690 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 07:15:22,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:15:22,241.241 INFO    ] Checking for system updates...
[2026-06-05 07:15:22,282.282 INFO    ] 200
[2026-06-05 07:15:22,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:22,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:15:22,342.342 INFO    ] No update needed
[2026-06-05 07:15:22,345.345 INFO    ] Checking for camera pi updates...
[2026-06-05 07:15:22,379.379 INFO    ] 200
[2026-06-05 07:15:22,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:22,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:15:22,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:15:22,472.472 INFO    ] No camera update needed
[2026-06-05 07:15:22,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:15:22,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:15:22,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:15:22,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:15:24,529.529 INFO    ] ================================================
[2026-06-05 07:15:24,545.545 INFO    ] Launching Daemon at Fri Jun  5 07:15:24 IST 2026
[2026-06-05 07:15:24,556.556 INFO    ] ================================================
[2026-06-05 07:15:25,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:15:25
[2026-06-05 07:15:25,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:15:25,997.997 INFO    ] Initializing speech engine...
[2026-06-05 07:15:26,008.008 INFO    ] 2026-06-05 07:15:26
[2026-06-05 07:15:26,256.256 INFO    ] 2026-06-05 07:15:26
[2026-06-05 07:15:26,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:15:26,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:15:26,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:15:26,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:15:26,600.600 INFO    ] time= 05/06/2026 07:15:26
[2026-06-05 07:15:26,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:15:26,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:15:26,714.714 INFO    ] No existing commands found in stream
[2026-06-05 07:15:31,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:15:31,732.732 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 07:15:33,995.995 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:15:33,998.998 INFO    ] Checking for system updates...
[2026-06-05 07:15:34,039.039 INFO    ] 200
[2026-06-05 07:15:34,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:34,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:15:34,103.103 INFO    ] No update needed
[2026-06-05 07:15:34,105.105 INFO    ] Checking for camera pi updates...
[2026-06-05 07:15:34,140.140 INFO    ] 200
[2026-06-05 07:15:34,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:34,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:15:34,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:15:34,221.221 INFO    ] No camera update needed
[2026-06-05 07:15:34,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:15:34,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:15:34,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:15:34,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:15:36,276.276 INFO    ] ================================================
[2026-06-05 07:15:36,292.292 INFO    ] Launching Daemon at Fri Jun  5 07:15:36 IST 2026
[2026-06-05 07:15:36,304.304 INFO    ] ================================================
[2026-06-05 07:15:36,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:15:36
[2026-06-05 07:15:37,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:15:37,954.954 INFO    ] Initializing speech engine...
[2026-06-05 07:15:37,965.965 INFO    ] 2026-06-05 07:15:37
[2026-06-05 07:15:38,250.250 INFO    ] 2026-06-05 07:15:38
[2026-06-05 07:15:38,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:15:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:15:38,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:15:38,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:15:38,789.789 INFO    ] time= 05/06/2026 07:15:38
[2026-06-05 07:15:38,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:15:38,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:15:38,960.960 INFO    ] No existing commands found in stream
[2026-06-05 07:15:43,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:15:43,981.981 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 07:15:48,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:15:48,269.269 INFO    ] Checking for system updates...
[2026-06-05 07:15:48,309.309 INFO    ] 200
[2026-06-05 07:15:48,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:48,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:15:48,375.375 INFO    ] No update needed
[2026-06-05 07:15:48,377.377 INFO    ] Checking for camera pi updates...
[2026-06-05 07:15:48,415.415 INFO    ] 200
[2026-06-05 07:15:48,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:48,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:15:48,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:15:48,518.518 INFO    ] No camera update needed
[2026-06-05 07:15:48,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:15:48,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:15:48,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:15:48,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:15:50,575.575 INFO    ] ================================================
[2026-06-05 07:15:50,591.591 INFO    ] Launching Daemon at Fri Jun  5 07:15:50 IST 2026
[2026-06-05 07:15:50,603.603 INFO    ] ================================================
[2026-06-05 07:15:51,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:15:51
[2026-06-05 07:15:51,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:15:52,062.062 INFO    ] Initializing speech engine...
[2026-06-05 07:15:52,069.069 INFO    ] 2026-06-05 07:15:52
[2026-06-05 07:15:52,366.366 INFO    ] 2026-06-05 07:15:52
[2026-06-05 07:15:52,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:15:52,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:15:52,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:15:52,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:15:52,752.752 INFO    ] time= 05/06/2026 07:15:52
[2026-06-05 07:15:52,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:15:52,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:15:52,879.879 INFO    ] No existing commands found in stream
[2026-06-05 07:15:57,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:15:57,894.894 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 07:15:59,191.191 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:15:59,193.193 INFO    ] Checking for system updates...
[2026-06-05 07:15:59,234.234 INFO    ] 200
[2026-06-05 07:15:59,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:59,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:15:59,291.291 INFO    ] No update needed
[2026-06-05 07:15:59,294.294 INFO    ] Checking for camera pi updates...
[2026-06-05 07:15:59,328.328 INFO    ] 200
[2026-06-05 07:15:59,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:15:59,372.372 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:15:59,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:15:59,414.414 INFO    ] No camera update needed
[2026-06-05 07:15:59,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:15:59,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:15:59,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:15:59,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:16:01,481.481 INFO    ] ================================================
[2026-06-05 07:16:01,509.509 INFO    ] Launching Daemon at Fri Jun  5 07:16:01 IST 2026
[2026-06-05 07:16:01,541.541 INFO    ] ================================================
[2026-06-05 07:16:02,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:16:02
[2026-06-05 07:16:03,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:16:03,476.476 INFO    ] Initializing speech engine...
[2026-06-05 07:16:03,487.487 INFO    ] 2026-06-05 07:16:03
[2026-06-05 07:16:03,803.803 INFO    ] 2026-06-05 07:16:03
[2026-06-05 07:16:03,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:16:04,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:16:04,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:16:04,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:16:04,318.318 INFO    ] time= 05/06/2026 07:16:04
[2026-06-05 07:16:04,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:16:04,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:16:04,474.474 INFO    ] No existing commands found in stream
[2026-06-05 07:16:09,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:16:09,494.494 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 07:16:09,992.992 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:16:09,995.995 INFO    ] Checking for system updates...
[2026-06-05 07:16:10,033.033 INFO    ] 200
[2026-06-05 07:16:10,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:10,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:16:10,093.093 INFO    ] No update needed
[2026-06-05 07:16:10,096.096 INFO    ] Checking for camera pi updates...
[2026-06-05 07:16:10,131.131 INFO    ] 200
[2026-06-05 07:16:10,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:10,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:16:10,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:16:10,222.222 INFO    ] No camera update needed
[2026-06-05 07:16:10,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:16:10,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:16:10,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:16:10,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:16:12,278.278 INFO    ] ================================================
[2026-06-05 07:16:12,294.294 INFO    ] Launching Daemon at Fri Jun  5 07:16:12 IST 2026
[2026-06-05 07:16:12,305.305 INFO    ] ================================================
[2026-06-05 07:16:12,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:16:12
[2026-06-05 07:16:13,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:16:13,742.742 INFO    ] Initializing speech engine...
[2026-06-05 07:16:13,751.751 INFO    ] 2026-06-05 07:16:13
[2026-06-05 07:16:14,009.009 INFO    ] 2026-06-05 07:16:14
[2026-06-05 07:16:14,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:16:14,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:16:14,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:16:14,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:16:14,472.472 INFO    ] time= 05/06/2026 07:16:14
[2026-06-05 07:16:14,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:16:14,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:16:14,615.615 INFO    ] No existing commands found in stream
[2026-06-05 07:16:19,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:16:19,630.630 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 07:16:20,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:16:20,150.150 INFO    ] Checking for system updates...
[2026-06-05 07:16:20,189.189 INFO    ] 200
[2026-06-05 07:16:20,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:20,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:16:20,255.255 INFO    ] No update needed
[2026-06-05 07:16:20,257.257 INFO    ] Checking for camera pi updates...
[2026-06-05 07:16:20,295.295 INFO    ] 200
[2026-06-05 07:16:20,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:20,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:16:20,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:16:20,389.389 INFO    ] No camera update needed
[2026-06-05 07:16:20,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:16:20,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:16:20,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:16:20,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:16:22,447.447 INFO    ] ================================================
[2026-06-05 07:16:22,463.463 INFO    ] Launching Daemon at Fri Jun  5 07:16:22 IST 2026
[2026-06-05 07:16:22,474.474 INFO    ] ================================================
[2026-06-05 07:16:23,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:16:23
[2026-06-05 07:16:23,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:16:23,880.880 INFO    ] Initializing speech engine...
[2026-06-05 07:16:23,903.903 INFO    ] 2026-06-05 07:16:23
[2026-06-05 07:16:24,154.154 INFO    ] 2026-06-05 07:16:24
[2026-06-05 07:16:24,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:16:24,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:16:24,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:16:24,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:16:24,625.625 INFO    ] time= 05/06/2026 07:16:24
[2026-06-05 07:16:24,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:16:24,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:16:24,772.772 INFO    ] No existing commands found in stream
[2026-06-05 07:16:29,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:16:29,787.787 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 07:16:32,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:16:32,909.909 INFO    ] Checking for system updates...
[2026-06-05 07:16:32,944.944 INFO    ] 200
[2026-06-05 07:16:32,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:33,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:16:33,003.003 INFO    ] No update needed
[2026-06-05 07:16:33,005.005 INFO    ] Checking for camera pi updates...
[2026-06-05 07:16:33,040.040 INFO    ] 200
[2026-06-05 07:16:33,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:33,087.087 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:16:33,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:16:33,132.132 INFO    ] No camera update needed
[2026-06-05 07:16:33,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:16:33,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:16:33,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:16:33,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:16:35,190.190 INFO    ] ================================================
[2026-06-05 07:16:35,206.206 INFO    ] Launching Daemon at Fri Jun  5 07:16:35 IST 2026
[2026-06-05 07:16:35,217.217 INFO    ] ================================================
[2026-06-05 07:16:35,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:16:35
[2026-06-05 07:16:36,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:16:36,630.630 INFO    ] Initializing speech engine...
[2026-06-05 07:16:36,639.639 INFO    ] 2026-06-05 07:16:36
[2026-06-05 07:16:36,932.932 INFO    ] 2026-06-05 07:16:36
[2026-06-05 07:16:36,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:16:37,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:16:37,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:16:37,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:16:37,314.314 INFO    ] time= 05/06/2026 07:16:37
[2026-06-05 07:16:37,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:16:37,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:16:37,439.439 INFO    ] No existing commands found in stream
[2026-06-05 07:16:42,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:16:42,454.454 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 07:16:44,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:16:44,491.491 INFO    ] Checking for system updates...
[2026-06-05 07:16:44,528.528 INFO    ] 200
[2026-06-05 07:16:44,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:44,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:16:44,585.585 INFO    ] No update needed
[2026-06-05 07:16:44,588.588 INFO    ] Checking for camera pi updates...
[2026-06-05 07:16:44,621.621 INFO    ] 200
[2026-06-05 07:16:44,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:44,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:16:44,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:16:44,713.713 INFO    ] No camera update needed
[2026-06-05 07:16:44,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:16:44,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:16:44,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:16:44,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:16:46,769.769 INFO    ] ================================================
[2026-06-05 07:16:46,784.784 INFO    ] Launching Daemon at Fri Jun  5 07:16:46 IST 2026
[2026-06-05 07:16:46,795.795 INFO    ] ================================================
[2026-06-05 07:16:47,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:16:47
[2026-06-05 07:16:47,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:16:48,216.216 INFO    ] Initializing speech engine...
[2026-06-05 07:16:48,225.225 INFO    ] 2026-06-05 07:16:48
[2026-06-05 07:16:48,523.523 INFO    ] 2026-06-05 07:16:48
[2026-06-05 07:16:48,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:16:48,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:16:48,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:16:48,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:16:48,905.905 INFO    ] time= 05/06/2026 07:16:48
[2026-06-05 07:16:48,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:16:48,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:16:49,014.014 INFO    ] No existing commands found in stream
[2026-06-05 07:16:54,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:16:54,030.030 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 07:16:58,250.250 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:16:58,253.253 INFO    ] Checking for system updates...
[2026-06-05 07:16:58,293.293 INFO    ] 200
[2026-06-05 07:16:58,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:58,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:16:58,357.357 INFO    ] No update needed
[2026-06-05 07:16:58,360.360 INFO    ] Checking for camera pi updates...
[2026-06-05 07:16:58,397.397 INFO    ] 200
[2026-06-05 07:16:58,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:16:58,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:16:58,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:16:58,594.594 INFO    ] No camera update needed
[2026-06-05 07:16:58,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:16:58,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:16:58,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:16:58,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:17:00,650.650 INFO    ] ================================================
[2026-06-05 07:17:00,666.666 INFO    ] Launching Daemon at Fri Jun  5 07:17:00 IST 2026
[2026-06-05 07:17:00,677.677 INFO    ] ================================================
[2026-06-05 07:17:01,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:17:01
[2026-06-05 07:17:02,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:17:02,590.590 INFO    ] Initializing speech engine...
[2026-06-05 07:17:02,600.600 INFO    ] 2026-06-05 07:17:02
[2026-06-05 07:17:02,914.914 INFO    ] 2026-06-05 07:17:02
[2026-06-05 07:17:02,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:17:03,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:17:03,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:17:03,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:17:03,280.280 INFO    ] time= 05/06/2026 07:17:03
[2026-06-05 07:17:03,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:17:03,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:17:03,361.361 INFO    ] No existing commands found in stream
[2026-06-05 07:17:08,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:17:08,377.377 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 07:17:09,329.329 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:17:09,332.332 INFO    ] Checking for system updates...
[2026-06-05 07:17:09,368.368 INFO    ] 200
[2026-06-05 07:17:09,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:09,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:17:09,426.426 INFO    ] No update needed
[2026-06-05 07:17:09,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 07:17:09,463.463 INFO    ] 200
[2026-06-05 07:17:09,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:09,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:17:09,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:17:09,550.550 INFO    ] No camera update needed
[2026-06-05 07:17:09,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:17:09,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:17:09,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:17:09,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:17:11,605.605 INFO    ] ================================================
[2026-06-05 07:17:11,621.621 INFO    ] Launching Daemon at Fri Jun  5 07:17:11 IST 2026
[2026-06-05 07:17:11,632.632 INFO    ] ================================================
[2026-06-05 07:17:12,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:17:12
[2026-06-05 07:17:12,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:17:13,036.036 INFO    ] Initializing speech engine...
[2026-06-05 07:17:13,043.043 INFO    ] 2026-06-05 07:17:13
[2026-06-05 07:17:13,342.342 INFO    ] 2026-06-05 07:17:13
[2026-06-05 07:17:13,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:17:13,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:17:13,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:17:13,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:17:13,725.725 INFO    ] time= 05/06/2026 07:17:13
[2026-06-05 07:17:13,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:17:13,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:17:13,850.850 INFO    ] No existing commands found in stream
[2026-06-05 07:17:18,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:17:18,865.865 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 07:17:20,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:17:20,497.497 INFO    ] Checking for system updates...
[2026-06-05 07:17:20,533.533 INFO    ] 200
[2026-06-05 07:17:20,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:20,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:17:20,598.598 INFO    ] No update needed
[2026-06-05 07:17:20,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 07:17:20,637.637 INFO    ] 200
[2026-06-05 07:17:20,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:20,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:17:20,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:17:20,736.736 INFO    ] No camera update needed
[2026-06-05 07:17:20,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:17:20,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:17:20,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:17:20,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:17:22,792.792 INFO    ] ================================================
[2026-06-05 07:17:22,808.808 INFO    ] Launching Daemon at Fri Jun  5 07:17:22 IST 2026
[2026-06-05 07:17:22,819.819 INFO    ] ================================================
[2026-06-05 07:17:23,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:17:23
[2026-06-05 07:17:23,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:17:24,219.219 INFO    ] Initializing speech engine...
[2026-06-05 07:17:24,234.234 INFO    ] 2026-06-05 07:17:24
[2026-06-05 07:17:24,498.498 INFO    ] 2026-06-05 07:17:24
[2026-06-05 07:17:24,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:17:24,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:17:24,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:17:24,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:17:24,975.975 INFO    ] time= 05/06/2026 07:17:24
[2026-06-05 07:17:25,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:17:25,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:17:25,118.118 INFO    ] No existing commands found in stream
[2026-06-05 07:17:30,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:17:30,133.133 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 07:17:30,801.801 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:17:30,805.805 INFO    ] Checking for system updates...
[2026-06-05 07:17:30,847.847 INFO    ] 200
[2026-06-05 07:17:30,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:30,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:17:30,912.912 INFO    ] No update needed
[2026-06-05 07:17:30,914.914 INFO    ] Checking for camera pi updates...
[2026-06-05 07:17:30,949.949 INFO    ] 200
[2026-06-05 07:17:30,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:30,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:17:31,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:17:31,040.040 INFO    ] No camera update needed
[2026-06-05 07:17:31,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:17:31,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:17:31,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:17:31,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:17:33,106.106 INFO    ] ================================================
[2026-06-05 07:17:33,122.122 INFO    ] Launching Daemon at Fri Jun  5 07:17:33 IST 2026
[2026-06-05 07:17:33,134.134 INFO    ] ================================================
[2026-06-05 07:17:33,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:17:33
[2026-06-05 07:17:34,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:17:34,582.582 INFO    ] Initializing speech engine...
[2026-06-05 07:17:34,589.589 INFO    ] 2026-06-05 07:17:34
[2026-06-05 07:17:34,848.848 INFO    ] 2026-06-05 07:17:34
[2026-06-05 07:17:34,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:17:35,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:17:35,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:17:35,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:17:35,312.312 INFO    ] time= 05/06/2026 07:17:35
[2026-06-05 07:17:35,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:17:35,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:17:35,455.455 INFO    ] No existing commands found in stream
[2026-06-05 07:17:40,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:17:40,470.470 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 07:17:42,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:17:42,860.860 INFO    ] Checking for system updates...
[2026-06-05 07:17:42,901.901 INFO    ] 200
[2026-06-05 07:17:42,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:42,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:17:42,964.964 INFO    ] No update needed
[2026-06-05 07:17:42,967.967 INFO    ] Checking for camera pi updates...
[2026-06-05 07:17:43,007.007 INFO    ] 200
[2026-06-05 07:17:43,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:43,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:17:43,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:17:43,101.101 INFO    ] No camera update needed
[2026-06-05 07:17:43,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:17:43,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:17:43,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:17:43,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:17:45,161.161 INFO    ] ================================================
[2026-06-05 07:17:45,178.178 INFO    ] Launching Daemon at Fri Jun  5 07:17:45 IST 2026
[2026-06-05 07:17:45,189.189 INFO    ] ================================================
[2026-06-05 07:17:45,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:17:45
[2026-06-05 07:17:46,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:17:46,638.638 INFO    ] Initializing speech engine...
[2026-06-05 07:17:46,650.650 INFO    ] 2026-06-05 07:17:46
[2026-06-05 07:17:46,930.930 INFO    ] 2026-06-05 07:17:46
[2026-06-05 07:17:46,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:17:47,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:17:47,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:17:47,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:17:47,281.281 INFO    ] time= 05/06/2026 07:17:47
[2026-06-05 07:17:47,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:17:47,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:17:47,380.380 INFO    ] No existing commands found in stream
[2026-06-05 07:17:52,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:17:52,398.398 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 07:17:53,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:17:53,165.165 INFO    ] Checking for system updates...
[2026-06-05 07:17:53,208.208 INFO    ] 200
[2026-06-05 07:17:53,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:53,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:17:53,279.279 INFO    ] No update needed
[2026-06-05 07:17:53,282.282 INFO    ] Checking for camera pi updates...
[2026-06-05 07:17:53,322.322 INFO    ] 200
[2026-06-05 07:17:53,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:17:53,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:17:53,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:17:53,422.422 INFO    ] No camera update needed
[2026-06-05 07:17:53,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:17:53,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:17:53,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:17:53,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:17:55,478.478 INFO    ] ================================================
[2026-06-05 07:17:55,494.494 INFO    ] Launching Daemon at Fri Jun  5 07:17:55 IST 2026
[2026-06-05 07:17:55,504.504 INFO    ] ================================================
[2026-06-05 07:17:56,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:17:56
[2026-06-05 07:17:56,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:17:57,183.183 INFO    ] Initializing speech engine...
[2026-06-05 07:17:57,191.191 INFO    ] 2026-06-05 07:17:57
[2026-06-05 07:17:57,508.508 INFO    ] 2026-06-05 07:17:57
[2026-06-05 07:17:57,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:17:57,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:17:57,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:17:57,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:17:58,007.007 INFO    ] time= 05/06/2026 07:17:57
[2026-06-05 07:17:58,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:17:58,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:17:58,142.142 INFO    ] No existing commands found in stream
[2026-06-05 07:18:03,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:18:03,172.172 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 07:18:04,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:18:04,664.664 INFO    ] Checking for system updates...
[2026-06-05 07:18:04,699.699 INFO    ] 200
[2026-06-05 07:18:04,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:04,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:18:04,766.766 INFO    ] No update needed
[2026-06-05 07:18:04,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 07:18:04,802.802 INFO    ] 200
[2026-06-05 07:18:04,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:04,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:18:04,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:18:04,876.876 INFO    ] No camera update needed
[2026-06-05 07:18:04,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:18:04,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:18:04,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:18:04,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:18:06,931.931 INFO    ] ================================================
[2026-06-05 07:18:06,947.947 INFO    ] Launching Daemon at Fri Jun  5 07:18:06 IST 2026
[2026-06-05 07:18:06,958.958 INFO    ] ================================================
[2026-06-05 07:18:07,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:18:07
[2026-06-05 07:18:08,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:18:08,491.491 INFO    ] Initializing speech engine...
[2026-06-05 07:18:08,508.508 INFO    ] 2026-06-05 07:18:08
[2026-06-05 07:18:08,789.789 INFO    ] 2026-06-05 07:18:08
[2026-06-05 07:18:08,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:18:09,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:18:09,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:18:09,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:18:09,145.145 INFO    ] time= 05/06/2026 07:18:09
[2026-06-05 07:18:09,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:18:09,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:18:09,258.258 INFO    ] No existing commands found in stream
[2026-06-05 07:18:14,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:18:14,279.279 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 07:18:15,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:18:15,879.879 INFO    ] Checking for system updates...
[2026-06-05 07:18:15,915.915 INFO    ] 200
[2026-06-05 07:18:15,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:15,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:18:15,973.973 INFO    ] No update needed
[2026-06-05 07:18:15,975.975 INFO    ] Checking for camera pi updates...
[2026-06-05 07:18:16,014.014 INFO    ] 200
[2026-06-05 07:18:16,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:16,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:18:16,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:18:16,109.109 INFO    ] No camera update needed
[2026-06-05 07:18:16,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:18:16,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:18:16,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:18:16,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:18:18,166.166 INFO    ] ================================================
[2026-06-05 07:18:18,181.181 INFO    ] Launching Daemon at Fri Jun  5 07:18:18 IST 2026
[2026-06-05 07:18:18,192.192 INFO    ] ================================================
[2026-06-05 07:18:18,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:18:18
[2026-06-05 07:18:19,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:18:19,614.614 INFO    ] Initializing speech engine...
[2026-06-05 07:18:19,626.626 INFO    ] 2026-06-05 07:18:19
[2026-06-05 07:18:19,891.891 INFO    ] 2026-06-05 07:18:19
[2026-06-05 07:18:19,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:18:20,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:18:20,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:18:20,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:18:20,266.266 INFO    ] time= 05/06/2026 07:18:20
[2026-06-05 07:18:20,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:18:20,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:18:20,448.448 INFO    ] No existing commands found in stream
[2026-06-05 07:18:25,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:18:25,476.476 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 07:18:28,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:18:28,848.848 INFO    ] Checking for system updates...
[2026-06-05 07:18:28,886.886 INFO    ] 200
[2026-06-05 07:18:28,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:28,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:18:28,948.948 INFO    ] No update needed
[2026-06-05 07:18:28,951.951 INFO    ] Checking for camera pi updates...
[2026-06-05 07:18:28,991.991 INFO    ] 200
[2026-06-05 07:18:28,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:29,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:18:29,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:18:29,089.089 INFO    ] No camera update needed
[2026-06-05 07:18:29,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:18:29,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:18:29,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:18:29,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:18:31,150.150 INFO    ] ================================================
[2026-06-05 07:18:31,166.166 INFO    ] Launching Daemon at Fri Jun  5 07:18:31 IST 2026
[2026-06-05 07:18:31,177.177 INFO    ] ================================================
[2026-06-05 07:18:31,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:18:31
[2026-06-05 07:18:32,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:18:32,669.669 INFO    ] Initializing speech engine...
[2026-06-05 07:18:32,677.677 INFO    ] 2026-06-05 07:18:32
[2026-06-05 07:18:32,949.949 INFO    ] 2026-06-05 07:18:32
[2026-06-05 07:18:32,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:18:33,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:18:33,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:18:33,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:18:33,431.431 INFO    ] time= 05/06/2026 07:18:33
[2026-06-05 07:18:33,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:18:33,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:18:33,555.555 INFO    ] No existing commands found in stream
[2026-06-05 07:18:38,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:18:38,579.579 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-05 07:18:39,335.335 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:18:39,338.338 INFO    ] Checking for system updates...
[2026-06-05 07:18:39,378.378 INFO    ] 200
[2026-06-05 07:18:39,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:39,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:18:39,439.439 INFO    ] No update needed
[2026-06-05 07:18:39,441.441 INFO    ] Checking for camera pi updates...
[2026-06-05 07:18:39,482.482 INFO    ] 200
[2026-06-05 07:18:39,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:39,525.525 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:18:39,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:18:39,573.573 INFO    ] No camera update needed
[2026-06-05 07:18:39,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:18:39,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:18:39,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:18:39,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:18:41,630.630 INFO    ] ================================================
[2026-06-05 07:18:41,645.645 INFO    ] Launching Daemon at Fri Jun  5 07:18:41 IST 2026
[2026-06-05 07:18:41,657.657 INFO    ] ================================================
[2026-06-05 07:18:42,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:18:42
[2026-06-05 07:18:43,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:18:43,338.338 INFO    ] Initializing speech engine...
[2026-06-05 07:18:43,350.350 INFO    ] 2026-06-05 07:18:43
[2026-06-05 07:18:43,662.662 INFO    ] 2026-06-05 07:18:43
[2026-06-05 07:18:43,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:18:43,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:18:43,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:18:44,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:18:44,176.176 INFO    ] time= 05/06/2026 07:18:44
[2026-06-05 07:18:44,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:18:44,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:18:44,327.327 INFO    ] No existing commands found in stream
[2026-06-05 07:18:49,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:18:49,348.348 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 07:18:51,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:18:51,473.473 INFO    ] Checking for system updates...
[2026-06-05 07:18:51,512.512 INFO    ] 200
[2026-06-05 07:18:51,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:51,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:18:51,572.572 INFO    ] No update needed
[2026-06-05 07:18:51,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 07:18:51,610.610 INFO    ] 200
[2026-06-05 07:18:51,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:18:51,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:18:51,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:18:51,704.704 INFO    ] No camera update needed
[2026-06-05 07:18:51,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:18:51,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:18:51,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:18:51,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:18:53,762.762 INFO    ] ================================================
[2026-06-05 07:18:53,777.777 INFO    ] Launching Daemon at Fri Jun  5 07:18:53 IST 2026
[2026-06-05 07:18:53,788.788 INFO    ] ================================================
[2026-06-05 07:18:54,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:18:54
[2026-06-05 07:18:55,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:18:55,457.457 INFO    ] Initializing speech engine...
[2026-06-05 07:18:55,471.471 INFO    ] 2026-06-05 07:18:55
[2026-06-05 07:18:55,781.781 INFO    ] 2026-06-05 07:18:55
[2026-06-05 07:18:55,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:18:56,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:18:56,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:18:56,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:18:56,285.285 INFO    ] time= 05/06/2026 07:18:56
[2026-06-05 07:18:56,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:18:56,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:18:56,436.436 INFO    ] No existing commands found in stream
[2026-06-05 07:19:01,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:19:01,472.472 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 07:19:02,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:19:02,983.983 INFO    ] Checking for system updates...
[2026-06-05 07:19:03,035.035 INFO    ] 200
[2026-06-05 07:19:03,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:03,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:19:03,101.101 INFO    ] No update needed
[2026-06-05 07:19:03,103.103 INFO    ] Checking for camera pi updates...
[2026-06-05 07:19:03,143.143 INFO    ] 200
[2026-06-05 07:19:03,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:03,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:19:03,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:19:03,216.216 INFO    ] No camera update needed
[2026-06-05 07:19:03,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:19:03,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:19:03,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:19:03,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:19:05,272.272 INFO    ] ================================================
[2026-06-05 07:19:05,287.287 INFO    ] Launching Daemon at Fri Jun  5 07:19:05 IST 2026
[2026-06-05 07:19:05,298.298 INFO    ] ================================================
[2026-06-05 07:19:05,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:19:05
[2026-06-05 07:19:06,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:19:06,735.735 INFO    ] Initializing speech engine...
[2026-06-05 07:19:06,753.753 INFO    ] 2026-06-05 07:19:06
[2026-06-05 07:19:07,004.004 INFO    ] 2026-06-05 07:19:06
[2026-06-05 07:19:07,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:19:07,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:19:07,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:19:07,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:19:07,381.381 INFO    ] time= 05/06/2026 07:19:07
[2026-06-05 07:19:07,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:19:07,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:19:07,537.537 INFO    ] No existing commands found in stream
[2026-06-05 07:19:12,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:19:12,565.565 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 07:19:13,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:19:13,158.158 INFO    ] Checking for system updates...
[2026-06-05 07:19:13,194.194 INFO    ] 200
[2026-06-05 07:19:13,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:13,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:19:13,279.279 INFO    ] No update needed
[2026-06-05 07:19:13,282.282 INFO    ] Checking for camera pi updates...
[2026-06-05 07:19:13,317.317 INFO    ] 200
[2026-06-05 07:19:13,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:13,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:19:13,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:19:13,408.408 INFO    ] No camera update needed
[2026-06-05 07:19:13,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:19:13,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:19:13,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:19:13,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:19:15,470.470 INFO    ] ================================================
[2026-06-05 07:19:15,485.485 INFO    ] Launching Daemon at Fri Jun  5 07:19:15 IST 2026
[2026-06-05 07:19:15,496.496 INFO    ] ================================================
[2026-06-05 07:19:16,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:19:16
[2026-06-05 07:19:16,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:19:17,205.205 INFO    ] Initializing speech engine...
[2026-06-05 07:19:17,218.218 INFO    ] 2026-06-05 07:19:17
[2026-06-05 07:19:17,510.510 INFO    ] 2026-06-05 07:19:17
[2026-06-05 07:19:17,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:19:17,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:19:17,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:19:18,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:19:18,047.047 INFO    ] time= 05/06/2026 07:19:18
[2026-06-05 07:19:18,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:19:18,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:19:18,218.218 INFO    ] No existing commands found in stream
[2026-06-05 07:19:23,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:19:23,252.252 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 07:19:27,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:19:27,127.127 INFO    ] Checking for system updates...
[2026-06-05 07:19:27,164.164 INFO    ] 200
[2026-06-05 07:19:27,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:27,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:19:27,225.225 INFO    ] No update needed
[2026-06-05 07:19:27,228.228 INFO    ] Checking for camera pi updates...
[2026-06-05 07:19:27,263.263 INFO    ] 200
[2026-06-05 07:19:27,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:27,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:19:27,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:19:27,363.363 INFO    ] No camera update needed
[2026-06-05 07:19:27,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:19:27,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:19:27,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:19:27,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:19:29,425.425 INFO    ] ================================================
[2026-06-05 07:19:29,441.441 INFO    ] Launching Daemon at Fri Jun  5 07:19:29 IST 2026
[2026-06-05 07:19:29,452.452 INFO    ] ================================================
[2026-06-05 07:19:30,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:19:30
[2026-06-05 07:19:30,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:19:30,925.925 INFO    ] Initializing speech engine...
[2026-06-05 07:19:30,939.939 INFO    ] 2026-06-05 07:19:30
[2026-06-05 07:19:31,230.230 INFO    ] 2026-06-05 07:19:31
[2026-06-05 07:19:31,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:19:31,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:19:31,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:19:31,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:19:31,654.654 INFO    ] time= 05/06/2026 07:19:31
[2026-06-05 07:19:31,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:19:31,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:19:31,792.792 INFO    ] No existing commands found in stream
[2026-06-05 07:19:36,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:19:36,807.807 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 07:19:39,177.177 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:19:39,179.179 INFO    ] Checking for system updates...
[2026-06-05 07:19:39,215.215 INFO    ] 200
[2026-06-05 07:19:39,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:39,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:19:39,274.274 INFO    ] No update needed
[2026-06-05 07:19:39,277.277 INFO    ] Checking for camera pi updates...
[2026-06-05 07:19:39,316.316 INFO    ] 200
[2026-06-05 07:19:39,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:39,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:19:39,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:19:39,409.409 INFO    ] No camera update needed
[2026-06-05 07:19:39,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:19:39,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:19:39,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:19:39,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:19:41,468.468 INFO    ] ================================================
[2026-06-05 07:19:41,484.484 INFO    ] Launching Daemon at Fri Jun  5 07:19:41 IST 2026
[2026-06-05 07:19:41,496.496 INFO    ] ================================================
[2026-06-05 07:19:42,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:19:42
[2026-06-05 07:19:42,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:19:43,198.198 INFO    ] Initializing speech engine...
[2026-06-05 07:19:43,206.206 INFO    ] 2026-06-05 07:19:43
[2026-06-05 07:19:43,494.494 INFO    ] 2026-06-05 07:19:43
[2026-06-05 07:19:43,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:19:43,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:19:43,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:19:43,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:19:44,025.025 INFO    ] time= 05/06/2026 07:19:43
[2026-06-05 07:19:44,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:19:44,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:19:44,167.167 INFO    ] No existing commands found in stream
[2026-06-05 07:19:49,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:19:49,196.196 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 07:19:51,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:19:51,555.555 INFO    ] Checking for system updates...
[2026-06-05 07:19:51,593.593 INFO    ] 200
[2026-06-05 07:19:51,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:51,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:19:51,654.654 INFO    ] No update needed
[2026-06-05 07:19:51,657.657 INFO    ] Checking for camera pi updates...
[2026-06-05 07:19:51,692.692 INFO    ] 200
[2026-06-05 07:19:51,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:19:51,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:19:51,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:19:51,791.791 INFO    ] No camera update needed
[2026-06-05 07:19:51,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:19:51,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:19:51,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:19:51,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:19:53,851.851 INFO    ] ================================================
[2026-06-05 07:19:53,867.867 INFO    ] Launching Daemon at Fri Jun  5 07:19:53 IST 2026
[2026-06-05 07:19:53,879.879 INFO    ] ================================================
[2026-06-05 07:19:54,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:19:54
[2026-06-05 07:19:55,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:19:55,546.546 INFO    ] Initializing speech engine...
[2026-06-05 07:19:55,550.550 INFO    ] 2026-06-05 07:19:55
[2026-06-05 07:19:55,817.817 INFO    ] 2026-06-05 07:19:55
[2026-06-05 07:19:55,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:19:56,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:19:56,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:19:56,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:19:56,219.219 INFO    ] time= 05/06/2026 07:19:56
[2026-06-05 07:19:56,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:19:56,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:19:56,413.413 INFO    ] No existing commands found in stream
[2026-06-05 07:20:01,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:20:01,438.438 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 07:20:02,105.105 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:20:02,109.109 INFO    ] Checking for system updates...
[2026-06-05 07:20:02,161.161 INFO    ] 200
[2026-06-05 07:20:02,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:02,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:20:02,251.251 INFO    ] No update needed
[2026-06-05 07:20:02,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 07:20:02,295.295 INFO    ] 200
[2026-06-05 07:20:02,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:02,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:20:02,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:20:02,413.413 INFO    ] No camera update needed
[2026-06-05 07:20:02,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:20:02,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:20:02,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:20:02,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:20:04,485.485 INFO    ] ================================================
[2026-06-05 07:20:04,500.500 INFO    ] Launching Daemon at Fri Jun  5 07:20:04 IST 2026
[2026-06-05 07:20:04,512.512 INFO    ] ================================================
[2026-06-05 07:20:05,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:20:05
[2026-06-05 07:20:05,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:20:05,927.927 INFO    ] Initializing speech engine...
[2026-06-05 07:20:05,949.949 INFO    ] 2026-06-05 07:20:05
[2026-06-05 07:20:06,207.207 INFO    ] 2026-06-05 07:20:06
[2026-06-05 07:20:06,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:20:06,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:20:06,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:20:06,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:20:06,588.588 INFO    ] time= 05/06/2026 07:20:06
[2026-06-05 07:20:06,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:20:06,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:20:06,763.763 INFO    ] No existing commands found in stream
[2026-06-05 07:20:11,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:20:11,798.798 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 07:20:14,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:20:14,582.582 INFO    ] Checking for system updates...
[2026-06-05 07:20:14,619.619 INFO    ] 200
[2026-06-05 07:20:14,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:14,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:20:14,677.677 INFO    ] No update needed
[2026-06-05 07:20:14,680.680 INFO    ] Checking for camera pi updates...
[2026-06-05 07:20:14,713.713 INFO    ] 200
[2026-06-05 07:20:14,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:14,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:20:14,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:20:14,809.809 INFO    ] No camera update needed
[2026-06-05 07:20:14,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:20:14,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:20:14,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:20:14,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:20:16,866.866 INFO    ] ================================================
[2026-06-05 07:20:16,882.882 INFO    ] Launching Daemon at Fri Jun  5 07:20:16 IST 2026
[2026-06-05 07:20:16,893.893 INFO    ] ================================================
[2026-06-05 07:20:17,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:20:17
[2026-06-05 07:20:18,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:20:18,313.313 INFO    ] Initializing speech engine...
[2026-06-05 07:20:18,322.322 INFO    ] 2026-06-05 07:20:18
[2026-06-05 07:20:18,574.574 INFO    ] 2026-06-05 07:20:18
[2026-06-05 07:20:18,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:20:18,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:20:18,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:20:19,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:20:19,062.062 INFO    ] time= 05/06/2026 07:20:19
[2026-06-05 07:20:19,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:20:19,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:20:19,215.215 INFO    ] No existing commands found in stream
[2026-06-05 07:20:24,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:20:24,230.230 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 07:20:27,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:20:27,690.690 INFO    ] Checking for system updates...
[2026-06-05 07:20:27,727.727 INFO    ] 200
[2026-06-05 07:20:27,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:27,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:20:27,786.786 INFO    ] No update needed
[2026-06-05 07:20:27,789.789 INFO    ] Checking for camera pi updates...
[2026-06-05 07:20:27,823.823 INFO    ] 200
[2026-06-05 07:20:27,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:27,867.867 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:20:27,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:20:27,911.911 INFO    ] No camera update needed
[2026-06-05 07:20:27,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:20:27,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:20:27,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:20:27,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:20:29,970.970 INFO    ] ================================================
[2026-06-05 07:20:29,986.986 INFO    ] Launching Daemon at Fri Jun  5 07:20:29 IST 2026
[2026-06-05 07:20:30,996.996 INFO    ] ================================================
[2026-06-05 07:20:30,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:20:30
[2026-06-05 07:20:31,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:20:31,424.424 INFO    ] Initializing speech engine...
[2026-06-05 07:20:31,440.440 INFO    ] 2026-06-05 07:20:31
[2026-06-05 07:20:31,722.722 INFO    ] 2026-06-05 07:20:31
[2026-06-05 07:20:31,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:20:32,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:20:32,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:20:32,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:20:32,220.220 INFO    ] time= 05/06/2026 07:20:32
[2026-06-05 07:20:32,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:20:32,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:20:32,374.374 INFO    ] No existing commands found in stream
[2026-06-05 07:20:37,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:20:37,389.389 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 07:20:40,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:20:40,330.330 INFO    ] Checking for system updates...
[2026-06-05 07:20:40,366.366 INFO    ] 200
[2026-06-05 07:20:40,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:40,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:20:40,424.424 INFO    ] No update needed
[2026-06-05 07:20:40,426.426 INFO    ] Checking for camera pi updates...
[2026-06-05 07:20:40,467.467 INFO    ] 200
[2026-06-05 07:20:40,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:40,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:20:40,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:20:40,564.564 INFO    ] No camera update needed
[2026-06-05 07:20:40,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:20:40,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:20:40,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:20:40,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:20:42,624.624 INFO    ] ================================================
[2026-06-05 07:20:42,640.640 INFO    ] Launching Daemon at Fri Jun  5 07:20:42 IST 2026
[2026-06-05 07:20:42,650.650 INFO    ] ================================================
[2026-06-05 07:20:43,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:20:43
[2026-06-05 07:20:43,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:20:44,070.070 INFO    ] Initializing speech engine...
[2026-06-05 07:20:44,076.076 INFO    ] 2026-06-05 07:20:44
[2026-06-05 07:20:44,367.367 INFO    ] 2026-06-05 07:20:44
[2026-06-05 07:20:44,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:20:44,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:20:44,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:20:44,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:20:44,742.742 INFO    ] time= 05/06/2026 07:20:44
[2026-06-05 07:20:44,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:20:44,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:20:44,863.863 INFO    ] No existing commands found in stream
[2026-06-05 07:20:49,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:20:49,879.879 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 07:20:52,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:20:52,365.365 INFO    ] Checking for system updates...
[2026-06-05 07:20:52,405.405 INFO    ] 200
[2026-06-05 07:20:52,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:52,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:20:52,472.472 INFO    ] No update needed
[2026-06-05 07:20:52,475.475 INFO    ] Checking for camera pi updates...
[2026-06-05 07:20:52,513.513 INFO    ] 200
[2026-06-05 07:20:52,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:20:52,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:20:52,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:20:52,612.612 INFO    ] No camera update needed
[2026-06-05 07:20:52,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:20:52,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:20:52,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:20:52,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:20:54,669.669 INFO    ] ================================================
[2026-06-05 07:20:54,684.684 INFO    ] Launching Daemon at Fri Jun  5 07:20:54 IST 2026
[2026-06-05 07:20:54,694.694 INFO    ] ================================================
[2026-06-05 07:20:55,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:20:55
[2026-06-05 07:20:55,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:20:56,152.152 INFO    ] Initializing speech engine...
[2026-06-05 07:20:56,160.160 INFO    ] 2026-06-05 07:20:56
[2026-06-05 07:20:56,452.452 INFO    ] 2026-06-05 07:20:56
[2026-06-05 07:20:56,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:20:56,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:20:56,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:20:56,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:20:56,869.869 INFO    ] time= 05/06/2026 07:20:56
[2026-06-05 07:20:56,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:20:56,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:20:57,043.043 INFO    ] No existing commands found in stream
[2026-06-05 07:21:02,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:21:02,070.070 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 07:21:05,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:21:05,675.675 INFO    ] Checking for system updates...
[2026-06-05 07:21:05,711.711 INFO    ] 200
[2026-06-05 07:21:05,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:05,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:21:05,770.770 INFO    ] No update needed
[2026-06-05 07:21:05,772.772 INFO    ] Checking for camera pi updates...
[2026-06-05 07:21:05,806.806 INFO    ] 200
[2026-06-05 07:21:05,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:05,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:21:05,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:21:05,996.996 INFO    ] No camera update needed
[2026-06-05 07:21:05,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:21:06,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:21:06,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:21:06,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:21:08,052.052 INFO    ] ================================================
[2026-06-05 07:21:08,067.067 INFO    ] Launching Daemon at Fri Jun  5 07:21:08 IST 2026
[2026-06-05 07:21:08,078.078 INFO    ] ================================================
[2026-06-05 07:21:08,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:21:08
[2026-06-05 07:21:09,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:21:09,479.479 INFO    ] Initializing speech engine...
[2026-06-05 07:21:09,487.487 INFO    ] 2026-06-05 07:21:09
[2026-06-05 07:21:09,761.761 INFO    ] 2026-06-05 07:21:09
[2026-06-05 07:21:09,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:21:09,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:21:09,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:21:10,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:21:10,134.134 INFO    ] time= 05/06/2026 07:21:10
[2026-06-05 07:21:10,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:21:10,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:21:10,297.297 INFO    ] No existing commands found in stream
[2026-06-05 07:21:15,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:21:15,325.325 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 07:21:18,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:21:18,536.536 INFO    ] Checking for system updates...
[2026-06-05 07:21:18,573.573 INFO    ] 200
[2026-06-05 07:21:18,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:18,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:21:18,635.635 INFO    ] No update needed
[2026-06-05 07:21:18,638.638 INFO    ] Checking for camera pi updates...
[2026-06-05 07:21:18,671.671 INFO    ] 200
[2026-06-05 07:21:18,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:18,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:21:18,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:21:18,759.759 INFO    ] No camera update needed
[2026-06-05 07:21:18,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:21:18,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:21:18,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:21:18,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:21:20,814.814 INFO    ] ================================================
[2026-06-05 07:21:20,830.830 INFO    ] Launching Daemon at Fri Jun  5 07:21:20 IST 2026
[2026-06-05 07:21:20,841.841 INFO    ] ================================================
[2026-06-05 07:21:21,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:21:21
[2026-06-05 07:21:21,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:21:22,247.247 INFO    ] Initializing speech engine...
[2026-06-05 07:21:22,271.271 INFO    ] 2026-06-05 07:21:22
[2026-06-05 07:21:22,527.527 INFO    ] 2026-06-05 07:21:22
[2026-06-05 07:21:22,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:21:22,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:21:22,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:21:22,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:21:22,908.908 INFO    ] time= 05/06/2026 07:21:22
[2026-06-05 07:21:22,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:21:22,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:21:23,068.068 INFO    ] No existing commands found in stream
[2026-06-05 07:21:28,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:21:28,096.096 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 07:21:28,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:21:28,828.828 INFO    ] Checking for system updates...
[2026-06-05 07:21:28,865.865 INFO    ] 200
[2026-06-05 07:21:28,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:28,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:21:28,925.925 INFO    ] No update needed
[2026-06-05 07:21:28,928.928 INFO    ] Checking for camera pi updates...
[2026-06-05 07:21:28,967.967 INFO    ] 200
[2026-06-05 07:21:28,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:29,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:21:29,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:21:29,069.069 INFO    ] No camera update needed
[2026-06-05 07:21:29,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:21:29,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:21:29,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:21:29,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:21:31,126.126 INFO    ] ================================================
[2026-06-05 07:21:31,141.141 INFO    ] Launching Daemon at Fri Jun  5 07:21:31 IST 2026
[2026-06-05 07:21:31,152.152 INFO    ] ================================================
[2026-06-05 07:21:31,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:21:31
[2026-06-05 07:21:32,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:21:32,910.910 INFO    ] Initializing speech engine...
[2026-06-05 07:21:32,923.923 INFO    ] 2026-06-05 07:21:32
[2026-06-05 07:21:33,240.240 INFO    ] 2026-06-05 07:21:33
[2026-06-05 07:21:33,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:21:33,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:21:33,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:21:33,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:21:33,750.750 INFO    ] time= 05/06/2026 07:21:33
[2026-06-05 07:21:33,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:21:33,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:21:33,877.877 INFO    ] No existing commands found in stream
[2026-06-05 07:21:38,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:21:38,917.917 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 07:21:41,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:21:41,043.043 INFO    ] Checking for system updates...
[2026-06-05 07:21:41,079.079 INFO    ] 200
[2026-06-05 07:21:41,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:41,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:21:41,137.137 INFO    ] No update needed
[2026-06-05 07:21:41,140.140 INFO    ] Checking for camera pi updates...
[2026-06-05 07:21:41,174.174 INFO    ] 200
[2026-06-05 07:21:41,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:41,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:21:41,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:21:41,263.263 INFO    ] No camera update needed
[2026-06-05 07:21:41,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:21:41,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:21:41,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:21:41,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:21:43,318.318 INFO    ] ================================================
[2026-06-05 07:21:43,334.334 INFO    ] Launching Daemon at Fri Jun  5 07:21:43 IST 2026
[2026-06-05 07:21:43,344.344 INFO    ] ================================================
[2026-06-05 07:21:44,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:21:44
[2026-06-05 07:21:44,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:21:45,024.024 INFO    ] Initializing speech engine...
[2026-06-05 07:21:45,036.036 INFO    ] 2026-06-05 07:21:45
[2026-06-05 07:21:45,329.329 INFO    ] 2026-06-05 07:21:45
[2026-06-05 07:21:45,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:21:45,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:21:45,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:21:45,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:21:45,890.890 INFO    ] time= 05/06/2026 07:21:45
[2026-06-05 07:21:45,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:21:45,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:21:46,021.021 INFO    ] No existing commands found in stream
[2026-06-05 07:21:51,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:21:51,047.047 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 07:21:52,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:21:52,399.399 INFO    ] Checking for system updates...
[2026-06-05 07:21:52,440.440 INFO    ] 200
[2026-06-05 07:21:52,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:52,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:21:52,500.500 INFO    ] No update needed
[2026-06-05 07:21:52,503.503 INFO    ] Checking for camera pi updates...
[2026-06-05 07:21:52,538.538 INFO    ] 200
[2026-06-05 07:21:52,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:21:52,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:21:52,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:21:52,635.635 INFO    ] No camera update needed
[2026-06-05 07:21:52,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:21:52,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:21:52,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:21:52,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:21:54,697.697 INFO    ] ================================================
[2026-06-05 07:21:54,713.713 INFO    ] Launching Daemon at Fri Jun  5 07:21:54 IST 2026
[2026-06-05 07:21:54,723.723 INFO    ] ================================================
[2026-06-05 07:21:55,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:21:55
[2026-06-05 07:21:55,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:21:56,259.259 INFO    ] Initializing speech engine...
[2026-06-05 07:21:56,265.265 INFO    ] 2026-06-05 07:21:56
[2026-06-05 07:21:56,511.511 INFO    ] 2026-06-05 07:21:56
[2026-06-05 07:21:56,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:21:56,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:21:56,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:21:56,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:21:57,015.015 INFO    ] time= 05/06/2026 07:21:56
[2026-06-05 07:21:57,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:21:57,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:21:57,193.193 INFO    ] No existing commands found in stream
[2026-06-05 07:22:02,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:22:02,221.221 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 07:22:03,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:22:03,073.073 INFO    ] Checking for system updates...
[2026-06-05 07:22:03,109.109 INFO    ] 200
[2026-06-05 07:22:03,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:03,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:22:03,167.167 INFO    ] No update needed
[2026-06-05 07:22:03,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 07:22:03,203.203 INFO    ] 200
[2026-06-05 07:22:03,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:03,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:22:03,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:22:03,277.277 INFO    ] No camera update needed
[2026-06-05 07:22:03,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:22:03,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:22:03,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:22:03,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:22:05,335.335 INFO    ] ================================================
[2026-06-05 07:22:05,351.351 INFO    ] Launching Daemon at Fri Jun  5 07:22:05 IST 2026
[2026-06-05 07:22:05,361.361 INFO    ] ================================================
[2026-06-05 07:22:05,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:22:05
[2026-06-05 07:22:06,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:22:06,921.921 INFO    ] Initializing speech engine...
[2026-06-05 07:22:06,928.928 INFO    ] 2026-06-05 07:22:06
[2026-06-05 07:22:07,208.208 INFO    ] 2026-06-05 07:22:07
[2026-06-05 07:22:07,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:22:07,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:22:07,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:22:07,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:22:07,679.679 INFO    ] time= 05/06/2026 07:22:07
[2026-06-05 07:22:07,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:22:07,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:22:07,873.873 INFO    ] No existing commands found in stream
[2026-06-05 07:22:12,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:22:12,894.894 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 07:22:14,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:22:14,945.945 INFO    ] Checking for system updates...
[2026-06-05 07:22:14,981.981 INFO    ] 200
[2026-06-05 07:22:14,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:15,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:22:15,039.039 INFO    ] No update needed
[2026-06-05 07:22:15,042.042 INFO    ] Checking for camera pi updates...
[2026-06-05 07:22:15,076.076 INFO    ] 200
[2026-06-05 07:22:15,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:15,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:22:15,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:22:15,159.159 INFO    ] No camera update needed
[2026-06-05 07:22:15,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:22:15,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:22:15,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:22:15,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:22:17,214.214 INFO    ] ================================================
[2026-06-05 07:22:17,229.229 INFO    ] Launching Daemon at Fri Jun  5 07:22:17 IST 2026
[2026-06-05 07:22:17,240.240 INFO    ] ================================================
[2026-06-05 07:22:17,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:22:17
[2026-06-05 07:22:18,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:22:18,659.659 INFO    ] Initializing speech engine...
[2026-06-05 07:22:18,668.668 INFO    ] 2026-06-05 07:22:18
[2026-06-05 07:22:18,915.915 INFO    ] 2026-06-05 07:22:18
[2026-06-05 07:22:18,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:22:19,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:22:19,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:22:19,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:22:19,412.412 INFO    ] time= 05/06/2026 07:22:19
[2026-06-05 07:22:19,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:22:19,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:22:19,531.531 INFO    ] No existing commands found in stream
[2026-06-05 07:22:24,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:22:24,546.546 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 07:22:28,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:22:28,889.889 INFO    ] Checking for system updates...
[2026-06-05 07:22:28,924.924 INFO    ] 200
[2026-06-05 07:22:28,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:28,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:22:28,982.982 INFO    ] No update needed
[2026-06-05 07:22:28,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 07:22:29,022.022 INFO    ] 200
[2026-06-05 07:22:29,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:29,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:22:29,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:22:29,110.110 INFO    ] No camera update needed
[2026-06-05 07:22:29,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:22:29,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:22:29,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:22:29,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:22:31,166.166 INFO    ] ================================================
[2026-06-05 07:22:31,181.181 INFO    ] Launching Daemon at Fri Jun  5 07:22:31 IST 2026
[2026-06-05 07:22:31,192.192 INFO    ] ================================================
[2026-06-05 07:22:31,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:22:31
[2026-06-05 07:22:32,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:22:32,934.934 INFO    ] Initializing speech engine...
[2026-06-05 07:22:32,940.940 INFO    ] 2026-06-05 07:22:32
[2026-06-05 07:22:33,240.240 INFO    ] 2026-06-05 07:22:33
[2026-06-05 07:22:33,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:22:33,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:22:33,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:22:33,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:22:33,598.598 INFO    ] time= 05/06/2026 07:22:33
[2026-06-05 07:22:33,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:22:33,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:22:33,682.682 INFO    ] No existing commands found in stream
[2026-06-05 07:22:38,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:22:38,695.695 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 07:22:42,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:22:42,484.484 INFO    ] Checking for system updates...
[2026-06-05 07:22:42,520.520 INFO    ] 200
[2026-06-05 07:22:42,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:42,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:22:42,577.577 INFO    ] No update needed
[2026-06-05 07:22:42,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 07:22:42,614.614 INFO    ] 200
[2026-06-05 07:22:42,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:42,657.657 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:22:42,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:22:42,704.704 INFO    ] No camera update needed
[2026-06-05 07:22:42,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:22:42,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:22:42,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:22:42,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:22:44,760.760 INFO    ] ================================================
[2026-06-05 07:22:44,775.775 INFO    ] Launching Daemon at Fri Jun  5 07:22:44 IST 2026
[2026-06-05 07:22:44,786.786 INFO    ] ================================================
[2026-06-05 07:22:45,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:22:45
[2026-06-05 07:22:45,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:22:46,197.197 INFO    ] Initializing speech engine...
[2026-06-05 07:22:46,210.210 INFO    ] 2026-06-05 07:22:46
[2026-06-05 07:22:46,476.476 INFO    ] 2026-06-05 07:22:46
[2026-06-05 07:22:46,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:22:46,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:22:46,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:22:46,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:22:46,886.886 INFO    ] time= 05/06/2026 07:22:46
[2026-06-05 07:22:46,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:22:46,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:22:47,054.054 INFO    ] No existing commands found in stream
[2026-06-05 07:22:52,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:22:52,081.081 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 07:22:54,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:22:54,184.184 INFO    ] Checking for system updates...
[2026-06-05 07:22:54,220.220 INFO    ] 200
[2026-06-05 07:22:54,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:54,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:22:54,277.277 INFO    ] No update needed
[2026-06-05 07:22:54,280.280 INFO    ] Checking for camera pi updates...
[2026-06-05 07:22:54,313.313 INFO    ] 200
[2026-06-05 07:22:54,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:22:54,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:22:54,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:22:54,408.408 INFO    ] No camera update needed
[2026-06-05 07:22:54,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:22:54,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:22:54,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:22:54,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:22:56,465.465 INFO    ] ================================================
[2026-06-05 07:22:56,480.480 INFO    ] Launching Daemon at Fri Jun  5 07:22:56 IST 2026
[2026-06-05 07:22:56,491.491 INFO    ] ================================================
[2026-06-05 07:22:57,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:22:57
[2026-06-05 07:22:57,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:22:58,137.137 INFO    ] Initializing speech engine...
[2026-06-05 07:22:58,151.151 INFO    ] 2026-06-05 07:22:58
[2026-06-05 07:22:58,439.439 INFO    ] 2026-06-05 07:22:58
[2026-06-05 07:22:58,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:22:58,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:22:58,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:22:58,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:22:58,972.972 INFO    ] time= 05/06/2026 07:22:58
[2026-06-05 07:22:58,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:22:59,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:22:59,121.121 INFO    ] No existing commands found in stream
[2026-06-05 07:23:04,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:23:04,141.141 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 07:23:08,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:23:08,159.159 INFO    ] Checking for system updates...
[2026-06-05 07:23:08,197.197 INFO    ] 200
[2026-06-05 07:23:08,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:08,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:23:08,264.264 INFO    ] No update needed
[2026-06-05 07:23:08,266.266 INFO    ] Checking for camera pi updates...
[2026-06-05 07:23:08,301.301 INFO    ] 200
[2026-06-05 07:23:08,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:08,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:23:08,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:23:08,493.493 INFO    ] No camera update needed
[2026-06-05 07:23:08,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:23:08,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:23:08,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:23:08,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:23:10,553.553 INFO    ] ================================================
[2026-06-05 07:23:10,569.569 INFO    ] Launching Daemon at Fri Jun  5 07:23:10 IST 2026
[2026-06-05 07:23:10,580.580 INFO    ] ================================================
[2026-06-05 07:23:11,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:23:11
[2026-06-05 07:23:11,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:23:11,994.994 INFO    ] Initializing speech engine...
[2026-06-05 07:23:12,000.000 INFO    ] 2026-06-05 07:23:11
[2026-06-05 07:23:12,298.298 INFO    ] 2026-06-05 07:23:12
[2026-06-05 07:23:12,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:23:12,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:23:12,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:23:12,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:23:12,691.691 INFO    ] time= 05/06/2026 07:23:12
[2026-06-05 07:23:12,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:23:12,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:23:12,798.798 INFO    ] No existing commands found in stream
[2026-06-05 07:23:17,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:23:17,814.814 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 07:23:20,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:23:20,950.950 INFO    ] Checking for system updates...
[2026-06-05 07:23:20,986.986 INFO    ] 200
[2026-06-05 07:23:20,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:21,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:23:21,050.050 INFO    ] No update needed
[2026-06-05 07:23:21,052.052 INFO    ] Checking for camera pi updates...
[2026-06-05 07:23:21,089.089 INFO    ] 200
[2026-06-05 07:23:21,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:21,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:23:21,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:23:21,184.184 INFO    ] No camera update needed
[2026-06-05 07:23:21,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:23:21,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:23:21,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:23:21,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:23:23,240.240 INFO    ] ================================================
[2026-06-05 07:23:23,254.254 INFO    ] Launching Daemon at Fri Jun  5 07:23:23 IST 2026
[2026-06-05 07:23:23,266.266 INFO    ] ================================================
[2026-06-05 07:23:23,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:23:23
[2026-06-05 07:23:24,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:23:24,908.908 INFO    ] Initializing speech engine...
[2026-06-05 07:23:24,920.920 INFO    ] 2026-06-05 07:23:24
[2026-06-05 07:23:25,187.187 INFO    ] 2026-06-05 07:23:25
[2026-06-05 07:23:25,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:23:25,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:23:25,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:23:25,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:23:25,655.655 INFO    ] time= 05/06/2026 07:23:25
[2026-06-05 07:23:25,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:23:25,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:23:25,806.806 INFO    ] No existing commands found in stream
[2026-06-05 07:23:30,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:23:30,848.848 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 07:23:32,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:23:32,215.215 INFO    ] Checking for system updates...
[2026-06-05 07:23:32,259.259 INFO    ] 200
[2026-06-05 07:23:32,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:32,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:23:32,329.329 INFO    ] No update needed
[2026-06-05 07:23:32,332.332 INFO    ] Checking for camera pi updates...
[2026-06-05 07:23:32,368.368 INFO    ] 200
[2026-06-05 07:23:32,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:32,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:23:32,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:23:32,446.446 INFO    ] No camera update needed
[2026-06-05 07:23:32,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:23:32,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:23:32,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:23:32,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:23:34,507.507 INFO    ] ================================================
[2026-06-05 07:23:34,523.523 INFO    ] Launching Daemon at Fri Jun  5 07:23:34 IST 2026
[2026-06-05 07:23:34,534.534 INFO    ] ================================================
[2026-06-05 07:23:35,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:23:35
[2026-06-05 07:23:35,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:23:36,195.195 INFO    ] Initializing speech engine...
[2026-06-05 07:23:36,207.207 INFO    ] 2026-06-05 07:23:36
[2026-06-05 07:23:36,495.495 INFO    ] 2026-06-05 07:23:36
[2026-06-05 07:23:36,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:23:36,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:23:36,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:23:36,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:23:37,026.026 INFO    ] time= 05/06/2026 07:23:36
[2026-06-05 07:23:37,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:23:37,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:23:37,161.161 INFO    ] No existing commands found in stream
[2026-06-05 07:23:42,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:23:42,192.192 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 07:23:44,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:23:44,347.347 INFO    ] Checking for system updates...
[2026-06-05 07:23:44,383.383 INFO    ] 200
[2026-06-05 07:23:44,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:44,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:23:44,442.442 INFO    ] No update needed
[2026-06-05 07:23:44,444.444 INFO    ] Checking for camera pi updates...
[2026-06-05 07:23:44,478.478 INFO    ] 200
[2026-06-05 07:23:44,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:44,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:23:44,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:23:44,562.562 INFO    ] No camera update needed
[2026-06-05 07:23:44,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:23:44,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:23:44,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:23:44,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:23:46,619.619 INFO    ] ================================================
[2026-06-05 07:23:46,635.635 INFO    ] Launching Daemon at Fri Jun  5 07:23:46 IST 2026
[2026-06-05 07:23:46,646.646 INFO    ] ================================================
[2026-06-05 07:23:47,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:23:47
[2026-06-05 07:23:48,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:23:48,306.306 INFO    ] Initializing speech engine...
[2026-06-05 07:23:48,313.313 INFO    ] 2026-06-05 07:23:48
[2026-06-05 07:23:48,600.600 INFO    ] 2026-06-05 07:23:48
[2026-06-05 07:23:48,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:23:48,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:23:48,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:23:49,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:23:49,085.085 INFO    ] time= 05/06/2026 07:23:49
[2026-06-05 07:23:49,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:23:49,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:23:49,204.204 INFO    ] No existing commands found in stream
[2026-06-05 07:23:54,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:23:54,220.220 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 07:23:57,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:23:57,690.690 INFO    ] Checking for system updates...
[2026-06-05 07:23:57,728.728 INFO    ] 200
[2026-06-05 07:23:57,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:57,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:23:57,791.791 INFO    ] No update needed
[2026-06-05 07:23:57,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 07:23:57,832.832 INFO    ] 200
[2026-06-05 07:23:57,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:23:57,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:23:57,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:23:57,926.926 INFO    ] No camera update needed
[2026-06-05 07:23:57,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:23:57,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:23:57,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:23:57,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:23:59,986.986 INFO    ] ================================================
[2026-06-05 07:24:00,001.001 INFO    ] Launching Daemon at Fri Jun  5 07:23:59 IST 2026
[2026-06-05 07:24:00,013.013 INFO    ] ================================================
[2026-06-05 07:24:00,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:24:00
[2026-06-05 07:24:01,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:24:01,660.660 INFO    ] Initializing speech engine...
[2026-06-05 07:24:01,678.678 INFO    ] 2026-06-05 07:24:01
[2026-06-05 07:24:02,008.008 INFO    ] 2026-06-05 07:24:01
[2026-06-05 07:24:02,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:24:02,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:24:02,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:24:02,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:24:02,421.421 INFO    ] time= 05/06/2026 07:24:02
[2026-06-05 07:24:02,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:24:02,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:24:02,532.532 INFO    ] No existing commands found in stream
[2026-06-05 07:24:07,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:24:07,552.552 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 07:24:11,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:24:11,214.214 INFO    ] Checking for system updates...
[2026-06-05 07:24:11,254.254 INFO    ] 200
[2026-06-05 07:24:11,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:11,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:24:11,312.312 INFO    ] No update needed
[2026-06-05 07:24:11,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 07:24:11,347.347 INFO    ] 200
[2026-06-05 07:24:11,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:11,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:24:11,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:24:11,439.439 INFO    ] No camera update needed
[2026-06-05 07:24:11,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:24:11,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:24:11,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:24:11,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:24:13,494.494 INFO    ] ================================================
[2026-06-05 07:24:13,510.510 INFO    ] Launching Daemon at Fri Jun  5 07:24:13 IST 2026
[2026-06-05 07:24:13,521.521 INFO    ] ================================================
[2026-06-05 07:24:14,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:24:14
[2026-06-05 07:24:14,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:24:14,944.944 INFO    ] Initializing speech engine...
[2026-06-05 07:24:14,954.954 INFO    ] 2026-06-05 07:24:14
[2026-06-05 07:24:15,198.198 INFO    ] 2026-06-05 07:24:15
[2026-06-05 07:24:15,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:24:15,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:24:15,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:24:15,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:24:15,565.565 INFO    ] time= 05/06/2026 07:24:15
[2026-06-05 07:24:15,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:24:15,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:24:15,640.640 INFO    ] No existing commands found in stream
[2026-06-05 07:24:20,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:24:20,655.655 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 07:24:21,915.915 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:24:21,918.918 INFO    ] Checking for system updates...
[2026-06-05 07:24:21,958.958 INFO    ] 200
[2026-06-05 07:24:21,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:22,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:24:22,015.015 INFO    ] No update needed
[2026-06-05 07:24:22,018.018 INFO    ] Checking for camera pi updates...
[2026-06-05 07:24:22,051.051 INFO    ] 200
[2026-06-05 07:24:22,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:22,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:24:22,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:24:22,147.147 INFO    ] No camera update needed
[2026-06-05 07:24:22,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:24:22,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:24:22,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:24:22,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:24:24,204.204 INFO    ] ================================================
[2026-06-05 07:24:24,221.221 INFO    ] Launching Daemon at Fri Jun  5 07:24:24 IST 2026
[2026-06-05 07:24:24,232.232 INFO    ] ================================================
[2026-06-05 07:24:24,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:24:24
[2026-06-05 07:24:25,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:24:25,636.636 INFO    ] Initializing speech engine...
[2026-06-05 07:24:25,644.644 INFO    ] 2026-06-05 07:24:25
[2026-06-05 07:24:25,917.917 INFO    ] 2026-06-05 07:24:25
[2026-06-05 07:24:25,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:24:26,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:24:26,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:24:26,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:24:26,333.333 INFO    ] time= 05/06/2026 07:24:26
[2026-06-05 07:24:26,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:24:26,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:24:26,419.419 INFO    ] No existing commands found in stream
[2026-06-05 07:24:31,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:24:31,435.435 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-05 07:24:33,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:24:33,078.078 INFO    ] Checking for system updates...
[2026-06-05 07:24:33,114.114 INFO    ] 200
[2026-06-05 07:24:33,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:33,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:24:33,202.202 INFO    ] No update needed
[2026-06-05 07:24:33,205.205 INFO    ] Checking for camera pi updates...
[2026-06-05 07:24:33,243.243 INFO    ] 200
[2026-06-05 07:24:33,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:33,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:24:33,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:24:33,336.336 INFO    ] No camera update needed
[2026-06-05 07:24:33,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:24:33,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:24:33,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:24:33,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:24:35,395.395 INFO    ] ================================================
[2026-06-05 07:24:35,411.411 INFO    ] Launching Daemon at Fri Jun  5 07:24:35 IST 2026
[2026-06-05 07:24:35,423.423 INFO    ] ================================================
[2026-06-05 07:24:36,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:24:36
[2026-06-05 07:24:36,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:24:37,158.158 INFO    ] Initializing speech engine...
[2026-06-05 07:24:37,170.170 INFO    ] 2026-06-05 07:24:37
[2026-06-05 07:24:37,431.431 INFO    ] 2026-06-05 07:24:37
[2026-06-05 07:24:37,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:24:37,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:24:37,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:24:37,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:24:37,783.783 INFO    ] time= 05/06/2026 07:24:37
[2026-06-05 07:24:37,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:24:37,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:24:37,909.909 INFO    ] No existing commands found in stream
[2026-06-05 07:24:42,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:24:42,926.926 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 07:24:45,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:24:45,379.379 INFO    ] Checking for system updates...
[2026-06-05 07:24:45,419.419 INFO    ] 200
[2026-06-05 07:24:45,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:45,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:24:45,490.490 INFO    ] No update needed
[2026-06-05 07:24:45,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 07:24:45,526.526 INFO    ] 200
[2026-06-05 07:24:45,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:45,575.575 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:24:45,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:24:45,619.619 INFO    ] No camera update needed
[2026-06-05 07:24:45,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:24:45,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:24:45,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:24:45,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:24:47,673.673 INFO    ] ================================================
[2026-06-05 07:24:47,688.688 INFO    ] Launching Daemon at Fri Jun  5 07:24:47 IST 2026
[2026-06-05 07:24:47,700.700 INFO    ] ================================================
[2026-06-05 07:24:48,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:24:48
[2026-06-05 07:24:48,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:24:49,114.114 INFO    ] Initializing speech engine...
[2026-06-05 07:24:49,121.121 INFO    ] 2026-06-05 07:24:49
[2026-06-05 07:24:49,419.419 INFO    ] 2026-06-05 07:24:49
[2026-06-05 07:24:49,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:24:49,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:24:49,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:24:49,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:24:49,781.781 INFO    ] time= 05/06/2026 07:24:49
[2026-06-05 07:24:49,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:24:49,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:24:49,881.881 INFO    ] No existing commands found in stream
[2026-06-05 07:24:54,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:24:54,899.899 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 07:24:55,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:24:55,349.349 INFO    ] Checking for system updates...
[2026-06-05 07:24:55,389.389 INFO    ] 200
[2026-06-05 07:24:55,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:55,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:24:55,454.454 INFO    ] No update needed
[2026-06-05 07:24:55,457.457 INFO    ] Checking for camera pi updates...
[2026-06-05 07:24:55,490.490 INFO    ] 200
[2026-06-05 07:24:55,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:24:55,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:24:55,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:24:55,593.593 INFO    ] No camera update needed
[2026-06-05 07:24:55,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:24:55,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:24:55,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:24:55,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:24:57,647.647 INFO    ] ================================================
[2026-06-05 07:24:57,663.663 INFO    ] Launching Daemon at Fri Jun  5 07:24:57 IST 2026
[2026-06-05 07:24:57,674.674 INFO    ] ================================================
[2026-06-05 07:24:58,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:24:58
[2026-06-05 07:24:58,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:24:59,120.120 INFO    ] Initializing speech engine...
[2026-06-05 07:24:59,127.127 INFO    ] 2026-06-05 07:24:59
[2026-06-05 07:24:59,387.387 INFO    ] 2026-06-05 07:24:59
[2026-06-05 07:24:59,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:24:59,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:24:59,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:24:59,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:24:59,882.882 INFO    ] time= 05/06/2026 07:24:59
[2026-06-05 07:24:59,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:24:59,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:25:00,072.072 INFO    ] No existing commands found in stream
[2026-06-05 07:25:05,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:25:05,096.096 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 07:25:07,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:25:07,863.863 INFO    ] Checking for system updates...
[2026-06-05 07:25:07,899.899 INFO    ] 200
[2026-06-05 07:25:07,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:07,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:25:07,958.958 INFO    ] No update needed
[2026-06-05 07:25:07,960.960 INFO    ] Checking for camera pi updates...
[2026-06-05 07:25:07,998.998 INFO    ] 200
[2026-06-05 07:25:08,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:08,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:25:08,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:25:08,093.093 INFO    ] No camera update needed
[2026-06-05 07:25:08,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:25:08,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:25:08,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:25:08,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:25:10,147.147 INFO    ] ================================================
[2026-06-05 07:25:10,162.162 INFO    ] Launching Daemon at Fri Jun  5 07:25:10 IST 2026
[2026-06-05 07:25:10,173.173 INFO    ] ================================================
[2026-06-05 07:25:10,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:25:10
[2026-06-05 07:25:11,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:25:11,597.597 INFO    ] Initializing speech engine...
[2026-06-05 07:25:11,605.605 INFO    ] 2026-06-05 07:25:11
[2026-06-05 07:25:11,854.854 INFO    ] 2026-06-05 07:25:11
[2026-06-05 07:25:11,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:25:12,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:25:12,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:25:12,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:25:12,221.221 INFO    ] time= 05/06/2026 07:25:12
[2026-06-05 07:25:12,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:25:12,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:25:12,377.377 INFO    ] No existing commands found in stream
[2026-06-05 07:25:17,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:25:17,411.411 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 07:25:20,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:25:20,349.349 INFO    ] Checking for system updates...
[2026-06-05 07:25:20,396.396 INFO    ] 200
[2026-06-05 07:25:20,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:20,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:25:20,454.454 INFO    ] No update needed
[2026-06-05 07:25:20,457.457 INFO    ] Checking for camera pi updates...
[2026-06-05 07:25:20,494.494 INFO    ] 200
[2026-06-05 07:25:20,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:20,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:25:20,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:25:20,699.699 INFO    ] No camera update needed
[2026-06-05 07:25:20,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:25:20,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:25:20,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:25:20,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:25:22,756.756 INFO    ] ================================================
[2026-06-05 07:25:22,771.771 INFO    ] Launching Daemon at Fri Jun  5 07:25:22 IST 2026
[2026-06-05 07:25:22,789.789 INFO    ] ================================================
[2026-06-05 07:25:23,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:25:23
[2026-06-05 07:25:23,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:25:24,260.260 INFO    ] Initializing speech engine...
[2026-06-05 07:25:24,267.267 INFO    ] 2026-06-05 07:25:24
[2026-06-05 07:25:24,552.552 INFO    ] 2026-06-05 07:25:24
[2026-06-05 07:25:24,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:25:24,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:25:24,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:25:24,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:25:24,977.977 INFO    ] time= 05/06/2026 07:25:24
[2026-06-05 07:25:25,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:25:25,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:25:25,142.142 INFO    ] No existing commands found in stream
[2026-06-05 07:25:30,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:25:30,157.157 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 07:25:33,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:25:33,529.529 INFO    ] Checking for system updates...
[2026-06-05 07:25:33,565.565 INFO    ] 200
[2026-06-05 07:25:33,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:33,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:25:33,624.624 INFO    ] No update needed
[2026-06-05 07:25:33,626.626 INFO    ] Checking for camera pi updates...
[2026-06-05 07:25:33,660.660 INFO    ] 200
[2026-06-05 07:25:33,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:33,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:25:33,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:25:33,748.748 INFO    ] No camera update needed
[2026-06-05 07:25:33,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:25:33,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:25:33,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:25:33,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:25:35,807.807 INFO    ] ================================================
[2026-06-05 07:25:35,823.823 INFO    ] Launching Daemon at Fri Jun  5 07:25:35 IST 2026
[2026-06-05 07:25:35,834.834 INFO    ] ================================================
[2026-06-05 07:25:36,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:25:36
[2026-06-05 07:25:37,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:25:37,384.384 INFO    ] Initializing speech engine...
[2026-06-05 07:25:37,395.395 INFO    ] 2026-06-05 07:25:37
[2026-06-05 07:25:37,658.658 INFO    ] 2026-06-05 07:25:37
[2026-06-05 07:25:37,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:25:37,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:25:37,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:25:38,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:25:38,105.105 INFO    ] time= 05/06/2026 07:25:38
[2026-06-05 07:25:38,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:25:38,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:25:38,250.250 INFO    ] No existing commands found in stream
[2026-06-05 07:25:43,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:25:43,266.266 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 07:25:43,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:25:43,813.813 INFO    ] Checking for system updates...
[2026-06-05 07:25:43,849.849 INFO    ] 200
[2026-06-05 07:25:43,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:43,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:25:43,908.908 INFO    ] No update needed
[2026-06-05 07:25:43,911.911 INFO    ] Checking for camera pi updates...
[2026-06-05 07:25:43,945.945 INFO    ] 200
[2026-06-05 07:25:43,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:43,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:25:44,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:25:44,050.050 INFO    ] No camera update needed
[2026-06-05 07:25:44,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:25:44,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:25:44,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:25:44,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:25:46,107.107 INFO    ] ================================================
[2026-06-05 07:25:46,122.122 INFO    ] Launching Daemon at Fri Jun  5 07:25:46 IST 2026
[2026-06-05 07:25:46,133.133 INFO    ] ================================================
[2026-06-05 07:25:46,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:25:46
[2026-06-05 07:25:47,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:25:47,536.536 INFO    ] Initializing speech engine...
[2026-06-05 07:25:47,558.558 INFO    ] 2026-06-05 07:25:47
[2026-06-05 07:25:47,810.810 INFO    ] 2026-06-05 07:25:47
[2026-06-05 07:25:47,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:25:48,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:25:48,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:25:48,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:25:48,180.180 INFO    ] time= 05/06/2026 07:25:48
[2026-06-05 07:25:48,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:25:48,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:25:48,338.338 INFO    ] No existing commands found in stream
[2026-06-05 07:25:53,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:25:53,366.366 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 07:25:56,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:25:56,049.049 INFO    ] Checking for system updates...
[2026-06-05 07:25:56,089.089 INFO    ] 200
[2026-06-05 07:25:56,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:56,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:25:56,154.154 INFO    ] No update needed
[2026-06-05 07:25:56,156.156 INFO    ] Checking for camera pi updates...
[2026-06-05 07:25:56,194.194 INFO    ] 200
[2026-06-05 07:25:56,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:25:56,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:25:56,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:25:56,292.292 INFO    ] No camera update needed
[2026-06-05 07:25:56,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:25:56,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:25:56,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:25:56,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:25:58,349.349 INFO    ] ================================================
[2026-06-05 07:25:58,364.364 INFO    ] Launching Daemon at Fri Jun  5 07:25:58 IST 2026
[2026-06-05 07:25:58,376.376 INFO    ] ================================================
[2026-06-05 07:25:59,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:25:59
[2026-06-05 07:25:59,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:26:00,035.035 INFO    ] Initializing speech engine...
[2026-06-05 07:26:00,043.043 INFO    ] 2026-06-05 07:26:00
[2026-06-05 07:26:00,340.340 INFO    ] 2026-06-05 07:26:00
[2026-06-05 07:26:00,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:26:00,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:26:00,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:26:00,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:26:00,890.890 INFO    ] time= 05/06/2026 07:26:00
[2026-06-05 07:26:00,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:26:00,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:26:01,033.033 INFO    ] No existing commands found in stream
[2026-06-05 07:26:06,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:26:06,069.069 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 07:26:08,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:26:08,425.425 INFO    ] Checking for system updates...
[2026-06-05 07:26:08,462.462 INFO    ] 200
[2026-06-05 07:26:08,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:08,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:26:08,523.523 INFO    ] No update needed
[2026-06-05 07:26:08,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 07:26:08,561.561 INFO    ] 200
[2026-06-05 07:26:08,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:08,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:26:08,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:26:08,662.662 INFO    ] No camera update needed
[2026-06-05 07:26:08,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:26:08,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:26:08,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:26:08,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:26:10,721.721 INFO    ] ================================================
[2026-06-05 07:26:10,737.737 INFO    ] Launching Daemon at Fri Jun  5 07:26:10 IST 2026
[2026-06-05 07:26:10,748.748 INFO    ] ================================================
[2026-06-05 07:26:11,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:26:11
[2026-06-05 07:26:11,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:26:12,167.167 INFO    ] Initializing speech engine...
[2026-06-05 07:26:12,182.182 INFO    ] 2026-06-05 07:26:12
[2026-06-05 07:26:12,450.450 INFO    ] 2026-06-05 07:26:12
[2026-06-05 07:26:12,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:26:12,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:26:12,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:26:12,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:26:12,928.928 INFO    ] time= 05/06/2026 07:26:12
[2026-06-05 07:26:12,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:26:13,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:26:13,065.065 INFO    ] No existing commands found in stream
[2026-06-05 07:26:18,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:26:18,080.080 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 07:26:19,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:26:19,935.935 INFO    ] Checking for system updates...
[2026-06-05 07:26:19,972.972 INFO    ] 200
[2026-06-05 07:26:19,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:20,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:26:20,029.029 INFO    ] No update needed
[2026-06-05 07:26:20,032.032 INFO    ] Checking for camera pi updates...
[2026-06-05 07:26:20,069.069 INFO    ] 200
[2026-06-05 07:26:20,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:20,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:26:20,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:26:20,174.174 INFO    ] No camera update needed
[2026-06-05 07:26:20,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:26:20,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:26:20,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:26:20,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:26:22,230.230 INFO    ] ================================================
[2026-06-05 07:26:22,246.246 INFO    ] Launching Daemon at Fri Jun  5 07:26:22 IST 2026
[2026-06-05 07:26:22,256.256 INFO    ] ================================================
[2026-06-05 07:26:22,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:26:22
[2026-06-05 07:26:23,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:26:23,706.706 INFO    ] Initializing speech engine...
[2026-06-05 07:26:23,715.715 INFO    ] 2026-06-05 07:26:23
[2026-06-05 07:26:23,961.961 INFO    ] 2026-06-05 07:26:23
[2026-06-05 07:26:24,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:26:24,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:26:24,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:26:24,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:26:24,430.430 INFO    ] time= 05/06/2026 07:26:24
[2026-06-05 07:26:24,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:26:24,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:26:24,576.576 INFO    ] No existing commands found in stream
[2026-06-05 07:26:29,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:26:29,590.590 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 07:26:33,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:26:33,096.096 INFO    ] Checking for system updates...
[2026-06-05 07:26:33,137.137 INFO    ] 200
[2026-06-05 07:26:33,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:33,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:26:33,209.209 INFO    ] No update needed
[2026-06-05 07:26:33,212.212 INFO    ] Checking for camera pi updates...
[2026-06-05 07:26:33,252.252 INFO    ] 200
[2026-06-05 07:26:33,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:33,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:26:33,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:26:33,351.351 INFO    ] No camera update needed
[2026-06-05 07:26:33,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:26:33,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:26:33,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:26:33,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:26:35,412.412 INFO    ] ================================================
[2026-06-05 07:26:35,428.428 INFO    ] Launching Daemon at Fri Jun  5 07:26:35 IST 2026
[2026-06-05 07:26:35,439.439 INFO    ] ================================================
[2026-06-05 07:26:36,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:26:36
[2026-06-05 07:26:36,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:26:36,902.902 INFO    ] Initializing speech engine...
[2026-06-05 07:26:36,912.912 INFO    ] 2026-06-05 07:26:36
[2026-06-05 07:26:37,158.158 INFO    ] 2026-06-05 07:26:37
[2026-06-05 07:26:37,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:26:37,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:26:37,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:26:37,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:26:37,627.627 INFO    ] time= 05/06/2026 07:26:37
[2026-06-05 07:26:37,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:26:37,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:26:37,776.776 INFO    ] No existing commands found in stream
[2026-06-05 07:26:42,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:26:42,790.790 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 07:26:45,908.908 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:26:45,911.911 INFO    ] Checking for system updates...
[2026-06-05 07:26:45,948.948 INFO    ] 200
[2026-06-05 07:26:45,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:46,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:26:46,007.007 INFO    ] No update needed
[2026-06-05 07:26:46,010.010 INFO    ] Checking for camera pi updates...
[2026-06-05 07:26:46,045.045 INFO    ] 200
[2026-06-05 07:26:46,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:46,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:26:46,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:26:46,140.140 INFO    ] No camera update needed
[2026-06-05 07:26:46,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:26:46,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:26:46,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:26:46,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:26:48,202.202 INFO    ] ================================================
[2026-06-05 07:26:48,218.218 INFO    ] Launching Daemon at Fri Jun  5 07:26:48 IST 2026
[2026-06-05 07:26:48,229.229 INFO    ] ================================================
[2026-06-05 07:26:48,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:26:48
[2026-06-05 07:26:49,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:26:49,646.646 INFO    ] Initializing speech engine...
[2026-06-05 07:26:49,655.655 INFO    ] 2026-06-05 07:26:49
[2026-06-05 07:26:49,901.901 INFO    ] 2026-06-05 07:26:49
[2026-06-05 07:26:49,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:26:50,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:26:50,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:26:50,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:26:50,400.400 INFO    ] time= 05/06/2026 07:26:50
[2026-06-05 07:26:50,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:26:50,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:26:50,587.587 INFO    ] No existing commands found in stream
[2026-06-05 07:26:55,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:26:55,617.617 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 07:26:59,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:26:59,696.696 INFO    ] Checking for system updates...
[2026-06-05 07:26:59,733.733 INFO    ] 200
[2026-06-05 07:26:59,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:59,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:26:59,793.793 INFO    ] No update needed
[2026-06-05 07:26:59,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 07:26:59,830.830 INFO    ] 200
[2026-06-05 07:26:59,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:26:59,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:26:59,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:26:59,928.928 INFO    ] No camera update needed
[2026-06-05 07:26:59,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:26:59,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:26:59,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:26:59,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:27:02,994.994 INFO    ] ================================================
[2026-06-05 07:27:02,013.013 INFO    ] Launching Daemon at Fri Jun  5 07:27:02 IST 2026
[2026-06-05 07:27:02,027.027 INFO    ] ================================================
[2026-06-05 07:27:02,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:27:02
[2026-06-05 07:27:03,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:27:03,629.629 INFO    ] Initializing speech engine...
[2026-06-05 07:27:03,645.645 INFO    ] 2026-06-05 07:27:03
[2026-06-05 07:27:03,933.933 INFO    ] 2026-06-05 07:27:03
[2026-06-05 07:27:03,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:27:04,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:27:04,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:27:04,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:27:04,312.312 INFO    ] time= 05/06/2026 07:27:04
[2026-06-05 07:27:04,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:27:04,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:27:04,438.438 INFO    ] No existing commands found in stream
[2026-06-05 07:27:09,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:27:09,454.454 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 07:27:10,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:27:10,731.731 INFO    ] Checking for system updates...
[2026-06-05 07:27:10,767.767 INFO    ] 200
[2026-06-05 07:27:10,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:27:10,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:27:10,831.831 INFO    ] No update needed
[2026-06-05 07:27:10,833.833 INFO    ] Checking for camera pi updates...
[2026-06-05 07:27:10,867.867 INFO    ] 200
[2026-06-05 07:27:10,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:27:10,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:27:10,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:27:10,956.956 INFO    ] No camera update needed
[2026-06-05 07:27:10,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:27:10,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:27:10,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:27:10,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:27:13,013.013 INFO    ] ================================================
[2026-06-05 07:27:13,028.028 INFO    ] Launching Daemon at Fri Jun  5 07:27:13 IST 2026
[2026-06-05 07:27:13,039.039 INFO    ] ================================================
[2026-06-05 07:27:13,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:27:13
[2026-06-05 07:27:14,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:27:14,471.471 INFO    ] Initializing speech engine...
[2026-06-05 07:27:14,480.480 INFO    ] 2026-06-05 07:27:14
[2026-06-05 07:27:14,729.729 INFO    ] 2026-06-05 07:27:14
[2026-06-05 07:27:14,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:27:15,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:27:15,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:27:15,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:27:15,199.199 INFO    ] time= 05/06/2026 07:27:15
[2026-06-05 07:27:15,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:27:15,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:27:15,407.407 INFO    ] No existing commands found in stream
[2026-06-05 07:27:20,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:27:20,437.437 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 07:27:23,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:27:23,344.344 INFO    ] Checking for system updates...
[2026-06-05 07:27:23,380.380 INFO    ] 200
[2026-06-05 07:27:23,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:27:23,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:27:23,438.438 INFO    ] No update needed
[2026-06-05 07:27:23,440.440 INFO    ] Checking for camera pi updates...
[2026-06-05 07:27:23,474.474 INFO    ] 200
[2026-06-05 07:27:23,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:27:23,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:27:23,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:27:23,672.672 INFO    ] No camera update needed
[2026-06-05 07:27:23,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:27:23,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:27:23,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:27:23,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:27:25,728.728 INFO    ] ================================================
[2026-06-05 07:27:25,743.743 INFO    ] Launching Daemon at Fri Jun  5 07:27:25 IST 2026
[2026-06-05 07:27:25,754.754 INFO    ] ================================================
[2026-06-05 07:27:26,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:27:26
[2026-06-05 07:27:26,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:27:27,194.194 INFO    ] Initializing speech engine...
[2026-06-05 07:27:27,203.203 INFO    ] 2026-06-05 07:27:27
[2026-06-05 07:27:27,465.465 INFO    ] 2026-06-05 07:27:27
[2026-06-05 07:27:27,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:27:27,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:27:27,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:27:27,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:27:27,915.915 INFO    ] time= 05/06/2026 07:27:27
[2026-06-05 07:27:27,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:27:28,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:27:28,076.076 INFO    ] No existing commands found in stream
[2026-06-05 07:27:33,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:27:33,090.090 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 07:27:35,432.432 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:27:35,435.435 INFO    ] Checking for system updates...
[2026-06-05 07:27:35,471.471 INFO    ] 200
[2026-06-05 07:27:35,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:27:35,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:27:35,530.530 INFO    ] No update needed
[2026-06-05 07:27:35,533.533 INFO    ] Checking for camera pi updates...
[2026-06-05 07:27:35,571.571 INFO    ] 200
[2026-06-05 07:27:35,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:27:35,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:27:35,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:27:35,671.671 INFO    ] No camera update needed
[2026-06-05 07:27:35,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:27:35,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:27:35,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:27:35,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:27:37,733.733 INFO    ] ================================================
[2026-06-05 07:27:37,748.748 INFO    ] Launching Daemon at Fri Jun  5 07:27:37 IST 2026
[2026-06-05 07:27:37,759.759 INFO    ] ================================================
[2026-06-05 07:27:38,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:27:38
[2026-06-05 07:27:38,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:27:39,168.168 INFO    ] Initializing speech engine...
[2026-06-05 07:27:39,174.174 INFO    ] 2026-06-05 07:27:39
[2026-06-05 07:27:39,471.471 INFO    ] 2026-06-05 07:27:39
[2026-06-05 07:27:39,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:27:39,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:27:39,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:27:39,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:27:39,895.895 INFO    ] time= 05/06/2026 07:27:39
[2026-06-05 07:27:39,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:27:39,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:27:39,980.980 INFO    ] No existing commands found in stream
[2026-06-05 07:27:44,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:27:44,995.995 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 07:27:49,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:27:49,048.048 INFO    ] Checking for system updates...
[2026-06-05 07:27:49,088.088 INFO    ] 200
[2026-06-05 07:27:49,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:27:49,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:27:49,146.146 INFO    ] No update needed
[2026-06-05 07:27:49,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 07:27:49,186.186 INFO    ] 200
[2026-06-05 07:27:49,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:27:49,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:27:49,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:27:49,281.281 INFO    ] No camera update needed
[2026-06-05 07:27:49,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:27:49,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:27:49,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:27:49,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:27:51,337.337 INFO    ] ================================================
[2026-06-05 07:27:51,352.352 INFO    ] Launching Daemon at Fri Jun  5 07:27:51 IST 2026
[2026-06-05 07:27:51,363.363 INFO    ] ================================================
[2026-06-05 07:27:51,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:27:51
[2026-06-05 07:27:52,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:27:52,945.945 INFO    ] Initializing speech engine...
[2026-06-05 07:27:52,953.953 INFO    ] 2026-06-05 07:27:52
[2026-06-05 07:27:53,260.260 INFO    ] 2026-06-05 07:27:53
[2026-06-05 07:27:53,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:27:53,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:27:53,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:27:53,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:27:53,769.769 INFO    ] time= 05/06/2026 07:27:53
[2026-06-05 07:27:53,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:27:53,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:27:53,924.924 INFO    ] No existing commands found in stream
[2026-06-05 07:27:58,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:27:58,953.953 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 07:28:00,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:28:00,928.928 INFO    ] Checking for system updates...
[2026-06-05 07:28:00,965.965 INFO    ] 200
[2026-06-05 07:28:00,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:01,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:28:01,024.024 INFO    ] No update needed
[2026-06-05 07:28:01,027.027 INFO    ] Checking for camera pi updates...
[2026-06-05 07:28:01,062.062 INFO    ] 200
[2026-06-05 07:28:01,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:01,106.106 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:28:01,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:28:01,176.176 INFO    ] No camera update needed
[2026-06-05 07:28:01,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:28:01,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:28:01,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:28:01,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:28:03,271.271 INFO    ] ================================================
[2026-06-05 07:28:03,288.288 INFO    ] Launching Daemon at Fri Jun  5 07:28:03 IST 2026
[2026-06-05 07:28:03,299.299 INFO    ] ================================================
[2026-06-05 07:28:03,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:28:03
[2026-06-05 07:28:04,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:28:04,705.705 INFO    ] Initializing speech engine...
[2026-06-05 07:28:04,720.720 INFO    ] 2026-06-05 07:28:04
[2026-06-05 07:28:04,983.983 INFO    ] 2026-06-05 07:28:04
[2026-06-05 07:28:05,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:28:05,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:28:05,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:28:05,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:28:05,356.356 INFO    ] time= 05/06/2026 07:28:05
[2026-06-05 07:28:05,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:28:05,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:28:05,522.522 INFO    ] No existing commands found in stream
[2026-06-05 07:28:10,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:28:10,555.555 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 07:28:14,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:28:14,606.606 INFO    ] Checking for system updates...
[2026-06-05 07:28:14,644.644 INFO    ] 200
[2026-06-05 07:28:14,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:14,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:28:14,705.705 INFO    ] No update needed
[2026-06-05 07:28:14,708.708 INFO    ] Checking for camera pi updates...
[2026-06-05 07:28:14,747.747 INFO    ] 200
[2026-06-05 07:28:14,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:14,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:28:14,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:28:14,840.840 INFO    ] No camera update needed
[2026-06-05 07:28:14,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:28:14,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:28:14,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:28:14,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:28:16,900.900 INFO    ] ================================================
[2026-06-05 07:28:16,916.916 INFO    ] Launching Daemon at Fri Jun  5 07:28:16 IST 2026
[2026-06-05 07:28:16,928.928 INFO    ] ================================================
[2026-06-05 07:28:17,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:28:17
[2026-06-05 07:28:18,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:28:18,361.361 INFO    ] Initializing speech engine...
[2026-06-05 07:28:18,370.370 INFO    ] 2026-06-05 07:28:18
[2026-06-05 07:28:18,618.618 INFO    ] 2026-06-05 07:28:18
[2026-06-05 07:28:18,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:28:18,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:28:18,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:28:19,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:28:19,101.101 INFO    ] time= 05/06/2026 07:28:19
[2026-06-05 07:28:19,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:28:19,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:28:19,240.240 INFO    ] No existing commands found in stream
[2026-06-05 07:28:24,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:28:24,255.255 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 07:28:28,570.570 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:28:28,573.573 INFO    ] Checking for system updates...
[2026-06-05 07:28:28,609.609 INFO    ] 200
[2026-06-05 07:28:28,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:28,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:28:28,674.674 INFO    ] No update needed
[2026-06-05 07:28:28,677.677 INFO    ] Checking for camera pi updates...
[2026-06-05 07:28:28,710.710 INFO    ] 200
[2026-06-05 07:28:28,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:28,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:28:28,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:28:28,800.800 INFO    ] No camera update needed
[2026-06-05 07:28:28,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:28:28,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:28:28,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:28:28,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:28:30,860.860 INFO    ] ================================================
[2026-06-05 07:28:30,876.876 INFO    ] Launching Daemon at Fri Jun  5 07:28:30 IST 2026
[2026-06-05 07:28:30,887.887 INFO    ] ================================================
[2026-06-05 07:28:31,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:28:31
[2026-06-05 07:28:32,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:28:32,383.383 INFO    ] Initializing speech engine...
[2026-06-05 07:28:32,414.414 INFO    ] 2026-06-05 07:28:32
[2026-06-05 07:28:32,703.703 INFO    ] 2026-06-05 07:28:32
[2026-06-05 07:28:32,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:28:32,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:28:32,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:28:33,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:28:33,038.038 INFO    ] time= 05/06/2026 07:28:33
[2026-06-05 07:28:33,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:28:33,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:28:33,176.176 INFO    ] No existing commands found in stream
[2026-06-05 07:28:38,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:28:38,196.196 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 07:28:39,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:28:39,076.076 INFO    ] Checking for system updates...
[2026-06-05 07:28:39,113.113 INFO    ] 200
[2026-06-05 07:28:39,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:39,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:28:39,180.180 INFO    ] No update needed
[2026-06-05 07:28:39,183.183 INFO    ] Checking for camera pi updates...
[2026-06-05 07:28:39,218.218 INFO    ] 200
[2026-06-05 07:28:39,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:39,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:28:39,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:28:39,317.317 INFO    ] No camera update needed
[2026-06-05 07:28:39,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:28:39,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:28:39,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:28:39,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:28:41,377.377 INFO    ] ================================================
[2026-06-05 07:28:41,392.392 INFO    ] Launching Daemon at Fri Jun  5 07:28:41 IST 2026
[2026-06-05 07:28:41,403.403 INFO    ] ================================================
[2026-06-05 07:28:42,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:28:42
[2026-06-05 07:28:42,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:28:43,037.037 INFO    ] Initializing speech engine...
[2026-06-05 07:28:43,050.050 INFO    ] 2026-06-05 07:28:43
[2026-06-05 07:28:43,340.340 INFO    ] 2026-06-05 07:28:43
[2026-06-05 07:28:43,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:28:43,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:28:43,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:28:43,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:28:43,876.876 INFO    ] time= 05/06/2026 07:28:43
[2026-06-05 07:28:43,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:28:43,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:28:44,018.018 INFO    ] No existing commands found in stream
[2026-06-05 07:28:49,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:28:49,052.052 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 07:28:51,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:28:51,404.404 INFO    ] Checking for system updates...
[2026-06-05 07:28:51,441.441 INFO    ] 200
[2026-06-05 07:28:51,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:51,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:28:51,501.501 INFO    ] No update needed
[2026-06-05 07:28:51,504.504 INFO    ] Checking for camera pi updates...
[2026-06-05 07:28:51,539.539 INFO    ] 200
[2026-06-05 07:28:51,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:28:51,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:28:51,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:28:51,642.642 INFO    ] No camera update needed
[2026-06-05 07:28:51,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:28:51,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:28:51,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:28:51,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:28:53,699.699 INFO    ] ================================================
[2026-06-05 07:28:53,714.714 INFO    ] Launching Daemon at Fri Jun  5 07:28:53 IST 2026
[2026-06-05 07:28:53,725.725 INFO    ] ================================================
[2026-06-05 07:28:54,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:28:54
[2026-06-05 07:28:54,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:28:55,128.128 INFO    ] Initializing speech engine...
[2026-06-05 07:28:55,135.135 INFO    ] 2026-06-05 07:28:55
[2026-06-05 07:28:55,409.409 INFO    ] 2026-06-05 07:28:55
[2026-06-05 07:28:55,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:28:55,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:28:55,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:28:55,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:28:55,862.862 INFO    ] time= 05/06/2026 07:28:55
[2026-06-05 07:28:55,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:28:55,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:28:56,030.030 INFO    ] No existing commands found in stream
[2026-06-05 07:29:01,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:29:01,045.045 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 07:29:01,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:29:01,564.564 INFO    ] Checking for system updates...
[2026-06-05 07:29:01,605.605 INFO    ] 200
[2026-06-05 07:29:01,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:01,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:29:01,665.665 INFO    ] No update needed
[2026-06-05 07:29:01,668.668 INFO    ] Checking for camera pi updates...
[2026-06-05 07:29:01,711.711 INFO    ] 200
[2026-06-05 07:29:01,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:01,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:29:01,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:29:01,799.799 INFO    ] No camera update needed
[2026-06-05 07:29:01,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:29:01,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:29:01,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:29:01,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:29:03,858.858 INFO    ] ================================================
[2026-06-05 07:29:03,874.874 INFO    ] Launching Daemon at Fri Jun  5 07:29:03 IST 2026
[2026-06-05 07:29:03,885.885 INFO    ] ================================================
[2026-06-05 07:29:04,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:29:04
[2026-06-05 07:29:05,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:29:05,303.303 INFO    ] Initializing speech engine...
[2026-06-05 07:29:05,312.312 INFO    ] 2026-06-05 07:29:05
[2026-06-05 07:29:05,605.605 INFO    ] 2026-06-05 07:29:05
[2026-06-05 07:29:05,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:29:05,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:29:05,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:29:06,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:29:06,110.110 INFO    ] time= 05/06/2026 07:29:06
[2026-06-05 07:29:06,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:29:06,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:29:06,301.301 INFO    ] No existing commands found in stream
[2026-06-05 07:29:11,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:29:11,316.316 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 07:29:15,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:29:15,162.162 INFO    ] Checking for system updates...
[2026-06-05 07:29:15,199.199 INFO    ] 200
[2026-06-05 07:29:15,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:15,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:29:15,258.258 INFO    ] No update needed
[2026-06-05 07:29:15,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 07:29:15,296.296 INFO    ] 200
[2026-06-05 07:29:15,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:15,341.341 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:29:15,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:29:15,387.387 INFO    ] No camera update needed
[2026-06-05 07:29:15,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:29:15,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:29:15,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:29:15,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:29:17,442.442 INFO    ] ================================================
[2026-06-05 07:29:17,457.457 INFO    ] Launching Daemon at Fri Jun  5 07:29:17 IST 2026
[2026-06-05 07:29:17,467.467 INFO    ] ================================================
[2026-06-05 07:29:18,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:29:18
[2026-06-05 07:29:18,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:29:18,878.878 INFO    ] Initializing speech engine...
[2026-06-05 07:29:18,886.886 INFO    ] 2026-06-05 07:29:18
[2026-06-05 07:29:19,177.177 INFO    ] 2026-06-05 07:29:19
[2026-06-05 07:29:19,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:29:19,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:29:19,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:29:19,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:29:19,546.546 INFO    ] time= 05/06/2026 07:29:19
[2026-06-05 07:29:19,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:29:19,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:29:19,610.610 INFO    ] No existing commands found in stream
[2026-06-05 07:29:24,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:29:24,659.659 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 07:29:27,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:29:27,736.736 INFO    ] Checking for system updates...
[2026-06-05 07:29:27,772.772 INFO    ] 200
[2026-06-05 07:29:27,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:27,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:29:27,834.834 INFO    ] No update needed
[2026-06-05 07:29:27,837.837 INFO    ] Checking for camera pi updates...
[2026-06-05 07:29:27,874.874 INFO    ] 200
[2026-06-05 07:29:27,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:27,918.918 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:29:28,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:29:28,069.069 INFO    ] No camera update needed
[2026-06-05 07:29:28,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:29:28,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:29:28,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:29:28,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:29:30,133.133 INFO    ] ================================================
[2026-06-05 07:29:30,149.149 INFO    ] Launching Daemon at Fri Jun  5 07:29:30 IST 2026
[2026-06-05 07:29:30,160.160 INFO    ] ================================================
[2026-06-05 07:29:30,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:29:30
[2026-06-05 07:29:31,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:29:31,567.567 INFO    ] Initializing speech engine...
[2026-06-05 07:29:31,589.589 INFO    ] 2026-06-05 07:29:31
[2026-06-05 07:29:31,841.841 INFO    ] 2026-06-05 07:29:31
[2026-06-05 07:29:31,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:29:32,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:29:32,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:29:32,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:29:32,372.372 INFO    ] time= 05/06/2026 07:29:32
[2026-06-05 07:29:32,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:29:32,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:29:32,554.554 INFO    ] No existing commands found in stream
[2026-06-05 07:29:37,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:29:37,591.591 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 07:29:40,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:29:40,406.406 INFO    ] Checking for system updates...
[2026-06-05 07:29:40,443.443 INFO    ] 200
[2026-06-05 07:29:40,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:40,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:29:40,508.508 INFO    ] No update needed
[2026-06-05 07:29:40,511.511 INFO    ] Checking for camera pi updates...
[2026-06-05 07:29:40,549.549 INFO    ] 200
[2026-06-05 07:29:40,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:40,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:29:40,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:29:40,640.640 INFO    ] No camera update needed
[2026-06-05 07:29:40,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:29:40,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:29:40,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:29:40,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:29:42,700.700 INFO    ] ================================================
[2026-06-05 07:29:42,719.719 INFO    ] Launching Daemon at Fri Jun  5 07:29:42 IST 2026
[2026-06-05 07:29:42,732.732 INFO    ] ================================================
[2026-06-05 07:29:43,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:29:43
[2026-06-05 07:29:44,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:29:44,339.339 INFO    ] Initializing speech engine...
[2026-06-05 07:29:44,350.350 INFO    ] 2026-06-05 07:29:44
[2026-06-05 07:29:44,613.613 INFO    ] 2026-06-05 07:29:44
[2026-06-05 07:29:44,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:29:44,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:29:44,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:29:45,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:29:45,064.064 INFO    ] time= 05/06/2026 07:29:45
[2026-06-05 07:29:45,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:29:45,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:29:45,206.206 INFO    ] No existing commands found in stream
[2026-06-05 07:29:50,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:29:50,220.220 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 07:29:51,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:29:51,612.612 INFO    ] Checking for system updates...
[2026-06-05 07:29:51,648.648 INFO    ] 200
[2026-06-05 07:29:51,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:51,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:29:51,706.706 INFO    ] No update needed
[2026-06-05 07:29:51,708.708 INFO    ] Checking for camera pi updates...
[2026-06-05 07:29:51,741.741 INFO    ] 200
[2026-06-05 07:29:51,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:29:51,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:29:51,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:29:51,833.833 INFO    ] No camera update needed
[2026-06-05 07:29:51,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:29:51,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:29:51,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:29:51,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:29:53,892.892 INFO    ] ================================================
[2026-06-05 07:29:53,907.907 INFO    ] Launching Daemon at Fri Jun  5 07:29:53 IST 2026
[2026-06-05 07:29:53,918.918 INFO    ] ================================================
[2026-06-05 07:29:54,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:29:54
[2026-06-05 07:29:55,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:29:55,513.513 INFO    ] Initializing speech engine...
[2026-06-05 07:29:55,527.527 INFO    ] 2026-06-05 07:29:55
[2026-06-05 07:29:55,808.808 INFO    ] 2026-06-05 07:29:55
[2026-06-05 07:29:55,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:29:56,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:29:56,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:29:56,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:29:56,338.338 INFO    ] time= 05/06/2026 07:29:56
[2026-06-05 07:29:56,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:29:56,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:29:56,490.490 INFO    ] No existing commands found in stream
[2026-06-05 07:30:01,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:30:01,507.507 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 07:30:08,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:30:08,588.588 INFO    ] Checking for system updates...
[2026-06-05 07:30:08,624.624 INFO    ] 200
[2026-06-05 07:30:08,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:08,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:30:08,681.681 INFO    ] No update needed
[2026-06-05 07:30:08,684.684 INFO    ] Checking for camera pi updates...
[2026-06-05 07:30:08,718.718 INFO    ] 200
[2026-06-05 07:30:08,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:08,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:30:08,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:30:08,808.808 INFO    ] No camera update needed
[2026-06-05 07:30:08,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:30:08,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:30:08,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:30:08,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:30:10,864.864 INFO    ] ================================================
[2026-06-05 07:30:10,879.879 INFO    ] Launching Daemon at Fri Jun  5 07:30:10 IST 2026
[2026-06-05 07:30:10,889.889 INFO    ] ================================================
[2026-06-05 07:30:11,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:30:11
[2026-06-05 07:30:12,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:30:12,301.301 INFO    ] Initializing speech engine...
[2026-06-05 07:30:12,308.308 INFO    ] 2026-06-05 07:30:12
[2026-06-05 07:30:12,599.599 INFO    ] 2026-06-05 07:30:12
[2026-06-05 07:30:12,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:30:12,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:30:12,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:30:13,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:30:13,017.017 INFO    ] time= 05/06/2026 07:30:13
[2026-06-05 07:30:13,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:30:13,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:30:13,100.100 INFO    ] No existing commands found in stream
[2026-06-05 07:30:18,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:30:18,116.116 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 07:30:20,639.639 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:30:20,641.641 INFO    ] Checking for system updates...
[2026-06-05 07:30:20,677.677 INFO    ] 200
[2026-06-05 07:30:20,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:20,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:30:20,734.734 INFO    ] No update needed
[2026-06-05 07:30:20,737.737 INFO    ] Checking for camera pi updates...
[2026-06-05 07:30:20,771.771 INFO    ] 200
[2026-06-05 07:30:20,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:20,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:30:20,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:30:20,865.865 INFO    ] No camera update needed
[2026-06-05 07:30:20,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:30:20,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:30:20,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:30:20,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:30:22,922.922 INFO    ] ================================================
[2026-06-05 07:30:22,939.939 INFO    ] Launching Daemon at Fri Jun  5 07:30:22 IST 2026
[2026-06-05 07:30:22,950.950 INFO    ] ================================================
[2026-06-05 07:30:23,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:30:23
[2026-06-05 07:30:24,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:30:24,556.556 INFO    ] Initializing speech engine...
[2026-06-05 07:30:24,567.567 INFO    ] 2026-06-05 07:30:24
[2026-06-05 07:30:24,875.875 INFO    ] 2026-06-05 07:30:24
[2026-06-05 07:30:24,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:30:25,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:30:25,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:30:25,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:30:25,385.385 INFO    ] time= 05/06/2026 07:30:25
[2026-06-05 07:30:25,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:30:25,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:30:25,540.540 INFO    ] No existing commands found in stream
[2026-06-05 07:30:30,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:30:30,559.559 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 07:30:33,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:30:33,277.277 INFO    ] Checking for system updates...
[2026-06-05 07:30:33,321.321 INFO    ] 200
[2026-06-05 07:30:33,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:33,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:30:33,388.388 INFO    ] No update needed
[2026-06-05 07:30:33,391.391 INFO    ] Checking for camera pi updates...
[2026-06-05 07:30:33,430.430 INFO    ] 200
[2026-06-05 07:30:33,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:33,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:30:33,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:30:33,539.539 INFO    ] No camera update needed
[2026-06-05 07:30:33,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:30:33,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:30:33,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:30:33,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:30:35,598.598 INFO    ] ================================================
[2026-06-05 07:30:35,613.613 INFO    ] Launching Daemon at Fri Jun  5 07:30:35 IST 2026
[2026-06-05 07:30:35,624.624 INFO    ] ================================================
[2026-06-05 07:30:36,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:30:36
[2026-06-05 07:30:36,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:30:37,221.221 INFO    ] Initializing speech engine...
[2026-06-05 07:30:37,228.228 INFO    ] 2026-06-05 07:30:37
[2026-06-05 07:30:37,512.512 INFO    ] 2026-06-05 07:30:37
[2026-06-05 07:30:37,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:30:37,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:30:37,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:30:37,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:30:37,982.982 INFO    ] time= 05/06/2026 07:30:37
[2026-06-05 07:30:38,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:30:38,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:30:38,121.121 INFO    ] No existing commands found in stream
[2026-06-05 07:30:43,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:30:43,139.139 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 07:30:44,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:30:44,010.010 INFO    ] Checking for system updates...
[2026-06-05 07:30:44,050.050 INFO    ] 200
[2026-06-05 07:30:44,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:44,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:30:44,112.112 INFO    ] No update needed
[2026-06-05 07:30:44,114.114 INFO    ] Checking for camera pi updates...
[2026-06-05 07:30:44,150.150 INFO    ] 200
[2026-06-05 07:30:44,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:44,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:30:44,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:30:44,238.238 INFO    ] No camera update needed
[2026-06-05 07:30:44,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:30:44,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:30:44,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:30:44,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:30:46,297.297 INFO    ] ================================================
[2026-06-05 07:30:46,313.313 INFO    ] Launching Daemon at Fri Jun  5 07:30:46 IST 2026
[2026-06-05 07:30:46,324.324 INFO    ] ================================================
[2026-06-05 07:30:46,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:30:46
[2026-06-05 07:30:47,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:30:47,809.809 INFO    ] Initializing speech engine...
[2026-06-05 07:30:47,822.822 INFO    ] 2026-06-05 07:30:47
[2026-06-05 07:30:48,094.094 INFO    ] 2026-06-05 07:30:48
[2026-06-05 07:30:48,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:30:48,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:30:48,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:30:48,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:30:48,538.538 INFO    ] time= 05/06/2026 07:30:48
[2026-06-05 07:30:48,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:30:48,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:30:48,677.677 INFO    ] No existing commands found in stream
[2026-06-05 07:30:53,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:30:53,701.701 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 07:30:57,913.913 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:30:57,916.916 INFO    ] Checking for system updates...
[2026-06-05 07:30:57,954.954 INFO    ] 200
[2026-06-05 07:30:57,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:58,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:30:58,015.015 INFO    ] No update needed
[2026-06-05 07:30:58,018.018 INFO    ] Checking for camera pi updates...
[2026-06-05 07:30:58,062.062 INFO    ] 200
[2026-06-05 07:30:58,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:30:58,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:30:58,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:30:58,159.159 INFO    ] No camera update needed
[2026-06-05 07:30:58,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:30:58,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:30:58,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:30:58,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:31:00,219.219 INFO    ] ================================================
[2026-06-05 07:31:00,235.235 INFO    ] Launching Daemon at Fri Jun  5 07:31:00 IST 2026
[2026-06-05 07:31:00,247.247 INFO    ] ================================================
[2026-06-05 07:31:00,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:31:00
[2026-06-05 07:31:01,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:31:01,908.908 INFO    ] Initializing speech engine...
[2026-06-05 07:31:01,918.918 INFO    ] 2026-06-05 07:31:01
[2026-06-05 07:31:02,244.244 INFO    ] 2026-06-05 07:31:02
[2026-06-05 07:31:02,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:31:02,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:31:02,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:31:02,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:31:02,707.707 INFO    ] time= 05/06/2026 07:31:02
[2026-06-05 07:31:02,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:31:02,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:31:02,773.773 INFO    ] No existing commands found in stream
[2026-06-05 07:31:07,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:31:07,785.785 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 07:31:10,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:31:10,450.450 INFO    ] Checking for system updates...
[2026-06-05 07:31:10,486.486 INFO    ] 200
[2026-06-05 07:31:10,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:10,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:31:10,545.545 INFO    ] No update needed
[2026-06-05 07:31:10,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 07:31:10,581.581 INFO    ] 200
[2026-06-05 07:31:10,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:10,627.627 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:31:10,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:31:10,670.670 INFO    ] No camera update needed
[2026-06-05 07:31:10,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:31:10,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:31:10,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:31:10,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:31:12,725.725 INFO    ] ================================================
[2026-06-05 07:31:12,741.741 INFO    ] Launching Daemon at Fri Jun  5 07:31:12 IST 2026
[2026-06-05 07:31:12,752.752 INFO    ] ================================================
[2026-06-05 07:31:13,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:31:13
[2026-06-05 07:31:13,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:31:14,166.166 INFO    ] Initializing speech engine...
[2026-06-05 07:31:14,173.173 INFO    ] 2026-06-05 07:31:14
[2026-06-05 07:31:14,470.470 INFO    ] 2026-06-05 07:31:14
[2026-06-05 07:31:14,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:31:14,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:31:14,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:31:14,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:31:14,847.847 INFO    ] time= 05/06/2026 07:31:14
[2026-06-05 07:31:14,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:31:14,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:31:14,971.971 INFO    ] No existing commands found in stream
[2026-06-05 07:31:19,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:31:19,986.986 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 07:31:22,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:31:22,556.556 INFO    ] Checking for system updates...
[2026-06-05 07:31:22,593.593 INFO    ] 200
[2026-06-05 07:31:22,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:22,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:31:22,652.652 INFO    ] No update needed
[2026-06-05 07:31:22,654.654 INFO    ] Checking for camera pi updates...
[2026-06-05 07:31:22,688.688 INFO    ] 200
[2026-06-05 07:31:22,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:22,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:31:22,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:31:22,777.777 INFO    ] No camera update needed
[2026-06-05 07:31:22,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:31:22,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:31:22,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:31:22,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:31:24,834.834 INFO    ] ================================================
[2026-06-05 07:31:24,851.851 INFO    ] Launching Daemon at Fri Jun  5 07:31:24 IST 2026
[2026-06-05 07:31:24,862.862 INFO    ] ================================================
[2026-06-05 07:31:25,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:31:25
[2026-06-05 07:31:26,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:31:26,313.313 INFO    ] Initializing speech engine...
[2026-06-05 07:31:26,336.336 INFO    ] 2026-06-05 07:31:26
[2026-06-05 07:31:26,600.600 INFO    ] 2026-06-05 07:31:26
[2026-06-05 07:31:26,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:31:26,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:31:26,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:31:27,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:31:27,079.079 INFO    ] time= 05/06/2026 07:31:27
[2026-06-05 07:31:27,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:31:27,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:31:27,231.231 INFO    ] No existing commands found in stream
[2026-06-05 07:31:32,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:31:32,246.246 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 07:31:32,801.801 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:31:32,804.804 INFO    ] Checking for system updates...
[2026-06-05 07:31:32,842.842 INFO    ] 200
[2026-06-05 07:31:32,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:32,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:31:32,903.903 INFO    ] No update needed
[2026-06-05 07:31:32,906.906 INFO    ] Checking for camera pi updates...
[2026-06-05 07:31:32,941.941 INFO    ] 200
[2026-06-05 07:31:32,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:32,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:31:33,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:31:33,016.016 INFO    ] No camera update needed
[2026-06-05 07:31:33,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:31:33,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:31:33,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:31:33,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:31:35,077.077 INFO    ] ================================================
[2026-06-05 07:31:35,093.093 INFO    ] Launching Daemon at Fri Jun  5 07:31:35 IST 2026
[2026-06-05 07:31:35,103.103 INFO    ] ================================================
[2026-06-05 07:31:35,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:31:35
[2026-06-05 07:31:36,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:31:36,520.520 INFO    ] Initializing speech engine...
[2026-06-05 07:31:36,529.529 INFO    ] 2026-06-05 07:31:36
[2026-06-05 07:31:36,804.804 INFO    ] 2026-06-05 07:31:36
[2026-06-05 07:31:36,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:31:37,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:31:37,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:31:37,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:31:37,296.296 INFO    ] time= 05/06/2026 07:31:37
[2026-06-05 07:31:37,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:31:37,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:31:37,441.441 INFO    ] No existing commands found in stream
[2026-06-05 07:31:42,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:31:42,456.456 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 07:31:43,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:31:43,808.808 INFO    ] Checking for system updates...
[2026-06-05 07:31:43,843.843 INFO    ] 200
[2026-06-05 07:31:43,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:43,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:31:43,903.903 INFO    ] No update needed
[2026-06-05 07:31:43,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 07:31:43,940.940 INFO    ] 200
[2026-06-05 07:31:43,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:43,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:31:44,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:31:44,031.031 INFO    ] No camera update needed
[2026-06-05 07:31:44,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:31:44,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:31:44,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:31:44,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:31:46,087.087 INFO    ] ================================================
[2026-06-05 07:31:46,102.102 INFO    ] Launching Daemon at Fri Jun  5 07:31:46 IST 2026
[2026-06-05 07:31:46,112.112 INFO    ] ================================================
[2026-06-05 07:31:46,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:31:46
[2026-06-05 07:31:47,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:31:47,736.736 INFO    ] Initializing speech engine...
[2026-06-05 07:31:47,746.746 INFO    ] 2026-06-05 07:31:47
[2026-06-05 07:31:48,040.040 INFO    ] 2026-06-05 07:31:48
[2026-06-05 07:31:48,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:31:48,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:31:48,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:31:48,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:31:48,529.529 INFO    ] time= 05/06/2026 07:31:48
[2026-06-05 07:31:48,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:31:48,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:31:48,660.660 INFO    ] No existing commands found in stream
[2026-06-05 07:31:53,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:31:53,677.677 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 07:31:57,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:31:57,932.932 INFO    ] Checking for system updates...
[2026-06-05 07:31:57,971.971 INFO    ] 200
[2026-06-05 07:31:57,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:58,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:31:58,032.032 INFO    ] No update needed
[2026-06-05 07:31:58,035.035 INFO    ] Checking for camera pi updates...
[2026-06-05 07:31:58,071.071 INFO    ] 200
[2026-06-05 07:31:58,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:31:58,116.116 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:31:58,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:31:58,172.172 INFO    ] No camera update needed
[2026-06-05 07:31:58,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:31:58,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:31:58,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:31:58,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:32:00,232.232 INFO    ] ================================================
[2026-06-05 07:32:00,247.247 INFO    ] Launching Daemon at Fri Jun  5 07:32:00 IST 2026
[2026-06-05 07:32:00,258.258 INFO    ] ================================================
[2026-06-05 07:32:00,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:32:00
[2026-06-05 07:32:01,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:32:02,041.041 INFO    ] Initializing speech engine...
[2026-06-05 07:32:02,049.049 INFO    ] 2026-06-05 07:32:02
[2026-06-05 07:32:02,442.442 INFO    ] 2026-06-05 07:32:02
[2026-06-05 07:32:02,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:32:02,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:32:02,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:32:02,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:32:02,960.960 INFO    ] time= 05/06/2026 07:32:02
[2026-06-05 07:32:02,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:32:03,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:32:03,115.115 INFO    ] No existing commands found in stream
[2026-06-05 07:32:08,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:32:08,143.143 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 07:32:09,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:32:09,899.899 INFO    ] Checking for system updates...
[2026-06-05 07:32:09,937.937 INFO    ] 200
[2026-06-05 07:32:09,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:09,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:32:09,996.996 INFO    ] No update needed
[2026-06-05 07:32:09,999.999 INFO    ] Checking for camera pi updates...
[2026-06-05 07:32:10,034.034 INFO    ] 200
[2026-06-05 07:32:10,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:10,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:32:10,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:32:10,125.125 INFO    ] No camera update needed
[2026-06-05 07:32:10,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:32:10,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:32:10,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:32:10,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:32:12,185.185 INFO    ] ================================================
[2026-06-05 07:32:12,201.201 INFO    ] Launching Daemon at Fri Jun  5 07:32:12 IST 2026
[2026-06-05 07:32:12,212.212 INFO    ] ================================================
[2026-06-05 07:32:12,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:32:12
[2026-06-05 07:32:13,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:32:13,849.849 INFO    ] Initializing speech engine...
[2026-06-05 07:32:13,863.863 INFO    ] 2026-06-05 07:32:13
[2026-06-05 07:32:14,143.143 INFO    ] 2026-06-05 07:32:14
[2026-06-05 07:32:14,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:32:14,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:32:14,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:32:14,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:32:14,617.617 INFO    ] time= 05/06/2026 07:32:14
[2026-06-05 07:32:14,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:32:14,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:32:14,809.809 INFO    ] No existing commands found in stream
[2026-06-05 07:32:19,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:32:19,841.841 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 07:32:23,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:32:23,309.309 INFO    ] Checking for system updates...
[2026-06-05 07:32:23,348.348 INFO    ] 200
[2026-06-05 07:32:23,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:23,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:32:23,408.408 INFO    ] No update needed
[2026-06-05 07:32:23,410.410 INFO    ] Checking for camera pi updates...
[2026-06-05 07:32:23,445.445 INFO    ] 200
[2026-06-05 07:32:23,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:23,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:32:23,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:32:23,540.540 INFO    ] No camera update needed
[2026-06-05 07:32:23,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:32:23,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:32:23,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:32:23,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:32:25,603.603 INFO    ] ================================================
[2026-06-05 07:32:25,618.618 INFO    ] Launching Daemon at Fri Jun  5 07:32:25 IST 2026
[2026-06-05 07:32:25,628.628 INFO    ] ================================================
[2026-06-05 07:32:26,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:32:26
[2026-06-05 07:32:26,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:32:27,144.144 INFO    ] Initializing speech engine...
[2026-06-05 07:32:27,150.150 INFO    ] 2026-06-05 07:32:27
[2026-06-05 07:32:27,443.443 INFO    ] 2026-06-05 07:32:27
[2026-06-05 07:32:27,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:32:27,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:32:27,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:32:27,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:32:27,818.818 INFO    ] time= 05/06/2026 07:32:27
[2026-06-05 07:32:27,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:32:27,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:32:27,941.941 INFO    ] No existing commands found in stream
[2026-06-05 07:32:32,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:32:32,953.953 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 07:32:35,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:32:35,251.251 INFO    ] Checking for system updates...
[2026-06-05 07:32:35,288.288 INFO    ] 200
[2026-06-05 07:32:35,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:35,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:32:35,347.347 INFO    ] No update needed
[2026-06-05 07:32:35,349.349 INFO    ] Checking for camera pi updates...
[2026-06-05 07:32:35,387.387 INFO    ] 200
[2026-06-05 07:32:35,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:35,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:32:35,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:32:35,479.479 INFO    ] No camera update needed
[2026-06-05 07:32:35,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:32:35,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:32:35,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:32:35,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:32:37,538.538 INFO    ] ================================================
[2026-06-05 07:32:37,555.555 INFO    ] Launching Daemon at Fri Jun  5 07:32:37 IST 2026
[2026-06-05 07:32:37,565.565 INFO    ] ================================================
[2026-06-05 07:32:38,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:32:38
[2026-06-05 07:32:38,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:32:39,104.104 INFO    ] Initializing speech engine...
[2026-06-05 07:32:39,115.115 INFO    ] 2026-06-05 07:32:39
[2026-06-05 07:32:39,419.419 INFO    ] 2026-06-05 07:32:39
[2026-06-05 07:32:39,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:32:39,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:32:39,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:32:39,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:32:39,925.925 INFO    ] time= 05/06/2026 07:32:39
[2026-06-05 07:32:39,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:32:39,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:32:40,068.068 INFO    ] No existing commands found in stream
[2026-06-05 07:32:45,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:32:45,093.093 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 07:32:46,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:32:46,820.820 INFO    ] Checking for system updates...
[2026-06-05 07:32:46,857.857 INFO    ] 200
[2026-06-05 07:32:46,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:46,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:32:46,917.917 INFO    ] No update needed
[2026-06-05 07:32:46,919.919 INFO    ] Checking for camera pi updates...
[2026-06-05 07:32:46,955.955 INFO    ] 200
[2026-06-05 07:32:46,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:47,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:32:47,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:32:47,049.049 INFO    ] No camera update needed
[2026-06-05 07:32:47,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:32:47,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:32:47,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:32:47,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:32:49,110.110 INFO    ] ================================================
[2026-06-05 07:32:49,126.126 INFO    ] Launching Daemon at Fri Jun  5 07:32:49 IST 2026
[2026-06-05 07:32:49,137.137 INFO    ] ================================================
[2026-06-05 07:32:49,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:32:49
[2026-06-05 07:32:50,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:32:50,598.598 INFO    ] Initializing speech engine...
[2026-06-05 07:32:50,604.604 INFO    ] 2026-06-05 07:32:50
[2026-06-05 07:32:50,866.866 INFO    ] 2026-06-05 07:32:50
[2026-06-05 07:32:50,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:32:51,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:32:51,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:32:51,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:32:51,221.221 INFO    ] time= 05/06/2026 07:32:51
[2026-06-05 07:32:51,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:32:51,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:32:51,363.363 INFO    ] No existing commands found in stream
[2026-06-05 07:32:56,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:32:56,391.391 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 07:32:56,966.966 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:32:56,969.969 INFO    ] Checking for system updates...
[2026-06-05 07:32:57,006.006 INFO    ] 200
[2026-06-05 07:32:57,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:57,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:32:57,069.069 INFO    ] No update needed
[2026-06-05 07:32:57,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 07:32:57,106.106 INFO    ] 200
[2026-06-05 07:32:57,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:32:57,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:32:57,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:32:57,196.196 INFO    ] No camera update needed
[2026-06-05 07:32:57,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:32:57,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:32:57,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:32:57,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:32:59,256.256 INFO    ] ================================================
[2026-06-05 07:32:59,273.273 INFO    ] Launching Daemon at Fri Jun  5 07:32:59 IST 2026
[2026-06-05 07:32:59,284.284 INFO    ] ================================================
[2026-06-05 07:32:59,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:32:59
[2026-06-05 07:33:00,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:33:00,729.729 INFO    ] Initializing speech engine...
[2026-06-05 07:33:00,737.737 INFO    ] 2026-06-05 07:33:00
[2026-06-05 07:33:00,995.995 INFO    ] 2026-06-05 07:33:00
[2026-06-05 07:33:01,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:33:01,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:33:01,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:33:01,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:33:01,441.441 INFO    ] time= 05/06/2026 07:33:01
[2026-06-05 07:33:01,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:33:01,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:33:01,566.566 INFO    ] No existing commands found in stream
[2026-06-05 07:33:06,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:33:06,593.593 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 07:33:09,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:33:09,265.265 INFO    ] Checking for system updates...
[2026-06-05 07:33:09,302.302 INFO    ] 200
[2026-06-05 07:33:09,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:09,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:33:09,362.362 INFO    ] No update needed
[2026-06-05 07:33:09,365.365 INFO    ] Checking for camera pi updates...
[2026-06-05 07:33:09,400.400 INFO    ] 200
[2026-06-05 07:33:09,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:09,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:33:09,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:33:09,487.487 INFO    ] No camera update needed
[2026-06-05 07:33:09,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:33:09,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:33:09,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:33:09,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:33:11,545.545 INFO    ] ================================================
[2026-06-05 07:33:11,561.561 INFO    ] Launching Daemon at Fri Jun  5 07:33:11 IST 2026
[2026-06-05 07:33:11,571.571 INFO    ] ================================================
[2026-06-05 07:33:12,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:33:12
[2026-06-05 07:33:12,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:33:12,995.995 INFO    ] Initializing speech engine...
[2026-06-05 07:33:13,005.005 INFO    ] 2026-06-05 07:33:12
[2026-06-05 07:33:13,253.253 INFO    ] 2026-06-05 07:33:13
[2026-06-05 07:33:13,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:33:13,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:33:13,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:33:13,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:33:13,682.682 INFO    ] time= 05/06/2026 07:33:13
[2026-06-05 07:33:13,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:33:13,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:33:13,842.842 INFO    ] No existing commands found in stream
[2026-06-05 07:33:18,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:33:18,859.859 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 07:33:19,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:33:19,538.538 INFO    ] Checking for system updates...
[2026-06-05 07:33:19,575.575 INFO    ] 200
[2026-06-05 07:33:19,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:19,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:33:19,633.633 INFO    ] No update needed
[2026-06-05 07:33:19,636.636 INFO    ] Checking for camera pi updates...
[2026-06-05 07:33:19,670.670 INFO    ] 200
[2026-06-05 07:33:19,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:19,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:33:19,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:33:19,755.755 INFO    ] No camera update needed
[2026-06-05 07:33:19,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:33:19,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:33:19,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:33:19,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:33:21,812.812 INFO    ] ================================================
[2026-06-05 07:33:21,827.827 INFO    ] Launching Daemon at Fri Jun  5 07:33:21 IST 2026
[2026-06-05 07:33:21,839.839 INFO    ] ================================================
[2026-06-05 07:33:22,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:33:22
[2026-06-05 07:33:23,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:33:23,394.394 INFO    ] Initializing speech engine...
[2026-06-05 07:33:23,402.402 INFO    ] 2026-06-05 07:33:23
[2026-06-05 07:33:23,669.669 INFO    ] 2026-06-05 07:33:23
[2026-06-05 07:33:23,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:33:23,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:33:23,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:33:24,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:33:24,153.153 INFO    ] time= 05/06/2026 07:33:24
[2026-06-05 07:33:24,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:33:24,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:33:24,340.340 INFO    ] No existing commands found in stream
[2026-06-05 07:33:29,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:33:29,367.367 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 07:33:32,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:33:32,124.124 INFO    ] Checking for system updates...
[2026-06-05 07:33:32,162.162 INFO    ] 200
[2026-06-05 07:33:32,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:32,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:33:32,226.226 INFO    ] No update needed
[2026-06-05 07:33:32,229.229 INFO    ] Checking for camera pi updates...
[2026-06-05 07:33:32,266.266 INFO    ] 200
[2026-06-05 07:33:32,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:32,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:33:32,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:33:32,358.358 INFO    ] No camera update needed
[2026-06-05 07:33:32,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:33:32,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:33:32,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:33:32,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:33:34,425.425 INFO    ] ================================================
[2026-06-05 07:33:34,440.440 INFO    ] Launching Daemon at Fri Jun  5 07:33:34 IST 2026
[2026-06-05 07:33:34,451.451 INFO    ] ================================================
[2026-06-05 07:33:35,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:33:35
[2026-06-05 07:33:35,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:33:36,009.009 INFO    ] Initializing speech engine...
[2026-06-05 07:33:36,022.022 INFO    ] 2026-06-05 07:33:36
[2026-06-05 07:33:36,287.287 INFO    ] 2026-06-05 07:33:36
[2026-06-05 07:33:36,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:33:36,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:33:36,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:33:36,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:33:36,785.785 INFO    ] time= 05/06/2026 07:33:36
[2026-06-05 07:33:36,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:33:36,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:33:36,965.965 INFO    ] No existing commands found in stream
[2026-06-05 07:33:41,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:33:42,000.000 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 07:33:44,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:33:44,036.036 INFO    ] Checking for system updates...
[2026-06-05 07:33:44,083.083 INFO    ] 200
[2026-06-05 07:33:44,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:44,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:33:44,150.150 INFO    ] No update needed
[2026-06-05 07:33:44,153.153 INFO    ] Checking for camera pi updates...
[2026-06-05 07:33:44,190.190 INFO    ] 200
[2026-06-05 07:33:44,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:44,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:33:44,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:33:44,402.402 INFO    ] No camera update needed
[2026-06-05 07:33:44,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:33:44,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:33:44,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:33:44,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:33:46,462.462 INFO    ] ================================================
[2026-06-05 07:33:46,478.478 INFO    ] Launching Daemon at Fri Jun  5 07:33:46 IST 2026
[2026-06-05 07:33:46,489.489 INFO    ] ================================================
[2026-06-05 07:33:47,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:33:47
[2026-06-05 07:33:47,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:33:47,920.920 INFO    ] Initializing speech engine...
[2026-06-05 07:33:47,932.932 INFO    ] 2026-06-05 07:33:47
[2026-06-05 07:33:48,216.216 INFO    ] 2026-06-05 07:33:48
[2026-06-05 07:33:48,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:33:48,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:33:48,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:33:48,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:33:48,626.626 INFO    ] time= 05/06/2026 07:33:48
[2026-06-05 07:33:48,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:33:48,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:33:48,806.806 INFO    ] No existing commands found in stream
[2026-06-05 07:33:53,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:33:53,834.834 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 07:33:54,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:33:54,317.317 INFO    ] Checking for system updates...
[2026-06-05 07:33:54,354.354 INFO    ] 200
[2026-06-05 07:33:54,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:54,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:33:54,413.413 INFO    ] No update needed
[2026-06-05 07:33:54,415.415 INFO    ] Checking for camera pi updates...
[2026-06-05 07:33:54,450.450 INFO    ] 200
[2026-06-05 07:33:54,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:33:54,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:33:54,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:33:54,540.540 INFO    ] No camera update needed
[2026-06-05 07:33:54,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:33:54,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:33:54,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:33:54,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:33:56,597.597 INFO    ] ================================================
[2026-06-05 07:33:56,612.612 INFO    ] Launching Daemon at Fri Jun  5 07:33:56 IST 2026
[2026-06-05 07:33:56,623.623 INFO    ] ================================================
[2026-06-05 07:33:57,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:33:57
[2026-06-05 07:33:57,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:33:58,180.180 INFO    ] Initializing speech engine...
[2026-06-05 07:33:58,200.200 INFO    ] 2026-06-05 07:33:58
[2026-06-05 07:33:58,464.464 INFO    ] 2026-06-05 07:33:58
[2026-06-05 07:33:58,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:33:58,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:33:58,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:33:58,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:33:58,922.922 INFO    ] time= 05/06/2026 07:33:58
[2026-06-05 07:33:58,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:33:59,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:33:59,060.060 INFO    ] No existing commands found in stream
[2026-06-05 07:34:04,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:34:04,073.073 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 07:34:05,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:34:05,906.906 INFO    ] Checking for system updates...
[2026-06-05 07:34:05,948.948 INFO    ] 200
[2026-06-05 07:34:05,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:06,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:34:06,012.012 INFO    ] No update needed
[2026-06-05 07:34:06,015.015 INFO    ] Checking for camera pi updates...
[2026-06-05 07:34:06,050.050 INFO    ] 200
[2026-06-05 07:34:06,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:06,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:34:06,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:34:06,151.151 INFO    ] No camera update needed
[2026-06-05 07:34:06,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:34:06,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:34:06,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:34:06,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:34:08,212.212 INFO    ] ================================================
[2026-06-05 07:34:08,227.227 INFO    ] Launching Daemon at Fri Jun  5 07:34:08 IST 2026
[2026-06-05 07:34:08,239.239 INFO    ] ================================================
[2026-06-05 07:34:08,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:34:08
[2026-06-05 07:34:09,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:34:09,668.668 INFO    ] Initializing speech engine...
[2026-06-05 07:34:09,675.675 INFO    ] 2026-06-05 07:34:09
[2026-06-05 07:34:09,921.921 INFO    ] 2026-06-05 07:34:09
[2026-06-05 07:34:09,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:34:10,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:34:10,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:34:10,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:34:10,365.365 INFO    ] time= 05/06/2026 07:34:10
[2026-06-05 07:34:10,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:34:10,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:34:10,541.541 INFO    ] No existing commands found in stream
[2026-06-05 07:34:15,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:34:15,556.556 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 07:34:16,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:34:16,399.399 INFO    ] Checking for system updates...
[2026-06-05 07:34:16,436.436 INFO    ] 200
[2026-06-05 07:34:16,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:16,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:34:16,497.497 INFO    ] No update needed
[2026-06-05 07:34:16,500.500 INFO    ] Checking for camera pi updates...
[2026-06-05 07:34:16,539.539 INFO    ] 200
[2026-06-05 07:34:16,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:16,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:34:16,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:34:16,647.647 INFO    ] No camera update needed
[2026-06-05 07:34:16,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:34:16,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:34:16,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:34:16,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:34:18,708.708 INFO    ] ================================================
[2026-06-05 07:34:18,723.723 INFO    ] Launching Daemon at Fri Jun  5 07:34:18 IST 2026
[2026-06-05 07:34:18,734.734 INFO    ] ================================================
[2026-06-05 07:34:19,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:34:19
[2026-06-05 07:34:20,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:34:20,322.322 INFO    ] Initializing speech engine...
[2026-06-05 07:34:20,336.336 INFO    ] 2026-06-05 07:34:20
[2026-06-05 07:34:20,622.622 INFO    ] 2026-06-05 07:34:20
[2026-06-05 07:34:20,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:34:20,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:34:20,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:34:21,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:34:21,153.153 INFO    ] time= 05/06/2026 07:34:21
[2026-06-05 07:34:21,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:34:21,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:34:21,312.312 INFO    ] No existing commands found in stream
[2026-06-05 07:34:26,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:34:26,334.334 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 07:34:28,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:34:28,774.774 INFO    ] Checking for system updates...
[2026-06-05 07:34:28,816.816 INFO    ] 200
[2026-06-05 07:34:28,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:28,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:34:28,876.876 INFO    ] No update needed
[2026-06-05 07:34:28,879.879 INFO    ] Checking for camera pi updates...
[2026-06-05 07:34:28,913.913 INFO    ] 200
[2026-06-05 07:34:28,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:28,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:34:29,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:34:29,004.004 INFO    ] No camera update needed
[2026-06-05 07:34:29,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:34:29,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:34:29,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:34:29,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:34:31,058.058 INFO    ] ================================================
[2026-06-05 07:34:31,074.074 INFO    ] Launching Daemon at Fri Jun  5 07:34:31 IST 2026
[2026-06-05 07:34:31,085.085 INFO    ] ================================================
[2026-06-05 07:34:31,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:34:31
[2026-06-05 07:34:32,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:34:32,571.571 INFO    ] Initializing speech engine...
[2026-06-05 07:34:32,589.589 INFO    ] 2026-06-05 07:34:32
[2026-06-05 07:34:32,881.881 INFO    ] 2026-06-05 07:34:32
[2026-06-05 07:34:32,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:34:33,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:34:33,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:34:33,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:34:33,239.239 INFO    ] time= 05/06/2026 07:34:33
[2026-06-05 07:34:33,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:34:33,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:34:33,308.308 INFO    ] No existing commands found in stream
[2026-06-05 07:34:38,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:34:38,329.329 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 07:34:41,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:34:41,450.450 INFO    ] Checking for system updates...
[2026-06-05 07:34:41,486.486 INFO    ] 200
[2026-06-05 07:34:41,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:41,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:34:41,553.553 INFO    ] No update needed
[2026-06-05 07:34:41,555.555 INFO    ] Checking for camera pi updates...
[2026-06-05 07:34:41,589.589 INFO    ] 200
[2026-06-05 07:34:41,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:41,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:34:41,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:34:41,661.661 INFO    ] No camera update needed
[2026-06-05 07:34:41,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:34:41,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:34:41,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:34:41,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:34:43,716.716 INFO    ] ================================================
[2026-06-05 07:34:43,732.732 INFO    ] Launching Daemon at Fri Jun  5 07:34:43 IST 2026
[2026-06-05 07:34:43,743.743 INFO    ] ================================================
[2026-06-05 07:34:44,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:34:44
[2026-06-05 07:34:45,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:34:45,308.308 INFO    ] Initializing speech engine...
[2026-06-05 07:34:45,322.322 INFO    ] 2026-06-05 07:34:45
[2026-06-05 07:34:45,598.598 INFO    ] 2026-06-05 07:34:45
[2026-06-05 07:34:45,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:34:45,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:34:45,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:34:46,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:34:46,050.050 INFO    ] time= 05/06/2026 07:34:46
[2026-06-05 07:34:46,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:34:46,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:34:46,197.197 INFO    ] No existing commands found in stream
[2026-06-05 07:34:51,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:34:51,213.213 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 07:34:55,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:34:55,071.071 INFO    ] Checking for system updates...
[2026-06-05 07:34:55,107.107 INFO    ] 200
[2026-06-05 07:34:55,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:55,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:34:55,164.164 INFO    ] No update needed
[2026-06-05 07:34:55,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 07:34:55,201.201 INFO    ] 200
[2026-06-05 07:34:55,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:34:55,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:34:55,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:34:55,290.290 INFO    ] No camera update needed
[2026-06-05 07:34:55,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:34:55,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:34:55,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:34:55,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:34:57,345.345 INFO    ] ================================================
[2026-06-05 07:34:57,361.361 INFO    ] Launching Daemon at Fri Jun  5 07:34:57 IST 2026
[2026-06-05 07:34:57,372.372 INFO    ] ================================================
[2026-06-05 07:34:57,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:34:57
[2026-06-05 07:34:58,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:34:58,851.851 INFO    ] Initializing speech engine...
[2026-06-05 07:34:58,860.860 INFO    ] 2026-06-05 07:34:58
[2026-06-05 07:34:59,118.118 INFO    ] 2026-06-05 07:34:59
[2026-06-05 07:34:59,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:34:59,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:34:59,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:34:59,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:34:59,611.611 INFO    ] time= 05/06/2026 07:34:59
[2026-06-05 07:34:59,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:34:59,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:34:59,805.805 INFO    ] No existing commands found in stream
[2026-06-05 07:35:04,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:35:04,828.828 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 07:35:08,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:35:08,913.913 INFO    ] Checking for system updates...
[2026-06-05 07:35:08,949.949 INFO    ] 200
[2026-06-05 07:35:08,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:09,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:35:09,007.007 INFO    ] No update needed
[2026-06-05 07:35:09,009.009 INFO    ] Checking for camera pi updates...
[2026-06-05 07:35:09,044.044 INFO    ] 200
[2026-06-05 07:35:09,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:09,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:35:09,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:35:09,135.135 INFO    ] No camera update needed
[2026-06-05 07:35:09,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:35:09,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:35:09,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:35:09,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:35:11,190.190 INFO    ] ================================================
[2026-06-05 07:35:11,206.206 INFO    ] Launching Daemon at Fri Jun  5 07:35:11 IST 2026
[2026-06-05 07:35:11,217.217 INFO    ] ================================================
[2026-06-05 07:35:11,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:35:11
[2026-06-05 07:35:12,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:35:12,676.676 INFO    ] Initializing speech engine...
[2026-06-05 07:35:12,686.686 INFO    ] 2026-06-05 07:35:12
[2026-06-05 07:35:12,934.934 INFO    ] 2026-06-05 07:35:12
[2026-06-05 07:35:12,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:35:13,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:35:13,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:35:13,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:35:13,415.415 INFO    ] time= 05/06/2026 07:35:13
[2026-06-05 07:35:13,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:35:13,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:35:13,554.554 INFO    ] No existing commands found in stream
[2026-06-05 07:35:18,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:35:18,568.568 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 07:35:20,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:35:20,423.423 INFO    ] Checking for system updates...
[2026-06-05 07:35:20,459.459 INFO    ] 200
[2026-06-05 07:35:20,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:20,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:35:20,518.518 INFO    ] No update needed
[2026-06-05 07:35:20,521.521 INFO    ] Checking for camera pi updates...
[2026-06-05 07:35:20,556.556 INFO    ] 200
[2026-06-05 07:35:20,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:20,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:35:20,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:35:20,654.654 INFO    ] No camera update needed
[2026-06-05 07:35:20,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:35:20,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:35:20,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:35:20,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:35:22,711.711 INFO    ] ================================================
[2026-06-05 07:35:22,728.728 INFO    ] Launching Daemon at Fri Jun  5 07:35:22 IST 2026
[2026-06-05 07:35:22,739.739 INFO    ] ================================================
[2026-06-05 07:35:23,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:35:23
[2026-06-05 07:35:23,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:35:24,157.157 INFO    ] Initializing speech engine...
[2026-06-05 07:35:24,169.169 INFO    ] 2026-06-05 07:35:24
[2026-06-05 07:35:24,438.438 INFO    ] 2026-06-05 07:35:24
[2026-06-05 07:35:24,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:35:24,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:35:24,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:35:24,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:35:24,815.815 INFO    ] time= 05/06/2026 07:35:24
[2026-06-05 07:35:24,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:35:24,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:35:24,973.973 INFO    ] No existing commands found in stream
[2026-06-05 07:35:30,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:35:30,006.006 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 07:35:32,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:35:32,463.463 INFO    ] Checking for system updates...
[2026-06-05 07:35:32,501.501 INFO    ] 200
[2026-06-05 07:35:32,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:32,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:35:32,564.564 INFO    ] No update needed
[2026-06-05 07:35:32,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 07:35:32,604.604 INFO    ] 200
[2026-06-05 07:35:32,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:32,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:35:32,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:35:32,684.684 INFO    ] No camera update needed
[2026-06-05 07:35:32,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:35:32,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:35:32,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:35:32,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:35:34,744.744 INFO    ] ================================================
[2026-06-05 07:35:34,760.760 INFO    ] Launching Daemon at Fri Jun  5 07:35:34 IST 2026
[2026-06-05 07:35:34,771.771 INFO    ] ================================================
[2026-06-05 07:35:35,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:35:35
[2026-06-05 07:35:35,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:35:36,171.171 INFO    ] Initializing speech engine...
[2026-06-05 07:35:36,186.186 INFO    ] 2026-06-05 07:35:36
[2026-06-05 07:35:36,451.451 INFO    ] 2026-06-05 07:35:36
[2026-06-05 07:35:36,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:35:36,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:35:36,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:35:36,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:35:36,830.830 INFO    ] time= 05/06/2026 07:35:36
[2026-06-05 07:35:36,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:35:36,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:35:37,002.002 INFO    ] No existing commands found in stream
[2026-06-05 07:35:42,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:35:42,030.030 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 07:35:43,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:35:43,831.831 INFO    ] Checking for system updates...
[2026-06-05 07:35:43,868.868 INFO    ] 200
[2026-06-05 07:35:43,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:43,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:35:43,934.934 INFO    ] No update needed
[2026-06-05 07:35:43,937.937 INFO    ] Checking for camera pi updates...
[2026-06-05 07:35:43,972.972 INFO    ] 200
[2026-06-05 07:35:43,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:44,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:35:44,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:35:44,068.068 INFO    ] No camera update needed
[2026-06-05 07:35:44,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:35:44,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:35:44,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:35:44,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:35:46,124.124 INFO    ] ================================================
[2026-06-05 07:35:46,139.139 INFO    ] Launching Daemon at Fri Jun  5 07:35:46 IST 2026
[2026-06-05 07:35:46,150.150 INFO    ] ================================================
[2026-06-05 07:35:46,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:35:46
[2026-06-05 07:35:47,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:35:47,546.546 INFO    ] Initializing speech engine...
[2026-06-05 07:35:47,554.554 INFO    ] 2026-06-05 07:35:47
[2026-06-05 07:35:47,823.823 INFO    ] 2026-06-05 07:35:47
[2026-06-05 07:35:47,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:35:48,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:35:48,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:35:48,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:35:48,299.299 INFO    ] time= 05/06/2026 07:35:48
[2026-06-05 07:35:48,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:35:48,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:35:48,445.445 INFO    ] No existing commands found in stream
[2026-06-05 07:35:53,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:35:53,459.459 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 07:35:54,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:35:54,713.713 INFO    ] Checking for system updates...
[2026-06-05 07:35:54,750.750 INFO    ] 200
[2026-06-05 07:35:54,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:54,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:35:54,808.808 INFO    ] No update needed
[2026-06-05 07:35:54,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 07:35:54,848.848 INFO    ] 200
[2026-06-05 07:35:54,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:35:54,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:35:55,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:35:55,041.041 INFO    ] No camera update needed
[2026-06-05 07:35:55,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:35:55,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:35:55,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:35:55,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:35:57,098.098 INFO    ] ================================================
[2026-06-05 07:35:57,113.113 INFO    ] Launching Daemon at Fri Jun  5 07:35:57 IST 2026
[2026-06-05 07:35:57,124.124 INFO    ] ================================================
[2026-06-05 07:35:57,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:35:57
[2026-06-05 07:35:58,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:35:58,538.538 INFO    ] Initializing speech engine...
[2026-06-05 07:35:58,546.546 INFO    ] 2026-06-05 07:35:58
[2026-06-05 07:35:58,837.837 INFO    ] 2026-06-05 07:35:58
[2026-06-05 07:35:58,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:35:59,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:35:59,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:35:59,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:35:59,211.211 INFO    ] time= 05/06/2026 07:35:59
[2026-06-05 07:35:59,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:35:59,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:35:59,337.337 INFO    ] No existing commands found in stream
[2026-06-05 07:36:04,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:36:04,353.353 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 07:36:05,237.237 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:36:05,240.240 INFO    ] Checking for system updates...
[2026-06-05 07:36:05,276.276 INFO    ] 200
[2026-06-05 07:36:05,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:05,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:36:05,334.334 INFO    ] No update needed
[2026-06-05 07:36:05,337.337 INFO    ] Checking for camera pi updates...
[2026-06-05 07:36:05,371.371 INFO    ] 200
[2026-06-05 07:36:05,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:05,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:36:05,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:36:05,447.447 INFO    ] No camera update needed
[2026-06-05 07:36:05,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:36:05,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:36:05,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:36:05,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:36:07,503.503 INFO    ] ================================================
[2026-06-05 07:36:07,519.519 INFO    ] Launching Daemon at Fri Jun  5 07:36:07 IST 2026
[2026-06-05 07:36:07,530.530 INFO    ] ================================================
[2026-06-05 07:36:08,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:36:08
[2026-06-05 07:36:08,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:36:08,941.941 INFO    ] Initializing speech engine...
[2026-06-05 07:36:08,949.949 INFO    ] 2026-06-05 07:36:08
[2026-06-05 07:36:09,243.243 INFO    ] 2026-06-05 07:36:09
[2026-06-05 07:36:09,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:36:09,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:36:09,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:36:09,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:36:09,622.622 INFO    ] time= 05/06/2026 07:36:09
[2026-06-05 07:36:09,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:36:09,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:36:09,748.748 INFO    ] No existing commands found in stream
[2026-06-05 07:36:14,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:36:14,760.760 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 07:36:17,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:36:17,068.068 INFO    ] Checking for system updates...
[2026-06-05 07:36:17,104.104 INFO    ] 200
[2026-06-05 07:36:17,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:17,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:36:17,169.169 INFO    ] No update needed
[2026-06-05 07:36:17,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 07:36:17,213.213 INFO    ] 200
[2026-06-05 07:36:17,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:17,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:36:17,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:36:17,304.304 INFO    ] No camera update needed
[2026-06-05 07:36:17,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:36:17,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:36:17,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:36:17,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:36:19,359.359 INFO    ] ================================================
[2026-06-05 07:36:19,374.374 INFO    ] Launching Daemon at Fri Jun  5 07:36:19 IST 2026
[2026-06-05 07:36:19,385.385 INFO    ] ================================================
[2026-06-05 07:36:19,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:36:19
[2026-06-05 07:36:20,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:36:20,812.812 INFO    ] Initializing speech engine...
[2026-06-05 07:36:20,827.827 INFO    ] 2026-06-05 07:36:20
[2026-06-05 07:36:21,083.083 INFO    ] 2026-06-05 07:36:21
[2026-06-05 07:36:21,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:36:21,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:36:21,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:36:21,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:36:21,468.468 INFO    ] time= 05/06/2026 07:36:21
[2026-06-05 07:36:21,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:36:21,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:36:21,601.601 INFO    ] No existing commands found in stream
[2026-06-05 07:36:26,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:36:26,616.616 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 07:36:30,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:36:30,266.266 INFO    ] Checking for system updates...
[2026-06-05 07:36:30,303.303 INFO    ] 200
[2026-06-05 07:36:30,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:30,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:36:30,361.361 INFO    ] No update needed
[2026-06-05 07:36:30,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 07:36:30,397.397 INFO    ] 200
[2026-06-05 07:36:30,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:30,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:36:30,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:36:30,485.485 INFO    ] No camera update needed
[2026-06-05 07:36:30,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:36:30,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:36:30,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:36:30,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:36:32,540.540 INFO    ] ================================================
[2026-06-05 07:36:32,556.556 INFO    ] Launching Daemon at Fri Jun  5 07:36:32 IST 2026
[2026-06-05 07:36:32,568.568 INFO    ] ================================================
[2026-06-05 07:36:33,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:36:33
[2026-06-05 07:36:33,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:36:33,995.995 INFO    ] Initializing speech engine...
[2026-06-05 07:36:34,010.010 INFO    ] 2026-06-05 07:36:33
[2026-06-05 07:36:34,294.294 INFO    ] 2026-06-05 07:36:34
[2026-06-05 07:36:34,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:36:34,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:36:34,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:36:34,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:36:34,798.798 INFO    ] time= 05/06/2026 07:36:34
[2026-06-05 07:36:34,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:36:34,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:36:34,995.995 INFO    ] No existing commands found in stream
[2026-06-05 07:36:40,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:36:40,011.011 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 07:36:43,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:36:43,808.808 INFO    ] Checking for system updates...
[2026-06-05 07:36:43,845.845 INFO    ] 200
[2026-06-05 07:36:43,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:43,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:36:43,913.913 INFO    ] No update needed
[2026-06-05 07:36:43,916.916 INFO    ] Checking for camera pi updates...
[2026-06-05 07:36:43,955.955 INFO    ] 200
[2026-06-05 07:36:43,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:44,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:36:44,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:36:44,052.052 INFO    ] No camera update needed
[2026-06-05 07:36:44,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:36:44,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:36:44,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:36:44,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:36:46,110.110 INFO    ] ================================================
[2026-06-05 07:36:46,125.125 INFO    ] Launching Daemon at Fri Jun  5 07:36:46 IST 2026
[2026-06-05 07:36:46,136.136 INFO    ] ================================================
[2026-06-05 07:36:46,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:36:46
[2026-06-05 07:36:47,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:36:47,769.769 INFO    ] Initializing speech engine...
[2026-06-05 07:36:47,782.782 INFO    ] 2026-06-05 07:36:47
[2026-06-05 07:36:48,063.063 INFO    ] 2026-06-05 07:36:48
[2026-06-05 07:36:48,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:36:48,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:36:48,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:36:48,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:36:48,600.600 INFO    ] time= 05/06/2026 07:36:48
[2026-06-05 07:36:48,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:36:48,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:36:48,735.735 INFO    ] No existing commands found in stream
[2026-06-05 07:36:53,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:36:53,767.767 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 07:36:57,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:36:57,762.762 INFO    ] Checking for system updates...
[2026-06-05 07:36:57,803.803 INFO    ] 200
[2026-06-05 07:36:57,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:57,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:36:57,863.863 INFO    ] No update needed
[2026-06-05 07:36:57,866.866 INFO    ] Checking for camera pi updates...
[2026-06-05 07:36:57,901.901 INFO    ] 200
[2026-06-05 07:36:57,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:36:57,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:36:57,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:36:58,000.000 INFO    ] No camera update needed
[2026-06-05 07:36:58,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:36:58,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:36:58,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:36:58,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:37:00,058.058 INFO    ] ================================================
[2026-06-05 07:37:00,075.075 INFO    ] Launching Daemon at Fri Jun  5 07:37:00 IST 2026
[2026-06-05 07:37:00,087.087 INFO    ] ================================================
[2026-06-05 07:37:00,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:37:00
[2026-06-05 07:37:01,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:37:01,851.851 INFO    ] Initializing speech engine...
[2026-06-05 07:37:01,854.854 INFO    ] 2026-06-05 07:37:01
[2026-06-05 07:37:02,177.177 INFO    ] 2026-06-05 07:37:02
[2026-06-05 07:37:02,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:37:02,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:37:02,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:37:02,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:37:02,745.745 INFO    ] time= 05/06/2026 07:37:02
[2026-06-05 07:37:02,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:37:02,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:37:02,969.969 INFO    ] No existing commands found in stream
[2026-06-05 07:37:07,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:37:07,987.987 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 07:37:10,224.224 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:37:10,227.227 INFO    ] Checking for system updates...
[2026-06-05 07:37:10,263.263 INFO    ] 200
[2026-06-05 07:37:10,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:10,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:37:10,321.321 INFO    ] No update needed
[2026-06-05 07:37:10,324.324 INFO    ] Checking for camera pi updates...
[2026-06-05 07:37:10,358.358 INFO    ] 200
[2026-06-05 07:37:10,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:10,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:37:10,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:37:10,429.429 INFO    ] No camera update needed
[2026-06-05 07:37:10,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:37:10,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:37:10,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:37:10,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:37:12,484.484 INFO    ] ================================================
[2026-06-05 07:37:12,500.500 INFO    ] Launching Daemon at Fri Jun  5 07:37:12 IST 2026
[2026-06-05 07:37:12,511.511 INFO    ] ================================================
[2026-06-05 07:37:13,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:37:13
[2026-06-05 07:37:13,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:37:13,934.934 INFO    ] Initializing speech engine...
[2026-06-05 07:37:13,943.943 INFO    ] 2026-06-05 07:37:13
[2026-06-05 07:37:14,191.191 INFO    ] 2026-06-05 07:37:14
[2026-06-05 07:37:14,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:37:14,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:37:14,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:37:14,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:37:14,635.635 INFO    ] time= 05/06/2026 07:37:14
[2026-06-05 07:37:14,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:37:14,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:37:14,880.880 INFO    ] No existing commands found in stream
[2026-06-05 07:37:19,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:37:19,912.912 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 07:37:22,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:37:22,798.798 INFO    ] Checking for system updates...
[2026-06-05 07:37:22,835.835 INFO    ] 200
[2026-06-05 07:37:22,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:22,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:37:22,900.900 INFO    ] No update needed
[2026-06-05 07:37:22,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 07:37:22,936.936 INFO    ] 200
[2026-06-05 07:37:22,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:22,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:37:23,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:37:23,027.027 INFO    ] No camera update needed
[2026-06-05 07:37:23,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:37:23,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:37:23,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:37:23,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:37:25,083.083 INFO    ] ================================================
[2026-06-05 07:37:25,100.100 INFO    ] Launching Daemon at Fri Jun  5 07:37:25 IST 2026
[2026-06-05 07:37:25,111.111 INFO    ] ================================================
[2026-06-05 07:37:25,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:37:25
[2026-06-05 07:37:26,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:37:26,509.509 INFO    ] Initializing speech engine...
[2026-06-05 07:37:26,518.518 INFO    ] 2026-06-05 07:37:26
[2026-06-05 07:37:26,792.792 INFO    ] 2026-06-05 07:37:26
[2026-06-05 07:37:26,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:37:27,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:37:27,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:37:27,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:37:27,253.253 INFO    ] time= 05/06/2026 07:37:27
[2026-06-05 07:37:27,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:37:27,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:37:27,421.421 INFO    ] No existing commands found in stream
[2026-06-05 07:37:32,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:37:32,436.436 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 07:37:35,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:37:35,157.157 INFO    ] Checking for system updates...
[2026-06-05 07:37:35,194.194 INFO    ] 200
[2026-06-05 07:37:35,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:35,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:37:35,253.253 INFO    ] No update needed
[2026-06-05 07:37:35,255.255 INFO    ] Checking for camera pi updates...
[2026-06-05 07:37:35,289.289 INFO    ] 200
[2026-06-05 07:37:35,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:35,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:37:35,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:37:35,378.378 INFO    ] No camera update needed
[2026-06-05 07:37:35,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:37:35,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:37:35,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:37:35,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:37:37,436.436 INFO    ] ================================================
[2026-06-05 07:37:37,451.451 INFO    ] Launching Daemon at Fri Jun  5 07:37:37 IST 2026
[2026-06-05 07:37:37,463.463 INFO    ] ================================================
[2026-06-05 07:37:38,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:37:38
[2026-06-05 07:37:38,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:37:38,923.923 INFO    ] Initializing speech engine...
[2026-06-05 07:37:38,933.933 INFO    ] 2026-06-05 07:37:38
[2026-06-05 07:37:39,182.182 INFO    ] 2026-06-05 07:37:39
[2026-06-05 07:37:39,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:37:39,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:37:39,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:37:39,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:37:39,670.670 INFO    ] time= 05/06/2026 07:37:39
[2026-06-05 07:37:39,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:37:39,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:37:39,803.803 INFO    ] No existing commands found in stream
[2026-06-05 07:37:44,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:37:44,818.818 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 07:37:45,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:37:45,399.399 INFO    ] Checking for system updates...
[2026-06-05 07:37:45,438.438 INFO    ] 200
[2026-06-05 07:37:45,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:45,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:37:45,498.498 INFO    ] No update needed
[2026-06-05 07:37:45,500.500 INFO    ] Checking for camera pi updates...
[2026-06-05 07:37:45,535.535 INFO    ] 200
[2026-06-05 07:37:45,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:45,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:37:45,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:37:45,628.628 INFO    ] No camera update needed
[2026-06-05 07:37:45,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:37:45,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:37:45,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:37:45,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:37:47,687.687 INFO    ] ================================================
[2026-06-05 07:37:47,703.703 INFO    ] Launching Daemon at Fri Jun  5 07:37:47 IST 2026
[2026-06-05 07:37:47,714.714 INFO    ] ================================================
[2026-06-05 07:37:48,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:37:48
[2026-06-05 07:37:48,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:37:49,171.171 INFO    ] Initializing speech engine...
[2026-06-05 07:37:49,184.184 INFO    ] 2026-06-05 07:37:49
[2026-06-05 07:37:49,476.476 INFO    ] 2026-06-05 07:37:49
[2026-06-05 07:37:49,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:37:49,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:37:49,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:37:49,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:37:49,895.895 INFO    ] time= 05/06/2026 07:37:49
[2026-06-05 07:37:49,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:37:49,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:37:49,985.985 INFO    ] No existing commands found in stream
[2026-06-05 07:37:54,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:37:55,001.001 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 07:37:57,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:37:57,824.824 INFO    ] Checking for system updates...
[2026-06-05 07:37:57,865.865 INFO    ] 200
[2026-06-05 07:37:57,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:57,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:37:57,930.930 INFO    ] No update needed
[2026-06-05 07:37:57,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 07:37:57,966.966 INFO    ] 200
[2026-06-05 07:37:57,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:37:58,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:37:58,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:37:58,160.160 INFO    ] No camera update needed
[2026-06-05 07:37:58,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:37:58,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:37:58,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:37:58,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:38:00,216.216 INFO    ] ================================================
[2026-06-05 07:38:00,232.232 INFO    ] Launching Daemon at Fri Jun  5 07:38:00 IST 2026
[2026-06-05 07:38:00,242.242 INFO    ] ================================================
[2026-06-05 07:38:00,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:38:00
[2026-06-05 07:38:01,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:38:01,926.926 INFO    ] Initializing speech engine...
[2026-06-05 07:38:01,934.934 INFO    ] 2026-06-05 07:38:01
[2026-06-05 07:38:02,262.262 INFO    ] 2026-06-05 07:38:02
[2026-06-05 07:38:02,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:38:02,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:38:02,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:38:02,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:38:02,790.790 INFO    ] time= 05/06/2026 07:38:02
[2026-06-05 07:38:02,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:38:02,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:38:02,886.886 INFO    ] No existing commands found in stream
[2026-06-05 07:38:07,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:38:07,903.903 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 07:38:10,918.918 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:38:10,921.921 INFO    ] Checking for system updates...
[2026-06-05 07:38:10,960.960 INFO    ] 200
[2026-06-05 07:38:10,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:38:11,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:38:11,018.018 INFO    ] No update needed
[2026-06-05 07:38:11,021.021 INFO    ] Checking for camera pi updates...
[2026-06-05 07:38:11,056.056 INFO    ] 200
[2026-06-05 07:38:11,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:38:11,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:38:11,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:38:11,152.152 INFO    ] No camera update needed
[2026-06-05 07:38:11,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:38:11,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:38:11,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:38:11,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:38:13,207.207 INFO    ] ================================================
[2026-06-05 07:38:13,222.222 INFO    ] Launching Daemon at Fri Jun  5 07:38:13 IST 2026
[2026-06-05 07:38:13,233.233 INFO    ] ================================================
[2026-06-05 07:38:13,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:38:13
[2026-06-05 07:38:14,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:38:14,701.701 INFO    ] Initializing speech engine...
[2026-06-05 07:38:14,707.707 INFO    ] 2026-06-05 07:38:14
[2026-06-05 07:38:14,969.969 INFO    ] 2026-06-05 07:38:14
[2026-06-05 07:38:14,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:38:15,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:38:15,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:38:15,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:38:15,521.521 INFO    ] time= 05/06/2026 07:38:15
[2026-06-05 07:38:15,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:38:15,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:38:15,652.652 INFO    ] No existing commands found in stream
[2026-06-05 07:38:20,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:38:20,685.685 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 07:38:23,421.421 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:38:23,423.423 INFO    ] Checking for system updates...
[2026-06-05 07:38:23,464.464 INFO    ] 200
[2026-06-05 07:38:23,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:38:23,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:38:23,528.528 INFO    ] No update needed
[2026-06-05 07:38:23,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 07:38:23,568.568 INFO    ] 200
[2026-06-05 07:38:23,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:38:23,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:38:23,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:38:23,656.656 INFO    ] No camera update needed
[2026-06-05 07:38:23,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:38:23,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:38:23,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:38:23,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:38:25,714.714 INFO    ] ================================================
[2026-06-05 07:38:25,729.729 INFO    ] Launching Daemon at Fri Jun  5 07:38:25 IST 2026
[2026-06-05 07:38:25,740.740 INFO    ] ================================================
[2026-06-05 07:38:26,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:38:26
[2026-06-05 07:38:26,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:38:27,144.144 INFO    ] Initializing speech engine...
[2026-06-05 07:38:27,159.159 INFO    ] 2026-06-05 07:38:27
[2026-06-05 07:38:27,424.424 INFO    ] 2026-06-05 07:38:27
[2026-06-05 07:38:27,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:38:27,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:38:27,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:38:27,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:38:27,801.801 INFO    ] time= 05/06/2026 07:38:27
[2026-06-05 07:38:27,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:38:27,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:38:27,966.966 INFO    ] No existing commands found in stream
[2026-06-05 07:38:32,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:38:32,999.999 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 07:38:33,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:38:33,964.964 INFO    ] Checking for system updates...
[2026-06-05 07:38:34,005.005 INFO    ] 200
[2026-06-05 07:38:34,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:38:34,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:38:34,062.062 INFO    ] No update needed
[2026-06-05 07:38:34,067.067 INFO    ] Checking for camera pi updates...
[2026-06-05 07:38:34,103.103 INFO    ] 200
[2026-06-05 07:38:34,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:38:34,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:38:34,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:38:34,192.192 INFO    ] No camera update needed
[2026-06-05 07:38:34,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:38:34,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:38:34,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:38:34,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:38:36,253.253 INFO    ] ================================================
[2026-06-05 07:38:36,270.270 INFO    ] Launching Daemon at Fri Jun  5 07:38:36 IST 2026
[2026-06-05 07:38:36,282.282 INFO    ] ================================================
[2026-06-05 07:38:36,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:38:36
[2026-06-05 07:38:37,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:38:37,757.757 INFO    ] Initializing speech engine...
[2026-06-05 07:38:37,764.764 INFO    ] 2026-06-05 07:38:37
[2026-06-05 07:38:38,057.057 INFO    ] 2026-06-05 07:38:38
[2026-06-05 07:38:38,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:38:38,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:38:38,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:38:38,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:38:38,461.461 INFO    ] time= 05/06/2026 07:38:38
[2026-06-05 07:38:38,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:38:38,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:38:38,550.550 INFO    ] No existing commands found in stream
[2026-06-05 07:38:43,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:38:43,564.564 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 07:38:47,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:38:47,684.684 INFO    ] Checking for system updates...
[2026-06-05 07:38:47,724.724 INFO    ] 200
[2026-06-05 07:38:47,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:38:47,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:38:47,783.783 INFO    ] No update needed
[2026-06-05 07:38:47,786.786 INFO    ] Checking for camera pi updates...
[2026-06-05 07:38:47,820.820 INFO    ] 200
[2026-06-05 07:38:47,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:38:47,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:38:47,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:38:47,906.906 INFO    ] No camera update needed
[2026-06-05 07:38:47,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:38:47,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:38:47,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:38:47,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:38:49,963.963 INFO    ] ================================================
[2026-06-05 07:38:49,979.979 INFO    ] Launching Daemon at Fri Jun  5 07:38:49 IST 2026
[2026-06-05 07:38:49,990.990 INFO    ] ================================================
[2026-06-05 07:38:50,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:38:50
[2026-06-05 07:38:51,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:38:51,457.457 INFO    ] Initializing speech engine...
[2026-06-05 07:38:51,465.465 INFO    ] 2026-06-05 07:38:51
[2026-06-05 07:38:51,724.724 INFO    ] 2026-06-05 07:38:51
[2026-06-05 07:38:51,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:38:52,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:38:52,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:38:52,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:38:52,194.194 INFO    ] time= 05/06/2026 07:38:52
[2026-06-05 07:38:52,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:38:52,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:38:52,392.392 INFO    ] No existing commands found in stream
[2026-06-05 07:38:57,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:38:57,423.423 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 07:39:01,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:39:01,126.126 INFO    ] Checking for system updates...
[2026-06-05 07:39:01,163.163 INFO    ] 200
[2026-06-05 07:39:01,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:01,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:39:01,231.231 INFO    ] No update needed
[2026-06-05 07:39:01,234.234 INFO    ] Checking for camera pi updates...
[2026-06-05 07:39:01,267.267 INFO    ] 200
[2026-06-05 07:39:01,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:01,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:39:01,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:39:01,362.362 INFO    ] No camera update needed
[2026-06-05 07:39:01,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:39:01,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:39:01,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:39:01,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:39:03,422.422 INFO    ] ================================================
[2026-06-05 07:39:03,438.438 INFO    ] Launching Daemon at Fri Jun  5 07:39:03 IST 2026
[2026-06-05 07:39:03,449.449 INFO    ] ================================================
[2026-06-05 07:39:04,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:39:04
[2026-06-05 07:39:04,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:39:04,924.924 INFO    ] Initializing speech engine...
[2026-06-05 07:39:04,940.940 INFO    ] 2026-06-05 07:39:04
[2026-06-05 07:39:05,221.221 INFO    ] 2026-06-05 07:39:05
[2026-06-05 07:39:05,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:39:05,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:39:05,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:39:05,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:39:05,632.632 INFO    ] time= 05/06/2026 07:39:05
[2026-06-05 07:39:05,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:39:05,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:39:05,729.729 INFO    ] No existing commands found in stream
[2026-06-05 07:39:10,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:39:10,744.744 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 07:39:11,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:39:11,395.395 INFO    ] Checking for system updates...
[2026-06-05 07:39:11,431.431 INFO    ] 200
[2026-06-05 07:39:11,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:11,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:39:11,491.491 INFO    ] No update needed
[2026-06-05 07:39:11,493.493 INFO    ] Checking for camera pi updates...
[2026-06-05 07:39:11,527.527 INFO    ] 200
[2026-06-05 07:39:11,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:11,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:39:11,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:39:11,630.630 INFO    ] No camera update needed
[2026-06-05 07:39:11,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:39:11,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:39:11,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:39:11,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:39:13,686.686 INFO    ] ================================================
[2026-06-05 07:39:13,701.701 INFO    ] Launching Daemon at Fri Jun  5 07:39:13 IST 2026
[2026-06-05 07:39:13,712.712 INFO    ] ================================================
[2026-06-05 07:39:14,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:39:14
[2026-06-05 07:39:14,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:39:15,172.172 INFO    ] Initializing speech engine...
[2026-06-05 07:39:15,182.182 INFO    ] 2026-06-05 07:39:15
[2026-06-05 07:39:15,440.440 INFO    ] 2026-06-05 07:39:15
[2026-06-05 07:39:15,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:39:15,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:39:15,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:39:15,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:39:15,915.915 INFO    ] time= 05/06/2026 07:39:15
[2026-06-05 07:39:15,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:39:16,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:39:16,070.070 INFO    ] No existing commands found in stream
[2026-06-05 07:39:21,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:39:21,094.094 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 07:39:24,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:39:24,734.734 INFO    ] Checking for system updates...
[2026-06-05 07:39:24,772.772 INFO    ] 200
[2026-06-05 07:39:24,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:24,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:39:24,832.832 INFO    ] No update needed
[2026-06-05 07:39:24,835.835 INFO    ] Checking for camera pi updates...
[2026-06-05 07:39:24,870.870 INFO    ] 200
[2026-06-05 07:39:24,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:24,918.918 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:39:24,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:39:24,963.963 INFO    ] No camera update needed
[2026-06-05 07:39:24,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:39:24,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:39:24,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:39:24,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:39:27,021.021 INFO    ] ================================================
[2026-06-05 07:39:27,037.037 INFO    ] Launching Daemon at Fri Jun  5 07:39:27 IST 2026
[2026-06-05 07:39:27,048.048 INFO    ] ================================================
[2026-06-05 07:39:27,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:39:27
[2026-06-05 07:39:28,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:39:28,684.684 INFO    ] Initializing speech engine...
[2026-06-05 07:39:28,697.697 INFO    ] 2026-06-05 07:39:28
[2026-06-05 07:39:29,013.013 INFO    ] 2026-06-05 07:39:28
[2026-06-05 07:39:29,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:39:29,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:39:29,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:39:29,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:39:29,468.468 INFO    ] time= 05/06/2026 07:39:29
[2026-06-05 07:39:29,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:39:29,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:39:29,670.670 INFO    ] No existing commands found in stream
[2026-06-05 07:39:34,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:39:34,702.702 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 07:39:36,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:39:36,626.626 INFO    ] Checking for system updates...
[2026-06-05 07:39:36,667.667 INFO    ] 200
[2026-06-05 07:39:36,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:36,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:39:36,734.734 INFO    ] No update needed
[2026-06-05 07:39:36,737.737 INFO    ] Checking for camera pi updates...
[2026-06-05 07:39:36,776.776 INFO    ] 200
[2026-06-05 07:39:36,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:36,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:39:36,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:39:36,873.873 INFO    ] No camera update needed
[2026-06-05 07:39:36,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:39:36,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:39:36,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:39:36,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:39:38,930.930 INFO    ] ================================================
[2026-06-05 07:39:38,946.946 INFO    ] Launching Daemon at Fri Jun  5 07:39:38 IST 2026
[2026-06-05 07:39:38,957.957 INFO    ] ================================================
[2026-06-05 07:39:39,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:39:39
[2026-06-05 07:39:40,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:39:40,583.583 INFO    ] Initializing speech engine...
[2026-06-05 07:39:40,594.594 INFO    ] 2026-06-05 07:39:40
[2026-06-05 07:39:40,874.874 INFO    ] 2026-06-05 07:39:40
[2026-06-05 07:39:40,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:39:41,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:39:41,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:39:41,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:39:41,329.329 INFO    ] time= 05/06/2026 07:39:41
[2026-06-05 07:39:41,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:39:41,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:39:41,532.532 INFO    ] No existing commands found in stream
[2026-06-05 07:39:46,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:39:46,564.564 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 07:39:47,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:39:47,266.266 INFO    ] Checking for system updates...
[2026-06-05 07:39:47,308.308 INFO    ] 200
[2026-06-05 07:39:47,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:47,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:39:47,369.369 INFO    ] No update needed
[2026-06-05 07:39:47,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 07:39:47,408.408 INFO    ] 200
[2026-06-05 07:39:47,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:47,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:39:47,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:39:47,499.499 INFO    ] No camera update needed
[2026-06-05 07:39:47,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:39:47,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:39:47,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:39:47,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:39:49,557.557 INFO    ] ================================================
[2026-06-05 07:39:49,573.573 INFO    ] Launching Daemon at Fri Jun  5 07:39:49 IST 2026
[2026-06-05 07:39:49,585.585 INFO    ] ================================================
[2026-06-05 07:39:50,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:39:50
[2026-06-05 07:39:50,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:39:51,224.224 INFO    ] Initializing speech engine...
[2026-06-05 07:39:51,237.237 INFO    ] 2026-06-05 07:39:51
[2026-06-05 07:39:51,545.545 INFO    ] 2026-06-05 07:39:51
[2026-06-05 07:39:51,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:39:51,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:39:51,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:39:52,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:39:52,066.066 INFO    ] time= 05/06/2026 07:39:52
[2026-06-05 07:39:52,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:39:52,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:39:52,210.210 INFO    ] No existing commands found in stream
[2026-06-05 07:39:57,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:39:57,241.241 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 07:39:58,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:39:58,230.230 INFO    ] Checking for system updates...
[2026-06-05 07:39:58,271.271 INFO    ] 200
[2026-06-05 07:39:58,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:58,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:39:58,334.334 INFO    ] No update needed
[2026-06-05 07:39:58,337.337 INFO    ] Checking for camera pi updates...
[2026-06-05 07:39:58,371.371 INFO    ] 200
[2026-06-05 07:39:58,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:39:58,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:39:58,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:39:58,466.466 INFO    ] No camera update needed
[2026-06-05 07:39:58,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:39:58,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:39:58,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:39:58,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:40:00,524.524 INFO    ] ================================================
[2026-06-05 07:40:00,540.540 INFO    ] Launching Daemon at Fri Jun  5 07:40:00 IST 2026
[2026-06-05 07:40:00,551.551 INFO    ] ================================================
[2026-06-05 07:40:01,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:40:01
[2026-06-05 07:40:02,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:40:02,781.781 INFO    ] Initializing speech engine...
[2026-06-05 07:40:02,786.786 INFO    ] 2026-06-05 07:40:02
[2026-06-05 07:40:03,140.140 INFO    ] 2026-06-05 07:40:03
[2026-06-05 07:40:03,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:40:03,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:40:03,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:40:03,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:40:03,587.587 INFO    ] time= 05/06/2026 07:40:03
[2026-06-05 07:40:03,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:40:03,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:40:03,727.727 INFO    ] No existing commands found in stream
[2026-06-05 07:40:08,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:40:08,756.756 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 07:40:12,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:40:12,296.296 INFO    ] Checking for system updates...
[2026-06-05 07:40:12,333.333 INFO    ] 200
[2026-06-05 07:40:12,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:40:12,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:40:12,392.392 INFO    ] No update needed
[2026-06-05 07:40:12,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 07:40:12,428.428 INFO    ] 200
[2026-06-05 07:40:12,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:40:12,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:40:12,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:40:12,523.523 INFO    ] No camera update needed
[2026-06-05 07:40:12,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:40:12,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:40:12,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:40:12,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:40:14,580.580 INFO    ] ================================================
[2026-06-05 07:40:14,596.596 INFO    ] Launching Daemon at Fri Jun  5 07:40:14 IST 2026
[2026-06-05 07:40:14,607.607 INFO    ] ================================================
[2026-06-05 07:40:15,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:40:15
[2026-06-05 07:40:15,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:40:16,044.044 INFO    ] Initializing speech engine...
[2026-06-05 07:40:16,068.068 INFO    ] 2026-06-05 07:40:16
[2026-06-05 07:40:16,344.344 INFO    ] 2026-06-05 07:40:16
[2026-06-05 07:40:16,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:40:16,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:40:16,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:40:16,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:40:16,740.740 INFO    ] time= 05/06/2026 07:40:16
[2026-06-05 07:40:16,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:40:16,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:40:16,852.852 INFO    ] No existing commands found in stream
[2026-06-05 07:40:21,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:40:21,885.885 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 07:40:25,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:40:25,222.222 INFO    ] Checking for system updates...
[2026-06-05 07:40:25,258.258 INFO    ] 200
[2026-06-05 07:40:25,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:40:25,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:40:25,317.317 INFO    ] No update needed
[2026-06-05 07:40:25,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 07:40:25,354.354 INFO    ] 200
[2026-06-05 07:40:25,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:40:25,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:40:25,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:40:25,449.449 INFO    ] No camera update needed
[2026-06-05 07:40:25,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:40:25,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:40:25,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:40:25,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:40:27,506.506 INFO    ] ================================================
[2026-06-05 07:40:27,521.521 INFO    ] Launching Daemon at Fri Jun  5 07:40:27 IST 2026
[2026-06-05 07:40:27,532.532 INFO    ] ================================================
[2026-06-05 07:40:28,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:40:28
[2026-06-05 07:40:28,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:40:29,161.161 INFO    ] Initializing speech engine...
[2026-06-05 07:40:29,170.170 INFO    ] 2026-06-05 07:40:29
[2026-06-05 07:40:29,457.457 INFO    ] 2026-06-05 07:40:29
[2026-06-05 07:40:29,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:40:29,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:40:29,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:40:29,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:40:29,998.998 INFO    ] time= 05/06/2026 07:40:29
[2026-06-05 07:40:30,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:40:30,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:40:30,152.152 INFO    ] No existing commands found in stream
[2026-06-05 07:40:35,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:40:35,171.171 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 07:40:39,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:40:39,120.120 INFO    ] Checking for system updates...
[2026-06-05 07:40:39,157.157 INFO    ] 200
[2026-06-05 07:40:39,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:40:39,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:40:39,223.223 INFO    ] No update needed
[2026-06-05 07:40:39,226.226 INFO    ] Checking for camera pi updates...
[2026-06-05 07:40:39,265.265 INFO    ] 200
[2026-06-05 07:40:39,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:40:39,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:40:39,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:40:39,366.366 INFO    ] No camera update needed
[2026-06-05 07:40:39,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:40:39,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:40:39,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:40:39,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:40:41,425.425 INFO    ] ================================================
[2026-06-05 07:40:41,441.441 INFO    ] Launching Daemon at Fri Jun  5 07:40:41 IST 2026
[2026-06-05 07:40:41,452.452 INFO    ] ================================================
[2026-06-05 07:40:42,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:40:42
[2026-06-05 07:40:42,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:40:43,093.093 INFO    ] Initializing speech engine...
[2026-06-05 07:40:43,102.102 INFO    ] 2026-06-05 07:40:43
[2026-06-05 07:40:43,387.387 INFO    ] 2026-06-05 07:40:43
[2026-06-05 07:40:43,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:40:43,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:40:43,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:40:43,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:40:43,854.854 INFO    ] time= 05/06/2026 07:40:43
[2026-06-05 07:40:43,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:40:43,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:40:44,059.059 INFO    ] No existing commands found in stream
[2026-06-05 07:40:49,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:40:49,074.074 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 07:40:51,320.320 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:40:51,322.322 INFO    ] Checking for system updates...
[2026-06-05 07:40:51,359.359 INFO    ] 200
[2026-06-05 07:40:51,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:40:51,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:40:51,421.421 INFO    ] No update needed
[2026-06-05 07:40:51,424.424 INFO    ] Checking for camera pi updates...
[2026-06-05 07:40:51,466.466 INFO    ] 200
[2026-06-05 07:40:51,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:40:51,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:40:51,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:40:51,557.557 INFO    ] No camera update needed
[2026-06-05 07:40:51,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:40:51,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:40:51,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:40:51,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:40:53,613.613 INFO    ] ================================================
[2026-06-05 07:40:53,629.629 INFO    ] Launching Daemon at Fri Jun  5 07:40:53 IST 2026
[2026-06-05 07:40:53,641.641 INFO    ] ================================================
[2026-06-05 07:40:54,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:40:54
[2026-06-05 07:40:54,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:40:55,269.269 INFO    ] Initializing speech engine...
[2026-06-05 07:40:55,282.282 INFO    ] 2026-06-05 07:40:55
[2026-06-05 07:40:55,566.566 INFO    ] 2026-06-05 07:40:55
[2026-06-05 07:40:55,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:40:55,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:40:55,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:40:56,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:40:56,105.105 INFO    ] time= 05/06/2026 07:40:56
[2026-06-05 07:40:56,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:40:56,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:40:56,267.267 INFO    ] No existing commands found in stream
[2026-06-05 07:41:01,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:41:01,293.293 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 07:41:02,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:41:02,344.344 INFO    ] Checking for system updates...
[2026-06-05 07:41:02,391.391 INFO    ] 200
[2026-06-05 07:41:02,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:02,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:41:02,457.457 INFO    ] No update needed
[2026-06-05 07:41:02,460.460 INFO    ] Checking for camera pi updates...
[2026-06-05 07:41:02,498.498 INFO    ] 200
[2026-06-05 07:41:02,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:02,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:41:02,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:41:02,596.596 INFO    ] No camera update needed
[2026-06-05 07:41:02,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:41:02,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:41:02,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:41:02,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:41:04,660.660 INFO    ] ================================================
[2026-06-05 07:41:04,682.682 INFO    ] Launching Daemon at Fri Jun  5 07:41:04 IST 2026
[2026-06-05 07:41:04,693.693 INFO    ] ================================================
[2026-06-05 07:41:05,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:41:05
[2026-06-05 07:41:05,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:41:06,124.124 INFO    ] Initializing speech engine...
[2026-06-05 07:41:06,148.148 INFO    ] 2026-06-05 07:41:06
[2026-06-05 07:41:06,405.405 INFO    ] 2026-06-05 07:41:06
[2026-06-05 07:41:06,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:41:06,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:41:06,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:41:06,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:41:06,916.916 INFO    ] time= 05/06/2026 07:41:06
[2026-06-05 07:41:06,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:41:07,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:41:07,091.091 INFO    ] No existing commands found in stream
[2026-06-05 07:41:12,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:41:12,106.106 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 07:41:13,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:41:13,668.668 INFO    ] Checking for system updates...
[2026-06-05 07:41:13,705.705 INFO    ] 200
[2026-06-05 07:41:13,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:13,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:41:13,768.768 INFO    ] No update needed
[2026-06-05 07:41:13,771.771 INFO    ] Checking for camera pi updates...
[2026-06-05 07:41:13,806.806 INFO    ] 200
[2026-06-05 07:41:13,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:13,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:41:13,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:41:13,909.909 INFO    ] No camera update needed
[2026-06-05 07:41:13,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:41:13,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:41:13,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:41:13,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:41:15,966.966 INFO    ] ================================================
[2026-06-05 07:41:15,983.983 INFO    ] Launching Daemon at Fri Jun  5 07:41:15 IST 2026
[2026-06-05 07:41:16,994.994 INFO    ] ================================================
[2026-06-05 07:41:16,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:41:16
[2026-06-05 07:41:17,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:41:17,422.422 INFO    ] Initializing speech engine...
[2026-06-05 07:41:17,431.431 INFO    ] 2026-06-05 07:41:17
[2026-06-05 07:41:17,682.682 INFO    ] 2026-06-05 07:41:17
[2026-06-05 07:41:17,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:41:17,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:41:17,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:41:18,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:41:18,147.147 INFO    ] time= 05/06/2026 07:41:18
[2026-06-05 07:41:18,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:41:18,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:41:18,294.294 INFO    ] No existing commands found in stream
[2026-06-05 07:41:23,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:41:23,312.312 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 07:41:26,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:41:26,219.219 INFO    ] Checking for system updates...
[2026-06-05 07:41:26,260.260 INFO    ] 200
[2026-06-05 07:41:26,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:26,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:41:26,331.331 INFO    ] No update needed
[2026-06-05 07:41:26,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 07:41:26,374.374 INFO    ] 200
[2026-06-05 07:41:26,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:26,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:41:26,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:41:26,470.470 INFO    ] No camera update needed
[2026-06-05 07:41:26,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:41:26,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:41:26,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:41:26,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:41:28,532.532 INFO    ] ================================================
[2026-06-05 07:41:28,548.548 INFO    ] Launching Daemon at Fri Jun  5 07:41:28 IST 2026
[2026-06-05 07:41:28,559.559 INFO    ] ================================================
[2026-06-05 07:41:29,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:41:29
[2026-06-05 07:41:29,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:41:29,985.985 INFO    ] Initializing speech engine...
[2026-06-05 07:41:29,995.995 INFO    ] 2026-06-05 07:41:29
[2026-06-05 07:41:30,241.241 INFO    ] 2026-06-05 07:41:30
[2026-06-05 07:41:30,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:41:30,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:41:30,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:41:30,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:41:30,612.612 INFO    ] time= 05/06/2026 07:41:30
[2026-06-05 07:41:30,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:41:30,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:41:30,790.790 INFO    ] No existing commands found in stream
[2026-06-05 07:41:35,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:41:35,821.821 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-05 07:41:39,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:41:39,297.297 INFO    ] Checking for system updates...
[2026-06-05 07:41:39,335.335 INFO    ] 200
[2026-06-05 07:41:39,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:39,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:41:39,402.402 INFO    ] No update needed
[2026-06-05 07:41:39,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 07:41:39,439.439 INFO    ] 200
[2026-06-05 07:41:39,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:39,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:41:39,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:41:39,528.528 INFO    ] No camera update needed
[2026-06-05 07:41:39,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:41:39,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:41:39,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:41:39,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:41:41,587.587 INFO    ] ================================================
[2026-06-05 07:41:41,603.603 INFO    ] Launching Daemon at Fri Jun  5 07:41:41 IST 2026
[2026-06-05 07:41:41,614.614 INFO    ] ================================================
[2026-06-05 07:41:42,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:41:42
[2026-06-05 07:41:42,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:41:43,262.262 INFO    ] Initializing speech engine...
[2026-06-05 07:41:43,270.270 INFO    ] 2026-06-05 07:41:43
[2026-06-05 07:41:43,542.542 INFO    ] 2026-06-05 07:41:43
[2026-06-05 07:41:43,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:41:43,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:41:43,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:41:44,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:41:44,012.012 INFO    ] time= 05/06/2026 07:41:44
[2026-06-05 07:41:44,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:41:44,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:41:44,165.165 INFO    ] No existing commands found in stream
[2026-06-05 07:41:49,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:41:49,178.178 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 07:41:52,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:41:52,493.493 INFO    ] Checking for system updates...
[2026-06-05 07:41:52,531.531 INFO    ] 200
[2026-06-05 07:41:52,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:52,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:41:52,600.600 INFO    ] No update needed
[2026-06-05 07:41:52,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 07:41:52,639.639 INFO    ] 200
[2026-06-05 07:41:52,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:41:52,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:41:52,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:41:52,734.734 INFO    ] No camera update needed
[2026-06-05 07:41:52,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:41:52,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:41:52,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:41:52,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:41:54,795.795 INFO    ] ================================================
[2026-06-05 07:41:54,811.811 INFO    ] Launching Daemon at Fri Jun  5 07:41:54 IST 2026
[2026-06-05 07:41:54,822.822 INFO    ] ================================================
[2026-06-05 07:41:55,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:41:55
[2026-06-05 07:41:55,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:41:56,225.225 INFO    ] Initializing speech engine...
[2026-06-05 07:41:56,233.233 INFO    ] 2026-06-05 07:41:56
[2026-06-05 07:41:56,532.532 INFO    ] 2026-06-05 07:41:56
[2026-06-05 07:41:56,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:41:56,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:41:56,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:41:56,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:41:56,921.921 INFO    ] time= 05/06/2026 07:41:56
[2026-06-05 07:41:56,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:41:56,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:41:57,017.017 INFO    ] No existing commands found in stream
[2026-06-05 07:42:02,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:42:02,031.031 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 07:42:04,682.682 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:42:04,684.684 INFO    ] Checking for system updates...
[2026-06-05 07:42:04,720.720 INFO    ] 200
[2026-06-05 07:42:04,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:04,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:42:04,787.787 INFO    ] No update needed
[2026-06-05 07:42:04,789.789 INFO    ] Checking for camera pi updates...
[2026-06-05 07:42:04,824.824 INFO    ] 200
[2026-06-05 07:42:04,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:04,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:42:05,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:42:05,005.005 INFO    ] No camera update needed
[2026-06-05 07:42:05,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:42:05,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:42:05,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:42:05,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:42:07,063.063 INFO    ] ================================================
[2026-06-05 07:42:07,079.079 INFO    ] Launching Daemon at Fri Jun  5 07:42:07 IST 2026
[2026-06-05 07:42:07,091.091 INFO    ] ================================================
[2026-06-05 07:42:08,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:42:07
[2026-06-05 07:42:08,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:42:08,972.972 INFO    ] Initializing speech engine...
[2026-06-05 07:42:08,979.979 INFO    ] 2026-06-05 07:42:08
[2026-06-05 07:42:09,240.240 INFO    ] 2026-06-05 07:42:09
[2026-06-05 07:42:09,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:42:09,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:42:09,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:42:09,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:42:09,700.700 INFO    ] time= 05/06/2026 07:42:09
[2026-06-05 07:42:09,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:42:09,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:42:09,845.845 INFO    ] No existing commands found in stream
[2026-06-05 07:42:14,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:42:14,860.860 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 07:42:17,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:42:17,869.869 INFO    ] Checking for system updates...
[2026-06-05 07:42:17,906.906 INFO    ] 200
[2026-06-05 07:42:17,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:17,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:42:17,965.965 INFO    ] No update needed
[2026-06-05 07:42:17,967.967 INFO    ] Checking for camera pi updates...
[2026-06-05 07:42:18,002.002 INFO    ] 200
[2026-06-05 07:42:18,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:18,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:42:18,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:42:18,101.101 INFO    ] No camera update needed
[2026-06-05 07:42:18,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:42:18,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:42:18,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:42:18,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:42:20,158.158 INFO    ] ================================================
[2026-06-05 07:42:20,175.175 INFO    ] Launching Daemon at Fri Jun  5 07:42:20 IST 2026
[2026-06-05 07:42:20,186.186 INFO    ] ================================================
[2026-06-05 07:42:20,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:42:20
[2026-06-05 07:42:21,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:42:21,875.875 INFO    ] Initializing speech engine...
[2026-06-05 07:42:21,884.884 INFO    ] 2026-06-05 07:42:21
[2026-06-05 07:42:22,204.204 INFO    ] 2026-06-05 07:42:22
[2026-06-05 07:42:22,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:42:22,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:42:22,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:42:22,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:42:22,713.713 INFO    ] time= 05/06/2026 07:42:22
[2026-06-05 07:42:22,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:42:22,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:42:22,850.850 INFO    ] No existing commands found in stream
[2026-06-05 07:42:27,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:42:27,884.884 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 07:42:31,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:42:31,220.220 INFO    ] Checking for system updates...
[2026-06-05 07:42:31,259.259 INFO    ] 200
[2026-06-05 07:42:31,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:31,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:42:31,851.851 INFO    ] No update needed
[2026-06-05 07:42:31,854.854 INFO    ] Checking for camera pi updates...
[2026-06-05 07:42:31,897.897 INFO    ] 200
[2026-06-05 07:42:31,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:31,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:42:31,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:42:31,993.993 INFO    ] No camera update needed
[2026-06-05 07:42:31,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:42:32,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:42:32,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:42:32,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:42:34,065.065 INFO    ] ================================================
[2026-06-05 07:42:34,080.080 INFO    ] Launching Daemon at Fri Jun  5 07:42:34 IST 2026
[2026-06-05 07:42:34,098.098 INFO    ] ================================================
[2026-06-05 07:42:34,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:42:34
[2026-06-05 07:42:35,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:42:35,504.504 INFO    ] Initializing speech engine...
[2026-06-05 07:42:35,513.513 INFO    ] 2026-06-05 07:42:35
[2026-06-05 07:42:35,808.808 INFO    ] 2026-06-05 07:42:35
[2026-06-05 07:42:35,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:42:36,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:42:36,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:42:36,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:42:36,192.192 INFO    ] time= 05/06/2026 07:42:36
[2026-06-05 07:42:36,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:42:36,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:42:36,329.329 INFO    ] No existing commands found in stream
[2026-06-05 07:42:41,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:42:41,342.342 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 07:42:42,477.477 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:42:42,480.480 INFO    ] Checking for system updates...
[2026-06-05 07:42:42,520.520 INFO    ] 200
[2026-06-05 07:42:42,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:42,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:42:42,577.577 INFO    ] No update needed
[2026-06-05 07:42:42,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 07:42:42,618.618 INFO    ] 200
[2026-06-05 07:42:42,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:42,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:42:42,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:42:42,703.703 INFO    ] No camera update needed
[2026-06-05 07:42:42,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:42:42,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:42:42,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:42:42,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:42:44,760.760 INFO    ] ================================================
[2026-06-05 07:42:44,776.776 INFO    ] Launching Daemon at Fri Jun  5 07:42:44 IST 2026
[2026-06-05 07:42:44,786.786 INFO    ] ================================================
[2026-06-05 07:42:45,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:42:45
[2026-06-05 07:42:45,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:42:46,204.204 INFO    ] Initializing speech engine...
[2026-06-05 07:42:46,230.230 INFO    ] 2026-06-05 07:42:46
[2026-06-05 07:42:46,505.505 INFO    ] 2026-06-05 07:42:46
[2026-06-05 07:42:46,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:42:46,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:42:46,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:42:46,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:42:46,887.887 INFO    ] time= 05/06/2026 07:42:46
[2026-06-05 07:42:46,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:42:46,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:42:47,013.013 INFO    ] No existing commands found in stream
[2026-06-05 07:42:52,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:42:52,029.029 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 07:42:56,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:42:56,110.110 INFO    ] Checking for system updates...
[2026-06-05 07:42:56,147.147 INFO    ] 200
[2026-06-05 07:42:56,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:56,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:42:56,207.207 INFO    ] No update needed
[2026-06-05 07:42:56,210.210 INFO    ] Checking for camera pi updates...
[2026-06-05 07:42:56,245.245 INFO    ] 200
[2026-06-05 07:42:56,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:42:56,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:42:56,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:42:56,333.333 INFO    ] No camera update needed
[2026-06-05 07:42:56,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:42:56,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:42:56,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:42:56,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:42:58,395.395 INFO    ] ================================================
[2026-06-05 07:42:58,411.411 INFO    ] Launching Daemon at Fri Jun  5 07:42:58 IST 2026
[2026-06-05 07:42:58,422.422 INFO    ] ================================================
[2026-06-05 07:42:58,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:42:58
[2026-06-05 07:42:59,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:42:59,849.849 INFO    ] Initializing speech engine...
[2026-06-05 07:42:59,858.858 INFO    ] 2026-06-05 07:42:59
[2026-06-05 07:43:00,111.111 INFO    ] 2026-06-05 07:43:00
[2026-06-05 07:43:00,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:43:00,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:43:00,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:43:00,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:43:00,473.473 INFO    ] time= 05/06/2026 07:43:00
[2026-06-05 07:43:00,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:43:00,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:43:00,548.548 INFO    ] No existing commands found in stream
[2026-06-05 07:43:05,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:43:05,564.564 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 07:43:08,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:43:08,618.618 INFO    ] Checking for system updates...
[2026-06-05 07:43:08,654.654 INFO    ] 200
[2026-06-05 07:43:08,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:08,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:43:08,712.712 INFO    ] No update needed
[2026-06-05 07:43:08,715.715 INFO    ] Checking for camera pi updates...
[2026-06-05 07:43:08,749.749 INFO    ] 200
[2026-06-05 07:43:08,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:08,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:43:08,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:43:08,848.848 INFO    ] No camera update needed
[2026-06-05 07:43:08,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:43:08,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:43:08,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:43:08,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:43:10,906.906 INFO    ] ================================================
[2026-06-05 07:43:10,921.921 INFO    ] Launching Daemon at Fri Jun  5 07:43:10 IST 2026
[2026-06-05 07:43:10,932.932 INFO    ] ================================================
[2026-06-05 07:43:11,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:43:11
[2026-06-05 07:43:12,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:43:12,341.341 INFO    ] Initializing speech engine...
[2026-06-05 07:43:12,347.347 INFO    ] 2026-06-05 07:43:12
[2026-06-05 07:43:12,647.647 INFO    ] 2026-06-05 07:43:12
[2026-06-05 07:43:12,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:43:12,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:43:12,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:43:13,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:43:13,051.051 INFO    ] time= 05/06/2026 07:43:13
[2026-06-05 07:43:13,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:43:13,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:43:13,160.160 INFO    ] No existing commands found in stream
[2026-06-05 07:43:18,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:43:18,192.192 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 07:43:20,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:43:20,868.868 INFO    ] Checking for system updates...
[2026-06-05 07:43:20,905.905 INFO    ] 200
[2026-06-05 07:43:20,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:20,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:43:20,965.965 INFO    ] No update needed
[2026-06-05 07:43:20,968.968 INFO    ] Checking for camera pi updates...
[2026-06-05 07:43:21,004.004 INFO    ] 200
[2026-06-05 07:43:21,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:21,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:43:21,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:43:21,095.095 INFO    ] No camera update needed
[2026-06-05 07:43:21,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:43:21,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:43:21,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:43:21,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:43:23,150.150 INFO    ] ================================================
[2026-06-05 07:43:23,165.165 INFO    ] Launching Daemon at Fri Jun  5 07:43:23 IST 2026
[2026-06-05 07:43:23,176.176 INFO    ] ================================================
[2026-06-05 07:43:23,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:43:23
[2026-06-05 07:43:24,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:43:24,611.611 INFO    ] Initializing speech engine...
[2026-06-05 07:43:24,621.621 INFO    ] 2026-06-05 07:43:24
[2026-06-05 07:43:24,917.917 INFO    ] 2026-06-05 07:43:24
[2026-06-05 07:43:24,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:43:25,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:43:25,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:43:25,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:43:25,317.317 INFO    ] time= 05/06/2026 07:43:25
[2026-06-05 07:43:25,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:43:25,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:43:25,428.428 INFO    ] No existing commands found in stream
[2026-06-05 07:43:30,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:43:30,440.440 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 07:43:34,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:43:34,383.383 INFO    ] Checking for system updates...
[2026-06-05 07:43:34,418.418 INFO    ] 200
[2026-06-05 07:43:34,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:34,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:43:34,477.477 INFO    ] No update needed
[2026-06-05 07:43:34,479.479 INFO    ] Checking for camera pi updates...
[2026-06-05 07:43:34,513.513 INFO    ] 200
[2026-06-05 07:43:34,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:34,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:43:34,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:43:34,608.608 INFO    ] No camera update needed
[2026-06-05 07:43:34,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:43:34,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:43:34,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:43:34,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:43:36,664.664 INFO    ] ================================================
[2026-06-05 07:43:36,679.679 INFO    ] Launching Daemon at Fri Jun  5 07:43:36 IST 2026
[2026-06-05 07:43:36,690.690 INFO    ] ================================================
[2026-06-05 07:43:37,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:43:37
[2026-06-05 07:43:38,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:43:38,312.312 INFO    ] Initializing speech engine...
[2026-06-05 07:43:38,323.323 INFO    ] 2026-06-05 07:43:38
[2026-06-05 07:43:38,591.591 INFO    ] 2026-06-05 07:43:38
[2026-06-05 07:43:38,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:43:38,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:43:38,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:43:38,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:43:39,009.009 INFO    ] time= 05/06/2026 07:43:38
[2026-06-05 07:43:39,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:43:39,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:43:39,118.118 INFO    ] No existing commands found in stream
[2026-06-05 07:43:44,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:43:44,151.151 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 07:43:47,242.242 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:43:47,244.244 INFO    ] Checking for system updates...
[2026-06-05 07:43:47,281.281 INFO    ] 200
[2026-06-05 07:43:47,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:47,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:43:47,346.346 INFO    ] No update needed
[2026-06-05 07:43:47,348.348 INFO    ] Checking for camera pi updates...
[2026-06-05 07:43:47,382.382 INFO    ] 200
[2026-06-05 07:43:47,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:47,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:43:47,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:43:47,468.468 INFO    ] No camera update needed
[2026-06-05 07:43:47,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:43:47,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:43:47,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:43:47,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:43:49,531.531 INFO    ] ================================================
[2026-06-05 07:43:49,547.547 INFO    ] Launching Daemon at Fri Jun  5 07:43:49 IST 2026
[2026-06-05 07:43:49,558.558 INFO    ] ================================================
[2026-06-05 07:43:50,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:43:50
[2026-06-05 07:43:50,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:43:51,166.166 INFO    ] Initializing speech engine...
[2026-06-05 07:43:51,177.177 INFO    ] 2026-06-05 07:43:51
[2026-06-05 07:43:51,464.464 INFO    ] 2026-06-05 07:43:51
[2026-06-05 07:43:51,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:43:51,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:43:51,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:43:51,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:43:51,997.997 INFO    ] time= 05/06/2026 07:43:51
[2026-06-05 07:43:52,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:43:52,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:43:52,133.133 INFO    ] No existing commands found in stream
[2026-06-05 07:43:57,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:43:57,164.164 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 07:43:58,365.365 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:43:58,368.368 INFO    ] Checking for system updates...
[2026-06-05 07:43:58,406.406 INFO    ] 200
[2026-06-05 07:43:58,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:58,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:43:58,475.475 INFO    ] No update needed
[2026-06-05 07:43:58,478.478 INFO    ] Checking for camera pi updates...
[2026-06-05 07:43:58,516.516 INFO    ] 200
[2026-06-05 07:43:58,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:43:58,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:43:58,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:43:58,620.620 INFO    ] No camera update needed
[2026-06-05 07:43:58,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:43:58,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:43:58,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:43:58,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:44:00,680.680 INFO    ] ================================================
[2026-06-05 07:44:00,695.695 INFO    ] Launching Daemon at Fri Jun  5 07:44:00 IST 2026
[2026-06-05 07:44:00,709.709 INFO    ] ================================================
[2026-06-05 07:44:01,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:44:01
[2026-06-05 07:44:01,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:44:02,392.392 INFO    ] Initializing speech engine...
[2026-06-05 07:44:02,403.403 INFO    ] 2026-06-05 07:44:02
[2026-06-05 07:44:02,737.737 INFO    ] 2026-06-05 07:44:02
[2026-06-05 07:44:02,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:44:03,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:44:03,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:44:03,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:44:03,244.244 INFO    ] time= 05/06/2026 07:44:03
[2026-06-05 07:44:03,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:44:03,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:44:03,431.431 INFO    ] No existing commands found in stream
[2026-06-05 07:44:08,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:44:08,447.447 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 07:44:09,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:44:09,340.340 INFO    ] Checking for system updates...
[2026-06-05 07:44:09,378.378 INFO    ] 200
[2026-06-05 07:44:09,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:09,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:44:09,439.439 INFO    ] No update needed
[2026-06-05 07:44:09,441.441 INFO    ] Checking for camera pi updates...
[2026-06-05 07:44:09,475.475 INFO    ] 200
[2026-06-05 07:44:09,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:09,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:44:09,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:44:09,667.667 INFO    ] No camera update needed
[2026-06-05 07:44:09,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:44:09,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:44:09,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:44:09,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:44:11,723.723 INFO    ] ================================================
[2026-06-05 07:44:11,739.739 INFO    ] Launching Daemon at Fri Jun  5 07:44:11 IST 2026
[2026-06-05 07:44:11,750.750 INFO    ] ================================================
[2026-06-05 07:44:12,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:44:12
[2026-06-05 07:44:12,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:44:13,171.171 INFO    ] Initializing speech engine...
[2026-06-05 07:44:13,179.179 INFO    ] 2026-06-05 07:44:13
[2026-06-05 07:44:13,434.434 INFO    ] 2026-06-05 07:44:13
[2026-06-05 07:44:13,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:44:13,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:44:13,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:44:13,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:44:13,897.897 INFO    ] time= 05/06/2026 07:44:13
[2026-06-05 07:44:13,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:44:13,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:44:14,111.111 INFO    ] No existing commands found in stream
[2026-06-05 07:44:19,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:44:19,144.144 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 07:44:19,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:44:19,717.717 INFO    ] Checking for system updates...
[2026-06-05 07:44:19,753.753 INFO    ] 200
[2026-06-05 07:44:19,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:19,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:44:19,813.813 INFO    ] No update needed
[2026-06-05 07:44:19,815.815 INFO    ] Checking for camera pi updates...
[2026-06-05 07:44:19,849.849 INFO    ] 200
[2026-06-05 07:44:19,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:19,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:44:19,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:44:19,939.939 INFO    ] No camera update needed
[2026-06-05 07:44:19,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:44:19,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:44:19,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:44:19,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:44:22,996.996 INFO    ] ================================================
[2026-06-05 07:44:22,011.011 INFO    ] Launching Daemon at Fri Jun  5 07:44:22 IST 2026
[2026-06-05 07:44:22,022.022 INFO    ] ================================================
[2026-06-05 07:44:22,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:44:22
[2026-06-05 07:44:23,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:44:23,447.447 INFO    ] Initializing speech engine...
[2026-06-05 07:44:23,455.455 INFO    ] 2026-06-05 07:44:23
[2026-06-05 07:44:23,723.723 INFO    ] 2026-06-05 07:44:23
[2026-06-05 07:44:23,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:44:23,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:44:23,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:44:24,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:44:24,173.173 INFO    ] time= 05/06/2026 07:44:24
[2026-06-05 07:44:24,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:44:24,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:44:24,314.314 INFO    ] No existing commands found in stream
[2026-06-05 07:44:29,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:44:29,329.329 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 07:44:31,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:44:31,706.706 INFO    ] Checking for system updates...
[2026-06-05 07:44:31,746.746 INFO    ] 200
[2026-06-05 07:44:31,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:31,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:44:31,812.812 INFO    ] No update needed
[2026-06-05 07:44:31,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 07:44:31,859.859 INFO    ] 200
[2026-06-05 07:44:31,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:31,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:44:31,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:44:31,945.945 INFO    ] No camera update needed
[2026-06-05 07:44:31,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:44:31,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:44:31,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:44:31,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:44:34,009.009 INFO    ] ================================================
[2026-06-05 07:44:34,024.024 INFO    ] Launching Daemon at Fri Jun  5 07:44:34 IST 2026
[2026-06-05 07:44:34,035.035 INFO    ] ================================================
[2026-06-05 07:44:34,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:44:34
[2026-06-05 07:44:35,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:44:35,503.503 INFO    ] Initializing speech engine...
[2026-06-05 07:44:35,512.512 INFO    ] 2026-06-05 07:44:35
[2026-06-05 07:44:35,764.764 INFO    ] 2026-06-05 07:44:35
[2026-06-05 07:44:35,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:44:36,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:44:36,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:44:36,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:44:36,267.267 INFO    ] time= 05/06/2026 07:44:36
[2026-06-05 07:44:36,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:44:36,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:44:36,454.454 INFO    ] No existing commands found in stream
[2026-06-05 07:44:41,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:44:41,488.488 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 07:44:43,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:44:43,946.946 INFO    ] Checking for system updates...
[2026-06-05 07:44:43,983.983 INFO    ] 200
[2026-06-05 07:44:43,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:44,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:44:44,042.042 INFO    ] No update needed
[2026-06-05 07:44:44,045.045 INFO    ] Checking for camera pi updates...
[2026-06-05 07:44:44,078.078 INFO    ] 200
[2026-06-05 07:44:44,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:44,122.122 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:44:44,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:44:44,170.170 INFO    ] No camera update needed
[2026-06-05 07:44:44,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:44:44,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:44:44,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:44:44,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:44:46,225.225 INFO    ] ================================================
[2026-06-05 07:44:46,240.240 INFO    ] Launching Daemon at Fri Jun  5 07:44:46 IST 2026
[2026-06-05 07:44:46,251.251 INFO    ] ================================================
[2026-06-05 07:44:46,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:44:46
[2026-06-05 07:44:47,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:44:47,670.670 INFO    ] Initializing speech engine...
[2026-06-05 07:44:47,678.678 INFO    ] 2026-06-05 07:44:47
[2026-06-05 07:44:47,922.922 INFO    ] 2026-06-05 07:44:47
[2026-06-05 07:44:47,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:44:48,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:44:48,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:44:48,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:44:48,357.357 INFO    ] time= 05/06/2026 07:44:48
[2026-06-05 07:44:48,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:44:48,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:44:48,511.511 INFO    ] No existing commands found in stream
[2026-06-05 07:44:53,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:44:53,530.530 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 07:44:57,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:44:57,509.509 INFO    ] Checking for system updates...
[2026-06-05 07:44:57,544.544 INFO    ] 200
[2026-06-05 07:44:57,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:57,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:44:57,602.602 INFO    ] No update needed
[2026-06-05 07:44:57,605.605 INFO    ] Checking for camera pi updates...
[2026-06-05 07:44:57,639.639 INFO    ] 200
[2026-06-05 07:44:57,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:44:57,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:44:57,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:44:57,738.738 INFO    ] No camera update needed
[2026-06-05 07:44:57,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:44:57,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:44:57,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:44:57,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:44:59,794.794 INFO    ] ================================================
[2026-06-05 07:44:59,810.810 INFO    ] Launching Daemon at Fri Jun  5 07:44:59 IST 2026
[2026-06-05 07:44:59,820.820 INFO    ] ================================================
[2026-06-05 07:45:00,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:45:00
[2026-06-05 07:45:00,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:45:01,228.228 INFO    ] Initializing speech engine...
[2026-06-05 07:45:01,243.243 INFO    ] 2026-06-05 07:45:01
[2026-06-05 07:45:01,510.510 INFO    ] 2026-06-05 07:45:01
[2026-06-05 07:45:01,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:45:01,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:45:01,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:45:01,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:45:01,970.970 INFO    ] time= 05/06/2026 07:45:01
[2026-06-05 07:45:01,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:45:02,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:45:02,064.064 INFO    ] No existing commands found in stream
[2026-06-05 07:45:07,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:45:07,079.079 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 07:45:08,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:45:08,036.036 INFO    ] Checking for system updates...
[2026-06-05 07:45:08,075.075 INFO    ] 200
[2026-06-05 07:45:08,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:08,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:45:08,136.136 INFO    ] No update needed
[2026-06-05 07:45:08,139.139 INFO    ] Checking for camera pi updates...
[2026-06-05 07:45:08,177.177 INFO    ] 200
[2026-06-05 07:45:08,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:08,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:45:08,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:45:08,273.273 INFO    ] No camera update needed
[2026-06-05 07:45:08,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:45:08,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:45:08,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:45:08,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:45:10,335.335 INFO    ] ================================================
[2026-06-05 07:45:10,350.350 INFO    ] Launching Daemon at Fri Jun  5 07:45:10 IST 2026
[2026-06-05 07:45:10,361.361 INFO    ] ================================================
[2026-06-05 07:45:11,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:45:11
[2026-06-05 07:45:11,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:45:11,981.981 INFO    ] Initializing speech engine...
[2026-06-05 07:45:11,988.988 INFO    ] 2026-06-05 07:45:11
[2026-06-05 07:45:12,261.261 INFO    ] 2026-06-05 07:45:12
[2026-06-05 07:45:12,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:45:12,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:45:12,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:45:12,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:45:12,812.812 INFO    ] time= 05/06/2026 07:45:12
[2026-06-05 07:45:12,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:45:12,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:45:12,958.958 INFO    ] No existing commands found in stream
[2026-06-05 07:45:17,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:45:17,983.983 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 07:45:20,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:45:20,249.249 INFO    ] Checking for system updates...
[2026-06-05 07:45:20,287.287 INFO    ] 200
[2026-06-05 07:45:20,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:20,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:45:20,354.354 INFO    ] No update needed
[2026-06-05 07:45:20,357.357 INFO    ] Checking for camera pi updates...
[2026-06-05 07:45:20,392.392 INFO    ] 200
[2026-06-05 07:45:20,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:20,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:45:20,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:45:20,489.489 INFO    ] No camera update needed
[2026-06-05 07:45:20,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:45:20,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:45:20,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:45:20,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:45:22,547.547 INFO    ] ================================================
[2026-06-05 07:45:22,562.562 INFO    ] Launching Daemon at Fri Jun  5 07:45:22 IST 2026
[2026-06-05 07:45:22,573.573 INFO    ] ================================================
[2026-06-05 07:45:23,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:45:23
[2026-06-05 07:45:23,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:45:24,012.012 INFO    ] Initializing speech engine...
[2026-06-05 07:45:24,039.039 INFO    ] 2026-06-05 07:45:24
[2026-06-05 07:45:24,292.292 INFO    ] 2026-06-05 07:45:24
[2026-06-05 07:45:24,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:45:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:45:24,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:45:24,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:45:24,668.668 INFO    ] time= 05/06/2026 07:45:24
[2026-06-05 07:45:24,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:45:24,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:45:24,855.855 INFO    ] No existing commands found in stream
[2026-06-05 07:45:29,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:45:29,882.882 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 07:45:33,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:45:33,008.008 INFO    ] Checking for system updates...
[2026-06-05 07:45:33,046.046 INFO    ] 200
[2026-06-05 07:45:33,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:33,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:45:33,115.115 INFO    ] No update needed
[2026-06-05 07:45:33,118.118 INFO    ] Checking for camera pi updates...
[2026-06-05 07:45:33,155.155 INFO    ] 200
[2026-06-05 07:45:33,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:33,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:45:33,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:45:33,236.236 INFO    ] No camera update needed
[2026-06-05 07:45:33,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:45:33,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:45:33,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:45:33,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:45:35,300.300 INFO    ] ================================================
[2026-06-05 07:45:35,315.315 INFO    ] Launching Daemon at Fri Jun  5 07:45:35 IST 2026
[2026-06-05 07:45:35,326.326 INFO    ] ================================================
[2026-06-05 07:45:35,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:45:35
[2026-06-05 07:45:36,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:45:36,936.936 INFO    ] Initializing speech engine...
[2026-06-05 07:45:36,947.947 INFO    ] 2026-06-05 07:45:36
[2026-06-05 07:45:37,217.217 INFO    ] 2026-06-05 07:45:37
[2026-06-05 07:45:37,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:45:37,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:45:37,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:45:37,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:45:37,708.708 INFO    ] time= 05/06/2026 07:45:37
[2026-06-05 07:45:37,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:45:37,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:45:37,866.866 INFO    ] No existing commands found in stream
[2026-06-05 07:45:42,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:45:42,880.880 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 07:45:44,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:45:44,521.521 INFO    ] Checking for system updates...
[2026-06-05 07:45:44,573.573 INFO    ] 200
[2026-06-05 07:45:44,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:44,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:45:44,637.637 INFO    ] No update needed
[2026-06-05 07:45:44,639.639 INFO    ] Checking for camera pi updates...
[2026-06-05 07:45:44,674.674 INFO    ] 200
[2026-06-05 07:45:44,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:44,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:45:44,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:45:44,764.764 INFO    ] No camera update needed
[2026-06-05 07:45:44,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:45:44,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:45:44,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:45:44,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:45:46,820.820 INFO    ] ================================================
[2026-06-05 07:45:46,835.835 INFO    ] Launching Daemon at Fri Jun  5 07:45:46 IST 2026
[2026-06-05 07:45:46,845.845 INFO    ] ================================================
[2026-06-05 07:45:47,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:45:47
[2026-06-05 07:45:48,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:45:48,303.303 INFO    ] Initializing speech engine...
[2026-06-05 07:45:48,311.311 INFO    ] 2026-06-05 07:45:48
[2026-06-05 07:45:48,560.560 INFO    ] 2026-06-05 07:45:48
[2026-06-05 07:45:48,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:45:48,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:45:48,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:45:48,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:45:49,017.017 INFO    ] time= 05/06/2026 07:45:48
[2026-06-05 07:45:49,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:45:49,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:45:49,251.251 INFO    ] No existing commands found in stream
[2026-06-05 07:45:54,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:45:54,279.279 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 07:45:54,993.993 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:45:54,995.995 INFO    ] Checking for system updates...
[2026-06-05 07:45:55,031.031 INFO    ] 200
[2026-06-05 07:45:55,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:55,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:45:55,096.096 INFO    ] No update needed
[2026-06-05 07:45:55,098.098 INFO    ] Checking for camera pi updates...
[2026-06-05 07:45:55,135.135 INFO    ] 200
[2026-06-05 07:45:55,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:45:55,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:45:55,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:45:55,227.227 INFO    ] No camera update needed
[2026-06-05 07:45:55,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:45:55,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:45:55,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:45:55,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:45:57,283.283 INFO    ] ================================================
[2026-06-05 07:45:57,298.298 INFO    ] Launching Daemon at Fri Jun  5 07:45:57 IST 2026
[2026-06-05 07:45:57,308.308 INFO    ] ================================================
[2026-06-05 07:45:57,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:45:57
[2026-06-05 07:45:58,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:45:58,751.751 INFO    ] Initializing speech engine...
[2026-06-05 07:45:58,759.759 INFO    ] 2026-06-05 07:45:58
[2026-06-05 07:45:59,027.027 INFO    ] 2026-06-05 07:45:59
[2026-06-05 07:45:59,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:45:59,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:45:59,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:45:59,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:45:59,560.560 INFO    ] time= 05/06/2026 07:45:59
[2026-06-05 07:45:59,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:45:59,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:45:59,689.689 INFO    ] No existing commands found in stream
[2026-06-05 07:46:04,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:46:04,724.724 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 07:46:08,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:46:08,412.412 INFO    ] Checking for system updates...
[2026-06-05 07:46:08,449.449 INFO    ] 200
[2026-06-05 07:46:08,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:08,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:46:08,508.508 INFO    ] No update needed
[2026-06-05 07:46:08,510.510 INFO    ] Checking for camera pi updates...
[2026-06-05 07:46:08,544.544 INFO    ] 200
[2026-06-05 07:46:08,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:08,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:46:08,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:46:08,634.634 INFO    ] No camera update needed
[2026-06-05 07:46:08,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:46:08,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:46:08,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:46:08,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:46:10,693.693 INFO    ] ================================================
[2026-06-05 07:46:10,709.709 INFO    ] Launching Daemon at Fri Jun  5 07:46:10 IST 2026
[2026-06-05 07:46:10,720.720 INFO    ] ================================================
[2026-06-05 07:46:11,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:46:11
[2026-06-05 07:46:12,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:46:12,302.302 INFO    ] Initializing speech engine...
[2026-06-05 07:46:12,313.313 INFO    ] 2026-06-05 07:46:12
[2026-06-05 07:46:12,573.573 INFO    ] 2026-06-05 07:46:12
[2026-06-05 07:46:12,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:46:12,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:46:12,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:46:12,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:46:13,036.036 INFO    ] time= 05/06/2026 07:46:12
[2026-06-05 07:46:13,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:46:13,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:46:13,181.181 INFO    ] No existing commands found in stream
[2026-06-05 07:46:18,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:46:18,196.196 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 07:46:19,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:46:19,928.928 INFO    ] Checking for system updates...
[2026-06-05 07:46:19,964.964 INFO    ] 200
[2026-06-05 07:46:19,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:20,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:46:20,022.022 INFO    ] No update needed
[2026-06-05 07:46:20,025.025 INFO    ] Checking for camera pi updates...
[2026-06-05 07:46:20,059.059 INFO    ] 200
[2026-06-05 07:46:20,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:20,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:46:20,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:46:20,260.260 INFO    ] No camera update needed
[2026-06-05 07:46:20,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:46:20,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:46:20,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:46:20,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:46:22,317.317 INFO    ] ================================================
[2026-06-05 07:46:22,333.333 INFO    ] Launching Daemon at Fri Jun  5 07:46:22 IST 2026
[2026-06-05 07:46:22,344.344 INFO    ] ================================================
[2026-06-05 07:46:23,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:46:23
[2026-06-05 07:46:23,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:46:23,924.924 INFO    ] Initializing speech engine...
[2026-06-05 07:46:23,933.933 INFO    ] 2026-06-05 07:46:23
[2026-06-05 07:46:24,179.179 INFO    ] 2026-06-05 07:46:24
[2026-06-05 07:46:24,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:46:24,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:46:24,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:46:24,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:46:24,547.547 INFO    ] time= 05/06/2026 07:46:24
[2026-06-05 07:46:24,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:46:24,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:46:24,720.720 INFO    ] No existing commands found in stream
[2026-06-05 07:46:29,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:46:29,748.748 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 07:46:33,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:46:33,073.073 INFO    ] Checking for system updates...
[2026-06-05 07:46:33,110.110 INFO    ] 200
[2026-06-05 07:46:33,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:33,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:46:33,167.167 INFO    ] No update needed
[2026-06-05 07:46:33,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 07:46:33,207.207 INFO    ] 200
[2026-06-05 07:46:33,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:33,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:46:33,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:46:33,281.281 INFO    ] No camera update needed
[2026-06-05 07:46:33,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:46:33,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:46:33,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:46:33,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:46:35,337.337 INFO    ] ================================================
[2026-06-05 07:46:35,352.352 INFO    ] Launching Daemon at Fri Jun  5 07:46:35 IST 2026
[2026-06-05 07:46:35,363.363 INFO    ] ================================================
[2026-06-05 07:46:35,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:46:35
[2026-06-05 07:46:36,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:46:36,807.807 INFO    ] Initializing speech engine...
[2026-06-05 07:46:36,828.828 INFO    ] 2026-06-05 07:46:36
[2026-06-05 07:46:37,104.104 INFO    ] 2026-06-05 07:46:37
[2026-06-05 07:46:37,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:46:37,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:46:37,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:46:37,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:46:37,523.523 INFO    ] time= 05/06/2026 07:46:37
[2026-06-05 07:46:37,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:46:37,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:46:37,689.689 INFO    ] No existing commands found in stream
[2026-06-05 07:46:42,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:46:42,722.722 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 07:46:46,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:46:46,499.499 INFO    ] Checking for system updates...
[2026-06-05 07:46:46,537.537 INFO    ] 200
[2026-06-05 07:46:46,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:46,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:46:46,594.594 INFO    ] No update needed
[2026-06-05 07:46:46,597.597 INFO    ] Checking for camera pi updates...
[2026-06-05 07:46:46,631.631 INFO    ] 200
[2026-06-05 07:46:46,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:46,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:46:46,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:46:46,723.723 INFO    ] No camera update needed
[2026-06-05 07:46:46,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:46:46,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:46:46,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:46:46,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:46:48,780.780 INFO    ] ================================================
[2026-06-05 07:46:48,796.796 INFO    ] Launching Daemon at Fri Jun  5 07:46:48 IST 2026
[2026-06-05 07:46:48,807.807 INFO    ] ================================================
[2026-06-05 07:46:49,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:46:49
[2026-06-05 07:46:50,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:46:50,312.312 INFO    ] Initializing speech engine...
[2026-06-05 07:46:50,323.323 INFO    ] 2026-06-05 07:46:50
[2026-06-05 07:46:50,583.583 INFO    ] 2026-06-05 07:46:50
[2026-06-05 07:46:50,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:46:50,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:46:50,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:46:50,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:46:51,016.016 INFO    ] time= 05/06/2026 07:46:51
[2026-06-05 07:46:51,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:46:51,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:46:51,187.187 INFO    ] No existing commands found in stream
[2026-06-05 07:46:56,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:46:56,201.201 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 07:46:59,788.788 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:46:59,791.791 INFO    ] Checking for system updates...
[2026-06-05 07:46:59,827.827 INFO    ] 200
[2026-06-05 07:46:59,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:59,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:46:59,887.887 INFO    ] No update needed
[2026-06-05 07:46:59,890.890 INFO    ] Checking for camera pi updates...
[2026-06-05 07:46:59,924.924 INFO    ] 200
[2026-06-05 07:46:59,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:46:59,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:47:00,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:47:00,017.017 INFO    ] No camera update needed
[2026-06-05 07:47:00,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:47:00,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:47:00,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:47:00,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:47:02,076.076 INFO    ] ================================================
[2026-06-05 07:47:02,098.098 INFO    ] Launching Daemon at Fri Jun  5 07:47:02 IST 2026
[2026-06-05 07:47:02,110.110 INFO    ] ================================================
[2026-06-05 07:47:02,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:47:02
[2026-06-05 07:47:03,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:47:03,624.624 INFO    ] Initializing speech engine...
[2026-06-05 07:47:03,634.634 INFO    ] 2026-06-05 07:47:03
[2026-06-05 07:47:03,895.895 INFO    ] 2026-06-05 07:47:03
[2026-06-05 07:47:03,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:47:04,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:47:04,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:47:04,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:47:04,359.359 INFO    ] time= 05/06/2026 07:47:04
[2026-06-05 07:47:04,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:47:04,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:47:04,575.575 INFO    ] No existing commands found in stream
[2026-06-05 07:47:09,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:47:09,608.608 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 07:47:10,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:47:10,632.632 INFO    ] Checking for system updates...
[2026-06-05 07:47:10,671.671 INFO    ] 200
[2026-06-05 07:47:10,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:10,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:47:10,735.735 INFO    ] No update needed
[2026-06-05 07:47:10,738.738 INFO    ] Checking for camera pi updates...
[2026-06-05 07:47:10,772.772 INFO    ] 200
[2026-06-05 07:47:10,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:10,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:47:10,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:47:10,864.864 INFO    ] No camera update needed
[2026-06-05 07:47:10,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:47:10,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:47:10,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:47:10,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:47:12,921.921 INFO    ] ================================================
[2026-06-05 07:47:12,937.937 INFO    ] Launching Daemon at Fri Jun  5 07:47:12 IST 2026
[2026-06-05 07:47:12,948.948 INFO    ] ================================================
[2026-06-05 07:47:13,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:47:13
[2026-06-05 07:47:14,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:47:14,376.376 INFO    ] Initializing speech engine...
[2026-06-05 07:47:14,387.387 INFO    ] 2026-06-05 07:47:14
[2026-06-05 07:47:14,633.633 INFO    ] 2026-06-05 07:47:14
[2026-06-05 07:47:14,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:47:14,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:47:14,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:47:15,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:47:15,110.110 INFO    ] time= 05/06/2026 07:47:15
[2026-06-05 07:47:15,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:47:15,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:47:15,253.253 INFO    ] No existing commands found in stream
[2026-06-05 07:47:20,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:47:20,268.268 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 07:47:20,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:47:20,949.949 INFO    ] Checking for system updates...
[2026-06-05 07:47:20,985.985 INFO    ] 200
[2026-06-05 07:47:20,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:21,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:47:21,043.043 INFO    ] No update needed
[2026-06-05 07:47:21,045.045 INFO    ] Checking for camera pi updates...
[2026-06-05 07:47:21,083.083 INFO    ] 200
[2026-06-05 07:47:21,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:21,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:47:21,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:47:21,175.175 INFO    ] No camera update needed
[2026-06-05 07:47:21,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:47:21,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:47:21,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:47:21,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:47:23,230.230 INFO    ] ================================================
[2026-06-05 07:47:23,246.246 INFO    ] Launching Daemon at Fri Jun  5 07:47:23 IST 2026
[2026-06-05 07:47:23,258.258 INFO    ] ================================================
[2026-06-05 07:47:23,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:47:23
[2026-06-05 07:47:24,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:47:24,677.677 INFO    ] Initializing speech engine...
[2026-06-05 07:47:24,681.681 INFO    ] 2026-06-05 07:47:24
[2026-06-05 07:47:24,983.983 INFO    ] 2026-06-05 07:47:24
[2026-06-05 07:47:25,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:47:25,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:47:25,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:47:25,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:47:25,335.335 INFO    ] time= 05/06/2026 07:47:25
[2026-06-05 07:47:25,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:47:25,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:47:25,412.412 INFO    ] No existing commands found in stream
[2026-06-05 07:47:30,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:47:30,426.426 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 07:47:33,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:47:33,050.050 INFO    ] Checking for system updates...
[2026-06-05 07:47:33,086.086 INFO    ] 200
[2026-06-05 07:47:33,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:33,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:47:33,143.143 INFO    ] No update needed
[2026-06-05 07:47:33,146.146 INFO    ] Checking for camera pi updates...
[2026-06-05 07:47:33,180.180 INFO    ] 200
[2026-06-05 07:47:33,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:33,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:47:33,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:47:33,260.260 INFO    ] No camera update needed
[2026-06-05 07:47:33,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:47:33,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:47:33,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:47:33,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:47:35,316.316 INFO    ] ================================================
[2026-06-05 07:47:35,332.332 INFO    ] Launching Daemon at Fri Jun  5 07:47:35 IST 2026
[2026-06-05 07:47:35,343.343 INFO    ] ================================================
[2026-06-05 07:47:35,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:47:35
[2026-06-05 07:47:36,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:47:36,752.752 INFO    ] Initializing speech engine...
[2026-06-05 07:47:36,759.759 INFO    ] 2026-06-05 07:47:36
[2026-06-05 07:47:37,050.050 INFO    ] 2026-06-05 07:47:37
[2026-06-05 07:47:37,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:47:37,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:47:37,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:47:37,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:47:37,427.427 INFO    ] time= 05/06/2026 07:47:37
[2026-06-05 07:47:37,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:47:37,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:47:37,551.551 INFO    ] No existing commands found in stream
[2026-06-05 07:47:42,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:47:42,566.566 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 07:47:45,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:47:45,386.386 INFO    ] Checking for system updates...
[2026-06-05 07:47:45,425.425 INFO    ] 200
[2026-06-05 07:47:45,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:45,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:47:45,489.489 INFO    ] No update needed
[2026-06-05 07:47:45,491.491 INFO    ] Checking for camera pi updates...
[2026-06-05 07:47:45,528.528 INFO    ] 200
[2026-06-05 07:47:45,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:45,575.575 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:47:45,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:47:45,620.620 INFO    ] No camera update needed
[2026-06-05 07:47:45,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:47:45,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:47:45,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:47:45,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:47:47,680.680 INFO    ] ================================================
[2026-06-05 07:47:47,695.695 INFO    ] Launching Daemon at Fri Jun  5 07:47:47 IST 2026
[2026-06-05 07:47:47,707.707 INFO    ] ================================================
[2026-06-05 07:47:48,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:47:48
[2026-06-05 07:47:49,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:47:49,318.318 INFO    ] Initializing speech engine...
[2026-06-05 07:47:49,326.326 INFO    ] 2026-06-05 07:47:49
[2026-06-05 07:47:49,626.626 INFO    ] 2026-06-05 07:47:49
[2026-06-05 07:47:49,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:47:49,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:47:49,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:47:50,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:47:50,072.072 INFO    ] time= 05/06/2026 07:47:50
[2026-06-05 07:47:50,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:47:50,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:47:50,275.275 INFO    ] No existing commands found in stream
[2026-06-05 07:47:55,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:47:55,303.303 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 07:47:59,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:47:59,180.180 INFO    ] Checking for system updates...
[2026-06-05 07:47:59,216.216 INFO    ] 200
[2026-06-05 07:47:59,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:59,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:47:59,273.273 INFO    ] No update needed
[2026-06-05 07:47:59,276.276 INFO    ] Checking for camera pi updates...
[2026-06-05 07:47:59,309.309 INFO    ] 200
[2026-06-05 07:47:59,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:47:59,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:47:59,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:47:59,405.405 INFO    ] No camera update needed
[2026-06-05 07:47:59,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:47:59,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:47:59,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:47:59,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:48:01,473.473 INFO    ] ================================================
[2026-06-05 07:48:01,497.497 INFO    ] Launching Daemon at Fri Jun  5 07:48:01 IST 2026
[2026-06-05 07:48:01,514.514 INFO    ] ================================================
[2026-06-05 07:48:02,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:48:02
[2026-06-05 07:48:02,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:48:03,065.065 INFO    ] Initializing speech engine...
[2026-06-05 07:48:03,071.071 INFO    ] 2026-06-05 07:48:03
[2026-06-05 07:48:03,358.358 INFO    ] 2026-06-05 07:48:03
[2026-06-05 07:48:03,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:48:03,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:48:03,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:48:03,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:48:03,709.709 INFO    ] time= 05/06/2026 07:48:03
[2026-06-05 07:48:03,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:48:03,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:48:03,796.796 INFO    ] No existing commands found in stream
[2026-06-05 07:48:08,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:48:08,810.810 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 07:48:10,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:48:10,813.813 INFO    ] Checking for system updates...
[2026-06-05 07:48:10,848.848 INFO    ] 200
[2026-06-05 07:48:10,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:10,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:48:10,906.906 INFO    ] No update needed
[2026-06-05 07:48:10,908.908 INFO    ] Checking for camera pi updates...
[2026-06-05 07:48:10,947.947 INFO    ] 200
[2026-06-05 07:48:10,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:10,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:48:11,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:48:11,037.037 INFO    ] No camera update needed
[2026-06-05 07:48:11,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:48:11,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:48:11,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:48:11,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:48:13,093.093 INFO    ] ================================================
[2026-06-05 07:48:13,108.108 INFO    ] Launching Daemon at Fri Jun  5 07:48:13 IST 2026
[2026-06-05 07:48:13,119.119 INFO    ] ================================================
[2026-06-05 07:48:13,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:48:13
[2026-06-05 07:48:14,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:48:14,778.778 INFO    ] Initializing speech engine...
[2026-06-05 07:48:14,784.784 INFO    ] 2026-06-05 07:48:14
[2026-06-05 07:48:15,082.082 INFO    ] 2026-06-05 07:48:15
[2026-06-05 07:48:15,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:48:15,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:48:15,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:48:15,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:48:15,587.587 INFO    ] time= 05/06/2026 07:48:15
[2026-06-05 07:48:15,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:48:15,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:48:15,740.740 INFO    ] No existing commands found in stream
[2026-06-05 07:48:20,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:48:20,758.758 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 07:48:21,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:48:21,474.474 INFO    ] Checking for system updates...
[2026-06-05 07:48:21,514.514 INFO    ] 200
[2026-06-05 07:48:21,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:21,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:48:21,579.579 INFO    ] No update needed
[2026-06-05 07:48:21,581.581 INFO    ] Checking for camera pi updates...
[2026-06-05 07:48:21,619.619 INFO    ] 200
[2026-06-05 07:48:21,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:21,663.663 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:48:21,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:48:21,711.711 INFO    ] No camera update needed
[2026-06-05 07:48:21,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:48:21,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:48:21,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:48:21,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:48:23,767.767 INFO    ] ================================================
[2026-06-05 07:48:23,782.782 INFO    ] Launching Daemon at Fri Jun  5 07:48:23 IST 2026
[2026-06-05 07:48:23,793.793 INFO    ] ================================================
[2026-06-05 07:48:24,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:48:24
[2026-06-05 07:48:24,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:48:25,209.209 INFO    ] Initializing speech engine...
[2026-06-05 07:48:25,219.219 INFO    ] 2026-06-05 07:48:25
[2026-06-05 07:48:25,477.477 INFO    ] 2026-06-05 07:48:25
[2026-06-05 07:48:25,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:48:25,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:48:25,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:48:25,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:48:25,915.915 INFO    ] time= 05/06/2026 07:48:25
[2026-06-05 07:48:25,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:48:26,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:48:26,080.080 INFO    ] No existing commands found in stream
[2026-06-05 07:48:31,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:48:31,095.095 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 07:48:33,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:48:33,738.738 INFO    ] Checking for system updates...
[2026-06-05 07:48:33,775.775 INFO    ] 200
[2026-06-05 07:48:33,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:33,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:48:33,835.835 INFO    ] No update needed
[2026-06-05 07:48:33,837.837 INFO    ] Checking for camera pi updates...
[2026-06-05 07:48:33,878.878 INFO    ] 200
[2026-06-05 07:48:33,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:33,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:48:33,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:48:33,970.970 INFO    ] No camera update needed
[2026-06-05 07:48:33,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:48:33,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:48:33,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:48:33,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:48:36,028.028 INFO    ] ================================================
[2026-06-05 07:48:36,043.043 INFO    ] Launching Daemon at Fri Jun  5 07:48:36 IST 2026
[2026-06-05 07:48:36,054.054 INFO    ] ================================================
[2026-06-05 07:48:36,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:48:36
[2026-06-05 07:48:37,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:48:37,647.647 INFO    ] Initializing speech engine...
[2026-06-05 07:48:37,664.664 INFO    ] 2026-06-05 07:48:37
[2026-06-05 07:48:37,937.937 INFO    ] 2026-06-05 07:48:37
[2026-06-05 07:48:37,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:48:38,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:48:38,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:48:38,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:48:38,419.419 INFO    ] time= 05/06/2026 07:48:38
[2026-06-05 07:48:38,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:48:38,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:48:38,659.659 INFO    ] No existing commands found in stream
[2026-06-05 07:48:43,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:48:43,685.685 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 07:48:44,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:48:44,471.471 INFO    ] Checking for system updates...
[2026-06-05 07:48:44,509.509 INFO    ] 200
[2026-06-05 07:48:44,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:44,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:48:44,569.569 INFO    ] No update needed
[2026-06-05 07:48:44,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 07:48:44,610.610 INFO    ] 200
[2026-06-05 07:48:44,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:44,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:48:44,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:48:44,703.703 INFO    ] No camera update needed
[2026-06-05 07:48:44,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:48:44,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:48:44,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:48:44,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:48:46,764.764 INFO    ] ================================================
[2026-06-05 07:48:46,779.779 INFO    ] Launching Daemon at Fri Jun  5 07:48:46 IST 2026
[2026-06-05 07:48:46,789.789 INFO    ] ================================================
[2026-06-05 07:48:47,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:48:47
[2026-06-05 07:48:47,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:48:48,221.221 INFO    ] Initializing speech engine...
[2026-06-05 07:48:48,231.231 INFO    ] 2026-06-05 07:48:48
[2026-06-05 07:48:48,474.474 INFO    ] 2026-06-05 07:48:48
[2026-06-05 07:48:48,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:48:48,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:48:48,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:48:48,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:48:48,928.928 INFO    ] time= 05/06/2026 07:48:48
[2026-06-05 07:48:48,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:48:49,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:48:49,068.068 INFO    ] No existing commands found in stream
[2026-06-05 07:48:54,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:48:54,080.080 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 07:48:56,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:48:56,068.068 INFO    ] Checking for system updates...
[2026-06-05 07:48:56,108.108 INFO    ] 200
[2026-06-05 07:48:56,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:56,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:48:56,172.172 INFO    ] No update needed
[2026-06-05 07:48:56,175.175 INFO    ] Checking for camera pi updates...
[2026-06-05 07:48:56,212.212 INFO    ] 200
[2026-06-05 07:48:56,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:48:56,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:48:56,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:48:56,303.303 INFO    ] No camera update needed
[2026-06-05 07:48:56,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:48:56,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:48:56,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:48:56,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:48:58,359.359 INFO    ] ================================================
[2026-06-05 07:48:58,376.376 INFO    ] Launching Daemon at Fri Jun  5 07:48:58 IST 2026
[2026-06-05 07:48:58,388.388 INFO    ] ================================================
[2026-06-05 07:48:58,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:48:58
[2026-06-05 07:48:59,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:48:59,803.803 INFO    ] Initializing speech engine...
[2026-06-05 07:48:59,823.823 INFO    ] 2026-06-05 07:48:59
[2026-06-05 07:49:00,077.077 INFO    ] 2026-06-05 07:49:00
[2026-06-05 07:49:00,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:49:00,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:49:00,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:49:00,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:49:00,433.433 INFO    ] time= 05/06/2026 07:49:00
[2026-06-05 07:49:00,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:49:00,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:49:00,531.531 INFO    ] No existing commands found in stream
[2026-06-05 07:49:05,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:49:05,569.569 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 07:49:06,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:49:06,960.960 INFO    ] Checking for system updates...
[2026-06-05 07:49:07,003.003 INFO    ] 200
[2026-06-05 07:49:07,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:07,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:49:07,078.078 INFO    ] No update needed
[2026-06-05 07:49:07,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 07:49:07,117.117 INFO    ] 200
[2026-06-05 07:49:07,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:07,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:49:07,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:49:07,209.209 INFO    ] No camera update needed
[2026-06-05 07:49:07,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:49:07,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:49:07,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:49:07,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:49:09,265.265 INFO    ] ================================================
[2026-06-05 07:49:09,281.281 INFO    ] Launching Daemon at Fri Jun  5 07:49:09 IST 2026
[2026-06-05 07:49:09,292.292 INFO    ] ================================================
[2026-06-05 07:49:09,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:49:09
[2026-06-05 07:49:10,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:49:10,708.708 INFO    ] Initializing speech engine...
[2026-06-05 07:49:10,722.722 INFO    ] 2026-06-05 07:49:10
[2026-06-05 07:49:11,006.006 INFO    ] 2026-06-05 07:49:10
[2026-06-05 07:49:11,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:49:11,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:49:11,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:49:11,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:49:11,358.358 INFO    ] time= 05/06/2026 07:49:11
[2026-06-05 07:49:11,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:49:11,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:49:11,465.465 INFO    ] No existing commands found in stream
[2026-06-05 07:49:16,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:49:16,493.493 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 07:49:16,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:49:16,867.867 INFO    ] Checking for system updates...
[2026-06-05 07:49:16,904.904 INFO    ] 200
[2026-06-05 07:49:16,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:16,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:49:16,962.962 INFO    ] No update needed
[2026-06-05 07:49:16,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 07:49:16,998.998 INFO    ] 200
[2026-06-05 07:49:17,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:17,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:49:17,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:49:17,070.070 INFO    ] No camera update needed
[2026-06-05 07:49:17,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:49:17,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:49:17,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:49:17,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:49:19,128.128 INFO    ] ================================================
[2026-06-05 07:49:19,144.144 INFO    ] Launching Daemon at Fri Jun  5 07:49:19 IST 2026
[2026-06-05 07:49:19,156.156 INFO    ] ================================================
[2026-06-05 07:49:19,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:49:19
[2026-06-05 07:49:20,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:49:20,605.605 INFO    ] Initializing speech engine...
[2026-06-05 07:49:20,613.613 INFO    ] 2026-06-05 07:49:20
[2026-06-05 07:49:20,869.869 INFO    ] 2026-06-05 07:49:20
[2026-06-05 07:49:20,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:49:21,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:49:21,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:49:21,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:49:21,245.245 INFO    ] time= 05/06/2026 07:49:21
[2026-06-05 07:49:21,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:49:21,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:49:21,416.416 INFO    ] No existing commands found in stream
[2026-06-05 07:49:26,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:49:26,444.444 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 07:49:27,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:49:27,462.462 INFO    ] Checking for system updates...
[2026-06-05 07:49:27,503.503 INFO    ] 200
[2026-06-05 07:49:27,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:27,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:49:27,568.568 INFO    ] No update needed
[2026-06-05 07:49:27,571.571 INFO    ] Checking for camera pi updates...
[2026-06-05 07:49:27,608.608 INFO    ] 200
[2026-06-05 07:49:27,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:27,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:49:27,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:49:27,700.700 INFO    ] No camera update needed
[2026-06-05 07:49:27,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:49:27,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:49:27,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:49:27,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:49:29,756.756 INFO    ] ================================================
[2026-06-05 07:49:29,772.772 INFO    ] Launching Daemon at Fri Jun  5 07:49:29 IST 2026
[2026-06-05 07:49:29,784.784 INFO    ] ================================================
[2026-06-05 07:49:30,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:49:30
[2026-06-05 07:49:30,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:49:31,254.254 INFO    ] Initializing speech engine...
[2026-06-05 07:49:31,267.267 INFO    ] 2026-06-05 07:49:31
[2026-06-05 07:49:31,527.527 INFO    ] 2026-06-05 07:49:31
[2026-06-05 07:49:31,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:49:31,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:49:31,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:49:31,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:49:31,975.975 INFO    ] time= 05/06/2026 07:49:31
[2026-06-05 07:49:32,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:49:32,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:49:32,146.146 INFO    ] No existing commands found in stream
[2026-06-05 07:49:37,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:49:37,189.189 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 07:49:41,342.342 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:49:41,344.344 INFO    ] Checking for system updates...
[2026-06-05 07:49:41,384.384 INFO    ] 200
[2026-06-05 07:49:41,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:41,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:49:41,449.449 INFO    ] No update needed
[2026-06-05 07:49:41,451.451 INFO    ] Checking for camera pi updates...
[2026-06-05 07:49:41,486.486 INFO    ] 200
[2026-06-05 07:49:41,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:41,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:49:41,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:49:41,598.598 INFO    ] No camera update needed
[2026-06-05 07:49:41,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:49:41,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:49:41,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:49:41,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:49:43,654.654 INFO    ] ================================================
[2026-06-05 07:49:43,669.669 INFO    ] Launching Daemon at Fri Jun  5 07:49:43 IST 2026
[2026-06-05 07:49:43,681.681 INFO    ] ================================================
[2026-06-05 07:49:44,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:49:44
[2026-06-05 07:49:44,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:49:45,093.093 INFO    ] Initializing speech engine...
[2026-06-05 07:49:45,102.102 INFO    ] 2026-06-05 07:49:45
[2026-06-05 07:49:45,394.394 INFO    ] 2026-06-05 07:49:45
[2026-06-05 07:49:45,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:49:45,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:49:45,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:49:45,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:49:45,771.771 INFO    ] time= 05/06/2026 07:49:45
[2026-06-05 07:49:45,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:49:45,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:49:45,895.895 INFO    ] No existing commands found in stream
[2026-06-05 07:49:50,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:49:50,910.910 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 07:49:53,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:49:53,435.435 INFO    ] Checking for system updates...
[2026-06-05 07:49:53,471.471 INFO    ] 200
[2026-06-05 07:49:53,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:53,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:49:53,532.532 INFO    ] No update needed
[2026-06-05 07:49:53,534.534 INFO    ] Checking for camera pi updates...
[2026-06-05 07:49:53,568.568 INFO    ] 200
[2026-06-05 07:49:53,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:49:53,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:49:53,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:49:53,662.662 INFO    ] No camera update needed
[2026-06-05 07:49:53,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:49:53,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:49:53,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:49:53,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:49:55,718.718 INFO    ] ================================================
[2026-06-05 07:49:55,733.733 INFO    ] Launching Daemon at Fri Jun  5 07:49:55 IST 2026
[2026-06-05 07:49:55,744.744 INFO    ] ================================================
[2026-06-05 07:49:56,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:49:56
[2026-06-05 07:49:56,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:49:57,278.278 INFO    ] Initializing speech engine...
[2026-06-05 07:49:57,290.290 INFO    ] 2026-06-05 07:49:57
[2026-06-05 07:49:57,566.566 INFO    ] 2026-06-05 07:49:57
[2026-06-05 07:49:57,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:49:57,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:49:57,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:49:58,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:49:58,044.044 INFO    ] time= 05/06/2026 07:49:58
[2026-06-05 07:49:58,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:49:58,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:49:58,194.194 INFO    ] No existing commands found in stream
[2026-06-05 07:50:03,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:50:03,212.212 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 07:50:08,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:50:08,267.267 INFO    ] Checking for system updates...
[2026-06-05 07:50:08,306.306 INFO    ] 200
[2026-06-05 07:50:08,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:08,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:50:08,364.364 INFO    ] No update needed
[2026-06-05 07:50:08,367.367 INFO    ] Checking for camera pi updates...
[2026-06-05 07:50:08,406.406 INFO    ] 200
[2026-06-05 07:50:08,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:08,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:50:08,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:50:08,496.496 INFO    ] No camera update needed
[2026-06-05 07:50:08,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:50:08,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:50:08,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:50:08,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:50:10,553.553 INFO    ] ================================================
[2026-06-05 07:50:10,568.568 INFO    ] Launching Daemon at Fri Jun  5 07:50:10 IST 2026
[2026-06-05 07:50:10,578.578 INFO    ] ================================================
[2026-06-05 07:50:11,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:50:11
[2026-06-05 07:50:11,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:50:11,999.999 INFO    ] Initializing speech engine...
[2026-06-05 07:50:12,019.019 INFO    ] 2026-06-05 07:50:12
[2026-06-05 07:50:12,270.270 INFO    ] 2026-06-05 07:50:12
[2026-06-05 07:50:12,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:50:12,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:50:12,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:50:12,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:50:12,650.650 INFO    ] time= 05/06/2026 07:50:12
[2026-06-05 07:50:12,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:50:12,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:50:12,826.826 INFO    ] No existing commands found in stream
[2026-06-05 07:50:17,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:50:17,861.861 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 07:50:21,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:50:21,815.815 INFO    ] Checking for system updates...
[2026-06-05 07:50:21,852.852 INFO    ] 200
[2026-06-05 07:50:21,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:21,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:50:21,911.911 INFO    ] No update needed
[2026-06-05 07:50:21,913.913 INFO    ] Checking for camera pi updates...
[2026-06-05 07:50:21,948.948 INFO    ] 200
[2026-06-05 07:50:21,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:21,991.991 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:50:22,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:50:22,034.034 INFO    ] No camera update needed
[2026-06-05 07:50:22,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:50:22,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:50:22,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:50:22,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:50:24,093.093 INFO    ] ================================================
[2026-06-05 07:50:24,109.109 INFO    ] Launching Daemon at Fri Jun  5 07:50:24 IST 2026
[2026-06-05 07:50:24,120.120 INFO    ] ================================================
[2026-06-05 07:50:24,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:50:24
[2026-06-05 07:50:25,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:50:25,759.759 INFO    ] Initializing speech engine...
[2026-06-05 07:50:25,771.771 INFO    ] 2026-06-05 07:50:25
[2026-06-05 07:50:26,059.059 INFO    ] 2026-06-05 07:50:26
[2026-06-05 07:50:26,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:50:26,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:50:26,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:50:26,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:50:26,591.591 INFO    ] time= 05/06/2026 07:50:26
[2026-06-05 07:50:26,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:50:26,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:50:26,734.734 INFO    ] No existing commands found in stream
[2026-06-05 07:50:31,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:50:31,761.761 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 07:50:32,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:50:32,472.472 INFO    ] Checking for system updates...
[2026-06-05 07:50:32,523.523 INFO    ] 200
[2026-06-05 07:50:32,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:32,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:50:32,596.596 INFO    ] No update needed
[2026-06-05 07:50:32,598.598 INFO    ] Checking for camera pi updates...
[2026-06-05 07:50:32,636.636 INFO    ] 200
[2026-06-05 07:50:32,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:32,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:50:32,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:50:32,711.711 INFO    ] No camera update needed
[2026-06-05 07:50:32,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:50:32,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:50:32,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:50:32,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:50:34,766.766 INFO    ] ================================================
[2026-06-05 07:50:34,781.781 INFO    ] Launching Daemon at Fri Jun  5 07:50:34 IST 2026
[2026-06-05 07:50:34,792.792 INFO    ] ================================================
[2026-06-05 07:50:35,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:50:35
[2026-06-05 07:50:35,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:50:36,272.272 INFO    ] Initializing speech engine...
[2026-06-05 07:50:36,282.282 INFO    ] 2026-06-05 07:50:36
[2026-06-05 07:50:36,543.543 INFO    ] 2026-06-05 07:50:36
[2026-06-05 07:50:36,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:50:36,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:50:36,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:50:36,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:50:37,005.005 INFO    ] time= 05/06/2026 07:50:36
[2026-06-05 07:50:37,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:50:37,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:50:37,226.226 INFO    ] No existing commands found in stream
[2026-06-05 07:50:42,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:50:42,256.256 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 07:50:46,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:50:46,377.377 INFO    ] Checking for system updates...
[2026-06-05 07:50:46,415.415 INFO    ] 200
[2026-06-05 07:50:46,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:46,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:50:46,478.478 INFO    ] No update needed
[2026-06-05 07:50:46,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 07:50:46,516.516 INFO    ] 200
[2026-06-05 07:50:46,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:46,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:50:46,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:50:46,710.710 INFO    ] No camera update needed
[2026-06-05 07:50:46,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:50:46,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:50:46,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:50:46,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:50:48,765.765 INFO    ] ================================================
[2026-06-05 07:50:48,780.780 INFO    ] Launching Daemon at Fri Jun  5 07:50:48 IST 2026
[2026-06-05 07:50:48,791.791 INFO    ] ================================================
[2026-06-05 07:50:49,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:50:49
[2026-06-05 07:50:49,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:50:50,205.205 INFO    ] Initializing speech engine...
[2026-06-05 07:50:50,212.212 INFO    ] 2026-06-05 07:50:50
[2026-06-05 07:50:50,508.508 INFO    ] 2026-06-05 07:50:50
[2026-06-05 07:50:50,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:50:50,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:50:50,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:50:50,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:50:50,933.933 INFO    ] time= 05/06/2026 07:50:50
[2026-06-05 07:50:50,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:50:50,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:50:51,017.017 INFO    ] No existing commands found in stream
[2026-06-05 07:50:56,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:50:56,032.032 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 07:50:58,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:50:58,672.672 INFO    ] Checking for system updates...
[2026-06-05 07:50:58,708.708 INFO    ] 200
[2026-06-05 07:50:58,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:58,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:50:58,766.766 INFO    ] No update needed
[2026-06-05 07:50:58,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 07:50:58,802.802 INFO    ] 200
[2026-06-05 07:50:58,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:50:58,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:50:58,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:50:58,896.896 INFO    ] No camera update needed
[2026-06-05 07:50:58,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:50:58,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:50:58,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:50:58,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:51:00,953.953 INFO    ] ================================================
[2026-06-05 07:51:00,968.968 INFO    ] Launching Daemon at Fri Jun  5 07:51:00 IST 2026
[2026-06-05 07:51:00,978.978 INFO    ] ================================================
[2026-06-05 07:51:01,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:51:01
[2026-06-05 07:51:02,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:51:02,595.595 INFO    ] Initializing speech engine...
[2026-06-05 07:51:02,612.612 INFO    ] 2026-06-05 07:51:02
[2026-06-05 07:51:02,919.919 INFO    ] 2026-06-05 07:51:02
[2026-06-05 07:51:02,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:51:03,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:51:03,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:51:03,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:51:03,306.306 INFO    ] time= 05/06/2026 07:51:03
[2026-06-05 07:51:03,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:51:03,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:51:03,458.458 INFO    ] No existing commands found in stream
[2026-06-05 07:51:08,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:51:08,471.471 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 07:51:12,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:51:12,252.252 INFO    ] Checking for system updates...
[2026-06-05 07:51:12,289.289 INFO    ] 200
[2026-06-05 07:51:12,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:51:12,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:51:12,353.353 INFO    ] No update needed
[2026-06-05 07:51:12,355.355 INFO    ] Checking for camera pi updates...
[2026-06-05 07:51:12,390.390 INFO    ] 200
[2026-06-05 07:51:12,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:51:12,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:51:12,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:51:12,487.487 INFO    ] No camera update needed
[2026-06-05 07:51:12,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:51:12,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:51:12,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:51:12,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:51:14,542.542 INFO    ] ================================================
[2026-06-05 07:51:14,559.559 INFO    ] Launching Daemon at Fri Jun  5 07:51:14 IST 2026
[2026-06-05 07:51:14,573.573 INFO    ] ================================================
[2026-06-05 07:51:15,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:51:15
[2026-06-05 07:51:15,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:51:16,023.023 INFO    ] Initializing speech engine...
[2026-06-05 07:51:16,032.032 INFO    ] 2026-06-05 07:51:16
[2026-06-05 07:51:16,299.299 INFO    ] 2026-06-05 07:51:16
[2026-06-05 07:51:16,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:51:16,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:51:16,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:51:16,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:51:16,673.673 INFO    ] time= 05/06/2026 07:51:16
[2026-06-05 07:51:16,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:51:16,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:51:16,796.796 INFO    ] No existing commands found in stream
[2026-06-05 07:51:21,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:51:21,812.812 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 07:51:25,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:51:25,739.739 INFO    ] Checking for system updates...
[2026-06-05 07:51:25,780.780 INFO    ] 200
[2026-06-05 07:51:25,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:51:25,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:51:25,845.845 INFO    ] No update needed
[2026-06-05 07:51:25,847.847 INFO    ] Checking for camera pi updates...
[2026-06-05 07:51:25,882.882 INFO    ] 200
[2026-06-05 07:51:25,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:51:25,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:51:25,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:51:25,969.969 INFO    ] No camera update needed
[2026-06-05 07:51:25,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:51:25,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:51:25,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:51:25,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:51:28,029.029 INFO    ] ================================================
[2026-06-05 07:51:28,045.045 INFO    ] Launching Daemon at Fri Jun  5 07:51:28 IST 2026
[2026-06-05 07:51:28,057.057 INFO    ] ================================================
[2026-06-05 07:51:28,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:51:28
[2026-06-05 07:51:29,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:51:29,488.488 INFO    ] Initializing speech engine...
[2026-06-05 07:51:29,493.493 INFO    ] 2026-06-05 07:51:29
[2026-06-05 07:51:29,771.771 INFO    ] 2026-06-05 07:51:29
[2026-06-05 07:51:29,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:51:30,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:51:30,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:51:30,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:51:30,242.242 INFO    ] time= 05/06/2026 07:51:30
[2026-06-05 07:51:30,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:51:30,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:51:30,447.447 INFO    ] No existing commands found in stream
[2026-06-05 07:51:35,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:51:35,483.483 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 07:51:36,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:51:36,782.782 INFO    ] Checking for system updates...
[2026-06-05 07:51:36,818.818 INFO    ] 200
[2026-06-05 07:51:36,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:51:36,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:51:36,881.881 INFO    ] No update needed
[2026-06-05 07:51:36,883.883 INFO    ] Checking for camera pi updates...
[2026-06-05 07:51:36,920.920 INFO    ] 200
[2026-06-05 07:51:36,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:51:36,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:51:37,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:51:37,028.028 INFO    ] No camera update needed
[2026-06-05 07:51:37,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:51:37,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:51:37,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:51:37,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:51:39,086.086 INFO    ] ================================================
[2026-06-05 07:51:39,103.103 INFO    ] Launching Daemon at Fri Jun  5 07:51:39 IST 2026
[2026-06-05 07:51:39,113.113 INFO    ] ================================================
[2026-06-05 07:51:40,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:51:39
[2026-06-05 07:51:41,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:51:41,309.309 INFO    ] Initializing speech engine...
[2026-06-05 07:51:41,320.320 INFO    ] 2026-06-05 07:51:41
[2026-06-05 07:51:41,585.585 INFO    ] 2026-06-05 07:51:41
[2026-06-05 07:51:41,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:51:41,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:51:41,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:51:42,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:51:42,072.072 INFO    ] time= 05/06/2026 07:51:42
[2026-06-05 07:51:42,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:51:42,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:51:42,215.215 INFO    ] No existing commands found in stream
[2026-06-05 07:51:47,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:51:47,231.231 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 07:51:48,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:51:48,285.285 INFO    ] Checking for system updates...
[2026-06-05 07:51:48,323.323 INFO    ] 200
[2026-06-05 07:51:48,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:51:48,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:51:48,383.383 INFO    ] No update needed
[2026-06-05 07:51:48,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 07:51:48,424.424 INFO    ] 200
[2026-06-05 07:51:48,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:51:48,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:51:48,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:51:48,520.520 INFO    ] No camera update needed
[2026-06-05 07:51:48,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:51:48,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:51:48,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:51:48,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:51:50,575.575 INFO    ] ================================================
[2026-06-05 07:51:50,592.592 INFO    ] Launching Daemon at Fri Jun  5 07:51:50 IST 2026
[2026-06-05 07:51:50,603.603 INFO    ] ================================================
[2026-06-05 07:51:51,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:51:51
[2026-06-05 07:51:51,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:51:52,089.089 INFO    ] Initializing speech engine...
[2026-06-05 07:51:52,098.098 INFO    ] 2026-06-05 07:51:52
[2026-06-05 07:51:52,369.369 INFO    ] 2026-06-05 07:51:52
[2026-06-05 07:51:52,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:51:52,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:51:52,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:51:52,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:51:52,847.847 INFO    ] time= 05/06/2026 07:51:52
[2026-06-05 07:51:52,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:51:52,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:51:53,070.070 INFO    ] No existing commands found in stream
[2026-06-05 07:51:58,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:51:58,091.091 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 07:52:00,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:52:00,798.798 INFO    ] Checking for system updates...
[2026-06-05 07:52:00,834.834 INFO    ] 200
[2026-06-05 07:52:00,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:00,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:52:00,894.894 INFO    ] No update needed
[2026-06-05 07:52:00,896.896 INFO    ] Checking for camera pi updates...
[2026-06-05 07:52:00,931.931 INFO    ] 200
[2026-06-05 07:52:00,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:00,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:52:01,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:52:01,029.029 INFO    ] No camera update needed
[2026-06-05 07:52:01,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:52:01,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:52:01,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:52:01,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:52:03,089.089 INFO    ] ================================================
[2026-06-05 07:52:03,106.106 INFO    ] Launching Daemon at Fri Jun  5 07:52:03 IST 2026
[2026-06-05 07:52:03,118.118 INFO    ] ================================================
[2026-06-05 07:52:03,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:52:03
[2026-06-05 07:52:04,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:52:04,574.574 INFO    ] Initializing speech engine...
[2026-06-05 07:52:04,599.599 INFO    ] 2026-06-05 07:52:04
[2026-06-05 07:52:04,872.872 INFO    ] 2026-06-05 07:52:04
[2026-06-05 07:52:04,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:52:05,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:52:05,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:52:05,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:52:05,244.244 INFO    ] time= 05/06/2026 07:52:05
[2026-06-05 07:52:05,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:52:05,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:52:05,366.366 INFO    ] No existing commands found in stream
[2026-06-05 07:52:10,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:52:10,381.381 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 07:52:14,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:52:14,494.494 INFO    ] Checking for system updates...
[2026-06-05 07:52:14,533.533 INFO    ] 200
[2026-06-05 07:52:14,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:14,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:52:14,593.593 INFO    ] No update needed
[2026-06-05 07:52:14,595.595 INFO    ] Checking for camera pi updates...
[2026-06-05 07:52:14,629.629 INFO    ] 200
[2026-06-05 07:52:14,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:14,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:52:14,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:52:14,718.718 INFO    ] No camera update needed
[2026-06-05 07:52:14,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:52:14,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:52:14,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:52:14,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:52:16,775.775 INFO    ] ================================================
[2026-06-05 07:52:16,790.790 INFO    ] Launching Daemon at Fri Jun  5 07:52:16 IST 2026
[2026-06-05 07:52:16,801.801 INFO    ] ================================================
[2026-06-05 07:52:17,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:52:17
[2026-06-05 07:52:17,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:52:18,202.202 INFO    ] Initializing speech engine...
[2026-06-05 07:52:18,225.225 INFO    ] 2026-06-05 07:52:18
[2026-06-05 07:52:18,518.518 INFO    ] 2026-06-05 07:52:18
[2026-06-05 07:52:18,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:52:18,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:52:18,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:52:18,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:52:18,879.879 INFO    ] time= 05/06/2026 07:52:18
[2026-06-05 07:52:18,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:52:18,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:52:18,958.958 INFO    ] No existing commands found in stream
[2026-06-05 07:52:23,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:52:23,971.971 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 07:52:25,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:52:25,418.418 INFO    ] Checking for system updates...
[2026-06-05 07:52:25,453.453 INFO    ] 200
[2026-06-05 07:52:25,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:25,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:52:25,513.513 INFO    ] No update needed
[2026-06-05 07:52:25,515.515 INFO    ] Checking for camera pi updates...
[2026-06-05 07:52:25,550.550 INFO    ] 200
[2026-06-05 07:52:25,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:25,594.594 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:52:25,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:52:25,642.642 INFO    ] No camera update needed
[2026-06-05 07:52:25,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:52:25,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:52:25,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:52:25,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:52:27,701.701 INFO    ] ================================================
[2026-06-05 07:52:27,717.717 INFO    ] Launching Daemon at Fri Jun  5 07:52:27 IST 2026
[2026-06-05 07:52:27,727.727 INFO    ] ================================================
[2026-06-05 07:52:28,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:52:28
[2026-06-05 07:52:28,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:52:29,134.134 INFO    ] Initializing speech engine...
[2026-06-05 07:52:29,146.146 INFO    ] 2026-06-05 07:52:29
[2026-06-05 07:52:29,422.422 INFO    ] 2026-06-05 07:52:29
[2026-06-05 07:52:29,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:52:29,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:52:29,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:52:29,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:52:29,864.864 INFO    ] time= 05/06/2026 07:52:29
[2026-06-05 07:52:29,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:52:29,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:52:30,006.006 INFO    ] No existing commands found in stream
[2026-06-05 07:52:35,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:52:35,029.029 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 07:52:38,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:52:38,455.455 INFO    ] Checking for system updates...
[2026-06-05 07:52:38,494.494 INFO    ] 200
[2026-06-05 07:52:38,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:38,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:52:38,557.557 INFO    ] No update needed
[2026-06-05 07:52:38,560.560 INFO    ] Checking for camera pi updates...
[2026-06-05 07:52:38,596.596 INFO    ] 200
[2026-06-05 07:52:38,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:38,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:52:38,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:52:38,682.682 INFO    ] No camera update needed
[2026-06-05 07:52:38,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:52:38,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:52:38,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:52:38,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:52:40,737.737 INFO    ] ================================================
[2026-06-05 07:52:40,752.752 INFO    ] Launching Daemon at Fri Jun  5 07:52:40 IST 2026
[2026-06-05 07:52:40,763.763 INFO    ] ================================================
[2026-06-05 07:52:41,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:52:41
[2026-06-05 07:52:41,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:52:42,213.213 INFO    ] Initializing speech engine...
[2026-06-05 07:52:42,221.221 INFO    ] 2026-06-05 07:52:42
[2026-06-05 07:52:42,480.480 INFO    ] 2026-06-05 07:52:42
[2026-06-05 07:52:42,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:52:42,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:52:42,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:52:42,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:52:42,937.937 INFO    ] time= 05/06/2026 07:52:42
[2026-06-05 07:52:42,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:52:43,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:52:43,151.151 INFO    ] No existing commands found in stream
[2026-06-05 07:52:48,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:52:48,184.184 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 07:52:51,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:52:51,314.314 INFO    ] Checking for system updates...
[2026-06-05 07:52:51,350.350 INFO    ] 200
[2026-06-05 07:52:51,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:51,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:52:51,408.408 INFO    ] No update needed
[2026-06-05 07:52:51,410.410 INFO    ] Checking for camera pi updates...
[2026-06-05 07:52:51,447.447 INFO    ] 200
[2026-06-05 07:52:51,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:52:51,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:52:51,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:52:51,645.645 INFO    ] No camera update needed
[2026-06-05 07:52:51,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:52:51,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:52:51,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:52:51,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:52:53,700.700 INFO    ] ================================================
[2026-06-05 07:52:53,716.716 INFO    ] Launching Daemon at Fri Jun  5 07:52:53 IST 2026
[2026-06-05 07:52:53,727.727 INFO    ] ================================================
[2026-06-05 07:52:54,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:52:54
[2026-06-05 07:52:55,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:52:55,343.343 INFO    ] Initializing speech engine...
[2026-06-05 07:52:55,354.354 INFO    ] 2026-06-05 07:52:55
[2026-06-05 07:52:55,637.637 INFO    ] 2026-06-05 07:52:55
[2026-06-05 07:52:55,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:52:55,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:52:55,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:52:56,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:52:56,190.190 INFO    ] time= 05/06/2026 07:52:56
[2026-06-05 07:52:56,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:52:56,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:52:56,337.337 INFO    ] No existing commands found in stream
[2026-06-05 07:53:01,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:53:01,364.364 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 07:53:02,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:53:02,493.493 INFO    ] Checking for system updates...
[2026-06-05 07:53:02,539.539 INFO    ] 200
[2026-06-05 07:53:02,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:02,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:53:02,615.615 INFO    ] No update needed
[2026-06-05 07:53:02,618.618 INFO    ] Checking for camera pi updates...
[2026-06-05 07:53:02,668.668 INFO    ] 200
[2026-06-05 07:53:02,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:02,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:53:02,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:53:02,778.778 INFO    ] No camera update needed
[2026-06-05 07:53:02,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:53:02,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:53:02,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:53:02,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:53:04,839.839 INFO    ] ================================================
[2026-06-05 07:53:04,854.854 INFO    ] Launching Daemon at Fri Jun  5 07:53:04 IST 2026
[2026-06-05 07:53:04,866.866 INFO    ] ================================================
[2026-06-05 07:53:05,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:53:05
[2026-06-05 07:53:06,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:53:06,389.389 INFO    ] Initializing speech engine...
[2026-06-05 07:53:06,401.401 INFO    ] 2026-06-05 07:53:06
[2026-06-05 07:53:06,673.673 INFO    ] 2026-06-05 07:53:06
[2026-06-05 07:53:06,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:53:06,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:53:06,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:53:07,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:53:07,052.052 INFO    ] time= 05/06/2026 07:53:07
[2026-06-05 07:53:07,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:53:07,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:53:07,250.250 INFO    ] No existing commands found in stream
[2026-06-05 07:53:12,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:53:12,266.266 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 07:53:15,731.731 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:53:15,734.734 INFO    ] Checking for system updates...
[2026-06-05 07:53:15,775.775 INFO    ] 200
[2026-06-05 07:53:15,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:15,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:53:15,844.844 INFO    ] No update needed
[2026-06-05 07:53:15,847.847 INFO    ] Checking for camera pi updates...
[2026-06-05 07:53:15,884.884 INFO    ] 200
[2026-06-05 07:53:15,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:15,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:53:15,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:53:15,979.979 INFO    ] No camera update needed
[2026-06-05 07:53:15,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:53:15,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:53:15,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:53:15,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:53:18,037.037 INFO    ] ================================================
[2026-06-05 07:53:18,053.053 INFO    ] Launching Daemon at Fri Jun  5 07:53:18 IST 2026
[2026-06-05 07:53:18,064.064 INFO    ] ================================================
[2026-06-05 07:53:18,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:53:18
[2026-06-05 07:53:19,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:53:19,660.660 INFO    ] Initializing speech engine...
[2026-06-05 07:53:19,671.671 INFO    ] 2026-06-05 07:53:19
[2026-06-05 07:53:19,953.953 INFO    ] 2026-06-05 07:53:19
[2026-06-05 07:53:20,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:53:20,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:53:20,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:53:20,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:53:20,482.482 INFO    ] time= 05/06/2026 07:53:20
[2026-06-05 07:53:20,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:53:20,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:53:20,636.636 INFO    ] No existing commands found in stream
[2026-06-05 07:53:25,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:53:25,651.651 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 07:53:30,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:53:30,473.473 INFO    ] Checking for system updates...
[2026-06-05 07:53:30,516.516 INFO    ] 200
[2026-06-05 07:53:30,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:30,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:53:30,581.581 INFO    ] No update needed
[2026-06-05 07:53:30,584.584 INFO    ] Checking for camera pi updates...
[2026-06-05 07:53:30,621.621 INFO    ] 200
[2026-06-05 07:53:30,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:30,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:53:30,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:53:30,700.700 INFO    ] No camera update needed
[2026-06-05 07:53:30,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:53:30,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:53:30,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:53:30,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:53:32,756.756 INFO    ] ================================================
[2026-06-05 07:53:32,771.771 INFO    ] Launching Daemon at Fri Jun  5 07:53:32 IST 2026
[2026-06-05 07:53:32,783.783 INFO    ] ================================================
[2026-06-05 07:53:33,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:53:33
[2026-06-05 07:53:34,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:53:34,390.390 INFO    ] Initializing speech engine...
[2026-06-05 07:53:34,403.403 INFO    ] 2026-06-05 07:53:34
[2026-06-05 07:53:34,679.679 INFO    ] 2026-06-05 07:53:34
[2026-06-05 07:53:34,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:53:34,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:53:34,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:53:35,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:53:35,165.165 INFO    ] time= 05/06/2026 07:53:35
[2026-06-05 07:53:35,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:53:35,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:53:35,368.368 INFO    ] No existing commands found in stream
[2026-06-05 07:53:40,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:53:40,400.400 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 07:53:44,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:53:44,386.386 INFO    ] Checking for system updates...
[2026-06-05 07:53:44,427.427 INFO    ] 200
[2026-06-05 07:53:44,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:44,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:53:44,497.497 INFO    ] No update needed
[2026-06-05 07:53:44,499.499 INFO    ] Checking for camera pi updates...
[2026-06-05 07:53:44,552.552 INFO    ] 200
[2026-06-05 07:53:44,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:44,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:53:44,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:53:44,644.644 INFO    ] No camera update needed
[2026-06-05 07:53:44,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:53:44,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:53:44,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:53:44,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:53:46,698.698 INFO    ] ================================================
[2026-06-05 07:53:46,713.713 INFO    ] Launching Daemon at Fri Jun  5 07:53:46 IST 2026
[2026-06-05 07:53:46,725.725 INFO    ] ================================================
[2026-06-05 07:53:47,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:53:47
[2026-06-05 07:53:48,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:53:48,350.350 INFO    ] Initializing speech engine...
[2026-06-05 07:53:48,359.359 INFO    ] 2026-06-05 07:53:48
[2026-06-05 07:53:48,660.660 INFO    ] 2026-06-05 07:53:48
[2026-06-05 07:53:48,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:53:48,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:53:48,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:53:49,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:53:49,168.168 INFO    ] time= 05/06/2026 07:53:49
[2026-06-05 07:53:49,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:53:49,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:53:49,302.302 INFO    ] No existing commands found in stream
[2026-06-05 07:53:54,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:53:54,336.336 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 07:53:57,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:53:57,770.770 INFO    ] Checking for system updates...
[2026-06-05 07:53:57,807.807 INFO    ] 200
[2026-06-05 07:53:57,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:57,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:53:57,866.866 INFO    ] No update needed
[2026-06-05 07:53:57,869.869 INFO    ] Checking for camera pi updates...
[2026-06-05 07:53:57,903.903 INFO    ] 200
[2026-06-05 07:53:57,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:53:57,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:53:57,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:53:57,987.987 INFO    ] No camera update needed
[2026-06-05 07:53:57,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:53:57,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:53:57,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:53:58,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:54:00,043.043 INFO    ] ================================================
[2026-06-05 07:54:00,058.058 INFO    ] Launching Daemon at Fri Jun  5 07:54:00 IST 2026
[2026-06-05 07:54:00,069.069 INFO    ] ================================================
[2026-06-05 07:54:00,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:54:00
[2026-06-05 07:54:01,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:54:01,830.830 INFO    ] Initializing speech engine...
[2026-06-05 07:54:01,853.853 INFO    ] 2026-06-05 07:54:01
[2026-06-05 07:54:02,166.166 INFO    ] 2026-06-05 07:54:02
[2026-06-05 07:54:02,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:54:02,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:54:02,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:54:02,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:54:02,557.557 INFO    ] time= 05/06/2026 07:54:02
[2026-06-05 07:54:02,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:54:02,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:54:02,714.714 INFO    ] No existing commands found in stream
[2026-06-05 07:54:07,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:54:07,730.730 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 07:54:10,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:54:10,446.446 INFO    ] Checking for system updates...
[2026-06-05 07:54:10,482.482 INFO    ] 200
[2026-06-05 07:54:10,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:10,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:54:10,548.548 INFO    ] No update needed
[2026-06-05 07:54:10,551.551 INFO    ] Checking for camera pi updates...
[2026-06-05 07:54:10,590.590 INFO    ] 200
[2026-06-05 07:54:10,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:10,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:54:10,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:54:10,684.684 INFO    ] No camera update needed
[2026-06-05 07:54:10,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:54:10,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:54:10,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:54:10,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:54:12,742.742 INFO    ] ================================================
[2026-06-05 07:54:12,758.758 INFO    ] Launching Daemon at Fri Jun  5 07:54:12 IST 2026
[2026-06-05 07:54:12,769.769 INFO    ] ================================================
[2026-06-05 07:54:13,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:54:13
[2026-06-05 07:54:13,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:54:14,294.294 INFO    ] Initializing speech engine...
[2026-06-05 07:54:14,303.303 INFO    ] 2026-06-05 07:54:14
[2026-06-05 07:54:14,592.592 INFO    ] 2026-06-05 07:54:14
[2026-06-05 07:54:14,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:54:14,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:54:14,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:54:15,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:54:15,053.053 INFO    ] time= 05/06/2026 07:54:15
[2026-06-05 07:54:15,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:54:15,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:54:15,202.202 INFO    ] No existing commands found in stream
[2026-06-05 07:54:20,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:54:20,218.218 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 07:54:22,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:54:22,358.358 INFO    ] Checking for system updates...
[2026-06-05 07:54:22,396.396 INFO    ] 200
[2026-06-05 07:54:22,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:22,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:54:22,454.454 INFO    ] No update needed
[2026-06-05 07:54:22,457.457 INFO    ] Checking for camera pi updates...
[2026-06-05 07:54:22,496.496 INFO    ] 200
[2026-06-05 07:54:22,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:22,541.541 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:54:22,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:54:22,594.594 INFO    ] No camera update needed
[2026-06-05 07:54:22,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:54:22,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:54:22,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:54:22,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:54:24,655.655 INFO    ] ================================================
[2026-06-05 07:54:24,670.670 INFO    ] Launching Daemon at Fri Jun  5 07:54:24 IST 2026
[2026-06-05 07:54:24,682.682 INFO    ] ================================================
[2026-06-05 07:54:25,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:54:25
[2026-06-05 07:54:25,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:54:26,120.120 INFO    ] Initializing speech engine...
[2026-06-05 07:54:26,133.133 INFO    ] 2026-06-05 07:54:26
[2026-06-05 07:54:26,411.411 INFO    ] 2026-06-05 07:54:26
[2026-06-05 07:54:26,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:54:26,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:54:26,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:54:26,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:54:26,859.859 INFO    ] time= 05/06/2026 07:54:26
[2026-06-05 07:54:26,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:54:26,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:54:27,032.032 INFO    ] No existing commands found in stream
[2026-06-05 07:54:32,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:54:32,048.048 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 07:54:36,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:54:36,050.050 INFO    ] Checking for system updates...
[2026-06-05 07:54:36,090.090 INFO    ] 200
[2026-06-05 07:54:36,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:36,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:54:36,155.155 INFO    ] No update needed
[2026-06-05 07:54:36,158.158 INFO    ] Checking for camera pi updates...
[2026-06-05 07:54:36,196.196 INFO    ] 200
[2026-06-05 07:54:36,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:36,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:54:36,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:54:36,292.292 INFO    ] No camera update needed
[2026-06-05 07:54:36,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:54:36,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:54:36,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:54:36,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:54:38,349.349 INFO    ] ================================================
[2026-06-05 07:54:38,364.364 INFO    ] Launching Daemon at Fri Jun  5 07:54:38 IST 2026
[2026-06-05 07:54:38,376.376 INFO    ] ================================================
[2026-06-05 07:54:39,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:54:39
[2026-06-05 07:54:39,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:54:40,009.009 INFO    ] Initializing speech engine...
[2026-06-05 07:54:40,017.017 INFO    ] 2026-06-05 07:54:40
[2026-06-05 07:54:40,302.302 INFO    ] 2026-06-05 07:54:40
[2026-06-05 07:54:40,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:54:40,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:54:40,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:54:40,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:54:40,723.723 INFO    ] time= 05/06/2026 07:54:40
[2026-06-05 07:54:40,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:54:40,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:54:40,907.907 INFO    ] No existing commands found in stream
[2026-06-05 07:54:45,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:54:45,923.923 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 07:54:47,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:54:47,039.039 INFO    ] Checking for system updates...
[2026-06-05 07:54:47,079.079 INFO    ] 200
[2026-06-05 07:54:47,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:47,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:54:47,145.145 INFO    ] No update needed
[2026-06-05 07:54:47,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 07:54:47,190.190 INFO    ] 200
[2026-06-05 07:54:47,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:47,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:54:47,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:54:47,303.303 INFO    ] No camera update needed
[2026-06-05 07:54:47,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:54:47,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:54:47,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:54:47,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:54:49,368.368 INFO    ] ================================================
[2026-06-05 07:54:49,384.384 INFO    ] Launching Daemon at Fri Jun  5 07:54:49 IST 2026
[2026-06-05 07:54:49,397.397 INFO    ] ================================================
[2026-06-05 07:54:49,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:54:49
[2026-06-05 07:54:50,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:54:50,916.916 INFO    ] Initializing speech engine...
[2026-06-05 07:54:50,932.932 INFO    ] 2026-06-05 07:54:50
[2026-06-05 07:54:51,221.221 INFO    ] 2026-06-05 07:54:51
[2026-06-05 07:54:51,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:54:51,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:54:51,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:54:51,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:54:51,640.640 INFO    ] time= 05/06/2026 07:54:51
[2026-06-05 07:54:51,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:54:51,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:54:51,727.727 INFO    ] No existing commands found in stream
[2026-06-05 07:54:56,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:54:56,740.740 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 07:54:59,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:54:59,198.198 INFO    ] Checking for system updates...
[2026-06-05 07:54:59,234.234 INFO    ] 200
[2026-06-05 07:54:59,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:59,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:54:59,298.298 INFO    ] No update needed
[2026-06-05 07:54:59,300.300 INFO    ] Checking for camera pi updates...
[2026-06-05 07:54:59,337.337 INFO    ] 200
[2026-06-05 07:54:59,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:54:59,385.385 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:54:59,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:54:59,534.534 INFO    ] No camera update needed
[2026-06-05 07:54:59,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:54:59,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:54:59,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:54:59,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:55:01,631.631 INFO    ] ================================================
[2026-06-05 07:55:01,662.662 INFO    ] Launching Daemon at Fri Jun  5 07:55:01 IST 2026
[2026-06-05 07:55:01,686.686 INFO    ] ================================================
[2026-06-05 07:55:02,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:55:02
[2026-06-05 07:55:03,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:55:03,452.452 INFO    ] Initializing speech engine...
[2026-06-05 07:55:03,461.461 INFO    ] 2026-06-05 07:55:03
[2026-06-05 07:55:03,742.742 INFO    ] 2026-06-05 07:55:03
[2026-06-05 07:55:03,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:55:04,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:55:04,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:55:04,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:55:04,250.250 INFO    ] time= 05/06/2026 07:55:04
[2026-06-05 07:55:04,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:55:04,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:55:04,432.432 INFO    ] No existing commands found in stream
[2026-06-05 07:55:09,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:55:09,463.463 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 07:55:09,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:55:09,948.948 INFO    ] Checking for system updates...
[2026-06-05 07:55:09,985.985 INFO    ] 200
[2026-06-05 07:55:09,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:10,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:55:10,044.044 INFO    ] No update needed
[2026-06-05 07:55:10,046.046 INFO    ] Checking for camera pi updates...
[2026-06-05 07:55:10,084.084 INFO    ] 200
[2026-06-05 07:55:10,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:10,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:55:10,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:55:10,171.171 INFO    ] No camera update needed
[2026-06-05 07:55:10,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:55:10,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:55:10,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:55:10,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:55:12,227.227 INFO    ] ================================================
[2026-06-05 07:55:12,242.242 INFO    ] Launching Daemon at Fri Jun  5 07:55:12 IST 2026
[2026-06-05 07:55:12,252.252 INFO    ] ================================================
[2026-06-05 07:55:12,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:55:12
[2026-06-05 07:55:13,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:55:13,653.653 INFO    ] Initializing speech engine...
[2026-06-05 07:55:13,661.661 INFO    ] 2026-06-05 07:55:13
[2026-06-05 07:55:13,937.937 INFO    ] 2026-06-05 07:55:13
[2026-06-05 07:55:13,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:55:14,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:55:14,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:55:14,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:55:14,419.419 INFO    ] time= 05/06/2026 07:55:14
[2026-06-05 07:55:14,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:55:14,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:55:14,567.567 INFO    ] No existing commands found in stream
[2026-06-05 07:55:19,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:55:19,582.582 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 07:55:20,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:55:20,141.141 INFO    ] Checking for system updates...
[2026-06-05 07:55:20,178.178 INFO    ] 200
[2026-06-05 07:55:20,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:20,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:55:20,235.235 INFO    ] No update needed
[2026-06-05 07:55:20,238.238 INFO    ] Checking for camera pi updates...
[2026-06-05 07:55:20,271.271 INFO    ] 200
[2026-06-05 07:55:20,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:20,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:55:20,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:55:20,363.363 INFO    ] No camera update needed
[2026-06-05 07:55:20,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:55:20,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:55:20,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:55:20,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:55:22,417.417 INFO    ] ================================================
[2026-06-05 07:55:22,432.432 INFO    ] Launching Daemon at Fri Jun  5 07:55:22 IST 2026
[2026-06-05 07:55:22,450.450 INFO    ] ================================================
[2026-06-05 07:55:23,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:55:23
[2026-06-05 07:55:23,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:55:23,912.912 INFO    ] Initializing speech engine...
[2026-06-05 07:55:23,922.922 INFO    ] 2026-06-05 07:55:23
[2026-06-05 07:55:24,183.183 INFO    ] 2026-06-05 07:55:24
[2026-06-05 07:55:24,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:55:24,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:55:24,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:55:24,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:55:24,641.641 INFO    ] time= 05/06/2026 07:55:24
[2026-06-05 07:55:24,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:55:24,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:55:24,791.791 INFO    ] No existing commands found in stream
[2026-06-05 07:55:29,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:55:29,806.806 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 07:55:30,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:55:30,597.597 INFO    ] Checking for system updates...
[2026-06-05 07:55:30,638.638 INFO    ] 200
[2026-06-05 07:55:30,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:30,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:55:30,703.703 INFO    ] No update needed
[2026-06-05 07:55:30,705.705 INFO    ] Checking for camera pi updates...
[2026-06-05 07:55:30,743.743 INFO    ] 200
[2026-06-05 07:55:30,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:30,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:55:30,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:55:30,835.835 INFO    ] No camera update needed
[2026-06-05 07:55:30,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:55:30,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:55:30,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:55:30,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:55:32,891.891 INFO    ] ================================================
[2026-06-05 07:55:32,906.906 INFO    ] Launching Daemon at Fri Jun  5 07:55:32 IST 2026
[2026-06-05 07:55:32,917.917 INFO    ] ================================================
[2026-06-05 07:55:33,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:55:33
[2026-06-05 07:55:34,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:55:34,357.357 INFO    ] Initializing speech engine...
[2026-06-05 07:55:34,366.366 INFO    ] 2026-06-05 07:55:34
[2026-06-05 07:55:34,627.627 INFO    ] 2026-06-05 07:55:34
[2026-06-05 07:55:34,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:55:34,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:55:34,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:55:35,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:55:35,065.065 INFO    ] time= 05/06/2026 07:55:35
[2026-06-05 07:55:35,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:55:35,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:55:35,248.248 INFO    ] No existing commands found in stream
[2026-06-05 07:55:40,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:55:40,262.262 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 07:55:41,174.174 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:55:41,177.177 INFO    ] Checking for system updates...
[2026-06-05 07:55:41,214.214 INFO    ] 200
[2026-06-05 07:55:41,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:41,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:55:41,273.273 INFO    ] No update needed
[2026-06-05 07:55:41,275.275 INFO    ] Checking for camera pi updates...
[2026-06-05 07:55:41,309.309 INFO    ] 200
[2026-06-05 07:55:41,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:41,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:55:41,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:55:41,409.409 INFO    ] No camera update needed
[2026-06-05 07:55:41,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:55:41,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:55:41,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:55:41,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:55:43,465.465 INFO    ] ================================================
[2026-06-05 07:55:43,480.480 INFO    ] Launching Daemon at Fri Jun  5 07:55:43 IST 2026
[2026-06-05 07:55:43,490.490 INFO    ] ================================================
[2026-06-05 07:55:44,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:55:44
[2026-06-05 07:55:44,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:55:44,900.900 INFO    ] Initializing speech engine...
[2026-06-05 07:55:44,923.923 INFO    ] 2026-06-05 07:55:44
[2026-06-05 07:55:45,179.179 INFO    ] 2026-06-05 07:55:45
[2026-06-05 07:55:45,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:55:45,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:55:45,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:55:45,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:55:45,656.656 INFO    ] time= 05/06/2026 07:55:45
[2026-06-05 07:55:45,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:55:45,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:55:45,809.809 INFO    ] No existing commands found in stream
[2026-06-05 07:55:50,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:55:50,823.823 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 07:55:51,487.487 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:55:51,490.490 INFO    ] Checking for system updates...
[2026-06-05 07:55:51,526.526 INFO    ] 200
[2026-06-05 07:55:51,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:51,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:55:51,584.584 INFO    ] No update needed
[2026-06-05 07:55:51,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 07:55:51,629.629 INFO    ] 200
[2026-06-05 07:55:51,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:55:51,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:55:51,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:55:51,730.730 INFO    ] No camera update needed
[2026-06-05 07:55:51,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:55:51,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:55:51,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:55:51,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:55:53,784.784 INFO    ] ================================================
[2026-06-05 07:55:53,799.799 INFO    ] Launching Daemon at Fri Jun  5 07:55:53 IST 2026
[2026-06-05 07:55:53,810.810 INFO    ] ================================================
[2026-06-05 07:55:54,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:55:54
[2026-06-05 07:55:54,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:55:55,269.269 INFO    ] Initializing speech engine...
[2026-06-05 07:55:55,276.276 INFO    ] 2026-06-05 07:55:55
[2026-06-05 07:55:55,522.522 INFO    ] 2026-06-05 07:55:55
[2026-06-05 07:55:55,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:55:55,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:55:55,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:55:55,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:55:55,995.995 INFO    ] time= 05/06/2026 07:55:55
[2026-06-05 07:55:56,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:55:56,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:55:56,225.225 INFO    ] No existing commands found in stream
[2026-06-05 07:56:01,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:56:01,252.252 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 07:56:04,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:56:04,023.023 INFO    ] Checking for system updates...
[2026-06-05 07:56:04,063.063 INFO    ] 200
[2026-06-05 07:56:04,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:04,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:56:04,127.127 INFO    ] No update needed
[2026-06-05 07:56:04,129.129 INFO    ] Checking for camera pi updates...
[2026-06-05 07:56:04,163.163 INFO    ] 200
[2026-06-05 07:56:04,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:04,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:56:04,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:56:04,241.241 INFO    ] No camera update needed
[2026-06-05 07:56:04,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:56:04,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:56:04,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:56:04,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:56:06,299.299 INFO    ] ================================================
[2026-06-05 07:56:06,314.314 INFO    ] Launching Daemon at Fri Jun  5 07:56:06 IST 2026
[2026-06-05 07:56:06,325.325 INFO    ] ================================================
[2026-06-05 07:56:06,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:56:06
[2026-06-05 07:56:07,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:56:07,763.763 INFO    ] Initializing speech engine...
[2026-06-05 07:56:07,772.772 INFO    ] 2026-06-05 07:56:07
[2026-06-05 07:56:08,031.031 INFO    ] 2026-06-05 07:56:08
[2026-06-05 07:56:08,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:56:08,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:56:08,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:56:08,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:56:08,394.394 INFO    ] time= 05/06/2026 07:56:08
[2026-06-05 07:56:08,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:56:08,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:56:08,470.470 INFO    ] No existing commands found in stream
[2026-06-05 07:56:13,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:56:13,486.486 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 07:56:15,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:56:15,510.510 INFO    ] Checking for system updates...
[2026-06-05 07:56:15,545.545 INFO    ] 200
[2026-06-05 07:56:15,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:15,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:56:15,609.609 INFO    ] No update needed
[2026-06-05 07:56:15,611.611 INFO    ] Checking for camera pi updates...
[2026-06-05 07:56:15,649.649 INFO    ] 200
[2026-06-05 07:56:15,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:15,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:56:15,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:56:15,737.737 INFO    ] No camera update needed
[2026-06-05 07:56:15,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:56:15,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:56:15,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:56:15,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:56:17,793.793 INFO    ] ================================================
[2026-06-05 07:56:17,808.808 INFO    ] Launching Daemon at Fri Jun  5 07:56:17 IST 2026
[2026-06-05 07:56:17,819.819 INFO    ] ================================================
[2026-06-05 07:56:18,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:56:18
[2026-06-05 07:56:18,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:56:19,269.269 INFO    ] Initializing speech engine...
[2026-06-05 07:56:19,279.279 INFO    ] 2026-06-05 07:56:19
[2026-06-05 07:56:19,541.541 INFO    ] 2026-06-05 07:56:19
[2026-06-05 07:56:19,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:56:19,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:56:19,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:56:19,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:56:20,015.015 INFO    ] time= 05/06/2026 07:56:19
[2026-06-05 07:56:20,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:56:20,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:56:20,219.219 INFO    ] No existing commands found in stream
[2026-06-05 07:56:25,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:56:25,249.249 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 07:56:28,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:56:28,950.950 INFO    ] Checking for system updates...
[2026-06-05 07:56:28,986.986 INFO    ] 200
[2026-06-05 07:56:28,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:29,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:56:29,051.051 INFO    ] No update needed
[2026-06-05 07:56:29,053.053 INFO    ] Checking for camera pi updates...
[2026-06-05 07:56:29,087.087 INFO    ] 200
[2026-06-05 07:56:29,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:29,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:56:29,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:56:29,179.179 INFO    ] No camera update needed
[2026-06-05 07:56:29,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:56:29,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:56:29,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:56:29,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:56:31,237.237 INFO    ] ================================================
[2026-06-05 07:56:31,253.253 INFO    ] Launching Daemon at Fri Jun  5 07:56:31 IST 2026
[2026-06-05 07:56:31,263.263 INFO    ] ================================================
[2026-06-05 07:56:31,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:56:31
[2026-06-05 07:56:32,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:56:32,943.943 INFO    ] Initializing speech engine...
[2026-06-05 07:56:32,950.950 INFO    ] 2026-06-05 07:56:32
[2026-06-05 07:56:33,209.209 INFO    ] 2026-06-05 07:56:33
[2026-06-05 07:56:33,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:56:33,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:56:33,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:56:33,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:56:33,568.568 INFO    ] time= 05/06/2026 07:56:33
[2026-06-05 07:56:33,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:56:33,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:56:33,736.736 INFO    ] No existing commands found in stream
[2026-06-05 07:56:38,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:56:38,775.775 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 07:56:40,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:56:40,807.807 INFO    ] Checking for system updates...
[2026-06-05 07:56:40,844.844 INFO    ] 200
[2026-06-05 07:56:40,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:40,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:56:40,910.910 INFO    ] No update needed
[2026-06-05 07:56:40,912.912 INFO    ] Checking for camera pi updates...
[2026-06-05 07:56:40,951.951 INFO    ] 200
[2026-06-05 07:56:40,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:40,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:56:41,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:56:41,040.040 INFO    ] No camera update needed
[2026-06-05 07:56:41,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:56:41,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:56:41,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:56:41,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:56:43,098.098 INFO    ] ================================================
[2026-06-05 07:56:43,113.113 INFO    ] Launching Daemon at Fri Jun  5 07:56:43 IST 2026
[2026-06-05 07:56:43,124.124 INFO    ] ================================================
[2026-06-05 07:56:43,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:56:43
[2026-06-05 07:56:44,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:56:44,696.696 INFO    ] Initializing speech engine...
[2026-06-05 07:56:44,706.706 INFO    ] 2026-06-05 07:56:44
[2026-06-05 07:56:45,017.017 INFO    ] 2026-06-05 07:56:44
[2026-06-05 07:56:45,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:56:45,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:56:45,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:56:45,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:56:45,493.493 INFO    ] time= 05/06/2026 07:56:45
[2026-06-05 07:56:45,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:56:45,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:56:45,674.674 INFO    ] No existing commands found in stream
[2026-06-05 07:56:50,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:56:50,703.703 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 07:56:54,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:56:54,627.627 INFO    ] Checking for system updates...
[2026-06-05 07:56:54,667.667 INFO    ] 200
[2026-06-05 07:56:54,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:54,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:56:54,731.731 INFO    ] No update needed
[2026-06-05 07:56:54,733.733 INFO    ] Checking for camera pi updates...
[2026-06-05 07:56:54,771.771 INFO    ] 200
[2026-06-05 07:56:54,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:56:54,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:56:54,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:56:54,868.868 INFO    ] No camera update needed
[2026-06-05 07:56:54,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:56:54,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:56:54,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:56:54,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:56:56,927.927 INFO    ] ================================================
[2026-06-05 07:56:56,942.942 INFO    ] Launching Daemon at Fri Jun  5 07:56:56 IST 2026
[2026-06-05 07:56:56,953.953 INFO    ] ================================================
[2026-06-05 07:56:57,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:56:57
[2026-06-05 07:56:58,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:56:58,414.414 INFO    ] Initializing speech engine...
[2026-06-05 07:56:58,420.420 INFO    ] 2026-06-05 07:56:58
[2026-06-05 07:56:58,682.682 INFO    ] 2026-06-05 07:56:58
[2026-06-05 07:56:58,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:56:58,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:56:58,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:56:59,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:56:59,159.159 INFO    ] time= 05/06/2026 07:56:59
[2026-06-05 07:56:59,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:56:59,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:56:59,294.294 INFO    ] No existing commands found in stream
[2026-06-05 07:57:04,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:57:04,313.313 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 07:57:04,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:57:04,898.898 INFO    ] Checking for system updates...
[2026-06-05 07:57:04,938.938 INFO    ] 200
[2026-06-05 07:57:04,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:04,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:57:04,997.997 INFO    ] No update needed
[2026-06-05 07:57:04,999.999 INFO    ] Checking for camera pi updates...
[2026-06-05 07:57:05,035.035 INFO    ] 200
[2026-06-05 07:57:05,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:05,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:57:05,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:57:05,114.114 INFO    ] No camera update needed
[2026-06-05 07:57:05,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:57:05,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:57:05,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:57:05,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:57:07,171.171 INFO    ] ================================================
[2026-06-05 07:57:07,186.186 INFO    ] Launching Daemon at Fri Jun  5 07:57:07 IST 2026
[2026-06-05 07:57:07,197.197 INFO    ] ================================================
[2026-06-05 07:57:07,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:57:07
[2026-06-05 07:57:08,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:57:08,719.719 INFO    ] Initializing speech engine...
[2026-06-05 07:57:08,730.730 INFO    ] 2026-06-05 07:57:08
[2026-06-05 07:57:09,007.007 INFO    ] 2026-06-05 07:57:08
[2026-06-05 07:57:09,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:57:09,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:57:09,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:57:09,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:57:09,535.535 INFO    ] time= 05/06/2026 07:57:09
[2026-06-05 07:57:09,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:57:09,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:57:09,683.683 INFO    ] No existing commands found in stream
[2026-06-05 07:57:14,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:57:14,712.712 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 07:57:18,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:57:18,023.023 INFO    ] Checking for system updates...
[2026-06-05 07:57:18,073.073 INFO    ] 200
[2026-06-05 07:57:18,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:18,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:57:18,139.139 INFO    ] No update needed
[2026-06-05 07:57:18,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 07:57:18,177.177 INFO    ] 200
[2026-06-05 07:57:18,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:18,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:57:18,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:57:18,280.280 INFO    ] No camera update needed
[2026-06-05 07:57:18,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:57:18,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:57:18,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:57:18,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:57:20,338.338 INFO    ] ================================================
[2026-06-05 07:57:20,353.353 INFO    ] Launching Daemon at Fri Jun  5 07:57:20 IST 2026
[2026-06-05 07:57:20,364.364 INFO    ] ================================================
[2026-06-05 07:57:21,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:57:21
[2026-06-05 07:57:21,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:57:21,999.999 INFO    ] Initializing speech engine...
[2026-06-05 07:57:22,011.011 INFO    ] 2026-06-05 07:57:22
[2026-06-05 07:57:22,289.289 INFO    ] 2026-06-05 07:57:22
[2026-06-05 07:57:22,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:57:22,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:57:22,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:57:22,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:57:22,772.772 INFO    ] time= 05/06/2026 07:57:22
[2026-06-05 07:57:22,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:57:22,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:57:22,951.951 INFO    ] No existing commands found in stream
[2026-06-05 07:57:27,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:57:27,978.978 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 07:57:30,276.276 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:57:30,279.279 INFO    ] Checking for system updates...
[2026-06-05 07:57:30,317.317 INFO    ] 200
[2026-06-05 07:57:30,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:30,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:57:30,377.377 INFO    ] No update needed
[2026-06-05 07:57:30,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 07:57:30,414.414 INFO    ] 200
[2026-06-05 07:57:30,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:30,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:57:30,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:57:30,510.510 INFO    ] No camera update needed
[2026-06-05 07:57:30,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:57:30,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:57:30,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:57:30,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:57:32,566.566 INFO    ] ================================================
[2026-06-05 07:57:32,581.581 INFO    ] Launching Daemon at Fri Jun  5 07:57:32 IST 2026
[2026-06-05 07:57:32,592.592 INFO    ] ================================================
[2026-06-05 07:57:33,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:57:33
[2026-06-05 07:57:33,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:57:34,033.033 INFO    ] Initializing speech engine...
[2026-06-05 07:57:34,047.047 INFO    ] 2026-06-05 07:57:34
[2026-06-05 07:57:34,337.337 INFO    ] 2026-06-05 07:57:34
[2026-06-05 07:57:34,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:57:34,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:57:34,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:57:34,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:57:34,747.747 INFO    ] time= 05/06/2026 07:57:34
[2026-06-05 07:57:34,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:57:34,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:57:34,859.859 INFO    ] No existing commands found in stream
[2026-06-05 07:57:39,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:57:39,873.873 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 07:57:41,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 07:57:41,826.826 INFO    ] Checking for system updates...
[2026-06-05 07:57:41,862.862 INFO    ] 200
[2026-06-05 07:57:41,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:41,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:57:41,931.931 INFO    ] No update needed
[2026-06-05 07:57:41,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 07:57:41,967.967 INFO    ] 200
[2026-06-05 07:57:41,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:42,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:57:42,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:57:42,060.060 INFO    ] No camera update needed
[2026-06-05 07:57:42,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:57:42,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:57:42,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:57:42,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:57:44,114.114 INFO    ] ================================================
[2026-06-05 07:57:44,129.129 INFO    ] Launching Daemon at Fri Jun  5 07:57:44 IST 2026
[2026-06-05 07:57:44,140.140 INFO    ] ================================================
[2026-06-05 07:57:44,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:57:44
[2026-06-05 07:57:45,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:57:45,611.611 INFO    ] Initializing speech engine...
[2026-06-05 07:57:45,620.620 INFO    ] 2026-06-05 07:57:45
[2026-06-05 07:57:45,875.875 INFO    ] 2026-06-05 07:57:45
[2026-06-05 07:57:45,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:57:46,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:57:46,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:57:46,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:57:46,239.239 INFO    ] time= 05/06/2026 07:57:46
[2026-06-05 07:57:46,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:57:46,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:57:46,405.405 INFO    ] No existing commands found in stream
[2026-06-05 07:57:51,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:57:51,433.433 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 07:57:54,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:57:54,016.016 INFO    ] Checking for system updates...
[2026-06-05 07:57:54,052.052 INFO    ] 200
[2026-06-05 07:57:54,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:54,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:57:54,110.110 INFO    ] No update needed
[2026-06-05 07:57:54,112.112 INFO    ] Checking for camera pi updates...
[2026-06-05 07:57:54,147.147 INFO    ] 200
[2026-06-05 07:57:54,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:57:54,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:57:54,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:57:54,237.237 INFO    ] No camera update needed
[2026-06-05 07:57:54,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:57:54,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:57:54,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:57:54,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:57:56,294.294 INFO    ] ================================================
[2026-06-05 07:57:56,309.309 INFO    ] Launching Daemon at Fri Jun  5 07:57:56 IST 2026
[2026-06-05 07:57:56,319.319 INFO    ] ================================================
[2026-06-05 07:57:56,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:57:56
[2026-06-05 07:57:57,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:57:57,993.993 INFO    ] Initializing speech engine...
[2026-06-05 07:57:58,002.002 INFO    ] 2026-06-05 07:57:57
[2026-06-05 07:57:58,287.287 INFO    ] 2026-06-05 07:57:58
[2026-06-05 07:57:58,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:57:58,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:57:58,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:57:58,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:57:58,780.780 INFO    ] time= 05/06/2026 07:57:58
[2026-06-05 07:57:58,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:57:58,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:57:58,997.997 INFO    ] No existing commands found in stream
[2026-06-05 07:58:04,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:58:04,031.031 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 07:58:04,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:58:04,686.686 INFO    ] Checking for system updates...
[2026-06-05 07:58:04,723.723 INFO    ] 200
[2026-06-05 07:58:04,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:04,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:04,790.790 INFO    ] No update needed
[2026-06-05 07:58:04,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 07:58:04,834.834 INFO    ] 200
[2026-06-05 07:58:04,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:04,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:58:04,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:04,921.921 INFO    ] No camera update needed
[2026-06-05 07:58:04,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:58:04,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:58:04,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:58:04,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:58:06,979.979 INFO    ] ================================================
[2026-06-05 07:58:06,994.994 INFO    ] Launching Daemon at Fri Jun  5 07:58:06 IST 2026
[2026-06-05 07:58:07,005.005 INFO    ] ================================================
[2026-06-05 07:58:07,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:58:07
[2026-06-05 07:58:08,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:58:08,622.622 INFO    ] Initializing speech engine...
[2026-06-05 07:58:08,630.630 INFO    ] 2026-06-05 07:58:08
[2026-06-05 07:58:08,952.952 INFO    ] 2026-06-05 07:58:08
[2026-06-05 07:58:09,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:58:09,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:58:09,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:58:09,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:58:09,462.462 INFO    ] time= 05/06/2026 07:58:09
[2026-06-05 07:58:09,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:58:09,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:58:09,622.622 INFO    ] No existing commands found in stream
[2026-06-05 07:58:14,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:58:14,648.648 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 07:58:16,029.029 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:58:16,032.032 INFO    ] Checking for system updates...
[2026-06-05 07:58:16,074.074 INFO    ] 200
[2026-06-05 07:58:16,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:16,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:16,138.138 INFO    ] No update needed
[2026-06-05 07:58:16,141.141 INFO    ] Checking for camera pi updates...
[2026-06-05 07:58:16,176.176 INFO    ] 200
[2026-06-05 07:58:16,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:16,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:58:16,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:16,262.262 INFO    ] No camera update needed
[2026-06-05 07:58:16,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:58:16,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:58:16,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:58:16,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:58:18,324.324 INFO    ] ================================================
[2026-06-05 07:58:18,341.341 INFO    ] Launching Daemon at Fri Jun  5 07:58:18 IST 2026
[2026-06-05 07:58:18,351.351 INFO    ] ================================================
[2026-06-05 07:58:18,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:58:18
[2026-06-05 07:58:19,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:58:19,864.864 INFO    ] Initializing speech engine...
[2026-06-05 07:58:19,871.871 INFO    ] 2026-06-05 07:58:19
[2026-06-05 07:58:20,148.148 INFO    ] 2026-06-05 07:58:20
[2026-06-05 07:58:20,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:58:20,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:58:20,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:58:20,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:58:20,637.637 INFO    ] time= 05/06/2026 07:58:20
[2026-06-05 07:58:20,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:58:20,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:58:20,781.781 INFO    ] No existing commands found in stream
[2026-06-05 07:58:25,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:58:25,797.797 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 07:58:29,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:58:29,634.634 INFO    ] Checking for system updates...
[2026-06-05 07:58:29,670.670 INFO    ] 200
[2026-06-05 07:58:29,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:29,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:29,729.729 INFO    ] No update needed
[2026-06-05 07:58:29,731.731 INFO    ] Checking for camera pi updates...
[2026-06-05 07:58:29,769.769 INFO    ] 200
[2026-06-05 07:58:29,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:29,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:58:29,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:29,860.860 INFO    ] No camera update needed
[2026-06-05 07:58:29,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:58:29,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:58:29,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:58:29,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:58:31,921.921 INFO    ] ================================================
[2026-06-05 07:58:31,937.937 INFO    ] Launching Daemon at Fri Jun  5 07:58:31 IST 2026
[2026-06-05 07:58:31,948.948 INFO    ] ================================================
[2026-06-05 07:58:32,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:58:32
[2026-06-05 07:58:33,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:58:33,450.450 INFO    ] Initializing speech engine...
[2026-06-05 07:58:33,472.472 INFO    ] 2026-06-05 07:58:33
[2026-06-05 07:58:33,748.748 INFO    ] 2026-06-05 07:58:33
[2026-06-05 07:58:33,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:58:33,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:58:33,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:58:34,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:58:34,114.114 INFO    ] time= 05/06/2026 07:58:34
[2026-06-05 07:58:34,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:58:34,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:58:34,223.223 INFO    ] No existing commands found in stream
[2026-06-05 07:58:39,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:58:39,261.261 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 07:58:40,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 07:58:40,838.838 INFO    ] Checking for system updates...
[2026-06-05 07:58:40,874.874 INFO    ] 200
[2026-06-05 07:58:40,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:40,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:40,931.931 INFO    ] No update needed
[2026-06-05 07:58:40,934.934 INFO    ] Checking for camera pi updates...
[2026-06-05 07:58:40,973.973 INFO    ] 200
[2026-06-05 07:58:40,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:41,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:58:41,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:41,065.065 INFO    ] No camera update needed
[2026-06-05 07:58:41,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:58:41,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:58:41,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:58:41,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:58:43,120.120 INFO    ] ================================================
[2026-06-05 07:58:43,136.136 INFO    ] Launching Daemon at Fri Jun  5 07:58:43 IST 2026
[2026-06-05 07:58:43,148.148 INFO    ] ================================================
[2026-06-05 07:58:43,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:58:43
[2026-06-05 07:58:44,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:58:44,784.784 INFO    ] Initializing speech engine...
[2026-06-05 07:58:44,793.793 INFO    ] 2026-06-05 07:58:44
[2026-06-05 07:58:45,079.079 INFO    ] 2026-06-05 07:58:45
[2026-06-05 07:58:45,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:58:45,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:58:45,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:58:45,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:58:45,619.619 INFO    ] time= 05/06/2026 07:58:45
[2026-06-05 07:58:45,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:58:45,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:58:45,775.775 INFO    ] No existing commands found in stream
[2026-06-05 07:58:50,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:58:50,805.805 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 07:58:52,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:58:52,720.720 INFO    ] Checking for system updates...
[2026-06-05 07:58:52,757.757 INFO    ] 200
[2026-06-05 07:58:52,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:52,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:52,830.830 INFO    ] No update needed
[2026-06-05 07:58:52,832.832 INFO    ] Checking for camera pi updates...
[2026-06-05 07:58:52,867.867 INFO    ] 200
[2026-06-05 07:58:52,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:58:52,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:58:52,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:58:52,960.960 INFO    ] No camera update needed
[2026-06-05 07:58:52,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:58:52,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:58:52,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:58:52,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:58:55,016.016 INFO    ] ================================================
[2026-06-05 07:58:55,032.032 INFO    ] Launching Daemon at Fri Jun  5 07:58:55 IST 2026
[2026-06-05 07:58:55,044.044 INFO    ] ================================================
[2026-06-05 07:58:55,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:58:55
[2026-06-05 07:58:56,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:58:56,523.523 INFO    ] Initializing speech engine...
[2026-06-05 07:58:56,536.536 INFO    ] 2026-06-05 07:58:56
[2026-06-05 07:58:56,821.821 INFO    ] 2026-06-05 07:58:56
[2026-06-05 07:58:56,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:58:57,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:58:57,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:58:57,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:58:57,287.287 INFO    ] time= 05/06/2026 07:58:57
[2026-06-05 07:58:57,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:58:57,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:58:57,504.504 INFO    ] No existing commands found in stream
[2026-06-05 07:59:02,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:59:02,533.533 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 07:59:05,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 07:59:05,205.205 INFO    ] Checking for system updates...
[2026-06-05 07:59:05,243.243 INFO    ] 200
[2026-06-05 07:59:05,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:05,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:59:05,310.310 INFO    ] No update needed
[2026-06-05 07:59:05,312.312 INFO    ] Checking for camera pi updates...
[2026-06-05 07:59:05,346.346 INFO    ] 200
[2026-06-05 07:59:05,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:05,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:59:05,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:59:05,521.521 INFO    ] No camera update needed
[2026-06-05 07:59:05,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:59:05,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:59:05,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:59:05,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:59:07,578.578 INFO    ] ================================================
[2026-06-05 07:59:07,593.593 INFO    ] Launching Daemon at Fri Jun  5 07:59:07 IST 2026
[2026-06-05 07:59:07,604.604 INFO    ] ================================================
[2026-06-05 07:59:08,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:59:08
[2026-06-05 07:59:08,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:59:09,136.136 INFO    ] Initializing speech engine...
[2026-06-05 07:59:09,148.148 INFO    ] 2026-06-05 07:59:09
[2026-06-05 07:59:09,432.432 INFO    ] 2026-06-05 07:59:09
[2026-06-05 07:59:09,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:59:09,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:59:09,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:59:09,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:59:09,906.906 INFO    ] time= 05/06/2026 07:59:09
[2026-06-05 07:59:09,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:59:09,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:59:10,045.045 INFO    ] No existing commands found in stream
[2026-06-05 07:59:15,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:59:15,061.061 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 07:59:15,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:59:15,680.680 INFO    ] Checking for system updates...
[2026-06-05 07:59:15,719.719 INFO    ] 200
[2026-06-05 07:59:15,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:15,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:59:15,787.787 INFO    ] No update needed
[2026-06-05 07:59:15,789.789 INFO    ] Checking for camera pi updates...
[2026-06-05 07:59:15,828.828 INFO    ] 200
[2026-06-05 07:59:15,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:15,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:59:15,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:59:15,920.920 INFO    ] No camera update needed
[2026-06-05 07:59:15,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:59:15,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:59:15,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:59:15,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:59:17,974.974 INFO    ] ================================================
[2026-06-05 07:59:17,990.990 INFO    ] Launching Daemon at Fri Jun  5 07:59:17 IST 2026
[2026-06-05 07:59:18,001.001 INFO    ] ================================================
[2026-06-05 07:59:18,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:59:18
[2026-06-05 07:59:19,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:59:19,462.462 INFO    ] Initializing speech engine...
[2026-06-05 07:59:19,476.476 INFO    ] 2026-06-05 07:59:19
[2026-06-05 07:59:19,794.794 INFO    ] 2026-06-05 07:59:19
[2026-06-05 07:59:19,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:59:20,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:59:20,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:59:20,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:59:20,299.299 INFO    ] time= 05/06/2026 07:59:20
[2026-06-05 07:59:20,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:59:20,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:59:20,453.453 INFO    ] No existing commands found in stream
[2026-06-05 07:59:25,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:59:25,478.478 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 07:59:27,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 07:59:27,884.884 INFO    ] Checking for system updates...
[2026-06-05 07:59:27,922.922 INFO    ] 200
[2026-06-05 07:59:27,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:27,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:59:27,981.981 INFO    ] No update needed
[2026-06-05 07:59:27,983.983 INFO    ] Checking for camera pi updates...
[2026-06-05 07:59:28,023.023 INFO    ] 200
[2026-06-05 07:59:28,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:28,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:59:28,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 07:59:28,118.118 INFO    ] No camera update needed
[2026-06-05 07:59:28,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:59:28,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:59:28,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:59:28,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:59:30,175.175 INFO    ] ================================================
[2026-06-05 07:59:30,190.190 INFO    ] Launching Daemon at Fri Jun  5 07:59:30 IST 2026
[2026-06-05 07:59:30,201.201 INFO    ] ================================================
[2026-06-05 07:59:30,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:59:30
[2026-06-05 07:59:31,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:59:31,650.650 INFO    ] Initializing speech engine...
[2026-06-05 07:59:31,665.665 INFO    ] 2026-06-05 07:59:31
[2026-06-05 07:59:31,958.958 INFO    ] 2026-06-05 07:59:31
[2026-06-05 07:59:31,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:59:32,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:59:32,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:59:32,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:59:32,354.354 INFO    ] time= 05/06/2026 07:59:32
[2026-06-05 07:59:32,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:59:32,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:59:32,439.439 INFO    ] No existing commands found in stream
[2026-06-05 07:59:37,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:59:37,457.457 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 07:59:38,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 07:59:38,911.911 INFO    ] Checking for system updates...
[2026-06-05 07:59:38,948.948 INFO    ] 200
[2026-06-05 07:59:38,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:39,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:59:39,018.018 INFO    ] No update needed
[2026-06-05 07:59:39,021.021 INFO    ] Checking for camera pi updates...
[2026-06-05 07:59:39,061.061 INFO    ] 200
[2026-06-05 07:59:39,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:39,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:59:39,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:59:39,157.157 INFO    ] No camera update needed
[2026-06-05 07:59:39,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:59:39,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:59:39,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:59:39,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:59:41,218.218 INFO    ] ================================================
[2026-06-05 07:59:41,234.234 INFO    ] Launching Daemon at Fri Jun  5 07:59:41 IST 2026
[2026-06-05 07:59:41,246.246 INFO    ] ================================================
[2026-06-05 07:59:41,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:59:41
[2026-06-05 07:59:42,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:59:42,931.931 INFO    ] Initializing speech engine...
[2026-06-05 07:59:42,942.942 INFO    ] 2026-06-05 07:59:42
[2026-06-05 07:59:43,256.256 INFO    ] 2026-06-05 07:59:43
[2026-06-05 07:59:43,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:59:43,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:59:43,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:59:43,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:59:43,778.778 INFO    ] time= 05/06/2026 07:59:43
[2026-06-05 07:59:43,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:59:43,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:59:43,935.935 INFO    ] No existing commands found in stream
[2026-06-05 07:59:48,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 07:59:48,955.955 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 07:59:51,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 07:59:51,634.634 INFO    ] Checking for system updates...
[2026-06-05 07:59:51,672.672 INFO    ] 200
[2026-06-05 07:59:51,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:51,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:59:51,732.732 INFO    ] No update needed
[2026-06-05 07:59:51,735.735 INFO    ] Checking for camera pi updates...
[2026-06-05 07:59:51,775.775 INFO    ] 200
[2026-06-05 07:59:51,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 07:59:51,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 07:59:51,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 07:59:51,872.872 INFO    ] No camera update needed
[2026-06-05 07:59:51,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 07:59:51,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 07:59:51,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 07:59:51,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 07:59:53,927.927 INFO    ] ================================================
[2026-06-05 07:59:53,943.943 INFO    ] Launching Daemon at Fri Jun  5 07:59:53 IST 2026
[2026-06-05 07:59:53,954.954 INFO    ] ================================================
[2026-06-05 07:59:54,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 07:59:54
[2026-06-05 07:59:55,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 07:59:55,622.622 INFO    ] Initializing speech engine...
[2026-06-05 07:59:55,629.629 INFO    ] 2026-06-05 07:59:55
[2026-06-05 07:59:55,925.925 INFO    ] 2026-06-05 07:59:55
[2026-06-05 07:59:55,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 07:59:56,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 07:59:56,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 07:59:56,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 07:59:56,393.393 INFO    ] time= 05/06/2026 07:59:56
[2026-06-05 07:59:56,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 07:59:56,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-05 07:59:56,540.540 INFO    ] No existing commands found in stream
[2026-06-05 08:00:01,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:00:01,557.557 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 08:00:03,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:00:03,511.511 INFO    ] Checking for system updates...
[2026-06-05 08:00:03,697.697 INFO    ] 200
[2026-06-05 08:00:03,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:04,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:04,104.104 INFO    ] No update needed
[2026-06-05 08:00:04,158.158 INFO    ] Checking for camera pi updates...
[2026-06-05 08:00:04,477.477 INFO    ] 200
[2026-06-05 08:00:04,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:04,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:00:04,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:04,871.871 INFO    ] No camera update needed
[2026-06-05 08:00:04,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:00:04,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:00:04,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:00:04,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:00:07,018.018 INFO    ] ================================================
[2026-06-05 08:00:07,034.034 INFO    ] Launching Daemon at Fri Jun  5 08:00:07 IST 2026
[2026-06-05 08:00:07,045.045 INFO    ] ================================================
[2026-06-05 08:00:07,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:00:07
[2026-06-05 08:00:08,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:00:08,489.489 INFO    ] Initializing speech engine...
[2026-06-05 08:00:08,494.494 INFO    ] 2026-06-05 08:00:08
[2026-06-05 08:00:08,743.743 INFO    ] 2026-06-05 08:00:08
[2026-06-05 08:00:08,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:00:08,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:00:08,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:00:09,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:00:09,131.131 INFO    ] time= 05/06/2026 08:00:09
[2026-06-05 08:00:09,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:00:09,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:00:09,295.295 INFO    ] No existing commands found in stream
[2026-06-05 08:00:14,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:00:14,328.328 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 08:00:17,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:00:17,587.587 INFO    ] Checking for system updates...
[2026-06-05 08:00:17,623.623 INFO    ] 200
[2026-06-05 08:00:17,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:17,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:17,681.681 INFO    ] No update needed
[2026-06-05 08:00:17,684.684 INFO    ] Checking for camera pi updates...
[2026-06-05 08:00:17,718.718 INFO    ] 200
[2026-06-05 08:00:17,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:17,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:00:17,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:17,810.810 INFO    ] No camera update needed
[2026-06-05 08:00:17,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:00:17,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:00:17,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:00:17,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:00:19,867.867 INFO    ] ================================================
[2026-06-05 08:00:19,883.883 INFO    ] Launching Daemon at Fri Jun  5 08:00:19 IST 2026
[2026-06-05 08:00:19,894.894 INFO    ] ================================================
[2026-06-05 08:00:20,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:00:20
[2026-06-05 08:00:21,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:00:21,316.316 INFO    ] Initializing speech engine...
[2026-06-05 08:00:21,323.323 INFO    ] 2026-06-05 08:00:21
[2026-06-05 08:00:21,621.621 INFO    ] 2026-06-05 08:00:21
[2026-06-05 08:00:21,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:00:21,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:00:21,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:00:21,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:00:21,993.993 INFO    ] time= 05/06/2026 08:00:21
[2026-06-05 08:00:22,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:00:22,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:00:22,075.075 INFO    ] No existing commands found in stream
[2026-06-05 08:00:27,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:00:27,091.091 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 08:00:30,777.777 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:00:30,780.780 INFO    ] Checking for system updates...
[2026-06-05 08:00:30,823.823 INFO    ] 200
[2026-06-05 08:00:30,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:30,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:30,893.893 INFO    ] No update needed
[2026-06-05 08:00:30,896.896 INFO    ] Checking for camera pi updates...
[2026-06-05 08:00:30,937.937 INFO    ] 200
[2026-06-05 08:00:30,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:30,983.983 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:00:31,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:31,030.030 INFO    ] No camera update needed
[2026-06-05 08:00:31,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:00:31,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:00:31,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:00:31,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:00:33,094.094 INFO    ] ================================================
[2026-06-05 08:00:33,114.114 INFO    ] Launching Daemon at Fri Jun  5 08:00:33 IST 2026
[2026-06-05 08:00:33,126.126 INFO    ] ================================================
[2026-06-05 08:00:33,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:00:33
[2026-06-05 08:00:34,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:00:34,778.778 INFO    ] Initializing speech engine...
[2026-06-05 08:00:34,785.785 INFO    ] 2026-06-05 08:00:34
[2026-06-05 08:00:35,066.066 INFO    ] 2026-06-05 08:00:35
[2026-06-05 08:00:35,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:00:35,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:00:35,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:00:35,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:00:35,544.544 INFO    ] time= 05/06/2026 08:00:35
[2026-06-05 08:00:35,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:00:35,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:00:35,748.748 INFO    ] No existing commands found in stream
[2026-06-05 08:00:40,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:00:40,778.778 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 08:00:44,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:00:44,426.426 INFO    ] Checking for system updates...
[2026-06-05 08:00:44,468.468 INFO    ] 200
[2026-06-05 08:00:44,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:44,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:44,529.529 INFO    ] No update needed
[2026-06-05 08:00:44,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 08:00:44,571.571 INFO    ] 200
[2026-06-05 08:00:44,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:44,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:00:44,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:44,671.671 INFO    ] No camera update needed
[2026-06-05 08:00:44,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:00:44,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:00:44,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:00:44,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:00:46,731.731 INFO    ] ================================================
[2026-06-05 08:00:46,746.746 INFO    ] Launching Daemon at Fri Jun  5 08:00:46 IST 2026
[2026-06-05 08:00:46,757.757 INFO    ] ================================================
[2026-06-05 08:00:47,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:00:47
[2026-06-05 08:00:47,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:00:48,198.198 INFO    ] Initializing speech engine...
[2026-06-05 08:00:48,207.207 INFO    ] 2026-06-05 08:00:48
[2026-06-05 08:00:48,459.459 INFO    ] 2026-06-05 08:00:48
[2026-06-05 08:00:48,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:00:48,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:00:48,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:00:48,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:00:48,953.953 INFO    ] time= 05/06/2026 08:00:48
[2026-06-05 08:00:49,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:00:49,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:00:49,091.091 INFO    ] No existing commands found in stream
[2026-06-05 08:00:54,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:00:54,106.106 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 08:00:56,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:00:56,688.688 INFO    ] Checking for system updates...
[2026-06-05 08:00:56,729.729 INFO    ] 200
[2026-06-05 08:00:56,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:56,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:56,790.790 INFO    ] No update needed
[2026-06-05 08:00:56,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 08:00:56,827.827 INFO    ] 200
[2026-06-05 08:00:56,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:00:56,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:00:56,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:00:56,927.927 INFO    ] No camera update needed
[2026-06-05 08:00:56,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:00:56,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:00:56,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:00:56,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:00:58,986.986 INFO    ] ================================================
[2026-06-05 08:00:59,002.002 INFO    ] Launching Daemon at Fri Jun  5 08:00:58 IST 2026
[2026-06-05 08:00:59,013.013 INFO    ] ================================================
[2026-06-05 08:00:59,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:00:59
[2026-06-05 08:01:00,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:01:00,459.459 INFO    ] Initializing speech engine...
[2026-06-05 08:01:00,465.465 INFO    ] 2026-06-05 08:01:00
[2026-06-05 08:01:00,765.765 INFO    ] 2026-06-05 08:01:00
[2026-06-05 08:01:00,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:01:01,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:01:01,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:01:01,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:01:01,257.257 INFO    ] time= 05/06/2026 08:01:01
[2026-06-05 08:01:01,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:01:01,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:01:01,470.470 INFO    ] No existing commands found in stream
[2026-06-05 08:01:06,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:01:06,503.503 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 08:01:10,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:01:10,817.817 INFO    ] Checking for system updates...
[2026-06-05 08:01:10,854.854 INFO    ] 200
[2026-06-05 08:01:10,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:10,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:01:10,914.914 INFO    ] No update needed
[2026-06-05 08:01:10,917.917 INFO    ] Checking for camera pi updates...
[2026-06-05 08:01:10,951.951 INFO    ] 200
[2026-06-05 08:01:10,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:10,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:01:11,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:01:11,142.142 INFO    ] No camera update needed
[2026-06-05 08:01:11,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:01:11,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:01:11,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:01:11,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:01:13,199.199 INFO    ] ================================================
[2026-06-05 08:01:13,214.214 INFO    ] Launching Daemon at Fri Jun  5 08:01:13 IST 2026
[2026-06-05 08:01:13,226.226 INFO    ] ================================================
[2026-06-05 08:01:13,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:01:13
[2026-06-05 08:01:14,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:01:14,687.687 INFO    ] Initializing speech engine...
[2026-06-05 08:01:14,712.712 INFO    ] 2026-06-05 08:01:14
[2026-06-05 08:01:14,995.995 INFO    ] 2026-06-05 08:01:14
[2026-06-05 08:01:15,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:01:15,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:01:15,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:01:15,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:01:15,355.355 INFO    ] time= 05/06/2026 08:01:15
[2026-06-05 08:01:15,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:01:15,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:01:15,441.441 INFO    ] No existing commands found in stream
[2026-06-05 08:01:20,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:01:20,457.457 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 08:01:22,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:01:22,288.288 INFO    ] Checking for system updates...
[2026-06-05 08:01:22,328.328 INFO    ] 200
[2026-06-05 08:01:22,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:22,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:01:22,385.385 INFO    ] No update needed
[2026-06-05 08:01:22,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 08:01:22,426.426 INFO    ] 200
[2026-06-05 08:01:22,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:22,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:01:22,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:01:22,513.513 INFO    ] No camera update needed
[2026-06-05 08:01:22,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:01:22,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:01:22,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:01:22,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:01:24,570.570 INFO    ] ================================================
[2026-06-05 08:01:24,585.585 INFO    ] Launching Daemon at Fri Jun  5 08:01:24 IST 2026
[2026-06-05 08:01:24,596.596 INFO    ] ================================================
[2026-06-05 08:01:25,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:01:25
[2026-06-05 08:01:25,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:01:26,257.257 INFO    ] Initializing speech engine...
[2026-06-05 08:01:26,265.265 INFO    ] 2026-06-05 08:01:26
[2026-06-05 08:01:26,557.557 INFO    ] 2026-06-05 08:01:26
[2026-06-05 08:01:26,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:01:26,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:01:26,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:01:26,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:01:27,028.028 INFO    ] time= 05/06/2026 08:01:26
[2026-06-05 08:01:27,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:01:27,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:01:27,175.175 INFO    ] No existing commands found in stream
[2026-06-05 08:01:32,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:01:32,191.191 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 08:01:34,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:01:34,344.344 INFO    ] Checking for system updates...
[2026-06-05 08:01:34,392.392 INFO    ] 200
[2026-06-05 08:01:34,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:34,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:01:34,452.452 INFO    ] No update needed
[2026-06-05 08:01:34,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 08:01:34,491.491 INFO    ] 200
[2026-06-05 08:01:34,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:34,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:01:34,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:01:34,580.580 INFO    ] No camera update needed
[2026-06-05 08:01:34,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:01:34,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:01:34,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:01:34,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:01:36,641.641 INFO    ] ================================================
[2026-06-05 08:01:36,657.657 INFO    ] Launching Daemon at Fri Jun  5 08:01:36 IST 2026
[2026-06-05 08:01:36,668.668 INFO    ] ================================================
[2026-06-05 08:01:37,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:01:37
[2026-06-05 08:01:37,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:01:38,301.301 INFO    ] Initializing speech engine...
[2026-06-05 08:01:38,312.312 INFO    ] 2026-06-05 08:01:38
[2026-06-05 08:01:38,626.626 INFO    ] 2026-06-05 08:01:38
[2026-06-05 08:01:38,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:01:38,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:01:38,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:01:39,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:01:39,146.146 INFO    ] time= 05/06/2026 08:01:39
[2026-06-05 08:01:39,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:01:39,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:01:39,315.315 INFO    ] No existing commands found in stream
[2026-06-05 08:01:44,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:01:44,343.343 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 08:01:47,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:01:47,376.376 INFO    ] Checking for system updates...
[2026-06-05 08:01:47,412.412 INFO    ] 200
[2026-06-05 08:01:47,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:47,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:01:47,469.469 INFO    ] No update needed
[2026-06-05 08:01:47,472.472 INFO    ] Checking for camera pi updates...
[2026-06-05 08:01:47,506.506 INFO    ] 200
[2026-06-05 08:01:47,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:47,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:01:47,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:01:47,600.600 INFO    ] No camera update needed
[2026-06-05 08:01:47,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:01:47,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:01:47,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:01:47,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:01:49,655.655 INFO    ] ================================================
[2026-06-05 08:01:49,671.671 INFO    ] Launching Daemon at Fri Jun  5 08:01:49 IST 2026
[2026-06-05 08:01:49,683.683 INFO    ] ================================================
[2026-06-05 08:01:50,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:01:50
[2026-06-05 08:01:50,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:01:51,100.100 INFO    ] Initializing speech engine...
[2026-06-05 08:01:51,109.109 INFO    ] 2026-06-05 08:01:51
[2026-06-05 08:01:51,367.367 INFO    ] 2026-06-05 08:01:51
[2026-06-05 08:01:51,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:01:51,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:01:51,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:01:51,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:01:51,751.751 INFO    ] time= 05/06/2026 08:01:51
[2026-06-05 08:01:51,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:01:51,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:01:51,881.881 INFO    ] No existing commands found in stream
[2026-06-05 08:01:56,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:01:56,894.894 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 08:01:57,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:01:57,410.410 INFO    ] Checking for system updates...
[2026-06-05 08:01:57,447.447 INFO    ] 200
[2026-06-05 08:01:57,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:57,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:01:57,515.515 INFO    ] No update needed
[2026-06-05 08:01:57,519.519 INFO    ] Checking for camera pi updates...
[2026-06-05 08:01:57,558.558 INFO    ] 200
[2026-06-05 08:01:57,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:01:57,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:01:57,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:01:57,658.658 INFO    ] No camera update needed
[2026-06-05 08:01:57,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:01:57,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:01:57,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:01:57,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:01:59,724.724 INFO    ] ================================================
[2026-06-05 08:01:59,740.740 INFO    ] Launching Daemon at Fri Jun  5 08:01:59 IST 2026
[2026-06-05 08:01:59,751.751 INFO    ] ================================================
[2026-06-05 08:02:00,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:02:00
[2026-06-05 08:02:00,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:02:01,210.210 INFO    ] Initializing speech engine...
[2026-06-05 08:02:01,218.218 INFO    ] 2026-06-05 08:02:01
[2026-06-05 08:02:01,470.470 INFO    ] 2026-06-05 08:02:01
[2026-06-05 08:02:01,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:02:01,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:02:01,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:02:01,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:02:01,973.973 INFO    ] time= 05/06/2026 08:02:01
[2026-06-05 08:02:01,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:02:01,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:02:02,069.069 INFO    ] No existing commands found in stream
[2026-06-05 08:02:07,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:02:07,104.104 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 08:02:11,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:02:11,485.485 INFO    ] Checking for system updates...
[2026-06-05 08:02:11,522.522 INFO    ] 200
[2026-06-05 08:02:11,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:02:11,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:02:11,591.591 INFO    ] No update needed
[2026-06-05 08:02:11,594.594 INFO    ] Checking for camera pi updates...
[2026-06-05 08:02:11,630.630 INFO    ] 200
[2026-06-05 08:02:11,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:02:11,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:02:11,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:02:11,729.729 INFO    ] No camera update needed
[2026-06-05 08:02:11,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:02:11,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:02:11,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:02:11,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:02:13,796.796 INFO    ] ================================================
[2026-06-05 08:02:13,812.812 INFO    ] Launching Daemon at Fri Jun  5 08:02:13 IST 2026
[2026-06-05 08:02:13,823.823 INFO    ] ================================================
[2026-06-05 08:02:14,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:02:14
[2026-06-05 08:02:15,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:02:15,278.278 INFO    ] Initializing speech engine...
[2026-06-05 08:02:15,301.301 INFO    ] 2026-06-05 08:02:15
[2026-06-05 08:02:15,555.555 INFO    ] 2026-06-05 08:02:15
[2026-06-05 08:02:15,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:02:15,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:02:15,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:02:15,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:02:15,896.896 INFO    ] time= 05/06/2026 08:02:15
[2026-06-05 08:02:15,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:02:15,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:02:16,008.008 INFO    ] No existing commands found in stream
[2026-06-05 08:02:21,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:02:21,023.023 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 08:02:24,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:02:24,804.804 INFO    ] Checking for system updates...
[2026-06-05 08:02:24,844.844 INFO    ] 200
[2026-06-05 08:02:24,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:02:24,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:02:24,902.902 INFO    ] No update needed
[2026-06-05 08:02:24,904.904 INFO    ] Checking for camera pi updates...
[2026-06-05 08:02:24,938.938 INFO    ] 200
[2026-06-05 08:02:24,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:02:24,983.983 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:02:25,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:02:25,027.027 INFO    ] No camera update needed
[2026-06-05 08:02:25,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:02:25,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:02:25,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:02:25,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:02:27,082.082 INFO    ] ================================================
[2026-06-05 08:02:27,098.098 INFO    ] Launching Daemon at Fri Jun  5 08:02:27 IST 2026
[2026-06-05 08:02:27,109.109 INFO    ] ================================================
[2026-06-05 08:02:27,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:02:27
[2026-06-05 08:02:28,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:02:28,534.534 INFO    ] Initializing speech engine...
[2026-06-05 08:02:28,541.541 INFO    ] 2026-06-05 08:02:28
[2026-06-05 08:02:28,806.806 INFO    ] 2026-06-05 08:02:28
[2026-06-05 08:02:28,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:02:29,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:02:29,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:02:29,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:02:29,259.259 INFO    ] time= 05/06/2026 08:02:29
[2026-06-05 08:02:29,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:02:29,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:02:29,410.410 INFO    ] No existing commands found in stream
[2026-06-05 08:02:34,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:02:34,422.422 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 08:02:36,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:02:36,170.170 INFO    ] Checking for system updates...
[2026-06-05 08:02:36,207.207 INFO    ] 200
[2026-06-05 08:02:36,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:02:36,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:02:36,265.265 INFO    ] No update needed
[2026-06-05 08:02:36,267.267 INFO    ] Checking for camera pi updates...
[2026-06-05 08:02:36,301.301 INFO    ] 200
[2026-06-05 08:02:36,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:02:36,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:02:36,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:02:36,387.387 INFO    ] No camera update needed
[2026-06-05 08:02:36,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:02:36,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:02:36,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:02:36,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:02:38,442.442 INFO    ] ================================================
[2026-06-05 08:02:38,457.457 INFO    ] Launching Daemon at Fri Jun  5 08:02:38 IST 2026
[2026-06-05 08:02:38,468.468 INFO    ] ================================================
[2026-06-05 08:02:39,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:02:39
[2026-06-05 08:02:39,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:02:39,997.997 INFO    ] Initializing speech engine...
[2026-06-05 08:02:40,004.004 INFO    ] 2026-06-05 08:02:39
[2026-06-05 08:02:40,264.264 INFO    ] 2026-06-05 08:02:40
[2026-06-05 08:02:40,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:02:40,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:02:40,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:02:40,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:02:40,691.691 INFO    ] time= 05/06/2026 08:02:40
[2026-06-05 08:02:40,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:02:40,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:02:40,863.863 INFO    ] No existing commands found in stream
[2026-06-05 08:02:45,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:02:45,878.878 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 08:02:49,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:02:49,952.952 INFO    ] Checking for system updates...
[2026-06-05 08:02:49,988.988 INFO    ] 200
[2026-06-05 08:02:49,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:02:50,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:02:50,048.048 INFO    ] No update needed
[2026-06-05 08:02:50,051.051 INFO    ] Checking for camera pi updates...
[2026-06-05 08:02:50,085.085 INFO    ] 200
[2026-06-05 08:02:50,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:02:50,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:02:50,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:02:50,181.181 INFO    ] No camera update needed
[2026-06-05 08:02:50,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:02:50,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:02:50,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:02:50,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:02:52,235.235 INFO    ] ================================================
[2026-06-05 08:02:52,251.251 INFO    ] Launching Daemon at Fri Jun  5 08:02:52 IST 2026
[2026-06-05 08:02:52,262.262 INFO    ] ================================================
[2026-06-05 08:02:52,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:02:52
[2026-06-05 08:02:53,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:02:53,668.668 INFO    ] Initializing speech engine...
[2026-06-05 08:02:53,677.677 INFO    ] 2026-06-05 08:02:53
[2026-06-05 08:02:53,952.952 INFO    ] 2026-06-05 08:02:53
[2026-06-05 08:02:53,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:02:54,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:02:54,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:02:54,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:02:54,296.296 INFO    ] time= 05/06/2026 08:02:54
[2026-06-05 08:02:54,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:02:54,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:02:54,411.411 INFO    ] No existing commands found in stream
[2026-06-05 08:02:59,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:02:59,449.449 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 08:03:01,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:03:01,475.475 INFO    ] Checking for system updates...
[2026-06-05 08:03:01,511.511 INFO    ] 200
[2026-06-05 08:03:01,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:01,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:03:01,577.577 INFO    ] No update needed
[2026-06-05 08:03:01,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 08:03:01,613.613 INFO    ] 200
[2026-06-05 08:03:01,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:01,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:03:01,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:03:01,794.794 INFO    ] No camera update needed
[2026-06-05 08:03:01,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:03:01,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:03:01,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:03:01,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:03:03,871.871 INFO    ] ================================================
[2026-06-05 08:03:03,886.886 INFO    ] Launching Daemon at Fri Jun  5 08:03:03 IST 2026
[2026-06-05 08:03:03,897.897 INFO    ] ================================================
[2026-06-05 08:03:04,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:03:04
[2026-06-05 08:03:05,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:03:05,381.381 INFO    ] Initializing speech engine...
[2026-06-05 08:03:05,390.390 INFO    ] 2026-06-05 08:03:05
[2026-06-05 08:03:05,651.651 INFO    ] 2026-06-05 08:03:05
[2026-06-05 08:03:05,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:03:05,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:03:05,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:03:06,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:03:06,157.157 INFO    ] time= 05/06/2026 08:03:06
[2026-06-05 08:03:06,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:03:06,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:03:06,323.323 INFO    ] No existing commands found in stream
[2026-06-05 08:03:11,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:03:11,361.361 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 08:03:12,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:03:12,645.645 INFO    ] Checking for system updates...
[2026-06-05 08:03:12,687.687 INFO    ] 200
[2026-06-05 08:03:12,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:12,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:03:12,758.758 INFO    ] No update needed
[2026-06-05 08:03:12,760.760 INFO    ] Checking for camera pi updates...
[2026-06-05 08:03:12,794.794 INFO    ] 200
[2026-06-05 08:03:12,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:12,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:03:12,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:03:12,984.984 INFO    ] No camera update needed
[2026-06-05 08:03:12,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:03:12,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:03:12,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:03:12,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:03:15,041.041 INFO    ] ================================================
[2026-06-05 08:03:15,056.056 INFO    ] Launching Daemon at Fri Jun  5 08:03:15 IST 2026
[2026-06-05 08:03:15,067.067 INFO    ] ================================================
[2026-06-05 08:03:15,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:03:15
[2026-06-05 08:03:16,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:03:16,497.497 INFO    ] Initializing speech engine...
[2026-06-05 08:03:16,506.506 INFO    ] 2026-06-05 08:03:16
[2026-06-05 08:03:16,815.815 INFO    ] 2026-06-05 08:03:16
[2026-06-05 08:03:16,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:03:17,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:03:17,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:03:17,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:03:17,209.209 INFO    ] time= 05/06/2026 08:03:17
[2026-06-05 08:03:17,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:03:17,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:03:17,339.339 INFO    ] No existing commands found in stream
[2026-06-05 08:03:22,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:03:22,354.354 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-05 08:03:22,755.755 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:03:22,758.758 INFO    ] Checking for system updates...
[2026-06-05 08:03:22,793.793 INFO    ] 200
[2026-06-05 08:03:22,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:22,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:03:22,851.851 INFO    ] No update needed
[2026-06-05 08:03:22,854.854 INFO    ] Checking for camera pi updates...
[2026-06-05 08:03:22,893.893 INFO    ] 200
[2026-06-05 08:03:22,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:22,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:03:22,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:03:22,979.979 INFO    ] No camera update needed
[2026-06-05 08:03:22,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:03:22,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:03:22,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:03:22,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:03:25,038.038 INFO    ] ================================================
[2026-06-05 08:03:25,053.053 INFO    ] Launching Daemon at Fri Jun  5 08:03:25 IST 2026
[2026-06-05 08:03:25,063.063 INFO    ] ================================================
[2026-06-05 08:03:25,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:03:25
[2026-06-05 08:03:26,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:03:26,547.547 INFO    ] Initializing speech engine...
[2026-06-05 08:03:26,555.555 INFO    ] 2026-06-05 08:03:26
[2026-06-05 08:03:26,849.849 INFO    ] 2026-06-05 08:03:26
[2026-06-05 08:03:26,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:03:27,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:03:27,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:03:27,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:03:27,336.336 INFO    ] time= 05/06/2026 08:03:27
[2026-06-05 08:03:27,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:03:27,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:03:27,470.470 INFO    ] No existing commands found in stream
[2026-06-05 08:03:32,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:03:32,487.487 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 08:03:35,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:03:35,358.358 INFO    ] Checking for system updates...
[2026-06-05 08:03:35,401.401 INFO    ] 200
[2026-06-05 08:03:35,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:35,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:03:35,465.465 INFO    ] No update needed
[2026-06-05 08:03:35,468.468 INFO    ] Checking for camera pi updates...
[2026-06-05 08:03:35,503.503 INFO    ] 200
[2026-06-05 08:03:35,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:35,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:03:35,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:03:35,610.610 INFO    ] No camera update needed
[2026-06-05 08:03:35,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:03:35,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:03:35,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:03:35,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:03:37,668.668 INFO    ] ================================================
[2026-06-05 08:03:37,683.683 INFO    ] Launching Daemon at Fri Jun  5 08:03:37 IST 2026
[2026-06-05 08:03:37,694.694 INFO    ] ================================================
[2026-06-05 08:03:38,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:03:38
[2026-06-05 08:03:38,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:03:39,174.174 INFO    ] Initializing speech engine...
[2026-06-05 08:03:39,186.186 INFO    ] 2026-06-05 08:03:39
[2026-06-05 08:03:39,463.463 INFO    ] 2026-06-05 08:03:39
[2026-06-05 08:03:39,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:03:39,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:03:39,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:03:39,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:03:39,994.994 INFO    ] time= 05/06/2026 08:03:39
[2026-06-05 08:03:40,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:03:40,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:03:40,182.182 INFO    ] No existing commands found in stream
[2026-06-05 08:03:45,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:03:45,200.200 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 08:03:46,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:03:46,962.962 INFO    ] Checking for system updates...
[2026-06-05 08:03:46,999.999 INFO    ] 200
[2026-06-05 08:03:47,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:47,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:03:47,066.066 INFO    ] No update needed
[2026-06-05 08:03:47,068.068 INFO    ] Checking for camera pi updates...
[2026-06-05 08:03:47,107.107 INFO    ] 200
[2026-06-05 08:03:47,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:47,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:03:47,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:03:47,197.197 INFO    ] No camera update needed
[2026-06-05 08:03:47,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:03:47,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:03:47,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:03:47,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:03:49,252.252 INFO    ] ================================================
[2026-06-05 08:03:49,267.267 INFO    ] Launching Daemon at Fri Jun  5 08:03:49 IST 2026
[2026-06-05 08:03:49,278.278 INFO    ] ================================================
[2026-06-05 08:03:49,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:03:49
[2026-06-05 08:03:50,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:03:50,680.680 INFO    ] Initializing speech engine...
[2026-06-05 08:03:50,702.702 INFO    ] 2026-06-05 08:03:50
[2026-06-05 08:03:50,957.957 INFO    ] 2026-06-05 08:03:50
[2026-06-05 08:03:50,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:03:51,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:03:51,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:03:51,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:03:51,298.298 INFO    ] time= 05/06/2026 08:03:51
[2026-06-05 08:03:51,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:03:51,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:03:51,409.409 INFO    ] No existing commands found in stream
[2026-06-05 08:03:56,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:03:56,424.424 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 08:03:58,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:03:58,641.641 INFO    ] Checking for system updates...
[2026-06-05 08:03:58,677.677 INFO    ] 200
[2026-06-05 08:03:58,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:58,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:03:58,734.734 INFO    ] No update needed
[2026-06-05 08:03:58,737.737 INFO    ] Checking for camera pi updates...
[2026-06-05 08:03:58,771.771 INFO    ] 200
[2026-06-05 08:03:58,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:03:58,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:03:58,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:03:58,868.868 INFO    ] No camera update needed
[2026-06-05 08:03:58,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:03:58,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:03:58,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:03:58,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:04:00,925.925 INFO    ] ================================================
[2026-06-05 08:04:00,941.941 INFO    ] Launching Daemon at Fri Jun  5 08:04:00 IST 2026
[2026-06-05 08:04:00,952.952 INFO    ] ================================================
[2026-06-05 08:04:01,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:04:01
[2026-06-05 08:04:02,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:04:02,834.834 INFO    ] Initializing speech engine...
[2026-06-05 08:04:02,846.846 INFO    ] 2026-06-05 08:04:02
[2026-06-05 08:04:03,214.214 INFO    ] 2026-06-05 08:04:03
[2026-06-05 08:04:03,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:04:03,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:04:03,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:04:03,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:04:03,638.638 INFO    ] time= 05/06/2026 08:04:03
[2026-06-05 08:04:03,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:04:03,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:04:03,806.806 INFO    ] No existing commands found in stream
[2026-06-05 08:04:08,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:04:08,821.821 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 08:04:11,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:04:11,237.237 INFO    ] Checking for system updates...
[2026-06-05 08:04:11,273.273 INFO    ] 200
[2026-06-05 08:04:11,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:04:11,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:04:11,332.332 INFO    ] No update needed
[2026-06-05 08:04:11,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 08:04:11,368.368 INFO    ] 200
[2026-06-05 08:04:11,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:04:11,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:04:11,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:04:11,464.464 INFO    ] No camera update needed
[2026-06-05 08:04:11,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:04:11,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:04:11,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:04:11,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:04:13,519.519 INFO    ] ================================================
[2026-06-05 08:04:13,534.534 INFO    ] Launching Daemon at Fri Jun  5 08:04:13 IST 2026
[2026-06-05 08:04:13,546.546 INFO    ] ================================================
[2026-06-05 08:04:14,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:04:14
[2026-06-05 08:04:14,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:04:15,048.048 INFO    ] Initializing speech engine...
[2026-06-05 08:04:15,057.057 INFO    ] 2026-06-05 08:04:15
[2026-06-05 08:04:15,367.367 INFO    ] 2026-06-05 08:04:15
[2026-06-05 08:04:15,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:04:15,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:04:15,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:04:15,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:04:15,721.721 INFO    ] time= 05/06/2026 08:04:15
[2026-06-05 08:04:15,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:04:15,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:04:15,845.845 INFO    ] No existing commands found in stream
[2026-06-05 08:04:20,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:04:20,860.860 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 08:04:23,084.084 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:04:23,087.087 INFO    ] Checking for system updates...
[2026-06-05 08:04:23,128.128 INFO    ] 200
[2026-06-05 08:04:23,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:04:23,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:04:23,186.186 INFO    ] No update needed
[2026-06-05 08:04:23,188.188 INFO    ] Checking for camera pi updates...
[2026-06-05 08:04:23,227.227 INFO    ] 200
[2026-06-05 08:04:23,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:04:23,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:04:23,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:04:23,318.318 INFO    ] No camera update needed
[2026-06-05 08:04:23,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:04:23,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:04:23,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:04:23,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:04:25,373.373 INFO    ] ================================================
[2026-06-05 08:04:25,389.389 INFO    ] Launching Daemon at Fri Jun  5 08:04:25 IST 2026
[2026-06-05 08:04:25,400.400 INFO    ] ================================================
[2026-06-05 08:04:25,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:04:25
[2026-06-05 08:04:26,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:04:26,861.861 INFO    ] Initializing speech engine...
[2026-06-05 08:04:26,870.870 INFO    ] 2026-06-05 08:04:26
[2026-06-05 08:04:27,145.145 INFO    ] 2026-06-05 08:04:27
[2026-06-05 08:04:27,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:04:27,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:04:27,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:04:27,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:04:27,609.609 INFO    ] time= 05/06/2026 08:04:27
[2026-06-05 08:04:27,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:04:27,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:04:27,744.744 INFO    ] No existing commands found in stream
[2026-06-05 08:04:32,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:04:32,761.761 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 08:04:34,449.449 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:04:34,452.452 INFO    ] Checking for system updates...
[2026-06-05 08:04:34,493.493 INFO    ] 200
[2026-06-05 08:04:34,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:04:34,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:04:34,553.553 INFO    ] No update needed
[2026-06-05 08:04:34,555.555 INFO    ] Checking for camera pi updates...
[2026-06-05 08:04:34,590.590 INFO    ] 200
[2026-06-05 08:04:34,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:04:34,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:04:34,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:04:34,667.667 INFO    ] No camera update needed
[2026-06-05 08:04:34,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:04:34,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:04:34,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:04:34,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:04:36,723.723 INFO    ] ================================================
[2026-06-05 08:04:36,739.739 INFO    ] Launching Daemon at Fri Jun  5 08:04:36 IST 2026
[2026-06-05 08:04:36,751.751 INFO    ] ================================================
[2026-06-05 08:04:37,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:04:37
[2026-06-05 08:04:38,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:04:38,411.411 INFO    ] Initializing speech engine...
[2026-06-05 08:04:38,424.424 INFO    ] 2026-06-05 08:04:38
[2026-06-05 08:04:38,698.698 INFO    ] 2026-06-05 08:04:38
[2026-06-05 08:04:38,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:04:38,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:04:38,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:04:39,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:04:39,210.210 INFO    ] time= 05/06/2026 08:04:39
[2026-06-05 08:04:39,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:04:39,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:04:39,394.394 INFO    ] No existing commands found in stream
[2026-06-05 08:04:44,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:04:44,420.420 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 08:04:48,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:04:48,589.589 INFO    ] Checking for system updates...
[2026-06-05 08:04:48,631.631 INFO    ] 200
[2026-06-05 08:04:48,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:04:48,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:04:48,690.690 INFO    ] No update needed
[2026-06-05 08:04:48,693.693 INFO    ] Checking for camera pi updates...
[2026-06-05 08:04:48,732.732 INFO    ] 200
[2026-06-05 08:04:48,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:04:48,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:04:48,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:04:48,828.828 INFO    ] No camera update needed
[2026-06-05 08:04:48,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:04:48,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:04:48,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:04:48,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:04:50,887.887 INFO    ] ================================================
[2026-06-05 08:04:50,903.903 INFO    ] Launching Daemon at Fri Jun  5 08:04:50 IST 2026
[2026-06-05 08:04:50,914.914 INFO    ] ================================================
[2026-06-05 08:04:51,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:04:51
[2026-06-05 08:04:52,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:04:52,453.453 INFO    ] Initializing speech engine...
[2026-06-05 08:04:52,476.476 INFO    ] 2026-06-05 08:04:52
[2026-06-05 08:04:52,732.732 INFO    ] 2026-06-05 08:04:52
[2026-06-05 08:04:52,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:04:52,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:04:53,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:04:53,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:04:53,208.208 INFO    ] time= 05/06/2026 08:04:53
[2026-06-05 08:04:53,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:04:53,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:04:53,356.356 INFO    ] No existing commands found in stream
[2026-06-05 08:04:58,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:04:58,371.371 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-05 08:05:01,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:05:01,925.925 INFO    ] Checking for system updates...
[2026-06-05 08:05:02,012.012 INFO    ] 200
[2026-06-05 08:05:02,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:02,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:05:02,165.165 INFO    ] No update needed
[2026-06-05 08:05:02,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 08:05:02,232.232 INFO    ] 200
[2026-06-05 08:05:02,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:02,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:05:02,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:05:02,329.329 INFO    ] No camera update needed
[2026-06-05 08:05:02,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:05:02,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:05:02,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:05:02,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:05:04,391.391 INFO    ] ================================================
[2026-06-05 08:05:04,407.407 INFO    ] Launching Daemon at Fri Jun  5 08:05:04 IST 2026
[2026-06-05 08:05:04,418.418 INFO    ] ================================================
[2026-06-05 08:05:05,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:05:05
[2026-06-05 08:05:05,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:05:05,987.987 INFO    ] Initializing speech engine...
[2026-06-05 08:05:05,995.995 INFO    ] 2026-06-05 08:05:05
[2026-06-05 08:05:06,243.243 INFO    ] 2026-06-05 08:05:06
[2026-06-05 08:05:06,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:05:06,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:05:06,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:05:06,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:05:06,738.738 INFO    ] time= 05/06/2026 08:05:06
[2026-06-05 08:05:06,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:05:06,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:05:06,894.894 INFO    ] No existing commands found in stream
[2026-06-05 08:05:11,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:05:11,932.932 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 08:05:13,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:05:13,710.710 INFO    ] Checking for system updates...
[2026-06-05 08:05:13,751.751 INFO    ] 200
[2026-06-05 08:05:13,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:13,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:05:13,816.816 INFO    ] No update needed
[2026-06-05 08:05:13,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 08:05:13,854.854 INFO    ] 200
[2026-06-05 08:05:13,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:13,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:05:13,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:05:13,946.946 INFO    ] No camera update needed
[2026-06-05 08:05:13,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:05:13,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:05:13,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:05:13,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:05:16,008.008 INFO    ] ================================================
[2026-06-05 08:05:16,024.024 INFO    ] Launching Daemon at Fri Jun  5 08:05:16 IST 2026
[2026-06-05 08:05:16,035.035 INFO    ] ================================================
[2026-06-05 08:05:16,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:05:16
[2026-06-05 08:05:17,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:05:17,457.457 INFO    ] Initializing speech engine...
[2026-06-05 08:05:17,465.465 INFO    ] 2026-06-05 08:05:17
[2026-06-05 08:05:17,772.772 INFO    ] 2026-06-05 08:05:17
[2026-06-05 08:05:17,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:05:17,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:05:18,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:05:18,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:05:18,162.162 INFO    ] time= 05/06/2026 08:05:18
[2026-06-05 08:05:18,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:05:18,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:05:18,224.224 INFO    ] No existing commands found in stream
[2026-06-05 08:05:23,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:05:23,238.238 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 08:05:24,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:05:24,019.019 INFO    ] Checking for system updates...
[2026-06-05 08:05:24,057.057 INFO    ] 200
[2026-06-05 08:05:24,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:24,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:05:24,114.114 INFO    ] No update needed
[2026-06-05 08:05:24,117.117 INFO    ] Checking for camera pi updates...
[2026-06-05 08:05:24,151.151 INFO    ] 200
[2026-06-05 08:05:24,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:24,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:05:24,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:05:24,353.353 INFO    ] No camera update needed
[2026-06-05 08:05:24,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:05:24,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:05:24,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:05:24,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:05:26,409.409 INFO    ] ================================================
[2026-06-05 08:05:26,424.424 INFO    ] Launching Daemon at Fri Jun  5 08:05:26 IST 2026
[2026-06-05 08:05:26,436.436 INFO    ] ================================================
[2026-06-05 08:05:27,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:05:27
[2026-06-05 08:05:27,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:05:27,882.882 INFO    ] Initializing speech engine...
[2026-06-05 08:05:27,907.907 INFO    ] 2026-06-05 08:05:27
[2026-06-05 08:05:28,187.187 INFO    ] 2026-06-05 08:05:28
[2026-06-05 08:05:28,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:05:28,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:05:28,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:05:28,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:05:28,581.581 INFO    ] time= 05/06/2026 08:05:28
[2026-06-05 08:05:28,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:05:28,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:05:28,711.711 INFO    ] No existing commands found in stream
[2026-06-05 08:05:33,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:05:33,726.726 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 08:05:34,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:05:34,825.825 INFO    ] Checking for system updates...
[2026-06-05 08:05:34,861.861 INFO    ] 200
[2026-06-05 08:05:34,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:34,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:05:34,920.920 INFO    ] No update needed
[2026-06-05 08:05:34,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 08:05:34,956.956 INFO    ] 200
[2026-06-05 08:05:34,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:35,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:05:35,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:05:35,055.055 INFO    ] No camera update needed
[2026-06-05 08:05:35,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:05:35,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:05:35,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:05:35,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:05:37,112.112 INFO    ] ================================================
[2026-06-05 08:05:37,128.128 INFO    ] Launching Daemon at Fri Jun  5 08:05:37 IST 2026
[2026-06-05 08:05:37,140.140 INFO    ] ================================================
[2026-06-05 08:05:37,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:05:37
[2026-06-05 08:05:38,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:05:38,592.592 INFO    ] Initializing speech engine...
[2026-06-05 08:05:38,619.619 INFO    ] 2026-06-05 08:05:38
[2026-06-05 08:05:38,898.898 INFO    ] 2026-06-05 08:05:38
[2026-06-05 08:05:38,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:05:39,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:05:39,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:05:39,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:05:39,331.331 INFO    ] time= 05/06/2026 08:05:39
[2026-06-05 08:05:39,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:05:39,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:05:39,486.486 INFO    ] No existing commands found in stream
[2026-06-05 08:05:44,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:05:44,509.509 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 08:05:46,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:05:46,209.209 INFO    ] Checking for system updates...
[2026-06-05 08:05:46,250.250 INFO    ] 200
[2026-06-05 08:05:46,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:46,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:05:46,316.316 INFO    ] No update needed
[2026-06-05 08:05:46,318.318 INFO    ] Checking for camera pi updates...
[2026-06-05 08:05:46,356.356 INFO    ] 200
[2026-06-05 08:05:46,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:46,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:05:46,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:05:46,452.452 INFO    ] No camera update needed
[2026-06-05 08:05:46,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:05:46,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:05:46,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:05:46,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:05:48,509.509 INFO    ] ================================================
[2026-06-05 08:05:48,525.525 INFO    ] Launching Daemon at Fri Jun  5 08:05:48 IST 2026
[2026-06-05 08:05:48,536.536 INFO    ] ================================================
[2026-06-05 08:05:49,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:05:49
[2026-06-05 08:05:49,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:05:49,961.961 INFO    ] Initializing speech engine...
[2026-06-05 08:05:49,966.966 INFO    ] 2026-06-05 08:05:49
[2026-06-05 08:05:50,268.268 INFO    ] 2026-06-05 08:05:50
[2026-06-05 08:05:50,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:05:50,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:05:50,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:05:50,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:05:50,645.645 INFO    ] time= 05/06/2026 08:05:50
[2026-06-05 08:05:50,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:05:50,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:05:50,762.762 INFO    ] No existing commands found in stream
[2026-06-05 08:05:55,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:05:55,777.777 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 08:05:58,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:05:58,277.277 INFO    ] Checking for system updates...
[2026-06-05 08:05:58,313.313 INFO    ] 200
[2026-06-05 08:05:58,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:58,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:05:58,372.372 INFO    ] No update needed
[2026-06-05 08:05:58,375.375 INFO    ] Checking for camera pi updates...
[2026-06-05 08:05:58,408.408 INFO    ] 200
[2026-06-05 08:05:58,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:05:58,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:05:58,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:05:58,494.494 INFO    ] No camera update needed
[2026-06-05 08:05:58,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:05:58,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:05:58,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:05:58,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:06:00,550.550 INFO    ] ================================================
[2026-06-05 08:06:00,566.566 INFO    ] Launching Daemon at Fri Jun  5 08:06:00 IST 2026
[2026-06-05 08:06:00,577.577 INFO    ] ================================================
[2026-06-05 08:06:01,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:06:01
[2026-06-05 08:06:01,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:06:02,297.297 INFO    ] Initializing speech engine...
[2026-06-05 08:06:02,320.320 INFO    ] 2026-06-05 08:06:02
[2026-06-05 08:06:02,632.632 INFO    ] 2026-06-05 08:06:02
[2026-06-05 08:06:02,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:06:02,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:06:02,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:06:03,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:06:03,074.074 INFO    ] time= 05/06/2026 08:06:03
[2026-06-05 08:06:03,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:06:03,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:06:03,268.268 INFO    ] No existing commands found in stream
[2026-06-05 08:06:08,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:06:08,284.284 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 08:06:10,135.135 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:06:10,138.138 INFO    ] Checking for system updates...
[2026-06-05 08:06:10,174.174 INFO    ] 200
[2026-06-05 08:06:10,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:10,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:10,232.232 INFO    ] No update needed
[2026-06-05 08:06:10,234.234 INFO    ] Checking for camera pi updates...
[2026-06-05 08:06:10,272.272 INFO    ] 200
[2026-06-05 08:06:10,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:10,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:06:10,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:10,359.359 INFO    ] No camera update needed
[2026-06-05 08:06:10,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:06:10,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:06:10,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:06:10,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:06:12,415.415 INFO    ] ================================================
[2026-06-05 08:06:12,431.431 INFO    ] Launching Daemon at Fri Jun  5 08:06:12 IST 2026
[2026-06-05 08:06:12,443.443 INFO    ] ================================================
[2026-06-05 08:06:13,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:06:13
[2026-06-05 08:06:13,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:06:13,918.918 INFO    ] Initializing speech engine...
[2026-06-05 08:06:13,929.929 INFO    ] 2026-06-05 08:06:13
[2026-06-05 08:06:14,239.239 INFO    ] 2026-06-05 08:06:14
[2026-06-05 08:06:14,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:06:14,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:06:14,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:06:14,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:06:14,745.745 INFO    ] time= 05/06/2026 08:06:14
[2026-06-05 08:06:14,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:06:14,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:06:14,897.897 INFO    ] No existing commands found in stream
[2026-06-05 08:06:19,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:06:19,919.919 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 08:06:21,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:06:21,837.837 INFO    ] Checking for system updates...
[2026-06-05 08:06:21,878.878 INFO    ] 200
[2026-06-05 08:06:21,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:21,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:21,947.947 INFO    ] No update needed
[2026-06-05 08:06:21,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 08:06:21,988.988 INFO    ] 200
[2026-06-05 08:06:21,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:22,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:06:22,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:22,083.083 INFO    ] No camera update needed
[2026-06-05 08:06:22,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:06:22,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:06:22,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:06:22,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:06:24,141.141 INFO    ] ================================================
[2026-06-05 08:06:24,158.158 INFO    ] Launching Daemon at Fri Jun  5 08:06:24 IST 2026
[2026-06-05 08:06:24,169.169 INFO    ] ================================================
[2026-06-05 08:06:24,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:06:24
[2026-06-05 08:06:25,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:06:25,794.794 INFO    ] Initializing speech engine...
[2026-06-05 08:06:25,808.808 INFO    ] 2026-06-05 08:06:25
[2026-06-05 08:06:26,070.070 INFO    ] 2026-06-05 08:06:26
[2026-06-05 08:06:26,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:06:26,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:06:26,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:06:26,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:06:26,517.517 INFO    ] time= 05/06/2026 08:06:26
[2026-06-05 08:06:26,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:06:26,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:06:26,727.727 INFO    ] No existing commands found in stream
[2026-06-05 08:06:31,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:06:31,757.757 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 08:06:32,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:06:32,233.233 INFO    ] Checking for system updates...
[2026-06-05 08:06:32,276.276 INFO    ] 200
[2026-06-05 08:06:32,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:32,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:32,344.344 INFO    ] No update needed
[2026-06-05 08:06:32,348.348 INFO    ] Checking for camera pi updates...
[2026-06-05 08:06:32,391.391 INFO    ] 200
[2026-06-05 08:06:32,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:32,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:06:32,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:32,480.480 INFO    ] No camera update needed
[2026-06-05 08:06:32,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:06:32,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:06:32,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:06:32,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:06:34,538.538 INFO    ] ================================================
[2026-06-05 08:06:34,554.554 INFO    ] Launching Daemon at Fri Jun  5 08:06:34 IST 2026
[2026-06-05 08:06:34,564.564 INFO    ] ================================================
[2026-06-05 08:06:35,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:06:35
[2026-06-05 08:06:35,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:06:36,024.024 INFO    ] Initializing speech engine...
[2026-06-05 08:06:36,037.037 INFO    ] 2026-06-05 08:06:36
[2026-06-05 08:06:36,304.304 INFO    ] 2026-06-05 08:06:36
[2026-06-05 08:06:36,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:06:36,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:06:36,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:06:36,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:06:36,759.759 INFO    ] time= 05/06/2026 08:06:36
[2026-06-05 08:06:36,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:06:36,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:06:36,933.933 INFO    ] No existing commands found in stream
[2026-06-05 08:06:41,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:06:41,956.956 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 08:06:44,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:06:44,272.272 INFO    ] Checking for system updates...
[2026-06-05 08:06:44,310.310 INFO    ] 200
[2026-06-05 08:06:44,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:44,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:44,376.376 INFO    ] No update needed
[2026-06-05 08:06:44,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 08:06:44,416.416 INFO    ] 200
[2026-06-05 08:06:44,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:44,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:06:44,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:44,511.511 INFO    ] No camera update needed
[2026-06-05 08:06:44,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:06:44,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:06:44,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:06:44,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:06:46,569.569 INFO    ] ================================================
[2026-06-05 08:06:46,585.585 INFO    ] Launching Daemon at Fri Jun  5 08:06:46 IST 2026
[2026-06-05 08:06:46,596.596 INFO    ] ================================================
[2026-06-05 08:06:47,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:06:47
[2026-06-05 08:06:47,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:06:48,230.230 INFO    ] Initializing speech engine...
[2026-06-05 08:06:48,238.238 INFO    ] 2026-06-05 08:06:48
[2026-06-05 08:06:48,516.516 INFO    ] 2026-06-05 08:06:48
[2026-06-05 08:06:48,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:06:48,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:06:48,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:06:48,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:06:48,995.995 INFO    ] time= 05/06/2026 08:06:48
[2026-06-05 08:06:49,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:06:49,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:06:49,201.201 INFO    ] No existing commands found in stream
[2026-06-05 08:06:54,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:06:54,232.232 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 08:06:56,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:06:56,329.329 INFO    ] Checking for system updates...
[2026-06-05 08:06:56,370.370 INFO    ] 200
[2026-06-05 08:06:56,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:56,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:56,437.437 INFO    ] No update needed
[2026-06-05 08:06:56,440.440 INFO    ] Checking for camera pi updates...
[2026-06-05 08:06:56,476.476 INFO    ] 200
[2026-06-05 08:06:56,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:06:56,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:06:56,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:06:56,568.568 INFO    ] No camera update needed
[2026-06-05 08:06:56,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:06:56,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:06:56,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:06:56,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:06:58,627.627 INFO    ] ================================================
[2026-06-05 08:06:58,642.642 INFO    ] Launching Daemon at Fri Jun  5 08:06:58 IST 2026
[2026-06-05 08:06:58,653.653 INFO    ] ================================================
[2026-06-05 08:06:59,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:06:59
[2026-06-05 08:06:59,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:07:00,286.286 INFO    ] Initializing speech engine...
[2026-06-05 08:07:00,294.294 INFO    ] 2026-06-05 08:07:00
[2026-06-05 08:07:00,570.570 INFO    ] 2026-06-05 08:07:00
[2026-06-05 08:07:00,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:07:00,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:07:00,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:07:01,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:07:01,061.061 INFO    ] time= 05/06/2026 08:07:01
[2026-06-05 08:07:01,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:07:01,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:07:01,202.202 INFO    ] No existing commands found in stream
[2026-06-05 08:07:06,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:07:06,219.219 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 08:07:07,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:07:07,912.912 INFO    ] Checking for system updates...
[2026-06-05 08:07:07,954.954 INFO    ] 200
[2026-06-05 08:07:07,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:08,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:07:08,019.019 INFO    ] No update needed
[2026-06-05 08:07:08,021.021 INFO    ] Checking for camera pi updates...
[2026-06-05 08:07:08,056.056 INFO    ] 200
[2026-06-05 08:07:08,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:08,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:07:08,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:07:08,133.133 INFO    ] No camera update needed
[2026-06-05 08:07:08,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:07:08,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:07:08,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:07:08,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:07:10,191.191 INFO    ] ================================================
[2026-06-05 08:07:10,206.206 INFO    ] Launching Daemon at Fri Jun  5 08:07:10 IST 2026
[2026-06-05 08:07:10,217.217 INFO    ] ================================================
[2026-06-05 08:07:10,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:07:10
[2026-06-05 08:07:11,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:07:11,627.627 INFO    ] Initializing speech engine...
[2026-06-05 08:07:11,635.635 INFO    ] 2026-06-05 08:07:11
[2026-06-05 08:07:11,928.928 INFO    ] 2026-06-05 08:07:11
[2026-06-05 08:07:11,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:07:12,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:07:12,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:07:12,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:07:12,345.345 INFO    ] time= 05/06/2026 08:07:12
[2026-06-05 08:07:12,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:07:12,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:07:12,515.515 INFO    ] No existing commands found in stream
[2026-06-05 08:07:17,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:07:17,548.548 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 08:07:18,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:07:18,216.216 INFO    ] Checking for system updates...
[2026-06-05 08:07:18,252.252 INFO    ] 200
[2026-06-05 08:07:18,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:18,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:07:18,311.311 INFO    ] No update needed
[2026-06-05 08:07:18,313.313 INFO    ] Checking for camera pi updates...
[2026-06-05 08:07:18,348.348 INFO    ] 200
[2026-06-05 08:07:18,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:18,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:07:18,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:07:18,444.444 INFO    ] No camera update needed
[2026-06-05 08:07:18,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:07:18,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:07:18,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:07:18,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:07:20,500.500 INFO    ] ================================================
[2026-06-05 08:07:20,516.516 INFO    ] Launching Daemon at Fri Jun  5 08:07:20 IST 2026
[2026-06-05 08:07:20,527.527 INFO    ] ================================================
[2026-06-05 08:07:21,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:07:21
[2026-06-05 08:07:21,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:07:21,985.985 INFO    ] Initializing speech engine...
[2026-06-05 08:07:22,001.001 INFO    ] 2026-06-05 08:07:21
[2026-06-05 08:07:22,277.277 INFO    ] 2026-06-05 08:07:22
[2026-06-05 08:07:22,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:07:22,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:07:22,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:07:22,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:07:22,691.691 INFO    ] time= 05/06/2026 08:07:22
[2026-06-05 08:07:22,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:07:22,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:07:22,838.838 INFO    ] No existing commands found in stream
[2026-06-05 08:07:27,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:07:27,876.876 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 08:07:31,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:07:31,395.395 INFO    ] Checking for system updates...
[2026-06-05 08:07:31,432.432 INFO    ] 200
[2026-06-05 08:07:31,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:31,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:07:31,493.493 INFO    ] No update needed
[2026-06-05 08:07:31,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 08:07:31,534.534 INFO    ] 200
[2026-06-05 08:07:31,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:31,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:07:31,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:07:31,731.731 INFO    ] No camera update needed
[2026-06-05 08:07:31,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:07:31,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:07:31,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:07:31,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:07:33,792.792 INFO    ] ================================================
[2026-06-05 08:07:33,807.807 INFO    ] Launching Daemon at Fri Jun  5 08:07:33 IST 2026
[2026-06-05 08:07:33,817.817 INFO    ] ================================================
[2026-06-05 08:07:34,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:07:34
[2026-06-05 08:07:35,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:07:35,370.370 INFO    ] Initializing speech engine...
[2026-06-05 08:07:35,387.387 INFO    ] 2026-06-05 08:07:35
[2026-06-05 08:07:35,680.680 INFO    ] 2026-06-05 08:07:35
[2026-06-05 08:07:35,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:07:35,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:07:35,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:07:36,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:07:36,079.079 INFO    ] time= 05/06/2026 08:07:36
[2026-06-05 08:07:36,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:07:36,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:07:36,213.213 INFO    ] No existing commands found in stream
[2026-06-05 08:07:41,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:07:41,227.227 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 08:07:43,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:07:43,304.304 INFO    ] Checking for system updates...
[2026-06-05 08:07:43,346.346 INFO    ] 200
[2026-06-05 08:07:43,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:43,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:07:43,411.411 INFO    ] No update needed
[2026-06-05 08:07:43,414.414 INFO    ] Checking for camera pi updates...
[2026-06-05 08:07:43,447.447 INFO    ] 200
[2026-06-05 08:07:43,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:43,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:07:43,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:07:43,537.537 INFO    ] No camera update needed
[2026-06-05 08:07:43,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:07:43,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:07:43,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:07:43,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:07:45,593.593 INFO    ] ================================================
[2026-06-05 08:07:45,608.608 INFO    ] Launching Daemon at Fri Jun  5 08:07:45 IST 2026
[2026-06-05 08:07:45,618.618 INFO    ] ================================================
[2026-06-05 08:07:46,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:07:46
[2026-06-05 08:07:46,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:07:47,182.182 INFO    ] Initializing speech engine...
[2026-06-05 08:07:47,191.191 INFO    ] 2026-06-05 08:07:47
[2026-06-05 08:07:47,462.462 INFO    ] 2026-06-05 08:07:47
[2026-06-05 08:07:47,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:07:47,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:07:47,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:07:47,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:07:47,928.928 INFO    ] time= 05/06/2026 08:07:47
[2026-06-05 08:07:47,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:07:48,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:07:48,078.078 INFO    ] No existing commands found in stream
[2026-06-05 08:07:53,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:07:53,094.094 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 08:07:55,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:07:55,556.556 INFO    ] Checking for system updates...
[2026-06-05 08:07:55,593.593 INFO    ] 200
[2026-06-05 08:07:55,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:55,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:07:55,654.654 INFO    ] No update needed
[2026-06-05 08:07:55,657.657 INFO    ] Checking for camera pi updates...
[2026-06-05 08:07:55,695.695 INFO    ] 200
[2026-06-05 08:07:55,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:07:55,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:07:55,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:07:55,800.800 INFO    ] No camera update needed
[2026-06-05 08:07:55,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:07:55,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:07:55,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:07:55,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:07:57,858.858 INFO    ] ================================================
[2026-06-05 08:07:57,873.873 INFO    ] Launching Daemon at Fri Jun  5 08:07:57 IST 2026
[2026-06-05 08:07:57,884.884 INFO    ] ================================================
[2026-06-05 08:07:58,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:07:58
[2026-06-05 08:07:59,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:07:59,350.350 INFO    ] Initializing speech engine...
[2026-06-05 08:07:59,356.356 INFO    ] 2026-06-05 08:07:59
[2026-06-05 08:07:59,621.621 INFO    ] 2026-06-05 08:07:59
[2026-06-05 08:07:59,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:07:59,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:07:59,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:08:00,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:08:00,112.112 INFO    ] time= 05/06/2026 08:08:00
[2026-06-05 08:08:00,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:08:00,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:08:00,290.290 INFO    ] No existing commands found in stream
[2026-06-05 08:08:05,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:08:05,315.315 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 08:08:08,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:08:08,267.267 INFO    ] Checking for system updates...
[2026-06-05 08:08:08,304.304 INFO    ] 200
[2026-06-05 08:08:08,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:08,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:08:08,361.361 INFO    ] No update needed
[2026-06-05 08:08:08,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 08:08:08,397.397 INFO    ] 200
[2026-06-05 08:08:08,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:08,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:08:08,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:08:08,492.492 INFO    ] No camera update needed
[2026-06-05 08:08:08,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:08:08,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:08:08,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:08:08,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:08:10,547.547 INFO    ] ================================================
[2026-06-05 08:08:10,562.562 INFO    ] Launching Daemon at Fri Jun  5 08:08:10 IST 2026
[2026-06-05 08:08:10,572.572 INFO    ] ================================================
[2026-06-05 08:08:11,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:08:11
[2026-06-05 08:08:11,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:08:12,130.130 INFO    ] Initializing speech engine...
[2026-06-05 08:08:12,139.139 INFO    ] 2026-06-05 08:08:12
[2026-06-05 08:08:12,427.427 INFO    ] 2026-06-05 08:08:12
[2026-06-05 08:08:12,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:08:12,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:08:12,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:08:12,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:08:12,920.920 INFO    ] time= 05/06/2026 08:08:12
[2026-06-05 08:08:12,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:08:12,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:08:13,106.106 INFO    ] No existing commands found in stream
[2026-06-05 08:08:18,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:08:18,146.146 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 08:08:19,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:08:19,087.087 INFO    ] Checking for system updates...
[2026-06-05 08:08:19,129.129 INFO    ] 200
[2026-06-05 08:08:19,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:19,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:08:19,189.189 INFO    ] No update needed
[2026-06-05 08:08:19,191.191 INFO    ] Checking for camera pi updates...
[2026-06-05 08:08:19,226.226 INFO    ] 200
[2026-06-05 08:08:19,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:19,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:08:19,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:08:19,320.320 INFO    ] No camera update needed
[2026-06-05 08:08:19,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:08:19,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:08:19,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:08:19,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:08:21,378.378 INFO    ] ================================================
[2026-06-05 08:08:21,393.393 INFO    ] Launching Daemon at Fri Jun  5 08:08:21 IST 2026
[2026-06-05 08:08:21,404.404 INFO    ] ================================================
[2026-06-05 08:08:21,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:08:21
[2026-06-05 08:08:22,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:08:22,833.833 INFO    ] Initializing speech engine...
[2026-06-05 08:08:22,848.848 INFO    ] 2026-06-05 08:08:22
[2026-06-05 08:08:23,136.136 INFO    ] 2026-06-05 08:08:23
[2026-06-05 08:08:23,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:08:23,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:08:23,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:08:23,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:08:23,552.552 INFO    ] time= 05/06/2026 08:08:23
[2026-06-05 08:08:23,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:08:23,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:08:23,641.641 INFO    ] No existing commands found in stream
[2026-06-05 08:08:28,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:08:28,657.657 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 08:08:32,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:08:32,917.917 INFO    ] Checking for system updates...
[2026-06-05 08:08:32,962.962 INFO    ] 200
[2026-06-05 08:08:32,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:33,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:08:33,021.021 INFO    ] No update needed
[2026-06-05 08:08:33,024.024 INFO    ] Checking for camera pi updates...
[2026-06-05 08:08:33,058.058 INFO    ] 200
[2026-06-05 08:08:33,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:33,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:08:33,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:08:33,132.132 INFO    ] No camera update needed
[2026-06-05 08:08:33,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:08:33,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:08:33,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:08:33,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:08:35,189.189 INFO    ] ================================================
[2026-06-05 08:08:35,206.206 INFO    ] Launching Daemon at Fri Jun  5 08:08:35 IST 2026
[2026-06-05 08:08:35,217.217 INFO    ] ================================================
[2026-06-05 08:08:35,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:08:35
[2026-06-05 08:08:36,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:08:36,693.693 INFO    ] Initializing speech engine...
[2026-06-05 08:08:36,699.699 INFO    ] 2026-06-05 08:08:36
[2026-06-05 08:08:36,961.961 INFO    ] 2026-06-05 08:08:36
[2026-06-05 08:08:37,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:08:37,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:08:37,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:08:37,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:08:37,405.405 INFO    ] time= 05/06/2026 08:08:37
[2026-06-05 08:08:37,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:08:37,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:08:37,582.582 INFO    ] No existing commands found in stream
[2026-06-05 08:08:42,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:08:42,621.621 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 08:08:43,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:08:43,787.787 INFO    ] Checking for system updates...
[2026-06-05 08:08:43,823.823 INFO    ] 200
[2026-06-05 08:08:43,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:43,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:08:43,882.882 INFO    ] No update needed
[2026-06-05 08:08:43,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 08:08:43,921.921 INFO    ] 200
[2026-06-05 08:08:43,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:43,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:08:44,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:08:44,014.014 INFO    ] No camera update needed
[2026-06-05 08:08:44,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:08:44,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:08:44,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:08:44,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:08:46,070.070 INFO    ] ================================================
[2026-06-05 08:08:46,085.085 INFO    ] Launching Daemon at Fri Jun  5 08:08:46 IST 2026
[2026-06-05 08:08:46,096.096 INFO    ] ================================================
[2026-06-05 08:08:46,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:08:46
[2026-06-05 08:08:47,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:08:47,543.543 INFO    ] Initializing speech engine...
[2026-06-05 08:08:47,551.551 INFO    ] 2026-06-05 08:08:47
[2026-06-05 08:08:47,812.812 INFO    ] 2026-06-05 08:08:47
[2026-06-05 08:08:47,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:08:48,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:08:48,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:08:48,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:08:48,293.293 INFO    ] time= 05/06/2026 08:08:48
[2026-06-05 08:08:48,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:08:48,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:08:48,419.419 INFO    ] No existing commands found in stream
[2026-06-05 08:08:53,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:08:53,434.434 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 08:08:54,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:08:54,831.831 INFO    ] Checking for system updates...
[2026-06-05 08:08:54,871.871 INFO    ] 200
[2026-06-05 08:08:54,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:54,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:08:54,929.929 INFO    ] No update needed
[2026-06-05 08:08:54,931.931 INFO    ] Checking for camera pi updates...
[2026-06-05 08:08:54,965.965 INFO    ] 200
[2026-06-05 08:08:54,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:08:55,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:08:55,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:08:55,051.051 INFO    ] No camera update needed
[2026-06-05 08:08:55,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:08:55,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:08:55,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:08:55,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:08:57,108.108 INFO    ] ================================================
[2026-06-05 08:08:57,125.125 INFO    ] Launching Daemon at Fri Jun  5 08:08:57 IST 2026
[2026-06-05 08:08:57,136.136 INFO    ] ================================================
[2026-06-05 08:08:57,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:08:57
[2026-06-05 08:08:58,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:08:58,565.565 INFO    ] Initializing speech engine...
[2026-06-05 08:08:58,574.574 INFO    ] 2026-06-05 08:08:58
[2026-06-05 08:08:58,867.867 INFO    ] 2026-06-05 08:08:58
[2026-06-05 08:08:58,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:08:59,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:08:59,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:08:59,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:08:59,279.279 INFO    ] time= 05/06/2026 08:08:59
[2026-06-05 08:08:59,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:08:59,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:08:59,366.366 INFO    ] No existing commands found in stream
[2026-06-05 08:09:04,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:09:04,382.382 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 08:09:07,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:09:07,597.597 INFO    ] Checking for system updates...
[2026-06-05 08:09:07,634.634 INFO    ] 200
[2026-06-05 08:09:07,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:07,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:09:07,692.692 INFO    ] No update needed
[2026-06-05 08:09:07,695.695 INFO    ] Checking for camera pi updates...
[2026-06-05 08:09:07,729.729 INFO    ] 200
[2026-06-05 08:09:07,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:07,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:09:07,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:09:07,825.825 INFO    ] No camera update needed
[2026-06-05 08:09:07,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:09:07,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:09:07,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:09:07,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:09:09,880.880 INFO    ] ================================================
[2026-06-05 08:09:09,895.895 INFO    ] Launching Daemon at Fri Jun  5 08:09:09 IST 2026
[2026-06-05 08:09:09,906.906 INFO    ] ================================================
[2026-06-05 08:09:10,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:09:10
[2026-06-05 08:09:11,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:09:11,516.516 INFO    ] Initializing speech engine...
[2026-06-05 08:09:11,524.524 INFO    ] 2026-06-05 08:09:11
[2026-06-05 08:09:11,816.816 INFO    ] 2026-06-05 08:09:11
[2026-06-05 08:09:11,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:09:12,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:09:12,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:09:12,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:09:12,287.287 INFO    ] time= 05/06/2026 08:09:12
[2026-06-05 08:09:12,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:09:12,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:09:12,427.427 INFO    ] No existing commands found in stream
[2026-06-05 08:09:17,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:09:17,443.443 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 08:09:21,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:09:21,634.634 INFO    ] Checking for system updates...
[2026-06-05 08:09:21,671.671 INFO    ] 200
[2026-06-05 08:09:21,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:21,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:09:21,737.737 INFO    ] No update needed
[2026-06-05 08:09:21,740.740 INFO    ] Checking for camera pi updates...
[2026-06-05 08:09:21,779.779 INFO    ] 200
[2026-06-05 08:09:21,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:21,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:09:21,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:09:21,877.877 INFO    ] No camera update needed
[2026-06-05 08:09:21,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:09:21,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:09:21,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:09:21,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:09:23,936.936 INFO    ] ================================================
[2026-06-05 08:09:23,952.952 INFO    ] Launching Daemon at Fri Jun  5 08:09:23 IST 2026
[2026-06-05 08:09:23,963.963 INFO    ] ================================================
[2026-06-05 08:09:24,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:09:24
[2026-06-05 08:09:25,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:09:25,436.436 INFO    ] Initializing speech engine...
[2026-06-05 08:09:25,444.444 INFO    ] 2026-06-05 08:09:25
[2026-06-05 08:09:25,707.707 INFO    ] 2026-06-05 08:09:25
[2026-06-05 08:09:25,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:09:25,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:09:25,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:09:26,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:09:26,176.176 INFO    ] time= 05/06/2026 08:09:26
[2026-06-05 08:09:26,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:09:26,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:09:26,313.313 INFO    ] No existing commands found in stream
[2026-06-05 08:09:31,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:09:31,328.328 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 08:09:33,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:09:33,478.478 INFO    ] Checking for system updates...
[2026-06-05 08:09:33,515.515 INFO    ] 200
[2026-06-05 08:09:33,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:33,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:09:33,573.573 INFO    ] No update needed
[2026-06-05 08:09:33,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 08:09:33,609.609 INFO    ] 200
[2026-06-05 08:09:33,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:33,658.658 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:09:33,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:09:33,688.688 INFO    ] No camera update needed
[2026-06-05 08:09:33,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:09:33,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:09:33,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:09:33,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:09:35,747.747 INFO    ] ================================================
[2026-06-05 08:09:35,763.763 INFO    ] Launching Daemon at Fri Jun  5 08:09:35 IST 2026
[2026-06-05 08:09:35,774.774 INFO    ] ================================================
[2026-06-05 08:09:36,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:09:36
[2026-06-05 08:09:36,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:09:37,202.202 INFO    ] Initializing speech engine...
[2026-06-05 08:09:37,211.211 INFO    ] 2026-06-05 08:09:37
[2026-06-05 08:09:37,505.505 INFO    ] 2026-06-05 08:09:37
[2026-06-05 08:09:37,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:09:37,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:09:37,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:09:37,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:09:37,881.881 INFO    ] time= 05/06/2026 08:09:37
[2026-06-05 08:09:37,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:09:37,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:09:38,006.006 INFO    ] No existing commands found in stream
[2026-06-05 08:09:43,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:09:43,021.021 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 08:09:44,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:09:44,052.052 INFO    ] Checking for system updates...
[2026-06-05 08:09:44,088.088 INFO    ] 200
[2026-06-05 08:09:44,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:44,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:09:44,145.145 INFO    ] No update needed
[2026-06-05 08:09:44,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 08:09:44,182.182 INFO    ] 200
[2026-06-05 08:09:44,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:44,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:09:44,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:09:44,268.268 INFO    ] No camera update needed
[2026-06-05 08:09:44,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:09:44,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:09:44,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:09:44,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:09:46,324.324 INFO    ] ================================================
[2026-06-05 08:09:46,339.339 INFO    ] Launching Daemon at Fri Jun  5 08:09:46 IST 2026
[2026-06-05 08:09:46,350.350 INFO    ] ================================================
[2026-06-05 08:09:46,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:09:46
[2026-06-05 08:09:47,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:09:47,769.769 INFO    ] Initializing speech engine...
[2026-06-05 08:09:47,792.792 INFO    ] 2026-06-05 08:09:47
[2026-06-05 08:09:48,046.046 INFO    ] 2026-06-05 08:09:48
[2026-06-05 08:09:48,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:09:48,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:09:48,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:09:48,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:09:48,426.426 INFO    ] time= 05/06/2026 08:09:48
[2026-06-05 08:09:48,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:09:48,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:09:48,591.591 INFO    ] No existing commands found in stream
[2026-06-05 08:09:53,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:09:53,623.623 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 08:09:56,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:09:56,844.844 INFO    ] Checking for system updates...
[2026-06-05 08:09:56,883.883 INFO    ] 200
[2026-06-05 08:09:56,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:56,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:09:56,942.942 INFO    ] No update needed
[2026-06-05 08:09:56,944.944 INFO    ] Checking for camera pi updates...
[2026-06-05 08:09:56,979.979 INFO    ] 200
[2026-06-05 08:09:56,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:09:57,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:09:57,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:09:57,068.068 INFO    ] No camera update needed
[2026-06-05 08:09:57,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:09:57,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:09:57,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:09:57,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:09:59,128.128 INFO    ] ================================================
[2026-06-05 08:09:59,143.143 INFO    ] Launching Daemon at Fri Jun  5 08:09:59 IST 2026
[2026-06-05 08:09:59,155.155 INFO    ] ================================================
[2026-06-05 08:09:59,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:09:59
[2026-06-05 08:10:00,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:10:00,587.587 INFO    ] Initializing speech engine...
[2026-06-05 08:10:00,596.596 INFO    ] 2026-06-05 08:10:00
[2026-06-05 08:10:00,846.846 INFO    ] 2026-06-05 08:10:00
[2026-06-05 08:10:00,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:10:01,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:10:01,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:10:01,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:10:01,326.326 INFO    ] time= 05/06/2026 08:10:01
[2026-06-05 08:10:01,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:10:01,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:10:01,474.474 INFO    ] No existing commands found in stream
[2026-06-05 08:10:06,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:10:06,489.489 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 08:10:09,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:10:09,064.064 INFO    ] Checking for system updates...
[2026-06-05 08:10:09,100.100 INFO    ] 200
[2026-06-05 08:10:09,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:09,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:09,159.159 INFO    ] No update needed
[2026-06-05 08:10:09,162.162 INFO    ] Checking for camera pi updates...
[2026-06-05 08:10:09,196.196 INFO    ] 200
[2026-06-05 08:10:09,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:09,240.240 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:10:09,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:09,286.286 INFO    ] No camera update needed
[2026-06-05 08:10:09,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:10:09,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:10:09,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:10:09,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:10:11,345.345 INFO    ] ================================================
[2026-06-05 08:10:11,361.361 INFO    ] Launching Daemon at Fri Jun  5 08:10:11 IST 2026
[2026-06-05 08:10:11,372.372 INFO    ] ================================================
[2026-06-05 08:10:11,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:10:11
[2026-06-05 08:10:12,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:10:12,781.781 INFO    ] Initializing speech engine...
[2026-06-05 08:10:12,794.794 INFO    ] 2026-06-05 08:10:12
[2026-06-05 08:10:13,060.060 INFO    ] 2026-06-05 08:10:13
[2026-06-05 08:10:13,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:10:13,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:10:13,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:10:13,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:10:13,557.557 INFO    ] time= 05/06/2026 08:10:13
[2026-06-05 08:10:13,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:10:13,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:10:13,695.695 INFO    ] No existing commands found in stream
[2026-06-05 08:10:18,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:10:18,709.709 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 08:10:19,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:10:19,715.715 INFO    ] Checking for system updates...
[2026-06-05 08:10:19,752.752 INFO    ] 200
[2026-06-05 08:10:19,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:19,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:19,811.811 INFO    ] No update needed
[2026-06-05 08:10:19,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 08:10:19,848.848 INFO    ] 200
[2026-06-05 08:10:19,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:19,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:10:19,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:19,941.941 INFO    ] No camera update needed
[2026-06-05 08:10:19,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:10:19,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:10:19,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:10:19,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:10:22,997.997 INFO    ] ================================================
[2026-06-05 08:10:22,013.013 INFO    ] Launching Daemon at Fri Jun  5 08:10:22 IST 2026
[2026-06-05 08:10:22,024.024 INFO    ] ================================================
[2026-06-05 08:10:22,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:10:22
[2026-06-05 08:10:23,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:10:23,610.610 INFO    ] Initializing speech engine...
[2026-06-05 08:10:23,629.629 INFO    ] 2026-06-05 08:10:23
[2026-06-05 08:10:23,893.893 INFO    ] 2026-06-05 08:10:23
[2026-06-05 08:10:23,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:10:24,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:10:24,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:10:24,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:10:24,349.349 INFO    ] time= 05/06/2026 08:10:24
[2026-06-05 08:10:24,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:10:24,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:10:24,535.535 INFO    ] No existing commands found in stream
[2026-06-05 08:10:29,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:10:29,576.576 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 08:10:32,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:10:32,330.330 INFO    ] Checking for system updates...
[2026-06-05 08:10:32,371.371 INFO    ] 200
[2026-06-05 08:10:32,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:32,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:32,437.437 INFO    ] No update needed
[2026-06-05 08:10:32,440.440 INFO    ] Checking for camera pi updates...
[2026-06-05 08:10:32,481.481 INFO    ] 200
[2026-06-05 08:10:32,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:32,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:10:32,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:32,572.572 INFO    ] No camera update needed
[2026-06-05 08:10:32,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:10:32,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:10:32,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:10:32,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:10:34,635.635 INFO    ] ================================================
[2026-06-05 08:10:34,652.652 INFO    ] Launching Daemon at Fri Jun  5 08:10:34 IST 2026
[2026-06-05 08:10:34,663.663 INFO    ] ================================================
[2026-06-05 08:10:35,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:10:35
[2026-06-05 08:10:35,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:10:36,266.266 INFO    ] Initializing speech engine...
[2026-06-05 08:10:36,280.280 INFO    ] 2026-06-05 08:10:36
[2026-06-05 08:10:36,562.562 INFO    ] 2026-06-05 08:10:36
[2026-06-05 08:10:36,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:10:36,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:10:36,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:10:37,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:10:37,107.107 INFO    ] time= 05/06/2026 08:10:37
[2026-06-05 08:10:37,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:10:37,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:10:37,248.248 INFO    ] No existing commands found in stream
[2026-06-05 08:10:42,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:10:42,291.291 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 08:10:46,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:10:46,246.246 INFO    ] Checking for system updates...
[2026-06-05 08:10:46,282.282 INFO    ] 200
[2026-06-05 08:10:46,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:46,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:46,342.342 INFO    ] No update needed
[2026-06-05 08:10:46,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 08:10:46,378.378 INFO    ] 200
[2026-06-05 08:10:46,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:46,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:10:46,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:46,475.475 INFO    ] No camera update needed
[2026-06-05 08:10:46,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:10:46,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:10:46,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:10:46,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:10:48,531.531 INFO    ] ================================================
[2026-06-05 08:10:48,547.547 INFO    ] Launching Daemon at Fri Jun  5 08:10:48 IST 2026
[2026-06-05 08:10:48,558.558 INFO    ] ================================================
[2026-06-05 08:10:49,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:10:49
[2026-06-05 08:10:49,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:10:49,994.994 INFO    ] Initializing speech engine...
[2026-06-05 08:10:50,011.011 INFO    ] 2026-06-05 08:10:50
[2026-06-05 08:10:50,264.264 INFO    ] 2026-06-05 08:10:50
[2026-06-05 08:10:50,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:10:50,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:10:50,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:10:50,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:10:50,641.641 INFO    ] time= 05/06/2026 08:10:50
[2026-06-05 08:10:50,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:10:50,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:10:50,805.805 INFO    ] No existing commands found in stream
[2026-06-05 08:10:55,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:10:55,833.833 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 08:10:57,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:10:57,644.644 INFO    ] Checking for system updates...
[2026-06-05 08:10:57,680.680 INFO    ] 200
[2026-06-05 08:10:57,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:57,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:57,737.737 INFO    ] No update needed
[2026-06-05 08:10:57,740.740 INFO    ] Checking for camera pi updates...
[2026-06-05 08:10:57,773.773 INFO    ] 200
[2026-06-05 08:10:57,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:10:57,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:10:57,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:10:57,862.862 INFO    ] No camera update needed
[2026-06-05 08:10:57,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:10:57,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:10:57,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:10:57,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:10:59,919.919 INFO    ] ================================================
[2026-06-05 08:10:59,934.934 INFO    ] Launching Daemon at Fri Jun  5 08:10:59 IST 2026
[2026-06-05 08:10:59,946.946 INFO    ] ================================================
[2026-06-05 08:11:00,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:11:00
[2026-06-05 08:11:01,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:11:01,670.670 INFO    ] Initializing speech engine...
[2026-06-05 08:11:01,678.678 INFO    ] 2026-06-05 08:11:01
[2026-06-05 08:11:02,050.050 INFO    ] 2026-06-05 08:11:02
[2026-06-05 08:11:02,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:11:02,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:11:02,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:11:02,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:11:02,509.509 INFO    ] time= 05/06/2026 08:11:02
[2026-06-05 08:11:02,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:11:02,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:11:02,657.657 INFO    ] No existing commands found in stream
[2026-06-05 08:11:07,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:11:07,697.697 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 08:11:10,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:11:10,016.016 INFO    ] Checking for system updates...
[2026-06-05 08:11:10,053.053 INFO    ] 200
[2026-06-05 08:11:10,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:11:10,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:11:10,111.111 INFO    ] No update needed
[2026-06-05 08:11:10,113.113 INFO    ] Checking for camera pi updates...
[2026-06-05 08:11:10,147.147 INFO    ] 200
[2026-06-05 08:11:10,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:11:10,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:11:10,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:11:10,233.233 INFO    ] No camera update needed
[2026-06-05 08:11:10,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:11:10,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:11:10,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:11:10,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:11:12,291.291 INFO    ] ================================================
[2026-06-05 08:11:12,306.306 INFO    ] Launching Daemon at Fri Jun  5 08:11:12 IST 2026
[2026-06-05 08:11:12,317.317 INFO    ] ================================================
[2026-06-05 08:11:12,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:11:12
[2026-06-05 08:11:13,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:11:13,925.925 INFO    ] Initializing speech engine...
[2026-06-05 08:11:13,939.939 INFO    ] 2026-06-05 08:11:13
[2026-06-05 08:11:14,247.247 INFO    ] 2026-06-05 08:11:14
[2026-06-05 08:11:14,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:11:14,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:11:14,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:11:14,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:11:14,756.756 INFO    ] time= 05/06/2026 08:11:14
[2026-06-05 08:11:14,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:11:14,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:11:14,895.895 INFO    ] No existing commands found in stream
[2026-06-05 08:11:19,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:11:19,923.923 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 08:11:21,992.992 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:11:21,995.995 INFO    ] Checking for system updates...
[2026-06-05 08:11:22,033.033 INFO    ] 200
[2026-06-05 08:11:22,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:11:22,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:11:22,094.094 INFO    ] No update needed
[2026-06-05 08:11:22,097.097 INFO    ] Checking for camera pi updates...
[2026-06-05 08:11:22,147.147 INFO    ] 200
[2026-06-05 08:11:22,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:11:22,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:11:22,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:11:22,245.245 INFO    ] No camera update needed
[2026-06-05 08:11:22,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:11:22,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:11:22,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:11:22,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:11:24,305.305 INFO    ] ================================================
[2026-06-05 08:11:24,321.321 INFO    ] Launching Daemon at Fri Jun  5 08:11:24 IST 2026
[2026-06-05 08:11:24,333.333 INFO    ] ================================================
[2026-06-05 08:11:24,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:11:24
[2026-06-05 08:11:25,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:11:25,763.763 INFO    ] Initializing speech engine...
[2026-06-05 08:11:25,772.772 INFO    ] 2026-06-05 08:11:25
[2026-06-05 08:11:26,024.024 INFO    ] 2026-06-05 08:11:26
[2026-06-05 08:11:26,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:11:26,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:11:26,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:11:26,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:11:26,495.495 INFO    ] time= 05/06/2026 08:11:26
[2026-06-05 08:11:26,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:11:26,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:11:26,652.652 INFO    ] No existing commands found in stream
[2026-06-05 08:11:31,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:11:31,667.667 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 08:11:35,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:11:35,346.346 INFO    ] Checking for system updates...
[2026-06-05 08:11:35,382.382 INFO    ] 200
[2026-06-05 08:11:35,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:11:35,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:11:35,440.440 INFO    ] No update needed
[2026-06-05 08:11:35,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 08:11:35,476.476 INFO    ] 200
[2026-06-05 08:11:35,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:11:35,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:11:35,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:11:35,676.676 INFO    ] No camera update needed
[2026-06-05 08:11:35,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:11:35,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:11:35,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:11:35,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:11:37,738.738 INFO    ] ================================================
[2026-06-05 08:11:37,754.754 INFO    ] Launching Daemon at Fri Jun  5 08:11:37 IST 2026
[2026-06-05 08:11:37,766.766 INFO    ] ================================================
[2026-06-05 08:11:38,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:11:38
[2026-06-05 08:11:38,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:11:39,165.165 INFO    ] Initializing speech engine...
[2026-06-05 08:11:39,179.179 INFO    ] 2026-06-05 08:11:39
[2026-06-05 08:11:39,444.444 INFO    ] 2026-06-05 08:11:39
[2026-06-05 08:11:39,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:11:39,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:11:39,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:11:39,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:11:39,924.924 INFO    ] time= 05/06/2026 08:11:39
[2026-06-05 08:11:39,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:11:40,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:11:40,082.082 INFO    ] No existing commands found in stream
[2026-06-05 08:11:45,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:11:45,117.117 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 08:11:49,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:11:49,016.016 INFO    ] Checking for system updates...
[2026-06-05 08:11:49,052.052 INFO    ] 200
[2026-06-05 08:11:49,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:11:49,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:11:49,110.110 INFO    ] No update needed
[2026-06-05 08:11:49,112.112 INFO    ] Checking for camera pi updates...
[2026-06-05 08:11:49,148.148 INFO    ] 200
[2026-06-05 08:11:49,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:11:49,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:11:49,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:11:49,238.238 INFO    ] No camera update needed
[2026-06-05 08:11:49,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:11:49,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:11:49,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:11:49,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:11:51,294.294 INFO    ] ================================================
[2026-06-05 08:11:51,310.310 INFO    ] Launching Daemon at Fri Jun  5 08:11:51 IST 2026
[2026-06-05 08:11:51,321.321 INFO    ] ================================================
[2026-06-05 08:11:51,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:11:51
[2026-06-05 08:11:52,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:11:52,746.746 INFO    ] Initializing speech engine...
[2026-06-05 08:11:52,765.765 INFO    ] 2026-06-05 08:11:52
[2026-06-05 08:11:53,017.017 INFO    ] 2026-06-05 08:11:53
[2026-06-05 08:11:53,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:11:53,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:11:53,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:11:53,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:11:53,499.499 INFO    ] time= 05/06/2026 08:11:53
[2026-06-05 08:11:53,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:11:53,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:11:53,709.709 INFO    ] No existing commands found in stream
[2026-06-05 08:11:58,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:11:58,734.734 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 08:12:01,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:12:01,626.626 INFO    ] Checking for system updates...
[2026-06-05 08:12:01,670.670 INFO    ] 200
[2026-06-05 08:12:01,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:01,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:12:01,736.736 INFO    ] No update needed
[2026-06-05 08:12:01,740.740 INFO    ] Checking for camera pi updates...
[2026-06-05 08:12:01,782.782 INFO    ] 200
[2026-06-05 08:12:01,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:01,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:12:01,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:12:01,887.887 INFO    ] No camera update needed
[2026-06-05 08:12:01,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:12:01,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:12:01,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:12:01,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:12:03,953.953 INFO    ] ================================================
[2026-06-05 08:12:03,969.969 INFO    ] Launching Daemon at Fri Jun  5 08:12:03 IST 2026
[2026-06-05 08:12:03,980.980 INFO    ] ================================================
[2026-06-05 08:12:04,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:12:04
[2026-06-05 08:12:05,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:12:05,424.424 INFO    ] Initializing speech engine...
[2026-06-05 08:12:05,433.433 INFO    ] 2026-06-05 08:12:05
[2026-06-05 08:12:05,693.693 INFO    ] 2026-06-05 08:12:05
[2026-06-05 08:12:05,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:12:05,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:12:05,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:12:06,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:12:06,046.046 INFO    ] time= 05/06/2026 08:12:06
[2026-06-05 08:12:06,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:12:06,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:12:06,145.145 INFO    ] No existing commands found in stream
[2026-06-05 08:12:11,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:12:11,183.183 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 08:12:13,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:12:13,854.854 INFO    ] Checking for system updates...
[2026-06-05 08:12:13,891.891 INFO    ] 200
[2026-06-05 08:12:13,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:13,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:12:13,952.952 INFO    ] No update needed
[2026-06-05 08:12:13,954.954 INFO    ] Checking for camera pi updates...
[2026-06-05 08:12:13,988.988 INFO    ] 200
[2026-06-05 08:12:13,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:14,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:12:14,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:12:14,082.082 INFO    ] No camera update needed
[2026-06-05 08:12:14,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:12:14,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:12:14,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:12:14,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:12:16,138.138 INFO    ] ================================================
[2026-06-05 08:12:16,153.153 INFO    ] Launching Daemon at Fri Jun  5 08:12:16 IST 2026
[2026-06-05 08:12:16,164.164 INFO    ] ================================================
[2026-06-05 08:12:16,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:12:16
[2026-06-05 08:12:17,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:12:17,629.629 INFO    ] Initializing speech engine...
[2026-06-05 08:12:17,640.640 INFO    ] 2026-06-05 08:12:17
[2026-06-05 08:12:17,901.901 INFO    ] 2026-06-05 08:12:17
[2026-06-05 08:12:17,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:12:18,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:12:18,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:12:18,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:12:18,377.377 INFO    ] time= 05/06/2026 08:12:18
[2026-06-05 08:12:18,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:12:18,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:12:18,510.510 INFO    ] No existing commands found in stream
[2026-06-05 08:12:23,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:12:23,525.525 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 08:12:25,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:12:25,541.541 INFO    ] Checking for system updates...
[2026-06-05 08:12:25,581.581 INFO    ] 200
[2026-06-05 08:12:25,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:25,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:12:25,650.650 INFO    ] No update needed
[2026-06-05 08:12:25,653.653 INFO    ] Checking for camera pi updates...
[2026-06-05 08:12:25,693.693 INFO    ] 200
[2026-06-05 08:12:25,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:25,739.739 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:12:25,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:12:25,793.793 INFO    ] No camera update needed
[2026-06-05 08:12:25,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:12:25,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:12:25,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:12:25,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:12:27,851.851 INFO    ] ================================================
[2026-06-05 08:12:27,867.867 INFO    ] Launching Daemon at Fri Jun  5 08:12:27 IST 2026
[2026-06-05 08:12:27,878.878 INFO    ] ================================================
[2026-06-05 08:12:28,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:12:28
[2026-06-05 08:12:29,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:12:29,327.327 INFO    ] Initializing speech engine...
[2026-06-05 08:12:29,336.336 INFO    ] 2026-06-05 08:12:29
[2026-06-05 08:12:29,601.601 INFO    ] 2026-06-05 08:12:29
[2026-06-05 08:12:29,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:12:29,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:12:29,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:12:29,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:12:29,973.973 INFO    ] time= 05/06/2026 08:12:29
[2026-06-05 08:12:29,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:12:30,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:12:30,096.096 INFO    ] No existing commands found in stream
[2026-06-05 08:12:35,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:12:35,112.112 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 08:12:37,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:12:37,701.701 INFO    ] Checking for system updates...
[2026-06-05 08:12:37,737.737 INFO    ] 200
[2026-06-05 08:12:37,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:37,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:12:37,796.796 INFO    ] No update needed
[2026-06-05 08:12:37,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 08:12:37,832.832 INFO    ] 200
[2026-06-05 08:12:37,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:37,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:12:37,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:12:37,919.919 INFO    ] No camera update needed
[2026-06-05 08:12:37,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:12:37,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:12:37,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:12:37,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:12:39,974.974 INFO    ] ================================================
[2026-06-05 08:12:39,990.990 INFO    ] Launching Daemon at Fri Jun  5 08:12:39 IST 2026
[2026-06-05 08:12:40,001.001 INFO    ] ================================================
[2026-06-05 08:12:40,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:12:40
[2026-06-05 08:12:41,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:12:41,576.576 INFO    ] Initializing speech engine...
[2026-06-05 08:12:41,589.589 INFO    ] 2026-06-05 08:12:41
[2026-06-05 08:12:41,877.877 INFO    ] 2026-06-05 08:12:41
[2026-06-05 08:12:41,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:12:42,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:12:42,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:12:42,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:12:42,339.339 INFO    ] time= 05/06/2026 08:12:42
[2026-06-05 08:12:42,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:12:42,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:12:42,537.537 INFO    ] No existing commands found in stream
[2026-06-05 08:12:47,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:12:47,576.576 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 08:12:51,716.716 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:12:51,719.719 INFO    ] Checking for system updates...
[2026-06-05 08:12:51,757.757 INFO    ] 200
[2026-06-05 08:12:51,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:51,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:12:51,821.821 INFO    ] No update needed
[2026-06-05 08:12:51,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 08:12:51,859.859 INFO    ] 200
[2026-06-05 08:12:51,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:12:51,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:12:51,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:12:51,950.950 INFO    ] No camera update needed
[2026-06-05 08:12:51,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:12:51,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:12:51,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:12:51,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:12:54,010.010 INFO    ] ================================================
[2026-06-05 08:12:54,026.026 INFO    ] Launching Daemon at Fri Jun  5 08:12:54 IST 2026
[2026-06-05 08:12:54,037.037 INFO    ] ================================================
[2026-06-05 08:12:54,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:12:54
[2026-06-05 08:12:55,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:12:55,452.452 INFO    ] Initializing speech engine...
[2026-06-05 08:12:55,458.458 INFO    ] 2026-06-05 08:12:55
[2026-06-05 08:12:55,748.748 INFO    ] 2026-06-05 08:12:55
[2026-06-05 08:12:55,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:12:55,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:12:55,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:12:56,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:12:56,119.119 INFO    ] time= 05/06/2026 08:12:56
[2026-06-05 08:12:56,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:12:56,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:12:56,243.243 INFO    ] No existing commands found in stream
[2026-06-05 08:13:01,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:13:01,262.262 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 08:13:05,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:13:05,282.282 INFO    ] Checking for system updates...
[2026-06-05 08:13:05,319.319 INFO    ] 200
[2026-06-05 08:13:05,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:05,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:13:05,377.377 INFO    ] No update needed
[2026-06-05 08:13:05,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 08:13:05,414.414 INFO    ] 200
[2026-06-05 08:13:05,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:05,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:13:05,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:13:05,488.488 INFO    ] No camera update needed
[2026-06-05 08:13:05,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:13:05,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:13:05,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:13:05,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:13:07,544.544 INFO    ] ================================================
[2026-06-05 08:13:07,560.560 INFO    ] Launching Daemon at Fri Jun  5 08:13:07 IST 2026
[2026-06-05 08:13:07,571.571 INFO    ] ================================================
[2026-06-05 08:13:08,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:13:08
[2026-06-05 08:13:08,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:13:09,204.204 INFO    ] Initializing speech engine...
[2026-06-05 08:13:09,217.217 INFO    ] 2026-06-05 08:13:09
[2026-06-05 08:13:09,497.497 INFO    ] 2026-06-05 08:13:09
[2026-06-05 08:13:09,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:13:09,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:13:09,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:13:09,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:13:09,964.964 INFO    ] time= 05/06/2026 08:13:09
[2026-06-05 08:13:10,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:13:10,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:13:10,111.111 INFO    ] No existing commands found in stream
[2026-06-05 08:13:15,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:13:15,127.127 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 08:13:18,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:13:18,387.387 INFO    ] Checking for system updates...
[2026-06-05 08:13:18,425.425 INFO    ] 200
[2026-06-05 08:13:18,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:18,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:13:18,485.485 INFO    ] No update needed
[2026-06-05 08:13:18,488.488 INFO    ] Checking for camera pi updates...
[2026-06-05 08:13:18,521.521 INFO    ] 200
[2026-06-05 08:13:18,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:18,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:13:18,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:13:18,610.610 INFO    ] No camera update needed
[2026-06-05 08:13:18,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:13:18,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:13:18,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:13:18,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:13:20,665.665 INFO    ] ================================================
[2026-06-05 08:13:20,681.681 INFO    ] Launching Daemon at Fri Jun  5 08:13:20 IST 2026
[2026-06-05 08:13:20,693.693 INFO    ] ================================================
[2026-06-05 08:13:21,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:13:21
[2026-06-05 08:13:21,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:13:22,145.145 INFO    ] Initializing speech engine...
[2026-06-05 08:13:22,154.154 INFO    ] 2026-06-05 08:13:22
[2026-06-05 08:13:22,417.417 INFO    ] 2026-06-05 08:13:22
[2026-06-05 08:13:22,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:13:22,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:13:22,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:13:22,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:13:22,907.907 INFO    ] time= 05/06/2026 08:13:22
[2026-06-05 08:13:22,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:13:22,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:13:23,084.084 INFO    ] No existing commands found in stream
[2026-06-05 08:13:28,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:13:28,115.115 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 08:13:29,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:13:29,884.884 INFO    ] Checking for system updates...
[2026-06-05 08:13:29,920.920 INFO    ] 200
[2026-06-05 08:13:29,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:29,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:13:29,979.979 INFO    ] No update needed
[2026-06-05 08:13:29,982.982 INFO    ] Checking for camera pi updates...
[2026-06-05 08:13:30,017.017 INFO    ] 200
[2026-06-05 08:13:30,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:30,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:13:30,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:13:30,109.109 INFO    ] No camera update needed
[2026-06-05 08:13:30,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:13:30,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:13:30,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:13:30,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:13:32,168.168 INFO    ] ================================================
[2026-06-05 08:13:32,191.191 INFO    ] Launching Daemon at Fri Jun  5 08:13:32 IST 2026
[2026-06-05 08:13:32,203.203 INFO    ] ================================================
[2026-06-05 08:13:32,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:13:32
[2026-06-05 08:13:33,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:13:33,706.706 INFO    ] Initializing speech engine...
[2026-06-05 08:13:33,712.712 INFO    ] 2026-06-05 08:13:33
[2026-06-05 08:13:34,009.009 INFO    ] 2026-06-05 08:13:33
[2026-06-05 08:13:34,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:13:34,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:13:34,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:13:34,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:13:34,394.394 INFO    ] time= 05/06/2026 08:13:34
[2026-06-05 08:13:34,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:13:34,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:13:34,520.520 INFO    ] No existing commands found in stream
[2026-06-05 08:13:39,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:13:39,536.536 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 08:13:41,947.947 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:13:41,950.950 INFO    ] Checking for system updates...
[2026-06-05 08:13:41,986.986 INFO    ] 200
[2026-06-05 08:13:41,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:42,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:13:42,047.047 INFO    ] No update needed
[2026-06-05 08:13:42,050.050 INFO    ] Checking for camera pi updates...
[2026-06-05 08:13:42,084.084 INFO    ] 200
[2026-06-05 08:13:42,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:42,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:13:42,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:13:42,275.275 INFO    ] No camera update needed
[2026-06-05 08:13:42,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:13:42,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:13:42,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:13:42,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:13:44,332.332 INFO    ] ================================================
[2026-06-05 08:13:44,347.347 INFO    ] Launching Daemon at Fri Jun  5 08:13:44 IST 2026
[2026-06-05 08:13:44,358.358 INFO    ] ================================================
[2026-06-05 08:13:45,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:13:45
[2026-06-05 08:13:45,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:13:45,996.996 INFO    ] Initializing speech engine...
[2026-06-05 08:13:46,010.010 INFO    ] 2026-06-05 08:13:45
[2026-06-05 08:13:46,317.317 INFO    ] 2026-06-05 08:13:46
[2026-06-05 08:13:46,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:13:46,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:13:46,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:13:46,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:13:46,761.761 INFO    ] time= 05/06/2026 08:13:46
[2026-06-05 08:13:46,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:13:46,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:13:46,963.963 INFO    ] No existing commands found in stream
[2026-06-05 08:13:51,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:13:51,992.992 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 08:13:56,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:13:56,384.384 INFO    ] Checking for system updates...
[2026-06-05 08:13:56,421.421 INFO    ] 200
[2026-06-05 08:13:56,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:56,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:13:56,480.480 INFO    ] No update needed
[2026-06-05 08:13:56,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 08:13:56,518.518 INFO    ] 200
[2026-06-05 08:13:56,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:13:56,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:13:56,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:13:56,613.613 INFO    ] No camera update needed
[2026-06-05 08:13:56,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:13:56,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:13:56,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:13:56,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:13:58,673.673 INFO    ] ================================================
[2026-06-05 08:13:58,687.687 INFO    ] Launching Daemon at Fri Jun  5 08:13:58 IST 2026
[2026-06-05 08:13:58,698.698 INFO    ] ================================================
[2026-06-05 08:13:59,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:13:59
[2026-06-05 08:13:59,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:14:00,162.162 INFO    ] Initializing speech engine...
[2026-06-05 08:14:00,172.172 INFO    ] 2026-06-05 08:14:00
[2026-06-05 08:14:00,420.420 INFO    ] 2026-06-05 08:14:00
[2026-06-05 08:14:00,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:14:00,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:14:00,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:14:00,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:14:00,916.916 INFO    ] time= 05/06/2026 08:14:00
[2026-06-05 08:14:00,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:14:00,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:14:01,041.041 INFO    ] No existing commands found in stream
[2026-06-05 08:14:06,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:14:06,059.059 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 08:14:10,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:14:10,271.271 INFO    ] Checking for system updates...
[2026-06-05 08:14:10,311.311 INFO    ] 200
[2026-06-05 08:14:10,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:14:10,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:14:10,376.376 INFO    ] No update needed
[2026-06-05 08:14:10,378.378 INFO    ] Checking for camera pi updates...
[2026-06-05 08:14:10,412.412 INFO    ] 200
[2026-06-05 08:14:10,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:14:10,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:14:10,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:14:10,502.502 INFO    ] No camera update needed
[2026-06-05 08:14:10,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:14:10,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:14:10,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:14:10,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:14:12,559.559 INFO    ] ================================================
[2026-06-05 08:14:12,574.574 INFO    ] Launching Daemon at Fri Jun  5 08:14:12 IST 2026
[2026-06-05 08:14:12,585.585 INFO    ] ================================================
[2026-06-05 08:14:13,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:14:13
[2026-06-05 08:14:13,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:14:14,193.193 INFO    ] Initializing speech engine...
[2026-06-05 08:14:14,203.203 INFO    ] 2026-06-05 08:14:14
[2026-06-05 08:14:14,473.473 INFO    ] 2026-06-05 08:14:14
[2026-06-05 08:14:14,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:14:14,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:14:14,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:14:14,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:14:14,942.942 INFO    ] time= 05/06/2026 08:14:14
[2026-06-05 08:14:15,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:14:15,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:14:15,088.088 INFO    ] No existing commands found in stream
[2026-06-05 08:14:20,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:14:20,117.117 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 08:14:22,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:14:22,257.257 INFO    ] Checking for system updates...
[2026-06-05 08:14:22,295.295 INFO    ] 200
[2026-06-05 08:14:22,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:14:22,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:14:22,353.353 INFO    ] No update needed
[2026-06-05 08:14:22,355.355 INFO    ] Checking for camera pi updates...
[2026-06-05 08:14:22,389.389 INFO    ] 200
[2026-06-05 08:14:22,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:14:22,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:14:22,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:14:22,482.482 INFO    ] No camera update needed
[2026-06-05 08:14:22,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:14:22,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:14:22,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:14:22,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:14:24,537.537 INFO    ] ================================================
[2026-06-05 08:14:24,552.552 INFO    ] Launching Daemon at Fri Jun  5 08:14:24 IST 2026
[2026-06-05 08:14:24,562.562 INFO    ] ================================================
[2026-06-05 08:14:25,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:14:25
[2026-06-05 08:14:25,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:14:26,023.023 INFO    ] Initializing speech engine...
[2026-06-05 08:14:26,030.030 INFO    ] 2026-06-05 08:14:26
[2026-06-05 08:14:26,291.291 INFO    ] 2026-06-05 08:14:26
[2026-06-05 08:14:26,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:14:26,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:14:26,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:14:26,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:14:26,755.755 INFO    ] time= 05/06/2026 08:14:26
[2026-06-05 08:14:26,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:14:26,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:14:26,898.898 INFO    ] No existing commands found in stream
[2026-06-05 08:14:31,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:14:31,913.913 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 08:14:35,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:14:35,054.054 INFO    ] Checking for system updates...
[2026-06-05 08:14:35,090.090 INFO    ] 200
[2026-06-05 08:14:35,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:14:35,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:14:35,153.153 INFO    ] No update needed
[2026-06-05 08:14:35,156.156 INFO    ] Checking for camera pi updates...
[2026-06-05 08:14:35,190.190 INFO    ] 200
[2026-06-05 08:14:35,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:14:35,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:14:35,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:14:35,279.279 INFO    ] No camera update needed
[2026-06-05 08:14:35,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:14:35,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:14:35,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:14:35,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:14:37,336.336 INFO    ] ================================================
[2026-06-05 08:14:37,351.351 INFO    ] Launching Daemon at Fri Jun  5 08:14:37 IST 2026
[2026-06-05 08:14:37,362.362 INFO    ] ================================================
[2026-06-05 08:14:37,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:14:37
[2026-06-05 08:14:38,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:14:38,897.897 INFO    ] Initializing speech engine...
[2026-06-05 08:14:38,904.904 INFO    ] 2026-06-05 08:14:38
[2026-06-05 08:14:39,175.175 INFO    ] 2026-06-05 08:14:39
[2026-06-05 08:14:39,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:14:39,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:14:39,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:14:39,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:14:39,640.640 INFO    ] time= 05/06/2026 08:14:39
[2026-06-05 08:14:39,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:14:39,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:14:39,787.787 INFO    ] No existing commands found in stream
[2026-06-05 08:14:44,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:14:44,803.803 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 08:14:48,767.767 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:14:48,770.770 INFO    ] Checking for system updates...
[2026-06-05 08:14:48,812.812 INFO    ] 200
[2026-06-05 08:14:48,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:14:48,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:14:48,878.878 INFO    ] No update needed
[2026-06-05 08:14:48,881.881 INFO    ] Checking for camera pi updates...
[2026-06-05 08:14:48,919.919 INFO    ] 200
[2026-06-05 08:14:48,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:14:48,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:14:49,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:14:49,005.005 INFO    ] No camera update needed
[2026-06-05 08:14:49,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:14:49,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:14:49,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:14:49,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:14:51,060.060 INFO    ] ================================================
[2026-06-05 08:14:51,075.075 INFO    ] Launching Daemon at Fri Jun  5 08:14:51 IST 2026
[2026-06-05 08:14:51,086.086 INFO    ] ================================================
[2026-06-05 08:14:51,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:14:51
[2026-06-05 08:14:52,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:14:52,674.674 INFO    ] Initializing speech engine...
[2026-06-05 08:14:52,681.681 INFO    ] 2026-06-05 08:14:52
[2026-06-05 08:14:52,971.971 INFO    ] 2026-06-05 08:14:52
[2026-06-05 08:14:53,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:14:53,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:14:53,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:14:53,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:14:53,504.504 INFO    ] time= 05/06/2026 08:14:53
[2026-06-05 08:14:53,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:14:53,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:14:53,657.657 INFO    ] No existing commands found in stream
[2026-06-05 08:14:58,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:14:58,674.674 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 08:15:03,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:15:03,907.907 INFO    ] Checking for system updates...
[2026-06-05 08:15:03,948.948 INFO    ] 200
[2026-06-05 08:15:03,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:04,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:15:04,026.026 INFO    ] No update needed
[2026-06-05 08:15:04,029.029 INFO    ] Checking for camera pi updates...
[2026-06-05 08:15:04,064.064 INFO    ] 200
[2026-06-05 08:15:04,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:04,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:15:04,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:15:04,174.174 INFO    ] No camera update needed
[2026-06-05 08:15:04,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:15:04,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:15:04,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:15:04,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:15:06,233.233 INFO    ] ================================================
[2026-06-05 08:15:06,249.249 INFO    ] Launching Daemon at Fri Jun  5 08:15:06 IST 2026
[2026-06-05 08:15:06,259.259 INFO    ] ================================================
[2026-06-05 08:15:06,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:15:06
[2026-06-05 08:15:07,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:15:07,738.738 INFO    ] Initializing speech engine...
[2026-06-05 08:15:07,753.753 INFO    ] 2026-06-05 08:15:07
[2026-06-05 08:15:08,033.033 INFO    ] 2026-06-05 08:15:08
[2026-06-05 08:15:08,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:15:08,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:15:08,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:15:08,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:15:08,438.438 INFO    ] time= 05/06/2026 08:15:08
[2026-06-05 08:15:08,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:15:08,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:15:08,547.547 INFO    ] No existing commands found in stream
[2026-06-05 08:15:13,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:15:13,562.562 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 08:15:14,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:15:14,475.475 INFO    ] Checking for system updates...
[2026-06-05 08:15:14,513.513 INFO    ] 200
[2026-06-05 08:15:14,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:14,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:15:14,574.574 INFO    ] No update needed
[2026-06-05 08:15:14,577.577 INFO    ] Checking for camera pi updates...
[2026-06-05 08:15:14,615.615 INFO    ] 200
[2026-06-05 08:15:14,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:14,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:15:14,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:15:14,701.701 INFO    ] No camera update needed
[2026-06-05 08:15:14,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:15:14,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:15:14,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:15:14,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:15:16,760.760 INFO    ] ================================================
[2026-06-05 08:15:16,776.776 INFO    ] Launching Daemon at Fri Jun  5 08:15:16 IST 2026
[2026-06-05 08:15:16,787.787 INFO    ] ================================================
[2026-06-05 08:15:17,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:15:17
[2026-06-05 08:15:18,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:15:18,347.347 INFO    ] Initializing speech engine...
[2026-06-05 08:15:18,355.355 INFO    ] 2026-06-05 08:15:18
[2026-06-05 08:15:18,662.662 INFO    ] 2026-06-05 08:15:18
[2026-06-05 08:15:18,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:15:18,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:15:18,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:15:19,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:15:19,049.049 INFO    ] time= 05/06/2026 08:15:19
[2026-06-05 08:15:19,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:15:19,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:15:19,127.127 INFO    ] No existing commands found in stream
[2026-06-05 08:15:24,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:15:24,143.143 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 08:15:25,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:15:25,205.205 INFO    ] Checking for system updates...
[2026-06-05 08:15:25,242.242 INFO    ] 200
[2026-06-05 08:15:25,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:25,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:15:25,302.302 INFO    ] No update needed
[2026-06-05 08:15:25,305.305 INFO    ] Checking for camera pi updates...
[2026-06-05 08:15:25,339.339 INFO    ] 200
[2026-06-05 08:15:25,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:25,383.383 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:15:25,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:15:25,434.434 INFO    ] No camera update needed
[2026-06-05 08:15:25,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:15:25,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:15:25,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:15:25,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:15:27,490.490 INFO    ] ================================================
[2026-06-05 08:15:27,505.505 INFO    ] Launching Daemon at Fri Jun  5 08:15:27 IST 2026
[2026-06-05 08:15:27,517.517 INFO    ] ================================================
[2026-06-05 08:15:28,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:15:28
[2026-06-05 08:15:28,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:15:28,997.997 INFO    ] Initializing speech engine...
[2026-06-05 08:15:29,005.005 INFO    ] 2026-06-05 08:15:28
[2026-06-05 08:15:29,265.265 INFO    ] 2026-06-05 08:15:29
[2026-06-05 08:15:29,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:15:29,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:15:29,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:15:29,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:15:29,733.733 INFO    ] time= 05/06/2026 08:15:29
[2026-06-05 08:15:29,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:15:29,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:15:29,872.872 INFO    ] No existing commands found in stream
[2026-06-05 08:15:34,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:15:34,892.892 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 08:15:38,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:15:38,564.564 INFO    ] Checking for system updates...
[2026-06-05 08:15:38,600.600 INFO    ] 200
[2026-06-05 08:15:38,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:38,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:15:38,667.667 INFO    ] No update needed
[2026-06-05 08:15:38,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 08:15:38,703.703 INFO    ] 200
[2026-06-05 08:15:38,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:38,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:15:38,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:15:38,798.798 INFO    ] No camera update needed
[2026-06-05 08:15:38,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:15:38,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:15:38,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:15:38,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:15:40,855.855 INFO    ] ================================================
[2026-06-05 08:15:40,871.871 INFO    ] Launching Daemon at Fri Jun  5 08:15:40 IST 2026
[2026-06-05 08:15:40,882.882 INFO    ] ================================================
[2026-06-05 08:15:41,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:15:41
[2026-06-05 08:15:42,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:15:42,328.328 INFO    ] Initializing speech engine...
[2026-06-05 08:15:42,337.337 INFO    ] 2026-06-05 08:15:42
[2026-06-05 08:15:42,633.633 INFO    ] 2026-06-05 08:15:42
[2026-06-05 08:15:42,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:15:42,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:15:42,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:15:43,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:15:43,054.054 INFO    ] time= 05/06/2026 08:15:43
[2026-06-05 08:15:43,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:15:43,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:15:43,140.140 INFO    ] No existing commands found in stream
[2026-06-05 08:15:48,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:15:48,156.156 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 08:15:51,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:15:51,534.534 INFO    ] Checking for system updates...
[2026-06-05 08:15:51,572.572 INFO    ] 200
[2026-06-05 08:15:51,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:51,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:15:51,632.632 INFO    ] No update needed
[2026-06-05 08:15:51,635.635 INFO    ] Checking for camera pi updates...
[2026-06-05 08:15:51,670.670 INFO    ] 200
[2026-06-05 08:15:51,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:15:51,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:15:51,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:15:51,870.870 INFO    ] No camera update needed
[2026-06-05 08:15:51,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:15:51,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:15:51,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:15:51,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:15:53,929.929 INFO    ] ================================================
[2026-06-05 08:15:53,946.946 INFO    ] Launching Daemon at Fri Jun  5 08:15:53 IST 2026
[2026-06-05 08:15:53,957.957 INFO    ] ================================================
[2026-06-05 08:15:54,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:15:54
[2026-06-05 08:15:55,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:15:55,371.371 INFO    ] Initializing speech engine...
[2026-06-05 08:15:55,394.394 INFO    ] 2026-06-05 08:15:55
[2026-06-05 08:15:55,650.650 INFO    ] 2026-06-05 08:15:55
[2026-06-05 08:15:55,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:15:55,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:15:55,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:15:56,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:15:56,106.106 INFO    ] time= 05/06/2026 08:15:56
[2026-06-05 08:15:56,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:15:56,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:15:56,280.280 INFO    ] No existing commands found in stream
[2026-06-05 08:16:01,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:16:01,297.297 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 08:16:02,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:16:02,311.311 INFO    ] Checking for system updates...
[2026-06-05 08:16:02,357.357 INFO    ] 200
[2026-06-05 08:16:02,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:16:02,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:16:02,433.433 INFO    ] No update needed
[2026-06-05 08:16:02,437.437 INFO    ] Checking for camera pi updates...
[2026-06-05 08:16:02,486.486 INFO    ] 200
[2026-06-05 08:16:02,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:16:02,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:16:02,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:16:02,588.588 INFO    ] No camera update needed
[2026-06-05 08:16:02,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:16:02,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:16:02,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:16:02,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:16:04,658.658 INFO    ] ================================================
[2026-06-05 08:16:04,674.674 INFO    ] Launching Daemon at Fri Jun  5 08:16:04 IST 2026
[2026-06-05 08:16:04,686.686 INFO    ] ================================================
[2026-06-05 08:16:05,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:16:05
[2026-06-05 08:16:05,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:16:06,122.122 INFO    ] Initializing speech engine...
[2026-06-05 08:16:06,142.142 INFO    ] 2026-06-05 08:16:06
[2026-06-05 08:16:06,405.405 INFO    ] 2026-06-05 08:16:06
[2026-06-05 08:16:06,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:16:06,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:16:06,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:16:06,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:16:06,905.905 INFO    ] time= 05/06/2026 08:16:06
[2026-06-05 08:16:06,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:16:06,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:16:07,105.105 INFO    ] No existing commands found in stream
[2026-06-05 08:16:12,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:16:12,133.133 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 08:16:15,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:16:15,983.983 INFO    ] Checking for system updates...
[2026-06-05 08:16:16,029.029 INFO    ] 200
[2026-06-05 08:16:16,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 08:16:16,035.035 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 08:16:16,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 08:16:16,078.078 INFO    ] 200
[2026-06-05 08:16:16,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 08:16:16,084.084 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 08:16:16,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:16:16,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:16:16,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:16:16,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:16:18,147.147 INFO    ] ================================================
[2026-06-05 08:16:18,163.163 INFO    ] Launching Daemon at Fri Jun  5 08:16:18 IST 2026
[2026-06-05 08:16:18,174.174 INFO    ] ================================================
[2026-06-05 08:16:18,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:16:18
[2026-06-05 08:16:19,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:16:19,823.823 INFO    ] Initializing speech engine...
[2026-06-05 08:16:19,832.832 INFO    ] 2026-06-05 08:16:19
[2026-06-05 08:16:20,122.122 INFO    ] 2026-06-05 08:16:20
[2026-06-05 08:16:20,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:16:20,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:16:20,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:16:20,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:16:20,574.574 INFO    ] time= 05/06/2026 08:16:20
[2026-06-05 08:16:20,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:16:20,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:16:20,789.789 INFO    ] No existing commands found in stream
[2026-06-05 08:16:25,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:16:25,827.827 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 08:16:28,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:16:28,373.373 INFO    ] Checking for system updates...
[2026-06-05 08:16:28,412.412 INFO    ] 200
[2026-06-05 08:16:28,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:16:28,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:16:28,471.471 INFO    ] No update needed
[2026-06-05 08:16:28,474.474 INFO    ] Checking for camera pi updates...
[2026-06-05 08:16:28,522.522 INFO    ] 200
[2026-06-05 08:16:28,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:16:28,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:16:28,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:16:28,612.612 INFO    ] No camera update needed
[2026-06-05 08:16:28,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:16:28,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:16:28,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:16:28,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:16:30,668.668 INFO    ] ================================================
[2026-06-05 08:16:30,685.685 INFO    ] Launching Daemon at Fri Jun  5 08:16:30 IST 2026
[2026-06-05 08:16:30,696.696 INFO    ] ================================================
[2026-06-05 08:16:31,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:16:31
[2026-06-05 08:16:32,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:16:32,480.480 INFO    ] Initializing speech engine...
[2026-06-05 08:16:32,492.492 INFO    ] 2026-06-05 08:16:32
[2026-06-05 08:16:32,790.790 INFO    ] 2026-06-05 08:16:32
[2026-06-05 08:16:32,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:16:33,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:16:33,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:16:33,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:16:33,322.322 INFO    ] time= 05/06/2026 08:16:33
[2026-06-05 08:16:33,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:16:33,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:16:33,467.467 INFO    ] No existing commands found in stream
[2026-06-05 08:16:38,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:16:38,490.490 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 08:16:40,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:16:40,725.725 INFO    ] Checking for system updates...
[2026-06-05 08:16:40,762.762 INFO    ] 200
[2026-06-05 08:16:40,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:16:40,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:16:40,822.822 INFO    ] No update needed
[2026-06-05 08:16:40,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 08:16:40,858.858 INFO    ] 200
[2026-06-05 08:16:40,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:16:40,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:16:40,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:16:40,969.969 INFO    ] No camera update needed
[2026-06-05 08:16:40,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:16:40,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:16:40,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:16:40,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:16:43,025.025 INFO    ] ================================================
[2026-06-05 08:16:43,041.041 INFO    ] Launching Daemon at Fri Jun  5 08:16:43 IST 2026
[2026-06-05 08:16:43,052.052 INFO    ] ================================================
[2026-06-05 08:16:43,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:16:43
[2026-06-05 08:16:44,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:16:44,469.469 INFO    ] Initializing speech engine...
[2026-06-05 08:16:44,491.491 INFO    ] 2026-06-05 08:16:44
[2026-06-05 08:16:44,743.743 INFO    ] 2026-06-05 08:16:44
[2026-06-05 08:16:44,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:16:44,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:16:44,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:16:45,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:16:45,113.113 INFO    ] time= 05/06/2026 08:16:45
[2026-06-05 08:16:45,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:16:45,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:16:45,289.289 INFO    ] No existing commands found in stream
[2026-06-05 08:16:50,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:16:50,322.322 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 08:16:54,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:16:54,385.385 INFO    ] Checking for system updates...
[2026-06-05 08:16:54,420.420 INFO    ] 200
[2026-06-05 08:16:54,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:16:54,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:16:54,478.478 INFO    ] No update needed
[2026-06-05 08:16:54,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 08:16:54,514.514 INFO    ] 200
[2026-06-05 08:16:54,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:16:54,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:16:54,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:16:54,604.604 INFO    ] No camera update needed
[2026-06-05 08:16:54,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:16:54,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:16:54,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:16:54,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:16:56,663.663 INFO    ] ================================================
[2026-06-05 08:16:56,680.680 INFO    ] Launching Daemon at Fri Jun  5 08:16:56 IST 2026
[2026-06-05 08:16:56,691.691 INFO    ] ================================================
[2026-06-05 08:16:57,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:16:57
[2026-06-05 08:16:57,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:16:58,092.092 INFO    ] Initializing speech engine...
[2026-06-05 08:16:58,101.101 INFO    ] 2026-06-05 08:16:58
[2026-06-05 08:16:58,378.378 INFO    ] 2026-06-05 08:16:58
[2026-06-05 08:16:58,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:16:58,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:16:58,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:16:58,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:16:58,847.847 INFO    ] time= 05/06/2026 08:16:58
[2026-06-05 08:16:58,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:16:58,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:16:59,009.009 INFO    ] No existing commands found in stream
[2026-06-05 08:17:04,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:17:04,023.023 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 08:17:07,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:17:07,401.401 INFO    ] Checking for system updates...
[2026-06-05 08:17:07,441.441 INFO    ] 200
[2026-06-05 08:17:07,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:07,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:17:07,502.502 INFO    ] No update needed
[2026-06-05 08:17:07,504.504 INFO    ] Checking for camera pi updates...
[2026-06-05 08:17:07,538.538 INFO    ] 200
[2026-06-05 08:17:07,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:07,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:17:07,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:17:07,635.635 INFO    ] No camera update needed
[2026-06-05 08:17:07,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:17:07,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:17:07,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:17:07,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:17:09,689.689 INFO    ] ================================================
[2026-06-05 08:17:09,706.706 INFO    ] Launching Daemon at Fri Jun  5 08:17:09 IST 2026
[2026-06-05 08:17:09,716.716 INFO    ] ================================================
[2026-06-05 08:17:10,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:17:10
[2026-06-05 08:17:10,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:17:11,168.168 INFO    ] Initializing speech engine...
[2026-06-05 08:17:11,177.177 INFO    ] 2026-06-05 08:17:11
[2026-06-05 08:17:11,473.473 INFO    ] 2026-06-05 08:17:11
[2026-06-05 08:17:11,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:17:11,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:17:11,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:17:11,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:17:11,872.872 INFO    ] time= 05/06/2026 08:17:11
[2026-06-05 08:17:11,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:17:11,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:17:11,948.948 INFO    ] No existing commands found in stream
[2026-06-05 08:17:16,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:17:16,963.963 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 08:17:19,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:17:19,915.915 INFO    ] Checking for system updates...
[2026-06-05 08:17:19,956.956 INFO    ] 200
[2026-06-05 08:17:19,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:20,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:17:20,016.016 INFO    ] No update needed
[2026-06-05 08:17:20,019.019 INFO    ] Checking for camera pi updates...
[2026-06-05 08:17:20,053.053 INFO    ] 200
[2026-06-05 08:17:20,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:20,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:17:20,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:17:20,149.149 INFO    ] No camera update needed
[2026-06-05 08:17:20,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:17:20,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:17:20,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:17:20,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:17:22,205.205 INFO    ] ================================================
[2026-06-05 08:17:22,221.221 INFO    ] Launching Daemon at Fri Jun  5 08:17:22 IST 2026
[2026-06-05 08:17:22,233.233 INFO    ] ================================================
[2026-06-05 08:17:22,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:17:22
[2026-06-05 08:17:23,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:17:23,863.863 INFO    ] Initializing speech engine...
[2026-06-05 08:17:23,877.877 INFO    ] 2026-06-05 08:17:23
[2026-06-05 08:17:24,157.157 INFO    ] 2026-06-05 08:17:24
[2026-06-05 08:17:24,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:17:24,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:17:24,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:17:24,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:17:24,647.647 INFO    ] time= 05/06/2026 08:17:24
[2026-06-05 08:17:24,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:17:24,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:17:24,822.822 INFO    ] No existing commands found in stream
[2026-06-05 08:17:29,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:17:29,848.848 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 08:17:32,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:17:32,099.099 INFO    ] Checking for system updates...
[2026-06-05 08:17:32,140.140 INFO    ] 200
[2026-06-05 08:17:32,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:32,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:17:32,210.210 INFO    ] No update needed
[2026-06-05 08:17:32,213.213 INFO    ] Checking for camera pi updates...
[2026-06-05 08:17:32,248.248 INFO    ] 200
[2026-06-05 08:17:32,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:32,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:17:32,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:17:32,330.330 INFO    ] No camera update needed
[2026-06-05 08:17:32,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:17:32,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:17:32,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:17:32,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:17:34,388.388 INFO    ] ================================================
[2026-06-05 08:17:34,403.403 INFO    ] Launching Daemon at Fri Jun  5 08:17:34 IST 2026
[2026-06-05 08:17:34,415.415 INFO    ] ================================================
[2026-06-05 08:17:35,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:17:34
[2026-06-05 08:17:35,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:17:35,884.884 INFO    ] Initializing speech engine...
[2026-06-05 08:17:35,890.890 INFO    ] 2026-06-05 08:17:35
[2026-06-05 08:17:36,139.139 INFO    ] 2026-06-05 08:17:36
[2026-06-05 08:17:36,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:17:36,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:17:36,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:17:36,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:17:36,597.597 INFO    ] time= 05/06/2026 08:17:36
[2026-06-05 08:17:36,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:17:36,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:17:36,757.757 INFO    ] No existing commands found in stream
[2026-06-05 08:17:41,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:17:41,772.772 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 08:17:45,918.918 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:17:45,920.920 INFO    ] Checking for system updates...
[2026-06-05 08:17:45,957.957 INFO    ] 200
[2026-06-05 08:17:45,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:46,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:17:46,017.017 INFO    ] No update needed
[2026-06-05 08:17:46,019.019 INFO    ] Checking for camera pi updates...
[2026-06-05 08:17:46,058.058 INFO    ] 200
[2026-06-05 08:17:46,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:46,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:17:46,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:17:46,153.153 INFO    ] No camera update needed
[2026-06-05 08:17:46,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:17:46,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:17:46,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:17:46,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:17:48,210.210 INFO    ] ================================================
[2026-06-05 08:17:48,225.225 INFO    ] Launching Daemon at Fri Jun  5 08:17:48 IST 2026
[2026-06-05 08:17:48,236.236 INFO    ] ================================================
[2026-06-05 08:17:48,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:17:48
[2026-06-05 08:17:49,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:17:49,707.707 INFO    ] Initializing speech engine...
[2026-06-05 08:17:49,713.713 INFO    ] 2026-06-05 08:17:49
[2026-06-05 08:17:49,963.963 INFO    ] 2026-06-05 08:17:49
[2026-06-05 08:17:50,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:17:50,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:17:50,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:17:50,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:17:50,420.420 INFO    ] time= 05/06/2026 08:17:50
[2026-06-05 08:17:50,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:17:50,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:17:50,592.592 INFO    ] No existing commands found in stream
[2026-06-05 08:17:55,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:17:55,630.630 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 08:17:58,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:17:58,328.328 INFO    ] Checking for system updates...
[2026-06-05 08:17:58,365.365 INFO    ] 200
[2026-06-05 08:17:58,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:58,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:17:58,431.431 INFO    ] No update needed
[2026-06-05 08:17:58,434.434 INFO    ] Checking for camera pi updates...
[2026-06-05 08:17:58,471.471 INFO    ] 200
[2026-06-05 08:17:58,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:17:58,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:17:58,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:17:58,672.672 INFO    ] No camera update needed
[2026-06-05 08:17:58,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:17:58,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:17:58,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:17:58,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:18:00,730.730 INFO    ] ================================================
[2026-06-05 08:18:00,745.745 INFO    ] Launching Daemon at Fri Jun  5 08:18:00 IST 2026
[2026-06-05 08:18:00,756.756 INFO    ] ================================================
[2026-06-05 08:18:01,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:18:01
[2026-06-05 08:18:02,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:18:02,614.614 INFO    ] Initializing speech engine...
[2026-06-05 08:18:02,628.628 INFO    ] 2026-06-05 08:18:02
[2026-06-05 08:18:02,919.919 INFO    ] 2026-06-05 08:18:02
[2026-06-05 08:18:02,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:18:03,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:18:03,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:18:03,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:18:03,279.279 INFO    ] time= 05/06/2026 08:18:03
[2026-06-05 08:18:03,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:18:03,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:18:03,375.375 INFO    ] No existing commands found in stream
[2026-06-05 08:18:08,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:18:08,411.411 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 08:18:12,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:18:12,181.181 INFO    ] Checking for system updates...
[2026-06-05 08:18:12,221.221 INFO    ] 200
[2026-06-05 08:18:12,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:12,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:18:12,280.280 INFO    ] No update needed
[2026-06-05 08:18:12,282.282 INFO    ] Checking for camera pi updates...
[2026-06-05 08:18:12,317.317 INFO    ] 200
[2026-06-05 08:18:12,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:12,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:18:12,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:18:12,411.411 INFO    ] No camera update needed
[2026-06-05 08:18:12,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:18:12,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:18:12,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:18:12,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:18:14,469.469 INFO    ] ================================================
[2026-06-05 08:18:14,484.484 INFO    ] Launching Daemon at Fri Jun  5 08:18:14 IST 2026
[2026-06-05 08:18:14,496.496 INFO    ] ================================================
[2026-06-05 08:18:15,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:18:15
[2026-06-05 08:18:15,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:18:15,965.965 INFO    ] Initializing speech engine...
[2026-06-05 08:18:15,974.974 INFO    ] 2026-06-05 08:18:15
[2026-06-05 08:18:16,235.235 INFO    ] 2026-06-05 08:18:16
[2026-06-05 08:18:16,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:18:16,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:18:16,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:18:16,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:18:16,697.697 INFO    ] time= 05/06/2026 08:18:16
[2026-06-05 08:18:16,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:18:16,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:18:16,843.843 INFO    ] No existing commands found in stream
[2026-06-05 08:18:21,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:18:21,858.858 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 08:18:24,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:18:24,627.627 INFO    ] Checking for system updates...
[2026-06-05 08:18:24,664.664 INFO    ] 200
[2026-06-05 08:18:24,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:24,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:18:24,733.733 INFO    ] No update needed
[2026-06-05 08:18:24,736.736 INFO    ] Checking for camera pi updates...
[2026-06-05 08:18:24,773.773 INFO    ] 200
[2026-06-05 08:18:24,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:24,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:18:24,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:18:24,871.871 INFO    ] No camera update needed
[2026-06-05 08:18:24,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:18:24,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:18:24,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:18:24,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:18:26,929.929 INFO    ] ================================================
[2026-06-05 08:18:26,945.945 INFO    ] Launching Daemon at Fri Jun  5 08:18:26 IST 2026
[2026-06-05 08:18:26,956.956 INFO    ] ================================================
[2026-06-05 08:18:27,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:18:27
[2026-06-05 08:18:28,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:18:28,426.426 INFO    ] Initializing speech engine...
[2026-06-05 08:18:28,433.433 INFO    ] 2026-06-05 08:18:28
[2026-06-05 08:18:28,695.695 INFO    ] 2026-06-05 08:18:28
[2026-06-05 08:18:28,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:18:28,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:18:28,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:18:29,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:18:29,156.156 INFO    ] time= 05/06/2026 08:18:29
[2026-06-05 08:18:29,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:18:29,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:18:29,302.302 INFO    ] No existing commands found in stream
[2026-06-05 08:18:34,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:18:34,317.317 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 08:18:36,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:18:36,040.040 INFO    ] Checking for system updates...
[2026-06-05 08:18:36,080.080 INFO    ] 200
[2026-06-05 08:18:36,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:36,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:18:36,144.144 INFO    ] No update needed
[2026-06-05 08:18:36,146.146 INFO    ] Checking for camera pi updates...
[2026-06-05 08:18:36,180.180 INFO    ] 200
[2026-06-05 08:18:36,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:36,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:18:36,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:18:36,279.279 INFO    ] No camera update needed
[2026-06-05 08:18:36,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:18:36,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:18:36,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:18:36,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:18:38,336.336 INFO    ] ================================================
[2026-06-05 08:18:38,352.352 INFO    ] Launching Daemon at Fri Jun  5 08:18:38 IST 2026
[2026-06-05 08:18:38,362.362 INFO    ] ================================================
[2026-06-05 08:18:39,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:18:39
[2026-06-05 08:18:39,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:18:39,846.846 INFO    ] Initializing speech engine...
[2026-06-05 08:18:39,852.852 INFO    ] 2026-06-05 08:18:39
[2026-06-05 08:18:40,126.126 INFO    ] 2026-06-05 08:18:40
[2026-06-05 08:18:40,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:18:40,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:18:40,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:18:40,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:18:40,610.610 INFO    ] time= 05/06/2026 08:18:40
[2026-06-05 08:18:40,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:18:40,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:18:40,759.759 INFO    ] No existing commands found in stream
[2026-06-05 08:18:45,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:18:45,774.774 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 08:18:46,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:18:46,582.582 INFO    ] Checking for system updates...
[2026-06-05 08:18:46,618.618 INFO    ] 200
[2026-06-05 08:18:46,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:46,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:18:46,684.684 INFO    ] No update needed
[2026-06-05 08:18:46,686.686 INFO    ] Checking for camera pi updates...
[2026-06-05 08:18:46,720.720 INFO    ] 200
[2026-06-05 08:18:46,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:46,763.763 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:18:46,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:18:46,808.808 INFO    ] No camera update needed
[2026-06-05 08:18:46,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:18:46,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:18:46,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:18:46,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:18:48,864.864 INFO    ] ================================================
[2026-06-05 08:18:48,879.879 INFO    ] Launching Daemon at Fri Jun  5 08:18:48 IST 2026
[2026-06-05 08:18:48,891.891 INFO    ] ================================================
[2026-06-05 08:18:49,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:18:49
[2026-06-05 08:18:50,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:18:50,316.316 INFO    ] Initializing speech engine...
[2026-06-05 08:18:50,325.325 INFO    ] 2026-06-05 08:18:50
[2026-06-05 08:18:50,575.575 INFO    ] 2026-06-05 08:18:50
[2026-06-05 08:18:50,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:18:50,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:18:50,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:18:50,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:18:50,951.951 INFO    ] time= 05/06/2026 08:18:50
[2026-06-05 08:18:50,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:18:51,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:18:51,123.123 INFO    ] No existing commands found in stream
[2026-06-05 08:18:56,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:18:56,151.151 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 08:18:59,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:18:59,201.201 INFO    ] Checking for system updates...
[2026-06-05 08:18:59,254.254 INFO    ] 200
[2026-06-05 08:18:59,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:59,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:18:59,315.315 INFO    ] No update needed
[2026-06-05 08:18:59,318.318 INFO    ] Checking for camera pi updates...
[2026-06-05 08:18:59,356.356 INFO    ] 200
[2026-06-05 08:18:59,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:18:59,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:18:59,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:18:59,457.457 INFO    ] No camera update needed
[2026-06-05 08:18:59,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:18:59,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:18:59,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:18:59,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:19:01,513.513 INFO    ] ================================================
[2026-06-05 08:19:01,529.529 INFO    ] Launching Daemon at Fri Jun  5 08:19:01 IST 2026
[2026-06-05 08:19:01,540.540 INFO    ] ================================================
[2026-06-05 08:19:02,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:19:02
[2026-06-05 08:19:02,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:19:03,201.201 INFO    ] Initializing speech engine...
[2026-06-05 08:19:03,210.210 INFO    ] 2026-06-05 08:19:03
[2026-06-05 08:19:03,495.495 INFO    ] 2026-06-05 08:19:03
[2026-06-05 08:19:03,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:19:03,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:19:03,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:19:03,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:19:04,005.005 INFO    ] time= 05/06/2026 08:19:03
[2026-06-05 08:19:04,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:19:04,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:19:04,172.172 INFO    ] No existing commands found in stream
[2026-06-05 08:19:09,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:19:09,189.189 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 08:19:13,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:19:13,419.419 INFO    ] Checking for system updates...
[2026-06-05 08:19:13,456.456 INFO    ] 200
[2026-06-05 08:19:13,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:19:13,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:19:13,521.521 INFO    ] No update needed
[2026-06-05 08:19:13,523.523 INFO    ] Checking for camera pi updates...
[2026-06-05 08:19:13,558.558 INFO    ] 200
[2026-06-05 08:19:13,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:19:13,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:19:13,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:19:13,660.660 INFO    ] No camera update needed
[2026-06-05 08:19:13,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:19:13,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:19:13,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:19:13,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:19:15,717.717 INFO    ] ================================================
[2026-06-05 08:19:15,733.733 INFO    ] Launching Daemon at Fri Jun  5 08:19:15 IST 2026
[2026-06-05 08:19:15,745.745 INFO    ] ================================================
[2026-06-05 08:19:16,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:19:16
[2026-06-05 08:19:17,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:19:17,379.379 INFO    ] Initializing speech engine...
[2026-06-05 08:19:17,388.388 INFO    ] 2026-06-05 08:19:17
[2026-06-05 08:19:17,663.663 INFO    ] 2026-06-05 08:19:17
[2026-06-05 08:19:17,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:19:17,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:19:17,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:19:18,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:19:18,141.141 INFO    ] time= 05/06/2026 08:19:18
[2026-06-05 08:19:18,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:19:18,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:19:18,353.353 INFO    ] No existing commands found in stream
[2026-06-05 08:19:23,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:19:23,385.385 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 08:19:27,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:19:27,608.608 INFO    ] Checking for system updates...
[2026-06-05 08:19:27,645.645 INFO    ] 200
[2026-06-05 08:19:27,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:19:27,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:19:27,712.712 INFO    ] No update needed
[2026-06-05 08:19:27,714.714 INFO    ] Checking for camera pi updates...
[2026-06-05 08:19:27,749.749 INFO    ] 200
[2026-06-05 08:19:27,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:19:27,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:19:27,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:19:27,842.842 INFO    ] No camera update needed
[2026-06-05 08:19:27,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:19:27,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:19:27,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:19:27,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:19:29,899.899 INFO    ] ================================================
[2026-06-05 08:19:29,915.915 INFO    ] Launching Daemon at Fri Jun  5 08:19:29 IST 2026
[2026-06-05 08:19:29,926.926 INFO    ] ================================================
[2026-06-05 08:19:30,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:19:30
[2026-06-05 08:19:31,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:19:31,532.532 INFO    ] Initializing speech engine...
[2026-06-05 08:19:31,546.546 INFO    ] 2026-06-05 08:19:31
[2026-06-05 08:19:31,824.824 INFO    ] 2026-06-05 08:19:31
[2026-06-05 08:19:31,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:19:32,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:19:32,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:19:32,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:19:32,400.400 INFO    ] time= 05/06/2026 08:19:32
[2026-06-05 08:19:32,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:19:32,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:19:32,547.547 INFO    ] No existing commands found in stream
[2026-06-05 08:19:37,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:19:37,565.565 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 08:19:39,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:19:39,609.609 INFO    ] Checking for system updates...
[2026-06-05 08:19:39,651.651 INFO    ] 200
[2026-06-05 08:19:39,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:19:39,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:19:39,713.713 INFO    ] No update needed
[2026-06-05 08:19:39,716.716 INFO    ] Checking for camera pi updates...
[2026-06-05 08:19:39,751.751 INFO    ] 200
[2026-06-05 08:19:39,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:19:39,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:19:39,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:19:39,847.847 INFO    ] No camera update needed
[2026-06-05 08:19:39,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:19:39,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:19:39,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:19:39,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:19:41,903.903 INFO    ] ================================================
[2026-06-05 08:19:41,918.918 INFO    ] Launching Daemon at Fri Jun  5 08:19:41 IST 2026
[2026-06-05 08:19:41,929.929 INFO    ] ================================================
[2026-06-05 08:19:42,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:19:42
[2026-06-05 08:19:43,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:19:43,390.390 INFO    ] Initializing speech engine...
[2026-06-05 08:19:43,397.397 INFO    ] 2026-06-05 08:19:43
[2026-06-05 08:19:43,658.658 INFO    ] 2026-06-05 08:19:43
[2026-06-05 08:19:43,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:19:43,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:19:43,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:19:44,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:19:44,143.143 INFO    ] time= 05/06/2026 08:19:44
[2026-06-05 08:19:44,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:19:44,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:19:44,268.268 INFO    ] No existing commands found in stream
[2026-06-05 08:19:49,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:19:49,287.287 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 08:19:52,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:19:52,971.971 INFO    ] Checking for system updates...
[2026-06-05 08:19:53,007.007 INFO    ] 200
[2026-06-05 08:19:53,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:19:53,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:19:53,067.067 INFO    ] No update needed
[2026-06-05 08:19:53,069.069 INFO    ] Checking for camera pi updates...
[2026-06-05 08:19:53,107.107 INFO    ] 200
[2026-06-05 08:19:53,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:19:53,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:19:53,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:19:53,195.195 INFO    ] No camera update needed
[2026-06-05 08:19:53,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:19:53,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:19:53,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:19:53,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:19:55,251.251 INFO    ] ================================================
[2026-06-05 08:19:55,267.267 INFO    ] Launching Daemon at Fri Jun  5 08:19:55 IST 2026
[2026-06-05 08:19:55,278.278 INFO    ] ================================================
[2026-06-05 08:19:55,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:19:55
[2026-06-05 08:19:56,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:19:56,901.901 INFO    ] Initializing speech engine...
[2026-06-05 08:19:56,916.916 INFO    ] 2026-06-05 08:19:56
[2026-06-05 08:19:57,196.196 INFO    ] 2026-06-05 08:19:57
[2026-06-05 08:19:57,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:19:57,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:19:57,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:19:57,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:19:57,673.673 INFO    ] time= 05/06/2026 08:19:57
[2026-06-05 08:19:57,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:19:57,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:19:57,869.869 INFO    ] No existing commands found in stream
[2026-06-05 08:20:02,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:20:02,901.901 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 08:20:07,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:20:07,604.604 INFO    ] Checking for system updates...
[2026-06-05 08:20:07,642.642 INFO    ] 200
[2026-06-05 08:20:07,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:07,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:20:07,707.707 INFO    ] No update needed
[2026-06-05 08:20:07,710.710 INFO    ] Checking for camera pi updates...
[2026-06-05 08:20:07,744.744 INFO    ] 200
[2026-06-05 08:20:07,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:07,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:20:07,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:20:07,838.838 INFO    ] No camera update needed
[2026-06-05 08:20:07,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:20:07,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:20:07,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:20:07,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:20:09,893.893 INFO    ] ================================================
[2026-06-05 08:20:09,908.908 INFO    ] Launching Daemon at Fri Jun  5 08:20:09 IST 2026
[2026-06-05 08:20:09,919.919 INFO    ] ================================================
[2026-06-05 08:20:10,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:20:10
[2026-06-05 08:20:11,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:20:11,398.398 INFO    ] Initializing speech engine...
[2026-06-05 08:20:11,423.423 INFO    ] 2026-06-05 08:20:11
[2026-06-05 08:20:11,700.700 INFO    ] 2026-06-05 08:20:11
[2026-06-05 08:20:11,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:20:11,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:20:11,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:20:12,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:20:12,088.088 INFO    ] time= 05/06/2026 08:20:12
[2026-06-05 08:20:12,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:20:12,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:20:12,213.213 INFO    ] No existing commands found in stream
[2026-06-05 08:20:17,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:20:17,228.228 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 08:20:18,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:20:18,328.328 INFO    ] Checking for system updates...
[2026-06-05 08:20:18,369.369 INFO    ] 200
[2026-06-05 08:20:18,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:18,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:20:18,433.433 INFO    ] No update needed
[2026-06-05 08:20:18,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 08:20:18,470.470 INFO    ] 200
[2026-06-05 08:20:18,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:18,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:20:18,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:20:18,562.562 INFO    ] No camera update needed
[2026-06-05 08:20:18,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:20:18,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:20:18,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:20:18,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:20:20,617.617 INFO    ] ================================================
[2026-06-05 08:20:20,633.633 INFO    ] Launching Daemon at Fri Jun  5 08:20:20 IST 2026
[2026-06-05 08:20:20,644.644 INFO    ] ================================================
[2026-06-05 08:20:21,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:20:21
[2026-06-05 08:20:21,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:20:22,277.277 INFO    ] Initializing speech engine...
[2026-06-05 08:20:22,288.288 INFO    ] 2026-06-05 08:20:22
[2026-06-05 08:20:22,563.563 INFO    ] 2026-06-05 08:20:22
[2026-06-05 08:20:22,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:20:22,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:20:22,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:20:23,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:20:23,048.048 INFO    ] time= 05/06/2026 08:20:23
[2026-06-05 08:20:23,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:20:23,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:20:23,201.201 INFO    ] No existing commands found in stream
[2026-06-05 08:20:28,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:20:28,217.217 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 08:20:32,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:20:32,573.573 INFO    ] Checking for system updates...
[2026-06-05 08:20:32,612.612 INFO    ] 200
[2026-06-05 08:20:32,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:32,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:20:32,678.678 INFO    ] No update needed
[2026-06-05 08:20:32,681.681 INFO    ] Checking for camera pi updates...
[2026-06-05 08:20:32,714.714 INFO    ] 200
[2026-06-05 08:20:32,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:32,758.758 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:20:32,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:20:32,792.792 INFO    ] No camera update needed
[2026-06-05 08:20:32,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:20:32,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:20:32,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:20:32,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:20:34,847.847 INFO    ] ================================================
[2026-06-05 08:20:34,862.862 INFO    ] Launching Daemon at Fri Jun  5 08:20:34 IST 2026
[2026-06-05 08:20:34,873.873 INFO    ] ================================================
[2026-06-05 08:20:35,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:20:35
[2026-06-05 08:20:36,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:20:36,278.278 INFO    ] Initializing speech engine...
[2026-06-05 08:20:36,285.285 INFO    ] 2026-06-05 08:20:36
[2026-06-05 08:20:36,560.560 INFO    ] 2026-06-05 08:20:36
[2026-06-05 08:20:36,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:20:36,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:20:36,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:20:36,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:20:37,024.024 INFO    ] time= 05/06/2026 08:20:36
[2026-06-05 08:20:37,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:20:37,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:20:37,207.207 INFO    ] No existing commands found in stream
[2026-06-05 08:20:42,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:20:42,248.248 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 08:20:44,306.306 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:20:44,309.309 INFO    ] Checking for system updates...
[2026-06-05 08:20:44,346.346 INFO    ] 200
[2026-06-05 08:20:44,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:44,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:20:44,403.403 INFO    ] No update needed
[2026-06-05 08:20:44,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 08:20:44,447.447 INFO    ] 200
[2026-06-05 08:20:44,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:44,490.490 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:20:44,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:20:44,537.537 INFO    ] No camera update needed
[2026-06-05 08:20:44,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:20:44,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:20:44,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:20:44,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:20:46,592.592 INFO    ] ================================================
[2026-06-05 08:20:46,607.607 INFO    ] Launching Daemon at Fri Jun  5 08:20:46 IST 2026
[2026-06-05 08:20:46,618.618 INFO    ] ================================================
[2026-06-05 08:20:47,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:20:47
[2026-06-05 08:20:47,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:20:48,221.221 INFO    ] Initializing speech engine...
[2026-06-05 08:20:48,230.230 INFO    ] 2026-06-05 08:20:48
[2026-06-05 08:20:48,545.545 INFO    ] 2026-06-05 08:20:48
[2026-06-05 08:20:48,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:20:48,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:20:48,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:20:48,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:20:49,046.046 INFO    ] time= 05/06/2026 08:20:49
[2026-06-05 08:20:49,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:20:49,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:20:49,185.185 INFO    ] No existing commands found in stream
[2026-06-05 08:20:54,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:20:54,213.213 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 08:20:56,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:20:56,819.819 INFO    ] Checking for system updates...
[2026-06-05 08:20:56,855.855 INFO    ] 200
[2026-06-05 08:20:56,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:56,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:20:56,920.920 INFO    ] No update needed
[2026-06-05 08:20:56,922.922 INFO    ] Checking for camera pi updates...
[2026-06-05 08:20:56,960.960 INFO    ] 200
[2026-06-05 08:20:56,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:20:57,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:20:57,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:20:57,049.049 INFO    ] No camera update needed
[2026-06-05 08:20:57,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:20:57,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:20:57,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:20:57,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:20:59,108.108 INFO    ] ================================================
[2026-06-05 08:20:59,124.124 INFO    ] Launching Daemon at Fri Jun  5 08:20:59 IST 2026
[2026-06-05 08:20:59,134.134 INFO    ] ================================================
[2026-06-05 08:20:59,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:20:59
[2026-06-05 08:21:00,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:21:00,689.689 INFO    ] Initializing speech engine...
[2026-06-05 08:21:00,698.698 INFO    ] 2026-06-05 08:21:00
[2026-06-05 08:21:00,957.957 INFO    ] 2026-06-05 08:21:00
[2026-06-05 08:21:00,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:21:01,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:21:01,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:21:01,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:21:01,395.395 INFO    ] time= 05/06/2026 08:21:01
[2026-06-05 08:21:01,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:21:01,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:21:01,494.494 INFO    ] No existing commands found in stream
[2026-06-05 08:21:06,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:21:06,508.508 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 08:21:07,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:21:07,041.041 INFO    ] Checking for system updates...
[2026-06-05 08:21:07,081.081 INFO    ] 200
[2026-06-05 08:21:07,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:07,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:21:07,140.140 INFO    ] No update needed
[2026-06-05 08:21:07,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 08:21:07,176.176 INFO    ] 200
[2026-06-05 08:21:07,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:07,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:21:07,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:21:07,263.263 INFO    ] No camera update needed
[2026-06-05 08:21:07,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:21:07,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:21:07,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:21:07,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:21:09,321.321 INFO    ] ================================================
[2026-06-05 08:21:09,336.336 INFO    ] Launching Daemon at Fri Jun  5 08:21:09 IST 2026
[2026-06-05 08:21:09,347.347 INFO    ] ================================================
[2026-06-05 08:21:09,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:21:09
[2026-06-05 08:21:10,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:21:10,829.829 INFO    ] Initializing speech engine...
[2026-06-05 08:21:10,848.848 INFO    ] 2026-06-05 08:21:10
[2026-06-05 08:21:11,120.120 INFO    ] 2026-06-05 08:21:11
[2026-06-05 08:21:11,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:21:11,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:21:11,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:21:11,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:21:11,496.496 INFO    ] time= 05/06/2026 08:21:11
[2026-06-05 08:21:11,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:21:11,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:21:11,618.618 INFO    ] No existing commands found in stream
[2026-06-05 08:21:16,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:21:16,634.634 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 08:21:19,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:21:19,597.597 INFO    ] Checking for system updates...
[2026-06-05 08:21:19,634.634 INFO    ] 200
[2026-06-05 08:21:19,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:19,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:21:19,694.694 INFO    ] No update needed
[2026-06-05 08:21:19,697.697 INFO    ] Checking for camera pi updates...
[2026-06-05 08:21:19,731.731 INFO    ] 200
[2026-06-05 08:21:19,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:19,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:21:19,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:21:19,831.831 INFO    ] No camera update needed
[2026-06-05 08:21:19,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:21:19,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:21:19,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:21:19,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:21:21,889.889 INFO    ] ================================================
[2026-06-05 08:21:21,904.904 INFO    ] Launching Daemon at Fri Jun  5 08:21:21 IST 2026
[2026-06-05 08:21:21,915.915 INFO    ] ================================================
[2026-06-05 08:21:22,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:21:22
[2026-06-05 08:21:23,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:21:23,365.365 INFO    ] Initializing speech engine...
[2026-06-05 08:21:23,380.380 INFO    ] 2026-06-05 08:21:23
[2026-06-05 08:21:23,700.700 INFO    ] 2026-06-05 08:21:23
[2026-06-05 08:21:23,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:21:23,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:21:23,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:21:24,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:21:24,180.180 INFO    ] time= 05/06/2026 08:21:24
[2026-06-05 08:21:24,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:21:24,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:21:24,325.325 INFO    ] No existing commands found in stream
[2026-06-05 08:21:29,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:21:29,344.344 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 08:21:31,716.716 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:21:31,719.719 INFO    ] Checking for system updates...
[2026-06-05 08:21:31,759.759 INFO    ] 200
[2026-06-05 08:21:31,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:31,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:21:31,825.825 INFO    ] No update needed
[2026-06-05 08:21:31,828.828 INFO    ] Checking for camera pi updates...
[2026-06-05 08:21:31,868.868 INFO    ] 200
[2026-06-05 08:21:31,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:31,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:21:31,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:21:31,993.993 INFO    ] No camera update needed
[2026-06-05 08:21:31,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:21:32,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:21:32,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:21:32,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:21:34,058.058 INFO    ] ================================================
[2026-06-05 08:21:34,075.075 INFO    ] Launching Daemon at Fri Jun  5 08:21:34 IST 2026
[2026-06-05 08:21:34,089.089 INFO    ] ================================================
[2026-06-05 08:21:34,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:21:34
[2026-06-05 08:21:35,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:21:35,598.598 INFO    ] Initializing speech engine...
[2026-06-05 08:21:35,606.606 INFO    ] 2026-06-05 08:21:35
[2026-06-05 08:21:35,934.934 INFO    ] 2026-06-05 08:21:35
[2026-06-05 08:21:35,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:21:36,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:21:36,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:21:36,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:21:36,306.306 INFO    ] time= 05/06/2026 08:21:36
[2026-06-05 08:21:36,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:21:36,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:21:36,383.383 INFO    ] No existing commands found in stream
[2026-06-05 08:21:41,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:21:41,400.400 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 08:21:43,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:21:43,341.341 INFO    ] Checking for system updates...
[2026-06-05 08:21:43,379.379 INFO    ] 200
[2026-06-05 08:21:43,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:43,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:21:43,444.444 INFO    ] No update needed
[2026-06-05 08:21:43,447.447 INFO    ] Checking for camera pi updates...
[2026-06-05 08:21:43,481.481 INFO    ] 200
[2026-06-05 08:21:43,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:43,525.525 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:21:43,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:21:43,571.571 INFO    ] No camera update needed
[2026-06-05 08:21:43,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:21:43,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:21:43,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:21:43,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:21:45,630.630 INFO    ] ================================================
[2026-06-05 08:21:45,645.645 INFO    ] Launching Daemon at Fri Jun  5 08:21:45 IST 2026
[2026-06-05 08:21:45,655.655 INFO    ] ================================================
[2026-06-05 08:21:46,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:21:46
[2026-06-05 08:21:46,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:21:47,096.096 INFO    ] Initializing speech engine...
[2026-06-05 08:21:47,105.105 INFO    ] 2026-06-05 08:21:47
[2026-06-05 08:21:47,366.366 INFO    ] 2026-06-05 08:21:47
[2026-06-05 08:21:47,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:21:47,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:21:47,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:21:47,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:21:47,821.821 INFO    ] time= 05/06/2026 08:21:47
[2026-06-05 08:21:47,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:21:47,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:21:48,062.062 INFO    ] No existing commands found in stream
[2026-06-05 08:21:53,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:21:53,081.081 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 08:21:56,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:21:56,170.170 INFO    ] Checking for system updates...
[2026-06-05 08:21:56,207.207 INFO    ] 200
[2026-06-05 08:21:56,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:56,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:21:56,272.272 INFO    ] No update needed
[2026-06-05 08:21:56,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 08:21:56,308.308 INFO    ] 200
[2026-06-05 08:21:56,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:21:56,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:21:56,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:21:56,401.401 INFO    ] No camera update needed
[2026-06-05 08:21:56,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:21:56,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:21:56,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:21:56,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:21:58,456.456 INFO    ] ================================================
[2026-06-05 08:21:58,471.471 INFO    ] Launching Daemon at Fri Jun  5 08:21:58 IST 2026
[2026-06-05 08:21:58,482.482 INFO    ] ================================================
[2026-06-05 08:21:59,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:21:59
[2026-06-05 08:21:59,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:21:59,944.944 INFO    ] Initializing speech engine...
[2026-06-05 08:21:59,952.952 INFO    ] 2026-06-05 08:21:59
[2026-06-05 08:22:00,213.213 INFO    ] 2026-06-05 08:22:00
[2026-06-05 08:22:00,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:22:00,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:22:00,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:22:00,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:22:00,690.690 INFO    ] time= 05/06/2026 08:22:00
[2026-06-05 08:22:00,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:22:00,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:22:00,889.889 INFO    ] No existing commands found in stream
[2026-06-05 08:22:05,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:22:05,920.920 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 08:22:07,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:22:07,397.397 INFO    ] Checking for system updates...
[2026-06-05 08:22:07,435.435 INFO    ] 200
[2026-06-05 08:22:07,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:07,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:22:07,494.494 INFO    ] No update needed
[2026-06-05 08:22:07,497.497 INFO    ] Checking for camera pi updates...
[2026-06-05 08:22:07,531.531 INFO    ] 200
[2026-06-05 08:22:07,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:07,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:22:07,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:22:07,732.732 INFO    ] No camera update needed
[2026-06-05 08:22:07,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:22:07,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:22:07,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:22:07,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:22:09,789.789 INFO    ] ================================================
[2026-06-05 08:22:09,804.804 INFO    ] Launching Daemon at Fri Jun  5 08:22:09 IST 2026
[2026-06-05 08:22:09,814.814 INFO    ] ================================================
[2026-06-05 08:22:10,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:22:10
[2026-06-05 08:22:10,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:22:11,232.232 INFO    ] Initializing speech engine...
[2026-06-05 08:22:11,255.255 INFO    ] 2026-06-05 08:22:11
[2026-06-05 08:22:11,511.511 INFO    ] 2026-06-05 08:22:11
[2026-06-05 08:22:11,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:22:11,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:22:11,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:22:11,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:22:11,888.888 INFO    ] time= 05/06/2026 08:22:11
[2026-06-05 08:22:11,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:22:11,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:22:12,059.059 INFO    ] No existing commands found in stream
[2026-06-05 08:22:17,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:22:17,098.098 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 08:22:19,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:22:19,313.313 INFO    ] Checking for system updates...
[2026-06-05 08:22:19,348.348 INFO    ] 200
[2026-06-05 08:22:19,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:19,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:22:19,406.406 INFO    ] No update needed
[2026-06-05 08:22:19,409.409 INFO    ] Checking for camera pi updates...
[2026-06-05 08:22:19,446.446 INFO    ] 200
[2026-06-05 08:22:19,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:19,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:22:19,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:22:19,551.551 INFO    ] No camera update needed
[2026-06-05 08:22:19,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:22:19,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:22:19,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:22:19,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:22:21,607.607 INFO    ] ================================================
[2026-06-05 08:22:21,622.622 INFO    ] Launching Daemon at Fri Jun  5 08:22:21 IST 2026
[2026-06-05 08:22:21,633.633 INFO    ] ================================================
[2026-06-05 08:22:22,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:22:22
[2026-06-05 08:22:23,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:22:23,317.317 INFO    ] Initializing speech engine...
[2026-06-05 08:22:23,329.329 INFO    ] 2026-06-05 08:22:23
[2026-06-05 08:22:23,645.645 INFO    ] 2026-06-05 08:22:23
[2026-06-05 08:22:23,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:22:23,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:22:23,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:22:24,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:22:24,181.181 INFO    ] time= 05/06/2026 08:22:24
[2026-06-05 08:22:24,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:22:24,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:22:24,332.332 INFO    ] No existing commands found in stream
[2026-06-05 08:22:29,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:22:29,366.366 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 08:22:30,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:22:30,314.314 INFO    ] Checking for system updates...
[2026-06-05 08:22:30,352.352 INFO    ] 200
[2026-06-05 08:22:30,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:30,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:22:30,412.412 INFO    ] No update needed
[2026-06-05 08:22:30,415.415 INFO    ] Checking for camera pi updates...
[2026-06-05 08:22:30,450.450 INFO    ] 200
[2026-06-05 08:22:30,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:30,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:22:30,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:22:30,551.551 INFO    ] No camera update needed
[2026-06-05 08:22:30,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:22:30,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:22:30,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:22:30,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:22:32,611.611 INFO    ] ================================================
[2026-06-05 08:22:32,626.626 INFO    ] Launching Daemon at Fri Jun  5 08:22:32 IST 2026
[2026-06-05 08:22:32,637.637 INFO    ] ================================================
[2026-06-05 08:22:33,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:22:33
[2026-06-05 08:22:33,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:22:34,082.082 INFO    ] Initializing speech engine...
[2026-06-05 08:22:34,095.095 INFO    ] 2026-06-05 08:22:34
[2026-06-05 08:22:34,343.343 INFO    ] 2026-06-05 08:22:34
[2026-06-05 08:22:34,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:22:34,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:22:34,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:22:34,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:22:34,717.717 INFO    ] time= 05/06/2026 08:22:34
[2026-06-05 08:22:34,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:22:34,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:22:34,800.800 INFO    ] No existing commands found in stream
[2026-06-05 08:22:39,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:22:39,838.838 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 08:22:40,385.385 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:22:40,388.388 INFO    ] Checking for system updates...
[2026-06-05 08:22:40,425.425 INFO    ] 200
[2026-06-05 08:22:40,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:40,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:22:40,485.485 INFO    ] No update needed
[2026-06-05 08:22:40,488.488 INFO    ] Checking for camera pi updates...
[2026-06-05 08:22:40,523.523 INFO    ] 200
[2026-06-05 08:22:40,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:40,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:22:40,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:22:40,610.610 INFO    ] No camera update needed
[2026-06-05 08:22:40,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:22:40,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:22:40,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:22:40,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:22:42,668.668 INFO    ] ================================================
[2026-06-05 08:22:42,683.683 INFO    ] Launching Daemon at Fri Jun  5 08:22:42 IST 2026
[2026-06-05 08:22:42,694.694 INFO    ] ================================================
[2026-06-05 08:22:43,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:22:43
[2026-06-05 08:22:43,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:22:44,193.193 INFO    ] Initializing speech engine...
[2026-06-05 08:22:44,219.219 INFO    ] 2026-06-05 08:22:44
[2026-06-05 08:22:44,500.500 INFO    ] 2026-06-05 08:22:44
[2026-06-05 08:22:44,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:22:44,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:22:44,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:22:44,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:22:44,956.956 INFO    ] time= 05/06/2026 08:22:44
[2026-06-05 08:22:45,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:22:45,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:22:45,167.167 INFO    ] No existing commands found in stream
[2026-06-05 08:22:50,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:22:50,195.195 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 08:22:54,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:22:54,029.029 INFO    ] Checking for system updates...
[2026-06-05 08:22:54,065.065 INFO    ] 200
[2026-06-05 08:22:54,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:54,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:22:54,123.123 INFO    ] No update needed
[2026-06-05 08:22:54,125.125 INFO    ] Checking for camera pi updates...
[2026-06-05 08:22:54,160.160 INFO    ] 200
[2026-06-05 08:22:54,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:22:54,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:22:54,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:22:54,262.262 INFO    ] No camera update needed
[2026-06-05 08:22:54,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:22:54,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:22:54,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:22:54,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:22:56,317.317 INFO    ] ================================================
[2026-06-05 08:22:56,332.332 INFO    ] Launching Daemon at Fri Jun  5 08:22:56 IST 2026
[2026-06-05 08:22:56,343.343 INFO    ] ================================================
[2026-06-05 08:22:56,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:22:56
[2026-06-05 08:22:57,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:22:57,887.887 INFO    ] Initializing speech engine...
[2026-06-05 08:22:57,894.894 INFO    ] 2026-06-05 08:22:57
[2026-06-05 08:22:58,209.209 INFO    ] 2026-06-05 08:22:58
[2026-06-05 08:22:58,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:22:58,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:22:58,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:22:58,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:22:58,726.726 INFO    ] time= 05/06/2026 08:22:58
[2026-06-05 08:22:58,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:22:58,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:22:58,885.885 INFO    ] No existing commands found in stream
[2026-06-05 08:23:03,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:23:03,910.910 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 08:23:06,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:23:06,573.573 INFO    ] Checking for system updates...
[2026-06-05 08:23:06,610.610 INFO    ] 200
[2026-06-05 08:23:06,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:06,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:23:06,670.670 INFO    ] No update needed
[2026-06-05 08:23:06,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 08:23:06,708.708 INFO    ] 200
[2026-06-05 08:23:06,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:06,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:23:06,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:23:06,799.799 INFO    ] No camera update needed
[2026-06-05 08:23:06,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:23:06,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:23:06,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:23:06,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:23:08,859.859 INFO    ] ================================================
[2026-06-05 08:23:08,875.875 INFO    ] Launching Daemon at Fri Jun  5 08:23:08 IST 2026
[2026-06-05 08:23:08,886.886 INFO    ] ================================================
[2026-06-05 08:23:09,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:23:09
[2026-06-05 08:23:10,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:23:10,289.289 INFO    ] Initializing speech engine...
[2026-06-05 08:23:10,311.311 INFO    ] 2026-06-05 08:23:10
[2026-06-05 08:23:10,567.567 INFO    ] 2026-06-05 08:23:10
[2026-06-05 08:23:10,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:23:10,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:23:10,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:23:11,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:23:11,038.038 INFO    ] time= 05/06/2026 08:23:11
[2026-06-05 08:23:11,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:23:11,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:23:11,192.192 INFO    ] No existing commands found in stream
[2026-06-05 08:23:16,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:23:16,207.207 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 08:23:20,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:23:20,497.497 INFO    ] Checking for system updates...
[2026-06-05 08:23:20,550.550 INFO    ] 200
[2026-06-05 08:23:20,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:20,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:23:20,614.614 INFO    ] No update needed
[2026-06-05 08:23:20,617.617 INFO    ] Checking for camera pi updates...
[2026-06-05 08:23:20,654.654 INFO    ] 200
[2026-06-05 08:23:20,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:20,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:23:20,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:23:20,757.757 INFO    ] No camera update needed
[2026-06-05 08:23:20,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:23:20,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:23:20,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:23:20,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:23:22,826.826 INFO    ] ================================================
[2026-06-05 08:23:22,841.841 INFO    ] Launching Daemon at Fri Jun  5 08:23:22 IST 2026
[2026-06-05 08:23:22,852.852 INFO    ] ================================================
[2026-06-05 08:23:23,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:23:23
[2026-06-05 08:23:24,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:23:24,532.532 INFO    ] Initializing speech engine...
[2026-06-05 08:23:24,544.544 INFO    ] 2026-06-05 08:23:24
[2026-06-05 08:23:24,857.857 INFO    ] 2026-06-05 08:23:24
[2026-06-05 08:23:24,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:23:25,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:23:25,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:23:25,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:23:25,312.312 INFO    ] time= 05/06/2026 08:23:25
[2026-06-05 08:23:25,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:23:25,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:23:25,504.504 INFO    ] No existing commands found in stream
[2026-06-05 08:23:30,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:23:30,536.536 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 08:23:31,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:23:31,449.449 INFO    ] Checking for system updates...
[2026-06-05 08:23:31,495.495 INFO    ] 200
[2026-06-05 08:23:31,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:31,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:23:31,560.560 INFO    ] No update needed
[2026-06-05 08:23:31,563.563 INFO    ] Checking for camera pi updates...
[2026-06-05 08:23:31,599.599 INFO    ] 200
[2026-06-05 08:23:31,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:31,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:23:31,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:23:31,687.687 INFO    ] No camera update needed
[2026-06-05 08:23:31,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:23:31,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:23:31,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:23:31,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:23:33,744.744 INFO    ] ================================================
[2026-06-05 08:23:33,760.760 INFO    ] Launching Daemon at Fri Jun  5 08:23:33 IST 2026
[2026-06-05 08:23:33,771.771 INFO    ] ================================================
[2026-06-05 08:23:34,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:23:34
[2026-06-05 08:23:34,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:23:35,253.253 INFO    ] Initializing speech engine...
[2026-06-05 08:23:35,266.266 INFO    ] 2026-06-05 08:23:35
[2026-06-05 08:23:35,552.552 INFO    ] 2026-06-05 08:23:35
[2026-06-05 08:23:35,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:23:35,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:23:35,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:23:36,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:23:36,085.085 INFO    ] time= 05/06/2026 08:23:36
[2026-06-05 08:23:36,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:23:36,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:23:36,235.235 INFO    ] No existing commands found in stream
[2026-06-05 08:23:41,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:23:41,254.254 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 08:23:42,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:23:42,094.094 INFO    ] Checking for system updates...
[2026-06-05 08:23:42,131.131 INFO    ] 200
[2026-06-05 08:23:42,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:42,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:23:42,191.191 INFO    ] No update needed
[2026-06-05 08:23:42,194.194 INFO    ] Checking for camera pi updates...
[2026-06-05 08:23:42,228.228 INFO    ] 200
[2026-06-05 08:23:42,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:42,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:23:42,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:23:42,316.316 INFO    ] No camera update needed
[2026-06-05 08:23:42,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:23:42,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:23:42,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:23:42,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:23:44,371.371 INFO    ] ================================================
[2026-06-05 08:23:44,386.386 INFO    ] Launching Daemon at Fri Jun  5 08:23:44 IST 2026
[2026-06-05 08:23:44,397.397 INFO    ] ================================================
[2026-06-05 08:23:44,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:23:44
[2026-06-05 08:23:45,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:23:45,863.863 INFO    ] Initializing speech engine...
[2026-06-05 08:23:45,872.872 INFO    ] 2026-06-05 08:23:45
[2026-06-05 08:23:46,175.175 INFO    ] 2026-06-05 08:23:46
[2026-06-05 08:23:46,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:23:46,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:23:46,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:23:46,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:23:46,606.606 INFO    ] time= 05/06/2026 08:23:46
[2026-06-05 08:23:46,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:23:46,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:23:46,769.769 INFO    ] No existing commands found in stream
[2026-06-05 08:23:51,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:23:51,798.798 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 08:23:52,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:23:52,323.323 INFO    ] Checking for system updates...
[2026-06-05 08:23:52,360.360 INFO    ] 200
[2026-06-05 08:23:52,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:52,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:23:52,417.417 INFO    ] No update needed
[2026-06-05 08:23:52,420.420 INFO    ] Checking for camera pi updates...
[2026-06-05 08:23:52,459.459 INFO    ] 200
[2026-06-05 08:23:52,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:23:52,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:23:52,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:23:52,557.557 INFO    ] No camera update needed
[2026-06-05 08:23:52,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:23:52,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:23:52,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:23:52,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:23:54,612.612 INFO    ] ================================================
[2026-06-05 08:23:54,628.628 INFO    ] Launching Daemon at Fri Jun  5 08:23:54 IST 2026
[2026-06-05 08:23:54,638.638 INFO    ] ================================================
[2026-06-05 08:23:55,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:23:55
[2026-06-05 08:23:55,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:23:56,138.138 INFO    ] Initializing speech engine...
[2026-06-05 08:23:56,146.146 INFO    ] 2026-06-05 08:23:56
[2026-06-05 08:23:56,462.462 INFO    ] 2026-06-05 08:23:56
[2026-06-05 08:23:56,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:23:56,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:23:56,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:23:56,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:23:56,987.987 INFO    ] time= 05/06/2026 08:23:56
[2026-06-05 08:23:57,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:23:57,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:23:57,144.144 INFO    ] No existing commands found in stream
[2026-06-05 08:24:02,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:24:02,163.163 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 08:24:05,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:24:05,800.800 INFO    ] Checking for system updates...
[2026-06-05 08:24:05,837.837 INFO    ] 200
[2026-06-05 08:24:05,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:05,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:24:05,900.900 INFO    ] No update needed
[2026-06-05 08:24:05,903.903 INFO    ] Checking for camera pi updates...
[2026-06-05 08:24:05,946.946 INFO    ] 200
[2026-06-05 08:24:05,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:06,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:24:06,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:24:06,048.048 INFO    ] No camera update needed
[2026-06-05 08:24:06,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:24:06,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:24:06,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:24:06,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:24:08,105.105 INFO    ] ================================================
[2026-06-05 08:24:08,121.121 INFO    ] Launching Daemon at Fri Jun  5 08:24:08 IST 2026
[2026-06-05 08:24:08,131.131 INFO    ] ================================================
[2026-06-05 08:24:08,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:24:08
[2026-06-05 08:24:09,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:24:09,527.527 INFO    ] Initializing speech engine...
[2026-06-05 08:24:09,533.533 INFO    ] 2026-06-05 08:24:09
[2026-06-05 08:24:09,821.821 INFO    ] 2026-06-05 08:24:09
[2026-06-05 08:24:09,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:24:10,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:24:10,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:24:10,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:24:10,187.187 INFO    ] time= 05/06/2026 08:24:10
[2026-06-05 08:24:10,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:24:10,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:24:10,303.303 INFO    ] No existing commands found in stream
[2026-06-05 08:24:15,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:24:15,331.331 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 08:24:17,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:24:17,576.576 INFO    ] Checking for system updates...
[2026-06-05 08:24:17,611.611 INFO    ] 200
[2026-06-05 08:24:17,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:17,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:24:17,668.668 INFO    ] No update needed
[2026-06-05 08:24:17,671.671 INFO    ] Checking for camera pi updates...
[2026-06-05 08:24:17,704.704 INFO    ] 200
[2026-06-05 08:24:17,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:17,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:24:17,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:24:17,898.898 INFO    ] No camera update needed
[2026-06-05 08:24:17,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:24:17,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:24:17,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:24:17,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:24:19,953.953 INFO    ] ================================================
[2026-06-05 08:24:19,968.968 INFO    ] Launching Daemon at Fri Jun  5 08:24:19 IST 2026
[2026-06-05 08:24:19,978.978 INFO    ] ================================================
[2026-06-05 08:24:20,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:24:20
[2026-06-05 08:24:21,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:24:21,576.576 INFO    ] Initializing speech engine...
[2026-06-05 08:24:21,584.584 INFO    ] 2026-06-05 08:24:21
[2026-06-05 08:24:21,868.868 INFO    ] 2026-06-05 08:24:21
[2026-06-05 08:24:21,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:24:22,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:24:22,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:24:22,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:24:22,403.403 INFO    ] time= 05/06/2026 08:24:22
[2026-06-05 08:24:22,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:24:22,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:24:22,561.561 INFO    ] No existing commands found in stream
[2026-06-05 08:24:27,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:24:27,583.583 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 08:24:30,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:24:30,156.156 INFO    ] Checking for system updates...
[2026-06-05 08:24:30,199.199 INFO    ] 200
[2026-06-05 08:24:30,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:30,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:24:30,263.263 INFO    ] No update needed
[2026-06-05 08:24:30,267.267 INFO    ] Checking for camera pi updates...
[2026-06-05 08:24:30,304.304 INFO    ] 200
[2026-06-05 08:24:30,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:30,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:24:30,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:24:30,383.383 INFO    ] No camera update needed
[2026-06-05 08:24:30,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:24:30,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:24:30,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:24:30,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:24:32,446.446 INFO    ] ================================================
[2026-06-05 08:24:32,465.465 INFO    ] Launching Daemon at Fri Jun  5 08:24:32 IST 2026
[2026-06-05 08:24:32,476.476 INFO    ] ================================================
[2026-06-05 08:24:33,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:24:33
[2026-06-05 08:24:33,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:24:33,926.926 INFO    ] Initializing speech engine...
[2026-06-05 08:24:33,933.933 INFO    ] 2026-06-05 08:24:33
[2026-06-05 08:24:34,229.229 INFO    ] 2026-06-05 08:24:34
[2026-06-05 08:24:34,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:24:34,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:24:34,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:24:34,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:24:34,645.645 INFO    ] time= 05/06/2026 08:24:34
[2026-06-05 08:24:34,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:24:34,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:24:34,729.729 INFO    ] No existing commands found in stream
[2026-06-05 08:24:39,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:24:39,744.744 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 08:24:40,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:24:40,689.689 INFO    ] Checking for system updates...
[2026-06-05 08:24:40,726.726 INFO    ] 200
[2026-06-05 08:24:40,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:40,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:24:40,785.785 INFO    ] No update needed
[2026-06-05 08:24:40,788.788 INFO    ] Checking for camera pi updates...
[2026-06-05 08:24:40,823.823 INFO    ] 200
[2026-06-05 08:24:40,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:40,867.867 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:24:40,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:24:40,939.939 INFO    ] No camera update needed
[2026-06-05 08:24:40,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:24:40,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:24:40,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:24:40,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:24:43,999.999 INFO    ] ================================================
[2026-06-05 08:24:43,014.014 INFO    ] Launching Daemon at Fri Jun  5 08:24:43 IST 2026
[2026-06-05 08:24:43,025.025 INFO    ] ================================================
[2026-06-05 08:24:43,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:24:43
[2026-06-05 08:24:44,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:24:44,441.441 INFO    ] Initializing speech engine...
[2026-06-05 08:24:44,461.461 INFO    ] 2026-06-05 08:24:44
[2026-06-05 08:24:44,735.735 INFO    ] 2026-06-05 08:24:44
[2026-06-05 08:24:44,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:24:44,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:24:44,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:24:45,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:24:45,111.111 INFO    ] time= 05/06/2026 08:24:45
[2026-06-05 08:24:45,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:24:45,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:24:45,234.234 INFO    ] No existing commands found in stream
[2026-06-05 08:24:50,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:24:50,249.249 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 08:24:53,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:24:53,557.557 INFO    ] Checking for system updates...
[2026-06-05 08:24:53,593.593 INFO    ] 200
[2026-06-05 08:24:53,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:53,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:24:53,651.651 INFO    ] No update needed
[2026-06-05 08:24:53,653.653 INFO    ] Checking for camera pi updates...
[2026-06-05 08:24:53,686.686 INFO    ] 200
[2026-06-05 08:24:53,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:24:53,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:24:53,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:24:53,776.776 INFO    ] No camera update needed
[2026-06-05 08:24:53,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:24:53,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:24:53,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:24:53,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:24:55,833.833 INFO    ] ================================================
[2026-06-05 08:24:55,851.851 INFO    ] Launching Daemon at Fri Jun  5 08:24:55 IST 2026
[2026-06-05 08:24:55,863.863 INFO    ] ================================================
[2026-06-05 08:24:56,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:24:56
[2026-06-05 08:24:57,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:24:57,303.303 INFO    ] Initializing speech engine...
[2026-06-05 08:24:57,311.311 INFO    ] 2026-06-05 08:24:57
[2026-06-05 08:24:57,561.561 INFO    ] 2026-06-05 08:24:57
[2026-06-05 08:24:57,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:24:57,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:24:57,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:24:57,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:24:57,931.931 INFO    ] time= 05/06/2026 08:24:57
[2026-06-05 08:24:57,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:24:57,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:24:58,104.104 INFO    ] No existing commands found in stream
[2026-06-05 08:25:03,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:25:03,132.132 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 08:25:06,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:25:06,398.398 INFO    ] Checking for system updates...
[2026-06-05 08:25:06,435.435 INFO    ] 200
[2026-06-05 08:25:06,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:06,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:25:06,494.494 INFO    ] No update needed
[2026-06-05 08:25:06,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 08:25:06,530.530 INFO    ] 200
[2026-06-05 08:25:06,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:06,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:25:06,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:25:06,624.624 INFO    ] No camera update needed
[2026-06-05 08:25:06,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:25:06,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:25:06,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:25:06,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:25:08,682.682 INFO    ] ================================================
[2026-06-05 08:25:08,698.698 INFO    ] Launching Daemon at Fri Jun  5 08:25:08 IST 2026
[2026-06-05 08:25:08,709.709 INFO    ] ================================================
[2026-06-05 08:25:09,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:25:09
[2026-06-05 08:25:09,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:25:10,120.120 INFO    ] Initializing speech engine...
[2026-06-05 08:25:10,134.134 INFO    ] 2026-06-05 08:25:10
[2026-06-05 08:25:10,401.401 INFO    ] 2026-06-05 08:25:10
[2026-06-05 08:25:10,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:25:10,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:25:10,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:25:10,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:25:10,856.856 INFO    ] time= 05/06/2026 08:25:10
[2026-06-05 08:25:10,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:25:10,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:25:11,038.038 INFO    ] No existing commands found in stream
[2026-06-05 08:25:16,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:25:16,053.053 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 08:25:17,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:25:17,699.699 INFO    ] Checking for system updates...
[2026-06-05 08:25:17,734.734 INFO    ] 200
[2026-06-05 08:25:17,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:17,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:25:17,792.792 INFO    ] No update needed
[2026-06-05 08:25:17,794.794 INFO    ] Checking for camera pi updates...
[2026-06-05 08:25:17,829.829 INFO    ] 200
[2026-06-05 08:25:17,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:17,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:25:17,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:25:17,927.927 INFO    ] No camera update needed
[2026-06-05 08:25:17,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:25:17,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:25:17,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:25:17,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:25:19,985.985 INFO    ] ================================================
[2026-06-05 08:25:20,001.001 INFO    ] Launching Daemon at Fri Jun  5 08:25:19 IST 2026
[2026-06-05 08:25:20,012.012 INFO    ] ================================================
[2026-06-05 08:25:20,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:25:20
[2026-06-05 08:25:21,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:25:21,639.639 INFO    ] Initializing speech engine...
[2026-06-05 08:25:21,648.648 INFO    ] 2026-06-05 08:25:21
[2026-06-05 08:25:21,926.926 INFO    ] 2026-06-05 08:25:21
[2026-06-05 08:25:21,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:25:22,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:25:22,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:25:22,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:25:22,420.420 INFO    ] time= 05/06/2026 08:25:22
[2026-06-05 08:25:22,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:25:22,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:25:22,586.586 INFO    ] No existing commands found in stream
[2026-06-05 08:25:27,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:25:27,622.622 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 08:25:30,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:25:30,494.494 INFO    ] Checking for system updates...
[2026-06-05 08:25:30,532.532 INFO    ] 200
[2026-06-05 08:25:30,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:30,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:25:30,598.598 INFO    ] No update needed
[2026-06-05 08:25:30,601.601 INFO    ] Checking for camera pi updates...
[2026-06-05 08:25:30,635.635 INFO    ] 200
[2026-06-05 08:25:30,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:30,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:25:30,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:25:30,726.726 INFO    ] No camera update needed
[2026-06-05 08:25:30,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:25:30,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:25:30,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:25:30,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:25:32,785.785 INFO    ] ================================================
[2026-06-05 08:25:32,802.802 INFO    ] Launching Daemon at Fri Jun  5 08:25:32 IST 2026
[2026-06-05 08:25:32,813.813 INFO    ] ================================================
[2026-06-05 08:25:33,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:25:33
[2026-06-05 08:25:34,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:25:34,445.445 INFO    ] Initializing speech engine...
[2026-06-05 08:25:34,453.453 INFO    ] 2026-06-05 08:25:34
[2026-06-05 08:25:34,728.728 INFO    ] 2026-06-05 08:25:34
[2026-06-05 08:25:34,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:25:35,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:25:35,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:25:35,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:25:35,296.296 INFO    ] time= 05/06/2026 08:25:35
[2026-06-05 08:25:35,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:25:35,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:25:35,455.455 INFO    ] No existing commands found in stream
[2026-06-05 08:25:40,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:25:40,482.482 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 08:25:44,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:25:44,295.295 INFO    ] Checking for system updates...
[2026-06-05 08:25:44,332.332 INFO    ] 200
[2026-06-05 08:25:44,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:44,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:25:44,392.392 INFO    ] No update needed
[2026-06-05 08:25:44,395.395 INFO    ] Checking for camera pi updates...
[2026-06-05 08:25:44,429.429 INFO    ] 200
[2026-06-05 08:25:44,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:44,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:25:44,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:25:44,518.518 INFO    ] No camera update needed
[2026-06-05 08:25:44,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:25:44,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:25:44,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:25:44,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:25:46,577.577 INFO    ] ================================================
[2026-06-05 08:25:46,592.592 INFO    ] Launching Daemon at Fri Jun  5 08:25:46 IST 2026
[2026-06-05 08:25:46,603.603 INFO    ] ================================================
[2026-06-05 08:25:47,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:25:47
[2026-06-05 08:25:47,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:25:48,026.026 INFO    ] Initializing speech engine...
[2026-06-05 08:25:48,040.040 INFO    ] 2026-06-05 08:25:48
[2026-06-05 08:25:48,326.326 INFO    ] 2026-06-05 08:25:48
[2026-06-05 08:25:48,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:25:48,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:25:48,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:25:48,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:25:48,747.747 INFO    ] time= 05/06/2026 08:25:48
[2026-06-05 08:25:48,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:25:48,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:25:48,837.837 INFO    ] No existing commands found in stream
[2026-06-05 08:25:53,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:25:53,852.852 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 08:25:56,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:25:56,533.533 INFO    ] Checking for system updates...
[2026-06-05 08:25:56,571.571 INFO    ] 200
[2026-06-05 08:25:56,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:56,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:25:56,630.630 INFO    ] No update needed
[2026-06-05 08:25:56,633.633 INFO    ] Checking for camera pi updates...
[2026-06-05 08:25:56,668.668 INFO    ] 200
[2026-06-05 08:25:56,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:25:56,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:25:56,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:25:56,759.759 INFO    ] No camera update needed
[2026-06-05 08:25:56,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:25:56,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:25:56,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:25:56,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:25:58,819.819 INFO    ] ================================================
[2026-06-05 08:25:58,835.835 INFO    ] Launching Daemon at Fri Jun  5 08:25:58 IST 2026
[2026-06-05 08:25:58,847.847 INFO    ] ================================================
[2026-06-05 08:25:59,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:25:59
[2026-06-05 08:25:59,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:26:00,250.250 INFO    ] Initializing speech engine...
[2026-06-05 08:26:00,255.255 INFO    ] 2026-06-05 08:26:00
[2026-06-05 08:26:00,557.557 INFO    ] 2026-06-05 08:26:00
[2026-06-05 08:26:00,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:26:00,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:26:00,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:26:00,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:26:00,911.911 INFO    ] time= 05/06/2026 08:26:00
[2026-06-05 08:26:00,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:26:00,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:26:00,996.996 INFO    ] No existing commands found in stream
[2026-06-05 08:26:06,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:26:06,016.016 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 08:26:10,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:26:10,009.009 INFO    ] Checking for system updates...
[2026-06-05 08:26:10,046.046 INFO    ] 200
[2026-06-05 08:26:10,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:26:10,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:26:10,113.113 INFO    ] No update needed
[2026-06-05 08:26:10,115.115 INFO    ] Checking for camera pi updates...
[2026-06-05 08:26:10,150.150 INFO    ] 200
[2026-06-05 08:26:10,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:26:10,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:26:10,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:26:10,246.246 INFO    ] No camera update needed
[2026-06-05 08:26:10,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:26:10,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:26:10,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:26:10,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:26:12,306.306 INFO    ] ================================================
[2026-06-05 08:26:12,322.322 INFO    ] Launching Daemon at Fri Jun  5 08:26:12 IST 2026
[2026-06-05 08:26:12,334.334 INFO    ] ================================================
[2026-06-05 08:26:12,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:26:12
[2026-06-05 08:26:13,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:26:13,965.965 INFO    ] Initializing speech engine...
[2026-06-05 08:26:13,974.974 INFO    ] 2026-06-05 08:26:13
[2026-06-05 08:26:14,247.247 INFO    ] 2026-06-05 08:26:14
[2026-06-05 08:26:14,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:26:14,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:26:14,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:26:14,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:26:14,692.692 INFO    ] time= 05/06/2026 08:26:14
[2026-06-05 08:26:14,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:26:14,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:26:14,878.878 INFO    ] No existing commands found in stream
[2026-06-05 08:26:19,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:26:19,894.894 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 08:26:22,350.350 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:26:22,353.353 INFO    ] Checking for system updates...
[2026-06-05 08:26:22,391.391 INFO    ] 200
[2026-06-05 08:26:22,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:26:22,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:26:22,461.461 INFO    ] No update needed
[2026-06-05 08:26:22,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 08:26:22,499.499 INFO    ] 200
[2026-06-05 08:26:22,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:26:22,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:26:22,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:26:22,702.702 INFO    ] No camera update needed
[2026-06-05 08:26:22,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:26:22,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:26:22,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:26:22,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:26:24,762.762 INFO    ] ================================================
[2026-06-05 08:26:24,778.778 INFO    ] Launching Daemon at Fri Jun  5 08:26:24 IST 2026
[2026-06-05 08:26:24,789.789 INFO    ] ================================================
[2026-06-05 08:26:25,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:26:25
[2026-06-05 08:26:25,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:26:26,218.218 INFO    ] Initializing speech engine...
[2026-06-05 08:26:26,227.227 INFO    ] 2026-06-05 08:26:26
[2026-06-05 08:26:26,489.489 INFO    ] 2026-06-05 08:26:26
[2026-06-05 08:26:26,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:26:26,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:26:26,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:26:26,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:26:26,883.883 INFO    ] time= 05/06/2026 08:26:26
[2026-06-05 08:26:26,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:26:26,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:26:26,977.977 INFO    ] No existing commands found in stream
[2026-06-05 08:26:31,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:26:31,993.993 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 08:26:34,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:26:34,150.150 INFO    ] Checking for system updates...
[2026-06-05 08:26:34,186.186 INFO    ] 200
[2026-06-05 08:26:34,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:26:34,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:26:34,244.244 INFO    ] No update needed
[2026-06-05 08:26:34,246.246 INFO    ] Checking for camera pi updates...
[2026-06-05 08:26:34,281.281 INFO    ] 200
[2026-06-05 08:26:34,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:26:34,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:26:34,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:26:34,375.375 INFO    ] No camera update needed
[2026-06-05 08:26:34,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:26:34,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:26:34,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:26:34,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:26:36,431.431 INFO    ] ================================================
[2026-06-05 08:26:36,448.448 INFO    ] Launching Daemon at Fri Jun  5 08:26:36 IST 2026
[2026-06-05 08:26:36,460.460 INFO    ] ================================================
[2026-06-05 08:26:37,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:26:37
[2026-06-05 08:26:37,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:26:38,114.114 INFO    ] Initializing speech engine...
[2026-06-05 08:26:38,126.126 INFO    ] 2026-06-05 08:26:38
[2026-06-05 08:26:38,444.444 INFO    ] 2026-06-05 08:26:38
[2026-06-05 08:26:38,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:26:38,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:26:38,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:26:38,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:26:38,968.968 INFO    ] time= 05/06/2026 08:26:38
[2026-06-05 08:26:38,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:26:38,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:26:39,106.106 INFO    ] No existing commands found in stream
[2026-06-05 08:26:44,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:26:44,136.136 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 08:26:46,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:26:46,779.779 INFO    ] Checking for system updates...
[2026-06-05 08:26:46,815.815 INFO    ] 200
[2026-06-05 08:26:46,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:26:46,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:26:46,873.873 INFO    ] No update needed
[2026-06-05 08:26:46,875.875 INFO    ] Checking for camera pi updates...
[2026-06-05 08:26:46,909.909 INFO    ] 200
[2026-06-05 08:26:46,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:26:46,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:26:47,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:26:47,003.003 INFO    ] No camera update needed
[2026-06-05 08:26:47,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:26:47,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:26:47,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:26:47,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:26:49,061.061 INFO    ] ================================================
[2026-06-05 08:26:49,076.076 INFO    ] Launching Daemon at Fri Jun  5 08:26:49 IST 2026
[2026-06-05 08:26:49,087.087 INFO    ] ================================================
[2026-06-05 08:26:49,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:26:49
[2026-06-05 08:26:50,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:26:50,507.507 INFO    ] Initializing speech engine...
[2026-06-05 08:26:50,513.513 INFO    ] 2026-06-05 08:26:50
[2026-06-05 08:26:50,813.813 INFO    ] 2026-06-05 08:26:50
[2026-06-05 08:26:50,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:26:51,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:26:51,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:26:51,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:26:51,195.195 INFO    ] time= 05/06/2026 08:26:51
[2026-06-05 08:26:51,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:26:51,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:26:51,321.321 INFO    ] No existing commands found in stream
[2026-06-05 08:26:56,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:26:56,337.337 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-05 08:26:59,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:26:59,867.867 INFO    ] Checking for system updates...
[2026-06-05 08:26:59,904.904 INFO    ] 200
[2026-06-05 08:26:59,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:26:59,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:26:59,962.962 INFO    ] No update needed
[2026-06-05 08:26:59,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 08:26:59,998.998 INFO    ] 200
[2026-06-05 08:27:00,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:27:00,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:27:00,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:27:00,089.089 INFO    ] No camera update needed
[2026-06-05 08:27:00,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:27:00,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:27:00,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:27:00,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:27:02,167.167 INFO    ] ================================================
[2026-06-05 08:27:02,208.208 INFO    ] Launching Daemon at Fri Jun  5 08:27:02 IST 2026
[2026-06-05 08:27:02,233.233 INFO    ] ================================================
[2026-06-05 08:27:02,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:27:02
[2026-06-05 08:27:03,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:27:03,902.902 INFO    ] Initializing speech engine...
[2026-06-05 08:27:03,915.915 INFO    ] 2026-06-05 08:27:03
[2026-06-05 08:27:04,162.162 INFO    ] 2026-06-05 08:27:04
[2026-06-05 08:27:04,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:27:04,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:27:04,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:27:04,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:27:04,535.535 INFO    ] time= 05/06/2026 08:27:04
[2026-06-05 08:27:04,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:27:04,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:27:04,710.710 INFO    ] No existing commands found in stream
[2026-06-05 08:27:09,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:27:09,744.744 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 08:27:12,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:27:12,361.361 INFO    ] Checking for system updates...
[2026-06-05 08:27:12,398.398 INFO    ] 200
[2026-06-05 08:27:12,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:27:12,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:27:12,457.457 INFO    ] No update needed
[2026-06-05 08:27:12,460.460 INFO    ] Checking for camera pi updates...
[2026-06-05 08:27:12,494.494 INFO    ] 200
[2026-06-05 08:27:12,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:27:12,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:27:12,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:27:12,584.584 INFO    ] No camera update needed
[2026-06-05 08:27:12,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:27:12,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:27:12,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:27:12,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:27:14,642.642 INFO    ] ================================================
[2026-06-05 08:27:14,658.658 INFO    ] Launching Daemon at Fri Jun  5 08:27:14 IST 2026
[2026-06-05 08:27:14,668.668 INFO    ] ================================================
[2026-06-05 08:27:15,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:27:15
[2026-06-05 08:27:15,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:27:16,121.121 INFO    ] Initializing speech engine...
[2026-06-05 08:27:16,128.128 INFO    ] 2026-06-05 08:27:16
[2026-06-05 08:27:16,377.377 INFO    ] 2026-06-05 08:27:16
[2026-06-05 08:27:16,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:27:16,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:27:16,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:27:16,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:27:16,694.694 INFO    ] time= 05/06/2026 08:27:16
[2026-06-05 08:27:16,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:27:16,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:27:16,830.830 INFO    ] No existing commands found in stream
[2026-06-05 08:27:21,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:27:21,844.844 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 08:27:24,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:27:24,774.774 INFO    ] Checking for system updates...
[2026-06-05 08:27:24,810.810 INFO    ] 200
[2026-06-05 08:27:24,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:27:24,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:27:24,867.867 INFO    ] No update needed
[2026-06-05 08:27:24,869.869 INFO    ] Checking for camera pi updates...
[2026-06-05 08:27:24,903.903 INFO    ] 200
[2026-06-05 08:27:24,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:27:24,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:27:24,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:27:24,997.997 INFO    ] No camera update needed
[2026-06-05 08:27:24,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:27:25,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:27:25,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:27:25,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:27:27,054.054 INFO    ] ================================================
[2026-06-05 08:27:27,070.070 INFO    ] Launching Daemon at Fri Jun  5 08:27:27 IST 2026
[2026-06-05 08:27:27,081.081 INFO    ] ================================================
[2026-06-05 08:27:27,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:27:27
[2026-06-05 08:27:28,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:27:28,508.508 INFO    ] Initializing speech engine...
[2026-06-05 08:27:28,516.516 INFO    ] 2026-06-05 08:27:28
[2026-06-05 08:27:28,769.769 INFO    ] 2026-06-05 08:27:28
[2026-06-05 08:27:28,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:27:29,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:27:29,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:27:29,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:27:29,244.244 INFO    ] time= 05/06/2026 08:27:29
[2026-06-05 08:27:29,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:27:29,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:27:29,397.397 INFO    ] No existing commands found in stream
[2026-06-05 08:27:34,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:27:34,412.412 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 08:27:36,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:27:36,596.596 INFO    ] Checking for system updates...
[2026-06-05 08:27:36,633.633 INFO    ] 200
[2026-06-05 08:27:36,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:27:36,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:27:36,692.692 INFO    ] No update needed
[2026-06-05 08:27:36,694.694 INFO    ] Checking for camera pi updates...
[2026-06-05 08:27:36,750.750 INFO    ] 200
[2026-06-05 08:27:36,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:27:36,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:27:36,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:27:36,852.852 INFO    ] No camera update needed
[2026-06-05 08:27:36,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:27:36,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:27:36,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:27:36,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:27:38,908.908 INFO    ] ================================================
[2026-06-05 08:27:38,923.923 INFO    ] Launching Daemon at Fri Jun  5 08:27:38 IST 2026
[2026-06-05 08:27:38,934.934 INFO    ] ================================================
[2026-06-05 08:27:39,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:27:39
[2026-06-05 08:27:40,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:27:40,346.346 INFO    ] Initializing speech engine...
[2026-06-05 08:27:40,351.351 INFO    ] 2026-06-05 08:27:40
[2026-06-05 08:27:40,625.625 INFO    ] 2026-06-05 08:27:40
[2026-06-05 08:27:40,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:27:40,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:27:40,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:27:40,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:27:41,003.003 INFO    ] time= 05/06/2026 08:27:40
[2026-06-05 08:27:41,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:27:41,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:27:41,185.185 INFO    ] No existing commands found in stream
[2026-06-05 08:27:46,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:27:46,218.218 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 08:27:50,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:27:50,201.201 INFO    ] Checking for system updates...
[2026-06-05 08:27:50,237.237 INFO    ] 200
[2026-06-05 08:27:50,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:27:50,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:27:50,296.296 INFO    ] No update needed
[2026-06-05 08:27:50,298.298 INFO    ] Checking for camera pi updates...
[2026-06-05 08:27:50,332.332 INFO    ] 200
[2026-06-05 08:27:50,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:27:50,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:27:50,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:27:50,417.417 INFO    ] No camera update needed
[2026-06-05 08:27:50,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:27:50,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:27:50,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:27:50,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:27:52,471.471 INFO    ] ================================================
[2026-06-05 08:27:52,487.487 INFO    ] Launching Daemon at Fri Jun  5 08:27:52 IST 2026
[2026-06-05 08:27:52,498.498 INFO    ] ================================================
[2026-06-05 08:27:53,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:27:53
[2026-06-05 08:27:53,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:27:53,921.921 INFO    ] Initializing speech engine...
[2026-06-05 08:27:53,937.937 INFO    ] 2026-06-05 08:27:53
[2026-06-05 08:27:54,220.220 INFO    ] 2026-06-05 08:27:54
[2026-06-05 08:27:54,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:27:54,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:27:54,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:27:54,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:27:54,640.640 INFO    ] time= 05/06/2026 08:27:54
[2026-06-05 08:27:54,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:27:54,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:27:54,763.763 INFO    ] No existing commands found in stream
[2026-06-05 08:27:59,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:27:59,801.801 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 08:28:00,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:28:00,512.512 INFO    ] Checking for system updates...
[2026-06-05 08:28:00,549.549 INFO    ] 200
[2026-06-05 08:28:00,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:00,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:28:00,611.611 INFO    ] No update needed
[2026-06-05 08:28:00,613.613 INFO    ] Checking for camera pi updates...
[2026-06-05 08:28:00,647.647 INFO    ] 200
[2026-06-05 08:28:00,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:00,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:28:00,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:28:00,747.747 INFO    ] No camera update needed
[2026-06-05 08:28:00,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:28:00,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:28:00,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:28:00,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:28:02,805.805 INFO    ] ================================================
[2026-06-05 08:28:02,822.822 INFO    ] Launching Daemon at Fri Jun  5 08:28:02 IST 2026
[2026-06-05 08:28:02,835.835 INFO    ] ================================================
[2026-06-05 08:28:03,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:28:03
[2026-06-05 08:28:04,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:28:04,385.385 INFO    ] Initializing speech engine...
[2026-06-05 08:28:04,391.391 INFO    ] 2026-06-05 08:28:04
[2026-06-05 08:28:04,692.692 INFO    ] 2026-06-05 08:28:04
[2026-06-05 08:28:04,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:28:04,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:28:04,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:28:05,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:28:05,117.117 INFO    ] time= 05/06/2026 08:28:05
[2026-06-05 08:28:05,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:28:05,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:28:05,202.202 INFO    ] No existing commands found in stream
[2026-06-05 08:28:10,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:28:10,218.218 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 08:28:10,897.897 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:28:10,900.900 INFO    ] Checking for system updates...
[2026-06-05 08:28:10,940.940 INFO    ] 200
[2026-06-05 08:28:10,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:11,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:28:11,006.006 INFO    ] No update needed
[2026-06-05 08:28:11,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 08:28:11,042.042 INFO    ] 200
[2026-06-05 08:28:11,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:11,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:28:11,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:28:11,129.129 INFO    ] No camera update needed
[2026-06-05 08:28:11,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:28:11,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:28:11,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:28:11,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:28:13,184.184 INFO    ] ================================================
[2026-06-05 08:28:13,199.199 INFO    ] Launching Daemon at Fri Jun  5 08:28:13 IST 2026
[2026-06-05 08:28:13,210.210 INFO    ] ================================================
[2026-06-05 08:28:13,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:28:13
[2026-06-05 08:28:14,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:28:14,641.641 INFO    ] Initializing speech engine...
[2026-06-05 08:28:14,653.653 INFO    ] 2026-06-05 08:28:14
[2026-06-05 08:28:14,906.906 INFO    ] 2026-06-05 08:28:14
[2026-06-05 08:28:14,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:28:15,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:28:15,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:28:15,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:28:15,364.364 INFO    ] time= 05/06/2026 08:28:15
[2026-06-05 08:28:15,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:28:15,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:28:15,539.539 INFO    ] No existing commands found in stream
[2026-06-05 08:28:20,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:28:20,554.554 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 08:28:24,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:28:24,712.712 INFO    ] Checking for system updates...
[2026-06-05 08:28:24,749.749 INFO    ] 200
[2026-06-05 08:28:24,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:24,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:28:24,808.808 INFO    ] No update needed
[2026-06-05 08:28:24,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 08:28:24,844.844 INFO    ] 200
[2026-06-05 08:28:24,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:24,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:28:24,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:28:24,943.943 INFO    ] No camera update needed
[2026-06-05 08:28:24,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:28:24,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:28:24,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:28:24,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:28:27,000.000 INFO    ] ================================================
[2026-06-05 08:28:27,018.018 INFO    ] Launching Daemon at Fri Jun  5 08:28:27 IST 2026
[2026-06-05 08:28:27,029.029 INFO    ] ================================================
[2026-06-05 08:28:27,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:28:27
[2026-06-05 08:28:28,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:28:28,672.672 INFO    ] Initializing speech engine...
[2026-06-05 08:28:28,679.679 INFO    ] 2026-06-05 08:28:28
[2026-06-05 08:28:28,956.956 INFO    ] 2026-06-05 08:28:28
[2026-06-05 08:28:28,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:28:29,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:28:29,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:28:29,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:28:29,412.412 INFO    ] time= 05/06/2026 08:28:29
[2026-06-05 08:28:29,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:28:29,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:28:29,590.590 INFO    ] No existing commands found in stream
[2026-06-05 08:28:34,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:28:34,606.606 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 08:28:37,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:28:37,269.269 INFO    ] Checking for system updates...
[2026-06-05 08:28:37,307.307 INFO    ] 200
[2026-06-05 08:28:37,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:37,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:28:37,365.365 INFO    ] No update needed
[2026-06-05 08:28:37,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 08:28:37,403.403 INFO    ] 200
[2026-06-05 08:28:37,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:37,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:28:37,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:28:37,497.497 INFO    ] No camera update needed
[2026-06-05 08:28:37,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:28:37,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:28:37,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:28:37,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:28:39,554.554 INFO    ] ================================================
[2026-06-05 08:28:39,570.570 INFO    ] Launching Daemon at Fri Jun  5 08:28:39 IST 2026
[2026-06-05 08:28:39,582.582 INFO    ] ================================================
[2026-06-05 08:28:40,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:28:40
[2026-06-05 08:28:40,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:28:41,234.234 INFO    ] Initializing speech engine...
[2026-06-05 08:28:41,249.249 INFO    ] 2026-06-05 08:28:41
[2026-06-05 08:28:41,534.534 INFO    ] 2026-06-05 08:28:41
[2026-06-05 08:28:41,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:28:41,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:28:41,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:28:41,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:28:42,021.021 INFO    ] time= 05/06/2026 08:28:41
[2026-06-05 08:28:42,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:28:42,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:28:42,206.206 INFO    ] No existing commands found in stream
[2026-06-05 08:28:47,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:28:47,234.234 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 08:28:51,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:28:51,482.482 INFO    ] Checking for system updates...
[2026-06-05 08:28:51,523.523 INFO    ] 200
[2026-06-05 08:28:51,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:51,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:28:51,582.582 INFO    ] No update needed
[2026-06-05 08:28:51,584.584 INFO    ] Checking for camera pi updates...
[2026-06-05 08:28:51,622.622 INFO    ] 200
[2026-06-05 08:28:51,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:28:51,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:28:51,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:28:51,710.710 INFO    ] No camera update needed
[2026-06-05 08:28:51,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:28:51,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:28:51,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:28:51,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:28:53,766.766 INFO    ] ================================================
[2026-06-05 08:28:53,781.781 INFO    ] Launching Daemon at Fri Jun  5 08:28:53 IST 2026
[2026-06-05 08:28:53,792.792 INFO    ] ================================================
[2026-06-05 08:28:54,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:28:54
[2026-06-05 08:28:54,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:28:55,198.198 INFO    ] Initializing speech engine...
[2026-06-05 08:28:55,223.223 INFO    ] 2026-06-05 08:28:55
[2026-06-05 08:28:55,475.475 INFO    ] 2026-06-05 08:28:55
[2026-06-05 08:28:55,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:28:55,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:28:55,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:28:55,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:28:55,944.944 INFO    ] time= 05/06/2026 08:28:55
[2026-06-05 08:28:55,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:28:56,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:28:56,088.088 INFO    ] No existing commands found in stream
[2026-06-05 08:29:01,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:29:01,103.103 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 08:29:02,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:29:02,406.406 INFO    ] Checking for system updates...
[2026-06-05 08:29:02,458.458 INFO    ] 200
[2026-06-05 08:29:02,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:02,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:29:02,536.536 INFO    ] No update needed
[2026-06-05 08:29:02,539.539 INFO    ] Checking for camera pi updates...
[2026-06-05 08:29:02,582.582 INFO    ] 200
[2026-06-05 08:29:02,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:02,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:29:02,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:29:02,666.666 INFO    ] No camera update needed
[2026-06-05 08:29:02,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:29:02,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:29:02,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:29:02,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:29:04,727.727 INFO    ] ================================================
[2026-06-05 08:29:04,743.743 INFO    ] Launching Daemon at Fri Jun  5 08:29:04 IST 2026
[2026-06-05 08:29:04,753.753 INFO    ] ================================================
[2026-06-05 08:29:05,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:29:05
[2026-06-05 08:29:06,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:29:06,395.395 INFO    ] Initializing speech engine...
[2026-06-05 08:29:06,404.404 INFO    ] 2026-06-05 08:29:06
[2026-06-05 08:29:06,698.698 INFO    ] 2026-06-05 08:29:06
[2026-06-05 08:29:06,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:29:06,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:29:07,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:29:07,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:29:07,174.174 INFO    ] time= 05/06/2026 08:29:07
[2026-06-05 08:29:07,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:29:07,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:29:07,377.377 INFO    ] No existing commands found in stream
[2026-06-05 08:29:12,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:29:12,391.391 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 08:29:14,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:29:14,299.299 INFO    ] Checking for system updates...
[2026-06-05 08:29:14,335.335 INFO    ] 200
[2026-06-05 08:29:14,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:14,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:29:14,394.394 INFO    ] No update needed
[2026-06-05 08:29:14,396.396 INFO    ] Checking for camera pi updates...
[2026-06-05 08:29:14,434.434 INFO    ] 200
[2026-06-05 08:29:14,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:14,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:29:14,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:29:14,530.530 INFO    ] No camera update needed
[2026-06-05 08:29:14,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:29:14,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:29:14,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:29:14,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:29:16,587.587 INFO    ] ================================================
[2026-06-05 08:29:16,602.602 INFO    ] Launching Daemon at Fri Jun  5 08:29:16 IST 2026
[2026-06-05 08:29:16,613.613 INFO    ] ================================================
[2026-06-05 08:29:17,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:29:17
[2026-06-05 08:29:17,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:29:18,274.274 INFO    ] Initializing speech engine...
[2026-06-05 08:29:18,280.280 INFO    ] 2026-06-05 08:29:18
[2026-06-05 08:29:18,591.591 INFO    ] 2026-06-05 08:29:18
[2026-06-05 08:29:18,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:29:18,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:29:18,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:29:19,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:29:19,102.102 INFO    ] time= 05/06/2026 08:29:19
[2026-06-05 08:29:19,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:29:19,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:29:19,260.260 INFO    ] No existing commands found in stream
[2026-06-05 08:29:24,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:29:24,277.277 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 08:29:25,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:29:25,206.206 INFO    ] Checking for system updates...
[2026-06-05 08:29:25,243.243 INFO    ] 200
[2026-06-05 08:29:25,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:25,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:29:25,313.313 INFO    ] No update needed
[2026-06-05 08:29:25,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 08:29:25,351.351 INFO    ] 200
[2026-06-05 08:29:25,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:25,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:29:25,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:29:25,440.440 INFO    ] No camera update needed
[2026-06-05 08:29:25,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:29:25,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:29:25,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:29:25,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:29:27,499.499 INFO    ] ================================================
[2026-06-05 08:29:27,514.514 INFO    ] Launching Daemon at Fri Jun  5 08:29:27 IST 2026
[2026-06-05 08:29:27,525.525 INFO    ] ================================================
[2026-06-05 08:29:28,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:29:28
[2026-06-05 08:29:28,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:29:29,178.178 INFO    ] Initializing speech engine...
[2026-06-05 08:29:29,188.188 INFO    ] 2026-06-05 08:29:29
[2026-06-05 08:29:29,469.469 INFO    ] 2026-06-05 08:29:29
[2026-06-05 08:29:29,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:29:29,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:29:29,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:29:29,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:29:29,951.951 INFO    ] time= 05/06/2026 08:29:29
[2026-06-05 08:29:30,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:29:30,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:29:30,107.107 INFO    ] No existing commands found in stream
[2026-06-05 08:29:35,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:29:35,124.124 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 08:29:39,206.206 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:29:39,209.209 INFO    ] Checking for system updates...
[2026-06-05 08:29:39,247.247 INFO    ] 200
[2026-06-05 08:29:39,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:39,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:29:39,315.315 INFO    ] No update needed
[2026-06-05 08:29:39,318.318 INFO    ] Checking for camera pi updates...
[2026-06-05 08:29:39,358.358 INFO    ] 200
[2026-06-05 08:29:39,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:39,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:29:39,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:29:39,449.449 INFO    ] No camera update needed
[2026-06-05 08:29:39,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:29:39,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:29:39,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:29:39,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:29:41,510.510 INFO    ] ================================================
[2026-06-05 08:29:41,526.526 INFO    ] Launching Daemon at Fri Jun  5 08:29:41 IST 2026
[2026-06-05 08:29:41,537.537 INFO    ] ================================================
[2026-06-05 08:29:42,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:29:42
[2026-06-05 08:29:42,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:29:42,989.989 INFO    ] Initializing speech engine...
[2026-06-05 08:29:43,004.004 INFO    ] 2026-06-05 08:29:42
[2026-06-05 08:29:43,295.295 INFO    ] 2026-06-05 08:29:43
[2026-06-05 08:29:43,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:29:43,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:29:43,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:29:43,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:29:43,683.683 INFO    ] time= 05/06/2026 08:29:43
[2026-06-05 08:29:43,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:29:43,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:29:43,810.810 INFO    ] No existing commands found in stream
[2026-06-05 08:29:48,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:29:48,824.824 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 08:29:49,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:29:49,992.992 INFO    ] Checking for system updates...
[2026-06-05 08:29:50,033.033 INFO    ] 200
[2026-06-05 08:29:50,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:50,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:29:50,094.094 INFO    ] No update needed
[2026-06-05 08:29:50,097.097 INFO    ] Checking for camera pi updates...
[2026-06-05 08:29:50,132.132 INFO    ] 200
[2026-06-05 08:29:50,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:29:50,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:29:50,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:29:50,238.238 INFO    ] No camera update needed
[2026-06-05 08:29:50,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:29:50,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:29:50,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:29:50,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:29:52,298.298 INFO    ] ================================================
[2026-06-05 08:29:52,313.313 INFO    ] Launching Daemon at Fri Jun  5 08:29:52 IST 2026
[2026-06-05 08:29:52,323.323 INFO    ] ================================================
[2026-06-05 08:29:52,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:29:52
[2026-06-05 08:29:53,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:29:53,745.745 INFO    ] Initializing speech engine...
[2026-06-05 08:29:53,753.753 INFO    ] 2026-06-05 08:29:53
[2026-06-05 08:29:54,051.051 INFO    ] 2026-06-05 08:29:54
[2026-06-05 08:29:54,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:29:54,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:29:54,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:29:54,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:29:54,438.438 INFO    ] time= 05/06/2026 08:29:54
[2026-06-05 08:29:54,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:29:54,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:29:54,564.564 INFO    ] No existing commands found in stream
[2026-06-05 08:29:59,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:29:59,580.580 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 08:30:04,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:30:04,407.407 INFO    ] Checking for system updates...
[2026-06-05 08:30:04,461.461 INFO    ] 200
[2026-06-05 08:30:04,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:04,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:30:04,531.531 INFO    ] No update needed
[2026-06-05 08:30:04,533.533 INFO    ] Checking for camera pi updates...
[2026-06-05 08:30:04,579.579 INFO    ] 200
[2026-06-05 08:30:04,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:04,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:30:04,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:30:04,655.655 INFO    ] No camera update needed
[2026-06-05 08:30:04,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:30:04,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:30:04,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:30:04,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:30:06,710.710 INFO    ] ================================================
[2026-06-05 08:30:06,726.726 INFO    ] Launching Daemon at Fri Jun  5 08:30:06 IST 2026
[2026-06-05 08:30:06,737.737 INFO    ] ================================================
[2026-06-05 08:30:07,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:30:07
[2026-06-05 08:30:08,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:30:08,389.389 INFO    ] Initializing speech engine...
[2026-06-05 08:30:08,401.401 INFO    ] 2026-06-05 08:30:08
[2026-06-05 08:30:08,668.668 INFO    ] 2026-06-05 08:30:08
[2026-06-05 08:30:08,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:30:08,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:30:08,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:30:09,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:30:09,133.133 INFO    ] time= 05/06/2026 08:30:09
[2026-06-05 08:30:09,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:30:09,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:30:09,286.286 INFO    ] No existing commands found in stream
[2026-06-05 08:30:14,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:30:14,311.311 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 08:30:17,191.191 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:30:17,193.193 INFO    ] Checking for system updates...
[2026-06-05 08:30:17,232.232 INFO    ] 200
[2026-06-05 08:30:17,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:17,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:30:17,295.295 INFO    ] No update needed
[2026-06-05 08:30:17,298.298 INFO    ] Checking for camera pi updates...
[2026-06-05 08:30:17,335.335 INFO    ] 200
[2026-06-05 08:30:17,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:17,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:30:17,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:30:17,436.436 INFO    ] No camera update needed
[2026-06-05 08:30:17,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:30:17,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:30:17,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:30:17,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:30:19,496.496 INFO    ] ================================================
[2026-06-05 08:30:19,512.512 INFO    ] Launching Daemon at Fri Jun  5 08:30:19 IST 2026
[2026-06-05 08:30:19,523.523 INFO    ] ================================================
[2026-06-05 08:30:20,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:30:20
[2026-06-05 08:30:20,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:30:20,986.986 INFO    ] Initializing speech engine...
[2026-06-05 08:30:20,993.993 INFO    ] 2026-06-05 08:30:20
[2026-06-05 08:30:21,244.244 INFO    ] 2026-06-05 08:30:21
[2026-06-05 08:30:21,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:30:21,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:30:21,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:30:21,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:30:21,617.617 INFO    ] time= 05/06/2026 08:30:21
[2026-06-05 08:30:21,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:30:21,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:30:21,785.785 INFO    ] No existing commands found in stream
[2026-06-05 08:30:26,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:30:26,813.813 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 08:30:29,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:30:29,734.734 INFO    ] Checking for system updates...
[2026-06-05 08:30:29,771.771 INFO    ] 200
[2026-06-05 08:30:29,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:29,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:30:29,832.832 INFO    ] No update needed
[2026-06-05 08:30:29,835.835 INFO    ] Checking for camera pi updates...
[2026-06-05 08:30:29,870.870 INFO    ] 200
[2026-06-05 08:30:29,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:29,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:30:29,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:30:29,959.959 INFO    ] No camera update needed
[2026-06-05 08:30:29,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:30:29,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:30:29,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:30:29,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:30:32,018.018 INFO    ] ================================================
[2026-06-05 08:30:32,034.034 INFO    ] Launching Daemon at Fri Jun  5 08:30:32 IST 2026
[2026-06-05 08:30:32,045.045 INFO    ] ================================================
[2026-06-05 08:30:32,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:30:32
[2026-06-05 08:30:33,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:30:33,570.570 INFO    ] Initializing speech engine...
[2026-06-05 08:30:33,590.590 INFO    ] 2026-06-05 08:30:33
[2026-06-05 08:30:33,859.859 INFO    ] 2026-06-05 08:30:33
[2026-06-05 08:30:33,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:30:34,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:30:34,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:30:34,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:30:34,338.338 INFO    ] time= 05/06/2026 08:30:34
[2026-06-05 08:30:34,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:30:34,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:30:34,492.492 INFO    ] No existing commands found in stream
[2026-06-05 08:30:39,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:30:39,530.530 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 08:30:42,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:30:42,967.967 INFO    ] Checking for system updates...
[2026-06-05 08:30:43,002.002 INFO    ] 200
[2026-06-05 08:30:43,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:43,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:30:43,061.061 INFO    ] No update needed
[2026-06-05 08:30:43,064.064 INFO    ] Checking for camera pi updates...
[2026-06-05 08:30:43,097.097 INFO    ] 200
[2026-06-05 08:30:43,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:43,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:30:43,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:30:43,292.292 INFO    ] No camera update needed
[2026-06-05 08:30:43,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:30:43,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:30:43,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:30:43,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:30:45,349.349 INFO    ] ================================================
[2026-06-05 08:30:45,364.364 INFO    ] Launching Daemon at Fri Jun  5 08:30:45 IST 2026
[2026-06-05 08:30:45,375.375 INFO    ] ================================================
[2026-06-05 08:30:45,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:30:45
[2026-06-05 08:30:46,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:30:46,837.837 INFO    ] Initializing speech engine...
[2026-06-05 08:30:46,851.851 INFO    ] 2026-06-05 08:30:46
[2026-06-05 08:30:47,126.126 INFO    ] 2026-06-05 08:30:47
[2026-06-05 08:30:47,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:30:47,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:30:47,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:30:47,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:30:47,536.536 INFO    ] time= 05/06/2026 08:30:47
[2026-06-05 08:30:47,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:30:47,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:30:47,624.624 INFO    ] No existing commands found in stream
[2026-06-05 08:30:52,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:30:52,640.640 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 08:30:56,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:30:56,359.359 INFO    ] Checking for system updates...
[2026-06-05 08:30:56,395.395 INFO    ] 200
[2026-06-05 08:30:56,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:56,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:30:56,452.452 INFO    ] No update needed
[2026-06-05 08:30:56,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 08:30:56,490.490 INFO    ] 200
[2026-06-05 08:30:56,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:30:56,533.533 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:30:56,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:30:56,582.582 INFO    ] No camera update needed
[2026-06-05 08:30:56,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:30:56,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:30:56,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:30:56,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:30:58,638.638 INFO    ] ================================================
[2026-06-05 08:30:58,654.654 INFO    ] Launching Daemon at Fri Jun  5 08:30:58 IST 2026
[2026-06-05 08:30:58,665.665 INFO    ] ================================================
[2026-06-05 08:30:59,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:30:59
[2026-06-05 08:30:59,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:31:00,270.270 INFO    ] Initializing speech engine...
[2026-06-05 08:31:00,284.284 INFO    ] 2026-06-05 08:31:00
[2026-06-05 08:31:00,568.568 INFO    ] 2026-06-05 08:31:00
[2026-06-05 08:31:00,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:31:00,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:31:01,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:31:01,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:31:01,170.170 INFO    ] time= 05/06/2026 08:31:01
[2026-06-05 08:31:01,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:31:01,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:31:01,354.354 INFO    ] No existing commands found in stream
[2026-06-05 08:31:06,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:31:06,389.389 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 08:31:10,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:31:10,777.777 INFO    ] Checking for system updates...
[2026-06-05 08:31:10,814.814 INFO    ] 200
[2026-06-05 08:31:10,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:31:10,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:31:10,876.876 INFO    ] No update needed
[2026-06-05 08:31:10,879.879 INFO    ] Checking for camera pi updates...
[2026-06-05 08:31:10,914.914 INFO    ] 200
[2026-06-05 08:31:10,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:31:10,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:31:11,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:31:11,007.007 INFO    ] No camera update needed
[2026-06-05 08:31:11,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:31:11,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:31:11,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:31:11,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:31:13,067.067 INFO    ] ================================================
[2026-06-05 08:31:13,082.082 INFO    ] Launching Daemon at Fri Jun  5 08:31:13 IST 2026
[2026-06-05 08:31:13,093.093 INFO    ] ================================================
[2026-06-05 08:31:13,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:31:13
[2026-06-05 08:31:14,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:31:14,701.701 INFO    ] Initializing speech engine...
[2026-06-05 08:31:14,713.713 INFO    ] 2026-06-05 08:31:14
[2026-06-05 08:31:14,997.997 INFO    ] 2026-06-05 08:31:14
[2026-06-05 08:31:15,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:31:15,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:31:15,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:31:15,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:31:15,463.463 INFO    ] time= 05/06/2026 08:31:15
[2026-06-05 08:31:15,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:31:15,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:31:15,617.617 INFO    ] No existing commands found in stream
[2026-06-05 08:31:20,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:31:20,633.633 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 08:31:22,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:31:22,675.675 INFO    ] Checking for system updates...
[2026-06-05 08:31:22,713.713 INFO    ] 200
[2026-06-05 08:31:22,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:31:22,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:31:22,775.775 INFO    ] No update needed
[2026-06-05 08:31:22,778.778 INFO    ] Checking for camera pi updates...
[2026-06-05 08:31:22,813.813 INFO    ] 200
[2026-06-05 08:31:22,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:31:22,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:31:22,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:31:22,903.903 INFO    ] No camera update needed
[2026-06-05 08:31:22,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:31:22,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:31:22,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:31:22,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:31:24,962.962 INFO    ] ================================================
[2026-06-05 08:31:24,978.978 INFO    ] Launching Daemon at Fri Jun  5 08:31:24 IST 2026
[2026-06-05 08:31:24,989.989 INFO    ] ================================================
[2026-06-05 08:31:25,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:31:25
[2026-06-05 08:31:26,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:31:26,449.449 INFO    ] Initializing speech engine...
[2026-06-05 08:31:26,456.456 INFO    ] 2026-06-05 08:31:26
[2026-06-05 08:31:26,716.716 INFO    ] 2026-06-05 08:31:26
[2026-06-05 08:31:26,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:31:26,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:31:26,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:31:27,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:31:27,076.076 INFO    ] time= 05/06/2026 08:31:27
[2026-06-05 08:31:27,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:31:27,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:31:27,241.241 INFO    ] No existing commands found in stream
[2026-06-05 08:31:32,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:31:32,274.274 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 08:31:32,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:31:32,985.985 INFO    ] Checking for system updates...
[2026-06-05 08:31:33,034.034 INFO    ] 200
[2026-06-05 08:31:33,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:31:33,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:31:33,093.093 INFO    ] No update needed
[2026-06-05 08:31:33,096.096 INFO    ] Checking for camera pi updates...
[2026-06-05 08:31:33,129.129 INFO    ] 200
[2026-06-05 08:31:33,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:31:33,173.173 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:31:33,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:31:33,227.227 INFO    ] No camera update needed
[2026-06-05 08:31:33,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:31:33,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:31:33,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:31:33,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:31:35,285.285 INFO    ] ================================================
[2026-06-05 08:31:35,300.300 INFO    ] Launching Daemon at Fri Jun  5 08:31:35 IST 2026
[2026-06-05 08:31:35,311.311 INFO    ] ================================================
[2026-06-05 08:31:35,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:31:35
[2026-06-05 08:31:36,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:31:36,740.740 INFO    ] Initializing speech engine...
[2026-06-05 08:31:36,756.756 INFO    ] 2026-06-05 08:31:36
[2026-06-05 08:31:37,009.009 INFO    ] 2026-06-05 08:31:37
[2026-06-05 08:31:37,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:31:42,125.125 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-05 08:31:42,152.152 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 08:31:42,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:31:42,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:31:42,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:31:44,205.205 INFO    ] ================================================
[2026-06-05 08:31:44,221.221 INFO    ] Launching Daemon at Fri Jun  5 08:31:44 IST 2026
[2026-06-05 08:31:44,232.232 INFO    ] ================================================
[2026-06-05 08:31:44,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:31:44
[2026-06-05 08:31:45,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:31:45,690.690 INFO    ] Initializing speech engine...
[2026-06-05 08:31:45,711.711 INFO    ] 2026-06-05 08:31:45
[2026-06-05 08:31:45,979.979 INFO    ] 2026-06-05 08:31:45
[2026-06-05 08:31:46,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:31:46,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:31:46,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:31:46,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:31:46,394.394 INFO    ] time= 05/06/2026 08:31:46
[2026-06-05 08:31:46,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:31:46,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:31:46,538.538 INFO    ] No existing commands found in stream
[2026-06-05 08:31:51,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:31:51,566.566 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 08:31:55,190.190 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:31:55,192.192 INFO    ] Checking for system updates...
[2026-06-05 08:31:55,233.233 INFO    ] 200
[2026-06-05 08:31:55,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:31:55,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:31:55,291.291 INFO    ] No update needed
[2026-06-05 08:31:55,294.294 INFO    ] Checking for camera pi updates...
[2026-06-05 08:31:55,328.328 INFO    ] 200
[2026-06-05 08:31:55,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:31:55,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:32:00,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:32:00,440.440 INFO    ] No camera update needed
[2026-06-05 08:32:00,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:32:00,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:32:00,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:32:00,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:32:02,499.499 INFO    ] ================================================
[2026-06-05 08:32:02,519.519 INFO    ] Launching Daemon at Fri Jun  5 08:32:02 IST 2026
[2026-06-05 08:32:02,532.532 INFO    ] ================================================
[2026-06-05 08:32:03,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:32:03
[2026-06-05 08:32:03,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:32:04,108.108 INFO    ] Initializing speech engine...
[2026-06-05 08:32:04,135.135 INFO    ] 2026-06-05 08:32:04
[2026-06-05 08:32:04,405.405 INFO    ] 2026-06-05 08:32:04
[2026-06-05 08:32:04,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:32:04,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:32:04,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:32:04,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:32:04,907.907 INFO    ] time= 05/06/2026 08:32:04
[2026-06-05 08:32:04,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:32:05,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:32:05,147.147 INFO    ] No existing commands found in stream
[2026-06-05 08:32:10,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:32:10,176.176 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 08:32:12,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:32:12,840.840 INFO    ] Checking for system updates...
[2026-06-05 08:32:12,877.877 INFO    ] 200
[2026-06-05 08:32:12,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:32:12,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:32:12,936.936 INFO    ] No update needed
[2026-06-05 08:32:12,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 08:32:12,972.972 INFO    ] 200
[2026-06-05 08:32:12,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:32:13,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:32:13,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:32:13,072.072 INFO    ] No camera update needed
[2026-06-05 08:32:13,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:32:13,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:32:13,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:32:13,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:32:15,141.141 INFO    ] ================================================
[2026-06-05 08:32:15,157.157 INFO    ] Launching Daemon at Fri Jun  5 08:32:15 IST 2026
[2026-06-05 08:32:15,170.170 INFO    ] ================================================
[2026-06-05 08:32:15,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:32:15
[2026-06-05 08:32:16,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:32:16,815.815 INFO    ] Initializing speech engine...
[2026-06-05 08:32:16,827.827 INFO    ] 2026-06-05 08:32:16
[2026-06-05 08:32:17,116.116 INFO    ] 2026-06-05 08:32:17
[2026-06-05 08:32:17,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:32:17,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:32:17,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:32:17,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:32:17,610.610 INFO    ] time= 05/06/2026 08:32:17
[2026-06-05 08:32:17,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:32:17,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:32:17,824.824 INFO    ] No existing commands found in stream
[2026-06-05 08:32:22,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:32:22,843.843 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 08:32:25,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:32:25,722.722 INFO    ] Checking for system updates...
[2026-06-05 08:32:25,758.758 INFO    ] 200
[2026-06-05 08:32:25,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:32:25,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:32:25,817.817 INFO    ] No update needed
[2026-06-05 08:32:25,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 08:32:25,853.853 INFO    ] 200
[2026-06-05 08:32:25,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:32:25,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:32:25,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:32:25,945.945 INFO    ] No camera update needed
[2026-06-05 08:32:25,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:32:25,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:32:25,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:32:25,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:32:28,000.000 INFO    ] ================================================
[2026-06-05 08:32:28,017.017 INFO    ] Launching Daemon at Fri Jun  5 08:32:28 IST 2026
[2026-06-05 08:32:28,028.028 INFO    ] ================================================
[2026-06-05 08:32:28,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:32:28
[2026-06-05 08:32:29,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:32:29,445.445 INFO    ] Initializing speech engine...
[2026-06-05 08:32:29,453.453 INFO    ] 2026-06-05 08:32:29
[2026-06-05 08:32:29,729.729 INFO    ] 2026-06-05 08:32:29
[2026-06-05 08:32:29,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:32:30,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:32:30,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:32:30,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:32:30,492.492 INFO    ] time= 05/06/2026 08:32:30
[2026-06-05 08:32:30,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:32:30,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:32:30,691.691 INFO    ] No existing commands found in stream
[2026-06-05 08:32:35,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:32:35,718.718 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 08:32:36,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:32:36,369.369 INFO    ] Checking for system updates...
[2026-06-05 08:32:36,409.409 INFO    ] 200
[2026-06-05 08:32:36,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:32:36,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:32:36,467.467 INFO    ] No update needed
[2026-06-05 08:32:36,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 08:32:36,508.508 INFO    ] 200
[2026-06-05 08:32:36,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:32:36,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:32:36,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:32:36,604.604 INFO    ] No camera update needed
[2026-06-05 08:32:36,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:32:36,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:32:36,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:32:36,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:32:38,662.662 INFO    ] ================================================
[2026-06-05 08:32:38,678.678 INFO    ] Launching Daemon at Fri Jun  5 08:32:38 IST 2026
[2026-06-05 08:32:38,689.689 INFO    ] ================================================
[2026-06-05 08:32:39,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:32:39
[2026-06-05 08:32:39,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:32:40,136.136 INFO    ] Initializing speech engine...
[2026-06-05 08:32:40,144.144 INFO    ] 2026-06-05 08:32:40
[2026-06-05 08:32:40,445.445 INFO    ] 2026-06-05 08:32:40
[2026-06-05 08:32:40,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:32:40,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:32:40,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:32:40,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:32:40,850.850 INFO    ] time= 05/06/2026 08:32:40
[2026-06-05 08:32:40,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:32:40,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:32:40,960.960 INFO    ] No existing commands found in stream
[2026-06-05 08:32:45,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:32:45,974.974 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 08:32:48,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:32:48,269.269 INFO    ] Checking for system updates...
[2026-06-05 08:32:48,304.304 INFO    ] 200
[2026-06-05 08:32:48,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:32:48,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:32:48,380.380 INFO    ] No update needed
[2026-06-05 08:32:48,382.382 INFO    ] Checking for camera pi updates...
[2026-06-05 08:32:48,417.417 INFO    ] 200
[2026-06-05 08:32:48,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:32:48,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:32:48,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:32:48,517.517 INFO    ] No camera update needed
[2026-06-05 08:32:48,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:32:48,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:32:48,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:32:48,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:32:50,572.572 INFO    ] ================================================
[2026-06-05 08:32:50,588.588 INFO    ] Launching Daemon at Fri Jun  5 08:32:50 IST 2026
[2026-06-05 08:32:50,599.599 INFO    ] ================================================
[2026-06-05 08:32:51,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:32:51
[2026-06-05 08:32:51,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:32:52,133.133 INFO    ] Initializing speech engine...
[2026-06-05 08:32:52,142.142 INFO    ] 2026-06-05 08:32:52
[2026-06-05 08:32:52,392.392 INFO    ] 2026-06-05 08:32:52
[2026-06-05 08:32:52,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:32:52,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:32:52,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:32:52,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:32:52,865.865 INFO    ] time= 05/06/2026 08:32:52
[2026-06-05 08:32:52,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:32:52,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:32:53,016.016 INFO    ] No existing commands found in stream
[2026-06-05 08:32:58,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:32:58,039.039 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 08:33:00,197.197 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:33:00,200.200 INFO    ] Checking for system updates...
[2026-06-05 08:33:00,236.236 INFO    ] 200
[2026-06-05 08:33:00,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:00,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:33:00,294.294 INFO    ] No update needed
[2026-06-05 08:33:00,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 08:33:00,331.331 INFO    ] 200
[2026-06-05 08:33:00,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:00,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:33:00,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:33:00,421.421 INFO    ] No camera update needed
[2026-06-05 08:33:00,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:33:00,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:33:00,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:33:00,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:33:02,495.495 INFO    ] ================================================
[2026-06-05 08:33:02,514.514 INFO    ] Launching Daemon at Fri Jun  5 08:33:02 IST 2026
[2026-06-05 08:33:02,526.526 INFO    ] ================================================
[2026-06-05 08:33:03,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:33:03
[2026-06-05 08:33:03,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:33:04,072.072 INFO    ] Initializing speech engine...
[2026-06-05 08:33:04,082.082 INFO    ] 2026-06-05 08:33:04
[2026-06-05 08:33:04,334.334 INFO    ] 2026-06-05 08:33:04
[2026-06-05 08:33:04,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:33:04,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:33:04,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:33:04,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:33:04,817.817 INFO    ] time= 05/06/2026 08:33:04
[2026-06-05 08:33:04,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:33:04,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:33:04,989.989 INFO    ] No existing commands found in stream
[2026-06-05 08:33:10,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:33:10,024.024 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 08:33:14,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:33:14,190.190 INFO    ] Checking for system updates...
[2026-06-05 08:33:14,226.226 INFO    ] 200
[2026-06-05 08:33:14,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:14,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:33:14,287.287 INFO    ] No update needed
[2026-06-05 08:33:14,289.289 INFO    ] Checking for camera pi updates...
[2026-06-05 08:33:14,322.322 INFO    ] 200
[2026-06-05 08:33:14,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:14,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:33:14,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:33:14,419.419 INFO    ] No camera update needed
[2026-06-05 08:33:14,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:33:14,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:33:14,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:33:14,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:33:16,477.477 INFO    ] ================================================
[2026-06-05 08:33:16,492.492 INFO    ] Launching Daemon at Fri Jun  5 08:33:16 IST 2026
[2026-06-05 08:33:16,503.503 INFO    ] ================================================
[2026-06-05 08:33:17,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:33:17
[2026-06-05 08:33:17,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:33:17,961.961 INFO    ] Initializing speech engine...
[2026-06-05 08:33:17,969.969 INFO    ] 2026-06-05 08:33:17
[2026-06-05 08:33:18,227.227 INFO    ] 2026-06-05 08:33:18
[2026-06-05 08:33:18,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:33:18,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:33:18,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:33:18,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:33:18,717.717 INFO    ] time= 05/06/2026 08:33:18
[2026-06-05 08:33:18,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:33:18,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:33:18,920.920 INFO    ] No existing commands found in stream
[2026-06-05 08:33:23,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:33:23,938.938 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 08:33:24,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:33:24,500.500 INFO    ] Checking for system updates...
[2026-06-05 08:33:24,541.541 INFO    ] 200
[2026-06-05 08:33:24,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:24,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:33:24,600.600 INFO    ] No update needed
[2026-06-05 08:33:24,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 08:33:24,636.636 INFO    ] 200
[2026-06-05 08:33:24,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:24,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:33:24,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:33:24,741.741 INFO    ] No camera update needed
[2026-06-05 08:33:24,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:33:24,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:33:24,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:33:24,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:33:26,801.801 INFO    ] ================================================
[2026-06-05 08:33:26,816.816 INFO    ] Launching Daemon at Fri Jun  5 08:33:26 IST 2026
[2026-06-05 08:33:26,827.827 INFO    ] ================================================
[2026-06-05 08:33:27,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:33:27
[2026-06-05 08:33:28,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:33:28,464.464 INFO    ] Initializing speech engine...
[2026-06-05 08:33:28,479.479 INFO    ] 2026-06-05 08:33:28
[2026-06-05 08:33:28,791.791 INFO    ] 2026-06-05 08:33:28
[2026-06-05 08:33:28,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:33:30,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:33:30,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:33:30,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:33:30,211.211 INFO    ] time= 05/06/2026 08:33:30
[2026-06-05 08:33:30,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:33:30,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:33:30,295.295 INFO    ] No existing commands found in stream
[2026-06-05 08:33:35,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:33:35,312.312 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 08:33:38,139.139 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:33:38,142.142 INFO    ] Checking for system updates...
[2026-06-05 08:33:38,180.180 INFO    ] 200
[2026-06-05 08:33:38,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:38,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:33:38,246.246 INFO    ] No update needed
[2026-06-05 08:33:38,248.248 INFO    ] Checking for camera pi updates...
[2026-06-05 08:33:38,282.282 INFO    ] 200
[2026-06-05 08:33:38,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:38,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:33:38,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:33:38,392.392 INFO    ] No camera update needed
[2026-06-05 08:33:38,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:33:38,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:33:38,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:33:38,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:33:40,458.458 INFO    ] ================================================
[2026-06-05 08:33:40,474.474 INFO    ] Launching Daemon at Fri Jun  5 08:33:40 IST 2026
[2026-06-05 08:33:40,484.484 INFO    ] ================================================
[2026-06-05 08:33:41,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:33:41
[2026-06-05 08:33:41,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:33:41,895.895 INFO    ] Initializing speech engine...
[2026-06-05 08:33:41,910.910 INFO    ] 2026-06-05 08:33:41
[2026-06-05 08:33:42,177.177 INFO    ] 2026-06-05 08:33:42
[2026-06-05 08:33:42,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:33:42,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:33:42,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:33:42,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:33:42,669.669 INFO    ] time= 05/06/2026 08:33:42
[2026-06-05 08:33:42,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:33:42,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:33:42,812.812 INFO    ] No existing commands found in stream
[2026-06-05 08:33:47,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:33:47,827.827 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 08:33:51,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:33:51,338.338 INFO    ] Checking for system updates...
[2026-06-05 08:33:51,374.374 INFO    ] 200
[2026-06-05 08:33:51,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:51,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:33:51,439.439 INFO    ] No update needed
[2026-06-05 08:33:51,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 08:33:51,476.476 INFO    ] 200
[2026-06-05 08:33:51,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:33:51,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:33:51,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:33:51,578.578 INFO    ] No camera update needed
[2026-06-05 08:33:51,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:33:51,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:33:51,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:33:51,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:33:53,640.640 INFO    ] ================================================
[2026-06-05 08:33:53,657.657 INFO    ] Launching Daemon at Fri Jun  5 08:33:53 IST 2026
[2026-06-05 08:33:53,668.668 INFO    ] ================================================
[2026-06-05 08:33:54,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:33:54
[2026-06-05 08:33:54,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:33:55,122.122 INFO    ] Initializing speech engine...
[2026-06-05 08:33:55,131.131 INFO    ] 2026-06-05 08:33:55
[2026-06-05 08:33:55,380.380 INFO    ] 2026-06-05 08:33:55
[2026-06-05 08:33:55,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:33:55,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:33:55,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:33:55,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:33:55,855.855 INFO    ] time= 05/06/2026 08:33:55
[2026-06-05 08:33:55,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:33:55,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:33:56,074.074 INFO    ] No existing commands found in stream
[2026-06-05 08:34:01,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:34:01,103.103 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 08:34:01,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:34:01,985.985 INFO    ] Checking for system updates...
[2026-06-05 08:34:02,037.037 INFO    ] 200
[2026-06-05 08:34:02,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:02,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:34:02,165.165 INFO    ] No update needed
[2026-06-05 08:34:02,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 08:34:02,215.215 INFO    ] 200
[2026-06-05 08:34:02,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:02,275.275 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:34:02,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:34:02,343.343 INFO    ] No camera update needed
[2026-06-05 08:34:02,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:34:02,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:34:02,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:34:02,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:34:04,407.407 INFO    ] ================================================
[2026-06-05 08:34:04,422.422 INFO    ] Launching Daemon at Fri Jun  5 08:34:04 IST 2026
[2026-06-05 08:34:04,433.433 INFO    ] ================================================
[2026-06-05 08:34:05,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:34:05
[2026-06-05 08:34:05,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:34:06,058.058 INFO    ] Initializing speech engine...
[2026-06-05 08:34:06,064.064 INFO    ] 2026-06-05 08:34:06
[2026-06-05 08:34:06,339.339 INFO    ] 2026-06-05 08:34:06
[2026-06-05 08:34:06,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:34:06,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:34:06,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:34:06,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:34:06,803.803 INFO    ] time= 05/06/2026 08:34:06
[2026-06-05 08:34:06,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:34:06,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:34:07,060.060 INFO    ] No existing commands found in stream
[2026-06-05 08:34:12,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:34:12,093.093 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 08:34:12,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:34:12,751.751 INFO    ] Checking for system updates...
[2026-06-05 08:34:12,793.793 INFO    ] 200
[2026-06-05 08:34:12,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:12,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:34:12,851.851 INFO    ] No update needed
[2026-06-05 08:34:12,853.853 INFO    ] Checking for camera pi updates...
[2026-06-05 08:34:12,891.891 INFO    ] 200
[2026-06-05 08:34:12,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:12,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:34:13,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:34:13,090.090 INFO    ] No camera update needed
[2026-06-05 08:34:13,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:34:13,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:34:13,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:34:13,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:34:15,146.146 INFO    ] ================================================
[2026-06-05 08:34:15,162.162 INFO    ] Launching Daemon at Fri Jun  5 08:34:15 IST 2026
[2026-06-05 08:34:15,175.175 INFO    ] ================================================
[2026-06-05 08:34:15,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:34:15
[2026-06-05 08:34:16,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:34:16,812.812 INFO    ] Initializing speech engine...
[2026-06-05 08:34:16,822.822 INFO    ] 2026-06-05 08:34:16
[2026-06-05 08:34:17,094.094 INFO    ] 2026-06-05 08:34:17
[2026-06-05 08:34:17,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:34:17,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:34:17,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:34:17,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:34:17,569.569 INFO    ] time= 05/06/2026 08:34:17
[2026-06-05 08:34:17,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:34:17,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:34:17,777.777 INFO    ] No existing commands found in stream
[2026-06-05 08:34:22,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:34:22,802.802 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 08:34:25,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:34:25,938.938 INFO    ] Checking for system updates...
[2026-06-05 08:34:25,974.974 INFO    ] 200
[2026-06-05 08:34:25,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:26,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:34:26,034.034 INFO    ] No update needed
[2026-06-05 08:34:26,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 08:34:26,071.071 INFO    ] 200
[2026-06-05 08:34:26,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:26,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:34:26,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:34:26,169.169 INFO    ] No camera update needed
[2026-06-05 08:34:26,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:34:26,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:34:26,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:34:26,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:34:28,230.230 INFO    ] ================================================
[2026-06-05 08:34:28,246.246 INFO    ] Launching Daemon at Fri Jun  5 08:34:28 IST 2026
[2026-06-05 08:34:28,257.257 INFO    ] ================================================
[2026-06-05 08:34:28,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:34:28
[2026-06-05 08:34:29,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:34:29,924.924 INFO    ] Initializing speech engine...
[2026-06-05 08:34:29,937.937 INFO    ] 2026-06-05 08:34:29
[2026-06-05 08:34:30,253.253 INFO    ] 2026-06-05 08:34:30
[2026-06-05 08:34:30,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:34:30,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:34:30,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:34:30,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:34:31,015.015 INFO    ] time= 05/06/2026 08:34:30
[2026-06-05 08:34:31,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:34:31,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:34:31,228.228 INFO    ] No existing commands found in stream
[2026-06-05 08:34:36,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:34:36,241.241 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 08:34:39,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:34:39,517.517 INFO    ] Checking for system updates...
[2026-06-05 08:34:39,554.554 INFO    ] 200
[2026-06-05 08:34:39,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:39,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:34:39,623.623 INFO    ] No update needed
[2026-06-05 08:34:39,625.625 INFO    ] Checking for camera pi updates...
[2026-06-05 08:34:39,661.661 INFO    ] 200
[2026-06-05 08:34:39,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:39,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:34:39,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:34:39,755.755 INFO    ] No camera update needed
[2026-06-05 08:34:39,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:34:39,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:34:39,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:34:39,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:34:41,816.816 INFO    ] ================================================
[2026-06-05 08:34:41,832.832 INFO    ] Launching Daemon at Fri Jun  5 08:34:41 IST 2026
[2026-06-05 08:34:41,844.844 INFO    ] ================================================
[2026-06-05 08:34:42,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:34:42
[2026-06-05 08:34:42,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:34:43,254.254 INFO    ] Initializing speech engine...
[2026-06-05 08:34:43,269.269 INFO    ] 2026-06-05 08:34:43
[2026-06-05 08:34:43,523.523 INFO    ] 2026-06-05 08:34:43
[2026-06-05 08:34:43,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:34:43,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:34:43,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:34:43,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:34:43,901.901 INFO    ] time= 05/06/2026 08:34:43
[2026-06-05 08:34:43,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:34:43,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:34:44,092.092 INFO    ] No existing commands found in stream
[2026-06-05 08:34:49,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:34:49,115.115 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 08:34:50,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:34:50,173.173 INFO    ] Checking for system updates...
[2026-06-05 08:34:50,209.209 INFO    ] 200
[2026-06-05 08:34:50,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:50,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:34:50,274.274 INFO    ] No update needed
[2026-06-05 08:34:50,277.277 INFO    ] Checking for camera pi updates...
[2026-06-05 08:34:50,310.310 INFO    ] 200
[2026-06-05 08:34:50,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:34:50,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:34:50,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:34:50,409.409 INFO    ] No camera update needed
[2026-06-05 08:34:50,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:34:50,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:34:50,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:34:50,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:34:52,467.467 INFO    ] ================================================
[2026-06-05 08:34:52,483.483 INFO    ] Launching Daemon at Fri Jun  5 08:34:52 IST 2026
[2026-06-05 08:34:52,494.494 INFO    ] ================================================
[2026-06-05 08:34:53,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:34:53
[2026-06-05 08:34:53,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:34:54,112.112 INFO    ] Initializing speech engine...
[2026-06-05 08:34:54,119.119 INFO    ] 2026-06-05 08:34:54
[2026-06-05 08:34:54,368.368 INFO    ] 2026-06-05 08:34:54
[2026-06-05 08:34:54,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:34:54,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:34:54,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:34:54,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:34:54,748.748 INFO    ] time= 05/06/2026 08:34:54
[2026-06-05 08:34:54,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:34:54,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:34:54,939.939 INFO    ] No existing commands found in stream
[2026-06-05 08:34:59,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:34:59,962.962 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 08:35:01,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:35:01,741.741 INFO    ] Checking for system updates...
[2026-06-05 08:35:01,862.862 INFO    ] 200
[2026-06-05 08:35:01,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:02,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:35:02,166.166 INFO    ] No update needed
[2026-06-05 08:35:02,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 08:35:02,298.298 INFO    ] 200
[2026-06-05 08:35:02,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:02,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:35:02,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:35:02,473.473 INFO    ] No camera update needed
[2026-06-05 08:35:02,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:35:02,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:35:02,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:35:02,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:35:04,538.538 INFO    ] ================================================
[2026-06-05 08:35:04,554.554 INFO    ] Launching Daemon at Fri Jun  5 08:35:04 IST 2026
[2026-06-05 08:35:04,565.565 INFO    ] ================================================
[2026-06-05 08:35:05,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:35:05
[2026-06-05 08:35:05,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:35:05,989.989 INFO    ] Initializing speech engine...
[2026-06-05 08:35:06,010.010 INFO    ] 2026-06-05 08:35:06
[2026-06-05 08:35:06,275.275 INFO    ] 2026-06-05 08:35:06
[2026-06-05 08:35:06,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:35:06,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:35:06,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:35:06,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:35:06,685.685 INFO    ] time= 05/06/2026 08:35:06
[2026-06-05 08:35:06,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:35:06,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:35:06,850.850 INFO    ] No existing commands found in stream
[2026-06-05 08:35:11,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:35:11,880.880 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 08:35:12,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:35:12,849.849 INFO    ] Checking for system updates...
[2026-06-05 08:35:12,888.888 INFO    ] 200
[2026-06-05 08:35:12,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:12,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:35:12,953.953 INFO    ] No update needed
[2026-06-05 08:35:12,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 08:35:12,993.993 INFO    ] 200
[2026-06-05 08:35:12,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:13,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:35:13,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:35:13,092.092 INFO    ] No camera update needed
[2026-06-05 08:35:13,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:35:13,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:35:13,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:35:13,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:35:15,151.151 INFO    ] ================================================
[2026-06-05 08:35:15,167.167 INFO    ] Launching Daemon at Fri Jun  5 08:35:15 IST 2026
[2026-06-05 08:35:15,178.178 INFO    ] ================================================
[2026-06-05 08:35:15,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:35:15
[2026-06-05 08:35:16,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:35:16,615.615 INFO    ] Initializing speech engine...
[2026-06-05 08:35:16,624.624 INFO    ] 2026-06-05 08:35:16
[2026-06-05 08:35:16,881.881 INFO    ] 2026-06-05 08:35:16
[2026-06-05 08:35:16,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:35:17,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:35:17,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:35:17,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:35:17,344.344 INFO    ] time= 05/06/2026 08:35:17
[2026-06-05 08:35:17,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:35:17,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:35:17,561.561 INFO    ] No existing commands found in stream
[2026-06-05 08:35:22,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:35:22,594.594 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 08:35:25,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:35:26,000.000 INFO    ] Checking for system updates...
[2026-06-05 08:35:26,037.037 INFO    ] 200
[2026-06-05 08:35:26,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:26,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:35:26,097.097 INFO    ] No update needed
[2026-06-05 08:35:26,103.103 INFO    ] Checking for camera pi updates...
[2026-06-05 08:35:26,139.139 INFO    ] 200
[2026-06-05 08:35:26,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:26,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:35:26,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:35:26,235.235 INFO    ] No camera update needed
[2026-06-05 08:35:26,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:35:26,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:35:26,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:35:26,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:35:28,292.292 INFO    ] ================================================
[2026-06-05 08:35:28,307.307 INFO    ] Launching Daemon at Fri Jun  5 08:35:28 IST 2026
[2026-06-05 08:35:28,318.318 INFO    ] ================================================
[2026-06-05 08:35:28,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:35:28
[2026-06-05 08:35:29,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:35:29,760.760 INFO    ] Initializing speech engine...
[2026-06-05 08:35:29,774.774 INFO    ] 2026-06-05 08:35:29
[2026-06-05 08:35:30,042.042 INFO    ] 2026-06-05 08:35:30
[2026-06-05 08:35:30,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:35:30,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:35:30,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:35:30,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:35:30,525.525 INFO    ] time= 05/06/2026 08:35:30
[2026-06-05 08:35:30,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:35:30,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:35:30,676.676 INFO    ] No existing commands found in stream
[2026-06-05 08:35:35,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:35:35,690.690 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 08:35:39,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:35:39,285.285 INFO    ] Checking for system updates...
[2026-06-05 08:35:39,322.322 INFO    ] 200
[2026-06-05 08:35:39,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:39,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:35:39,387.387 INFO    ] No update needed
[2026-06-05 08:35:39,389.389 INFO    ] Checking for camera pi updates...
[2026-06-05 08:35:39,427.427 INFO    ] 200
[2026-06-05 08:35:39,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:39,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:35:39,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:35:39,545.545 INFO    ] No camera update needed
[2026-06-05 08:35:39,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:35:39,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:35:39,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:35:39,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:35:41,603.603 INFO    ] ================================================
[2026-06-05 08:35:41,618.618 INFO    ] Launching Daemon at Fri Jun  5 08:35:41 IST 2026
[2026-06-05 08:35:41,629.629 INFO    ] ================================================
[2026-06-05 08:35:42,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:35:42
[2026-06-05 08:35:42,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:35:43,034.034 INFO    ] Initializing speech engine...
[2026-06-05 08:35:43,040.040 INFO    ] 2026-06-05 08:35:43
[2026-06-05 08:35:43,335.335 INFO    ] 2026-06-05 08:35:43
[2026-06-05 08:35:43,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:35:43,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:35:43,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:35:43,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:35:43,753.753 INFO    ] time= 05/06/2026 08:35:43
[2026-06-05 08:35:43,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:35:43,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:35:43,964.964 INFO    ] No existing commands found in stream
[2026-06-05 08:35:48,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:35:48,991.991 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 08:35:51,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:35:51,974.974 INFO    ] Checking for system updates...
[2026-06-05 08:35:52,014.014 INFO    ] 200
[2026-06-05 08:35:52,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:52,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:35:52,077.077 INFO    ] No update needed
[2026-06-05 08:35:52,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 08:35:52,113.113 INFO    ] 200
[2026-06-05 08:35:52,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:35:52,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:35:52,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:35:52,209.209 INFO    ] No camera update needed
[2026-06-05 08:35:52,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:35:52,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:35:52,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:35:52,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:35:54,264.264 INFO    ] ================================================
[2026-06-05 08:35:54,279.279 INFO    ] Launching Daemon at Fri Jun  5 08:35:54 IST 2026
[2026-06-05 08:35:54,290.290 INFO    ] ================================================
[2026-06-05 08:35:54,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:35:54
[2026-06-05 08:35:55,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:35:55,748.748 INFO    ] Initializing speech engine...
[2026-06-05 08:35:55,755.755 INFO    ] 2026-06-05 08:35:55
[2026-06-05 08:35:56,019.019 INFO    ] 2026-06-05 08:35:56
[2026-06-05 08:35:56,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:35:56,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:35:56,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:35:56,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:35:56,389.389 INFO    ] time= 05/06/2026 08:35:56
[2026-06-05 08:35:56,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:35:56,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:35:56,591.591 INFO    ] No existing commands found in stream
[2026-06-05 08:36:01,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:36:01,606.606 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 08:36:06,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:36:06,021.021 INFO    ] Checking for system updates...
[2026-06-05 08:36:06,062.062 INFO    ] 200
[2026-06-05 08:36:06,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:06,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:36:06,127.127 INFO    ] No update needed
[2026-06-05 08:36:06,130.130 INFO    ] Checking for camera pi updates...
[2026-06-05 08:36:06,165.165 INFO    ] 200
[2026-06-05 08:36:06,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:06,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:36:06,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:36:06,252.252 INFO    ] No camera update needed
[2026-06-05 08:36:06,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:36:06,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:36:06,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:36:06,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:36:08,310.310 INFO    ] ================================================
[2026-06-05 08:36:08,325.325 INFO    ] Launching Daemon at Fri Jun  5 08:36:08 IST 2026
[2026-06-05 08:36:08,336.336 INFO    ] ================================================
[2026-06-05 08:36:08,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:36:08
[2026-06-05 08:36:09,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:36:09,836.836 INFO    ] Initializing speech engine...
[2026-06-05 08:36:09,843.843 INFO    ] 2026-06-05 08:36:09
[2026-06-05 08:36:10,104.104 INFO    ] 2026-06-05 08:36:10
[2026-06-05 08:36:10,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:36:10,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:36:10,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:36:10,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:36:10,600.600 INFO    ] time= 05/06/2026 08:36:10
[2026-06-05 08:36:10,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:36:10,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:36:10,800.800 INFO    ] No existing commands found in stream
[2026-06-05 08:36:15,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:36:15,823.823 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 08:36:16,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:36:16,680.680 INFO    ] Checking for system updates...
[2026-06-05 08:36:16,719.719 INFO    ] 200
[2026-06-05 08:36:16,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:16,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:36:16,782.782 INFO    ] No update needed
[2026-06-05 08:36:16,785.785 INFO    ] Checking for camera pi updates...
[2026-06-05 08:36:16,821.821 INFO    ] 200
[2026-06-05 08:36:16,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:16,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:36:17,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:36:17,020.020 INFO    ] No camera update needed
[2026-06-05 08:36:17,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:36:17,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:36:17,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:36:17,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:36:19,076.076 INFO    ] ================================================
[2026-06-05 08:36:19,091.091 INFO    ] Launching Daemon at Fri Jun  5 08:36:19 IST 2026
[2026-06-05 08:36:19,102.102 INFO    ] ================================================
[2026-06-05 08:36:19,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:36:19
[2026-06-05 08:36:20,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:36:20,536.536 INFO    ] Initializing speech engine...
[2026-06-05 08:36:20,550.550 INFO    ] 2026-06-05 08:36:20
[2026-06-05 08:36:20,830.830 INFO    ] 2026-06-05 08:36:20
[2026-06-05 08:36:20,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:36:21,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:36:21,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:36:21,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:36:21,238.238 INFO    ] time= 05/06/2026 08:36:21
[2026-06-05 08:36:21,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:36:21,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:36:21,403.403 INFO    ] No existing commands found in stream
[2026-06-05 08:36:26,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:36:26,436.436 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 08:36:30,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:36:30,441.441 INFO    ] Checking for system updates...
[2026-06-05 08:36:30,480.480 INFO    ] 200
[2026-06-05 08:36:30,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:30,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:36:30,543.543 INFO    ] No update needed
[2026-06-05 08:36:30,545.545 INFO    ] Checking for camera pi updates...
[2026-06-05 08:36:30,580.580 INFO    ] 200
[2026-06-05 08:36:30,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:30,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:36:30,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:36:30,669.669 INFO    ] No camera update needed
[2026-06-05 08:36:30,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:36:30,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:36:30,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:36:30,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:36:32,727.727 INFO    ] ================================================
[2026-06-05 08:36:32,743.743 INFO    ] Launching Daemon at Fri Jun  5 08:36:32 IST 2026
[2026-06-05 08:36:32,755.755 INFO    ] ================================================
[2026-06-05 08:36:33,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:36:33
[2026-06-05 08:36:33,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:36:34,189.189 INFO    ] Initializing speech engine...
[2026-06-05 08:36:34,211.211 INFO    ] 2026-06-05 08:36:34
[2026-06-05 08:36:34,470.470 INFO    ] 2026-06-05 08:36:34
[2026-06-05 08:36:34,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:36:34,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:36:34,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:36:34,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:36:34,957.957 INFO    ] time= 05/06/2026 08:36:34
[2026-06-05 08:36:35,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:36:35,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:36:35,179.179 INFO    ] No existing commands found in stream
[2026-06-05 08:36:40,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:36:40,203.203 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 08:36:43,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:36:43,622.622 INFO    ] Checking for system updates...
[2026-06-05 08:36:43,668.668 INFO    ] 200
[2026-06-05 08:36:43,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:43,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:36:43,737.737 INFO    ] No update needed
[2026-06-05 08:36:43,740.740 INFO    ] Checking for camera pi updates...
[2026-06-05 08:36:43,778.778 INFO    ] 200
[2026-06-05 08:36:43,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:43,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:36:43,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:36:43,875.875 INFO    ] No camera update needed
[2026-06-05 08:36:43,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:36:43,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:36:43,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:36:43,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:36:45,934.934 INFO    ] ================================================
[2026-06-05 08:36:45,950.950 INFO    ] Launching Daemon at Fri Jun  5 08:36:45 IST 2026
[2026-06-05 08:36:45,961.961 INFO    ] ================================================
[2026-06-05 08:36:46,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:36:46
[2026-06-05 08:36:47,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:36:47,584.584 INFO    ] Initializing speech engine...
[2026-06-05 08:36:47,595.595 INFO    ] 2026-06-05 08:36:47
[2026-06-05 08:36:47,881.881 INFO    ] 2026-06-05 08:36:47
[2026-06-05 08:36:47,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:36:48,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:36:48,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:36:48,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:36:48,336.336 INFO    ] time= 05/06/2026 08:36:48
[2026-06-05 08:36:48,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:36:48,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:36:48,661.661 INFO    ] No existing commands found in stream
[2026-06-05 08:36:53,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:36:53,683.683 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 08:36:56,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:36:56,277.277 INFO    ] Checking for system updates...
[2026-06-05 08:36:56,314.314 INFO    ] 200
[2026-06-05 08:36:56,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:56,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:36:56,382.382 INFO    ] No update needed
[2026-06-05 08:36:56,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 08:36:56,424.424 INFO    ] 200
[2026-06-05 08:36:56,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:36:56,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:36:56,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:36:56,534.534 INFO    ] No camera update needed
[2026-06-05 08:36:56,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:36:56,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:36:56,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:36:56,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:36:58,594.594 INFO    ] ================================================
[2026-06-05 08:36:58,611.611 INFO    ] Launching Daemon at Fri Jun  5 08:36:58 IST 2026
[2026-06-05 08:36:58,622.622 INFO    ] ================================================
[2026-06-05 08:36:59,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:36:59
[2026-06-05 08:36:59,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:37:00,026.026 INFO    ] Initializing speech engine...
[2026-06-05 08:37:00,046.046 INFO    ] 2026-06-05 08:37:00
[2026-06-05 08:37:00,301.301 INFO    ] 2026-06-05 08:37:00
[2026-06-05 08:37:00,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:37:00,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:37:00,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:37:00,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:37:00,671.671 INFO    ] time= 05/06/2026 08:37:00
[2026-06-05 08:37:00,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:37:00,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:37:00,858.858 INFO    ] No existing commands found in stream
[2026-06-05 08:37:05,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:37:05,881.881 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 08:37:07,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:37:07,316.316 INFO    ] Checking for system updates...
[2026-06-05 08:37:07,360.360 INFO    ] 200
[2026-06-05 08:37:07,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:07,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:37:07,423.423 INFO    ] No update needed
[2026-06-05 08:37:07,425.425 INFO    ] Checking for camera pi updates...
[2026-06-05 08:37:07,459.459 INFO    ] 200
[2026-06-05 08:37:07,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:07,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:37:07,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:37:07,558.558 INFO    ] No camera update needed
[2026-06-05 08:37:07,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:37:07,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:37:07,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:37:07,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:37:09,614.614 INFO    ] ================================================
[2026-06-05 08:37:09,630.630 INFO    ] Launching Daemon at Fri Jun  5 08:37:09 IST 2026
[2026-06-05 08:37:09,641.641 INFO    ] ================================================
[2026-06-05 08:37:10,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:37:10
[2026-06-05 08:37:10,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:37:11,045.045 INFO    ] Initializing speech engine...
[2026-06-05 08:37:11,050.050 INFO    ] 2026-06-05 08:37:11
[2026-06-05 08:37:11,345.345 INFO    ] 2026-06-05 08:37:11
[2026-06-05 08:37:11,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:37:11,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:37:11,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:37:11,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:37:11,731.731 INFO    ] time= 05/06/2026 08:37:11
[2026-06-05 08:37:11,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:37:11,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:37:11,855.855 INFO    ] No existing commands found in stream
[2026-06-05 08:37:16,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:37:16,870.870 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 08:37:18,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:37:18,617.617 INFO    ] Checking for system updates...
[2026-06-05 08:37:18,659.659 INFO    ] 200
[2026-06-05 08:37:18,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:18,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:37:18,726.726 INFO    ] No update needed
[2026-06-05 08:37:18,728.728 INFO    ] Checking for camera pi updates...
[2026-06-05 08:37:18,763.763 INFO    ] 200
[2026-06-05 08:37:18,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:18,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:37:18,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:37:18,864.864 INFO    ] No camera update needed
[2026-06-05 08:37:18,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:37:18,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:37:18,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:37:18,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:37:20,920.920 INFO    ] ================================================
[2026-06-05 08:37:20,936.936 INFO    ] Launching Daemon at Fri Jun  5 08:37:20 IST 2026
[2026-06-05 08:37:20,947.947 INFO    ] ================================================
[2026-06-05 08:37:21,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:37:21
[2026-06-05 08:37:22,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:37:22,401.401 INFO    ] Initializing speech engine...
[2026-06-05 08:37:22,408.408 INFO    ] 2026-06-05 08:37:22
[2026-06-05 08:37:22,668.668 INFO    ] 2026-06-05 08:37:22
[2026-06-05 08:37:22,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:37:22,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:37:22,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:37:23,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:37:23,132.132 INFO    ] time= 05/06/2026 08:37:23
[2026-06-05 08:37:23,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:37:23,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:37:23,335.335 INFO    ] No existing commands found in stream
[2026-06-05 08:37:28,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:37:28,360.360 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-05 08:37:30,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:37:30,029.029 INFO    ] Checking for system updates...
[2026-06-05 08:37:30,072.072 INFO    ] 200
[2026-06-05 08:37:30,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:30,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:37:30,148.148 INFO    ] No update needed
[2026-06-05 08:37:30,151.151 INFO    ] Checking for camera pi updates...
[2026-06-05 08:37:30,191.191 INFO    ] 200
[2026-06-05 08:37:30,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:30,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:37:30,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:37:30,290.290 INFO    ] No camera update needed
[2026-06-05 08:37:30,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:37:30,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:37:30,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:37:30,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:37:32,352.352 INFO    ] ================================================
[2026-06-05 08:37:32,369.369 INFO    ] Launching Daemon at Fri Jun  5 08:37:32 IST 2026
[2026-06-05 08:37:32,381.381 INFO    ] ================================================
[2026-06-05 08:37:33,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:37:33
[2026-06-05 08:37:33,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:37:33,959.959 INFO    ] Initializing speech engine...
[2026-06-05 08:37:33,969.969 INFO    ] 2026-06-05 08:37:33
[2026-06-05 08:37:34,231.231 INFO    ] 2026-06-05 08:37:34
[2026-06-05 08:37:34,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:37:34,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:37:34,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:37:34,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:37:34,710.710 INFO    ] time= 05/06/2026 08:37:34
[2026-06-05 08:37:34,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:37:34,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:37:34,920.920 INFO    ] No existing commands found in stream
[2026-06-05 08:37:39,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:37:39,944.944 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 08:37:44,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:37:44,046.046 INFO    ] Checking for system updates...
[2026-06-05 08:37:44,087.087 INFO    ] 200
[2026-06-05 08:37:44,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:44,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:37:44,146.146 INFO    ] No update needed
[2026-06-05 08:37:44,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 08:37:44,183.183 INFO    ] 200
[2026-06-05 08:37:44,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:44,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:37:44,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:37:44,271.271 INFO    ] No camera update needed
[2026-06-05 08:37:44,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:37:44,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:37:44,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:37:44,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:37:46,330.330 INFO    ] ================================================
[2026-06-05 08:37:46,347.347 INFO    ] Launching Daemon at Fri Jun  5 08:37:46 IST 2026
[2026-06-05 08:37:46,359.359 INFO    ] ================================================
[2026-06-05 08:37:47,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:37:47
[2026-06-05 08:37:47,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:37:48,096.096 INFO    ] Initializing speech engine...
[2026-06-05 08:37:48,107.107 INFO    ] 2026-06-05 08:37:48
[2026-06-05 08:37:48,386.386 INFO    ] 2026-06-05 08:37:48
[2026-06-05 08:37:48,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:37:48,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:37:48,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:37:48,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:37:48,877.877 INFO    ] time= 05/06/2026 08:37:48
[2026-06-05 08:37:48,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:37:48,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:37:48,975.975 INFO    ] No existing commands found in stream
[2026-06-05 08:37:53,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:37:54,000.000 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 08:37:56,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:37:56,911.911 INFO    ] Checking for system updates...
[2026-06-05 08:37:56,950.950 INFO    ] 200
[2026-06-05 08:37:56,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:57,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:37:57,011.011 INFO    ] No update needed
[2026-06-05 08:37:57,013.013 INFO    ] Checking for camera pi updates...
[2026-06-05 08:37:57,048.048 INFO    ] 200
[2026-06-05 08:37:57,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:37:57,091.091 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:37:57,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:37:57,156.156 INFO    ] No camera update needed
[2026-06-05 08:37:57,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:37:57,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:37:57,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:37:57,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:37:59,211.211 INFO    ] ================================================
[2026-06-05 08:37:59,227.227 INFO    ] Launching Daemon at Fri Jun  5 08:37:59 IST 2026
[2026-06-05 08:37:59,238.238 INFO    ] ================================================
[2026-06-05 08:37:59,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:37:59
[2026-06-05 08:38:00,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:38:00,700.700 INFO    ] Initializing speech engine...
[2026-06-05 08:38:00,706.706 INFO    ] 2026-06-05 08:38:00
[2026-06-05 08:38:00,966.966 INFO    ] 2026-06-05 08:38:00
[2026-06-05 08:38:01,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:38:01,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:38:01,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:38:01,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:38:01,461.461 INFO    ] time= 05/06/2026 08:38:01
[2026-06-05 08:38:01,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:38:01,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:38:01,664.664 INFO    ] No existing commands found in stream
[2026-06-05 08:38:06,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:38:06,682.682 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 08:38:08,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:38:08,780.780 INFO    ] Checking for system updates...
[2026-06-05 08:38:08,820.820 INFO    ] 200
[2026-06-05 08:38:08,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:38:08,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:38:08,878.878 INFO    ] No update needed
[2026-06-05 08:38:08,881.881 INFO    ] Checking for camera pi updates...
[2026-06-05 08:38:08,919.919 INFO    ] 200
[2026-06-05 08:38:08,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:38:08,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:38:09,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:38:09,024.024 INFO    ] No camera update needed
[2026-06-05 08:38:09,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:38:09,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:38:09,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:38:09,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:38:11,079.079 INFO    ] ================================================
[2026-06-05 08:38:11,095.095 INFO    ] Launching Daemon at Fri Jun  5 08:38:11 IST 2026
[2026-06-05 08:38:11,106.106 INFO    ] ================================================
[2026-06-05 08:38:11,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:38:11
[2026-06-05 08:38:12,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:38:12,761.761 INFO    ] Initializing speech engine...
[2026-06-05 08:38:12,772.772 INFO    ] 2026-06-05 08:38:12
[2026-06-05 08:38:13,039.039 INFO    ] 2026-06-05 08:38:13
[2026-06-05 08:38:13,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:38:13,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:38:13,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:38:13,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:38:13,421.421 INFO    ] time= 05/06/2026 08:38:13
[2026-06-05 08:38:13,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:38:13,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:38:13,519.519 INFO    ] No existing commands found in stream
[2026-06-05 08:38:18,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:38:18,557.557 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 08:38:19,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:38:19,779.779 INFO    ] Checking for system updates...
[2026-06-05 08:38:19,907.907 INFO    ] 200
[2026-06-05 08:38:19,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:38:19,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:38:19,966.966 INFO    ] No update needed
[2026-06-05 08:38:19,968.968 INFO    ] Checking for camera pi updates...
[2026-06-05 08:38:20,002.002 INFO    ] 200
[2026-06-05 08:38:20,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:38:20,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:38:20,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:38:20,191.191 INFO    ] No camera update needed
[2026-06-05 08:38:20,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:38:20,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:38:20,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:38:20,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:38:22,248.248 INFO    ] ================================================
[2026-06-05 08:38:22,264.264 INFO    ] Launching Daemon at Fri Jun  5 08:38:22 IST 2026
[2026-06-05 08:38:22,275.275 INFO    ] ================================================
[2026-06-05 08:38:24,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:38:22
[2026-06-05 08:38:25,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:38:26,473.473 INFO    ] Initializing speech engine...
[2026-06-05 08:38:26,532.532 INFO    ] 2026-06-05 08:38:26
[2026-06-05 08:38:26,993.993 INFO    ] 2026-06-05 08:38:26
[2026-06-05 08:38:27,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:38:27,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:38:27,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:38:27,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:38:27,394.394 INFO    ] time= 05/06/2026 08:38:27
[2026-06-05 08:38:27,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:38:27,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:38:27,474.474 INFO    ] No existing commands found in stream
[2026-06-05 08:38:32,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:38:32,489.489 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 08:38:36,767.767 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:38:36,770.770 INFO    ] Checking for system updates...
[2026-06-05 08:38:36,805.805 INFO    ] 200
[2026-06-05 08:38:36,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:38:36,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:38:36,871.871 INFO    ] No update needed
[2026-06-05 08:38:36,873.873 INFO    ] Checking for camera pi updates...
[2026-06-05 08:38:36,907.907 INFO    ] 200
[2026-06-05 08:38:36,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:38:36,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:38:37,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:38:37,002.002 INFO    ] No camera update needed
[2026-06-05 08:38:37,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:38:37,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:38:37,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:38:37,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:38:39,060.060 INFO    ] ================================================
[2026-06-05 08:38:39,076.076 INFO    ] Launching Daemon at Fri Jun  5 08:38:39 IST 2026
[2026-06-05 08:38:39,087.087 INFO    ] ================================================
[2026-06-05 08:38:39,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:38:39
[2026-06-05 08:38:40,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:38:40,591.591 INFO    ] Initializing speech engine...
[2026-06-05 08:38:40,600.600 INFO    ] 2026-06-05 08:38:40
[2026-06-05 08:38:40,861.861 INFO    ] 2026-06-05 08:38:40
[2026-06-05 08:38:40,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:38:41,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:38:41,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:38:41,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:38:41,235.235 INFO    ] time= 05/06/2026 08:38:41
[2026-06-05 08:38:41,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:38:41,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:38:41,438.438 INFO    ] No existing commands found in stream
[2026-06-05 08:38:46,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:38:46,455.455 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 08:38:49,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:38:49,537.537 INFO    ] Checking for system updates...
[2026-06-05 08:38:49,580.580 INFO    ] 200
[2026-06-05 08:38:49,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:38:49,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:38:49,664.664 INFO    ] No update needed
[2026-06-05 08:38:49,667.667 INFO    ] Checking for camera pi updates...
[2026-06-05 08:38:49,701.701 INFO    ] 200
[2026-06-05 08:38:49,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:38:49,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:38:49,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:38:49,807.807 INFO    ] No camera update needed
[2026-06-05 08:38:49,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:38:49,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:38:49,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:38:49,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:38:51,864.864 INFO    ] ================================================
[2026-06-05 08:38:51,880.880 INFO    ] Launching Daemon at Fri Jun  5 08:38:51 IST 2026
[2026-06-05 08:38:51,891.891 INFO    ] ================================================
[2026-06-05 08:38:52,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:38:52
[2026-06-05 08:38:53,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:38:53,296.296 INFO    ] Initializing speech engine...
[2026-06-05 08:38:53,304.304 INFO    ] 2026-06-05 08:38:53
[2026-06-05 08:38:53,579.579 INFO    ] 2026-06-05 08:38:53
[2026-06-05 08:38:53,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:38:53,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:38:53,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:38:53,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:38:53,956.956 INFO    ] time= 05/06/2026 08:38:53
[2026-06-05 08:38:53,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:38:54,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:38:54,158.158 INFO    ] No existing commands found in stream
[2026-06-05 08:38:59,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:38:59,172.172 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 08:39:02,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:39:02,890.890 INFO    ] Checking for system updates...
[2026-06-05 08:39:02,927.927 INFO    ] 200
[2026-06-05 08:39:02,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:02,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:02,985.985 INFO    ] No update needed
[2026-06-05 08:39:02,988.988 INFO    ] Checking for camera pi updates...
[2026-06-05 08:39:03,021.021 INFO    ] 200
[2026-06-05 08:39:03,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:03,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:39:03,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:03,100.100 INFO    ] No camera update needed
[2026-06-05 08:39:03,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:39:03,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:39:03,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:39:03,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:39:05,157.157 INFO    ] ================================================
[2026-06-05 08:39:05,172.172 INFO    ] Launching Daemon at Fri Jun  5 08:39:05 IST 2026
[2026-06-05 08:39:05,183.183 INFO    ] ================================================
[2026-06-05 08:39:05,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:39:05
[2026-06-05 08:39:06,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:39:06,649.649 INFO    ] Initializing speech engine...
[2026-06-05 08:39:06,658.658 INFO    ] 2026-06-05 08:39:06
[2026-06-05 08:39:06,924.924 INFO    ] 2026-06-05 08:39:06
[2026-06-05 08:39:06,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:39:07,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:39:07,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:39:07,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:39:07,431.431 INFO    ] time= 05/06/2026 08:39:07
[2026-06-05 08:39:07,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:39:07,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:39:07,593.593 INFO    ] No existing commands found in stream
[2026-06-05 08:39:12,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:39:12,625.625 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 08:39:14,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:39:14,484.484 INFO    ] Checking for system updates...
[2026-06-05 08:39:14,526.526 INFO    ] 200
[2026-06-05 08:39:14,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:14,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:14,590.590 INFO    ] No update needed
[2026-06-05 08:39:14,592.592 INFO    ] Checking for camera pi updates...
[2026-06-05 08:39:14,626.626 INFO    ] 200
[2026-06-05 08:39:14,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:14,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:39:14,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:14,725.725 INFO    ] No camera update needed
[2026-06-05 08:39:14,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:39:14,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:39:14,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:39:14,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:39:16,779.779 INFO    ] ================================================
[2026-06-05 08:39:16,795.795 INFO    ] Launching Daemon at Fri Jun  5 08:39:16 IST 2026
[2026-06-05 08:39:16,807.807 INFO    ] ================================================
[2026-06-05 08:39:17,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:39:17
[2026-06-05 08:39:18,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:39:18,328.328 INFO    ] Initializing speech engine...
[2026-06-05 08:39:18,336.336 INFO    ] 2026-06-05 08:39:18
[2026-06-05 08:39:18,642.642 INFO    ] 2026-06-05 08:39:18
[2026-06-05 08:39:18,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:39:18,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:39:18,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:39:19,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:39:19,149.149 INFO    ] time= 05/06/2026 08:39:19
[2026-06-05 08:39:19,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:39:19,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:39:19,305.305 INFO    ] No existing commands found in stream
[2026-06-05 08:39:24,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:39:24,333.333 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 08:39:28,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:39:28,223.223 INFO    ] Checking for system updates...
[2026-06-05 08:39:28,261.261 INFO    ] 200
[2026-06-05 08:39:28,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:28,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:28,320.320 INFO    ] No update needed
[2026-06-05 08:39:28,322.322 INFO    ] Checking for camera pi updates...
[2026-06-05 08:39:28,356.356 INFO    ] 200
[2026-06-05 08:39:28,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:28,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:39:28,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:28,455.455 INFO    ] No camera update needed
[2026-06-05 08:39:28,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:39:28,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:39:28,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:39:28,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:39:30,510.510 INFO    ] ================================================
[2026-06-05 08:39:30,526.526 INFO    ] Launching Daemon at Fri Jun  5 08:39:30 IST 2026
[2026-06-05 08:39:30,538.538 INFO    ] ================================================
[2026-06-05 08:39:31,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:39:31
[2026-06-05 08:39:31,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:39:32,012.012 INFO    ] Initializing speech engine...
[2026-06-05 08:39:32,032.032 INFO    ] 2026-06-05 08:39:32
[2026-06-05 08:39:32,294.294 INFO    ] 2026-06-05 08:39:32
[2026-06-05 08:39:32,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:39:32,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:39:32,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:39:32,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:39:32,697.697 INFO    ] time= 05/06/2026 08:39:32
[2026-06-05 08:39:32,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:39:32,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:39:32,887.887 INFO    ] No existing commands found in stream
[2026-06-05 08:39:37,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:39:37,913.913 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 08:39:41,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:39:41,605.605 INFO    ] Checking for system updates...
[2026-06-05 08:39:41,642.642 INFO    ] 200
[2026-06-05 08:39:41,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:41,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:41,700.700 INFO    ] No update needed
[2026-06-05 08:39:41,702.702 INFO    ] Checking for camera pi updates...
[2026-06-05 08:39:41,739.739 INFO    ] 200
[2026-06-05 08:39:41,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:41,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:39:41,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:41,835.835 INFO    ] No camera update needed
[2026-06-05 08:39:41,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:39:41,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:39:41,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:39:41,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:39:43,889.889 INFO    ] ================================================
[2026-06-05 08:39:43,904.904 INFO    ] Launching Daemon at Fri Jun  5 08:39:43 IST 2026
[2026-06-05 08:39:43,915.915 INFO    ] ================================================
[2026-06-05 08:39:44,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:39:44
[2026-06-05 08:39:45,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:39:45,380.380 INFO    ] Initializing speech engine...
[2026-06-05 08:39:45,387.387 INFO    ] 2026-06-05 08:39:45
[2026-06-05 08:39:45,650.650 INFO    ] 2026-06-05 08:39:45
[2026-06-05 08:39:45,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:39:45,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:39:45,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:39:46,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:39:46,133.133 INFO    ] time= 05/06/2026 08:39:46
[2026-06-05 08:39:46,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:39:46,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:39:46,335.335 INFO    ] No existing commands found in stream
[2026-06-05 08:39:51,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:39:51,370.370 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 08:39:54,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:39:54,925.925 INFO    ] Checking for system updates...
[2026-06-05 08:39:54,961.961 INFO    ] 200
[2026-06-05 08:39:54,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:55,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:55,026.026 INFO    ] No update needed
[2026-06-05 08:39:55,029.029 INFO    ] Checking for camera pi updates...
[2026-06-05 08:39:55,066.066 INFO    ] 200
[2026-06-05 08:39:55,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:39:55,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:39:55,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:39:55,164.164 INFO    ] No camera update needed
[2026-06-05 08:39:55,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:39:55,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:39:55,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:39:55,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:39:57,220.220 INFO    ] ================================================
[2026-06-05 08:39:57,236.236 INFO    ] Launching Daemon at Fri Jun  5 08:39:57 IST 2026
[2026-06-05 08:39:57,248.248 INFO    ] ================================================
[2026-06-05 08:39:57,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:39:57
[2026-06-05 08:39:58,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:39:58,881.881 INFO    ] Initializing speech engine...
[2026-06-05 08:39:58,893.893 INFO    ] 2026-06-05 08:39:58
[2026-06-05 08:39:59,175.175 INFO    ] 2026-06-05 08:39:59
[2026-06-05 08:39:59,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:39:59,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:39:59,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:40:00,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:40:00,267.267 INFO    ] time= 05/06/2026 08:40:00
[2026-06-05 08:40:00,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:40:00,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:40:00,390.390 INFO    ] No existing commands found in stream
[2026-06-05 08:40:05,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:40:05,405.405 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 08:40:08,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:40:08,300.300 INFO    ] Checking for system updates...
[2026-06-05 08:40:08,337.337 INFO    ] 200
[2026-06-05 08:40:08,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:40:08,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:40:08,399.399 INFO    ] No update needed
[2026-06-05 08:40:08,402.402 INFO    ] Checking for camera pi updates...
[2026-06-05 08:40:08,442.442 INFO    ] 200
[2026-06-05 08:40:08,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:40:08,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:40:08,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:40:08,548.548 INFO    ] No camera update needed
[2026-06-05 08:40:08,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:40:08,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:40:08,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:40:08,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:40:10,636.636 INFO    ] ================================================
[2026-06-05 08:40:10,651.651 INFO    ] Launching Daemon at Fri Jun  5 08:40:10 IST 2026
[2026-06-05 08:40:10,662.662 INFO    ] ================================================
[2026-06-05 08:40:11,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:40:11
[2026-06-05 08:40:11,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:40:12,097.097 INFO    ] Initializing speech engine...
[2026-06-05 08:40:12,112.112 INFO    ] 2026-06-05 08:40:12
[2026-06-05 08:40:12,374.374 INFO    ] 2026-06-05 08:40:12
[2026-06-05 08:40:12,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:40:12,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:40:12,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:40:12,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:40:12,810.810 INFO    ] time= 05/06/2026 08:40:12
[2026-06-05 08:40:12,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:40:12,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:40:13,102.102 INFO    ] No existing commands found in stream
[2026-06-05 08:40:18,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:40:18,135.135 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 08:40:22,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:40:22,465.465 INFO    ] Checking for system updates...
[2026-06-05 08:40:22,502.502 INFO    ] 200
[2026-06-05 08:40:22,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:40:22,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:40:22,566.566 INFO    ] No update needed
[2026-06-05 08:40:22,569.569 INFO    ] Checking for camera pi updates...
[2026-06-05 08:40:22,604.604 INFO    ] 200
[2026-06-05 08:40:22,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:40:22,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:40:22,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:40:22,805.805 INFO    ] No camera update needed
[2026-06-05 08:40:22,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:40:22,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:40:22,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:40:22,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:40:24,865.865 INFO    ] ================================================
[2026-06-05 08:40:24,880.880 INFO    ] Launching Daemon at Fri Jun  5 08:40:24 IST 2026
[2026-06-05 08:40:24,891.891 INFO    ] ================================================
[2026-06-05 08:40:25,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:40:25
[2026-06-05 08:40:26,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:40:26,306.306 INFO    ] Initializing speech engine...
[2026-06-05 08:40:26,325.325 INFO    ] 2026-06-05 08:40:26
[2026-06-05 08:40:26,579.579 INFO    ] 2026-06-05 08:40:26
[2026-06-05 08:40:26,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:40:26,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:40:26,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:40:26,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:40:26,947.947 INFO    ] time= 05/06/2026 08:40:26
[2026-06-05 08:40:26,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:40:26,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:40:27,117.117 INFO    ] No existing commands found in stream
[2026-06-05 08:40:32,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:40:32,150.150 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 08:40:34,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:40:34,511.511 INFO    ] Checking for system updates...
[2026-06-05 08:40:34,555.555 INFO    ] 200
[2026-06-05 08:40:34,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:40:34,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:40:34,620.620 INFO    ] No update needed
[2026-06-05 08:40:34,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 08:40:34,656.656 INFO    ] 200
[2026-06-05 08:40:34,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:40:34,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:40:34,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:40:34,754.754 INFO    ] No camera update needed
[2026-06-05 08:40:34,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:40:34,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:40:34,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:40:34,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:40:36,813.813 INFO    ] ================================================
[2026-06-05 08:40:36,829.829 INFO    ] Launching Daemon at Fri Jun  5 08:40:36 IST 2026
[2026-06-05 08:40:36,841.841 INFO    ] ================================================
[2026-06-05 08:40:37,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:40:37
[2026-06-05 08:40:38,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:40:38,478.478 INFO    ] Initializing speech engine...
[2026-06-05 08:40:38,492.492 INFO    ] 2026-06-05 08:40:38
[2026-06-05 08:40:38,780.780 INFO    ] 2026-06-05 08:40:38
[2026-06-05 08:40:38,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:40:39,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:40:39,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:40:39,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:40:39,309.309 INFO    ] time= 05/06/2026 08:40:39
[2026-06-05 08:40:39,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:40:39,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:40:39,461.461 INFO    ] No existing commands found in stream
[2026-06-05 08:40:44,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:40:44,481.481 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 08:40:48,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:40:48,498.498 INFO    ] Checking for system updates...
[2026-06-05 08:40:48,540.540 INFO    ] 200
[2026-06-05 08:40:48,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:40:48,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:40:48,600.600 INFO    ] No update needed
[2026-06-05 08:40:48,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 08:40:48,636.636 INFO    ] 200
[2026-06-05 08:40:48,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:40:48,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:40:48,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:40:48,731.731 INFO    ] No camera update needed
[2026-06-05 08:40:48,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:40:48,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:40:48,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:40:48,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:40:50,787.787 INFO    ] ================================================
[2026-06-05 08:40:50,802.802 INFO    ] Launching Daemon at Fri Jun  5 08:40:50 IST 2026
[2026-06-05 08:40:50,813.813 INFO    ] ================================================
[2026-06-05 08:40:51,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:40:51
[2026-06-05 08:40:51,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:40:52,227.227 INFO    ] Initializing speech engine...
[2026-06-05 08:40:52,240.240 INFO    ] 2026-06-05 08:40:52
[2026-06-05 08:40:52,503.503 INFO    ] 2026-06-05 08:40:52
[2026-06-05 08:40:52,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:40:52,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:40:52,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:40:52,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:40:53,003.003 INFO    ] time= 05/06/2026 08:40:52
[2026-06-05 08:40:53,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:40:53,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:40:53,181.181 INFO    ] No existing commands found in stream
[2026-06-05 08:40:58,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:40:58,214.214 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 08:41:02,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:41:02,230.230 INFO    ] Checking for system updates...
[2026-06-05 08:41:02,281.281 INFO    ] 200
[2026-06-05 08:41:02,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:02,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:41:02,345.345 INFO    ] No update needed
[2026-06-05 08:41:02,348.348 INFO    ] Checking for camera pi updates...
[2026-06-05 08:41:02,392.392 INFO    ] 200
[2026-06-05 08:41:02,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:02,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:41:02,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:41:02,677.677 INFO    ] No camera update needed
[2026-06-05 08:41:02,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:41:02,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:41:02,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:41:02,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:41:04,741.741 INFO    ] ================================================
[2026-06-05 08:41:04,756.756 INFO    ] Launching Daemon at Fri Jun  5 08:41:04 IST 2026
[2026-06-05 08:41:04,767.767 INFO    ] ================================================
[2026-06-05 08:41:05,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:41:05
[2026-06-05 08:41:05,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:41:06,271.271 INFO    ] Initializing speech engine...
[2026-06-05 08:41:06,278.278 INFO    ] 2026-06-05 08:41:06
[2026-06-05 08:41:06,534.534 INFO    ] 2026-06-05 08:41:06
[2026-06-05 08:41:06,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:41:06,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:41:06,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:41:06,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:41:06,998.998 INFO    ] time= 05/06/2026 08:41:06
[2026-06-05 08:41:07,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:41:07,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:41:07,217.217 INFO    ] No existing commands found in stream
[2026-06-05 08:41:12,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:41:12,246.246 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 08:41:14,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:41:14,423.423 INFO    ] Checking for system updates...
[2026-06-05 08:41:14,463.463 INFO    ] 200
[2026-06-05 08:41:14,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:14,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:41:14,520.520 INFO    ] No update needed
[2026-06-05 08:41:14,522.522 INFO    ] Checking for camera pi updates...
[2026-06-05 08:41:14,560.560 INFO    ] 200
[2026-06-05 08:41:14,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:14,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:41:14,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:41:14,664.664 INFO    ] No camera update needed
[2026-06-05 08:41:14,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:41:14,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:41:14,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:41:14,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:41:16,719.719 INFO    ] ================================================
[2026-06-05 08:41:16,740.740 INFO    ] Launching Daemon at Fri Jun  5 08:41:16 IST 2026
[2026-06-05 08:41:16,752.752 INFO    ] ================================================
[2026-06-05 08:41:17,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:41:17
[2026-06-05 08:41:17,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:41:18,194.194 INFO    ] Initializing speech engine...
[2026-06-05 08:41:18,211.211 INFO    ] 2026-06-05 08:41:18
[2026-06-05 08:41:18,478.478 INFO    ] 2026-06-05 08:41:18
[2026-06-05 08:41:18,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:41:18,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:41:18,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:41:18,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:41:18,975.975 INFO    ] time= 05/06/2026 08:41:18
[2026-06-05 08:41:19,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:41:19,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:41:19,166.166 INFO    ] No existing commands found in stream
[2026-06-05 08:41:24,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:41:24,200.200 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 08:41:27,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:41:27,788.788 INFO    ] Checking for system updates...
[2026-06-05 08:41:27,836.836 INFO    ] 200
[2026-06-05 08:41:27,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:27,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:41:27,900.900 INFO    ] No update needed
[2026-06-05 08:41:27,903.903 INFO    ] Checking for camera pi updates...
[2026-06-05 08:41:27,938.938 INFO    ] 200
[2026-06-05 08:41:27,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:27,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:41:28,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:41:28,029.029 INFO    ] No camera update needed
[2026-06-05 08:41:28,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:41:28,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:41:28,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:41:28,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:41:30,085.085 INFO    ] ================================================
[2026-06-05 08:41:30,101.101 INFO    ] Launching Daemon at Fri Jun  5 08:41:30 IST 2026
[2026-06-05 08:41:30,112.112 INFO    ] ================================================
[2026-06-05 08:41:30,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:41:30
[2026-06-05 08:41:31,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:41:31,595.595 INFO    ] Initializing speech engine...
[2026-06-05 08:41:31,609.609 INFO    ] 2026-06-05 08:41:31
[2026-06-05 08:41:31,882.882 INFO    ] 2026-06-05 08:41:31
[2026-06-05 08:41:31,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:41:32,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:41:32,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:41:32,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:41:32,340.340 INFO    ] time= 05/06/2026 08:41:32
[2026-06-05 08:41:32,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:41:32,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:41:32,431.431 INFO    ] No existing commands found in stream
[2026-06-05 08:41:37,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:41:37,451.451 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 08:41:40,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:41:40,739.739 INFO    ] Checking for system updates...
[2026-06-05 08:41:40,775.775 INFO    ] 200
[2026-06-05 08:41:40,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:40,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:41:40,839.839 INFO    ] No update needed
[2026-06-05 08:41:40,842.842 INFO    ] Checking for camera pi updates...
[2026-06-05 08:41:40,876.876 INFO    ] 200
[2026-06-05 08:41:40,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:40,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:41:40,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:41:40,968.968 INFO    ] No camera update needed
[2026-06-05 08:41:40,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:41:40,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:41:40,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:41:40,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:41:43,023.023 INFO    ] ================================================
[2026-06-05 08:41:43,038.038 INFO    ] Launching Daemon at Fri Jun  5 08:41:43 IST 2026
[2026-06-05 08:41:43,049.049 INFO    ] ================================================
[2026-06-05 08:41:43,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:41:43
[2026-06-05 08:41:44,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:41:44,532.532 INFO    ] Initializing speech engine...
[2026-06-05 08:41:44,540.540 INFO    ] 2026-06-05 08:41:44
[2026-06-05 08:41:44,790.790 INFO    ] 2026-06-05 08:41:44
[2026-06-05 08:41:44,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:41:44,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:41:45,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:41:45,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:41:45,224.224 INFO    ] time= 05/06/2026 08:41:45
[2026-06-05 08:41:45,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:41:45,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:41:45,596.596 INFO    ] No existing commands found in stream
[2026-06-05 08:41:50,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:41:50,624.624 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 08:41:51,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:41:51,055.055 INFO    ] Checking for system updates...
[2026-06-05 08:41:51,097.097 INFO    ] 200
[2026-06-05 08:41:51,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:51,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:41:51,162.162 INFO    ] No update needed
[2026-06-05 08:41:51,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 08:41:51,204.204 INFO    ] 200
[2026-06-05 08:41:51,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:41:51,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:41:51,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:41:51,309.309 INFO    ] No camera update needed
[2026-06-05 08:41:51,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:41:51,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:41:51,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:41:51,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:41:53,367.367 INFO    ] ================================================
[2026-06-05 08:41:53,383.383 INFO    ] Launching Daemon at Fri Jun  5 08:41:53 IST 2026
[2026-06-05 08:41:53,394.394 INFO    ] ================================================
[2026-06-05 08:41:54,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:41:54
[2026-06-05 08:41:54,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:41:54,985.985 INFO    ] Initializing speech engine...
[2026-06-05 08:41:54,999.999 INFO    ] 2026-06-05 08:41:54
[2026-06-05 08:41:55,258.258 INFO    ] 2026-06-05 08:41:55
[2026-06-05 08:41:55,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:41:55,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:41:55,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:41:55,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:41:55,708.708 INFO    ] time= 05/06/2026 08:41:55
[2026-06-05 08:41:55,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:41:55,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:41:55,863.863 INFO    ] No existing commands found in stream
[2026-06-05 08:42:00,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:42:00,879.879 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 08:42:04,190.190 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:42:04,193.193 INFO    ] Checking for system updates...
[2026-06-05 08:42:04,230.230 INFO    ] 200
[2026-06-05 08:42:04,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:04,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:42:04,290.290 INFO    ] No update needed
[2026-06-05 08:42:04,293.293 INFO    ] Checking for camera pi updates...
[2026-06-05 08:42:04,333.333 INFO    ] 200
[2026-06-05 08:42:04,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:04,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:42:04,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:42:04,417.417 INFO    ] No camera update needed
[2026-06-05 08:42:04,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:42:04,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:42:04,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:42:04,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:42:06,473.473 INFO    ] ================================================
[2026-06-05 08:42:06,489.489 INFO    ] Launching Daemon at Fri Jun  5 08:42:06 IST 2026
[2026-06-05 08:42:06,500.500 INFO    ] ================================================
[2026-06-05 08:42:07,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:42:07
[2026-06-05 08:42:07,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:42:07,973.973 INFO    ] Initializing speech engine...
[2026-06-05 08:42:07,983.983 INFO    ] 2026-06-05 08:42:07
[2026-06-05 08:42:08,233.233 INFO    ] 2026-06-05 08:42:08
[2026-06-05 08:42:08,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:42:08,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:42:08,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:42:08,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:42:08,707.707 INFO    ] time= 05/06/2026 08:42:08
[2026-06-05 08:42:08,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:42:08,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:42:08,933.933 INFO    ] No existing commands found in stream
[2026-06-05 08:42:13,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:42:13,960.960 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 08:42:16,834.834 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:42:16,837.837 INFO    ] Checking for system updates...
[2026-06-05 08:42:16,876.876 INFO    ] 200
[2026-06-05 08:42:16,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:16,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:42:16,935.935 INFO    ] No update needed
[2026-06-05 08:42:16,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 08:42:16,976.976 INFO    ] 200
[2026-06-05 08:42:16,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:17,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:42:17,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:42:17,080.080 INFO    ] No camera update needed
[2026-06-05 08:42:17,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:42:17,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:42:17,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:42:17,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:42:19,137.137 INFO    ] ================================================
[2026-06-05 08:42:19,153.153 INFO    ] Launching Daemon at Fri Jun  5 08:42:19 IST 2026
[2026-06-05 08:42:19,164.164 INFO    ] ================================================
[2026-06-05 08:42:19,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:42:19
[2026-06-05 08:42:20,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:42:20,622.622 INFO    ] Initializing speech engine...
[2026-06-05 08:42:20,633.633 INFO    ] 2026-06-05 08:42:20
[2026-06-05 08:42:20,880.880 INFO    ] 2026-06-05 08:42:20
[2026-06-05 08:42:20,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:42:21,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:42:21,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:42:21,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:42:21,250.250 INFO    ] time= 05/06/2026 08:42:21
[2026-06-05 08:42:21,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:42:21,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:42:21,438.438 INFO    ] No existing commands found in stream
[2026-06-05 08:42:26,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:42:26,459.459 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 08:42:27,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:42:27,636.636 INFO    ] Checking for system updates...
[2026-06-05 08:42:27,673.673 INFO    ] 200
[2026-06-05 08:42:27,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:27,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:42:27,737.737 INFO    ] No update needed
[2026-06-05 08:42:27,740.740 INFO    ] Checking for camera pi updates...
[2026-06-05 08:42:27,774.774 INFO    ] 200
[2026-06-05 08:42:27,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:27,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:42:27,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:42:27,973.973 INFO    ] No camera update needed
[2026-06-05 08:42:27,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:42:27,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:42:27,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:42:27,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:42:30,031.031 INFO    ] ================================================
[2026-06-05 08:42:30,046.046 INFO    ] Launching Daemon at Fri Jun  5 08:42:30 IST 2026
[2026-06-05 08:42:30,057.057 INFO    ] ================================================
[2026-06-05 08:42:30,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:42:30
[2026-06-05 08:42:31,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:42:31,516.516 INFO    ] Initializing speech engine...
[2026-06-05 08:42:31,529.529 INFO    ] 2026-06-05 08:42:31
[2026-06-05 08:42:31,821.821 INFO    ] 2026-06-05 08:42:31
[2026-06-05 08:42:31,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:42:32,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:42:32,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:42:32,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:42:32,341.341 INFO    ] time= 05/06/2026 08:42:32
[2026-06-05 08:42:32,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:42:32,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:42:32,592.592 INFO    ] No existing commands found in stream
[2026-06-05 08:42:37,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:42:37,614.614 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 08:42:40,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:42:40,257.257 INFO    ] Checking for system updates...
[2026-06-05 08:42:40,298.298 INFO    ] 200
[2026-06-05 08:42:40,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:40,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:42:40,358.358 INFO    ] No update needed
[2026-06-05 08:42:40,360.360 INFO    ] Checking for camera pi updates...
[2026-06-05 08:42:40,395.395 INFO    ] 200
[2026-06-05 08:42:40,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:40,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:42:40,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:42:40,481.481 INFO    ] No camera update needed
[2026-06-05 08:42:40,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:42:40,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:42:40,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:42:40,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:42:42,541.541 INFO    ] ================================================
[2026-06-05 08:42:42,557.557 INFO    ] Launching Daemon at Fri Jun  5 08:42:42 IST 2026
[2026-06-05 08:42:42,569.569 INFO    ] ================================================
[2026-06-05 08:42:43,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:42:43
[2026-06-05 08:42:43,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:42:43,977.977 INFO    ] Initializing speech engine...
[2026-06-05 08:42:43,990.990 INFO    ] 2026-06-05 08:42:43
[2026-06-05 08:42:44,256.256 INFO    ] 2026-06-05 08:42:44
[2026-06-05 08:42:44,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:42:44,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:42:44,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:42:44,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:42:44,707.707 INFO    ] time= 05/06/2026 08:42:44
[2026-06-05 08:42:44,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:42:44,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:42:44,891.891 INFO    ] No existing commands found in stream
[2026-06-05 08:42:49,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:42:49,906.906 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 08:42:50,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:42:50,426.426 INFO    ] Checking for system updates...
[2026-06-05 08:42:50,462.462 INFO    ] 200
[2026-06-05 08:42:50,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:50,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:42:50,527.527 INFO    ] No update needed
[2026-06-05 08:42:50,530.530 INFO    ] Checking for camera pi updates...
[2026-06-05 08:42:50,567.567 INFO    ] 200
[2026-06-05 08:42:50,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:42:50,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:42:50,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:42:50,666.666 INFO    ] No camera update needed
[2026-06-05 08:42:50,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:42:50,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:42:50,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:42:50,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:42:52,721.721 INFO    ] ================================================
[2026-06-05 08:42:52,737.737 INFO    ] Launching Daemon at Fri Jun  5 08:42:52 IST 2026
[2026-06-05 08:42:52,747.747 INFO    ] ================================================
[2026-06-05 08:42:53,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:42:53
[2026-06-05 08:42:53,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:42:54,199.199 INFO    ] Initializing speech engine...
[2026-06-05 08:42:54,213.213 INFO    ] 2026-06-05 08:42:54
[2026-06-05 08:42:54,479.479 INFO    ] 2026-06-05 08:42:54
[2026-06-05 08:42:54,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:42:54,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:42:54,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:42:54,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:42:54,862.862 INFO    ] time= 05/06/2026 08:42:54
[2026-06-05 08:42:54,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:42:54,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:42:55,040.040 INFO    ] No existing commands found in stream
[2026-06-05 08:43:00,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:43:00,068.068 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 08:43:01,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:43:01,166.166 INFO    ] Checking for system updates...
[2026-06-05 08:43:01,202.202 INFO    ] 200
[2026-06-05 08:43:01,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:01,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:43:01,266.266 INFO    ] No update needed
[2026-06-05 08:43:01,268.268 INFO    ] Checking for camera pi updates...
[2026-06-05 08:43:01,305.305 INFO    ] 200
[2026-06-05 08:43:01,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:01,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:43:01,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:43:01,388.388 INFO    ] No camera update needed
[2026-06-05 08:43:01,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:43:01,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:43:01,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:43:01,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:43:03,448.448 INFO    ] ================================================
[2026-06-05 08:43:03,478.478 INFO    ] Launching Daemon at Fri Jun  5 08:43:03 IST 2026
[2026-06-05 08:43:03,492.492 INFO    ] ================================================
[2026-06-05 08:43:04,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:43:04
[2026-06-05 08:43:04,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:43:04,991.991 INFO    ] Initializing speech engine...
[2026-06-05 08:43:04,999.999 INFO    ] 2026-06-05 08:43:04
[2026-06-05 08:43:05,264.264 INFO    ] 2026-06-05 08:43:05
[2026-06-05 08:43:05,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:43:05,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:43:05,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:43:05,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:43:05,738.738 INFO    ] time= 05/06/2026 08:43:05
[2026-06-05 08:43:05,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:43:05,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:43:05,949.949 INFO    ] No existing commands found in stream
[2026-06-05 08:43:10,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:43:10,983.983 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 08:43:11,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:43:11,715.715 INFO    ] Checking for system updates...
[2026-06-05 08:43:11,751.751 INFO    ] 200
[2026-06-05 08:43:11,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:11,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:43:11,808.808 INFO    ] No update needed
[2026-06-05 08:43:11,811.811 INFO    ] Checking for camera pi updates...
[2026-06-05 08:43:11,845.845 INFO    ] 200
[2026-06-05 08:43:11,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:11,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:43:11,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:43:11,946.946 INFO    ] No camera update needed
[2026-06-05 08:43:11,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:43:11,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:43:11,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:43:11,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:43:14,001.001 INFO    ] ================================================
[2026-06-05 08:43:14,017.017 INFO    ] Launching Daemon at Fri Jun  5 08:43:14 IST 2026
[2026-06-05 08:43:14,028.028 INFO    ] ================================================
[2026-06-05 08:43:14,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:43:14
[2026-06-05 08:43:15,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:43:15,434.434 INFO    ] Initializing speech engine...
[2026-06-05 08:43:15,448.448 INFO    ] 2026-06-05 08:43:15
[2026-06-05 08:43:15,712.712 INFO    ] 2026-06-05 08:43:15
[2026-06-05 08:43:15,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:43:15,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:43:16,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:43:16,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:43:16,170.170 INFO    ] time= 05/06/2026 08:43:16
[2026-06-05 08:43:16,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:43:16,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:43:16,407.407 INFO    ] No existing commands found in stream
[2026-06-05 08:43:21,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:43:21,434.434 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 08:43:22,112.112 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:43:22,114.114 INFO    ] Checking for system updates...
[2026-06-05 08:43:22,155.155 INFO    ] 200
[2026-06-05 08:43:22,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:22,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:43:22,219.219 INFO    ] No update needed
[2026-06-05 08:43:22,221.221 INFO    ] Checking for camera pi updates...
[2026-06-05 08:43:22,259.259 INFO    ] 200
[2026-06-05 08:43:22,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:22,302.302 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:43:22,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:43:22,352.352 INFO    ] No camera update needed
[2026-06-05 08:43:22,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:43:22,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:43:22,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:43:22,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:43:24,407.407 INFO    ] ================================================
[2026-06-05 08:43:24,423.423 INFO    ] Launching Daemon at Fri Jun  5 08:43:24 IST 2026
[2026-06-05 08:43:24,434.434 INFO    ] ================================================
[2026-06-05 08:43:25,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:43:25
[2026-06-05 08:43:25,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:43:25,926.926 INFO    ] Initializing speech engine...
[2026-06-05 08:43:25,935.935 INFO    ] 2026-06-05 08:43:25
[2026-06-05 08:43:26,203.203 INFO    ] 2026-06-05 08:43:26
[2026-06-05 08:43:26,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:43:26,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:43:26,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:43:26,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:43:26,726.726 INFO    ] time= 05/06/2026 08:43:26
[2026-06-05 08:43:26,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:43:26,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:43:26,913.913 INFO    ] No existing commands found in stream
[2026-06-05 08:43:31,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:43:31,938.938 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 08:43:34,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:43:34,063.063 INFO    ] Checking for system updates...
[2026-06-05 08:43:34,103.103 INFO    ] 200
[2026-06-05 08:43:34,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:34,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:43:34,169.169 INFO    ] No update needed
[2026-06-05 08:43:34,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 08:43:34,209.209 INFO    ] 200
[2026-06-05 08:43:34,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:34,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:43:34,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:43:34,304.304 INFO    ] No camera update needed
[2026-06-05 08:43:34,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:43:34,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:43:34,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:43:34,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:43:36,360.360 INFO    ] ================================================
[2026-06-05 08:43:36,375.375 INFO    ] Launching Daemon at Fri Jun  5 08:43:36 IST 2026
[2026-06-05 08:43:36,386.386 INFO    ] ================================================
[2026-06-05 08:43:36,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:43:36
[2026-06-05 08:43:37,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:43:37,787.787 INFO    ] Initializing speech engine...
[2026-06-05 08:43:37,807.807 INFO    ] 2026-06-05 08:43:37
[2026-06-05 08:43:38,063.063 INFO    ] 2026-06-05 08:43:38
[2026-06-05 08:43:38,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:43:38,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:43:38,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:43:38,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:43:38,532.532 INFO    ] time= 05/06/2026 08:43:38
[2026-06-05 08:43:38,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:43:38,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:43:38,740.740 INFO    ] No existing commands found in stream
[2026-06-05 08:43:43,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:43:43,775.775 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 08:43:45,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:43:45,876.876 INFO    ] Checking for system updates...
[2026-06-05 08:43:45,912.912 INFO    ] 200
[2026-06-05 08:43:45,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:45,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:43:45,969.969 INFO    ] No update needed
[2026-06-05 08:43:45,972.972 INFO    ] Checking for camera pi updates...
[2026-06-05 08:43:46,005.005 INFO    ] 200
[2026-06-05 08:43:46,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:46,053.053 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:43:46,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:43:46,103.103 INFO    ] No camera update needed
[2026-06-05 08:43:46,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:43:46,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:43:46,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:43:46,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:43:48,162.162 INFO    ] ================================================
[2026-06-05 08:43:48,178.178 INFO    ] Launching Daemon at Fri Jun  5 08:43:48 IST 2026
[2026-06-05 08:43:48,189.189 INFO    ] ================================================
[2026-06-05 08:43:48,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:43:48
[2026-06-05 08:43:49,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:43:49,653.653 INFO    ] Initializing speech engine...
[2026-06-05 08:43:49,677.677 INFO    ] 2026-06-05 08:43:49
[2026-06-05 08:43:49,947.947 INFO    ] 2026-06-05 08:43:49
[2026-06-05 08:43:49,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:43:50,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:43:50,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:43:50,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:43:50,345.345 INFO    ] time= 05/06/2026 08:43:50
[2026-06-05 08:43:50,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:43:50,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:43:50,513.513 INFO    ] No existing commands found in stream
[2026-06-05 08:43:55,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:43:55,541.541 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 08:43:57,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:43:57,560.560 INFO    ] Checking for system updates...
[2026-06-05 08:43:57,600.600 INFO    ] 200
[2026-06-05 08:43:57,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:57,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:43:57,663.663 INFO    ] No update needed
[2026-06-05 08:43:57,666.666 INFO    ] Checking for camera pi updates...
[2026-06-05 08:43:57,703.703 INFO    ] 200
[2026-06-05 08:43:57,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:43:57,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:43:57,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:43:57,814.814 INFO    ] No camera update needed
[2026-06-05 08:43:57,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:43:57,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:43:57,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:43:57,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:43:59,869.869 INFO    ] ================================================
[2026-06-05 08:43:59,884.884 INFO    ] Launching Daemon at Fri Jun  5 08:43:59 IST 2026
[2026-06-05 08:43:59,896.896 INFO    ] ================================================
[2026-06-05 08:44:00,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:44:00
[2026-06-05 08:44:01,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:44:01,360.360 INFO    ] Initializing speech engine...
[2026-06-05 08:44:01,367.367 INFO    ] 2026-06-05 08:44:01
[2026-06-05 08:44:01,630.630 INFO    ] 2026-06-05 08:44:01
[2026-06-05 08:44:01,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:44:01,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:44:01,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:44:02,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:44:02,022.022 INFO    ] time= 05/06/2026 08:44:02
[2026-06-05 08:44:02,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:44:02,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:44:02,142.142 INFO    ] No existing commands found in stream
[2026-06-05 08:44:07,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:44:07,156.156 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 08:44:10,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:44:10,092.092 INFO    ] Checking for system updates...
[2026-06-05 08:44:10,132.132 INFO    ] 200
[2026-06-05 08:44:10,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:10,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:44:10,197.197 INFO    ] No update needed
[2026-06-05 08:44:10,199.199 INFO    ] Checking for camera pi updates...
[2026-06-05 08:44:10,234.234 INFO    ] 200
[2026-06-05 08:44:10,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:10,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:44:10,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:44:10,331.331 INFO    ] No camera update needed
[2026-06-05 08:44:10,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:44:10,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:44:10,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:44:10,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:44:12,387.387 INFO    ] ================================================
[2026-06-05 08:44:12,403.403 INFO    ] Launching Daemon at Fri Jun  5 08:44:12 IST 2026
[2026-06-05 08:44:12,415.415 INFO    ] ================================================
[2026-06-05 08:44:12,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:44:12
[2026-06-05 08:44:13,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:44:13,931.931 INFO    ] Initializing speech engine...
[2026-06-05 08:44:13,942.942 INFO    ] 2026-06-05 08:44:13
[2026-06-05 08:44:14,203.203 INFO    ] 2026-06-05 08:44:14
[2026-06-05 08:44:14,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:44:14,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:44:14,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:44:14,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:44:14,705.705 INFO    ] time= 05/06/2026 08:44:14
[2026-06-05 08:44:14,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:44:14,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:44:14,901.901 INFO    ] No existing commands found in stream
[2026-06-05 08:44:19,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:44:19,924.924 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 08:44:20,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:44:20,973.973 INFO    ] Checking for system updates...
[2026-06-05 08:44:21,013.013 INFO    ] 200
[2026-06-05 08:44:21,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:21,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:44:21,082.082 INFO    ] No update needed
[2026-06-05 08:44:21,084.084 INFO    ] Checking for camera pi updates...
[2026-06-05 08:44:21,122.122 INFO    ] 200
[2026-06-05 08:44:21,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:21,170.170 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:44:21,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:44:21,227.227 INFO    ] No camera update needed
[2026-06-05 08:44:21,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:44:21,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:44:21,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:44:21,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:44:23,282.282 INFO    ] ================================================
[2026-06-05 08:44:23,298.298 INFO    ] Launching Daemon at Fri Jun  5 08:44:23 IST 2026
[2026-06-05 08:44:23,309.309 INFO    ] ================================================
[2026-06-05 08:44:23,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:44:23
[2026-06-05 08:44:24,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:44:24,761.761 INFO    ] Initializing speech engine...
[2026-06-05 08:44:24,781.781 INFO    ] 2026-06-05 08:44:24
[2026-06-05 08:44:25,050.050 INFO    ] 2026-06-05 08:44:25
[2026-06-05 08:44:25,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:44:25,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:44:25,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:44:25,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:44:25,472.472 INFO    ] time= 05/06/2026 08:44:25
[2026-06-05 08:44:25,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:44:25,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:44:25,633.633 INFO    ] No existing commands found in stream
[2026-06-05 08:44:30,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:44:30,661.661 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 08:44:31,598.598 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:44:31,601.601 INFO    ] Checking for system updates...
[2026-06-05 08:44:31,641.641 INFO    ] 200
[2026-06-05 08:44:31,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:31,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:44:31,706.706 INFO    ] No update needed
[2026-06-05 08:44:31,708.708 INFO    ] Checking for camera pi updates...
[2026-06-05 08:44:31,745.745 INFO    ] 200
[2026-06-05 08:44:31,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:31,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:44:31,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:44:31,925.925 INFO    ] No camera update needed
[2026-06-05 08:44:31,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:44:31,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:44:31,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:44:31,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:44:33,981.981 INFO    ] ================================================
[2026-06-05 08:44:34,997.997 INFO    ] Launching Daemon at Fri Jun  5 08:44:33 IST 2026
[2026-06-05 08:44:34,007.007 INFO    ] ================================================
[2026-06-05 08:44:34,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:44:34
[2026-06-05 08:44:35,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:44:35,500.500 INFO    ] Initializing speech engine...
[2026-06-05 08:44:35,511.511 INFO    ] 2026-06-05 08:44:35
[2026-06-05 08:44:35,773.773 INFO    ] 2026-06-05 08:44:35
[2026-06-05 08:44:35,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:44:36,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:44:36,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:44:36,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:44:36,254.254 INFO    ] time= 05/06/2026 08:44:36
[2026-06-05 08:44:36,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:44:36,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:44:36,481.481 INFO    ] No existing commands found in stream
[2026-06-05 08:44:41,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:44:41,510.510 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 08:44:42,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:44:42,845.845 INFO    ] Checking for system updates...
[2026-06-05 08:44:42,885.885 INFO    ] 200
[2026-06-05 08:44:42,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:42,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:44:42,948.948 INFO    ] No update needed
[2026-06-05 08:44:42,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 08:44:42,987.987 INFO    ] 200
[2026-06-05 08:44:42,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:43,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:44:43,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:44:43,084.084 INFO    ] No camera update needed
[2026-06-05 08:44:43,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:44:43,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:44:43,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:44:43,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:44:45,142.142 INFO    ] ================================================
[2026-06-05 08:44:45,158.158 INFO    ] Launching Daemon at Fri Jun  5 08:44:45 IST 2026
[2026-06-05 08:44:45,168.168 INFO    ] ================================================
[2026-06-05 08:44:45,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:44:45
[2026-06-05 08:44:46,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:44:46,616.616 INFO    ] Initializing speech engine...
[2026-06-05 08:44:46,622.622 INFO    ] 2026-06-05 08:44:46
[2026-06-05 08:44:46,917.917 INFO    ] 2026-06-05 08:44:46
[2026-06-05 08:44:46,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:44:47,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:44:47,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:44:47,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:44:47,334.334 INFO    ] time= 05/06/2026 08:44:47
[2026-06-05 08:44:47,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:44:47,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:44:47,421.421 INFO    ] No existing commands found in stream
[2026-06-05 08:44:52,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:44:52,459.459 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 08:44:53,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:44:53,725.725 INFO    ] Checking for system updates...
[2026-06-05 08:44:53,761.761 INFO    ] 200
[2026-06-05 08:44:53,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:53,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:44:53,829.829 INFO    ] No update needed
[2026-06-05 08:44:53,831.831 INFO    ] Checking for camera pi updates...
[2026-06-05 08:44:53,865.865 INFO    ] 200
[2026-06-05 08:44:53,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:44:53,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:44:53,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:44:53,958.958 INFO    ] No camera update needed
[2026-06-05 08:44:53,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:44:53,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:44:53,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:44:53,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:44:56,014.014 INFO    ] ================================================
[2026-06-05 08:44:56,029.029 INFO    ] Launching Daemon at Fri Jun  5 08:44:56 IST 2026
[2026-06-05 08:44:56,040.040 INFO    ] ================================================
[2026-06-05 08:44:56,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:44:56
[2026-06-05 08:44:57,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:44:57,640.640 INFO    ] Initializing speech engine...
[2026-06-05 08:44:57,654.654 INFO    ] 2026-06-05 08:44:57
[2026-06-05 08:44:57,935.935 INFO    ] 2026-06-05 08:44:57
[2026-06-05 08:44:57,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:44:59,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:44:59,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:44:59,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:44:59,954.954 INFO    ] time= 05/06/2026 08:44:59
[2026-06-05 08:44:59,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:44:59,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:45:00,058.058 INFO    ] No existing commands found in stream
[2026-06-05 08:45:05,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:45:05,082.082 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 08:45:07,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:45:07,971.971 INFO    ] Checking for system updates...
[2026-06-05 08:45:08,011.011 INFO    ] 200
[2026-06-05 08:45:08,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:08,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:45:08,075.075 INFO    ] No update needed
[2026-06-05 08:45:08,078.078 INFO    ] Checking for camera pi updates...
[2026-06-05 08:45:08,115.115 INFO    ] 200
[2026-06-05 08:45:08,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:08,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:45:08,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:45:08,206.206 INFO    ] No camera update needed
[2026-06-05 08:45:08,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:45:08,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:45:08,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:45:08,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:45:10,263.263 INFO    ] ================================================
[2026-06-05 08:45:10,278.278 INFO    ] Launching Daemon at Fri Jun  5 08:45:10 IST 2026
[2026-06-05 08:45:10,289.289 INFO    ] ================================================
[2026-06-05 08:45:10,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:45:10
[2026-06-05 08:45:11,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:45:11,875.875 INFO    ] Initializing speech engine...
[2026-06-05 08:45:11,885.885 INFO    ] 2026-06-05 08:45:11
[2026-06-05 08:45:12,159.159 INFO    ] 2026-06-05 08:45:12
[2026-06-05 08:45:12,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:45:12,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:45:12,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:45:12,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:45:12,577.577 INFO    ] time= 05/06/2026 08:45:12
[2026-06-05 08:45:12,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:45:12,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:45:12,679.679 INFO    ] No existing commands found in stream
[2026-06-05 08:45:17,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:45:17,718.718 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 08:45:18,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:45:18,264.264 INFO    ] Checking for system updates...
[2026-06-05 08:45:18,300.300 INFO    ] 200
[2026-06-05 08:45:18,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:18,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:45:18,367.367 INFO    ] No update needed
[2026-06-05 08:45:18,370.370 INFO    ] Checking for camera pi updates...
[2026-06-05 08:45:18,404.404 INFO    ] 200
[2026-06-05 08:45:18,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:18,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:45:18,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:45:18,507.507 INFO    ] No camera update needed
[2026-06-05 08:45:18,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:45:18,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:45:18,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:45:18,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:45:20,564.564 INFO    ] ================================================
[2026-06-05 08:45:20,579.579 INFO    ] Launching Daemon at Fri Jun  5 08:45:20 IST 2026
[2026-06-05 08:45:20,590.590 INFO    ] ================================================
[2026-06-05 08:45:21,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:45:21
[2026-06-05 08:45:21,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:45:22,019.019 INFO    ] Initializing speech engine...
[2026-06-05 08:45:22,028.028 INFO    ] 2026-06-05 08:45:22
[2026-06-05 08:45:22,323.323 INFO    ] 2026-06-05 08:45:22
[2026-06-05 08:45:22,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:45:22,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:45:22,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:45:22,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:45:22,783.783 INFO    ] time= 05/06/2026 08:45:22
[2026-06-05 08:45:22,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:45:22,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:45:23,369.369 INFO    ] No existing commands found in stream
[2026-06-05 08:45:28,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:45:28,389.389 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 08:45:29,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:45:30,002.002 INFO    ] Checking for system updates...
[2026-06-05 08:45:30,044.044 INFO    ] 200
[2026-06-05 08:45:30,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:30,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:45:30,104.104 INFO    ] No update needed
[2026-06-05 08:45:30,107.107 INFO    ] Checking for camera pi updates...
[2026-06-05 08:45:30,146.146 INFO    ] 200
[2026-06-05 08:45:30,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:30,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:45:30,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:45:30,245.245 INFO    ] No camera update needed
[2026-06-05 08:45:30,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:45:30,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:45:30,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:45:30,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:45:32,306.306 INFO    ] ================================================
[2026-06-05 08:45:32,322.322 INFO    ] Launching Daemon at Fri Jun  5 08:45:32 IST 2026
[2026-06-05 08:45:32,334.334 INFO    ] ================================================
[2026-06-05 08:45:32,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:45:32
[2026-06-05 08:45:33,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:45:33,852.852 INFO    ] Initializing speech engine...
[2026-06-05 08:45:33,860.860 INFO    ] 2026-06-05 08:45:33
[2026-06-05 08:45:34,136.136 INFO    ] 2026-06-05 08:45:34
[2026-06-05 08:45:34,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:45:34,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:45:34,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:45:34,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:45:34,619.619 INFO    ] time= 05/06/2026 08:45:34
[2026-06-05 08:45:34,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:45:34,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:45:34,818.818 INFO    ] No existing commands found in stream
[2026-06-05 08:45:39,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:45:39,848.848 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 08:45:40,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:45:40,321.321 INFO    ] Checking for system updates...
[2026-06-05 08:45:40,360.360 INFO    ] 200
[2026-06-05 08:45:40,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:40,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:45:40,419.419 INFO    ] No update needed
[2026-06-05 08:45:40,422.422 INFO    ] Checking for camera pi updates...
[2026-06-05 08:45:40,457.457 INFO    ] 200
[2026-06-05 08:45:40,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:40,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:45:40,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:45:40,558.558 INFO    ] No camera update needed
[2026-06-05 08:45:40,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:45:40,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:45:40,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:45:40,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:45:42,616.616 INFO    ] ================================================
[2026-06-05 08:45:42,631.631 INFO    ] Launching Daemon at Fri Jun  5 08:45:42 IST 2026
[2026-06-05 08:45:42,642.642 INFO    ] ================================================
[2026-06-05 08:45:43,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:45:43
[2026-06-05 08:45:43,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:45:44,092.092 INFO    ] Initializing speech engine...
[2026-06-05 08:45:44,099.099 INFO    ] 2026-06-05 08:45:44
[2026-06-05 08:45:44,359.359 INFO    ] 2026-06-05 08:45:44
[2026-06-05 08:45:44,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:45:44,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:45:44,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:45:44,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:45:44,828.828 INFO    ] time= 05/06/2026 08:45:44
[2026-06-05 08:45:44,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:45:44,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:45:45,057.057 INFO    ] No existing commands found in stream
[2026-06-05 08:45:50,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:45:50,086.086 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 08:45:51,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:45:51,941.941 INFO    ] Checking for system updates...
[2026-06-05 08:45:51,981.981 INFO    ] 200
[2026-06-05 08:45:51,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:52,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:45:52,039.039 INFO    ] No update needed
[2026-06-05 08:45:52,041.041 INFO    ] Checking for camera pi updates...
[2026-06-05 08:45:52,075.075 INFO    ] 200
[2026-06-05 08:45:52,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:45:52,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:45:52,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:45:52,172.172 INFO    ] No camera update needed
[2026-06-05 08:45:52,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:45:52,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:45:52,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:45:52,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:45:54,229.229 INFO    ] ================================================
[2026-06-05 08:45:54,245.245 INFO    ] Launching Daemon at Fri Jun  5 08:45:54 IST 2026
[2026-06-05 08:45:54,256.256 INFO    ] ================================================
[2026-06-05 08:45:54,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:45:54
[2026-06-05 08:45:55,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:45:55,680.680 INFO    ] Initializing speech engine...
[2026-06-05 08:45:55,686.686 INFO    ] 2026-06-05 08:45:55
[2026-06-05 08:45:55,990.990 INFO    ] 2026-06-05 08:45:55
[2026-06-05 08:45:56,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:45:56,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:45:56,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:45:56,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:45:56,396.396 INFO    ] time= 05/06/2026 08:45:56
[2026-06-05 08:45:56,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:45:56,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:45:56,505.505 INFO    ] No existing commands found in stream
[2026-06-05 08:46:01,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:46:01,521.521 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 08:46:04,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:46:04,854.854 INFO    ] Checking for system updates...
[2026-06-05 08:46:04,891.891 INFO    ] 200
[2026-06-05 08:46:04,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:04,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:46:04,955.955 INFO    ] No update needed
[2026-06-05 08:46:04,957.957 INFO    ] Checking for camera pi updates...
[2026-06-05 08:46:04,994.994 INFO    ] 200
[2026-06-05 08:46:04,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:05,038.038 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:46:05,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:46:05,080.080 INFO    ] No camera update needed
[2026-06-05 08:46:05,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:46:05,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:46:05,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:46:05,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:46:07,139.139 INFO    ] ================================================
[2026-06-05 08:46:07,154.154 INFO    ] Launching Daemon at Fri Jun  5 08:46:07 IST 2026
[2026-06-05 08:46:07,164.164 INFO    ] ================================================
[2026-06-05 08:46:07,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:46:07
[2026-06-05 08:46:08,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:46:08,568.568 INFO    ] Initializing speech engine...
[2026-06-05 08:46:08,576.576 INFO    ] 2026-06-05 08:46:08
[2026-06-05 08:46:08,851.851 INFO    ] 2026-06-05 08:46:08
[2026-06-05 08:46:08,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:46:09,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:46:09,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:46:09,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:46:09,292.292 INFO    ] time= 05/06/2026 08:46:09
[2026-06-05 08:46:09,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:46:09,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:46:09,445.445 INFO    ] No existing commands found in stream
[2026-06-05 08:46:14,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:46:14,460.460 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 08:46:15,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:46:15,386.386 INFO    ] Checking for system updates...
[2026-06-05 08:46:15,426.426 INFO    ] 200
[2026-06-05 08:46:15,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:15,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:46:15,484.484 INFO    ] No update needed
[2026-06-05 08:46:15,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 08:46:15,524.524 INFO    ] 200
[2026-06-05 08:46:15,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:15,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:46:15,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:46:15,615.615 INFO    ] No camera update needed
[2026-06-05 08:46:15,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:46:15,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:46:15,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:46:15,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:46:17,670.670 INFO    ] ================================================
[2026-06-05 08:46:17,685.685 INFO    ] Launching Daemon at Fri Jun  5 08:46:17 IST 2026
[2026-06-05 08:46:17,696.696 INFO    ] ================================================
[2026-06-05 08:46:18,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:46:18
[2026-06-05 08:46:18,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:46:19,263.263 INFO    ] Initializing speech engine...
[2026-06-05 08:46:19,279.279 INFO    ] 2026-06-05 08:46:19
[2026-06-05 08:46:19,569.569 INFO    ] 2026-06-05 08:46:19
[2026-06-05 08:46:19,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:46:19,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:46:19,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:46:20,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:46:20,066.066 INFO    ] time= 05/06/2026 08:46:20
[2026-06-05 08:46:20,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:46:20,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:46:20,270.270 INFO    ] No existing commands found in stream
[2026-06-05 08:46:25,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:46:25,295.295 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 08:46:30,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:46:30,231.231 INFO    ] Checking for system updates...
[2026-06-05 08:46:30,270.270 INFO    ] 200
[2026-06-05 08:46:30,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:30,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:46:30,328.328 INFO    ] No update needed
[2026-06-05 08:46:30,330.330 INFO    ] Checking for camera pi updates...
[2026-06-05 08:46:30,364.364 INFO    ] 200
[2026-06-05 08:46:30,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:30,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:46:30,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:46:30,458.458 INFO    ] No camera update needed
[2026-06-05 08:46:30,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:46:30,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:46:30,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:46:30,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:46:32,516.516 INFO    ] ================================================
[2026-06-05 08:46:32,532.532 INFO    ] Launching Daemon at Fri Jun  5 08:46:32 IST 2026
[2026-06-05 08:46:32,548.548 INFO    ] ================================================
[2026-06-05 08:46:33,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:46:33
[2026-06-05 08:46:33,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:46:34,209.209 INFO    ] Initializing speech engine...
[2026-06-05 08:46:34,217.217 INFO    ] 2026-06-05 08:46:34
[2026-06-05 08:46:34,505.505 INFO    ] 2026-06-05 08:46:34
[2026-06-05 08:46:34,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:46:34,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:46:34,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:46:35,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:46:35,249.249 INFO    ] time= 05/06/2026 08:46:35
[2026-06-05 08:46:35,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:46:35,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:46:35,468.468 INFO    ] No existing commands found in stream
[2026-06-05 08:46:40,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:46:40,495.495 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 08:46:43,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:46:43,869.869 INFO    ] Checking for system updates...
[2026-06-05 08:46:43,909.909 INFO    ] 200
[2026-06-05 08:46:43,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:43,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:46:43,967.967 INFO    ] No update needed
[2026-06-05 08:46:43,970.970 INFO    ] Checking for camera pi updates...
[2026-06-05 08:46:44,008.008 INFO    ] 200
[2026-06-05 08:46:44,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:44,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:46:44,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:46:44,207.207 INFO    ] No camera update needed
[2026-06-05 08:46:44,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:46:44,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:46:44,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:46:44,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:46:46,263.263 INFO    ] ================================================
[2026-06-05 08:46:46,278.278 INFO    ] Launching Daemon at Fri Jun  5 08:46:46 IST 2026
[2026-06-05 08:46:46,289.289 INFO    ] ================================================
[2026-06-05 08:46:46,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:46:46
[2026-06-05 08:46:47,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:46:47,759.759 INFO    ] Initializing speech engine...
[2026-06-05 08:46:47,766.766 INFO    ] 2026-06-05 08:46:47
[2026-06-05 08:46:48,066.066 INFO    ] 2026-06-05 08:46:48
[2026-06-05 08:46:48,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:46:48,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:46:48,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:46:48,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:46:48,586.586 INFO    ] time= 05/06/2026 08:46:48
[2026-06-05 08:46:48,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:46:48,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:46:48,845.845 INFO    ] No existing commands found in stream
[2026-06-05 08:46:53,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:46:53,863.863 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 08:46:57,189.189 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:46:57,192.192 INFO    ] Checking for system updates...
[2026-06-05 08:46:57,228.228 INFO    ] 200
[2026-06-05 08:46:57,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:57,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:46:57,287.287 INFO    ] No update needed
[2026-06-05 08:46:57,289.289 INFO    ] Checking for camera pi updates...
[2026-06-05 08:46:57,327.327 INFO    ] 200
[2026-06-05 08:46:57,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:46:57,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:46:57,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:46:57,406.406 INFO    ] No camera update needed
[2026-06-05 08:46:57,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:46:57,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:46:57,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:46:57,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:46:59,465.465 INFO    ] ================================================
[2026-06-05 08:46:59,480.480 INFO    ] Launching Daemon at Fri Jun  5 08:46:59 IST 2026
[2026-06-05 08:46:59,491.491 INFO    ] ================================================
[2026-06-05 08:47:00,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:47:00
[2026-06-05 08:47:00,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:47:01,126.126 INFO    ] Initializing speech engine...
[2026-06-05 08:47:01,146.146 INFO    ] 2026-06-05 08:47:01
[2026-06-05 08:47:01,554.554 INFO    ] 2026-06-05 08:47:01
[2026-06-05 08:47:01,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:47:01,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:47:01,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:47:02,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:47:02,115.115 INFO    ] time= 05/06/2026 08:47:02
[2026-06-05 08:47:02,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:47:02,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:47:02,329.329 INFO    ] No existing commands found in stream
[2026-06-05 08:47:07,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:47:07,368.368 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 08:47:08,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:47:08,951.951 INFO    ] Checking for system updates...
[2026-06-05 08:47:08,986.986 INFO    ] 200
[2026-06-05 08:47:08,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:47:09,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:47:09,044.044 INFO    ] No update needed
[2026-06-05 08:47:09,046.046 INFO    ] Checking for camera pi updates...
[2026-06-05 08:47:09,084.084 INFO    ] 200
[2026-06-05 08:47:09,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:47:09,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:47:09,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:47:09,168.168 INFO    ] No camera update needed
[2026-06-05 08:47:09,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:47:09,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:47:09,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:47:09,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:47:11,224.224 INFO    ] ================================================
[2026-06-05 08:47:11,239.239 INFO    ] Launching Daemon at Fri Jun  5 08:47:11 IST 2026
[2026-06-05 08:47:11,250.250 INFO    ] ================================================
[2026-06-05 08:47:11,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:47:11
[2026-06-05 08:47:12,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:47:12,890.890 INFO    ] Initializing speech engine...
[2026-06-05 08:47:12,898.898 INFO    ] 2026-06-05 08:47:12
[2026-06-05 08:47:13,170.170 INFO    ] 2026-06-05 08:47:13
[2026-06-05 08:47:13,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:47:13,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:47:13,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:47:13,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:47:13,734.734 INFO    ] time= 05/06/2026 08:47:13
[2026-06-05 08:47:13,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:47:13,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:47:13,901.901 INFO    ] No existing commands found in stream
[2026-06-05 08:47:18,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:47:18,932.932 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 08:47:20,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:47:20,651.651 INFO    ] Checking for system updates...
[2026-06-05 08:47:20,689.689 INFO    ] 200
[2026-06-05 08:47:20,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:47:20,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:47:20,758.758 INFO    ] No update needed
[2026-06-05 08:47:20,761.761 INFO    ] Checking for camera pi updates...
[2026-06-05 08:47:20,797.797 INFO    ] 200
[2026-06-05 08:47:20,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:47:20,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:47:20,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:47:20,903.903 INFO    ] No camera update needed
[2026-06-05 08:47:20,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:47:20,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:47:20,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:47:20,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:47:22,957.957 INFO    ] ================================================
[2026-06-05 08:47:22,972.972 INFO    ] Launching Daemon at Fri Jun  5 08:47:22 IST 2026
[2026-06-05 08:47:22,983.983 INFO    ] ================================================
[2026-06-05 08:47:23,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:47:23
[2026-06-05 08:47:24,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:47:24,428.428 INFO    ] Initializing speech engine...
[2026-06-05 08:47:24,441.441 INFO    ] 2026-06-05 08:47:24
[2026-06-05 08:47:24,698.698 INFO    ] 2026-06-05 08:47:24
[2026-06-05 08:47:24,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:47:24,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:47:24,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:47:25,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:47:25,180.180 INFO    ] time= 05/06/2026 08:47:25
[2026-06-05 08:47:25,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:47:25,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:47:25,385.385 INFO    ] No existing commands found in stream
[2026-06-05 08:47:30,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:47:30,415.415 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 08:47:33,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:47:33,108.108 INFO    ] Checking for system updates...
[2026-06-05 08:47:33,144.144 INFO    ] 200
[2026-06-05 08:47:33,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:47:33,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:47:33,204.204 INFO    ] No update needed
[2026-06-05 08:47:33,207.207 INFO    ] Checking for camera pi updates...
[2026-06-05 08:47:33,241.241 INFO    ] 200
[2026-06-05 08:47:33,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:47:33,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:47:33,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:47:33,322.322 INFO    ] No camera update needed
[2026-06-05 08:47:33,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:47:33,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:47:33,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:47:33,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:47:35,379.379 INFO    ] ================================================
[2026-06-05 08:47:35,394.394 INFO    ] Launching Daemon at Fri Jun  5 08:47:35 IST 2026
[2026-06-05 08:47:35,405.405 INFO    ] ================================================
[2026-06-05 08:47:35,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:47:35
[2026-06-05 08:47:36,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:47:36,857.857 INFO    ] Initializing speech engine...
[2026-06-05 08:47:36,863.863 INFO    ] 2026-06-05 08:47:36
[2026-06-05 08:47:37,126.126 INFO    ] 2026-06-05 08:47:37
[2026-06-05 08:47:37,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:47:37,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:47:37,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:47:37,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:47:37,591.591 INFO    ] time= 05/06/2026 08:47:37
[2026-06-05 08:47:37,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:47:37,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:47:37,821.821 INFO    ] No existing commands found in stream
[2026-06-05 08:47:42,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:47:42,839.839 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 08:47:46,758.758 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:47:46,762.762 INFO    ] Checking for system updates...
[2026-06-05 08:47:46,798.798 INFO    ] 200
[2026-06-05 08:47:46,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:47:46,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:47:46,856.856 INFO    ] No update needed
[2026-06-05 08:47:46,859.859 INFO    ] Checking for camera pi updates...
[2026-06-05 08:47:46,896.896 INFO    ] 200
[2026-06-05 08:47:46,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:47:46,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:47:46,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:47:46,981.981 INFO    ] No camera update needed
[2026-06-05 08:47:46,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:47:46,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:47:46,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:47:46,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:47:49,036.036 INFO    ] ================================================
[2026-06-05 08:47:49,051.051 INFO    ] Launching Daemon at Fri Jun  5 08:47:49 IST 2026
[2026-06-05 08:47:49,062.062 INFO    ] ================================================
[2026-06-05 08:47:49,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:47:49
[2026-06-05 08:47:50,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:47:50,692.692 INFO    ] Initializing speech engine...
[2026-06-05 08:47:50,700.700 INFO    ] 2026-06-05 08:47:50
[2026-06-05 08:47:50,990.990 INFO    ] 2026-06-05 08:47:50
[2026-06-05 08:47:51,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:47:51,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:47:51,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:47:51,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:47:51,586.586 INFO    ] time= 05/06/2026 08:47:51
[2026-06-05 08:47:51,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:47:51,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:47:51,745.745 INFO    ] No existing commands found in stream
[2026-06-05 08:47:56,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:47:56,780.780 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 08:48:00,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:48:00,092.092 INFO    ] Checking for system updates...
[2026-06-05 08:48:00,133.133 INFO    ] 200
[2026-06-05 08:48:00,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:00,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:48:00,194.194 INFO    ] No update needed
[2026-06-05 08:48:00,197.197 INFO    ] Checking for camera pi updates...
[2026-06-05 08:48:00,232.232 INFO    ] 200
[2026-06-05 08:48:00,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:00,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:48:00,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:48:00,328.328 INFO    ] No camera update needed
[2026-06-05 08:48:00,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:48:00,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:48:00,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:48:00,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:48:02,406.406 INFO    ] ================================================
[2026-06-05 08:48:02,423.423 INFO    ] Launching Daemon at Fri Jun  5 08:48:02 IST 2026
[2026-06-05 08:48:02,439.439 INFO    ] ================================================
[2026-06-05 08:48:03,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:48:03
[2026-06-05 08:48:03,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:48:03,931.931 INFO    ] Initializing speech engine...
[2026-06-05 08:48:03,954.954 INFO    ] 2026-06-05 08:48:03
[2026-06-05 08:48:04,212.212 INFO    ] 2026-06-05 08:48:04
[2026-06-05 08:48:04,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:48:04,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:48:04,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:48:04,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:48:04,586.586 INFO    ] time= 05/06/2026 08:48:04
[2026-06-05 08:48:04,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:48:04,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:48:04,769.769 INFO    ] No existing commands found in stream
[2026-06-05 08:48:09,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:48:09,797.797 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 08:48:11,893.893 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:48:11,895.895 INFO    ] Checking for system updates...
[2026-06-05 08:48:11,931.931 INFO    ] 200
[2026-06-05 08:48:11,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:11,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:48:11,989.989 INFO    ] No update needed
[2026-06-05 08:48:11,992.992 INFO    ] Checking for camera pi updates...
[2026-06-05 08:48:12,030.030 INFO    ] 200
[2026-06-05 08:48:12,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:12,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:48:12,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:48:12,124.124 INFO    ] No camera update needed
[2026-06-05 08:48:12,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:48:12,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:48:12,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:48:12,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:48:14,179.179 INFO    ] ================================================
[2026-06-05 08:48:14,194.194 INFO    ] Launching Daemon at Fri Jun  5 08:48:14 IST 2026
[2026-06-05 08:48:14,204.204 INFO    ] ================================================
[2026-06-05 08:48:14,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:48:14
[2026-06-05 08:48:15,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:48:15,657.657 INFO    ] Initializing speech engine...
[2026-06-05 08:48:15,682.682 INFO    ] 2026-06-05 08:48:15
[2026-06-05 08:48:15,957.957 INFO    ] 2026-06-05 08:48:15
[2026-06-05 08:48:15,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:48:16,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:48:16,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:48:16,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:48:16,332.332 INFO    ] time= 05/06/2026 08:48:16
[2026-06-05 08:48:16,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:48:16,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:48:16,458.458 INFO    ] No existing commands found in stream
[2026-06-05 08:48:21,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:48:21,476.476 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 08:48:23,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:48:23,822.822 INFO    ] Checking for system updates...
[2026-06-05 08:48:23,858.858 INFO    ] 200
[2026-06-05 08:48:23,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:23,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:48:23,937.937 INFO    ] No update needed
[2026-06-05 08:48:23,939.939 INFO    ] Checking for camera pi updates...
[2026-06-05 08:48:23,977.977 INFO    ] 200
[2026-06-05 08:48:23,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:24,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:48:24,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:48:24,068.068 INFO    ] No camera update needed
[2026-06-05 08:48:24,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:48:24,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:48:24,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:48:24,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:48:26,125.125 INFO    ] ================================================
[2026-06-05 08:48:26,140.140 INFO    ] Launching Daemon at Fri Jun  5 08:48:26 IST 2026
[2026-06-05 08:48:26,151.151 INFO    ] ================================================
[2026-06-05 08:48:26,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:48:26
[2026-06-05 08:48:27,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:48:27,572.572 INFO    ] Initializing speech engine...
[2026-06-05 08:48:27,595.595 INFO    ] 2026-06-05 08:48:27
[2026-06-05 08:48:27,872.872 INFO    ] 2026-06-05 08:48:27
[2026-06-05 08:48:27,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:48:29,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:48:29,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:48:29,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:48:29,893.893 INFO    ] time= 05/06/2026 08:48:29
[2026-06-05 08:48:29,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:48:29,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:48:29,969.969 INFO    ] No existing commands found in stream
[2026-06-05 08:48:34,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:48:34,984.984 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 08:48:37,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:48:37,141.141 INFO    ] Checking for system updates...
[2026-06-05 08:48:37,178.178 INFO    ] 200
[2026-06-05 08:48:37,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:37,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:48:37,236.236 INFO    ] No update needed
[2026-06-05 08:48:37,239.239 INFO    ] Checking for camera pi updates...
[2026-06-05 08:48:37,277.277 INFO    ] 200
[2026-06-05 08:48:37,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:37,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:48:37,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:48:37,361.361 INFO    ] No camera update needed
[2026-06-05 08:48:37,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:48:37,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:48:37,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:48:37,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:48:39,416.416 INFO    ] ================================================
[2026-06-05 08:48:39,431.431 INFO    ] Launching Daemon at Fri Jun  5 08:48:39 IST 2026
[2026-06-05 08:48:39,442.442 INFO    ] ================================================
[2026-06-05 08:48:40,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:48:40
[2026-06-05 08:48:40,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:48:41,046.046 INFO    ] Initializing speech engine...
[2026-06-05 08:48:41,054.054 INFO    ] 2026-06-05 08:48:41
[2026-06-05 08:48:41,328.328 INFO    ] 2026-06-05 08:48:41
[2026-06-05 08:48:41,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:48:41,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:48:41,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:48:41,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:48:41,808.808 INFO    ] time= 05/06/2026 08:48:41
[2026-06-05 08:48:41,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:48:41,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:48:42,032.032 INFO    ] No existing commands found in stream
[2026-06-05 08:48:47,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:48:47,052.052 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 08:48:49,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:48:49,327.327 INFO    ] Checking for system updates...
[2026-06-05 08:48:49,363.363 INFO    ] 200
[2026-06-05 08:48:49,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:49,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:48:49,422.422 INFO    ] No update needed
[2026-06-05 08:48:49,425.425 INFO    ] Checking for camera pi updates...
[2026-06-05 08:48:49,463.463 INFO    ] 200
[2026-06-05 08:48:49,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:48:49,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:48:49,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:48:49,668.668 INFO    ] No camera update needed
[2026-06-05 08:48:49,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:48:49,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:48:49,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:48:49,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:48:51,726.726 INFO    ] ================================================
[2026-06-05 08:48:51,741.741 INFO    ] Launching Daemon at Fri Jun  5 08:48:51 IST 2026
[2026-06-05 08:48:51,752.752 INFO    ] ================================================
[2026-06-05 08:48:52,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:48:52
[2026-06-05 08:48:52,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:48:53,169.169 INFO    ] Initializing speech engine...
[2026-06-05 08:48:53,179.179 INFO    ] 2026-06-05 08:48:53
[2026-06-05 08:48:53,429.429 INFO    ] 2026-06-05 08:48:53
[2026-06-05 08:48:53,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:48:53,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:48:53,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:48:53,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:48:53,915.915 INFO    ] time= 05/06/2026 08:48:53
[2026-06-05 08:48:53,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:48:53,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:48:54,136.136 INFO    ] No existing commands found in stream
[2026-06-05 08:48:59,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:48:59,160.160 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 08:49:00,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:49:00,955.955 INFO    ] Checking for system updates...
[2026-06-05 08:49:00,991.991 INFO    ] 200
[2026-06-05 08:49:00,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:01,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:01,050.050 INFO    ] No update needed
[2026-06-05 08:49:01,053.053 INFO    ] Checking for camera pi updates...
[2026-06-05 08:49:01,088.088 INFO    ] 200
[2026-06-05 08:49:01,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:01,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:49:01,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:01,171.171 INFO    ] No camera update needed
[2026-06-05 08:49:01,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:49:01,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:49:01,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:49:01,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:49:03,233.233 INFO    ] ================================================
[2026-06-05 08:49:03,249.249 INFO    ] Launching Daemon at Fri Jun  5 08:49:03 IST 2026
[2026-06-05 08:49:03,259.259 INFO    ] ================================================
[2026-06-05 08:49:03,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:49:03
[2026-06-05 08:49:04,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:49:04,900.900 INFO    ] Initializing speech engine...
[2026-06-05 08:49:04,907.907 INFO    ] 2026-06-05 08:49:04
[2026-06-05 08:49:05,203.203 INFO    ] 2026-06-05 08:49:05
[2026-06-05 08:49:05,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:49:05,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:49:05,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:49:05,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:49:05,690.690 INFO    ] time= 05/06/2026 08:49:05
[2026-06-05 08:49:05,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:49:05,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:49:05,920.920 INFO    ] No existing commands found in stream
[2026-06-05 08:49:10,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:49:10,960.960 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 08:49:13,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:49:13,594.594 INFO    ] Checking for system updates...
[2026-06-05 08:49:13,637.637 INFO    ] 200
[2026-06-05 08:49:13,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:13,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:13,702.702 INFO    ] No update needed
[2026-06-05 08:49:13,705.705 INFO    ] Checking for camera pi updates...
[2026-06-05 08:49:13,740.740 INFO    ] 200
[2026-06-05 08:49:13,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:13,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:49:13,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:13,836.836 INFO    ] No camera update needed
[2026-06-05 08:49:13,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:49:13,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:49:13,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:49:13,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:49:15,896.896 INFO    ] ================================================
[2026-06-05 08:49:15,912.912 INFO    ] Launching Daemon at Fri Jun  5 08:49:15 IST 2026
[2026-06-05 08:49:15,923.923 INFO    ] ================================================
[2026-06-05 08:49:16,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:49:16
[2026-06-05 08:49:17,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:49:17,352.352 INFO    ] Initializing speech engine...
[2026-06-05 08:49:17,358.358 INFO    ] 2026-06-05 08:49:17
[2026-06-05 08:49:17,685.685 INFO    ] 2026-06-05 08:49:17
[2026-06-05 08:49:17,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:49:17,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:49:17,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:49:18,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:49:18,092.092 INFO    ] time= 05/06/2026 08:49:18
[2026-06-05 08:49:18,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:49:18,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:49:18,224.224 INFO    ] No existing commands found in stream
[2026-06-05 08:49:23,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:49:23,237.237 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 08:49:25,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:49:25,361.361 INFO    ] Checking for system updates...
[2026-06-05 08:49:25,398.398 INFO    ] 200
[2026-06-05 08:49:25,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:25,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:25,467.467 INFO    ] No update needed
[2026-06-05 08:49:25,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 08:49:25,506.506 INFO    ] 200
[2026-06-05 08:49:25,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:25,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:49:25,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:25,602.602 INFO    ] No camera update needed
[2026-06-05 08:49:25,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:49:25,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:49:25,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:49:25,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:49:27,664.664 INFO    ] ================================================
[2026-06-05 08:49:27,680.680 INFO    ] Launching Daemon at Fri Jun  5 08:49:27 IST 2026
[2026-06-05 08:49:27,691.691 INFO    ] ================================================
[2026-06-05 08:49:28,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:49:28
[2026-06-05 08:49:29,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:49:29,367.367 INFO    ] Initializing speech engine...
[2026-06-05 08:49:29,380.380 INFO    ] 2026-06-05 08:49:29
[2026-06-05 08:49:29,640.640 INFO    ] 2026-06-05 08:49:29
[2026-06-05 08:49:29,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:49:29,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:49:29,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:49:30,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:49:30,037.037 INFO    ] time= 05/06/2026 08:49:30
[2026-06-05 08:49:30,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:49:30,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:49:30,165.165 INFO    ] No existing commands found in stream
[2026-06-05 08:49:35,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:49:35,178.178 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 08:49:39,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:49:39,332.332 INFO    ] Checking for system updates...
[2026-06-05 08:49:39,368.368 INFO    ] 200
[2026-06-05 08:49:39,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:39,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:39,426.426 INFO    ] No update needed
[2026-06-05 08:49:39,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 08:49:39,463.463 INFO    ] 200
[2026-06-05 08:49:39,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:39,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:49:39,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:39,556.556 INFO    ] No camera update needed
[2026-06-05 08:49:39,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:49:39,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:49:39,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:49:39,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:49:41,611.611 INFO    ] ================================================
[2026-06-05 08:49:41,630.630 INFO    ] Launching Daemon at Fri Jun  5 08:49:41 IST 2026
[2026-06-05 08:49:41,642.642 INFO    ] ================================================
[2026-06-05 08:49:42,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:49:42
[2026-06-05 08:49:42,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:49:43,127.127 INFO    ] Initializing speech engine...
[2026-06-05 08:49:43,155.155 INFO    ] 2026-06-05 08:49:43
[2026-06-05 08:49:43,430.430 INFO    ] 2026-06-05 08:49:43
[2026-06-05 08:49:43,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:49:43,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:49:43,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:49:43,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:49:43,863.863 INFO    ] time= 05/06/2026 08:49:43
[2026-06-05 08:49:43,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:49:43,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:49:44,013.013 INFO    ] No existing commands found in stream
[2026-06-05 08:49:49,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:49:49,041.041 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 08:49:50,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:49:50,219.219 INFO    ] Checking for system updates...
[2026-06-05 08:49:50,257.257 INFO    ] 200
[2026-06-05 08:49:50,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:50,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:50,325.325 INFO    ] No update needed
[2026-06-05 08:49:50,328.328 INFO    ] Checking for camera pi updates...
[2026-06-05 08:49:50,363.363 INFO    ] 200
[2026-06-05 08:49:50,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:49:50,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:49:50,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:49:50,455.455 INFO    ] No camera update needed
[2026-06-05 08:49:50,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:49:50,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:49:50,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:49:50,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:49:52,515.515 INFO    ] ================================================
[2026-06-05 08:49:52,531.531 INFO    ] Launching Daemon at Fri Jun  5 08:49:52 IST 2026
[2026-06-05 08:49:52,542.542 INFO    ] ================================================
[2026-06-05 08:49:53,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:49:53
[2026-06-05 08:49:53,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:49:54,022.022 INFO    ] Initializing speech engine...
[2026-06-05 08:49:54,029.029 INFO    ] 2026-06-05 08:49:54
[2026-06-05 08:49:54,297.297 INFO    ] 2026-06-05 08:49:54
[2026-06-05 08:49:54,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:49:54,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:49:54,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:49:54,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:49:54,778.778 INFO    ] time= 05/06/2026 08:49:54
[2026-06-05 08:49:54,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:49:54,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:49:54,999.999 INFO    ] No existing commands found in stream
[2026-06-05 08:50:00,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:50:00,017.017 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 08:50:01,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:50:01,928.928 INFO    ] Checking for system updates...
[2026-06-05 08:50:02,043.043 INFO    ] 200
[2026-06-05 08:50:02,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:02,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:50:02,200.200 INFO    ] No update needed
[2026-06-05 08:50:02,203.203 INFO    ] Checking for camera pi updates...
[2026-06-05 08:50:02,268.268 INFO    ] 200
[2026-06-05 08:50:02,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:02,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:50:02,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:50:02,403.403 INFO    ] No camera update needed
[2026-06-05 08:50:02,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:50:02,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:50:02,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:50:02,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:50:04,484.484 INFO    ] ================================================
[2026-06-05 08:50:04,501.501 INFO    ] Launching Daemon at Fri Jun  5 08:50:04 IST 2026
[2026-06-05 08:50:04,512.512 INFO    ] ================================================
[2026-06-05 08:50:05,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:50:05
[2026-06-05 08:50:05,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:50:06,013.013 INFO    ] Initializing speech engine...
[2026-06-05 08:50:06,022.022 INFO    ] 2026-06-05 08:50:06
[2026-06-05 08:50:06,286.286 INFO    ] 2026-06-05 08:50:06
[2026-06-05 08:50:06,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:50:06,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:50:06,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:50:06,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:50:06,770.770 INFO    ] time= 05/06/2026 08:50:06
[2026-06-05 08:50:06,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:50:06,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:50:07,005.005 INFO    ] No existing commands found in stream
[2026-06-05 08:50:12,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:50:12,021.021 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 08:50:12,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:50:12,550.550 INFO    ] Checking for system updates...
[2026-06-05 08:50:12,588.588 INFO    ] 200
[2026-06-05 08:50:12,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:12,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:50:12,646.646 INFO    ] No update needed
[2026-06-05 08:50:12,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 08:50:12,683.683 INFO    ] 200
[2026-06-05 08:50:12,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:12,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:50:12,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:50:12,760.760 INFO    ] No camera update needed
[2026-06-05 08:50:12,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:50:12,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:50:12,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:50:12,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:50:14,817.817 INFO    ] ================================================
[2026-06-05 08:50:14,833.833 INFO    ] Launching Daemon at Fri Jun  5 08:50:14 IST 2026
[2026-06-05 08:50:14,844.844 INFO    ] ================================================
[2026-06-05 08:50:15,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:50:15
[2026-06-05 08:50:16,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:50:16,520.520 INFO    ] Initializing speech engine...
[2026-06-05 08:50:16,535.535 INFO    ] 2026-06-05 08:50:16
[2026-06-05 08:50:16,851.851 INFO    ] 2026-06-05 08:50:16
[2026-06-05 08:50:16,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:50:17,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:50:17,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:50:17,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:50:17,375.375 INFO    ] time= 05/06/2026 08:50:17
[2026-06-05 08:50:17,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:50:17,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:50:17,545.545 INFO    ] No existing commands found in stream
[2026-06-05 08:50:22,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:50:22,575.575 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 08:50:24,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:50:24,977.977 INFO    ] Checking for system updates...
[2026-06-05 08:50:25,016.016 INFO    ] 200
[2026-06-05 08:50:25,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:25,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:50:25,074.074 INFO    ] No update needed
[2026-06-05 08:50:25,076.076 INFO    ] Checking for camera pi updates...
[2026-06-05 08:50:25,110.110 INFO    ] 200
[2026-06-05 08:50:25,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:25,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:50:25,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:50:25,202.202 INFO    ] No camera update needed
[2026-06-05 08:50:25,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:50:25,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:50:25,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:50:25,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:50:27,258.258 INFO    ] ================================================
[2026-06-05 08:50:27,274.274 INFO    ] Launching Daemon at Fri Jun  5 08:50:27 IST 2026
[2026-06-05 08:50:27,287.287 INFO    ] ================================================
[2026-06-05 08:50:27,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:50:27
[2026-06-05 08:50:28,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:50:28,765.765 INFO    ] Initializing speech engine...
[2026-06-05 08:50:28,772.772 INFO    ] 2026-06-05 08:50:28
[2026-06-05 08:50:29,033.033 INFO    ] 2026-06-05 08:50:29
[2026-06-05 08:50:29,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:50:29,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:50:29,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:50:30,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:50:30,176.176 INFO    ] time= 05/06/2026 08:50:30
[2026-06-05 08:50:30,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:50:30,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:50:30,370.370 INFO    ] No existing commands found in stream
[2026-06-05 08:50:35,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:50:35,386.386 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 08:50:39,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:50:39,491.491 INFO    ] Checking for system updates...
[2026-06-05 08:50:39,532.532 INFO    ] 200
[2026-06-05 08:50:39,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:39,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:50:39,611.611 INFO    ] No update needed
[2026-06-05 08:50:39,614.614 INFO    ] Checking for camera pi updates...
[2026-06-05 08:50:39,648.648 INFO    ] 200
[2026-06-05 08:50:39,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:39,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:50:39,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:50:39,744.744 INFO    ] No camera update needed
[2026-06-05 08:50:39,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:50:39,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:50:39,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:50:39,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:50:41,799.799 INFO    ] ================================================
[2026-06-05 08:50:41,815.815 INFO    ] Launching Daemon at Fri Jun  5 08:50:41 IST 2026
[2026-06-05 08:50:41,827.827 INFO    ] ================================================
[2026-06-05 08:50:42,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:50:42
[2026-06-05 08:50:43,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:50:43,543.543 INFO    ] Initializing speech engine...
[2026-06-05 08:50:43,554.554 INFO    ] 2026-06-05 08:50:43
[2026-06-05 08:50:43,847.847 INFO    ] 2026-06-05 08:50:43
[2026-06-05 08:50:43,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:50:44,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:50:44,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:50:44,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:50:44,325.325 INFO    ] time= 05/06/2026 08:50:44
[2026-06-05 08:50:44,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:50:44,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:50:44,526.526 INFO    ] No existing commands found in stream
[2026-06-05 08:50:49,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:50:49,558.558 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 08:50:51,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:50:51,201.201 INFO    ] Checking for system updates...
[2026-06-05 08:50:51,244.244 INFO    ] 200
[2026-06-05 08:50:51,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:51,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:50:51,303.303 INFO    ] No update needed
[2026-06-05 08:50:51,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 08:50:51,344.344 INFO    ] 200
[2026-06-05 08:50:51,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:50:51,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:50:51,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:50:51,539.539 INFO    ] No camera update needed
[2026-06-05 08:50:51,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:50:51,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:50:51,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:50:51,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:50:53,595.595 INFO    ] ================================================
[2026-06-05 08:50:53,611.611 INFO    ] Launching Daemon at Fri Jun  5 08:50:53 IST 2026
[2026-06-05 08:50:53,623.623 INFO    ] ================================================
[2026-06-05 08:50:54,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:50:54
[2026-06-05 08:50:54,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:50:55,137.137 INFO    ] Initializing speech engine...
[2026-06-05 08:50:55,146.146 INFO    ] 2026-06-05 08:50:55
[2026-06-05 08:50:55,429.429 INFO    ] 2026-06-05 08:50:55
[2026-06-05 08:50:55,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:50:55,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:50:55,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:50:55,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:50:55,961.961 INFO    ] time= 05/06/2026 08:50:55
[2026-06-05 08:50:55,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:50:55,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:50:56,120.120 INFO    ] No existing commands found in stream
[2026-06-05 08:51:01,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:51:01,144.144 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 08:51:03,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:51:03,614.614 INFO    ] Checking for system updates...
[2026-06-05 08:51:03,650.650 INFO    ] 200
[2026-06-05 08:51:03,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:03,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:51:03,716.716 INFO    ] No update needed
[2026-06-05 08:51:03,718.718 INFO    ] Checking for camera pi updates...
[2026-06-05 08:51:03,752.752 INFO    ] 200
[2026-06-05 08:51:03,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:03,801.801 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:51:03,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:51:03,840.840 INFO    ] No camera update needed
[2026-06-05 08:51:03,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:51:03,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:51:03,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:51:03,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:51:05,896.896 INFO    ] ================================================
[2026-06-05 08:51:05,912.912 INFO    ] Launching Daemon at Fri Jun  5 08:51:05 IST 2026
[2026-06-05 08:51:05,923.923 INFO    ] ================================================
[2026-06-05 08:51:06,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:51:06
[2026-06-05 08:51:07,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:51:07,568.568 INFO    ] Initializing speech engine...
[2026-06-05 08:51:07,576.576 INFO    ] 2026-06-05 08:51:07
[2026-06-05 08:51:07,851.851 INFO    ] 2026-06-05 08:51:07
[2026-06-05 08:51:07,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:51:08,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:51:08,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:51:08,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:51:08,327.327 INFO    ] time= 05/06/2026 08:51:08
[2026-06-05 08:51:08,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:51:08,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:51:08,564.564 INFO    ] No existing commands found in stream
[2026-06-05 08:51:13,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:51:13,603.603 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 08:51:15,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:51:15,592.592 INFO    ] Checking for system updates...
[2026-06-05 08:51:15,630.630 INFO    ] 200
[2026-06-05 08:51:15,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:15,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:51:15,687.687 INFO    ] No update needed
[2026-06-05 08:51:15,690.690 INFO    ] Checking for camera pi updates...
[2026-06-05 08:51:15,723.723 INFO    ] 200
[2026-06-05 08:51:15,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:15,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:51:15,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:51:15,825.825 INFO    ] No camera update needed
[2026-06-05 08:51:15,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:51:15,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:51:15,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:51:15,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:51:17,880.880 INFO    ] ================================================
[2026-06-05 08:51:17,896.896 INFO    ] Launching Daemon at Fri Jun  5 08:51:17 IST 2026
[2026-06-05 08:51:17,908.908 INFO    ] ================================================
[2026-06-05 08:51:18,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:51:18
[2026-06-05 08:51:19,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:51:19,345.345 INFO    ] Initializing speech engine...
[2026-06-05 08:51:19,363.363 INFO    ] 2026-06-05 08:51:19
[2026-06-05 08:51:19,614.614 INFO    ] 2026-06-05 08:51:19
[2026-06-05 08:51:19,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:51:19,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:51:19,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:51:20,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:51:20,086.086 INFO    ] time= 05/06/2026 08:51:20
[2026-06-05 08:51:20,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:51:20,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:51:20,273.273 INFO    ] No existing commands found in stream
[2026-06-05 08:51:25,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:51:25,286.286 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 08:51:30,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:51:30,122.122 INFO    ] Checking for system updates...
[2026-06-05 08:51:30,163.163 INFO    ] 200
[2026-06-05 08:51:30,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:30,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:51:30,239.239 INFO    ] No update needed
[2026-06-05 08:51:30,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 08:51:30,281.281 INFO    ] 200
[2026-06-05 08:51:30,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:30,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:51:30,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:51:30,376.376 INFO    ] No camera update needed
[2026-06-05 08:51:30,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:51:30,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:51:30,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:51:30,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:51:32,433.433 INFO    ] ================================================
[2026-06-05 08:51:32,450.450 INFO    ] Launching Daemon at Fri Jun  5 08:51:32 IST 2026
[2026-06-05 08:51:32,462.462 INFO    ] ================================================
[2026-06-05 08:51:33,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:51:33
[2026-06-05 08:51:33,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:51:33,949.949 INFO    ] Initializing speech engine...
[2026-06-05 08:51:33,957.957 INFO    ] 2026-06-05 08:51:33
[2026-06-05 08:51:34,218.218 INFO    ] 2026-06-05 08:51:34
[2026-06-05 08:51:34,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:51:34,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:51:34,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:51:34,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:51:34,681.681 INFO    ] time= 05/06/2026 08:51:34
[2026-06-05 08:51:34,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:51:34,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:51:34,885.885 INFO    ] No existing commands found in stream
[2026-06-05 08:51:39,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:51:39,915.915 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 08:51:40,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:51:40,801.801 INFO    ] Checking for system updates...
[2026-06-05 08:51:40,842.842 INFO    ] 200
[2026-06-05 08:51:40,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:40,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:51:40,900.900 INFO    ] No update needed
[2026-06-05 08:51:40,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 08:51:40,940.940 INFO    ] 200
[2026-06-05 08:51:40,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:40,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:51:41,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:51:41,036.036 INFO    ] No camera update needed
[2026-06-05 08:51:41,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:51:41,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:51:41,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:51:41,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:51:43,091.091 INFO    ] ================================================
[2026-06-05 08:51:43,106.106 INFO    ] Launching Daemon at Fri Jun  5 08:51:43 IST 2026
[2026-06-05 08:51:43,117.117 INFO    ] ================================================
[2026-06-05 08:51:43,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:51:43
[2026-06-05 08:51:44,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:51:44,522.522 INFO    ] Initializing speech engine...
[2026-06-05 08:51:44,537.537 INFO    ] 2026-06-05 08:51:44
[2026-06-05 08:51:44,803.803 INFO    ] 2026-06-05 08:51:44
[2026-06-05 08:51:44,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:51:45,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:51:45,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:51:45,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:51:45,161.161 INFO    ] time= 05/06/2026 08:51:45
[2026-06-05 08:51:45,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:51:45,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:51:45,313.313 INFO    ] No existing commands found in stream
[2026-06-05 08:51:50,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:51:50,327.327 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 08:51:51,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:51:51,986.986 INFO    ] Checking for system updates...
[2026-06-05 08:51:52,023.023 INFO    ] 200
[2026-06-05 08:51:52,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:52,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:51:52,091.091 INFO    ] No update needed
[2026-06-05 08:51:52,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 08:51:52,129.129 INFO    ] 200
[2026-06-05 08:51:52,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:51:52,174.174 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:51:52,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:51:52,235.235 INFO    ] No camera update needed
[2026-06-05 08:51:52,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:51:52,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:51:52,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:51:52,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:51:54,295.295 INFO    ] ================================================
[2026-06-05 08:51:54,310.310 INFO    ] Launching Daemon at Fri Jun  5 08:51:54 IST 2026
[2026-06-05 08:51:54,321.321 INFO    ] ================================================
[2026-06-05 08:51:54,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:51:54
[2026-06-05 08:51:55,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:51:55,752.752 INFO    ] Initializing speech engine...
[2026-06-05 08:51:55,758.758 INFO    ] 2026-06-05 08:51:55
[2026-06-05 08:51:56,004.004 INFO    ] 2026-06-05 08:51:55
[2026-06-05 08:51:56,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:51:56,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:51:56,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:51:56,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:51:56,380.380 INFO    ] time= 05/06/2026 08:51:56
[2026-06-05 08:51:56,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:51:56,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:51:56,564.564 INFO    ] No existing commands found in stream
[2026-06-05 08:52:01,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:52:01,592.592 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 08:52:04,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:52:04,074.074 INFO    ] Checking for system updates...
[2026-06-05 08:52:04,120.120 INFO    ] 200
[2026-06-05 08:52:04,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:04,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:52:04,181.181 INFO    ] No update needed
[2026-06-05 08:52:04,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 08:52:04,222.222 INFO    ] 200
[2026-06-05 08:52:04,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:04,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:52:04,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:52:04,312.312 INFO    ] No camera update needed
[2026-06-05 08:52:04,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:52:04,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:52:04,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:52:04,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:52:06,371.371 INFO    ] ================================================
[2026-06-05 08:52:06,386.386 INFO    ] Launching Daemon at Fri Jun  5 08:52:06 IST 2026
[2026-06-05 08:52:06,397.397 INFO    ] ================================================
[2026-06-05 08:52:07,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:52:07
[2026-06-05 08:52:07,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:52:07,843.843 INFO    ] Initializing speech engine...
[2026-06-05 08:52:07,858.858 INFO    ] 2026-06-05 08:52:07
[2026-06-05 08:52:08,140.140 INFO    ] 2026-06-05 08:52:08
[2026-06-05 08:52:08,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:52:08,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:52:08,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:52:08,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:52:08,517.517 INFO    ] time= 05/06/2026 08:52:08
[2026-06-05 08:52:08,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:52:08,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:52:08,643.643 INFO    ] No existing commands found in stream
[2026-06-05 08:52:13,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:52:13,670.670 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 08:52:16,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:52:16,340.340 INFO    ] Checking for system updates...
[2026-06-05 08:52:16,377.377 INFO    ] 200
[2026-06-05 08:52:16,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:16,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:52:16,437.437 INFO    ] No update needed
[2026-06-05 08:52:16,439.439 INFO    ] Checking for camera pi updates...
[2026-06-05 08:52:16,474.474 INFO    ] 200
[2026-06-05 08:52:16,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:16,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:52:16,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:52:16,568.568 INFO    ] No camera update needed
[2026-06-05 08:52:16,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:52:16,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:52:16,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:52:16,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:52:18,629.629 INFO    ] ================================================
[2026-06-05 08:52:18,646.646 INFO    ] Launching Daemon at Fri Jun  5 08:52:18 IST 2026
[2026-06-05 08:52:18,656.656 INFO    ] ================================================
[2026-06-05 08:52:19,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:52:19
[2026-06-05 08:52:19,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:52:20,100.100 INFO    ] Initializing speech engine...
[2026-06-05 08:52:20,107.107 INFO    ] 2026-06-05 08:52:20
[2026-06-05 08:52:20,399.399 INFO    ] 2026-06-05 08:52:20
[2026-06-05 08:52:20,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:52:20,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:52:20,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:52:20,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:52:20,889.889 INFO    ] time= 05/06/2026 08:52:20
[2026-06-05 08:52:20,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:52:20,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:52:21,092.092 INFO    ] No existing commands found in stream
[2026-06-05 08:52:26,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:52:26,107.107 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 08:52:30,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:52:30,237.237 INFO    ] Checking for system updates...
[2026-06-05 08:52:30,273.273 INFO    ] 200
[2026-06-05 08:52:30,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:30,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:52:30,332.332 INFO    ] No update needed
[2026-06-05 08:52:30,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 08:52:30,368.368 INFO    ] 200
[2026-06-05 08:52:30,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:30,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:52:30,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:52:30,469.469 INFO    ] No camera update needed
[2026-06-05 08:52:30,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:52:30,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:52:30,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:52:30,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:52:32,525.525 INFO    ] ================================================
[2026-06-05 08:52:32,542.542 INFO    ] Launching Daemon at Fri Jun  5 08:52:32 IST 2026
[2026-06-05 08:52:32,553.553 INFO    ] ================================================
[2026-06-05 08:52:33,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:52:33
[2026-06-05 08:52:33,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:52:33,980.980 INFO    ] Initializing speech engine...
[2026-06-05 08:52:33,988.988 INFO    ] 2026-06-05 08:52:33
[2026-06-05 08:52:34,260.260 INFO    ] 2026-06-05 08:52:34
[2026-06-05 08:52:34,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:52:34,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:52:34,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:52:34,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:52:34,739.739 INFO    ] time= 05/06/2026 08:52:34
[2026-06-05 08:52:34,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:52:34,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:52:34,966.966 INFO    ] No existing commands found in stream
[2026-06-05 08:52:39,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:52:39,999.999 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 08:52:43,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:52:43,616.616 INFO    ] Checking for system updates...
[2026-06-05 08:52:43,656.656 INFO    ] 200
[2026-06-05 08:52:43,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:43,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:52:43,720.720 INFO    ] No update needed
[2026-06-05 08:52:43,722.722 INFO    ] Checking for camera pi updates...
[2026-06-05 08:52:43,756.756 INFO    ] 200
[2026-06-05 08:52:43,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:43,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:52:43,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:52:43,862.862 INFO    ] No camera update needed
[2026-06-05 08:52:43,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:52:43,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:52:43,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:52:43,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:52:45,919.919 INFO    ] ================================================
[2026-06-05 08:52:45,934.934 INFO    ] Launching Daemon at Fri Jun  5 08:52:45 IST 2026
[2026-06-05 08:52:45,945.945 INFO    ] ================================================
[2026-06-05 08:52:46,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:52:46
[2026-06-05 08:52:47,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:52:47,385.385 INFO    ] Initializing speech engine...
[2026-06-05 08:52:47,391.391 INFO    ] 2026-06-05 08:52:47
[2026-06-05 08:52:47,684.684 INFO    ] 2026-06-05 08:52:47
[2026-06-05 08:52:47,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:52:47,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:52:47,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:52:48,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:52:48,099.099 INFO    ] time= 05/06/2026 08:52:48
[2026-06-05 08:52:48,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:52:48,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:52:48,268.268 INFO    ] No existing commands found in stream
[2026-06-05 08:52:53,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:52:53,291.291 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 08:52:56,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:52:56,642.642 INFO    ] Checking for system updates...
[2026-06-05 08:52:56,678.678 INFO    ] 200
[2026-06-05 08:52:56,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:56,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:52:56,741.741 INFO    ] No update needed
[2026-06-05 08:52:56,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 08:52:56,777.777 INFO    ] 200
[2026-06-05 08:52:56,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:52:56,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:52:56,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:52:56,953.953 INFO    ] No camera update needed
[2026-06-05 08:52:56,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:52:56,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:52:56,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:52:56,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:52:59,010.010 INFO    ] ================================================
[2026-06-05 08:52:59,025.025 INFO    ] Launching Daemon at Fri Jun  5 08:52:59 IST 2026
[2026-06-05 08:52:59,036.036 INFO    ] ================================================
[2026-06-05 08:52:59,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:52:59
[2026-06-05 08:53:00,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:53:00,479.479 INFO    ] Initializing speech engine...
[2026-06-05 08:53:00,487.487 INFO    ] 2026-06-05 08:53:00
[2026-06-05 08:53:00,752.752 INFO    ] 2026-06-05 08:53:00
[2026-06-05 08:53:00,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:53:00,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:53:00,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:53:01,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:53:01,164.164 INFO    ] time= 05/06/2026 08:53:01
[2026-06-05 08:53:01,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:53:01,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:53:01,264.264 INFO    ] No existing commands found in stream
[2026-06-05 08:53:06,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:53:06,298.298 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 08:53:08,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:53:08,107.107 INFO    ] Checking for system updates...
[2026-06-05 08:53:08,143.143 INFO    ] 200
[2026-06-05 08:53:08,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:08,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:53:08,208.208 INFO    ] No update needed
[2026-06-05 08:53:08,210.210 INFO    ] Checking for camera pi updates...
[2026-06-05 08:53:08,245.245 INFO    ] 200
[2026-06-05 08:53:08,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:08,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:53:08,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:53:08,356.356 INFO    ] No camera update needed
[2026-06-05 08:53:08,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:53:08,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:53:08,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:53:08,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:53:10,411.411 INFO    ] ================================================
[2026-06-05 08:53:10,426.426 INFO    ] Launching Daemon at Fri Jun  5 08:53:10 IST 2026
[2026-06-05 08:53:10,437.437 INFO    ] ================================================
[2026-06-05 08:53:11,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:53:11
[2026-06-05 08:53:11,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:53:12,022.022 INFO    ] Initializing speech engine...
[2026-06-05 08:53:12,029.029 INFO    ] 2026-06-05 08:53:12
[2026-06-05 08:53:12,298.298 INFO    ] 2026-06-05 08:53:12
[2026-06-05 08:53:12,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:53:12,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:53:12,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:53:12,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:53:12,789.789 INFO    ] time= 05/06/2026 08:53:12
[2026-06-05 08:53:12,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:53:12,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:53:13,002.002 INFO    ] No existing commands found in stream
[2026-06-05 08:53:18,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:53:18,031.031 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 08:53:19,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:53:19,788.788 INFO    ] Checking for system updates...
[2026-06-05 08:53:19,828.828 INFO    ] 200
[2026-06-05 08:53:19,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:19,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:53:19,887.887 INFO    ] No update needed
[2026-06-05 08:53:19,889.889 INFO    ] Checking for camera pi updates...
[2026-06-05 08:53:19,922.922 INFO    ] 200
[2026-06-05 08:53:19,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:19,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:53:20,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:53:20,005.005 INFO    ] No camera update needed
[2026-06-05 08:53:20,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:53:20,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:53:20,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:53:20,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:53:22,060.060 INFO    ] ================================================
[2026-06-05 08:53:22,074.074 INFO    ] Launching Daemon at Fri Jun  5 08:53:22 IST 2026
[2026-06-05 08:53:22,085.085 INFO    ] ================================================
[2026-06-05 08:53:22,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:53:22
[2026-06-05 08:53:23,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:53:23,516.516 INFO    ] Initializing speech engine...
[2026-06-05 08:53:23,521.521 INFO    ] 2026-06-05 08:53:23
[2026-06-05 08:53:23,781.781 INFO    ] 2026-06-05 08:53:23
[2026-06-05 08:53:23,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:53:24,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:53:24,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:53:24,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:53:24,258.258 INFO    ] time= 05/06/2026 08:53:24
[2026-06-05 08:53:24,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:53:24,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:53:24,483.483 INFO    ] No existing commands found in stream
[2026-06-05 08:53:29,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:53:29,500.500 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 08:53:31,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 08:53:31,611.611 INFO    ] Checking for system updates...
[2026-06-05 08:53:31,648.648 INFO    ] 200
[2026-06-05 08:53:31,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:31,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:53:31,722.722 INFO    ] No update needed
[2026-06-05 08:53:31,726.726 INFO    ] Checking for camera pi updates...
[2026-06-05 08:53:31,772.772 INFO    ] 200
[2026-06-05 08:53:31,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:31,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:53:31,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:53:31,864.864 INFO    ] No camera update needed
[2026-06-05 08:53:31,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:53:31,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:53:31,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:53:31,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:53:33,929.929 INFO    ] ================================================
[2026-06-05 08:53:33,944.944 INFO    ] Launching Daemon at Fri Jun  5 08:53:33 IST 2026
[2026-06-05 08:53:33,956.956 INFO    ] ================================================
[2026-06-05 08:53:34,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:53:34
[2026-06-05 08:53:35,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:53:35,387.387 INFO    ] Initializing speech engine...
[2026-06-05 08:53:35,396.396 INFO    ] 2026-06-05 08:53:35
[2026-06-05 08:53:35,641.641 INFO    ] 2026-06-05 08:53:35
[2026-06-05 08:53:35,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:53:35,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:53:35,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:53:36,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:53:36,020.020 INFO    ] time= 05/06/2026 08:53:36
[2026-06-05 08:53:36,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:53:36,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:53:36,199.199 INFO    ] No existing commands found in stream
[2026-06-05 08:53:41,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:53:41,231.231 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 08:53:44,432.432 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:53:44,434.434 INFO    ] Checking for system updates...
[2026-06-05 08:53:44,471.471 INFO    ] 200
[2026-06-05 08:53:44,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:44,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:53:44,529.529 INFO    ] No update needed
[2026-06-05 08:53:44,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 08:53:44,568.568 INFO    ] 200
[2026-06-05 08:53:44,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:44,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:53:44,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:53:44,662.662 INFO    ] No camera update needed
[2026-06-05 08:53:44,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:53:44,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:53:44,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:53:44,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:53:46,717.717 INFO    ] ================================================
[2026-06-05 08:53:46,733.733 INFO    ] Launching Daemon at Fri Jun  5 08:53:46 IST 2026
[2026-06-05 08:53:46,743.743 INFO    ] ================================================
[2026-06-05 08:53:47,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:53:47
[2026-06-05 08:53:47,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:53:48,205.205 INFO    ] Initializing speech engine...
[2026-06-05 08:53:48,214.214 INFO    ] 2026-06-05 08:53:48
[2026-06-05 08:53:48,474.474 INFO    ] 2026-06-05 08:53:48
[2026-06-05 08:53:48,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:53:48,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:53:48,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:53:48,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:53:48,835.835 INFO    ] time= 05/06/2026 08:53:48
[2026-06-05 08:53:48,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:53:48,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:53:49,016.016 INFO    ] No existing commands found in stream
[2026-06-05 08:53:54,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:53:54,049.049 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 08:53:55,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:53:55,647.647 INFO    ] Checking for system updates...
[2026-06-05 08:53:55,688.688 INFO    ] 200
[2026-06-05 08:53:55,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:55,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:53:55,751.751 INFO    ] No update needed
[2026-06-05 08:53:55,753.753 INFO    ] Checking for camera pi updates...
[2026-06-05 08:53:55,786.786 INFO    ] 200
[2026-06-05 08:53:55,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:53:55,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:53:55,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:53:55,885.885 INFO    ] No camera update needed
[2026-06-05 08:53:55,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:53:55,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:53:55,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:53:55,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:53:57,942.942 INFO    ] ================================================
[2026-06-05 08:53:57,957.957 INFO    ] Launching Daemon at Fri Jun  5 08:53:57 IST 2026
[2026-06-05 08:53:57,968.968 INFO    ] ================================================
[2026-06-05 08:53:58,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:53:58
[2026-06-05 08:53:59,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:53:59,395.395 INFO    ] Initializing speech engine...
[2026-06-05 08:53:59,404.404 INFO    ] 2026-06-05 08:53:59
[2026-06-05 08:53:59,694.694 INFO    ] 2026-06-05 08:53:59
[2026-06-05 08:53:59,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:53:59,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:54:00,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:54:00,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:54:00,663.663 INFO    ] time= 05/06/2026 08:54:00
[2026-06-05 08:54:00,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:54:00,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:54:00,961.961 INFO    ] No existing commands found in stream
[2026-06-05 08:54:05,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:54:05,974.974 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 08:54:08,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:54:08,368.368 INFO    ] Checking for system updates...
[2026-06-05 08:54:08,404.404 INFO    ] 200
[2026-06-05 08:54:08,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:08,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:54:08,467.467 INFO    ] No update needed
[2026-06-05 08:54:08,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 08:54:08,507.507 INFO    ] 200
[2026-06-05 08:54:08,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:08,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:54:08,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:54:08,607.607 INFO    ] No camera update needed
[2026-06-05 08:54:08,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:54:08,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:54:08,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:54:08,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:54:10,662.662 INFO    ] ================================================
[2026-06-05 08:54:10,677.677 INFO    ] Launching Daemon at Fri Jun  5 08:54:10 IST 2026
[2026-06-05 08:54:10,688.688 INFO    ] ================================================
[2026-06-05 08:54:11,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:54:11
[2026-06-05 08:54:11,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:54:12,088.088 INFO    ] Initializing speech engine...
[2026-06-05 08:54:12,094.094 INFO    ] 2026-06-05 08:54:12
[2026-06-05 08:54:12,393.393 INFO    ] 2026-06-05 08:54:12
[2026-06-05 08:54:12,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:54:12,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:54:12,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:54:12,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:54:12,801.801 INFO    ] time= 05/06/2026 08:54:12
[2026-06-05 08:54:12,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:54:12,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:54:12,896.896 INFO    ] No existing commands found in stream
[2026-06-05 08:54:17,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:54:17,935.935 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 08:54:22,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:54:22,103.103 INFO    ] Checking for system updates...
[2026-06-05 08:54:22,139.139 INFO    ] 200
[2026-06-05 08:54:22,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:22,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:54:22,202.202 INFO    ] No update needed
[2026-06-05 08:54:22,204.204 INFO    ] Checking for camera pi updates...
[2026-06-05 08:54:22,240.240 INFO    ] 200
[2026-06-05 08:54:22,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:22,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:54:22,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:54:22,333.333 INFO    ] No camera update needed
[2026-06-05 08:54:22,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:54:22,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:54:22,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:54:22,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:54:24,388.388 INFO    ] ================================================
[2026-06-05 08:54:24,404.404 INFO    ] Launching Daemon at Fri Jun  5 08:54:24 IST 2026
[2026-06-05 08:54:24,415.415 INFO    ] ================================================
[2026-06-05 08:54:24,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:54:24
[2026-06-05 08:54:25,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:54:25,828.828 INFO    ] Initializing speech engine...
[2026-06-05 08:54:25,840.840 INFO    ] 2026-06-05 08:54:25
[2026-06-05 08:54:26,105.105 INFO    ] 2026-06-05 08:54:26
[2026-06-05 08:54:26,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:54:26,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:54:26,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:54:26,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:54:26,481.481 INFO    ] time= 05/06/2026 08:54:26
[2026-06-05 08:54:26,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:54:26,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:54:26,670.670 INFO    ] No existing commands found in stream
[2026-06-05 08:54:31,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:54:31,697.697 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 08:54:33,224.224 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:54:33,227.227 INFO    ] Checking for system updates...
[2026-06-05 08:54:33,266.266 INFO    ] 200
[2026-06-05 08:54:33,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:33,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:54:33,323.323 INFO    ] No update needed
[2026-06-05 08:54:33,326.326 INFO    ] Checking for camera pi updates...
[2026-06-05 08:54:33,366.366 INFO    ] 200
[2026-06-05 08:54:33,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:33,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:54:33,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:54:33,463.463 INFO    ] No camera update needed
[2026-06-05 08:54:33,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:54:33,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:54:33,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:54:33,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:54:35,519.519 INFO    ] ================================================
[2026-06-05 08:54:35,533.533 INFO    ] Launching Daemon at Fri Jun  5 08:54:35 IST 2026
[2026-06-05 08:54:35,547.547 INFO    ] ================================================
[2026-06-05 08:54:36,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:54:36
[2026-06-05 08:54:36,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:54:37,023.023 INFO    ] Initializing speech engine...
[2026-06-05 08:54:37,031.031 INFO    ] 2026-06-05 08:54:37
[2026-06-05 08:54:37,287.287 INFO    ] 2026-06-05 08:54:37
[2026-06-05 08:54:37,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:54:37,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:54:37,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:54:37,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:54:37,760.760 INFO    ] time= 05/06/2026 08:54:37
[2026-06-05 08:54:37,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:54:37,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:54:37,970.970 INFO    ] No existing commands found in stream
[2026-06-05 08:54:42,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:54:42,995.995 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 08:54:45,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:54:45,647.647 INFO    ] Checking for system updates...
[2026-06-05 08:54:45,700.700 INFO    ] 200
[2026-06-05 08:54:45,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:45,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:54:45,758.758 INFO    ] No update needed
[2026-06-05 08:54:45,760.760 INFO    ] Checking for camera pi updates...
[2026-06-05 08:54:45,798.798 INFO    ] 200
[2026-06-05 08:54:45,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:45,844.844 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:54:45,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:54:45,892.892 INFO    ] No camera update needed
[2026-06-05 08:54:45,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:54:45,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:54:45,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:54:45,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:54:47,949.949 INFO    ] ================================================
[2026-06-05 08:54:47,964.964 INFO    ] Launching Daemon at Fri Jun  5 08:54:47 IST 2026
[2026-06-05 08:54:47,975.975 INFO    ] ================================================
[2026-06-05 08:54:48,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:54:48
[2026-06-05 08:54:49,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:54:49,524.524 INFO    ] Initializing speech engine...
[2026-06-05 08:54:49,530.530 INFO    ] 2026-06-05 08:54:49
[2026-06-05 08:54:49,810.810 INFO    ] 2026-06-05 08:54:49
[2026-06-05 08:54:49,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:54:50,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:54:50,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:54:50,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:54:50,349.349 INFO    ] time= 05/06/2026 08:54:50
[2026-06-05 08:54:50,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:54:50,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:54:50,490.490 INFO    ] No existing commands found in stream
[2026-06-05 08:54:55,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:54:55,518.518 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 08:54:58,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:54:58,172.172 INFO    ] Checking for system updates...
[2026-06-05 08:54:58,209.209 INFO    ] 200
[2026-06-05 08:54:58,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:58,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:54:58,272.272 INFO    ] No update needed
[2026-06-05 08:54:58,275.275 INFO    ] Checking for camera pi updates...
[2026-06-05 08:54:58,312.312 INFO    ] 200
[2026-06-05 08:54:58,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:54:58,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:54:58,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:54:58,410.410 INFO    ] No camera update needed
[2026-06-05 08:54:58,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:54:58,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:54:58,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:54:58,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:55:00,466.466 INFO    ] ================================================
[2026-06-05 08:55:00,482.482 INFO    ] Launching Daemon at Fri Jun  5 08:55:00 IST 2026
[2026-06-05 08:55:00,493.493 INFO    ] ================================================
[2026-06-05 08:55:01,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:55:01
[2026-06-05 08:55:01,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:55:01,962.962 INFO    ] Initializing speech engine...
[2026-06-05 08:55:01,968.968 INFO    ] 2026-06-05 08:55:01
[2026-06-05 08:55:02,691.691 INFO    ] 2026-06-05 08:55:02
[2026-06-05 08:55:02,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:55:02,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:55:03,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:55:03,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:55:03,289.289 INFO    ] time= 05/06/2026 08:55:03
[2026-06-05 08:55:03,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:55:03,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:55:03,432.432 INFO    ] No existing commands found in stream
[2026-06-05 08:55:08,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:55:08,446.446 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 08:55:11,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:55:11,166.166 INFO    ] Checking for system updates...
[2026-06-05 08:55:11,207.207 INFO    ] 200
[2026-06-05 08:55:11,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:55:11,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:55:11,268.268 INFO    ] No update needed
[2026-06-05 08:55:11,271.271 INFO    ] Checking for camera pi updates...
[2026-06-05 08:55:11,310.310 INFO    ] 200
[2026-06-05 08:55:11,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:55:11,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:55:11,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:55:11,443.443 INFO    ] No camera update needed
[2026-06-05 08:55:11,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:55:11,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:55:11,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:55:11,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:55:13,507.507 INFO    ] ================================================
[2026-06-05 08:55:13,523.523 INFO    ] Launching Daemon at Fri Jun  5 08:55:13 IST 2026
[2026-06-05 08:55:13,534.534 INFO    ] ================================================
[2026-06-05 08:55:14,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:55:14
[2026-06-05 08:55:14,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:55:15,012.012 INFO    ] Initializing speech engine...
[2026-06-05 08:55:15,018.018 INFO    ] 2026-06-05 08:55:15
[2026-06-05 08:55:15,282.282 INFO    ] 2026-06-05 08:55:15
[2026-06-05 08:55:15,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:55:15,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:55:15,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:55:15,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:55:15,772.772 INFO    ] time= 05/06/2026 08:55:15
[2026-06-05 08:55:15,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:55:15,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:55:15,988.988 INFO    ] No existing commands found in stream
[2026-06-05 08:55:21,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:55:21,004.004 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 08:55:24,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:55:24,133.133 INFO    ] Checking for system updates...
[2026-06-05 08:55:24,173.173 INFO    ] 200
[2026-06-05 08:55:24,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:55:24,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:55:24,239.239 INFO    ] No update needed
[2026-06-05 08:55:24,241.241 INFO    ] Checking for camera pi updates...
[2026-06-05 08:55:24,281.281 INFO    ] 200
[2026-06-05 08:55:24,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:55:24,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:55:24,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:55:24,382.382 INFO    ] No camera update needed
[2026-06-05 08:55:24,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:55:24,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:55:24,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:55:24,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:55:26,440.440 INFO    ] ================================================
[2026-06-05 08:55:26,456.456 INFO    ] Launching Daemon at Fri Jun  5 08:55:26 IST 2026
[2026-06-05 08:55:26,467.467 INFO    ] ================================================
[2026-06-05 08:55:27,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:55:27
[2026-06-05 08:55:27,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:55:28,110.110 INFO    ] Initializing speech engine...
[2026-06-05 08:55:28,119.119 INFO    ] 2026-06-05 08:55:28
[2026-06-05 08:55:28,409.409 INFO    ] 2026-06-05 08:55:28
[2026-06-05 08:55:28,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:55:29,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:55:29,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:55:29,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:55:29,955.955 INFO    ] time= 05/06/2026 08:55:29
[2026-06-05 08:55:29,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:55:29,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:55:30,112.112 INFO    ] No existing commands found in stream
[2026-06-05 08:55:35,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:55:35,130.130 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 08:55:38,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:55:38,777.777 INFO    ] Checking for system updates...
[2026-06-05 08:55:38,818.818 INFO    ] 200
[2026-06-05 08:55:38,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:55:38,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:55:38,886.886 INFO    ] No update needed
[2026-06-05 08:55:38,889.889 INFO    ] Checking for camera pi updates...
[2026-06-05 08:55:38,924.924 INFO    ] 200
[2026-06-05 08:55:38,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:55:38,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:55:39,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:55:39,021.021 INFO    ] No camera update needed
[2026-06-05 08:55:39,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:55:39,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:55:39,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:55:39,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:55:41,079.079 INFO    ] ================================================
[2026-06-05 08:55:41,095.095 INFO    ] Launching Daemon at Fri Jun  5 08:55:41 IST 2026
[2026-06-05 08:55:41,107.107 INFO    ] ================================================
[2026-06-05 08:55:41,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:55:41
[2026-06-05 08:55:42,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:55:42,745.745 INFO    ] Initializing speech engine...
[2026-06-05 08:55:42,755.755 INFO    ] 2026-06-05 08:55:42
[2026-06-05 08:55:43,026.026 INFO    ] 2026-06-05 08:55:43
[2026-06-05 08:55:43,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:55:43,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:55:43,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:55:43,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:55:43,506.506 INFO    ] time= 05/06/2026 08:55:43
[2026-06-05 08:55:43,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:55:43,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:55:43,734.734 INFO    ] No existing commands found in stream
[2026-06-05 08:55:48,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:55:48,767.767 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 08:55:50,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:55:50,748.748 INFO    ] Checking for system updates...
[2026-06-05 08:55:50,786.786 INFO    ] 200
[2026-06-05 08:55:50,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:55:50,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:55:50,847.847 INFO    ] No update needed
[2026-06-05 08:55:50,850.850 INFO    ] Checking for camera pi updates...
[2026-06-05 08:55:50,884.884 INFO    ] 200
[2026-06-05 08:55:50,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:55:50,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:55:50,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:55:50,995.995 INFO    ] No camera update needed
[2026-06-05 08:55:50,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:55:51,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:55:51,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:55:51,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:55:53,056.056 INFO    ] ================================================
[2026-06-05 08:55:53,071.071 INFO    ] Launching Daemon at Fri Jun  5 08:55:53 IST 2026
[2026-06-05 08:55:53,082.082 INFO    ] ================================================
[2026-06-05 08:55:53,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:55:53
[2026-06-05 08:55:54,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:55:54,494.494 INFO    ] Initializing speech engine...
[2026-06-05 08:55:54,503.503 INFO    ] 2026-06-05 08:55:54
[2026-06-05 08:55:54,797.797 INFO    ] 2026-06-05 08:55:54
[2026-06-05 08:55:54,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:55:55,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:55:55,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:55:55,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:55:55,202.202 INFO    ] time= 05/06/2026 08:55:55
[2026-06-05 08:55:55,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:55:55,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:55:55,282.282 INFO    ] No existing commands found in stream
[2026-06-05 08:56:00,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:56:00,320.320 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 08:56:01,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:56:01,945.945 INFO    ] Checking for system updates...
[2026-06-05 08:56:01,990.990 INFO    ] 200
[2026-06-05 08:56:01,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:02,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:02,066.066 INFO    ] No update needed
[2026-06-05 08:56:02,069.069 INFO    ] Checking for camera pi updates...
[2026-06-05 08:56:02,116.116 INFO    ] 200
[2026-06-05 08:56:02,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:02,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:56:02,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:02,220.220 INFO    ] No camera update needed
[2026-06-05 08:56:02,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:56:02,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:56:02,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:56:02,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:56:04,280.280 INFO    ] ================================================
[2026-06-05 08:56:04,296.296 INFO    ] Launching Daemon at Fri Jun  5 08:56:04 IST 2026
[2026-06-05 08:56:04,307.307 INFO    ] ================================================
[2026-06-05 08:56:04,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:56:04
[2026-06-05 08:56:05,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:56:05,741.741 INFO    ] Initializing speech engine...
[2026-06-05 08:56:05,750.750 INFO    ] 2026-06-05 08:56:05
[2026-06-05 08:56:06,028.028 INFO    ] 2026-06-05 08:56:06
[2026-06-05 08:56:06,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:56:06,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:56:06,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:56:06,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:56:06,505.505 INFO    ] time= 05/06/2026 08:56:06
[2026-06-05 08:56:06,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:56:06,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:56:06,719.719 INFO    ] No existing commands found in stream
[2026-06-05 08:56:11,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:56:11,744.744 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 08:56:14,050.050 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:56:14,053.053 INFO    ] Checking for system updates...
[2026-06-05 08:56:14,089.089 INFO    ] 200
[2026-06-05 08:56:14,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:14,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:14,147.147 INFO    ] No update needed
[2026-06-05 08:56:14,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 08:56:14,187.187 INFO    ] 200
[2026-06-05 08:56:14,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:14,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:56:14,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:14,284.284 INFO    ] No camera update needed
[2026-06-05 08:56:14,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:56:14,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:56:14,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:56:14,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:56:16,340.340 INFO    ] ================================================
[2026-06-05 08:56:16,355.355 INFO    ] Launching Daemon at Fri Jun  5 08:56:16 IST 2026
[2026-06-05 08:56:16,367.367 INFO    ] ================================================
[2026-06-05 08:56:16,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:56:16
[2026-06-05 08:56:17,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:56:17,781.781 INFO    ] Initializing speech engine...
[2026-06-05 08:56:17,790.790 INFO    ] 2026-06-05 08:56:17
[2026-06-05 08:56:18,082.082 INFO    ] 2026-06-05 08:56:18
[2026-06-05 08:56:18,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:56:18,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:56:18,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:56:18,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:56:18,460.460 INFO    ] time= 05/06/2026 08:56:18
[2026-06-05 08:56:18,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:56:18,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:56:18,587.587 INFO    ] No existing commands found in stream
[2026-06-05 08:56:23,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:56:23,604.604 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 08:56:24,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:56:24,329.329 INFO    ] Checking for system updates...
[2026-06-05 08:56:24,366.366 INFO    ] 200
[2026-06-05 08:56:24,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:24,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:24,435.435 INFO    ] No update needed
[2026-06-05 08:56:24,438.438 INFO    ] Checking for camera pi updates...
[2026-06-05 08:56:24,473.473 INFO    ] 200
[2026-06-05 08:56:24,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:24,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:56:24,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:24,568.568 INFO    ] No camera update needed
[2026-06-05 08:56:24,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:56:24,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:56:24,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:56:24,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:56:26,625.625 INFO    ] ================================================
[2026-06-05 08:56:26,640.640 INFO    ] Launching Daemon at Fri Jun  5 08:56:26 IST 2026
[2026-06-05 08:56:26,651.651 INFO    ] ================================================
[2026-06-05 08:56:27,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:56:27
[2026-06-05 08:56:27,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:56:28,077.077 INFO    ] Initializing speech engine...
[2026-06-05 08:56:28,097.097 INFO    ] 2026-06-05 08:56:28
[2026-06-05 08:56:28,348.348 INFO    ] 2026-06-05 08:56:28
[2026-06-05 08:56:28,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:56:29,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:56:29,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:56:29,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:56:29,925.925 INFO    ] time= 05/06/2026 08:56:29
[2026-06-05 08:56:29,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:56:29,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:56:30,055.055 INFO    ] No existing commands found in stream
[2026-06-05 08:56:35,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:56:35,079.079 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 08:56:35,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 08:56:35,962.962 INFO    ] Checking for system updates...
[2026-06-05 08:56:36,002.002 INFO    ] 200
[2026-06-05 08:56:36,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:36,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:36,074.074 INFO    ] No update needed
[2026-06-05 08:56:36,078.078 INFO    ] Checking for camera pi updates...
[2026-06-05 08:56:36,114.114 INFO    ] 200
[2026-06-05 08:56:36,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:36,174.174 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:56:36,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:36,230.230 INFO    ] No camera update needed
[2026-06-05 08:56:36,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:56:36,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:56:36,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:56:36,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:56:38,289.289 INFO    ] ================================================
[2026-06-05 08:56:38,305.305 INFO    ] Launching Daemon at Fri Jun  5 08:56:38 IST 2026
[2026-06-05 08:56:38,316.316 INFO    ] ================================================
[2026-06-05 08:56:38,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:56:38
[2026-06-05 08:56:39,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:56:39,769.769 INFO    ] Initializing speech engine...
[2026-06-05 08:56:39,778.778 INFO    ] 2026-06-05 08:56:39
[2026-06-05 08:56:40,028.028 INFO    ] 2026-06-05 08:56:40
[2026-06-05 08:56:40,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:56:40,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:56:40,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:56:40,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:56:40,497.497 INFO    ] time= 05/06/2026 08:56:40
[2026-06-05 08:56:40,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:56:40,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:56:40,755.755 INFO    ] No existing commands found in stream
[2026-06-05 08:56:45,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:56:45,782.782 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 08:56:47,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:56:47,859.859 INFO    ] Checking for system updates...
[2026-06-05 08:56:47,897.897 INFO    ] 200
[2026-06-05 08:56:47,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:47,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:47,957.957 INFO    ] No update needed
[2026-06-05 08:56:47,959.959 INFO    ] Checking for camera pi updates...
[2026-06-05 08:56:47,994.994 INFO    ] 200
[2026-06-05 08:56:47,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:56:48,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:56:48,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:56:48,094.094 INFO    ] No camera update needed
[2026-06-05 08:56:48,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:56:48,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:56:48,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:56:48,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:56:50,152.152 INFO    ] ================================================
[2026-06-05 08:56:50,167.167 INFO    ] Launching Daemon at Fri Jun  5 08:56:50 IST 2026
[2026-06-05 08:56:50,178.178 INFO    ] ================================================
[2026-06-05 08:56:50,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:56:50
[2026-06-05 08:56:51,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:56:51,629.629 INFO    ] Initializing speech engine...
[2026-06-05 08:56:51,639.639 INFO    ] 2026-06-05 08:56:51
[2026-06-05 08:56:51,888.888 INFO    ] 2026-06-05 08:56:51
[2026-06-05 08:56:51,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:56:52,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:56:52,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:56:52,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:56:52,359.359 INFO    ] time= 05/06/2026 08:56:52
[2026-06-05 08:56:52,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:56:52,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:56:52,566.566 INFO    ] No existing commands found in stream
[2026-06-05 08:56:57,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:56:57,596.596 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 08:57:00,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:57:00,004.004 INFO    ] Checking for system updates...
[2026-06-05 08:57:00,040.040 INFO    ] 200
[2026-06-05 08:57:00,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:00,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:57:00,099.099 INFO    ] No update needed
[2026-06-05 08:57:00,102.102 INFO    ] Checking for camera pi updates...
[2026-06-05 08:57:00,138.138 INFO    ] 200
[2026-06-05 08:57:00,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:00,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:57:00,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:57:00,237.237 INFO    ] No camera update needed
[2026-06-05 08:57:00,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:57:00,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:57:00,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:57:00,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:57:02,302.302 INFO    ] ================================================
[2026-06-05 08:57:02,333.333 INFO    ] Launching Daemon at Fri Jun  5 08:57:02 IST 2026
[2026-06-05 08:57:02,353.353 INFO    ] ================================================
[2026-06-05 08:57:03,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:57:03
[2026-06-05 08:57:03,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:57:04,060.060 INFO    ] Initializing speech engine...
[2026-06-05 08:57:04,068.068 INFO    ] 2026-06-05 08:57:04
[2026-06-05 08:57:04,317.317 INFO    ] 2026-06-05 08:57:04
[2026-06-05 08:57:04,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:57:04,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:57:04,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:57:04,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:57:04,808.808 INFO    ] time= 05/06/2026 08:57:04
[2026-06-05 08:57:04,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:57:04,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:57:05,007.007 INFO    ] No existing commands found in stream
[2026-06-05 08:57:10,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:57:10,035.035 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 08:57:10,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:57:10,628.628 INFO    ] Checking for system updates...
[2026-06-05 08:57:10,664.664 INFO    ] 200
[2026-06-05 08:57:10,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:10,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:57:10,727.727 INFO    ] No update needed
[2026-06-05 08:57:10,730.730 INFO    ] Checking for camera pi updates...
[2026-06-05 08:57:10,765.765 INFO    ] 200
[2026-06-05 08:57:10,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:10,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:57:10,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:57:10,960.960 INFO    ] No camera update needed
[2026-06-05 08:57:10,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:57:10,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:57:10,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:57:10,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:57:13,018.018 INFO    ] ================================================
[2026-06-05 08:57:13,033.033 INFO    ] Launching Daemon at Fri Jun  5 08:57:13 IST 2026
[2026-06-05 08:57:13,043.043 INFO    ] ================================================
[2026-06-05 08:57:13,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:57:13
[2026-06-05 08:57:14,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:57:14,458.458 INFO    ] Initializing speech engine...
[2026-06-05 08:57:14,481.481 INFO    ] 2026-06-05 08:57:14
[2026-06-05 08:57:14,740.740 INFO    ] 2026-06-05 08:57:14
[2026-06-05 08:57:14,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:57:15,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:57:15,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:57:15,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:57:15,250.250 INFO    ] time= 05/06/2026 08:57:15
[2026-06-05 08:57:15,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:57:15,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:57:15,432.432 INFO    ] No existing commands found in stream
[2026-06-05 08:57:20,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:57:20,457.457 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 08:57:24,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:57:24,462.462 INFO    ] Checking for system updates...
[2026-06-05 08:57:24,499.499 INFO    ] 200
[2026-06-05 08:57:24,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:24,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:57:24,564.564 INFO    ] No update needed
[2026-06-05 08:57:24,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 08:57:24,605.605 INFO    ] 200
[2026-06-05 08:57:24,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:24,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:57:24,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:57:24,704.704 INFO    ] No camera update needed
[2026-06-05 08:57:24,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:57:24,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:57:24,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:57:24,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:57:26,763.763 INFO    ] ================================================
[2026-06-05 08:57:26,778.778 INFO    ] Launching Daemon at Fri Jun  5 08:57:26 IST 2026
[2026-06-05 08:57:26,788.788 INFO    ] ================================================
[2026-06-05 08:57:27,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:57:27
[2026-06-05 08:57:28,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:57:28,398.398 INFO    ] Initializing speech engine...
[2026-06-05 08:57:28,412.412 INFO    ] 2026-06-05 08:57:28
[2026-06-05 08:57:28,719.719 INFO    ] 2026-06-05 08:57:28
[2026-06-05 08:57:28,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:57:29,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:57:29,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:57:30,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:57:30,018.018 INFO    ] time= 05/06/2026 08:57:30
[2026-06-05 08:57:30,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:57:30,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:57:30,098.098 INFO    ] No existing commands found in stream
[2026-06-05 08:57:35,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:57:35,111.111 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 08:57:38,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:57:38,098.098 INFO    ] Checking for system updates...
[2026-06-05 08:57:38,135.135 INFO    ] 200
[2026-06-05 08:57:38,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:38,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:57:38,201.201 INFO    ] No update needed
[2026-06-05 08:57:38,204.204 INFO    ] Checking for camera pi updates...
[2026-06-05 08:57:38,240.240 INFO    ] 200
[2026-06-05 08:57:38,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:38,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:57:38,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:57:38,352.352 INFO    ] No camera update needed
[2026-06-05 08:57:38,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:57:38,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:57:38,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:57:38,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:57:40,411.411 INFO    ] ================================================
[2026-06-05 08:57:40,427.427 INFO    ] Launching Daemon at Fri Jun  5 08:57:40 IST 2026
[2026-06-05 08:57:40,438.438 INFO    ] ================================================
[2026-06-05 08:57:41,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:57:41
[2026-06-05 08:57:41,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:57:41,849.849 INFO    ] Initializing speech engine...
[2026-06-05 08:57:41,854.854 INFO    ] 2026-06-05 08:57:41
[2026-06-05 08:57:42,129.129 INFO    ] 2026-06-05 08:57:42
[2026-06-05 08:57:42,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:57:42,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:57:42,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:57:42,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:57:42,502.502 INFO    ] time= 05/06/2026 08:57:42
[2026-06-05 08:57:42,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:57:42,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:57:42,648.648 INFO    ] No existing commands found in stream
[2026-06-05 08:57:47,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:57:47,676.676 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 08:57:51,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:57:51,406.406 INFO    ] Checking for system updates...
[2026-06-05 08:57:51,446.446 INFO    ] 200
[2026-06-05 08:57:51,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:51,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:57:51,505.505 INFO    ] No update needed
[2026-06-05 08:57:51,513.513 INFO    ] Checking for camera pi updates...
[2026-06-05 08:57:51,564.564 INFO    ] 200
[2026-06-05 08:57:51,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:57:51,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:57:51,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:57:51,665.665 INFO    ] No camera update needed
[2026-06-05 08:57:51,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:57:51,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:57:51,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:57:51,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:57:53,724.724 INFO    ] ================================================
[2026-06-05 08:57:53,739.739 INFO    ] Launching Daemon at Fri Jun  5 08:57:53 IST 2026
[2026-06-05 08:57:53,750.750 INFO    ] ================================================
[2026-06-05 08:57:54,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:57:54
[2026-06-05 08:57:54,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:57:55,165.165 INFO    ] Initializing speech engine...
[2026-06-05 08:57:55,180.180 INFO    ] 2026-06-05 08:57:55
[2026-06-05 08:57:55,459.459 INFO    ] 2026-06-05 08:57:55
[2026-06-05 08:57:55,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:57:55,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:57:55,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:57:55,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:57:55,875.875 INFO    ] time= 05/06/2026 08:57:55
[2026-06-05 08:57:55,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:57:55,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:57:56,001.001 INFO    ] No existing commands found in stream
[2026-06-05 08:58:01,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:58:01,034.034 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 08:58:04,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:58:04,907.907 INFO    ] Checking for system updates...
[2026-06-05 08:58:04,943.943 INFO    ] 200
[2026-06-05 08:58:04,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:04,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:58:05,000.000 INFO    ] No update needed
[2026-06-05 08:58:05,002.002 INFO    ] Checking for camera pi updates...
[2026-06-05 08:58:05,036.036 INFO    ] 200
[2026-06-05 08:58:05,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:05,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:58:05,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:58:05,126.126 INFO    ] No camera update needed
[2026-06-05 08:58:05,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:58:05,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:58:05,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:58:05,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:58:07,183.183 INFO    ] ================================================
[2026-06-05 08:58:07,198.198 INFO    ] Launching Daemon at Fri Jun  5 08:58:07 IST 2026
[2026-06-05 08:58:07,208.208 INFO    ] ================================================
[2026-06-05 08:58:07,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:58:07
[2026-06-05 08:58:08,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:58:08,609.609 INFO    ] Initializing speech engine...
[2026-06-05 08:58:08,623.623 INFO    ] 2026-06-05 08:58:08
[2026-06-05 08:58:08,900.900 INFO    ] 2026-06-05 08:58:08
[2026-06-05 08:58:08,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:58:09,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:58:09,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:58:09,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:58:09,934.934 INFO    ] time= 05/06/2026 08:58:09
[2026-06-05 08:58:09,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:58:09,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:58:10,052.052 INFO    ] No existing commands found in stream
[2026-06-05 08:58:15,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:58:15,080.080 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 08:58:16,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 08:58:17,002.002 INFO    ] Checking for system updates...
[2026-06-05 08:58:17,041.041 INFO    ] 200
[2026-06-05 08:58:17,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:17,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:58:17,102.102 INFO    ] No update needed
[2026-06-05 08:58:17,104.104 INFO    ] Checking for camera pi updates...
[2026-06-05 08:58:17,140.140 INFO    ] 200
[2026-06-05 08:58:17,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:17,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:58:17,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:58:17,266.266 INFO    ] No camera update needed
[2026-06-05 08:58:17,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:58:17,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:58:17,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:58:17,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:58:19,328.328 INFO    ] ================================================
[2026-06-05 08:58:19,344.344 INFO    ] Launching Daemon at Fri Jun  5 08:58:19 IST 2026
[2026-06-05 08:58:19,356.356 INFO    ] ================================================
[2026-06-05 08:58:20,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:58:20
[2026-06-05 08:58:20,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:58:21,037.037 INFO    ] Initializing speech engine...
[2026-06-05 08:58:21,044.044 INFO    ] 2026-06-05 08:58:21
[2026-06-05 08:58:21,339.339 INFO    ] 2026-06-05 08:58:21
[2026-06-05 08:58:21,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:58:21,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:58:21,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:58:21,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:58:21,804.804 INFO    ] time= 05/06/2026 08:58:21
[2026-06-05 08:58:21,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:58:21,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:58:22,020.020 INFO    ] No existing commands found in stream
[2026-06-05 08:58:27,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:58:27,056.056 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 08:58:31,156.156 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:58:31,159.159 INFO    ] Checking for system updates...
[2026-06-05 08:58:31,197.197 INFO    ] 200
[2026-06-05 08:58:31,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:31,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:58:31,258.258 INFO    ] No update needed
[2026-06-05 08:58:31,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 08:58:31,297.297 INFO    ] 200
[2026-06-05 08:58:31,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:31,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:58:31,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:58:31,386.386 INFO    ] No camera update needed
[2026-06-05 08:58:31,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:58:31,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:58:31,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:58:31,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:58:33,447.447 INFO    ] ================================================
[2026-06-05 08:58:33,467.467 INFO    ] Launching Daemon at Fri Jun  5 08:58:33 IST 2026
[2026-06-05 08:58:33,478.478 INFO    ] ================================================
[2026-06-05 08:58:34,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:58:34
[2026-06-05 08:58:34,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:58:34,919.919 INFO    ] Initializing speech engine...
[2026-06-05 08:58:34,925.925 INFO    ] 2026-06-05 08:58:34
[2026-06-05 08:58:35,225.225 INFO    ] 2026-06-05 08:58:35
[2026-06-05 08:58:35,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:58:35,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:58:35,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:58:35,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:58:35,880.880 INFO    ] time= 05/06/2026 08:58:35
[2026-06-05 08:58:35,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:58:35,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:58:36,026.026 INFO    ] No existing commands found in stream
[2026-06-05 08:58:41,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:58:41,049.049 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 08:58:42,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:58:42,604.604 INFO    ] Checking for system updates...
[2026-06-05 08:58:42,641.641 INFO    ] 200
[2026-06-05 08:58:42,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:42,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:58:42,699.699 INFO    ] No update needed
[2026-06-05 08:58:42,701.701 INFO    ] Checking for camera pi updates...
[2026-06-05 08:58:42,739.739 INFO    ] 200
[2026-06-05 08:58:42,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:42,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:58:42,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:58:42,848.848 INFO    ] No camera update needed
[2026-06-05 08:58:42,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:58:42,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:58:42,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:58:42,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:58:44,903.903 INFO    ] ================================================
[2026-06-05 08:58:44,919.919 INFO    ] Launching Daemon at Fri Jun  5 08:58:44 IST 2026
[2026-06-05 08:58:44,930.930 INFO    ] ================================================
[2026-06-05 08:58:45,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:58:45
[2026-06-05 08:58:46,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:58:46,394.394 INFO    ] Initializing speech engine...
[2026-06-05 08:58:46,401.401 INFO    ] 2026-06-05 08:58:46
[2026-06-05 08:58:46,710.710 INFO    ] 2026-06-05 08:58:46
[2026-06-05 08:58:46,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:58:46,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:58:47,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:58:47,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:58:47,226.226 INFO    ] time= 05/06/2026 08:58:47
[2026-06-05 08:58:47,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:58:47,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:58:47,523.523 INFO    ] No existing commands found in stream
[2026-06-05 08:58:52,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:58:52,552.552 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 08:58:53,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:58:53,214.214 INFO    ] Checking for system updates...
[2026-06-05 08:58:53,250.250 INFO    ] 200
[2026-06-05 08:58:53,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:53,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:58:53,309.309 INFO    ] No update needed
[2026-06-05 08:58:53,311.311 INFO    ] Checking for camera pi updates...
[2026-06-05 08:58:53,346.346 INFO    ] 200
[2026-06-05 08:58:53,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:58:53,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:58:53,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:58:53,436.436 INFO    ] No camera update needed
[2026-06-05 08:58:53,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:58:53,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:58:53,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:58:53,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:58:55,492.492 INFO    ] ================================================
[2026-06-05 08:58:55,508.508 INFO    ] Launching Daemon at Fri Jun  5 08:58:55 IST 2026
[2026-06-05 08:58:55,519.519 INFO    ] ================================================
[2026-06-05 08:58:56,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:58:56
[2026-06-05 08:58:56,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:58:57,011.011 INFO    ] Initializing speech engine...
[2026-06-05 08:58:57,021.021 INFO    ] 2026-06-05 08:58:57
[2026-06-05 08:58:57,273.273 INFO    ] 2026-06-05 08:58:57
[2026-06-05 08:58:57,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:58:57,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:58:57,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:58:57,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:58:57,649.649 INFO    ] time= 05/06/2026 08:58:57
[2026-06-05 08:58:57,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:58:57,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:58:57,826.826 INFO    ] No existing commands found in stream
[2026-06-05 08:59:02,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:59:02,860.860 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 08:59:06,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 08:59:06,774.774 INFO    ] Checking for system updates...
[2026-06-05 08:59:06,812.812 INFO    ] 200
[2026-06-05 08:59:06,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:59:06,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:59:06,879.879 INFO    ] No update needed
[2026-06-05 08:59:06,881.881 INFO    ] Checking for camera pi updates...
[2026-06-05 08:59:06,922.922 INFO    ] 200
[2026-06-05 08:59:06,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:59:06,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:59:07,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:59:07,020.020 INFO    ] No camera update needed
[2026-06-05 08:59:07,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:59:07,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:59:07,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:59:07,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:59:09,075.075 INFO    ] ================================================
[2026-06-05 08:59:09,090.090 INFO    ] Launching Daemon at Fri Jun  5 08:59:09 IST 2026
[2026-06-05 08:59:09,102.102 INFO    ] ================================================
[2026-06-05 08:59:09,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:59:09
[2026-06-05 08:59:10,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:59:10,752.752 INFO    ] Initializing speech engine...
[2026-06-05 08:59:10,764.764 INFO    ] 2026-06-05 08:59:10
[2026-06-05 08:59:11,052.052 INFO    ] 2026-06-05 08:59:11
[2026-06-05 08:59:11,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:59:11,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:59:11,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:59:11,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:59:11,533.533 INFO    ] time= 05/06/2026 08:59:11
[2026-06-05 08:59:11,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:59:11,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:59:11,716.716 INFO    ] No existing commands found in stream
[2026-06-05 08:59:16,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:59:16,747.747 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 08:59:17,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:59:17,767.767 INFO    ] Checking for system updates...
[2026-06-05 08:59:17,803.803 INFO    ] 200
[2026-06-05 08:59:17,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:59:17,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:59:17,860.860 INFO    ] No update needed
[2026-06-05 08:59:17,863.863 INFO    ] Checking for camera pi updates...
[2026-06-05 08:59:17,896.896 INFO    ] 200
[2026-06-05 08:59:17,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:59:17,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:59:18,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 08:59:18,093.093 INFO    ] No camera update needed
[2026-06-05 08:59:18,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:59:18,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:59:18,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:59:18,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:59:20,148.148 INFO    ] ================================================
[2026-06-05 08:59:20,163.163 INFO    ] Launching Daemon at Fri Jun  5 08:59:20 IST 2026
[2026-06-05 08:59:20,174.174 INFO    ] ================================================
[2026-06-05 08:59:20,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:59:20
[2026-06-05 08:59:21,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:59:21,626.626 INFO    ] Initializing speech engine...
[2026-06-05 08:59:21,639.639 INFO    ] 2026-06-05 08:59:21
[2026-06-05 08:59:21,895.895 INFO    ] 2026-06-05 08:59:21
[2026-06-05 08:59:21,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:59:22,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:59:22,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:59:22,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:59:22,459.459 INFO    ] time= 05/06/2026 08:59:22
[2026-06-05 08:59:22,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:59:22,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:59:22,697.697 INFO    ] No existing commands found in stream
[2026-06-05 08:59:27,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:59:27,720.720 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 08:59:30,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 08:59:30,924.924 INFO    ] Checking for system updates...
[2026-06-05 08:59:30,961.961 INFO    ] 200
[2026-06-05 08:59:30,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:59:31,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:59:31,019.019 INFO    ] No update needed
[2026-06-05 08:59:31,021.021 INFO    ] Checking for camera pi updates...
[2026-06-05 08:59:31,056.056 INFO    ] 200
[2026-06-05 08:59:31,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:59:31,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:59:31,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:59:31,146.146 INFO    ] No camera update needed
[2026-06-05 08:59:31,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:59:31,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:59:31,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:59:31,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:59:33,209.209 INFO    ] ================================================
[2026-06-05 08:59:33,226.226 INFO    ] Launching Daemon at Fri Jun  5 08:59:33 IST 2026
[2026-06-05 08:59:33,237.237 INFO    ] ================================================
[2026-06-05 08:59:33,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:59:33
[2026-06-05 08:59:34,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:59:34,695.695 INFO    ] Initializing speech engine...
[2026-06-05 08:59:34,705.705 INFO    ] 2026-06-05 08:59:34
[2026-06-05 08:59:34,968.968 INFO    ] 2026-06-05 08:59:34
[2026-06-05 08:59:35,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:59:35,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:59:35,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:59:35,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:59:35,463.463 INFO    ] time= 05/06/2026 08:59:35
[2026-06-05 08:59:35,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:59:35,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:59:35,667.667 INFO    ] No existing commands found in stream
[2026-06-05 08:59:40,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:59:40,684.684 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 08:59:44,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 08:59:44,913.913 INFO    ] Checking for system updates...
[2026-06-05 08:59:44,950.950 INFO    ] 200
[2026-06-05 08:59:44,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:59:45,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:59:45,008.008 INFO    ] No update needed
[2026-06-05 08:59:45,010.010 INFO    ] Checking for camera pi updates...
[2026-06-05 08:59:45,044.044 INFO    ] 200
[2026-06-05 08:59:45,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 08:59:45,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 08:59:45,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 08:59:45,143.143 INFO    ] No camera update needed
[2026-06-05 08:59:45,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-05 08:59:45,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 08:59:45,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 08:59:45,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 08:59:47,200.200 INFO    ] ================================================
[2026-06-05 08:59:47,215.215 INFO    ] Launching Daemon at Fri Jun  5 08:59:47 IST 2026
[2026-06-05 08:59:47,226.226 INFO    ] ================================================
[2026-06-05 08:59:47,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 08:59:47
[2026-06-05 08:59:48,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 08:59:48,835.835 INFO    ] Initializing speech engine...
[2026-06-05 08:59:48,850.850 INFO    ] 2026-06-05 08:59:48
[2026-06-05 08:59:49,167.167 INFO    ] 2026-06-05 08:59:49
[2026-06-05 08:59:49,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 08:59:49,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 08:59:49,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 08:59:49,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 08:59:49,691.691 INFO    ] time= 05/06/2026 08:59:49
[2026-06-05 08:59:49,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 08:59:49,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-05 08:59:49,848.848 INFO    ] No existing commands found in stream
[2026-06-05 08:59:54,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 08:59:54,870.870 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 09:00:00,082.082 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:00:00,086.086 INFO    ] Checking for system updates...
[2026-06-05 09:00:00,124.124 INFO    ] 200
[2026-06-05 09:00:00,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:00,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:00,182.182 INFO    ] No update needed
[2026-06-05 09:00:00,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 09:00:00,218.218 INFO    ] 200
[2026-06-05 09:00:00,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:00,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:00:00,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:00,297.297 INFO    ] No camera update needed
[2026-06-05 09:00:00,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:00:00,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:00:00,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:00:00,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:00:02,384.384 INFO    ] ================================================
[2026-06-05 09:00:02,552.552 INFO    ] Launching Daemon at Fri Jun  5 09:00:02 IST 2026
[2026-06-05 09:00:02,628.628 INFO    ] ================================================
[2026-06-05 09:00:05,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:00:05
[2026-06-05 09:00:07,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:00:07,317.317 INFO    ] Initializing speech engine...
[2026-06-05 09:00:07,335.335 INFO    ] 2026-06-05 09:00:07
[2026-06-05 09:00:07,584.584 INFO    ] 2026-06-05 09:00:07
[2026-06-05 09:00:07,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:00:07,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:00:07,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:00:08,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:00:08,017.017 INFO    ] time= 05/06/2026 09:00:08
[2026-06-05 09:00:08,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:00:08,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:00:08,204.204 INFO    ] No existing commands found in stream
[2026-06-05 09:00:13,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:00:13,238.238 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 09:00:16,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:00:16,887.887 INFO    ] Checking for system updates...
[2026-06-05 09:00:16,923.923 INFO    ] 200
[2026-06-05 09:00:16,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:16,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:16,981.981 INFO    ] No update needed
[2026-06-05 09:00:16,983.983 INFO    ] Checking for camera pi updates...
[2026-06-05 09:00:17,017.017 INFO    ] 200
[2026-06-05 09:00:17,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:17,060.060 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:00:17,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:17,096.096 INFO    ] No camera update needed
[2026-06-05 09:00:17,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:00:17,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:00:17,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:00:17,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:00:19,153.153 INFO    ] ================================================
[2026-06-05 09:00:19,170.170 INFO    ] Launching Daemon at Fri Jun  5 09:00:19 IST 2026
[2026-06-05 09:00:19,181.181 INFO    ] ================================================
[2026-06-05 09:00:19,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:00:19
[2026-06-05 09:00:20,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:00:20,895.895 INFO    ] Initializing speech engine...
[2026-06-05 09:00:20,906.906 INFO    ] 2026-06-05 09:00:20
[2026-06-05 09:00:21,192.192 INFO    ] 2026-06-05 09:00:21
[2026-06-05 09:00:21,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:00:21,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:00:21,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:00:21,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:00:21,731.731 INFO    ] time= 05/06/2026 09:00:21
[2026-06-05 09:00:21,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:00:21,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:00:21,910.910 INFO    ] No existing commands found in stream
[2026-06-05 09:00:26,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:00:26,947.947 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 09:00:30,496.496 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:00:30,499.499 INFO    ] Checking for system updates...
[2026-06-05 09:00:30,541.541 INFO    ] 200
[2026-06-05 09:00:30,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:30,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:30,601.601 INFO    ] No update needed
[2026-06-05 09:00:30,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 09:00:30,639.639 INFO    ] 200
[2026-06-05 09:00:30,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:30,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:00:30,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:30,731.731 INFO    ] No camera update needed
[2026-06-05 09:00:30,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:00:30,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:00:30,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:00:30,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:00:32,787.787 INFO    ] ================================================
[2026-06-05 09:00:32,803.803 INFO    ] Launching Daemon at Fri Jun  5 09:00:32 IST 2026
[2026-06-05 09:00:32,814.814 INFO    ] ================================================
[2026-06-05 09:00:33,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:00:33
[2026-06-05 09:00:34,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:00:34,317.317 INFO    ] Initializing speech engine...
[2026-06-05 09:00:34,326.326 INFO    ] 2026-06-05 09:00:34
[2026-06-05 09:00:34,585.585 INFO    ] 2026-06-05 09:00:34
[2026-06-05 09:00:34,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:00:34,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:00:34,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:00:35,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:00:35,057.057 INFO    ] time= 05/06/2026 09:00:35
[2026-06-05 09:00:35,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:00:35,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:00:35,263.263 INFO    ] No existing commands found in stream
[2026-06-05 09:00:40,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:00:40,297.297 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 09:00:41,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:00:41,697.697 INFO    ] Checking for system updates...
[2026-06-05 09:00:41,734.734 INFO    ] 200
[2026-06-05 09:00:41,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:41,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:41,792.792 INFO    ] No update needed
[2026-06-05 09:00:41,795.795 INFO    ] Checking for camera pi updates...
[2026-06-05 09:00:41,830.830 INFO    ] 200
[2026-06-05 09:00:41,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:41,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:00:41,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:41,925.925 INFO    ] No camera update needed
[2026-06-05 09:00:41,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:00:41,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:00:41,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:00:41,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:00:43,983.983 INFO    ] ================================================
[2026-06-05 09:00:44,999.999 INFO    ] Launching Daemon at Fri Jun  5 09:00:43 IST 2026
[2026-06-05 09:00:44,010.010 INFO    ] ================================================
[2026-06-05 09:00:44,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:00:44
[2026-06-05 09:00:45,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:00:45,454.454 INFO    ] Initializing speech engine...
[2026-06-05 09:00:45,460.460 INFO    ] 2026-06-05 09:00:45
[2026-06-05 09:00:45,764.764 INFO    ] 2026-06-05 09:00:45
[2026-06-05 09:00:45,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:00:46,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:00:46,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:00:46,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:00:46,194.194 INFO    ] time= 05/06/2026 09:00:46
[2026-06-05 09:00:46,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:00:46,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:00:46,316.316 INFO    ] No existing commands found in stream
[2026-06-05 09:00:51,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:00:51,344.344 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 09:00:55,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:00:55,150.150 INFO    ] Checking for system updates...
[2026-06-05 09:00:55,191.191 INFO    ] 200
[2026-06-05 09:00:55,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:55,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:55,249.249 INFO    ] No update needed
[2026-06-05 09:00:55,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 09:00:55,286.286 INFO    ] 200
[2026-06-05 09:00:55,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:00:55,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:00:55,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:00:55,384.384 INFO    ] No camera update needed
[2026-06-05 09:00:55,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:00:55,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:00:55,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:00:55,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:00:57,452.452 INFO    ] ================================================
[2026-06-05 09:00:57,469.469 INFO    ] Launching Daemon at Fri Jun  5 09:00:57 IST 2026
[2026-06-05 09:00:57,480.480 INFO    ] ================================================
[2026-06-05 09:00:58,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:00:58
[2026-06-05 09:00:58,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:00:59,180.180 INFO    ] Initializing speech engine...
[2026-06-05 09:00:59,194.194 INFO    ] 2026-06-05 09:00:59
[2026-06-05 09:00:59,492.492 INFO    ] 2026-06-05 09:00:59
[2026-06-05 09:00:59,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:01:00,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:01:00,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:01:00,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:01:00,290.290 INFO    ] time= 05/06/2026 09:01:00
[2026-06-05 09:01:00,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:01:00,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:01:00,496.496 INFO    ] No existing commands found in stream
[2026-06-05 09:01:05,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:01:05,517.517 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 09:01:08,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:01:08,072.072 INFO    ] Checking for system updates...
[2026-06-05 09:01:08,111.111 INFO    ] 200
[2026-06-05 09:01:08,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:08,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:01:08,171.171 INFO    ] No update needed
[2026-06-05 09:01:08,173.173 INFO    ] Checking for camera pi updates...
[2026-06-05 09:01:08,212.212 INFO    ] 200
[2026-06-05 09:01:08,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:08,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:01:08,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:01:08,312.312 INFO    ] No camera update needed
[2026-06-05 09:01:08,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:01:08,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:01:08,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:01:08,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:01:10,371.371 INFO    ] ================================================
[2026-06-05 09:01:10,387.387 INFO    ] Launching Daemon at Fri Jun  5 09:01:10 IST 2026
[2026-06-05 09:01:10,398.398 INFO    ] ================================================
[2026-06-05 09:01:10,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:01:10
[2026-06-05 09:01:11,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:01:11,810.810 INFO    ] Initializing speech engine...
[2026-06-05 09:01:11,833.833 INFO    ] 2026-06-05 09:01:11
[2026-06-05 09:01:12,089.089 INFO    ] 2026-06-05 09:01:12
[2026-06-05 09:01:12,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:01:12,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:01:12,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:01:12,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:01:12,468.468 INFO    ] time= 05/06/2026 09:01:12
[2026-06-05 09:01:12,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:01:12,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:01:12,632.632 INFO    ] No existing commands found in stream
[2026-06-05 09:01:17,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:01:17,665.665 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 09:01:19,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:01:19,930.930 INFO    ] Checking for system updates...
[2026-06-05 09:01:19,972.972 INFO    ] 200
[2026-06-05 09:01:19,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:20,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:01:20,037.037 INFO    ] No update needed
[2026-06-05 09:01:20,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 09:01:20,079.079 INFO    ] 200
[2026-06-05 09:01:20,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:20,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:01:20,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:01:20,286.286 INFO    ] No camera update needed
[2026-06-05 09:01:20,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:01:20,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:01:20,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:01:20,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:01:22,350.350 INFO    ] ================================================
[2026-06-05 09:01:22,366.366 INFO    ] Launching Daemon at Fri Jun  5 09:01:22 IST 2026
[2026-06-05 09:01:22,377.377 INFO    ] ================================================
[2026-06-05 09:01:23,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:01:23
[2026-06-05 09:01:23,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:01:24,056.056 INFO    ] Initializing speech engine...
[2026-06-05 09:01:24,063.063 INFO    ] 2026-06-05 09:01:24
[2026-06-05 09:01:24,355.355 INFO    ] 2026-06-05 09:01:24
[2026-06-05 09:01:24,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:01:24,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:01:24,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:01:24,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:01:24,810.810 INFO    ] time= 05/06/2026 09:01:24
[2026-06-05 09:01:24,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:01:24,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:01:25,063.063 INFO    ] No existing commands found in stream
[2026-06-05 09:01:30,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:01:30,084.084 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 09:01:30,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:01:30,753.753 INFO    ] Checking for system updates...
[2026-06-05 09:01:30,790.790 INFO    ] 200
[2026-06-05 09:01:30,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:30,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:01:30,849.849 INFO    ] No update needed
[2026-06-05 09:01:30,851.851 INFO    ] Checking for camera pi updates...
[2026-06-05 09:01:30,886.886 INFO    ] 200
[2026-06-05 09:01:30,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:30,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:01:30,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:01:30,987.987 INFO    ] No camera update needed
[2026-06-05 09:01:30,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:01:30,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:01:30,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:01:31,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:01:33,048.048 INFO    ] ================================================
[2026-06-05 09:01:33,063.063 INFO    ] Launching Daemon at Fri Jun  5 09:01:33 IST 2026
[2026-06-05 09:01:33,074.074 INFO    ] ================================================
[2026-06-05 09:01:33,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:01:33
[2026-06-05 09:01:34,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:01:34,512.512 INFO    ] Initializing speech engine...
[2026-06-05 09:01:34,521.521 INFO    ] 2026-06-05 09:01:34
[2026-06-05 09:01:34,766.766 INFO    ] 2026-06-05 09:01:34
[2026-06-05 09:01:34,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:01:34,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:01:35,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:01:35,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:01:35,242.242 INFO    ] time= 05/06/2026 09:01:35
[2026-06-05 09:01:35,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:01:35,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:01:35,450.450 INFO    ] No existing commands found in stream
[2026-06-05 09:01:40,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:01:40,485.485 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-05 09:01:42,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:01:42,859.859 INFO    ] Checking for system updates...
[2026-06-05 09:01:42,899.899 INFO    ] 200
[2026-06-05 09:01:42,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:42,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:01:42,957.957 INFO    ] No update needed
[2026-06-05 09:01:42,960.960 INFO    ] Checking for camera pi updates...
[2026-06-05 09:01:42,994.994 INFO    ] 200
[2026-06-05 09:01:42,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:43,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:01:43,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:01:43,077.077 INFO    ] No camera update needed
[2026-06-05 09:01:43,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:01:43,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:01:43,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:01:43,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:01:45,135.135 INFO    ] ================================================
[2026-06-05 09:01:45,150.150 INFO    ] Launching Daemon at Fri Jun  5 09:01:45 IST 2026
[2026-06-05 09:01:45,160.160 INFO    ] ================================================
[2026-06-05 09:01:45,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:01:45
[2026-06-05 09:01:46,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:01:46,585.585 INFO    ] Initializing speech engine...
[2026-06-05 09:01:46,592.592 INFO    ] 2026-06-05 09:01:46
[2026-06-05 09:01:46,850.850 INFO    ] 2026-06-05 09:01:46
[2026-06-05 09:01:46,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:01:47,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:01:47,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:01:47,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:01:47,276.276 INFO    ] time= 05/06/2026 09:01:47
[2026-06-05 09:01:47,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:01:47,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:01:47,362.362 INFO    ] No existing commands found in stream
[2026-06-05 09:01:52,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:01:52,374.374 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 09:01:55,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:01:55,145.145 INFO    ] Checking for system updates...
[2026-06-05 09:01:55,181.181 INFO    ] 200
[2026-06-05 09:01:55,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:55,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:01:55,250.250 INFO    ] No update needed
[2026-06-05 09:01:55,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 09:01:55,287.287 INFO    ] 200
[2026-06-05 09:01:55,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:01:55,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:01:55,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:01:55,389.389 INFO    ] No camera update needed
[2026-06-05 09:01:55,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:01:55,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:01:55,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:01:55,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:01:57,450.450 INFO    ] ================================================
[2026-06-05 09:01:57,465.465 INFO    ] Launching Daemon at Fri Jun  5 09:01:57 IST 2026
[2026-06-05 09:01:57,476.476 INFO    ] ================================================
[2026-06-05 09:01:58,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:01:58
[2026-06-05 09:01:58,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:01:58,902.902 INFO    ] Initializing speech engine...
[2026-06-05 09:01:58,912.912 INFO    ] 2026-06-05 09:01:58
[2026-06-05 09:01:59,172.172 INFO    ] 2026-06-05 09:01:59
[2026-06-05 09:01:59,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:02:00,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:02:00,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:02:00,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:02:00,339.339 INFO    ] time= 05/06/2026 09:02:00
[2026-06-05 09:02:00,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:02:00,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:02:00,458.458 INFO    ] No existing commands found in stream
[2026-06-05 09:02:05,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:02:05,471.471 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 09:02:07,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:02:07,217.217 INFO    ] Checking for system updates...
[2026-06-05 09:02:07,254.254 INFO    ] 200
[2026-06-05 09:02:07,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:07,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:02:07,311.311 INFO    ] No update needed
[2026-06-05 09:02:07,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 09:02:07,347.347 INFO    ] 200
[2026-06-05 09:02:07,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:07,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:02:07,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:02:07,450.450 INFO    ] No camera update needed
[2026-06-05 09:02:07,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:02:07,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:02:07,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:02:07,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:02:09,506.506 INFO    ] ================================================
[2026-06-05 09:02:09,521.521 INFO    ] Launching Daemon at Fri Jun  5 09:02:09 IST 2026
[2026-06-05 09:02:09,531.531 INFO    ] ================================================
[2026-06-05 09:02:10,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:02:10
[2026-06-05 09:02:10,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:02:11,086.086 INFO    ] Initializing speech engine...
[2026-06-05 09:02:11,096.096 INFO    ] 2026-06-05 09:02:11
[2026-06-05 09:02:11,348.348 INFO    ] 2026-06-05 09:02:11
[2026-06-05 09:02:11,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:02:11,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:02:11,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:02:11,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:02:11,827.827 INFO    ] time= 05/06/2026 09:02:11
[2026-06-05 09:02:11,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:02:11,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:02:11,993.993 INFO    ] No existing commands found in stream
[2026-06-05 09:02:17,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:02:17,033.033 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 09:02:20,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:02:20,139.139 INFO    ] Checking for system updates...
[2026-06-05 09:02:20,178.178 INFO    ] 200
[2026-06-05 09:02:20,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:20,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:02:20,237.237 INFO    ] No update needed
[2026-06-05 09:02:20,239.239 INFO    ] Checking for camera pi updates...
[2026-06-05 09:02:20,278.278 INFO    ] 200
[2026-06-05 09:02:20,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:20,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:02:20,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:02:20,390.390 INFO    ] No camera update needed
[2026-06-05 09:02:20,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:02:20,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:02:20,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:02:20,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:02:22,449.449 INFO    ] ================================================
[2026-06-05 09:02:22,464.464 INFO    ] Launching Daemon at Fri Jun  5 09:02:22 IST 2026
[2026-06-05 09:02:22,478.478 INFO    ] ================================================
[2026-06-05 09:02:23,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:02:23
[2026-06-05 09:02:23,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:02:23,892.892 INFO    ] Initializing speech engine...
[2026-06-05 09:02:23,906.906 INFO    ] 2026-06-05 09:02:23
[2026-06-05 09:02:24,188.188 INFO    ] 2026-06-05 09:02:24
[2026-06-05 09:02:24,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:02:24,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:02:24,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:02:24,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:02:24,568.568 INFO    ] time= 05/06/2026 09:02:24
[2026-06-05 09:02:24,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:02:24,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:02:24,684.684 INFO    ] No existing commands found in stream
[2026-06-05 09:02:29,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:02:29,699.699 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 09:02:33,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:02:33,182.182 INFO    ] Checking for system updates...
[2026-06-05 09:02:33,224.224 INFO    ] 200
[2026-06-05 09:02:33,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:33,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:02:33,286.286 INFO    ] No update needed
[2026-06-05 09:02:33,289.289 INFO    ] Checking for camera pi updates...
[2026-06-05 09:02:33,330.330 INFO    ] 200
[2026-06-05 09:02:33,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:33,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:02:33,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:02:33,438.438 INFO    ] No camera update needed
[2026-06-05 09:02:33,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:02:33,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:02:33,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:02:33,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:02:35,498.498 INFO    ] ================================================
[2026-06-05 09:02:35,514.514 INFO    ] Launching Daemon at Fri Jun  5 09:02:35 IST 2026
[2026-06-05 09:02:35,525.525 INFO    ] ================================================
[2026-06-05 09:02:36,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:02:36
[2026-06-05 09:02:36,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:02:36,985.985 INFO    ] Initializing speech engine...
[2026-06-05 09:02:36,999.999 INFO    ] 2026-06-05 09:02:36
[2026-06-05 09:02:37,295.295 INFO    ] 2026-06-05 09:02:37
[2026-06-05 09:02:37,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:02:37,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:02:37,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:02:37,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:02:37,701.701 INFO    ] time= 05/06/2026 09:02:37
[2026-06-05 09:02:37,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:02:37,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:02:37,826.826 INFO    ] No existing commands found in stream
[2026-06-05 09:02:42,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:02:42,842.842 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 09:02:47,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:02:47,039.039 INFO    ] Checking for system updates...
[2026-06-05 09:02:47,074.074 INFO    ] 200
[2026-06-05 09:02:47,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:47,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:02:47,131.131 INFO    ] No update needed
[2026-06-05 09:02:47,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 09:02:47,168.168 INFO    ] 200
[2026-06-05 09:02:47,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:47,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:02:47,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:02:47,269.269 INFO    ] No camera update needed
[2026-06-05 09:02:47,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:02:47,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:02:47,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:02:47,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:02:49,325.325 INFO    ] ================================================
[2026-06-05 09:02:49,348.348 INFO    ] Launching Daemon at Fri Jun  5 09:02:49 IST 2026
[2026-06-05 09:02:49,365.365 INFO    ] ================================================
[2026-06-05 09:02:50,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:02:50
[2026-06-05 09:02:50,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:02:50,907.907 INFO    ] Initializing speech engine...
[2026-06-05 09:02:50,914.914 INFO    ] 2026-06-05 09:02:50
[2026-06-05 09:02:51,177.177 INFO    ] 2026-06-05 09:02:51
[2026-06-05 09:02:51,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:02:51,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:02:51,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:02:51,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:02:51,659.659 INFO    ] time= 05/06/2026 09:02:51
[2026-06-05 09:02:51,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:02:51,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:02:51,876.876 INFO    ] No existing commands found in stream
[2026-06-05 09:02:56,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:02:56,895.895 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 09:02:58,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:02:58,308.308 INFO    ] Checking for system updates...
[2026-06-05 09:02:58,345.345 INFO    ] 200
[2026-06-05 09:02:58,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:58,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:02:58,405.405 INFO    ] No update needed
[2026-06-05 09:02:58,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 09:02:58,446.446 INFO    ] 200
[2026-06-05 09:02:58,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:02:58,490.490 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:02:58,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:02:58,547.547 INFO    ] No camera update needed
[2026-06-05 09:02:58,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:02:58,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:02:58,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:02:58,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:03:00,604.604 INFO    ] ================================================
[2026-06-05 09:03:00,621.621 INFO    ] Launching Daemon at Fri Jun  5 09:03:00 IST 2026
[2026-06-05 09:03:00,632.632 INFO    ] ================================================
[2026-06-05 09:03:01,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:03:01
[2026-06-05 09:03:02,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:03:02,436.436 INFO    ] Initializing speech engine...
[2026-06-05 09:03:02,447.447 INFO    ] 2026-06-05 09:03:02
[2026-06-05 09:03:02,775.775 INFO    ] 2026-06-05 09:03:02
[2026-06-05 09:03:02,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:03:03,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:03:03,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:03:03,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:03:03,270.270 INFO    ] time= 05/06/2026 09:03:03
[2026-06-05 09:03:03,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:03:03,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:03:03,539.539 INFO    ] No existing commands found in stream
[2026-06-05 09:03:08,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:03:08,571.571 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 09:03:10,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:03:10,205.205 INFO    ] Checking for system updates...
[2026-06-05 09:03:10,243.243 INFO    ] 200
[2026-06-05 09:03:10,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:03:10,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:03:10,302.302 INFO    ] No update needed
[2026-06-05 09:03:10,304.304 INFO    ] Checking for camera pi updates...
[2026-06-05 09:03:10,338.338 INFO    ] 200
[2026-06-05 09:03:10,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:03:10,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:03:10,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:03:10,432.432 INFO    ] No camera update needed
[2026-06-05 09:03:10,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:03:10,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:03:10,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:03:10,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:03:12,489.489 INFO    ] ================================================
[2026-06-05 09:03:12,504.504 INFO    ] Launching Daemon at Fri Jun  5 09:03:12 IST 2026
[2026-06-05 09:03:12,515.515 INFO    ] ================================================
[2026-06-05 09:03:13,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:03:13
[2026-06-05 09:03:13,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:03:13,960.960 INFO    ] Initializing speech engine...
[2026-06-05 09:03:13,967.967 INFO    ] 2026-06-05 09:03:13
[2026-06-05 09:03:14,268.268 INFO    ] 2026-06-05 09:03:14
[2026-06-05 09:03:14,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:03:14,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:03:14,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:03:14,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:03:14,695.695 INFO    ] time= 05/06/2026 09:03:14
[2026-06-05 09:03:14,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:03:14,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:03:14,785.785 INFO    ] No existing commands found in stream
[2026-06-05 09:03:19,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:03:19,802.802 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 09:03:21,410.410 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:03:21,413.413 INFO    ] Checking for system updates...
[2026-06-05 09:03:21,450.450 INFO    ] 200
[2026-06-05 09:03:21,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:03:21,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:03:21,509.509 INFO    ] No update needed
[2026-06-05 09:03:21,512.512 INFO    ] Checking for camera pi updates...
[2026-06-05 09:03:21,546.546 INFO    ] 200
[2026-06-05 09:03:21,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:03:21,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:03:21,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:03:21,736.736 INFO    ] No camera update needed
[2026-06-05 09:03:21,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:03:21,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:03:21,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:03:21,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:03:23,791.791 INFO    ] ================================================
[2026-06-05 09:03:23,806.806 INFO    ] Launching Daemon at Fri Jun  5 09:03:23 IST 2026
[2026-06-05 09:03:23,824.824 INFO    ] ================================================
[2026-06-05 09:03:24,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:03:24
[2026-06-05 09:03:25,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:03:25,254.254 INFO    ] Initializing speech engine...
[2026-06-05 09:03:25,275.275 INFO    ] 2026-06-05 09:03:25
[2026-06-05 09:03:25,536.536 INFO    ] 2026-06-05 09:03:25
[2026-06-05 09:03:25,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:03:25,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:03:25,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:03:25,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:03:25,987.987 INFO    ] time= 05/06/2026 09:03:25
[2026-06-05 09:03:26,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:03:26,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:03:26,253.253 INFO    ] No existing commands found in stream
[2026-06-05 09:03:31,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:03:31,281.281 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 09:03:32,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:03:32,177.177 INFO    ] Checking for system updates...
[2026-06-05 09:03:32,215.215 INFO    ] 200
[2026-06-05 09:03:32,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:03:32,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:03:32,288.288 INFO    ] No update needed
[2026-06-05 09:03:32,291.291 INFO    ] Checking for camera pi updates...
[2026-06-05 09:03:32,327.327 INFO    ] 200
[2026-06-05 09:03:32,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:03:32,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:03:32,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:03:32,423.423 INFO    ] No camera update needed
[2026-06-05 09:03:32,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:03:32,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:03:32,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:03:32,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:03:34,484.484 INFO    ] ================================================
[2026-06-05 09:03:34,499.499 INFO    ] Launching Daemon at Fri Jun  5 09:03:34 IST 2026
[2026-06-05 09:03:34,510.510 INFO    ] ================================================
[2026-06-05 09:03:35,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:03:35
[2026-06-05 09:03:35,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:03:36,198.198 INFO    ] Initializing speech engine...
[2026-06-05 09:03:36,206.206 INFO    ] 2026-06-05 09:03:36
[2026-06-05 09:03:36,499.499 INFO    ] 2026-06-05 09:03:36
[2026-06-05 09:03:36,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:03:36,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:03:36,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:03:36,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:03:36,960.960 INFO    ] time= 05/06/2026 09:03:36
[2026-06-05 09:03:37,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:03:37,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:03:37,188.188 INFO    ] No existing commands found in stream
[2026-06-05 09:03:42,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:03:42,218.218 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 09:03:46,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:03:46,017.017 INFO    ] Checking for system updates...
[2026-06-05 09:03:46,058.058 INFO    ] 200
[2026-06-05 09:03:46,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:03:46,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:03:46,129.129 INFO    ] No update needed
[2026-06-05 09:03:46,132.132 INFO    ] Checking for camera pi updates...
[2026-06-05 09:03:46,181.181 INFO    ] 200
[2026-06-05 09:03:46,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:03:46,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:03:46,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:03:46,272.272 INFO    ] No camera update needed
[2026-06-05 09:03:46,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:03:46,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:03:46,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:03:46,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:03:48,330.330 INFO    ] ================================================
[2026-06-05 09:03:48,345.345 INFO    ] Launching Daemon at Fri Jun  5 09:03:48 IST 2026
[2026-06-05 09:03:48,356.356 INFO    ] ================================================
[2026-06-05 09:03:48,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:03:48
[2026-06-05 09:03:49,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:03:49,911.911 INFO    ] Initializing speech engine...
[2026-06-05 09:03:49,934.934 INFO    ] 2026-06-05 09:03:49
[2026-06-05 09:03:50,228.228 INFO    ] 2026-06-05 09:03:50
[2026-06-05 09:03:50,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:03:50,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:03:50,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:03:50,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:03:50,601.601 INFO    ] time= 05/06/2026 09:03:50
[2026-06-05 09:03:50,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:03:50,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:03:50,691.691 INFO    ] No existing commands found in stream
[2026-06-05 09:03:55,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:03:55,707.707 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 09:04:00,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:04:00,146.146 INFO    ] Checking for system updates...
[2026-06-05 09:04:00,182.182 INFO    ] 200
[2026-06-05 09:04:00,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:00,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:04:00,239.239 INFO    ] No update needed
[2026-06-05 09:04:00,242.242 INFO    ] Checking for camera pi updates...
[2026-06-05 09:04:00,279.279 INFO    ] 200
[2026-06-05 09:04:00,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:00,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:04:00,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:04:00,399.399 INFO    ] No camera update needed
[2026-06-05 09:04:00,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:04:00,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:04:00,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:04:00,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:04:02,456.456 INFO    ] ================================================
[2026-06-05 09:04:02,475.475 INFO    ] Launching Daemon at Fri Jun  5 09:04:02 IST 2026
[2026-06-05 09:04:02,491.491 INFO    ] ================================================
[2026-06-05 09:04:03,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:04:03
[2026-06-05 09:04:03,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:04:04,095.095 INFO    ] Initializing speech engine...
[2026-06-05 09:04:04,105.105 INFO    ] 2026-06-05 09:04:04
[2026-06-05 09:04:04,354.354 INFO    ] 2026-06-05 09:04:04
[2026-06-05 09:04:04,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:04:04,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:04:04,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:04:04,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:04:04,850.850 INFO    ] time= 05/06/2026 09:04:04
[2026-06-05 09:04:04,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:04:04,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:04:05,045.045 INFO    ] No existing commands found in stream
[2026-06-05 09:04:10,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:04:10,081.081 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 09:04:12,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:04:12,985.985 INFO    ] Checking for system updates...
[2026-06-05 09:04:13,027.027 INFO    ] 200
[2026-06-05 09:04:13,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:13,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:04:13,086.086 INFO    ] No update needed
[2026-06-05 09:04:13,089.089 INFO    ] Checking for camera pi updates...
[2026-06-05 09:04:13,123.123 INFO    ] 200
[2026-06-05 09:04:13,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:13,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:04:13,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:04:13,236.236 INFO    ] No camera update needed
[2026-06-05 09:04:13,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:04:13,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:04:13,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:04:13,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:04:15,296.296 INFO    ] ================================================
[2026-06-05 09:04:15,311.311 INFO    ] Launching Daemon at Fri Jun  5 09:04:15 IST 2026
[2026-06-05 09:04:15,322.322 INFO    ] ================================================
[2026-06-05 09:04:15,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:04:15
[2026-06-05 09:04:16,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:04:16,785.785 INFO    ] Initializing speech engine...
[2026-06-05 09:04:16,793.793 INFO    ] 2026-06-05 09:04:16
[2026-06-05 09:04:17,044.044 INFO    ] 2026-06-05 09:04:17
[2026-06-05 09:04:17,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:04:17,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:04:17,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:04:17,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:04:17,532.532 INFO    ] time= 05/06/2026 09:04:17
[2026-06-05 09:04:17,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:04:17,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:04:17,748.748 INFO    ] No existing commands found in stream
[2026-06-05 09:04:22,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:04:22,770.770 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 09:04:26,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:04:26,515.515 INFO    ] Checking for system updates...
[2026-06-05 09:04:26,556.556 INFO    ] 200
[2026-06-05 09:04:26,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:26,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:04:26,616.616 INFO    ] No update needed
[2026-06-05 09:04:26,618.618 INFO    ] Checking for camera pi updates...
[2026-06-05 09:04:26,654.654 INFO    ] 200
[2026-06-05 09:04:26,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:26,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:04:26,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:04:26,755.755 INFO    ] No camera update needed
[2026-06-05 09:04:26,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:04:26,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:04:26,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:04:26,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:04:28,819.819 INFO    ] ================================================
[2026-06-05 09:04:28,834.834 INFO    ] Launching Daemon at Fri Jun  5 09:04:28 IST 2026
[2026-06-05 09:04:28,845.845 INFO    ] ================================================
[2026-06-05 09:04:29,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:04:29
[2026-06-05 09:04:30,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:04:30,466.466 INFO    ] Initializing speech engine...
[2026-06-05 09:04:30,476.476 INFO    ] 2026-06-05 09:04:30
[2026-06-05 09:04:30,756.756 INFO    ] 2026-06-05 09:04:30
[2026-06-05 09:04:30,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:04:31,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:04:31,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:04:31,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:04:31,285.285 INFO    ] time= 05/06/2026 09:04:31
[2026-06-05 09:04:31,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:04:31,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:04:31,443.443 INFO    ] No existing commands found in stream
[2026-06-05 09:04:36,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:04:36,468.468 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 09:04:37,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:04:37,158.158 INFO    ] Checking for system updates...
[2026-06-05 09:04:37,200.200 INFO    ] 200
[2026-06-05 09:04:37,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:37,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:04:37,259.259 INFO    ] No update needed
[2026-06-05 09:04:37,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 09:04:37,296.296 INFO    ] 200
[2026-06-05 09:04:37,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:37,341.341 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:04:37,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:04:37,394.394 INFO    ] No camera update needed
[2026-06-05 09:04:37,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:04:37,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:04:37,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:04:37,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:04:39,453.453 INFO    ] ================================================
[2026-06-05 09:04:39,468.468 INFO    ] Launching Daemon at Fri Jun  5 09:04:39 IST 2026
[2026-06-05 09:04:39,479.479 INFO    ] ================================================
[2026-06-05 09:04:40,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:04:40
[2026-06-05 09:04:40,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:04:41,088.088 INFO    ] Initializing speech engine...
[2026-06-05 09:04:41,101.101 INFO    ] 2026-06-05 09:04:41
[2026-06-05 09:04:41,377.377 INFO    ] 2026-06-05 09:04:41
[2026-06-05 09:04:41,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:04:41,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:04:41,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:04:41,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:04:41,855.855 INFO    ] time= 05/06/2026 09:04:41
[2026-06-05 09:04:41,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:04:41,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:04:42,075.075 INFO    ] No existing commands found in stream
[2026-06-05 09:04:47,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:04:47,093.093 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 09:04:48,988.988 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:04:48,991.991 INFO    ] Checking for system updates...
[2026-06-05 09:04:49,027.027 INFO    ] 200
[2026-06-05 09:04:49,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:49,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:04:49,088.088 INFO    ] No update needed
[2026-06-05 09:04:49,091.091 INFO    ] Checking for camera pi updates...
[2026-06-05 09:04:49,124.124 INFO    ] 200
[2026-06-05 09:04:49,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:04:49,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:04:49,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:04:49,235.235 INFO    ] No camera update needed
[2026-06-05 09:04:49,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:04:49,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:04:49,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:04:49,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:04:51,289.289 INFO    ] ================================================
[2026-06-05 09:04:51,304.304 INFO    ] Launching Daemon at Fri Jun  5 09:04:51 IST 2026
[2026-06-05 09:04:51,315.315 INFO    ] ================================================
[2026-06-05 09:04:51,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:04:51
[2026-06-05 09:04:52,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:04:52,728.728 INFO    ] Initializing speech engine...
[2026-06-05 09:04:52,737.737 INFO    ] 2026-06-05 09:04:52
[2026-06-05 09:04:52,982.982 INFO    ] 2026-06-05 09:04:52
[2026-06-05 09:04:53,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:04:53,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:04:53,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:04:53,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:04:53,450.450 INFO    ] time= 05/06/2026 09:04:53
[2026-06-05 09:04:53,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:04:53,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:04:53,680.680 INFO    ] No existing commands found in stream
[2026-06-05 09:04:58,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:04:58,704.704 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 09:05:01,061.061 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:05:01,064.064 INFO    ] Checking for system updates...
[2026-06-05 09:05:01,099.099 INFO    ] 200
[2026-06-05 09:05:01,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:01,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:05:01,157.157 INFO    ] No update needed
[2026-06-05 09:05:01,159.159 INFO    ] Checking for camera pi updates...
[2026-06-05 09:05:01,195.195 INFO    ] 200
[2026-06-05 09:05:01,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:01,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:05:01,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:05:01,292.292 INFO    ] No camera update needed
[2026-06-05 09:05:01,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:05:01,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:05:01,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:05:01,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:05:03,365.365 INFO    ] ================================================
[2026-06-05 09:05:03,387.387 INFO    ] Launching Daemon at Fri Jun  5 09:05:03 IST 2026
[2026-06-05 09:05:03,404.404 INFO    ] ================================================
[2026-06-05 09:05:04,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:05:04
[2026-06-05 09:05:04,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:05:04,944.944 INFO    ] Initializing speech engine...
[2026-06-05 09:05:04,951.951 INFO    ] 2026-06-05 09:05:04
[2026-06-05 09:05:05,211.211 INFO    ] 2026-06-05 09:05:05
[2026-06-05 09:05:05,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:05:05,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:05:05,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:05:05,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:05:05,682.682 INFO    ] time= 05/06/2026 09:05:05
[2026-06-05 09:05:05,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:05:05,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:05:05,898.898 INFO    ] No existing commands found in stream
[2026-06-05 09:05:10,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:05:10,926.926 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 09:05:13,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:05:13,341.341 INFO    ] Checking for system updates...
[2026-06-05 09:05:13,378.378 INFO    ] 200
[2026-06-05 09:05:13,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:13,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:05:13,437.437 INFO    ] No update needed
[2026-06-05 09:05:13,439.439 INFO    ] Checking for camera pi updates...
[2026-06-05 09:05:13,473.473 INFO    ] 200
[2026-06-05 09:05:13,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:13,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:05:13,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:05:13,577.577 INFO    ] No camera update needed
[2026-06-05 09:05:13,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:05:13,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:05:13,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:05:13,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:05:15,634.634 INFO    ] ================================================
[2026-06-05 09:05:15,649.649 INFO    ] Launching Daemon at Fri Jun  5 09:05:15 IST 2026
[2026-06-05 09:05:15,660.660 INFO    ] ================================================
[2026-06-05 09:05:16,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:05:16
[2026-06-05 09:05:16,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:05:17,200.200 INFO    ] Initializing speech engine...
[2026-06-05 09:05:17,209.209 INFO    ] 2026-06-05 09:05:17
[2026-06-05 09:05:17,498.498 INFO    ] 2026-06-05 09:05:17
[2026-06-05 09:05:17,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:05:17,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:05:17,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:05:17,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:05:18,026.026 INFO    ] time= 05/06/2026 09:05:17
[2026-06-05 09:05:18,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:05:18,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:05:18,180.180 INFO    ] No existing commands found in stream
[2026-06-05 09:05:23,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:05:23,198.198 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 09:05:27,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:05:27,351.351 INFO    ] Checking for system updates...
[2026-06-05 09:05:27,388.388 INFO    ] 200
[2026-06-05 09:05:27,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:27,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:05:27,447.447 INFO    ] No update needed
[2026-06-05 09:05:27,449.449 INFO    ] Checking for camera pi updates...
[2026-06-05 09:05:27,486.486 INFO    ] 200
[2026-06-05 09:05:27,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:27,533.533 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:05:27,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:05:27,689.689 INFO    ] No camera update needed
[2026-06-05 09:05:27,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:05:27,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:05:27,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:05:27,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:05:29,749.749 INFO    ] ================================================
[2026-06-05 09:05:29,765.765 INFO    ] Launching Daemon at Fri Jun  5 09:05:29 IST 2026
[2026-06-05 09:05:29,775.775 INFO    ] ================================================
[2026-06-05 09:05:30,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:05:30
[2026-06-05 09:05:31,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:05:31,425.425 INFO    ] Initializing speech engine...
[2026-06-05 09:05:31,439.439 INFO    ] 2026-06-05 09:05:31
[2026-06-05 09:05:31,728.728 INFO    ] 2026-06-05 09:05:31
[2026-06-05 09:05:31,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:05:31,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:05:31,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:05:32,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:05:32,156.156 INFO    ] time= 05/06/2026 09:05:32
[2026-06-05 09:05:32,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:05:32,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:05:32,329.329 INFO    ] No existing commands found in stream
[2026-06-05 09:05:37,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:05:37,369.369 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 09:05:41,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:05:41,040.040 INFO    ] Checking for system updates...
[2026-06-05 09:05:41,077.077 INFO    ] 200
[2026-06-05 09:05:41,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:41,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:05:41,136.136 INFO    ] No update needed
[2026-06-05 09:05:41,139.139 INFO    ] Checking for camera pi updates...
[2026-06-05 09:05:41,172.172 INFO    ] 200
[2026-06-05 09:05:41,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:41,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:05:41,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:05:41,265.265 INFO    ] No camera update needed
[2026-06-05 09:05:41,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:05:41,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:05:41,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:05:41,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:05:43,320.320 INFO    ] ================================================
[2026-06-05 09:05:43,335.335 INFO    ] Launching Daemon at Fri Jun  5 09:05:43 IST 2026
[2026-06-05 09:05:43,346.346 INFO    ] ================================================
[2026-06-05 09:05:43,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:05:43
[2026-06-05 09:05:44,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:05:44,861.861 INFO    ] Initializing speech engine...
[2026-06-05 09:05:44,866.866 INFO    ] 2026-06-05 09:05:44
[2026-06-05 09:05:45,116.116 INFO    ] 2026-06-05 09:05:45
[2026-06-05 09:05:45,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:05:45,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:05:45,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:05:45,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:05:45,586.586 INFO    ] time= 05/06/2026 09:05:45
[2026-06-05 09:05:45,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:05:45,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:05:45,806.806 INFO    ] No existing commands found in stream
[2026-06-05 09:05:50,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:05:50,836.836 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 09:05:55,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:05:55,199.199 INFO    ] Checking for system updates...
[2026-06-05 09:05:55,236.236 INFO    ] 200
[2026-06-05 09:05:55,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:55,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:05:55,294.294 INFO    ] No update needed
[2026-06-05 09:05:55,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 09:05:55,335.335 INFO    ] 200
[2026-06-05 09:05:55,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:05:55,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:05:55,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:05:55,431.431 INFO    ] No camera update needed
[2026-06-05 09:05:55,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:05:55,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:05:55,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:05:55,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:05:57,488.488 INFO    ] ================================================
[2026-06-05 09:05:57,503.503 INFO    ] Launching Daemon at Fri Jun  5 09:05:57 IST 2026
[2026-06-05 09:05:57,514.514 INFO    ] ================================================
[2026-06-05 09:05:58,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:05:58
[2026-06-05 09:05:58,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:05:58,982.982 INFO    ] Initializing speech engine...
[2026-06-05 09:05:58,992.992 INFO    ] 2026-06-05 09:05:58
[2026-06-05 09:05:59,264.264 INFO    ] 2026-06-05 09:05:59
[2026-06-05 09:05:59,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:05:59,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:05:59,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:06:00,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:06:00,211.211 INFO    ] time= 05/06/2026 09:06:00
[2026-06-05 09:06:00,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:06:00,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:06:00,442.442 INFO    ] No existing commands found in stream
[2026-06-05 09:06:05,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:06:05,460.460 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 09:06:08,895.895 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:06:08,898.898 INFO    ] Checking for system updates...
[2026-06-05 09:06:08,955.955 INFO    ] 200
[2026-06-05 09:06:08,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:06:09,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:06:09,021.021 INFO    ] No update needed
[2026-06-05 09:06:09,023.023 INFO    ] Checking for camera pi updates...
[2026-06-05 09:06:09,061.061 INFO    ] 200
[2026-06-05 09:06:09,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:06:09,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:06:09,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:06:09,152.152 INFO    ] No camera update needed
[2026-06-05 09:06:09,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:06:09,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:06:09,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:06:09,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:06:11,207.207 INFO    ] ================================================
[2026-06-05 09:06:11,222.222 INFO    ] Launching Daemon at Fri Jun  5 09:06:11 IST 2026
[2026-06-05 09:06:11,233.233 INFO    ] ================================================
[2026-06-05 09:06:11,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:06:11
[2026-06-05 09:06:12,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:06:12,878.878 INFO    ] Initializing speech engine...
[2026-06-05 09:06:12,885.885 INFO    ] 2026-06-05 09:06:12
[2026-06-05 09:06:13,137.137 INFO    ] 2026-06-05 09:06:13
[2026-06-05 09:06:13,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:06:13,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:06:13,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:06:13,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:06:13,623.623 INFO    ] time= 05/06/2026 09:06:13
[2026-06-05 09:06:13,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:06:13,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:06:13,770.770 INFO    ] No existing commands found in stream
[2026-06-05 09:06:18,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:06:18,785.785 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 09:06:22,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:06:22,283.283 INFO    ] Checking for system updates...
[2026-06-05 09:06:22,319.319 INFO    ] 200
[2026-06-05 09:06:22,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:06:22,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:06:22,384.384 INFO    ] No update needed
[2026-06-05 09:06:22,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 09:06:22,420.420 INFO    ] 200
[2026-06-05 09:06:22,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:06:22,463.463 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:06:22,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:06:22,519.519 INFO    ] No camera update needed
[2026-06-05 09:06:22,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:06:22,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:06:22,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:06:22,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:06:24,575.575 INFO    ] ================================================
[2026-06-05 09:06:24,590.590 INFO    ] Launching Daemon at Fri Jun  5 09:06:24 IST 2026
[2026-06-05 09:06:24,601.601 INFO    ] ================================================
[2026-06-05 09:06:25,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:06:25
[2026-06-05 09:06:25,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:06:26,029.029 INFO    ] Initializing speech engine...
[2026-06-05 09:06:26,048.048 INFO    ] 2026-06-05 09:06:26
[2026-06-05 09:06:26,299.299 INFO    ] 2026-06-05 09:06:26
[2026-06-05 09:06:26,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:06:26,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:06:26,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:06:26,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:06:26,656.656 INFO    ] time= 05/06/2026 09:06:26
[2026-06-05 09:06:26,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:06:26,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:06:26,818.818 INFO    ] No existing commands found in stream
[2026-06-05 09:06:31,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:06:31,846.846 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 09:06:33,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:06:33,475.475 INFO    ] Checking for system updates...
[2026-06-05 09:06:33,510.510 INFO    ] 200
[2026-06-05 09:06:33,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:06:33,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:06:33,569.569 INFO    ] No update needed
[2026-06-05 09:06:33,571.571 INFO    ] Checking for camera pi updates...
[2026-06-05 09:06:33,608.608 INFO    ] 200
[2026-06-05 09:06:33,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:06:33,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:06:33,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:06:33,710.710 INFO    ] No camera update needed
[2026-06-05 09:06:33,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:06:33,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:06:33,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:06:33,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:06:35,768.768 INFO    ] ================================================
[2026-06-05 09:06:35,783.783 INFO    ] Launching Daemon at Fri Jun  5 09:06:35 IST 2026
[2026-06-05 09:06:35,794.794 INFO    ] ================================================
[2026-06-05 09:06:36,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:06:36
[2026-06-05 09:06:37,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:06:37,369.369 INFO    ] Initializing speech engine...
[2026-06-05 09:06:37,383.383 INFO    ] 2026-06-05 09:06:37
[2026-06-05 09:06:37,665.665 INFO    ] 2026-06-05 09:06:37
[2026-06-05 09:06:37,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:06:37,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:06:37,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:06:38,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:06:38,135.135 INFO    ] time= 05/06/2026 09:06:38
[2026-06-05 09:06:38,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:06:38,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:06:38,372.372 INFO    ] No existing commands found in stream
[2026-06-05 09:06:43,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:06:43,389.389 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 09:06:47,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:06:47,455.455 INFO    ] Checking for system updates...
[2026-06-05 09:06:47,492.492 INFO    ] 200
[2026-06-05 09:06:47,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:06:47,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:06:47,558.558 INFO    ] No update needed
[2026-06-05 09:06:47,561.561 INFO    ] Checking for camera pi updates...
[2026-06-05 09:06:47,597.597 INFO    ] 200
[2026-06-05 09:06:47,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:06:47,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:06:47,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:06:47,684.684 INFO    ] No camera update needed
[2026-06-05 09:06:47,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:06:47,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:06:47,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:06:47,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:06:49,743.743 INFO    ] ================================================
[2026-06-05 09:06:49,758.758 INFO    ] Launching Daemon at Fri Jun  5 09:06:49 IST 2026
[2026-06-05 09:06:49,769.769 INFO    ] ================================================
[2026-06-05 09:06:50,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:06:50
[2026-06-05 09:06:50,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:06:51,169.169 INFO    ] Initializing speech engine...
[2026-06-05 09:06:51,176.176 INFO    ] 2026-06-05 09:06:51
[2026-06-05 09:06:51,449.449 INFO    ] 2026-06-05 09:06:51
[2026-06-05 09:06:51,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:06:51,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:06:51,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:06:51,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:06:51,965.965 INFO    ] time= 05/06/2026 09:06:51
[2026-06-05 09:06:52,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:06:52,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:06:52,137.137 INFO    ] No existing commands found in stream
[2026-06-05 09:06:57,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:06:57,162.162 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 09:07:00,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:07:00,698.698 INFO    ] Checking for system updates...
[2026-06-05 09:07:00,739.739 INFO    ] 200
[2026-06-05 09:07:00,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:00,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:07:00,798.798 INFO    ] No update needed
[2026-06-05 09:07:00,801.801 INFO    ] Checking for camera pi updates...
[2026-06-05 09:07:00,839.839 INFO    ] 200
[2026-06-05 09:07:00,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:00,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:07:00,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:07:00,939.939 INFO    ] No camera update needed
[2026-06-05 09:07:00,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:07:00,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:07:00,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:07:00,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:07:03,995.995 INFO    ] ================================================
[2026-06-05 09:07:03,010.010 INFO    ] Launching Daemon at Fri Jun  5 09:07:03 IST 2026
[2026-06-05 09:07:03,021.021 INFO    ] ================================================
[2026-06-05 09:07:03,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:07:03
[2026-06-05 09:07:04,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:07:04,494.494 INFO    ] Initializing speech engine...
[2026-06-05 09:07:04,502.502 INFO    ] 2026-06-05 09:07:04
[2026-06-05 09:07:04,759.759 INFO    ] 2026-06-05 09:07:04
[2026-06-05 09:07:04,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:07:05,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:07:05,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:07:05,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:07:05,204.204 INFO    ] time= 05/06/2026 09:07:05
[2026-06-05 09:07:05,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:07:05,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:07:05,373.373 INFO    ] No existing commands found in stream
[2026-06-05 09:07:10,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:07:10,409.409 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 09:07:11,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:07:11,831.831 INFO    ] Checking for system updates...
[2026-06-05 09:07:11,868.868 INFO    ] 200
[2026-06-05 09:07:11,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:11,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:07:11,934.934 INFO    ] No update needed
[2026-06-05 09:07:11,937.937 INFO    ] Checking for camera pi updates...
[2026-06-05 09:07:11,971.971 INFO    ] 200
[2026-06-05 09:07:11,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:12,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:07:12,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:07:12,088.088 INFO    ] No camera update needed
[2026-06-05 09:07:12,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:07:12,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:07:12,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:07:12,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:07:14,148.148 INFO    ] ================================================
[2026-06-05 09:07:14,163.163 INFO    ] Launching Daemon at Fri Jun  5 09:07:14 IST 2026
[2026-06-05 09:07:14,174.174 INFO    ] ================================================
[2026-06-05 09:07:14,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:07:14
[2026-06-05 09:07:15,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:07:15,647.647 INFO    ] Initializing speech engine...
[2026-06-05 09:07:15,658.658 INFO    ] 2026-06-05 09:07:15
[2026-06-05 09:07:15,947.947 INFO    ] 2026-06-05 09:07:15
[2026-06-05 09:07:15,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:07:16,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:07:16,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:07:16,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:07:16,338.338 INFO    ] time= 05/06/2026 09:07:16
[2026-06-05 09:07:16,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:07:16,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:07:16,454.454 INFO    ] No existing commands found in stream
[2026-06-05 09:07:21,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:07:21,488.488 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 09:07:23,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:07:23,793.793 INFO    ] Checking for system updates...
[2026-06-05 09:07:23,829.829 INFO    ] 200
[2026-06-05 09:07:23,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:23,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:07:23,888.888 INFO    ] No update needed
[2026-06-05 09:07:23,891.891 INFO    ] Checking for camera pi updates...
[2026-06-05 09:07:23,924.924 INFO    ] 200
[2026-06-05 09:07:23,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:23,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:07:24,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:07:24,020.020 INFO    ] No camera update needed
[2026-06-05 09:07:24,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:07:24,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:07:24,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:07:24,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:07:26,076.076 INFO    ] ================================================
[2026-06-05 09:07:26,092.092 INFO    ] Launching Daemon at Fri Jun  5 09:07:26 IST 2026
[2026-06-05 09:07:26,102.102 INFO    ] ================================================
[2026-06-05 09:07:26,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:07:26
[2026-06-05 09:07:27,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:07:27,535.535 INFO    ] Initializing speech engine...
[2026-06-05 09:07:27,542.542 INFO    ] 2026-06-05 09:07:27
[2026-06-05 09:07:27,858.858 INFO    ] 2026-06-05 09:07:27
[2026-06-05 09:07:27,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:07:28,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:07:28,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:07:29,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:07:29,797.797 INFO    ] time= 05/06/2026 09:07:29
[2026-06-05 09:07:29,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:07:29,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:07:29,919.919 INFO    ] No existing commands found in stream
[2026-06-05 09:07:34,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:07:34,932.932 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 09:07:35,604.604 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:07:35,607.607 INFO    ] Checking for system updates...
[2026-06-05 09:07:35,644.644 INFO    ] 200
[2026-06-05 09:07:35,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:35,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:07:35,708.708 INFO    ] No update needed
[2026-06-05 09:07:35,711.711 INFO    ] Checking for camera pi updates...
[2026-06-05 09:07:35,748.748 INFO    ] 200
[2026-06-05 09:07:35,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:35,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:07:35,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:07:35,844.844 INFO    ] No camera update needed
[2026-06-05 09:07:35,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:07:35,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:07:35,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:07:35,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:07:37,899.899 INFO    ] ================================================
[2026-06-05 09:07:37,915.915 INFO    ] Launching Daemon at Fri Jun  5 09:07:37 IST 2026
[2026-06-05 09:07:37,926.926 INFO    ] ================================================
[2026-06-05 09:07:38,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:07:38
[2026-06-05 09:07:39,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:07:39,604.604 INFO    ] Initializing speech engine...
[2026-06-05 09:07:39,624.624 INFO    ] 2026-06-05 09:07:39
[2026-06-05 09:07:39,905.905 INFO    ] 2026-06-05 09:07:39
[2026-06-05 09:07:39,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:07:40,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:07:40,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:07:40,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:07:40,291.291 INFO    ] time= 05/06/2026 09:07:40
[2026-06-05 09:07:40,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:07:40,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:07:40,420.420 INFO    ] No existing commands found in stream
[2026-06-05 09:07:45,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:07:45,438.438 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 09:07:47,430.430 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:07:47,432.432 INFO    ] Checking for system updates...
[2026-06-05 09:07:47,473.473 INFO    ] 200
[2026-06-05 09:07:47,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:47,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:07:47,530.530 INFO    ] No update needed
[2026-06-05 09:07:47,533.533 INFO    ] Checking for camera pi updates...
[2026-06-05 09:07:47,567.567 INFO    ] 200
[2026-06-05 09:07:47,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:07:47,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:07:47,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:07:47,657.657 INFO    ] No camera update needed
[2026-06-05 09:07:47,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:07:47,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:07:47,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:07:47,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:07:49,715.715 INFO    ] ================================================
[2026-06-05 09:07:49,731.731 INFO    ] Launching Daemon at Fri Jun  5 09:07:49 IST 2026
[2026-06-05 09:07:49,742.742 INFO    ] ================================================
[2026-06-05 09:07:50,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:07:50
[2026-06-05 09:07:50,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:07:51,186.186 INFO    ] Initializing speech engine...
[2026-06-05 09:07:51,193.193 INFO    ] 2026-06-05 09:07:51
[2026-06-05 09:07:51,499.499 INFO    ] 2026-06-05 09:07:51
[2026-06-05 09:07:51,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:07:51,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:07:51,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:07:51,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:07:51,887.887 INFO    ] time= 05/06/2026 09:07:51
[2026-06-05 09:07:51,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:07:51,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:07:52,016.016 INFO    ] No existing commands found in stream
[2026-06-05 09:07:57,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:07:57,030.030 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 09:08:00,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:08:00,189.189 INFO    ] Checking for system updates...
[2026-06-05 09:08:00,228.228 INFO    ] 200
[2026-06-05 09:08:00,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:00,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:08:00,289.289 INFO    ] No update needed
[2026-06-05 09:08:00,292.292 INFO    ] Checking for camera pi updates...
[2026-06-05 09:08:00,327.327 INFO    ] 200
[2026-06-05 09:08:00,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:00,372.372 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:08:00,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:08:00,429.429 INFO    ] No camera update needed
[2026-06-05 09:08:00,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:08:00,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:08:00,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:08:00,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:08:02,491.491 INFO    ] ================================================
[2026-06-05 09:08:02,512.512 INFO    ] Launching Daemon at Fri Jun  5 09:08:02 IST 2026
[2026-06-05 09:08:02,529.529 INFO    ] ================================================
[2026-06-05 09:08:03,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:08:03
[2026-06-05 09:08:03,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:08:04,215.215 INFO    ] Initializing speech engine...
[2026-06-05 09:08:04,221.221 INFO    ] 2026-06-05 09:08:04
[2026-06-05 09:08:04,497.497 INFO    ] 2026-06-05 09:08:04
[2026-06-05 09:08:04,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:08:04,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:08:04,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:08:04,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:08:04,940.940 INFO    ] time= 05/06/2026 09:08:04
[2026-06-05 09:08:05,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:08:05,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:08:05,207.207 INFO    ] No existing commands found in stream
[2026-06-05 09:08:10,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:08:10,220.220 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 09:08:13,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:08:13,189.189 INFO    ] Checking for system updates...
[2026-06-05 09:08:13,226.226 INFO    ] 200
[2026-06-05 09:08:13,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:13,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:08:13,292.292 INFO    ] No update needed
[2026-06-05 09:08:13,294.294 INFO    ] Checking for camera pi updates...
[2026-06-05 09:08:13,332.332 INFO    ] 200
[2026-06-05 09:08:13,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:13,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:08:13,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:08:13,418.418 INFO    ] No camera update needed
[2026-06-05 09:08:13,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:08:13,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:08:13,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:08:13,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:08:15,476.476 INFO    ] ================================================
[2026-06-05 09:08:15,491.491 INFO    ] Launching Daemon at Fri Jun  5 09:08:15 IST 2026
[2026-06-05 09:08:15,501.501 INFO    ] ================================================
[2026-06-05 09:08:16,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:08:16
[2026-06-05 09:08:16,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:08:17,033.033 INFO    ] Initializing speech engine...
[2026-06-05 09:08:17,039.039 INFO    ] 2026-06-05 09:08:17
[2026-06-05 09:08:17,302.302 INFO    ] 2026-06-05 09:08:17
[2026-06-05 09:08:17,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:08:17,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:08:17,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:08:17,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:08:17,745.745 INFO    ] time= 05/06/2026 09:08:17
[2026-06-05 09:08:17,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:08:17,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:08:18,000.000 INFO    ] No existing commands found in stream
[2026-06-05 09:08:23,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:08:23,017.017 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 09:08:26,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:08:26,807.807 INFO    ] Checking for system updates...
[2026-06-05 09:08:26,844.844 INFO    ] 200
[2026-06-05 09:08:26,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:26,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:08:26,905.905 INFO    ] No update needed
[2026-06-05 09:08:26,908.908 INFO    ] Checking for camera pi updates...
[2026-06-05 09:08:26,947.947 INFO    ] 200
[2026-06-05 09:08:26,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:26,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:08:27,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:08:27,037.037 INFO    ] No camera update needed
[2026-06-05 09:08:27,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:08:27,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:08:27,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:08:27,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:08:29,094.094 INFO    ] ================================================
[2026-06-05 09:08:29,109.109 INFO    ] Launching Daemon at Fri Jun  5 09:08:29 IST 2026
[2026-06-05 09:08:29,120.120 INFO    ] ================================================
[2026-06-05 09:08:29,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:08:29
[2026-06-05 09:08:30,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:08:30,579.579 INFO    ] Initializing speech engine...
[2026-06-05 09:08:30,585.585 INFO    ] 2026-06-05 09:08:30
[2026-06-05 09:08:30,847.847 INFO    ] 2026-06-05 09:08:30
[2026-06-05 09:08:30,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:08:31,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:08:31,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:08:31,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:08:31,357.357 INFO    ] time= 05/06/2026 09:08:31
[2026-06-05 09:08:31,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:08:31,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:08:31,532.532 INFO    ] No existing commands found in stream
[2026-06-05 09:08:36,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:08:36,547.547 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 09:08:37,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:08:37,129.129 INFO    ] Checking for system updates...
[2026-06-05 09:08:37,168.168 INFO    ] 200
[2026-06-05 09:08:37,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:37,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:08:37,227.227 INFO    ] No update needed
[2026-06-05 09:08:37,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 09:08:37,263.263 INFO    ] 200
[2026-06-05 09:08:37,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:37,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:08:37,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:08:37,364.364 INFO    ] No camera update needed
[2026-06-05 09:08:37,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:08:37,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:08:37,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:08:37,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:08:39,421.421 INFO    ] ================================================
[2026-06-05 09:08:39,436.436 INFO    ] Launching Daemon at Fri Jun  5 09:08:39 IST 2026
[2026-06-05 09:08:39,447.447 INFO    ] ================================================
[2026-06-05 09:08:40,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:08:40
[2026-06-05 09:08:40,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:08:40,923.923 INFO    ] Initializing speech engine...
[2026-06-05 09:08:40,929.929 INFO    ] 2026-06-05 09:08:40
[2026-06-05 09:08:41,179.179 INFO    ] 2026-06-05 09:08:41
[2026-06-05 09:08:41,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:08:41,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:08:41,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:08:41,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:08:41,648.648 INFO    ] time= 05/06/2026 09:08:41
[2026-06-05 09:08:41,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:08:41,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:08:41,866.866 INFO    ] No existing commands found in stream
[2026-06-05 09:08:46,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:08:46,900.900 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 09:08:50,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:08:50,616.616 INFO    ] Checking for system updates...
[2026-06-05 09:08:50,653.653 INFO    ] 200
[2026-06-05 09:08:50,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:50,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:08:50,715.715 INFO    ] No update needed
[2026-06-05 09:08:50,718.718 INFO    ] Checking for camera pi updates...
[2026-06-05 09:08:50,755.755 INFO    ] 200
[2026-06-05 09:08:50,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:08:50,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:08:50,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:08:50,854.854 INFO    ] No camera update needed
[2026-06-05 09:08:50,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:08:50,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:08:50,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:08:50,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:08:52,911.911 INFO    ] ================================================
[2026-06-05 09:08:52,926.926 INFO    ] Launching Daemon at Fri Jun  5 09:08:52 IST 2026
[2026-06-05 09:08:52,937.937 INFO    ] ================================================
[2026-06-05 09:08:53,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:08:53
[2026-06-05 09:08:54,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:08:54,393.393 INFO    ] Initializing speech engine...
[2026-06-05 09:08:54,402.402 INFO    ] 2026-06-05 09:08:54
[2026-06-05 09:08:54,655.655 INFO    ] 2026-06-05 09:08:54
[2026-06-05 09:08:54,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:08:54,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:08:54,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:08:55,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:08:55,159.159 INFO    ] time= 05/06/2026 09:08:55
[2026-06-05 09:08:55,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:08:55,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:08:55,367.367 INFO    ] No existing commands found in stream
[2026-06-05 09:09:00,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:09:00,383.383 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 09:09:02,074.074 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:09:02,077.077 INFO    ] Checking for system updates...
[2026-06-05 09:09:02,121.121 INFO    ] 200
[2026-06-05 09:09:02,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:02,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:09:02,195.195 INFO    ] No update needed
[2026-06-05 09:09:02,197.197 INFO    ] Checking for camera pi updates...
[2026-06-05 09:09:02,236.236 INFO    ] 200
[2026-06-05 09:09:02,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:02,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:09:02,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:09:02,360.360 INFO    ] No camera update needed
[2026-06-05 09:09:02,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:09:02,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:09:02,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:09:02,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:09:04,421.421 INFO    ] ================================================
[2026-06-05 09:09:04,436.436 INFO    ] Launching Daemon at Fri Jun  5 09:09:04 IST 2026
[2026-06-05 09:09:04,447.447 INFO    ] ================================================
[2026-06-05 09:09:05,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:09:05
[2026-06-05 09:09:05,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:09:05,921.921 INFO    ] Initializing speech engine...
[2026-06-05 09:09:05,931.931 INFO    ] 2026-06-05 09:09:05
[2026-06-05 09:09:06,204.204 INFO    ] 2026-06-05 09:09:06
[2026-06-05 09:09:06,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:09:06,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:09:06,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:09:06,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:09:06,763.763 INFO    ] time= 05/06/2026 09:09:06
[2026-06-05 09:09:06,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:09:06,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:09:06,905.905 INFO    ] No existing commands found in stream
[2026-06-05 09:09:11,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:09:11,932.932 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 09:09:12,432.432 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:09:12,434.434 INFO    ] Checking for system updates...
[2026-06-05 09:09:12,471.471 INFO    ] 200
[2026-06-05 09:09:12,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:12,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:09:12,532.532 INFO    ] No update needed
[2026-06-05 09:09:12,535.535 INFO    ] Checking for camera pi updates...
[2026-06-05 09:09:12,575.575 INFO    ] 200
[2026-06-05 09:09:12,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:12,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:09:12,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:09:12,683.683 INFO    ] No camera update needed
[2026-06-05 09:09:12,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:09:12,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:09:12,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:09:12,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:09:14,739.739 INFO    ] ================================================
[2026-06-05 09:09:14,772.772 INFO    ] Launching Daemon at Fri Jun  5 09:09:14 IST 2026
[2026-06-05 09:09:14,786.786 INFO    ] ================================================
[2026-06-05 09:09:15,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:09:15
[2026-06-05 09:09:16,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:09:16,376.376 INFO    ] Initializing speech engine...
[2026-06-05 09:09:16,390.390 INFO    ] 2026-06-05 09:09:16
[2026-06-05 09:09:16,677.677 INFO    ] 2026-06-05 09:09:16
[2026-06-05 09:09:16,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:09:16,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:09:16,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:09:17,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:09:17,208.208 INFO    ] time= 05/06/2026 09:09:17
[2026-06-05 09:09:17,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:09:17,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:09:17,362.362 INFO    ] No existing commands found in stream
[2026-06-05 09:09:22,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:09:22,379.379 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 09:09:24,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:09:24,934.934 INFO    ] Checking for system updates...
[2026-06-05 09:09:24,972.972 INFO    ] 200
[2026-06-05 09:09:24,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:25,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:09:25,038.038 INFO    ] No update needed
[2026-06-05 09:09:25,041.041 INFO    ] Checking for camera pi updates...
[2026-06-05 09:09:25,079.079 INFO    ] 200
[2026-06-05 09:09:25,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:25,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:09:25,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:09:25,169.169 INFO    ] No camera update needed
[2026-06-05 09:09:25,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:09:25,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:09:25,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:09:25,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:09:27,225.225 INFO    ] ================================================
[2026-06-05 09:09:27,241.241 INFO    ] Launching Daemon at Fri Jun  5 09:09:27 IST 2026
[2026-06-05 09:09:27,251.251 INFO    ] ================================================
[2026-06-05 09:09:27,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:09:27
[2026-06-05 09:09:28,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:09:28,896.896 INFO    ] Initializing speech engine...
[2026-06-05 09:09:28,908.908 INFO    ] 2026-06-05 09:09:28
[2026-06-05 09:09:29,193.193 INFO    ] 2026-06-05 09:09:29
[2026-06-05 09:09:29,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:09:30,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:09:30,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:09:30,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:09:30,308.308 INFO    ] time= 05/06/2026 09:09:30
[2026-06-05 09:09:30,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:09:30,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:09:30,421.421 INFO    ] No existing commands found in stream
[2026-06-05 09:09:35,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:09:35,435.435 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 09:09:36,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:09:36,854.854 INFO    ] Checking for system updates...
[2026-06-05 09:09:36,890.890 INFO    ] 200
[2026-06-05 09:09:36,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:36,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:09:36,955.955 INFO    ] No update needed
[2026-06-05 09:09:36,959.959 INFO    ] Checking for camera pi updates...
[2026-06-05 09:09:36,993.993 INFO    ] 200
[2026-06-05 09:09:36,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:37,038.038 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:09:37,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:09:37,185.185 INFO    ] No camera update needed
[2026-06-05 09:09:37,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:09:37,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:09:37,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:09:37,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:09:39,246.246 INFO    ] ================================================
[2026-06-05 09:09:39,261.261 INFO    ] Launching Daemon at Fri Jun  5 09:09:39 IST 2026
[2026-06-05 09:09:39,272.272 INFO    ] ================================================
[2026-06-05 09:09:39,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:09:39
[2026-06-05 09:09:40,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:09:40,824.824 INFO    ] Initializing speech engine...
[2026-06-05 09:09:40,839.839 INFO    ] 2026-06-05 09:09:40
[2026-06-05 09:09:41,124.124 INFO    ] 2026-06-05 09:09:41
[2026-06-05 09:09:41,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:09:41,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:09:41,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:09:41,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:09:41,654.654 INFO    ] time= 05/06/2026 09:09:41
[2026-06-05 09:09:41,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:09:41,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:09:41,807.807 INFO    ] No existing commands found in stream
[2026-06-05 09:09:46,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:09:46,827.827 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 09:09:50,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:09:50,127.127 INFO    ] Checking for system updates...
[2026-06-05 09:09:50,168.168 INFO    ] 200
[2026-06-05 09:09:50,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:50,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:09:50,232.232 INFO    ] No update needed
[2026-06-05 09:09:50,234.234 INFO    ] Checking for camera pi updates...
[2026-06-05 09:09:50,273.273 INFO    ] 200
[2026-06-05 09:09:50,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:09:50,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:09:50,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:09:50,378.378 INFO    ] No camera update needed
[2026-06-05 09:09:50,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:09:50,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:09:50,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:09:50,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:09:52,435.435 INFO    ] ================================================
[2026-06-05 09:09:52,451.451 INFO    ] Launching Daemon at Fri Jun  5 09:09:52 IST 2026
[2026-06-05 09:09:52,462.462 INFO    ] ================================================
[2026-06-05 09:09:53,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:09:53
[2026-06-05 09:09:53,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:09:54,026.026 INFO    ] Initializing speech engine...
[2026-06-05 09:09:54,035.035 INFO    ] 2026-06-05 09:09:54
[2026-06-05 09:09:54,304.304 INFO    ] 2026-06-05 09:09:54
[2026-06-05 09:09:54,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:09:54,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:09:54,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:09:54,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:09:54,668.668 INFO    ] time= 05/06/2026 09:09:54
[2026-06-05 09:09:54,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:09:54,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:09:54,866.866 INFO    ] No existing commands found in stream
[2026-06-05 09:09:59,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:09:59,882.882 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 09:10:07,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:10:07,071.071 INFO    ] Checking for system updates...
[2026-06-05 09:10:07,108.108 INFO    ] 200
[2026-06-05 09:10:07,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:10:07,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:10:07,168.168 INFO    ] No update needed
[2026-06-05 09:10:07,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 09:10:07,209.209 INFO    ] 200
[2026-06-05 09:10:07,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:10:07,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:10:07,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:10:07,310.310 INFO    ] No camera update needed
[2026-06-05 09:10:07,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:10:07,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:10:07,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:10:07,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:10:09,367.367 INFO    ] ================================================
[2026-06-05 09:10:09,383.383 INFO    ] Launching Daemon at Fri Jun  5 09:10:09 IST 2026
[2026-06-05 09:10:09,394.394 INFO    ] ================================================
[2026-06-05 09:10:09,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:10:09
[2026-06-05 09:10:10,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:10:10,822.822 INFO    ] Initializing speech engine...
[2026-06-05 09:10:10,835.835 INFO    ] 2026-06-05 09:10:10
[2026-06-05 09:10:11,100.100 INFO    ] 2026-06-05 09:10:11
[2026-06-05 09:10:11,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:10:11,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:10:11,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:10:11,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:10:11,590.590 INFO    ] time= 05/06/2026 09:10:11
[2026-06-05 09:10:11,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:10:11,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:10:11,705.705 INFO    ] No existing commands found in stream
[2026-06-05 09:10:16,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:10:16,719.719 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 09:10:20,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:10:20,832.832 INFO    ] Checking for system updates...
[2026-06-05 09:10:20,872.872 INFO    ] 200
[2026-06-05 09:10:20,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:10:20,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:10:20,929.929 INFO    ] No update needed
[2026-06-05 09:10:20,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 09:10:20,966.966 INFO    ] 200
[2026-06-05 09:10:20,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:10:21,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:10:21,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:10:21,061.061 INFO    ] No camera update needed
[2026-06-05 09:10:21,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:10:21,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:10:21,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:10:21,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:10:23,117.117 INFO    ] ================================================
[2026-06-05 09:10:23,134.134 INFO    ] Launching Daemon at Fri Jun  5 09:10:23 IST 2026
[2026-06-05 09:10:23,146.146 INFO    ] ================================================
[2026-06-05 09:10:23,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:10:23
[2026-06-05 09:10:24,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:10:24,624.624 INFO    ] Initializing speech engine...
[2026-06-05 09:10:24,646.646 INFO    ] 2026-06-05 09:10:24
[2026-06-05 09:10:24,905.905 INFO    ] 2026-06-05 09:10:24
[2026-06-05 09:10:24,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:10:25,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:10:25,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:10:25,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:10:25,283.283 INFO    ] time= 05/06/2026 09:10:25
[2026-06-05 09:10:25,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:10:25,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:10:25,483.483 INFO    ] No existing commands found in stream
[2026-06-05 09:10:30,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:10:30,498.498 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 09:10:32,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:10:32,399.399 INFO    ] Checking for system updates...
[2026-06-05 09:10:32,449.449 INFO    ] 200
[2026-06-05 09:10:32,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:10:32,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:10:32,507.507 INFO    ] No update needed
[2026-06-05 09:10:32,510.510 INFO    ] Checking for camera pi updates...
[2026-06-05 09:10:32,543.543 INFO    ] 200
[2026-06-05 09:10:32,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:10:32,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:10:32,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:10:32,625.625 INFO    ] No camera update needed
[2026-06-05 09:10:32,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:10:32,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:10:32,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:10:32,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:10:34,682.682 INFO    ] ================================================
[2026-06-05 09:10:34,699.699 INFO    ] Launching Daemon at Fri Jun  5 09:10:34 IST 2026
[2026-06-05 09:10:34,710.710 INFO    ] ================================================
[2026-06-05 09:10:35,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:10:35
[2026-06-05 09:10:35,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:10:36,194.194 INFO    ] Initializing speech engine...
[2026-06-05 09:10:36,203.203 INFO    ] 2026-06-05 09:10:36
[2026-06-05 09:10:36,464.464 INFO    ] 2026-06-05 09:10:36
[2026-06-05 09:10:36,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:10:36,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:10:36,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:10:36,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:10:36,933.933 INFO    ] time= 05/06/2026 09:10:36
[2026-06-05 09:10:36,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:10:37,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:10:37,139.139 INFO    ] No existing commands found in stream
[2026-06-05 09:10:42,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:10:42,172.172 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 09:10:46,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:10:46,156.156 INFO    ] Checking for system updates...
[2026-06-05 09:10:46,198.198 INFO    ] 200
[2026-06-05 09:10:46,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:10:46,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:10:46,258.258 INFO    ] No update needed
[2026-06-05 09:10:46,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 09:10:46,296.296 INFO    ] 200
[2026-06-05 09:10:46,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:10:46,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:10:46,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:10:46,403.403 INFO    ] No camera update needed
[2026-06-05 09:10:46,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:10:46,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:10:46,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:10:46,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:10:48,462.462 INFO    ] ================================================
[2026-06-05 09:10:48,477.477 INFO    ] Launching Daemon at Fri Jun  5 09:10:48 IST 2026
[2026-06-05 09:10:48,488.488 INFO    ] ================================================
[2026-06-05 09:10:49,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:10:49
[2026-06-05 09:10:49,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:10:49,951.951 INFO    ] Initializing speech engine...
[2026-06-05 09:10:49,958.958 INFO    ] 2026-06-05 09:10:49
[2026-06-05 09:10:50,236.236 INFO    ] 2026-06-05 09:10:50
[2026-06-05 09:10:50,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:10:50,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:10:50,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:10:50,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:10:50,706.706 INFO    ] time= 05/06/2026 09:10:50
[2026-06-05 09:10:50,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:10:50,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:10:50,900.900 INFO    ] No existing commands found in stream
[2026-06-05 09:10:55,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:10:55,931.931 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 09:11:00,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:11:00,019.019 INFO    ] Checking for system updates...
[2026-06-05 09:11:00,056.056 INFO    ] 200
[2026-06-05 09:11:00,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:00,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:11:00,127.127 INFO    ] No update needed
[2026-06-05 09:11:00,130.130 INFO    ] Checking for camera pi updates...
[2026-06-05 09:11:00,167.167 INFO    ] 200
[2026-06-05 09:11:00,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:00,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:11:00,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:11:00,304.304 INFO    ] No camera update needed
[2026-06-05 09:11:00,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:11:00,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:11:00,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:11:00,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:11:02,379.379 INFO    ] ================================================
[2026-06-05 09:11:02,401.401 INFO    ] Launching Daemon at Fri Jun  5 09:11:02 IST 2026
[2026-06-05 09:11:02,418.418 INFO    ] ================================================
[2026-06-05 09:11:03,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:11:03
[2026-06-05 09:11:03,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:11:03,948.948 INFO    ] Initializing speech engine...
[2026-06-05 09:11:03,955.955 INFO    ] 2026-06-05 09:11:03
[2026-06-05 09:11:04,213.213 INFO    ] 2026-06-05 09:11:04
[2026-06-05 09:11:04,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:11:04,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:11:04,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:11:04,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:11:04,662.662 INFO    ] time= 05/06/2026 09:11:04
[2026-06-05 09:11:04,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:11:04,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:11:04,997.997 INFO    ] No existing commands found in stream
[2026-06-05 09:11:10,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:11:10,025.025 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 09:11:11,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:11:11,186.186 INFO    ] Checking for system updates...
[2026-06-05 09:11:11,224.224 INFO    ] 200
[2026-06-05 09:11:11,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:11,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:11:11,287.287 INFO    ] No update needed
[2026-06-05 09:11:11,289.289 INFO    ] Checking for camera pi updates...
[2026-06-05 09:11:11,328.328 INFO    ] 200
[2026-06-05 09:11:11,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:11,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:11:11,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:11:11,425.425 INFO    ] No camera update needed
[2026-06-05 09:11:11,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:11:11,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:11:11,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:11:11,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:11:13,481.481 INFO    ] ================================================
[2026-06-05 09:11:13,496.496 INFO    ] Launching Daemon at Fri Jun  5 09:11:13 IST 2026
[2026-06-05 09:11:13,508.508 INFO    ] ================================================
[2026-06-05 09:11:14,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:11:14
[2026-06-05 09:11:14,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:11:14,961.961 INFO    ] Initializing speech engine...
[2026-06-05 09:11:14,971.971 INFO    ] 2026-06-05 09:11:14
[2026-06-05 09:11:15,232.232 INFO    ] 2026-06-05 09:11:15
[2026-06-05 09:11:15,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:11:15,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:11:15,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:11:15,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:11:15,657.657 INFO    ] time= 05/06/2026 09:11:15
[2026-06-05 09:11:15,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:11:15,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:11:15,903.903 INFO    ] No existing commands found in stream
[2026-06-05 09:11:20,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:11:20,937.937 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 09:11:24,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:11:24,734.734 INFO    ] Checking for system updates...
[2026-06-05 09:11:24,771.771 INFO    ] 200
[2026-06-05 09:11:24,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:24,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:11:24,834.834 INFO    ] No update needed
[2026-06-05 09:11:24,837.837 INFO    ] Checking for camera pi updates...
[2026-06-05 09:11:24,872.872 INFO    ] 200
[2026-06-05 09:11:24,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:24,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:11:24,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:11:24,966.966 INFO    ] No camera update needed
[2026-06-05 09:11:24,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:11:24,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:11:24,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:11:24,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:11:27,023.023 INFO    ] ================================================
[2026-06-05 09:11:27,040.040 INFO    ] Launching Daemon at Fri Jun  5 09:11:27 IST 2026
[2026-06-05 09:11:27,051.051 INFO    ] ================================================
[2026-06-05 09:11:27,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:11:27
[2026-06-05 09:11:28,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:11:28,644.644 INFO    ] Initializing speech engine...
[2026-06-05 09:11:28,654.654 INFO    ] 2026-06-05 09:11:28
[2026-06-05 09:11:28,914.914 INFO    ] 2026-06-05 09:11:28
[2026-06-05 09:11:28,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:11:30,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:11:30,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:11:30,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:11:30,246.246 INFO    ] time= 05/06/2026 09:11:30
[2026-06-05 09:11:30,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:11:30,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:11:30,324.324 INFO    ] No existing commands found in stream
[2026-06-05 09:11:35,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:11:35,339.339 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 09:11:39,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:11:39,654.654 INFO    ] Checking for system updates...
[2026-06-05 09:11:39,692.692 INFO    ] 200
[2026-06-05 09:11:39,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:39,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:11:39,751.751 INFO    ] No update needed
[2026-06-05 09:11:39,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 09:11:39,792.792 INFO    ] 200
[2026-06-05 09:11:39,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:39,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:11:39,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:11:39,991.991 INFO    ] No camera update needed
[2026-06-05 09:11:39,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:11:39,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:11:40,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:11:40,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:11:42,051.051 INFO    ] ================================================
[2026-06-05 09:11:42,067.067 INFO    ] Launching Daemon at Fri Jun  5 09:11:42 IST 2026
[2026-06-05 09:11:42,078.078 INFO    ] ================================================
[2026-06-05 09:11:42,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:11:42
[2026-06-05 09:11:43,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:11:43,500.500 INFO    ] Initializing speech engine...
[2026-06-05 09:11:43,519.519 INFO    ] 2026-06-05 09:11:43
[2026-06-05 09:11:43,787.787 INFO    ] 2026-06-05 09:11:43
[2026-06-05 09:11:43,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:11:44,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:11:44,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:11:44,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:11:44,199.199 INFO    ] time= 05/06/2026 09:11:44
[2026-06-05 09:11:44,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:11:44,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:11:44,292.292 INFO    ] No existing commands found in stream
[2026-06-05 09:11:49,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:11:49,320.320 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 09:11:50,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:11:50,475.475 INFO    ] Checking for system updates...
[2026-06-05 09:11:50,513.513 INFO    ] 200
[2026-06-05 09:11:50,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:50,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:11:50,571.571 INFO    ] No update needed
[2026-06-05 09:11:50,573.573 INFO    ] Checking for camera pi updates...
[2026-06-05 09:11:50,607.607 INFO    ] 200
[2026-06-05 09:11:50,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:11:50,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:11:50,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:11:50,745.745 INFO    ] No camera update needed
[2026-06-05 09:11:50,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:11:50,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:11:50,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:11:50,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:11:52,800.800 INFO    ] ================================================
[2026-06-05 09:11:52,816.816 INFO    ] Launching Daemon at Fri Jun  5 09:11:52 IST 2026
[2026-06-05 09:11:52,826.826 INFO    ] ================================================
[2026-06-05 09:11:53,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:11:53
[2026-06-05 09:11:54,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:11:54,433.433 INFO    ] Initializing speech engine...
[2026-06-05 09:11:54,442.442 INFO    ] 2026-06-05 09:11:54
[2026-06-05 09:11:54,725.725 INFO    ] 2026-06-05 09:11:54
[2026-06-05 09:11:54,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:11:55,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:11:55,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:11:55,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:11:55,276.276 INFO    ] time= 05/06/2026 09:11:55
[2026-06-05 09:11:55,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:11:55,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:11:55,426.426 INFO    ] No existing commands found in stream
[2026-06-05 09:12:00,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:12:00,457.457 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 09:12:04,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:12:04,055.055 INFO    ] Checking for system updates...
[2026-06-05 09:12:04,095.095 INFO    ] 200
[2026-06-05 09:12:04,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:04,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:12:04,153.153 INFO    ] No update needed
[2026-06-05 09:12:04,155.155 INFO    ] Checking for camera pi updates...
[2026-06-05 09:12:04,189.189 INFO    ] 200
[2026-06-05 09:12:04,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:04,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:12:04,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:12:04,270.270 INFO    ] No camera update needed
[2026-06-05 09:12:04,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:12:04,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:12:04,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:12:04,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:12:06,325.325 INFO    ] ================================================
[2026-06-05 09:12:06,340.340 INFO    ] Launching Daemon at Fri Jun  5 09:12:06 IST 2026
[2026-06-05 09:12:06,351.351 INFO    ] ================================================
[2026-06-05 09:12:06,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:12:06
[2026-06-05 09:12:07,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:12:07,797.797 INFO    ] Initializing speech engine...
[2026-06-05 09:12:07,818.818 INFO    ] 2026-06-05 09:12:07
[2026-06-05 09:12:08,084.084 INFO    ] 2026-06-05 09:12:08
[2026-06-05 09:12:08,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:12:08,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:12:08,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:12:08,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:12:08,466.466 INFO    ] time= 05/06/2026 09:12:08
[2026-06-05 09:12:08,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:12:08,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:12:08,579.579 INFO    ] No existing commands found in stream
[2026-06-05 09:12:13,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:12:13,598.598 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-05 09:12:14,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:12:14,059.059 INFO    ] Checking for system updates...
[2026-06-05 09:12:14,095.095 INFO    ] 200
[2026-06-05 09:12:14,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:14,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:12:14,152.152 INFO    ] No update needed
[2026-06-05 09:12:14,155.155 INFO    ] Checking for camera pi updates...
[2026-06-05 09:12:14,189.189 INFO    ] 200
[2026-06-05 09:12:14,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:14,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:12:14,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:12:14,296.296 INFO    ] No camera update needed
[2026-06-05 09:12:14,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:12:14,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:12:14,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:12:14,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:12:16,352.352 INFO    ] ================================================
[2026-06-05 09:12:16,368.368 INFO    ] Launching Daemon at Fri Jun  5 09:12:16 IST 2026
[2026-06-05 09:12:16,379.379 INFO    ] ================================================
[2026-06-05 09:12:16,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:12:16
[2026-06-05 09:12:17,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:12:17,838.838 INFO    ] Initializing speech engine...
[2026-06-05 09:12:17,848.848 INFO    ] 2026-06-05 09:12:17
[2026-06-05 09:12:18,101.101 INFO    ] 2026-06-05 09:12:18
[2026-06-05 09:12:18,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:12:18,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:12:18,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:12:18,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:12:18,679.679 INFO    ] time= 05/06/2026 09:12:18
[2026-06-05 09:12:18,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:12:18,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:12:18,819.819 INFO    ] No existing commands found in stream
[2026-06-05 09:12:23,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:12:23,847.847 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 09:12:27,191.191 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:12:27,194.194 INFO    ] Checking for system updates...
[2026-06-05 09:12:27,230.230 INFO    ] 200
[2026-06-05 09:12:27,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:27,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:12:27,289.289 INFO    ] No update needed
[2026-06-05 09:12:27,291.291 INFO    ] Checking for camera pi updates...
[2026-06-05 09:12:27,328.328 INFO    ] 200
[2026-06-05 09:12:27,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:27,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:12:27,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:12:27,420.420 INFO    ] No camera update needed
[2026-06-05 09:12:27,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:12:27,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:12:27,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:12:27,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:12:29,477.477 INFO    ] ================================================
[2026-06-05 09:12:29,492.492 INFO    ] Launching Daemon at Fri Jun  5 09:12:29 IST 2026
[2026-06-05 09:12:29,503.503 INFO    ] ================================================
[2026-06-05 09:12:30,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:12:30
[2026-06-05 09:12:30,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:12:30,906.906 INFO    ] Initializing speech engine...
[2026-06-05 09:12:30,915.915 INFO    ] 2026-06-05 09:12:30
[2026-06-05 09:12:31,201.201 INFO    ] 2026-06-05 09:12:31
[2026-06-05 09:12:31,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:12:31,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:12:31,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:12:31,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:12:31,605.605 INFO    ] time= 05/06/2026 09:12:31
[2026-06-05 09:12:31,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:12:31,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:12:31,723.723 INFO    ] No existing commands found in stream
[2026-06-05 09:12:36,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:12:36,746.746 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 09:12:40,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:12:40,650.650 INFO    ] Checking for system updates...
[2026-06-05 09:12:40,686.686 INFO    ] 200
[2026-06-05 09:12:40,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:40,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:12:40,749.749 INFO    ] No update needed
[2026-06-05 09:12:40,751.751 INFO    ] Checking for camera pi updates...
[2026-06-05 09:12:40,785.785 INFO    ] 200
[2026-06-05 09:12:40,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:40,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:12:40,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:12:40,887.887 INFO    ] No camera update needed
[2026-06-05 09:12:40,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:12:40,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:12:40,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:12:40,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:12:42,943.943 INFO    ] ================================================
[2026-06-05 09:12:42,959.959 INFO    ] Launching Daemon at Fri Jun  5 09:12:42 IST 2026
[2026-06-05 09:12:42,971.971 INFO    ] ================================================
[2026-06-05 09:12:43,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:12:43
[2026-06-05 09:12:44,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:12:44,473.473 INFO    ] Initializing speech engine...
[2026-06-05 09:12:44,487.487 INFO    ] 2026-06-05 09:12:44
[2026-06-05 09:12:44,766.766 INFO    ] 2026-06-05 09:12:44
[2026-06-05 09:12:44,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:12:44,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:12:45,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:12:45,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:12:45,173.173 INFO    ] time= 05/06/2026 09:12:45
[2026-06-05 09:12:45,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:12:45,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:12:45,357.357 INFO    ] No existing commands found in stream
[2026-06-05 09:12:50,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:12:50,385.385 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 09:12:53,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:12:53,716.716 INFO    ] Checking for system updates...
[2026-06-05 09:12:53,754.754 INFO    ] 200
[2026-06-05 09:12:53,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:53,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:12:53,813.813 INFO    ] No update needed
[2026-06-05 09:12:53,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 09:12:53,853.853 INFO    ] 200
[2026-06-05 09:12:53,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:12:53,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:12:53,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:12:53,953.953 INFO    ] No camera update needed
[2026-06-05 09:12:53,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:12:53,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:12:53,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:12:53,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:12:56,012.012 INFO    ] ================================================
[2026-06-05 09:12:56,027.027 INFO    ] Launching Daemon at Fri Jun  5 09:12:56 IST 2026
[2026-06-05 09:12:56,038.038 INFO    ] ================================================
[2026-06-05 09:12:56,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:12:56
[2026-06-05 09:12:57,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:12:57,620.620 INFO    ] Initializing speech engine...
[2026-06-05 09:12:57,630.630 INFO    ] 2026-06-05 09:12:57
[2026-06-05 09:12:57,902.902 INFO    ] 2026-06-05 09:12:57
[2026-06-05 09:12:57,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:13:00,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:13:00,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:13:00,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:13:00,231.231 INFO    ] time= 05/06/2026 09:13:00
[2026-06-05 09:13:00,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:13:00,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:13:00,335.335 INFO    ] No existing commands found in stream
[2026-06-05 09:13:05,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:13:05,352.352 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 09:13:09,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:13:09,762.762 INFO    ] Checking for system updates...
[2026-06-05 09:13:09,799.799 INFO    ] 200
[2026-06-05 09:13:09,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:09,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:13:09,863.863 INFO    ] No update needed
[2026-06-05 09:13:09,867.867 INFO    ] Checking for camera pi updates...
[2026-06-05 09:13:09,902.902 INFO    ] 200
[2026-06-05 09:13:09,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:09,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:13:10,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:13:10,012.012 INFO    ] No camera update needed
[2026-06-05 09:13:10,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:13:10,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:13:10,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:13:10,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:13:12,073.073 INFO    ] ================================================
[2026-06-05 09:13:12,089.089 INFO    ] Launching Daemon at Fri Jun  5 09:13:12 IST 2026
[2026-06-05 09:13:12,101.101 INFO    ] ================================================
[2026-06-05 09:13:12,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:13:12
[2026-06-05 09:13:13,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:13:13,568.568 INFO    ] Initializing speech engine...
[2026-06-05 09:13:13,576.576 INFO    ] 2026-06-05 09:13:13
[2026-06-05 09:13:13,847.847 INFO    ] 2026-06-05 09:13:13
[2026-06-05 09:13:13,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:13:14,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:13:14,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:13:14,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:13:14,259.259 INFO    ] time= 05/06/2026 09:13:14
[2026-06-05 09:13:14,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:13:14,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:13:14,447.447 INFO    ] No existing commands found in stream
[2026-06-05 09:13:19,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:13:19,485.485 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 09:13:20,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:13:20,205.205 INFO    ] Checking for system updates...
[2026-06-05 09:13:20,241.241 INFO    ] 200
[2026-06-05 09:13:20,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:20,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:13:20,298.298 INFO    ] No update needed
[2026-06-05 09:13:20,301.301 INFO    ] Checking for camera pi updates...
[2026-06-05 09:13:20,335.335 INFO    ] 200
[2026-06-05 09:13:20,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:20,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:13:20,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:13:20,438.438 INFO    ] No camera update needed
[2026-06-05 09:13:20,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:13:20,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:13:20,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:13:20,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:13:22,493.493 INFO    ] ================================================
[2026-06-05 09:13:22,508.508 INFO    ] Launching Daemon at Fri Jun  5 09:13:22 IST 2026
[2026-06-05 09:13:22,519.519 INFO    ] ================================================
[2026-06-05 09:13:23,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:13:23
[2026-06-05 09:13:23,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:13:23,976.976 INFO    ] Initializing speech engine...
[2026-06-05 09:13:23,992.992 INFO    ] 2026-06-05 09:13:23
[2026-06-05 09:13:24,245.245 INFO    ] 2026-06-05 09:13:24
[2026-06-05 09:13:24,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:13:24,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:13:24,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:13:24,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:13:24,658.658 INFO    ] time= 05/06/2026 09:13:24
[2026-06-05 09:13:24,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:13:24,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:13:24,847.847 INFO    ] No existing commands found in stream
[2026-06-05 09:13:29,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:13:29,878.878 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 09:13:30,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:13:30,744.744 INFO    ] Checking for system updates...
[2026-06-05 09:13:30,780.780 INFO    ] 200
[2026-06-05 09:13:30,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:30,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:13:30,843.843 INFO    ] No update needed
[2026-06-05 09:13:30,846.846 INFO    ] Checking for camera pi updates...
[2026-06-05 09:13:30,880.880 INFO    ] 200
[2026-06-05 09:13:30,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:30,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:13:30,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:13:30,992.992 INFO    ] No camera update needed
[2026-06-05 09:13:30,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:13:30,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:13:31,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:13:31,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:13:33,051.051 INFO    ] ================================================
[2026-06-05 09:13:33,066.066 INFO    ] Launching Daemon at Fri Jun  5 09:13:33 IST 2026
[2026-06-05 09:13:33,077.077 INFO    ] ================================================
[2026-06-05 09:13:33,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:13:33
[2026-06-05 09:13:34,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:13:34,542.542 INFO    ] Initializing speech engine...
[2026-06-05 09:13:34,549.549 INFO    ] 2026-06-05 09:13:34
[2026-06-05 09:13:34,819.819 INFO    ] 2026-06-05 09:13:34
[2026-06-05 09:13:34,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:13:35,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:13:35,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:13:35,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:13:35,300.300 INFO    ] time= 05/06/2026 09:13:35
[2026-06-05 09:13:35,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:13:35,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:13:35,514.514 INFO    ] No existing commands found in stream
[2026-06-05 09:13:40,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:13:40,545.545 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 09:13:42,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:13:42,230.230 INFO    ] Checking for system updates...
[2026-06-05 09:13:42,267.267 INFO    ] 200
[2026-06-05 09:13:42,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:42,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:13:42,326.326 INFO    ] No update needed
[2026-06-05 09:13:42,329.329 INFO    ] Checking for camera pi updates...
[2026-06-05 09:13:42,363.363 INFO    ] 200
[2026-06-05 09:13:42,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:42,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:13:42,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:13:42,555.555 INFO    ] No camera update needed
[2026-06-05 09:13:42,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:13:42,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:13:42,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:13:42,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:13:44,614.614 INFO    ] ================================================
[2026-06-05 09:13:44,629.629 INFO    ] Launching Daemon at Fri Jun  5 09:13:44 IST 2026
[2026-06-05 09:13:44,640.640 INFO    ] ================================================
[2026-06-05 09:13:45,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:13:45
[2026-06-05 09:13:45,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:13:46,079.079 INFO    ] Initializing speech engine...
[2026-06-05 09:13:46,092.092 INFO    ] 2026-06-05 09:13:46
[2026-06-05 09:13:46,375.375 INFO    ] 2026-06-05 09:13:46
[2026-06-05 09:13:46,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:13:46,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:13:46,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:13:46,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:13:46,904.904 INFO    ] time= 05/06/2026 09:13:46
[2026-06-05 09:13:46,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:13:46,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:13:46,967.967 INFO    ] No existing commands found in stream
[2026-06-05 09:13:51,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:13:51,979.979 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 09:13:54,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:13:54,324.324 INFO    ] Checking for system updates...
[2026-06-05 09:13:54,360.360 INFO    ] 200
[2026-06-05 09:13:54,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:54,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:13:54,420.420 INFO    ] No update needed
[2026-06-05 09:13:54,423.423 INFO    ] Checking for camera pi updates...
[2026-06-05 09:13:54,460.460 INFO    ] 200
[2026-06-05 09:13:54,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:13:54,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:13:54,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:13:54,560.560 INFO    ] No camera update needed
[2026-06-05 09:13:54,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:13:54,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:13:54,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:13:54,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:13:56,616.616 INFO    ] ================================================
[2026-06-05 09:13:56,632.632 INFO    ] Launching Daemon at Fri Jun  5 09:13:56 IST 2026
[2026-06-05 09:13:56,643.643 INFO    ] ================================================
[2026-06-05 09:13:57,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:13:57
[2026-06-05 09:13:57,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:13:58,140.140 INFO    ] Initializing speech engine...
[2026-06-05 09:13:58,147.147 INFO    ] 2026-06-05 09:13:58
[2026-06-05 09:13:58,421.421 INFO    ] 2026-06-05 09:13:58
[2026-06-05 09:13:58,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:13:59,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:13:59,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:14:00,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:14:00,047.047 INFO    ] time= 05/06/2026 09:14:00
[2026-06-05 09:14:00,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:14:00,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:14:00,167.167 INFO    ] No existing commands found in stream
[2026-06-05 09:14:05,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:14:05,181.181 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 09:14:07,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:14:07,890.890 INFO    ] Checking for system updates...
[2026-06-05 09:14:07,931.931 INFO    ] 200
[2026-06-05 09:14:07,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:07,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:14:07,989.989 INFO    ] No update needed
[2026-06-05 09:14:07,992.992 INFO    ] Checking for camera pi updates...
[2026-06-05 09:14:08,034.034 INFO    ] 200
[2026-06-05 09:14:08,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:08,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:14:08,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:14:08,135.135 INFO    ] No camera update needed
[2026-06-05 09:14:08,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:14:08,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:14:08,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:14:08,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:14:10,192.192 INFO    ] ================================================
[2026-06-05 09:14:10,209.209 INFO    ] Launching Daemon at Fri Jun  5 09:14:10 IST 2026
[2026-06-05 09:14:10,220.220 INFO    ] ================================================
[2026-06-05 09:14:10,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:14:10
[2026-06-05 09:14:11,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:14:11,643.643 INFO    ] Initializing speech engine...
[2026-06-05 09:14:11,658.658 INFO    ] 2026-06-05 09:14:11
[2026-06-05 09:14:11,945.945 INFO    ] 2026-06-05 09:14:11
[2026-06-05 09:14:11,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:14:12,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:14:12,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:14:12,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:14:12,361.361 INFO    ] time= 05/06/2026 09:14:12
[2026-06-05 09:14:12,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:14:12,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:14:12,454.454 INFO    ] No existing commands found in stream
[2026-06-05 09:14:17,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:14:17,471.471 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 09:14:19,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:14:19,398.398 INFO    ] Checking for system updates...
[2026-06-05 09:14:19,434.434 INFO    ] 200
[2026-06-05 09:14:19,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:19,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:14:19,495.495 INFO    ] No update needed
[2026-06-05 09:14:19,497.497 INFO    ] Checking for camera pi updates...
[2026-06-05 09:14:19,532.532 INFO    ] 200
[2026-06-05 09:14:19,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:19,575.575 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:14:19,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:14:19,624.624 INFO    ] No camera update needed
[2026-06-05 09:14:19,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:14:19,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:14:19,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:14:19,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:14:21,682.682 INFO    ] ================================================
[2026-06-05 09:14:21,697.697 INFO    ] Launching Daemon at Fri Jun  5 09:14:21 IST 2026
[2026-06-05 09:14:21,708.708 INFO    ] ================================================
[2026-06-05 09:14:22,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:14:22
[2026-06-05 09:14:22,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:14:23,121.121 INFO    ] Initializing speech engine...
[2026-06-05 09:14:23,129.129 INFO    ] 2026-06-05 09:14:23
[2026-06-05 09:14:23,426.426 INFO    ] 2026-06-05 09:14:23
[2026-06-05 09:14:23,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:14:23,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:14:23,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:14:23,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:14:23,846.846 INFO    ] time= 05/06/2026 09:14:23
[2026-06-05 09:14:23,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:14:23,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:14:23,939.939 INFO    ] No existing commands found in stream
[2026-06-05 09:14:28,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:14:28,957.957 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 09:14:30,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:14:30,918.918 INFO    ] Checking for system updates...
[2026-06-05 09:14:30,954.954 INFO    ] 200
[2026-06-05 09:14:30,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:31,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:14:31,011.011 INFO    ] No update needed
[2026-06-05 09:14:31,013.013 INFO    ] Checking for camera pi updates...
[2026-06-05 09:14:31,047.047 INFO    ] 200
[2026-06-05 09:14:31,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:31,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:14:31,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:14:31,146.146 INFO    ] No camera update needed
[2026-06-05 09:14:31,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:14:31,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:14:31,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:14:31,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:14:33,206.206 INFO    ] ================================================
[2026-06-05 09:14:33,221.221 INFO    ] Launching Daemon at Fri Jun  5 09:14:33 IST 2026
[2026-06-05 09:14:33,232.232 INFO    ] ================================================
[2026-06-05 09:14:33,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:14:33
[2026-06-05 09:14:34,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:14:34,887.887 INFO    ] Initializing speech engine...
[2026-06-05 09:14:34,896.896 INFO    ] 2026-06-05 09:14:34
[2026-06-05 09:14:35,177.177 INFO    ] 2026-06-05 09:14:35
[2026-06-05 09:14:35,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:14:35,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:14:35,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:14:35,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:14:35,737.737 INFO    ] time= 05/06/2026 09:14:35
[2026-06-05 09:14:35,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:14:35,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:14:35,898.898 INFO    ] No existing commands found in stream
[2026-06-05 09:14:40,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:14:40,930.930 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-05 09:14:45,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:14:45,166.166 INFO    ] Checking for system updates...
[2026-06-05 09:14:45,203.203 INFO    ] 200
[2026-06-05 09:14:45,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:45,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:14:45,261.261 INFO    ] No update needed
[2026-06-05 09:14:45,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 09:14:45,297.297 INFO    ] 200
[2026-06-05 09:14:45,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:45,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:14:45,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:14:45,404.404 INFO    ] No camera update needed
[2026-06-05 09:14:45,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:14:45,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:14:45,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:14:45,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:14:47,461.461 INFO    ] ================================================
[2026-06-05 09:14:47,476.476 INFO    ] Launching Daemon at Fri Jun  5 09:14:47 IST 2026
[2026-06-05 09:14:47,487.487 INFO    ] ================================================
[2026-06-05 09:14:48,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:14:48
[2026-06-05 09:14:48,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:14:48,903.903 INFO    ] Initializing speech engine...
[2026-06-05 09:14:48,924.924 INFO    ] 2026-06-05 09:14:48
[2026-06-05 09:14:49,202.202 INFO    ] 2026-06-05 09:14:49
[2026-06-05 09:14:49,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:14:49,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:14:49,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:14:49,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:14:49,629.629 INFO    ] time= 05/06/2026 09:14:49
[2026-06-05 09:14:49,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:14:49,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:14:49,752.752 INFO    ] No existing commands found in stream
[2026-06-05 09:14:54,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:14:54,790.790 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 09:14:56,604.604 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:14:56,607.607 INFO    ] Checking for system updates...
[2026-06-05 09:14:56,643.643 INFO    ] 200
[2026-06-05 09:14:56,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:56,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:14:56,710.710 INFO    ] No update needed
[2026-06-05 09:14:56,712.712 INFO    ] Checking for camera pi updates...
[2026-06-05 09:14:56,750.750 INFO    ] 200
[2026-06-05 09:14:56,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:14:56,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:14:56,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:14:56,843.843 INFO    ] No camera update needed
[2026-06-05 09:14:56,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:14:56,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:14:56,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:14:56,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:14:58,898.898 INFO    ] ================================================
[2026-06-05 09:14:58,914.914 INFO    ] Launching Daemon at Fri Jun  5 09:14:58 IST 2026
[2026-06-05 09:14:58,924.924 INFO    ] ================================================
[2026-06-05 09:14:59,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:14:59
[2026-06-05 09:15:00,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:15:00,589.589 INFO    ] Initializing speech engine...
[2026-06-05 09:15:00,594.594 INFO    ] 2026-06-05 09:15:00
[2026-06-05 09:15:00,907.907 INFO    ] 2026-06-05 09:15:00
[2026-06-05 09:15:00,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:15:01,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:15:01,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:15:01,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:15:01,483.483 INFO    ] time= 05/06/2026 09:15:01
[2026-06-05 09:15:01,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:15:01,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:15:01,808.808 INFO    ] No existing commands found in stream
[2026-06-05 09:15:06,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:15:06,829.829 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 09:15:08,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:15:08,418.418 INFO    ] Checking for system updates...
[2026-06-05 09:15:08,472.472 INFO    ] 200
[2026-06-05 09:15:08,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:15:08,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:15:08,539.539 INFO    ] No update needed
[2026-06-05 09:15:08,542.542 INFO    ] Checking for camera pi updates...
[2026-06-05 09:15:08,591.591 INFO    ] 200
[2026-06-05 09:15:08,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:15:08,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:15:08,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:15:08,701.701 INFO    ] No camera update needed
[2026-06-05 09:15:08,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:15:08,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:15:08,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:15:08,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:15:10,759.759 INFO    ] ================================================
[2026-06-05 09:15:10,774.774 INFO    ] Launching Daemon at Fri Jun  5 09:15:10 IST 2026
[2026-06-05 09:15:10,785.785 INFO    ] ================================================
[2026-06-05 09:15:11,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:15:11
[2026-06-05 09:15:13,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:15:13,408.408 INFO    ] Initializing speech engine...
[2026-06-05 09:15:13,433.433 INFO    ] 2026-06-05 09:15:13
[2026-06-05 09:15:13,709.709 INFO    ] 2026-06-05 09:15:13
[2026-06-05 09:15:13,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:15:13,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:15:14,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:15:14,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:15:14,274.274 INFO    ] time= 05/06/2026 09:15:14
[2026-06-05 09:15:14,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:15:14,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:15:14,432.432 INFO    ] No existing commands found in stream
[2026-06-05 09:15:19,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:15:19,450.450 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 09:15:21,945.945 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:15:21,948.948 INFO    ] Checking for system updates...
[2026-06-05 09:15:22,041.041 INFO    ] 200
[2026-06-05 09:15:22,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:15:22,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:15:22,105.105 INFO    ] No update needed
[2026-06-05 09:15:22,108.108 INFO    ] Checking for camera pi updates...
[2026-06-05 09:15:22,203.203 INFO    ] 200
[2026-06-05 09:15:22,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:15:22,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:15:22,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:15:22,296.296 INFO    ] No camera update needed
[2026-06-05 09:15:22,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:15:22,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:15:22,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:15:22,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:15:24,353.353 INFO    ] ================================================
[2026-06-05 09:15:24,369.369 INFO    ] Launching Daemon at Fri Jun  5 09:15:24 IST 2026
[2026-06-05 09:15:24,380.380 INFO    ] ================================================
[2026-06-05 09:15:25,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:15:25
[2026-06-05 09:15:25,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:15:26,002.002 INFO    ] Initializing speech engine...
[2026-06-05 09:15:26,016.016 INFO    ] 2026-06-05 09:15:26
[2026-06-05 09:15:26,303.303 INFO    ] 2026-06-05 09:15:26
[2026-06-05 09:15:26,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:15:26,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:15:26,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:15:26,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:15:26,837.837 INFO    ] time= 05/06/2026 09:15:26
[2026-06-05 09:15:26,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:15:26,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:15:26,993.993 INFO    ] No existing commands found in stream
[2026-06-05 09:15:32,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:15:32,017.017 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 09:15:35,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:15:35,336.336 INFO    ] Checking for system updates...
[2026-06-05 09:15:35,373.373 INFO    ] 200
[2026-06-05 09:15:35,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:15:35,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:15:35,433.433 INFO    ] No update needed
[2026-06-05 09:15:35,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 09:15:35,470.470 INFO    ] 200
[2026-06-05 09:15:35,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:15:35,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:15:35,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:15:35,565.565 INFO    ] No camera update needed
[2026-06-05 09:15:35,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:15:35,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:15:35,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:15:35,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:15:37,621.621 INFO    ] ================================================
[2026-06-05 09:15:37,636.636 INFO    ] Launching Daemon at Fri Jun  5 09:15:37 IST 2026
[2026-06-05 09:15:37,697.697 INFO    ] ================================================
[2026-06-05 09:15:38,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:15:38
[2026-06-05 09:15:38,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:15:39,113.113 INFO    ] Initializing speech engine...
[2026-06-05 09:15:39,138.138 INFO    ] 2026-06-05 09:15:39
[2026-06-05 09:15:39,411.411 INFO    ] 2026-06-05 09:15:39
[2026-06-05 09:15:39,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:15:39,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:15:39,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:15:39,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:15:39,833.833 INFO    ] time= 05/06/2026 09:15:39
[2026-06-05 09:15:39,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:15:39,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:15:39,921.921 INFO    ] No existing commands found in stream
[2026-06-05 09:15:44,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:15:44,940.940 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 09:15:48,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:15:48,497.497 INFO    ] Checking for system updates...
[2026-06-05 09:15:48,692.692 INFO    ] 200
[2026-06-05 09:15:48,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:15:48,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:15:48,749.749 INFO    ] No update needed
[2026-06-05 09:15:48,752.752 INFO    ] Checking for camera pi updates...
[2026-06-05 09:15:48,786.786 INFO    ] 200
[2026-06-05 09:15:48,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:15:48,835.835 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:15:48,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:15:48,984.984 INFO    ] No camera update needed
[2026-06-05 09:15:48,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:15:48,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:15:48,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:15:49,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:15:51,040.040 INFO    ] ================================================
[2026-06-05 09:15:51,056.056 INFO    ] Launching Daemon at Fri Jun  5 09:15:51 IST 2026
[2026-06-05 09:15:51,067.067 INFO    ] ================================================
[2026-06-05 09:15:51,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:15:51
[2026-06-05 09:15:52,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:15:52,572.572 INFO    ] Initializing speech engine...
[2026-06-05 09:15:52,589.589 INFO    ] 2026-06-05 09:15:52
[2026-06-05 09:15:52,872.872 INFO    ] 2026-06-05 09:15:52
[2026-06-05 09:15:53,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:15:53,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:15:53,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:15:53,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:15:53,433.433 INFO    ] time= 05/06/2026 09:15:53
[2026-06-05 09:15:53,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:15:53,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:15:53,602.602 INFO    ] No existing commands found in stream
[2026-06-05 09:15:58,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:15:59,057.057 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 09:16:00,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:16:00,667.667 INFO    ] Checking for system updates...
[2026-06-05 09:16:00,707.707 INFO    ] 200
[2026-06-05 09:16:00,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:00,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:16:00,766.766 INFO    ] No update needed
[2026-06-05 09:16:00,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 09:16:00,806.806 INFO    ] 200
[2026-06-05 09:16:00,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:00,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:16:00,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:16:00,906.906 INFO    ] No camera update needed
[2026-06-05 09:16:00,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:16:00,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:16:00,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:16:00,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:16:02,965.965 INFO    ] ================================================
[2026-06-05 09:16:02,982.982 INFO    ] Launching Daemon at Fri Jun  5 09:16:02 IST 2026
[2026-06-05 09:16:03,998.998 INFO    ] ================================================
[2026-06-05 09:16:03,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:16:03
[2026-06-05 09:16:04,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:16:04,551.551 INFO    ] Initializing speech engine...
[2026-06-05 09:16:04,565.565 INFO    ] 2026-06-05 09:16:04
[2026-06-05 09:16:04,834.834 INFO    ] 2026-06-05 09:16:04
[2026-06-05 09:16:04,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:16:05,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:16:05,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:16:05,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:16:05,289.289 INFO    ] time= 05/06/2026 09:16:05
[2026-06-05 09:16:05,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:16:05,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:16:05,470.470 INFO    ] No existing commands found in stream
[2026-06-05 09:16:10,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:16:10,480.480 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 09:16:12,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:16:12,189.189 INFO    ] Checking for system updates...
[2026-06-05 09:16:12,225.225 INFO    ] 200
[2026-06-05 09:16:12,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:12,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:16:12,282.282 INFO    ] No update needed
[2026-06-05 09:16:12,285.285 INFO    ] Checking for camera pi updates...
[2026-06-05 09:16:12,319.319 INFO    ] 200
[2026-06-05 09:16:12,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:12,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:16:12,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:16:12,414.414 INFO    ] No camera update needed
[2026-06-05 09:16:12,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:16:12,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:16:12,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:16:12,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:16:14,470.470 INFO    ] ================================================
[2026-06-05 09:16:14,485.485 INFO    ] Launching Daemon at Fri Jun  5 09:16:14 IST 2026
[2026-06-05 09:16:14,496.496 INFO    ] ================================================
[2026-06-05 09:16:15,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:16:15
[2026-06-05 09:16:15,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:16:15,955.955 INFO    ] Initializing speech engine...
[2026-06-05 09:16:15,962.962 INFO    ] 2026-06-05 09:16:15
[2026-06-05 09:16:16,261.261 INFO    ] 2026-06-05 09:16:16
[2026-06-05 09:16:16,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:16:16,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:16:16,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:16:16,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:16:16,742.742 INFO    ] time= 05/06/2026 09:16:16
[2026-06-05 09:16:16,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:16:16,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:16:16,889.889 INFO    ] No existing commands found in stream
[2026-06-05 09:16:21,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:16:21,906.906 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 09:16:26,173.173 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:16:26,177.177 INFO    ] Checking for system updates...
[2026-06-05 09:16:26,214.214 INFO    ] 200
[2026-06-05 09:16:26,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:26,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:16:26,273.273 INFO    ] No update needed
[2026-06-05 09:16:26,276.276 INFO    ] Checking for camera pi updates...
[2026-06-05 09:16:26,315.315 INFO    ] 200
[2026-06-05 09:16:26,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:26,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:16:26,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:16:26,414.414 INFO    ] No camera update needed
[2026-06-05 09:16:26,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:16:26,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:16:26,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:16:26,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:16:28,475.475 INFO    ] ================================================
[2026-06-05 09:16:28,490.490 INFO    ] Launching Daemon at Fri Jun  5 09:16:28 IST 2026
[2026-06-05 09:16:28,502.502 INFO    ] ================================================
[2026-06-05 09:16:29,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:16:29
[2026-06-05 09:16:29,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:16:29,936.936 INFO    ] Initializing speech engine...
[2026-06-05 09:16:29,943.943 INFO    ] 2026-06-05 09:16:29
[2026-06-05 09:16:30,203.203 INFO    ] 2026-06-05 09:16:30
[2026-06-05 09:16:30,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:16:30,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:16:30,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:16:30,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:16:30,662.662 INFO    ] time= 05/06/2026 09:16:30
[2026-06-05 09:16:30,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:16:30,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:16:30,806.806 INFO    ] No existing commands found in stream
[2026-06-05 09:16:35,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:16:35,821.821 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 09:16:38,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:16:38,723.723 INFO    ] Checking for system updates...
[2026-06-05 09:16:38,759.759 INFO    ] 200
[2026-06-05 09:16:38,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:38,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:16:38,823.823 INFO    ] No update needed
[2026-06-05 09:16:38,825.825 INFO    ] Checking for camera pi updates...
[2026-06-05 09:16:38,861.861 INFO    ] 200
[2026-06-05 09:16:38,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:38,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:16:38,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:16:38,967.967 INFO    ] No camera update needed
[2026-06-05 09:16:38,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:16:38,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:16:38,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:16:38,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:16:41,023.023 INFO    ] ================================================
[2026-06-05 09:16:41,038.038 INFO    ] Launching Daemon at Fri Jun  5 09:16:41 IST 2026
[2026-06-05 09:16:41,051.051 INFO    ] ================================================
[2026-06-05 09:16:41,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:16:41
[2026-06-05 09:16:42,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:16:42,483.483 INFO    ] Initializing speech engine...
[2026-06-05 09:16:42,496.496 INFO    ] 2026-06-05 09:16:42
[2026-06-05 09:16:42,767.767 INFO    ] 2026-06-05 09:16:42
[2026-06-05 09:16:42,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:16:43,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:16:43,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:16:43,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:16:43,253.253 INFO    ] time= 05/06/2026 09:16:43
[2026-06-05 09:16:43,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:16:43,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:16:43,495.495 INFO    ] No existing commands found in stream
[2026-06-05 09:16:48,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:16:48,509.509 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 09:16:52,611.611 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:16:52,613.613 INFO    ] Checking for system updates...
[2026-06-05 09:16:52,658.658 INFO    ] 200
[2026-06-05 09:16:52,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:52,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:16:52,723.723 INFO    ] No update needed
[2026-06-05 09:16:52,725.725 INFO    ] Checking for camera pi updates...
[2026-06-05 09:16:52,759.759 INFO    ] 200
[2026-06-05 09:16:52,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:16:52,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:16:52,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:16:52,859.859 INFO    ] No camera update needed
[2026-06-05 09:16:52,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:16:52,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:16:52,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:16:52,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:16:54,916.916 INFO    ] ================================================
[2026-06-05 09:16:54,932.932 INFO    ] Launching Daemon at Fri Jun  5 09:16:54 IST 2026
[2026-06-05 09:16:54,942.942 INFO    ] ================================================
[2026-06-05 09:16:55,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:16:55
[2026-06-05 09:16:56,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:16:56,563.563 INFO    ] Initializing speech engine...
[2026-06-05 09:16:56,577.577 INFO    ] 2026-06-05 09:16:56
[2026-06-05 09:16:56,884.884 INFO    ] 2026-06-05 09:16:56
[2026-06-05 09:16:56,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:16:57,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:16:57,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:16:57,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:16:57,394.394 INFO    ] time= 05/06/2026 09:16:57
[2026-06-05 09:16:57,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:16:57,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:16:57,549.549 INFO    ] No existing commands found in stream
[2026-06-05 09:17:02,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:17:02,571.571 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 09:17:04,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:17:04,749.749 INFO    ] Checking for system updates...
[2026-06-05 09:17:04,785.785 INFO    ] 200
[2026-06-05 09:17:04,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:04,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:17:04,845.845 INFO    ] No update needed
[2026-06-05 09:17:04,847.847 INFO    ] Checking for camera pi updates...
[2026-06-05 09:17:04,886.886 INFO    ] 200
[2026-06-05 09:17:04,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:04,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:17:04,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:17:04,972.972 INFO    ] No camera update needed
[2026-06-05 09:17:04,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:17:04,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:17:04,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:17:04,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:17:07,032.032 INFO    ] ================================================
[2026-06-05 09:17:07,049.049 INFO    ] Launching Daemon at Fri Jun  5 09:17:07 IST 2026
[2026-06-05 09:17:07,060.060 INFO    ] ================================================
[2026-06-05 09:17:07,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:17:07
[2026-06-05 09:17:08,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:17:08,536.536 INFO    ] Initializing speech engine...
[2026-06-05 09:17:08,545.545 INFO    ] 2026-06-05 09:17:08
[2026-06-05 09:17:08,804.804 INFO    ] 2026-06-05 09:17:08
[2026-06-05 09:17:08,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:17:09,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:17:09,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:17:09,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:17:09,285.285 INFO    ] time= 05/06/2026 09:17:09
[2026-06-05 09:17:09,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:17:09,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:17:09,491.491 INFO    ] No existing commands found in stream
[2026-06-05 09:17:14,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:17:14,518.518 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 09:17:15,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:17:15,302.302 INFO    ] Checking for system updates...
[2026-06-05 09:17:15,343.343 INFO    ] 200
[2026-06-05 09:17:15,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:15,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:17:15,410.410 INFO    ] No update needed
[2026-06-05 09:17:15,412.412 INFO    ] Checking for camera pi updates...
[2026-06-05 09:17:15,450.450 INFO    ] 200
[2026-06-05 09:17:15,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:15,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:17:15,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:17:15,546.546 INFO    ] No camera update needed
[2026-06-05 09:17:15,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:17:15,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:17:15,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:17:15,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:17:17,603.603 INFO    ] ================================================
[2026-06-05 09:17:17,619.619 INFO    ] Launching Daemon at Fri Jun  5 09:17:17 IST 2026
[2026-06-05 09:17:17,631.631 INFO    ] ================================================
[2026-06-05 09:17:18,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:17:18
[2026-06-05 09:17:18,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:17:19,283.283 INFO    ] Initializing speech engine...
[2026-06-05 09:17:19,292.292 INFO    ] 2026-06-05 09:17:19
[2026-06-05 09:17:19,581.581 INFO    ] 2026-06-05 09:17:19
[2026-06-05 09:17:19,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:17:19,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:17:19,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:17:20,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:17:20,116.116 INFO    ] time= 05/06/2026 09:17:20
[2026-06-05 09:17:20,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:17:20,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:17:20,283.283 INFO    ] No existing commands found in stream
[2026-06-05 09:17:25,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:17:25,319.319 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 09:17:27,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:17:27,821.821 INFO    ] Checking for system updates...
[2026-06-05 09:17:27,857.857 INFO    ] 200
[2026-06-05 09:17:27,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:27,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:17:27,923.923 INFO    ] No update needed
[2026-06-05 09:17:27,926.926 INFO    ] Checking for camera pi updates...
[2026-06-05 09:17:27,959.959 INFO    ] 200
[2026-06-05 09:17:27,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:28,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:17:28,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:17:28,056.056 INFO    ] No camera update needed
[2026-06-05 09:17:28,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:17:28,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:17:28,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:17:28,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:17:30,113.113 INFO    ] ================================================
[2026-06-05 09:17:30,129.129 INFO    ] Launching Daemon at Fri Jun  5 09:17:30 IST 2026
[2026-06-05 09:17:30,141.141 INFO    ] ================================================
[2026-06-05 09:17:30,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:17:30
[2026-06-05 09:17:31,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:17:31,857.857 INFO    ] Initializing speech engine...
[2026-06-05 09:17:31,871.871 INFO    ] 2026-06-05 09:17:31
[2026-06-05 09:17:32,179.179 INFO    ] 2026-06-05 09:17:32
[2026-06-05 09:17:32,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:17:32,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:17:32,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:17:32,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:17:32,697.697 INFO    ] time= 05/06/2026 09:17:32
[2026-06-05 09:17:32,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:17:32,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:17:32,920.920 INFO    ] No existing commands found in stream
[2026-06-05 09:17:37,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:17:37,952.952 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 09:17:42,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:17:42,110.110 INFO    ] Checking for system updates...
[2026-06-05 09:17:42,148.148 INFO    ] 200
[2026-06-05 09:17:42,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:42,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:17:42,209.209 INFO    ] No update needed
[2026-06-05 09:17:42,211.211 INFO    ] Checking for camera pi updates...
[2026-06-05 09:17:42,249.249 INFO    ] 200
[2026-06-05 09:17:42,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:42,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:17:42,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:17:42,357.357 INFO    ] No camera update needed
[2026-06-05 09:17:42,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:17:42,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:17:42,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:17:42,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:17:44,419.419 INFO    ] ================================================
[2026-06-05 09:17:44,434.434 INFO    ] Launching Daemon at Fri Jun  5 09:17:44 IST 2026
[2026-06-05 09:17:44,445.445 INFO    ] ================================================
[2026-06-05 09:17:45,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:17:45
[2026-06-05 09:17:45,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:17:45,867.867 INFO    ] Initializing speech engine...
[2026-06-05 09:17:45,874.874 INFO    ] 2026-06-05 09:17:45
[2026-06-05 09:17:46,177.177 INFO    ] 2026-06-05 09:17:46
[2026-06-05 09:17:46,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:17:46,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:17:46,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:17:46,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:17:46,569.569 INFO    ] time= 05/06/2026 09:17:46
[2026-06-05 09:17:46,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:17:46,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:17:46,701.701 INFO    ] No existing commands found in stream
[2026-06-05 09:17:51,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:17:51,714.714 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 09:17:52,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:17:52,863.863 INFO    ] Checking for system updates...
[2026-06-05 09:17:52,900.900 INFO    ] 200
[2026-06-05 09:17:52,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:52,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:17:52,968.968 INFO    ] No update needed
[2026-06-05 09:17:52,970.970 INFO    ] Checking for camera pi updates...
[2026-06-05 09:17:53,011.011 INFO    ] 200
[2026-06-05 09:17:53,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:17:53,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:17:53,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:17:53,199.199 INFO    ] No camera update needed
[2026-06-05 09:17:53,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:17:53,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:17:53,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:17:53,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:17:55,255.255 INFO    ] ================================================
[2026-06-05 09:17:55,271.271 INFO    ] Launching Daemon at Fri Jun  5 09:17:55 IST 2026
[2026-06-05 09:17:55,283.283 INFO    ] ================================================
[2026-06-05 09:17:55,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:17:55
[2026-06-05 09:17:56,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:17:56,956.956 INFO    ] Initializing speech engine...
[2026-06-05 09:17:56,967.967 INFO    ] 2026-06-05 09:17:56
[2026-06-05 09:17:57,280.280 INFO    ] 2026-06-05 09:17:57
[2026-06-05 09:17:57,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:17:57,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:17:57,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:17:57,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:17:57,792.792 INFO    ] time= 05/06/2026 09:17:57
[2026-06-05 09:17:57,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:17:57,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:17:57,949.949 INFO    ] No existing commands found in stream
[2026-06-05 09:18:02,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:18:02,971.971 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 09:18:04,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:18:04,269.269 INFO    ] Checking for system updates...
[2026-06-05 09:18:04,310.310 INFO    ] 200
[2026-06-05 09:18:04,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:04,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:18:04,370.370 INFO    ] No update needed
[2026-06-05 09:18:04,373.373 INFO    ] Checking for camera pi updates...
[2026-06-05 09:18:04,417.417 INFO    ] 200
[2026-06-05 09:18:04,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:04,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:18:04,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:18:04,509.509 INFO    ] No camera update needed
[2026-06-05 09:18:04,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:18:04,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:18:04,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:18:04,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:18:06,567.567 INFO    ] ================================================
[2026-06-05 09:18:06,583.583 INFO    ] Launching Daemon at Fri Jun  5 09:18:06 IST 2026
[2026-06-05 09:18:06,594.594 INFO    ] ================================================
[2026-06-05 09:18:07,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:18:07
[2026-06-05 09:18:07,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:18:08,021.021 INFO    ] Initializing speech engine...
[2026-06-05 09:18:08,034.034 INFO    ] 2026-06-05 09:18:08
[2026-06-05 09:18:08,284.284 INFO    ] 2026-06-05 09:18:08
[2026-06-05 09:18:08,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:18:08,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:18:08,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:18:08,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:18:08,766.766 INFO    ] time= 05/06/2026 09:18:08
[2026-06-05 09:18:08,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:18:08,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:18:09,017.017 INFO    ] No existing commands found in stream
[2026-06-05 09:18:14,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:18:14,042.042 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 09:18:15,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:18:15,291.291 INFO    ] Checking for system updates...
[2026-06-05 09:18:15,327.327 INFO    ] 200
[2026-06-05 09:18:15,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:15,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:18:15,393.393 INFO    ] No update needed
[2026-06-05 09:18:15,396.396 INFO    ] Checking for camera pi updates...
[2026-06-05 09:18:15,441.441 INFO    ] 200
[2026-06-05 09:18:15,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:15,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:18:15,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:18:15,553.553 INFO    ] No camera update needed
[2026-06-05 09:18:15,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:18:15,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:18:15,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:18:15,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:18:17,611.611 INFO    ] ================================================
[2026-06-05 09:18:17,627.627 INFO    ] Launching Daemon at Fri Jun  5 09:18:17 IST 2026
[2026-06-05 09:18:17,638.638 INFO    ] ================================================
[2026-06-05 09:18:18,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:18:18
[2026-06-05 09:18:18,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:18:19,062.062 INFO    ] Initializing speech engine...
[2026-06-05 09:18:19,071.071 INFO    ] 2026-06-05 09:18:19
[2026-06-05 09:18:19,316.316 INFO    ] 2026-06-05 09:18:19
[2026-06-05 09:18:19,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:18:19,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:18:19,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:18:19,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:18:19,786.786 INFO    ] time= 05/06/2026 09:18:19
[2026-06-05 09:18:19,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:18:19,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:18:20,001.001 INFO    ] No existing commands found in stream
[2026-06-05 09:18:25,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:18:25,027.027 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 09:18:27,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:18:27,371.371 INFO    ] Checking for system updates...
[2026-06-05 09:18:27,411.411 INFO    ] 200
[2026-06-05 09:18:27,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:27,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:18:27,471.471 INFO    ] No update needed
[2026-06-05 09:18:27,474.474 INFO    ] Checking for camera pi updates...
[2026-06-05 09:18:27,512.512 INFO    ] 200
[2026-06-05 09:18:27,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:27,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:18:27,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:18:27,610.610 INFO    ] No camera update needed
[2026-06-05 09:18:27,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:18:27,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:18:27,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:18:27,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:18:29,666.666 INFO    ] ================================================
[2026-06-05 09:18:29,682.682 INFO    ] Launching Daemon at Fri Jun  5 09:18:29 IST 2026
[2026-06-05 09:18:29,693.693 INFO    ] ================================================
[2026-06-05 09:18:30,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:18:30
[2026-06-05 09:18:30,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:18:31,149.149 INFO    ] Initializing speech engine...
[2026-06-05 09:18:31,176.176 INFO    ] 2026-06-05 09:18:31
[2026-06-05 09:18:31,461.461 INFO    ] 2026-06-05 09:18:31
[2026-06-05 09:18:31,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:18:31,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:18:31,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:18:31,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:18:31,854.854 INFO    ] time= 05/06/2026 09:18:31
[2026-06-05 09:18:31,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:18:31,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:18:32,045.045 INFO    ] No existing commands found in stream
[2026-06-05 09:18:37,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:18:37,073.073 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 09:18:38,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:18:38,169.169 INFO    ] Checking for system updates...
[2026-06-05 09:18:38,207.207 INFO    ] 200
[2026-06-05 09:18:38,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:38,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:18:38,265.265 INFO    ] No update needed
[2026-06-05 09:18:38,268.268 INFO    ] Checking for camera pi updates...
[2026-06-05 09:18:38,311.311 INFO    ] 200
[2026-06-05 09:18:38,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:38,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:18:38,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:18:38,424.424 INFO    ] No camera update needed
[2026-06-05 09:18:38,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:18:38,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:18:38,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:18:38,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:18:40,485.485 INFO    ] ================================================
[2026-06-05 09:18:40,500.500 INFO    ] Launching Daemon at Fri Jun  5 09:18:40 IST 2026
[2026-06-05 09:18:40,512.512 INFO    ] ================================================
[2026-06-05 09:18:41,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:18:41
[2026-06-05 09:18:41,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:18:41,949.949 INFO    ] Initializing speech engine...
[2026-06-05 09:18:41,962.962 INFO    ] 2026-06-05 09:18:41
[2026-06-05 09:18:42,243.243 INFO    ] 2026-06-05 09:18:42
[2026-06-05 09:18:42,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:18:42,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:18:42,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:18:42,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:18:42,646.646 INFO    ] time= 05/06/2026 09:18:42
[2026-06-05 09:18:42,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:18:42,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:18:42,840.840 INFO    ] No existing commands found in stream
[2026-06-05 09:18:47,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:18:47,873.873 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 09:18:49,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:18:49,268.268 INFO    ] Checking for system updates...
[2026-06-05 09:18:49,307.307 INFO    ] 200
[2026-06-05 09:18:49,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:49,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:18:49,366.366 INFO    ] No update needed
[2026-06-05 09:18:49,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 09:18:49,405.405 INFO    ] 200
[2026-06-05 09:18:49,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:18:49,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:18:49,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:18:49,500.500 INFO    ] No camera update needed
[2026-06-05 09:18:49,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:18:49,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:18:49,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:18:49,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:18:51,557.557 INFO    ] ================================================
[2026-06-05 09:18:51,573.573 INFO    ] Launching Daemon at Fri Jun  5 09:18:51 IST 2026
[2026-06-05 09:18:51,584.584 INFO    ] ================================================
[2026-06-05 09:18:52,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:18:52
[2026-06-05 09:18:52,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:18:52,994.994 INFO    ] Initializing speech engine...
[2026-06-05 09:18:53,007.007 INFO    ] 2026-06-05 09:18:52
[2026-06-05 09:18:53,283.283 INFO    ] 2026-06-05 09:18:53
[2026-06-05 09:18:53,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:18:53,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:18:53,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:18:53,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:18:53,795.795 INFO    ] time= 05/06/2026 09:18:53
[2026-06-05 09:18:53,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:18:53,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:18:54,061.061 INFO    ] No existing commands found in stream
[2026-06-05 09:18:59,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:18:59,076.076 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 09:19:01,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:19:01,382.382 INFO    ] Checking for system updates...
[2026-06-05 09:19:01,442.442 INFO    ] 200
[2026-06-05 09:19:01,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:01,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:19:01,579.579 INFO    ] No update needed
[2026-06-05 09:19:01,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 09:19:01,646.646 INFO    ] 200
[2026-06-05 09:19:01,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:01,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:19:01,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:19:01,748.748 INFO    ] No camera update needed
[2026-06-05 09:19:01,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:19:01,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:19:01,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:19:01,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:19:03,809.809 INFO    ] ================================================
[2026-06-05 09:19:03,825.825 INFO    ] Launching Daemon at Fri Jun  5 09:19:03 IST 2026
[2026-06-05 09:19:03,836.836 INFO    ] ================================================
[2026-06-05 09:19:04,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:19:04
[2026-06-05 09:19:04,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:19:05,257.257 INFO    ] Initializing speech engine...
[2026-06-05 09:19:05,277.277 INFO    ] 2026-06-05 09:19:05
[2026-06-05 09:19:05,537.537 INFO    ] 2026-06-05 09:19:05
[2026-06-05 09:19:05,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:19:05,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:19:05,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:19:06,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:19:06,036.036 INFO    ] time= 05/06/2026 09:19:06
[2026-06-05 09:19:06,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:19:06,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:19:06,314.314 INFO    ] No existing commands found in stream
[2026-06-05 09:19:11,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:19:11,337.337 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 09:19:12,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:19:12,848.848 INFO    ] Checking for system updates...
[2026-06-05 09:19:12,884.884 INFO    ] 200
[2026-06-05 09:19:12,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:12,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:19:12,947.947 INFO    ] No update needed
[2026-06-05 09:19:12,949.949 INFO    ] Checking for camera pi updates...
[2026-06-05 09:19:12,982.982 INFO    ] 200
[2026-06-05 09:19:12,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:13,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:19:13,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:19:13,081.081 INFO    ] No camera update needed
[2026-06-05 09:19:13,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:19:13,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:19:13,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:19:13,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:19:15,141.141 INFO    ] ================================================
[2026-06-05 09:19:15,156.156 INFO    ] Launching Daemon at Fri Jun  5 09:19:15 IST 2026
[2026-06-05 09:19:15,167.167 INFO    ] ================================================
[2026-06-05 09:19:15,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:19:15
[2026-06-05 09:19:16,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:19:16,734.734 INFO    ] Initializing speech engine...
[2026-06-05 09:19:16,747.747 INFO    ] 2026-06-05 09:19:16
[2026-06-05 09:19:17,012.012 INFO    ] 2026-06-05 09:19:17
[2026-06-05 09:19:17,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:19:17,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:19:17,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:19:17,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:19:17,488.488 INFO    ] time= 05/06/2026 09:19:17
[2026-06-05 09:19:17,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:19:17,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:19:17,737.737 INFO    ] No existing commands found in stream
[2026-06-05 09:19:22,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:19:22,756.756 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 09:19:25,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:19:25,294.294 INFO    ] Checking for system updates...
[2026-06-05 09:19:25,332.332 INFO    ] 200
[2026-06-05 09:19:25,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:25,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:19:25,392.392 INFO    ] No update needed
[2026-06-05 09:19:25,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 09:19:25,430.430 INFO    ] 200
[2026-06-05 09:19:25,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:25,490.490 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:19:25,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:19:25,566.566 INFO    ] No camera update needed
[2026-06-05 09:19:25,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:19:25,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:19:25,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:19:25,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:19:27,621.621 INFO    ] ================================================
[2026-06-05 09:19:27,637.637 INFO    ] Launching Daemon at Fri Jun  5 09:19:27 IST 2026
[2026-06-05 09:19:27,648.648 INFO    ] ================================================
[2026-06-05 09:19:28,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:19:28
[2026-06-05 09:19:28,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:19:29,083.083 INFO    ] Initializing speech engine...
[2026-06-05 09:19:29,107.107 INFO    ] 2026-06-05 09:19:29
[2026-06-05 09:19:29,378.378 INFO    ] 2026-06-05 09:19:29
[2026-06-05 09:19:29,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:19:30,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:19:30,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:19:31,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:19:31,380.380 INFO    ] time= 05/06/2026 09:19:31
[2026-06-05 09:19:31,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:19:31,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:19:31,520.520 INFO    ] No existing commands found in stream
[2026-06-05 09:19:36,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:19:36,553.553 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 09:19:39,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:19:39,216.216 INFO    ] Checking for system updates...
[2026-06-05 09:19:39,255.255 INFO    ] 200
[2026-06-05 09:19:39,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:39,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:19:39,314.314 INFO    ] No update needed
[2026-06-05 09:19:39,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 09:19:39,360.360 INFO    ] 200
[2026-06-05 09:19:39,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:39,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:19:39,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:19:39,464.464 INFO    ] No camera update needed
[2026-06-05 09:19:39,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:19:39,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:19:39,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:19:39,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:19:41,520.520 INFO    ] ================================================
[2026-06-05 09:19:41,535.535 INFO    ] Launching Daemon at Fri Jun  5 09:19:41 IST 2026
[2026-06-05 09:19:41,546.546 INFO    ] ================================================
[2026-06-05 09:19:42,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:19:42
[2026-06-05 09:19:42,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:19:43,009.009 INFO    ] Initializing speech engine...
[2026-06-05 09:19:43,014.014 INFO    ] 2026-06-05 09:19:43
[2026-06-05 09:19:43,268.268 INFO    ] 2026-06-05 09:19:43
[2026-06-05 09:19:43,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:19:43,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:19:43,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:19:43,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:19:43,736.736 INFO    ] time= 05/06/2026 09:19:43
[2026-06-05 09:19:43,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:19:43,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:19:43,987.987 INFO    ] No existing commands found in stream
[2026-06-05 09:19:48,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:19:49,000.000 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 09:19:54,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:19:54,567.567 INFO    ] Checking for system updates...
[2026-06-05 09:19:54,604.604 INFO    ] 200
[2026-06-05 09:19:54,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:54,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:19:54,662.662 INFO    ] No update needed
[2026-06-05 09:19:54,664.664 INFO    ] Checking for camera pi updates...
[2026-06-05 09:19:54,699.699 INFO    ] 200
[2026-06-05 09:19:54,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:19:54,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:19:54,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:19:54,793.793 INFO    ] No camera update needed
[2026-06-05 09:19:54,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:19:54,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:19:54,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:19:54,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:19:56,848.848 INFO    ] ================================================
[2026-06-05 09:19:56,863.863 INFO    ] Launching Daemon at Fri Jun  5 09:19:56 IST 2026
[2026-06-05 09:19:56,874.874 INFO    ] ================================================
[2026-06-05 09:19:57,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:19:57
[2026-06-05 09:19:58,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:19:58,302.302 INFO    ] Initializing speech engine...
[2026-06-05 09:19:58,312.312 INFO    ] 2026-06-05 09:19:58
[2026-06-05 09:19:58,562.562 INFO    ] 2026-06-05 09:19:58
[2026-06-05 09:19:58,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:19:59,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:19:59,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:20:00,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:20:00,035.035 INFO    ] time= 05/06/2026 09:20:00
[2026-06-05 09:20:00,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:20:00,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:20:00,123.123 INFO    ] No existing commands found in stream
[2026-06-05 09:20:05,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:20:05,137.137 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 09:20:09,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:20:09,171.171 INFO    ] Checking for system updates...
[2026-06-05 09:20:09,207.207 INFO    ] 200
[2026-06-05 09:20:09,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:09,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:20:09,270.270 INFO    ] No update needed
[2026-06-05 09:20:09,273.273 INFO    ] Checking for camera pi updates...
[2026-06-05 09:20:09,307.307 INFO    ] 200
[2026-06-05 09:20:09,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:09,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:20:09,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:20:09,385.385 INFO    ] No camera update needed
[2026-06-05 09:20:09,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:20:09,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:20:09,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:20:09,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:20:11,442.442 INFO    ] ================================================
[2026-06-05 09:20:11,459.459 INFO    ] Launching Daemon at Fri Jun  5 09:20:11 IST 2026
[2026-06-05 09:20:11,470.470 INFO    ] ================================================
[2026-06-05 09:20:12,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:20:12
[2026-06-05 09:20:12,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:20:12,949.949 INFO    ] Initializing speech engine...
[2026-06-05 09:20:12,960.960 INFO    ] 2026-06-05 09:20:12
[2026-06-05 09:20:13,227.227 INFO    ] 2026-06-05 09:20:13
[2026-06-05 09:20:13,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:20:13,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:20:13,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:20:13,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:20:13,625.625 INFO    ] time= 05/06/2026 09:20:13
[2026-06-05 09:20:13,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:20:13,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:20:13,747.747 INFO    ] No existing commands found in stream
[2026-06-05 09:20:18,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:20:18,785.785 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 09:20:21,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:20:21,348.348 INFO    ] Checking for system updates...
[2026-06-05 09:20:21,385.385 INFO    ] 200
[2026-06-05 09:20:21,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:21,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:20:21,444.444 INFO    ] No update needed
[2026-06-05 09:20:21,447.447 INFO    ] Checking for camera pi updates...
[2026-06-05 09:20:21,482.482 INFO    ] 200
[2026-06-05 09:20:21,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:21,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:20:21,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:20:21,590.590 INFO    ] No camera update needed
[2026-06-05 09:20:21,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:20:21,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:20:21,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:20:21,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:20:23,649.649 INFO    ] ================================================
[2026-06-05 09:20:23,664.664 INFO    ] Launching Daemon at Fri Jun  5 09:20:23 IST 2026
[2026-06-05 09:20:23,675.675 INFO    ] ================================================
[2026-06-05 09:20:24,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:20:24
[2026-06-05 09:20:24,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:20:25,108.108 INFO    ] Initializing speech engine...
[2026-06-05 09:20:25,132.132 INFO    ] 2026-06-05 09:20:25
[2026-06-05 09:20:25,409.409 INFO    ] 2026-06-05 09:20:25
[2026-06-05 09:20:25,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:20:25,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:20:25,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:20:25,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:20:25,905.905 INFO    ] time= 05/06/2026 09:20:25
[2026-06-05 09:20:25,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:20:25,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:20:26,108.108 INFO    ] No existing commands found in stream
[2026-06-05 09:20:31,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:20:31,122.122 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 09:20:34,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:20:34,065.065 INFO    ] Checking for system updates...
[2026-06-05 09:20:34,101.101 INFO    ] 200
[2026-06-05 09:20:34,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:34,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:20:34,179.179 INFO    ] No update needed
[2026-06-05 09:20:34,182.182 INFO    ] Checking for camera pi updates...
[2026-06-05 09:20:34,222.222 INFO    ] 200
[2026-06-05 09:20:34,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:34,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:20:34,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:20:34,322.322 INFO    ] No camera update needed
[2026-06-05 09:20:34,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:20:34,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:20:34,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:20:34,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:20:36,381.381 INFO    ] ================================================
[2026-06-05 09:20:36,396.396 INFO    ] Launching Daemon at Fri Jun  5 09:20:36 IST 2026
[2026-06-05 09:20:36,407.407 INFO    ] ================================================
[2026-06-05 09:20:36,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:20:36
[2026-06-05 09:20:37,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:20:37,841.841 INFO    ] Initializing speech engine...
[2026-06-05 09:20:37,847.847 INFO    ] 2026-06-05 09:20:37
[2026-06-05 09:20:38,141.141 INFO    ] 2026-06-05 09:20:38
[2026-06-05 09:20:38,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:20:38,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:20:38,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:20:38,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:20:38,649.649 INFO    ] time= 05/06/2026 09:20:38
[2026-06-05 09:20:38,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:20:38,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:20:38,922.922 INFO    ] No existing commands found in stream
[2026-06-05 09:20:43,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:20:43,955.955 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 09:20:46,138.138 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:20:46,141.141 INFO    ] Checking for system updates...
[2026-06-05 09:20:46,182.182 INFO    ] 200
[2026-06-05 09:20:46,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:46,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:20:46,250.250 INFO    ] No update needed
[2026-06-05 09:20:46,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 09:20:46,295.295 INFO    ] 200
[2026-06-05 09:20:46,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:46,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:20:46,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:20:46,391.391 INFO    ] No camera update needed
[2026-06-05 09:20:46,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:20:46,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:20:46,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:20:46,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:20:48,447.447 INFO    ] ================================================
[2026-06-05 09:20:48,462.462 INFO    ] Launching Daemon at Fri Jun  5 09:20:48 IST 2026
[2026-06-05 09:20:48,472.472 INFO    ] ================================================
[2026-06-05 09:20:49,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:20:49
[2026-06-05 09:20:49,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:20:49,922.922 INFO    ] Initializing speech engine...
[2026-06-05 09:20:49,947.947 INFO    ] 2026-06-05 09:20:49
[2026-06-05 09:20:50,220.220 INFO    ] 2026-06-05 09:20:50
[2026-06-05 09:20:50,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:20:50,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:20:50,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:20:50,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:20:50,815.815 INFO    ] time= 05/06/2026 09:20:50
[2026-06-05 09:20:50,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:20:50,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:20:50,980.980 INFO    ] No existing commands found in stream
[2026-06-05 09:20:55,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:20:56,001.001 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-05 09:20:56,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:20:56,452.452 INFO    ] Checking for system updates...
[2026-06-05 09:20:56,489.489 INFO    ] 200
[2026-06-05 09:20:56,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:56,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:20:56,551.551 INFO    ] No update needed
[2026-06-05 09:20:56,553.553 INFO    ] Checking for camera pi updates...
[2026-06-05 09:20:56,587.587 INFO    ] 200
[2026-06-05 09:20:56,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:20:56,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:20:56,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:20:56,682.682 INFO    ] No camera update needed
[2026-06-05 09:20:56,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:20:56,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:20:56,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:20:56,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:20:58,738.738 INFO    ] ================================================
[2026-06-05 09:20:58,755.755 INFO    ] Launching Daemon at Fri Jun  5 09:20:58 IST 2026
[2026-06-05 09:20:58,766.766 INFO    ] ================================================
[2026-06-05 09:20:59,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:20:59
[2026-06-05 09:20:59,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:21:00,178.178 INFO    ] Initializing speech engine...
[2026-06-05 09:21:00,194.194 INFO    ] 2026-06-05 09:21:00
[2026-06-05 09:21:00,473.473 INFO    ] 2026-06-05 09:21:00
[2026-06-05 09:21:00,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:21:00,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:21:00,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:21:00,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:21:00,849.849 INFO    ] time= 05/06/2026 09:21:00
[2026-06-05 09:21:00,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:21:00,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:21:01,042.042 INFO    ] No existing commands found in stream
[2026-06-05 09:21:06,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:21:06,058.058 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 09:21:08,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:21:08,476.476 INFO    ] Checking for system updates...
[2026-06-05 09:21:08,516.516 INFO    ] 200
[2026-06-05 09:21:08,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:21:08,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:21:08,573.573 INFO    ] No update needed
[2026-06-05 09:21:08,576.576 INFO    ] Checking for camera pi updates...
[2026-06-05 09:21:08,623.623 INFO    ] 200
[2026-06-05 09:21:08,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:21:08,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:21:08,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:21:08,728.728 INFO    ] No camera update needed
[2026-06-05 09:21:08,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:21:08,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:21:08,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:21:08,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:21:10,785.785 INFO    ] ================================================
[2026-06-05 09:21:10,802.802 INFO    ] Launching Daemon at Fri Jun  5 09:21:10 IST 2026
[2026-06-05 09:21:10,813.813 INFO    ] ================================================
[2026-06-05 09:21:11,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:21:11
[2026-06-05 09:21:12,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:21:12,443.443 INFO    ] Initializing speech engine...
[2026-06-05 09:21:12,452.452 INFO    ] 2026-06-05 09:21:12
[2026-06-05 09:21:12,725.725 INFO    ] 2026-06-05 09:21:12
[2026-06-05 09:21:12,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:21:13,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:21:13,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:21:13,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:21:13,225.225 INFO    ] time= 05/06/2026 09:21:13
[2026-06-05 09:21:13,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:21:13,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:21:13,420.420 INFO    ] No existing commands found in stream
[2026-06-05 09:21:18,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:21:18,445.445 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 09:21:22,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:21:22,491.491 INFO    ] Checking for system updates...
[2026-06-05 09:21:22,529.529 INFO    ] 200
[2026-06-05 09:21:22,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:21:22,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:21:22,588.588 INFO    ] No update needed
[2026-06-05 09:21:22,591.591 INFO    ] Checking for camera pi updates...
[2026-06-05 09:21:22,626.626 INFO    ] 200
[2026-06-05 09:21:22,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:21:22,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:21:22,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:21:22,727.727 INFO    ] No camera update needed
[2026-06-05 09:21:22,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:21:22,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:21:22,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:21:22,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:21:24,786.786 INFO    ] ================================================
[2026-06-05 09:21:24,802.802 INFO    ] Launching Daemon at Fri Jun  5 09:21:24 IST 2026
[2026-06-05 09:21:24,814.814 INFO    ] ================================================
[2026-06-05 09:21:25,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:21:25
[2026-06-05 09:21:25,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:21:26,253.253 INFO    ] Initializing speech engine...
[2026-06-05 09:21:26,266.266 INFO    ] 2026-06-05 09:21:26
[2026-06-05 09:21:26,521.521 INFO    ] 2026-06-05 09:21:26
[2026-06-05 09:21:26,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:21:26,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:21:26,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:21:26,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:21:27,017.017 INFO    ] time= 05/06/2026 09:21:26
[2026-06-05 09:21:27,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:21:27,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:21:27,216.216 INFO    ] No existing commands found in stream
[2026-06-05 09:21:32,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:21:32,241.241 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 09:21:35,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:21:35,386.386 INFO    ] Checking for system updates...
[2026-06-05 09:21:35,422.422 INFO    ] 200
[2026-06-05 09:21:35,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:21:35,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:21:35,480.480 INFO    ] No update needed
[2026-06-05 09:21:35,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 09:21:35,524.524 INFO    ] 200
[2026-06-05 09:21:35,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:21:35,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:21:35,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:21:35,639.639 INFO    ] No camera update needed
[2026-06-05 09:21:35,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:21:35,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:21:35,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:21:35,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:21:37,704.704 INFO    ] ================================================
[2026-06-05 09:21:37,719.719 INFO    ] Launching Daemon at Fri Jun  5 09:21:37 IST 2026
[2026-06-05 09:21:37,731.731 INFO    ] ================================================
[2026-06-05 09:21:38,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:21:38
[2026-06-05 09:21:38,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:21:39,153.153 INFO    ] Initializing speech engine...
[2026-06-05 09:21:39,162.162 INFO    ] 2026-06-05 09:21:39
[2026-06-05 09:21:39,408.408 INFO    ] 2026-06-05 09:21:39
[2026-06-05 09:21:39,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:21:39,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:21:39,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:21:39,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:21:39,895.895 INFO    ] time= 05/06/2026 09:21:39
[2026-06-05 09:21:39,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:21:39,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:21:40,099.099 INFO    ] No existing commands found in stream
[2026-06-05 09:21:45,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:21:45,129.129 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 09:21:49,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:21:49,415.415 INFO    ] Checking for system updates...
[2026-06-05 09:21:49,451.451 INFO    ] 200
[2026-06-05 09:21:49,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:21:49,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:21:49,515.515 INFO    ] No update needed
[2026-06-05 09:21:49,518.518 INFO    ] Checking for camera pi updates...
[2026-06-05 09:21:49,551.551 INFO    ] 200
[2026-06-05 09:21:49,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:21:49,594.594 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:21:49,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:21:49,647.647 INFO    ] No camera update needed
[2026-06-05 09:21:49,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:21:49,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:21:49,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:21:49,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:21:51,704.704 INFO    ] ================================================
[2026-06-05 09:21:51,721.721 INFO    ] Launching Daemon at Fri Jun  5 09:21:51 IST 2026
[2026-06-05 09:21:51,732.732 INFO    ] ================================================
[2026-06-05 09:21:52,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:21:52
[2026-06-05 09:21:53,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:21:53,372.372 INFO    ] Initializing speech engine...
[2026-06-05 09:21:53,386.386 INFO    ] 2026-06-05 09:21:53
[2026-06-05 09:21:53,693.693 INFO    ] 2026-06-05 09:21:53
[2026-06-05 09:21:53,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:21:54,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:21:54,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:21:54,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:21:54,251.251 INFO    ] time= 05/06/2026 09:21:54
[2026-06-05 09:21:54,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:21:54,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:21:54,436.436 INFO    ] No existing commands found in stream
[2026-06-05 09:21:59,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:21:59,465.465 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-05 09:22:01,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:22:01,111.111 INFO    ] Checking for system updates...
[2026-06-05 09:22:01,156.156 INFO    ] 200
[2026-06-05 09:22:01,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:01,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:22:01,221.221 INFO    ] No update needed
[2026-06-05 09:22:01,224.224 INFO    ] Checking for camera pi updates...
[2026-06-05 09:22:01,257.257 INFO    ] 200
[2026-06-05 09:22:01,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:01,308.308 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:22:01,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:22:01,355.355 INFO    ] No camera update needed
[2026-06-05 09:22:01,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:22:01,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:22:01,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:22:01,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:22:03,412.412 INFO    ] ================================================
[2026-06-05 09:22:03,427.427 INFO    ] Launching Daemon at Fri Jun  5 09:22:03 IST 2026
[2026-06-05 09:22:03,438.438 INFO    ] ================================================
[2026-06-05 09:22:04,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:22:04
[2026-06-05 09:22:04,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:22:04,842.842 INFO    ] Initializing speech engine...
[2026-06-05 09:22:04,848.848 INFO    ] 2026-06-05 09:22:04
[2026-06-05 09:22:05,140.140 INFO    ] 2026-06-05 09:22:05
[2026-06-05 09:22:05,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:22:05,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:22:05,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:22:05,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:22:05,537.537 INFO    ] time= 05/06/2026 09:22:05
[2026-06-05 09:22:05,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:22:05,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:22:05,692.692 INFO    ] No existing commands found in stream
[2026-06-05 09:22:10,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:22:10,720.720 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 09:22:11,693.693 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:22:11,696.696 INFO    ] Checking for system updates...
[2026-06-05 09:22:11,732.732 INFO    ] 200
[2026-06-05 09:22:11,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:11,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:22:11,796.796 INFO    ] No update needed
[2026-06-05 09:22:11,799.799 INFO    ] Checking for camera pi updates...
[2026-06-05 09:22:11,833.833 INFO    ] 200
[2026-06-05 09:22:11,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:11,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:22:12,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:22:12,030.030 INFO    ] No camera update needed
[2026-06-05 09:22:12,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:22:12,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:22:12,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:22:12,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:22:14,085.085 INFO    ] ================================================
[2026-06-05 09:22:14,099.099 INFO    ] Launching Daemon at Fri Jun  5 09:22:14 IST 2026
[2026-06-05 09:22:14,110.110 INFO    ] ================================================
[2026-06-05 09:22:14,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:22:14
[2026-06-05 09:22:15,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:22:15,544.544 INFO    ] Initializing speech engine...
[2026-06-05 09:22:15,553.553 INFO    ] 2026-06-05 09:22:15
[2026-06-05 09:22:15,807.807 INFO    ] 2026-06-05 09:22:15
[2026-06-05 09:22:15,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:22:16,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:22:16,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:22:16,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:22:16,305.305 INFO    ] time= 05/06/2026 09:22:16
[2026-06-05 09:22:16,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:22:16,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:22:16,526.526 INFO    ] No existing commands found in stream
[2026-06-05 09:22:21,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:22:21,554.554 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 09:22:22,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:22:22,619.619 INFO    ] Checking for system updates...
[2026-06-05 09:22:22,656.656 INFO    ] 200
[2026-06-05 09:22:22,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:22,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:22:22,717.717 INFO    ] No update needed
[2026-06-05 09:22:22,720.720 INFO    ] Checking for camera pi updates...
[2026-06-05 09:22:22,757.757 INFO    ] 200
[2026-06-05 09:22:22,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:22,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:22:22,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:22:22,849.849 INFO    ] No camera update needed
[2026-06-05 09:22:22,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:22:22,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:22:22,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:22:22,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:22:24,904.904 INFO    ] ================================================
[2026-06-05 09:22:24,918.918 INFO    ] Launching Daemon at Fri Jun  5 09:22:24 IST 2026
[2026-06-05 09:22:24,929.929 INFO    ] ================================================
[2026-06-05 09:22:25,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:22:25
[2026-06-05 09:22:26,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:22:26,460.460 INFO    ] Initializing speech engine...
[2026-06-05 09:22:26,470.470 INFO    ] 2026-06-05 09:22:26
[2026-06-05 09:22:26,723.723 INFO    ] 2026-06-05 09:22:26
[2026-06-05 09:22:26,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:22:27,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:22:27,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:22:27,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:22:27,188.188 INFO    ] time= 05/06/2026 09:22:27
[2026-06-05 09:22:27,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:22:27,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:22:27,390.390 INFO    ] No existing commands found in stream
[2026-06-05 09:22:32,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:22:32,420.420 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 09:22:36,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:22:36,606.606 INFO    ] Checking for system updates...
[2026-06-05 09:22:36,642.642 INFO    ] 200
[2026-06-05 09:22:36,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:36,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:22:36,700.700 INFO    ] No update needed
[2026-06-05 09:22:36,702.702 INFO    ] Checking for camera pi updates...
[2026-06-05 09:22:36,737.737 INFO    ] 200
[2026-06-05 09:22:36,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:36,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:22:36,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:22:36,828.828 INFO    ] No camera update needed
[2026-06-05 09:22:36,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:22:36,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:22:36,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:22:36,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:22:38,885.885 INFO    ] ================================================
[2026-06-05 09:22:38,900.900 INFO    ] Launching Daemon at Fri Jun  5 09:22:38 IST 2026
[2026-06-05 09:22:38,911.911 INFO    ] ================================================
[2026-06-05 09:22:39,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:22:39
[2026-06-05 09:22:40,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:22:40,338.338 INFO    ] Initializing speech engine...
[2026-06-05 09:22:40,342.342 INFO    ] 2026-06-05 09:22:40
[2026-06-05 09:22:40,601.601 INFO    ] 2026-06-05 09:22:40
[2026-06-05 09:22:40,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:22:40,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:22:40,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:22:41,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:22:41,069.069 INFO    ] time= 05/06/2026 09:22:41
[2026-06-05 09:22:41,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:22:41,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:22:41,287.287 INFO    ] No existing commands found in stream
[2026-06-05 09:22:46,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:22:46,316.316 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 09:22:50,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:22:50,126.126 INFO    ] Checking for system updates...
[2026-06-05 09:22:50,163.163 INFO    ] 200
[2026-06-05 09:22:50,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:50,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:22:50,224.224 INFO    ] No update needed
[2026-06-05 09:22:50,227.227 INFO    ] Checking for camera pi updates...
[2026-06-05 09:22:50,260.260 INFO    ] 200
[2026-06-05 09:22:50,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:22:50,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:22:50,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:22:50,368.368 INFO    ] No camera update needed
[2026-06-05 09:22:50,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:22:50,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:22:50,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:22:50,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:22:52,422.422 INFO    ] ================================================
[2026-06-05 09:22:52,437.437 INFO    ] Launching Daemon at Fri Jun  5 09:22:52 IST 2026
[2026-06-05 09:22:52,447.447 INFO    ] ================================================
[2026-06-05 09:22:53,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:22:53
[2026-06-05 09:22:53,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:22:53,898.898 INFO    ] Initializing speech engine...
[2026-06-05 09:22:53,907.907 INFO    ] 2026-06-05 09:22:53
[2026-06-05 09:22:54,167.167 INFO    ] 2026-06-05 09:22:54
[2026-06-05 09:22:54,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:22:54,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:22:54,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:22:54,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:22:54,581.581 INFO    ] time= 05/06/2026 09:22:54
[2026-06-05 09:22:54,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:22:54,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:22:54,732.732 INFO    ] No existing commands found in stream
[2026-06-05 09:22:59,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:22:59,756.756 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 09:23:00,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:23:00,824.824 INFO    ] Checking for system updates...
[2026-06-05 09:23:00,861.861 INFO    ] 200
[2026-06-05 09:23:00,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:00,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:00,918.918 INFO    ] No update needed
[2026-06-05 09:23:00,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 09:23:00,954.954 INFO    ] 200
[2026-06-05 09:23:00,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:01,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:23:01,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:01,050.050 INFO    ] No camera update needed
[2026-06-05 09:23:01,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:23:01,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:23:01,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:23:01,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:23:03,110.110 INFO    ] ================================================
[2026-06-05 09:23:03,126.126 INFO    ] Launching Daemon at Fri Jun  5 09:23:03 IST 2026
[2026-06-05 09:23:03,137.137 INFO    ] ================================================
[2026-06-05 09:23:03,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:23:03
[2026-06-05 09:23:04,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:23:04,566.566 INFO    ] Initializing speech engine...
[2026-06-05 09:23:04,572.572 INFO    ] 2026-06-05 09:23:04
[2026-06-05 09:23:04,870.870 INFO    ] 2026-06-05 09:23:04
[2026-06-05 09:23:04,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:23:05,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:23:05,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:23:05,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:23:05,355.355 INFO    ] time= 05/06/2026 09:23:05
[2026-06-05 09:23:05,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:23:05,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:23:05,567.567 INFO    ] No existing commands found in stream
[2026-06-05 09:23:10,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:23:10,595.595 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 09:23:11,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:23:11,936.936 INFO    ] Checking for system updates...
[2026-06-05 09:23:11,972.972 INFO    ] 200
[2026-06-05 09:23:11,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:12,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:12,031.031 INFO    ] No update needed
[2026-06-05 09:23:12,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 09:23:12,070.070 INFO    ] 200
[2026-06-05 09:23:12,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:12,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:23:12,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:12,161.161 INFO    ] No camera update needed
[2026-06-05 09:23:12,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:23:12,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:23:12,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:23:12,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:23:14,218.218 INFO    ] ================================================
[2026-06-05 09:23:14,233.233 INFO    ] Launching Daemon at Fri Jun  5 09:23:14 IST 2026
[2026-06-05 09:23:14,244.244 INFO    ] ================================================
[2026-06-05 09:23:14,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:23:14
[2026-06-05 09:23:15,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:23:15,646.646 INFO    ] Initializing speech engine...
[2026-06-05 09:23:15,667.667 INFO    ] 2026-06-05 09:23:15
[2026-06-05 09:23:15,945.945 INFO    ] 2026-06-05 09:23:15
[2026-06-05 09:23:15,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:23:16,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:23:16,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:23:16,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:23:16,318.318 INFO    ] time= 05/06/2026 09:23:16
[2026-06-05 09:23:16,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:23:16,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:23:16,508.508 INFO    ] No existing commands found in stream
[2026-06-05 09:23:21,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:23:21,536.536 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 09:23:25,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:23:25,735.735 INFO    ] Checking for system updates...
[2026-06-05 09:23:25,771.771 INFO    ] 200
[2026-06-05 09:23:25,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:25,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:25,829.829 INFO    ] No update needed
[2026-06-05 09:23:25,832.832 INFO    ] Checking for camera pi updates...
[2026-06-05 09:23:25,869.869 INFO    ] 200
[2026-06-05 09:23:25,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:25,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:23:25,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:25,971.971 INFO    ] No camera update needed
[2026-06-05 09:23:25,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:23:25,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:23:25,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:23:25,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:23:28,028.028 INFO    ] ================================================
[2026-06-05 09:23:28,043.043 INFO    ] Launching Daemon at Fri Jun  5 09:23:28 IST 2026
[2026-06-05 09:23:28,054.054 INFO    ] ================================================
[2026-06-05 09:23:28,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:23:28
[2026-06-05 09:23:29,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:23:29,490.490 INFO    ] Initializing speech engine...
[2026-06-05 09:23:29,500.500 INFO    ] 2026-06-05 09:23:29
[2026-06-05 09:23:29,744.744 INFO    ] 2026-06-05 09:23:29
[2026-06-05 09:23:29,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:23:30,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:23:30,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:23:30,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:23:30,233.233 INFO    ] time= 05/06/2026 09:23:30
[2026-06-05 09:23:30,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:23:30,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:23:30,429.429 INFO    ] No existing commands found in stream
[2026-06-05 09:23:35,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:23:35,462.462 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 09:23:38,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:23:38,204.204 INFO    ] Checking for system updates...
[2026-06-05 09:23:38,240.240 INFO    ] 200
[2026-06-05 09:23:38,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:38,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:38,299.299 INFO    ] No update needed
[2026-06-05 09:23:38,301.301 INFO    ] Checking for camera pi updates...
[2026-06-05 09:23:38,339.339 INFO    ] 200
[2026-06-05 09:23:38,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:38,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:23:38,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:38,433.433 INFO    ] No camera update needed
[2026-06-05 09:23:38,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:23:38,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:23:38,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:23:38,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:23:40,490.490 INFO    ] ================================================
[2026-06-05 09:23:40,504.504 INFO    ] Launching Daemon at Fri Jun  5 09:23:40 IST 2026
[2026-06-05 09:23:40,515.515 INFO    ] ================================================
[2026-06-05 09:23:41,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:23:41
[2026-06-05 09:23:41,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:23:42,001.001 INFO    ] Initializing speech engine...
[2026-06-05 09:23:42,007.007 INFO    ] 2026-06-05 09:23:42
[2026-06-05 09:23:42,271.271 INFO    ] 2026-06-05 09:23:42
[2026-06-05 09:23:42,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:23:42,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:23:42,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:23:42,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:23:42,734.734 INFO    ] time= 05/06/2026 09:23:42
[2026-06-05 09:23:42,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:23:42,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:23:42,949.949 INFO    ] No existing commands found in stream
[2026-06-05 09:23:47,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:23:47,977.977 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 09:23:49,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:23:49,689.689 INFO    ] Checking for system updates...
[2026-06-05 09:23:49,726.726 INFO    ] 200
[2026-06-05 09:23:49,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:49,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:49,792.792 INFO    ] No update needed
[2026-06-05 09:23:49,795.795 INFO    ] Checking for camera pi updates...
[2026-06-05 09:23:49,828.828 INFO    ] 200
[2026-06-05 09:23:49,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:23:49,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:23:49,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:23:49,918.918 INFO    ] No camera update needed
[2026-06-05 09:23:49,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:23:49,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:23:49,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:23:49,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:23:51,978.978 INFO    ] ================================================
[2026-06-05 09:23:51,992.992 INFO    ] Launching Daemon at Fri Jun  5 09:23:51 IST 2026
[2026-06-05 09:23:52,003.003 INFO    ] ================================================
[2026-06-05 09:23:52,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:23:52
[2026-06-05 09:23:53,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:23:53,467.467 INFO    ] Initializing speech engine...
[2026-06-05 09:23:53,476.476 INFO    ] 2026-06-05 09:23:53
[2026-06-05 09:23:53,767.767 INFO    ] 2026-06-05 09:23:53
[2026-06-05 09:23:53,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:23:54,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:23:54,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:23:54,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:23:54,271.271 INFO    ] time= 05/06/2026 09:23:54
[2026-06-05 09:23:54,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:23:54,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:23:54,505.505 INFO    ] No existing commands found in stream
[2026-06-05 09:23:59,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:23:59,531.531 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 09:24:03,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:24:03,824.824 INFO    ] Checking for system updates...
[2026-06-05 09:24:03,865.865 INFO    ] 200
[2026-06-05 09:24:03,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:03,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:24:03,925.925 INFO    ] No update needed
[2026-06-05 09:24:03,928.928 INFO    ] Checking for camera pi updates...
[2026-06-05 09:24:03,963.963 INFO    ] 200
[2026-06-05 09:24:03,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:04,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:24:04,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:24:04,053.053 INFO    ] No camera update needed
[2026-06-05 09:24:04,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:24:04,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:24:04,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:24:04,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:24:06,118.118 INFO    ] ================================================
[2026-06-05 09:24:06,135.135 INFO    ] Launching Daemon at Fri Jun  5 09:24:06 IST 2026
[2026-06-05 09:24:06,149.149 INFO    ] ================================================
[2026-06-05 09:24:06,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:24:06
[2026-06-05 09:24:07,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:24:07,771.771 INFO    ] Initializing speech engine...
[2026-06-05 09:24:07,779.779 INFO    ] 2026-06-05 09:24:07
[2026-06-05 09:24:08,053.053 INFO    ] 2026-06-05 09:24:08
[2026-06-05 09:24:08,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:24:08,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:24:08,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:24:08,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:24:08,494.494 INFO    ] time= 05/06/2026 09:24:08
[2026-06-05 09:24:08,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:24:08,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:24:08,665.665 INFO    ] No existing commands found in stream
[2026-06-05 09:24:13,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:24:13,692.692 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 09:24:17,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:24:17,332.332 INFO    ] Checking for system updates...
[2026-06-05 09:24:17,373.373 INFO    ] 200
[2026-06-05 09:24:17,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:17,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:24:17,433.433 INFO    ] No update needed
[2026-06-05 09:24:17,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 09:24:17,470.470 INFO    ] 200
[2026-06-05 09:24:17,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:17,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:24:17,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:24:17,667.667 INFO    ] No camera update needed
[2026-06-05 09:24:17,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:24:17,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:24:17,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:24:17,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:24:19,726.726 INFO    ] ================================================
[2026-06-05 09:24:19,741.741 INFO    ] Launching Daemon at Fri Jun  5 09:24:19 IST 2026
[2026-06-05 09:24:19,751.751 INFO    ] ================================================
[2026-06-05 09:24:20,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:24:20
[2026-06-05 09:24:21,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:24:21,357.357 INFO    ] Initializing speech engine...
[2026-06-05 09:24:21,365.365 INFO    ] 2026-06-05 09:24:21
[2026-06-05 09:24:21,636.636 INFO    ] 2026-06-05 09:24:21
[2026-06-05 09:24:21,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:24:21,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:24:21,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:24:22,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:24:22,134.134 INFO    ] time= 05/06/2026 09:24:22
[2026-06-05 09:24:22,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:24:22,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:24:22,338.338 INFO    ] No existing commands found in stream
[2026-06-05 09:24:27,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:24:27,368.368 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 09:24:30,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:24:30,421.421 INFO    ] Checking for system updates...
[2026-06-05 09:24:30,462.462 INFO    ] 200
[2026-06-05 09:24:30,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:30,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:24:30,529.529 INFO    ] No update needed
[2026-06-05 09:24:30,532.532 INFO    ] Checking for camera pi updates...
[2026-06-05 09:24:30,566.566 INFO    ] 200
[2026-06-05 09:24:30,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:30,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:24:30,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:24:30,664.664 INFO    ] No camera update needed
[2026-06-05 09:24:30,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:24:30,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:24:30,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:24:30,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:24:32,726.726 INFO    ] ================================================
[2026-06-05 09:24:32,742.742 INFO    ] Launching Daemon at Fri Jun  5 09:24:32 IST 2026
[2026-06-05 09:24:32,753.753 INFO    ] ================================================
[2026-06-05 09:24:33,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:24:33
[2026-06-05 09:24:33,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:24:34,207.207 INFO    ] Initializing speech engine...
[2026-06-05 09:24:34,216.216 INFO    ] 2026-06-05 09:24:34
[2026-06-05 09:24:34,479.479 INFO    ] 2026-06-05 09:24:34
[2026-06-05 09:24:34,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:24:34,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:24:34,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:24:34,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:24:34,951.951 INFO    ] time= 05/06/2026 09:24:34
[2026-06-05 09:24:35,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:24:35,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:24:35,155.155 INFO    ] No existing commands found in stream
[2026-06-05 09:24:40,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:24:40,185.185 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 09:24:43,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:24:43,031.031 INFO    ] Checking for system updates...
[2026-06-05 09:24:43,068.068 INFO    ] 200
[2026-06-05 09:24:43,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:43,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:24:43,126.126 INFO    ] No update needed
[2026-06-05 09:24:43,129.129 INFO    ] Checking for camera pi updates...
[2026-06-05 09:24:43,162.162 INFO    ] 200
[2026-06-05 09:24:43,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:43,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:24:43,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:24:43,244.244 INFO    ] No camera update needed
[2026-06-05 09:24:43,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:24:43,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:24:43,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:24:43,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:24:45,307.307 INFO    ] ================================================
[2026-06-05 09:24:45,322.322 INFO    ] Launching Daemon at Fri Jun  5 09:24:45 IST 2026
[2026-06-05 09:24:45,333.333 INFO    ] ================================================
[2026-06-05 09:24:45,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:24:45
[2026-06-05 09:24:46,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:24:46,792.792 INFO    ] Initializing speech engine...
[2026-06-05 09:24:46,809.809 INFO    ] 2026-06-05 09:24:46
[2026-06-05 09:24:47,082.082 INFO    ] 2026-06-05 09:24:47
[2026-06-05 09:24:47,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:24:47,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:24:47,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:24:47,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:24:47,590.590 INFO    ] time= 05/06/2026 09:24:47
[2026-06-05 09:24:47,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:24:47,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:24:47,782.782 INFO    ] No existing commands found in stream
[2026-06-05 09:24:52,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:24:52,797.797 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 09:24:56,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:24:56,175.175 INFO    ] Checking for system updates...
[2026-06-05 09:24:56,211.211 INFO    ] 200
[2026-06-05 09:24:56,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:56,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:24:56,269.269 INFO    ] No update needed
[2026-06-05 09:24:56,271.271 INFO    ] Checking for camera pi updates...
[2026-06-05 09:24:56,306.306 INFO    ] 200
[2026-06-05 09:24:56,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:24:56,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:24:56,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:24:56,397.397 INFO    ] No camera update needed
[2026-06-05 09:24:56,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:24:56,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:24:56,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:24:56,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:24:58,454.454 INFO    ] ================================================
[2026-06-05 09:24:58,470.470 INFO    ] Launching Daemon at Fri Jun  5 09:24:58 IST 2026
[2026-06-05 09:24:58,482.482 INFO    ] ================================================
[2026-06-05 09:24:59,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:24:59
[2026-06-05 09:24:59,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:25:00,106.106 INFO    ] Initializing speech engine...
[2026-06-05 09:25:00,121.121 INFO    ] 2026-06-05 09:25:00
[2026-06-05 09:25:00,401.401 INFO    ] 2026-06-05 09:25:00
[2026-06-05 09:25:00,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:25:00,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:25:00,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:25:00,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:25:00,905.905 INFO    ] time= 05/06/2026 09:25:00
[2026-06-05 09:25:00,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:25:01,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:25:01,153.153 INFO    ] No existing commands found in stream
[2026-06-05 09:25:06,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:25:06,183.183 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 09:25:07,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:25:07,585.585 INFO    ] Checking for system updates...
[2026-06-05 09:25:07,623.623 INFO    ] 200
[2026-06-05 09:25:07,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:25:07,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:25:07,683.683 INFO    ] No update needed
[2026-06-05 09:25:07,686.686 INFO    ] Checking for camera pi updates...
[2026-06-05 09:25:07,721.721 INFO    ] 200
[2026-06-05 09:25:07,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:25:07,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:25:07,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:25:07,826.826 INFO    ] No camera update needed
[2026-06-05 09:25:07,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:25:07,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:25:07,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:25:07,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:25:09,885.885 INFO    ] ================================================
[2026-06-05 09:25:09,900.900 INFO    ] Launching Daemon at Fri Jun  5 09:25:09 IST 2026
[2026-06-05 09:25:09,911.911 INFO    ] ================================================
[2026-06-05 09:25:10,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:25:10
[2026-06-05 09:25:11,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:25:11,377.377 INFO    ] Initializing speech engine...
[2026-06-05 09:25:11,383.383 INFO    ] 2026-06-05 09:25:11
[2026-06-05 09:25:11,633.633 INFO    ] 2026-06-05 09:25:11
[2026-06-05 09:25:11,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:25:11,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:25:11,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:25:12,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:25:12,011.011 INFO    ] time= 05/06/2026 09:25:12
[2026-06-05 09:25:12,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:25:12,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:25:12,197.197 INFO    ] No existing commands found in stream
[2026-06-05 09:25:17,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:25:17,221.221 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-05 09:25:23,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:25:23,897.897 INFO    ] Checking for system updates...
[2026-06-05 09:25:23,934.934 INFO    ] 200
[2026-06-05 09:25:23,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:25:23,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:25:23,994.994 INFO    ] No update needed
[2026-06-05 09:25:23,997.997 INFO    ] Checking for camera pi updates...
[2026-06-05 09:25:24,032.032 INFO    ] 200
[2026-06-05 09:25:24,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:25:24,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:25:24,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:25:24,127.127 INFO    ] No camera update needed
[2026-06-05 09:25:24,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:25:24,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:25:24,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:25:24,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:25:26,186.186 INFO    ] ================================================
[2026-06-05 09:25:26,207.207 INFO    ] Launching Daemon at Fri Jun  5 09:25:26 IST 2026
[2026-06-05 09:25:26,218.218 INFO    ] ================================================
[2026-06-05 09:25:26,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:25:26
[2026-06-05 09:25:27,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:25:27,754.754 INFO    ] Initializing speech engine...
[2026-06-05 09:25:27,763.763 INFO    ] 2026-06-05 09:25:27
[2026-06-05 09:25:28,017.017 INFO    ] 2026-06-05 09:25:28
[2026-06-05 09:25:28,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:25:29,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:25:29,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:25:30,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:25:30,047.047 INFO    ] time= 05/06/2026 09:25:30
[2026-06-05 09:25:30,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:25:30,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:25:30,160.160 INFO    ] No existing commands found in stream
[2026-06-05 09:25:35,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:25:35,178.178 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 09:25:37,913.913 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:25:37,916.916 INFO    ] Checking for system updates...
[2026-06-05 09:25:37,952.952 INFO    ] 200
[2026-06-05 09:25:37,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:25:38,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:25:38,010.010 INFO    ] No update needed
[2026-06-05 09:25:38,013.013 INFO    ] Checking for camera pi updates...
[2026-06-05 09:25:38,073.073 INFO    ] 200
[2026-06-05 09:25:38,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:25:38,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:25:38,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:25:38,168.168 INFO    ] No camera update needed
[2026-06-05 09:25:38,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:25:38,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:25:38,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:25:38,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:25:40,227.227 INFO    ] ================================================
[2026-06-05 09:25:40,243.243 INFO    ] Launching Daemon at Fri Jun  5 09:25:40 IST 2026
[2026-06-05 09:25:40,254.254 INFO    ] ================================================
[2026-06-05 09:25:40,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:25:40
[2026-06-05 09:25:41,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:25:41,666.666 INFO    ] Initializing speech engine...
[2026-06-05 09:25:41,689.689 INFO    ] 2026-06-05 09:25:41
[2026-06-05 09:25:41,940.940 INFO    ] 2026-06-05 09:25:41
[2026-06-05 09:25:41,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:25:42,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:25:42,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:25:42,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:25:42,311.311 INFO    ] time= 05/06/2026 09:25:42
[2026-06-05 09:25:42,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:25:42,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:25:42,410.410 INFO    ] No existing commands found in stream
[2026-06-05 09:25:47,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:25:47,449.449 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 09:25:50,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:25:50,810.810 INFO    ] Checking for system updates...
[2026-06-05 09:25:50,846.846 INFO    ] 200
[2026-06-05 09:25:50,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:25:50,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:25:50,912.912 INFO    ] No update needed
[2026-06-05 09:25:50,916.916 INFO    ] Checking for camera pi updates...
[2026-06-05 09:25:50,959.959 INFO    ] 200
[2026-06-05 09:25:50,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:25:51,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:25:51,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:25:51,064.064 INFO    ] No camera update needed
[2026-06-05 09:25:51,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:25:51,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:25:51,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:25:51,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:25:53,118.118 INFO    ] ================================================
[2026-06-05 09:25:53,133.133 INFO    ] Launching Daemon at Fri Jun  5 09:25:53 IST 2026
[2026-06-05 09:25:53,144.144 INFO    ] ================================================
[2026-06-05 09:25:53,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:25:53
[2026-06-05 09:25:54,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:25:54,555.555 INFO    ] Initializing speech engine...
[2026-06-05 09:25:54,569.569 INFO    ] 2026-06-05 09:25:54
[2026-06-05 09:25:54,838.838 INFO    ] 2026-06-05 09:25:54
[2026-06-05 09:25:54,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:25:55,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:25:55,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:25:55,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:25:55,345.345 INFO    ] time= 05/06/2026 09:25:55
[2026-06-05 09:25:55,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:25:55,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:25:55,541.541 INFO    ] No existing commands found in stream
[2026-06-05 09:26:00,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:26:00,569.569 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 09:26:04,711.711 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:26:04,714.714 INFO    ] Checking for system updates...
[2026-06-05 09:26:04,749.749 INFO    ] 200
[2026-06-05 09:26:04,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:04,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:26:04,807.807 INFO    ] No update needed
[2026-06-05 09:26:04,809.809 INFO    ] Checking for camera pi updates...
[2026-06-05 09:26:04,843.843 INFO    ] 200
[2026-06-05 09:26:04,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:04,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:26:04,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:26:04,924.924 INFO    ] No camera update needed
[2026-06-05 09:26:04,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:26:04,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:26:04,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:26:04,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:26:06,981.981 INFO    ] ================================================
[2026-06-05 09:26:07,996.996 INFO    ] Launching Daemon at Fri Jun  5 09:26:06 IST 2026
[2026-06-05 09:26:07,007.007 INFO    ] ================================================
[2026-06-05 09:26:07,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:26:07
[2026-06-05 09:26:08,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:26:08,421.421 INFO    ] Initializing speech engine...
[2026-06-05 09:26:08,438.438 INFO    ] 2026-06-05 09:26:08
[2026-06-05 09:26:08,693.693 INFO    ] 2026-06-05 09:26:08
[2026-06-05 09:26:08,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:26:08,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:26:08,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:26:09,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:26:09,069.069 INFO    ] time= 05/06/2026 09:26:09
[2026-06-05 09:26:09,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:26:09,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:26:09,186.186 INFO    ] No existing commands found in stream
[2026-06-05 09:26:14,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:26:14,214.214 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 09:26:15,207.207 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:26:15,210.210 INFO    ] Checking for system updates...
[2026-06-05 09:26:15,246.246 INFO    ] 200
[2026-06-05 09:26:15,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:15,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:26:15,305.305 INFO    ] No update needed
[2026-06-05 09:26:15,307.307 INFO    ] Checking for camera pi updates...
[2026-06-05 09:26:15,341.341 INFO    ] 200
[2026-06-05 09:26:15,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:15,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:26:15,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:26:15,432.432 INFO    ] No camera update needed
[2026-06-05 09:26:15,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:26:15,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:26:15,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:26:15,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:26:17,487.487 INFO    ] ================================================
[2026-06-05 09:26:17,502.502 INFO    ] Launching Daemon at Fri Jun  5 09:26:17 IST 2026
[2026-06-05 09:26:17,512.512 INFO    ] ================================================
[2026-06-05 09:26:18,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:26:18
[2026-06-05 09:26:18,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:26:18,952.952 INFO    ] Initializing speech engine...
[2026-06-05 09:26:18,958.958 INFO    ] 2026-06-05 09:26:18
[2026-06-05 09:26:19,211.211 INFO    ] 2026-06-05 09:26:19
[2026-06-05 09:26:19,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:26:19,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:26:19,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:26:19,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:26:19,924.924 INFO    ] time= 05/06/2026 09:26:19
[2026-06-05 09:26:19,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:26:20,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:26:20,153.153 INFO    ] No existing commands found in stream
[2026-06-05 09:26:25,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:26:25,186.186 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 09:26:30,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:26:30,045.045 INFO    ] Checking for system updates...
[2026-06-05 09:26:30,084.084 INFO    ] 200
[2026-06-05 09:26:30,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:30,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:26:30,150.150 INFO    ] No update needed
[2026-06-05 09:26:30,152.152 INFO    ] Checking for camera pi updates...
[2026-06-05 09:26:30,186.186 INFO    ] 200
[2026-06-05 09:26:30,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:30,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:26:30,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:26:30,386.386 INFO    ] No camera update needed
[2026-06-05 09:26:30,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:26:30,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:26:30,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:26:30,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:26:32,442.442 INFO    ] ================================================
[2026-06-05 09:26:32,457.457 INFO    ] Launching Daemon at Fri Jun  5 09:26:32 IST 2026
[2026-06-05 09:26:32,469.469 INFO    ] ================================================
[2026-06-05 09:26:33,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:26:33
[2026-06-05 09:26:33,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:26:33,920.920 INFO    ] Initializing speech engine...
[2026-06-05 09:26:33,938.938 INFO    ] 2026-06-05 09:26:33
[2026-06-05 09:26:34,186.186 INFO    ] 2026-06-05 09:26:34
[2026-06-05 09:26:34,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:26:34,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:26:34,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:26:34,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:26:34,677.677 INFO    ] time= 05/06/2026 09:26:34
[2026-06-05 09:26:34,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:26:34,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:26:34,876.876 INFO    ] No existing commands found in stream
[2026-06-05 09:26:39,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:26:39,907.907 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 09:26:43,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:26:43,843.843 INFO    ] Checking for system updates...
[2026-06-05 09:26:43,879.879 INFO    ] 200
[2026-06-05 09:26:43,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:43,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:26:43,946.946 INFO    ] No update needed
[2026-06-05 09:26:43,948.948 INFO    ] Checking for camera pi updates...
[2026-06-05 09:26:43,983.983 INFO    ] 200
[2026-06-05 09:26:43,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:44,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:26:44,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:26:44,080.080 INFO    ] No camera update needed
[2026-06-05 09:26:44,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:26:44,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:26:44,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:26:44,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:26:46,137.137 INFO    ] ================================================
[2026-06-05 09:26:46,152.152 INFO    ] Launching Daemon at Fri Jun  5 09:26:46 IST 2026
[2026-06-05 09:26:46,163.163 INFO    ] ================================================
[2026-06-05 09:26:46,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:26:46
[2026-06-05 09:26:47,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:26:47,611.611 INFO    ] Initializing speech engine...
[2026-06-05 09:26:47,633.633 INFO    ] 2026-06-05 09:26:47
[2026-06-05 09:26:47,894.894 INFO    ] 2026-06-05 09:26:47
[2026-06-05 09:26:47,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:26:48,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:26:48,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:26:48,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:26:48,397.397 INFO    ] time= 05/06/2026 09:26:48
[2026-06-05 09:26:48,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:26:48,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:26:48,604.604 INFO    ] No existing commands found in stream
[2026-06-05 09:26:53,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:26:53,634.634 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 09:26:57,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:26:57,671.671 INFO    ] Checking for system updates...
[2026-06-05 09:26:57,707.707 INFO    ] 200
[2026-06-05 09:26:57,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:57,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:26:57,764.764 INFO    ] No update needed
[2026-06-05 09:26:57,767.767 INFO    ] Checking for camera pi updates...
[2026-06-05 09:26:57,804.804 INFO    ] 200
[2026-06-05 09:26:57,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:26:57,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:26:57,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:26:57,900.900 INFO    ] No camera update needed
[2026-06-05 09:26:57,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:26:57,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:26:57,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:26:57,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:26:59,956.956 INFO    ] ================================================
[2026-06-05 09:26:59,971.971 INFO    ] Launching Daemon at Fri Jun  5 09:26:59 IST 2026
[2026-06-05 09:26:59,982.982 INFO    ] ================================================
[2026-06-05 09:27:00,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:27:00
[2026-06-05 09:27:01,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:27:01,620.620 INFO    ] Initializing speech engine...
[2026-06-05 09:27:01,629.629 INFO    ] 2026-06-05 09:27:01
[2026-06-05 09:27:01,986.986 INFO    ] 2026-06-05 09:27:01
[2026-06-05 09:27:02,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:27:02,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:27:02,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:27:02,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:27:02,675.675 INFO    ] time= 05/06/2026 09:27:02
[2026-06-05 09:27:02,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:27:02,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:27:02,987.987 INFO    ] No existing commands found in stream
[2026-06-05 09:27:08,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:27:08,005.005 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 09:27:09,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:27:09,554.554 INFO    ] Checking for system updates...
[2026-06-05 09:27:09,592.592 INFO    ] 200
[2026-06-05 09:27:09,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:09,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:27:09,660.660 INFO    ] No update needed
[2026-06-05 09:27:09,663.663 INFO    ] Checking for camera pi updates...
[2026-06-05 09:27:09,698.698 INFO    ] 200
[2026-06-05 09:27:09,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:09,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:27:09,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:27:09,803.803 INFO    ] No camera update needed
[2026-06-05 09:27:09,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:27:09,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:27:09,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:27:09,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:27:11,861.861 INFO    ] ================================================
[2026-06-05 09:27:11,877.877 INFO    ] Launching Daemon at Fri Jun  5 09:27:11 IST 2026
[2026-06-05 09:27:11,887.887 INFO    ] ================================================
[2026-06-05 09:27:12,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:27:12
[2026-06-05 09:27:13,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:27:13,288.288 INFO    ] Initializing speech engine...
[2026-06-05 09:27:13,301.301 INFO    ] 2026-06-05 09:27:13
[2026-06-05 09:27:13,577.577 INFO    ] 2026-06-05 09:27:13
[2026-06-05 09:27:13,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:27:13,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:27:13,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:27:14,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:27:14,039.039 INFO    ] time= 05/06/2026 09:27:14
[2026-06-05 09:27:14,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:27:14,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:27:14,221.221 INFO    ] No existing commands found in stream
[2026-06-05 09:27:19,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:27:19,236.236 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 09:27:19,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:27:19,703.703 INFO    ] Checking for system updates...
[2026-06-05 09:27:19,743.743 INFO    ] 200
[2026-06-05 09:27:19,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:19,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:27:19,802.802 INFO    ] No update needed
[2026-06-05 09:27:19,804.804 INFO    ] Checking for camera pi updates...
[2026-06-05 09:27:19,839.839 INFO    ] 200
[2026-06-05 09:27:19,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:19,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:27:19,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:27:19,929.929 INFO    ] No camera update needed
[2026-06-05 09:27:19,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:27:19,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:27:19,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:27:19,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:27:21,988.988 INFO    ] ================================================
[2026-06-05 09:27:22,003.003 INFO    ] Launching Daemon at Fri Jun  5 09:27:21 IST 2026
[2026-06-05 09:27:22,014.014 INFO    ] ================================================
[2026-06-05 09:27:22,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:27:22
[2026-06-05 09:27:23,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:27:23,611.611 INFO    ] Initializing speech engine...
[2026-06-05 09:27:23,623.623 INFO    ] 2026-06-05 09:27:23
[2026-06-05 09:27:23,933.933 INFO    ] 2026-06-05 09:27:23
[2026-06-05 09:27:24,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:27:24,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:27:24,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:27:24,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:27:24,470.470 INFO    ] time= 05/06/2026 09:27:24
[2026-06-05 09:27:24,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:27:24,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:27:24,634.634 INFO    ] No existing commands found in stream
[2026-06-05 09:27:29,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:27:29,660.660 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 09:27:32,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:27:32,595.595 INFO    ] Checking for system updates...
[2026-06-05 09:27:32,638.638 INFO    ] 200
[2026-06-05 09:27:32,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:32,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:27:32,713.713 INFO    ] No update needed
[2026-06-05 09:27:32,717.717 INFO    ] Checking for camera pi updates...
[2026-06-05 09:27:32,760.760 INFO    ] 200
[2026-06-05 09:27:32,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:32,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:27:32,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:27:32,858.858 INFO    ] No camera update needed
[2026-06-05 09:27:32,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:27:32,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:27:32,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:27:32,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:27:34,918.918 INFO    ] ================================================
[2026-06-05 09:27:34,932.932 INFO    ] Launching Daemon at Fri Jun  5 09:27:34 IST 2026
[2026-06-05 09:27:34,943.943 INFO    ] ================================================
[2026-06-05 09:27:35,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:27:35
[2026-06-05 09:27:36,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:27:36,360.360 INFO    ] Initializing speech engine...
[2026-06-05 09:27:36,367.367 INFO    ] 2026-06-05 09:27:36
[2026-06-05 09:27:36,676.676 INFO    ] 2026-06-05 09:27:36
[2026-06-05 09:27:36,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:27:36,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:27:36,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:27:37,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:27:37,074.074 INFO    ] time= 05/06/2026 09:27:37
[2026-06-05 09:27:37,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:27:37,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:27:37,250.250 INFO    ] No existing commands found in stream
[2026-06-05 09:27:42,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:27:42,284.284 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 09:27:44,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:27:44,719.719 INFO    ] Checking for system updates...
[2026-06-05 09:27:44,757.757 INFO    ] 200
[2026-06-05 09:27:44,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:44,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:27:44,817.817 INFO    ] No update needed
[2026-06-05 09:27:44,820.820 INFO    ] Checking for camera pi updates...
[2026-06-05 09:27:44,855.855 INFO    ] 200
[2026-06-05 09:27:44,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:44,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:27:44,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:27:44,954.954 INFO    ] No camera update needed
[2026-06-05 09:27:44,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:27:44,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:27:44,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:27:44,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:27:47,014.014 INFO    ] ================================================
[2026-06-05 09:27:47,029.029 INFO    ] Launching Daemon at Fri Jun  5 09:27:47 IST 2026
[2026-06-05 09:27:47,040.040 INFO    ] ================================================
[2026-06-05 09:27:47,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:27:47
[2026-06-05 09:27:48,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:27:48,518.518 INFO    ] Initializing speech engine...
[2026-06-05 09:27:48,528.528 INFO    ] 2026-06-05 09:27:48
[2026-06-05 09:27:48,783.783 INFO    ] 2026-06-05 09:27:48
[2026-06-05 09:27:48,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:27:48,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:27:49,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:27:49,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:27:49,156.156 INFO    ] time= 05/06/2026 09:27:49
[2026-06-05 09:27:49,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:27:49,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:27:49,351.351 INFO    ] No existing commands found in stream
[2026-06-05 09:27:54,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:27:54,367.367 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 09:27:57,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:27:57,258.258 INFO    ] Checking for system updates...
[2026-06-05 09:27:57,294.294 INFO    ] 200
[2026-06-05 09:27:57,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:57,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:27:57,359.359 INFO    ] No update needed
[2026-06-05 09:27:57,362.362 INFO    ] Checking for camera pi updates...
[2026-06-05 09:27:57,397.397 INFO    ] 200
[2026-06-05 09:27:57,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:27:57,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:27:57,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:27:57,493.493 INFO    ] No camera update needed
[2026-06-05 09:27:57,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:27:57,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:27:57,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:27:57,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:27:59,553.553 INFO    ] ================================================
[2026-06-05 09:27:59,568.568 INFO    ] Launching Daemon at Fri Jun  5 09:27:59 IST 2026
[2026-06-05 09:27:59,579.579 INFO    ] ================================================
[2026-06-05 09:28:00,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:28:00
[2026-06-05 09:28:00,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:28:01,285.285 INFO    ] Initializing speech engine...
[2026-06-05 09:28:01,292.292 INFO    ] 2026-06-05 09:28:01
[2026-06-05 09:28:01,568.568 INFO    ] 2026-06-05 09:28:01
[2026-06-05 09:28:01,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:28:01,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:28:01,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:28:02,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:28:02,051.051 INFO    ] time= 05/06/2026 09:28:02
[2026-06-05 09:28:02,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:28:02,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:28:02,142.142 INFO    ] No existing commands found in stream
[2026-06-05 09:28:07,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:28:07,155.155 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 09:28:10,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:28:10,357.357 INFO    ] Checking for system updates...
[2026-06-05 09:28:10,392.392 INFO    ] 200
[2026-06-05 09:28:10,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:10,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:28:10,450.450 INFO    ] No update needed
[2026-06-05 09:28:10,452.452 INFO    ] Checking for camera pi updates...
[2026-06-05 09:28:10,487.487 INFO    ] 200
[2026-06-05 09:28:10,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:10,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:28:10,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:28:10,580.580 INFO    ] No camera update needed
[2026-06-05 09:28:10,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:28:10,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:28:10,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:28:10,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:28:12,638.638 INFO    ] ================================================
[2026-06-05 09:28:12,661.661 INFO    ] Launching Daemon at Fri Jun  5 09:28:12 IST 2026
[2026-06-05 09:28:12,678.678 INFO    ] ================================================
[2026-06-05 09:28:13,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:28:13
[2026-06-05 09:28:13,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:28:14,207.207 INFO    ] Initializing speech engine...
[2026-06-05 09:28:14,222.222 INFO    ] 2026-06-05 09:28:14
[2026-06-05 09:28:14,478.478 INFO    ] 2026-06-05 09:28:14
[2026-06-05 09:28:14,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:28:14,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:28:14,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:28:14,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:28:14,854.854 INFO    ] time= 05/06/2026 09:28:14
[2026-06-05 09:28:14,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:28:14,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:28:15,035.035 INFO    ] No existing commands found in stream
[2026-06-05 09:28:20,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:28:20,068.068 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 09:28:23,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:28:23,959.959 INFO    ] Checking for system updates...
[2026-06-05 09:28:23,996.996 INFO    ] 200
[2026-06-05 09:28:23,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:24,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:28:24,054.054 INFO    ] No update needed
[2026-06-05 09:28:24,057.057 INFO    ] Checking for camera pi updates...
[2026-06-05 09:28:24,091.091 INFO    ] 200
[2026-06-05 09:28:24,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:24,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:28:24,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:28:24,199.199 INFO    ] No camera update needed
[2026-06-05 09:28:24,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:28:24,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:28:24,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:28:24,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:28:26,255.255 INFO    ] ================================================
[2026-06-05 09:28:26,271.271 INFO    ] Launching Daemon at Fri Jun  5 09:28:26 IST 2026
[2026-06-05 09:28:26,282.282 INFO    ] ================================================
[2026-06-05 09:28:26,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:28:26
[2026-06-05 09:28:27,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:28:27,744.744 INFO    ] Initializing speech engine...
[2026-06-05 09:28:27,753.753 INFO    ] 2026-06-05 09:28:27
[2026-06-05 09:28:28,014.014 INFO    ] 2026-06-05 09:28:28
[2026-06-05 09:28:28,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:28:30,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:28:30,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:28:30,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:28:30,398.398 INFO    ] time= 05/06/2026 09:28:30
[2026-06-05 09:28:30,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:28:30,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:28:30,526.526 INFO    ] No existing commands found in stream
[2026-06-05 09:28:35,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:28:35,541.541 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 09:28:37,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:28:37,143.143 INFO    ] Checking for system updates...
[2026-06-05 09:28:37,184.184 INFO    ] 200
[2026-06-05 09:28:37,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:37,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:28:37,244.244 INFO    ] No update needed
[2026-06-05 09:28:37,247.247 INFO    ] Checking for camera pi updates...
[2026-06-05 09:28:37,282.282 INFO    ] 200
[2026-06-05 09:28:37,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:37,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:28:37,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:28:37,386.386 INFO    ] No camera update needed
[2026-06-05 09:28:37,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:28:37,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:28:37,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:28:37,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:28:39,447.447 INFO    ] ================================================
[2026-06-05 09:28:39,468.468 INFO    ] Launching Daemon at Fri Jun  5 09:28:39 IST 2026
[2026-06-05 09:28:39,478.478 INFO    ] ================================================
[2026-06-05 09:28:40,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:28:40
[2026-06-05 09:28:40,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:28:41,126.126 INFO    ] Initializing speech engine...
[2026-06-05 09:28:41,140.140 INFO    ] 2026-06-05 09:28:41
[2026-06-05 09:28:41,426.426 INFO    ] 2026-06-05 09:28:41
[2026-06-05 09:28:41,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:28:41,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:28:41,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:28:41,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:28:41,966.966 INFO    ] time= 05/06/2026 09:28:41
[2026-06-05 09:28:41,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:28:42,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:28:42,143.143 INFO    ] No existing commands found in stream
[2026-06-05 09:28:47,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:28:47,170.170 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 09:28:47,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:28:47,625.625 INFO    ] Checking for system updates...
[2026-06-05 09:28:47,662.662 INFO    ] 200
[2026-06-05 09:28:47,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:47,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:28:47,721.721 INFO    ] No update needed
[2026-06-05 09:28:47,723.723 INFO    ] Checking for camera pi updates...
[2026-06-05 09:28:47,757.757 INFO    ] 200
[2026-06-05 09:28:47,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:47,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:28:47,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:28:47,867.867 INFO    ] No camera update needed
[2026-06-05 09:28:47,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:28:47,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:28:47,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:28:47,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:28:49,930.930 INFO    ] ================================================
[2026-06-05 09:28:49,945.945 INFO    ] Launching Daemon at Fri Jun  5 09:28:49 IST 2026
[2026-06-05 09:28:49,955.955 INFO    ] ================================================
[2026-06-05 09:28:50,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:28:50
[2026-06-05 09:28:51,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:28:51,361.361 INFO    ] Initializing speech engine...
[2026-06-05 09:28:51,367.367 INFO    ] 2026-06-05 09:28:51
[2026-06-05 09:28:51,661.661 INFO    ] 2026-06-05 09:28:51
[2026-06-05 09:28:51,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:28:51,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:28:51,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:28:52,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:28:52,049.049 INFO    ] time= 05/06/2026 09:28:52
[2026-06-05 09:28:52,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:28:52,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:28:52,178.178 INFO    ] No existing commands found in stream
[2026-06-05 09:28:57,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:28:57,192.192 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 09:28:58,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:28:58,046.046 INFO    ] Checking for system updates...
[2026-06-05 09:28:58,084.084 INFO    ] 200
[2026-06-05 09:28:58,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:58,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:28:58,151.151 INFO    ] No update needed
[2026-06-05 09:28:58,153.153 INFO    ] Checking for camera pi updates...
[2026-06-05 09:28:58,188.188 INFO    ] 200
[2026-06-05 09:28:58,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:28:58,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:28:58,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:28:58,294.294 INFO    ] No camera update needed
[2026-06-05 09:28:58,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:28:58,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:28:58,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:28:58,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:29:00,353.353 INFO    ] ================================================
[2026-06-05 09:29:00,369.369 INFO    ] Launching Daemon at Fri Jun  5 09:29:00 IST 2026
[2026-06-05 09:29:00,379.379 INFO    ] ================================================
[2026-06-05 09:29:00,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:29:00
[2026-06-05 09:29:01,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:29:02,076.076 INFO    ] Initializing speech engine...
[2026-06-05 09:29:02,103.103 INFO    ] 2026-06-05 09:29:02
[2026-06-05 09:29:02,491.491 INFO    ] 2026-06-05 09:29:02
[2026-06-05 09:29:02,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:29:02,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:29:02,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:29:02,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:29:02,969.969 INFO    ] time= 05/06/2026 09:29:02
[2026-06-05 09:29:02,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:29:03,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:29:03,090.090 INFO    ] No existing commands found in stream
[2026-06-05 09:29:08,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:29:08,121.121 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 09:29:11,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:29:11,718.718 INFO    ] Checking for system updates...
[2026-06-05 09:29:11,755.755 INFO    ] 200
[2026-06-05 09:29:11,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:29:11,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:29:11,814.814 INFO    ] No update needed
[2026-06-05 09:29:11,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 09:29:11,851.851 INFO    ] 200
[2026-06-05 09:29:11,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:29:11,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:29:11,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:29:11,941.941 INFO    ] No camera update needed
[2026-06-05 09:29:11,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:29:11,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:29:11,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:29:11,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:29:14,998.998 INFO    ] ================================================
[2026-06-05 09:29:14,013.013 INFO    ] Launching Daemon at Fri Jun  5 09:29:14 IST 2026
[2026-06-05 09:29:14,024.024 INFO    ] ================================================
[2026-06-05 09:29:14,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:29:14
[2026-06-05 09:29:15,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:29:15,433.433 INFO    ] Initializing speech engine...
[2026-06-05 09:29:15,442.442 INFO    ] 2026-06-05 09:29:15
[2026-06-05 09:29:15,738.738 INFO    ] 2026-06-05 09:29:15
[2026-06-05 09:29:15,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:29:15,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:29:15,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:29:16,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:29:16,123.123 INFO    ] time= 05/06/2026 09:29:16
[2026-06-05 09:29:16,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:29:16,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:29:16,251.251 INFO    ] No existing commands found in stream
[2026-06-05 09:29:21,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:29:21,284.284 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 09:29:25,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:29:25,679.679 INFO    ] Checking for system updates...
[2026-06-05 09:29:25,716.716 INFO    ] 200
[2026-06-05 09:29:25,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:29:25,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:29:25,775.775 INFO    ] No update needed
[2026-06-05 09:29:25,777.777 INFO    ] Checking for camera pi updates...
[2026-06-05 09:29:25,811.811 INFO    ] 200
[2026-06-05 09:29:25,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:29:25,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:29:25,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:29:25,908.908 INFO    ] No camera update needed
[2026-06-05 09:29:25,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:29:25,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:29:25,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:29:25,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:29:27,963.963 INFO    ] ================================================
[2026-06-05 09:29:27,979.979 INFO    ] Launching Daemon at Fri Jun  5 09:29:27 IST 2026
[2026-06-05 09:29:27,991.991 INFO    ] ================================================
[2026-06-05 09:29:28,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:29:28
[2026-06-05 09:29:29,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:29:29,406.406 INFO    ] Initializing speech engine...
[2026-06-05 09:29:29,425.425 INFO    ] 2026-06-05 09:29:29
[2026-06-05 09:29:29,671.671 INFO    ] 2026-06-05 09:29:29
[2026-06-05 09:29:29,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:29:29,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:29:29,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:29:30,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:29:30,113.113 INFO    ] time= 05/06/2026 09:29:30
[2026-06-05 09:29:30,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:29:30,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:29:30,293.293 INFO    ] No existing commands found in stream
[2026-06-05 09:29:35,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:29:35,308.308 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 09:29:37,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:29:37,943.943 INFO    ] Checking for system updates...
[2026-06-05 09:29:37,984.984 INFO    ] 200
[2026-06-05 09:29:37,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:29:38,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:29:38,056.056 INFO    ] No update needed
[2026-06-05 09:29:38,058.058 INFO    ] Checking for camera pi updates...
[2026-06-05 09:29:38,093.093 INFO    ] 200
[2026-06-05 09:29:38,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:29:38,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:29:38,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:29:38,187.187 INFO    ] No camera update needed
[2026-06-05 09:29:38,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:29:38,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:29:38,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:29:38,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:29:40,244.244 INFO    ] ================================================
[2026-06-05 09:29:40,259.259 INFO    ] Launching Daemon at Fri Jun  5 09:29:40 IST 2026
[2026-06-05 09:29:40,270.270 INFO    ] ================================================
[2026-06-05 09:29:40,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:29:40
[2026-06-05 09:29:41,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:29:41,725.725 INFO    ] Initializing speech engine...
[2026-06-05 09:29:41,732.732 INFO    ] 2026-06-05 09:29:41
[2026-06-05 09:29:41,993.993 INFO    ] 2026-06-05 09:29:41
[2026-06-05 09:29:42,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:29:42,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:29:42,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:29:42,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:29:42,463.463 INFO    ] time= 05/06/2026 09:29:42
[2026-06-05 09:29:42,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:29:42,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:29:42,678.678 INFO    ] No existing commands found in stream
[2026-06-05 09:29:47,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:29:47,706.706 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 09:29:48,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:29:48,840.840 INFO    ] Checking for system updates...
[2026-06-05 09:29:48,881.881 INFO    ] 200
[2026-06-05 09:29:48,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:29:48,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:29:48,948.948 INFO    ] No update needed
[2026-06-05 09:29:48,951.951 INFO    ] Checking for camera pi updates...
[2026-06-05 09:29:48,990.990 INFO    ] 200
[2026-06-05 09:29:48,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:29:49,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:29:49,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:29:49,099.099 INFO    ] No camera update needed
[2026-06-05 09:29:49,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:29:49,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:29:49,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:29:49,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:29:51,157.157 INFO    ] ================================================
[2026-06-05 09:29:51,172.172 INFO    ] Launching Daemon at Fri Jun  5 09:29:51 IST 2026
[2026-06-05 09:29:51,183.183 INFO    ] ================================================
[2026-06-05 09:29:51,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:29:51
[2026-06-05 09:29:52,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:29:52,817.817 INFO    ] Initializing speech engine...
[2026-06-05 09:29:52,830.830 INFO    ] 2026-06-05 09:29:52
[2026-06-05 09:29:53,120.120 INFO    ] 2026-06-05 09:29:53
[2026-06-05 09:29:53,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:29:53,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:29:53,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:29:53,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:29:53,662.662 INFO    ] time= 05/06/2026 09:29:53
[2026-06-05 09:29:53,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:29:53,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:29:53,815.815 INFO    ] No existing commands found in stream
[2026-06-05 09:29:58,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:29:58,841.841 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 09:30:00,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:30:00,645.645 INFO    ] Checking for system updates...
[2026-06-05 09:30:00,682.682 INFO    ] 200
[2026-06-05 09:30:00,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:00,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:30:00,744.744 INFO    ] No update needed
[2026-06-05 09:30:00,747.747 INFO    ] Checking for camera pi updates...
[2026-06-05 09:30:00,790.790 INFO    ] 200
[2026-06-05 09:30:00,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:00,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:30:00,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:30:00,904.904 INFO    ] No camera update needed
[2026-06-05 09:30:00,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:30:00,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:30:00,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:30:00,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:30:03,073.073 INFO    ] ================================================
[2026-06-05 09:30:03,095.095 INFO    ] Launching Daemon at Fri Jun  5 09:30:03 IST 2026
[2026-06-05 09:30:03,116.116 INFO    ] ================================================
[2026-06-05 09:30:03,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:30:03
[2026-06-05 09:30:04,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:30:04,699.699 INFO    ] Initializing speech engine...
[2026-06-05 09:30:04,704.704 INFO    ] 2026-06-05 09:30:04
[2026-06-05 09:30:04,969.969 INFO    ] 2026-06-05 09:30:04
[2026-06-05 09:30:04,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:30:05,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:30:05,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:30:05,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:30:05,435.435 INFO    ] time= 05/06/2026 09:30:05
[2026-06-05 09:30:05,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:30:05,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:30:05,661.661 INFO    ] No existing commands found in stream
[2026-06-05 09:30:10,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:30:10,685.685 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 09:30:12,712.712 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:30:12,716.716 INFO    ] Checking for system updates...
[2026-06-05 09:30:12,757.757 INFO    ] 200
[2026-06-05 09:30:12,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:12,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:30:12,819.819 INFO    ] No update needed
[2026-06-05 09:30:12,822.822 INFO    ] Checking for camera pi updates...
[2026-06-05 09:30:12,859.859 INFO    ] 200
[2026-06-05 09:30:12,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:12,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:30:12,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:30:12,961.961 INFO    ] No camera update needed
[2026-06-05 09:30:12,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:30:12,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:30:12,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:30:12,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:30:15,021.021 INFO    ] ================================================
[2026-06-05 09:30:15,036.036 INFO    ] Launching Daemon at Fri Jun  5 09:30:15 IST 2026
[2026-06-05 09:30:15,047.047 INFO    ] ================================================
[2026-06-05 09:30:15,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:30:15
[2026-06-05 09:30:16,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:30:16,452.452 INFO    ] Initializing speech engine...
[2026-06-05 09:30:16,461.461 INFO    ] 2026-06-05 09:30:16
[2026-06-05 09:30:16,752.752 INFO    ] 2026-06-05 09:30:16
[2026-06-05 09:30:16,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:30:17,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:30:17,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:30:17,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:30:17,240.240 INFO    ] time= 05/06/2026 09:30:17
[2026-06-05 09:30:17,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:30:17,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:30:17,412.412 INFO    ] No existing commands found in stream
[2026-06-05 09:30:22,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:30:22,427.427 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 09:30:26,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:30:26,719.719 INFO    ] Checking for system updates...
[2026-06-05 09:30:26,756.756 INFO    ] 200
[2026-06-05 09:30:26,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:26,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:30:26,819.819 INFO    ] No update needed
[2026-06-05 09:30:26,822.822 INFO    ] Checking for camera pi updates...
[2026-06-05 09:30:26,855.855 INFO    ] 200
[2026-06-05 09:30:26,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:26,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:30:26,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:30:26,949.949 INFO    ] No camera update needed
[2026-06-05 09:30:26,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:30:26,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:30:26,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:30:26,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:30:29,006.006 INFO    ] ================================================
[2026-06-05 09:30:29,021.021 INFO    ] Launching Daemon at Fri Jun  5 09:30:29 IST 2026
[2026-06-05 09:30:29,032.032 INFO    ] ================================================
[2026-06-05 09:30:29,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:30:29
[2026-06-05 09:30:30,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:30:30,494.494 INFO    ] Initializing speech engine...
[2026-06-05 09:30:30,504.504 INFO    ] 2026-06-05 09:30:30
[2026-06-05 09:30:30,767.767 INFO    ] 2026-06-05 09:30:30
[2026-06-05 09:30:30,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:30:30,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:30:31,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:30:31,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:30:31,259.259 INFO    ] time= 05/06/2026 09:30:31
[2026-06-05 09:30:31,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:30:31,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:30:31,459.459 INFO    ] No existing commands found in stream
[2026-06-05 09:30:36,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:30:36,480.480 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 09:30:39,126.126 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:30:39,129.129 INFO    ] Checking for system updates...
[2026-06-05 09:30:39,166.166 INFO    ] 200
[2026-06-05 09:30:39,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:39,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:30:39,225.225 INFO    ] No update needed
[2026-06-05 09:30:39,227.227 INFO    ] Checking for camera pi updates...
[2026-06-05 09:30:39,266.266 INFO    ] 200
[2026-06-05 09:30:39,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:39,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:30:39,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:30:39,457.457 INFO    ] No camera update needed
[2026-06-05 09:30:39,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:30:39,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:30:39,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:30:39,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:30:41,514.514 INFO    ] ================================================
[2026-06-05 09:30:41,529.529 INFO    ] Launching Daemon at Fri Jun  5 09:30:41 IST 2026
[2026-06-05 09:30:41,539.539 INFO    ] ================================================
[2026-06-05 09:30:42,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:30:42
[2026-06-05 09:30:42,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:30:42,979.979 INFO    ] Initializing speech engine...
[2026-06-05 09:30:42,988.988 INFO    ] 2026-06-05 09:30:42
[2026-06-05 09:30:43,283.283 INFO    ] 2026-06-05 09:30:43
[2026-06-05 09:30:43,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:30:43,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:30:43,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:30:43,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:30:43,662.662 INFO    ] time= 05/06/2026 09:30:43
[2026-06-05 09:30:43,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:30:43,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:30:43,790.790 INFO    ] No existing commands found in stream
[2026-06-05 09:30:48,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:30:48,828.828 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 09:30:52,890.890 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:30:52,893.893 INFO    ] Checking for system updates...
[2026-06-05 09:30:52,930.930 INFO    ] 200
[2026-06-05 09:30:52,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:52,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:30:52,997.997 INFO    ] No update needed
[2026-06-05 09:30:52,999.999 INFO    ] Checking for camera pi updates...
[2026-06-05 09:30:53,034.034 INFO    ] 200
[2026-06-05 09:30:53,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:30:53,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:30:53,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:30:53,125.125 INFO    ] No camera update needed
[2026-06-05 09:30:53,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:30:53,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:30:53,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:30:53,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:30:55,180.180 INFO    ] ================================================
[2026-06-05 09:30:55,195.195 INFO    ] Launching Daemon at Fri Jun  5 09:30:55 IST 2026
[2026-06-05 09:30:55,206.206 INFO    ] ================================================
[2026-06-05 09:30:55,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:30:55
[2026-06-05 09:30:56,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:30:56,836.836 INFO    ] Initializing speech engine...
[2026-06-05 09:30:56,850.850 INFO    ] 2026-06-05 09:30:56
[2026-06-05 09:30:57,161.161 INFO    ] 2026-06-05 09:30:57
[2026-06-05 09:30:57,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:30:57,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:30:57,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:30:57,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:30:57,672.672 INFO    ] time= 05/06/2026 09:30:57
[2026-06-05 09:30:57,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:30:57,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:30:57,829.829 INFO    ] No existing commands found in stream
[2026-06-05 09:31:02,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:31:02,866.866 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 09:31:04,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:31:04,497.497 INFO    ] Checking for system updates...
[2026-06-05 09:31:04,540.540 INFO    ] 200
[2026-06-05 09:31:04,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:04,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:31:04,603.603 INFO    ] No update needed
[2026-06-05 09:31:04,606.606 INFO    ] Checking for camera pi updates...
[2026-06-05 09:31:04,647.647 INFO    ] 200
[2026-06-05 09:31:04,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:04,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:31:04,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:31:04,743.743 INFO    ] No camera update needed
[2026-06-05 09:31:04,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:31:04,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:31:04,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:31:04,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:31:06,806.806 INFO    ] ================================================
[2026-06-05 09:31:06,826.826 INFO    ] Launching Daemon at Fri Jun  5 09:31:06 IST 2026
[2026-06-05 09:31:06,838.838 INFO    ] ================================================
[2026-06-05 09:31:07,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:31:07
[2026-06-05 09:31:08,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:31:08,283.283 INFO    ] Initializing speech engine...
[2026-06-05 09:31:08,293.293 INFO    ] 2026-06-05 09:31:08
[2026-06-05 09:31:08,597.597 INFO    ] 2026-06-05 09:31:08
[2026-06-05 09:31:08,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:31:09,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:31:09,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:31:09,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:31:09,741.741 INFO    ] time= 05/06/2026 09:31:09
[2026-06-05 09:31:09,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:31:09,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:31:09,886.886 INFO    ] No existing commands found in stream
[2026-06-05 09:31:14,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:31:14,919.919 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 09:31:17,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:31:17,830.830 INFO    ] Checking for system updates...
[2026-06-05 09:31:17,871.871 INFO    ] 200
[2026-06-05 09:31:17,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:17,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:31:17,930.930 INFO    ] No update needed
[2026-06-05 09:31:17,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 09:31:17,970.970 INFO    ] 200
[2026-06-05 09:31:17,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:18,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:31:18,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:31:18,073.073 INFO    ] No camera update needed
[2026-06-05 09:31:18,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:31:18,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:31:18,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:31:18,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:31:20,130.130 INFO    ] ================================================
[2026-06-05 09:31:20,145.145 INFO    ] Launching Daemon at Fri Jun  5 09:31:20 IST 2026
[2026-06-05 09:31:20,156.156 INFO    ] ================================================
[2026-06-05 09:31:20,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:31:20
[2026-06-05 09:31:21,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:31:21,570.570 INFO    ] Initializing speech engine...
[2026-06-05 09:31:21,579.579 INFO    ] 2026-06-05 09:31:21
[2026-06-05 09:31:21,874.874 INFO    ] 2026-06-05 09:31:21
[2026-06-05 09:31:21,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:31:22,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:31:22,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:31:22,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:31:22,258.258 INFO    ] time= 05/06/2026 09:31:22
[2026-06-05 09:31:22,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:31:22,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:31:22,383.383 INFO    ] No existing commands found in stream
[2026-06-05 09:31:27,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:31:27,398.398 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 09:31:31,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:31:31,688.688 INFO    ] Checking for system updates...
[2026-06-05 09:31:31,726.726 INFO    ] 200
[2026-06-05 09:31:31,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:31,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:31:31,794.794 INFO    ] No update needed
[2026-06-05 09:31:31,797.797 INFO    ] Checking for camera pi updates...
[2026-06-05 09:31:31,837.837 INFO    ] 200
[2026-06-05 09:31:31,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:31,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:31:31,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:31:31,923.923 INFO    ] No camera update needed
[2026-06-05 09:31:31,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:31:31,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:31:31,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:31:31,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:31:33,981.981 INFO    ] ================================================
[2026-06-05 09:31:34,996.996 INFO    ] Launching Daemon at Fri Jun  5 09:31:33 IST 2026
[2026-06-05 09:31:34,007.007 INFO    ] ================================================
[2026-06-05 09:31:34,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:31:34
[2026-06-05 09:31:35,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:31:35,462.462 INFO    ] Initializing speech engine...
[2026-06-05 09:31:35,471.471 INFO    ] 2026-06-05 09:31:35
[2026-06-05 09:31:35,769.769 INFO    ] 2026-06-05 09:31:35
[2026-06-05 09:31:35,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:31:35,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:31:35,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:31:36,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:31:36,119.119 INFO    ] time= 05/06/2026 09:31:36
[2026-06-05 09:31:36,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:31:36,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:31:36,268.268 INFO    ] No existing commands found in stream
[2026-06-05 09:31:41,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:31:41,282.282 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 09:31:42,667.667 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:31:42,670.670 INFO    ] Checking for system updates...
[2026-06-05 09:31:42,712.712 INFO    ] 200
[2026-06-05 09:31:42,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:42,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:31:42,780.780 INFO    ] No update needed
[2026-06-05 09:31:42,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 09:31:42,819.819 INFO    ] 200
[2026-06-05 09:31:42,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:42,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:31:42,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:31:42,921.921 INFO    ] No camera update needed
[2026-06-05 09:31:42,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:31:42,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:31:42,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:31:42,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:31:44,976.976 INFO    ] ================================================
[2026-06-05 09:31:44,991.991 INFO    ] Launching Daemon at Fri Jun  5 09:31:44 IST 2026
[2026-06-05 09:31:45,002.002 INFO    ] ================================================
[2026-06-05 09:31:45,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:31:45
[2026-06-05 09:31:46,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:31:46,498.498 INFO    ] Initializing speech engine...
[2026-06-05 09:31:46,511.511 INFO    ] 2026-06-05 09:31:46
[2026-06-05 09:31:46,781.781 INFO    ] 2026-06-05 09:31:46
[2026-06-05 09:31:46,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:31:47,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:31:47,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:31:47,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:31:47,228.228 INFO    ] time= 05/06/2026 09:31:47
[2026-06-05 09:31:47,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:31:47,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:31:47,390.390 INFO    ] No existing commands found in stream
[2026-06-05 09:31:52,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:31:52,406.406 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 09:31:53,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:31:53,179.179 INFO    ] Checking for system updates...
[2026-06-05 09:31:53,215.215 INFO    ] 200
[2026-06-05 09:31:53,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:53,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:31:53,279.279 INFO    ] No update needed
[2026-06-05 09:31:53,281.281 INFO    ] Checking for camera pi updates...
[2026-06-05 09:31:53,316.316 INFO    ] 200
[2026-06-05 09:31:53,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:31:53,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:31:53,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:31:53,416.416 INFO    ] No camera update needed
[2026-06-05 09:31:53,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:31:53,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:31:53,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:31:53,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:31:55,471.471 INFO    ] ================================================
[2026-06-05 09:31:55,486.486 INFO    ] Launching Daemon at Fri Jun  5 09:31:55 IST 2026
[2026-06-05 09:31:55,498.498 INFO    ] ================================================
[2026-06-05 09:31:56,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:31:56
[2026-06-05 09:31:56,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:31:56,942.942 INFO    ] Initializing speech engine...
[2026-06-05 09:31:56,952.952 INFO    ] 2026-06-05 09:31:56
[2026-06-05 09:31:57,207.207 INFO    ] 2026-06-05 09:31:57
[2026-06-05 09:31:57,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:31:57,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:31:57,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:31:57,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:31:57,596.596 INFO    ] time= 05/06/2026 09:31:57
[2026-06-05 09:31:57,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:31:57,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:31:57,784.784 INFO    ] No existing commands found in stream
[2026-06-05 09:32:02,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:32:02,818.818 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 09:32:04,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:32:04,541.541 INFO    ] Checking for system updates...
[2026-06-05 09:32:04,579.579 INFO    ] 200
[2026-06-05 09:32:04,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:04,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:32:04,644.644 INFO    ] No update needed
[2026-06-05 09:32:04,647.647 INFO    ] Checking for camera pi updates...
[2026-06-05 09:32:04,681.681 INFO    ] 200
[2026-06-05 09:32:04,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:04,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:32:04,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:32:04,758.758 INFO    ] No camera update needed
[2026-06-05 09:32:04,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:32:04,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:32:04,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:32:04,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:32:06,816.816 INFO    ] ================================================
[2026-06-05 09:32:06,831.831 INFO    ] Launching Daemon at Fri Jun  5 09:32:06 IST 2026
[2026-06-05 09:32:06,842.842 INFO    ] ================================================
[2026-06-05 09:32:07,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:32:07
[2026-06-05 09:32:07,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:32:08,259.259 INFO    ] Initializing speech engine...
[2026-06-05 09:32:08,268.268 INFO    ] 2026-06-05 09:32:08
[2026-06-05 09:32:08,528.528 INFO    ] 2026-06-05 09:32:08
[2026-06-05 09:32:08,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:32:08,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:32:08,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:32:08,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:32:09,045.045 INFO    ] time= 05/06/2026 09:32:08
[2026-06-05 09:32:09,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:32:09,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:32:09,254.254 INFO    ] No existing commands found in stream
[2026-06-05 09:32:14,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:32:14,280.280 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 09:32:17,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:32:17,801.801 INFO    ] Checking for system updates...
[2026-06-05 09:32:17,843.843 INFO    ] 200
[2026-06-05 09:32:17,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:17,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:32:17,912.912 INFO    ] No update needed
[2026-06-05 09:32:17,914.914 INFO    ] Checking for camera pi updates...
[2026-06-05 09:32:17,950.950 INFO    ] 200
[2026-06-05 09:32:17,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:17,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:32:18,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:32:18,050.050 INFO    ] No camera update needed
[2026-06-05 09:32:18,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:32:18,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:32:18,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:32:18,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:32:20,111.111 INFO    ] ================================================
[2026-06-05 09:32:20,127.127 INFO    ] Launching Daemon at Fri Jun  5 09:32:20 IST 2026
[2026-06-05 09:32:20,140.140 INFO    ] ================================================
[2026-06-05 09:32:20,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:32:20
[2026-06-05 09:32:21,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:32:21,625.625 INFO    ] Initializing speech engine...
[2026-06-05 09:32:21,634.634 INFO    ] 2026-06-05 09:32:21
[2026-06-05 09:32:21,942.942 INFO    ] 2026-06-05 09:32:21
[2026-06-05 09:32:21,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:32:22,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:32:22,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:32:22,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:32:22,703.703 INFO    ] time= 05/06/2026 09:32:22
[2026-06-05 09:32:22,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:32:22,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:32:22,903.903 INFO    ] No existing commands found in stream
[2026-06-05 09:32:27,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:32:27,925.925 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 09:32:30,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:32:30,168.168 INFO    ] Checking for system updates...
[2026-06-05 09:32:30,208.208 INFO    ] 200
[2026-06-05 09:32:30,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:30,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:32:30,267.267 INFO    ] No update needed
[2026-06-05 09:32:30,270.270 INFO    ] Checking for camera pi updates...
[2026-06-05 09:32:30,308.308 INFO    ] 200
[2026-06-05 09:32:30,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:30,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:32:30,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:32:30,404.404 INFO    ] No camera update needed
[2026-06-05 09:32:30,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:32:30,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:32:30,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:32:30,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:32:32,470.470 INFO    ] ================================================
[2026-06-05 09:32:32,488.488 INFO    ] Launching Daemon at Fri Jun  5 09:32:32 IST 2026
[2026-06-05 09:32:32,507.507 INFO    ] ================================================
[2026-06-05 09:32:33,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:32:33
[2026-06-05 09:32:33,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:32:33,978.978 INFO    ] Initializing speech engine...
[2026-06-05 09:32:33,984.984 INFO    ] 2026-06-05 09:32:33
[2026-06-05 09:32:34,279.279 INFO    ] 2026-06-05 09:32:34
[2026-06-05 09:32:34,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:32:34,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:32:34,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:32:34,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:32:34,892.892 INFO    ] time= 05/06/2026 09:32:34
[2026-06-05 09:32:34,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:32:34,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:32:35,095.095 INFO    ] No existing commands found in stream
[2026-06-05 09:32:40,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:32:40,130.130 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 09:32:42,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:32:42,729.729 INFO    ] Checking for system updates...
[2026-06-05 09:32:42,768.768 INFO    ] 200
[2026-06-05 09:32:42,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:42,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:32:42,827.827 INFO    ] No update needed
[2026-06-05 09:32:42,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 09:32:42,867.867 INFO    ] 200
[2026-06-05 09:32:42,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:42,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:32:43,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:32:43,064.064 INFO    ] No camera update needed
[2026-06-05 09:32:43,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:32:43,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:32:43,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:32:43,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:32:45,126.126 INFO    ] ================================================
[2026-06-05 09:32:45,141.141 INFO    ] Launching Daemon at Fri Jun  5 09:32:45 IST 2026
[2026-06-05 09:32:45,152.152 INFO    ] ================================================
[2026-06-05 09:32:45,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:32:45
[2026-06-05 09:32:46,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:32:46,571.571 INFO    ] Initializing speech engine...
[2026-06-05 09:32:46,577.577 INFO    ] 2026-06-05 09:32:46
[2026-06-05 09:32:46,869.869 INFO    ] 2026-06-05 09:32:46
[2026-06-05 09:32:46,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:32:47,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:32:47,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:32:47,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:32:47,249.249 INFO    ] time= 05/06/2026 09:32:47
[2026-06-05 09:32:47,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:32:47,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:32:47,361.361 INFO    ] No existing commands found in stream
[2026-06-05 09:32:52,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:32:52,389.389 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 09:32:56,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:32:56,139.139 INFO    ] Checking for system updates...
[2026-06-05 09:32:56,181.181 INFO    ] 200
[2026-06-05 09:32:56,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:56,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:32:56,244.244 INFO    ] No update needed
[2026-06-05 09:32:56,247.247 INFO    ] Checking for camera pi updates...
[2026-06-05 09:32:56,285.285 INFO    ] 200
[2026-06-05 09:32:56,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:32:56,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:32:56,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:32:56,402.402 INFO    ] No camera update needed
[2026-06-05 09:32:56,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:32:56,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:32:56,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:32:56,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:32:58,459.459 INFO    ] ================================================
[2026-06-05 09:32:58,474.474 INFO    ] Launching Daemon at Fri Jun  5 09:32:58 IST 2026
[2026-06-05 09:32:58,487.487 INFO    ] ================================================
[2026-06-05 09:32:59,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:32:59
[2026-06-05 09:32:59,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:32:59,961.961 INFO    ] Initializing speech engine...
[2026-06-05 09:32:59,968.968 INFO    ] 2026-06-05 09:32:59
[2026-06-05 09:33:00,227.227 INFO    ] 2026-06-05 09:33:00
[2026-06-05 09:33:00,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:33:00,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:33:00,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:33:00,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:33:00,585.585 INFO    ] time= 05/06/2026 09:33:00
[2026-06-05 09:33:00,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:33:00,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:33:00,783.783 INFO    ] No existing commands found in stream
[2026-06-05 09:33:05,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:33:05,797.797 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 09:33:07,548.548 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:33:07,551.551 INFO    ] Checking for system updates...
[2026-06-05 09:33:07,593.593 INFO    ] 200
[2026-06-05 09:33:07,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:07,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:33:07,651.651 INFO    ] No update needed
[2026-06-05 09:33:07,653.653 INFO    ] Checking for camera pi updates...
[2026-06-05 09:33:07,687.687 INFO    ] 200
[2026-06-05 09:33:07,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:07,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:33:07,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:33:07,796.796 INFO    ] No camera update needed
[2026-06-05 09:33:07,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:33:07,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:33:07,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:33:07,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:33:09,852.852 INFO    ] ================================================
[2026-06-05 09:33:09,867.867 INFO    ] Launching Daemon at Fri Jun  5 09:33:09 IST 2026
[2026-06-05 09:33:09,879.879 INFO    ] ================================================
[2026-06-05 09:33:10,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:33:10
[2026-06-05 09:33:11,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:33:11,326.326 INFO    ] Initializing speech engine...
[2026-06-05 09:33:11,335.335 INFO    ] 2026-06-05 09:33:11
[2026-06-05 09:33:11,629.629 INFO    ] 2026-06-05 09:33:11
[2026-06-05 09:33:11,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:33:11,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:33:11,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:33:11,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:33:11,991.991 INFO    ] time= 05/06/2026 09:33:11
[2026-06-05 09:33:12,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:33:12,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:33:12,116.116 INFO    ] No existing commands found in stream
[2026-06-05 09:33:17,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:33:17,134.134 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 09:33:20,537.537 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:33:20,540.540 INFO    ] Checking for system updates...
[2026-06-05 09:33:20,576.576 INFO    ] 200
[2026-06-05 09:33:20,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:20,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:33:20,634.634 INFO    ] No update needed
[2026-06-05 09:33:20,637.637 INFO    ] Checking for camera pi updates...
[2026-06-05 09:33:20,670.670 INFO    ] 200
[2026-06-05 09:33:20,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:20,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:33:20,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:33:20,767.767 INFO    ] No camera update needed
[2026-06-05 09:33:20,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:33:20,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:33:20,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:33:20,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:33:22,822.822 INFO    ] ================================================
[2026-06-05 09:33:22,837.837 INFO    ] Launching Daemon at Fri Jun  5 09:33:22 IST 2026
[2026-06-05 09:33:22,847.847 INFO    ] ================================================
[2026-06-05 09:33:23,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:33:23
[2026-06-05 09:33:24,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:33:24,288.288 INFO    ] Initializing speech engine...
[2026-06-05 09:33:24,308.308 INFO    ] 2026-06-05 09:33:24
[2026-06-05 09:33:24,573.573 INFO    ] 2026-06-05 09:33:24
[2026-06-05 09:33:24,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:33:24,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:33:24,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:33:25,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:33:25,087.087 INFO    ] time= 05/06/2026 09:33:25
[2026-06-05 09:33:25,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:33:25,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:33:25,298.298 INFO    ] No existing commands found in stream
[2026-06-05 09:33:30,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:33:30,329.329 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 09:33:31,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:33:31,545.545 INFO    ] Checking for system updates...
[2026-06-05 09:33:31,589.589 INFO    ] 200
[2026-06-05 09:33:31,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:31,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:33:31,651.651 INFO    ] No update needed
[2026-06-05 09:33:31,654.654 INFO    ] Checking for camera pi updates...
[2026-06-05 09:33:31,693.693 INFO    ] 200
[2026-06-05 09:33:31,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:31,741.741 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:33:31,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:33:31,776.776 INFO    ] No camera update needed
[2026-06-05 09:33:31,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:33:31,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:33:31,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:33:31,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:33:33,836.836 INFO    ] ================================================
[2026-06-05 09:33:33,851.851 INFO    ] Launching Daemon at Fri Jun  5 09:33:33 IST 2026
[2026-06-05 09:33:33,862.862 INFO    ] ================================================
[2026-06-05 09:33:34,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:33:34
[2026-06-05 09:33:35,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:33:35,327.327 INFO    ] Initializing speech engine...
[2026-06-05 09:33:35,346.346 INFO    ] 2026-06-05 09:33:35
[2026-06-05 09:33:35,597.597 INFO    ] 2026-06-05 09:33:35
[2026-06-05 09:33:35,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:33:35,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:33:35,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:33:35,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:33:35,975.975 INFO    ] time= 05/06/2026 09:33:35
[2026-06-05 09:33:35,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:33:36,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:33:36,164.164 INFO    ] No existing commands found in stream
[2026-06-05 09:33:41,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:33:41,189.189 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 09:33:45,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:33:45,371.371 INFO    ] Checking for system updates...
[2026-06-05 09:33:45,416.416 INFO    ] 200
[2026-06-05 09:33:45,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:45,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:33:45,481.481 INFO    ] No update needed
[2026-06-05 09:33:45,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 09:33:45,518.518 INFO    ] 200
[2026-06-05 09:33:45,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:45,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:33:45,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:33:45,620.620 INFO    ] No camera update needed
[2026-06-05 09:33:45,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:33:45,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:33:45,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:33:45,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:33:47,680.680 INFO    ] ================================================
[2026-06-05 09:33:47,695.695 INFO    ] Launching Daemon at Fri Jun  5 09:33:47 IST 2026
[2026-06-05 09:33:47,705.705 INFO    ] ================================================
[2026-06-05 09:33:48,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:33:48
[2026-06-05 09:33:48,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:33:49,112.112 INFO    ] Initializing speech engine...
[2026-06-05 09:33:49,120.120 INFO    ] 2026-06-05 09:33:49
[2026-06-05 09:33:49,395.395 INFO    ] 2026-06-05 09:33:49
[2026-06-05 09:33:49,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:33:49,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:33:49,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:33:49,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:33:49,878.878 INFO    ] time= 05/06/2026 09:33:49
[2026-06-05 09:33:49,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:33:49,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:33:50,105.105 INFO    ] No existing commands found in stream
[2026-06-05 09:33:55,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:33:55,136.136 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 09:33:56,702.702 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:33:56,705.705 INFO    ] Checking for system updates...
[2026-06-05 09:33:56,741.741 INFO    ] 200
[2026-06-05 09:33:56,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:56,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:33:56,799.799 INFO    ] No update needed
[2026-06-05 09:33:56,802.802 INFO    ] Checking for camera pi updates...
[2026-06-05 09:33:56,835.835 INFO    ] 200
[2026-06-05 09:33:56,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:33:56,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:33:56,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:33:56,934.934 INFO    ] No camera update needed
[2026-06-05 09:33:56,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:33:56,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:33:56,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:33:56,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:33:58,991.991 INFO    ] ================================================
[2026-06-05 09:33:59,006.006 INFO    ] Launching Daemon at Fri Jun  5 09:33:59 IST 2026
[2026-06-05 09:33:59,017.017 INFO    ] ================================================
[2026-06-05 09:33:59,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:33:59
[2026-06-05 09:34:00,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:34:00,452.452 INFO    ] Initializing speech engine...
[2026-06-05 09:34:00,461.461 INFO    ] 2026-06-05 09:34:00
[2026-06-05 09:34:00,710.710 INFO    ] 2026-06-05 09:34:00
[2026-06-05 09:34:00,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:34:00,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:34:00,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:34:01,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:34:01,171.171 INFO    ] time= 05/06/2026 09:34:01
[2026-06-05 09:34:01,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:34:01,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:34:01,295.295 INFO    ] No existing commands found in stream
[2026-06-05 09:34:06,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:34:06,308.308 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 09:34:09,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:34:09,872.872 INFO    ] Checking for system updates...
[2026-06-05 09:34:09,908.908 INFO    ] 200
[2026-06-05 09:34:09,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:34:09,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:34:09,974.974 INFO    ] No update needed
[2026-06-05 09:34:09,977.977 INFO    ] Checking for camera pi updates...
[2026-06-05 09:34:10,011.011 INFO    ] 200
[2026-06-05 09:34:10,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:34:10,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:34:10,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:34:10,113.113 INFO    ] No camera update needed
[2026-06-05 09:34:10,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:34:10,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:34:10,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:34:10,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:34:12,169.169 INFO    ] ================================================
[2026-06-05 09:34:12,184.184 INFO    ] Launching Daemon at Fri Jun  5 09:34:12 IST 2026
[2026-06-05 09:34:12,194.194 INFO    ] ================================================
[2026-06-05 09:34:12,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:34:12
[2026-06-05 09:34:13,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:34:13,598.598 INFO    ] Initializing speech engine...
[2026-06-05 09:34:13,611.611 INFO    ] 2026-06-05 09:34:13
[2026-06-05 09:34:13,889.889 INFO    ] 2026-06-05 09:34:13
[2026-06-05 09:34:13,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:34:14,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:34:14,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:34:14,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:34:14,256.256 INFO    ] time= 05/06/2026 09:34:14
[2026-06-05 09:34:14,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:34:14,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:34:14,454.454 INFO    ] No existing commands found in stream
[2026-06-05 09:34:19,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:34:19,469.469 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 09:34:22,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:34:22,800.800 INFO    ] Checking for system updates...
[2026-06-05 09:34:22,840.840 INFO    ] 200
[2026-06-05 09:34:22,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:34:22,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:34:22,898.898 INFO    ] No update needed
[2026-06-05 09:34:22,900.900 INFO    ] Checking for camera pi updates...
[2026-06-05 09:34:22,937.937 INFO    ] 200
[2026-06-05 09:34:22,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:34:22,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:34:23,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:34:23,033.033 INFO    ] No camera update needed
[2026-06-05 09:34:23,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:34:23,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:34:23,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:34:23,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:34:25,088.088 INFO    ] ================================================
[2026-06-05 09:34:25,103.103 INFO    ] Launching Daemon at Fri Jun  5 09:34:25 IST 2026
[2026-06-05 09:34:25,118.118 INFO    ] ================================================
[2026-06-05 09:34:25,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:34:25
[2026-06-05 09:34:26,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:34:26,552.552 INFO    ] Initializing speech engine...
[2026-06-05 09:34:26,561.561 INFO    ] 2026-06-05 09:34:26
[2026-06-05 09:34:26,808.808 INFO    ] 2026-06-05 09:34:26
[2026-06-05 09:34:26,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:34:27,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:34:27,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:34:27,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:34:27,301.301 INFO    ] time= 05/06/2026 09:34:27
[2026-06-05 09:34:27,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:34:27,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:34:27,493.493 INFO    ] No existing commands found in stream
[2026-06-05 09:34:32,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:34:32,520.520 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 09:34:36,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:34:36,755.755 INFO    ] Checking for system updates...
[2026-06-05 09:34:36,791.791 INFO    ] 200
[2026-06-05 09:34:36,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:34:36,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:34:36,849.849 INFO    ] No update needed
[2026-06-05 09:34:36,851.851 INFO    ] Checking for camera pi updates...
[2026-06-05 09:34:36,885.885 INFO    ] 200
[2026-06-05 09:34:36,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:34:36,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:34:36,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:34:36,985.985 INFO    ] No camera update needed
[2026-06-05 09:34:36,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:34:36,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:34:36,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:34:37,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:34:39,042.042 INFO    ] ================================================
[2026-06-05 09:34:39,058.058 INFO    ] Launching Daemon at Fri Jun  5 09:34:39 IST 2026
[2026-06-05 09:34:39,070.070 INFO    ] ================================================
[2026-06-05 09:34:39,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:34:39
[2026-06-05 09:34:40,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:34:40,677.677 INFO    ] Initializing speech engine...
[2026-06-05 09:34:40,688.688 INFO    ] 2026-06-05 09:34:40
[2026-06-05 09:34:40,995.995 INFO    ] 2026-06-05 09:34:40
[2026-06-05 09:34:41,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:34:41,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:34:41,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:34:41,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:34:41,501.501 INFO    ] time= 05/06/2026 09:34:41
[2026-06-05 09:34:41,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:34:41,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:34:41,657.657 INFO    ] No existing commands found in stream
[2026-06-05 09:34:46,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:34:46,704.704 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 09:34:47,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:34:47,162.162 INFO    ] Checking for system updates...
[2026-06-05 09:34:47,200.200 INFO    ] 200
[2026-06-05 09:34:47,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:34:47,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:34:47,261.261 INFO    ] No update needed
[2026-06-05 09:34:47,264.264 INFO    ] Checking for camera pi updates...
[2026-06-05 09:34:47,302.302 INFO    ] 200
[2026-06-05 09:34:47,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:34:47,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:34:47,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:34:47,502.502 INFO    ] No camera update needed
[2026-06-05 09:34:47,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:34:47,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:34:47,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:34:47,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:34:49,560.560 INFO    ] ================================================
[2026-06-05 09:34:49,575.575 INFO    ] Launching Daemon at Fri Jun  5 09:34:49 IST 2026
[2026-06-05 09:34:49,586.586 INFO    ] ================================================
[2026-06-05 09:34:50,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:34:50
[2026-06-05 09:34:50,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:34:51,016.016 INFO    ] Initializing speech engine...
[2026-06-05 09:34:51,041.041 INFO    ] 2026-06-05 09:34:51
[2026-06-05 09:34:51,307.307 INFO    ] 2026-06-05 09:34:51
[2026-06-05 09:34:51,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:34:52,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:34:52,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:34:52,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:34:52,779.779 INFO    ] time= 05/06/2026 09:34:52
[2026-06-05 09:34:52,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:34:52,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:34:52,868.868 INFO    ] No existing commands found in stream
[2026-06-05 09:34:57,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:34:57,881.881 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 09:35:01,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:35:01,234.234 INFO    ] Checking for system updates...
[2026-06-05 09:35:01,392.392 INFO    ] 200
[2026-06-05 09:35:01,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:01,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:35:01,561.561 INFO    ] No update needed
[2026-06-05 09:35:01,579.579 INFO    ] Checking for camera pi updates...
[2026-06-05 09:35:01,695.695 INFO    ] 200
[2026-06-05 09:35:01,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:01,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:35:01,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:35:01,862.862 INFO    ] No camera update needed
[2026-06-05 09:35:01,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:35:01,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:35:01,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:35:01,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:35:03,925.925 INFO    ] ================================================
[2026-06-05 09:35:03,940.940 INFO    ] Launching Daemon at Fri Jun  5 09:35:03 IST 2026
[2026-06-05 09:35:03,951.951 INFO    ] ================================================
[2026-06-05 09:35:04,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:35:04
[2026-06-05 09:35:05,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:35:05,592.592 INFO    ] Initializing speech engine...
[2026-06-05 09:35:05,604.604 INFO    ] 2026-06-05 09:35:05
[2026-06-05 09:35:05,892.892 INFO    ] 2026-06-05 09:35:05
[2026-06-05 09:35:06,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:35:06,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:35:06,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:35:06,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:35:06,456.456 INFO    ] time= 05/06/2026 09:35:06
[2026-06-05 09:35:06,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:35:06,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:35:06,594.594 INFO    ] No existing commands found in stream
[2026-06-05 09:35:11,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:35:11,631.631 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 09:35:13,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:35:13,356.356 INFO    ] Checking for system updates...
[2026-06-05 09:35:13,395.395 INFO    ] 200
[2026-06-05 09:35:13,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:13,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:35:13,458.458 INFO    ] No update needed
[2026-06-05 09:35:13,461.461 INFO    ] Checking for camera pi updates...
[2026-06-05 09:35:13,500.500 INFO    ] 200
[2026-06-05 09:35:13,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:13,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:35:13,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:35:13,591.591 INFO    ] No camera update needed
[2026-06-05 09:35:13,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:35:13,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:35:13,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:35:13,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:35:15,653.653 INFO    ] ================================================
[2026-06-05 09:35:15,667.667 INFO    ] Launching Daemon at Fri Jun  5 09:35:15 IST 2026
[2026-06-05 09:35:15,679.679 INFO    ] ================================================
[2026-06-05 09:35:16,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:35:16
[2026-06-05 09:35:17,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:35:17,315.315 INFO    ] Initializing speech engine...
[2026-06-05 09:35:17,321.321 INFO    ] 2026-06-05 09:35:17
[2026-06-05 09:35:17,605.605 INFO    ] 2026-06-05 09:35:17
[2026-06-05 09:35:17,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:35:17,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:35:17,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:35:18,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:35:18,080.080 INFO    ] time= 05/06/2026 09:35:18
[2026-06-05 09:35:18,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:35:18,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:35:18,274.274 INFO    ] No existing commands found in stream
[2026-06-05 09:35:23,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:35:23,303.303 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 09:35:26,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:35:26,019.019 INFO    ] Checking for system updates...
[2026-06-05 09:35:26,058.058 INFO    ] 200
[2026-06-05 09:35:26,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:26,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:35:26,118.118 INFO    ] No update needed
[2026-06-05 09:35:26,121.121 INFO    ] Checking for camera pi updates...
[2026-06-05 09:35:26,155.155 INFO    ] 200
[2026-06-05 09:35:26,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:26,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:35:26,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:35:26,257.257 INFO    ] No camera update needed
[2026-06-05 09:35:26,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:35:26,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:35:26,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:35:26,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:35:28,312.312 INFO    ] ================================================
[2026-06-05 09:35:28,328.328 INFO    ] Launching Daemon at Fri Jun  5 09:35:28 IST 2026
[2026-06-05 09:35:28,338.338 INFO    ] ================================================
[2026-06-05 09:35:28,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:35:28
[2026-06-05 09:35:29,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:35:29,915.915 INFO    ] Initializing speech engine...
[2026-06-05 09:35:29,922.922 INFO    ] 2026-06-05 09:35:29
[2026-06-05 09:35:30,196.196 INFO    ] 2026-06-05 09:35:30
[2026-06-05 09:35:30,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:35:30,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:35:30,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:35:30,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:35:30,965.965 INFO    ] time= 05/06/2026 09:35:30
[2026-06-05 09:35:30,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:35:31,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:35:31,196.196 INFO    ] No existing commands found in stream
[2026-06-05 09:35:36,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:35:36,211.211 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 09:35:38,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:35:38,288.288 INFO    ] Checking for system updates...
[2026-06-05 09:35:38,325.325 INFO    ] 200
[2026-06-05 09:35:38,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:38,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:35:38,382.382 INFO    ] No update needed
[2026-06-05 09:35:38,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 09:35:38,420.420 INFO    ] 200
[2026-06-05 09:35:38,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:38,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:35:38,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:35:38,518.518 INFO    ] No camera update needed
[2026-06-05 09:35:38,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:35:38,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:35:38,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:35:38,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:35:40,573.573 INFO    ] ================================================
[2026-06-05 09:35:40,588.588 INFO    ] Launching Daemon at Fri Jun  5 09:35:40 IST 2026
[2026-06-05 09:35:40,599.599 INFO    ] ================================================
[2026-06-05 09:35:41,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:35:41
[2026-06-05 09:35:41,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:35:42,029.029 INFO    ] Initializing speech engine...
[2026-06-05 09:35:42,039.039 INFO    ] 2026-06-05 09:35:42
[2026-06-05 09:35:42,284.284 INFO    ] 2026-06-05 09:35:42
[2026-06-05 09:35:42,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:35:42,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:35:42,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:35:42,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:35:42,774.774 INFO    ] time= 05/06/2026 09:35:42
[2026-06-05 09:35:42,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:35:42,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:35:42,991.991 INFO    ] No existing commands found in stream
[2026-06-05 09:35:48,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:35:48,007.007 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 09:35:49,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:35:49,048.048 INFO    ] Checking for system updates...
[2026-06-05 09:35:49,085.085 INFO    ] 200
[2026-06-05 09:35:49,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:49,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:35:49,146.146 INFO    ] No update needed
[2026-06-05 09:35:49,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 09:35:49,186.186 INFO    ] 200
[2026-06-05 09:35:49,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:35:49,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:35:49,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:35:49,279.279 INFO    ] No camera update needed
[2026-06-05 09:35:49,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:35:49,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:35:49,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:35:49,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:35:51,334.334 INFO    ] ================================================
[2026-06-05 09:35:51,348.348 INFO    ] Launching Daemon at Fri Jun  5 09:35:51 IST 2026
[2026-06-05 09:35:51,359.359 INFO    ] ================================================
[2026-06-05 09:35:51,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:35:51
[2026-06-05 09:35:52,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:35:52,759.759 INFO    ] Initializing speech engine...
[2026-06-05 09:35:52,781.781 INFO    ] 2026-06-05 09:35:52
[2026-06-05 09:35:53,031.031 INFO    ] 2026-06-05 09:35:53
[2026-06-05 09:35:53,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:35:54,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:35:54,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:35:54,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:35:54,463.463 INFO    ] time= 05/06/2026 09:35:54
[2026-06-05 09:35:54,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:35:54,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:35:54,566.566 INFO    ] No existing commands found in stream
[2026-06-05 09:35:59,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:35:59,580.580 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 09:36:01,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:36:01,126.126 INFO    ] Checking for system updates...
[2026-06-05 09:36:01,165.165 INFO    ] 200
[2026-06-05 09:36:01,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:01,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:36:01,225.225 INFO    ] No update needed
[2026-06-05 09:36:01,228.228 INFO    ] Checking for camera pi updates...
[2026-06-05 09:36:01,291.291 INFO    ] 200
[2026-06-05 09:36:01,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:01,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:36:01,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:36:01,523.523 INFO    ] No camera update needed
[2026-06-05 09:36:01,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:36:01,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:36:01,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:36:01,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:36:03,588.588 INFO    ] ================================================
[2026-06-05 09:36:03,603.603 INFO    ] Launching Daemon at Fri Jun  5 09:36:03 IST 2026
[2026-06-05 09:36:03,614.614 INFO    ] ================================================
[2026-06-05 09:36:04,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:36:04
[2026-06-05 09:36:04,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:36:05,051.051 INFO    ] Initializing speech engine...
[2026-06-05 09:36:05,063.063 INFO    ] 2026-06-05 09:36:05
[2026-06-05 09:36:05,331.331 INFO    ] 2026-06-05 09:36:05
[2026-06-05 09:36:05,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:36:05,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:36:05,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:36:05,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:36:05,743.743 INFO    ] time= 05/06/2026 09:36:05
[2026-06-05 09:36:05,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:36:05,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:36:05,830.830 INFO    ] No existing commands found in stream
[2026-06-05 09:36:10,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:36:10,846.846 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 09:36:13,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:36:13,893.893 INFO    ] Checking for system updates...
[2026-06-05 09:36:13,930.930 INFO    ] 200
[2026-06-05 09:36:13,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:13,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:36:13,989.989 INFO    ] No update needed
[2026-06-05 09:36:13,991.991 INFO    ] Checking for camera pi updates...
[2026-06-05 09:36:14,025.025 INFO    ] 200
[2026-06-05 09:36:14,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:14,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:36:14,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:36:14,117.117 INFO    ] No camera update needed
[2026-06-05 09:36:14,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:36:14,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:36:14,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:36:14,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:36:16,173.173 INFO    ] ================================================
[2026-06-05 09:36:16,189.189 INFO    ] Launching Daemon at Fri Jun  5 09:36:16 IST 2026
[2026-06-05 09:36:16,201.201 INFO    ] ================================================
[2026-06-05 09:36:16,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:36:16
[2026-06-05 09:36:17,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:36:17,771.771 INFO    ] Initializing speech engine...
[2026-06-05 09:36:17,777.777 INFO    ] 2026-06-05 09:36:17
[2026-06-05 09:36:18,040.040 INFO    ] 2026-06-05 09:36:18
[2026-06-05 09:36:18,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:36:18,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:36:18,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:36:18,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:36:18,509.509 INFO    ] time= 05/06/2026 09:36:18
[2026-06-05 09:36:18,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:36:18,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:36:18,746.746 INFO    ] No existing commands found in stream
[2026-06-05 09:36:23,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:36:23,780.780 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 09:36:24,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:36:24,687.687 INFO    ] Checking for system updates...
[2026-06-05 09:36:24,723.723 INFO    ] 200
[2026-06-05 09:36:24,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:24,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:36:24,785.785 INFO    ] No update needed
[2026-06-05 09:36:24,787.787 INFO    ] Checking for camera pi updates...
[2026-06-05 09:36:24,821.821 INFO    ] 200
[2026-06-05 09:36:24,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:24,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:36:24,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:36:24,933.933 INFO    ] No camera update needed
[2026-06-05 09:36:24,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:36:24,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:36:24,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:36:24,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:36:26,992.992 INFO    ] ================================================
[2026-06-05 09:36:27,007.007 INFO    ] Launching Daemon at Fri Jun  5 09:36:27 IST 2026
[2026-06-05 09:36:27,018.018 INFO    ] ================================================
[2026-06-05 09:36:27,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:36:27
[2026-06-05 09:36:28,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:36:28,459.459 INFO    ] Initializing speech engine...
[2026-06-05 09:36:28,471.471 INFO    ] 2026-06-05 09:36:28
[2026-06-05 09:36:28,728.728 INFO    ] 2026-06-05 09:36:28
[2026-06-05 09:36:28,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:36:30,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:36:30,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:36:30,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:36:30,201.201 INFO    ] time= 05/06/2026 09:36:30
[2026-06-05 09:36:30,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:36:30,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:36:30,289.289 INFO    ] No existing commands found in stream
[2026-06-05 09:36:35,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:36:35,302.302 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 09:36:37,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:36:37,126.126 INFO    ] Checking for system updates...
[2026-06-05 09:36:37,162.162 INFO    ] 200
[2026-06-05 09:36:37,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:37,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:36:37,226.226 INFO    ] No update needed
[2026-06-05 09:36:37,228.228 INFO    ] Checking for camera pi updates...
[2026-06-05 09:36:37,262.262 INFO    ] 200
[2026-06-05 09:36:37,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:37,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:36:37,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:36:37,365.365 INFO    ] No camera update needed
[2026-06-05 09:36:37,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:36:37,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:36:37,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:36:37,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:36:39,422.422 INFO    ] ================================================
[2026-06-05 09:36:39,437.437 INFO    ] Launching Daemon at Fri Jun  5 09:36:39 IST 2026
[2026-06-05 09:36:39,452.452 INFO    ] ================================================
[2026-06-05 09:36:40,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:36:40
[2026-06-05 09:36:40,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:36:40,909.909 INFO    ] Initializing speech engine...
[2026-06-05 09:36:40,920.920 INFO    ] 2026-06-05 09:36:40
[2026-06-05 09:36:41,181.181 INFO    ] 2026-06-05 09:36:41
[2026-06-05 09:36:41,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:36:41,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:36:41,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:36:41,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:36:41,663.663 INFO    ] time= 05/06/2026 09:36:41
[2026-06-05 09:36:41,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:36:41,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:36:41,867.867 INFO    ] No existing commands found in stream
[2026-06-05 09:36:46,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:36:46,895.895 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 09:36:49,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:36:49,926.926 INFO    ] Checking for system updates...
[2026-06-05 09:36:49,970.970 INFO    ] 200
[2026-06-05 09:36:49,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:50,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:36:50,045.045 INFO    ] No update needed
[2026-06-05 09:36:50,048.048 INFO    ] Checking for camera pi updates...
[2026-06-05 09:36:50,082.082 INFO    ] 200
[2026-06-05 09:36:50,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:36:50,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:36:50,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:36:50,276.276 INFO    ] No camera update needed
[2026-06-05 09:36:50,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:36:50,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:36:50,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:36:50,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:36:52,331.331 INFO    ] ================================================
[2026-06-05 09:36:52,347.347 INFO    ] Launching Daemon at Fri Jun  5 09:36:52 IST 2026
[2026-06-05 09:36:52,358.358 INFO    ] ================================================
[2026-06-05 09:36:52,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:36:52
[2026-06-05 09:36:53,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:36:53,920.920 INFO    ] Initializing speech engine...
[2026-06-05 09:36:53,929.929 INFO    ] 2026-06-05 09:36:53
[2026-06-05 09:36:54,208.208 INFO    ] 2026-06-05 09:36:54
[2026-06-05 09:36:54,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:36:54,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:36:54,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:36:54,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:36:54,730.730 INFO    ] time= 05/06/2026 09:36:54
[2026-06-05 09:36:54,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:36:54,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:36:55,142.142 INFO    ] No existing commands found in stream
[2026-06-05 09:37:00,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:37:00,158.158 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 09:37:01,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:37:01,908.908 INFO    ] Checking for system updates...
[2026-06-05 09:37:01,962.962 INFO    ] 200
[2026-06-05 09:37:01,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:02,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:37:02,054.054 INFO    ] No update needed
[2026-06-05 09:37:02,057.057 INFO    ] Checking for camera pi updates...
[2026-06-05 09:37:02,100.100 INFO    ] 200
[2026-06-05 09:37:02,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:02,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:37:02,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:37:02,253.253 INFO    ] No camera update needed
[2026-06-05 09:37:02,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:37:02,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:37:02,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:37:02,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:37:04,321.321 INFO    ] ================================================
[2026-06-05 09:37:04,337.337 INFO    ] Launching Daemon at Fri Jun  5 09:37:04 IST 2026
[2026-06-05 09:37:04,348.348 INFO    ] ================================================
[2026-06-05 09:37:04,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:37:04
[2026-06-05 09:37:05,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:37:05,888.888 INFO    ] Initializing speech engine...
[2026-06-05 09:37:05,897.897 INFO    ] 2026-06-05 09:37:05
[2026-06-05 09:37:06,172.172 INFO    ] 2026-06-05 09:37:06
[2026-06-05 09:37:06,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:37:06,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:37:06,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:37:06,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:37:06,682.682 INFO    ] time= 05/06/2026 09:37:06
[2026-06-05 09:37:06,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:37:06,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:37:06,857.857 INFO    ] No existing commands found in stream
[2026-06-05 09:37:11,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:37:11,870.870 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 09:37:12,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:37:12,651.651 INFO    ] Checking for system updates...
[2026-06-05 09:37:12,691.691 INFO    ] 200
[2026-06-05 09:37:12,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:12,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:37:12,748.748 INFO    ] No update needed
[2026-06-05 09:37:12,751.751 INFO    ] Checking for camera pi updates...
[2026-06-05 09:37:12,785.785 INFO    ] 200
[2026-06-05 09:37:12,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:12,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:37:12,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:37:12,886.886 INFO    ] No camera update needed
[2026-06-05 09:37:12,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:37:12,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:37:12,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:37:12,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:37:14,942.942 INFO    ] ================================================
[2026-06-05 09:37:14,959.959 INFO    ] Launching Daemon at Fri Jun  5 09:37:14 IST 2026
[2026-06-05 09:37:14,970.970 INFO    ] ================================================
[2026-06-05 09:37:15,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:37:15
[2026-06-05 09:37:16,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:37:16,509.509 INFO    ] Initializing speech engine...
[2026-06-05 09:37:16,524.524 INFO    ] 2026-06-05 09:37:16
[2026-06-05 09:37:16,789.789 INFO    ] 2026-06-05 09:37:16
[2026-06-05 09:37:16,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:37:17,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:37:17,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:37:17,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:37:17,262.262 INFO    ] time= 05/06/2026 09:37:17
[2026-06-05 09:37:17,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:37:17,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:37:17,424.424 INFO    ] No existing commands found in stream
[2026-06-05 09:37:22,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:37:22,439.439 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 09:37:26,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:37:26,622.622 INFO    ] Checking for system updates...
[2026-06-05 09:37:26,658.658 INFO    ] 200
[2026-06-05 09:37:26,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:26,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:37:26,724.724 INFO    ] No update needed
[2026-06-05 09:37:26,727.727 INFO    ] Checking for camera pi updates...
[2026-06-05 09:37:26,763.763 INFO    ] 200
[2026-06-05 09:37:26,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:26,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:37:26,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:37:26,862.862 INFO    ] No camera update needed
[2026-06-05 09:37:26,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:37:26,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:37:26,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:37:26,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:37:28,918.918 INFO    ] ================================================
[2026-06-05 09:37:28,934.934 INFO    ] Launching Daemon at Fri Jun  5 09:37:28 IST 2026
[2026-06-05 09:37:28,946.946 INFO    ] ================================================
[2026-06-05 09:37:29,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:37:29
[2026-06-05 09:37:30,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:37:30,580.580 INFO    ] Initializing speech engine...
[2026-06-05 09:37:30,596.596 INFO    ] 2026-06-05 09:37:30
[2026-06-05 09:37:30,882.882 INFO    ] 2026-06-05 09:37:30
[2026-06-05 09:37:30,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:37:31,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:37:31,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:37:31,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:37:31,275.275 INFO    ] time= 05/06/2026 09:37:31
[2026-06-05 09:37:31,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:37:31,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:37:31,421.421 INFO    ] No existing commands found in stream
[2026-06-05 09:37:36,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:37:36,438.438 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 09:37:37,187.187 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:37:37,189.189 INFO    ] Checking for system updates...
[2026-06-05 09:37:37,229.229 INFO    ] 200
[2026-06-05 09:37:37,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:37,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:37:37,293.293 INFO    ] No update needed
[2026-06-05 09:37:37,295.295 INFO    ] Checking for camera pi updates...
[2026-06-05 09:37:37,329.329 INFO    ] 200
[2026-06-05 09:37:37,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:37,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:37:37,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:37:37,433.433 INFO    ] No camera update needed
[2026-06-05 09:37:37,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:37:37,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:37:37,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:37:37,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:37:39,489.489 INFO    ] ================================================
[2026-06-05 09:37:39,505.505 INFO    ] Launching Daemon at Fri Jun  5 09:37:39 IST 2026
[2026-06-05 09:37:39,516.516 INFO    ] ================================================
[2026-06-05 09:37:40,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:37:40
[2026-06-05 09:37:40,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:37:40,927.927 INFO    ] Initializing speech engine...
[2026-06-05 09:37:40,940.940 INFO    ] 2026-06-05 09:37:40
[2026-06-05 09:37:41,204.204 INFO    ] 2026-06-05 09:37:41
[2026-06-05 09:37:41,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:37:41,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:37:41,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:37:41,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:37:41,676.676 INFO    ] time= 05/06/2026 09:37:41
[2026-06-05 09:37:41,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:37:41,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:37:41,905.905 INFO    ] No existing commands found in stream
[2026-06-05 09:37:46,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:37:46,929.929 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 09:37:48,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:37:48,907.907 INFO    ] Checking for system updates...
[2026-06-05 09:37:48,943.943 INFO    ] 200
[2026-06-05 09:37:48,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:48,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:37:49,001.001 INFO    ] No update needed
[2026-06-05 09:37:49,003.003 INFO    ] Checking for camera pi updates...
[2026-06-05 09:37:49,041.041 INFO    ] 200
[2026-06-05 09:37:49,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:37:49,089.089 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:37:49,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:37:49,125.125 INFO    ] No camera update needed
[2026-06-05 09:37:49,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:37:49,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:37:49,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:37:49,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:37:51,181.181 INFO    ] ================================================
[2026-06-05 09:37:51,197.197 INFO    ] Launching Daemon at Fri Jun  5 09:37:51 IST 2026
[2026-06-05 09:37:51,209.209 INFO    ] ================================================
[2026-06-05 09:37:51,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:37:51
[2026-06-05 09:37:52,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:37:52,656.656 INFO    ] Initializing speech engine...
[2026-06-05 09:37:52,669.669 INFO    ] 2026-06-05 09:37:52
[2026-06-05 09:37:52,941.941 INFO    ] 2026-06-05 09:37:52
[2026-06-05 09:37:52,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:37:53,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:37:53,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:37:53,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:37:53,406.406 INFO    ] time= 05/06/2026 09:37:53
[2026-06-05 09:37:53,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:37:53,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:37:53,636.636 INFO    ] No existing commands found in stream
[2026-06-05 09:37:58,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:37:58,663.663 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 09:38:00,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:38:00,807.807 INFO    ] Checking for system updates...
[2026-06-05 09:38:00,843.843 INFO    ] 200
[2026-06-05 09:38:00,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:00,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:38:00,903.903 INFO    ] No update needed
[2026-06-05 09:38:00,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 09:38:00,943.943 INFO    ] 200
[2026-06-05 09:38:00,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:00,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:38:01,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:38:01,053.053 INFO    ] No camera update needed
[2026-06-05 09:38:01,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:38:01,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:38:01,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:38:01,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:38:03,110.110 INFO    ] ================================================
[2026-06-05 09:38:03,125.125 INFO    ] Launching Daemon at Fri Jun  5 09:38:03 IST 2026
[2026-06-05 09:38:03,136.136 INFO    ] ================================================
[2026-06-05 09:38:03,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:38:03
[2026-06-05 09:38:04,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:38:04,607.607 INFO    ] Initializing speech engine...
[2026-06-05 09:38:04,616.616 INFO    ] 2026-06-05 09:38:04
[2026-06-05 09:38:04,875.875 INFO    ] 2026-06-05 09:38:04
[2026-06-05 09:38:04,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:38:05,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:38:05,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:38:05,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:38:05,331.331 INFO    ] time= 05/06/2026 09:38:05
[2026-06-05 09:38:05,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:38:05,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:38:05,560.560 INFO    ] No existing commands found in stream
[2026-06-05 09:38:10,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:38:10,588.588 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 09:38:14,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:38:14,689.689 INFO    ] Checking for system updates...
[2026-06-05 09:38:14,729.729 INFO    ] 200
[2026-06-05 09:38:14,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:14,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:38:14,789.789 INFO    ] No update needed
[2026-06-05 09:38:14,792.792 INFO    ] Checking for camera pi updates...
[2026-06-05 09:38:14,830.830 INFO    ] 200
[2026-06-05 09:38:14,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:14,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:38:14,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:38:14,937.937 INFO    ] No camera update needed
[2026-06-05 09:38:14,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:38:14,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:38:14,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:38:14,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:38:16,992.992 INFO    ] ================================================
[2026-06-05 09:38:17,008.008 INFO    ] Launching Daemon at Fri Jun  5 09:38:17 IST 2026
[2026-06-05 09:38:17,020.020 INFO    ] ================================================
[2026-06-05 09:38:17,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:38:17
[2026-06-05 09:38:18,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:38:18,454.454 INFO    ] Initializing speech engine...
[2026-06-05 09:38:18,464.464 INFO    ] 2026-06-05 09:38:18
[2026-06-05 09:38:18,716.716 INFO    ] 2026-06-05 09:38:18
[2026-06-05 09:38:18,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:38:18,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:38:18,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:38:19,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:38:19,102.102 INFO    ] time= 05/06/2026 09:38:19
[2026-06-05 09:38:19,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:38:19,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:38:19,296.296 INFO    ] No existing commands found in stream
[2026-06-05 09:38:24,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:38:24,313.313 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 09:38:26,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:38:26,438.438 INFO    ] Checking for system updates...
[2026-06-05 09:38:26,474.474 INFO    ] 200
[2026-06-05 09:38:26,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:26,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:38:26,533.533 INFO    ] No update needed
[2026-06-05 09:38:26,535.535 INFO    ] Checking for camera pi updates...
[2026-06-05 09:38:26,573.573 INFO    ] 200
[2026-06-05 09:38:26,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:26,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:38:26,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:38:26,668.668 INFO    ] No camera update needed
[2026-06-05 09:38:26,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:38:26,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:38:26,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:38:26,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:38:28,725.725 INFO    ] ================================================
[2026-06-05 09:38:28,740.740 INFO    ] Launching Daemon at Fri Jun  5 09:38:28 IST 2026
[2026-06-05 09:38:28,752.752 INFO    ] ================================================
[2026-06-05 09:38:29,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:38:29
[2026-06-05 09:38:29,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:38:30,194.194 INFO    ] Initializing speech engine...
[2026-06-05 09:38:30,210.210 INFO    ] 2026-06-05 09:38:30
[2026-06-05 09:38:30,542.542 INFO    ] 2026-06-05 09:38:30
[2026-06-05 09:38:30,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:38:30,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:38:30,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:38:31,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:38:31,047.047 INFO    ] time= 05/06/2026 09:38:31
[2026-06-05 09:38:31,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:38:31,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:38:31,201.201 INFO    ] No existing commands found in stream
[2026-06-05 09:38:36,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:38:36,219.219 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 09:38:39,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:38:39,322.322 INFO    ] Checking for system updates...
[2026-06-05 09:38:39,360.360 INFO    ] 200
[2026-06-05 09:38:39,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:39,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:38:39,423.423 INFO    ] No update needed
[2026-06-05 09:38:39,426.426 INFO    ] Checking for camera pi updates...
[2026-06-05 09:38:39,463.463 INFO    ] 200
[2026-06-05 09:38:39,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:39,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:38:39,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:38:39,576.576 INFO    ] No camera update needed
[2026-06-05 09:38:39,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:38:39,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:38:39,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:38:39,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:38:41,632.632 INFO    ] ================================================
[2026-06-05 09:38:41,648.648 INFO    ] Launching Daemon at Fri Jun  5 09:38:41 IST 2026
[2026-06-05 09:38:41,659.659 INFO    ] ================================================
[2026-06-05 09:38:42,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:38:42
[2026-06-05 09:38:42,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:38:43,175.175 INFO    ] Initializing speech engine...
[2026-06-05 09:38:43,183.183 INFO    ] 2026-06-05 09:38:43
[2026-06-05 09:38:43,454.454 INFO    ] 2026-06-05 09:38:43
[2026-06-05 09:38:43,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:38:43,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:38:43,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:38:43,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:38:44,002.002 INFO    ] time= 05/06/2026 09:38:43
[2026-06-05 09:38:44,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:38:44,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:38:44,144.144 INFO    ] No existing commands found in stream
[2026-06-05 09:38:49,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:38:49,174.174 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 09:38:52,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:38:52,050.050 INFO    ] Checking for system updates...
[2026-06-05 09:38:52,091.091 INFO    ] 200
[2026-06-05 09:38:52,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:52,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:38:52,156.156 INFO    ] No update needed
[2026-06-05 09:38:52,158.158 INFO    ] Checking for camera pi updates...
[2026-06-05 09:38:52,193.193 INFO    ] 200
[2026-06-05 09:38:52,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:38:52,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:38:52,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:38:52,284.284 INFO    ] No camera update needed
[2026-06-05 09:38:52,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:38:52,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:38:52,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:38:52,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:38:54,341.341 INFO    ] ================================================
[2026-06-05 09:38:54,357.357 INFO    ] Launching Daemon at Fri Jun  5 09:38:54 IST 2026
[2026-06-05 09:38:54,368.368 INFO    ] ================================================
[2026-06-05 09:38:55,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:38:55
[2026-06-05 09:38:55,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:38:55,976.976 INFO    ] Initializing speech engine...
[2026-06-05 09:38:55,986.986 INFO    ] 2026-06-05 09:38:55
[2026-06-05 09:38:56,249.249 INFO    ] 2026-06-05 09:38:56
[2026-06-05 09:38:56,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:38:56,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:38:56,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:38:56,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:38:56,725.725 INFO    ] time= 05/06/2026 09:38:56
[2026-06-05 09:38:56,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:38:56,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:38:56,928.928 INFO    ] No existing commands found in stream
[2026-06-05 09:39:01,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:39:01,959.959 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 09:39:05,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:39:05,405.405 INFO    ] Checking for system updates...
[2026-06-05 09:39:05,447.447 INFO    ] 200
[2026-06-05 09:39:05,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:05,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:39:05,506.506 INFO    ] No update needed
[2026-06-05 09:39:05,508.508 INFO    ] Checking for camera pi updates...
[2026-06-05 09:39:05,547.547 INFO    ] 200
[2026-06-05 09:39:05,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:05,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:39:05,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:39:05,652.652 INFO    ] No camera update needed
[2026-06-05 09:39:05,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:39:05,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:39:05,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:39:05,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:39:07,714.714 INFO    ] ================================================
[2026-06-05 09:39:07,730.730 INFO    ] Launching Daemon at Fri Jun  5 09:39:07 IST 2026
[2026-06-05 09:39:07,741.741 INFO    ] ================================================
[2026-06-05 09:39:08,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:39:08
[2026-06-05 09:39:08,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:39:09,212.212 INFO    ] Initializing speech engine...
[2026-06-05 09:39:09,223.223 INFO    ] 2026-06-05 09:39:09
[2026-06-05 09:39:09,490.490 INFO    ] 2026-06-05 09:39:09
[2026-06-05 09:39:09,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:39:09,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:39:09,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:39:09,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:39:09,959.959 INFO    ] time= 05/06/2026 09:39:09
[2026-06-05 09:39:10,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:39:10,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:39:10,189.189 INFO    ] No existing commands found in stream
[2026-06-05 09:39:15,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:39:15,209.209 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 09:39:19,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:39:19,127.127 INFO    ] Checking for system updates...
[2026-06-05 09:39:19,171.171 INFO    ] 200
[2026-06-05 09:39:19,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:19,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:39:19,245.245 INFO    ] No update needed
[2026-06-05 09:39:19,248.248 INFO    ] Checking for camera pi updates...
[2026-06-05 09:39:19,287.287 INFO    ] 200
[2026-06-05 09:39:19,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:19,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:39:19,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:39:19,372.372 INFO    ] No camera update needed
[2026-06-05 09:39:19,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:39:19,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:39:19,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:39:19,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:39:21,432.432 INFO    ] ================================================
[2026-06-05 09:39:21,448.448 INFO    ] Launching Daemon at Fri Jun  5 09:39:21 IST 2026
[2026-06-05 09:39:21,458.458 INFO    ] ================================================
[2026-06-05 09:39:22,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:39:22
[2026-06-05 09:39:22,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:39:22,884.884 INFO    ] Initializing speech engine...
[2026-06-05 09:39:22,893.893 INFO    ] 2026-06-05 09:39:22
[2026-06-05 09:39:23,141.141 INFO    ] 2026-06-05 09:39:23
[2026-06-05 09:39:23,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:39:23,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:39:23,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:39:23,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:39:23,608.608 INFO    ] time= 05/06/2026 09:39:23
[2026-06-05 09:39:23,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:39:23,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:39:23,839.839 INFO    ] No existing commands found in stream
[2026-06-05 09:39:28,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:39:28,867.867 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 09:39:30,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:39:30,442.442 INFO    ] Checking for system updates...
[2026-06-05 09:39:30,486.486 INFO    ] 200
[2026-06-05 09:39:30,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:30,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:39:30,546.546 INFO    ] No update needed
[2026-06-05 09:39:30,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 09:39:30,590.590 INFO    ] 200
[2026-06-05 09:39:30,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:30,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:39:30,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:39:30,692.692 INFO    ] No camera update needed
[2026-06-05 09:39:30,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:39:30,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:39:30,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:39:30,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:39:32,754.754 INFO    ] ================================================
[2026-06-05 09:39:32,769.769 INFO    ] Launching Daemon at Fri Jun  5 09:39:32 IST 2026
[2026-06-05 09:39:32,780.780 INFO    ] ================================================
[2026-06-05 09:39:33,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:39:33
[2026-06-05 09:39:33,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:39:34,205.205 INFO    ] Initializing speech engine...
[2026-06-05 09:39:34,214.214 INFO    ] 2026-06-05 09:39:34
[2026-06-05 09:39:34,470.470 INFO    ] 2026-06-05 09:39:34
[2026-06-05 09:39:34,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:39:34,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:39:34,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:39:34,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:39:34,934.934 INFO    ] time= 05/06/2026 09:39:34
[2026-06-05 09:39:34,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:39:35,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:39:35,159.159 INFO    ] No existing commands found in stream
[2026-06-05 09:39:40,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:39:40,182.182 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 09:39:41,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:39:41,737.737 INFO    ] Checking for system updates...
[2026-06-05 09:39:41,778.778 INFO    ] 200
[2026-06-05 09:39:41,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:41,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:39:41,836.836 INFO    ] No update needed
[2026-06-05 09:39:41,838.838 INFO    ] Checking for camera pi updates...
[2026-06-05 09:39:41,872.872 INFO    ] 200
[2026-06-05 09:39:41,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:41,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:39:41,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:39:41,970.970 INFO    ] No camera update needed
[2026-06-05 09:39:41,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:39:41,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:39:41,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:39:41,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:39:44,027.027 INFO    ] ================================================
[2026-06-05 09:39:44,042.042 INFO    ] Launching Daemon at Fri Jun  5 09:39:44 IST 2026
[2026-06-05 09:39:44,056.056 INFO    ] ================================================
[2026-06-05 09:39:44,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:39:44
[2026-06-05 09:39:45,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:39:45,522.522 INFO    ] Initializing speech engine...
[2026-06-05 09:39:45,531.531 INFO    ] 2026-06-05 09:39:45
[2026-06-05 09:39:45,780.780 INFO    ] 2026-06-05 09:39:45
[2026-06-05 09:39:45,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:39:46,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:39:46,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:39:46,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:39:46,272.272 INFO    ] time= 05/06/2026 09:39:46
[2026-06-05 09:39:46,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:39:46,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:39:46,471.471 INFO    ] No existing commands found in stream
[2026-06-05 09:39:51,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:39:51,501.501 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 09:39:55,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:39:55,578.578 INFO    ] Checking for system updates...
[2026-06-05 09:39:55,614.614 INFO    ] 200
[2026-06-05 09:39:55,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:55,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:39:55,681.681 INFO    ] No update needed
[2026-06-05 09:39:55,683.683 INFO    ] Checking for camera pi updates...
[2026-06-05 09:39:55,718.718 INFO    ] 200
[2026-06-05 09:39:55,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:39:55,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:39:55,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:39:55,812.812 INFO    ] No camera update needed
[2026-06-05 09:39:55,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:39:55,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:39:55,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:39:55,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:39:57,867.867 INFO    ] ================================================
[2026-06-05 09:39:57,883.883 INFO    ] Launching Daemon at Fri Jun  5 09:39:57 IST 2026
[2026-06-05 09:39:57,893.893 INFO    ] ================================================
[2026-06-05 09:39:58,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:39:58
[2026-06-05 09:39:59,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:39:59,312.312 INFO    ] Initializing speech engine...
[2026-06-05 09:39:59,332.332 INFO    ] 2026-06-05 09:39:59
[2026-06-05 09:39:59,608.608 INFO    ] 2026-06-05 09:39:59
[2026-06-05 09:39:59,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:40:00,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:40:00,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:40:00,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:40:00,442.442 INFO    ] time= 05/06/2026 09:40:00
[2026-06-05 09:40:00,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:40:00,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:40:00,651.651 INFO    ] No existing commands found in stream
[2026-06-05 09:40:05,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:40:05,679.679 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 09:40:08,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:40:08,346.346 INFO    ] Checking for system updates...
[2026-06-05 09:40:08,383.383 INFO    ] 200
[2026-06-05 09:40:08,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:08,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:08,447.447 INFO    ] No update needed
[2026-06-05 09:40:08,450.450 INFO    ] Checking for camera pi updates...
[2026-06-05 09:40:08,487.487 INFO    ] 200
[2026-06-05 09:40:08,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:08,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:40:08,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:08,588.588 INFO    ] No camera update needed
[2026-06-05 09:40:08,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:40:08,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:40:08,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:40:08,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:40:10,645.645 INFO    ] ================================================
[2026-06-05 09:40:10,660.660 INFO    ] Launching Daemon at Fri Jun  5 09:40:10 IST 2026
[2026-06-05 09:40:10,671.671 INFO    ] ================================================
[2026-06-05 09:40:11,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:40:11
[2026-06-05 09:40:11,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:40:12,093.093 INFO    ] Initializing speech engine...
[2026-06-05 09:40:12,102.102 INFO    ] 2026-06-05 09:40:12
[2026-06-05 09:40:12,349.349 INFO    ] 2026-06-05 09:40:12
[2026-06-05 09:40:12,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:40:12,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:40:12,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:40:12,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:40:12,718.718 INFO    ] time= 05/06/2026 09:40:12
[2026-06-05 09:40:12,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:40:12,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:40:12,906.906 INFO    ] No existing commands found in stream
[2026-06-05 09:40:17,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:40:17,928.928 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 09:40:20,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:40:20,062.062 INFO    ] Checking for system updates...
[2026-06-05 09:40:20,098.098 INFO    ] 200
[2026-06-05 09:40:20,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:20,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:20,158.158 INFO    ] No update needed
[2026-06-05 09:40:20,160.160 INFO    ] Checking for camera pi updates...
[2026-06-05 09:40:20,193.193 INFO    ] 200
[2026-06-05 09:40:20,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:20,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:40:20,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:20,300.300 INFO    ] No camera update needed
[2026-06-05 09:40:20,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:40:20,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:40:20,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:40:20,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:40:22,355.355 INFO    ] ================================================
[2026-06-05 09:40:22,371.371 INFO    ] Launching Daemon at Fri Jun  5 09:40:22 IST 2026
[2026-06-05 09:40:22,382.382 INFO    ] ================================================
[2026-06-05 09:40:22,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:40:22
[2026-06-05 09:40:23,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:40:23,803.803 INFO    ] Initializing speech engine...
[2026-06-05 09:40:23,810.810 INFO    ] 2026-06-05 09:40:23
[2026-06-05 09:40:24,067.067 INFO    ] 2026-06-05 09:40:24
[2026-06-05 09:40:24,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:40:24,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:40:24,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:40:24,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:40:24,530.530 INFO    ] time= 05/06/2026 09:40:24
[2026-06-05 09:40:24,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:40:24,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:40:24,753.753 INFO    ] No existing commands found in stream
[2026-06-05 09:40:29,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:40:29,775.775 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 09:40:32,213.213 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:40:32,217.217 INFO    ] Checking for system updates...
[2026-06-05 09:40:32,256.256 INFO    ] 200
[2026-06-05 09:40:32,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:32,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:32,321.321 INFO    ] No update needed
[2026-06-05 09:40:32,324.324 INFO    ] Checking for camera pi updates...
[2026-06-05 09:40:32,361.361 INFO    ] 200
[2026-06-05 09:40:32,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:32,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:40:32,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:32,452.452 INFO    ] No camera update needed
[2026-06-05 09:40:32,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:40:32,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:40:32,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:40:32,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:40:34,514.514 INFO    ] ================================================
[2026-06-05 09:40:34,529.529 INFO    ] Launching Daemon at Fri Jun  5 09:40:34 IST 2026
[2026-06-05 09:40:34,540.540 INFO    ] ================================================
[2026-06-05 09:40:35,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:40:35
[2026-06-05 09:40:35,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:40:36,030.030 INFO    ] Initializing speech engine...
[2026-06-05 09:40:36,053.053 INFO    ] 2026-06-05 09:40:36
[2026-06-05 09:40:36,311.311 INFO    ] 2026-06-05 09:40:36
[2026-06-05 09:40:36,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:40:36,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:40:36,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:40:36,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:40:36,815.815 INFO    ] time= 05/06/2026 09:40:36
[2026-06-05 09:40:36,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:40:36,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:40:36,954.954 INFO    ] No existing commands found in stream
[2026-06-05 09:40:41,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:40:41,968.968 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 09:40:46,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:40:46,023.023 INFO    ] Checking for system updates...
[2026-06-05 09:40:46,066.066 INFO    ] 200
[2026-06-05 09:40:46,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:46,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:46,123.123 INFO    ] No update needed
[2026-06-05 09:40:46,126.126 INFO    ] Checking for camera pi updates...
[2026-06-05 09:40:46,163.163 INFO    ] 200
[2026-06-05 09:40:46,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:46,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:40:46,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:46,262.262 INFO    ] No camera update needed
[2026-06-05 09:40:46,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:40:46,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:40:46,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:40:46,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:40:48,320.320 INFO    ] ================================================
[2026-06-05 09:40:48,336.336 INFO    ] Launching Daemon at Fri Jun  5 09:40:48 IST 2026
[2026-06-05 09:40:48,346.346 INFO    ] ================================================
[2026-06-05 09:40:48,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:40:48
[2026-06-05 09:40:49,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:40:49,816.816 INFO    ] Initializing speech engine...
[2026-06-05 09:40:49,823.823 INFO    ] 2026-06-05 09:40:49
[2026-06-05 09:40:50,080.080 INFO    ] 2026-06-05 09:40:50
[2026-06-05 09:40:50,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:40:50,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:40:50,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:40:50,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:40:50,558.558 INFO    ] time= 05/06/2026 09:40:50
[2026-06-05 09:40:50,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:40:50,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:40:50,761.761 INFO    ] No existing commands found in stream
[2026-06-05 09:40:55,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:40:55,786.786 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-05 09:40:57,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:40:57,412.412 INFO    ] Checking for system updates...
[2026-06-05 09:40:57,451.451 INFO    ] 200
[2026-06-05 09:40:57,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:57,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:57,508.508 INFO    ] No update needed
[2026-06-05 09:40:57,511.511 INFO    ] Checking for camera pi updates...
[2026-06-05 09:40:57,545.545 INFO    ] 200
[2026-06-05 09:40:57,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:40:57,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:40:57,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:40:57,636.636 INFO    ] No camera update needed
[2026-06-05 09:40:57,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:40:57,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:40:57,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:40:57,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:40:59,697.697 INFO    ] ================================================
[2026-06-05 09:40:59,713.713 INFO    ] Launching Daemon at Fri Jun  5 09:40:59 IST 2026
[2026-06-05 09:40:59,724.724 INFO    ] ================================================
[2026-06-05 09:41:00,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:41:00
[2026-06-05 09:41:00,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:41:01,387.387 INFO    ] Initializing speech engine...
[2026-06-05 09:41:01,391.391 INFO    ] 2026-06-05 09:41:01
[2026-06-05 09:41:01,740.740 INFO    ] 2026-06-05 09:41:01
[2026-06-05 09:41:01,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:41:02,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:41:02,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:41:02,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:41:02,163.163 INFO    ] time= 05/06/2026 09:41:02
[2026-06-05 09:41:02,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:41:02,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:41:02,294.294 INFO    ] No existing commands found in stream
[2026-06-05 09:41:07,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:41:07,307.307 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 09:41:10,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:41:10,273.273 INFO    ] Checking for system updates...
[2026-06-05 09:41:10,310.310 INFO    ] 200
[2026-06-05 09:41:10,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:10,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:41:10,371.371 INFO    ] No update needed
[2026-06-05 09:41:10,373.373 INFO    ] Checking for camera pi updates...
[2026-06-05 09:41:10,411.411 INFO    ] 200
[2026-06-05 09:41:10,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:10,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:41:10,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:41:10,609.609 INFO    ] No camera update needed
[2026-06-05 09:41:10,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:41:10,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:41:10,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:41:10,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:41:12,669.669 INFO    ] ================================================
[2026-06-05 09:41:12,685.685 INFO    ] Launching Daemon at Fri Jun  5 09:41:12 IST 2026
[2026-06-05 09:41:12,695.695 INFO    ] ================================================
[2026-06-05 09:41:13,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:41:13
[2026-06-05 09:41:13,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:41:14,136.136 INFO    ] Initializing speech engine...
[2026-06-05 09:41:14,146.146 INFO    ] 2026-06-05 09:41:14
[2026-06-05 09:41:14,438.438 INFO    ] 2026-06-05 09:41:14
[2026-06-05 09:41:14,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:41:14,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:41:14,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:41:14,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:41:14,854.854 INFO    ] time= 05/06/2026 09:41:14
[2026-06-05 09:41:14,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:41:14,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:41:14,944.944 INFO    ] No existing commands found in stream
[2026-06-05 09:41:19,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:41:19,983.983 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 09:41:22,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:41:22,124.124 INFO    ] Checking for system updates...
[2026-06-05 09:41:22,169.169 INFO    ] 200
[2026-06-05 09:41:22,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:22,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:41:22,233.233 INFO    ] No update needed
[2026-06-05 09:41:22,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 09:41:22,273.273 INFO    ] 200
[2026-06-05 09:41:22,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:22,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:41:22,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:41:22,377.377 INFO    ] No camera update needed
[2026-06-05 09:41:22,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:41:22,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:41:22,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:41:22,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:41:24,431.431 INFO    ] ================================================
[2026-06-05 09:41:24,446.446 INFO    ] Launching Daemon at Fri Jun  5 09:41:24 IST 2026
[2026-06-05 09:41:24,457.457 INFO    ] ================================================
[2026-06-05 09:41:25,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:41:25
[2026-06-05 09:41:25,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:41:25,924.924 INFO    ] Initializing speech engine...
[2026-06-05 09:41:25,933.933 INFO    ] 2026-06-05 09:41:25
[2026-06-05 09:41:26,224.224 INFO    ] 2026-06-05 09:41:26
[2026-06-05 09:41:26,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:41:26,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:41:26,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:41:26,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:41:26,635.635 INFO    ] time= 05/06/2026 09:41:26
[2026-06-05 09:41:26,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:41:26,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:41:26,844.844 INFO    ] No existing commands found in stream
[2026-06-05 09:41:31,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:41:31,861.861 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 09:41:32,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:41:32,703.703 INFO    ] Checking for system updates...
[2026-06-05 09:41:32,739.739 INFO    ] 200
[2026-06-05 09:41:32,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:32,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:41:32,797.797 INFO    ] No update needed
[2026-06-05 09:41:32,799.799 INFO    ] Checking for camera pi updates...
[2026-06-05 09:41:32,834.834 INFO    ] 200
[2026-06-05 09:41:32,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:32,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:41:32,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:41:32,912.912 INFO    ] No camera update needed
[2026-06-05 09:41:32,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:41:32,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:41:32,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:41:32,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:41:34,967.967 INFO    ] ================================================
[2026-06-05 09:41:34,983.983 INFO    ] Launching Daemon at Fri Jun  5 09:41:34 IST 2026
[2026-06-05 09:41:34,993.993 INFO    ] ================================================
[2026-06-05 09:41:35,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:41:35
[2026-06-05 09:41:36,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:41:36,511.511 INFO    ] Initializing speech engine...
[2026-06-05 09:41:36,525.525 INFO    ] 2026-06-05 09:41:36
[2026-06-05 09:41:36,835.835 INFO    ] 2026-06-05 09:41:36
[2026-06-05 09:41:36,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:41:37,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:41:37,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:41:37,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:41:37,351.351 INFO    ] time= 05/06/2026 09:41:37
[2026-06-05 09:41:37,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:41:37,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:41:37,526.526 INFO    ] No existing commands found in stream
[2026-06-05 09:41:42,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:41:42,566.566 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 09:41:45,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:41:45,509.509 INFO    ] Checking for system updates...
[2026-06-05 09:41:45,547.547 INFO    ] 200
[2026-06-05 09:41:45,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:45,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:41:45,605.605 INFO    ] No update needed
[2026-06-05 09:41:45,608.608 INFO    ] Checking for camera pi updates...
[2026-06-05 09:41:45,643.643 INFO    ] 200
[2026-06-05 09:41:45,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:45,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:41:45,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:41:45,745.745 INFO    ] No camera update needed
[2026-06-05 09:41:45,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:41:45,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:41:45,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:41:45,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:41:47,802.802 INFO    ] ================================================
[2026-06-05 09:41:47,818.818 INFO    ] Launching Daemon at Fri Jun  5 09:41:47 IST 2026
[2026-06-05 09:41:47,829.829 INFO    ] ================================================
[2026-06-05 09:41:48,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:41:48
[2026-06-05 09:41:49,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:41:49,307.307 INFO    ] Initializing speech engine...
[2026-06-05 09:41:49,316.316 INFO    ] 2026-06-05 09:41:49
[2026-06-05 09:41:49,618.618 INFO    ] 2026-06-05 09:41:49
[2026-06-05 09:41:49,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:41:49,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:41:49,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:41:50,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:41:50,172.172 INFO    ] time= 05/06/2026 09:41:50
[2026-06-05 09:41:50,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:41:50,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:41:50,318.318 INFO    ] No existing commands found in stream
[2026-06-05 09:41:55,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:41:55,338.338 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 09:41:55,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:41:55,892.892 INFO    ] Checking for system updates...
[2026-06-05 09:41:55,932.932 INFO    ] 200
[2026-06-05 09:41:55,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:55,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:41:55,997.997 INFO    ] No update needed
[2026-06-05 09:41:56,000.000 INFO    ] Checking for camera pi updates...
[2026-06-05 09:41:56,037.037 INFO    ] 200
[2026-06-05 09:41:56,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:41:56,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:41:56,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:41:56,132.132 INFO    ] No camera update needed
[2026-06-05 09:41:56,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:41:56,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:41:56,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:41:56,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:41:58,188.188 INFO    ] ================================================
[2026-06-05 09:41:58,204.204 INFO    ] Launching Daemon at Fri Jun  5 09:41:58 IST 2026
[2026-06-05 09:41:58,215.215 INFO    ] ================================================
[2026-06-05 09:41:58,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:41:58
[2026-06-05 09:41:59,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:41:59,872.872 INFO    ] Initializing speech engine...
[2026-06-05 09:41:59,880.880 INFO    ] 2026-06-05 09:41:59
[2026-06-05 09:42:00,169.169 INFO    ] 2026-06-05 09:42:00
[2026-06-05 09:42:00,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:42:00,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:42:00,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:42:00,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:42:00,709.709 INFO    ] time= 05/06/2026 09:42:00
[2026-06-05 09:42:00,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:42:00,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:42:00,855.855 INFO    ] No existing commands found in stream
[2026-06-05 09:42:05,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:42:05,880.880 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 09:42:09,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:42:09,202.202 INFO    ] Checking for system updates...
[2026-06-05 09:42:09,239.239 INFO    ] 200
[2026-06-05 09:42:09,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:09,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:42:09,299.299 INFO    ] No update needed
[2026-06-05 09:42:09,302.302 INFO    ] Checking for camera pi updates...
[2026-06-05 09:42:09,337.337 INFO    ] 200
[2026-06-05 09:42:09,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:09,385.385 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:42:09,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:42:09,452.452 INFO    ] No camera update needed
[2026-06-05 09:42:09,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:42:09,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:42:09,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:42:09,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:42:11,513.513 INFO    ] ================================================
[2026-06-05 09:42:11,529.529 INFO    ] Launching Daemon at Fri Jun  5 09:42:11 IST 2026
[2026-06-05 09:42:11,539.539 INFO    ] ================================================
[2026-06-05 09:42:12,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:42:12
[2026-06-05 09:42:12,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:42:13,159.159 INFO    ] Initializing speech engine...
[2026-06-05 09:42:13,175.175 INFO    ] 2026-06-05 09:42:13
[2026-06-05 09:42:13,468.468 INFO    ] 2026-06-05 09:42:13
[2026-06-05 09:42:13,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:42:13,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:42:13,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:42:13,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:42:13,931.931 INFO    ] time= 05/06/2026 09:42:13
[2026-06-05 09:42:13,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:42:14,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:42:14,091.091 INFO    ] No existing commands found in stream
[2026-06-05 09:42:19,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:42:19,104.104 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 09:42:21,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:42:21,118.118 INFO    ] Checking for system updates...
[2026-06-05 09:42:21,155.155 INFO    ] 200
[2026-06-05 09:42:21,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:21,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:42:21,219.219 INFO    ] No update needed
[2026-06-05 09:42:21,222.222 INFO    ] Checking for camera pi updates...
[2026-06-05 09:42:21,258.258 INFO    ] 200
[2026-06-05 09:42:21,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:21,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:42:21,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:42:21,357.357 INFO    ] No camera update needed
[2026-06-05 09:42:21,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:42:21,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:42:21,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:42:21,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:42:23,414.414 INFO    ] ================================================
[2026-06-05 09:42:23,430.430 INFO    ] Launching Daemon at Fri Jun  5 09:42:23 IST 2026
[2026-06-05 09:42:23,441.441 INFO    ] ================================================
[2026-06-05 09:42:24,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:42:24
[2026-06-05 09:42:24,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:42:24,901.901 INFO    ] Initializing speech engine...
[2026-06-05 09:42:24,909.909 INFO    ] 2026-06-05 09:42:24
[2026-06-05 09:42:25,203.203 INFO    ] 2026-06-05 09:42:25
[2026-06-05 09:42:25,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:42:25,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:42:25,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:42:25,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:42:25,621.621 INFO    ] time= 05/06/2026 09:42:25
[2026-06-05 09:42:25,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:42:25,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:42:25,711.711 INFO    ] No existing commands found in stream
[2026-06-05 09:42:30,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:42:30,750.750 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 09:42:32,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:42:32,997.997 INFO    ] Checking for system updates...
[2026-06-05 09:42:33,036.036 INFO    ] 200
[2026-06-05 09:42:33,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:33,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:42:33,099.099 INFO    ] No update needed
[2026-06-05 09:42:33,101.101 INFO    ] Checking for camera pi updates...
[2026-06-05 09:42:33,142.142 INFO    ] 200
[2026-06-05 09:42:33,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:33,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:42:33,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:42:33,219.219 INFO    ] No camera update needed
[2026-06-05 09:42:33,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:42:33,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:42:33,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:42:33,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:42:35,275.275 INFO    ] ================================================
[2026-06-05 09:42:35,291.291 INFO    ] Launching Daemon at Fri Jun  5 09:42:35 IST 2026
[2026-06-05 09:42:35,302.302 INFO    ] ================================================
[2026-06-05 09:42:35,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:42:35
[2026-06-05 09:42:36,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:42:36,950.950 INFO    ] Initializing speech engine...
[2026-06-05 09:42:36,961.961 INFO    ] 2026-06-05 09:42:36
[2026-06-05 09:42:37,240.240 INFO    ] 2026-06-05 09:42:37
[2026-06-05 09:42:37,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:42:37,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:42:37,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:42:37,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:42:37,776.776 INFO    ] time= 05/06/2026 09:42:37
[2026-06-05 09:42:37,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:42:37,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:42:37,935.935 INFO    ] No existing commands found in stream
[2026-06-05 09:42:42,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:42:42,958.958 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 09:42:43,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:42:43,962.962 INFO    ] Checking for system updates...
[2026-06-05 09:42:44,002.002 INFO    ] 200
[2026-06-05 09:42:44,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:44,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:42:44,061.061 INFO    ] No update needed
[2026-06-05 09:42:44,064.064 INFO    ] Checking for camera pi updates...
[2026-06-05 09:42:44,099.099 INFO    ] 200
[2026-06-05 09:42:44,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:44,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:42:44,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:42:44,200.200 INFO    ] No camera update needed
[2026-06-05 09:42:44,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:42:44,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:42:44,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:42:44,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:42:46,260.260 INFO    ] ================================================
[2026-06-05 09:42:46,275.275 INFO    ] Launching Daemon at Fri Jun  5 09:42:46 IST 2026
[2026-06-05 09:42:46,286.286 INFO    ] ================================================
[2026-06-05 09:42:46,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:42:46
[2026-06-05 09:42:47,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:42:47,882.882 INFO    ] Initializing speech engine...
[2026-06-05 09:42:47,893.893 INFO    ] 2026-06-05 09:42:47
[2026-06-05 09:42:48,167.167 INFO    ] 2026-06-05 09:42:48
[2026-06-05 09:42:48,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:42:48,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:42:48,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:42:48,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:42:48,654.654 INFO    ] time= 05/06/2026 09:42:48
[2026-06-05 09:42:48,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:42:48,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:42:48,837.837 INFO    ] No existing commands found in stream
[2026-06-05 09:42:53,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:42:53,863.863 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 09:42:54,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:42:54,485.485 INFO    ] Checking for system updates...
[2026-06-05 09:42:54,522.522 INFO    ] 200
[2026-06-05 09:42:54,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:54,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:42:54,583.583 INFO    ] No update needed
[2026-06-05 09:42:54,585.585 INFO    ] Checking for camera pi updates...
[2026-06-05 09:42:54,623.623 INFO    ] 200
[2026-06-05 09:42:54,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:42:54,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:42:54,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:42:54,740.740 INFO    ] No camera update needed
[2026-06-05 09:42:54,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:42:54,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:42:54,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:42:54,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:42:56,799.799 INFO    ] ================================================
[2026-06-05 09:42:56,814.814 INFO    ] Launching Daemon at Fri Jun  5 09:42:56 IST 2026
[2026-06-05 09:42:56,825.825 INFO    ] ================================================
[2026-06-05 09:42:57,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:42:57
[2026-06-05 09:42:58,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:42:58,290.290 INFO    ] Initializing speech engine...
[2026-06-05 09:42:58,299.299 INFO    ] 2026-06-05 09:42:58
[2026-06-05 09:42:58,594.594 INFO    ] 2026-06-05 09:42:58
[2026-06-05 09:42:58,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:43:00,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:43:00,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:43:00,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:43:00,486.486 INFO    ] time= 05/06/2026 09:43:00
[2026-06-05 09:43:00,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:43:00,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:43:00,592.592 INFO    ] No existing commands found in stream
[2026-06-05 09:43:05,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:43:05,605.605 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 09:43:08,352.352 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:43:08,355.355 INFO    ] Checking for system updates...
[2026-06-05 09:43:08,396.396 INFO    ] 200
[2026-06-05 09:43:08,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:08,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:43:08,456.456 INFO    ] No update needed
[2026-06-05 09:43:08,459.459 INFO    ] Checking for camera pi updates...
[2026-06-05 09:43:08,494.494 INFO    ] 200
[2026-06-05 09:43:08,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:08,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:43:08,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:43:08,592.592 INFO    ] No camera update needed
[2026-06-05 09:43:08,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:43:08,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:43:08,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:43:08,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:43:10,650.650 INFO    ] ================================================
[2026-06-05 09:43:10,665.665 INFO    ] Launching Daemon at Fri Jun  5 09:43:10 IST 2026
[2026-06-05 09:43:10,676.676 INFO    ] ================================================
[2026-06-05 09:43:11,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:43:11
[2026-06-05 09:43:12,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:43:12,327.327 INFO    ] Initializing speech engine...
[2026-06-05 09:43:12,336.336 INFO    ] 2026-06-05 09:43:12
[2026-06-05 09:43:12,621.621 INFO    ] 2026-06-05 09:43:12
[2026-06-05 09:43:12,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:43:12,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:43:12,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:43:13,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:43:13,164.164 INFO    ] time= 05/06/2026 09:43:13
[2026-06-05 09:43:13,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:43:13,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:43:13,320.320 INFO    ] No existing commands found in stream
[2026-06-05 09:43:18,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:43:18,338.338 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 09:43:20,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:43:20,149.149 INFO    ] Checking for system updates...
[2026-06-05 09:43:20,185.185 INFO    ] 200
[2026-06-05 09:43:20,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:20,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:43:20,245.245 INFO    ] No update needed
[2026-06-05 09:43:20,247.247 INFO    ] Checking for camera pi updates...
[2026-06-05 09:43:20,286.286 INFO    ] 200
[2026-06-05 09:43:20,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:20,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:43:20,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:43:20,480.480 INFO    ] No camera update needed
[2026-06-05 09:43:20,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:43:20,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:43:20,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:43:20,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:43:22,539.539 INFO    ] ================================================
[2026-06-05 09:43:22,555.555 INFO    ] Launching Daemon at Fri Jun  5 09:43:22 IST 2026
[2026-06-05 09:43:22,567.567 INFO    ] ================================================
[2026-06-05 09:43:23,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:43:23
[2026-06-05 09:43:23,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:43:24,025.025 INFO    ] Initializing speech engine...
[2026-06-05 09:43:24,040.040 INFO    ] 2026-06-05 09:43:24
[2026-06-05 09:43:24,327.327 INFO    ] 2026-06-05 09:43:24
[2026-06-05 09:43:24,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:43:24,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:43:24,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:43:24,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:43:24,751.751 INFO    ] time= 05/06/2026 09:43:24
[2026-06-05 09:43:24,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:43:24,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:43:24,895.895 INFO    ] No existing commands found in stream
[2026-06-05 09:43:29,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:43:29,928.928 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-05 09:43:33,324.324 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:43:33,327.327 INFO    ] Checking for system updates...
[2026-06-05 09:43:33,364.364 INFO    ] 200
[2026-06-05 09:43:33,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:33,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:43:33,429.429 INFO    ] No update needed
[2026-06-05 09:43:33,432.432 INFO    ] Checking for camera pi updates...
[2026-06-05 09:43:33,466.466 INFO    ] 200
[2026-06-05 09:43:33,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:33,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:43:33,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:43:33,570.570 INFO    ] No camera update needed
[2026-06-05 09:43:33,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:43:33,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:43:33,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:43:33,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:43:35,627.627 INFO    ] ================================================
[2026-06-05 09:43:35,643.643 INFO    ] Launching Daemon at Fri Jun  5 09:43:35 IST 2026
[2026-06-05 09:43:35,654.654 INFO    ] ================================================
[2026-06-05 09:43:36,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:43:36
[2026-06-05 09:43:36,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:43:37,107.107 INFO    ] Initializing speech engine...
[2026-06-05 09:43:37,116.116 INFO    ] 2026-06-05 09:43:37
[2026-06-05 09:43:37,384.384 INFO    ] 2026-06-05 09:43:37
[2026-06-05 09:43:37,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:43:37,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:43:37,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:43:37,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:43:37,738.738 INFO    ] time= 05/06/2026 09:43:37
[2026-06-05 09:43:37,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:43:37,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:43:37,885.885 INFO    ] No existing commands found in stream
[2026-06-05 09:43:42,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:43:42,900.900 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 09:43:43,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:43:43,762.762 INFO    ] Checking for system updates...
[2026-06-05 09:43:43,802.802 INFO    ] 200
[2026-06-05 09:43:43,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:43,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:43:43,860.860 INFO    ] No update needed
[2026-06-05 09:43:43,863.863 INFO    ] Checking for camera pi updates...
[2026-06-05 09:43:43,896.896 INFO    ] 200
[2026-06-05 09:43:43,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:43,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:43:43,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:43:43,986.986 INFO    ] No camera update needed
[2026-06-05 09:43:43,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:43:43,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:43:43,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:43:44,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:43:46,042.042 INFO    ] ================================================
[2026-06-05 09:43:46,057.057 INFO    ] Launching Daemon at Fri Jun  5 09:43:46 IST 2026
[2026-06-05 09:43:46,069.069 INFO    ] ================================================
[2026-06-05 09:43:46,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:43:46
[2026-06-05 09:43:47,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:43:47,734.734 INFO    ] Initializing speech engine...
[2026-06-05 09:43:47,746.746 INFO    ] 2026-06-05 09:43:47
[2026-06-05 09:43:48,025.025 INFO    ] 2026-06-05 09:43:48
[2026-06-05 09:43:48,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:43:48,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:43:48,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:43:48,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:43:48,570.570 INFO    ] time= 05/06/2026 09:43:48
[2026-06-05 09:43:48,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:43:48,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:43:48,730.730 INFO    ] No existing commands found in stream
[2026-06-05 09:43:53,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:43:53,765.765 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 09:43:56,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:43:56,862.862 INFO    ] Checking for system updates...
[2026-06-05 09:43:56,899.899 INFO    ] 200
[2026-06-05 09:43:56,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:56,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:43:56,959.959 INFO    ] No update needed
[2026-06-05 09:43:56,962.962 INFO    ] Checking for camera pi updates...
[2026-06-05 09:43:56,998.998 INFO    ] 200
[2026-06-05 09:43:57,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:43:57,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:43:57,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:43:57,091.091 INFO    ] No camera update needed
[2026-06-05 09:43:57,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:43:57,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:43:57,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:43:57,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:43:59,151.151 INFO    ] ================================================
[2026-06-05 09:43:59,167.167 INFO    ] Launching Daemon at Fri Jun  5 09:43:59 IST 2026
[2026-06-05 09:43:59,179.179 INFO    ] ================================================
[2026-06-05 09:43:59,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:43:59
[2026-06-05 09:44:00,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:44:00,803.803 INFO    ] Initializing speech engine...
[2026-06-05 09:44:00,812.812 INFO    ] 2026-06-05 09:44:00
[2026-06-05 09:44:01,093.093 INFO    ] 2026-06-05 09:44:01
[2026-06-05 09:44:01,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:44:01,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:44:01,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:44:01,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:44:01,583.583 INFO    ] time= 05/06/2026 09:44:01
[2026-06-05 09:44:01,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:44:01,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:44:01,686.686 INFO    ] No existing commands found in stream
[2026-06-05 09:44:06,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:44:06,700.700 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 09:44:09,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:44:09,625.625 INFO    ] Checking for system updates...
[2026-06-05 09:44:09,662.662 INFO    ] 200
[2026-06-05 09:44:09,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:09,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:44:09,725.725 INFO    ] No update needed
[2026-06-05 09:44:09,728.728 INFO    ] Checking for camera pi updates...
[2026-06-05 09:44:09,767.767 INFO    ] 200
[2026-06-05 09:44:09,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:09,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:44:09,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:44:09,873.873 INFO    ] No camera update needed
[2026-06-05 09:44:09,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:44:09,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:44:09,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:44:09,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:44:11,930.930 INFO    ] ================================================
[2026-06-05 09:44:11,946.946 INFO    ] Launching Daemon at Fri Jun  5 09:44:11 IST 2026
[2026-06-05 09:44:11,957.957 INFO    ] ================================================
[2026-06-05 09:44:12,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:44:12
[2026-06-05 09:44:13,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:44:13,616.616 INFO    ] Initializing speech engine...
[2026-06-05 09:44:13,628.628 INFO    ] 2026-06-05 09:44:13
[2026-06-05 09:44:13,937.937 INFO    ] 2026-06-05 09:44:13
[2026-06-05 09:44:14,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:44:14,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:44:14,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:44:14,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:44:14,445.445 INFO    ] time= 05/06/2026 09:44:14
[2026-06-05 09:44:14,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:44:14,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:44:14,601.601 INFO    ] No existing commands found in stream
[2026-06-05 09:44:19,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:44:19,645.645 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 09:44:21,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:44:21,137.137 INFO    ] Checking for system updates...
[2026-06-05 09:44:21,175.175 INFO    ] 200
[2026-06-05 09:44:21,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:21,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:44:21,235.235 INFO    ] No update needed
[2026-06-05 09:44:21,238.238 INFO    ] Checking for camera pi updates...
[2026-06-05 09:44:21,274.274 INFO    ] 200
[2026-06-05 09:44:21,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:21,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:44:21,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:44:21,367.367 INFO    ] No camera update needed
[2026-06-05 09:44:21,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:44:21,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:44:21,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:44:21,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:44:23,428.428 INFO    ] ================================================
[2026-06-05 09:44:23,444.444 INFO    ] Launching Daemon at Fri Jun  5 09:44:23 IST 2026
[2026-06-05 09:44:23,456.456 INFO    ] ================================================
[2026-06-05 09:44:24,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:44:24
[2026-06-05 09:44:24,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:44:24,872.872 INFO    ] Initializing speech engine...
[2026-06-05 09:44:24,898.898 INFO    ] 2026-06-05 09:44:24
[2026-06-05 09:44:25,154.154 INFO    ] 2026-06-05 09:44:25
[2026-06-05 09:44:25,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:44:25,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:44:25,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:44:25,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:44:25,630.630 INFO    ] time= 05/06/2026 09:44:25
[2026-06-05 09:44:25,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:44:25,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:44:25,832.832 INFO    ] No existing commands found in stream
[2026-06-05 09:44:30,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:44:30,848.848 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 09:44:34,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:44:34,053.053 INFO    ] Checking for system updates...
[2026-06-05 09:44:34,091.091 INFO    ] 200
[2026-06-05 09:44:34,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:34,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:44:34,159.159 INFO    ] No update needed
[2026-06-05 09:44:34,162.162 INFO    ] Checking for camera pi updates...
[2026-06-05 09:44:34,197.197 INFO    ] 200
[2026-06-05 09:44:34,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:34,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:44:34,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:44:34,308.308 INFO    ] No camera update needed
[2026-06-05 09:44:34,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:44:34,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:44:34,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:44:34,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:44:36,368.368 INFO    ] ================================================
[2026-06-05 09:44:36,384.384 INFO    ] Launching Daemon at Fri Jun  5 09:44:36 IST 2026
[2026-06-05 09:44:36,396.396 INFO    ] ================================================
[2026-06-05 09:44:36,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:44:36
[2026-06-05 09:44:37,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:44:37,902.902 INFO    ] Initializing speech engine...
[2026-06-05 09:44:37,917.917 INFO    ] 2026-06-05 09:44:37
[2026-06-05 09:44:38,203.203 INFO    ] 2026-06-05 09:44:38
[2026-06-05 09:44:38,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:44:38,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:44:38,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:44:38,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:44:38,734.734 INFO    ] time= 05/06/2026 09:44:38
[2026-06-05 09:44:38,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:44:38,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:44:38,908.908 INFO    ] No existing commands found in stream
[2026-06-05 09:44:43,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:44:43,938.938 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 09:44:44,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:44:44,855.855 INFO    ] Checking for system updates...
[2026-06-05 09:44:44,892.892 INFO    ] 200
[2026-06-05 09:44:44,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:44,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:44:44,961.961 INFO    ] No update needed
[2026-06-05 09:44:44,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 09:44:45,003.003 INFO    ] 200
[2026-06-05 09:44:45,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:45,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:44:45,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:44:45,108.108 INFO    ] No camera update needed
[2026-06-05 09:44:45,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:44:45,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:44:45,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:44:45,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:44:47,166.166 INFO    ] ================================================
[2026-06-05 09:44:47,182.182 INFO    ] Launching Daemon at Fri Jun  5 09:44:47 IST 2026
[2026-06-05 09:44:47,194.194 INFO    ] ================================================
[2026-06-05 09:44:47,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:44:47
[2026-06-05 09:44:48,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:44:48,645.645 INFO    ] Initializing speech engine...
[2026-06-05 09:44:48,649.649 INFO    ] 2026-06-05 09:44:48
[2026-06-05 09:44:48,896.896 INFO    ] 2026-06-05 09:44:48
[2026-06-05 09:44:48,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:44:49,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:44:49,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:44:49,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:44:49,375.375 INFO    ] time= 05/06/2026 09:44:49
[2026-06-05 09:44:49,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:44:49,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:44:49,597.597 INFO    ] No existing commands found in stream
[2026-06-05 09:44:54,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:44:54,622.622 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 09:44:55,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:44:55,340.340 INFO    ] Checking for system updates...
[2026-06-05 09:44:55,377.377 INFO    ] 200
[2026-06-05 09:44:55,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:55,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:44:55,436.436 INFO    ] No update needed
[2026-06-05 09:44:55,439.439 INFO    ] Checking for camera pi updates...
[2026-06-05 09:44:55,473.473 INFO    ] 200
[2026-06-05 09:44:55,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:44:55,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:44:55,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:44:55,568.568 INFO    ] No camera update needed
[2026-06-05 09:44:55,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:44:55,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:44:55,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:44:55,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:44:57,624.624 INFO    ] ================================================
[2026-06-05 09:44:57,640.640 INFO    ] Launching Daemon at Fri Jun  5 09:44:57 IST 2026
[2026-06-05 09:44:57,652.652 INFO    ] ================================================
[2026-06-05 09:44:58,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:44:58
[2026-06-05 09:44:58,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:44:59,285.285 INFO    ] Initializing speech engine...
[2026-06-05 09:44:59,293.293 INFO    ] 2026-06-05 09:44:59
[2026-06-05 09:44:59,580.580 INFO    ] 2026-06-05 09:44:59
[2026-06-05 09:44:59,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:45:00,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:45:00,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:45:00,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:45:00,300.300 INFO    ] time= 05/06/2026 09:45:00
[2026-06-05 09:45:00,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:45:00,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:45:00,524.524 INFO    ] No existing commands found in stream
[2026-06-05 09:45:05,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:45:05,564.564 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 09:45:07,933.933 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:45:07,936.936 INFO    ] Checking for system updates...
[2026-06-05 09:45:07,974.974 INFO    ] 200
[2026-06-05 09:45:07,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:45:08,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:45:08,035.035 INFO    ] No update needed
[2026-06-05 09:45:08,038.038 INFO    ] Checking for camera pi updates...
[2026-06-05 09:45:08,073.073 INFO    ] 200
[2026-06-05 09:45:08,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:45:08,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:45:08,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:45:08,172.172 INFO    ] No camera update needed
[2026-06-05 09:45:08,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:45:08,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:45:08,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:45:08,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:45:10,232.232 INFO    ] ================================================
[2026-06-05 09:45:10,248.248 INFO    ] Launching Daemon at Fri Jun  5 09:45:10 IST 2026
[2026-06-05 09:45:10,259.259 INFO    ] ================================================
[2026-06-05 09:45:10,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:45:10
[2026-06-05 09:45:11,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:45:11,926.926 INFO    ] Initializing speech engine...
[2026-06-05 09:45:11,936.936 INFO    ] 2026-06-05 09:45:11
[2026-06-05 09:45:12,241.241 INFO    ] 2026-06-05 09:45:12
[2026-06-05 09:45:12,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:45:12,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:45:12,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:45:12,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:45:12,750.750 INFO    ] time= 05/06/2026 09:45:12
[2026-06-05 09:45:12,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:45:12,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:45:12,907.907 INFO    ] No existing commands found in stream
[2026-06-05 09:45:17,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:45:17,932.932 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 09:45:19,143.143 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:45:19,147.147 INFO    ] Checking for system updates...
[2026-06-05 09:45:19,184.184 INFO    ] 200
[2026-06-05 09:45:19,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:45:19,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:45:19,245.245 INFO    ] No update needed
[2026-06-05 09:45:19,248.248 INFO    ] Checking for camera pi updates...
[2026-06-05 09:45:19,283.283 INFO    ] 200
[2026-06-05 09:45:19,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:45:19,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:45:19,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:45:19,378.378 INFO    ] No camera update needed
[2026-06-05 09:45:19,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:45:19,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:45:19,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:45:19,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:45:21,437.437 INFO    ] ================================================
[2026-06-05 09:45:21,453.453 INFO    ] Launching Daemon at Fri Jun  5 09:45:21 IST 2026
[2026-06-05 09:45:21,465.465 INFO    ] ================================================
[2026-06-05 09:45:22,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:45:22
[2026-06-05 09:45:22,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:45:22,883.883 INFO    ] Initializing speech engine...
[2026-06-05 09:45:22,896.896 INFO    ] 2026-06-05 09:45:22
[2026-06-05 09:45:23,167.167 INFO    ] 2026-06-05 09:45:23
[2026-06-05 09:45:23,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:45:23,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:45:23,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:45:23,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:45:23,523.523 INFO    ] time= 05/06/2026 09:45:23
[2026-06-05 09:45:23,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:45:23,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:45:23,677.677 INFO    ] No existing commands found in stream
[2026-06-05 09:45:28,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:45:28,690.690 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 09:45:32,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:45:32,080.080 INFO    ] Checking for system updates...
[2026-06-05 09:45:32,118.118 INFO    ] 200
[2026-06-05 09:45:32,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:45:32,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:45:32,180.180 INFO    ] No update needed
[2026-06-05 09:45:32,183.183 INFO    ] Checking for camera pi updates...
[2026-06-05 09:45:32,220.220 INFO    ] 200
[2026-06-05 09:45:32,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:45:32,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:45:32,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:45:32,405.405 INFO    ] No camera update needed
[2026-06-05 09:45:32,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:45:32,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:45:32,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:45:32,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:45:34,463.463 INFO    ] ================================================
[2026-06-05 09:45:34,479.479 INFO    ] Launching Daemon at Fri Jun  5 09:45:34 IST 2026
[2026-06-05 09:45:34,490.490 INFO    ] ================================================
[2026-06-05 09:45:35,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:45:35
[2026-06-05 09:45:35,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:45:35,913.913 INFO    ] Initializing speech engine...
[2026-06-05 09:45:35,922.922 INFO    ] 2026-06-05 09:45:35
[2026-06-05 09:45:36,167.167 INFO    ] 2026-06-05 09:45:36
[2026-06-05 09:45:36,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:45:36,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:45:36,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:45:36,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:45:36,625.625 INFO    ] time= 05/06/2026 09:45:36
[2026-06-05 09:45:36,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:45:36,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:45:36,883.883 INFO    ] No existing commands found in stream
[2026-06-05 09:45:41,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:45:41,900.900 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 09:45:45,821.821 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:45:45,824.824 INFO    ] Checking for system updates...
[2026-06-05 09:45:45,860.860 INFO    ] 200
[2026-06-05 09:45:45,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:45:45,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:45:45,919.919 INFO    ] No update needed
[2026-06-05 09:45:45,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 09:45:45,960.960 INFO    ] 200
[2026-06-05 09:45:45,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:45:46,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:45:46,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:45:46,052.052 INFO    ] No camera update needed
[2026-06-05 09:45:46,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:45:46,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:45:46,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:45:46,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:45:48,110.110 INFO    ] ================================================
[2026-06-05 09:45:48,126.126 INFO    ] Launching Daemon at Fri Jun  5 09:45:48 IST 2026
[2026-06-05 09:45:48,137.137 INFO    ] ================================================
[2026-06-05 09:45:48,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:45:48
[2026-06-05 09:45:49,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:45:49,558.558 INFO    ] Initializing speech engine...
[2026-06-05 09:45:49,564.564 INFO    ] 2026-06-05 09:45:49
[2026-06-05 09:45:49,862.862 INFO    ] 2026-06-05 09:45:49
[2026-06-05 09:45:49,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:45:50,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:45:50,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:45:50,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:45:50,245.245 INFO    ] time= 05/06/2026 09:45:50
[2026-06-05 09:45:50,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:45:50,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:45:50,372.372 INFO    ] No existing commands found in stream
[2026-06-05 09:45:55,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:45:55,391.391 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 09:46:00,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:46:00,244.244 INFO    ] Checking for system updates...
[2026-06-05 09:46:00,280.280 INFO    ] 200
[2026-06-05 09:46:00,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:00,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:46:00,338.338 INFO    ] No update needed
[2026-06-05 09:46:00,341.341 INFO    ] Checking for camera pi updates...
[2026-06-05 09:46:00,375.375 INFO    ] 200
[2026-06-05 09:46:00,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:00,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:46:00,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:46:00,470.470 INFO    ] No camera update needed
[2026-06-05 09:46:00,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:46:00,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:46:00,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:46:00,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:46:02,528.528 INFO    ] ================================================
[2026-06-05 09:46:02,547.547 INFO    ] Launching Daemon at Fri Jun  5 09:46:02 IST 2026
[2026-06-05 09:46:02,560.560 INFO    ] ================================================
[2026-06-05 09:46:03,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:46:03
[2026-06-05 09:46:03,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:46:04,165.165 INFO    ] Initializing speech engine...
[2026-06-05 09:46:04,188.188 INFO    ] 2026-06-05 09:46:04
[2026-06-05 09:46:04,460.460 INFO    ] 2026-06-05 09:46:04
[2026-06-05 09:46:04,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:46:04,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:46:04,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:46:04,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:46:04,899.899 INFO    ] time= 05/06/2026 09:46:04
[2026-06-05 09:46:04,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:46:04,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:46:05,057.057 INFO    ] No existing commands found in stream
[2026-06-05 09:46:10,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:46:10,070.070 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 09:46:11,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:46:11,394.394 INFO    ] Checking for system updates...
[2026-06-05 09:46:11,430.430 INFO    ] 200
[2026-06-05 09:46:11,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:11,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:46:11,487.487 INFO    ] No update needed
[2026-06-05 09:46:11,490.490 INFO    ] Checking for camera pi updates...
[2026-06-05 09:46:11,523.523 INFO    ] 200
[2026-06-05 09:46:11,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:11,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:46:11,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:46:11,627.627 INFO    ] No camera update needed
[2026-06-05 09:46:11,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:46:11,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:46:11,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:46:11,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:46:13,683.683 INFO    ] ================================================
[2026-06-05 09:46:13,699.699 INFO    ] Launching Daemon at Fri Jun  5 09:46:13 IST 2026
[2026-06-05 09:46:13,709.709 INFO    ] ================================================
[2026-06-05 09:46:14,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:46:14
[2026-06-05 09:46:14,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:46:15,173.173 INFO    ] Initializing speech engine...
[2026-06-05 09:46:15,182.182 INFO    ] 2026-06-05 09:46:15
[2026-06-05 09:46:15,442.442 INFO    ] 2026-06-05 09:46:15
[2026-06-05 09:46:15,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:46:15,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:46:15,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:46:15,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:46:15,937.937 INFO    ] time= 05/06/2026 09:46:15
[2026-06-05 09:46:15,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:46:16,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:46:16,162.162 INFO    ] No existing commands found in stream
[2026-06-05 09:46:21,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:46:21,180.180 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 09:46:23,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:46:23,189.189 INFO    ] Checking for system updates...
[2026-06-05 09:46:23,226.226 INFO    ] 200
[2026-06-05 09:46:23,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:23,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:46:23,289.289 INFO    ] No update needed
[2026-06-05 09:46:23,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 09:46:23,330.330 INFO    ] 200
[2026-06-05 09:46:23,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:23,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:46:23,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:46:23,429.429 INFO    ] No camera update needed
[2026-06-05 09:46:23,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:46:23,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:46:23,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:46:23,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:46:25,485.485 INFO    ] ================================================
[2026-06-05 09:46:25,500.500 INFO    ] Launching Daemon at Fri Jun  5 09:46:25 IST 2026
[2026-06-05 09:46:25,511.511 INFO    ] ================================================
[2026-06-05 09:46:26,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:46:26
[2026-06-05 09:46:26,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:46:26,987.987 INFO    ] Initializing speech engine...
[2026-06-05 09:46:27,001.001 INFO    ] 2026-06-05 09:46:26
[2026-06-05 09:46:27,267.267 INFO    ] 2026-06-05 09:46:27
[2026-06-05 09:46:27,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:46:27,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:46:27,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:46:27,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:46:27,824.824 INFO    ] time= 05/06/2026 09:46:27
[2026-06-05 09:46:27,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:46:27,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:46:27,983.983 INFO    ] No existing commands found in stream
[2026-06-05 09:46:32,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:46:33,002.002 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 09:46:36,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:46:36,788.788 INFO    ] Checking for system updates...
[2026-06-05 09:46:36,825.825 INFO    ] 200
[2026-06-05 09:46:36,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:36,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:46:36,884.884 INFO    ] No update needed
[2026-06-05 09:46:36,887.887 INFO    ] Checking for camera pi updates...
[2026-06-05 09:46:36,921.921 INFO    ] 200
[2026-06-05 09:46:36,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:36,965.965 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:46:37,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:46:37,021.021 INFO    ] No camera update needed
[2026-06-05 09:46:37,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:46:37,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:46:37,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:46:37,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:46:39,077.077 INFO    ] ================================================
[2026-06-05 09:46:39,092.092 INFO    ] Launching Daemon at Fri Jun  5 09:46:39 IST 2026
[2026-06-05 09:46:39,102.102 INFO    ] ================================================
[2026-06-05 09:46:39,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:46:39
[2026-06-05 09:46:40,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:46:40,563.563 INFO    ] Initializing speech engine...
[2026-06-05 09:46:40,574.574 INFO    ] 2026-06-05 09:46:40
[2026-06-05 09:46:40,823.823 INFO    ] 2026-06-05 09:46:40
[2026-06-05 09:46:40,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:46:41,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:46:41,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:46:41,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:46:41,337.337 INFO    ] time= 05/06/2026 09:46:41
[2026-06-05 09:46:41,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:46:41,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:46:41,535.535 INFO    ] No existing commands found in stream
[2026-06-05 09:46:46,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:46:46,563.563 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 09:46:50,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:46:50,404.404 INFO    ] Checking for system updates...
[2026-06-05 09:46:50,442.442 INFO    ] 200
[2026-06-05 09:46:50,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:50,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:46:50,500.500 INFO    ] No update needed
[2026-06-05 09:46:50,502.502 INFO    ] Checking for camera pi updates...
[2026-06-05 09:46:50,536.536 INFO    ] 200
[2026-06-05 09:46:50,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:46:50,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:46:50,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:46:50,648.648 INFO    ] No camera update needed
[2026-06-05 09:46:50,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:46:50,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:46:50,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:46:50,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:46:52,705.705 INFO    ] ================================================
[2026-06-05 09:46:52,720.720 INFO    ] Launching Daemon at Fri Jun  5 09:46:52 IST 2026
[2026-06-05 09:46:52,731.731 INFO    ] ================================================
[2026-06-05 09:46:53,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:46:53
[2026-06-05 09:46:53,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:46:54,185.185 INFO    ] Initializing speech engine...
[2026-06-05 09:46:54,193.193 INFO    ] 2026-06-05 09:46:54
[2026-06-05 09:46:54,440.440 INFO    ] 2026-06-05 09:46:54
[2026-06-05 09:46:54,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:46:54,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:46:54,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:46:54,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:46:54,905.905 INFO    ] time= 05/06/2026 09:46:54
[2026-06-05 09:46:54,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:46:55,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:46:55,118.118 INFO    ] No existing commands found in stream
[2026-06-05 09:47:00,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:47:00,143.143 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 09:47:03,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:47:03,769.769 INFO    ] Checking for system updates...
[2026-06-05 09:47:03,810.810 INFO    ] 200
[2026-06-05 09:47:03,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:03,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:47:03,869.869 INFO    ] No update needed
[2026-06-05 09:47:03,871.871 INFO    ] Checking for camera pi updates...
[2026-06-05 09:47:03,905.905 INFO    ] 200
[2026-06-05 09:47:03,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:03,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:47:04,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:47:04,069.069 INFO    ] No camera update needed
[2026-06-05 09:47:04,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:47:04,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:47:04,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:47:04,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:47:06,127.127 INFO    ] ================================================
[2026-06-05 09:47:06,142.142 INFO    ] Launching Daemon at Fri Jun  5 09:47:06 IST 2026
[2026-06-05 09:47:06,153.153 INFO    ] ================================================
[2026-06-05 09:47:06,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:47:06
[2026-06-05 09:47:07,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:47:07,585.585 INFO    ] Initializing speech engine...
[2026-06-05 09:47:07,600.600 INFO    ] 2026-06-05 09:47:07
[2026-06-05 09:47:07,864.864 INFO    ] 2026-06-05 09:47:07
[2026-06-05 09:47:07,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:47:08,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:47:08,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:47:08,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:47:08,243.243 INFO    ] time= 05/06/2026 09:47:08
[2026-06-05 09:47:08,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:47:08,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:47:08,406.406 INFO    ] No existing commands found in stream
[2026-06-05 09:47:13,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:47:13,439.439 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 09:47:14,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:47:14,469.469 INFO    ] Checking for system updates...
[2026-06-05 09:47:14,506.506 INFO    ] 200
[2026-06-05 09:47:14,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:14,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:47:14,565.565 INFO    ] No update needed
[2026-06-05 09:47:14,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 09:47:14,601.601 INFO    ] 200
[2026-06-05 09:47:14,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:14,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:47:14,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:47:14,705.705 INFO    ] No camera update needed
[2026-06-05 09:47:14,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:47:14,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:47:14,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:47:14,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:47:16,768.768 INFO    ] ================================================
[2026-06-05 09:47:16,783.783 INFO    ] Launching Daemon at Fri Jun  5 09:47:16 IST 2026
[2026-06-05 09:47:16,794.794 INFO    ] ================================================
[2026-06-05 09:47:17,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:47:17
[2026-06-05 09:47:17,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:47:18,227.227 INFO    ] Initializing speech engine...
[2026-06-05 09:47:18,247.247 INFO    ] 2026-06-05 09:47:18
[2026-06-05 09:47:18,510.510 INFO    ] 2026-06-05 09:47:18
[2026-06-05 09:47:18,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:47:18,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:47:18,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:47:18,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:47:18,924.924 INFO    ] time= 05/06/2026 09:47:18
[2026-06-05 09:47:18,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:47:18,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:47:19,015.015 INFO    ] No existing commands found in stream
[2026-06-05 09:47:24,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:47:24,038.038 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 09:47:26,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:47:26,519.519 INFO    ] Checking for system updates...
[2026-06-05 09:47:26,555.555 INFO    ] 200
[2026-06-05 09:47:26,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:26,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:47:26,612.612 INFO    ] No update needed
[2026-06-05 09:47:26,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 09:47:26,649.649 INFO    ] 200
[2026-06-05 09:47:26,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:26,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:47:26,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:47:26,747.747 INFO    ] No camera update needed
[2026-06-05 09:47:26,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:47:26,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:47:26,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:47:26,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:47:28,802.802 INFO    ] ================================================
[2026-06-05 09:47:28,817.817 INFO    ] Launching Daemon at Fri Jun  5 09:47:28 IST 2026
[2026-06-05 09:47:28,828.828 INFO    ] ================================================
[2026-06-05 09:47:29,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:47:29
[2026-06-05 09:47:29,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:47:30,256.256 INFO    ] Initializing speech engine...
[2026-06-05 09:47:30,266.266 INFO    ] 2026-06-05 09:47:30
[2026-06-05 09:47:30,526.526 INFO    ] 2026-06-05 09:47:30
[2026-06-05 09:47:30,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:47:30,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:47:30,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:47:30,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:47:30,998.998 INFO    ] time= 05/06/2026 09:47:30
[2026-06-05 09:47:31,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:47:31,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:47:31,207.207 INFO    ] No existing commands found in stream
[2026-06-05 09:47:36,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:47:36,234.234 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 09:47:38,679.679 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:47:38,682.682 INFO    ] Checking for system updates...
[2026-06-05 09:47:38,722.722 INFO    ] 200
[2026-06-05 09:47:38,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:38,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:47:38,789.789 INFO    ] No update needed
[2026-06-05 09:47:38,791.791 INFO    ] Checking for camera pi updates...
[2026-06-05 09:47:38,826.826 INFO    ] 200
[2026-06-05 09:47:38,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:38,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:47:39,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:47:39,028.028 INFO    ] No camera update needed
[2026-06-05 09:47:39,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:47:39,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:47:39,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:47:39,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:47:41,085.085 INFO    ] ================================================
[2026-06-05 09:47:41,101.101 INFO    ] Launching Daemon at Fri Jun  5 09:47:41 IST 2026
[2026-06-05 09:47:41,112.112 INFO    ] ================================================
[2026-06-05 09:47:41,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:47:41
[2026-06-05 09:47:42,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:47:42,553.553 INFO    ] Initializing speech engine...
[2026-06-05 09:47:42,563.563 INFO    ] 2026-06-05 09:47:42
[2026-06-05 09:47:42,829.829 INFO    ] 2026-06-05 09:47:42
[2026-06-05 09:47:42,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:47:43,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:47:43,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:47:43,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:47:43,187.187 INFO    ] time= 05/06/2026 09:47:43
[2026-06-05 09:47:43,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:47:43,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:47:43,319.319 INFO    ] No existing commands found in stream
[2026-06-05 09:47:48,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:47:48,348.348 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 09:47:51,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:47:51,469.469 INFO    ] Checking for system updates...
[2026-06-05 09:47:51,507.507 INFO    ] 200
[2026-06-05 09:47:51,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:51,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:47:51,574.574 INFO    ] No update needed
[2026-06-05 09:47:51,577.577 INFO    ] Checking for camera pi updates...
[2026-06-05 09:47:51,612.612 INFO    ] 200
[2026-06-05 09:47:51,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:47:51,658.658 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:47:51,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:47:51,709.709 INFO    ] No camera update needed
[2026-06-05 09:47:51,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:47:51,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:47:51,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:47:51,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:47:53,770.770 INFO    ] ================================================
[2026-06-05 09:47:53,786.786 INFO    ] Launching Daemon at Fri Jun  5 09:47:53 IST 2026
[2026-06-05 09:47:53,796.796 INFO    ] ================================================
[2026-06-05 09:47:54,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:47:54
[2026-06-05 09:47:54,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:47:55,223.223 INFO    ] Initializing speech engine...
[2026-06-05 09:47:55,233.233 INFO    ] 2026-06-05 09:47:55
[2026-06-05 09:47:55,492.492 INFO    ] 2026-06-05 09:47:55
[2026-06-05 09:47:55,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:47:55,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:47:55,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:47:55,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:47:55,950.950 INFO    ] time= 05/06/2026 09:47:55
[2026-06-05 09:47:56,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:47:56,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:47:56,192.192 INFO    ] No existing commands found in stream
[2026-06-05 09:48:01,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:48:01,218.218 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 09:48:03,930.930 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:48:03,933.933 INFO    ] Checking for system updates...
[2026-06-05 09:48:03,970.970 INFO    ] 200
[2026-06-05 09:48:03,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:04,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:48:04,028.028 INFO    ] No update needed
[2026-06-05 09:48:04,030.030 INFO    ] Checking for camera pi updates...
[2026-06-05 09:48:04,065.065 INFO    ] 200
[2026-06-05 09:48:04,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:04,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:48:04,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:48:04,170.170 INFO    ] No camera update needed
[2026-06-05 09:48:04,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:48:04,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:48:04,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:48:04,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:48:06,225.225 INFO    ] ================================================
[2026-06-05 09:48:06,240.240 INFO    ] Launching Daemon at Fri Jun  5 09:48:06 IST 2026
[2026-06-05 09:48:06,251.251 INFO    ] ================================================
[2026-06-05 09:48:06,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:48:06
[2026-06-05 09:48:07,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:48:07,734.734 INFO    ] Initializing speech engine...
[2026-06-05 09:48:07,756.756 INFO    ] 2026-06-05 09:48:07
[2026-06-05 09:48:08,040.040 INFO    ] 2026-06-05 09:48:08
[2026-06-05 09:48:08,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:48:08,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:48:08,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:48:08,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:48:08,460.460 INFO    ] time= 05/06/2026 09:48:08
[2026-06-05 09:48:08,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:48:08,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:48:08,548.548 INFO    ] No existing commands found in stream
[2026-06-05 09:48:13,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:48:13,580.580 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 09:48:14,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:48:14,593.593 INFO    ] Checking for system updates...
[2026-06-05 09:48:14,633.633 INFO    ] 200
[2026-06-05 09:48:14,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:14,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:48:14,691.691 INFO    ] No update needed
[2026-06-05 09:48:14,694.694 INFO    ] Checking for camera pi updates...
[2026-06-05 09:48:14,728.728 INFO    ] 200
[2026-06-05 09:48:14,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:14,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:48:14,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:48:14,828.828 INFO    ] No camera update needed
[2026-06-05 09:48:14,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:48:14,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:48:14,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:48:14,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:48:16,883.883 INFO    ] ================================================
[2026-06-05 09:48:16,898.898 INFO    ] Launching Daemon at Fri Jun  5 09:48:16 IST 2026
[2026-06-05 09:48:16,910.910 INFO    ] ================================================
[2026-06-05 09:48:17,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:48:17
[2026-06-05 09:48:18,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:48:18,342.342 INFO    ] Initializing speech engine...
[2026-06-05 09:48:18,351.351 INFO    ] 2026-06-05 09:48:18
[2026-06-05 09:48:18,598.598 INFO    ] 2026-06-05 09:48:18
[2026-06-05 09:48:18,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:48:18,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:48:18,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:48:19,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:48:19,047.047 INFO    ] time= 05/06/2026 09:48:19
[2026-06-05 09:48:19,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:48:19,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:48:19,309.309 INFO    ] No existing commands found in stream
[2026-06-05 09:48:24,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:48:24,336.336 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-05 09:48:24,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:48:24,942.942 INFO    ] Checking for system updates...
[2026-06-05 09:48:24,980.980 INFO    ] 200
[2026-06-05 09:48:24,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:25,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:48:25,040.040 INFO    ] No update needed
[2026-06-05 09:48:25,042.042 INFO    ] Checking for camera pi updates...
[2026-06-05 09:48:25,077.077 INFO    ] 200
[2026-06-05 09:48:25,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:25,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:48:25,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:48:25,168.168 INFO    ] No camera update needed
[2026-06-05 09:48:25,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:48:25,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:48:25,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:48:25,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:48:27,225.225 INFO    ] ================================================
[2026-06-05 09:48:27,240.240 INFO    ] Launching Daemon at Fri Jun  5 09:48:27 IST 2026
[2026-06-05 09:48:27,251.251 INFO    ] ================================================
[2026-06-05 09:48:27,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:48:27
[2026-06-05 09:48:28,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:48:28,677.677 INFO    ] Initializing speech engine...
[2026-06-05 09:48:28,686.686 INFO    ] 2026-06-05 09:48:28
[2026-06-05 09:48:28,932.932 INFO    ] 2026-06-05 09:48:28
[2026-06-05 09:48:28,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:48:30,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:48:30,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:48:30,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:48:30,277.277 INFO    ] time= 05/06/2026 09:48:30
[2026-06-05 09:48:30,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:48:30,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:48:30,358.358 INFO    ] No existing commands found in stream
[2026-06-05 09:48:35,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:48:35,372.372 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 09:48:36,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:48:36,872.872 INFO    ] Checking for system updates...
[2026-06-05 09:48:36,910.910 INFO    ] 200
[2026-06-05 09:48:36,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:36,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:48:36,968.968 INFO    ] No update needed
[2026-06-05 09:48:36,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 09:48:37,005.005 INFO    ] 200
[2026-06-05 09:48:37,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:37,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:48:37,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:48:37,108.108 INFO    ] No camera update needed
[2026-06-05 09:48:37,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:48:37,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:48:37,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:48:37,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:48:39,164.164 INFO    ] ================================================
[2026-06-05 09:48:39,179.179 INFO    ] Launching Daemon at Fri Jun  5 09:48:39 IST 2026
[2026-06-05 09:48:39,190.190 INFO    ] ================================================
[2026-06-05 09:48:39,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:48:39
[2026-06-05 09:48:40,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:48:40,792.792 INFO    ] Initializing speech engine...
[2026-06-05 09:48:40,801.801 INFO    ] 2026-06-05 09:48:40
[2026-06-05 09:48:41,048.048 INFO    ] 2026-06-05 09:48:41
[2026-06-05 09:48:41,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:48:41,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:48:41,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:48:41,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:48:41,550.550 INFO    ] time= 05/06/2026 09:48:41
[2026-06-05 09:48:41,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:48:41,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:48:41,764.764 INFO    ] No existing commands found in stream
[2026-06-05 09:48:46,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:48:46,794.794 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 09:48:48,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:48:48,891.891 INFO    ] Checking for system updates...
[2026-06-05 09:48:48,926.926 INFO    ] 200
[2026-06-05 09:48:48,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:48,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:48:48,984.984 INFO    ] No update needed
[2026-06-05 09:48:48,987.987 INFO    ] Checking for camera pi updates...
[2026-06-05 09:48:49,021.021 INFO    ] 200
[2026-06-05 09:48:49,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:48:49,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:48:49,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:48:49,115.115 INFO    ] No camera update needed
[2026-06-05 09:48:49,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:48:49,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:48:49,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:48:49,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:48:51,172.172 INFO    ] ================================================
[2026-06-05 09:48:51,188.188 INFO    ] Launching Daemon at Fri Jun  5 09:48:51 IST 2026
[2026-06-05 09:48:51,199.199 INFO    ] ================================================
[2026-06-05 09:48:51,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:48:51
[2026-06-05 09:48:52,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:48:52,621.621 INFO    ] Initializing speech engine...
[2026-06-05 09:48:52,630.630 INFO    ] 2026-06-05 09:48:52
[2026-06-05 09:48:52,883.883 INFO    ] 2026-06-05 09:48:52
[2026-06-05 09:48:52,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:48:53,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:48:53,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:48:53,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:48:53,354.354 INFO    ] time= 05/06/2026 09:48:53
[2026-06-05 09:48:53,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:48:53,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:48:53,559.559 INFO    ] No existing commands found in stream
[2026-06-05 09:48:58,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:48:58,593.593 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 09:49:00,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:49:00,235.235 INFO    ] Checking for system updates...
[2026-06-05 09:49:00,278.278 INFO    ] 200
[2026-06-05 09:49:00,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:00,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:49:00,347.347 INFO    ] No update needed
[2026-06-05 09:49:00,350.350 INFO    ] Checking for camera pi updates...
[2026-06-05 09:49:00,389.389 INFO    ] 200
[2026-06-05 09:49:00,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:00,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:49:00,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:49:00,473.473 INFO    ] No camera update needed
[2026-06-05 09:49:00,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:49:00,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:49:00,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:49:00,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:49:02,542.542 INFO    ] ================================================
[2026-06-05 09:49:02,573.573 INFO    ] Launching Daemon at Fri Jun  5 09:49:02 IST 2026
[2026-06-05 09:49:02,598.598 INFO    ] ================================================
[2026-06-05 09:49:03,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:49:03
[2026-06-05 09:49:03,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:49:04,206.206 INFO    ] Initializing speech engine...
[2026-06-05 09:49:04,216.216 INFO    ] 2026-06-05 09:49:04
[2026-06-05 09:49:04,482.482 INFO    ] 2026-06-05 09:49:04
[2026-06-05 09:49:04,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:49:04,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:49:04,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:49:04,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:49:04,859.859 INFO    ] time= 05/06/2026 09:49:04
[2026-06-05 09:49:04,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:49:04,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:49:04,987.987 INFO    ] No existing commands found in stream
[2026-06-05 09:49:10,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:49:10,007.007 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 09:49:12,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:49:12,154.154 INFO    ] Checking for system updates...
[2026-06-05 09:49:12,190.190 INFO    ] 200
[2026-06-05 09:49:12,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:12,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:49:12,251.251 INFO    ] No update needed
[2026-06-05 09:49:12,253.253 INFO    ] Checking for camera pi updates...
[2026-06-05 09:49:12,288.288 INFO    ] 200
[2026-06-05 09:49:12,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:12,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:49:12,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:49:12,388.388 INFO    ] No camera update needed
[2026-06-05 09:49:12,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:49:12,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:49:12,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:49:12,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:49:14,444.444 INFO    ] ================================================
[2026-06-05 09:49:14,460.460 INFO    ] Launching Daemon at Fri Jun  5 09:49:14 IST 2026
[2026-06-05 09:49:14,470.470 INFO    ] ================================================
[2026-06-05 09:49:15,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:49:15
[2026-06-05 09:49:15,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:49:15,930.930 INFO    ] Initializing speech engine...
[2026-06-05 09:49:15,940.940 INFO    ] 2026-06-05 09:49:15
[2026-06-05 09:49:16,190.190 INFO    ] 2026-06-05 09:49:16
[2026-06-05 09:49:16,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:49:16,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:49:16,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:49:16,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:49:16,798.798 INFO    ] time= 05/06/2026 09:49:16
[2026-06-05 09:49:16,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:49:16,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:49:17,098.098 INFO    ] No existing commands found in stream
[2026-06-05 09:49:22,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:49:22,137.137 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 09:49:25,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:49:25,151.151 INFO    ] Checking for system updates...
[2026-06-05 09:49:25,197.197 INFO    ] 200
[2026-06-05 09:49:25,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:25,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:49:25,257.257 INFO    ] No update needed
[2026-06-05 09:49:25,259.259 INFO    ] Checking for camera pi updates...
[2026-06-05 09:49:25,293.293 INFO    ] 200
[2026-06-05 09:49:25,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:25,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:49:25,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:49:25,387.387 INFO    ] No camera update needed
[2026-06-05 09:49:25,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:49:25,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:49:25,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:49:25,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:49:27,443.443 INFO    ] ================================================
[2026-06-05 09:49:27,458.458 INFO    ] Launching Daemon at Fri Jun  5 09:49:27 IST 2026
[2026-06-05 09:49:27,469.469 INFO    ] ================================================
[2026-06-05 09:49:28,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:49:28
[2026-06-05 09:49:28,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:49:29,081.081 INFO    ] Initializing speech engine...
[2026-06-05 09:49:29,089.089 INFO    ] 2026-06-05 09:49:29
[2026-06-05 09:49:29,362.362 INFO    ] 2026-06-05 09:49:29
[2026-06-05 09:49:29,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:49:30,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:49:30,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:49:30,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:49:30,498.498 INFO    ] time= 05/06/2026 09:49:30
[2026-06-05 09:49:30,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:49:30,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:49:30,621.621 INFO    ] No existing commands found in stream
[2026-06-05 09:49:35,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:49:35,637.637 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 09:49:38,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:49:38,585.585 INFO    ] Checking for system updates...
[2026-06-05 09:49:38,622.622 INFO    ] 200
[2026-06-05 09:49:38,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:38,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:49:38,683.683 INFO    ] No update needed
[2026-06-05 09:49:38,685.685 INFO    ] Checking for camera pi updates...
[2026-06-05 09:49:38,721.721 INFO    ] 200
[2026-06-05 09:49:38,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:38,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:49:38,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:49:38,820.820 INFO    ] No camera update needed
[2026-06-05 09:49:38,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:49:38,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:49:38,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:49:38,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:49:40,879.879 INFO    ] ================================================
[2026-06-05 09:49:40,893.893 INFO    ] Launching Daemon at Fri Jun  5 09:49:40 IST 2026
[2026-06-05 09:49:40,904.904 INFO    ] ================================================
[2026-06-05 09:49:41,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:49:41
[2026-06-05 09:49:42,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:49:42,328.328 INFO    ] Initializing speech engine...
[2026-06-05 09:49:42,347.347 INFO    ] 2026-06-05 09:49:42
[2026-06-05 09:49:42,598.598 INFO    ] 2026-06-05 09:49:42
[2026-06-05 09:49:42,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:49:42,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:49:42,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:49:42,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:49:42,980.980 INFO    ] time= 05/06/2026 09:49:42
[2026-06-05 09:49:42,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:49:43,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:49:43,156.156 INFO    ] No existing commands found in stream
[2026-06-05 09:49:48,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:49:48,194.194 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 09:49:51,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:49:51,693.693 INFO    ] Checking for system updates...
[2026-06-05 09:49:51,729.729 INFO    ] 200
[2026-06-05 09:49:51,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:51,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:49:51,787.787 INFO    ] No update needed
[2026-06-05 09:49:51,789.789 INFO    ] Checking for camera pi updates...
[2026-06-05 09:49:51,823.823 INFO    ] 200
[2026-06-05 09:49:51,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:49:51,867.867 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:49:52,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:49:52,019.019 INFO    ] No camera update needed
[2026-06-05 09:49:52,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:49:52,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:49:52,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:49:52,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:49:54,078.078 INFO    ] ================================================
[2026-06-05 09:49:54,093.093 INFO    ] Launching Daemon at Fri Jun  5 09:49:54 IST 2026
[2026-06-05 09:49:54,104.104 INFO    ] ================================================
[2026-06-05 09:49:54,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:49:54
[2026-06-05 09:49:55,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:49:55,553.553 INFO    ] Initializing speech engine...
[2026-06-05 09:49:55,563.563 INFO    ] 2026-06-05 09:49:55
[2026-06-05 09:49:55,826.826 INFO    ] 2026-06-05 09:49:55
[2026-06-05 09:49:55,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:49:56,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:49:56,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:49:56,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:49:56,287.287 INFO    ] time= 05/06/2026 09:49:56
[2026-06-05 09:49:56,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:49:56,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:49:56,496.496 INFO    ] No existing commands found in stream
[2026-06-05 09:50:01,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:50:01,524.524 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 09:50:02,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:50:02,091.091 INFO    ] Checking for system updates...
[2026-06-05 09:50:02,331.331 INFO    ] 200
[2026-06-05 09:50:02,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:02,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:50:02,555.555 INFO    ] No update needed
[2026-06-05 09:50:02,559.559 INFO    ] Checking for camera pi updates...
[2026-06-05 09:50:02,611.611 INFO    ] 200
[2026-06-05 09:50:02,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:02,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:50:02,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:50:02,772.772 INFO    ] No camera update needed
[2026-06-05 09:50:02,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:50:02,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:50:02,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:50:02,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:50:04,841.841 INFO    ] ================================================
[2026-06-05 09:50:04,857.857 INFO    ] Launching Daemon at Fri Jun  5 09:50:04 IST 2026
[2026-06-05 09:50:04,868.868 INFO    ] ================================================
[2026-06-05 09:50:05,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:50:05
[2026-06-05 09:50:06,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:50:06,336.336 INFO    ] Initializing speech engine...
[2026-06-05 09:50:06,350.350 INFO    ] 2026-06-05 09:50:06
[2026-06-05 09:50:06,611.611 INFO    ] 2026-06-05 09:50:06
[2026-06-05 09:50:06,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:50:06,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:50:06,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:50:07,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:50:07,136.136 INFO    ] time= 05/06/2026 09:50:07
[2026-06-05 09:50:07,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:50:07,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:50:07,364.364 INFO    ] No existing commands found in stream
[2026-06-05 09:50:12,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:50:12,390.390 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 09:50:14,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:50:14,939.939 INFO    ] Checking for system updates...
[2026-06-05 09:50:14,978.978 INFO    ] 200
[2026-06-05 09:50:14,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:15,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:50:15,040.040 INFO    ] No update needed
[2026-06-05 09:50:15,043.043 INFO    ] Checking for camera pi updates...
[2026-06-05 09:50:15,078.078 INFO    ] 200
[2026-06-05 09:50:15,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:15,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:50:15,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:50:15,177.177 INFO    ] No camera update needed
[2026-06-05 09:50:15,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:50:15,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:50:15,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:50:15,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:50:17,231.231 INFO    ] ================================================
[2026-06-05 09:50:17,246.246 INFO    ] Launching Daemon at Fri Jun  5 09:50:17 IST 2026
[2026-06-05 09:50:17,257.257 INFO    ] ================================================
[2026-06-05 09:50:17,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:50:17
[2026-06-05 09:50:18,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:50:18,685.685 INFO    ] Initializing speech engine...
[2026-06-05 09:50:18,706.706 INFO    ] 2026-06-05 09:50:18
[2026-06-05 09:50:18,967.967 INFO    ] 2026-06-05 09:50:18
[2026-06-05 09:50:19,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:50:19,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:50:19,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:50:19,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:50:19,347.347 INFO    ] time= 05/06/2026 09:50:19
[2026-06-05 09:50:19,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:50:19,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:50:19,532.532 INFO    ] No existing commands found in stream
[2026-06-05 09:50:24,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:50:24,556.556 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 09:50:26,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:50:26,963.963 INFO    ] Checking for system updates...
[2026-06-05 09:50:26,999.999 INFO    ] 200
[2026-06-05 09:50:27,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:27,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:50:27,062.062 INFO    ] No update needed
[2026-06-05 09:50:27,064.064 INFO    ] Checking for camera pi updates...
[2026-06-05 09:50:27,099.099 INFO    ] 200
[2026-06-05 09:50:27,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:27,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:50:27,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:50:27,196.196 INFO    ] No camera update needed
[2026-06-05 09:50:27,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:50:27,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:50:27,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:50:27,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:50:29,252.252 INFO    ] ================================================
[2026-06-05 09:50:29,267.267 INFO    ] Launching Daemon at Fri Jun  5 09:50:29 IST 2026
[2026-06-05 09:50:29,278.278 INFO    ] ================================================
[2026-06-05 09:50:29,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:50:29
[2026-06-05 09:50:30,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:50:30,693.693 INFO    ] Initializing speech engine...
[2026-06-05 09:50:30,710.710 INFO    ] 2026-06-05 09:50:30
[2026-06-05 09:50:30,964.964 INFO    ] 2026-06-05 09:50:30
[2026-06-05 09:50:31,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:50:31,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:50:31,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:50:31,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:50:31,340.340 INFO    ] time= 05/06/2026 09:50:31
[2026-06-05 09:50:31,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:50:31,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:50:31,536.536 INFO    ] No existing commands found in stream
[2026-06-05 09:50:36,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:50:36,549.549 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 09:50:38,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:50:38,868.868 INFO    ] Checking for system updates...
[2026-06-05 09:50:38,904.904 INFO    ] 200
[2026-06-05 09:50:38,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:38,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:50:38,962.962 INFO    ] No update needed
[2026-06-05 09:50:38,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 09:50:38,998.998 INFO    ] 200
[2026-06-05 09:50:39,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:39,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:50:39,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:50:39,099.099 INFO    ] No camera update needed
[2026-06-05 09:50:39,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:50:39,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:50:39,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:50:39,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:50:41,157.157 INFO    ] ================================================
[2026-06-05 09:50:41,173.173 INFO    ] Launching Daemon at Fri Jun  5 09:50:41 IST 2026
[2026-06-05 09:50:41,184.184 INFO    ] ================================================
[2026-06-05 09:50:41,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:50:41
[2026-06-05 09:50:42,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:50:42,688.688 INFO    ] Initializing speech engine...
[2026-06-05 09:50:42,696.696 INFO    ] 2026-06-05 09:50:42
[2026-06-05 09:50:42,966.966 INFO    ] 2026-06-05 09:50:42
[2026-06-05 09:50:43,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:50:43,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:50:43,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:50:43,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:50:43,542.542 INFO    ] time= 05/06/2026 09:50:43
[2026-06-05 09:50:43,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:50:43,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:50:43,707.707 INFO    ] No existing commands found in stream
[2026-06-05 09:50:48,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:50:48,730.730 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 09:50:51,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:50:51,259.259 INFO    ] Checking for system updates...
[2026-06-05 09:50:51,296.296 INFO    ] 200
[2026-06-05 09:50:51,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:51,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:50:51,356.356 INFO    ] No update needed
[2026-06-05 09:50:51,359.359 INFO    ] Checking for camera pi updates...
[2026-06-05 09:50:51,393.393 INFO    ] 200
[2026-06-05 09:50:51,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:50:51,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:50:51,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:50:51,489.489 INFO    ] No camera update needed
[2026-06-05 09:50:51,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:50:51,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:50:51,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:50:51,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:50:53,546.546 INFO    ] ================================================
[2026-06-05 09:50:53,561.561 INFO    ] Launching Daemon at Fri Jun  5 09:50:53 IST 2026
[2026-06-05 09:50:53,572.572 INFO    ] ================================================
[2026-06-05 09:50:54,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:50:54
[2026-06-05 09:50:54,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:50:54,983.983 INFO    ] Initializing speech engine...
[2026-06-05 09:50:55,008.008 INFO    ] 2026-06-05 09:50:54
[2026-06-05 09:50:55,267.267 INFO    ] 2026-06-05 09:50:55
[2026-06-05 09:50:55,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:50:55,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:50:55,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:50:55,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:50:55,646.646 INFO    ] time= 05/06/2026 09:50:55
[2026-06-05 09:50:55,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:50:55,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:50:55,826.826 INFO    ] No existing commands found in stream
[2026-06-05 09:51:00,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:51:00,854.854 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 09:51:04,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:51:04,284.284 INFO    ] Checking for system updates...
[2026-06-05 09:51:04,320.320 INFO    ] 200
[2026-06-05 09:51:04,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:04,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:51:04,383.383 INFO    ] No update needed
[2026-06-05 09:51:04,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 09:51:04,424.424 INFO    ] 200
[2026-06-05 09:51:04,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:04,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:51:04,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:51:04,511.511 INFO    ] No camera update needed
[2026-06-05 09:51:04,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:51:04,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:51:04,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:51:04,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:51:06,571.571 INFO    ] ================================================
[2026-06-05 09:51:06,586.586 INFO    ] Launching Daemon at Fri Jun  5 09:51:06 IST 2026
[2026-06-05 09:51:06,597.597 INFO    ] ================================================
[2026-06-05 09:51:07,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:51:07
[2026-06-05 09:51:07,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:51:08,044.044 INFO    ] Initializing speech engine...
[2026-06-05 09:51:08,063.063 INFO    ] 2026-06-05 09:51:08
[2026-06-05 09:51:08,314.314 INFO    ] 2026-06-05 09:51:08
[2026-06-05 09:51:08,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:51:08,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:51:08,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:51:08,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:51:08,811.811 INFO    ] time= 05/06/2026 09:51:08
[2026-06-05 09:51:08,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:51:08,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:51:08,971.971 INFO    ] No existing commands found in stream
[2026-06-05 09:51:13,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:51:13,986.986 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 09:51:16,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:51:16,895.895 INFO    ] Checking for system updates...
[2026-06-05 09:51:16,935.935 INFO    ] 200
[2026-06-05 09:51:16,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:16,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:51:16,999.999 INFO    ] No update needed
[2026-06-05 09:51:17,001.001 INFO    ] Checking for camera pi updates...
[2026-06-05 09:51:17,036.036 INFO    ] 200
[2026-06-05 09:51:17,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:17,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:51:17,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:51:17,134.134 INFO    ] No camera update needed
[2026-06-05 09:51:17,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:51:17,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:51:17,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:51:17,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:51:19,192.192 INFO    ] ================================================
[2026-06-05 09:51:19,208.208 INFO    ] Launching Daemon at Fri Jun  5 09:51:19 IST 2026
[2026-06-05 09:51:19,219.219 INFO    ] ================================================
[2026-06-05 09:51:19,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:51:19
[2026-06-05 09:51:20,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:51:20,698.698 INFO    ] Initializing speech engine...
[2026-06-05 09:51:20,707.707 INFO    ] 2026-06-05 09:51:20
[2026-06-05 09:51:21,003.003 INFO    ] 2026-06-05 09:51:20
[2026-06-05 09:51:21,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:51:21,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:51:21,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:51:21,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:51:21,405.405 INFO    ] time= 05/06/2026 09:51:21
[2026-06-05 09:51:21,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:51:21,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:51:21,480.480 INFO    ] No existing commands found in stream
[2026-06-05 09:51:26,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:51:26,495.495 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 09:51:30,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:51:30,338.338 INFO    ] Checking for system updates...
[2026-06-05 09:51:30,384.384 INFO    ] 200
[2026-06-05 09:51:30,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:30,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:51:30,452.452 INFO    ] No update needed
[2026-06-05 09:51:30,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 09:51:30,496.496 INFO    ] 200
[2026-06-05 09:51:30,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:30,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:51:30,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:51:30,630.630 INFO    ] No camera update needed
[2026-06-05 09:51:30,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:51:30,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:51:30,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:51:30,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:51:32,690.690 INFO    ] ================================================
[2026-06-05 09:51:32,709.709 INFO    ] Launching Daemon at Fri Jun  5 09:51:32 IST 2026
[2026-06-05 09:51:32,720.720 INFO    ] ================================================
[2026-06-05 09:51:33,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:51:33
[2026-06-05 09:51:33,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:51:34,268.268 INFO    ] Initializing speech engine...
[2026-06-05 09:51:34,278.278 INFO    ] 2026-06-05 09:51:34
[2026-06-05 09:51:34,546.546 INFO    ] 2026-06-05 09:51:34
[2026-06-05 09:51:34,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:51:34,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:51:34,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:51:34,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:51:34,927.927 INFO    ] time= 05/06/2026 09:51:34
[2026-06-05 09:51:34,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:51:34,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:51:35,055.055 INFO    ] No existing commands found in stream
[2026-06-05 09:51:40,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:51:40,073.073 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 09:51:43,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:51:43,794.794 INFO    ] Checking for system updates...
[2026-06-05 09:51:43,831.831 INFO    ] 200
[2026-06-05 09:51:43,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:43,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:51:43,889.889 INFO    ] No update needed
[2026-06-05 09:51:43,891.891 INFO    ] Checking for camera pi updates...
[2026-06-05 09:51:43,926.926 INFO    ] 200
[2026-06-05 09:51:43,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:43,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:51:44,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:51:44,022.022 INFO    ] No camera update needed
[2026-06-05 09:51:44,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:51:44,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:51:44,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:51:44,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:51:46,079.079 INFO    ] ================================================
[2026-06-05 09:51:46,094.094 INFO    ] Launching Daemon at Fri Jun  5 09:51:46 IST 2026
[2026-06-05 09:51:46,104.104 INFO    ] ================================================
[2026-06-05 09:51:46,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:51:46
[2026-06-05 09:51:47,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:51:47,593.593 INFO    ] Initializing speech engine...
[2026-06-05 09:51:47,600.600 INFO    ] 2026-06-05 09:51:47
[2026-06-05 09:51:47,879.879 INFO    ] 2026-06-05 09:51:47
[2026-06-05 09:51:47,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:51:48,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:51:48,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:51:48,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:51:48,318.318 INFO    ] time= 05/06/2026 09:51:48
[2026-06-05 09:51:48,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:51:48,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:51:48,532.532 INFO    ] No existing commands found in stream
[2026-06-05 09:51:53,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:51:53,557.557 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 09:51:55,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:51:55,353.353 INFO    ] Checking for system updates...
[2026-06-05 09:51:55,394.394 INFO    ] 200
[2026-06-05 09:51:55,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:55,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:51:55,452.452 INFO    ] No update needed
[2026-06-05 09:51:55,454.454 INFO    ] Checking for camera pi updates...
[2026-06-05 09:51:55,492.492 INFO    ] 200
[2026-06-05 09:51:55,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:51:55,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:51:55,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:51:55,692.692 INFO    ] No camera update needed
[2026-06-05 09:51:55,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:51:55,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:51:55,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:51:55,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:51:57,749.749 INFO    ] ================================================
[2026-06-05 09:51:57,764.764 INFO    ] Launching Daemon at Fri Jun  5 09:51:57 IST 2026
[2026-06-05 09:51:57,775.775 INFO    ] ================================================
[2026-06-05 09:51:58,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:51:58
[2026-06-05 09:51:59,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:51:59,338.338 INFO    ] Initializing speech engine...
[2026-06-05 09:51:59,344.344 INFO    ] 2026-06-05 09:51:59
[2026-06-05 09:51:59,655.655 INFO    ] 2026-06-05 09:51:59
[2026-06-05 09:51:59,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:52:00,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:52:00,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:52:00,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:52:00,406.406 INFO    ] time= 05/06/2026 09:52:00
[2026-06-05 09:52:00,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:52:00,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:52:00,608.608 INFO    ] No existing commands found in stream
[2026-06-05 09:52:05,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:52:05,628.628 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 09:52:09,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:52:09,782.782 INFO    ] Checking for system updates...
[2026-06-05 09:52:09,819.819 INFO    ] 200
[2026-06-05 09:52:09,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:52:09,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:52:09,880.880 INFO    ] No update needed
[2026-06-05 09:52:09,882.882 INFO    ] Checking for camera pi updates...
[2026-06-05 09:52:09,920.920 INFO    ] 200
[2026-06-05 09:52:09,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:52:09,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:52:10,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:52:10,020.020 INFO    ] No camera update needed
[2026-06-05 09:52:10,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:52:10,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:52:10,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:52:10,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:52:12,075.075 INFO    ] ================================================
[2026-06-05 09:52:12,090.090 INFO    ] Launching Daemon at Fri Jun  5 09:52:12 IST 2026
[2026-06-05 09:52:12,101.101 INFO    ] ================================================
[2026-06-05 09:52:12,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:52:12
[2026-06-05 09:52:13,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:52:13,521.521 INFO    ] Initializing speech engine...
[2026-06-05 09:52:13,531.531 INFO    ] 2026-06-05 09:52:13
[2026-06-05 09:52:13,775.775 INFO    ] 2026-06-05 09:52:13
[2026-06-05 09:52:13,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:52:14,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:52:14,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:52:14,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:52:14,244.244 INFO    ] time= 05/06/2026 09:52:14
[2026-06-05 09:52:14,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:52:14,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:52:14,463.463 INFO    ] No existing commands found in stream
[2026-06-05 09:52:19,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:52:19,493.493 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 09:52:21,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:52:21,359.359 INFO    ] Checking for system updates...
[2026-06-05 09:52:21,396.396 INFO    ] 200
[2026-06-05 09:52:21,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:52:21,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:52:21,454.454 INFO    ] No update needed
[2026-06-05 09:52:21,457.457 INFO    ] Checking for camera pi updates...
[2026-06-05 09:52:21,500.500 INFO    ] 200
[2026-06-05 09:52:21,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:52:21,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:52:21,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:52:21,608.608 INFO    ] No camera update needed
[2026-06-05 09:52:21,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:52:21,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:52:21,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:52:21,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:52:23,665.665 INFO    ] ================================================
[2026-06-05 09:52:23,680.680 INFO    ] Launching Daemon at Fri Jun  5 09:52:23 IST 2026
[2026-06-05 09:52:23,691.691 INFO    ] ================================================
[2026-06-05 09:52:24,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:52:24
[2026-06-05 09:52:25,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:52:25,308.308 INFO    ] Initializing speech engine...
[2026-06-05 09:52:25,316.316 INFO    ] 2026-06-05 09:52:25
[2026-06-05 09:52:25,601.601 INFO    ] 2026-06-05 09:52:25
[2026-06-05 09:52:25,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:52:25,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:52:26,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:52:26,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:52:26,293.293 INFO    ] time= 05/06/2026 09:52:26
[2026-06-05 09:52:26,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:52:26,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:52:26,527.527 INFO    ] No existing commands found in stream
[2026-06-05 09:52:31,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:52:31,557.557 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 09:52:34,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:52:34,819.819 INFO    ] Checking for system updates...
[2026-06-05 09:52:34,859.859 INFO    ] 200
[2026-06-05 09:52:34,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:52:34,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:52:34,916.916 INFO    ] No update needed
[2026-06-05 09:52:34,918.918 INFO    ] Checking for camera pi updates...
[2026-06-05 09:52:34,953.953 INFO    ] 200
[2026-06-05 09:52:34,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:52:34,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:52:35,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:52:35,046.046 INFO    ] No camera update needed
[2026-06-05 09:52:35,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:52:35,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:52:35,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:52:35,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:52:37,100.100 INFO    ] ================================================
[2026-06-05 09:52:37,115.115 INFO    ] Launching Daemon at Fri Jun  5 09:52:37 IST 2026
[2026-06-05 09:52:37,126.126 INFO    ] ================================================
[2026-06-05 09:52:37,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:52:37
[2026-06-05 09:52:38,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:52:38,565.565 INFO    ] Initializing speech engine...
[2026-06-05 09:52:38,572.572 INFO    ] 2026-06-05 09:52:38
[2026-06-05 09:52:38,823.823 INFO    ] 2026-06-05 09:52:38
[2026-06-05 09:52:38,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:52:39,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:52:39,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:52:39,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:52:39,285.285 INFO    ] time= 05/06/2026 09:52:39
[2026-06-05 09:52:39,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:52:39,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:52:39,545.545 INFO    ] No existing commands found in stream
[2026-06-05 09:52:44,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:52:44,565.565 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 09:52:47,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:52:47,954.954 INFO    ] Checking for system updates...
[2026-06-05 09:52:47,990.990 INFO    ] 200
[2026-06-05 09:52:47,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:52:48,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:52:48,047.047 INFO    ] No update needed
[2026-06-05 09:52:48,050.050 INFO    ] Checking for camera pi updates...
[2026-06-05 09:52:48,088.088 INFO    ] 200
[2026-06-05 09:52:48,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:52:48,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:52:48,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:52:48,188.188 INFO    ] No camera update needed
[2026-06-05 09:52:48,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:52:48,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:52:48,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:52:48,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:52:50,247.247 INFO    ] ================================================
[2026-06-05 09:52:50,262.262 INFO    ] Launching Daemon at Fri Jun  5 09:52:50 IST 2026
[2026-06-05 09:52:50,273.273 INFO    ] ================================================
[2026-06-05 09:52:50,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:52:50
[2026-06-05 09:52:51,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:52:51,752.752 INFO    ] Initializing speech engine...
[2026-06-05 09:52:51,766.766 INFO    ] 2026-06-05 09:52:51
[2026-06-05 09:52:52,075.075 INFO    ] 2026-06-05 09:52:52
[2026-06-05 09:52:52,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:52:52,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:52:52,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:52:52,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:52:52,446.446 INFO    ] time= 05/06/2026 09:52:52
[2026-06-05 09:52:52,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:52:52,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:52:52,566.566 INFO    ] No existing commands found in stream
[2026-06-05 09:52:57,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:52:57,592.592 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 09:53:00,055.055 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:53:00,058.058 INFO    ] Checking for system updates...
[2026-06-05 09:53:00,095.095 INFO    ] 200
[2026-06-05 09:53:00,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:00,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:53:00,153.153 INFO    ] No update needed
[2026-06-05 09:53:00,155.155 INFO    ] Checking for camera pi updates...
[2026-06-05 09:53:00,194.194 INFO    ] 200
[2026-06-05 09:53:00,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:00,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:53:00,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:53:00,297.297 INFO    ] No camera update needed
[2026-06-05 09:53:00,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:53:00,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:53:00,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:53:00,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:53:02,353.353 INFO    ] ================================================
[2026-06-05 09:53:02,374.374 INFO    ] Launching Daemon at Fri Jun  5 09:53:02 IST 2026
[2026-06-05 09:53:02,391.391 INFO    ] ================================================
[2026-06-05 09:53:03,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:53:03
[2026-06-05 09:53:03,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:53:03,963.963 INFO    ] Initializing speech engine...
[2026-06-05 09:53:03,973.973 INFO    ] 2026-06-05 09:53:03
[2026-06-05 09:53:04,252.252 INFO    ] 2026-06-05 09:53:04
[2026-06-05 09:53:04,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:53:04,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:53:04,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:53:04,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:53:04,691.691 INFO    ] time= 05/06/2026 09:53:04
[2026-06-05 09:53:04,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:53:04,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:53:04,780.780 INFO    ] No existing commands found in stream
[2026-06-05 09:53:09,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:53:09,796.796 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 09:53:13,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:53:13,952.952 INFO    ] Checking for system updates...
[2026-06-05 09:53:13,989.989 INFO    ] 200
[2026-06-05 09:53:13,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:14,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:53:14,054.054 INFO    ] No update needed
[2026-06-05 09:53:14,057.057 INFO    ] Checking for camera pi updates...
[2026-06-05 09:53:14,092.092 INFO    ] 200
[2026-06-05 09:53:14,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:14,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:53:14,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:53:14,196.196 INFO    ] No camera update needed
[2026-06-05 09:53:14,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:53:14,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:53:14,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:53:14,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:53:16,254.254 INFO    ] ================================================
[2026-06-05 09:53:16,269.269 INFO    ] Launching Daemon at Fri Jun  5 09:53:16 IST 2026
[2026-06-05 09:53:16,280.280 INFO    ] ================================================
[2026-06-05 09:53:16,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:53:16
[2026-06-05 09:53:17,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:53:17,852.852 INFO    ] Initializing speech engine...
[2026-06-05 09:53:17,861.861 INFO    ] 2026-06-05 09:53:17
[2026-06-05 09:53:18,136.136 INFO    ] 2026-06-05 09:53:18
[2026-06-05 09:53:18,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:53:18,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:53:18,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:53:18,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:53:18,546.546 INFO    ] time= 05/06/2026 09:53:18
[2026-06-05 09:53:18,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:53:18,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:53:18,708.708 INFO    ] No existing commands found in stream
[2026-06-05 09:53:23,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:53:23,737.737 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 09:53:24,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:53:24,717.717 INFO    ] Checking for system updates...
[2026-06-05 09:53:24,752.752 INFO    ] 200
[2026-06-05 09:53:24,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:24,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:53:24,817.817 INFO    ] No update needed
[2026-06-05 09:53:24,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 09:53:24,856.856 INFO    ] 200
[2026-06-05 09:53:24,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:24,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:53:24,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:53:24,954.954 INFO    ] No camera update needed
[2026-06-05 09:53:24,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:53:24,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:53:24,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:53:24,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:53:27,010.010 INFO    ] ================================================
[2026-06-05 09:53:27,026.026 INFO    ] Launching Daemon at Fri Jun  5 09:53:27 IST 2026
[2026-06-05 09:53:27,037.037 INFO    ] ================================================
[2026-06-05 09:53:27,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:53:27
[2026-06-05 09:53:28,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:53:28,670.670 INFO    ] Initializing speech engine...
[2026-06-05 09:53:28,677.677 INFO    ] 2026-06-05 09:53:28
[2026-06-05 09:53:28,961.961 INFO    ] 2026-06-05 09:53:28
[2026-06-05 09:53:29,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:53:29,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:53:30,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:53:30,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:53:30,140.140 INFO    ] time= 05/06/2026 09:53:30
[2026-06-05 09:53:30,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:53:30,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:53:30,253.253 INFO    ] No existing commands found in stream
[2026-06-05 09:53:35,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:53:35,280.280 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 09:53:39,136.136 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:53:39,139.139 INFO    ] Checking for system updates...
[2026-06-05 09:53:39,175.175 INFO    ] 200
[2026-06-05 09:53:39,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:39,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:53:39,240.240 INFO    ] No update needed
[2026-06-05 09:53:39,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 09:53:39,277.277 INFO    ] 200
[2026-06-05 09:53:39,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:39,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:53:39,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:53:39,371.371 INFO    ] No camera update needed
[2026-06-05 09:53:39,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:53:39,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:53:39,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:53:39,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:53:41,427.427 INFO    ] ================================================
[2026-06-05 09:53:41,443.443 INFO    ] Launching Daemon at Fri Jun  5 09:53:41 IST 2026
[2026-06-05 09:53:41,453.453 INFO    ] ================================================
[2026-06-05 09:53:42,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:53:42
[2026-06-05 09:53:42,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:53:42,977.977 INFO    ] Initializing speech engine...
[2026-06-05 09:53:42,987.987 INFO    ] 2026-06-05 09:53:42
[2026-06-05 09:53:43,245.245 INFO    ] 2026-06-05 09:53:43
[2026-06-05 09:53:43,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:53:43,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:53:43,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:53:43,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:53:43,603.603 INFO    ] time= 05/06/2026 09:53:43
[2026-06-05 09:53:43,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:53:43,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:53:43,779.779 INFO    ] No existing commands found in stream
[2026-06-05 09:53:48,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:53:48,808.808 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 09:53:49,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:53:49,650.650 INFO    ] Checking for system updates...
[2026-06-05 09:53:49,690.690 INFO    ] 200
[2026-06-05 09:53:49,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:49,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:53:49,753.753 INFO    ] No update needed
[2026-06-05 09:53:49,758.758 INFO    ] Checking for camera pi updates...
[2026-06-05 09:53:49,796.796 INFO    ] 200
[2026-06-05 09:53:49,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:53:49,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:53:49,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:53:49,919.919 INFO    ] No camera update needed
[2026-06-05 09:53:49,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:53:49,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:53:49,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:53:49,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:53:51,978.978 INFO    ] ================================================
[2026-06-05 09:53:51,993.993 INFO    ] Launching Daemon at Fri Jun  5 09:53:51 IST 2026
[2026-06-05 09:53:52,009.009 INFO    ] ================================================
[2026-06-05 09:53:52,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:53:52
[2026-06-05 09:53:53,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:53:53,448.448 INFO    ] Initializing speech engine...
[2026-06-05 09:53:53,456.456 INFO    ] 2026-06-05 09:53:53
[2026-06-05 09:53:53,708.708 INFO    ] 2026-06-05 09:53:53
[2026-06-05 09:53:53,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:53:53,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:53:53,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:53:54,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:53:54,083.083 INFO    ] time= 05/06/2026 09:53:54
[2026-06-05 09:53:54,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:53:54,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:53:54,162.162 INFO    ] No existing commands found in stream
[2026-06-05 09:53:59,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:53:59,180.180 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 09:54:02,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:54:02,231.231 INFO    ] Checking for system updates...
[2026-06-05 09:54:02,284.284 INFO    ] 200
[2026-06-05 09:54:02,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:02,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:54:02,376.376 INFO    ] No update needed
[2026-06-05 09:54:02,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 09:54:02,420.420 INFO    ] 200
[2026-06-05 09:54:02,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:02,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:54:02,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:54:02,619.619 INFO    ] No camera update needed
[2026-06-05 09:54:02,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:54:02,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:54:02,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:54:02,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:54:04,678.678 INFO    ] ================================================
[2026-06-05 09:54:04,693.693 INFO    ] Launching Daemon at Fri Jun  5 09:54:04 IST 2026
[2026-06-05 09:54:04,704.704 INFO    ] ================================================
[2026-06-05 09:54:05,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:54:05
[2026-06-05 09:54:06,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:54:06,290.290 INFO    ] Initializing speech engine...
[2026-06-05 09:54:06,314.314 INFO    ] 2026-06-05 09:54:06
[2026-06-05 09:54:06,586.586 INFO    ] 2026-06-05 09:54:06
[2026-06-05 09:54:06,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:54:06,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:54:06,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:54:07,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:54:07,097.097 INFO    ] time= 05/06/2026 09:54:07
[2026-06-05 09:54:07,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:54:07,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:54:07,335.335 INFO    ] No existing commands found in stream
[2026-06-05 09:54:12,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:54:12,361.361 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 09:54:16,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:54:16,570.570 INFO    ] Checking for system updates...
[2026-06-05 09:54:16,611.611 INFO    ] 200
[2026-06-05 09:54:16,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:16,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:54:16,670.670 INFO    ] No update needed
[2026-06-05 09:54:16,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 09:54:16,708.708 INFO    ] 200
[2026-06-05 09:54:16,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:16,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:54:16,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:54:16,800.800 INFO    ] No camera update needed
[2026-06-05 09:54:16,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:54:16,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:54:16,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:54:16,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:54:18,858.858 INFO    ] ================================================
[2026-06-05 09:54:18,873.873 INFO    ] Launching Daemon at Fri Jun  5 09:54:18 IST 2026
[2026-06-05 09:54:18,884.884 INFO    ] ================================================
[2026-06-05 09:54:19,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:54:19
[2026-06-05 09:54:20,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:54:20,493.493 INFO    ] Initializing speech engine...
[2026-06-05 09:54:20,507.507 INFO    ] 2026-06-05 09:54:20
[2026-06-05 09:54:20,814.814 INFO    ] 2026-06-05 09:54:20
[2026-06-05 09:54:20,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:54:21,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:54:21,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:54:21,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:54:21,256.256 INFO    ] time= 05/06/2026 09:54:21
[2026-06-05 09:54:21,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:54:21,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:54:21,509.509 INFO    ] No existing commands found in stream
[2026-06-05 09:54:26,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:54:26,535.535 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 09:54:28,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:54:28,374.374 INFO    ] Checking for system updates...
[2026-06-05 09:54:28,411.411 INFO    ] 200
[2026-06-05 09:54:28,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:28,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:54:28,470.470 INFO    ] No update needed
[2026-06-05 09:54:28,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 09:54:28,507.507 INFO    ] 200
[2026-06-05 09:54:28,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:28,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:54:28,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:54:28,601.601 INFO    ] No camera update needed
[2026-06-05 09:54:28,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:54:28,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:54:28,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:54:28,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:54:30,658.658 INFO    ] ================================================
[2026-06-05 09:54:30,673.673 INFO    ] Launching Daemon at Fri Jun  5 09:54:30 IST 2026
[2026-06-05 09:54:30,683.683 INFO    ] ================================================
[2026-06-05 09:54:31,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:54:31
[2026-06-05 09:54:31,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:54:32,152.152 INFO    ] Initializing speech engine...
[2026-06-05 09:54:32,167.167 INFO    ] 2026-06-05 09:54:32
[2026-06-05 09:54:32,439.439 INFO    ] 2026-06-05 09:54:32
[2026-06-05 09:54:32,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:54:32,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:54:32,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:54:32,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:54:32,890.890 INFO    ] time= 05/06/2026 09:54:32
[2026-06-05 09:54:32,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:54:33,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:54:33,092.092 INFO    ] No existing commands found in stream
[2026-06-05 09:54:38,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:54:38,117.117 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 09:54:40,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:54:40,043.043 INFO    ] Checking for system updates...
[2026-06-05 09:54:40,079.079 INFO    ] 200
[2026-06-05 09:54:40,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:40,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:54:40,144.144 INFO    ] No update needed
[2026-06-05 09:54:40,147.147 INFO    ] Checking for camera pi updates...
[2026-06-05 09:54:40,181.181 INFO    ] 200
[2026-06-05 09:54:40,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:40,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:54:40,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:54:40,271.271 INFO    ] No camera update needed
[2026-06-05 09:54:40,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:54:40,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:54:40,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:54:40,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:54:42,328.328 INFO    ] ================================================
[2026-06-05 09:54:42,343.343 INFO    ] Launching Daemon at Fri Jun  5 09:54:42 IST 2026
[2026-06-05 09:54:42,354.354 INFO    ] ================================================
[2026-06-05 09:54:42,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:54:42
[2026-06-05 09:54:43,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:54:43,800.800 INFO    ] Initializing speech engine...
[2026-06-05 09:54:43,824.824 INFO    ] 2026-06-05 09:54:43
[2026-06-05 09:54:44,101.101 INFO    ] 2026-06-05 09:54:44
[2026-06-05 09:54:44,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:54:44,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:54:44,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:54:44,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:54:44,477.477 INFO    ] time= 05/06/2026 09:54:44
[2026-06-05 09:54:44,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:54:44,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:54:44,601.601 INFO    ] No existing commands found in stream
[2026-06-05 09:54:49,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:54:49,616.616 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 09:54:50,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:54:50,684.684 INFO    ] Checking for system updates...
[2026-06-05 09:54:50,720.720 INFO    ] 200
[2026-06-05 09:54:50,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:50,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:54:50,784.784 INFO    ] No update needed
[2026-06-05 09:54:50,787.787 INFO    ] Checking for camera pi updates...
[2026-06-05 09:54:50,820.820 INFO    ] 200
[2026-06-05 09:54:50,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:54:50,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:54:50,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:54:50,905.905 INFO    ] No camera update needed
[2026-06-05 09:54:50,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:54:50,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:54:50,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:54:50,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:54:52,963.963 INFO    ] ================================================
[2026-06-05 09:54:52,978.978 INFO    ] Launching Daemon at Fri Jun  5 09:54:52 IST 2026
[2026-06-05 09:54:52,989.989 INFO    ] ================================================
[2026-06-05 09:54:53,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:54:53
[2026-06-05 09:54:54,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:54:54,584.584 INFO    ] Initializing speech engine...
[2026-06-05 09:54:54,591.591 INFO    ] 2026-06-05 09:54:54
[2026-06-05 09:54:54,867.867 INFO    ] 2026-06-05 09:54:54
[2026-06-05 09:54:54,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:54:55,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:54:55,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:54:55,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:54:55,360.360 INFO    ] time= 05/06/2026 09:54:55
[2026-06-05 09:54:55,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:54:55,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:54:55,577.577 INFO    ] No existing commands found in stream
[2026-06-05 09:55:00,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:55:00,603.603 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 09:55:03,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:55:03,815.815 INFO    ] Checking for system updates...
[2026-06-05 09:55:03,858.858 INFO    ] 200
[2026-06-05 09:55:03,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:03,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:55:03,924.924 INFO    ] No update needed
[2026-06-05 09:55:03,927.927 INFO    ] Checking for camera pi updates...
[2026-06-05 09:55:03,962.962 INFO    ] 200
[2026-06-05 09:55:03,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:04,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:55:04,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:55:04,046.046 INFO    ] No camera update needed
[2026-06-05 09:55:04,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:55:04,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:55:04,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:55:04,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:55:06,101.101 INFO    ] ================================================
[2026-06-05 09:55:06,116.116 INFO    ] Launching Daemon at Fri Jun  5 09:55:06 IST 2026
[2026-06-05 09:55:06,127.127 INFO    ] ================================================
[2026-06-05 09:55:06,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:55:06
[2026-06-05 09:55:07,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:55:07,621.621 INFO    ] Initializing speech engine...
[2026-06-05 09:55:07,635.635 INFO    ] 2026-06-05 09:55:07
[2026-06-05 09:55:07,901.901 INFO    ] 2026-06-05 09:55:07
[2026-06-05 09:55:07,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:55:08,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:55:08,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:55:08,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:55:08,278.278 INFO    ] time= 05/06/2026 09:55:08
[2026-06-05 09:55:08,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:55:08,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:55:08,469.469 INFO    ] No existing commands found in stream
[2026-06-05 09:55:13,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:55:13,492.492 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 09:55:14,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:55:14,100.100 INFO    ] Checking for system updates...
[2026-06-05 09:55:14,136.136 INFO    ] 200
[2026-06-05 09:55:14,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:14,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:55:14,193.193 INFO    ] No update needed
[2026-06-05 09:55:14,196.196 INFO    ] Checking for camera pi updates...
[2026-06-05 09:55:14,229.229 INFO    ] 200
[2026-06-05 09:55:14,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:14,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:55:14,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:55:14,322.322 INFO    ] No camera update needed
[2026-06-05 09:55:14,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:55:14,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:55:14,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:55:14,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:55:16,380.380 INFO    ] ================================================
[2026-06-05 09:55:16,395.395 INFO    ] Launching Daemon at Fri Jun  5 09:55:16 IST 2026
[2026-06-05 09:55:16,406.406 INFO    ] ================================================
[2026-06-05 09:55:16,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:55:16
[2026-06-05 09:55:17,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:55:17,967.967 INFO    ] Initializing speech engine...
[2026-06-05 09:55:17,981.981 INFO    ] 2026-06-05 09:55:17
[2026-06-05 09:55:18,251.251 INFO    ] 2026-06-05 09:55:18
[2026-06-05 09:55:18,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:55:18,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:55:18,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:55:18,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:55:18,759.759 INFO    ] time= 05/06/2026 09:55:18
[2026-06-05 09:55:18,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:55:18,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:55:18,940.940 INFO    ] No existing commands found in stream
[2026-06-05 09:55:23,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:55:23,974.974 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 09:55:24,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:55:24,509.509 INFO    ] Checking for system updates...
[2026-06-05 09:55:24,545.545 INFO    ] 200
[2026-06-05 09:55:24,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:24,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:55:24,604.604 INFO    ] No update needed
[2026-06-05 09:55:24,606.606 INFO    ] Checking for camera pi updates...
[2026-06-05 09:55:24,641.641 INFO    ] 200
[2026-06-05 09:55:24,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:24,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:55:24,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:55:24,730.730 INFO    ] No camera update needed
[2026-06-05 09:55:24,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:55:24,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:55:24,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:55:24,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:55:26,785.785 INFO    ] ================================================
[2026-06-05 09:55:26,800.800 INFO    ] Launching Daemon at Fri Jun  5 09:55:26 IST 2026
[2026-06-05 09:55:26,811.811 INFO    ] ================================================
[2026-06-05 09:55:27,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:55:27
[2026-06-05 09:55:27,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:55:28,230.230 INFO    ] Initializing speech engine...
[2026-06-05 09:55:28,243.243 INFO    ] 2026-06-05 09:55:28
[2026-06-05 09:55:28,510.510 INFO    ] 2026-06-05 09:55:28
[2026-06-05 09:55:28,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:55:29,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:55:29,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:55:30,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:55:30,041.041 INFO    ] time= 05/06/2026 09:55:30
[2026-06-05 09:55:30,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:55:30,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:55:30,176.176 INFO    ] No existing commands found in stream
[2026-06-05 09:55:35,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:55:35,203.203 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 09:55:37,772.772 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:55:37,774.774 INFO    ] Checking for system updates...
[2026-06-05 09:55:37,811.811 INFO    ] 200
[2026-06-05 09:55:37,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:37,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:55:37,870.870 INFO    ] No update needed
[2026-06-05 09:55:37,872.872 INFO    ] Checking for camera pi updates...
[2026-06-05 09:55:37,913.913 INFO    ] 200
[2026-06-05 09:55:37,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:37,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:55:38,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:55:38,007.007 INFO    ] No camera update needed
[2026-06-05 09:55:38,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:55:38,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:55:38,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:55:38,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:55:40,061.061 INFO    ] ================================================
[2026-06-05 09:55:40,076.076 INFO    ] Launching Daemon at Fri Jun  5 09:55:40 IST 2026
[2026-06-05 09:55:40,087.087 INFO    ] ================================================
[2026-06-05 09:55:40,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:55:40
[2026-06-05 09:55:41,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:55:41,496.496 INFO    ] Initializing speech engine...
[2026-06-05 09:55:41,516.516 INFO    ] 2026-06-05 09:55:41
[2026-06-05 09:55:41,762.762 INFO    ] 2026-06-05 09:55:41
[2026-06-05 09:55:41,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:55:42,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:55:42,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:55:42,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:55:42,233.233 INFO    ] time= 05/06/2026 09:55:42
[2026-06-05 09:55:42,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:55:42,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:55:42,474.474 INFO    ] No existing commands found in stream
[2026-06-05 09:55:47,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:55:47,491.491 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 09:55:51,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:55:51,338.338 INFO    ] Checking for system updates...
[2026-06-05 09:55:51,379.379 INFO    ] 200
[2026-06-05 09:55:51,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:51,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:55:51,445.445 INFO    ] No update needed
[2026-06-05 09:55:51,448.448 INFO    ] Checking for camera pi updates...
[2026-06-05 09:55:51,487.487 INFO    ] 200
[2026-06-05 09:55:51,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:55:51,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:55:51,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:55:51,586.586 INFO    ] No camera update needed
[2026-06-05 09:55:51,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:55:51,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:55:51,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:55:51,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:55:53,644.644 INFO    ] ================================================
[2026-06-05 09:55:53,659.659 INFO    ] Launching Daemon at Fri Jun  5 09:55:53 IST 2026
[2026-06-05 09:55:53,670.670 INFO    ] ================================================
[2026-06-05 09:55:54,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:55:54
[2026-06-05 09:55:54,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:55:55,070.070 INFO    ] Initializing speech engine...
[2026-06-05 09:55:55,094.094 INFO    ] 2026-06-05 09:55:55
[2026-06-05 09:55:55,350.350 INFO    ] 2026-06-05 09:55:55
[2026-06-05 09:55:55,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:55:55,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:55:55,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:55:55,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:55:55,826.826 INFO    ] time= 05/06/2026 09:55:55
[2026-06-05 09:55:55,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:55:55,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:55:55,988.988 INFO    ] No existing commands found in stream
[2026-06-05 09:56:01,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:56:01,010.010 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 09:56:03,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:56:03,672.672 INFO    ] Checking for system updates...
[2026-06-05 09:56:03,715.715 INFO    ] 200
[2026-06-05 09:56:03,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:03,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:56:03,774.774 INFO    ] No update needed
[2026-06-05 09:56:03,777.777 INFO    ] Checking for camera pi updates...
[2026-06-05 09:56:03,815.815 INFO    ] 200
[2026-06-05 09:56:03,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:03,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:56:03,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:56:03,892.892 INFO    ] No camera update needed
[2026-06-05 09:56:03,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:56:03,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:56:03,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:56:03,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:56:05,959.959 INFO    ] ================================================
[2026-06-05 09:56:05,974.974 INFO    ] Launching Daemon at Fri Jun  5 09:56:05 IST 2026
[2026-06-05 09:56:05,985.985 INFO    ] ================================================
[2026-06-05 09:56:06,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:56:06
[2026-06-05 09:56:07,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:56:07,451.451 INFO    ] Initializing speech engine...
[2026-06-05 09:56:07,461.461 INFO    ] 2026-06-05 09:56:07
[2026-06-05 09:56:07,710.710 INFO    ] 2026-06-05 09:56:07
[2026-06-05 09:56:07,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:56:08,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:56:08,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:56:08,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:56:08,213.213 INFO    ] time= 05/06/2026 09:56:08
[2026-06-05 09:56:08,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:56:08,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:56:08,429.429 INFO    ] No existing commands found in stream
[2026-06-05 09:56:13,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:56:13,447.447 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 09:56:15,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:56:15,959.959 INFO    ] Checking for system updates...
[2026-06-05 09:56:15,996.996 INFO    ] 200
[2026-06-05 09:56:15,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:16,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:56:16,064.064 INFO    ] No update needed
[2026-06-05 09:56:16,066.066 INFO    ] Checking for camera pi updates...
[2026-06-05 09:56:16,103.103 INFO    ] 200
[2026-06-05 09:56:16,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:16,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:56:16,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:56:16,292.292 INFO    ] No camera update needed
[2026-06-05 09:56:16,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:56:16,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:56:16,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:56:16,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:56:18,349.349 INFO    ] ================================================
[2026-06-05 09:56:18,364.364 INFO    ] Launching Daemon at Fri Jun  5 09:56:18 IST 2026
[2026-06-05 09:56:18,375.375 INFO    ] ================================================
[2026-06-05 09:56:18,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:56:18
[2026-06-05 09:56:19,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:56:19,834.834 INFO    ] Initializing speech engine...
[2026-06-05 09:56:19,843.843 INFO    ] 2026-06-05 09:56:19
[2026-06-05 09:56:20,102.102 INFO    ] 2026-06-05 09:56:20
[2026-06-05 09:56:20,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:56:20,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:56:20,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:56:20,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:56:20,574.574 INFO    ] time= 05/06/2026 09:56:20
[2026-06-05 09:56:20,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:56:20,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:56:20,752.752 INFO    ] No existing commands found in stream
[2026-06-05 09:56:25,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:56:25,765.765 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 09:56:28,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:56:28,090.090 INFO    ] Checking for system updates...
[2026-06-05 09:56:28,126.126 INFO    ] 200
[2026-06-05 09:56:28,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:28,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:56:28,193.193 INFO    ] No update needed
[2026-06-05 09:56:28,196.196 INFO    ] Checking for camera pi updates...
[2026-06-05 09:56:28,229.229 INFO    ] 200
[2026-06-05 09:56:28,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:28,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:56:28,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:56:28,333.333 INFO    ] No camera update needed
[2026-06-05 09:56:28,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:56:28,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:56:28,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:56:28,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:56:30,389.389 INFO    ] ================================================
[2026-06-05 09:56:30,404.404 INFO    ] Launching Daemon at Fri Jun  5 09:56:30 IST 2026
[2026-06-05 09:56:30,415.415 INFO    ] ================================================
[2026-06-05 09:56:30,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:56:30
[2026-06-05 09:56:31,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:56:31,874.874 INFO    ] Initializing speech engine...
[2026-06-05 09:56:31,880.880 INFO    ] 2026-06-05 09:56:31
[2026-06-05 09:56:32,195.195 INFO    ] 2026-06-05 09:56:32
[2026-06-05 09:56:32,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:56:32,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:56:32,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:56:32,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:56:32,584.584 INFO    ] time= 05/06/2026 09:56:32
[2026-06-05 09:56:32,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:56:32,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:56:32,673.673 INFO    ] No existing commands found in stream
[2026-06-05 09:56:37,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:56:37,688.688 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 09:56:38,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:56:38,247.247 INFO    ] Checking for system updates...
[2026-06-05 09:56:38,283.283 INFO    ] 200
[2026-06-05 09:56:38,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:38,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:56:38,341.341 INFO    ] No update needed
[2026-06-05 09:56:38,343.343 INFO    ] Checking for camera pi updates...
[2026-06-05 09:56:38,377.377 INFO    ] 200
[2026-06-05 09:56:38,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:38,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:56:38,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:56:38,473.473 INFO    ] No camera update needed
[2026-06-05 09:56:38,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:56:38,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:56:38,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:56:38,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:56:40,528.528 INFO    ] ================================================
[2026-06-05 09:56:40,543.543 INFO    ] Launching Daemon at Fri Jun  5 09:56:40 IST 2026
[2026-06-05 09:56:40,554.554 INFO    ] ================================================
[2026-06-05 09:56:41,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:56:41
[2026-06-05 09:56:41,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:56:42,027.027 INFO    ] Initializing speech engine...
[2026-06-05 09:56:42,037.037 INFO    ] 2026-06-05 09:56:42
[2026-06-05 09:56:42,284.284 INFO    ] 2026-06-05 09:56:42
[2026-06-05 09:56:42,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:56:42,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:56:42,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:56:42,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:56:42,735.735 INFO    ] time= 05/06/2026 09:56:42
[2026-06-05 09:56:42,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:56:42,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:56:42,968.968 INFO    ] No existing commands found in stream
[2026-06-05 09:56:47,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:56:47,993.993 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 09:56:48,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:56:48,677.677 INFO    ] Checking for system updates...
[2026-06-05 09:56:48,713.713 INFO    ] 200
[2026-06-05 09:56:48,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:48,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:56:48,771.771 INFO    ] No update needed
[2026-06-05 09:56:48,773.773 INFO    ] Checking for camera pi updates...
[2026-06-05 09:56:48,813.813 INFO    ] 200
[2026-06-05 09:56:48,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:56:48,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:56:48,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:56:48,909.909 INFO    ] No camera update needed
[2026-06-05 09:56:48,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:56:48,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:56:48,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:56:48,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:56:50,964.964 INFO    ] ================================================
[2026-06-05 09:56:50,979.979 INFO    ] Launching Daemon at Fri Jun  5 09:56:50 IST 2026
[2026-06-05 09:56:50,989.989 INFO    ] ================================================
[2026-06-05 09:56:51,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:56:51
[2026-06-05 09:56:52,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:56:52,398.398 INFO    ] Initializing speech engine...
[2026-06-05 09:56:52,414.414 INFO    ] 2026-06-05 09:56:52
[2026-06-05 09:56:52,695.695 INFO    ] 2026-06-05 09:56:52
[2026-06-05 09:56:52,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:56:52,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:56:52,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:56:53,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:56:53,071.071 INFO    ] time= 05/06/2026 09:56:53
[2026-06-05 09:56:53,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:56:53,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:56:53,193.193 INFO    ] No existing commands found in stream
[2026-06-05 09:56:58,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:56:58,214.214 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 09:57:00,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:57:00,293.293 INFO    ] Checking for system updates...
[2026-06-05 09:57:00,328.328 INFO    ] 200
[2026-06-05 09:57:00,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:00,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:57:00,385.385 INFO    ] No update needed
[2026-06-05 09:57:00,388.388 INFO    ] Checking for camera pi updates...
[2026-06-05 09:57:00,425.425 INFO    ] 200
[2026-06-05 09:57:00,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:00,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:57:00,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:57:00,528.528 INFO    ] No camera update needed
[2026-06-05 09:57:00,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:57:00,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:57:00,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:57:00,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:57:02,593.593 INFO    ] ================================================
[2026-06-05 09:57:02,610.610 INFO    ] Launching Daemon at Fri Jun  5 09:57:02 IST 2026
[2026-06-05 09:57:02,627.627 INFO    ] ================================================
[2026-06-05 09:57:03,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:57:03
[2026-06-05 09:57:03,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:57:04,175.175 INFO    ] Initializing speech engine...
[2026-06-05 09:57:04,183.183 INFO    ] 2026-06-05 09:57:04
[2026-06-05 09:57:04,476.476 INFO    ] 2026-06-05 09:57:04
[2026-06-05 09:57:04,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:57:04,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:57:04,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:57:04,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:57:04,824.824 INFO    ] time= 05/06/2026 09:57:04
[2026-06-05 09:57:04,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:57:04,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:57:04,966.966 INFO    ] No existing commands found in stream
[2026-06-05 09:57:09,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:57:09,988.988 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 09:57:13,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:57:13,164.164 INFO    ] Checking for system updates...
[2026-06-05 09:57:13,203.203 INFO    ] 200
[2026-06-05 09:57:13,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:13,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:57:13,261.261 INFO    ] No update needed
[2026-06-05 09:57:13,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 09:57:13,296.296 INFO    ] 200
[2026-06-05 09:57:13,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:13,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:57:13,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:57:13,393.393 INFO    ] No camera update needed
[2026-06-05 09:57:13,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:57:13,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:57:13,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:57:13,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:57:15,449.449 INFO    ] ================================================
[2026-06-05 09:57:15,465.465 INFO    ] Launching Daemon at Fri Jun  5 09:57:15 IST 2026
[2026-06-05 09:57:15,476.476 INFO    ] ================================================
[2026-06-05 09:57:16,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:57:16
[2026-06-05 09:57:16,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:57:16,901.901 INFO    ] Initializing speech engine...
[2026-06-05 09:57:16,910.910 INFO    ] 2026-06-05 09:57:16
[2026-06-05 09:57:17,202.202 INFO    ] 2026-06-05 09:57:17
[2026-06-05 09:57:17,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:57:17,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:57:17,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:57:17,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:57:17,619.619 INFO    ] time= 05/06/2026 09:57:17
[2026-06-05 09:57:17,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:57:17,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:57:17,779.779 INFO    ] No existing commands found in stream
[2026-06-05 09:57:22,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:57:22,807.807 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 09:57:27,215.215 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:57:27,218.218 INFO    ] Checking for system updates...
[2026-06-05 09:57:27,255.255 INFO    ] 200
[2026-06-05 09:57:27,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:27,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:57:27,319.319 INFO    ] No update needed
[2026-06-05 09:57:27,321.321 INFO    ] Checking for camera pi updates...
[2026-06-05 09:57:27,358.358 INFO    ] 200
[2026-06-05 09:57:27,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:27,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:57:27,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:57:27,458.458 INFO    ] No camera update needed
[2026-06-05 09:57:27,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:57:27,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:57:27,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:57:27,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:57:29,514.514 INFO    ] ================================================
[2026-06-05 09:57:29,530.530 INFO    ] Launching Daemon at Fri Jun  5 09:57:29 IST 2026
[2026-06-05 09:57:29,541.541 INFO    ] ================================================
[2026-06-05 09:57:30,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:57:30
[2026-06-05 09:57:30,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:57:31,018.018 INFO    ] Initializing speech engine...
[2026-06-05 09:57:31,031.031 INFO    ] 2026-06-05 09:57:31
[2026-06-05 09:57:31,294.294 INFO    ] 2026-06-05 09:57:31
[2026-06-05 09:57:31,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:57:31,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:57:31,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:57:31,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:57:31,675.675 INFO    ] time= 05/06/2026 09:57:31
[2026-06-05 09:57:31,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:57:31,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:57:31,849.849 INFO    ] No existing commands found in stream
[2026-06-05 09:57:36,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:57:36,882.882 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 09:57:38,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 09:57:38,880.880 INFO    ] Checking for system updates...
[2026-06-05 09:57:38,917.917 INFO    ] 200
[2026-06-05 09:57:38,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:38,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:57:38,988.988 INFO    ] No update needed
[2026-06-05 09:57:38,990.990 INFO    ] Checking for camera pi updates...
[2026-06-05 09:57:39,024.024 INFO    ] 200
[2026-06-05 09:57:39,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:39,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:57:39,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:57:39,115.115 INFO    ] No camera update needed
[2026-06-05 09:57:39,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:57:39,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:57:39,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:57:39,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:57:41,177.177 INFO    ] ================================================
[2026-06-05 09:57:41,192.192 INFO    ] Launching Daemon at Fri Jun  5 09:57:41 IST 2026
[2026-06-05 09:57:41,203.203 INFO    ] ================================================
[2026-06-05 09:57:41,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:57:41
[2026-06-05 09:57:42,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:57:42,658.658 INFO    ] Initializing speech engine...
[2026-06-05 09:57:42,682.682 INFO    ] 2026-06-05 09:57:42
[2026-06-05 09:57:42,964.964 INFO    ] 2026-06-05 09:57:42
[2026-06-05 09:57:43,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:57:43,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:57:43,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:57:43,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:57:43,319.319 INFO    ] time= 05/06/2026 09:57:43
[2026-06-05 09:57:43,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:57:43,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:57:43,400.400 INFO    ] No existing commands found in stream
[2026-06-05 09:57:48,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:57:48,413.413 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 09:57:51,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:57:51,454.454 INFO    ] Checking for system updates...
[2026-06-05 09:57:51,490.490 INFO    ] 200
[2026-06-05 09:57:51,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:51,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:57:51,554.554 INFO    ] No update needed
[2026-06-05 09:57:51,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 09:57:51,590.590 INFO    ] 200
[2026-06-05 09:57:51,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:57:51,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:57:51,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:57:51,680.680 INFO    ] No camera update needed
[2026-06-05 09:57:51,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:57:51,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:57:51,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:57:51,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:57:53,737.737 INFO    ] ================================================
[2026-06-05 09:57:53,752.752 INFO    ] Launching Daemon at Fri Jun  5 09:57:53 IST 2026
[2026-06-05 09:57:53,764.764 INFO    ] ================================================
[2026-06-05 09:57:54,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:57:54
[2026-06-05 09:57:54,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:57:55,178.178 INFO    ] Initializing speech engine...
[2026-06-05 09:57:55,193.193 INFO    ] 2026-06-05 09:57:55
[2026-06-05 09:57:55,459.459 INFO    ] 2026-06-05 09:57:55
[2026-06-05 09:57:55,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:57:55,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:57:55,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:57:55,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:57:55,803.803 INFO    ] time= 05/06/2026 09:57:55
[2026-06-05 09:57:55,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:57:55,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:57:55,923.923 INFO    ] No existing commands found in stream
[2026-06-05 09:58:00,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:58:00,956.956 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 09:58:03,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:58:03,283.283 INFO    ] Checking for system updates...
[2026-06-05 09:58:03,327.327 INFO    ] 200
[2026-06-05 09:58:03,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:03,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:58:03,418.418 INFO    ] No update needed
[2026-06-05 09:58:03,421.421 INFO    ] Checking for camera pi updates...
[2026-06-05 09:58:03,460.460 INFO    ] 200
[2026-06-05 09:58:03,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:03,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:58:03,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:58:03,548.548 INFO    ] No camera update needed
[2026-06-05 09:58:03,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:58:03,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:58:03,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:58:03,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:58:05,604.604 INFO    ] ================================================
[2026-06-05 09:58:05,620.620 INFO    ] Launching Daemon at Fri Jun  5 09:58:05 IST 2026
[2026-06-05 09:58:05,632.632 INFO    ] ================================================
[2026-06-05 09:58:06,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:58:06
[2026-06-05 09:58:06,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:58:07,123.123 INFO    ] Initializing speech engine...
[2026-06-05 09:58:07,133.133 INFO    ] 2026-06-05 09:58:07
[2026-06-05 09:58:07,396.396 INFO    ] 2026-06-05 09:58:07
[2026-06-05 09:58:07,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:58:07,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:58:07,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:58:07,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:58:07,787.787 INFO    ] time= 05/06/2026 09:58:07
[2026-06-05 09:58:07,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:58:07,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:58:07,902.902 INFO    ] No existing commands found in stream
[2026-06-05 09:58:12,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:58:12,919.919 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 09:58:15,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 09:58:15,232.232 INFO    ] Checking for system updates...
[2026-06-05 09:58:15,272.272 INFO    ] 200
[2026-06-05 09:58:15,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:15,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:58:15,329.329 INFO    ] No update needed
[2026-06-05 09:58:15,331.331 INFO    ] Checking for camera pi updates...
[2026-06-05 09:58:15,364.364 INFO    ] 200
[2026-06-05 09:58:15,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:15,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:58:15,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:58:15,458.458 INFO    ] No camera update needed
[2026-06-05 09:58:15,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:58:15,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:58:15,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:58:15,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:58:17,513.513 INFO    ] ================================================
[2026-06-05 09:58:17,529.529 INFO    ] Launching Daemon at Fri Jun  5 09:58:17 IST 2026
[2026-06-05 09:58:17,540.540 INFO    ] ================================================
[2026-06-05 09:58:18,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:58:18
[2026-06-05 09:58:18,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:58:18,955.955 INFO    ] Initializing speech engine...
[2026-06-05 09:58:18,980.980 INFO    ] 2026-06-05 09:58:18
[2026-06-05 09:58:19,253.253 INFO    ] 2026-06-05 09:58:19
[2026-06-05 09:58:19,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:58:19,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:58:19,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:58:19,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:58:19,653.653 INFO    ] time= 05/06/2026 09:58:19
[2026-06-05 09:58:19,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:58:19,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:58:19,762.762 INFO    ] No existing commands found in stream
[2026-06-05 09:58:24,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:58:24,777.777 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 09:58:27,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:58:27,304.304 INFO    ] Checking for system updates...
[2026-06-05 09:58:27,346.346 INFO    ] 200
[2026-06-05 09:58:27,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:27,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:58:27,406.406 INFO    ] No update needed
[2026-06-05 09:58:27,408.408 INFO    ] Checking for camera pi updates...
[2026-06-05 09:58:27,444.444 INFO    ] 200
[2026-06-05 09:58:27,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:27,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:58:27,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:58:27,647.647 INFO    ] No camera update needed
[2026-06-05 09:58:27,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:58:27,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:58:27,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:58:27,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:58:29,703.703 INFO    ] ================================================
[2026-06-05 09:58:29,718.718 INFO    ] Launching Daemon at Fri Jun  5 09:58:29 IST 2026
[2026-06-05 09:58:29,728.728 INFO    ] ================================================
[2026-06-05 09:58:30,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:58:30
[2026-06-05 09:58:30,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:58:31,141.141 INFO    ] Initializing speech engine...
[2026-06-05 09:58:31,157.157 INFO    ] 2026-06-05 09:58:31
[2026-06-05 09:58:31,441.441 INFO    ] 2026-06-05 09:58:31
[2026-06-05 09:58:31,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:58:31,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:58:31,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:58:31,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:58:32,023.023 INFO    ] time= 05/06/2026 09:58:31
[2026-06-05 09:58:32,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:58:32,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:58:32,173.173 INFO    ] No existing commands found in stream
[2026-06-05 09:58:37,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:58:37,201.201 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 09:58:40,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 09:58:40,607.607 INFO    ] Checking for system updates...
[2026-06-05 09:58:40,643.643 INFO    ] 200
[2026-06-05 09:58:40,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:40,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:58:40,702.702 INFO    ] No update needed
[2026-06-05 09:58:40,705.705 INFO    ] Checking for camera pi updates...
[2026-06-05 09:58:40,738.738 INFO    ] 200
[2026-06-05 09:58:40,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:40,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:58:40,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:58:40,843.843 INFO    ] No camera update needed
[2026-06-05 09:58:40,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:58:40,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:58:40,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:58:40,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:58:42,898.898 INFO    ] ================================================
[2026-06-05 09:58:42,913.913 INFO    ] Launching Daemon at Fri Jun  5 09:58:42 IST 2026
[2026-06-05 09:58:42,924.924 INFO    ] ================================================
[2026-06-05 09:58:43,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:58:43
[2026-06-05 09:58:44,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:58:44,343.343 INFO    ] Initializing speech engine...
[2026-06-05 09:58:44,349.349 INFO    ] 2026-06-05 09:58:44
[2026-06-05 09:58:44,644.644 INFO    ] 2026-06-05 09:58:44
[2026-06-05 09:58:44,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:58:44,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:58:44,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:58:45,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:58:45,059.059 INFO    ] time= 05/06/2026 09:58:45
[2026-06-05 09:58:45,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:58:45,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:58:45,148.148 INFO    ] No existing commands found in stream
[2026-06-05 09:58:50,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:58:50,161.161 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 09:58:54,477.477 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:58:54,480.480 INFO    ] Checking for system updates...
[2026-06-05 09:58:54,519.519 INFO    ] 200
[2026-06-05 09:58:54,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:54,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:58:54,583.583 INFO    ] No update needed
[2026-06-05 09:58:54,585.585 INFO    ] Checking for camera pi updates...
[2026-06-05 09:58:54,618.618 INFO    ] 200
[2026-06-05 09:58:54,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:58:54,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:58:54,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:58:54,718.718 INFO    ] No camera update needed
[2026-06-05 09:58:54,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:58:54,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:58:54,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:58:54,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:58:56,776.776 INFO    ] ================================================
[2026-06-05 09:58:56,791.791 INFO    ] Launching Daemon at Fri Jun  5 09:58:56 IST 2026
[2026-06-05 09:58:56,802.802 INFO    ] ================================================
[2026-06-05 09:58:57,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:58:57
[2026-06-05 09:58:57,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:58:58,220.220 INFO    ] Initializing speech engine...
[2026-06-05 09:58:58,229.229 INFO    ] 2026-06-05 09:58:58
[2026-06-05 09:58:58,523.523 INFO    ] 2026-06-05 09:58:58
[2026-06-05 09:58:58,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:58:59,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:58:59,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:59:00,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:59:00,037.037 INFO    ] time= 05/06/2026 09:59:00
[2026-06-05 09:59:00,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:59:00,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:59:00,118.118 INFO    ] No existing commands found in stream
[2026-06-05 09:59:05,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:59:05,132.132 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 09:59:08,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:59:08,337.337 INFO    ] Checking for system updates...
[2026-06-05 09:59:08,377.377 INFO    ] 200
[2026-06-05 09:59:08,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:08,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:59:08,446.446 INFO    ] No update needed
[2026-06-05 09:59:08,448.448 INFO    ] Checking for camera pi updates...
[2026-06-05 09:59:08,483.483 INFO    ] 200
[2026-06-05 09:59:08,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:08,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:59:08,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:59:08,577.577 INFO    ] No camera update needed
[2026-06-05 09:59:08,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:59:08,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:59:08,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:59:08,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:59:10,635.635 INFO    ] ================================================
[2026-06-05 09:59:10,650.650 INFO    ] Launching Daemon at Fri Jun  5 09:59:10 IST 2026
[2026-06-05 09:59:10,662.662 INFO    ] ================================================
[2026-06-05 09:59:11,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:59:11
[2026-06-05 09:59:11,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:59:12,244.244 INFO    ] Initializing speech engine...
[2026-06-05 09:59:12,253.253 INFO    ] 2026-06-05 09:59:12
[2026-06-05 09:59:12,521.521 INFO    ] 2026-06-05 09:59:12
[2026-06-05 09:59:12,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:59:12,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:59:12,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:59:13,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:59:13,067.067 INFO    ] time= 05/06/2026 09:59:13
[2026-06-05 09:59:13,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:59:13,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:59:13,221.221 INFO    ] No existing commands found in stream
[2026-06-05 09:59:18,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:59:18,240.240 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 09:59:20,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 09:59:20,020.020 INFO    ] Checking for system updates...
[2026-06-05 09:59:20,058.058 INFO    ] 200
[2026-06-05 09:59:20,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:20,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:59:20,123.123 INFO    ] No update needed
[2026-06-05 09:59:20,126.126 INFO    ] Checking for camera pi updates...
[2026-06-05 09:59:20,161.161 INFO    ] 200
[2026-06-05 09:59:20,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:20,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:59:20,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:59:20,257.257 INFO    ] No camera update needed
[2026-06-05 09:59:20,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:59:20,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:59:20,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:59:20,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:59:22,316.316 INFO    ] ================================================
[2026-06-05 09:59:22,331.331 INFO    ] Launching Daemon at Fri Jun  5 09:59:22 IST 2026
[2026-06-05 09:59:22,342.342 INFO    ] ================================================
[2026-06-05 09:59:22,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:59:22
[2026-06-05 09:59:23,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:59:23,777.777 INFO    ] Initializing speech engine...
[2026-06-05 09:59:23,786.786 INFO    ] 2026-06-05 09:59:23
[2026-06-05 09:59:24,042.042 INFO    ] 2026-06-05 09:59:24
[2026-06-05 09:59:24,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:59:24,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:59:24,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:59:24,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:59:24,469.469 INFO    ] time= 05/06/2026 09:59:24
[2026-06-05 09:59:24,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:59:24,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:59:24,735.735 INFO    ] No existing commands found in stream
[2026-06-05 09:59:29,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:59:29,753.753 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 09:59:31,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 09:59:31,838.838 INFO    ] Checking for system updates...
[2026-06-05 09:59:31,888.888 INFO    ] 200
[2026-06-05 09:59:31,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:31,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:59:31,968.968 INFO    ] No update needed
[2026-06-05 09:59:31,972.972 INFO    ] Checking for camera pi updates...
[2026-06-05 09:59:32,010.010 INFO    ] 200
[2026-06-05 09:59:32,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:32,063.063 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:59:32,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 09:59:32,102.102 INFO    ] No camera update needed
[2026-06-05 09:59:32,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:59:32,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:59:32,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:59:32,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:59:34,166.166 INFO    ] ================================================
[2026-06-05 09:59:34,181.181 INFO    ] Launching Daemon at Fri Jun  5 09:59:34 IST 2026
[2026-06-05 09:59:34,191.191 INFO    ] ================================================
[2026-06-05 09:59:34,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:59:34
[2026-06-05 09:59:35,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:59:35,652.652 INFO    ] Initializing speech engine...
[2026-06-05 09:59:35,659.659 INFO    ] 2026-06-05 09:59:35
[2026-06-05 09:59:35,905.905 INFO    ] 2026-06-05 09:59:35
[2026-06-05 09:59:35,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:59:36,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:59:36,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:59:36,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:59:36,282.282 INFO    ] time= 05/06/2026 09:59:36
[2026-06-05 09:59:36,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:59:36,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:59:36,466.466 INFO    ] No existing commands found in stream
[2026-06-05 09:59:41,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:59:41,489.489 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 09:59:42,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:59:42,302.302 INFO    ] Checking for system updates...
[2026-06-05 09:59:42,341.341 INFO    ] 200
[2026-06-05 09:59:42,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:42,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:59:42,405.405 INFO    ] No update needed
[2026-06-05 09:59:42,408.408 INFO    ] Checking for camera pi updates...
[2026-06-05 09:59:42,442.442 INFO    ] 200
[2026-06-05 09:59:42,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:42,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:59:42,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:59:42,541.541 INFO    ] No camera update needed
[2026-06-05 09:59:42,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:59:42,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:59:42,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:59:42,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:59:44,599.599 INFO    ] ================================================
[2026-06-05 09:59:44,614.614 INFO    ] Launching Daemon at Fri Jun  5 09:59:44 IST 2026
[2026-06-05 09:59:44,625.625 INFO    ] ================================================
[2026-06-05 09:59:45,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:59:45
[2026-06-05 09:59:45,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:59:46,088.088 INFO    ] Initializing speech engine...
[2026-06-05 09:59:46,095.095 INFO    ] 2026-06-05 09:59:46
[2026-06-05 09:59:46,342.342 INFO    ] 2026-06-05 09:59:46
[2026-06-05 09:59:46,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 09:59:46,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 09:59:46,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 09:59:46,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 09:59:46,819.819 INFO    ] time= 05/06/2026 09:59:46
[2026-06-05 09:59:46,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 09:59:46,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 09:59:47,048.048 INFO    ] No existing commands found in stream
[2026-06-05 09:59:52,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 09:59:52,067.067 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 09:59:55,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 09:59:55,325.325 INFO    ] Checking for system updates...
[2026-06-05 09:59:55,361.361 INFO    ] 200
[2026-06-05 09:59:55,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:55,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:59:55,422.422 INFO    ] No update needed
[2026-06-05 09:59:55,424.424 INFO    ] Checking for camera pi updates...
[2026-06-05 09:59:55,458.458 INFO    ] 200
[2026-06-05 09:59:55,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 09:59:55,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 09:59:55,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 09:59:55,548.548 INFO    ] No camera update needed
[2026-06-05 09:59:55,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-05 09:59:55,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 09:59:55,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 09:59:55,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 09:59:57,604.604 INFO    ] ================================================
[2026-06-05 09:59:57,620.620 INFO    ] Launching Daemon at Fri Jun  5 09:59:57 IST 2026
[2026-06-05 09:59:57,631.631 INFO    ] ================================================
[2026-06-05 09:59:58,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 09:59:58
[2026-06-05 09:59:58,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 09:59:59,138.138 INFO    ] Initializing speech engine...
[2026-06-05 09:59:59,145.145 INFO    ] 2026-06-05 09:59:59
[2026-06-05 09:59:59,436.436 INFO    ] 2026-06-05 09:59:59
[2026-06-05 09:59:59,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:00:00,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:00:00,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:00:00,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:00:00,357.357 INFO    ] time= 05/06/2026 10:00:00
[2026-06-05 10:00:00,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:00:00,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:00:00,686.686 INFO    ] No existing commands found in stream
[2026-06-05 10:00:05,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:00:05,720.720 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 10:00:09,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:00:09,686.686 INFO    ] Checking for system updates...
[2026-06-05 10:00:09,729.729 INFO    ] 200
[2026-06-05 10:00:09,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:00:09,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:00:09,793.793 INFO    ] No update needed
[2026-06-05 10:00:09,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 10:00:09,834.834 INFO    ] 200
[2026-06-05 10:00:09,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:00:09,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:00:09,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:00:09,938.938 INFO    ] No camera update needed
[2026-06-05 10:00:09,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:00:09,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:00:09,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:00:09,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:00:12,995.995 INFO    ] ================================================
[2026-06-05 10:00:12,011.011 INFO    ] Launching Daemon at Fri Jun  5 10:00:12 IST 2026
[2026-06-05 10:00:12,022.022 INFO    ] ================================================
[2026-06-05 10:00:12,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:00:12
[2026-06-05 10:00:13,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:00:13,574.574 INFO    ] Initializing speech engine...
[2026-06-05 10:00:13,579.579 INFO    ] 2026-06-05 10:00:13
[2026-06-05 10:00:13,841.841 INFO    ] 2026-06-05 10:00:13
[2026-06-05 10:00:13,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:00:14,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:00:14,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:00:14,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:00:14,408.408 INFO    ] time= 05/06/2026 10:00:14
[2026-06-05 10:00:14,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:00:14,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:00:14,591.591 INFO    ] No existing commands found in stream
[2026-06-05 10:00:19,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:00:19,626.626 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 10:00:21,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:00:21,340.340 INFO    ] Checking for system updates...
[2026-06-05 10:00:21,379.379 INFO    ] 200
[2026-06-05 10:00:21,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:00:21,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:00:21,439.439 INFO    ] No update needed
[2026-06-05 10:00:21,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 10:00:21,482.482 INFO    ] 200
[2026-06-05 10:00:21,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:00:21,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:00:21,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:00:21,581.581 INFO    ] No camera update needed
[2026-06-05 10:00:21,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:00:21,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:00:21,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:00:21,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:00:23,642.642 INFO    ] ================================================
[2026-06-05 10:00:23,658.658 INFO    ] Launching Daemon at Fri Jun  5 10:00:23 IST 2026
[2026-06-05 10:00:23,670.670 INFO    ] ================================================
[2026-06-05 10:00:24,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:00:24
[2026-06-05 10:00:24,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:00:25,316.316 INFO    ] Initializing speech engine...
[2026-06-05 10:00:25,330.330 INFO    ] 2026-06-05 10:00:25
[2026-06-05 10:00:25,654.654 INFO    ] 2026-06-05 10:00:25
[2026-06-05 10:00:25,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:00:25,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:00:25,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:00:26,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:00:26,131.131 INFO    ] time= 05/06/2026 10:00:26
[2026-06-05 10:00:26,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:00:26,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:00:26,300.300 INFO    ] No existing commands found in stream
[2026-06-05 10:00:31,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:00:31,323.323 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 10:00:35,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:00:35,224.224 INFO    ] Checking for system updates...
[2026-06-05 10:00:35,260.260 INFO    ] 200
[2026-06-05 10:00:35,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:00:35,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:00:35,319.319 INFO    ] No update needed
[2026-06-05 10:00:35,321.321 INFO    ] Checking for camera pi updates...
[2026-06-05 10:00:35,360.360 INFO    ] 200
[2026-06-05 10:00:35,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:00:35,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:00:35,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:00:35,451.451 INFO    ] No camera update needed
[2026-06-05 10:00:35,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:00:35,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:00:35,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:00:35,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:00:37,508.508 INFO    ] ================================================
[2026-06-05 10:00:37,523.523 INFO    ] Launching Daemon at Fri Jun  5 10:00:37 IST 2026
[2026-06-05 10:00:37,534.534 INFO    ] ================================================
[2026-06-05 10:00:38,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:00:38
[2026-06-05 10:00:38,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:00:38,955.955 INFO    ] Initializing speech engine...
[2026-06-05 10:00:38,961.961 INFO    ] 2026-06-05 10:00:38
[2026-06-05 10:00:39,262.262 INFO    ] 2026-06-05 10:00:39
[2026-06-05 10:00:39,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:00:39,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:00:39,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:00:39,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:00:39,655.655 INFO    ] time= 05/06/2026 10:00:39
[2026-06-05 10:00:39,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:00:39,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:00:39,788.788 INFO    ] No existing commands found in stream
[2026-06-05 10:00:44,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:00:44,802.802 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 10:00:45,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:00:45,628.628 INFO    ] Checking for system updates...
[2026-06-05 10:00:45,664.664 INFO    ] 200
[2026-06-05 10:00:45,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:00:45,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:00:45,722.722 INFO    ] No update needed
[2026-06-05 10:00:45,725.725 INFO    ] Checking for camera pi updates...
[2026-06-05 10:00:45,758.758 INFO    ] 200
[2026-06-05 10:00:45,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:00:45,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:00:45,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:00:45,864.864 INFO    ] No camera update needed
[2026-06-05 10:00:45,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:00:45,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:00:45,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:00:45,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:00:47,921.921 INFO    ] ================================================
[2026-06-05 10:00:47,937.937 INFO    ] Launching Daemon at Fri Jun  5 10:00:47 IST 2026
[2026-06-05 10:00:47,949.949 INFO    ] ================================================
[2026-06-05 10:00:48,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:00:48
[2026-06-05 10:00:49,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:00:49,445.445 INFO    ] Initializing speech engine...
[2026-06-05 10:00:49,451.451 INFO    ] 2026-06-05 10:00:49
[2026-06-05 10:00:49,735.735 INFO    ] 2026-06-05 10:00:49
[2026-06-05 10:00:49,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:00:50,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:00:50,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:00:50,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:00:50,221.221 INFO    ] time= 05/06/2026 10:00:50
[2026-06-05 10:00:50,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:00:50,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:00:50,399.399 INFO    ] No existing commands found in stream
[2026-06-05 10:00:55,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:00:55,419.419 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 10:01:00,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:01:00,267.267 INFO    ] Checking for system updates...
[2026-06-05 10:01:00,308.308 INFO    ] 200
[2026-06-05 10:01:00,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:00,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:01:00,374.374 INFO    ] No update needed
[2026-06-05 10:01:00,378.378 INFO    ] Checking for camera pi updates...
[2026-06-05 10:01:00,414.414 INFO    ] 200
[2026-06-05 10:01:00,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:00,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:01:00,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:01:00,518.518 INFO    ] No camera update needed
[2026-06-05 10:01:00,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:01:00,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:01:00,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:01:00,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:01:02,576.576 INFO    ] ================================================
[2026-06-05 10:01:02,596.596 INFO    ] Launching Daemon at Fri Jun  5 10:01:02 IST 2026
[2026-06-05 10:01:02,610.610 INFO    ] ================================================
[2026-06-05 10:01:03,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:01:03
[2026-06-05 10:01:03,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:01:04,280.280 INFO    ] Initializing speech engine...
[2026-06-05 10:01:04,288.288 INFO    ] 2026-06-05 10:01:04
[2026-06-05 10:01:04,594.594 INFO    ] 2026-06-05 10:01:04
[2026-06-05 10:01:04,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:01:04,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:01:04,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:01:05,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:01:05,173.173 INFO    ] time= 05/06/2026 10:01:05
[2026-06-05 10:01:05,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:01:05,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:01:05,278.278 INFO    ] No existing commands found in stream
[2026-06-05 10:01:10,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:01:10,307.307 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 10:01:13,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:01:13,186.186 INFO    ] Checking for system updates...
[2026-06-05 10:01:13,222.222 INFO    ] 200
[2026-06-05 10:01:13,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:13,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:01:13,280.280 INFO    ] No update needed
[2026-06-05 10:01:13,282.282 INFO    ] Checking for camera pi updates...
[2026-06-05 10:01:13,316.316 INFO    ] 200
[2026-06-05 10:01:13,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:13,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:01:13,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:01:13,395.395 INFO    ] No camera update needed
[2026-06-05 10:01:13,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:01:13,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:01:13,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:01:13,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:01:15,449.449 INFO    ] ================================================
[2026-06-05 10:01:15,465.465 INFO    ] Launching Daemon at Fri Jun  5 10:01:15 IST 2026
[2026-06-05 10:01:15,479.479 INFO    ] ================================================
[2026-06-05 10:01:16,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:01:16
[2026-06-05 10:01:16,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:01:16,949.949 INFO    ] Initializing speech engine...
[2026-06-05 10:01:16,963.963 INFO    ] 2026-06-05 10:01:16
[2026-06-05 10:01:17,233.233 INFO    ] 2026-06-05 10:01:17
[2026-06-05 10:01:17,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:01:17,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:01:17,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:01:17,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:01:17,626.626 INFO    ] time= 05/06/2026 10:01:17
[2026-06-05 10:01:17,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:01:17,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:01:17,733.733 INFO    ] No existing commands found in stream
[2026-06-05 10:01:22,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:01:22,749.749 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 10:01:24,851.851 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:01:24,854.854 INFO    ] Checking for system updates...
[2026-06-05 10:01:24,908.908 INFO    ] 200
[2026-06-05 10:01:24,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:24,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:01:24,966.966 INFO    ] No update needed
[2026-06-05 10:01:24,969.969 INFO    ] Checking for camera pi updates...
[2026-06-05 10:01:25,006.006 INFO    ] 200
[2026-06-05 10:01:25,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:25,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:01:25,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:01:25,106.106 INFO    ] No camera update needed
[2026-06-05 10:01:25,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:01:25,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:01:25,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:01:25,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:01:27,161.161 INFO    ] ================================================
[2026-06-05 10:01:27,177.177 INFO    ] Launching Daemon at Fri Jun  5 10:01:27 IST 2026
[2026-06-05 10:01:27,189.189 INFO    ] ================================================
[2026-06-05 10:01:27,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:01:27
[2026-06-05 10:01:28,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:01:28,612.612 INFO    ] Initializing speech engine...
[2026-06-05 10:01:28,622.622 INFO    ] 2026-06-05 10:01:28
[2026-06-05 10:01:28,872.872 INFO    ] 2026-06-05 10:01:28
[2026-06-05 10:01:28,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:01:30,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:01:30,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:01:30,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:01:30,252.252 INFO    ] time= 05/06/2026 10:01:30
[2026-06-05 10:01:30,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:01:30,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:01:30,332.332 INFO    ] No existing commands found in stream
[2026-06-05 10:01:35,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:01:35,346.346 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 10:01:36,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:01:36,037.037 INFO    ] Checking for system updates...
[2026-06-05 10:01:36,074.074 INFO    ] 200
[2026-06-05 10:01:36,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:36,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:01:36,132.132 INFO    ] No update needed
[2026-06-05 10:01:36,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 10:01:36,171.171 INFO    ] 200
[2026-06-05 10:01:36,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:36,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:01:36,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:01:36,264.264 INFO    ] No camera update needed
[2026-06-05 10:01:36,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:01:36,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:01:36,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:01:36,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:01:38,320.320 INFO    ] ================================================
[2026-06-05 10:01:38,336.336 INFO    ] Launching Daemon at Fri Jun  5 10:01:38 IST 2026
[2026-06-05 10:01:38,350.350 INFO    ] ================================================
[2026-06-05 10:01:38,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:01:38
[2026-06-05 10:01:39,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:01:39,814.814 INFO    ] Initializing speech engine...
[2026-06-05 10:01:39,820.820 INFO    ] 2026-06-05 10:01:39
[2026-06-05 10:01:40,071.071 INFO    ] 2026-06-05 10:01:40
[2026-06-05 10:01:40,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:01:40,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:01:40,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:01:40,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:01:40,630.630 INFO    ] time= 05/06/2026 10:01:40
[2026-06-05 10:01:40,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:01:40,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:01:40,904.904 INFO    ] No existing commands found in stream
[2026-06-05 10:01:45,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:01:45,943.943 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 10:01:48,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:01:48,252.252 INFO    ] Checking for system updates...
[2026-06-05 10:01:48,289.289 INFO    ] 200
[2026-06-05 10:01:48,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:48,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:01:48,349.349 INFO    ] No update needed
[2026-06-05 10:01:48,352.352 INFO    ] Checking for camera pi updates...
[2026-06-05 10:01:48,390.390 INFO    ] 200
[2026-06-05 10:01:48,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:01:48,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:01:48,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:01:48,491.491 INFO    ] No camera update needed
[2026-06-05 10:01:48,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:01:48,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:01:48,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:01:48,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:01:50,547.547 INFO    ] ================================================
[2026-06-05 10:01:50,562.562 INFO    ] Launching Daemon at Fri Jun  5 10:01:50 IST 2026
[2026-06-05 10:01:50,573.573 INFO    ] ================================================
[2026-06-05 10:01:51,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:01:51
[2026-06-05 10:01:51,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:01:52,175.175 INFO    ] Initializing speech engine...
[2026-06-05 10:01:52,184.184 INFO    ] 2026-06-05 10:01:52
[2026-06-05 10:01:52,466.466 INFO    ] 2026-06-05 10:01:52
[2026-06-05 10:01:52,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:01:52,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:01:52,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:01:52,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:01:52,934.934 INFO    ] time= 05/06/2026 10:01:52
[2026-06-05 10:01:52,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:01:53,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:01:53,124.124 INFO    ] No existing commands found in stream
[2026-06-05 10:01:58,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:01:58,158.158 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 10:02:00,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:02:00,723.723 INFO    ] Checking for system updates...
[2026-06-05 10:02:00,759.759 INFO    ] 200
[2026-06-05 10:02:00,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:00,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:02:00,823.823 INFO    ] No update needed
[2026-06-05 10:02:00,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 10:02:00,863.863 INFO    ] 200
[2026-06-05 10:02:00,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:00,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:02:00,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:02:00,975.975 INFO    ] No camera update needed
[2026-06-05 10:02:00,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:02:00,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:02:00,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:02:00,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:02:03,045.045 INFO    ] ================================================
[2026-06-05 10:02:03,067.067 INFO    ] Launching Daemon at Fri Jun  5 10:02:03 IST 2026
[2026-06-05 10:02:03,083.083 INFO    ] ================================================
[2026-06-05 10:02:03,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:02:03
[2026-06-05 10:02:04,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:02:04,599.599 INFO    ] Initializing speech engine...
[2026-06-05 10:02:04,611.611 INFO    ] 2026-06-05 10:02:04
[2026-06-05 10:02:04,862.862 INFO    ] 2026-06-05 10:02:04
[2026-06-05 10:02:04,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:02:05,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:02:05,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:02:05,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:02:05,341.341 INFO    ] time= 05/06/2026 10:02:05
[2026-06-05 10:02:05,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:02:05,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:02:05,513.513 INFO    ] No existing commands found in stream
[2026-06-05 10:02:10,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:02:10,553.553 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 10:02:14,750.750 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:02:14,753.753 INFO    ] Checking for system updates...
[2026-06-05 10:02:14,790.790 INFO    ] 200
[2026-06-05 10:02:14,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:14,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:02:14,856.856 INFO    ] No update needed
[2026-06-05 10:02:14,859.859 INFO    ] Checking for camera pi updates...
[2026-06-05 10:02:14,894.894 INFO    ] 200
[2026-06-05 10:02:14,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:14,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:02:14,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:02:14,995.995 INFO    ] No camera update needed
[2026-06-05 10:02:14,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:02:15,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:02:15,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:02:15,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:02:17,059.059 INFO    ] ================================================
[2026-06-05 10:02:17,074.074 INFO    ] Launching Daemon at Fri Jun  5 10:02:17 IST 2026
[2026-06-05 10:02:17,086.086 INFO    ] ================================================
[2026-06-05 10:02:17,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:02:17
[2026-06-05 10:02:18,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:02:18,501.501 INFO    ] Initializing speech engine...
[2026-06-05 10:02:18,515.515 INFO    ] 2026-06-05 10:02:18
[2026-06-05 10:02:18,794.794 INFO    ] 2026-06-05 10:02:18
[2026-06-05 10:02:18,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:02:19,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:02:19,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:02:19,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:02:19,206.206 INFO    ] time= 05/06/2026 10:02:19
[2026-06-05 10:02:19,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:02:19,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:02:19,368.368 INFO    ] No existing commands found in stream
[2026-06-05 10:02:24,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:02:24,397.397 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 10:02:27,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:02:27,843.843 INFO    ] Checking for system updates...
[2026-06-05 10:02:27,879.879 INFO    ] 200
[2026-06-05 10:02:27,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:27,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:02:27,943.943 INFO    ] No update needed
[2026-06-05 10:02:27,946.946 INFO    ] Checking for camera pi updates...
[2026-06-05 10:02:27,979.979 INFO    ] 200
[2026-06-05 10:02:27,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:28,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:02:28,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:02:28,072.072 INFO    ] No camera update needed
[2026-06-05 10:02:28,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:02:28,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:02:28,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:02:28,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:02:30,128.128 INFO    ] ================================================
[2026-06-05 10:02:30,143.143 INFO    ] Launching Daemon at Fri Jun  5 10:02:30 IST 2026
[2026-06-05 10:02:30,155.155 INFO    ] ================================================
[2026-06-05 10:02:30,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:02:30
[2026-06-05 10:02:31,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:02:31,804.804 INFO    ] Initializing speech engine...
[2026-06-05 10:02:31,814.814 INFO    ] 2026-06-05 10:02:31
[2026-06-05 10:02:32,118.118 INFO    ] 2026-06-05 10:02:32
[2026-06-05 10:02:32,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:02:32,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:02:32,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:02:32,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:02:32,536.536 INFO    ] time= 05/06/2026 10:02:32
[2026-06-05 10:02:32,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:02:32,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:02:32,717.717 INFO    ] No existing commands found in stream
[2026-06-05 10:02:37,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:02:37,730.730 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 10:02:39,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:02:39,842.842 INFO    ] Checking for system updates...
[2026-06-05 10:02:39,882.882 INFO    ] 200
[2026-06-05 10:02:39,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:39,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:02:39,947.947 INFO    ] No update needed
[2026-06-05 10:02:39,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 10:02:39,988.988 INFO    ] 200
[2026-06-05 10:02:39,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:40,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:02:40,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:02:40,181.181 INFO    ] No camera update needed
[2026-06-05 10:02:40,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:02:40,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:02:40,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:02:40,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:02:42,242.242 INFO    ] ================================================
[2026-06-05 10:02:42,258.258 INFO    ] Launching Daemon at Fri Jun  5 10:02:42 IST 2026
[2026-06-05 10:02:42,269.269 INFO    ] ================================================
[2026-06-05 10:02:42,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:02:42
[2026-06-05 10:02:43,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:02:43,934.934 INFO    ] Initializing speech engine...
[2026-06-05 10:02:43,943.943 INFO    ] 2026-06-05 10:02:43
[2026-06-05 10:02:44,217.217 INFO    ] 2026-06-05 10:02:44
[2026-06-05 10:02:44,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:02:44,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:02:44,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:02:44,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:02:44,730.730 INFO    ] time= 05/06/2026 10:02:44
[2026-06-05 10:02:44,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:02:44,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:02:44,936.936 INFO    ] No existing commands found in stream
[2026-06-05 10:02:49,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:02:49,969.969 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 10:02:52,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:02:52,486.486 INFO    ] Checking for system updates...
[2026-06-05 10:02:52,527.527 INFO    ] 200
[2026-06-05 10:02:52,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:52,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:02:52,587.587 INFO    ] No update needed
[2026-06-05 10:02:52,589.589 INFO    ] Checking for camera pi updates...
[2026-06-05 10:02:52,624.624 INFO    ] 200
[2026-06-05 10:02:52,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:02:52,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:02:52,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:02:52,724.724 INFO    ] No camera update needed
[2026-06-05 10:02:52,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:02:52,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:02:52,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:02:52,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:02:54,782.782 INFO    ] ================================================
[2026-06-05 10:02:54,797.797 INFO    ] Launching Daemon at Fri Jun  5 10:02:54 IST 2026
[2026-06-05 10:02:54,808.808 INFO    ] ================================================
[2026-06-05 10:02:55,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:02:55
[2026-06-05 10:02:55,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:02:56,228.228 INFO    ] Initializing speech engine...
[2026-06-05 10:02:56,243.243 INFO    ] 2026-06-05 10:02:56
[2026-06-05 10:02:56,523.523 INFO    ] 2026-06-05 10:02:56
[2026-06-05 10:02:56,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:02:56,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:02:56,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:02:56,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:02:56,915.915 INFO    ] time= 05/06/2026 10:02:56
[2026-06-05 10:02:56,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:02:56,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:02:57,109.109 INFO    ] No existing commands found in stream
[2026-06-05 10:03:02,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:03:02,132.132 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 10:03:05,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:03:05,167.167 INFO    ] Checking for system updates...
[2026-06-05 10:03:05,206.206 INFO    ] 200
[2026-06-05 10:03:05,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:05,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:03:05,264.264 INFO    ] No update needed
[2026-06-05 10:03:05,266.266 INFO    ] Checking for camera pi updates...
[2026-06-05 10:03:05,304.304 INFO    ] 200
[2026-06-05 10:03:05,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:05,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:03:05,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:03:05,428.428 INFO    ] No camera update needed
[2026-06-05 10:03:05,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:03:05,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:03:05,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:03:05,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:03:07,484.484 INFO    ] ================================================
[2026-06-05 10:03:07,500.500 INFO    ] Launching Daemon at Fri Jun  5 10:03:07 IST 2026
[2026-06-05 10:03:07,511.511 INFO    ] ================================================
[2026-06-05 10:03:08,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:03:08
[2026-06-05 10:03:08,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:03:09,123.123 INFO    ] Initializing speech engine...
[2026-06-05 10:03:09,132.132 INFO    ] 2026-06-05 10:03:09
[2026-06-05 10:03:09,427.427 INFO    ] 2026-06-05 10:03:09
[2026-06-05 10:03:09,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:03:09,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:03:09,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:03:09,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:03:09,915.915 INFO    ] time= 05/06/2026 10:03:09
[2026-06-05 10:03:09,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:03:09,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:03:10,124.124 INFO    ] No existing commands found in stream
[2026-06-05 10:03:15,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:03:15,145.145 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 10:03:18,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:03:18,994.994 INFO    ] Checking for system updates...
[2026-06-05 10:03:19,035.035 INFO    ] 200
[2026-06-05 10:03:19,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:19,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:03:19,095.095 INFO    ] No update needed
[2026-06-05 10:03:19,098.098 INFO    ] Checking for camera pi updates...
[2026-06-05 10:03:19,132.132 INFO    ] 200
[2026-06-05 10:03:19,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:19,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:03:19,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:03:19,227.227 INFO    ] No camera update needed
[2026-06-05 10:03:19,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:03:19,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:03:19,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:03:19,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:03:21,288.288 INFO    ] ================================================
[2026-06-05 10:03:21,303.303 INFO    ] Launching Daemon at Fri Jun  5 10:03:21 IST 2026
[2026-06-05 10:03:21,314.314 INFO    ] ================================================
[2026-06-05 10:03:21,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:03:21
[2026-06-05 10:03:22,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:03:22,722.722 INFO    ] Initializing speech engine...
[2026-06-05 10:03:22,738.738 INFO    ] 2026-06-05 10:03:22
[2026-06-05 10:03:23,016.016 INFO    ] 2026-06-05 10:03:22
[2026-06-05 10:03:23,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:03:23,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:03:23,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:03:23,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:03:23,424.424 INFO    ] time= 05/06/2026 10:03:23
[2026-06-05 10:03:23,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:03:23,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:03:23,582.582 INFO    ] No existing commands found in stream
[2026-06-05 10:03:28,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:03:28,615.615 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 10:03:31,577.577 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:03:31,580.580 INFO    ] Checking for system updates...
[2026-06-05 10:03:31,620.620 INFO    ] 200
[2026-06-05 10:03:31,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:31,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:03:31,701.701 INFO    ] No update needed
[2026-06-05 10:03:31,704.704 INFO    ] Checking for camera pi updates...
[2026-06-05 10:03:31,741.741 INFO    ] 200
[2026-06-05 10:03:31,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:31,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:03:31,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:03:31,827.827 INFO    ] No camera update needed
[2026-06-05 10:03:31,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:03:31,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:03:31,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:03:31,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:03:33,886.886 INFO    ] ================================================
[2026-06-05 10:03:33,902.902 INFO    ] Launching Daemon at Fri Jun  5 10:03:33 IST 2026
[2026-06-05 10:03:33,913.913 INFO    ] ================================================
[2026-06-05 10:03:34,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:03:34
[2026-06-05 10:03:35,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:03:35,520.520 INFO    ] Initializing speech engine...
[2026-06-05 10:03:35,533.533 INFO    ] 2026-06-05 10:03:35
[2026-06-05 10:03:35,801.801 INFO    ] 2026-06-05 10:03:35
[2026-06-05 10:03:35,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:03:36,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:03:36,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:03:36,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:03:36,298.298 INFO    ] time= 05/06/2026 10:03:36
[2026-06-05 10:03:36,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:03:36,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:03:36,504.504 INFO    ] No existing commands found in stream
[2026-06-05 10:03:41,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:03:41,535.535 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 10:03:45,383.383 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:03:45,386.386 INFO    ] Checking for system updates...
[2026-06-05 10:03:45,423.423 INFO    ] 200
[2026-06-05 10:03:45,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:45,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:03:45,490.490 INFO    ] No update needed
[2026-06-05 10:03:45,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 10:03:45,544.544 INFO    ] 200
[2026-06-05 10:03:45,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:45,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:03:45,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:03:45,645.645 INFO    ] No camera update needed
[2026-06-05 10:03:45,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:03:45,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:03:45,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:03:45,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:03:47,700.700 INFO    ] ================================================
[2026-06-05 10:03:47,717.717 INFO    ] Launching Daemon at Fri Jun  5 10:03:47 IST 2026
[2026-06-05 10:03:47,729.729 INFO    ] ================================================
[2026-06-05 10:03:48,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:03:48
[2026-06-05 10:03:48,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:03:49,182.182 INFO    ] Initializing speech engine...
[2026-06-05 10:03:49,206.206 INFO    ] 2026-06-05 10:03:49
[2026-06-05 10:03:49,464.464 INFO    ] 2026-06-05 10:03:49
[2026-06-05 10:03:49,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:03:49,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:03:49,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:03:49,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:03:49,938.938 INFO    ] time= 05/06/2026 10:03:49
[2026-06-05 10:03:49,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:03:50,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:03:50,142.142 INFO    ] No existing commands found in stream
[2026-06-05 10:03:55,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:03:55,175.175 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 10:03:57,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:03:57,524.524 INFO    ] Checking for system updates...
[2026-06-05 10:03:57,561.561 INFO    ] 200
[2026-06-05 10:03:57,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:57,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:03:57,622.622 INFO    ] No update needed
[2026-06-05 10:03:57,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 10:03:57,658.658 INFO    ] 200
[2026-06-05 10:03:57,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:03:57,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:03:57,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:03:57,737.737 INFO    ] No camera update needed
[2026-06-05 10:03:57,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:03:57,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:03:57,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:03:57,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:03:59,791.791 INFO    ] ================================================
[2026-06-05 10:03:59,807.807 INFO    ] Launching Daemon at Fri Jun  5 10:03:59 IST 2026
[2026-06-05 10:03:59,819.819 INFO    ] ================================================
[2026-06-05 10:04:00,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:04:00
[2026-06-05 10:04:01,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:04:01,298.298 INFO    ] Initializing speech engine...
[2026-06-05 10:04:01,316.316 INFO    ] 2026-06-05 10:04:01
[2026-06-05 10:04:01,602.602 INFO    ] 2026-06-05 10:04:01
[2026-06-05 10:04:01,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:04:01,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:04:01,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:04:02,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:04:02,050.050 INFO    ] time= 05/06/2026 10:04:02
[2026-06-05 10:04:02,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:04:02,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:04:02,148.148 INFO    ] No existing commands found in stream
[2026-06-05 10:04:07,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:04:07,161.161 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 10:04:10,212.212 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:04:10,215.215 INFO    ] Checking for system updates...
[2026-06-05 10:04:10,253.253 INFO    ] 200
[2026-06-05 10:04:10,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:10,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:04:10,321.321 INFO    ] No update needed
[2026-06-05 10:04:10,324.324 INFO    ] Checking for camera pi updates...
[2026-06-05 10:04:10,358.358 INFO    ] 200
[2026-06-05 10:04:10,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:10,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:04:10,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:04:10,471.471 INFO    ] No camera update needed
[2026-06-05 10:04:10,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:04:10,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:04:10,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:04:10,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:04:12,531.531 INFO    ] ================================================
[2026-06-05 10:04:12,548.548 INFO    ] Launching Daemon at Fri Jun  5 10:04:12 IST 2026
[2026-06-05 10:04:12,559.559 INFO    ] ================================================
[2026-06-05 10:04:13,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:04:13
[2026-06-05 10:04:13,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:04:13,967.967 INFO    ] Initializing speech engine...
[2026-06-05 10:04:13,975.975 INFO    ] 2026-06-05 10:04:13
[2026-06-05 10:04:14,269.269 INFO    ] 2026-06-05 10:04:14
[2026-06-05 10:04:14,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:04:14,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:04:14,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:04:14,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:04:14,690.690 INFO    ] time= 05/06/2026 10:04:14
[2026-06-05 10:04:14,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:04:14,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:04:14,775.775 INFO    ] No existing commands found in stream
[2026-06-05 10:04:19,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:04:19,791.791 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 10:04:20,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:04:20,336.336 INFO    ] Checking for system updates...
[2026-06-05 10:04:20,372.372 INFO    ] 200
[2026-06-05 10:04:20,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:20,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:04:20,431.431 INFO    ] No update needed
[2026-06-05 10:04:20,433.433 INFO    ] Checking for camera pi updates...
[2026-06-05 10:04:20,467.467 INFO    ] 200
[2026-06-05 10:04:20,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:20,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:04:20,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:04:20,556.556 INFO    ] No camera update needed
[2026-06-05 10:04:20,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:04:20,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:04:20,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:04:20,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:04:22,611.611 INFO    ] ================================================
[2026-06-05 10:04:22,627.627 INFO    ] Launching Daemon at Fri Jun  5 10:04:22 IST 2026
[2026-06-05 10:04:22,639.639 INFO    ] ================================================
[2026-06-05 10:04:23,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:04:23
[2026-06-05 10:04:23,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:04:24,043.043 INFO    ] Initializing speech engine...
[2026-06-05 10:04:24,048.048 INFO    ] 2026-06-05 10:04:24
[2026-06-05 10:04:24,346.346 INFO    ] 2026-06-05 10:04:24
[2026-06-05 10:04:24,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:04:24,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:04:24,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:04:24,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:04:24,758.758 INFO    ] time= 05/06/2026 10:04:24
[2026-06-05 10:04:24,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:04:24,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:04:24,855.855 INFO    ] No existing commands found in stream
[2026-06-05 10:04:29,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:04:29,888.888 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 10:04:32,273.273 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:04:32,276.276 INFO    ] Checking for system updates...
[2026-06-05 10:04:32,321.321 INFO    ] 200
[2026-06-05 10:04:32,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:32,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:04:32,386.386 INFO    ] No update needed
[2026-06-05 10:04:32,389.389 INFO    ] Checking for camera pi updates...
[2026-06-05 10:04:32,435.435 INFO    ] 200
[2026-06-05 10:04:32,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:32,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:04:32,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:04:32,521.521 INFO    ] No camera update needed
[2026-06-05 10:04:32,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:04:32,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:04:32,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:04:32,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:04:34,581.581 INFO    ] ================================================
[2026-06-05 10:04:34,596.596 INFO    ] Launching Daemon at Fri Jun  5 10:04:34 IST 2026
[2026-06-05 10:04:34,607.607 INFO    ] ================================================
[2026-06-05 10:04:35,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:04:35
[2026-06-05 10:04:35,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:04:36,218.218 INFO    ] Initializing speech engine...
[2026-06-05 10:04:36,232.232 INFO    ] 2026-06-05 10:04:36
[2026-06-05 10:04:36,516.516 INFO    ] 2026-06-05 10:04:36
[2026-06-05 10:04:36,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:04:36,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:04:36,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:04:36,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:04:37,045.045 INFO    ] time= 05/06/2026 10:04:37
[2026-06-05 10:04:37,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:04:37,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:04:37,191.191 INFO    ] No existing commands found in stream
[2026-06-05 10:04:42,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:04:42,215.215 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 10:04:42,850.850 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:04:42,852.852 INFO    ] Checking for system updates...
[2026-06-05 10:04:42,894.894 INFO    ] 200
[2026-06-05 10:04:42,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:42,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:04:42,953.953 INFO    ] No update needed
[2026-06-05 10:04:42,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 10:04:42,991.991 INFO    ] 200
[2026-06-05 10:04:42,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:43,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:04:43,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:04:43,182.182 INFO    ] No camera update needed
[2026-06-05 10:04:43,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:04:43,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:04:43,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:04:43,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:04:45,241.241 INFO    ] ================================================
[2026-06-05 10:04:45,258.258 INFO    ] Launching Daemon at Fri Jun  5 10:04:45 IST 2026
[2026-06-05 10:04:45,269.269 INFO    ] ================================================
[2026-06-05 10:04:45,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:04:45
[2026-06-05 10:04:46,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:04:46,733.733 INFO    ] Initializing speech engine...
[2026-06-05 10:04:46,759.759 INFO    ] 2026-06-05 10:04:46
[2026-06-05 10:04:47,037.037 INFO    ] 2026-06-05 10:04:47
[2026-06-05 10:04:47,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:04:47,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:04:47,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:04:47,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:04:47,429.429 INFO    ] time= 05/06/2026 10:04:47
[2026-06-05 10:04:47,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:04:47,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:04:47,535.535 INFO    ] No existing commands found in stream
[2026-06-05 10:04:52,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:04:52,550.550 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 10:04:54,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:04:54,504.504 INFO    ] Checking for system updates...
[2026-06-05 10:04:54,543.543 INFO    ] 200
[2026-06-05 10:04:54,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:54,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:04:54,603.603 INFO    ] No update needed
[2026-06-05 10:04:54,606.606 INFO    ] Checking for camera pi updates...
[2026-06-05 10:04:54,640.640 INFO    ] 200
[2026-06-05 10:04:54,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:04:54,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:04:54,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:04:54,736.736 INFO    ] No camera update needed
[2026-06-05 10:04:54,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:04:54,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:04:54,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:04:54,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:04:56,790.790 INFO    ] ================================================
[2026-06-05 10:04:56,806.806 INFO    ] Launching Daemon at Fri Jun  5 10:04:56 IST 2026
[2026-06-05 10:04:56,823.823 INFO    ] ================================================
[2026-06-05 10:04:57,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:04:57
[2026-06-05 10:04:57,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:04:58,239.239 INFO    ] Initializing speech engine...
[2026-06-05 10:04:58,253.253 INFO    ] 2026-06-05 10:04:58
[2026-06-05 10:04:58,538.538 INFO    ] 2026-06-05 10:04:58
[2026-06-05 10:04:58,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:05:00,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:05:00,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:05:00,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:05:00,287.287 INFO    ] time= 05/06/2026 10:05:00
[2026-06-05 10:05:00,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:05:00,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:05:00,414.414 INFO    ] No existing commands found in stream
[2026-06-05 10:05:05,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:05:05,442.442 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 10:05:06,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:05:06,467.467 INFO    ] Checking for system updates...
[2026-06-05 10:05:06,503.503 INFO    ] 200
[2026-06-05 10:05:06,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:06,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:05:06,561.561 INFO    ] No update needed
[2026-06-05 10:05:06,564.564 INFO    ] Checking for camera pi updates...
[2026-06-05 10:05:06,599.599 INFO    ] 200
[2026-06-05 10:05:06,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:06,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:05:06,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:05:06,696.696 INFO    ] No camera update needed
[2026-06-05 10:05:06,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:05:06,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:05:06,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:05:06,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:05:08,751.751 INFO    ] ================================================
[2026-06-05 10:05:08,767.767 INFO    ] Launching Daemon at Fri Jun  5 10:05:08 IST 2026
[2026-06-05 10:05:08,778.778 INFO    ] ================================================
[2026-06-05 10:05:09,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:05:09
[2026-06-05 10:05:09,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:05:10,195.195 INFO    ] Initializing speech engine...
[2026-06-05 10:05:10,220.220 INFO    ] 2026-06-05 10:05:10
[2026-06-05 10:05:10,498.498 INFO    ] 2026-06-05 10:05:10
[2026-06-05 10:05:10,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:05:10,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:05:10,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:05:10,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:05:10,878.878 INFO    ] time= 05/06/2026 10:05:10
[2026-06-05 10:05:10,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:05:10,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:05:11,008.008 INFO    ] No existing commands found in stream
[2026-06-05 10:05:16,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:05:16,036.036 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 10:05:16,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:05:16,856.856 INFO    ] Checking for system updates...
[2026-06-05 10:05:16,892.892 INFO    ] 200
[2026-06-05 10:05:16,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:16,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:05:16,950.950 INFO    ] No update needed
[2026-06-05 10:05:16,952.952 INFO    ] Checking for camera pi updates...
[2026-06-05 10:05:16,990.990 INFO    ] 200
[2026-06-05 10:05:16,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:17,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:05:17,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:05:17,084.084 INFO    ] No camera update needed
[2026-06-05 10:05:17,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:05:17,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:05:17,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:05:17,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:05:19,139.139 INFO    ] ================================================
[2026-06-05 10:05:19,154.154 INFO    ] Launching Daemon at Fri Jun  5 10:05:19 IST 2026
[2026-06-05 10:05:19,165.165 INFO    ] ================================================
[2026-06-05 10:05:19,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:05:19
[2026-06-05 10:05:20,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:05:20,590.590 INFO    ] Initializing speech engine...
[2026-06-05 10:05:20,599.599 INFO    ] 2026-06-05 10:05:20
[2026-06-05 10:05:20,894.894 INFO    ] 2026-06-05 10:05:20
[2026-06-05 10:05:20,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:05:21,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:05:21,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:05:21,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:05:21,322.322 INFO    ] time= 05/06/2026 10:05:21
[2026-06-05 10:05:21,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:05:21,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:05:21,481.481 INFO    ] No existing commands found in stream
[2026-06-05 10:05:26,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:05:26,514.514 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 10:05:30,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:05:30,208.208 INFO    ] Checking for system updates...
[2026-06-05 10:05:30,244.244 INFO    ] 200
[2026-06-05 10:05:30,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:30,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:05:30,302.302 INFO    ] No update needed
[2026-06-05 10:05:30,305.305 INFO    ] Checking for camera pi updates...
[2026-06-05 10:05:30,340.340 INFO    ] 200
[2026-06-05 10:05:30,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:30,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:05:30,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:05:30,440.440 INFO    ] No camera update needed
[2026-06-05 10:05:30,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:05:30,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:05:30,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:05:30,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:05:32,499.499 INFO    ] ================================================
[2026-06-05 10:05:32,521.521 INFO    ] Launching Daemon at Fri Jun  5 10:05:32 IST 2026
[2026-06-05 10:05:32,534.534 INFO    ] ================================================
[2026-06-05 10:05:33,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:05:33
[2026-06-05 10:05:33,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:05:34,170.170 INFO    ] Initializing speech engine...
[2026-06-05 10:05:34,175.175 INFO    ] 2026-06-05 10:05:34
[2026-06-05 10:05:34,460.460 INFO    ] 2026-06-05 10:05:34
[2026-06-05 10:05:34,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:05:34,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:05:34,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:05:36,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:05:36,090.090 INFO    ] time= 05/06/2026 10:05:36
[2026-06-05 10:05:36,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:05:36,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:05:36,205.205 INFO    ] No existing commands found in stream
[2026-06-05 10:05:41,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:05:41,220.220 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 10:05:41,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:05:41,960.960 INFO    ] Checking for system updates...
[2026-06-05 10:05:41,998.998 INFO    ] 200
[2026-06-05 10:05:42,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:42,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:05:42,057.057 INFO    ] No update needed
[2026-06-05 10:05:42,060.060 INFO    ] Checking for camera pi updates...
[2026-06-05 10:05:42,096.096 INFO    ] 200
[2026-06-05 10:05:42,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:42,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:05:42,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:05:42,191.191 INFO    ] No camera update needed
[2026-06-05 10:05:42,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:05:42,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:05:42,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:05:42,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:05:44,246.246 INFO    ] ================================================
[2026-06-05 10:05:44,262.262 INFO    ] Launching Daemon at Fri Jun  5 10:05:44 IST 2026
[2026-06-05 10:05:44,274.274 INFO    ] ================================================
[2026-06-05 10:05:44,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:05:44
[2026-06-05 10:05:45,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:05:45,682.682 INFO    ] Initializing speech engine...
[2026-06-05 10:05:45,691.691 INFO    ] 2026-06-05 10:05:45
[2026-06-05 10:05:45,987.987 INFO    ] 2026-06-05 10:05:45
[2026-06-05 10:05:46,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:05:46,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:05:46,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:05:46,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:05:46,419.419 INFO    ] time= 05/06/2026 10:05:46
[2026-06-05 10:05:46,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:05:46,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:05:46,586.586 INFO    ] No existing commands found in stream
[2026-06-05 10:05:51,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:05:51,610.610 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 10:05:55,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:05:55,709.709 INFO    ] Checking for system updates...
[2026-06-05 10:05:55,746.746 INFO    ] 200
[2026-06-05 10:05:55,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:55,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:05:55,804.804 INFO    ] No update needed
[2026-06-05 10:05:55,807.807 INFO    ] Checking for camera pi updates...
[2026-06-05 10:05:55,841.841 INFO    ] 200
[2026-06-05 10:05:55,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:05:55,885.885 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:05:55,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:05:55,936.936 INFO    ] No camera update needed
[2026-06-05 10:05:55,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:05:55,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:05:55,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:05:55,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:05:58,998.998 INFO    ] ================================================
[2026-06-05 10:05:58,014.014 INFO    ] Launching Daemon at Fri Jun  5 10:05:58 IST 2026
[2026-06-05 10:05:58,025.025 INFO    ] ================================================
[2026-06-05 10:05:58,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:05:58
[2026-06-05 10:05:59,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:05:59,651.651 INFO    ] Initializing speech engine...
[2026-06-05 10:05:59,657.657 INFO    ] 2026-06-05 10:05:59
[2026-06-05 10:05:59,965.965 INFO    ] 2026-06-05 10:05:59
[2026-06-05 10:06:00,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:06:00,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:06:00,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:06:00,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:06:00,474.474 INFO    ] time= 05/06/2026 10:06:00
[2026-06-05 10:06:00,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:06:00,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:06:00,631.631 INFO    ] No existing commands found in stream
[2026-06-05 10:06:05,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:06:05,663.663 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 10:06:10,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:06:10,032.032 INFO    ] Checking for system updates...
[2026-06-05 10:06:10,069.069 INFO    ] 200
[2026-06-05 10:06:10,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:06:10,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:06:10,129.129 INFO    ] No update needed
[2026-06-05 10:06:10,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 10:06:10,168.168 INFO    ] 200
[2026-06-05 10:06:10,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:06:10,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:06:10,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:06:10,260.260 INFO    ] No camera update needed
[2026-06-05 10:06:10,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:06:10,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:06:10,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:06:10,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:06:12,318.318 INFO    ] ================================================
[2026-06-05 10:06:12,333.333 INFO    ] Launching Daemon at Fri Jun  5 10:06:12 IST 2026
[2026-06-05 10:06:12,344.344 INFO    ] ================================================
[2026-06-05 10:06:12,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:06:12
[2026-06-05 10:06:13,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:06:13,990.990 INFO    ] Initializing speech engine...
[2026-06-05 10:06:13,998.998 INFO    ] 2026-06-05 10:06:13
[2026-06-05 10:06:14,271.271 INFO    ] 2026-06-05 10:06:14
[2026-06-05 10:06:14,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:06:14,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:06:14,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:06:14,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:06:14,802.802 INFO    ] time= 05/06/2026 10:06:14
[2026-06-05 10:06:14,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:06:14,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:06:14,957.957 INFO    ] No existing commands found in stream
[2026-06-05 10:06:19,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:06:19,970.970 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 10:06:21,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:06:21,969.969 INFO    ] Checking for system updates...
[2026-06-05 10:06:22,006.006 INFO    ] 200
[2026-06-05 10:06:22,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:06:22,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:06:22,064.064 INFO    ] No update needed
[2026-06-05 10:06:22,067.067 INFO    ] Checking for camera pi updates...
[2026-06-05 10:06:22,102.102 INFO    ] 200
[2026-06-05 10:06:22,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:06:22,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:06:22,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:06:22,214.214 INFO    ] No camera update needed
[2026-06-05 10:06:22,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:06:22,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:06:22,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:06:22,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:06:24,278.278 INFO    ] ================================================
[2026-06-05 10:06:24,294.294 INFO    ] Launching Daemon at Fri Jun  5 10:06:24 IST 2026
[2026-06-05 10:06:24,304.304 INFO    ] ================================================
[2026-06-05 10:06:24,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:06:24
[2026-06-05 10:06:25,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:06:25,964.964 INFO    ] Initializing speech engine...
[2026-06-05 10:06:25,978.978 INFO    ] 2026-06-05 10:06:25
[2026-06-05 10:06:26,268.268 INFO    ] 2026-06-05 10:06:26
[2026-06-05 10:06:26,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:06:26,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:06:26,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:06:26,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:06:26,772.772 INFO    ] time= 05/06/2026 10:06:26
[2026-06-05 10:06:26,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:06:26,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:06:27,014.014 INFO    ] No existing commands found in stream
[2026-06-05 10:06:32,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:06:32,053.053 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 10:06:33,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:06:33,609.609 INFO    ] Checking for system updates...
[2026-06-05 10:06:33,646.646 INFO    ] 200
[2026-06-05 10:06:33,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:06:33,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:06:33,712.712 INFO    ] No update needed
[2026-06-05 10:06:33,714.714 INFO    ] Checking for camera pi updates...
[2026-06-05 10:06:33,750.750 INFO    ] 200
[2026-06-05 10:06:33,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:06:33,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:06:33,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:06:33,856.856 INFO    ] No camera update needed
[2026-06-05 10:06:33,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:06:33,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:06:33,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:06:33,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:06:35,914.914 INFO    ] ================================================
[2026-06-05 10:06:35,930.930 INFO    ] Launching Daemon at Fri Jun  5 10:06:35 IST 2026
[2026-06-05 10:06:35,941.941 INFO    ] ================================================
[2026-06-05 10:06:36,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:06:36
[2026-06-05 10:06:37,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:06:37,389.389 INFO    ] Initializing speech engine...
[2026-06-05 10:06:37,398.398 INFO    ] 2026-06-05 10:06:37
[2026-06-05 10:06:37,703.703 INFO    ] 2026-06-05 10:06:37
[2026-06-05 10:06:37,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:06:37,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:06:37,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:06:38,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:06:38,044.044 INFO    ] time= 05/06/2026 10:06:38
[2026-06-05 10:06:38,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:06:38,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:06:38,177.177 INFO    ] No existing commands found in stream
[2026-06-05 10:06:43,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:06:43,199.199 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-05 10:06:47,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:06:47,640.640 INFO    ] Checking for system updates...
[2026-06-05 10:06:47,687.687 INFO    ] 200
[2026-06-05 10:06:47,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:06:47,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:06:47,750.750 INFO    ] No update needed
[2026-06-05 10:06:47,753.753 INFO    ] Checking for camera pi updates...
[2026-06-05 10:06:47,790.790 INFO    ] 200
[2026-06-05 10:06:47,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:06:47,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:06:47,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:06:47,990.990 INFO    ] No camera update needed
[2026-06-05 10:06:47,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:06:47,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:06:48,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:06:48,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:06:50,045.045 INFO    ] ================================================
[2026-06-05 10:06:50,061.061 INFO    ] Launching Daemon at Fri Jun  5 10:06:50 IST 2026
[2026-06-05 10:06:50,072.072 INFO    ] ================================================
[2026-06-05 10:06:50,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:06:50
[2026-06-05 10:06:51,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:06:51,522.522 INFO    ] Initializing speech engine...
[2026-06-05 10:06:51,531.531 INFO    ] 2026-06-05 10:06:51
[2026-06-05 10:06:51,850.850 INFO    ] 2026-06-05 10:06:51
[2026-06-05 10:06:51,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:06:52,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:06:52,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:06:52,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:06:52,362.362 INFO    ] time= 05/06/2026 10:06:52
[2026-06-05 10:06:52,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:06:52,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:06:52,519.519 INFO    ] No existing commands found in stream
[2026-06-05 10:06:57,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:06:57,545.545 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 10:07:00,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:07:00,363.363 INFO    ] Checking for system updates...
[2026-06-05 10:07:00,408.408 INFO    ] 200
[2026-06-05 10:07:00,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:00,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:07:00,480.480 INFO    ] No update needed
[2026-06-05 10:07:00,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 10:07:00,517.517 INFO    ] 200
[2026-06-05 10:07:00,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:00,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:07:00,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:07:00,616.616 INFO    ] No camera update needed
[2026-06-05 10:07:00,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:07:00,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:07:00,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:07:00,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:07:02,679.679 INFO    ] ================================================
[2026-06-05 10:07:02,701.701 INFO    ] Launching Daemon at Fri Jun  5 10:07:02 IST 2026
[2026-06-05 10:07:02,718.718 INFO    ] ================================================
[2026-06-05 10:07:03,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:07:03
[2026-06-05 10:07:04,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:07:04,318.318 INFO    ] Initializing speech engine...
[2026-06-05 10:07:04,327.327 INFO    ] 2026-06-05 10:07:04
[2026-06-05 10:07:04,594.594 INFO    ] 2026-06-05 10:07:04
[2026-06-05 10:07:04,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:07:04,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:07:04,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:07:05,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:07:05,080.080 INFO    ] time= 05/06/2026 10:07:05
[2026-06-05 10:07:05,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:07:05,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:07:05,296.296 INFO    ] No existing commands found in stream
[2026-06-05 10:07:10,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:07:10,321.321 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 10:07:13,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:07:13,150.150 INFO    ] Checking for system updates...
[2026-06-05 10:07:13,190.190 INFO    ] 200
[2026-06-05 10:07:13,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:13,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:07:13,248.248 INFO    ] No update needed
[2026-06-05 10:07:13,250.250 INFO    ] Checking for camera pi updates...
[2026-06-05 10:07:13,288.288 INFO    ] 200
[2026-06-05 10:07:13,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:13,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:07:13,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:07:13,389.389 INFO    ] No camera update needed
[2026-06-05 10:07:13,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:07:13,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:07:13,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:07:13,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:07:15,448.448 INFO    ] ================================================
[2026-06-05 10:07:15,463.463 INFO    ] Launching Daemon at Fri Jun  5 10:07:15 IST 2026
[2026-06-05 10:07:15,474.474 INFO    ] ================================================
[2026-06-05 10:07:16,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:07:16
[2026-06-05 10:07:16,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:07:16,898.898 INFO    ] Initializing speech engine...
[2026-06-05 10:07:16,921.921 INFO    ] 2026-06-05 10:07:16
[2026-06-05 10:07:17,179.179 INFO    ] 2026-06-05 10:07:17
[2026-06-05 10:07:17,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:07:17,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:07:17,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:07:17,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:07:17,646.646 INFO    ] time= 05/06/2026 10:07:17
[2026-06-05 10:07:17,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:07:17,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:07:17,840.840 INFO    ] No existing commands found in stream
[2026-06-05 10:07:22,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:07:22,857.857 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 10:07:24,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:07:24,943.943 INFO    ] Checking for system updates...
[2026-06-05 10:07:24,984.984 INFO    ] 200
[2026-06-05 10:07:24,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:25,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:07:25,051.051 INFO    ] No update needed
[2026-06-05 10:07:25,054.054 INFO    ] Checking for camera pi updates...
[2026-06-05 10:07:25,090.090 INFO    ] 200
[2026-06-05 10:07:25,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:25,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:07:25,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:07:25,195.195 INFO    ] No camera update needed
[2026-06-05 10:07:25,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:07:25,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:07:25,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:07:25,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:07:27,255.255 INFO    ] ================================================
[2026-06-05 10:07:27,270.270 INFO    ] Launching Daemon at Fri Jun  5 10:07:27 IST 2026
[2026-06-05 10:07:27,281.281 INFO    ] ================================================
[2026-06-05 10:07:27,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:07:27
[2026-06-05 10:07:28,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:07:28,703.703 INFO    ] Initializing speech engine...
[2026-06-05 10:07:28,713.713 INFO    ] 2026-06-05 10:07:28
[2026-06-05 10:07:28,958.958 INFO    ] 2026-06-05 10:07:28
[2026-06-05 10:07:28,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:07:30,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:07:30,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:07:30,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:07:30,406.406 INFO    ] time= 05/06/2026 10:07:30
[2026-06-05 10:07:30,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:07:30,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:07:30,516.516 INFO    ] No existing commands found in stream
[2026-06-05 10:07:35,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:07:35,529.529 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 10:07:39,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:07:39,891.891 INFO    ] Checking for system updates...
[2026-06-05 10:07:39,927.927 INFO    ] 200
[2026-06-05 10:07:39,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:39,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:07:39,986.986 INFO    ] No update needed
[2026-06-05 10:07:39,989.989 INFO    ] Checking for camera pi updates...
[2026-06-05 10:07:40,022.022 INFO    ] 200
[2026-06-05 10:07:40,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:40,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:07:40,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:07:40,130.130 INFO    ] No camera update needed
[2026-06-05 10:07:40,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:07:40,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:07:40,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:07:40,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:07:42,186.186 INFO    ] ================================================
[2026-06-05 10:07:42,202.202 INFO    ] Launching Daemon at Fri Jun  5 10:07:42 IST 2026
[2026-06-05 10:07:42,212.212 INFO    ] ================================================
[2026-06-05 10:07:42,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:07:42
[2026-06-05 10:07:43,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:07:43,739.739 INFO    ] Initializing speech engine...
[2026-06-05 10:07:43,753.753 INFO    ] 2026-06-05 10:07:43
[2026-06-05 10:07:44,044.044 INFO    ] 2026-06-05 10:07:44
[2026-06-05 10:07:44,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:07:44,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:07:44,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:07:44,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:07:44,465.465 INFO    ] time= 05/06/2026 10:07:44
[2026-06-05 10:07:44,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:07:44,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:07:44,552.552 INFO    ] No existing commands found in stream
[2026-06-05 10:07:49,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:07:49,586.586 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-05 10:07:50,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:07:50,053.053 INFO    ] Checking for system updates...
[2026-06-05 10:07:50,093.093 INFO    ] 200
[2026-06-05 10:07:50,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:50,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:07:50,152.152 INFO    ] No update needed
[2026-06-05 10:07:50,154.154 INFO    ] Checking for camera pi updates...
[2026-06-05 10:07:50,189.189 INFO    ] 200
[2026-06-05 10:07:50,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:07:50,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:07:50,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:07:50,296.296 INFO    ] No camera update needed
[2026-06-05 10:07:50,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:07:50,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:07:50,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:07:50,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:07:52,353.353 INFO    ] ================================================
[2026-06-05 10:07:52,367.367 INFO    ] Launching Daemon at Fri Jun  5 10:07:52 IST 2026
[2026-06-05 10:07:52,378.378 INFO    ] ================================================
[2026-06-05 10:07:52,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:07:52
[2026-06-05 10:07:53,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:07:53,805.805 INFO    ] Initializing speech engine...
[2026-06-05 10:07:53,814.814 INFO    ] 2026-06-05 10:07:53
[2026-06-05 10:07:54,108.108 INFO    ] 2026-06-05 10:07:54
[2026-06-05 10:07:54,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:07:54,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:07:54,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:07:54,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:07:54,530.530 INFO    ] time= 05/06/2026 10:07:54
[2026-06-05 10:07:54,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:07:54,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:07:54,617.617 INFO    ] No existing commands found in stream
[2026-06-05 10:07:59,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:07:59,635.635 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 10:08:01,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:08:01,343.343 INFO    ] Checking for system updates...
[2026-06-05 10:08:01,379.379 INFO    ] 200
[2026-06-05 10:08:01,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:01,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:08:01,438.438 INFO    ] No update needed
[2026-06-05 10:08:01,440.440 INFO    ] Checking for camera pi updates...
[2026-06-05 10:08:01,474.474 INFO    ] 200
[2026-06-05 10:08:01,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:01,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:08:01,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:08:01,911.911 INFO    ] No camera update needed
[2026-06-05 10:08:01,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:08:01,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:08:01,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:08:01,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:08:04,995.995 INFO    ] ================================================
[2026-06-05 10:08:04,011.011 INFO    ] Launching Daemon at Fri Jun  5 10:08:04 IST 2026
[2026-06-05 10:08:04,022.022 INFO    ] ================================================
[2026-06-05 10:08:04,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:08:04
[2026-06-05 10:08:05,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:08:05,446.446 INFO    ] Initializing speech engine...
[2026-06-05 10:08:05,471.471 INFO    ] 2026-06-05 10:08:05
[2026-06-05 10:08:05,748.748 INFO    ] 2026-06-05 10:08:05
[2026-06-05 10:08:05,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:08:05,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:08:05,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:08:06,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:08:06,183.183 INFO    ] time= 05/06/2026 10:08:06
[2026-06-05 10:08:06,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:08:06,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:08:06,284.284 INFO    ] No existing commands found in stream
[2026-06-05 10:08:11,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:08:11,301.301 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 10:08:14,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:08:14,841.841 INFO    ] Checking for system updates...
[2026-06-05 10:08:14,878.878 INFO    ] 200
[2026-06-05 10:08:14,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:14,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:08:14,935.935 INFO    ] No update needed
[2026-06-05 10:08:14,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 10:08:14,972.972 INFO    ] 200
[2026-06-05 10:08:14,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:15,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:08:15,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:08:15,066.066 INFO    ] No camera update needed
[2026-06-05 10:08:15,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:08:15,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:08:15,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:08:15,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:08:17,120.120 INFO    ] ================================================
[2026-06-05 10:08:17,135.135 INFO    ] Launching Daemon at Fri Jun  5 10:08:17 IST 2026
[2026-06-05 10:08:17,146.146 INFO    ] ================================================
[2026-06-05 10:08:17,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:08:17
[2026-06-05 10:08:18,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:08:18,727.727 INFO    ] Initializing speech engine...
[2026-06-05 10:08:18,736.736 INFO    ] 2026-06-05 10:08:18
[2026-06-05 10:08:18,992.992 INFO    ] 2026-06-05 10:08:18
[2026-06-05 10:08:19,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:08:19,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:08:19,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:08:19,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:08:19,489.489 INFO    ] time= 05/06/2026 10:08:19
[2026-06-05 10:08:19,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:08:19,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:08:19,720.720 INFO    ] No existing commands found in stream
[2026-06-05 10:08:24,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:08:24,754.754 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 10:08:30,341.341 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:08:30,343.343 INFO    ] Checking for system updates...
[2026-06-05 10:08:30,380.380 INFO    ] 200
[2026-06-05 10:08:30,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:30,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:08:30,437.437 INFO    ] No update needed
[2026-06-05 10:08:30,439.439 INFO    ] Checking for camera pi updates...
[2026-06-05 10:08:30,473.473 INFO    ] 200
[2026-06-05 10:08:30,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:30,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:08:30,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:08:30,574.574 INFO    ] No camera update needed
[2026-06-05 10:08:30,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:08:30,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:08:30,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:08:30,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:08:32,633.633 INFO    ] ================================================
[2026-06-05 10:08:32,650.650 INFO    ] Launching Daemon at Fri Jun  5 10:08:32 IST 2026
[2026-06-05 10:08:32,662.662 INFO    ] ================================================
[2026-06-05 10:08:33,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:08:33
[2026-06-05 10:08:33,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:08:34,187.187 INFO    ] Initializing speech engine...
[2026-06-05 10:08:34,200.200 INFO    ] 2026-06-05 10:08:34
[2026-06-05 10:08:34,466.466 INFO    ] 2026-06-05 10:08:34
[2026-06-05 10:08:34,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:08:34,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:08:34,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:08:34,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:08:34,969.969 INFO    ] time= 05/06/2026 10:08:34
[2026-06-05 10:08:35,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:08:35,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:08:35,167.167 INFO    ] No existing commands found in stream
[2026-06-05 10:08:40,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:08:40,195.195 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 10:08:43,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:08:43,310.310 INFO    ] Checking for system updates...
[2026-06-05 10:08:43,347.347 INFO    ] 200
[2026-06-05 10:08:43,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:43,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:08:43,405.405 INFO    ] No update needed
[2026-06-05 10:08:43,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 10:08:43,441.441 INFO    ] 200
[2026-06-05 10:08:43,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:43,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:08:43,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:08:43,532.532 INFO    ] No camera update needed
[2026-06-05 10:08:43,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:08:43,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:08:43,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:08:43,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:08:45,589.589 INFO    ] ================================================
[2026-06-05 10:08:45,605.605 INFO    ] Launching Daemon at Fri Jun  5 10:08:45 IST 2026
[2026-06-05 10:08:45,616.616 INFO    ] ================================================
[2026-06-05 10:08:46,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:08:46
[2026-06-05 10:08:47,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:08:47,348.348 INFO    ] Initializing speech engine...
[2026-06-05 10:08:47,356.356 INFO    ] 2026-06-05 10:08:47
[2026-06-05 10:08:47,678.678 INFO    ] 2026-06-05 10:08:47
[2026-06-05 10:08:47,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:08:47,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:08:47,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:08:48,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:08:48,199.199 INFO    ] time= 05/06/2026 10:08:48
[2026-06-05 10:08:48,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:08:48,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:08:48,342.342 INFO    ] No existing commands found in stream
[2026-06-05 10:08:53,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:08:53,371.371 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 10:08:56,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:08:56,862.862 INFO    ] Checking for system updates...
[2026-06-05 10:08:56,918.918 INFO    ] 200
[2026-06-05 10:08:56,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:56,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:08:56,988.988 INFO    ] No update needed
[2026-06-05 10:08:56,990.990 INFO    ] Checking for camera pi updates...
[2026-06-05 10:08:57,047.047 INFO    ] 200
[2026-06-05 10:08:57,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:08:57,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:08:57,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:08:57,246.246 INFO    ] No camera update needed
[2026-06-05 10:08:57,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:08:57,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:08:57,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:08:57,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:08:59,306.306 INFO    ] ================================================
[2026-06-05 10:08:59,322.322 INFO    ] Launching Daemon at Fri Jun  5 10:08:59 IST 2026
[2026-06-05 10:08:59,334.334 INFO    ] ================================================
[2026-06-05 10:08:59,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:08:59
[2026-06-05 10:09:00,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:09:00,802.802 INFO    ] Initializing speech engine...
[2026-06-05 10:09:00,825.825 INFO    ] 2026-06-05 10:09:00
[2026-06-05 10:09:01,078.078 INFO    ] 2026-06-05 10:09:01
[2026-06-05 10:09:01,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:09:01,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:09:01,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:09:01,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:09:01,461.461 INFO    ] time= 05/06/2026 10:09:01
[2026-06-05 10:09:01,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:09:01,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:09:01,715.715 INFO    ] No existing commands found in stream
[2026-06-05 10:09:06,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:09:06,728.728 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 10:09:08,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:09:08,837.837 INFO    ] Checking for system updates...
[2026-06-05 10:09:08,874.874 INFO    ] 200
[2026-06-05 10:09:08,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:08,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:09:08,931.931 INFO    ] No update needed
[2026-06-05 10:09:08,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 10:09:08,968.968 INFO    ] 200
[2026-06-05 10:09:08,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:09,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:09:09,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:09:09,063.063 INFO    ] No camera update needed
[2026-06-05 10:09:09,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:09:09,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:09:09,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:09:09,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:09:11,118.118 INFO    ] ================================================
[2026-06-05 10:09:11,133.133 INFO    ] Launching Daemon at Fri Jun  5 10:09:11 IST 2026
[2026-06-05 10:09:11,143.143 INFO    ] ================================================
[2026-06-05 10:09:11,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:09:11
[2026-06-05 10:09:12,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:09:12,578.578 INFO    ] Initializing speech engine...
[2026-06-05 10:09:12,601.601 INFO    ] 2026-06-05 10:09:12
[2026-06-05 10:09:12,853.853 INFO    ] 2026-06-05 10:09:12
[2026-06-05 10:09:12,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:09:13,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:09:13,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:09:13,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:09:13,225.225 INFO    ] time= 05/06/2026 10:09:13
[2026-06-05 10:09:13,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:09:13,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:09:13,347.347 INFO    ] No existing commands found in stream
[2026-06-05 10:09:18,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:09:18,362.362 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 10:09:21,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:09:21,049.049 INFO    ] Checking for system updates...
[2026-06-05 10:09:21,085.085 INFO    ] 200
[2026-06-05 10:09:21,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:21,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:09:21,146.146 INFO    ] No update needed
[2026-06-05 10:09:21,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 10:09:21,182.182 INFO    ] 200
[2026-06-05 10:09:21,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:21,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:09:21,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:09:21,278.278 INFO    ] No camera update needed
[2026-06-05 10:09:21,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:09:21,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:09:21,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:09:21,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:09:23,334.334 INFO    ] ================================================
[2026-06-05 10:09:23,349.349 INFO    ] Launching Daemon at Fri Jun  5 10:09:23 IST 2026
[2026-06-05 10:09:23,360.360 INFO    ] ================================================
[2026-06-05 10:09:24,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:09:24
[2026-06-05 10:09:24,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:09:24,989.989 INFO    ] Initializing speech engine...
[2026-06-05 10:09:25,003.003 INFO    ] 2026-06-05 10:09:24
[2026-06-05 10:09:25,268.268 INFO    ] 2026-06-05 10:09:25
[2026-06-05 10:09:25,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:09:25,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:09:25,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:09:25,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:09:25,760.760 INFO    ] time= 05/06/2026 10:09:25
[2026-06-05 10:09:25,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:09:25,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:09:25,981.981 INFO    ] No existing commands found in stream
[2026-06-05 10:09:30,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:09:30,998.998 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 10:09:32,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:09:32,225.225 INFO    ] Checking for system updates...
[2026-06-05 10:09:32,267.267 INFO    ] 200
[2026-06-05 10:09:32,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:32,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:09:32,334.334 INFO    ] No update needed
[2026-06-05 10:09:32,338.338 INFO    ] Checking for camera pi updates...
[2026-06-05 10:09:32,374.374 INFO    ] 200
[2026-06-05 10:09:32,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:32,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:09:32,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:09:32,462.462 INFO    ] No camera update needed
[2026-06-05 10:09:32,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:09:32,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:09:32,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:09:32,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:09:34,526.526 INFO    ] ================================================
[2026-06-05 10:09:34,542.542 INFO    ] Launching Daemon at Fri Jun  5 10:09:34 IST 2026
[2026-06-05 10:09:34,553.553 INFO    ] ================================================
[2026-06-05 10:09:35,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:09:35
[2026-06-05 10:09:35,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:09:36,008.008 INFO    ] Initializing speech engine...
[2026-06-05 10:09:36,018.018 INFO    ] 2026-06-05 10:09:36
[2026-06-05 10:09:36,267.267 INFO    ] 2026-06-05 10:09:36
[2026-06-05 10:09:36,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:09:36,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:09:36,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:09:36,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:09:36,648.648 INFO    ] time= 05/06/2026 10:09:36
[2026-06-05 10:09:36,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:09:36,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:09:36,832.832 INFO    ] No existing commands found in stream
[2026-06-05 10:09:41,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:09:41,860.860 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 10:09:46,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:09:46,015.015 INFO    ] Checking for system updates...
[2026-06-05 10:09:46,055.055 INFO    ] 200
[2026-06-05 10:09:46,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:46,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:09:46,114.114 INFO    ] No update needed
[2026-06-05 10:09:46,117.117 INFO    ] Checking for camera pi updates...
[2026-06-05 10:09:46,153.153 INFO    ] 200
[2026-06-05 10:09:46,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:46,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:09:46,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:09:46,257.257 INFO    ] No camera update needed
[2026-06-05 10:09:46,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:09:46,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:09:46,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:09:46,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:09:48,317.317 INFO    ] ================================================
[2026-06-05 10:09:48,332.332 INFO    ] Launching Daemon at Fri Jun  5 10:09:48 IST 2026
[2026-06-05 10:09:48,347.347 INFO    ] ================================================
[2026-06-05 10:09:48,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:09:48
[2026-06-05 10:09:49,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:09:49,757.757 INFO    ] Initializing speech engine...
[2026-06-05 10:09:49,765.765 INFO    ] 2026-06-05 10:09:49
[2026-06-05 10:09:50,044.044 INFO    ] 2026-06-05 10:09:50
[2026-06-05 10:09:50,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:09:50,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:09:50,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:09:50,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:09:50,536.536 INFO    ] time= 05/06/2026 10:09:50
[2026-06-05 10:09:50,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:09:50,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:09:50,734.734 INFO    ] No existing commands found in stream
[2026-06-05 10:09:55,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:09:55,766.766 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 10:09:57,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:09:57,148.148 INFO    ] Checking for system updates...
[2026-06-05 10:09:57,184.184 INFO    ] 200
[2026-06-05 10:09:57,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:57,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:09:57,242.242 INFO    ] No update needed
[2026-06-05 10:09:57,244.244 INFO    ] Checking for camera pi updates...
[2026-06-05 10:09:57,281.281 INFO    ] 200
[2026-06-05 10:09:57,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:09:57,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:09:57,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:09:57,399.399 INFO    ] No camera update needed
[2026-06-05 10:09:57,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:09:57,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:09:57,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:09:57,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:09:59,455.455 INFO    ] ================================================
[2026-06-05 10:09:59,470.470 INFO    ] Launching Daemon at Fri Jun  5 10:09:59 IST 2026
[2026-06-05 10:09:59,482.482 INFO    ] ================================================
[2026-06-05 10:10:00,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:10:00
[2026-06-05 10:10:00,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:10:01,088.088 INFO    ] Initializing speech engine...
[2026-06-05 10:10:01,102.102 INFO    ] 2026-06-05 10:10:01
[2026-06-05 10:10:01,378.378 INFO    ] 2026-06-05 10:10:01
[2026-06-05 10:10:01,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:10:01,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:10:01,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:10:01,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:10:01,861.861 INFO    ] time= 05/06/2026 10:10:01
[2026-06-05 10:10:01,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:10:01,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:10:01,968.968 INFO    ] No existing commands found in stream
[2026-06-05 10:10:06,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:10:06,982.982 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 10:10:08,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:10:08,380.380 INFO    ] Checking for system updates...
[2026-06-05 10:10:08,429.429 INFO    ] 200
[2026-06-05 10:10:08,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:08,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:10:08,497.497 INFO    ] No update needed
[2026-06-05 10:10:08,500.500 INFO    ] Checking for camera pi updates...
[2026-06-05 10:10:08,535.535 INFO    ] 200
[2026-06-05 10:10:08,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:08,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:10:08,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:10:08,631.631 INFO    ] No camera update needed
[2026-06-05 10:10:08,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:10:08,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:10:08,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:10:08,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:10:10,688.688 INFO    ] ================================================
[2026-06-05 10:10:10,704.704 INFO    ] Launching Daemon at Fri Jun  5 10:10:10 IST 2026
[2026-06-05 10:10:10,716.716 INFO    ] ================================================
[2026-06-05 10:10:11,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:10:11
[2026-06-05 10:10:11,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:10:12,168.168 INFO    ] Initializing speech engine...
[2026-06-05 10:10:12,184.184 INFO    ] 2026-06-05 10:10:12
[2026-06-05 10:10:12,441.441 INFO    ] 2026-06-05 10:10:12
[2026-06-05 10:10:12,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:10:12,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:10:12,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:10:12,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:10:12,858.858 INFO    ] time= 05/06/2026 10:10:12
[2026-06-05 10:10:12,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:10:12,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:10:12,949.949 INFO    ] No existing commands found in stream
[2026-06-05 10:10:17,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:10:17,982.982 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 10:10:18,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:10:18,680.680 INFO    ] Checking for system updates...
[2026-06-05 10:10:18,719.719 INFO    ] 200
[2026-06-05 10:10:18,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:18,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:10:18,777.777 INFO    ] No update needed
[2026-06-05 10:10:18,780.780 INFO    ] Checking for camera pi updates...
[2026-06-05 10:10:18,814.814 INFO    ] 200
[2026-06-05 10:10:18,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:18,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:10:18,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:10:18,909.909 INFO    ] No camera update needed
[2026-06-05 10:10:18,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:10:18,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:10:18,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:10:18,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:10:20,965.965 INFO    ] ================================================
[2026-06-05 10:10:20,979.979 INFO    ] Launching Daemon at Fri Jun  5 10:10:20 IST 2026
[2026-06-05 10:10:20,990.990 INFO    ] ================================================
[2026-06-05 10:10:21,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:10:21
[2026-06-05 10:10:22,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:10:22,540.540 INFO    ] Initializing speech engine...
[2026-06-05 10:10:22,553.553 INFO    ] 2026-06-05 10:10:22
[2026-06-05 10:10:22,835.835 INFO    ] 2026-06-05 10:10:22
[2026-06-05 10:10:22,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:10:23,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:10:23,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:10:23,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:10:23,340.340 INFO    ] time= 05/06/2026 10:10:23
[2026-06-05 10:10:23,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:10:23,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:10:23,537.537 INFO    ] No existing commands found in stream
[2026-06-05 10:10:28,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:10:28,562.562 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 10:10:30,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:10:30,419.419 INFO    ] Checking for system updates...
[2026-06-05 10:10:30,466.466 INFO    ] 200
[2026-06-05 10:10:30,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:30,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:10:30,531.531 INFO    ] No update needed
[2026-06-05 10:10:30,534.534 INFO    ] Checking for camera pi updates...
[2026-06-05 10:10:30,569.569 INFO    ] 200
[2026-06-05 10:10:30,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:30,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:10:30,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:10:30,668.668 INFO    ] No camera update needed
[2026-06-05 10:10:30,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:10:30,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:10:30,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:10:30,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:10:32,727.727 INFO    ] ================================================
[2026-06-05 10:10:32,744.744 INFO    ] Launching Daemon at Fri Jun  5 10:10:32 IST 2026
[2026-06-05 10:10:32,755.755 INFO    ] ================================================
[2026-06-05 10:10:33,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:10:33
[2026-06-05 10:10:33,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:10:34,220.220 INFO    ] Initializing speech engine...
[2026-06-05 10:10:34,231.231 INFO    ] 2026-06-05 10:10:34
[2026-06-05 10:10:34,532.532 INFO    ] 2026-06-05 10:10:34
[2026-06-05 10:10:34,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:10:34,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:10:34,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:10:34,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:10:34,917.917 INFO    ] time= 05/06/2026 10:10:34
[2026-06-05 10:10:34,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:10:34,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:10:35,098.098 INFO    ] No existing commands found in stream
[2026-06-05 10:10:40,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:10:40,131.131 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 10:10:43,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:10:43,026.026 INFO    ] Checking for system updates...
[2026-06-05 10:10:43,063.063 INFO    ] 200
[2026-06-05 10:10:43,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:43,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:10:43,122.122 INFO    ] No update needed
[2026-06-05 10:10:43,124.124 INFO    ] Checking for camera pi updates...
[2026-06-05 10:10:43,160.160 INFO    ] 200
[2026-06-05 10:10:43,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:43,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:10:43,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:10:43,254.254 INFO    ] No camera update needed
[2026-06-05 10:10:43,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:10:43,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:10:43,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:10:43,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:10:45,316.316 INFO    ] ================================================
[2026-06-05 10:10:45,332.332 INFO    ] Launching Daemon at Fri Jun  5 10:10:45 IST 2026
[2026-06-05 10:10:45,343.343 INFO    ] ================================================
[2026-06-05 10:10:46,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:10:46
[2026-06-05 10:10:46,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:10:46,875.875 INFO    ] Initializing speech engine...
[2026-06-05 10:10:46,885.885 INFO    ] 2026-06-05 10:10:46
[2026-06-05 10:10:47,130.130 INFO    ] 2026-06-05 10:10:47
[2026-06-05 10:10:47,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:10:47,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:10:47,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:10:47,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:10:47,599.599 INFO    ] time= 05/06/2026 10:10:47
[2026-06-05 10:10:47,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:10:47,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:10:47,819.819 INFO    ] No existing commands found in stream
[2026-06-05 10:10:52,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:10:52,849.849 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 10:10:55,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:10:55,052.052 INFO    ] Checking for system updates...
[2026-06-05 10:10:55,089.089 INFO    ] 200
[2026-06-05 10:10:55,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:55,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:10:55,153.153 INFO    ] No update needed
[2026-06-05 10:10:55,156.156 INFO    ] Checking for camera pi updates...
[2026-06-05 10:10:55,193.193 INFO    ] 200
[2026-06-05 10:10:55,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:10:55,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:10:55,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:10:55,288.288 INFO    ] No camera update needed
[2026-06-05 10:10:55,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:10:55,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:10:55,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:10:55,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:10:57,354.354 INFO    ] ================================================
[2026-06-05 10:10:57,369.369 INFO    ] Launching Daemon at Fri Jun  5 10:10:57 IST 2026
[2026-06-05 10:10:57,380.380 INFO    ] ================================================
[2026-06-05 10:10:57,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:10:57
[2026-06-05 10:10:58,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:10:58,874.874 INFO    ] Initializing speech engine...
[2026-06-05 10:10:58,880.880 INFO    ] 2026-06-05 10:10:58
[2026-06-05 10:10:59,144.144 INFO    ] 2026-06-05 10:10:59
[2026-06-05 10:10:59,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:11:00,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:11:00,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:11:00,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:11:00,465.465 INFO    ] time= 05/06/2026 10:11:00
[2026-06-05 10:11:00,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:11:00,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:11:00,547.547 INFO    ] No existing commands found in stream
[2026-06-05 10:11:05,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:11:05,561.561 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 10:11:08,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:11:08,607.607 INFO    ] Checking for system updates...
[2026-06-05 10:11:08,646.646 INFO    ] 200
[2026-06-05 10:11:08,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:11:08,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:11:08,716.716 INFO    ] No update needed
[2026-06-05 10:11:08,719.719 INFO    ] Checking for camera pi updates...
[2026-06-05 10:11:08,759.759 INFO    ] 200
[2026-06-05 10:11:08,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:11:08,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:11:08,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:11:08,861.861 INFO    ] No camera update needed
[2026-06-05 10:11:08,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:11:08,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:11:08,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:11:08,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:11:10,918.918 INFO    ] ================================================
[2026-06-05 10:11:10,934.934 INFO    ] Launching Daemon at Fri Jun  5 10:11:10 IST 2026
[2026-06-05 10:11:10,946.946 INFO    ] ================================================
[2026-06-05 10:11:11,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:11:11
[2026-06-05 10:11:12,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:11:12,367.367 INFO    ] Initializing speech engine...
[2026-06-05 10:11:12,377.377 INFO    ] 2026-06-05 10:11:12
[2026-06-05 10:11:12,624.624 INFO    ] 2026-06-05 10:11:12
[2026-06-05 10:11:12,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:11:12,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:11:12,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:11:13,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:11:13,126.126 INFO    ] time= 05/06/2026 10:11:13
[2026-06-05 10:11:13,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:11:13,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:11:13,325.325 INFO    ] No existing commands found in stream
[2026-06-05 10:11:18,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:11:18,347.347 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-05 10:11:19,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:11:19,006.006 INFO    ] Checking for system updates...
[2026-06-05 10:11:19,042.042 INFO    ] 200
[2026-06-05 10:11:19,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:11:19,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:11:19,103.103 INFO    ] No update needed
[2026-06-05 10:11:19,106.106 INFO    ] Checking for camera pi updates...
[2026-06-05 10:11:19,141.141 INFO    ] 200
[2026-06-05 10:11:19,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:11:19,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:11:19,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:11:19,239.239 INFO    ] No camera update needed
[2026-06-05 10:11:19,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:11:19,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:11:19,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:11:19,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:11:21,298.298 INFO    ] ================================================
[2026-06-05 10:11:21,314.314 INFO    ] Launching Daemon at Fri Jun  5 10:11:21 IST 2026
[2026-06-05 10:11:21,325.325 INFO    ] ================================================
[2026-06-05 10:11:21,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:11:21
[2026-06-05 10:11:22,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:11:22,744.744 INFO    ] Initializing speech engine...
[2026-06-05 10:11:22,754.754 INFO    ] 2026-06-05 10:11:22
[2026-06-05 10:11:23,014.014 INFO    ] 2026-06-05 10:11:23
[2026-06-05 10:11:23,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:11:23,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:11:23,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:11:23,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:11:23,496.496 INFO    ] time= 05/06/2026 10:11:23
[2026-06-05 10:11:23,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:11:23,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:11:23,696.696 INFO    ] No existing commands found in stream
[2026-06-05 10:11:28,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:11:28,726.726 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 10:11:32,666.666 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:11:32,669.669 INFO    ] Checking for system updates...
[2026-06-05 10:11:32,707.707 INFO    ] 200
[2026-06-05 10:11:32,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:11:32,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:11:32,782.782 INFO    ] No update needed
[2026-06-05 10:11:32,786.786 INFO    ] Checking for camera pi updates...
[2026-06-05 10:11:32,836.836 INFO    ] 200
[2026-06-05 10:11:32,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:11:32,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:11:32,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:11:32,923.923 INFO    ] No camera update needed
[2026-06-05 10:11:32,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:11:32,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:11:32,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:11:32,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:11:34,980.980 INFO    ] ================================================
[2026-06-05 10:11:35,998.998 INFO    ] Launching Daemon at Fri Jun  5 10:11:34 IST 2026
[2026-06-05 10:11:35,009.009 INFO    ] ================================================
[2026-06-05 10:11:35,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:11:35
[2026-06-05 10:11:36,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:11:36,474.474 INFO    ] Initializing speech engine...
[2026-06-05 10:11:36,500.500 INFO    ] 2026-06-05 10:11:36
[2026-06-05 10:11:36,775.775 INFO    ] 2026-06-05 10:11:36
[2026-06-05 10:11:36,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:11:37,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:11:37,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:11:37,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:11:37,293.293 INFO    ] time= 05/06/2026 10:11:37
[2026-06-05 10:11:37,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:11:37,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:11:37,500.500 INFO    ] No existing commands found in stream
[2026-06-05 10:11:42,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:11:42,528.528 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 10:11:44,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:11:44,519.519 INFO    ] Checking for system updates...
[2026-06-05 10:11:44,560.560 INFO    ] 200
[2026-06-05 10:11:44,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:11:44,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:11:44,620.620 INFO    ] No update needed
[2026-06-05 10:11:44,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 10:11:44,659.659 INFO    ] 200
[2026-06-05 10:11:44,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:11:44,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:11:44,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:11:44,757.757 INFO    ] No camera update needed
[2026-06-05 10:11:44,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:11:44,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:11:44,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:11:44,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:11:46,815.815 INFO    ] ================================================
[2026-06-05 10:11:46,830.830 INFO    ] Launching Daemon at Fri Jun  5 10:11:46 IST 2026
[2026-06-05 10:11:46,842.842 INFO    ] ================================================
[2026-06-05 10:11:47,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:11:47
[2026-06-05 10:11:48,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:11:48,282.282 INFO    ] Initializing speech engine...
[2026-06-05 10:11:48,288.288 INFO    ] 2026-06-05 10:11:48
[2026-06-05 10:11:48,532.532 INFO    ] 2026-06-05 10:11:48
[2026-06-05 10:11:48,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:11:48,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:11:48,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:11:48,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:11:49,040.040 INFO    ] time= 05/06/2026 10:11:48
[2026-06-05 10:11:49,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:11:49,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:11:49,229.229 INFO    ] No existing commands found in stream
[2026-06-05 10:11:54,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:11:54,254.254 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 10:12:00,308.308 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:12:00,311.311 INFO    ] Checking for system updates...
[2026-06-05 10:12:00,347.347 INFO    ] 200
[2026-06-05 10:12:00,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:00,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:12:00,405.405 INFO    ] No update needed
[2026-06-05 10:12:00,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 10:12:00,441.441 INFO    ] 200
[2026-06-05 10:12:00,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:00,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:12:00,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:12:00,538.538 INFO    ] No camera update needed
[2026-06-05 10:12:00,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:12:00,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:12:00,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:12:00,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:12:02,624.624 INFO    ] ================================================
[2026-06-05 10:12:02,650.650 INFO    ] Launching Daemon at Fri Jun  5 10:12:02 IST 2026
[2026-06-05 10:12:02,680.680 INFO    ] ================================================
[2026-06-05 10:12:03,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:12:03
[2026-06-05 10:12:03,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:12:04,131.131 INFO    ] Initializing speech engine...
[2026-06-05 10:12:04,145.145 INFO    ] 2026-06-05 10:12:04
[2026-06-05 10:12:04,427.427 INFO    ] 2026-06-05 10:12:04
[2026-06-05 10:12:04,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:12:04,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:12:04,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:12:04,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:12:04,845.845 INFO    ] time= 05/06/2026 10:12:04
[2026-06-05 10:12:04,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:12:04,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:12:05,025.025 INFO    ] No existing commands found in stream
[2026-06-05 10:12:10,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:12:10,056.056 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 10:12:14,485.485 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:12:14,488.488 INFO    ] Checking for system updates...
[2026-06-05 10:12:14,527.527 INFO    ] 200
[2026-06-05 10:12:14,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:14,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:12:14,584.584 INFO    ] No update needed
[2026-06-05 10:12:14,586.586 INFO    ] Checking for camera pi updates...
[2026-06-05 10:12:14,622.622 INFO    ] 200
[2026-06-05 10:12:14,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:14,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:12:14,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:12:14,718.718 INFO    ] No camera update needed
[2026-06-05 10:12:14,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:12:14,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:12:14,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:12:14,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:12:16,773.773 INFO    ] ================================================
[2026-06-05 10:12:16,788.788 INFO    ] Launching Daemon at Fri Jun  5 10:12:16 IST 2026
[2026-06-05 10:12:16,799.799 INFO    ] ================================================
[2026-06-05 10:12:17,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:12:17
[2026-06-05 10:12:17,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:12:18,261.261 INFO    ] Initializing speech engine...
[2026-06-05 10:12:18,270.270 INFO    ] 2026-06-05 10:12:18
[2026-06-05 10:12:18,529.529 INFO    ] 2026-06-05 10:12:18
[2026-06-05 10:12:18,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:12:18,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:12:18,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:12:18,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:12:18,994.994 INFO    ] time= 05/06/2026 10:12:18
[2026-06-05 10:12:19,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:12:19,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:12:19,197.197 INFO    ] No existing commands found in stream
[2026-06-05 10:12:24,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:12:24,221.221 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 10:12:27,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:12:27,048.048 INFO    ] Checking for system updates...
[2026-06-05 10:12:27,083.083 INFO    ] 200
[2026-06-05 10:12:27,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:27,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:12:27,147.147 INFO    ] No update needed
[2026-06-05 10:12:27,150.150 INFO    ] Checking for camera pi updates...
[2026-06-05 10:12:27,184.184 INFO    ] 200
[2026-06-05 10:12:27,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:27,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:12:27,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:12:27,283.283 INFO    ] No camera update needed
[2026-06-05 10:12:27,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:12:27,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:12:27,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:12:27,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:12:29,340.340 INFO    ] ================================================
[2026-06-05 10:12:29,355.355 INFO    ] Launching Daemon at Fri Jun  5 10:12:29 IST 2026
[2026-06-05 10:12:29,366.366 INFO    ] ================================================
[2026-06-05 10:12:29,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:12:29
[2026-06-05 10:12:30,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:12:30,806.806 INFO    ] Initializing speech engine...
[2026-06-05 10:12:30,815.815 INFO    ] 2026-06-05 10:12:30
[2026-06-05 10:12:31,062.062 INFO    ] 2026-06-05 10:12:31
[2026-06-05 10:12:31,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:12:31,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:12:31,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:12:31,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:12:31,523.523 INFO    ] time= 05/06/2026 10:12:31
[2026-06-05 10:12:31,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:12:31,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:12:31,735.735 INFO    ] No existing commands found in stream
[2026-06-05 10:12:36,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:12:36,782.782 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 10:12:40,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:12:40,392.392 INFO    ] Checking for system updates...
[2026-06-05 10:12:40,427.427 INFO    ] 200
[2026-06-05 10:12:40,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:40,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:12:40,486.486 INFO    ] No update needed
[2026-06-05 10:12:40,489.489 INFO    ] Checking for camera pi updates...
[2026-06-05 10:12:40,522.522 INFO    ] 200
[2026-06-05 10:12:40,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:40,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:12:40,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:12:40,614.614 INFO    ] No camera update needed
[2026-06-05 10:12:40,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:12:40,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:12:40,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:12:40,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:12:42,669.669 INFO    ] ================================================
[2026-06-05 10:12:42,684.684 INFO    ] Launching Daemon at Fri Jun  5 10:12:42 IST 2026
[2026-06-05 10:12:42,695.695 INFO    ] ================================================
[2026-06-05 10:12:43,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:12:43
[2026-06-05 10:12:43,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:12:44,126.126 INFO    ] Initializing speech engine...
[2026-06-05 10:12:44,132.132 INFO    ] 2026-06-05 10:12:44
[2026-06-05 10:12:44,382.382 INFO    ] 2026-06-05 10:12:44
[2026-06-05 10:12:44,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:12:44,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:12:44,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:12:44,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:12:44,809.809 INFO    ] time= 05/06/2026 10:12:44
[2026-06-05 10:12:44,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:12:44,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:12:45,085.085 INFO    ] No existing commands found in stream
[2026-06-05 10:12:50,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:12:50,098.098 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 10:12:51,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:12:51,269.269 INFO    ] Checking for system updates...
[2026-06-05 10:12:51,306.306 INFO    ] 200
[2026-06-05 10:12:51,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:51,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:12:51,370.370 INFO    ] No update needed
[2026-06-05 10:12:51,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 10:12:51,409.409 INFO    ] 200
[2026-06-05 10:12:51,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:12:51,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:12:51,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:12:51,502.502 INFO    ] No camera update needed
[2026-06-05 10:12:51,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:12:51,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:12:51,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:12:51,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:12:53,560.560 INFO    ] ================================================
[2026-06-05 10:12:53,574.574 INFO    ] Launching Daemon at Fri Jun  5 10:12:53 IST 2026
[2026-06-05 10:12:53,596.596 INFO    ] ================================================
[2026-06-05 10:12:54,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:12:54
[2026-06-05 10:12:54,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:12:55,044.044 INFO    ] Initializing speech engine...
[2026-06-05 10:12:55,064.064 INFO    ] 2026-06-05 10:12:55
[2026-06-05 10:12:55,332.332 INFO    ] 2026-06-05 10:12:55
[2026-06-05 10:12:55,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:12:55,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:12:55,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:12:55,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:12:55,745.745 INFO    ] time= 05/06/2026 10:12:55
[2026-06-05 10:12:55,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:12:55,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:12:55,834.834 INFO    ] No existing commands found in stream
[2026-06-05 10:13:00,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:13:00,862.862 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 10:13:02,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:13:02,512.512 INFO    ] Checking for system updates...
[2026-06-05 10:13:02,572.572 INFO    ] 200
[2026-06-05 10:13:02,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:02,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:13:02,640.640 INFO    ] No update needed
[2026-06-05 10:13:02,643.643 INFO    ] Checking for camera pi updates...
[2026-06-05 10:13:02,690.690 INFO    ] 200
[2026-06-05 10:13:02,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:02,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:13:02,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:13:02,799.799 INFO    ] No camera update needed
[2026-06-05 10:13:02,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:13:02,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:13:02,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:13:02,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:13:04,856.856 INFO    ] ================================================
[2026-06-05 10:13:04,872.872 INFO    ] Launching Daemon at Fri Jun  5 10:13:04 IST 2026
[2026-06-05 10:13:04,883.883 INFO    ] ================================================
[2026-06-05 10:13:05,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:13:05
[2026-06-05 10:13:06,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:13:06,372.372 INFO    ] Initializing speech engine...
[2026-06-05 10:13:06,381.381 INFO    ] 2026-06-05 10:13:06
[2026-06-05 10:13:06,653.653 INFO    ] 2026-06-05 10:13:06
[2026-06-05 10:13:06,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:13:06,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:13:06,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:13:07,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:13:07,181.181 INFO    ] time= 05/06/2026 10:13:07
[2026-06-05 10:13:07,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:13:07,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:13:07,331.331 INFO    ] No existing commands found in stream
[2026-06-05 10:13:12,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:13:12,349.349 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 10:13:15,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:13:15,070.070 INFO    ] Checking for system updates...
[2026-06-05 10:13:15,107.107 INFO    ] 200
[2026-06-05 10:13:15,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:15,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:13:15,172.172 INFO    ] No update needed
[2026-06-05 10:13:15,174.174 INFO    ] Checking for camera pi updates...
[2026-06-05 10:13:15,208.208 INFO    ] 200
[2026-06-05 10:13:15,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:15,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:13:15,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:13:15,408.408 INFO    ] No camera update needed
[2026-06-05 10:13:15,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:13:15,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:13:15,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:13:15,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:13:17,463.463 INFO    ] ================================================
[2026-06-05 10:13:17,479.479 INFO    ] Launching Daemon at Fri Jun  5 10:13:17 IST 2026
[2026-06-05 10:13:17,491.491 INFO    ] ================================================
[2026-06-05 10:13:18,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:13:18
[2026-06-05 10:13:18,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:13:18,893.893 INFO    ] Initializing speech engine...
[2026-06-05 10:13:18,908.908 INFO    ] 2026-06-05 10:13:18
[2026-06-05 10:13:19,173.173 INFO    ] 2026-06-05 10:13:19
[2026-06-05 10:13:19,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:13:19,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:13:19,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:13:19,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:13:19,741.741 INFO    ] time= 05/06/2026 10:13:19
[2026-06-05 10:13:19,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:13:19,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:13:19,895.895 INFO    ] No existing commands found in stream
[2026-06-05 10:13:24,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:13:24,913.913 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 10:13:25,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:13:25,774.774 INFO    ] Checking for system updates...
[2026-06-05 10:13:25,814.814 INFO    ] 200
[2026-06-05 10:13:25,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:25,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:13:25,878.878 INFO    ] No update needed
[2026-06-05 10:13:25,880.880 INFO    ] Checking for camera pi updates...
[2026-06-05 10:13:25,914.914 INFO    ] 200
[2026-06-05 10:13:25,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:25,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:13:26,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:13:26,019.019 INFO    ] No camera update needed
[2026-06-05 10:13:26,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:13:26,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:13:26,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:13:26,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:13:28,075.075 INFO    ] ================================================
[2026-06-05 10:13:28,091.091 INFO    ] Launching Daemon at Fri Jun  5 10:13:28 IST 2026
[2026-06-05 10:13:28,102.102 INFO    ] ================================================
[2026-06-05 10:13:28,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:13:28
[2026-06-05 10:13:29,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:13:29,563.563 INFO    ] Initializing speech engine...
[2026-06-05 10:13:29,571.571 INFO    ] 2026-06-05 10:13:29
[2026-06-05 10:13:29,844.844 INFO    ] 2026-06-05 10:13:29
[2026-06-05 10:13:29,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:13:30,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:13:30,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:13:30,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:13:30,409.409 INFO    ] time= 05/06/2026 10:13:30
[2026-06-05 10:13:30,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:13:30,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:13:30,542.542 INFO    ] No existing commands found in stream
[2026-06-05 10:13:35,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:13:35,570.570 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 10:13:38,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:13:38,150.150 INFO    ] Checking for system updates...
[2026-06-05 10:13:38,185.185 INFO    ] 200
[2026-06-05 10:13:38,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:38,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:13:38,249.249 INFO    ] No update needed
[2026-06-05 10:13:38,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 10:13:38,289.289 INFO    ] 200
[2026-06-05 10:13:38,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:38,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:13:38,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:13:38,405.405 INFO    ] No camera update needed
[2026-06-05 10:13:38,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:13:38,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:13:38,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:13:38,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:13:40,465.465 INFO    ] ================================================
[2026-06-05 10:13:40,480.480 INFO    ] Launching Daemon at Fri Jun  5 10:13:40 IST 2026
[2026-06-05 10:13:40,491.491 INFO    ] ================================================
[2026-06-05 10:13:41,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:13:41
[2026-06-05 10:13:41,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:13:41,899.899 INFO    ] Initializing speech engine...
[2026-06-05 10:13:41,905.905 INFO    ] 2026-06-05 10:13:41
[2026-06-05 10:13:42,179.179 INFO    ] 2026-06-05 10:13:42
[2026-06-05 10:13:42,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:13:42,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:13:42,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:13:42,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:13:42,755.755 INFO    ] time= 05/06/2026 10:13:42
[2026-06-05 10:13:42,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:13:42,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:13:42,912.912 INFO    ] No existing commands found in stream
[2026-06-05 10:13:47,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:13:47,929.929 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 10:13:51,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:13:51,588.588 INFO    ] Checking for system updates...
[2026-06-05 10:13:51,629.629 INFO    ] 200
[2026-06-05 10:13:51,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:51,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:13:51,689.689 INFO    ] No update needed
[2026-06-05 10:13:51,692.692 INFO    ] Checking for camera pi updates...
[2026-06-05 10:13:51,725.725 INFO    ] 200
[2026-06-05 10:13:51,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:13:51,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:13:51,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:13:51,801.801 INFO    ] No camera update needed
[2026-06-05 10:13:51,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:13:51,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:13:51,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:13:51,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:13:53,856.856 INFO    ] ================================================
[2026-06-05 10:13:53,871.871 INFO    ] Launching Daemon at Fri Jun  5 10:13:53 IST 2026
[2026-06-05 10:13:53,882.882 INFO    ] ================================================
[2026-06-05 10:13:54,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:13:54
[2026-06-05 10:13:55,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:13:55,292.292 INFO    ] Initializing speech engine...
[2026-06-05 10:13:55,297.297 INFO    ] 2026-06-05 10:13:55
[2026-06-05 10:13:55,589.589 INFO    ] 2026-06-05 10:13:55
[2026-06-05 10:13:55,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:13:55,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:13:55,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:13:55,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:13:55,966.966 INFO    ] time= 05/06/2026 10:13:55
[2026-06-05 10:13:55,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:13:56,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:13:56,090.090 INFO    ] No existing commands found in stream
[2026-06-05 10:14:01,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:14:01,104.104 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 10:14:03,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:14:03,280.280 INFO    ] Checking for system updates...
[2026-06-05 10:14:03,319.319 INFO    ] 200
[2026-06-05 10:14:03,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:03,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:14:03,378.378 INFO    ] No update needed
[2026-06-05 10:14:03,381.381 INFO    ] Checking for camera pi updates...
[2026-06-05 10:14:03,414.414 INFO    ] 200
[2026-06-05 10:14:03,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:03,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:14:03,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:14:03,492.492 INFO    ] No camera update needed
[2026-06-05 10:14:03,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:14:03,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:14:03,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:14:03,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:14:05,553.553 INFO    ] ================================================
[2026-06-05 10:14:05,568.568 INFO    ] Launching Daemon at Fri Jun  5 10:14:05 IST 2026
[2026-06-05 10:14:05,579.579 INFO    ] ================================================
[2026-06-05 10:14:06,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:14:06
[2026-06-05 10:14:06,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:14:07,013.013 INFO    ] Initializing speech engine...
[2026-06-05 10:14:07,036.036 INFO    ] 2026-06-05 10:14:07
[2026-06-05 10:14:07,290.290 INFO    ] 2026-06-05 10:14:07
[2026-06-05 10:14:07,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:14:07,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:14:07,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:14:07,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:14:07,784.784 INFO    ] time= 05/06/2026 10:14:07
[2026-06-05 10:14:07,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:14:07,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:14:08,004.004 INFO    ] No existing commands found in stream
[2026-06-05 10:14:13,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:14:13,019.019 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 10:14:16,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:14:16,766.766 INFO    ] Checking for system updates...
[2026-06-05 10:14:16,805.805 INFO    ] 200
[2026-06-05 10:14:16,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:16,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:14:16,868.868 INFO    ] No update needed
[2026-06-05 10:14:16,870.870 INFO    ] Checking for camera pi updates...
[2026-06-05 10:14:16,904.904 INFO    ] 200
[2026-06-05 10:14:16,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:16,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:14:16,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:14:16,999.999 INFO    ] No camera update needed
[2026-06-05 10:14:17,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:14:17,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:14:17,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:14:17,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:14:19,056.056 INFO    ] ================================================
[2026-06-05 10:14:19,071.071 INFO    ] Launching Daemon at Fri Jun  5 10:14:19 IST 2026
[2026-06-05 10:14:19,082.082 INFO    ] ================================================
[2026-06-05 10:14:19,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:14:19
[2026-06-05 10:14:20,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:14:20,502.502 INFO    ] Initializing speech engine...
[2026-06-05 10:14:20,511.511 INFO    ] 2026-06-05 10:14:20
[2026-06-05 10:14:20,756.756 INFO    ] 2026-06-05 10:14:20
[2026-06-05 10:14:20,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:14:21,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:14:21,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:14:21,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:14:21,199.199 INFO    ] time= 05/06/2026 10:14:21
[2026-06-05 10:14:21,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:14:21,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:14:21,465.465 INFO    ] No existing commands found in stream
[2026-06-05 10:14:26,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:14:26,483.483 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 10:14:28,752.752 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:14:28,754.754 INFO    ] Checking for system updates...
[2026-06-05 10:14:28,791.791 INFO    ] 200
[2026-06-05 10:14:28,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:28,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:14:28,851.851 INFO    ] No update needed
[2026-06-05 10:14:28,853.853 INFO    ] Checking for camera pi updates...
[2026-06-05 10:14:28,888.888 INFO    ] 200
[2026-06-05 10:14:28,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:28,938.938 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:14:28,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:14:28,987.987 INFO    ] No camera update needed
[2026-06-05 10:14:28,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:14:28,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:14:28,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:14:29,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:14:31,048.048 INFO    ] ================================================
[2026-06-05 10:14:31,064.064 INFO    ] Launching Daemon at Fri Jun  5 10:14:31 IST 2026
[2026-06-05 10:14:31,075.075 INFO    ] ================================================
[2026-06-05 10:14:31,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:14:31
[2026-06-05 10:14:32,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:14:32,640.640 INFO    ] Initializing speech engine...
[2026-06-05 10:14:32,663.663 INFO    ] 2026-06-05 10:14:32
[2026-06-05 10:14:32,950.950 INFO    ] 2026-06-05 10:14:32
[2026-06-05 10:14:32,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:14:33,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:14:33,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:14:33,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:14:33,466.466 INFO    ] time= 05/06/2026 10:14:33
[2026-06-05 10:14:33,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:14:33,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:14:33,674.674 INFO    ] No existing commands found in stream
[2026-06-05 10:14:38,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:14:38,697.697 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 10:14:41,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:14:41,301.301 INFO    ] Checking for system updates...
[2026-06-05 10:14:41,342.342 INFO    ] 200
[2026-06-05 10:14:41,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:41,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:14:41,409.409 INFO    ] No update needed
[2026-06-05 10:14:41,412.412 INFO    ] Checking for camera pi updates...
[2026-06-05 10:14:41,447.447 INFO    ] 200
[2026-06-05 10:14:41,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:41,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:14:41,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:14:41,557.557 INFO    ] No camera update needed
[2026-06-05 10:14:41,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:14:41,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:14:41,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:14:41,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:14:43,615.615 INFO    ] ================================================
[2026-06-05 10:14:43,631.631 INFO    ] Launching Daemon at Fri Jun  5 10:14:43 IST 2026
[2026-06-05 10:14:43,643.643 INFO    ] ================================================
[2026-06-05 10:14:44,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:14:44
[2026-06-05 10:14:44,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:14:45,140.140 INFO    ] Initializing speech engine...
[2026-06-05 10:14:45,148.148 INFO    ] 2026-06-05 10:14:45
[2026-06-05 10:14:45,421.421 INFO    ] 2026-06-05 10:14:45
[2026-06-05 10:14:45,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:14:45,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:14:45,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:14:45,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:14:45,889.889 INFO    ] time= 05/06/2026 10:14:45
[2026-06-05 10:14:45,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:14:45,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:14:46,111.111 INFO    ] No existing commands found in stream
[2026-06-05 10:14:51,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:14:51,129.129 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 10:14:53,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:14:53,814.814 INFO    ] Checking for system updates...
[2026-06-05 10:14:53,851.851 INFO    ] 200
[2026-06-05 10:14:53,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:53,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:14:53,920.920 INFO    ] No update needed
[2026-06-05 10:14:53,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 10:14:53,961.961 INFO    ] 200
[2026-06-05 10:14:53,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:14:54,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:14:54,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:14:54,064.064 INFO    ] No camera update needed
[2026-06-05 10:14:54,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:14:54,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:14:54,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:14:54,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:14:56,124.124 INFO    ] ================================================
[2026-06-05 10:14:56,139.139 INFO    ] Launching Daemon at Fri Jun  5 10:14:56 IST 2026
[2026-06-05 10:14:56,151.151 INFO    ] ================================================
[2026-06-05 10:14:56,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:14:56
[2026-06-05 10:14:57,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:14:57,778.778 INFO    ] Initializing speech engine...
[2026-06-05 10:14:57,791.791 INFO    ] 2026-06-05 10:14:57
[2026-06-05 10:14:58,070.070 INFO    ] 2026-06-05 10:14:58
[2026-06-05 10:14:58,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:14:59,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:14:59,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:15:00,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:15:00,138.138 INFO    ] time= 05/06/2026 10:15:00
[2026-06-05 10:15:00,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:15:00,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:15:00,250.250 INFO    ] No existing commands found in stream
[2026-06-05 10:15:05,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:15:05,278.278 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 10:15:09,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:15:09,174.174 INFO    ] Checking for system updates...
[2026-06-05 10:15:09,212.212 INFO    ] 200
[2026-06-05 10:15:09,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:15:09,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:15:09,271.271 INFO    ] No update needed
[2026-06-05 10:15:09,273.273 INFO    ] Checking for camera pi updates...
[2026-06-05 10:15:09,308.308 INFO    ] 200
[2026-06-05 10:15:09,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:15:09,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:15:09,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:15:09,409.409 INFO    ] No camera update needed
[2026-06-05 10:15:09,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:15:09,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:15:09,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:15:09,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:15:11,466.466 INFO    ] ================================================
[2026-06-05 10:15:11,481.481 INFO    ] Launching Daemon at Fri Jun  5 10:15:11 IST 2026
[2026-06-05 10:15:11,493.493 INFO    ] ================================================
[2026-06-05 10:15:12,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:15:12
[2026-06-05 10:15:12,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:15:13,176.176 INFO    ] Initializing speech engine...
[2026-06-05 10:15:13,190.190 INFO    ] 2026-06-05 10:15:13
[2026-06-05 10:15:13,475.475 INFO    ] 2026-06-05 10:15:13
[2026-06-05 10:15:13,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:15:13,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:15:13,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:15:13,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:15:14,032.032 INFO    ] time= 05/06/2026 10:15:13
[2026-06-05 10:15:14,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:15:14,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:15:14,215.215 INFO    ] No existing commands found in stream
[2026-06-05 10:15:19,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:15:19,244.244 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 10:15:23,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:15:23,787.787 INFO    ] Checking for system updates...
[2026-06-05 10:15:23,823.823 INFO    ] 200
[2026-06-05 10:15:23,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:15:23,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:15:23,891.891 INFO    ] No update needed
[2026-06-05 10:15:23,894.894 INFO    ] Checking for camera pi updates...
[2026-06-05 10:15:23,928.928 INFO    ] 200
[2026-06-05 10:15:23,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:15:23,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:15:24,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:15:24,121.121 INFO    ] No camera update needed
[2026-06-05 10:15:24,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:15:24,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:15:24,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:15:24,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:15:26,176.176 INFO    ] ================================================
[2026-06-05 10:15:26,192.192 INFO    ] Launching Daemon at Fri Jun  5 10:15:26 IST 2026
[2026-06-05 10:15:26,203.203 INFO    ] ================================================
[2026-06-05 10:15:26,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:15:26
[2026-06-05 10:15:27,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:15:27,651.651 INFO    ] Initializing speech engine...
[2026-06-05 10:15:27,658.658 INFO    ] 2026-06-05 10:15:27
[2026-06-05 10:15:27,907.907 INFO    ] 2026-06-05 10:15:27
[2026-06-05 10:15:27,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:15:29,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:15:29,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:15:30,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:15:30,124.124 INFO    ] time= 05/06/2026 10:15:30
[2026-06-05 10:15:30,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:15:30,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:15:30,263.263 INFO    ] No existing commands found in stream
[2026-06-05 10:15:35,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:15:35,277.277 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 10:15:38,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:15:38,396.396 INFO    ] Checking for system updates...
[2026-06-05 10:15:38,438.438 INFO    ] 200
[2026-06-05 10:15:38,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:15:38,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:15:38,497.497 INFO    ] No update needed
[2026-06-05 10:15:38,500.500 INFO    ] Checking for camera pi updates...
[2026-06-05 10:15:38,537.537 INFO    ] 200
[2026-06-05 10:15:38,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:15:38,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:15:38,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:15:38,616.616 INFO    ] No camera update needed
[2026-06-05 10:15:38,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:15:38,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:15:38,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:15:38,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:15:40,675.675 INFO    ] ================================================
[2026-06-05 10:15:40,692.692 INFO    ] Launching Daemon at Fri Jun  5 10:15:40 IST 2026
[2026-06-05 10:15:40,703.703 INFO    ] ================================================
[2026-06-05 10:15:41,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:15:41
[2026-06-05 10:15:41,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:15:42,164.164 INFO    ] Initializing speech engine...
[2026-06-05 10:15:42,172.172 INFO    ] 2026-06-05 10:15:42
[2026-06-05 10:15:42,424.424 INFO    ] 2026-06-05 10:15:42
[2026-06-05 10:15:42,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:15:42,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:15:42,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:15:42,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:15:42,921.921 INFO    ] time= 05/06/2026 10:15:42
[2026-06-05 10:15:42,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:15:42,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:15:43,133.133 INFO    ] No existing commands found in stream
[2026-06-05 10:15:48,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:15:48,150.150 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 10:15:50,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:15:50,498.498 INFO    ] Checking for system updates...
[2026-06-05 10:15:50,536.536 INFO    ] 200
[2026-06-05 10:15:50,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:15:50,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:15:50,593.593 INFO    ] No update needed
[2026-06-05 10:15:50,596.596 INFO    ] Checking for camera pi updates...
[2026-06-05 10:15:50,630.630 INFO    ] 200
[2026-06-05 10:15:50,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:15:50,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:15:50,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:15:50,718.718 INFO    ] No camera update needed
[2026-06-05 10:15:50,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:15:50,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:15:50,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:15:50,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:15:52,777.777 INFO    ] ================================================
[2026-06-05 10:15:52,793.793 INFO    ] Launching Daemon at Fri Jun  5 10:15:52 IST 2026
[2026-06-05 10:15:52,804.804 INFO    ] ================================================
[2026-06-05 10:15:53,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:15:53
[2026-06-05 10:15:54,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:15:54,482.482 INFO    ] Initializing speech engine...
[2026-06-05 10:15:54,494.494 INFO    ] 2026-06-05 10:15:54
[2026-06-05 10:15:54,810.810 INFO    ] 2026-06-05 10:15:54
[2026-06-05 10:15:54,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:15:55,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:15:55,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:15:55,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:15:55,358.358 INFO    ] time= 05/06/2026 10:15:55
[2026-06-05 10:15:55,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:15:55,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:15:55,513.513 INFO    ] No existing commands found in stream
[2026-06-05 10:16:00,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:16:00,542.542 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 10:16:04,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:16:04,303.303 INFO    ] Checking for system updates...
[2026-06-05 10:16:04,340.340 INFO    ] 200
[2026-06-05 10:16:04,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:04,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:16:04,409.409 INFO    ] No update needed
[2026-06-05 10:16:04,412.412 INFO    ] Checking for camera pi updates...
[2026-06-05 10:16:04,457.457 INFO    ] 200
[2026-06-05 10:16:04,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:04,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:16:04,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:16:04,542.542 INFO    ] No camera update needed
[2026-06-05 10:16:04,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:16:04,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:16:04,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:16:04,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:16:06,597.597 INFO    ] ================================================
[2026-06-05 10:16:06,613.613 INFO    ] Launching Daemon at Fri Jun  5 10:16:06 IST 2026
[2026-06-05 10:16:06,624.624 INFO    ] ================================================
[2026-06-05 10:16:07,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:16:07
[2026-06-05 10:16:07,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:16:08,120.120 INFO    ] Initializing speech engine...
[2026-06-05 10:16:08,134.134 INFO    ] 2026-06-05 10:16:08
[2026-06-05 10:16:08,421.421 INFO    ] 2026-06-05 10:16:08
[2026-06-05 10:16:08,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:16:08,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:16:08,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:16:08,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:16:08,955.955 INFO    ] time= 05/06/2026 10:16:08
[2026-06-05 10:16:08,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:16:09,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:16:09,147.147 INFO    ] No existing commands found in stream
[2026-06-05 10:16:14,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:16:14,178.178 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-05 10:16:15,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:16:15,052.052 INFO    ] Checking for system updates...
[2026-06-05 10:16:15,089.089 INFO    ] 200
[2026-06-05 10:16:15,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:15,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:16:15,157.157 INFO    ] No update needed
[2026-06-05 10:16:15,161.161 INFO    ] Checking for camera pi updates...
[2026-06-05 10:16:15,196.196 INFO    ] 200
[2026-06-05 10:16:15,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:15,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:16:15,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:16:15,300.300 INFO    ] No camera update needed
[2026-06-05 10:16:15,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:16:15,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:16:15,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:16:15,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:16:17,361.361 INFO    ] ================================================
[2026-06-05 10:16:17,377.377 INFO    ] Launching Daemon at Fri Jun  5 10:16:17 IST 2026
[2026-06-05 10:16:17,389.389 INFO    ] ================================================
[2026-06-05 10:16:17,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:16:17
[2026-06-05 10:16:18,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:16:18,789.789 INFO    ] Initializing speech engine...
[2026-06-05 10:16:18,802.802 INFO    ] 2026-06-05 10:16:18
[2026-06-05 10:16:19,067.067 INFO    ] 2026-06-05 10:16:19
[2026-06-05 10:16:19,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:16:19,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:16:19,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:16:19,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:16:19,535.535 INFO    ] time= 05/06/2026 10:16:19
[2026-06-05 10:16:19,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:16:19,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:16:19,804.804 INFO    ] No existing commands found in stream
[2026-06-05 10:16:24,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:16:24,826.826 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 10:16:26,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:16:26,861.861 INFO    ] Checking for system updates...
[2026-06-05 10:16:26,897.897 INFO    ] 200
[2026-06-05 10:16:26,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:26,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:16:26,962.962 INFO    ] No update needed
[2026-06-05 10:16:26,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 10:16:26,998.998 INFO    ] 200
[2026-06-05 10:16:27,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:27,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:16:27,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:16:27,109.109 INFO    ] No camera update needed
[2026-06-05 10:16:27,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:16:27,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:16:27,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:16:27,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:16:29,168.168 INFO    ] ================================================
[2026-06-05 10:16:29,188.188 INFO    ] Launching Daemon at Fri Jun  5 10:16:29 IST 2026
[2026-06-05 10:16:29,199.199 INFO    ] ================================================
[2026-06-05 10:16:29,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:16:29
[2026-06-05 10:16:30,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:16:30,736.736 INFO    ] Initializing speech engine...
[2026-06-05 10:16:30,746.746 INFO    ] 2026-06-05 10:16:30
[2026-06-05 10:16:31,062.062 INFO    ] 2026-06-05 10:16:31
[2026-06-05 10:16:31,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:16:31,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:16:31,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:16:31,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:16:31,585.585 INFO    ] time= 05/06/2026 10:16:31
[2026-06-05 10:16:31,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:16:31,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:16:31,726.726 INFO    ] No existing commands found in stream
[2026-06-05 10:16:36,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:16:36,743.743 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 10:16:39,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:16:39,456.456 INFO    ] Checking for system updates...
[2026-06-05 10:16:39,493.493 INFO    ] 200
[2026-06-05 10:16:39,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:39,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:16:39,553.553 INFO    ] No update needed
[2026-06-05 10:16:39,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 10:16:39,596.596 INFO    ] 200
[2026-06-05 10:16:39,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:39,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:16:39,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:16:39,702.702 INFO    ] No camera update needed
[2026-06-05 10:16:39,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:16:39,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:16:39,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:16:39,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:16:41,763.763 INFO    ] ================================================
[2026-06-05 10:16:41,778.778 INFO    ] Launching Daemon at Fri Jun  5 10:16:41 IST 2026
[2026-06-05 10:16:41,788.788 INFO    ] ================================================
[2026-06-05 10:16:42,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:16:42
[2026-06-05 10:16:42,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:16:43,212.212 INFO    ] Initializing speech engine...
[2026-06-05 10:16:43,221.221 INFO    ] 2026-06-05 10:16:43
[2026-06-05 10:16:43,468.468 INFO    ] 2026-06-05 10:16:43
[2026-06-05 10:16:43,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:16:43,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:16:43,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:16:43,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:16:43,933.933 INFO    ] time= 05/06/2026 10:16:43
[2026-06-05 10:16:43,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:16:44,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:16:44,181.181 INFO    ] No existing commands found in stream
[2026-06-05 10:16:49,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:16:49,212.212 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 10:16:51,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:16:51,541.541 INFO    ] Checking for system updates...
[2026-06-05 10:16:51,582.582 INFO    ] 200
[2026-06-05 10:16:51,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:51,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:16:51,640.640 INFO    ] No update needed
[2026-06-05 10:16:51,643.643 INFO    ] Checking for camera pi updates...
[2026-06-05 10:16:51,677.677 INFO    ] 200
[2026-06-05 10:16:51,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:16:51,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:16:51,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:16:51,780.780 INFO    ] No camera update needed
[2026-06-05 10:16:51,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:16:51,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:16:51,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:16:51,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:16:53,837.837 INFO    ] ================================================
[2026-06-05 10:16:53,852.852 INFO    ] Launching Daemon at Fri Jun  5 10:16:53 IST 2026
[2026-06-05 10:16:53,863.863 INFO    ] ================================================
[2026-06-05 10:16:54,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:16:54
[2026-06-05 10:16:55,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:16:55,355.355 INFO    ] Initializing speech engine...
[2026-06-05 10:16:55,364.364 INFO    ] 2026-06-05 10:16:55
[2026-06-05 10:16:55,610.610 INFO    ] 2026-06-05 10:16:55
[2026-06-05 10:16:55,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:16:55,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:16:55,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:16:56,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:16:56,163.163 INFO    ] time= 05/06/2026 10:16:56
[2026-06-05 10:16:56,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:16:56,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:16:56,298.298 INFO    ] No existing commands found in stream
[2026-06-05 10:17:01,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:17:01,330.330 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-05 10:17:01,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:17:01,995.995 INFO    ] Checking for system updates...
[2026-06-05 10:17:02,092.092 INFO    ] 200
[2026-06-05 10:17:02,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:02,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:17:02,210.210 INFO    ] No update needed
[2026-06-05 10:17:02,214.214 INFO    ] Checking for camera pi updates...
[2026-06-05 10:17:02,258.258 INFO    ] 200
[2026-06-05 10:17:02,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:02,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:17:02,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:17:02,442.442 INFO    ] No camera update needed
[2026-06-05 10:17:02,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:17:02,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:17:02,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:17:02,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:17:04,507.507 INFO    ] ================================================
[2026-06-05 10:17:04,522.522 INFO    ] Launching Daemon at Fri Jun  5 10:17:04 IST 2026
[2026-06-05 10:17:04,533.533 INFO    ] ================================================
[2026-06-05 10:17:05,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:17:05
[2026-06-05 10:17:05,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:17:05,938.938 INFO    ] Initializing speech engine...
[2026-06-05 10:17:05,951.951 INFO    ] 2026-06-05 10:17:05
[2026-06-05 10:17:06,216.216 INFO    ] 2026-06-05 10:17:06
[2026-06-05 10:17:06,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:17:06,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:17:06,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:17:06,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:17:06,708.708 INFO    ] time= 05/06/2026 10:17:06
[2026-06-05 10:17:06,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:17:06,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:17:06,950.950 INFO    ] No existing commands found in stream
[2026-06-05 10:17:11,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:17:11,977.977 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 10:17:16,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:17:16,035.035 INFO    ] Checking for system updates...
[2026-06-05 10:17:16,071.071 INFO    ] 200
[2026-06-05 10:17:16,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:16,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:17:16,135.135 INFO    ] No update needed
[2026-06-05 10:17:16,138.138 INFO    ] Checking for camera pi updates...
[2026-06-05 10:17:16,171.171 INFO    ] 200
[2026-06-05 10:17:16,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:16,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:17:16,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:17:16,273.273 INFO    ] No camera update needed
[2026-06-05 10:17:16,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:17:16,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:17:16,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:17:16,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:17:18,329.329 INFO    ] ================================================
[2026-06-05 10:17:18,344.344 INFO    ] Launching Daemon at Fri Jun  5 10:17:18 IST 2026
[2026-06-05 10:17:18,354.354 INFO    ] ================================================
[2026-06-05 10:17:19,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:17:19
[2026-06-05 10:17:19,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:17:19,912.912 INFO    ] Initializing speech engine...
[2026-06-05 10:17:19,927.927 INFO    ] 2026-06-05 10:17:19
[2026-06-05 10:17:20,193.193 INFO    ] 2026-06-05 10:17:20
[2026-06-05 10:17:20,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:17:20,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:17:20,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:17:20,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:17:20,686.686 INFO    ] time= 05/06/2026 10:17:20
[2026-06-05 10:17:20,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:17:20,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:17:20,891.891 INFO    ] No existing commands found in stream
[2026-06-05 10:17:25,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:17:25,917.917 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 10:17:30,261.261 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:17:30,263.263 INFO    ] Checking for system updates...
[2026-06-05 10:17:30,301.301 INFO    ] 200
[2026-06-05 10:17:30,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:30,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:17:30,361.361 INFO    ] No update needed
[2026-06-05 10:17:30,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 10:17:30,402.402 INFO    ] 200
[2026-06-05 10:17:30,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:30,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:17:30,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:17:30,596.596 INFO    ] No camera update needed
[2026-06-05 10:17:30,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:17:30,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:17:30,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:17:30,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:17:32,656.656 INFO    ] ================================================
[2026-06-05 10:17:32,674.674 INFO    ] Launching Daemon at Fri Jun  5 10:17:32 IST 2026
[2026-06-05 10:17:32,686.686 INFO    ] ================================================
[2026-06-05 10:17:33,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:17:33
[2026-06-05 10:17:33,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:17:34,156.156 INFO    ] Initializing speech engine...
[2026-06-05 10:17:34,164.164 INFO    ] 2026-06-05 10:17:34
[2026-06-05 10:17:34,416.416 INFO    ] 2026-06-05 10:17:34
[2026-06-05 10:17:34,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:17:34,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:17:34,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:17:34,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:17:34,928.928 INFO    ] time= 05/06/2026 10:17:34
[2026-06-05 10:17:34,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:17:35,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:17:35,170.170 INFO    ] No existing commands found in stream
[2026-06-05 10:17:40,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:17:40,197.197 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 10:17:42,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:17:42,007.007 INFO    ] Checking for system updates...
[2026-06-05 10:17:42,047.047 INFO    ] 200
[2026-06-05 10:17:42,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:42,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:17:42,106.106 INFO    ] No update needed
[2026-06-05 10:17:42,109.109 INFO    ] Checking for camera pi updates...
[2026-06-05 10:17:42,143.143 INFO    ] 200
[2026-06-05 10:17:42,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:42,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:17:42,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:17:42,240.240 INFO    ] No camera update needed
[2026-06-05 10:17:42,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:17:42,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:17:42,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:17:42,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:17:44,298.298 INFO    ] ================================================
[2026-06-05 10:17:44,313.313 INFO    ] Launching Daemon at Fri Jun  5 10:17:44 IST 2026
[2026-06-05 10:17:44,327.327 INFO    ] ================================================
[2026-06-05 10:17:44,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:17:44
[2026-06-05 10:17:45,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:17:45,757.757 INFO    ] Initializing speech engine...
[2026-06-05 10:17:45,766.766 INFO    ] 2026-06-05 10:17:45
[2026-06-05 10:17:46,016.016 INFO    ] 2026-06-05 10:17:46
[2026-06-05 10:17:46,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:17:46,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:17:46,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:17:46,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:17:46,517.517 INFO    ] time= 05/06/2026 10:17:46
[2026-06-05 10:17:46,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:17:46,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:17:46,676.676 INFO    ] No existing commands found in stream
[2026-06-05 10:17:51,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:17:51,691.691 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 10:17:55,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:17:55,292.292 INFO    ] Checking for system updates...
[2026-06-05 10:17:55,327.327 INFO    ] 200
[2026-06-05 10:17:55,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:55,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:17:55,384.384 INFO    ] No update needed
[2026-06-05 10:17:55,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 10:17:55,425.425 INFO    ] 200
[2026-06-05 10:17:55,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:17:55,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:17:55,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:17:55,528.528 INFO    ] No camera update needed
[2026-06-05 10:17:55,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:17:55,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:17:55,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:17:55,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:17:57,585.585 INFO    ] ================================================
[2026-06-05 10:17:57,600.600 INFO    ] Launching Daemon at Fri Jun  5 10:17:57 IST 2026
[2026-06-05 10:17:57,610.610 INFO    ] ================================================
[2026-06-05 10:17:58,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:17:58
[2026-06-05 10:17:58,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:17:59,052.052 INFO    ] Initializing speech engine...
[2026-06-05 10:17:59,071.071 INFO    ] 2026-06-05 10:17:59
[2026-06-05 10:17:59,318.318 INFO    ] 2026-06-05 10:17:59
[2026-06-05 10:17:59,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:18:00,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:18:00,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:18:00,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:18:00,428.428 INFO    ] time= 05/06/2026 10:18:00
[2026-06-05 10:18:00,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:18:00,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:18:00,561.561 INFO    ] No existing commands found in stream
[2026-06-05 10:18:05,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:18:05,574.574 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 10:18:09,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:18:09,765.765 INFO    ] Checking for system updates...
[2026-06-05 10:18:09,802.802 INFO    ] 200
[2026-06-05 10:18:09,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:18:09,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:18:09,867.867 INFO    ] No update needed
[2026-06-05 10:18:09,870.870 INFO    ] Checking for camera pi updates...
[2026-06-05 10:18:09,907.907 INFO    ] 200
[2026-06-05 10:18:09,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:18:09,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:18:10,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:18:10,016.016 INFO    ] No camera update needed
[2026-06-05 10:18:10,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:18:10,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:18:10,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:18:10,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:18:12,075.075 INFO    ] ================================================
[2026-06-05 10:18:12,090.090 INFO    ] Launching Daemon at Fri Jun  5 10:18:12 IST 2026
[2026-06-05 10:18:12,101.101 INFO    ] ================================================
[2026-06-05 10:18:12,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:18:12
[2026-06-05 10:18:13,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:18:13,508.508 INFO    ] Initializing speech engine...
[2026-06-05 10:18:13,517.517 INFO    ] 2026-06-05 10:18:13
[2026-06-05 10:18:13,804.804 INFO    ] 2026-06-05 10:18:13
[2026-06-05 10:18:13,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:18:14,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:18:14,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:18:14,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:18:14,212.212 INFO    ] time= 05/06/2026 10:18:14
[2026-06-05 10:18:14,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:18:14,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:18:14,304.304 INFO    ] No existing commands found in stream
[2026-06-05 10:18:19,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:18:19,342.342 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 10:18:20,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:18:20,193.193 INFO    ] Checking for system updates...
[2026-06-05 10:18:20,229.229 INFO    ] 200
[2026-06-05 10:18:20,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:18:20,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:18:20,288.288 INFO    ] No update needed
[2026-06-05 10:18:20,290.290 INFO    ] Checking for camera pi updates...
[2026-06-05 10:18:20,324.324 INFO    ] 200
[2026-06-05 10:18:20,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:18:20,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:18:20,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:18:20,419.419 INFO    ] No camera update needed
[2026-06-05 10:18:20,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:18:20,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:18:20,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:18:20,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:18:22,477.477 INFO    ] ================================================
[2026-06-05 10:18:22,493.493 INFO    ] Launching Daemon at Fri Jun  5 10:18:22 IST 2026
[2026-06-05 10:18:22,504.504 INFO    ] ================================================
[2026-06-05 10:18:23,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:18:23
[2026-06-05 10:18:23,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:18:24,111.111 INFO    ] Initializing speech engine...
[2026-06-05 10:18:24,119.119 INFO    ] 2026-06-05 10:18:24
[2026-06-05 10:18:24,397.397 INFO    ] 2026-06-05 10:18:24
[2026-06-05 10:18:24,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:18:24,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:18:24,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:18:24,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:18:24,938.938 INFO    ] time= 05/06/2026 10:18:24
[2026-06-05 10:18:24,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:18:24,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:18:25,083.083 INFO    ] No existing commands found in stream
[2026-06-05 10:18:30,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:18:30,108.108 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 10:18:30,997.997 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:18:30,999.999 INFO    ] Checking for system updates...
[2026-06-05 10:18:31,036.036 INFO    ] 200
[2026-06-05 10:18:31,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:18:31,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:18:31,100.100 INFO    ] No update needed
[2026-06-05 10:18:31,103.103 INFO    ] Checking for camera pi updates...
[2026-06-05 10:18:31,140.140 INFO    ] 200
[2026-06-05 10:18:31,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:18:31,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:18:31,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:18:31,250.250 INFO    ] No camera update needed
[2026-06-05 10:18:31,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:18:31,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:18:31,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:18:31,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:18:33,308.308 INFO    ] ================================================
[2026-06-05 10:18:33,323.323 INFO    ] Launching Daemon at Fri Jun  5 10:18:33 IST 2026
[2026-06-05 10:18:33,334.334 INFO    ] ================================================
[2026-06-05 10:18:33,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:18:33
[2026-06-05 10:18:34,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:18:34,930.930 INFO    ] Initializing speech engine...
[2026-06-05 10:18:34,939.939 INFO    ] 2026-06-05 10:18:34
[2026-06-05 10:18:35,202.202 INFO    ] 2026-06-05 10:18:35
[2026-06-05 10:18:35,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:18:35,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:18:35,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:18:35,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:18:35,618.618 INFO    ] time= 05/06/2026 10:18:35
[2026-06-05 10:18:35,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:18:35,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:18:35,810.810 INFO    ] No existing commands found in stream
[2026-06-05 10:18:40,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:18:40,838.838 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 10:18:45,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:18:45,254.254 INFO    ] Checking for system updates...
[2026-06-05 10:18:45,290.290 INFO    ] 200
[2026-06-05 10:18:45,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:18:45,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:18:45,354.354 INFO    ] No update needed
[2026-06-05 10:18:45,357.357 INFO    ] Checking for camera pi updates...
[2026-06-05 10:18:45,394.394 INFO    ] 200
[2026-06-05 10:18:45,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:18:45,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:18:45,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:18:45,493.493 INFO    ] No camera update needed
[2026-06-05 10:18:45,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:18:45,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:18:45,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:18:45,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:18:47,551.551 INFO    ] ================================================
[2026-06-05 10:18:47,566.566 INFO    ] Launching Daemon at Fri Jun  5 10:18:47 IST 2026
[2026-06-05 10:18:47,577.577 INFO    ] ================================================
[2026-06-05 10:18:48,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:18:48
[2026-06-05 10:18:48,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:18:49,136.136 INFO    ] Initializing speech engine...
[2026-06-05 10:18:49,141.141 INFO    ] 2026-06-05 10:18:49
[2026-06-05 10:18:49,411.411 INFO    ] 2026-06-05 10:18:49
[2026-06-05 10:18:49,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:18:49,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:18:49,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:18:49,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:18:49,907.907 INFO    ] time= 05/06/2026 10:18:49
[2026-06-05 10:18:49,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:18:49,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:18:50,103.103 INFO    ] No existing commands found in stream
[2026-06-05 10:18:55,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:18:55,129.129 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 10:19:00,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:19:00,645.645 INFO    ] Checking for system updates...
[2026-06-05 10:19:00,692.692 INFO    ] 200
[2026-06-05 10:19:00,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:00,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:19:00,767.767 INFO    ] No update needed
[2026-06-05 10:19:00,771.771 INFO    ] Checking for camera pi updates...
[2026-06-05 10:19:00,816.816 INFO    ] 200
[2026-06-05 10:19:00,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:00,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:19:00,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:19:00,921.921 INFO    ] No camera update needed
[2026-06-05 10:19:00,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:19:00,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:19:00,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:19:00,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:19:03,009.009 INFO    ] ================================================
[2026-06-05 10:19:03,027.027 INFO    ] Launching Daemon at Fri Jun  5 10:19:03 IST 2026
[2026-06-05 10:19:03,040.040 INFO    ] ================================================
[2026-06-05 10:19:03,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:19:03
[2026-06-05 10:19:04,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:19:04,472.472 INFO    ] Initializing speech engine...
[2026-06-05 10:19:04,481.481 INFO    ] 2026-06-05 10:19:04
[2026-06-05 10:19:04,727.727 INFO    ] 2026-06-05 10:19:04
[2026-06-05 10:19:04,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:19:05,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:19:05,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:19:05,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:19:05,252.252 INFO    ] time= 05/06/2026 10:19:05
[2026-06-05 10:19:05,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:19:05,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:19:05,472.472 INFO    ] No existing commands found in stream
[2026-06-05 10:19:10,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:19:10,504.504 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 10:19:11,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:19:11,308.308 INFO    ] Checking for system updates...
[2026-06-05 10:19:11,347.347 INFO    ] 200
[2026-06-05 10:19:11,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:11,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:19:11,408.408 INFO    ] No update needed
[2026-06-05 10:19:11,410.410 INFO    ] Checking for camera pi updates...
[2026-06-05 10:19:11,445.445 INFO    ] 200
[2026-06-05 10:19:11,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:11,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:19:11,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:19:11,537.537 INFO    ] No camera update needed
[2026-06-05 10:19:11,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:19:11,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:19:11,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:19:11,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:19:13,596.596 INFO    ] ================================================
[2026-06-05 10:19:13,617.617 INFO    ] Launching Daemon at Fri Jun  5 10:19:13 IST 2026
[2026-06-05 10:19:13,628.628 INFO    ] ================================================
[2026-06-05 10:19:14,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:19:14
[2026-06-05 10:19:14,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:19:15,194.194 INFO    ] Initializing speech engine...
[2026-06-05 10:19:15,202.202 INFO    ] 2026-06-05 10:19:15
[2026-06-05 10:19:15,503.503 INFO    ] 2026-06-05 10:19:15
[2026-06-05 10:19:15,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:19:15,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:19:15,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:19:15,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:19:15,927.927 INFO    ] time= 05/06/2026 10:19:15
[2026-06-05 10:19:15,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:19:16,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:19:16,128.128 INFO    ] No existing commands found in stream
[2026-06-05 10:19:21,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:19:21,160.160 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 10:19:23,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:19:23,025.025 INFO    ] Checking for system updates...
[2026-06-05 10:19:23,061.061 INFO    ] 200
[2026-06-05 10:19:23,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:23,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:19:23,118.118 INFO    ] No update needed
[2026-06-05 10:19:23,121.121 INFO    ] Checking for camera pi updates...
[2026-06-05 10:19:23,155.155 INFO    ] 200
[2026-06-05 10:19:23,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:23,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:19:23,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:19:23,246.246 INFO    ] No camera update needed
[2026-06-05 10:19:23,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:19:23,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:19:23,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:19:23,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:19:25,302.302 INFO    ] ================================================
[2026-06-05 10:19:25,317.317 INFO    ] Launching Daemon at Fri Jun  5 10:19:25 IST 2026
[2026-06-05 10:19:25,328.328 INFO    ] ================================================
[2026-06-05 10:19:25,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:19:25
[2026-06-05 10:19:26,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:19:26,751.751 INFO    ] Initializing speech engine...
[2026-06-05 10:19:26,768.768 INFO    ] 2026-06-05 10:19:26
[2026-06-05 10:19:27,040.040 INFO    ] 2026-06-05 10:19:27
[2026-06-05 10:19:27,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:19:27,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:19:27,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:19:27,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:19:27,530.530 INFO    ] time= 05/06/2026 10:19:27
[2026-06-05 10:19:27,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:19:27,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:19:27,814.814 INFO    ] No existing commands found in stream
[2026-06-05 10:19:32,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:19:32,840.840 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 10:19:37,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:19:37,322.322 INFO    ] Checking for system updates...
[2026-06-05 10:19:37,357.357 INFO    ] 200
[2026-06-05 10:19:37,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:37,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:19:37,416.416 INFO    ] No update needed
[2026-06-05 10:19:37,418.418 INFO    ] Checking for camera pi updates...
[2026-06-05 10:19:37,452.452 INFO    ] 200
[2026-06-05 10:19:37,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:37,495.495 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:19:37,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:19:37,547.547 INFO    ] No camera update needed
[2026-06-05 10:19:37,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:19:37,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:19:37,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:19:37,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:19:39,602.602 INFO    ] ================================================
[2026-06-05 10:19:39,618.618 INFO    ] Launching Daemon at Fri Jun  5 10:19:39 IST 2026
[2026-06-05 10:19:39,628.628 INFO    ] ================================================
[2026-06-05 10:19:40,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:19:40
[2026-06-05 10:19:40,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:19:41,238.238 INFO    ] Initializing speech engine...
[2026-06-05 10:19:41,252.252 INFO    ] 2026-06-05 10:19:41
[2026-06-05 10:19:41,518.518 INFO    ] 2026-06-05 10:19:41
[2026-06-05 10:19:41,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:19:41,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:19:41,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:19:42,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:19:42,071.071 INFO    ] time= 05/06/2026 10:19:42
[2026-06-05 10:19:42,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:19:42,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:19:42,232.232 INFO    ] No existing commands found in stream
[2026-06-05 10:19:47,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:19:47,266.266 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 10:19:47,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:19:47,985.985 INFO    ] Checking for system updates...
[2026-06-05 10:19:48,023.023 INFO    ] 200
[2026-06-05 10:19:48,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:48,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:19:48,082.082 INFO    ] No update needed
[2026-06-05 10:19:48,085.085 INFO    ] Checking for camera pi updates...
[2026-06-05 10:19:48,120.120 INFO    ] 200
[2026-06-05 10:19:48,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:19:48,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:19:48,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:19:48,217.217 INFO    ] No camera update needed
[2026-06-05 10:19:48,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:19:48,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:19:48,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:19:48,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:19:50,276.276 INFO    ] ================================================
[2026-06-05 10:19:50,292.292 INFO    ] Launching Daemon at Fri Jun  5 10:19:50 IST 2026
[2026-06-05 10:19:50,302.302 INFO    ] ================================================
[2026-06-05 10:19:50,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:19:50
[2026-06-05 10:19:51,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:19:51,907.907 INFO    ] Initializing speech engine...
[2026-06-05 10:19:51,914.914 INFO    ] 2026-06-05 10:19:51
[2026-06-05 10:19:52,189.189 INFO    ] 2026-06-05 10:19:52
[2026-06-05 10:19:52,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:19:52,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:19:52,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:19:52,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:19:52,748.748 INFO    ] time= 05/06/2026 10:19:52
[2026-06-05 10:19:52,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:19:52,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:19:52,902.902 INFO    ] No existing commands found in stream
[2026-06-05 10:19:57,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:19:57,922.922 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 10:20:01,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:20:01,193.193 INFO    ] Checking for system updates...
[2026-06-05 10:20:01,230.230 INFO    ] 200
[2026-06-05 10:20:01,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:01,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:20:01,292.292 INFO    ] No update needed
[2026-06-05 10:20:01,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 10:20:01,339.339 INFO    ] 200
[2026-06-05 10:20:01,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:01,495.495 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:20:01,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:20:01,611.611 INFO    ] No camera update needed
[2026-06-05 10:20:01,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:20:01,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:20:01,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:20:01,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:20:03,724.724 INFO    ] ================================================
[2026-06-05 10:20:03,740.740 INFO    ] Launching Daemon at Fri Jun  5 10:20:03 IST 2026
[2026-06-05 10:20:03,750.750 INFO    ] ================================================
[2026-06-05 10:20:04,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:20:04
[2026-06-05 10:20:05,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:20:05,356.356 INFO    ] Initializing speech engine...
[2026-06-05 10:20:05,372.372 INFO    ] 2026-06-05 10:20:05
[2026-06-05 10:20:05,685.685 INFO    ] 2026-06-05 10:20:05
[2026-06-05 10:20:05,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:20:05,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:20:05,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:20:06,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:20:06,243.243 INFO    ] time= 05/06/2026 10:20:06
[2026-06-05 10:20:06,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:20:06,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:20:06,399.399 INFO    ] No existing commands found in stream
[2026-06-05 10:20:11,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:20:11,430.430 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 10:20:13,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:20:13,989.989 INFO    ] Checking for system updates...
[2026-06-05 10:20:14,025.025 INFO    ] 200
[2026-06-05 10:20:14,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:14,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:20:14,083.083 INFO    ] No update needed
[2026-06-05 10:20:14,086.086 INFO    ] Checking for camera pi updates...
[2026-06-05 10:20:14,119.119 INFO    ] 200
[2026-06-05 10:20:14,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:14,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:20:14,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:20:14,218.218 INFO    ] No camera update needed
[2026-06-05 10:20:14,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:20:14,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:20:14,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:20:14,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:20:16,275.275 INFO    ] ================================================
[2026-06-05 10:20:16,291.291 INFO    ] Launching Daemon at Fri Jun  5 10:20:16 IST 2026
[2026-06-05 10:20:16,301.301 INFO    ] ================================================
[2026-06-05 10:20:16,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:20:16
[2026-06-05 10:20:17,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:20:17,954.954 INFO    ] Initializing speech engine...
[2026-06-05 10:20:17,966.966 INFO    ] 2026-06-05 10:20:17
[2026-06-05 10:20:18,252.252 INFO    ] 2026-06-05 10:20:18
[2026-06-05 10:20:18,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:20:18,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:20:18,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:20:18,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:20:18,730.730 INFO    ] time= 05/06/2026 10:20:18
[2026-06-05 10:20:18,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:20:18,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:20:18,938.938 INFO    ] No existing commands found in stream
[2026-06-05 10:20:23,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:20:23,958.958 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 10:20:24,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:20:24,530.530 INFO    ] Checking for system updates...
[2026-06-05 10:20:24,576.576 INFO    ] 200
[2026-06-05 10:20:24,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:24,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:20:24,635.635 INFO    ] No update needed
[2026-06-05 10:20:24,638.638 INFO    ] Checking for camera pi updates...
[2026-06-05 10:20:24,672.672 INFO    ] 200
[2026-06-05 10:20:24,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:24,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:20:24,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:20:24,769.769 INFO    ] No camera update needed
[2026-06-05 10:20:24,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:20:24,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:20:24,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:20:24,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:20:26,824.824 INFO    ] ================================================
[2026-06-05 10:20:26,839.839 INFO    ] Launching Daemon at Fri Jun  5 10:20:26 IST 2026
[2026-06-05 10:20:26,850.850 INFO    ] ================================================
[2026-06-05 10:20:27,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:20:27
[2026-06-05 10:20:28,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:20:28,275.275 INFO    ] Initializing speech engine...
[2026-06-05 10:20:28,285.285 INFO    ] 2026-06-05 10:20:28
[2026-06-05 10:20:28,530.530 INFO    ] 2026-06-05 10:20:28
[2026-06-05 10:20:28,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:20:30,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:20:30,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:20:30,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:20:30,796.796 INFO    ] time= 05/06/2026 10:20:30
[2026-06-05 10:20:30,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:20:30,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:20:30,908.908 INFO    ] No existing commands found in stream
[2026-06-05 10:20:35,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:20:35,935.935 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 10:20:37,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:20:37,848.848 INFO    ] Checking for system updates...
[2026-06-05 10:20:37,884.884 INFO    ] 200
[2026-06-05 10:20:37,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:37,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:20:37,947.947 INFO    ] No update needed
[2026-06-05 10:20:37,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 10:20:37,984.984 INFO    ] 200
[2026-06-05 10:20:37,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:38,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:20:38,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:20:38,093.093 INFO    ] No camera update needed
[2026-06-05 10:20:38,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:20:38,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:20:38,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:20:38,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:20:40,150.150 INFO    ] ================================================
[2026-06-05 10:20:40,165.165 INFO    ] Launching Daemon at Fri Jun  5 10:20:40 IST 2026
[2026-06-05 10:20:40,176.176 INFO    ] ================================================
[2026-06-05 10:20:40,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:20:40
[2026-06-05 10:20:41,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:20:41,839.839 INFO    ] Initializing speech engine...
[2026-06-05 10:20:41,853.853 INFO    ] 2026-06-05 10:20:41
[2026-06-05 10:20:42,142.142 INFO    ] 2026-06-05 10:20:42
[2026-06-05 10:20:42,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:20:42,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:20:42,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:20:42,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:20:42,687.687 INFO    ] time= 05/06/2026 10:20:42
[2026-06-05 10:20:42,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:20:42,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:20:42,929.929 INFO    ] No existing commands found in stream
[2026-06-05 10:20:47,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:20:47,948.948 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 10:20:52,379.379 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:20:52,382.382 INFO    ] Checking for system updates...
[2026-06-05 10:20:52,419.419 INFO    ] 200
[2026-06-05 10:20:52,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:52,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:20:52,478.478 INFO    ] No update needed
[2026-06-05 10:20:52,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 10:20:52,518.518 INFO    ] 200
[2026-06-05 10:20:52,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:20:52,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:20:52,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:20:52,616.616 INFO    ] No camera update needed
[2026-06-05 10:20:52,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:20:52,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:20:52,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:20:52,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:20:54,671.671 INFO    ] ================================================
[2026-06-05 10:20:54,686.686 INFO    ] Launching Daemon at Fri Jun  5 10:20:54 IST 2026
[2026-06-05 10:20:54,697.697 INFO    ] ================================================
[2026-06-05 10:20:55,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:20:55
[2026-06-05 10:20:55,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:20:56,128.128 INFO    ] Initializing speech engine...
[2026-06-05 10:20:56,134.134 INFO    ] 2026-06-05 10:20:56
[2026-06-05 10:20:56,408.408 INFO    ] 2026-06-05 10:20:56
[2026-06-05 10:20:56,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:20:56,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:20:56,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:20:57,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:20:57,185.185 INFO    ] time= 05/06/2026 10:20:57
[2026-06-05 10:20:57,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:20:57,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:20:57,397.397 INFO    ] No existing commands found in stream
[2026-06-05 10:21:02,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:21:02,417.417 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 10:21:05,902.902 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:21:05,905.905 INFO    ] Checking for system updates...
[2026-06-05 10:21:05,945.945 INFO    ] 200
[2026-06-05 10:21:05,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:21:06,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:21:06,004.004 INFO    ] No update needed
[2026-06-05 10:21:06,006.006 INFO    ] Checking for camera pi updates...
[2026-06-05 10:21:06,045.045 INFO    ] 200
[2026-06-05 10:21:06,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:21:06,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:21:06,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:21:06,143.143 INFO    ] No camera update needed
[2026-06-05 10:21:06,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:21:06,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:21:06,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:21:06,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:21:08,205.205 INFO    ] ================================================
[2026-06-05 10:21:08,221.221 INFO    ] Launching Daemon at Fri Jun  5 10:21:08 IST 2026
[2026-06-05 10:21:08,232.232 INFO    ] ================================================
[2026-06-05 10:21:08,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:21:08
[2026-06-05 10:21:09,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:21:09,639.639 INFO    ] Initializing speech engine...
[2026-06-05 10:21:09,661.661 INFO    ] 2026-06-05 10:21:09
[2026-06-05 10:21:09,913.913 INFO    ] 2026-06-05 10:21:09
[2026-06-05 10:21:09,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:21:10,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:21:10,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:21:10,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:21:10,474.474 INFO    ] time= 05/06/2026 10:21:10
[2026-06-05 10:21:10,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:21:10,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:21:10,627.627 INFO    ] No existing commands found in stream
[2026-06-05 10:21:15,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:21:15,641.641 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 10:21:19,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:21:19,970.970 INFO    ] Checking for system updates...
[2026-06-05 10:21:20,011.011 INFO    ] 200
[2026-06-05 10:21:20,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:21:20,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:21:20,079.079 INFO    ] No update needed
[2026-06-05 10:21:20,081.081 INFO    ] Checking for camera pi updates...
[2026-06-05 10:21:20,115.115 INFO    ] 200
[2026-06-05 10:21:20,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:21:20,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:21:20,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:21:20,191.191 INFO    ] No camera update needed
[2026-06-05 10:21:20,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:21:20,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:21:20,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:21:20,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:21:22,247.247 INFO    ] ================================================
[2026-06-05 10:21:22,263.263 INFO    ] Launching Daemon at Fri Jun  5 10:21:22 IST 2026
[2026-06-05 10:21:22,274.274 INFO    ] ================================================
[2026-06-05 10:21:22,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:21:22
[2026-06-05 10:21:23,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:21:23,966.966 INFO    ] Initializing speech engine...
[2026-06-05 10:21:23,978.978 INFO    ] 2026-06-05 10:21:23
[2026-06-05 10:21:24,294.294 INFO    ] 2026-06-05 10:21:24
[2026-06-05 10:21:24,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:21:24,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:21:24,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:21:24,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:21:24,822.822 INFO    ] time= 05/06/2026 10:21:24
[2026-06-05 10:21:24,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:21:24,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:21:25,014.014 INFO    ] No existing commands found in stream
[2026-06-05 10:21:30,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:21:30,049.049 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 10:21:31,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:21:31,427.427 INFO    ] Checking for system updates...
[2026-06-05 10:21:31,470.470 INFO    ] 200
[2026-06-05 10:21:31,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:21:31,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:21:31,540.540 INFO    ] No update needed
[2026-06-05 10:21:31,543.543 INFO    ] Checking for camera pi updates...
[2026-06-05 10:21:31,583.583 INFO    ] 200
[2026-06-05 10:21:31,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:21:31,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:21:31,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:21:31,676.676 INFO    ] No camera update needed
[2026-06-05 10:21:31,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:21:31,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:21:31,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:21:31,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:21:33,736.736 INFO    ] ================================================
[2026-06-05 10:21:33,753.753 INFO    ] Launching Daemon at Fri Jun  5 10:21:33 IST 2026
[2026-06-05 10:21:33,764.764 INFO    ] ================================================
[2026-06-05 10:21:34,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:21:34
[2026-06-05 10:21:35,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:21:35,473.473 INFO    ] Initializing speech engine...
[2026-06-05 10:21:35,479.479 INFO    ] 2026-06-05 10:21:35
[2026-06-05 10:21:35,777.777 INFO    ] 2026-06-05 10:21:35
[2026-06-05 10:21:35,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:21:36,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:21:36,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:21:36,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:21:36,284.284 INFO    ] time= 05/06/2026 10:21:36
[2026-06-05 10:21:36,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:21:36,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:21:36,433.433 INFO    ] No existing commands found in stream
[2026-06-05 10:21:41,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:21:41,451.451 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 10:21:45,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:21:45,133.133 INFO    ] Checking for system updates...
[2026-06-05 10:21:45,170.170 INFO    ] 200
[2026-06-05 10:21:45,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:21:45,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:21:45,236.236 INFO    ] No update needed
[2026-06-05 10:21:45,239.239 INFO    ] Checking for camera pi updates...
[2026-06-05 10:21:45,273.273 INFO    ] 200
[2026-06-05 10:21:45,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:21:45,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:21:45,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:21:45,476.476 INFO    ] No camera update needed
[2026-06-05 10:21:45,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:21:45,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:21:45,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:21:45,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:21:47,538.538 INFO    ] ================================================
[2026-06-05 10:21:47,554.554 INFO    ] Launching Daemon at Fri Jun  5 10:21:47 IST 2026
[2026-06-05 10:21:47,565.565 INFO    ] ================================================
[2026-06-05 10:21:48,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:21:48
[2026-06-05 10:21:48,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:21:48,983.983 INFO    ] Initializing speech engine...
[2026-06-05 10:21:48,998.998 INFO    ] 2026-06-05 10:21:48
[2026-06-05 10:21:49,254.254 INFO    ] 2026-06-05 10:21:49
[2026-06-05 10:21:49,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:21:49,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:21:49,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:21:49,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:21:49,769.769 INFO    ] time= 05/06/2026 10:21:49
[2026-06-05 10:21:49,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:21:49,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:21:49,979.979 INFO    ] No existing commands found in stream
[2026-06-05 10:21:54,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:21:54,997.997 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 10:22:00,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:22:00,303.303 INFO    ] Checking for system updates...
[2026-06-05 10:22:00,347.347 INFO    ] 200
[2026-06-05 10:22:00,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 10:22:00,353.353 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 10:22:00,356.356 INFO    ] Checking for camera pi updates...
[2026-06-05 10:22:00,397.397 INFO    ] 200
[2026-06-05 10:22:00,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 10:22:00,403.403 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 10:22:00,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:22:00,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:22:00,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:22:00,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:22:02,497.497 INFO    ] ================================================
[2026-06-05 10:22:02,522.522 INFO    ] Launching Daemon at Fri Jun  5 10:22:02 IST 2026
[2026-06-05 10:22:02,534.534 INFO    ] ================================================
[2026-06-05 10:22:03,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:22:03
[2026-06-05 10:22:03,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:22:03,963.963 INFO    ] Initializing speech engine...
[2026-06-05 10:22:03,972.972 INFO    ] 2026-06-05 10:22:03
[2026-06-05 10:22:04,219.219 INFO    ] 2026-06-05 10:22:04
[2026-06-05 10:22:04,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:22:04,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:22:04,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:22:04,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:22:04,699.699 INFO    ] time= 05/06/2026 10:22:04
[2026-06-05 10:22:04,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:22:04,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:22:04,939.939 INFO    ] No existing commands found in stream
[2026-06-05 10:22:09,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:22:09,960.960 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 10:22:10,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:22:10,551.551 INFO    ] Checking for system updates...
[2026-06-05 10:22:10,588.588 INFO    ] 200
[2026-06-05 10:22:10,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:22:10,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:22:10,646.646 INFO    ] No update needed
[2026-06-05 10:22:10,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 10:22:10,697.697 INFO    ] 200
[2026-06-05 10:22:10,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:22:10,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:22:10,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:22:10,799.799 INFO    ] No camera update needed
[2026-06-05 10:22:10,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:22:10,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:22:10,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:22:10,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:22:12,856.856 INFO    ] ================================================
[2026-06-05 10:22:12,872.872 INFO    ] Launching Daemon at Fri Jun  5 10:22:12 IST 2026
[2026-06-05 10:22:12,884.884 INFO    ] ================================================
[2026-06-05 10:22:13,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:22:13
[2026-06-05 10:22:14,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:22:14,535.535 INFO    ] Initializing speech engine...
[2026-06-05 10:22:14,549.549 INFO    ] 2026-06-05 10:22:14
[2026-06-05 10:22:14,831.831 INFO    ] 2026-06-05 10:22:14
[2026-06-05 10:22:14,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:22:15,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:22:15,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:22:15,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:22:15,373.373 INFO    ] time= 05/06/2026 10:22:15
[2026-06-05 10:22:15,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:22:15,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:22:15,584.584 INFO    ] No existing commands found in stream
[2026-06-05 10:22:20,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:22:20,619.619 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 10:22:22,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:22:22,533.533 INFO    ] Checking for system updates...
[2026-06-05 10:22:22,570.570 INFO    ] 200
[2026-06-05 10:22:22,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:22:22,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:22:22,632.632 INFO    ] No update needed
[2026-06-05 10:22:22,634.634 INFO    ] Checking for camera pi updates...
[2026-06-05 10:22:22,669.669 INFO    ] 200
[2026-06-05 10:22:22,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:22:22,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:22:22,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:22:22,770.770 INFO    ] No camera update needed
[2026-06-05 10:22:22,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:22:22,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:22:22,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:22:22,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:22:24,833.833 INFO    ] ================================================
[2026-06-05 10:22:24,848.848 INFO    ] Launching Daemon at Fri Jun  5 10:22:24 IST 2026
[2026-06-05 10:22:24,860.860 INFO    ] ================================================
[2026-06-05 10:22:25,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:22:25
[2026-06-05 10:22:26,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:22:26,442.442 INFO    ] Initializing speech engine...
[2026-06-05 10:22:26,451.451 INFO    ] 2026-06-05 10:22:26
[2026-06-05 10:22:26,711.711 INFO    ] 2026-06-05 10:22:26
[2026-06-05 10:22:26,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:22:26,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:22:26,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:22:27,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:22:27,207.207 INFO    ] time= 05/06/2026 10:22:27
[2026-06-05 10:22:27,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:22:27,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:22:27,406.406 INFO    ] No existing commands found in stream
[2026-06-05 10:22:32,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:22:32,426.426 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 10:22:35,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:22:35,019.019 INFO    ] Checking for system updates...
[2026-06-05 10:22:35,060.060 INFO    ] 200
[2026-06-05 10:22:35,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:22:35,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:22:35,120.120 INFO    ] No update needed
[2026-06-05 10:22:35,123.123 INFO    ] Checking for camera pi updates...
[2026-06-05 10:22:35,158.158 INFO    ] 200
[2026-06-05 10:22:35,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:22:35,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:22:35,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:22:35,233.233 INFO    ] No camera update needed
[2026-06-05 10:22:35,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:22:35,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:22:35,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:22:35,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:22:37,293.293 INFO    ] ================================================
[2026-06-05 10:22:37,309.309 INFO    ] Launching Daemon at Fri Jun  5 10:22:37 IST 2026
[2026-06-05 10:22:37,321.321 INFO    ] ================================================
[2026-06-05 10:22:37,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:22:37
[2026-06-05 10:22:38,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:22:38,997.997 INFO    ] Initializing speech engine...
[2026-06-05 10:22:39,012.012 INFO    ] 2026-06-05 10:22:39
[2026-06-05 10:22:39,328.328 INFO    ] 2026-06-05 10:22:39
[2026-06-05 10:22:39,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:22:39,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:22:39,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:22:39,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:22:39,854.854 INFO    ] time= 05/06/2026 10:22:39
[2026-06-05 10:22:39,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:22:39,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:22:40,048.048 INFO    ] No existing commands found in stream
[2026-06-05 10:22:45,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:22:45,083.083 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 10:22:47,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:22:47,661.661 INFO    ] Checking for system updates...
[2026-06-05 10:22:47,703.703 INFO    ] 200
[2026-06-05 10:22:47,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:22:47,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:22:47,765.765 INFO    ] No update needed
[2026-06-05 10:22:47,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 10:22:47,808.808 INFO    ] 200
[2026-06-05 10:22:47,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:22:47,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:22:47,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:22:47,919.919 INFO    ] No camera update needed
[2026-06-05 10:22:47,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:22:47,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:22:47,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:22:47,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:22:49,982.982 INFO    ] ================================================
[2026-06-05 10:22:50,999.999 INFO    ] Launching Daemon at Fri Jun  5 10:22:49 IST 2026
[2026-06-05 10:22:50,010.010 INFO    ] ================================================
[2026-06-05 10:22:50,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:22:50
[2026-06-05 10:22:51,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:22:51,481.481 INFO    ] Initializing speech engine...
[2026-06-05 10:22:51,491.491 INFO    ] 2026-06-05 10:22:51
[2026-06-05 10:22:51,776.776 INFO    ] 2026-06-05 10:22:51
[2026-06-05 10:22:51,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:22:52,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:22:52,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:22:52,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:22:52,207.207 INFO    ] time= 05/06/2026 10:22:52
[2026-06-05 10:22:52,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:22:52,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:22:52,302.302 INFO    ] No existing commands found in stream
[2026-06-05 10:22:57,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:22:57,336.336 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 10:23:00,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:23:00,481.481 INFO    ] Checking for system updates...
[2026-06-05 10:23:00,523.523 INFO    ] 200
[2026-06-05 10:23:00,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:00,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:23:00,584.584 INFO    ] No update needed
[2026-06-05 10:23:00,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 10:23:00,623.623 INFO    ] 200
[2026-06-05 10:23:00,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:00,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:23:00,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:23:00,731.731 INFO    ] No camera update needed
[2026-06-05 10:23:00,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:23:00,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:23:00,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:23:00,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:23:02,791.791 INFO    ] ================================================
[2026-06-05 10:23:02,811.811 INFO    ] Launching Daemon at Fri Jun  5 10:23:02 IST 2026
[2026-06-05 10:23:02,826.826 INFO    ] ================================================
[2026-06-05 10:23:03,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:23:03
[2026-06-05 10:23:04,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:23:04,383.383 INFO    ] Initializing speech engine...
[2026-06-05 10:23:04,397.397 INFO    ] 2026-06-05 10:23:04
[2026-06-05 10:23:04,692.692 INFO    ] 2026-06-05 10:23:04
[2026-06-05 10:23:04,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:23:04,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:23:04,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:23:05,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:23:05,252.252 INFO    ] time= 05/06/2026 10:23:05
[2026-06-05 10:23:05,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:23:05,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:23:05,437.437 INFO    ] No existing commands found in stream
[2026-06-05 10:23:10,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:23:10,470.470 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 10:23:12,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:23:12,481.481 INFO    ] Checking for system updates...
[2026-06-05 10:23:12,518.518 INFO    ] 200
[2026-06-05 10:23:12,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:12,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:23:12,580.580 INFO    ] No update needed
[2026-06-05 10:23:12,583.583 INFO    ] Checking for camera pi updates...
[2026-06-05 10:23:12,617.617 INFO    ] 200
[2026-06-05 10:23:12,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:12,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:23:12,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:23:12,722.722 INFO    ] No camera update needed
[2026-06-05 10:23:12,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:23:12,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:23:12,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:23:12,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:23:14,781.781 INFO    ] ================================================
[2026-06-05 10:23:14,797.797 INFO    ] Launching Daemon at Fri Jun  5 10:23:14 IST 2026
[2026-06-05 10:23:14,809.809 INFO    ] ================================================
[2026-06-05 10:23:15,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:23:15
[2026-06-05 10:23:16,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:23:16,290.290 INFO    ] Initializing speech engine...
[2026-06-05 10:23:16,299.299 INFO    ] 2026-06-05 10:23:16
[2026-06-05 10:23:16,558.558 INFO    ] 2026-06-05 10:23:16
[2026-06-05 10:23:16,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:23:16,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:23:16,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:23:16,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:23:16,950.950 INFO    ] time= 05/06/2026 10:23:16
[2026-06-05 10:23:16,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:23:17,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:23:17,140.140 INFO    ] No existing commands found in stream
[2026-06-05 10:23:22,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:23:22,178.178 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 10:23:24,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:23:24,241.241 INFO    ] Checking for system updates...
[2026-06-05 10:23:24,277.277 INFO    ] 200
[2026-06-05 10:23:24,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:24,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:23:24,336.336 INFO    ] No update needed
[2026-06-05 10:23:24,338.338 INFO    ] Checking for camera pi updates...
[2026-06-05 10:23:24,372.372 INFO    ] 200
[2026-06-05 10:23:24,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:24,415.415 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:23:24,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:23:24,470.470 INFO    ] No camera update needed
[2026-06-05 10:23:24,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:23:24,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:23:24,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:23:24,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:23:26,526.526 INFO    ] ================================================
[2026-06-05 10:23:26,542.542 INFO    ] Launching Daemon at Fri Jun  5 10:23:26 IST 2026
[2026-06-05 10:23:26,554.554 INFO    ] ================================================
[2026-06-05 10:23:27,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:23:27
[2026-06-05 10:23:27,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:23:28,069.069 INFO    ] Initializing speech engine...
[2026-06-05 10:23:28,077.077 INFO    ] 2026-06-05 10:23:28
[2026-06-05 10:23:28,366.366 INFO    ] 2026-06-05 10:23:28
[2026-06-05 10:23:28,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:23:30,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:23:30,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:23:30,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:23:30,272.272 INFO    ] time= 05/06/2026 10:23:30
[2026-06-05 10:23:30,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:23:30,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:23:30,355.355 INFO    ] No existing commands found in stream
[2026-06-05 10:23:35,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:23:35,371.371 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 10:23:35,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:23:35,850.850 INFO    ] Checking for system updates...
[2026-06-05 10:23:35,892.892 INFO    ] 200
[2026-06-05 10:23:35,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:35,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:23:35,952.952 INFO    ] No update needed
[2026-06-05 10:23:35,955.955 INFO    ] Checking for camera pi updates...
[2026-06-05 10:23:35,991.991 INFO    ] 200
[2026-06-05 10:23:35,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:36,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:23:36,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:23:36,090.090 INFO    ] No camera update needed
[2026-06-05 10:23:36,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:23:36,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:23:36,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:23:36,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:23:38,154.154 INFO    ] ================================================
[2026-06-05 10:23:38,169.169 INFO    ] Launching Daemon at Fri Jun  5 10:23:38 IST 2026
[2026-06-05 10:23:38,180.180 INFO    ] ================================================
[2026-06-05 10:23:38,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:23:38
[2026-06-05 10:23:39,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:23:39,584.584 INFO    ] Initializing speech engine...
[2026-06-05 10:23:39,607.607 INFO    ] 2026-06-05 10:23:39
[2026-06-05 10:23:39,859.859 INFO    ] 2026-06-05 10:23:39
[2026-06-05 10:23:39,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:23:40,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:23:40,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:23:40,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:23:40,413.413 INFO    ] time= 05/06/2026 10:23:40
[2026-06-05 10:23:40,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:23:40,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:23:40,565.565 INFO    ] No existing commands found in stream
[2026-06-05 10:23:45,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:23:45,580.580 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 10:23:46,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:23:46,396.396 INFO    ] Checking for system updates...
[2026-06-05 10:23:46,432.432 INFO    ] 200
[2026-06-05 10:23:46,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:46,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:23:46,490.490 INFO    ] No update needed
[2026-06-05 10:23:46,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 10:23:46,527.527 INFO    ] 200
[2026-06-05 10:23:46,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:46,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:23:46,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:23:46,623.623 INFO    ] No camera update needed
[2026-06-05 10:23:46,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:23:46,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:23:46,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:23:46,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:23:48,681.681 INFO    ] ================================================
[2026-06-05 10:23:48,697.697 INFO    ] Launching Daemon at Fri Jun  5 10:23:48 IST 2026
[2026-06-05 10:23:48,708.708 INFO    ] ================================================
[2026-06-05 10:23:49,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:23:49
[2026-06-05 10:23:49,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:23:50,131.131 INFO    ] Initializing speech engine...
[2026-06-05 10:23:50,139.139 INFO    ] 2026-06-05 10:23:50
[2026-06-05 10:23:50,386.386 INFO    ] 2026-06-05 10:23:50
[2026-06-05 10:23:50,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:23:50,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:23:50,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:23:50,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:23:50,933.933 INFO    ] time= 05/06/2026 10:23:50
[2026-06-05 10:23:50,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:23:50,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:23:51,098.098 INFO    ] No existing commands found in stream
[2026-06-05 10:23:56,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:23:56,120.120 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 10:23:57,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:23:57,074.074 INFO    ] Checking for system updates...
[2026-06-05 10:23:57,111.111 INFO    ] 200
[2026-06-05 10:23:57,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:57,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:23:57,169.169 INFO    ] No update needed
[2026-06-05 10:23:57,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 10:23:57,205.205 INFO    ] 200
[2026-06-05 10:23:57,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:23:57,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:23:57,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:23:57,394.394 INFO    ] No camera update needed
[2026-06-05 10:23:57,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:23:57,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:23:57,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:23:57,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:23:59,449.449 INFO    ] ================================================
[2026-06-05 10:23:59,465.465 INFO    ] Launching Daemon at Fri Jun  5 10:23:59 IST 2026
[2026-06-05 10:23:59,477.477 INFO    ] ================================================
[2026-06-05 10:24:00,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:24:00
[2026-06-05 10:24:00,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:24:00,920.920 INFO    ] Initializing speech engine...
[2026-06-05 10:24:00,929.929 INFO    ] 2026-06-05 10:24:00
[2026-06-05 10:24:01,182.182 INFO    ] 2026-06-05 10:24:01
[2026-06-05 10:24:01,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:24:01,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:24:01,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:24:01,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:24:01,594.594 INFO    ] time= 05/06/2026 10:24:01
[2026-06-05 10:24:01,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:24:01,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:24:01,690.690 INFO    ] No existing commands found in stream
[2026-06-05 10:24:06,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:24:06,702.702 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 10:24:07,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:24:07,449.449 INFO    ] Checking for system updates...
[2026-06-05 10:24:07,485.485 INFO    ] 200
[2026-06-05 10:24:07,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:07,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:07,543.543 INFO    ] No update needed
[2026-06-05 10:24:07,546.546 INFO    ] Checking for camera pi updates...
[2026-06-05 10:24:07,580.580 INFO    ] 200
[2026-06-05 10:24:07,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:07,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:24:07,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:07,672.672 INFO    ] No camera update needed
[2026-06-05 10:24:07,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:24:07,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:24:07,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:24:07,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:24:09,729.729 INFO    ] ================================================
[2026-06-05 10:24:09,746.746 INFO    ] Launching Daemon at Fri Jun  5 10:24:09 IST 2026
[2026-06-05 10:24:09,758.758 INFO    ] ================================================
[2026-06-05 10:24:10,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:24:10
[2026-06-05 10:24:10,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:24:11,191.191 INFO    ] Initializing speech engine...
[2026-06-05 10:24:11,196.196 INFO    ] 2026-06-05 10:24:11
[2026-06-05 10:24:11,447.447 INFO    ] 2026-06-05 10:24:11
[2026-06-05 10:24:11,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:24:11,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:24:11,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:24:11,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:24:11,934.934 INFO    ] time= 05/06/2026 10:24:11
[2026-06-05 10:24:11,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:24:12,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:24:12,144.144 INFO    ] No existing commands found in stream
[2026-06-05 10:24:17,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:24:17,169.169 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 10:24:18,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:24:18,030.030 INFO    ] Checking for system updates...
[2026-06-05 10:24:18,071.071 INFO    ] 200
[2026-06-05 10:24:18,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:18,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:18,128.128 INFO    ] No update needed
[2026-06-05 10:24:18,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 10:24:18,166.166 INFO    ] 200
[2026-06-05 10:24:18,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:18,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:24:18,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:18,263.263 INFO    ] No camera update needed
[2026-06-05 10:24:18,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:24:18,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:24:18,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:24:18,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:24:20,317.317 INFO    ] ================================================
[2026-06-05 10:24:20,333.333 INFO    ] Launching Daemon at Fri Jun  5 10:24:20 IST 2026
[2026-06-05 10:24:20,345.345 INFO    ] ================================================
[2026-06-05 10:24:21,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:24:21
[2026-06-05 10:24:21,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:24:22,033.033 INFO    ] Initializing speech engine...
[2026-06-05 10:24:22,047.047 INFO    ] 2026-06-05 10:24:22
[2026-06-05 10:24:22,359.359 INFO    ] 2026-06-05 10:24:22
[2026-06-05 10:24:22,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:24:22,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:24:22,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:24:22,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:24:22,871.871 INFO    ] time= 05/06/2026 10:24:22
[2026-06-05 10:24:22,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:24:22,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:24:23,067.067 INFO    ] No existing commands found in stream
[2026-06-05 10:24:28,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:24:28,097.097 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 10:24:31,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:24:31,986.986 INFO    ] Checking for system updates...
[2026-06-05 10:24:32,029.029 INFO    ] 200
[2026-06-05 10:24:32,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:32,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:32,091.091 INFO    ] No update needed
[2026-06-05 10:24:32,094.094 INFO    ] Checking for camera pi updates...
[2026-06-05 10:24:32,138.138 INFO    ] 200
[2026-06-05 10:24:32,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:32,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:24:32,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:32,222.222 INFO    ] No camera update needed
[2026-06-05 10:24:32,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:24:32,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:24:32,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:24:32,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:24:34,282.282 INFO    ] ================================================
[2026-06-05 10:24:34,298.298 INFO    ] Launching Daemon at Fri Jun  5 10:24:34 IST 2026
[2026-06-05 10:24:34,309.309 INFO    ] ================================================
[2026-06-05 10:24:34,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:24:34
[2026-06-05 10:24:35,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:24:35,710.710 INFO    ] Initializing speech engine...
[2026-06-05 10:24:35,716.716 INFO    ] 2026-06-05 10:24:35
[2026-06-05 10:24:35,998.998 INFO    ] 2026-06-05 10:24:35
[2026-06-05 10:24:36,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:24:36,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:24:36,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:24:36,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:24:36,374.374 INFO    ] time= 05/06/2026 10:24:36
[2026-06-05 10:24:36,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:24:36,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:24:36,488.488 INFO    ] No existing commands found in stream
[2026-06-05 10:24:41,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:24:41,519.519 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 10:24:43,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:24:43,765.765 INFO    ] Checking for system updates...
[2026-06-05 10:24:43,802.802 INFO    ] 200
[2026-06-05 10:24:43,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:43,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:43,859.859 INFO    ] No update needed
[2026-06-05 10:24:43,862.862 INFO    ] Checking for camera pi updates...
[2026-06-05 10:24:43,895.895 INFO    ] 200
[2026-06-05 10:24:43,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:43,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:24:43,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:43,990.990 INFO    ] No camera update needed
[2026-06-05 10:24:43,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:24:43,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:24:44,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:24:44,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:24:46,047.047 INFO    ] ================================================
[2026-06-05 10:24:46,061.061 INFO    ] Launching Daemon at Fri Jun  5 10:24:46 IST 2026
[2026-06-05 10:24:46,072.072 INFO    ] ================================================
[2026-06-05 10:24:46,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:24:46
[2026-06-05 10:24:47,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:24:47,486.486 INFO    ] Initializing speech engine...
[2026-06-05 10:24:47,493.493 INFO    ] 2026-06-05 10:24:47
[2026-06-05 10:24:47,789.789 INFO    ] 2026-06-05 10:24:47
[2026-06-05 10:24:47,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:24:48,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:24:48,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:24:48,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:24:48,211.211 INFO    ] time= 05/06/2026 10:24:48
[2026-06-05 10:24:48,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:24:48,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:24:48,335.335 INFO    ] No existing commands found in stream
[2026-06-05 10:24:53,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:24:53,360.360 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 10:24:55,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:24:55,701.701 INFO    ] Checking for system updates...
[2026-06-05 10:24:55,737.737 INFO    ] 200
[2026-06-05 10:24:55,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:55,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:55,795.795 INFO    ] No update needed
[2026-06-05 10:24:55,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 10:24:55,835.835 INFO    ] 200
[2026-06-05 10:24:55,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:24:55,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:24:55,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:24:55,929.929 INFO    ] No camera update needed
[2026-06-05 10:24:55,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:24:55,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:24:55,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:24:55,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:24:57,986.986 INFO    ] ================================================
[2026-06-05 10:24:58,001.001 INFO    ] Launching Daemon at Fri Jun  5 10:24:57 IST 2026
[2026-06-05 10:24:58,012.012 INFO    ] ================================================
[2026-06-05 10:24:58,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:24:58
[2026-06-05 10:24:59,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:24:59,441.441 INFO    ] Initializing speech engine...
[2026-06-05 10:24:59,446.446 INFO    ] 2026-06-05 10:24:59
[2026-06-05 10:24:59,706.706 INFO    ] 2026-06-05 10:24:59
[2026-06-05 10:24:59,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:24:59,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:24:59,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:25:00,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:25:00,168.168 INFO    ] time= 05/06/2026 10:25:00
[2026-06-05 10:25:00,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:25:00,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:25:00,408.408 INFO    ] No existing commands found in stream
[2026-06-05 10:25:05,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:25:05,426.426 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 10:25:06,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:25:06,145.145 INFO    ] Checking for system updates...
[2026-06-05 10:25:06,193.193 INFO    ] 200
[2026-06-05 10:25:06,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:06,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:06,251.251 INFO    ] No update needed
[2026-06-05 10:25:06,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 10:25:06,298.298 INFO    ] 200
[2026-06-05 10:25:06,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:06,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:25:06,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:06,396.396 INFO    ] No camera update needed
[2026-06-05 10:25:06,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:25:06,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:25:06,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:25:06,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:25:08,457.457 INFO    ] ================================================
[2026-06-05 10:25:08,473.473 INFO    ] Launching Daemon at Fri Jun  5 10:25:08 IST 2026
[2026-06-05 10:25:08,484.484 INFO    ] ================================================
[2026-06-05 10:25:09,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:25:09
[2026-06-05 10:25:09,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:25:09,954.954 INFO    ] Initializing speech engine...
[2026-06-05 10:25:09,963.963 INFO    ] 2026-06-05 10:25:09
[2026-06-05 10:25:10,216.216 INFO    ] 2026-06-05 10:25:10
[2026-06-05 10:25:10,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:25:10,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:25:10,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:25:10,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:25:10,688.688 INFO    ] time= 05/06/2026 10:25:10
[2026-06-05 10:25:10,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:25:10,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:25:10,901.901 INFO    ] No existing commands found in stream
[2026-06-05 10:25:15,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:25:15,929.929 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 10:25:19,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:25:19,796.796 INFO    ] Checking for system updates...
[2026-06-05 10:25:19,833.833 INFO    ] 200
[2026-06-05 10:25:19,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:19,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:19,898.898 INFO    ] No update needed
[2026-06-05 10:25:19,900.900 INFO    ] Checking for camera pi updates...
[2026-06-05 10:25:19,934.934 INFO    ] 200
[2026-06-05 10:25:19,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:19,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:25:20,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:20,035.035 INFO    ] No camera update needed
[2026-06-05 10:25:20,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:25:20,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:25:20,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:25:20,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:25:22,092.092 INFO    ] ================================================
[2026-06-05 10:25:22,109.109 INFO    ] Launching Daemon at Fri Jun  5 10:25:22 IST 2026
[2026-06-05 10:25:22,119.119 INFO    ] ================================================
[2026-06-05 10:25:22,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:25:22
[2026-06-05 10:25:23,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:25:23,638.638 INFO    ] Initializing speech engine...
[2026-06-05 10:25:23,647.647 INFO    ] 2026-06-05 10:25:23
[2026-06-05 10:25:23,893.893 INFO    ] 2026-06-05 10:25:23
[2026-06-05 10:25:23,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:25:24,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:25:24,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:25:24,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:25:24,263.263 INFO    ] time= 05/06/2026 10:25:24
[2026-06-05 10:25:24,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:25:24,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:25:24,455.455 INFO    ] No existing commands found in stream
[2026-06-05 10:25:29,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:25:29,469.469 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 10:25:31,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:25:31,350.350 INFO    ] Checking for system updates...
[2026-06-05 10:25:31,386.386 INFO    ] 200
[2026-06-05 10:25:31,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:31,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:31,454.454 INFO    ] No update needed
[2026-06-05 10:25:31,457.457 INFO    ] Checking for camera pi updates...
[2026-06-05 10:25:31,496.496 INFO    ] 200
[2026-06-05 10:25:31,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:31,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:25:31,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:31,601.601 INFO    ] No camera update needed
[2026-06-05 10:25:31,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:25:31,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:25:31,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:25:31,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:25:33,665.665 INFO    ] ================================================
[2026-06-05 10:25:33,680.680 INFO    ] Launching Daemon at Fri Jun  5 10:25:33 IST 2026
[2026-06-05 10:25:33,691.691 INFO    ] ================================================
[2026-06-05 10:25:34,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:25:34
[2026-06-05 10:25:34,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:25:35,097.097 INFO    ] Initializing speech engine...
[2026-06-05 10:25:35,103.103 INFO    ] 2026-06-05 10:25:35
[2026-06-05 10:25:35,400.400 INFO    ] 2026-06-05 10:25:35
[2026-06-05 10:25:35,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:25:35,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:25:35,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:25:35,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:25:35,819.819 INFO    ] time= 05/06/2026 10:25:35
[2026-06-05 10:25:35,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:25:35,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:25:35,906.906 INFO    ] No existing commands found in stream
[2026-06-05 10:25:40,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:25:40,930.930 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 10:25:44,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:25:44,171.171 INFO    ] Checking for system updates...
[2026-06-05 10:25:44,206.206 INFO    ] 200
[2026-06-05 10:25:44,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:44,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:44,263.263 INFO    ] No update needed
[2026-06-05 10:25:44,266.266 INFO    ] Checking for camera pi updates...
[2026-06-05 10:25:44,301.301 INFO    ] 200
[2026-06-05 10:25:44,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:44,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:25:44,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:44,392.392 INFO    ] No camera update needed
[2026-06-05 10:25:44,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:25:44,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:25:44,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:25:44,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:25:46,448.448 INFO    ] ================================================
[2026-06-05 10:25:46,463.463 INFO    ] Launching Daemon at Fri Jun  5 10:25:46 IST 2026
[2026-06-05 10:25:46,474.474 INFO    ] ================================================
[2026-06-05 10:25:47,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:25:47
[2026-06-05 10:25:47,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:25:47,940.940 INFO    ] Initializing speech engine...
[2026-06-05 10:25:47,947.947 INFO    ] 2026-06-05 10:25:47
[2026-06-05 10:25:48,210.210 INFO    ] 2026-06-05 10:25:48
[2026-06-05 10:25:48,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:25:48,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:25:48,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:25:48,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:25:48,673.673 INFO    ] time= 05/06/2026 10:25:48
[2026-06-05 10:25:48,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:25:48,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:25:48,836.836 INFO    ] No existing commands found in stream
[2026-06-05 10:25:53,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:25:53,876.876 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 10:25:54,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:25:54,452.452 INFO    ] Checking for system updates...
[2026-06-05 10:25:54,489.489 INFO    ] 200
[2026-06-05 10:25:54,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:54,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:54,550.550 INFO    ] No update needed
[2026-06-05 10:25:54,552.552 INFO    ] Checking for camera pi updates...
[2026-06-05 10:25:54,594.594 INFO    ] 200
[2026-06-05 10:25:54,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:25:54,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:25:54,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:25:54,686.686 INFO    ] No camera update needed
[2026-06-05 10:25:54,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:25:54,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:25:54,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:25:54,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:25:56,744.744 INFO    ] ================================================
[2026-06-05 10:25:56,764.764 INFO    ] Launching Daemon at Fri Jun  5 10:25:56 IST 2026
[2026-06-05 10:25:56,777.777 INFO    ] ================================================
[2026-06-05 10:25:57,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:25:57
[2026-06-05 10:25:58,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:25:58,439.439 INFO    ] Initializing speech engine...
[2026-06-05 10:25:58,452.452 INFO    ] 2026-06-05 10:25:58
[2026-06-05 10:25:58,740.740 INFO    ] 2026-06-05 10:25:58
[2026-06-05 10:25:58,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:26:00,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:26:00,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:26:00,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:26:00,212.212 INFO    ] time= 05/06/2026 10:26:00
[2026-06-05 10:26:00,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:26:00,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:26:00,310.310 INFO    ] No existing commands found in stream
[2026-06-05 10:26:05,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:26:05,321.321 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 10:26:08,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:26:08,018.018 INFO    ] Checking for system updates...
[2026-06-05 10:26:08,060.060 INFO    ] 200
[2026-06-05 10:26:08,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:08,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:26:08,124.124 INFO    ] No update needed
[2026-06-05 10:26:08,127.127 INFO    ] Checking for camera pi updates...
[2026-06-05 10:26:08,161.161 INFO    ] 200
[2026-06-05 10:26:08,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:08,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:26:08,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:26:08,242.242 INFO    ] No camera update needed
[2026-06-05 10:26:08,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:26:08,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:26:08,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:26:08,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:26:10,296.296 INFO    ] ================================================
[2026-06-05 10:26:10,311.311 INFO    ] Launching Daemon at Fri Jun  5 10:26:10 IST 2026
[2026-06-05 10:26:10,322.322 INFO    ] ================================================
[2026-06-05 10:26:10,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:26:10
[2026-06-05 10:26:11,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:26:11,784.784 INFO    ] Initializing speech engine...
[2026-06-05 10:26:11,794.794 INFO    ] 2026-06-05 10:26:11
[2026-06-05 10:26:12,059.059 INFO    ] 2026-06-05 10:26:12
[2026-06-05 10:26:12,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:26:12,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:26:12,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:26:12,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:26:12,480.480 INFO    ] time= 05/06/2026 10:26:12
[2026-06-05 10:26:12,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:26:12,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:26:12,659.659 INFO    ] No existing commands found in stream
[2026-06-05 10:26:17,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:26:17,692.692 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 10:26:18,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:26:18,102.102 INFO    ] Checking for system updates...
[2026-06-05 10:26:18,139.139 INFO    ] 200
[2026-06-05 10:26:18,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:18,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:26:18,198.198 INFO    ] No update needed
[2026-06-05 10:26:18,201.201 INFO    ] Checking for camera pi updates...
[2026-06-05 10:26:18,235.235 INFO    ] 200
[2026-06-05 10:26:18,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:18,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:26:18,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:26:18,334.334 INFO    ] No camera update needed
[2026-06-05 10:26:18,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:26:18,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:26:18,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:26:18,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:26:20,389.389 INFO    ] ================================================
[2026-06-05 10:26:20,404.404 INFO    ] Launching Daemon at Fri Jun  5 10:26:20 IST 2026
[2026-06-05 10:26:20,414.414 INFO    ] ================================================
[2026-06-05 10:26:20,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:26:20
[2026-06-05 10:26:21,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:26:21,861.861 INFO    ] Initializing speech engine...
[2026-06-05 10:26:21,873.873 INFO    ] 2026-06-05 10:26:21
[2026-06-05 10:26:22,125.125 INFO    ] 2026-06-05 10:26:22
[2026-06-05 10:26:22,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:26:22,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:26:22,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:26:22,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:26:22,627.627 INFO    ] time= 05/06/2026 10:26:22
[2026-06-05 10:26:22,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:26:22,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:26:22,820.820 INFO    ] No existing commands found in stream
[2026-06-05 10:26:27,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:26:27,849.849 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 10:26:30,290.290 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:26:30,293.293 INFO    ] Checking for system updates...
[2026-06-05 10:26:30,333.333 INFO    ] 200
[2026-06-05 10:26:30,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:30,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:26:30,398.398 INFO    ] No update needed
[2026-06-05 10:26:30,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 10:26:30,435.435 INFO    ] 200
[2026-06-05 10:26:30,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:30,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:26:30,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:26:30,531.531 INFO    ] No camera update needed
[2026-06-05 10:26:30,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:26:30,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:26:30,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:26:30,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:26:32,598.598 INFO    ] ================================================
[2026-06-05 10:26:32,614.614 INFO    ] Launching Daemon at Fri Jun  5 10:26:32 IST 2026
[2026-06-05 10:26:32,626.626 INFO    ] ================================================
[2026-06-05 10:26:33,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:26:33
[2026-06-05 10:26:33,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:26:34,255.255 INFO    ] Initializing speech engine...
[2026-06-05 10:26:34,268.268 INFO    ] 2026-06-05 10:26:34
[2026-06-05 10:26:34,576.576 INFO    ] 2026-06-05 10:26:34
[2026-06-05 10:26:34,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:26:34,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:26:34,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:26:35,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:26:35,296.296 INFO    ] time= 05/06/2026 10:26:35
[2026-06-05 10:26:35,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:26:35,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:26:35,529.529 INFO    ] No existing commands found in stream
[2026-06-05 10:26:40,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:26:40,550.550 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 10:26:41,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:26:41,423.423 INFO    ] Checking for system updates...
[2026-06-05 10:26:41,466.466 INFO    ] 200
[2026-06-05 10:26:41,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:41,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:26:41,539.539 INFO    ] No update needed
[2026-06-05 10:26:41,542.542 INFO    ] Checking for camera pi updates...
[2026-06-05 10:26:41,576.576 INFO    ] 200
[2026-06-05 10:26:41,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:41,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:26:41,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:26:41,673.673 INFO    ] No camera update needed
[2026-06-05 10:26:41,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:26:41,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:26:41,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:26:41,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:26:43,728.728 INFO    ] ================================================
[2026-06-05 10:26:43,743.743 INFO    ] Launching Daemon at Fri Jun  5 10:26:43 IST 2026
[2026-06-05 10:26:43,754.754 INFO    ] ================================================
[2026-06-05 10:26:44,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:26:44
[2026-06-05 10:26:44,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:26:45,153.153 INFO    ] Initializing speech engine...
[2026-06-05 10:26:45,166.166 INFO    ] 2026-06-05 10:26:45
[2026-06-05 10:26:45,430.430 INFO    ] 2026-06-05 10:26:45
[2026-06-05 10:26:45,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:26:45,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:26:45,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:26:45,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:26:45,994.994 INFO    ] time= 05/06/2026 10:26:45
[2026-06-05 10:26:46,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:26:46,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:26:46,152.152 INFO    ] No existing commands found in stream
[2026-06-05 10:26:51,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:26:51,168.168 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 10:26:53,842.842 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:26:53,845.845 INFO    ] Checking for system updates...
[2026-06-05 10:26:53,881.881 INFO    ] 200
[2026-06-05 10:26:53,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:53,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:26:53,940.940 INFO    ] No update needed
[2026-06-05 10:26:53,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 10:26:53,979.979 INFO    ] 200
[2026-06-05 10:26:53,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:26:54,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:26:54,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:26:54,073.073 INFO    ] No camera update needed
[2026-06-05 10:26:54,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:26:54,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:26:54,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:26:54,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:26:56,129.129 INFO    ] ================================================
[2026-06-05 10:26:56,144.144 INFO    ] Launching Daemon at Fri Jun  5 10:26:56 IST 2026
[2026-06-05 10:26:56,155.155 INFO    ] ================================================
[2026-06-05 10:26:56,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:26:56
[2026-06-05 10:26:57,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:26:57,583.583 INFO    ] Initializing speech engine...
[2026-06-05 10:26:57,603.603 INFO    ] 2026-06-05 10:26:57
[2026-06-05 10:26:57,851.851 INFO    ] 2026-06-05 10:26:57
[2026-06-05 10:26:57,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:26:58,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:26:58,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:27:00,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:27:00,076.076 INFO    ] time= 05/06/2026 10:27:00
[2026-06-05 10:27:00,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:27:00,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:27:00,199.199 INFO    ] No existing commands found in stream
[2026-06-05 10:27:05,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:27:05,213.213 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 10:27:06,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:27:06,541.541 INFO    ] Checking for system updates...
[2026-06-05 10:27:06,580.580 INFO    ] 200
[2026-06-05 10:27:06,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:06,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:27:06,638.638 INFO    ] No update needed
[2026-06-05 10:27:06,640.640 INFO    ] Checking for camera pi updates...
[2026-06-05 10:27:06,674.674 INFO    ] 200
[2026-06-05 10:27:06,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:06,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:27:06,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:27:06,770.770 INFO    ] No camera update needed
[2026-06-05 10:27:06,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:27:06,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:27:06,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:27:06,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:27:08,827.827 INFO    ] ================================================
[2026-06-05 10:27:08,842.842 INFO    ] Launching Daemon at Fri Jun  5 10:27:08 IST 2026
[2026-06-05 10:27:08,853.853 INFO    ] ================================================
[2026-06-05 10:27:09,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:27:09
[2026-06-05 10:27:10,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:27:10,494.494 INFO    ] Initializing speech engine...
[2026-06-05 10:27:10,503.503 INFO    ] 2026-06-05 10:27:10
[2026-06-05 10:27:10,789.789 INFO    ] 2026-06-05 10:27:10
[2026-06-05 10:27:10,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:27:11,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:27:11,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:27:11,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:27:11,299.299 INFO    ] time= 05/06/2026 10:27:11
[2026-06-05 10:27:11,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:27:11,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:27:11,482.482 INFO    ] No existing commands found in stream
[2026-06-05 10:27:16,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:27:16,503.503 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 10:27:19,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:27:19,895.895 INFO    ] Checking for system updates...
[2026-06-05 10:27:19,933.933 INFO    ] 200
[2026-06-05 10:27:19,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:19,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:27:20,001.001 INFO    ] No update needed
[2026-06-05 10:27:20,004.004 INFO    ] Checking for camera pi updates...
[2026-06-05 10:27:20,044.044 INFO    ] 200
[2026-06-05 10:27:20,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:20,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:27:20,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:27:20,151.151 INFO    ] No camera update needed
[2026-06-05 10:27:20,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:27:20,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:27:20,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:27:20,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:27:22,211.211 INFO    ] ================================================
[2026-06-05 10:27:22,226.226 INFO    ] Launching Daemon at Fri Jun  5 10:27:22 IST 2026
[2026-06-05 10:27:22,236.236 INFO    ] ================================================
[2026-06-05 10:27:22,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:27:22
[2026-06-05 10:27:23,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:27:23,803.803 INFO    ] Initializing speech engine...
[2026-06-05 10:27:23,812.812 INFO    ] 2026-06-05 10:27:23
[2026-06-05 10:27:24,072.072 INFO    ] 2026-06-05 10:27:24
[2026-06-05 10:27:24,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:27:24,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:27:24,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:27:24,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:27:24,619.619 INFO    ] time= 05/06/2026 10:27:24
[2026-06-05 10:27:24,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:27:24,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:27:24,776.776 INFO    ] No existing commands found in stream
[2026-06-05 10:27:29,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:27:29,793.793 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 10:27:30,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:27:30,963.963 INFO    ] Checking for system updates...
[2026-06-05 10:27:31,004.004 INFO    ] 200
[2026-06-05 10:27:31,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:31,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:27:31,069.069 INFO    ] No update needed
[2026-06-05 10:27:31,072.072 INFO    ] Checking for camera pi updates...
[2026-06-05 10:27:31,110.110 INFO    ] 200
[2026-06-05 10:27:31,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:31,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:27:31,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:27:31,205.205 INFO    ] No camera update needed
[2026-06-05 10:27:31,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:27:31,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:27:31,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:27:31,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:27:33,262.262 INFO    ] ================================================
[2026-06-05 10:27:33,277.277 INFO    ] Launching Daemon at Fri Jun  5 10:27:33 IST 2026
[2026-06-05 10:27:33,288.288 INFO    ] ================================================
[2026-06-05 10:27:33,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:27:33
[2026-06-05 10:27:34,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:27:34,728.728 INFO    ] Initializing speech engine...
[2026-06-05 10:27:34,743.743 INFO    ] 2026-06-05 10:27:34
[2026-06-05 10:27:35,032.032 INFO    ] 2026-06-05 10:27:34
[2026-06-05 10:27:35,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:27:35,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:27:35,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:27:35,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:27:35,419.419 INFO    ] time= 05/06/2026 10:27:35
[2026-06-05 10:27:35,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:27:35,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:27:35,549.549 INFO    ] No existing commands found in stream
[2026-06-05 10:27:40,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:27:40,582.582 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 10:27:41,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:27:41,776.776 INFO    ] Checking for system updates...
[2026-06-05 10:27:41,817.817 INFO    ] 200
[2026-06-05 10:27:41,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:41,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:27:41,901.901 INFO    ] No update needed
[2026-06-05 10:27:41,904.904 INFO    ] Checking for camera pi updates...
[2026-06-05 10:27:41,937.937 INFO    ] 200
[2026-06-05 10:27:41,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:41,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:27:42,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:27:42,032.032 INFO    ] No camera update needed
[2026-06-05 10:27:42,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:27:42,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:27:42,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:27:42,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:27:44,088.088 INFO    ] ================================================
[2026-06-05 10:27:44,103.103 INFO    ] Launching Daemon at Fri Jun  5 10:27:44 IST 2026
[2026-06-05 10:27:44,114.114 INFO    ] ================================================
[2026-06-05 10:27:44,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:27:44
[2026-06-05 10:27:45,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:27:45,535.535 INFO    ] Initializing speech engine...
[2026-06-05 10:27:45,542.542 INFO    ] 2026-06-05 10:27:45
[2026-06-05 10:27:45,841.841 INFO    ] 2026-06-05 10:27:45
[2026-06-05 10:27:45,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:27:46,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:27:46,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:27:46,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:27:46,269.269 INFO    ] time= 05/06/2026 10:27:46
[2026-06-05 10:27:46,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:27:46,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:27:46,429.429 INFO    ] No existing commands found in stream
[2026-06-05 10:27:51,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:27:51,458.458 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 10:27:52,208.208 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:27:52,210.210 INFO    ] Checking for system updates...
[2026-06-05 10:27:52,248.248 INFO    ] 200
[2026-06-05 10:27:52,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:52,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:27:52,309.309 INFO    ] No update needed
[2026-06-05 10:27:52,312.312 INFO    ] Checking for camera pi updates...
[2026-06-05 10:27:52,351.351 INFO    ] 200
[2026-06-05 10:27:52,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:27:52,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:27:52,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:27:52,453.453 INFO    ] No camera update needed
[2026-06-05 10:27:52,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:27:52,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:27:52,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:27:52,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:27:54,509.509 INFO    ] ================================================
[2026-06-05 10:27:54,525.525 INFO    ] Launching Daemon at Fri Jun  5 10:27:54 IST 2026
[2026-06-05 10:27:54,536.536 INFO    ] ================================================
[2026-06-05 10:27:55,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:27:55
[2026-06-05 10:27:55,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:27:56,005.005 INFO    ] Initializing speech engine...
[2026-06-05 10:27:56,015.015 INFO    ] 2026-06-05 10:27:56
[2026-06-05 10:27:56,259.259 INFO    ] 2026-06-05 10:27:56
[2026-06-05 10:27:56,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:27:56,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:27:56,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:27:56,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:27:56,748.748 INFO    ] time= 05/06/2026 10:27:56
[2026-06-05 10:27:56,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:27:56,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:27:56,958.958 INFO    ] No existing commands found in stream
[2026-06-05 10:28:01,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:28:01,986.986 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 10:28:02,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:28:02,632.632 INFO    ] Checking for system updates...
[2026-06-05 10:28:02,682.682 INFO    ] 200
[2026-06-05 10:28:02,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:02,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:28:02,750.750 INFO    ] No update needed
[2026-06-05 10:28:02,753.753 INFO    ] Checking for camera pi updates...
[2026-06-05 10:28:02,787.787 INFO    ] 200
[2026-06-05 10:28:02,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:02,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:28:02,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:28:02,876.876 INFO    ] No camera update needed
[2026-06-05 10:28:02,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:28:02,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:28:02,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:28:02,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:28:04,933.933 INFO    ] ================================================
[2026-06-05 10:28:04,948.948 INFO    ] Launching Daemon at Fri Jun  5 10:28:04 IST 2026
[2026-06-05 10:28:04,959.959 INFO    ] ================================================
[2026-06-05 10:28:05,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:28:05
[2026-06-05 10:28:06,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:28:06,555.555 INFO    ] Initializing speech engine...
[2026-06-05 10:28:06,564.564 INFO    ] 2026-06-05 10:28:06
[2026-06-05 10:28:06,836.836 INFO    ] 2026-06-05 10:28:06
[2026-06-05 10:28:06,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:28:07,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:28:07,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:28:07,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:28:07,394.394 INFO    ] time= 05/06/2026 10:28:07
[2026-06-05 10:28:07,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:28:07,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:28:07,563.563 INFO    ] No existing commands found in stream
[2026-06-05 10:28:12,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:28:12,589.589 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 10:28:14,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:28:14,600.600 INFO    ] Checking for system updates...
[2026-06-05 10:28:14,642.642 INFO    ] 200
[2026-06-05 10:28:14,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:14,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:28:14,702.702 INFO    ] No update needed
[2026-06-05 10:28:14,705.705 INFO    ] Checking for camera pi updates...
[2026-06-05 10:28:14,739.739 INFO    ] 200
[2026-06-05 10:28:14,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:14,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:28:14,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:28:14,940.940 INFO    ] No camera update needed
[2026-06-05 10:28:14,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:28:14,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:28:14,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:28:14,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:28:17,998.998 INFO    ] ================================================
[2026-06-05 10:28:17,014.014 INFO    ] Launching Daemon at Fri Jun  5 10:28:17 IST 2026
[2026-06-05 10:28:17,025.025 INFO    ] ================================================
[2026-06-05 10:28:17,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:28:17
[2026-06-05 10:28:18,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:28:18,634.634 INFO    ] Initializing speech engine...
[2026-06-05 10:28:18,649.649 INFO    ] 2026-06-05 10:28:18
[2026-06-05 10:28:18,957.957 INFO    ] 2026-06-05 10:28:18
[2026-06-05 10:28:19,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:28:19,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:28:19,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:28:19,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:28:19,463.463 INFO    ] time= 05/06/2026 10:28:19
[2026-06-05 10:28:19,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:28:19,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:28:19,614.614 INFO    ] No existing commands found in stream
[2026-06-05 10:28:24,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:28:24,631.631 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 10:28:27,068.068 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:28:27,071.071 INFO    ] Checking for system updates...
[2026-06-05 10:28:27,110.110 INFO    ] 200
[2026-06-05 10:28:27,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:27,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:28:27,177.177 INFO    ] No update needed
[2026-06-05 10:28:27,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 10:28:27,217.217 INFO    ] 200
[2026-06-05 10:28:27,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:27,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:28:27,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:28:27,306.306 INFO    ] No camera update needed
[2026-06-05 10:28:27,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:28:27,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:28:27,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:28:27,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:28:29,362.362 INFO    ] ================================================
[2026-06-05 10:28:29,377.377 INFO    ] Launching Daemon at Fri Jun  5 10:28:29 IST 2026
[2026-06-05 10:28:29,389.389 INFO    ] ================================================
[2026-06-05 10:28:30,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:28:30
[2026-06-05 10:28:30,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:28:30,963.963 INFO    ] Initializing speech engine...
[2026-06-05 10:28:30,986.986 INFO    ] 2026-06-05 10:28:30
[2026-06-05 10:28:31,247.247 INFO    ] 2026-06-05 10:28:31
[2026-06-05 10:28:31,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:28:31,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:28:31,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:28:31,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:28:31,794.794 INFO    ] time= 05/06/2026 10:28:31
[2026-06-05 10:28:31,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:28:31,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:28:32,017.017 INFO    ] No existing commands found in stream
[2026-06-05 10:28:37,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:28:37,049.049 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 10:28:41,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:28:41,308.308 INFO    ] Checking for system updates...
[2026-06-05 10:28:41,345.345 INFO    ] 200
[2026-06-05 10:28:41,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:41,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:28:41,408.408 INFO    ] No update needed
[2026-06-05 10:28:41,410.410 INFO    ] Checking for camera pi updates...
[2026-06-05 10:28:41,444.444 INFO    ] 200
[2026-06-05 10:28:41,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:41,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:28:41,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:28:41,534.534 INFO    ] No camera update needed
[2026-06-05 10:28:41,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:28:41,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:28:41,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:28:41,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:28:43,589.589 INFO    ] ================================================
[2026-06-05 10:28:43,605.605 INFO    ] Launching Daemon at Fri Jun  5 10:28:43 IST 2026
[2026-06-05 10:28:43,616.616 INFO    ] ================================================
[2026-06-05 10:28:44,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:28:44
[2026-06-05 10:28:44,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:28:45,039.039 INFO    ] Initializing speech engine...
[2026-06-05 10:28:45,048.048 INFO    ] 2026-06-05 10:28:45
[2026-06-05 10:28:45,296.296 INFO    ] 2026-06-05 10:28:45
[2026-06-05 10:28:45,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:28:45,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:28:45,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:28:45,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:28:45,770.770 INFO    ] time= 05/06/2026 10:28:45
[2026-06-05 10:28:45,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:28:45,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:28:46,000.000 INFO    ] No existing commands found in stream
[2026-06-05 10:28:51,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:28:51,017.017 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 10:28:51,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:28:51,904.904 INFO    ] Checking for system updates...
[2026-06-05 10:28:51,951.951 INFO    ] 200
[2026-06-05 10:28:51,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:52,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:28:52,008.008 INFO    ] No update needed
[2026-06-05 10:28:52,010.010 INFO    ] Checking for camera pi updates...
[2026-06-05 10:28:52,044.044 INFO    ] 200
[2026-06-05 10:28:52,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:28:52,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:28:52,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:28:52,122.122 INFO    ] No camera update needed
[2026-06-05 10:28:52,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:28:52,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:28:52,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:28:52,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:28:54,180.180 INFO    ] ================================================
[2026-06-05 10:28:54,195.195 INFO    ] Launching Daemon at Fri Jun  5 10:28:54 IST 2026
[2026-06-05 10:28:54,207.207 INFO    ] ================================================
[2026-06-05 10:28:54,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:28:54
[2026-06-05 10:28:55,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:28:55,841.841 INFO    ] Initializing speech engine...
[2026-06-05 10:28:55,854.854 INFO    ] 2026-06-05 10:28:55
[2026-06-05 10:28:56,140.140 INFO    ] 2026-06-05 10:28:56
[2026-06-05 10:28:56,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:28:56,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:28:56,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:28:56,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:28:56,674.674 INFO    ] time= 05/06/2026 10:28:56
[2026-06-05 10:28:56,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:28:56,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:28:56,831.831 INFO    ] No existing commands found in stream
[2026-06-05 10:29:01,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:29:01,860.860 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 10:29:05,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:29:05,439.439 INFO    ] Checking for system updates...
[2026-06-05 10:29:05,475.475 INFO    ] 200
[2026-06-05 10:29:05,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:05,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:05,542.542 INFO    ] No update needed
[2026-06-05 10:29:05,545.545 INFO    ] Checking for camera pi updates...
[2026-06-05 10:29:05,579.579 INFO    ] 200
[2026-06-05 10:29:05,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:05,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:29:05,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:05,660.660 INFO    ] No camera update needed
[2026-06-05 10:29:05,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:29:05,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:29:05,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:29:05,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:29:07,716.716 INFO    ] ================================================
[2026-06-05 10:29:07,732.732 INFO    ] Launching Daemon at Fri Jun  5 10:29:07 IST 2026
[2026-06-05 10:29:07,743.743 INFO    ] ================================================
[2026-06-05 10:29:08,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:29:08
[2026-06-05 10:29:08,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:29:09,146.146 INFO    ] Initializing speech engine...
[2026-06-05 10:29:09,152.152 INFO    ] 2026-06-05 10:29:09
[2026-06-05 10:29:09,452.452 INFO    ] 2026-06-05 10:29:09
[2026-06-05 10:29:09,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:29:09,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:29:09,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:29:09,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:29:09,838.838 INFO    ] time= 05/06/2026 10:29:09
[2026-06-05 10:29:09,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:29:09,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:29:09,963.963 INFO    ] No existing commands found in stream
[2026-06-05 10:29:14,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:29:14,977.977 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 10:29:19,316.316 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:29:19,318.318 INFO    ] Checking for system updates...
[2026-06-05 10:29:19,358.358 INFO    ] 200
[2026-06-05 10:29:19,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:19,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:19,415.415 INFO    ] No update needed
[2026-06-05 10:29:19,418.418 INFO    ] Checking for camera pi updates...
[2026-06-05 10:29:19,454.454 INFO    ] 200
[2026-06-05 10:29:19,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:19,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:29:19,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:19,550.550 INFO    ] No camera update needed
[2026-06-05 10:29:19,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:29:19,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:29:19,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:29:19,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:29:21,604.604 INFO    ] ================================================
[2026-06-05 10:29:21,620.620 INFO    ] Launching Daemon at Fri Jun  5 10:29:21 IST 2026
[2026-06-05 10:29:21,631.631 INFO    ] ================================================
[2026-06-05 10:29:22,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:29:22
[2026-06-05 10:29:22,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:29:23,245.245 INFO    ] Initializing speech engine...
[2026-06-05 10:29:23,255.255 INFO    ] 2026-06-05 10:29:23
[2026-06-05 10:29:23,521.521 INFO    ] 2026-06-05 10:29:23
[2026-06-05 10:29:23,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:29:23,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:29:23,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:29:24,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:29:24,066.066 INFO    ] time= 05/06/2026 10:29:24
[2026-06-05 10:29:24,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:29:24,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:29:24,253.253 INFO    ] No existing commands found in stream
[2026-06-05 10:29:29,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:29:29,281.281 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 10:29:32,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:29:32,493.493 INFO    ] Checking for system updates...
[2026-06-05 10:29:32,535.535 INFO    ] 200
[2026-06-05 10:29:32,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:32,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:32,611.611 INFO    ] No update needed
[2026-06-05 10:29:32,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 10:29:32,661.661 INFO    ] 200
[2026-06-05 10:29:32,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:32,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:29:32,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:32,745.745 INFO    ] No camera update needed
[2026-06-05 10:29:32,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:29:32,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:29:32,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:29:32,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:29:34,801.801 INFO    ] ================================================
[2026-06-05 10:29:34,816.816 INFO    ] Launching Daemon at Fri Jun  5 10:29:34 IST 2026
[2026-06-05 10:29:34,827.827 INFO    ] ================================================
[2026-06-05 10:29:35,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:29:35
[2026-06-05 10:29:36,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:29:36,392.392 INFO    ] Initializing speech engine...
[2026-06-05 10:29:36,399.399 INFO    ] 2026-06-05 10:29:36
[2026-06-05 10:29:36,674.674 INFO    ] 2026-06-05 10:29:36
[2026-06-05 10:29:36,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:29:36,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:29:36,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:29:37,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:29:37,129.129 INFO    ] time= 05/06/2026 10:29:37
[2026-06-05 10:29:37,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:29:37,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:29:37,369.369 INFO    ] No existing commands found in stream
[2026-06-05 10:29:42,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:29:42,388.388 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 10:29:44,944.944 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:29:44,947.947 INFO    ] Checking for system updates...
[2026-06-05 10:29:44,987.987 INFO    ] 200
[2026-06-05 10:29:44,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:45,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:45,044.044 INFO    ] No update needed
[2026-06-05 10:29:45,047.047 INFO    ] Checking for camera pi updates...
[2026-06-05 10:29:45,083.083 INFO    ] 200
[2026-06-05 10:29:45,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:45,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:29:45,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:45,176.176 INFO    ] No camera update needed
[2026-06-05 10:29:45,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:29:45,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:29:45,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:29:45,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:29:47,232.232 INFO    ] ================================================
[2026-06-05 10:29:47,248.248 INFO    ] Launching Daemon at Fri Jun  5 10:29:47 IST 2026
[2026-06-05 10:29:47,260.260 INFO    ] ================================================
[2026-06-05 10:29:47,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:29:47
[2026-06-05 10:29:48,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:29:48,700.700 INFO    ] Initializing speech engine...
[2026-06-05 10:29:48,714.714 INFO    ] 2026-06-05 10:29:48
[2026-06-05 10:29:48,982.982 INFO    ] 2026-06-05 10:29:48
[2026-06-05 10:29:49,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:29:49,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:29:49,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:29:49,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:29:49,426.426 INFO    ] time= 05/06/2026 10:29:49
[2026-06-05 10:29:49,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:29:49,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:29:49,585.585 INFO    ] No existing commands found in stream
[2026-06-05 10:29:54,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:29:54,599.599 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 10:29:55,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:29:55,929.929 INFO    ] Checking for system updates...
[2026-06-05 10:29:55,964.964 INFO    ] 200
[2026-06-05 10:29:55,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:56,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:56,028.028 INFO    ] No update needed
[2026-06-05 10:29:56,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 10:29:56,068.068 INFO    ] 200
[2026-06-05 10:29:56,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:29:56,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:29:56,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:29:56,169.169 INFO    ] No camera update needed
[2026-06-05 10:29:56,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:29:56,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:29:56,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:29:56,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:29:58,223.223 INFO    ] ================================================
[2026-06-05 10:29:58,238.238 INFO    ] Launching Daemon at Fri Jun  5 10:29:58 IST 2026
[2026-06-05 10:29:58,249.249 INFO    ] ================================================
[2026-06-05 10:29:58,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:29:58
[2026-06-05 10:29:59,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:29:59,718.718 INFO    ] Initializing speech engine...
[2026-06-05 10:29:59,728.728 INFO    ] 2026-06-05 10:29:59
[2026-06-05 10:29:59,995.995 INFO    ] 2026-06-05 10:29:59
[2026-06-05 10:30:00,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:30:00,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:30:00,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:30:00,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:30:00,494.494 INFO    ] time= 05/06/2026 10:30:00
[2026-06-05 10:30:00,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:30:00,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:30:00,705.705 INFO    ] No existing commands found in stream
[2026-06-05 10:30:05,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:30:05,738.738 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 10:30:09,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:30:09,716.716 INFO    ] Checking for system updates...
[2026-06-05 10:30:09,755.755 INFO    ] 200
[2026-06-05 10:30:09,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:09,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:30:09,814.814 INFO    ] No update needed
[2026-06-05 10:30:09,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 10:30:09,853.853 INFO    ] 200
[2026-06-05 10:30:09,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:09,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:30:10,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:30:10,036.036 INFO    ] No camera update needed
[2026-06-05 10:30:10,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:30:10,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:30:10,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:30:10,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:30:12,091.091 INFO    ] ================================================
[2026-06-05 10:30:12,106.106 INFO    ] Launching Daemon at Fri Jun  5 10:30:12 IST 2026
[2026-06-05 10:30:12,117.117 INFO    ] ================================================
[2026-06-05 10:30:12,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:30:12
[2026-06-05 10:30:13,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:30:13,671.671 INFO    ] Initializing speech engine...
[2026-06-05 10:30:13,678.678 INFO    ] 2026-06-05 10:30:13
[2026-06-05 10:30:13,961.961 INFO    ] 2026-06-05 10:30:13
[2026-06-05 10:30:14,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:30:14,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:30:14,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:30:14,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:30:14,494.494 INFO    ] time= 05/06/2026 10:30:14
[2026-06-05 10:30:14,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:30:14,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:30:14,648.648 INFO    ] No existing commands found in stream
[2026-06-05 10:30:19,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:30:19,672.672 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 10:30:21,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:30:21,096.096 INFO    ] Checking for system updates...
[2026-06-05 10:30:21,133.133 INFO    ] 200
[2026-06-05 10:30:21,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:21,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:30:21,193.193 INFO    ] No update needed
[2026-06-05 10:30:21,195.195 INFO    ] Checking for camera pi updates...
[2026-06-05 10:30:21,230.230 INFO    ] 200
[2026-06-05 10:30:21,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:21,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:30:21,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:30:21,424.424 INFO    ] No camera update needed
[2026-06-05 10:30:21,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:30:21,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:30:21,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:30:21,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:30:23,484.484 INFO    ] ================================================
[2026-06-05 10:30:23,499.499 INFO    ] Launching Daemon at Fri Jun  5 10:30:23 IST 2026
[2026-06-05 10:30:23,511.511 INFO    ] ================================================
[2026-06-05 10:30:24,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:30:24
[2026-06-05 10:30:24,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:30:24,955.955 INFO    ] Initializing speech engine...
[2026-06-05 10:30:24,965.965 INFO    ] 2026-06-05 10:30:24
[2026-06-05 10:30:25,213.213 INFO    ] 2026-06-05 10:30:25
[2026-06-05 10:30:25,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:30:25,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:30:25,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:30:25,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:30:25,687.687 INFO    ] time= 05/06/2026 10:30:25
[2026-06-05 10:30:25,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:30:25,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:30:25,905.905 INFO    ] No existing commands found in stream
[2026-06-05 10:30:30,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:30:30,939.939 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 10:30:34,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:30:34,004.004 INFO    ] Checking for system updates...
[2026-06-05 10:30:34,042.042 INFO    ] 200
[2026-06-05 10:30:34,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:34,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:30:34,105.105 INFO    ] No update needed
[2026-06-05 10:30:34,108.108 INFO    ] Checking for camera pi updates...
[2026-06-05 10:30:34,141.141 INFO    ] 200
[2026-06-05 10:30:34,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:34,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:30:34,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:30:34,242.242 INFO    ] No camera update needed
[2026-06-05 10:30:34,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:30:34,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:30:34,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:30:34,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:30:36,301.301 INFO    ] ================================================
[2026-06-05 10:30:36,317.317 INFO    ] Launching Daemon at Fri Jun  5 10:30:36 IST 2026
[2026-06-05 10:30:36,328.328 INFO    ] ================================================
[2026-06-05 10:30:36,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:30:36
[2026-06-05 10:30:37,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:30:37,747.747 INFO    ] Initializing speech engine...
[2026-06-05 10:30:37,756.756 INFO    ] 2026-06-05 10:30:37
[2026-06-05 10:30:38,008.008 INFO    ] 2026-06-05 10:30:37
[2026-06-05 10:30:38,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:30:38,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:30:38,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:30:38,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:30:38,467.467 INFO    ] time= 05/06/2026 10:30:38
[2026-06-05 10:30:38,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:30:38,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:30:38,627.627 INFO    ] No existing commands found in stream
[2026-06-05 10:30:43,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:30:43,661.661 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 10:30:47,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:30:47,369.369 INFO    ] Checking for system updates...
[2026-06-05 10:30:47,409.409 INFO    ] 200
[2026-06-05 10:30:47,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:47,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:30:47,474.474 INFO    ] No update needed
[2026-06-05 10:30:47,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 10:30:47,511.511 INFO    ] 200
[2026-06-05 10:30:47,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:47,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:30:47,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:30:47,611.611 INFO    ] No camera update needed
[2026-06-05 10:30:47,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:30:47,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:30:47,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:30:47,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:30:49,668.668 INFO    ] ================================================
[2026-06-05 10:30:49,684.684 INFO    ] Launching Daemon at Fri Jun  5 10:30:49 IST 2026
[2026-06-05 10:30:49,695.695 INFO    ] ================================================
[2026-06-05 10:30:50,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:30:50
[2026-06-05 10:30:50,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:30:51,126.126 INFO    ] Initializing speech engine...
[2026-06-05 10:30:51,136.136 INFO    ] 2026-06-05 10:30:51
[2026-06-05 10:30:51,394.394 INFO    ] 2026-06-05 10:30:51
[2026-06-05 10:30:51,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:30:51,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:30:51,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:30:51,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:30:51,878.878 INFO    ] time= 05/06/2026 10:30:51
[2026-06-05 10:30:51,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:30:51,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:30:52,083.083 INFO    ] No existing commands found in stream
[2026-06-05 10:30:57,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:30:57,107.107 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 10:30:57,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:30:57,921.921 INFO    ] Checking for system updates...
[2026-06-05 10:30:57,958.958 INFO    ] 200
[2026-06-05 10:30:57,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:58,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:30:58,022.022 INFO    ] No update needed
[2026-06-05 10:30:58,025.025 INFO    ] Checking for camera pi updates...
[2026-06-05 10:30:58,060.060 INFO    ] 200
[2026-06-05 10:30:58,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:30:58,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:30:58,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:30:58,155.155 INFO    ] No camera update needed
[2026-06-05 10:30:58,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:30:58,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:30:58,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:30:58,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:31:00,218.218 INFO    ] ================================================
[2026-06-05 10:31:00,234.234 INFO    ] Launching Daemon at Fri Jun  5 10:31:00 IST 2026
[2026-06-05 10:31:00,245.245 INFO    ] ================================================
[2026-06-05 10:31:00,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:31:00
[2026-06-05 10:31:01,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:31:02,092.092 INFO    ] Initializing speech engine...
[2026-06-05 10:31:02,102.102 INFO    ] 2026-06-05 10:31:02
[2026-06-05 10:31:02,488.488 INFO    ] 2026-06-05 10:31:02
[2026-06-05 10:31:02,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:31:02,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:31:02,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:31:03,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:31:03,127.127 INFO    ] time= 05/06/2026 10:31:03
[2026-06-05 10:31:03,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:31:03,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:31:03,365.365 INFO    ] No existing commands found in stream
[2026-06-05 10:31:08,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:31:08,381.381 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 10:31:09,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:31:09,939.939 INFO    ] Checking for system updates...
[2026-06-05 10:31:09,978.978 INFO    ] 200
[2026-06-05 10:31:09,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:31:10,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:31:10,041.041 INFO    ] No update needed
[2026-06-05 10:31:10,043.043 INFO    ] Checking for camera pi updates...
[2026-06-05 10:31:10,078.078 INFO    ] 200
[2026-06-05 10:31:10,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:31:10,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:31:10,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:31:10,177.177 INFO    ] No camera update needed
[2026-06-05 10:31:10,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:31:10,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:31:10,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:31:10,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:31:12,233.233 INFO    ] ================================================
[2026-06-05 10:31:12,250.250 INFO    ] Launching Daemon at Fri Jun  5 10:31:12 IST 2026
[2026-06-05 10:31:12,263.263 INFO    ] ================================================
[2026-06-05 10:31:12,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:31:12
[2026-06-05 10:31:13,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:31:13,762.762 INFO    ] Initializing speech engine...
[2026-06-05 10:31:13,781.781 INFO    ] 2026-06-05 10:31:13
[2026-06-05 10:31:14,051.051 INFO    ] 2026-06-05 10:31:14
[2026-06-05 10:31:14,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:31:15,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:31:15,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:31:15,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:31:15,445.445 INFO    ] time= 05/06/2026 10:31:15
[2026-06-05 10:31:15,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:31:15,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:31:15,520.520 INFO    ] No existing commands found in stream
[2026-06-05 10:31:20,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:31:20,532.532 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 10:31:21,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:31:21,125.125 INFO    ] Checking for system updates...
[2026-06-05 10:31:21,165.165 INFO    ] 200
[2026-06-05 10:31:21,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:31:21,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:31:21,228.228 INFO    ] No update needed
[2026-06-05 10:31:21,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 10:31:21,266.266 INFO    ] 200
[2026-06-05 10:31:21,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:31:21,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:31:21,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:31:21,370.370 INFO    ] No camera update needed
[2026-06-05 10:31:21,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:31:21,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:31:21,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:31:21,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:31:23,429.429 INFO    ] ================================================
[2026-06-05 10:31:23,446.446 INFO    ] Launching Daemon at Fri Jun  5 10:31:23 IST 2026
[2026-06-05 10:31:23,457.457 INFO    ] ================================================
[2026-06-05 10:31:24,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:31:24
[2026-06-05 10:31:24,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:31:24,943.943 INFO    ] Initializing speech engine...
[2026-06-05 10:31:24,955.955 INFO    ] 2026-06-05 10:31:24
[2026-06-05 10:31:25,233.233 INFO    ] 2026-06-05 10:31:25
[2026-06-05 10:31:25,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:31:25,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:31:25,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:31:25,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:31:25,686.686 INFO    ] time= 05/06/2026 10:31:25
[2026-06-05 10:31:25,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:31:25,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:31:25,930.930 INFO    ] No existing commands found in stream
[2026-06-05 10:31:30,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:31:30,957.957 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 10:31:35,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:31:35,188.188 INFO    ] Checking for system updates...
[2026-06-05 10:31:35,226.226 INFO    ] 200
[2026-06-05 10:31:35,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:31:35,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:31:35,292.292 INFO    ] No update needed
[2026-06-05 10:31:35,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 10:31:35,338.338 INFO    ] 200
[2026-06-05 10:31:35,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:31:35,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:31:35,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:31:35,440.440 INFO    ] No camera update needed
[2026-06-05 10:31:35,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:31:35,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:31:35,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:31:35,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:31:37,499.499 INFO    ] ================================================
[2026-06-05 10:31:37,515.515 INFO    ] Launching Daemon at Fri Jun  5 10:31:37 IST 2026
[2026-06-05 10:31:37,527.527 INFO    ] ================================================
[2026-06-05 10:31:38,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:31:38
[2026-06-05 10:31:38,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:31:39,044.044 INFO    ] Initializing speech engine...
[2026-06-05 10:31:39,058.058 INFO    ] 2026-06-05 10:31:39
[2026-06-05 10:31:39,342.342 INFO    ] 2026-06-05 10:31:39
[2026-06-05 10:31:39,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:31:39,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:31:39,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:31:39,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:31:39,866.866 INFO    ] time= 05/06/2026 10:31:39
[2026-06-05 10:31:39,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:31:39,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:31:40,023.023 INFO    ] No existing commands found in stream
[2026-06-05 10:31:45,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:31:45,041.041 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 10:31:49,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:31:49,087.087 INFO    ] Checking for system updates...
[2026-06-05 10:31:49,127.127 INFO    ] 200
[2026-06-05 10:31:49,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:31:49,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:31:49,185.185 INFO    ] No update needed
[2026-06-05 10:31:49,188.188 INFO    ] Checking for camera pi updates...
[2026-06-05 10:31:49,226.226 INFO    ] 200
[2026-06-05 10:31:49,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:31:49,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:31:49,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:31:49,326.326 INFO    ] No camera update needed
[2026-06-05 10:31:49,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:31:49,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:31:49,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:31:49,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:31:51,385.385 INFO    ] ================================================
[2026-06-05 10:31:51,401.401 INFO    ] Launching Daemon at Fri Jun  5 10:31:51 IST 2026
[2026-06-05 10:31:51,413.413 INFO    ] ================================================
[2026-06-05 10:31:52,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:31:51
[2026-06-05 10:31:52,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:31:52,833.833 INFO    ] Initializing speech engine...
[2026-06-05 10:31:52,848.848 INFO    ] 2026-06-05 10:31:52
[2026-06-05 10:31:53,113.113 INFO    ] 2026-06-05 10:31:53
[2026-06-05 10:31:53,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:31:53,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:31:53,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:31:53,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:31:53,681.681 INFO    ] time= 05/06/2026 10:31:53
[2026-06-05 10:31:53,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:31:53,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:31:53,829.829 INFO    ] No existing commands found in stream
[2026-06-05 10:31:58,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:31:58,857.857 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 10:32:00,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:32:00,568.568 INFO    ] Checking for system updates...
[2026-06-05 10:32:00,604.604 INFO    ] 200
[2026-06-05 10:32:00,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:32:00,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:32:00,662.662 INFO    ] No update needed
[2026-06-05 10:32:00,665.665 INFO    ] Checking for camera pi updates...
[2026-06-05 10:32:00,699.699 INFO    ] 200
[2026-06-05 10:32:00,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:32:00,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:32:00,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:32:00,799.799 INFO    ] No camera update needed
[2026-06-05 10:32:00,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:32:00,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:32:00,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:32:00,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:32:02,860.860 INFO    ] ================================================
[2026-06-05 10:32:02,881.881 INFO    ] Launching Daemon at Fri Jun  5 10:32:02 IST 2026
[2026-06-05 10:32:02,894.894 INFO    ] ================================================
[2026-06-05 10:32:03,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:32:03
[2026-06-05 10:32:04,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:32:04,370.370 INFO    ] Initializing speech engine...
[2026-06-05 10:32:04,377.377 INFO    ] 2026-06-05 10:32:04
[2026-06-05 10:32:04,621.621 INFO    ] 2026-06-05 10:32:04
[2026-06-05 10:32:04,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:32:04,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:32:04,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:32:05,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:32:05,113.113 INFO    ] time= 05/06/2026 10:32:05
[2026-06-05 10:32:05,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:32:05,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:32:05,327.327 INFO    ] No existing commands found in stream
[2026-06-05 10:32:10,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:32:10,346.346 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 10:32:13,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:32:13,275.275 INFO    ] Checking for system updates...
[2026-06-05 10:32:13,312.312 INFO    ] 200
[2026-06-05 10:32:13,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:32:13,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:32:13,370.370 INFO    ] No update needed
[2026-06-05 10:32:13,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 10:32:13,409.409 INFO    ] 200
[2026-06-05 10:32:13,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:32:13,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:32:13,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:32:13,515.515 INFO    ] No camera update needed
[2026-06-05 10:32:13,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:32:13,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:32:13,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:32:13,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:32:15,578.578 INFO    ] ================================================
[2026-06-05 10:32:15,595.595 INFO    ] Launching Daemon at Fri Jun  5 10:32:15 IST 2026
[2026-06-05 10:32:15,605.605 INFO    ] ================================================
[2026-06-05 10:32:16,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:32:16
[2026-06-05 10:32:16,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:32:17,038.038 INFO    ] Initializing speech engine...
[2026-06-05 10:32:17,047.047 INFO    ] 2026-06-05 10:32:17
[2026-06-05 10:32:17,307.307 INFO    ] 2026-06-05 10:32:17
[2026-06-05 10:32:17,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:32:17,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:32:17,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:32:17,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:32:17,854.854 INFO    ] time= 05/06/2026 10:32:17
[2026-06-05 10:32:17,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:32:17,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:32:18,022.022 INFO    ] No existing commands found in stream
[2026-06-05 10:32:23,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:32:23,055.055 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 10:32:27,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:32:27,236.236 INFO    ] Checking for system updates...
[2026-06-05 10:32:27,282.282 INFO    ] 200
[2026-06-05 10:32:27,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 10:32:27,288.288 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 10:32:27,292.292 INFO    ] Checking for camera pi updates...
[2026-06-05 10:32:27,326.326 INFO    ] 200
[2026-06-05 10:32:27,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 10:32:27,331.331 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 10:32:27,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:32:27,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:32:27,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:32:27,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:32:29,389.389 INFO    ] ================================================
[2026-06-05 10:32:29,405.405 INFO    ] Launching Daemon at Fri Jun  5 10:32:29 IST 2026
[2026-06-05 10:32:29,416.416 INFO    ] ================================================
[2026-06-05 10:32:29,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:32:29
[2026-06-05 10:32:30,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:32:30,864.864 INFO    ] Initializing speech engine...
[2026-06-05 10:32:30,874.874 INFO    ] 2026-06-05 10:32:30
[2026-06-05 10:32:31,132.132 INFO    ] 2026-06-05 10:32:31
[2026-06-05 10:32:31,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:32:31,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:32:31,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:32:31,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:32:31,608.608 INFO    ] time= 05/06/2026 10:32:31
[2026-06-05 10:32:31,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:32:31,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:32:31,808.808 INFO    ] No existing commands found in stream
[2026-06-05 10:32:36,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:32:36,842.842 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 10:32:39,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:32:39,061.061 INFO    ] Checking for system updates...
[2026-06-05 10:32:39,097.097 INFO    ] 200
[2026-06-05 10:32:39,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:32:39,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:32:39,157.157 INFO    ] No update needed
[2026-06-05 10:32:39,159.159 INFO    ] Checking for camera pi updates...
[2026-06-05 10:32:39,192.192 INFO    ] 200
[2026-06-05 10:32:39,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:32:39,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:32:39,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:32:39,308.308 INFO    ] No camera update needed
[2026-06-05 10:32:39,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:32:39,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:32:39,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:32:39,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:32:41,369.369 INFO    ] ================================================
[2026-06-05 10:32:41,385.385 INFO    ] Launching Daemon at Fri Jun  5 10:32:41 IST 2026
[2026-06-05 10:32:41,396.396 INFO    ] ================================================
[2026-06-05 10:32:42,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:32:42
[2026-06-05 10:32:42,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:32:43,061.061 INFO    ] Initializing speech engine...
[2026-06-05 10:32:43,075.075 INFO    ] 2026-06-05 10:32:43
[2026-06-05 10:32:43,369.369 INFO    ] 2026-06-05 10:32:43
[2026-06-05 10:32:43,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:32:43,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:32:43,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:32:43,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:32:43,913.913 INFO    ] time= 05/06/2026 10:32:43
[2026-06-05 10:32:43,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:32:43,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:32:44,051.051 INFO    ] No existing commands found in stream
[2026-06-05 10:32:49,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:32:49,082.082 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 10:32:51,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:32:51,358.358 INFO    ] Checking for system updates...
[2026-06-05 10:32:51,396.396 INFO    ] 200
[2026-06-05 10:32:51,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:32:51,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:32:51,464.464 INFO    ] No update needed
[2026-06-05 10:32:51,467.467 INFO    ] Checking for camera pi updates...
[2026-06-05 10:32:51,506.506 INFO    ] 200
[2026-06-05 10:32:51,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:32:51,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:32:51,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:32:51,610.610 INFO    ] No camera update needed
[2026-06-05 10:32:51,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:32:51,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:32:51,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:32:51,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:32:53,667.667 INFO    ] ================================================
[2026-06-05 10:32:53,683.683 INFO    ] Launching Daemon at Fri Jun  5 10:32:53 IST 2026
[2026-06-05 10:32:53,694.694 INFO    ] ================================================
[2026-06-05 10:32:54,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:32:54
[2026-06-05 10:32:54,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:32:55,160.160 INFO    ] Initializing speech engine...
[2026-06-05 10:32:55,169.169 INFO    ] 2026-06-05 10:32:55
[2026-06-05 10:32:55,431.431 INFO    ] 2026-06-05 10:32:55
[2026-06-05 10:32:55,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:32:55,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:32:55,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:32:55,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:32:55,928.928 INFO    ] time= 05/06/2026 10:32:55
[2026-06-05 10:32:55,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:32:56,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:32:56,105.105 INFO    ] No existing commands found in stream
[2026-06-05 10:33:01,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:33:01,120.120 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 10:33:05,342.342 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:33:05,344.344 INFO    ] Checking for system updates...
[2026-06-05 10:33:05,384.384 INFO    ] 200
[2026-06-05 10:33:05,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:05,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:33:05,443.443 INFO    ] No update needed
[2026-06-05 10:33:05,445.445 INFO    ] Checking for camera pi updates...
[2026-06-05 10:33:05,483.483 INFO    ] 200
[2026-06-05 10:33:05,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:05,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:33:05,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:33:05,586.586 INFO    ] No camera update needed
[2026-06-05 10:33:05,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:33:05,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:33:05,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:33:05,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:33:07,650.650 INFO    ] ================================================
[2026-06-05 10:33:07,664.664 INFO    ] Launching Daemon at Fri Jun  5 10:33:07 IST 2026
[2026-06-05 10:33:07,675.675 INFO    ] ================================================
[2026-06-05 10:33:08,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:33:08
[2026-06-05 10:33:08,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:33:09,116.116 INFO    ] Initializing speech engine...
[2026-06-05 10:33:09,124.124 INFO    ] 2026-06-05 10:33:09
[2026-06-05 10:33:09,399.399 INFO    ] 2026-06-05 10:33:09
[2026-06-05 10:33:09,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:33:09,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:33:09,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:33:09,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:33:09,873.873 INFO    ] time= 05/06/2026 10:33:09
[2026-06-05 10:33:09,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:33:09,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:33:10,082.082 INFO    ] No existing commands found in stream
[2026-06-05 10:33:15,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:33:15,115.115 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 10:33:18,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:33:18,664.664 INFO    ] Checking for system updates...
[2026-06-05 10:33:18,701.701 INFO    ] 200
[2026-06-05 10:33:18,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:18,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:33:18,762.762 INFO    ] No update needed
[2026-06-05 10:33:18,765.765 INFO    ] Checking for camera pi updates...
[2026-06-05 10:33:18,800.800 INFO    ] 200
[2026-06-05 10:33:18,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:18,859.859 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:33:18,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:33:18,914.914 INFO    ] No camera update needed
[2026-06-05 10:33:18,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:33:18,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:33:18,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:33:18,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:33:20,974.974 INFO    ] ================================================
[2026-06-05 10:33:20,989.989 INFO    ] Launching Daemon at Fri Jun  5 10:33:20 IST 2026
[2026-06-05 10:33:21,000.000 INFO    ] ================================================
[2026-06-05 10:33:21,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:33:21
[2026-06-05 10:33:22,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:33:22,427.427 INFO    ] Initializing speech engine...
[2026-06-05 10:33:22,436.436 INFO    ] 2026-06-05 10:33:22
[2026-06-05 10:33:22,693.693 INFO    ] 2026-06-05 10:33:22
[2026-06-05 10:33:22,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:33:22,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:33:22,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:33:23,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:33:23,150.150 INFO    ] time= 05/06/2026 10:33:23
[2026-06-05 10:33:23,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:33:23,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:33:23,406.406 INFO    ] No existing commands found in stream
[2026-06-05 10:33:28,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:33:28,430.430 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 10:33:30,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:33:30,453.453 INFO    ] Checking for system updates...
[2026-06-05 10:33:30,493.493 INFO    ] 200
[2026-06-05 10:33:30,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:30,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:33:30,557.557 INFO    ] No update needed
[2026-06-05 10:33:30,560.560 INFO    ] Checking for camera pi updates...
[2026-06-05 10:33:30,593.593 INFO    ] 200
[2026-06-05 10:33:30,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:30,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:33:30,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:33:30,717.717 INFO    ] No camera update needed
[2026-06-05 10:33:30,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:33:30,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:33:30,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:33:30,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:33:32,776.776 INFO    ] ================================================
[2026-06-05 10:33:32,792.792 INFO    ] Launching Daemon at Fri Jun  5 10:33:32 IST 2026
[2026-06-05 10:33:32,803.803 INFO    ] ================================================
[2026-06-05 10:33:33,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:33:33
[2026-06-05 10:33:34,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:33:34,306.306 INFO    ] Initializing speech engine...
[2026-06-05 10:33:34,315.315 INFO    ] 2026-06-05 10:33:34
[2026-06-05 10:33:34,565.565 INFO    ] 2026-06-05 10:33:34
[2026-06-05 10:33:34,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:33:34,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:33:34,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:33:35,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:33:35,016.016 INFO    ] time= 05/06/2026 10:33:35
[2026-06-05 10:33:35,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:33:35,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:33:35,306.306 INFO    ] No existing commands found in stream
[2026-06-05 10:33:40,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:33:40,331.331 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 10:33:41,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:33:41,599.599 INFO    ] Checking for system updates...
[2026-06-05 10:33:41,635.635 INFO    ] 200
[2026-06-05 10:33:41,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:41,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:33:41,703.703 INFO    ] No update needed
[2026-06-05 10:33:41,706.706 INFO    ] Checking for camera pi updates...
[2026-06-05 10:33:41,742.742 INFO    ] 200
[2026-06-05 10:33:41,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:41,786.786 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:33:41,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:33:41,836.836 INFO    ] No camera update needed
[2026-06-05 10:33:41,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:33:41,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:33:41,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:33:41,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:33:43,894.894 INFO    ] ================================================
[2026-06-05 10:33:43,909.909 INFO    ] Launching Daemon at Fri Jun  5 10:33:43 IST 2026
[2026-06-05 10:33:43,920.920 INFO    ] ================================================
[2026-06-05 10:33:44,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:33:44
[2026-06-05 10:33:45,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:33:45,349.349 INFO    ] Initializing speech engine...
[2026-06-05 10:33:45,358.358 INFO    ] 2026-06-05 10:33:45
[2026-06-05 10:33:45,604.604 INFO    ] 2026-06-05 10:33:45
[2026-06-05 10:33:45,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:33:45,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:33:45,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:33:46,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:33:46,075.075 INFO    ] time= 05/06/2026 10:33:46
[2026-06-05 10:33:46,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:33:46,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:33:46,295.295 INFO    ] No existing commands found in stream
[2026-06-05 10:33:51,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:33:51,325.325 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 10:33:55,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:33:55,219.219 INFO    ] Checking for system updates...
[2026-06-05 10:33:55,255.255 INFO    ] 200
[2026-06-05 10:33:55,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:55,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:33:55,314.314 INFO    ] No update needed
[2026-06-05 10:33:55,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 10:33:55,350.350 INFO    ] 200
[2026-06-05 10:33:55,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:33:55,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:33:55,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:33:55,441.441 INFO    ] No camera update needed
[2026-06-05 10:33:55,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:33:55,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:33:55,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:33:55,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:33:57,496.496 INFO    ] ================================================
[2026-06-05 10:33:57,513.513 INFO    ] Launching Daemon at Fri Jun  5 10:33:57 IST 2026
[2026-06-05 10:33:57,523.523 INFO    ] ================================================
[2026-06-05 10:33:58,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:33:58
[2026-06-05 10:33:58,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:33:58,986.986 INFO    ] Initializing speech engine...
[2026-06-05 10:33:59,015.015 INFO    ] 2026-06-05 10:33:58
[2026-06-05 10:33:59,293.293 INFO    ] 2026-06-05 10:33:59
[2026-06-05 10:33:59,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:34:00,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:34:00,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:34:00,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:34:00,491.491 INFO    ] time= 05/06/2026 10:34:00
[2026-06-05 10:34:00,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:34:00,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:34:00,629.629 INFO    ] No existing commands found in stream
[2026-06-05 10:34:05,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:34:05,663.663 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 10:34:08,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:34:08,497.497 INFO    ] Checking for system updates...
[2026-06-05 10:34:08,537.537 INFO    ] 200
[2026-06-05 10:34:08,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:08,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:34:08,617.617 INFO    ] No update needed
[2026-06-05 10:34:08,623.623 INFO    ] Checking for camera pi updates...
[2026-06-05 10:34:08,682.682 INFO    ] 200
[2026-06-05 10:34:08,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:08,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:34:08,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:34:08,796.796 INFO    ] No camera update needed
[2026-06-05 10:34:08,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:34:08,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:34:08,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:34:08,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:34:10,855.855 INFO    ] ================================================
[2026-06-05 10:34:10,871.871 INFO    ] Launching Daemon at Fri Jun  5 10:34:10 IST 2026
[2026-06-05 10:34:10,882.882 INFO    ] ================================================
[2026-06-05 10:34:11,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:34:11
[2026-06-05 10:34:12,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:34:12,523.523 INFO    ] Initializing speech engine...
[2026-06-05 10:34:12,535.535 INFO    ] 2026-06-05 10:34:12
[2026-06-05 10:34:12,826.826 INFO    ] 2026-06-05 10:34:12
[2026-06-05 10:34:12,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:34:13,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:34:13,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:34:13,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:34:13,319.319 INFO    ] time= 05/06/2026 10:34:13
[2026-06-05 10:34:13,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:34:13,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:34:13,534.534 INFO    ] No existing commands found in stream
[2026-06-05 10:34:18,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:34:18,568.568 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 10:34:19,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:34:19,935.935 INFO    ] Checking for system updates...
[2026-06-05 10:34:19,972.972 INFO    ] 200
[2026-06-05 10:34:19,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:20,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:34:20,033.033 INFO    ] No update needed
[2026-06-05 10:34:20,036.036 INFO    ] Checking for camera pi updates...
[2026-06-05 10:34:20,072.072 INFO    ] 200
[2026-06-05 10:34:20,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:20,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:34:20,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:34:20,175.175 INFO    ] No camera update needed
[2026-06-05 10:34:20,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:34:20,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:34:20,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:34:20,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:34:22,236.236 INFO    ] ================================================
[2026-06-05 10:34:22,252.252 INFO    ] Launching Daemon at Fri Jun  5 10:34:22 IST 2026
[2026-06-05 10:34:22,263.263 INFO    ] ================================================
[2026-06-05 10:34:22,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:34:22
[2026-06-05 10:34:23,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:34:23,709.709 INFO    ] Initializing speech engine...
[2026-06-05 10:34:23,734.734 INFO    ] 2026-06-05 10:34:23
[2026-06-05 10:34:24,013.013 INFO    ] 2026-06-05 10:34:23
[2026-06-05 10:34:24,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:34:24,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:34:24,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:34:24,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:34:24,409.409 INFO    ] time= 05/06/2026 10:34:24
[2026-06-05 10:34:24,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:34:24,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:34:24,487.487 INFO    ] No existing commands found in stream
[2026-06-05 10:34:29,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:34:29,502.502 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 10:34:30,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:34:30,597.597 INFO    ] Checking for system updates...
[2026-06-05 10:34:30,633.633 INFO    ] 200
[2026-06-05 10:34:30,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:30,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:34:30,693.693 INFO    ] No update needed
[2026-06-05 10:34:30,695.695 INFO    ] Checking for camera pi updates...
[2026-06-05 10:34:30,729.729 INFO    ] 200
[2026-06-05 10:34:30,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:30,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:34:30,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:34:30,837.837 INFO    ] No camera update needed
[2026-06-05 10:34:30,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:34:30,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:34:30,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:34:30,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:34:32,894.894 INFO    ] ================================================
[2026-06-05 10:34:32,911.911 INFO    ] Launching Daemon at Fri Jun  5 10:34:32 IST 2026
[2026-06-05 10:34:32,922.922 INFO    ] ================================================
[2026-06-05 10:34:33,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:34:33
[2026-06-05 10:34:34,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:34:34,528.528 INFO    ] Initializing speech engine...
[2026-06-05 10:34:34,540.540 INFO    ] 2026-06-05 10:34:34
[2026-06-05 10:34:34,791.791 INFO    ] 2026-06-05 10:34:34
[2026-06-05 10:34:34,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:34:35,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:34:35,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:34:35,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:34:35,302.302 INFO    ] time= 05/06/2026 10:34:35
[2026-06-05 10:34:35,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:34:35,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:34:35,506.506 INFO    ] No existing commands found in stream
[2026-06-05 10:34:40,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:34:40,530.530 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 10:34:42,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:34:42,044.044 INFO    ] Checking for system updates...
[2026-06-05 10:34:42,081.081 INFO    ] 200
[2026-06-05 10:34:42,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:42,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:34:42,145.145 INFO    ] No update needed
[2026-06-05 10:34:42,147.147 INFO    ] Checking for camera pi updates...
[2026-06-05 10:34:42,185.185 INFO    ] 200
[2026-06-05 10:34:42,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:42,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:34:42,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:34:42,375.375 INFO    ] No camera update needed
[2026-06-05 10:34:42,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:34:42,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:34:42,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:34:42,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:34:44,431.431 INFO    ] ================================================
[2026-06-05 10:34:44,447.447 INFO    ] Launching Daemon at Fri Jun  5 10:34:44 IST 2026
[2026-06-05 10:34:44,459.459 INFO    ] ================================================
[2026-06-05 10:34:45,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:34:45
[2026-06-05 10:34:45,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:34:46,152.152 INFO    ] Initializing speech engine...
[2026-06-05 10:34:46,159.159 INFO    ] 2026-06-05 10:34:46
[2026-06-05 10:34:46,437.437 INFO    ] 2026-06-05 10:34:46
[2026-06-05 10:34:46,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:34:46,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:34:46,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:34:46,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:34:46,979.979 INFO    ] time= 05/06/2026 10:34:46
[2026-06-05 10:34:46,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:34:47,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:34:47,122.122 INFO    ] No existing commands found in stream
[2026-06-05 10:34:52,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:34:52,152.152 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 10:34:53,703.703 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:34:53,707.707 INFO    ] Checking for system updates...
[2026-06-05 10:34:53,748.748 INFO    ] 200
[2026-06-05 10:34:53,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:53,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:34:53,816.816 INFO    ] No update needed
[2026-06-05 10:34:53,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 10:34:53,854.854 INFO    ] 200
[2026-06-05 10:34:53,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:34:53,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:34:53,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:34:53,962.962 INFO    ] No camera update needed
[2026-06-05 10:34:53,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:34:53,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:34:53,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:34:53,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:34:56,021.021 INFO    ] ================================================
[2026-06-05 10:34:56,037.037 INFO    ] Launching Daemon at Fri Jun  5 10:34:56 IST 2026
[2026-06-05 10:34:56,048.048 INFO    ] ================================================
[2026-06-05 10:34:56,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:34:56
[2026-06-05 10:34:57,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:34:57,452.452 INFO    ] Initializing speech engine...
[2026-06-05 10:34:57,467.467 INFO    ] 2026-06-05 10:34:57
[2026-06-05 10:34:57,734.734 INFO    ] 2026-06-05 10:34:57
[2026-06-05 10:34:57,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:34:57,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:34:57,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:34:59,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:34:59,190.190 INFO    ] time= 05/06/2026 10:34:59
[2026-06-05 10:34:59,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:34:59,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:34:59,274.274 INFO    ] No existing commands found in stream
[2026-06-05 10:35:04,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:35:04,287.287 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 10:35:05,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:35:05,864.864 INFO    ] Checking for system updates...
[2026-06-05 10:35:05,903.903 INFO    ] 200
[2026-06-05 10:35:05,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:35:05,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:35:05,961.961 INFO    ] No update needed
[2026-06-05 10:35:05,963.963 INFO    ] Checking for camera pi updates...
[2026-06-05 10:35:06,001.001 INFO    ] 200
[2026-06-05 10:35:06,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:35:06,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:35:06,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:35:06,098.098 INFO    ] No camera update needed
[2026-06-05 10:35:06,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:35:06,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:35:06,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:35:06,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:35:08,153.153 INFO    ] ================================================
[2026-06-05 10:35:08,168.168 INFO    ] Launching Daemon at Fri Jun  5 10:35:08 IST 2026
[2026-06-05 10:35:08,179.179 INFO    ] ================================================
[2026-06-05 10:35:08,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:35:08
[2026-06-05 10:35:09,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:35:09,594.594 INFO    ] Initializing speech engine...
[2026-06-05 10:35:09,607.607 INFO    ] 2026-06-05 10:35:09
[2026-06-05 10:35:09,905.905 INFO    ] 2026-06-05 10:35:09
[2026-06-05 10:35:09,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:35:10,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:35:10,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:35:10,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:35:10,287.287 INFO    ] time= 05/06/2026 10:35:10
[2026-06-05 10:35:10,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:35:10,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:35:10,397.397 INFO    ] No existing commands found in stream
[2026-06-05 10:35:15,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:35:15,412.412 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 10:35:16,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:35:16,965.965 INFO    ] Checking for system updates...
[2026-06-05 10:35:17,002.002 INFO    ] 200
[2026-06-05 10:35:17,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:35:17,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:35:17,061.061 INFO    ] No update needed
[2026-06-05 10:35:17,063.063 INFO    ] Checking for camera pi updates...
[2026-06-05 10:35:17,097.097 INFO    ] 200
[2026-06-05 10:35:17,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:35:17,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:35:17,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:35:17,198.198 INFO    ] No camera update needed
[2026-06-05 10:35:17,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:35:17,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:35:17,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:35:17,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:35:19,252.252 INFO    ] ================================================
[2026-06-05 10:35:19,268.268 INFO    ] Launching Daemon at Fri Jun  5 10:35:19 IST 2026
[2026-06-05 10:35:19,279.279 INFO    ] ================================================
[2026-06-05 10:35:19,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:35:19
[2026-06-05 10:35:20,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:35:20,688.688 INFO    ] Initializing speech engine...
[2026-06-05 10:35:20,712.712 INFO    ] 2026-06-05 10:35:20
[2026-06-05 10:35:20,970.970 INFO    ] 2026-06-05 10:35:20
[2026-06-05 10:35:21,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:35:21,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:35:21,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:35:21,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:35:21,346.346 INFO    ] time= 05/06/2026 10:35:21
[2026-06-05 10:35:21,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:35:21,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:35:21,548.548 INFO    ] No existing commands found in stream
[2026-06-05 10:35:26,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:35:26,564.564 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 10:35:30,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:35:30,438.438 INFO    ] Checking for system updates...
[2026-06-05 10:35:30,474.474 INFO    ] 200
[2026-06-05 10:35:30,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:35:30,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:35:30,538.538 INFO    ] No update needed
[2026-06-05 10:35:30,541.541 INFO    ] Checking for camera pi updates...
[2026-06-05 10:35:30,574.574 INFO    ] 200
[2026-06-05 10:35:30,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:35:30,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:35:30,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:35:30,674.674 INFO    ] No camera update needed
[2026-06-05 10:35:30,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:35:30,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:35:30,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:35:30,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:35:32,730.730 INFO    ] ================================================
[2026-06-05 10:35:32,748.748 INFO    ] Launching Daemon at Fri Jun  5 10:35:32 IST 2026
[2026-06-05 10:35:32,760.760 INFO    ] ================================================
[2026-06-05 10:35:33,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:35:33
[2026-06-05 10:35:34,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:35:34,632.632 INFO    ] Initializing speech engine...
[2026-06-05 10:35:34,648.648 INFO    ] 2026-06-05 10:35:34
[2026-06-05 10:35:34,907.907 INFO    ] 2026-06-05 10:35:34
[2026-06-05 10:35:34,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:35:35,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:35:35,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:35:35,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:35:35,296.296 INFO    ] time= 05/06/2026 10:35:35
[2026-06-05 10:35:35,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:35:35,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:35:35,491.491 INFO    ] No existing commands found in stream
[2026-06-05 10:35:40,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:35:40,509.509 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 10:35:44,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:35:44,659.659 INFO    ] Checking for system updates...
[2026-06-05 10:35:44,765.765 INFO    ] 200
[2026-06-05 10:35:44,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:35:44,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:35:44,827.827 INFO    ] No update needed
[2026-06-05 10:35:44,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 10:35:44,863.863 INFO    ] 200
[2026-06-05 10:35:44,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:35:44,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:35:44,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:35:44,955.955 INFO    ] No camera update needed
[2026-06-05 10:35:44,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:35:44,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:35:44,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:35:44,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:35:47,010.010 INFO    ] ================================================
[2026-06-05 10:35:47,026.026 INFO    ] Launching Daemon at Fri Jun  5 10:35:47 IST 2026
[2026-06-05 10:35:47,036.036 INFO    ] ================================================
[2026-06-05 10:35:47,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:35:47
[2026-06-05 10:35:48,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:35:48,602.602 INFO    ] Initializing speech engine...
[2026-06-05 10:35:48,611.611 INFO    ] 2026-06-05 10:35:48
[2026-06-05 10:35:48,877.877 INFO    ] 2026-06-05 10:35:48
[2026-06-05 10:35:48,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:35:49,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:35:49,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:35:49,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:35:49,356.356 INFO    ] time= 05/06/2026 10:35:49
[2026-06-05 10:35:49,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:35:49,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:35:49,567.567 INFO    ] No existing commands found in stream
[2026-06-05 10:35:54,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:35:54,591.591 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 10:36:00,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:36:00,538.538 INFO    ] Checking for system updates...
[2026-06-05 10:36:00,578.578 INFO    ] 200
[2026-06-05 10:36:00,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:00,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:36:00,638.638 INFO    ] No update needed
[2026-06-05 10:36:00,640.640 INFO    ] Checking for camera pi updates...
[2026-06-05 10:36:00,679.679 INFO    ] 200
[2026-06-05 10:36:00,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:00,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:36:00,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:36:00,772.772 INFO    ] No camera update needed
[2026-06-05 10:36:00,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:36:00,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:36:00,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:36:00,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:36:02,839.839 INFO    ] ================================================
[2026-06-05 10:36:02,860.860 INFO    ] Launching Daemon at Fri Jun  5 10:36:02 IST 2026
[2026-06-05 10:36:02,877.877 INFO    ] ================================================
[2026-06-05 10:36:03,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:36:03
[2026-06-05 10:36:04,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:36:04,408.408 INFO    ] Initializing speech engine...
[2026-06-05 10:36:04,415.415 INFO    ] 2026-06-05 10:36:04
[2026-06-05 10:36:04,675.675 INFO    ] 2026-06-05 10:36:04
[2026-06-05 10:36:04,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:36:04,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:36:04,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:36:05,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:36:05,220.220 INFO    ] time= 05/06/2026 10:36:05
[2026-06-05 10:36:05,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:36:05,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:36:05,373.373 INFO    ] No existing commands found in stream
[2026-06-05 10:36:10,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:36:10,389.389 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 10:36:12,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:36:12,260.260 INFO    ] Checking for system updates...
[2026-06-05 10:36:12,297.297 INFO    ] 200
[2026-06-05 10:36:12,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:12,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:36:12,362.362 INFO    ] No update needed
[2026-06-05 10:36:12,364.364 INFO    ] Checking for camera pi updates...
[2026-06-05 10:36:12,397.397 INFO    ] 200
[2026-06-05 10:36:12,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:12,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:36:12,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:36:12,507.507 INFO    ] No camera update needed
[2026-06-05 10:36:12,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:36:12,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:36:12,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:36:12,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:36:14,563.563 INFO    ] ================================================
[2026-06-05 10:36:14,578.578 INFO    ] Launching Daemon at Fri Jun  5 10:36:14 IST 2026
[2026-06-05 10:36:14,589.589 INFO    ] ================================================
[2026-06-05 10:36:15,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:36:15
[2026-06-05 10:36:15,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:36:16,014.014 INFO    ] Initializing speech engine...
[2026-06-05 10:36:16,031.031 INFO    ] 2026-06-05 10:36:16
[2026-06-05 10:36:16,301.301 INFO    ] 2026-06-05 10:36:16
[2026-06-05 10:36:16,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:36:16,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:36:16,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:36:16,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:36:16,793.793 INFO    ] time= 05/06/2026 10:36:16
[2026-06-05 10:36:16,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:36:16,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:36:16,988.988 INFO    ] No existing commands found in stream
[2026-06-05 10:36:22,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:36:22,018.018 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 10:36:24,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:36:24,495.495 INFO    ] Checking for system updates...
[2026-06-05 10:36:24,531.531 INFO    ] 200
[2026-06-05 10:36:24,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:24,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:36:24,594.594 INFO    ] No update needed
[2026-06-05 10:36:24,597.597 INFO    ] Checking for camera pi updates...
[2026-06-05 10:36:24,637.637 INFO    ] 200
[2026-06-05 10:36:24,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:24,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:36:24,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:36:24,731.731 INFO    ] No camera update needed
[2026-06-05 10:36:24,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:36:24,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:36:24,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:36:24,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:36:26,788.788 INFO    ] ================================================
[2026-06-05 10:36:26,802.802 INFO    ] Launching Daemon at Fri Jun  5 10:36:26 IST 2026
[2026-06-05 10:36:26,813.813 INFO    ] ================================================
[2026-06-05 10:36:27,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:36:27
[2026-06-05 10:36:27,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:36:28,228.228 INFO    ] Initializing speech engine...
[2026-06-05 10:36:28,255.255 INFO    ] 2026-06-05 10:36:28
[2026-06-05 10:36:28,507.507 INFO    ] 2026-06-05 10:36:28
[2026-06-05 10:36:28,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:36:30,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:36:30,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:36:30,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:36:30,205.205 INFO    ] time= 05/06/2026 10:36:30
[2026-06-05 10:36:30,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:36:30,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:36:30,317.317 INFO    ] No existing commands found in stream
[2026-06-05 10:36:35,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:36:35,331.331 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 10:36:38,071.071 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:36:38,074.074 INFO    ] Checking for system updates...
[2026-06-05 10:36:38,114.114 INFO    ] 200
[2026-06-05 10:36:38,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:38,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:36:38,179.179 INFO    ] No update needed
[2026-06-05 10:36:38,181.181 INFO    ] Checking for camera pi updates...
[2026-06-05 10:36:38,216.216 INFO    ] 200
[2026-06-05 10:36:38,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:38,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:36:38,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:36:38,324.324 INFO    ] No camera update needed
[2026-06-05 10:36:38,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:36:38,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:36:38,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:36:38,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:36:40,384.384 INFO    ] ================================================
[2026-06-05 10:36:40,399.399 INFO    ] Launching Daemon at Fri Jun  5 10:36:40 IST 2026
[2026-06-05 10:36:40,409.409 INFO    ] ================================================
[2026-06-05 10:36:41,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:36:41
[2026-06-05 10:36:41,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:36:42,055.055 INFO    ] Initializing speech engine...
[2026-06-05 10:36:42,063.063 INFO    ] 2026-06-05 10:36:42
[2026-06-05 10:36:42,349.349 INFO    ] 2026-06-05 10:36:42
[2026-06-05 10:36:42,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:36:42,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:36:42,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:36:42,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:36:42,814.814 INFO    ] time= 05/06/2026 10:36:42
[2026-06-05 10:36:42,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:36:42,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:36:43,050.050 INFO    ] No existing commands found in stream
[2026-06-05 10:36:48,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:36:48,073.073 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 10:36:48,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:36:48,611.611 INFO    ] Checking for system updates...
[2026-06-05 10:36:48,652.652 INFO    ] 200
[2026-06-05 10:36:48,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:48,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:36:48,720.720 INFO    ] No update needed
[2026-06-05 10:36:48,728.728 INFO    ] Checking for camera pi updates...
[2026-06-05 10:36:48,763.763 INFO    ] 200
[2026-06-05 10:36:48,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:36:48,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:36:48,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:36:48,960.960 INFO    ] No camera update needed
[2026-06-05 10:36:48,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:36:48,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:36:48,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:36:48,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:36:51,020.020 INFO    ] ================================================
[2026-06-05 10:36:51,035.035 INFO    ] Launching Daemon at Fri Jun  5 10:36:51 IST 2026
[2026-06-05 10:36:51,046.046 INFO    ] ================================================
[2026-06-05 10:36:51,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:36:51
[2026-06-05 10:36:52,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:36:52,517.517 INFO    ] Initializing speech engine...
[2026-06-05 10:36:52,530.530 INFO    ] 2026-06-05 10:36:52
[2026-06-05 10:36:52,796.796 INFO    ] 2026-06-05 10:36:52
[2026-06-05 10:36:52,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:36:53,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:36:53,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:36:53,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:36:53,337.337 INFO    ] time= 05/06/2026 10:36:53
[2026-06-05 10:36:53,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:36:53,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:36:53,476.476 INFO    ] No existing commands found in stream
[2026-06-05 10:36:58,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:36:58,506.506 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 10:37:00,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:37:00,686.686 INFO    ] Checking for system updates...
[2026-06-05 10:37:00,724.724 INFO    ] 200
[2026-06-05 10:37:00,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:00,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:37:00,783.783 INFO    ] No update needed
[2026-06-05 10:37:00,786.786 INFO    ] Checking for camera pi updates...
[2026-06-05 10:37:00,823.823 INFO    ] 200
[2026-06-05 10:37:00,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:00,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:37:00,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:37:00,934.934 INFO    ] No camera update needed
[2026-06-05 10:37:00,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:37:00,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:37:00,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:37:00,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:37:03,000.000 INFO    ] ================================================
[2026-06-05 10:37:03,022.022 INFO    ] Launching Daemon at Fri Jun  5 10:37:03 IST 2026
[2026-06-05 10:37:03,038.038 INFO    ] ================================================
[2026-06-05 10:37:03,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:37:03
[2026-06-05 10:37:04,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:37:04,640.640 INFO    ] Initializing speech engine...
[2026-06-05 10:37:04,646.646 INFO    ] 2026-06-05 10:37:04
[2026-06-05 10:37:04,929.929 INFO    ] 2026-06-05 10:37:04
[2026-06-05 10:37:04,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:37:05,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:37:05,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:37:05,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:37:05,464.464 INFO    ] time= 05/06/2026 10:37:05
[2026-06-05 10:37:05,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:37:05,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:37:05,621.621 INFO    ] No existing commands found in stream
[2026-06-05 10:37:10,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:37:10,649.649 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 10:37:13,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:37:13,850.850 INFO    ] Checking for system updates...
[2026-06-05 10:37:13,890.890 INFO    ] 200
[2026-06-05 10:37:13,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:13,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:37:13,947.947 INFO    ] No update needed
[2026-06-05 10:37:13,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 10:37:13,986.986 INFO    ] 200
[2026-06-05 10:37:13,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:14,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:37:14,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:37:14,066.066 INFO    ] No camera update needed
[2026-06-05 10:37:14,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:37:14,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:37:14,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:37:14,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:37:16,121.121 INFO    ] ================================================
[2026-06-05 10:37:16,136.136 INFO    ] Launching Daemon at Fri Jun  5 10:37:16 IST 2026
[2026-06-05 10:37:16,147.147 INFO    ] ================================================
[2026-06-05 10:37:16,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:37:16
[2026-06-05 10:37:17,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:37:17,616.616 INFO    ] Initializing speech engine...
[2026-06-05 10:37:17,636.636 INFO    ] 2026-06-05 10:37:17
[2026-06-05 10:37:17,925.925 INFO    ] 2026-06-05 10:37:17
[2026-06-05 10:37:17,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:37:18,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:37:18,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:37:18,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:37:18,425.425 INFO    ] time= 05/06/2026 10:37:18
[2026-06-05 10:37:18,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:37:18,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:37:18,625.625 INFO    ] No existing commands found in stream
[2026-06-05 10:37:23,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:37:23,659.659 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 10:37:24,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:37:24,423.423 INFO    ] Checking for system updates...
[2026-06-05 10:37:24,459.459 INFO    ] 200
[2026-06-05 10:37:24,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:24,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:37:24,518.518 INFO    ] No update needed
[2026-06-05 10:37:24,520.520 INFO    ] Checking for camera pi updates...
[2026-06-05 10:37:24,558.558 INFO    ] 200
[2026-06-05 10:37:24,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:24,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:37:24,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:37:24,658.658 INFO    ] No camera update needed
[2026-06-05 10:37:24,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:37:24,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:37:24,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:37:24,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:37:26,713.713 INFO    ] ================================================
[2026-06-05 10:37:26,729.729 INFO    ] Launching Daemon at Fri Jun  5 10:37:26 IST 2026
[2026-06-05 10:37:26,740.740 INFO    ] ================================================
[2026-06-05 10:37:27,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:37:27
[2026-06-05 10:37:27,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:37:28,170.170 INFO    ] Initializing speech engine...
[2026-06-05 10:37:28,176.176 INFO    ] 2026-06-05 10:37:28
[2026-06-05 10:37:28,422.422 INFO    ] 2026-06-05 10:37:28
[2026-06-05 10:37:28,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:37:30,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:37:30,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:37:30,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:37:30,222.222 INFO    ] time= 05/06/2026 10:37:30
[2026-06-05 10:37:30,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:37:30,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:37:30,297.297 INFO    ] No existing commands found in stream
[2026-06-05 10:37:35,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:37:35,336.336 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 10:37:38,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:37:38,200.200 INFO    ] Checking for system updates...
[2026-06-05 10:37:38,241.241 INFO    ] 200
[2026-06-05 10:37:38,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:38,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:37:38,306.306 INFO    ] No update needed
[2026-06-05 10:37:38,308.308 INFO    ] Checking for camera pi updates...
[2026-06-05 10:37:38,346.346 INFO    ] 200
[2026-06-05 10:37:38,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:38,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:37:38,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:37:38,446.446 INFO    ] No camera update needed
[2026-06-05 10:37:38,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:37:38,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:37:38,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:37:38,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:37:40,502.502 INFO    ] ================================================
[2026-06-05 10:37:40,518.518 INFO    ] Launching Daemon at Fri Jun  5 10:37:40 IST 2026
[2026-06-05 10:37:40,528.528 INFO    ] ================================================
[2026-06-05 10:37:41,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:37:41
[2026-06-05 10:37:41,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:37:41,959.959 INFO    ] Initializing speech engine...
[2026-06-05 10:37:41,973.973 INFO    ] 2026-06-05 10:37:41
[2026-06-05 10:37:42,242.242 INFO    ] 2026-06-05 10:37:42
[2026-06-05 10:37:42,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:37:42,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:37:42,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:37:42,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:37:42,615.615 INFO    ] time= 05/06/2026 10:37:42
[2026-06-05 10:37:42,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:37:42,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:37:42,803.803 INFO    ] No existing commands found in stream
[2026-06-05 10:37:47,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:37:47,822.822 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 10:37:48,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:37:48,619.619 INFO    ] Checking for system updates...
[2026-06-05 10:37:48,656.656 INFO    ] 200
[2026-06-05 10:37:48,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:48,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:37:48,715.715 INFO    ] No update needed
[2026-06-05 10:37:48,718.718 INFO    ] Checking for camera pi updates...
[2026-06-05 10:37:48,751.751 INFO    ] 200
[2026-06-05 10:37:48,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:37:48,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:37:48,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:37:48,862.862 INFO    ] No camera update needed
[2026-06-05 10:37:48,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:37:48,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:37:48,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:37:48,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:37:50,920.920 INFO    ] ================================================
[2026-06-05 10:37:50,935.935 INFO    ] Launching Daemon at Fri Jun  5 10:37:50 IST 2026
[2026-06-05 10:37:50,945.945 INFO    ] ================================================
[2026-06-05 10:37:51,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:37:51
[2026-06-05 10:37:52,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:37:52,404.404 INFO    ] Initializing speech engine...
[2026-06-05 10:37:52,410.410 INFO    ] 2026-06-05 10:37:52
[2026-06-05 10:37:52,672.672 INFO    ] 2026-06-05 10:37:52
[2026-06-05 10:37:52,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:37:52,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:37:52,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:37:53,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:37:53,188.188 INFO    ] time= 05/06/2026 10:37:53
[2026-06-05 10:37:53,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:37:53,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:37:53,401.401 INFO    ] No existing commands found in stream
[2026-06-05 10:37:58,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:37:58,452.452 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 10:38:01,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:38:01,336.336 INFO    ] Checking for system updates...
[2026-06-05 10:38:01,376.376 INFO    ] 200
[2026-06-05 10:38:01,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:01,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:38:01,435.435 INFO    ] No update needed
[2026-06-05 10:38:01,437.437 INFO    ] Checking for camera pi updates...
[2026-06-05 10:38:01,475.475 INFO    ] 200
[2026-06-05 10:38:01,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:01,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:38:01,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:38:01,569.569 INFO    ] No camera update needed
[2026-06-05 10:38:01,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:38:01,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:38:01,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:38:01,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:38:03,626.626 INFO    ] ================================================
[2026-06-05 10:38:03,642.642 INFO    ] Launching Daemon at Fri Jun  5 10:38:03 IST 2026
[2026-06-05 10:38:03,652.652 INFO    ] ================================================
[2026-06-05 10:38:04,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:38:04
[2026-06-05 10:38:04,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:38:05,093.093 INFO    ] Initializing speech engine...
[2026-06-05 10:38:05,106.106 INFO    ] 2026-06-05 10:38:05
[2026-06-05 10:38:05,397.397 INFO    ] 2026-06-05 10:38:05
[2026-06-05 10:38:05,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:38:05,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:38:05,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:38:05,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:38:05,755.755 INFO    ] time= 05/06/2026 10:38:05
[2026-06-05 10:38:05,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:38:05,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:38:05,889.889 INFO    ] No existing commands found in stream
[2026-06-05 10:38:10,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:38:10,917.917 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 10:38:12,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:38:12,831.831 INFO    ] Checking for system updates...
[2026-06-05 10:38:12,870.870 INFO    ] 200
[2026-06-05 10:38:12,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:12,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:38:12,939.939 INFO    ] No update needed
[2026-06-05 10:38:12,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 10:38:12,975.975 INFO    ] 200
[2026-06-05 10:38:12,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:13,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:38:13,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:38:13,067.067 INFO    ] No camera update needed
[2026-06-05 10:38:13,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:38:13,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:38:13,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:38:13,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:38:15,122.122 INFO    ] ================================================
[2026-06-05 10:38:15,138.138 INFO    ] Launching Daemon at Fri Jun  5 10:38:15 IST 2026
[2026-06-05 10:38:15,149.149 INFO    ] ================================================
[2026-06-05 10:38:15,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:38:15
[2026-06-05 10:38:16,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:38:16,773.773 INFO    ] Initializing speech engine...
[2026-06-05 10:38:16,797.797 INFO    ] 2026-06-05 10:38:16
[2026-06-05 10:38:17,071.071 INFO    ] 2026-06-05 10:38:17
[2026-06-05 10:38:17,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:38:17,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:38:17,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:38:17,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:38:17,494.494 INFO    ] time= 05/06/2026 10:38:17
[2026-06-05 10:38:17,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:38:17,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:38:17,581.581 INFO    ] No existing commands found in stream
[2026-06-05 10:38:22,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:38:22,609.609 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 10:38:23,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:38:23,357.357 INFO    ] Checking for system updates...
[2026-06-05 10:38:23,395.395 INFO    ] 200
[2026-06-05 10:38:23,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:23,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:38:23,454.454 INFO    ] No update needed
[2026-06-05 10:38:23,457.457 INFO    ] Checking for camera pi updates...
[2026-06-05 10:38:23,492.492 INFO    ] 200
[2026-06-05 10:38:23,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:23,541.541 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:38:23,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:38:23,593.593 INFO    ] No camera update needed
[2026-06-05 10:38:23,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:38:23,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:38:23,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:38:23,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:38:25,648.648 INFO    ] ================================================
[2026-06-05 10:38:25,664.664 INFO    ] Launching Daemon at Fri Jun  5 10:38:25 IST 2026
[2026-06-05 10:38:25,675.675 INFO    ] ================================================
[2026-06-05 10:38:26,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:38:26
[2026-06-05 10:38:27,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:38:27,303.303 INFO    ] Initializing speech engine...
[2026-06-05 10:38:27,316.316 INFO    ] 2026-06-05 10:38:27
[2026-06-05 10:38:27,615.615 INFO    ] 2026-06-05 10:38:27
[2026-06-05 10:38:27,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:38:27,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:38:27,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:38:28,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:38:28,143.143 INFO    ] time= 05/06/2026 10:38:28
[2026-06-05 10:38:28,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:38:28,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:38:28,313.313 INFO    ] No existing commands found in stream
[2026-06-05 10:38:33,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:38:33,343.343 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 10:38:35,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:38:35,878.878 INFO    ] Checking for system updates...
[2026-06-05 10:38:35,919.919 INFO    ] 200
[2026-06-05 10:38:35,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:35,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:38:35,983.983 INFO    ] No update needed
[2026-06-05 10:38:35,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 10:38:36,022.022 INFO    ] 200
[2026-06-05 10:38:36,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:36,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:38:36,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:38:36,117.117 INFO    ] No camera update needed
[2026-06-05 10:38:36,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:38:36,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:38:36,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:38:36,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:38:38,173.173 INFO    ] ================================================
[2026-06-05 10:38:38,188.188 INFO    ] Launching Daemon at Fri Jun  5 10:38:38 IST 2026
[2026-06-05 10:38:38,199.199 INFO    ] ================================================
[2026-06-05 10:38:38,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:38:38
[2026-06-05 10:38:39,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:38:39,671.671 INFO    ] Initializing speech engine...
[2026-06-05 10:38:39,679.679 INFO    ] 2026-06-05 10:38:39
[2026-06-05 10:38:39,944.944 INFO    ] 2026-06-05 10:38:39
[2026-06-05 10:38:39,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:38:40,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:38:40,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:38:40,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:38:40,366.366 INFO    ] time= 05/06/2026 10:38:40
[2026-06-05 10:38:40,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:38:40,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:38:40,450.450 INFO    ] No existing commands found in stream
[2026-06-05 10:38:45,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:38:45,466.466 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 10:38:49,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:38:49,331.331 INFO    ] Checking for system updates...
[2026-06-05 10:38:49,367.367 INFO    ] 200
[2026-06-05 10:38:49,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:49,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:38:49,431.431 INFO    ] No update needed
[2026-06-05 10:38:49,433.433 INFO    ] Checking for camera pi updates...
[2026-06-05 10:38:49,470.470 INFO    ] 200
[2026-06-05 10:38:49,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:38:49,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:38:49,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:38:49,664.664 INFO    ] No camera update needed
[2026-06-05 10:38:49,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:38:49,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:38:49,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:38:49,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:38:51,720.720 INFO    ] ================================================
[2026-06-05 10:38:51,735.735 INFO    ] Launching Daemon at Fri Jun  5 10:38:51 IST 2026
[2026-06-05 10:38:51,746.746 INFO    ] ================================================
[2026-06-05 10:38:52,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:38:52
[2026-06-05 10:38:52,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:38:53,168.168 INFO    ] Initializing speech engine...
[2026-06-05 10:38:53,174.174 INFO    ] 2026-06-05 10:38:53
[2026-06-05 10:38:53,424.424 INFO    ] 2026-06-05 10:38:53
[2026-06-05 10:38:53,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:38:53,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:38:53,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:38:53,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:38:53,891.891 INFO    ] time= 05/06/2026 10:38:53
[2026-06-05 10:38:53,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:38:53,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:38:54,115.115 INFO    ] No existing commands found in stream
[2026-06-05 10:38:59,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:38:59,137.137 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 10:39:02,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:39:02,828.828 INFO    ] Checking for system updates...
[2026-06-05 10:39:02,872.872 INFO    ] 200
[2026-06-05 10:39:02,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:02,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:39:02,949.949 INFO    ] No update needed
[2026-06-05 10:39:02,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 10:39:02,998.998 INFO    ] 200
[2026-06-05 10:39:03,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:03,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:39:03,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:39:03,107.107 INFO    ] No camera update needed
[2026-06-05 10:39:03,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:39:03,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:39:03,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:39:03,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:39:05,164.164 INFO    ] ================================================
[2026-06-05 10:39:05,179.179 INFO    ] Launching Daemon at Fri Jun  5 10:39:05 IST 2026
[2026-06-05 10:39:05,189.189 INFO    ] ================================================
[2026-06-05 10:39:05,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:39:05
[2026-06-05 10:39:06,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:39:06,751.751 INFO    ] Initializing speech engine...
[2026-06-05 10:39:06,763.763 INFO    ] 2026-06-05 10:39:06
[2026-06-05 10:39:07,035.035 INFO    ] 2026-06-05 10:39:07
[2026-06-05 10:39:07,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:39:07,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:39:07,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:39:07,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:39:07,535.535 INFO    ] time= 05/06/2026 10:39:07
[2026-06-05 10:39:07,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:39:07,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:39:07,752.752 INFO    ] No existing commands found in stream
[2026-06-05 10:39:12,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:39:12,778.778 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 10:39:15,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:39:15,459.459 INFO    ] Checking for system updates...
[2026-06-05 10:39:15,500.500 INFO    ] 200
[2026-06-05 10:39:15,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:15,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:39:15,564.564 INFO    ] No update needed
[2026-06-05 10:39:15,566.566 INFO    ] Checking for camera pi updates...
[2026-06-05 10:39:15,603.603 INFO    ] 200
[2026-06-05 10:39:15,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:15,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:39:15,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:39:15,707.707 INFO    ] No camera update needed
[2026-06-05 10:39:15,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:39:15,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:39:15,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:39:15,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:39:17,762.762 INFO    ] ================================================
[2026-06-05 10:39:17,777.777 INFO    ] Launching Daemon at Fri Jun  5 10:39:17 IST 2026
[2026-06-05 10:39:17,787.787 INFO    ] ================================================
[2026-06-05 10:39:18,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:39:18
[2026-06-05 10:39:18,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:39:19,228.228 INFO    ] Initializing speech engine...
[2026-06-05 10:39:19,237.237 INFO    ] 2026-06-05 10:39:19
[2026-06-05 10:39:19,484.484 INFO    ] 2026-06-05 10:39:19
[2026-06-05 10:39:19,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:39:19,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:39:19,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:39:19,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:39:19,940.940 INFO    ] time= 05/06/2026 10:39:19
[2026-06-05 10:39:19,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:39:20,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:39:20,194.194 INFO    ] No existing commands found in stream
[2026-06-05 10:39:25,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:39:25,211.211 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 10:39:26,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:39:26,834.834 INFO    ] Checking for system updates...
[2026-06-05 10:39:26,874.874 INFO    ] 200
[2026-06-05 10:39:26,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:26,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:39:26,939.939 INFO    ] No update needed
[2026-06-05 10:39:26,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 10:39:26,979.979 INFO    ] 200
[2026-06-05 10:39:26,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:27,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:39:27,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:39:27,079.079 INFO    ] No camera update needed
[2026-06-05 10:39:27,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:39:27,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:39:27,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:39:27,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:39:29,141.141 INFO    ] ================================================
[2026-06-05 10:39:29,156.156 INFO    ] Launching Daemon at Fri Jun  5 10:39:29 IST 2026
[2026-06-05 10:39:29,167.167 INFO    ] ================================================
[2026-06-05 10:39:29,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:39:29
[2026-06-05 10:39:30,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:39:30,603.603 INFO    ] Initializing speech engine...
[2026-06-05 10:39:30,612.612 INFO    ] 2026-06-05 10:39:30
[2026-06-05 10:39:30,885.885 INFO    ] 2026-06-05 10:39:30
[2026-06-05 10:39:30,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:39:31,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:39:31,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:39:31,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:39:31,483.483 INFO    ] time= 05/06/2026 10:39:31
[2026-06-05 10:39:31,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:39:31,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:39:31,735.735 INFO    ] No existing commands found in stream
[2026-06-05 10:39:36,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:39:36,773.773 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 10:39:38,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:39:38,437.437 INFO    ] Checking for system updates...
[2026-06-05 10:39:38,475.475 INFO    ] 200
[2026-06-05 10:39:38,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:38,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:39:38,534.534 INFO    ] No update needed
[2026-06-05 10:39:38,537.537 INFO    ] Checking for camera pi updates...
[2026-06-05 10:39:38,572.572 INFO    ] 200
[2026-06-05 10:39:38,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:38,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:39:38,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:39:38,683.683 INFO    ] No camera update needed
[2026-06-05 10:39:38,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:39:38,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:39:38,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:39:38,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:39:40,743.743 INFO    ] ================================================
[2026-06-05 10:39:40,758.758 INFO    ] Launching Daemon at Fri Jun  5 10:39:40 IST 2026
[2026-06-05 10:39:40,769.769 INFO    ] ================================================
[2026-06-05 10:39:41,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:39:41
[2026-06-05 10:39:41,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:39:42,230.230 INFO    ] Initializing speech engine...
[2026-06-05 10:39:42,239.239 INFO    ] 2026-06-05 10:39:42
[2026-06-05 10:39:42,494.494 INFO    ] 2026-06-05 10:39:42
[2026-06-05 10:39:42,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:39:42,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:39:42,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:39:42,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:39:42,989.989 INFO    ] time= 05/06/2026 10:39:42
[2026-06-05 10:39:43,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:39:43,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:39:43,196.196 INFO    ] No existing commands found in stream
[2026-06-05 10:39:48,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:39:48,210.210 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 10:39:49,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:39:49,165.165 INFO    ] Checking for system updates...
[2026-06-05 10:39:49,206.206 INFO    ] 200
[2026-06-05 10:39:49,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:49,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:39:49,270.270 INFO    ] No update needed
[2026-06-05 10:39:49,272.272 INFO    ] Checking for camera pi updates...
[2026-06-05 10:39:49,305.305 INFO    ] 200
[2026-06-05 10:39:49,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:39:49,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:39:49,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:39:49,395.395 INFO    ] No camera update needed
[2026-06-05 10:39:49,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:39:49,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:39:49,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:39:49,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:39:51,450.450 INFO    ] ================================================
[2026-06-05 10:39:51,466.466 INFO    ] Launching Daemon at Fri Jun  5 10:39:51 IST 2026
[2026-06-05 10:39:51,476.476 INFO    ] ================================================
[2026-06-05 10:39:52,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:39:52
[2026-06-05 10:39:52,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:39:52,898.898 INFO    ] Initializing speech engine...
[2026-06-05 10:39:52,907.907 INFO    ] 2026-06-05 10:39:52
[2026-06-05 10:39:53,158.158 INFO    ] 2026-06-05 10:39:53
[2026-06-05 10:39:53,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:39:53,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:39:53,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:39:53,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:39:53,541.541 INFO    ] time= 05/06/2026 10:39:53
[2026-06-05 10:39:53,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:39:53,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:39:53,693.693 INFO    ] No existing commands found in stream
[2026-06-05 10:39:58,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:39:58,720.720 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 10:40:02,273.273 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:40:02,277.277 INFO    ] Checking for system updates...
[2026-06-05 10:40:02,324.324 INFO    ] 200
[2026-06-05 10:40:02,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:02,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:40:02,411.411 INFO    ] No update needed
[2026-06-05 10:40:02,418.418 INFO    ] Checking for camera pi updates...
[2026-06-05 10:40:02,466.466 INFO    ] 200
[2026-06-05 10:40:02,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:02,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:40:02,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:40:02,613.613 INFO    ] No camera update needed
[2026-06-05 10:40:02,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:40:02,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:40:02,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:40:02,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:40:04,679.679 INFO    ] ================================================
[2026-06-05 10:40:04,695.695 INFO    ] Launching Daemon at Fri Jun  5 10:40:04 IST 2026
[2026-06-05 10:40:04,706.706 INFO    ] ================================================
[2026-06-05 10:40:05,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:40:05
[2026-06-05 10:40:05,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:40:06,185.185 INFO    ] Initializing speech engine...
[2026-06-05 10:40:06,192.192 INFO    ] 2026-06-05 10:40:06
[2026-06-05 10:40:06,434.434 INFO    ] 2026-06-05 10:40:06
[2026-06-05 10:40:06,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:40:06,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:40:06,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:40:06,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:40:06,916.916 INFO    ] time= 05/06/2026 10:40:06
[2026-06-05 10:40:06,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:40:07,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:40:07,116.116 INFO    ] No existing commands found in stream
[2026-06-05 10:40:12,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:40:12,140.140 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 10:40:14,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:40:14,495.495 INFO    ] Checking for system updates...
[2026-06-05 10:40:14,534.534 INFO    ] 200
[2026-06-05 10:40:14,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:14,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:40:14,598.598 INFO    ] No update needed
[2026-06-05 10:40:14,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 10:40:14,635.635 INFO    ] 200
[2026-06-05 10:40:14,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:14,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:40:14,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:40:14,734.734 INFO    ] No camera update needed
[2026-06-05 10:40:14,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:40:14,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:40:14,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:40:14,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:40:16,792.792 INFO    ] ================================================
[2026-06-05 10:40:16,811.811 INFO    ] Launching Daemon at Fri Jun  5 10:40:16 IST 2026
[2026-06-05 10:40:16,822.822 INFO    ] ================================================
[2026-06-05 10:40:17,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:40:17
[2026-06-05 10:40:18,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:40:18,430.430 INFO    ] Initializing speech engine...
[2026-06-05 10:40:18,442.442 INFO    ] 2026-06-05 10:40:18
[2026-06-05 10:40:18,719.719 INFO    ] 2026-06-05 10:40:18
[2026-06-05 10:40:18,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:40:18,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:40:19,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:40:19,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:40:19,213.213 INFO    ] time= 05/06/2026 10:40:19
[2026-06-05 10:40:19,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:40:19,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:40:19,409.409 INFO    ] No existing commands found in stream
[2026-06-05 10:40:24,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:40:24,443.443 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 10:40:30,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:40:30,623.623 INFO    ] Checking for system updates...
[2026-06-05 10:40:30,664.664 INFO    ] 200
[2026-06-05 10:40:30,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:30,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:40:30,724.724 INFO    ] No update needed
[2026-06-05 10:40:30,726.726 INFO    ] Checking for camera pi updates...
[2026-06-05 10:40:30,761.761 INFO    ] 200
[2026-06-05 10:40:30,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:30,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:40:30,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:40:30,856.856 INFO    ] No camera update needed
[2026-06-05 10:40:30,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:40:30,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:40:30,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:40:30,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:40:32,912.912 INFO    ] ================================================
[2026-06-05 10:40:32,928.928 INFO    ] Launching Daemon at Fri Jun  5 10:40:32 IST 2026
[2026-06-05 10:40:32,939.939 INFO    ] ================================================
[2026-06-05 10:40:33,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:40:33
[2026-06-05 10:40:34,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:40:34,565.565 INFO    ] Initializing speech engine...
[2026-06-05 10:40:34,577.577 INFO    ] 2026-06-05 10:40:34
[2026-06-05 10:40:34,857.857 INFO    ] 2026-06-05 10:40:34
[2026-06-05 10:40:34,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:40:35,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:40:35,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:40:35,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:40:35,414.414 INFO    ] time= 05/06/2026 10:40:35
[2026-06-05 10:40:35,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:40:35,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:40:35,567.567 INFO    ] No existing commands found in stream
[2026-06-05 10:40:40,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:40:40,586.586 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 10:40:44,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:40:44,561.561 INFO    ] Checking for system updates...
[2026-06-05 10:40:44,598.598 INFO    ] 200
[2026-06-05 10:40:44,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:44,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:40:44,661.661 INFO    ] No update needed
[2026-06-05 10:40:44,663.663 INFO    ] Checking for camera pi updates...
[2026-06-05 10:40:44,698.698 INFO    ] 200
[2026-06-05 10:40:44,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:44,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:40:44,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:40:44,801.801 INFO    ] No camera update needed
[2026-06-05 10:40:44,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:40:44,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:40:44,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:40:44,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:40:46,857.857 INFO    ] ================================================
[2026-06-05 10:40:46,873.873 INFO    ] Launching Daemon at Fri Jun  5 10:40:46 IST 2026
[2026-06-05 10:40:46,885.885 INFO    ] ================================================
[2026-06-05 10:40:47,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:40:47
[2026-06-05 10:40:48,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:40:48,443.443 INFO    ] Initializing speech engine...
[2026-06-05 10:40:48,459.459 INFO    ] 2026-06-05 10:40:48
[2026-06-05 10:40:48,728.728 INFO    ] 2026-06-05 10:40:48
[2026-06-05 10:40:48,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:40:48,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:40:49,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:40:49,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:40:49,216.216 INFO    ] time= 05/06/2026 10:40:49
[2026-06-05 10:40:49,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:40:49,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:40:49,448.448 INFO    ] No existing commands found in stream
[2026-06-05 10:40:54,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:40:54,463.463 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 10:40:57,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:40:57,480.480 INFO    ] Checking for system updates...
[2026-06-05 10:40:57,523.523 INFO    ] 200
[2026-06-05 10:40:57,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:57,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:40:57,587.587 INFO    ] No update needed
[2026-06-05 10:40:57,589.589 INFO    ] Checking for camera pi updates...
[2026-06-05 10:40:57,629.629 INFO    ] 200
[2026-06-05 10:40:57,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:40:57,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:40:57,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:40:57,834.834 INFO    ] No camera update needed
[2026-06-05 10:40:57,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:40:57,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:40:57,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:40:57,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:40:59,891.891 INFO    ] ================================================
[2026-06-05 10:40:59,907.907 INFO    ] Launching Daemon at Fri Jun  5 10:40:59 IST 2026
[2026-06-05 10:40:59,918.918 INFO    ] ================================================
[2026-06-05 10:41:00,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:41:00
[2026-06-05 10:41:01,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:41:01,344.344 INFO    ] Initializing speech engine...
[2026-06-05 10:41:01,358.358 INFO    ] 2026-06-05 10:41:01
[2026-06-05 10:41:01,628.628 INFO    ] 2026-06-05 10:41:01
[2026-06-05 10:41:01,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:41:01,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:41:01,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:41:02,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:41:02,094.094 INFO    ] time= 05/06/2026 10:41:02
[2026-06-05 10:41:02,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:41:02,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:41:02,167.167 INFO    ] No existing commands found in stream
[2026-06-05 10:41:07,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:41:07,180.180 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 10:41:08,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:41:08,484.484 INFO    ] Checking for system updates...
[2026-06-05 10:41:08,524.524 INFO    ] 200
[2026-06-05 10:41:08,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:08,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:08,609.609 INFO    ] No update needed
[2026-06-05 10:41:08,613.613 INFO    ] Checking for camera pi updates...
[2026-06-05 10:41:08,649.649 INFO    ] 200
[2026-06-05 10:41:08,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:08,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:41:08,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:08,746.746 INFO    ] No camera update needed
[2026-06-05 10:41:08,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:41:08,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:41:08,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:41:08,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:41:10,801.801 INFO    ] ================================================
[2026-06-05 10:41:10,817.817 INFO    ] Launching Daemon at Fri Jun  5 10:41:10 IST 2026
[2026-06-05 10:41:10,828.828 INFO    ] ================================================
[2026-06-05 10:41:11,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:41:11
[2026-06-05 10:41:12,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:41:12,409.409 INFO    ] Initializing speech engine...
[2026-06-05 10:41:12,419.419 INFO    ] 2026-06-05 10:41:12
[2026-06-05 10:41:12,682.682 INFO    ] 2026-06-05 10:41:12
[2026-06-05 10:41:12,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:41:13,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:41:13,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:41:13,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:41:13,628.628 INFO    ] time= 05/06/2026 10:41:13
[2026-06-05 10:41:13,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:41:13,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:41:13,829.829 INFO    ] No existing commands found in stream
[2026-06-05 10:41:18,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:41:18,846.846 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 10:41:19,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:41:20,002.002 INFO    ] Checking for system updates...
[2026-06-05 10:41:20,042.042 INFO    ] 200
[2026-06-05 10:41:20,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:20,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:20,102.102 INFO    ] No update needed
[2026-06-05 10:41:20,104.104 INFO    ] Checking for camera pi updates...
[2026-06-05 10:41:20,140.140 INFO    ] 200
[2026-06-05 10:41:20,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:20,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:41:20,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:20,241.241 INFO    ] No camera update needed
[2026-06-05 10:41:20,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:41:20,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:41:20,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:41:20,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:41:22,298.298 INFO    ] ================================================
[2026-06-05 10:41:22,314.314 INFO    ] Launching Daemon at Fri Jun  5 10:41:22 IST 2026
[2026-06-05 10:41:22,324.324 INFO    ] ================================================
[2026-06-05 10:41:22,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:41:22
[2026-06-05 10:41:23,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:41:23,933.933 INFO    ] Initializing speech engine...
[2026-06-05 10:41:23,946.946 INFO    ] 2026-06-05 10:41:23
[2026-06-05 10:41:24,222.222 INFO    ] 2026-06-05 10:41:24
[2026-06-05 10:41:24,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:41:24,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:41:24,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:41:24,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:41:24,726.726 INFO    ] time= 05/06/2026 10:41:24
[2026-06-05 10:41:24,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:41:24,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:41:24,932.932 INFO    ] No existing commands found in stream
[2026-06-05 10:41:29,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:41:29,960.960 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 10:41:32,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:41:32,512.512 INFO    ] Checking for system updates...
[2026-06-05 10:41:32,550.550 INFO    ] 200
[2026-06-05 10:41:32,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:32,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:32,621.621 INFO    ] No update needed
[2026-06-05 10:41:32,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 10:41:32,660.660 INFO    ] 200
[2026-06-05 10:41:32,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:32,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:41:32,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:32,747.747 INFO    ] No camera update needed
[2026-06-05 10:41:32,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:41:32,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:41:32,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:41:32,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:41:34,807.807 INFO    ] ================================================
[2026-06-05 10:41:34,822.822 INFO    ] Launching Daemon at Fri Jun  5 10:41:34 IST 2026
[2026-06-05 10:41:34,833.833 INFO    ] ================================================
[2026-06-05 10:41:35,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:41:35
[2026-06-05 10:41:36,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:41:36,312.312 INFO    ] Initializing speech engine...
[2026-06-05 10:41:36,319.319 INFO    ] 2026-06-05 10:41:36
[2026-06-05 10:41:36,603.603 INFO    ] 2026-06-05 10:41:36
[2026-06-05 10:41:36,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:41:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:41:36,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:41:37,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:41:37,022.022 INFO    ] time= 05/06/2026 10:41:37
[2026-06-05 10:41:37,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:41:37,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:41:37,292.292 INFO    ] No existing commands found in stream
[2026-06-05 10:41:42,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:41:42,307.307 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 10:41:46,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:41:46,395.395 INFO    ] Checking for system updates...
[2026-06-05 10:41:46,431.431 INFO    ] 200
[2026-06-05 10:41:46,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:46,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:46,489.489 INFO    ] No update needed
[2026-06-05 10:41:46,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 10:41:46,527.527 INFO    ] 200
[2026-06-05 10:41:46,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:46,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:41:46,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:46,639.639 INFO    ] No camera update needed
[2026-06-05 10:41:46,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:41:46,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:41:46,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:41:46,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:41:48,697.697 INFO    ] ================================================
[2026-06-05 10:41:48,712.712 INFO    ] Launching Daemon at Fri Jun  5 10:41:48 IST 2026
[2026-06-05 10:41:48,723.723 INFO    ] ================================================
[2026-06-05 10:41:49,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:41:49
[2026-06-05 10:41:49,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:41:50,153.153 INFO    ] Initializing speech engine...
[2026-06-05 10:41:50,159.159 INFO    ] 2026-06-05 10:41:50
[2026-06-05 10:41:50,421.421 INFO    ] 2026-06-05 10:41:50
[2026-06-05 10:41:50,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:41:50,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:41:50,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:41:50,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:41:50,918.918 INFO    ] time= 05/06/2026 10:41:50
[2026-06-05 10:41:50,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:41:50,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:41:51,145.145 INFO    ] No existing commands found in stream
[2026-06-05 10:41:56,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:41:56,180.180 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 10:41:58,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:41:58,440.440 INFO    ] Checking for system updates...
[2026-06-05 10:41:58,480.480 INFO    ] 200
[2026-06-05 10:41:58,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:58,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:58,541.541 INFO    ] No update needed
[2026-06-05 10:41:58,544.544 INFO    ] Checking for camera pi updates...
[2026-06-05 10:41:58,578.578 INFO    ] 200
[2026-06-05 10:41:58,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:41:58,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:41:58,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:41:58,672.672 INFO    ] No camera update needed
[2026-06-05 10:41:58,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:41:58,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:41:58,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:41:58,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:42:00,728.728 INFO    ] ================================================
[2026-06-05 10:42:00,744.744 INFO    ] Launching Daemon at Fri Jun  5 10:42:00 IST 2026
[2026-06-05 10:42:00,754.754 INFO    ] ================================================
[2026-06-05 10:42:01,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:42:01
[2026-06-05 10:42:02,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:42:02,430.430 INFO    ] Initializing speech engine...
[2026-06-05 10:42:02,438.438 INFO    ] 2026-06-05 10:42:02
[2026-06-05 10:42:02,769.769 INFO    ] 2026-06-05 10:42:02
[2026-06-05 10:42:02,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:42:02,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:42:03,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:42:03,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:42:03,217.217 INFO    ] time= 05/06/2026 10:42:03
[2026-06-05 10:42:03,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:42:03,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:42:03,330.330 INFO    ] No existing commands found in stream
[2026-06-05 10:42:08,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:42:08,369.369 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 10:42:09,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:42:09,444.444 INFO    ] Checking for system updates...
[2026-06-05 10:42:09,500.500 INFO    ] 200
[2026-06-05 10:42:09,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:42:09,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:42:09,569.569 INFO    ] No update needed
[2026-06-05 10:42:09,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 10:42:09,608.608 INFO    ] 200
[2026-06-05 10:42:09,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:42:09,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:42:09,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:42:09,714.714 INFO    ] No camera update needed
[2026-06-05 10:42:09,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:42:09,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:42:09,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:42:09,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:42:11,772.772 INFO    ] ================================================
[2026-06-05 10:42:11,789.789 INFO    ] Launching Daemon at Fri Jun  5 10:42:11 IST 2026
[2026-06-05 10:42:11,800.800 INFO    ] ================================================
[2026-06-05 10:42:12,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:42:12
[2026-06-05 10:42:12,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:42:13,246.246 INFO    ] Initializing speech engine...
[2026-06-05 10:42:13,255.255 INFO    ] 2026-06-05 10:42:13
[2026-06-05 10:42:13,507.507 INFO    ] 2026-06-05 10:42:13
[2026-06-05 10:42:13,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:42:13,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:42:13,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:42:13,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:42:14,007.007 INFO    ] time= 05/06/2026 10:42:13
[2026-06-05 10:42:14,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:42:14,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:42:14,201.201 INFO    ] No existing commands found in stream
[2026-06-05 10:42:19,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:42:19,221.221 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 10:42:20,972.972 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:42:20,974.974 INFO    ] Checking for system updates...
[2026-06-05 10:42:21,010.010 INFO    ] 200
[2026-06-05 10:42:21,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:42:21,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:42:21,079.079 INFO    ] No update needed
[2026-06-05 10:42:21,082.082 INFO    ] Checking for camera pi updates...
[2026-06-05 10:42:21,121.121 INFO    ] 200
[2026-06-05 10:42:21,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:42:21,174.174 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:42:21,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:42:21,239.239 INFO    ] No camera update needed
[2026-06-05 10:42:21,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:42:21,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:42:21,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:42:21,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:42:23,294.294 INFO    ] ================================================
[2026-06-05 10:42:23,309.309 INFO    ] Launching Daemon at Fri Jun  5 10:42:23 IST 2026
[2026-06-05 10:42:23,320.320 INFO    ] ================================================
[2026-06-05 10:42:23,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:42:23
[2026-06-05 10:42:24,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:42:24,750.750 INFO    ] Initializing speech engine...
[2026-06-05 10:42:24,757.757 INFO    ] 2026-06-05 10:42:24
[2026-06-05 10:42:25,045.045 INFO    ] 2026-06-05 10:42:25
[2026-06-05 10:42:25,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:42:25,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:42:25,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:42:25,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:42:25,450.450 INFO    ] time= 05/06/2026 10:42:25
[2026-06-05 10:42:25,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:42:25,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:42:25,545.545 INFO    ] No existing commands found in stream
[2026-06-05 10:42:30,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:42:30,583.583 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 10:42:34,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:42:34,949.949 INFO    ] Checking for system updates...
[2026-06-05 10:42:34,985.985 INFO    ] 200
[2026-06-05 10:42:34,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:42:35,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:42:35,042.042 INFO    ] No update needed
[2026-06-05 10:42:35,045.045 INFO    ] Checking for camera pi updates...
[2026-06-05 10:42:35,085.085 INFO    ] 200
[2026-06-05 10:42:35,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:42:35,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:42:35,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:42:35,190.190 INFO    ] No camera update needed
[2026-06-05 10:42:35,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:42:35,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:42:35,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:42:35,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:42:37,249.249 INFO    ] ================================================
[2026-06-05 10:42:37,264.264 INFO    ] Launching Daemon at Fri Jun  5 10:42:37 IST 2026
[2026-06-05 10:42:37,274.274 INFO    ] ================================================
[2026-06-05 10:42:37,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:42:37
[2026-06-05 10:42:38,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:42:38,739.739 INFO    ] Initializing speech engine...
[2026-06-05 10:42:38,749.749 INFO    ] 2026-06-05 10:42:38
[2026-06-05 10:42:38,993.993 INFO    ] 2026-06-05 10:42:38
[2026-06-05 10:42:39,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:42:39,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:42:39,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:42:39,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:42:39,474.474 INFO    ] time= 05/06/2026 10:42:39
[2026-06-05 10:42:39,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:42:39,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:42:39,706.706 INFO    ] No existing commands found in stream
[2026-06-05 10:42:44,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:42:44,731.731 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 10:42:47,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:42:47,885.885 INFO    ] Checking for system updates...
[2026-06-05 10:42:47,921.921 INFO    ] 200
[2026-06-05 10:42:47,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:42:47,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:42:47,987.987 INFO    ] No update needed
[2026-06-05 10:42:47,990.990 INFO    ] Checking for camera pi updates...
[2026-06-05 10:42:48,025.025 INFO    ] 200
[2026-06-05 10:42:48,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:42:48,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:42:48,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:42:48,123.123 INFO    ] No camera update needed
[2026-06-05 10:42:48,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:42:48,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:42:48,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:42:48,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:42:50,179.179 INFO    ] ================================================
[2026-06-05 10:42:50,195.195 INFO    ] Launching Daemon at Fri Jun  5 10:42:50 IST 2026
[2026-06-05 10:42:50,205.205 INFO    ] ================================================
[2026-06-05 10:42:50,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:42:50
[2026-06-05 10:42:51,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:42:51,783.783 INFO    ] Initializing speech engine...
[2026-06-05 10:42:51,788.788 INFO    ] 2026-06-05 10:42:51
[2026-06-05 10:42:52,047.047 INFO    ] 2026-06-05 10:42:52
[2026-06-05 10:42:52,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:42:52,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:42:52,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:42:52,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:42:52,500.500 INFO    ] time= 05/06/2026 10:42:52
[2026-06-05 10:42:52,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:42:52,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:42:52,755.755 INFO    ] No existing commands found in stream
[2026-06-05 10:42:57,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:42:57,778.778 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 10:43:02,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:43:02,136.136 INFO    ] Checking for system updates...
[2026-06-05 10:43:02,180.180 INFO    ] 200
[2026-06-05 10:43:02,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:02,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:43:02,247.247 INFO    ] No update needed
[2026-06-05 10:43:02,250.250 INFO    ] Checking for camera pi updates...
[2026-06-05 10:43:02,293.293 INFO    ] 200
[2026-06-05 10:43:02,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:02,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:43:02,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:43:02,465.465 INFO    ] No camera update needed
[2026-06-05 10:43:02,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:43:02,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:43:02,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:43:02,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:43:04,526.526 INFO    ] ================================================
[2026-06-05 10:43:04,541.541 INFO    ] Launching Daemon at Fri Jun  5 10:43:04 IST 2026
[2026-06-05 10:43:04,552.552 INFO    ] ================================================
[2026-06-05 10:43:05,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:43:05
[2026-06-05 10:43:05,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:43:05,973.973 INFO    ] Initializing speech engine...
[2026-06-05 10:43:05,982.982 INFO    ] 2026-06-05 10:43:05
[2026-06-05 10:43:06,254.254 INFO    ] 2026-06-05 10:43:06
[2026-06-05 10:43:06,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:43:06,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:43:06,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:43:06,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:43:06,645.645 INFO    ] time= 05/06/2026 10:43:06
[2026-06-05 10:43:06,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:43:06,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:43:06,835.835 INFO    ] No existing commands found in stream
[2026-06-05 10:43:11,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:43:11,862.862 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 10:43:14,847.847 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:43:14,849.849 INFO    ] Checking for system updates...
[2026-06-05 10:43:14,885.885 INFO    ] 200
[2026-06-05 10:43:14,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:14,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:43:14,944.944 INFO    ] No update needed
[2026-06-05 10:43:14,947.947 INFO    ] Checking for camera pi updates...
[2026-06-05 10:43:14,981.981 INFO    ] 200
[2026-06-05 10:43:14,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:15,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:43:15,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:43:15,083.083 INFO    ] No camera update needed
[2026-06-05 10:43:15,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:43:15,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:43:15,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:43:15,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:43:17,139.139 INFO    ] ================================================
[2026-06-05 10:43:17,154.154 INFO    ] Launching Daemon at Fri Jun  5 10:43:17 IST 2026
[2026-06-05 10:43:17,164.164 INFO    ] ================================================
[2026-06-05 10:43:17,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:43:17
[2026-06-05 10:43:18,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:43:18,754.754 INFO    ] Initializing speech engine...
[2026-06-05 10:43:18,761.761 INFO    ] 2026-06-05 10:43:18
[2026-06-05 10:43:19,032.032 INFO    ] 2026-06-05 10:43:19
[2026-06-05 10:43:19,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:43:19,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:43:19,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:43:19,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:43:19,598.598 INFO    ] time= 05/06/2026 10:43:19
[2026-06-05 10:43:19,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:43:19,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:43:19,738.738 INFO    ] No existing commands found in stream
[2026-06-05 10:43:24,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:43:24,770.770 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 10:43:25,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:43:25,566.566 INFO    ] Checking for system updates...
[2026-06-05 10:43:25,605.605 INFO    ] 200
[2026-06-05 10:43:25,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:25,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:43:25,664.664 INFO    ] No update needed
[2026-06-05 10:43:25,667.667 INFO    ] Checking for camera pi updates...
[2026-06-05 10:43:25,703.703 INFO    ] 200
[2026-06-05 10:43:25,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:25,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:43:25,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:43:25,798.798 INFO    ] No camera update needed
[2026-06-05 10:43:25,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:43:25,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:43:25,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:43:25,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:43:27,852.852 INFO    ] ================================================
[2026-06-05 10:43:27,868.868 INFO    ] Launching Daemon at Fri Jun  5 10:43:27 IST 2026
[2026-06-05 10:43:27,878.878 INFO    ] ================================================
[2026-06-05 10:43:28,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:43:28
[2026-06-05 10:43:29,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:43:29,335.335 INFO    ] Initializing speech engine...
[2026-06-05 10:43:29,346.346 INFO    ] 2026-06-05 10:43:29
[2026-06-05 10:43:29,621.621 INFO    ] 2026-06-05 10:43:29
[2026-06-05 10:43:29,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:43:30,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:43:30,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:43:30,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:43:30,753.753 INFO    ] time= 05/06/2026 10:43:30
[2026-06-05 10:43:30,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:43:30,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:43:30,925.925 INFO    ] No existing commands found in stream
[2026-06-05 10:43:35,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:43:35,952.952 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 10:43:37,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:43:37,933.933 INFO    ] Checking for system updates...
[2026-06-05 10:43:37,969.969 INFO    ] 200
[2026-06-05 10:43:37,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:38,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:43:38,032.032 INFO    ] No update needed
[2026-06-05 10:43:38,034.034 INFO    ] Checking for camera pi updates...
[2026-06-05 10:43:38,068.068 INFO    ] 200
[2026-06-05 10:43:38,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:38,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:43:38,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:43:38,171.171 INFO    ] No camera update needed
[2026-06-05 10:43:38,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:43:38,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:43:38,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:43:38,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:43:40,227.227 INFO    ] ================================================
[2026-06-05 10:43:40,242.242 INFO    ] Launching Daemon at Fri Jun  5 10:43:40 IST 2026
[2026-06-05 10:43:40,253.253 INFO    ] ================================================
[2026-06-05 10:43:40,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:43:40
[2026-06-05 10:43:41,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:43:41,710.710 INFO    ] Initializing speech engine...
[2026-06-05 10:43:41,718.718 INFO    ] 2026-06-05 10:43:41
[2026-06-05 10:43:41,979.979 INFO    ] 2026-06-05 10:43:41
[2026-06-05 10:43:42,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:43:42,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:43:42,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:43:42,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:43:42,436.436 INFO    ] time= 05/06/2026 10:43:42
[2026-06-05 10:43:42,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:43:42,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:43:42,677.677 INFO    ] No existing commands found in stream
[2026-06-05 10:43:47,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:43:47,699.699 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 10:43:50,794.794 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:43:50,797.797 INFO    ] Checking for system updates...
[2026-06-05 10:43:50,833.833 INFO    ] 200
[2026-06-05 10:43:50,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:50,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:43:50,897.897 INFO    ] No update needed
[2026-06-05 10:43:50,899.899 INFO    ] Checking for camera pi updates...
[2026-06-05 10:43:50,934.934 INFO    ] 200
[2026-06-05 10:43:50,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:43:50,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:43:51,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:43:51,035.035 INFO    ] No camera update needed
[2026-06-05 10:43:51,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:43:51,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:43:51,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:43:51,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:43:53,090.090 INFO    ] ================================================
[2026-06-05 10:43:53,105.105 INFO    ] Launching Daemon at Fri Jun  5 10:43:53 IST 2026
[2026-06-05 10:43:53,115.115 INFO    ] ================================================
[2026-06-05 10:43:53,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:43:53
[2026-06-05 10:43:54,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:43:54,539.539 INFO    ] Initializing speech engine...
[2026-06-05 10:43:54,548.548 INFO    ] 2026-06-05 10:43:54
[2026-06-05 10:43:54,793.793 INFO    ] 2026-06-05 10:43:54
[2026-06-05 10:43:54,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:43:55,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:43:55,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:43:55,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:43:55,165.165 INFO    ] time= 05/06/2026 10:43:55
[2026-06-05 10:43:55,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:43:55,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:43:55,359.359 INFO    ] No existing commands found in stream
[2026-06-05 10:44:00,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:44:00,372.372 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 10:44:01,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:44:01,528.528 INFO    ] Checking for system updates...
[2026-06-05 10:44:01,594.594 INFO    ] 200
[2026-06-05 10:44:01,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:01,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:44:01,710.710 INFO    ] No update needed
[2026-06-05 10:44:01,713.713 INFO    ] Checking for camera pi updates...
[2026-06-05 10:44:01,784.784 INFO    ] 200
[2026-06-05 10:44:01,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:01,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:44:01,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:44:01,897.897 INFO    ] No camera update needed
[2026-06-05 10:44:01,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:44:01,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:44:01,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:44:01,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:44:03,967.967 INFO    ] ================================================
[2026-06-05 10:44:03,982.982 INFO    ] Launching Daemon at Fri Jun  5 10:44:03 IST 2026
[2026-06-05 10:44:03,993.993 INFO    ] ================================================
[2026-06-05 10:44:04,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:44:04
[2026-06-05 10:44:05,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:44:05,444.444 INFO    ] Initializing speech engine...
[2026-06-05 10:44:05,453.453 INFO    ] 2026-06-05 10:44:05
[2026-06-05 10:44:05,705.705 INFO    ] 2026-06-05 10:44:05
[2026-06-05 10:44:05,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:44:05,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:44:05,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:44:06,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:44:06,117.117 INFO    ] time= 05/06/2026 10:44:06
[2026-06-05 10:44:06,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:44:06,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:44:06,254.254 INFO    ] No existing commands found in stream
[2026-06-05 10:44:11,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:44:11,287.287 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 10:44:13,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:44:13,196.196 INFO    ] Checking for system updates...
[2026-06-05 10:44:13,235.235 INFO    ] 200
[2026-06-05 10:44:13,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:13,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:44:13,293.293 INFO    ] No update needed
[2026-06-05 10:44:13,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 10:44:13,333.333 INFO    ] 200
[2026-06-05 10:44:13,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:13,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:44:13,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:44:13,428.428 INFO    ] No camera update needed
[2026-06-05 10:44:13,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:44:13,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:44:13,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:44:13,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:44:15,485.485 INFO    ] ================================================
[2026-06-05 10:44:15,500.500 INFO    ] Launching Daemon at Fri Jun  5 10:44:15 IST 2026
[2026-06-05 10:44:15,510.510 INFO    ] ================================================
[2026-06-05 10:44:16,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:44:16
[2026-06-05 10:44:16,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:44:16,971.971 INFO    ] Initializing speech engine...
[2026-06-05 10:44:16,979.979 INFO    ] 2026-06-05 10:44:16
[2026-06-05 10:44:17,241.241 INFO    ] 2026-06-05 10:44:17
[2026-06-05 10:44:17,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:44:17,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:44:17,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:44:17,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:44:17,727.727 INFO    ] time= 05/06/2026 10:44:17
[2026-06-05 10:44:17,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:44:17,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:44:17,927.927 INFO    ] No existing commands found in stream
[2026-06-05 10:44:22,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:44:22,952.952 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 10:44:24,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:44:24,695.695 INFO    ] Checking for system updates...
[2026-06-05 10:44:24,735.735 INFO    ] 200
[2026-06-05 10:44:24,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:24,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:44:24,794.794 INFO    ] No update needed
[2026-06-05 10:44:24,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 10:44:24,831.831 INFO    ] 200
[2026-06-05 10:44:24,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:24,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:44:24,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:44:24,937.937 INFO    ] No camera update needed
[2026-06-05 10:44:24,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:44:24,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:44:24,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:44:24,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:44:26,991.991 INFO    ] ================================================
[2026-06-05 10:44:27,006.006 INFO    ] Launching Daemon at Fri Jun  5 10:44:27 IST 2026
[2026-06-05 10:44:27,017.017 INFO    ] ================================================
[2026-06-05 10:44:27,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:44:27
[2026-06-05 10:44:28,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:44:28,443.443 INFO    ] Initializing speech engine...
[2026-06-05 10:44:28,450.450 INFO    ] 2026-06-05 10:44:28
[2026-06-05 10:44:28,698.698 INFO    ] 2026-06-05 10:44:28
[2026-06-05 10:44:28,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:44:30,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:44:30,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:44:30,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:44:30,379.379 INFO    ] time= 05/06/2026 10:44:30
[2026-06-05 10:44:30,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:44:30,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:44:30,494.494 INFO    ] No existing commands found in stream
[2026-06-05 10:44:35,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:44:35,509.509 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 10:44:38,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:44:38,485.485 INFO    ] Checking for system updates...
[2026-06-05 10:44:38,524.524 INFO    ] 200
[2026-06-05 10:44:38,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:38,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:44:38,582.582 INFO    ] No update needed
[2026-06-05 10:44:38,584.584 INFO    ] Checking for camera pi updates...
[2026-06-05 10:44:38,618.618 INFO    ] 200
[2026-06-05 10:44:38,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:38,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:44:38,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:44:38,714.714 INFO    ] No camera update needed
[2026-06-05 10:44:38,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:44:38,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:44:38,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:44:38,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:44:40,769.769 INFO    ] ================================================
[2026-06-05 10:44:40,784.784 INFO    ] Launching Daemon at Fri Jun  5 10:44:40 IST 2026
[2026-06-05 10:44:40,795.795 INFO    ] ================================================
[2026-06-05 10:44:41,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:44:41
[2026-06-05 10:44:41,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:44:42,200.200 INFO    ] Initializing speech engine...
[2026-06-05 10:44:42,215.215 INFO    ] 2026-06-05 10:44:42
[2026-06-05 10:44:42,484.484 INFO    ] 2026-06-05 10:44:42
[2026-06-05 10:44:42,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:44:42,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:44:42,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:44:42,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:44:42,881.881 INFO    ] time= 05/06/2026 10:44:42
[2026-06-05 10:44:42,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:44:42,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:44:43,077.077 INFO    ] No existing commands found in stream
[2026-06-05 10:44:48,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:44:48,101.101 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 10:44:50,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:44:50,758.758 INFO    ] Checking for system updates...
[2026-06-05 10:44:50,796.796 INFO    ] 200
[2026-06-05 10:44:50,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:50,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:44:50,861.861 INFO    ] No update needed
[2026-06-05 10:44:50,864.864 INFO    ] Checking for camera pi updates...
[2026-06-05 10:44:50,899.899 INFO    ] 200
[2026-06-05 10:44:50,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:44:50,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:44:50,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:44:50,996.996 INFO    ] No camera update needed
[2026-06-05 10:44:50,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:44:51,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:44:51,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:44:51,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:44:53,054.054 INFO    ] ================================================
[2026-06-05 10:44:53,069.069 INFO    ] Launching Daemon at Fri Jun  5 10:44:53 IST 2026
[2026-06-05 10:44:53,081.081 INFO    ] ================================================
[2026-06-05 10:44:53,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:44:53
[2026-06-05 10:44:54,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:44:54,671.671 INFO    ] Initializing speech engine...
[2026-06-05 10:44:54,681.681 INFO    ] 2026-06-05 10:44:54
[2026-06-05 10:44:54,950.950 INFO    ] 2026-06-05 10:44:54
[2026-06-05 10:44:55,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:44:55,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:44:55,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:44:55,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:44:55,501.501 INFO    ] time= 05/06/2026 10:44:55
[2026-06-05 10:44:55,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:44:55,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:44:55,659.659 INFO    ] No existing commands found in stream
[2026-06-05 10:45:00,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:45:00,681.681 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 10:45:04,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:45:04,034.034 INFO    ] Checking for system updates...
[2026-06-05 10:45:04,075.075 INFO    ] 200
[2026-06-05 10:45:04,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:04,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:45:04,141.141 INFO    ] No update needed
[2026-06-05 10:45:04,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 10:45:04,180.180 INFO    ] 200
[2026-06-05 10:45:04,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:04,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:45:04,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:45:04,363.363 INFO    ] No camera update needed
[2026-06-05 10:45:04,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:45:04,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:45:04,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:45:04,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:45:06,422.422 INFO    ] ================================================
[2026-06-05 10:45:06,439.439 INFO    ] Launching Daemon at Fri Jun  5 10:45:06 IST 2026
[2026-06-05 10:45:06,450.450 INFO    ] ================================================
[2026-06-05 10:45:07,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:45:07
[2026-06-05 10:45:07,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:45:07,897.897 INFO    ] Initializing speech engine...
[2026-06-05 10:45:07,911.911 INFO    ] 2026-06-05 10:45:07
[2026-06-05 10:45:08,178.178 INFO    ] 2026-06-05 10:45:08
[2026-06-05 10:45:08,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:45:08,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:45:08,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:45:08,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:45:08,559.559 INFO    ] time= 05/06/2026 10:45:08
[2026-06-05 10:45:08,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:45:08,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:45:08,749.749 INFO    ] No existing commands found in stream
[2026-06-05 10:45:13,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:45:13,771.771 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 10:45:16,975.975 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:45:16,977.977 INFO    ] Checking for system updates...
[2026-06-05 10:45:17,013.013 INFO    ] 200
[2026-06-05 10:45:17,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:17,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:45:17,076.076 INFO    ] No update needed
[2026-06-05 10:45:17,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 10:45:17,113.113 INFO    ] 200
[2026-06-05 10:45:17,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:17,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:45:17,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:45:17,210.210 INFO    ] No camera update needed
[2026-06-05 10:45:17,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:45:17,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:45:17,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:45:17,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:45:19,267.267 INFO    ] ================================================
[2026-06-05 10:45:19,282.282 INFO    ] Launching Daemon at Fri Jun  5 10:45:19 IST 2026
[2026-06-05 10:45:19,293.293 INFO    ] ================================================
[2026-06-05 10:45:19,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:45:19
[2026-06-05 10:45:20,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:45:20,708.708 INFO    ] Initializing speech engine...
[2026-06-05 10:45:20,722.722 INFO    ] 2026-06-05 10:45:20
[2026-06-05 10:45:20,973.973 INFO    ] 2026-06-05 10:45:20
[2026-06-05 10:45:21,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:45:21,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:45:21,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:45:21,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:45:21,634.634 INFO    ] time= 05/06/2026 10:45:21
[2026-06-05 10:45:21,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:45:21,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:45:21,870.870 INFO    ] No existing commands found in stream
[2026-06-05 10:45:26,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:45:26,903.903 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 10:45:27,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:45:27,864.864 INFO    ] Checking for system updates...
[2026-06-05 10:45:27,900.900 INFO    ] 200
[2026-06-05 10:45:27,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:27,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:45:27,971.971 INFO    ] No update needed
[2026-06-05 10:45:27,973.973 INFO    ] Checking for camera pi updates...
[2026-06-05 10:45:28,010.010 INFO    ] 200
[2026-06-05 10:45:28,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:28,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:45:28,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:45:28,114.114 INFO    ] No camera update needed
[2026-06-05 10:45:28,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:45:28,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:45:28,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:45:28,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:45:30,169.169 INFO    ] ================================================
[2026-06-05 10:45:30,184.184 INFO    ] Launching Daemon at Fri Jun  5 10:45:30 IST 2026
[2026-06-05 10:45:30,196.196 INFO    ] ================================================
[2026-06-05 10:45:30,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:45:30
[2026-06-05 10:45:31,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:45:31,611.611 INFO    ] Initializing speech engine...
[2026-06-05 10:45:31,635.635 INFO    ] 2026-06-05 10:45:31
[2026-06-05 10:45:31,925.925 INFO    ] 2026-06-05 10:45:31
[2026-06-05 10:45:31,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:45:32,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:45:32,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:45:32,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:45:32,445.445 INFO    ] time= 05/06/2026 10:45:32
[2026-06-05 10:45:32,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:45:32,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:45:32,649.649 INFO    ] No existing commands found in stream
[2026-06-05 10:45:37,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:45:37,678.678 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 10:45:39,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:45:39,518.518 INFO    ] Checking for system updates...
[2026-06-05 10:45:39,553.553 INFO    ] 200
[2026-06-05 10:45:39,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:39,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:45:39,611.611 INFO    ] No update needed
[2026-06-05 10:45:39,614.614 INFO    ] Checking for camera pi updates...
[2026-06-05 10:45:39,648.648 INFO    ] 200
[2026-06-05 10:45:39,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:39,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:45:39,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:45:39,751.751 INFO    ] No camera update needed
[2026-06-05 10:45:39,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:45:39,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:45:39,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:45:39,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:45:41,806.806 INFO    ] ================================================
[2026-06-05 10:45:41,821.821 INFO    ] Launching Daemon at Fri Jun  5 10:45:41 IST 2026
[2026-06-05 10:45:41,833.833 INFO    ] ================================================
[2026-06-05 10:45:42,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:45:42
[2026-06-05 10:45:43,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:45:43,346.346 INFO    ] Initializing speech engine...
[2026-06-05 10:45:43,354.354 INFO    ] 2026-06-05 10:45:43
[2026-06-05 10:45:43,633.633 INFO    ] 2026-06-05 10:45:43
[2026-06-05 10:45:43,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:45:43,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:45:43,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:45:44,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:45:44,053.053 INFO    ] time= 05/06/2026 10:45:44
[2026-06-05 10:45:44,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:45:44,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:45:44,212.212 INFO    ] No existing commands found in stream
[2026-06-05 10:45:49,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:45:49,229.229 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 10:45:51,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:45:51,606.606 INFO    ] Checking for system updates...
[2026-06-05 10:45:51,646.646 INFO    ] 200
[2026-06-05 10:45:51,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:51,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:45:51,711.711 INFO    ] No update needed
[2026-06-05 10:45:51,713.713 INFO    ] Checking for camera pi updates...
[2026-06-05 10:45:51,747.747 INFO    ] 200
[2026-06-05 10:45:51,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:45:51,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:45:51,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:45:51,840.840 INFO    ] No camera update needed
[2026-06-05 10:45:51,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:45:51,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:45:51,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:45:51,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:45:53,895.895 INFO    ] ================================================
[2026-06-05 10:45:53,910.910 INFO    ] Launching Daemon at Fri Jun  5 10:45:53 IST 2026
[2026-06-05 10:45:53,921.921 INFO    ] ================================================
[2026-06-05 10:45:54,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:45:54
[2026-06-05 10:45:55,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:45:55,510.510 INFO    ] Initializing speech engine...
[2026-06-05 10:45:55,517.517 INFO    ] 2026-06-05 10:45:55
[2026-06-05 10:45:55,832.832 INFO    ] 2026-06-05 10:45:55
[2026-06-05 10:45:55,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:45:56,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:45:56,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:45:56,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:45:56,343.343 INFO    ] time= 05/06/2026 10:45:56
[2026-06-05 10:45:56,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:45:56,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:45:56,502.502 INFO    ] No existing commands found in stream
[2026-06-05 10:46:01,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:46:01,530.530 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 10:46:04,508.508 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:46:04,512.512 INFO    ] Checking for system updates...
[2026-06-05 10:46:04,552.552 INFO    ] 200
[2026-06-05 10:46:04,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:04,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:04,620.620 INFO    ] No update needed
[2026-06-05 10:46:04,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 10:46:04,663.663 INFO    ] 200
[2026-06-05 10:46:04,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:04,710.710 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:46:04,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:04,748.748 INFO    ] No camera update needed
[2026-06-05 10:46:04,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:46:04,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:46:04,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:46:04,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:46:06,810.810 INFO    ] ================================================
[2026-06-05 10:46:06,826.826 INFO    ] Launching Daemon at Fri Jun  5 10:46:06 IST 2026
[2026-06-05 10:46:06,837.837 INFO    ] ================================================
[2026-06-05 10:46:07,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:46:07
[2026-06-05 10:46:08,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:46:08,326.326 INFO    ] Initializing speech engine...
[2026-06-05 10:46:08,335.335 INFO    ] 2026-06-05 10:46:08
[2026-06-05 10:46:08,585.585 INFO    ] 2026-06-05 10:46:08
[2026-06-05 10:46:08,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:46:08,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:46:08,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:46:09,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:46:09,088.088 INFO    ] time= 05/06/2026 10:46:09
[2026-06-05 10:46:09,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:46:09,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:46:09,274.274 INFO    ] No existing commands found in stream
[2026-06-05 10:46:14,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:46:14,308.308 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 10:46:15,733.733 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:46:15,736.736 INFO    ] Checking for system updates...
[2026-06-05 10:46:15,773.773 INFO    ] 200
[2026-06-05 10:46:15,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:15,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:15,840.840 INFO    ] No update needed
[2026-06-05 10:46:15,845.845 INFO    ] Checking for camera pi updates...
[2026-06-05 10:46:15,883.883 INFO    ] 200
[2026-06-05 10:46:15,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:15,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:46:15,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:15,981.981 INFO    ] No camera update needed
[2026-06-05 10:46:15,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:46:15,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:46:15,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:46:15,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:46:18,038.038 INFO    ] ================================================
[2026-06-05 10:46:18,054.054 INFO    ] Launching Daemon at Fri Jun  5 10:46:18 IST 2026
[2026-06-05 10:46:18,064.064 INFO    ] ================================================
[2026-06-05 10:46:18,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:46:18
[2026-06-05 10:46:19,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:46:19,531.531 INFO    ] Initializing speech engine...
[2026-06-05 10:46:19,537.537 INFO    ] 2026-06-05 10:46:19
[2026-06-05 10:46:19,809.809 INFO    ] 2026-06-05 10:46:19
[2026-06-05 10:46:19,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:46:20,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:46:20,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:46:20,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:46:20,377.377 INFO    ] time= 05/06/2026 10:46:20
[2026-06-05 10:46:20,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:46:20,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:46:20,533.533 INFO    ] No existing commands found in stream
[2026-06-05 10:46:25,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:46:25,557.557 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 10:46:31,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:46:31,495.495 INFO    ] Checking for system updates...
[2026-06-05 10:46:31,532.532 INFO    ] 200
[2026-06-05 10:46:31,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:31,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:31,591.591 INFO    ] No update needed
[2026-06-05 10:46:31,593.593 INFO    ] Checking for camera pi updates...
[2026-06-05 10:46:31,628.628 INFO    ] 200
[2026-06-05 10:46:31,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:31,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:46:31,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:31,723.723 INFO    ] No camera update needed
[2026-06-05 10:46:31,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:46:31,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:46:31,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:46:31,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:46:33,778.778 INFO    ] ================================================
[2026-06-05 10:46:33,793.793 INFO    ] Launching Daemon at Fri Jun  5 10:46:33 IST 2026
[2026-06-05 10:46:33,804.804 INFO    ] ================================================
[2026-06-05 10:46:34,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:46:34
[2026-06-05 10:46:34,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:46:35,209.209 INFO    ] Initializing speech engine...
[2026-06-05 10:46:35,214.214 INFO    ] 2026-06-05 10:46:35
[2026-06-05 10:46:35,490.490 INFO    ] 2026-06-05 10:46:35
[2026-06-05 10:46:35,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:46:35,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:46:35,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:46:35,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:46:35,938.938 INFO    ] time= 05/06/2026 10:46:35
[2026-06-05 10:46:36,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:46:36,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:46:36,219.219 INFO    ] No existing commands found in stream
[2026-06-05 10:46:41,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:46:41,235.235 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 10:46:42,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:46:42,245.245 INFO    ] Checking for system updates...
[2026-06-05 10:46:42,282.282 INFO    ] 200
[2026-06-05 10:46:42,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:42,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:42,340.340 INFO    ] No update needed
[2026-06-05 10:46:42,342.342 INFO    ] Checking for camera pi updates...
[2026-06-05 10:46:42,381.381 INFO    ] 200
[2026-06-05 10:46:42,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:42,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:46:42,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:42,476.476 INFO    ] No camera update needed
[2026-06-05 10:46:42,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:46:42,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:46:42,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:46:42,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:46:44,532.532 INFO    ] ================================================
[2026-06-05 10:46:44,547.547 INFO    ] Launching Daemon at Fri Jun  5 10:46:44 IST 2026
[2026-06-05 10:46:44,558.558 INFO    ] ================================================
[2026-06-05 10:46:45,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:46:45
[2026-06-05 10:46:45,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:46:45,967.967 INFO    ] Initializing speech engine...
[2026-06-05 10:46:45,983.983 INFO    ] 2026-06-05 10:46:45
[2026-06-05 10:46:46,239.239 INFO    ] 2026-06-05 10:46:46
[2026-06-05 10:46:46,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:46:46,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:46:46,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:46:46,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:46:46,702.702 INFO    ] time= 05/06/2026 10:46:46
[2026-06-05 10:46:46,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:46:46,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:46:46,948.948 INFO    ] No existing commands found in stream
[2026-06-05 10:46:51,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:46:51,976.976 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 10:46:55,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:46:55,368.368 INFO    ] Checking for system updates...
[2026-06-05 10:46:55,408.408 INFO    ] 200
[2026-06-05 10:46:55,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:55,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:55,472.472 INFO    ] No update needed
[2026-06-05 10:46:55,474.474 INFO    ] Checking for camera pi updates...
[2026-06-05 10:46:55,512.512 INFO    ] 200
[2026-06-05 10:46:55,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:46:55,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:46:55,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:46:55,605.605 INFO    ] No camera update needed
[2026-06-05 10:46:55,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:46:55,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:46:55,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:46:55,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:46:57,664.664 INFO    ] ================================================
[2026-06-05 10:46:57,678.678 INFO    ] Launching Daemon at Fri Jun  5 10:46:57 IST 2026
[2026-06-05 10:46:57,689.689 INFO    ] ================================================
[2026-06-05 10:46:58,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:46:58
[2026-06-05 10:46:59,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:46:59,310.310 INFO    ] Initializing speech engine...
[2026-06-05 10:46:59,318.318 INFO    ] 2026-06-05 10:46:59
[2026-06-05 10:46:59,589.589 INFO    ] 2026-06-05 10:46:59
[2026-06-05 10:46:59,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:47:00,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:47:00,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:47:00,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:47:00,423.423 INFO    ] time= 05/06/2026 10:47:00
[2026-06-05 10:47:00,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:47:00,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:47:00,724.724 INFO    ] No existing commands found in stream
[2026-06-05 10:47:05,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:47:05,760.760 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 10:47:09,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:47:09,364.364 INFO    ] Checking for system updates...
[2026-06-05 10:47:09,403.403 INFO    ] 200
[2026-06-05 10:47:09,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:09,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:47:09,464.464 INFO    ] No update needed
[2026-06-05 10:47:09,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 10:47:09,513.513 INFO    ] 200
[2026-06-05 10:47:09,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:09,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:47:09,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:47:09,712.712 INFO    ] No camera update needed
[2026-06-05 10:47:09,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:47:09,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:47:09,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:47:09,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:47:11,769.769 INFO    ] ================================================
[2026-06-05 10:47:11,784.784 INFO    ] Launching Daemon at Fri Jun  5 10:47:11 IST 2026
[2026-06-05 10:47:11,796.796 INFO    ] ================================================
[2026-06-05 10:47:12,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:47:12
[2026-06-05 10:47:12,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:47:13,201.201 INFO    ] Initializing speech engine...
[2026-06-05 10:47:13,210.210 INFO    ] 2026-06-05 10:47:13
[2026-06-05 10:47:13,501.501 INFO    ] 2026-06-05 10:47:13
[2026-06-05 10:47:13,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:47:13,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:47:13,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:47:13,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:47:13,882.882 INFO    ] time= 05/06/2026 10:47:13
[2026-06-05 10:47:13,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:47:13,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:47:14,028.028 INFO    ] No existing commands found in stream
[2026-06-05 10:47:19,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:47:19,061.061 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 10:47:20,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:47:20,493.493 INFO    ] Checking for system updates...
[2026-06-05 10:47:20,533.533 INFO    ] 200
[2026-06-05 10:47:20,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:20,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:47:20,597.597 INFO    ] No update needed
[2026-06-05 10:47:20,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 10:47:20,634.634 INFO    ] 200
[2026-06-05 10:47:20,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:20,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:47:20,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:47:20,725.725 INFO    ] No camera update needed
[2026-06-05 10:47:20,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:47:20,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:47:20,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:47:20,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:47:22,780.780 INFO    ] ================================================
[2026-06-05 10:47:22,795.795 INFO    ] Launching Daemon at Fri Jun  5 10:47:22 IST 2026
[2026-06-05 10:47:22,806.806 INFO    ] ================================================
[2026-06-05 10:47:23,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:47:23
[2026-06-05 10:47:23,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:47:24,238.238 INFO    ] Initializing speech engine...
[2026-06-05 10:47:24,247.247 INFO    ] 2026-06-05 10:47:24
[2026-06-05 10:47:24,503.503 INFO    ] 2026-06-05 10:47:24
[2026-06-05 10:47:24,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:47:24,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:47:24,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:47:24,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:47:24,978.978 INFO    ] time= 05/06/2026 10:47:24
[2026-06-05 10:47:25,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:47:25,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:47:25,202.202 INFO    ] No existing commands found in stream
[2026-06-05 10:47:30,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:47:30,220.220 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 10:47:32,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:47:32,204.204 INFO    ] Checking for system updates...
[2026-06-05 10:47:32,250.250 INFO    ] 200
[2026-06-05 10:47:32,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:32,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:47:32,320.320 INFO    ] No update needed
[2026-06-05 10:47:32,323.323 INFO    ] Checking for camera pi updates...
[2026-06-05 10:47:32,363.363 INFO    ] 200
[2026-06-05 10:47:32,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:32,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:47:32,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:47:32,455.455 INFO    ] No camera update needed
[2026-06-05 10:47:32,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:47:32,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:47:32,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:47:32,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:47:34,514.514 INFO    ] ================================================
[2026-06-05 10:47:34,529.529 INFO    ] Launching Daemon at Fri Jun  5 10:47:34 IST 2026
[2026-06-05 10:47:34,540.540 INFO    ] ================================================
[2026-06-05 10:47:35,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:47:35
[2026-06-05 10:47:35,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:47:35,993.993 INFO    ] Initializing speech engine...
[2026-06-05 10:47:36,011.011 INFO    ] 2026-06-05 10:47:35
[2026-06-05 10:47:36,278.278 INFO    ] 2026-06-05 10:47:36
[2026-06-05 10:47:36,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:47:36,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:47:36,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:47:36,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:47:36,692.692 INFO    ] time= 05/06/2026 10:47:36
[2026-06-05 10:47:36,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:47:36,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:47:36,891.891 INFO    ] No existing commands found in stream
[2026-06-05 10:47:41,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:47:41,919.919 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 10:47:43,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:47:43,673.673 INFO    ] Checking for system updates...
[2026-06-05 10:47:43,710.710 INFO    ] 200
[2026-06-05 10:47:43,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:43,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:47:43,769.769 INFO    ] No update needed
[2026-06-05 10:47:43,771.771 INFO    ] Checking for camera pi updates...
[2026-06-05 10:47:43,805.805 INFO    ] 200
[2026-06-05 10:47:43,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:43,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:47:43,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:47:43,905.905 INFO    ] No camera update needed
[2026-06-05 10:47:43,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:47:43,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:47:43,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:47:43,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:47:45,959.959 INFO    ] ================================================
[2026-06-05 10:47:45,974.974 INFO    ] Launching Daemon at Fri Jun  5 10:47:45 IST 2026
[2026-06-05 10:47:45,985.985 INFO    ] ================================================
[2026-06-05 10:47:46,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:47:46
[2026-06-05 10:47:47,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:47:47,385.385 INFO    ] Initializing speech engine...
[2026-06-05 10:47:47,398.398 INFO    ] 2026-06-05 10:47:47
[2026-06-05 10:47:47,660.660 INFO    ] 2026-06-05 10:47:47
[2026-06-05 10:47:47,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:47:47,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:47:47,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:47:48,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:47:48,029.029 INFO    ] time= 05/06/2026 10:47:48
[2026-06-05 10:47:48,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:47:48,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:47:48,230.230 INFO    ] No existing commands found in stream
[2026-06-05 10:47:53,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:47:53,243.243 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 10:47:56,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:47:56,010.010 INFO    ] Checking for system updates...
[2026-06-05 10:47:56,047.047 INFO    ] 200
[2026-06-05 10:47:56,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:56,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:47:56,108.108 INFO    ] No update needed
[2026-06-05 10:47:56,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 10:47:56,147.147 INFO    ] 200
[2026-06-05 10:47:56,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:47:56,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:47:56,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:47:56,238.238 INFO    ] No camera update needed
[2026-06-05 10:47:56,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:47:56,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:47:56,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:47:56,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:47:58,294.294 INFO    ] ================================================
[2026-06-05 10:47:58,309.309 INFO    ] Launching Daemon at Fri Jun  5 10:47:58 IST 2026
[2026-06-05 10:47:58,320.320 INFO    ] ================================================
[2026-06-05 10:47:58,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:47:58
[2026-06-05 10:47:59,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:47:59,739.739 INFO    ] Initializing speech engine...
[2026-06-05 10:47:59,747.747 INFO    ] 2026-06-05 10:47:59
[2026-06-05 10:47:59,995.995 INFO    ] 2026-06-05 10:47:59
[2026-06-05 10:48:00,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:48:00,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:48:00,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:48:00,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:48:00,548.548 INFO    ] time= 05/06/2026 10:48:00
[2026-06-05 10:48:00,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:48:00,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:48:00,699.699 INFO    ] No existing commands found in stream
[2026-06-05 10:48:05,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:48:05,718.718 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 10:48:06,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:48:06,870.870 INFO    ] Checking for system updates...
[2026-06-05 10:48:06,910.910 INFO    ] 200
[2026-06-05 10:48:06,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:06,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:48:06,973.973 INFO    ] No update needed
[2026-06-05 10:48:06,976.976 INFO    ] Checking for camera pi updates...
[2026-06-05 10:48:07,013.013 INFO    ] 200
[2026-06-05 10:48:07,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:07,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:48:07,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:48:07,114.114 INFO    ] No camera update needed
[2026-06-05 10:48:07,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:48:07,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:48:07,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:48:07,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:48:09,170.170 INFO    ] ================================================
[2026-06-05 10:48:09,185.185 INFO    ] Launching Daemon at Fri Jun  5 10:48:09 IST 2026
[2026-06-05 10:48:09,196.196 INFO    ] ================================================
[2026-06-05 10:48:09,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:48:09
[2026-06-05 10:48:10,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:48:10,622.622 INFO    ] Initializing speech engine...
[2026-06-05 10:48:10,641.641 INFO    ] 2026-06-05 10:48:10
[2026-06-05 10:48:10,888.888 INFO    ] 2026-06-05 10:48:10
[2026-06-05 10:48:10,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:48:11,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:48:11,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:48:11,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:48:11,395.395 INFO    ] time= 05/06/2026 10:48:11
[2026-06-05 10:48:11,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:48:11,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:48:11,603.603 INFO    ] No existing commands found in stream
[2026-06-05 10:48:16,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:48:16,624.624 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 10:48:17,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:48:17,418.418 INFO    ] Checking for system updates...
[2026-06-05 10:48:17,456.456 INFO    ] 200
[2026-06-05 10:48:17,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:17,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:48:17,513.513 INFO    ] No update needed
[2026-06-05 10:48:17,516.516 INFO    ] Checking for camera pi updates...
[2026-06-05 10:48:17,550.550 INFO    ] 200
[2026-06-05 10:48:17,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:17,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:48:17,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:48:17,646.646 INFO    ] No camera update needed
[2026-06-05 10:48:17,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:48:17,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:48:17,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:48:17,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:48:19,701.701 INFO    ] ================================================
[2026-06-05 10:48:19,716.716 INFO    ] Launching Daemon at Fri Jun  5 10:48:19 IST 2026
[2026-06-05 10:48:19,727.727 INFO    ] ================================================
[2026-06-05 10:48:20,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:48:20
[2026-06-05 10:48:20,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:48:21,161.161 INFO    ] Initializing speech engine...
[2026-06-05 10:48:21,168.168 INFO    ] 2026-06-05 10:48:21
[2026-06-05 10:48:21,416.416 INFO    ] 2026-06-05 10:48:21
[2026-06-05 10:48:21,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:48:21,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:48:21,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:48:21,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:48:21,916.916 INFO    ] time= 05/06/2026 10:48:21
[2026-06-05 10:48:21,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:48:21,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:48:22,138.138 INFO    ] No existing commands found in stream
[2026-06-05 10:48:27,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:48:27,157.157 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 10:48:30,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:48:30,668.668 INFO    ] Checking for system updates...
[2026-06-05 10:48:30,706.706 INFO    ] 200
[2026-06-05 10:48:30,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:30,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:48:30,764.764 INFO    ] No update needed
[2026-06-05 10:48:30,766.766 INFO    ] Checking for camera pi updates...
[2026-06-05 10:48:30,802.802 INFO    ] 200
[2026-06-05 10:48:30,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:30,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:48:30,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:48:30,904.904 INFO    ] No camera update needed
[2026-06-05 10:48:30,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:48:30,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:48:30,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:48:30,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:48:32,962.962 INFO    ] ================================================
[2026-06-05 10:48:32,977.977 INFO    ] Launching Daemon at Fri Jun  5 10:48:32 IST 2026
[2026-06-05 10:48:32,988.988 INFO    ] ================================================
[2026-06-05 10:48:33,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:48:33
[2026-06-05 10:48:34,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:48:34,447.447 INFO    ] Initializing speech engine...
[2026-06-05 10:48:34,462.462 INFO    ] 2026-06-05 10:48:34
[2026-06-05 10:48:34,735.735 INFO    ] 2026-06-05 10:48:34
[2026-06-05 10:48:34,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:48:35,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:48:35,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:48:35,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:48:35,256.256 INFO    ] time= 05/06/2026 10:48:35
[2026-06-05 10:48:35,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:48:35,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:48:35,484.484 INFO    ] No existing commands found in stream
[2026-06-05 10:48:40,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:48:40,507.507 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 10:48:44,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:48:44,838.838 INFO    ] Checking for system updates...
[2026-06-05 10:48:44,875.875 INFO    ] 200
[2026-06-05 10:48:44,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:44,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:48:44,940.940 INFO    ] No update needed
[2026-06-05 10:48:44,943.943 INFO    ] Checking for camera pi updates...
[2026-06-05 10:48:44,980.980 INFO    ] 200
[2026-06-05 10:48:44,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:45,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:48:45,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:48:45,084.084 INFO    ] No camera update needed
[2026-06-05 10:48:45,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:48:45,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:48:45,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:48:45,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:48:47,139.139 INFO    ] ================================================
[2026-06-05 10:48:47,154.154 INFO    ] Launching Daemon at Fri Jun  5 10:48:47 IST 2026
[2026-06-05 10:48:47,164.164 INFO    ] ================================================
[2026-06-05 10:48:47,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:48:47
[2026-06-05 10:48:48,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:48:48,582.582 INFO    ] Initializing speech engine...
[2026-06-05 10:48:48,598.598 INFO    ] 2026-06-05 10:48:48
[2026-06-05 10:48:48,878.878 INFO    ] 2026-06-05 10:48:48
[2026-06-05 10:48:48,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:48:49,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:48:49,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:48:49,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:48:49,290.290 INFO    ] time= 05/06/2026 10:48:49
[2026-06-05 10:48:49,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:48:49,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:48:49,408.408 INFO    ] No existing commands found in stream
[2026-06-05 10:48:54,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:48:54,446.446 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 10:48:56,630.630 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:48:56,633.633 INFO    ] Checking for system updates...
[2026-06-05 10:48:56,669.669 INFO    ] 200
[2026-06-05 10:48:56,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:56,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:48:56,736.736 INFO    ] No update needed
[2026-06-05 10:48:56,738.738 INFO    ] Checking for camera pi updates...
[2026-06-05 10:48:56,775.775 INFO    ] 200
[2026-06-05 10:48:56,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:48:56,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:48:56,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:48:56,864.864 INFO    ] No camera update needed
[2026-06-05 10:48:56,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:48:56,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:48:56,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:48:56,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:48:58,919.919 INFO    ] ================================================
[2026-06-05 10:48:58,934.934 INFO    ] Launching Daemon at Fri Jun  5 10:48:58 IST 2026
[2026-06-05 10:48:58,945.945 INFO    ] ================================================
[2026-06-05 10:48:59,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:48:59
[2026-06-05 10:49:00,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:49:00,380.380 INFO    ] Initializing speech engine...
[2026-06-05 10:49:00,389.389 INFO    ] 2026-06-05 10:49:00
[2026-06-05 10:49:00,679.679 INFO    ] 2026-06-05 10:49:00
[2026-06-05 10:49:00,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:49:00,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:49:00,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:49:01,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:49:01,093.093 INFO    ] time= 05/06/2026 10:49:01
[2026-06-05 10:49:01,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:49:01,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:49:01,179.179 INFO    ] No existing commands found in stream
[2026-06-05 10:49:06,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:49:06,211.211 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 10:49:06,800.800 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:49:06,803.803 INFO    ] Checking for system updates...
[2026-06-05 10:49:06,839.839 INFO    ] 200
[2026-06-05 10:49:06,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:06,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:49:06,907.907 INFO    ] No update needed
[2026-06-05 10:49:06,909.909 INFO    ] Checking for camera pi updates...
[2026-06-05 10:49:06,947.947 INFO    ] 200
[2026-06-05 10:49:06,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:06,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:49:07,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:49:07,048.048 INFO    ] No camera update needed
[2026-06-05 10:49:07,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:49:07,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:49:07,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:49:07,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:49:09,103.103 INFO    ] ================================================
[2026-06-05 10:49:09,118.118 INFO    ] Launching Daemon at Fri Jun  5 10:49:09 IST 2026
[2026-06-05 10:49:09,129.129 INFO    ] ================================================
[2026-06-05 10:49:09,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:49:09
[2026-06-05 10:49:10,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:49:10,693.693 INFO    ] Initializing speech engine...
[2026-06-05 10:49:10,700.700 INFO    ] 2026-06-05 10:49:10
[2026-06-05 10:49:10,974.974 INFO    ] 2026-06-05 10:49:10
[2026-06-05 10:49:11,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:49:11,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:49:11,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:49:11,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:49:11,481.481 INFO    ] time= 05/06/2026 10:49:11
[2026-06-05 10:49:11,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:49:11,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:49:11,702.702 INFO    ] No existing commands found in stream
[2026-06-05 10:49:16,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:49:16,730.730 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 10:49:20,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:49:20,248.248 INFO    ] Checking for system updates...
[2026-06-05 10:49:20,288.288 INFO    ] 200
[2026-06-05 10:49:20,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:20,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:49:20,349.349 INFO    ] No update needed
[2026-06-05 10:49:20,352.352 INFO    ] Checking for camera pi updates...
[2026-06-05 10:49:20,387.387 INFO    ] 200
[2026-06-05 10:49:20,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:20,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:49:20,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:49:20,585.585 INFO    ] No camera update needed
[2026-06-05 10:49:20,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:49:20,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:49:20,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:49:20,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:49:22,646.646 INFO    ] ================================================
[2026-06-05 10:49:22,661.661 INFO    ] Launching Daemon at Fri Jun  5 10:49:22 IST 2026
[2026-06-05 10:49:22,672.672 INFO    ] ================================================
[2026-06-05 10:49:23,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:49:23
[2026-06-05 10:49:23,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:49:24,288.288 INFO    ] Initializing speech engine...
[2026-06-05 10:49:24,296.296 INFO    ] 2026-06-05 10:49:24
[2026-06-05 10:49:24,566.566 INFO    ] 2026-06-05 10:49:24
[2026-06-05 10:49:24,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:49:24,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:49:24,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:49:24,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:49:25,042.042 INFO    ] time= 05/06/2026 10:49:24
[2026-06-05 10:49:25,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:49:25,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:49:25,266.266 INFO    ] No existing commands found in stream
[2026-06-05 10:49:30,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:49:30,297.297 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 10:49:31,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:49:31,680.680 INFO    ] Checking for system updates...
[2026-06-05 10:49:31,726.726 INFO    ] 200
[2026-06-05 10:49:31,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:31,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:49:31,792.792 INFO    ] No update needed
[2026-06-05 10:49:31,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 10:49:31,837.837 INFO    ] 200
[2026-06-05 10:49:31,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:31,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:49:31,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:49:31,939.939 INFO    ] No camera update needed
[2026-06-05 10:49:31,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:49:31,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:49:31,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:49:31,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:49:34,004.004 INFO    ] ================================================
[2026-06-05 10:49:34,019.019 INFO    ] Launching Daemon at Fri Jun  5 10:49:34 IST 2026
[2026-06-05 10:49:34,029.029 INFO    ] ================================================
[2026-06-05 10:49:34,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:49:34
[2026-06-05 10:49:35,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:49:35,651.651 INFO    ] Initializing speech engine...
[2026-06-05 10:49:35,663.663 INFO    ] 2026-06-05 10:49:35
[2026-06-05 10:49:35,975.975 INFO    ] 2026-06-05 10:49:35
[2026-06-05 10:49:36,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:49:36,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:49:36,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:49:36,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:49:36,480.480 INFO    ] time= 05/06/2026 10:49:36
[2026-06-05 10:49:36,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:49:36,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:49:36,632.632 INFO    ] No existing commands found in stream
[2026-06-05 10:49:41,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:49:41,649.649 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 10:49:43,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:49:43,238.238 INFO    ] Checking for system updates...
[2026-06-05 10:49:43,278.278 INFO    ] 200
[2026-06-05 10:49:43,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:43,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:49:43,338.338 INFO    ] No update needed
[2026-06-05 10:49:43,341.341 INFO    ] Checking for camera pi updates...
[2026-06-05 10:49:43,377.377 INFO    ] 200
[2026-06-05 10:49:43,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:43,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:49:43,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:49:43,470.470 INFO    ] No camera update needed
[2026-06-05 10:49:43,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:49:43,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:49:43,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:49:43,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:49:45,524.524 INFO    ] ================================================
[2026-06-05 10:49:45,540.540 INFO    ] Launching Daemon at Fri Jun  5 10:49:45 IST 2026
[2026-06-05 10:49:45,551.551 INFO    ] ================================================
[2026-06-05 10:49:46,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:49:46
[2026-06-05 10:49:46,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:49:46,978.978 INFO    ] Initializing speech engine...
[2026-06-05 10:49:46,989.989 INFO    ] 2026-06-05 10:49:46
[2026-06-05 10:49:47,233.233 INFO    ] 2026-06-05 10:49:47
[2026-06-05 10:49:47,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:49:47,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:49:47,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:49:47,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:49:47,699.699 INFO    ] time= 05/06/2026 10:49:47
[2026-06-05 10:49:47,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:49:47,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:49:47,935.935 INFO    ] No existing commands found in stream
[2026-06-05 10:49:52,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:49:52,958.958 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 10:49:54,009.009 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:49:54,011.011 INFO    ] Checking for system updates...
[2026-06-05 10:49:54,047.047 INFO    ] 200
[2026-06-05 10:49:54,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:54,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:49:54,113.113 INFO    ] No update needed
[2026-06-05 10:49:54,115.115 INFO    ] Checking for camera pi updates...
[2026-06-05 10:49:54,149.149 INFO    ] 200
[2026-06-05 10:49:54,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:49:54,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:49:54,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:49:54,241.241 INFO    ] No camera update needed
[2026-06-05 10:49:54,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:49:54,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:49:54,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:49:54,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:49:56,300.300 INFO    ] ================================================
[2026-06-05 10:49:56,317.317 INFO    ] Launching Daemon at Fri Jun  5 10:49:56 IST 2026
[2026-06-05 10:49:56,331.331 INFO    ] ================================================
[2026-06-05 10:49:56,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:49:56
[2026-06-05 10:49:57,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:49:57,755.755 INFO    ] Initializing speech engine...
[2026-06-05 10:49:57,765.765 INFO    ] 2026-06-05 10:49:57
[2026-06-05 10:49:58,011.011 INFO    ] 2026-06-05 10:49:58
[2026-06-05 10:49:58,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:50:00,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:50:00,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:50:00,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:50:00,214.214 INFO    ] time= 05/06/2026 10:50:00
[2026-06-05 10:50:00,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:50:00,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:50:00,352.352 INFO    ] No existing commands found in stream
[2026-06-05 10:50:05,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:50:05,368.368 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 10:50:09,078.078 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:50:09,081.081 INFO    ] Checking for system updates...
[2026-06-05 10:50:09,117.117 INFO    ] 200
[2026-06-05 10:50:09,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:09,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:50:09,175.175 INFO    ] No update needed
[2026-06-05 10:50:09,178.178 INFO    ] Checking for camera pi updates...
[2026-06-05 10:50:09,212.212 INFO    ] 200
[2026-06-05 10:50:09,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:09,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:50:09,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:50:09,322.322 INFO    ] No camera update needed
[2026-06-05 10:50:09,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:50:09,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:50:09,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:50:09,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:50:11,380.380 INFO    ] ================================================
[2026-06-05 10:50:11,395.395 INFO    ] Launching Daemon at Fri Jun  5 10:50:11 IST 2026
[2026-06-05 10:50:11,407.407 INFO    ] ================================================
[2026-06-05 10:50:12,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:50:12
[2026-06-05 10:50:12,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:50:12,960.960 INFO    ] Initializing speech engine...
[2026-06-05 10:50:12,970.970 INFO    ] 2026-06-05 10:50:12
[2026-06-05 10:50:13,223.223 INFO    ] 2026-06-05 10:50:13
[2026-06-05 10:50:13,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:50:13,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:50:13,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:50:13,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:50:13,776.776 INFO    ] time= 05/06/2026 10:50:13
[2026-06-05 10:50:13,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:50:13,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:50:14,027.027 INFO    ] No existing commands found in stream
[2026-06-05 10:50:19,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:50:19,052.052 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 10:50:20,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:50:20,866.866 INFO    ] Checking for system updates...
[2026-06-05 10:50:20,902.902 INFO    ] 200
[2026-06-05 10:50:20,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:20,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:50:20,968.968 INFO    ] No update needed
[2026-06-05 10:50:20,970.970 INFO    ] Checking for camera pi updates...
[2026-06-05 10:50:21,004.004 INFO    ] 200
[2026-06-05 10:50:21,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:21,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:50:21,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:50:21,103.103 INFO    ] No camera update needed
[2026-06-05 10:50:21,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:50:21,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:50:21,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:50:21,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:50:23,159.159 INFO    ] ================================================
[2026-06-05 10:50:23,174.174 INFO    ] Launching Daemon at Fri Jun  5 10:50:23 IST 2026
[2026-06-05 10:50:23,187.187 INFO    ] ================================================
[2026-06-05 10:50:23,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:50:23
[2026-06-05 10:50:24,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:50:24,691.691 INFO    ] Initializing speech engine...
[2026-06-05 10:50:24,696.696 INFO    ] 2026-06-05 10:50:24
[2026-06-05 10:50:24,996.996 INFO    ] 2026-06-05 10:50:24
[2026-06-05 10:50:25,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:50:25,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:50:25,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:50:25,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:50:25,377.377 INFO    ] time= 05/06/2026 10:50:25
[2026-06-05 10:50:25,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:50:25,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:50:25,502.502 INFO    ] No existing commands found in stream
[2026-06-05 10:50:30,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:50:30,517.517 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 10:50:33,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:50:33,348.348 INFO    ] Checking for system updates...
[2026-06-05 10:50:33,385.385 INFO    ] 200
[2026-06-05 10:50:33,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:33,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:50:33,443.443 INFO    ] No update needed
[2026-06-05 10:50:33,445.445 INFO    ] Checking for camera pi updates...
[2026-06-05 10:50:33,483.483 INFO    ] 200
[2026-06-05 10:50:33,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:33,533.533 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:50:33,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:50:33,582.582 INFO    ] No camera update needed
[2026-06-05 10:50:33,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:50:33,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:50:33,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:50:33,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:50:35,637.637 INFO    ] ================================================
[2026-06-05 10:50:35,652.652 INFO    ] Launching Daemon at Fri Jun  5 10:50:35 IST 2026
[2026-06-05 10:50:35,663.663 INFO    ] ================================================
[2026-06-05 10:50:36,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:50:36
[2026-06-05 10:50:36,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:50:37,080.080 INFO    ] Initializing speech engine...
[2026-06-05 10:50:37,089.089 INFO    ] 2026-06-05 10:50:37
[2026-06-05 10:50:37,388.388 INFO    ] 2026-06-05 10:50:37
[2026-06-05 10:50:37,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:50:37,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:50:37,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:50:37,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:50:37,865.865 INFO    ] time= 05/06/2026 10:50:37
[2026-06-05 10:50:37,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:50:37,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:50:38,042.042 INFO    ] No existing commands found in stream
[2026-06-05 10:50:43,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:50:43,056.056 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 10:50:44,894.894 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:50:44,897.897 INFO    ] Checking for system updates...
[2026-06-05 10:50:44,935.935 INFO    ] 200
[2026-06-05 10:50:44,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:44,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:50:44,993.993 INFO    ] No update needed
[2026-06-05 10:50:44,995.995 INFO    ] Checking for camera pi updates...
[2026-06-05 10:50:45,029.029 INFO    ] 200
[2026-06-05 10:50:45,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:45,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:50:45,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:50:45,128.128 INFO    ] No camera update needed
[2026-06-05 10:50:45,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:50:45,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:50:45,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:50:45,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:50:47,186.186 INFO    ] ================================================
[2026-06-05 10:50:47,201.201 INFO    ] Launching Daemon at Fri Jun  5 10:50:47 IST 2026
[2026-06-05 10:50:47,212.212 INFO    ] ================================================
[2026-06-05 10:50:47,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:50:47
[2026-06-05 10:50:48,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:50:48,637.637 INFO    ] Initializing speech engine...
[2026-06-05 10:50:48,657.657 INFO    ] 2026-06-05 10:50:48
[2026-06-05 10:50:48,925.925 INFO    ] 2026-06-05 10:50:48
[2026-06-05 10:50:48,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:50:49,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:50:49,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:50:49,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:50:49,354.354 INFO    ] time= 05/06/2026 10:50:49
[2026-06-05 10:50:49,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:50:49,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:50:49,557.557 INFO    ] No existing commands found in stream
[2026-06-05 10:50:54,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:50:54,585.585 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 10:50:58,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:50:58,248.248 INFO    ] Checking for system updates...
[2026-06-05 10:50:58,284.284 INFO    ] 200
[2026-06-05 10:50:58,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:58,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:50:58,343.343 INFO    ] No update needed
[2026-06-05 10:50:58,345.345 INFO    ] Checking for camera pi updates...
[2026-06-05 10:50:58,383.383 INFO    ] 200
[2026-06-05 10:50:58,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:50:58,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:50:58,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:50:58,479.479 INFO    ] No camera update needed
[2026-06-05 10:50:58,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:50:58,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:50:58,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:50:58,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:51:00,536.536 INFO    ] ================================================
[2026-06-05 10:51:00,551.551 INFO    ] Launching Daemon at Fri Jun  5 10:51:00 IST 2026
[2026-06-05 10:51:00,562.562 INFO    ] ================================================
[2026-06-05 10:51:01,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:51:01
[2026-06-05 10:51:01,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:51:02,228.228 INFO    ] Initializing speech engine...
[2026-06-05 10:51:02,237.237 INFO    ] 2026-06-05 10:51:02
[2026-06-05 10:51:02,513.513 INFO    ] 2026-06-05 10:51:02
[2026-06-05 10:51:02,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:51:02,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:51:02,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:51:03,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:51:03,040.040 INFO    ] time= 05/06/2026 10:51:03
[2026-06-05 10:51:03,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:51:03,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:51:03,272.272 INFO    ] No existing commands found in stream
[2026-06-05 10:51:08,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:51:08,295.295 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 10:51:11,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:51:11,457.457 INFO    ] Checking for system updates...
[2026-06-05 10:51:11,496.496 INFO    ] 200
[2026-06-05 10:51:11,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:51:11,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:51:11,554.554 INFO    ] No update needed
[2026-06-05 10:51:11,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 10:51:11,594.594 INFO    ] 200
[2026-06-05 10:51:11,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:51:11,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:51:11,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:51:11,671.671 INFO    ] No camera update needed
[2026-06-05 10:51:11,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:51:11,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:51:11,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:51:11,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:51:13,727.727 INFO    ] ================================================
[2026-06-05 10:51:13,742.742 INFO    ] Launching Daemon at Fri Jun  5 10:51:13 IST 2026
[2026-06-05 10:51:13,752.752 INFO    ] ================================================
[2026-06-05 10:51:14,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:51:14
[2026-06-05 10:51:14,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:51:15,251.251 INFO    ] Initializing speech engine...
[2026-06-05 10:51:15,258.258 INFO    ] 2026-06-05 10:51:15
[2026-06-05 10:51:15,520.520 INFO    ] 2026-06-05 10:51:15
[2026-06-05 10:51:15,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:51:15,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:51:15,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:51:15,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:51:15,989.989 INFO    ] time= 05/06/2026 10:51:15
[2026-06-05 10:51:16,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:51:16,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:51:16,150.150 INFO    ] No existing commands found in stream
[2026-06-05 10:51:21,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:51:21,160.160 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 10:51:23,791.791 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:51:23,793.793 INFO    ] Checking for system updates...
[2026-06-05 10:51:23,834.834 INFO    ] 200
[2026-06-05 10:51:23,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:51:23,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:51:23,894.894 INFO    ] No update needed
[2026-06-05 10:51:23,897.897 INFO    ] Checking for camera pi updates...
[2026-06-05 10:51:23,932.932 INFO    ] 200
[2026-06-05 10:51:23,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:51:23,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:51:24,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:51:24,130.130 INFO    ] No camera update needed
[2026-06-05 10:51:24,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:51:24,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:51:24,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:51:24,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:51:26,190.190 INFO    ] ================================================
[2026-06-05 10:51:26,205.205 INFO    ] Launching Daemon at Fri Jun  5 10:51:26 IST 2026
[2026-06-05 10:51:26,216.216 INFO    ] ================================================
[2026-06-05 10:51:26,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:51:26
[2026-06-05 10:51:27,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:51:27,622.622 INFO    ] Initializing speech engine...
[2026-06-05 10:51:27,646.646 INFO    ] 2026-06-05 10:51:27
[2026-06-05 10:51:27,901.901 INFO    ] 2026-06-05 10:51:27
[2026-06-05 10:51:27,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:51:28,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:51:28,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:51:30,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:51:30,046.046 INFO    ] time= 05/06/2026 10:51:30
[2026-06-05 10:51:30,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:51:30,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:51:30,157.157 INFO    ] No existing commands found in stream
[2026-06-05 10:51:35,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:51:35,176.176 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 10:51:38,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:51:38,829.829 INFO    ] Checking for system updates...
[2026-06-05 10:51:38,866.866 INFO    ] 200
[2026-06-05 10:51:38,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:51:38,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:51:38,926.926 INFO    ] No update needed
[2026-06-05 10:51:38,928.928 INFO    ] Checking for camera pi updates...
[2026-06-05 10:51:38,966.966 INFO    ] 200
[2026-06-05 10:51:38,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:51:39,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:51:39,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:51:39,065.065 INFO    ] No camera update needed
[2026-06-05 10:51:39,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:51:39,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:51:39,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:51:39,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:51:41,122.122 INFO    ] ================================================
[2026-06-05 10:51:41,137.137 INFO    ] Launching Daemon at Fri Jun  5 10:51:41 IST 2026
[2026-06-05 10:51:41,148.148 INFO    ] ================================================
[2026-06-05 10:51:41,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:51:41
[2026-06-05 10:51:42,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:51:42,609.609 INFO    ] Initializing speech engine...
[2026-06-05 10:51:42,623.623 INFO    ] 2026-06-05 10:51:42
[2026-06-05 10:51:42,877.877 INFO    ] 2026-06-05 10:51:42
[2026-06-05 10:51:42,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:51:43,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:51:43,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:51:43,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:51:43,319.319 INFO    ] time= 05/06/2026 10:51:43
[2026-06-05 10:51:43,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:51:43,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:51:43,583.583 INFO    ] No existing commands found in stream
[2026-06-05 10:51:48,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:51:48,608.608 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 10:51:49,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:51:49,816.816 INFO    ] Checking for system updates...
[2026-06-05 10:51:49,852.852 INFO    ] 200
[2026-06-05 10:51:49,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:51:49,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:51:49,912.912 INFO    ] No update needed
[2026-06-05 10:51:49,914.914 INFO    ] Checking for camera pi updates...
[2026-06-05 10:51:49,947.947 INFO    ] 200
[2026-06-05 10:51:49,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:51:49,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:51:50,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:51:50,038.038 INFO    ] No camera update needed
[2026-06-05 10:51:50,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:51:50,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:51:50,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:51:50,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:51:52,093.093 INFO    ] ================================================
[2026-06-05 10:51:52,109.109 INFO    ] Launching Daemon at Fri Jun  5 10:51:52 IST 2026
[2026-06-05 10:51:52,120.120 INFO    ] ================================================
[2026-06-05 10:51:52,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:51:52
[2026-06-05 10:51:53,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:51:53,751.751 INFO    ] Initializing speech engine...
[2026-06-05 10:51:53,766.766 INFO    ] 2026-06-05 10:51:53
[2026-06-05 10:51:54,048.048 INFO    ] 2026-06-05 10:51:54
[2026-06-05 10:51:54,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:51:54,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:51:54,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:51:54,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:51:54,600.600 INFO    ] time= 05/06/2026 10:51:54
[2026-06-05 10:51:54,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:51:54,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:51:54,756.756 INFO    ] No existing commands found in stream
[2026-06-05 10:51:59,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:51:59,778.778 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 10:52:02,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:52:02,584.584 INFO    ] Checking for system updates...
[2026-06-05 10:52:02,634.634 INFO    ] 200
[2026-06-05 10:52:02,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 10:52:02,641.641 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 10:52:02,644.644 INFO    ] Checking for camera pi updates...
[2026-06-05 10:52:02,708.708 INFO    ] 200
[2026-06-05 10:52:02,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 10:52:02,727.727 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 10:52:02,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:52:02,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:52:02,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:52:02,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:52:04,793.793 INFO    ] ================================================
[2026-06-05 10:52:04,809.809 INFO    ] Launching Daemon at Fri Jun  5 10:52:04 IST 2026
[2026-06-05 10:52:04,820.820 INFO    ] ================================================
[2026-06-05 10:52:05,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:52:05
[2026-06-05 10:52:06,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:52:06,302.302 INFO    ] Initializing speech engine...
[2026-06-05 10:52:06,316.316 INFO    ] 2026-06-05 10:52:06
[2026-06-05 10:52:06,597.597 INFO    ] 2026-06-05 10:52:06
[2026-06-05 10:52:06,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:52:06,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:52:06,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:52:07,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:52:07,102.102 INFO    ] time= 05/06/2026 10:52:07
[2026-06-05 10:52:07,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:52:07,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:52:07,306.306 INFO    ] No existing commands found in stream
[2026-06-05 10:52:12,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:52:12,336.336 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 10:52:16,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:52:16,085.085 INFO    ] Checking for system updates...
[2026-06-05 10:52:16,124.124 INFO    ] 200
[2026-06-05 10:52:16,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:52:16,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:52:16,189.189 INFO    ] No update needed
[2026-06-05 10:52:16,191.191 INFO    ] Checking for camera pi updates...
[2026-06-05 10:52:16,231.231 INFO    ] 200
[2026-06-05 10:52:16,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:52:16,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:52:16,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:52:16,346.346 INFO    ] No camera update needed
[2026-06-05 10:52:16,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:52:16,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:52:16,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:52:16,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:52:18,406.406 INFO    ] ================================================
[2026-06-05 10:52:18,421.421 INFO    ] Launching Daemon at Fri Jun  5 10:52:18 IST 2026
[2026-06-05 10:52:18,432.432 INFO    ] ================================================
[2026-06-05 10:52:19,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:52:18
[2026-06-05 10:52:19,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:52:19,836.836 INFO    ] Initializing speech engine...
[2026-06-05 10:52:19,844.844 INFO    ] 2026-06-05 10:52:19
[2026-06-05 10:52:20,118.118 INFO    ] 2026-06-05 10:52:20
[2026-06-05 10:52:20,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:52:20,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:52:20,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:52:20,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:52:20,590.590 INFO    ] time= 05/06/2026 10:52:20
[2026-06-05 10:52:20,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:52:20,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:52:20,772.772 INFO    ] No existing commands found in stream
[2026-06-05 10:52:25,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:52:25,787.787 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 10:52:30,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:52:30,373.373 INFO    ] Checking for system updates...
[2026-06-05 10:52:30,409.409 INFO    ] 200
[2026-06-05 10:52:30,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:52:30,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:52:30,467.467 INFO    ] No update needed
[2026-06-05 10:52:30,469.469 INFO    ] Checking for camera pi updates...
[2026-06-05 10:52:30,507.507 INFO    ] 200
[2026-06-05 10:52:30,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:52:30,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:52:30,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:52:30,605.605 INFO    ] No camera update needed
[2026-06-05 10:52:30,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:52:30,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:52:30,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:52:30,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:52:32,662.662 INFO    ] ================================================
[2026-06-05 10:52:32,679.679 INFO    ] Launching Daemon at Fri Jun  5 10:52:32 IST 2026
[2026-06-05 10:52:32,692.692 INFO    ] ================================================
[2026-06-05 10:52:33,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:52:33
[2026-06-05 10:52:34,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:52:34,368.368 INFO    ] Initializing speech engine...
[2026-06-05 10:52:34,376.376 INFO    ] 2026-06-05 10:52:34
[2026-06-05 10:52:34,667.667 INFO    ] 2026-06-05 10:52:34
[2026-06-05 10:52:34,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:52:34,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:52:34,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:52:35,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:52:35,145.145 INFO    ] time= 05/06/2026 10:52:35
[2026-06-05 10:52:35,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:52:35,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:52:35,361.361 INFO    ] No existing commands found in stream
[2026-06-05 10:52:40,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:52:40,390.390 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 10:52:43,628.628 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:52:43,631.631 INFO    ] Checking for system updates...
[2026-06-05 10:52:43,674.674 INFO    ] 200
[2026-06-05 10:52:43,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:52:43,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:52:43,742.742 INFO    ] No update needed
[2026-06-05 10:52:43,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 10:52:43,781.781 INFO    ] 200
[2026-06-05 10:52:43,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:52:43,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:52:43,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:52:43,876.876 INFO    ] No camera update needed
[2026-06-05 10:52:43,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:52:43,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:52:43,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:52:43,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:52:45,936.936 INFO    ] ================================================
[2026-06-05 10:52:45,952.952 INFO    ] Launching Daemon at Fri Jun  5 10:52:45 IST 2026
[2026-06-05 10:52:45,963.963 INFO    ] ================================================
[2026-06-05 10:52:46,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:52:46
[2026-06-05 10:52:47,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:52:47,418.418 INFO    ] Initializing speech engine...
[2026-06-05 10:52:47,429.429 INFO    ] 2026-06-05 10:52:47
[2026-06-05 10:52:47,691.691 INFO    ] 2026-06-05 10:52:47
[2026-06-05 10:52:47,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:52:47,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:52:47,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:52:48,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:52:48,180.180 INFO    ] time= 05/06/2026 10:52:48
[2026-06-05 10:52:48,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:52:48,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:52:48,389.389 INFO    ] No existing commands found in stream
[2026-06-05 10:52:53,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:52:53,419.419 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 10:52:55,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:52:55,625.625 INFO    ] Checking for system updates...
[2026-06-05 10:52:55,660.660 INFO    ] 200
[2026-06-05 10:52:55,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:52:55,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:52:55,720.720 INFO    ] No update needed
[2026-06-05 10:52:55,722.722 INFO    ] Checking for camera pi updates...
[2026-06-05 10:52:55,756.756 INFO    ] 200
[2026-06-05 10:52:55,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:52:55,805.805 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:52:55,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:52:55,859.859 INFO    ] No camera update needed
[2026-06-05 10:52:55,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:52:55,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:52:55,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:52:55,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:52:57,916.916 INFO    ] ================================================
[2026-06-05 10:52:57,931.931 INFO    ] Launching Daemon at Fri Jun  5 10:52:57 IST 2026
[2026-06-05 10:52:57,942.942 INFO    ] ================================================
[2026-06-05 10:52:58,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:52:58
[2026-06-05 10:52:59,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:52:59,376.376 INFO    ] Initializing speech engine...
[2026-06-05 10:52:59,385.385 INFO    ] 2026-06-05 10:52:59
[2026-06-05 10:52:59,637.637 INFO    ] 2026-06-05 10:52:59
[2026-06-05 10:52:59,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:53:01,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:53:01,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:53:01,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:53:01,154.154 INFO    ] time= 05/06/2026 10:53:01
[2026-06-05 10:53:01,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:53:01,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:53:01,766.766 INFO    ] No existing commands found in stream
[2026-06-05 10:53:06,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:53:06,779.779 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 10:53:07,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:53:07,242.242 INFO    ] Checking for system updates...
[2026-06-05 10:53:07,279.279 INFO    ] 200
[2026-06-05 10:53:07,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:07,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:53:07,338.338 INFO    ] No update needed
[2026-06-05 10:53:07,340.340 INFO    ] Checking for camera pi updates...
[2026-06-05 10:53:07,377.377 INFO    ] 200
[2026-06-05 10:53:07,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:07,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:53:07,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:53:07,467.467 INFO    ] No camera update needed
[2026-06-05 10:53:07,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:53:07,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:53:07,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:53:07,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:53:09,523.523 INFO    ] ================================================
[2026-06-05 10:53:09,539.539 INFO    ] Launching Daemon at Fri Jun  5 10:53:09 IST 2026
[2026-06-05 10:53:09,552.552 INFO    ] ================================================
[2026-06-05 10:53:10,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:53:10
[2026-06-05 10:53:10,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:53:11,142.142 INFO    ] Initializing speech engine...
[2026-06-05 10:53:11,153.153 INFO    ] 2026-06-05 10:53:11
[2026-06-05 10:53:11,424.424 INFO    ] 2026-06-05 10:53:11
[2026-06-05 10:53:11,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:53:11,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:53:11,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:53:11,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:53:11,925.925 INFO    ] time= 05/06/2026 10:53:11
[2026-06-05 10:53:11,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:53:11,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:53:12,147.147 INFO    ] No existing commands found in stream
[2026-06-05 10:53:17,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:53:17,162.162 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 10:53:18,730.730 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:53:18,733.733 INFO    ] Checking for system updates...
[2026-06-05 10:53:18,770.770 INFO    ] 200
[2026-06-05 10:53:18,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:18,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:53:18,832.832 INFO    ] No update needed
[2026-06-05 10:53:18,835.835 INFO    ] Checking for camera pi updates...
[2026-06-05 10:53:18,871.871 INFO    ] 200
[2026-06-05 10:53:18,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:18,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:53:18,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:53:18,981.981 INFO    ] No camera update needed
[2026-06-05 10:53:18,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:53:18,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:53:18,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:53:18,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:53:21,036.036 INFO    ] ================================================
[2026-06-05 10:53:21,051.051 INFO    ] Launching Daemon at Fri Jun  5 10:53:21 IST 2026
[2026-06-05 10:53:21,062.062 INFO    ] ================================================
[2026-06-05 10:53:21,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:53:21
[2026-06-05 10:53:22,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:53:22,527.527 INFO    ] Initializing speech engine...
[2026-06-05 10:53:22,533.533 INFO    ] 2026-06-05 10:53:22
[2026-06-05 10:53:22,781.781 INFO    ] 2026-06-05 10:53:22
[2026-06-05 10:53:22,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:53:23,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:53:23,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:53:23,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:53:23,251.251 INFO    ] time= 05/06/2026 10:53:23
[2026-06-05 10:53:23,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:53:23,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:53:23,476.476 INFO    ] No existing commands found in stream
[2026-06-05 10:53:28,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:53:28,503.503 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 10:53:30,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:53:30,816.816 INFO    ] Checking for system updates...
[2026-06-05 10:53:30,855.855 INFO    ] 200
[2026-06-05 10:53:30,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:30,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:53:30,918.918 INFO    ] No update needed
[2026-06-05 10:53:30,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 10:53:30,957.957 INFO    ] 200
[2026-06-05 10:53:30,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:31,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:53:31,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:53:31,149.149 INFO    ] No camera update needed
[2026-06-05 10:53:31,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:53:31,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:53:31,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:53:31,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:53:33,206.206 INFO    ] ================================================
[2026-06-05 10:53:33,221.221 INFO    ] Launching Daemon at Fri Jun  5 10:53:33 IST 2026
[2026-06-05 10:53:33,232.232 INFO    ] ================================================
[2026-06-05 10:53:33,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:53:33
[2026-06-05 10:53:34,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:53:34,682.682 INFO    ] Initializing speech engine...
[2026-06-05 10:53:34,689.689 INFO    ] 2026-06-05 10:53:34
[2026-06-05 10:53:34,950.950 INFO    ] 2026-06-05 10:53:34
[2026-06-05 10:53:34,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:53:35,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:53:35,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:53:35,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:53:35,310.310 INFO    ] time= 05/06/2026 10:53:35
[2026-06-05 10:53:35,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:53:35,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:53:35,502.502 INFO    ] No existing commands found in stream
[2026-06-05 10:53:40,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:53:40,525.525 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 10:53:42,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:53:42,109.109 INFO    ] Checking for system updates...
[2026-06-05 10:53:42,147.147 INFO    ] 200
[2026-06-05 10:53:42,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:42,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:53:42,209.209 INFO    ] No update needed
[2026-06-05 10:53:42,212.212 INFO    ] Checking for camera pi updates...
[2026-06-05 10:53:42,245.245 INFO    ] 200
[2026-06-05 10:53:42,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:42,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:53:42,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:53:42,339.339 INFO    ] No camera update needed
[2026-06-05 10:53:42,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:53:42,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:53:42,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:53:42,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:53:44,401.401 INFO    ] ================================================
[2026-06-05 10:53:44,416.416 INFO    ] Launching Daemon at Fri Jun  5 10:53:44 IST 2026
[2026-06-05 10:53:44,427.427 INFO    ] ================================================
[2026-06-05 10:53:45,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:53:45
[2026-06-05 10:53:45,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:53:45,985.985 INFO    ] Initializing speech engine...
[2026-06-05 10:53:45,990.990 INFO    ] 2026-06-05 10:53:45
[2026-06-05 10:53:46,282.282 INFO    ] 2026-06-05 10:53:46
[2026-06-05 10:53:46,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:53:46,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:53:46,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:53:46,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:53:46,810.810 INFO    ] time= 05/06/2026 10:53:46
[2026-06-05 10:53:46,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:53:46,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:53:46,956.956 INFO    ] No existing commands found in stream
[2026-06-05 10:53:51,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:53:51,981.981 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 10:53:56,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:53:56,378.378 INFO    ] Checking for system updates...
[2026-06-05 10:53:56,416.416 INFO    ] 200
[2026-06-05 10:53:56,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:56,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:53:56,474.474 INFO    ] No update needed
[2026-06-05 10:53:56,476.476 INFO    ] Checking for camera pi updates...
[2026-06-05 10:53:56,510.510 INFO    ] 200
[2026-06-05 10:53:56,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:53:56,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:53:56,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:53:56,603.603 INFO    ] No camera update needed
[2026-06-05 10:53:56,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:53:56,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:53:56,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:53:56,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:53:58,659.659 INFO    ] ================================================
[2026-06-05 10:53:58,674.674 INFO    ] Launching Daemon at Fri Jun  5 10:53:58 IST 2026
[2026-06-05 10:53:58,684.684 INFO    ] ================================================
[2026-06-05 10:53:59,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:53:59
[2026-06-05 10:53:59,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:54:00,104.104 INFO    ] Initializing speech engine...
[2026-06-05 10:54:00,113.113 INFO    ] 2026-06-05 10:54:00
[2026-06-05 10:54:00,358.358 INFO    ] 2026-06-05 10:54:00
[2026-06-05 10:54:00,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:54:00,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:54:00,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:54:00,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:54:00,833.833 INFO    ] time= 05/06/2026 10:54:00
[2026-06-05 10:54:00,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:54:00,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:54:01,049.049 INFO    ] No existing commands found in stream
[2026-06-05 10:54:06,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:54:06,082.082 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 10:54:06,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:54:06,802.802 INFO    ] Checking for system updates...
[2026-06-05 10:54:06,842.842 INFO    ] 200
[2026-06-05 10:54:06,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:06,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:54:06,906.906 INFO    ] No update needed
[2026-06-05 10:54:06,908.908 INFO    ] Checking for camera pi updates...
[2026-06-05 10:54:06,942.942 INFO    ] 200
[2026-06-05 10:54:06,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:06,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:54:07,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:54:07,040.040 INFO    ] No camera update needed
[2026-06-05 10:54:07,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:54:07,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:54:07,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:54:07,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:54:09,099.099 INFO    ] ================================================
[2026-06-05 10:54:09,114.114 INFO    ] Launching Daemon at Fri Jun  5 10:54:09 IST 2026
[2026-06-05 10:54:09,125.125 INFO    ] ================================================
[2026-06-05 10:54:09,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:54:09
[2026-06-05 10:54:10,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:54:10,631.631 INFO    ] Initializing speech engine...
[2026-06-05 10:54:10,643.643 INFO    ] 2026-06-05 10:54:10
[2026-06-05 10:54:10,956.956 INFO    ] 2026-06-05 10:54:10
[2026-06-05 10:54:10,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:54:11,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:54:11,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:54:11,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:54:11,329.329 INFO    ] time= 05/06/2026 10:54:11
[2026-06-05 10:54:11,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:54:11,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:54:11,484.484 INFO    ] No existing commands found in stream
[2026-06-05 10:54:16,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:54:16,500.500 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 10:54:19,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:54:19,934.934 INFO    ] Checking for system updates...
[2026-06-05 10:54:19,973.973 INFO    ] 200
[2026-06-05 10:54:19,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:20,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:54:20,031.031 INFO    ] No update needed
[2026-06-05 10:54:20,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 10:54:20,073.073 INFO    ] 200
[2026-06-05 10:54:20,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:20,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:54:20,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:54:20,174.174 INFO    ] No camera update needed
[2026-06-05 10:54:20,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:54:20,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:54:20,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:54:20,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:54:22,229.229 INFO    ] ================================================
[2026-06-05 10:54:22,244.244 INFO    ] Launching Daemon at Fri Jun  5 10:54:22 IST 2026
[2026-06-05 10:54:22,254.254 INFO    ] ================================================
[2026-06-05 10:54:22,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:54:22
[2026-06-05 10:54:23,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:54:23,706.706 INFO    ] Initializing speech engine...
[2026-06-05 10:54:23,712.712 INFO    ] 2026-06-05 10:54:23
[2026-06-05 10:54:24,008.008 INFO    ] 2026-06-05 10:54:23
[2026-06-05 10:54:24,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:54:24,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:54:24,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:54:24,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:54:24,425.425 INFO    ] time= 05/06/2026 10:54:24
[2026-06-05 10:54:24,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:54:24,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:54:24,513.513 INFO    ] No existing commands found in stream
[2026-06-05 10:54:29,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:54:29,546.546 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 10:54:30,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:54:30,718.718 INFO    ] Checking for system updates...
[2026-06-05 10:54:30,759.759 INFO    ] 200
[2026-06-05 10:54:30,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:30,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:54:30,832.832 INFO    ] No update needed
[2026-06-05 10:54:30,835.835 INFO    ] Checking for camera pi updates...
[2026-06-05 10:54:30,873.873 INFO    ] 200
[2026-06-05 10:54:30,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:30,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:54:30,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:54:30,979.979 INFO    ] No camera update needed
[2026-06-05 10:54:30,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:54:30,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:54:30,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:54:30,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:54:33,037.037 INFO    ] ================================================
[2026-06-05 10:54:33,053.053 INFO    ] Launching Daemon at Fri Jun  5 10:54:33 IST 2026
[2026-06-05 10:54:33,064.064 INFO    ] ================================================
[2026-06-05 10:54:33,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:54:33
[2026-06-05 10:54:34,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:54:34,694.694 INFO    ] Initializing speech engine...
[2026-06-05 10:54:34,703.703 INFO    ] 2026-06-05 10:54:34
[2026-06-05 10:54:34,953.953 INFO    ] 2026-06-05 10:54:34
[2026-06-05 10:54:34,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:54:35,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:54:35,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:54:35,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:54:35,428.428 INFO    ] time= 05/06/2026 10:54:35
[2026-06-05 10:54:35,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:54:35,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:54:35,677.677 INFO    ] No existing commands found in stream
[2026-06-05 10:54:40,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:54:40,706.706 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 10:54:44,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:54:44,699.699 INFO    ] Checking for system updates...
[2026-06-05 10:54:44,739.739 INFO    ] 200
[2026-06-05 10:54:44,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:44,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:54:44,798.798 INFO    ] No update needed
[2026-06-05 10:54:44,801.801 INFO    ] Checking for camera pi updates...
[2026-06-05 10:54:44,840.840 INFO    ] 200
[2026-06-05 10:54:44,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:44,885.885 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:54:44,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:54:44,935.935 INFO    ] No camera update needed
[2026-06-05 10:54:44,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:54:44,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:54:44,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:54:44,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:54:47,996.996 INFO    ] ================================================
[2026-06-05 10:54:47,012.012 INFO    ] Launching Daemon at Fri Jun  5 10:54:47 IST 2026
[2026-06-05 10:54:47,023.023 INFO    ] ================================================
[2026-06-05 10:54:47,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:54:47
[2026-06-05 10:54:48,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:54:48,483.483 INFO    ] Initializing speech engine...
[2026-06-05 10:54:48,492.492 INFO    ] 2026-06-05 10:54:48
[2026-06-05 10:54:48,760.760 INFO    ] 2026-06-05 10:54:48
[2026-06-05 10:54:48,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:54:48,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:54:49,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:54:49,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:54:49,222.222 INFO    ] time= 05/06/2026 10:54:49
[2026-06-05 10:54:49,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:54:49,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:54:49,380.380 INFO    ] No existing commands found in stream
[2026-06-05 10:54:54,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:54:54,393.393 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 10:54:57,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:54:57,790.790 INFO    ] Checking for system updates...
[2026-06-05 10:54:57,827.827 INFO    ] 200
[2026-06-05 10:54:57,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:57,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:54:57,892.892 INFO    ] No update needed
[2026-06-05 10:54:57,895.895 INFO    ] Checking for camera pi updates...
[2026-06-05 10:54:57,929.929 INFO    ] 200
[2026-06-05 10:54:57,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:54:57,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:54:58,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:54:58,029.029 INFO    ] No camera update needed
[2026-06-05 10:54:58,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:54:58,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:54:58,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:54:58,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:55:00,085.085 INFO    ] ================================================
[2026-06-05 10:55:00,110.110 INFO    ] Launching Daemon at Fri Jun  5 10:55:00 IST 2026
[2026-06-05 10:55:00,121.121 INFO    ] ================================================
[2026-06-05 10:55:00,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:55:00
[2026-06-05 10:55:01,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:55:02,121.121 INFO    ] Initializing speech engine...
[2026-06-05 10:55:02,195.195 INFO    ] 2026-06-05 10:55:02
[2026-06-05 10:55:02,589.589 INFO    ] 2026-06-05 10:55:02
[2026-06-05 10:55:02,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:55:02,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:55:02,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:55:03,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:55:03,149.149 INFO    ] time= 05/06/2026 10:55:03
[2026-06-05 10:55:03,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:55:03,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:55:03,362.362 INFO    ] No existing commands found in stream
[2026-06-05 10:55:08,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:55:08,391.391 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 10:55:10,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:55:10,219.219 INFO    ] Checking for system updates...
[2026-06-05 10:55:10,260.260 INFO    ] 200
[2026-06-05 10:55:10,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:10,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:55:10,318.318 INFO    ] No update needed
[2026-06-05 10:55:10,321.321 INFO    ] Checking for camera pi updates...
[2026-06-05 10:55:10,354.354 INFO    ] 200
[2026-06-05 10:55:10,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:10,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:55:10,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:55:10,454.454 INFO    ] No camera update needed
[2026-06-05 10:55:10,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:55:10,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:55:10,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:55:10,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:55:12,510.510 INFO    ] ================================================
[2026-06-05 10:55:12,525.525 INFO    ] Launching Daemon at Fri Jun  5 10:55:12 IST 2026
[2026-06-05 10:55:12,536.536 INFO    ] ================================================
[2026-06-05 10:55:13,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:55:13
[2026-06-05 10:55:13,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:55:13,973.973 INFO    ] Initializing speech engine...
[2026-06-05 10:55:13,982.982 INFO    ] 2026-06-05 10:55:13
[2026-06-05 10:55:14,280.280 INFO    ] 2026-06-05 10:55:14
[2026-06-05 10:55:14,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:55:14,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:55:14,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:55:14,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:55:14,698.698 INFO    ] time= 05/06/2026 10:55:14
[2026-06-05 10:55:14,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:55:14,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:55:14,789.789 INFO    ] No existing commands found in stream
[2026-06-05 10:55:19,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:55:19,807.807 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 10:55:22,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:55:22,964.964 INFO    ] Checking for system updates...
[2026-06-05 10:55:23,005.005 INFO    ] 200
[2026-06-05 10:55:23,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:23,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:55:23,069.069 INFO    ] No update needed
[2026-06-05 10:55:23,072.072 INFO    ] Checking for camera pi updates...
[2026-06-05 10:55:23,109.109 INFO    ] 200
[2026-06-05 10:55:23,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:23,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:55:23,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:55:23,215.215 INFO    ] No camera update needed
[2026-06-05 10:55:23,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:55:23,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:55:23,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:55:23,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:55:25,272.272 INFO    ] ================================================
[2026-06-05 10:55:25,287.287 INFO    ] Launching Daemon at Fri Jun  5 10:55:25 IST 2026
[2026-06-05 10:55:25,298.298 INFO    ] ================================================
[2026-06-05 10:55:25,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:55:25
[2026-06-05 10:55:26,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:55:26,869.869 INFO    ] Initializing speech engine...
[2026-06-05 10:55:26,878.878 INFO    ] 2026-06-05 10:55:26
[2026-06-05 10:55:27,151.151 INFO    ] 2026-06-05 10:55:27
[2026-06-05 10:55:27,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:55:27,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:55:27,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:55:27,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:55:27,649.649 INFO    ] time= 05/06/2026 10:55:27
[2026-06-05 10:55:27,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:55:27,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:55:27,860.860 INFO    ] No existing commands found in stream
[2026-06-05 10:55:32,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:55:32,889.889 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 10:55:35,293.293 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:55:35,296.296 INFO    ] Checking for system updates...
[2026-06-05 10:55:35,334.334 INFO    ] 200
[2026-06-05 10:55:35,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:35,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:55:35,401.401 INFO    ] No update needed
[2026-06-05 10:55:35,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 10:55:35,444.444 INFO    ] 200
[2026-06-05 10:55:35,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:35,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:55:35,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:55:35,537.537 INFO    ] No camera update needed
[2026-06-05 10:55:35,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:55:35,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:55:35,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:55:35,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:55:37,598.598 INFO    ] ================================================
[2026-06-05 10:55:37,614.614 INFO    ] Launching Daemon at Fri Jun  5 10:55:37 IST 2026
[2026-06-05 10:55:37,625.625 INFO    ] ================================================
[2026-06-05 10:55:38,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:55:38
[2026-06-05 10:55:38,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:55:39,052.052 INFO    ] Initializing speech engine...
[2026-06-05 10:55:39,080.080 INFO    ] 2026-06-05 10:55:39
[2026-06-05 10:55:39,336.336 INFO    ] 2026-06-05 10:55:39
[2026-06-05 10:55:39,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:55:39,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:55:39,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:55:39,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:55:39,712.712 INFO    ] time= 05/06/2026 10:55:39
[2026-06-05 10:55:39,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:55:39,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:55:39,790.790 INFO    ] No existing commands found in stream
[2026-06-05 10:55:44,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:55:44,829.829 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 10:55:46,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:55:46,329.329 INFO    ] Checking for system updates...
[2026-06-05 10:55:46,371.371 INFO    ] 200
[2026-06-05 10:55:46,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:46,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:55:46,440.440 INFO    ] No update needed
[2026-06-05 10:55:46,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 10:55:46,481.481 INFO    ] 200
[2026-06-05 10:55:46,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:46,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:55:46,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:55:46,591.591 INFO    ] No camera update needed
[2026-06-05 10:55:46,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:55:46,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:55:46,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:55:46,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:55:48,651.651 INFO    ] ================================================
[2026-06-05 10:55:48,668.668 INFO    ] Launching Daemon at Fri Jun  5 10:55:48 IST 2026
[2026-06-05 10:55:48,679.679 INFO    ] ================================================
[2026-06-05 10:55:49,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:55:49
[2026-06-05 10:55:49,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:55:50,138.138 INFO    ] Initializing speech engine...
[2026-06-05 10:55:50,148.148 INFO    ] 2026-06-05 10:55:50
[2026-06-05 10:55:50,401.401 INFO    ] 2026-06-05 10:55:50
[2026-06-05 10:55:50,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:55:50,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:55:50,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:55:50,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:55:50,884.884 INFO    ] time= 05/06/2026 10:55:50
[2026-06-05 10:55:50,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:55:50,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:55:51,108.108 INFO    ] No existing commands found in stream
[2026-06-05 10:55:56,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:55:56,130.130 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 10:55:56,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:55:56,589.589 INFO    ] Checking for system updates...
[2026-06-05 10:55:56,626.626 INFO    ] 200
[2026-06-05 10:55:56,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:56,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:55:56,690.690 INFO    ] No update needed
[2026-06-05 10:55:56,693.693 INFO    ] Checking for camera pi updates...
[2026-06-05 10:55:56,730.730 INFO    ] 200
[2026-06-05 10:55:56,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:55:56,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:55:56,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:55:56,824.824 INFO    ] No camera update needed
[2026-06-05 10:55:56,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:55:56,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:55:56,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:55:56,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:55:58,881.881 INFO    ] ================================================
[2026-06-05 10:55:58,896.896 INFO    ] Launching Daemon at Fri Jun  5 10:55:58 IST 2026
[2026-06-05 10:55:58,907.907 INFO    ] ================================================
[2026-06-05 10:55:59,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:55:59
[2026-06-05 10:56:00,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:56:00,541.541 INFO    ] Initializing speech engine...
[2026-06-05 10:56:00,552.552 INFO    ] 2026-06-05 10:56:00
[2026-06-05 10:56:00,831.831 INFO    ] 2026-06-05 10:56:00
[2026-06-05 10:56:00,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:56:01,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:56:01,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:56:01,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:56:01,379.379 INFO    ] time= 05/06/2026 10:56:01
[2026-06-05 10:56:01,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:56:01,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:56:01,539.539 INFO    ] No existing commands found in stream
[2026-06-05 10:56:06,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:56:06,561.561 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 10:56:07,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:56:07,438.438 INFO    ] Checking for system updates...
[2026-06-05 10:56:07,476.476 INFO    ] 200
[2026-06-05 10:56:07,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:07,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:56:07,536.536 INFO    ] No update needed
[2026-06-05 10:56:07,538.538 INFO    ] Checking for camera pi updates...
[2026-06-05 10:56:07,573.573 INFO    ] 200
[2026-06-05 10:56:07,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:07,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:56:07,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:56:07,670.670 INFO    ] No camera update needed
[2026-06-05 10:56:07,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:56:07,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:56:07,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:56:07,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:56:09,730.730 INFO    ] ================================================
[2026-06-05 10:56:09,744.744 INFO    ] Launching Daemon at Fri Jun  5 10:56:09 IST 2026
[2026-06-05 10:56:09,755.755 INFO    ] ================================================
[2026-06-05 10:56:10,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:56:10
[2026-06-05 10:56:10,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:56:11,305.305 INFO    ] Initializing speech engine...
[2026-06-05 10:56:11,314.314 INFO    ] 2026-06-05 10:56:11
[2026-06-05 10:56:11,603.603 INFO    ] 2026-06-05 10:56:11
[2026-06-05 10:56:11,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:56:11,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:56:11,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:56:12,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:56:12,153.153 INFO    ] time= 05/06/2026 10:56:12
[2026-06-05 10:56:12,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:56:12,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:56:12,299.299 INFO    ] No existing commands found in stream
[2026-06-05 10:56:17,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:56:17,328.328 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 10:56:20,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:56:20,186.186 INFO    ] Checking for system updates...
[2026-06-05 10:56:20,223.223 INFO    ] 200
[2026-06-05 10:56:20,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:20,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:56:20,292.292 INFO    ] No update needed
[2026-06-05 10:56:20,294.294 INFO    ] Checking for camera pi updates...
[2026-06-05 10:56:20,329.329 INFO    ] 200
[2026-06-05 10:56:20,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:20,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:56:20,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:56:20,434.434 INFO    ] No camera update needed
[2026-06-05 10:56:20,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:56:20,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:56:20,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:56:20,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:56:22,496.496 INFO    ] ================================================
[2026-06-05 10:56:22,512.512 INFO    ] Launching Daemon at Fri Jun  5 10:56:22 IST 2026
[2026-06-05 10:56:22,523.523 INFO    ] ================================================
[2026-06-05 10:56:23,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:56:23
[2026-06-05 10:56:23,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:56:23,994.994 INFO    ] Initializing speech engine...
[2026-06-05 10:56:24,001.001 INFO    ] 2026-06-05 10:56:23
[2026-06-05 10:56:24,261.261 INFO    ] 2026-06-05 10:56:24
[2026-06-05 10:56:24,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:56:24,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:56:24,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:56:24,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:56:24,740.740 INFO    ] time= 05/06/2026 10:56:24
[2026-06-05 10:56:24,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:56:24,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:56:24,968.968 INFO    ] No existing commands found in stream
[2026-06-05 10:56:29,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:56:29,998.998 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 10:56:34,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:56:34,150.150 INFO    ] Checking for system updates...
[2026-06-05 10:56:34,190.190 INFO    ] 200
[2026-06-05 10:56:34,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:34,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:56:34,255.255 INFO    ] No update needed
[2026-06-05 10:56:34,257.257 INFO    ] Checking for camera pi updates...
[2026-06-05 10:56:34,295.295 INFO    ] 200
[2026-06-05 10:56:34,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:34,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:56:34,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:56:34,409.409 INFO    ] No camera update needed
[2026-06-05 10:56:34,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:56:34,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:56:34,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:56:34,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:56:36,465.465 INFO    ] ================================================
[2026-06-05 10:56:36,480.480 INFO    ] Launching Daemon at Fri Jun  5 10:56:36 IST 2026
[2026-06-05 10:56:36,491.491 INFO    ] ================================================
[2026-06-05 10:56:37,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:56:37
[2026-06-05 10:56:37,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:56:37,908.908 INFO    ] Initializing speech engine...
[2026-06-05 10:56:37,921.921 INFO    ] 2026-06-05 10:56:37
[2026-06-05 10:56:38,186.186 INFO    ] 2026-06-05 10:56:38
[2026-06-05 10:56:38,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:56:38,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:56:38,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:56:38,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:56:38,758.758 INFO    ] time= 05/06/2026 10:56:38
[2026-06-05 10:56:38,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:56:38,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:56:38,940.940 INFO    ] No existing commands found in stream
[2026-06-05 10:56:43,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:56:43,973.973 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 10:56:45,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:56:45,514.514 INFO    ] Checking for system updates...
[2026-06-05 10:56:45,566.566 INFO    ] 200
[2026-06-05 10:56:45,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:45,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:56:45,630.630 INFO    ] No update needed
[2026-06-05 10:56:45,633.633 INFO    ] Checking for camera pi updates...
[2026-06-05 10:56:45,667.667 INFO    ] 200
[2026-06-05 10:56:45,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:45,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:56:45,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:56:45,755.755 INFO    ] No camera update needed
[2026-06-05 10:56:45,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:56:45,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:56:45,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:56:45,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:56:47,810.810 INFO    ] ================================================
[2026-06-05 10:56:47,825.825 INFO    ] Launching Daemon at Fri Jun  5 10:56:47 IST 2026
[2026-06-05 10:56:47,836.836 INFO    ] ================================================
[2026-06-05 10:56:48,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:56:48
[2026-06-05 10:56:49,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:56:49,289.289 INFO    ] Initializing speech engine...
[2026-06-05 10:56:49,313.313 INFO    ] 2026-06-05 10:56:49
[2026-06-05 10:56:49,592.592 INFO    ] 2026-06-05 10:56:49
[2026-06-05 10:56:49,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:56:49,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:56:49,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:56:49,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:56:49,974.974 INFO    ] time= 05/06/2026 10:56:49
[2026-06-05 10:56:49,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:56:50,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:56:50,100.100 INFO    ] No existing commands found in stream
[2026-06-05 10:56:55,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:56:55,116.116 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 10:56:56,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:56:56,662.662 INFO    ] Checking for system updates...
[2026-06-05 10:56:56,699.699 INFO    ] 200
[2026-06-05 10:56:56,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:56,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:56:56,761.761 INFO    ] No update needed
[2026-06-05 10:56:56,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 10:56:56,797.797 INFO    ] 200
[2026-06-05 10:56:56,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:56:56,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:56:56,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:56:56,892.892 INFO    ] No camera update needed
[2026-06-05 10:56:56,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:56:56,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:56:56,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:56:56,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:56:58,948.948 INFO    ] ================================================
[2026-06-05 10:56:58,963.963 INFO    ] Launching Daemon at Fri Jun  5 10:56:58 IST 2026
[2026-06-05 10:56:58,974.974 INFO    ] ================================================
[2026-06-05 10:56:59,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:56:59
[2026-06-05 10:57:00,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:57:00,427.427 INFO    ] Initializing speech engine...
[2026-06-05 10:57:00,434.434 INFO    ] 2026-06-05 10:57:00
[2026-06-05 10:57:00,732.732 INFO    ] 2026-06-05 10:57:00
[2026-06-05 10:57:00,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:57:00,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:57:00,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:57:01,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:57:01,115.115 INFO    ] time= 05/06/2026 10:57:01
[2026-06-05 10:57:01,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:57:01,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:57:01,241.241 INFO    ] No existing commands found in stream
[2026-06-05 10:57:06,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:57:06,257.257 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 10:57:07,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:57:07,593.593 INFO    ] Checking for system updates...
[2026-06-05 10:57:07,633.633 INFO    ] 200
[2026-06-05 10:57:07,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:07,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:57:07,698.698 INFO    ] No update needed
[2026-06-05 10:57:07,700.700 INFO    ] Checking for camera pi updates...
[2026-06-05 10:57:07,738.738 INFO    ] 200
[2026-06-05 10:57:07,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:07,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:57:07,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:57:07,830.830 INFO    ] No camera update needed
[2026-06-05 10:57:07,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:57:07,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:57:07,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:57:07,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:57:09,887.887 INFO    ] ================================================
[2026-06-05 10:57:09,903.903 INFO    ] Launching Daemon at Fri Jun  5 10:57:09 IST 2026
[2026-06-05 10:57:09,913.913 INFO    ] ================================================
[2026-06-05 10:57:10,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:57:10
[2026-06-05 10:57:11,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:57:11,354.354 INFO    ] Initializing speech engine...
[2026-06-05 10:57:11,361.361 INFO    ] 2026-06-05 10:57:11
[2026-06-05 10:57:11,660.660 INFO    ] 2026-06-05 10:57:11
[2026-06-05 10:57:11,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:57:11,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:57:11,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:57:12,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:57:12,040.040 INFO    ] time= 05/06/2026 10:57:12
[2026-06-05 10:57:12,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:57:12,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:57:12,170.170 INFO    ] No existing commands found in stream
[2026-06-05 10:57:17,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:57:17,183.183 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 10:57:18,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:57:18,894.894 INFO    ] Checking for system updates...
[2026-06-05 10:57:18,935.935 INFO    ] 200
[2026-06-05 10:57:18,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:19,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:57:19,004.004 INFO    ] No update needed
[2026-06-05 10:57:19,007.007 INFO    ] Checking for camera pi updates...
[2026-06-05 10:57:19,047.047 INFO    ] 200
[2026-06-05 10:57:19,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:19,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:57:19,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:57:19,146.146 INFO    ] No camera update needed
[2026-06-05 10:57:19,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:57:19,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:57:19,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:57:19,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:57:21,204.204 INFO    ] ================================================
[2026-06-05 10:57:21,219.219 INFO    ] Launching Daemon at Fri Jun  5 10:57:21 IST 2026
[2026-06-05 10:57:21,230.230 INFO    ] ================================================
[2026-06-05 10:57:21,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:57:21
[2026-06-05 10:57:22,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:57:22,870.870 INFO    ] Initializing speech engine...
[2026-06-05 10:57:22,879.879 INFO    ] 2026-06-05 10:57:22
[2026-06-05 10:57:23,169.169 INFO    ] 2026-06-05 10:57:23
[2026-06-05 10:57:23,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:57:23,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:57:23,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:57:23,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:57:23,720.720 INFO    ] time= 05/06/2026 10:57:23
[2026-06-05 10:57:23,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:57:23,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:57:23,900.900 INFO    ] No existing commands found in stream
[2026-06-05 10:57:28,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:57:28,936.936 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 10:57:30,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:57:30,887.887 INFO    ] Checking for system updates...
[2026-06-05 10:57:30,931.931 INFO    ] 200
[2026-06-05 10:57:30,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:30,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:57:30,990.990 INFO    ] No update needed
[2026-06-05 10:57:30,993.993 INFO    ] Checking for camera pi updates...
[2026-06-05 10:57:31,028.028 INFO    ] 200
[2026-06-05 10:57:31,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:31,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:57:31,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:57:31,126.126 INFO    ] No camera update needed
[2026-06-05 10:57:31,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:57:31,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:57:31,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:57:31,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:57:33,186.186 INFO    ] ================================================
[2026-06-05 10:57:33,201.201 INFO    ] Launching Daemon at Fri Jun  5 10:57:33 IST 2026
[2026-06-05 10:57:33,212.212 INFO    ] ================================================
[2026-06-05 10:57:33,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:57:33
[2026-06-05 10:57:34,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:57:34,620.620 INFO    ] Initializing speech engine...
[2026-06-05 10:57:34,643.643 INFO    ] 2026-06-05 10:57:34
[2026-06-05 10:57:34,894.894 INFO    ] 2026-06-05 10:57:34
[2026-06-05 10:57:34,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:57:35,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:57:35,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:57:35,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:57:35,452.452 INFO    ] time= 05/06/2026 10:57:35
[2026-06-05 10:57:35,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:57:35,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:57:35,602.602 INFO    ] No existing commands found in stream
[2026-06-05 10:57:40,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:57:40,620.620 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 10:57:43,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:57:43,227.227 INFO    ] Checking for system updates...
[2026-06-05 10:57:43,266.266 INFO    ] 200
[2026-06-05 10:57:43,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:43,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:57:43,331.331 INFO    ] No update needed
[2026-06-05 10:57:43,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 10:57:43,377.377 INFO    ] 200
[2026-06-05 10:57:43,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:43,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:57:43,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:57:43,571.571 INFO    ] No camera update needed
[2026-06-05 10:57:43,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:57:43,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:57:43,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:57:43,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:57:45,628.628 INFO    ] ================================================
[2026-06-05 10:57:45,643.643 INFO    ] Launching Daemon at Fri Jun  5 10:57:45 IST 2026
[2026-06-05 10:57:45,654.654 INFO    ] ================================================
[2026-06-05 10:57:46,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:57:46
[2026-06-05 10:57:46,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:57:47,272.272 INFO    ] Initializing speech engine...
[2026-06-05 10:57:47,284.284 INFO    ] 2026-06-05 10:57:47
[2026-06-05 10:57:47,564.564 INFO    ] 2026-06-05 10:57:47
[2026-06-05 10:57:47,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:57:47,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:57:47,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:57:48,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:57:48,070.070 INFO    ] time= 05/06/2026 10:57:48
[2026-06-05 10:57:48,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:57:48,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:57:48,251.251 INFO    ] No existing commands found in stream
[2026-06-05 10:57:53,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:57:53,283.283 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 10:57:54,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 10:57:54,188.188 INFO    ] Checking for system updates...
[2026-06-05 10:57:54,226.226 INFO    ] 200
[2026-06-05 10:57:54,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:54,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:57:54,286.286 INFO    ] No update needed
[2026-06-05 10:57:54,288.288 INFO    ] Checking for camera pi updates...
[2026-06-05 10:57:54,323.323 INFO    ] 200
[2026-06-05 10:57:54,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:57:54,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:57:54,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:57:54,414.414 INFO    ] No camera update needed
[2026-06-05 10:57:54,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:57:54,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:57:54,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:57:54,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:57:56,472.472 INFO    ] ================================================
[2026-06-05 10:57:56,487.487 INFO    ] Launching Daemon at Fri Jun  5 10:57:56 IST 2026
[2026-06-05 10:57:56,498.498 INFO    ] ================================================
[2026-06-05 10:57:57,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:57:57
[2026-06-05 10:57:57,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:57:58,108.108 INFO    ] Initializing speech engine...
[2026-06-05 10:57:58,120.120 INFO    ] 2026-06-05 10:57:58
[2026-06-05 10:57:58,433.433 INFO    ] 2026-06-05 10:57:58
[2026-06-05 10:57:58,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:58:00,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:58:00,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:58:00,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:58:00,512.512 INFO    ] time= 05/06/2026 10:58:00
[2026-06-05 10:58:00,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:58:00,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:58:00,620.620 INFO    ] No existing commands found in stream
[2026-06-05 10:58:05,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:58:05,642.642 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 10:58:08,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:58:08,602.602 INFO    ] Checking for system updates...
[2026-06-05 10:58:08,639.639 INFO    ] 200
[2026-06-05 10:58:08,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:08,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:58:08,698.698 INFO    ] No update needed
[2026-06-05 10:58:08,700.700 INFO    ] Checking for camera pi updates...
[2026-06-05 10:58:08,736.736 INFO    ] 200
[2026-06-05 10:58:08,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:08,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:58:08,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:58:08,840.840 INFO    ] No camera update needed
[2026-06-05 10:58:08,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:58:08,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:58:08,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:58:08,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:58:10,897.897 INFO    ] ================================================
[2026-06-05 10:58:10,912.912 INFO    ] Launching Daemon at Fri Jun  5 10:58:10 IST 2026
[2026-06-05 10:58:10,924.924 INFO    ] ================================================
[2026-06-05 10:58:11,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:58:11
[2026-06-05 10:58:12,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:58:12,333.333 INFO    ] Initializing speech engine...
[2026-06-05 10:58:12,354.354 INFO    ] 2026-06-05 10:58:12
[2026-06-05 10:58:12,610.610 INFO    ] 2026-06-05 10:58:12
[2026-06-05 10:58:12,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:58:12,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:58:12,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:58:12,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:58:12,980.980 INFO    ] time= 05/06/2026 10:58:12
[2026-06-05 10:58:12,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:58:13,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:58:13,156.156 INFO    ] No existing commands found in stream
[2026-06-05 10:58:18,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:58:18,184.184 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 10:58:19,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 10:58:19,380.380 INFO    ] Checking for system updates...
[2026-06-05 10:58:19,420.420 INFO    ] 200
[2026-06-05 10:58:19,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:19,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:58:19,494.494 INFO    ] No update needed
[2026-06-05 10:58:19,497.497 INFO    ] Checking for camera pi updates...
[2026-06-05 10:58:19,534.534 INFO    ] 200
[2026-06-05 10:58:19,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:19,579.579 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:58:19,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:58:19,643.643 INFO    ] No camera update needed
[2026-06-05 10:58:19,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:58:19,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:58:19,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:58:19,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:58:21,701.701 INFO    ] ================================================
[2026-06-05 10:58:21,716.716 INFO    ] Launching Daemon at Fri Jun  5 10:58:21 IST 2026
[2026-06-05 10:58:21,726.726 INFO    ] ================================================
[2026-06-05 10:58:22,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:58:22
[2026-06-05 10:58:22,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:58:23,136.136 INFO    ] Initializing speech engine...
[2026-06-05 10:58:23,151.151 INFO    ] 2026-06-05 10:58:23
[2026-06-05 10:58:23,428.428 INFO    ] 2026-06-05 10:58:23
[2026-06-05 10:58:23,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:58:23,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:58:23,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:58:23,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:58:23,831.831 INFO    ] time= 05/06/2026 10:58:23
[2026-06-05 10:58:23,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:58:23,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:58:24,024.024 INFO    ] No existing commands found in stream
[2026-06-05 10:58:29,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:58:29,044.044 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 10:58:30,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 10:58:30,981.981 INFO    ] Checking for system updates...
[2026-06-05 10:58:31,018.018 INFO    ] 200
[2026-06-05 10:58:31,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:31,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:58:31,097.097 INFO    ] No update needed
[2026-06-05 10:58:31,100.100 INFO    ] Checking for camera pi updates...
[2026-06-05 10:58:31,133.133 INFO    ] 200
[2026-06-05 10:58:31,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:31,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:58:31,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:58:31,227.227 INFO    ] No camera update needed
[2026-06-05 10:58:31,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:58:31,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:58:31,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:58:31,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:58:33,284.284 INFO    ] ================================================
[2026-06-05 10:58:33,299.299 INFO    ] Launching Daemon at Fri Jun  5 10:58:33 IST 2026
[2026-06-05 10:58:33,310.310 INFO    ] ================================================
[2026-06-05 10:58:33,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:58:33
[2026-06-05 10:58:34,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:58:34,734.734 INFO    ] Initializing speech engine...
[2026-06-05 10:58:34,744.744 INFO    ] 2026-06-05 10:58:34
[2026-06-05 10:58:35,003.003 INFO    ] 2026-06-05 10:58:34
[2026-06-05 10:58:35,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:58:35,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:58:35,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:58:35,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:58:35,463.463 INFO    ] time= 05/06/2026 10:58:35
[2026-06-05 10:58:35,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:58:35,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:58:35,684.684 INFO    ] No existing commands found in stream
[2026-06-05 10:58:40,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:58:40,712.712 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 10:58:41,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:58:41,663.663 INFO    ] Checking for system updates...
[2026-06-05 10:58:41,698.698 INFO    ] 200
[2026-06-05 10:58:41,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:41,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:58:41,756.756 INFO    ] No update needed
[2026-06-05 10:58:41,758.758 INFO    ] Checking for camera pi updates...
[2026-06-05 10:58:41,792.792 INFO    ] 200
[2026-06-05 10:58:41,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:41,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:58:41,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:58:41,890.890 INFO    ] No camera update needed
[2026-06-05 10:58:41,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:58:41,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:58:41,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:58:41,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:58:43,944.944 INFO    ] ================================================
[2026-06-05 10:58:43,959.959 INFO    ] Launching Daemon at Fri Jun  5 10:58:43 IST 2026
[2026-06-05 10:58:43,970.970 INFO    ] ================================================
[2026-06-05 10:58:44,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:58:44
[2026-06-05 10:58:45,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:58:45,446.446 INFO    ] Initializing speech engine...
[2026-06-05 10:58:45,453.453 INFO    ] 2026-06-05 10:58:45
[2026-06-05 10:58:45,714.714 INFO    ] 2026-06-05 10:58:45
[2026-06-05 10:58:45,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:58:45,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:58:46,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:58:46,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:58:46,189.189 INFO    ] time= 05/06/2026 10:58:46
[2026-06-05 10:58:46,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:58:46,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:58:46,404.404 INFO    ] No existing commands found in stream
[2026-06-05 10:58:51,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:58:51,432.432 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 10:58:54,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:58:54,354.354 INFO    ] Checking for system updates...
[2026-06-05 10:58:54,394.394 INFO    ] 200
[2026-06-05 10:58:54,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:54,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:58:54,459.459 INFO    ] No update needed
[2026-06-05 10:58:54,462.462 INFO    ] Checking for camera pi updates...
[2026-06-05 10:58:54,497.497 INFO    ] 200
[2026-06-05 10:58:54,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:58:54,541.541 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:58:54,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:58:54,600.600 INFO    ] No camera update needed
[2026-06-05 10:58:54,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:58:54,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:58:54,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:58:54,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:58:56,659.659 INFO    ] ================================================
[2026-06-05 10:58:56,674.674 INFO    ] Launching Daemon at Fri Jun  5 10:58:56 IST 2026
[2026-06-05 10:58:56,684.684 INFO    ] ================================================
[2026-06-05 10:58:57,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:58:57
[2026-06-05 10:58:57,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:58:58,258.258 INFO    ] Initializing speech engine...
[2026-06-05 10:58:58,268.268 INFO    ] 2026-06-05 10:58:58
[2026-06-05 10:58:58,539.539 INFO    ] 2026-06-05 10:58:58
[2026-06-05 10:58:58,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:59:00,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:59:00,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:59:00,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:59:00,589.589 INFO    ] time= 05/06/2026 10:59:00
[2026-06-05 10:59:00,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:59:00,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:59:00,688.688 INFO    ] No existing commands found in stream
[2026-06-05 10:59:05,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:59:05,703.703 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 10:59:06,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 10:59:06,637.637 INFO    ] Checking for system updates...
[2026-06-05 10:59:06,677.677 INFO    ] 200
[2026-06-05 10:59:06,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:59:06,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:59:06,741.741 INFO    ] No update needed
[2026-06-05 10:59:06,744.744 INFO    ] Checking for camera pi updates...
[2026-06-05 10:59:06,781.781 INFO    ] 200
[2026-06-05 10:59:06,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:59:06,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:59:06,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:59:06,883.883 INFO    ] No camera update needed
[2026-06-05 10:59:06,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:59:06,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:59:06,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:59:06,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:59:08,943.943 INFO    ] ================================================
[2026-06-05 10:59:08,958.958 INFO    ] Launching Daemon at Fri Jun  5 10:59:08 IST 2026
[2026-06-05 10:59:08,968.968 INFO    ] ================================================
[2026-06-05 10:59:09,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:59:09
[2026-06-05 10:59:10,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:59:10,452.452 INFO    ] Initializing speech engine...
[2026-06-05 10:59:10,461.461 INFO    ] 2026-06-05 10:59:10
[2026-06-05 10:59:10,721.721 INFO    ] 2026-06-05 10:59:10
[2026-06-05 10:59:10,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:59:10,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:59:11,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:59:11,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:59:11,206.206 INFO    ] time= 05/06/2026 10:59:11
[2026-06-05 10:59:11,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:59:11,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:59:11,424.424 INFO    ] No existing commands found in stream
[2026-06-05 10:59:16,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:59:16,447.447 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 10:59:20,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 10:59:20,112.112 INFO    ] Checking for system updates...
[2026-06-05 10:59:20,148.148 INFO    ] 200
[2026-06-05 10:59:20,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:59:20,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:59:20,207.207 INFO    ] No update needed
[2026-06-05 10:59:20,210.210 INFO    ] Checking for camera pi updates...
[2026-06-05 10:59:20,246.246 INFO    ] 200
[2026-06-05 10:59:20,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:59:20,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:59:20,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:59:20,359.359 INFO    ] No camera update needed
[2026-06-05 10:59:20,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:59:20,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:59:20,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:59:20,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:59:22,419.419 INFO    ] ================================================
[2026-06-05 10:59:22,434.434 INFO    ] Launching Daemon at Fri Jun  5 10:59:22 IST 2026
[2026-06-05 10:59:22,445.445 INFO    ] ================================================
[2026-06-05 10:59:23,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:59:23
[2026-06-05 10:59:23,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:59:23,947.947 INFO    ] Initializing speech engine...
[2026-06-05 10:59:23,956.956 INFO    ] 2026-06-05 10:59:23
[2026-06-05 10:59:24,248.248 INFO    ] 2026-06-05 10:59:24
[2026-06-05 10:59:24,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:59:24,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:59:24,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:59:25,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:59:25,136.136 INFO    ] time= 05/06/2026 10:59:25
[2026-06-05 10:59:25,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:59:25,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:59:25,738.738 INFO    ] No existing commands found in stream
[2026-06-05 10:59:30,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:59:30,750.750 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 10:59:35,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:59:35,152.152 INFO    ] Checking for system updates...
[2026-06-05 10:59:35,188.188 INFO    ] 200
[2026-06-05 10:59:35,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:59:35,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:59:35,253.253 INFO    ] No update needed
[2026-06-05 10:59:35,255.255 INFO    ] Checking for camera pi updates...
[2026-06-05 10:59:35,289.289 INFO    ] 200
[2026-06-05 10:59:35,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:59:35,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:59:35,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 10:59:35,386.386 INFO    ] No camera update needed
[2026-06-05 10:59:35,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:59:35,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:59:35,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:59:35,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:59:37,445.445 INFO    ] ================================================
[2026-06-05 10:59:37,460.460 INFO    ] Launching Daemon at Fri Jun  5 10:59:37 IST 2026
[2026-06-05 10:59:37,471.471 INFO    ] ================================================
[2026-06-05 10:59:38,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:59:38
[2026-06-05 10:59:38,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:59:38,929.929 INFO    ] Initializing speech engine...
[2026-06-05 10:59:38,936.936 INFO    ] 2026-06-05 10:59:38
[2026-06-05 10:59:39,195.195 INFO    ] 2026-06-05 10:59:39
[2026-06-05 10:59:39,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:59:39,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:59:39,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:59:39,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:59:39,682.682 INFO    ] time= 05/06/2026 10:59:39
[2026-06-05 10:59:39,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:59:39,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:59:39,884.884 INFO    ] No existing commands found in stream
[2026-06-05 10:59:44,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:59:44,908.908 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 10:59:49,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 10:59:49,243.243 INFO    ] Checking for system updates...
[2026-06-05 10:59:49,281.281 INFO    ] 200
[2026-06-05 10:59:49,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:59:49,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:59:49,341.341 INFO    ] No update needed
[2026-06-05 10:59:49,343.343 INFO    ] Checking for camera pi updates...
[2026-06-05 10:59:49,378.378 INFO    ] 200
[2026-06-05 10:59:49,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 10:59:49,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 10:59:49,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 10:59:49,572.572 INFO    ] No camera update needed
[2026-06-05 10:59:49,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 10:59:49,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 10:59:49,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 10:59:49,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 10:59:51,628.628 INFO    ] ================================================
[2026-06-05 10:59:51,646.646 INFO    ] Launching Daemon at Fri Jun  5 10:59:51 IST 2026
[2026-06-05 10:59:51,658.658 INFO    ] ================================================
[2026-06-05 10:59:52,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 10:59:52
[2026-06-05 10:59:52,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 10:59:53,234.234 INFO    ] Initializing speech engine...
[2026-06-05 10:59:53,241.241 INFO    ] 2026-06-05 10:59:53
[2026-06-05 10:59:53,527.527 INFO    ] 2026-06-05 10:59:53
[2026-06-05 10:59:53,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 10:59:53,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 10:59:53,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 10:59:54,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 10:59:54,060.060 INFO    ] time= 05/06/2026 10:59:54
[2026-06-05 10:59:54,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 10:59:54,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-05 10:59:54,218.218 INFO    ] No existing commands found in stream
[2026-06-05 10:59:59,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 10:59:59,249.249 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 11:00:00,903.903 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:00:00,907.907 INFO    ] Checking for system updates...
[2026-06-05 11:00:00,944.944 INFO    ] 200
[2026-06-05 11:00:00,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:01,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:00:01,002.002 INFO    ] No update needed
[2026-06-05 11:00:01,005.005 INFO    ] Checking for camera pi updates...
[2026-06-05 11:00:01,038.038 INFO    ] 200
[2026-06-05 11:00:01,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:01,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:00:01,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:00:01,127.127 INFO    ] No camera update needed
[2026-06-05 11:00:01,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:00:01,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:00:01,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:00:01,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:00:03,251.251 INFO    ] ================================================
[2026-06-05 11:00:03,334.334 INFO    ] Launching Daemon at Fri Jun  5 11:00:03 IST 2026
[2026-06-05 11:00:03,367.367 INFO    ] ================================================
[2026-06-05 11:00:05,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:00:05
[2026-06-05 11:00:06,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:00:06,450.450 INFO    ] Initializing speech engine...
[2026-06-05 11:00:06,457.457 INFO    ] 2026-06-05 11:00:06
[2026-06-05 11:00:06,719.719 INFO    ] 2026-06-05 11:00:06
[2026-06-05 11:00:06,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:00:07,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:00:07,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:00:07,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:00:07,409.409 INFO    ] time= 05/06/2026 11:00:07
[2026-06-05 11:00:07,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:00:07,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:00:07,646.646 INFO    ] No existing commands found in stream
[2026-06-05 11:00:12,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:00:12,676.676 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 11:00:14,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:00:14,530.530 INFO    ] Checking for system updates...
[2026-06-05 11:00:14,566.566 INFO    ] 200
[2026-06-05 11:00:14,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:14,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:00:14,624.624 INFO    ] No update needed
[2026-06-05 11:00:14,627.627 INFO    ] Checking for camera pi updates...
[2026-06-05 11:00:14,661.661 INFO    ] 200
[2026-06-05 11:00:14,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:14,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:00:14,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:00:14,761.761 INFO    ] No camera update needed
[2026-06-05 11:00:14,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:00:14,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:00:14,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:00:14,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:00:16,817.817 INFO    ] ================================================
[2026-06-05 11:00:16,832.832 INFO    ] Launching Daemon at Fri Jun  5 11:00:16 IST 2026
[2026-06-05 11:00:16,843.843 INFO    ] ================================================
[2026-06-05 11:00:17,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:00:17
[2026-06-05 11:00:18,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:00:18,300.300 INFO    ] Initializing speech engine...
[2026-06-05 11:00:18,307.307 INFO    ] 2026-06-05 11:00:18
[2026-06-05 11:00:18,568.568 INFO    ] 2026-06-05 11:00:18
[2026-06-05 11:00:18,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:00:18,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:00:18,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:00:18,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:00:19,069.069 INFO    ] time= 05/06/2026 11:00:19
[2026-06-05 11:00:19,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:00:19,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:00:19,423.423 INFO    ] No existing commands found in stream
[2026-06-05 11:00:24,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:00:24,457.457 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-05 11:00:28,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:00:28,026.026 INFO    ] Checking for system updates...
[2026-06-05 11:00:28,062.062 INFO    ] 200
[2026-06-05 11:00:28,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:28,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:00:28,121.121 INFO    ] No update needed
[2026-06-05 11:00:28,124.124 INFO    ] Checking for camera pi updates...
[2026-06-05 11:00:28,160.160 INFO    ] 200
[2026-06-05 11:00:28,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:28,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:00:28,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:00:28,258.258 INFO    ] No camera update needed
[2026-06-05 11:00:28,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:00:28,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:00:28,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:00:28,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:00:30,313.313 INFO    ] ================================================
[2026-06-05 11:00:30,328.328 INFO    ] Launching Daemon at Fri Jun  5 11:00:30 IST 2026
[2026-06-05 11:00:30,339.339 INFO    ] ================================================
[2026-06-05 11:00:30,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:00:30
[2026-06-05 11:00:31,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:00:31,768.768 INFO    ] Initializing speech engine...
[2026-06-05 11:00:31,787.787 INFO    ] 2026-06-05 11:00:31
[2026-06-05 11:00:32,050.050 INFO    ] 2026-06-05 11:00:32
[2026-06-05 11:00:32,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:00:32,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:00:32,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:00:32,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:00:32,480.480 INFO    ] time= 05/06/2026 11:00:32
[2026-06-05 11:00:32,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:00:32,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:00:32,567.567 INFO    ] No existing commands found in stream
[2026-06-05 11:00:37,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:00:37,596.596 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 11:00:41,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:00:41,110.110 INFO    ] Checking for system updates...
[2026-06-05 11:00:41,145.145 INFO    ] 200
[2026-06-05 11:00:41,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:41,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:00:41,203.203 INFO    ] No update needed
[2026-06-05 11:00:41,205.205 INFO    ] Checking for camera pi updates...
[2026-06-05 11:00:41,239.239 INFO    ] 200
[2026-06-05 11:00:41,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:41,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:00:41,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:00:41,334.334 INFO    ] No camera update needed
[2026-06-05 11:00:41,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:00:41,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:00:41,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:00:41,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:00:43,390.390 INFO    ] ================================================
[2026-06-05 11:00:43,405.405 INFO    ] Launching Daemon at Fri Jun  5 11:00:43 IST 2026
[2026-06-05 11:00:43,416.416 INFO    ] ================================================
[2026-06-05 11:00:44,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:00:44
[2026-06-05 11:00:44,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:00:44,999.999 INFO    ] Initializing speech engine...
[2026-06-05 11:00:45,009.009 INFO    ] 2026-06-05 11:00:45
[2026-06-05 11:00:45,280.280 INFO    ] 2026-06-05 11:00:45
[2026-06-05 11:00:45,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:00:45,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:00:45,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:00:45,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:00:45,771.771 INFO    ] time= 05/06/2026 11:00:45
[2026-06-05 11:00:45,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:00:45,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:00:46,006.006 INFO    ] No existing commands found in stream
[2026-06-05 11:00:51,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:00:51,030.030 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 11:00:54,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:00:54,225.225 INFO    ] Checking for system updates...
[2026-06-05 11:00:54,261.261 INFO    ] 200
[2026-06-05 11:00:54,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:54,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:00:54,327.327 INFO    ] No update needed
[2026-06-05 11:00:54,330.330 INFO    ] Checking for camera pi updates...
[2026-06-05 11:00:54,368.368 INFO    ] 200
[2026-06-05 11:00:54,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:00:54,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:00:54,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:00:54,474.474 INFO    ] No camera update needed
[2026-06-05 11:00:54,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:00:54,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:00:54,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:00:54,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:00:56,532.532 INFO    ] ================================================
[2026-06-05 11:00:56,547.547 INFO    ] Launching Daemon at Fri Jun  5 11:00:56 IST 2026
[2026-06-05 11:00:56,558.558 INFO    ] ================================================
[2026-06-05 11:00:57,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:00:57
[2026-06-05 11:00:57,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:00:58,177.177 INFO    ] Initializing speech engine...
[2026-06-05 11:00:58,185.185 INFO    ] 2026-06-05 11:00:58
[2026-06-05 11:00:58,462.462 INFO    ] 2026-06-05 11:00:58
[2026-06-05 11:00:58,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:01:00,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:01:00,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:01:00,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:01:00,598.598 INFO    ] time= 05/06/2026 11:01:00
[2026-06-05 11:01:00,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:01:00,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:01:00,710.710 INFO    ] No existing commands found in stream
[2026-06-05 11:01:05,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:01:05,731.731 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 11:01:07,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:01:07,452.452 INFO    ] Checking for system updates...
[2026-06-05 11:01:07,489.489 INFO    ] 200
[2026-06-05 11:01:07,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:07,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:01:07,548.548 INFO    ] No update needed
[2026-06-05 11:01:07,551.551 INFO    ] Checking for camera pi updates...
[2026-06-05 11:01:07,586.586 INFO    ] 200
[2026-06-05 11:01:07,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:07,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:01:07,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:01:07,678.678 INFO    ] No camera update needed
[2026-06-05 11:01:07,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:01:07,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:01:07,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:01:07,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:01:09,734.734 INFO    ] ================================================
[2026-06-05 11:01:09,750.750 INFO    ] Launching Daemon at Fri Jun  5 11:01:09 IST 2026
[2026-06-05 11:01:09,761.761 INFO    ] ================================================
[2026-06-05 11:01:10,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:01:10
[2026-06-05 11:01:10,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:01:11,218.218 INFO    ] Initializing speech engine...
[2026-06-05 11:01:11,227.227 INFO    ] 2026-06-05 11:01:11
[2026-06-05 11:01:11,480.480 INFO    ] 2026-06-05 11:01:11
[2026-06-05 11:01:11,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:01:11,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:01:11,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:01:11,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:01:11,988.988 INFO    ] time= 05/06/2026 11:01:11
[2026-06-05 11:01:12,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:01:12,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:01:12,182.182 INFO    ] No existing commands found in stream
[2026-06-05 11:01:17,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:01:17,206.206 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 11:01:18,892.892 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:01:18,895.895 INFO    ] Checking for system updates...
[2026-06-05 11:01:18,932.932 INFO    ] 200
[2026-06-05 11:01:18,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:18,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:01:18,991.991 INFO    ] No update needed
[2026-06-05 11:01:18,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 11:01:19,028.028 INFO    ] 200
[2026-06-05 11:01:19,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:19,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:01:19,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:01:19,124.124 INFO    ] No camera update needed
[2026-06-05 11:01:19,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:01:19,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:01:19,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:01:19,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:01:21,182.182 INFO    ] ================================================
[2026-06-05 11:01:21,197.197 INFO    ] Launching Daemon at Fri Jun  5 11:01:21 IST 2026
[2026-06-05 11:01:21,208.208 INFO    ] ================================================
[2026-06-05 11:01:21,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:01:21
[2026-06-05 11:01:22,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:01:22,764.764 INFO    ] Initializing speech engine...
[2026-06-05 11:01:22,774.774 INFO    ] 2026-06-05 11:01:22
[2026-06-05 11:01:23,039.039 INFO    ] 2026-06-05 11:01:23
[2026-06-05 11:01:23,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:01:23,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:01:23,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:01:23,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:01:23,534.534 INFO    ] time= 05/06/2026 11:01:23
[2026-06-05 11:01:23,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:01:23,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:01:23,763.763 INFO    ] No existing commands found in stream
[2026-06-05 11:01:28,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:01:28,796.796 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 11:01:31,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:01:31,598.598 INFO    ] Checking for system updates...
[2026-06-05 11:01:31,636.636 INFO    ] 200
[2026-06-05 11:01:31,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:31,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:01:31,698.698 INFO    ] No update needed
[2026-06-05 11:01:31,701.701 INFO    ] Checking for camera pi updates...
[2026-06-05 11:01:31,746.746 INFO    ] 200
[2026-06-05 11:01:31,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:31,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:01:31,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:01:31,844.844 INFO    ] No camera update needed
[2026-06-05 11:01:31,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:01:31,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:01:31,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:01:31,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:01:33,904.904 INFO    ] ================================================
[2026-06-05 11:01:33,920.920 INFO    ] Launching Daemon at Fri Jun  5 11:01:33 IST 2026
[2026-06-05 11:01:33,931.931 INFO    ] ================================================
[2026-06-05 11:01:34,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:01:34
[2026-06-05 11:01:35,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:01:35,375.375 INFO    ] Initializing speech engine...
[2026-06-05 11:01:35,388.388 INFO    ] 2026-06-05 11:01:35
[2026-06-05 11:01:35,672.672 INFO    ] 2026-06-05 11:01:35
[2026-06-05 11:01:35,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:01:35,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:01:35,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:01:36,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:01:36,159.159 INFO    ] time= 05/06/2026 11:01:36
[2026-06-05 11:01:36,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:01:36,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:01:36,414.414 INFO    ] No existing commands found in stream
[2026-06-05 11:01:41,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:01:41,443.443 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 11:01:44,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:01:44,994.994 INFO    ] Checking for system updates...
[2026-06-05 11:01:45,030.030 INFO    ] 200
[2026-06-05 11:01:45,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:45,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:01:45,088.088 INFO    ] No update needed
[2026-06-05 11:01:45,091.091 INFO    ] Checking for camera pi updates...
[2026-06-05 11:01:45,131.131 INFO    ] 200
[2026-06-05 11:01:45,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:45,174.174 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:01:45,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:01:45,222.222 INFO    ] No camera update needed
[2026-06-05 11:01:45,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:01:45,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:01:45,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:01:45,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:01:47,278.278 INFO    ] ================================================
[2026-06-05 11:01:47,294.294 INFO    ] Launching Daemon at Fri Jun  5 11:01:47 IST 2026
[2026-06-05 11:01:47,305.305 INFO    ] ================================================
[2026-06-05 11:01:47,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:01:47
[2026-06-05 11:01:48,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:01:48,879.879 INFO    ] Initializing speech engine...
[2026-06-05 11:01:48,892.892 INFO    ] 2026-06-05 11:01:48
[2026-06-05 11:01:49,173.173 INFO    ] 2026-06-05 11:01:49
[2026-06-05 11:01:49,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:01:49,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:01:49,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:01:49,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:01:49,754.754 INFO    ] time= 05/06/2026 11:01:49
[2026-06-05 11:01:49,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:01:49,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:01:50,362.362 INFO    ] No existing commands found in stream
[2026-06-05 11:01:55,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:01:55,393.393 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 11:01:56,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:01:56,739.739 INFO    ] Checking for system updates...
[2026-06-05 11:01:56,775.775 INFO    ] 200
[2026-06-05 11:01:56,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:56,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:01:56,850.850 INFO    ] No update needed
[2026-06-05 11:01:56,853.853 INFO    ] Checking for camera pi updates...
[2026-06-05 11:01:56,895.895 INFO    ] 200
[2026-06-05 11:01:56,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:01:56,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:01:57,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:01:57,110.110 INFO    ] No camera update needed
[2026-06-05 11:01:57,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:01:57,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:01:57,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:01:57,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:01:59,166.166 INFO    ] ================================================
[2026-06-05 11:01:59,181.181 INFO    ] Launching Daemon at Fri Jun  5 11:01:59 IST 2026
[2026-06-05 11:01:59,192.192 INFO    ] ================================================
[2026-06-05 11:01:59,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:01:59
[2026-06-05 11:02:00,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:02:00,611.611 INFO    ] Initializing speech engine...
[2026-06-05 11:02:00,617.617 INFO    ] 2026-06-05 11:02:00
[2026-06-05 11:02:00,911.911 INFO    ] 2026-06-05 11:02:00
[2026-06-05 11:02:00,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:02:01,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:02:01,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:02:01,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:02:01,323.323 INFO    ] time= 05/06/2026 11:02:01
[2026-06-05 11:02:01,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:02:01,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:02:01,421.421 INFO    ] No existing commands found in stream
[2026-06-05 11:02:06,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:02:06,434.434 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 11:02:10,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:02:10,610.610 INFO    ] Checking for system updates...
[2026-06-05 11:02:10,648.648 INFO    ] 200
[2026-06-05 11:02:10,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:10,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:02:10,706.706 INFO    ] No update needed
[2026-06-05 11:02:10,709.709 INFO    ] Checking for camera pi updates...
[2026-06-05 11:02:10,742.742 INFO    ] 200
[2026-06-05 11:02:10,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:10,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:02:10,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:02:10,840.840 INFO    ] No camera update needed
[2026-06-05 11:02:10,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:02:10,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:02:10,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:02:10,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:02:12,896.896 INFO    ] ================================================
[2026-06-05 11:02:12,911.911 INFO    ] Launching Daemon at Fri Jun  5 11:02:12 IST 2026
[2026-06-05 11:02:12,922.922 INFO    ] ================================================
[2026-06-05 11:02:13,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:02:13
[2026-06-05 11:02:14,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:02:14,336.336 INFO    ] Initializing speech engine...
[2026-06-05 11:02:14,355.355 INFO    ] 2026-06-05 11:02:14
[2026-06-05 11:02:14,605.605 INFO    ] 2026-06-05 11:02:14
[2026-06-05 11:02:14,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:02:14,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:02:14,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:02:14,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:02:14,983.983 INFO    ] time= 05/06/2026 11:02:14
[2026-06-05 11:02:14,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:02:15,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:02:15,176.176 INFO    ] No existing commands found in stream
[2026-06-05 11:02:20,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:02:20,199.199 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 11:02:22,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:02:22,955.955 INFO    ] Checking for system updates...
[2026-06-05 11:02:22,991.991 INFO    ] 200
[2026-06-05 11:02:22,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:23,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:02:23,049.049 INFO    ] No update needed
[2026-06-05 11:02:23,051.051 INFO    ] Checking for camera pi updates...
[2026-06-05 11:02:23,085.085 INFO    ] 200
[2026-06-05 11:02:23,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:23,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:02:23,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:02:23,179.179 INFO    ] No camera update needed
[2026-06-05 11:02:23,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:02:23,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:02:23,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:02:23,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:02:25,235.235 INFO    ] ================================================
[2026-06-05 11:02:25,251.251 INFO    ] Launching Daemon at Fri Jun  5 11:02:25 IST 2026
[2026-06-05 11:02:25,262.262 INFO    ] ================================================
[2026-06-05 11:02:25,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:02:25
[2026-06-05 11:02:26,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:02:26,728.728 INFO    ] Initializing speech engine...
[2026-06-05 11:02:26,734.734 INFO    ] 2026-06-05 11:02:26
[2026-06-05 11:02:26,996.996 INFO    ] 2026-06-05 11:02:26
[2026-06-05 11:02:27,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:02:27,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:02:27,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:02:27,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:02:27,543.543 INFO    ] time= 05/06/2026 11:02:27
[2026-06-05 11:02:27,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:02:27,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:02:27,688.688 INFO    ] No existing commands found in stream
[2026-06-05 11:02:32,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:02:32,710.710 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 11:02:35,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:02:35,057.057 INFO    ] Checking for system updates...
[2026-06-05 11:02:35,093.093 INFO    ] 200
[2026-06-05 11:02:35,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:35,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:02:35,154.154 INFO    ] No update needed
[2026-06-05 11:02:35,157.157 INFO    ] Checking for camera pi updates...
[2026-06-05 11:02:35,192.192 INFO    ] 200
[2026-06-05 11:02:35,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:35,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:02:35,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:02:35,285.285 INFO    ] No camera update needed
[2026-06-05 11:02:35,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:02:35,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:02:35,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:02:35,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:02:37,342.342 INFO    ] ================================================
[2026-06-05 11:02:37,358.358 INFO    ] Launching Daemon at Fri Jun  5 11:02:37 IST 2026
[2026-06-05 11:02:37,369.369 INFO    ] ================================================
[2026-06-05 11:02:38,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:02:38
[2026-06-05 11:02:38,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:02:38,998.998 INFO    ] Initializing speech engine...
[2026-06-05 11:02:39,009.009 INFO    ] 2026-06-05 11:02:38
[2026-06-05 11:02:39,295.295 INFO    ] 2026-06-05 11:02:39
[2026-06-05 11:02:39,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:02:39,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:02:39,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:02:39,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:02:39,829.829 INFO    ] time= 05/06/2026 11:02:39
[2026-06-05 11:02:39,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:02:39,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:02:39,985.985 INFO    ] No existing commands found in stream
[2026-06-05 11:02:45,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:02:45,013.013 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 11:02:46,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:02:46,777.777 INFO    ] Checking for system updates...
[2026-06-05 11:02:46,815.815 INFO    ] 200
[2026-06-05 11:02:46,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:46,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:02:46,882.882 INFO    ] No update needed
[2026-06-05 11:02:46,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 11:02:46,920.920 INFO    ] 200
[2026-06-05 11:02:46,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:46,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:02:47,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:02:47,013.013 INFO    ] No camera update needed
[2026-06-05 11:02:47,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:02:47,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:02:47,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:02:47,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:02:49,069.069 INFO    ] ================================================
[2026-06-05 11:02:49,085.085 INFO    ] Launching Daemon at Fri Jun  5 11:02:49 IST 2026
[2026-06-05 11:02:49,097.097 INFO    ] ================================================
[2026-06-05 11:02:49,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:02:49
[2026-06-05 11:02:50,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:02:50,536.536 INFO    ] Initializing speech engine...
[2026-06-05 11:02:50,547.547 INFO    ] 2026-06-05 11:02:50
[2026-06-05 11:02:50,848.848 INFO    ] 2026-06-05 11:02:50
[2026-06-05 11:02:50,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:02:51,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:02:51,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:02:51,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:02:51,274.274 INFO    ] time= 05/06/2026 11:02:51
[2026-06-05 11:02:51,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:02:51,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:02:51,365.365 INFO    ] No existing commands found in stream
[2026-06-05 11:02:56,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:02:56,381.381 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 11:02:57,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:02:57,172.172 INFO    ] Checking for system updates...
[2026-06-05 11:02:57,209.209 INFO    ] 200
[2026-06-05 11:02:57,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:57,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:02:57,267.267 INFO    ] No update needed
[2026-06-05 11:02:57,270.270 INFO    ] Checking for camera pi updates...
[2026-06-05 11:02:57,307.307 INFO    ] 200
[2026-06-05 11:02:57,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:02:57,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:02:57,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:02:57,416.416 INFO    ] No camera update needed
[2026-06-05 11:02:57,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:02:57,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:02:57,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:02:57,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:02:59,473.473 INFO    ] ================================================
[2026-06-05 11:02:59,488.488 INFO    ] Launching Daemon at Fri Jun  5 11:02:59 IST 2026
[2026-06-05 11:02:59,500.500 INFO    ] ================================================
[2026-06-05 11:03:00,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:03:00
[2026-06-05 11:03:00,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:03:00,913.913 INFO    ] Initializing speech engine...
[2026-06-05 11:03:00,930.930 INFO    ] 2026-06-05 11:03:00
[2026-06-05 11:03:01,269.269 INFO    ] 2026-06-05 11:03:01
[2026-06-05 11:03:01,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:03:01,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:03:01,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:03:01,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:03:01,729.729 INFO    ] time= 05/06/2026 11:03:01
[2026-06-05 11:03:01,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:03:01,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:03:01,836.836 INFO    ] No existing commands found in stream
[2026-06-05 11:03:06,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:03:06,889.889 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 11:03:10,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:03:10,831.831 INFO    ] Checking for system updates...
[2026-06-05 11:03:10,868.868 INFO    ] 200
[2026-06-05 11:03:10,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:10,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:03:10,927.927 INFO    ] No update needed
[2026-06-05 11:03:10,930.930 INFO    ] Checking for camera pi updates...
[2026-06-05 11:03:10,968.968 INFO    ] 200
[2026-06-05 11:03:10,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:11,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:03:11,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:03:11,074.074 INFO    ] No camera update needed
[2026-06-05 11:03:11,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:03:11,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:03:11,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:03:11,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:03:13,129.129 INFO    ] ================================================
[2026-06-05 11:03:13,145.145 INFO    ] Launching Daemon at Fri Jun  5 11:03:13 IST 2026
[2026-06-05 11:03:13,157.157 INFO    ] ================================================
[2026-06-05 11:03:13,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:03:13
[2026-06-05 11:03:14,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:03:14,582.582 INFO    ] Initializing speech engine...
[2026-06-05 11:03:14,604.604 INFO    ] 2026-06-05 11:03:14
[2026-06-05 11:03:14,884.884 INFO    ] 2026-06-05 11:03:14
[2026-06-05 11:03:14,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:03:15,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:03:15,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:03:15,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:03:15,311.311 INFO    ] time= 05/06/2026 11:03:15
[2026-06-05 11:03:15,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:03:15,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:03:15,401.401 INFO    ] No existing commands found in stream
[2026-06-05 11:03:20,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:03:20,430.430 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 11:03:23,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:03:23,410.410 INFO    ] Checking for system updates...
[2026-06-05 11:03:23,447.447 INFO    ] 200
[2026-06-05 11:03:23,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:23,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:03:23,505.505 INFO    ] No update needed
[2026-06-05 11:03:23,507.507 INFO    ] Checking for camera pi updates...
[2026-06-05 11:03:23,541.541 INFO    ] 200
[2026-06-05 11:03:23,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:23,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:03:23,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:03:23,631.631 INFO    ] No camera update needed
[2026-06-05 11:03:23,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:03:23,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:03:23,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:03:23,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:03:25,687.687 INFO    ] ================================================
[2026-06-05 11:03:25,703.703 INFO    ] Launching Daemon at Fri Jun  5 11:03:25 IST 2026
[2026-06-05 11:03:25,713.713 INFO    ] ================================================
[2026-06-05 11:03:26,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:03:26
[2026-06-05 11:03:26,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:03:27,172.172 INFO    ] Initializing speech engine...
[2026-06-05 11:03:27,179.179 INFO    ] 2026-06-05 11:03:27
[2026-06-05 11:03:27,479.479 INFO    ] 2026-06-05 11:03:27
[2026-06-05 11:03:27,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:03:27,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:03:27,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:03:27,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:03:28,044.044 INFO    ] time= 05/06/2026 11:03:27
[2026-06-05 11:03:28,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:03:28,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:03:28,204.204 INFO    ] No existing commands found in stream
[2026-06-05 11:03:33,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:03:33,223.223 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 11:03:34,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:03:34,505.505 INFO    ] Checking for system updates...
[2026-06-05 11:03:34,541.541 INFO    ] 200
[2026-06-05 11:03:34,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:34,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:03:34,605.605 INFO    ] No update needed
[2026-06-05 11:03:34,608.608 INFO    ] Checking for camera pi updates...
[2026-06-05 11:03:34,641.641 INFO    ] 200
[2026-06-05 11:03:34,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:34,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:03:34,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:03:34,734.734 INFO    ] No camera update needed
[2026-06-05 11:03:34,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:03:34,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:03:34,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:03:34,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:03:36,791.791 INFO    ] ================================================
[2026-06-05 11:03:36,806.806 INFO    ] Launching Daemon at Fri Jun  5 11:03:36 IST 2026
[2026-06-05 11:03:36,817.817 INFO    ] ================================================
[2026-06-05 11:03:37,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:03:37
[2026-06-05 11:03:37,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:03:38,223.223 INFO    ] Initializing speech engine...
[2026-06-05 11:03:38,238.238 INFO    ] 2026-06-05 11:03:38
[2026-06-05 11:03:38,504.504 INFO    ] 2026-06-05 11:03:38
[2026-06-05 11:03:38,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:03:38,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:03:38,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:03:38,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:03:38,983.983 INFO    ] time= 05/06/2026 11:03:38
[2026-06-05 11:03:39,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:03:39,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:03:39,204.204 INFO    ] No existing commands found in stream
[2026-06-05 11:03:44,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:03:44,238.238 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 11:03:47,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:03:47,184.184 INFO    ] Checking for system updates...
[2026-06-05 11:03:47,221.221 INFO    ] 200
[2026-06-05 11:03:47,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:47,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:03:47,280.280 INFO    ] No update needed
[2026-06-05 11:03:47,283.283 INFO    ] Checking for camera pi updates...
[2026-06-05 11:03:47,316.316 INFO    ] 200
[2026-06-05 11:03:47,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:47,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:03:47,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:03:47,410.410 INFO    ] No camera update needed
[2026-06-05 11:03:47,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:03:47,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:03:47,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:03:47,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:03:49,469.469 INFO    ] ================================================
[2026-06-05 11:03:49,484.484 INFO    ] Launching Daemon at Fri Jun  5 11:03:49 IST 2026
[2026-06-05 11:03:49,495.495 INFO    ] ================================================
[2026-06-05 11:03:50,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:03:50
[2026-06-05 11:03:50,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:03:50,972.972 INFO    ] Initializing speech engine...
[2026-06-05 11:03:50,981.981 INFO    ] 2026-06-05 11:03:50
[2026-06-05 11:03:51,228.228 INFO    ] 2026-06-05 11:03:51
[2026-06-05 11:03:51,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:03:51,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:03:51,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:03:51,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:03:51,720.720 INFO    ] time= 05/06/2026 11:03:51
[2026-06-05 11:03:51,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:03:51,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:03:51,935.935 INFO    ] No existing commands found in stream
[2026-06-05 11:03:56,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:03:56,960.960 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 11:03:58,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:03:58,408.408 INFO    ] Checking for system updates...
[2026-06-05 11:03:58,445.445 INFO    ] 200
[2026-06-05 11:03:58,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:58,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:03:58,512.512 INFO    ] No update needed
[2026-06-05 11:03:58,515.515 INFO    ] Checking for camera pi updates...
[2026-06-05 11:03:58,549.549 INFO    ] 200
[2026-06-05 11:03:58,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:03:58,594.594 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:03:58,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:03:58,654.654 INFO    ] No camera update needed
[2026-06-05 11:03:58,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:03:58,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:03:58,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:03:58,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:04:00,715.715 INFO    ] ================================================
[2026-06-05 11:04:00,732.732 INFO    ] Launching Daemon at Fri Jun  5 11:04:00 IST 2026
[2026-06-05 11:04:00,748.748 INFO    ] ================================================
[2026-06-05 11:04:01,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:04:01
[2026-06-05 11:04:02,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:04:02,572.572 INFO    ] Initializing speech engine...
[2026-06-05 11:04:02,584.584 INFO    ] 2026-06-05 11:04:02
[2026-06-05 11:04:02,873.873 INFO    ] 2026-06-05 11:04:02
[2026-06-05 11:04:02,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:04:03,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:04:03,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:04:03,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:04:03,257.257 INFO    ] time= 05/06/2026 11:04:03
[2026-06-05 11:04:03,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:04:03,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:04:03,383.383 INFO    ] No existing commands found in stream
[2026-06-05 11:04:08,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:04:08,399.399 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 11:04:12,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:04:12,148.148 INFO    ] Checking for system updates...
[2026-06-05 11:04:12,185.185 INFO    ] 200
[2026-06-05 11:04:12,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:04:12,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:04:12,244.244 INFO    ] No update needed
[2026-06-05 11:04:12,247.247 INFO    ] Checking for camera pi updates...
[2026-06-05 11:04:12,282.282 INFO    ] 200
[2026-06-05 11:04:12,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:04:12,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:04:12,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:04:12,373.373 INFO    ] No camera update needed
[2026-06-05 11:04:12,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:04:12,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:04:12,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:04:12,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:04:14,432.432 INFO    ] ================================================
[2026-06-05 11:04:14,448.448 INFO    ] Launching Daemon at Fri Jun  5 11:04:14 IST 2026
[2026-06-05 11:04:14,459.459 INFO    ] ================================================
[2026-06-05 11:04:15,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:04:15
[2026-06-05 11:04:15,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:04:15,874.874 INFO    ] Initializing speech engine...
[2026-06-05 11:04:15,882.882 INFO    ] 2026-06-05 11:04:15
[2026-06-05 11:04:16,181.181 INFO    ] 2026-06-05 11:04:16
[2026-06-05 11:04:16,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:04:16,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:04:16,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:04:16,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:04:16,611.611 INFO    ] time= 05/06/2026 11:04:16
[2026-06-05 11:04:16,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:04:16,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:04:16,792.792 INFO    ] No existing commands found in stream
[2026-06-05 11:04:21,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:04:21,820.820 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 11:04:26,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:04:26,083.083 INFO    ] Checking for system updates...
[2026-06-05 11:04:26,119.119 INFO    ] 200
[2026-06-05 11:04:26,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:04:26,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:04:26,177.177 INFO    ] No update needed
[2026-06-05 11:04:26,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 11:04:26,213.213 INFO    ] 200
[2026-06-05 11:04:26,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:04:26,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:04:26,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:04:26,305.305 INFO    ] No camera update needed
[2026-06-05 11:04:26,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:04:26,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:04:26,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:04:26,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:04:28,361.361 INFO    ] ================================================
[2026-06-05 11:04:28,377.377 INFO    ] Launching Daemon at Fri Jun  5 11:04:28 IST 2026
[2026-06-05 11:04:28,387.387 INFO    ] ================================================
[2026-06-05 11:04:28,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:04:28
[2026-06-05 11:04:29,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:04:29,842.842 INFO    ] Initializing speech engine...
[2026-06-05 11:04:29,853.853 INFO    ] 2026-06-05 11:04:29
[2026-06-05 11:04:30,116.116 INFO    ] 2026-06-05 11:04:30
[2026-06-05 11:04:30,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:04:30,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:04:30,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:04:31,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:04:31,091.091 INFO    ] time= 05/06/2026 11:04:31
[2026-06-05 11:04:31,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:04:31,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:04:31,203.203 INFO    ] No existing commands found in stream
[2026-06-05 11:04:36,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:04:36,237.237 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 11:04:37,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:04:37,218.218 INFO    ] Checking for system updates...
[2026-06-05 11:04:37,255.255 INFO    ] 200
[2026-06-05 11:04:37,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:04:37,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:04:37,313.313 INFO    ] No update needed
[2026-06-05 11:04:37,315.315 INFO    ] Checking for camera pi updates...
[2026-06-05 11:04:37,349.349 INFO    ] 200
[2026-06-05 11:04:37,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:04:37,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:04:37,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:04:37,447.447 INFO    ] No camera update needed
[2026-06-05 11:04:37,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:04:37,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:04:37,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:04:37,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:04:39,504.504 INFO    ] ================================================
[2026-06-05 11:04:39,519.519 INFO    ] Launching Daemon at Fri Jun  5 11:04:39 IST 2026
[2026-06-05 11:04:39,530.530 INFO    ] ================================================
[2026-06-05 11:04:40,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:04:40
[2026-06-05 11:04:40,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:04:40,990.990 INFO    ] Initializing speech engine...
[2026-06-05 11:04:40,997.997 INFO    ] 2026-06-05 11:04:40
[2026-06-05 11:04:41,257.257 INFO    ] 2026-06-05 11:04:41
[2026-06-05 11:04:41,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:04:41,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:04:41,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:04:41,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:04:41,805.805 INFO    ] time= 05/06/2026 11:04:41
[2026-06-05 11:04:41,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:04:41,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:04:41,964.964 INFO    ] No existing commands found in stream
[2026-06-05 11:04:46,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:04:46,989.989 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 11:04:50,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:04:50,337.337 INFO    ] Checking for system updates...
[2026-06-05 11:04:50,385.385 INFO    ] 200
[2026-06-05 11:04:50,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:04:50,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:04:50,451.451 INFO    ] No update needed
[2026-06-05 11:04:50,453.453 INFO    ] Checking for camera pi updates...
[2026-06-05 11:04:50,487.487 INFO    ] 200
[2026-06-05 11:04:50,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:04:50,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:04:50,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:04:50,588.588 INFO    ] No camera update needed
[2026-06-05 11:04:50,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:04:50,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:04:50,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:04:50,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:04:52,645.645 INFO    ] ================================================
[2026-06-05 11:04:52,661.661 INFO    ] Launching Daemon at Fri Jun  5 11:04:52 IST 2026
[2026-06-05 11:04:52,672.672 INFO    ] ================================================
[2026-06-05 11:04:53,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:04:53
[2026-06-05 11:04:53,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:04:54,212.212 INFO    ] Initializing speech engine...
[2026-06-05 11:04:54,227.227 INFO    ] 2026-06-05 11:04:54
[2026-06-05 11:04:54,522.522 INFO    ] 2026-06-05 11:04:54
[2026-06-05 11:04:54,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:04:54,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:04:54,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:04:55,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:04:55,078.078 INFO    ] time= 05/06/2026 11:04:55
[2026-06-05 11:04:55,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:04:55,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:04:55,253.253 INFO    ] No existing commands found in stream
[2026-06-05 11:05:00,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:05:00,292.292 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 11:05:02,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:05:02,156.156 INFO    ] Checking for system updates...
[2026-06-05 11:05:02,198.198 INFO    ] 200
[2026-06-05 11:05:02,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:02,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:05:02,272.272 INFO    ] No update needed
[2026-06-05 11:05:02,276.276 INFO    ] Checking for camera pi updates...
[2026-06-05 11:05:02,316.316 INFO    ] 200
[2026-06-05 11:05:02,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:02,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:05:02,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:05:02,421.421 INFO    ] No camera update needed
[2026-06-05 11:05:02,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:05:02,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:05:02,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:05:02,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:05:04,482.482 INFO    ] ================================================
[2026-06-05 11:05:04,497.497 INFO    ] Launching Daemon at Fri Jun  5 11:05:04 IST 2026
[2026-06-05 11:05:04,508.508 INFO    ] ================================================
[2026-06-05 11:05:05,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:05:05
[2026-06-05 11:05:05,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:05:06,001.001 INFO    ] Initializing speech engine...
[2026-06-05 11:05:06,016.016 INFO    ] 2026-06-05 11:05:06
[2026-06-05 11:05:06,283.283 INFO    ] 2026-06-05 11:05:06
[2026-06-05 11:05:06,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:05:06,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:05:06,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:05:06,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:05:06,762.762 INFO    ] time= 05/06/2026 11:05:06
[2026-06-05 11:05:06,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:05:06,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:05:06,959.959 INFO    ] No existing commands found in stream
[2026-06-05 11:05:11,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:05:11,992.992 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 11:05:13,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:05:13,256.256 INFO    ] Checking for system updates...
[2026-06-05 11:05:13,297.297 INFO    ] 200
[2026-06-05 11:05:13,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:13,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:05:13,363.363 INFO    ] No update needed
[2026-06-05 11:05:13,365.365 INFO    ] Checking for camera pi updates...
[2026-06-05 11:05:13,403.403 INFO    ] 200
[2026-06-05 11:05:13,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:13,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:05:13,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:05:13,499.499 INFO    ] No camera update needed
[2026-06-05 11:05:13,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:05:13,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:05:13,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:05:13,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:05:15,556.556 INFO    ] ================================================
[2026-06-05 11:05:15,572.572 INFO    ] Launching Daemon at Fri Jun  5 11:05:15 IST 2026
[2026-06-05 11:05:15,582.582 INFO    ] ================================================
[2026-06-05 11:05:16,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:05:16
[2026-06-05 11:05:16,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:05:17,052.052 INFO    ] Initializing speech engine...
[2026-06-05 11:05:17,057.057 INFO    ] 2026-06-05 11:05:17
[2026-06-05 11:05:17,336.336 INFO    ] 2026-06-05 11:05:17
[2026-06-05 11:05:17,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:05:17,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:05:17,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:05:17,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:05:17,763.763 INFO    ] time= 05/06/2026 11:05:17
[2026-06-05 11:05:17,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:05:17,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:05:17,890.890 INFO    ] No existing commands found in stream
[2026-06-05 11:05:22,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:05:22,906.906 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 11:05:24,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:05:24,864.864 INFO    ] Checking for system updates...
[2026-06-05 11:05:24,906.906 INFO    ] 200
[2026-06-05 11:05:24,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:24,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:05:24,975.975 INFO    ] No update needed
[2026-06-05 11:05:24,979.979 INFO    ] Checking for camera pi updates...
[2026-06-05 11:05:25,014.014 INFO    ] 200
[2026-06-05 11:05:25,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:25,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:05:25,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:05:25,110.110 INFO    ] No camera update needed
[2026-06-05 11:05:25,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:05:25,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:05:25,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:05:25,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:05:27,169.169 INFO    ] ================================================
[2026-06-05 11:05:27,184.184 INFO    ] Launching Daemon at Fri Jun  5 11:05:27 IST 2026
[2026-06-05 11:05:27,195.195 INFO    ] ================================================
[2026-06-05 11:05:27,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:05:27
[2026-06-05 11:05:28,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:05:28,715.715 INFO    ] Initializing speech engine...
[2026-06-05 11:05:28,729.729 INFO    ] 2026-06-05 11:05:28
[2026-06-05 11:05:29,043.043 INFO    ] 2026-06-05 11:05:29
[2026-06-05 11:05:29,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:05:30,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:05:30,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:05:31,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:05:31,119.119 INFO    ] time= 05/06/2026 11:05:31
[2026-06-05 11:05:31,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:05:31,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:05:31,246.246 INFO    ] No existing commands found in stream
[2026-06-05 11:05:36,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:05:36,277.277 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 11:05:39,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:05:39,288.288 INFO    ] Checking for system updates...
[2026-06-05 11:05:39,327.327 INFO    ] 200
[2026-06-05 11:05:39,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:39,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:05:39,387.387 INFO    ] No update needed
[2026-06-05 11:05:39,390.390 INFO    ] Checking for camera pi updates...
[2026-06-05 11:05:39,424.424 INFO    ] 200
[2026-06-05 11:05:39,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:39,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:05:39,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:05:39,502.502 INFO    ] No camera update needed
[2026-06-05 11:05:39,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:05:39,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:05:39,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:05:39,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:05:41,558.558 INFO    ] ================================================
[2026-06-05 11:05:41,573.573 INFO    ] Launching Daemon at Fri Jun  5 11:05:41 IST 2026
[2026-06-05 11:05:41,584.584 INFO    ] ================================================
[2026-06-05 11:05:42,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:05:42
[2026-06-05 11:05:42,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:05:43,009.009 INFO    ] Initializing speech engine...
[2026-06-05 11:05:43,023.023 INFO    ] 2026-06-05 11:05:43
[2026-06-05 11:05:43,321.321 INFO    ] 2026-06-05 11:05:43
[2026-06-05 11:05:43,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:05:43,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:05:43,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:05:43,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:05:43,794.794 INFO    ] time= 05/06/2026 11:05:43
[2026-06-05 11:05:43,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:05:43,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:05:44,014.014 INFO    ] No existing commands found in stream
[2026-06-05 11:05:49,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:05:49,042.042 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 11:05:50,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:05:50,771.771 INFO    ] Checking for system updates...
[2026-06-05 11:05:50,808.808 INFO    ] 200
[2026-06-05 11:05:50,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:50,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:05:50,872.872 INFO    ] No update needed
[2026-06-05 11:05:50,875.875 INFO    ] Checking for camera pi updates...
[2026-06-05 11:05:50,913.913 INFO    ] 200
[2026-06-05 11:05:50,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:05:50,961.961 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:05:51,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:05:51,008.008 INFO    ] No camera update needed
[2026-06-05 11:05:51,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:05:51,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:05:51,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:05:51,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:05:53,064.064 INFO    ] ================================================
[2026-06-05 11:05:53,079.079 INFO    ] Launching Daemon at Fri Jun  5 11:05:53 IST 2026
[2026-06-05 11:05:53,090.090 INFO    ] ================================================
[2026-06-05 11:05:53,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:05:53
[2026-06-05 11:05:54,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:05:54,729.729 INFO    ] Initializing speech engine...
[2026-06-05 11:05:54,743.743 INFO    ] 2026-06-05 11:05:54
[2026-06-05 11:05:55,031.031 INFO    ] 2026-06-05 11:05:55
[2026-06-05 11:05:55,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:05:55,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:05:55,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:05:55,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:05:55,568.568 INFO    ] time= 05/06/2026 11:05:55
[2026-06-05 11:05:55,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:05:55,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:05:55,726.726 INFO    ] No existing commands found in stream
[2026-06-05 11:06:00,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:06:00,754.754 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 11:06:01,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:06:01,994.994 INFO    ] Checking for system updates...
[2026-06-05 11:06:02,040.040 INFO    ] 200
[2026-06-05 11:06:02,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:02,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:06:02,108.108 INFO    ] No update needed
[2026-06-05 11:06:02,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 11:06:02,156.156 INFO    ] 200
[2026-06-05 11:06:02,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:02,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:06:02,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:06:02,255.255 INFO    ] No camera update needed
[2026-06-05 11:06:02,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:06:02,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:06:02,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:06:02,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:06:04,314.314 INFO    ] ================================================
[2026-06-05 11:06:04,329.329 INFO    ] Launching Daemon at Fri Jun  5 11:06:04 IST 2026
[2026-06-05 11:06:04,340.340 INFO    ] ================================================
[2026-06-05 11:06:04,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:06:04
[2026-06-05 11:06:05,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:06:05,813.813 INFO    ] Initializing speech engine...
[2026-06-05 11:06:05,823.823 INFO    ] 2026-06-05 11:06:05
[2026-06-05 11:06:06,088.088 INFO    ] 2026-06-05 11:06:06
[2026-06-05 11:06:06,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:06:06,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:06:06,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:06:06,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:06:06,499.499 INFO    ] time= 05/06/2026 11:06:06
[2026-06-05 11:06:06,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:06:06,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:06:06,661.661 INFO    ] No existing commands found in stream
[2026-06-05 11:06:11,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:06:11,694.694 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 11:06:14,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:06:14,860.860 INFO    ] Checking for system updates...
[2026-06-05 11:06:14,896.896 INFO    ] 200
[2026-06-05 11:06:14,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:14,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:06:14,953.953 INFO    ] No update needed
[2026-06-05 11:06:14,955.955 INFO    ] Checking for camera pi updates...
[2026-06-05 11:06:14,989.989 INFO    ] 200
[2026-06-05 11:06:14,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:15,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:06:15,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:06:15,186.186 INFO    ] No camera update needed
[2026-06-05 11:06:15,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:06:15,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:06:15,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:06:15,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:06:17,241.241 INFO    ] ================================================
[2026-06-05 11:06:17,256.256 INFO    ] Launching Daemon at Fri Jun  5 11:06:17 IST 2026
[2026-06-05 11:06:17,267.267 INFO    ] ================================================
[2026-06-05 11:06:17,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:06:17
[2026-06-05 11:06:18,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:06:18,726.726 INFO    ] Initializing speech engine...
[2026-06-05 11:06:18,735.735 INFO    ] 2026-06-05 11:06:18
[2026-06-05 11:06:18,994.994 INFO    ] 2026-06-05 11:06:18
[2026-06-05 11:06:19,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:06:19,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:06:19,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:06:19,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:06:19,517.517 INFO    ] time= 05/06/2026 11:06:19
[2026-06-05 11:06:19,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:06:19,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:06:19,736.736 INFO    ] No existing commands found in stream
[2026-06-05 11:06:24,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:06:24,758.758 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 11:06:25,547.547 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:06:25,550.550 INFO    ] Checking for system updates...
[2026-06-05 11:06:25,588.588 INFO    ] 200
[2026-06-05 11:06:25,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:25,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:06:25,651.651 INFO    ] No update needed
[2026-06-05 11:06:25,653.653 INFO    ] Checking for camera pi updates...
[2026-06-05 11:06:25,687.687 INFO    ] 200
[2026-06-05 11:06:25,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:25,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:06:25,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:06:25,786.786 INFO    ] No camera update needed
[2026-06-05 11:06:25,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:06:25,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:06:25,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:06:25,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:06:27,840.840 INFO    ] ================================================
[2026-06-05 11:06:27,855.855 INFO    ] Launching Daemon at Fri Jun  5 11:06:27 IST 2026
[2026-06-05 11:06:27,866.866 INFO    ] ================================================
[2026-06-05 11:06:28,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:06:28
[2026-06-05 11:06:29,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:06:29,464.464 INFO    ] Initializing speech engine...
[2026-06-05 11:06:29,475.475 INFO    ] 2026-06-05 11:06:29
[2026-06-05 11:06:29,782.782 INFO    ] 2026-06-05 11:06:29
[2026-06-05 11:06:29,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:06:30,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:06:30,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:06:31,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:06:31,141.141 INFO    ] time= 05/06/2026 11:06:31
[2026-06-05 11:06:31,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:06:31,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:06:31,230.230 INFO    ] No existing commands found in stream
[2026-06-05 11:06:36,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:06:36,245.245 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 11:06:39,585.585 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:06:39,588.588 INFO    ] Checking for system updates...
[2026-06-05 11:06:39,625.625 INFO    ] 200
[2026-06-05 11:06:39,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:39,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:06:39,685.685 INFO    ] No update needed
[2026-06-05 11:06:39,687.687 INFO    ] Checking for camera pi updates...
[2026-06-05 11:06:39,721.721 INFO    ] 200
[2026-06-05 11:06:39,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:39,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:06:39,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:06:39,819.819 INFO    ] No camera update needed
[2026-06-05 11:06:39,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:06:39,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:06:39,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:06:39,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:06:41,875.875 INFO    ] ================================================
[2026-06-05 11:06:41,892.892 INFO    ] Launching Daemon at Fri Jun  5 11:06:41 IST 2026
[2026-06-05 11:06:41,902.902 INFO    ] ================================================
[2026-06-05 11:06:42,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:06:42
[2026-06-05 11:06:43,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:06:43,358.358 INFO    ] Initializing speech engine...
[2026-06-05 11:06:43,371.371 INFO    ] 2026-06-05 11:06:43
[2026-06-05 11:06:43,634.634 INFO    ] 2026-06-05 11:06:43
[2026-06-05 11:06:43,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:06:43,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:06:43,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:06:44,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:06:44,048.048 INFO    ] time= 05/06/2026 11:06:44
[2026-06-05 11:06:44,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:06:44,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:06:44,214.214 INFO    ] No existing commands found in stream
[2026-06-05 11:06:49,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:06:49,242.242 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 11:06:52,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:06:52,965.965 INFO    ] Checking for system updates...
[2026-06-05 11:06:53,002.002 INFO    ] 200
[2026-06-05 11:06:53,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:53,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:06:53,060.060 INFO    ] No update needed
[2026-06-05 11:06:53,069.069 INFO    ] Checking for camera pi updates...
[2026-06-05 11:06:53,103.103 INFO    ] 200
[2026-06-05 11:06:53,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:06:53,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:06:53,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:06:53,193.193 INFO    ] No camera update needed
[2026-06-05 11:06:53,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:06:53,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:06:53,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:06:53,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:06:55,248.248 INFO    ] ================================================
[2026-06-05 11:06:55,264.264 INFO    ] Launching Daemon at Fri Jun  5 11:06:55 IST 2026
[2026-06-05 11:06:55,276.276 INFO    ] ================================================
[2026-06-05 11:06:55,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:06:55
[2026-06-05 11:06:56,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:06:56,873.873 INFO    ] Initializing speech engine...
[2026-06-05 11:06:56,883.883 INFO    ] 2026-06-05 11:06:56
[2026-06-05 11:06:57,167.167 INFO    ] 2026-06-05 11:06:57
[2026-06-05 11:06:57,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:06:57,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:06:57,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:06:57,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:06:57,697.697 INFO    ] time= 05/06/2026 11:06:57
[2026-06-05 11:06:57,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:06:57,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:06:57,891.891 INFO    ] No existing commands found in stream
[2026-06-05 11:07:02,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:07:02,931.931 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 11:07:05,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:07:05,337.337 INFO    ] Checking for system updates...
[2026-06-05 11:07:05,383.383 INFO    ] 200
[2026-06-05 11:07:05,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:05,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:07:05,450.450 INFO    ] No update needed
[2026-06-05 11:07:05,453.453 INFO    ] Checking for camera pi updates...
[2026-06-05 11:07:05,491.491 INFO    ] 200
[2026-06-05 11:07:05,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:05,540.540 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:07:05,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:07:05,583.583 INFO    ] No camera update needed
[2026-06-05 11:07:05,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:07:05,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:07:05,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:07:05,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:07:07,639.639 INFO    ] ================================================
[2026-06-05 11:07:07,655.655 INFO    ] Launching Daemon at Fri Jun  5 11:07:07 IST 2026
[2026-06-05 11:07:07,665.665 INFO    ] ================================================
[2026-06-05 11:07:08,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:07:08
[2026-06-05 11:07:08,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:07:09,283.283 INFO    ] Initializing speech engine...
[2026-06-05 11:07:09,291.291 INFO    ] 2026-06-05 11:07:09
[2026-06-05 11:07:09,566.566 INFO    ] 2026-06-05 11:07:09
[2026-06-05 11:07:09,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:07:09,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:07:09,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:07:10,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:07:10,098.098 INFO    ] time= 05/06/2026 11:07:10
[2026-06-05 11:07:10,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:07:10,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:07:10,286.286 INFO    ] No existing commands found in stream
[2026-06-05 11:07:15,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:07:15,305.305 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 11:07:16,309.309 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:07:16,312.312 INFO    ] Checking for system updates...
[2026-06-05 11:07:16,354.354 INFO    ] 200
[2026-06-05 11:07:16,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:16,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:07:16,414.414 INFO    ] No update needed
[2026-06-05 11:07:16,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 11:07:16,451.451 INFO    ] 200
[2026-06-05 11:07:16,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:16,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:07:16,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:07:16,555.555 INFO    ] No camera update needed
[2026-06-05 11:07:16,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:07:16,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:07:16,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:07:16,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:07:18,611.611 INFO    ] ================================================
[2026-06-05 11:07:18,627.627 INFO    ] Launching Daemon at Fri Jun  5 11:07:18 IST 2026
[2026-06-05 11:07:18,638.638 INFO    ] ================================================
[2026-06-05 11:07:19,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:07:19
[2026-06-05 11:07:19,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:07:20,064.064 INFO    ] Initializing speech engine...
[2026-06-05 11:07:20,073.073 INFO    ] 2026-06-05 11:07:20
[2026-06-05 11:07:20,322.322 INFO    ] 2026-06-05 11:07:20
[2026-06-05 11:07:20,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:07:20,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:07:20,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:07:20,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:07:20,707.707 INFO    ] time= 05/06/2026 11:07:20
[2026-06-05 11:07:20,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:07:20,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:07:20,882.882 INFO    ] No existing commands found in stream
[2026-06-05 11:07:25,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:07:25,910.910 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 11:07:30,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:07:30,942.942 INFO    ] Checking for system updates...
[2026-06-05 11:07:30,982.982 INFO    ] 200
[2026-06-05 11:07:30,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:31,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:07:31,046.046 INFO    ] No update needed
[2026-06-05 11:07:31,049.049 INFO    ] Checking for camera pi updates...
[2026-06-05 11:07:31,082.082 INFO    ] 200
[2026-06-05 11:07:31,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:31,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:07:31,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:07:31,185.185 INFO    ] No camera update needed
[2026-06-05 11:07:31,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:07:31,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:07:31,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:07:31,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:07:33,242.242 INFO    ] ================================================
[2026-06-05 11:07:33,259.259 INFO    ] Launching Daemon at Fri Jun  5 11:07:33 IST 2026
[2026-06-05 11:07:33,271.271 INFO    ] ================================================
[2026-06-05 11:07:33,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:07:33
[2026-06-05 11:07:34,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:07:34,783.783 INFO    ] Initializing speech engine...
[2026-06-05 11:07:34,808.808 INFO    ] 2026-06-05 11:07:34
[2026-06-05 11:07:35,079.079 INFO    ] 2026-06-05 11:07:35
[2026-06-05 11:07:35,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:07:35,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:07:35,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:07:35,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:07:35,503.503 INFO    ] time= 05/06/2026 11:07:35
[2026-06-05 11:07:35,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:07:35,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:07:35,676.676 INFO    ] No existing commands found in stream
[2026-06-05 11:07:40,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:07:40,703.703 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 11:07:42,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:07:42,817.817 INFO    ] Checking for system updates...
[2026-06-05 11:07:42,858.858 INFO    ] 200
[2026-06-05 11:07:42,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:42,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:07:42,922.922 INFO    ] No update needed
[2026-06-05 11:07:42,924.924 INFO    ] Checking for camera pi updates...
[2026-06-05 11:07:42,962.962 INFO    ] 200
[2026-06-05 11:07:42,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:43,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:07:43,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:07:43,059.059 INFO    ] No camera update needed
[2026-06-05 11:07:43,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:07:43,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:07:43,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:07:43,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:07:45,116.116 INFO    ] ================================================
[2026-06-05 11:07:45,131.131 INFO    ] Launching Daemon at Fri Jun  5 11:07:45 IST 2026
[2026-06-05 11:07:45,142.142 INFO    ] ================================================
[2026-06-05 11:07:45,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:07:45
[2026-06-05 11:07:46,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:07:46,540.540 INFO    ] Initializing speech engine...
[2026-06-05 11:07:46,555.555 INFO    ] 2026-06-05 11:07:46
[2026-06-05 11:07:46,822.822 INFO    ] 2026-06-05 11:07:46
[2026-06-05 11:07:46,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:07:47,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:07:47,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:07:47,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:07:47,329.329 INFO    ] time= 05/06/2026 11:07:47
[2026-06-05 11:07:47,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:07:47,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:07:47,552.552 INFO    ] No existing commands found in stream
[2026-06-05 11:07:52,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:07:52,570.570 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 11:07:53,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:07:53,563.563 INFO    ] Checking for system updates...
[2026-06-05 11:07:53,599.599 INFO    ] 200
[2026-06-05 11:07:53,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:53,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:07:53,659.659 INFO    ] No update needed
[2026-06-05 11:07:53,661.661 INFO    ] Checking for camera pi updates...
[2026-06-05 11:07:53,699.699 INFO    ] 200
[2026-06-05 11:07:53,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:07:53,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:07:53,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:07:53,801.801 INFO    ] No camera update needed
[2026-06-05 11:07:53,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:07:53,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:07:53,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:07:53,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:07:55,855.855 INFO    ] ================================================
[2026-06-05 11:07:55,870.870 INFO    ] Launching Daemon at Fri Jun  5 11:07:55 IST 2026
[2026-06-05 11:07:55,881.881 INFO    ] ================================================
[2026-06-05 11:07:56,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:07:56
[2026-06-05 11:07:57,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:07:57,287.287 INFO    ] Initializing speech engine...
[2026-06-05 11:07:57,310.310 INFO    ] 2026-06-05 11:07:57
[2026-06-05 11:07:57,564.564 INFO    ] 2026-06-05 11:07:57
[2026-06-05 11:07:57,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:07:57,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:07:57,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:07:57,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:07:58,029.029 INFO    ] time= 05/06/2026 11:07:57
[2026-06-05 11:07:58,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:07:58,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:07:58,243.243 INFO    ] No existing commands found in stream
[2026-06-05 11:08:03,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:08:03,273.273 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 11:08:06,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:08:06,398.398 INFO    ] Checking for system updates...
[2026-06-05 11:08:06,438.438 INFO    ] 200
[2026-06-05 11:08:06,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:08:06,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:08:06,498.498 INFO    ] No update needed
[2026-06-05 11:08:06,501.501 INFO    ] Checking for camera pi updates...
[2026-06-05 11:08:06,539.539 INFO    ] 200
[2026-06-05 11:08:06,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:08:06,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:08:06,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:08:06,634.634 INFO    ] No camera update needed
[2026-06-05 11:08:06,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:08:06,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:08:06,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:08:06,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:08:08,690.690 INFO    ] ================================================
[2026-06-05 11:08:08,706.706 INFO    ] Launching Daemon at Fri Jun  5 11:08:08 IST 2026
[2026-06-05 11:08:08,716.716 INFO    ] ================================================
[2026-06-05 11:08:09,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:08:09
[2026-06-05 11:08:09,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:08:10,250.250 INFO    ] Initializing speech engine...
[2026-06-05 11:08:10,260.260 INFO    ] 2026-06-05 11:08:10
[2026-06-05 11:08:10,513.513 INFO    ] 2026-06-05 11:08:10
[2026-06-05 11:08:10,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:08:10,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:08:10,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:08:10,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:08:11,026.026 INFO    ] time= 05/06/2026 11:08:10
[2026-06-05 11:08:11,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:08:11,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:08:11,198.198 INFO    ] No existing commands found in stream
[2026-06-05 11:08:16,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:08:16,220.220 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 11:08:19,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:08:19,532.532 INFO    ] Checking for system updates...
[2026-06-05 11:08:19,572.572 INFO    ] 200
[2026-06-05 11:08:19,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:08:19,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:08:19,631.631 INFO    ] No update needed
[2026-06-05 11:08:19,634.634 INFO    ] Checking for camera pi updates...
[2026-06-05 11:08:19,668.668 INFO    ] 200
[2026-06-05 11:08:19,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:08:19,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:08:19,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:08:19,868.868 INFO    ] No camera update needed
[2026-06-05 11:08:19,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:08:19,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:08:19,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:08:19,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:08:21,922.922 INFO    ] ================================================
[2026-06-05 11:08:21,937.937 INFO    ] Launching Daemon at Fri Jun  5 11:08:21 IST 2026
[2026-06-05 11:08:21,948.948 INFO    ] ================================================
[2026-06-05 11:08:22,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:08:22
[2026-06-05 11:08:23,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:08:23,473.473 INFO    ] Initializing speech engine...
[2026-06-05 11:08:23,478.478 INFO    ] 2026-06-05 11:08:23
[2026-06-05 11:08:23,743.743 INFO    ] 2026-06-05 11:08:23
[2026-06-05 11:08:23,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:08:24,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:08:24,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:08:24,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:08:24,255.255 INFO    ] time= 05/06/2026 11:08:24
[2026-06-05 11:08:24,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:08:24,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:08:24,418.418 INFO    ] No existing commands found in stream
[2026-06-05 11:08:29,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:08:29,432.432 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 11:08:33,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:08:33,758.758 INFO    ] Checking for system updates...
[2026-06-05 11:08:33,794.794 INFO    ] 200
[2026-06-05 11:08:33,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:08:33,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:08:33,873.873 INFO    ] No update needed
[2026-06-05 11:08:33,876.876 INFO    ] Checking for camera pi updates...
[2026-06-05 11:08:33,910.910 INFO    ] 200
[2026-06-05 11:08:33,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:08:33,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:08:34,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:08:34,011.011 INFO    ] No camera update needed
[2026-06-05 11:08:34,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:08:34,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:08:34,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:08:34,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:08:36,069.069 INFO    ] ================================================
[2026-06-05 11:08:36,084.084 INFO    ] Launching Daemon at Fri Jun  5 11:08:36 IST 2026
[2026-06-05 11:08:36,095.095 INFO    ] ================================================
[2026-06-05 11:08:36,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:08:36
[2026-06-05 11:08:37,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:08:37,776.776 INFO    ] Initializing speech engine...
[2026-06-05 11:08:37,788.788 INFO    ] 2026-06-05 11:08:37
[2026-06-05 11:08:38,111.111 INFO    ] 2026-06-05 11:08:38
[2026-06-05 11:08:38,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:08:38,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:08:38,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:08:38,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:08:38,636.636 INFO    ] time= 05/06/2026 11:08:38
[2026-06-05 11:08:38,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:08:38,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:08:38,800.800 INFO    ] No existing commands found in stream
[2026-06-05 11:08:43,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:08:43,824.824 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 11:08:47,857.857 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:08:47,860.860 INFO    ] Checking for system updates...
[2026-06-05 11:08:47,898.898 INFO    ] 200
[2026-06-05 11:08:47,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:08:47,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:08:47,966.966 INFO    ] No update needed
[2026-06-05 11:08:47,970.970 INFO    ] Checking for camera pi updates...
[2026-06-05 11:08:48,007.007 INFO    ] 200
[2026-06-05 11:08:48,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:08:48,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:08:48,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:08:48,122.122 INFO    ] No camera update needed
[2026-06-05 11:08:48,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:08:48,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:08:48,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:08:48,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:08:50,177.177 INFO    ] ================================================
[2026-06-05 11:08:50,193.193 INFO    ] Launching Daemon at Fri Jun  5 11:08:50 IST 2026
[2026-06-05 11:08:50,204.204 INFO    ] ================================================
[2026-06-05 11:08:50,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:08:50
[2026-06-05 11:08:51,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:08:51,686.686 INFO    ] Initializing speech engine...
[2026-06-05 11:08:51,695.695 INFO    ] 2026-06-05 11:08:51
[2026-06-05 11:08:51,941.941 INFO    ] 2026-06-05 11:08:51
[2026-06-05 11:08:51,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:08:52,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:08:52,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:08:52,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:08:52,934.934 INFO    ] time= 05/06/2026 11:08:52
[2026-06-05 11:08:52,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:08:52,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:08:53,066.066 INFO    ] No existing commands found in stream
[2026-06-05 11:08:58,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:08:58,082.082 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 11:09:01,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:09:01,315.315 INFO    ] Checking for system updates...
[2026-06-05 11:09:01,351.351 INFO    ] 200
[2026-06-05 11:09:01,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:01,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:09:01,411.411 INFO    ] No update needed
[2026-06-05 11:09:01,414.414 INFO    ] Checking for camera pi updates...
[2026-06-05 11:09:01,455.455 INFO    ] 200
[2026-06-05 11:09:01,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:01,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:09:01,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:09:01,632.632 INFO    ] No camera update needed
[2026-06-05 11:09:01,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:09:01,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:09:01,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:09:01,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:09:03,718.718 INFO    ] ================================================
[2026-06-05 11:09:03,734.734 INFO    ] Launching Daemon at Fri Jun  5 11:09:03 IST 2026
[2026-06-05 11:09:03,747.747 INFO    ] ================================================
[2026-06-05 11:09:04,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:09:04
[2026-06-05 11:09:05,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:09:05,443.443 INFO    ] Initializing speech engine...
[2026-06-05 11:09:05,454.454 INFO    ] 2026-06-05 11:09:05
[2026-06-05 11:09:05,771.771 INFO    ] 2026-06-05 11:09:05
[2026-06-05 11:09:05,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:09:06,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:09:06,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:09:06,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:09:06,395.395 INFO    ] time= 05/06/2026 11:09:06
[2026-06-05 11:09:06,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:09:06,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:09:06,536.536 INFO    ] No existing commands found in stream
[2026-06-05 11:09:11,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:09:11,562.562 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 11:09:15,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:09:15,541.541 INFO    ] Checking for system updates...
[2026-06-05 11:09:15,582.582 INFO    ] 200
[2026-06-05 11:09:15,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:15,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:09:15,649.649 INFO    ] No update needed
[2026-06-05 11:09:15,652.652 INFO    ] Checking for camera pi updates...
[2026-06-05 11:09:15,686.686 INFO    ] 200
[2026-06-05 11:09:15,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:15,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:09:15,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:09:15,781.781 INFO    ] No camera update needed
[2026-06-05 11:09:15,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:09:15,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:09:15,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:09:15,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:09:17,837.837 INFO    ] ================================================
[2026-06-05 11:09:17,853.853 INFO    ] Launching Daemon at Fri Jun  5 11:09:17 IST 2026
[2026-06-05 11:09:17,864.864 INFO    ] ================================================
[2026-06-05 11:09:18,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:09:18
[2026-06-05 11:09:19,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:09:19,274.274 INFO    ] Initializing speech engine...
[2026-06-05 11:09:19,298.298 INFO    ] 2026-06-05 11:09:19
[2026-06-05 11:09:19,556.556 INFO    ] 2026-06-05 11:09:19
[2026-06-05 11:09:19,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:09:19,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:09:19,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:09:20,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:09:20,124.124 INFO    ] time= 05/06/2026 11:09:20
[2026-06-05 11:09:20,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:09:20,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:09:20,283.283 INFO    ] No existing commands found in stream
[2026-06-05 11:09:25,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:09:25,299.299 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 11:09:27,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:09:27,358.358 INFO    ] Checking for system updates...
[2026-06-05 11:09:27,399.399 INFO    ] 200
[2026-06-05 11:09:27,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:27,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:09:27,466.466 INFO    ] No update needed
[2026-06-05 11:09:27,468.468 INFO    ] Checking for camera pi updates...
[2026-06-05 11:09:27,507.507 INFO    ] 200
[2026-06-05 11:09:27,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:27,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:09:27,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:09:27,602.602 INFO    ] No camera update needed
[2026-06-05 11:09:27,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:09:27,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:09:27,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:09:27,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:09:29,659.659 INFO    ] ================================================
[2026-06-05 11:09:29,676.676 INFO    ] Launching Daemon at Fri Jun  5 11:09:29 IST 2026
[2026-06-05 11:09:29,687.687 INFO    ] ================================================
[2026-06-05 11:09:30,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:09:30
[2026-06-05 11:09:31,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:09:31,352.352 INFO    ] Initializing speech engine...
[2026-06-05 11:09:31,363.363 INFO    ] 2026-06-05 11:09:31
[2026-06-05 11:09:31,643.643 INFO    ] 2026-06-05 11:09:31
[2026-06-05 11:09:31,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:09:31,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:09:31,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:09:32,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:09:32,127.127 INFO    ] time= 05/06/2026 11:09:32
[2026-06-05 11:09:32,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:09:32,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:09:32,324.324 INFO    ] No existing commands found in stream
[2026-06-05 11:09:37,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:09:37,344.344 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 11:09:40,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:09:40,570.570 INFO    ] Checking for system updates...
[2026-06-05 11:09:40,607.607 INFO    ] 200
[2026-06-05 11:09:40,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:40,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:09:40,667.667 INFO    ] No update needed
[2026-06-05 11:09:40,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 11:09:40,708.708 INFO    ] 200
[2026-06-05 11:09:40,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:40,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:09:40,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:09:40,800.800 INFO    ] No camera update needed
[2026-06-05 11:09:40,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:09:40,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:09:40,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:09:40,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:09:42,859.859 INFO    ] ================================================
[2026-06-05 11:09:42,875.875 INFO    ] Launching Daemon at Fri Jun  5 11:09:42 IST 2026
[2026-06-05 11:09:42,887.887 INFO    ] ================================================
[2026-06-05 11:09:43,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:09:43
[2026-06-05 11:09:44,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:09:44,559.559 INFO    ] Initializing speech engine...
[2026-06-05 11:09:44,569.569 INFO    ] 2026-06-05 11:09:44
[2026-06-05 11:09:44,879.879 INFO    ] 2026-06-05 11:09:44
[2026-06-05 11:09:44,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:09:46,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:09:46,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:09:46,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:09:46,384.384 INFO    ] time= 05/06/2026 11:09:46
[2026-06-05 11:09:46,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:09:46,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:09:46,559.559 INFO    ] No existing commands found in stream
[2026-06-05 11:09:51,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:09:51,588.588 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 11:09:53,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:09:53,811.811 INFO    ] Checking for system updates...
[2026-06-05 11:09:53,852.852 INFO    ] 200
[2026-06-05 11:09:53,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:53,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:09:53,921.921 INFO    ] No update needed
[2026-06-05 11:09:53,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 11:09:53,958.958 INFO    ] 200
[2026-06-05 11:09:53,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:09:54,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:09:54,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:09:54,067.067 INFO    ] No camera update needed
[2026-06-05 11:09:54,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:09:54,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:09:54,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:09:54,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:09:56,126.126 INFO    ] ================================================
[2026-06-05 11:09:56,142.142 INFO    ] Launching Daemon at Fri Jun  5 11:09:56 IST 2026
[2026-06-05 11:09:56,154.154 INFO    ] ================================================
[2026-06-05 11:09:56,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:09:56
[2026-06-05 11:09:57,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:09:57,695.695 INFO    ] Initializing speech engine...
[2026-06-05 11:09:57,700.700 INFO    ] 2026-06-05 11:09:57
[2026-06-05 11:09:57,950.950 INFO    ] 2026-06-05 11:09:57
[2026-06-05 11:09:57,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:09:58,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:09:58,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:09:58,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:09:58,512.512 INFO    ] time= 05/06/2026 11:09:58
[2026-06-05 11:09:58,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:09:58,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:09:58,668.668 INFO    ] No existing commands found in stream
[2026-06-05 11:10:03,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:10:03,686.686 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 11:10:08,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:10:08,234.234 INFO    ] Checking for system updates...
[2026-06-05 11:10:08,288.288 INFO    ] 200
[2026-06-05 11:10:08,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:08,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:10:08,352.352 INFO    ] No update needed
[2026-06-05 11:10:08,355.355 INFO    ] Checking for camera pi updates...
[2026-06-05 11:10:08,393.393 INFO    ] 200
[2026-06-05 11:10:08,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:08,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:10:08,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:10:08,502.502 INFO    ] No camera update needed
[2026-06-05 11:10:08,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:10:08,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:10:08,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:10:08,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:10:10,559.559 INFO    ] ================================================
[2026-06-05 11:10:10,576.576 INFO    ] Launching Daemon at Fri Jun  5 11:10:10 IST 2026
[2026-06-05 11:10:10,587.587 INFO    ] ================================================
[2026-06-05 11:10:11,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:10:11
[2026-06-05 11:10:11,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:10:12,032.032 INFO    ] Initializing speech engine...
[2026-06-05 11:10:12,055.055 INFO    ] 2026-06-05 11:10:12
[2026-06-05 11:10:12,310.310 INFO    ] 2026-06-05 11:10:12
[2026-06-05 11:10:12,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:10:12,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:10:12,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:10:12,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:10:12,803.803 INFO    ] time= 05/06/2026 11:10:12
[2026-06-05 11:10:12,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:10:12,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:10:12,991.991 INFO    ] No existing commands found in stream
[2026-06-05 11:10:18,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:10:18,020.020 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 11:10:21,439.439 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:10:21,442.442 INFO    ] Checking for system updates...
[2026-06-05 11:10:21,480.480 INFO    ] 200
[2026-06-05 11:10:21,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:21,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:10:21,542.542 INFO    ] No update needed
[2026-06-05 11:10:21,544.544 INFO    ] Checking for camera pi updates...
[2026-06-05 11:10:21,578.578 INFO    ] 200
[2026-06-05 11:10:21,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:21,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:10:21,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:10:21,672.672 INFO    ] No camera update needed
[2026-06-05 11:10:21,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:10:21,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:10:21,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:10:21,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:10:23,729.729 INFO    ] ================================================
[2026-06-05 11:10:23,745.745 INFO    ] Launching Daemon at Fri Jun  5 11:10:23 IST 2026
[2026-06-05 11:10:23,757.757 INFO    ] ================================================
[2026-06-05 11:10:24,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:10:24
[2026-06-05 11:10:24,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:10:25,168.168 INFO    ] Initializing speech engine...
[2026-06-05 11:10:25,174.174 INFO    ] 2026-06-05 11:10:25
[2026-06-05 11:10:25,471.471 INFO    ] 2026-06-05 11:10:25
[2026-06-05 11:10:25,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:10:25,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:10:25,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:10:25,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:10:25,892.892 INFO    ] time= 05/06/2026 11:10:25
[2026-06-05 11:10:25,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:10:25,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:10:25,979.979 INFO    ] No existing commands found in stream
[2026-06-05 11:10:31,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:10:31,007.007 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 11:10:34,316.316 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:10:34,319.319 INFO    ] Checking for system updates...
[2026-06-05 11:10:34,356.356 INFO    ] 200
[2026-06-05 11:10:34,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:34,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:10:34,444.444 INFO    ] No update needed
[2026-06-05 11:10:34,446.446 INFO    ] Checking for camera pi updates...
[2026-06-05 11:10:34,480.480 INFO    ] 200
[2026-06-05 11:10:34,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:34,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:10:34,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:10:34,579.579 INFO    ] No camera update needed
[2026-06-05 11:10:34,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:10:34,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:10:34,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:10:34,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:10:36,636.636 INFO    ] ================================================
[2026-06-05 11:10:36,651.651 INFO    ] Launching Daemon at Fri Jun  5 11:10:36 IST 2026
[2026-06-05 11:10:36,662.662 INFO    ] ================================================
[2026-06-05 11:10:37,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:10:37
[2026-06-05 11:10:37,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:10:38,114.114 INFO    ] Initializing speech engine...
[2026-06-05 11:10:38,121.121 INFO    ] 2026-06-05 11:10:38
[2026-06-05 11:10:38,419.419 INFO    ] 2026-06-05 11:10:38
[2026-06-05 11:10:38,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:10:38,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:10:38,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:10:38,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:10:38,844.844 INFO    ] time= 05/06/2026 11:10:38
[2026-06-05 11:10:38,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:10:38,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:10:39,048.048 INFO    ] No existing commands found in stream
[2026-06-05 11:10:44,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:10:44,076.076 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 11:10:44,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:10:44,510.510 INFO    ] Checking for system updates...
[2026-06-05 11:10:44,550.550 INFO    ] 200
[2026-06-05 11:10:44,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:44,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:10:44,614.614 INFO    ] No update needed
[2026-06-05 11:10:44,616.616 INFO    ] Checking for camera pi updates...
[2026-06-05 11:10:44,654.654 INFO    ] 200
[2026-06-05 11:10:44,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:44,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:10:44,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:10:44,752.752 INFO    ] No camera update needed
[2026-06-05 11:10:44,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:10:44,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:10:44,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:10:44,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:10:46,807.807 INFO    ] ================================================
[2026-06-05 11:10:46,823.823 INFO    ] Launching Daemon at Fri Jun  5 11:10:46 IST 2026
[2026-06-05 11:10:46,834.834 INFO    ] ================================================
[2026-06-05 11:10:47,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:10:47
[2026-06-05 11:10:47,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:10:48,237.237 INFO    ] Initializing speech engine...
[2026-06-05 11:10:48,260.260 INFO    ] 2026-06-05 11:10:48
[2026-06-05 11:10:48,517.517 INFO    ] 2026-06-05 11:10:48
[2026-06-05 11:10:48,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:10:48,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:10:48,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:10:49,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:10:49,082.082 INFO    ] time= 05/06/2026 11:10:49
[2026-06-05 11:10:49,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:10:49,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:10:49,229.229 INFO    ] No existing commands found in stream
[2026-06-05 11:10:54,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:10:54,252.252 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 11:10:58,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:10:58,300.300 INFO    ] Checking for system updates...
[2026-06-05 11:10:58,339.339 INFO    ] 200
[2026-06-05 11:10:58,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:58,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:10:58,397.397 INFO    ] No update needed
[2026-06-05 11:10:58,399.399 INFO    ] Checking for camera pi updates...
[2026-06-05 11:10:58,433.433 INFO    ] 200
[2026-06-05 11:10:58,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:10:58,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:10:58,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:10:58,541.541 INFO    ] No camera update needed
[2026-06-05 11:10:58,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:10:58,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:10:58,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:10:58,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:11:00,599.599 INFO    ] ================================================
[2026-06-05 11:11:00,613.613 INFO    ] Launching Daemon at Fri Jun  5 11:11:00 IST 2026
[2026-06-05 11:11:00,624.624 INFO    ] ================================================
[2026-06-05 11:11:01,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:11:01
[2026-06-05 11:11:02,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:11:02,349.349 INFO    ] Initializing speech engine...
[2026-06-05 11:11:02,359.359 INFO    ] 2026-06-05 11:11:02
[2026-06-05 11:11:02,664.664 INFO    ] 2026-06-05 11:11:02
[2026-06-05 11:11:02,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:11:02,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:11:02,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:11:03,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:11:03,075.075 INFO    ] time= 05/06/2026 11:11:03
[2026-06-05 11:11:03,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:11:03,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:11:03,276.276 INFO    ] No existing commands found in stream
[2026-06-05 11:11:08,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:11:08,289.289 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 11:11:09,342.342 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:11:09,346.346 INFO    ] Checking for system updates...
[2026-06-05 11:11:09,392.392 INFO    ] 200
[2026-06-05 11:11:09,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:11:09,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:11:09,453.453 INFO    ] No update needed
[2026-06-05 11:11:09,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 11:11:09,494.494 INFO    ] 200
[2026-06-05 11:11:09,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:11:09,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:11:09,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:11:09,599.599 INFO    ] No camera update needed
[2026-06-05 11:11:09,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:11:09,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:11:09,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:11:09,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:11:11,656.656 INFO    ] ================================================
[2026-06-05 11:11:11,671.671 INFO    ] Launching Daemon at Fri Jun  5 11:11:11 IST 2026
[2026-06-05 11:11:11,682.682 INFO    ] ================================================
[2026-06-05 11:11:12,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:11:12
[2026-06-05 11:11:12,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:11:13,133.133 INFO    ] Initializing speech engine...
[2026-06-05 11:11:13,146.146 INFO    ] 2026-06-05 11:11:13
[2026-06-05 11:11:13,412.412 INFO    ] 2026-06-05 11:11:13
[2026-06-05 11:11:13,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:11:13,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:11:13,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:11:13,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:11:13,933.933 INFO    ] time= 05/06/2026 11:11:13
[2026-06-05 11:11:13,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:11:13,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:11:14,100.100 INFO    ] No existing commands found in stream
[2026-06-05 11:11:19,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:11:19,113.113 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 11:11:22,716.716 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:11:22,719.719 INFO    ] Checking for system updates...
[2026-06-05 11:11:22,759.759 INFO    ] 200
[2026-06-05 11:11:22,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:11:22,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:11:22,824.824 INFO    ] No update needed
[2026-06-05 11:11:22,827.827 INFO    ] Checking for camera pi updates...
[2026-06-05 11:11:22,865.865 INFO    ] 200
[2026-06-05 11:11:22,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:11:22,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:11:22,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:11:22,964.964 INFO    ] No camera update needed
[2026-06-05 11:11:22,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:11:22,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:11:22,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:11:22,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:11:25,021.021 INFO    ] ================================================
[2026-06-05 11:11:25,037.037 INFO    ] Launching Daemon at Fri Jun  5 11:11:25 IST 2026
[2026-06-05 11:11:25,048.048 INFO    ] ================================================
[2026-06-05 11:11:25,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:11:25
[2026-06-05 11:11:26,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:11:26,674.674 INFO    ] Initializing speech engine...
[2026-06-05 11:11:26,687.687 INFO    ] 2026-06-05 11:11:26
[2026-06-05 11:11:26,996.996 INFO    ] 2026-06-05 11:11:26
[2026-06-05 11:11:27,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:11:27,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:11:27,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:11:27,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:11:27,507.507 INFO    ] time= 05/06/2026 11:11:27
[2026-06-05 11:11:27,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:11:27,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:11:27,667.667 INFO    ] No existing commands found in stream
[2026-06-05 11:11:32,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:11:32,691.691 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 11:11:36,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:11:36,505.505 INFO    ] Checking for system updates...
[2026-06-05 11:11:36,542.542 INFO    ] 200
[2026-06-05 11:11:36,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:11:36,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:11:36,602.602 INFO    ] No update needed
[2026-06-05 11:11:36,605.605 INFO    ] Checking for camera pi updates...
[2026-06-05 11:11:36,639.639 INFO    ] 200
[2026-06-05 11:11:36,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:11:36,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:11:36,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:11:36,739.739 INFO    ] No camera update needed
[2026-06-05 11:11:36,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:11:36,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:11:36,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:11:36,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:11:38,797.797 INFO    ] ================================================
[2026-06-05 11:11:38,813.813 INFO    ] Launching Daemon at Fri Jun  5 11:11:38 IST 2026
[2026-06-05 11:11:38,823.823 INFO    ] ================================================
[2026-06-05 11:11:39,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:11:39
[2026-06-05 11:11:39,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:11:40,234.234 INFO    ] Initializing speech engine...
[2026-06-05 11:11:40,258.258 INFO    ] 2026-06-05 11:11:40
[2026-06-05 11:11:40,513.513 INFO    ] 2026-06-05 11:11:40
[2026-06-05 11:11:40,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:11:40,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:11:40,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:11:40,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:11:41,036.036 INFO    ] time= 05/06/2026 11:11:40
[2026-06-05 11:11:41,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:11:41,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:11:41,237.237 INFO    ] No existing commands found in stream
[2026-06-05 11:11:46,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:11:46,257.257 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 11:11:47,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:11:47,216.216 INFO    ] Checking for system updates...
[2026-06-05 11:11:47,253.253 INFO    ] 200
[2026-06-05 11:11:47,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:11:47,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:11:47,313.313 INFO    ] No update needed
[2026-06-05 11:11:47,315.315 INFO    ] Checking for camera pi updates...
[2026-06-05 11:11:47,351.351 INFO    ] 200
[2026-06-05 11:11:47,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:11:47,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:11:47,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:11:47,456.456 INFO    ] No camera update needed
[2026-06-05 11:11:47,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:11:47,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:11:47,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:11:47,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:11:49,516.516 INFO    ] ================================================
[2026-06-05 11:11:49,532.532 INFO    ] Launching Daemon at Fri Jun  5 11:11:49 IST 2026
[2026-06-05 11:11:49,543.543 INFO    ] ================================================
[2026-06-05 11:11:50,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:11:50
[2026-06-05 11:11:50,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:11:50,956.956 INFO    ] Initializing speech engine...
[2026-06-05 11:11:50,979.979 INFO    ] 2026-06-05 11:11:50
[2026-06-05 11:11:51,238.238 INFO    ] 2026-06-05 11:11:51
[2026-06-05 11:11:51,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:11:51,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:11:51,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:11:51,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:11:51,720.720 INFO    ] time= 05/06/2026 11:11:51
[2026-06-05 11:11:51,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:11:51,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:11:51,971.971 INFO    ] No existing commands found in stream
[2026-06-05 11:11:56,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:11:56,992.992 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 11:12:00,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:12:00,879.879 INFO    ] Checking for system updates...
[2026-06-05 11:12:00,919.919 INFO    ] 200
[2026-06-05 11:12:00,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:00,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:12:00,984.984 INFO    ] No update needed
[2026-06-05 11:12:00,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 11:12:01,027.027 INFO    ] 200
[2026-06-05 11:12:01,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:01,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:12:01,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:12:01,131.131 INFO    ] No camera update needed
[2026-06-05 11:12:01,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:12:01,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:12:01,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:12:01,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:12:03,189.189 INFO    ] ================================================
[2026-06-05 11:12:03,205.205 INFO    ] Launching Daemon at Fri Jun  5 11:12:03 IST 2026
[2026-06-05 11:12:03,217.217 INFO    ] ================================================
[2026-06-05 11:12:03,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:12:03
[2026-06-05 11:12:04,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:12:04,630.630 INFO    ] Initializing speech engine...
[2026-06-05 11:12:04,639.639 INFO    ] 2026-06-05 11:12:04
[2026-06-05 11:12:04,932.932 INFO    ] 2026-06-05 11:12:04
[2026-06-05 11:12:04,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:12:05,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:12:05,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:12:05,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:12:05,349.349 INFO    ] time= 05/06/2026 11:12:05
[2026-06-05 11:12:05,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:12:05,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:12:05,517.517 INFO    ] No existing commands found in stream
[2026-06-05 11:12:10,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:12:10,545.545 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 11:12:13,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:12:13,123.123 INFO    ] Checking for system updates...
[2026-06-05 11:12:13,160.160 INFO    ] 200
[2026-06-05 11:12:13,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:13,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:12:13,220.220 INFO    ] No update needed
[2026-06-05 11:12:13,222.222 INFO    ] Checking for camera pi updates...
[2026-06-05 11:12:13,258.258 INFO    ] 200
[2026-06-05 11:12:13,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:13,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:12:13,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:12:13,368.368 INFO    ] No camera update needed
[2026-06-05 11:12:13,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:12:13,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:12:13,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:12:13,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:12:15,427.427 INFO    ] ================================================
[2026-06-05 11:12:15,444.444 INFO    ] Launching Daemon at Fri Jun  5 11:12:15 IST 2026
[2026-06-05 11:12:15,456.456 INFO    ] ================================================
[2026-06-05 11:12:16,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:12:16
[2026-06-05 11:12:16,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:12:16,878.878 INFO    ] Initializing speech engine...
[2026-06-05 11:12:16,885.885 INFO    ] 2026-06-05 11:12:16
[2026-06-05 11:12:17,183.183 INFO    ] 2026-06-05 11:12:17
[2026-06-05 11:12:17,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:12:17,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:12:17,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:12:17,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:12:17,603.603 INFO    ] time= 05/06/2026 11:12:17
[2026-06-05 11:12:17,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:12:17,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:12:17,782.782 INFO    ] No existing commands found in stream
[2026-06-05 11:12:22,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:12:22,810.810 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 11:12:24,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:12:24,689.689 INFO    ] Checking for system updates...
[2026-06-05 11:12:24,726.726 INFO    ] 200
[2026-06-05 11:12:24,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:24,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:12:24,785.785 INFO    ] No update needed
[2026-06-05 11:12:24,787.787 INFO    ] Checking for camera pi updates...
[2026-06-05 11:12:24,826.826 INFO    ] 200
[2026-06-05 11:12:24,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:24,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:12:24,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:12:24,919.919 INFO    ] No camera update needed
[2026-06-05 11:12:24,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:12:24,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:12:24,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:12:24,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:12:26,979.979 INFO    ] ================================================
[2026-06-05 11:12:26,994.994 INFO    ] Launching Daemon at Fri Jun  5 11:12:26 IST 2026
[2026-06-05 11:12:27,005.005 INFO    ] ================================================
[2026-06-05 11:12:27,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:12:27
[2026-06-05 11:12:28,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:12:28,621.621 INFO    ] Initializing speech engine...
[2026-06-05 11:12:28,635.635 INFO    ] 2026-06-05 11:12:28
[2026-06-05 11:12:28,918.918 INFO    ] 2026-06-05 11:12:28
[2026-06-05 11:12:28,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:12:31,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:12:31,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:12:31,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:12:31,305.305 INFO    ] time= 05/06/2026 11:12:31
[2026-06-05 11:12:31,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:12:31,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:12:31,433.433 INFO    ] No existing commands found in stream
[2026-06-05 11:12:36,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:12:36,452.452 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 11:12:39,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:12:39,349.349 INFO    ] Checking for system updates...
[2026-06-05 11:12:39,391.391 INFO    ] 200
[2026-06-05 11:12:39,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:39,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:12:39,454.454 INFO    ] No update needed
[2026-06-05 11:12:39,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 11:12:39,500.500 INFO    ] 200
[2026-06-05 11:12:39,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:39,548.548 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:12:39,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:12:39,703.703 INFO    ] No camera update needed
[2026-06-05 11:12:39,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:12:39,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:12:39,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:12:39,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:12:41,759.759 INFO    ] ================================================
[2026-06-05 11:12:41,774.774 INFO    ] Launching Daemon at Fri Jun  5 11:12:41 IST 2026
[2026-06-05 11:12:41,786.786 INFO    ] ================================================
[2026-06-05 11:12:42,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:12:42
[2026-06-05 11:12:43,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:12:43,404.404 INFO    ] Initializing speech engine...
[2026-06-05 11:12:43,416.416 INFO    ] 2026-06-05 11:12:43
[2026-06-05 11:12:43,696.696 INFO    ] 2026-06-05 11:12:43
[2026-06-05 11:12:43,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:12:43,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:12:43,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:12:44,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:12:44,233.233 INFO    ] time= 05/06/2026 11:12:44
[2026-06-05 11:12:44,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:12:44,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:12:44,385.385 INFO    ] No existing commands found in stream
[2026-06-05 11:12:49,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:12:49,406.406 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 11:12:49,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:12:49,930.930 INFO    ] Checking for system updates...
[2026-06-05 11:12:49,968.968 INFO    ] 200
[2026-06-05 11:12:49,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:50,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:12:50,026.026 INFO    ] No update needed
[2026-06-05 11:12:50,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 11:12:50,079.079 INFO    ] 200
[2026-06-05 11:12:50,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:12:50,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:12:50,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:12:50,188.188 INFO    ] No camera update needed
[2026-06-05 11:12:50,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:12:50,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:12:50,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:12:50,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:12:52,244.244 INFO    ] ================================================
[2026-06-05 11:12:52,260.260 INFO    ] Launching Daemon at Fri Jun  5 11:12:52 IST 2026
[2026-06-05 11:12:52,271.271 INFO    ] ================================================
[2026-06-05 11:12:52,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:12:52
[2026-06-05 11:12:53,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:12:53,729.729 INFO    ] Initializing speech engine...
[2026-06-05 11:12:53,735.735 INFO    ] 2026-06-05 11:12:53
[2026-06-05 11:12:53,984.984 INFO    ] 2026-06-05 11:12:53
[2026-06-05 11:12:54,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:12:54,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:12:54,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:12:54,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:12:54,473.473 INFO    ] time= 05/06/2026 11:12:54
[2026-06-05 11:12:54,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:12:54,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:12:54,694.694 INFO    ] No existing commands found in stream
[2026-06-05 11:12:59,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:12:59,712.712 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 11:13:03,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:13:03,012.012 INFO    ] Checking for system updates...
[2026-06-05 11:13:03,049.049 INFO    ] 200
[2026-06-05 11:13:03,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:03,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:13:03,113.113 INFO    ] No update needed
[2026-06-05 11:13:03,115.115 INFO    ] Checking for camera pi updates...
[2026-06-05 11:13:03,153.153 INFO    ] 200
[2026-06-05 11:13:03,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:03,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:13:03,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:13:03,236.236 INFO    ] No camera update needed
[2026-06-05 11:13:03,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:13:03,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:13:03,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:13:03,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:13:05,291.291 INFO    ] ================================================
[2026-06-05 11:13:05,307.307 INFO    ] Launching Daemon at Fri Jun  5 11:13:05 IST 2026
[2026-06-05 11:13:05,318.318 INFO    ] ================================================
[2026-06-05 11:13:05,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:13:05
[2026-06-05 11:13:06,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:13:06,810.810 INFO    ] Initializing speech engine...
[2026-06-05 11:13:06,819.819 INFO    ] 2026-06-05 11:13:06
[2026-06-05 11:13:07,074.074 INFO    ] 2026-06-05 11:13:07
[2026-06-05 11:13:07,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:13:07,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:13:07,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:13:07,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:13:07,572.572 INFO    ] time= 05/06/2026 11:13:07
[2026-06-05 11:13:07,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:13:07,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:13:07,779.779 INFO    ] No existing commands found in stream
[2026-06-05 11:13:12,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:13:12,796.796 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 11:13:15,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:13:15,625.625 INFO    ] Checking for system updates...
[2026-06-05 11:13:15,665.665 INFO    ] 200
[2026-06-05 11:13:15,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:15,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:13:15,730.730 INFO    ] No update needed
[2026-06-05 11:13:15,733.733 INFO    ] Checking for camera pi updates...
[2026-06-05 11:13:15,770.770 INFO    ] 200
[2026-06-05 11:13:15,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:15,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:13:15,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:13:15,868.868 INFO    ] No camera update needed
[2026-06-05 11:13:15,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:13:15,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:13:15,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:13:15,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:13:17,925.925 INFO    ] ================================================
[2026-06-05 11:13:17,942.942 INFO    ] Launching Daemon at Fri Jun  5 11:13:17 IST 2026
[2026-06-05 11:13:17,953.953 INFO    ] ================================================
[2026-06-05 11:13:18,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:13:18
[2026-06-05 11:13:19,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:13:19,361.361 INFO    ] Initializing speech engine...
[2026-06-05 11:13:19,370.370 INFO    ] 2026-06-05 11:13:19
[2026-06-05 11:13:19,663.663 INFO    ] 2026-06-05 11:13:19
[2026-06-05 11:13:19,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:13:19,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:13:19,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:13:20,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:13:20,100.100 INFO    ] time= 05/06/2026 11:13:20
[2026-06-05 11:13:20,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:13:20,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:13:20,191.191 INFO    ] No existing commands found in stream
[2026-06-05 11:13:25,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:13:25,224.224 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 11:13:27,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:13:27,858.858 INFO    ] Checking for system updates...
[2026-06-05 11:13:27,898.898 INFO    ] 200
[2026-06-05 11:13:27,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:27,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:13:27,957.957 INFO    ] No update needed
[2026-06-05 11:13:27,960.960 INFO    ] Checking for camera pi updates...
[2026-06-05 11:13:27,993.993 INFO    ] 200
[2026-06-05 11:13:27,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:28,037.037 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:13:28,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:13:28,083.083 INFO    ] No camera update needed
[2026-06-05 11:13:28,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:13:28,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:13:28,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:13:28,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:13:30,138.138 INFO    ] ================================================
[2026-06-05 11:13:30,153.153 INFO    ] Launching Daemon at Fri Jun  5 11:13:30 IST 2026
[2026-06-05 11:13:30,164.164 INFO    ] ================================================
[2026-06-05 11:13:30,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:13:30
[2026-06-05 11:13:31,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:13:31,672.672 INFO    ] Initializing speech engine...
[2026-06-05 11:13:31,682.682 INFO    ] 2026-06-05 11:13:31
[2026-06-05 11:13:31,942.942 INFO    ] 2026-06-05 11:13:31
[2026-06-05 11:13:31,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:13:32,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:13:32,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:13:32,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:13:32,362.362 INFO    ] time= 05/06/2026 11:13:32
[2026-06-05 11:13:32,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:13:32,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:13:32,454.454 INFO    ] No existing commands found in stream
[2026-06-05 11:13:37,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:13:37,470.470 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 11:13:40,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:13:40,717.717 INFO    ] Checking for system updates...
[2026-06-05 11:13:40,757.757 INFO    ] 200
[2026-06-05 11:13:40,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:40,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:13:40,815.815 INFO    ] No update needed
[2026-06-05 11:13:40,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 11:13:40,856.856 INFO    ] 200
[2026-06-05 11:13:40,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:40,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:13:40,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:13:40,958.958 INFO    ] No camera update needed
[2026-06-05 11:13:40,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:13:40,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:13:40,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:13:40,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:13:43,017.017 INFO    ] ================================================
[2026-06-05 11:13:43,033.033 INFO    ] Launching Daemon at Fri Jun  5 11:13:43 IST 2026
[2026-06-05 11:13:43,045.045 INFO    ] ================================================
[2026-06-05 11:13:43,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:13:43
[2026-06-05 11:13:44,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:13:44,477.477 INFO    ] Initializing speech engine...
[2026-06-05 11:13:44,498.498 INFO    ] 2026-06-05 11:13:44
[2026-06-05 11:13:44,776.776 INFO    ] 2026-06-05 11:13:44
[2026-06-05 11:13:44,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:13:45,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:13:45,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:13:45,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:13:45,199.199 INFO    ] time= 05/06/2026 11:13:45
[2026-06-05 11:13:45,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:13:45,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:13:45,375.375 INFO    ] No existing commands found in stream
[2026-06-05 11:13:50,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:13:50,403.403 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 11:13:53,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:13:53,294.294 INFO    ] Checking for system updates...
[2026-06-05 11:13:53,334.334 INFO    ] 200
[2026-06-05 11:13:53,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:53,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:13:53,399.399 INFO    ] No update needed
[2026-06-05 11:13:53,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 11:13:53,438.438 INFO    ] 200
[2026-06-05 11:13:53,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:13:53,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:13:53,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:13:53,536.536 INFO    ] No camera update needed
[2026-06-05 11:13:53,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:13:53,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:13:53,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:13:53,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:13:55,591.591 INFO    ] ================================================
[2026-06-05 11:13:55,606.606 INFO    ] Launching Daemon at Fri Jun  5 11:13:55 IST 2026
[2026-06-05 11:13:55,617.617 INFO    ] ================================================
[2026-06-05 11:13:56,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:13:56
[2026-06-05 11:13:56,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:13:57,042.042 INFO    ] Initializing speech engine...
[2026-06-05 11:13:57,051.051 INFO    ] 2026-06-05 11:13:57
[2026-06-05 11:13:57,346.346 INFO    ] 2026-06-05 11:13:57
[2026-06-05 11:13:57,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:13:57,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:13:57,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:13:57,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:13:57,767.767 INFO    ] time= 05/06/2026 11:13:57
[2026-06-05 11:13:57,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:13:57,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:13:57,921.921 INFO    ] No existing commands found in stream
[2026-06-05 11:14:02,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:14:02,949.949 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 11:14:04,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:14:04,246.246 INFO    ] Checking for system updates...
[2026-06-05 11:14:04,283.283 INFO    ] 200
[2026-06-05 11:14:04,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:04,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:14:04,348.348 INFO    ] No update needed
[2026-06-05 11:14:04,351.351 INFO    ] Checking for camera pi updates...
[2026-06-05 11:14:04,384.384 INFO    ] 200
[2026-06-05 11:14:04,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:04,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:14:04,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:14:04,470.470 INFO    ] No camera update needed
[2026-06-05 11:14:04,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:14:04,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:14:04,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:14:04,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:14:06,528.528 INFO    ] ================================================
[2026-06-05 11:14:06,543.543 INFO    ] Launching Daemon at Fri Jun  5 11:14:06 IST 2026
[2026-06-05 11:14:06,553.553 INFO    ] ================================================
[2026-06-05 11:14:07,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:14:07
[2026-06-05 11:14:07,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:14:08,011.011 INFO    ] Initializing speech engine...
[2026-06-05 11:14:08,016.016 INFO    ] 2026-06-05 11:14:08
[2026-06-05 11:14:08,270.270 INFO    ] 2026-06-05 11:14:08
[2026-06-05 11:14:08,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:14:08,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:14:08,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:14:08,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:14:08,802.802 INFO    ] time= 05/06/2026 11:14:08
[2026-06-05 11:14:08,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:14:08,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:14:08,980.980 INFO    ] No existing commands found in stream
[2026-06-05 11:14:14,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:14:14,017.017 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 11:14:14,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:14:14,954.954 INFO    ] Checking for system updates...
[2026-06-05 11:14:14,991.991 INFO    ] 200
[2026-06-05 11:14:14,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:15,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:14:15,059.059 INFO    ] No update needed
[2026-06-05 11:14:15,062.062 INFO    ] Checking for camera pi updates...
[2026-06-05 11:14:15,098.098 INFO    ] 200
[2026-06-05 11:14:15,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:15,149.149 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:14:15,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:14:15,198.198 INFO    ] No camera update needed
[2026-06-05 11:14:15,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:14:15,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:14:15,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:14:15,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:14:17,259.259 INFO    ] ================================================
[2026-06-05 11:14:17,275.275 INFO    ] Launching Daemon at Fri Jun  5 11:14:17 IST 2026
[2026-06-05 11:14:17,286.286 INFO    ] ================================================
[2026-06-05 11:14:17,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:14:17
[2026-06-05 11:14:18,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:14:18,945.945 INFO    ] Initializing speech engine...
[2026-06-05 11:14:18,956.956 INFO    ] 2026-06-05 11:14:18
[2026-06-05 11:14:19,254.254 INFO    ] 2026-06-05 11:14:19
[2026-06-05 11:14:19,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:14:19,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:14:19,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:14:19,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:14:19,809.809 INFO    ] time= 05/06/2026 11:14:19
[2026-06-05 11:14:19,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:14:19,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:14:19,971.971 INFO    ] No existing commands found in stream
[2026-06-05 11:14:25,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:14:25,010.010 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-05 11:14:28,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:14:28,675.675 INFO    ] Checking for system updates...
[2026-06-05 11:14:28,718.718 INFO    ] 200
[2026-06-05 11:14:28,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:28,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:14:28,788.788 INFO    ] No update needed
[2026-06-05 11:14:28,791.791 INFO    ] Checking for camera pi updates...
[2026-06-05 11:14:28,831.831 INFO    ] 200
[2026-06-05 11:14:28,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:28,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:14:28,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:14:28,931.931 INFO    ] No camera update needed
[2026-06-05 11:14:28,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:14:28,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:14:28,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:14:28,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:14:30,991.991 INFO    ] ================================================
[2026-06-05 11:14:31,008.008 INFO    ] Launching Daemon at Fri Jun  5 11:14:31 IST 2026
[2026-06-05 11:14:31,019.019 INFO    ] ================================================
[2026-06-05 11:14:31,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:14:31
[2026-06-05 11:14:32,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:14:32,552.552 INFO    ] Initializing speech engine...
[2026-06-05 11:14:32,571.571 INFO    ] 2026-06-05 11:14:32
[2026-06-05 11:14:32,856.856 INFO    ] 2026-06-05 11:14:32
[2026-06-05 11:14:32,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:14:33,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:14:33,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:14:33,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:14:33,280.280 INFO    ] time= 05/06/2026 11:14:33
[2026-06-05 11:14:33,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:14:33,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:14:33,372.372 INFO    ] No existing commands found in stream
[2026-06-05 11:14:38,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:14:38,388.388 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 11:14:42,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:14:42,289.289 INFO    ] Checking for system updates...
[2026-06-05 11:14:42,330.330 INFO    ] 200
[2026-06-05 11:14:42,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:42,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:14:42,390.390 INFO    ] No update needed
[2026-06-05 11:14:42,392.392 INFO    ] Checking for camera pi updates...
[2026-06-05 11:14:42,431.431 INFO    ] 200
[2026-06-05 11:14:42,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:42,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:14:42,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:14:42,628.628 INFO    ] No camera update needed
[2026-06-05 11:14:42,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:14:42,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:14:42,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:14:42,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:14:44,687.687 INFO    ] ================================================
[2026-06-05 11:14:44,703.703 INFO    ] Launching Daemon at Fri Jun  5 11:14:44 IST 2026
[2026-06-05 11:14:44,713.713 INFO    ] ================================================
[2026-06-05 11:14:45,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:14:45
[2026-06-05 11:14:45,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:14:46,162.162 INFO    ] Initializing speech engine...
[2026-06-05 11:14:46,172.172 INFO    ] 2026-06-05 11:14:46
[2026-06-05 11:14:46,435.435 INFO    ] 2026-06-05 11:14:46
[2026-06-05 11:14:46,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:14:46,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:14:46,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:14:46,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:14:46,918.918 INFO    ] time= 05/06/2026 11:14:46
[2026-06-05 11:14:46,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:14:46,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:14:47,134.134 INFO    ] No existing commands found in stream
[2026-06-05 11:14:52,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:14:52,153.153 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 11:14:52,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:14:52,968.968 INFO    ] Checking for system updates...
[2026-06-05 11:14:53,009.009 INFO    ] 200
[2026-06-05 11:14:53,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:53,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:14:53,069.069 INFO    ] No update needed
[2026-06-05 11:14:53,072.072 INFO    ] Checking for camera pi updates...
[2026-06-05 11:14:53,106.106 INFO    ] 200
[2026-06-05 11:14:53,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:14:53,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:14:53,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:14:53,201.201 INFO    ] No camera update needed
[2026-06-05 11:14:53,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:14:53,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:14:53,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:14:53,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:14:55,260.260 INFO    ] ================================================
[2026-06-05 11:14:55,276.276 INFO    ] Launching Daemon at Fri Jun  5 11:14:55 IST 2026
[2026-06-05 11:14:55,287.287 INFO    ] ================================================
[2026-06-05 11:14:55,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:14:55
[2026-06-05 11:14:56,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:14:56,970.970 INFO    ] Initializing speech engine...
[2026-06-05 11:14:56,981.981 INFO    ] 2026-06-05 11:14:56
[2026-06-05 11:14:57,272.272 INFO    ] 2026-06-05 11:14:57
[2026-06-05 11:14:57,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:14:57,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:14:57,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:14:57,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:14:57,805.805 INFO    ] time= 05/06/2026 11:14:57
[2026-06-05 11:14:57,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:14:57,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:14:57,961.961 INFO    ] No existing commands found in stream
[2026-06-05 11:15:02,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:15:02,990.990 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 11:15:06,204.204 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:15:06,207.207 INFO    ] Checking for system updates...
[2026-06-05 11:15:06,244.244 INFO    ] 200
[2026-06-05 11:15:06,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:06,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:15:06,305.305 INFO    ] No update needed
[2026-06-05 11:15:06,308.308 INFO    ] Checking for camera pi updates...
[2026-06-05 11:15:06,346.346 INFO    ] 200
[2026-06-05 11:15:06,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:06,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:15:06,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:15:06,444.444 INFO    ] No camera update needed
[2026-06-05 11:15:06,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:15:06,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:15:06,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:15:06,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:15:08,503.503 INFO    ] ================================================
[2026-06-05 11:15:08,519.519 INFO    ] Launching Daemon at Fri Jun  5 11:15:08 IST 2026
[2026-06-05 11:15:08,530.530 INFO    ] ================================================
[2026-06-05 11:15:09,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:15:09
[2026-06-05 11:15:09,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:15:10,189.189 INFO    ] Initializing speech engine...
[2026-06-05 11:15:10,201.201 INFO    ] 2026-06-05 11:15:10
[2026-06-05 11:15:10,478.478 INFO    ] 2026-06-05 11:15:10
[2026-06-05 11:15:10,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:15:10,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:15:10,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:15:10,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:15:10,969.969 INFO    ] time= 05/06/2026 11:15:10
[2026-06-05 11:15:11,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:15:11,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:15:11,187.187 INFO    ] No existing commands found in stream
[2026-06-05 11:15:16,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:15:16,202.202 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 11:15:18,474.474 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:15:18,477.477 INFO    ] Checking for system updates...
[2026-06-05 11:15:18,518.518 INFO    ] 200
[2026-06-05 11:15:18,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:18,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:15:18,577.577 INFO    ] No update needed
[2026-06-05 11:15:18,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 11:15:18,614.614 INFO    ] 200
[2026-06-05 11:15:18,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:18,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:15:18,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:15:18,720.720 INFO    ] No camera update needed
[2026-06-05 11:15:18,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:15:18,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:15:18,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:15:18,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:15:20,778.778 INFO    ] ================================================
[2026-06-05 11:15:20,793.793 INFO    ] Launching Daemon at Fri Jun  5 11:15:20 IST 2026
[2026-06-05 11:15:20,804.804 INFO    ] ================================================
[2026-06-05 11:15:21,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:15:21
[2026-06-05 11:15:21,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:15:22,205.205 INFO    ] Initializing speech engine...
[2026-06-05 11:15:22,213.213 INFO    ] 2026-06-05 11:15:22
[2026-06-05 11:15:22,489.489 INFO    ] 2026-06-05 11:15:22
[2026-06-05 11:15:22,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:15:22,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:15:22,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:15:22,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:15:22,974.974 INFO    ] time= 05/06/2026 11:15:22
[2026-06-05 11:15:23,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:15:23,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:15:23,205.205 INFO    ] No existing commands found in stream
[2026-06-05 11:15:28,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:15:28,230.230 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 11:15:31,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:15:31,222.222 INFO    ] Checking for system updates...
[2026-06-05 11:15:31,259.259 INFO    ] 200
[2026-06-05 11:15:31,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:31,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:15:31,316.316 INFO    ] No update needed
[2026-06-05 11:15:31,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 11:15:31,353.353 INFO    ] 200
[2026-06-05 11:15:31,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:31,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:15:31,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:15:31,453.453 INFO    ] No camera update needed
[2026-06-05 11:15:31,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:15:31,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:15:31,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:15:31,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:15:33,512.512 INFO    ] ================================================
[2026-06-05 11:15:33,528.528 INFO    ] Launching Daemon at Fri Jun  5 11:15:33 IST 2026
[2026-06-05 11:15:33,539.539 INFO    ] ================================================
[2026-06-05 11:15:34,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:15:34
[2026-06-05 11:15:34,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:15:34,952.952 INFO    ] Initializing speech engine...
[2026-06-05 11:15:34,971.971 INFO    ] 2026-06-05 11:15:34
[2026-06-05 11:15:35,217.217 INFO    ] 2026-06-05 11:15:35
[2026-06-05 11:15:35,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:15:35,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:15:35,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:15:35,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:15:35,585.585 INFO    ] time= 05/06/2026 11:15:35
[2026-06-05 11:15:35,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:15:35,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:15:35,770.770 INFO    ] No existing commands found in stream
[2026-06-05 11:15:40,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:15:40,798.798 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 11:15:43,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:15:43,954.954 INFO    ] Checking for system updates...
[2026-06-05 11:15:43,991.991 INFO    ] 200
[2026-06-05 11:15:43,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:44,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:15:44,052.052 INFO    ] No update needed
[2026-06-05 11:15:44,054.054 INFO    ] Checking for camera pi updates...
[2026-06-05 11:15:44,088.088 INFO    ] 200
[2026-06-05 11:15:44,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:44,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:15:44,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:15:44,200.200 INFO    ] No camera update needed
[2026-06-05 11:15:44,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:15:44,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:15:44,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:15:44,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:15:46,254.254 INFO    ] ================================================
[2026-06-05 11:15:46,269.269 INFO    ] Launching Daemon at Fri Jun  5 11:15:46 IST 2026
[2026-06-05 11:15:46,280.280 INFO    ] ================================================
[2026-06-05 11:15:46,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:15:46
[2026-06-05 11:15:47,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:15:47,764.764 INFO    ] Initializing speech engine...
[2026-06-05 11:15:47,769.769 INFO    ] 2026-06-05 11:15:47
[2026-06-05 11:15:48,031.031 INFO    ] 2026-06-05 11:15:48
[2026-06-05 11:15:48,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:15:48,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:15:48,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:15:48,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:15:48,488.488 INFO    ] time= 05/06/2026 11:15:48
[2026-06-05 11:15:48,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:15:48,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:15:48,639.639 INFO    ] No existing commands found in stream
[2026-06-05 11:15:53,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:15:53,654.654 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 11:15:55,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:15:55,776.776 INFO    ] Checking for system updates...
[2026-06-05 11:15:55,816.816 INFO    ] 200
[2026-06-05 11:15:55,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:55,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:15:55,895.895 INFO    ] No update needed
[2026-06-05 11:15:55,898.898 INFO    ] Checking for camera pi updates...
[2026-06-05 11:15:55,932.932 INFO    ] 200
[2026-06-05 11:15:55,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:15:55,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:15:56,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:15:56,035.035 INFO    ] No camera update needed
[2026-06-05 11:15:56,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:15:56,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:15:56,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:15:56,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:15:58,096.096 INFO    ] ================================================
[2026-06-05 11:15:58,111.111 INFO    ] Launching Daemon at Fri Jun  5 11:15:58 IST 2026
[2026-06-05 11:15:58,122.122 INFO    ] ================================================
[2026-06-05 11:15:58,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:15:58
[2026-06-05 11:15:59,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:15:59,637.637 INFO    ] Initializing speech engine...
[2026-06-05 11:15:59,656.656 INFO    ] 2026-06-05 11:15:59
[2026-06-05 11:15:59,906.906 INFO    ] 2026-06-05 11:15:59
[2026-06-05 11:15:59,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:16:00,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:16:00,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:16:00,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:16:00,897.897 INFO    ] time= 05/06/2026 11:16:00
[2026-06-05 11:16:00,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:16:00,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:16:01,021.021 INFO    ] No existing commands found in stream
[2026-06-05 11:16:06,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:16:06,050.050 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 11:16:06,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:16:06,917.917 INFO    ] Checking for system updates...
[2026-06-05 11:16:06,954.954 INFO    ] 200
[2026-06-05 11:16:06,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:07,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:16:07,013.013 INFO    ] No update needed
[2026-06-05 11:16:07,016.016 INFO    ] Checking for camera pi updates...
[2026-06-05 11:16:07,053.053 INFO    ] 200
[2026-06-05 11:16:07,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:07,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:16:07,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:16:07,133.133 INFO    ] No camera update needed
[2026-06-05 11:16:07,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:16:07,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:16:07,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:16:07,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:16:09,191.191 INFO    ] ================================================
[2026-06-05 11:16:09,209.209 INFO    ] Launching Daemon at Fri Jun  5 11:16:09 IST 2026
[2026-06-05 11:16:09,222.222 INFO    ] ================================================
[2026-06-05 11:16:09,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:16:09
[2026-06-05 11:16:10,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:16:10,706.706 INFO    ] Initializing speech engine...
[2026-06-05 11:16:10,714.714 INFO    ] 2026-06-05 11:16:10
[2026-06-05 11:16:10,974.974 INFO    ] 2026-06-05 11:16:10
[2026-06-05 11:16:11,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:16:11,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:16:11,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:16:11,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:16:11,465.465 INFO    ] time= 05/06/2026 11:16:11
[2026-06-05 11:16:11,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:16:11,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:16:11,666.666 INFO    ] No existing commands found in stream
[2026-06-05 11:16:16,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:16:16,690.690 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 11:16:18,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:16:18,795.795 INFO    ] Checking for system updates...
[2026-06-05 11:16:18,836.836 INFO    ] 200
[2026-06-05 11:16:18,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:18,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:16:18,894.894 INFO    ] No update needed
[2026-06-05 11:16:18,896.896 INFO    ] Checking for camera pi updates...
[2026-06-05 11:16:18,934.934 INFO    ] 200
[2026-06-05 11:16:18,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:18,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:16:19,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:16:19,027.027 INFO    ] No camera update needed
[2026-06-05 11:16:19,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:16:19,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:16:19,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:16:19,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:16:21,084.084 INFO    ] ================================================
[2026-06-05 11:16:21,100.100 INFO    ] Launching Daemon at Fri Jun  5 11:16:21 IST 2026
[2026-06-05 11:16:21,110.110 INFO    ] ================================================
[2026-06-05 11:16:21,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:16:21
[2026-06-05 11:16:22,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:16:22,572.572 INFO    ] Initializing speech engine...
[2026-06-05 11:16:22,582.582 INFO    ] 2026-06-05 11:16:22
[2026-06-05 11:16:22,843.843 INFO    ] 2026-06-05 11:16:22
[2026-06-05 11:16:22,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:16:23,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:16:23,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:16:23,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:16:23,308.308 INFO    ] time= 05/06/2026 11:16:23
[2026-06-05 11:16:23,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:16:23,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:16:23,532.532 INFO    ] No existing commands found in stream
[2026-06-05 11:16:28,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:16:28,557.557 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 11:16:32,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:16:32,844.844 INFO    ] Checking for system updates...
[2026-06-05 11:16:32,882.882 INFO    ] 200
[2026-06-05 11:16:32,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:32,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:16:32,939.939 INFO    ] No update needed
[2026-06-05 11:16:32,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 11:16:32,975.975 INFO    ] 200
[2026-06-05 11:16:32,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:33,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:16:33,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:16:33,080.080 INFO    ] No camera update needed
[2026-06-05 11:16:33,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:16:33,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:16:33,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:16:33,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:16:35,135.135 INFO    ] ================================================
[2026-06-05 11:16:35,150.150 INFO    ] Launching Daemon at Fri Jun  5 11:16:35 IST 2026
[2026-06-05 11:16:35,161.161 INFO    ] ================================================
[2026-06-05 11:16:35,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:16:35
[2026-06-05 11:16:36,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:16:36,624.624 INFO    ] Initializing speech engine...
[2026-06-05 11:16:36,633.633 INFO    ] 2026-06-05 11:16:36
[2026-06-05 11:16:36,892.892 INFO    ] 2026-06-05 11:16:36
[2026-06-05 11:16:36,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:16:37,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:16:37,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:16:37,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:16:37,430.430 INFO    ] time= 05/06/2026 11:16:37
[2026-06-05 11:16:37,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:16:37,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:16:37,587.587 INFO    ] No existing commands found in stream
[2026-06-05 11:16:42,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:16:42,603.603 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 11:16:44,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:16:44,194.194 INFO    ] Checking for system updates...
[2026-06-05 11:16:44,236.236 INFO    ] 200
[2026-06-05 11:16:44,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:44,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:16:44,297.297 INFO    ] No update needed
[2026-06-05 11:16:44,300.300 INFO    ] Checking for camera pi updates...
[2026-06-05 11:16:44,335.335 INFO    ] 200
[2026-06-05 11:16:44,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:44,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:16:44,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:16:44,551.551 INFO    ] No camera update needed
[2026-06-05 11:16:44,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:16:44,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:16:44,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:16:44,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:16:46,611.611 INFO    ] ================================================
[2026-06-05 11:16:46,626.626 INFO    ] Launching Daemon at Fri Jun  5 11:16:46 IST 2026
[2026-06-05 11:16:46,638.638 INFO    ] ================================================
[2026-06-05 11:16:47,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:16:47
[2026-06-05 11:16:47,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:16:48,307.307 INFO    ] Initializing speech engine...
[2026-06-05 11:16:48,317.317 INFO    ] 2026-06-05 11:16:48
[2026-06-05 11:16:48,623.623 INFO    ] 2026-06-05 11:16:48
[2026-06-05 11:16:48,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:16:48,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:16:48,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:16:49,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:16:49,112.112 INFO    ] time= 05/06/2026 11:16:49
[2026-06-05 11:16:49,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:16:49,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:16:49,297.297 INFO    ] No existing commands found in stream
[2026-06-05 11:16:54,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:16:54,328.328 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 11:16:57,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:16:57,057.057 INFO    ] Checking for system updates...
[2026-06-05 11:16:57,093.093 INFO    ] 200
[2026-06-05 11:16:57,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:57,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:16:57,161.161 INFO    ] No update needed
[2026-06-05 11:16:57,163.163 INFO    ] Checking for camera pi updates...
[2026-06-05 11:16:57,205.205 INFO    ] 200
[2026-06-05 11:16:57,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:16:57,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:16:57,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:16:57,309.309 INFO    ] No camera update needed
[2026-06-05 11:16:57,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:16:57,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:16:57,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:16:57,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:16:59,369.369 INFO    ] ================================================
[2026-06-05 11:16:59,384.384 INFO    ] Launching Daemon at Fri Jun  5 11:16:59 IST 2026
[2026-06-05 11:16:59,395.395 INFO    ] ================================================
[2026-06-05 11:16:59,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:16:59
[2026-06-05 11:17:00,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:17:00,935.935 INFO    ] Initializing speech engine...
[2026-06-05 11:17:00,947.947 INFO    ] 2026-06-05 11:17:00
[2026-06-05 11:17:01,262.262 INFO    ] 2026-06-05 11:17:01
[2026-06-05 11:17:01,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:17:01,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:17:01,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:17:01,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:17:01,759.759 INFO    ] time= 05/06/2026 11:17:01
[2026-06-05 11:17:01,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:17:01,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:17:01,881.881 INFO    ] No existing commands found in stream
[2026-06-05 11:17:06,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:17:06,896.896 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 11:17:08,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:17:08,228.228 INFO    ] Checking for system updates...
[2026-06-05 11:17:08,265.265 INFO    ] 200
[2026-06-05 11:17:08,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:08,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:17:08,329.329 INFO    ] No update needed
[2026-06-05 11:17:08,331.331 INFO    ] Checking for camera pi updates...
[2026-06-05 11:17:08,366.366 INFO    ] 200
[2026-06-05 11:17:08,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:08,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:17:08,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:17:08,453.453 INFO    ] No camera update needed
[2026-06-05 11:17:08,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:17:08,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:17:08,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:17:08,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:17:10,510.510 INFO    ] ================================================
[2026-06-05 11:17:10,525.525 INFO    ] Launching Daemon at Fri Jun  5 11:17:10 IST 2026
[2026-06-05 11:17:10,536.536 INFO    ] ================================================
[2026-06-05 11:17:11,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:17:11
[2026-06-05 11:17:11,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:17:12,063.063 INFO    ] Initializing speech engine...
[2026-06-05 11:17:12,071.071 INFO    ] 2026-06-05 11:17:12
[2026-06-05 11:17:12,359.359 INFO    ] 2026-06-05 11:17:12
[2026-06-05 11:17:12,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:17:12,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:17:12,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:17:12,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:17:12,862.862 INFO    ] time= 05/06/2026 11:17:12
[2026-06-05 11:17:12,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:17:12,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:17:13,059.059 INFO    ] No existing commands found in stream
[2026-06-05 11:17:18,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:17:18,088.088 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 11:17:18,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:17:18,912.912 INFO    ] Checking for system updates...
[2026-06-05 11:17:18,950.950 INFO    ] 200
[2026-06-05 11:17:18,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:19,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:17:19,010.010 INFO    ] No update needed
[2026-06-05 11:17:19,013.013 INFO    ] Checking for camera pi updates...
[2026-06-05 11:17:19,051.051 INFO    ] 200
[2026-06-05 11:17:19,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:19,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:17:19,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:17:19,159.159 INFO    ] No camera update needed
[2026-06-05 11:17:19,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:17:19,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:17:19,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:17:19,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:17:21,228.228 INFO    ] ================================================
[2026-06-05 11:17:21,249.249 INFO    ] Launching Daemon at Fri Jun  5 11:17:21 IST 2026
[2026-06-05 11:17:21,265.265 INFO    ] ================================================
[2026-06-05 11:17:21,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:17:21
[2026-06-05 11:17:22,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:17:22,997.997 INFO    ] Initializing speech engine...
[2026-06-05 11:17:23,005.005 INFO    ] 2026-06-05 11:17:22
[2026-06-05 11:17:23,299.299 INFO    ] 2026-06-05 11:17:23
[2026-06-05 11:17:23,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:17:23,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:17:23,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:17:23,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:17:23,810.810 INFO    ] time= 05/06/2026 11:17:23
[2026-06-05 11:17:23,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:17:23,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:17:24,011.011 INFO    ] No existing commands found in stream
[2026-06-05 11:17:29,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:17:29,031.031 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 11:17:30,845.845 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:17:30,848.848 INFO    ] Checking for system updates...
[2026-06-05 11:17:30,886.886 INFO    ] 200
[2026-06-05 11:17:30,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:30,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:17:30,953.953 INFO    ] No update needed
[2026-06-05 11:17:30,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 11:17:30,996.996 INFO    ] 200
[2026-06-05 11:17:30,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:31,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:17:31,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:17:31,101.101 INFO    ] No camera update needed
[2026-06-05 11:17:31,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:17:31,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:17:31,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:17:31,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:17:33,162.162 INFO    ] ================================================
[2026-06-05 11:17:33,178.178 INFO    ] Launching Daemon at Fri Jun  5 11:17:33 IST 2026
[2026-06-05 11:17:33,188.188 INFO    ] ================================================
[2026-06-05 11:17:33,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:17:33
[2026-06-05 11:17:34,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:17:34,834.834 INFO    ] Initializing speech engine...
[2026-06-05 11:17:34,845.845 INFO    ] 2026-06-05 11:17:34
[2026-06-05 11:17:35,137.137 INFO    ] 2026-06-05 11:17:35
[2026-06-05 11:17:35,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:17:35,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:17:35,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:17:35,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:17:35,597.597 INFO    ] time= 05/06/2026 11:17:35
[2026-06-05 11:17:35,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:17:35,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:17:35,828.828 INFO    ] No existing commands found in stream
[2026-06-05 11:17:40,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:17:40,861.861 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 11:17:45,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:17:45,124.124 INFO    ] Checking for system updates...
[2026-06-05 11:17:45,167.167 INFO    ] 200
[2026-06-05 11:17:45,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:45,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:17:45,229.229 INFO    ] No update needed
[2026-06-05 11:17:45,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 11:17:45,267.267 INFO    ] 200
[2026-06-05 11:17:45,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:45,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:17:45,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:17:45,369.369 INFO    ] No camera update needed
[2026-06-05 11:17:45,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:17:45,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:17:45,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:17:45,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:17:47,425.425 INFO    ] ================================================
[2026-06-05 11:17:47,441.441 INFO    ] Launching Daemon at Fri Jun  5 11:17:47 IST 2026
[2026-06-05 11:17:47,453.453 INFO    ] ================================================
[2026-06-05 11:17:48,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:17:48
[2026-06-05 11:17:48,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:17:49,110.110 INFO    ] Initializing speech engine...
[2026-06-05 11:17:49,119.119 INFO    ] 2026-06-05 11:17:49
[2026-06-05 11:17:49,394.394 INFO    ] 2026-06-05 11:17:49
[2026-06-05 11:17:49,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:17:49,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:17:49,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:17:49,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:17:49,944.944 INFO    ] time= 05/06/2026 11:17:49
[2026-06-05 11:17:49,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:17:49,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:17:50,108.108 INFO    ] No existing commands found in stream
[2026-06-05 11:17:55,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:17:55,143.143 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 11:17:57,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:17:57,681.681 INFO    ] Checking for system updates...
[2026-06-05 11:17:57,719.719 INFO    ] 200
[2026-06-05 11:17:57,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:57,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:17:57,780.780 INFO    ] No update needed
[2026-06-05 11:17:57,783.783 INFO    ] Checking for camera pi updates...
[2026-06-05 11:17:57,819.819 INFO    ] 200
[2026-06-05 11:17:57,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:17:57,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:17:57,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:17:57,913.913 INFO    ] No camera update needed
[2026-06-05 11:17:57,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:17:57,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:17:57,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:17:57,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:17:59,974.974 INFO    ] ================================================
[2026-06-05 11:17:59,989.989 INFO    ] Launching Daemon at Fri Jun  5 11:17:59 IST 2026
[2026-06-05 11:18:00,000.000 INFO    ] ================================================
[2026-06-05 11:18:00,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:18:00
[2026-06-05 11:18:01,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:18:01,862.862 INFO    ] Initializing speech engine...
[2026-06-05 11:18:01,869.869 INFO    ] 2026-06-05 11:18:01
[2026-06-05 11:18:02,251.251 INFO    ] 2026-06-05 11:18:02
[2026-06-05 11:18:02,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:18:02,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:18:02,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:18:02,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:18:02,713.713 INFO    ] time= 05/06/2026 11:18:02
[2026-06-05 11:18:02,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:18:02,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:18:02,879.879 INFO    ] No existing commands found in stream
[2026-06-05 11:18:07,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:18:07,910.910 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 11:18:11,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:18:11,552.552 INFO    ] Checking for system updates...
[2026-06-05 11:18:11,589.589 INFO    ] 200
[2026-06-05 11:18:11,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:18:11,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:18:11,648.648 INFO    ] No update needed
[2026-06-05 11:18:11,651.651 INFO    ] Checking for camera pi updates...
[2026-06-05 11:18:11,686.686 INFO    ] 200
[2026-06-05 11:18:11,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:18:11,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:18:11,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:18:11,783.783 INFO    ] No camera update needed
[2026-06-05 11:18:11,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:18:11,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:18:11,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:18:11,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:18:13,840.840 INFO    ] ================================================
[2026-06-05 11:18:13,855.855 INFO    ] Launching Daemon at Fri Jun  5 11:18:13 IST 2026
[2026-06-05 11:18:13,866.866 INFO    ] ================================================
[2026-06-05 11:18:14,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:18:14
[2026-06-05 11:18:15,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:18:15,268.268 INFO    ] Initializing speech engine...
[2026-06-05 11:18:15,274.274 INFO    ] 2026-06-05 11:18:15
[2026-06-05 11:18:15,544.544 INFO    ] 2026-06-05 11:18:15
[2026-06-05 11:18:15,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:18:15,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:18:15,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:18:16,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:18:16,071.071 INFO    ] time= 05/06/2026 11:18:16
[2026-06-05 11:18:16,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:18:16,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:18:16,252.252 INFO    ] No existing commands found in stream
[2026-06-05 11:18:21,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:18:21,270.270 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 11:18:22,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:18:22,935.935 INFO    ] Checking for system updates...
[2026-06-05 11:18:22,972.972 INFO    ] 200
[2026-06-05 11:18:22,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:18:23,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:18:23,031.031 INFO    ] No update needed
[2026-06-05 11:18:23,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 11:18:23,070.070 INFO    ] 200
[2026-06-05 11:18:23,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:18:23,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:18:23,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:18:23,174.174 INFO    ] No camera update needed
[2026-06-05 11:18:23,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:18:23,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:18:23,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:18:23,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:18:25,229.229 INFO    ] ================================================
[2026-06-05 11:18:25,244.244 INFO    ] Launching Daemon at Fri Jun  5 11:18:25 IST 2026
[2026-06-05 11:18:25,255.255 INFO    ] ================================================
[2026-06-05 11:18:25,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:18:25
[2026-06-05 11:18:26,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:18:26,717.717 INFO    ] Initializing speech engine...
[2026-06-05 11:18:26,730.730 INFO    ] 2026-06-05 11:18:26
[2026-06-05 11:18:27,016.016 INFO    ] 2026-06-05 11:18:27
[2026-06-05 11:18:27,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:18:27,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:18:27,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:18:27,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:18:27,496.496 INFO    ] time= 05/06/2026 11:18:27
[2026-06-05 11:18:27,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:18:27,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:18:27,688.688 INFO    ] No existing commands found in stream
[2026-06-05 11:18:32,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:18:32,717.717 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 11:18:36,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:18:36,822.822 INFO    ] Checking for system updates...
[2026-06-05 11:18:36,860.860 INFO    ] 200
[2026-06-05 11:18:36,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:18:36,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:18:36,927.927 INFO    ] No update needed
[2026-06-05 11:18:36,931.931 INFO    ] Checking for camera pi updates...
[2026-06-05 11:18:36,966.966 INFO    ] 200
[2026-06-05 11:18:36,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:18:37,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:18:37,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:18:37,071.071 INFO    ] No camera update needed
[2026-06-05 11:18:37,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:18:37,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:18:37,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:18:37,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:18:39,129.129 INFO    ] ================================================
[2026-06-05 11:18:39,144.144 INFO    ] Launching Daemon at Fri Jun  5 11:18:39 IST 2026
[2026-06-05 11:18:39,155.155 INFO    ] ================================================
[2026-06-05 11:18:39,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:18:39
[2026-06-05 11:18:40,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:18:40,793.793 INFO    ] Initializing speech engine...
[2026-06-05 11:18:40,805.805 INFO    ] 2026-06-05 11:18:40
[2026-06-05 11:18:41,118.118 INFO    ] 2026-06-05 11:18:41
[2026-06-05 11:18:41,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:18:41,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:18:41,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:18:41,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:18:41,634.634 INFO    ] time= 05/06/2026 11:18:41
[2026-06-05 11:18:41,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:18:41,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:18:41,796.796 INFO    ] No existing commands found in stream
[2026-06-05 11:18:46,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:18:46,823.823 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 11:18:47,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:18:47,516.516 INFO    ] Checking for system updates...
[2026-06-05 11:18:47,557.557 INFO    ] 200
[2026-06-05 11:18:47,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:18:47,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:18:47,615.615 INFO    ] No update needed
[2026-06-05 11:18:47,618.618 INFO    ] Checking for camera pi updates...
[2026-06-05 11:18:47,651.651 INFO    ] 200
[2026-06-05 11:18:47,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:18:47,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:18:47,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:18:47,843.843 INFO    ] No camera update needed
[2026-06-05 11:18:47,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:18:47,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:18:47,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:18:47,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:18:49,898.898 INFO    ] ================================================
[2026-06-05 11:18:49,913.913 INFO    ] Launching Daemon at Fri Jun  5 11:18:49 IST 2026
[2026-06-05 11:18:49,924.924 INFO    ] ================================================
[2026-06-05 11:18:50,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:18:50
[2026-06-05 11:18:51,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:18:51,407.407 INFO    ] Initializing speech engine...
[2026-06-05 11:18:51,422.422 INFO    ] 2026-06-05 11:18:51
[2026-06-05 11:18:51,686.686 INFO    ] 2026-06-05 11:18:51
[2026-06-05 11:18:51,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:18:51,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:18:51,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:18:52,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:18:52,084.084 INFO    ] time= 05/06/2026 11:18:52
[2026-06-05 11:18:52,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:18:52,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:18:52,262.262 INFO    ] No existing commands found in stream
[2026-06-05 11:18:57,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:18:57,296.296 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 11:19:01,763.763 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:19:01,767.767 INFO    ] Checking for system updates...
[2026-06-05 11:19:01,811.811 INFO    ] 200
[2026-06-05 11:19:01,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:01,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:19:01,878.878 INFO    ] No update needed
[2026-06-05 11:19:01,881.881 INFO    ] Checking for camera pi updates...
[2026-06-05 11:19:01,919.919 INFO    ] 200
[2026-06-05 11:19:01,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:01,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:19:02,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:19:02,053.053 INFO    ] No camera update needed
[2026-06-05 11:19:02,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:19:02,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:19:02,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:19:02,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:19:04,114.114 INFO    ] ================================================
[2026-06-05 11:19:04,130.130 INFO    ] Launching Daemon at Fri Jun  5 11:19:04 IST 2026
[2026-06-05 11:19:04,141.141 INFO    ] ================================================
[2026-06-05 11:19:04,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:19:04
[2026-06-05 11:19:05,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:19:05,617.617 INFO    ] Initializing speech engine...
[2026-06-05 11:19:05,631.631 INFO    ] 2026-06-05 11:19:05
[2026-06-05 11:19:05,906.906 INFO    ] 2026-06-05 11:19:05
[2026-06-05 11:19:05,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:19:06,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:19:06,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:19:06,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:19:06,407.407 INFO    ] time= 05/06/2026 11:19:06
[2026-06-05 11:19:06,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:19:06,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:19:06,629.629 INFO    ] No existing commands found in stream
[2026-06-05 11:19:11,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:19:11,649.649 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 11:19:14,624.624 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:19:14,627.627 INFO    ] Checking for system updates...
[2026-06-05 11:19:14,664.664 INFO    ] 200
[2026-06-05 11:19:14,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:14,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:19:14,730.730 INFO    ] No update needed
[2026-06-05 11:19:14,733.733 INFO    ] Checking for camera pi updates...
[2026-06-05 11:19:14,770.770 INFO    ] 200
[2026-06-05 11:19:14,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:14,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:19:14,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:19:14,862.862 INFO    ] No camera update needed
[2026-06-05 11:19:14,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:19:14,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:19:14,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:19:14,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:19:16,918.918 INFO    ] ================================================
[2026-06-05 11:19:16,934.934 INFO    ] Launching Daemon at Fri Jun  5 11:19:16 IST 2026
[2026-06-05 11:19:16,944.944 INFO    ] ================================================
[2026-06-05 11:19:17,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:19:17
[2026-06-05 11:19:18,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:19:18,609.609 INFO    ] Initializing speech engine...
[2026-06-05 11:19:18,616.616 INFO    ] 2026-06-05 11:19:18
[2026-06-05 11:19:18,888.888 INFO    ] 2026-06-05 11:19:18
[2026-06-05 11:19:18,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:19:19,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:19:19,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:19:19,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:19:19,422.422 INFO    ] time= 05/06/2026 11:19:19
[2026-06-05 11:19:19,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:19:19,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:19:19,560.560 INFO    ] No existing commands found in stream
[2026-06-05 11:19:24,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:19:24,588.588 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 11:19:26,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:19:26,150.150 INFO    ] Checking for system updates...
[2026-06-05 11:19:26,190.190 INFO    ] 200
[2026-06-05 11:19:26,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:26,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:19:26,253.253 INFO    ] No update needed
[2026-06-05 11:19:26,256.256 INFO    ] Checking for camera pi updates...
[2026-06-05 11:19:26,292.292 INFO    ] 200
[2026-06-05 11:19:26,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:26,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:19:26,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:19:26,388.388 INFO    ] No camera update needed
[2026-06-05 11:19:26,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:19:26,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:19:26,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:19:26,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:19:28,443.443 INFO    ] ================================================
[2026-06-05 11:19:28,458.458 INFO    ] Launching Daemon at Fri Jun  5 11:19:28 IST 2026
[2026-06-05 11:19:28,469.469 INFO    ] ================================================
[2026-06-05 11:19:29,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:19:29
[2026-06-05 11:19:29,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:19:29,912.912 INFO    ] Initializing speech engine...
[2026-06-05 11:19:29,922.922 INFO    ] 2026-06-05 11:19:29
[2026-06-05 11:19:30,181.181 INFO    ] 2026-06-05 11:19:30
[2026-06-05 11:19:30,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:19:30,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:19:30,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:19:31,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:19:31,150.150 INFO    ] time= 05/06/2026 11:19:31
[2026-06-05 11:19:31,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:19:31,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:19:31,265.265 INFO    ] No existing commands found in stream
[2026-06-05 11:19:36,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:19:36,299.299 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 11:19:38,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:19:38,612.612 INFO    ] Checking for system updates...
[2026-06-05 11:19:38,648.648 INFO    ] 200
[2026-06-05 11:19:38,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:38,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:19:38,705.705 INFO    ] No update needed
[2026-06-05 11:19:38,707.707 INFO    ] Checking for camera pi updates...
[2026-06-05 11:19:38,741.741 INFO    ] 200
[2026-06-05 11:19:38,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:38,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:19:38,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:19:38,841.841 INFO    ] No camera update needed
[2026-06-05 11:19:38,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:19:38,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:19:38,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:19:38,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:19:40,895.895 INFO    ] ================================================
[2026-06-05 11:19:40,910.910 INFO    ] Launching Daemon at Fri Jun  5 11:19:40 IST 2026
[2026-06-05 11:19:40,921.921 INFO    ] ================================================
[2026-06-05 11:19:41,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:19:41
[2026-06-05 11:19:42,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:19:42,389.389 INFO    ] Initializing speech engine...
[2026-06-05 11:19:42,398.398 INFO    ] 2026-06-05 11:19:42
[2026-06-05 11:19:42,658.658 INFO    ] 2026-06-05 11:19:42
[2026-06-05 11:19:42,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:19:42,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:19:42,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:19:43,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:19:43,136.136 INFO    ] time= 05/06/2026 11:19:43
[2026-06-05 11:19:43,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:19:43,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:19:43,361.361 INFO    ] No existing commands found in stream
[2026-06-05 11:19:48,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:19:48,378.378 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 11:19:52,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:19:52,766.766 INFO    ] Checking for system updates...
[2026-06-05 11:19:52,804.804 INFO    ] 200
[2026-06-05 11:19:52,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:52,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:19:52,874.874 INFO    ] No update needed
[2026-06-05 11:19:52,877.877 INFO    ] Checking for camera pi updates...
[2026-06-05 11:19:52,918.918 INFO    ] 200
[2026-06-05 11:19:52,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:19:52,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:19:53,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:19:53,026.026 INFO    ] No camera update needed
[2026-06-05 11:19:53,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:19:53,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:19:53,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:19:53,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:19:55,084.084 INFO    ] ================================================
[2026-06-05 11:19:55,099.099 INFO    ] Launching Daemon at Fri Jun  5 11:19:55 IST 2026
[2026-06-05 11:19:55,110.110 INFO    ] ================================================
[2026-06-05 11:19:55,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:19:55
[2026-06-05 11:19:56,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:19:56,574.574 INFO    ] Initializing speech engine...
[2026-06-05 11:19:56,583.583 INFO    ] 2026-06-05 11:19:56
[2026-06-05 11:19:56,854.854 INFO    ] 2026-06-05 11:19:56
[2026-06-05 11:19:56,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:19:57,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:19:57,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:19:57,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:19:57,390.390 INFO    ] time= 05/06/2026 11:19:57
[2026-06-05 11:19:57,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:19:57,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:19:57,562.562 INFO    ] No existing commands found in stream
[2026-06-05 11:20:02,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:20:02,591.591 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 11:20:07,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:20:07,450.450 INFO    ] Checking for system updates...
[2026-06-05 11:20:07,486.486 INFO    ] 200
[2026-06-05 11:20:07,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:07,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:20:07,546.546 INFO    ] No update needed
[2026-06-05 11:20:07,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 11:20:07,583.583 INFO    ] 200
[2026-06-05 11:20:07,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:07,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:20:07,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:20:07,681.681 INFO    ] No camera update needed
[2026-06-05 11:20:07,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:20:07,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:20:07,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:20:07,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:20:09,739.739 INFO    ] ================================================
[2026-06-05 11:20:09,755.755 INFO    ] Launching Daemon at Fri Jun  5 11:20:09 IST 2026
[2026-06-05 11:20:09,766.766 INFO    ] ================================================
[2026-06-05 11:20:10,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:20:10
[2026-06-05 11:20:10,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:20:11,167.167 INFO    ] Initializing speech engine...
[2026-06-05 11:20:11,180.180 INFO    ] 2026-06-05 11:20:11
[2026-06-05 11:20:11,443.443 INFO    ] 2026-06-05 11:20:11
[2026-06-05 11:20:11,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:20:11,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:20:11,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:20:11,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:20:11,941.941 INFO    ] time= 05/06/2026 11:20:11
[2026-06-05 11:20:11,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:20:12,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:20:12,148.148 INFO    ] No existing commands found in stream
[2026-06-05 11:20:17,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:20:17,170.170 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 11:20:17,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:20:17,823.823 INFO    ] Checking for system updates...
[2026-06-05 11:20:17,865.865 INFO    ] 200
[2026-06-05 11:20:17,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:17,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:20:17,934.934 INFO    ] No update needed
[2026-06-05 11:20:17,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 11:20:17,972.972 INFO    ] 200
[2026-06-05 11:20:17,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:18,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:20:18,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:20:18,063.063 INFO    ] No camera update needed
[2026-06-05 11:20:18,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:20:18,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:20:18,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:20:18,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:20:20,119.119 INFO    ] ================================================
[2026-06-05 11:20:20,134.134 INFO    ] Launching Daemon at Fri Jun  5 11:20:20 IST 2026
[2026-06-05 11:20:20,145.145 INFO    ] ================================================
[2026-06-05 11:20:20,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:20:20
[2026-06-05 11:20:21,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:20:21,735.735 INFO    ] Initializing speech engine...
[2026-06-05 11:20:21,743.743 INFO    ] 2026-06-05 11:20:21
[2026-06-05 11:20:22,029.029 INFO    ] 2026-06-05 11:20:22
[2026-06-05 11:20:22,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:20:22,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:20:22,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:20:22,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:20:22,588.588 INFO    ] time= 05/06/2026 11:20:22
[2026-06-05 11:20:22,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:20:22,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:20:22,734.734 INFO    ] No existing commands found in stream
[2026-06-05 11:20:27,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:20:27,763.763 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 11:20:30,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:20:30,694.694 INFO    ] Checking for system updates...
[2026-06-05 11:20:30,731.731 INFO    ] 200
[2026-06-05 11:20:30,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:30,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:20:30,790.790 INFO    ] No update needed
[2026-06-05 11:20:30,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 11:20:30,828.828 INFO    ] 200
[2026-06-05 11:20:30,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:30,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:20:30,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:20:30,923.923 INFO    ] No camera update needed
[2026-06-05 11:20:30,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:20:30,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:20:30,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:20:30,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:20:32,981.981 INFO    ] ================================================
[2026-06-05 11:20:33,996.996 INFO    ] Launching Daemon at Fri Jun  5 11:20:32 IST 2026
[2026-06-05 11:20:33,006.006 INFO    ] ================================================
[2026-06-05 11:20:33,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:20:33
[2026-06-05 11:20:34,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:20:34,597.597 INFO    ] Initializing speech engine...
[2026-06-05 11:20:34,606.606 INFO    ] 2026-06-05 11:20:34
[2026-06-05 11:20:34,875.875 INFO    ] 2026-06-05 11:20:34
[2026-06-05 11:20:34,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:20:35,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:20:35,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:20:35,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:20:35,367.367 INFO    ] time= 05/06/2026 11:20:35
[2026-06-05 11:20:35,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:20:35,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:20:35,578.578 INFO    ] No existing commands found in stream
[2026-06-05 11:20:40,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:20:40,596.596 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 11:20:43,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:20:43,932.932 INFO    ] Checking for system updates...
[2026-06-05 11:20:43,972.972 INFO    ] 200
[2026-06-05 11:20:43,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:44,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:20:44,030.030 INFO    ] No update needed
[2026-06-05 11:20:44,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 11:20:44,067.067 INFO    ] 200
[2026-06-05 11:20:44,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:44,116.116 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:20:44,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:20:44,162.162 INFO    ] No camera update needed
[2026-06-05 11:20:44,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:20:44,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:20:44,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:20:44,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:20:46,218.218 INFO    ] ================================================
[2026-06-05 11:20:46,234.234 INFO    ] Launching Daemon at Fri Jun  5 11:20:46 IST 2026
[2026-06-05 11:20:46,244.244 INFO    ] ================================================
[2026-06-05 11:20:46,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:20:46
[2026-06-05 11:20:47,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:20:47,669.669 INFO    ] Initializing speech engine...
[2026-06-05 11:20:47,679.679 INFO    ] 2026-06-05 11:20:47
[2026-06-05 11:20:47,929.929 INFO    ] 2026-06-05 11:20:47
[2026-06-05 11:20:47,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:20:48,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:20:48,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:20:48,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:20:48,409.409 INFO    ] time= 05/06/2026 11:20:48
[2026-06-05 11:20:48,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:20:48,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:20:48,650.650 INFO    ] No existing commands found in stream
[2026-06-05 11:20:53,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:20:53,670.670 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 11:20:57,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:20:57,674.674 INFO    ] Checking for system updates...
[2026-06-05 11:20:57,713.713 INFO    ] 200
[2026-06-05 11:20:57,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:57,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:20:57,772.772 INFO    ] No update needed
[2026-06-05 11:20:57,775.775 INFO    ] Checking for camera pi updates...
[2026-06-05 11:20:57,810.810 INFO    ] 200
[2026-06-05 11:20:57,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:20:57,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:20:58,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:20:58,015.015 INFO    ] No camera update needed
[2026-06-05 11:20:58,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:20:58,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:20:58,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:20:58,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:21:00,072.072 INFO    ] ================================================
[2026-06-05 11:21:00,088.088 INFO    ] Launching Daemon at Fri Jun  5 11:21:00 IST 2026
[2026-06-05 11:21:00,099.099 INFO    ] ================================================
[2026-06-05 11:21:00,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:21:00
[2026-06-05 11:21:01,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:21:01,928.928 INFO    ] Initializing speech engine...
[2026-06-05 11:21:01,937.937 INFO    ] 2026-06-05 11:21:01
[2026-06-05 11:21:02,312.312 INFO    ] 2026-06-05 11:21:02
[2026-06-05 11:21:02,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:21:02,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:21:02,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:21:02,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:21:02,915.915 INFO    ] time= 05/06/2026 11:21:02
[2026-06-05 11:21:02,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:21:03,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:21:03,152.152 INFO    ] No existing commands found in stream
[2026-06-05 11:21:08,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:21:08,178.178 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 11:21:09,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:21:09,446.446 INFO    ] Checking for system updates...
[2026-06-05 11:21:09,503.503 INFO    ] 200
[2026-06-05 11:21:09,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:09,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:21:09,567.567 INFO    ] No update needed
[2026-06-05 11:21:09,569.569 INFO    ] Checking for camera pi updates...
[2026-06-05 11:21:09,604.604 INFO    ] 200
[2026-06-05 11:21:09,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:09,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:21:09,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:21:09,711.711 INFO    ] No camera update needed
[2026-06-05 11:21:09,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:21:09,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:21:09,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:21:09,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:21:11,767.767 INFO    ] ================================================
[2026-06-05 11:21:11,782.782 INFO    ] Launching Daemon at Fri Jun  5 11:21:11 IST 2026
[2026-06-05 11:21:11,793.793 INFO    ] ================================================
[2026-06-05 11:21:12,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:21:12
[2026-06-05 11:21:12,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:21:13,199.199 INFO    ] Initializing speech engine...
[2026-06-05 11:21:13,207.207 INFO    ] 2026-06-05 11:21:13
[2026-06-05 11:21:13,495.495 INFO    ] 2026-06-05 11:21:13
[2026-06-05 11:21:13,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:21:13,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:21:13,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:21:13,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:21:13,997.997 INFO    ] time= 05/06/2026 11:21:13
[2026-06-05 11:21:14,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:21:14,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:21:14,248.248 INFO    ] No existing commands found in stream
[2026-06-05 11:21:19,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:21:19,269.269 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 11:21:23,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:21:23,657.657 INFO    ] Checking for system updates...
[2026-06-05 11:21:23,696.696 INFO    ] 200
[2026-06-05 11:21:23,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:23,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:21:23,754.754 INFO    ] No update needed
[2026-06-05 11:21:23,757.757 INFO    ] Checking for camera pi updates...
[2026-06-05 11:21:23,791.791 INFO    ] 200
[2026-06-05 11:21:23,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:23,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:21:23,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:21:23,889.889 INFO    ] No camera update needed
[2026-06-05 11:21:23,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:21:23,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:21:23,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:21:23,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:21:25,944.944 INFO    ] ================================================
[2026-06-05 11:21:25,960.960 INFO    ] Launching Daemon at Fri Jun  5 11:21:25 IST 2026
[2026-06-05 11:21:25,971.971 INFO    ] ================================================
[2026-06-05 11:21:26,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:21:26
[2026-06-05 11:21:27,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:21:27,557.557 INFO    ] Initializing speech engine...
[2026-06-05 11:21:27,566.566 INFO    ] 2026-06-05 11:21:27
[2026-06-05 11:21:27,847.847 INFO    ] 2026-06-05 11:21:27
[2026-06-05 11:21:27,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:21:28,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:21:28,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:21:28,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:21:28,326.326 INFO    ] time= 05/06/2026 11:21:28
[2026-06-05 11:21:28,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:21:28,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:21:28,526.526 INFO    ] No existing commands found in stream
[2026-06-05 11:21:33,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:21:33,551.551 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 11:21:34,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:21:34,183.183 INFO    ] Checking for system updates...
[2026-06-05 11:21:34,219.219 INFO    ] 200
[2026-06-05 11:21:34,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:34,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:21:34,278.278 INFO    ] No update needed
[2026-06-05 11:21:34,280.280 INFO    ] Checking for camera pi updates...
[2026-06-05 11:21:34,317.317 INFO    ] 200
[2026-06-05 11:21:34,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:34,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:21:34,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:21:34,420.420 INFO    ] No camera update needed
[2026-06-05 11:21:34,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:21:34,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:21:34,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:21:34,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:21:36,477.477 INFO    ] ================================================
[2026-06-05 11:21:36,492.492 INFO    ] Launching Daemon at Fri Jun  5 11:21:36 IST 2026
[2026-06-05 11:21:36,503.503 INFO    ] ================================================
[2026-06-05 11:21:37,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:21:37
[2026-06-05 11:21:37,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:21:37,936.936 INFO    ] Initializing speech engine...
[2026-06-05 11:21:37,947.947 INFO    ] 2026-06-05 11:21:37
[2026-06-05 11:21:38,210.210 INFO    ] 2026-06-05 11:21:38
[2026-06-05 11:21:38,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:21:38,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:21:38,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:21:38,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:21:38,667.667 INFO    ] time= 05/06/2026 11:21:38
[2026-06-05 11:21:38,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:21:38,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:21:38,874.874 INFO    ] No existing commands found in stream
[2026-06-05 11:21:43,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:21:43,904.904 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 11:21:44,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:21:44,972.972 INFO    ] Checking for system updates...
[2026-06-05 11:21:45,009.009 INFO    ] 200
[2026-06-05 11:21:45,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:45,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:21:45,072.072 INFO    ] No update needed
[2026-06-05 11:21:45,075.075 INFO    ] Checking for camera pi updates...
[2026-06-05 11:21:45,113.113 INFO    ] 200
[2026-06-05 11:21:45,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:45,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:21:45,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:21:45,219.219 INFO    ] No camera update needed
[2026-06-05 11:21:45,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:21:45,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:21:45,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:21:45,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:21:47,278.278 INFO    ] ================================================
[2026-06-05 11:21:47,293.293 INFO    ] Launching Daemon at Fri Jun  5 11:21:47 IST 2026
[2026-06-05 11:21:47,304.304 INFO    ] ================================================
[2026-06-05 11:21:47,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:21:47
[2026-06-05 11:21:48,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:21:48,888.888 INFO    ] Initializing speech engine...
[2026-06-05 11:21:48,897.897 INFO    ] 2026-06-05 11:21:48
[2026-06-05 11:21:49,167.167 INFO    ] 2026-06-05 11:21:49
[2026-06-05 11:21:49,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:21:49,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:21:49,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:21:49,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:21:49,640.640 INFO    ] time= 05/06/2026 11:21:49
[2026-06-05 11:21:49,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:21:49,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:21:49,807.807 INFO    ] No existing commands found in stream
[2026-06-05 11:21:54,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:21:54,849.849 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 11:21:57,226.226 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:21:57,229.229 INFO    ] Checking for system updates...
[2026-06-05 11:21:57,268.268 INFO    ] 200
[2026-06-05 11:21:57,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:57,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:21:57,332.332 INFO    ] No update needed
[2026-06-05 11:21:57,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 11:21:57,371.371 INFO    ] 200
[2026-06-05 11:21:57,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:21:57,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:21:57,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:21:57,490.490 INFO    ] No camera update needed
[2026-06-05 11:21:57,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:21:57,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:21:57,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:21:57,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:21:59,549.549 INFO    ] ================================================
[2026-06-05 11:21:59,566.566 INFO    ] Launching Daemon at Fri Jun  5 11:21:59 IST 2026
[2026-06-05 11:21:59,578.578 INFO    ] ================================================
[2026-06-05 11:22:00,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:22:00
[2026-06-05 11:22:00,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:22:01,056.056 INFO    ] Initializing speech engine...
[2026-06-05 11:22:01,080.080 INFO    ] 2026-06-05 11:22:01
[2026-06-05 11:22:01,349.349 INFO    ] 2026-06-05 11:22:01
[2026-06-05 11:22:01,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:22:01,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:22:01,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:22:01,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:22:01,797.797 INFO    ] time= 05/06/2026 11:22:01
[2026-06-05 11:22:01,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:22:01,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:22:01,912.912 INFO    ] No existing commands found in stream
[2026-06-05 11:22:06,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:22:06,925.925 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 11:22:09,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:22:09,391.391 INFO    ] Checking for system updates...
[2026-06-05 11:22:09,427.427 INFO    ] 200
[2026-06-05 11:22:09,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:09,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:22:09,491.491 INFO    ] No update needed
[2026-06-05 11:22:09,494.494 INFO    ] Checking for camera pi updates...
[2026-06-05 11:22:09,527.527 INFO    ] 200
[2026-06-05 11:22:09,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:09,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:22:09,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:22:09,620.620 INFO    ] No camera update needed
[2026-06-05 11:22:09,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:22:09,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:22:09,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:22:09,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:22:11,677.677 INFO    ] ================================================
[2026-06-05 11:22:11,693.693 INFO    ] Launching Daemon at Fri Jun  5 11:22:11 IST 2026
[2026-06-05 11:22:11,704.704 INFO    ] ================================================
[2026-06-05 11:22:12,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:22:12
[2026-06-05 11:22:12,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:22:13,158.158 INFO    ] Initializing speech engine...
[2026-06-05 11:22:13,183.183 INFO    ] 2026-06-05 11:22:13
[2026-06-05 11:22:13,461.461 INFO    ] 2026-06-05 11:22:13
[2026-06-05 11:22:13,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:22:13,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:22:13,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:22:13,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:22:13,877.877 INFO    ] time= 05/06/2026 11:22:13
[2026-06-05 11:22:13,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:22:13,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:22:13,962.962 INFO    ] No existing commands found in stream
[2026-06-05 11:22:18,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:22:18,984.984 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-05 11:22:20,630.630 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:22:20,633.633 INFO    ] Checking for system updates...
[2026-06-05 11:22:20,670.670 INFO    ] 200
[2026-06-05 11:22:20,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:20,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:22:20,734.734 INFO    ] No update needed
[2026-06-05 11:22:20,737.737 INFO    ] Checking for camera pi updates...
[2026-06-05 11:22:20,772.772 INFO    ] 200
[2026-06-05 11:22:20,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:20,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:22:20,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:22:20,868.868 INFO    ] No camera update needed
[2026-06-05 11:22:20,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:22:20,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:22:20,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:22:20,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:22:22,926.926 INFO    ] ================================================
[2026-06-05 11:22:22,941.941 INFO    ] Launching Daemon at Fri Jun  5 11:22:22 IST 2026
[2026-06-05 11:22:22,952.952 INFO    ] ================================================
[2026-06-05 11:22:23,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:22:23
[2026-06-05 11:22:24,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:22:24,420.420 INFO    ] Initializing speech engine...
[2026-06-05 11:22:24,428.428 INFO    ] 2026-06-05 11:22:24
[2026-06-05 11:22:24,689.689 INFO    ] 2026-06-05 11:22:24
[2026-06-05 11:22:24,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:22:25,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:22:25,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:22:25,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:22:25,324.324 INFO    ] time= 05/06/2026 11:22:25
[2026-06-05 11:22:25,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:22:25,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:22:25,625.625 INFO    ] No existing commands found in stream
[2026-06-05 11:22:30,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:22:30,645.645 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 11:22:34,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:22:34,216.216 INFO    ] Checking for system updates...
[2026-06-05 11:22:34,252.252 INFO    ] 200
[2026-06-05 11:22:34,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:34,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:22:34,312.312 INFO    ] No update needed
[2026-06-05 11:22:34,315.315 INFO    ] Checking for camera pi updates...
[2026-06-05 11:22:34,351.351 INFO    ] 200
[2026-06-05 11:22:34,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:34,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:22:34,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:22:34,481.481 INFO    ] No camera update needed
[2026-06-05 11:22:34,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:22:34,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:22:34,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:22:34,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:22:36,541.541 INFO    ] ================================================
[2026-06-05 11:22:36,557.557 INFO    ] Launching Daemon at Fri Jun  5 11:22:36 IST 2026
[2026-06-05 11:22:36,568.568 INFO    ] ================================================
[2026-06-05 11:22:37,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:22:37
[2026-06-05 11:22:37,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:22:38,180.180 INFO    ] Initializing speech engine...
[2026-06-05 11:22:38,195.195 INFO    ] 2026-06-05 11:22:38
[2026-06-05 11:22:38,506.506 INFO    ] 2026-06-05 11:22:38
[2026-06-05 11:22:38,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:22:38,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:22:38,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:22:38,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:22:38,938.938 INFO    ] time= 05/06/2026 11:22:38
[2026-06-05 11:22:39,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:22:39,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:22:39,165.165 INFO    ] No existing commands found in stream
[2026-06-05 11:22:44,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:22:44,194.194 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 11:22:46,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:22:46,390.390 INFO    ] Checking for system updates...
[2026-06-05 11:22:46,427.427 INFO    ] 200
[2026-06-05 11:22:46,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:46,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:22:46,487.487 INFO    ] No update needed
[2026-06-05 11:22:46,489.489 INFO    ] Checking for camera pi updates...
[2026-06-05 11:22:46,528.528 INFO    ] 200
[2026-06-05 11:22:46,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:46,578.578 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:22:46,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:22:46,629.629 INFO    ] No camera update needed
[2026-06-05 11:22:46,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:22:46,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:22:46,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:22:46,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:22:48,687.687 INFO    ] ================================================
[2026-06-05 11:22:48,703.703 INFO    ] Launching Daemon at Fri Jun  5 11:22:48 IST 2026
[2026-06-05 11:22:48,714.714 INFO    ] ================================================
[2026-06-05 11:22:49,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:22:49
[2026-06-05 11:22:49,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:22:50,174.174 INFO    ] Initializing speech engine...
[2026-06-05 11:22:50,194.194 INFO    ] 2026-06-05 11:22:50
[2026-06-05 11:22:50,464.464 INFO    ] 2026-06-05 11:22:50
[2026-06-05 11:22:50,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:22:50,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:22:50,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:22:50,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:22:50,882.882 INFO    ] time= 05/06/2026 11:22:50
[2026-06-05 11:22:50,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:22:50,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:22:50,979.979 INFO    ] No existing commands found in stream
[2026-06-05 11:22:56,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:22:56,018.018 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 11:22:56,540.540 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:22:56,543.543 INFO    ] Checking for system updates...
[2026-06-05 11:22:56,579.579 INFO    ] 200
[2026-06-05 11:22:56,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:56,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:22:56,640.640 INFO    ] No update needed
[2026-06-05 11:22:56,643.643 INFO    ] Checking for camera pi updates...
[2026-06-05 11:22:56,678.678 INFO    ] 200
[2026-06-05 11:22:56,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:22:56,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:22:56,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:22:56,777.777 INFO    ] No camera update needed
[2026-06-05 11:22:56,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:22:56,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:22:56,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:22:56,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:22:58,836.836 INFO    ] ================================================
[2026-06-05 11:22:58,852.852 INFO    ] Launching Daemon at Fri Jun  5 11:22:58 IST 2026
[2026-06-05 11:22:58,864.864 INFO    ] ================================================
[2026-06-05 11:22:59,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:22:59
[2026-06-05 11:23:00,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:23:00,270.270 INFO    ] Initializing speech engine...
[2026-06-05 11:23:00,276.276 INFO    ] 2026-06-05 11:23:00
[2026-06-05 11:23:00,572.572 INFO    ] 2026-06-05 11:23:00
[2026-06-05 11:23:00,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:23:00,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:23:00,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:23:01,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:23:01,124.124 INFO    ] time= 05/06/2026 11:23:01
[2026-06-05 11:23:01,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:23:01,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:23:01,332.332 INFO    ] No existing commands found in stream
[2026-06-05 11:23:06,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:23:06,352.352 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 11:23:06,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:23:06,842.842 INFO    ] Checking for system updates...
[2026-06-05 11:23:06,879.879 INFO    ] 200
[2026-06-05 11:23:06,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:06,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:06,936.936 INFO    ] No update needed
[2026-06-05 11:23:06,939.939 INFO    ] Checking for camera pi updates...
[2026-06-05 11:23:06,973.973 INFO    ] 200
[2026-06-05 11:23:06,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:07,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:23:07,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:07,066.066 INFO    ] No camera update needed
[2026-06-05 11:23:07,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:23:07,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:23:07,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:23:07,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:23:09,120.120 INFO    ] ================================================
[2026-06-05 11:23:09,136.136 INFO    ] Launching Daemon at Fri Jun  5 11:23:09 IST 2026
[2026-06-05 11:23:09,146.146 INFO    ] ================================================
[2026-06-05 11:23:09,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:23:09
[2026-06-05 11:23:10,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:23:10,610.610 INFO    ] Initializing speech engine...
[2026-06-05 11:23:10,615.615 INFO    ] 2026-06-05 11:23:10
[2026-06-05 11:23:10,885.885 INFO    ] 2026-06-05 11:23:10
[2026-06-05 11:23:10,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:23:11,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:23:11,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:23:11,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:23:11,278.278 INFO    ] time= 05/06/2026 11:23:11
[2026-06-05 11:23:11,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:23:11,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:23:11,385.385 INFO    ] No existing commands found in stream
[2026-06-05 11:23:16,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:23:16,400.400 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 11:23:18,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:23:18,941.941 INFO    ] Checking for system updates...
[2026-06-05 11:23:18,977.977 INFO    ] 200
[2026-06-05 11:23:18,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:19,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:19,042.042 INFO    ] No update needed
[2026-06-05 11:23:19,045.045 INFO    ] Checking for camera pi updates...
[2026-06-05 11:23:19,082.082 INFO    ] 200
[2026-06-05 11:23:19,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:19,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:23:19,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:19,183.183 INFO    ] No camera update needed
[2026-06-05 11:23:19,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:23:19,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:23:19,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:23:19,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:23:21,239.239 INFO    ] ================================================
[2026-06-05 11:23:21,254.254 INFO    ] Launching Daemon at Fri Jun  5 11:23:21 IST 2026
[2026-06-05 11:23:21,265.265 INFO    ] ================================================
[2026-06-05 11:23:21,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:23:21
[2026-06-05 11:23:22,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:23:22,877.877 INFO    ] Initializing speech engine...
[2026-06-05 11:23:22,886.886 INFO    ] 2026-06-05 11:23:22
[2026-06-05 11:23:23,173.173 INFO    ] 2026-06-05 11:23:23
[2026-06-05 11:23:23,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:23:23,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:23:23,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:23:23,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:23:23,728.728 INFO    ] time= 05/06/2026 11:23:23
[2026-06-05 11:23:23,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:23:23,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:23:23,906.906 INFO    ] No existing commands found in stream
[2026-06-05 11:23:28,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:23:28,935.935 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 11:23:30,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:23:30,770.770 INFO    ] Checking for system updates...
[2026-06-05 11:23:30,807.807 INFO    ] 200
[2026-06-05 11:23:30,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:30,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:30,866.866 INFO    ] No update needed
[2026-06-05 11:23:30,869.869 INFO    ] Checking for camera pi updates...
[2026-06-05 11:23:30,903.903 INFO    ] 200
[2026-06-05 11:23:30,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:30,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:23:31,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:31,004.004 INFO    ] No camera update needed
[2026-06-05 11:23:31,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:23:31,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:23:31,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:23:31,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:23:33,072.072 INFO    ] ================================================
[2026-06-05 11:23:33,089.089 INFO    ] Launching Daemon at Fri Jun  5 11:23:33 IST 2026
[2026-06-05 11:23:33,102.102 INFO    ] ================================================
[2026-06-05 11:23:33,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:23:33
[2026-06-05 11:23:34,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:23:34,755.755 INFO    ] Initializing speech engine...
[2026-06-05 11:23:34,761.761 INFO    ] 2026-06-05 11:23:34
[2026-06-05 11:23:35,043.043 INFO    ] 2026-06-05 11:23:35
[2026-06-05 11:23:35,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:23:35,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:23:35,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:23:35,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:23:35,596.596 INFO    ] time= 05/06/2026 11:23:35
[2026-06-05 11:23:35,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:23:35,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:23:35,752.752 INFO    ] No existing commands found in stream
[2026-06-05 11:23:40,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:23:40,773.773 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 11:23:44,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:23:44,293.293 INFO    ] Checking for system updates...
[2026-06-05 11:23:44,331.331 INFO    ] 200
[2026-06-05 11:23:44,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:44,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:44,392.392 INFO    ] No update needed
[2026-06-05 11:23:44,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 11:23:44,433.433 INFO    ] 200
[2026-06-05 11:23:44,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:44,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:23:44,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:44,531.531 INFO    ] No camera update needed
[2026-06-05 11:23:44,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:23:44,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:23:44,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:23:44,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:23:46,590.590 INFO    ] ================================================
[2026-06-05 11:23:46,605.605 INFO    ] Launching Daemon at Fri Jun  5 11:23:46 IST 2026
[2026-06-05 11:23:46,615.615 INFO    ] ================================================
[2026-06-05 11:23:47,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:23:47
[2026-06-05 11:23:47,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:23:48,083.083 INFO    ] Initializing speech engine...
[2026-06-05 11:23:48,092.092 INFO    ] 2026-06-05 11:23:48
[2026-06-05 11:23:48,341.341 INFO    ] 2026-06-05 11:23:48
[2026-06-05 11:23:48,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:23:48,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:23:48,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:23:48,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:23:48,815.815 INFO    ] time= 05/06/2026 11:23:48
[2026-06-05 11:23:48,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:23:48,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:23:49,027.027 INFO    ] No existing commands found in stream
[2026-06-05 11:23:54,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:23:54,059.059 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 11:23:54,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:23:54,780.780 INFO    ] Checking for system updates...
[2026-06-05 11:23:54,820.820 INFO    ] 200
[2026-06-05 11:23:54,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:54,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:54,878.878 INFO    ] No update needed
[2026-06-05 11:23:54,880.880 INFO    ] Checking for camera pi updates...
[2026-06-05 11:23:54,918.918 INFO    ] 200
[2026-06-05 11:23:54,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:23:54,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:23:55,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:23:55,024.024 INFO    ] No camera update needed
[2026-06-05 11:23:55,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:23:55,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:23:55,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:23:55,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:23:57,079.079 INFO    ] ================================================
[2026-06-05 11:23:57,094.094 INFO    ] Launching Daemon at Fri Jun  5 11:23:57 IST 2026
[2026-06-05 11:23:57,105.105 INFO    ] ================================================
[2026-06-05 11:23:57,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:23:57
[2026-06-05 11:23:58,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:23:58,557.557 INFO    ] Initializing speech engine...
[2026-06-05 11:23:58,570.570 INFO    ] 2026-06-05 11:23:58
[2026-06-05 11:23:58,824.824 INFO    ] 2026-06-05 11:23:58
[2026-06-05 11:23:58,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:24:00,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:24:00,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:24:00,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:24:00,820.820 INFO    ] time= 05/06/2026 11:24:00
[2026-06-05 11:24:00,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:24:00,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:24:00,924.924 INFO    ] No existing commands found in stream
[2026-06-05 11:24:05,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:24:05,948.948 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 11:24:07,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:24:07,808.808 INFO    ] Checking for system updates...
[2026-06-05 11:24:07,845.845 INFO    ] 200
[2026-06-05 11:24:07,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:24:07,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:24:07,904.904 INFO    ] No update needed
[2026-06-05 11:24:07,907.907 INFO    ] Checking for camera pi updates...
[2026-06-05 11:24:07,943.943 INFO    ] 200
[2026-06-05 11:24:07,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:24:07,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:24:08,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:24:08,038.038 INFO    ] No camera update needed
[2026-06-05 11:24:08,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:24:08,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:24:08,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:24:08,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:24:10,098.098 INFO    ] ================================================
[2026-06-05 11:24:10,114.114 INFO    ] Launching Daemon at Fri Jun  5 11:24:10 IST 2026
[2026-06-05 11:24:10,125.125 INFO    ] ================================================
[2026-06-05 11:24:10,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:24:10
[2026-06-05 11:24:11,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:24:11,546.546 INFO    ] Initializing speech engine...
[2026-06-05 11:24:11,565.565 INFO    ] 2026-06-05 11:24:11
[2026-06-05 11:24:11,814.814 INFO    ] 2026-06-05 11:24:11
[2026-06-05 11:24:11,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:24:12,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:24:12,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:24:12,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:24:12,301.301 INFO    ] time= 05/06/2026 11:24:12
[2026-06-05 11:24:12,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:24:12,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:24:12,542.542 INFO    ] No existing commands found in stream
[2026-06-05 11:24:17,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:24:17,559.559 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 11:24:21,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:24:21,713.713 INFO    ] Checking for system updates...
[2026-06-05 11:24:21,753.753 INFO    ] 200
[2026-06-05 11:24:21,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:24:21,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:24:21,847.847 INFO    ] No update needed
[2026-06-05 11:24:21,850.850 INFO    ] Checking for camera pi updates...
[2026-06-05 11:24:21,889.889 INFO    ] 200
[2026-06-05 11:24:21,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:24:21,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:24:21,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:24:21,996.996 INFO    ] No camera update needed
[2026-06-05 11:24:21,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:24:22,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:24:22,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:24:22,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:24:24,054.054 INFO    ] ================================================
[2026-06-05 11:24:24,070.070 INFO    ] Launching Daemon at Fri Jun  5 11:24:24 IST 2026
[2026-06-05 11:24:24,081.081 INFO    ] ================================================
[2026-06-05 11:24:24,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:24:24
[2026-06-05 11:24:25,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:24:25,492.492 INFO    ] Initializing speech engine...
[2026-06-05 11:24:25,498.498 INFO    ] 2026-06-05 11:24:25
[2026-06-05 11:24:25,793.793 INFO    ] 2026-06-05 11:24:25
[2026-06-05 11:24:25,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:24:26,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:24:26,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:24:26,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:24:26,180.180 INFO    ] time= 05/06/2026 11:24:26
[2026-06-05 11:24:26,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:24:26,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:24:26,306.306 INFO    ] No existing commands found in stream
[2026-06-05 11:24:31,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:24:31,321.321 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 11:24:34,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:24:34,605.605 INFO    ] Checking for system updates...
[2026-06-05 11:24:34,645.645 INFO    ] 200
[2026-06-05 11:24:34,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:24:34,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:24:34,710.710 INFO    ] No update needed
[2026-06-05 11:24:34,713.713 INFO    ] Checking for camera pi updates...
[2026-06-05 11:24:34,751.751 INFO    ] 200
[2026-06-05 11:24:34,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:24:34,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:24:34,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:24:34,847.847 INFO    ] No camera update needed
[2026-06-05 11:24:34,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:24:34,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:24:34,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:24:34,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:24:36,902.902 INFO    ] ================================================
[2026-06-05 11:24:36,918.918 INFO    ] Launching Daemon at Fri Jun  5 11:24:36 IST 2026
[2026-06-05 11:24:36,929.929 INFO    ] ================================================
[2026-06-05 11:24:37,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:24:37
[2026-06-05 11:24:38,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:24:38,325.325 INFO    ] Initializing speech engine...
[2026-06-05 11:24:38,351.351 INFO    ] 2026-06-05 11:24:38
[2026-06-05 11:24:38,620.620 INFO    ] 2026-06-05 11:24:38
[2026-06-05 11:24:38,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:24:38,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:24:38,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:24:39,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:24:39,118.118 INFO    ] time= 05/06/2026 11:24:39
[2026-06-05 11:24:39,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:24:39,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:24:39,357.357 INFO    ] No existing commands found in stream
[2026-06-05 11:24:44,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:24:44,397.397 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 11:24:45,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:24:45,311.311 INFO    ] Checking for system updates...
[2026-06-05 11:24:45,347.347 INFO    ] 200
[2026-06-05 11:24:45,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:24:45,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:24:45,405.405 INFO    ] No update needed
[2026-06-05 11:24:45,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 11:24:45,441.441 INFO    ] 200
[2026-06-05 11:24:45,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:24:45,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:24:45,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:24:45,551.551 INFO    ] No camera update needed
[2026-06-05 11:24:45,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:24:45,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:24:45,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:24:45,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:24:47,606.606 INFO    ] ================================================
[2026-06-05 11:24:47,621.621 INFO    ] Launching Daemon at Fri Jun  5 11:24:47 IST 2026
[2026-06-05 11:24:47,633.633 INFO    ] ================================================
[2026-06-05 11:24:48,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:24:48
[2026-06-05 11:24:48,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:24:49,079.079 INFO    ] Initializing speech engine...
[2026-06-05 11:24:49,089.089 INFO    ] 2026-06-05 11:24:49
[2026-06-05 11:24:49,338.338 INFO    ] 2026-06-05 11:24:49
[2026-06-05 11:24:49,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:24:49,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:24:49,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:24:49,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:24:49,807.807 INFO    ] time= 05/06/2026 11:24:49
[2026-06-05 11:24:49,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:24:49,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:24:49,993.993 INFO    ] No existing commands found in stream
[2026-06-05 11:24:55,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:24:55,008.008 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 11:25:00,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:25:00,807.807 INFO    ] Checking for system updates...
[2026-06-05 11:25:00,843.843 INFO    ] 200
[2026-06-05 11:25:00,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:00,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:25:00,903.903 INFO    ] No update needed
[2026-06-05 11:25:00,906.906 INFO    ] Checking for camera pi updates...
[2026-06-05 11:25:00,945.945 INFO    ] 200
[2026-06-05 11:25:00,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:00,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:25:01,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:25:01,046.046 INFO    ] No camera update needed
[2026-06-05 11:25:01,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:25:01,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:25:01,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:25:01,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:25:03,122.122 INFO    ] ================================================
[2026-06-05 11:25:03,144.144 INFO    ] Launching Daemon at Fri Jun  5 11:25:03 IST 2026
[2026-06-05 11:25:03,162.162 INFO    ] ================================================
[2026-06-05 11:25:03,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:25:03
[2026-06-05 11:25:04,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:25:04,659.659 INFO    ] Initializing speech engine...
[2026-06-05 11:25:04,668.668 INFO    ] 2026-06-05 11:25:04
[2026-06-05 11:25:04,941.941 INFO    ] 2026-06-05 11:25:04
[2026-06-05 11:25:04,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:25:05,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:25:05,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:25:05,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:25:05,490.490 INFO    ] time= 05/06/2026 11:25:05
[2026-06-05 11:25:05,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:25:05,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:25:05,647.647 INFO    ] No existing commands found in stream
[2026-06-05 11:25:10,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:25:10,680.680 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 11:25:11,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:25:11,362.362 INFO    ] Checking for system updates...
[2026-06-05 11:25:11,400.400 INFO    ] 200
[2026-06-05 11:25:11,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:11,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:25:11,460.460 INFO    ] No update needed
[2026-06-05 11:25:11,462.462 INFO    ] Checking for camera pi updates...
[2026-06-05 11:25:11,501.501 INFO    ] 200
[2026-06-05 11:25:11,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:11,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:25:11,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:25:11,701.701 INFO    ] No camera update needed
[2026-06-05 11:25:11,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:25:11,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:25:11,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:25:11,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:25:13,761.761 INFO    ] ================================================
[2026-06-05 11:25:13,777.777 INFO    ] Launching Daemon at Fri Jun  5 11:25:13 IST 2026
[2026-06-05 11:25:13,789.789 INFO    ] ================================================
[2026-06-05 11:25:14,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:25:14
[2026-06-05 11:25:14,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:25:15,193.193 INFO    ] Initializing speech engine...
[2026-06-05 11:25:15,217.217 INFO    ] 2026-06-05 11:25:15
[2026-06-05 11:25:15,472.472 INFO    ] 2026-06-05 11:25:15
[2026-06-05 11:25:15,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:25:15,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:25:15,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:25:15,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:25:15,852.852 INFO    ] time= 05/06/2026 11:25:15
[2026-06-05 11:25:15,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:25:15,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:25:16,012.012 INFO    ] No existing commands found in stream
[2026-06-05 11:25:21,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:25:21,037.037 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 11:25:24,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:25:24,584.584 INFO    ] Checking for system updates...
[2026-06-05 11:25:24,620.620 INFO    ] 200
[2026-06-05 11:25:24,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:24,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:25:24,678.678 INFO    ] No update needed
[2026-06-05 11:25:24,681.681 INFO    ] Checking for camera pi updates...
[2026-06-05 11:25:24,714.714 INFO    ] 200
[2026-06-05 11:25:24,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:24,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:25:24,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:25:24,810.810 INFO    ] No camera update needed
[2026-06-05 11:25:24,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:25:24,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:25:24,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:25:24,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:25:26,867.867 INFO    ] ================================================
[2026-06-05 11:25:26,883.883 INFO    ] Launching Daemon at Fri Jun  5 11:25:26 IST 2026
[2026-06-05 11:25:26,894.894 INFO    ] ================================================
[2026-06-05 11:25:27,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:25:27
[2026-06-05 11:25:28,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:25:28,355.355 INFO    ] Initializing speech engine...
[2026-06-05 11:25:28,365.365 INFO    ] 2026-06-05 11:25:28
[2026-06-05 11:25:28,670.670 INFO    ] 2026-06-05 11:25:28
[2026-06-05 11:25:28,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:25:30,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:25:30,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:25:31,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:25:31,202.202 INFO    ] time= 05/06/2026 11:25:31
[2026-06-05 11:25:31,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:25:31,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:25:31,337.337 INFO    ] No existing commands found in stream
[2026-06-05 11:25:36,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:25:36,356.356 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 11:25:37,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:25:37,711.711 INFO    ] Checking for system updates...
[2026-06-05 11:25:37,748.748 INFO    ] 200
[2026-06-05 11:25:37,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:37,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:25:37,809.809 INFO    ] No update needed
[2026-06-05 11:25:37,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 11:25:37,851.851 INFO    ] 200
[2026-06-05 11:25:37,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:37,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:25:37,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:25:37,953.953 INFO    ] No camera update needed
[2026-06-05 11:25:37,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:25:37,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:25:37,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:25:37,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:25:40,012.012 INFO    ] ================================================
[2026-06-05 11:25:40,028.028 INFO    ] Launching Daemon at Fri Jun  5 11:25:40 IST 2026
[2026-06-05 11:25:40,039.039 INFO    ] ================================================
[2026-06-05 11:25:40,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:25:40
[2026-06-05 11:25:41,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:25:41,492.492 INFO    ] Initializing speech engine...
[2026-06-05 11:25:41,499.499 INFO    ] 2026-06-05 11:25:41
[2026-06-05 11:25:41,749.749 INFO    ] 2026-06-05 11:25:41
[2026-06-05 11:25:41,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:25:41,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:25:41,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:25:42,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:25:42,201.201 INFO    ] time= 05/06/2026 11:25:42
[2026-06-05 11:25:42,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:25:42,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:25:42,391.391 INFO    ] No existing commands found in stream
[2026-06-05 11:25:47,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:25:47,406.406 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 11:25:49,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:25:49,991.991 INFO    ] Checking for system updates...
[2026-06-05 11:25:50,033.033 INFO    ] 200
[2026-06-05 11:25:50,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:50,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:25:50,092.092 INFO    ] No update needed
[2026-06-05 11:25:50,094.094 INFO    ] Checking for camera pi updates...
[2026-06-05 11:25:50,129.129 INFO    ] 200
[2026-06-05 11:25:50,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:25:50,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:25:50,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:25:50,236.236 INFO    ] No camera update needed
[2026-06-05 11:25:50,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:25:50,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:25:50,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:25:50,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:25:52,292.292 INFO    ] ================================================
[2026-06-05 11:25:52,309.309 INFO    ] Launching Daemon at Fri Jun  5 11:25:52 IST 2026
[2026-06-05 11:25:52,320.320 INFO    ] ================================================
[2026-06-05 11:25:52,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:25:52
[2026-06-05 11:25:53,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:25:53,919.919 INFO    ] Initializing speech engine...
[2026-06-05 11:25:53,927.927 INFO    ] 2026-06-05 11:25:53
[2026-06-05 11:25:54,235.235 INFO    ] 2026-06-05 11:25:54
[2026-06-05 11:25:54,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:25:54,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:25:54,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:25:54,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:25:54,935.935 INFO    ] time= 05/06/2026 11:25:54
[2026-06-05 11:25:54,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:25:55,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:25:55,187.187 INFO    ] No existing commands found in stream
[2026-06-05 11:26:00,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:26:00,209.209 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 11:26:00,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:26:00,967.967 INFO    ] Checking for system updates...
[2026-06-05 11:26:01,008.008 INFO    ] 200
[2026-06-05 11:26:01,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:26:01,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:26:01,066.066 INFO    ] No update needed
[2026-06-05 11:26:01,069.069 INFO    ] Checking for camera pi updates...
[2026-06-05 11:26:01,104.104 INFO    ] 200
[2026-06-05 11:26:01,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:26:01,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:26:01,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:26:01,216.216 INFO    ] No camera update needed
[2026-06-05 11:26:01,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:26:01,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:26:01,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:26:01,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:26:03,291.291 INFO    ] ================================================
[2026-06-05 11:26:03,312.312 INFO    ] Launching Daemon at Fri Jun  5 11:26:03 IST 2026
[2026-06-05 11:26:03,328.328 INFO    ] ================================================
[2026-06-05 11:26:03,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:26:03
[2026-06-05 11:26:04,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:26:04,823.823 INFO    ] Initializing speech engine...
[2026-06-05 11:26:04,837.837 INFO    ] 2026-06-05 11:26:04
[2026-06-05 11:26:05,106.106 INFO    ] 2026-06-05 11:26:05
[2026-06-05 11:26:05,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:26:05,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:26:05,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:26:05,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:26:05,589.589 INFO    ] time= 05/06/2026 11:26:05
[2026-06-05 11:26:05,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:26:05,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:26:05,817.817 INFO    ] No existing commands found in stream
[2026-06-05 11:26:10,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:26:10,848.848 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 11:26:14,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:26:14,082.082 INFO    ] Checking for system updates...
[2026-06-05 11:26:14,118.118 INFO    ] 200
[2026-06-05 11:26:14,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:26:14,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:26:14,176.176 INFO    ] No update needed
[2026-06-05 11:26:14,178.178 INFO    ] Checking for camera pi updates...
[2026-06-05 11:26:14,212.212 INFO    ] 200
[2026-06-05 11:26:14,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:26:14,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:26:14,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:26:14,308.308 INFO    ] No camera update needed
[2026-06-05 11:26:14,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:26:14,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:26:14,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:26:14,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:26:16,363.363 INFO    ] ================================================
[2026-06-05 11:26:16,379.379 INFO    ] Launching Daemon at Fri Jun  5 11:26:16 IST 2026
[2026-06-05 11:26:16,389.389 INFO    ] ================================================
[2026-06-05 11:26:16,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:26:16
[2026-06-05 11:26:17,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:26:17,856.856 INFO    ] Initializing speech engine...
[2026-06-05 11:26:17,862.862 INFO    ] 2026-06-05 11:26:17
[2026-06-05 11:26:18,125.125 INFO    ] 2026-06-05 11:26:18
[2026-06-05 11:26:18,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:26:18,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:26:18,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:26:18,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:26:18,674.674 INFO    ] time= 05/06/2026 11:26:18
[2026-06-05 11:26:18,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:26:18,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:26:18,830.830 INFO    ] Found 1 existing command(s) in stream
[2026-06-05 11:26:18,885.885 INFO    ] Checking historical command: ID=1780638975564-0
[2026-06-05 11:26:18,935.935 INFO    ] process_and_cleanup_command: msg_id=1780638975564-0
[2026-06-05 11:26:18,968.968 INFO    ] is_command_expired: timestamp=2026-06-05T05:56:14.056Z, expiry=30s
[2026-06-05 11:26:19,251.251 INFO    ] Command removed from stream: 1780638975564-0. returning for processing...
[2026-06-05 11:26:19,297.297 INFO    ] ***** get_valid_command
[2026-06-05 11:26:19,304.304 INFO    ] {'data': '{"request_id":"start-order-1780638974055-3bhvd0yqg","orderId":"TM07202501260605112540834","is_vending":false}', 'command': 'start-order', 'source': 'webapp', 'timeout': '10', 'timestamp': '2026-06-05T05:56:14.056Z'}
[2026-06-05 11:26:19,349.349 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1780638974055-3bhvd0yqg', 'is_vending': False, 'orderId': 'TM07202501260605112540834'}
[2026-06-05 11:26:19,358.358 INFO    ] Handling start order...
[2026-06-05 11:26:19,361.361 INFO    ] handle_start_order_command
[2026-06-05 11:26:19,418.418 INFO    ] _send_start_order_success: request_id=start-order-1780638974055-3bhvd0yqg, order_id=TM07202501260605112540834
[2026-06-05 11:26:19,422.422 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-05 11:26:19,561.561 INFO    ] [_send_start_order_success] Message added to stream with ID: 1780638979481-0
[2026-06-05 11:26:19,568.568 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-05 11:26:19,573.573 INFO    ] Checking for system updates...
[2026-06-05 11:26:19,630.630 INFO    ] 200
[2026-06-05 11:26:19,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:26:19,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:26:19,703.703 INFO    ] No update needed
[2026-06-05 11:26:19,709.709 INFO    ] Checking for camera pi updates...
[2026-06-05 11:26:19,752.752 INFO    ] 200
[2026-06-05 11:26:19,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:26:19,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:26:19,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:26:19,875.875 INFO    ] No camera update needed
[2026-06-05 11:26:19,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:26:19,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:26:19,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:26:20,011.011 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 11:26:20,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:26:22,111.111 INFO    ] ================================================
[2026-06-05 11:26:22,127.127 INFO    ] Launching Daemon at Fri Jun  5 11:26:22 IST 2026
[2026-06-05 11:26:22,138.138 INFO    ] ================================================
[2026-06-05 11:26:22,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:26:22
[2026-06-05 11:26:23,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:26:23,568.568 INFO    ] Initializing speech engine...
[2026-06-05 11:26:23,575.575 INFO    ] 2026-06-05 11:26:23
[2026-06-05 11:26:23,835.835 INFO    ] 2026-06-05 11:26:23
[2026-06-05 11:26:23,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:26:24,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:26:24,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:26:24,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:26:24,309.309 INFO    ] time= 05/06/2026 11:26:24
[2026-06-05 11:26:24,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:26:24,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:26:24,464.464 INFO    ] Found 2 existing command(s) in stream
[2026-06-05 11:26:24,473.473 INFO    ] Checking historical command: ID=1780638979481-0
[2026-06-05 11:26:24,492.492 INFO    ] process_and_cleanup_command: msg_id=1780638979481-0
[2026-06-05 11:26:24,550.550 INFO    ] is_command_expired: timestamp=2026-06-05T05:56:19.420013Z, expiry=30s
[2026-06-05 11:26:24,709.709 INFO    ] Command removed from stream: 1780638979481-0. returning for processing...
[2026-06-05 11:26:24,738.738 INFO    ] ***** get_valid_command
[2026-06-05 11:26:24,797.797 INFO    ] {'metadata_request_id': 'start-order-1780638974055-3bhvd0yqg', 'message': 'start-order success', 'timestamp': '2026-06-05T05:56:19.420013Z', 'status': 'success', 'message_type': 'command_response', 'metadata_order_id': 'TM07202501260605112540834', 'imei': 'TM07202501'}
[2026-06-05 11:26:24,846.846 INFO    ] Checking historical command: ID=1780638980598-0
[2026-06-05 11:26:24,893.893 INFO    ] process_and_cleanup_command: msg_id=1780638980598-0
[2026-06-05 11:26:24,936.936 INFO    ] is_command_expired: timestamp=2026-06-05T05:56:18.999Z, expiry=30s
[2026-06-05 11:26:25,072.072 INFO    ] Command removed from stream: 1780638980598-0. returning for processing...
[2026-06-05 11:26:25,078.078 INFO    ] ***** get_valid_command
[2026-06-05 11:26:25,081.081 INFO    ] {'command': 'process-order', 'timestamp': '2026-06-05T05:56:18.999Z', 'timeout': '60', 'source': 'webapp', 'data': '{"request_id":"process-order-1780638978998-pey9h4mzd","orderId":"TM07202501260605112540834","is_vending":false,"accessCode":"23409914"}'}
[2026-06-05 11:26:25,109.109 INFO    ] ***** Parsed command data: {'orderId': 'TM07202501260605112540834', 'is_vending': False, 'accessCode': '23409914', 'request_id': 'process-order-1780638978998-pey9h4mzd'}
[2026-06-05 11:26:25,134.134 INFO    ] Handling process order...
[2026-06-05 11:26:25,137.137 INFO    ] Processing process-order command...
[2026-06-05 11:26:25,141.141 INFO    ] 🔍 Lock file Order ID: TM07202501260605112540834, TS: 2026-06-05 11:26:19
[2026-06-05 11:26:25,202.202 INFO    ] ✅ Order lock valid for TM07202501260605112540834
[2026-06-05 11:26:25,208.208 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-05 11:26:25,213.213 INFO    ] processing access code 23409914 for order TM07202501260605112540834
[2026-06-05 11:26:25,219.219 INFO    ] 🔍 Lock file Order ID: TM07202501260605112540834, TS: 2026-06-05 11:26:19
[2026-06-05 11:26:25,224.224 INFO    ] ✅ Order lock valid for TM07202501260605112540834
[2026-06-05 11:26:25,229.229 INFO    ] 2026-06-05 11:26:25
[2026-06-05 11:26:25,345.345 INFO    ] 200
[2026-06-05 11:26:25,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:26:25,387.387 INFO    ] 23409914
[2026-06-05 11:26:25,392.392 INFO    ] 2026-06-05 11:26:25
[2026-06-05 11:26:25,399.399 INFO    ] session id :992712578
[2026-06-05 11:26:25,406.406 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=23409914&imei=TM07202501&session_id=992712578
[2026-06-05 11:26:26,594.594 INFO    ] 200
[2026-06-05 11:26:26,649.649 INFO    ] {"rstatus": true, "msg": "Order Data", "data": {"mobile": "8420994387", "bill_amount": "40", "access_code": "23409914", "order_id": "TM07202501260605112540834", "proposed_sku_json": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm", "offer_id": "", "skuid": "4500669", "sku_total": 40, "door_id": "2", "tray_id": "40", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "mrp": "40", "offer_desc": "", "unit_price": 40}], "invoice_bill": "40"}, "status": true}
[2026-06-05 11:26:26,663.663 INFO    ] 40
[2026-06-05 11:26:26,672.672 INFO    ] TM07202501260605112540834
[2026-06-05 11:26:26,682.682 INFO    ] 8420994387
[2026-06-05 11:26:26,693.693 INFO    ] 2026-06-05 11:26:26
[2026-06-05 11:26:26,700.700 INFO    ] Door Opening for user mobile ending with  four three eight seven 
[2026-06-05 11:26:26,735.735 INFO    ] Door Opening for user mobile ending with  four three eight seven 
[2026-06-05 11:26:26,742.742 INFO    ] 1f0b045d93a5037316bcd6908eda806f
[2026-06-05 11:26:26,766.766 INFO    ] 2026-06-05 11:26:26
[2026-06-05 11:26:26,771.771 INFO    ] playing audio file
[2026-06-05 11:26:26,793.793 INFO    ] 2026-06-05 11:26:26
[2026-06-05 11:26:26,802.802 INFO    ] 2026-06-05 11:26:26
[2026-06-05 11:26:26,812.812 INFO    ] publish_status: order_id=TM07202501260605112540834
[2026-06-05 11:26:26,821.821 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605112540834
[2026-06-05 11:26:26,949.949 INFO    ] [publish_status] Message added to stream with ID: 1780638986891-0
[2026-06-05 11:26:27,006.006 INFO    ] Published to order:TM07202501260605112540834: {'timestamp': '2026-06-05T05:56:26.804488Z', 'server_status': 'order-started', 'order_id': 'TM07202501260605112540834', 'server_response': '{"rstatus": true, "status": true, "msg": "Order Data", "data": {"invoice_bill": "40", "mobile": "8420994387", "proposed_sku_json": [{"door_id": "2", "tray_id": "40", "qty": 1, "name": "Rite Bite Sports Bar 40gm", "skuid": "4500669", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "unit_price": 40, "offer_id": "", "mrp": "40", "offer_desc": "", "sku_total": 40}], "bill_amount": "40", "access_code": "23409914", "order_id": "TM07202501260605112540834"}}'} (ID: 1780638986891-0)
[2026-06-05 11:26:27,501.501 INFO    ] {'server_status': 'order-started', 'order_id': 'TM07202501260605112540834', 'server_response': {'rstatus': True, 'status': True, 'msg': 'Order Data', 'data': {'invoice_bill': '40', 'mobile': '8420994387', 'proposed_sku_json': [{'door_id': '2', 'tray_id': '40', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm', 'skuid': '4500669', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': 40, 'offer_id': '', 'mrp': '40', 'offer_desc': '', 'sku_total': 40}], 'bill_amount': '40', 'access_code': '23409914', 'order_id': 'TM07202501260605112540834'}}}
[2026-06-05 11:26:27,504.504 INFO    ] 200
[2026-06-05 11:26:27,506.506 INFO    ] {"data":{"server_status":"order-started","order_id":"TM07202501260605112540834","server_response":{"rstatus":true,"status":true,"msg":"Order Data","data":{"invoice_bill":"40","mobile":"8420994387","proposed_sku_json":[{"door_id":"2","tray_id":"40","qty":1,"name":"Rite Bite Sports Bar 40gm","skuid":"4500669","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","unit_price":40,"offer_id":"","mrp":"40","offer_desc":"","sku_total":40}],"bill_amount":"40","access_code":"23409914","order_id":"TM07202501260605112540834"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 11:26:27,509.509 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'order_id': 'TM07202501260605112540834', 'server_response': {'rstatus': True, 'status': True, 'msg': 'Order Data', 'data': {'invoice_bill': '40', 'mobile': '8420994387', 'proposed_sku_json': [{'door_id': '2', 'tray_id': '40', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm', 'skuid': '4500669', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': 40, 'offer_id': '', 'mrp': '40', 'offer_desc': '', 'sku_total': 40}], 'bill_amount': '40', 'access_code': '23409914', 'order_id': 'TM07202501260605112540834'}}}}
[2026-06-05 11:26:27,512.512 INFO    ] 2026-06-05 11:26:27
[2026-06-05 11:26:27,555.555 INFO    ] 200
[2026-06-05 11:26:27,558.558 INFO    ] True
[2026-06-05 11:26:27,722.722 INFO    ] 200
[2026-06-05 11:26:27,725.725 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 11:26:27,728.728 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait'}
[2026-06-05 11:26:27,731.731 INFO    ] *** process_order ***
[2026-06-05 11:26:28,969.969 INFO    ] 200
[2026-06-05 11:26:28,972.972 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "delay": 0, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True"}
[2026-06-05 11:26:28,974.974 INFO    ] {'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait'}
[2026-06-05 11:26:28,977.977 INFO    ] *** process_order ***
[2026-06-05 11:26:28,980.980 INFO    ] publish_status: order_id=TM07202501260605112540834
[2026-06-05 11:26:28,982.982 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605112540834
[2026-06-05 11:26:29,101.101 INFO    ] [publish_status] Message added to stream with ID: 1780638989081-0
[2026-06-05 11:26:29,104.104 INFO    ] Published to order:TM07202501260605112540834: {'server_status': 'doorOpened', 'order_id': 'TM07202501260605112540834', 'server_response': '{"delay": 0, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Door is open..."}'} (ID: 1780638989081-0)
[2026-06-05 11:26:30,172.172 INFO    ] 2026-06-05 11:26:30
[2026-06-05 11:26:30,175.175 INFO    ] publish_status: order_id=TM07202501260605112540834
[2026-06-05 11:26:30,178.178 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605112540834
[2026-06-05 11:26:30,278.278 INFO    ] [publish_status] Message added to stream with ID: 1780638990270-0
[2026-06-05 11:26:30,281.281 INFO    ] Published to order:TM07202501260605112540834: {'timestamp': '2026-06-05T05:56:30.174016Z', 'server_status': 'processOrder', 'order_id': 'TM07202501260605112540834', 'server_response': '{"delay": 0, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}'} (ID: 1780638990270-0)
[2026-06-05 11:26:30,417.417 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM07202501260605112540834', 'server_response': {'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait'}}
[2026-06-05 11:26:30,419.419 INFO    ] 200
[2026-06-05 11:26:30,422.422 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM07202501260605112540834","server_response":{"delay":0,"SectionStatus":{"Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order","UI_Header":""},"SectionMain":{"Header":"Processing Order"},"rstatus":true,"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"voiceNote":"Please Wait"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 11:26:30,425.425 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM07202501260605112540834', 'server_response': {'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait'}}}
[2026-06-05 11:26:30,428.428 INFO    ] 2026-06-05 11:26:30
[2026-06-05 11:26:30,431.431 INFO    ] None
[2026-06-05 11:26:30,434.434 INFO    ] Opening Door now
[2026-06-05 11:26:30,437.437 INFO    ] Opening Door now
[2026-06-05 11:26:30,440.440 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-05 11:26:30,442.442 INFO    ] 2026-06-05 11:26:30
[2026-06-05 11:26:30,445.445 INFO    ] playing audio file
[2026-06-05 11:26:30,462.462 INFO    ] 2026-06-05 11:26:30
[2026-06-05 11:26:30,465.465 INFO    ] 2026-06-05 11:26:30
[2026-06-05 11:26:33,600.600 INFO    ] 200
[2026-06-05 11:26:33,603.603 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 11:26:33,607.607 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Door 2 is open now'}
[2026-06-05 11:26:36,693.693 INFO    ] 200
[2026-06-05 11:26:36,697.697 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 11:26:36,700.700 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Please close door 2'}
[2026-06-05 11:26:39,781.781 INFO    ] 200
[2026-06-05 11:26:39,784.784 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 11:26:39,788.788 INFO    ] Please close door 2
[2026-06-05 11:26:39,791.791 INFO    ] Please close door 2
[2026-06-05 11:26:39,794.794 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-05 11:26:39,798.798 INFO    ] 2026-06-05 11:26:39
[2026-06-05 11:26:39,801.801 INFO    ] playing audio file
[2026-06-05 11:26:39,818.818 INFO    ] 2026-06-05 11:26:39
[2026-06-05 11:26:39,822.822 INFO    ] publish_status: order_id=TM07202501260605112540834
[2026-06-05 11:26:39,826.826 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605112540834
[2026-06-05 11:26:39,936.936 INFO    ] [publish_status] Message added to stream with ID: 1780638999916-0
[2026-06-05 11:26:39,939.939 INFO    ] Published to order:TM07202501260605112540834: {'timestamp': '2026-06-05T05:56:39.820426Z', 'server_status': 'OrderStatus', 'order_id': 'TM07202501260605112540834', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "umessage": "In Progress", "tmessage": "In Progress", "data": {}}, "rstatus": false, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "voiceNote": "Please close door 2"}'} (ID: 1780638999916-0)
[2026-06-05 11:26:40,471.471 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605112540834', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Please close door 2'}}
[2026-06-05 11:26:40,475.475 INFO    ] 200
[2026-06-05 11:26:40,478.478 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260605112540834","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"umessage":"In Progress","tmessage":"In Progress","data":[]},"rstatus":false,"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Rite Bite Sports Bar 40gm"}]},"voiceNote":"Please close door 2"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 11:26:40,482.482 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605112540834', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': []}, 'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Please close door 2'}}}
[2026-06-05 11:26:40,486.486 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Please close door 2'}
[2026-06-05 11:26:43,543.543 INFO    ] 200
[2026-06-05 11:26:43,546.546 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": true, "delay": 100, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True"}
[2026-06-05 11:26:43,550.550 INFO    ] {'delay': 100, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed'}
[2026-06-05 11:26:43,554.554 INFO    ] 2026-06-05 11:26:43
[2026-06-05 11:26:43,558.558 INFO    ] Order Completed 
[2026-06-05 11:26:43,561.561 INFO    ] Order Completed 
[2026-06-05 11:26:43,565.565 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-05 11:26:43,568.568 INFO    ] 2026-06-05 11:26:43
[2026-06-05 11:26:43,571.571 INFO    ] playing audio file
[2026-06-05 11:26:43,591.591 INFO    ] 2026-06-05 11:26:43
[2026-06-05 11:26:43,595.595 INFO    ] {'delay': 100, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed'}
[2026-06-05 11:26:43,599.599 INFO    ] 2026-06-05 11:26:43
[2026-06-05 11:26:45,132.132 INFO    ] 200
[2026-06-05 11:26:45,135.135 INFO    ] {"rstatus": true, "skus": [{"skuid": "4500669", "tray_id": "40", "sku_total": 40.0, "unit_price": "40", "door_id": "", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "mrp": "40", "qty": 1, "name": "Rite Bite Sports Bar 40gm per peice"}], "logic": "WBL", "anomaly": 0, "total_amount": 40.0, "orderId": "TM07202501260605112540834", "res": "True"}
[2026-06-05 11:26:45,139.139 INFO    ] {'skus': [{'tray_id': '40', 'door_id': '', 'skuid': '4500669', 'name': 'Rite Bite Sports Bar 40gm per peice', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': '40', 'mrp': '40', 'qty': 1, 'sku_total': 40.0}], 'anomaly': 0, 'orderId': 'TM07202501260605112540834', 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 40.0}
[2026-06-05 11:26:45,142.142 INFO    ] {'skus': [{'tray_id': '40', 'door_id': '', 'skuid': '4500669', 'name': 'Rite Bite Sports Bar 40gm per peice', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': '40', 'mrp': '40', 'qty': 1, 'sku_total': 40.0}], 'anomaly': 0, 'orderId': 'TM07202501260605112540834', 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 40.0}
[2026-06-05 11:26:45,145.145 INFO    ] 2026-06-05 11:26:45
[2026-06-05 11:26:45,148.148 INFO    ] 2026-06-05 11:26:45
[2026-06-05 11:26:45,151.151 INFO    ] 40
[2026-06-05 11:26:45,154.154 INFO    ] 2026-06-05 11:26:45
[2026-06-05 11:26:45,158.158 INFO    ] 2026-06-05 11:26:45
[2026-06-05 11:26:45,161.161 INFO    ]  Your Bill Amount is 40
[2026-06-05 11:26:45,164.164 INFO    ]  Your Bill Amount is 40
[2026-06-05 11:26:45,167.167 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-05 11:26:45,171.171 INFO    ] 2026-06-05 11:26:45
[2026-06-05 11:26:45,173.173 INFO    ] playing audio file
[2026-06-05 11:26:45,191.191 INFO    ] 2026-06-05 11:26:45
[2026-06-05 11:26:45,195.195 INFO    ] 2026-06-05 11:26:45
[2026-06-05 11:26:45,199.199 INFO    ] publish_status: order_id=TM07202501260605112540834
[2026-06-05 11:26:45,203.203 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605112540834
[2026-06-05 11:26:45,274.274 INFO    ] [publish_status] Message added to stream with ID: 1780639005266-0
[2026-06-05 11:26:45,278.278 INFO    ] Published to order:TM07202501260605112540834: {'timestamp': '2026-06-05T05:56:45.197243Z', 'server_status': 'invoiceOrder', 'order_id': 'TM07202501260605112540834', 'server_response': '{"skus": [{"tray_id": "40", "door_id": "", "skuid": "4500669", "name": "Rite Bite Sports Bar 40gm per peice", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "unit_price": "40", "mrp": "40", "qty": 1, "sku_total": 40.0}], "anomaly": 0, "orderId": "TM07202501260605112540834", "res": "True", "rstatus": true, "logic": "WBL", "total_amount": 40.0}'} (ID: 1780639005266-0)
[2026-06-05 11:26:45,434.434 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260605112540834', 'server_response': {'skus': [{'tray_id': '40', 'door_id': '', 'skuid': '4500669', 'name': 'Rite Bite Sports Bar 40gm per peice', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': '40', 'mrp': '40', 'qty': 1, 'sku_total': 40.0}], 'anomaly': 0, 'orderId': 'TM07202501260605112540834', 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 40.0}}
[2026-06-05 11:26:45,438.438 INFO    ] 200
[2026-06-05 11:26:45,440.440 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM07202501260605112540834","server_response":{"skus":[{"tray_id":"40","door_id":"","skuid":"4500669","name":"Rite Bite Sports Bar 40gm per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","unit_price":"40","mrp":"40","qty":1,"sku_total":40}],"anomaly":0,"orderId":"TM07202501260605112540834","res":"true","rstatus":true,"logic":"WBL","total_amount":40}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 11:26:45,445.445 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260605112540834', 'server_response': {'skus': [{'tray_id': '40', 'door_id': '', 'skuid': '4500669', 'name': 'Rite Bite Sports Bar 40gm per peice', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': '40', 'mrp': '40', 'qty': 1, 'sku_total': 40}], 'res': 'true', 'rstatus': True, 'orderId': 'TM07202501260605112540834', 'anomaly': 0, 'logic': 'WBL', 'total_amount': 40}}}
[2026-06-05 11:26:45,449.449 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260605112540834', 'server_response': {'skus': [{'tray_id': '40', 'door_id': '', 'skuid': '4500669', 'name': 'Rite Bite Sports Bar 40gm per peice', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': '40', 'mrp': '40', 'qty': 1, 'sku_total': 40}], 'res': 'true', 'rstatus': True, 'orderId': 'TM07202501260605112540834', 'anomaly': 0, 'logic': 'WBL', 'total_amount': 40}}}
[2026-06-05 11:26:45,451.451 INFO    ] 2026-06-05 11:26:45
[2026-06-05 11:26:47,296.296 INFO    ] 200
[2026-06-05 11:26:47,299.299 INFO    ] {"orders": [], "orders_synced": [], "order_items_synced": [], "orders_data": [], "tray_synced": ["TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834", "TM07202501260605112540834"], "orders_data_synced": [], "order_items": [], "tray_sync": [], "status": true}
[2026-06-05 11:26:47,303.303 INFO    ] 2026-06-05 11:26:47
[2026-06-05 11:26:47,421.421 INFO    ] 200
[2026-06-05 11:26:47,424.424 INFO    ] True
[2026-06-05 11:26:47,428.428 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260605112540834
[2026-06-05 11:26:47,432.432 INFO    ] start order file deleted
[2026-06-05 11:26:47,436.436 INFO    ] Checking for system updates...
[2026-06-05 11:26:47,477.477 INFO    ] 200
[2026-06-05 11:26:47,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:26:47,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:26:47,554.554 INFO    ] No update needed
[2026-06-05 11:26:47,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 11:26:47,598.598 INFO    ] 200
[2026-06-05 11:26:47,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:26:47,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:26:47,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:26:47,704.704 INFO    ] No camera update needed
[2026-06-05 11:26:47,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:26:47,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:26:47,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:26:47,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:26:49,767.767 INFO    ] ================================================
[2026-06-05 11:26:49,783.783 INFO    ] Launching Daemon at Fri Jun  5 11:26:49 IST 2026
[2026-06-05 11:26:49,794.794 INFO    ] ================================================
[2026-06-05 11:26:50,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:26:50
[2026-06-05 11:26:50,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:26:51,214.214 INFO    ] Initializing speech engine...
[2026-06-05 11:26:51,221.221 INFO    ] 2026-06-05 11:26:51
[2026-06-05 11:26:51,518.518 INFO    ] 2026-06-05 11:26:51
[2026-06-05 11:26:51,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:26:51,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:26:51,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:26:51,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:26:51,902.902 INFO    ] time= 05/06/2026 11:26:51
[2026-06-05 11:26:51,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:26:51,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:26:52,031.031 INFO    ] No existing commands found in stream
[2026-06-05 11:26:57,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:26:57,049.049 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 11:27:00,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:27:00,755.755 INFO    ] Checking for system updates...
[2026-06-05 11:27:00,793.793 INFO    ] 200
[2026-06-05 11:27:00,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:00,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:27:00,853.853 INFO    ] No update needed
[2026-06-05 11:27:00,856.856 INFO    ] Checking for camera pi updates...
[2026-06-05 11:27:00,892.892 INFO    ] 200
[2026-06-05 11:27:00,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:00,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:27:00,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:27:00,997.997 INFO    ] No camera update needed
[2026-06-05 11:27:00,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:27:01,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:27:01,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:27:01,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:27:03,062.062 INFO    ] ================================================
[2026-06-05 11:27:03,080.080 INFO    ] Launching Daemon at Fri Jun  5 11:27:03 IST 2026
[2026-06-05 11:27:03,094.094 INFO    ] ================================================
[2026-06-05 11:27:03,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:27:03
[2026-06-05 11:27:04,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:27:04,553.553 INFO    ] Initializing speech engine...
[2026-06-05 11:27:04,560.560 INFO    ] 2026-06-05 11:27:04
[2026-06-05 11:27:04,856.856 INFO    ] 2026-06-05 11:27:04
[2026-06-05 11:27:04,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:27:05,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:27:05,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:27:05,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:27:05,276.276 INFO    ] time= 05/06/2026 11:27:05
[2026-06-05 11:27:05,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:27:05,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:27:05,430.430 INFO    ] No existing commands found in stream
[2026-06-05 11:27:10,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:27:10,468.468 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 11:27:11,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:27:11,237.237 INFO    ] Checking for system updates...
[2026-06-05 11:27:11,273.273 INFO    ] 200
[2026-06-05 11:27:11,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:11,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:27:11,335.335 INFO    ] No update needed
[2026-06-05 11:27:11,338.338 INFO    ] Checking for camera pi updates...
[2026-06-05 11:27:11,373.373 INFO    ] 200
[2026-06-05 11:27:11,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:11,415.415 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:27:11,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:27:11,469.469 INFO    ] No camera update needed
[2026-06-05 11:27:11,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:27:11,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:27:11,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:27:11,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:27:13,524.524 INFO    ] ================================================
[2026-06-05 11:27:13,540.540 INFO    ] Launching Daemon at Fri Jun  5 11:27:13 IST 2026
[2026-06-05 11:27:13,551.551 INFO    ] ================================================
[2026-06-05 11:27:14,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:27:14
[2026-06-05 11:27:14,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:27:14,992.992 INFO    ] Initializing speech engine...
[2026-06-05 11:27:15,006.006 INFO    ] 2026-06-05 11:27:14
[2026-06-05 11:27:15,283.283 INFO    ] 2026-06-05 11:27:15
[2026-06-05 11:27:15,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:27:15,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:27:15,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:27:15,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:27:15,889.889 INFO    ] time= 05/06/2026 11:27:15
[2026-06-05 11:27:15,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:27:15,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:27:16,065.065 INFO    ] No existing commands found in stream
[2026-06-05 11:27:21,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:27:21,099.099 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 11:27:22,578.578 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:27:22,581.581 INFO    ] Checking for system updates...
[2026-06-05 11:27:22,618.618 INFO    ] 200
[2026-06-05 11:27:22,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:22,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:27:22,677.677 INFO    ] No update needed
[2026-06-05 11:27:22,680.680 INFO    ] Checking for camera pi updates...
[2026-06-05 11:27:22,715.715 INFO    ] 200
[2026-06-05 11:27:22,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:22,758.758 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:27:22,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:27:22,906.906 INFO    ] No camera update needed
[2026-06-05 11:27:22,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:27:22,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:27:22,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:27:22,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:27:24,964.964 INFO    ] ================================================
[2026-06-05 11:27:24,979.979 INFO    ] Launching Daemon at Fri Jun  5 11:27:24 IST 2026
[2026-06-05 11:27:24,991.991 INFO    ] ================================================
[2026-06-05 11:27:25,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:27:25
[2026-06-05 11:27:26,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:27:26,453.453 INFO    ] Initializing speech engine...
[2026-06-05 11:27:26,459.459 INFO    ] 2026-06-05 11:27:26
[2026-06-05 11:27:26,716.716 INFO    ] 2026-06-05 11:27:26
[2026-06-05 11:27:26,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:27:26,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:27:27,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:27:27,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:27:27,165.165 INFO    ] time= 05/06/2026 11:27:27
[2026-06-05 11:27:27,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:27:27,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:27:27,415.415 INFO    ] No existing commands found in stream
[2026-06-05 11:27:32,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:27:32,431.431 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 11:27:35,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:27:35,833.833 INFO    ] Checking for system updates...
[2026-06-05 11:27:35,869.869 INFO    ] 200
[2026-06-05 11:27:35,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:35,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:27:35,928.928 INFO    ] No update needed
[2026-06-05 11:27:35,930.930 INFO    ] Checking for camera pi updates...
[2026-06-05 11:27:35,964.964 INFO    ] 200
[2026-06-05 11:27:35,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:36,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:27:36,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:27:36,068.068 INFO    ] No camera update needed
[2026-06-05 11:27:36,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:27:36,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:27:36,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:27:36,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:27:38,124.124 INFO    ] ================================================
[2026-06-05 11:27:38,140.140 INFO    ] Launching Daemon at Fri Jun  5 11:27:38 IST 2026
[2026-06-05 11:27:38,152.152 INFO    ] ================================================
[2026-06-05 11:27:38,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:27:38
[2026-06-05 11:27:39,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:27:39,622.622 INFO    ] Initializing speech engine...
[2026-06-05 11:27:39,636.636 INFO    ] 2026-06-05 11:27:39
[2026-06-05 11:27:39,955.955 INFO    ] 2026-06-05 11:27:39
[2026-06-05 11:27:40,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:27:40,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:27:40,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:27:40,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:27:40,481.481 INFO    ] time= 05/06/2026 11:27:40
[2026-06-05 11:27:40,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:27:40,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:27:40,634.634 INFO    ] No existing commands found in stream
[2026-06-05 11:27:45,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:27:45,656.656 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 11:27:46,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:27:46,509.509 INFO    ] Checking for system updates...
[2026-06-05 11:27:46,547.547 INFO    ] 200
[2026-06-05 11:27:46,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:46,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:27:46,606.606 INFO    ] No update needed
[2026-06-05 11:27:46,609.609 INFO    ] Checking for camera pi updates...
[2026-06-05 11:27:46,644.644 INFO    ] 200
[2026-06-05 11:27:46,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:27:46,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:27:46,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:27:46,740.740 INFO    ] No camera update needed
[2026-06-05 11:27:46,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:27:46,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:27:46,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:27:46,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:27:48,800.800 INFO    ] ================================================
[2026-06-05 11:27:48,815.815 INFO    ] Launching Daemon at Fri Jun  5 11:27:48 IST 2026
[2026-06-05 11:27:48,827.827 INFO    ] ================================================
[2026-06-05 11:27:49,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:27:49
[2026-06-05 11:27:50,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:27:50,257.257 INFO    ] Initializing speech engine...
[2026-06-05 11:27:50,263.263 INFO    ] 2026-06-05 11:27:50
[2026-06-05 11:27:50,561.561 INFO    ] 2026-06-05 11:27:50
[2026-06-05 11:27:50,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:27:50,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:27:50,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:27:50,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:27:50,948.948 INFO    ] time= 05/06/2026 11:27:50
[2026-06-05 11:27:50,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:27:50,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:27:51,078.078 INFO    ] No existing commands found in stream
[2026-06-05 11:27:56,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:27:56,096.096 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 11:28:00,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:28:00,929.929 INFO    ] Checking for system updates...
[2026-06-05 11:28:00,965.965 INFO    ] 200
[2026-06-05 11:28:00,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:01,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:28:01,022.022 INFO    ] No update needed
[2026-06-05 11:28:01,025.025 INFO    ] Checking for camera pi updates...
[2026-06-05 11:28:01,059.059 INFO    ] 200
[2026-06-05 11:28:01,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:01,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:28:01,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:28:01,153.153 INFO    ] No camera update needed
[2026-06-05 11:28:01,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:28:01,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:28:01,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:28:01,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:28:03,209.209 INFO    ] ================================================
[2026-06-05 11:28:03,225.225 INFO    ] Launching Daemon at Fri Jun  5 11:28:03 IST 2026
[2026-06-05 11:28:03,236.236 INFO    ] ================================================
[2026-06-05 11:28:03,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:28:03
[2026-06-05 11:28:04,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:28:04,794.794 INFO    ] Initializing speech engine...
[2026-06-05 11:28:04,806.806 INFO    ] 2026-06-05 11:28:04
[2026-06-05 11:28:05,095.095 INFO    ] 2026-06-05 11:28:05
[2026-06-05 11:28:05,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:28:05,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:28:05,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:28:05,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:28:05,634.634 INFO    ] time= 05/06/2026 11:28:05
[2026-06-05 11:28:05,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:28:05,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:28:05,791.791 INFO    ] No existing commands found in stream
[2026-06-05 11:28:10,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:28:10,818.818 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 11:28:14,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:28:14,705.705 INFO    ] Checking for system updates...
[2026-06-05 11:28:14,743.743 INFO    ] 200
[2026-06-05 11:28:14,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:14,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:28:14,803.803 INFO    ] No update needed
[2026-06-05 11:28:14,805.805 INFO    ] Checking for camera pi updates...
[2026-06-05 11:28:14,842.842 INFO    ] 200
[2026-06-05 11:28:14,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:14,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:28:14,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:28:14,960.960 INFO    ] No camera update needed
[2026-06-05 11:28:14,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:28:14,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:28:14,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:28:14,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:28:17,016.016 INFO    ] ================================================
[2026-06-05 11:28:17,032.032 INFO    ] Launching Daemon at Fri Jun  5 11:28:17 IST 2026
[2026-06-05 11:28:17,044.044 INFO    ] ================================================
[2026-06-05 11:28:17,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:28:17
[2026-06-05 11:28:18,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:28:18,499.499 INFO    ] Initializing speech engine...
[2026-06-05 11:28:18,519.519 INFO    ] 2026-06-05 11:28:18
[2026-06-05 11:28:18,791.791 INFO    ] 2026-06-05 11:28:18
[2026-06-05 11:28:18,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:28:19,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:28:19,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:28:19,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:28:19,157.157 INFO    ] time= 05/06/2026 11:28:19
[2026-06-05 11:28:19,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:28:19,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:28:19,338.338 INFO    ] No existing commands found in stream
[2026-06-05 11:28:24,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:28:24,360.360 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 11:28:24,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:28:24,828.828 INFO    ] Checking for system updates...
[2026-06-05 11:28:24,864.864 INFO    ] 200
[2026-06-05 11:28:24,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:24,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:28:24,922.922 INFO    ] No update needed
[2026-06-05 11:28:24,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 11:28:24,959.959 INFO    ] 200
[2026-06-05 11:28:24,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:25,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:28:25,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:28:25,077.077 INFO    ] No camera update needed
[2026-06-05 11:28:25,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:28:25,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:28:25,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:28:25,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:28:27,133.133 INFO    ] ================================================
[2026-06-05 11:28:27,148.148 INFO    ] Launching Daemon at Fri Jun  5 11:28:27 IST 2026
[2026-06-05 11:28:27,159.159 INFO    ] ================================================
[2026-06-05 11:28:27,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:28:27
[2026-06-05 11:28:28,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:28:28,766.766 INFO    ] Initializing speech engine...
[2026-06-05 11:28:28,774.774 INFO    ] 2026-06-05 11:28:28
[2026-06-05 11:28:29,049.049 INFO    ] 2026-06-05 11:28:29
[2026-06-05 11:28:29,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:28:30,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:28:30,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:28:30,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:28:30,515.515 INFO    ] time= 05/06/2026 11:28:30
[2026-06-05 11:28:30,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:28:30,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:28:30,609.609 INFO    ] No existing commands found in stream
[2026-06-05 11:28:35,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:28:35,622.622 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 11:28:37,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:28:37,741.741 INFO    ] Checking for system updates...
[2026-06-05 11:28:37,779.779 INFO    ] 200
[2026-06-05 11:28:37,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:37,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:28:37,843.843 INFO    ] No update needed
[2026-06-05 11:28:37,845.845 INFO    ] Checking for camera pi updates...
[2026-06-05 11:28:37,879.879 INFO    ] 200
[2026-06-05 11:28:37,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:37,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:28:37,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:28:37,974.974 INFO    ] No camera update needed
[2026-06-05 11:28:37,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:28:37,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:28:37,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:28:37,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:28:40,030.030 INFO    ] ================================================
[2026-06-05 11:28:40,047.047 INFO    ] Launching Daemon at Fri Jun  5 11:28:40 IST 2026
[2026-06-05 11:28:40,058.058 INFO    ] ================================================
[2026-06-05 11:28:40,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:28:40
[2026-06-05 11:28:41,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:28:41,495.495 INFO    ] Initializing speech engine...
[2026-06-05 11:28:41,504.504 INFO    ] 2026-06-05 11:28:41
[2026-06-05 11:28:41,750.750 INFO    ] 2026-06-05 11:28:41
[2026-06-05 11:28:41,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:28:42,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:28:42,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:28:42,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:28:42,205.205 INFO    ] time= 05/06/2026 11:28:42
[2026-06-05 11:28:42,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:28:42,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:28:42,448.448 INFO    ] No existing commands found in stream
[2026-06-05 11:28:47,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:28:47,476.476 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 11:28:51,860.860 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:28:51,863.863 INFO    ] Checking for system updates...
[2026-06-05 11:28:51,902.902 INFO    ] 200
[2026-06-05 11:28:51,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:51,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:28:51,960.960 INFO    ] No update needed
[2026-06-05 11:28:51,963.963 INFO    ] Checking for camera pi updates...
[2026-06-05 11:28:51,997.997 INFO    ] 200
[2026-06-05 11:28:51,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:28:52,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:28:52,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:28:52,091.091 INFO    ] No camera update needed
[2026-06-05 11:28:52,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:28:52,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:28:52,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:28:52,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:28:54,146.146 INFO    ] ================================================
[2026-06-05 11:28:54,161.161 INFO    ] Launching Daemon at Fri Jun  5 11:28:54 IST 2026
[2026-06-05 11:28:54,172.172 INFO    ] ================================================
[2026-06-05 11:28:54,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:28:54
[2026-06-05 11:28:55,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:28:55,602.602 INFO    ] Initializing speech engine...
[2026-06-05 11:28:55,611.611 INFO    ] 2026-06-05 11:28:55
[2026-06-05 11:28:55,861.861 INFO    ] 2026-06-05 11:28:55
[2026-06-05 11:28:55,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:28:56,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:28:56,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:28:56,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:28:56,367.367 INFO    ] time= 05/06/2026 11:28:56
[2026-06-05 11:28:56,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:28:56,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:28:56,557.557 INFO    ] No existing commands found in stream
[2026-06-05 11:29:01,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:29:01,590.590 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 11:29:02,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:29:02,630.630 INFO    ] Checking for system updates...
[2026-06-05 11:29:02,684.684 INFO    ] 200
[2026-06-05 11:29:02,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:02,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:29:02,761.761 INFO    ] No update needed
[2026-06-05 11:29:02,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 11:29:02,807.807 INFO    ] 200
[2026-06-05 11:29:02,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:02,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:29:02,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:29:02,901.901 INFO    ] No camera update needed
[2026-06-05 11:29:02,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:29:02,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:29:02,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:29:02,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:29:04,960.960 INFO    ] ================================================
[2026-06-05 11:29:04,975.975 INFO    ] Launching Daemon at Fri Jun  5 11:29:04 IST 2026
[2026-06-05 11:29:04,985.985 INFO    ] ================================================
[2026-06-05 11:29:05,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:29:05
[2026-06-05 11:29:06,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:29:06,439.439 INFO    ] Initializing speech engine...
[2026-06-05 11:29:06,451.451 INFO    ] 2026-06-05 11:29:06
[2026-06-05 11:29:06,740.740 INFO    ] 2026-06-05 11:29:06
[2026-06-05 11:29:06,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:29:06,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:29:06,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:29:07,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:29:07,159.159 INFO    ] time= 05/06/2026 11:29:07
[2026-06-05 11:29:07,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:29:07,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:29:07,323.323 INFO    ] No existing commands found in stream
[2026-06-05 11:29:12,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:29:12,351.351 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 11:29:12,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:29:12,801.801 INFO    ] Checking for system updates...
[2026-06-05 11:29:12,837.837 INFO    ] 200
[2026-06-05 11:29:12,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:12,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:29:12,896.896 INFO    ] No update needed
[2026-06-05 11:29:12,899.899 INFO    ] Checking for camera pi updates...
[2026-06-05 11:29:12,936.936 INFO    ] 200
[2026-06-05 11:29:12,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:12,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:29:13,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:29:13,033.033 INFO    ] No camera update needed
[2026-06-05 11:29:13,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:29:13,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:29:13,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:29:13,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:29:15,088.088 INFO    ] ================================================
[2026-06-05 11:29:15,103.103 INFO    ] Launching Daemon at Fri Jun  5 11:29:15 IST 2026
[2026-06-05 11:29:15,114.114 INFO    ] ================================================
[2026-06-05 11:29:15,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:29:15
[2026-06-05 11:29:16,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:29:16,519.519 INFO    ] Initializing speech engine...
[2026-06-05 11:29:16,532.532 INFO    ] 2026-06-05 11:29:16
[2026-06-05 11:29:16,793.793 INFO    ] 2026-06-05 11:29:16
[2026-06-05 11:29:16,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:29:17,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:29:17,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:29:17,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:29:17,294.294 INFO    ] time= 05/06/2026 11:29:17
[2026-06-05 11:29:17,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:29:17,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:29:17,505.505 INFO    ] No existing commands found in stream
[2026-06-05 11:29:22,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:29:22,535.535 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 11:29:24,018.018 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:29:24,021.021 INFO    ] Checking for system updates...
[2026-06-05 11:29:24,060.060 INFO    ] 200
[2026-06-05 11:29:24,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:24,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:29:24,118.118 INFO    ] No update needed
[2026-06-05 11:29:24,120.120 INFO    ] Checking for camera pi updates...
[2026-06-05 11:29:24,158.158 INFO    ] 200
[2026-06-05 11:29:24,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:24,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:29:24,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:29:24,349.349 INFO    ] No camera update needed
[2026-06-05 11:29:24,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:29:24,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:29:24,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:29:24,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:29:26,405.405 INFO    ] ================================================
[2026-06-05 11:29:26,420.420 INFO    ] Launching Daemon at Fri Jun  5 11:29:26 IST 2026
[2026-06-05 11:29:26,430.430 INFO    ] ================================================
[2026-06-05 11:29:27,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:29:26
[2026-06-05 11:29:27,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:29:27,865.865 INFO    ] Initializing speech engine...
[2026-06-05 11:29:27,873.873 INFO    ] 2026-06-05 11:29:27
[2026-06-05 11:29:28,166.166 INFO    ] 2026-06-05 11:29:28
[2026-06-05 11:29:28,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:29:28,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:29:28,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:29:30,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:29:30,257.257 INFO    ] time= 05/06/2026 11:29:30
[2026-06-05 11:29:30,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:29:30,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:29:30,340.340 INFO    ] No existing commands found in stream
[2026-06-05 11:29:35,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:29:35,356.356 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 11:29:36,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:29:36,126.126 INFO    ] Checking for system updates...
[2026-06-05 11:29:36,161.161 INFO    ] 200
[2026-06-05 11:29:36,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:36,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:29:36,219.219 INFO    ] No update needed
[2026-06-05 11:29:36,222.222 INFO    ] Checking for camera pi updates...
[2026-06-05 11:29:36,255.255 INFO    ] 200
[2026-06-05 11:29:36,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:36,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:29:36,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:29:36,348.348 INFO    ] No camera update needed
[2026-06-05 11:29:36,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:29:36,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:29:36,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:29:36,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:29:38,405.405 INFO    ] ================================================
[2026-06-05 11:29:38,420.420 INFO    ] Launching Daemon at Fri Jun  5 11:29:38 IST 2026
[2026-06-05 11:29:38,431.431 INFO    ] ================================================
[2026-06-05 11:29:39,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:29:39
[2026-06-05 11:29:39,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:29:40,084.084 INFO    ] Initializing speech engine...
[2026-06-05 11:29:40,090.090 INFO    ] 2026-06-05 11:29:40
[2026-06-05 11:29:40,372.372 INFO    ] 2026-06-05 11:29:40
[2026-06-05 11:29:40,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:29:40,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:29:40,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:29:40,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:29:40,927.927 INFO    ] time= 05/06/2026 11:29:40
[2026-06-05 11:29:40,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:29:40,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:29:41,071.071 INFO    ] No existing commands found in stream
[2026-06-05 11:29:46,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:29:46,109.109 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 11:29:49,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:29:49,492.492 INFO    ] Checking for system updates...
[2026-06-05 11:29:49,531.531 INFO    ] 200
[2026-06-05 11:29:49,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:49,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:29:49,591.591 INFO    ] No update needed
[2026-06-05 11:29:49,594.594 INFO    ] Checking for camera pi updates...
[2026-06-05 11:29:49,632.632 INFO    ] 200
[2026-06-05 11:29:49,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:29:49,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:29:49,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:29:49,744.744 INFO    ] No camera update needed
[2026-06-05 11:29:49,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:29:49,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:29:49,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:29:49,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:29:51,803.803 INFO    ] ================================================
[2026-06-05 11:29:51,818.818 INFO    ] Launching Daemon at Fri Jun  5 11:29:51 IST 2026
[2026-06-05 11:29:51,829.829 INFO    ] ================================================
[2026-06-05 11:29:52,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:29:52
[2026-06-05 11:29:53,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:29:53,282.282 INFO    ] Initializing speech engine...
[2026-06-05 11:29:53,289.289 INFO    ] 2026-06-05 11:29:53
[2026-06-05 11:29:53,586.586 INFO    ] 2026-06-05 11:29:53
[2026-06-05 11:29:53,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:29:53,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:29:53,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:29:53,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:29:53,973.973 INFO    ] time= 05/06/2026 11:29:53
[2026-06-05 11:29:53,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:29:54,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:29:54,099.099 INFO    ] No existing commands found in stream
[2026-06-05 11:29:59,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:29:59,115.115 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 11:30:00,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:30:00,937.937 INFO    ] Checking for system updates...
[2026-06-05 11:30:00,973.973 INFO    ] 200
[2026-06-05 11:30:00,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:01,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:30:01,037.037 INFO    ] No update needed
[2026-06-05 11:30:01,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 11:30:01,073.073 INFO    ] 200
[2026-06-05 11:30:01,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:01,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:30:01,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:30:01,177.177 INFO    ] No camera update needed
[2026-06-05 11:30:01,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:30:01,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:30:01,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:30:01,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:30:03,314.314 INFO    ] ================================================
[2026-06-05 11:30:03,344.344 INFO    ] Launching Daemon at Fri Jun  5 11:30:03 IST 2026
[2026-06-05 11:30:03,388.388 INFO    ] ================================================
[2026-06-05 11:30:04,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:30:04
[2026-06-05 11:30:04,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:30:05,009.009 INFO    ] Initializing speech engine...
[2026-06-05 11:30:05,018.018 INFO    ] 2026-06-05 11:30:05
[2026-06-05 11:30:05,278.278 INFO    ] 2026-06-05 11:30:05
[2026-06-05 11:30:05,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:30:05,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:30:05,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:30:05,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:30:05,764.764 INFO    ] time= 05/06/2026 11:30:05
[2026-06-05 11:30:05,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:30:05,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:30:05,979.979 INFO    ] No existing commands found in stream
[2026-06-05 11:30:11,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:30:11,005.005 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 11:30:14,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:30:14,951.951 INFO    ] Checking for system updates...
[2026-06-05 11:30:14,987.987 INFO    ] 200
[2026-06-05 11:30:14,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:15,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:30:15,073.073 INFO    ] No update needed
[2026-06-05 11:30:15,076.076 INFO    ] Checking for camera pi updates...
[2026-06-05 11:30:15,110.110 INFO    ] 200
[2026-06-05 11:30:15,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:15,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:30:15,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:30:15,211.211 INFO    ] No camera update needed
[2026-06-05 11:30:15,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:30:15,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:30:15,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:30:15,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:30:17,269.269 INFO    ] ================================================
[2026-06-05 11:30:17,284.284 INFO    ] Launching Daemon at Fri Jun  5 11:30:17 IST 2026
[2026-06-05 11:30:17,295.295 INFO    ] ================================================
[2026-06-05 11:30:17,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:30:17
[2026-06-05 11:30:18,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:30:18,721.721 INFO    ] Initializing speech engine...
[2026-06-05 11:30:18,728.728 INFO    ] 2026-06-05 11:30:18
[2026-06-05 11:30:19,030.030 INFO    ] 2026-06-05 11:30:18
[2026-06-05 11:30:19,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:30:19,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:30:19,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:30:19,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:30:19,421.421 INFO    ] time= 05/06/2026 11:30:19
[2026-06-05 11:30:19,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:30:19,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:30:19,548.548 INFO    ] No existing commands found in stream
[2026-06-05 11:30:24,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:30:24,564.564 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 11:30:27,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:30:27,456.456 INFO    ] Checking for system updates...
[2026-06-05 11:30:27,492.492 INFO    ] 200
[2026-06-05 11:30:27,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:27,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:30:27,552.552 INFO    ] No update needed
[2026-06-05 11:30:27,554.554 INFO    ] Checking for camera pi updates...
[2026-06-05 11:30:27,589.589 INFO    ] 200
[2026-06-05 11:30:27,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:27,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:30:27,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:30:27,693.693 INFO    ] No camera update needed
[2026-06-05 11:30:27,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:30:27,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:30:27,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:30:27,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:30:29,750.750 INFO    ] ================================================
[2026-06-05 11:30:29,767.767 INFO    ] Launching Daemon at Fri Jun  5 11:30:29 IST 2026
[2026-06-05 11:30:29,778.778 INFO    ] ================================================
[2026-06-05 11:30:30,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:30:30
[2026-06-05 11:30:31,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:30:31,427.427 INFO    ] Initializing speech engine...
[2026-06-05 11:30:31,439.439 INFO    ] 2026-06-05 11:30:31
[2026-06-05 11:30:31,734.734 INFO    ] 2026-06-05 11:30:31
[2026-06-05 11:30:31,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:30:32,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:30:32,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:30:32,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:30:32,502.502 INFO    ] time= 05/06/2026 11:30:32
[2026-06-05 11:30:32,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:30:32,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:30:32,728.728 INFO    ] No existing commands found in stream
[2026-06-05 11:30:37,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:30:37,746.746 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 11:30:38,209.209 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:30:38,212.212 INFO    ] Checking for system updates...
[2026-06-05 11:30:38,251.251 INFO    ] 200
[2026-06-05 11:30:38,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:38,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:30:38,311.311 INFO    ] No update needed
[2026-06-05 11:30:38,313.313 INFO    ] Checking for camera pi updates...
[2026-06-05 11:30:38,351.351 INFO    ] 200
[2026-06-05 11:30:38,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:38,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:30:38,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:30:38,445.445 INFO    ] No camera update needed
[2026-06-05 11:30:38,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:30:38,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:30:38,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:30:38,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:30:40,502.502 INFO    ] ================================================
[2026-06-05 11:30:40,518.518 INFO    ] Launching Daemon at Fri Jun  5 11:30:40 IST 2026
[2026-06-05 11:30:40,529.529 INFO    ] ================================================
[2026-06-05 11:30:41,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:30:41
[2026-06-05 11:30:41,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:30:41,939.939 INFO    ] Initializing speech engine...
[2026-06-05 11:30:41,952.952 INFO    ] 2026-06-05 11:30:41
[2026-06-05 11:30:42,231.231 INFO    ] 2026-06-05 11:30:42
[2026-06-05 11:30:42,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:30:42,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:30:42,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:30:42,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:30:42,647.647 INFO    ] time= 05/06/2026 11:30:42
[2026-06-05 11:30:42,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:30:42,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:30:42,814.814 INFO    ] No existing commands found in stream
[2026-06-05 11:30:47,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:30:47,841.841 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 11:30:49,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:30:49,118.118 INFO    ] Checking for system updates...
[2026-06-05 11:30:49,153.153 INFO    ] 200
[2026-06-05 11:30:49,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:49,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:30:49,211.211 INFO    ] No update needed
[2026-06-05 11:30:49,213.213 INFO    ] Checking for camera pi updates...
[2026-06-05 11:30:49,251.251 INFO    ] 200
[2026-06-05 11:30:49,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:30:49,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:30:49,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:30:49,341.341 INFO    ] No camera update needed
[2026-06-05 11:30:49,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:30:49,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:30:49,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:30:49,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:30:51,397.397 INFO    ] ================================================
[2026-06-05 11:30:51,412.412 INFO    ] Launching Daemon at Fri Jun  5 11:30:51 IST 2026
[2026-06-05 11:30:51,423.423 INFO    ] ================================================
[2026-06-05 11:30:52,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:30:52
[2026-06-05 11:30:52,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:30:53,036.036 INFO    ] Initializing speech engine...
[2026-06-05 11:30:53,048.048 INFO    ] 2026-06-05 11:30:53
[2026-06-05 11:30:53,334.334 INFO    ] 2026-06-05 11:30:53
[2026-06-05 11:30:53,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:30:53,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:30:53,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:30:53,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:30:53,868.868 INFO    ] time= 05/06/2026 11:30:53
[2026-06-05 11:30:53,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:30:53,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:30:54,033.033 INFO    ] No existing commands found in stream
[2026-06-05 11:30:59,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:30:59,067.067 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 11:31:00,617.617 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:31:00,620.620 INFO    ] Checking for system updates...
[2026-06-05 11:31:00,657.657 INFO    ] 200
[2026-06-05 11:31:00,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:31:00,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:31:00,718.718 INFO    ] No update needed
[2026-06-05 11:31:00,721.721 INFO    ] Checking for camera pi updates...
[2026-06-05 11:31:00,759.759 INFO    ] 200
[2026-06-05 11:31:00,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:31:00,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:31:00,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:31:00,869.869 INFO    ] No camera update needed
[2026-06-05 11:31:00,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:31:00,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:31:00,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:31:00,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:31:02,928.928 INFO    ] ================================================
[2026-06-05 11:31:02,944.944 INFO    ] Launching Daemon at Fri Jun  5 11:31:02 IST 2026
[2026-06-05 11:31:02,954.954 INFO    ] ================================================
[2026-06-05 11:31:03,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:31:03
[2026-06-05 11:31:04,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:31:04,390.390 INFO    ] Initializing speech engine...
[2026-06-05 11:31:04,400.400 INFO    ] 2026-06-05 11:31:04
[2026-06-05 11:31:04,682.682 INFO    ] 2026-06-05 11:31:04
[2026-06-05 11:31:04,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:31:04,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:31:04,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:31:05,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:31:05,250.250 INFO    ] time= 05/06/2026 11:31:05
[2026-06-05 11:31:05,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:31:05,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:31:05,399.399 INFO    ] No existing commands found in stream
[2026-06-05 11:31:10,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:31:10,431.431 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-05 11:31:11,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:31:11,254.254 INFO    ] Checking for system updates...
[2026-06-05 11:31:11,291.291 INFO    ] 200
[2026-06-05 11:31:11,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:31:11,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:31:11,351.351 INFO    ] No update needed
[2026-06-05 11:31:11,353.353 INFO    ] Checking for camera pi updates...
[2026-06-05 11:31:11,389.389 INFO    ] 200
[2026-06-05 11:31:11,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:31:11,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:31:11,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:31:11,496.496 INFO    ] No camera update needed
[2026-06-05 11:31:11,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:31:11,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:31:11,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:31:11,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:31:13,558.558 INFO    ] ================================================
[2026-06-05 11:31:13,573.573 INFO    ] Launching Daemon at Fri Jun  5 11:31:13 IST 2026
[2026-06-05 11:31:13,583.583 INFO    ] ================================================
[2026-06-05 11:31:14,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:31:14
[2026-06-05 11:31:14,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:31:15,105.105 INFO    ] Initializing speech engine...
[2026-06-05 11:31:15,110.110 INFO    ] 2026-06-05 11:31:15
[2026-06-05 11:31:15,373.373 INFO    ] 2026-06-05 11:31:15
[2026-06-05 11:31:15,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:31:30,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:31:30,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:31:31,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:31:31,226.226 INFO    ] time= 05/06/2026 11:31:31
[2026-06-05 11:31:31,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:31:31,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:31:31,289.289 INFO    ] No existing commands found in stream
[2026-06-05 11:31:36,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:31:36,301.301 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 11:31:38,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:31:38,997.997 INFO    ] Checking for system updates...
[2026-06-05 11:31:39,033.033 INFO    ] 200
[2026-06-05 11:31:39,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:31:39,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:31:39,092.092 INFO    ] No update needed
[2026-06-05 11:31:39,094.094 INFO    ] Checking for camera pi updates...
[2026-06-05 11:31:39,133.133 INFO    ] 200
[2026-06-05 11:31:39,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:31:39,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:31:39,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:31:39,228.228 INFO    ] No camera update needed
[2026-06-05 11:31:39,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:31:39,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:31:39,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:31:39,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:31:41,288.288 INFO    ] ================================================
[2026-06-05 11:31:41,303.303 INFO    ] Launching Daemon at Fri Jun  5 11:31:41 IST 2026
[2026-06-05 11:31:41,314.314 INFO    ] ================================================
[2026-06-05 11:31:41,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:31:41
[2026-06-05 11:31:42,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:31:42,743.743 INFO    ] Initializing speech engine...
[2026-06-05 11:31:42,751.751 INFO    ] 2026-06-05 11:31:42
[2026-06-05 11:31:43,004.004 INFO    ] 2026-06-05 11:31:42
[2026-06-05 11:31:43,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:31:43,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:31:43,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:31:43,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:31:43,479.479 INFO    ] time= 05/06/2026 11:31:43
[2026-06-05 11:31:43,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:31:43,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:31:43,721.721 INFO    ] No existing commands found in stream
[2026-06-05 11:31:48,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:31:48,746.746 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 11:31:49,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:31:50,001.001 INFO    ] Checking for system updates...
[2026-06-05 11:31:50,037.037 INFO    ] 200
[2026-06-05 11:31:50,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:31:50,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:31:50,095.095 INFO    ] No update needed
[2026-06-05 11:31:50,097.097 INFO    ] Checking for camera pi updates...
[2026-06-05 11:31:50,132.132 INFO    ] 200
[2026-06-05 11:31:50,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:31:50,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:31:50,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:31:50,237.237 INFO    ] No camera update needed
[2026-06-05 11:31:50,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:31:50,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:31:50,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:31:50,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:31:52,291.291 INFO    ] ================================================
[2026-06-05 11:31:52,307.307 INFO    ] Launching Daemon at Fri Jun  5 11:31:52 IST 2026
[2026-06-05 11:31:52,317.317 INFO    ] ================================================
[2026-06-05 11:31:52,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:31:52
[2026-06-05 11:31:53,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:31:53,725.725 INFO    ] Initializing speech engine...
[2026-06-05 11:31:53,732.732 INFO    ] 2026-06-05 11:31:53
[2026-06-05 11:31:53,995.995 INFO    ] 2026-06-05 11:31:53
[2026-06-05 11:31:54,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:31:54,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:31:54,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:31:54,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:31:54,389.389 INFO    ] time= 05/06/2026 11:31:54
[2026-06-05 11:31:54,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:31:54,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:31:54,575.575 INFO    ] No existing commands found in stream
[2026-06-05 11:31:59,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:31:59,594.594 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 11:32:03,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:32:03,551.551 INFO    ] Checking for system updates...
[2026-06-05 11:32:03,587.587 INFO    ] 200
[2026-06-05 11:32:03,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:03,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:03,655.655 INFO    ] No update needed
[2026-06-05 11:32:03,657.657 INFO    ] Checking for camera pi updates...
[2026-06-05 11:32:03,692.692 INFO    ] 200
[2026-06-05 11:32:03,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:03,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:32:03,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:03,771.771 INFO    ] No camera update needed
[2026-06-05 11:32:03,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:32:03,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:32:03,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:32:03,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:32:05,827.827 INFO    ] ================================================
[2026-06-05 11:32:05,842.842 INFO    ] Launching Daemon at Fri Jun  5 11:32:05 IST 2026
[2026-06-05 11:32:05,853.853 INFO    ] ================================================
[2026-06-05 11:32:06,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:32:06
[2026-06-05 11:32:07,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:32:07,353.353 INFO    ] Initializing speech engine...
[2026-06-05 11:32:07,361.361 INFO    ] 2026-06-05 11:32:07
[2026-06-05 11:32:07,636.636 INFO    ] 2026-06-05 11:32:07
[2026-06-05 11:32:07,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:32:07,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:32:07,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:32:08,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:32:08,183.183 INFO    ] time= 05/06/2026 11:32:08
[2026-06-05 11:32:08,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:32:08,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:32:08,343.343 INFO    ] No existing commands found in stream
[2026-06-05 11:32:13,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:32:13,375.375 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 11:32:17,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:32:17,494.494 INFO    ] Checking for system updates...
[2026-06-05 11:32:17,530.530 INFO    ] 200
[2026-06-05 11:32:17,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:17,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:17,590.590 INFO    ] No update needed
[2026-06-05 11:32:17,592.592 INFO    ] Checking for camera pi updates...
[2026-06-05 11:32:17,627.627 INFO    ] 200
[2026-06-05 11:32:17,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:17,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:32:17,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:17,721.721 INFO    ] No camera update needed
[2026-06-05 11:32:17,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:32:17,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:32:17,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:32:17,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:32:19,778.778 INFO    ] ================================================
[2026-06-05 11:32:19,795.795 INFO    ] Launching Daemon at Fri Jun  5 11:32:19 IST 2026
[2026-06-05 11:32:19,807.807 INFO    ] ================================================
[2026-06-05 11:32:20,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:32:20
[2026-06-05 11:32:21,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:32:21,335.335 INFO    ] Initializing speech engine...
[2026-06-05 11:32:21,348.348 INFO    ] 2026-06-05 11:32:21
[2026-06-05 11:32:21,638.638 INFO    ] 2026-06-05 11:32:21
[2026-06-05 11:32:21,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:32:21,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:32:21,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:32:22,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:32:22,049.049 INFO    ] time= 05/06/2026 11:32:22
[2026-06-05 11:32:22,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:32:22,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:32:22,248.248 INFO    ] No existing commands found in stream
[2026-06-05 11:32:27,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:32:27,261.261 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 11:32:30,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:32:30,982.982 INFO    ] Checking for system updates...
[2026-06-05 11:32:31,018.018 INFO    ] 200
[2026-06-05 11:32:31,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:31,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:31,077.077 INFO    ] No update needed
[2026-06-05 11:32:31,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 11:32:31,113.113 INFO    ] 200
[2026-06-05 11:32:31,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:31,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:32:31,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:31,218.218 INFO    ] No camera update needed
[2026-06-05 11:32:31,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:32:31,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:32:31,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:32:31,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:32:33,275.275 INFO    ] ================================================
[2026-06-05 11:32:33,290.290 INFO    ] Launching Daemon at Fri Jun  5 11:32:33 IST 2026
[2026-06-05 11:32:33,301.301 INFO    ] ================================================
[2026-06-05 11:32:33,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:32:33
[2026-06-05 11:32:34,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:32:34,920.920 INFO    ] Initializing speech engine...
[2026-06-05 11:32:34,932.932 INFO    ] 2026-06-05 11:32:34
[2026-06-05 11:32:35,225.225 INFO    ] 2026-06-05 11:32:35
[2026-06-05 11:32:35,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:32:35,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:32:35,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:32:35,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:32:35,723.723 INFO    ] time= 05/06/2026 11:32:35
[2026-06-05 11:32:35,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:32:35,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:32:35,867.867 INFO    ] No existing commands found in stream
[2026-06-05 11:32:40,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:32:40,886.886 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 11:32:43,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:32:43,651.651 INFO    ] Checking for system updates...
[2026-06-05 11:32:43,689.689 INFO    ] 200
[2026-06-05 11:32:43,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:43,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:43,749.749 INFO    ] No update needed
[2026-06-05 11:32:43,752.752 INFO    ] Checking for camera pi updates...
[2026-06-05 11:32:43,786.786 INFO    ] 200
[2026-06-05 11:32:43,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:43,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:32:43,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:43,898.898 INFO    ] No camera update needed
[2026-06-05 11:32:43,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:32:43,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:32:43,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:32:43,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:32:45,954.954 INFO    ] ================================================
[2026-06-05 11:32:45,970.970 INFO    ] Launching Daemon at Fri Jun  5 11:32:45 IST 2026
[2026-06-05 11:32:45,980.980 INFO    ] ================================================
[2026-06-05 11:32:46,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:32:46
[2026-06-05 11:32:47,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:32:47,412.412 INFO    ] Initializing speech engine...
[2026-06-05 11:32:47,425.425 INFO    ] 2026-06-05 11:32:47
[2026-06-05 11:32:47,713.713 INFO    ] 2026-06-05 11:32:47
[2026-06-05 11:32:47,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:32:47,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:32:47,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:32:48,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:32:48,135.135 INFO    ] time= 05/06/2026 11:32:48
[2026-06-05 11:32:48,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:32:48,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:32:48,332.332 INFO    ] No existing commands found in stream
[2026-06-05 11:32:53,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:32:53,364.364 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 11:32:56,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:32:56,718.718 INFO    ] Checking for system updates...
[2026-06-05 11:32:56,754.754 INFO    ] 200
[2026-06-05 11:32:56,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:56,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:56,813.813 INFO    ] No update needed
[2026-06-05 11:32:56,815.815 INFO    ] Checking for camera pi updates...
[2026-06-05 11:32:56,849.849 INFO    ] 200
[2026-06-05 11:32:56,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:32:56,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:32:56,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:32:56,948.948 INFO    ] No camera update needed
[2026-06-05 11:32:56,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:32:56,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:32:56,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:32:56,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:32:59,005.005 INFO    ] ================================================
[2026-06-05 11:32:59,020.020 INFO    ] Launching Daemon at Fri Jun  5 11:32:59 IST 2026
[2026-06-05 11:32:59,031.031 INFO    ] ================================================
[2026-06-05 11:32:59,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:32:59
[2026-06-05 11:33:00,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:33:00,644.644 INFO    ] Initializing speech engine...
[2026-06-05 11:33:00,657.657 INFO    ] 2026-06-05 11:33:00
[2026-06-05 11:33:00,931.931 INFO    ] 2026-06-05 11:33:00
[2026-06-05 11:33:00,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:33:02,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:33:02,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:33:02,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:33:02,281.281 INFO    ] time= 05/06/2026 11:33:02
[2026-06-05 11:33:02,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:33:02,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:33:02,485.485 INFO    ] No existing commands found in stream
[2026-06-05 11:33:07,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:33:07,525.525 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 11:33:10,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:33:10,844.844 INFO    ] Checking for system updates...
[2026-06-05 11:33:10,884.884 INFO    ] 200
[2026-06-05 11:33:10,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:10,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:33:10,944.944 INFO    ] No update needed
[2026-06-05 11:33:10,947.947 INFO    ] Checking for camera pi updates...
[2026-06-05 11:33:10,982.982 INFO    ] 200
[2026-06-05 11:33:10,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:11,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:33:11,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:33:11,088.088 INFO    ] No camera update needed
[2026-06-05 11:33:11,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:33:11,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:33:11,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:33:11,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:33:13,143.143 INFO    ] ================================================
[2026-06-05 11:33:13,158.158 INFO    ] Launching Daemon at Fri Jun  5 11:33:13 IST 2026
[2026-06-05 11:33:13,170.170 INFO    ] ================================================
[2026-06-05 11:33:13,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:33:13
[2026-06-05 11:33:14,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:33:14,631.631 INFO    ] Initializing speech engine...
[2026-06-05 11:33:14,640.640 INFO    ] 2026-06-05 11:33:14
[2026-06-05 11:33:14,900.900 INFO    ] 2026-06-05 11:33:14
[2026-06-05 11:33:14,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:33:15,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:33:15,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:33:15,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:33:15,384.384 INFO    ] time= 05/06/2026 11:33:15
[2026-06-05 11:33:15,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:33:15,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:33:15,596.596 INFO    ] No existing commands found in stream
[2026-06-05 11:33:20,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:33:20,623.623 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 11:33:23,387.387 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:33:23,390.390 INFO    ] Checking for system updates...
[2026-06-05 11:33:23,426.426 INFO    ] 200
[2026-06-05 11:33:23,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:23,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:33:23,484.484 INFO    ] No update needed
[2026-06-05 11:33:23,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 11:33:23,521.521 INFO    ] 200
[2026-06-05 11:33:23,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:23,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:33:23,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:33:23,613.613 INFO    ] No camera update needed
[2026-06-05 11:33:23,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:33:23,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:33:23,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:33:23,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:33:25,668.668 INFO    ] ================================================
[2026-06-05 11:33:25,683.683 INFO    ] Launching Daemon at Fri Jun  5 11:33:25 IST 2026
[2026-06-05 11:33:25,694.694 INFO    ] ================================================
[2026-06-05 11:33:26,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:33:26
[2026-06-05 11:33:26,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:33:27,099.099 INFO    ] Initializing speech engine...
[2026-06-05 11:33:27,108.108 INFO    ] 2026-06-05 11:33:27
[2026-06-05 11:33:27,382.382 INFO    ] 2026-06-05 11:33:27
[2026-06-05 11:33:27,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:33:27,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:33:27,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:33:27,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:33:27,761.761 INFO    ] time= 05/06/2026 11:33:27
[2026-06-05 11:33:27,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:33:27,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:33:27,954.954 INFO    ] No existing commands found in stream
[2026-06-05 11:33:32,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:33:32,978.978 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 11:33:33,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:33:33,758.758 INFO    ] Checking for system updates...
[2026-06-05 11:33:33,794.794 INFO    ] 200
[2026-06-05 11:33:33,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:33,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:33:33,852.852 INFO    ] No update needed
[2026-06-05 11:33:33,854.854 INFO    ] Checking for camera pi updates...
[2026-06-05 11:33:33,888.888 INFO    ] 200
[2026-06-05 11:33:33,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:33,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:33:33,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:33:33,977.977 INFO    ] No camera update needed
[2026-06-05 11:33:33,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:33:33,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:33:33,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:33:33,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:33:36,036.036 INFO    ] ================================================
[2026-06-05 11:33:36,051.051 INFO    ] Launching Daemon at Fri Jun  5 11:33:36 IST 2026
[2026-06-05 11:33:36,064.064 INFO    ] ================================================
[2026-06-05 11:33:36,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:33:36
[2026-06-05 11:33:37,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:33:37,553.553 INFO    ] Initializing speech engine...
[2026-06-05 11:33:37,562.562 INFO    ] 2026-06-05 11:33:37
[2026-06-05 11:33:37,826.826 INFO    ] 2026-06-05 11:33:37
[2026-06-05 11:33:37,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:33:38,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:33:38,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:33:38,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:33:38,311.311 INFO    ] time= 05/06/2026 11:33:38
[2026-06-05 11:33:38,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:33:38,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:33:38,522.522 INFO    ] No existing commands found in stream
[2026-06-05 11:33:43,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:33:43,540.540 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 11:33:45,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:33:45,734.734 INFO    ] Checking for system updates...
[2026-06-05 11:33:45,776.776 INFO    ] 200
[2026-06-05 11:33:45,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:45,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:33:45,838.838 INFO    ] No update needed
[2026-06-05 11:33:45,841.841 INFO    ] Checking for camera pi updates...
[2026-06-05 11:33:45,878.878 INFO    ] 200
[2026-06-05 11:33:45,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:45,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:33:46,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:33:46,069.069 INFO    ] No camera update needed
[2026-06-05 11:33:46,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:33:46,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:33:46,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:33:46,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:33:48,127.127 INFO    ] ================================================
[2026-06-05 11:33:48,143.143 INFO    ] Launching Daemon at Fri Jun  5 11:33:48 IST 2026
[2026-06-05 11:33:48,154.154 INFO    ] ================================================
[2026-06-05 11:33:48,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:33:48
[2026-06-05 11:33:49,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:33:49,614.614 INFO    ] Initializing speech engine...
[2026-06-05 11:33:49,623.623 INFO    ] 2026-06-05 11:33:49
[2026-06-05 11:33:49,884.884 INFO    ] 2026-06-05 11:33:49
[2026-06-05 11:33:49,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:33:50,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:33:50,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:33:50,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:33:50,359.359 INFO    ] time= 05/06/2026 11:33:50
[2026-06-05 11:33:50,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:33:50,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:33:50,583.583 INFO    ] No existing commands found in stream
[2026-06-05 11:33:55,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:33:55,600.600 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 11:33:59,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:33:59,304.304 INFO    ] Checking for system updates...
[2026-06-05 11:33:59,340.340 INFO    ] 200
[2026-06-05 11:33:59,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:59,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:33:59,398.398 INFO    ] No update needed
[2026-06-05 11:33:59,400.400 INFO    ] Checking for camera pi updates...
[2026-06-05 11:33:59,435.435 INFO    ] 200
[2026-06-05 11:33:59,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:33:59,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:33:59,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:33:59,548.548 INFO    ] No camera update needed
[2026-06-05 11:33:59,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:33:59,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:33:59,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:33:59,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:34:01,616.616 INFO    ] ================================================
[2026-06-05 11:34:01,646.646 INFO    ] Launching Daemon at Fri Jun  5 11:34:01 IST 2026
[2026-06-05 11:34:01,660.660 INFO    ] ================================================
[2026-06-05 11:34:02,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:34:02
[2026-06-05 11:34:02,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:34:03,207.207 INFO    ] Initializing speech engine...
[2026-06-05 11:34:03,220.220 INFO    ] 2026-06-05 11:34:03
[2026-06-05 11:34:03,482.482 INFO    ] 2026-06-05 11:34:03
[2026-06-05 11:34:03,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:34:03,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:34:03,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:34:03,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:34:03,948.948 INFO    ] time= 05/06/2026 11:34:03
[2026-06-05 11:34:04,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:34:04,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:34:04,177.177 INFO    ] No existing commands found in stream
[2026-06-05 11:34:09,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:34:09,202.202 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 11:34:13,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:34:13,303.303 INFO    ] Checking for system updates...
[2026-06-05 11:34:13,339.339 INFO    ] 200
[2026-06-05 11:34:13,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:34:13,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:34:13,402.402 INFO    ] No update needed
[2026-06-05 11:34:13,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 11:34:13,438.438 INFO    ] 200
[2026-06-05 11:34:13,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:34:13,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:34:13,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:34:13,542.542 INFO    ] No camera update needed
[2026-06-05 11:34:13,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:34:13,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:34:13,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:34:13,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:34:15,600.600 INFO    ] ================================================
[2026-06-05 11:34:15,616.616 INFO    ] Launching Daemon at Fri Jun  5 11:34:15 IST 2026
[2026-06-05 11:34:15,628.628 INFO    ] ================================================
[2026-06-05 11:34:16,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:34:16
[2026-06-05 11:34:16,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:34:17,112.112 INFO    ] Initializing speech engine...
[2026-06-05 11:34:17,134.134 INFO    ] 2026-06-05 11:34:17
[2026-06-05 11:34:17,390.390 INFO    ] 2026-06-05 11:34:17
[2026-06-05 11:34:17,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:34:17,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:34:17,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:34:17,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:34:17,866.866 INFO    ] time= 05/06/2026 11:34:17
[2026-06-05 11:34:17,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:34:17,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:34:18,095.095 INFO    ] No existing commands found in stream
[2026-06-05 11:34:23,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:34:23,127.127 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 11:34:26,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:34:26,828.828 INFO    ] Checking for system updates...
[2026-06-05 11:34:26,864.864 INFO    ] 200
[2026-06-05 11:34:26,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:34:26,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:34:26,922.922 INFO    ] No update needed
[2026-06-05 11:34:26,929.929 INFO    ] Checking for camera pi updates...
[2026-06-05 11:34:26,963.963 INFO    ] 200
[2026-06-05 11:34:26,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:34:27,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:34:27,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:34:27,077.077 INFO    ] No camera update needed
[2026-06-05 11:34:27,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:34:27,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:34:27,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:34:27,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:34:29,133.133 INFO    ] ================================================
[2026-06-05 11:34:29,149.149 INFO    ] Launching Daemon at Fri Jun  5 11:34:29 IST 2026
[2026-06-05 11:34:29,160.160 INFO    ] ================================================
[2026-06-05 11:34:29,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:34:29
[2026-06-05 11:34:30,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:34:30,766.766 INFO    ] Initializing speech engine...
[2026-06-05 11:34:30,778.778 INFO    ] 2026-06-05 11:34:30
[2026-06-05 11:34:31,055.055 INFO    ] 2026-06-05 11:34:31
[2026-06-05 11:34:31,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:34:31,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:34:31,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:34:32,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:34:32,012.012 INFO    ] time= 05/06/2026 11:34:32
[2026-06-05 11:34:32,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:34:32,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:34:32,194.194 INFO    ] No existing commands found in stream
[2026-06-05 11:34:37,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:34:37,222.222 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 11:34:39,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:34:39,162.162 INFO    ] Checking for system updates...
[2026-06-05 11:34:39,202.202 INFO    ] 200
[2026-06-05 11:34:39,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:34:39,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:34:39,261.261 INFO    ] No update needed
[2026-06-05 11:34:39,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 11:34:39,297.297 INFO    ] 200
[2026-06-05 11:34:39,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:34:39,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:34:39,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:34:39,406.406 INFO    ] No camera update needed
[2026-06-05 11:34:39,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:34:39,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:34:39,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:34:39,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:34:41,462.462 INFO    ] ================================================
[2026-06-05 11:34:41,478.478 INFO    ] Launching Daemon at Fri Jun  5 11:34:41 IST 2026
[2026-06-05 11:34:41,489.489 INFO    ] ================================================
[2026-06-05 11:34:42,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:34:42
[2026-06-05 11:34:42,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:34:42,922.922 INFO    ] Initializing speech engine...
[2026-06-05 11:34:42,935.935 INFO    ] 2026-06-05 11:34:42
[2026-06-05 11:34:43,223.223 INFO    ] 2026-06-05 11:34:43
[2026-06-05 11:34:43,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:34:43,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:34:43,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:34:43,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:34:43,642.642 INFO    ] time= 05/06/2026 11:34:43
[2026-06-05 11:34:43,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:34:43,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:34:43,814.814 INFO    ] No existing commands found in stream
[2026-06-05 11:34:48,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:34:48,842.842 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 11:34:50,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:34:50,340.340 INFO    ] Checking for system updates...
[2026-06-05 11:34:50,380.380 INFO    ] 200
[2026-06-05 11:34:50,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:34:50,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:34:50,438.438 INFO    ] No update needed
[2026-06-05 11:34:50,441.441 INFO    ] Checking for camera pi updates...
[2026-06-05 11:34:50,478.478 INFO    ] 200
[2026-06-05 11:34:50,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:34:50,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:34:50,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:34:50,573.573 INFO    ] No camera update needed
[2026-06-05 11:34:50,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:34:50,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:34:50,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:34:50,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:34:52,629.629 INFO    ] ================================================
[2026-06-05 11:34:52,645.645 INFO    ] Launching Daemon at Fri Jun  5 11:34:52 IST 2026
[2026-06-05 11:34:52,657.657 INFO    ] ================================================
[2026-06-05 11:34:53,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:34:53
[2026-06-05 11:34:53,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:34:54,172.172 INFO    ] Initializing speech engine...
[2026-06-05 11:34:54,182.182 INFO    ] 2026-06-05 11:34:54
[2026-06-05 11:34:54,442.442 INFO    ] 2026-06-05 11:34:54
[2026-06-05 11:34:54,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:34:54,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:34:54,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:34:54,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:34:54,926.926 INFO    ] time= 05/06/2026 11:34:54
[2026-06-05 11:34:54,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:34:54,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:34:55,129.129 INFO    ] No existing commands found in stream
[2026-06-05 11:35:00,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:35:00,152.152 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 11:35:02,145.145 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:35:02,148.148 INFO    ] Checking for system updates...
[2026-06-05 11:35:02,191.191 INFO    ] 200
[2026-06-05 11:35:02,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:02,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:35:02,259.259 INFO    ] No update needed
[2026-06-05 11:35:02,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 11:35:02,311.311 INFO    ] 200
[2026-06-05 11:35:02,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:02,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:35:02,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:35:02,461.461 INFO    ] No camera update needed
[2026-06-05 11:35:02,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:35:02,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:35:02,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:35:02,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:35:04,526.526 INFO    ] ================================================
[2026-06-05 11:35:04,542.542 INFO    ] Launching Daemon at Fri Jun  5 11:35:04 IST 2026
[2026-06-05 11:35:04,554.554 INFO    ] ================================================
[2026-06-05 11:35:05,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:35:05
[2026-06-05 11:35:05,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:35:06,037.037 INFO    ] Initializing speech engine...
[2026-06-05 11:35:06,056.056 INFO    ] 2026-06-05 11:35:06
[2026-06-05 11:35:06,316.316 INFO    ] 2026-06-05 11:35:06
[2026-06-05 11:35:06,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:35:06,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:35:06,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:35:06,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:35:06,781.781 INFO    ] time= 05/06/2026 11:35:06
[2026-06-05 11:35:06,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:35:06,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:35:07,004.004 INFO    ] No existing commands found in stream
[2026-06-05 11:35:12,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:35:12,034.034 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 11:35:13,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:35:13,169.169 INFO    ] Checking for system updates...
[2026-06-05 11:35:13,209.209 INFO    ] 200
[2026-06-05 11:35:13,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:13,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:35:13,278.278 INFO    ] No update needed
[2026-06-05 11:35:13,281.281 INFO    ] Checking for camera pi updates...
[2026-06-05 11:35:13,319.319 INFO    ] 200
[2026-06-05 11:35:13,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:13,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:35:13,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:35:13,421.421 INFO    ] No camera update needed
[2026-06-05 11:35:13,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:35:13,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:35:13,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:35:13,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:35:15,480.480 INFO    ] ================================================
[2026-06-05 11:35:15,496.496 INFO    ] Launching Daemon at Fri Jun  5 11:35:15 IST 2026
[2026-06-05 11:35:15,507.507 INFO    ] ================================================
[2026-06-05 11:35:16,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:35:16
[2026-06-05 11:35:16,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:35:17,047.047 INFO    ] Initializing speech engine...
[2026-06-05 11:35:17,057.057 INFO    ] 2026-06-05 11:35:17
[2026-06-05 11:35:17,306.306 INFO    ] 2026-06-05 11:35:17
[2026-06-05 11:35:17,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:35:17,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:35:17,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:35:17,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:35:17,682.682 INFO    ] time= 05/06/2026 11:35:17
[2026-06-05 11:35:17,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:35:17,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:35:17,883.883 INFO    ] No existing commands found in stream
[2026-06-05 11:35:22,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:35:22,896.896 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 11:35:23,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:35:23,605.605 INFO    ] Checking for system updates...
[2026-06-05 11:35:23,641.641 INFO    ] 200
[2026-06-05 11:35:23,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:23,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:35:23,704.704 INFO    ] No update needed
[2026-06-05 11:35:23,707.707 INFO    ] Checking for camera pi updates...
[2026-06-05 11:35:23,740.740 INFO    ] 200
[2026-06-05 11:35:23,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:23,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:35:23,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:35:23,835.835 INFO    ] No camera update needed
[2026-06-05 11:35:23,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:35:23,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:35:23,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:35:23,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:35:25,892.892 INFO    ] ================================================
[2026-06-05 11:35:25,908.908 INFO    ] Launching Daemon at Fri Jun  5 11:35:25 IST 2026
[2026-06-05 11:35:25,919.919 INFO    ] ================================================
[2026-06-05 11:35:26,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:35:26
[2026-06-05 11:35:27,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:35:27,382.382 INFO    ] Initializing speech engine...
[2026-06-05 11:35:27,390.390 INFO    ] 2026-06-05 11:35:27
[2026-06-05 11:35:27,658.658 INFO    ] 2026-06-05 11:35:27
[2026-06-05 11:35:27,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:35:27,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:35:27,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:35:28,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:35:28,135.135 INFO    ] time= 05/06/2026 11:35:28
[2026-06-05 11:35:28,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:35:28,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:35:28,378.378 INFO    ] No existing commands found in stream
[2026-06-05 11:35:33,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:35:33,398.398 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 11:35:37,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:35:37,605.605 INFO    ] Checking for system updates...
[2026-06-05 11:35:37,642.642 INFO    ] 200
[2026-06-05 11:35:37,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:37,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:35:37,713.713 INFO    ] No update needed
[2026-06-05 11:35:37,716.716 INFO    ] Checking for camera pi updates...
[2026-06-05 11:35:37,751.751 INFO    ] 200
[2026-06-05 11:35:37,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:37,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:35:37,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:35:37,849.849 INFO    ] No camera update needed
[2026-06-05 11:35:37,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:35:37,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:35:37,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:35:37,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:35:39,905.905 INFO    ] ================================================
[2026-06-05 11:35:39,920.920 INFO    ] Launching Daemon at Fri Jun  5 11:35:39 IST 2026
[2026-06-05 11:35:39,932.932 INFO    ] ================================================
[2026-06-05 11:35:40,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:35:40
[2026-06-05 11:35:41,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:35:41,408.408 INFO    ] Initializing speech engine...
[2026-06-05 11:35:41,417.417 INFO    ] 2026-06-05 11:35:41
[2026-06-05 11:35:41,684.684 INFO    ] 2026-06-05 11:35:41
[2026-06-05 11:35:41,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:35:41,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:35:41,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:35:42,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:35:42,156.156 INFO    ] time= 05/06/2026 11:35:42
[2026-06-05 11:35:42,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:35:42,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:35:42,419.419 INFO    ] No existing commands found in stream
[2026-06-05 11:35:47,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:35:47,438.438 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 11:35:50,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:35:50,152.152 INFO    ] Checking for system updates...
[2026-06-05 11:35:50,188.188 INFO    ] 200
[2026-06-05 11:35:50,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:50,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:35:50,250.250 INFO    ] No update needed
[2026-06-05 11:35:50,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 11:35:50,286.286 INFO    ] 200
[2026-06-05 11:35:50,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:35:50,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:35:50,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:35:50,482.482 INFO    ] No camera update needed
[2026-06-05 11:35:50,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:35:50,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:35:50,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:35:50,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:35:52,538.538 INFO    ] ================================================
[2026-06-05 11:35:52,553.553 INFO    ] Launching Daemon at Fri Jun  5 11:35:52 IST 2026
[2026-06-05 11:35:52,564.564 INFO    ] ================================================
[2026-06-05 11:35:53,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:35:53
[2026-06-05 11:35:53,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:35:54,069.069 INFO    ] Initializing speech engine...
[2026-06-05 11:35:54,076.076 INFO    ] 2026-06-05 11:35:54
[2026-06-05 11:35:54,336.336 INFO    ] 2026-06-05 11:35:54
[2026-06-05 11:35:54,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:35:54,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:35:54,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:35:54,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:35:54,878.878 INFO    ] time= 05/06/2026 11:35:54
[2026-06-05 11:35:54,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:35:54,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:35:55,023.023 INFO    ] No existing commands found in stream
[2026-06-05 11:36:00,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:36:00,047.047 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 11:36:01,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:36:01,968.968 INFO    ] Checking for system updates...
[2026-06-05 11:36:02,021.021 INFO    ] 200
[2026-06-05 11:36:02,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:02,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:36:02,095.095 INFO    ] No update needed
[2026-06-05 11:36:02,098.098 INFO    ] Checking for camera pi updates...
[2026-06-05 11:36:02,157.157 INFO    ] 200
[2026-06-05 11:36:02,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:02,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:36:02,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:36:02,334.334 INFO    ] No camera update needed
[2026-06-05 11:36:02,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:36:02,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:36:02,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:36:02,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:36:04,398.398 INFO    ] ================================================
[2026-06-05 11:36:04,416.416 INFO    ] Launching Daemon at Fri Jun  5 11:36:04 IST 2026
[2026-06-05 11:36:04,429.429 INFO    ] ================================================
[2026-06-05 11:36:05,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:36:05
[2026-06-05 11:36:05,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:36:05,874.874 INFO    ] Initializing speech engine...
[2026-06-05 11:36:05,884.884 INFO    ] 2026-06-05 11:36:05
[2026-06-05 11:36:06,143.143 INFO    ] 2026-06-05 11:36:06
[2026-06-05 11:36:06,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:36:06,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:36:06,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:36:06,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:36:06,601.601 INFO    ] time= 05/06/2026 11:36:06
[2026-06-05 11:36:06,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:36:06,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:36:06,806.806 INFO    ] No existing commands found in stream
[2026-06-05 11:36:11,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:36:11,836.836 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 11:36:15,063.063 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:36:15,065.065 INFO    ] Checking for system updates...
[2026-06-05 11:36:15,101.101 INFO    ] 200
[2026-06-05 11:36:15,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:15,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:36:15,163.163 INFO    ] No update needed
[2026-06-05 11:36:15,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 11:36:15,199.199 INFO    ] 200
[2026-06-05 11:36:15,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:15,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:36:15,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:36:15,293.293 INFO    ] No camera update needed
[2026-06-05 11:36:15,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:36:15,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:36:15,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:36:15,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:36:17,349.349 INFO    ] ================================================
[2026-06-05 11:36:17,364.364 INFO    ] Launching Daemon at Fri Jun  5 11:36:17 IST 2026
[2026-06-05 11:36:17,377.377 INFO    ] ================================================
[2026-06-05 11:36:17,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:36:17
[2026-06-05 11:36:18,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:36:18,799.799 INFO    ] Initializing speech engine...
[2026-06-05 11:36:18,809.809 INFO    ] 2026-06-05 11:36:18
[2026-06-05 11:36:19,055.055 INFO    ] 2026-06-05 11:36:19
[2026-06-05 11:36:19,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:36:19,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:36:19,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:36:19,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:36:19,550.550 INFO    ] time= 05/06/2026 11:36:19
[2026-06-05 11:36:19,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:36:19,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:36:19,765.765 INFO    ] No existing commands found in stream
[2026-06-05 11:36:24,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:36:24,779.779 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 11:36:27,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:36:27,505.505 INFO    ] Checking for system updates...
[2026-06-05 11:36:27,543.543 INFO    ] 200
[2026-06-05 11:36:27,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:27,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:36:27,602.602 INFO    ] No update needed
[2026-06-05 11:36:27,604.604 INFO    ] Checking for camera pi updates...
[2026-06-05 11:36:27,637.637 INFO    ] 200
[2026-06-05 11:36:27,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:27,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:36:27,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:36:27,728.728 INFO    ] No camera update needed
[2026-06-05 11:36:27,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:36:27,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:36:27,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:36:27,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:36:29,784.784 INFO    ] ================================================
[2026-06-05 11:36:29,799.799 INFO    ] Launching Daemon at Fri Jun  5 11:36:29 IST 2026
[2026-06-05 11:36:29,811.811 INFO    ] ================================================
[2026-06-05 11:36:30,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:36:30
[2026-06-05 11:36:30,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:36:31,222.222 INFO    ] Initializing speech engine...
[2026-06-05 11:36:31,237.237 INFO    ] 2026-06-05 11:36:31
[2026-06-05 11:36:31,524.524 INFO    ] 2026-06-05 11:36:31
[2026-06-05 11:36:31,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:36:31,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:36:31,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:36:31,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:36:31,935.935 INFO    ] time= 05/06/2026 11:36:31
[2026-06-05 11:36:32,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:36:32,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:36:32,158.158 INFO    ] No existing commands found in stream
[2026-06-05 11:36:37,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:36:37,172.172 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 11:36:38,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:36:38,790.790 INFO    ] Checking for system updates...
[2026-06-05 11:36:38,829.829 INFO    ] 200
[2026-06-05 11:36:38,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:38,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:36:38,888.888 INFO    ] No update needed
[2026-06-05 11:36:38,891.891 INFO    ] Checking for camera pi updates...
[2026-06-05 11:36:38,927.927 INFO    ] 200
[2026-06-05 11:36:38,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:38,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:36:39,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:36:39,021.021 INFO    ] No camera update needed
[2026-06-05 11:36:39,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:36:39,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:36:39,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:36:39,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:36:41,078.078 INFO    ] ================================================
[2026-06-05 11:36:41,093.093 INFO    ] Launching Daemon at Fri Jun  5 11:36:41 IST 2026
[2026-06-05 11:36:41,105.105 INFO    ] ================================================
[2026-06-05 11:36:41,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:36:41
[2026-06-05 11:36:42,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:36:42,534.534 INFO    ] Initializing speech engine...
[2026-06-05 11:36:42,557.557 INFO    ] 2026-06-05 11:36:42
[2026-06-05 11:36:42,813.813 INFO    ] 2026-06-05 11:36:42
[2026-06-05 11:36:42,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:36:43,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:36:43,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:36:43,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:36:43,286.286 INFO    ] time= 05/06/2026 11:36:43
[2026-06-05 11:36:43,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:36:43,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:36:43,529.529 INFO    ] No existing commands found in stream
[2026-06-05 11:36:48,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:36:48,550.550 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 11:36:49,448.448 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:36:49,450.450 INFO    ] Checking for system updates...
[2026-06-05 11:36:49,489.489 INFO    ] 200
[2026-06-05 11:36:49,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:49,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:36:49,547.547 INFO    ] No update needed
[2026-06-05 11:36:49,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 11:36:49,585.585 INFO    ] 200
[2026-06-05 11:36:49,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:36:49,628.628 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:36:49,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:36:49,677.677 INFO    ] No camera update needed
[2026-06-05 11:36:49,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:36:49,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:36:49,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:36:49,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:36:51,733.733 INFO    ] ================================================
[2026-06-05 11:36:51,748.748 INFO    ] Launching Daemon at Fri Jun  5 11:36:51 IST 2026
[2026-06-05 11:36:51,759.759 INFO    ] ================================================
[2026-06-05 11:36:52,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:36:52
[2026-06-05 11:36:52,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:36:53,222.222 INFO    ] Initializing speech engine...
[2026-06-05 11:36:53,242.242 INFO    ] 2026-06-05 11:36:53
[2026-06-05 11:36:53,505.505 INFO    ] 2026-06-05 11:36:53
[2026-06-05 11:36:53,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:36:53,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:36:53,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:36:53,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:36:53,907.907 INFO    ] time= 05/06/2026 11:36:53
[2026-06-05 11:36:53,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:36:53,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:36:53,996.996 INFO    ] No existing commands found in stream
[2026-06-05 11:36:59,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:36:59,034.034 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 11:37:01,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:37:01,871.871 INFO    ] Checking for system updates...
[2026-06-05 11:37:01,963.963 INFO    ] 200
[2026-06-05 11:37:01,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:02,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:37:02,067.067 INFO    ] No update needed
[2026-06-05 11:37:02,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 11:37:02,126.126 INFO    ] 200
[2026-06-05 11:37:02,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:02,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:37:02,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:37:02,322.322 INFO    ] No camera update needed
[2026-06-05 11:37:02,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:37:02,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:37:02,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:37:02,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:37:04,381.381 INFO    ] ================================================
[2026-06-05 11:37:04,397.397 INFO    ] Launching Daemon at Fri Jun  5 11:37:04 IST 2026
[2026-06-05 11:37:04,409.409 INFO    ] ================================================
[2026-06-05 11:37:05,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:37:05
[2026-06-05 11:37:05,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:37:06,008.008 INFO    ] Initializing speech engine...
[2026-06-05 11:37:06,014.014 INFO    ] 2026-06-05 11:37:06
[2026-06-05 11:37:06,298.298 INFO    ] 2026-06-05 11:37:06
[2026-06-05 11:37:06,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:37:06,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:37:06,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:37:06,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:37:06,760.760 INFO    ] time= 05/06/2026 11:37:06
[2026-06-05 11:37:06,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:37:06,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:37:07,006.006 INFO    ] No existing commands found in stream
[2026-06-05 11:37:12,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:37:12,036.036 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 11:37:12,744.744 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:37:12,746.746 INFO    ] Checking for system updates...
[2026-06-05 11:37:12,782.782 INFO    ] 200
[2026-06-05 11:37:12,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:12,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:37:12,845.845 INFO    ] No update needed
[2026-06-05 11:37:12,848.848 INFO    ] Checking for camera pi updates...
[2026-06-05 11:37:12,884.884 INFO    ] 200
[2026-06-05 11:37:12,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:12,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:37:12,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:37:12,976.976 INFO    ] No camera update needed
[2026-06-05 11:37:12,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:37:12,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:37:12,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:37:12,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:37:15,031.031 INFO    ] ================================================
[2026-06-05 11:37:15,046.046 INFO    ] Launching Daemon at Fri Jun  5 11:37:15 IST 2026
[2026-06-05 11:37:15,058.058 INFO    ] ================================================
[2026-06-05 11:37:15,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:37:15
[2026-06-05 11:37:16,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:37:16,466.466 INFO    ] Initializing speech engine...
[2026-06-05 11:37:16,472.472 INFO    ] 2026-06-05 11:37:16
[2026-06-05 11:37:16,765.765 INFO    ] 2026-06-05 11:37:16
[2026-06-05 11:37:16,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:37:16,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:37:17,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:37:17,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:37:17,151.151 INFO    ] time= 05/06/2026 11:37:17
[2026-06-05 11:37:17,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:37:17,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:37:17,300.300 INFO    ] No existing commands found in stream
[2026-06-05 11:37:22,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:37:22,339.339 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 11:37:24,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:37:24,820.820 INFO    ] Checking for system updates...
[2026-06-05 11:37:24,856.856 INFO    ] 200
[2026-06-05 11:37:24,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:24,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:37:24,922.922 INFO    ] No update needed
[2026-06-05 11:37:24,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 11:37:24,958.958 INFO    ] 200
[2026-06-05 11:37:24,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:25,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:37:25,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:37:25,060.060 INFO    ] No camera update needed
[2026-06-05 11:37:25,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:37:25,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:37:25,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:37:25,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:37:27,116.116 INFO    ] ================================================
[2026-06-05 11:37:27,132.132 INFO    ] Launching Daemon at Fri Jun  5 11:37:27 IST 2026
[2026-06-05 11:37:27,143.143 INFO    ] ================================================
[2026-06-05 11:37:27,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:37:27
[2026-06-05 11:37:28,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:37:28,559.559 INFO    ] Initializing speech engine...
[2026-06-05 11:37:28,568.568 INFO    ] 2026-06-05 11:37:28
[2026-06-05 11:37:28,857.857 INFO    ] 2026-06-05 11:37:28
[2026-06-05 11:37:28,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:37:29,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:37:29,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:37:29,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:37:29,359.359 INFO    ] time= 05/06/2026 11:37:29
[2026-06-05 11:37:29,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:37:29,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:37:29,542.542 INFO    ] No existing commands found in stream
[2026-06-05 11:37:34,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:37:34,557.557 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 11:37:36,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:37:36,520.520 INFO    ] Checking for system updates...
[2026-06-05 11:37:36,556.556 INFO    ] 200
[2026-06-05 11:37:36,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:36,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:37:36,613.613 INFO    ] No update needed
[2026-06-05 11:37:36,616.616 INFO    ] Checking for camera pi updates...
[2026-06-05 11:37:36,653.653 INFO    ] 200
[2026-06-05 11:37:36,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:36,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:37:36,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:37:36,754.754 INFO    ] No camera update needed
[2026-06-05 11:37:36,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:37:36,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:37:36,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:37:36,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:37:38,810.810 INFO    ] ================================================
[2026-06-05 11:37:38,826.826 INFO    ] Launching Daemon at Fri Jun  5 11:37:38 IST 2026
[2026-06-05 11:37:38,837.837 INFO    ] ================================================
[2026-06-05 11:37:39,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:37:39
[2026-06-05 11:37:39,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:37:40,259.259 INFO    ] Initializing speech engine...
[2026-06-05 11:37:40,265.265 INFO    ] 2026-06-05 11:37:40
[2026-06-05 11:37:40,509.509 INFO    ] 2026-06-05 11:37:40
[2026-06-05 11:37:40,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:37:40,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:37:40,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:37:40,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:37:40,977.977 INFO    ] time= 05/06/2026 11:37:40
[2026-06-05 11:37:41,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:37:41,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:37:41,215.215 INFO    ] No existing commands found in stream
[2026-06-05 11:37:46,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:37:46,233.233 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 11:37:49,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:37:49,027.027 INFO    ] Checking for system updates...
[2026-06-05 11:37:49,066.066 INFO    ] 200
[2026-06-05 11:37:49,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:49,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:37:49,125.125 INFO    ] No update needed
[2026-06-05 11:37:49,128.128 INFO    ] Checking for camera pi updates...
[2026-06-05 11:37:49,164.164 INFO    ] 200
[2026-06-05 11:37:49,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:37:49,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:37:49,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:37:49,269.269 INFO    ] No camera update needed
[2026-06-05 11:37:49,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:37:49,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:37:49,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:37:49,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:37:51,327.327 INFO    ] ================================================
[2026-06-05 11:37:51,342.342 INFO    ] Launching Daemon at Fri Jun  5 11:37:51 IST 2026
[2026-06-05 11:37:51,353.353 INFO    ] ================================================
[2026-06-05 11:37:51,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:37:51
[2026-06-05 11:37:52,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:37:52,774.774 INFO    ] Initializing speech engine...
[2026-06-05 11:37:52,780.780 INFO    ] 2026-06-05 11:37:52
[2026-06-05 11:37:53,026.026 INFO    ] 2026-06-05 11:37:53
[2026-06-05 11:37:53,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:37:53,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:37:53,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:37:53,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:37:53,525.525 INFO    ] time= 05/06/2026 11:37:53
[2026-06-05 11:37:53,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:37:53,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:37:53,730.730 INFO    ] No existing commands found in stream
[2026-06-05 11:37:58,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:37:58,748.748 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 11:38:02,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:38:02,941.941 INFO    ] Checking for system updates...
[2026-06-05 11:38:02,991.991 INFO    ] 200
[2026-06-05 11:38:02,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:03,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:38:03,071.071 INFO    ] No update needed
[2026-06-05 11:38:03,074.074 INFO    ] Checking for camera pi updates...
[2026-06-05 11:38:03,124.124 INFO    ] 200
[2026-06-05 11:38:03,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:03,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:38:03,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:38:03,215.215 INFO    ] No camera update needed
[2026-06-05 11:38:03,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:38:03,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:38:03,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:38:03,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:38:05,273.273 INFO    ] ================================================
[2026-06-05 11:38:05,288.288 INFO    ] Launching Daemon at Fri Jun  5 11:38:05 IST 2026
[2026-06-05 11:38:05,299.299 INFO    ] ================================================
[2026-06-05 11:38:05,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:38:05
[2026-06-05 11:38:06,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:38:06,772.772 INFO    ] Initializing speech engine...
[2026-06-05 11:38:06,781.781 INFO    ] 2026-06-05 11:38:06
[2026-06-05 11:38:07,068.068 INFO    ] 2026-06-05 11:38:07
[2026-06-05 11:38:07,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:38:07,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:38:07,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:38:07,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:38:07,601.601 INFO    ] time= 05/06/2026 11:38:07
[2026-06-05 11:38:07,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:38:07,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:38:07,753.753 INFO    ] No existing commands found in stream
[2026-06-05 11:38:12,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:38:12,771.771 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 11:38:15,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:38:15,528.528 INFO    ] Checking for system updates...
[2026-06-05 11:38:15,563.563 INFO    ] 200
[2026-06-05 11:38:15,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:15,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:38:15,621.621 INFO    ] No update needed
[2026-06-05 11:38:15,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 11:38:15,661.661 INFO    ] 200
[2026-06-05 11:38:15,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:15,710.710 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:38:15,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:38:15,757.757 INFO    ] No camera update needed
[2026-06-05 11:38:15,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:38:15,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:38:15,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:38:15,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:38:17,813.813 INFO    ] ================================================
[2026-06-05 11:38:17,829.829 INFO    ] Launching Daemon at Fri Jun  5 11:38:17 IST 2026
[2026-06-05 11:38:17,840.840 INFO    ] ================================================
[2026-06-05 11:38:18,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:38:18
[2026-06-05 11:38:19,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:38:19,277.277 INFO    ] Initializing speech engine...
[2026-06-05 11:38:19,286.286 INFO    ] 2026-06-05 11:38:19
[2026-06-05 11:38:19,532.532 INFO    ] 2026-06-05 11:38:19
[2026-06-05 11:38:19,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:38:19,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:38:19,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:38:19,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:38:20,015.015 INFO    ] time= 05/06/2026 11:38:19
[2026-06-05 11:38:20,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:38:20,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:38:20,229.229 INFO    ] No existing commands found in stream
[2026-06-05 11:38:25,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:38:25,257.257 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 11:38:29,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:38:29,197.197 INFO    ] Checking for system updates...
[2026-06-05 11:38:29,238.238 INFO    ] 200
[2026-06-05 11:38:29,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:29,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:38:29,295.295 INFO    ] No update needed
[2026-06-05 11:38:29,298.298 INFO    ] Checking for camera pi updates...
[2026-06-05 11:38:29,336.336 INFO    ] 200
[2026-06-05 11:38:29,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:29,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:38:29,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:38:29,426.426 INFO    ] No camera update needed
[2026-06-05 11:38:29,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:38:29,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:38:29,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:38:29,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:38:31,483.483 INFO    ] ================================================
[2026-06-05 11:38:31,499.499 INFO    ] Launching Daemon at Fri Jun  5 11:38:31 IST 2026
[2026-06-05 11:38:31,511.511 INFO    ] ================================================
[2026-06-05 11:38:32,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:38:32
[2026-06-05 11:38:32,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:38:33,146.146 INFO    ] Initializing speech engine...
[2026-06-05 11:38:33,159.159 INFO    ] 2026-06-05 11:38:33
[2026-06-05 11:38:33,449.449 INFO    ] 2026-06-05 11:38:33
[2026-06-05 11:38:33,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:38:33,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:38:33,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:38:33,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:38:33,983.983 INFO    ] time= 05/06/2026 11:38:33
[2026-06-05 11:38:33,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:38:34,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:38:34,121.121 INFO    ] No existing commands found in stream
[2026-06-05 11:38:39,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:38:39,149.149 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 11:38:42,890.890 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:38:42,893.893 INFO    ] Checking for system updates...
[2026-06-05 11:38:42,929.929 INFO    ] 200
[2026-06-05 11:38:42,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:42,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:38:42,994.994 INFO    ] No update needed
[2026-06-05 11:38:42,997.997 INFO    ] Checking for camera pi updates...
[2026-06-05 11:38:43,030.030 INFO    ] 200
[2026-06-05 11:38:43,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:43,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:38:43,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:38:43,128.128 INFO    ] No camera update needed
[2026-06-05 11:38:43,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:38:43,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:38:43,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:38:43,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:38:45,183.183 INFO    ] ================================================
[2026-06-05 11:38:45,198.198 INFO    ] Launching Daemon at Fri Jun  5 11:38:45 IST 2026
[2026-06-05 11:38:45,209.209 INFO    ] ================================================
[2026-06-05 11:38:45,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:38:45
[2026-06-05 11:38:46,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:38:46,672.672 INFO    ] Initializing speech engine...
[2026-06-05 11:38:46,681.681 INFO    ] 2026-06-05 11:38:46
[2026-06-05 11:38:46,941.941 INFO    ] 2026-06-05 11:38:46
[2026-06-05 11:38:46,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:38:47,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:38:47,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:38:47,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:38:47,413.413 INFO    ] time= 05/06/2026 11:38:47
[2026-06-05 11:38:47,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:38:47,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:38:47,630.630 INFO    ] No existing commands found in stream
[2026-06-05 11:38:52,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:38:52,658.658 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 11:38:53,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:38:53,361.361 INFO    ] Checking for system updates...
[2026-06-05 11:38:53,398.398 INFO    ] 200
[2026-06-05 11:38:53,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:53,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:38:53,463.463 INFO    ] No update needed
[2026-06-05 11:38:53,466.466 INFO    ] Checking for camera pi updates...
[2026-06-05 11:38:53,501.501 INFO    ] 200
[2026-06-05 11:38:53,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:38:53,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:38:53,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:38:53,598.598 INFO    ] No camera update needed
[2026-06-05 11:38:53,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:38:53,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:38:53,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:38:53,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:38:55,656.656 INFO    ] ================================================
[2026-06-05 11:38:55,671.671 INFO    ] Launching Daemon at Fri Jun  5 11:38:55 IST 2026
[2026-06-05 11:38:55,683.683 INFO    ] ================================================
[2026-06-05 11:38:56,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:38:56
[2026-06-05 11:38:56,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:38:57,127.127 INFO    ] Initializing speech engine...
[2026-06-05 11:38:57,148.148 INFO    ] 2026-06-05 11:38:57
[2026-06-05 11:38:57,426.426 INFO    ] 2026-06-05 11:38:57
[2026-06-05 11:38:57,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:38:57,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:38:57,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:38:57,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:38:57,929.929 INFO    ] time= 05/06/2026 11:38:57
[2026-06-05 11:38:57,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:38:58,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:38:58,127.127 INFO    ] No existing commands found in stream
[2026-06-05 11:39:03,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:39:03,140.140 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 11:39:04,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:39:04,269.269 INFO    ] Checking for system updates...
[2026-06-05 11:39:04,312.312 INFO    ] 200
[2026-06-05 11:39:04,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:04,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:39:04,394.394 INFO    ] No update needed
[2026-06-05 11:39:04,398.398 INFO    ] Checking for camera pi updates...
[2026-06-05 11:39:04,442.442 INFO    ] 200
[2026-06-05 11:39:04,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:04,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:39:04,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:39:04,550.550 INFO    ] No camera update needed
[2026-06-05 11:39:04,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:39:04,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:39:04,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:39:04,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:39:06,611.611 INFO    ] ================================================
[2026-06-05 11:39:06,628.628 INFO    ] Launching Daemon at Fri Jun  5 11:39:06 IST 2026
[2026-06-05 11:39:06,641.641 INFO    ] ================================================
[2026-06-05 11:39:07,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:39:07
[2026-06-05 11:39:07,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:39:08,145.145 INFO    ] Initializing speech engine...
[2026-06-05 11:39:08,163.163 INFO    ] 2026-06-05 11:39:08
[2026-06-05 11:39:08,452.452 INFO    ] 2026-06-05 11:39:08
[2026-06-05 11:39:08,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:39:08,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:39:08,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:39:08,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:39:08,833.833 INFO    ] time= 05/06/2026 11:39:08
[2026-06-05 11:39:08,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:39:08,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:39:08,979.979 INFO    ] No existing commands found in stream
[2026-06-05 11:39:14,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:39:14,007.007 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 11:39:17,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:39:17,762.762 INFO    ] Checking for system updates...
[2026-06-05 11:39:17,798.798 INFO    ] 200
[2026-06-05 11:39:17,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:17,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:39:17,857.857 INFO    ] No update needed
[2026-06-05 11:39:17,860.860 INFO    ] Checking for camera pi updates...
[2026-06-05 11:39:17,893.893 INFO    ] 200
[2026-06-05 11:39:17,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:17,938.938 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:39:17,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:39:17,993.993 INFO    ] No camera update needed
[2026-06-05 11:39:17,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:39:17,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:39:18,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:39:18,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:39:20,053.053 INFO    ] ================================================
[2026-06-05 11:39:20,068.068 INFO    ] Launching Daemon at Fri Jun  5 11:39:20 IST 2026
[2026-06-05 11:39:20,079.079 INFO    ] ================================================
[2026-06-05 11:39:20,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:39:20
[2026-06-05 11:39:21,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:39:21,540.540 INFO    ] Initializing speech engine...
[2026-06-05 11:39:21,545.545 INFO    ] 2026-06-05 11:39:21
[2026-06-05 11:39:21,803.803 INFO    ] 2026-06-05 11:39:21
[2026-06-05 11:39:21,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:39:22,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:39:22,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:39:22,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:39:22,340.340 INFO    ] time= 05/06/2026 11:39:22
[2026-06-05 11:39:22,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:39:22,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:39:22,477.477 INFO    ] No existing commands found in stream
[2026-06-05 11:39:27,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:39:27,511.511 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 11:39:28,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:39:28,838.838 INFO    ] Checking for system updates...
[2026-06-05 11:39:28,874.874 INFO    ] 200
[2026-06-05 11:39:28,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:28,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:39:28,941.941 INFO    ] No update needed
[2026-06-05 11:39:28,943.943 INFO    ] Checking for camera pi updates...
[2026-06-05 11:39:28,977.977 INFO    ] 200
[2026-06-05 11:39:28,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:29,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:39:29,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:39:29,058.058 INFO    ] No camera update needed
[2026-06-05 11:39:29,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:39:29,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:39:29,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:39:29,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:39:31,118.118 INFO    ] ================================================
[2026-06-05 11:39:31,133.133 INFO    ] Launching Daemon at Fri Jun  5 11:39:31 IST 2026
[2026-06-05 11:39:31,144.144 INFO    ] ================================================
[2026-06-05 11:39:31,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:39:31
[2026-06-05 11:39:32,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:39:32,671.671 INFO    ] Initializing speech engine...
[2026-06-05 11:39:32,737.737 INFO    ] 2026-06-05 11:39:32
[2026-06-05 11:39:33,008.008 INFO    ] 2026-06-05 11:39:33
[2026-06-05 11:39:33,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:39:33,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:39:33,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:39:33,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:39:33,427.427 INFO    ] time= 05/06/2026 11:39:33
[2026-06-05 11:39:33,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:39:33,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:39:33,542.542 INFO    ] No existing commands found in stream
[2026-06-05 11:39:38,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:39:38,555.555 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 11:39:41,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:39:41,036.036 INFO    ] Checking for system updates...
[2026-06-05 11:39:41,081.081 INFO    ] 200
[2026-06-05 11:39:41,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:41,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:39:41,147.147 INFO    ] No update needed
[2026-06-05 11:39:41,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 11:39:41,183.183 INFO    ] 200
[2026-06-05 11:39:41,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:41,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:39:41,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:39:41,274.274 INFO    ] No camera update needed
[2026-06-05 11:39:41,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:39:41,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:39:41,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:39:41,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:39:43,333.333 INFO    ] ================================================
[2026-06-05 11:39:43,349.349 INFO    ] Launching Daemon at Fri Jun  5 11:39:43 IST 2026
[2026-06-05 11:39:43,360.360 INFO    ] ================================================
[2026-06-05 11:39:43,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:39:43
[2026-06-05 11:39:44,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:39:44,794.794 INFO    ] Initializing speech engine...
[2026-06-05 11:39:44,803.803 INFO    ] 2026-06-05 11:39:44
[2026-06-05 11:39:45,053.053 INFO    ] 2026-06-05 11:39:45
[2026-06-05 11:39:45,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:39:45,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:39:45,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:39:45,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:39:45,430.430 INFO    ] time= 05/06/2026 11:39:45
[2026-06-05 11:39:45,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:39:45,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:39:45,615.615 INFO    ] No existing commands found in stream
[2026-06-05 11:39:50,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:39:50,647.647 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 11:39:53,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:39:53,909.909 INFO    ] Checking for system updates...
[2026-06-05 11:39:53,944.944 INFO    ] 200
[2026-06-05 11:39:53,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:54,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:39:54,004.004 INFO    ] No update needed
[2026-06-05 11:39:54,006.006 INFO    ] Checking for camera pi updates...
[2026-06-05 11:39:54,043.043 INFO    ] 200
[2026-06-05 11:39:54,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:39:54,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:39:54,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:39:54,152.152 INFO    ] No camera update needed
[2026-06-05 11:39:54,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:39:54,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:39:54,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:39:54,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:39:56,211.211 INFO    ] ================================================
[2026-06-05 11:39:56,227.227 INFO    ] Launching Daemon at Fri Jun  5 11:39:56 IST 2026
[2026-06-05 11:39:56,238.238 INFO    ] ================================================
[2026-06-05 11:39:56,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:39:56
[2026-06-05 11:39:57,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:39:57,643.643 INFO    ] Initializing speech engine...
[2026-06-05 11:39:57,657.657 INFO    ] 2026-06-05 11:39:57
[2026-06-05 11:39:57,928.928 INFO    ] 2026-06-05 11:39:57
[2026-06-05 11:39:57,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:39:58,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:39:58,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:39:58,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:39:58,414.414 INFO    ] time= 05/06/2026 11:39:58
[2026-06-05 11:39:58,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:39:58,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:39:58,617.617 INFO    ] No existing commands found in stream
[2026-06-05 11:40:03,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:40:03,647.647 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 11:40:07,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:40:07,812.812 INFO    ] Checking for system updates...
[2026-06-05 11:40:07,852.852 INFO    ] 200
[2026-06-05 11:40:07,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:40:07,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:40:07,933.933 INFO    ] No update needed
[2026-06-05 11:40:07,935.935 INFO    ] Checking for camera pi updates...
[2026-06-05 11:40:07,975.975 INFO    ] 200
[2026-06-05 11:40:07,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:40:08,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:40:08,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:40:08,171.171 INFO    ] No camera update needed
[2026-06-05 11:40:08,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:40:08,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:40:08,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:40:08,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:40:10,228.228 INFO    ] ================================================
[2026-06-05 11:40:10,244.244 INFO    ] Launching Daemon at Fri Jun  5 11:40:10 IST 2026
[2026-06-05 11:40:10,256.256 INFO    ] ================================================
[2026-06-05 11:40:10,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:40:10
[2026-06-05 11:40:11,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:40:11,950.950 INFO    ] Initializing speech engine...
[2026-06-05 11:40:11,962.962 INFO    ] 2026-06-05 11:40:11
[2026-06-05 11:40:12,254.254 INFO    ] 2026-06-05 11:40:12
[2026-06-05 11:40:12,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:40:12,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:40:12,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:40:12,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:40:12,804.804 INFO    ] time= 05/06/2026 11:40:12
[2026-06-05 11:40:12,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:40:12,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:40:12,904.904 INFO    ] No existing commands found in stream
[2026-06-05 11:40:17,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:40:17,960.960 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 11:40:21,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:40:21,398.398 INFO    ] Checking for system updates...
[2026-06-05 11:40:21,435.435 INFO    ] 200
[2026-06-05 11:40:21,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:40:21,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:40:21,493.493 INFO    ] No update needed
[2026-06-05 11:40:21,500.500 INFO    ] Checking for camera pi updates...
[2026-06-05 11:40:21,534.534 INFO    ] 200
[2026-06-05 11:40:21,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:40:21,578.578 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:40:21,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:40:21,630.630 INFO    ] No camera update needed
[2026-06-05 11:40:21,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:40:21,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:40:21,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:40:21,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:40:23,686.686 INFO    ] ================================================
[2026-06-05 11:40:23,702.702 INFO    ] Launching Daemon at Fri Jun  5 11:40:23 IST 2026
[2026-06-05 11:40:23,713.713 INFO    ] ================================================
[2026-06-05 11:40:24,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:40:24
[2026-06-05 11:40:24,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:40:25,118.118 INFO    ] Initializing speech engine...
[2026-06-05 11:40:25,141.141 INFO    ] 2026-06-05 11:40:25
[2026-06-05 11:40:25,398.398 INFO    ] 2026-06-05 11:40:25
[2026-06-05 11:40:25,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:40:25,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:40:25,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:40:25,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:40:25,774.774 INFO    ] time= 05/06/2026 11:40:25
[2026-06-05 11:40:25,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:40:25,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:40:25,960.960 INFO    ] No existing commands found in stream
[2026-06-05 11:40:30,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:40:30,987.987 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 11:40:34,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:40:34,773.773 INFO    ] Checking for system updates...
[2026-06-05 11:40:34,811.811 INFO    ] 200
[2026-06-05 11:40:34,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:40:34,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:40:34,869.869 INFO    ] No update needed
[2026-06-05 11:40:34,871.871 INFO    ] Checking for camera pi updates...
[2026-06-05 11:40:34,913.913 INFO    ] 200
[2026-06-05 11:40:34,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:40:34,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:40:35,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:40:35,014.014 INFO    ] No camera update needed
[2026-06-05 11:40:35,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:40:35,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:40:35,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:40:35,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:40:37,071.071 INFO    ] ================================================
[2026-06-05 11:40:37,087.087 INFO    ] Launching Daemon at Fri Jun  5 11:40:37 IST 2026
[2026-06-05 11:40:37,098.098 INFO    ] ================================================
[2026-06-05 11:40:37,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:40:37
[2026-06-05 11:40:38,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:40:38,563.563 INFO    ] Initializing speech engine...
[2026-06-05 11:40:38,572.572 INFO    ] 2026-06-05 11:40:38
[2026-06-05 11:40:38,822.822 INFO    ] 2026-06-05 11:40:38
[2026-06-05 11:40:38,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:40:39,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:40:39,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:40:39,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:40:39,315.315 INFO    ] time= 05/06/2026 11:40:39
[2026-06-05 11:40:39,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:40:39,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:40:39,536.536 INFO    ] No existing commands found in stream
[2026-06-05 11:40:44,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:40:44,553.553 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 11:40:48,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:40:48,557.557 INFO    ] Checking for system updates...
[2026-06-05 11:40:48,593.593 INFO    ] 200
[2026-06-05 11:40:48,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:40:48,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:40:48,659.659 INFO    ] No update needed
[2026-06-05 11:40:48,662.662 INFO    ] Checking for camera pi updates...
[2026-06-05 11:40:48,700.700 INFO    ] 200
[2026-06-05 11:40:48,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:40:48,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:40:48,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:40:48,799.799 INFO    ] No camera update needed
[2026-06-05 11:40:48,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:40:48,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:40:48,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:40:48,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:40:50,857.857 INFO    ] ================================================
[2026-06-05 11:40:50,873.873 INFO    ] Launching Daemon at Fri Jun  5 11:40:50 IST 2026
[2026-06-05 11:40:50,884.884 INFO    ] ================================================
[2026-06-05 11:40:51,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:40:51
[2026-06-05 11:40:52,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:40:52,288.288 INFO    ] Initializing speech engine...
[2026-06-05 11:40:52,303.303 INFO    ] 2026-06-05 11:40:52
[2026-06-05 11:40:52,567.567 INFO    ] 2026-06-05 11:40:52
[2026-06-05 11:40:52,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:40:52,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:40:52,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:40:53,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:40:53,050.050 INFO    ] time= 05/06/2026 11:40:53
[2026-06-05 11:40:53,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:40:53,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:40:53,300.300 INFO    ] No existing commands found in stream
[2026-06-05 11:40:58,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:40:58,315.315 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 11:41:02,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:41:02,180.180 INFO    ] Checking for system updates...
[2026-06-05 11:41:02,230.230 INFO    ] 200
[2026-06-05 11:41:02,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:02,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:41:02,327.327 INFO    ] No update needed
[2026-06-05 11:41:02,330.330 INFO    ] Checking for camera pi updates...
[2026-06-05 11:41:02,401.401 INFO    ] 200
[2026-06-05 11:41:02,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:02,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:41:02,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:41:02,618.618 INFO    ] No camera update needed
[2026-06-05 11:41:02,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:41:02,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:41:02,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:41:02,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:41:04,679.679 INFO    ] ================================================
[2026-06-05 11:41:04,695.695 INFO    ] Launching Daemon at Fri Jun  5 11:41:04 IST 2026
[2026-06-05 11:41:04,706.706 INFO    ] ================================================
[2026-06-05 11:41:05,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:41:05
[2026-06-05 11:41:05,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:41:06,148.148 INFO    ] Initializing speech engine...
[2026-06-05 11:41:06,174.174 INFO    ] 2026-06-05 11:41:06
[2026-06-05 11:41:06,460.460 INFO    ] 2026-06-05 11:41:06
[2026-06-05 11:41:06,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:41:06,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:41:06,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:41:06,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:41:06,894.894 INFO    ] time= 05/06/2026 11:41:06
[2026-06-05 11:41:06,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:41:07,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:41:07,135.135 INFO    ] No existing commands found in stream
[2026-06-05 11:41:12,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:41:12,151.151 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 11:41:15,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:41:15,462.462 INFO    ] Checking for system updates...
[2026-06-05 11:41:15,499.499 INFO    ] 200
[2026-06-05 11:41:15,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:15,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:41:15,567.567 INFO    ] No update needed
[2026-06-05 11:41:15,571.571 INFO    ] Checking for camera pi updates...
[2026-06-05 11:41:15,610.610 INFO    ] 200
[2026-06-05 11:41:15,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:15,658.658 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:41:15,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:41:15,707.707 INFO    ] No camera update needed
[2026-06-05 11:41:15,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:41:15,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:41:15,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:41:15,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:41:17,766.766 INFO    ] ================================================
[2026-06-05 11:41:17,783.783 INFO    ] Launching Daemon at Fri Jun  5 11:41:17 IST 2026
[2026-06-05 11:41:17,794.794 INFO    ] ================================================
[2026-06-05 11:41:18,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:41:18
[2026-06-05 11:41:18,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:41:19,237.237 INFO    ] Initializing speech engine...
[2026-06-05 11:41:19,245.245 INFO    ] 2026-06-05 11:41:19
[2026-06-05 11:41:19,549.549 INFO    ] 2026-06-05 11:41:19
[2026-06-05 11:41:19,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:41:19,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:41:19,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:41:19,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:41:19,959.959 INFO    ] time= 05/06/2026 11:41:19
[2026-06-05 11:41:19,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:41:19,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:41:20,073.073 INFO    ] No existing commands found in stream
[2026-06-05 11:41:25,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:41:25,091.091 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 11:41:27,244.244 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:41:27,247.247 INFO    ] Checking for system updates...
[2026-06-05 11:41:27,288.288 INFO    ] 200
[2026-06-05 11:41:27,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:27,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:41:27,354.354 INFO    ] No update needed
[2026-06-05 11:41:27,357.357 INFO    ] Checking for camera pi updates...
[2026-06-05 11:41:27,396.396 INFO    ] 200
[2026-06-05 11:41:27,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:27,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:41:27,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:41:27,495.495 INFO    ] No camera update needed
[2026-06-05 11:41:27,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:41:27,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:41:27,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:41:27,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:41:29,550.550 INFO    ] ================================================
[2026-06-05 11:41:29,566.566 INFO    ] Launching Daemon at Fri Jun  5 11:41:29 IST 2026
[2026-06-05 11:41:29,577.577 INFO    ] ================================================
[2026-06-05 11:41:30,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:41:30
[2026-06-05 11:41:30,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:41:31,009.009 INFO    ] Initializing speech engine...
[2026-06-05 11:41:31,015.015 INFO    ] 2026-06-05 11:41:31
[2026-06-05 11:41:31,315.315 INFO    ] 2026-06-05 11:41:31
[2026-06-05 11:41:31,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:41:31,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:41:31,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:41:31,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:41:31,859.859 INFO    ] time= 05/06/2026 11:41:31
[2026-06-05 11:41:31,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:41:31,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:41:32,047.047 INFO    ] No existing commands found in stream
[2026-06-05 11:41:37,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:41:37,061.061 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 11:41:40,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:41:40,302.302 INFO    ] Checking for system updates...
[2026-06-05 11:41:40,339.339 INFO    ] 200
[2026-06-05 11:41:40,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:40,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:41:40,396.396 INFO    ] No update needed
[2026-06-05 11:41:40,399.399 INFO    ] Checking for camera pi updates...
[2026-06-05 11:41:40,433.433 INFO    ] 200
[2026-06-05 11:41:40,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:40,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:41:40,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:41:40,527.527 INFO    ] No camera update needed
[2026-06-05 11:41:40,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:41:40,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:41:40,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:41:40,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:41:42,584.584 INFO    ] ================================================
[2026-06-05 11:41:42,599.599 INFO    ] Launching Daemon at Fri Jun  5 11:41:42 IST 2026
[2026-06-05 11:41:42,611.611 INFO    ] ================================================
[2026-06-05 11:41:43,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:41:43
[2026-06-05 11:41:43,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:41:44,062.062 INFO    ] Initializing speech engine...
[2026-06-05 11:41:44,069.069 INFO    ] 2026-06-05 11:41:44
[2026-06-05 11:41:44,371.371 INFO    ] 2026-06-05 11:41:44
[2026-06-05 11:41:44,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:41:44,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:41:44,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:41:44,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:41:44,774.774 INFO    ] time= 05/06/2026 11:41:44
[2026-06-05 11:41:44,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:41:44,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:41:44,891.891 INFO    ] No existing commands found in stream
[2026-06-05 11:41:49,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:41:49,906.906 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 11:41:54,140.140 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:41:54,143.143 INFO    ] Checking for system updates...
[2026-06-05 11:41:54,180.180 INFO    ] 200
[2026-06-05 11:41:54,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:54,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:41:54,241.241 INFO    ] No update needed
[2026-06-05 11:41:54,244.244 INFO    ] Checking for camera pi updates...
[2026-06-05 11:41:54,278.278 INFO    ] 200
[2026-06-05 11:41:54,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:41:54,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:41:54,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:41:54,373.373 INFO    ] No camera update needed
[2026-06-05 11:41:54,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:41:54,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:41:54,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:41:54,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:41:56,429.429 INFO    ] ================================================
[2026-06-05 11:41:56,444.444 INFO    ] Launching Daemon at Fri Jun  5 11:41:56 IST 2026
[2026-06-05 11:41:56,456.456 INFO    ] ================================================
[2026-06-05 11:41:57,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:41:57
[2026-06-05 11:41:57,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:41:57,988.988 INFO    ] Initializing speech engine...
[2026-06-05 11:41:58,009.009 INFO    ] 2026-06-05 11:41:57
[2026-06-05 11:41:58,290.290 INFO    ] 2026-06-05 11:41:58
[2026-06-05 11:41:58,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:41:58,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:41:58,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:41:58,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:41:58,839.839 INFO    ] time= 05/06/2026 11:41:58
[2026-06-05 11:41:58,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:41:58,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:41:58,981.981 INFO    ] No existing commands found in stream
[2026-06-05 11:42:04,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:42:04,018.018 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 11:42:06,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:42:06,367.367 INFO    ] Checking for system updates...
[2026-06-05 11:42:06,408.408 INFO    ] 200
[2026-06-05 11:42:06,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:06,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:42:06,476.476 INFO    ] No update needed
[2026-06-05 11:42:06,479.479 INFO    ] Checking for camera pi updates...
[2026-06-05 11:42:06,513.513 INFO    ] 200
[2026-06-05 11:42:06,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:06,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:42:06,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:42:06,621.621 INFO    ] No camera update needed
[2026-06-05 11:42:06,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:42:06,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:42:06,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:42:06,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:42:08,677.677 INFO    ] ================================================
[2026-06-05 11:42:08,693.693 INFO    ] Launching Daemon at Fri Jun  5 11:42:08 IST 2026
[2026-06-05 11:42:08,705.705 INFO    ] ================================================
[2026-06-05 11:42:09,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:42:09
[2026-06-05 11:42:09,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:42:10,183.183 INFO    ] Initializing speech engine...
[2026-06-05 11:42:10,189.189 INFO    ] 2026-06-05 11:42:10
[2026-06-05 11:42:10,469.469 INFO    ] 2026-06-05 11:42:10
[2026-06-05 11:42:10,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:42:10,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:42:10,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:42:10,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:42:10,991.991 INFO    ] time= 05/06/2026 11:42:10
[2026-06-05 11:42:10,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:42:11,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:42:11,126.126 INFO    ] No existing commands found in stream
[2026-06-05 11:42:16,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:42:16,154.154 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 11:42:18,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:42:18,913.913 INFO    ] Checking for system updates...
[2026-06-05 11:42:18,950.950 INFO    ] 200
[2026-06-05 11:42:18,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:19,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:42:19,009.009 INFO    ] No update needed
[2026-06-05 11:42:19,012.012 INFO    ] Checking for camera pi updates...
[2026-06-05 11:42:19,050.050 INFO    ] 200
[2026-06-05 11:42:19,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:19,093.093 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:42:19,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:42:19,243.243 INFO    ] No camera update needed
[2026-06-05 11:42:19,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:42:19,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:42:19,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:42:19,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:42:21,301.301 INFO    ] ================================================
[2026-06-05 11:42:21,317.317 INFO    ] Launching Daemon at Fri Jun  5 11:42:21 IST 2026
[2026-06-05 11:42:21,327.327 INFO    ] ================================================
[2026-06-05 11:42:21,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:42:21
[2026-06-05 11:42:22,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:42:22,806.806 INFO    ] Initializing speech engine...
[2026-06-05 11:42:22,812.812 INFO    ] 2026-06-05 11:42:22
[2026-06-05 11:42:23,077.077 INFO    ] 2026-06-05 11:42:23
[2026-06-05 11:42:23,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:42:23,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:42:23,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:42:23,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:42:23,566.566 INFO    ] time= 05/06/2026 11:42:23
[2026-06-05 11:42:23,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:42:23,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:42:23,750.750 INFO    ] No existing commands found in stream
[2026-06-05 11:42:28,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:42:28,778.778 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 11:42:32,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:42:32,083.083 INFO    ] Checking for system updates...
[2026-06-05 11:42:32,121.121 INFO    ] 200
[2026-06-05 11:42:32,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:32,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:42:32,184.184 INFO    ] No update needed
[2026-06-05 11:42:32,187.187 INFO    ] Checking for camera pi updates...
[2026-06-05 11:42:32,228.228 INFO    ] 200
[2026-06-05 11:42:32,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:32,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:42:32,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:42:32,319.319 INFO    ] No camera update needed
[2026-06-05 11:42:32,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:42:32,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:42:32,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:42:32,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:42:34,380.380 INFO    ] ================================================
[2026-06-05 11:42:34,396.396 INFO    ] Launching Daemon at Fri Jun  5 11:42:34 IST 2026
[2026-06-05 11:42:34,406.406 INFO    ] ================================================
[2026-06-05 11:42:35,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:42:35
[2026-06-05 11:42:35,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:42:36,097.097 INFO    ] Initializing speech engine...
[2026-06-05 11:42:36,109.109 INFO    ] 2026-06-05 11:42:36
[2026-06-05 11:42:36,399.399 INFO    ] 2026-06-05 11:42:36
[2026-06-05 11:42:36,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:42:36,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:42:36,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:42:36,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:42:36,875.875 INFO    ] time= 05/06/2026 11:42:36
[2026-06-05 11:42:36,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:42:36,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:42:37,084.084 INFO    ] No existing commands found in stream
[2026-06-05 11:42:42,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:42:42,107.107 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 11:42:43,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:42:43,268.268 INFO    ] Checking for system updates...
[2026-06-05 11:42:43,310.310 INFO    ] 200
[2026-06-05 11:42:43,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:43,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:42:43,377.377 INFO    ] No update needed
[2026-06-05 11:42:43,380.380 INFO    ] Checking for camera pi updates...
[2026-06-05 11:42:43,415.415 INFO    ] 200
[2026-06-05 11:42:43,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:43,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:42:43,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:42:43,533.533 INFO    ] No camera update needed
[2026-06-05 11:42:43,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:42:43,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:42:43,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:42:43,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:42:45,592.592 INFO    ] ================================================
[2026-06-05 11:42:45,608.608 INFO    ] Launching Daemon at Fri Jun  5 11:42:45 IST 2026
[2026-06-05 11:42:45,619.619 INFO    ] ================================================
[2026-06-05 11:42:46,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:42:46
[2026-06-05 11:42:46,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:42:47,082.082 INFO    ] Initializing speech engine...
[2026-06-05 11:42:47,089.089 INFO    ] 2026-06-05 11:42:47
[2026-06-05 11:42:47,352.352 INFO    ] 2026-06-05 11:42:47
[2026-06-05 11:42:47,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:42:47,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:42:47,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:42:47,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:42:47,895.895 INFO    ] time= 05/06/2026 11:42:47
[2026-06-05 11:42:47,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:42:47,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:42:48,064.064 INFO    ] No existing commands found in stream
[2026-06-05 11:42:53,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:42:53,099.099 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 11:42:54,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:42:54,233.233 INFO    ] Checking for system updates...
[2026-06-05 11:42:54,271.271 INFO    ] 200
[2026-06-05 11:42:54,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:54,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:42:54,331.331 INFO    ] No update needed
[2026-06-05 11:42:54,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 11:42:54,369.369 INFO    ] 200
[2026-06-05 11:42:54,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:42:54,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:42:54,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:42:54,472.472 INFO    ] No camera update needed
[2026-06-05 11:42:54,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:42:54,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:42:54,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:42:54,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:42:56,529.529 INFO    ] ================================================
[2026-06-05 11:42:56,544.544 INFO    ] Launching Daemon at Fri Jun  5 11:42:56 IST 2026
[2026-06-05 11:42:56,555.555 INFO    ] ================================================
[2026-06-05 11:42:57,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:42:57
[2026-06-05 11:42:57,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:42:58,212.212 INFO    ] Initializing speech engine...
[2026-06-05 11:42:58,223.223 INFO    ] 2026-06-05 11:42:58
[2026-06-05 11:42:58,510.510 INFO    ] 2026-06-05 11:42:58
[2026-06-05 11:42:58,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:42:58,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:42:58,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:42:59,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:42:59,060.060 INFO    ] time= 05/06/2026 11:42:59
[2026-06-05 11:42:59,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:42:59,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:42:59,221.221 INFO    ] No existing commands found in stream
[2026-06-05 11:43:04,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:43:04,245.245 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 11:43:05,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:43:05,739.739 INFO    ] Checking for system updates...
[2026-06-05 11:43:05,777.777 INFO    ] 200
[2026-06-05 11:43:05,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:05,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:43:05,836.836 INFO    ] No update needed
[2026-06-05 11:43:05,839.839 INFO    ] Checking for camera pi updates...
[2026-06-05 11:43:05,878.878 INFO    ] 200
[2026-06-05 11:43:05,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:05,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:43:05,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:43:05,978.978 INFO    ] No camera update needed
[2026-06-05 11:43:05,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:43:05,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:43:05,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:43:05,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:43:08,039.039 INFO    ] ================================================
[2026-06-05 11:43:08,054.054 INFO    ] Launching Daemon at Fri Jun  5 11:43:08 IST 2026
[2026-06-05 11:43:08,064.064 INFO    ] ================================================
[2026-06-05 11:43:08,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:43:08
[2026-06-05 11:43:09,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:43:09,568.568 INFO    ] Initializing speech engine...
[2026-06-05 11:43:09,581.581 INFO    ] 2026-06-05 11:43:09
[2026-06-05 11:43:09,832.832 INFO    ] 2026-06-05 11:43:09
[2026-06-05 11:43:09,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:43:10,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:43:10,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:43:10,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:43:10,315.315 INFO    ] time= 05/06/2026 11:43:10
[2026-06-05 11:43:10,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:43:10,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:43:10,465.465 INFO    ] No existing commands found in stream
[2026-06-05 11:43:15,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:43:15,479.479 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 11:43:16,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:43:16,872.872 INFO    ] Checking for system updates...
[2026-06-05 11:43:16,909.909 INFO    ] 200
[2026-06-05 11:43:16,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:16,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:43:16,967.967 INFO    ] No update needed
[2026-06-05 11:43:16,969.969 INFO    ] Checking for camera pi updates...
[2026-06-05 11:43:17,003.003 INFO    ] 200
[2026-06-05 11:43:17,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:17,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:43:17,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:43:17,101.101 INFO    ] No camera update needed
[2026-06-05 11:43:17,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:43:17,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:43:17,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:43:17,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:43:19,159.159 INFO    ] ================================================
[2026-06-05 11:43:19,174.174 INFO    ] Launching Daemon at Fri Jun  5 11:43:19 IST 2026
[2026-06-05 11:43:19,185.185 INFO    ] ================================================
[2026-06-05 11:43:19,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:43:19
[2026-06-05 11:43:20,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:43:20,848.848 INFO    ] Initializing speech engine...
[2026-06-05 11:43:20,859.859 INFO    ] 2026-06-05 11:43:20
[2026-06-05 11:43:21,173.173 INFO    ] 2026-06-05 11:43:21
[2026-06-05 11:43:21,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:43:21,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:43:21,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:43:21,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:43:21,695.695 INFO    ] time= 05/06/2026 11:43:21
[2026-06-05 11:43:21,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:43:21,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:43:21,857.857 INFO    ] No existing commands found in stream
[2026-06-05 11:43:26,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:43:26,881.881 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 11:43:31,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:43:31,817.817 INFO    ] Checking for system updates...
[2026-06-05 11:43:31,860.860 INFO    ] 200
[2026-06-05 11:43:31,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:31,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:43:31,926.926 INFO    ] No update needed
[2026-06-05 11:43:31,929.929 INFO    ] Checking for camera pi updates...
[2026-06-05 11:43:31,972.972 INFO    ] 200
[2026-06-05 11:43:31,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:32,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:43:32,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:43:32,077.077 INFO    ] No camera update needed
[2026-06-05 11:43:32,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:43:32,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:43:32,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:43:32,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:43:34,138.138 INFO    ] ================================================
[2026-06-05 11:43:34,153.153 INFO    ] Launching Daemon at Fri Jun  5 11:43:34 IST 2026
[2026-06-05 11:43:34,163.163 INFO    ] ================================================
[2026-06-05 11:43:34,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:43:34
[2026-06-05 11:43:35,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:43:35,632.632 INFO    ] Initializing speech engine...
[2026-06-05 11:43:35,640.640 INFO    ] 2026-06-05 11:43:35
[2026-06-05 11:43:35,899.899 INFO    ] 2026-06-05 11:43:35
[2026-06-05 11:43:35,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:43:36,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:43:36,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:43:36,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:43:36,362.362 INFO    ] time= 05/06/2026 11:43:36
[2026-06-05 11:43:36,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:43:36,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:43:36,577.577 INFO    ] No existing commands found in stream
[2026-06-05 11:43:41,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:43:41,608.608 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 11:43:43,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:43:43,213.213 INFO    ] Checking for system updates...
[2026-06-05 11:43:43,251.251 INFO    ] 200
[2026-06-05 11:43:43,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:43,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:43:43,311.311 INFO    ] No update needed
[2026-06-05 11:43:43,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 11:43:43,348.348 INFO    ] 200
[2026-06-05 11:43:43,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:43,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:43:43,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:43:43,442.442 INFO    ] No camera update needed
[2026-06-05 11:43:43,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:43:43,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:43:43,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:43:43,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:43:45,500.500 INFO    ] ================================================
[2026-06-05 11:43:45,515.515 INFO    ] Launching Daemon at Fri Jun  5 11:43:45 IST 2026
[2026-06-05 11:43:45,526.526 INFO    ] ================================================
[2026-06-05 11:43:46,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:43:46
[2026-06-05 11:43:46,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:43:47,005.005 INFO    ] Initializing speech engine...
[2026-06-05 11:43:47,020.020 INFO    ] 2026-06-05 11:43:47
[2026-06-05 11:43:47,287.287 INFO    ] 2026-06-05 11:43:47
[2026-06-05 11:43:47,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:43:47,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:43:47,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:43:47,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:43:47,770.770 INFO    ] time= 05/06/2026 11:43:47
[2026-06-05 11:43:47,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:43:47,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:43:47,978.978 INFO    ] No existing commands found in stream
[2026-06-05 11:43:53,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:43:53,003.003 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 11:43:54,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:43:54,696.696 INFO    ] Checking for system updates...
[2026-06-05 11:43:54,732.732 INFO    ] 200
[2026-06-05 11:43:54,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:54,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:43:54,790.790 INFO    ] No update needed
[2026-06-05 11:43:54,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 11:43:54,826.826 INFO    ] 200
[2026-06-05 11:43:54,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:43:54,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:43:54,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:43:54,929.929 INFO    ] No camera update needed
[2026-06-05 11:43:54,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:43:54,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:43:54,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:43:54,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:43:56,984.984 INFO    ] ================================================
[2026-06-05 11:43:57,000.000 INFO    ] Launching Daemon at Fri Jun  5 11:43:56 IST 2026
[2026-06-05 11:43:57,011.011 INFO    ] ================================================
[2026-06-05 11:43:57,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:43:57
[2026-06-05 11:43:58,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:43:58,413.413 INFO    ] Initializing speech engine...
[2026-06-05 11:43:58,434.434 INFO    ] 2026-06-05 11:43:58
[2026-06-05 11:43:58,694.694 INFO    ] 2026-06-05 11:43:58
[2026-06-05 11:43:58,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:43:58,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:43:58,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:43:59,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:43:59,071.071 INFO    ] time= 05/06/2026 11:43:59
[2026-06-05 11:43:59,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:43:59,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:43:59,257.257 INFO    ] No existing commands found in stream
[2026-06-05 11:44:04,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:44:04,280.280 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 11:44:07,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:44:07,724.724 INFO    ] Checking for system updates...
[2026-06-05 11:44:07,760.760 INFO    ] 200
[2026-06-05 11:44:07,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:07,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:44:07,822.822 INFO    ] No update needed
[2026-06-05 11:44:07,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 11:44:07,858.858 INFO    ] 200
[2026-06-05 11:44:07,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:07,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:44:07,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:44:07,968.968 INFO    ] No camera update needed
[2026-06-05 11:44:07,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:44:07,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:44:07,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:44:07,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:44:10,024.024 INFO    ] ================================================
[2026-06-05 11:44:10,039.039 INFO    ] Launching Daemon at Fri Jun  5 11:44:10 IST 2026
[2026-06-05 11:44:10,050.050 INFO    ] ================================================
[2026-06-05 11:44:10,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:44:10
[2026-06-05 11:44:11,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:44:11,474.474 INFO    ] Initializing speech engine...
[2026-06-05 11:44:11,484.484 INFO    ] 2026-06-05 11:44:11
[2026-06-05 11:44:11,735.735 INFO    ] 2026-06-05 11:44:11
[2026-06-05 11:44:11,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:44:11,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:44:12,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:44:12,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:44:12,205.205 INFO    ] time= 05/06/2026 11:44:12
[2026-06-05 11:44:12,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:44:12,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:44:12,423.423 INFO    ] No existing commands found in stream
[2026-06-05 11:44:17,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:44:17,446.446 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 11:44:21,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:44:21,206.206 INFO    ] Checking for system updates...
[2026-06-05 11:44:21,242.242 INFO    ] 200
[2026-06-05 11:44:21,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:21,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:44:21,301.301 INFO    ] No update needed
[2026-06-05 11:44:21,303.303 INFO    ] Checking for camera pi updates...
[2026-06-05 11:44:21,344.344 INFO    ] 200
[2026-06-05 11:44:21,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:21,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:44:21,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:44:21,536.536 INFO    ] No camera update needed
[2026-06-05 11:44:21,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:44:21,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:44:21,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:44:21,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:44:23,592.592 INFO    ] ================================================
[2026-06-05 11:44:23,607.607 INFO    ] Launching Daemon at Fri Jun  5 11:44:23 IST 2026
[2026-06-05 11:44:23,618.618 INFO    ] ================================================
[2026-06-05 11:44:24,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:44:24
[2026-06-05 11:44:24,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:44:25,026.026 INFO    ] Initializing speech engine...
[2026-06-05 11:44:25,041.041 INFO    ] 2026-06-05 11:44:25
[2026-06-05 11:44:25,307.307 INFO    ] 2026-06-05 11:44:25
[2026-06-05 11:44:25,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:44:25,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:44:25,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:44:25,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:44:25,787.787 INFO    ] time= 05/06/2026 11:44:25
[2026-06-05 11:44:25,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:44:25,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:44:25,997.997 INFO    ] No existing commands found in stream
[2026-06-05 11:44:31,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:44:31,022.022 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 11:44:33,271.271 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:44:33,274.274 INFO    ] Checking for system updates...
[2026-06-05 11:44:33,310.310 INFO    ] 200
[2026-06-05 11:44:33,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:33,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:44:33,368.368 INFO    ] No update needed
[2026-06-05 11:44:33,373.373 INFO    ] Checking for camera pi updates...
[2026-06-05 11:44:33,407.407 INFO    ] 200
[2026-06-05 11:44:33,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:33,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:44:33,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:44:33,512.512 INFO    ] No camera update needed
[2026-06-05 11:44:33,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:44:33,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:44:33,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:44:33,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:44:35,569.569 INFO    ] ================================================
[2026-06-05 11:44:35,584.584 INFO    ] Launching Daemon at Fri Jun  5 11:44:35 IST 2026
[2026-06-05 11:44:35,595.595 INFO    ] ================================================
[2026-06-05 11:44:36,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:44:36
[2026-06-05 11:44:36,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:44:36,999.999 INFO    ] Initializing speech engine...
[2026-06-05 11:44:37,014.014 INFO    ] 2026-06-05 11:44:37
[2026-06-05 11:44:37,281.281 INFO    ] 2026-06-05 11:44:37
[2026-06-05 11:44:37,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:44:37,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:44:37,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:44:37,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:44:37,762.762 INFO    ] time= 05/06/2026 11:44:37
[2026-06-05 11:44:37,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:44:37,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:44:37,976.976 INFO    ] No existing commands found in stream
[2026-06-05 11:44:42,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:44:43,001.001 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 11:44:43,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:44:43,829.829 INFO    ] Checking for system updates...
[2026-06-05 11:44:43,867.867 INFO    ] 200
[2026-06-05 11:44:43,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:43,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:44:43,932.932 INFO    ] No update needed
[2026-06-05 11:44:43,935.935 INFO    ] Checking for camera pi updates...
[2026-06-05 11:44:43,974.974 INFO    ] 200
[2026-06-05 11:44:43,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:44,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:44:44,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:44:44,078.078 INFO    ] No camera update needed
[2026-06-05 11:44:44,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:44:44,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:44:44,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:44:44,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:44:46,138.138 INFO    ] ================================================
[2026-06-05 11:44:46,153.153 INFO    ] Launching Daemon at Fri Jun  5 11:44:46 IST 2026
[2026-06-05 11:44:46,164.164 INFO    ] ================================================
[2026-06-05 11:44:46,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:44:46
[2026-06-05 11:44:47,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:44:47,770.770 INFO    ] Initializing speech engine...
[2026-06-05 11:44:47,776.776 INFO    ] 2026-06-05 11:44:47
[2026-06-05 11:44:48,051.051 INFO    ] 2026-06-05 11:44:48
[2026-06-05 11:44:48,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:44:48,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:44:48,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:44:48,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:44:48,567.567 INFO    ] time= 05/06/2026 11:44:48
[2026-06-05 11:44:48,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:44:48,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:44:48,758.758 INFO    ] No existing commands found in stream
[2026-06-05 11:44:53,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:44:53,784.784 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 11:44:56,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:44:56,264.264 INFO    ] Checking for system updates...
[2026-06-05 11:44:56,302.302 INFO    ] 200
[2026-06-05 11:44:56,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:56,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:44:56,362.362 INFO    ] No update needed
[2026-06-05 11:44:56,364.364 INFO    ] Checking for camera pi updates...
[2026-06-05 11:44:56,399.399 INFO    ] 200
[2026-06-05 11:44:56,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:44:56,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:44:56,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:44:56,499.499 INFO    ] No camera update needed
[2026-06-05 11:44:56,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:44:56,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:44:56,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:44:56,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:44:58,554.554 INFO    ] ================================================
[2026-06-05 11:44:58,570.570 INFO    ] Launching Daemon at Fri Jun  5 11:44:58 IST 2026
[2026-06-05 11:44:58,581.581 INFO    ] ================================================
[2026-06-05 11:44:59,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:44:59
[2026-06-05 11:44:59,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:44:59,986.986 INFO    ] Initializing speech engine...
[2026-06-05 11:45:00,005.005 INFO    ] 2026-06-05 11:44:59
[2026-06-05 11:45:00,265.265 INFO    ] 2026-06-05 11:45:00
[2026-06-05 11:45:00,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:45:01,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:45:01,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:45:01,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:45:01,747.747 INFO    ] time= 05/06/2026 11:45:01
[2026-06-05 11:45:01,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:45:01,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:45:01,888.888 INFO    ] No existing commands found in stream
[2026-06-05 11:45:06,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:45:06,900.900 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 11:45:07,744.744 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:45:07,747.747 INFO    ] Checking for system updates...
[2026-06-05 11:45:07,792.792 INFO    ] 200
[2026-06-05 11:45:07,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 11:45:07,798.798 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 11:45:07,801.801 INFO    ] Checking for camera pi updates...
[2026-06-05 11:45:07,848.848 INFO    ] 200
[2026-06-05 11:45:07,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 11:45:07,853.853 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 11:45:07,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:45:07,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:45:07,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:45:07,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:45:09,916.916 INFO    ] ================================================
[2026-06-05 11:45:09,931.931 INFO    ] Launching Daemon at Fri Jun  5 11:45:09 IST 2026
[2026-06-05 11:45:09,942.942 INFO    ] ================================================
[2026-06-05 11:45:10,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:45:10
[2026-06-05 11:45:11,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:45:11,609.609 INFO    ] Initializing speech engine...
[2026-06-05 11:45:11,622.622 INFO    ] 2026-06-05 11:45:11
[2026-06-05 11:45:11,905.905 INFO    ] 2026-06-05 11:45:11
[2026-06-05 11:45:11,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:45:12,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:45:12,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:45:12,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:45:12,448.448 INFO    ] time= 05/06/2026 11:45:12
[2026-06-05 11:45:12,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:45:12,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:45:12,606.606 INFO    ] No existing commands found in stream
[2026-06-05 11:45:17,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:45:17,639.639 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 11:45:20,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:45:20,568.568 INFO    ] Checking for system updates...
[2026-06-05 11:45:20,606.606 INFO    ] 200
[2026-06-05 11:45:20,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:45:20,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:45:20,672.672 INFO    ] No update needed
[2026-06-05 11:45:20,674.674 INFO    ] Checking for camera pi updates...
[2026-06-05 11:45:20,708.708 INFO    ] 200
[2026-06-05 11:45:20,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:45:20,758.758 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:45:20,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:45:20,811.811 INFO    ] No camera update needed
[2026-06-05 11:45:20,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:45:20,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:45:20,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:45:20,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:45:22,867.867 INFO    ] ================================================
[2026-06-05 11:45:22,882.882 INFO    ] Launching Daemon at Fri Jun  5 11:45:22 IST 2026
[2026-06-05 11:45:22,893.893 INFO    ] ================================================
[2026-06-05 11:45:23,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:45:23
[2026-06-05 11:45:24,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:45:24,310.310 INFO    ] Initializing speech engine...
[2026-06-05 11:45:24,316.316 INFO    ] 2026-06-05 11:45:24
[2026-06-05 11:45:24,615.615 INFO    ] 2026-06-05 11:45:24
[2026-06-05 11:45:24,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:45:24,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:45:24,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:45:25,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:45:25,154.154 INFO    ] time= 05/06/2026 11:45:25
[2026-06-05 11:45:25,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:45:25,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:45:25,383.383 INFO    ] No existing commands found in stream
[2026-06-05 11:45:30,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:45:30,406.406 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 11:45:33,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:45:33,182.182 INFO    ] Checking for system updates...
[2026-06-05 11:45:33,230.230 INFO    ] 200
[2026-06-05 11:45:33,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:45:33,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:45:33,297.297 INFO    ] No update needed
[2026-06-05 11:45:33,300.300 INFO    ] Checking for camera pi updates...
[2026-06-05 11:45:33,345.345 INFO    ] 200
[2026-06-05 11:45:33,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:45:33,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:45:33,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:45:33,452.452 INFO    ] No camera update needed
[2026-06-05 11:45:33,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:45:33,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:45:33,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:45:33,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:45:35,508.508 INFO    ] ================================================
[2026-06-05 11:45:35,523.523 INFO    ] Launching Daemon at Fri Jun  5 11:45:35 IST 2026
[2026-06-05 11:45:35,535.535 INFO    ] ================================================
[2026-06-05 11:45:36,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:45:36
[2026-06-05 11:45:36,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:45:36,994.994 INFO    ] Initializing speech engine...
[2026-06-05 11:45:37,013.013 INFO    ] 2026-06-05 11:45:36
[2026-06-05 11:45:37,304.304 INFO    ] 2026-06-05 11:45:37
[2026-06-05 11:45:37,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:45:37,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:45:37,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:45:37,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:45:37,842.842 INFO    ] time= 05/06/2026 11:45:37
[2026-06-05 11:45:37,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:45:37,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:45:38,090.090 INFO    ] No existing commands found in stream
[2026-06-05 11:45:43,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:45:43,118.118 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 11:45:45,554.554 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:45:45,557.557 INFO    ] Checking for system updates...
[2026-06-05 11:45:45,597.597 INFO    ] 200
[2026-06-05 11:45:45,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:45:45,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:45:45,655.655 INFO    ] No update needed
[2026-06-05 11:45:45,658.658 INFO    ] Checking for camera pi updates...
[2026-06-05 11:45:45,692.692 INFO    ] 200
[2026-06-05 11:45:45,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:45:45,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:45:45,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:45:45,796.796 INFO    ] No camera update needed
[2026-06-05 11:45:45,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:45:45,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:45:45,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:45:45,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:45:47,852.852 INFO    ] ================================================
[2026-06-05 11:45:47,868.868 INFO    ] Launching Daemon at Fri Jun  5 11:45:47 IST 2026
[2026-06-05 11:45:47,879.879 INFO    ] ================================================
[2026-06-05 11:45:48,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:45:48
[2026-06-05 11:45:49,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:45:49,500.500 INFO    ] Initializing speech engine...
[2026-06-05 11:45:49,508.508 INFO    ] 2026-06-05 11:45:49
[2026-06-05 11:45:49,831.831 INFO    ] 2026-06-05 11:45:49
[2026-06-05 11:45:49,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:45:50,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:45:50,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:45:51,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:45:51,022.022 INFO    ] time= 05/06/2026 11:45:51
[2026-06-05 11:45:51,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:45:51,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:45:51,154.154 INFO    ] No existing commands found in stream
[2026-06-05 11:45:56,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:45:56,183.183 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 11:46:01,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:46:01,609.609 INFO    ] Checking for system updates...
[2026-06-05 11:46:01,658.658 INFO    ] 200
[2026-06-05 11:46:01,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:01,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:01,723.723 INFO    ] No update needed
[2026-06-05 11:46:01,727.727 INFO    ] Checking for camera pi updates...
[2026-06-05 11:46:01,770.770 INFO    ] 200
[2026-06-05 11:46:01,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:01,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:46:01,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:01,864.864 INFO    ] No camera update needed
[2026-06-05 11:46:01,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:46:01,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:46:01,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:46:01,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:46:03,924.924 INFO    ] ================================================
[2026-06-05 11:46:03,942.942 INFO    ] Launching Daemon at Fri Jun  5 11:46:03 IST 2026
[2026-06-05 11:46:03,954.954 INFO    ] ================================================
[2026-06-05 11:46:04,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:46:04
[2026-06-05 11:46:05,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:46:05,428.428 INFO    ] Initializing speech engine...
[2026-06-05 11:46:05,437.437 INFO    ] 2026-06-05 11:46:05
[2026-06-05 11:46:05,693.693 INFO    ] 2026-06-05 11:46:05
[2026-06-05 11:46:05,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:46:05,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:46:05,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:46:06,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:46:06,196.196 INFO    ] time= 05/06/2026 11:46:06
[2026-06-05 11:46:06,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:46:06,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:46:06,413.413 INFO    ] No existing commands found in stream
[2026-06-05 11:46:11,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:46:11,435.435 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 11:46:14,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:46:14,294.294 INFO    ] Checking for system updates...
[2026-06-05 11:46:14,330.330 INFO    ] 200
[2026-06-05 11:46:14,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:14,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:14,388.388 INFO    ] No update needed
[2026-06-05 11:46:14,390.390 INFO    ] Checking for camera pi updates...
[2026-06-05 11:46:14,429.429 INFO    ] 200
[2026-06-05 11:46:14,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:14,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:46:14,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:14,528.528 INFO    ] No camera update needed
[2026-06-05 11:46:14,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:46:14,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:46:14,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:46:14,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:46:16,585.585 INFO    ] ================================================
[2026-06-05 11:46:16,600.600 INFO    ] Launching Daemon at Fri Jun  5 11:46:16 IST 2026
[2026-06-05 11:46:16,611.611 INFO    ] ================================================
[2026-06-05 11:46:17,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:46:17
[2026-06-05 11:46:17,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:46:18,018.018 INFO    ] Initializing speech engine...
[2026-06-05 11:46:18,026.026 INFO    ] 2026-06-05 11:46:18
[2026-06-05 11:46:18,320.320 INFO    ] 2026-06-05 11:46:18
[2026-06-05 11:46:18,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:46:18,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:46:18,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:46:18,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:46:18,730.730 INFO    ] time= 05/06/2026 11:46:18
[2026-06-05 11:46:18,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:46:18,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:46:18,821.821 INFO    ] No existing commands found in stream
[2026-06-05 11:46:23,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:46:23,860.860 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 11:46:24,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:46:24,456.456 INFO    ] Checking for system updates...
[2026-06-05 11:46:24,492.492 INFO    ] 200
[2026-06-05 11:46:24,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:24,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:24,563.563 INFO    ] No update needed
[2026-06-05 11:46:24,566.566 INFO    ] Checking for camera pi updates...
[2026-06-05 11:46:24,600.600 INFO    ] 200
[2026-06-05 11:46:24,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:24,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:46:24,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:24,789.789 INFO    ] No camera update needed
[2026-06-05 11:46:24,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:46:24,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:46:24,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:46:24,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:46:26,846.846 INFO    ] ================================================
[2026-06-05 11:46:26,861.861 INFO    ] Launching Daemon at Fri Jun  5 11:46:26 IST 2026
[2026-06-05 11:46:26,871.871 INFO    ] ================================================
[2026-06-05 11:46:27,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:46:27
[2026-06-05 11:46:28,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:46:28,481.481 INFO    ] Initializing speech engine...
[2026-06-05 11:46:28,489.489 INFO    ] 2026-06-05 11:46:28
[2026-06-05 11:46:28,765.765 INFO    ] 2026-06-05 11:46:28
[2026-06-05 11:46:28,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:46:29,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:46:29,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:46:29,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:46:29,239.239 INFO    ] time= 05/06/2026 11:46:29
[2026-06-05 11:46:29,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:46:29,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:46:29,457.457 INFO    ] No existing commands found in stream
[2026-06-05 11:46:34,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:46:34,488.488 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 11:46:36,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:46:36,545.545 INFO    ] Checking for system updates...
[2026-06-05 11:46:36,583.583 INFO    ] 200
[2026-06-05 11:46:36,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:36,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:36,649.649 INFO    ] No update needed
[2026-06-05 11:46:36,652.652 INFO    ] Checking for camera pi updates...
[2026-06-05 11:46:36,690.690 INFO    ] 200
[2026-06-05 11:46:36,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:36,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:46:36,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:36,795.795 INFO    ] No camera update needed
[2026-06-05 11:46:36,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:46:36,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:46:36,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:46:36,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:46:38,851.851 INFO    ] ================================================
[2026-06-05 11:46:38,867.867 INFO    ] Launching Daemon at Fri Jun  5 11:46:38 IST 2026
[2026-06-05 11:46:38,878.878 INFO    ] ================================================
[2026-06-05 11:46:39,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:46:39
[2026-06-05 11:46:40,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:46:40,281.281 INFO    ] Initializing speech engine...
[2026-06-05 11:46:40,287.287 INFO    ] 2026-06-05 11:46:40
[2026-06-05 11:46:40,565.565 INFO    ] 2026-06-05 11:46:40
[2026-06-05 11:46:40,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:46:40,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:46:40,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:46:40,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:46:40,945.945 INFO    ] time= 05/06/2026 11:46:40
[2026-06-05 11:46:40,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:46:40,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:46:41,111.111 INFO    ] No existing commands found in stream
[2026-06-05 11:46:46,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:46:46,140.140 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 11:46:49,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:46:49,084.084 INFO    ] Checking for system updates...
[2026-06-05 11:46:49,124.124 INFO    ] 200
[2026-06-05 11:46:49,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:49,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:49,182.182 INFO    ] No update needed
[2026-06-05 11:46:49,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 11:46:49,219.219 INFO    ] 200
[2026-06-05 11:46:49,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:46:49,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:46:49,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:46:49,321.321 INFO    ] No camera update needed
[2026-06-05 11:46:49,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:46:49,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:46:49,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:46:49,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:46:51,381.381 INFO    ] ================================================
[2026-06-05 11:46:51,396.396 INFO    ] Launching Daemon at Fri Jun  5 11:46:51 IST 2026
[2026-06-05 11:46:51,406.406 INFO    ] ================================================
[2026-06-05 11:46:51,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:46:51
[2026-06-05 11:46:52,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:46:52,817.817 INFO    ] Initializing speech engine...
[2026-06-05 11:46:52,825.825 INFO    ] 2026-06-05 11:46:52
[2026-06-05 11:46:53,101.101 INFO    ] 2026-06-05 11:46:53
[2026-06-05 11:46:53,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:46:53,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:46:53,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:46:53,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:46:53,579.579 INFO    ] time= 05/06/2026 11:46:53
[2026-06-05 11:46:53,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:46:53,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:46:53,794.794 INFO    ] No existing commands found in stream
[2026-06-05 11:46:58,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:46:58,814.814 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 11:47:02,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:47:02,974.974 INFO    ] Checking for system updates...
[2026-06-05 11:47:03,011.011 INFO    ] 200
[2026-06-05 11:47:03,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:03,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:03,074.074 INFO    ] No update needed
[2026-06-05 11:47:03,077.077 INFO    ] Checking for camera pi updates...
[2026-06-05 11:47:03,110.110 INFO    ] 200
[2026-06-05 11:47:03,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:03,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:47:03,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:03,199.199 INFO    ] No camera update needed
[2026-06-05 11:47:03,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:47:03,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:47:03,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:47:03,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:47:05,256.256 INFO    ] ================================================
[2026-06-05 11:47:05,272.272 INFO    ] Launching Daemon at Fri Jun  5 11:47:05 IST 2026
[2026-06-05 11:47:05,283.283 INFO    ] ================================================
[2026-06-05 11:47:05,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:47:05
[2026-06-05 11:47:06,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:47:06,869.869 INFO    ] Initializing speech engine...
[2026-06-05 11:47:06,877.877 INFO    ] 2026-06-05 11:47:06
[2026-06-05 11:47:07,163.163 INFO    ] 2026-06-05 11:47:07
[2026-06-05 11:47:07,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:47:07,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:47:07,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:47:07,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:47:07,625.625 INFO    ] time= 05/06/2026 11:47:07
[2026-06-05 11:47:07,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:47:07,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:47:07,845.845 INFO    ] No existing commands found in stream
[2026-06-05 11:47:12,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:47:12,870.870 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 11:47:14,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:47:14,559.559 INFO    ] Checking for system updates...
[2026-06-05 11:47:14,600.600 INFO    ] 200
[2026-06-05 11:47:14,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:14,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:14,667.667 INFO    ] No update needed
[2026-06-05 11:47:14,670.670 INFO    ] Checking for camera pi updates...
[2026-06-05 11:47:14,708.708 INFO    ] 200
[2026-06-05 11:47:14,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:14,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:47:14,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:14,805.805 INFO    ] No camera update needed
[2026-06-05 11:47:14,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:47:14,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:47:14,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:47:14,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:47:16,862.862 INFO    ] ================================================
[2026-06-05 11:47:16,878.878 INFO    ] Launching Daemon at Fri Jun  5 11:47:16 IST 2026
[2026-06-05 11:47:16,889.889 INFO    ] ================================================
[2026-06-05 11:47:17,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:47:17
[2026-06-05 11:47:18,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:47:18,490.490 INFO    ] Initializing speech engine...
[2026-06-05 11:47:18,504.504 INFO    ] 2026-06-05 11:47:18
[2026-06-05 11:47:18,770.770 INFO    ] 2026-06-05 11:47:18
[2026-06-05 11:47:18,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:47:19,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:47:19,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:47:19,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:47:19,473.473 INFO    ] time= 05/06/2026 11:47:19
[2026-06-05 11:47:19,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:47:19,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:47:19,737.737 INFO    ] No existing commands found in stream
[2026-06-05 11:47:24,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:47:24,778.778 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 11:47:25,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:47:25,328.328 INFO    ] Checking for system updates...
[2026-06-05 11:47:25,366.366 INFO    ] 200
[2026-06-05 11:47:25,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:25,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:25,426.426 INFO    ] No update needed
[2026-06-05 11:47:25,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 11:47:25,463.463 INFO    ] 200
[2026-06-05 11:47:25,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:25,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:47:25,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:25,558.558 INFO    ] No camera update needed
[2026-06-05 11:47:25,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:47:25,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:47:25,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:47:25,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:47:27,619.619 INFO    ] ================================================
[2026-06-05 11:47:27,635.635 INFO    ] Launching Daemon at Fri Jun  5 11:47:27 IST 2026
[2026-06-05 11:47:27,646.646 INFO    ] ================================================
[2026-06-05 11:47:28,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:47:28
[2026-06-05 11:47:28,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:47:29,055.055 INFO    ] Initializing speech engine...
[2026-06-05 11:47:29,063.063 INFO    ] 2026-06-05 11:47:29
[2026-06-05 11:47:29,359.359 INFO    ] 2026-06-05 11:47:29
[2026-06-05 11:47:29,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:47:31,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:47:31,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:47:31,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:47:31,629.629 INFO    ] time= 05/06/2026 11:47:31
[2026-06-05 11:47:31,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:47:31,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:47:31,747.747 INFO    ] No existing commands found in stream
[2026-06-05 11:47:36,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:47:36,775.775 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 11:47:40,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:47:40,158.158 INFO    ] Checking for system updates...
[2026-06-05 11:47:40,194.194 INFO    ] 200
[2026-06-05 11:47:40,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:40,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:40,253.253 INFO    ] No update needed
[2026-06-05 11:47:40,255.255 INFO    ] Checking for camera pi updates...
[2026-06-05 11:47:40,292.292 INFO    ] 200
[2026-06-05 11:47:40,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:40,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:47:40,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:40,389.389 INFO    ] No camera update needed
[2026-06-05 11:47:40,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:47:40,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:47:40,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:47:40,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:47:42,446.446 INFO    ] ================================================
[2026-06-05 11:47:42,461.461 INFO    ] Launching Daemon at Fri Jun  5 11:47:42 IST 2026
[2026-06-05 11:47:42,473.473 INFO    ] ================================================
[2026-06-05 11:47:43,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:47:43
[2026-06-05 11:47:43,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:47:44,074.074 INFO    ] Initializing speech engine...
[2026-06-05 11:47:44,088.088 INFO    ] 2026-06-05 11:47:44
[2026-06-05 11:47:44,365.365 INFO    ] 2026-06-05 11:47:44
[2026-06-05 11:47:44,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:47:44,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:47:44,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:47:44,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:47:44,901.901 INFO    ] time= 05/06/2026 11:47:44
[2026-06-05 11:47:44,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:47:44,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:47:45,053.053 INFO    ] No existing commands found in stream
[2026-06-05 11:47:50,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:47:50,072.072 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 11:47:52,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:47:52,871.871 INFO    ] Checking for system updates...
[2026-06-05 11:47:52,908.908 INFO    ] 200
[2026-06-05 11:47:52,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:52,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:52,968.968 INFO    ] No update needed
[2026-06-05 11:47:52,970.970 INFO    ] Checking for camera pi updates...
[2026-06-05 11:47:53,005.005 INFO    ] 200
[2026-06-05 11:47:53,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:47:53,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:47:53,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:47:53,101.101 INFO    ] No camera update needed
[2026-06-05 11:47:53,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:47:53,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:47:53,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:47:53,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:47:55,161.161 INFO    ] ================================================
[2026-06-05 11:47:55,177.177 INFO    ] Launching Daemon at Fri Jun  5 11:47:55 IST 2026
[2026-06-05 11:47:55,188.188 INFO    ] ================================================
[2026-06-05 11:47:55,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:47:55
[2026-06-05 11:47:56,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:47:56,655.655 INFO    ] Initializing speech engine...
[2026-06-05 11:47:56,666.666 INFO    ] 2026-06-05 11:47:56
[2026-06-05 11:47:56,925.925 INFO    ] 2026-06-05 11:47:56
[2026-06-05 11:47:56,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:47:57,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:47:57,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:47:57,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:47:57,380.380 INFO    ] time= 05/06/2026 11:47:57
[2026-06-05 11:47:57,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:47:57,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:47:57,625.625 INFO    ] No existing commands found in stream
[2026-06-05 11:48:02,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:48:02,640.640 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 11:48:06,143.143 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:48:06,146.146 INFO    ] Checking for system updates...
[2026-06-05 11:48:06,183.183 INFO    ] 200
[2026-06-05 11:48:06,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:06,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:48:06,241.241 INFO    ] No update needed
[2026-06-05 11:48:06,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 11:48:06,277.277 INFO    ] 200
[2026-06-05 11:48:06,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:06,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:48:06,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:48:06,386.386 INFO    ] No camera update needed
[2026-06-05 11:48:06,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:48:06,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:48:06,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:48:06,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:48:08,443.443 INFO    ] ================================================
[2026-06-05 11:48:08,459.459 INFO    ] Launching Daemon at Fri Jun  5 11:48:08 IST 2026
[2026-06-05 11:48:08,471.471 INFO    ] ================================================
[2026-06-05 11:48:09,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:48:09
[2026-06-05 11:48:09,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:48:09,911.911 INFO    ] Initializing speech engine...
[2026-06-05 11:48:09,922.922 INFO    ] 2026-06-05 11:48:09
[2026-06-05 11:48:10,171.171 INFO    ] 2026-06-05 11:48:10
[2026-06-05 11:48:10,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:48:10,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:48:10,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:48:10,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:48:10,731.731 INFO    ] time= 05/06/2026 11:48:10
[2026-06-05 11:48:10,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:48:10,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:48:10,881.881 INFO    ] No existing commands found in stream
[2026-06-05 11:48:15,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:48:15,900.900 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 11:48:19,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:48:19,978.978 INFO    ] Checking for system updates...
[2026-06-05 11:48:20,017.017 INFO    ] 200
[2026-06-05 11:48:20,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:20,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:48:20,091.091 INFO    ] No update needed
[2026-06-05 11:48:20,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 11:48:20,127.127 INFO    ] 200
[2026-06-05 11:48:20,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:20,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:48:20,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:48:20,233.233 INFO    ] No camera update needed
[2026-06-05 11:48:20,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:48:20,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:48:20,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:48:20,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:48:22,298.298 INFO    ] ================================================
[2026-06-05 11:48:22,313.313 INFO    ] Launching Daemon at Fri Jun  5 11:48:22 IST 2026
[2026-06-05 11:48:22,324.324 INFO    ] ================================================
[2026-06-05 11:48:22,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:48:22
[2026-06-05 11:48:23,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:48:23,926.926 INFO    ] Initializing speech engine...
[2026-06-05 11:48:23,935.935 INFO    ] 2026-06-05 11:48:23
[2026-06-05 11:48:24,250.250 INFO    ] 2026-06-05 11:48:24
[2026-06-05 11:48:24,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:48:24,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:48:24,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:48:24,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:48:24,760.760 INFO    ] time= 05/06/2026 11:48:24
[2026-06-05 11:48:24,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:48:24,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:48:24,917.917 INFO    ] No existing commands found in stream
[2026-06-05 11:48:29,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:48:29,943.943 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 11:48:32,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:48:32,315.315 INFO    ] Checking for system updates...
[2026-06-05 11:48:32,356.356 INFO    ] 200
[2026-06-05 11:48:32,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:32,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:48:32,425.425 INFO    ] No update needed
[2026-06-05 11:48:32,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 11:48:32,471.471 INFO    ] 200
[2026-06-05 11:48:32,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:32,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:48:32,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:48:32,552.552 INFO    ] No camera update needed
[2026-06-05 11:48:32,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:48:32,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:48:32,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:48:32,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:48:34,623.623 INFO    ] ================================================
[2026-06-05 11:48:34,638.638 INFO    ] Launching Daemon at Fri Jun  5 11:48:34 IST 2026
[2026-06-05 11:48:34,648.648 INFO    ] ================================================
[2026-06-05 11:48:35,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:48:35
[2026-06-05 11:48:35,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:48:36,140.140 INFO    ] Initializing speech engine...
[2026-06-05 11:48:36,156.156 INFO    ] 2026-06-05 11:48:36
[2026-06-05 11:48:36,444.444 INFO    ] 2026-06-05 11:48:36
[2026-06-05 11:48:36,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:48:36,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:48:36,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:48:36,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:48:36,935.935 INFO    ] time= 05/06/2026 11:48:36
[2026-06-05 11:48:36,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:48:37,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:48:37,085.085 INFO    ] No existing commands found in stream
[2026-06-05 11:48:42,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:48:42,111.111 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 11:48:43,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:48:43,944.944 INFO    ] Checking for system updates...
[2026-06-05 11:48:43,984.984 INFO    ] 200
[2026-06-05 11:48:43,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:44,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:48:44,042.042 INFO    ] No update needed
[2026-06-05 11:48:44,044.044 INFO    ] Checking for camera pi updates...
[2026-06-05 11:48:44,078.078 INFO    ] 200
[2026-06-05 11:48:44,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:44,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:48:44,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:48:44,179.179 INFO    ] No camera update needed
[2026-06-05 11:48:44,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:48:44,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:48:44,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:48:44,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:48:46,236.236 INFO    ] ================================================
[2026-06-05 11:48:46,253.253 INFO    ] Launching Daemon at Fri Jun  5 11:48:46 IST 2026
[2026-06-05 11:48:46,267.267 INFO    ] ================================================
[2026-06-05 11:48:46,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:48:46
[2026-06-05 11:48:47,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:48:47,743.743 INFO    ] Initializing speech engine...
[2026-06-05 11:48:47,750.750 INFO    ] 2026-06-05 11:48:47
[2026-06-05 11:48:48,051.051 INFO    ] 2026-06-05 11:48:48
[2026-06-05 11:48:48,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:48:48,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:48:48,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:48:48,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:48:48,431.431 INFO    ] time= 05/06/2026 11:48:48
[2026-06-05 11:48:48,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:48:48,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:48:48,556.556 INFO    ] No existing commands found in stream
[2026-06-05 11:48:53,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:48:53,570.570 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 11:48:57,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:48:57,181.181 INFO    ] Checking for system updates...
[2026-06-05 11:48:57,218.218 INFO    ] 200
[2026-06-05 11:48:57,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:57,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:48:57,278.278 INFO    ] No update needed
[2026-06-05 11:48:57,280.280 INFO    ] Checking for camera pi updates...
[2026-06-05 11:48:57,315.315 INFO    ] 200
[2026-06-05 11:48:57,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:48:57,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:48:57,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:48:57,417.417 INFO    ] No camera update needed
[2026-06-05 11:48:57,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:48:57,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:48:57,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:48:57,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:48:59,475.475 INFO    ] ================================================
[2026-06-05 11:48:59,490.490 INFO    ] Launching Daemon at Fri Jun  5 11:48:59 IST 2026
[2026-06-05 11:48:59,501.501 INFO    ] ================================================
[2026-06-05 11:49:00,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:49:00
[2026-06-05 11:49:00,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:49:00,918.918 INFO    ] Initializing speech engine...
[2026-06-05 11:49:00,940.940 INFO    ] 2026-06-05 11:49:00
[2026-06-05 11:49:01,192.192 INFO    ] 2026-06-05 11:49:01
[2026-06-05 11:49:01,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:49:01,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:49:01,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:49:01,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:49:01,682.682 INFO    ] time= 05/06/2026 11:49:01
[2026-06-05 11:49:01,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:49:01,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:49:01,826.826 INFO    ] No existing commands found in stream
[2026-06-05 11:49:06,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:49:06,841.841 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 11:49:07,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:49:08,002.002 INFO    ] Checking for system updates...
[2026-06-05 11:49:08,038.038 INFO    ] 200
[2026-06-05 11:49:08,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:08,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:49:08,096.096 INFO    ] No update needed
[2026-06-05 11:49:08,098.098 INFO    ] Checking for camera pi updates...
[2026-06-05 11:49:08,132.132 INFO    ] 200
[2026-06-05 11:49:08,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:08,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:49:08,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:49:08,222.222 INFO    ] No camera update needed
[2026-06-05 11:49:08,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:49:08,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:49:08,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:49:08,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:49:10,283.283 INFO    ] ================================================
[2026-06-05 11:49:10,299.299 INFO    ] Launching Daemon at Fri Jun  5 11:49:10 IST 2026
[2026-06-05 11:49:10,310.310 INFO    ] ================================================
[2026-06-05 11:49:10,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:49:10
[2026-06-05 11:49:11,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:49:11,721.721 INFO    ] Initializing speech engine...
[2026-06-05 11:49:11,729.729 INFO    ] 2026-06-05 11:49:11
[2026-06-05 11:49:12,005.005 INFO    ] 2026-06-05 11:49:11
[2026-06-05 11:49:12,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:49:12,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:49:12,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:49:12,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:49:12,454.454 INFO    ] time= 05/06/2026 11:49:12
[2026-06-05 11:49:12,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:49:12,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:49:12,708.708 INFO    ] No existing commands found in stream
[2026-06-05 11:49:17,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:49:17,737.737 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 11:49:21,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:49:21,761.761 INFO    ] Checking for system updates...
[2026-06-05 11:49:21,796.796 INFO    ] 200
[2026-06-05 11:49:21,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:21,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:49:21,854.854 INFO    ] No update needed
[2026-06-05 11:49:21,857.857 INFO    ] Checking for camera pi updates...
[2026-06-05 11:49:21,894.894 INFO    ] 200
[2026-06-05 11:49:21,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:21,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:49:21,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:49:21,988.988 INFO    ] No camera update needed
[2026-06-05 11:49:21,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:49:21,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:49:21,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:49:22,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:49:24,044.044 INFO    ] ================================================
[2026-06-05 11:49:24,059.059 INFO    ] Launching Daemon at Fri Jun  5 11:49:24 IST 2026
[2026-06-05 11:49:24,071.071 INFO    ] ================================================
[2026-06-05 11:49:24,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:49:24
[2026-06-05 11:49:25,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:49:25,524.524 INFO    ] Initializing speech engine...
[2026-06-05 11:49:25,540.540 INFO    ] 2026-06-05 11:49:25
[2026-06-05 11:49:25,828.828 INFO    ] 2026-06-05 11:49:25
[2026-06-05 11:49:25,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:49:26,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:49:26,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:49:26,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:49:26,242.242 INFO    ] time= 05/06/2026 11:49:26
[2026-06-05 11:49:26,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:49:26,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:49:26,332.332 INFO    ] No existing commands found in stream
[2026-06-05 11:49:31,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:49:31,365.365 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 11:49:33,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:49:33,839.839 INFO    ] Checking for system updates...
[2026-06-05 11:49:33,875.875 INFO    ] 200
[2026-06-05 11:49:33,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:33,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:49:33,933.933 INFO    ] No update needed
[2026-06-05 11:49:33,935.935 INFO    ] Checking for camera pi updates...
[2026-06-05 11:49:33,970.970 INFO    ] 200
[2026-06-05 11:49:33,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:34,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:49:34,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:49:34,061.061 INFO    ] No camera update needed
[2026-06-05 11:49:34,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:49:34,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:49:34,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:49:34,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:49:36,117.117 INFO    ] ================================================
[2026-06-05 11:49:36,133.133 INFO    ] Launching Daemon at Fri Jun  5 11:49:36 IST 2026
[2026-06-05 11:49:36,143.143 INFO    ] ================================================
[2026-06-05 11:49:36,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:49:36
[2026-06-05 11:49:37,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:49:37,592.592 INFO    ] Initializing speech engine...
[2026-06-05 11:49:37,608.608 INFO    ] 2026-06-05 11:49:37
[2026-06-05 11:49:37,894.894 INFO    ] 2026-06-05 11:49:37
[2026-06-05 11:49:37,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:49:38,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:49:38,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:49:38,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:49:38,419.419 INFO    ] time= 05/06/2026 11:49:38
[2026-06-05 11:49:38,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:49:38,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:49:38,791.791 INFO    ] No existing commands found in stream
[2026-06-05 11:49:43,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:49:43,810.810 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 11:49:44,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:49:44,354.354 INFO    ] Checking for system updates...
[2026-06-05 11:49:44,390.390 INFO    ] 200
[2026-06-05 11:49:44,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:44,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:49:44,448.448 INFO    ] No update needed
[2026-06-05 11:49:44,450.450 INFO    ] Checking for camera pi updates...
[2026-06-05 11:49:44,484.484 INFO    ] 200
[2026-06-05 11:49:44,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:44,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:49:44,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:49:44,572.572 INFO    ] No camera update needed
[2026-06-05 11:49:44,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:49:44,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:49:44,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:49:44,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:49:46,628.628 INFO    ] ================================================
[2026-06-05 11:49:46,643.643 INFO    ] Launching Daemon at Fri Jun  5 11:49:46 IST 2026
[2026-06-05 11:49:46,654.654 INFO    ] ================================================
[2026-06-05 11:49:47,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:49:47
[2026-06-05 11:49:47,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:49:48,094.094 INFO    ] Initializing speech engine...
[2026-06-05 11:49:48,101.101 INFO    ] 2026-06-05 11:49:48
[2026-06-05 11:49:48,392.392 INFO    ] 2026-06-05 11:49:48
[2026-06-05 11:49:48,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:49:48,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:49:48,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:49:48,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:49:48,801.801 INFO    ] time= 05/06/2026 11:49:48
[2026-06-05 11:49:48,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:49:48,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:49:48,887.887 INFO    ] No existing commands found in stream
[2026-06-05 11:49:53,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:49:53,925.925 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 11:49:57,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:49:57,711.711 INFO    ] Checking for system updates...
[2026-06-05 11:49:57,751.751 INFO    ] 200
[2026-06-05 11:49:57,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:57,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:49:57,809.809 INFO    ] No update needed
[2026-06-05 11:49:57,811.811 INFO    ] Checking for camera pi updates...
[2026-06-05 11:49:57,845.845 INFO    ] 200
[2026-06-05 11:49:57,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:49:57,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:49:57,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:49:57,940.940 INFO    ] No camera update needed
[2026-06-05 11:49:57,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:49:57,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:49:57,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:49:57,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:50:00,995.995 INFO    ] ================================================
[2026-06-05 11:50:00,010.010 INFO    ] Launching Daemon at Fri Jun  5 11:50:00 IST 2026
[2026-06-05 11:50:00,021.021 INFO    ] ================================================
[2026-06-05 11:50:00,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:50:00
[2026-06-05 11:50:01,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:50:02,188.188 INFO    ] Initializing speech engine...
[2026-06-05 11:50:02,192.192 INFO    ] 2026-06-05 11:50:02
[2026-06-05 11:50:02,548.548 INFO    ] 2026-06-05 11:50:02
[2026-06-05 11:50:02,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:50:02,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:50:02,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:50:03,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:50:03,131.131 INFO    ] time= 05/06/2026 11:50:03
[2026-06-05 11:50:03,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:50:03,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:50:03,314.314 INFO    ] No existing commands found in stream
[2026-06-05 11:50:08,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:50:08,342.342 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 11:50:09,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:50:09,381.381 INFO    ] Checking for system updates...
[2026-06-05 11:50:09,421.421 INFO    ] 200
[2026-06-05 11:50:09,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:09,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:50:09,486.486 INFO    ] No update needed
[2026-06-05 11:50:09,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 11:50:09,545.545 INFO    ] 200
[2026-06-05 11:50:09,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:09,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:50:09,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:50:09,661.661 INFO    ] No camera update needed
[2026-06-05 11:50:09,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:50:09,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:50:09,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:50:09,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:50:11,718.718 INFO    ] ================================================
[2026-06-05 11:50:11,734.734 INFO    ] Launching Daemon at Fri Jun  5 11:50:11 IST 2026
[2026-06-05 11:50:11,745.745 INFO    ] ================================================
[2026-06-05 11:50:12,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:50:12
[2026-06-05 11:50:13,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:50:13,400.400 INFO    ] Initializing speech engine...
[2026-06-05 11:50:13,407.407 INFO    ] 2026-06-05 11:50:13
[2026-06-05 11:50:13,670.670 INFO    ] 2026-06-05 11:50:13
[2026-06-05 11:50:13,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:50:13,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:50:13,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:50:14,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:50:14,096.096 INFO    ] time= 05/06/2026 11:50:14
[2026-06-05 11:50:14,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:50:14,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:50:14,252.252 INFO    ] No existing commands found in stream
[2026-06-05 11:50:19,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:50:19,280.280 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 11:50:20,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:50:20,007.007 INFO    ] Checking for system updates...
[2026-06-05 11:50:20,042.042 INFO    ] 200
[2026-06-05 11:50:20,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:20,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:50:20,100.100 INFO    ] No update needed
[2026-06-05 11:50:20,102.102 INFO    ] Checking for camera pi updates...
[2026-06-05 11:50:20,140.140 INFO    ] 200
[2026-06-05 11:50:20,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:20,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:50:20,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:50:20,236.236 INFO    ] No camera update needed
[2026-06-05 11:50:20,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:50:20,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:50:20,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:50:20,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:50:22,291.291 INFO    ] ================================================
[2026-06-05 11:50:22,307.307 INFO    ] Launching Daemon at Fri Jun  5 11:50:22 IST 2026
[2026-06-05 11:50:22,318.318 INFO    ] ================================================
[2026-06-05 11:50:22,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:50:22
[2026-06-05 11:50:23,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:50:23,755.755 INFO    ] Initializing speech engine...
[2026-06-05 11:50:23,762.762 INFO    ] 2026-06-05 11:50:23
[2026-06-05 11:50:24,012.012 INFO    ] 2026-06-05 11:50:24
[2026-06-05 11:50:24,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:50:24,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:50:24,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:50:24,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:50:24,489.489 INFO    ] time= 05/06/2026 11:50:24
[2026-06-05 11:50:24,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:50:24,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:50:24,713.713 INFO    ] No existing commands found in stream
[2026-06-05 11:50:29,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:50:29,735.735 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 11:50:31,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:50:31,900.900 INFO    ] Checking for system updates...
[2026-06-05 11:50:31,942.942 INFO    ] 200
[2026-06-05 11:50:31,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:32,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:50:32,005.005 INFO    ] No update needed
[2026-06-05 11:50:32,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 11:50:32,044.044 INFO    ] 200
[2026-06-05 11:50:32,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:32,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:50:32,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:50:32,135.135 INFO    ] No camera update needed
[2026-06-05 11:50:32,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:50:32,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:50:32,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:50:32,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:50:34,197.197 INFO    ] ================================================
[2026-06-05 11:50:34,213.213 INFO    ] Launching Daemon at Fri Jun  5 11:50:34 IST 2026
[2026-06-05 11:50:34,224.224 INFO    ] ================================================
[2026-06-05 11:50:34,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:50:34
[2026-06-05 11:50:35,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:50:35,682.682 INFO    ] Initializing speech engine...
[2026-06-05 11:50:35,700.700 INFO    ] 2026-06-05 11:50:35
[2026-06-05 11:50:35,977.977 INFO    ] 2026-06-05 11:50:35
[2026-06-05 11:50:36,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:50:36,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:50:36,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:50:36,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:50:36,361.361 INFO    ] time= 05/06/2026 11:50:36
[2026-06-05 11:50:36,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:50:36,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:50:36,487.487 INFO    ] No existing commands found in stream
[2026-06-05 11:50:41,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:50:41,502.502 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 11:50:42,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:50:42,616.616 INFO    ] Checking for system updates...
[2026-06-05 11:50:42,653.653 INFO    ] 200
[2026-06-05 11:50:42,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:42,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:50:42,721.721 INFO    ] No update needed
[2026-06-05 11:50:42,724.724 INFO    ] Checking for camera pi updates...
[2026-06-05 11:50:42,759.759 INFO    ] 200
[2026-06-05 11:50:42,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:42,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:50:42,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:50:42,961.961 INFO    ] No camera update needed
[2026-06-05 11:50:42,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:50:42,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:50:42,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:50:42,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:50:45,017.017 INFO    ] ================================================
[2026-06-05 11:50:45,033.033 INFO    ] Launching Daemon at Fri Jun  5 11:50:45 IST 2026
[2026-06-05 11:50:45,044.044 INFO    ] ================================================
[2026-06-05 11:50:45,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:50:45
[2026-06-05 11:50:46,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:50:46,475.475 INFO    ] Initializing speech engine...
[2026-06-05 11:50:46,488.488 INFO    ] 2026-06-05 11:50:46
[2026-06-05 11:50:46,773.773 INFO    ] 2026-06-05 11:50:46
[2026-06-05 11:50:46,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:50:46,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:50:46,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:50:47,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:50:47,127.127 INFO    ] time= 05/06/2026 11:50:47
[2026-06-05 11:50:47,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:50:47,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:50:47,281.281 INFO    ] No existing commands found in stream
[2026-06-05 11:50:52,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:50:52,294.294 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 11:50:53,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:50:54,001.001 INFO    ] Checking for system updates...
[2026-06-05 11:50:54,038.038 INFO    ] 200
[2026-06-05 11:50:54,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:54,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:50:54,105.105 INFO    ] No update needed
[2026-06-05 11:50:54,108.108 INFO    ] Checking for camera pi updates...
[2026-06-05 11:50:54,143.143 INFO    ] 200
[2026-06-05 11:50:54,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:50:54,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:50:54,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:50:54,242.242 INFO    ] No camera update needed
[2026-06-05 11:50:54,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:50:54,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:50:54,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:50:54,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:50:56,300.300 INFO    ] ================================================
[2026-06-05 11:50:56,315.315 INFO    ] Launching Daemon at Fri Jun  5 11:50:56 IST 2026
[2026-06-05 11:50:56,326.326 INFO    ] ================================================
[2026-06-05 11:50:56,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:50:56
[2026-06-05 11:50:57,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:50:57,839.839 INFO    ] Initializing speech engine...
[2026-06-05 11:50:57,851.851 INFO    ] 2026-06-05 11:50:57
[2026-06-05 11:50:58,159.159 INFO    ] 2026-06-05 11:50:58
[2026-06-05 11:50:58,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:50:58,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:50:58,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:50:58,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:50:58,666.666 INFO    ] time= 05/06/2026 11:50:58
[2026-06-05 11:50:58,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:50:58,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:50:58,824.824 INFO    ] No existing commands found in stream
[2026-06-05 11:51:03,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:51:03,848.848 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 11:51:07,104.104 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:51:07,107.107 INFO    ] Checking for system updates...
[2026-06-05 11:51:07,145.145 INFO    ] 200
[2026-06-05 11:51:07,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:51:07,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:51:07,203.203 INFO    ] No update needed
[2026-06-05 11:51:07,206.206 INFO    ] Checking for camera pi updates...
[2026-06-05 11:51:07,240.240 INFO    ] 200
[2026-06-05 11:51:07,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:51:07,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:51:07,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:51:07,339.339 INFO    ] No camera update needed
[2026-06-05 11:51:07,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:51:07,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:51:07,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:51:07,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:51:09,396.396 INFO    ] ================================================
[2026-06-05 11:51:09,413.413 INFO    ] Launching Daemon at Fri Jun  5 11:51:09 IST 2026
[2026-06-05 11:51:09,425.425 INFO    ] ================================================
[2026-06-05 11:51:10,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:51:10
[2026-06-05 11:51:10,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:51:10,931.931 INFO    ] Initializing speech engine...
[2026-06-05 11:51:10,940.940 INFO    ] 2026-06-05 11:51:10
[2026-06-05 11:51:11,201.201 INFO    ] 2026-06-05 11:51:11
[2026-06-05 11:51:11,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:51:11,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:51:11,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:51:11,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:51:11,667.667 INFO    ] time= 05/06/2026 11:51:11
[2026-06-05 11:51:11,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:51:11,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:51:11,905.905 INFO    ] No existing commands found in stream
[2026-06-05 11:51:16,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:51:16,936.936 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 11:51:20,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:51:20,268.268 INFO    ] Checking for system updates...
[2026-06-05 11:51:20,305.305 INFO    ] 200
[2026-06-05 11:51:20,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:51:20,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:51:20,364.364 INFO    ] No update needed
[2026-06-05 11:51:20,366.366 INFO    ] Checking for camera pi updates...
[2026-06-05 11:51:20,400.400 INFO    ] 200
[2026-06-05 11:51:20,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:51:20,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:51:20,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:51:20,495.495 INFO    ] No camera update needed
[2026-06-05 11:51:20,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:51:20,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:51:20,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:51:20,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:51:22,552.552 INFO    ] ================================================
[2026-06-05 11:51:22,567.567 INFO    ] Launching Daemon at Fri Jun  5 11:51:22 IST 2026
[2026-06-05 11:51:22,578.578 INFO    ] ================================================
[2026-06-05 11:51:23,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:51:23
[2026-06-05 11:51:23,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:51:24,123.123 INFO    ] Initializing speech engine...
[2026-06-05 11:51:24,132.132 INFO    ] 2026-06-05 11:51:24
[2026-06-05 11:51:24,393.393 INFO    ] 2026-06-05 11:51:24
[2026-06-05 11:51:24,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:51:24,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:51:24,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:51:24,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:51:24,874.874 INFO    ] time= 05/06/2026 11:51:24
[2026-06-05 11:51:24,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:51:24,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:51:25,105.105 INFO    ] No existing commands found in stream
[2026-06-05 11:51:30,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:51:30,122.122 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 11:51:33,550.550 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:51:33,553.553 INFO    ] Checking for system updates...
[2026-06-05 11:51:33,590.590 INFO    ] 200
[2026-06-05 11:51:33,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:51:33,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:51:33,650.650 INFO    ] No update needed
[2026-06-05 11:51:33,653.653 INFO    ] Checking for camera pi updates...
[2026-06-05 11:51:33,688.688 INFO    ] 200
[2026-06-05 11:51:33,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:51:33,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:51:33,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:51:33,789.789 INFO    ] No camera update needed
[2026-06-05 11:51:33,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:51:33,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:51:33,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:51:33,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:51:35,846.846 INFO    ] ================================================
[2026-06-05 11:51:35,861.861 INFO    ] Launching Daemon at Fri Jun  5 11:51:35 IST 2026
[2026-06-05 11:51:35,872.872 INFO    ] ================================================
[2026-06-05 11:51:36,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:51:36
[2026-06-05 11:51:37,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:51:37,274.274 INFO    ] Initializing speech engine...
[2026-06-05 11:51:37,282.282 INFO    ] 2026-06-05 11:51:37
[2026-06-05 11:51:37,552.552 INFO    ] 2026-06-05 11:51:37
[2026-06-05 11:51:37,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:51:37,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:51:37,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:51:37,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:51:37,994.994 INFO    ] time= 05/06/2026 11:51:37
[2026-06-05 11:51:38,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:51:38,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:51:38,171.171 INFO    ] No existing commands found in stream
[2026-06-05 11:51:43,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:51:43,187.187 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 11:51:47,210.210 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:51:47,214.214 INFO    ] Checking for system updates...
[2026-06-05 11:51:47,255.255 INFO    ] 200
[2026-06-05 11:51:47,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:51:47,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:51:47,314.314 INFO    ] No update needed
[2026-06-05 11:51:47,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 11:51:47,351.351 INFO    ] 200
[2026-06-05 11:51:47,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:51:47,415.415 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:51:47,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:51:47,473.473 INFO    ] No camera update needed
[2026-06-05 11:51:47,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:51:47,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:51:47,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:51:47,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:51:49,530.530 INFO    ] ================================================
[2026-06-05 11:51:49,545.545 INFO    ] Launching Daemon at Fri Jun  5 11:51:49 IST 2026
[2026-06-05 11:51:49,555.555 INFO    ] ================================================
[2026-06-05 11:51:50,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:51:50
[2026-06-05 11:51:50,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:51:50,992.992 INFO    ] Initializing speech engine...
[2026-06-05 11:51:51,006.006 INFO    ] 2026-06-05 11:51:50
[2026-06-05 11:51:51,266.266 INFO    ] 2026-06-05 11:51:51
[2026-06-05 11:51:51,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:51:51,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:51:51,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:51:51,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:51:51,756.756 INFO    ] time= 05/06/2026 11:51:51
[2026-06-05 11:51:51,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:51:51,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:51:51,928.928 INFO    ] No existing commands found in stream
[2026-06-05 11:51:56,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:51:56,958.958 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 11:52:01,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:52:01,984.984 INFO    ] Checking for system updates...
[2026-06-05 11:52:02,027.027 INFO    ] 200
[2026-06-05 11:52:02,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:02,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:52:02,099.099 INFO    ] No update needed
[2026-06-05 11:52:02,102.102 INFO    ] Checking for camera pi updates...
[2026-06-05 11:52:02,142.142 INFO    ] 200
[2026-06-05 11:52:02,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:02,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:52:02,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:52:02,345.345 INFO    ] No camera update needed
[2026-06-05 11:52:02,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:52:02,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:52:02,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:52:02,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:52:04,409.409 INFO    ] ================================================
[2026-06-05 11:52:04,424.424 INFO    ] Launching Daemon at Fri Jun  5 11:52:04 IST 2026
[2026-06-05 11:52:04,435.435 INFO    ] ================================================
[2026-06-05 11:52:05,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:52:05
[2026-06-05 11:52:05,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:52:05,897.897 INFO    ] Initializing speech engine...
[2026-06-05 11:52:05,906.906 INFO    ] 2026-06-05 11:52:05
[2026-06-05 11:52:06,155.155 INFO    ] 2026-06-05 11:52:06
[2026-06-05 11:52:06,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:52:06,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:52:06,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:52:06,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:52:06,525.525 INFO    ] time= 05/06/2026 11:52:06
[2026-06-05 11:52:06,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:52:06,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:52:06,723.723 INFO    ] No existing commands found in stream
[2026-06-05 11:52:11,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:52:11,737.737 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 11:52:13,099.099 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 11:52:13,102.102 INFO    ] Checking for system updates...
[2026-06-05 11:52:13,138.138 INFO    ] 200
[2026-06-05 11:52:13,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:13,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:52:13,195.195 INFO    ] No update needed
[2026-06-05 11:52:13,197.197 INFO    ] Checking for camera pi updates...
[2026-06-05 11:52:13,231.231 INFO    ] 200
[2026-06-05 11:52:13,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:13,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:52:13,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:52:13,329.329 INFO    ] No camera update needed
[2026-06-05 11:52:13,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:52:13,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:52:13,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:52:13,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:52:15,384.384 INFO    ] ================================================
[2026-06-05 11:52:15,399.399 INFO    ] Launching Daemon at Fri Jun  5 11:52:15 IST 2026
[2026-06-05 11:52:15,410.410 INFO    ] ================================================
[2026-06-05 11:52:15,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:52:15
[2026-06-05 11:52:16,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:52:16,818.818 INFO    ] Initializing speech engine...
[2026-06-05 11:52:16,824.824 INFO    ] 2026-06-05 11:52:16
[2026-06-05 11:52:17,115.115 INFO    ] 2026-06-05 11:52:17
[2026-06-05 11:52:17,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:52:17,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:52:17,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:52:17,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:52:17,528.528 INFO    ] time= 05/06/2026 11:52:17
[2026-06-05 11:52:17,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:52:17,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:52:17,681.681 INFO    ] No existing commands found in stream
[2026-06-05 11:52:22,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:52:22,714.714 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 11:52:26,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:52:26,486.486 INFO    ] Checking for system updates...
[2026-06-05 11:52:26,522.522 INFO    ] 200
[2026-06-05 11:52:26,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:26,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:52:26,583.583 INFO    ] No update needed
[2026-06-05 11:52:26,586.586 INFO    ] Checking for camera pi updates...
[2026-06-05 11:52:26,622.622 INFO    ] 200
[2026-06-05 11:52:26,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:26,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:52:26,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:52:26,731.731 INFO    ] No camera update needed
[2026-06-05 11:52:26,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:52:26,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:52:26,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:52:26,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:52:28,788.788 INFO    ] ================================================
[2026-06-05 11:52:28,803.803 INFO    ] Launching Daemon at Fri Jun  5 11:52:28 IST 2026
[2026-06-05 11:52:28,814.814 INFO    ] ================================================
[2026-06-05 11:52:29,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:52:29
[2026-06-05 11:52:29,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:52:30,222.222 INFO    ] Initializing speech engine...
[2026-06-05 11:52:30,230.230 INFO    ] 2026-06-05 11:52:30
[2026-06-05 11:52:30,522.522 INFO    ] 2026-06-05 11:52:30
[2026-06-05 11:52:30,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:52:31,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:52:31,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:52:31,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:52:31,906.906 INFO    ] time= 05/06/2026 11:52:31
[2026-06-05 11:52:31,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:52:31,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:52:32,037.037 INFO    ] No existing commands found in stream
[2026-06-05 11:52:37,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:52:37,070.070 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 11:52:39,076.076 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:52:39,078.078 INFO    ] Checking for system updates...
[2026-06-05 11:52:39,114.114 INFO    ] 200
[2026-06-05 11:52:39,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:39,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:52:39,173.173 INFO    ] No update needed
[2026-06-05 11:52:39,175.175 INFO    ] Checking for camera pi updates...
[2026-06-05 11:52:39,210.210 INFO    ] 200
[2026-06-05 11:52:39,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:39,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:52:39,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:52:39,306.306 INFO    ] No camera update needed
[2026-06-05 11:52:39,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:52:39,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:52:39,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:52:39,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:52:41,366.366 INFO    ] ================================================
[2026-06-05 11:52:41,381.381 INFO    ] Launching Daemon at Fri Jun  5 11:52:41 IST 2026
[2026-06-05 11:52:41,392.392 INFO    ] ================================================
[2026-06-05 11:52:41,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:52:41
[2026-06-05 11:52:42,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:52:42,859.859 INFO    ] Initializing speech engine...
[2026-06-05 11:52:42,867.867 INFO    ] 2026-06-05 11:52:42
[2026-06-05 11:52:43,128.128 INFO    ] 2026-06-05 11:52:43
[2026-06-05 11:52:43,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:52:43,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:52:43,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:52:43,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:52:43,671.671 INFO    ] time= 05/06/2026 11:52:43
[2026-06-05 11:52:43,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:52:43,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:52:43,823.823 INFO    ] No existing commands found in stream
[2026-06-05 11:52:48,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:52:48,841.841 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 11:52:50,825.825 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:52:50,828.828 INFO    ] Checking for system updates...
[2026-06-05 11:52:50,863.863 INFO    ] 200
[2026-06-05 11:52:50,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:50,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:52:50,921.921 INFO    ] No update needed
[2026-06-05 11:52:50,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 11:52:50,959.959 INFO    ] 200
[2026-06-05 11:52:50,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:52:51,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:52:51,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:52:51,157.157 INFO    ] No camera update needed
[2026-06-05 11:52:51,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:52:51,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:52:51,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:52:51,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:52:53,213.213 INFO    ] ================================================
[2026-06-05 11:52:53,229.229 INFO    ] Launching Daemon at Fri Jun  5 11:52:53 IST 2026
[2026-06-05 11:52:53,241.241 INFO    ] ================================================
[2026-06-05 11:52:53,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:52:53
[2026-06-05 11:52:54,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:52:54,868.868 INFO    ] Initializing speech engine...
[2026-06-05 11:52:54,881.881 INFO    ] 2026-06-05 11:52:54
[2026-06-05 11:52:55,158.158 INFO    ] 2026-06-05 11:52:55
[2026-06-05 11:52:55,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:52:55,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:52:55,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:52:55,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:52:55,699.699 INFO    ] time= 05/06/2026 11:52:55
[2026-06-05 11:52:55,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:52:55,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:52:55,856.856 INFO    ] No existing commands found in stream
[2026-06-05 11:53:00,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:53:00,880.880 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 11:53:04,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:53:04,859.859 INFO    ] Checking for system updates...
[2026-06-05 11:53:04,896.896 INFO    ] 200
[2026-06-05 11:53:04,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:04,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:53:04,960.960 INFO    ] No update needed
[2026-06-05 11:53:04,962.962 INFO    ] Checking for camera pi updates...
[2026-06-05 11:53:05,001.001 INFO    ] 200
[2026-06-05 11:53:05,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:05,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:53:05,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:53:05,081.081 INFO    ] No camera update needed
[2026-06-05 11:53:05,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:53:05,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:53:05,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:53:05,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:53:07,138.138 INFO    ] ================================================
[2026-06-05 11:53:07,154.154 INFO    ] Launching Daemon at Fri Jun  5 11:53:07 IST 2026
[2026-06-05 11:53:07,164.164 INFO    ] ================================================
[2026-06-05 11:53:07,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:53:07
[2026-06-05 11:53:08,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:53:08,765.765 INFO    ] Initializing speech engine...
[2026-06-05 11:53:08,772.772 INFO    ] 2026-06-05 11:53:08
[2026-06-05 11:53:09,067.067 INFO    ] 2026-06-05 11:53:09
[2026-06-05 11:53:09,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:53:09,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:53:09,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:53:10,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:53:10,060.060 INFO    ] time= 05/06/2026 11:53:10
[2026-06-05 11:53:10,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:53:10,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:53:10,236.236 INFO    ] No existing commands found in stream
[2026-06-05 11:53:15,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:53:15,264.264 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 11:53:16,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:53:16,136.136 INFO    ] Checking for system updates...
[2026-06-05 11:53:16,173.173 INFO    ] 200
[2026-06-05 11:53:16,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:16,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:53:16,240.240 INFO    ] No update needed
[2026-06-05 11:53:16,242.242 INFO    ] Checking for camera pi updates...
[2026-06-05 11:53:16,277.277 INFO    ] 200
[2026-06-05 11:53:16,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:16,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:53:16,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:53:16,370.370 INFO    ] No camera update needed
[2026-06-05 11:53:16,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:53:16,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:53:16,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:53:16,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:53:18,428.428 INFO    ] ================================================
[2026-06-05 11:53:18,443.443 INFO    ] Launching Daemon at Fri Jun  5 11:53:18 IST 2026
[2026-06-05 11:53:18,454.454 INFO    ] ================================================
[2026-06-05 11:53:19,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:53:19
[2026-06-05 11:53:19,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:53:20,097.097 INFO    ] Initializing speech engine...
[2026-06-05 11:53:20,103.103 INFO    ] 2026-06-05 11:53:20
[2026-06-05 11:53:20,411.411 INFO    ] 2026-06-05 11:53:20
[2026-06-05 11:53:20,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:53:20,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:53:20,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:53:20,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:53:20,909.909 INFO    ] time= 05/06/2026 11:53:20
[2026-06-05 11:53:20,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:53:20,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:53:21,052.052 INFO    ] No existing commands found in stream
[2026-06-05 11:53:26,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:53:26,077.077 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 11:53:26,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:53:26,517.517 INFO    ] Checking for system updates...
[2026-06-05 11:53:26,553.553 INFO    ] 200
[2026-06-05 11:53:26,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:26,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:53:26,611.611 INFO    ] No update needed
[2026-06-05 11:53:26,614.614 INFO    ] Checking for camera pi updates...
[2026-06-05 11:53:26,648.648 INFO    ] 200
[2026-06-05 11:53:26,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:26,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:53:26,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:53:26,741.741 INFO    ] No camera update needed
[2026-06-05 11:53:26,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:53:26,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:53:26,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:53:26,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:53:28,797.797 INFO    ] ================================================
[2026-06-05 11:53:28,813.813 INFO    ] Launching Daemon at Fri Jun  5 11:53:28 IST 2026
[2026-06-05 11:53:28,824.824 INFO    ] ================================================
[2026-06-05 11:53:29,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:53:29
[2026-06-05 11:53:29,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:53:30,241.241 INFO    ] Initializing speech engine...
[2026-06-05 11:53:30,255.255 INFO    ] 2026-06-05 11:53:30
[2026-06-05 11:53:30,542.542 INFO    ] 2026-06-05 11:53:30
[2026-06-05 11:53:30,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:53:31,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:53:31,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:53:31,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:53:31,828.828 INFO    ] time= 05/06/2026 11:53:31
[2026-06-05 11:53:31,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:53:31,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:53:31,944.944 INFO    ] No existing commands found in stream
[2026-06-05 11:53:36,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:53:36,967.967 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 11:53:38,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:53:38,344.344 INFO    ] Checking for system updates...
[2026-06-05 11:53:38,380.380 INFO    ] 200
[2026-06-05 11:53:38,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:38,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:53:38,438.438 INFO    ] No update needed
[2026-06-05 11:53:38,441.441 INFO    ] Checking for camera pi updates...
[2026-06-05 11:53:38,476.476 INFO    ] 200
[2026-06-05 11:53:38,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:38,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:53:38,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:53:38,569.569 INFO    ] No camera update needed
[2026-06-05 11:53:38,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:53:38,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:53:38,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:53:38,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:53:40,625.625 INFO    ] ================================================
[2026-06-05 11:53:40,640.640 INFO    ] Launching Daemon at Fri Jun  5 11:53:40 IST 2026
[2026-06-05 11:53:40,650.650 INFO    ] ================================================
[2026-06-05 11:53:41,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:53:41
[2026-06-05 11:53:41,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:53:42,311.311 INFO    ] Initializing speech engine...
[2026-06-05 11:53:42,322.322 INFO    ] 2026-06-05 11:53:42
[2026-06-05 11:53:42,610.610 INFO    ] 2026-06-05 11:53:42
[2026-06-05 11:53:42,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:53:42,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:53:42,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:53:43,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:53:43,099.099 INFO    ] time= 05/06/2026 11:53:43
[2026-06-05 11:53:43,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:53:43,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:53:43,320.320 INFO    ] No existing commands found in stream
[2026-06-05 11:53:48,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:53:48,340.340 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 11:53:49,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:53:49,098.098 INFO    ] Checking for system updates...
[2026-06-05 11:53:49,137.137 INFO    ] 200
[2026-06-05 11:53:49,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:49,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:53:49,196.196 INFO    ] No update needed
[2026-06-05 11:53:49,199.199 INFO    ] Checking for camera pi updates...
[2026-06-05 11:53:49,237.237 INFO    ] 200
[2026-06-05 11:53:49,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:53:49,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:53:49,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:53:49,335.335 INFO    ] No camera update needed
[2026-06-05 11:53:49,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:53:49,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:53:49,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:53:49,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:53:51,391.391 INFO    ] ================================================
[2026-06-05 11:53:51,407.407 INFO    ] Launching Daemon at Fri Jun  5 11:53:51 IST 2026
[2026-06-05 11:53:51,417.417 INFO    ] ================================================
[2026-06-05 11:53:52,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:53:52
[2026-06-05 11:53:52,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:53:53,049.049 INFO    ] Initializing speech engine...
[2026-06-05 11:53:53,059.059 INFO    ] 2026-06-05 11:53:53
[2026-06-05 11:53:53,310.310 INFO    ] 2026-06-05 11:53:53
[2026-06-05 11:53:53,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:53:53,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:53:53,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:53:53,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:53:53,838.838 INFO    ] time= 05/06/2026 11:53:53
[2026-06-05 11:53:53,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:53:53,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:53:54,037.037 INFO    ] No existing commands found in stream
[2026-06-05 11:53:59,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:53:59,054.054 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 11:54:01,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:54:01,666.666 INFO    ] Checking for system updates...
[2026-06-05 11:54:01,707.707 INFO    ] 200
[2026-06-05 11:54:01,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:01,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:54:01,799.799 INFO    ] No update needed
[2026-06-05 11:54:01,803.803 INFO    ] Checking for camera pi updates...
[2026-06-05 11:54:01,883.883 INFO    ] 200
[2026-06-05 11:54:01,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:01,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:54:02,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:54:02,071.071 INFO    ] No camera update needed
[2026-06-05 11:54:02,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:54:02,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:54:02,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:54:02,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:54:04,137.137 INFO    ] ================================================
[2026-06-05 11:54:04,152.152 INFO    ] Launching Daemon at Fri Jun  5 11:54:04 IST 2026
[2026-06-05 11:54:04,163.163 INFO    ] ================================================
[2026-06-05 11:54:04,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:54:04
[2026-06-05 11:54:05,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:54:05,618.618 INFO    ] Initializing speech engine...
[2026-06-05 11:54:05,627.627 INFO    ] 2026-06-05 11:54:05
[2026-06-05 11:54:05,883.883 INFO    ] 2026-06-05 11:54:05
[2026-06-05 11:54:05,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:54:06,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:54:06,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:54:06,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:54:06,435.435 INFO    ] time= 05/06/2026 11:54:06
[2026-06-05 11:54:06,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:54:06,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:54:06,598.598 INFO    ] No existing commands found in stream
[2026-06-05 11:54:11,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:54:11,623.623 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 11:54:15,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:54:15,432.432 INFO    ] Checking for system updates...
[2026-06-05 11:54:15,471.471 INFO    ] 200
[2026-06-05 11:54:15,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:15,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:54:15,530.530 INFO    ] No update needed
[2026-06-05 11:54:15,532.532 INFO    ] Checking for camera pi updates...
[2026-06-05 11:54:15,568.568 INFO    ] 200
[2026-06-05 11:54:15,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:15,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:54:15,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:54:15,668.668 INFO    ] No camera update needed
[2026-06-05 11:54:15,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:54:15,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:54:15,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:54:15,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:54:17,729.729 INFO    ] ================================================
[2026-06-05 11:54:17,744.744 INFO    ] Launching Daemon at Fri Jun  5 11:54:17 IST 2026
[2026-06-05 11:54:17,755.755 INFO    ] ================================================
[2026-06-05 11:54:18,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:54:18
[2026-06-05 11:54:18,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:54:19,234.234 INFO    ] Initializing speech engine...
[2026-06-05 11:54:19,241.241 INFO    ] 2026-06-05 11:54:19
[2026-06-05 11:54:19,528.528 INFO    ] 2026-06-05 11:54:19
[2026-06-05 11:54:19,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:54:19,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:54:19,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:54:20,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:54:20,080.080 INFO    ] time= 05/06/2026 11:54:20
[2026-06-05 11:54:20,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:54:20,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:54:20,236.236 INFO    ] No existing commands found in stream
[2026-06-05 11:54:25,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:54:25,257.257 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 11:54:28,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:54:28,083.083 INFO    ] Checking for system updates...
[2026-06-05 11:54:28,124.124 INFO    ] 200
[2026-06-05 11:54:28,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:28,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:54:28,199.199 INFO    ] No update needed
[2026-06-05 11:54:28,202.202 INFO    ] Checking for camera pi updates...
[2026-06-05 11:54:28,240.240 INFO    ] 200
[2026-06-05 11:54:28,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:28,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:54:28,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:54:28,343.343 INFO    ] No camera update needed
[2026-06-05 11:54:28,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:54:28,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:54:28,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:54:28,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:54:30,402.402 INFO    ] ================================================
[2026-06-05 11:54:30,417.417 INFO    ] Launching Daemon at Fri Jun  5 11:54:30 IST 2026
[2026-06-05 11:54:30,428.428 INFO    ] ================================================
[2026-06-05 11:54:30,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:54:30
[2026-06-05 11:54:31,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:54:31,835.835 INFO    ] Initializing speech engine...
[2026-06-05 11:54:31,863.863 INFO    ] 2026-06-05 11:54:31
[2026-06-05 11:54:32,154.154 INFO    ] 2026-06-05 11:54:32
[2026-06-05 11:54:32,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:54:32,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:54:32,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:54:32,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:54:32,584.584 INFO    ] time= 05/06/2026 11:54:32
[2026-06-05 11:54:32,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:54:32,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:54:32,674.674 INFO    ] No existing commands found in stream
[2026-06-05 11:54:37,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:54:37,688.688 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 11:54:41,288.288 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:54:41,291.291 INFO    ] Checking for system updates...
[2026-06-05 11:54:41,327.327 INFO    ] 200
[2026-06-05 11:54:41,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:41,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:54:41,385.385 INFO    ] No update needed
[2026-06-05 11:54:41,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 11:54:41,422.422 INFO    ] 200
[2026-06-05 11:54:41,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:41,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:54:41,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:54:41,512.512 INFO    ] No camera update needed
[2026-06-05 11:54:41,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:54:41,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:54:41,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:54:41,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:54:43,566.566 INFO    ] ================================================
[2026-06-05 11:54:43,581.581 INFO    ] Launching Daemon at Fri Jun  5 11:54:43 IST 2026
[2026-06-05 11:54:43,592.592 INFO    ] ================================================
[2026-06-05 11:54:44,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:54:44
[2026-06-05 11:54:44,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:54:45,165.165 INFO    ] Initializing speech engine...
[2026-06-05 11:54:45,171.171 INFO    ] 2026-06-05 11:54:45
[2026-06-05 11:54:45,452.452 INFO    ] 2026-06-05 11:54:45
[2026-06-05 11:54:45,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:54:45,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:54:45,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:54:45,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:54:45,900.900 INFO    ] time= 05/06/2026 11:54:45
[2026-06-05 11:54:45,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:54:45,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:54:46,119.119 INFO    ] No existing commands found in stream
[2026-06-05 11:54:51,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:54:51,150.150 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 11:54:53,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:54:53,983.983 INFO    ] Checking for system updates...
[2026-06-05 11:54:54,028.028 INFO    ] 200
[2026-06-05 11:54:54,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:54,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:54:54,141.141 INFO    ] No update needed
[2026-06-05 11:54:54,143.143 INFO    ] Checking for camera pi updates...
[2026-06-05 11:54:54,180.180 INFO    ] 200
[2026-06-05 11:54:54,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:54:54,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:54:54,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:54:54,378.378 INFO    ] No camera update needed
[2026-06-05 11:54:54,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:54:54,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:54:54,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:54:54,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:54:56,444.444 INFO    ] ================================================
[2026-06-05 11:54:56,459.459 INFO    ] Launching Daemon at Fri Jun  5 11:54:56 IST 2026
[2026-06-05 11:54:56,470.470 INFO    ] ================================================
[2026-06-05 11:54:57,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:54:57
[2026-06-05 11:54:57,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:54:57,897.897 INFO    ] Initializing speech engine...
[2026-06-05 11:54:57,906.906 INFO    ] 2026-06-05 11:54:57
[2026-06-05 11:54:58,153.153 INFO    ] 2026-06-05 11:54:58
[2026-06-05 11:54:58,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:54:58,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:54:58,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:54:58,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:54:58,629.629 INFO    ] time= 05/06/2026 11:54:58
[2026-06-05 11:54:58,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:54:58,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:54:58,843.843 INFO    ] No existing commands found in stream
[2026-06-05 11:55:03,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:55:03,868.868 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 11:55:04,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:55:04,638.638 INFO    ] Checking for system updates...
[2026-06-05 11:55:04,673.673 INFO    ] 200
[2026-06-05 11:55:04,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:04,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:55:04,731.731 INFO    ] No update needed
[2026-06-05 11:55:04,733.733 INFO    ] Checking for camera pi updates...
[2026-06-05 11:55:04,767.767 INFO    ] 200
[2026-06-05 11:55:04,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:04,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:55:04,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:55:04,847.847 INFO    ] No camera update needed
[2026-06-05 11:55:04,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:55:04,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:55:04,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:55:04,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:55:06,904.904 INFO    ] ================================================
[2026-06-05 11:55:06,919.919 INFO    ] Launching Daemon at Fri Jun  5 11:55:06 IST 2026
[2026-06-05 11:55:06,930.930 INFO    ] ================================================
[2026-06-05 11:55:07,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:55:07
[2026-06-05 11:55:08,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:55:08,358.358 INFO    ] Initializing speech engine...
[2026-06-05 11:55:08,366.366 INFO    ] 2026-06-05 11:55:08
[2026-06-05 11:55:08,638.638 INFO    ] 2026-06-05 11:55:08
[2026-06-05 11:55:08,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:55:09,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:55:09,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:55:09,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:55:09,395.395 INFO    ] time= 05/06/2026 11:55:09
[2026-06-05 11:55:09,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:55:09,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:55:09,575.575 INFO    ] No existing commands found in stream
[2026-06-05 11:55:14,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:55:14,603.603 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 11:55:15,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:55:15,111.111 INFO    ] Checking for system updates...
[2026-06-05 11:55:15,148.148 INFO    ] 200
[2026-06-05 11:55:15,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:15,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:55:15,206.206 INFO    ] No update needed
[2026-06-05 11:55:15,209.209 INFO    ] Checking for camera pi updates...
[2026-06-05 11:55:15,243.243 INFO    ] 200
[2026-06-05 11:55:15,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:15,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:55:15,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:55:15,352.352 INFO    ] No camera update needed
[2026-06-05 11:55:15,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:55:15,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:55:15,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:55:15,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:55:17,408.408 INFO    ] ================================================
[2026-06-05 11:55:17,423.423 INFO    ] Launching Daemon at Fri Jun  5 11:55:17 IST 2026
[2026-06-05 11:55:17,434.434 INFO    ] ================================================
[2026-06-05 11:55:18,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:55:18
[2026-06-05 11:55:18,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:55:18,880.880 INFO    ] Initializing speech engine...
[2026-06-05 11:55:18,889.889 INFO    ] 2026-06-05 11:55:18
[2026-06-05 11:55:19,182.182 INFO    ] 2026-06-05 11:55:19
[2026-06-05 11:55:19,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:55:19,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:55:19,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:55:19,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:55:19,590.590 INFO    ] time= 05/06/2026 11:55:19
[2026-06-05 11:55:19,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:55:19,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:55:19,677.677 INFO    ] No existing commands found in stream
[2026-06-05 11:55:24,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:55:24,710.710 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 11:55:27,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:55:27,398.398 INFO    ] Checking for system updates...
[2026-06-05 11:55:27,434.434 INFO    ] 200
[2026-06-05 11:55:27,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:27,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:55:27,493.493 INFO    ] No update needed
[2026-06-05 11:55:27,495.495 INFO    ] Checking for camera pi updates...
[2026-06-05 11:55:27,530.530 INFO    ] 200
[2026-06-05 11:55:27,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:27,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:55:27,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:55:27,627.627 INFO    ] No camera update needed
[2026-06-05 11:55:27,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:55:27,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:55:27,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:55:27,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:55:29,682.682 INFO    ] ================================================
[2026-06-05 11:55:29,697.697 INFO    ] Launching Daemon at Fri Jun  5 11:55:29 IST 2026
[2026-06-05 11:55:29,709.709 INFO    ] ================================================
[2026-06-05 11:55:30,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:55:30
[2026-06-05 11:55:30,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:55:31,170.170 INFO    ] Initializing speech engine...
[2026-06-05 11:55:31,176.176 INFO    ] 2026-06-05 11:55:31
[2026-06-05 11:55:31,437.437 INFO    ] 2026-06-05 11:55:31
[2026-06-05 11:55:31,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:55:31,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:55:31,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:55:31,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:55:31,914.914 INFO    ] time= 05/06/2026 11:55:31
[2026-06-05 11:55:31,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:55:32,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:55:32,137.137 INFO    ] No existing commands found in stream
[2026-06-05 11:55:37,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:55:37,162.162 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 11:55:41,545.545 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:55:41,548.548 INFO    ] Checking for system updates...
[2026-06-05 11:55:41,584.584 INFO    ] 200
[2026-06-05 11:55:41,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:41,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:55:41,642.642 INFO    ] No update needed
[2026-06-05 11:55:41,645.645 INFO    ] Checking for camera pi updates...
[2026-06-05 11:55:41,680.680 INFO    ] 200
[2026-06-05 11:55:41,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:41,728.728 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:55:41,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:55:41,789.789 INFO    ] No camera update needed
[2026-06-05 11:55:41,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:55:41,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:55:41,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:55:41,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:55:43,844.844 INFO    ] ================================================
[2026-06-05 11:55:43,860.860 INFO    ] Launching Daemon at Fri Jun  5 11:55:43 IST 2026
[2026-06-05 11:55:43,871.871 INFO    ] ================================================
[2026-06-05 11:55:44,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:55:44
[2026-06-05 11:55:45,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:55:45,275.275 INFO    ] Initializing speech engine...
[2026-06-05 11:55:45,289.289 INFO    ] 2026-06-05 11:55:45
[2026-06-05 11:55:45,556.556 INFO    ] 2026-06-05 11:55:45
[2026-06-05 11:55:45,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:55:45,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:55:45,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:55:46,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:55:46,085.085 INFO    ] time= 05/06/2026 11:55:46
[2026-06-05 11:55:46,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:55:46,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:55:46,264.264 INFO    ] No existing commands found in stream
[2026-06-05 11:55:51,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:55:51,292.292 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 11:55:53,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:55:53,667.667 INFO    ] Checking for system updates...
[2026-06-05 11:55:53,703.703 INFO    ] 200
[2026-06-05 11:55:53,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:53,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:55:53,766.766 INFO    ] No update needed
[2026-06-05 11:55:53,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 11:55:53,802.802 INFO    ] 200
[2026-06-05 11:55:53,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:55:53,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:55:53,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:55:53,897.897 INFO    ] No camera update needed
[2026-06-05 11:55:53,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:55:53,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:55:53,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:55:53,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:55:55,952.952 INFO    ] ================================================
[2026-06-05 11:55:55,968.968 INFO    ] Launching Daemon at Fri Jun  5 11:55:55 IST 2026
[2026-06-05 11:55:55,978.978 INFO    ] ================================================
[2026-06-05 11:55:56,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:55:56
[2026-06-05 11:55:57,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:55:57,435.435 INFO    ] Initializing speech engine...
[2026-06-05 11:55:57,442.442 INFO    ] 2026-06-05 11:55:57
[2026-06-05 11:55:57,702.702 INFO    ] 2026-06-05 11:55:57
[2026-06-05 11:55:57,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:55:57,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:55:57,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:55:58,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:55:58,167.167 INFO    ] time= 05/06/2026 11:55:58
[2026-06-05 11:55:58,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:55:58,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:55:58,404.404 INFO    ] No existing commands found in stream
[2026-06-05 11:56:03,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:56:03,422.422 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 11:56:07,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:56:07,485.485 INFO    ] Checking for system updates...
[2026-06-05 11:56:07,527.527 INFO    ] 200
[2026-06-05 11:56:07,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:07,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:56:07,586.586 INFO    ] No update needed
[2026-06-05 11:56:07,589.589 INFO    ] Checking for camera pi updates...
[2026-06-05 11:56:07,623.623 INFO    ] 200
[2026-06-05 11:56:07,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:07,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:56:07,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:56:07,718.718 INFO    ] No camera update needed
[2026-06-05 11:56:07,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:56:07,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:56:07,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:56:07,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:56:09,774.774 INFO    ] ================================================
[2026-06-05 11:56:09,788.788 INFO    ] Launching Daemon at Fri Jun  5 11:56:09 IST 2026
[2026-06-05 11:56:09,799.799 INFO    ] ================================================
[2026-06-05 11:56:10,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:56:10
[2026-06-05 11:56:10,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:56:11,204.204 INFO    ] Initializing speech engine...
[2026-06-05 11:56:11,228.228 INFO    ] 2026-06-05 11:56:11
[2026-06-05 11:56:11,495.495 INFO    ] 2026-06-05 11:56:11
[2026-06-05 11:56:11,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:56:11,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:56:11,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:56:11,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:56:11,896.896 INFO    ] time= 05/06/2026 11:56:11
[2026-06-05 11:56:11,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:56:11,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:56:11,984.984 INFO    ] No existing commands found in stream
[2026-06-05 11:56:17,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:56:17,017.017 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 11:56:19,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:56:19,506.506 INFO    ] Checking for system updates...
[2026-06-05 11:56:19,542.542 INFO    ] 200
[2026-06-05 11:56:19,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:19,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:56:19,601.601 INFO    ] No update needed
[2026-06-05 11:56:19,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 11:56:19,636.636 INFO    ] 200
[2026-06-05 11:56:19,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:19,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:56:19,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:56:19,734.734 INFO    ] No camera update needed
[2026-06-05 11:56:19,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:56:19,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:56:19,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:56:19,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:56:21,790.790 INFO    ] ================================================
[2026-06-05 11:56:21,806.806 INFO    ] Launching Daemon at Fri Jun  5 11:56:21 IST 2026
[2026-06-05 11:56:21,818.818 INFO    ] ================================================
[2026-06-05 11:56:22,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:56:22
[2026-06-05 11:56:23,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:56:23,392.392 INFO    ] Initializing speech engine...
[2026-06-05 11:56:23,402.402 INFO    ] 2026-06-05 11:56:23
[2026-06-05 11:56:23,671.671 INFO    ] 2026-06-05 11:56:23
[2026-06-05 11:56:23,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:56:23,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:56:23,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:56:24,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:56:24,191.191 INFO    ] time= 05/06/2026 11:56:24
[2026-06-05 11:56:24,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:56:24,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:56:24,414.414 INFO    ] No existing commands found in stream
[2026-06-05 11:56:29,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:56:29,442.442 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 11:56:33,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 11:56:33,118.118 INFO    ] Checking for system updates...
[2026-06-05 11:56:33,154.154 INFO    ] 200
[2026-06-05 11:56:33,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:33,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:56:33,215.215 INFO    ] No update needed
[2026-06-05 11:56:33,218.218 INFO    ] Checking for camera pi updates...
[2026-06-05 11:56:33,251.251 INFO    ] 200
[2026-06-05 11:56:33,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:33,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:56:33,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:56:33,348.348 INFO    ] No camera update needed
[2026-06-05 11:56:33,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:56:33,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:56:33,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:56:33,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:56:35,402.402 INFO    ] ================================================
[2026-06-05 11:56:35,417.417 INFO    ] Launching Daemon at Fri Jun  5 11:56:35 IST 2026
[2026-06-05 11:56:35,428.428 INFO    ] ================================================
[2026-06-05 11:56:35,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:56:35
[2026-06-05 11:56:36,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:56:36,825.825 INFO    ] Initializing speech engine...
[2026-06-05 11:56:36,838.838 INFO    ] 2026-06-05 11:56:36
[2026-06-05 11:56:37,098.098 INFO    ] 2026-06-05 11:56:37
[2026-06-05 11:56:37,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:56:37,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:56:37,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:56:37,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:56:37,521.521 INFO    ] time= 05/06/2026 11:56:37
[2026-06-05 11:56:37,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:56:37,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:56:37,672.672 INFO    ] No existing commands found in stream
[2026-06-05 11:56:42,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:56:42,686.686 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 11:56:45,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:56:45,925.925 INFO    ] Checking for system updates...
[2026-06-05 11:56:45,964.964 INFO    ] 200
[2026-06-05 11:56:45,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:46,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:56:46,021.021 INFO    ] No update needed
[2026-06-05 11:56:46,024.024 INFO    ] Checking for camera pi updates...
[2026-06-05 11:56:46,060.060 INFO    ] 200
[2026-06-05 11:56:46,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:46,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:56:46,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:56:46,161.161 INFO    ] No camera update needed
[2026-06-05 11:56:46,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:56:46,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:56:46,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:56:46,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:56:48,216.216 INFO    ] ================================================
[2026-06-05 11:56:48,230.230 INFO    ] Launching Daemon at Fri Jun  5 11:56:48 IST 2026
[2026-06-05 11:56:48,241.241 INFO    ] ================================================
[2026-06-05 11:56:48,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:56:48
[2026-06-05 11:56:49,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:56:49,701.701 INFO    ] Initializing speech engine...
[2026-06-05 11:56:49,707.707 INFO    ] 2026-06-05 11:56:49
[2026-06-05 11:56:49,968.968 INFO    ] 2026-06-05 11:56:49
[2026-06-05 11:56:49,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:56:50,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:56:50,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:56:50,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:56:50,432.432 INFO    ] time= 05/06/2026 11:56:50
[2026-06-05 11:56:50,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:56:50,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:56:50,667.667 INFO    ] No existing commands found in stream
[2026-06-05 11:56:55,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:56:55,685.685 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 11:56:59,630.630 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:56:59,632.632 INFO    ] Checking for system updates...
[2026-06-05 11:56:59,672.672 INFO    ] 200
[2026-06-05 11:56:59,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:59,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:56:59,731.731 INFO    ] No update needed
[2026-06-05 11:56:59,733.733 INFO    ] Checking for camera pi updates...
[2026-06-05 11:56:59,767.767 INFO    ] 200
[2026-06-05 11:56:59,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:56:59,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:56:59,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:56:59,963.963 INFO    ] No camera update needed
[2026-06-05 11:56:59,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:56:59,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:56:59,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:56:59,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:57:02,022.022 INFO    ] ================================================
[2026-06-05 11:57:02,042.042 INFO    ] Launching Daemon at Fri Jun  5 11:57:02 IST 2026
[2026-06-05 11:57:02,057.057 INFO    ] ================================================
[2026-06-05 11:57:02,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:57:02
[2026-06-05 11:57:03,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:57:03,727.727 INFO    ] Initializing speech engine...
[2026-06-05 11:57:03,736.736 INFO    ] 2026-06-05 11:57:03
[2026-06-05 11:57:04,013.013 INFO    ] 2026-06-05 11:57:04
[2026-06-05 11:57:04,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:57:04,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:57:04,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:57:04,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:57:04,453.453 INFO    ] time= 05/06/2026 11:57:04
[2026-06-05 11:57:04,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:57:04,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:57:04,635.635 INFO    ] No existing commands found in stream
[2026-06-05 11:57:09,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:57:09,668.668 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 11:57:11,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:57:11,047.047 INFO    ] Checking for system updates...
[2026-06-05 11:57:11,083.083 INFO    ] 200
[2026-06-05 11:57:11,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:11,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:57:11,141.141 INFO    ] No update needed
[2026-06-05 11:57:11,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 11:57:11,177.177 INFO    ] 200
[2026-06-05 11:57:11,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:11,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:57:11,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:57:11,275.275 INFO    ] No camera update needed
[2026-06-05 11:57:11,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:57:11,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:57:11,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:57:11,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:57:13,330.330 INFO    ] ================================================
[2026-06-05 11:57:13,346.346 INFO    ] Launching Daemon at Fri Jun  5 11:57:13 IST 2026
[2026-06-05 11:57:13,357.357 INFO    ] ================================================
[2026-06-05 11:57:13,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:57:13
[2026-06-05 11:57:14,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:57:14,798.798 INFO    ] Initializing speech engine...
[2026-06-05 11:57:14,811.811 INFO    ] 2026-06-05 11:57:14
[2026-06-05 11:57:15,097.097 INFO    ] 2026-06-05 11:57:15
[2026-06-05 11:57:15,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:57:15,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:57:15,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:57:15,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:57:15,586.586 INFO    ] time= 05/06/2026 11:57:15
[2026-06-05 11:57:15,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:57:15,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:57:15,737.737 INFO    ] No existing commands found in stream
[2026-06-05 11:57:20,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:57:20,753.753 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 11:57:23,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:57:23,139.139 INFO    ] Checking for system updates...
[2026-06-05 11:57:23,175.175 INFO    ] 200
[2026-06-05 11:57:23,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:23,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:57:23,235.235 INFO    ] No update needed
[2026-06-05 11:57:23,238.238 INFO    ] Checking for camera pi updates...
[2026-06-05 11:57:23,272.272 INFO    ] 200
[2026-06-05 11:57:23,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:23,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:57:23,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:57:23,368.368 INFO    ] No camera update needed
[2026-06-05 11:57:23,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:57:23,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:57:23,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:57:23,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:57:25,424.424 INFO    ] ================================================
[2026-06-05 11:57:25,440.440 INFO    ] Launching Daemon at Fri Jun  5 11:57:25 IST 2026
[2026-06-05 11:57:25,451.451 INFO    ] ================================================
[2026-06-05 11:57:26,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:57:26
[2026-06-05 11:57:26,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:57:27,027.027 INFO    ] Initializing speech engine...
[2026-06-05 11:57:27,036.036 INFO    ] 2026-06-05 11:57:27
[2026-06-05 11:57:27,300.300 INFO    ] 2026-06-05 11:57:27
[2026-06-05 11:57:27,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:57:27,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:57:27,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:57:27,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:57:27,710.710 INFO    ] time= 05/06/2026 11:57:27
[2026-06-05 11:57:27,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:57:27,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:57:27,796.796 INFO    ] No existing commands found in stream
[2026-06-05 11:57:32,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:57:32,831.831 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 11:57:35,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:57:35,891.891 INFO    ] Checking for system updates...
[2026-06-05 11:57:35,927.927 INFO    ] 200
[2026-06-05 11:57:35,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:35,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:57:35,988.988 INFO    ] No update needed
[2026-06-05 11:57:35,990.990 INFO    ] Checking for camera pi updates...
[2026-06-05 11:57:36,027.027 INFO    ] 200
[2026-06-05 11:57:36,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:36,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:57:36,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:57:36,121.121 INFO    ] No camera update needed
[2026-06-05 11:57:36,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:57:36,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:57:36,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:57:36,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:57:38,178.178 INFO    ] ================================================
[2026-06-05 11:57:38,193.193 INFO    ] Launching Daemon at Fri Jun  5 11:57:38 IST 2026
[2026-06-05 11:57:38,203.203 INFO    ] ================================================
[2026-06-05 11:57:38,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:57:38
[2026-06-05 11:57:39,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:57:39,621.621 INFO    ] Initializing speech engine...
[2026-06-05 11:57:39,628.628 INFO    ] 2026-06-05 11:57:39
[2026-06-05 11:57:39,918.918 INFO    ] 2026-06-05 11:57:39
[2026-06-05 11:57:39,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:57:40,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:57:40,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:57:40,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:57:40,332.332 INFO    ] time= 05/06/2026 11:57:40
[2026-06-05 11:57:40,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:57:40,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:57:40,527.527 INFO    ] No existing commands found in stream
[2026-06-05 11:57:45,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:57:45,555.555 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 11:57:47,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:57:47,378.378 INFO    ] Checking for system updates...
[2026-06-05 11:57:47,415.415 INFO    ] 200
[2026-06-05 11:57:47,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:47,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:57:47,478.478 INFO    ] No update needed
[2026-06-05 11:57:47,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 11:57:47,517.517 INFO    ] 200
[2026-06-05 11:57:47,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:47,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:57:47,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:57:47,627.627 INFO    ] No camera update needed
[2026-06-05 11:57:47,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:57:47,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:57:47,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:57:47,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:57:49,681.681 INFO    ] ================================================
[2026-06-05 11:57:49,700.700 INFO    ] Launching Daemon at Fri Jun  5 11:57:49 IST 2026
[2026-06-05 11:57:49,711.711 INFO    ] ================================================
[2026-06-05 11:57:50,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:57:50
[2026-06-05 11:57:50,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:57:51,168.168 INFO    ] Initializing speech engine...
[2026-06-05 11:57:51,177.177 INFO    ] 2026-06-05 11:57:51
[2026-06-05 11:57:51,437.437 INFO    ] 2026-06-05 11:57:51
[2026-06-05 11:57:51,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:57:51,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:57:51,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:57:51,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:57:51,925.925 INFO    ] time= 05/06/2026 11:57:51
[2026-06-05 11:57:51,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:57:51,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:57:52,130.130 INFO    ] No existing commands found in stream
[2026-06-05 11:57:57,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:57:57,154.154 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 11:57:59,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:57:59,166.166 INFO    ] Checking for system updates...
[2026-06-05 11:57:59,210.210 INFO    ] 200
[2026-06-05 11:57:59,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:59,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:57:59,274.274 INFO    ] No update needed
[2026-06-05 11:57:59,277.277 INFO    ] Checking for camera pi updates...
[2026-06-05 11:57:59,316.316 INFO    ] 200
[2026-06-05 11:57:59,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:57:59,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:57:59,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:57:59,778.778 INFO    ] No camera update needed
[2026-06-05 11:57:59,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:57:59,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:57:59,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:57:59,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:58:01,839.839 INFO    ] ================================================
[2026-06-05 11:58:01,860.860 INFO    ] Launching Daemon at Fri Jun  5 11:58:01 IST 2026
[2026-06-05 11:58:01,875.875 INFO    ] ================================================
[2026-06-05 11:58:02,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:58:02
[2026-06-05 11:58:03,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:58:03,397.397 INFO    ] Initializing speech engine...
[2026-06-05 11:58:03,409.409 INFO    ] 2026-06-05 11:58:03
[2026-06-05 11:58:03,687.687 INFO    ] 2026-06-05 11:58:03
[2026-06-05 11:58:03,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:58:04,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:58:04,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:58:04,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:58:04,185.185 INFO    ] time= 05/06/2026 11:58:04
[2026-06-05 11:58:04,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:58:04,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:58:04,384.384 INFO    ] No existing commands found in stream
[2026-06-05 11:58:09,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:58:09,420.420 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 11:58:14,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:58:14,488.488 INFO    ] Checking for system updates...
[2026-06-05 11:58:14,524.524 INFO    ] 200
[2026-06-05 11:58:14,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:58:14,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:58:14,588.588 INFO    ] No update needed
[2026-06-05 11:58:14,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 11:58:14,624.624 INFO    ] 200
[2026-06-05 11:58:14,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:58:14,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:58:14,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:58:14,717.717 INFO    ] No camera update needed
[2026-06-05 11:58:14,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:58:14,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:58:14,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:58:14,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:58:16,830.830 INFO    ] ================================================
[2026-06-05 11:58:16,845.845 INFO    ] Launching Daemon at Fri Jun  5 11:58:16 IST 2026
[2026-06-05 11:58:16,856.856 INFO    ] ================================================
[2026-06-05 11:58:17,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:58:17
[2026-06-05 11:58:18,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:58:18,283.283 INFO    ] Initializing speech engine...
[2026-06-05 11:58:18,292.292 INFO    ] 2026-06-05 11:58:18
[2026-06-05 11:58:18,584.584 INFO    ] 2026-06-05 11:58:18
[2026-06-05 11:58:18,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:58:18,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:58:18,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:58:18,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:58:18,971.971 INFO    ] time= 05/06/2026 11:58:18
[2026-06-05 11:58:18,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:58:19,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:58:19,084.084 INFO    ] No existing commands found in stream
[2026-06-05 11:58:24,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:58:24,118.118 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 11:58:24,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:58:24,693.693 INFO    ] Checking for system updates...
[2026-06-05 11:58:24,730.730 INFO    ] 200
[2026-06-05 11:58:24,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:58:24,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:58:24,792.792 INFO    ] No update needed
[2026-06-05 11:58:24,795.795 INFO    ] Checking for camera pi updates...
[2026-06-05 11:58:24,834.834 INFO    ] 200
[2026-06-05 11:58:24,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:58:24,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:58:24,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:58:24,940.940 INFO    ] No camera update needed
[2026-06-05 11:58:24,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:58:24,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:58:24,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:58:24,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:58:27,996.996 INFO    ] ================================================
[2026-06-05 11:58:27,012.012 INFO    ] Launching Daemon at Fri Jun  5 11:58:27 IST 2026
[2026-06-05 11:58:27,023.023 INFO    ] ================================================
[2026-06-05 11:58:27,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:58:27
[2026-06-05 11:58:28,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:58:28,461.461 INFO    ] Initializing speech engine...
[2026-06-05 11:58:28,467.467 INFO    ] 2026-06-05 11:58:28
[2026-06-05 11:58:28,758.758 INFO    ] 2026-06-05 11:58:28
[2026-06-05 11:58:28,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:58:28,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:58:29,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:58:29,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:58:29,170.170 INFO    ] time= 05/06/2026 11:58:29
[2026-06-05 11:58:29,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:58:29,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:58:29,334.334 INFO    ] No existing commands found in stream
[2026-06-05 11:58:34,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:58:34,362.362 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 11:58:37,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:58:37,008.008 INFO    ] Checking for system updates...
[2026-06-05 11:58:37,044.044 INFO    ] 200
[2026-06-05 11:58:37,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:58:37,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:58:37,102.102 INFO    ] No update needed
[2026-06-05 11:58:37,104.104 INFO    ] Checking for camera pi updates...
[2026-06-05 11:58:37,138.138 INFO    ] 200
[2026-06-05 11:58:37,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:58:37,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:58:37,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:58:37,229.229 INFO    ] No camera update needed
[2026-06-05 11:58:37,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:58:37,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:58:37,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:58:37,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:58:39,285.285 INFO    ] ================================================
[2026-06-05 11:58:39,300.300 INFO    ] Launching Daemon at Fri Jun  5 11:58:39 IST 2026
[2026-06-05 11:58:39,311.311 INFO    ] ================================================
[2026-06-05 11:58:39,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:58:39
[2026-06-05 11:58:40,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:58:40,841.841 INFO    ] Initializing speech engine...
[2026-06-05 11:58:40,851.851 INFO    ] 2026-06-05 11:58:40
[2026-06-05 11:58:41,114.114 INFO    ] 2026-06-05 11:58:41
[2026-06-05 11:58:41,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:58:41,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:58:41,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:58:41,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:58:41,674.674 INFO    ] time= 05/06/2026 11:58:41
[2026-06-05 11:58:41,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:58:41,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:58:41,828.828 INFO    ] No existing commands found in stream
[2026-06-05 11:58:46,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:58:46,864.864 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 11:58:51,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 11:58:51,150.150 INFO    ] Checking for system updates...
[2026-06-05 11:58:51,187.187 INFO    ] 200
[2026-06-05 11:58:51,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:58:51,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:58:51,245.245 INFO    ] No update needed
[2026-06-05 11:58:51,248.248 INFO    ] Checking for camera pi updates...
[2026-06-05 11:58:51,286.286 INFO    ] 200
[2026-06-05 11:58:51,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:58:51,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:58:51,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:58:51,385.385 INFO    ] No camera update needed
[2026-06-05 11:58:51,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:58:51,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:58:51,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:58:51,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:58:53,444.444 INFO    ] ================================================
[2026-06-05 11:58:53,459.459 INFO    ] Launching Daemon at Fri Jun  5 11:58:53 IST 2026
[2026-06-05 11:58:53,470.470 INFO    ] ================================================
[2026-06-05 11:58:54,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:58:54
[2026-06-05 11:58:54,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:58:54,914.914 INFO    ] Initializing speech engine...
[2026-06-05 11:58:54,935.935 INFO    ] 2026-06-05 11:58:54
[2026-06-05 11:58:55,212.212 INFO    ] 2026-06-05 11:58:55
[2026-06-05 11:58:55,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:58:55,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:58:55,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:58:55,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:58:55,706.706 INFO    ] time= 05/06/2026 11:58:55
[2026-06-05 11:58:55,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:58:55,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:58:55,911.911 INFO    ] No existing commands found in stream
[2026-06-05 11:59:00,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:59:00,933.933 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 11:59:04,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:59:04,970.970 INFO    ] Checking for system updates...
[2026-06-05 11:59:05,015.015 INFO    ] 200
[2026-06-05 11:59:05,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:05,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:59:05,087.087 INFO    ] No update needed
[2026-06-05 11:59:05,090.090 INFO    ] Checking for camera pi updates...
[2026-06-05 11:59:05,123.123 INFO    ] 200
[2026-06-05 11:59:05,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:05,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:59:05,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 11:59:05,202.202 INFO    ] No camera update needed
[2026-06-05 11:59:05,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:59:05,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:59:05,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:59:05,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:59:07,259.259 INFO    ] ================================================
[2026-06-05 11:59:07,276.276 INFO    ] Launching Daemon at Fri Jun  5 11:59:07 IST 2026
[2026-06-05 11:59:07,288.288 INFO    ] ================================================
[2026-06-05 11:59:07,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:59:07
[2026-06-05 11:59:08,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:59:08,904.904 INFO    ] Initializing speech engine...
[2026-06-05 11:59:08,917.917 INFO    ] 2026-06-05 11:59:08
[2026-06-05 11:59:09,193.193 INFO    ] 2026-06-05 11:59:09
[2026-06-05 11:59:09,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:59:09,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:59:09,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:59:09,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:59:09,680.680 INFO    ] time= 05/06/2026 11:59:09
[2026-06-05 11:59:09,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:59:09,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:59:09,878.878 INFO    ] No existing commands found in stream
[2026-06-05 11:59:14,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:59:14,892.892 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 11:59:15,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:59:15,419.419 INFO    ] Checking for system updates...
[2026-06-05 11:59:15,456.456 INFO    ] 200
[2026-06-05 11:59:15,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:15,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:59:15,513.513 INFO    ] No update needed
[2026-06-05 11:59:15,515.515 INFO    ] Checking for camera pi updates...
[2026-06-05 11:59:15,549.549 INFO    ] 200
[2026-06-05 11:59:15,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:15,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:59:15,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:59:15,648.648 INFO    ] No camera update needed
[2026-06-05 11:59:15,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:59:15,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:59:15,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:59:15,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:59:17,703.703 INFO    ] ================================================
[2026-06-05 11:59:17,718.718 INFO    ] Launching Daemon at Fri Jun  5 11:59:17 IST 2026
[2026-06-05 11:59:17,729.729 INFO    ] ================================================
[2026-06-05 11:59:18,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:59:18
[2026-06-05 11:59:18,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:59:19,186.186 INFO    ] Initializing speech engine...
[2026-06-05 11:59:19,193.193 INFO    ] 2026-06-05 11:59:19
[2026-06-05 11:59:19,454.454 INFO    ] 2026-06-05 11:59:19
[2026-06-05 11:59:19,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:59:19,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:59:19,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:59:19,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:59:19,916.916 INFO    ] time= 05/06/2026 11:59:19
[2026-06-05 11:59:19,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:59:20,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:59:20,139.139 INFO    ] No existing commands found in stream
[2026-06-05 11:59:25,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:59:25,172.172 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 11:59:25,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 11:59:25,637.637 INFO    ] Checking for system updates...
[2026-06-05 11:59:25,674.674 INFO    ] 200
[2026-06-05 11:59:25,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:25,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:59:25,740.740 INFO    ] No update needed
[2026-06-05 11:59:25,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 11:59:25,777.777 INFO    ] 200
[2026-06-05 11:59:25,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:25,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:59:25,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:59:25,886.886 INFO    ] No camera update needed
[2026-06-05 11:59:25,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:59:25,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:59:25,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:59:25,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:59:27,941.941 INFO    ] ================================================
[2026-06-05 11:59:27,957.957 INFO    ] Launching Daemon at Fri Jun  5 11:59:27 IST 2026
[2026-06-05 11:59:27,968.968 INFO    ] ================================================
[2026-06-05 11:59:28,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:59:28
[2026-06-05 11:59:29,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:59:29,384.384 INFO    ] Initializing speech engine...
[2026-06-05 11:59:29,400.400 INFO    ] 2026-06-05 11:59:29
[2026-06-05 11:59:29,686.686 INFO    ] 2026-06-05 11:59:29
[2026-06-05 11:59:29,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:59:29,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:59:29,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:59:30,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:59:30,086.086 INFO    ] time= 05/06/2026 11:59:30
[2026-06-05 11:59:30,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:59:30,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:59:30,200.200 INFO    ] No existing commands found in stream
[2026-06-05 11:59:35,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:59:35,219.219 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 11:59:36,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 11:59:36,895.895 INFO    ] Checking for system updates...
[2026-06-05 11:59:36,931.931 INFO    ] 200
[2026-06-05 11:59:36,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:36,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:59:36,996.996 INFO    ] No update needed
[2026-06-05 11:59:36,998.998 INFO    ] Checking for camera pi updates...
[2026-06-05 11:59:37,036.036 INFO    ] 200
[2026-06-05 11:59:37,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:37,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:59:37,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:59:37,126.126 INFO    ] No camera update needed
[2026-06-05 11:59:37,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:59:37,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:59:37,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:59:37,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:59:39,181.181 INFO    ] ================================================
[2026-06-05 11:59:39,197.197 INFO    ] Launching Daemon at Fri Jun  5 11:59:39 IST 2026
[2026-06-05 11:59:39,208.208 INFO    ] ================================================
[2026-06-05 11:59:39,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:59:39
[2026-06-05 11:59:40,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:59:40,674.674 INFO    ] Initializing speech engine...
[2026-06-05 11:59:40,684.684 INFO    ] 2026-06-05 11:59:40
[2026-06-05 11:59:40,940.940 INFO    ] 2026-06-05 11:59:40
[2026-06-05 11:59:40,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:59:41,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:59:41,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:59:41,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:59:41,430.430 INFO    ] time= 05/06/2026 11:59:41
[2026-06-05 11:59:41,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:59:41,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:59:41,636.636 INFO    ] No existing commands found in stream
[2026-06-05 11:59:46,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:59:46,660.660 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 11:59:47,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 11:59:47,723.723 INFO    ] Checking for system updates...
[2026-06-05 11:59:47,759.759 INFO    ] 200
[2026-06-05 11:59:47,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:47,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:59:47,818.818 INFO    ] No update needed
[2026-06-05 11:59:47,821.821 INFO    ] Checking for camera pi updates...
[2026-06-05 11:59:47,856.856 INFO    ] 200
[2026-06-05 11:59:47,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 11:59:47,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 11:59:47,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 11:59:47,956.956 INFO    ] No camera update needed
[2026-06-05 11:59:47,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-05 11:59:47,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 11:59:47,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 11:59:47,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 11:59:50,012.012 INFO    ] ================================================
[2026-06-05 11:59:50,028.028 INFO    ] Launching Daemon at Fri Jun  5 11:59:50 IST 2026
[2026-06-05 11:59:50,039.039 INFO    ] ================================================
[2026-06-05 11:59:50,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 11:59:50
[2026-06-05 11:59:51,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 11:59:51,590.590 INFO    ] Initializing speech engine...
[2026-06-05 11:59:51,599.599 INFO    ] 2026-06-05 11:59:51
[2026-06-05 11:59:51,851.851 INFO    ] 2026-06-05 11:59:51
[2026-06-05 11:59:51,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 11:59:52,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 11:59:52,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 11:59:52,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 11:59:52,210.210 INFO    ] time= 05/06/2026 11:59:52
[2026-06-05 11:59:52,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 11:59:52,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-05 11:59:52,405.405 INFO    ] No existing commands found in stream
[2026-06-05 11:59:57,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 11:59:57,419.419 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 12:00:03,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:00:03,929.929 INFO    ] Checking for system updates...
[2026-06-05 12:00:04,068.068 INFO    ] 200
[2026-06-05 12:00:04,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:04,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:00:04,310.310 INFO    ] No update needed
[2026-06-05 12:00:04,313.313 INFO    ] Checking for camera pi updates...
[2026-06-05 12:00:04,521.521 INFO    ] 200
[2026-06-05 12:00:04,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:04,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:00:04,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:00:04,914.914 INFO    ] No camera update needed
[2026-06-05 12:00:04,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:00:04,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:00:04,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:00:04,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:00:07,053.053 INFO    ] ================================================
[2026-06-05 12:00:07,068.068 INFO    ] Launching Daemon at Fri Jun  5 12:00:07 IST 2026
[2026-06-05 12:00:07,080.080 INFO    ] ================================================
[2026-06-05 12:00:07,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:00:07
[2026-06-05 12:00:08,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:00:08,633.633 INFO    ] Initializing speech engine...
[2026-06-05 12:00:08,644.644 INFO    ] 2026-06-05 12:00:08
[2026-06-05 12:00:08,912.912 INFO    ] 2026-06-05 12:00:08
[2026-06-05 12:00:08,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:00:09,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:00:09,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:00:09,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:00:09,300.300 INFO    ] time= 05/06/2026 12:00:09
[2026-06-05 12:00:09,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:00:09,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:00:09,380.380 INFO    ] No existing commands found in stream
[2026-06-05 12:00:14,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:00:14,408.408 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-05 12:00:16,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:00:16,508.508 INFO    ] Checking for system updates...
[2026-06-05 12:00:16,549.549 INFO    ] 200
[2026-06-05 12:00:16,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:16,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:00:16,608.608 INFO    ] No update needed
[2026-06-05 12:00:16,610.610 INFO    ] Checking for camera pi updates...
[2026-06-05 12:00:16,645.645 INFO    ] 200
[2026-06-05 12:00:16,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:16,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:00:16,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:00:16,742.742 INFO    ] No camera update needed
[2026-06-05 12:00:16,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:00:16,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:00:16,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:00:16,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:00:18,798.798 INFO    ] ================================================
[2026-06-05 12:00:18,814.814 INFO    ] Launching Daemon at Fri Jun  5 12:00:18 IST 2026
[2026-06-05 12:00:18,825.825 INFO    ] ================================================
[2026-06-05 12:00:19,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:00:19
[2026-06-05 12:00:19,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:00:20,229.229 INFO    ] Initializing speech engine...
[2026-06-05 12:00:20,251.251 INFO    ] 2026-06-05 12:00:20
[2026-06-05 12:00:20,518.518 INFO    ] 2026-06-05 12:00:20
[2026-06-05 12:00:20,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:00:20,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:00:20,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:00:20,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:00:20,890.890 INFO    ] time= 05/06/2026 12:00:20
[2026-06-05 12:00:20,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:00:20,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:00:20,991.991 INFO    ] No existing commands found in stream
[2026-06-05 12:00:26,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:00:26,006.006 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 12:00:28,573.573 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:00:28,576.576 INFO    ] Checking for system updates...
[2026-06-05 12:00:28,611.611 INFO    ] 200
[2026-06-05 12:00:28,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:28,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:00:28,668.668 INFO    ] No update needed
[2026-06-05 12:00:28,671.671 INFO    ] Checking for camera pi updates...
[2026-06-05 12:00:28,704.704 INFO    ] 200
[2026-06-05 12:00:28,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:28,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:00:28,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:00:28,801.801 INFO    ] No camera update needed
[2026-06-05 12:00:28,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:00:28,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:00:28,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:00:28,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:00:30,857.857 INFO    ] ================================================
[2026-06-05 12:00:30,879.879 INFO    ] Launching Daemon at Fri Jun  5 12:00:30 IST 2026
[2026-06-05 12:00:30,890.890 INFO    ] ================================================
[2026-06-05 12:00:31,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:00:31
[2026-06-05 12:00:32,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:00:32,343.343 INFO    ] Initializing speech engine...
[2026-06-05 12:00:32,363.363 INFO    ] 2026-06-05 12:00:32
[2026-06-05 12:00:32,649.649 INFO    ] 2026-06-05 12:00:32
[2026-06-05 12:00:32,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:00:33,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:00:33,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:00:33,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:00:33,261.261 INFO    ] time= 05/06/2026 12:00:33
[2026-06-05 12:00:33,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:00:33,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:00:33,389.389 INFO    ] No existing commands found in stream
[2026-06-05 12:00:38,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:00:38,422.422 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 12:00:39,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:00:39,547.547 INFO    ] Checking for system updates...
[2026-06-05 12:00:39,586.586 INFO    ] 200
[2026-06-05 12:00:39,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:39,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:00:39,643.643 INFO    ] No update needed
[2026-06-05 12:00:39,646.646 INFO    ] Checking for camera pi updates...
[2026-06-05 12:00:39,683.683 INFO    ] 200
[2026-06-05 12:00:39,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:39,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:00:39,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:00:39,786.786 INFO    ] No camera update needed
[2026-06-05 12:00:39,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:00:39,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:00:39,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:00:39,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:00:41,841.841 INFO    ] ================================================
[2026-06-05 12:00:41,857.857 INFO    ] Launching Daemon at Fri Jun  5 12:00:41 IST 2026
[2026-06-05 12:00:41,867.867 INFO    ] ================================================
[2026-06-05 12:00:42,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:00:42
[2026-06-05 12:00:43,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:00:43,352.352 INFO    ] Initializing speech engine...
[2026-06-05 12:00:43,361.361 INFO    ] 2026-06-05 12:00:43
[2026-06-05 12:00:43,613.613 INFO    ] 2026-06-05 12:00:43
[2026-06-05 12:00:43,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:00:43,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:00:43,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:00:44,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:00:44,163.163 INFO    ] time= 05/06/2026 12:00:44
[2026-06-05 12:00:44,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:00:44,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:00:44,322.322 INFO    ] No existing commands found in stream
[2026-06-05 12:00:49,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:00:49,349.349 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 12:00:52,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:00:52,972.972 INFO    ] Checking for system updates...
[2026-06-05 12:00:53,009.009 INFO    ] 200
[2026-06-05 12:00:53,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:53,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:00:53,067.067 INFO    ] No update needed
[2026-06-05 12:00:53,070.070 INFO    ] Checking for camera pi updates...
[2026-06-05 12:00:53,107.107 INFO    ] 200
[2026-06-05 12:00:53,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:00:53,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:00:53,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:00:53,205.205 INFO    ] No camera update needed
[2026-06-05 12:00:53,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:00:53,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:00:53,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:00:53,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:00:55,263.263 INFO    ] ================================================
[2026-06-05 12:00:55,278.278 INFO    ] Launching Daemon at Fri Jun  5 12:00:55 IST 2026
[2026-06-05 12:00:55,289.289 INFO    ] ================================================
[2026-06-05 12:00:55,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:00:55
[2026-06-05 12:00:56,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:00:56,747.747 INFO    ] Initializing speech engine...
[2026-06-05 12:00:56,752.752 INFO    ] 2026-06-05 12:00:56
[2026-06-05 12:00:57,027.027 INFO    ] 2026-06-05 12:00:57
[2026-06-05 12:00:57,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:00:57,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:00:57,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:00:57,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:00:57,746.746 INFO    ] time= 05/06/2026 12:00:57
[2026-06-05 12:00:57,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:00:57,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:00:57,958.958 INFO    ] No existing commands found in stream
[2026-06-05 12:01:02,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:01:02,998.998 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 12:01:04,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:01:04,550.550 INFO    ] Checking for system updates...
[2026-06-05 12:01:04,590.590 INFO    ] 200
[2026-06-05 12:01:04,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:04,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:01:04,653.653 INFO    ] No update needed
[2026-06-05 12:01:04,655.655 INFO    ] Checking for camera pi updates...
[2026-06-05 12:01:04,692.692 INFO    ] 200
[2026-06-05 12:01:04,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:04,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:01:04,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:01:04,867.867 INFO    ] No camera update needed
[2026-06-05 12:01:04,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:01:04,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:01:04,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:01:04,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:01:06,925.925 INFO    ] ================================================
[2026-06-05 12:01:06,941.941 INFO    ] Launching Daemon at Fri Jun  5 12:01:06 IST 2026
[2026-06-05 12:01:06,952.952 INFO    ] ================================================
[2026-06-05 12:01:07,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:01:07
[2026-06-05 12:01:08,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:01:08,407.407 INFO    ] Initializing speech engine...
[2026-06-05 12:01:08,420.420 INFO    ] 2026-06-05 12:01:08
[2026-06-05 12:01:08,706.706 INFO    ] 2026-06-05 12:01:08
[2026-06-05 12:01:08,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:01:08,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:01:08,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:01:09,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:01:09,117.117 INFO    ] time= 05/06/2026 12:01:09
[2026-06-05 12:01:09,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:01:09,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:01:09,224.224 INFO    ] No existing commands found in stream
[2026-06-05 12:01:14,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:01:14,240.240 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 12:01:17,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:01:17,568.568 INFO    ] Checking for system updates...
[2026-06-05 12:01:17,607.607 INFO    ] 200
[2026-06-05 12:01:17,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:17,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:01:17,664.664 INFO    ] No update needed
[2026-06-05 12:01:17,667.667 INFO    ] Checking for camera pi updates...
[2026-06-05 12:01:17,701.701 INFO    ] 200
[2026-06-05 12:01:17,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:17,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:01:17,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:01:17,793.793 INFO    ] No camera update needed
[2026-06-05 12:01:17,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:01:17,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:01:17,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:01:17,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:01:19,850.850 INFO    ] ================================================
[2026-06-05 12:01:19,866.866 INFO    ] Launching Daemon at Fri Jun  5 12:01:19 IST 2026
[2026-06-05 12:01:19,877.877 INFO    ] ================================================
[2026-06-05 12:01:20,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:01:20
[2026-06-05 12:01:21,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:01:21,462.462 INFO    ] Initializing speech engine...
[2026-06-05 12:01:21,476.476 INFO    ] 2026-06-05 12:01:21
[2026-06-05 12:01:21,756.756 INFO    ] 2026-06-05 12:01:21
[2026-06-05 12:01:21,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:01:22,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:01:22,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:01:22,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:01:22,307.307 INFO    ] time= 05/06/2026 12:01:22
[2026-06-05 12:01:22,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:01:22,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:01:22,467.467 INFO    ] No existing commands found in stream
[2026-06-05 12:01:27,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:01:27,490.490 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 12:01:28,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:01:28,133.133 INFO    ] Checking for system updates...
[2026-06-05 12:01:28,170.170 INFO    ] 200
[2026-06-05 12:01:28,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:28,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:01:28,229.229 INFO    ] No update needed
[2026-06-05 12:01:28,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 12:01:28,267.267 INFO    ] 200
[2026-06-05 12:01:28,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:28,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:01:28,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:01:28,367.367 INFO    ] No camera update needed
[2026-06-05 12:01:28,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:01:28,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:01:28,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:01:28,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:01:30,424.424 INFO    ] ================================================
[2026-06-05 12:01:30,440.440 INFO    ] Launching Daemon at Fri Jun  5 12:01:30 IST 2026
[2026-06-05 12:01:30,450.450 INFO    ] ================================================
[2026-06-05 12:01:31,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:01:31
[2026-06-05 12:01:31,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:01:31,948.948 INFO    ] Initializing speech engine...
[2026-06-05 12:01:31,964.964 INFO    ] 2026-06-05 12:01:31
[2026-06-05 12:01:32,246.246 INFO    ] 2026-06-05 12:01:32
[2026-06-05 12:01:32,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:01:33,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:01:33,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:01:33,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:01:33,358.358 INFO    ] time= 05/06/2026 12:01:33
[2026-06-05 12:01:33,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:01:33,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:01:33,490.490 INFO    ] No existing commands found in stream
[2026-06-05 12:01:38,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:01:38,518.518 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 12:01:42,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:01:42,634.634 INFO    ] Checking for system updates...
[2026-06-05 12:01:42,671.671 INFO    ] 200
[2026-06-05 12:01:42,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:42,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:01:42,737.737 INFO    ] No update needed
[2026-06-05 12:01:42,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 12:01:42,775.775 INFO    ] 200
[2026-06-05 12:01:42,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:42,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:01:42,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:01:42,872.872 INFO    ] No camera update needed
[2026-06-05 12:01:42,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:01:42,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:01:42,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:01:42,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:01:44,926.926 INFO    ] ================================================
[2026-06-05 12:01:44,942.942 INFO    ] Launching Daemon at Fri Jun  5 12:01:44 IST 2026
[2026-06-05 12:01:44,953.953 INFO    ] ================================================
[2026-06-05 12:01:45,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:01:45
[2026-06-05 12:01:46,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:01:46,402.402 INFO    ] Initializing speech engine...
[2026-06-05 12:01:46,409.409 INFO    ] 2026-06-05 12:01:46
[2026-06-05 12:01:46,657.657 INFO    ] 2026-06-05 12:01:46
[2026-06-05 12:01:46,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:01:46,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:01:46,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:01:47,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:01:47,216.216 INFO    ] time= 05/06/2026 12:01:47
[2026-06-05 12:01:47,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:01:47,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:01:47,370.370 INFO    ] No existing commands found in stream
[2026-06-05 12:01:52,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:01:52,387.387 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 12:01:56,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:01:56,751.751 INFO    ] Checking for system updates...
[2026-06-05 12:01:56,791.791 INFO    ] 200
[2026-06-05 12:01:56,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:56,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:01:56,861.861 INFO    ] No update needed
[2026-06-05 12:01:56,863.863 INFO    ] Checking for camera pi updates...
[2026-06-05 12:01:56,898.898 INFO    ] 200
[2026-06-05 12:01:56,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:01:56,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:01:56,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:01:56,996.996 INFO    ] No camera update needed
[2026-06-05 12:01:56,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:01:57,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:01:57,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:01:57,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:01:59,053.053 INFO    ] ================================================
[2026-06-05 12:01:59,068.068 INFO    ] Launching Daemon at Fri Jun  5 12:01:59 IST 2026
[2026-06-05 12:01:59,079.079 INFO    ] ================================================
[2026-06-05 12:01:59,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:01:59
[2026-06-05 12:02:00,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:02:00,501.501 INFO    ] Initializing speech engine...
[2026-06-05 12:02:00,511.511 INFO    ] 2026-06-05 12:02:00
[2026-06-05 12:02:00,770.770 INFO    ] 2026-06-05 12:02:00
[2026-06-05 12:02:00,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:02:02,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:02:02,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:02:03,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:02:03,113.113 INFO    ] time= 05/06/2026 12:02:03
[2026-06-05 12:02:03,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:02:03,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:02:03,190.190 INFO    ] No existing commands found in stream
[2026-06-05 12:02:08,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:02:08,204.204 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 12:02:10,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:02:10,315.315 INFO    ] Checking for system updates...
[2026-06-05 12:02:10,352.352 INFO    ] 200
[2026-06-05 12:02:10,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:02:10,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:02:10,419.419 INFO    ] No update needed
[2026-06-05 12:02:10,422.422 INFO    ] Checking for camera pi updates...
[2026-06-05 12:02:10,456.456 INFO    ] 200
[2026-06-05 12:02:10,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:02:10,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:02:10,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:02:10,552.552 INFO    ] No camera update needed
[2026-06-05 12:02:10,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:02:10,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:02:10,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:02:10,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:02:12,611.611 INFO    ] ================================================
[2026-06-05 12:02:12,627.627 INFO    ] Launching Daemon at Fri Jun  5 12:02:12 IST 2026
[2026-06-05 12:02:12,638.638 INFO    ] ================================================
[2026-06-05 12:02:13,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:02:13
[2026-06-05 12:02:13,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:02:14,232.232 INFO    ] Initializing speech engine...
[2026-06-05 12:02:14,241.241 INFO    ] 2026-06-05 12:02:14
[2026-06-05 12:02:14,526.526 INFO    ] 2026-06-05 12:02:14
[2026-06-05 12:02:14,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:02:14,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:02:14,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:02:14,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:02:14,992.992 INFO    ] time= 05/06/2026 12:02:14
[2026-06-05 12:02:15,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:02:15,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:02:15,209.209 INFO    ] No existing commands found in stream
[2026-06-05 12:02:20,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:02:20,244.244 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 12:02:24,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:02:24,598.598 INFO    ] Checking for system updates...
[2026-06-05 12:02:24,639.639 INFO    ] 200
[2026-06-05 12:02:24,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:02:24,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:02:24,704.704 INFO    ] No update needed
[2026-06-05 12:02:24,707.707 INFO    ] Checking for camera pi updates...
[2026-06-05 12:02:24,744.744 INFO    ] 200
[2026-06-05 12:02:24,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:02:24,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:02:24,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:02:24,830.830 INFO    ] No camera update needed
[2026-06-05 12:02:24,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:02:24,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:02:24,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:02:24,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:02:26,892.892 INFO    ] ================================================
[2026-06-05 12:02:26,908.908 INFO    ] Launching Daemon at Fri Jun  5 12:02:26 IST 2026
[2026-06-05 12:02:26,919.919 INFO    ] ================================================
[2026-06-05 12:02:27,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:02:27
[2026-06-05 12:02:28,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:02:28,382.382 INFO    ] Initializing speech engine...
[2026-06-05 12:02:28,396.396 INFO    ] 2026-06-05 12:02:28
[2026-06-05 12:02:28,681.681 INFO    ] 2026-06-05 12:02:28
[2026-06-05 12:02:28,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:02:28,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:02:28,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:02:29,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:02:29,100.100 INFO    ] time= 05/06/2026 12:02:29
[2026-06-05 12:02:29,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:02:29,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:02:29,279.279 INFO    ] No existing commands found in stream
[2026-06-05 12:02:34,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:02:34,312.312 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 12:02:36,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:02:36,119.119 INFO    ] Checking for system updates...
[2026-06-05 12:02:36,156.156 INFO    ] 200
[2026-06-05 12:02:36,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:02:36,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:02:36,218.218 INFO    ] No update needed
[2026-06-05 12:02:36,220.220 INFO    ] Checking for camera pi updates...
[2026-06-05 12:02:36,259.259 INFO    ] 200
[2026-06-05 12:02:36,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:02:36,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:02:36,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:02:36,335.335 INFO    ] No camera update needed
[2026-06-05 12:02:36,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:02:36,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:02:36,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:02:36,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:02:38,395.395 INFO    ] ================================================
[2026-06-05 12:02:38,411.411 INFO    ] Launching Daemon at Fri Jun  5 12:02:38 IST 2026
[2026-06-05 12:02:38,422.422 INFO    ] ================================================
[2026-06-05 12:02:39,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:02:39
[2026-06-05 12:02:39,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:02:39,865.865 INFO    ] Initializing speech engine...
[2026-06-05 12:02:39,881.881 INFO    ] 2026-06-05 12:02:39
[2026-06-05 12:02:40,162.162 INFO    ] 2026-06-05 12:02:40
[2026-06-05 12:02:40,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:02:40,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:02:40,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:02:40,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:02:40,579.579 INFO    ] time= 05/06/2026 12:02:40
[2026-06-05 12:02:40,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:02:40,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:02:40,666.666 INFO    ] No existing commands found in stream
[2026-06-05 12:02:45,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:02:45,694.694 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 12:02:49,991.991 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:02:49,994.994 INFO    ] Checking for system updates...
[2026-06-05 12:02:50,032.032 INFO    ] 200
[2026-06-05 12:02:50,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:02:50,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:02:50,092.092 INFO    ] No update needed
[2026-06-05 12:02:50,094.094 INFO    ] Checking for camera pi updates...
[2026-06-05 12:02:50,129.129 INFO    ] 200
[2026-06-05 12:02:50,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:02:50,173.173 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:02:50,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:02:50,224.224 INFO    ] No camera update needed
[2026-06-05 12:02:50,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:02:50,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:02:50,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:02:50,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:02:52,282.282 INFO    ] ================================================
[2026-06-05 12:02:52,298.298 INFO    ] Launching Daemon at Fri Jun  5 12:02:52 IST 2026
[2026-06-05 12:02:52,309.309 INFO    ] ================================================
[2026-06-05 12:02:52,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:02:52
[2026-06-05 12:02:53,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:02:53,714.714 INFO    ] Initializing speech engine...
[2026-06-05 12:02:53,737.737 INFO    ] 2026-06-05 12:02:53
[2026-06-05 12:02:53,992.992 INFO    ] 2026-06-05 12:02:53
[2026-06-05 12:02:54,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:02:54,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:02:54,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:02:54,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:02:54,513.513 INFO    ] time= 05/06/2026 12:02:54
[2026-06-05 12:02:54,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:02:54,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:02:54,724.724 INFO    ] No existing commands found in stream
[2026-06-05 12:02:59,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:02:59,742.742 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 12:03:00,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:03:00,603.603 INFO    ] Checking for system updates...
[2026-06-05 12:03:00,640.640 INFO    ] 200
[2026-06-05 12:03:00,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:00,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:03:00,699.699 INFO    ] No update needed
[2026-06-05 12:03:00,702.702 INFO    ] Checking for camera pi updates...
[2026-06-05 12:03:00,737.737 INFO    ] 200
[2026-06-05 12:03:00,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:00,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:03:00,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:03:00,832.832 INFO    ] No camera update needed
[2026-06-05 12:03:00,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:03:00,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:03:00,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:03:00,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:03:02,897.897 INFO    ] ================================================
[2026-06-05 12:03:02,917.917 INFO    ] Launching Daemon at Fri Jun  5 12:03:02 IST 2026
[2026-06-05 12:03:02,933.933 INFO    ] ================================================
[2026-06-05 12:03:03,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:03:03
[2026-06-05 12:03:04,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:03:04,473.473 INFO    ] Initializing speech engine...
[2026-06-05 12:03:04,481.481 INFO    ] 2026-06-05 12:03:04
[2026-06-05 12:03:04,732.732 INFO    ] 2026-06-05 12:03:04
[2026-06-05 12:03:04,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:03:05,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:03:05,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:03:05,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:03:05,292.292 INFO    ] time= 05/06/2026 12:03:05
[2026-06-05 12:03:05,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:03:05,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:03:05,451.451 INFO    ] No existing commands found in stream
[2026-06-05 12:03:10,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:03:10,480.480 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 12:03:13,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:03:13,419.419 INFO    ] Checking for system updates...
[2026-06-05 12:03:13,456.456 INFO    ] 200
[2026-06-05 12:03:13,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:13,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:03:13,522.522 INFO    ] No update needed
[2026-06-05 12:03:13,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 12:03:13,560.560 INFO    ] 200
[2026-06-05 12:03:13,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:13,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:03:13,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:03:13,753.753 INFO    ] No camera update needed
[2026-06-05 12:03:13,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:03:13,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:03:13,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:03:13,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:03:15,809.809 INFO    ] ================================================
[2026-06-05 12:03:15,823.823 INFO    ] Launching Daemon at Fri Jun  5 12:03:15 IST 2026
[2026-06-05 12:03:15,834.834 INFO    ] ================================================
[2026-06-05 12:03:16,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:03:16
[2026-06-05 12:03:17,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:03:17,435.435 INFO    ] Initializing speech engine...
[2026-06-05 12:03:17,442.442 INFO    ] 2026-06-05 12:03:17
[2026-06-05 12:03:17,714.714 INFO    ] 2026-06-05 12:03:17
[2026-06-05 12:03:17,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:03:17,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:03:18,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:03:18,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:03:18,194.194 INFO    ] time= 05/06/2026 12:03:18
[2026-06-05 12:03:18,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:03:18,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:03:18,406.406 INFO    ] No existing commands found in stream
[2026-06-05 12:03:23,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:03:23,432.432 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 12:03:25,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:03:25,529.529 INFO    ] Checking for system updates...
[2026-06-05 12:03:25,567.567 INFO    ] 200
[2026-06-05 12:03:25,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:25,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:03:25,626.626 INFO    ] No update needed
[2026-06-05 12:03:25,628.628 INFO    ] Checking for camera pi updates...
[2026-06-05 12:03:25,663.663 INFO    ] 200
[2026-06-05 12:03:25,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:25,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:03:25,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:03:25,765.765 INFO    ] No camera update needed
[2026-06-05 12:03:25,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:03:25,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:03:25,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:03:25,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:03:27,825.825 INFO    ] ================================================
[2026-06-05 12:03:27,841.841 INFO    ] Launching Daemon at Fri Jun  5 12:03:27 IST 2026
[2026-06-05 12:03:27,852.852 INFO    ] ================================================
[2026-06-05 12:03:28,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:03:28
[2026-06-05 12:03:29,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:03:29,327.327 INFO    ] Initializing speech engine...
[2026-06-05 12:03:29,341.341 INFO    ] 2026-06-05 12:03:29
[2026-06-05 12:03:29,595.595 INFO    ] 2026-06-05 12:03:29
[2026-06-05 12:03:29,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:03:29,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:03:29,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:03:30,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:03:30,110.110 INFO    ] time= 05/06/2026 12:03:30
[2026-06-05 12:03:30,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:03:30,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:03:30,318.318 INFO    ] No existing commands found in stream
[2026-06-05 12:03:35,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:03:35,336.336 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 12:03:39,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:03:39,162.162 INFO    ] Checking for system updates...
[2026-06-05 12:03:39,201.201 INFO    ] 200
[2026-06-05 12:03:39,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:39,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:03:39,258.258 INFO    ] No update needed
[2026-06-05 12:03:39,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 12:03:39,298.298 INFO    ] 200
[2026-06-05 12:03:39,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:39,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:03:39,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:03:39,389.389 INFO    ] No camera update needed
[2026-06-05 12:03:39,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:03:39,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:03:39,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:03:39,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:03:41,446.446 INFO    ] ================================================
[2026-06-05 12:03:41,460.460 INFO    ] Launching Daemon at Fri Jun  5 12:03:41 IST 2026
[2026-06-05 12:03:41,471.471 INFO    ] ================================================
[2026-06-05 12:03:42,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:03:42
[2026-06-05 12:03:42,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:03:42,900.900 INFO    ] Initializing speech engine...
[2026-06-05 12:03:42,915.915 INFO    ] 2026-06-05 12:03:42
[2026-06-05 12:03:43,184.184 INFO    ] 2026-06-05 12:03:43
[2026-06-05 12:03:43,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:03:43,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:03:43,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:03:43,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:03:43,599.599 INFO    ] time= 05/06/2026 12:03:43
[2026-06-05 12:03:43,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:03:43,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:03:43,794.794 INFO    ] No existing commands found in stream
[2026-06-05 12:03:48,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:03:48,827.827 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 12:03:51,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:03:51,102.102 INFO    ] Checking for system updates...
[2026-06-05 12:03:51,141.141 INFO    ] 200
[2026-06-05 12:03:51,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:51,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:03:51,199.199 INFO    ] No update needed
[2026-06-05 12:03:51,202.202 INFO    ] Checking for camera pi updates...
[2026-06-05 12:03:51,236.236 INFO    ] 200
[2026-06-05 12:03:51,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:03:51,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:03:51,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:03:51,352.352 INFO    ] No camera update needed
[2026-06-05 12:03:51,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:03:51,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:03:51,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:03:51,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:03:53,414.414 INFO    ] ================================================
[2026-06-05 12:03:53,429.429 INFO    ] Launching Daemon at Fri Jun  5 12:03:53 IST 2026
[2026-06-05 12:03:53,440.440 INFO    ] ================================================
[2026-06-05 12:03:54,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:03:54
[2026-06-05 12:03:54,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:03:54,902.902 INFO    ] Initializing speech engine...
[2026-06-05 12:03:54,926.926 INFO    ] 2026-06-05 12:03:54
[2026-06-05 12:03:55,199.199 INFO    ] 2026-06-05 12:03:55
[2026-06-05 12:03:55,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:03:55,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:03:55,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:03:55,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:03:55,615.615 INFO    ] time= 05/06/2026 12:03:55
[2026-06-05 12:03:55,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:03:55,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:03:55,774.774 INFO    ] No existing commands found in stream
[2026-06-05 12:04:00,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:04:00,801.801 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 12:04:04,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:04:04,188.188 INFO    ] Checking for system updates...
[2026-06-05 12:04:04,228.228 INFO    ] 200
[2026-06-05 12:04:04,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:04,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:04:04,286.286 INFO    ] No update needed
[2026-06-05 12:04:04,288.288 INFO    ] Checking for camera pi updates...
[2026-06-05 12:04:04,326.326 INFO    ] 200
[2026-06-05 12:04:04,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:04,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:04:04,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:04:04,414.414 INFO    ] No camera update needed
[2026-06-05 12:04:04,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:04:04,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:04:04,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:04:04,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:04:06,481.481 INFO    ] ================================================
[2026-06-05 12:04:06,496.496 INFO    ] Launching Daemon at Fri Jun  5 12:04:06 IST 2026
[2026-06-05 12:04:06,507.507 INFO    ] ================================================
[2026-06-05 12:04:07,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:04:07
[2026-06-05 12:04:07,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:04:07,983.983 INFO    ] Initializing speech engine...
[2026-06-05 12:04:07,989.989 INFO    ] 2026-06-05 12:04:07
[2026-06-05 12:04:08,249.249 INFO    ] 2026-06-05 12:04:08
[2026-06-05 12:04:08,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:04:08,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:04:08,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:04:08,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:04:08,709.709 INFO    ] time= 05/06/2026 12:04:08
[2026-06-05 12:04:08,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:04:08,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:04:08,939.939 INFO    ] No existing commands found in stream
[2026-06-05 12:04:13,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:04:13,962.962 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 12:04:17,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:04:17,645.645 INFO    ] Checking for system updates...
[2026-06-05 12:04:17,685.685 INFO    ] 200
[2026-06-05 12:04:17,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:17,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:04:17,742.742 INFO    ] No update needed
[2026-06-05 12:04:17,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 12:04:17,782.782 INFO    ] 200
[2026-06-05 12:04:17,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:17,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:04:17,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:04:17,862.862 INFO    ] No camera update needed
[2026-06-05 12:04:17,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:04:17,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:04:17,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:04:17,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:04:19,918.918 INFO    ] ================================================
[2026-06-05 12:04:19,933.933 INFO    ] Launching Daemon at Fri Jun  5 12:04:19 IST 2026
[2026-06-05 12:04:19,944.944 INFO    ] ================================================
[2026-06-05 12:04:20,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:04:20
[2026-06-05 12:04:21,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:04:21,576.576 INFO    ] Initializing speech engine...
[2026-06-05 12:04:21,587.587 INFO    ] 2026-06-05 12:04:21
[2026-06-05 12:04:21,863.863 INFO    ] 2026-06-05 12:04:21
[2026-06-05 12:04:21,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:04:22,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:04:22,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:04:22,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:04:22,358.358 INFO    ] time= 05/06/2026 12:04:22
[2026-06-05 12:04:22,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:04:22,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:04:22,574.574 INFO    ] No existing commands found in stream
[2026-06-05 12:04:27,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:04:27,598.598 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 12:04:33,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:04:33,330.330 INFO    ] Checking for system updates...
[2026-06-05 12:04:33,367.367 INFO    ] 200
[2026-06-05 12:04:33,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:33,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:04:33,425.425 INFO    ] No update needed
[2026-06-05 12:04:33,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 12:04:33,468.468 INFO    ] 200
[2026-06-05 12:04:33,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:33,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:04:33,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:04:33,558.558 INFO    ] No camera update needed
[2026-06-05 12:04:33,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:04:33,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:04:33,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:04:33,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:04:35,613.613 INFO    ] ================================================
[2026-06-05 12:04:35,629.629 INFO    ] Launching Daemon at Fri Jun  5 12:04:35 IST 2026
[2026-06-05 12:04:35,639.639 INFO    ] ================================================
[2026-06-05 12:04:36,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:04:36
[2026-06-05 12:04:36,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:04:37,042.042 INFO    ] Initializing speech engine...
[2026-06-05 12:04:37,068.068 INFO    ] 2026-06-05 12:04:37
[2026-06-05 12:04:37,350.350 INFO    ] 2026-06-05 12:04:37
[2026-06-05 12:04:37,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:04:37,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:04:37,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:04:37,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:04:37,747.747 INFO    ] time= 05/06/2026 12:04:37
[2026-06-05 12:04:37,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:04:37,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:04:37,879.879 INFO    ] No existing commands found in stream
[2026-06-05 12:04:42,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:04:42,894.894 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 12:04:44,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:04:44,265.265 INFO    ] Checking for system updates...
[2026-06-05 12:04:44,304.304 INFO    ] 200
[2026-06-05 12:04:44,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:44,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:04:44,366.366 INFO    ] No update needed
[2026-06-05 12:04:44,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 12:04:44,408.408 INFO    ] 200
[2026-06-05 12:04:44,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:44,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:04:44,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:04:44,527.527 INFO    ] No camera update needed
[2026-06-05 12:04:44,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:04:44,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:04:44,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:04:44,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:04:46,583.583 INFO    ] ================================================
[2026-06-05 12:04:46,598.598 INFO    ] Launching Daemon at Fri Jun  5 12:04:46 IST 2026
[2026-06-05 12:04:46,609.609 INFO    ] ================================================
[2026-06-05 12:04:47,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:04:47
[2026-06-05 12:04:47,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:04:48,094.094 INFO    ] Initializing speech engine...
[2026-06-05 12:04:48,110.110 INFO    ] 2026-06-05 12:04:48
[2026-06-05 12:04:48,394.394 INFO    ] 2026-06-05 12:04:48
[2026-06-05 12:04:48,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:04:48,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:04:48,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:04:48,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:04:48,790.790 INFO    ] time= 05/06/2026 12:04:48
[2026-06-05 12:04:48,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:04:48,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:04:48,921.921 INFO    ] No existing commands found in stream
[2026-06-05 12:04:53,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:04:53,936.936 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 12:04:56,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:04:56,266.266 INFO    ] Checking for system updates...
[2026-06-05 12:04:56,307.307 INFO    ] 200
[2026-06-05 12:04:56,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:56,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:04:56,366.366 INFO    ] No update needed
[2026-06-05 12:04:56,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 12:04:56,403.403 INFO    ] 200
[2026-06-05 12:04:56,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:04:56,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:04:56,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:04:56,501.501 INFO    ] No camera update needed
[2026-06-05 12:04:56,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:04:56,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:04:56,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:04:56,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:04:58,557.557 INFO    ] ================================================
[2026-06-05 12:04:58,573.573 INFO    ] Launching Daemon at Fri Jun  5 12:04:58 IST 2026
[2026-06-05 12:04:58,584.584 INFO    ] ================================================
[2026-06-05 12:04:59,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:04:59
[2026-06-05 12:04:59,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:05:00,012.012 INFO    ] Initializing speech engine...
[2026-06-05 12:05:00,022.022 INFO    ] 2026-06-05 12:05:00
[2026-06-05 12:05:00,325.325 INFO    ] 2026-06-05 12:05:00
[2026-06-05 12:05:00,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:05:00,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:05:00,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:05:00,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:05:00,719.719 INFO    ] time= 05/06/2026 12:05:00
[2026-06-05 12:05:00,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:05:00,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:05:00,847.847 INFO    ] No existing commands found in stream
[2026-06-05 12:05:05,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:05:05,861.861 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 12:05:07,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:05:07,455.455 INFO    ] Checking for system updates...
[2026-06-05 12:05:07,491.491 INFO    ] 200
[2026-06-05 12:05:07,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:07,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:05:07,558.558 INFO    ] No update needed
[2026-06-05 12:05:07,560.560 INFO    ] Checking for camera pi updates...
[2026-06-05 12:05:07,594.594 INFO    ] 200
[2026-06-05 12:05:07,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:07,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:05:07,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:05:07,691.691 INFO    ] No camera update needed
[2026-06-05 12:05:07,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:05:07,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:05:07,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:05:07,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:05:09,748.748 INFO    ] ================================================
[2026-06-05 12:05:09,763.763 INFO    ] Launching Daemon at Fri Jun  5 12:05:09 IST 2026
[2026-06-05 12:05:09,774.774 INFO    ] ================================================
[2026-06-05 12:05:10,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:05:10
[2026-06-05 12:05:10,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:05:11,252.252 INFO    ] Initializing speech engine...
[2026-06-05 12:05:11,261.261 INFO    ] 2026-06-05 12:05:11
[2026-06-05 12:05:11,562.562 INFO    ] 2026-06-05 12:05:11
[2026-06-05 12:05:11,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:05:11,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:05:11,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:05:11,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:05:11,892.892 INFO    ] time= 05/06/2026 12:05:11
[2026-06-05 12:05:11,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:05:11,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:05:11,997.997 INFO    ] No existing commands found in stream
[2026-06-05 12:05:17,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:05:17,025.025 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 12:05:19,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:05:19,021.021 INFO    ] Checking for system updates...
[2026-06-05 12:05:19,058.058 INFO    ] 200
[2026-06-05 12:05:19,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:19,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:05:19,124.124 INFO    ] No update needed
[2026-06-05 12:05:19,127.127 INFO    ] Checking for camera pi updates...
[2026-06-05 12:05:19,165.165 INFO    ] 200
[2026-06-05 12:05:19,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:19,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:05:19,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:05:19,363.363 INFO    ] No camera update needed
[2026-06-05 12:05:19,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:05:19,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:05:19,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:05:19,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:05:21,421.421 INFO    ] ================================================
[2026-06-05 12:05:21,436.436 INFO    ] Launching Daemon at Fri Jun  5 12:05:21 IST 2026
[2026-06-05 12:05:21,448.448 INFO    ] ================================================
[2026-06-05 12:05:22,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:05:22
[2026-06-05 12:05:22,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:05:22,982.982 INFO    ] Initializing speech engine...
[2026-06-05 12:05:22,991.991 INFO    ] 2026-06-05 12:05:22
[2026-06-05 12:05:23,277.277 INFO    ] 2026-06-05 12:05:23
[2026-06-05 12:05:23,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:05:23,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:05:23,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:05:24,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:05:24,131.131 INFO    ] time= 05/06/2026 12:05:24
[2026-06-05 12:05:24,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:05:24,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:05:24,349.349 INFO    ] No existing commands found in stream
[2026-06-05 12:05:29,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:05:29,369.369 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 12:05:33,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:05:33,281.281 INFO    ] Checking for system updates...
[2026-06-05 12:05:33,326.326 INFO    ] 200
[2026-06-05 12:05:33,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:33,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:05:33,399.399 INFO    ] No update needed
[2026-06-05 12:05:33,402.402 INFO    ] Checking for camera pi updates...
[2026-06-05 12:05:33,439.439 INFO    ] 200
[2026-06-05 12:05:33,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:33,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:05:33,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:05:33,530.530 INFO    ] No camera update needed
[2026-06-05 12:05:33,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:05:33,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:05:33,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:05:33,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:05:35,586.586 INFO    ] ================================================
[2026-06-05 12:05:35,602.602 INFO    ] Launching Daemon at Fri Jun  5 12:05:35 IST 2026
[2026-06-05 12:05:35,613.613 INFO    ] ================================================
[2026-06-05 12:05:36,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:05:36
[2026-06-05 12:05:36,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:05:37,039.039 INFO    ] Initializing speech engine...
[2026-06-05 12:05:37,045.045 INFO    ] 2026-06-05 12:05:37
[2026-06-05 12:05:37,344.344 INFO    ] 2026-06-05 12:05:37
[2026-06-05 12:05:37,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:05:37,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:05:37,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:05:37,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:05:37,727.727 INFO    ] time= 05/06/2026 12:05:37
[2026-06-05 12:05:37,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:05:37,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:05:37,851.851 INFO    ] No existing commands found in stream
[2026-06-05 12:05:42,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:05:42,867.867 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 12:05:44,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:05:44,403.403 INFO    ] Checking for system updates...
[2026-06-05 12:05:44,443.443 INFO    ] 200
[2026-06-05 12:05:44,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:44,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:05:44,502.502 INFO    ] No update needed
[2026-06-05 12:05:44,505.505 INFO    ] Checking for camera pi updates...
[2026-06-05 12:05:44,539.539 INFO    ] 200
[2026-06-05 12:05:44,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:44,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:05:44,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:05:44,644.644 INFO    ] No camera update needed
[2026-06-05 12:05:44,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:05:44,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:05:44,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:05:44,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:05:46,701.701 INFO    ] ================================================
[2026-06-05 12:05:46,717.717 INFO    ] Launching Daemon at Fri Jun  5 12:05:46 IST 2026
[2026-06-05 12:05:46,729.729 INFO    ] ================================================
[2026-06-05 12:05:47,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:05:47
[2026-06-05 12:05:48,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:05:48,350.350 INFO    ] Initializing speech engine...
[2026-06-05 12:05:48,363.363 INFO    ] 2026-06-05 12:05:48
[2026-06-05 12:05:48,645.645 INFO    ] 2026-06-05 12:05:48
[2026-06-05 12:05:48,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:05:48,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:05:48,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:05:49,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:05:49,187.187 INFO    ] time= 05/06/2026 12:05:49
[2026-06-05 12:05:49,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:05:49,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:05:49,343.343 INFO    ] No existing commands found in stream
[2026-06-05 12:05:54,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:05:54,367.367 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 12:05:58,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:05:58,552.552 INFO    ] Checking for system updates...
[2026-06-05 12:05:58,593.593 INFO    ] 200
[2026-06-05 12:05:58,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:58,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:05:58,660.660 INFO    ] No update needed
[2026-06-05 12:05:58,663.663 INFO    ] Checking for camera pi updates...
[2026-06-05 12:05:58,700.700 INFO    ] 200
[2026-06-05 12:05:58,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:05:58,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:05:58,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:05:58,798.798 INFO    ] No camera update needed
[2026-06-05 12:05:58,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:05:58,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:05:58,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:05:58,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:06:00,857.857 INFO    ] ================================================
[2026-06-05 12:06:00,873.873 INFO    ] Launching Daemon at Fri Jun  5 12:06:00 IST 2026
[2026-06-05 12:06:00,884.884 INFO    ] ================================================
[2026-06-05 12:06:01,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:06:01
[2026-06-05 12:06:02,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:06:02,599.599 INFO    ] Initializing speech engine...
[2026-06-05 12:06:02,607.607 INFO    ] 2026-06-05 12:06:02
[2026-06-05 12:06:02,992.992 INFO    ] 2026-06-05 12:06:02
[2026-06-05 12:06:03,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:06:03,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:06:03,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:06:03,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:06:03,458.458 INFO    ] time= 05/06/2026 12:06:03
[2026-06-05 12:06:03,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:06:03,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:06:03,598.598 INFO    ] No existing commands found in stream
[2026-06-05 12:06:08,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:06:08,630.630 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 12:06:11,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:06:11,412.412 INFO    ] Checking for system updates...
[2026-06-05 12:06:11,452.452 INFO    ] 200
[2026-06-05 12:06:11,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:06:11,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:06:11,510.510 INFO    ] No update needed
[2026-06-05 12:06:11,512.512 INFO    ] Checking for camera pi updates...
[2026-06-05 12:06:11,550.550 INFO    ] 200
[2026-06-05 12:06:11,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:06:11,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:06:11,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:06:11,646.646 INFO    ] No camera update needed
[2026-06-05 12:06:11,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:06:11,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:06:11,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:06:11,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:06:13,701.701 INFO    ] ================================================
[2026-06-05 12:06:13,717.717 INFO    ] Launching Daemon at Fri Jun  5 12:06:13 IST 2026
[2026-06-05 12:06:13,728.728 INFO    ] ================================================
[2026-06-05 12:06:14,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:06:14
[2026-06-05 12:06:14,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:06:15,187.187 INFO    ] Initializing speech engine...
[2026-06-05 12:06:15,196.196 INFO    ] 2026-06-05 12:06:15
[2026-06-05 12:06:15,454.454 INFO    ] 2026-06-05 12:06:15
[2026-06-05 12:06:15,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:06:15,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:06:15,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:06:15,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:06:15,999.999 INFO    ] time= 05/06/2026 12:06:15
[2026-06-05 12:06:16,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:06:16,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:06:16,227.227 INFO    ] No existing commands found in stream
[2026-06-05 12:06:21,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:06:21,261.261 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 12:06:22,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:06:22,070.070 INFO    ] Checking for system updates...
[2026-06-05 12:06:22,110.110 INFO    ] 200
[2026-06-05 12:06:22,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:06:22,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:06:22,183.183 INFO    ] No update needed
[2026-06-05 12:06:22,185.185 INFO    ] Checking for camera pi updates...
[2026-06-05 12:06:22,219.219 INFO    ] 200
[2026-06-05 12:06:22,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:06:22,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:06:22,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:06:22,311.311 INFO    ] No camera update needed
[2026-06-05 12:06:22,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:06:22,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:06:22,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:06:22,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:06:24,369.369 INFO    ] ================================================
[2026-06-05 12:06:24,385.385 INFO    ] Launching Daemon at Fri Jun  5 12:06:24 IST 2026
[2026-06-05 12:06:24,396.396 INFO    ] ================================================
[2026-06-05 12:06:24,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:06:24
[2026-06-05 12:06:25,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:06:25,840.840 INFO    ] Initializing speech engine...
[2026-06-05 12:06:25,850.850 INFO    ] 2026-06-05 12:06:25
[2026-06-05 12:06:26,094.094 INFO    ] 2026-06-05 12:06:26
[2026-06-05 12:06:26,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:06:26,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:06:26,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:06:26,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:06:26,564.564 INFO    ] time= 05/06/2026 12:06:26
[2026-06-05 12:06:26,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:06:26,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:06:26,778.778 INFO    ] No existing commands found in stream
[2026-06-05 12:06:31,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:06:31,806.806 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 12:06:35,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:06:35,421.421 INFO    ] Checking for system updates...
[2026-06-05 12:06:35,457.457 INFO    ] 200
[2026-06-05 12:06:35,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:06:35,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:06:35,518.518 INFO    ] No update needed
[2026-06-05 12:06:35,521.521 INFO    ] Checking for camera pi updates...
[2026-06-05 12:06:35,554.554 INFO    ] 200
[2026-06-05 12:06:35,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:06:35,598.598 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:06:35,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:06:35,646.646 INFO    ] No camera update needed
[2026-06-05 12:06:35,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:06:35,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:06:35,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:06:35,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:06:37,701.701 INFO    ] ================================================
[2026-06-05 12:06:37,716.716 INFO    ] Launching Daemon at Fri Jun  5 12:06:37 IST 2026
[2026-06-05 12:06:37,727.727 INFO    ] ================================================
[2026-06-05 12:06:38,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:06:38
[2026-06-05 12:06:38,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:06:39,193.193 INFO    ] Initializing speech engine...
[2026-06-05 12:06:39,216.216 INFO    ] 2026-06-05 12:06:39
[2026-06-05 12:06:39,488.488 INFO    ] 2026-06-05 12:06:39
[2026-06-05 12:06:39,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:06:39,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:06:39,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:06:39,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:06:40,045.045 INFO    ] time= 05/06/2026 12:06:39
[2026-06-05 12:06:40,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:06:40,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:06:40,229.229 INFO    ] No existing commands found in stream
[2026-06-05 12:06:45,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:06:45,268.268 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 12:06:48,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:06:48,597.597 INFO    ] Checking for system updates...
[2026-06-05 12:06:48,638.638 INFO    ] 200
[2026-06-05 12:06:48,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:06:48,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:06:48,702.702 INFO    ] No update needed
[2026-06-05 12:06:48,704.704 INFO    ] Checking for camera pi updates...
[2026-06-05 12:06:48,738.738 INFO    ] 200
[2026-06-05 12:06:48,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:06:48,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:06:48,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:06:48,831.831 INFO    ] No camera update needed
[2026-06-05 12:06:48,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:06:48,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:06:48,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:06:48,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:06:50,886.886 INFO    ] ================================================
[2026-06-05 12:06:50,901.901 INFO    ] Launching Daemon at Fri Jun  5 12:06:50 IST 2026
[2026-06-05 12:06:50,912.912 INFO    ] ================================================
[2026-06-05 12:06:51,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:06:51
[2026-06-05 12:06:52,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:06:52,372.372 INFO    ] Initializing speech engine...
[2026-06-05 12:06:52,378.378 INFO    ] 2026-06-05 12:06:52
[2026-06-05 12:06:52,639.639 INFO    ] 2026-06-05 12:06:52
[2026-06-05 12:06:52,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:06:52,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:06:52,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:06:53,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:06:53,100.100 INFO    ] time= 05/06/2026 12:06:53
[2026-06-05 12:06:53,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:06:53,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:06:53,341.341 INFO    ] No existing commands found in stream
[2026-06-05 12:06:58,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:06:58,363.363 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 12:07:00,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:07:00,362.362 INFO    ] Checking for system updates...
[2026-06-05 12:07:00,398.398 INFO    ] 200
[2026-06-05 12:07:00,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:00,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:07:00,462.462 INFO    ] No update needed
[2026-06-05 12:07:00,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 12:07:00,501.501 INFO    ] 200
[2026-06-05 12:07:00,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:00,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:07:00,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:07:00,593.593 INFO    ] No camera update needed
[2026-06-05 12:07:00,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:07:00,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:07:00,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:07:00,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:07:02,652.652 INFO    ] ================================================
[2026-06-05 12:07:02,667.667 INFO    ] Launching Daemon at Fri Jun  5 12:07:02 IST 2026
[2026-06-05 12:07:02,679.679 INFO    ] ================================================
[2026-06-05 12:07:03,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:07:03
[2026-06-05 12:07:03,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:07:04,126.126 INFO    ] Initializing speech engine...
[2026-06-05 12:07:04,133.133 INFO    ] 2026-06-05 12:07:04
[2026-06-05 12:07:04,393.393 INFO    ] 2026-06-05 12:07:04
[2026-06-05 12:07:04,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:07:04,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:07:04,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:07:04,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:07:04,875.875 INFO    ] time= 05/06/2026 12:07:04
[2026-06-05 12:07:04,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:07:04,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:07:05,118.118 INFO    ] No existing commands found in stream
[2026-06-05 12:07:10,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:07:10,160.160 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 12:07:10,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:07:10,900.900 INFO    ] Checking for system updates...
[2026-06-05 12:07:10,937.937 INFO    ] 200
[2026-06-05 12:07:10,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:10,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:07:11,000.000 INFO    ] No update needed
[2026-06-05 12:07:11,002.002 INFO    ] Checking for camera pi updates...
[2026-06-05 12:07:11,036.036 INFO    ] 200
[2026-06-05 12:07:11,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:11,085.085 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:07:11,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:07:11,141.141 INFO    ] No camera update needed
[2026-06-05 12:07:11,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:07:11,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:07:11,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:07:11,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:07:13,197.197 INFO    ] ================================================
[2026-06-05 12:07:13,212.212 INFO    ] Launching Daemon at Fri Jun  5 12:07:13 IST 2026
[2026-06-05 12:07:13,223.223 INFO    ] ================================================
[2026-06-05 12:07:13,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:07:13
[2026-06-05 12:07:14,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:07:14,741.741 INFO    ] Initializing speech engine...
[2026-06-05 12:07:14,749.749 INFO    ] 2026-06-05 12:07:14
[2026-06-05 12:07:15,022.022 INFO    ] 2026-06-05 12:07:15
[2026-06-05 12:07:15,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:07:15,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:07:15,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:07:15,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:07:15,526.526 INFO    ] time= 05/06/2026 12:07:15
[2026-06-05 12:07:15,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:07:15,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:07:15,766.766 INFO    ] No existing commands found in stream
[2026-06-05 12:07:20,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:07:20,799.799 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 12:07:21,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:07:21,262.262 INFO    ] Checking for system updates...
[2026-06-05 12:07:21,299.299 INFO    ] 200
[2026-06-05 12:07:21,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:21,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:07:21,362.362 INFO    ] No update needed
[2026-06-05 12:07:21,364.364 INFO    ] Checking for camera pi updates...
[2026-06-05 12:07:21,401.401 INFO    ] 200
[2026-06-05 12:07:21,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:21,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:07:21,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:07:21,594.594 INFO    ] No camera update needed
[2026-06-05 12:07:21,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:07:21,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:07:21,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:07:21,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:07:23,649.649 INFO    ] ================================================
[2026-06-05 12:07:23,665.665 INFO    ] Launching Daemon at Fri Jun  5 12:07:23 IST 2026
[2026-06-05 12:07:23,677.677 INFO    ] ================================================
[2026-06-05 12:07:24,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:07:24
[2026-06-05 12:07:24,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:07:25,282.282 INFO    ] Initializing speech engine...
[2026-06-05 12:07:25,294.294 INFO    ] 2026-06-05 12:07:25
[2026-06-05 12:07:25,581.581 INFO    ] 2026-06-05 12:07:25
[2026-06-05 12:07:25,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:07:25,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:07:25,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:07:26,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:07:26,346.346 INFO    ] time= 05/06/2026 12:07:26
[2026-06-05 12:07:26,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:07:26,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:07:26,559.559 INFO    ] No existing commands found in stream
[2026-06-05 12:07:31,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:07:31,573.573 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 12:07:33,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:07:33,589.589 INFO    ] Checking for system updates...
[2026-06-05 12:07:33,626.626 INFO    ] 200
[2026-06-05 12:07:33,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:33,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:07:33,685.685 INFO    ] No update needed
[2026-06-05 12:07:33,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 12:07:33,723.723 INFO    ] 200
[2026-06-05 12:07:33,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:33,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:07:33,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:07:33,831.831 INFO    ] No camera update needed
[2026-06-05 12:07:33,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:07:33,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:07:33,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:07:33,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:07:35,888.888 INFO    ] ================================================
[2026-06-05 12:07:35,903.903 INFO    ] Launching Daemon at Fri Jun  5 12:07:35 IST 2026
[2026-06-05 12:07:35,914.914 INFO    ] ================================================
[2026-06-05 12:07:36,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:07:36
[2026-06-05 12:07:37,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:07:37,338.338 INFO    ] Initializing speech engine...
[2026-06-05 12:07:37,348.348 INFO    ] 2026-06-05 12:07:37
[2026-06-05 12:07:37,610.610 INFO    ] 2026-06-05 12:07:37
[2026-06-05 12:07:37,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:07:37,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:07:37,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:07:38,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:07:38,013.013 INFO    ] time= 05/06/2026 12:07:38
[2026-06-05 12:07:38,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:07:38,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:07:38,175.175 INFO    ] No existing commands found in stream
[2026-06-05 12:07:43,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:07:43,208.208 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 12:07:49,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:07:49,568.568 INFO    ] Checking for system updates...
[2026-06-05 12:07:49,606.606 INFO    ] 200
[2026-06-05 12:07:49,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:49,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:07:49,664.664 INFO    ] No update needed
[2026-06-05 12:07:49,666.666 INFO    ] Checking for camera pi updates...
[2026-06-05 12:07:49,703.703 INFO    ] 200
[2026-06-05 12:07:49,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:07:49,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:07:49,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:07:49,797.797 INFO    ] No camera update needed
[2026-06-05 12:07:49,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:07:49,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:07:49,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:07:49,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:07:51,855.855 INFO    ] ================================================
[2026-06-05 12:07:51,871.871 INFO    ] Launching Daemon at Fri Jun  5 12:07:51 IST 2026
[2026-06-05 12:07:51,881.881 INFO    ] ================================================
[2026-06-05 12:07:52,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:07:52
[2026-06-05 12:07:53,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:07:53,344.344 INFO    ] Initializing speech engine...
[2026-06-05 12:07:53,350.350 INFO    ] 2026-06-05 12:07:53
[2026-06-05 12:07:53,608.608 INFO    ] 2026-06-05 12:07:53
[2026-06-05 12:07:53,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:07:53,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:07:53,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:07:54,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:07:54,070.070 INFO    ] time= 05/06/2026 12:07:54
[2026-06-05 12:07:54,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:07:54,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:07:54,283.283 INFO    ] No existing commands found in stream
[2026-06-05 12:07:59,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:07:59,318.318 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 12:08:03,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:08:03,795.795 INFO    ] Checking for system updates...
[2026-06-05 12:08:03,835.835 INFO    ] 200
[2026-06-05 12:08:03,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:03,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:08:03,899.899 INFO    ] No update needed
[2026-06-05 12:08:03,901.901 INFO    ] Checking for camera pi updates...
[2026-06-05 12:08:03,935.935 INFO    ] 200
[2026-06-05 12:08:03,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:03,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:08:04,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:08:04,021.021 INFO    ] No camera update needed
[2026-06-05 12:08:04,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:08:04,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:08:04,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:08:04,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:08:06,077.077 INFO    ] ================================================
[2026-06-05 12:08:06,093.093 INFO    ] Launching Daemon at Fri Jun  5 12:08:06 IST 2026
[2026-06-05 12:08:06,104.104 INFO    ] ================================================
[2026-06-05 12:08:06,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:08:06
[2026-06-05 12:08:07,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:08:07,545.545 INFO    ] Initializing speech engine...
[2026-06-05 12:08:07,554.554 INFO    ] 2026-06-05 12:08:07
[2026-06-05 12:08:07,805.805 INFO    ] 2026-06-05 12:08:07
[2026-06-05 12:08:07,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:08:08,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:08:08,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:08:08,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:08:08,205.205 INFO    ] time= 05/06/2026 12:08:08
[2026-06-05 12:08:08,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:08:08,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:08:08,359.359 INFO    ] No existing commands found in stream
[2026-06-05 12:08:13,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:08:13,387.387 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 12:08:17,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:08:17,308.308 INFO    ] Checking for system updates...
[2026-06-05 12:08:17,347.347 INFO    ] 200
[2026-06-05 12:08:17,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:17,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:08:17,411.411 INFO    ] No update needed
[2026-06-05 12:08:17,414.414 INFO    ] Checking for camera pi updates...
[2026-06-05 12:08:17,450.450 INFO    ] 200
[2026-06-05 12:08:17,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:17,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:08:17,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:08:17,553.553 INFO    ] No camera update needed
[2026-06-05 12:08:17,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:08:17,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:08:17,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:08:17,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:08:19,616.616 INFO    ] ================================================
[2026-06-05 12:08:19,633.633 INFO    ] Launching Daemon at Fri Jun  5 12:08:19 IST 2026
[2026-06-05 12:08:19,645.645 INFO    ] ================================================
[2026-06-05 12:08:20,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:08:20
[2026-06-05 12:08:20,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:08:21,081.081 INFO    ] Initializing speech engine...
[2026-06-05 12:08:21,102.102 INFO    ] 2026-06-05 12:08:21
[2026-06-05 12:08:21,362.362 INFO    ] 2026-06-05 12:08:21
[2026-06-05 12:08:21,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:08:21,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:08:21,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:08:21,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:08:21,741.741 INFO    ] time= 05/06/2026 12:08:21
[2026-06-05 12:08:21,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:08:21,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:08:21,838.838 INFO    ] No existing commands found in stream
[2026-06-05 12:08:26,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:08:26,854.854 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 12:08:28,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:08:28,850.850 INFO    ] Checking for system updates...
[2026-06-05 12:08:28,886.886 INFO    ] 200
[2026-06-05 12:08:28,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:28,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:08:28,945.945 INFO    ] No update needed
[2026-06-05 12:08:28,947.947 INFO    ] Checking for camera pi updates...
[2026-06-05 12:08:28,980.980 INFO    ] 200
[2026-06-05 12:08:28,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:29,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:08:29,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:08:29,081.081 INFO    ] No camera update needed
[2026-06-05 12:08:29,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:08:29,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:08:29,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:08:29,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:08:31,138.138 INFO    ] ================================================
[2026-06-05 12:08:31,153.153 INFO    ] Launching Daemon at Fri Jun  5 12:08:31 IST 2026
[2026-06-05 12:08:31,164.164 INFO    ] ================================================
[2026-06-05 12:08:31,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:08:31
[2026-06-05 12:08:32,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:08:32,677.677 INFO    ] Initializing speech engine...
[2026-06-05 12:08:32,689.689 INFO    ] 2026-06-05 12:08:32
[2026-06-05 12:08:32,956.956 INFO    ] 2026-06-05 12:08:32
[2026-06-05 12:08:32,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:08:33,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:08:33,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:08:33,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:08:33,535.535 INFO    ] time= 05/06/2026 12:08:33
[2026-06-05 12:08:33,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:08:33,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:08:33,676.676 INFO    ] No existing commands found in stream
[2026-06-05 12:08:38,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:08:38,704.704 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 12:08:39,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:08:39,161.161 INFO    ] Checking for system updates...
[2026-06-05 12:08:39,197.197 INFO    ] 200
[2026-06-05 12:08:39,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:39,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:08:39,261.261 INFO    ] No update needed
[2026-06-05 12:08:39,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 12:08:39,300.300 INFO    ] 200
[2026-06-05 12:08:39,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:39,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:08:39,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:08:39,393.393 INFO    ] No camera update needed
[2026-06-05 12:08:39,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:08:39,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:08:39,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:08:39,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:08:41,450.450 INFO    ] ================================================
[2026-06-05 12:08:41,466.466 INFO    ] Launching Daemon at Fri Jun  5 12:08:41 IST 2026
[2026-06-05 12:08:41,478.478 INFO    ] ================================================
[2026-06-05 12:08:42,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:08:42
[2026-06-05 12:08:42,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:08:42,905.905 INFO    ] Initializing speech engine...
[2026-06-05 12:08:42,912.912 INFO    ] 2026-06-05 12:08:42
[2026-06-05 12:08:43,197.197 INFO    ] 2026-06-05 12:08:43
[2026-06-05 12:08:43,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:08:43,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:08:43,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:08:43,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:08:43,600.600 INFO    ] time= 05/06/2026 12:08:43
[2026-06-05 12:08:43,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:08:43,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:08:43,757.757 INFO    ] No existing commands found in stream
[2026-06-05 12:08:48,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:08:48,784.784 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 12:08:49,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:08:49,816.816 INFO    ] Checking for system updates...
[2026-06-05 12:08:49,852.852 INFO    ] 200
[2026-06-05 12:08:49,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:49,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:08:49,909.909 INFO    ] No update needed
[2026-06-05 12:08:49,912.912 INFO    ] Checking for camera pi updates...
[2026-06-05 12:08:49,946.946 INFO    ] 200
[2026-06-05 12:08:49,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:08:49,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:08:50,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:08:50,043.043 INFO    ] No camera update needed
[2026-06-05 12:08:50,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:08:50,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:08:50,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:08:50,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:08:52,102.102 INFO    ] ================================================
[2026-06-05 12:08:52,117.117 INFO    ] Launching Daemon at Fri Jun  5 12:08:52 IST 2026
[2026-06-05 12:08:52,128.128 INFO    ] ================================================
[2026-06-05 12:08:52,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:08:52
[2026-06-05 12:08:53,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:08:53,566.566 INFO    ] Initializing speech engine...
[2026-06-05 12:08:53,590.590 INFO    ] 2026-06-05 12:08:53
[2026-06-05 12:08:53,858.858 INFO    ] 2026-06-05 12:08:53
[2026-06-05 12:08:53,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:08:54,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:08:54,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:08:54,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:08:54,225.225 INFO    ] time= 05/06/2026 12:08:54
[2026-06-05 12:08:54,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:08:54,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:08:54,345.345 INFO    ] No existing commands found in stream
[2026-06-05 12:08:59,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:08:59,360.360 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 12:09:00,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:09:00,574.574 INFO    ] Checking for system updates...
[2026-06-05 12:09:00,610.610 INFO    ] 200
[2026-06-05 12:09:00,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:00,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:09:00,672.672 INFO    ] No update needed
[2026-06-05 12:09:00,674.674 INFO    ] Checking for camera pi updates...
[2026-06-05 12:09:00,708.708 INFO    ] 200
[2026-06-05 12:09:00,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:00,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:09:00,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:09:00,805.805 INFO    ] No camera update needed
[2026-06-05 12:09:00,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:09:00,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:09:00,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:09:00,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:09:02,869.869 INFO    ] ================================================
[2026-06-05 12:09:02,890.890 INFO    ] Launching Daemon at Fri Jun  5 12:09:02 IST 2026
[2026-06-05 12:09:02,912.912 INFO    ] ================================================
[2026-06-05 12:09:03,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:09:03
[2026-06-05 12:09:04,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:09:04,379.379 INFO    ] Initializing speech engine...
[2026-06-05 12:09:04,388.388 INFO    ] 2026-06-05 12:09:04
[2026-06-05 12:09:04,643.643 INFO    ] 2026-06-05 12:09:04
[2026-06-05 12:09:04,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:09:04,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:09:04,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:09:05,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:09:05,031.031 INFO    ] time= 05/06/2026 12:09:05
[2026-06-05 12:09:05,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:09:05,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:09:05,223.223 INFO    ] No existing commands found in stream
[2026-06-05 12:09:10,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:09:10,240.240 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 12:09:12,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:09:12,012.012 INFO    ] Checking for system updates...
[2026-06-05 12:09:12,048.048 INFO    ] 200
[2026-06-05 12:09:12,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:12,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:09:12,106.106 INFO    ] No update needed
[2026-06-05 12:09:12,108.108 INFO    ] Checking for camera pi updates...
[2026-06-05 12:09:12,142.142 INFO    ] 200
[2026-06-05 12:09:12,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:12,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:09:12,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:09:12,241.241 INFO    ] No camera update needed
[2026-06-05 12:09:12,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:09:12,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:09:12,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:09:12,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:09:14,296.296 INFO    ] ================================================
[2026-06-05 12:09:14,311.311 INFO    ] Launching Daemon at Fri Jun  5 12:09:14 IST 2026
[2026-06-05 12:09:14,323.323 INFO    ] ================================================
[2026-06-05 12:09:14,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:09:14
[2026-06-05 12:09:15,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:09:15,740.740 INFO    ] Initializing speech engine...
[2026-06-05 12:09:15,750.750 INFO    ] 2026-06-05 12:09:15
[2026-06-05 12:09:16,027.027 INFO    ] 2026-06-05 12:09:16
[2026-06-05 12:09:16,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:09:16,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:09:16,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:09:16,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:09:16,506.506 INFO    ] time= 05/06/2026 12:09:16
[2026-06-05 12:09:16,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:09:16,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:09:16,742.742 INFO    ] No existing commands found in stream
[2026-06-05 12:09:21,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:09:21,760.760 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 12:09:25,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:09:25,554.554 INFO    ] Checking for system updates...
[2026-06-05 12:09:25,593.593 INFO    ] 200
[2026-06-05 12:09:25,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:25,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:09:25,651.651 INFO    ] No update needed
[2026-06-05 12:09:25,654.654 INFO    ] Checking for camera pi updates...
[2026-06-05 12:09:25,687.687 INFO    ] 200
[2026-06-05 12:09:25,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:25,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:09:25,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:09:25,881.881 INFO    ] No camera update needed
[2026-06-05 12:09:25,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:09:25,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:09:25,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:09:25,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:09:27,938.938 INFO    ] ================================================
[2026-06-05 12:09:27,954.954 INFO    ] Launching Daemon at Fri Jun  5 12:09:27 IST 2026
[2026-06-05 12:09:27,966.966 INFO    ] ================================================
[2026-06-05 12:09:28,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:09:28
[2026-06-05 12:09:29,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:09:29,375.375 INFO    ] Initializing speech engine...
[2026-06-05 12:09:29,391.391 INFO    ] 2026-06-05 12:09:29
[2026-06-05 12:09:29,645.645 INFO    ] 2026-06-05 12:09:29
[2026-06-05 12:09:29,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:09:29,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:09:29,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:09:30,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:09:30,132.132 INFO    ] time= 05/06/2026 12:09:30
[2026-06-05 12:09:30,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:09:30,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:09:30,352.352 INFO    ] No existing commands found in stream
[2026-06-05 12:09:35,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:09:35,380.380 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 12:09:37,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:09:37,531.531 INFO    ] Checking for system updates...
[2026-06-05 12:09:37,567.567 INFO    ] 200
[2026-06-05 12:09:37,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:37,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:09:37,630.630 INFO    ] No update needed
[2026-06-05 12:09:37,632.632 INFO    ] Checking for camera pi updates...
[2026-06-05 12:09:37,669.669 INFO    ] 200
[2026-06-05 12:09:37,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:37,715.715 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:09:37,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:09:37,771.771 INFO    ] No camera update needed
[2026-06-05 12:09:37,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:09:37,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:09:37,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:09:37,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:09:39,829.829 INFO    ] ================================================
[2026-06-05 12:09:39,844.844 INFO    ] Launching Daemon at Fri Jun  5 12:09:39 IST 2026
[2026-06-05 12:09:39,856.856 INFO    ] ================================================
[2026-06-05 12:09:40,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:09:40
[2026-06-05 12:09:41,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:09:41,295.295 INFO    ] Initializing speech engine...
[2026-06-05 12:09:41,310.310 INFO    ] 2026-06-05 12:09:41
[2026-06-05 12:09:41,576.576 INFO    ] 2026-06-05 12:09:41
[2026-06-05 12:09:41,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:09:41,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:09:41,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:09:42,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:09:42,059.059 INFO    ] time= 05/06/2026 12:09:42
[2026-06-05 12:09:42,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:09:42,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:09:42,296.296 INFO    ] No existing commands found in stream
[2026-06-05 12:09:47,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:09:47,324.324 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 12:09:49,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:09:49,730.730 INFO    ] Checking for system updates...
[2026-06-05 12:09:49,765.765 INFO    ] 200
[2026-06-05 12:09:49,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:49,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:09:49,824.824 INFO    ] No update needed
[2026-06-05 12:09:49,827.827 INFO    ] Checking for camera pi updates...
[2026-06-05 12:09:49,860.860 INFO    ] 200
[2026-06-05 12:09:49,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:09:49,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:09:49,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:09:49,960.960 INFO    ] No camera update needed
[2026-06-05 12:09:49,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:09:49,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:09:49,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:09:49,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:09:52,016.016 INFO    ] ================================================
[2026-06-05 12:09:52,032.032 INFO    ] Launching Daemon at Fri Jun  5 12:09:52 IST 2026
[2026-06-05 12:09:52,043.043 INFO    ] ================================================
[2026-06-05 12:09:52,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:09:52
[2026-06-05 12:09:53,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:09:53,462.462 INFO    ] Initializing speech engine...
[2026-06-05 12:09:53,477.477 INFO    ] 2026-06-05 12:09:53
[2026-06-05 12:09:53,744.744 INFO    ] 2026-06-05 12:09:53
[2026-06-05 12:09:53,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:09:54,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:09:54,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:09:54,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:09:54,268.268 INFO    ] time= 05/06/2026 12:09:54
[2026-06-05 12:09:54,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:09:54,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:09:54,438.438 INFO    ] No existing commands found in stream
[2026-06-05 12:09:59,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:09:59,468.468 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 12:10:00,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:10:00,994.994 INFO    ] Checking for system updates...
[2026-06-05 12:10:01,033.033 INFO    ] 200
[2026-06-05 12:10:01,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:01,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:10:01,096.096 INFO    ] No update needed
[2026-06-05 12:10:01,099.099 INFO    ] Checking for camera pi updates...
[2026-06-05 12:10:01,133.133 INFO    ] 200
[2026-06-05 12:10:01,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:01,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:10:01,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:10:01,263.263 INFO    ] No camera update needed
[2026-06-05 12:10:01,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:10:01,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:10:01,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:10:01,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:10:03,339.339 INFO    ] ================================================
[2026-06-05 12:10:03,365.365 INFO    ] Launching Daemon at Fri Jun  5 12:10:03 IST 2026
[2026-06-05 12:10:03,382.382 INFO    ] ================================================
[2026-06-05 12:10:04,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:10:04
[2026-06-05 12:10:04,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:10:04,873.873 INFO    ] Initializing speech engine...
[2026-06-05 12:10:04,887.887 INFO    ] 2026-06-05 12:10:04
[2026-06-05 12:10:05,156.156 INFO    ] 2026-06-05 12:10:05
[2026-06-05 12:10:05,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:10:05,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:10:05,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:10:05,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:10:05,636.636 INFO    ] time= 05/06/2026 12:10:05
[2026-06-05 12:10:05,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:10:05,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:10:05,882.882 INFO    ] No existing commands found in stream
[2026-06-05 12:10:10,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:10:10,908.908 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 12:10:11,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:10:11,401.401 INFO    ] Checking for system updates...
[2026-06-05 12:10:11,441.441 INFO    ] 200
[2026-06-05 12:10:11,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:11,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:10:11,500.500 INFO    ] No update needed
[2026-06-05 12:10:11,502.502 INFO    ] Checking for camera pi updates...
[2026-06-05 12:10:11,537.537 INFO    ] 200
[2026-06-05 12:10:11,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:11,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:10:11,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:10:11,631.631 INFO    ] No camera update needed
[2026-06-05 12:10:11,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:10:11,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:10:11,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:10:11,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:10:13,687.687 INFO    ] ================================================
[2026-06-05 12:10:13,701.701 INFO    ] Launching Daemon at Fri Jun  5 12:10:13 IST 2026
[2026-06-05 12:10:13,712.712 INFO    ] ================================================
[2026-06-05 12:10:14,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:10:14
[2026-06-05 12:10:14,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:10:15,293.293 INFO    ] Initializing speech engine...
[2026-06-05 12:10:15,302.302 INFO    ] 2026-06-05 12:10:15
[2026-06-05 12:10:15,584.584 INFO    ] 2026-06-05 12:10:15
[2026-06-05 12:10:15,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:10:15,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:10:15,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:10:16,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:10:16,126.126 INFO    ] time= 05/06/2026 12:10:16
[2026-06-05 12:10:16,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:10:16,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:10:16,281.281 INFO    ] No existing commands found in stream
[2026-06-05 12:10:21,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:10:21,320.320 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 12:10:25,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:10:25,523.523 INFO    ] Checking for system updates...
[2026-06-05 12:10:25,560.560 INFO    ] 200
[2026-06-05 12:10:25,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:25,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:10:25,618.618 INFO    ] No update needed
[2026-06-05 12:10:25,620.620 INFO    ] Checking for camera pi updates...
[2026-06-05 12:10:25,657.657 INFO    ] 200
[2026-06-05 12:10:25,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:25,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:10:25,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:10:25,753.753 INFO    ] No camera update needed
[2026-06-05 12:10:25,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:10:25,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:10:25,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:10:25,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:10:27,809.809 INFO    ] ================================================
[2026-06-05 12:10:27,824.824 INFO    ] Launching Daemon at Fri Jun  5 12:10:27 IST 2026
[2026-06-05 12:10:27,835.835 INFO    ] ================================================
[2026-06-05 12:10:28,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:10:28
[2026-06-05 12:10:29,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:10:29,353.353 INFO    ] Initializing speech engine...
[2026-06-05 12:10:29,361.361 INFO    ] 2026-06-05 12:10:29
[2026-06-05 12:10:29,631.631 INFO    ] 2026-06-05 12:10:29
[2026-06-05 12:10:29,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:10:29,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:10:29,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:10:30,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:10:30,183.183 INFO    ] time= 05/06/2026 12:10:30
[2026-06-05 12:10:30,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:10:30,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:10:30,621.621 INFO    ] No existing commands found in stream
[2026-06-05 12:10:35,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:10:35,642.642 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 12:10:38,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:10:38,793.793 INFO    ] Checking for system updates...
[2026-06-05 12:10:38,830.830 INFO    ] 200
[2026-06-05 12:10:38,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:38,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:10:38,894.894 INFO    ] No update needed
[2026-06-05 12:10:38,897.897 INFO    ] Checking for camera pi updates...
[2026-06-05 12:10:38,932.932 INFO    ] 200
[2026-06-05 12:10:38,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:38,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:10:39,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:10:39,033.033 INFO    ] No camera update needed
[2026-06-05 12:10:39,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:10:39,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:10:39,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:10:39,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:10:41,091.091 INFO    ] ================================================
[2026-06-05 12:10:41,106.106 INFO    ] Launching Daemon at Fri Jun  5 12:10:41 IST 2026
[2026-06-05 12:10:41,117.117 INFO    ] ================================================
[2026-06-05 12:10:41,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:10:41
[2026-06-05 12:10:42,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:10:42,535.535 INFO    ] Initializing speech engine...
[2026-06-05 12:10:42,543.543 INFO    ] 2026-06-05 12:10:42
[2026-06-05 12:10:42,790.790 INFO    ] 2026-06-05 12:10:42
[2026-06-05 12:10:42,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:10:43,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:10:43,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:10:43,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:10:43,267.267 INFO    ] time= 05/06/2026 12:10:43
[2026-06-05 12:10:43,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:10:43,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:10:43,502.502 INFO    ] No existing commands found in stream
[2026-06-05 12:10:48,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:10:48,524.524 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 12:10:50,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:10:50,461.461 INFO    ] Checking for system updates...
[2026-06-05 12:10:50,499.499 INFO    ] 200
[2026-06-05 12:10:50,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:50,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:10:50,562.562 INFO    ] No update needed
[2026-06-05 12:10:50,564.564 INFO    ] Checking for camera pi updates...
[2026-06-05 12:10:50,597.597 INFO    ] 200
[2026-06-05 12:10:50,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:10:50,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:10:50,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:10:50,687.687 INFO    ] No camera update needed
[2026-06-05 12:10:50,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:10:50,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:10:50,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:10:50,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:10:52,743.743 INFO    ] ================================================
[2026-06-05 12:10:52,759.759 INFO    ] Launching Daemon at Fri Jun  5 12:10:52 IST 2026
[2026-06-05 12:10:52,770.770 INFO    ] ================================================
[2026-06-05 12:10:53,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:10:53
[2026-06-05 12:10:53,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:10:54,240.240 INFO    ] Initializing speech engine...
[2026-06-05 12:10:54,248.248 INFO    ] 2026-06-05 12:10:54
[2026-06-05 12:10:54,532.532 INFO    ] 2026-06-05 12:10:54
[2026-06-05 12:10:54,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:10:54,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:10:54,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:10:55,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:10:55,081.081 INFO    ] time= 05/06/2026 12:10:55
[2026-06-05 12:10:55,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:10:55,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:10:55,236.236 INFO    ] No existing commands found in stream
[2026-06-05 12:11:00,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:11:00,256.256 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 12:11:00,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:11:00,867.867 INFO    ] Checking for system updates...
[2026-06-05 12:11:00,904.904 INFO    ] 200
[2026-06-05 12:11:00,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:00,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:11:00,963.963 INFO    ] No update needed
[2026-06-05 12:11:00,966.966 INFO    ] Checking for camera pi updates...
[2026-06-05 12:11:01,001.001 INFO    ] 200
[2026-06-05 12:11:01,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:01,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:11:01,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:11:01,109.109 INFO    ] No camera update needed
[2026-06-05 12:11:01,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:11:01,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:11:01,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:11:01,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:11:03,179.179 INFO    ] ================================================
[2026-06-05 12:11:03,202.202 INFO    ] Launching Daemon at Fri Jun  5 12:11:03 IST 2026
[2026-06-05 12:11:03,225.225 INFO    ] ================================================
[2026-06-05 12:11:03,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:11:03
[2026-06-05 12:11:04,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:11:04,721.721 INFO    ] Initializing speech engine...
[2026-06-05 12:11:04,730.730 INFO    ] 2026-06-05 12:11:04
[2026-06-05 12:11:05,022.022 INFO    ] 2026-06-05 12:11:04
[2026-06-05 12:11:05,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:11:05,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:11:05,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:11:05,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:11:05,619.619 INFO    ] time= 05/06/2026 12:11:05
[2026-06-05 12:11:05,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:11:05,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:11:05,776.776 INFO    ] No existing commands found in stream
[2026-06-05 12:11:10,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:11:10,801.801 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 12:11:13,139.139 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:11:13,142.142 INFO    ] Checking for system updates...
[2026-06-05 12:11:13,179.179 INFO    ] 200
[2026-06-05 12:11:13,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:13,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:11:13,243.243 INFO    ] No update needed
[2026-06-05 12:11:13,246.246 INFO    ] Checking for camera pi updates...
[2026-06-05 12:11:13,338.338 INFO    ] 200
[2026-06-05 12:11:13,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:13,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:11:13,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:11:13,437.437 INFO    ] No camera update needed
[2026-06-05 12:11:13,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:11:13,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:11:13,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:11:13,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:11:15,493.493 INFO    ] ================================================
[2026-06-05 12:11:15,508.508 INFO    ] Launching Daemon at Fri Jun  5 12:11:15 IST 2026
[2026-06-05 12:11:15,519.519 INFO    ] ================================================
[2026-06-05 12:11:16,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:11:16
[2026-06-05 12:11:16,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:11:16,968.968 INFO    ] Initializing speech engine...
[2026-06-05 12:11:16,974.974 INFO    ] 2026-06-05 12:11:16
[2026-06-05 12:11:17,270.270 INFO    ] 2026-06-05 12:11:17
[2026-06-05 12:11:17,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:11:17,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:11:17,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:11:17,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:11:17,685.685 INFO    ] time= 05/06/2026 12:11:17
[2026-06-05 12:11:17,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:11:17,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:11:17,771.771 INFO    ] No existing commands found in stream
[2026-06-05 12:11:22,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:11:22,789.789 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 12:11:24,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:11:24,970.970 INFO    ] Checking for system updates...
[2026-06-05 12:11:25,010.010 INFO    ] 200
[2026-06-05 12:11:25,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:25,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:11:25,068.068 INFO    ] No update needed
[2026-06-05 12:11:25,070.070 INFO    ] Checking for camera pi updates...
[2026-06-05 12:11:25,104.104 INFO    ] 200
[2026-06-05 12:11:25,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:25,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:11:25,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:11:25,198.198 INFO    ] No camera update needed
[2026-06-05 12:11:25,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:11:25,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:11:25,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:11:25,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:11:27,254.254 INFO    ] ================================================
[2026-06-05 12:11:27,270.270 INFO    ] Launching Daemon at Fri Jun  5 12:11:27 IST 2026
[2026-06-05 12:11:27,281.281 INFO    ] ================================================
[2026-06-05 12:11:27,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:11:27
[2026-06-05 12:11:28,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:11:28,776.776 INFO    ] Initializing speech engine...
[2026-06-05 12:11:28,787.787 INFO    ] 2026-06-05 12:11:28
[2026-06-05 12:11:29,051.051 INFO    ] 2026-06-05 12:11:29
[2026-06-05 12:11:29,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:11:29,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:11:29,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:11:29,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:11:29,561.561 INFO    ] time= 05/06/2026 12:11:29
[2026-06-05 12:11:29,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:11:29,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:11:29,772.772 INFO    ] No existing commands found in stream
[2026-06-05 12:11:34,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:11:34,798.798 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 12:11:35,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:11:35,851.851 INFO    ] Checking for system updates...
[2026-06-05 12:11:35,889.889 INFO    ] 200
[2026-06-05 12:11:35,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:35,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:11:35,954.954 INFO    ] No update needed
[2026-06-05 12:11:35,957.957 INFO    ] Checking for camera pi updates...
[2026-06-05 12:11:35,992.992 INFO    ] 200
[2026-06-05 12:11:35,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:36,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:11:36,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:11:36,090.090 INFO    ] No camera update needed
[2026-06-05 12:11:36,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:11:36,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:11:36,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:11:36,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:11:38,150.150 INFO    ] ================================================
[2026-06-05 12:11:38,165.165 INFO    ] Launching Daemon at Fri Jun  5 12:11:38 IST 2026
[2026-06-05 12:11:38,176.176 INFO    ] ================================================
[2026-06-05 12:11:38,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:11:38
[2026-06-05 12:11:39,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:11:39,638.638 INFO    ] Initializing speech engine...
[2026-06-05 12:11:39,646.646 INFO    ] 2026-06-05 12:11:39
[2026-06-05 12:11:39,907.907 INFO    ] 2026-06-05 12:11:39
[2026-06-05 12:11:39,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:11:40,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:11:40,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:11:40,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:11:40,880.880 INFO    ] time= 05/06/2026 12:11:40
[2026-06-05 12:11:40,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:11:40,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:11:41,107.107 INFO    ] No existing commands found in stream
[2026-06-05 12:11:46,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:11:46,123.123 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 12:11:48,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:11:48,789.789 INFO    ] Checking for system updates...
[2026-06-05 12:11:48,826.826 INFO    ] 200
[2026-06-05 12:11:48,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:48,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:11:48,885.885 INFO    ] No update needed
[2026-06-05 12:11:48,887.887 INFO    ] Checking for camera pi updates...
[2026-06-05 12:11:48,926.926 INFO    ] 200
[2026-06-05 12:11:48,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:48,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:11:49,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:11:49,023.023 INFO    ] No camera update needed
[2026-06-05 12:11:49,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:11:49,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:11:49,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:11:49,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:11:51,079.079 INFO    ] ================================================
[2026-06-05 12:11:51,094.094 INFO    ] Launching Daemon at Fri Jun  5 12:11:51 IST 2026
[2026-06-05 12:11:51,104.104 INFO    ] ================================================
[2026-06-05 12:11:51,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:11:51
[2026-06-05 12:11:52,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:11:52,509.509 INFO    ] Initializing speech engine...
[2026-06-05 12:11:52,515.515 INFO    ] 2026-06-05 12:11:52
[2026-06-05 12:11:52,815.815 INFO    ] 2026-06-05 12:11:52
[2026-06-05 12:11:52,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:11:52,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:11:53,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:11:53,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:11:53,166.166 INFO    ] time= 05/06/2026 12:11:53
[2026-06-05 12:11:53,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:11:53,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:11:53,245.245 INFO    ] No existing commands found in stream
[2026-06-05 12:11:58,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:11:58,259.259 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 12:11:59,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:11:59,266.266 INFO    ] Checking for system updates...
[2026-06-05 12:11:59,303.303 INFO    ] 200
[2026-06-05 12:11:59,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:59,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:11:59,360.360 INFO    ] No update needed
[2026-06-05 12:11:59,362.362 INFO    ] Checking for camera pi updates...
[2026-06-05 12:11:59,396.396 INFO    ] 200
[2026-06-05 12:11:59,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:11:59,439.439 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:11:59,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:11:59,497.497 INFO    ] No camera update needed
[2026-06-05 12:11:59,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:11:59,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:11:59,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:11:59,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:12:01,551.551 INFO    ] ================================================
[2026-06-05 12:12:01,566.566 INFO    ] Launching Daemon at Fri Jun  5 12:12:01 IST 2026
[2026-06-05 12:12:01,577.577 INFO    ] ================================================
[2026-06-05 12:12:02,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:12:02
[2026-06-05 12:12:02,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:12:03,215.215 INFO    ] Initializing speech engine...
[2026-06-05 12:12:03,233.233 INFO    ] 2026-06-05 12:12:03
[2026-06-05 12:12:03,532.532 INFO    ] 2026-06-05 12:12:03
[2026-06-05 12:12:03,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:12:03,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:12:03,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:12:04,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:12:04,063.063 INFO    ] time= 05/06/2026 12:12:04
[2026-06-05 12:12:04,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:12:04,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:12:04,285.285 INFO    ] No existing commands found in stream
[2026-06-05 12:12:09,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:12:09,310.310 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 12:12:11,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:12:11,375.375 INFO    ] Checking for system updates...
[2026-06-05 12:12:11,412.412 INFO    ] 200
[2026-06-05 12:12:11,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:11,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:11,469.469 INFO    ] No update needed
[2026-06-05 12:12:11,471.471 INFO    ] Checking for camera pi updates...
[2026-06-05 12:12:11,505.505 INFO    ] 200
[2026-06-05 12:12:11,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:11,548.548 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:12:11,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:11,606.606 INFO    ] No camera update needed
[2026-06-05 12:12:11,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:12:11,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:12:11,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:12:11,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:12:13,661.661 INFO    ] ================================================
[2026-06-05 12:12:13,676.676 INFO    ] Launching Daemon at Fri Jun  5 12:12:13 IST 2026
[2026-06-05 12:12:13,687.687 INFO    ] ================================================
[2026-06-05 12:12:14,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:12:14
[2026-06-05 12:12:14,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:12:15,142.142 INFO    ] Initializing speech engine...
[2026-06-05 12:12:15,148.148 INFO    ] 2026-06-05 12:12:15
[2026-06-05 12:12:15,407.407 INFO    ] 2026-06-05 12:12:15
[2026-06-05 12:12:15,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:12:15,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:12:15,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:12:15,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:12:15,866.866 INFO    ] time= 05/06/2026 12:12:15
[2026-06-05 12:12:15,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:12:15,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:12:16,056.056 INFO    ] No existing commands found in stream
[2026-06-05 12:12:21,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:12:21,071.071 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 12:12:22,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:12:22,256.256 INFO    ] Checking for system updates...
[2026-06-05 12:12:22,292.292 INFO    ] 200
[2026-06-05 12:12:22,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:22,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:22,355.355 INFO    ] No update needed
[2026-06-05 12:12:22,358.358 INFO    ] Checking for camera pi updates...
[2026-06-05 12:12:22,395.395 INFO    ] 200
[2026-06-05 12:12:22,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:22,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:12:22,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:22,498.498 INFO    ] No camera update needed
[2026-06-05 12:12:22,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:12:22,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:12:22,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:12:22,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:12:24,554.554 INFO    ] ================================================
[2026-06-05 12:12:24,569.569 INFO    ] Launching Daemon at Fri Jun  5 12:12:24 IST 2026
[2026-06-05 12:12:24,580.580 INFO    ] ================================================
[2026-06-05 12:12:25,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:12:25
[2026-06-05 12:12:25,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:12:26,072.072 INFO    ] Initializing speech engine...
[2026-06-05 12:12:26,081.081 INFO    ] 2026-06-05 12:12:26
[2026-06-05 12:12:26,326.326 INFO    ] 2026-06-05 12:12:26
[2026-06-05 12:12:26,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:12:26,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:12:26,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:12:26,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:12:26,796.796 INFO    ] time= 05/06/2026 12:12:26
[2026-06-05 12:12:26,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:12:26,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:12:27,021.021 INFO    ] No existing commands found in stream
[2026-06-05 12:12:32,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:12:32,048.048 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 12:12:34,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:12:34,934.934 INFO    ] Checking for system updates...
[2026-06-05 12:12:34,971.971 INFO    ] 200
[2026-06-05 12:12:34,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:35,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:35,038.038 INFO    ] No update needed
[2026-06-05 12:12:35,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 12:12:35,075.075 INFO    ] 200
[2026-06-05 12:12:35,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:35,122.122 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:12:35,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:35,173.173 INFO    ] No camera update needed
[2026-06-05 12:12:35,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:12:35,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:12:35,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:12:35,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:12:37,231.231 INFO    ] ================================================
[2026-06-05 12:12:37,246.246 INFO    ] Launching Daemon at Fri Jun  5 12:12:37 IST 2026
[2026-06-05 12:12:37,256.256 INFO    ] ================================================
[2026-06-05 12:12:37,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:12:37
[2026-06-05 12:12:38,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:12:38,715.715 INFO    ] Initializing speech engine...
[2026-06-05 12:12:38,721.721 INFO    ] 2026-06-05 12:12:38
[2026-06-05 12:12:38,998.998 INFO    ] 2026-06-05 12:12:38
[2026-06-05 12:12:39,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:12:39,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:12:39,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:12:39,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:12:39,456.456 INFO    ] time= 05/06/2026 12:12:39
[2026-06-05 12:12:39,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:12:39,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:12:39,696.696 INFO    ] No existing commands found in stream
[2026-06-05 12:12:44,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:12:44,723.723 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 12:12:45,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:12:45,321.321 INFO    ] Checking for system updates...
[2026-06-05 12:12:45,358.358 INFO    ] 200
[2026-06-05 12:12:45,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:45,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:45,416.416 INFO    ] No update needed
[2026-06-05 12:12:45,418.418 INFO    ] Checking for camera pi updates...
[2026-06-05 12:12:45,452.452 INFO    ] 200
[2026-06-05 12:12:45,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:45,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:12:45,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:45,545.545 INFO    ] No camera update needed
[2026-06-05 12:12:45,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:12:45,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:12:45,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:12:45,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:12:47,599.599 INFO    ] ================================================
[2026-06-05 12:12:47,614.614 INFO    ] Launching Daemon at Fri Jun  5 12:12:47 IST 2026
[2026-06-05 12:12:47,625.625 INFO    ] ================================================
[2026-06-05 12:12:48,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:12:48
[2026-06-05 12:12:48,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:12:49,054.054 INFO    ] Initializing speech engine...
[2026-06-05 12:12:49,064.064 INFO    ] 2026-06-05 12:12:49
[2026-06-05 12:12:49,310.310 INFO    ] 2026-06-05 12:12:49
[2026-06-05 12:12:49,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:12:49,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:12:49,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:12:49,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:12:49,804.804 INFO    ] time= 05/06/2026 12:12:49
[2026-06-05 12:12:49,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:12:49,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:12:50,012.012 INFO    ] No existing commands found in stream
[2026-06-05 12:12:55,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:12:55,031.031 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 12:12:56,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:12:56,862.862 INFO    ] Checking for system updates...
[2026-06-05 12:12:56,899.899 INFO    ] 200
[2026-06-05 12:12:56,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:56,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:56,958.958 INFO    ] No update needed
[2026-06-05 12:12:56,960.960 INFO    ] Checking for camera pi updates...
[2026-06-05 12:12:56,997.997 INFO    ] 200
[2026-06-05 12:12:57,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:12:57,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:12:57,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:12:57,100.100 INFO    ] No camera update needed
[2026-06-05 12:12:57,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:12:57,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:12:57,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:12:57,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:12:59,158.158 INFO    ] ================================================
[2026-06-05 12:12:59,173.173 INFO    ] Launching Daemon at Fri Jun  5 12:12:59 IST 2026
[2026-06-05 12:12:59,184.184 INFO    ] ================================================
[2026-06-05 12:12:59,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:12:59
[2026-06-05 12:13:00,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:13:00,584.584 INFO    ] Initializing speech engine...
[2026-06-05 12:13:00,593.593 INFO    ] 2026-06-05 12:13:00
[2026-06-05 12:13:00,881.881 INFO    ] 2026-06-05 12:13:00
[2026-06-05 12:13:00,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:13:02,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:13:02,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:13:03,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:13:03,232.232 INFO    ] time= 05/06/2026 12:13:03
[2026-06-05 12:13:03,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:13:03,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:13:03,363.363 INFO    ] No existing commands found in stream
[2026-06-05 12:13:08,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:13:08,378.378 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 12:13:11,074.074 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:13:11,077.077 INFO    ] Checking for system updates...
[2026-06-05 12:13:11,116.116 INFO    ] 200
[2026-06-05 12:13:11,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:13:11,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:13:11,175.175 INFO    ] No update needed
[2026-06-05 12:13:11,178.178 INFO    ] Checking for camera pi updates...
[2026-06-05 12:13:11,211.211 INFO    ] 200
[2026-06-05 12:13:11,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:13:11,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:13:11,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:13:11,304.304 INFO    ] No camera update needed
[2026-06-05 12:13:11,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:13:11,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:13:11,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:13:11,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:13:13,361.361 INFO    ] ================================================
[2026-06-05 12:13:13,376.376 INFO    ] Launching Daemon at Fri Jun  5 12:13:13 IST 2026
[2026-06-05 12:13:13,387.387 INFO    ] ================================================
[2026-06-05 12:13:13,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:13:13
[2026-06-05 12:13:14,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:13:14,845.845 INFO    ] Initializing speech engine...
[2026-06-05 12:13:14,854.854 INFO    ] 2026-06-05 12:13:14
[2026-06-05 12:13:15,111.111 INFO    ] 2026-06-05 12:13:15
[2026-06-05 12:13:15,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:13:15,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:13:15,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:13:15,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:13:15,581.581 INFO    ] time= 05/06/2026 12:13:15
[2026-06-05 12:13:15,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:13:15,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:13:15,813.813 INFO    ] No existing commands found in stream
[2026-06-05 12:13:20,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:13:20,830.830 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 12:13:25,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:13:25,198.198 INFO    ] Checking for system updates...
[2026-06-05 12:13:25,235.235 INFO    ] 200
[2026-06-05 12:13:25,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:13:25,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:13:25,294.294 INFO    ] No update needed
[2026-06-05 12:13:25,297.297 INFO    ] Checking for camera pi updates...
[2026-06-05 12:13:25,332.332 INFO    ] 200
[2026-06-05 12:13:25,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:13:25,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:13:25,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:13:25,433.433 INFO    ] No camera update needed
[2026-06-05 12:13:25,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:13:25,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:13:25,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:13:25,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:13:27,491.491 INFO    ] ================================================
[2026-06-05 12:13:27,506.506 INFO    ] Launching Daemon at Fri Jun  5 12:13:27 IST 2026
[2026-06-05 12:13:27,517.517 INFO    ] ================================================
[2026-06-05 12:13:28,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:13:28
[2026-06-05 12:13:28,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:13:28,946.946 INFO    ] Initializing speech engine...
[2026-06-05 12:13:28,960.960 INFO    ] 2026-06-05 12:13:28
[2026-06-05 12:13:29,235.235 INFO    ] 2026-06-05 12:13:29
[2026-06-05 12:13:29,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:13:29,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:13:29,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:13:29,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:13:29,783.783 INFO    ] time= 05/06/2026 12:13:29
[2026-06-05 12:13:29,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:13:29,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:13:29,941.941 INFO    ] No existing commands found in stream
[2026-06-05 12:13:34,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:13:34,960.960 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 12:13:39,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:13:39,406.406 INFO    ] Checking for system updates...
[2026-06-05 12:13:39,443.443 INFO    ] 200
[2026-06-05 12:13:39,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:13:39,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:13:39,509.509 INFO    ] No update needed
[2026-06-05 12:13:39,512.512 INFO    ] Checking for camera pi updates...
[2026-06-05 12:13:39,550.550 INFO    ] 200
[2026-06-05 12:13:39,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:13:39,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:13:39,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:13:39,757.757 INFO    ] No camera update needed
[2026-06-05 12:13:39,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:13:39,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:13:39,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:13:39,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:13:41,812.812 INFO    ] ================================================
[2026-06-05 12:13:41,828.828 INFO    ] Launching Daemon at Fri Jun  5 12:13:41 IST 2026
[2026-06-05 12:13:41,839.839 INFO    ] ================================================
[2026-06-05 12:13:42,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:13:42
[2026-06-05 12:13:42,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:13:43,265.265 INFO    ] Initializing speech engine...
[2026-06-05 12:13:43,274.274 INFO    ] 2026-06-05 12:13:43
[2026-06-05 12:13:43,520.520 INFO    ] 2026-06-05 12:13:43
[2026-06-05 12:13:43,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:13:43,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:13:43,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:13:44,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:13:44,078.078 INFO    ] time= 05/06/2026 12:13:44
[2026-06-05 12:13:44,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:13:44,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:13:44,226.226 INFO    ] No existing commands found in stream
[2026-06-05 12:13:49,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:13:49,249.249 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 12:13:52,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:13:52,764.764 INFO    ] Checking for system updates...
[2026-06-05 12:13:52,801.801 INFO    ] 200
[2026-06-05 12:13:52,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:13:52,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:13:52,860.860 INFO    ] No update needed
[2026-06-05 12:13:52,862.862 INFO    ] Checking for camera pi updates...
[2026-06-05 12:13:52,897.897 INFO    ] 200
[2026-06-05 12:13:52,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:13:52,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:13:52,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:13:52,995.995 INFO    ] No camera update needed
[2026-06-05 12:13:52,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:13:53,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:13:53,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:13:53,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:13:55,052.052 INFO    ] ================================================
[2026-06-05 12:13:55,067.067 INFO    ] Launching Daemon at Fri Jun  5 12:13:55 IST 2026
[2026-06-05 12:13:55,078.078 INFO    ] ================================================
[2026-06-05 12:13:55,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:13:55
[2026-06-05 12:13:56,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:13:56,506.506 INFO    ] Initializing speech engine...
[2026-06-05 12:13:56,514.514 INFO    ] 2026-06-05 12:13:56
[2026-06-05 12:13:56,765.765 INFO    ] 2026-06-05 12:13:56
[2026-06-05 12:13:56,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:13:57,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:13:57,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:13:57,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:13:57,274.274 INFO    ] time= 05/06/2026 12:13:57
[2026-06-05 12:13:57,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:13:57,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:13:57,491.491 INFO    ] No existing commands found in stream
[2026-06-05 12:14:02,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:14:02,511.511 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 12:14:05,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:14:05,886.886 INFO    ] Checking for system updates...
[2026-06-05 12:14:05,923.923 INFO    ] 200
[2026-06-05 12:14:05,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:05,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:14:05,984.984 INFO    ] No update needed
[2026-06-05 12:14:05,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 12:14:06,021.021 INFO    ] 200
[2026-06-05 12:14:06,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:06,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:14:06,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:14:06,138.138 INFO    ] No camera update needed
[2026-06-05 12:14:06,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:14:06,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:14:06,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:14:06,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:14:08,198.198 INFO    ] ================================================
[2026-06-05 12:14:08,213.213 INFO    ] Launching Daemon at Fri Jun  5 12:14:08 IST 2026
[2026-06-05 12:14:08,224.224 INFO    ] ================================================
[2026-06-05 12:14:08,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:14:08
[2026-06-05 12:14:09,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:14:09,653.653 INFO    ] Initializing speech engine...
[2026-06-05 12:14:09,660.660 INFO    ] 2026-06-05 12:14:09
[2026-06-05 12:14:09,919.919 INFO    ] 2026-06-05 12:14:09
[2026-06-05 12:14:09,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:14:10,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:14:10,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:14:10,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:14:10,379.379 INFO    ] time= 05/06/2026 12:14:10
[2026-06-05 12:14:10,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:14:10,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:14:10,621.621 INFO    ] No existing commands found in stream
[2026-06-05 12:14:15,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:14:15,636.636 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 12:14:16,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:14:16,421.421 INFO    ] Checking for system updates...
[2026-06-05 12:14:16,457.457 INFO    ] 200
[2026-06-05 12:14:16,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:16,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:14:16,516.516 INFO    ] No update needed
[2026-06-05 12:14:16,518.518 INFO    ] Checking for camera pi updates...
[2026-06-05 12:14:16,552.552 INFO    ] 200
[2026-06-05 12:14:16,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:16,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:14:16,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:14:16,643.643 INFO    ] No camera update needed
[2026-06-05 12:14:16,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:14:16,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:14:16,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:14:16,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:14:18,700.700 INFO    ] ================================================
[2026-06-05 12:14:18,715.715 INFO    ] Launching Daemon at Fri Jun  5 12:14:18 IST 2026
[2026-06-05 12:14:18,726.726 INFO    ] ================================================
[2026-06-05 12:14:19,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:14:19
[2026-06-05 12:14:19,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:14:20,291.291 INFO    ] Initializing speech engine...
[2026-06-05 12:14:20,300.300 INFO    ] 2026-06-05 12:14:20
[2026-06-05 12:14:20,584.584 INFO    ] 2026-06-05 12:14:20
[2026-06-05 12:14:20,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:14:20,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:14:20,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:14:21,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:14:21,127.127 INFO    ] time= 05/06/2026 12:14:21
[2026-06-05 12:14:21,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:14:21,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:14:21,282.282 INFO    ] No existing commands found in stream
[2026-06-05 12:14:26,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:14:26,326.326 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 12:14:27,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:14:27,224.224 INFO    ] Checking for system updates...
[2026-06-05 12:14:27,265.265 INFO    ] 200
[2026-06-05 12:14:27,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:27,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:14:27,327.327 INFO    ] No update needed
[2026-06-05 12:14:27,330.330 INFO    ] Checking for camera pi updates...
[2026-06-05 12:14:27,365.365 INFO    ] 200
[2026-06-05 12:14:27,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:27,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:14:27,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:14:27,464.464 INFO    ] No camera update needed
[2026-06-05 12:14:27,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:14:27,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:14:27,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:14:27,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:14:29,521.521 INFO    ] ================================================
[2026-06-05 12:14:29,536.536 INFO    ] Launching Daemon at Fri Jun  5 12:14:29 IST 2026
[2026-06-05 12:14:29,547.547 INFO    ] ================================================
[2026-06-05 12:14:30,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:14:30
[2026-06-05 12:14:30,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:14:31,187.187 INFO    ] Initializing speech engine...
[2026-06-05 12:14:31,193.193 INFO    ] 2026-06-05 12:14:31
[2026-06-05 12:14:31,477.477 INFO    ] 2026-06-05 12:14:31
[2026-06-05 12:14:31,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:14:33,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:14:33,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:14:33,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:14:33,496.496 INFO    ] time= 05/06/2026 12:14:33
[2026-06-05 12:14:33,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:14:33,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:14:33,554.554 INFO    ] No existing commands found in stream
[2026-06-05 12:14:38,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:14:38,569.569 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 12:14:39,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:14:39,717.717 INFO    ] Checking for system updates...
[2026-06-05 12:14:39,761.761 INFO    ] 200
[2026-06-05 12:14:39,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:39,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:14:39,821.821 INFO    ] No update needed
[2026-06-05 12:14:39,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 12:14:39,860.860 INFO    ] 200
[2026-06-05 12:14:39,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:39,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:14:39,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:14:39,957.957 INFO    ] No camera update needed
[2026-06-05 12:14:39,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:14:39,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:14:39,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:14:39,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:14:42,015.015 INFO    ] ================================================
[2026-06-05 12:14:42,031.031 INFO    ] Launching Daemon at Fri Jun  5 12:14:42 IST 2026
[2026-06-05 12:14:42,041.041 INFO    ] ================================================
[2026-06-05 12:14:42,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:14:42
[2026-06-05 12:14:43,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:14:43,692.692 INFO    ] Initializing speech engine...
[2026-06-05 12:14:43,706.706 INFO    ] 2026-06-05 12:14:43
[2026-06-05 12:14:43,989.989 INFO    ] 2026-06-05 12:14:43
[2026-06-05 12:14:44,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:14:44,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:14:44,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:14:44,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:14:44,539.539 INFO    ] time= 05/06/2026 12:14:44
[2026-06-05 12:14:44,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:14:44,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:14:44,697.697 INFO    ] No existing commands found in stream
[2026-06-05 12:14:49,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:14:49,718.718 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 12:14:52,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:14:52,449.449 INFO    ] Checking for system updates...
[2026-06-05 12:14:52,486.486 INFO    ] 200
[2026-06-05 12:14:52,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:52,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:14:52,546.546 INFO    ] No update needed
[2026-06-05 12:14:52,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 12:14:52,585.585 INFO    ] 200
[2026-06-05 12:14:52,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:14:52,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:14:52,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:14:52,688.688 INFO    ] No camera update needed
[2026-06-05 12:14:52,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:14:52,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:14:52,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:14:52,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:14:54,748.748 INFO    ] ================================================
[2026-06-05 12:14:54,763.763 INFO    ] Launching Daemon at Fri Jun  5 12:14:54 IST 2026
[2026-06-05 12:14:54,773.773 INFO    ] ================================================
[2026-06-05 12:14:55,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:14:55
[2026-06-05 12:14:55,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:14:56,198.198 INFO    ] Initializing speech engine...
[2026-06-05 12:14:56,213.213 INFO    ] 2026-06-05 12:14:56
[2026-06-05 12:14:56,501.501 INFO    ] 2026-06-05 12:14:56
[2026-06-05 12:14:56,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:14:56,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:14:56,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:14:56,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:14:56,927.927 INFO    ] time= 05/06/2026 12:14:56
[2026-06-05 12:14:56,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:14:56,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:14:57,015.015 INFO    ] No existing commands found in stream
[2026-06-05 12:15:02,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:15:02,051.051 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 12:15:03,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:15:03,894.894 INFO    ] Checking for system updates...
[2026-06-05 12:15:03,931.931 INFO    ] 200
[2026-06-05 12:15:03,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:03,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:15:03,994.994 INFO    ] No update needed
[2026-06-05 12:15:03,997.997 INFO    ] Checking for camera pi updates...
[2026-06-05 12:15:04,031.031 INFO    ] 200
[2026-06-05 12:15:04,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:04,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:15:04,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:15:04,110.110 INFO    ] No camera update needed
[2026-06-05 12:15:04,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:15:04,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:15:04,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:15:04,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:15:06,169.169 INFO    ] ================================================
[2026-06-05 12:15:06,184.184 INFO    ] Launching Daemon at Fri Jun  5 12:15:06 IST 2026
[2026-06-05 12:15:06,195.195 INFO    ] ================================================
[2026-06-05 12:15:06,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:15:06
[2026-06-05 12:15:07,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:15:07,616.616 INFO    ] Initializing speech engine...
[2026-06-05 12:15:07,625.625 INFO    ] 2026-06-05 12:15:07
[2026-06-05 12:15:07,919.919 INFO    ] 2026-06-05 12:15:07
[2026-06-05 12:15:07,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:15:08,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:15:08,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:15:08,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:15:08,339.339 INFO    ] time= 05/06/2026 12:15:08
[2026-06-05 12:15:08,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:15:08,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:15:08,479.479 INFO    ] No existing commands found in stream
[2026-06-05 12:15:13,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:15:13,516.516 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 12:15:14,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:15:14,905.905 INFO    ] Checking for system updates...
[2026-06-05 12:15:14,941.941 INFO    ] 200
[2026-06-05 12:15:14,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:14,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:15:14,999.999 INFO    ] No update needed
[2026-06-05 12:15:15,002.002 INFO    ] Checking for camera pi updates...
[2026-06-05 12:15:15,041.041 INFO    ] 200
[2026-06-05 12:15:15,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:15,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:15:15,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:15:15,133.133 INFO    ] No camera update needed
[2026-06-05 12:15:15,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:15:15,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:15:15,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:15:15,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:15:17,188.188 INFO    ] ================================================
[2026-06-05 12:15:17,204.204 INFO    ] Launching Daemon at Fri Jun  5 12:15:17 IST 2026
[2026-06-05 12:15:17,215.215 INFO    ] ================================================
[2026-06-05 12:15:17,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:15:17
[2026-06-05 12:15:18,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:15:18,634.634 INFO    ] Initializing speech engine...
[2026-06-05 12:15:18,643.643 INFO    ] 2026-06-05 12:15:18
[2026-06-05 12:15:18,935.935 INFO    ] 2026-06-05 12:15:18
[2026-06-05 12:15:18,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:15:19,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:15:19,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:15:19,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:15:19,350.350 INFO    ] time= 05/06/2026 12:15:19
[2026-06-05 12:15:19,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:15:19,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:15:19,436.436 INFO    ] No existing commands found in stream
[2026-06-05 12:15:24,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:15:24,452.452 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 12:15:27,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:15:27,927.927 INFO    ] Checking for system updates...
[2026-06-05 12:15:27,965.965 INFO    ] 200
[2026-06-05 12:15:27,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:28,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:15:28,025.025 INFO    ] No update needed
[2026-06-05 12:15:28,028.028 INFO    ] Checking for camera pi updates...
[2026-06-05 12:15:28,068.068 INFO    ] 200
[2026-06-05 12:15:28,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:28,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:15:28,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:15:28,181.181 INFO    ] No camera update needed
[2026-06-05 12:15:28,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:15:28,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:15:28,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:15:28,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:15:30,240.240 INFO    ] ================================================
[2026-06-05 12:15:30,256.256 INFO    ] Launching Daemon at Fri Jun  5 12:15:30 IST 2026
[2026-06-05 12:15:30,267.267 INFO    ] ================================================
[2026-06-05 12:15:30,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:15:30
[2026-06-05 12:15:31,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:15:31,683.683 INFO    ] Initializing speech engine...
[2026-06-05 12:15:31,692.692 INFO    ] 2026-06-05 12:15:31
[2026-06-05 12:15:31,997.997 INFO    ] 2026-06-05 12:15:31
[2026-06-05 12:15:32,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:15:33,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:15:33,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:15:33,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:15:33,327.327 INFO    ] time= 05/06/2026 12:15:33
[2026-06-05 12:15:33,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:15:33,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:15:33,448.448 INFO    ] No existing commands found in stream
[2026-06-05 12:15:38,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:15:38,462.462 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 12:15:39,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:15:39,380.380 INFO    ] Checking for system updates...
[2026-06-05 12:15:39,421.421 INFO    ] 200
[2026-06-05 12:15:39,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:39,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:15:39,484.484 INFO    ] No update needed
[2026-06-05 12:15:39,488.488 INFO    ] Checking for camera pi updates...
[2026-06-05 12:15:39,524.524 INFO    ] 200
[2026-06-05 12:15:39,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:39,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:15:39,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:15:39,620.620 INFO    ] No camera update needed
[2026-06-05 12:15:39,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:15:39,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:15:39,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:15:39,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:15:41,678.678 INFO    ] ================================================
[2026-06-05 12:15:41,693.693 INFO    ] Launching Daemon at Fri Jun  5 12:15:41 IST 2026
[2026-06-05 12:15:41,703.703 INFO    ] ================================================
[2026-06-05 12:15:42,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:15:42
[2026-06-05 12:15:42,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:15:43,299.299 INFO    ] Initializing speech engine...
[2026-06-05 12:15:43,308.308 INFO    ] 2026-06-05 12:15:43
[2026-06-05 12:15:43,595.595 INFO    ] 2026-06-05 12:15:43
[2026-06-05 12:15:43,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:15:43,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:15:43,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:15:44,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:15:44,147.147 INFO    ] time= 05/06/2026 12:15:44
[2026-06-05 12:15:44,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:15:44,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:15:44,304.304 INFO    ] No existing commands found in stream
[2026-06-05 12:15:49,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:15:49,322.322 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 12:15:50,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:15:50,074.074 INFO    ] Checking for system updates...
[2026-06-05 12:15:50,114.114 INFO    ] 200
[2026-06-05 12:15:50,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:50,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:15:50,181.181 INFO    ] No update needed
[2026-06-05 12:15:50,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 12:15:50,224.224 INFO    ] 200
[2026-06-05 12:15:50,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:15:50,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:15:50,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:15:50,425.425 INFO    ] No camera update needed
[2026-06-05 12:15:50,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:15:50,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:15:50,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:15:50,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:15:52,481.481 INFO    ] ================================================
[2026-06-05 12:15:52,497.497 INFO    ] Launching Daemon at Fri Jun  5 12:15:52 IST 2026
[2026-06-05 12:15:52,508.508 INFO    ] ================================================
[2026-06-05 12:15:53,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:15:53
[2026-06-05 12:15:53,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:15:54,149.149 INFO    ] Initializing speech engine...
[2026-06-05 12:15:54,156.156 INFO    ] 2026-06-05 12:15:54
[2026-06-05 12:15:54,441.441 INFO    ] 2026-06-05 12:15:54
[2026-06-05 12:15:54,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:15:54,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:15:54,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:15:54,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:15:54,981.981 INFO    ] time= 05/06/2026 12:15:54
[2026-06-05 12:15:55,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:15:55,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:15:55,143.143 INFO    ] No existing commands found in stream
[2026-06-05 12:16:00,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:16:00,175.175 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 12:16:03,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:16:03,454.454 INFO    ] Checking for system updates...
[2026-06-05 12:16:03,499.499 INFO    ] 200
[2026-06-05 12:16:03,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 12:16:03,504.504 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 12:16:03,507.507 INFO    ] Checking for camera pi updates...
[2026-06-05 12:16:03,565.565 INFO    ] 200
[2026-06-05 12:16:03,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 12:16:03,571.571 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 12:16:03,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:16:03,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:16:03,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:16:03,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:16:05,629.629 INFO    ] ================================================
[2026-06-05 12:16:05,645.645 INFO    ] Launching Daemon at Fri Jun  5 12:16:05 IST 2026
[2026-06-05 12:16:05,656.656 INFO    ] ================================================
[2026-06-05 12:16:06,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:16:06
[2026-06-05 12:16:06,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:16:07,147.147 INFO    ] Initializing speech engine...
[2026-06-05 12:16:07,155.155 INFO    ] 2026-06-05 12:16:07
[2026-06-05 12:16:07,414.414 INFO    ] 2026-06-05 12:16:07
[2026-06-05 12:16:07,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:16:07,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:16:07,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:16:07,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:16:07,901.901 INFO    ] time= 05/06/2026 12:16:07
[2026-06-05 12:16:07,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:16:07,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:16:08,092.092 INFO    ] No existing commands found in stream
[2026-06-05 12:16:13,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:16:13,128.128 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 12:16:14,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:16:14,785.785 INFO    ] Checking for system updates...
[2026-06-05 12:16:14,826.826 INFO    ] 200
[2026-06-05 12:16:14,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:16:14,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:16:14,885.885 INFO    ] No update needed
[2026-06-05 12:16:14,888.888 INFO    ] Checking for camera pi updates...
[2026-06-05 12:16:14,924.924 INFO    ] 200
[2026-06-05 12:16:14,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:16:14,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:16:15,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:16:15,043.043 INFO    ] No camera update needed
[2026-06-05 12:16:15,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:16:15,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:16:15,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:16:15,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:16:17,100.100 INFO    ] ================================================
[2026-06-05 12:16:17,115.115 INFO    ] Launching Daemon at Fri Jun  5 12:16:17 IST 2026
[2026-06-05 12:16:17,127.127 INFO    ] ================================================
[2026-06-05 12:16:17,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:16:17
[2026-06-05 12:16:18,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:16:18,771.771 INFO    ] Initializing speech engine...
[2026-06-05 12:16:18,782.782 INFO    ] 2026-06-05 12:16:18
[2026-06-05 12:16:19,062.062 INFO    ] 2026-06-05 12:16:19
[2026-06-05 12:16:19,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:16:19,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:16:19,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:16:19,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:16:19,656.656 INFO    ] time= 05/06/2026 12:16:19
[2026-06-05 12:16:19,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:16:19,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:16:19,864.864 INFO    ] No existing commands found in stream
[2026-06-05 12:16:24,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:16:24,880.880 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 12:16:27,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:16:27,243.243 INFO    ] Checking for system updates...
[2026-06-05 12:16:27,281.281 INFO    ] 200
[2026-06-05 12:16:27,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:16:27,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:16:27,342.342 INFO    ] No update needed
[2026-06-05 12:16:27,345.345 INFO    ] Checking for camera pi updates...
[2026-06-05 12:16:27,382.382 INFO    ] 200
[2026-06-05 12:16:27,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:16:27,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:16:27,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:16:27,481.481 INFO    ] No camera update needed
[2026-06-05 12:16:27,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:16:27,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:16:27,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:16:27,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:16:29,540.540 INFO    ] ================================================
[2026-06-05 12:16:29,555.555 INFO    ] Launching Daemon at Fri Jun  5 12:16:29 IST 2026
[2026-06-05 12:16:29,566.566 INFO    ] ================================================
[2026-06-05 12:16:30,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:16:30
[2026-06-05 12:16:30,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:16:30,984.984 INFO    ] Initializing speech engine...
[2026-06-05 12:16:30,999.999 INFO    ] 2026-06-05 12:16:30
[2026-06-05 12:16:31,268.268 INFO    ] 2026-06-05 12:16:31
[2026-06-05 12:16:31,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:16:33,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:16:33,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:16:33,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:16:33,291.291 INFO    ] time= 05/06/2026 12:16:33
[2026-06-05 12:16:33,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:16:33,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:16:33,404.404 INFO    ] No existing commands found in stream
[2026-06-05 12:16:38,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:16:38,418.418 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 12:16:39,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:16:39,984.984 INFO    ] Checking for system updates...
[2026-06-05 12:16:40,021.021 INFO    ] 200
[2026-06-05 12:16:40,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:16:40,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:16:40,086.086 INFO    ] No update needed
[2026-06-05 12:16:40,088.088 INFO    ] Checking for camera pi updates...
[2026-06-05 12:16:40,124.124 INFO    ] 200
[2026-06-05 12:16:40,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:16:40,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:16:40,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:16:40,219.219 INFO    ] No camera update needed
[2026-06-05 12:16:40,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:16:40,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:16:40,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:16:40,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:16:42,278.278 INFO    ] ================================================
[2026-06-05 12:16:42,293.293 INFO    ] Launching Daemon at Fri Jun  5 12:16:42 IST 2026
[2026-06-05 12:16:42,304.304 INFO    ] ================================================
[2026-06-05 12:16:42,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:16:42
[2026-06-05 12:16:43,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:16:43,883.883 INFO    ] Initializing speech engine...
[2026-06-05 12:16:43,907.907 INFO    ] 2026-06-05 12:16:43
[2026-06-05 12:16:44,164.164 INFO    ] 2026-06-05 12:16:44
[2026-06-05 12:16:44,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:16:44,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:16:44,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:16:44,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:16:44,608.608 INFO    ] time= 05/06/2026 12:16:44
[2026-06-05 12:16:44,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:16:44,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:16:44,869.869 INFO    ] No existing commands found in stream
[2026-06-05 12:16:49,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:16:49,902.902 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 12:16:51,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:16:51,839.839 INFO    ] Checking for system updates...
[2026-06-05 12:16:51,876.876 INFO    ] 200
[2026-06-05 12:16:51,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:16:51,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:16:51,934.934 INFO    ] No update needed
[2026-06-05 12:16:51,937.937 INFO    ] Checking for camera pi updates...
[2026-06-05 12:16:51,974.974 INFO    ] 200
[2026-06-05 12:16:51,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:16:52,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:16:52,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:16:52,073.073 INFO    ] No camera update needed
[2026-06-05 12:16:52,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:16:52,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:16:52,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:16:52,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:16:54,129.129 INFO    ] ================================================
[2026-06-05 12:16:54,144.144 INFO    ] Launching Daemon at Fri Jun  5 12:16:54 IST 2026
[2026-06-05 12:16:54,156.156 INFO    ] ================================================
[2026-06-05 12:16:54,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:16:54
[2026-06-05 12:16:55,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:16:55,582.582 INFO    ] Initializing speech engine...
[2026-06-05 12:16:55,587.587 INFO    ] 2026-06-05 12:16:55
[2026-06-05 12:16:55,839.839 INFO    ] 2026-06-05 12:16:55
[2026-06-05 12:16:55,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:16:56,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:16:56,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:16:56,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:16:56,305.305 INFO    ] time= 05/06/2026 12:16:56
[2026-06-05 12:16:56,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:16:56,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:16:56,542.542 INFO    ] No existing commands found in stream
[2026-06-05 12:17:01,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:17:01,564.564 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 12:17:03,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:17:03,431.431 INFO    ] Checking for system updates...
[2026-06-05 12:17:03,467.467 INFO    ] 200
[2026-06-05 12:17:03,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:03,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:17:03,526.526 INFO    ] No update needed
[2026-06-05 12:17:03,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 12:17:03,562.562 INFO    ] 200
[2026-06-05 12:17:03,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:03,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:17:03,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:17:03,647.647 INFO    ] No camera update needed
[2026-06-05 12:17:03,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:17:03,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:17:03,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:17:03,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:17:05,710.710 INFO    ] ================================================
[2026-06-05 12:17:05,726.726 INFO    ] Launching Daemon at Fri Jun  5 12:17:05 IST 2026
[2026-06-05 12:17:05,737.737 INFO    ] ================================================
[2026-06-05 12:17:06,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:17:06
[2026-06-05 12:17:06,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:17:07,166.166 INFO    ] Initializing speech engine...
[2026-06-05 12:17:07,185.185 INFO    ] 2026-06-05 12:17:07
[2026-06-05 12:17:07,434.434 INFO    ] 2026-06-05 12:17:07
[2026-06-05 12:17:07,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:17:07,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:17:07,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:17:07,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:17:07,904.904 INFO    ] time= 05/06/2026 12:17:07
[2026-06-05 12:17:07,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:17:07,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:17:08,135.135 INFO    ] No existing commands found in stream
[2026-06-05 12:17:13,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:17:13,159.159 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 12:17:14,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:17:14,301.301 INFO    ] Checking for system updates...
[2026-06-05 12:17:14,337.337 INFO    ] 200
[2026-06-05 12:17:14,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:14,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:17:14,403.403 INFO    ] No update needed
[2026-06-05 12:17:14,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 12:17:14,439.439 INFO    ] 200
[2026-06-05 12:17:14,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:14,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:17:14,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:17:14,538.538 INFO    ] No camera update needed
[2026-06-05 12:17:14,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:17:14,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:17:14,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:17:14,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:17:16,595.595 INFO    ] ================================================
[2026-06-05 12:17:16,610.610 INFO    ] Launching Daemon at Fri Jun  5 12:17:16 IST 2026
[2026-06-05 12:17:16,621.621 INFO    ] ================================================
[2026-06-05 12:17:17,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:17:17
[2026-06-05 12:17:17,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:17:18,081.081 INFO    ] Initializing speech engine...
[2026-06-05 12:17:18,090.090 INFO    ] 2026-06-05 12:17:18
[2026-06-05 12:17:18,348.348 INFO    ] 2026-06-05 12:17:18
[2026-06-05 12:17:18,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:17:18,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:17:18,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:17:18,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:17:18,826.826 INFO    ] time= 05/06/2026 12:17:18
[2026-06-05 12:17:18,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:17:18,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:17:19,025.025 INFO    ] No existing commands found in stream
[2026-06-05 12:17:24,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:17:24,059.059 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 12:17:26,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:17:26,516.516 INFO    ] Checking for system updates...
[2026-06-05 12:17:26,554.554 INFO    ] 200
[2026-06-05 12:17:26,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:26,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:17:26,623.623 INFO    ] No update needed
[2026-06-05 12:17:26,626.626 INFO    ] Checking for camera pi updates...
[2026-06-05 12:17:26,666.666 INFO    ] 200
[2026-06-05 12:17:26,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:26,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:17:26,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:17:26,769.769 INFO    ] No camera update needed
[2026-06-05 12:17:26,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:17:26,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:17:26,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:17:26,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:17:28,828.828 INFO    ] ================================================
[2026-06-05 12:17:28,843.843 INFO    ] Launching Daemon at Fri Jun  5 12:17:28 IST 2026
[2026-06-05 12:17:28,854.854 INFO    ] ================================================
[2026-06-05 12:17:29,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:17:29
[2026-06-05 12:17:30,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:17:30,458.458 INFO    ] Initializing speech engine...
[2026-06-05 12:17:30,464.464 INFO    ] 2026-06-05 12:17:30
[2026-06-05 12:17:30,768.768 INFO    ] 2026-06-05 12:17:30
[2026-06-05 12:17:30,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:17:31,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:17:31,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:17:33,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:17:33,091.091 INFO    ] time= 05/06/2026 12:17:33
[2026-06-05 12:17:33,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:17:33,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:17:33,209.209 INFO    ] No existing commands found in stream
[2026-06-05 12:17:38,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:17:38,221.221 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 12:17:42,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:17:42,410.410 INFO    ] Checking for system updates...
[2026-06-05 12:17:42,448.448 INFO    ] 200
[2026-06-05 12:17:42,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:42,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:17:42,509.509 INFO    ] No update needed
[2026-06-05 12:17:42,512.512 INFO    ] Checking for camera pi updates...
[2026-06-05 12:17:42,551.551 INFO    ] 200
[2026-06-05 12:17:42,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:42,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:17:42,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:17:42,661.661 INFO    ] No camera update needed
[2026-06-05 12:17:42,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:17:42,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:17:42,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:17:42,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:17:44,718.718 INFO    ] ================================================
[2026-06-05 12:17:44,733.733 INFO    ] Launching Daemon at Fri Jun  5 12:17:44 IST 2026
[2026-06-05 12:17:44,744.744 INFO    ] ================================================
[2026-06-05 12:17:45,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:17:45
[2026-06-05 12:17:46,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:17:46,394.394 INFO    ] Initializing speech engine...
[2026-06-05 12:17:46,401.401 INFO    ] 2026-06-05 12:17:46
[2026-06-05 12:17:46,686.686 INFO    ] 2026-06-05 12:17:46
[2026-06-05 12:17:46,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:17:46,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:17:46,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:17:47,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:17:47,221.221 INFO    ] time= 05/06/2026 12:17:47
[2026-06-05 12:17:47,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:17:47,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:17:47,368.368 INFO    ] No existing commands found in stream
[2026-06-05 12:17:52,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:17:52,391.391 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 12:17:55,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:17:55,048.048 INFO    ] Checking for system updates...
[2026-06-05 12:17:55,088.088 INFO    ] 200
[2026-06-05 12:17:55,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:55,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:17:55,168.168 INFO    ] No update needed
[2026-06-05 12:17:55,170.170 INFO    ] Checking for camera pi updates...
[2026-06-05 12:17:55,204.204 INFO    ] 200
[2026-06-05 12:17:55,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:17:55,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:17:55,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:17:55,406.406 INFO    ] No camera update needed
[2026-06-05 12:17:55,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:17:55,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:17:55,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:17:55,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:17:57,461.461 INFO    ] ================================================
[2026-06-05 12:17:57,476.476 INFO    ] Launching Daemon at Fri Jun  5 12:17:57 IST 2026
[2026-06-05 12:17:57,486.486 INFO    ] ================================================
[2026-06-05 12:17:58,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:17:58
[2026-06-05 12:17:58,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:17:58,884.884 INFO    ] Initializing speech engine...
[2026-06-05 12:17:58,904.904 INFO    ] 2026-06-05 12:17:58
[2026-06-05 12:17:59,162.162 INFO    ] 2026-06-05 12:17:59
[2026-06-05 12:17:59,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:17:59,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:17:59,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:17:59,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:17:59,539.539 INFO    ] time= 05/06/2026 12:17:59
[2026-06-05 12:17:59,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:17:59,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:17:59,718.718 INFO    ] No existing commands found in stream
[2026-06-05 12:18:04,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:18:04,746.746 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 12:18:07,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:18:07,519.519 INFO    ] Checking for system updates...
[2026-06-05 12:18:07,555.555 INFO    ] 200
[2026-06-05 12:18:07,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:07,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:18:07,614.614 INFO    ] No update needed
[2026-06-05 12:18:07,617.617 INFO    ] Checking for camera pi updates...
[2026-06-05 12:18:07,651.651 INFO    ] 200
[2026-06-05 12:18:07,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:07,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:18:07,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:18:07,730.730 INFO    ] No camera update needed
[2026-06-05 12:18:07,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:18:07,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:18:07,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:18:07,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:18:09,792.792 INFO    ] ================================================
[2026-06-05 12:18:09,816.816 INFO    ] Launching Daemon at Fri Jun  5 12:18:09 IST 2026
[2026-06-05 12:18:09,829.829 INFO    ] ================================================
[2026-06-05 12:18:10,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:18:10
[2026-06-05 12:18:11,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:18:11,265.265 INFO    ] Initializing speech engine...
[2026-06-05 12:18:11,284.284 INFO    ] 2026-06-05 12:18:11
[2026-06-05 12:18:11,533.533 INFO    ] 2026-06-05 12:18:11
[2026-06-05 12:18:11,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:18:11,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:18:11,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:18:11,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:18:11,910.910 INFO    ] time= 05/06/2026 12:18:11
[2026-06-05 12:18:11,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:18:11,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:18:12,112.112 INFO    ] No existing commands found in stream
[2026-06-05 12:18:17,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:18:17,125.125 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 12:18:18,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:18:18,926.926 INFO    ] Checking for system updates...
[2026-06-05 12:18:18,966.966 INFO    ] 200
[2026-06-05 12:18:18,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:19,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:18:19,031.031 INFO    ] No update needed
[2026-06-05 12:18:19,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 12:18:19,071.071 INFO    ] 200
[2026-06-05 12:18:19,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:19,122.122 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:18:19,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:18:19,184.184 INFO    ] No camera update needed
[2026-06-05 12:18:19,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:18:19,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:18:19,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:18:19,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:18:21,241.241 INFO    ] ================================================
[2026-06-05 12:18:21,257.257 INFO    ] Launching Daemon at Fri Jun  5 12:18:21 IST 2026
[2026-06-05 12:18:21,267.267 INFO    ] ================================================
[2026-06-05 12:18:21,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:18:21
[2026-06-05 12:18:22,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:18:22,729.729 INFO    ] Initializing speech engine...
[2026-06-05 12:18:22,737.737 INFO    ] 2026-06-05 12:18:22
[2026-06-05 12:18:22,996.996 INFO    ] 2026-06-05 12:18:22
[2026-06-05 12:18:23,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:18:23,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:18:23,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:18:23,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:18:23,458.458 INFO    ] time= 05/06/2026 12:18:23
[2026-06-05 12:18:23,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:18:23,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:18:23,608.608 INFO    ] No existing commands found in stream
[2026-06-05 12:18:28,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:18:28,623.623 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 12:18:30,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:18:30,261.261 INFO    ] Checking for system updates...
[2026-06-05 12:18:30,311.311 INFO    ] 200
[2026-06-05 12:18:30,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:30,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:18:30,376.376 INFO    ] No update needed
[2026-06-05 12:18:30,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 12:18:30,414.414 INFO    ] 200
[2026-06-05 12:18:30,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:30,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:18:30,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:18:30,511.511 INFO    ] No camera update needed
[2026-06-05 12:18:30,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:18:30,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:18:30,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:18:30,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:18:32,574.574 INFO    ] ================================================
[2026-06-05 12:18:32,591.591 INFO    ] Launching Daemon at Fri Jun  5 12:18:32 IST 2026
[2026-06-05 12:18:32,602.602 INFO    ] ================================================
[2026-06-05 12:18:33,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:18:33
[2026-06-05 12:18:33,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:18:34,027.027 INFO    ] Initializing speech engine...
[2026-06-05 12:18:34,037.037 INFO    ] 2026-06-05 12:18:34
[2026-06-05 12:18:34,346.346 INFO    ] 2026-06-05 12:18:34
[2026-06-05 12:18:34,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:18:34,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:18:34,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:18:34,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:18:34,742.742 INFO    ] time= 05/06/2026 12:18:34
[2026-06-05 12:18:34,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:18:34,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:18:34,928.928 INFO    ] No existing commands found in stream
[2026-06-05 12:18:39,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:18:39,955.955 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 12:18:43,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:18:43,022.022 INFO    ] Checking for system updates...
[2026-06-05 12:18:43,062.062 INFO    ] 200
[2026-06-05 12:18:43,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:43,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:18:43,121.121 INFO    ] No update needed
[2026-06-05 12:18:43,124.124 INFO    ] Checking for camera pi updates...
[2026-06-05 12:18:43,158.158 INFO    ] 200
[2026-06-05 12:18:43,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:43,202.202 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:18:43,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:18:43,259.259 INFO    ] No camera update needed
[2026-06-05 12:18:43,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:18:43,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:18:43,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:18:43,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:18:45,316.316 INFO    ] ================================================
[2026-06-05 12:18:45,331.331 INFO    ] Launching Daemon at Fri Jun  5 12:18:45 IST 2026
[2026-06-05 12:18:45,342.342 INFO    ] ================================================
[2026-06-05 12:18:46,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:18:45
[2026-06-05 12:18:46,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:18:46,989.989 INFO    ] Initializing speech engine...
[2026-06-05 12:18:47,001.001 INFO    ] 2026-06-05 12:18:46
[2026-06-05 12:18:47,283.283 INFO    ] 2026-06-05 12:18:47
[2026-06-05 12:18:47,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:18:47,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:18:47,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:18:47,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:18:47,836.836 INFO    ] time= 05/06/2026 12:18:47
[2026-06-05 12:18:47,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:18:47,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:18:48,042.042 INFO    ] No existing commands found in stream
[2026-06-05 12:18:53,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:18:53,076.076 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 12:18:55,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:18:55,403.403 INFO    ] Checking for system updates...
[2026-06-05 12:18:55,446.446 INFO    ] 200
[2026-06-05 12:18:55,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:55,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:18:55,513.513 INFO    ] No update needed
[2026-06-05 12:18:55,516.516 INFO    ] Checking for camera pi updates...
[2026-06-05 12:18:55,555.555 INFO    ] 200
[2026-06-05 12:18:55,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:18:55,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:18:55,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:18:55,668.668 INFO    ] No camera update needed
[2026-06-05 12:18:55,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:18:55,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:18:55,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:18:55,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:18:57,727.727 INFO    ] ================================================
[2026-06-05 12:18:57,742.742 INFO    ] Launching Daemon at Fri Jun  5 12:18:57 IST 2026
[2026-06-05 12:18:57,753.753 INFO    ] ================================================
[2026-06-05 12:18:58,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:18:58
[2026-06-05 12:18:59,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:18:59,413.413 INFO    ] Initializing speech engine...
[2026-06-05 12:18:59,425.425 INFO    ] 2026-06-05 12:18:59
[2026-06-05 12:18:59,717.717 INFO    ] 2026-06-05 12:18:59
[2026-06-05 12:18:59,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:18:59,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:18:59,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:19:00,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:19:00,195.195 INFO    ] time= 05/06/2026 12:19:00
[2026-06-05 12:19:00,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:19:00,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:19:00,394.394 INFO    ] No existing commands found in stream
[2026-06-05 12:19:05,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:19:05,427.427 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 12:19:06,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:19:06,685.685 INFO    ] Checking for system updates...
[2026-06-05 12:19:06,722.722 INFO    ] 200
[2026-06-05 12:19:06,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:06,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:19:06,782.782 INFO    ] No update needed
[2026-06-05 12:19:06,786.786 INFO    ] Checking for camera pi updates...
[2026-06-05 12:19:06,822.822 INFO    ] 200
[2026-06-05 12:19:06,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:06,867.867 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:19:06,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:19:06,912.912 INFO    ] No camera update needed
[2026-06-05 12:19:06,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:19:06,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:19:06,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:19:06,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:19:08,968.968 INFO    ] ================================================
[2026-06-05 12:19:08,983.983 INFO    ] Launching Daemon at Fri Jun  5 12:19:08 IST 2026
[2026-06-05 12:19:08,994.994 INFO    ] ================================================
[2026-06-05 12:19:09,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:19:09
[2026-06-05 12:19:10,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:19:10,449.449 INFO    ] Initializing speech engine...
[2026-06-05 12:19:10,458.458 INFO    ] 2026-06-05 12:19:10
[2026-06-05 12:19:10,718.718 INFO    ] 2026-06-05 12:19:10
[2026-06-05 12:19:10,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:19:10,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:19:11,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:19:11,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:19:11,206.206 INFO    ] time= 05/06/2026 12:19:11
[2026-06-05 12:19:11,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:19:11,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:19:11,394.394 INFO    ] No existing commands found in stream
[2026-06-05 12:19:16,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:19:16,424.424 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 12:19:19,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:19:19,534.534 INFO    ] Checking for system updates...
[2026-06-05 12:19:19,571.571 INFO    ] 200
[2026-06-05 12:19:19,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:19,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:19:19,633.633 INFO    ] No update needed
[2026-06-05 12:19:19,635.635 INFO    ] Checking for camera pi updates...
[2026-06-05 12:19:19,674.674 INFO    ] 200
[2026-06-05 12:19:19,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:19,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:19:19,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:19:19,775.775 INFO    ] No camera update needed
[2026-06-05 12:19:19,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:19:19,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:19:19,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:19:19,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:19:21,832.832 INFO    ] ================================================
[2026-06-05 12:19:21,848.848 INFO    ] Launching Daemon at Fri Jun  5 12:19:21 IST 2026
[2026-06-05 12:19:21,859.859 INFO    ] ================================================
[2026-06-05 12:19:22,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:19:22
[2026-06-05 12:19:23,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:19:23,285.285 INFO    ] Initializing speech engine...
[2026-06-05 12:19:23,293.293 INFO    ] 2026-06-05 12:19:23
[2026-06-05 12:19:23,544.544 INFO    ] 2026-06-05 12:19:23
[2026-06-05 12:19:23,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:19:23,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:19:23,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:19:24,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:19:24,030.030 INFO    ] time= 05/06/2026 12:19:24
[2026-06-05 12:19:24,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:19:24,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:19:24,251.251 INFO    ] No existing commands found in stream
[2026-06-05 12:19:29,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:19:29,278.278 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 12:19:31,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:19:31,867.867 INFO    ] Checking for system updates...
[2026-06-05 12:19:31,907.907 INFO    ] 200
[2026-06-05 12:19:31,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:31,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:19:31,981.981 INFO    ] No update needed
[2026-06-05 12:19:31,985.985 INFO    ] Checking for camera pi updates...
[2026-06-05 12:19:32,027.027 INFO    ] 200
[2026-06-05 12:19:32,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:32,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:19:32,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:19:32,116.116 INFO    ] No camera update needed
[2026-06-05 12:19:32,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:19:32,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:19:32,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:19:32,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:19:34,175.175 INFO    ] ================================================
[2026-06-05 12:19:34,191.191 INFO    ] Launching Daemon at Fri Jun  5 12:19:34 IST 2026
[2026-06-05 12:19:34,201.201 INFO    ] ================================================
[2026-06-05 12:19:34,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:19:34
[2026-06-05 12:19:35,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:19:35,656.656 INFO    ] Initializing speech engine...
[2026-06-05 12:19:35,659.659 INFO    ] 2026-06-05 12:19:35
[2026-06-05 12:19:35,919.919 INFO    ] 2026-06-05 12:19:35
[2026-06-05 12:19:35,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:19:36,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:19:36,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:19:36,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:19:36,330.330 INFO    ] time= 05/06/2026 12:19:36
[2026-06-05 12:19:36,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:19:36,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:19:36,490.490 INFO    ] No existing commands found in stream
[2026-06-05 12:19:41,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:19:41,503.503 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 12:19:44,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:19:44,243.243 INFO    ] Checking for system updates...
[2026-06-05 12:19:44,280.280 INFO    ] 200
[2026-06-05 12:19:44,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:44,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:19:44,338.338 INFO    ] No update needed
[2026-06-05 12:19:44,340.340 INFO    ] Checking for camera pi updates...
[2026-06-05 12:19:44,375.375 INFO    ] 200
[2026-06-05 12:19:44,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:44,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:19:44,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:19:44,483.483 INFO    ] No camera update needed
[2026-06-05 12:19:44,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:19:44,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:19:44,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:19:44,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:19:46,540.540 INFO    ] ================================================
[2026-06-05 12:19:46,555.555 INFO    ] Launching Daemon at Fri Jun  5 12:19:46 IST 2026
[2026-06-05 12:19:46,566.566 INFO    ] ================================================
[2026-06-05 12:19:47,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:19:47
[2026-06-05 12:19:47,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:19:48,033.033 INFO    ] Initializing speech engine...
[2026-06-05 12:19:48,042.042 INFO    ] 2026-06-05 12:19:48
[2026-06-05 12:19:48,306.306 INFO    ] 2026-06-05 12:19:48
[2026-06-05 12:19:48,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:19:48,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:19:48,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:19:48,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:19:48,791.791 INFO    ] time= 05/06/2026 12:19:48
[2026-06-05 12:19:48,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:19:48,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:19:49,005.005 INFO    ] No existing commands found in stream
[2026-06-05 12:19:54,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:19:54,021.021 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 12:19:58,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:19:58,274.274 INFO    ] Checking for system updates...
[2026-06-05 12:19:58,314.314 INFO    ] 200
[2026-06-05 12:19:58,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:58,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:19:58,378.378 INFO    ] No update needed
[2026-06-05 12:19:58,381.381 INFO    ] Checking for camera pi updates...
[2026-06-05 12:19:58,415.415 INFO    ] 200
[2026-06-05 12:19:58,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:19:58,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:19:58,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:19:58,609.609 INFO    ] No camera update needed
[2026-06-05 12:19:58,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:19:58,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:19:58,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:19:58,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:20:00,667.667 INFO    ] ================================================
[2026-06-05 12:20:00,682.682 INFO    ] Launching Daemon at Fri Jun  5 12:20:00 IST 2026
[2026-06-05 12:20:00,693.693 INFO    ] ================================================
[2026-06-05 12:20:01,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:20:01
[2026-06-05 12:20:02,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:20:03,092.092 INFO    ] Initializing speech engine...
[2026-06-05 12:20:03,096.096 INFO    ] 2026-06-05 12:20:03
[2026-06-05 12:20:03,443.443 INFO    ] 2026-06-05 12:20:03
[2026-06-05 12:20:03,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:20:03,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:20:03,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:20:04,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:20:04,142.142 INFO    ] time= 05/06/2026 12:20:04
[2026-06-05 12:20:04,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:20:04,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:20:04,374.374 INFO    ] No existing commands found in stream
[2026-06-05 12:20:09,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:20:09,410.410 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 12:20:12,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:20:12,218.218 INFO    ] Checking for system updates...
[2026-06-05 12:20:12,255.255 INFO    ] 200
[2026-06-05 12:20:12,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:20:12,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:20:12,314.314 INFO    ] No update needed
[2026-06-05 12:20:12,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 12:20:12,351.351 INFO    ] 200
[2026-06-05 12:20:12,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:20:12,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:20:12,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:20:12,450.450 INFO    ] No camera update needed
[2026-06-05 12:20:12,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:20:12,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:20:12,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:20:12,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:20:14,508.508 INFO    ] ================================================
[2026-06-05 12:20:14,523.523 INFO    ] Launching Daemon at Fri Jun  5 12:20:14 IST 2026
[2026-06-05 12:20:14,534.534 INFO    ] ================================================
[2026-06-05 12:20:15,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:20:15
[2026-06-05 12:20:15,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:20:16,119.119 INFO    ] Initializing speech engine...
[2026-06-05 12:20:16,125.125 INFO    ] 2026-06-05 12:20:16
[2026-06-05 12:20:16,388.388 INFO    ] 2026-06-05 12:20:16
[2026-06-05 12:20:16,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:20:16,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:20:16,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:20:16,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:20:16,907.907 INFO    ] time= 05/06/2026 12:20:16
[2026-06-05 12:20:16,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:20:17,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:20:17,152.152 INFO    ] No existing commands found in stream
[2026-06-05 12:20:22,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:20:22,181.181 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 12:20:26,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:20:26,543.543 INFO    ] Checking for system updates...
[2026-06-05 12:20:26,585.585 INFO    ] 200
[2026-06-05 12:20:26,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:20:26,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:20:26,645.645 INFO    ] No update needed
[2026-06-05 12:20:26,648.648 INFO    ] Checking for camera pi updates...
[2026-06-05 12:20:26,682.682 INFO    ] 200
[2026-06-05 12:20:26,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:20:26,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:20:26,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:20:26,782.782 INFO    ] No camera update needed
[2026-06-05 12:20:26,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:20:26,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:20:26,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:20:26,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:20:28,837.837 INFO    ] ================================================
[2026-06-05 12:20:28,852.852 INFO    ] Launching Daemon at Fri Jun  5 12:20:28 IST 2026
[2026-06-05 12:20:28,864.864 INFO    ] ================================================
[2026-06-05 12:20:29,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:20:29
[2026-06-05 12:20:30,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:20:30,316.316 INFO    ] Initializing speech engine...
[2026-06-05 12:20:30,327.327 INFO    ] 2026-06-05 12:20:30
[2026-06-05 12:20:30,588.588 INFO    ] 2026-06-05 12:20:30
[2026-06-05 12:20:30,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:20:30,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:20:30,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:20:30,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:20:31,041.041 INFO    ] time= 05/06/2026 12:20:30
[2026-06-05 12:20:31,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:20:31,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:20:31,254.254 INFO    ] No existing commands found in stream
[2026-06-05 12:20:36,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:20:36,284.284 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 12:20:37,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:20:37,306.306 INFO    ] Checking for system updates...
[2026-06-05 12:20:37,343.343 INFO    ] 200
[2026-06-05 12:20:37,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:20:37,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:20:37,409.409 INFO    ] No update needed
[2026-06-05 12:20:37,412.412 INFO    ] Checking for camera pi updates...
[2026-06-05 12:20:37,447.447 INFO    ] 200
[2026-06-05 12:20:37,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:20:37,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:20:37,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:20:37,546.546 INFO    ] No camera update needed
[2026-06-05 12:20:37,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:20:37,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:20:37,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:20:37,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:20:39,605.605 INFO    ] ================================================
[2026-06-05 12:20:39,621.621 INFO    ] Launching Daemon at Fri Jun  5 12:20:39 IST 2026
[2026-06-05 12:20:39,632.632 INFO    ] ================================================
[2026-06-05 12:20:40,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:20:40
[2026-06-05 12:20:40,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:20:41,087.087 INFO    ] Initializing speech engine...
[2026-06-05 12:20:41,096.096 INFO    ] 2026-06-05 12:20:41
[2026-06-05 12:20:41,359.359 INFO    ] 2026-06-05 12:20:41
[2026-06-05 12:20:41,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:20:41,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:20:41,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:20:41,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:20:41,838.838 INFO    ] time= 05/06/2026 12:20:41
[2026-06-05 12:20:41,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:20:41,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:20:42,060.060 INFO    ] No existing commands found in stream
[2026-06-05 12:20:47,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:20:47,082.082 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 12:20:50,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:20:50,228.228 INFO    ] Checking for system updates...
[2026-06-05 12:20:50,265.265 INFO    ] 200
[2026-06-05 12:20:50,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:20:50,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:20:50,322.322 INFO    ] No update needed
[2026-06-05 12:20:50,325.325 INFO    ] Checking for camera pi updates...
[2026-06-05 12:20:50,358.358 INFO    ] 200
[2026-06-05 12:20:50,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:20:50,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:20:50,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:20:50,454.454 INFO    ] No camera update needed
[2026-06-05 12:20:50,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:20:50,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:20:50,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:20:50,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:20:52,510.510 INFO    ] ================================================
[2026-06-05 12:20:52,525.525 INFO    ] Launching Daemon at Fri Jun  5 12:20:52 IST 2026
[2026-06-05 12:20:52,536.536 INFO    ] ================================================
[2026-06-05 12:20:53,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:20:53
[2026-06-05 12:20:53,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:20:54,098.098 INFO    ] Initializing speech engine...
[2026-06-05 12:20:54,112.112 INFO    ] 2026-06-05 12:20:54
[2026-06-05 12:20:54,399.399 INFO    ] 2026-06-05 12:20:54
[2026-06-05 12:20:54,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:20:54,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:20:54,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:20:54,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:20:54,942.942 INFO    ] time= 05/06/2026 12:20:54
[2026-06-05 12:20:54,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:20:54,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:20:55,101.101 INFO    ] No existing commands found in stream
[2026-06-05 12:21:00,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:21:00,129.129 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 12:21:01,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:21:01,424.424 INFO    ] Checking for system updates...
[2026-06-05 12:21:01,461.461 INFO    ] 200
[2026-06-05 12:21:01,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:01,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:21:01,537.537 INFO    ] No update needed
[2026-06-05 12:21:01,542.542 INFO    ] Checking for camera pi updates...
[2026-06-05 12:21:01,634.634 INFO    ] 200
[2026-06-05 12:21:01,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:01,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:21:01,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:21:01,758.758 INFO    ] No camera update needed
[2026-06-05 12:21:01,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:21:01,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:21:01,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:21:01,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:21:03,829.829 INFO    ] ================================================
[2026-06-05 12:21:03,845.845 INFO    ] Launching Daemon at Fri Jun  5 12:21:03 IST 2026
[2026-06-05 12:21:03,856.856 INFO    ] ================================================
[2026-06-05 12:21:04,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:21:04
[2026-06-05 12:21:05,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:21:05,292.292 INFO    ] Initializing speech engine...
[2026-06-05 12:21:05,305.305 INFO    ] 2026-06-05 12:21:05
[2026-06-05 12:21:05,590.590 INFO    ] 2026-06-05 12:21:05
[2026-06-05 12:21:05,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:21:05,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:21:05,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:21:05,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:21:05,972.972 INFO    ] time= 05/06/2026 12:21:05
[2026-06-05 12:21:05,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:21:06,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:21:06,074.074 INFO    ] No existing commands found in stream
[2026-06-05 12:21:11,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:21:11,096.096 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 12:21:13,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:21:13,398.398 INFO    ] Checking for system updates...
[2026-06-05 12:21:13,435.435 INFO    ] 200
[2026-06-05 12:21:13,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:13,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:21:13,494.494 INFO    ] No update needed
[2026-06-05 12:21:13,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 12:21:13,530.530 INFO    ] 200
[2026-06-05 12:21:13,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:13,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:21:13,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:21:13,624.624 INFO    ] No camera update needed
[2026-06-05 12:21:13,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:21:13,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:21:13,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:21:13,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:21:15,679.679 INFO    ] ================================================
[2026-06-05 12:21:15,695.695 INFO    ] Launching Daemon at Fri Jun  5 12:21:15 IST 2026
[2026-06-05 12:21:15,705.705 INFO    ] ================================================
[2026-06-05 12:21:16,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:21:16
[2026-06-05 12:21:16,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:21:17,112.112 INFO    ] Initializing speech engine...
[2026-06-05 12:21:17,125.125 INFO    ] 2026-06-05 12:21:17
[2026-06-05 12:21:17,401.401 INFO    ] 2026-06-05 12:21:17
[2026-06-05 12:21:17,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:21:17,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:21:17,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:21:17,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:21:17,889.889 INFO    ] time= 05/06/2026 12:21:17
[2026-06-05 12:21:17,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:21:17,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:21:18,074.074 INFO    ] No existing commands found in stream
[2026-06-05 12:21:23,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:21:23,089.089 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 12:21:25,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:21:25,429.429 INFO    ] Checking for system updates...
[2026-06-05 12:21:25,467.467 INFO    ] 200
[2026-06-05 12:21:25,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:25,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:21:25,529.529 INFO    ] No update needed
[2026-06-05 12:21:25,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 12:21:25,568.568 INFO    ] 200
[2026-06-05 12:21:25,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:25,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:21:25,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:21:25,674.674 INFO    ] No camera update needed
[2026-06-05 12:21:25,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:21:25,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:21:25,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:21:25,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:21:27,732.732 INFO    ] ================================================
[2026-06-05 12:21:27,747.747 INFO    ] Launching Daemon at Fri Jun  5 12:21:27 IST 2026
[2026-06-05 12:21:27,757.757 INFO    ] ================================================
[2026-06-05 12:21:28,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:21:28
[2026-06-05 12:21:29,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:21:29,316.316 INFO    ] Initializing speech engine...
[2026-06-05 12:21:29,324.324 INFO    ] 2026-06-05 12:21:29
[2026-06-05 12:21:29,592.592 INFO    ] 2026-06-05 12:21:29
[2026-06-05 12:21:29,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:21:29,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:21:29,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:21:30,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:21:30,137.137 INFO    ] time= 05/06/2026 12:21:30
[2026-06-05 12:21:30,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:21:30,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:21:30,298.298 INFO    ] No existing commands found in stream
[2026-06-05 12:21:35,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:21:35,325.325 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 12:21:38,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:21:38,144.144 INFO    ] Checking for system updates...
[2026-06-05 12:21:38,181.181 INFO    ] 200
[2026-06-05 12:21:38,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:38,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:21:38,246.246 INFO    ] No update needed
[2026-06-05 12:21:38,249.249 INFO    ] Checking for camera pi updates...
[2026-06-05 12:21:38,283.283 INFO    ] 200
[2026-06-05 12:21:38,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:38,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:21:38,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:21:38,381.381 INFO    ] No camera update needed
[2026-06-05 12:21:38,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:21:38,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:21:38,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:21:38,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:21:40,438.438 INFO    ] ================================================
[2026-06-05 12:21:40,453.453 INFO    ] Launching Daemon at Fri Jun  5 12:21:40 IST 2026
[2026-06-05 12:21:40,464.464 INFO    ] ================================================
[2026-06-05 12:21:41,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:21:41
[2026-06-05 12:21:41,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:21:41,891.891 INFO    ] Initializing speech engine...
[2026-06-05 12:21:41,916.916 INFO    ] 2026-06-05 12:21:41
[2026-06-05 12:21:42,183.183 INFO    ] 2026-06-05 12:21:42
[2026-06-05 12:21:42,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:21:42,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:21:42,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:21:42,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:21:42,593.593 INFO    ] time= 05/06/2026 12:21:42
[2026-06-05 12:21:42,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:21:42,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:21:42,773.773 INFO    ] No existing commands found in stream
[2026-06-05 12:21:47,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:21:47,801.801 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 12:21:52,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:21:52,169.169 INFO    ] Checking for system updates...
[2026-06-05 12:21:52,204.204 INFO    ] 200
[2026-06-05 12:21:52,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:52,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:21:52,263.263 INFO    ] No update needed
[2026-06-05 12:21:52,266.266 INFO    ] Checking for camera pi updates...
[2026-06-05 12:21:52,300.300 INFO    ] 200
[2026-06-05 12:21:52,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:21:52,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:21:52,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:21:52,402.402 INFO    ] No camera update needed
[2026-06-05 12:21:52,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:21:52,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:21:52,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:21:52,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:21:54,458.458 INFO    ] ================================================
[2026-06-05 12:21:54,473.473 INFO    ] Launching Daemon at Fri Jun  5 12:21:54 IST 2026
[2026-06-05 12:21:54,484.484 INFO    ] ================================================
[2026-06-05 12:21:55,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:21:55
[2026-06-05 12:21:55,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:21:55,924.924 INFO    ] Initializing speech engine...
[2026-06-05 12:21:55,949.949 INFO    ] 2026-06-05 12:21:55
[2026-06-05 12:21:56,221.221 INFO    ] 2026-06-05 12:21:56
[2026-06-05 12:21:56,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:21:56,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:21:56,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:21:56,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:21:56,845.845 INFO    ] time= 05/06/2026 12:21:56
[2026-06-05 12:21:56,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:21:56,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:21:56,994.994 INFO    ] No existing commands found in stream
[2026-06-05 12:22:02,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:22:02,032.032 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 12:22:04,065.065 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:22:04,068.068 INFO    ] Checking for system updates...
[2026-06-05 12:22:04,104.104 INFO    ] 200
[2026-06-05 12:22:04,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:04,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:22:04,162.162 INFO    ] No update needed
[2026-06-05 12:22:04,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 12:22:04,199.199 INFO    ] 200
[2026-06-05 12:22:04,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:04,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:22:04,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:22:04,299.299 INFO    ] No camera update needed
[2026-06-05 12:22:04,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:22:04,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:22:04,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:22:04,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:22:06,357.357 INFO    ] ================================================
[2026-06-05 12:22:06,374.374 INFO    ] Launching Daemon at Fri Jun  5 12:22:06 IST 2026
[2026-06-05 12:22:06,385.385 INFO    ] ================================================
[2026-06-05 12:22:06,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:22:06
[2026-06-05 12:22:07,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:22:07,796.796 INFO    ] Initializing speech engine...
[2026-06-05 12:22:07,804.804 INFO    ] 2026-06-05 12:22:07
[2026-06-05 12:22:08,097.097 INFO    ] 2026-06-05 12:22:08
[2026-06-05 12:22:08,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:22:08,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:22:08,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:22:08,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:22:08,514.514 INFO    ] time= 05/06/2026 12:22:08
[2026-06-05 12:22:08,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:22:08,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:22:08,600.600 INFO    ] No existing commands found in stream
[2026-06-05 12:22:13,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:22:13,618.618 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 12:22:14,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:22:14,628.628 INFO    ] Checking for system updates...
[2026-06-05 12:22:14,665.665 INFO    ] 200
[2026-06-05 12:22:14,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:14,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:22:14,723.723 INFO    ] No update needed
[2026-06-05 12:22:14,726.726 INFO    ] Checking for camera pi updates...
[2026-06-05 12:22:14,760.760 INFO    ] 200
[2026-06-05 12:22:14,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:14,805.805 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:22:14,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:22:14,855.855 INFO    ] No camera update needed
[2026-06-05 12:22:14,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:22:14,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:22:14,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:22:14,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:22:16,914.914 INFO    ] ================================================
[2026-06-05 12:22:16,929.929 INFO    ] Launching Daemon at Fri Jun  5 12:22:16 IST 2026
[2026-06-05 12:22:16,940.940 INFO    ] ================================================
[2026-06-05 12:22:17,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:22:17
[2026-06-05 12:22:18,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:22:18,357.357 INFO    ] Initializing speech engine...
[2026-06-05 12:22:18,380.380 INFO    ] 2026-06-05 12:22:18
[2026-06-05 12:22:18,655.655 INFO    ] 2026-06-05 12:22:18
[2026-06-05 12:22:18,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:22:18,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:22:18,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:22:19,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:22:19,148.148 INFO    ] time= 05/06/2026 12:22:19
[2026-06-05 12:22:19,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:22:19,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:22:19,374.374 INFO    ] No existing commands found in stream
[2026-06-05 12:22:24,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:22:24,409.409 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 12:22:28,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:22:28,560.560 INFO    ] Checking for system updates...
[2026-06-05 12:22:28,597.597 INFO    ] 200
[2026-06-05 12:22:28,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:28,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:22:28,657.657 INFO    ] No update needed
[2026-06-05 12:22:28,660.660 INFO    ] Checking for camera pi updates...
[2026-06-05 12:22:28,697.697 INFO    ] 200
[2026-06-05 12:22:28,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:28,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:22:28,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:22:28,795.795 INFO    ] No camera update needed
[2026-06-05 12:22:28,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:22:28,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:22:28,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:22:28,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:22:30,849.849 INFO    ] ================================================
[2026-06-05 12:22:30,864.864 INFO    ] Launching Daemon at Fri Jun  5 12:22:30 IST 2026
[2026-06-05 12:22:30,875.875 INFO    ] ================================================
[2026-06-05 12:22:31,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:22:31
[2026-06-05 12:22:32,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:22:32,552.552 INFO    ] Initializing speech engine...
[2026-06-05 12:22:32,567.567 INFO    ] 2026-06-05 12:22:32
[2026-06-05 12:22:32,850.850 INFO    ] 2026-06-05 12:22:32
[2026-06-05 12:22:32,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:22:33,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:22:33,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:22:34,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:22:34,121.121 INFO    ] time= 05/06/2026 12:22:34
[2026-06-05 12:22:34,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:22:34,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:22:34,246.246 INFO    ] No existing commands found in stream
[2026-06-05 12:22:39,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:22:39,260.260 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 12:22:40,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:22:40,077.077 INFO    ] Checking for system updates...
[2026-06-05 12:22:40,114.114 INFO    ] 200
[2026-06-05 12:22:40,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:40,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:22:40,173.173 INFO    ] No update needed
[2026-06-05 12:22:40,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 12:22:40,209.209 INFO    ] 200
[2026-06-05 12:22:40,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:40,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:22:40,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:22:40,317.317 INFO    ] No camera update needed
[2026-06-05 12:22:40,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:22:40,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:22:40,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:22:40,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:22:42,372.372 INFO    ] ================================================
[2026-06-05 12:22:42,387.387 INFO    ] Launching Daemon at Fri Jun  5 12:22:42 IST 2026
[2026-06-05 12:22:42,397.397 INFO    ] ================================================
[2026-06-05 12:22:42,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:22:42
[2026-06-05 12:22:43,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:22:43,807.807 INFO    ] Initializing speech engine...
[2026-06-05 12:22:43,834.834 INFO    ] 2026-06-05 12:22:43
[2026-06-05 12:22:44,084.084 INFO    ] 2026-06-05 12:22:44
[2026-06-05 12:22:44,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:22:44,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:22:44,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:22:44,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:22:44,526.526 INFO    ] time= 05/06/2026 12:22:44
[2026-06-05 12:22:44,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:22:44,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:22:44,785.785 INFO    ] No existing commands found in stream
[2026-06-05 12:22:49,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:22:49,813.813 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 12:22:51,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:22:51,640.640 INFO    ] Checking for system updates...
[2026-06-05 12:22:51,680.680 INFO    ] 200
[2026-06-05 12:22:51,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:51,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:22:51,741.741 INFO    ] No update needed
[2026-06-05 12:22:51,744.744 INFO    ] Checking for camera pi updates...
[2026-06-05 12:22:51,783.783 INFO    ] 200
[2026-06-05 12:22:51,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:22:51,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:22:51,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:22:51,879.879 INFO    ] No camera update needed
[2026-06-05 12:22:51,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:22:51,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:22:51,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:22:51,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:22:53,935.935 INFO    ] ================================================
[2026-06-05 12:22:53,950.950 INFO    ] Launching Daemon at Fri Jun  5 12:22:53 IST 2026
[2026-06-05 12:22:53,961.961 INFO    ] ================================================
[2026-06-05 12:22:54,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:22:54
[2026-06-05 12:22:55,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:22:55,369.369 INFO    ] Initializing speech engine...
[2026-06-05 12:22:55,392.392 INFO    ] 2026-06-05 12:22:55
[2026-06-05 12:22:55,645.645 INFO    ] 2026-06-05 12:22:55
[2026-06-05 12:22:55,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:22:55,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:22:55,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:22:56,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:22:56,205.205 INFO    ] time= 05/06/2026 12:22:56
[2026-06-05 12:22:56,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:22:56,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:22:56,358.358 INFO    ] No existing commands found in stream
[2026-06-05 12:23:01,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:23:01,375.375 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 12:23:04,572.572 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:23:04,576.576 INFO    ] Checking for system updates...
[2026-06-05 12:23:04,616.616 INFO    ] 200
[2026-06-05 12:23:04,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:04,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:23:04,674.674 INFO    ] No update needed
[2026-06-05 12:23:04,677.677 INFO    ] Checking for camera pi updates...
[2026-06-05 12:23:04,716.716 INFO    ] 200
[2026-06-05 12:23:04,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:04,767.767 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:23:04,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:23:04,805.805 INFO    ] No camera update needed
[2026-06-05 12:23:04,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:23:04,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:23:04,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:23:04,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:23:06,862.862 INFO    ] ================================================
[2026-06-05 12:23:06,878.878 INFO    ] Launching Daemon at Fri Jun  5 12:23:06 IST 2026
[2026-06-05 12:23:06,888.888 INFO    ] ================================================
[2026-06-05 12:23:07,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:23:07
[2026-06-05 12:23:08,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:23:08,480.480 INFO    ] Initializing speech engine...
[2026-06-05 12:23:08,489.489 INFO    ] 2026-06-05 12:23:08
[2026-06-05 12:23:08,751.751 INFO    ] 2026-06-05 12:23:08
[2026-06-05 12:23:08,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:23:09,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:23:09,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:23:09,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:23:09,317.317 INFO    ] time= 05/06/2026 12:23:09
[2026-06-05 12:23:09,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:23:09,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:23:09,462.462 INFO    ] No existing commands found in stream
[2026-06-05 12:23:14,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:23:14,487.487 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 12:23:18,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:23:18,625.625 INFO    ] Checking for system updates...
[2026-06-05 12:23:18,662.662 INFO    ] 200
[2026-06-05 12:23:18,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:18,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:23:18,721.721 INFO    ] No update needed
[2026-06-05 12:23:18,724.724 INFO    ] Checking for camera pi updates...
[2026-06-05 12:23:18,757.757 INFO    ] 200
[2026-06-05 12:23:18,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:18,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:23:18,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:23:18,867.867 INFO    ] No camera update needed
[2026-06-05 12:23:18,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:23:18,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:23:18,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:23:18,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:23:20,928.928 INFO    ] ================================================
[2026-06-05 12:23:20,945.945 INFO    ] Launching Daemon at Fri Jun  5 12:23:20 IST 2026
[2026-06-05 12:23:20,957.957 INFO    ] ================================================
[2026-06-05 12:23:21,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:23:21
[2026-06-05 12:23:22,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:23:22,440.440 INFO    ] Initializing speech engine...
[2026-06-05 12:23:22,451.451 INFO    ] 2026-06-05 12:23:22
[2026-06-05 12:23:22,738.738 INFO    ] 2026-06-05 12:23:22
[2026-06-05 12:23:22,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:23:23,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:23:23,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:23:23,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:23:23,264.264 INFO    ] time= 05/06/2026 12:23:23
[2026-06-05 12:23:23,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:23:23,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:23:23,398.398 INFO    ] No existing commands found in stream
[2026-06-05 12:23:28,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:23:28,411.411 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 12:23:30,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:23:30,982.982 INFO    ] Checking for system updates...
[2026-06-05 12:23:31,019.019 INFO    ] 200
[2026-06-05 12:23:31,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:31,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:23:31,078.078 INFO    ] No update needed
[2026-06-05 12:23:31,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 12:23:31,114.114 INFO    ] 200
[2026-06-05 12:23:31,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:31,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:23:31,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:23:31,207.207 INFO    ] No camera update needed
[2026-06-05 12:23:31,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:23:31,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:23:31,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:23:31,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:23:33,266.266 INFO    ] ================================================
[2026-06-05 12:23:33,281.281 INFO    ] Launching Daemon at Fri Jun  5 12:23:33 IST 2026
[2026-06-05 12:23:33,292.292 INFO    ] ================================================
[2026-06-05 12:23:33,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:23:33
[2026-06-05 12:23:34,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:23:34,749.749 INFO    ] Initializing speech engine...
[2026-06-05 12:23:34,759.759 INFO    ] 2026-06-05 12:23:34
[2026-06-05 12:23:35,002.002 INFO    ] 2026-06-05 12:23:34
[2026-06-05 12:23:35,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:23:35,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:23:35,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:23:35,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:23:35,472.472 INFO    ] time= 05/06/2026 12:23:35
[2026-06-05 12:23:35,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:23:35,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:23:35,697.697 INFO    ] No existing commands found in stream
[2026-06-05 12:23:40,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:23:40,722.722 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 12:23:42,482.482 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:23:42,484.484 INFO    ] Checking for system updates...
[2026-06-05 12:23:42,521.521 INFO    ] 200
[2026-06-05 12:23:42,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:42,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:23:42,585.585 INFO    ] No update needed
[2026-06-05 12:23:42,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 12:23:42,625.625 INFO    ] 200
[2026-06-05 12:23:42,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:42,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:23:42,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:23:42,723.723 INFO    ] No camera update needed
[2026-06-05 12:23:42,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:23:42,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:23:42,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:23:42,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:23:44,778.778 INFO    ] ================================================
[2026-06-05 12:23:44,793.793 INFO    ] Launching Daemon at Fri Jun  5 12:23:44 IST 2026
[2026-06-05 12:23:44,803.803 INFO    ] ================================================
[2026-06-05 12:23:45,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:23:45
[2026-06-05 12:23:45,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:23:46,208.208 INFO    ] Initializing speech engine...
[2026-06-05 12:23:46,222.222 INFO    ] 2026-06-05 12:23:46
[2026-06-05 12:23:46,488.488 INFO    ] 2026-06-05 12:23:46
[2026-06-05 12:23:46,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:23:46,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:23:46,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:23:46,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:23:46,961.961 INFO    ] time= 05/06/2026 12:23:46
[2026-06-05 12:23:47,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:23:47,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:23:47,189.189 INFO    ] No existing commands found in stream
[2026-06-05 12:23:52,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:23:52,217.217 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 12:23:55,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:23:55,612.612 INFO    ] Checking for system updates...
[2026-06-05 12:23:55,648.648 INFO    ] 200
[2026-06-05 12:23:55,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:55,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:23:55,706.706 INFO    ] No update needed
[2026-06-05 12:23:55,708.708 INFO    ] Checking for camera pi updates...
[2026-06-05 12:23:55,746.746 INFO    ] 200
[2026-06-05 12:23:55,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:23:55,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:23:55,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:23:55,843.843 INFO    ] No camera update needed
[2026-06-05 12:23:55,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:23:55,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:23:55,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:23:55,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:23:57,902.902 INFO    ] ================================================
[2026-06-05 12:23:57,917.917 INFO    ] Launching Daemon at Fri Jun  5 12:23:57 IST 2026
[2026-06-05 12:23:57,927.927 INFO    ] ================================================
[2026-06-05 12:23:58,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:23:58
[2026-06-05 12:23:59,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:23:59,510.510 INFO    ] Initializing speech engine...
[2026-06-05 12:23:59,522.522 INFO    ] 2026-06-05 12:23:59
[2026-06-05 12:23:59,802.802 INFO    ] 2026-06-05 12:23:59
[2026-06-05 12:23:59,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:24:00,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:24:00,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:24:00,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:24:00,355.355 INFO    ] time= 05/06/2026 12:24:00
[2026-06-05 12:24:00,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:24:00,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:24:00,513.513 INFO    ] No existing commands found in stream
[2026-06-05 12:24:05,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:24:05,532.532 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 12:24:07,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:24:07,472.472 INFO    ] Checking for system updates...
[2026-06-05 12:24:07,510.510 INFO    ] 200
[2026-06-05 12:24:07,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:07,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:24:07,568.568 INFO    ] No update needed
[2026-06-05 12:24:07,570.570 INFO    ] Checking for camera pi updates...
[2026-06-05 12:24:07,608.608 INFO    ] 200
[2026-06-05 12:24:07,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:07,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:24:07,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:24:07,801.801 INFO    ] No camera update needed
[2026-06-05 12:24:07,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:24:07,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:24:07,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:24:07,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:24:09,856.856 INFO    ] ================================================
[2026-06-05 12:24:09,871.871 INFO    ] Launching Daemon at Fri Jun  5 12:24:09 IST 2026
[2026-06-05 12:24:09,882.882 INFO    ] ================================================
[2026-06-05 12:24:10,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:24:10
[2026-06-05 12:24:11,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:24:11,329.329 INFO    ] Initializing speech engine...
[2026-06-05 12:24:11,351.351 INFO    ] 2026-06-05 12:24:11
[2026-06-05 12:24:11,628.628 INFO    ] 2026-06-05 12:24:11
[2026-06-05 12:24:11,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:24:11,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:24:11,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:24:12,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:24:12,064.064 INFO    ] time= 05/06/2026 12:24:12
[2026-06-05 12:24:12,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:24:12,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:24:12,159.159 INFO    ] No existing commands found in stream
[2026-06-05 12:24:17,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:24:17,192.192 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 12:24:19,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:24:19,439.439 INFO    ] Checking for system updates...
[2026-06-05 12:24:19,475.475 INFO    ] 200
[2026-06-05 12:24:19,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:19,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:24:19,541.541 INFO    ] No update needed
[2026-06-05 12:24:19,543.543 INFO    ] Checking for camera pi updates...
[2026-06-05 12:24:19,580.580 INFO    ] 200
[2026-06-05 12:24:19,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:19,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:24:19,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:24:19,675.675 INFO    ] No camera update needed
[2026-06-05 12:24:19,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:24:19,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:24:19,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:24:19,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:24:21,731.731 INFO    ] ================================================
[2026-06-05 12:24:21,746.746 INFO    ] Launching Daemon at Fri Jun  5 12:24:21 IST 2026
[2026-06-05 12:24:21,757.757 INFO    ] ================================================
[2026-06-05 12:24:22,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:24:22
[2026-06-05 12:24:22,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:24:23,184.184 INFO    ] Initializing speech engine...
[2026-06-05 12:24:23,193.193 INFO    ] 2026-06-05 12:24:23
[2026-06-05 12:24:23,444.444 INFO    ] 2026-06-05 12:24:23
[2026-06-05 12:24:23,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:24:23,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:24:23,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:24:23,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:24:24,014.014 INFO    ] time= 05/06/2026 12:24:23
[2026-06-05 12:24:24,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:24:24,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:24:24,192.192 INFO    ] No existing commands found in stream
[2026-06-05 12:24:29,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:24:29,225.225 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 12:24:29,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:24:29,938.938 INFO    ] Checking for system updates...
[2026-06-05 12:24:29,978.978 INFO    ] 200
[2026-06-05 12:24:29,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:30,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:24:30,038.038 INFO    ] No update needed
[2026-06-05 12:24:30,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 12:24:30,076.076 INFO    ] 200
[2026-06-05 12:24:30,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:30,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:24:30,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:24:30,181.181 INFO    ] No camera update needed
[2026-06-05 12:24:30,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:24:30,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:24:30,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:24:30,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:24:32,242.242 INFO    ] ================================================
[2026-06-05 12:24:32,258.258 INFO    ] Launching Daemon at Fri Jun  5 12:24:32 IST 2026
[2026-06-05 12:24:32,269.269 INFO    ] ================================================
[2026-06-05 12:24:32,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:24:32
[2026-06-05 12:24:33,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:24:33,716.716 INFO    ] Initializing speech engine...
[2026-06-05 12:24:33,738.738 INFO    ] 2026-06-05 12:24:33
[2026-06-05 12:24:33,989.989 INFO    ] 2026-06-05 12:24:33
[2026-06-05 12:24:34,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:24:35,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:24:35,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:24:35,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:24:35,330.330 INFO    ] time= 05/06/2026 12:24:35
[2026-06-05 12:24:35,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:24:35,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:24:35,408.408 INFO    ] No existing commands found in stream
[2026-06-05 12:24:40,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:24:40,423.423 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 12:24:43,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:24:43,684.684 INFO    ] Checking for system updates...
[2026-06-05 12:24:43,720.720 INFO    ] 200
[2026-06-05 12:24:43,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:43,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:24:43,777.777 INFO    ] No update needed
[2026-06-05 12:24:43,780.780 INFO    ] Checking for camera pi updates...
[2026-06-05 12:24:43,817.817 INFO    ] 200
[2026-06-05 12:24:43,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:43,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:24:43,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:24:43,911.911 INFO    ] No camera update needed
[2026-06-05 12:24:43,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:24:43,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:24:43,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:24:43,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:24:45,968.968 INFO    ] ================================================
[2026-06-05 12:24:45,984.984 INFO    ] Launching Daemon at Fri Jun  5 12:24:45 IST 2026
[2026-06-05 12:24:46,998.998 INFO    ] ================================================
[2026-06-05 12:24:46,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:24:46
[2026-06-05 12:24:47,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:24:47,414.414 INFO    ] Initializing speech engine...
[2026-06-05 12:24:47,438.438 INFO    ] 2026-06-05 12:24:47
[2026-06-05 12:24:47,707.707 INFO    ] 2026-06-05 12:24:47
[2026-06-05 12:24:47,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:24:47,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:24:47,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:24:48,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:24:48,121.121 INFO    ] time= 05/06/2026 12:24:48
[2026-06-05 12:24:48,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:24:48,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:24:48,213.213 INFO    ] No existing commands found in stream
[2026-06-05 12:24:53,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:24:53,251.251 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 12:24:55,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:24:55,948.948 INFO    ] Checking for system updates...
[2026-06-05 12:24:55,987.987 INFO    ] 200
[2026-06-05 12:24:55,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:56,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:24:56,051.051 INFO    ] No update needed
[2026-06-05 12:24:56,053.053 INFO    ] Checking for camera pi updates...
[2026-06-05 12:24:56,087.087 INFO    ] 200
[2026-06-05 12:24:56,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:24:56,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:24:56,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:24:56,187.187 INFO    ] No camera update needed
[2026-06-05 12:24:56,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:24:56,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:24:56,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:24:56,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:24:58,246.246 INFO    ] ================================================
[2026-06-05 12:24:58,262.262 INFO    ] Launching Daemon at Fri Jun  5 12:24:58 IST 2026
[2026-06-05 12:24:58,273.273 INFO    ] ================================================
[2026-06-05 12:24:58,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:24:58
[2026-06-05 12:24:59,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:24:59,679.679 INFO    ] Initializing speech engine...
[2026-06-05 12:24:59,687.687 INFO    ] 2026-06-05 12:24:59
[2026-06-05 12:24:59,977.977 INFO    ] 2026-06-05 12:24:59
[2026-06-05 12:25:00,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:25:00,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:25:00,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:25:00,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:25:00,389.389 INFO    ] time= 05/06/2026 12:25:00
[2026-06-05 12:25:00,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:25:00,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:25:00,538.538 INFO    ] No existing commands found in stream
[2026-06-05 12:25:05,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:25:05,566.566 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 12:25:06,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:25:06,791.791 INFO    ] Checking for system updates...
[2026-06-05 12:25:06,832.832 INFO    ] 200
[2026-06-05 12:25:06,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:06,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:25:06,891.891 INFO    ] No update needed
[2026-06-05 12:25:06,893.893 INFO    ] Checking for camera pi updates...
[2026-06-05 12:25:06,930.930 INFO    ] 200
[2026-06-05 12:25:06,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:06,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:25:07,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:25:07,028.028 INFO    ] No camera update needed
[2026-06-05 12:25:07,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:25:07,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:25:07,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:25:07,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:25:09,086.086 INFO    ] ================================================
[2026-06-05 12:25:09,102.102 INFO    ] Launching Daemon at Fri Jun  5 12:25:09 IST 2026
[2026-06-05 12:25:09,112.112 INFO    ] ================================================
[2026-06-05 12:25:09,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:25:09
[2026-06-05 12:25:10,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:25:10,544.544 INFO    ] Initializing speech engine...
[2026-06-05 12:25:10,550.550 INFO    ] 2026-06-05 12:25:10
[2026-06-05 12:25:10,845.845 INFO    ] 2026-06-05 12:25:10
[2026-06-05 12:25:10,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:25:11,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:25:11,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:25:11,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:25:11,258.258 INFO    ] time= 05/06/2026 12:25:11
[2026-06-05 12:25:11,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:25:11,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:25:11,413.413 INFO    ] No existing commands found in stream
[2026-06-05 12:25:16,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:25:16,440.440 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 12:25:19,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:25:19,680.680 INFO    ] Checking for system updates...
[2026-06-05 12:25:19,717.717 INFO    ] 200
[2026-06-05 12:25:19,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:19,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:25:19,775.775 INFO    ] No update needed
[2026-06-05 12:25:19,778.778 INFO    ] Checking for camera pi updates...
[2026-06-05 12:25:19,815.815 INFO    ] 200
[2026-06-05 12:25:19,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:19,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:25:19,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:25:19,909.909 INFO    ] No camera update needed
[2026-06-05 12:25:19,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:25:19,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:25:19,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:25:19,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:25:21,965.965 INFO    ] ================================================
[2026-06-05 12:25:21,980.980 INFO    ] Launching Daemon at Fri Jun  5 12:25:21 IST 2026
[2026-06-05 12:25:21,991.991 INFO    ] ================================================
[2026-06-05 12:25:22,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:25:22
[2026-06-05 12:25:23,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:25:23,467.467 INFO    ] Initializing speech engine...
[2026-06-05 12:25:23,476.476 INFO    ] 2026-06-05 12:25:23
[2026-06-05 12:25:23,721.721 INFO    ] 2026-06-05 12:25:23
[2026-06-05 12:25:23,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:25:24,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:25:24,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:25:24,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:25:24,189.189 INFO    ] time= 05/06/2026 12:25:24
[2026-06-05 12:25:24,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:25:24,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:25:24,412.412 INFO    ] No existing commands found in stream
[2026-06-05 12:25:29,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:25:29,439.439 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 12:25:32,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:25:32,451.451 INFO    ] Checking for system updates...
[2026-06-05 12:25:32,510.510 INFO    ] 200
[2026-06-05 12:25:32,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:32,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:25:32,580.580 INFO    ] No update needed
[2026-06-05 12:25:32,583.583 INFO    ] Checking for camera pi updates...
[2026-06-05 12:25:32,621.621 INFO    ] 200
[2026-06-05 12:25:32,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:32,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:25:32,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:25:32,705.705 INFO    ] No camera update needed
[2026-06-05 12:25:32,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:25:32,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:25:32,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:25:32,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:25:34,770.770 INFO    ] ================================================
[2026-06-05 12:25:34,784.784 INFO    ] Launching Daemon at Fri Jun  5 12:25:34 IST 2026
[2026-06-05 12:25:34,795.795 INFO    ] ================================================
[2026-06-05 12:25:35,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:25:35
[2026-06-05 12:25:35,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:25:36,222.222 INFO    ] Initializing speech engine...
[2026-06-05 12:25:36,231.231 INFO    ] 2026-06-05 12:25:36
[2026-06-05 12:25:36,479.479 INFO    ] 2026-06-05 12:25:36
[2026-06-05 12:25:36,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:25:36,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:25:36,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:25:36,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:25:37,026.026 INFO    ] time= 05/06/2026 12:25:36
[2026-06-05 12:25:37,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:25:37,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:25:37,176.176 INFO    ] No existing commands found in stream
[2026-06-05 12:25:42,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:25:42,203.203 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 12:25:44,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:25:44,590.590 INFO    ] Checking for system updates...
[2026-06-05 12:25:44,626.626 INFO    ] 200
[2026-06-05 12:25:44,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:44,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:25:44,683.683 INFO    ] No update needed
[2026-06-05 12:25:44,685.685 INFO    ] Checking for camera pi updates...
[2026-06-05 12:25:44,719.719 INFO    ] 200
[2026-06-05 12:25:44,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:44,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:25:44,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:25:44,826.826 INFO    ] No camera update needed
[2026-06-05 12:25:44,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:25:44,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:25:44,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:25:44,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:25:46,883.883 INFO    ] ================================================
[2026-06-05 12:25:46,899.899 INFO    ] Launching Daemon at Fri Jun  5 12:25:46 IST 2026
[2026-06-05 12:25:46,910.910 INFO    ] ================================================
[2026-06-05 12:25:47,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:25:47
[2026-06-05 12:25:48,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:25:48,408.408 INFO    ] Initializing speech engine...
[2026-06-05 12:25:48,416.416 INFO    ] 2026-06-05 12:25:48
[2026-06-05 12:25:48,712.712 INFO    ] 2026-06-05 12:25:48
[2026-06-05 12:25:48,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:25:48,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:25:48,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:25:49,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:25:49,128.128 INFO    ] time= 05/06/2026 12:25:49
[2026-06-05 12:25:49,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:25:49,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:25:49,214.214 INFO    ] No existing commands found in stream
[2026-06-05 12:25:54,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:25:54,247.247 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 12:25:57,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:25:57,632.632 INFO    ] Checking for system updates...
[2026-06-05 12:25:57,668.668 INFO    ] 200
[2026-06-05 12:25:57,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:57,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:25:57,727.727 INFO    ] No update needed
[2026-06-05 12:25:57,729.729 INFO    ] Checking for camera pi updates...
[2026-06-05 12:25:57,767.767 INFO    ] 200
[2026-06-05 12:25:57,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:25:57,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:25:57,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:25:57,861.861 INFO    ] No camera update needed
[2026-06-05 12:25:57,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:25:57,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:25:57,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:25:57,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:25:59,915.915 INFO    ] ================================================
[2026-06-05 12:25:59,929.929 INFO    ] Launching Daemon at Fri Jun  5 12:25:59 IST 2026
[2026-06-05 12:25:59,940.940 INFO    ] ================================================
[2026-06-05 12:26:00,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:26:00
[2026-06-05 12:26:01,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:26:01,365.365 INFO    ] Initializing speech engine...
[2026-06-05 12:26:01,371.371 INFO    ] 2026-06-05 12:26:01
[2026-06-05 12:26:01,620.620 INFO    ] 2026-06-05 12:26:01
[2026-06-05 12:26:01,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:26:01,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:26:01,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:26:02,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:26:02,127.127 INFO    ] time= 05/06/2026 12:26:02
[2026-06-05 12:26:02,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:26:02,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:26:02,293.293 INFO    ] No existing commands found in stream
[2026-06-05 12:26:07,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:26:07,308.308 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 12:26:09,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:26:09,100.100 INFO    ] Checking for system updates...
[2026-06-05 12:26:09,137.137 INFO    ] 200
[2026-06-05 12:26:09,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:09,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:26:09,198.198 INFO    ] No update needed
[2026-06-05 12:26:09,201.201 INFO    ] Checking for camera pi updates...
[2026-06-05 12:26:09,236.236 INFO    ] 200
[2026-06-05 12:26:09,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:09,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:26:09,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:26:09,432.432 INFO    ] No camera update needed
[2026-06-05 12:26:09,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:26:09,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:26:09,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:26:09,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:26:11,493.493 INFO    ] ================================================
[2026-06-05 12:26:11,508.508 INFO    ] Launching Daemon at Fri Jun  5 12:26:11 IST 2026
[2026-06-05 12:26:11,519.519 INFO    ] ================================================
[2026-06-05 12:26:12,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:26:12
[2026-06-05 12:26:12,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:26:12,956.956 INFO    ] Initializing speech engine...
[2026-06-05 12:26:12,965.965 INFO    ] 2026-06-05 12:26:12
[2026-06-05 12:26:13,226.226 INFO    ] 2026-06-05 12:26:13
[2026-06-05 12:26:13,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:26:13,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:26:13,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:26:13,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:26:13,669.669 INFO    ] time= 05/06/2026 12:26:13
[2026-06-05 12:26:13,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:26:13,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:26:13,895.895 INFO    ] No existing commands found in stream
[2026-06-05 12:26:18,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:26:18,928.928 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 12:26:20,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:26:20,231.231 INFO    ] Checking for system updates...
[2026-06-05 12:26:20,272.272 INFO    ] 200
[2026-06-05 12:26:20,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:20,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:26:20,339.339 INFO    ] No update needed
[2026-06-05 12:26:20,342.342 INFO    ] Checking for camera pi updates...
[2026-06-05 12:26:20,378.378 INFO    ] 200
[2026-06-05 12:26:20,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:20,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:26:20,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:26:20,473.473 INFO    ] No camera update needed
[2026-06-05 12:26:20,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:26:20,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:26:20,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:26:20,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:26:22,530.530 INFO    ] ================================================
[2026-06-05 12:26:22,546.546 INFO    ] Launching Daemon at Fri Jun  5 12:26:22 IST 2026
[2026-06-05 12:26:22,556.556 INFO    ] ================================================
[2026-06-05 12:26:23,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:26:23
[2026-06-05 12:26:23,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:26:23,958.958 INFO    ] Initializing speech engine...
[2026-06-05 12:26:23,980.980 INFO    ] 2026-06-05 12:26:23
[2026-06-05 12:26:24,235.235 INFO    ] 2026-06-05 12:26:24
[2026-06-05 12:26:24,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:26:24,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:26:24,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:26:24,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:26:24,707.707 INFO    ] time= 05/06/2026 12:26:24
[2026-06-05 12:26:24,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:26:24,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:26:24,927.927 INFO    ] No existing commands found in stream
[2026-06-05 12:26:29,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:26:29,957.957 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 12:26:31,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:26:31,177.177 INFO    ] Checking for system updates...
[2026-06-05 12:26:31,213.213 INFO    ] 200
[2026-06-05 12:26:31,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:31,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:26:31,277.277 INFO    ] No update needed
[2026-06-05 12:26:31,279.279 INFO    ] Checking for camera pi updates...
[2026-06-05 12:26:31,314.314 INFO    ] 200
[2026-06-05 12:26:31,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:31,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:26:31,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:26:31,408.408 INFO    ] No camera update needed
[2026-06-05 12:26:31,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:26:31,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:26:31,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:26:31,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:26:33,467.467 INFO    ] ================================================
[2026-06-05 12:26:33,482.482 INFO    ] Launching Daemon at Fri Jun  5 12:26:33 IST 2026
[2026-06-05 12:26:33,493.493 INFO    ] ================================================
[2026-06-05 12:26:34,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:26:34
[2026-06-05 12:26:34,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:26:34,927.927 INFO    ] Initializing speech engine...
[2026-06-05 12:26:34,933.933 INFO    ] 2026-06-05 12:26:34
[2026-06-05 12:26:35,190.190 INFO    ] 2026-06-05 12:26:35
[2026-06-05 12:26:35,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:26:35,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:26:35,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:26:35,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:26:35,652.652 INFO    ] time= 05/06/2026 12:26:35
[2026-06-05 12:26:35,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:26:35,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:26:35,884.884 INFO    ] No existing commands found in stream
[2026-06-05 12:26:40,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:26:40,900.900 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 12:26:43,481.481 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:26:43,484.484 INFO    ] Checking for system updates...
[2026-06-05 12:26:43,520.520 INFO    ] 200
[2026-06-05 12:26:43,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:43,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:26:43,579.579 INFO    ] No update needed
[2026-06-05 12:26:43,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 12:26:43,616.616 INFO    ] 200
[2026-06-05 12:26:43,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:43,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:26:43,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:26:43,719.719 INFO    ] No camera update needed
[2026-06-05 12:26:43,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:26:43,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:26:43,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:26:43,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:26:45,775.775 INFO    ] ================================================
[2026-06-05 12:26:45,790.790 INFO    ] Launching Daemon at Fri Jun  5 12:26:45 IST 2026
[2026-06-05 12:26:45,801.801 INFO    ] ================================================
[2026-06-05 12:26:46,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:26:46
[2026-06-05 12:26:46,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:26:47,238.238 INFO    ] Initializing speech engine...
[2026-06-05 12:26:47,244.244 INFO    ] 2026-06-05 12:26:47
[2026-06-05 12:26:47,503.503 INFO    ] 2026-06-05 12:26:47
[2026-06-05 12:26:47,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:26:47,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:26:47,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:26:47,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:26:47,975.975 INFO    ] time= 05/06/2026 12:26:47
[2026-06-05 12:26:48,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:26:48,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:26:48,189.189 INFO    ] No existing commands found in stream
[2026-06-05 12:26:53,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:26:53,216.216 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 12:26:54,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:26:54,953.953 INFO    ] Checking for system updates...
[2026-06-05 12:26:54,989.989 INFO    ] 200
[2026-06-05 12:26:54,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:55,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:26:55,048.048 INFO    ] No update needed
[2026-06-05 12:26:55,051.051 INFO    ] Checking for camera pi updates...
[2026-06-05 12:26:55,084.084 INFO    ] 200
[2026-06-05 12:26:55,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:26:55,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:26:55,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:26:55,189.189 INFO    ] No camera update needed
[2026-06-05 12:26:55,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:26:55,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:26:55,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:26:55,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:26:57,246.246 INFO    ] ================================================
[2026-06-05 12:26:57,261.261 INFO    ] Launching Daemon at Fri Jun  5 12:26:57 IST 2026
[2026-06-05 12:26:57,272.272 INFO    ] ================================================
[2026-06-05 12:26:57,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:26:57
[2026-06-05 12:26:58,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:26:58,733.733 INFO    ] Initializing speech engine...
[2026-06-05 12:26:58,740.740 INFO    ] 2026-06-05 12:26:58
[2026-06-05 12:26:59,003.003 INFO    ] 2026-06-05 12:26:58
[2026-06-05 12:26:59,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:26:59,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:26:59,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:26:59,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:26:59,465.465 INFO    ] time= 05/06/2026 12:26:59
[2026-06-05 12:26:59,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:26:59,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:26:59,606.606 INFO    ] No existing commands found in stream
[2026-06-05 12:27:04,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:27:04,621.621 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 12:27:06,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:27:06,785.785 INFO    ] Checking for system updates...
[2026-06-05 12:27:06,830.830 INFO    ] 200
[2026-06-05 12:27:06,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:06,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:27:06,891.891 INFO    ] No update needed
[2026-06-05 12:27:06,893.893 INFO    ] Checking for camera pi updates...
[2026-06-05 12:27:06,930.930 INFO    ] 200
[2026-06-05 12:27:06,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:06,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:27:07,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:27:07,036.036 INFO    ] No camera update needed
[2026-06-05 12:27:07,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:27:07,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:27:07,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:27:07,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:27:09,092.092 INFO    ] ================================================
[2026-06-05 12:27:09,108.108 INFO    ] Launching Daemon at Fri Jun  5 12:27:09 IST 2026
[2026-06-05 12:27:09,118.118 INFO    ] ================================================
[2026-06-05 12:27:09,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:27:09
[2026-06-05 12:27:10,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:27:10,536.536 INFO    ] Initializing speech engine...
[2026-06-05 12:27:10,555.555 INFO    ] 2026-06-05 12:27:10
[2026-06-05 12:27:10,809.809 INFO    ] 2026-06-05 12:27:10
[2026-06-05 12:27:10,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:27:11,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:27:11,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:27:11,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:27:11,301.301 INFO    ] time= 05/06/2026 12:27:11
[2026-06-05 12:27:11,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:27:11,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:27:11,506.506 INFO    ] No existing commands found in stream
[2026-06-05 12:27:16,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:27:16,530.530 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 12:27:20,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:27:20,932.932 INFO    ] Checking for system updates...
[2026-06-05 12:27:20,968.968 INFO    ] 200
[2026-06-05 12:27:20,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:21,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:27:21,032.032 INFO    ] No update needed
[2026-06-05 12:27:21,034.034 INFO    ] Checking for camera pi updates...
[2026-06-05 12:27:21,068.068 INFO    ] 200
[2026-06-05 12:27:21,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:21,110.110 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:27:21,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:27:21,162.162 INFO    ] No camera update needed
[2026-06-05 12:27:21,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:27:21,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:27:21,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:27:21,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:27:23,220.220 INFO    ] ================================================
[2026-06-05 12:27:23,235.235 INFO    ] Launching Daemon at Fri Jun  5 12:27:23 IST 2026
[2026-06-05 12:27:23,246.246 INFO    ] ================================================
[2026-06-05 12:27:23,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:27:23
[2026-06-05 12:27:24,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:27:24,662.662 INFO    ] Initializing speech engine...
[2026-06-05 12:27:24,671.671 INFO    ] 2026-06-05 12:27:24
[2026-06-05 12:27:24,930.930 INFO    ] 2026-06-05 12:27:24
[2026-06-05 12:27:24,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:27:25,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:27:25,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:27:25,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:27:25,410.410 INFO    ] time= 05/06/2026 12:27:25
[2026-06-05 12:27:25,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:27:25,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:27:25,614.614 INFO    ] No existing commands found in stream
[2026-06-05 12:27:30,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:27:30,639.639 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 12:27:32,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:27:32,180.180 INFO    ] Checking for system updates...
[2026-06-05 12:27:32,220.220 INFO    ] 200
[2026-06-05 12:27:32,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:32,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:27:32,284.284 INFO    ] No update needed
[2026-06-05 12:27:32,287.287 INFO    ] Checking for camera pi updates...
[2026-06-05 12:27:32,323.323 INFO    ] 200
[2026-06-05 12:27:32,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:32,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:27:32,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:27:32,412.412 INFO    ] No camera update needed
[2026-06-05 12:27:32,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:27:32,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:27:32,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:27:32,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:27:34,469.469 INFO    ] ================================================
[2026-06-05 12:27:34,484.484 INFO    ] Launching Daemon at Fri Jun  5 12:27:34 IST 2026
[2026-06-05 12:27:34,495.495 INFO    ] ================================================
[2026-06-05 12:27:35,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:27:35
[2026-06-05 12:27:35,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:27:36,051.051 INFO    ] Initializing speech engine...
[2026-06-05 12:27:36,064.064 INFO    ] 2026-06-05 12:27:36
[2026-06-05 12:27:36,343.343 INFO    ] 2026-06-05 12:27:36
[2026-06-05 12:27:36,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:27:36,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:27:36,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:27:37,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:27:37,096.096 INFO    ] time= 05/06/2026 12:27:37
[2026-06-05 12:27:37,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:27:37,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:27:37,322.322 INFO    ] No existing commands found in stream
[2026-06-05 12:27:42,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:27:42,338.338 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 12:27:44,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:27:44,774.774 INFO    ] Checking for system updates...
[2026-06-05 12:27:44,811.811 INFO    ] 200
[2026-06-05 12:27:44,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:44,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:27:44,876.876 INFO    ] No update needed
[2026-06-05 12:27:44,879.879 INFO    ] Checking for camera pi updates...
[2026-06-05 12:27:44,914.914 INFO    ] 200
[2026-06-05 12:27:44,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:44,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:27:45,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:27:45,009.009 INFO    ] No camera update needed
[2026-06-05 12:27:45,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:27:45,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:27:45,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:27:45,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:27:47,067.067 INFO    ] ================================================
[2026-06-05 12:27:47,082.082 INFO    ] Launching Daemon at Fri Jun  5 12:27:47 IST 2026
[2026-06-05 12:27:47,093.093 INFO    ] ================================================
[2026-06-05 12:27:47,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:27:47
[2026-06-05 12:27:48,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:27:48,639.639 INFO    ] Initializing speech engine...
[2026-06-05 12:27:48,649.649 INFO    ] 2026-06-05 12:27:48
[2026-06-05 12:27:48,897.897 INFO    ] 2026-06-05 12:27:48
[2026-06-05 12:27:48,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:27:49,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:27:49,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:27:49,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:27:49,393.393 INFO    ] time= 05/06/2026 12:27:49
[2026-06-05 12:27:49,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:27:49,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:27:49,580.580 INFO    ] No existing commands found in stream
[2026-06-05 12:27:54,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:27:54,615.615 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 12:27:55,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:27:55,729.729 INFO    ] Checking for system updates...
[2026-06-05 12:27:55,766.766 INFO    ] 200
[2026-06-05 12:27:55,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:55,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:27:55,829.829 INFO    ] No update needed
[2026-06-05 12:27:55,831.831 INFO    ] Checking for camera pi updates...
[2026-06-05 12:27:55,865.865 INFO    ] 200
[2026-06-05 12:27:55,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:27:55,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:27:55,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:27:55,957.957 INFO    ] No camera update needed
[2026-06-05 12:27:55,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:27:55,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:27:55,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:27:55,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:27:58,013.013 INFO    ] ================================================
[2026-06-05 12:27:58,029.029 INFO    ] Launching Daemon at Fri Jun  5 12:27:58 IST 2026
[2026-06-05 12:27:58,039.039 INFO    ] ================================================
[2026-06-05 12:27:58,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:27:58
[2026-06-05 12:27:59,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:27:59,497.497 INFO    ] Initializing speech engine...
[2026-06-05 12:27:59,506.506 INFO    ] 2026-06-05 12:27:59
[2026-06-05 12:27:59,764.764 INFO    ] 2026-06-05 12:27:59
[2026-06-05 12:27:59,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:28:00,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:28:00,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:28:00,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:28:00,221.221 INFO    ] time= 05/06/2026 12:28:00
[2026-06-05 12:28:00,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:28:00,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:28:00,459.459 INFO    ] No existing commands found in stream
[2026-06-05 12:28:05,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:28:05,470.470 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 12:28:06,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:28:06,443.443 INFO    ] Checking for system updates...
[2026-06-05 12:28:06,482.482 INFO    ] 200
[2026-06-05 12:28:06,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:06,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:28:06,540.540 INFO    ] No update needed
[2026-06-05 12:28:06,542.542 INFO    ] Checking for camera pi updates...
[2026-06-05 12:28:06,577.577 INFO    ] 200
[2026-06-05 12:28:06,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:06,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:28:06,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:28:06,667.667 INFO    ] No camera update needed
[2026-06-05 12:28:06,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:28:06,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:28:06,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:28:06,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:28:08,721.721 INFO    ] ================================================
[2026-06-05 12:28:08,736.736 INFO    ] Launching Daemon at Fri Jun  5 12:28:08 IST 2026
[2026-06-05 12:28:08,747.747 INFO    ] ================================================
[2026-06-05 12:28:09,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:28:09
[2026-06-05 12:28:09,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:28:10,184.184 INFO    ] Initializing speech engine...
[2026-06-05 12:28:10,191.191 INFO    ] 2026-06-05 12:28:10
[2026-06-05 12:28:10,448.448 INFO    ] 2026-06-05 12:28:10
[2026-06-05 12:28:10,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:28:10,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:28:10,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:28:10,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:28:10,895.895 INFO    ] time= 05/06/2026 12:28:10
[2026-06-05 12:28:10,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:28:10,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:28:11,119.119 INFO    ] No existing commands found in stream
[2026-06-05 12:28:16,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:28:16,152.152 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 12:28:19,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:28:19,848.848 INFO    ] Checking for system updates...
[2026-06-05 12:28:19,884.884 INFO    ] 200
[2026-06-05 12:28:19,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:19,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:28:19,946.946 INFO    ] No update needed
[2026-06-05 12:28:19,948.948 INFO    ] Checking for camera pi updates...
[2026-06-05 12:28:19,981.981 INFO    ] 200
[2026-06-05 12:28:19,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:20,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:28:20,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:28:20,178.178 INFO    ] No camera update needed
[2026-06-05 12:28:20,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:28:20,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:28:20,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:28:20,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:28:22,232.232 INFO    ] ================================================
[2026-06-05 12:28:22,247.247 INFO    ] Launching Daemon at Fri Jun  5 12:28:22 IST 2026
[2026-06-05 12:28:22,257.257 INFO    ] ================================================
[2026-06-05 12:28:22,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:28:22
[2026-06-05 12:28:23,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:28:23,665.665 INFO    ] Initializing speech engine...
[2026-06-05 12:28:23,688.688 INFO    ] 2026-06-05 12:28:23
[2026-06-05 12:28:23,944.944 INFO    ] 2026-06-05 12:28:23
[2026-06-05 12:28:23,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:28:24,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:28:24,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:28:24,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:28:24,327.327 INFO    ] time= 05/06/2026 12:28:24
[2026-06-05 12:28:24,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:28:24,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:28:24,412.412 INFO    ] No existing commands found in stream
[2026-06-05 12:28:29,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:28:29,450.450 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 12:28:31,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:28:31,688.688 INFO    ] Checking for system updates...
[2026-06-05 12:28:31,725.725 INFO    ] 200
[2026-06-05 12:28:31,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:31,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:28:31,783.783 INFO    ] No update needed
[2026-06-05 12:28:31,786.786 INFO    ] Checking for camera pi updates...
[2026-06-05 12:28:31,819.819 INFO    ] 200
[2026-06-05 12:28:31,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:31,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:28:31,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:28:31,908.908 INFO    ] No camera update needed
[2026-06-05 12:28:31,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:28:31,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:28:31,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:28:31,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:28:33,963.963 INFO    ] ================================================
[2026-06-05 12:28:33,978.978 INFO    ] Launching Daemon at Fri Jun  5 12:28:33 IST 2026
[2026-06-05 12:28:33,989.989 INFO    ] ================================================
[2026-06-05 12:28:34,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:28:34
[2026-06-05 12:28:35,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:28:35,504.504 INFO    ] Initializing speech engine...
[2026-06-05 12:28:35,513.513 INFO    ] 2026-06-05 12:28:35
[2026-06-05 12:28:35,795.795 INFO    ] 2026-06-05 12:28:35
[2026-06-05 12:28:35,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:28:36,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:28:36,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:28:36,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:28:36,261.261 INFO    ] time= 05/06/2026 12:28:36
[2026-06-05 12:28:36,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:28:36,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:28:36,487.487 INFO    ] No existing commands found in stream
[2026-06-05 12:28:41,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:28:41,504.504 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 12:28:45,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:28:45,441.441 INFO    ] Checking for system updates...
[2026-06-05 12:28:45,478.478 INFO    ] 200
[2026-06-05 12:28:45,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:45,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:28:45,537.537 INFO    ] No update needed
[2026-06-05 12:28:45,540.540 INFO    ] Checking for camera pi updates...
[2026-06-05 12:28:45,574.574 INFO    ] 200
[2026-06-05 12:28:45,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:45,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:28:45,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:28:45,678.678 INFO    ] No camera update needed
[2026-06-05 12:28:45,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:28:45,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:28:45,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:28:45,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:28:47,735.735 INFO    ] ================================================
[2026-06-05 12:28:47,750.750 INFO    ] Launching Daemon at Fri Jun  5 12:28:47 IST 2026
[2026-06-05 12:28:47,761.761 INFO    ] ================================================
[2026-06-05 12:28:48,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:28:48
[2026-06-05 12:28:49,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:28:49,271.271 INFO    ] Initializing speech engine...
[2026-06-05 12:28:49,280.280 INFO    ] 2026-06-05 12:28:49
[2026-06-05 12:28:49,532.532 INFO    ] 2026-06-05 12:28:49
[2026-06-05 12:28:49,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:28:49,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:28:49,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:28:49,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:28:49,995.995 INFO    ] time= 05/06/2026 12:28:49
[2026-06-05 12:28:50,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:28:50,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:28:50,225.225 INFO    ] No existing commands found in stream
[2026-06-05 12:28:55,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:28:55,248.248 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 12:28:57,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:28:57,475.475 INFO    ] Checking for system updates...
[2026-06-05 12:28:57,512.512 INFO    ] 200
[2026-06-05 12:28:57,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:57,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:28:57,571.571 INFO    ] No update needed
[2026-06-05 12:28:57,573.573 INFO    ] Checking for camera pi updates...
[2026-06-05 12:28:57,607.607 INFO    ] 200
[2026-06-05 12:28:57,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:28:57,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:28:57,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:28:57,699.699 INFO    ] No camera update needed
[2026-06-05 12:28:57,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:28:57,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:28:57,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:28:57,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:28:59,755.755 INFO    ] ================================================
[2026-06-05 12:28:59,771.771 INFO    ] Launching Daemon at Fri Jun  5 12:28:59 IST 2026
[2026-06-05 12:28:59,781.781 INFO    ] ================================================
[2026-06-05 12:29:00,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:29:00
[2026-06-05 12:29:00,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:29:01,251.251 INFO    ] Initializing speech engine...
[2026-06-05 12:29:01,256.256 INFO    ] 2026-06-05 12:29:01
[2026-06-05 12:29:01,653.653 INFO    ] 2026-06-05 12:29:01
[2026-06-05 12:29:01,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:29:01,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:29:01,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:29:02,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:29:02,119.119 INFO    ] time= 05/06/2026 12:29:02
[2026-06-05 12:29:02,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:29:02,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:29:02,274.274 INFO    ] No existing commands found in stream
[2026-06-05 12:29:07,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:29:07,287.287 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 12:29:11,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:29:11,277.277 INFO    ] Checking for system updates...
[2026-06-05 12:29:11,316.316 INFO    ] 200
[2026-06-05 12:29:11,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:29:11,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:29:11,374.374 INFO    ] No update needed
[2026-06-05 12:29:11,377.377 INFO    ] Checking for camera pi updates...
[2026-06-05 12:29:11,412.412 INFO    ] 200
[2026-06-05 12:29:11,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:29:11,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:29:11,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:29:11,510.510 INFO    ] No camera update needed
[2026-06-05 12:29:11,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:29:11,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:29:11,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:29:11,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:29:13,566.566 INFO    ] ================================================
[2026-06-05 12:29:13,581.581 INFO    ] Launching Daemon at Fri Jun  5 12:29:13 IST 2026
[2026-06-05 12:29:13,592.592 INFO    ] ================================================
[2026-06-05 12:29:14,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:29:14
[2026-06-05 12:29:14,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:29:15,053.053 INFO    ] Initializing speech engine...
[2026-06-05 12:29:15,061.061 INFO    ] 2026-06-05 12:29:15
[2026-06-05 12:29:15,330.330 INFO    ] 2026-06-05 12:29:15
[2026-06-05 12:29:15,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:29:15,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:29:15,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:29:15,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:29:15,776.776 INFO    ] time= 05/06/2026 12:29:15
[2026-06-05 12:29:15,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:29:15,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:29:16,029.029 INFO    ] No existing commands found in stream
[2026-06-05 12:29:21,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:29:21,064.064 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 12:29:25,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:29:25,396.396 INFO    ] Checking for system updates...
[2026-06-05 12:29:25,432.432 INFO    ] 200
[2026-06-05 12:29:25,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:29:25,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:29:25,490.490 INFO    ] No update needed
[2026-06-05 12:29:25,493.493 INFO    ] Checking for camera pi updates...
[2026-06-05 12:29:25,527.527 INFO    ] 200
[2026-06-05 12:29:25,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:29:25,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:29:25,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:29:25,616.616 INFO    ] No camera update needed
[2026-06-05 12:29:25,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:29:25,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:29:25,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:29:25,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:29:27,673.673 INFO    ] ================================================
[2026-06-05 12:29:27,688.688 INFO    ] Launching Daemon at Fri Jun  5 12:29:27 IST 2026
[2026-06-05 12:29:27,699.699 INFO    ] ================================================
[2026-06-05 12:29:28,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:29:28
[2026-06-05 12:29:28,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:29:29,162.162 INFO    ] Initializing speech engine...
[2026-06-05 12:29:29,168.168 INFO    ] 2026-06-05 12:29:29
[2026-06-05 12:29:29,431.431 INFO    ] 2026-06-05 12:29:29
[2026-06-05 12:29:29,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:29:29,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:29:29,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:29:29,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:29:29,894.894 INFO    ] time= 05/06/2026 12:29:29
[2026-06-05 12:29:29,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:29:29,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:29:30,041.041 INFO    ] No existing commands found in stream
[2026-06-05 12:29:35,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:29:35,069.069 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 12:29:36,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:29:36,857.857 INFO    ] Checking for system updates...
[2026-06-05 12:29:36,893.893 INFO    ] 200
[2026-06-05 12:29:36,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:29:36,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:29:36,951.951 INFO    ] No update needed
[2026-06-05 12:29:36,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 12:29:36,990.990 INFO    ] 200
[2026-06-05 12:29:36,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:29:37,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:29:37,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:29:37,083.083 INFO    ] No camera update needed
[2026-06-05 12:29:37,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:29:37,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:29:37,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:29:37,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:29:39,139.139 INFO    ] ================================================
[2026-06-05 12:29:39,154.154 INFO    ] Launching Daemon at Fri Jun  5 12:29:39 IST 2026
[2026-06-05 12:29:39,165.165 INFO    ] ================================================
[2026-06-05 12:29:39,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:29:39
[2026-06-05 12:29:40,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:29:40,591.591 INFO    ] Initializing speech engine...
[2026-06-05 12:29:40,600.600 INFO    ] 2026-06-05 12:29:40
[2026-06-05 12:29:40,891.891 INFO    ] 2026-06-05 12:29:40
[2026-06-05 12:29:40,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:29:41,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:29:41,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:29:41,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:29:41,306.306 INFO    ] time= 05/06/2026 12:29:41
[2026-06-05 12:29:41,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:29:41,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:29:41,482.482 INFO    ] No existing commands found in stream
[2026-06-05 12:29:46,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:29:46,509.509 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 12:29:48,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:29:48,929.929 INFO    ] Checking for system updates...
[2026-06-05 12:29:48,966.966 INFO    ] 200
[2026-06-05 12:29:48,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:29:49,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:29:49,029.029 INFO    ] No update needed
[2026-06-05 12:29:49,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 12:29:49,065.065 INFO    ] 200
[2026-06-05 12:29:49,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:29:49,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:29:49,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:29:49,166.166 INFO    ] No camera update needed
[2026-06-05 12:29:49,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:29:49,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:29:49,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:29:49,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:29:51,222.222 INFO    ] ================================================
[2026-06-05 12:29:51,237.237 INFO    ] Launching Daemon at Fri Jun  5 12:29:51 IST 2026
[2026-06-05 12:29:51,247.247 INFO    ] ================================================
[2026-06-05 12:29:51,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:29:51
[2026-06-05 12:29:52,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:29:52,651.651 INFO    ] Initializing speech engine...
[2026-06-05 12:29:52,666.666 INFO    ] 2026-06-05 12:29:52
[2026-06-05 12:29:52,937.937 INFO    ] 2026-06-05 12:29:52
[2026-06-05 12:29:52,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:29:53,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:29:53,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:29:53,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:29:53,435.435 INFO    ] time= 05/06/2026 12:29:53
[2026-06-05 12:29:53,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:29:53,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:29:53,664.664 INFO    ] No existing commands found in stream
[2026-06-05 12:29:58,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:29:58,682.682 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-05 12:30:02,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:30:02,237.237 INFO    ] Checking for system updates...
[2026-06-05 12:30:02,329.329 INFO    ] 200
[2026-06-05 12:30:02,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:30:02,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:30:02,418.418 INFO    ] No update needed
[2026-06-05 12:30:02,421.421 INFO    ] Checking for camera pi updates...
[2026-06-05 12:30:02,468.468 INFO    ] 200
[2026-06-05 12:30:02,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:30:02,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:30:02,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:30:02,714.714 INFO    ] No camera update needed
[2026-06-05 12:30:02,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:30:02,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:30:02,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:30:02,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:30:04,778.778 INFO    ] ================================================
[2026-06-05 12:30:04,794.794 INFO    ] Launching Daemon at Fri Jun  5 12:30:04 IST 2026
[2026-06-05 12:30:04,806.806 INFO    ] ================================================
[2026-06-05 12:30:05,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:30:05
[2026-06-05 12:30:06,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:30:06,263.263 INFO    ] Initializing speech engine...
[2026-06-05 12:30:06,272.272 INFO    ] 2026-06-05 12:30:06
[2026-06-05 12:30:06,567.567 INFO    ] 2026-06-05 12:30:06
[2026-06-05 12:30:06,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:30:06,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:30:06,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:30:06,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:30:06,986.986 INFO    ] time= 05/06/2026 12:30:06
[2026-06-05 12:30:06,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:30:07,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:30:07,188.188 INFO    ] No existing commands found in stream
[2026-06-05 12:30:12,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:30:12,211.211 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 12:30:15,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:30:15,572.572 INFO    ] Checking for system updates...
[2026-06-05 12:30:15,609.609 INFO    ] 200
[2026-06-05 12:30:15,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:30:15,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:30:15,666.666 INFO    ] No update needed
[2026-06-05 12:30:15,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 12:30:15,703.703 INFO    ] 200
[2026-06-05 12:30:15,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:30:15,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:30:15,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:30:15,802.802 INFO    ] No camera update needed
[2026-06-05 12:30:15,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:30:15,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:30:15,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:30:15,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:30:17,857.857 INFO    ] ================================================
[2026-06-05 12:30:17,873.873 INFO    ] Launching Daemon at Fri Jun  5 12:30:17 IST 2026
[2026-06-05 12:30:17,884.884 INFO    ] ================================================
[2026-06-05 12:30:18,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:30:18
[2026-06-05 12:30:19,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:30:19,320.320 INFO    ] Initializing speech engine...
[2026-06-05 12:30:19,330.330 INFO    ] 2026-06-05 12:30:19
[2026-06-05 12:30:19,577.577 INFO    ] 2026-06-05 12:30:19
[2026-06-05 12:30:19,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:30:19,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:30:19,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:30:20,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:30:20,081.081 INFO    ] time= 05/06/2026 12:30:20
[2026-06-05 12:30:20,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:30:20,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:30:20,283.283 INFO    ] No existing commands found in stream
[2026-06-05 12:30:25,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:30:25,298.298 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 12:30:28,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:30:28,388.388 INFO    ] Checking for system updates...
[2026-06-05 12:30:28,425.425 INFO    ] 200
[2026-06-05 12:30:28,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:30:28,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:30:28,491.491 INFO    ] No update needed
[2026-06-05 12:30:28,493.493 INFO    ] Checking for camera pi updates...
[2026-06-05 12:30:28,527.527 INFO    ] 200
[2026-06-05 12:30:28,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:30:28,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:30:28,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:30:28,719.719 INFO    ] No camera update needed
[2026-06-05 12:30:28,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:30:28,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:30:28,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:30:28,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:30:30,777.777 INFO    ] ================================================
[2026-06-05 12:30:30,792.792 INFO    ] Launching Daemon at Fri Jun  5 12:30:30 IST 2026
[2026-06-05 12:30:30,804.804 INFO    ] ================================================
[2026-06-05 12:30:31,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:30:31
[2026-06-05 12:30:32,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:30:32,367.367 INFO    ] Initializing speech engine...
[2026-06-05 12:30:32,391.391 INFO    ] 2026-06-05 12:30:32
[2026-06-05 12:30:32,665.665 INFO    ] 2026-06-05 12:30:32
[2026-06-05 12:30:32,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:30:32,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:30:32,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:30:33,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:30:33,078.078 INFO    ] time= 05/06/2026 12:30:33
[2026-06-05 12:30:33,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:30:33,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:30:33,242.242 INFO    ] No existing commands found in stream
[2026-06-05 12:30:38,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:30:38,270.270 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 12:30:41,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:30:41,532.532 INFO    ] Checking for system updates...
[2026-06-05 12:30:41,569.569 INFO    ] 200
[2026-06-05 12:30:41,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:30:41,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:30:41,627.627 INFO    ] No update needed
[2026-06-05 12:30:41,630.630 INFO    ] Checking for camera pi updates...
[2026-06-05 12:30:41,663.663 INFO    ] 200
[2026-06-05 12:30:41,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:30:41,716.716 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:30:41,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:30:41,773.773 INFO    ] No camera update needed
[2026-06-05 12:30:41,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:30:41,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:30:41,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:30:41,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:30:43,829.829 INFO    ] ================================================
[2026-06-05 12:30:43,845.845 INFO    ] Launching Daemon at Fri Jun  5 12:30:43 IST 2026
[2026-06-05 12:30:43,857.857 INFO    ] ================================================
[2026-06-05 12:30:44,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:30:44
[2026-06-05 12:30:45,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:30:45,494.494 INFO    ] Initializing speech engine...
[2026-06-05 12:30:45,507.507 INFO    ] 2026-06-05 12:30:45
[2026-06-05 12:30:45,818.818 INFO    ] 2026-06-05 12:30:45
[2026-06-05 12:30:45,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:30:46,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:30:46,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:30:46,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:30:46,262.262 INFO    ] time= 05/06/2026 12:30:46
[2026-06-05 12:30:46,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:30:46,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:30:46,479.479 INFO    ] No existing commands found in stream
[2026-06-05 12:30:51,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:30:51,501.501 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 12:30:52,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:30:52,595.595 INFO    ] Checking for system updates...
[2026-06-05 12:30:52,648.648 INFO    ] 200
[2026-06-05 12:30:52,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 12:30:52,654.654 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 12:30:52,657.657 INFO    ] Checking for camera pi updates...
[2026-06-05 12:30:52,706.706 INFO    ] 200
[2026-06-05 12:30:52,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 12:30:52,711.711 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 12:30:52,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:30:52,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:30:52,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:30:52,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:30:54,769.769 INFO    ] ================================================
[2026-06-05 12:30:54,786.786 INFO    ] Launching Daemon at Fri Jun  5 12:30:54 IST 2026
[2026-06-05 12:30:54,796.796 INFO    ] ================================================
[2026-06-05 12:30:55,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:30:55
[2026-06-05 12:30:55,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:30:56,239.239 INFO    ] Initializing speech engine...
[2026-06-05 12:30:56,245.245 INFO    ] 2026-06-05 12:30:56
[2026-06-05 12:30:56,545.545 INFO    ] 2026-06-05 12:30:56
[2026-06-05 12:30:56,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:30:56,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:30:56,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:30:56,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:30:56,900.900 INFO    ] time= 05/06/2026 12:30:56
[2026-06-05 12:30:56,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:30:56,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:30:56,985.985 INFO    ] No existing commands found in stream
[2026-06-05 12:31:01,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:31:02,002.002 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 12:31:06,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:31:06,287.287 INFO    ] Checking for system updates...
[2026-06-05 12:31:06,323.323 INFO    ] 200
[2026-06-05 12:31:06,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:06,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:31:06,381.381 INFO    ] No update needed
[2026-06-05 12:31:06,383.383 INFO    ] Checking for camera pi updates...
[2026-06-05 12:31:06,418.418 INFO    ] 200
[2026-06-05 12:31:06,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:06,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:31:06,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:31:06,537.537 INFO    ] No camera update needed
[2026-06-05 12:31:06,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:31:06,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:31:06,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:31:06,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:31:08,602.602 INFO    ] ================================================
[2026-06-05 12:31:08,618.618 INFO    ] Launching Daemon at Fri Jun  5 12:31:08 IST 2026
[2026-06-05 12:31:08,629.629 INFO    ] ================================================
[2026-06-05 12:31:09,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:31:09
[2026-06-05 12:31:09,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:31:10,097.097 INFO    ] Initializing speech engine...
[2026-06-05 12:31:10,121.121 INFO    ] 2026-06-05 12:31:10
[2026-06-05 12:31:10,400.400 INFO    ] 2026-06-05 12:31:10
[2026-06-05 12:31:10,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:31:10,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:31:10,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:31:10,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:31:10,821.821 INFO    ] time= 05/06/2026 12:31:10
[2026-06-05 12:31:10,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:31:10,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:31:10,910.910 INFO    ] No existing commands found in stream
[2026-06-05 12:31:15,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:31:15,926.926 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 12:31:16,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:31:16,502.502 INFO    ] Checking for system updates...
[2026-06-05 12:31:16,538.538 INFO    ] 200
[2026-06-05 12:31:16,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:16,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:31:16,597.597 INFO    ] No update needed
[2026-06-05 12:31:16,599.599 INFO    ] Checking for camera pi updates...
[2026-06-05 12:31:16,638.638 INFO    ] 200
[2026-06-05 12:31:16,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:16,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:31:16,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:31:16,736.736 INFO    ] No camera update needed
[2026-06-05 12:31:16,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:31:16,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:31:16,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:31:16,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:31:18,791.791 INFO    ] ================================================
[2026-06-05 12:31:18,806.806 INFO    ] Launching Daemon at Fri Jun  5 12:31:18 IST 2026
[2026-06-05 12:31:18,818.818 INFO    ] ================================================
[2026-06-05 12:31:19,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:31:19
[2026-06-05 12:31:19,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:31:20,241.241 INFO    ] Initializing speech engine...
[2026-06-05 12:31:20,247.247 INFO    ] 2026-06-05 12:31:20
[2026-06-05 12:31:20,542.542 INFO    ] 2026-06-05 12:31:20
[2026-06-05 12:31:20,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:31:20,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:31:20,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:31:20,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:31:20,962.962 INFO    ] time= 05/06/2026 12:31:20
[2026-06-05 12:31:20,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:31:20,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:31:21,049.049 INFO    ] No existing commands found in stream
[2026-06-05 12:31:26,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:31:26,065.065 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 12:31:27,797.797 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:31:27,799.799 INFO    ] Checking for system updates...
[2026-06-05 12:31:27,839.839 INFO    ] 200
[2026-06-05 12:31:27,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:27,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:31:27,898.898 INFO    ] No update needed
[2026-06-05 12:31:27,900.900 INFO    ] Checking for camera pi updates...
[2026-06-05 12:31:27,934.934 INFO    ] 200
[2026-06-05 12:31:27,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:27,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:31:28,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:31:28,034.034 INFO    ] No camera update needed
[2026-06-05 12:31:28,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:31:28,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:31:28,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:31:28,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:31:30,093.093 INFO    ] ================================================
[2026-06-05 12:31:30,109.109 INFO    ] Launching Daemon at Fri Jun  5 12:31:30 IST 2026
[2026-06-05 12:31:30,120.120 INFO    ] ================================================
[2026-06-05 12:31:30,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:31:30
[2026-06-05 12:31:31,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:31:31,558.558 INFO    ] Initializing speech engine...
[2026-06-05 12:31:31,567.567 INFO    ] 2026-06-05 12:31:31
[2026-06-05 12:31:31,821.821 INFO    ] 2026-06-05 12:31:31
[2026-06-05 12:31:31,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:31:37,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:31:37,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:31:37,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:31:37,385.385 INFO    ] time= 05/06/2026 12:31:37
[2026-06-05 12:31:37,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:31:37,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:31:37,440.440 INFO    ] No existing commands found in stream
[2026-06-05 12:31:42,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:31:42,452.452 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 12:31:45,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:31:45,464.464 INFO    ] Checking for system updates...
[2026-06-05 12:31:45,500.500 INFO    ] 200
[2026-06-05 12:31:45,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:45,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:31:45,559.559 INFO    ] No update needed
[2026-06-05 12:31:45,561.561 INFO    ] Checking for camera pi updates...
[2026-06-05 12:31:45,599.599 INFO    ] 200
[2026-06-05 12:31:45,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:45,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:31:45,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:31:45,698.698 INFO    ] No camera update needed
[2026-06-05 12:31:45,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:31:45,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:31:45,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:31:45,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:31:47,756.756 INFO    ] ================================================
[2026-06-05 12:31:47,772.772 INFO    ] Launching Daemon at Fri Jun  5 12:31:47 IST 2026
[2026-06-05 12:31:47,783.783 INFO    ] ================================================
[2026-06-05 12:31:48,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:31:48
[2026-06-05 12:31:48,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:31:49,217.217 INFO    ] Initializing speech engine...
[2026-06-05 12:31:49,233.233 INFO    ] 2026-06-05 12:31:49
[2026-06-05 12:31:49,519.519 INFO    ] 2026-06-05 12:31:49
[2026-06-05 12:31:49,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:31:49,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:31:49,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:31:50,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:31:50,011.011 INFO    ] time= 05/06/2026 12:31:50
[2026-06-05 12:31:50,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:31:50,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:31:50,216.216 INFO    ] No existing commands found in stream
[2026-06-05 12:31:55,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:31:55,230.230 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 12:31:58,582.582 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:31:58,585.585 INFO    ] Checking for system updates...
[2026-06-05 12:31:58,626.626 INFO    ] 200
[2026-06-05 12:31:58,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:58,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:31:58,686.686 INFO    ] No update needed
[2026-06-05 12:31:58,689.689 INFO    ] Checking for camera pi updates...
[2026-06-05 12:31:58,727.727 INFO    ] 200
[2026-06-05 12:31:58,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:31:58,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:31:58,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:31:58,835.835 INFO    ] No camera update needed
[2026-06-05 12:31:58,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:31:58,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:31:58,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:31:58,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:32:00,895.895 INFO    ] ================================================
[2026-06-05 12:32:00,911.911 INFO    ] Launching Daemon at Fri Jun  5 12:32:00 IST 2026
[2026-06-05 12:32:00,922.922 INFO    ] ================================================
[2026-06-05 12:32:01,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:32:01
[2026-06-05 12:32:02,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:32:02,689.689 INFO    ] Initializing speech engine...
[2026-06-05 12:32:02,698.698 INFO    ] 2026-06-05 12:32:02
[2026-06-05 12:32:03,091.091 INFO    ] 2026-06-05 12:32:03
[2026-06-05 12:32:03,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:32:03,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:32:03,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:32:03,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:32:03,514.514 INFO    ] time= 05/06/2026 12:32:03
[2026-06-05 12:32:03,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:32:03,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:32:03,714.714 INFO    ] No existing commands found in stream
[2026-06-05 12:32:08,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:32:08,733.733 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 12:32:11,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:32:11,374.374 INFO    ] Checking for system updates...
[2026-06-05 12:32:11,416.416 INFO    ] 200
[2026-06-05 12:32:11,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:32:11,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:32:11,483.483 INFO    ] No update needed
[2026-06-05 12:32:11,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 12:32:11,534.534 INFO    ] 200
[2026-06-05 12:32:11,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:32:11,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:32:11,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:32:11,652.652 INFO    ] No camera update needed
[2026-06-05 12:32:11,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:32:11,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:32:11,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:32:11,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:32:13,715.715 INFO    ] ================================================
[2026-06-05 12:32:13,730.730 INFO    ] Launching Daemon at Fri Jun  5 12:32:13 IST 2026
[2026-06-05 12:32:13,742.742 INFO    ] ================================================
[2026-06-05 12:32:14,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:32:14
[2026-06-05 12:32:15,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:32:15,356.356 INFO    ] Initializing speech engine...
[2026-06-05 12:32:15,368.368 INFO    ] 2026-06-05 12:32:15
[2026-06-05 12:32:15,644.644 INFO    ] 2026-06-05 12:32:15
[2026-06-05 12:32:15,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:32:15,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:32:15,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:32:16,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:32:16,185.185 INFO    ] time= 05/06/2026 12:32:16
[2026-06-05 12:32:16,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:32:16,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:32:16,342.342 INFO    ] No existing commands found in stream
[2026-06-05 12:32:21,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:32:21,366.366 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 12:32:22,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:32:22,952.952 INFO    ] Checking for system updates...
[2026-06-05 12:32:22,988.988 INFO    ] 200
[2026-06-05 12:32:22,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:32:23,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:32:23,047.047 INFO    ] No update needed
[2026-06-05 12:32:23,049.049 INFO    ] Checking for camera pi updates...
[2026-06-05 12:32:23,083.083 INFO    ] 200
[2026-06-05 12:32:23,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:32:23,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:32:23,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:32:23,177.177 INFO    ] No camera update needed
[2026-06-05 12:32:23,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:32:23,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:32:23,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:32:23,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:32:25,235.235 INFO    ] ================================================
[2026-06-05 12:32:25,250.250 INFO    ] Launching Daemon at Fri Jun  5 12:32:25 IST 2026
[2026-06-05 12:32:25,261.261 INFO    ] ================================================
[2026-06-05 12:32:25,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:32:25
[2026-06-05 12:32:26,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:32:26,708.708 INFO    ] Initializing speech engine...
[2026-06-05 12:32:26,722.722 INFO    ] 2026-06-05 12:32:26
[2026-06-05 12:32:27,005.005 INFO    ] 2026-06-05 12:32:26
[2026-06-05 12:32:27,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:32:27,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:32:27,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:32:27,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:32:27,422.422 INFO    ] time= 05/06/2026 12:32:27
[2026-06-05 12:32:27,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:32:27,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:32:27,506.506 INFO    ] No existing commands found in stream
[2026-06-05 12:32:32,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:32:32,521.521 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 12:32:36,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:32:36,106.106 INFO    ] Checking for system updates...
[2026-06-05 12:32:36,147.147 INFO    ] 200
[2026-06-05 12:32:36,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:32:36,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:32:36,213.213 INFO    ] No update needed
[2026-06-05 12:32:36,216.216 INFO    ] Checking for camera pi updates...
[2026-06-05 12:32:36,255.255 INFO    ] 200
[2026-06-05 12:32:36,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:32:36,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:32:36,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:32:36,338.338 INFO    ] No camera update needed
[2026-06-05 12:32:36,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:32:36,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:32:36,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:32:36,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:32:38,398.398 INFO    ] ================================================
[2026-06-05 12:32:38,414.414 INFO    ] Launching Daemon at Fri Jun  5 12:32:38 IST 2026
[2026-06-05 12:32:38,425.425 INFO    ] ================================================
[2026-06-05 12:32:39,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:32:39
[2026-06-05 12:32:39,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:32:40,030.030 INFO    ] Initializing speech engine...
[2026-06-05 12:32:40,041.041 INFO    ] 2026-06-05 12:32:40
[2026-06-05 12:32:40,315.315 INFO    ] 2026-06-05 12:32:40
[2026-06-05 12:32:40,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:32:40,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:32:40,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:32:40,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:32:40,828.828 INFO    ] time= 05/06/2026 12:32:40
[2026-06-05 12:32:40,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:32:40,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:32:41,028.028 INFO    ] No existing commands found in stream
[2026-06-05 12:32:46,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:32:46,048.048 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 12:32:49,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:32:49,933.933 INFO    ] Checking for system updates...
[2026-06-05 12:32:49,969.969 INFO    ] 200
[2026-06-05 12:32:49,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:32:50,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:32:50,033.033 INFO    ] No update needed
[2026-06-05 12:32:50,036.036 INFO    ] Checking for camera pi updates...
[2026-06-05 12:32:50,070.070 INFO    ] 200
[2026-06-05 12:32:50,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:32:50,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:32:50,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:32:50,162.162 INFO    ] No camera update needed
[2026-06-05 12:32:50,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:32:50,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:32:50,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:32:50,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:32:52,218.218 INFO    ] ================================================
[2026-06-05 12:32:52,233.233 INFO    ] Launching Daemon at Fri Jun  5 12:32:52 IST 2026
[2026-06-05 12:32:52,244.244 INFO    ] ================================================
[2026-06-05 12:32:52,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:32:52
[2026-06-05 12:32:53,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:32:53,848.848 INFO    ] Initializing speech engine...
[2026-06-05 12:32:53,863.863 INFO    ] 2026-06-05 12:32:53
[2026-06-05 12:32:54,141.141 INFO    ] 2026-06-05 12:32:54
[2026-06-05 12:32:54,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:32:54,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:32:54,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:32:54,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:32:54,677.677 INFO    ] time= 05/06/2026 12:32:54
[2026-06-05 12:32:54,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:32:54,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:32:54,823.823 INFO    ] No existing commands found in stream
[2026-06-05 12:32:59,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:32:59,848.848 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 12:33:02,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:33:02,637.637 INFO    ] Checking for system updates...
[2026-06-05 12:33:02,688.688 INFO    ] 200
[2026-06-05 12:33:02,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:02,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:33:02,781.781 INFO    ] No update needed
[2026-06-05 12:33:02,791.791 INFO    ] Checking for camera pi updates...
[2026-06-05 12:33:02,846.846 INFO    ] 200
[2026-06-05 12:33:02,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:02,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:33:02,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:33:02,972.972 INFO    ] No camera update needed
[2026-06-05 12:33:02,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:33:02,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:33:02,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:33:02,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:33:05,044.044 INFO    ] ================================================
[2026-06-05 12:33:05,059.059 INFO    ] Launching Daemon at Fri Jun  5 12:33:05 IST 2026
[2026-06-05 12:33:05,071.071 INFO    ] ================================================
[2026-06-05 12:33:05,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:33:05
[2026-06-05 12:33:06,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:33:06,606.606 INFO    ] Initializing speech engine...
[2026-06-05 12:33:06,624.624 INFO    ] 2026-06-05 12:33:06
[2026-06-05 12:33:06,930.930 INFO    ] 2026-06-05 12:33:06
[2026-06-05 12:33:06,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:33:07,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:33:07,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:33:07,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:33:07,317.317 INFO    ] time= 05/06/2026 12:33:07
[2026-06-05 12:33:07,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:33:07,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:33:07,443.443 INFO    ] No existing commands found in stream
[2026-06-05 12:33:12,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:33:12,461.461 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 12:33:15,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:33:15,051.051 INFO    ] Checking for system updates...
[2026-06-05 12:33:15,087.087 INFO    ] 200
[2026-06-05 12:33:15,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:15,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:33:15,145.145 INFO    ] No update needed
[2026-06-05 12:33:15,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 12:33:15,182.182 INFO    ] 200
[2026-06-05 12:33:15,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:15,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:33:15,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:33:15,306.306 INFO    ] No camera update needed
[2026-06-05 12:33:15,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:33:15,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:33:15,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:33:15,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:33:17,360.360 INFO    ] ================================================
[2026-06-05 12:33:17,376.376 INFO    ] Launching Daemon at Fri Jun  5 12:33:17 IST 2026
[2026-06-05 12:33:17,387.387 INFO    ] ================================================
[2026-06-05 12:33:18,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:33:18
[2026-06-05 12:33:18,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:33:19,017.017 INFO    ] Initializing speech engine...
[2026-06-05 12:33:19,029.029 INFO    ] 2026-06-05 12:33:19
[2026-06-05 12:33:19,320.320 INFO    ] 2026-06-05 12:33:19
[2026-06-05 12:33:19,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:33:19,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:33:19,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:33:19,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:33:19,860.860 INFO    ] time= 05/06/2026 12:33:19
[2026-06-05 12:33:19,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:33:19,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:33:20,022.022 INFO    ] No existing commands found in stream
[2026-06-05 12:33:25,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:33:25,061.061 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 12:33:27,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:33:28,002.002 INFO    ] Checking for system updates...
[2026-06-05 12:33:28,038.038 INFO    ] 200
[2026-06-05 12:33:28,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:28,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:33:28,101.101 INFO    ] No update needed
[2026-06-05 12:33:28,103.103 INFO    ] Checking for camera pi updates...
[2026-06-05 12:33:28,141.141 INFO    ] 200
[2026-06-05 12:33:28,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:28,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:33:28,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:33:28,236.236 INFO    ] No camera update needed
[2026-06-05 12:33:28,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:33:28,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:33:28,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:33:28,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:33:30,292.292 INFO    ] ================================================
[2026-06-05 12:33:30,308.308 INFO    ] Launching Daemon at Fri Jun  5 12:33:30 IST 2026
[2026-06-05 12:33:30,320.320 INFO    ] ================================================
[2026-06-05 12:33:30,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:33:30
[2026-06-05 12:33:31,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:33:31,756.756 INFO    ] Initializing speech engine...
[2026-06-05 12:33:31,764.764 INFO    ] 2026-06-05 12:33:31
[2026-06-05 12:33:32,084.084 INFO    ] 2026-06-05 12:33:32
[2026-06-05 12:33:32,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:33:32,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:33:32,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:33:32,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:33:32,490.490 INFO    ] time= 05/06/2026 12:33:32
[2026-06-05 12:33:32,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:33:32,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:33:32,629.629 INFO    ] No existing commands found in stream
[2026-06-05 12:33:37,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:33:37,646.646 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 12:33:40,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:33:40,916.916 INFO    ] Checking for system updates...
[2026-06-05 12:33:40,974.974 INFO    ] 200
[2026-06-05 12:33:40,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:41,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:33:41,039.039 INFO    ] No update needed
[2026-06-05 12:33:41,041.041 INFO    ] Checking for camera pi updates...
[2026-06-05 12:33:41,079.079 INFO    ] 200
[2026-06-05 12:33:41,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:41,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:33:41,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:33:41,175.175 INFO    ] No camera update needed
[2026-06-05 12:33:41,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:33:41,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:33:41,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:33:41,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:33:43,230.230 INFO    ] ================================================
[2026-06-05 12:33:43,246.246 INFO    ] Launching Daemon at Fri Jun  5 12:33:43 IST 2026
[2026-06-05 12:33:43,258.258 INFO    ] ================================================
[2026-06-05 12:33:43,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:33:43
[2026-06-05 12:33:44,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:33:44,828.828 INFO    ] Initializing speech engine...
[2026-06-05 12:33:44,834.834 INFO    ] 2026-06-05 12:33:44
[2026-06-05 12:33:45,122.122 INFO    ] 2026-06-05 12:33:45
[2026-06-05 12:33:45,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:33:45,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:33:45,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:33:45,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:33:45,655.655 INFO    ] time= 05/06/2026 12:33:45
[2026-06-05 12:33:45,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:33:45,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:33:45,807.807 INFO    ] No existing commands found in stream
[2026-06-05 12:33:50,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:33:50,826.826 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 12:33:54,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:33:54,851.851 INFO    ] Checking for system updates...
[2026-06-05 12:33:54,888.888 INFO    ] 200
[2026-06-05 12:33:54,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:54,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:33:54,950.950 INFO    ] No update needed
[2026-06-05 12:33:54,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 12:33:54,992.992 INFO    ] 200
[2026-06-05 12:33:54,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:33:55,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:33:55,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:33:55,095.095 INFO    ] No camera update needed
[2026-06-05 12:33:55,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:33:55,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:33:55,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:33:55,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:33:57,154.154 INFO    ] ================================================
[2026-06-05 12:33:57,170.170 INFO    ] Launching Daemon at Fri Jun  5 12:33:57 IST 2026
[2026-06-05 12:33:57,181.181 INFO    ] ================================================
[2026-06-05 12:33:57,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:33:57
[2026-06-05 12:33:58,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:33:58,785.785 INFO    ] Initializing speech engine...
[2026-06-05 12:33:58,795.795 INFO    ] 2026-06-05 12:33:58
[2026-06-05 12:33:59,103.103 INFO    ] 2026-06-05 12:33:59
[2026-06-05 12:33:59,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:33:59,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:33:59,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:33:59,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:33:59,613.613 INFO    ] time= 05/06/2026 12:33:59
[2026-06-05 12:33:59,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:33:59,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:33:59,770.770 INFO    ] No existing commands found in stream
[2026-06-05 12:34:04,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:34:04,798.798 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 12:34:07,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:34:07,730.730 INFO    ] Checking for system updates...
[2026-06-05 12:34:07,769.769 INFO    ] 200
[2026-06-05 12:34:07,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:34:07,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:34:07,830.830 INFO    ] No update needed
[2026-06-05 12:34:07,832.832 INFO    ] Checking for camera pi updates...
[2026-06-05 12:34:07,867.867 INFO    ] 200
[2026-06-05 12:34:07,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:34:07,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:34:07,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:34:07,962.962 INFO    ] No camera update needed
[2026-06-05 12:34:07,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:34:07,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:34:07,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:34:07,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:34:10,022.022 INFO    ] ================================================
[2026-06-05 12:34:10,038.038 INFO    ] Launching Daemon at Fri Jun  5 12:34:10 IST 2026
[2026-06-05 12:34:10,049.049 INFO    ] ================================================
[2026-06-05 12:34:10,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:34:10
[2026-06-05 12:34:11,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:34:11,501.501 INFO    ] Initializing speech engine...
[2026-06-05 12:34:11,509.509 INFO    ] 2026-06-05 12:34:11
[2026-06-05 12:34:11,768.768 INFO    ] 2026-06-05 12:34:11
[2026-06-05 12:34:11,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:34:12,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:34:12,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:34:12,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:34:12,234.234 INFO    ] time= 05/06/2026 12:34:12
[2026-06-05 12:34:12,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:34:12,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:34:12,446.446 INFO    ] No existing commands found in stream
[2026-06-05 12:34:17,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:34:17,479.479 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 12:34:20,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:34:20,875.875 INFO    ] Checking for system updates...
[2026-06-05 12:34:20,916.916 INFO    ] 200
[2026-06-05 12:34:20,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:34:20,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:34:20,982.982 INFO    ] No update needed
[2026-06-05 12:34:20,985.985 INFO    ] Checking for camera pi updates...
[2026-06-05 12:34:21,023.023 INFO    ] 200
[2026-06-05 12:34:21,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:34:21,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:34:21,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:34:21,127.127 INFO    ] No camera update needed
[2026-06-05 12:34:21,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:34:21,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:34:21,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:34:21,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:34:23,188.188 INFO    ] ================================================
[2026-06-05 12:34:23,204.204 INFO    ] Launching Daemon at Fri Jun  5 12:34:23 IST 2026
[2026-06-05 12:34:23,215.215 INFO    ] ================================================
[2026-06-05 12:34:23,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:34:23
[2026-06-05 12:34:24,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:34:24,630.630 INFO    ] Initializing speech engine...
[2026-06-05 12:34:24,646.646 INFO    ] 2026-06-05 12:34:24
[2026-06-05 12:34:24,928.928 INFO    ] 2026-06-05 12:34:24
[2026-06-05 12:34:24,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:34:25,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:34:25,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:34:25,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:34:25,342.342 INFO    ] time= 05/06/2026 12:34:25
[2026-06-05 12:34:25,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:34:25,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:34:25,425.425 INFO    ] No existing commands found in stream
[2026-06-05 12:34:30,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:34:30,441.441 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 12:34:36,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:34:36,376.376 INFO    ] Checking for system updates...
[2026-06-05 12:34:36,412.412 INFO    ] 200
[2026-06-05 12:34:36,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:34:36,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:34:36,470.470 INFO    ] No update needed
[2026-06-05 12:34:36,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 12:34:36,507.507 INFO    ] 200
[2026-06-05 12:34:36,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:34:36,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:34:36,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:34:36,703.703 INFO    ] No camera update needed
[2026-06-05 12:34:36,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:34:36,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:34:36,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:34:36,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:34:38,758.758 INFO    ] ================================================
[2026-06-05 12:34:38,773.773 INFO    ] Launching Daemon at Fri Jun  5 12:34:38 IST 2026
[2026-06-05 12:34:38,785.785 INFO    ] ================================================
[2026-06-05 12:34:39,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:34:39
[2026-06-05 12:34:39,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:34:40,209.209 INFO    ] Initializing speech engine...
[2026-06-05 12:34:40,224.224 INFO    ] 2026-06-05 12:34:40
[2026-06-05 12:34:40,494.494 INFO    ] 2026-06-05 12:34:40
[2026-06-05 12:34:40,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:34:40,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:34:40,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:34:40,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:34:40,911.911 INFO    ] time= 05/06/2026 12:34:40
[2026-06-05 12:34:40,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:34:40,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:34:41,060.060 INFO    ] No existing commands found in stream
[2026-06-05 12:34:46,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:34:46,088.088 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 12:34:49,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:34:49,833.833 INFO    ] Checking for system updates...
[2026-06-05 12:34:49,870.870 INFO    ] 200
[2026-06-05 12:34:49,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:34:49,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:34:49,928.928 INFO    ] No update needed
[2026-06-05 12:34:49,930.930 INFO    ] Checking for camera pi updates...
[2026-06-05 12:34:49,968.968 INFO    ] 200
[2026-06-05 12:34:49,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:34:50,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:34:50,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:34:50,063.063 INFO    ] No camera update needed
[2026-06-05 12:34:50,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:34:50,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:34:50,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:34:50,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:34:52,118.118 INFO    ] ================================================
[2026-06-05 12:34:52,134.134 INFO    ] Launching Daemon at Fri Jun  5 12:34:52 IST 2026
[2026-06-05 12:34:52,145.145 INFO    ] ================================================
[2026-06-05 12:34:52,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:34:52
[2026-06-05 12:34:53,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:34:53,601.601 INFO    ] Initializing speech engine...
[2026-06-05 12:34:53,611.611 INFO    ] 2026-06-05 12:34:53
[2026-06-05 12:34:53,878.878 INFO    ] 2026-06-05 12:34:53
[2026-06-05 12:34:53,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:34:54,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:34:54,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:34:54,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:34:54,253.253 INFO    ] time= 05/06/2026 12:34:54
[2026-06-05 12:34:54,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:34:54,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:34:54,385.385 INFO    ] No existing commands found in stream
[2026-06-05 12:34:59,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:34:59,423.423 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 12:35:00,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:35:00,721.721 INFO    ] Checking for system updates...
[2026-06-05 12:35:00,757.757 INFO    ] 200
[2026-06-05 12:35:00,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:00,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:35:00,819.819 INFO    ] No update needed
[2026-06-05 12:35:00,822.822 INFO    ] Checking for camera pi updates...
[2026-06-05 12:35:00,856.856 INFO    ] 200
[2026-06-05 12:35:00,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:00,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:35:00,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:35:00,937.937 INFO    ] No camera update needed
[2026-06-05 12:35:00,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:35:00,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:35:00,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:35:00,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:35:03,015.015 INFO    ] ================================================
[2026-06-05 12:35:03,035.035 INFO    ] Launching Daemon at Fri Jun  5 12:35:03 IST 2026
[2026-06-05 12:35:03,048.048 INFO    ] ================================================
[2026-06-05 12:35:03,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:35:03
[2026-06-05 12:35:04,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:35:04,536.536 INFO    ] Initializing speech engine...
[2026-06-05 12:35:04,560.560 INFO    ] 2026-06-05 12:35:04
[2026-06-05 12:35:04,816.816 INFO    ] 2026-06-05 12:35:04
[2026-06-05 12:35:04,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:35:06,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:35:06,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:35:06,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:35:06,277.277 INFO    ] time= 05/06/2026 12:35:06
[2026-06-05 12:35:06,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:35:06,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:35:06,347.347 INFO    ] No existing commands found in stream
[2026-06-05 12:35:11,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:35:11,360.360 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 12:35:13,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:35:13,073.073 INFO    ] Checking for system updates...
[2026-06-05 12:35:13,110.110 INFO    ] 200
[2026-06-05 12:35:13,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:13,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:35:13,171.171 INFO    ] No update needed
[2026-06-05 12:35:13,173.173 INFO    ] Checking for camera pi updates...
[2026-06-05 12:35:13,207.207 INFO    ] 200
[2026-06-05 12:35:13,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:13,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:35:13,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:35:13,308.308 INFO    ] No camera update needed
[2026-06-05 12:35:13,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:35:13,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:35:13,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:35:13,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:35:15,366.366 INFO    ] ================================================
[2026-06-05 12:35:15,383.383 INFO    ] Launching Daemon at Fri Jun  5 12:35:15 IST 2026
[2026-06-05 12:35:15,394.394 INFO    ] ================================================
[2026-06-05 12:35:16,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:35:16
[2026-06-05 12:35:16,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:35:17,084.084 INFO    ] Initializing speech engine...
[2026-06-05 12:35:17,096.096 INFO    ] 2026-06-05 12:35:17
[2026-06-05 12:35:17,413.413 INFO    ] 2026-06-05 12:35:17
[2026-06-05 12:35:17,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:35:17,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:35:17,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:35:17,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:35:17,919.919 INFO    ] time= 05/06/2026 12:35:17
[2026-06-05 12:35:17,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:35:17,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:35:18,074.074 INFO    ] No existing commands found in stream
[2026-06-05 12:35:23,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:35:23,093.093 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 12:35:25,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:35:25,211.211 INFO    ] Checking for system updates...
[2026-06-05 12:35:25,247.247 INFO    ] 200
[2026-06-05 12:35:25,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:25,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:35:25,306.306 INFO    ] No update needed
[2026-06-05 12:35:25,309.309 INFO    ] Checking for camera pi updates...
[2026-06-05 12:35:25,343.343 INFO    ] 200
[2026-06-05 12:35:25,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:25,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:35:25,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:35:25,439.439 INFO    ] No camera update needed
[2026-06-05 12:35:25,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:35:25,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:35:25,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:35:25,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:35:27,495.495 INFO    ] ================================================
[2026-06-05 12:35:27,511.511 INFO    ] Launching Daemon at Fri Jun  5 12:35:27 IST 2026
[2026-06-05 12:35:27,522.522 INFO    ] ================================================
[2026-06-05 12:35:28,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:35:28
[2026-06-05 12:35:28,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:35:28,928.928 INFO    ] Initializing speech engine...
[2026-06-05 12:35:28,950.950 INFO    ] 2026-06-05 12:35:28
[2026-06-05 12:35:29,207.207 INFO    ] 2026-06-05 12:35:29
[2026-06-05 12:35:29,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:35:29,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:35:29,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:35:29,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:35:29,697.697 INFO    ] time= 05/06/2026 12:35:29
[2026-06-05 12:35:29,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:35:29,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:35:29,907.907 INFO    ] No existing commands found in stream
[2026-06-05 12:35:34,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:35:34,944.944 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 12:35:38,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:35:38,573.573 INFO    ] Checking for system updates...
[2026-06-05 12:35:38,609.609 INFO    ] 200
[2026-06-05 12:35:38,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:38,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:35:38,669.669 INFO    ] No update needed
[2026-06-05 12:35:38,671.671 INFO    ] Checking for camera pi updates...
[2026-06-05 12:35:38,706.706 INFO    ] 200
[2026-06-05 12:35:38,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:38,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:35:38,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:35:38,796.796 INFO    ] No camera update needed
[2026-06-05 12:35:38,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:35:38,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:35:38,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:35:38,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:35:40,851.851 INFO    ] ================================================
[2026-06-05 12:35:40,867.867 INFO    ] Launching Daemon at Fri Jun  5 12:35:40 IST 2026
[2026-06-05 12:35:40,878.878 INFO    ] ================================================
[2026-06-05 12:35:41,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:35:41
[2026-06-05 12:35:42,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:35:42,409.409 INFO    ] Initializing speech engine...
[2026-06-05 12:35:42,418.418 INFO    ] 2026-06-05 12:35:42
[2026-06-05 12:35:42,664.664 INFO    ] 2026-06-05 12:35:42
[2026-06-05 12:35:42,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:35:42,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:35:42,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:35:43,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:35:43,207.207 INFO    ] time= 05/06/2026 12:35:43
[2026-06-05 12:35:43,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:35:43,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:35:43,407.407 INFO    ] No existing commands found in stream
[2026-06-05 12:35:48,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:35:48,430.430 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 12:35:49,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:35:49,820.820 INFO    ] Checking for system updates...
[2026-06-05 12:35:49,858.858 INFO    ] 200
[2026-06-05 12:35:49,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:49,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:35:49,918.918 INFO    ] No update needed
[2026-06-05 12:35:49,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 12:35:49,955.955 INFO    ] 200
[2026-06-05 12:35:49,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:35:49,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:35:50,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:35:50,051.051 INFO    ] No camera update needed
[2026-06-05 12:35:50,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:35:50,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:35:50,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:35:50,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:35:52,111.111 INFO    ] ================================================
[2026-06-05 12:35:52,126.126 INFO    ] Launching Daemon at Fri Jun  5 12:35:52 IST 2026
[2026-06-05 12:35:52,138.138 INFO    ] ================================================
[2026-06-05 12:35:52,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:35:52
[2026-06-05 12:35:53,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:35:53,685.685 INFO    ] Initializing speech engine...
[2026-06-05 12:35:53,691.691 INFO    ] 2026-06-05 12:35:53
[2026-06-05 12:35:53,953.953 INFO    ] 2026-06-05 12:35:53
[2026-06-05 12:35:53,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:35:54,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:35:54,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:35:54,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:35:54,482.482 INFO    ] time= 05/06/2026 12:35:54
[2026-06-05 12:35:54,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:35:54,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:35:54,672.672 INFO    ] No existing commands found in stream
[2026-06-05 12:35:59,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:35:59,706.706 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 12:36:01,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:36:01,050.050 INFO    ] Checking for system updates...
[2026-06-05 12:36:01,087.087 INFO    ] 200
[2026-06-05 12:36:01,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:01,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:36:01,145.145 INFO    ] No update needed
[2026-06-05 12:36:01,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 12:36:01,186.186 INFO    ] 200
[2026-06-05 12:36:01,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:01,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:36:01,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:36:01,281.281 INFO    ] No camera update needed
[2026-06-05 12:36:01,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:36:01,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:36:01,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:36:01,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:36:03,354.354 INFO    ] ================================================
[2026-06-05 12:36:03,369.369 INFO    ] Launching Daemon at Fri Jun  5 12:36:03 IST 2026
[2026-06-05 12:36:03,380.380 INFO    ] ================================================
[2026-06-05 12:36:03,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:36:03
[2026-06-05 12:36:04,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:36:04,901.901 INFO    ] Initializing speech engine...
[2026-06-05 12:36:04,910.910 INFO    ] 2026-06-05 12:36:04
[2026-06-05 12:36:05,157.157 INFO    ] 2026-06-05 12:36:05
[2026-06-05 12:36:05,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:36:06,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:36:06,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:36:06,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:36:06,293.293 INFO    ] time= 05/06/2026 12:36:06
[2026-06-05 12:36:06,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:36:06,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:36:06,952.952 INFO    ] No existing commands found in stream
[2026-06-05 12:36:11,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:36:11,968.968 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 12:36:15,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:36:15,445.445 INFO    ] Checking for system updates...
[2026-06-05 12:36:15,483.483 INFO    ] 200
[2026-06-05 12:36:15,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:15,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:36:15,544.544 INFO    ] No update needed
[2026-06-05 12:36:15,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 12:36:15,582.582 INFO    ] 200
[2026-06-05 12:36:15,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:15,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:36:15,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:36:15,684.684 INFO    ] No camera update needed
[2026-06-05 12:36:15,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:36:15,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:36:15,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:36:15,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:36:17,742.742 INFO    ] ================================================
[2026-06-05 12:36:17,757.757 INFO    ] Launching Daemon at Fri Jun  5 12:36:17 IST 2026
[2026-06-05 12:36:17,768.768 INFO    ] ================================================
[2026-06-05 12:36:18,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:36:18
[2026-06-05 12:36:18,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:36:19,264.264 INFO    ] Initializing speech engine...
[2026-06-05 12:36:19,278.278 INFO    ] 2026-06-05 12:36:19
[2026-06-05 12:36:19,563.563 INFO    ] 2026-06-05 12:36:19
[2026-06-05 12:36:19,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:36:19,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:36:19,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:36:20,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:36:20,093.093 INFO    ] time= 05/06/2026 12:36:20
[2026-06-05 12:36:20,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:36:20,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:36:20,240.240 INFO    ] No existing commands found in stream
[2026-06-05 12:36:25,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:36:25,263.263 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 12:36:26,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:36:26,988.988 INFO    ] Checking for system updates...
[2026-06-05 12:36:27,027.027 INFO    ] 200
[2026-06-05 12:36:27,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:27,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:36:27,085.085 INFO    ] No update needed
[2026-06-05 12:36:27,087.087 INFO    ] Checking for camera pi updates...
[2026-06-05 12:36:27,124.124 INFO    ] 200
[2026-06-05 12:36:27,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:27,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:36:27,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:36:27,219.219 INFO    ] No camera update needed
[2026-06-05 12:36:27,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:36:27,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:36:27,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:36:27,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:36:29,274.274 INFO    ] ================================================
[2026-06-05 12:36:29,289.289 INFO    ] Launching Daemon at Fri Jun  5 12:36:29 IST 2026
[2026-06-05 12:36:29,300.300 INFO    ] ================================================
[2026-06-05 12:36:29,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:36:29
[2026-06-05 12:36:30,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:36:30,786.786 INFO    ] Initializing speech engine...
[2026-06-05 12:36:30,798.798 INFO    ] 2026-06-05 12:36:30
[2026-06-05 12:36:31,065.065 INFO    ] 2026-06-05 12:36:31
[2026-06-05 12:36:31,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:36:31,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:36:31,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:36:31,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:36:31,536.536 INFO    ] time= 05/06/2026 12:36:31
[2026-06-05 12:36:31,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:36:31,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:36:31,680.680 INFO    ] No existing commands found in stream
[2026-06-05 12:36:36,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:36:36,696.696 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 12:36:38,948.948 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:36:38,951.951 INFO    ] Checking for system updates...
[2026-06-05 12:36:38,987.987 INFO    ] 200
[2026-06-05 12:36:38,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:39,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:36:39,053.053 INFO    ] No update needed
[2026-06-05 12:36:39,056.056 INFO    ] Checking for camera pi updates...
[2026-06-05 12:36:39,090.090 INFO    ] 200
[2026-06-05 12:36:39,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:39,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:36:39,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:36:39,288.288 INFO    ] No camera update needed
[2026-06-05 12:36:39,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:36:39,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:36:39,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:36:39,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:36:41,347.347 INFO    ] ================================================
[2026-06-05 12:36:41,362.362 INFO    ] Launching Daemon at Fri Jun  5 12:36:41 IST 2026
[2026-06-05 12:36:41,373.373 INFO    ] ================================================
[2026-06-05 12:36:41,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:36:41
[2026-06-05 12:36:42,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:36:42,774.774 INFO    ] Initializing speech engine...
[2026-06-05 12:36:42,789.789 INFO    ] 2026-06-05 12:36:42
[2026-06-05 12:36:43,051.051 INFO    ] 2026-06-05 12:36:43
[2026-06-05 12:36:43,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:36:43,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:36:43,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:36:43,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:36:43,418.418 INFO    ] time= 05/06/2026 12:36:43
[2026-06-05 12:36:43,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:36:43,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:36:43,600.600 INFO    ] No existing commands found in stream
[2026-06-05 12:36:48,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:36:48,627.627 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 12:36:51,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:36:51,256.256 INFO    ] Checking for system updates...
[2026-06-05 12:36:51,296.296 INFO    ] 200
[2026-06-05 12:36:51,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:51,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:36:51,358.358 INFO    ] No update needed
[2026-06-05 12:36:51,360.360 INFO    ] Checking for camera pi updates...
[2026-06-05 12:36:51,395.395 INFO    ] 200
[2026-06-05 12:36:51,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:36:51,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:36:51,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:36:51,521.521 INFO    ] No camera update needed
[2026-06-05 12:36:51,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:36:51,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:36:51,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:36:51,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:36:53,577.577 INFO    ] ================================================
[2026-06-05 12:36:53,592.592 INFO    ] Launching Daemon at Fri Jun  5 12:36:53 IST 2026
[2026-06-05 12:36:53,603.603 INFO    ] ================================================
[2026-06-05 12:36:54,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:36:54
[2026-06-05 12:36:54,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:36:55,062.062 INFO    ] Initializing speech engine...
[2026-06-05 12:36:55,071.071 INFO    ] 2026-06-05 12:36:55
[2026-06-05 12:36:55,333.333 INFO    ] 2026-06-05 12:36:55
[2026-06-05 12:36:55,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:36:55,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:36:55,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:36:55,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:36:55,940.940 INFO    ] time= 05/06/2026 12:36:55
[2026-06-05 12:36:55,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:36:55,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:36:56,098.098 INFO    ] No existing commands found in stream
[2026-06-05 12:37:01,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:37:01,131.131 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 12:37:06,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:37:06,173.173 INFO    ] Checking for system updates...
[2026-06-05 12:37:06,210.210 INFO    ] 200
[2026-06-05 12:37:06,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:06,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:37:06,274.274 INFO    ] No update needed
[2026-06-05 12:37:06,276.276 INFO    ] Checking for camera pi updates...
[2026-06-05 12:37:06,313.313 INFO    ] 200
[2026-06-05 12:37:06,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:06,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:37:06,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:37:06,414.414 INFO    ] No camera update needed
[2026-06-05 12:37:06,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:37:06,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:37:06,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:37:06,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:37:08,471.471 INFO    ] ================================================
[2026-06-05 12:37:08,487.487 INFO    ] Launching Daemon at Fri Jun  5 12:37:08 IST 2026
[2026-06-05 12:37:08,498.498 INFO    ] ================================================
[2026-06-05 12:37:09,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:37:09
[2026-06-05 12:37:09,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:37:09,999.999 INFO    ] Initializing speech engine...
[2026-06-05 12:37:10,022.022 INFO    ] 2026-06-05 12:37:10
[2026-06-05 12:37:10,278.278 INFO    ] 2026-06-05 12:37:10
[2026-06-05 12:37:10,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:37:10,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:37:10,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:37:10,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:37:10,667.667 INFO    ] time= 05/06/2026 12:37:10
[2026-06-05 12:37:10,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:37:10,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:37:10,869.869 INFO    ] No existing commands found in stream
[2026-06-05 12:37:15,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:37:15,897.897 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 12:37:17,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:37:17,376.376 INFO    ] Checking for system updates...
[2026-06-05 12:37:17,416.416 INFO    ] 200
[2026-06-05 12:37:17,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:17,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:37:17,473.473 INFO    ] No update needed
[2026-06-05 12:37:17,476.476 INFO    ] Checking for camera pi updates...
[2026-06-05 12:37:17,509.509 INFO    ] 200
[2026-06-05 12:37:17,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:17,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:37:17,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:37:17,600.600 INFO    ] No camera update needed
[2026-06-05 12:37:17,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:37:17,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:37:17,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:37:17,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:37:19,656.656 INFO    ] ================================================
[2026-06-05 12:37:19,672.672 INFO    ] Launching Daemon at Fri Jun  5 12:37:19 IST 2026
[2026-06-05 12:37:19,683.683 INFO    ] ================================================
[2026-06-05 12:37:20,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:37:20
[2026-06-05 12:37:20,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:37:21,112.112 INFO    ] Initializing speech engine...
[2026-06-05 12:37:21,118.118 INFO    ] 2026-06-05 12:37:21
[2026-06-05 12:37:21,378.378 INFO    ] 2026-06-05 12:37:21
[2026-06-05 12:37:21,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:37:21,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:37:21,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:37:21,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:37:21,835.835 INFO    ] time= 05/06/2026 12:37:21
[2026-06-05 12:37:21,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:37:21,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:37:21,948.948 INFO    ] No existing commands found in stream
[2026-06-05 12:37:26,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:37:26,960.960 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 12:37:31,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:37:31,246.246 INFO    ] Checking for system updates...
[2026-06-05 12:37:31,282.282 INFO    ] 200
[2026-06-05 12:37:31,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:31,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:37:31,340.340 INFO    ] No update needed
[2026-06-05 12:37:31,343.343 INFO    ] Checking for camera pi updates...
[2026-06-05 12:37:31,380.380 INFO    ] 200
[2026-06-05 12:37:31,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:31,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:37:31,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:37:31,476.476 INFO    ] No camera update needed
[2026-06-05 12:37:31,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:37:31,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:37:31,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:37:31,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:37:33,539.539 INFO    ] ================================================
[2026-06-05 12:37:33,554.554 INFO    ] Launching Daemon at Fri Jun  5 12:37:33 IST 2026
[2026-06-05 12:37:33,565.565 INFO    ] ================================================
[2026-06-05 12:37:34,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:37:34
[2026-06-05 12:37:34,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:37:35,000.000 INFO    ] Initializing speech engine...
[2026-06-05 12:37:35,010.010 INFO    ] 2026-06-05 12:37:35
[2026-06-05 12:37:35,269.269 INFO    ] 2026-06-05 12:37:35
[2026-06-05 12:37:35,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:37:36,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:37:36,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:37:36,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:37:36,493.493 INFO    ] time= 05/06/2026 12:37:36
[2026-06-05 12:37:36,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:37:36,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:37:36,652.652 INFO    ] No existing commands found in stream
[2026-06-05 12:37:41,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:37:41,669.669 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 12:37:42,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:37:42,239.239 INFO    ] Checking for system updates...
[2026-06-05 12:37:42,274.274 INFO    ] 200
[2026-06-05 12:37:42,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:42,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:37:42,337.337 INFO    ] No update needed
[2026-06-05 12:37:42,339.339 INFO    ] Checking for camera pi updates...
[2026-06-05 12:37:42,376.376 INFO    ] 200
[2026-06-05 12:37:42,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:42,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:37:42,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:37:42,469.469 INFO    ] No camera update needed
[2026-06-05 12:37:42,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:37:42,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:37:42,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:37:42,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:37:44,526.526 INFO    ] ================================================
[2026-06-05 12:37:44,542.542 INFO    ] Launching Daemon at Fri Jun  5 12:37:44 IST 2026
[2026-06-05 12:37:44,553.553 INFO    ] ================================================
[2026-06-05 12:37:45,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:37:45
[2026-06-05 12:37:45,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:37:46,140.140 INFO    ] Initializing speech engine...
[2026-06-05 12:37:46,149.149 INFO    ] 2026-06-05 12:37:46
[2026-06-05 12:37:46,418.418 INFO    ] 2026-06-05 12:37:46
[2026-06-05 12:37:46,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:37:46,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:37:46,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:37:46,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:37:46,969.969 INFO    ] time= 05/06/2026 12:37:46
[2026-06-05 12:37:46,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:37:46,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:37:47,108.108 INFO    ] No existing commands found in stream
[2026-06-05 12:37:52,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:37:52,134.134 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 12:37:53,840.840 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:37:53,843.843 INFO    ] Checking for system updates...
[2026-06-05 12:37:53,881.881 INFO    ] 200
[2026-06-05 12:37:53,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:53,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:37:53,946.946 INFO    ] No update needed
[2026-06-05 12:37:53,948.948 INFO    ] Checking for camera pi updates...
[2026-06-05 12:37:53,984.984 INFO    ] 200
[2026-06-05 12:37:53,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:37:54,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:37:54,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:37:54,082.082 INFO    ] No camera update needed
[2026-06-05 12:37:54,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:37:54,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:37:54,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:37:54,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:37:56,141.141 INFO    ] ================================================
[2026-06-05 12:37:56,157.157 INFO    ] Launching Daemon at Fri Jun  5 12:37:56 IST 2026
[2026-06-05 12:37:56,168.168 INFO    ] ================================================
[2026-06-05 12:37:56,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:37:56
[2026-06-05 12:37:57,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:37:57,645.645 INFO    ] Initializing speech engine...
[2026-06-05 12:37:57,654.654 INFO    ] 2026-06-05 12:37:57
[2026-06-05 12:37:57,913.913 INFO    ] 2026-06-05 12:37:57
[2026-06-05 12:37:57,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:37:58,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:37:58,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:37:58,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:37:58,459.459 INFO    ] time= 05/06/2026 12:37:58
[2026-06-05 12:37:58,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:37:58,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:37:58,614.614 INFO    ] No existing commands found in stream
[2026-06-05 12:38:03,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:38:03,630.630 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 12:38:05,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:38:05,012.012 INFO    ] Checking for system updates...
[2026-06-05 12:38:05,049.049 INFO    ] 200
[2026-06-05 12:38:05,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:05,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:38:05,112.112 INFO    ] No update needed
[2026-06-05 12:38:05,114.114 INFO    ] Checking for camera pi updates...
[2026-06-05 12:38:05,152.152 INFO    ] 200
[2026-06-05 12:38:05,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:05,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:38:05,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:38:05,232.232 INFO    ] No camera update needed
[2026-06-05 12:38:05,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:38:05,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:38:05,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:38:05,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:38:07,291.291 INFO    ] ================================================
[2026-06-05 12:38:07,307.307 INFO    ] Launching Daemon at Fri Jun  5 12:38:07 IST 2026
[2026-06-05 12:38:07,318.318 INFO    ] ================================================
[2026-06-05 12:38:07,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:38:07
[2026-06-05 12:38:08,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:38:08,750.750 INFO    ] Initializing speech engine...
[2026-06-05 12:38:08,767.767 INFO    ] 2026-06-05 12:38:08
[2026-06-05 12:38:09,024.024 INFO    ] 2026-06-05 12:38:09
[2026-06-05 12:38:09,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:38:09,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:38:09,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:38:09,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:38:09,802.802 INFO    ] time= 05/06/2026 12:38:09
[2026-06-05 12:38:09,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:38:09,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:38:10,001.001 INFO    ] No existing commands found in stream
[2026-06-05 12:38:15,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:38:15,022.022 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 12:38:18,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:38:18,267.267 INFO    ] Checking for system updates...
[2026-06-05 12:38:18,306.306 INFO    ] 200
[2026-06-05 12:38:18,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:18,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:38:18,363.363 INFO    ] No update needed
[2026-06-05 12:38:18,366.366 INFO    ] Checking for camera pi updates...
[2026-06-05 12:38:18,405.405 INFO    ] 200
[2026-06-05 12:38:18,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:18,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:38:18,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:38:18,520.520 INFO    ] No camera update needed
[2026-06-05 12:38:18,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:38:18,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:38:18,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:38:18,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:38:20,576.576 INFO    ] ================================================
[2026-06-05 12:38:20,592.592 INFO    ] Launching Daemon at Fri Jun  5 12:38:20 IST 2026
[2026-06-05 12:38:20,603.603 INFO    ] ================================================
[2026-06-05 12:38:21,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:38:21
[2026-06-05 12:38:21,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:38:22,192.192 INFO    ] Initializing speech engine...
[2026-06-05 12:38:22,206.206 INFO    ] 2026-06-05 12:38:22
[2026-06-05 12:38:22,483.483 INFO    ] 2026-06-05 12:38:22
[2026-06-05 12:38:22,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:38:22,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:38:22,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:38:22,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:38:22,937.937 INFO    ] time= 05/06/2026 12:38:22
[2026-06-05 12:38:23,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:38:23,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:38:23,159.159 INFO    ] No existing commands found in stream
[2026-06-05 12:38:28,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:38:28,187.187 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 12:38:29,074.074 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:38:29,077.077 INFO    ] Checking for system updates...
[2026-06-05 12:38:29,117.117 INFO    ] 200
[2026-06-05 12:38:29,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:29,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:38:29,182.182 INFO    ] No update needed
[2026-06-05 12:38:29,185.185 INFO    ] Checking for camera pi updates...
[2026-06-05 12:38:29,224.224 INFO    ] 200
[2026-06-05 12:38:29,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:29,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:38:29,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:38:29,324.324 INFO    ] No camera update needed
[2026-06-05 12:38:29,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:38:29,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:38:29,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:38:29,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:38:31,383.383 INFO    ] ================================================
[2026-06-05 12:38:31,400.400 INFO    ] Launching Daemon at Fri Jun  5 12:38:31 IST 2026
[2026-06-05 12:38:31,413.413 INFO    ] ================================================
[2026-06-05 12:38:32,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:38:32
[2026-06-05 12:38:32,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:38:32,898.898 INFO    ] Initializing speech engine...
[2026-06-05 12:38:32,910.910 INFO    ] 2026-06-05 12:38:32
[2026-06-05 12:38:33,174.174 INFO    ] 2026-06-05 12:38:33
[2026-06-05 12:38:33,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:38:33,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:38:33,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:38:33,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:38:33,629.629 INFO    ] time= 05/06/2026 12:38:33
[2026-06-05 12:38:33,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:38:33,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:38:33,885.885 INFO    ] No existing commands found in stream
[2026-06-05 12:38:38,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:38:38,917.917 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 12:38:41,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:38:41,319.319 INFO    ] Checking for system updates...
[2026-06-05 12:38:41,359.359 INFO    ] 200
[2026-06-05 12:38:41,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:41,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:38:41,426.426 INFO    ] No update needed
[2026-06-05 12:38:41,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 12:38:41,466.466 INFO    ] 200
[2026-06-05 12:38:41,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:41,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:38:41,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:38:41,663.663 INFO    ] No camera update needed
[2026-06-05 12:38:41,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:38:41,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:38:41,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:38:41,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:38:43,721.721 INFO    ] ================================================
[2026-06-05 12:38:43,737.737 INFO    ] Launching Daemon at Fri Jun  5 12:38:43 IST 2026
[2026-06-05 12:38:43,748.748 INFO    ] ================================================
[2026-06-05 12:38:44,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:38:44
[2026-06-05 12:38:44,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:38:45,147.147 INFO    ] Initializing speech engine...
[2026-06-05 12:38:45,155.155 INFO    ] 2026-06-05 12:38:45
[2026-06-05 12:38:45,440.440 INFO    ] 2026-06-05 12:38:45
[2026-06-05 12:38:45,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:38:45,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:38:45,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:38:45,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:38:45,924.924 INFO    ] time= 05/06/2026 12:38:45
[2026-06-05 12:38:45,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:38:46,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:38:46,469.469 INFO    ] No existing commands found in stream
[2026-06-05 12:38:51,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:38:51,491.491 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 12:38:52,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:38:52,939.939 INFO    ] Checking for system updates...
[2026-06-05 12:38:52,977.977 INFO    ] 200
[2026-06-05 12:38:52,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:53,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:38:53,039.039 INFO    ] No update needed
[2026-06-05 12:38:53,041.041 INFO    ] Checking for camera pi updates...
[2026-06-05 12:38:53,078.078 INFO    ] 200
[2026-06-05 12:38:53,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:38:53,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:38:53,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:38:53,178.178 INFO    ] No camera update needed
[2026-06-05 12:38:53,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:38:53,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:38:53,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:38:53,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:38:55,234.234 INFO    ] ================================================
[2026-06-05 12:38:55,250.250 INFO    ] Launching Daemon at Fri Jun  5 12:38:55 IST 2026
[2026-06-05 12:38:55,263.263 INFO    ] ================================================
[2026-06-05 12:38:55,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:38:55
[2026-06-05 12:38:56,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:38:56,667.667 INFO    ] Initializing speech engine...
[2026-06-05 12:38:56,681.681 INFO    ] 2026-06-05 12:38:56
[2026-06-05 12:38:56,949.949 INFO    ] 2026-06-05 12:38:56
[2026-06-05 12:38:56,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:38:57,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:38:57,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:38:57,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:38:57,395.395 INFO    ] time= 05/06/2026 12:38:57
[2026-06-05 12:38:57,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:38:57,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:38:57,550.550 INFO    ] No existing commands found in stream
[2026-06-05 12:39:02,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:39:02,568.568 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 12:39:06,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:39:06,274.274 INFO    ] Checking for system updates...
[2026-06-05 12:39:06,312.312 INFO    ] 200
[2026-06-05 12:39:06,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:39:06,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:39:06,375.375 INFO    ] No update needed
[2026-06-05 12:39:06,377.377 INFO    ] Checking for camera pi updates...
[2026-06-05 12:39:06,412.412 INFO    ] 200
[2026-06-05 12:39:06,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:39:06,456.456 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:39:06,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:39:06,506.506 INFO    ] No camera update needed
[2026-06-05 12:39:06,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:39:06,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:39:06,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:39:06,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:39:08,563.563 INFO    ] ================================================
[2026-06-05 12:39:08,579.579 INFO    ] Launching Daemon at Fri Jun  5 12:39:08 IST 2026
[2026-06-05 12:39:08,590.590 INFO    ] ================================================
[2026-06-05 12:39:09,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:39:09
[2026-06-05 12:39:09,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:39:10,070.070 INFO    ] Initializing speech engine...
[2026-06-05 12:39:10,078.078 INFO    ] 2026-06-05 12:39:10
[2026-06-05 12:39:10,339.339 INFO    ] 2026-06-05 12:39:10
[2026-06-05 12:39:10,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:39:10,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:39:10,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:39:10,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:39:10,822.822 INFO    ] time= 05/06/2026 12:39:10
[2026-06-05 12:39:10,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:39:10,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:39:11,274.274 INFO    ] No existing commands found in stream
[2026-06-05 12:39:16,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:39:16,300.300 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 12:39:20,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:39:20,576.576 INFO    ] Checking for system updates...
[2026-06-05 12:39:20,612.612 INFO    ] 200
[2026-06-05 12:39:20,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:39:20,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:39:20,675.675 INFO    ] No update needed
[2026-06-05 12:39:20,678.678 INFO    ] Checking for camera pi updates...
[2026-06-05 12:39:20,715.715 INFO    ] 200
[2026-06-05 12:39:20,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:39:20,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:39:20,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:39:20,810.810 INFO    ] No camera update needed
[2026-06-05 12:39:20,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:39:20,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:39:20,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:39:20,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:39:22,866.866 INFO    ] ================================================
[2026-06-05 12:39:22,882.882 INFO    ] Launching Daemon at Fri Jun  5 12:39:22 IST 2026
[2026-06-05 12:39:22,893.893 INFO    ] ================================================
[2026-06-05 12:39:23,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:39:23
[2026-06-05 12:39:24,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:39:24,361.361 INFO    ] Initializing speech engine...
[2026-06-05 12:39:24,371.371 INFO    ] 2026-06-05 12:39:24
[2026-06-05 12:39:24,620.620 INFO    ] 2026-06-05 12:39:24
[2026-06-05 12:39:24,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:39:24,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:39:24,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:39:25,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:39:25,085.085 INFO    ] time= 05/06/2026 12:39:25
[2026-06-05 12:39:25,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:39:25,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:39:25,312.312 INFO    ] No existing commands found in stream
[2026-06-05 12:39:30,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:39:30,340.340 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 12:39:33,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:39:33,994.994 INFO    ] Checking for system updates...
[2026-06-05 12:39:34,033.033 INFO    ] 200
[2026-06-05 12:39:34,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:39:34,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:39:34,097.097 INFO    ] No update needed
[2026-06-05 12:39:34,099.099 INFO    ] Checking for camera pi updates...
[2026-06-05 12:39:34,136.136 INFO    ] 200
[2026-06-05 12:39:34,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:39:34,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:39:34,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:39:34,234.234 INFO    ] No camera update needed
[2026-06-05 12:39:34,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:39:34,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:39:34,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:39:34,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:39:36,290.290 INFO    ] ================================================
[2026-06-05 12:39:36,306.306 INFO    ] Launching Daemon at Fri Jun  5 12:39:36 IST 2026
[2026-06-05 12:39:36,316.316 INFO    ] ================================================
[2026-06-05 12:39:36,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:39:36
[2026-06-05 12:39:37,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:39:37,754.754 INFO    ] Initializing speech engine...
[2026-06-05 12:39:37,764.764 INFO    ] 2026-06-05 12:39:37
[2026-06-05 12:39:38,056.056 INFO    ] 2026-06-05 12:39:38
[2026-06-05 12:39:38,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:39:38,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:39:38,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:39:38,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:39:38,468.468 INFO    ] time= 05/06/2026 12:39:38
[2026-06-05 12:39:38,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:39:38,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:39:38,639.639 INFO    ] No existing commands found in stream
[2026-06-05 12:39:43,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:39:43,667.667 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 12:39:47,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:39:47,774.774 INFO    ] Checking for system updates...
[2026-06-05 12:39:47,811.811 INFO    ] 200
[2026-06-05 12:39:47,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:39:47,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:39:47,874.874 INFO    ] No update needed
[2026-06-05 12:39:47,876.876 INFO    ] Checking for camera pi updates...
[2026-06-05 12:39:47,910.910 INFO    ] 200
[2026-06-05 12:39:47,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:39:47,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:39:47,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:39:47,990.990 INFO    ] No camera update needed
[2026-06-05 12:39:47,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:39:47,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:39:48,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:39:48,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:39:50,046.046 INFO    ] ================================================
[2026-06-05 12:39:50,062.062 INFO    ] Launching Daemon at Fri Jun  5 12:39:50 IST 2026
[2026-06-05 12:39:50,072.072 INFO    ] ================================================
[2026-06-05 12:39:50,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:39:50
[2026-06-05 12:39:51,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:39:51,610.610 INFO    ] Initializing speech engine...
[2026-06-05 12:39:51,625.625 INFO    ] 2026-06-05 12:39:51
[2026-06-05 12:39:51,915.915 INFO    ] 2026-06-05 12:39:51
[2026-06-05 12:39:52,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:39:52,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:39:52,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:39:52,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:39:52,460.460 INFO    ] time= 05/06/2026 12:39:52
[2026-06-05 12:39:52,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:39:52,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:39:52,633.633 INFO    ] No existing commands found in stream
[2026-06-05 12:39:57,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:39:57,656.656 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 12:40:01,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:40:01,379.379 INFO    ] Checking for system updates...
[2026-06-05 12:40:01,535.535 INFO    ] 200
[2026-06-05 12:40:01,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:01,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:40:01,839.839 INFO    ] No update needed
[2026-06-05 12:40:01,842.842 INFO    ] Checking for camera pi updates...
[2026-06-05 12:40:01,954.954 INFO    ] 200
[2026-06-05 12:40:01,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:02,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:40:02,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:40:02,199.199 INFO    ] No camera update needed
[2026-06-05 12:40:02,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:40:02,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:40:02,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:40:02,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:40:04,264.264 INFO    ] ================================================
[2026-06-05 12:40:04,280.280 INFO    ] Launching Daemon at Fri Jun  5 12:40:04 IST 2026
[2026-06-05 12:40:04,292.292 INFO    ] ================================================
[2026-06-05 12:40:04,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:40:04
[2026-06-05 12:40:05,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:40:05,737.737 INFO    ] Initializing speech engine...
[2026-06-05 12:40:05,746.746 INFO    ] 2026-06-05 12:40:05
[2026-06-05 12:40:06,053.053 INFO    ] 2026-06-05 12:40:06
[2026-06-05 12:40:06,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:40:06,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:40:06,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:40:06,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:40:06,433.433 INFO    ] time= 05/06/2026 12:40:06
[2026-06-05 12:40:06,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:40:06,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:40:06,573.573 INFO    ] No existing commands found in stream
[2026-06-05 12:40:11,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:40:11,599.599 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 12:40:13,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:40:13,256.256 INFO    ] Checking for system updates...
[2026-06-05 12:40:13,292.292 INFO    ] 200
[2026-06-05 12:40:13,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:13,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:40:13,358.358 INFO    ] No update needed
[2026-06-05 12:40:13,360.360 INFO    ] Checking for camera pi updates...
[2026-06-05 12:40:13,394.394 INFO    ] 200
[2026-06-05 12:40:13,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:13,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:40:13,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:40:13,512.512 INFO    ] No camera update needed
[2026-06-05 12:40:13,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:40:13,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:40:13,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:40:13,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:40:15,569.569 INFO    ] ================================================
[2026-06-05 12:40:15,585.585 INFO    ] Launching Daemon at Fri Jun  5 12:40:15 IST 2026
[2026-06-05 12:40:15,597.597 INFO    ] ================================================
[2026-06-05 12:40:16,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:40:16
[2026-06-05 12:40:16,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:40:17,017.017 INFO    ] Initializing speech engine...
[2026-06-05 12:40:17,030.030 INFO    ] 2026-06-05 12:40:17
[2026-06-05 12:40:17,300.300 INFO    ] 2026-06-05 12:40:17
[2026-06-05 12:40:17,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:40:17,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:40:17,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:40:17,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:40:17,786.786 INFO    ] time= 05/06/2026 12:40:17
[2026-06-05 12:40:17,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:40:17,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:40:18,049.049 INFO    ] No existing commands found in stream
[2026-06-05 12:40:23,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:40:23,087.087 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 12:40:25,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:40:25,350.350 INFO    ] Checking for system updates...
[2026-06-05 12:40:25,389.389 INFO    ] 200
[2026-06-05 12:40:25,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:25,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:40:25,447.447 INFO    ] No update needed
[2026-06-05 12:40:25,449.449 INFO    ] Checking for camera pi updates...
[2026-06-05 12:40:25,483.483 INFO    ] 200
[2026-06-05 12:40:25,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:25,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:40:25,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:40:25,585.585 INFO    ] No camera update needed
[2026-06-05 12:40:25,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:40:25,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:40:25,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:40:25,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:40:27,641.641 INFO    ] ================================================
[2026-06-05 12:40:27,657.657 INFO    ] Launching Daemon at Fri Jun  5 12:40:27 IST 2026
[2026-06-05 12:40:27,668.668 INFO    ] ================================================
[2026-06-05 12:40:28,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:40:28
[2026-06-05 12:40:28,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:40:29,138.138 INFO    ] Initializing speech engine...
[2026-06-05 12:40:29,144.144 INFO    ] 2026-06-05 12:40:29
[2026-06-05 12:40:29,404.404 INFO    ] 2026-06-05 12:40:29
[2026-06-05 12:40:29,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:40:29,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:40:29,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:40:29,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:40:29,900.900 INFO    ] time= 05/06/2026 12:40:29
[2026-06-05 12:40:29,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:40:29,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:40:30,126.126 INFO    ] No existing commands found in stream
[2026-06-05 12:40:35,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:40:35,160.160 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 12:40:37,573.573 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:40:37,575.575 INFO    ] Checking for system updates...
[2026-06-05 12:40:37,611.611 INFO    ] 200
[2026-06-05 12:40:37,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:37,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:40:37,671.671 INFO    ] No update needed
[2026-06-05 12:40:37,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 12:40:37,712.712 INFO    ] 200
[2026-06-05 12:40:37,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:37,763.763 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:40:37,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:40:37,819.819 INFO    ] No camera update needed
[2026-06-05 12:40:37,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:40:37,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:40:37,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:40:37,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:40:39,876.876 INFO    ] ================================================
[2026-06-05 12:40:39,891.891 INFO    ] Launching Daemon at Fri Jun  5 12:40:39 IST 2026
[2026-06-05 12:40:39,902.902 INFO    ] ================================================
[2026-06-05 12:40:40,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:40:40
[2026-06-05 12:40:41,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:40:41,361.361 INFO    ] Initializing speech engine...
[2026-06-05 12:40:41,370.370 INFO    ] 2026-06-05 12:40:41
[2026-06-05 12:40:41,617.617 INFO    ] 2026-06-05 12:40:41
[2026-06-05 12:40:41,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:40:41,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:40:41,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:40:42,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:40:42,092.092 INFO    ] time= 05/06/2026 12:40:42
[2026-06-05 12:40:42,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:40:42,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:40:42,301.301 INFO    ] No existing commands found in stream
[2026-06-05 12:40:47,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:40:47,334.334 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 12:40:49,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:40:49,017.017 INFO    ] Checking for system updates...
[2026-06-05 12:40:49,057.057 INFO    ] 200
[2026-06-05 12:40:49,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:49,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:40:49,116.116 INFO    ] No update needed
[2026-06-05 12:40:49,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 12:40:49,157.157 INFO    ] 200
[2026-06-05 12:40:49,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:40:49,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:40:49,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:40:49,352.352 INFO    ] No camera update needed
[2026-06-05 12:40:49,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:40:49,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:40:49,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:40:49,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:40:51,412.412 INFO    ] ================================================
[2026-06-05 12:40:51,427.427 INFO    ] Launching Daemon at Fri Jun  5 12:40:51 IST 2026
[2026-06-05 12:40:51,438.438 INFO    ] ================================================
[2026-06-05 12:40:52,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:40:52
[2026-06-05 12:40:52,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:40:52,851.851 INFO    ] Initializing speech engine...
[2026-06-05 12:40:52,863.863 INFO    ] 2026-06-05 12:40:52
[2026-06-05 12:40:53,129.129 INFO    ] 2026-06-05 12:40:53
[2026-06-05 12:40:53,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:40:53,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:40:53,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:40:53,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:40:53,627.627 INFO    ] time= 05/06/2026 12:40:53
[2026-06-05 12:40:53,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:40:53,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:40:53,832.832 INFO    ] No existing commands found in stream
[2026-06-05 12:40:58,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:40:58,857.857 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 12:41:02,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:41:02,716.716 INFO    ] Checking for system updates...
[2026-06-05 12:41:02,752.752 INFO    ] 200
[2026-06-05 12:41:02,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:02,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:41:02,811.811 INFO    ] No update needed
[2026-06-05 12:41:02,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 12:41:02,847.847 INFO    ] 200
[2026-06-05 12:41:02,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:02,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:41:02,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:41:02,961.961 INFO    ] No camera update needed
[2026-06-05 12:41:02,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:41:02,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:41:02,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:41:02,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:41:05,017.017 INFO    ] ================================================
[2026-06-05 12:41:05,033.033 INFO    ] Launching Daemon at Fri Jun  5 12:41:05 IST 2026
[2026-06-05 12:41:05,043.043 INFO    ] ================================================
[2026-06-05 12:41:05,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:41:05
[2026-06-05 12:41:06,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:41:06,499.499 INFO    ] Initializing speech engine...
[2026-06-05 12:41:06,508.508 INFO    ] 2026-06-05 12:41:06
[2026-06-05 12:41:06,798.798 INFO    ] 2026-06-05 12:41:06
[2026-06-05 12:41:06,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:41:07,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:41:07,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:41:07,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:41:07,173.173 INFO    ] time= 05/06/2026 12:41:07
[2026-06-05 12:41:07,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:41:07,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:41:07,296.296 INFO    ] No existing commands found in stream
[2026-06-05 12:41:12,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:41:12,312.312 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 12:41:14,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:41:14,070.070 INFO    ] Checking for system updates...
[2026-06-05 12:41:14,106.106 INFO    ] 200
[2026-06-05 12:41:14,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:14,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:41:14,163.163 INFO    ] No update needed
[2026-06-05 12:41:14,166.166 INFO    ] Checking for camera pi updates...
[2026-06-05 12:41:14,203.203 INFO    ] 200
[2026-06-05 12:41:14,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:14,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:41:14,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:41:14,300.300 INFO    ] No camera update needed
[2026-06-05 12:41:14,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:41:14,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:41:14,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:41:14,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:41:16,356.356 INFO    ] ================================================
[2026-06-05 12:41:16,371.371 INFO    ] Launching Daemon at Fri Jun  5 12:41:16 IST 2026
[2026-06-05 12:41:16,381.381 INFO    ] ================================================
[2026-06-05 12:41:17,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:41:17
[2026-06-05 12:41:17,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:41:17,959.959 INFO    ] Initializing speech engine...
[2026-06-05 12:41:17,985.985 INFO    ] 2026-06-05 12:41:17
[2026-06-05 12:41:18,251.251 INFO    ] 2026-06-05 12:41:18
[2026-06-05 12:41:18,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:41:18,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:41:18,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:41:18,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:41:18,751.751 INFO    ] time= 05/06/2026 12:41:18
[2026-06-05 12:41:18,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:41:18,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:41:18,935.935 INFO    ] No existing commands found in stream
[2026-06-05 12:41:23,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:41:23,969.969 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 12:41:25,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:41:25,220.220 INFO    ] Checking for system updates...
[2026-06-05 12:41:25,259.259 INFO    ] 200
[2026-06-05 12:41:25,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:25,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:41:25,323.323 INFO    ] No update needed
[2026-06-05 12:41:25,325.325 INFO    ] Checking for camera pi updates...
[2026-06-05 12:41:25,360.360 INFO    ] 200
[2026-06-05 12:41:25,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:25,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:41:25,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:41:25,462.462 INFO    ] No camera update needed
[2026-06-05 12:41:25,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:41:25,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:41:25,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:41:25,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:41:27,517.517 INFO    ] ================================================
[2026-06-05 12:41:27,532.532 INFO    ] Launching Daemon at Fri Jun  5 12:41:27 IST 2026
[2026-06-05 12:41:27,543.543 INFO    ] ================================================
[2026-06-05 12:41:28,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:41:28
[2026-06-05 12:41:28,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:41:29,103.103 INFO    ] Initializing speech engine...
[2026-06-05 12:41:29,115.115 INFO    ] 2026-06-05 12:41:29
[2026-06-05 12:41:29,401.401 INFO    ] 2026-06-05 12:41:29
[2026-06-05 12:41:29,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:41:29,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:41:29,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:41:29,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:41:29,871.871 INFO    ] time= 05/06/2026 12:41:29
[2026-06-05 12:41:29,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:41:29,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:41:30,103.103 INFO    ] No existing commands found in stream
[2026-06-05 12:41:35,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:41:35,132.132 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 12:41:36,524.524 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:41:36,528.528 INFO    ] Checking for system updates...
[2026-06-05 12:41:36,568.568 INFO    ] 200
[2026-06-05 12:41:36,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:36,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:41:36,627.627 INFO    ] No update needed
[2026-06-05 12:41:36,629.629 INFO    ] Checking for camera pi updates...
[2026-06-05 12:41:36,664.664 INFO    ] 200
[2026-06-05 12:41:36,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:36,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:41:36,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:41:36,778.778 INFO    ] No camera update needed
[2026-06-05 12:41:36,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:41:36,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:41:36,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:41:36,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:41:38,835.835 INFO    ] ================================================
[2026-06-05 12:41:38,850.850 INFO    ] Launching Daemon at Fri Jun  5 12:41:38 IST 2026
[2026-06-05 12:41:38,867.867 INFO    ] ================================================
[2026-06-05 12:41:39,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:41:39
[2026-06-05 12:41:40,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:41:40,279.279 INFO    ] Initializing speech engine...
[2026-06-05 12:41:40,294.294 INFO    ] 2026-06-05 12:41:40
[2026-06-05 12:41:40,577.577 INFO    ] 2026-06-05 12:41:40
[2026-06-05 12:41:40,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:41:40,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:41:40,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:41:40,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:41:40,990.990 INFO    ] time= 05/06/2026 12:41:40
[2026-06-05 12:41:40,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:41:41,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:41:41,077.077 INFO    ] No existing commands found in stream
[2026-06-05 12:41:46,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:41:46,105.105 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 12:41:50,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:41:50,388.388 INFO    ] Checking for system updates...
[2026-06-05 12:41:50,425.425 INFO    ] 200
[2026-06-05 12:41:50,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:50,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:41:50,485.485 INFO    ] No update needed
[2026-06-05 12:41:50,488.488 INFO    ] Checking for camera pi updates...
[2026-06-05 12:41:50,521.521 INFO    ] 200
[2026-06-05 12:41:50,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:41:50,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:41:50,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:41:50,616.616 INFO    ] No camera update needed
[2026-06-05 12:41:50,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:41:50,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:41:50,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:41:50,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:41:52,673.673 INFO    ] ================================================
[2026-06-05 12:41:52,689.689 INFO    ] Launching Daemon at Fri Jun  5 12:41:52 IST 2026
[2026-06-05 12:41:52,699.699 INFO    ] ================================================
[2026-06-05 12:41:53,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:41:53
[2026-06-05 12:41:53,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:41:54,142.142 INFO    ] Initializing speech engine...
[2026-06-05 12:41:54,151.151 INFO    ] 2026-06-05 12:41:54
[2026-06-05 12:41:54,405.405 INFO    ] 2026-06-05 12:41:54
[2026-06-05 12:41:54,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:41:54,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:41:54,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:41:54,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:41:54,887.887 INFO    ] time= 05/06/2026 12:41:54
[2026-06-05 12:41:54,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:41:54,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:41:55,109.109 INFO    ] No existing commands found in stream
[2026-06-05 12:42:00,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:42:00,127.127 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 12:42:06,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:42:06,079.079 INFO    ] Checking for system updates...
[2026-06-05 12:42:06,119.119 INFO    ] 200
[2026-06-05 12:42:06,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:06,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:42:06,177.177 INFO    ] No update needed
[2026-06-05 12:42:06,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 12:42:06,217.217 INFO    ] 200
[2026-06-05 12:42:06,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:06,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:42:06,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:42:06,310.310 INFO    ] No camera update needed
[2026-06-05 12:42:06,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:42:06,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:42:06,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:42:06,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:42:08,366.366 INFO    ] ================================================
[2026-06-05 12:42:08,381.381 INFO    ] Launching Daemon at Fri Jun  5 12:42:08 IST 2026
[2026-06-05 12:42:08,392.392 INFO    ] ================================================
[2026-06-05 12:42:08,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:42:08
[2026-06-05 12:42:09,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:42:09,911.911 INFO    ] Initializing speech engine...
[2026-06-05 12:42:09,917.917 INFO    ] 2026-06-05 12:42:09
[2026-06-05 12:42:10,164.164 INFO    ] 2026-06-05 12:42:10
[2026-06-05 12:42:10,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:42:10,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:42:10,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:42:10,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:42:10,660.660 INFO    ] time= 05/06/2026 12:42:10
[2026-06-05 12:42:10,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:42:10,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:42:10,873.873 INFO    ] No existing commands found in stream
[2026-06-05 12:42:15,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:42:15,895.895 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 12:42:18,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:42:18,039.039 INFO    ] Checking for system updates...
[2026-06-05 12:42:18,076.076 INFO    ] 200
[2026-06-05 12:42:18,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:18,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:42:18,137.137 INFO    ] No update needed
[2026-06-05 12:42:18,140.140 INFO    ] Checking for camera pi updates...
[2026-06-05 12:42:18,174.174 INFO    ] 200
[2026-06-05 12:42:18,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:18,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:42:18,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:42:18,284.284 INFO    ] No camera update needed
[2026-06-05 12:42:18,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:42:18,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:42:18,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:42:18,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:42:20,340.340 INFO    ] ================================================
[2026-06-05 12:42:20,355.355 INFO    ] Launching Daemon at Fri Jun  5 12:42:20 IST 2026
[2026-06-05 12:42:20,367.367 INFO    ] ================================================
[2026-06-05 12:42:21,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:42:21
[2026-06-05 12:42:21,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:42:22,013.013 INFO    ] Initializing speech engine...
[2026-06-05 12:42:22,024.024 INFO    ] 2026-06-05 12:42:22
[2026-06-05 12:42:22,333.333 INFO    ] 2026-06-05 12:42:22
[2026-06-05 12:42:22,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:42:22,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:42:22,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:42:22,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:42:22,838.838 INFO    ] time= 05/06/2026 12:42:22
[2026-06-05 12:42:22,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:42:22,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:42:22,991.991 INFO    ] No existing commands found in stream
[2026-06-05 12:42:28,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:42:28,010.010 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 12:42:28,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:42:28,833.833 INFO    ] Checking for system updates...
[2026-06-05 12:42:28,870.870 INFO    ] 200
[2026-06-05 12:42:28,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:28,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:42:28,927.927 INFO    ] No update needed
[2026-06-05 12:42:28,930.930 INFO    ] Checking for camera pi updates...
[2026-06-05 12:42:28,968.968 INFO    ] 200
[2026-06-05 12:42:28,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:29,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:42:29,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:42:29,071.071 INFO    ] No camera update needed
[2026-06-05 12:42:29,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:42:29,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:42:29,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:42:29,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:42:31,127.127 INFO    ] ================================================
[2026-06-05 12:42:31,142.142 INFO    ] Launching Daemon at Fri Jun  5 12:42:31 IST 2026
[2026-06-05 12:42:31,153.153 INFO    ] ================================================
[2026-06-05 12:42:31,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:42:31
[2026-06-05 12:42:32,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:42:32,666.666 INFO    ] Initializing speech engine...
[2026-06-05 12:42:32,676.676 INFO    ] 2026-06-05 12:42:32
[2026-06-05 12:42:32,949.949 INFO    ] 2026-06-05 12:42:32
[2026-06-05 12:42:32,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:42:33,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:42:33,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:42:33,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:42:33,312.312 INFO    ] time= 05/06/2026 12:42:33
[2026-06-05 12:42:33,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:42:33,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:42:33,446.446 INFO    ] No existing commands found in stream
[2026-06-05 12:42:38,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:42:38,459.459 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 12:42:40,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:42:40,977.977 INFO    ] Checking for system updates...
[2026-06-05 12:42:41,013.013 INFO    ] 200
[2026-06-05 12:42:41,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:41,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:42:41,078.078 INFO    ] No update needed
[2026-06-05 12:42:41,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 12:42:41,117.117 INFO    ] 200
[2026-06-05 12:42:41,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:41,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:42:41,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:42:41,212.212 INFO    ] No camera update needed
[2026-06-05 12:42:41,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:42:41,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:42:41,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:42:41,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:42:43,267.267 INFO    ] ================================================
[2026-06-05 12:42:43,282.282 INFO    ] Launching Daemon at Fri Jun  5 12:42:43 IST 2026
[2026-06-05 12:42:43,298.298 INFO    ] ================================================
[2026-06-05 12:42:43,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:42:43
[2026-06-05 12:42:44,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:42:44,713.713 INFO    ] Initializing speech engine...
[2026-06-05 12:42:44,737.737 INFO    ] 2026-06-05 12:42:44
[2026-06-05 12:42:45,006.006 INFO    ] 2026-06-05 12:42:44
[2026-06-05 12:42:45,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:42:45,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:42:45,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:42:45,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:42:45,424.424 INFO    ] time= 05/06/2026 12:42:45
[2026-06-05 12:42:45,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:42:45,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:42:45,607.607 INFO    ] No existing commands found in stream
[2026-06-05 12:42:50,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:42:50,640.640 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 12:42:51,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:42:51,603.603 INFO    ] Checking for system updates...
[2026-06-05 12:42:51,639.639 INFO    ] 200
[2026-06-05 12:42:51,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:51,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:42:51,697.697 INFO    ] No update needed
[2026-06-05 12:42:51,699.699 INFO    ] Checking for camera pi updates...
[2026-06-05 12:42:51,737.737 INFO    ] 200
[2026-06-05 12:42:51,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:42:51,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:42:51,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:42:51,938.938 INFO    ] No camera update needed
[2026-06-05 12:42:51,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:42:51,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:42:51,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:42:51,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:42:53,994.994 INFO    ] ================================================
[2026-06-05 12:42:54,009.009 INFO    ] Launching Daemon at Fri Jun  5 12:42:54 IST 2026
[2026-06-05 12:42:54,019.019 INFO    ] ================================================
[2026-06-05 12:42:54,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:42:54
[2026-06-05 12:42:55,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:42:55,478.478 INFO    ] Initializing speech engine...
[2026-06-05 12:42:55,484.484 INFO    ] 2026-06-05 12:42:55
[2026-06-05 12:42:55,743.743 INFO    ] 2026-06-05 12:42:55
[2026-06-05 12:42:55,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:42:56,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:42:56,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:42:56,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:42:56,209.209 INFO    ] time= 05/06/2026 12:42:56
[2026-06-05 12:42:56,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:42:56,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:42:56,444.444 INFO    ] No existing commands found in stream
[2026-06-05 12:43:01,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:43:01,461.461 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 12:43:06,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:43:06,257.257 INFO    ] Checking for system updates...
[2026-06-05 12:43:06,295.295 INFO    ] 200
[2026-06-05 12:43:06,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:06,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:43:06,359.359 INFO    ] No update needed
[2026-06-05 12:43:06,362.362 INFO    ] Checking for camera pi updates...
[2026-06-05 12:43:06,399.399 INFO    ] 200
[2026-06-05 12:43:06,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:06,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:43:06,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:43:06,488.488 INFO    ] No camera update needed
[2026-06-05 12:43:06,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:43:06,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:43:06,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:43:06,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:43:08,543.543 INFO    ] ================================================
[2026-06-05 12:43:08,558.558 INFO    ] Launching Daemon at Fri Jun  5 12:43:08 IST 2026
[2026-06-05 12:43:08,569.569 INFO    ] ================================================
[2026-06-05 12:43:09,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:43:09
[2026-06-05 12:43:09,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:43:09,988.988 INFO    ] Initializing speech engine...
[2026-06-05 12:43:09,994.994 INFO    ] 2026-06-05 12:43:09
[2026-06-05 12:43:10,294.294 INFO    ] 2026-06-05 12:43:10
[2026-06-05 12:43:10,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:43:10,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:43:10,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:43:10,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:43:10,676.676 INFO    ] time= 05/06/2026 12:43:10
[2026-06-05 12:43:10,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:43:10,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:43:10,802.802 INFO    ] No existing commands found in stream
[2026-06-05 12:43:15,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:43:15,818.818 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 12:43:18,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:43:18,952.952 INFO    ] Checking for system updates...
[2026-06-05 12:43:18,988.988 INFO    ] 200
[2026-06-05 12:43:18,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:19,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:43:19,046.046 INFO    ] No update needed
[2026-06-05 12:43:19,048.048 INFO    ] Checking for camera pi updates...
[2026-06-05 12:43:19,082.082 INFO    ] 200
[2026-06-05 12:43:19,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:19,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:43:19,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:43:19,180.180 INFO    ] No camera update needed
[2026-06-05 12:43:19,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:43:19,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:43:19,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:43:19,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:43:21,237.237 INFO    ] ================================================
[2026-06-05 12:43:21,252.252 INFO    ] Launching Daemon at Fri Jun  5 12:43:21 IST 2026
[2026-06-05 12:43:21,262.262 INFO    ] ================================================
[2026-06-05 12:43:21,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:43:21
[2026-06-05 12:43:22,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:43:22,669.669 INFO    ] Initializing speech engine...
[2026-06-05 12:43:22,677.677 INFO    ] 2026-06-05 12:43:22
[2026-06-05 12:43:22,971.971 INFO    ] 2026-06-05 12:43:22
[2026-06-05 12:43:23,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:43:23,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:43:23,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:43:23,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:43:23,368.368 INFO    ] time= 05/06/2026 12:43:23
[2026-06-05 12:43:23,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:43:23,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:43:23,479.479 INFO    ] No existing commands found in stream
[2026-06-05 12:43:28,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:43:28,512.512 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 12:43:32,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:43:32,824.824 INFO    ] Checking for system updates...
[2026-06-05 12:43:32,860.860 INFO    ] 200
[2026-06-05 12:43:32,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:32,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:43:32,918.918 INFO    ] No update needed
[2026-06-05 12:43:32,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 12:43:32,955.955 INFO    ] 200
[2026-06-05 12:43:32,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:33,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:43:33,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:43:33,037.037 INFO    ] No camera update needed
[2026-06-05 12:43:33,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:43:33,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:43:33,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:43:33,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:43:35,092.092 INFO    ] ================================================
[2026-06-05 12:43:35,108.108 INFO    ] Launching Daemon at Fri Jun  5 12:43:35 IST 2026
[2026-06-05 12:43:35,118.118 INFO    ] ================================================
[2026-06-05 12:43:35,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:43:35
[2026-06-05 12:43:36,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:43:36,613.613 INFO    ] Initializing speech engine...
[2026-06-05 12:43:36,621.621 INFO    ] 2026-06-05 12:43:36
[2026-06-05 12:43:36,879.879 INFO    ] 2026-06-05 12:43:36
[2026-06-05 12:43:36,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:43:37,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:43:37,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:43:37,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:43:37,324.324 INFO    ] time= 05/06/2026 12:43:37
[2026-06-05 12:43:37,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:43:37,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:43:37,559.559 INFO    ] No existing commands found in stream
[2026-06-05 12:43:42,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:43:42,591.591 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 12:43:44,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:43:44,537.537 INFO    ] Checking for system updates...
[2026-06-05 12:43:44,575.575 INFO    ] 200
[2026-06-05 12:43:44,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:44,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:43:44,636.636 INFO    ] No update needed
[2026-06-05 12:43:44,639.639 INFO    ] Checking for camera pi updates...
[2026-06-05 12:43:44,678.678 INFO    ] 200
[2026-06-05 12:43:44,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:44,728.728 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:43:44,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:43:44,782.782 INFO    ] No camera update needed
[2026-06-05 12:43:44,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:43:44,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:43:44,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:43:44,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:43:46,841.841 INFO    ] ================================================
[2026-06-05 12:43:46,856.856 INFO    ] Launching Daemon at Fri Jun  5 12:43:46 IST 2026
[2026-06-05 12:43:46,866.866 INFO    ] ================================================
[2026-06-05 12:43:47,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:43:47
[2026-06-05 12:43:48,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:43:48,327.327 INFO    ] Initializing speech engine...
[2026-06-05 12:43:48,337.337 INFO    ] 2026-06-05 12:43:48
[2026-06-05 12:43:48,581.581 INFO    ] 2026-06-05 12:43:48
[2026-06-05 12:43:48,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:43:48,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:43:48,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:43:49,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:43:49,063.063 INFO    ] time= 05/06/2026 12:43:49
[2026-06-05 12:43:49,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:43:49,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:43:49,272.272 INFO    ] No existing commands found in stream
[2026-06-05 12:43:54,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:43:54,302.302 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 12:43:58,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:43:58,696.696 INFO    ] Checking for system updates...
[2026-06-05 12:43:58,732.732 INFO    ] 200
[2026-06-05 12:43:58,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:58,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:43:58,795.795 INFO    ] No update needed
[2026-06-05 12:43:58,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 12:43:58,832.832 INFO    ] 200
[2026-06-05 12:43:58,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:43:58,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:43:58,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:43:58,929.929 INFO    ] No camera update needed
[2026-06-05 12:43:58,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:43:58,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:43:58,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:43:58,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:44:00,986.986 INFO    ] ================================================
[2026-06-05 12:44:01,001.001 INFO    ] Launching Daemon at Fri Jun  5 12:44:00 IST 2026
[2026-06-05 12:44:01,012.012 INFO    ] ================================================
[2026-06-05 12:44:01,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:44:01
[2026-06-05 12:44:02,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:44:02,713.713 INFO    ] Initializing speech engine...
[2026-06-05 12:44:02,741.741 INFO    ] 2026-06-05 12:44:02
[2026-06-05 12:44:03,052.052 INFO    ] 2026-06-05 12:44:03
[2026-06-05 12:44:03,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:44:03,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:44:03,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:44:03,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:44:03,501.501 INFO    ] time= 05/06/2026 12:44:03
[2026-06-05 12:44:03,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:44:03,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:44:03,586.586 INFO    ] No existing commands found in stream
[2026-06-05 12:44:08,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:44:08,625.625 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 12:44:09,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:44:09,589.589 INFO    ] Checking for system updates...
[2026-06-05 12:44:09,631.631 INFO    ] 200
[2026-06-05 12:44:09,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:09,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:44:09,696.696 INFO    ] No update needed
[2026-06-05 12:44:09,699.699 INFO    ] Checking for camera pi updates...
[2026-06-05 12:44:09,734.734 INFO    ] 200
[2026-06-05 12:44:09,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:09,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:44:09,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:44:09,856.856 INFO    ] No camera update needed
[2026-06-05 12:44:09,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:44:09,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:44:09,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:44:09,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:44:11,915.915 INFO    ] ================================================
[2026-06-05 12:44:11,931.931 INFO    ] Launching Daemon at Fri Jun  5 12:44:11 IST 2026
[2026-06-05 12:44:11,942.942 INFO    ] ================================================
[2026-06-05 12:44:12,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:44:12
[2026-06-05 12:44:13,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:44:13,366.366 INFO    ] Initializing speech engine...
[2026-06-05 12:44:13,380.380 INFO    ] 2026-06-05 12:44:13
[2026-06-05 12:44:13,651.651 INFO    ] 2026-06-05 12:44:13
[2026-06-05 12:44:13,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:44:13,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:44:13,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:44:14,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:44:14,042.042 INFO    ] time= 05/06/2026 12:44:14
[2026-06-05 12:44:14,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:44:14,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:44:14,239.239 INFO    ] No existing commands found in stream
[2026-06-05 12:44:19,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:44:19,257.257 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 12:44:21,376.376 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:44:21,379.379 INFO    ] Checking for system updates...
[2026-06-05 12:44:21,417.417 INFO    ] 200
[2026-06-05 12:44:21,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:21,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:44:21,484.484 INFO    ] No update needed
[2026-06-05 12:44:21,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 12:44:21,522.522 INFO    ] 200
[2026-06-05 12:44:21,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:21,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:44:21,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:44:21,621.621 INFO    ] No camera update needed
[2026-06-05 12:44:21,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:44:21,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:44:21,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:44:21,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:44:23,679.679 INFO    ] ================================================
[2026-06-05 12:44:23,694.694 INFO    ] Launching Daemon at Fri Jun  5 12:44:23 IST 2026
[2026-06-05 12:44:23,705.705 INFO    ] ================================================
[2026-06-05 12:44:24,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:44:24
[2026-06-05 12:44:24,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:44:25,137.137 INFO    ] Initializing speech engine...
[2026-06-05 12:44:25,147.147 INFO    ] 2026-06-05 12:44:25
[2026-06-05 12:44:25,402.402 INFO    ] 2026-06-05 12:44:25
[2026-06-05 12:44:25,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:44:25,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:44:25,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:44:25,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:44:25,978.978 INFO    ] time= 05/06/2026 12:44:25
[2026-06-05 12:44:25,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:44:26,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:44:26,139.139 INFO    ] No existing commands found in stream
[2026-06-05 12:44:31,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:44:31,162.162 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 12:44:36,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:44:36,116.116 INFO    ] Checking for system updates...
[2026-06-05 12:44:36,152.152 INFO    ] 200
[2026-06-05 12:44:36,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:36,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:44:36,210.210 INFO    ] No update needed
[2026-06-05 12:44:36,212.212 INFO    ] Checking for camera pi updates...
[2026-06-05 12:44:36,249.249 INFO    ] 200
[2026-06-05 12:44:36,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:36,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:44:36,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:44:36,340.340 INFO    ] No camera update needed
[2026-06-05 12:44:36,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:44:36,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:44:36,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:44:36,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:44:38,396.396 INFO    ] ================================================
[2026-06-05 12:44:38,411.411 INFO    ] Launching Daemon at Fri Jun  5 12:44:38 IST 2026
[2026-06-05 12:44:38,421.421 INFO    ] ================================================
[2026-06-05 12:44:39,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:44:39
[2026-06-05 12:44:39,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:44:39,862.862 INFO    ] Initializing speech engine...
[2026-06-05 12:44:39,884.884 INFO    ] 2026-06-05 12:44:39
[2026-06-05 12:44:40,138.138 INFO    ] 2026-06-05 12:44:40
[2026-06-05 12:44:40,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:44:40,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:44:40,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:44:40,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:44:40,596.596 INFO    ] time= 05/06/2026 12:44:40
[2026-06-05 12:44:40,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:44:40,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:44:40,858.858 INFO    ] No existing commands found in stream
[2026-06-05 12:44:45,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:44:45,874.874 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 12:44:49,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:44:49,055.055 INFO    ] Checking for system updates...
[2026-06-05 12:44:49,091.091 INFO    ] 200
[2026-06-05 12:44:49,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:49,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:44:49,149.149 INFO    ] No update needed
[2026-06-05 12:44:49,151.151 INFO    ] Checking for camera pi updates...
[2026-06-05 12:44:49,185.185 INFO    ] 200
[2026-06-05 12:44:49,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:49,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:44:49,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:44:49,277.277 INFO    ] No camera update needed
[2026-06-05 12:44:49,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:44:49,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:44:49,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:44:49,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:44:51,333.333 INFO    ] ================================================
[2026-06-05 12:44:51,348.348 INFO    ] Launching Daemon at Fri Jun  5 12:44:51 IST 2026
[2026-06-05 12:44:51,359.359 INFO    ] ================================================
[2026-06-05 12:44:51,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:44:51
[2026-06-05 12:44:52,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:44:52,856.856 INFO    ] Initializing speech engine...
[2026-06-05 12:44:52,865.865 INFO    ] 2026-06-05 12:44:52
[2026-06-05 12:44:53,167.167 INFO    ] 2026-06-05 12:44:53
[2026-06-05 12:44:53,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:44:53,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:44:53,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:44:53,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:44:53,583.583 INFO    ] time= 05/06/2026 12:44:53
[2026-06-05 12:44:53,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:44:53,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:44:53,669.669 INFO    ] No existing commands found in stream
[2026-06-05 12:44:58,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:44:58,687.687 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 12:44:59,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:44:59,291.291 INFO    ] Checking for system updates...
[2026-06-05 12:44:59,327.327 INFO    ] 200
[2026-06-05 12:44:59,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:59,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:44:59,386.386 INFO    ] No update needed
[2026-06-05 12:44:59,388.388 INFO    ] Checking for camera pi updates...
[2026-06-05 12:44:59,422.422 INFO    ] 200
[2026-06-05 12:44:59,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:44:59,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:44:59,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:44:59,558.558 INFO    ] No camera update needed
[2026-06-05 12:44:59,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:44:59,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:44:59,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:44:59,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:45:01,660.660 INFO    ] ================================================
[2026-06-05 12:45:01,751.751 INFO    ] Launching Daemon at Fri Jun  5 12:45:01 IST 2026
[2026-06-05 12:45:01,818.818 INFO    ] ================================================
[2026-06-05 12:45:02,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:45:02
[2026-06-05 12:45:03,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:45:03,618.618 INFO    ] Initializing speech engine...
[2026-06-05 12:45:03,628.628 INFO    ] 2026-06-05 12:45:03
[2026-06-05 12:45:03,888.888 INFO    ] 2026-06-05 12:45:03
[2026-06-05 12:45:03,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:45:05,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:45:05,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:45:06,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:45:06,177.177 INFO    ] time= 05/06/2026 12:45:06
[2026-06-05 12:45:06,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:45:06,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:45:06,288.288 INFO    ] No existing commands found in stream
[2026-06-05 12:45:11,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:45:11,300.300 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 12:45:11,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:45:11,731.731 INFO    ] Checking for system updates...
[2026-06-05 12:45:11,767.767 INFO    ] 200
[2026-06-05 12:45:11,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:11,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:45:11,829.829 INFO    ] No update needed
[2026-06-05 12:45:11,831.831 INFO    ] Checking for camera pi updates...
[2026-06-05 12:45:11,865.865 INFO    ] 200
[2026-06-05 12:45:11,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:11,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:45:11,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:45:11,957.957 INFO    ] No camera update needed
[2026-06-05 12:45:11,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:45:11,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:45:11,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:45:11,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:45:14,014.014 INFO    ] ================================================
[2026-06-05 12:45:14,037.037 INFO    ] Launching Daemon at Fri Jun  5 12:45:14 IST 2026
[2026-06-05 12:45:14,049.049 INFO    ] ================================================
[2026-06-05 12:45:14,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:45:14
[2026-06-05 12:45:15,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:45:15,459.459 INFO    ] Initializing speech engine...
[2026-06-05 12:45:15,471.471 INFO    ] 2026-06-05 12:45:15
[2026-06-05 12:45:15,733.733 INFO    ] 2026-06-05 12:45:15
[2026-06-05 12:45:15,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:45:15,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:45:15,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:45:16,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:45:16,106.106 INFO    ] time= 05/06/2026 12:45:16
[2026-06-05 12:45:16,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:45:16,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:45:16,300.300 INFO    ] No existing commands found in stream
[2026-06-05 12:45:21,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:45:21,314.314 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 12:45:23,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:45:23,698.698 INFO    ] Checking for system updates...
[2026-06-05 12:45:23,735.735 INFO    ] 200
[2026-06-05 12:45:23,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:23,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:45:23,795.795 INFO    ] No update needed
[2026-06-05 12:45:23,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 12:45:23,838.838 INFO    ] 200
[2026-06-05 12:45:23,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:23,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:45:23,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:45:23,933.933 INFO    ] No camera update needed
[2026-06-05 12:45:23,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:45:23,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:45:23,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:45:23,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:45:25,994.994 INFO    ] ================================================
[2026-06-05 12:45:26,009.009 INFO    ] Launching Daemon at Fri Jun  5 12:45:26 IST 2026
[2026-06-05 12:45:26,020.020 INFO    ] ================================================
[2026-06-05 12:45:26,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:45:26
[2026-06-05 12:45:27,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:45:27,421.421 INFO    ] Initializing speech engine...
[2026-06-05 12:45:27,434.434 INFO    ] 2026-06-05 12:45:27
[2026-06-05 12:45:27,695.695 INFO    ] 2026-06-05 12:45:27
[2026-06-05 12:45:27,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:45:27,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:45:27,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:45:28,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:45:28,171.171 INFO    ] time= 05/06/2026 12:45:28
[2026-06-05 12:45:28,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:45:28,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:45:28,382.382 INFO    ] No existing commands found in stream
[2026-06-05 12:45:33,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:45:33,411.411 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-05 12:45:33,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:45:33,881.881 INFO    ] Checking for system updates...
[2026-06-05 12:45:33,918.918 INFO    ] 200
[2026-06-05 12:45:33,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:33,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:45:33,975.975 INFO    ] No update needed
[2026-06-05 12:45:33,978.978 INFO    ] Checking for camera pi updates...
[2026-06-05 12:45:34,016.016 INFO    ] 200
[2026-06-05 12:45:34,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:34,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:45:34,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:45:34,126.126 INFO    ] No camera update needed
[2026-06-05 12:45:34,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:45:34,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:45:34,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:45:34,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:45:36,187.187 INFO    ] ================================================
[2026-06-05 12:45:36,203.203 INFO    ] Launching Daemon at Fri Jun  5 12:45:36 IST 2026
[2026-06-05 12:45:36,214.214 INFO    ] ================================================
[2026-06-05 12:45:36,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:45:36
[2026-06-05 12:45:37,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:45:37,813.813 INFO    ] Initializing speech engine...
[2026-06-05 12:45:37,822.822 INFO    ] 2026-06-05 12:45:37
[2026-06-05 12:45:38,111.111 INFO    ] 2026-06-05 12:45:38
[2026-06-05 12:45:38,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:45:38,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:45:38,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:45:38,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:45:38,642.642 INFO    ] time= 05/06/2026 12:45:38
[2026-06-05 12:45:38,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:45:38,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:45:38,798.798 INFO    ] No existing commands found in stream
[2026-06-05 12:45:43,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:45:43,818.818 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 12:45:45,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:45:45,255.255 INFO    ] Checking for system updates...
[2026-06-05 12:45:45,292.292 INFO    ] 200
[2026-06-05 12:45:45,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:45,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:45:45,352.352 INFO    ] No update needed
[2026-06-05 12:45:45,355.355 INFO    ] Checking for camera pi updates...
[2026-06-05 12:45:45,391.391 INFO    ] 200
[2026-06-05 12:45:45,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:45,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:45:45,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:45:45,489.489 INFO    ] No camera update needed
[2026-06-05 12:45:45,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:45:45,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:45:45,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:45:45,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:45:47,544.544 INFO    ] ================================================
[2026-06-05 12:45:47,559.559 INFO    ] Launching Daemon at Fri Jun  5 12:45:47 IST 2026
[2026-06-05 12:45:47,570.570 INFO    ] ================================================
[2026-06-05 12:45:48,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:45:48
[2026-06-05 12:45:48,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:45:48,988.988 INFO    ] Initializing speech engine...
[2026-06-05 12:45:49,011.011 INFO    ] 2026-06-05 12:45:48
[2026-06-05 12:45:49,270.270 INFO    ] 2026-06-05 12:45:49
[2026-06-05 12:45:49,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:45:49,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:45:49,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:45:49,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:45:49,658.658 INFO    ] time= 05/06/2026 12:45:49
[2026-06-05 12:45:49,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:45:49,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:45:49,857.857 INFO    ] No existing commands found in stream
[2026-06-05 12:45:54,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:45:54,872.872 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 12:45:55,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:45:55,958.958 INFO    ] Checking for system updates...
[2026-06-05 12:45:55,994.994 INFO    ] 200
[2026-06-05 12:45:55,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:56,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:45:56,052.052 INFO    ] No update needed
[2026-06-05 12:45:56,058.058 INFO    ] Checking for camera pi updates...
[2026-06-05 12:45:56,093.093 INFO    ] 200
[2026-06-05 12:45:56,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:45:56,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:45:56,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:45:56,182.182 INFO    ] No camera update needed
[2026-06-05 12:45:56,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:45:56,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:45:56,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:45:56,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:45:58,240.240 INFO    ] ================================================
[2026-06-05 12:45:58,255.255 INFO    ] Launching Daemon at Fri Jun  5 12:45:58 IST 2026
[2026-06-05 12:45:58,266.266 INFO    ] ================================================
[2026-06-05 12:45:58,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:45:58
[2026-06-05 12:45:59,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:45:59,821.821 INFO    ] Initializing speech engine...
[2026-06-05 12:45:59,831.831 INFO    ] 2026-06-05 12:45:59
[2026-06-05 12:46:00,087.087 INFO    ] 2026-06-05 12:46:00
[2026-06-05 12:46:00,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:46:00,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:46:00,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:46:00,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:46:00,534.534 INFO    ] time= 05/06/2026 12:46:00
[2026-06-05 12:46:00,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:46:00,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:46:00,718.718 INFO    ] No existing commands found in stream
[2026-06-05 12:46:05,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:46:05,733.733 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 12:46:08,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:46:08,418.418 INFO    ] Checking for system updates...
[2026-06-05 12:46:08,457.457 INFO    ] 200
[2026-06-05 12:46:08,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:08,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:46:08,514.514 INFO    ] No update needed
[2026-06-05 12:46:08,516.516 INFO    ] Checking for camera pi updates...
[2026-06-05 12:46:08,550.550 INFO    ] 200
[2026-06-05 12:46:08,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:08,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:46:08,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:46:08,651.651 INFO    ] No camera update needed
[2026-06-05 12:46:08,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:46:08,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:46:08,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:46:08,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:46:10,710.710 INFO    ] ================================================
[2026-06-05 12:46:10,726.726 INFO    ] Launching Daemon at Fri Jun  5 12:46:10 IST 2026
[2026-06-05 12:46:10,739.739 INFO    ] ================================================
[2026-06-05 12:46:11,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:46:11
[2026-06-05 12:46:11,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:46:12,165.165 INFO    ] Initializing speech engine...
[2026-06-05 12:46:12,174.174 INFO    ] 2026-06-05 12:46:12
[2026-06-05 12:46:12,421.421 INFO    ] 2026-06-05 12:46:12
[2026-06-05 12:46:12,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:46:12,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:46:12,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:46:12,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:46:12,792.792 INFO    ] time= 05/06/2026 12:46:12
[2026-06-05 12:46:12,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:46:12,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:46:12,984.984 INFO    ] No existing commands found in stream
[2026-06-05 12:46:17,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:46:18,002.002 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 12:46:20,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:46:20,924.924 INFO    ] Checking for system updates...
[2026-06-05 12:46:20,961.961 INFO    ] 200
[2026-06-05 12:46:20,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:21,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:46:21,019.019 INFO    ] No update needed
[2026-06-05 12:46:21,021.021 INFO    ] Checking for camera pi updates...
[2026-06-05 12:46:21,056.056 INFO    ] 200
[2026-06-05 12:46:21,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:21,100.100 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:46:21,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:46:21,148.148 INFO    ] No camera update needed
[2026-06-05 12:46:21,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:46:21,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:46:21,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:46:21,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:46:23,203.203 INFO    ] ================================================
[2026-06-05 12:46:23,219.219 INFO    ] Launching Daemon at Fri Jun  5 12:46:23 IST 2026
[2026-06-05 12:46:23,230.230 INFO    ] ================================================
[2026-06-05 12:46:23,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:46:23
[2026-06-05 12:46:24,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:46:24,664.664 INFO    ] Initializing speech engine...
[2026-06-05 12:46:24,670.670 INFO    ] 2026-06-05 12:46:24
[2026-06-05 12:46:24,914.914 INFO    ] 2026-06-05 12:46:24
[2026-06-05 12:46:24,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:46:25,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:46:25,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:46:25,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:46:25,386.386 INFO    ] time= 05/06/2026 12:46:25
[2026-06-05 12:46:25,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:46:25,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:46:25,602.602 INFO    ] No existing commands found in stream
[2026-06-05 12:46:30,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:46:30,635.635 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 12:46:32,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:46:32,212.212 INFO    ] Checking for system updates...
[2026-06-05 12:46:32,254.254 INFO    ] 200
[2026-06-05 12:46:32,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:32,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:46:32,318.318 INFO    ] No update needed
[2026-06-05 12:46:32,321.321 INFO    ] Checking for camera pi updates...
[2026-06-05 12:46:32,357.357 INFO    ] 200
[2026-06-05 12:46:32,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:32,418.418 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:46:32,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:46:32,460.460 INFO    ] No camera update needed
[2026-06-05 12:46:32,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:46:32,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:46:32,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:46:32,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:46:34,521.521 INFO    ] ================================================
[2026-06-05 12:46:34,537.537 INFO    ] Launching Daemon at Fri Jun  5 12:46:34 IST 2026
[2026-06-05 12:46:34,549.549 INFO    ] ================================================
[2026-06-05 12:46:35,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:46:35
[2026-06-05 12:46:35,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:46:36,192.192 INFO    ] Initializing speech engine...
[2026-06-05 12:46:36,197.197 INFO    ] 2026-06-05 12:46:36
[2026-06-05 12:46:36,483.483 INFO    ] 2026-06-05 12:46:36
[2026-06-05 12:46:36,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:46:36,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:46:36,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:46:36,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:46:37,015.015 INFO    ] time= 05/06/2026 12:46:37
[2026-06-05 12:46:37,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:46:37,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:46:37,172.172 INFO    ] No existing commands found in stream
[2026-06-05 12:46:42,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:46:42,209.209 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 12:46:43,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:46:43,119.119 INFO    ] Checking for system updates...
[2026-06-05 12:46:43,155.155 INFO    ] 200
[2026-06-05 12:46:43,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:43,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:46:43,214.214 INFO    ] No update needed
[2026-06-05 12:46:43,217.217 INFO    ] Checking for camera pi updates...
[2026-06-05 12:46:43,250.250 INFO    ] 200
[2026-06-05 12:46:43,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:43,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:46:43,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:46:43,363.363 INFO    ] No camera update needed
[2026-06-05 12:46:43,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:46:43,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:46:43,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:46:43,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:46:45,420.420 INFO    ] ================================================
[2026-06-05 12:46:45,437.437 INFO    ] Launching Daemon at Fri Jun  5 12:46:45 IST 2026
[2026-06-05 12:46:45,448.448 INFO    ] ================================================
[2026-06-05 12:46:46,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:46:46
[2026-06-05 12:46:46,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:46:46,871.871 INFO    ] Initializing speech engine...
[2026-06-05 12:46:46,881.881 INFO    ] 2026-06-05 12:46:46
[2026-06-05 12:46:47,140.140 INFO    ] 2026-06-05 12:46:47
[2026-06-05 12:46:47,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:46:47,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:46:47,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:46:47,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:46:47,596.596 INFO    ] time= 05/06/2026 12:46:47
[2026-06-05 12:46:47,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:46:47,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:46:47,768.768 INFO    ] No existing commands found in stream
[2026-06-05 12:46:52,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:46:52,781.781 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 12:46:55,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:46:55,859.859 INFO    ] Checking for system updates...
[2026-06-05 12:46:55,895.895 INFO    ] 200
[2026-06-05 12:46:55,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:55,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:46:55,954.954 INFO    ] No update needed
[2026-06-05 12:46:55,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 12:46:55,990.990 INFO    ] 200
[2026-06-05 12:46:55,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:46:56,038.038 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:46:56,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:46:56,092.092 INFO    ] No camera update needed
[2026-06-05 12:46:56,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:46:56,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:46:56,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:46:56,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:46:58,149.149 INFO    ] ================================================
[2026-06-05 12:46:58,165.165 INFO    ] Launching Daemon at Fri Jun  5 12:46:58 IST 2026
[2026-06-05 12:46:58,177.177 INFO    ] ================================================
[2026-06-05 12:46:58,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:46:58
[2026-06-05 12:46:59,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:46:59,632.632 INFO    ] Initializing speech engine...
[2026-06-05 12:46:59,640.640 INFO    ] 2026-06-05 12:46:59
[2026-06-05 12:46:59,934.934 INFO    ] 2026-06-05 12:46:59
[2026-06-05 12:46:59,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:47:00,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:47:00,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:47:00,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:47:00,337.337 INFO    ] time= 05/06/2026 12:47:00
[2026-06-05 12:47:00,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:47:00,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:47:00,468.468 INFO    ] No existing commands found in stream
[2026-06-05 12:47:05,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:47:05,482.482 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 12:47:09,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:47:09,529.529 INFO    ] Checking for system updates...
[2026-06-05 12:47:09,566.566 INFO    ] 200
[2026-06-05 12:47:09,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:09,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:47:09,629.629 INFO    ] No update needed
[2026-06-05 12:47:09,631.631 INFO    ] Checking for camera pi updates...
[2026-06-05 12:47:09,678.678 INFO    ] 200
[2026-06-05 12:47:09,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:09,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:47:09,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:47:09,769.769 INFO    ] No camera update needed
[2026-06-05 12:47:09,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:47:09,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:47:09,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:47:09,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:47:11,826.826 INFO    ] ================================================
[2026-06-05 12:47:11,841.841 INFO    ] Launching Daemon at Fri Jun  5 12:47:11 IST 2026
[2026-06-05 12:47:11,852.852 INFO    ] ================================================
[2026-06-05 12:47:12,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:47:12
[2026-06-05 12:47:13,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:47:13,371.371 INFO    ] Initializing speech engine...
[2026-06-05 12:47:13,384.384 INFO    ] 2026-06-05 12:47:13
[2026-06-05 12:47:13,638.638 INFO    ] 2026-06-05 12:47:13
[2026-06-05 12:47:13,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:47:13,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:47:13,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:47:14,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:47:14,212.212 INFO    ] time= 05/06/2026 12:47:14
[2026-06-05 12:47:14,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:47:14,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:47:14,350.350 INFO    ] No existing commands found in stream
[2026-06-05 12:47:19,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:47:19,390.390 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 12:47:20,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:47:20,131.131 INFO    ] Checking for system updates...
[2026-06-05 12:47:20,168.168 INFO    ] 200
[2026-06-05 12:47:20,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:20,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:47:20,226.226 INFO    ] No update needed
[2026-06-05 12:47:20,228.228 INFO    ] Checking for camera pi updates...
[2026-06-05 12:47:20,262.262 INFO    ] 200
[2026-06-05 12:47:20,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:20,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:47:20,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:47:20,361.361 INFO    ] No camera update needed
[2026-06-05 12:47:20,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:47:20,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:47:20,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:47:20,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:47:22,419.419 INFO    ] ================================================
[2026-06-05 12:47:22,435.435 INFO    ] Launching Daemon at Fri Jun  5 12:47:22 IST 2026
[2026-06-05 12:47:22,446.446 INFO    ] ================================================
[2026-06-05 12:47:23,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:47:23
[2026-06-05 12:47:23,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:47:23,915.915 INFO    ] Initializing speech engine...
[2026-06-05 12:47:23,922.922 INFO    ] 2026-06-05 12:47:23
[2026-06-05 12:47:24,184.184 INFO    ] 2026-06-05 12:47:24
[2026-06-05 12:47:24,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:47:24,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:47:24,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:47:24,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:47:24,643.643 INFO    ] time= 05/06/2026 12:47:24
[2026-06-05 12:47:24,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:47:24,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:47:24,863.863 INFO    ] No existing commands found in stream
[2026-06-05 12:47:29,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:47:29,893.893 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 12:47:31,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:47:31,126.126 INFO    ] Checking for system updates...
[2026-06-05 12:47:31,164.164 INFO    ] 200
[2026-06-05 12:47:31,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:31,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:47:31,223.223 INFO    ] No update needed
[2026-06-05 12:47:31,226.226 INFO    ] Checking for camera pi updates...
[2026-06-05 12:47:31,259.259 INFO    ] 200
[2026-06-05 12:47:31,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:31,302.302 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:47:31,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:47:31,367.367 INFO    ] No camera update needed
[2026-06-05 12:47:31,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:47:31,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:47:31,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:47:31,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:47:33,425.425 INFO    ] ================================================
[2026-06-05 12:47:33,440.440 INFO    ] Launching Daemon at Fri Jun  5 12:47:33 IST 2026
[2026-06-05 12:47:33,452.452 INFO    ] ================================================
[2026-06-05 12:47:34,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:47:34
[2026-06-05 12:47:34,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:47:34,879.879 INFO    ] Initializing speech engine...
[2026-06-05 12:47:34,890.890 INFO    ] 2026-06-05 12:47:34
[2026-06-05 12:47:35,137.137 INFO    ] 2026-06-05 12:47:35
[2026-06-05 12:47:35,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:47:36,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:47:36,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:47:36,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:47:36,271.271 INFO    ] time= 05/06/2026 12:47:36
[2026-06-05 12:47:36,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:47:36,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:47:36,384.384 INFO    ] No existing commands found in stream
[2026-06-05 12:47:41,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:47:41,399.399 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 12:47:42,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:47:42,961.961 INFO    ] Checking for system updates...
[2026-06-05 12:47:42,997.997 INFO    ] 200
[2026-06-05 12:47:43,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:43,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:47:43,056.056 INFO    ] No update needed
[2026-06-05 12:47:43,059.059 INFO    ] Checking for camera pi updates...
[2026-06-05 12:47:43,092.092 INFO    ] 200
[2026-06-05 12:47:43,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:43,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:47:43,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:47:43,192.192 INFO    ] No camera update needed
[2026-06-05 12:47:43,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:47:43,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:47:43,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:47:43,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:47:45,248.248 INFO    ] ================================================
[2026-06-05 12:47:45,264.264 INFO    ] Launching Daemon at Fri Jun  5 12:47:45 IST 2026
[2026-06-05 12:47:45,275.275 INFO    ] ================================================
[2026-06-05 12:47:45,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:47:45
[2026-06-05 12:47:46,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:47:46,674.674 INFO    ] Initializing speech engine...
[2026-06-05 12:47:46,687.687 INFO    ] 2026-06-05 12:47:46
[2026-06-05 12:47:46,950.950 INFO    ] 2026-06-05 12:47:46
[2026-06-05 12:47:46,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:47:47,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:47:47,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:47:47,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:47:47,430.430 INFO    ] time= 05/06/2026 12:47:47
[2026-06-05 12:47:47,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:47:47,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:47:47,633.633 INFO    ] No existing commands found in stream
[2026-06-05 12:47:52,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:47:52,658.658 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 12:47:55,616.616 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:47:55,619.619 INFO    ] Checking for system updates...
[2026-06-05 12:47:55,655.655 INFO    ] 200
[2026-06-05 12:47:55,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:55,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:47:55,712.712 INFO    ] No update needed
[2026-06-05 12:47:55,715.715 INFO    ] Checking for camera pi updates...
[2026-06-05 12:47:55,748.748 INFO    ] 200
[2026-06-05 12:47:55,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:47:55,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:47:55,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:47:55,854.854 INFO    ] No camera update needed
[2026-06-05 12:47:55,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:47:55,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:47:55,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:47:55,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:47:57,910.910 INFO    ] ================================================
[2026-06-05 12:47:57,931.931 INFO    ] Launching Daemon at Fri Jun  5 12:47:57 IST 2026
[2026-06-05 12:47:57,942.942 INFO    ] ================================================
[2026-06-05 12:47:58,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:47:58
[2026-06-05 12:47:59,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:47:59,360.360 INFO    ] Initializing speech engine...
[2026-06-05 12:47:59,369.369 INFO    ] 2026-06-05 12:47:59
[2026-06-05 12:47:59,616.616 INFO    ] 2026-06-05 12:47:59
[2026-06-05 12:47:59,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:47:59,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:47:59,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:47:59,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:47:59,988.988 INFO    ] time= 05/06/2026 12:47:59
[2026-06-05 12:47:59,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:48:00,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:48:00,184.184 INFO    ] No existing commands found in stream
[2026-06-05 12:48:05,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:48:05,198.198 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 12:48:06,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:48:06,380.380 INFO    ] Checking for system updates...
[2026-06-05 12:48:06,421.421 INFO    ] 200
[2026-06-05 12:48:06,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:06,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:48:06,481.481 INFO    ] No update needed
[2026-06-05 12:48:06,484.484 INFO    ] Checking for camera pi updates...
[2026-06-05 12:48:06,519.519 INFO    ] 200
[2026-06-05 12:48:06,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:06,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:48:06,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:48:06,615.615 INFO    ] No camera update needed
[2026-06-05 12:48:06,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:48:06,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:48:06,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:48:06,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:48:08,674.674 INFO    ] ================================================
[2026-06-05 12:48:08,691.691 INFO    ] Launching Daemon at Fri Jun  5 12:48:08 IST 2026
[2026-06-05 12:48:08,703.703 INFO    ] ================================================
[2026-06-05 12:48:09,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:48:09
[2026-06-05 12:48:09,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:48:10,138.138 INFO    ] Initializing speech engine...
[2026-06-05 12:48:10,147.147 INFO    ] 2026-06-05 12:48:10
[2026-06-05 12:48:10,398.398 INFO    ] 2026-06-05 12:48:10
[2026-06-05 12:48:10,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:48:10,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:48:10,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:48:10,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:48:10,778.778 INFO    ] time= 05/06/2026 12:48:10
[2026-06-05 12:48:10,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:48:10,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:48:10,955.955 INFO    ] No existing commands found in stream
[2026-06-05 12:48:15,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:48:15,988.988 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 12:48:19,109.109 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:48:19,112.112 INFO    ] Checking for system updates...
[2026-06-05 12:48:19,151.151 INFO    ] 200
[2026-06-05 12:48:19,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:19,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:48:19,209.209 INFO    ] No update needed
[2026-06-05 12:48:19,211.211 INFO    ] Checking for camera pi updates...
[2026-06-05 12:48:19,245.245 INFO    ] 200
[2026-06-05 12:48:19,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:19,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:48:19,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:48:19,342.342 INFO    ] No camera update needed
[2026-06-05 12:48:19,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:48:19,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:48:19,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:48:19,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:48:21,398.398 INFO    ] ================================================
[2026-06-05 12:48:21,413.413 INFO    ] Launching Daemon at Fri Jun  5 12:48:21 IST 2026
[2026-06-05 12:48:21,424.424 INFO    ] ================================================
[2026-06-05 12:48:22,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:48:22
[2026-06-05 12:48:22,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:48:23,000.000 INFO    ] Initializing speech engine...
[2026-06-05 12:48:23,007.007 INFO    ] 2026-06-05 12:48:23
[2026-06-05 12:48:23,281.281 INFO    ] 2026-06-05 12:48:23
[2026-06-05 12:48:23,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:48:23,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:48:23,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:48:23,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:48:23,839.839 INFO    ] time= 05/06/2026 12:48:23
[2026-06-05 12:48:23,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:48:23,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:48:24,276.276 INFO    ] No existing commands found in stream
[2026-06-05 12:48:29,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:48:29,298.298 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 12:48:33,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:48:33,287.287 INFO    ] Checking for system updates...
[2026-06-05 12:48:33,325.325 INFO    ] 200
[2026-06-05 12:48:33,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:33,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:48:33,384.384 INFO    ] No update needed
[2026-06-05 12:48:33,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 12:48:33,421.421 INFO    ] 200
[2026-06-05 12:48:33,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:33,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:48:33,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:48:33,514.514 INFO    ] No camera update needed
[2026-06-05 12:48:33,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:48:33,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:48:33,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:48:33,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:48:35,569.569 INFO    ] ================================================
[2026-06-05 12:48:35,583.583 INFO    ] Launching Daemon at Fri Jun  5 12:48:35 IST 2026
[2026-06-05 12:48:35,594.594 INFO    ] ================================================
[2026-06-05 12:48:36,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:48:36
[2026-06-05 12:48:36,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:48:37,048.048 INFO    ] Initializing speech engine...
[2026-06-05 12:48:37,073.073 INFO    ] 2026-06-05 12:48:37
[2026-06-05 12:48:37,341.341 INFO    ] 2026-06-05 12:48:37
[2026-06-05 12:48:37,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:48:38,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:48:38,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:48:38,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:48:38,443.443 INFO    ] time= 05/06/2026 12:48:38
[2026-06-05 12:48:38,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:48:38,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:48:38,574.574 INFO    ] No existing commands found in stream
[2026-06-05 12:48:43,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:48:43,601.601 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 12:48:47,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:48:47,024.024 INFO    ] Checking for system updates...
[2026-06-05 12:48:47,065.065 INFO    ] 200
[2026-06-05 12:48:47,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:47,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:48:47,124.124 INFO    ] No update needed
[2026-06-05 12:48:47,126.126 INFO    ] Checking for camera pi updates...
[2026-06-05 12:48:47,160.160 INFO    ] 200
[2026-06-05 12:48:47,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:47,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:48:47,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:48:47,252.252 INFO    ] No camera update needed
[2026-06-05 12:48:47,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:48:47,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:48:47,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:48:47,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:48:49,307.307 INFO    ] ================================================
[2026-06-05 12:48:49,322.322 INFO    ] Launching Daemon at Fri Jun  5 12:48:49 IST 2026
[2026-06-05 12:48:49,332.332 INFO    ] ================================================
[2026-06-05 12:48:49,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:48:49
[2026-06-05 12:48:50,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:48:50,769.769 INFO    ] Initializing speech engine...
[2026-06-05 12:48:50,776.776 INFO    ] 2026-06-05 12:48:50
[2026-06-05 12:48:51,034.034 INFO    ] 2026-06-05 12:48:51
[2026-06-05 12:48:51,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:48:51,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:48:51,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:48:51,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:48:51,391.391 INFO    ] time= 05/06/2026 12:48:51
[2026-06-05 12:48:51,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:48:51,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:48:51,570.570 INFO    ] No existing commands found in stream
[2026-06-05 12:48:56,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:48:56,602.602 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 12:48:57,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:48:57,868.868 INFO    ] Checking for system updates...
[2026-06-05 12:48:57,904.904 INFO    ] 200
[2026-06-05 12:48:57,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:57,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:48:57,963.963 INFO    ] No update needed
[2026-06-05 12:48:57,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 12:48:58,000.000 INFO    ] 200
[2026-06-05 12:48:58,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:48:58,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:48:58,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:48:58,108.108 INFO    ] No camera update needed
[2026-06-05 12:48:58,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:48:58,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:48:58,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:48:58,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:49:00,164.164 INFO    ] ================================================
[2026-06-05 12:49:00,184.184 INFO    ] Launching Daemon at Fri Jun  5 12:49:00 IST 2026
[2026-06-05 12:49:00,199.199 INFO    ] ================================================
[2026-06-05 12:49:00,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:49:00
[2026-06-05 12:49:01,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:49:01,695.695 INFO    ] Initializing speech engine...
[2026-06-05 12:49:01,699.699 INFO    ] 2026-06-05 12:49:01
[2026-06-05 12:49:02,126.126 INFO    ] 2026-06-05 12:49:02
[2026-06-05 12:49:02,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:49:02,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:49:02,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:49:02,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:49:02,600.600 INFO    ] time= 05/06/2026 12:49:02
[2026-06-05 12:49:02,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:49:02,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:49:02,826.826 INFO    ] No existing commands found in stream
[2026-06-05 12:49:07,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:49:07,859.859 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 12:49:11,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:49:11,778.778 INFO    ] Checking for system updates...
[2026-06-05 12:49:11,814.814 INFO    ] 200
[2026-06-05 12:49:11,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:49:11,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:49:11,872.872 INFO    ] No update needed
[2026-06-05 12:49:11,874.874 INFO    ] Checking for camera pi updates...
[2026-06-05 12:49:11,911.911 INFO    ] 200
[2026-06-05 12:49:11,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:49:11,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:49:12,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:49:12,103.103 INFO    ] No camera update needed
[2026-06-05 12:49:12,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:49:12,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:49:12,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:49:12,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:49:14,158.158 INFO    ] ================================================
[2026-06-05 12:49:14,173.173 INFO    ] Launching Daemon at Fri Jun  5 12:49:14 IST 2026
[2026-06-05 12:49:14,184.184 INFO    ] ================================================
[2026-06-05 12:49:14,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:49:14
[2026-06-05 12:49:15,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:49:15,707.707 INFO    ] Initializing speech engine...
[2026-06-05 12:49:15,714.714 INFO    ] 2026-06-05 12:49:15
[2026-06-05 12:49:15,991.991 INFO    ] 2026-06-05 12:49:15
[2026-06-05 12:49:16,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:49:16,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:49:16,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:49:16,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:49:16,471.471 INFO    ] time= 05/06/2026 12:49:16
[2026-06-05 12:49:16,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:49:16,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:49:16,676.676 INFO    ] No existing commands found in stream
[2026-06-05 12:49:21,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:49:21,698.698 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 12:49:24,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:49:24,379.379 INFO    ] Checking for system updates...
[2026-06-05 12:49:24,416.416 INFO    ] 200
[2026-06-05 12:49:24,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:49:24,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:49:24,474.474 INFO    ] No update needed
[2026-06-05 12:49:24,476.476 INFO    ] Checking for camera pi updates...
[2026-06-05 12:49:24,510.510 INFO    ] 200
[2026-06-05 12:49:24,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:49:24,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:49:24,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:49:24,610.610 INFO    ] No camera update needed
[2026-06-05 12:49:24,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:49:24,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:49:24,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:49:24,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:49:26,666.666 INFO    ] ================================================
[2026-06-05 12:49:26,681.681 INFO    ] Launching Daemon at Fri Jun  5 12:49:26 IST 2026
[2026-06-05 12:49:26,691.691 INFO    ] ================================================
[2026-06-05 12:49:27,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:49:27
[2026-06-05 12:49:27,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:49:28,097.097 INFO    ] Initializing speech engine...
[2026-06-05 12:49:28,105.105 INFO    ] 2026-06-05 12:49:28
[2026-06-05 12:49:28,398.398 INFO    ] 2026-06-05 12:49:28
[2026-06-05 12:49:28,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:49:28,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:49:28,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:49:28,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:49:28,790.790 INFO    ] time= 05/06/2026 12:49:28
[2026-06-05 12:49:28,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:49:28,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:49:28,899.899 INFO    ] No existing commands found in stream
[2026-06-05 12:49:33,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:49:33,928.928 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 12:49:38,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:49:38,018.018 INFO    ] Checking for system updates...
[2026-06-05 12:49:38,055.055 INFO    ] 200
[2026-06-05 12:49:38,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:49:38,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:49:38,114.114 INFO    ] No update needed
[2026-06-05 12:49:38,117.117 INFO    ] Checking for camera pi updates...
[2026-06-05 12:49:38,151.151 INFO    ] 200
[2026-06-05 12:49:38,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:49:38,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:49:38,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:49:38,251.251 INFO    ] No camera update needed
[2026-06-05 12:49:38,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:49:38,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:49:38,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:49:38,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:49:40,306.306 INFO    ] ================================================
[2026-06-05 12:49:40,322.322 INFO    ] Launching Daemon at Fri Jun  5 12:49:40 IST 2026
[2026-06-05 12:49:40,332.332 INFO    ] ================================================
[2026-06-05 12:49:40,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:49:40
[2026-06-05 12:49:41,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:49:41,754.754 INFO    ] Initializing speech engine...
[2026-06-05 12:49:41,770.770 INFO    ] 2026-06-05 12:49:41
[2026-06-05 12:49:42,054.054 INFO    ] 2026-06-05 12:49:42
[2026-06-05 12:49:42,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:49:42,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:49:42,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:49:42,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:49:42,469.469 INFO    ] time= 05/06/2026 12:49:42
[2026-06-05 12:49:42,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:49:42,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:49:42,630.630 INFO    ] No existing commands found in stream
[2026-06-05 12:49:47,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:49:47,657.657 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 12:49:51,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:49:51,095.095 INFO    ] Checking for system updates...
[2026-06-05 12:49:51,132.132 INFO    ] 200
[2026-06-05 12:49:51,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:49:51,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:49:51,190.190 INFO    ] No update needed
[2026-06-05 12:49:51,192.192 INFO    ] Checking for camera pi updates...
[2026-06-05 12:49:51,229.229 INFO    ] 200
[2026-06-05 12:49:51,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:49:51,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:49:51,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:49:51,327.327 INFO    ] No camera update needed
[2026-06-05 12:49:51,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:49:51,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:49:51,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:49:51,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:49:53,382.382 INFO    ] ================================================
[2026-06-05 12:49:53,397.397 INFO    ] Launching Daemon at Fri Jun  5 12:49:53 IST 2026
[2026-06-05 12:49:53,407.407 INFO    ] ================================================
[2026-06-05 12:49:54,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:49:54
[2026-06-05 12:49:54,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:49:54,984.984 INFO    ] Initializing speech engine...
[2026-06-05 12:49:54,995.995 INFO    ] 2026-06-05 12:49:54
[2026-06-05 12:49:55,272.272 INFO    ] 2026-06-05 12:49:55
[2026-06-05 12:49:55,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:49:55,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:49:55,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:49:55,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:49:55,833.833 INFO    ] time= 05/06/2026 12:49:55
[2026-06-05 12:49:55,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:49:55,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:49:55,980.980 INFO    ] No existing commands found in stream
[2026-06-05 12:50:01,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:50:01,003.003 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 12:50:02,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:50:02,083.083 INFO    ] Checking for system updates...
[2026-06-05 12:50:02,130.130 INFO    ] 200
[2026-06-05 12:50:02,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:02,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:50:02,199.199 INFO    ] No update needed
[2026-06-05 12:50:02,202.202 INFO    ] Checking for camera pi updates...
[2026-06-05 12:50:02,241.241 INFO    ] 200
[2026-06-05 12:50:02,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:02,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:50:02,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:50:02,418.418 INFO    ] No camera update needed
[2026-06-05 12:50:02,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:50:02,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:50:02,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:50:02,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:50:04,478.478 INFO    ] ================================================
[2026-06-05 12:50:04,493.493 INFO    ] Launching Daemon at Fri Jun  5 12:50:04 IST 2026
[2026-06-05 12:50:04,504.504 INFO    ] ================================================
[2026-06-05 12:50:05,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:50:05
[2026-06-05 12:50:05,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:50:06,175.175 INFO    ] Initializing speech engine...
[2026-06-05 12:50:06,184.184 INFO    ] 2026-06-05 12:50:06
[2026-06-05 12:50:06,463.463 INFO    ] 2026-06-05 12:50:06
[2026-06-05 12:50:06,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:50:06,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:50:06,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:50:07,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:50:07,124.124 INFO    ] time= 05/06/2026 12:50:07
[2026-06-05 12:50:07,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:50:07,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:50:07,528.528 INFO    ] No existing commands found in stream
[2026-06-05 12:50:12,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:50:12,560.560 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 12:50:14,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:50:14,270.270 INFO    ] Checking for system updates...
[2026-06-05 12:50:14,311.311 INFO    ] 200
[2026-06-05 12:50:14,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:14,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:50:14,379.379 INFO    ] No update needed
[2026-06-05 12:50:14,382.382 INFO    ] Checking for camera pi updates...
[2026-06-05 12:50:14,418.418 INFO    ] 200
[2026-06-05 12:50:14,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:14,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:50:14,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:50:14,527.527 INFO    ] No camera update needed
[2026-06-05 12:50:14,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:50:14,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:50:14,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:50:14,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:50:16,586.586 INFO    ] ================================================
[2026-06-05 12:50:16,601.601 INFO    ] Launching Daemon at Fri Jun  5 12:50:16 IST 2026
[2026-06-05 12:50:16,612.612 INFO    ] ================================================
[2026-06-05 12:50:17,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:50:17
[2026-06-05 12:50:17,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:50:18,063.063 INFO    ] Initializing speech engine...
[2026-06-05 12:50:18,069.069 INFO    ] 2026-06-05 12:50:18
[2026-06-05 12:50:18,329.329 INFO    ] 2026-06-05 12:50:18
[2026-06-05 12:50:18,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:50:18,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:50:18,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:50:18,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:50:18,914.914 INFO    ] time= 05/06/2026 12:50:18
[2026-06-05 12:50:18,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:50:18,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:50:19,269.269 INFO    ] No existing commands found in stream
[2026-06-05 12:50:24,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:50:24,294.294 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 12:50:28,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:50:28,061.061 INFO    ] Checking for system updates...
[2026-06-05 12:50:28,099.099 INFO    ] 200
[2026-06-05 12:50:28,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:28,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:50:28,161.161 INFO    ] No update needed
[2026-06-05 12:50:28,164.164 INFO    ] Checking for camera pi updates...
[2026-06-05 12:50:28,200.200 INFO    ] 200
[2026-06-05 12:50:28,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:28,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:50:28,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:50:28,295.295 INFO    ] No camera update needed
[2026-06-05 12:50:28,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:50:28,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:50:28,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:50:28,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:50:30,356.356 INFO    ] ================================================
[2026-06-05 12:50:30,371.371 INFO    ] Launching Daemon at Fri Jun  5 12:50:30 IST 2026
[2026-06-05 12:50:30,382.382 INFO    ] ================================================
[2026-06-05 12:50:31,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:50:31
[2026-06-05 12:50:31,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:50:32,098.098 INFO    ] Initializing speech engine...
[2026-06-05 12:50:32,109.109 INFO    ] 2026-06-05 12:50:32
[2026-06-05 12:50:32,394.394 INFO    ] 2026-06-05 12:50:32
[2026-06-05 12:50:32,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:50:32,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:50:32,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:50:32,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:50:32,882.882 INFO    ] time= 05/06/2026 12:50:32
[2026-06-05 12:50:32,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:50:32,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:50:33,103.103 INFO    ] No existing commands found in stream
[2026-06-05 12:50:38,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:50:38,130.130 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 12:50:39,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:50:39,892.892 INFO    ] Checking for system updates...
[2026-06-05 12:50:39,934.934 INFO    ] 200
[2026-06-05 12:50:39,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:39,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:50:39,996.996 INFO    ] No update needed
[2026-06-05 12:50:39,999.999 INFO    ] Checking for camera pi updates...
[2026-06-05 12:50:40,033.033 INFO    ] 200
[2026-06-05 12:50:40,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:40,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:50:40,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:50:40,123.123 INFO    ] No camera update needed
[2026-06-05 12:50:40,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:50:40,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:50:40,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:50:40,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:50:42,178.178 INFO    ] ================================================
[2026-06-05 12:50:42,193.193 INFO    ] Launching Daemon at Fri Jun  5 12:50:42 IST 2026
[2026-06-05 12:50:42,204.204 INFO    ] ================================================
[2026-06-05 12:50:42,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:50:42
[2026-06-05 12:50:43,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:50:43,659.659 INFO    ] Initializing speech engine...
[2026-06-05 12:50:43,668.668 INFO    ] 2026-06-05 12:50:43
[2026-06-05 12:50:43,968.968 INFO    ] 2026-06-05 12:50:43
[2026-06-05 12:50:44,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:50:44,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:50:44,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:50:44,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:50:44,396.396 INFO    ] time= 05/06/2026 12:50:44
[2026-06-05 12:50:44,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:50:44,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:50:44,484.484 INFO    ] No existing commands found in stream
[2026-06-05 12:50:49,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:50:49,500.500 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 12:50:52,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:50:52,717.717 INFO    ] Checking for system updates...
[2026-06-05 12:50:52,753.753 INFO    ] 200
[2026-06-05 12:50:52,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:52,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:50:52,812.812 INFO    ] No update needed
[2026-06-05 12:50:52,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 12:50:52,852.852 INFO    ] 200
[2026-06-05 12:50:52,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:50:52,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:50:52,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:50:52,956.956 INFO    ] No camera update needed
[2026-06-05 12:50:52,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:50:52,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:50:52,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:50:52,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:50:55,010.010 INFO    ] ================================================
[2026-06-05 12:50:55,026.026 INFO    ] Launching Daemon at Fri Jun  5 12:50:55 IST 2026
[2026-06-05 12:50:55,037.037 INFO    ] ================================================
[2026-06-05 12:50:55,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:50:55
[2026-06-05 12:50:56,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:50:56,477.477 INFO    ] Initializing speech engine...
[2026-06-05 12:50:56,486.486 INFO    ] 2026-06-05 12:50:56
[2026-06-05 12:50:56,734.734 INFO    ] 2026-06-05 12:50:56
[2026-06-05 12:50:56,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:50:57,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:50:57,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:50:57,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:50:57,208.208 INFO    ] time= 05/06/2026 12:50:57
[2026-06-05 12:50:57,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:50:57,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:50:57,360.360 INFO    ] No existing commands found in stream
[2026-06-05 12:51:02,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:51:02,383.383 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 12:51:06,279.279 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:51:06,282.282 INFO    ] Checking for system updates...
[2026-06-05 12:51:06,319.319 INFO    ] 200
[2026-06-05 12:51:06,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:06,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:51:06,377.377 INFO    ] No update needed
[2026-06-05 12:51:06,380.380 INFO    ] Checking for camera pi updates...
[2026-06-05 12:51:06,414.414 INFO    ] 200
[2026-06-05 12:51:06,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:06,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:51:06,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:51:06,520.520 INFO    ] No camera update needed
[2026-06-05 12:51:06,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:51:06,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:51:06,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:51:06,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:51:08,576.576 INFO    ] ================================================
[2026-06-05 12:51:08,592.592 INFO    ] Launching Daemon at Fri Jun  5 12:51:08 IST 2026
[2026-06-05 12:51:08,602.602 INFO    ] ================================================
[2026-06-05 12:51:09,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:51:09
[2026-06-05 12:51:09,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:51:10,007.007 INFO    ] Initializing speech engine...
[2026-06-05 12:51:10,032.032 INFO    ] 2026-06-05 12:51:10
[2026-06-05 12:51:10,305.305 INFO    ] 2026-06-05 12:51:10
[2026-06-05 12:51:10,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:51:10,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:51:10,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:51:10,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:51:10,693.693 INFO    ] time= 05/06/2026 12:51:10
[2026-06-05 12:51:10,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:51:10,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:51:10,826.826 INFO    ] No existing commands found in stream
[2026-06-05 12:51:15,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:51:15,840.840 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 12:51:18,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:51:18,535.535 INFO    ] Checking for system updates...
[2026-06-05 12:51:18,572.572 INFO    ] 200
[2026-06-05 12:51:18,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:18,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:51:18,632.632 INFO    ] No update needed
[2026-06-05 12:51:18,635.635 INFO    ] Checking for camera pi updates...
[2026-06-05 12:51:18,671.671 INFO    ] 200
[2026-06-05 12:51:18,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:18,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:51:18,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:51:18,868.868 INFO    ] No camera update needed
[2026-06-05 12:51:18,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:51:18,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:51:18,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:51:18,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:51:20,925.925 INFO    ] ================================================
[2026-06-05 12:51:20,940.940 INFO    ] Launching Daemon at Fri Jun  5 12:51:20 IST 2026
[2026-06-05 12:51:20,951.951 INFO    ] ================================================
[2026-06-05 12:51:21,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:51:21
[2026-06-05 12:51:22,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:51:22,437.437 INFO    ] Initializing speech engine...
[2026-06-05 12:51:22,448.448 INFO    ] 2026-06-05 12:51:22
[2026-06-05 12:51:22,712.712 INFO    ] 2026-06-05 12:51:22
[2026-06-05 12:51:22,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:51:22,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:51:22,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:51:23,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:51:23,167.167 INFO    ] time= 05/06/2026 12:51:23
[2026-06-05 12:51:23,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:51:23,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:51:23,370.370 INFO    ] No existing commands found in stream
[2026-06-05 12:51:28,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:51:28,401.401 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 12:51:32,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:51:32,632.632 INFO    ] Checking for system updates...
[2026-06-05 12:51:32,672.672 INFO    ] 200
[2026-06-05 12:51:32,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:32,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:51:32,736.736 INFO    ] No update needed
[2026-06-05 12:51:32,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 12:51:32,775.775 INFO    ] 200
[2026-06-05 12:51:32,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:32,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:51:32,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:51:32,879.879 INFO    ] No camera update needed
[2026-06-05 12:51:32,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:51:32,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:51:32,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:51:32,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:51:34,939.939 INFO    ] ================================================
[2026-06-05 12:51:34,955.955 INFO    ] Launching Daemon at Fri Jun  5 12:51:34 IST 2026
[2026-06-05 12:51:34,966.966 INFO    ] ================================================
[2026-06-05 12:51:35,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:51:35
[2026-06-05 12:51:36,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:51:36,403.403 INFO    ] Initializing speech engine...
[2026-06-05 12:51:36,416.416 INFO    ] 2026-06-05 12:51:36
[2026-06-05 12:51:36,680.680 INFO    ] 2026-06-05 12:51:36
[2026-06-05 12:51:36,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:51:36,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:51:36,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:51:37,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:51:37,172.172 INFO    ] time= 05/06/2026 12:51:37
[2026-06-05 12:51:37,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:51:37,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:51:37,396.396 INFO    ] No existing commands found in stream
[2026-06-05 12:51:42,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:51:42,414.414 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 12:51:43,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:51:43,052.052 INFO    ] Checking for system updates...
[2026-06-05 12:51:43,088.088 INFO    ] 200
[2026-06-05 12:51:43,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:43,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:51:43,148.148 INFO    ] No update needed
[2026-06-05 12:51:43,151.151 INFO    ] Checking for camera pi updates...
[2026-06-05 12:51:43,186.186 INFO    ] 200
[2026-06-05 12:51:43,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:43,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:51:43,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:51:43,292.292 INFO    ] No camera update needed
[2026-06-05 12:51:43,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:51:43,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:51:43,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:51:43,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:51:45,351.351 INFO    ] ================================================
[2026-06-05 12:51:45,367.367 INFO    ] Launching Daemon at Fri Jun  5 12:51:45 IST 2026
[2026-06-05 12:51:45,378.378 INFO    ] ================================================
[2026-06-05 12:51:46,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:51:46
[2026-06-05 12:51:46,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:51:47,082.082 INFO    ] Initializing speech engine...
[2026-06-05 12:51:47,094.094 INFO    ] 2026-06-05 12:51:47
[2026-06-05 12:51:47,406.406 INFO    ] 2026-06-05 12:51:47
[2026-06-05 12:51:47,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:51:47,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:51:47,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:51:47,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:51:47,921.921 INFO    ] time= 05/06/2026 12:51:47
[2026-06-05 12:51:47,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:51:47,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:51:48,076.076 INFO    ] No existing commands found in stream
[2026-06-05 12:51:53,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:51:53,097.097 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 12:51:56,678.678 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:51:56,681.681 INFO    ] Checking for system updates...
[2026-06-05 12:51:56,718.718 INFO    ] 200
[2026-06-05 12:51:56,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:56,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:51:56,777.777 INFO    ] No update needed
[2026-06-05 12:51:56,779.779 INFO    ] Checking for camera pi updates...
[2026-06-05 12:51:56,814.814 INFO    ] 200
[2026-06-05 12:51:56,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:51:56,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:51:56,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:51:56,918.918 INFO    ] No camera update needed
[2026-06-05 12:51:56,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:51:56,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:51:56,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:51:56,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:51:58,973.973 INFO    ] ================================================
[2026-06-05 12:51:58,988.988 INFO    ] Launching Daemon at Fri Jun  5 12:51:58 IST 2026
[2026-06-05 12:51:59,999.999 INFO    ] ================================================
[2026-06-05 12:51:59,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:51:59
[2026-06-05 12:52:00,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:52:00,484.484 INFO    ] Initializing speech engine...
[2026-06-05 12:52:00,493.493 INFO    ] 2026-06-05 12:52:00
[2026-06-05 12:52:00,738.738 INFO    ] 2026-06-05 12:52:00
[2026-06-05 12:52:00,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:52:00,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:52:00,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:52:01,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:52:01,119.119 INFO    ] time= 05/06/2026 12:52:01
[2026-06-05 12:52:01,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:52:01,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:52:01,199.199 INFO    ] No existing commands found in stream
[2026-06-05 12:52:06,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:52:06,240.240 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 12:52:07,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:52:07,213.213 INFO    ] Checking for system updates...
[2026-06-05 12:52:07,250.250 INFO    ] 200
[2026-06-05 12:52:07,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:52:07,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:52:07,309.309 INFO    ] No update needed
[2026-06-05 12:52:07,312.312 INFO    ] Checking for camera pi updates...
[2026-06-05 12:52:07,346.346 INFO    ] 200
[2026-06-05 12:52:07,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:52:07,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:52:07,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:52:07,448.448 INFO    ] No camera update needed
[2026-06-05 12:52:07,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:52:07,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:52:07,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:52:07,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:52:09,514.514 INFO    ] ================================================
[2026-06-05 12:52:09,529.529 INFO    ] Launching Daemon at Fri Jun  5 12:52:09 IST 2026
[2026-06-05 12:52:09,540.540 INFO    ] ================================================
[2026-06-05 12:52:10,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:52:10
[2026-06-05 12:52:10,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:52:11,207.207 INFO    ] Initializing speech engine...
[2026-06-05 12:52:11,215.215 INFO    ] 2026-06-05 12:52:11
[2026-06-05 12:52:11,463.463 INFO    ] 2026-06-05 12:52:11
[2026-06-05 12:52:11,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:52:11,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:52:11,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:52:11,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:52:11,965.965 INFO    ] time= 05/06/2026 12:52:11
[2026-06-05 12:52:12,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:52:12,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:52:12,123.123 INFO    ] No existing commands found in stream
[2026-06-05 12:52:17,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:52:17,163.163 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 12:52:21,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:52:21,470.470 INFO    ] Checking for system updates...
[2026-06-05 12:52:21,507.507 INFO    ] 200
[2026-06-05 12:52:21,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:52:21,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:52:21,566.566 INFO    ] No update needed
[2026-06-05 12:52:21,569.569 INFO    ] Checking for camera pi updates...
[2026-06-05 12:52:21,603.603 INFO    ] 200
[2026-06-05 12:52:21,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:52:21,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:52:21,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:52:21,709.709 INFO    ] No camera update needed
[2026-06-05 12:52:21,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:52:21,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:52:21,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:52:21,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:52:23,765.765 INFO    ] ================================================
[2026-06-05 12:52:23,781.781 INFO    ] Launching Daemon at Fri Jun  5 12:52:23 IST 2026
[2026-06-05 12:52:23,792.792 INFO    ] ================================================
[2026-06-05 12:52:24,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:52:24
[2026-06-05 12:52:24,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:52:25,219.219 INFO    ] Initializing speech engine...
[2026-06-05 12:52:25,228.228 INFO    ] 2026-06-05 12:52:25
[2026-06-05 12:52:25,476.476 INFO    ] 2026-06-05 12:52:25
[2026-06-05 12:52:25,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:52:25,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:52:25,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:52:25,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:52:25,952.952 INFO    ] time= 05/06/2026 12:52:25
[2026-06-05 12:52:26,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:52:26,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:52:26,182.182 INFO    ] No existing commands found in stream
[2026-06-05 12:52:31,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:52:31,205.205 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 12:52:36,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:52:36,455.455 INFO    ] Checking for system updates...
[2026-06-05 12:52:36,492.492 INFO    ] 200
[2026-06-05 12:52:36,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:52:36,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:52:36,554.554 INFO    ] No update needed
[2026-06-05 12:52:36,557.557 INFO    ] Checking for camera pi updates...
[2026-06-05 12:52:36,591.591 INFO    ] 200
[2026-06-05 12:52:36,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:52:36,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:52:36,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:52:36,670.670 INFO    ] No camera update needed
[2026-06-05 12:52:36,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:52:36,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:52:36,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:52:36,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:52:38,727.727 INFO    ] ================================================
[2026-06-05 12:52:38,742.742 INFO    ] Launching Daemon at Fri Jun  5 12:52:38 IST 2026
[2026-06-05 12:52:38,752.752 INFO    ] ================================================
[2026-06-05 12:52:39,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:52:39
[2026-06-05 12:52:40,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:52:40,329.329 INFO    ] Initializing speech engine...
[2026-06-05 12:52:40,335.335 INFO    ] 2026-06-05 12:52:40
[2026-06-05 12:52:40,624.624 INFO    ] 2026-06-05 12:52:40
[2026-06-05 12:52:40,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:52:40,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:52:40,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:52:41,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:52:41,173.173 INFO    ] time= 05/06/2026 12:52:41
[2026-06-05 12:52:41,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:52:41,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:52:41,318.318 INFO    ] No existing commands found in stream
[2026-06-05 12:52:46,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:52:46,347.347 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 12:52:50,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:52:50,729.729 INFO    ] Checking for system updates...
[2026-06-05 12:52:50,766.766 INFO    ] 200
[2026-06-05 12:52:50,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:52:50,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:52:50,828.828 INFO    ] No update needed
[2026-06-05 12:52:50,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 12:52:50,864.864 INFO    ] 200
[2026-06-05 12:52:50,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:52:50,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:52:50,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:52:50,962.962 INFO    ] No camera update needed
[2026-06-05 12:52:50,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:52:50,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:52:50,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:52:50,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:52:53,019.019 INFO    ] ================================================
[2026-06-05 12:52:53,034.034 INFO    ] Launching Daemon at Fri Jun  5 12:52:53 IST 2026
[2026-06-05 12:52:53,044.044 INFO    ] ================================================
[2026-06-05 12:52:53,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:52:53
[2026-06-05 12:52:54,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:52:54,482.482 INFO    ] Initializing speech engine...
[2026-06-05 12:52:54,491.491 INFO    ] 2026-06-05 12:52:54
[2026-06-05 12:52:54,752.752 INFO    ] 2026-06-05 12:52:54
[2026-06-05 12:52:54,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:52:55,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:52:55,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:52:55,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:52:55,218.218 INFO    ] time= 05/06/2026 12:52:55
[2026-06-05 12:52:55,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:52:55,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:52:55,440.440 INFO    ] No existing commands found in stream
[2026-06-05 12:53:00,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:53:00,468.468 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 12:53:01,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:53:01,919.919 INFO    ] Checking for system updates...
[2026-06-05 12:53:01,969.969 INFO    ] 200
[2026-06-05 12:53:01,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:02,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:53:02,049.049 INFO    ] No update needed
[2026-06-05 12:53:02,052.052 INFO    ] Checking for camera pi updates...
[2026-06-05 12:53:02,119.119 INFO    ] 200
[2026-06-05 12:53:02,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:02,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:53:02,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:53:02,299.299 INFO    ] No camera update needed
[2026-06-05 12:53:02,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:53:02,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:53:02,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:53:02,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:53:04,360.360 INFO    ] ================================================
[2026-06-05 12:53:04,375.375 INFO    ] Launching Daemon at Fri Jun  5 12:53:04 IST 2026
[2026-06-05 12:53:04,386.386 INFO    ] ================================================
[2026-06-05 12:53:04,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:53:04
[2026-06-05 12:53:05,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:53:05,931.931 INFO    ] Initializing speech engine...
[2026-06-05 12:53:05,939.939 INFO    ] 2026-06-05 12:53:05
[2026-06-05 12:53:06,213.213 INFO    ] 2026-06-05 12:53:06
[2026-06-05 12:53:06,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:53:06,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:53:06,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:53:06,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:53:06,702.702 INFO    ] time= 05/06/2026 12:53:06
[2026-06-05 12:53:06,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:53:06,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:53:06,849.849 INFO    ] No existing commands found in stream
[2026-06-05 12:53:11,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:53:11,889.889 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 12:53:15,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:53:15,231.231 INFO    ] Checking for system updates...
[2026-06-05 12:53:15,269.269 INFO    ] 200
[2026-06-05 12:53:15,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:15,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:53:15,330.330 INFO    ] No update needed
[2026-06-05 12:53:15,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 12:53:15,369.369 INFO    ] 200
[2026-06-05 12:53:15,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:15,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:53:15,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:53:15,472.472 INFO    ] No camera update needed
[2026-06-05 12:53:15,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:53:15,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:53:15,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:53:15,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:53:17,530.530 INFO    ] ================================================
[2026-06-05 12:53:17,545.545 INFO    ] Launching Daemon at Fri Jun  5 12:53:17 IST 2026
[2026-06-05 12:53:17,557.557 INFO    ] ================================================
[2026-06-05 12:53:18,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:53:18
[2026-06-05 12:53:18,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:53:18,955.955 INFO    ] Initializing speech engine...
[2026-06-05 12:53:18,964.964 INFO    ] 2026-06-05 12:53:18
[2026-06-05 12:53:19,260.260 INFO    ] 2026-06-05 12:53:19
[2026-06-05 12:53:19,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:53:19,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:53:19,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:53:19,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:53:19,647.647 INFO    ] time= 05/06/2026 12:53:19
[2026-06-05 12:53:19,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:53:19,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:53:19,773.773 INFO    ] No existing commands found in stream
[2026-06-05 12:53:24,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:53:24,789.789 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 12:53:26,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:53:26,528.528 INFO    ] Checking for system updates...
[2026-06-05 12:53:26,563.563 INFO    ] 200
[2026-06-05 12:53:26,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:26,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:53:26,622.622 INFO    ] No update needed
[2026-06-05 12:53:26,625.625 INFO    ] Checking for camera pi updates...
[2026-06-05 12:53:26,659.659 INFO    ] 200
[2026-06-05 12:53:26,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:26,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:53:26,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:53:26,847.847 INFO    ] No camera update needed
[2026-06-05 12:53:26,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:53:26,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:53:26,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:53:26,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:53:28,903.903 INFO    ] ================================================
[2026-06-05 12:53:28,919.919 INFO    ] Launching Daemon at Fri Jun  5 12:53:28 IST 2026
[2026-06-05 12:53:28,930.930 INFO    ] ================================================
[2026-06-05 12:53:29,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:53:29
[2026-06-05 12:53:30,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:53:30,351.351 INFO    ] Initializing speech engine...
[2026-06-05 12:53:30,359.359 INFO    ] 2026-06-05 12:53:30
[2026-06-05 12:53:30,636.636 INFO    ] 2026-06-05 12:53:30
[2026-06-05 12:53:30,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:53:30,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:53:30,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:53:31,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:53:31,367.367 INFO    ] time= 05/06/2026 12:53:31
[2026-06-05 12:53:31,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:53:31,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:53:31,527.527 INFO    ] No existing commands found in stream
[2026-06-05 12:53:36,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:53:36,560.560 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 12:53:40,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:53:40,946.946 INFO    ] Checking for system updates...
[2026-06-05 12:53:40,982.982 INFO    ] 200
[2026-06-05 12:53:40,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:41,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:53:41,051.051 INFO    ] No update needed
[2026-06-05 12:53:41,053.053 INFO    ] Checking for camera pi updates...
[2026-06-05 12:53:41,090.090 INFO    ] 200
[2026-06-05 12:53:41,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:41,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:53:41,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:53:41,191.191 INFO    ] No camera update needed
[2026-06-05 12:53:41,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:53:41,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:53:41,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:53:41,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:53:43,250.250 INFO    ] ================================================
[2026-06-05 12:53:43,264.264 INFO    ] Launching Daemon at Fri Jun  5 12:53:43 IST 2026
[2026-06-05 12:53:43,275.275 INFO    ] ================================================
[2026-06-05 12:53:43,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:53:43
[2026-06-05 12:53:44,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:53:44,780.780 INFO    ] Initializing speech engine...
[2026-06-05 12:53:44,789.789 INFO    ] 2026-06-05 12:53:44
[2026-06-05 12:53:45,063.063 INFO    ] 2026-06-05 12:53:45
[2026-06-05 12:53:45,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:53:45,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:53:45,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:53:45,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:53:45,555.555 INFO    ] time= 05/06/2026 12:53:45
[2026-06-05 12:53:45,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:53:45,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:53:45,771.771 INFO    ] No existing commands found in stream
[2026-06-05 12:53:50,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:53:50,794.794 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 12:53:54,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:53:54,582.582 INFO    ] Checking for system updates...
[2026-06-05 12:53:54,619.619 INFO    ] 200
[2026-06-05 12:53:54,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:54,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:53:54,680.680 INFO    ] No update needed
[2026-06-05 12:53:54,683.683 INFO    ] Checking for camera pi updates...
[2026-06-05 12:53:54,718.718 INFO    ] 200
[2026-06-05 12:53:54,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:53:54,763.763 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:53:54,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:53:54,816.816 INFO    ] No camera update needed
[2026-06-05 12:53:54,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:53:54,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:53:54,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:53:54,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:53:56,874.874 INFO    ] ================================================
[2026-06-05 12:53:56,889.889 INFO    ] Launching Daemon at Fri Jun  5 12:53:56 IST 2026
[2026-06-05 12:53:56,900.900 INFO    ] ================================================
[2026-06-05 12:53:57,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:53:57
[2026-06-05 12:53:58,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:53:58,520.520 INFO    ] Initializing speech engine...
[2026-06-05 12:53:58,531.531 INFO    ] 2026-06-05 12:53:58
[2026-06-05 12:53:58,809.809 INFO    ] 2026-06-05 12:53:58
[2026-06-05 12:53:58,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:53:59,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:53:59,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:53:59,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:53:59,358.358 INFO    ] time= 05/06/2026 12:53:59
[2026-06-05 12:53:59,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:53:59,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:53:59,513.513 INFO    ] No existing commands found in stream
[2026-06-05 12:54:04,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:54:04,530.530 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 12:54:07,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:54:07,598.598 INFO    ] Checking for system updates...
[2026-06-05 12:54:07,637.637 INFO    ] 200
[2026-06-05 12:54:07,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:07,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:54:07,702.702 INFO    ] No update needed
[2026-06-05 12:54:07,704.704 INFO    ] Checking for camera pi updates...
[2026-06-05 12:54:07,739.739 INFO    ] 200
[2026-06-05 12:54:07,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:07,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:54:07,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:54:07,832.832 INFO    ] No camera update needed
[2026-06-05 12:54:07,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:54:07,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:54:07,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:54:07,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:54:09,889.889 INFO    ] ================================================
[2026-06-05 12:54:09,905.905 INFO    ] Launching Daemon at Fri Jun  5 12:54:09 IST 2026
[2026-06-05 12:54:09,916.916 INFO    ] ================================================
[2026-06-05 12:54:10,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:54:10
[2026-06-05 12:54:11,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:54:11,375.375 INFO    ] Initializing speech engine...
[2026-06-05 12:54:11,389.389 INFO    ] 2026-06-05 12:54:11
[2026-06-05 12:54:11,658.658 INFO    ] 2026-06-05 12:54:11
[2026-06-05 12:54:11,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:54:11,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:54:11,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:54:12,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:54:12,069.069 INFO    ] time= 05/06/2026 12:54:12
[2026-06-05 12:54:12,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:54:12,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:54:12,155.155 INFO    ] No existing commands found in stream
[2026-06-05 12:54:17,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:54:17,183.183 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 12:54:20,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:54:20,481.481 INFO    ] Checking for system updates...
[2026-06-05 12:54:20,521.521 INFO    ] 200
[2026-06-05 12:54:20,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:20,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:54:20,587.587 INFO    ] No update needed
[2026-06-05 12:54:20,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 12:54:20,625.625 INFO    ] 200
[2026-06-05 12:54:20,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:20,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:54:20,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:54:20,723.723 INFO    ] No camera update needed
[2026-06-05 12:54:20,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:54:20,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:54:20,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:54:20,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:54:22,782.782 INFO    ] ================================================
[2026-06-05 12:54:22,798.798 INFO    ] Launching Daemon at Fri Jun  5 12:54:22 IST 2026
[2026-06-05 12:54:22,808.808 INFO    ] ================================================
[2026-06-05 12:54:23,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:54:23
[2026-06-05 12:54:24,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:54:24,340.340 INFO    ] Initializing speech engine...
[2026-06-05 12:54:24,346.346 INFO    ] 2026-06-05 12:54:24
[2026-06-05 12:54:24,617.617 INFO    ] 2026-06-05 12:54:24
[2026-06-05 12:54:24,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:54:24,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:54:24,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:54:25,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:54:25,111.111 INFO    ] time= 05/06/2026 12:54:25
[2026-06-05 12:54:25,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:54:25,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:54:25,341.341 INFO    ] No existing commands found in stream
[2026-06-05 12:54:30,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:54:30,360.360 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 12:54:32,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:54:32,004.004 INFO    ] Checking for system updates...
[2026-06-05 12:54:32,044.044 INFO    ] 200
[2026-06-05 12:54:32,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:32,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:54:32,119.119 INFO    ] No update needed
[2026-06-05 12:54:32,122.122 INFO    ] Checking for camera pi updates...
[2026-06-05 12:54:32,160.160 INFO    ] 200
[2026-06-05 12:54:32,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:32,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:54:32,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:54:32,257.257 INFO    ] No camera update needed
[2026-06-05 12:54:32,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:54:32,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:54:32,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:54:32,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:54:34,320.320 INFO    ] ================================================
[2026-06-05 12:54:34,336.336 INFO    ] Launching Daemon at Fri Jun  5 12:54:34 IST 2026
[2026-06-05 12:54:34,346.346 INFO    ] ================================================
[2026-06-05 12:54:34,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:54:34
[2026-06-05 12:54:35,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:54:35,763.763 INFO    ] Initializing speech engine...
[2026-06-05 12:54:35,769.769 INFO    ] 2026-06-05 12:54:35
[2026-06-05 12:54:36,045.045 INFO    ] 2026-06-05 12:54:36
[2026-06-05 12:54:36,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:54:36,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:54:36,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:54:36,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:54:36,526.526 INFO    ] time= 05/06/2026 12:54:36
[2026-06-05 12:54:36,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:54:36,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:54:36,734.734 INFO    ] No existing commands found in stream
[2026-06-05 12:54:41,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:54:41,768.768 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 12:54:42,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:54:42,218.218 INFO    ] Checking for system updates...
[2026-06-05 12:54:42,254.254 INFO    ] 200
[2026-06-05 12:54:42,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:42,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:54:42,312.312 INFO    ] No update needed
[2026-06-05 12:54:42,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 12:54:42,348.348 INFO    ] 200
[2026-06-05 12:54:42,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:42,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:54:42,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:54:42,444.444 INFO    ] No camera update needed
[2026-06-05 12:54:42,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:54:42,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:54:42,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:54:42,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:54:44,503.503 INFO    ] ================================================
[2026-06-05 12:54:44,527.527 INFO    ] Launching Daemon at Fri Jun  5 12:54:44 IST 2026
[2026-06-05 12:54:44,538.538 INFO    ] ================================================
[2026-06-05 12:54:45,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:54:45
[2026-06-05 12:54:45,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:54:45,999.999 INFO    ] Initializing speech engine...
[2026-06-05 12:54:46,016.016 INFO    ] 2026-06-05 12:54:46
[2026-06-05 12:54:46,287.287 INFO    ] 2026-06-05 12:54:46
[2026-06-05 12:54:46,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:54:46,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:54:46,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:54:46,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:54:46,703.703 INFO    ] time= 05/06/2026 12:54:46
[2026-06-05 12:54:46,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:54:46,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:54:46,787.787 INFO    ] No existing commands found in stream
[2026-06-05 12:54:51,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:54:51,803.803 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 12:54:52,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:54:52,329.329 INFO    ] Checking for system updates...
[2026-06-05 12:54:52,365.365 INFO    ] 200
[2026-06-05 12:54:52,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:52,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:54:52,427.427 INFO    ] No update needed
[2026-06-05 12:54:52,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 12:54:52,463.463 INFO    ] 200
[2026-06-05 12:54:52,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:54:52,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:54:52,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:54:52,553.553 INFO    ] No camera update needed
[2026-06-05 12:54:52,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:54:52,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:54:52,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:54:52,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:54:54,608.608 INFO    ] ================================================
[2026-06-05 12:54:54,623.623 INFO    ] Launching Daemon at Fri Jun  5 12:54:54 IST 2026
[2026-06-05 12:54:54,633.633 INFO    ] ================================================
[2026-06-05 12:54:55,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:54:55
[2026-06-05 12:54:55,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:54:56,242.242 INFO    ] Initializing speech engine...
[2026-06-05 12:54:56,250.250 INFO    ] 2026-06-05 12:54:56
[2026-06-05 12:54:56,537.537 INFO    ] 2026-06-05 12:54:56
[2026-06-05 12:54:56,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:54:56,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:54:56,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:54:56,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:54:56,999.999 INFO    ] time= 05/06/2026 12:54:56
[2026-06-05 12:54:57,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:54:57,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:54:57,237.237 INFO    ] No existing commands found in stream
[2026-06-05 12:55:02,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:55:02,261.261 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 12:55:06,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:55:06,593.593 INFO    ] Checking for system updates...
[2026-06-05 12:55:06,631.631 INFO    ] 200
[2026-06-05 12:55:06,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:06,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:55:06,690.690 INFO    ] No update needed
[2026-06-05 12:55:06,693.693 INFO    ] Checking for camera pi updates...
[2026-06-05 12:55:06,728.728 INFO    ] 200
[2026-06-05 12:55:06,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:06,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:55:06,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:55:06,829.829 INFO    ] No camera update needed
[2026-06-05 12:55:06,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:55:06,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:55:06,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:55:06,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:55:08,889.889 INFO    ] ================================================
[2026-06-05 12:55:08,904.904 INFO    ] Launching Daemon at Fri Jun  5 12:55:08 IST 2026
[2026-06-05 12:55:08,916.916 INFO    ] ================================================
[2026-06-05 12:55:09,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:55:09
[2026-06-05 12:55:10,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:55:10,365.365 INFO    ] Initializing speech engine...
[2026-06-05 12:55:10,376.376 INFO    ] 2026-06-05 12:55:10
[2026-06-05 12:55:10,666.666 INFO    ] 2026-06-05 12:55:10
[2026-06-05 12:55:10,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:55:10,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:55:10,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:55:11,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:55:11,091.091 INFO    ] time= 05/06/2026 12:55:11
[2026-06-05 12:55:11,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:55:11,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:55:11,221.221 INFO    ] No existing commands found in stream
[2026-06-05 12:55:16,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:55:16,249.249 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 12:55:17,007.007 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:55:17,011.011 INFO    ] Checking for system updates...
[2026-06-05 12:55:17,052.052 INFO    ] 200
[2026-06-05 12:55:17,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:17,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:55:17,111.111 INFO    ] No update needed
[2026-06-05 12:55:17,114.114 INFO    ] Checking for camera pi updates...
[2026-06-05 12:55:17,148.148 INFO    ] 200
[2026-06-05 12:55:17,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:17,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:55:17,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:55:17,244.244 INFO    ] No camera update needed
[2026-06-05 12:55:17,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:55:17,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:55:17,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:55:17,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:55:19,302.302 INFO    ] ================================================
[2026-06-05 12:55:19,318.318 INFO    ] Launching Daemon at Fri Jun  5 12:55:19 IST 2026
[2026-06-05 12:55:19,329.329 INFO    ] ================================================
[2026-06-05 12:55:19,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:55:19
[2026-06-05 12:55:20,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:55:20,791.791 INFO    ] Initializing speech engine...
[2026-06-05 12:55:20,813.813 INFO    ] 2026-06-05 12:55:20
[2026-06-05 12:55:21,098.098 INFO    ] 2026-06-05 12:55:21
[2026-06-05 12:55:21,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:55:21,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:55:21,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:55:21,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:55:21,520.520 INFO    ] time= 05/06/2026 12:55:21
[2026-06-05 12:55:21,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:55:21,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:55:21,696.696 INFO    ] No existing commands found in stream
[2026-06-05 12:55:26,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:55:26,730.730 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 12:55:29,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:55:29,696.696 INFO    ] Checking for system updates...
[2026-06-05 12:55:29,734.734 INFO    ] 200
[2026-06-05 12:55:29,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:29,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:55:29,795.795 INFO    ] No update needed
[2026-06-05 12:55:29,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 12:55:29,831.831 INFO    ] 200
[2026-06-05 12:55:29,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:29,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:55:30,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:55:30,025.025 INFO    ] No camera update needed
[2026-06-05 12:55:30,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:55:30,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:55:30,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:55:30,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:55:32,082.082 INFO    ] ================================================
[2026-06-05 12:55:32,114.114 INFO    ] Launching Daemon at Fri Jun  5 12:55:32 IST 2026
[2026-06-05 12:55:32,127.127 INFO    ] ================================================
[2026-06-05 12:55:32,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:55:32
[2026-06-05 12:55:33,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:55:33,606.606 INFO    ] Initializing speech engine...
[2026-06-05 12:55:33,628.628 INFO    ] 2026-06-05 12:55:33
[2026-06-05 12:55:33,891.891 INFO    ] 2026-06-05 12:55:33
[2026-06-05 12:55:33,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:55:35,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:55:35,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:55:36,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:55:36,072.072 INFO    ] time= 05/06/2026 12:55:36
[2026-06-05 12:55:36,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:55:36,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:55:36,170.170 INFO    ] No existing commands found in stream
[2026-06-05 12:55:41,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:55:41,186.186 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 12:55:44,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 12:55:44,401.401 INFO    ] Checking for system updates...
[2026-06-05 12:55:44,437.437 INFO    ] 200
[2026-06-05 12:55:44,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:44,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:55:44,495.495 INFO    ] No update needed
[2026-06-05 12:55:44,498.498 INFO    ] Checking for camera pi updates...
[2026-06-05 12:55:44,538.538 INFO    ] 200
[2026-06-05 12:55:44,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:44,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:55:44,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:55:44,651.651 INFO    ] No camera update needed
[2026-06-05 12:55:44,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:55:44,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:55:44,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:55:44,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:55:46,709.709 INFO    ] ================================================
[2026-06-05 12:55:46,725.725 INFO    ] Launching Daemon at Fri Jun  5 12:55:46 IST 2026
[2026-06-05 12:55:46,736.736 INFO    ] ================================================
[2026-06-05 12:55:47,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:55:47
[2026-06-05 12:55:47,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:55:48,257.257 INFO    ] Initializing speech engine...
[2026-06-05 12:55:48,266.266 INFO    ] 2026-06-05 12:55:48
[2026-06-05 12:55:48,515.515 INFO    ] 2026-06-05 12:55:48
[2026-06-05 12:55:48,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:55:48,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:55:48,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:55:48,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:55:49,021.021 INFO    ] time= 05/06/2026 12:55:48
[2026-06-05 12:55:49,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:55:49,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:55:49,215.215 INFO    ] No existing commands found in stream
[2026-06-05 12:55:54,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:55:54,248.248 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 12:55:56,560.560 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:55:56,563.563 INFO    ] Checking for system updates...
[2026-06-05 12:55:56,600.600 INFO    ] 200
[2026-06-05 12:55:56,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:56,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:55:56,667.667 INFO    ] No update needed
[2026-06-05 12:55:56,670.670 INFO    ] Checking for camera pi updates...
[2026-06-05 12:55:56,705.705 INFO    ] 200
[2026-06-05 12:55:56,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:55:56,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:55:56,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:55:56,811.811 INFO    ] No camera update needed
[2026-06-05 12:55:56,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:55:56,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:55:56,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:55:56,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:55:58,871.871 INFO    ] ================================================
[2026-06-05 12:55:58,886.886 INFO    ] Launching Daemon at Fri Jun  5 12:55:58 IST 2026
[2026-06-05 12:55:58,897.897 INFO    ] ================================================
[2026-06-05 12:55:59,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:55:59
[2026-06-05 12:56:00,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:56:00,548.548 INFO    ] Initializing speech engine...
[2026-06-05 12:56:00,557.557 INFO    ] 2026-06-05 12:56:00
[2026-06-05 12:56:00,829.829 INFO    ] 2026-06-05 12:56:00
[2026-06-05 12:56:00,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:56:01,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:56:01,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:56:01,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:56:01,279.279 INFO    ] time= 05/06/2026 12:56:01
[2026-06-05 12:56:01,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:56:01,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:56:01,464.464 INFO    ] No existing commands found in stream
[2026-06-05 12:56:06,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:56:06,495.495 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 12:56:07,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:56:07,704.704 INFO    ] Checking for system updates...
[2026-06-05 12:56:07,741.741 INFO    ] 200
[2026-06-05 12:56:07,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:07,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:56:07,804.804 INFO    ] No update needed
[2026-06-05 12:56:07,807.807 INFO    ] Checking for camera pi updates...
[2026-06-05 12:56:07,840.840 INFO    ] 200
[2026-06-05 12:56:07,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:07,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:56:07,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:56:07,954.954 INFO    ] No camera update needed
[2026-06-05 12:56:07,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:56:07,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:56:07,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:56:07,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:56:10,014.014 INFO    ] ================================================
[2026-06-05 12:56:10,029.029 INFO    ] Launching Daemon at Fri Jun  5 12:56:10 IST 2026
[2026-06-05 12:56:10,040.040 INFO    ] ================================================
[2026-06-05 12:56:10,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:56:10
[2026-06-05 12:56:11,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:56:11,456.456 INFO    ] Initializing speech engine...
[2026-06-05 12:56:11,462.462 INFO    ] 2026-06-05 12:56:11
[2026-06-05 12:56:11,751.751 INFO    ] 2026-06-05 12:56:11
[2026-06-05 12:56:11,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:56:11,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:56:12,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:56:12,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:56:12,160.160 INFO    ] time= 05/06/2026 12:56:12
[2026-06-05 12:56:12,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:56:12,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:56:12,327.327 INFO    ] No existing commands found in stream
[2026-06-05 12:56:17,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:56:17,357.357 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 12:56:18,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:56:18,089.089 INFO    ] Checking for system updates...
[2026-06-05 12:56:18,126.126 INFO    ] 200
[2026-06-05 12:56:18,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:18,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:56:18,182.182 INFO    ] No update needed
[2026-06-05 12:56:18,185.185 INFO    ] Checking for camera pi updates...
[2026-06-05 12:56:18,222.222 INFO    ] 200
[2026-06-05 12:56:18,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:18,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:56:18,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:56:18,331.331 INFO    ] No camera update needed
[2026-06-05 12:56:18,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:56:18,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:56:18,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:56:18,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:56:20,387.387 INFO    ] ================================================
[2026-06-05 12:56:20,402.402 INFO    ] Launching Daemon at Fri Jun  5 12:56:20 IST 2026
[2026-06-05 12:56:20,413.413 INFO    ] ================================================
[2026-06-05 12:56:20,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:56:20
[2026-06-05 12:56:21,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:56:21,842.842 INFO    ] Initializing speech engine...
[2026-06-05 12:56:21,851.851 INFO    ] 2026-06-05 12:56:21
[2026-06-05 12:56:22,096.096 INFO    ] 2026-06-05 12:56:22
[2026-06-05 12:56:22,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:56:22,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:56:22,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:56:22,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:56:22,554.554 INFO    ] time= 05/06/2026 12:56:22
[2026-06-05 12:56:22,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:56:22,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:56:22,780.780 INFO    ] No existing commands found in stream
[2026-06-05 12:56:27,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:56:27,813.813 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 12:56:30,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:56:30,136.136 INFO    ] Checking for system updates...
[2026-06-05 12:56:30,171.171 INFO    ] 200
[2026-06-05 12:56:30,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:30,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:56:30,234.234 INFO    ] No update needed
[2026-06-05 12:56:30,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 12:56:30,271.271 INFO    ] 200
[2026-06-05 12:56:30,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:30,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:56:30,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:56:30,371.371 INFO    ] No camera update needed
[2026-06-05 12:56:30,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:56:30,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:56:30,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:56:30,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:56:32,438.438 INFO    ] ================================================
[2026-06-05 12:56:32,455.455 INFO    ] Launching Daemon at Fri Jun  5 12:56:32 IST 2026
[2026-06-05 12:56:32,469.469 INFO    ] ================================================
[2026-06-05 12:56:33,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:56:33
[2026-06-05 12:56:33,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:56:33,933.933 INFO    ] Initializing speech engine...
[2026-06-05 12:56:33,939.939 INFO    ] 2026-06-05 12:56:33
[2026-06-05 12:56:34,198.198 INFO    ] 2026-06-05 12:56:34
[2026-06-05 12:56:34,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:56:36,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:56:36,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:56:36,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:56:36,258.258 INFO    ] time= 05/06/2026 12:56:36
[2026-06-05 12:56:36,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:56:36,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:56:36,378.378 INFO    ] No existing commands found in stream
[2026-06-05 12:56:41,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:56:41,404.404 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 12:56:45,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:56:45,385.385 INFO    ] Checking for system updates...
[2026-06-05 12:56:45,425.425 INFO    ] 200
[2026-06-05 12:56:45,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:45,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:56:45,483.483 INFO    ] No update needed
[2026-06-05 12:56:45,486.486 INFO    ] Checking for camera pi updates...
[2026-06-05 12:56:45,520.520 INFO    ] 200
[2026-06-05 12:56:45,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:45,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:56:45,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:56:45,636.636 INFO    ] No camera update needed
[2026-06-05 12:56:45,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:56:45,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:56:45,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:56:45,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:56:47,693.693 INFO    ] ================================================
[2026-06-05 12:56:47,708.708 INFO    ] Launching Daemon at Fri Jun  5 12:56:47 IST 2026
[2026-06-05 12:56:47,719.719 INFO    ] ================================================
[2026-06-05 12:56:48,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:56:48
[2026-06-05 12:56:48,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:56:49,134.134 INFO    ] Initializing speech engine...
[2026-06-05 12:56:49,149.149 INFO    ] 2026-06-05 12:56:49
[2026-06-05 12:56:49,411.411 INFO    ] 2026-06-05 12:56:49
[2026-06-05 12:56:49,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:56:49,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:56:49,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:56:49,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:56:49,882.882 INFO    ] time= 05/06/2026 12:56:49
[2026-06-05 12:56:49,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:56:49,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:56:50,120.120 INFO    ] No existing commands found in stream
[2026-06-05 12:56:55,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:56:55,138.138 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 12:56:59,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:56:59,121.121 INFO    ] Checking for system updates...
[2026-06-05 12:56:59,157.157 INFO    ] 200
[2026-06-05 12:56:59,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:59,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:56:59,216.216 INFO    ] No update needed
[2026-06-05 12:56:59,219.219 INFO    ] Checking for camera pi updates...
[2026-06-05 12:56:59,252.252 INFO    ] 200
[2026-06-05 12:56:59,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:56:59,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:56:59,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:56:59,348.348 INFO    ] No camera update needed
[2026-06-05 12:56:59,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:56:59,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:56:59,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:56:59,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:57:01,404.404 INFO    ] ================================================
[2026-06-05 12:57:01,420.420 INFO    ] Launching Daemon at Fri Jun  5 12:57:01 IST 2026
[2026-06-05 12:57:01,432.432 INFO    ] ================================================
[2026-06-05 12:57:02,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:57:02
[2026-06-05 12:57:02,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:57:03,088.088 INFO    ] Initializing speech engine...
[2026-06-05 12:57:03,098.098 INFO    ] 2026-06-05 12:57:03
[2026-06-05 12:57:03,386.386 INFO    ] 2026-06-05 12:57:03
[2026-06-05 12:57:03,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:57:03,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:57:03,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:57:03,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:57:03,932.932 INFO    ] time= 05/06/2026 12:57:03
[2026-06-05 12:57:03,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:57:03,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:57:04,087.087 INFO    ] No existing commands found in stream
[2026-06-05 12:57:09,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:57:09,103.103 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 12:57:13,724.724 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:57:13,727.727 INFO    ] Checking for system updates...
[2026-06-05 12:57:13,763.763 INFO    ] 200
[2026-06-05 12:57:13,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:57:13,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:57:13,820.820 INFO    ] No update needed
[2026-06-05 12:57:13,822.822 INFO    ] Checking for camera pi updates...
[2026-06-05 12:57:13,856.856 INFO    ] 200
[2026-06-05 12:57:13,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:57:13,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:57:13,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:57:13,949.949 INFO    ] No camera update needed
[2026-06-05 12:57:13,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:57:13,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:57:13,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:57:13,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:57:16,006.006 INFO    ] ================================================
[2026-06-05 12:57:16,021.021 INFO    ] Launching Daemon at Fri Jun  5 12:57:16 IST 2026
[2026-06-05 12:57:16,033.033 INFO    ] ================================================
[2026-06-05 12:57:16,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:57:16
[2026-06-05 12:57:17,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:57:17,451.451 INFO    ] Initializing speech engine...
[2026-06-05 12:57:17,460.460 INFO    ] 2026-06-05 12:57:17
[2026-06-05 12:57:17,755.755 INFO    ] 2026-06-05 12:57:17
[2026-06-05 12:57:17,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:57:18,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:57:18,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:57:18,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:57:18,266.266 INFO    ] time= 05/06/2026 12:57:18
[2026-06-05 12:57:18,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:57:18,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:57:18,643.643 INFO    ] No existing commands found in stream
[2026-06-05 12:57:23,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:57:23,671.671 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 12:57:27,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:57:27,532.532 INFO    ] Checking for system updates...
[2026-06-05 12:57:27,569.569 INFO    ] 200
[2026-06-05 12:57:27,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:57:27,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:57:27,631.631 INFO    ] No update needed
[2026-06-05 12:57:27,634.634 INFO    ] Checking for camera pi updates...
[2026-06-05 12:57:27,744.744 INFO    ] 200
[2026-06-05 12:57:27,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:57:27,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:57:27,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:57:27,851.851 INFO    ] No camera update needed
[2026-06-05 12:57:27,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:57:27,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:57:27,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:57:27,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:57:29,907.907 INFO    ] ================================================
[2026-06-05 12:57:29,923.923 INFO    ] Launching Daemon at Fri Jun  5 12:57:29 IST 2026
[2026-06-05 12:57:29,934.934 INFO    ] ================================================
[2026-06-05 12:57:30,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:57:30
[2026-06-05 12:57:31,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:57:31,365.365 INFO    ] Initializing speech engine...
[2026-06-05 12:57:31,375.375 INFO    ] 2026-06-05 12:57:31
[2026-06-05 12:57:31,630.630 INFO    ] 2026-06-05 12:57:31
[2026-06-05 12:57:31,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:57:31,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:57:31,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:57:32,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:57:32,026.026 INFO    ] time= 05/06/2026 12:57:32
[2026-06-05 12:57:32,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:57:32,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:57:32,218.218 INFO    ] No existing commands found in stream
[2026-06-05 12:57:37,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:57:37,242.242 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 12:57:37,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:57:37,731.731 INFO    ] Checking for system updates...
[2026-06-05 12:57:37,769.769 INFO    ] 200
[2026-06-05 12:57:37,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:57:37,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:57:37,831.831 INFO    ] No update needed
[2026-06-05 12:57:37,833.833 INFO    ] Checking for camera pi updates...
[2026-06-05 12:57:37,867.867 INFO    ] 200
[2026-06-05 12:57:37,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:57:37,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:57:37,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:57:37,974.974 INFO    ] No camera update needed
[2026-06-05 12:57:37,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:57:37,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:57:37,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:57:37,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:57:40,040.040 INFO    ] ================================================
[2026-06-05 12:57:40,056.056 INFO    ] Launching Daemon at Fri Jun  5 12:57:40 IST 2026
[2026-06-05 12:57:40,067.067 INFO    ] ================================================
[2026-06-05 12:57:40,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:57:40
[2026-06-05 12:57:41,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:57:41,482.482 INFO    ] Initializing speech engine...
[2026-06-05 12:57:41,491.491 INFO    ] 2026-06-05 12:57:41
[2026-06-05 12:57:41,751.751 INFO    ] 2026-06-05 12:57:41
[2026-06-05 12:57:41,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:57:42,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:57:42,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:57:42,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:57:42,286.286 INFO    ] time= 05/06/2026 12:57:42
[2026-06-05 12:57:42,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:57:42,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:57:42,442.442 INFO    ] No existing commands found in stream
[2026-06-05 12:57:47,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:57:47,460.460 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 12:57:51,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:57:51,209.209 INFO    ] Checking for system updates...
[2026-06-05 12:57:51,246.246 INFO    ] 200
[2026-06-05 12:57:51,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:57:51,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:57:51,304.304 INFO    ] No update needed
[2026-06-05 12:57:51,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 12:57:51,340.340 INFO    ] 200
[2026-06-05 12:57:51,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:57:51,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:57:51,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:57:51,430.430 INFO    ] No camera update needed
[2026-06-05 12:57:51,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:57:51,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:57:51,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:57:51,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:57:53,487.487 INFO    ] ================================================
[2026-06-05 12:57:53,502.502 INFO    ] Launching Daemon at Fri Jun  5 12:57:53 IST 2026
[2026-06-05 12:57:53,513.513 INFO    ] ================================================
[2026-06-05 12:57:54,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:57:54
[2026-06-05 12:57:54,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:57:55,120.120 INFO    ] Initializing speech engine...
[2026-06-05 12:57:55,133.133 INFO    ] 2026-06-05 12:57:55
[2026-06-05 12:57:55,417.417 INFO    ] 2026-06-05 12:57:55
[2026-06-05 12:57:55,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:57:55,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:57:55,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:57:55,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:57:55,896.896 INFO    ] time= 05/06/2026 12:57:55
[2026-06-05 12:57:55,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:57:55,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:57:56,081.081 INFO    ] No existing commands found in stream
[2026-06-05 12:58:01,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:58:01,112.112 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 12:58:01,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 12:58:01,715.715 INFO    ] Checking for system updates...
[2026-06-05 12:58:01,753.753 INFO    ] 200
[2026-06-05 12:58:01,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:01,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:58:01,817.817 INFO    ] No update needed
[2026-06-05 12:58:01,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 12:58:01,856.856 INFO    ] 200
[2026-06-05 12:58:01,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:01,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:58:01,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:58:01,950.950 INFO    ] No camera update needed
[2026-06-05 12:58:01,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:58:01,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:58:01,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:58:01,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:58:04,008.008 INFO    ] ================================================
[2026-06-05 12:58:04,023.023 INFO    ] Launching Daemon at Fri Jun  5 12:58:04 IST 2026
[2026-06-05 12:58:04,035.035 INFO    ] ================================================
[2026-06-05 12:58:04,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:58:04
[2026-06-05 12:58:05,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:58:05,638.638 INFO    ] Initializing speech engine...
[2026-06-05 12:58:05,650.650 INFO    ] 2026-06-05 12:58:05
[2026-06-05 12:58:05,954.954 INFO    ] 2026-06-05 12:58:05
[2026-06-05 12:58:06,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:58:06,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:58:06,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:58:06,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:58:06,461.461 INFO    ] time= 05/06/2026 12:58:06
[2026-06-05 12:58:06,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:58:06,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:58:06,617.617 INFO    ] No existing commands found in stream
[2026-06-05 12:58:11,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:58:11,649.649 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 12:58:13,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:58:13,558.558 INFO    ] Checking for system updates...
[2026-06-05 12:58:13,595.595 INFO    ] 200
[2026-06-05 12:58:13,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:13,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:58:13,663.663 INFO    ] No update needed
[2026-06-05 12:58:13,666.666 INFO    ] Checking for camera pi updates...
[2026-06-05 12:58:13,706.706 INFO    ] 200
[2026-06-05 12:58:13,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:13,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:58:13,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:58:13,810.810 INFO    ] No camera update needed
[2026-06-05 12:58:13,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:58:13,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:58:13,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:58:13,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:58:15,868.868 INFO    ] ================================================
[2026-06-05 12:58:15,883.883 INFO    ] Launching Daemon at Fri Jun  5 12:58:15 IST 2026
[2026-06-05 12:58:15,895.895 INFO    ] ================================================
[2026-06-05 12:58:16,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:58:16
[2026-06-05 12:58:17,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:58:17,303.303 INFO    ] Initializing speech engine...
[2026-06-05 12:58:17,311.311 INFO    ] 2026-06-05 12:58:17
[2026-06-05 12:58:17,586.586 INFO    ] 2026-06-05 12:58:17
[2026-06-05 12:58:17,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:58:17,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:58:17,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:58:18,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:58:18,126.126 INFO    ] time= 05/06/2026 12:58:18
[2026-06-05 12:58:18,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:58:18,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:58:18,347.347 INFO    ] No existing commands found in stream
[2026-06-05 12:58:23,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:58:23,375.375 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 12:58:24,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:58:24,957.957 INFO    ] Checking for system updates...
[2026-06-05 12:58:24,993.993 INFO    ] 200
[2026-06-05 12:58:24,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:25,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:58:25,052.052 INFO    ] No update needed
[2026-06-05 12:58:25,054.054 INFO    ] Checking for camera pi updates...
[2026-06-05 12:58:25,091.091 INFO    ] 200
[2026-06-05 12:58:25,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:25,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:58:25,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:58:25,184.184 INFO    ] No camera update needed
[2026-06-05 12:58:25,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:58:25,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:58:25,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:58:25,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:58:27,240.240 INFO    ] ================================================
[2026-06-05 12:58:27,256.256 INFO    ] Launching Daemon at Fri Jun  5 12:58:27 IST 2026
[2026-06-05 12:58:27,267.267 INFO    ] ================================================
[2026-06-05 12:58:27,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:58:27
[2026-06-05 12:58:28,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:58:28,796.796 INFO    ] Initializing speech engine...
[2026-06-05 12:58:28,812.812 INFO    ] 2026-06-05 12:58:28
[2026-06-05 12:58:29,063.063 INFO    ] 2026-06-05 12:58:29
[2026-06-05 12:58:29,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:58:29,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:58:29,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:58:29,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:58:29,556.556 INFO    ] time= 05/06/2026 12:58:29
[2026-06-05 12:58:29,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:58:29,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:58:29,747.747 INFO    ] No existing commands found in stream
[2026-06-05 12:58:34,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:58:34,782.782 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 12:58:40,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:58:40,006.006 INFO    ] Checking for system updates...
[2026-06-05 12:58:40,042.042 INFO    ] 200
[2026-06-05 12:58:40,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:40,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:58:40,099.099 INFO    ] No update needed
[2026-06-05 12:58:40,102.102 INFO    ] Checking for camera pi updates...
[2026-06-05 12:58:40,137.137 INFO    ] 200
[2026-06-05 12:58:40,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:40,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:58:40,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:58:40,228.228 INFO    ] No camera update needed
[2026-06-05 12:58:40,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:58:40,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:58:40,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:58:40,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:58:42,285.285 INFO    ] ================================================
[2026-06-05 12:58:42,301.301 INFO    ] Launching Daemon at Fri Jun  5 12:58:42 IST 2026
[2026-06-05 12:58:42,312.312 INFO    ] ================================================
[2026-06-05 12:58:42,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:58:42
[2026-06-05 12:58:43,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:58:43,726.726 INFO    ] Initializing speech engine...
[2026-06-05 12:58:43,738.738 INFO    ] 2026-06-05 12:58:43
[2026-06-05 12:58:43,985.985 INFO    ] 2026-06-05 12:58:43
[2026-06-05 12:58:44,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:58:44,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:58:44,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:58:44,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:58:44,472.472 INFO    ] time= 05/06/2026 12:58:44
[2026-06-05 12:58:44,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:58:44,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:58:44,692.692 INFO    ] No existing commands found in stream
[2026-06-05 12:58:49,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:58:49,710.710 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 12:58:50,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:58:50,562.562 INFO    ] Checking for system updates...
[2026-06-05 12:58:50,598.598 INFO    ] 200
[2026-06-05 12:58:50,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:50,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:58:50,655.655 INFO    ] No update needed
[2026-06-05 12:58:50,658.658 INFO    ] Checking for camera pi updates...
[2026-06-05 12:58:50,695.695 INFO    ] 200
[2026-06-05 12:58:50,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:58:50,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:58:50,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:58:50,791.791 INFO    ] No camera update needed
[2026-06-05 12:58:50,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:58:50,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:58:50,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:58:50,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:58:52,847.847 INFO    ] ================================================
[2026-06-05 12:58:52,862.862 INFO    ] Launching Daemon at Fri Jun  5 12:58:52 IST 2026
[2026-06-05 12:58:52,874.874 INFO    ] ================================================
[2026-06-05 12:58:53,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:58:53
[2026-06-05 12:58:54,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:58:54,289.289 INFO    ] Initializing speech engine...
[2026-06-05 12:58:54,297.297 INFO    ] 2026-06-05 12:58:54
[2026-06-05 12:58:54,543.543 INFO    ] 2026-06-05 12:58:54
[2026-06-05 12:58:54,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:58:54,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:58:54,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:58:54,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:58:55,015.015 INFO    ] time= 05/06/2026 12:58:54
[2026-06-05 12:58:55,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:58:55,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:58:55,250.250 INFO    ] No existing commands found in stream
[2026-06-05 12:59:00,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:59:00,269.269 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 12:59:02,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 12:59:02,159.159 INFO    ] Checking for system updates...
[2026-06-05 12:59:02,201.201 INFO    ] 200
[2026-06-05 12:59:02,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:02,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:59:02,271.271 INFO    ] No update needed
[2026-06-05 12:59:02,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 12:59:02,314.314 INFO    ] 200
[2026-06-05 12:59:02,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:02,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:59:02,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:59:02,437.437 INFO    ] No camera update needed
[2026-06-05 12:59:02,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:59:02,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:59:02,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:59:02,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:59:04,498.498 INFO    ] ================================================
[2026-06-05 12:59:04,513.513 INFO    ] Launching Daemon at Fri Jun  5 12:59:04 IST 2026
[2026-06-05 12:59:04,524.524 INFO    ] ================================================
[2026-06-05 12:59:05,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:59:05
[2026-06-05 12:59:05,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:59:06,154.154 INFO    ] Initializing speech engine...
[2026-06-05 12:59:06,166.166 INFO    ] 2026-06-05 12:59:06
[2026-06-05 12:59:06,443.443 INFO    ] 2026-06-05 12:59:06
[2026-06-05 12:59:06,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:59:06,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:59:06,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:59:06,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:59:06,980.980 INFO    ] time= 05/06/2026 12:59:06
[2026-06-05 12:59:06,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:59:07,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:59:07,137.137 INFO    ] No existing commands found in stream
[2026-06-05 12:59:12,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:59:12,151.151 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 12:59:16,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 12:59:16,646.646 INFO    ] Checking for system updates...
[2026-06-05 12:59:16,683.683 INFO    ] 200
[2026-06-05 12:59:16,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:16,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:59:16,746.746 INFO    ] No update needed
[2026-06-05 12:59:16,748.748 INFO    ] Checking for camera pi updates...
[2026-06-05 12:59:16,784.784 INFO    ] 200
[2026-06-05 12:59:16,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:16,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:59:16,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:59:16,883.883 INFO    ] No camera update needed
[2026-06-05 12:59:16,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:59:16,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:59:16,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:59:16,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:59:18,942.942 INFO    ] ================================================
[2026-06-05 12:59:18,958.958 INFO    ] Launching Daemon at Fri Jun  5 12:59:18 IST 2026
[2026-06-05 12:59:18,969.969 INFO    ] ================================================
[2026-06-05 12:59:19,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:59:19
[2026-06-05 12:59:20,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:59:20,630.630 INFO    ] Initializing speech engine...
[2026-06-05 12:59:20,641.641 INFO    ] 2026-06-05 12:59:20
[2026-06-05 12:59:20,919.919 INFO    ] 2026-06-05 12:59:20
[2026-06-05 12:59:20,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:59:21,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:59:21,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:59:21,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:59:21,498.498 INFO    ] time= 05/06/2026 12:59:21
[2026-06-05 12:59:21,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:59:21,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:59:21,686.686 INFO    ] No existing commands found in stream
[2026-06-05 12:59:26,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:59:26,721.721 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 12:59:31,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:59:31,042.042 INFO    ] Checking for system updates...
[2026-06-05 12:59:31,082.082 INFO    ] 200
[2026-06-05 12:59:31,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:31,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:59:31,144.144 INFO    ] No update needed
[2026-06-05 12:59:31,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 12:59:31,184.184 INFO    ] 200
[2026-06-05 12:59:31,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:31,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:59:31,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:59:31,294.294 INFO    ] No camera update needed
[2026-06-05 12:59:31,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:59:31,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:59:31,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:59:31,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:59:33,355.355 INFO    ] ================================================
[2026-06-05 12:59:33,371.371 INFO    ] Launching Daemon at Fri Jun  5 12:59:33 IST 2026
[2026-06-05 12:59:33,383.383 INFO    ] ================================================
[2026-06-05 12:59:33,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:59:33
[2026-06-05 12:59:34,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:59:34,827.827 INFO    ] Initializing speech engine...
[2026-06-05 12:59:34,844.844 INFO    ] 2026-06-05 12:59:34
[2026-06-05 12:59:35,106.106 INFO    ] 2026-06-05 12:59:35
[2026-06-05 12:59:35,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:59:36,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:59:36,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:59:36,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:59:36,507.507 INFO    ] time= 05/06/2026 12:59:36
[2026-06-05 12:59:36,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:59:36,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:59:36,602.602 INFO    ] No existing commands found in stream
[2026-06-05 12:59:41,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:59:41,616.616 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 12:59:44,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 12:59:44,780.780 INFO    ] Checking for system updates...
[2026-06-05 12:59:44,818.818 INFO    ] 200
[2026-06-05 12:59:44,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:44,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:59:44,877.877 INFO    ] No update needed
[2026-06-05 12:59:44,880.880 INFO    ] Checking for camera pi updates...
[2026-06-05 12:59:44,919.919 INFO    ] 200
[2026-06-05 12:59:44,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:44,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:59:45,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 12:59:45,116.116 INFO    ] No camera update needed
[2026-06-05 12:59:45,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:59:45,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:59:45,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:59:45,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 12:59:47,173.173 INFO    ] ================================================
[2026-06-05 12:59:47,189.189 INFO    ] Launching Daemon at Fri Jun  5 12:59:47 IST 2026
[2026-06-05 12:59:47,201.201 INFO    ] ================================================
[2026-06-05 12:59:47,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 12:59:47
[2026-06-05 12:59:48,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 12:59:48,855.855 INFO    ] Initializing speech engine...
[2026-06-05 12:59:48,866.866 INFO    ] 2026-06-05 12:59:48
[2026-06-05 12:59:49,146.146 INFO    ] 2026-06-05 12:59:49
[2026-06-05 12:59:49,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 12:59:49,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 12:59:49,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 12:59:49,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 12:59:49,658.658 INFO    ] time= 05/06/2026 12:59:49
[2026-06-05 12:59:49,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 12:59:49,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-05 12:59:49,902.902 INFO    ] No existing commands found in stream
[2026-06-05 12:59:54,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 12:59:54,943.943 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 12:59:57,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 12:59:57,755.755 INFO    ] Checking for system updates...
[2026-06-05 12:59:57,794.794 INFO    ] 200
[2026-06-05 12:59:57,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:57,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:59:57,856.856 INFO    ] No update needed
[2026-06-05 12:59:57,859.859 INFO    ] Checking for camera pi updates...
[2026-06-05 12:59:57,897.897 INFO    ] 200
[2026-06-05 12:59:57,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 12:59:57,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 12:59:57,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 12:59:57,992.992 INFO    ] No camera update needed
[2026-06-05 12:59:57,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-05 12:59:57,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 12:59:58,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 12:59:58,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:00:00,055.055 INFO    ] ================================================
[2026-06-05 13:00:00,071.071 INFO    ] Launching Daemon at Fri Jun  5 13:00:00 IST 2026
[2026-06-05 13:00:00,084.084 INFO    ] ================================================
[2026-06-05 13:00:00,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:00:00
[2026-06-05 13:00:01,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:00:03,626.626 INFO    ] Initializing speech engine...
[2026-06-05 13:00:03,630.630 INFO    ] 2026-06-05 13:00:03
[2026-06-05 13:00:04,413.413 INFO    ] 2026-06-05 13:00:04
[2026-06-05 13:00:04,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:00:05,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:00:05,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:00:06,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:00:06,106.106 INFO    ] time= 05/06/2026 13:00:06
[2026-06-05 13:00:06,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:00:06,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:00:06,202.202 INFO    ] No existing commands found in stream
[2026-06-05 13:00:11,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:00:11,220.220 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 13:00:12,135.135 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:00:12,138.138 INFO    ] Checking for system updates...
[2026-06-05 13:00:12,177.177 INFO    ] 200
[2026-06-05 13:00:12,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:00:12,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:00:12,241.241 INFO    ] No update needed
[2026-06-05 13:00:12,244.244 INFO    ] Checking for camera pi updates...
[2026-06-05 13:00:12,284.284 INFO    ] 200
[2026-06-05 13:00:12,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:00:12,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:00:12,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:00:12,399.399 INFO    ] No camera update needed
[2026-06-05 13:00:12,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:00:12,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:00:12,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:00:12,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:00:14,459.459 INFO    ] ================================================
[2026-06-05 13:00:14,476.476 INFO    ] Launching Daemon at Fri Jun  5 13:00:14 IST 2026
[2026-06-05 13:00:14,488.488 INFO    ] ================================================
[2026-06-05 13:00:15,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:00:15
[2026-06-05 13:00:15,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:00:16,061.061 INFO    ] Initializing speech engine...
[2026-06-05 13:00:16,072.072 INFO    ] 2026-06-05 13:00:16
[2026-06-05 13:00:16,372.372 INFO    ] 2026-06-05 13:00:16
[2026-06-05 13:00:16,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:00:16,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:00:16,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:00:16,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:00:16,937.937 INFO    ] time= 05/06/2026 13:00:16
[2026-06-05 13:00:16,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:00:16,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:00:17,201.201 INFO    ] No existing commands found in stream
[2026-06-05 13:00:22,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:00:22,236.236 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 13:00:24,890.890 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:00:24,893.893 INFO    ] Checking for system updates...
[2026-06-05 13:00:24,930.930 INFO    ] 200
[2026-06-05 13:00:24,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:00:24,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:00:24,991.991 INFO    ] No update needed
[2026-06-05 13:00:24,993.993 INFO    ] Checking for camera pi updates...
[2026-06-05 13:00:25,030.030 INFO    ] 200
[2026-06-05 13:00:25,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:00:25,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:00:25,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:00:25,127.127 INFO    ] No camera update needed
[2026-06-05 13:00:25,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:00:25,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:00:25,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:00:25,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:00:27,186.186 INFO    ] ================================================
[2026-06-05 13:00:27,202.202 INFO    ] Launching Daemon at Fri Jun  5 13:00:27 IST 2026
[2026-06-05 13:00:27,214.214 INFO    ] ================================================
[2026-06-05 13:00:27,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:00:27
[2026-06-05 13:00:28,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:00:28,707.707 INFO    ] Initializing speech engine...
[2026-06-05 13:00:28,718.718 INFO    ] 2026-06-05 13:00:28
[2026-06-05 13:00:29,023.023 INFO    ] 2026-06-05 13:00:28
[2026-06-05 13:00:29,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:00:29,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:00:29,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:00:29,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:00:29,454.454 INFO    ] time= 05/06/2026 13:00:29
[2026-06-05 13:00:29,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:00:29,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:00:29,658.658 INFO    ] No existing commands found in stream
[2026-06-05 13:00:34,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:00:34,690.690 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 13:00:36,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:00:36,320.320 INFO    ] Checking for system updates...
[2026-06-05 13:00:36,359.359 INFO    ] 200
[2026-06-05 13:00:36,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:00:36,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:00:36,419.419 INFO    ] No update needed
[2026-06-05 13:00:36,422.422 INFO    ] Checking for camera pi updates...
[2026-06-05 13:00:36,457.457 INFO    ] 200
[2026-06-05 13:00:36,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:00:36,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:00:36,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:00:36,558.558 INFO    ] No camera update needed
[2026-06-05 13:00:36,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:00:36,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:00:36,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:00:36,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:00:38,617.617 INFO    ] ================================================
[2026-06-05 13:00:38,633.633 INFO    ] Launching Daemon at Fri Jun  5 13:00:38 IST 2026
[2026-06-05 13:00:38,645.645 INFO    ] ================================================
[2026-06-05 13:00:39,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:00:39
[2026-06-05 13:00:39,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:00:40,282.282 INFO    ] Initializing speech engine...
[2026-06-05 13:00:40,292.292 INFO    ] 2026-06-05 13:00:40
[2026-06-05 13:00:40,575.575 INFO    ] 2026-06-05 13:00:40
[2026-06-05 13:00:40,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:00:40,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:00:40,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:00:41,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:00:41,095.095 INFO    ] time= 05/06/2026 13:00:41
[2026-06-05 13:00:41,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:00:41,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:00:41,596.596 INFO    ] No existing commands found in stream
[2026-06-05 13:00:46,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:00:46,620.620 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 13:00:50,098.098 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:00:50,102.102 INFO    ] Checking for system updates...
[2026-06-05 13:00:50,141.141 INFO    ] 200
[2026-06-05 13:00:50,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:00:50,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:00:50,204.204 INFO    ] No update needed
[2026-06-05 13:00:50,207.207 INFO    ] Checking for camera pi updates...
[2026-06-05 13:00:50,243.243 INFO    ] 200
[2026-06-05 13:00:50,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:00:50,295.295 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:00:50,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:00:50,347.347 INFO    ] No camera update needed
[2026-06-05 13:00:50,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:00:50,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:00:50,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:00:50,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:00:52,411.411 INFO    ] ================================================
[2026-06-05 13:00:52,427.427 INFO    ] Launching Daemon at Fri Jun  5 13:00:52 IST 2026
[2026-06-05 13:00:52,438.438 INFO    ] ================================================
[2026-06-05 13:00:53,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:00:53
[2026-06-05 13:00:53,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:00:54,084.084 INFO    ] Initializing speech engine...
[2026-06-05 13:00:54,093.093 INFO    ] 2026-06-05 13:00:54
[2026-06-05 13:00:54,370.370 INFO    ] 2026-06-05 13:00:54
[2026-06-05 13:00:54,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:00:54,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:00:54,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:00:54,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:00:54,906.906 INFO    ] time= 05/06/2026 13:00:54
[2026-06-05 13:00:54,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:00:54,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:00:55,109.109 INFO    ] No existing commands found in stream
[2026-06-05 13:01:00,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:01:00,133.133 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 13:01:02,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:01:02,168.168 INFO    ] Checking for system updates...
[2026-06-05 13:01:02,211.211 INFO    ] 200
[2026-06-05 13:01:02,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:02,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:01:02,283.283 INFO    ] No update needed
[2026-06-05 13:01:02,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 13:01:02,328.328 INFO    ] 200
[2026-06-05 13:01:02,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:02,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:01:02,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:01:02,437.437 INFO    ] No camera update needed
[2026-06-05 13:01:02,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:01:02,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:01:02,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:01:02,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:01:04,499.499 INFO    ] ================================================
[2026-06-05 13:01:04,518.518 INFO    ] Launching Daemon at Fri Jun  5 13:01:04 IST 2026
[2026-06-05 13:01:04,530.530 INFO    ] ================================================
[2026-06-05 13:01:05,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:01:05
[2026-06-05 13:01:05,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:01:06,010.010 INFO    ] Initializing speech engine...
[2026-06-05 13:01:06,019.019 INFO    ] 2026-06-05 13:01:06
[2026-06-05 13:01:06,304.304 INFO    ] 2026-06-05 13:01:06
[2026-06-05 13:01:06,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:01:06,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:01:06,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:01:06,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:01:06,814.814 INFO    ] time= 05/06/2026 13:01:06
[2026-06-05 13:01:06,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:01:06,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:01:07,019.019 INFO    ] No existing commands found in stream
[2026-06-05 13:01:12,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:01:12,050.050 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 13:01:12,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:01:12,846.846 INFO    ] Checking for system updates...
[2026-06-05 13:01:12,888.888 INFO    ] 200
[2026-06-05 13:01:12,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:12,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:01:12,955.955 INFO    ] No update needed
[2026-06-05 13:01:12,958.958 INFO    ] Checking for camera pi updates...
[2026-06-05 13:01:12,994.994 INFO    ] 200
[2026-06-05 13:01:12,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:13,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:01:13,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:01:13,098.098 INFO    ] No camera update needed
[2026-06-05 13:01:13,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:01:13,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:01:13,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:01:13,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:01:15,164.164 INFO    ] ================================================
[2026-06-05 13:01:15,180.180 INFO    ] Launching Daemon at Fri Jun  5 13:01:15 IST 2026
[2026-06-05 13:01:15,191.191 INFO    ] ================================================
[2026-06-05 13:01:15,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:01:15
[2026-06-05 13:01:16,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:01:16,691.691 INFO    ] Initializing speech engine...
[2026-06-05 13:01:16,704.704 INFO    ] 2026-06-05 13:01:16
[2026-06-05 13:01:16,961.961 INFO    ] 2026-06-05 13:01:16
[2026-06-05 13:01:16,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:01:17,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:01:17,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:01:17,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:01:17,472.472 INFO    ] time= 05/06/2026 13:01:17
[2026-06-05 13:01:17,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:01:17,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:01:17,676.676 INFO    ] No existing commands found in stream
[2026-06-05 13:01:22,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:01:22,701.701 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 13:01:25,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:01:25,134.134 INFO    ] Checking for system updates...
[2026-06-05 13:01:25,174.174 INFO    ] 200
[2026-06-05 13:01:25,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:25,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:01:25,241.241 INFO    ] No update needed
[2026-06-05 13:01:25,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 13:01:25,282.282 INFO    ] 200
[2026-06-05 13:01:25,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:25,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:01:25,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:01:25,384.384 INFO    ] No camera update needed
[2026-06-05 13:01:25,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:01:25,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:01:25,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:01:25,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:01:27,445.445 INFO    ] ================================================
[2026-06-05 13:01:27,461.461 INFO    ] Launching Daemon at Fri Jun  5 13:01:27 IST 2026
[2026-06-05 13:01:27,472.472 INFO    ] ================================================
[2026-06-05 13:01:28,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:01:28
[2026-06-05 13:01:28,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:01:28,967.967 INFO    ] Initializing speech engine...
[2026-06-05 13:01:28,986.986 INFO    ] 2026-06-05 13:01:28
[2026-06-05 13:01:29,269.269 INFO    ] 2026-06-05 13:01:29
[2026-06-05 13:01:29,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:01:29,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:01:29,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:01:29,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:01:29,785.785 INFO    ] time= 05/06/2026 13:01:29
[2026-06-05 13:01:29,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:01:29,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:01:30,062.062 INFO    ] No existing commands found in stream
[2026-06-05 13:01:35,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:01:35,099.099 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 13:01:36,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:01:36,741.741 INFO    ] Checking for system updates...
[2026-06-05 13:01:36,779.779 INFO    ] 200
[2026-06-05 13:01:36,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:36,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:01:36,843.843 INFO    ] No update needed
[2026-06-05 13:01:36,846.846 INFO    ] Checking for camera pi updates...
[2026-06-05 13:01:36,881.881 INFO    ] 200
[2026-06-05 13:01:36,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:36,935.935 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:01:36,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:01:36,983.983 INFO    ] No camera update needed
[2026-06-05 13:01:36,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:01:36,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:01:36,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:01:37,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:01:39,046.046 INFO    ] ================================================
[2026-06-05 13:01:39,062.062 INFO    ] Launching Daemon at Fri Jun  5 13:01:39 IST 2026
[2026-06-05 13:01:39,073.073 INFO    ] ================================================
[2026-06-05 13:01:39,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:01:39
[2026-06-05 13:01:40,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:01:40,682.682 INFO    ] Initializing speech engine...
[2026-06-05 13:01:40,691.691 INFO    ] 2026-06-05 13:01:40
[2026-06-05 13:01:40,968.968 INFO    ] 2026-06-05 13:01:40
[2026-06-05 13:01:41,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:01:41,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:01:41,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:01:41,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:01:41,480.480 INFO    ] time= 05/06/2026 13:01:41
[2026-06-05 13:01:41,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:01:41,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:01:41,675.675 INFO    ] No existing commands found in stream
[2026-06-05 13:01:46,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:01:46,702.702 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 13:01:49,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:01:49,375.375 INFO    ] Checking for system updates...
[2026-06-05 13:01:49,413.413 INFO    ] 200
[2026-06-05 13:01:49,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:49,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:01:49,482.482 INFO    ] No update needed
[2026-06-05 13:01:49,485.485 INFO    ] Checking for camera pi updates...
[2026-06-05 13:01:49,521.521 INFO    ] 200
[2026-06-05 13:01:49,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:01:49,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:01:49,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:01:49,720.720 INFO    ] No camera update needed
[2026-06-05 13:01:49,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:01:49,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:01:49,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:01:49,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:01:51,783.783 INFO    ] ================================================
[2026-06-05 13:01:51,799.799 INFO    ] Launching Daemon at Fri Jun  5 13:01:51 IST 2026
[2026-06-05 13:01:51,810.810 INFO    ] ================================================
[2026-06-05 13:01:52,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:01:52
[2026-06-05 13:01:53,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:01:53,426.426 INFO    ] Initializing speech engine...
[2026-06-05 13:01:53,443.443 INFO    ] 2026-06-05 13:01:53
[2026-06-05 13:01:53,722.722 INFO    ] 2026-06-05 13:01:53
[2026-06-05 13:01:53,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:01:53,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:01:53,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:01:54,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:01:54,152.152 INFO    ] time= 05/06/2026 13:01:54
[2026-06-05 13:01:54,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:01:54,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:01:54,308.308 INFO    ] No existing commands found in stream
[2026-06-05 13:01:59,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:01:59,336.336 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 13:02:02,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:02:02,864.864 INFO    ] Checking for system updates...
[2026-06-05 13:02:02,908.908 INFO    ] 200
[2026-06-05 13:02:02,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:02,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:02:02,974.974 INFO    ] No update needed
[2026-06-05 13:02:02,977.977 INFO    ] Checking for camera pi updates...
[2026-06-05 13:02:03,016.016 INFO    ] 200
[2026-06-05 13:02:03,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:03,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:02:03,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:02:03,120.120 INFO    ] No camera update needed
[2026-06-05 13:02:03,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:02:03,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:02:03,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:02:03,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:02:05,194.194 INFO    ] ================================================
[2026-06-05 13:02:05,210.210 INFO    ] Launching Daemon at Fri Jun  5 13:02:05 IST 2026
[2026-06-05 13:02:05,222.222 INFO    ] ================================================
[2026-06-05 13:02:05,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:02:05
[2026-06-05 13:02:06,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:02:06,930.930 INFO    ] Initializing speech engine...
[2026-06-05 13:02:06,940.940 INFO    ] 2026-06-05 13:02:06
[2026-06-05 13:02:07,220.220 INFO    ] 2026-06-05 13:02:07
[2026-06-05 13:02:07,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:02:07,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:02:07,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:02:07,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:02:07,738.738 INFO    ] time= 05/06/2026 13:02:07
[2026-06-05 13:02:07,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:02:07,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:02:07,973.973 INFO    ] No existing commands found in stream
[2026-06-05 13:02:12,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:02:13,000.000 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 13:02:14,211.211 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:02:14,213.213 INFO    ] Checking for system updates...
[2026-06-05 13:02:14,251.251 INFO    ] 200
[2026-06-05 13:02:14,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:14,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:02:14,321.321 INFO    ] No update needed
[2026-06-05 13:02:14,323.323 INFO    ] Checking for camera pi updates...
[2026-06-05 13:02:14,358.358 INFO    ] 200
[2026-06-05 13:02:14,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:14,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:02:14,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:02:14,464.464 INFO    ] No camera update needed
[2026-06-05 13:02:14,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:02:14,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:02:14,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:02:14,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:02:16,528.528 INFO    ] ================================================
[2026-06-05 13:02:16,545.545 INFO    ] Launching Daemon at Fri Jun  5 13:02:16 IST 2026
[2026-06-05 13:02:16,557.557 INFO    ] ================================================
[2026-06-05 13:02:17,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:02:17
[2026-06-05 13:02:17,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:02:18,148.148 INFO    ] Initializing speech engine...
[2026-06-05 13:02:18,154.154 INFO    ] 2026-06-05 13:02:18
[2026-06-05 13:02:18,453.453 INFO    ] 2026-06-05 13:02:18
[2026-06-05 13:02:18,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:02:18,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:02:18,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:02:18,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:02:18,968.968 INFO    ] time= 05/06/2026 13:02:18
[2026-06-05 13:02:19,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:02:19,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:02:19,178.178 INFO    ] No existing commands found in stream
[2026-06-05 13:02:24,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:02:24,206.206 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-05 13:02:26,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:02:26,720.720 INFO    ] Checking for system updates...
[2026-06-05 13:02:26,759.759 INFO    ] 200
[2026-06-05 13:02:26,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:26,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:02:26,821.821 INFO    ] No update needed
[2026-06-05 13:02:26,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 13:02:26,860.860 INFO    ] 200
[2026-06-05 13:02:26,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:26,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:02:26,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:02:26,968.968 INFO    ] No camera update needed
[2026-06-05 13:02:26,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:02:26,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:02:26,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:02:26,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:02:29,031.031 INFO    ] ================================================
[2026-06-05 13:02:29,048.048 INFO    ] Launching Daemon at Fri Jun  5 13:02:29 IST 2026
[2026-06-05 13:02:29,060.060 INFO    ] ================================================
[2026-06-05 13:02:29,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:02:29
[2026-06-05 13:02:30,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:02:30,611.611 INFO    ] Initializing speech engine...
[2026-06-05 13:02:30,621.621 INFO    ] 2026-06-05 13:02:30
[2026-06-05 13:02:30,915.915 INFO    ] 2026-06-05 13:02:30
[2026-06-05 13:02:30,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:02:31,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:02:31,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:02:31,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:02:31,471.471 INFO    ] time= 05/06/2026 13:02:31
[2026-06-05 13:02:31,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:02:31,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:02:31,572.572 INFO    ] No existing commands found in stream
[2026-06-05 13:02:36,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:02:36,581.581 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 13:02:38,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:02:38,550.550 INFO    ] Checking for system updates...
[2026-06-05 13:02:38,589.589 INFO    ] 200
[2026-06-05 13:02:38,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:38,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:02:38,658.658 INFO    ] No update needed
[2026-06-05 13:02:38,661.661 INFO    ] Checking for camera pi updates...
[2026-06-05 13:02:38,697.697 INFO    ] 200
[2026-06-05 13:02:38,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:38,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:02:38,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:02:38,803.803 INFO    ] No camera update needed
[2026-06-05 13:02:38,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:02:38,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:02:38,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:02:38,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:02:40,865.865 INFO    ] ================================================
[2026-06-05 13:02:40,882.882 INFO    ] Launching Daemon at Fri Jun  5 13:02:40 IST 2026
[2026-06-05 13:02:40,893.893 INFO    ] ================================================
[2026-06-05 13:02:41,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:02:41
[2026-06-05 13:02:42,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:02:42,383.383 INFO    ] Initializing speech engine...
[2026-06-05 13:02:42,393.393 INFO    ] 2026-06-05 13:02:42
[2026-06-05 13:02:42,695.695 INFO    ] 2026-06-05 13:02:42
[2026-06-05 13:02:42,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:02:42,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:02:42,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:02:43,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:02:43,199.199 INFO    ] time= 05/06/2026 13:02:43
[2026-06-05 13:02:43,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:02:43,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:02:43,404.404 INFO    ] No existing commands found in stream
[2026-06-05 13:02:48,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:02:48,419.419 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 13:02:50,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:02:50,404.404 INFO    ] Checking for system updates...
[2026-06-05 13:02:50,441.441 INFO    ] 200
[2026-06-05 13:02:50,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:50,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:02:50,501.501 INFO    ] No update needed
[2026-06-05 13:02:50,503.503 INFO    ] Checking for camera pi updates...
[2026-06-05 13:02:50,542.542 INFO    ] 200
[2026-06-05 13:02:50,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:02:50,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:02:50,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:02:50,634.634 INFO    ] No camera update needed
[2026-06-05 13:02:50,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:02:50,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:02:50,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:02:50,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:02:52,693.693 INFO    ] ================================================
[2026-06-05 13:02:52,710.710 INFO    ] Launching Daemon at Fri Jun  5 13:02:52 IST 2026
[2026-06-05 13:02:52,722.722 INFO    ] ================================================
[2026-06-05 13:02:53,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:02:53
[2026-06-05 13:02:53,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:02:54,167.167 INFO    ] Initializing speech engine...
[2026-06-05 13:02:54,183.183 INFO    ] 2026-06-05 13:02:54
[2026-06-05 13:02:54,451.451 INFO    ] 2026-06-05 13:02:54
[2026-06-05 13:02:54,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:02:54,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:02:54,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:02:54,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:02:54,962.962 INFO    ] time= 05/06/2026 13:02:54
[2026-06-05 13:02:55,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:02:55,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:02:55,178.178 INFO    ] No existing commands found in stream
[2026-06-05 13:03:00,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:03:00,212.212 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 13:03:02,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:03:02,204.204 INFO    ] Checking for system updates...
[2026-06-05 13:03:02,248.248 INFO    ] 200
[2026-06-05 13:03:02,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:02,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:03:02,316.316 INFO    ] No update needed
[2026-06-05 13:03:02,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 13:03:02,357.357 INFO    ] 200
[2026-06-05 13:03:02,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:02,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:03:02,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:03:02,455.455 INFO    ] No camera update needed
[2026-06-05 13:03:02,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:03:02,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:03:02,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:03:02,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:03:04,517.517 INFO    ] ================================================
[2026-06-05 13:03:04,533.533 INFO    ] Launching Daemon at Fri Jun  5 13:03:04 IST 2026
[2026-06-05 13:03:04,545.545 INFO    ] ================================================
[2026-06-05 13:03:05,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:03:05
[2026-06-05 13:03:05,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:03:06,190.190 INFO    ] Initializing speech engine...
[2026-06-05 13:03:06,194.194 INFO    ] 2026-06-05 13:03:06
[2026-06-05 13:03:06,487.487 INFO    ] 2026-06-05 13:03:06
[2026-06-05 13:03:06,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:03:06,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:03:06,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:03:06,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:03:07,003.003 INFO    ] time= 05/06/2026 13:03:06
[2026-06-05 13:03:07,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:03:07,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:03:07,222.222 INFO    ] No existing commands found in stream
[2026-06-05 13:03:12,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:03:12,247.247 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 13:03:16,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:03:16,466.466 INFO    ] Checking for system updates...
[2026-06-05 13:03:16,508.508 INFO    ] 200
[2026-06-05 13:03:16,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:16,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:03:16,570.570 INFO    ] No update needed
[2026-06-05 13:03:16,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 13:03:16,607.607 INFO    ] 200
[2026-06-05 13:03:16,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:16,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:03:16,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:03:16,702.702 INFO    ] No camera update needed
[2026-06-05 13:03:16,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:03:16,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:03:16,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:03:16,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:03:18,760.760 INFO    ] ================================================
[2026-06-05 13:03:18,777.777 INFO    ] Launching Daemon at Fri Jun  5 13:03:18 IST 2026
[2026-06-05 13:03:18,788.788 INFO    ] ================================================
[2026-06-05 13:03:19,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:03:19
[2026-06-05 13:03:19,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:03:20,264.264 INFO    ] Initializing speech engine...
[2026-06-05 13:03:20,281.281 INFO    ] 2026-06-05 13:03:20
[2026-06-05 13:03:20,577.577 INFO    ] 2026-06-05 13:03:20
[2026-06-05 13:03:20,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:03:20,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:03:20,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:03:20,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:03:21,002.002 INFO    ] time= 05/06/2026 13:03:20
[2026-06-05 13:03:21,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:03:21,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:03:21,209.209 INFO    ] No existing commands found in stream
[2026-06-05 13:03:26,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:03:26,237.237 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 13:03:27,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:03:27,601.601 INFO    ] Checking for system updates...
[2026-06-05 13:03:27,638.638 INFO    ] 200
[2026-06-05 13:03:27,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:27,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:03:27,714.714 INFO    ] No update needed
[2026-06-05 13:03:27,717.717 INFO    ] Checking for camera pi updates...
[2026-06-05 13:03:27,752.752 INFO    ] 200
[2026-06-05 13:03:27,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:27,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:03:27,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:03:27,859.859 INFO    ] No camera update needed
[2026-06-05 13:03:27,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:03:27,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:03:27,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:03:27,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:03:29,919.919 INFO    ] ================================================
[2026-06-05 13:03:29,935.935 INFO    ] Launching Daemon at Fri Jun  5 13:03:29 IST 2026
[2026-06-05 13:03:29,947.947 INFO    ] ================================================
[2026-06-05 13:03:30,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:03:30
[2026-06-05 13:03:31,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:03:31,471.471 INFO    ] Initializing speech engine...
[2026-06-05 13:03:31,479.479 INFO    ] 2026-06-05 13:03:31
[2026-06-05 13:03:31,766.766 INFO    ] 2026-06-05 13:03:31
[2026-06-05 13:03:31,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:03:32,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:03:32,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:03:32,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:03:32,168.168 INFO    ] time= 05/06/2026 13:03:32
[2026-06-05 13:03:32,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:03:32,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:03:32,369.369 INFO    ] No existing commands found in stream
[2026-06-05 13:03:37,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:03:37,393.393 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 13:03:41,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:03:41,475.475 INFO    ] Checking for system updates...
[2026-06-05 13:03:41,513.513 INFO    ] 200
[2026-06-05 13:03:41,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:41,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:03:41,575.575 INFO    ] No update needed
[2026-06-05 13:03:41,578.578 INFO    ] Checking for camera pi updates...
[2026-06-05 13:03:41,615.615 INFO    ] 200
[2026-06-05 13:03:41,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:41,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:03:41,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:03:41,727.727 INFO    ] No camera update needed
[2026-06-05 13:03:41,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:03:41,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:03:41,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:03:41,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:03:43,787.787 INFO    ] ================================================
[2026-06-05 13:03:43,803.803 INFO    ] Launching Daemon at Fri Jun  5 13:03:43 IST 2026
[2026-06-05 13:03:43,815.815 INFO    ] ================================================
[2026-06-05 13:03:44,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:03:44
[2026-06-05 13:03:45,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:03:45,260.260 INFO    ] Initializing speech engine...
[2026-06-05 13:03:45,275.275 INFO    ] 2026-06-05 13:03:45
[2026-06-05 13:03:45,547.547 INFO    ] 2026-06-05 13:03:45
[2026-06-05 13:03:45,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:03:45,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:03:45,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:03:46,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:03:46,075.075 INFO    ] time= 05/06/2026 13:03:46
[2026-06-05 13:03:46,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:03:46,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:03:46,258.258 INFO    ] No existing commands found in stream
[2026-06-05 13:03:51,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:03:51,283.283 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 13:03:54,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:03:54,243.243 INFO    ] Checking for system updates...
[2026-06-05 13:03:54,281.281 INFO    ] 200
[2026-06-05 13:03:54,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:54,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:03:54,346.346 INFO    ] No update needed
[2026-06-05 13:03:54,349.349 INFO    ] Checking for camera pi updates...
[2026-06-05 13:03:54,384.384 INFO    ] 200
[2026-06-05 13:03:54,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:03:54,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:03:54,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:03:54,587.587 INFO    ] No camera update needed
[2026-06-05 13:03:54,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:03:54,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:03:54,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:03:54,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:03:56,645.645 INFO    ] ================================================
[2026-06-05 13:03:56,662.662 INFO    ] Launching Daemon at Fri Jun  5 13:03:56 IST 2026
[2026-06-05 13:03:56,673.673 INFO    ] ================================================
[2026-06-05 13:03:57,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:03:57
[2026-06-05 13:03:57,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:03:58,118.118 INFO    ] Initializing speech engine...
[2026-06-05 13:03:58,125.125 INFO    ] 2026-06-05 13:03:58
[2026-06-05 13:03:58,431.431 INFO    ] 2026-06-05 13:03:58
[2026-06-05 13:03:58,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:03:58,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:03:58,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:03:58,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:03:58,863.863 INFO    ] time= 05/06/2026 13:03:58
[2026-06-05 13:03:58,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:03:58,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:03:59,053.053 INFO    ] No existing commands found in stream
[2026-06-05 13:04:04,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:04:04,076.076 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 13:04:07,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:04:07,198.198 INFO    ] Checking for system updates...
[2026-06-05 13:04:07,236.236 INFO    ] 200
[2026-06-05 13:04:07,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:04:07,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:04:07,297.297 INFO    ] No update needed
[2026-06-05 13:04:07,300.300 INFO    ] Checking for camera pi updates...
[2026-06-05 13:04:07,339.339 INFO    ] 200
[2026-06-05 13:04:07,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:04:07,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:04:07,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:04:07,436.436 INFO    ] No camera update needed
[2026-06-05 13:04:07,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:04:07,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:04:07,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:04:07,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:04:09,494.494 INFO    ] ================================================
[2026-06-05 13:04:09,510.510 INFO    ] Launching Daemon at Fri Jun  5 13:04:09 IST 2026
[2026-06-05 13:04:09,521.521 INFO    ] ================================================
[2026-06-05 13:04:10,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:04:10
[2026-06-05 13:04:10,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:04:11,018.018 INFO    ] Initializing speech engine...
[2026-06-05 13:04:11,027.027 INFO    ] 2026-06-05 13:04:11
[2026-06-05 13:04:11,294.294 INFO    ] 2026-06-05 13:04:11
[2026-06-05 13:04:11,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:04:11,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:04:11,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:04:11,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:04:11,795.795 INFO    ] time= 05/06/2026 13:04:11
[2026-06-05 13:04:11,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:04:11,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:04:11,997.997 INFO    ] No existing commands found in stream
[2026-06-05 13:04:17,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:04:17,020.020 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 13:04:17,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:04:17,923.923 INFO    ] Checking for system updates...
[2026-06-05 13:04:17,960.960 INFO    ] 200
[2026-06-05 13:04:17,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:04:18,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:04:18,020.020 INFO    ] No update needed
[2026-06-05 13:04:18,023.023 INFO    ] Checking for camera pi updates...
[2026-06-05 13:04:18,058.058 INFO    ] 200
[2026-06-05 13:04:18,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:04:18,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:04:18,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:04:18,149.149 INFO    ] No camera update needed
[2026-06-05 13:04:18,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:04:18,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:04:18,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:04:18,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:04:20,208.208 INFO    ] ================================================
[2026-06-05 13:04:20,225.225 INFO    ] Launching Daemon at Fri Jun  5 13:04:20 IST 2026
[2026-06-05 13:04:20,236.236 INFO    ] ================================================
[2026-06-05 13:04:20,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:04:20
[2026-06-05 13:04:21,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:04:21,753.753 INFO    ] Initializing speech engine...
[2026-06-05 13:04:21,763.763 INFO    ] 2026-06-05 13:04:21
[2026-06-05 13:04:22,024.024 INFO    ] 2026-06-05 13:04:22
[2026-06-05 13:04:22,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:04:22,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:04:22,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:04:22,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:04:22,538.538 INFO    ] time= 05/06/2026 13:04:22
[2026-06-05 13:04:22,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:04:22,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:04:22,743.743 INFO    ] No existing commands found in stream
[2026-06-05 13:04:27,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:04:27,769.769 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 13:04:31,658.658 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-05 13:04:31,682.682 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM07202501 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-05 13:04:31,691.691 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM07202501 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-05 13:04:31,700.700 INFO    ] None
[2026-06-05 13:04:31,702.702 INFO    ] Checking for system updates...
[2026-06-05 13:04:31,744.744 INFO    ] 200
[2026-06-05 13:04:31,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:04:31,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:04:31,803.803 INFO    ] No update needed
[2026-06-05 13:04:31,805.805 INFO    ] Checking for camera pi updates...
[2026-06-05 13:04:31,840.840 INFO    ] 200
[2026-06-05 13:04:31,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:04:31,885.885 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:04:31,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:04:31,924.924 INFO    ] No camera update needed
[2026-06-05 13:04:31,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:04:31,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:04:31,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:04:31,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:04:33,989.989 INFO    ] ================================================
[2026-06-05 13:04:34,004.004 INFO    ] Launching Daemon at Fri Jun  5 13:04:33 IST 2026
[2026-06-05 13:04:34,015.015 INFO    ] ================================================
[2026-06-05 13:04:34,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:04:34
[2026-06-05 13:04:35,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:04:35,460.460 INFO    ] Initializing speech engine...
[2026-06-05 13:04:35,470.470 INFO    ] 2026-06-05 13:04:35
[2026-06-05 13:04:35,719.719 INFO    ] 2026-06-05 13:04:35
[2026-06-05 13:04:35,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:04:35,876.876 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 13:04:35,992.992 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:04:36,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:04:36,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:04:36,094.094 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 13:04:36,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:04:38,184.184 INFO    ] ================================================
[2026-06-05 13:04:38,199.199 INFO    ] Launching Daemon at Fri Jun  5 13:04:38 IST 2026
[2026-06-05 13:04:38,211.211 INFO    ] ================================================
[2026-06-05 13:04:38,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:04:38
[2026-06-05 13:04:39,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:04:39,656.656 INFO    ] Initializing speech engine...
[2026-06-05 13:04:39,669.669 INFO    ] 2026-06-05 13:04:39
[2026-06-05 13:04:39,934.934 INFO    ] 2026-06-05 13:04:39
[2026-06-05 13:04:39,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:04:40,095.095 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 13:04:40,238.238 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:04:40,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:04:40,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:04:40,305.305 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 13:04:40,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:04:42,387.387 INFO    ] ================================================
[2026-06-05 13:04:42,403.403 INFO    ] Launching Daemon at Fri Jun  5 13:04:42 IST 2026
[2026-06-05 13:04:42,415.415 INFO    ] ================================================
[2026-06-05 13:04:43,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:04:42
[2026-06-05 13:04:43,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:04:43,876.876 INFO    ] Initializing speech engine...
[2026-06-05 13:04:43,892.892 INFO    ] 2026-06-05 13:04:43
[2026-06-05 13:04:44,148.148 INFO    ] 2026-06-05 13:04:44
[2026-06-05 13:04:44,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:04:44,313.313 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 13:04:44,421.421 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:04:44,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:04:44,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:04:44,519.519 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 13:04:44,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:04:46,598.598 INFO    ] ================================================
[2026-06-05 13:04:46,614.614 INFO    ] Launching Daemon at Fri Jun  5 13:04:46 IST 2026
[2026-06-05 13:04:46,626.626 INFO    ] ================================================
[2026-06-05 13:04:47,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:04:47
[2026-06-05 13:04:47,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:04:48,056.056 INFO    ] Initializing speech engine...
[2026-06-05 13:04:48,065.065 INFO    ] 2026-06-05 13:04:48
[2026-06-05 13:04:48,364.364 INFO    ] 2026-06-05 13:04:48
[2026-06-05 13:04:48,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:04:48,459.459 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 13:04:48,626.626 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:04:48,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:04:48,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:04:48,751.751 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 13:04:48,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:04:50,812.812 INFO    ] ================================================
[2026-06-05 13:04:50,828.828 INFO    ] Launching Daemon at Fri Jun  5 13:04:50 IST 2026
[2026-06-05 13:04:50,840.840 INFO    ] ================================================
[2026-06-05 13:04:51,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:04:51
[2026-06-05 13:04:52,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:04:52,326.326 INFO    ] Initializing speech engine...
[2026-06-05 13:04:52,335.335 INFO    ] 2026-06-05 13:04:52
[2026-06-05 13:04:52,600.600 INFO    ] 2026-06-05 13:04:52
[2026-06-05 13:04:52,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:04:52,730.730 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 13:04:52,903.903 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:04:52,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:04:52,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:04:53,021.021 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 13:04:53,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:04:55,111.111 INFO    ] ================================================
[2026-06-05 13:04:55,126.126 INFO    ] Launching Daemon at Fri Jun  5 13:04:55 IST 2026
[2026-06-05 13:04:55,137.137 INFO    ] ================================================
[2026-06-05 13:04:55,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:04:55
[2026-06-05 13:04:56,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:04:56,565.565 INFO    ] Initializing speech engine...
[2026-06-05 13:04:56,572.572 INFO    ] 2026-06-05 13:04:56
[2026-06-05 13:04:56,838.838 INFO    ] 2026-06-05 13:04:56
[2026-06-05 13:04:56,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:05:01,956.956 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-05 13:05:01,984.984 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:05:01,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:05:01,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:05:01,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:05:04,039.039 INFO    ] ================================================
[2026-06-05 13:05:04,055.055 INFO    ] Launching Daemon at Fri Jun  5 13:05:04 IST 2026
[2026-06-05 13:05:04,067.067 INFO    ] ================================================
[2026-06-05 13:05:04,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:05:04
[2026-06-05 13:05:05,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:05:05,523.523 INFO    ] Initializing speech engine...
[2026-06-05 13:05:05,539.539 INFO    ] 2026-06-05 13:05:05
[2026-06-05 13:05:05,794.794 INFO    ] 2026-06-05 13:05:05
[2026-06-05 13:05:05,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:05:05,955.955 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 13:05:06,063.063 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:05:06,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:05:06,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:05:06,160.160 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 13:05:06,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:05:08,247.247 INFO    ] ================================================
[2026-06-05 13:05:08,263.263 INFO    ] Launching Daemon at Fri Jun  5 13:05:08 IST 2026
[2026-06-05 13:05:08,274.274 INFO    ] ================================================
[2026-06-05 13:05:08,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:05:08
[2026-06-05 13:05:09,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:05:09,890.890 INFO    ] Initializing speech engine...
[2026-06-05 13:05:09,897.897 INFO    ] 2026-06-05 13:05:09
[2026-06-05 13:05:10,174.174 INFO    ] 2026-06-05 13:05:10
[2026-06-05 13:05:10,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:05:10,330.330 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 13:05:10,478.478 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:05:10,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:05:10,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:05:10,548.548 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 13:05:10,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:05:12,644.644 INFO    ] ================================================
[2026-06-05 13:05:12,660.660 INFO    ] Launching Daemon at Fri Jun  5 13:05:12 IST 2026
[2026-06-05 13:05:12,670.670 INFO    ] ================================================
[2026-06-05 13:05:13,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:05:13
[2026-06-05 13:05:13,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:05:14,118.118 INFO    ] Initializing speech engine...
[2026-06-05 13:05:14,127.127 INFO    ] 2026-06-05 13:05:14
[2026-06-05 13:05:14,420.420 INFO    ] 2026-06-05 13:05:14
[2026-06-05 13:05:14,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:05:19,490.490 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-05 13:05:19,518.518 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:05:19,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:05:19,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:05:19,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:05:21,569.569 INFO    ] ================================================
[2026-06-05 13:05:21,585.585 INFO    ] Launching Daemon at Fri Jun  5 13:05:21 IST 2026
[2026-06-05 13:05:21,596.596 INFO    ] ================================================
[2026-06-05 13:05:22,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:05:22
[2026-06-05 13:05:22,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:05:23,193.193 INFO    ] Initializing speech engine...
[2026-06-05 13:05:23,201.201 INFO    ] 2026-06-05 13:05:23
[2026-06-05 13:05:23,479.479 INFO    ] 2026-06-05 13:05:23
[2026-06-05 13:05:23,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:05:23,633.633 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 13:05:23,773.773 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 13:05:23,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:05:23,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:05:23,855.855 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 13:05:23,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:05:26,998.998 INFO    ] ================================================
[2026-06-05 13:05:26,016.016 INFO    ] Launching Daemon at Fri Jun  5 13:05:26 IST 2026
[2026-06-05 13:05:26,028.028 INFO    ] ================================================
[2026-06-05 13:05:26,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:05:26
[2026-06-05 13:05:27,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:05:27,498.498 INFO    ] Initializing speech engine...
[2026-06-05 13:05:27,508.508 INFO    ] 2026-06-05 13:05:27
[2026-06-05 13:05:27,771.771 INFO    ] 2026-06-05 13:05:27
[2026-06-05 13:05:27,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:05:27,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:05:27,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:05:28,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:05:28,129.129 INFO    ] time= 05/06/2026 13:05:28
[2026-06-05 13:05:28,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:05:28,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:05:28,208.208 INFO    ] No existing commands found in stream
[2026-06-05 13:05:33,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:05:33,241.241 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 13:05:36,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:05:36,882.882 INFO    ] Checking for system updates...
[2026-06-05 13:05:36,928.928 INFO    ] 200
[2026-06-05 13:05:36,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:05:36,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:05:36,986.986 INFO    ] No update needed
[2026-06-05 13:05:36,988.988 INFO    ] Checking for camera pi updates...
[2026-06-05 13:05:37,022.022 INFO    ] 200
[2026-06-05 13:05:37,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:05:37,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:05:37,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:05:37,120.120 INFO    ] No camera update needed
[2026-06-05 13:05:37,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:05:37,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:05:37,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:05:37,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:05:39,176.176 INFO    ] ================================================
[2026-06-05 13:05:39,191.191 INFO    ] Launching Daemon at Fri Jun  5 13:05:39 IST 2026
[2026-06-05 13:05:39,206.206 INFO    ] ================================================
[2026-06-05 13:05:39,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:05:39
[2026-06-05 13:05:40,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:05:40,647.647 INFO    ] Initializing speech engine...
[2026-06-05 13:05:40,662.662 INFO    ] 2026-06-05 13:05:40
[2026-06-05 13:05:40,939.939 INFO    ] 2026-06-05 13:05:40
[2026-06-05 13:05:40,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:05:41,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:05:41,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:05:41,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:05:41,326.326 INFO    ] time= 05/06/2026 13:05:41
[2026-06-05 13:05:41,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:05:41,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:05:41,453.453 INFO    ] No existing commands found in stream
[2026-06-05 13:05:46,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:05:46,468.468 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 13:05:50,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:05:50,491.491 INFO    ] Checking for system updates...
[2026-06-05 13:05:50,528.528 INFO    ] 200
[2026-06-05 13:05:50,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:05:50,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:05:50,587.587 INFO    ] No update needed
[2026-06-05 13:05:50,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 13:05:50,628.628 INFO    ] 200
[2026-06-05 13:05:50,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:05:50,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:05:50,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:05:50,708.708 INFO    ] No camera update needed
[2026-06-05 13:05:50,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:05:50,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:05:50,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:05:50,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:05:52,765.765 INFO    ] ================================================
[2026-06-05 13:05:52,781.781 INFO    ] Launching Daemon at Fri Jun  5 13:05:52 IST 2026
[2026-06-05 13:05:52,792.792 INFO    ] ================================================
[2026-06-05 13:05:53,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:05:53
[2026-06-05 13:05:53,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:05:54,249.249 INFO    ] Initializing speech engine...
[2026-06-05 13:05:54,258.258 INFO    ] 2026-06-05 13:05:54
[2026-06-05 13:05:54,505.505 INFO    ] 2026-06-05 13:05:54
[2026-06-05 13:05:54,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:05:54,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:05:54,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:05:54,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:05:54,955.955 INFO    ] time= 05/06/2026 13:05:54
[2026-06-05 13:05:55,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:05:55,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:05:55,123.123 INFO    ] No existing commands found in stream
[2026-06-05 13:06:00,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:06:00,138.138 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 13:06:03,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:06:03,821.821 INFO    ] Checking for system updates...
[2026-06-05 13:06:03,862.862 INFO    ] 200
[2026-06-05 13:06:03,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:06:03,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:06:03,927.927 INFO    ] No update needed
[2026-06-05 13:06:03,929.929 INFO    ] Checking for camera pi updates...
[2026-06-05 13:06:03,967.967 INFO    ] 200
[2026-06-05 13:06:03,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:06:04,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:06:04,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:06:04,044.044 INFO    ] No camera update needed
[2026-06-05 13:06:04,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:06:04,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:06:04,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:06:04,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:06:06,100.100 INFO    ] ================================================
[2026-06-05 13:06:06,115.115 INFO    ] Launching Daemon at Fri Jun  5 13:06:06 IST 2026
[2026-06-05 13:06:06,126.126 INFO    ] ================================================
[2026-06-05 13:06:06,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:06:06
[2026-06-05 13:06:07,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:06:07,664.664 INFO    ] Initializing speech engine...
[2026-06-05 13:06:07,689.689 INFO    ] 2026-06-05 13:06:07
[2026-06-05 13:06:07,960.960 INFO    ] 2026-06-05 13:06:07
[2026-06-05 13:06:07,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:06:08,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:06:08,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:06:08,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:06:08,338.338 INFO    ] time= 05/06/2026 13:06:08
[2026-06-05 13:06:08,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:06:08,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:06:08,462.462 INFO    ] No existing commands found in stream
[2026-06-05 13:06:13,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:06:13,477.477 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 13:06:14,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:06:14,754.754 INFO    ] Checking for system updates...
[2026-06-05 13:06:14,824.824 INFO    ] 200
[2026-06-05 13:06:14,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 13:06:14,830.830 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 13:06:14,832.832 INFO    ] Checking for camera pi updates...
[2026-06-05 13:06:14,899.899 INFO    ] 200
[2026-06-05 13:06:14,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 13:06:14,904.904 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 13:06:14,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:06:14,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:06:14,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:06:14,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:06:16,964.964 INFO    ] ================================================
[2026-06-05 13:06:16,980.980 INFO    ] Launching Daemon at Fri Jun  5 13:06:16 IST 2026
[2026-06-05 13:06:16,991.991 INFO    ] ================================================
[2026-06-05 13:06:17,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:06:17
[2026-06-05 13:06:18,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:06:18,392.392 INFO    ] Initializing speech engine...
[2026-06-05 13:06:18,414.414 INFO    ] 2026-06-05 13:06:18
[2026-06-05 13:06:18,668.668 INFO    ] 2026-06-05 13:06:18
[2026-06-05 13:06:18,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:06:18,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:06:18,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:06:19,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:06:19,143.143 INFO    ] time= 05/06/2026 13:06:19
[2026-06-05 13:06:19,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:06:19,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:06:19,330.330 INFO    ] No existing commands found in stream
[2026-06-05 13:06:24,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:06:24,364.364 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 13:06:26,293.293 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:06:26,297.297 INFO    ] Checking for system updates...
[2026-06-05 13:06:26,337.337 INFO    ] 200
[2026-06-05 13:06:26,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:06:26,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:06:26,399.399 INFO    ] No update needed
[2026-06-05 13:06:26,402.402 INFO    ] Checking for camera pi updates...
[2026-06-05 13:06:26,437.437 INFO    ] 200
[2026-06-05 13:06:26,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:06:26,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:06:26,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:06:26,535.535 INFO    ] No camera update needed
[2026-06-05 13:06:26,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:06:26,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:06:26,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:06:26,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:06:28,601.601 INFO    ] ================================================
[2026-06-05 13:06:28,618.618 INFO    ] Launching Daemon at Fri Jun  5 13:06:28 IST 2026
[2026-06-05 13:06:28,631.631 INFO    ] ================================================
[2026-06-05 13:06:29,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:06:29
[2026-06-05 13:06:29,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:06:30,161.161 INFO    ] Initializing speech engine...
[2026-06-05 13:06:30,171.171 INFO    ] 2026-06-05 13:06:30
[2026-06-05 13:06:30,481.481 INFO    ] 2026-06-05 13:06:30
[2026-06-05 13:06:30,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:06:30,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:06:30,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:06:30,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:06:30,965.965 INFO    ] time= 05/06/2026 13:06:30
[2026-06-05 13:06:31,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:06:31,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:06:31,182.182 INFO    ] No existing commands found in stream
[2026-06-05 13:06:36,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:06:36,216.216 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 13:06:37,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:06:37,863.863 INFO    ] Checking for system updates...
[2026-06-05 13:06:37,900.900 INFO    ] 200
[2026-06-05 13:06:37,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:06:37,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:06:37,958.958 INFO    ] No update needed
[2026-06-05 13:06:37,961.961 INFO    ] Checking for camera pi updates...
[2026-06-05 13:06:37,994.994 INFO    ] 200
[2026-06-05 13:06:37,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:06:38,038.038 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:06:38,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:06:38,082.082 INFO    ] No camera update needed
[2026-06-05 13:06:38,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:06:38,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:06:38,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:06:38,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:06:40,139.139 INFO    ] ================================================
[2026-06-05 13:06:40,156.156 INFO    ] Launching Daemon at Fri Jun  5 13:06:40 IST 2026
[2026-06-05 13:06:40,167.167 INFO    ] ================================================
[2026-06-05 13:06:40,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:06:40
[2026-06-05 13:06:41,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:06:41,824.824 INFO    ] Initializing speech engine...
[2026-06-05 13:06:41,832.832 INFO    ] 2026-06-05 13:06:41
[2026-06-05 13:06:42,124.124 INFO    ] 2026-06-05 13:06:42
[2026-06-05 13:06:42,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:06:42,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:06:42,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:06:42,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:06:42,599.599 INFO    ] time= 05/06/2026 13:06:42
[2026-06-05 13:06:42,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:06:42,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:06:42,740.740 INFO    ] No existing commands found in stream
[2026-06-05 13:06:47,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:06:47,758.758 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 13:06:51,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:06:51,459.459 INFO    ] Checking for system updates...
[2026-06-05 13:06:51,497.497 INFO    ] 200
[2026-06-05 13:06:51,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:06:51,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:06:51,565.565 INFO    ] No update needed
[2026-06-05 13:06:51,568.568 INFO    ] Checking for camera pi updates...
[2026-06-05 13:06:51,604.604 INFO    ] 200
[2026-06-05 13:06:51,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:06:51,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:06:51,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:06:51,689.689 INFO    ] No camera update needed
[2026-06-05 13:06:51,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:06:51,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:06:51,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:06:51,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:06:53,746.746 INFO    ] ================================================
[2026-06-05 13:06:53,762.762 INFO    ] Launching Daemon at Fri Jun  5 13:06:53 IST 2026
[2026-06-05 13:06:53,773.773 INFO    ] ================================================
[2026-06-05 13:06:54,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:06:54
[2026-06-05 13:06:54,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:06:55,192.192 INFO    ] Initializing speech engine...
[2026-06-05 13:06:55,202.202 INFO    ] 2026-06-05 13:06:55
[2026-06-05 13:06:55,451.451 INFO    ] 2026-06-05 13:06:55
[2026-06-05 13:06:55,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:06:55,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:06:55,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:06:55,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:06:55,888.888 INFO    ] time= 05/06/2026 13:06:55
[2026-06-05 13:06:55,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:06:55,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:06:56,089.089 INFO    ] No existing commands found in stream
[2026-06-05 13:07:01,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:07:01,129.129 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 13:07:04,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:07:04,408.408 INFO    ] Checking for system updates...
[2026-06-05 13:07:04,444.444 INFO    ] 200
[2026-06-05 13:07:04,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:04,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:07:04,502.502 INFO    ] No update needed
[2026-06-05 13:07:04,504.504 INFO    ] Checking for camera pi updates...
[2026-06-05 13:07:04,538.538 INFO    ] 200
[2026-06-05 13:07:04,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:04,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:07:04,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:07:04,635.635 INFO    ] No camera update needed
[2026-06-05 13:07:04,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:07:04,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:07:04,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:07:04,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:07:06,692.692 INFO    ] ================================================
[2026-06-05 13:07:06,711.711 INFO    ] Launching Daemon at Fri Jun  5 13:07:06 IST 2026
[2026-06-05 13:07:06,723.723 INFO    ] ================================================
[2026-06-05 13:07:07,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:07:07
[2026-06-05 13:07:07,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:07:08,252.252 INFO    ] Initializing speech engine...
[2026-06-05 13:07:08,266.266 INFO    ] 2026-06-05 13:07:08
[2026-06-05 13:07:08,549.549 INFO    ] 2026-06-05 13:07:08
[2026-06-05 13:07:08,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:07:08,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:07:08,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:07:09,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:07:09,100.100 INFO    ] time= 05/06/2026 13:07:09
[2026-06-05 13:07:09,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:07:09,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:07:09,239.239 INFO    ] No existing commands found in stream
[2026-06-05 13:07:14,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:07:14,272.272 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 13:07:17,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:07:17,672.672 INFO    ] Checking for system updates...
[2026-06-05 13:07:17,710.710 INFO    ] 200
[2026-06-05 13:07:17,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:17,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:07:17,770.770 INFO    ] No update needed
[2026-06-05 13:07:17,773.773 INFO    ] Checking for camera pi updates...
[2026-06-05 13:07:17,808.808 INFO    ] 200
[2026-06-05 13:07:17,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:17,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:07:17,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:07:17,909.909 INFO    ] No camera update needed
[2026-06-05 13:07:17,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:07:17,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:07:17,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:07:17,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:07:19,968.968 INFO    ] ================================================
[2026-06-05 13:07:19,984.984 INFO    ] Launching Daemon at Fri Jun  5 13:07:19 IST 2026
[2026-06-05 13:07:20,995.995 INFO    ] ================================================
[2026-06-05 13:07:20,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:07:20
[2026-06-05 13:07:21,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:07:21,410.410 INFO    ] Initializing speech engine...
[2026-06-05 13:07:21,424.424 INFO    ] 2026-06-05 13:07:21
[2026-06-05 13:07:21,690.690 INFO    ] 2026-06-05 13:07:21
[2026-06-05 13:07:21,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:07:21,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:07:21,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:07:22,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:07:22,399.399 INFO    ] time= 05/06/2026 13:07:22
[2026-06-05 13:07:22,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:07:22,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:07:22,643.643 INFO    ] No existing commands found in stream
[2026-06-05 13:07:27,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:07:27,672.672 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 13:07:30,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:07:30,663.663 INFO    ] Checking for system updates...
[2026-06-05 13:07:30,700.700 INFO    ] 200
[2026-06-05 13:07:30,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:30,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:07:30,760.760 INFO    ] No update needed
[2026-06-05 13:07:30,763.763 INFO    ] Checking for camera pi updates...
[2026-06-05 13:07:30,798.798 INFO    ] 200
[2026-06-05 13:07:30,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:30,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:07:30,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:07:30,892.892 INFO    ] No camera update needed
[2026-06-05 13:07:30,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:07:30,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:07:30,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:07:30,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:07:32,954.954 INFO    ] ================================================
[2026-06-05 13:07:32,971.971 INFO    ] Launching Daemon at Fri Jun  5 13:07:32 IST 2026
[2026-06-05 13:07:32,984.984 INFO    ] ================================================
[2026-06-05 13:07:33,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:07:33
[2026-06-05 13:07:34,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:07:34,486.486 INFO    ] Initializing speech engine...
[2026-06-05 13:07:34,495.495 INFO    ] 2026-06-05 13:07:34
[2026-06-05 13:07:34,745.745 INFO    ] 2026-06-05 13:07:34
[2026-06-05 13:07:34,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:07:36,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:07:36,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:07:36,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:07:36,877.877 INFO    ] time= 05/06/2026 13:07:36
[2026-06-05 13:07:36,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:07:36,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:07:36,966.966 INFO    ] No existing commands found in stream
[2026-06-05 13:07:41,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:07:41,987.987 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 13:07:43,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:07:43,710.710 INFO    ] Checking for system updates...
[2026-06-05 13:07:43,748.748 INFO    ] 200
[2026-06-05 13:07:43,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:43,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:07:43,810.810 INFO    ] No update needed
[2026-06-05 13:07:43,813.813 INFO    ] Checking for camera pi updates...
[2026-06-05 13:07:43,847.847 INFO    ] 200
[2026-06-05 13:07:43,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:43,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:07:43,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:07:43,944.944 INFO    ] No camera update needed
[2026-06-05 13:07:43,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:07:43,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:07:43,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:07:43,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:07:46,004.004 INFO    ] ================================================
[2026-06-05 13:07:46,020.020 INFO    ] Launching Daemon at Fri Jun  5 13:07:46 IST 2026
[2026-06-05 13:07:46,031.031 INFO    ] ================================================
[2026-06-05 13:07:46,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:07:46
[2026-06-05 13:07:47,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:07:47,459.459 INFO    ] Initializing speech engine...
[2026-06-05 13:07:47,463.463 INFO    ] 2026-06-05 13:07:47
[2026-06-05 13:07:47,742.742 INFO    ] 2026-06-05 13:07:47
[2026-06-05 13:07:47,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:07:47,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:07:48,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:07:48,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:07:48,227.227 INFO    ] time= 05/06/2026 13:07:48
[2026-06-05 13:07:48,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:07:48,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:07:48,381.381 INFO    ] No existing commands found in stream
[2026-06-05 13:07:53,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:07:53,399.399 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 13:07:56,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:07:56,312.312 INFO    ] Checking for system updates...
[2026-06-05 13:07:56,362.362 INFO    ] 200
[2026-06-05 13:07:56,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:56,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:07:56,423.423 INFO    ] No update needed
[2026-06-05 13:07:56,426.426 INFO    ] Checking for camera pi updates...
[2026-06-05 13:07:56,465.465 INFO    ] 200
[2026-06-05 13:07:56,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:07:56,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:07:56,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:07:56,537.537 INFO    ] No camera update needed
[2026-06-05 13:07:56,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:07:56,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:07:56,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:07:56,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:07:58,593.593 INFO    ] ================================================
[2026-06-05 13:07:58,608.608 INFO    ] Launching Daemon at Fri Jun  5 13:07:58 IST 2026
[2026-06-05 13:07:58,619.619 INFO    ] ================================================
[2026-06-05 13:07:59,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:07:59
[2026-06-05 13:07:59,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:08:00,096.096 INFO    ] Initializing speech engine...
[2026-06-05 13:08:00,101.101 INFO    ] 2026-06-05 13:08:00
[2026-06-05 13:08:00,363.363 INFO    ] 2026-06-05 13:08:00
[2026-06-05 13:08:00,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:08:00,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:08:00,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:08:00,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:08:00,809.809 INFO    ] time= 05/06/2026 13:08:00
[2026-06-05 13:08:00,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:08:00,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:08:01,067.067 INFO    ] No existing commands found in stream
[2026-06-05 13:08:06,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:08:06,092.092 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 13:08:10,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:08:10,191.191 INFO    ] Checking for system updates...
[2026-06-05 13:08:10,226.226 INFO    ] 200
[2026-06-05 13:08:10,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:08:10,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:08:10,284.284 INFO    ] No update needed
[2026-06-05 13:08:10,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 13:08:10,320.320 INFO    ] 200
[2026-06-05 13:08:10,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:08:10,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:08:10,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:08:10,413.413 INFO    ] No camera update needed
[2026-06-05 13:08:10,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:08:10,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:08:10,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:08:10,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:08:12,468.468 INFO    ] ================================================
[2026-06-05 13:08:12,484.484 INFO    ] Launching Daemon at Fri Jun  5 13:08:12 IST 2026
[2026-06-05 13:08:12,495.495 INFO    ] ================================================
[2026-06-05 13:08:13,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:08:13
[2026-06-05 13:08:13,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:08:13,916.916 INFO    ] Initializing speech engine...
[2026-06-05 13:08:13,922.922 INFO    ] 2026-06-05 13:08:13
[2026-06-05 13:08:14,221.221 INFO    ] 2026-06-05 13:08:14
[2026-06-05 13:08:14,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:08:14,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:08:14,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:08:14,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:08:14,606.606 INFO    ] time= 05/06/2026 13:08:14
[2026-06-05 13:08:14,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:08:14,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:08:14,733.733 INFO    ] No existing commands found in stream
[2026-06-05 13:08:19,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:08:19,749.749 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 13:08:22,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:08:22,154.154 INFO    ] Checking for system updates...
[2026-06-05 13:08:22,191.191 INFO    ] 200
[2026-06-05 13:08:22,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:08:22,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:08:22,249.249 INFO    ] No update needed
[2026-06-05 13:08:22,251.251 INFO    ] Checking for camera pi updates...
[2026-06-05 13:08:22,285.285 INFO    ] 200
[2026-06-05 13:08:22,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:08:22,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:08:22,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:08:22,481.481 INFO    ] No camera update needed
[2026-06-05 13:08:22,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:08:22,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:08:22,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:08:22,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:08:24,539.539 INFO    ] ================================================
[2026-06-05 13:08:24,554.554 INFO    ] Launching Daemon at Fri Jun  5 13:08:24 IST 2026
[2026-06-05 13:08:24,566.566 INFO    ] ================================================
[2026-06-05 13:08:25,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:08:25
[2026-06-05 13:08:25,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:08:26,177.177 INFO    ] Initializing speech engine...
[2026-06-05 13:08:26,184.184 INFO    ] 2026-06-05 13:08:26
[2026-06-05 13:08:26,469.469 INFO    ] 2026-06-05 13:08:26
[2026-06-05 13:08:26,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:08:26,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:08:26,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:08:26,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:08:27,006.006 INFO    ] time= 05/06/2026 13:08:26
[2026-06-05 13:08:27,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:08:27,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:08:27,157.157 INFO    ] No existing commands found in stream
[2026-06-05 13:08:32,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:08:32,177.177 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 13:08:37,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:08:37,183.183 INFO    ] Checking for system updates...
[2026-06-05 13:08:37,222.222 INFO    ] 200
[2026-06-05 13:08:37,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:08:37,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:08:37,281.281 INFO    ] No update needed
[2026-06-05 13:08:37,283.283 INFO    ] Checking for camera pi updates...
[2026-06-05 13:08:37,320.320 INFO    ] 200
[2026-06-05 13:08:37,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:08:37,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:08:37,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:08:37,417.417 INFO    ] No camera update needed
[2026-06-05 13:08:37,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:08:37,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:08:37,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:08:37,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:08:39,474.474 INFO    ] ================================================
[2026-06-05 13:08:39,490.490 INFO    ] Launching Daemon at Fri Jun  5 13:08:39 IST 2026
[2026-06-05 13:08:39,500.500 INFO    ] ================================================
[2026-06-05 13:08:40,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:08:40
[2026-06-05 13:08:40,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:08:41,160.160 INFO    ] Initializing speech engine...
[2026-06-05 13:08:41,167.167 INFO    ] 2026-06-05 13:08:41
[2026-06-05 13:08:41,455.455 INFO    ] 2026-06-05 13:08:41
[2026-06-05 13:08:41,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:08:41,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:08:41,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:08:41,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:08:41,997.997 INFO    ] time= 05/06/2026 13:08:41
[2026-06-05 13:08:42,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:08:42,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:08:42,167.167 INFO    ] No existing commands found in stream
[2026-06-05 13:08:47,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:08:47,197.197 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 13:08:51,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:08:51,264.264 INFO    ] Checking for system updates...
[2026-06-05 13:08:51,303.303 INFO    ] 200
[2026-06-05 13:08:51,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:08:51,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:08:51,362.362 INFO    ] No update needed
[2026-06-05 13:08:51,364.364 INFO    ] Checking for camera pi updates...
[2026-06-05 13:08:51,402.402 INFO    ] 200
[2026-06-05 13:08:51,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:08:51,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:08:51,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:08:51,507.507 INFO    ] No camera update needed
[2026-06-05 13:08:51,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:08:51,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:08:51,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:08:51,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:08:53,564.564 INFO    ] ================================================
[2026-06-05 13:08:53,581.581 INFO    ] Launching Daemon at Fri Jun  5 13:08:53 IST 2026
[2026-06-05 13:08:53,595.595 INFO    ] ================================================
[2026-06-05 13:08:54,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:08:54
[2026-06-05 13:08:54,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:08:55,084.084 INFO    ] Initializing speech engine...
[2026-06-05 13:08:55,090.090 INFO    ] 2026-06-05 13:08:55
[2026-06-05 13:08:55,351.351 INFO    ] 2026-06-05 13:08:55
[2026-06-05 13:08:55,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:08:55,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:08:55,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:08:55,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:08:55,811.811 INFO    ] time= 05/06/2026 13:08:55
[2026-06-05 13:08:55,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:08:55,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:08:56,048.048 INFO    ] No existing commands found in stream
[2026-06-05 13:09:01,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:09:01,065.065 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 13:09:03,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:09:03,529.529 INFO    ] Checking for system updates...
[2026-06-05 13:09:03,565.565 INFO    ] 200
[2026-06-05 13:09:03,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:03,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:09:03,624.624 INFO    ] No update needed
[2026-06-05 13:09:03,627.627 INFO    ] Checking for camera pi updates...
[2026-06-05 13:09:03,666.666 INFO    ] 200
[2026-06-05 13:09:03,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:03,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:09:03,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:09:03,771.771 INFO    ] No camera update needed
[2026-06-05 13:09:03,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:09:03,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:09:03,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:09:03,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:09:05,832.832 INFO    ] ================================================
[2026-06-05 13:09:05,849.849 INFO    ] Launching Daemon at Fri Jun  5 13:09:05 IST 2026
[2026-06-05 13:09:05,860.860 INFO    ] ================================================
[2026-06-05 13:09:06,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:09:06
[2026-06-05 13:09:07,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:09:07,448.448 INFO    ] Initializing speech engine...
[2026-06-05 13:09:07,458.458 INFO    ] 2026-06-05 13:09:07
[2026-06-05 13:09:07,720.720 INFO    ] 2026-06-05 13:09:07
[2026-06-05 13:09:07,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:09:08,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:09:08,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:09:08,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:09:08,189.189 INFO    ] time= 05/06/2026 13:09:08
[2026-06-05 13:09:08,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:09:08,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:09:08,430.430 INFO    ] No existing commands found in stream
[2026-06-05 13:09:13,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:09:13,448.448 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 13:09:14,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:09:14,021.021 INFO    ] Checking for system updates...
[2026-06-05 13:09:14,058.058 INFO    ] 200
[2026-06-05 13:09:14,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:14,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:09:14,121.121 INFO    ] No update needed
[2026-06-05 13:09:14,123.123 INFO    ] Checking for camera pi updates...
[2026-06-05 13:09:14,157.157 INFO    ] 200
[2026-06-05 13:09:14,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:14,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:09:14,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:09:14,245.245 INFO    ] No camera update needed
[2026-06-05 13:09:14,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:09:14,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:09:14,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:09:14,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:09:16,303.303 INFO    ] ================================================
[2026-06-05 13:09:16,319.319 INFO    ] Launching Daemon at Fri Jun  5 13:09:16 IST 2026
[2026-06-05 13:09:16,331.331 INFO    ] ================================================
[2026-06-05 13:09:16,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:09:16
[2026-06-05 13:09:17,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:09:17,829.829 INFO    ] Initializing speech engine...
[2026-06-05 13:09:17,835.835 INFO    ] 2026-06-05 13:09:17
[2026-06-05 13:09:18,146.146 INFO    ] 2026-06-05 13:09:18
[2026-06-05 13:09:18,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:09:18,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:09:18,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:09:18,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:09:18,568.568 INFO    ] time= 05/06/2026 13:09:18
[2026-06-05 13:09:18,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:09:18,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:09:18,678.678 INFO    ] No existing commands found in stream
[2026-06-05 13:09:23,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:09:23,694.694 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 13:09:27,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:09:27,294.294 INFO    ] Checking for system updates...
[2026-06-05 13:09:27,334.334 INFO    ] 200
[2026-06-05 13:09:27,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:27,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:09:27,400.400 INFO    ] No update needed
[2026-06-05 13:09:27,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 13:09:27,438.438 INFO    ] 200
[2026-06-05 13:09:27,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:27,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:09:27,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:09:27,529.529 INFO    ] No camera update needed
[2026-06-05 13:09:27,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:09:27,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:09:27,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:09:27,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:09:29,586.586 INFO    ] ================================================
[2026-06-05 13:09:29,602.602 INFO    ] Launching Daemon at Fri Jun  5 13:09:29 IST 2026
[2026-06-05 13:09:29,613.613 INFO    ] ================================================
[2026-06-05 13:09:30,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:09:30
[2026-06-05 13:09:30,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:09:31,090.090 INFO    ] Initializing speech engine...
[2026-06-05 13:09:31,119.119 INFO    ] 2026-06-05 13:09:31
[2026-06-05 13:09:31,404.404 INFO    ] 2026-06-05 13:09:31
[2026-06-05 13:09:31,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:09:31,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:09:31,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:09:31,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:09:31,814.814 INFO    ] time= 05/06/2026 13:09:31
[2026-06-05 13:09:31,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:09:31,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:09:31,952.952 INFO    ] No existing commands found in stream
[2026-06-05 13:09:36,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:09:36,970.970 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 13:09:39,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:09:39,369.369 INFO    ] Checking for system updates...
[2026-06-05 13:09:39,406.406 INFO    ] 200
[2026-06-05 13:09:39,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:39,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:09:39,465.465 INFO    ] No update needed
[2026-06-05 13:09:39,467.467 INFO    ] Checking for camera pi updates...
[2026-06-05 13:09:39,501.501 INFO    ] 200
[2026-06-05 13:09:39,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:39,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:09:39,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:09:39,595.595 INFO    ] No camera update needed
[2026-06-05 13:09:39,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:09:39,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:09:39,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:09:39,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:09:41,652.652 INFO    ] ================================================
[2026-06-05 13:09:41,668.668 INFO    ] Launching Daemon at Fri Jun  5 13:09:41 IST 2026
[2026-06-05 13:09:41,679.679 INFO    ] ================================================
[2026-06-05 13:09:42,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:09:42
[2026-06-05 13:09:42,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:09:43,176.176 INFO    ] Initializing speech engine...
[2026-06-05 13:09:43,185.185 INFO    ] 2026-06-05 13:09:43
[2026-06-05 13:09:43,449.449 INFO    ] 2026-06-05 13:09:43
[2026-06-05 13:09:43,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:09:43,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:09:43,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:09:43,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:09:43,997.997 INFO    ] time= 05/06/2026 13:09:43
[2026-06-05 13:09:44,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:09:44,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:09:44,153.153 INFO    ] No existing commands found in stream
[2026-06-05 13:09:49,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:09:49,170.170 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 13:09:50,791.791 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:09:50,794.794 INFO    ] Checking for system updates...
[2026-06-05 13:09:50,834.834 INFO    ] 200
[2026-06-05 13:09:50,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:50,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:09:50,899.899 INFO    ] No update needed
[2026-06-05 13:09:50,901.901 INFO    ] Checking for camera pi updates...
[2026-06-05 13:09:50,939.939 INFO    ] 200
[2026-06-05 13:09:50,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:09:50,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:09:51,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:09:51,029.029 INFO    ] No camera update needed
[2026-06-05 13:09:51,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:09:51,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:09:51,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:09:51,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:09:53,084.084 INFO    ] ================================================
[2026-06-05 13:09:53,099.099 INFO    ] Launching Daemon at Fri Jun  5 13:09:53 IST 2026
[2026-06-05 13:09:53,110.110 INFO    ] ================================================
[2026-06-05 13:09:53,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:09:53
[2026-06-05 13:09:54,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:09:54,573.573 INFO    ] Initializing speech engine...
[2026-06-05 13:09:54,593.593 INFO    ] 2026-06-05 13:09:54
[2026-06-05 13:09:54,863.863 INFO    ] 2026-06-05 13:09:54
[2026-06-05 13:09:54,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:09:55,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:09:55,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:09:55,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:09:55,776.776 INFO    ] time= 05/06/2026 13:09:55
[2026-06-05 13:09:55,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:09:55,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:09:55,958.958 INFO    ] No existing commands found in stream
[2026-06-05 13:10:00,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:10:00,995.995 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 13:10:08,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:10:08,518.518 INFO    ] Checking for system updates...
[2026-06-05 13:10:08,554.554 INFO    ] 200
[2026-06-05 13:10:08,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:08,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:10:08,622.622 INFO    ] No update needed
[2026-06-05 13:10:08,625.625 INFO    ] Checking for camera pi updates...
[2026-06-05 13:10:08,661.661 INFO    ] 200
[2026-06-05 13:10:08,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:08,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:10:08,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:10:08,751.751 INFO    ] No camera update needed
[2026-06-05 13:10:08,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:10:08,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:10:08,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:10:08,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:10:10,809.809 INFO    ] ================================================
[2026-06-05 13:10:10,824.824 INFO    ] Launching Daemon at Fri Jun  5 13:10:10 IST 2026
[2026-06-05 13:10:10,835.835 INFO    ] ================================================
[2026-06-05 13:10:11,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:10:11
[2026-06-05 13:10:12,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:10:12,417.417 INFO    ] Initializing speech engine...
[2026-06-05 13:10:12,436.436 INFO    ] 2026-06-05 13:10:12
[2026-06-05 13:10:12,687.687 INFO    ] 2026-06-05 13:10:12
[2026-06-05 13:10:12,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:10:12,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:10:12,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:10:13,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:10:13,140.140 INFO    ] time= 05/06/2026 13:10:13
[2026-06-05 13:10:13,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:10:13,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:10:13,414.414 INFO    ] No existing commands found in stream
[2026-06-05 13:10:18,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:10:18,437.437 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 13:10:20,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:10:20,714.714 INFO    ] Checking for system updates...
[2026-06-05 13:10:20,751.751 INFO    ] 200
[2026-06-05 13:10:20,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:20,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:10:20,817.817 INFO    ] No update needed
[2026-06-05 13:10:20,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 13:10:20,859.859 INFO    ] 200
[2026-06-05 13:10:20,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:20,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:10:20,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:10:21,183.183 INFO    ] No camera update needed
[2026-06-05 13:10:21,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:10:21,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:10:21,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:10:21,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:10:23,245.245 INFO    ] ================================================
[2026-06-05 13:10:23,261.261 INFO    ] Launching Daemon at Fri Jun  5 13:10:23 IST 2026
[2026-06-05 13:10:23,272.272 INFO    ] ================================================
[2026-06-05 13:10:23,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:10:23
[2026-06-05 13:10:24,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:10:24,713.713 INFO    ] Initializing speech engine...
[2026-06-05 13:10:24,722.722 INFO    ] 2026-06-05 13:10:24
[2026-06-05 13:10:25,021.021 INFO    ] 2026-06-05 13:10:24
[2026-06-05 13:10:25,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:10:25,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:10:25,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:10:25,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:10:25,379.379 INFO    ] time= 05/06/2026 13:10:25
[2026-06-05 13:10:25,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:10:25,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:10:25,505.505 INFO    ] No existing commands found in stream
[2026-06-05 13:10:30,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:10:30,533.533 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 13:10:32,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:10:32,096.096 INFO    ] Checking for system updates...
[2026-06-05 13:10:32,140.140 INFO    ] 200
[2026-06-05 13:10:32,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:32,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:10:32,211.211 INFO    ] No update needed
[2026-06-05 13:10:32,214.214 INFO    ] Checking for camera pi updates...
[2026-06-05 13:10:32,253.253 INFO    ] 200
[2026-06-05 13:10:32,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:32,305.305 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:10:32,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:10:32,449.449 INFO    ] No camera update needed
[2026-06-05 13:10:32,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:10:32,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:10:32,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:10:32,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:10:34,508.508 INFO    ] ================================================
[2026-06-05 13:10:34,523.523 INFO    ] Launching Daemon at Fri Jun  5 13:10:34 IST 2026
[2026-06-05 13:10:34,534.534 INFO    ] ================================================
[2026-06-05 13:10:35,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:10:35
[2026-06-05 13:10:35,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:10:35,945.945 INFO    ] Initializing speech engine...
[2026-06-05 13:10:35,949.949 INFO    ] 2026-06-05 13:10:35
[2026-06-05 13:10:36,247.247 INFO    ] 2026-06-05 13:10:36
[2026-06-05 13:10:36,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:10:36,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:10:36,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:10:37,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:10:37,148.148 INFO    ] time= 05/06/2026 13:10:37
[2026-06-05 13:10:37,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:10:37,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:10:37,349.349 INFO    ] No existing commands found in stream
[2026-06-05 13:10:42,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:10:42,369.369 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 13:10:43,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:10:43,604.604 INFO    ] Checking for system updates...
[2026-06-05 13:10:43,641.641 INFO    ] 200
[2026-06-05 13:10:43,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:43,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:10:43,701.701 INFO    ] No update needed
[2026-06-05 13:10:43,703.703 INFO    ] Checking for camera pi updates...
[2026-06-05 13:10:43,741.741 INFO    ] 200
[2026-06-05 13:10:43,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:43,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:10:43,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:10:43,816.816 INFO    ] No camera update needed
[2026-06-05 13:10:43,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:10:43,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:10:43,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:10:43,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:10:45,872.872 INFO    ] ================================================
[2026-06-05 13:10:45,887.887 INFO    ] Launching Daemon at Fri Jun  5 13:10:45 IST 2026
[2026-06-05 13:10:45,898.898 INFO    ] ================================================
[2026-06-05 13:10:46,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:10:46
[2026-06-05 13:10:47,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:10:47,311.311 INFO    ] Initializing speech engine...
[2026-06-05 13:10:47,323.323 INFO    ] 2026-06-05 13:10:47
[2026-06-05 13:10:47,590.590 INFO    ] 2026-06-05 13:10:47
[2026-06-05 13:10:47,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:10:47,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:10:47,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:10:48,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:10:48,049.049 INFO    ] time= 05/06/2026 13:10:48
[2026-06-05 13:10:48,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:10:48,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:10:48,292.292 INFO    ] No existing commands found in stream
[2026-06-05 13:10:53,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:10:53,325.325 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 13:10:57,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:10:57,433.433 INFO    ] Checking for system updates...
[2026-06-05 13:10:57,469.469 INFO    ] 200
[2026-06-05 13:10:57,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:57,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:10:57,539.539 INFO    ] No update needed
[2026-06-05 13:10:57,542.542 INFO    ] Checking for camera pi updates...
[2026-06-05 13:10:57,593.593 INFO    ] 200
[2026-06-05 13:10:57,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:10:57,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:10:57,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:10:57,697.697 INFO    ] No camera update needed
[2026-06-05 13:10:57,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:10:57,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:10:57,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:10:57,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:10:59,756.756 INFO    ] ================================================
[2026-06-05 13:10:59,771.771 INFO    ] Launching Daemon at Fri Jun  5 13:10:59 IST 2026
[2026-06-05 13:10:59,782.782 INFO    ] ================================================
[2026-06-05 13:11:00,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:11:00
[2026-06-05 13:11:00,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:11:01,229.229 INFO    ] Initializing speech engine...
[2026-06-05 13:11:01,235.235 INFO    ] 2026-06-05 13:11:01
[2026-06-05 13:11:01,545.545 INFO    ] 2026-06-05 13:11:01
[2026-06-05 13:11:01,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:11:01,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:11:01,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:11:01,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:11:01,937.937 INFO    ] time= 05/06/2026 13:11:01
[2026-06-05 13:11:01,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:11:01,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:11:02,049.049 INFO    ] No existing commands found in stream
[2026-06-05 13:11:07,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:11:07,060.060 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 13:11:07,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:11:07,734.734 INFO    ] Checking for system updates...
[2026-06-05 13:11:07,770.770 INFO    ] 200
[2026-06-05 13:11:07,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:07,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:11:07,828.828 INFO    ] No update needed
[2026-06-05 13:11:07,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 13:11:07,872.872 INFO    ] 200
[2026-06-05 13:11:07,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:07,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:11:07,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:11:07,947.947 INFO    ] No camera update needed
[2026-06-05 13:11:07,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:11:07,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:11:07,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:11:07,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:11:10,006.006 INFO    ] ================================================
[2026-06-05 13:11:10,028.028 INFO    ] Launching Daemon at Fri Jun  5 13:11:10 IST 2026
[2026-06-05 13:11:10,041.041 INFO    ] ================================================
[2026-06-05 13:11:10,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:11:10
[2026-06-05 13:11:11,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:11:11,490.490 INFO    ] Initializing speech engine...
[2026-06-05 13:11:11,500.500 INFO    ] 2026-06-05 13:11:11
[2026-06-05 13:11:11,755.755 INFO    ] 2026-06-05 13:11:11
[2026-06-05 13:11:11,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:11:12,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:11:12,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:11:12,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:11:12,224.224 INFO    ] time= 05/06/2026 13:11:12
[2026-06-05 13:11:12,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:11:12,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:11:12,451.451 INFO    ] No existing commands found in stream
[2026-06-05 13:11:17,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:11:17,480.480 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 13:11:21,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:11:21,377.377 INFO    ] Checking for system updates...
[2026-06-05 13:11:21,413.413 INFO    ] 200
[2026-06-05 13:11:21,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:21,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:11:21,471.471 INFO    ] No update needed
[2026-06-05 13:11:21,474.474 INFO    ] Checking for camera pi updates...
[2026-06-05 13:11:21,508.508 INFO    ] 200
[2026-06-05 13:11:21,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:21,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:11:21,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:11:21,603.603 INFO    ] No camera update needed
[2026-06-05 13:11:21,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:11:21,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:11:21,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:11:21,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:11:23,662.662 INFO    ] ================================================
[2026-06-05 13:11:23,677.677 INFO    ] Launching Daemon at Fri Jun  5 13:11:23 IST 2026
[2026-06-05 13:11:23,688.688 INFO    ] ================================================
[2026-06-05 13:11:24,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:11:24
[2026-06-05 13:11:25,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:11:25,348.348 INFO    ] Initializing speech engine...
[2026-06-05 13:11:25,356.356 INFO    ] 2026-06-05 13:11:25
[2026-06-05 13:11:25,630.630 INFO    ] 2026-06-05 13:11:25
[2026-06-05 13:11:25,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:11:25,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:11:25,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:11:26,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:11:26,025.025 INFO    ] time= 05/06/2026 13:11:26
[2026-06-05 13:11:26,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:11:26,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:11:26,134.134 INFO    ] No existing commands found in stream
[2026-06-05 13:11:31,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:11:31,150.150 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 13:11:33,365.365 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:11:33,367.367 INFO    ] Checking for system updates...
[2026-06-05 13:11:33,404.404 INFO    ] 200
[2026-06-05 13:11:33,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:33,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:11:33,462.462 INFO    ] No update needed
[2026-06-05 13:11:33,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 13:11:33,511.511 INFO    ] 200
[2026-06-05 13:11:33,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:33,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:11:33,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:11:33,602.602 INFO    ] No camera update needed
[2026-06-05 13:11:33,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:11:33,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:11:33,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:11:33,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:11:35,658.658 INFO    ] ================================================
[2026-06-05 13:11:35,674.674 INFO    ] Launching Daemon at Fri Jun  5 13:11:35 IST 2026
[2026-06-05 13:11:35,685.685 INFO    ] ================================================
[2026-06-05 13:11:36,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:11:36
[2026-06-05 13:11:36,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:11:37,165.165 INFO    ] Initializing speech engine...
[2026-06-05 13:11:37,174.174 INFO    ] 2026-06-05 13:11:37
[2026-06-05 13:11:37,433.433 INFO    ] 2026-06-05 13:11:37
[2026-06-05 13:11:37,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:11:37,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:11:37,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:11:37,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:11:37,920.920 INFO    ] time= 05/06/2026 13:11:37
[2026-06-05 13:11:37,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:11:37,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:11:38,072.072 INFO    ] No existing commands found in stream
[2026-06-05 13:11:43,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:11:43,111.111 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 13:11:44,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:11:44,212.212 INFO    ] Checking for system updates...
[2026-06-05 13:11:44,248.248 INFO    ] 200
[2026-06-05 13:11:44,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:44,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:11:44,308.308 INFO    ] No update needed
[2026-06-05 13:11:44,310.310 INFO    ] Checking for camera pi updates...
[2026-06-05 13:11:44,346.346 INFO    ] 200
[2026-06-05 13:11:44,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:44,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:11:44,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:11:44,447.447 INFO    ] No camera update needed
[2026-06-05 13:11:44,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:11:44,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:11:44,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:11:44,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:11:46,509.509 INFO    ] ================================================
[2026-06-05 13:11:46,524.524 INFO    ] Launching Daemon at Fri Jun  5 13:11:46 IST 2026
[2026-06-05 13:11:46,535.535 INFO    ] ================================================
[2026-06-05 13:11:47,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:11:47
[2026-06-05 13:11:47,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:11:48,014.014 INFO    ] Initializing speech engine...
[2026-06-05 13:11:48,022.022 INFO    ] 2026-06-05 13:11:48
[2026-06-05 13:11:48,287.287 INFO    ] 2026-06-05 13:11:48
[2026-06-05 13:11:48,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:11:48,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:11:48,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:11:48,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:11:48,838.838 INFO    ] time= 05/06/2026 13:11:48
[2026-06-05 13:11:48,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:11:48,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:11:48,983.983 INFO    ] No existing commands found in stream
[2026-06-05 13:11:54,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:11:54,008.008 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 13:11:56,099.099 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:11:56,101.101 INFO    ] Checking for system updates...
[2026-06-05 13:11:56,139.139 INFO    ] 200
[2026-06-05 13:11:56,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:56,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:11:56,199.199 INFO    ] No update needed
[2026-06-05 13:11:56,202.202 INFO    ] Checking for camera pi updates...
[2026-06-05 13:11:56,237.237 INFO    ] 200
[2026-06-05 13:11:56,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:11:56,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:11:56,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:11:56,339.339 INFO    ] No camera update needed
[2026-06-05 13:11:56,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:11:56,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:11:56,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:11:56,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:11:58,400.400 INFO    ] ================================================
[2026-06-05 13:11:58,416.416 INFO    ] Launching Daemon at Fri Jun  5 13:11:58 IST 2026
[2026-06-05 13:11:58,427.427 INFO    ] ================================================
[2026-06-05 13:11:59,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:11:59
[2026-06-05 13:11:59,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:12:00,074.074 INFO    ] Initializing speech engine...
[2026-06-05 13:12:00,081.081 INFO    ] 2026-06-05 13:12:00
[2026-06-05 13:12:00,389.389 INFO    ] 2026-06-05 13:12:00
[2026-06-05 13:12:00,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:12:00,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:12:00,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:12:00,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:12:00,908.908 INFO    ] time= 05/06/2026 13:12:00
[2026-06-05 13:12:00,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:12:00,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:12:01,078.078 INFO    ] No existing commands found in stream
[2026-06-05 13:12:06,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:12:06,091.091 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 13:12:07,793.793 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:12:07,796.796 INFO    ] Checking for system updates...
[2026-06-05 13:12:07,832.832 INFO    ] 200
[2026-06-05 13:12:07,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:07,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:12:07,896.896 INFO    ] No update needed
[2026-06-05 13:12:07,899.899 INFO    ] Checking for camera pi updates...
[2026-06-05 13:12:07,936.936 INFO    ] 200
[2026-06-05 13:12:07,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:07,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:12:08,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:12:08,010.010 INFO    ] No camera update needed
[2026-06-05 13:12:08,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:12:08,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:12:08,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:12:08,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:12:10,067.067 INFO    ] ================================================
[2026-06-05 13:12:10,083.083 INFO    ] Launching Daemon at Fri Jun  5 13:12:10 IST 2026
[2026-06-05 13:12:10,094.094 INFO    ] ================================================
[2026-06-05 13:12:10,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:12:10
[2026-06-05 13:12:11,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:12:11,560.560 INFO    ] Initializing speech engine...
[2026-06-05 13:12:11,568.568 INFO    ] 2026-06-05 13:12:11
[2026-06-05 13:12:11,829.829 INFO    ] 2026-06-05 13:12:11
[2026-06-05 13:12:11,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:12:12,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:12:12,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:12:12,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:12:12,295.295 INFO    ] time= 05/06/2026 13:12:12
[2026-06-05 13:12:12,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:12:12,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:12:12,495.495 INFO    ] No existing commands found in stream
[2026-06-05 13:12:17,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:12:17,526.526 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 13:12:21,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:12:21,448.448 INFO    ] Checking for system updates...
[2026-06-05 13:12:21,484.484 INFO    ] 200
[2026-06-05 13:12:21,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:21,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:12:21,542.542 INFO    ] No update needed
[2026-06-05 13:12:21,545.545 INFO    ] Checking for camera pi updates...
[2026-06-05 13:12:21,579.579 INFO    ] 200
[2026-06-05 13:12:21,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:21,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:12:21,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:12:21,665.665 INFO    ] No camera update needed
[2026-06-05 13:12:21,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:12:21,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:12:21,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:12:21,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:12:23,722.722 INFO    ] ================================================
[2026-06-05 13:12:23,739.739 INFO    ] Launching Daemon at Fri Jun  5 13:12:23 IST 2026
[2026-06-05 13:12:23,750.750 INFO    ] ================================================
[2026-06-05 13:12:24,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:12:24
[2026-06-05 13:12:24,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:12:25,184.184 INFO    ] Initializing speech engine...
[2026-06-05 13:12:25,193.193 INFO    ] 2026-06-05 13:12:25
[2026-06-05 13:12:25,444.444 INFO    ] 2026-06-05 13:12:25
[2026-06-05 13:12:25,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:12:25,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:12:25,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:12:25,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:12:25,910.910 INFO    ] time= 05/06/2026 13:12:25
[2026-06-05 13:12:25,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:12:26,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:12:26,135.135 INFO    ] No existing commands found in stream
[2026-06-05 13:12:31,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:12:31,160.160 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 13:12:33,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:12:33,557.557 INFO    ] Checking for system updates...
[2026-06-05 13:12:33,594.594 INFO    ] 200
[2026-06-05 13:12:33,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:33,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:12:33,660.660 INFO    ] No update needed
[2026-06-05 13:12:33,663.663 INFO    ] Checking for camera pi updates...
[2026-06-05 13:12:33,698.698 INFO    ] 200
[2026-06-05 13:12:33,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:33,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:12:33,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:12:33,799.799 INFO    ] No camera update needed
[2026-06-05 13:12:33,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:12:33,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:12:33,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:12:33,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:12:35,860.860 INFO    ] ================================================
[2026-06-05 13:12:35,875.875 INFO    ] Launching Daemon at Fri Jun  5 13:12:35 IST 2026
[2026-06-05 13:12:35,887.887 INFO    ] ================================================
[2026-06-05 13:12:36,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:12:36
[2026-06-05 13:12:37,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:12:37,341.341 INFO    ] Initializing speech engine...
[2026-06-05 13:12:37,345.345 INFO    ] 2026-06-05 13:12:37
[2026-06-05 13:12:37,616.616 INFO    ] 2026-06-05 13:12:37
[2026-06-05 13:12:37,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:12:37,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:12:37,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:12:37,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:12:38,000.000 INFO    ] time= 05/06/2026 13:12:37
[2026-06-05 13:12:38,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:12:38,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:12:38,126.126 INFO    ] No existing commands found in stream
[2026-06-05 13:12:43,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:12:43,140.140 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 13:12:43,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:12:43,635.635 INFO    ] Checking for system updates...
[2026-06-05 13:12:43,672.672 INFO    ] 200
[2026-06-05 13:12:43,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:43,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:12:43,733.733 INFO    ] No update needed
[2026-06-05 13:12:43,735.735 INFO    ] Checking for camera pi updates...
[2026-06-05 13:12:43,773.773 INFO    ] 200
[2026-06-05 13:12:43,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:43,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:12:43,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:12:43,982.982 INFO    ] No camera update needed
[2026-06-05 13:12:43,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:12:43,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:12:43,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:12:43,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:12:46,041.041 INFO    ] ================================================
[2026-06-05 13:12:46,057.057 INFO    ] Launching Daemon at Fri Jun  5 13:12:46 IST 2026
[2026-06-05 13:12:46,068.068 INFO    ] ================================================
[2026-06-05 13:12:46,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:12:46
[2026-06-05 13:12:47,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:12:47,494.494 INFO    ] Initializing speech engine...
[2026-06-05 13:12:47,503.503 INFO    ] 2026-06-05 13:12:47
[2026-06-05 13:12:47,753.753 INFO    ] 2026-06-05 13:12:47
[2026-06-05 13:12:47,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:12:47,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:12:48,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:12:48,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:12:48,210.210 INFO    ] time= 05/06/2026 13:12:48
[2026-06-05 13:12:48,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:12:48,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:12:48,453.453 INFO    ] No existing commands found in stream
[2026-06-05 13:12:53,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:12:53,487.487 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 13:12:54,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:12:54,022.022 INFO    ] Checking for system updates...
[2026-06-05 13:12:54,060.060 INFO    ] 200
[2026-06-05 13:12:54,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:54,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:12:54,119.119 INFO    ] No update needed
[2026-06-05 13:12:54,122.122 INFO    ] Checking for camera pi updates...
[2026-06-05 13:12:54,157.157 INFO    ] 200
[2026-06-05 13:12:54,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:12:54,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:12:54,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:12:54,249.249 INFO    ] No camera update needed
[2026-06-05 13:12:54,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:12:54,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:12:54,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:12:54,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:12:56,309.309 INFO    ] ================================================
[2026-06-05 13:12:56,324.324 INFO    ] Launching Daemon at Fri Jun  5 13:12:56 IST 2026
[2026-06-05 13:12:56,335.335 INFO    ] ================================================
[2026-06-05 13:12:56,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:12:56
[2026-06-05 13:12:57,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:12:57,767.767 INFO    ] Initializing speech engine...
[2026-06-05 13:12:57,773.773 INFO    ] 2026-06-05 13:12:57
[2026-06-05 13:12:58,034.034 INFO    ] 2026-06-05 13:12:58
[2026-06-05 13:12:58,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:12:58,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:12:58,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:12:58,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:12:58,499.499 INFO    ] time= 05/06/2026 13:12:58
[2026-06-05 13:12:58,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:12:58,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:12:58,735.735 INFO    ] No existing commands found in stream
[2026-06-05 13:13:03,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:13:03,751.751 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 13:13:07,173.173 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:13:07,175.175 INFO    ] Checking for system updates...
[2026-06-05 13:13:07,212.212 INFO    ] 200
[2026-06-05 13:13:07,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:07,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:07,271.271 INFO    ] No update needed
[2026-06-05 13:13:07,273.273 INFO    ] Checking for camera pi updates...
[2026-06-05 13:13:07,308.308 INFO    ] 200
[2026-06-05 13:13:07,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:07,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:13:07,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:07,405.405 INFO    ] No camera update needed
[2026-06-05 13:13:07,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:13:07,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:13:07,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:13:07,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:13:09,464.464 INFO    ] ================================================
[2026-06-05 13:13:09,479.479 INFO    ] Launching Daemon at Fri Jun  5 13:13:09 IST 2026
[2026-06-05 13:13:09,490.490 INFO    ] ================================================
[2026-06-05 13:13:10,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:13:10
[2026-06-05 13:13:10,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:13:10,898.898 INFO    ] Initializing speech engine...
[2026-06-05 13:13:10,912.912 INFO    ] 2026-06-05 13:13:10
[2026-06-05 13:13:11,193.193 INFO    ] 2026-06-05 13:13:11
[2026-06-05 13:13:11,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:13:11,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:13:11,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:13:11,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:13:11,606.606 INFO    ] time= 05/06/2026 13:13:11
[2026-06-05 13:13:11,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:13:11,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:13:11,754.754 INFO    ] No existing commands found in stream
[2026-06-05 13:13:16,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:13:16,782.782 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 13:13:18,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:13:18,154.154 INFO    ] Checking for system updates...
[2026-06-05 13:13:18,192.192 INFO    ] 200
[2026-06-05 13:13:18,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:18,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:18,252.252 INFO    ] No update needed
[2026-06-05 13:13:18,255.255 INFO    ] Checking for camera pi updates...
[2026-06-05 13:13:18,290.290 INFO    ] 200
[2026-06-05 13:13:18,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:18,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:13:18,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:18,387.387 INFO    ] No camera update needed
[2026-06-05 13:13:18,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:13:18,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:13:18,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:13:18,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:13:20,445.445 INFO    ] ================================================
[2026-06-05 13:13:20,460.460 INFO    ] Launching Daemon at Fri Jun  5 13:13:20 IST 2026
[2026-06-05 13:13:20,471.471 INFO    ] ================================================
[2026-06-05 13:13:21,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:13:21
[2026-06-05 13:13:21,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:13:22,074.074 INFO    ] Initializing speech engine...
[2026-06-05 13:13:22,084.084 INFO    ] 2026-06-05 13:13:22
[2026-06-05 13:13:22,340.340 INFO    ] 2026-06-05 13:13:22
[2026-06-05 13:13:22,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:13:22,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:13:22,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:13:22,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:13:22,802.802 INFO    ] time= 05/06/2026 13:13:22
[2026-06-05 13:13:22,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:13:22,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:13:23,044.044 INFO    ] No existing commands found in stream
[2026-06-05 13:13:28,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:13:28,072.072 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 13:13:29,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:13:29,215.215 INFO    ] Checking for system updates...
[2026-06-05 13:13:29,251.251 INFO    ] 200
[2026-06-05 13:13:29,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:29,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:29,309.309 INFO    ] No update needed
[2026-06-05 13:13:29,311.311 INFO    ] Checking for camera pi updates...
[2026-06-05 13:13:29,344.344 INFO    ] 200
[2026-06-05 13:13:29,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:29,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:13:29,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:29,431.431 INFO    ] No camera update needed
[2026-06-05 13:13:29,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:13:29,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:13:29,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:13:29,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:13:31,487.487 INFO    ] ================================================
[2026-06-05 13:13:31,503.503 INFO    ] Launching Daemon at Fri Jun  5 13:13:31 IST 2026
[2026-06-05 13:13:31,513.513 INFO    ] ================================================
[2026-06-05 13:13:32,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:13:32
[2026-06-05 13:13:32,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:13:33,034.034 INFO    ] Initializing speech engine...
[2026-06-05 13:13:33,046.046 INFO    ] 2026-06-05 13:13:33
[2026-06-05 13:13:33,321.321 INFO    ] 2026-06-05 13:13:33
[2026-06-05 13:13:33,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:13:33,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:13:33,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:13:33,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:13:33,821.821 INFO    ] time= 05/06/2026 13:13:33
[2026-06-05 13:13:33,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:13:33,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:13:34,041.041 INFO    ] No existing commands found in stream
[2026-06-05 13:13:39,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:13:39,066.066 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 13:13:39,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:13:39,692.692 INFO    ] Checking for system updates...
[2026-06-05 13:13:39,728.728 INFO    ] 200
[2026-06-05 13:13:39,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:39,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:39,790.790 INFO    ] No update needed
[2026-06-05 13:13:39,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 13:13:39,830.830 INFO    ] 200
[2026-06-05 13:13:39,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:39,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:13:39,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:39,922.922 INFO    ] No camera update needed
[2026-06-05 13:13:39,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:13:39,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:13:39,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:13:39,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:13:41,980.980 INFO    ] ================================================
[2026-06-05 13:13:42,995.995 INFO    ] Launching Daemon at Fri Jun  5 13:13:41 IST 2026
[2026-06-05 13:13:42,006.006 INFO    ] ================================================
[2026-06-05 13:13:42,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:13:42
[2026-06-05 13:13:43,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:13:43,524.524 INFO    ] Initializing speech engine...
[2026-06-05 13:13:43,533.533 INFO    ] 2026-06-05 13:13:43
[2026-06-05 13:13:43,784.784 INFO    ] 2026-06-05 13:13:43
[2026-06-05 13:13:43,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:13:44,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:13:44,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:13:44,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:13:44,332.332 INFO    ] time= 05/06/2026 13:13:44
[2026-06-05 13:13:44,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:13:44,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:13:44,487.487 INFO    ] No existing commands found in stream
[2026-06-05 13:13:49,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:13:49,509.509 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 13:13:52,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:13:52,672.672 INFO    ] Checking for system updates...
[2026-06-05 13:13:52,709.709 INFO    ] 200
[2026-06-05 13:13:52,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:52,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:52,770.770 INFO    ] No update needed
[2026-06-05 13:13:52,772.772 INFO    ] Checking for camera pi updates...
[2026-06-05 13:13:52,807.807 INFO    ] 200
[2026-06-05 13:13:52,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:13:52,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:13:52,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:13:52,895.895 INFO    ] No camera update needed
[2026-06-05 13:13:52,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:13:52,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:13:52,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:13:52,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:13:54,954.954 INFO    ] ================================================
[2026-06-05 13:13:54,970.970 INFO    ] Launching Daemon at Fri Jun  5 13:13:54 IST 2026
[2026-06-05 13:13:54,981.981 INFO    ] ================================================
[2026-06-05 13:13:55,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:13:55
[2026-06-05 13:13:56,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:13:56,403.403 INFO    ] Initializing speech engine...
[2026-06-05 13:13:56,409.409 INFO    ] 2026-06-05 13:13:56
[2026-06-05 13:13:56,652.652 INFO    ] 2026-06-05 13:13:56
[2026-06-05 13:13:56,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:13:56,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:13:56,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:13:57,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:13:57,127.127 INFO    ] time= 05/06/2026 13:13:57
[2026-06-05 13:13:57,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:13:57,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:13:57,329.329 INFO    ] No existing commands found in stream
[2026-06-05 13:14:02,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:14:02,350.350 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 13:14:04,552.552 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:14:04,554.554 INFO    ] Checking for system updates...
[2026-06-05 13:14:04,590.590 INFO    ] 200
[2026-06-05 13:14:04,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:04,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:14:04,652.652 INFO    ] No update needed
[2026-06-05 13:14:04,654.654 INFO    ] Checking for camera pi updates...
[2026-06-05 13:14:04,688.688 INFO    ] 200
[2026-06-05 13:14:04,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:04,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:14:04,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:14:04,783.783 INFO    ] No camera update needed
[2026-06-05 13:14:04,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:14:04,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:14:04,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:14:04,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:14:06,839.839 INFO    ] ================================================
[2026-06-05 13:14:06,855.855 INFO    ] Launching Daemon at Fri Jun  5 13:14:06 IST 2026
[2026-06-05 13:14:06,866.866 INFO    ] ================================================
[2026-06-05 13:14:07,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:14:07
[2026-06-05 13:14:08,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:14:08,363.363 INFO    ] Initializing speech engine...
[2026-06-05 13:14:08,370.370 INFO    ] 2026-06-05 13:14:08
[2026-06-05 13:14:08,631.631 INFO    ] 2026-06-05 13:14:08
[2026-06-05 13:14:08,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:14:08,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:14:08,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:14:09,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:14:09,173.173 INFO    ] time= 05/06/2026 13:14:09
[2026-06-05 13:14:09,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:14:09,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:14:09,400.400 INFO    ] No existing commands found in stream
[2026-06-05 13:14:14,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:14:14,433.433 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 13:14:17,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:14:17,888.888 INFO    ] Checking for system updates...
[2026-06-05 13:14:17,926.926 INFO    ] 200
[2026-06-05 13:14:17,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:17,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:14:17,983.983 INFO    ] No update needed
[2026-06-05 13:14:17,985.985 INFO    ] Checking for camera pi updates...
[2026-06-05 13:14:18,019.019 INFO    ] 200
[2026-06-05 13:14:18,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:18,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:14:18,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:14:18,119.119 INFO    ] No camera update needed
[2026-06-05 13:14:18,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:14:18,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:14:18,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:14:18,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:14:20,176.176 INFO    ] ================================================
[2026-06-05 13:14:20,191.191 INFO    ] Launching Daemon at Fri Jun  5 13:14:20 IST 2026
[2026-06-05 13:14:20,202.202 INFO    ] ================================================
[2026-06-05 13:14:20,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:14:20
[2026-06-05 13:14:21,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:14:21,649.649 INFO    ] Initializing speech engine...
[2026-06-05 13:14:21,667.667 INFO    ] 2026-06-05 13:14:21
[2026-06-05 13:14:21,941.941 INFO    ] 2026-06-05 13:14:21
[2026-06-05 13:14:21,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:14:22,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:14:22,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:14:22,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:14:22,332.332 INFO    ] time= 05/06/2026 13:14:22
[2026-06-05 13:14:22,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:14:22,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:14:22,515.515 INFO    ] No existing commands found in stream
[2026-06-05 13:14:27,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:14:27,541.541 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 13:14:31,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:14:31,603.603 INFO    ] Checking for system updates...
[2026-06-05 13:14:31,641.641 INFO    ] 200
[2026-06-05 13:14:31,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:31,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:14:31,703.703 INFO    ] No update needed
[2026-06-05 13:14:31,706.706 INFO    ] Checking for camera pi updates...
[2026-06-05 13:14:31,741.741 INFO    ] 200
[2026-06-05 13:14:31,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:31,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:14:31,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:14:31,833.833 INFO    ] No camera update needed
[2026-06-05 13:14:31,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:14:31,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:14:31,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:14:31,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:14:33,896.896 INFO    ] ================================================
[2026-06-05 13:14:33,912.912 INFO    ] Launching Daemon at Fri Jun  5 13:14:33 IST 2026
[2026-06-05 13:14:33,922.922 INFO    ] ================================================
[2026-06-05 13:14:34,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:14:34
[2026-06-05 13:14:35,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:14:35,519.519 INFO    ] Initializing speech engine...
[2026-06-05 13:14:35,530.530 INFO    ] 2026-06-05 13:14:35
[2026-06-05 13:14:35,837.837 INFO    ] 2026-06-05 13:14:35
[2026-06-05 13:14:35,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:14:36,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:14:36,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:14:37,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:14:37,132.132 INFO    ] time= 05/06/2026 13:14:37
[2026-06-05 13:14:37,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:14:37,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:14:37,214.214 INFO    ] No existing commands found in stream
[2026-06-05 13:14:42,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:14:42,238.238 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 13:14:46,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:14:46,274.274 INFO    ] Checking for system updates...
[2026-06-05 13:14:46,311.311 INFO    ] 200
[2026-06-05 13:14:46,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:46,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:14:46,370.370 INFO    ] No update needed
[2026-06-05 13:14:46,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 13:14:46,407.407 INFO    ] 200
[2026-06-05 13:14:46,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:46,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:14:46,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:14:46,601.601 INFO    ] No camera update needed
[2026-06-05 13:14:46,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:14:46,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:14:46,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:14:46,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:14:48,659.659 INFO    ] ================================================
[2026-06-05 13:14:48,674.674 INFO    ] Launching Daemon at Fri Jun  5 13:14:48 IST 2026
[2026-06-05 13:14:48,684.684 INFO    ] ================================================
[2026-06-05 13:14:49,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:14:49
[2026-06-05 13:14:49,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:14:50,173.173 INFO    ] Initializing speech engine...
[2026-06-05 13:14:50,180.180 INFO    ] 2026-06-05 13:14:50
[2026-06-05 13:14:50,442.442 INFO    ] 2026-06-05 13:14:50
[2026-06-05 13:14:50,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:14:50,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:14:50,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:14:50,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:14:50,929.929 INFO    ] time= 05/06/2026 13:14:50
[2026-06-05 13:14:50,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:14:50,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:14:51,146.146 INFO    ] No existing commands found in stream
[2026-06-05 13:14:56,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:14:56,160.160 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 13:14:56,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:14:56,567.567 INFO    ] Checking for system updates...
[2026-06-05 13:14:56,603.603 INFO    ] 200
[2026-06-05 13:14:56,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:56,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:14:56,662.662 INFO    ] No update needed
[2026-06-05 13:14:56,667.667 INFO    ] Checking for camera pi updates...
[2026-06-05 13:14:56,702.702 INFO    ] 200
[2026-06-05 13:14:56,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:14:56,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:14:56,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:14:56,793.793 INFO    ] No camera update needed
[2026-06-05 13:14:56,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:14:56,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:14:56,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:14:56,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:14:58,852.852 INFO    ] ================================================
[2026-06-05 13:14:58,867.867 INFO    ] Launching Daemon at Fri Jun  5 13:14:58 IST 2026
[2026-06-05 13:14:58,877.877 INFO    ] ================================================
[2026-06-05 13:14:59,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:14:59
[2026-06-05 13:15:00,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:15:00,377.377 INFO    ] Initializing speech engine...
[2026-06-05 13:15:00,385.385 INFO    ] 2026-06-05 13:15:00
[2026-06-05 13:15:00,648.648 INFO    ] 2026-06-05 13:15:00
[2026-06-05 13:15:00,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:15:00,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:15:00,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:15:01,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:15:01,439.439 INFO    ] time= 05/06/2026 13:15:01
[2026-06-05 13:15:01,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:15:01,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:15:01,807.807 INFO    ] No existing commands found in stream
[2026-06-05 13:15:06,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:15:06,820.820 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 13:15:09,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:15:09,970.970 INFO    ] Checking for system updates...
[2026-06-05 13:15:10,008.008 INFO    ] 200
[2026-06-05 13:15:10,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:10,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:15:10,068.068 INFO    ] No update needed
[2026-06-05 13:15:10,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 13:15:10,106.106 INFO    ] 200
[2026-06-05 13:15:10,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:10,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:15:10,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:15:10,199.199 INFO    ] No camera update needed
[2026-06-05 13:15:10,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:15:10,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:15:10,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:15:10,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:15:12,260.260 INFO    ] ================================================
[2026-06-05 13:15:12,276.276 INFO    ] Launching Daemon at Fri Jun  5 13:15:12 IST 2026
[2026-06-05 13:15:12,288.288 INFO    ] ================================================
[2026-06-05 13:15:12,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:15:12
[2026-06-05 13:15:13,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:15:13,749.749 INFO    ] Initializing speech engine...
[2026-06-05 13:15:13,759.759 INFO    ] 2026-06-05 13:15:13
[2026-06-05 13:15:14,008.008 INFO    ] 2026-06-05 13:15:14
[2026-06-05 13:15:14,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:15:14,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:15:14,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:15:14,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:15:14,489.489 INFO    ] time= 05/06/2026 13:15:14
[2026-06-05 13:15:14,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:15:14,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:15:14,691.691 INFO    ] No existing commands found in stream
[2026-06-05 13:15:19,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:15:19,707.707 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 13:15:22,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:15:22,610.610 INFO    ] Checking for system updates...
[2026-06-05 13:15:22,646.646 INFO    ] 200
[2026-06-05 13:15:22,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:22,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:15:22,706.706 INFO    ] No update needed
[2026-06-05 13:15:22,708.708 INFO    ] Checking for camera pi updates...
[2026-06-05 13:15:22,749.749 INFO    ] 200
[2026-06-05 13:15:22,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:22,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:15:22,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:15:22,852.852 INFO    ] No camera update needed
[2026-06-05 13:15:22,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:15:22,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:15:22,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:15:22,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:15:24,909.909 INFO    ] ================================================
[2026-06-05 13:15:24,924.924 INFO    ] Launching Daemon at Fri Jun  5 13:15:24 IST 2026
[2026-06-05 13:15:24,935.935 INFO    ] ================================================
[2026-06-05 13:15:25,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:15:25
[2026-06-05 13:15:26,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:15:26,549.549 INFO    ] Initializing speech engine...
[2026-06-05 13:15:26,560.560 INFO    ] 2026-06-05 13:15:26
[2026-06-05 13:15:26,819.819 INFO    ] 2026-06-05 13:15:26
[2026-06-05 13:15:26,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:15:27,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:15:27,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:15:27,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:15:27,294.294 INFO    ] time= 05/06/2026 13:15:27
[2026-06-05 13:15:27,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:15:27,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:15:27,458.458 INFO    ] No existing commands found in stream
[2026-06-05 13:15:32,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:15:32,497.497 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 13:15:34,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:15:34,483.483 INFO    ] Checking for system updates...
[2026-06-05 13:15:34,519.519 INFO    ] 200
[2026-06-05 13:15:34,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:34,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:15:34,599.599 INFO    ] No update needed
[2026-06-05 13:15:34,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 13:15:34,642.642 INFO    ] 200
[2026-06-05 13:15:34,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:34,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:15:34,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:15:34,751.751 INFO    ] No camera update needed
[2026-06-05 13:15:34,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:15:34,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:15:34,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:15:34,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:15:36,809.809 INFO    ] ================================================
[2026-06-05 13:15:36,824.824 INFO    ] Launching Daemon at Fri Jun  5 13:15:36 IST 2026
[2026-06-05 13:15:36,835.835 INFO    ] ================================================
[2026-06-05 13:15:37,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:15:37
[2026-06-05 13:15:38,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:15:38,260.260 INFO    ] Initializing speech engine...
[2026-06-05 13:15:38,272.272 INFO    ] 2026-06-05 13:15:38
[2026-06-05 13:15:38,539.539 INFO    ] 2026-06-05 13:15:38
[2026-06-05 13:15:38,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:15:38,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:15:38,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:15:38,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:15:38,915.915 INFO    ] time= 05/06/2026 13:15:38
[2026-06-05 13:15:38,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:15:38,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:15:39,102.102 INFO    ] No existing commands found in stream
[2026-06-05 13:15:44,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:15:44,129.129 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 13:15:46,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:15:46,128.128 INFO    ] Checking for system updates...
[2026-06-05 13:15:46,164.164 INFO    ] 200
[2026-06-05 13:15:46,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:46,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:15:46,222.222 INFO    ] No update needed
[2026-06-05 13:15:46,225.225 INFO    ] Checking for camera pi updates...
[2026-06-05 13:15:46,263.263 INFO    ] 200
[2026-06-05 13:15:46,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:46,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:15:46,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:15:46,353.353 INFO    ] No camera update needed
[2026-06-05 13:15:46,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:15:46,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:15:46,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:15:46,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:15:48,411.411 INFO    ] ================================================
[2026-06-05 13:15:48,427.427 INFO    ] Launching Daemon at Fri Jun  5 13:15:48 IST 2026
[2026-06-05 13:15:48,438.438 INFO    ] ================================================
[2026-06-05 13:15:49,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:15:49
[2026-06-05 13:15:49,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:15:49,879.879 INFO    ] Initializing speech engine...
[2026-06-05 13:15:49,888.888 INFO    ] 2026-06-05 13:15:49
[2026-06-05 13:15:50,181.181 INFO    ] 2026-06-05 13:15:50
[2026-06-05 13:15:50,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:15:50,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:15:50,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:15:50,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:15:50,655.655 INFO    ] time= 05/06/2026 13:15:50
[2026-06-05 13:15:50,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:15:50,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:15:50,867.867 INFO    ] No existing commands found in stream
[2026-06-05 13:15:55,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:15:55,902.902 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 13:15:57,901.901 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:15:57,904.904 INFO    ] Checking for system updates...
[2026-06-05 13:15:57,944.944 INFO    ] 200
[2026-06-05 13:15:57,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:58,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:15:58,010.010 INFO    ] No update needed
[2026-06-05 13:15:58,013.013 INFO    ] Checking for camera pi updates...
[2026-06-05 13:15:58,053.053 INFO    ] 200
[2026-06-05 13:15:58,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:15:58,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:15:58,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:15:58,151.151 INFO    ] No camera update needed
[2026-06-05 13:15:58,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:15:58,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:15:58,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:15:58,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:16:00,215.215 INFO    ] ================================================
[2026-06-05 13:16:00,231.231 INFO    ] Launching Daemon at Fri Jun  5 13:16:00 IST 2026
[2026-06-05 13:16:00,243.243 INFO    ] ================================================
[2026-06-05 13:16:00,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:16:00
[2026-06-05 13:16:01,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:16:02,019.019 INFO    ] Initializing speech engine...
[2026-06-05 13:16:02,031.031 INFO    ] 2026-06-05 13:16:02
[2026-06-05 13:16:02,377.377 INFO    ] 2026-06-05 13:16:02
[2026-06-05 13:16:02,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:16:02,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:16:02,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:16:02,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:16:02,877.877 INFO    ] time= 05/06/2026 13:16:02
[2026-06-05 13:16:02,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:16:02,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:16:03,077.077 INFO    ] No existing commands found in stream
[2026-06-05 13:16:08,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:16:08,109.109 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 13:16:09,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:16:09,495.495 INFO    ] Checking for system updates...
[2026-06-05 13:16:09,536.536 INFO    ] 200
[2026-06-05 13:16:09,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:09,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:16:09,601.601 INFO    ] No update needed
[2026-06-05 13:16:09,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 13:16:09,637.637 INFO    ] 200
[2026-06-05 13:16:09,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:09,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:16:09,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:16:09,743.743 INFO    ] No camera update needed
[2026-06-05 13:16:09,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:16:09,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:16:09,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:16:09,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:16:11,799.799 INFO    ] ================================================
[2026-06-05 13:16:11,815.815 INFO    ] Launching Daemon at Fri Jun  5 13:16:11 IST 2026
[2026-06-05 13:16:11,826.826 INFO    ] ================================================
[2026-06-05 13:16:12,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:16:12
[2026-06-05 13:16:13,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:16:13,298.298 INFO    ] Initializing speech engine...
[2026-06-05 13:16:13,307.307 INFO    ] 2026-06-05 13:16:13
[2026-06-05 13:16:13,556.556 INFO    ] 2026-06-05 13:16:13
[2026-06-05 13:16:13,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:16:13,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:16:13,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:16:13,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:16:14,030.030 INFO    ] time= 05/06/2026 13:16:13
[2026-06-05 13:16:14,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:16:14,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:16:14,250.250 INFO    ] No existing commands found in stream
[2026-06-05 13:16:19,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:16:19,280.280 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 13:16:20,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:16:20,614.614 INFO    ] Checking for system updates...
[2026-06-05 13:16:20,654.654 INFO    ] 200
[2026-06-05 13:16:20,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:20,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:16:20,719.719 INFO    ] No update needed
[2026-06-05 13:16:20,721.721 INFO    ] Checking for camera pi updates...
[2026-06-05 13:16:20,755.755 INFO    ] 200
[2026-06-05 13:16:20,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:20,803.803 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:16:20,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:16:20,842.842 INFO    ] No camera update needed
[2026-06-05 13:16:20,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:16:20,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:16:20,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:16:20,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:16:22,899.899 INFO    ] ================================================
[2026-06-05 13:16:22,915.915 INFO    ] Launching Daemon at Fri Jun  5 13:16:22 IST 2026
[2026-06-05 13:16:22,927.927 INFO    ] ================================================
[2026-06-05 13:16:23,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:16:23
[2026-06-05 13:16:24,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:16:24,370.370 INFO    ] Initializing speech engine...
[2026-06-05 13:16:24,379.379 INFO    ] 2026-06-05 13:16:24
[2026-06-05 13:16:24,629.629 INFO    ] 2026-06-05 13:16:24
[2026-06-05 13:16:24,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:16:24,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:16:24,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:16:25,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:16:25,049.049 INFO    ] time= 05/06/2026 13:16:25
[2026-06-05 13:16:25,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:16:25,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:16:25,135.135 INFO    ] No existing commands found in stream
[2026-06-05 13:16:30,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:16:30,150.150 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 13:16:31,157.157 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:16:31,159.159 INFO    ] Checking for system updates...
[2026-06-05 13:16:31,205.205 INFO    ] 200
[2026-06-05 13:16:31,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:31,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:16:31,264.264 INFO    ] No update needed
[2026-06-05 13:16:31,266.266 INFO    ] Checking for camera pi updates...
[2026-06-05 13:16:31,301.301 INFO    ] 200
[2026-06-05 13:16:31,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:31,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:16:31,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:16:31,387.387 INFO    ] No camera update needed
[2026-06-05 13:16:31,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:16:31,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:16:31,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:16:31,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:16:33,449.449 INFO    ] ================================================
[2026-06-05 13:16:33,464.464 INFO    ] Launching Daemon at Fri Jun  5 13:16:33 IST 2026
[2026-06-05 13:16:33,475.475 INFO    ] ================================================
[2026-06-05 13:16:34,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:16:34
[2026-06-05 13:16:34,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:16:34,934.934 INFO    ] Initializing speech engine...
[2026-06-05 13:16:34,948.948 INFO    ] 2026-06-05 13:16:34
[2026-06-05 13:16:35,240.240 INFO    ] 2026-06-05 13:16:35
[2026-06-05 13:16:35,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:16:36,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:16:36,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:16:37,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:16:37,067.067 INFO    ] time= 05/06/2026 13:16:37
[2026-06-05 13:16:37,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:16:37,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:16:37,169.169 INFO    ] No existing commands found in stream
[2026-06-05 13:16:42,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:16:42,187.187 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 13:16:44,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:16:44,758.758 INFO    ] Checking for system updates...
[2026-06-05 13:16:44,796.796 INFO    ] 200
[2026-06-05 13:16:44,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:44,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:16:44,856.856 INFO    ] No update needed
[2026-06-05 13:16:44,859.859 INFO    ] Checking for camera pi updates...
[2026-06-05 13:16:44,897.897 INFO    ] 200
[2026-06-05 13:16:44,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:44,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:16:45,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:16:45,006.006 INFO    ] No camera update needed
[2026-06-05 13:16:45,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:16:45,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:16:45,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:16:45,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:16:47,062.062 INFO    ] ================================================
[2026-06-05 13:16:47,078.078 INFO    ] Launching Daemon at Fri Jun  5 13:16:47 IST 2026
[2026-06-05 13:16:47,089.089 INFO    ] ================================================
[2026-06-05 13:16:47,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:16:47
[2026-06-05 13:16:48,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:16:48,553.553 INFO    ] Initializing speech engine...
[2026-06-05 13:16:48,562.562 INFO    ] 2026-06-05 13:16:48
[2026-06-05 13:16:48,822.822 INFO    ] 2026-06-05 13:16:48
[2026-06-05 13:16:48,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:16:49,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:16:49,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:16:49,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:16:49,283.283 INFO    ] time= 05/06/2026 13:16:49
[2026-06-05 13:16:49,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:16:49,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:16:49,489.489 INFO    ] No existing commands found in stream
[2026-06-05 13:16:54,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:16:54,524.524 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 13:16:57,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:16:57,194.194 INFO    ] Checking for system updates...
[2026-06-05 13:16:57,248.248 INFO    ] 200
[2026-06-05 13:16:57,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:57,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:16:57,313.313 INFO    ] No update needed
[2026-06-05 13:16:57,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 13:16:57,351.351 INFO    ] 200
[2026-06-05 13:16:57,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:16:57,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:16:57,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:16:57,563.563 INFO    ] No camera update needed
[2026-06-05 13:16:57,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:16:57,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:16:57,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:16:57,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:16:59,623.623 INFO    ] ================================================
[2026-06-05 13:16:59,643.643 INFO    ] Launching Daemon at Fri Jun  5 13:16:59 IST 2026
[2026-06-05 13:16:59,653.653 INFO    ] ================================================
[2026-06-05 13:17:00,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:17:00
[2026-06-05 13:17:00,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:17:01,081.081 INFO    ] Initializing speech engine...
[2026-06-05 13:17:01,089.089 INFO    ] 2026-06-05 13:17:01
[2026-06-05 13:17:01,497.497 INFO    ] 2026-06-05 13:17:01
[2026-06-05 13:17:01,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:17:01,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:17:01,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:17:01,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:17:01,986.986 INFO    ] time= 05/06/2026 13:17:01
[2026-06-05 13:17:01,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:17:02,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:17:02,075.075 INFO    ] No existing commands found in stream
[2026-06-05 13:17:07,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:17:07,103.103 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 13:17:11,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:17:11,346.346 INFO    ] Checking for system updates...
[2026-06-05 13:17:11,383.383 INFO    ] 200
[2026-06-05 13:17:11,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:17:11,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:17:11,446.446 INFO    ] No update needed
[2026-06-05 13:17:11,449.449 INFO    ] Checking for camera pi updates...
[2026-06-05 13:17:11,483.483 INFO    ] 200
[2026-06-05 13:17:11,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:17:11,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:17:11,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:17:11,586.586 INFO    ] No camera update needed
[2026-06-05 13:17:11,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:17:11,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:17:11,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:17:11,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:17:13,642.642 INFO    ] ================================================
[2026-06-05 13:17:13,657.657 INFO    ] Launching Daemon at Fri Jun  5 13:17:13 IST 2026
[2026-06-05 13:17:13,668.668 INFO    ] ================================================
[2026-06-05 13:17:14,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:17:14
[2026-06-05 13:17:14,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:17:15,122.122 INFO    ] Initializing speech engine...
[2026-06-05 13:17:15,138.138 INFO    ] 2026-06-05 13:17:15
[2026-06-05 13:17:15,408.408 INFO    ] 2026-06-05 13:17:15
[2026-06-05 13:17:15,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:17:15,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:17:15,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:17:15,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:17:15,812.812 INFO    ] time= 05/06/2026 13:17:15
[2026-06-05 13:17:15,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:17:15,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:17:15,902.902 INFO    ] No existing commands found in stream
[2026-06-05 13:17:20,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:17:20,921.921 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 13:17:21,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:17:21,725.725 INFO    ] Checking for system updates...
[2026-06-05 13:17:21,765.765 INFO    ] 200
[2026-06-05 13:17:21,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:17:21,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:17:21,823.823 INFO    ] No update needed
[2026-06-05 13:17:21,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 13:17:21,864.864 INFO    ] 200
[2026-06-05 13:17:21,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:17:21,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:17:21,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:17:21,953.953 INFO    ] No camera update needed
[2026-06-05 13:17:21,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:17:21,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:17:21,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:17:21,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:17:24,009.009 INFO    ] ================================================
[2026-06-05 13:17:24,024.024 INFO    ] Launching Daemon at Fri Jun  5 13:17:24 IST 2026
[2026-06-05 13:17:24,035.035 INFO    ] ================================================
[2026-06-05 13:17:24,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:17:24
[2026-06-05 13:17:25,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:17:25,480.480 INFO    ] Initializing speech engine...
[2026-06-05 13:17:25,489.489 INFO    ] 2026-06-05 13:17:25
[2026-06-05 13:17:25,735.735 INFO    ] 2026-06-05 13:17:25
[2026-06-05 13:17:25,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:17:26,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:17:26,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:17:26,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:17:26,171.171 INFO    ] time= 05/06/2026 13:17:26
[2026-06-05 13:17:26,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:17:26,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:17:26,423.423 INFO    ] No existing commands found in stream
[2026-06-05 13:17:31,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:17:31,457.457 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 13:17:34,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:17:34,485.485 INFO    ] Checking for system updates...
[2026-06-05 13:17:34,527.527 INFO    ] 200
[2026-06-05 13:17:34,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:17:34,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:17:34,594.594 INFO    ] No update needed
[2026-06-05 13:17:34,598.598 INFO    ] Checking for camera pi updates...
[2026-06-05 13:17:34,636.636 INFO    ] 200
[2026-06-05 13:17:34,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:17:34,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:17:34,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:17:34,734.734 INFO    ] No camera update needed
[2026-06-05 13:17:34,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:17:34,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:17:34,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:17:34,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:17:36,795.795 INFO    ] ================================================
[2026-06-05 13:17:36,810.810 INFO    ] Launching Daemon at Fri Jun  5 13:17:36 IST 2026
[2026-06-05 13:17:36,821.821 INFO    ] ================================================
[2026-06-05 13:17:37,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:17:37
[2026-06-05 13:17:37,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:17:38,243.243 INFO    ] Initializing speech engine...
[2026-06-05 13:17:38,255.255 INFO    ] 2026-06-05 13:17:38
[2026-06-05 13:17:38,506.506 INFO    ] 2026-06-05 13:17:38
[2026-06-05 13:17:38,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:17:38,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:17:38,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:17:38,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:17:38,986.986 INFO    ] time= 05/06/2026 13:17:38
[2026-06-05 13:17:39,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:17:39,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:17:39,217.217 INFO    ] No existing commands found in stream
[2026-06-05 13:17:44,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:17:44,247.247 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 13:17:48,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:17:48,536.536 INFO    ] Checking for system updates...
[2026-06-05 13:17:48,575.575 INFO    ] 200
[2026-06-05 13:17:48,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:17:48,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:17:48,634.634 INFO    ] No update needed
[2026-06-05 13:17:48,636.636 INFO    ] Checking for camera pi updates...
[2026-06-05 13:17:48,674.674 INFO    ] 200
[2026-06-05 13:17:48,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:17:48,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:17:48,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:17:48,768.768 INFO    ] No camera update needed
[2026-06-05 13:17:48,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:17:48,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:17:48,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:17:48,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:17:50,827.827 INFO    ] ================================================
[2026-06-05 13:17:50,843.843 INFO    ] Launching Daemon at Fri Jun  5 13:17:50 IST 2026
[2026-06-05 13:17:50,855.855 INFO    ] ================================================
[2026-06-05 13:17:51,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:17:51
[2026-06-05 13:17:52,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:17:52,435.435 INFO    ] Initializing speech engine...
[2026-06-05 13:17:52,443.443 INFO    ] 2026-06-05 13:17:52
[2026-06-05 13:17:52,745.745 INFO    ] 2026-06-05 13:17:52
[2026-06-05 13:17:52,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:17:53,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:17:53,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:17:53,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:17:53,164.164 INFO    ] time= 05/06/2026 13:17:53
[2026-06-05 13:17:53,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:17:53,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:17:53,294.294 INFO    ] No existing commands found in stream
[2026-06-05 13:17:58,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:17:58,307.307 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 13:18:01,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:18:01,024.024 INFO    ] Checking for system updates...
[2026-06-05 13:18:01,061.061 INFO    ] 200
[2026-06-05 13:18:01,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:01,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:18:01,120.120 INFO    ] No update needed
[2026-06-05 13:18:01,122.122 INFO    ] Checking for camera pi updates...
[2026-06-05 13:18:01,159.159 INFO    ] 200
[2026-06-05 13:18:01,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:01,207.207 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:18:01,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:18:01,252.252 INFO    ] No camera update needed
[2026-06-05 13:18:01,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:18:01,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:18:01,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:18:01,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:18:03,308.308 INFO    ] ================================================
[2026-06-05 13:18:03,324.324 INFO    ] Launching Daemon at Fri Jun  5 13:18:03 IST 2026
[2026-06-05 13:18:03,337.337 INFO    ] ================================================
[2026-06-05 13:18:03,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:18:03
[2026-06-05 13:18:04,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:18:04,915.915 INFO    ] Initializing speech engine...
[2026-06-05 13:18:04,924.924 INFO    ] 2026-06-05 13:18:04
[2026-06-05 13:18:05,180.180 INFO    ] 2026-06-05 13:18:05
[2026-06-05 13:18:05,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:18:06,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:18:06,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:18:07,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:18:07,043.043 INFO    ] time= 05/06/2026 13:18:07
[2026-06-05 13:18:07,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:18:07,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:18:07,179.179 INFO    ] No existing commands found in stream
[2026-06-05 13:18:12,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:18:12,212.212 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 13:18:15,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:18:15,554.554 INFO    ] Checking for system updates...
[2026-06-05 13:18:15,593.593 INFO    ] 200
[2026-06-05 13:18:15,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:15,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:18:15,652.652 INFO    ] No update needed
[2026-06-05 13:18:15,654.654 INFO    ] Checking for camera pi updates...
[2026-06-05 13:18:15,692.692 INFO    ] 200
[2026-06-05 13:18:15,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:15,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:18:15,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:18:15,782.782 INFO    ] No camera update needed
[2026-06-05 13:18:15,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:18:15,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:18:15,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:18:15,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:18:17,846.846 INFO    ] ================================================
[2026-06-05 13:18:17,861.861 INFO    ] Launching Daemon at Fri Jun  5 13:18:17 IST 2026
[2026-06-05 13:18:17,872.872 INFO    ] ================================================
[2026-06-05 13:18:18,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:18:18
[2026-06-05 13:18:19,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:18:19,319.319 INFO    ] Initializing speech engine...
[2026-06-05 13:18:19,341.341 INFO    ] 2026-06-05 13:18:19
[2026-06-05 13:18:19,602.602 INFO    ] 2026-06-05 13:18:19
[2026-06-05 13:18:19,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:18:19,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:18:19,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:18:20,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:18:20,065.065 INFO    ] time= 05/06/2026 13:18:20
[2026-06-05 13:18:20,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:18:20,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:18:20,280.280 INFO    ] No existing commands found in stream
[2026-06-05 13:18:25,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:18:25,309.309 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 13:18:26,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:18:26,537.537 INFO    ] Checking for system updates...
[2026-06-05 13:18:26,577.577 INFO    ] 200
[2026-06-05 13:18:26,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:26,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:18:26,640.640 INFO    ] No update needed
[2026-06-05 13:18:26,642.642 INFO    ] Checking for camera pi updates...
[2026-06-05 13:18:26,679.679 INFO    ] 200
[2026-06-05 13:18:26,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:26,728.728 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:18:26,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:18:26,775.775 INFO    ] No camera update needed
[2026-06-05 13:18:26,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:18:26,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:18:26,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:18:26,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:18:28,832.832 INFO    ] ================================================
[2026-06-05 13:18:28,847.847 INFO    ] Launching Daemon at Fri Jun  5 13:18:28 IST 2026
[2026-06-05 13:18:28,858.858 INFO    ] ================================================
[2026-06-05 13:18:29,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:18:29
[2026-06-05 13:18:30,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:18:30,464.464 INFO    ] Initializing speech engine...
[2026-06-05 13:18:30,471.471 INFO    ] 2026-06-05 13:18:30
[2026-06-05 13:18:30,729.729 INFO    ] 2026-06-05 13:18:30
[2026-06-05 13:18:30,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:18:30,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:18:30,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:18:31,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:18:31,209.209 INFO    ] time= 05/06/2026 13:18:31
[2026-06-05 13:18:31,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:18:31,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:18:31,430.430 INFO    ] No existing commands found in stream
[2026-06-05 13:18:36,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:18:36,464.464 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 13:18:40,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:18:40,250.250 INFO    ] Checking for system updates...
[2026-06-05 13:18:40,285.285 INFO    ] 200
[2026-06-05 13:18:40,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:40,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:18:40,343.343 INFO    ] No update needed
[2026-06-05 13:18:40,346.346 INFO    ] Checking for camera pi updates...
[2026-06-05 13:18:40,383.383 INFO    ] 200
[2026-06-05 13:18:40,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:40,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:18:40,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:18:40,461.461 INFO    ] No camera update needed
[2026-06-05 13:18:40,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:18:40,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:18:40,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:18:40,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:18:42,520.520 INFO    ] ================================================
[2026-06-05 13:18:42,536.536 INFO    ] Launching Daemon at Fri Jun  5 13:18:42 IST 2026
[2026-06-05 13:18:42,547.547 INFO    ] ================================================
[2026-06-05 13:18:43,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:18:43
[2026-06-05 13:18:43,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:18:43,982.982 INFO    ] Initializing speech engine...
[2026-06-05 13:18:43,991.991 INFO    ] 2026-06-05 13:18:43
[2026-06-05 13:18:44,252.252 INFO    ] 2026-06-05 13:18:44
[2026-06-05 13:18:44,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:18:44,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:18:44,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:18:44,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:18:44,710.710 INFO    ] time= 05/06/2026 13:18:44
[2026-06-05 13:18:44,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:18:44,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:18:44,925.925 INFO    ] No existing commands found in stream
[2026-06-05 13:18:49,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:18:49,958.958 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 13:18:52,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:18:52,656.656 INFO    ] Checking for system updates...
[2026-06-05 13:18:52,696.696 INFO    ] 200
[2026-06-05 13:18:52,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:52,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:18:52,763.763 INFO    ] No update needed
[2026-06-05 13:18:52,766.766 INFO    ] Checking for camera pi updates...
[2026-06-05 13:18:52,803.803 INFO    ] 200
[2026-06-05 13:18:52,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:18:52,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:18:52,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:18:52,918.918 INFO    ] No camera update needed
[2026-06-05 13:18:52,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:18:52,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:18:52,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:18:52,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:18:54,976.976 INFO    ] ================================================
[2026-06-05 13:18:55,993.993 INFO    ] Launching Daemon at Fri Jun  5 13:18:54 IST 2026
[2026-06-05 13:18:55,009.009 INFO    ] ================================================
[2026-06-05 13:18:55,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:18:55
[2026-06-05 13:18:56,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:18:56,565.565 INFO    ] Initializing speech engine...
[2026-06-05 13:18:56,579.579 INFO    ] 2026-06-05 13:18:56
[2026-06-05 13:18:56,867.867 INFO    ] 2026-06-05 13:18:56
[2026-06-05 13:18:56,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:18:57,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:18:57,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:18:57,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:18:57,406.406 INFO    ] time= 05/06/2026 13:18:57
[2026-06-05 13:18:57,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:18:57,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:18:57,591.591 INFO    ] No existing commands found in stream
[2026-06-05 13:19:02,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:19:02,632.632 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 13:19:03,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:19:03,490.490 INFO    ] Checking for system updates...
[2026-06-05 13:19:03,535.535 INFO    ] 200
[2026-06-05 13:19:03,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:03,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:19:03,602.602 INFO    ] No update needed
[2026-06-05 13:19:03,605.605 INFO    ] Checking for camera pi updates...
[2026-06-05 13:19:03,653.653 INFO    ] 200
[2026-06-05 13:19:03,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:03,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:19:03,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:19:03,767.767 INFO    ] No camera update needed
[2026-06-05 13:19:03,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:19:03,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:19:03,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:19:03,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:19:05,825.825 INFO    ] ================================================
[2026-06-05 13:19:05,841.841 INFO    ] Launching Daemon at Fri Jun  5 13:19:05 IST 2026
[2026-06-05 13:19:05,852.852 INFO    ] ================================================
[2026-06-05 13:19:06,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:19:06
[2026-06-05 13:19:07,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:19:07,352.352 INFO    ] Initializing speech engine...
[2026-06-05 13:19:07,361.361 INFO    ] 2026-06-05 13:19:07
[2026-06-05 13:19:07,614.614 INFO    ] 2026-06-05 13:19:07
[2026-06-05 13:19:07,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:19:07,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:19:07,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:19:07,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:19:07,998.998 INFO    ] time= 05/06/2026 13:19:07
[2026-06-05 13:19:08,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:19:08,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:19:08,176.176 INFO    ] No existing commands found in stream
[2026-06-05 13:19:13,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:19:13,229.229 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 13:19:16,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:19:16,237.237 INFO    ] Checking for system updates...
[2026-06-05 13:19:16,274.274 INFO    ] 200
[2026-06-05 13:19:16,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:16,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:19:16,338.338 INFO    ] No update needed
[2026-06-05 13:19:16,341.341 INFO    ] Checking for camera pi updates...
[2026-06-05 13:19:16,377.377 INFO    ] 200
[2026-06-05 13:19:16,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:16,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:19:16,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:19:16,469.469 INFO    ] No camera update needed
[2026-06-05 13:19:16,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:19:16,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:19:16,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:19:16,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:19:18,523.523 INFO    ] ================================================
[2026-06-05 13:19:18,539.539 INFO    ] Launching Daemon at Fri Jun  5 13:19:18 IST 2026
[2026-06-05 13:19:18,550.550 INFO    ] ================================================
[2026-06-05 13:19:19,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:19:19
[2026-06-05 13:19:19,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:19:20,147.147 INFO    ] Initializing speech engine...
[2026-06-05 13:19:20,152.152 INFO    ] 2026-06-05 13:19:20
[2026-06-05 13:19:20,434.434 INFO    ] 2026-06-05 13:19:20
[2026-06-05 13:19:20,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:19:20,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:19:20,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:19:20,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:19:20,907.907 INFO    ] time= 05/06/2026 13:19:20
[2026-06-05 13:19:20,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:19:20,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:19:21,049.049 INFO    ] No existing commands found in stream
[2026-06-05 13:19:26,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:19:26,071.071 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 13:19:27,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:19:27,475.475 INFO    ] Checking for system updates...
[2026-06-05 13:19:27,515.515 INFO    ] 200
[2026-06-05 13:19:27,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:27,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:19:27,573.573 INFO    ] No update needed
[2026-06-05 13:19:27,576.576 INFO    ] Checking for camera pi updates...
[2026-06-05 13:19:27,615.615 INFO    ] 200
[2026-06-05 13:19:27,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:27,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:19:27,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:19:27,711.711 INFO    ] No camera update needed
[2026-06-05 13:19:27,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:19:27,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:19:27,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:19:27,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:19:29,768.768 INFO    ] ================================================
[2026-06-05 13:19:29,783.783 INFO    ] Launching Daemon at Fri Jun  5 13:19:29 IST 2026
[2026-06-05 13:19:29,794.794 INFO    ] ================================================
[2026-06-05 13:19:30,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:19:30
[2026-06-05 13:19:30,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:19:31,205.205 INFO    ] Initializing speech engine...
[2026-06-05 13:19:31,229.229 INFO    ] 2026-06-05 13:19:31
[2026-06-05 13:19:31,482.482 INFO    ] 2026-06-05 13:19:31
[2026-06-05 13:19:31,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:19:31,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:19:31,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:19:31,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:19:31,881.881 INFO    ] time= 05/06/2026 13:19:31
[2026-06-05 13:19:31,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:19:31,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:19:32,068.068 INFO    ] No existing commands found in stream
[2026-06-05 13:19:37,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:19:37,097.097 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 13:19:39,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:19:39,944.944 INFO    ] Checking for system updates...
[2026-06-05 13:19:39,980.980 INFO    ] 200
[2026-06-05 13:19:39,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:40,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:19:40,048.048 INFO    ] No update needed
[2026-06-05 13:19:40,051.051 INFO    ] Checking for camera pi updates...
[2026-06-05 13:19:40,089.089 INFO    ] 200
[2026-06-05 13:19:40,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:40,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:19:40,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:19:40,180.180 INFO    ] No camera update needed
[2026-06-05 13:19:40,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:19:40,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:19:40,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:19:40,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:19:42,236.236 INFO    ] ================================================
[2026-06-05 13:19:42,252.252 INFO    ] Launching Daemon at Fri Jun  5 13:19:42 IST 2026
[2026-06-05 13:19:42,263.263 INFO    ] ================================================
[2026-06-05 13:19:42,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:19:42
[2026-06-05 13:19:43,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:19:43,872.872 INFO    ] Initializing speech engine...
[2026-06-05 13:19:43,881.881 INFO    ] 2026-06-05 13:19:43
[2026-06-05 13:19:44,127.127 INFO    ] 2026-06-05 13:19:44
[2026-06-05 13:19:44,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:19:44,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:19:44,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:19:44,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:19:44,603.603 INFO    ] time= 05/06/2026 13:19:44
[2026-06-05 13:19:44,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:19:44,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:19:44,823.823 INFO    ] No existing commands found in stream
[2026-06-05 13:19:49,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:19:49,850.850 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 13:19:52,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:19:52,375.375 INFO    ] Checking for system updates...
[2026-06-05 13:19:52,416.416 INFO    ] 200
[2026-06-05 13:19:52,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:52,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:19:52,475.475 INFO    ] No update needed
[2026-06-05 13:19:52,478.478 INFO    ] Checking for camera pi updates...
[2026-06-05 13:19:52,515.515 INFO    ] 200
[2026-06-05 13:19:52,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:19:52,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:19:52,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:19:52,604.604 INFO    ] No camera update needed
[2026-06-05 13:19:52,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:19:52,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:19:52,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:19:52,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:19:54,660.660 INFO    ] ================================================
[2026-06-05 13:19:54,676.676 INFO    ] Launching Daemon at Fri Jun  5 13:19:54 IST 2026
[2026-06-05 13:19:54,686.686 INFO    ] ================================================
[2026-06-05 13:19:55,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:19:55
[2026-06-05 13:19:55,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:19:56,115.115 INFO    ] Initializing speech engine...
[2026-06-05 13:19:56,125.125 INFO    ] 2026-06-05 13:19:56
[2026-06-05 13:19:56,376.376 INFO    ] 2026-06-05 13:19:56
[2026-06-05 13:19:56,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:19:56,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:19:56,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:19:56,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:19:56,794.794 INFO    ] time= 05/06/2026 13:19:56
[2026-06-05 13:19:56,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:19:56,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:19:56,966.966 INFO    ] No existing commands found in stream
[2026-06-05 13:20:01,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:20:01,991.991 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 13:20:08,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:20:08,245.245 INFO    ] Checking for system updates...
[2026-06-05 13:20:08,287.287 INFO    ] 200
[2026-06-05 13:20:08,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:20:08,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:20:08,354.354 INFO    ] No update needed
[2026-06-05 13:20:08,356.356 INFO    ] Checking for camera pi updates...
[2026-06-05 13:20:08,392.392 INFO    ] 200
[2026-06-05 13:20:08,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:20:08,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:20:08,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:20:08,470.470 INFO    ] No camera update needed
[2026-06-05 13:20:08,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:20:08,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:20:08,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:20:08,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:20:10,531.531 INFO    ] ================================================
[2026-06-05 13:20:10,547.547 INFO    ] Launching Daemon at Fri Jun  5 13:20:10 IST 2026
[2026-06-05 13:20:10,558.558 INFO    ] ================================================
[2026-06-05 13:20:11,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:20:11
[2026-06-05 13:20:11,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:20:12,067.067 INFO    ] Initializing speech engine...
[2026-06-05 13:20:12,072.072 INFO    ] 2026-06-05 13:20:12
[2026-06-05 13:20:12,323.323 INFO    ] 2026-06-05 13:20:12
[2026-06-05 13:20:12,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:20:12,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:20:12,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:20:12,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:20:12,797.797 INFO    ] time= 05/06/2026 13:20:12
[2026-06-05 13:20:12,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:20:12,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:20:13,022.022 INFO    ] No existing commands found in stream
[2026-06-05 13:20:18,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:20:18,051.051 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 13:20:20,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:20:20,640.640 INFO    ] Checking for system updates...
[2026-06-05 13:20:20,677.677 INFO    ] 200
[2026-06-05 13:20:20,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:20:20,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:20:20,742.742 INFO    ] No update needed
[2026-06-05 13:20:20,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 13:20:20,783.783 INFO    ] 200
[2026-06-05 13:20:20,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:20:20,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:20:20,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:20:20,877.877 INFO    ] No camera update needed
[2026-06-05 13:20:20,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:20:20,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:20:20,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:20:20,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:20:22,933.933 INFO    ] ================================================
[2026-06-05 13:20:22,949.949 INFO    ] Launching Daemon at Fri Jun  5 13:20:22 IST 2026
[2026-06-05 13:20:22,960.960 INFO    ] ================================================
[2026-06-05 13:20:23,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:20:23
[2026-06-05 13:20:24,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:20:24,397.397 INFO    ] Initializing speech engine...
[2026-06-05 13:20:24,419.419 INFO    ] 2026-06-05 13:20:24
[2026-06-05 13:20:24,692.692 INFO    ] 2026-06-05 13:20:24
[2026-06-05 13:20:24,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:20:24,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:20:24,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:20:25,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:20:25,141.141 INFO    ] time= 05/06/2026 13:20:25
[2026-06-05 13:20:25,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:20:25,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:20:25,296.296 INFO    ] No existing commands found in stream
[2026-06-05 13:20:30,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:20:30,315.315 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 13:20:34,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:20:34,739.739 INFO    ] Checking for system updates...
[2026-06-05 13:20:34,778.778 INFO    ] 200
[2026-06-05 13:20:34,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:20:34,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:20:34,836.836 INFO    ] No update needed
[2026-06-05 13:20:34,839.839 INFO    ] Checking for camera pi updates...
[2026-06-05 13:20:34,875.875 INFO    ] 200
[2026-06-05 13:20:34,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:20:34,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:20:34,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:20:34,952.952 INFO    ] No camera update needed
[2026-06-05 13:20:34,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:20:34,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:20:34,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:20:34,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:20:37,011.011 INFO    ] ================================================
[2026-06-05 13:20:37,026.026 INFO    ] Launching Daemon at Fri Jun  5 13:20:37 IST 2026
[2026-06-05 13:20:37,038.038 INFO    ] ================================================
[2026-06-05 13:20:37,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:20:37
[2026-06-05 13:20:38,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:20:38,655.655 INFO    ] Initializing speech engine...
[2026-06-05 13:20:38,662.662 INFO    ] 2026-06-05 13:20:38
[2026-06-05 13:20:38,952.952 INFO    ] 2026-06-05 13:20:38
[2026-06-05 13:20:38,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:20:39,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:20:39,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:20:39,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:20:39,485.485 INFO    ] time= 05/06/2026 13:20:39
[2026-06-05 13:20:39,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:20:39,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:20:39,641.641 INFO    ] No existing commands found in stream
[2026-06-05 13:20:44,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:20:44,679.679 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 13:20:46,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:20:46,992.992 INFO    ] Checking for system updates...
[2026-06-05 13:20:47,034.034 INFO    ] 200
[2026-06-05 13:20:47,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:20:47,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:20:47,096.096 INFO    ] No update needed
[2026-06-05 13:20:47,098.098 INFO    ] Checking for camera pi updates...
[2026-06-05 13:20:47,134.134 INFO    ] 200
[2026-06-05 13:20:47,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:20:47,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:20:47,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:20:47,229.229 INFO    ] No camera update needed
[2026-06-05 13:20:47,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:20:47,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:20:47,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:20:47,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:20:49,288.288 INFO    ] ================================================
[2026-06-05 13:20:49,303.303 INFO    ] Launching Daemon at Fri Jun  5 13:20:49 IST 2026
[2026-06-05 13:20:49,314.314 INFO    ] ================================================
[2026-06-05 13:20:49,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:20:49
[2026-06-05 13:20:50,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:20:50,817.817 INFO    ] Initializing speech engine...
[2026-06-05 13:20:50,826.826 INFO    ] 2026-06-05 13:20:50
[2026-06-05 13:20:51,077.077 INFO    ] 2026-06-05 13:20:51
[2026-06-05 13:20:51,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:20:51,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:20:51,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:20:51,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:20:51,535.535 INFO    ] time= 05/06/2026 13:20:51
[2026-06-05 13:20:51,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:20:51,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:20:51,781.781 INFO    ] No existing commands found in stream
[2026-06-05 13:20:56,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:20:56,809.809 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 13:21:00,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:21:00,549.549 INFO    ] Checking for system updates...
[2026-06-05 13:21:00,592.592 INFO    ] 200
[2026-06-05 13:21:00,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:00,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:21:00,654.654 INFO    ] No update needed
[2026-06-05 13:21:00,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 13:21:00,690.690 INFO    ] 200
[2026-06-05 13:21:00,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:00,739.739 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:21:00,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:21:00,793.793 INFO    ] No camera update needed
[2026-06-05 13:21:00,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:21:00,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:21:00,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:21:00,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:21:02,852.852 INFO    ] ================================================
[2026-06-05 13:21:02,873.873 INFO    ] Launching Daemon at Fri Jun  5 13:21:02 IST 2026
[2026-06-05 13:21:02,888.888 INFO    ] ================================================
[2026-06-05 13:21:03,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:21:03
[2026-06-05 13:21:04,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:21:04,471.471 INFO    ] Initializing speech engine...
[2026-06-05 13:21:04,480.480 INFO    ] 2026-06-05 13:21:04
[2026-06-05 13:21:04,742.742 INFO    ] 2026-06-05 13:21:04
[2026-06-05 13:21:04,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:21:06,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:21:06,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:21:06,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:21:06,940.940 INFO    ] time= 05/06/2026 13:21:06
[2026-06-05 13:21:06,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:21:06,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:21:07,070.070 INFO    ] No existing commands found in stream
[2026-06-05 13:21:12,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:21:12,080.080 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 13:21:14,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:21:14,244.244 INFO    ] Checking for system updates...
[2026-06-05 13:21:14,280.280 INFO    ] 200
[2026-06-05 13:21:14,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:14,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:21:14,346.346 INFO    ] No update needed
[2026-06-05 13:21:14,348.348 INFO    ] Checking for camera pi updates...
[2026-06-05 13:21:14,386.386 INFO    ] 200
[2026-06-05 13:21:14,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:14,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:21:14,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:21:14,575.575 INFO    ] No camera update needed
[2026-06-05 13:21:14,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:21:14,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:21:14,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:21:14,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:21:16,631.631 INFO    ] ================================================
[2026-06-05 13:21:16,647.647 INFO    ] Launching Daemon at Fri Jun  5 13:21:16 IST 2026
[2026-06-05 13:21:16,657.657 INFO    ] ================================================
[2026-06-05 13:21:17,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:21:17
[2026-06-05 13:21:17,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:21:18,126.126 INFO    ] Initializing speech engine...
[2026-06-05 13:21:18,135.135 INFO    ] 2026-06-05 13:21:18
[2026-06-05 13:21:18,429.429 INFO    ] 2026-06-05 13:21:18
[2026-06-05 13:21:18,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:21:18,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:21:18,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:21:18,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:21:18,814.814 INFO    ] time= 05/06/2026 13:21:18
[2026-06-05 13:21:18,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:21:18,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:21:18,939.939 INFO    ] No existing commands found in stream
[2026-06-05 13:21:23,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:21:23,955.955 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 13:21:27,134.134 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:21:27,136.136 INFO    ] Checking for system updates...
[2026-06-05 13:21:27,173.173 INFO    ] 200
[2026-06-05 13:21:27,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:27,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:21:27,232.232 INFO    ] No update needed
[2026-06-05 13:21:27,234.234 INFO    ] Checking for camera pi updates...
[2026-06-05 13:21:27,269.269 INFO    ] 200
[2026-06-05 13:21:27,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:27,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:21:27,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:21:27,353.353 INFO    ] No camera update needed
[2026-06-05 13:21:27,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:21:27,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:21:27,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:21:27,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:21:29,410.410 INFO    ] ================================================
[2026-06-05 13:21:29,426.426 INFO    ] Launching Daemon at Fri Jun  5 13:21:29 IST 2026
[2026-06-05 13:21:29,438.438 INFO    ] ================================================
[2026-06-05 13:21:30,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:21:30
[2026-06-05 13:21:30,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:21:30,942.942 INFO    ] Initializing speech engine...
[2026-06-05 13:21:30,959.959 INFO    ] 2026-06-05 13:21:30
[2026-06-05 13:21:31,232.232 INFO    ] 2026-06-05 13:21:31
[2026-06-05 13:21:31,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:21:31,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:21:31,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:21:31,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:21:31,735.735 INFO    ] time= 05/06/2026 13:21:31
[2026-06-05 13:21:31,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:21:31,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:21:31,966.966 INFO    ] No existing commands found in stream
[2026-06-05 13:21:37,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:21:37,010.010 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 13:21:41,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:21:41,165.165 INFO    ] Checking for system updates...
[2026-06-05 13:21:41,201.201 INFO    ] 200
[2026-06-05 13:21:41,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:41,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:21:41,264.264 INFO    ] No update needed
[2026-06-05 13:21:41,267.267 INFO    ] Checking for camera pi updates...
[2026-06-05 13:21:41,302.302 INFO    ] 200
[2026-06-05 13:21:41,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:41,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:21:41,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:21:41,398.398 INFO    ] No camera update needed
[2026-06-05 13:21:41,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:21:41,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:21:41,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:21:41,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:21:43,452.452 INFO    ] ================================================
[2026-06-05 13:21:43,467.467 INFO    ] Launching Daemon at Fri Jun  5 13:21:43 IST 2026
[2026-06-05 13:21:43,478.478 INFO    ] ================================================
[2026-06-05 13:21:44,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:21:44
[2026-06-05 13:21:44,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:21:44,952.952 INFO    ] Initializing speech engine...
[2026-06-05 13:21:44,959.959 INFO    ] 2026-06-05 13:21:44
[2026-06-05 13:21:45,218.218 INFO    ] 2026-06-05 13:21:45
[2026-06-05 13:21:45,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:21:45,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:21:45,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:21:45,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:21:45,703.703 INFO    ] time= 05/06/2026 13:21:45
[2026-06-05 13:21:45,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:21:45,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:21:45,915.915 INFO    ] No existing commands found in stream
[2026-06-05 13:21:50,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:21:50,939.939 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 13:21:51,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:21:51,717.717 INFO    ] Checking for system updates...
[2026-06-05 13:21:51,761.761 INFO    ] 200
[2026-06-05 13:21:51,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:51,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:21:51,842.842 INFO    ] No update needed
[2026-06-05 13:21:51,846.846 INFO    ] Checking for camera pi updates...
[2026-06-05 13:21:51,881.881 INFO    ] 200
[2026-06-05 13:21:51,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:21:51,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:21:51,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:21:51,981.981 INFO    ] No camera update needed
[2026-06-05 13:21:51,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:21:51,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:21:51,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:21:52,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:21:54,042.042 INFO    ] ================================================
[2026-06-05 13:21:54,059.059 INFO    ] Launching Daemon at Fri Jun  5 13:21:54 IST 2026
[2026-06-05 13:21:54,070.070 INFO    ] ================================================
[2026-06-05 13:21:54,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:21:54
[2026-06-05 13:21:55,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:21:55,464.464 INFO    ] Initializing speech engine...
[2026-06-05 13:21:55,472.472 INFO    ] 2026-06-05 13:21:55
[2026-06-05 13:21:55,744.744 INFO    ] 2026-06-05 13:21:55
[2026-06-05 13:21:55,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:21:55,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:21:55,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:21:56,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:21:56,222.222 INFO    ] time= 05/06/2026 13:21:56
[2026-06-05 13:21:56,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:21:56,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:21:56,451.451 INFO    ] No existing commands found in stream
[2026-06-05 13:22:01,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:22:01,473.473 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 13:22:07,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:22:07,133.133 INFO    ] Checking for system updates...
[2026-06-05 13:22:07,169.169 INFO    ] 200
[2026-06-05 13:22:07,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:22:07,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:22:07,227.227 INFO    ] No update needed
[2026-06-05 13:22:07,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 13:22:07,263.263 INFO    ] 200
[2026-06-05 13:22:07,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:22:07,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:22:07,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:22:07,349.349 INFO    ] No camera update needed
[2026-06-05 13:22:07,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:22:07,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:22:07,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:22:07,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:22:09,404.404 INFO    ] ================================================
[2026-06-05 13:22:09,420.420 INFO    ] Launching Daemon at Fri Jun  5 13:22:09 IST 2026
[2026-06-05 13:22:09,431.431 INFO    ] ================================================
[2026-06-05 13:22:09,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:22:09
[2026-06-05 13:22:10,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:22:10,885.885 INFO    ] Initializing speech engine...
[2026-06-05 13:22:10,891.891 INFO    ] 2026-06-05 13:22:10
[2026-06-05 13:22:11,191.191 INFO    ] 2026-06-05 13:22:11
[2026-06-05 13:22:11,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:22:12,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:22:12,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:22:12,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:22:12,716.716 INFO    ] time= 05/06/2026 13:22:12
[2026-06-05 13:22:12,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:22:12,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:22:12,792.792 INFO    ] No existing commands found in stream
[2026-06-05 13:22:17,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:22:17,807.807 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 13:22:21,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:22:21,694.694 INFO    ] Checking for system updates...
[2026-06-05 13:22:21,734.734 INFO    ] 200
[2026-06-05 13:22:21,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:22:21,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:22:21,799.799 INFO    ] No update needed
[2026-06-05 13:22:21,801.801 INFO    ] Checking for camera pi updates...
[2026-06-05 13:22:21,836.836 INFO    ] 200
[2026-06-05 13:22:21,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:22:21,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:22:21,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:22:21,928.928 INFO    ] No camera update needed
[2026-06-05 13:22:21,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:22:21,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:22:21,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:22:21,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:22:23,984.984 INFO    ] ================================================
[2026-06-05 13:22:24,000.000 INFO    ] Launching Daemon at Fri Jun  5 13:22:23 IST 2026
[2026-06-05 13:22:24,012.012 INFO    ] ================================================
[2026-06-05 13:22:24,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:22:24
[2026-06-05 13:22:25,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:22:25,439.439 INFO    ] Initializing speech engine...
[2026-06-05 13:22:25,450.450 INFO    ] 2026-06-05 13:22:25
[2026-06-05 13:22:25,715.715 INFO    ] 2026-06-05 13:22:25
[2026-06-05 13:22:25,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:22:25,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:22:25,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:22:26,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:22:26,107.107 INFO    ] time= 05/06/2026 13:22:26
[2026-06-05 13:22:26,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:22:26,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:22:26,288.288 INFO    ] No existing commands found in stream
[2026-06-05 13:22:31,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:22:31,311.311 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 13:22:34,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:22:34,487.487 INFO    ] Checking for system updates...
[2026-06-05 13:22:34,523.523 INFO    ] 200
[2026-06-05 13:22:34,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:22:34,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:22:34,587.587 INFO    ] No update needed
[2026-06-05 13:22:34,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 13:22:34,627.627 INFO    ] 200
[2026-06-05 13:22:34,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:22:34,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:22:34,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:22:34,704.704 INFO    ] No camera update needed
[2026-06-05 13:22:34,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:22:34,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:22:34,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:22:34,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:22:36,763.763 INFO    ] ================================================
[2026-06-05 13:22:36,779.779 INFO    ] Launching Daemon at Fri Jun  5 13:22:36 IST 2026
[2026-06-05 13:22:36,790.790 INFO    ] ================================================
[2026-06-05 13:22:37,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:22:37
[2026-06-05 13:22:37,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:22:38,240.240 INFO    ] Initializing speech engine...
[2026-06-05 13:22:38,250.250 INFO    ] 2026-06-05 13:22:38
[2026-06-05 13:22:38,512.512 INFO    ] 2026-06-05 13:22:38
[2026-06-05 13:22:38,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:22:38,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:22:38,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:22:38,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:22:39,004.004 INFO    ] time= 05/06/2026 13:22:38
[2026-06-05 13:22:39,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:22:39,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:22:39,205.205 INFO    ] No existing commands found in stream
[2026-06-05 13:22:44,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:22:44,220.220 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 13:22:46,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:22:46,988.988 INFO    ] Checking for system updates...
[2026-06-05 13:22:47,027.027 INFO    ] 200
[2026-06-05 13:22:47,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:22:47,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:22:47,086.086 INFO    ] No update needed
[2026-06-05 13:22:47,089.089 INFO    ] Checking for camera pi updates...
[2026-06-05 13:22:47,126.126 INFO    ] 200
[2026-06-05 13:22:47,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:22:47,173.173 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:22:47,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:22:47,216.216 INFO    ] No camera update needed
[2026-06-05 13:22:47,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:22:47,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:22:47,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:22:47,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:22:49,273.273 INFO    ] ================================================
[2026-06-05 13:22:49,289.289 INFO    ] Launching Daemon at Fri Jun  5 13:22:49 IST 2026
[2026-06-05 13:22:49,300.300 INFO    ] ================================================
[2026-06-05 13:22:49,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:22:49
[2026-06-05 13:22:50,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:22:50,801.801 INFO    ] Initializing speech engine...
[2026-06-05 13:22:50,815.815 INFO    ] 2026-06-05 13:22:50
[2026-06-05 13:22:51,110.110 INFO    ] 2026-06-05 13:22:51
[2026-06-05 13:22:51,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:22:51,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:22:51,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:22:51,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:22:51,522.522 INFO    ] time= 05/06/2026 13:22:51
[2026-06-05 13:22:51,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:22:51,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:22:51,698.698 INFO    ] No existing commands found in stream
[2026-06-05 13:22:56,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:22:56,728.728 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 13:23:00,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:23:00,357.357 INFO    ] Checking for system updates...
[2026-06-05 13:23:00,394.394 INFO    ] 200
[2026-06-05 13:23:00,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:00,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:23:00,453.453 INFO    ] No update needed
[2026-06-05 13:23:00,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 13:23:00,490.490 INFO    ] 200
[2026-06-05 13:23:00,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:00,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:23:00,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:23:00,588.588 INFO    ] No camera update needed
[2026-06-05 13:23:00,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:23:00,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:23:00,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:23:00,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:23:02,646.646 INFO    ] ================================================
[2026-06-05 13:23:02,668.668 INFO    ] Launching Daemon at Fri Jun  5 13:23:02 IST 2026
[2026-06-05 13:23:02,687.687 INFO    ] ================================================
[2026-06-05 13:23:03,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:23:03
[2026-06-05 13:23:04,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:23:04,333.333 INFO    ] Initializing speech engine...
[2026-06-05 13:23:04,338.338 INFO    ] 2026-06-05 13:23:04
[2026-06-05 13:23:04,598.598 INFO    ] 2026-06-05 13:23:04
[2026-06-05 13:23:04,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:23:06,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:23:06,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:23:07,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:23:07,077.077 INFO    ] time= 05/06/2026 13:23:07
[2026-06-05 13:23:07,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:23:07,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:23:07,167.167 INFO    ] No existing commands found in stream
[2026-06-05 13:23:12,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:23:12,181.181 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 13:23:15,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:23:15,621.621 INFO    ] Checking for system updates...
[2026-06-05 13:23:15,657.657 INFO    ] 200
[2026-06-05 13:23:15,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:15,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:23:15,715.715 INFO    ] No update needed
[2026-06-05 13:23:15,717.717 INFO    ] Checking for camera pi updates...
[2026-06-05 13:23:15,752.752 INFO    ] 200
[2026-06-05 13:23:15,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:15,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:23:15,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:23:15,838.838 INFO    ] No camera update needed
[2026-06-05 13:23:15,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:23:15,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:23:15,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:23:15,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:23:17,894.894 INFO    ] ================================================
[2026-06-05 13:23:17,910.910 INFO    ] Launching Daemon at Fri Jun  5 13:23:17 IST 2026
[2026-06-05 13:23:17,922.922 INFO    ] ================================================
[2026-06-05 13:23:18,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:23:18
[2026-06-05 13:23:19,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:23:19,356.356 INFO    ] Initializing speech engine...
[2026-06-05 13:23:19,365.365 INFO    ] 2026-06-05 13:23:19
[2026-06-05 13:23:19,620.620 INFO    ] 2026-06-05 13:23:19
[2026-06-05 13:23:19,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:23:19,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:23:19,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:23:19,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:23:20,002.002 INFO    ] time= 05/06/2026 13:23:19
[2026-06-05 13:23:20,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:23:20,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:23:20,119.119 INFO    ] No existing commands found in stream
[2026-06-05 13:23:25,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:23:25,131.131 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 13:23:26,067.067 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:23:26,070.070 INFO    ] Checking for system updates...
[2026-06-05 13:23:26,106.106 INFO    ] 200
[2026-06-05 13:23:26,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:26,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:23:26,171.171 INFO    ] No update needed
[2026-06-05 13:23:26,173.173 INFO    ] Checking for camera pi updates...
[2026-06-05 13:23:26,213.213 INFO    ] 200
[2026-06-05 13:23:26,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:26,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:23:26,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:23:26,402.402 INFO    ] No camera update needed
[2026-06-05 13:23:26,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:23:26,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:23:26,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:23:26,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:23:28,463.463 INFO    ] ================================================
[2026-06-05 13:23:28,479.479 INFO    ] Launching Daemon at Fri Jun  5 13:23:28 IST 2026
[2026-06-05 13:23:28,490.490 INFO    ] ================================================
[2026-06-05 13:23:29,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:23:29
[2026-06-05 13:23:29,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:23:29,899.899 INFO    ] Initializing speech engine...
[2026-06-05 13:23:29,912.912 INFO    ] 2026-06-05 13:23:29
[2026-06-05 13:23:30,197.197 INFO    ] 2026-06-05 13:23:30
[2026-06-05 13:23:30,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:23:30,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:23:30,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:23:31,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:23:31,078.078 INFO    ] time= 05/06/2026 13:23:31
[2026-06-05 13:23:31,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:23:31,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:23:31,270.270 INFO    ] No existing commands found in stream
[2026-06-05 13:23:36,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:23:36,293.293 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 13:23:39,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:23:39,089.089 INFO    ] Checking for system updates...
[2026-06-05 13:23:39,124.124 INFO    ] 200
[2026-06-05 13:23:39,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:39,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:23:39,186.186 INFO    ] No update needed
[2026-06-05 13:23:39,188.188 INFO    ] Checking for camera pi updates...
[2026-06-05 13:23:39,222.222 INFO    ] 200
[2026-06-05 13:23:39,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:39,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:23:39,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:23:39,320.320 INFO    ] No camera update needed
[2026-06-05 13:23:39,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:23:39,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:23:39,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:23:39,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:23:41,375.375 INFO    ] ================================================
[2026-06-05 13:23:41,391.391 INFO    ] Launching Daemon at Fri Jun  5 13:23:41 IST 2026
[2026-06-05 13:23:41,402.402 INFO    ] ================================================
[2026-06-05 13:23:42,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:23:42
[2026-06-05 13:23:42,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:23:42,956.956 INFO    ] Initializing speech engine...
[2026-06-05 13:23:42,962.962 INFO    ] 2026-06-05 13:23:42
[2026-06-05 13:23:43,229.229 INFO    ] 2026-06-05 13:23:43
[2026-06-05 13:23:43,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:23:43,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:23:43,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:23:43,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:23:43,642.642 INFO    ] time= 05/06/2026 13:23:43
[2026-06-05 13:23:43,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:23:43,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:23:43,732.732 INFO    ] No existing commands found in stream
[2026-06-05 13:23:48,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:23:48,774.774 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 13:23:49,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:23:49,486.486 INFO    ] Checking for system updates...
[2026-06-05 13:23:49,522.522 INFO    ] 200
[2026-06-05 13:23:49,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:49,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:23:49,579.579 INFO    ] No update needed
[2026-06-05 13:23:49,581.581 INFO    ] Checking for camera pi updates...
[2026-06-05 13:23:49,615.615 INFO    ] 200
[2026-06-05 13:23:49,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:23:49,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:23:49,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:23:49,702.702 INFO    ] No camera update needed
[2026-06-05 13:23:49,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:23:49,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:23:49,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:23:49,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:23:51,757.757 INFO    ] ================================================
[2026-06-05 13:23:51,772.772 INFO    ] Launching Daemon at Fri Jun  5 13:23:51 IST 2026
[2026-06-05 13:23:51,783.783 INFO    ] ================================================
[2026-06-05 13:23:52,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:23:52
[2026-06-05 13:23:52,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:23:53,241.241 INFO    ] Initializing speech engine...
[2026-06-05 13:23:53,251.251 INFO    ] 2026-06-05 13:23:53
[2026-06-05 13:23:53,500.500 INFO    ] 2026-06-05 13:23:53
[2026-06-05 13:23:53,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:23:53,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:23:53,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:23:53,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:23:54,016.016 INFO    ] time= 05/06/2026 13:23:53
[2026-06-05 13:23:54,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:23:54,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:23:54,207.207 INFO    ] No existing commands found in stream
[2026-06-05 13:23:59,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:23:59,231.231 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 13:24:01,583.583 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:24:01,587.587 INFO    ] Checking for system updates...
[2026-06-05 13:24:01,665.665 INFO    ] 200
[2026-06-05 13:24:01,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:01,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:24:01,772.772 INFO    ] No update needed
[2026-06-05 13:24:01,776.776 INFO    ] Checking for camera pi updates...
[2026-06-05 13:24:01,822.822 INFO    ] 200
[2026-06-05 13:24:01,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:01,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:24:01,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:24:01,920.920 INFO    ] No camera update needed
[2026-06-05 13:24:01,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:24:01,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:24:01,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:24:01,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:24:03,985.985 INFO    ] ================================================
[2026-06-05 13:24:04,000.000 INFO    ] Launching Daemon at Fri Jun  5 13:24:03 IST 2026
[2026-06-05 13:24:04,011.011 INFO    ] ================================================
[2026-06-05 13:24:04,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:24:04
[2026-06-05 13:24:05,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:24:05,456.456 INFO    ] Initializing speech engine...
[2026-06-05 13:24:05,464.464 INFO    ] 2026-06-05 13:24:05
[2026-06-05 13:24:05,769.769 INFO    ] 2026-06-05 13:24:05
[2026-06-05 13:24:05,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:24:07,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:24:07,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:24:07,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:24:07,459.459 INFO    ] time= 05/06/2026 13:24:07
[2026-06-05 13:24:07,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:24:07,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:24:07,610.610 INFO    ] No existing commands found in stream
[2026-06-05 13:24:12,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:24:12,643.643 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 13:24:15,662.662 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:24:15,665.665 INFO    ] Checking for system updates...
[2026-06-05 13:24:15,701.701 INFO    ] 200
[2026-06-05 13:24:15,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:15,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:24:15,765.765 INFO    ] No update needed
[2026-06-05 13:24:15,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 13:24:15,801.801 INFO    ] 200
[2026-06-05 13:24:15,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:15,844.844 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:24:15,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:24:15,893.893 INFO    ] No camera update needed
[2026-06-05 13:24:15,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:24:15,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:24:15,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:24:15,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:24:17,948.948 INFO    ] ================================================
[2026-06-05 13:24:17,964.964 INFO    ] Launching Daemon at Fri Jun  5 13:24:17 IST 2026
[2026-06-05 13:24:17,974.974 INFO    ] ================================================
[2026-06-05 13:24:18,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:24:18
[2026-06-05 13:24:19,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:24:19,581.581 INFO    ] Initializing speech engine...
[2026-06-05 13:24:19,596.596 INFO    ] 2026-06-05 13:24:19
[2026-06-05 13:24:19,877.877 INFO    ] 2026-06-05 13:24:19
[2026-06-05 13:24:19,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:24:20,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:24:20,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:24:20,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:24:20,278.278 INFO    ] time= 05/06/2026 13:24:20
[2026-06-05 13:24:20,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:24:20,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:24:20,409.409 INFO    ] No existing commands found in stream
[2026-06-05 13:24:25,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:24:25,447.447 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 13:24:26,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:24:26,429.429 INFO    ] Checking for system updates...
[2026-06-05 13:24:26,465.465 INFO    ] 200
[2026-06-05 13:24:26,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:26,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:24:26,523.523 INFO    ] No update needed
[2026-06-05 13:24:26,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 13:24:26,559.559 INFO    ] 200
[2026-06-05 13:24:26,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:26,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:24:26,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:24:26,652.652 INFO    ] No camera update needed
[2026-06-05 13:24:26,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:24:26,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:24:26,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:24:26,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:24:28,707.707 INFO    ] ================================================
[2026-06-05 13:24:28,723.723 INFO    ] Launching Daemon at Fri Jun  5 13:24:28 IST 2026
[2026-06-05 13:24:28,734.734 INFO    ] ================================================
[2026-06-05 13:24:29,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:24:29
[2026-06-05 13:24:29,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:24:30,212.212 INFO    ] Initializing speech engine...
[2026-06-05 13:24:30,217.217 INFO    ] 2026-06-05 13:24:30
[2026-06-05 13:24:30,478.478 INFO    ] 2026-06-05 13:24:30
[2026-06-05 13:24:30,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:24:30,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:24:30,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:24:31,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:24:31,036.036 INFO    ] time= 05/06/2026 13:24:31
[2026-06-05 13:24:31,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:24:31,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:24:31,186.186 INFO    ] No existing commands found in stream
[2026-06-05 13:24:36,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:24:36,205.205 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 13:24:37,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:24:37,506.506 INFO    ] Checking for system updates...
[2026-06-05 13:24:37,542.542 INFO    ] 200
[2026-06-05 13:24:37,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:37,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:24:37,604.604 INFO    ] No update needed
[2026-06-05 13:24:37,607.607 INFO    ] Checking for camera pi updates...
[2026-06-05 13:24:37,642.642 INFO    ] 200
[2026-06-05 13:24:37,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:37,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:24:37,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:24:37,735.735 INFO    ] No camera update needed
[2026-06-05 13:24:37,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:24:37,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:24:37,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:24:37,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:24:39,792.792 INFO    ] ================================================
[2026-06-05 13:24:39,807.807 INFO    ] Launching Daemon at Fri Jun  5 13:24:39 IST 2026
[2026-06-05 13:24:39,818.818 INFO    ] ================================================
[2026-06-05 13:24:40,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:24:40
[2026-06-05 13:24:41,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:24:41,395.395 INFO    ] Initializing speech engine...
[2026-06-05 13:24:41,403.403 INFO    ] 2026-06-05 13:24:41
[2026-06-05 13:24:41,686.686 INFO    ] 2026-06-05 13:24:41
[2026-06-05 13:24:41,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:24:41,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:24:41,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:24:42,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:24:42,230.230 INFO    ] time= 05/06/2026 13:24:42
[2026-06-05 13:24:42,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:24:42,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:24:42,383.383 INFO    ] No existing commands found in stream
[2026-06-05 13:24:47,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:24:47,400.400 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 13:24:51,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:24:51,198.198 INFO    ] Checking for system updates...
[2026-06-05 13:24:51,237.237 INFO    ] 200
[2026-06-05 13:24:51,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:51,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:24:51,299.299 INFO    ] No update needed
[2026-06-05 13:24:51,301.301 INFO    ] Checking for camera pi updates...
[2026-06-05 13:24:51,337.337 INFO    ] 200
[2026-06-05 13:24:51,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:24:51,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:24:51,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:24:51,429.429 INFO    ] No camera update needed
[2026-06-05 13:24:51,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:24:51,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:24:51,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:24:51,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:24:53,484.484 INFO    ] ================================================
[2026-06-05 13:24:53,498.498 INFO    ] Launching Daemon at Fri Jun  5 13:24:53 IST 2026
[2026-06-05 13:24:53,509.509 INFO    ] ================================================
[2026-06-05 13:24:54,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:24:54
[2026-06-05 13:24:54,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:24:54,991.991 INFO    ] Initializing speech engine...
[2026-06-05 13:24:55,001.001 INFO    ] 2026-06-05 13:24:54
[2026-06-05 13:24:55,251.251 INFO    ] 2026-06-05 13:24:55
[2026-06-05 13:24:55,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:24:55,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:24:55,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:24:55,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:24:55,624.624 INFO    ] time= 05/06/2026 13:24:55
[2026-06-05 13:24:55,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:24:55,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:24:55,820.820 INFO    ] No existing commands found in stream
[2026-06-05 13:25:00,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:25:00,834.834 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 13:25:02,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:25:02,441.441 INFO    ] Checking for system updates...
[2026-06-05 13:25:02,487.487 INFO    ] 200
[2026-06-05 13:25:02,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:02,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:25:02,579.579 INFO    ] No update needed
[2026-06-05 13:25:02,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 13:25:02,623.623 INFO    ] 200
[2026-06-05 13:25:02,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:02,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:25:02,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:25:02,726.726 INFO    ] No camera update needed
[2026-06-05 13:25:02,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:25:02,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:25:02,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:25:02,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:25:04,792.792 INFO    ] ================================================
[2026-06-05 13:25:04,807.807 INFO    ] Launching Daemon at Fri Jun  5 13:25:04 IST 2026
[2026-06-05 13:25:04,818.818 INFO    ] ================================================
[2026-06-05 13:25:05,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:25:05
[2026-06-05 13:25:05,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:25:06,239.239 INFO    ] Initializing speech engine...
[2026-06-05 13:25:06,245.245 INFO    ] 2026-06-05 13:25:06
[2026-06-05 13:25:06,517.517 INFO    ] 2026-06-05 13:25:06
[2026-06-05 13:25:06,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:25:07,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:25:07,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:25:07,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:25:07,349.349 INFO    ] time= 05/06/2026 13:25:07
[2026-06-05 13:25:07,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:25:07,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:25:07,574.574 INFO    ] No existing commands found in stream
[2026-06-05 13:25:12,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:25:12,592.592 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 13:25:13,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:25:13,896.896 INFO    ] Checking for system updates...
[2026-06-05 13:25:13,932.932 INFO    ] 200
[2026-06-05 13:25:13,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:13,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:25:13,995.995 INFO    ] No update needed
[2026-06-05 13:25:13,998.998 INFO    ] Checking for camera pi updates...
[2026-06-05 13:25:14,032.032 INFO    ] 200
[2026-06-05 13:25:14,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:14,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:25:14,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:25:14,129.129 INFO    ] No camera update needed
[2026-06-05 13:25:14,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:25:14,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:25:14,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:25:14,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:25:16,184.184 INFO    ] ================================================
[2026-06-05 13:25:16,199.199 INFO    ] Launching Daemon at Fri Jun  5 13:25:16 IST 2026
[2026-06-05 13:25:16,210.210 INFO    ] ================================================
[2026-06-05 13:25:16,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:25:16
[2026-06-05 13:25:17,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:25:17,625.625 INFO    ] Initializing speech engine...
[2026-06-05 13:25:17,645.645 INFO    ] 2026-06-05 13:25:17
[2026-06-05 13:25:17,895.895 INFO    ] 2026-06-05 13:25:17
[2026-06-05 13:25:17,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:25:18,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:25:18,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:25:18,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:25:18,281.281 INFO    ] time= 05/06/2026 13:25:18
[2026-06-05 13:25:18,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:25:18,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:25:18,472.472 INFO    ] No existing commands found in stream
[2026-06-05 13:25:23,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:25:23,499.499 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 13:25:24,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:25:24,888.888 INFO    ] Checking for system updates...
[2026-06-05 13:25:24,924.924 INFO    ] 200
[2026-06-05 13:25:24,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:24,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:25:24,981.981 INFO    ] No update needed
[2026-06-05 13:25:24,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 13:25:25,020.020 INFO    ] 200
[2026-06-05 13:25:25,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:25,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:25:25,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:25:25,111.111 INFO    ] No camera update needed
[2026-06-05 13:25:25,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:25:25,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:25:25,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:25:25,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:25:27,174.174 INFO    ] ================================================
[2026-06-05 13:25:27,190.190 INFO    ] Launching Daemon at Fri Jun  5 13:25:27 IST 2026
[2026-06-05 13:25:27,200.200 INFO    ] ================================================
[2026-06-05 13:25:27,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:25:27
[2026-06-05 13:25:28,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:25:28,764.764 INFO    ] Initializing speech engine...
[2026-06-05 13:25:28,773.773 INFO    ] 2026-06-05 13:25:28
[2026-06-05 13:25:29,021.021 INFO    ] 2026-06-05 13:25:29
[2026-06-05 13:25:29,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:25:29,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:25:29,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:25:29,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:25:29,392.392 INFO    ] time= 05/06/2026 13:25:29
[2026-06-05 13:25:29,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:25:29,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:25:29,575.575 INFO    ] No existing commands found in stream
[2026-06-05 13:25:34,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:25:34,602.602 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 13:25:37,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:25:37,331.331 INFO    ] Checking for system updates...
[2026-06-05 13:25:37,367.367 INFO    ] 200
[2026-06-05 13:25:37,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:37,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:25:37,448.448 INFO    ] No update needed
[2026-06-05 13:25:37,450.450 INFO    ] Checking for camera pi updates...
[2026-06-05 13:25:37,489.489 INFO    ] 200
[2026-06-05 13:25:37,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:37,533.533 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:25:37,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:25:37,579.579 INFO    ] No camera update needed
[2026-06-05 13:25:37,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:25:37,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:25:37,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:25:37,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:25:39,637.637 INFO    ] ================================================
[2026-06-05 13:25:39,652.652 INFO    ] Launching Daemon at Fri Jun  5 13:25:39 IST 2026
[2026-06-05 13:25:39,663.663 INFO    ] ================================================
[2026-06-05 13:25:40,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:25:40
[2026-06-05 13:25:40,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:25:41,174.174 INFO    ] Initializing speech engine...
[2026-06-05 13:25:41,183.183 INFO    ] 2026-06-05 13:25:41
[2026-06-05 13:25:41,443.443 INFO    ] 2026-06-05 13:25:41
[2026-06-05 13:25:41,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:25:41,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:25:41,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:25:41,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:25:41,942.942 INFO    ] time= 05/06/2026 13:25:41
[2026-06-05 13:25:41,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:25:42,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:25:42,154.154 INFO    ] No existing commands found in stream
[2026-06-05 13:25:47,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:25:47,189.189 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 13:25:49,824.824 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:25:49,827.827 INFO    ] Checking for system updates...
[2026-06-05 13:25:49,864.864 INFO    ] 200
[2026-06-05 13:25:49,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:49,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:25:49,924.924 INFO    ] No update needed
[2026-06-05 13:25:49,927.927 INFO    ] Checking for camera pi updates...
[2026-06-05 13:25:49,964.964 INFO    ] 200
[2026-06-05 13:25:49,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:25:50,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:25:50,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:25:50,054.054 INFO    ] No camera update needed
[2026-06-05 13:25:50,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:25:50,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:25:50,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:25:50,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:25:52,113.113 INFO    ] ================================================
[2026-06-05 13:25:52,128.128 INFO    ] Launching Daemon at Fri Jun  5 13:25:52 IST 2026
[2026-06-05 13:25:52,139.139 INFO    ] ================================================
[2026-06-05 13:25:52,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:25:52
[2026-06-05 13:25:53,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:25:53,632.632 INFO    ] Initializing speech engine...
[2026-06-05 13:25:53,641.641 INFO    ] 2026-06-05 13:25:53
[2026-06-05 13:25:53,913.913 INFO    ] 2026-06-05 13:25:53
[2026-06-05 13:25:53,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:25:54,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:25:54,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:25:54,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:25:54,362.362 INFO    ] time= 05/06/2026 13:25:54
[2026-06-05 13:25:54,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:25:54,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:25:54,599.599 INFO    ] No existing commands found in stream
[2026-06-05 13:25:59,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:25:59,618.618 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 13:26:00,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:26:00,660.660 INFO    ] Checking for system updates...
[2026-06-05 13:26:00,699.699 INFO    ] 200
[2026-06-05 13:26:00,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:00,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:26:00,763.763 INFO    ] No update needed
[2026-06-05 13:26:00,766.766 INFO    ] Checking for camera pi updates...
[2026-06-05 13:26:00,803.803 INFO    ] 200
[2026-06-05 13:26:00,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:00,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:26:00,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:26:00,881.881 INFO    ] No camera update needed
[2026-06-05 13:26:00,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:26:00,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:26:00,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:26:00,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:26:02,938.938 INFO    ] ================================================
[2026-06-05 13:26:02,953.953 INFO    ] Launching Daemon at Fri Jun  5 13:26:02 IST 2026
[2026-06-05 13:26:02,963.963 INFO    ] ================================================
[2026-06-05 13:26:03,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:26:03
[2026-06-05 13:26:04,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:26:04,437.437 INFO    ] Initializing speech engine...
[2026-06-05 13:26:04,452.452 INFO    ] 2026-06-05 13:26:04
[2026-06-05 13:26:04,723.723 INFO    ] 2026-06-05 13:26:04
[2026-06-05 13:26:04,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:26:07,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:26:07,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:26:07,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:26:07,325.325 INFO    ] time= 05/06/2026 13:26:07
[2026-06-05 13:26:07,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:26:07,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:26:07,420.420 INFO    ] No existing commands found in stream
[2026-06-05 13:26:12,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:26:12,433.433 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 13:26:14,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:26:14,600.600 INFO    ] Checking for system updates...
[2026-06-05 13:26:14,641.641 INFO    ] 200
[2026-06-05 13:26:14,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:14,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:26:14,699.699 INFO    ] No update needed
[2026-06-05 13:26:14,701.701 INFO    ] Checking for camera pi updates...
[2026-06-05 13:26:14,736.736 INFO    ] 200
[2026-06-05 13:26:14,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:14,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:26:14,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:26:14,824.824 INFO    ] No camera update needed
[2026-06-05 13:26:14,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:26:14,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:26:14,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:26:14,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:26:16,881.881 INFO    ] ================================================
[2026-06-05 13:26:16,897.897 INFO    ] Launching Daemon at Fri Jun  5 13:26:16 IST 2026
[2026-06-05 13:26:16,907.907 INFO    ] ================================================
[2026-06-05 13:26:17,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:26:17
[2026-06-05 13:26:18,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:26:18,364.364 INFO    ] Initializing speech engine...
[2026-06-05 13:26:18,371.371 INFO    ] 2026-06-05 13:26:18
[2026-06-05 13:26:18,631.631 INFO    ] 2026-06-05 13:26:18
[2026-06-05 13:26:18,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:26:18,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:26:18,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:26:19,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:26:19,101.101 INFO    ] time= 05/06/2026 13:26:19
[2026-06-05 13:26:19,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:26:19,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:26:19,300.300 INFO    ] No existing commands found in stream
[2026-06-05 13:26:24,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:26:24,333.333 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 13:26:27,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:26:27,740.740 INFO    ] Checking for system updates...
[2026-06-05 13:26:27,776.776 INFO    ] 200
[2026-06-05 13:26:27,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:27,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:26:27,838.838 INFO    ] No update needed
[2026-06-05 13:26:27,841.841 INFO    ] Checking for camera pi updates...
[2026-06-05 13:26:27,879.879 INFO    ] 200
[2026-06-05 13:26:27,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:27,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:26:27,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:26:27,966.966 INFO    ] No camera update needed
[2026-06-05 13:26:27,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:26:27,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:26:27,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:26:27,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:26:30,022.022 INFO    ] ================================================
[2026-06-05 13:26:30,037.037 INFO    ] Launching Daemon at Fri Jun  5 13:26:30 IST 2026
[2026-06-05 13:26:30,048.048 INFO    ] ================================================
[2026-06-05 13:26:30,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:26:30
[2026-06-05 13:26:31,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:26:31,535.535 INFO    ] Initializing speech engine...
[2026-06-05 13:26:31,549.549 INFO    ] 2026-06-05 13:26:31
[2026-06-05 13:26:31,834.834 INFO    ] 2026-06-05 13:26:31
[2026-06-05 13:26:31,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:26:32,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:26:32,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:26:32,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:26:32,385.385 INFO    ] time= 05/06/2026 13:26:32
[2026-06-05 13:26:32,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:26:32,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:26:32,547.547 INFO    ] No existing commands found in stream
[2026-06-05 13:26:37,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:26:37,578.578 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 13:26:39,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:26:39,418.418 INFO    ] Checking for system updates...
[2026-06-05 13:26:39,458.458 INFO    ] 200
[2026-06-05 13:26:39,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:39,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:26:39,524.524 INFO    ] No update needed
[2026-06-05 13:26:39,527.527 INFO    ] Checking for camera pi updates...
[2026-06-05 13:26:39,564.564 INFO    ] 200
[2026-06-05 13:26:39,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:39,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:26:39,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:26:39,665.665 INFO    ] No camera update needed
[2026-06-05 13:26:39,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:26:39,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:26:39,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:26:39,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:26:41,719.719 INFO    ] ================================================
[2026-06-05 13:26:41,734.734 INFO    ] Launching Daemon at Fri Jun  5 13:26:41 IST 2026
[2026-06-05 13:26:41,745.745 INFO    ] ================================================
[2026-06-05 13:26:42,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:26:42
[2026-06-05 13:26:42,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:26:43,178.178 INFO    ] Initializing speech engine...
[2026-06-05 13:26:43,189.189 INFO    ] 2026-06-05 13:26:43
[2026-06-05 13:26:43,437.437 INFO    ] 2026-06-05 13:26:43
[2026-06-05 13:26:43,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:26:43,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:26:43,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:26:43,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:26:43,858.858 INFO    ] time= 05/06/2026 13:26:43
[2026-06-05 13:26:43,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:26:43,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:26:44,014.014 INFO    ] No existing commands found in stream
[2026-06-05 13:26:49,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:26:49,042.042 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 13:26:51,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:26:51,278.278 INFO    ] Checking for system updates...
[2026-06-05 13:26:51,315.315 INFO    ] 200
[2026-06-05 13:26:51,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:51,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:26:51,382.382 INFO    ] No update needed
[2026-06-05 13:26:51,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 13:26:51,423.423 INFO    ] 200
[2026-06-05 13:26:51,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:26:51,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:26:51,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:26:51,518.518 INFO    ] No camera update needed
[2026-06-05 13:26:51,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:26:51,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:26:51,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:26:51,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:26:53,577.577 INFO    ] ================================================
[2026-06-05 13:26:53,592.592 INFO    ] Launching Daemon at Fri Jun  5 13:26:53 IST 2026
[2026-06-05 13:26:53,603.603 INFO    ] ================================================
[2026-06-05 13:26:54,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:26:54
[2026-06-05 13:26:54,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:26:55,025.025 INFO    ] Initializing speech engine...
[2026-06-05 13:26:55,044.044 INFO    ] 2026-06-05 13:26:55
[2026-06-05 13:26:55,295.295 INFO    ] 2026-06-05 13:26:55
[2026-06-05 13:26:55,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:26:55,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:26:55,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:26:55,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:26:55,789.789 INFO    ] time= 05/06/2026 13:26:55
[2026-06-05 13:26:55,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:26:55,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:26:55,996.996 INFO    ] No existing commands found in stream
[2026-06-05 13:27:01,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:27:01,028.028 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 13:27:01,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:27:01,816.816 INFO    ] Checking for system updates...
[2026-06-05 13:27:01,862.862 INFO    ] 200
[2026-06-05 13:27:01,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:01,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:27:01,962.962 INFO    ] No update needed
[2026-06-05 13:27:01,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 13:27:02,020.020 INFO    ] 200
[2026-06-05 13:27:02,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:02,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:27:02,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:27:02,142.142 INFO    ] No camera update needed
[2026-06-05 13:27:02,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:27:02,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:27:02,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:27:02,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:27:04,220.220 INFO    ] ================================================
[2026-06-05 13:27:04,236.236 INFO    ] Launching Daemon at Fri Jun  5 13:27:04 IST 2026
[2026-06-05 13:27:04,247.247 INFO    ] ================================================
[2026-06-05 13:27:04,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:27:04
[2026-06-05 13:27:05,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:27:05,660.660 INFO    ] Initializing speech engine...
[2026-06-05 13:27:05,674.674 INFO    ] 2026-06-05 13:27:05
[2026-06-05 13:27:05,939.939 INFO    ] 2026-06-05 13:27:05
[2026-06-05 13:27:05,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:27:07,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:27:07,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:27:08,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:27:08,366.366 INFO    ] time= 05/06/2026 13:27:08
[2026-06-05 13:27:08,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:27:08,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:27:08,481.481 INFO    ] No existing commands found in stream
[2026-06-05 13:27:13,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:27:13,497.497 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 13:27:15,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:27:15,297.297 INFO    ] Checking for system updates...
[2026-06-05 13:27:15,337.337 INFO    ] 200
[2026-06-05 13:27:15,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:15,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:27:15,395.395 INFO    ] No update needed
[2026-06-05 13:27:15,397.397 INFO    ] Checking for camera pi updates...
[2026-06-05 13:27:15,434.434 INFO    ] 200
[2026-06-05 13:27:15,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:15,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:27:15,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:27:15,533.533 INFO    ] No camera update needed
[2026-06-05 13:27:15,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:27:15,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:27:15,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:27:15,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:27:17,590.590 INFO    ] ================================================
[2026-06-05 13:27:17,604.604 INFO    ] Launching Daemon at Fri Jun  5 13:27:17 IST 2026
[2026-06-05 13:27:17,615.615 INFO    ] ================================================
[2026-06-05 13:27:18,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:27:18
[2026-06-05 13:27:18,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:27:19,030.030 INFO    ] Initializing speech engine...
[2026-06-05 13:27:19,055.055 INFO    ] 2026-06-05 13:27:19
[2026-06-05 13:27:19,327.327 INFO    ] 2026-06-05 13:27:19
[2026-06-05 13:27:19,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:27:19,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:27:19,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:27:19,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:27:19,738.738 INFO    ] time= 05/06/2026 13:27:19
[2026-06-05 13:27:19,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:27:19,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:27:19,824.824 INFO    ] No existing commands found in stream
[2026-06-05 13:27:24,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:27:24,837.837 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 13:27:28,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:27:28,978.978 INFO    ] Checking for system updates...
[2026-06-05 13:27:29,014.014 INFO    ] 200
[2026-06-05 13:27:29,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:29,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:27:29,078.078 INFO    ] No update needed
[2026-06-05 13:27:29,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 13:27:29,114.114 INFO    ] 200
[2026-06-05 13:27:29,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:29,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:27:29,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:27:29,212.212 INFO    ] No camera update needed
[2026-06-05 13:27:29,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:27:29,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:27:29,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:27:29,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:27:31,268.268 INFO    ] ================================================
[2026-06-05 13:27:31,284.284 INFO    ] Launching Daemon at Fri Jun  5 13:27:31 IST 2026
[2026-06-05 13:27:31,295.295 INFO    ] ================================================
[2026-06-05 13:27:31,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:27:31
[2026-06-05 13:27:32,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:27:33,023.023 INFO    ] Initializing speech engine...
[2026-06-05 13:27:33,030.030 INFO    ] 2026-06-05 13:27:33
[2026-06-05 13:27:33,341.341 INFO    ] 2026-06-05 13:27:33
[2026-06-05 13:27:33,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:27:33,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:27:33,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:27:33,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:27:33,792.792 INFO    ] time= 05/06/2026 13:27:33
[2026-06-05 13:27:33,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:27:33,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:27:34,020.020 INFO    ] No existing commands found in stream
[2026-06-05 13:27:39,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:27:39,040.040 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 13:27:39,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:27:39,553.553 INFO    ] Checking for system updates...
[2026-06-05 13:27:39,590.590 INFO    ] 200
[2026-06-05 13:27:39,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:39,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:27:39,658.658 INFO    ] No update needed
[2026-06-05 13:27:39,661.661 INFO    ] Checking for camera pi updates...
[2026-06-05 13:27:39,695.695 INFO    ] 200
[2026-06-05 13:27:39,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:39,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:27:39,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:27:39,889.889 INFO    ] No camera update needed
[2026-06-05 13:27:39,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:27:39,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:27:39,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:27:39,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:27:41,949.949 INFO    ] ================================================
[2026-06-05 13:27:41,964.964 INFO    ] Launching Daemon at Fri Jun  5 13:27:41 IST 2026
[2026-06-05 13:27:41,976.976 INFO    ] ================================================
[2026-06-05 13:27:42,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:27:42
[2026-06-05 13:27:43,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:27:43,458.458 INFO    ] Initializing speech engine...
[2026-06-05 13:27:43,467.467 INFO    ] 2026-06-05 13:27:43
[2026-06-05 13:27:43,722.722 INFO    ] 2026-06-05 13:27:43
[2026-06-05 13:27:43,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:27:44,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:27:44,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:27:44,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:27:44,223.223 INFO    ] time= 05/06/2026 13:27:44
[2026-06-05 13:27:44,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:27:44,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:27:44,414.414 INFO    ] No existing commands found in stream
[2026-06-05 13:27:49,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:27:49,443.443 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 13:27:50,026.026 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:27:50,029.029 INFO    ] Checking for system updates...
[2026-06-05 13:27:50,070.070 INFO    ] 200
[2026-06-05 13:27:50,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:50,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:27:50,135.135 INFO    ] No update needed
[2026-06-05 13:27:50,137.137 INFO    ] Checking for camera pi updates...
[2026-06-05 13:27:50,175.175 INFO    ] 200
[2026-06-05 13:27:50,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:27:50,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:27:50,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:27:50,270.270 INFO    ] No camera update needed
[2026-06-05 13:27:50,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:27:50,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:27:50,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:27:50,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:27:52,329.329 INFO    ] ================================================
[2026-06-05 13:27:52,345.345 INFO    ] Launching Daemon at Fri Jun  5 13:27:52 IST 2026
[2026-06-05 13:27:52,356.356 INFO    ] ================================================
[2026-06-05 13:27:52,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:27:52
[2026-06-05 13:27:53,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:27:53,826.826 INFO    ] Initializing speech engine...
[2026-06-05 13:27:53,838.838 INFO    ] 2026-06-05 13:27:53
[2026-06-05 13:27:54,086.086 INFO    ] 2026-06-05 13:27:54
[2026-06-05 13:27:54,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:27:54,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:27:54,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:27:54,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:27:54,651.651 INFO    ] time= 05/06/2026 13:27:54
[2026-06-05 13:27:54,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:27:54,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:27:54,806.806 INFO    ] No existing commands found in stream
[2026-06-05 13:27:59,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:27:59,831.831 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 13:28:02,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:28:02,132.132 INFO    ] Checking for system updates...
[2026-06-05 13:28:02,191.191 INFO    ] 200
[2026-06-05 13:28:02,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:02,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:02,263.263 INFO    ] No update needed
[2026-06-05 13:28:02,266.266 INFO    ] Checking for camera pi updates...
[2026-06-05 13:28:02,305.305 INFO    ] 200
[2026-06-05 13:28:02,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:02,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:28:02,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:02,409.409 INFO    ] No camera update needed
[2026-06-05 13:28:02,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:28:02,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:28:02,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:28:02,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:28:04,472.472 INFO    ] ================================================
[2026-06-05 13:28:04,488.488 INFO    ] Launching Daemon at Fri Jun  5 13:28:04 IST 2026
[2026-06-05 13:28:04,499.499 INFO    ] ================================================
[2026-06-05 13:28:05,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:28:05
[2026-06-05 13:28:05,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:28:06,105.105 INFO    ] Initializing speech engine...
[2026-06-05 13:28:06,119.119 INFO    ] 2026-06-05 13:28:06
[2026-06-05 13:28:06,402.402 INFO    ] 2026-06-05 13:28:06
[2026-06-05 13:28:06,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:28:07,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:28:07,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:28:07,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:28:07,415.415 INFO    ] time= 05/06/2026 13:28:07
[2026-06-05 13:28:07,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:28:07,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:28:07,544.544 INFO    ] No existing commands found in stream
[2026-06-05 13:28:12,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:28:12,573.573 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 13:28:14,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:28:14,699.699 INFO    ] Checking for system updates...
[2026-06-05 13:28:14,736.736 INFO    ] 200
[2026-06-05 13:28:14,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:14,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:14,796.796 INFO    ] No update needed
[2026-06-05 13:28:14,799.799 INFO    ] Checking for camera pi updates...
[2026-06-05 13:28:14,833.833 INFO    ] 200
[2026-06-05 13:28:14,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:14,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:28:14,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:14,923.923 INFO    ] No camera update needed
[2026-06-05 13:28:14,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:28:14,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:28:14,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:28:14,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:28:16,980.980 INFO    ] ================================================
[2026-06-05 13:28:17,995.995 INFO    ] Launching Daemon at Fri Jun  5 13:28:16 IST 2026
[2026-06-05 13:28:17,006.006 INFO    ] ================================================
[2026-06-05 13:28:17,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:28:17
[2026-06-05 13:28:18,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:28:18,549.549 INFO    ] Initializing speech engine...
[2026-06-05 13:28:18,558.558 INFO    ] 2026-06-05 13:28:18
[2026-06-05 13:28:18,824.824 INFO    ] 2026-06-05 13:28:18
[2026-06-05 13:28:18,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:28:19,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:28:19,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:28:19,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:28:19,199.199 INFO    ] time= 05/06/2026 13:28:19
[2026-06-05 13:28:19,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:28:19,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:28:19,323.323 INFO    ] No existing commands found in stream
[2026-06-05 13:28:24,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:28:24,340.340 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 13:28:26,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:28:26,868.868 INFO    ] Checking for system updates...
[2026-06-05 13:28:26,908.908 INFO    ] 200
[2026-06-05 13:28:26,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:26,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:26,973.973 INFO    ] No update needed
[2026-06-05 13:28:26,975.975 INFO    ] Checking for camera pi updates...
[2026-06-05 13:28:27,012.012 INFO    ] 200
[2026-06-05 13:28:27,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:27,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:28:27,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:27,104.104 INFO    ] No camera update needed
[2026-06-05 13:28:27,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:28:27,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:28:27,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:28:27,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:28:29,161.161 INFO    ] ================================================
[2026-06-05 13:28:29,177.177 INFO    ] Launching Daemon at Fri Jun  5 13:28:29 IST 2026
[2026-06-05 13:28:29,188.188 INFO    ] ================================================
[2026-06-05 13:28:29,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:28:29
[2026-06-05 13:28:30,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:28:30,652.652 INFO    ] Initializing speech engine...
[2026-06-05 13:28:30,659.659 INFO    ] 2026-06-05 13:28:30
[2026-06-05 13:28:30,921.921 INFO    ] 2026-06-05 13:28:30
[2026-06-05 13:28:30,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:28:31,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:28:31,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:28:31,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:28:31,384.384 INFO    ] time= 05/06/2026 13:28:31
[2026-06-05 13:28:31,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:28:31,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:28:31,584.584 INFO    ] No existing commands found in stream
[2026-06-05 13:28:36,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:28:36,612.612 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 13:28:40,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:28:40,179.179 INFO    ] Checking for system updates...
[2026-06-05 13:28:40,215.215 INFO    ] 200
[2026-06-05 13:28:40,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:40,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:40,283.283 INFO    ] No update needed
[2026-06-05 13:28:40,285.285 INFO    ] Checking for camera pi updates...
[2026-06-05 13:28:40,318.318 INFO    ] 200
[2026-06-05 13:28:40,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:40,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:28:40,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:40,415.415 INFO    ] No camera update needed
[2026-06-05 13:28:40,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:28:40,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:28:40,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:28:40,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:28:42,470.470 INFO    ] ================================================
[2026-06-05 13:28:42,486.486 INFO    ] Launching Daemon at Fri Jun  5 13:28:42 IST 2026
[2026-06-05 13:28:42,498.498 INFO    ] ================================================
[2026-06-05 13:28:43,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:28:43
[2026-06-05 13:28:43,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:28:43,965.965 INFO    ] Initializing speech engine...
[2026-06-05 13:28:43,974.974 INFO    ] 2026-06-05 13:28:43
[2026-06-05 13:28:44,221.221 INFO    ] 2026-06-05 13:28:44
[2026-06-05 13:28:44,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:28:44,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:28:44,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:28:44,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:28:44,590.590 INFO    ] time= 05/06/2026 13:28:44
[2026-06-05 13:28:44,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:28:44,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:28:44,770.770 INFO    ] No existing commands found in stream
[2026-06-05 13:28:49,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:28:49,800.800 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 13:28:53,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:28:53,175.175 INFO    ] Checking for system updates...
[2026-06-05 13:28:53,211.211 INFO    ] 200
[2026-06-05 13:28:53,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:53,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:53,268.268 INFO    ] No update needed
[2026-06-05 13:28:53,271.271 INFO    ] Checking for camera pi updates...
[2026-06-05 13:28:53,305.305 INFO    ] 200
[2026-06-05 13:28:53,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:28:53,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:28:53,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:28:53,425.425 INFO    ] No camera update needed
[2026-06-05 13:28:53,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:28:53,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:28:53,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:28:53,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:28:55,481.481 INFO    ] ================================================
[2026-06-05 13:28:55,496.496 INFO    ] Launching Daemon at Fri Jun  5 13:28:55 IST 2026
[2026-06-05 13:28:55,506.506 INFO    ] ================================================
[2026-06-05 13:28:56,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:28:56
[2026-06-05 13:28:56,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:28:57,102.102 INFO    ] Initializing speech engine...
[2026-06-05 13:28:57,108.108 INFO    ] 2026-06-05 13:28:57
[2026-06-05 13:28:57,365.365 INFO    ] 2026-06-05 13:28:57
[2026-06-05 13:28:57,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:28:57,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:28:57,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:28:57,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:28:57,825.825 INFO    ] time= 05/06/2026 13:28:57
[2026-06-05 13:28:57,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:28:57,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:28:58,060.060 INFO    ] No existing commands found in stream
[2026-06-05 13:29:03,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:29:03,080.080 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 13:29:03,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:29:03,628.628 INFO    ] Checking for system updates...
[2026-06-05 13:29:03,665.665 INFO    ] 200
[2026-06-05 13:29:03,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:03,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:29:03,728.728 INFO    ] No update needed
[2026-06-05 13:29:03,731.731 INFO    ] Checking for camera pi updates...
[2026-06-05 13:29:03,764.764 INFO    ] 200
[2026-06-05 13:29:03,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:03,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:29:03,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:29:03,850.850 INFO    ] No camera update needed
[2026-06-05 13:29:03,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:29:03,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:29:03,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:29:03,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:29:05,907.907 INFO    ] ================================================
[2026-06-05 13:29:05,923.923 INFO    ] Launching Daemon at Fri Jun  5 13:29:05 IST 2026
[2026-06-05 13:29:05,934.934 INFO    ] ================================================
[2026-06-05 13:29:06,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:29:06
[2026-06-05 13:29:07,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:29:07,378.378 INFO    ] Initializing speech engine...
[2026-06-05 13:29:07,412.412 INFO    ] 2026-06-05 13:29:07
[2026-06-05 13:29:07,682.682 INFO    ] 2026-06-05 13:29:07
[2026-06-05 13:29:07,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:29:07,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:29:07,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:29:08,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:29:08,137.137 INFO    ] time= 05/06/2026 13:29:08
[2026-06-05 13:29:08,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:29:08,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:29:08,376.376 INFO    ] No existing commands found in stream
[2026-06-05 13:29:13,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:29:13,407.407 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 13:29:15,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:29:15,373.373 INFO    ] Checking for system updates...
[2026-06-05 13:29:15,412.412 INFO    ] 200
[2026-06-05 13:29:15,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:15,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:29:15,479.479 INFO    ] No update needed
[2026-06-05 13:29:15,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 13:29:15,521.521 INFO    ] 200
[2026-06-05 13:29:15,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:15,575.575 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:29:15,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:29:15,610.610 INFO    ] No camera update needed
[2026-06-05 13:29:15,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:29:15,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:29:15,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:29:15,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:29:17,669.669 INFO    ] ================================================
[2026-06-05 13:29:17,684.684 INFO    ] Launching Daemon at Fri Jun  5 13:29:17 IST 2026
[2026-06-05 13:29:17,695.695 INFO    ] ================================================
[2026-06-05 13:29:18,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:29:18
[2026-06-05 13:29:18,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:29:19,122.122 INFO    ] Initializing speech engine...
[2026-06-05 13:29:19,137.137 INFO    ] 2026-06-05 13:29:19
[2026-06-05 13:29:19,404.404 INFO    ] 2026-06-05 13:29:19
[2026-06-05 13:29:19,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:29:19,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:29:19,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:29:19,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:29:19,909.909 INFO    ] time= 05/06/2026 13:29:19
[2026-06-05 13:29:19,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:29:19,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:29:20,120.120 INFO    ] No existing commands found in stream
[2026-06-05 13:29:25,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:29:25,144.144 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 13:29:27,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:29:27,898.898 INFO    ] Checking for system updates...
[2026-06-05 13:29:27,934.934 INFO    ] 200
[2026-06-05 13:29:27,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:27,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:29:27,999.999 INFO    ] No update needed
[2026-06-05 13:29:28,001.001 INFO    ] Checking for camera pi updates...
[2026-06-05 13:29:28,036.036 INFO    ] 200
[2026-06-05 13:29:28,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:28,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:29:28,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:29:28,108.108 INFO    ] No camera update needed
[2026-06-05 13:29:28,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:29:28,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:29:28,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:29:28,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:29:30,165.165 INFO    ] ================================================
[2026-06-05 13:29:30,180.180 INFO    ] Launching Daemon at Fri Jun  5 13:29:30 IST 2026
[2026-06-05 13:29:30,191.191 INFO    ] ================================================
[2026-06-05 13:29:30,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:29:30
[2026-06-05 13:29:31,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:29:31,616.616 INFO    ] Initializing speech engine...
[2026-06-05 13:29:31,626.626 INFO    ] 2026-06-05 13:29:31
[2026-06-05 13:29:31,885.885 INFO    ] 2026-06-05 13:29:31
[2026-06-05 13:29:31,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:29:32,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:29:32,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:29:32,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:29:32,275.275 INFO    ] time= 05/06/2026 13:29:32
[2026-06-05 13:29:32,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:29:32,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:29:32,466.466 INFO    ] No existing commands found in stream
[2026-06-05 13:29:37,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:29:37,489.489 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 13:29:39,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:29:39,625.625 INFO    ] Checking for system updates...
[2026-06-05 13:29:39,666.666 INFO    ] 200
[2026-06-05 13:29:39,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:39,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:29:39,723.723 INFO    ] No update needed
[2026-06-05 13:29:39,726.726 INFO    ] Checking for camera pi updates...
[2026-06-05 13:29:39,760.760 INFO    ] 200
[2026-06-05 13:29:39,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:39,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:29:39,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:29:39,841.841 INFO    ] No camera update needed
[2026-06-05 13:29:39,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:29:39,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:29:39,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:29:39,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:29:41,896.896 INFO    ] ================================================
[2026-06-05 13:29:41,912.912 INFO    ] Launching Daemon at Fri Jun  5 13:29:41 IST 2026
[2026-06-05 13:29:41,923.923 INFO    ] ================================================
[2026-06-05 13:29:42,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:29:42
[2026-06-05 13:29:43,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:29:43,388.388 INFO    ] Initializing speech engine...
[2026-06-05 13:29:43,393.393 INFO    ] 2026-06-05 13:29:43
[2026-06-05 13:29:43,653.653 INFO    ] 2026-06-05 13:29:43
[2026-06-05 13:29:43,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:29:43,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:29:43,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:29:44,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:29:44,127.127 INFO    ] time= 05/06/2026 13:29:44
[2026-06-05 13:29:44,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:29:44,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:29:44,340.340 INFO    ] No existing commands found in stream
[2026-06-05 13:29:49,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:29:49,368.368 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 13:29:51,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:29:51,438.438 INFO    ] Checking for system updates...
[2026-06-05 13:29:51,485.485 INFO    ] 200
[2026-06-05 13:29:51,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:51,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:29:51,546.546 INFO    ] No update needed
[2026-06-05 13:29:51,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 13:29:51,583.583 INFO    ] 200
[2026-06-05 13:29:51,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:29:51,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:29:51,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:29:51,778.778 INFO    ] No camera update needed
[2026-06-05 13:29:51,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:29:51,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:29:51,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:29:51,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:29:53,834.834 INFO    ] ================================================
[2026-06-05 13:29:53,850.850 INFO    ] Launching Daemon at Fri Jun  5 13:29:53 IST 2026
[2026-06-05 13:29:53,861.861 INFO    ] ================================================
[2026-06-05 13:29:54,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:29:54
[2026-06-05 13:29:55,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:29:55,322.322 INFO    ] Initializing speech engine...
[2026-06-05 13:29:55,335.335 INFO    ] 2026-06-05 13:29:55
[2026-06-05 13:29:55,599.599 INFO    ] 2026-06-05 13:29:55
[2026-06-05 13:29:55,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:29:55,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:29:55,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:29:56,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:29:56,066.066 INFO    ] time= 05/06/2026 13:29:56
[2026-06-05 13:29:56,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:29:56,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:29:56,266.266 INFO    ] No existing commands found in stream
[2026-06-05 13:30:01,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:30:01,300.300 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 13:30:08,022.022 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:30:08,025.025 INFO    ] Checking for system updates...
[2026-06-05 13:30:08,066.066 INFO    ] 200
[2026-06-05 13:30:08,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:08,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:30:08,127.127 INFO    ] No update needed
[2026-06-05 13:30:08,130.130 INFO    ] Checking for camera pi updates...
[2026-06-05 13:30:08,170.170 INFO    ] 200
[2026-06-05 13:30:08,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:08,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:30:08,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:30:08,246.246 INFO    ] No camera update needed
[2026-06-05 13:30:08,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:30:08,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:30:08,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:30:08,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:30:10,302.302 INFO    ] ================================================
[2026-06-05 13:30:10,318.318 INFO    ] Launching Daemon at Fri Jun  5 13:30:10 IST 2026
[2026-06-05 13:30:10,329.329 INFO    ] ================================================
[2026-06-05 13:30:10,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:30:10
[2026-06-05 13:30:11,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:30:11,759.759 INFO    ] Initializing speech engine...
[2026-06-05 13:30:11,773.773 INFO    ] 2026-06-05 13:30:11
[2026-06-05 13:30:12,040.040 INFO    ] 2026-06-05 13:30:12
[2026-06-05 13:30:12,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:30:12,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:30:12,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:30:12,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:30:12,419.419 INFO    ] time= 05/06/2026 13:30:12
[2026-06-05 13:30:12,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:30:12,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:30:12,600.600 INFO    ] No existing commands found in stream
[2026-06-05 13:30:17,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:30:17,628.628 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 13:30:19,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:30:19,070.070 INFO    ] Checking for system updates...
[2026-06-05 13:30:19,110.110 INFO    ] 200
[2026-06-05 13:30:19,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:19,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:30:19,176.176 INFO    ] No update needed
[2026-06-05 13:30:19,179.179 INFO    ] Checking for camera pi updates...
[2026-06-05 13:30:19,214.214 INFO    ] 200
[2026-06-05 13:30:19,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:19,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:30:19,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:30:19,287.287 INFO    ] No camera update needed
[2026-06-05 13:30:19,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:30:19,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:30:19,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:30:19,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:30:21,345.345 INFO    ] ================================================
[2026-06-05 13:30:21,361.361 INFO    ] Launching Daemon at Fri Jun  5 13:30:21 IST 2026
[2026-06-05 13:30:21,372.372 INFO    ] ================================================
[2026-06-05 13:30:22,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:30:22
[2026-06-05 13:30:22,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:30:22,991.991 INFO    ] Initializing speech engine...
[2026-06-05 13:30:22,998.998 INFO    ] 2026-06-05 13:30:22
[2026-06-05 13:30:23,258.258 INFO    ] 2026-06-05 13:30:23
[2026-06-05 13:30:23,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:30:23,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:30:23,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:30:23,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:30:23,805.805 INFO    ] time= 05/06/2026 13:30:23
[2026-06-05 13:30:23,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:30:23,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:30:23,964.964 INFO    ] No existing commands found in stream
[2026-06-05 13:30:28,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:30:28,989.989 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 13:30:29,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:30:29,657.657 INFO    ] Checking for system updates...
[2026-06-05 13:30:29,697.697 INFO    ] 200
[2026-06-05 13:30:29,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:29,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:30:29,757.757 INFO    ] No update needed
[2026-06-05 13:30:29,760.760 INFO    ] Checking for camera pi updates...
[2026-06-05 13:30:29,799.799 INFO    ] 200
[2026-06-05 13:30:29,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:29,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:30:29,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:30:29,878.878 INFO    ] No camera update needed
[2026-06-05 13:30:29,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:30:29,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:30:29,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:30:29,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:30:31,944.944 INFO    ] ================================================
[2026-06-05 13:30:31,964.964 INFO    ] Launching Daemon at Fri Jun  5 13:30:31 IST 2026
[2026-06-05 13:30:31,977.977 INFO    ] ================================================
[2026-06-05 13:30:32,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:30:32
[2026-06-05 13:30:33,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:30:33,621.621 INFO    ] Initializing speech engine...
[2026-06-05 13:30:33,629.629 INFO    ] 2026-06-05 13:30:33
[2026-06-05 13:30:33,894.894 INFO    ] 2026-06-05 13:30:33
[2026-06-05 13:30:33,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:30:34,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:30:34,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:30:34,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:30:34,274.274 INFO    ] time= 05/06/2026 13:30:34
[2026-06-05 13:30:34,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:30:34,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:30:34,395.395 INFO    ] No existing commands found in stream
[2026-06-05 13:30:39,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:30:39,411.411 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 13:30:41,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:30:41,308.308 INFO    ] Checking for system updates...
[2026-06-05 13:30:41,344.344 INFO    ] 200
[2026-06-05 13:30:41,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:41,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:30:41,410.410 INFO    ] No update needed
[2026-06-05 13:30:41,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 13:30:41,450.450 INFO    ] 200
[2026-06-05 13:30:41,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:41,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:30:41,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:30:41,549.549 INFO    ] No camera update needed
[2026-06-05 13:30:41,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:30:41,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:30:41,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:30:41,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:30:43,606.606 INFO    ] ================================================
[2026-06-05 13:30:43,622.622 INFO    ] Launching Daemon at Fri Jun  5 13:30:43 IST 2026
[2026-06-05 13:30:43,636.636 INFO    ] ================================================
[2026-06-05 13:30:44,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:30:44
[2026-06-05 13:30:44,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:30:45,308.308 INFO    ] Initializing speech engine...
[2026-06-05 13:30:45,322.322 INFO    ] 2026-06-05 13:30:45
[2026-06-05 13:30:45,614.614 INFO    ] 2026-06-05 13:30:45
[2026-06-05 13:30:45,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:30:45,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:30:45,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:30:46,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:30:46,167.167 INFO    ] time= 05/06/2026 13:30:46
[2026-06-05 13:30:46,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:30:46,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:30:46,328.328 INFO    ] No existing commands found in stream
[2026-06-05 13:30:51,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:30:51,347.347 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 13:30:52,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:30:52,420.420 INFO    ] Checking for system updates...
[2026-06-05 13:30:52,457.457 INFO    ] 200
[2026-06-05 13:30:52,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:52,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:30:52,524.524 INFO    ] No update needed
[2026-06-05 13:30:52,527.527 INFO    ] Checking for camera pi updates...
[2026-06-05 13:30:52,565.565 INFO    ] 200
[2026-06-05 13:30:52,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:30:52,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:30:52,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:30:52,650.650 INFO    ] No camera update needed
[2026-06-05 13:30:52,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:30:52,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:30:52,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:30:52,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:30:54,707.707 INFO    ] ================================================
[2026-06-05 13:30:54,722.722 INFO    ] Launching Daemon at Fri Jun  5 13:30:54 IST 2026
[2026-06-05 13:30:54,733.733 INFO    ] ================================================
[2026-06-05 13:30:55,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:30:55
[2026-06-05 13:30:55,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:30:56,295.295 INFO    ] Initializing speech engine...
[2026-06-05 13:30:56,308.308 INFO    ] 2026-06-05 13:30:56
[2026-06-05 13:30:56,613.613 INFO    ] 2026-06-05 13:30:56
[2026-06-05 13:30:56,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:30:56,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:30:56,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:30:57,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:30:57,090.090 INFO    ] time= 05/06/2026 13:30:57
[2026-06-05 13:30:57,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:30:57,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:30:57,250.250 INFO    ] No existing commands found in stream
[2026-06-05 13:31:02,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:31:02,266.266 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 13:31:02,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:31:02,769.769 INFO    ] Checking for system updates...
[2026-06-05 13:31:02,820.820 INFO    ] 200
[2026-06-05 13:31:02,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:31:02,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:31:02,901.901 INFO    ] No update needed
[2026-06-05 13:31:02,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 13:31:02,960.960 INFO    ] 200
[2026-06-05 13:31:02,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:31:03,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:31:03,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:31:03,065.065 INFO    ] No camera update needed
[2026-06-05 13:31:03,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:31:03,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:31:03,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:31:03,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:31:05,128.128 INFO    ] ================================================
[2026-06-05 13:31:05,143.143 INFO    ] Launching Daemon at Fri Jun  5 13:31:05 IST 2026
[2026-06-05 13:31:05,155.155 INFO    ] ================================================
[2026-06-05 13:31:05,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:31:05
[2026-06-05 13:31:06,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:31:06,731.731 INFO    ] Initializing speech engine...
[2026-06-05 13:31:06,746.746 INFO    ] 2026-06-05 13:31:06
[2026-06-05 13:31:07,027.027 INFO    ] 2026-06-05 13:31:07
[2026-06-05 13:31:07,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:31:07,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:31:07,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:31:07,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:31:07,497.497 INFO    ] time= 05/06/2026 13:31:07
[2026-06-05 13:31:07,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:31:07,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:31:07,678.678 INFO    ] No existing commands found in stream
[2026-06-05 13:31:12,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:31:12,694.694 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 13:31:17,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:31:17,072.072 INFO    ] Checking for system updates...
[2026-06-05 13:31:17,109.109 INFO    ] 200
[2026-06-05 13:31:17,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:31:17,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:31:17,173.173 INFO    ] No update needed
[2026-06-05 13:31:17,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 13:31:17,213.213 INFO    ] 200
[2026-06-05 13:31:17,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:31:17,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:31:17,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:31:17,306.306 INFO    ] No camera update needed
[2026-06-05 13:31:17,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:31:17,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:31:17,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:31:17,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:31:19,362.362 INFO    ] ================================================
[2026-06-05 13:31:19,379.379 INFO    ] Launching Daemon at Fri Jun  5 13:31:19 IST 2026
[2026-06-05 13:31:19,391.391 INFO    ] ================================================
[2026-06-05 13:31:19,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:31:19
[2026-06-05 13:31:20,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:31:20,852.852 INFO    ] Initializing speech engine...
[2026-06-05 13:31:20,860.860 INFO    ] 2026-06-05 13:31:20
[2026-06-05 13:31:21,133.133 INFO    ] 2026-06-05 13:31:21
[2026-06-05 13:31:21,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:31:21,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:31:21,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:31:21,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:31:21,569.569 INFO    ] time= 05/06/2026 13:31:21
[2026-06-05 13:31:21,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:31:21,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:31:21,741.741 INFO    ] No existing commands found in stream
[2026-06-05 13:31:26,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:31:26,760.760 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 13:31:28,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:31:28,035.035 INFO    ] Checking for system updates...
[2026-06-05 13:31:28,071.071 INFO    ] 200
[2026-06-05 13:31:28,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:31:28,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:31:28,135.135 INFO    ] No update needed
[2026-06-05 13:31:28,137.137 INFO    ] Checking for camera pi updates...
[2026-06-05 13:31:28,172.172 INFO    ] 200
[2026-06-05 13:31:28,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:31:28,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:31:28,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:31:28,269.269 INFO    ] No camera update needed
[2026-06-05 13:31:28,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:31:28,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:31:28,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:31:28,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:31:30,326.326 INFO    ] ================================================
[2026-06-05 13:31:30,342.342 INFO    ] Launching Daemon at Fri Jun  5 13:31:30 IST 2026
[2026-06-05 13:31:30,354.354 INFO    ] ================================================
[2026-06-05 13:31:31,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:31:31
[2026-06-05 13:31:31,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:31:32,010.010 INFO    ] Initializing speech engine...
[2026-06-05 13:31:32,020.020 INFO    ] 2026-06-05 13:31:32
[2026-06-05 13:31:32,306.306 INFO    ] 2026-06-05 13:31:32
[2026-06-05 13:31:32,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:31:32,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:31:32,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:31:32,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:31:32,711.711 INFO    ] time= 05/06/2026 13:31:32
[2026-06-05 13:31:32,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:31:32,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:31:32,848.848 INFO    ] No existing commands found in stream
[2026-06-05 13:31:37,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:31:37,862.862 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 13:31:39,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:31:39,469.469 INFO    ] Checking for system updates...
[2026-06-05 13:31:39,511.511 INFO    ] 200
[2026-06-05 13:31:39,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:31:39,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:31:39,583.583 INFO    ] No update needed
[2026-06-05 13:31:39,586.586 INFO    ] Checking for camera pi updates...
[2026-06-05 13:31:39,623.623 INFO    ] 200
[2026-06-05 13:31:39,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:31:39,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:31:39,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:31:39,720.720 INFO    ] No camera update needed
[2026-06-05 13:31:39,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:31:39,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:31:39,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:31:39,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:31:41,780.780 INFO    ] ================================================
[2026-06-05 13:31:41,795.795 INFO    ] Launching Daemon at Fri Jun  5 13:31:41 IST 2026
[2026-06-05 13:31:41,805.805 INFO    ] ================================================
[2026-06-05 13:31:42,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:31:42
[2026-06-05 13:31:42,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:31:43,257.257 INFO    ] Initializing speech engine...
[2026-06-05 13:31:43,267.267 INFO    ] 2026-06-05 13:31:43
[2026-06-05 13:31:43,515.515 INFO    ] 2026-06-05 13:31:43
[2026-06-05 13:31:43,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:31:58,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:31:58,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:32:03,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:32:03,899.899 INFO    ] time= 05/06/2026 13:32:03
[2026-06-05 13:32:03,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:32:03,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:32:04,000.000 INFO    ] No existing commands found in stream
[2026-06-05 13:32:09,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:32:09,012.012 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 13:32:12,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:32:12,869.869 INFO    ] Checking for system updates...
[2026-06-05 13:32:12,906.906 INFO    ] 200
[2026-06-05 13:32:12,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:32:12,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:32:12,969.969 INFO    ] No update needed
[2026-06-05 13:32:12,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 13:32:13,005.005 INFO    ] 200
[2026-06-05 13:32:13,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:32:13,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:32:13,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:32:13,095.095 INFO    ] No camera update needed
[2026-06-05 13:32:13,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:32:13,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:32:13,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:32:13,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:32:15,152.152 INFO    ] ================================================
[2026-06-05 13:32:15,167.167 INFO    ] Launching Daemon at Fri Jun  5 13:32:15 IST 2026
[2026-06-05 13:32:15,178.178 INFO    ] ================================================
[2026-06-05 13:32:15,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:32:15
[2026-06-05 13:32:16,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:32:16,593.593 INFO    ] Initializing speech engine...
[2026-06-05 13:32:16,600.600 INFO    ] 2026-06-05 13:32:16
[2026-06-05 13:32:16,895.895 INFO    ] 2026-06-05 13:32:16
[2026-06-05 13:32:16,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:32:18,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:32:18,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:32:18,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:32:18,377.377 INFO    ] time= 05/06/2026 13:32:18
[2026-06-05 13:32:18,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:32:18,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:32:18,461.461 INFO    ] No existing commands found in stream
[2026-06-05 13:32:23,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:32:23,478.478 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 13:32:25,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:32:25,155.155 INFO    ] Checking for system updates...
[2026-06-05 13:32:25,194.194 INFO    ] 200
[2026-06-05 13:32:25,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:32:25,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:32:25,258.258 INFO    ] No update needed
[2026-06-05 13:32:25,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 13:32:25,294.294 INFO    ] 200
[2026-06-05 13:32:25,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:32:25,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:32:25,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:32:25,382.382 INFO    ] No camera update needed
[2026-06-05 13:32:25,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:32:25,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:32:25,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:32:25,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:32:27,438.438 INFO    ] ================================================
[2026-06-05 13:32:27,453.453 INFO    ] Launching Daemon at Fri Jun  5 13:32:27 IST 2026
[2026-06-05 13:32:27,464.464 INFO    ] ================================================
[2026-06-05 13:32:28,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:32:28
[2026-06-05 13:32:28,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:32:28,900.900 INFO    ] Initializing speech engine...
[2026-06-05 13:32:28,916.916 INFO    ] 2026-06-05 13:32:28
[2026-06-05 13:32:29,178.178 INFO    ] 2026-06-05 13:32:29
[2026-06-05 13:32:29,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:32:29,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:32:29,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:32:29,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:32:29,571.571 INFO    ] time= 05/06/2026 13:32:29
[2026-06-05 13:32:29,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:32:29,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:32:29,725.725 INFO    ] No existing commands found in stream
[2026-06-05 13:32:34,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:32:34,741.741 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 13:32:37,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:32:37,517.517 INFO    ] Checking for system updates...
[2026-06-05 13:32:37,553.553 INFO    ] 200
[2026-06-05 13:32:37,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:32:37,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:32:37,612.612 INFO    ] No update needed
[2026-06-05 13:32:37,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 13:32:37,652.652 INFO    ] 200
[2026-06-05 13:32:37,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:32:37,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:32:37,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:32:37,748.748 INFO    ] No camera update needed
[2026-06-05 13:32:37,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:32:37,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:32:37,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:32:37,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:32:39,803.803 INFO    ] ================================================
[2026-06-05 13:32:39,819.819 INFO    ] Launching Daemon at Fri Jun  5 13:32:39 IST 2026
[2026-06-05 13:32:39,829.829 INFO    ] ================================================
[2026-06-05 13:32:40,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:32:40
[2026-06-05 13:32:41,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:32:41,285.285 INFO    ] Initializing speech engine...
[2026-06-05 13:32:41,302.302 INFO    ] 2026-06-05 13:32:41
[2026-06-05 13:32:41,564.564 INFO    ] 2026-06-05 13:32:41
[2026-06-05 13:32:41,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:32:41,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:32:41,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:32:41,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:32:41,951.951 INFO    ] time= 05/06/2026 13:32:41
[2026-06-05 13:32:41,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:32:42,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:32:42,136.136 INFO    ] No existing commands found in stream
[2026-06-05 13:32:47,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:32:47,162.162 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 13:32:50,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:32:50,571.571 INFO    ] Checking for system updates...
[2026-06-05 13:32:50,606.606 INFO    ] 200
[2026-06-05 13:32:50,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:32:50,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:32:50,663.663 INFO    ] No update needed
[2026-06-05 13:32:50,666.666 INFO    ] Checking for camera pi updates...
[2026-06-05 13:32:50,703.703 INFO    ] 200
[2026-06-05 13:32:50,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:32:50,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:32:50,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:32:50,792.792 INFO    ] No camera update needed
[2026-06-05 13:32:50,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:32:50,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:32:50,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:32:50,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:32:52,848.848 INFO    ] ================================================
[2026-06-05 13:32:52,863.863 INFO    ] Launching Daemon at Fri Jun  5 13:32:52 IST 2026
[2026-06-05 13:32:52,874.874 INFO    ] ================================================
[2026-06-05 13:32:53,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:32:53
[2026-06-05 13:32:54,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:32:54,478.478 INFO    ] Initializing speech engine...
[2026-06-05 13:32:54,486.486 INFO    ] 2026-06-05 13:32:54
[2026-06-05 13:32:54,764.764 INFO    ] 2026-06-05 13:32:54
[2026-06-05 13:32:54,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:32:55,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:32:55,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:32:55,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:32:55,271.271 INFO    ] time= 05/06/2026 13:32:55
[2026-06-05 13:32:55,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:32:55,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:32:55,478.478 INFO    ] No existing commands found in stream
[2026-06-05 13:33:00,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:33:00,501.501 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 13:33:04,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:33:04,283.283 INFO    ] Checking for system updates...
[2026-06-05 13:33:04,324.324 INFO    ] 200
[2026-06-05 13:33:04,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:04,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:33:04,384.384 INFO    ] No update needed
[2026-06-05 13:33:04,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 13:33:04,426.426 INFO    ] 200
[2026-06-05 13:33:04,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:04,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:33:04,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:33:04,515.515 INFO    ] No camera update needed
[2026-06-05 13:33:04,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:33:04,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:33:04,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:33:04,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:33:06,573.573 INFO    ] ================================================
[2026-06-05 13:33:06,589.589 INFO    ] Launching Daemon at Fri Jun  5 13:33:06 IST 2026
[2026-06-05 13:33:06,600.600 INFO    ] ================================================
[2026-06-05 13:33:07,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:33:07
[2026-06-05 13:33:07,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:33:08,086.086 INFO    ] Initializing speech engine...
[2026-06-05 13:33:08,102.102 INFO    ] 2026-06-05 13:33:08
[2026-06-05 13:33:08,376.376 INFO    ] 2026-06-05 13:33:08
[2026-06-05 13:33:08,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:33:08,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:33:08,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:33:08,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:33:08,758.758 INFO    ] time= 05/06/2026 13:33:08
[2026-06-05 13:33:08,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:33:08,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:33:08,945.945 INFO    ] No existing commands found in stream
[2026-06-05 13:33:13,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:33:13,969.969 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 13:33:17,417.417 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:33:17,420.420 INFO    ] Checking for system updates...
[2026-06-05 13:33:17,457.457 INFO    ] 200
[2026-06-05 13:33:17,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:17,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:33:17,524.524 INFO    ] No update needed
[2026-06-05 13:33:17,527.527 INFO    ] Checking for camera pi updates...
[2026-06-05 13:33:17,567.567 INFO    ] 200
[2026-06-05 13:33:17,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:17,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:33:17,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:33:17,657.657 INFO    ] No camera update needed
[2026-06-05 13:33:17,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:33:17,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:33:17,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:33:17,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:33:19,713.713 INFO    ] ================================================
[2026-06-05 13:33:19,729.729 INFO    ] Launching Daemon at Fri Jun  5 13:33:19 IST 2026
[2026-06-05 13:33:19,741.741 INFO    ] ================================================
[2026-06-05 13:33:20,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:33:20
[2026-06-05 13:33:21,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:33:21,382.382 INFO    ] Initializing speech engine...
[2026-06-05 13:33:21,393.393 INFO    ] 2026-06-05 13:33:21
[2026-06-05 13:33:21,707.707 INFO    ] 2026-06-05 13:33:21
[2026-06-05 13:33:21,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:33:22,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:33:22,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:33:22,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:33:22,409.409 INFO    ] time= 05/06/2026 13:33:22
[2026-06-05 13:33:22,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:33:22,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:33:22,646.646 INFO    ] No existing commands found in stream
[2026-06-05 13:33:27,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:33:27,671.671 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 13:33:31,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:33:31,630.630 INFO    ] Checking for system updates...
[2026-06-05 13:33:31,667.667 INFO    ] 200
[2026-06-05 13:33:31,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:31,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:33:31,740.740 INFO    ] No update needed
[2026-06-05 13:33:31,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 13:33:31,792.792 INFO    ] 200
[2026-06-05 13:33:31,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:31,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:33:31,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:33:31,879.879 INFO    ] No camera update needed
[2026-06-05 13:33:31,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:33:31,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:33:31,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:33:31,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:33:33,938.938 INFO    ] ================================================
[2026-06-05 13:33:33,953.953 INFO    ] Launching Daemon at Fri Jun  5 13:33:33 IST 2026
[2026-06-05 13:33:33,964.964 INFO    ] ================================================
[2026-06-05 13:33:34,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:33:34
[2026-06-05 13:33:35,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:33:35,611.611 INFO    ] Initializing speech engine...
[2026-06-05 13:33:35,617.617 INFO    ] 2026-06-05 13:33:35
[2026-06-05 13:33:35,897.897 INFO    ] 2026-06-05 13:33:35
[2026-06-05 13:33:35,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:33:37,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:33:37,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:33:37,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:33:37,291.291 INFO    ] time= 05/06/2026 13:33:37
[2026-06-05 13:33:37,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:33:37,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:33:37,384.384 INFO    ] No existing commands found in stream
[2026-06-05 13:33:42,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:33:42,400.400 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 13:33:46,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:33:46,100.100 INFO    ] Checking for system updates...
[2026-06-05 13:33:46,143.143 INFO    ] 200
[2026-06-05 13:33:46,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:46,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:33:46,208.208 INFO    ] No update needed
[2026-06-05 13:33:46,211.211 INFO    ] Checking for camera pi updates...
[2026-06-05 13:33:46,246.246 INFO    ] 200
[2026-06-05 13:33:46,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:46,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:33:46,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:33:46,332.332 INFO    ] No camera update needed
[2026-06-05 13:33:46,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:33:46,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:33:46,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:33:46,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:33:48,387.387 INFO    ] ================================================
[2026-06-05 13:33:48,402.402 INFO    ] Launching Daemon at Fri Jun  5 13:33:48 IST 2026
[2026-06-05 13:33:48,412.412 INFO    ] ================================================
[2026-06-05 13:33:48,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:33:48
[2026-06-05 13:33:49,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:33:49,833.833 INFO    ] Initializing speech engine...
[2026-06-05 13:33:49,846.846 INFO    ] 2026-06-05 13:33:49
[2026-06-05 13:33:50,147.147 INFO    ] 2026-06-05 13:33:50
[2026-06-05 13:33:50,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:33:50,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:33:50,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:33:50,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:33:50,577.577 INFO    ] time= 05/06/2026 13:33:50
[2026-06-05 13:33:50,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:33:50,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:33:50,750.750 INFO    ] No existing commands found in stream
[2026-06-05 13:33:55,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:33:55,788.788 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 13:33:57,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:33:57,635.635 INFO    ] Checking for system updates...
[2026-06-05 13:33:57,672.672 INFO    ] 200
[2026-06-05 13:33:57,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:57,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:33:57,737.737 INFO    ] No update needed
[2026-06-05 13:33:57,740.740 INFO    ] Checking for camera pi updates...
[2026-06-05 13:33:57,778.778 INFO    ] 200
[2026-06-05 13:33:57,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:33:57,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:33:57,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:33:57,866.866 INFO    ] No camera update needed
[2026-06-05 13:33:57,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:33:57,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:33:57,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:33:57,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:33:59,922.922 INFO    ] ================================================
[2026-06-05 13:33:59,937.937 INFO    ] Launching Daemon at Fri Jun  5 13:33:59 IST 2026
[2026-06-05 13:33:59,948.948 INFO    ] ================================================
[2026-06-05 13:34:00,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:34:00
[2026-06-05 13:34:01,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:34:01,881.881 INFO    ] Initializing speech engine...
[2026-06-05 13:34:01,893.893 INFO    ] 2026-06-05 13:34:01
[2026-06-05 13:34:02,269.269 INFO    ] 2026-06-05 13:34:02
[2026-06-05 13:34:02,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:34:02,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:34:02,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:34:02,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:34:02,704.704 INFO    ] time= 05/06/2026 13:34:02
[2026-06-05 13:34:02,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:34:02,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:34:02,845.845 INFO    ] No existing commands found in stream
[2026-06-05 13:34:07,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:34:07,878.878 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 13:34:11,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:34:11,883.883 INFO    ] Checking for system updates...
[2026-06-05 13:34:11,924.924 INFO    ] 200
[2026-06-05 13:34:11,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:34:11,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:34:11,982.982 INFO    ] No update needed
[2026-06-05 13:34:11,985.985 INFO    ] Checking for camera pi updates...
[2026-06-05 13:34:12,023.023 INFO    ] 200
[2026-06-05 13:34:12,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:34:12,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:34:12,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:34:12,225.225 INFO    ] No camera update needed
[2026-06-05 13:34:12,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:34:12,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:34:12,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:34:12,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:34:14,280.280 INFO    ] ================================================
[2026-06-05 13:34:14,295.295 INFO    ] Launching Daemon at Fri Jun  5 13:34:14 IST 2026
[2026-06-05 13:34:14,306.306 INFO    ] ================================================
[2026-06-05 13:34:14,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:34:14
[2026-06-05 13:34:15,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:34:15,730.730 INFO    ] Initializing speech engine...
[2026-06-05 13:34:15,740.740 INFO    ] 2026-06-05 13:34:15
[2026-06-05 13:34:16,002.002 INFO    ] 2026-06-05 13:34:15
[2026-06-05 13:34:16,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:34:16,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:34:16,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:34:16,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:34:16,544.544 INFO    ] time= 05/06/2026 13:34:16
[2026-06-05 13:34:16,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:34:16,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:34:16,699.699 INFO    ] No existing commands found in stream
[2026-06-05 13:34:21,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:34:21,726.726 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 13:34:23,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:34:23,749.749 INFO    ] Checking for system updates...
[2026-06-05 13:34:23,785.785 INFO    ] 200
[2026-06-05 13:34:23,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:34:23,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:34:23,844.844 INFO    ] No update needed
[2026-06-05 13:34:23,847.847 INFO    ] Checking for camera pi updates...
[2026-06-05 13:34:23,881.881 INFO    ] 200
[2026-06-05 13:34:23,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:34:23,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:34:23,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:34:23,974.974 INFO    ] No camera update needed
[2026-06-05 13:34:23,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:34:23,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:34:23,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:34:23,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:34:26,040.040 INFO    ] ================================================
[2026-06-05 13:34:26,055.055 INFO    ] Launching Daemon at Fri Jun  5 13:34:26 IST 2026
[2026-06-05 13:34:26,066.066 INFO    ] ================================================
[2026-06-05 13:34:26,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:34:26
[2026-06-05 13:34:27,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:34:27,471.471 INFO    ] Initializing speech engine...
[2026-06-05 13:34:27,486.486 INFO    ] 2026-06-05 13:34:27
[2026-06-05 13:34:27,751.751 INFO    ] 2026-06-05 13:34:27
[2026-06-05 13:34:27,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:34:27,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:34:27,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:34:28,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:34:28,135.135 INFO    ] time= 05/06/2026 13:34:28
[2026-06-05 13:34:28,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:34:28,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:34:28,330.330 INFO    ] No existing commands found in stream
[2026-06-05 13:34:33,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:34:33,350.350 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 13:34:36,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:34:36,066.066 INFO    ] Checking for system updates...
[2026-06-05 13:34:36,107.107 INFO    ] 200
[2026-06-05 13:34:36,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:34:36,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:34:36,173.173 INFO    ] No update needed
[2026-06-05 13:34:36,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 13:34:36,210.210 INFO    ] 200
[2026-06-05 13:34:36,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:34:36,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:34:36,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:34:36,299.299 INFO    ] No camera update needed
[2026-06-05 13:34:36,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:34:36,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:34:36,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:34:36,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:34:38,355.355 INFO    ] ================================================
[2026-06-05 13:34:38,370.370 INFO    ] Launching Daemon at Fri Jun  5 13:34:38 IST 2026
[2026-06-05 13:34:38,381.381 INFO    ] ================================================
[2026-06-05 13:34:38,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:34:38
[2026-06-05 13:34:39,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:34:39,824.824 INFO    ] Initializing speech engine...
[2026-06-05 13:34:39,831.831 INFO    ] 2026-06-05 13:34:39
[2026-06-05 13:34:40,095.095 INFO    ] 2026-06-05 13:34:40
[2026-06-05 13:34:40,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:34:41,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:34:41,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:34:41,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:34:41,536.536 INFO    ] time= 05/06/2026 13:34:41
[2026-06-05 13:34:41,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:34:41,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:34:41,613.613 INFO    ] No existing commands found in stream
[2026-06-05 13:34:46,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:34:46,629.629 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 13:34:47,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:34:47,664.664 INFO    ] Checking for system updates...
[2026-06-05 13:34:47,699.699 INFO    ] 200
[2026-06-05 13:34:47,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:34:47,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:34:47,765.765 INFO    ] No update needed
[2026-06-05 13:34:47,767.767 INFO    ] Checking for camera pi updates...
[2026-06-05 13:34:47,802.802 INFO    ] 200
[2026-06-05 13:34:47,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:34:47,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:34:47,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:34:47,897.897 INFO    ] No camera update needed
[2026-06-05 13:34:47,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:34:47,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:34:47,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:34:47,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:34:49,955.955 INFO    ] ================================================
[2026-06-05 13:34:49,970.970 INFO    ] Launching Daemon at Fri Jun  5 13:34:49 IST 2026
[2026-06-05 13:34:49,981.981 INFO    ] ================================================
[2026-06-05 13:34:50,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:34:50
[2026-06-05 13:34:51,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:34:51,591.591 INFO    ] Initializing speech engine...
[2026-06-05 13:34:51,605.605 INFO    ] 2026-06-05 13:34:51
[2026-06-05 13:34:51,886.886 INFO    ] 2026-06-05 13:34:51
[2026-06-05 13:34:51,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:34:52,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:34:52,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:34:52,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:34:52,422.422 INFO    ] time= 05/06/2026 13:34:52
[2026-06-05 13:34:52,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:34:52,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:34:52,574.574 INFO    ] No existing commands found in stream
[2026-06-05 13:34:57,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:34:57,599.599 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 13:35:00,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:35:00,809.809 INFO    ] Checking for system updates...
[2026-06-05 13:35:00,847.847 INFO    ] 200
[2026-06-05 13:35:00,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:00,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:35:00,907.907 INFO    ] No update needed
[2026-06-05 13:35:00,910.910 INFO    ] Checking for camera pi updates...
[2026-06-05 13:35:00,945.945 INFO    ] 200
[2026-06-05 13:35:00,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:00,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:35:01,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:35:01,040.040 INFO    ] No camera update needed
[2026-06-05 13:35:01,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:35:01,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:35:01,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:35:01,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:35:03,108.108 INFO    ] ================================================
[2026-06-05 13:35:03,131.131 INFO    ] Launching Daemon at Fri Jun  5 13:35:03 IST 2026
[2026-06-05 13:35:03,150.150 INFO    ] ================================================
[2026-06-05 13:35:03,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:35:03
[2026-06-05 13:35:04,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:35:04,820.820 INFO    ] Initializing speech engine...
[2026-06-05 13:35:04,829.829 INFO    ] 2026-06-05 13:35:04
[2026-06-05 13:35:05,153.153 INFO    ] 2026-06-05 13:35:05
[2026-06-05 13:35:05,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:35:05,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:35:05,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:35:05,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:35:05,603.603 INFO    ] time= 05/06/2026 13:35:05
[2026-06-05 13:35:05,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:35:05,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:35:05,801.801 INFO    ] No existing commands found in stream
[2026-06-05 13:35:10,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:35:10,840.840 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 13:35:14,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:35:14,103.103 INFO    ] Checking for system updates...
[2026-06-05 13:35:14,141.141 INFO    ] 200
[2026-06-05 13:35:14,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:14,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:35:14,202.202 INFO    ] No update needed
[2026-06-05 13:35:14,204.204 INFO    ] Checking for camera pi updates...
[2026-06-05 13:35:14,240.240 INFO    ] 200
[2026-06-05 13:35:14,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:14,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:35:14,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:35:14,334.334 INFO    ] No camera update needed
[2026-06-05 13:35:14,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:35:14,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:35:14,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:35:14,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:35:16,399.399 INFO    ] ================================================
[2026-06-05 13:35:16,413.413 INFO    ] Launching Daemon at Fri Jun  5 13:35:16 IST 2026
[2026-06-05 13:35:16,424.424 INFO    ] ================================================
[2026-06-05 13:35:17,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:35:17
[2026-06-05 13:35:17,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:35:18,109.109 INFO    ] Initializing speech engine...
[2026-06-05 13:35:18,119.119 INFO    ] 2026-06-05 13:35:18
[2026-06-05 13:35:18,390.390 INFO    ] 2026-06-05 13:35:18
[2026-06-05 13:35:18,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:35:18,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:35:18,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:35:18,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:35:18,912.912 INFO    ] time= 05/06/2026 13:35:18
[2026-06-05 13:35:18,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:35:18,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:35:19,079.079 INFO    ] No existing commands found in stream
[2026-06-05 13:35:24,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:35:24,110.110 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 13:35:28,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:35:28,460.460 INFO    ] Checking for system updates...
[2026-06-05 13:35:28,497.497 INFO    ] 200
[2026-06-05 13:35:28,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:28,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:35:28,555.555 INFO    ] No update needed
[2026-06-05 13:35:28,557.557 INFO    ] Checking for camera pi updates...
[2026-06-05 13:35:28,597.597 INFO    ] 200
[2026-06-05 13:35:28,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:28,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:35:28,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:35:28,714.714 INFO    ] No camera update needed
[2026-06-05 13:35:28,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:35:28,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:35:28,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:35:28,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:35:30,775.775 INFO    ] ================================================
[2026-06-05 13:35:30,791.791 INFO    ] Launching Daemon at Fri Jun  5 13:35:30 IST 2026
[2026-06-05 13:35:30,802.802 INFO    ] ================================================
[2026-06-05 13:35:31,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:35:31
[2026-06-05 13:35:32,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:35:32,328.328 INFO    ] Initializing speech engine...
[2026-06-05 13:35:32,339.339 INFO    ] 2026-06-05 13:35:32
[2026-06-05 13:35:32,613.613 INFO    ] 2026-06-05 13:35:32
[2026-06-05 13:35:32,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:35:32,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:35:32,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:35:32,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:35:33,004.004 INFO    ] time= 05/06/2026 13:35:32
[2026-06-05 13:35:33,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:35:33,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:35:33,178.178 INFO    ] No existing commands found in stream
[2026-06-05 13:35:38,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:35:38,211.211 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 13:35:41,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:35:41,651.651 INFO    ] Checking for system updates...
[2026-06-05 13:35:41,693.693 INFO    ] 200
[2026-06-05 13:35:41,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:41,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:35:41,752.752 INFO    ] No update needed
[2026-06-05 13:35:41,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 13:35:41,787.787 INFO    ] 200
[2026-06-05 13:35:41,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:41,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:35:41,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:35:41,868.868 INFO    ] No camera update needed
[2026-06-05 13:35:41,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:35:41,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:35:41,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:35:41,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:35:43,926.926 INFO    ] ================================================
[2026-06-05 13:35:43,942.942 INFO    ] Launching Daemon at Fri Jun  5 13:35:43 IST 2026
[2026-06-05 13:35:43,952.952 INFO    ] ================================================
[2026-06-05 13:35:44,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:35:44
[2026-06-05 13:35:45,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:35:45,445.445 INFO    ] Initializing speech engine...
[2026-06-05 13:35:45,454.454 INFO    ] 2026-06-05 13:35:45
[2026-06-05 13:35:45,765.765 INFO    ] 2026-06-05 13:35:45
[2026-06-05 13:35:45,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:35:46,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:35:46,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:35:46,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:35:46,280.280 INFO    ] time= 05/06/2026 13:35:46
[2026-06-05 13:35:46,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:35:46,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:35:46,448.448 INFO    ] No existing commands found in stream
[2026-06-05 13:35:51,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:35:51,477.477 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 13:35:55,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:35:55,711.711 INFO    ] Checking for system updates...
[2026-06-05 13:35:55,747.747 INFO    ] 200
[2026-06-05 13:35:55,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:55,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:35:55,805.805 INFO    ] No update needed
[2026-06-05 13:35:55,807.807 INFO    ] Checking for camera pi updates...
[2026-06-05 13:35:55,841.841 INFO    ] 200
[2026-06-05 13:35:55,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:35:55,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:35:55,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:35:55,931.931 INFO    ] No camera update needed
[2026-06-05 13:35:55,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:35:55,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:35:55,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:35:55,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:35:57,987.987 INFO    ] ================================================
[2026-06-05 13:35:58,002.002 INFO    ] Launching Daemon at Fri Jun  5 13:35:57 IST 2026
[2026-06-05 13:35:58,013.013 INFO    ] ================================================
[2026-06-05 13:35:58,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:35:58
[2026-06-05 13:35:59,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:35:59,588.588 INFO    ] Initializing speech engine...
[2026-06-05 13:35:59,595.595 INFO    ] 2026-06-05 13:35:59
[2026-06-05 13:35:59,923.923 INFO    ] 2026-06-05 13:35:59
[2026-06-05 13:35:59,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:36:00,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:36:00,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:36:00,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:36:00,438.438 INFO    ] time= 05/06/2026 13:36:00
[2026-06-05 13:36:00,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:36:00,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:36:00,618.618 INFO    ] No existing commands found in stream
[2026-06-05 13:36:05,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:36:05,637.637 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 13:36:07,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:36:07,638.638 INFO    ] Checking for system updates...
[2026-06-05 13:36:07,684.684 INFO    ] 200
[2026-06-05 13:36:07,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:07,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:36:07,751.751 INFO    ] No update needed
[2026-06-05 13:36:07,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 13:36:07,799.799 INFO    ] 200
[2026-06-05 13:36:07,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:07,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:36:07,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:36:07,893.893 INFO    ] No camera update needed
[2026-06-05 13:36:07,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:36:07,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:36:07,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:36:07,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:36:09,959.959 INFO    ] ================================================
[2026-06-05 13:36:09,976.976 INFO    ] Launching Daemon at Fri Jun  5 13:36:09 IST 2026
[2026-06-05 13:36:09,988.988 INFO    ] ================================================
[2026-06-05 13:36:10,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:36:10
[2026-06-05 13:36:11,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:36:11,466.466 INFO    ] Initializing speech engine...
[2026-06-05 13:36:11,475.475 INFO    ] 2026-06-05 13:36:11
[2026-06-05 13:36:11,770.770 INFO    ] 2026-06-05 13:36:11
[2026-06-05 13:36:11,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:36:11,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:36:11,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:36:12,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:36:12,120.120 INFO    ] time= 05/06/2026 13:36:12
[2026-06-05 13:36:12,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:36:12,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:36:12,237.237 INFO    ] No existing commands found in stream
[2026-06-05 13:36:17,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:36:17,275.275 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 13:36:19,294.294 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:36:19,297.297 INFO    ] Checking for system updates...
[2026-06-05 13:36:19,333.333 INFO    ] 200
[2026-06-05 13:36:19,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:19,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:36:19,397.397 INFO    ] No update needed
[2026-06-05 13:36:19,399.399 INFO    ] Checking for camera pi updates...
[2026-06-05 13:36:19,433.433 INFO    ] 200
[2026-06-05 13:36:19,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:19,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:36:19,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:36:19,627.627 INFO    ] No camera update needed
[2026-06-05 13:36:19,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:36:19,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:36:19,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:36:19,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:36:21,682.682 INFO    ] ================================================
[2026-06-05 13:36:21,698.698 INFO    ] Launching Daemon at Fri Jun  5 13:36:21 IST 2026
[2026-06-05 13:36:21,709.709 INFO    ] ================================================
[2026-06-05 13:36:22,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:36:22
[2026-06-05 13:36:22,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:36:23,153.153 INFO    ] Initializing speech engine...
[2026-06-05 13:36:23,160.160 INFO    ] 2026-06-05 13:36:23
[2026-06-05 13:36:23,459.459 INFO    ] 2026-06-05 13:36:23
[2026-06-05 13:36:23,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:36:23,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:36:23,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:36:23,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:36:23,823.823 INFO    ] time= 05/06/2026 13:36:23
[2026-06-05 13:36:23,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:36:23,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:36:23,973.973 INFO    ] No existing commands found in stream
[2026-06-05 13:36:28,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:36:28,989.989 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 13:36:31,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:36:31,813.813 INFO    ] Checking for system updates...
[2026-06-05 13:36:31,854.854 INFO    ] 200
[2026-06-05 13:36:31,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:31,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:36:31,920.920 INFO    ] No update needed
[2026-06-05 13:36:31,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 13:36:31,960.960 INFO    ] 200
[2026-06-05 13:36:31,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:32,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:36:32,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:36:32,056.056 INFO    ] No camera update needed
[2026-06-05 13:36:32,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:36:32,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:36:32,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:36:32,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:36:34,119.119 INFO    ] ================================================
[2026-06-05 13:36:34,133.133 INFO    ] Launching Daemon at Fri Jun  5 13:36:34 IST 2026
[2026-06-05 13:36:34,146.146 INFO    ] ================================================
[2026-06-05 13:36:34,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:36:34
[2026-06-05 13:36:35,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:36:35,571.571 INFO    ] Initializing speech engine...
[2026-06-05 13:36:35,594.594 INFO    ] 2026-06-05 13:36:35
[2026-06-05 13:36:35,845.845 INFO    ] 2026-06-05 13:36:35
[2026-06-05 13:36:35,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:36:36,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:36:36,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:36:36,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:36:36,322.322 INFO    ] time= 05/06/2026 13:36:36
[2026-06-05 13:36:36,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:36:36,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:36:36,538.538 INFO    ] No existing commands found in stream
[2026-06-05 13:36:41,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:36:41,561.561 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 13:36:43,421.421 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:36:43,424.424 INFO    ] Checking for system updates...
[2026-06-05 13:36:43,461.461 INFO    ] 200
[2026-06-05 13:36:43,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:43,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:36:43,525.525 INFO    ] No update needed
[2026-06-05 13:36:43,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 13:36:43,562.562 INFO    ] 200
[2026-06-05 13:36:43,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:43,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:36:43,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:36:43,655.655 INFO    ] No camera update needed
[2026-06-05 13:36:43,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:36:43,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:36:43,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:36:43,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:36:45,713.713 INFO    ] ================================================
[2026-06-05 13:36:45,732.732 INFO    ] Launching Daemon at Fri Jun  5 13:36:45 IST 2026
[2026-06-05 13:36:45,746.746 INFO    ] ================================================
[2026-06-05 13:36:46,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:36:46
[2026-06-05 13:36:46,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:36:47,183.183 INFO    ] Initializing speech engine...
[2026-06-05 13:36:47,189.189 INFO    ] 2026-06-05 13:36:47
[2026-06-05 13:36:47,482.482 INFO    ] 2026-06-05 13:36:47
[2026-06-05 13:36:47,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:36:47,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:36:47,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:36:47,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:36:47,874.874 INFO    ] time= 05/06/2026 13:36:47
[2026-06-05 13:36:47,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:36:47,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:36:47,979.979 INFO    ] No existing commands found in stream
[2026-06-05 13:36:52,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:36:52,995.995 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 13:36:54,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:36:54,367.367 INFO    ] Checking for system updates...
[2026-06-05 13:36:54,406.406 INFO    ] 200
[2026-06-05 13:36:54,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:54,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:36:54,463.463 INFO    ] No update needed
[2026-06-05 13:36:54,466.466 INFO    ] Checking for camera pi updates...
[2026-06-05 13:36:54,503.503 INFO    ] 200
[2026-06-05 13:36:54,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:36:54,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:36:54,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:36:54,596.596 INFO    ] No camera update needed
[2026-06-05 13:36:54,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:36:54,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:36:54,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:36:54,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:36:56,654.654 INFO    ] ================================================
[2026-06-05 13:36:56,671.671 INFO    ] Launching Daemon at Fri Jun  5 13:36:56 IST 2026
[2026-06-05 13:36:56,683.683 INFO    ] ================================================
[2026-06-05 13:36:57,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:36:57
[2026-06-05 13:36:58,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:36:58,319.319 INFO    ] Initializing speech engine...
[2026-06-05 13:36:58,327.327 INFO    ] 2026-06-05 13:36:58
[2026-06-05 13:36:58,611.611 INFO    ] 2026-06-05 13:36:58
[2026-06-05 13:36:58,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:36:58,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:36:58,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:36:59,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:36:59,147.147 INFO    ] time= 05/06/2026 13:36:59
[2026-06-05 13:36:59,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:36:59,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:36:59,302.302 INFO    ] No existing commands found in stream
[2026-06-05 13:37:04,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:37:04,330.330 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 13:37:06,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:37:06,122.122 INFO    ] Checking for system updates...
[2026-06-05 13:37:06,163.163 INFO    ] 200
[2026-06-05 13:37:06,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:06,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:37:06,228.228 INFO    ] No update needed
[2026-06-05 13:37:06,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 13:37:06,266.266 INFO    ] 200
[2026-06-05 13:37:06,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:06,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:37:06,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:37:06,349.349 INFO    ] No camera update needed
[2026-06-05 13:37:06,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:37:06,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:37:06,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:37:06,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:37:08,407.407 INFO    ] ================================================
[2026-06-05 13:37:08,422.422 INFO    ] Launching Daemon at Fri Jun  5 13:37:08 IST 2026
[2026-06-05 13:37:08,433.433 INFO    ] ================================================
[2026-06-05 13:37:09,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:37:09
[2026-06-05 13:37:09,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:37:09,904.904 INFO    ] Initializing speech engine...
[2026-06-05 13:37:09,920.920 INFO    ] 2026-06-05 13:37:09
[2026-06-05 13:37:10,204.204 INFO    ] 2026-06-05 13:37:10
[2026-06-05 13:37:10,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:37:11,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:37:11,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:37:11,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:37:11,672.672 INFO    ] time= 05/06/2026 13:37:11
[2026-06-05 13:37:11,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:37:11,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:37:11,754.754 INFO    ] No existing commands found in stream
[2026-06-05 13:37:16,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:37:16,768.768 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 13:37:20,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:37:20,023.023 INFO    ] Checking for system updates...
[2026-06-05 13:37:20,067.067 INFO    ] 200
[2026-06-05 13:37:20,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:20,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:37:20,132.132 INFO    ] No update needed
[2026-06-05 13:37:20,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 13:37:20,168.168 INFO    ] 200
[2026-06-05 13:37:20,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:20,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:37:20,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:37:20,263.263 INFO    ] No camera update needed
[2026-06-05 13:37:20,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:37:20,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:37:20,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:37:20,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:37:22,319.319 INFO    ] ================================================
[2026-06-05 13:37:22,334.334 INFO    ] Launching Daemon at Fri Jun  5 13:37:22 IST 2026
[2026-06-05 13:37:22,345.345 INFO    ] ================================================
[2026-06-05 13:37:22,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:37:22
[2026-06-05 13:37:23,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:37:23,768.768 INFO    ] Initializing speech engine...
[2026-06-05 13:37:23,775.775 INFO    ] 2026-06-05 13:37:23
[2026-06-05 13:37:24,025.025 INFO    ] 2026-06-05 13:37:24
[2026-06-05 13:37:24,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:37:24,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:37:24,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:37:24,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:37:24,511.511 INFO    ] time= 05/06/2026 13:37:24
[2026-06-05 13:37:24,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:37:24,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:37:24,746.746 INFO    ] No existing commands found in stream
[2026-06-05 13:37:29,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:37:29,766.766 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 13:37:31,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:37:31,028.028 INFO    ] Checking for system updates...
[2026-06-05 13:37:31,064.064 INFO    ] 200
[2026-06-05 13:37:31,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:31,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:37:31,132.132 INFO    ] No update needed
[2026-06-05 13:37:31,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 13:37:31,173.173 INFO    ] 200
[2026-06-05 13:37:31,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:31,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:37:31,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:37:31,264.264 INFO    ] No camera update needed
[2026-06-05 13:37:31,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:37:31,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:37:31,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:37:31,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:37:33,322.322 INFO    ] ================================================
[2026-06-05 13:37:33,338.338 INFO    ] Launching Daemon at Fri Jun  5 13:37:33 IST 2026
[2026-06-05 13:37:33,349.349 INFO    ] ================================================
[2026-06-05 13:37:33,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:37:33
[2026-06-05 13:37:34,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:37:34,780.780 INFO    ] Initializing speech engine...
[2026-06-05 13:37:34,789.789 INFO    ] 2026-06-05 13:37:34
[2026-06-05 13:37:35,037.037 INFO    ] 2026-06-05 13:37:35
[2026-06-05 13:37:35,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:37:35,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:37:35,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:37:35,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:37:35,519.519 INFO    ] time= 05/06/2026 13:37:35
[2026-06-05 13:37:35,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:37:35,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:37:35,735.735 INFO    ] No existing commands found in stream
[2026-06-05 13:37:40,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:37:40,762.762 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 13:37:43,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:37:43,615.615 INFO    ] Checking for system updates...
[2026-06-05 13:37:43,652.652 INFO    ] 200
[2026-06-05 13:37:43,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:43,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:37:43,710.710 INFO    ] No update needed
[2026-06-05 13:37:43,713.713 INFO    ] Checking for camera pi updates...
[2026-06-05 13:37:43,747.747 INFO    ] 200
[2026-06-05 13:37:43,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:43,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:37:43,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:37:43,834.834 INFO    ] No camera update needed
[2026-06-05 13:37:43,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:37:43,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:37:43,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:37:43,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:37:45,891.891 INFO    ] ================================================
[2026-06-05 13:37:45,907.907 INFO    ] Launching Daemon at Fri Jun  5 13:37:45 IST 2026
[2026-06-05 13:37:45,917.917 INFO    ] ================================================
[2026-06-05 13:37:46,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:37:46
[2026-06-05 13:37:47,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:37:47,473.473 INFO    ] Initializing speech engine...
[2026-06-05 13:37:47,481.481 INFO    ] 2026-06-05 13:37:47
[2026-06-05 13:37:47,769.769 INFO    ] 2026-06-05 13:37:47
[2026-06-05 13:37:47,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:37:48,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:37:48,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:37:48,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:37:48,298.298 INFO    ] time= 05/06/2026 13:37:48
[2026-06-05 13:37:48,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:37:48,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:37:48,452.452 INFO    ] No existing commands found in stream
[2026-06-05 13:37:53,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:37:53,471.471 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 13:37:56,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:37:56,639.639 INFO    ] Checking for system updates...
[2026-06-05 13:37:56,676.676 INFO    ] 200
[2026-06-05 13:37:56,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:56,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:37:56,735.735 INFO    ] No update needed
[2026-06-05 13:37:56,737.737 INFO    ] Checking for camera pi updates...
[2026-06-05 13:37:56,776.776 INFO    ] 200
[2026-06-05 13:37:56,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:37:56,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:37:56,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:37:56,873.873 INFO    ] No camera update needed
[2026-06-05 13:37:56,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:37:56,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:37:56,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:37:56,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:37:58,930.930 INFO    ] ================================================
[2026-06-05 13:37:58,945.945 INFO    ] Launching Daemon at Fri Jun  5 13:37:58 IST 2026
[2026-06-05 13:37:58,956.956 INFO    ] ================================================
[2026-06-05 13:37:59,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:37:59
[2026-06-05 13:38:00,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:38:00,517.517 INFO    ] Initializing speech engine...
[2026-06-05 13:38:00,523.523 INFO    ] 2026-06-05 13:38:00
[2026-06-05 13:38:00,792.792 INFO    ] 2026-06-05 13:38:00
[2026-06-05 13:38:00,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:38:01,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:38:01,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:38:01,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:38:01,265.265 INFO    ] time= 05/06/2026 13:38:01
[2026-06-05 13:38:01,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:38:01,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:38:01,347.347 INFO    ] No existing commands found in stream
[2026-06-05 13:38:06,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:38:06,362.362 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 13:38:11,222.222 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:38:11,224.224 INFO    ] Checking for system updates...
[2026-06-05 13:38:11,261.261 INFO    ] 200
[2026-06-05 13:38:11,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:38:11,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:38:11,324.324 INFO    ] No update needed
[2026-06-05 13:38:11,327.327 INFO    ] Checking for camera pi updates...
[2026-06-05 13:38:11,361.361 INFO    ] 200
[2026-06-05 13:38:11,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:38:11,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:38:11,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:38:11,449.449 INFO    ] No camera update needed
[2026-06-05 13:38:11,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:38:11,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:38:11,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:38:11,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:38:13,503.503 INFO    ] ================================================
[2026-06-05 13:38:13,518.518 INFO    ] Launching Daemon at Fri Jun  5 13:38:13 IST 2026
[2026-06-05 13:38:13,529.529 INFO    ] ================================================
[2026-06-05 13:38:14,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:38:14
[2026-06-05 13:38:14,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:38:14,962.962 INFO    ] Initializing speech engine...
[2026-06-05 13:38:14,981.981 INFO    ] 2026-06-05 13:38:14
[2026-06-05 13:38:15,231.231 INFO    ] 2026-06-05 13:38:15
[2026-06-05 13:38:15,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:38:15,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:38:15,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:38:15,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:38:15,708.708 INFO    ] time= 05/06/2026 13:38:15
[2026-06-05 13:38:15,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:38:15,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:38:15,924.924 INFO    ] No existing commands found in stream
[2026-06-05 13:38:20,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:38:20,955.955 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 13:38:24,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:38:24,528.528 INFO    ] Checking for system updates...
[2026-06-05 13:38:24,565.565 INFO    ] 200
[2026-06-05 13:38:24,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:38:24,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:38:24,624.624 INFO    ] No update needed
[2026-06-05 13:38:24,627.627 INFO    ] Checking for camera pi updates...
[2026-06-05 13:38:24,666.666 INFO    ] 200
[2026-06-05 13:38:24,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:38:24,710.710 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:38:24,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:38:24,857.857 INFO    ] No camera update needed
[2026-06-05 13:38:24,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:38:24,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:38:24,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:38:24,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:38:26,912.912 INFO    ] ================================================
[2026-06-05 13:38:26,928.928 INFO    ] Launching Daemon at Fri Jun  5 13:38:26 IST 2026
[2026-06-05 13:38:26,939.939 INFO    ] ================================================
[2026-06-05 13:38:27,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:38:27
[2026-06-05 13:38:28,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:38:28,359.359 INFO    ] Initializing speech engine...
[2026-06-05 13:38:28,371.371 INFO    ] 2026-06-05 13:38:28
[2026-06-05 13:38:28,635.635 INFO    ] 2026-06-05 13:38:28
[2026-06-05 13:38:28,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:38:28,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:38:28,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:38:29,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:38:29,019.019 INFO    ] time= 05/06/2026 13:38:29
[2026-06-05 13:38:29,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:38:29,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:38:29,199.199 INFO    ] No existing commands found in stream
[2026-06-05 13:38:34,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:38:34,232.232 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 13:38:37,578.578 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:38:37,581.581 INFO    ] Checking for system updates...
[2026-06-05 13:38:37,617.617 INFO    ] 200
[2026-06-05 13:38:37,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:38:37,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:38:37,680.680 INFO    ] No update needed
[2026-06-05 13:38:37,682.682 INFO    ] Checking for camera pi updates...
[2026-06-05 13:38:37,717.717 INFO    ] 200
[2026-06-05 13:38:37,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:38:37,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:38:37,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:38:37,815.815 INFO    ] No camera update needed
[2026-06-05 13:38:37,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:38:37,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:38:37,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:38:37,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:38:39,871.871 INFO    ] ================================================
[2026-06-05 13:38:39,887.887 INFO    ] Launching Daemon at Fri Jun  5 13:38:39 IST 2026
[2026-06-05 13:38:39,898.898 INFO    ] ================================================
[2026-06-05 13:38:40,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:38:40
[2026-06-05 13:38:41,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:38:41,512.512 INFO    ] Initializing speech engine...
[2026-06-05 13:38:41,520.520 INFO    ] 2026-06-05 13:38:41
[2026-06-05 13:38:41,786.786 INFO    ] 2026-06-05 13:38:41
[2026-06-05 13:38:41,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:38:42,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:38:42,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:38:42,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:38:42,193.193 INFO    ] time= 05/06/2026 13:38:42
[2026-06-05 13:38:42,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:38:42,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:38:42,279.279 INFO    ] No existing commands found in stream
[2026-06-05 13:38:47,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:38:47,294.294 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 13:38:50,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:38:50,832.832 INFO    ] Checking for system updates...
[2026-06-05 13:38:50,868.868 INFO    ] 200
[2026-06-05 13:38:50,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:38:50,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:38:50,927.927 INFO    ] No update needed
[2026-06-05 13:38:50,929.929 INFO    ] Checking for camera pi updates...
[2026-06-05 13:38:50,970.970 INFO    ] 200
[2026-06-05 13:38:50,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:38:51,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:38:51,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:38:51,060.060 INFO    ] No camera update needed
[2026-06-05 13:38:51,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:38:51,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:38:51,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:38:51,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:38:53,118.118 INFO    ] ================================================
[2026-06-05 13:38:53,133.133 INFO    ] Launching Daemon at Fri Jun  5 13:38:53 IST 2026
[2026-06-05 13:38:53,145.145 INFO    ] ================================================
[2026-06-05 13:38:53,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:38:53
[2026-06-05 13:38:54,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:38:54,726.726 INFO    ] Initializing speech engine...
[2026-06-05 13:38:54,739.739 INFO    ] 2026-06-05 13:38:54
[2026-06-05 13:38:54,989.989 INFO    ] 2026-06-05 13:38:54
[2026-06-05 13:38:55,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:38:55,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:38:55,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:38:55,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:38:55,364.364 INFO    ] time= 05/06/2026 13:38:55
[2026-06-05 13:38:55,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:38:55,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:38:55,550.550 INFO    ] No existing commands found in stream
[2026-06-05 13:39:00,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:39:00,578.578 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 13:39:04,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:39:04,557.557 INFO    ] Checking for system updates...
[2026-06-05 13:39:04,593.593 INFO    ] 200
[2026-06-05 13:39:04,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:04,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:39:04,655.655 INFO    ] No update needed
[2026-06-05 13:39:04,658.658 INFO    ] Checking for camera pi updates...
[2026-06-05 13:39:04,691.691 INFO    ] 200
[2026-06-05 13:39:04,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:04,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:39:04,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:39:04,782.782 INFO    ] No camera update needed
[2026-06-05 13:39:04,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:39:04,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:39:04,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:39:04,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:39:06,839.839 INFO    ] ================================================
[2026-06-05 13:39:06,854.854 INFO    ] Launching Daemon at Fri Jun  5 13:39:06 IST 2026
[2026-06-05 13:39:06,865.865 INFO    ] ================================================
[2026-06-05 13:39:07,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:39:07
[2026-06-05 13:39:08,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:39:08,298.298 INFO    ] Initializing speech engine...
[2026-06-05 13:39:08,317.317 INFO    ] 2026-06-05 13:39:08
[2026-06-05 13:39:08,586.586 INFO    ] 2026-06-05 13:39:08
[2026-06-05 13:39:08,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:39:09,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:39:09,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:39:11,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:39:11,028.028 INFO    ] time= 05/06/2026 13:39:11
[2026-06-05 13:39:11,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:39:11,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:39:11,157.157 INFO    ] No existing commands found in stream
[2026-06-05 13:39:16,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:39:16,171.171 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 13:39:17,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:39:17,612.612 INFO    ] Checking for system updates...
[2026-06-05 13:39:17,652.652 INFO    ] 200
[2026-06-05 13:39:17,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:17,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:39:17,716.716 INFO    ] No update needed
[2026-06-05 13:39:17,719.719 INFO    ] Checking for camera pi updates...
[2026-06-05 13:39:17,756.756 INFO    ] 200
[2026-06-05 13:39:17,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:17,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:39:17,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:39:17,851.851 INFO    ] No camera update needed
[2026-06-05 13:39:17,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:39:17,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:39:17,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:39:17,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:39:19,906.906 INFO    ] ================================================
[2026-06-05 13:39:19,921.921 INFO    ] Launching Daemon at Fri Jun  5 13:39:19 IST 2026
[2026-06-05 13:39:19,932.932 INFO    ] ================================================
[2026-06-05 13:39:20,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:39:20
[2026-06-05 13:39:21,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:39:21,337.337 INFO    ] Initializing speech engine...
[2026-06-05 13:39:21,352.352 INFO    ] 2026-06-05 13:39:21
[2026-06-05 13:39:21,619.619 INFO    ] 2026-06-05 13:39:21
[2026-06-05 13:39:21,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:39:21,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:39:21,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:39:22,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:39:22,097.097 INFO    ] time= 05/06/2026 13:39:22
[2026-06-05 13:39:22,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:39:22,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:39:22,250.250 INFO    ] No existing commands found in stream
[2026-06-05 13:39:27,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:39:27,264.264 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 13:39:30,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:39:30,014.014 INFO    ] Checking for system updates...
[2026-06-05 13:39:30,050.050 INFO    ] 200
[2026-06-05 13:39:30,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:30,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:39:30,108.108 INFO    ] No update needed
[2026-06-05 13:39:30,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 13:39:30,145.145 INFO    ] 200
[2026-06-05 13:39:30,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:30,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:39:30,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:39:30,240.240 INFO    ] No camera update needed
[2026-06-05 13:39:30,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:39:30,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:39:30,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:39:30,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:39:32,297.297 INFO    ] ================================================
[2026-06-05 13:39:32,315.315 INFO    ] Launching Daemon at Fri Jun  5 13:39:32 IST 2026
[2026-06-05 13:39:32,327.327 INFO    ] ================================================
[2026-06-05 13:39:32,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:39:32
[2026-06-05 13:39:33,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:39:33,775.775 INFO    ] Initializing speech engine...
[2026-06-05 13:39:33,783.783 INFO    ] 2026-06-05 13:39:33
[2026-06-05 13:39:34,058.058 INFO    ] 2026-06-05 13:39:34
[2026-06-05 13:39:34,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:39:34,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:39:34,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:39:34,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:39:34,540.540 INFO    ] time= 05/06/2026 13:39:34
[2026-06-05 13:39:34,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:39:34,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:39:34,777.777 INFO    ] No existing commands found in stream
[2026-06-05 13:39:39,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:39:39,800.800 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 13:39:41,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:39:41,512.512 INFO    ] Checking for system updates...
[2026-06-05 13:39:41,549.549 INFO    ] 200
[2026-06-05 13:39:41,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:41,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:39:41,611.611 INFO    ] No update needed
[2026-06-05 13:39:41,613.613 INFO    ] Checking for camera pi updates...
[2026-06-05 13:39:41,650.650 INFO    ] 200
[2026-06-05 13:39:41,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:41,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:39:41,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:39:41,736.736 INFO    ] No camera update needed
[2026-06-05 13:39:41,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:39:41,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:39:41,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:39:41,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:39:43,792.792 INFO    ] ================================================
[2026-06-05 13:39:43,807.807 INFO    ] Launching Daemon at Fri Jun  5 13:39:43 IST 2026
[2026-06-05 13:39:43,818.818 INFO    ] ================================================
[2026-06-05 13:39:44,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:39:44
[2026-06-05 13:39:45,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:39:45,255.255 INFO    ] Initializing speech engine...
[2026-06-05 13:39:45,262.262 INFO    ] 2026-06-05 13:39:45
[2026-06-05 13:39:45,561.561 INFO    ] 2026-06-05 13:39:45
[2026-06-05 13:39:45,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:39:45,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:39:45,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:39:45,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:39:45,971.971 INFO    ] time= 05/06/2026 13:39:45
[2026-06-05 13:39:45,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:39:45,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:39:46,061.061 INFO    ] No existing commands found in stream
[2026-06-05 13:39:51,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:39:51,099.099 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 13:39:54,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:39:54,470.470 INFO    ] Checking for system updates...
[2026-06-05 13:39:54,507.507 INFO    ] 200
[2026-06-05 13:39:54,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:54,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:39:54,570.570 INFO    ] No update needed
[2026-06-05 13:39:54,573.573 INFO    ] Checking for camera pi updates...
[2026-06-05 13:39:54,609.609 INFO    ] 200
[2026-06-05 13:39:54,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:39:54,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:39:54,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:39:54,705.705 INFO    ] No camera update needed
[2026-06-05 13:39:54,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:39:54,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:39:54,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:39:54,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:39:56,759.759 INFO    ] ================================================
[2026-06-05 13:39:56,774.774 INFO    ] Launching Daemon at Fri Jun  5 13:39:56 IST 2026
[2026-06-05 13:39:56,785.785 INFO    ] ================================================
[2026-06-05 13:39:57,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:39:57
[2026-06-05 13:39:57,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:39:58,228.228 INFO    ] Initializing speech engine...
[2026-06-05 13:39:58,241.241 INFO    ] 2026-06-05 13:39:58
[2026-06-05 13:39:58,508.508 INFO    ] 2026-06-05 13:39:58
[2026-06-05 13:39:58,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:39:58,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:39:58,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:39:58,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:39:58,887.887 INFO    ] time= 05/06/2026 13:39:58
[2026-06-05 13:39:58,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:39:58,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:39:59,066.066 INFO    ] No existing commands found in stream
[2026-06-05 13:40:04,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:40:04,097.097 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 13:40:08,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:40:08,548.548 INFO    ] Checking for system updates...
[2026-06-05 13:40:08,588.588 INFO    ] 200
[2026-06-05 13:40:08,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:08,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:40:08,645.645 INFO    ] No update needed
[2026-06-05 13:40:08,647.647 INFO    ] Checking for camera pi updates...
[2026-06-05 13:40:08,682.682 INFO    ] 200
[2026-06-05 13:40:08,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:08,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:40:08,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:40:08,772.772 INFO    ] No camera update needed
[2026-06-05 13:40:08,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:40:08,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:40:08,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:40:08,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:40:10,827.827 INFO    ] ================================================
[2026-06-05 13:40:10,842.842 INFO    ] Launching Daemon at Fri Jun  5 13:40:10 IST 2026
[2026-06-05 13:40:10,853.853 INFO    ] ================================================
[2026-06-05 13:40:11,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:40:11
[2026-06-05 13:40:12,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:40:12,396.396 INFO    ] Initializing speech engine...
[2026-06-05 13:40:12,405.405 INFO    ] 2026-06-05 13:40:12
[2026-06-05 13:40:12,654.654 INFO    ] 2026-06-05 13:40:12
[2026-06-05 13:40:12,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:40:12,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:40:12,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:40:13,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:40:13,032.032 INFO    ] time= 05/06/2026 13:40:13
[2026-06-05 13:40:13,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:40:13,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:40:13,191.191 INFO    ] No existing commands found in stream
[2026-06-05 13:40:18,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:40:18,219.219 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 13:40:22,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:40:22,526.526 INFO    ] Checking for system updates...
[2026-06-05 13:40:22,562.562 INFO    ] 200
[2026-06-05 13:40:22,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:22,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:40:22,625.625 INFO    ] No update needed
[2026-06-05 13:40:22,628.628 INFO    ] Checking for camera pi updates...
[2026-06-05 13:40:22,661.661 INFO    ] 200
[2026-06-05 13:40:22,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:22,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:40:22,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:40:22,751.751 INFO    ] No camera update needed
[2026-06-05 13:40:22,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:40:22,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:40:22,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:40:22,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:40:24,807.807 INFO    ] ================================================
[2026-06-05 13:40:24,822.822 INFO    ] Launching Daemon at Fri Jun  5 13:40:24 IST 2026
[2026-06-05 13:40:24,832.832 INFO    ] ================================================
[2026-06-05 13:40:25,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:40:25
[2026-06-05 13:40:26,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:40:26,426.426 INFO    ] Initializing speech engine...
[2026-06-05 13:40:26,434.434 INFO    ] 2026-06-05 13:40:26
[2026-06-05 13:40:26,717.717 INFO    ] 2026-06-05 13:40:26
[2026-06-05 13:40:26,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:40:26,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:40:26,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:40:27,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:40:27,138.138 INFO    ] time= 05/06/2026 13:40:27
[2026-06-05 13:40:27,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:40:27,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:40:27,367.367 INFO    ] No existing commands found in stream
[2026-06-05 13:40:32,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:40:32,391.391 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 13:40:33,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:40:33,072.072 INFO    ] Checking for system updates...
[2026-06-05 13:40:33,111.111 INFO    ] 200
[2026-06-05 13:40:33,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:33,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:40:33,171.171 INFO    ] No update needed
[2026-06-05 13:40:33,174.174 INFO    ] Checking for camera pi updates...
[2026-06-05 13:40:33,208.208 INFO    ] 200
[2026-06-05 13:40:33,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:33,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:40:33,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:40:33,304.304 INFO    ] No camera update needed
[2026-06-05 13:40:33,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:40:33,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:40:33,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:40:33,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:40:35,360.360 INFO    ] ================================================
[2026-06-05 13:40:35,375.375 INFO    ] Launching Daemon at Fri Jun  5 13:40:35 IST 2026
[2026-06-05 13:40:35,385.385 INFO    ] ================================================
[2026-06-05 13:40:35,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:40:35
[2026-06-05 13:40:36,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:40:36,828.828 INFO    ] Initializing speech engine...
[2026-06-05 13:40:36,837.837 INFO    ] 2026-06-05 13:40:36
[2026-06-05 13:40:37,127.127 INFO    ] 2026-06-05 13:40:37
[2026-06-05 13:40:37,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:40:37,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:40:37,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:40:38,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:40:38,587.587 INFO    ] time= 05/06/2026 13:40:38
[2026-06-05 13:40:38,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:40:38,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:40:38,663.663 INFO    ] No existing commands found in stream
[2026-06-05 13:40:43,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:40:43,678.678 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 13:40:45,973.973 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:40:45,975.975 INFO    ] Checking for system updates...
[2026-06-05 13:40:46,012.012 INFO    ] 200
[2026-06-05 13:40:46,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:46,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:40:46,078.078 INFO    ] No update needed
[2026-06-05 13:40:46,081.081 INFO    ] Checking for camera pi updates...
[2026-06-05 13:40:46,115.115 INFO    ] 200
[2026-06-05 13:40:46,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:46,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:40:46,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:40:46,200.200 INFO    ] No camera update needed
[2026-06-05 13:40:46,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:40:46,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:40:46,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:40:46,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:40:48,256.256 INFO    ] ================================================
[2026-06-05 13:40:48,272.272 INFO    ] Launching Daemon at Fri Jun  5 13:40:48 IST 2026
[2026-06-05 13:40:48,283.283 INFO    ] ================================================
[2026-06-05 13:40:48,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:40:48
[2026-06-05 13:40:49,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:40:49,907.907 INFO    ] Initializing speech engine...
[2026-06-05 13:40:49,921.921 INFO    ] 2026-06-05 13:40:49
[2026-06-05 13:40:50,211.211 INFO    ] 2026-06-05 13:40:50
[2026-06-05 13:40:50,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:40:50,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:40:50,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:40:50,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:40:50,756.756 INFO    ] time= 05/06/2026 13:40:50
[2026-06-05 13:40:50,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:40:50,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:40:50,916.916 INFO    ] No existing commands found in stream
[2026-06-05 13:40:55,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:40:55,940.940 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 13:40:59,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:40:59,474.474 INFO    ] Checking for system updates...
[2026-06-05 13:40:59,517.517 INFO    ] 200
[2026-06-05 13:40:59,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:59,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:40:59,577.577 INFO    ] No update needed
[2026-06-05 13:40:59,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 13:40:59,619.619 INFO    ] 200
[2026-06-05 13:40:59,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:40:59,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:40:59,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:40:59,709.709 INFO    ] No camera update needed
[2026-06-05 13:40:59,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:40:59,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:40:59,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:40:59,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:41:01,769.769 INFO    ] ================================================
[2026-06-05 13:41:01,785.785 INFO    ] Launching Daemon at Fri Jun  5 13:41:01 IST 2026
[2026-06-05 13:41:01,796.796 INFO    ] ================================================
[2026-06-05 13:41:02,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:41:02
[2026-06-05 13:41:03,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:41:03,473.473 INFO    ] Initializing speech engine...
[2026-06-05 13:41:03,499.499 INFO    ] 2026-06-05 13:41:03
[2026-06-05 13:41:03,760.760 INFO    ] 2026-06-05 13:41:03
[2026-06-05 13:41:03,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:41:03,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:41:04,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:41:04,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:41:04,151.151 INFO    ] time= 05/06/2026 13:41:04
[2026-06-05 13:41:04,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:41:04,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:41:04,338.338 INFO    ] No existing commands found in stream
[2026-06-05 13:41:09,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:41:09,371.371 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 13:41:13,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:41:13,074.074 INFO    ] Checking for system updates...
[2026-06-05 13:41:13,110.110 INFO    ] 200
[2026-06-05 13:41:13,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:41:13,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:41:13,172.172 INFO    ] No update needed
[2026-06-05 13:41:13,175.175 INFO    ] Checking for camera pi updates...
[2026-06-05 13:41:13,209.209 INFO    ] 200
[2026-06-05 13:41:13,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:41:13,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:41:13,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:41:13,299.299 INFO    ] No camera update needed
[2026-06-05 13:41:13,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:41:13,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:41:13,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:41:13,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:41:15,355.355 INFO    ] ================================================
[2026-06-05 13:41:15,371.371 INFO    ] Launching Daemon at Fri Jun  5 13:41:15 IST 2026
[2026-06-05 13:41:15,381.381 INFO    ] ================================================
[2026-06-05 13:41:15,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:41:15
[2026-06-05 13:41:16,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:41:16,807.807 INFO    ] Initializing speech engine...
[2026-06-05 13:41:16,816.816 INFO    ] 2026-06-05 13:41:16
[2026-06-05 13:41:17,094.094 INFO    ] 2026-06-05 13:41:17
[2026-06-05 13:41:17,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:41:17,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:41:17,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:41:17,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:41:17,598.598 INFO    ] time= 05/06/2026 13:41:17
[2026-06-05 13:41:17,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:41:17,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:41:17,813.813 INFO    ] No existing commands found in stream
[2026-06-05 13:41:22,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:41:22,833.833 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 13:41:25,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:41:25,860.860 INFO    ] Checking for system updates...
[2026-06-05 13:41:25,899.899 INFO    ] 200
[2026-06-05 13:41:25,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:41:25,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:41:25,956.956 INFO    ] No update needed
[2026-06-05 13:41:25,959.959 INFO    ] Checking for camera pi updates...
[2026-06-05 13:41:25,994.994 INFO    ] 200
[2026-06-05 13:41:25,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:41:26,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:41:26,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:41:26,085.085 INFO    ] No camera update needed
[2026-06-05 13:41:26,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:41:26,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:41:26,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:41:26,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:41:28,140.140 INFO    ] ================================================
[2026-06-05 13:41:28,156.156 INFO    ] Launching Daemon at Fri Jun  5 13:41:28 IST 2026
[2026-06-05 13:41:28,167.167 INFO    ] ================================================
[2026-06-05 13:41:28,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:41:28
[2026-06-05 13:41:29,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:41:29,626.626 INFO    ] Initializing speech engine...
[2026-06-05 13:41:29,646.646 INFO    ] 2026-06-05 13:41:29
[2026-06-05 13:41:29,901.901 INFO    ] 2026-06-05 13:41:29
[2026-06-05 13:41:29,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:41:30,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:41:30,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:41:30,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:41:30,369.369 INFO    ] time= 05/06/2026 13:41:30
[2026-06-05 13:41:30,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:41:30,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:41:30,509.509 INFO    ] No existing commands found in stream
[2026-06-05 13:41:35,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:41:35,520.520 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 13:41:37,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:41:37,255.255 INFO    ] Checking for system updates...
[2026-06-05 13:41:37,290.290 INFO    ] 200
[2026-06-05 13:41:37,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:41:37,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:41:37,348.348 INFO    ] No update needed
[2026-06-05 13:41:37,351.351 INFO    ] Checking for camera pi updates...
[2026-06-05 13:41:37,384.384 INFO    ] 200
[2026-06-05 13:41:37,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:41:37,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:41:37,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:41:37,471.471 INFO    ] No camera update needed
[2026-06-05 13:41:37,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:41:37,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:41:37,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:41:37,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:41:39,528.528 INFO    ] ================================================
[2026-06-05 13:41:39,543.543 INFO    ] Launching Daemon at Fri Jun  5 13:41:39 IST 2026
[2026-06-05 13:41:39,553.553 INFO    ] ================================================
[2026-06-05 13:41:40,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:41:40
[2026-06-05 13:41:40,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:41:41,110.110 INFO    ] Initializing speech engine...
[2026-06-05 13:41:41,120.120 INFO    ] 2026-06-05 13:41:41
[2026-06-05 13:41:41,411.411 INFO    ] 2026-06-05 13:41:41
[2026-06-05 13:41:41,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:41:41,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:41:41,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:41:41,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:41:41,941.941 INFO    ] time= 05/06/2026 13:41:41
[2026-06-05 13:41:41,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:41:42,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:41:42,136.136 INFO    ] No existing commands found in stream
[2026-06-05 13:41:47,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:41:47,156.156 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 13:41:49,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:41:49,382.382 INFO    ] Checking for system updates...
[2026-06-05 13:41:49,423.423 INFO    ] 200
[2026-06-05 13:41:49,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:41:49,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:41:49,481.481 INFO    ] No update needed
[2026-06-05 13:41:49,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 13:41:49,517.517 INFO    ] 200
[2026-06-05 13:41:49,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:41:49,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:41:49,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:41:49,604.604 INFO    ] No camera update needed
[2026-06-05 13:41:49,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:41:49,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:41:49,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:41:49,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:41:51,659.659 INFO    ] ================================================
[2026-06-05 13:41:51,675.675 INFO    ] Launching Daemon at Fri Jun  5 13:41:51 IST 2026
[2026-06-05 13:41:51,685.685 INFO    ] ================================================
[2026-06-05 13:41:52,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:41:52
[2026-06-05 13:41:52,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:41:53,189.189 INFO    ] Initializing speech engine...
[2026-06-05 13:41:53,194.194 INFO    ] 2026-06-05 13:41:53
[2026-06-05 13:41:53,444.444 INFO    ] 2026-06-05 13:41:53
[2026-06-05 13:41:53,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:41:53,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:41:53,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:41:53,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:41:53,824.824 INFO    ] time= 05/06/2026 13:41:53
[2026-06-05 13:41:53,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:41:53,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:41:53,948.948 INFO    ] No existing commands found in stream
[2026-06-05 13:41:58,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:41:58,964.964 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 13:42:03,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:42:03,230.230 INFO    ] Checking for system updates...
[2026-06-05 13:42:03,270.270 INFO    ] 200
[2026-06-05 13:42:03,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:03,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:42:03,335.335 INFO    ] No update needed
[2026-06-05 13:42:03,337.337 INFO    ] Checking for camera pi updates...
[2026-06-05 13:42:03,376.376 INFO    ] 200
[2026-06-05 13:42:03,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:03,418.418 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:42:03,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:42:03,460.460 INFO    ] No camera update needed
[2026-06-05 13:42:03,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:42:03,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:42:03,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:42:03,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:42:05,517.517 INFO    ] ================================================
[2026-06-05 13:42:05,532.532 INFO    ] Launching Daemon at Fri Jun  5 13:42:05 IST 2026
[2026-06-05 13:42:05,543.543 INFO    ] ================================================
[2026-06-05 13:42:06,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:42:06
[2026-06-05 13:42:06,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:42:07,001.001 INFO    ] Initializing speech engine...
[2026-06-05 13:42:07,010.010 INFO    ] 2026-06-05 13:42:07
[2026-06-05 13:42:07,289.289 INFO    ] 2026-06-05 13:42:07
[2026-06-05 13:42:07,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:42:07,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:42:07,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:42:07,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:42:07,778.778 INFO    ] time= 05/06/2026 13:42:07
[2026-06-05 13:42:07,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:42:07,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:42:07,990.990 INFO    ] No existing commands found in stream
[2026-06-05 13:42:13,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:42:13,015.015 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 13:42:16,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:42:16,913.913 INFO    ] Checking for system updates...
[2026-06-05 13:42:16,950.950 INFO    ] 200
[2026-06-05 13:42:16,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:17,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:42:17,010.010 INFO    ] No update needed
[2026-06-05 13:42:17,013.013 INFO    ] Checking for camera pi updates...
[2026-06-05 13:42:17,048.048 INFO    ] 200
[2026-06-05 13:42:17,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:17,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:42:17,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:42:17,211.211 INFO    ] No camera update needed
[2026-06-05 13:42:17,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:42:17,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:42:17,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:42:17,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:42:19,271.271 INFO    ] ================================================
[2026-06-05 13:42:19,286.286 INFO    ] Launching Daemon at Fri Jun  5 13:42:19 IST 2026
[2026-06-05 13:42:19,296.296 INFO    ] ================================================
[2026-06-05 13:42:19,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:42:19
[2026-06-05 13:42:20,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:42:20,751.751 INFO    ] Initializing speech engine...
[2026-06-05 13:42:20,766.766 INFO    ] 2026-06-05 13:42:20
[2026-06-05 13:42:21,053.053 INFO    ] 2026-06-05 13:42:21
[2026-06-05 13:42:21,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:42:21,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:42:21,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:42:21,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:42:21,473.473 INFO    ] time= 05/06/2026 13:42:21
[2026-06-05 13:42:21,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:42:21,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:42:21,561.561 INFO    ] No existing commands found in stream
[2026-06-05 13:42:26,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:42:26,590.590 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 13:42:29,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:42:29,456.456 INFO    ] Checking for system updates...
[2026-06-05 13:42:29,493.493 INFO    ] 200
[2026-06-05 13:42:29,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:29,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:42:29,550.550 INFO    ] No update needed
[2026-06-05 13:42:29,553.553 INFO    ] Checking for camera pi updates...
[2026-06-05 13:42:29,586.586 INFO    ] 200
[2026-06-05 13:42:29,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:29,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:42:29,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:42:29,678.678 INFO    ] No camera update needed
[2026-06-05 13:42:29,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:42:29,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:42:29,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:42:29,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:42:31,735.735 INFO    ] ================================================
[2026-06-05 13:42:31,752.752 INFO    ] Launching Daemon at Fri Jun  5 13:42:31 IST 2026
[2026-06-05 13:42:31,764.764 INFO    ] ================================================
[2026-06-05 13:42:32,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:42:32
[2026-06-05 13:42:32,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:42:33,254.254 INFO    ] Initializing speech engine...
[2026-06-05 13:42:33,264.264 INFO    ] 2026-06-05 13:42:33
[2026-06-05 13:42:33,515.515 INFO    ] 2026-06-05 13:42:33
[2026-06-05 13:42:33,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:42:33,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:42:33,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:42:33,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:42:34,017.017 INFO    ] time= 05/06/2026 13:42:33
[2026-06-05 13:42:34,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:42:34,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:42:34,224.224 INFO    ] No existing commands found in stream
[2026-06-05 13:42:39,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:42:39,240.240 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 13:42:43,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:42:43,265.265 INFO    ] Checking for system updates...
[2026-06-05 13:42:43,304.304 INFO    ] 200
[2026-06-05 13:42:43,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:43,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:42:43,368.368 INFO    ] No update needed
[2026-06-05 13:42:43,370.370 INFO    ] Checking for camera pi updates...
[2026-06-05 13:42:43,407.407 INFO    ] 200
[2026-06-05 13:42:43,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:43,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:42:43,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:42:43,601.601 INFO    ] No camera update needed
[2026-06-05 13:42:43,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:42:43,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:42:43,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:42:43,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:42:45,657.657 INFO    ] ================================================
[2026-06-05 13:42:45,673.673 INFO    ] Launching Daemon at Fri Jun  5 13:42:45 IST 2026
[2026-06-05 13:42:45,685.685 INFO    ] ================================================
[2026-06-05 13:42:46,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:42:46
[2026-06-05 13:42:46,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:42:47,270.270 INFO    ] Initializing speech engine...
[2026-06-05 13:42:47,279.279 INFO    ] 2026-06-05 13:42:47
[2026-06-05 13:42:47,562.562 INFO    ] 2026-06-05 13:42:47
[2026-06-05 13:42:47,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:42:47,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:42:47,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:42:47,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:42:48,038.038 INFO    ] time= 05/06/2026 13:42:47
[2026-06-05 13:42:48,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:42:48,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:42:48,254.254 INFO    ] No existing commands found in stream
[2026-06-05 13:42:53,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:42:53,282.282 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 13:42:54,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:42:54,081.081 INFO    ] Checking for system updates...
[2026-06-05 13:42:54,118.118 INFO    ] 200
[2026-06-05 13:42:54,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:54,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:42:54,183.183 INFO    ] No update needed
[2026-06-05 13:42:54,186.186 INFO    ] Checking for camera pi updates...
[2026-06-05 13:42:54,224.224 INFO    ] 200
[2026-06-05 13:42:54,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:42:54,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:42:54,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:42:54,320.320 INFO    ] No camera update needed
[2026-06-05 13:42:54,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:42:54,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:42:54,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:42:54,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:42:56,379.379 INFO    ] ================================================
[2026-06-05 13:42:56,394.394 INFO    ] Launching Daemon at Fri Jun  5 13:42:56 IST 2026
[2026-06-05 13:42:56,405.405 INFO    ] ================================================
[2026-06-05 13:42:56,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:42:56
[2026-06-05 13:42:57,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:42:57,816.816 INFO    ] Initializing speech engine...
[2026-06-05 13:42:57,831.831 INFO    ] 2026-06-05 13:42:57
[2026-06-05 13:42:58,114.114 INFO    ] 2026-06-05 13:42:58
[2026-06-05 13:42:58,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:42:58,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:42:58,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:42:58,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:42:58,520.520 INFO    ] time= 05/06/2026 13:42:58
[2026-06-05 13:42:58,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:42:58,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:42:58,606.606 INFO    ] No existing commands found in stream
[2026-06-05 13:43:03,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:43:03,639.639 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 13:43:04,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:43:04,011.011 INFO    ] Checking for system updates...
[2026-06-05 13:43:04,047.047 INFO    ] 200
[2026-06-05 13:43:04,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:04,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:43:04,104.104 INFO    ] No update needed
[2026-06-05 13:43:04,106.106 INFO    ] Checking for camera pi updates...
[2026-06-05 13:43:04,140.140 INFO    ] 200
[2026-06-05 13:43:04,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:04,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:43:04,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:43:04,212.212 INFO    ] No camera update needed
[2026-06-05 13:43:04,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:43:04,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:43:04,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:43:04,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:43:06,268.268 INFO    ] ================================================
[2026-06-05 13:43:06,284.284 INFO    ] Launching Daemon at Fri Jun  5 13:43:06 IST 2026
[2026-06-05 13:43:06,295.295 INFO    ] ================================================
[2026-06-05 13:43:06,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:43:06
[2026-06-05 13:43:07,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:43:07,746.746 INFO    ] Initializing speech engine...
[2026-06-05 13:43:07,760.760 INFO    ] 2026-06-05 13:43:07
[2026-06-05 13:43:08,026.026 INFO    ] 2026-06-05 13:43:08
[2026-06-05 13:43:08,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:43:08,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:43:08,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:43:08,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:43:08,471.471 INFO    ] time= 05/06/2026 13:43:08
[2026-06-05 13:43:08,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:43:08,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:43:08,748.748 INFO    ] No existing commands found in stream
[2026-06-05 13:43:13,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:43:13,762.762 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 13:43:14,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:43:14,943.943 INFO    ] Checking for system updates...
[2026-06-05 13:43:14,982.982 INFO    ] 200
[2026-06-05 13:43:14,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:15,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:43:15,045.045 INFO    ] No update needed
[2026-06-05 13:43:15,047.047 INFO    ] Checking for camera pi updates...
[2026-06-05 13:43:15,084.084 INFO    ] 200
[2026-06-05 13:43:15,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:15,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:43:15,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:43:15,179.179 INFO    ] No camera update needed
[2026-06-05 13:43:15,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:43:15,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:43:15,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:43:15,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:43:17,235.235 INFO    ] ================================================
[2026-06-05 13:43:17,251.251 INFO    ] Launching Daemon at Fri Jun  5 13:43:17 IST 2026
[2026-06-05 13:43:17,262.262 INFO    ] ================================================
[2026-06-05 13:43:17,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:43:17
[2026-06-05 13:43:18,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:43:18,710.710 INFO    ] Initializing speech engine...
[2026-06-05 13:43:18,720.720 INFO    ] 2026-06-05 13:43:18
[2026-06-05 13:43:18,972.972 INFO    ] 2026-06-05 13:43:18
[2026-06-05 13:43:19,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:43:19,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:43:19,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:43:19,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:43:19,374.374 INFO    ] time= 05/06/2026 13:43:19
[2026-06-05 13:43:19,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:43:19,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:43:19,533.533 INFO    ] No existing commands found in stream
[2026-06-05 13:43:24,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:43:24,556.556 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 13:43:28,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:43:28,628.628 INFO    ] Checking for system updates...
[2026-06-05 13:43:28,665.665 INFO    ] 200
[2026-06-05 13:43:28,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:28,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:43:28,732.732 INFO    ] No update needed
[2026-06-05 13:43:28,734.734 INFO    ] Checking for camera pi updates...
[2026-06-05 13:43:28,768.768 INFO    ] 200
[2026-06-05 13:43:28,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:28,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:43:28,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:43:28,863.863 INFO    ] No camera update needed
[2026-06-05 13:43:28,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:43:28,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:43:28,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:43:28,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:43:30,919.919 INFO    ] ================================================
[2026-06-05 13:43:30,934.934 INFO    ] Launching Daemon at Fri Jun  5 13:43:30 IST 2026
[2026-06-05 13:43:30,946.946 INFO    ] ================================================
[2026-06-05 13:43:31,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:43:31
[2026-06-05 13:43:32,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:43:32,530.530 INFO    ] Initializing speech engine...
[2026-06-05 13:43:32,540.540 INFO    ] 2026-06-05 13:43:32
[2026-06-05 13:43:32,808.808 INFO    ] 2026-06-05 13:43:32
[2026-06-05 13:43:32,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:43:33,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:43:33,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:43:33,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:43:33,198.198 INFO    ] time= 05/06/2026 13:43:33
[2026-06-05 13:43:33,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:43:33,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:43:33,380.380 INFO    ] No existing commands found in stream
[2026-06-05 13:43:38,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:43:38,407.407 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 13:43:42,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:43:42,724.724 INFO    ] Checking for system updates...
[2026-06-05 13:43:42,769.769 INFO    ] 200
[2026-06-05 13:43:42,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:42,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:43:42,827.827 INFO    ] No update needed
[2026-06-05 13:43:42,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 13:43:42,863.863 INFO    ] 200
[2026-06-05 13:43:42,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:42,906.906 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:43:42,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:43:42,954.954 INFO    ] No camera update needed
[2026-06-05 13:43:42,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:43:42,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:43:42,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:43:42,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:43:45,010.010 INFO    ] ================================================
[2026-06-05 13:43:45,026.026 INFO    ] Launching Daemon at Fri Jun  5 13:43:45 IST 2026
[2026-06-05 13:43:45,038.038 INFO    ] ================================================
[2026-06-05 13:43:45,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:43:45
[2026-06-05 13:43:46,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:43:46,454.454 INFO    ] Initializing speech engine...
[2026-06-05 13:43:46,461.461 INFO    ] 2026-06-05 13:43:46
[2026-06-05 13:43:46,763.763 INFO    ] 2026-06-05 13:43:46
[2026-06-05 13:43:46,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:43:46,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:43:46,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:43:47,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:43:47,187.187 INFO    ] time= 05/06/2026 13:43:47
[2026-06-05 13:43:47,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:43:47,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:43:47,303.303 INFO    ] No existing commands found in stream
[2026-06-05 13:43:52,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:43:52,341.341 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 13:43:53,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:43:53,873.873 INFO    ] Checking for system updates...
[2026-06-05 13:43:53,912.912 INFO    ] 200
[2026-06-05 13:43:53,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:53,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:43:53,973.973 INFO    ] No update needed
[2026-06-05 13:43:53,975.975 INFO    ] Checking for camera pi updates...
[2026-06-05 13:43:54,012.012 INFO    ] 200
[2026-06-05 13:43:54,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:43:54,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:43:54,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:43:54,099.099 INFO    ] No camera update needed
[2026-06-05 13:43:54,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:43:54,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:43:54,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:43:54,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:43:56,153.153 INFO    ] ================================================
[2026-06-05 13:43:56,169.169 INFO    ] Launching Daemon at Fri Jun  5 13:43:56 IST 2026
[2026-06-05 13:43:56,180.180 INFO    ] ================================================
[2026-06-05 13:43:56,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:43:56
[2026-06-05 13:43:57,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:43:57,580.580 INFO    ] Initializing speech engine...
[2026-06-05 13:43:57,593.593 INFO    ] 2026-06-05 13:43:57
[2026-06-05 13:43:57,857.857 INFO    ] 2026-06-05 13:43:57
[2026-06-05 13:43:57,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:43:58,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:43:58,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:43:58,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:43:58,434.434 INFO    ] time= 05/06/2026 13:43:58
[2026-06-05 13:43:58,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:43:58,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:43:58,604.604 INFO    ] No existing commands found in stream
[2026-06-05 13:44:03,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:44:03,627.627 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 13:44:05,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:44:05,272.272 INFO    ] Checking for system updates...
[2026-06-05 13:44:05,311.311 INFO    ] 200
[2026-06-05 13:44:05,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:05,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:44:05,368.368 INFO    ] No update needed
[2026-06-05 13:44:05,371.371 INFO    ] Checking for camera pi updates...
[2026-06-05 13:44:05,404.404 INFO    ] 200
[2026-06-05 13:44:05,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:05,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:44:05,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:44:05,491.491 INFO    ] No camera update needed
[2026-06-05 13:44:05,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:44:05,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:44:05,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:44:05,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:44:07,551.551 INFO    ] ================================================
[2026-06-05 13:44:07,567.567 INFO    ] Launching Daemon at Fri Jun  5 13:44:07 IST 2026
[2026-06-05 13:44:07,578.578 INFO    ] ================================================
[2026-06-05 13:44:08,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:44:08
[2026-06-05 13:44:08,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:44:09,111.111 INFO    ] Initializing speech engine...
[2026-06-05 13:44:09,121.121 INFO    ] 2026-06-05 13:44:09
[2026-06-05 13:44:09,390.390 INFO    ] 2026-06-05 13:44:09
[2026-06-05 13:44:09,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:44:11,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:44:11,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:44:11,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:44:11,503.503 INFO    ] time= 05/06/2026 13:44:11
[2026-06-05 13:44:11,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:44:11,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:44:11,597.597 INFO    ] No existing commands found in stream
[2026-06-05 13:44:16,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:44:16,620.620 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 13:44:17,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:44:17,576.576 INFO    ] Checking for system updates...
[2026-06-05 13:44:17,612.612 INFO    ] 200
[2026-06-05 13:44:17,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:17,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:44:17,671.671 INFO    ] No update needed
[2026-06-05 13:44:17,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 13:44:17,706.706 INFO    ] 200
[2026-06-05 13:44:17,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:17,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:44:17,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:44:17,792.792 INFO    ] No camera update needed
[2026-06-05 13:44:17,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:44:17,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:44:17,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:44:17,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:44:19,848.848 INFO    ] ================================================
[2026-06-05 13:44:19,864.864 INFO    ] Launching Daemon at Fri Jun  5 13:44:19 IST 2026
[2026-06-05 13:44:19,874.874 INFO    ] ================================================
[2026-06-05 13:44:20,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:44:20
[2026-06-05 13:44:21,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:44:21,305.305 INFO    ] Initializing speech engine...
[2026-06-05 13:44:21,319.319 INFO    ] 2026-06-05 13:44:21
[2026-06-05 13:44:21,598.598 INFO    ] 2026-06-05 13:44:21
[2026-06-05 13:44:21,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:44:21,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:44:21,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:44:21,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:44:22,000.000 INFO    ] time= 05/06/2026 13:44:21
[2026-06-05 13:44:22,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:44:22,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:44:22,201.201 INFO    ] No existing commands found in stream
[2026-06-05 13:44:27,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:44:27,227.227 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 13:44:29,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:44:29,903.903 INFO    ] Checking for system updates...
[2026-06-05 13:44:29,942.942 INFO    ] 200
[2026-06-05 13:44:29,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:30,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:44:30,007.007 INFO    ] No update needed
[2026-06-05 13:44:30,010.010 INFO    ] Checking for camera pi updates...
[2026-06-05 13:44:30,047.047 INFO    ] 200
[2026-06-05 13:44:30,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:30,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:44:30,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:44:30,140.140 INFO    ] No camera update needed
[2026-06-05 13:44:30,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:44:30,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:44:30,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:44:30,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:44:32,199.199 INFO    ] ================================================
[2026-06-05 13:44:32,216.216 INFO    ] Launching Daemon at Fri Jun  5 13:44:32 IST 2026
[2026-06-05 13:44:32,227.227 INFO    ] ================================================
[2026-06-05 13:44:32,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:44:32
[2026-06-05 13:44:33,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:44:33,732.732 INFO    ] Initializing speech engine...
[2026-06-05 13:44:33,739.739 INFO    ] 2026-06-05 13:44:33
[2026-06-05 13:44:34,016.016 INFO    ] 2026-06-05 13:44:33
[2026-06-05 13:44:34,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:44:34,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:44:34,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:44:34,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:44:34,573.573 INFO    ] time= 05/06/2026 13:44:34
[2026-06-05 13:44:34,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:44:34,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:44:34,738.738 INFO    ] No existing commands found in stream
[2026-06-05 13:44:39,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:44:39,760.760 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 13:44:43,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:44:43,333.333 INFO    ] Checking for system updates...
[2026-06-05 13:44:43,377.377 INFO    ] 200
[2026-06-05 13:44:43,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:43,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:44:43,441.441 INFO    ] No update needed
[2026-06-05 13:44:43,444.444 INFO    ] Checking for camera pi updates...
[2026-06-05 13:44:43,479.479 INFO    ] 200
[2026-06-05 13:44:43,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:43,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:44:43,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:44:43,556.556 INFO    ] No camera update needed
[2026-06-05 13:44:43,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:44:43,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:44:43,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:44:43,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:44:45,613.613 INFO    ] ================================================
[2026-06-05 13:44:45,628.628 INFO    ] Launching Daemon at Fri Jun  5 13:44:45 IST 2026
[2026-06-05 13:44:45,639.639 INFO    ] ================================================
[2026-06-05 13:44:46,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:44:46
[2026-06-05 13:44:46,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:44:47,062.062 INFO    ] Initializing speech engine...
[2026-06-05 13:44:47,085.085 INFO    ] 2026-06-05 13:44:47
[2026-06-05 13:44:47,340.340 INFO    ] 2026-06-05 13:44:47
[2026-06-05 13:44:47,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:44:47,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:44:47,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:44:47,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:44:47,742.742 INFO    ] time= 05/06/2026 13:44:47
[2026-06-05 13:44:47,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:44:47,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:44:47,926.926 INFO    ] No existing commands found in stream
[2026-06-05 13:44:52,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:44:52,954.954 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 13:44:55,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:44:55,839.839 INFO    ] Checking for system updates...
[2026-06-05 13:44:55,875.875 INFO    ] 200
[2026-06-05 13:44:55,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:55,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:44:55,933.933 INFO    ] No update needed
[2026-06-05 13:44:55,935.935 INFO    ] Checking for camera pi updates...
[2026-06-05 13:44:55,969.969 INFO    ] 200
[2026-06-05 13:44:55,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:44:56,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:44:56,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:44:56,159.159 INFO    ] No camera update needed
[2026-06-05 13:44:56,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:44:56,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:44:56,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:44:56,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:44:58,214.214 INFO    ] ================================================
[2026-06-05 13:44:58,229.229 INFO    ] Launching Daemon at Fri Jun  5 13:44:58 IST 2026
[2026-06-05 13:44:58,240.240 INFO    ] ================================================
[2026-06-05 13:44:58,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:44:58
[2026-06-05 13:44:59,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:44:59,799.799 INFO    ] Initializing speech engine...
[2026-06-05 13:44:59,804.804 INFO    ] 2026-06-05 13:44:59
[2026-06-05 13:45:00,074.074 INFO    ] 2026-06-05 13:45:00
[2026-06-05 13:45:00,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:45:00,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:45:00,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:45:00,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:45:00,561.561 INFO    ] time= 05/06/2026 13:45:00
[2026-06-05 13:45:00,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:45:00,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:45:00,755.755 INFO    ] No existing commands found in stream
[2026-06-05 13:45:05,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:45:05,787.787 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 13:45:08,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:45:08,312.312 INFO    ] Checking for system updates...
[2026-06-05 13:45:08,350.350 INFO    ] 200
[2026-06-05 13:45:08,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:08,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:45:08,409.409 INFO    ] No update needed
[2026-06-05 13:45:08,412.412 INFO    ] Checking for camera pi updates...
[2026-06-05 13:45:08,447.447 INFO    ] 200
[2026-06-05 13:45:08,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:08,492.492 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:45:08,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:45:08,529.529 INFO    ] No camera update needed
[2026-06-05 13:45:08,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:45:08,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:45:08,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:45:08,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:45:10,588.588 INFO    ] ================================================
[2026-06-05 13:45:10,604.604 INFO    ] Launching Daemon at Fri Jun  5 13:45:10 IST 2026
[2026-06-05 13:45:10,614.614 INFO    ] ================================================
[2026-06-05 13:45:11,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:45:11
[2026-06-05 13:45:11,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:45:12,153.153 INFO    ] Initializing speech engine...
[2026-06-05 13:45:12,160.160 INFO    ] 2026-06-05 13:45:12
[2026-06-05 13:45:12,424.424 INFO    ] 2026-06-05 13:45:12
[2026-06-05 13:45:12,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:45:12,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:45:12,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:45:12,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:45:12,904.904 INFO    ] time= 05/06/2026 13:45:12
[2026-06-05 13:45:12,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:45:12,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:45:13,108.108 INFO    ] No existing commands found in stream
[2026-06-05 13:45:18,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:45:18,144.144 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 13:45:18,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:45:18,754.754 INFO    ] Checking for system updates...
[2026-06-05 13:45:18,791.791 INFO    ] 200
[2026-06-05 13:45:18,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:18,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:45:18,852.852 INFO    ] No update needed
[2026-06-05 13:45:18,854.854 INFO    ] Checking for camera pi updates...
[2026-06-05 13:45:18,888.888 INFO    ] 200
[2026-06-05 13:45:18,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:18,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:45:18,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:45:18,989.989 INFO    ] No camera update needed
[2026-06-05 13:45:18,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:45:18,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:45:18,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:45:19,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:45:21,045.045 INFO    ] ================================================
[2026-06-05 13:45:21,061.061 INFO    ] Launching Daemon at Fri Jun  5 13:45:21 IST 2026
[2026-06-05 13:45:21,071.071 INFO    ] ================================================
[2026-06-05 13:45:21,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:45:21
[2026-06-05 13:45:22,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:45:22,542.542 INFO    ] Initializing speech engine...
[2026-06-05 13:45:22,552.552 INFO    ] 2026-06-05 13:45:22
[2026-06-05 13:45:22,804.804 INFO    ] 2026-06-05 13:45:22
[2026-06-05 13:45:22,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:45:23,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:45:23,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:45:23,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:45:23,266.266 INFO    ] time= 05/06/2026 13:45:23
[2026-06-05 13:45:23,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:45:23,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:45:23,460.460 INFO    ] No existing commands found in stream
[2026-06-05 13:45:28,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:45:28,493.493 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 13:45:29,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:45:29,580.580 INFO    ] Checking for system updates...
[2026-06-05 13:45:29,618.618 INFO    ] 200
[2026-06-05 13:45:29,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:29,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:45:29,676.676 INFO    ] No update needed
[2026-06-05 13:45:29,679.679 INFO    ] Checking for camera pi updates...
[2026-06-05 13:45:29,716.716 INFO    ] 200
[2026-06-05 13:45:29,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:29,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:45:29,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:45:29,808.808 INFO    ] No camera update needed
[2026-06-05 13:45:29,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:45:29,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:45:29,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:45:29,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:45:31,864.864 INFO    ] ================================================
[2026-06-05 13:45:31,879.879 INFO    ] Launching Daemon at Fri Jun  5 13:45:31 IST 2026
[2026-06-05 13:45:31,890.890 INFO    ] ================================================
[2026-06-05 13:45:32,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:45:32
[2026-06-05 13:45:33,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:45:33,510.510 INFO    ] Initializing speech engine...
[2026-06-05 13:45:33,520.520 INFO    ] 2026-06-05 13:45:33
[2026-06-05 13:45:33,783.783 INFO    ] 2026-06-05 13:45:33
[2026-06-05 13:45:33,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:45:34,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:45:34,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:45:34,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:45:34,290.290 INFO    ] time= 05/06/2026 13:45:34
[2026-06-05 13:45:34,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:45:34,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:45:34,485.485 INFO    ] No existing commands found in stream
[2026-06-05 13:45:39,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:45:39,516.516 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 13:45:41,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:45:41,566.566 INFO    ] Checking for system updates...
[2026-06-05 13:45:41,602.602 INFO    ] 200
[2026-06-05 13:45:41,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:41,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:45:41,661.661 INFO    ] No update needed
[2026-06-05 13:45:41,664.664 INFO    ] Checking for camera pi updates...
[2026-06-05 13:45:41,698.698 INFO    ] 200
[2026-06-05 13:45:41,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:41,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:45:41,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:45:41,786.786 INFO    ] No camera update needed
[2026-06-05 13:45:41,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:45:41,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:45:41,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:45:41,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:45:43,844.844 INFO    ] ================================================
[2026-06-05 13:45:43,859.859 INFO    ] Launching Daemon at Fri Jun  5 13:45:43 IST 2026
[2026-06-05 13:45:43,869.869 INFO    ] ================================================
[2026-06-05 13:45:44,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:45:44
[2026-06-05 13:45:45,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:45:45,382.382 INFO    ] Initializing speech engine...
[2026-06-05 13:45:45,394.394 INFO    ] 2026-06-05 13:45:45
[2026-06-05 13:45:45,696.696 INFO    ] 2026-06-05 13:45:45
[2026-06-05 13:45:45,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:45:45,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:45:45,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:45:46,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:45:46,164.164 INFO    ] time= 05/06/2026 13:45:46
[2026-06-05 13:45:46,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:45:46,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:45:46,381.381 INFO    ] No existing commands found in stream
[2026-06-05 13:45:51,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:45:51,414.414 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 13:45:52,479.479 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:45:52,481.481 INFO    ] Checking for system updates...
[2026-06-05 13:45:52,517.517 INFO    ] 200
[2026-06-05 13:45:52,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:52,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:45:52,583.583 INFO    ] No update needed
[2026-06-05 13:45:52,586.586 INFO    ] Checking for camera pi updates...
[2026-06-05 13:45:52,624.624 INFO    ] 200
[2026-06-05 13:45:52,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:45:52,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:45:52,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:45:52,719.719 INFO    ] No camera update needed
[2026-06-05 13:45:52,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:45:52,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:45:52,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:45:52,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:45:54,778.778 INFO    ] ================================================
[2026-06-05 13:45:54,794.794 INFO    ] Launching Daemon at Fri Jun  5 13:45:54 IST 2026
[2026-06-05 13:45:54,805.805 INFO    ] ================================================
[2026-06-05 13:45:55,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:45:55
[2026-06-05 13:45:55,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:45:56,222.222 INFO    ] Initializing speech engine...
[2026-06-05 13:45:56,247.247 INFO    ] 2026-06-05 13:45:56
[2026-06-05 13:45:56,515.515 INFO    ] 2026-06-05 13:45:56
[2026-06-05 13:45:56,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:45:56,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:45:56,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:45:56,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:45:56,944.944 INFO    ] time= 05/06/2026 13:45:56
[2026-06-05 13:45:56,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:45:56,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:45:57,036.036 INFO    ] No existing commands found in stream
[2026-06-05 13:46:02,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:46:02,072.072 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 13:46:02,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:46:02,881.881 INFO    ] Checking for system updates...
[2026-06-05 13:46:02,930.930 INFO    ] 200
[2026-06-05 13:46:02,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:03,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:46:03,005.005 INFO    ] No update needed
[2026-06-05 13:46:03,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 13:46:03,048.048 INFO    ] 200
[2026-06-05 13:46:03,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:03,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:46:03,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:46:03,172.172 INFO    ] No camera update needed
[2026-06-05 13:46:03,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:46:03,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:46:03,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:46:03,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:46:05,238.238 INFO    ] ================================================
[2026-06-05 13:46:05,254.254 INFO    ] Launching Daemon at Fri Jun  5 13:46:05 IST 2026
[2026-06-05 13:46:05,266.266 INFO    ] ================================================
[2026-06-05 13:46:05,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:46:05
[2026-06-05 13:46:06,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:46:06,919.919 INFO    ] Initializing speech engine...
[2026-06-05 13:46:06,933.933 INFO    ] 2026-06-05 13:46:06
[2026-06-05 13:46:07,288.288 INFO    ] 2026-06-05 13:46:07
[2026-06-05 13:46:07,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:46:07,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:46:07,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:46:07,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:46:07,814.814 INFO    ] time= 05/06/2026 13:46:07
[2026-06-05 13:46:07,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:46:07,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:46:07,974.974 INFO    ] No existing commands found in stream
[2026-06-05 13:46:12,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:46:12,990.990 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 13:46:17,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:46:17,199.199 INFO    ] Checking for system updates...
[2026-06-05 13:46:17,240.240 INFO    ] 200
[2026-06-05 13:46:17,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:17,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:46:17,300.300 INFO    ] No update needed
[2026-06-05 13:46:17,303.303 INFO    ] Checking for camera pi updates...
[2026-06-05 13:46:17,342.342 INFO    ] 200
[2026-06-05 13:46:17,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:17,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:46:17,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:46:17,445.445 INFO    ] No camera update needed
[2026-06-05 13:46:17,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:46:17,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:46:17,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:46:17,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:46:19,505.505 INFO    ] ================================================
[2026-06-05 13:46:19,521.521 INFO    ] Launching Daemon at Fri Jun  5 13:46:19 IST 2026
[2026-06-05 13:46:19,532.532 INFO    ] ================================================
[2026-06-05 13:46:20,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:46:20
[2026-06-05 13:46:20,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:46:20,998.998 INFO    ] Initializing speech engine...
[2026-06-05 13:46:21,003.003 INFO    ] 2026-06-05 13:46:21
[2026-06-05 13:46:21,273.273 INFO    ] 2026-06-05 13:46:21
[2026-06-05 13:46:21,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:46:21,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:46:21,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:46:21,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:46:21,733.733 INFO    ] time= 05/06/2026 13:46:21
[2026-06-05 13:46:21,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:46:21,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:46:21,975.975 INFO    ] No existing commands found in stream
[2026-06-05 13:46:26,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:46:27,002.002 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 13:46:31,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:46:31,192.192 INFO    ] Checking for system updates...
[2026-06-05 13:46:31,232.232 INFO    ] 200
[2026-06-05 13:46:31,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:31,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:46:31,296.296 INFO    ] No update needed
[2026-06-05 13:46:31,299.299 INFO    ] Checking for camera pi updates...
[2026-06-05 13:46:31,336.336 INFO    ] 200
[2026-06-05 13:46:31,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:31,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:46:31,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:46:31,416.416 INFO    ] No camera update needed
[2026-06-05 13:46:31,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:46:31,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:46:31,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:46:31,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:46:33,475.475 INFO    ] ================================================
[2026-06-05 13:46:33,492.492 INFO    ] Launching Daemon at Fri Jun  5 13:46:33 IST 2026
[2026-06-05 13:46:33,504.504 INFO    ] ================================================
[2026-06-05 13:46:34,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:46:34
[2026-06-05 13:46:34,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:46:35,012.012 INFO    ] Initializing speech engine...
[2026-06-05 13:46:35,020.020 INFO    ] 2026-06-05 13:46:35
[2026-06-05 13:46:35,297.297 INFO    ] 2026-06-05 13:46:35
[2026-06-05 13:46:35,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:46:35,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:46:35,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:46:35,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:46:35,798.798 INFO    ] time= 05/06/2026 13:46:35
[2026-06-05 13:46:35,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:46:35,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:46:36,003.003 INFO    ] No existing commands found in stream
[2026-06-05 13:46:41,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:46:41,019.019 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 13:46:41,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:46:41,951.951 INFO    ] Checking for system updates...
[2026-06-05 13:46:41,987.987 INFO    ] 200
[2026-06-05 13:46:41,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:42,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:46:42,052.052 INFO    ] No update needed
[2026-06-05 13:46:42,054.054 INFO    ] Checking for camera pi updates...
[2026-06-05 13:46:42,092.092 INFO    ] 200
[2026-06-05 13:46:42,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:42,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:46:42,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:46:42,183.183 INFO    ] No camera update needed
[2026-06-05 13:46:42,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:46:42,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:46:42,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:46:42,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:46:44,241.241 INFO    ] ================================================
[2026-06-05 13:46:44,256.256 INFO    ] Launching Daemon at Fri Jun  5 13:46:44 IST 2026
[2026-06-05 13:46:44,266.266 INFO    ] ================================================
[2026-06-05 13:46:44,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:46:44
[2026-06-05 13:46:45,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:46:45,720.720 INFO    ] Initializing speech engine...
[2026-06-05 13:46:45,727.727 INFO    ] 2026-06-05 13:46:45
[2026-06-05 13:46:46,023.023 INFO    ] 2026-06-05 13:46:45
[2026-06-05 13:46:46,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:46:46,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:46:46,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:46:46,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:46:46,457.457 INFO    ] time= 05/06/2026 13:46:46
[2026-06-05 13:46:46,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:46:46,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:46:46,542.542 INFO    ] No existing commands found in stream
[2026-06-05 13:46:51,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:46:51,557.557 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 13:46:52,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:46:52,292.292 INFO    ] Checking for system updates...
[2026-06-05 13:46:52,328.328 INFO    ] 200
[2026-06-05 13:46:52,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:52,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:46:52,386.386 INFO    ] No update needed
[2026-06-05 13:46:52,388.388 INFO    ] Checking for camera pi updates...
[2026-06-05 13:46:52,422.422 INFO    ] 200
[2026-06-05 13:46:52,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:46:52,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:46:52,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:46:52,513.513 INFO    ] No camera update needed
[2026-06-05 13:46:52,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:46:52,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:46:52,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:46:52,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:46:54,569.569 INFO    ] ================================================
[2026-06-05 13:46:54,584.584 INFO    ] Launching Daemon at Fri Jun  5 13:46:54 IST 2026
[2026-06-05 13:46:54,595.595 INFO    ] ================================================
[2026-06-05 13:46:55,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:46:55
[2026-06-05 13:46:55,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:46:56,048.048 INFO    ] Initializing speech engine...
[2026-06-05 13:46:56,059.059 INFO    ] 2026-06-05 13:46:56
[2026-06-05 13:46:56,319.319 INFO    ] 2026-06-05 13:46:56
[2026-06-05 13:46:56,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:46:56,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:46:56,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:46:56,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:46:56,814.814 INFO    ] time= 05/06/2026 13:46:56
[2026-06-05 13:46:56,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:46:56,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:46:57,015.015 INFO    ] No existing commands found in stream
[2026-06-05 13:47:02,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:47:02,049.049 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 13:47:05,708.708 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:47:05,711.711 INFO    ] Checking for system updates...
[2026-06-05 13:47:05,750.750 INFO    ] 200
[2026-06-05 13:47:05,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:05,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:47:05,814.814 INFO    ] No update needed
[2026-06-05 13:47:05,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 13:47:05,850.850 INFO    ] 200
[2026-06-05 13:47:05,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:05,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:47:05,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:47:05,932.932 INFO    ] No camera update needed
[2026-06-05 13:47:05,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:47:05,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:47:05,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:47:05,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:47:07,987.987 INFO    ] ================================================
[2026-06-05 13:47:08,003.003 INFO    ] Launching Daemon at Fri Jun  5 13:47:07 IST 2026
[2026-06-05 13:47:08,014.014 INFO    ] ================================================
[2026-06-05 13:47:08,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:47:08
[2026-06-05 13:47:09,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:47:09,462.462 INFO    ] Initializing speech engine...
[2026-06-05 13:47:09,485.485 INFO    ] 2026-06-05 13:47:09
[2026-06-05 13:47:09,741.741 INFO    ] 2026-06-05 13:47:09
[2026-06-05 13:47:09,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:47:11,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:47:11,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:47:11,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:47:11,215.215 INFO    ] time= 05/06/2026 13:47:11
[2026-06-05 13:47:11,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:47:11,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:47:11,293.293 INFO    ] No existing commands found in stream
[2026-06-05 13:47:16,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:47:16,307.307 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 13:47:19,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:47:19,629.629 INFO    ] Checking for system updates...
[2026-06-05 13:47:19,670.670 INFO    ] 200
[2026-06-05 13:47:19,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:19,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:47:19,737.737 INFO    ] No update needed
[2026-06-05 13:47:19,740.740 INFO    ] Checking for camera pi updates...
[2026-06-05 13:47:19,780.780 INFO    ] 200
[2026-06-05 13:47:19,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:19,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:47:19,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:47:19,881.881 INFO    ] No camera update needed
[2026-06-05 13:47:19,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:47:19,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:47:19,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:47:19,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:47:21,940.940 INFO    ] ================================================
[2026-06-05 13:47:21,955.955 INFO    ] Launching Daemon at Fri Jun  5 13:47:21 IST 2026
[2026-06-05 13:47:21,966.966 INFO    ] ================================================
[2026-06-05 13:47:22,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:47:22
[2026-06-05 13:47:23,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:47:23,552.552 INFO    ] Initializing speech engine...
[2026-06-05 13:47:23,575.575 INFO    ] 2026-06-05 13:47:23
[2026-06-05 13:47:23,850.850 INFO    ] 2026-06-05 13:47:23
[2026-06-05 13:47:23,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:47:24,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:47:24,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:47:24,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:47:24,236.236 INFO    ] time= 05/06/2026 13:47:24
[2026-06-05 13:47:24,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:47:24,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:47:24,424.424 INFO    ] No existing commands found in stream
[2026-06-05 13:47:29,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:47:29,449.449 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 13:47:33,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:47:33,273.273 INFO    ] Checking for system updates...
[2026-06-05 13:47:33,310.310 INFO    ] 200
[2026-06-05 13:47:33,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:33,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:47:33,377.377 INFO    ] No update needed
[2026-06-05 13:47:33,380.380 INFO    ] Checking for camera pi updates...
[2026-06-05 13:47:33,418.418 INFO    ] 200
[2026-06-05 13:47:33,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:33,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:47:33,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:47:33,528.528 INFO    ] No camera update needed
[2026-06-05 13:47:33,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:47:33,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:47:33,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:47:33,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:47:35,587.587 INFO    ] ================================================
[2026-06-05 13:47:35,602.602 INFO    ] Launching Daemon at Fri Jun  5 13:47:35 IST 2026
[2026-06-05 13:47:35,613.613 INFO    ] ================================================
[2026-06-05 13:47:36,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:47:36
[2026-06-05 13:47:36,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:47:37,080.080 INFO    ] Initializing speech engine...
[2026-06-05 13:47:37,090.090 INFO    ] 2026-06-05 13:47:37
[2026-06-05 13:47:37,367.367 INFO    ] 2026-06-05 13:47:37
[2026-06-05 13:47:37,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:47:37,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:47:37,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:47:37,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:47:37,848.848 INFO    ] time= 05/06/2026 13:47:37
[2026-06-05 13:47:37,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:47:37,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:47:38,054.054 INFO    ] No existing commands found in stream
[2026-06-05 13:47:43,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:47:43,088.088 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 13:47:46,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:47:46,049.049 INFO    ] Checking for system updates...
[2026-06-05 13:47:46,088.088 INFO    ] 200
[2026-06-05 13:47:46,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:46,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:47:46,146.146 INFO    ] No update needed
[2026-06-05 13:47:46,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 13:47:46,182.182 INFO    ] 200
[2026-06-05 13:47:46,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:46,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:47:46,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:47:46,269.269 INFO    ] No camera update needed
[2026-06-05 13:47:46,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:47:46,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:47:46,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:47:46,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:47:48,325.325 INFO    ] ================================================
[2026-06-05 13:47:48,341.341 INFO    ] Launching Daemon at Fri Jun  5 13:47:48 IST 2026
[2026-06-05 13:47:48,352.352 INFO    ] ================================================
[2026-06-05 13:47:48,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:47:48
[2026-06-05 13:47:49,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:47:49,845.845 INFO    ] Initializing speech engine...
[2026-06-05 13:47:49,868.868 INFO    ] 2026-06-05 13:47:49
[2026-06-05 13:47:50,124.124 INFO    ] 2026-06-05 13:47:50
[2026-06-05 13:47:50,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:47:50,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:47:50,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:47:50,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:47:50,610.610 INFO    ] time= 05/06/2026 13:47:50
[2026-06-05 13:47:50,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:47:50,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:47:50,809.809 INFO    ] No existing commands found in stream
[2026-06-05 13:47:55,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:47:55,834.834 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 13:47:58,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:47:58,920.920 INFO    ] Checking for system updates...
[2026-06-05 13:47:58,962.962 INFO    ] 200
[2026-06-05 13:47:58,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:59,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:47:59,021.021 INFO    ] No update needed
[2026-06-05 13:47:59,023.023 INFO    ] Checking for camera pi updates...
[2026-06-05 13:47:59,057.057 INFO    ] 200
[2026-06-05 13:47:59,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:47:59,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:47:59,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:47:59,157.157 INFO    ] No camera update needed
[2026-06-05 13:47:59,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:47:59,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:47:59,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:47:59,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:48:01,213.213 INFO    ] ================================================
[2026-06-05 13:48:01,228.228 INFO    ] Launching Daemon at Fri Jun  5 13:48:01 IST 2026
[2026-06-05 13:48:01,239.239 INFO    ] ================================================
[2026-06-05 13:48:02,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:48:02
[2026-06-05 13:48:02,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:48:03,101.101 INFO    ] Initializing speech engine...
[2026-06-05 13:48:03,115.115 INFO    ] 2026-06-05 13:48:03
[2026-06-05 13:48:03,390.390 INFO    ] 2026-06-05 13:48:03
[2026-06-05 13:48:03,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:48:03,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:48:03,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:48:03,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:48:03,926.926 INFO    ] time= 05/06/2026 13:48:03
[2026-06-05 13:48:03,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:48:03,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:48:04,063.063 INFO    ] No existing commands found in stream
[2026-06-05 13:48:09,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:48:09,079.079 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 13:48:11,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:48:11,572.572 INFO    ] Checking for system updates...
[2026-06-05 13:48:11,608.608 INFO    ] 200
[2026-06-05 13:48:11,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:48:11,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:48:11,671.671 INFO    ] No update needed
[2026-06-05 13:48:11,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 13:48:11,710.710 INFO    ] 200
[2026-06-05 13:48:11,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:48:11,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:48:11,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:48:11,798.798 INFO    ] No camera update needed
[2026-06-05 13:48:11,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:48:11,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:48:11,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:48:11,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:48:13,853.853 INFO    ] ================================================
[2026-06-05 13:48:13,869.869 INFO    ] Launching Daemon at Fri Jun  5 13:48:13 IST 2026
[2026-06-05 13:48:13,880.880 INFO    ] ================================================
[2026-06-05 13:48:14,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:48:14
[2026-06-05 13:48:15,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:48:15,350.350 INFO    ] Initializing speech engine...
[2026-06-05 13:48:15,357.357 INFO    ] 2026-06-05 13:48:15
[2026-06-05 13:48:15,619.619 INFO    ] 2026-06-05 13:48:15
[2026-06-05 13:48:15,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:48:15,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:48:15,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:48:16,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:48:16,068.068 INFO    ] time= 05/06/2026 13:48:16
[2026-06-05 13:48:16,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:48:16,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:48:16,309.309 INFO    ] No existing commands found in stream
[2026-06-05 13:48:21,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:48:21,333.333 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 13:48:22,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:48:22,569.569 INFO    ] Checking for system updates...
[2026-06-05 13:48:22,606.606 INFO    ] 200
[2026-06-05 13:48:22,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:48:22,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:48:22,667.667 INFO    ] No update needed
[2026-06-05 13:48:22,670.670 INFO    ] Checking for camera pi updates...
[2026-06-05 13:48:22,709.709 INFO    ] 200
[2026-06-05 13:48:22,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:48:22,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:48:22,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:48:22,798.798 INFO    ] No camera update needed
[2026-06-05 13:48:22,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:48:22,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:48:22,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:48:22,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:48:24,856.856 INFO    ] ================================================
[2026-06-05 13:48:24,872.872 INFO    ] Launching Daemon at Fri Jun  5 13:48:24 IST 2026
[2026-06-05 13:48:24,882.882 INFO    ] ================================================
[2026-06-05 13:48:25,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:48:25
[2026-06-05 13:48:26,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:48:26,288.288 INFO    ] Initializing speech engine...
[2026-06-05 13:48:26,296.296 INFO    ] 2026-06-05 13:48:26
[2026-06-05 13:48:26,590.590 INFO    ] 2026-06-05 13:48:26
[2026-06-05 13:48:26,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:48:26,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:48:26,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:48:26,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:48:26,994.994 INFO    ] time= 05/06/2026 13:48:26
[2026-06-05 13:48:26,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:48:27,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:48:27,077.077 INFO    ] No existing commands found in stream
[2026-06-05 13:48:32,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:48:32,090.090 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 13:48:36,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:48:36,074.074 INFO    ] Checking for system updates...
[2026-06-05 13:48:36,111.111 INFO    ] 200
[2026-06-05 13:48:36,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:48:36,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:48:36,174.174 INFO    ] No update needed
[2026-06-05 13:48:36,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 13:48:36,211.211 INFO    ] 200
[2026-06-05 13:48:36,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:48:36,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:48:36,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:48:36,313.313 INFO    ] No camera update needed
[2026-06-05 13:48:36,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:48:36,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:48:36,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:48:36,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:48:38,369.369 INFO    ] ================================================
[2026-06-05 13:48:38,384.384 INFO    ] Launching Daemon at Fri Jun  5 13:48:38 IST 2026
[2026-06-05 13:48:38,395.395 INFO    ] ================================================
[2026-06-05 13:48:39,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:48:39
[2026-06-05 13:48:39,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:48:40,022.022 INFO    ] Initializing speech engine...
[2026-06-05 13:48:40,036.036 INFO    ] 2026-06-05 13:48:40
[2026-06-05 13:48:40,343.343 INFO    ] 2026-06-05 13:48:40
[2026-06-05 13:48:40,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:48:41,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:48:41,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:48:41,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:48:41,431.431 INFO    ] time= 05/06/2026 13:48:41
[2026-06-05 13:48:41,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:48:41,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:48:41,556.556 INFO    ] No existing commands found in stream
[2026-06-05 13:48:46,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:48:46,572.572 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 13:48:48,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:48:48,487.487 INFO    ] Checking for system updates...
[2026-06-05 13:48:48,524.524 INFO    ] 200
[2026-06-05 13:48:48,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:48:48,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:48:48,583.583 INFO    ] No update needed
[2026-06-05 13:48:48,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 13:48:48,625.625 INFO    ] 200
[2026-06-05 13:48:48,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:48:48,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:48:48,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:48:48,719.719 INFO    ] No camera update needed
[2026-06-05 13:48:48,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:48:48,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:48:48,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:48:48,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:48:50,778.778 INFO    ] ================================================
[2026-06-05 13:48:50,794.794 INFO    ] Launching Daemon at Fri Jun  5 13:48:50 IST 2026
[2026-06-05 13:48:50,806.806 INFO    ] ================================================
[2026-06-05 13:48:51,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:48:51
[2026-06-05 13:48:52,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:48:52,309.309 INFO    ] Initializing speech engine...
[2026-06-05 13:48:52,313.313 INFO    ] 2026-06-05 13:48:52
[2026-06-05 13:48:52,650.650 INFO    ] 2026-06-05 13:48:52
[2026-06-05 13:48:52,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:48:52,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:48:52,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:48:53,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:48:53,130.130 INFO    ] time= 05/06/2026 13:48:53
[2026-06-05 13:48:53,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:48:53,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:48:53,323.323 INFO    ] No existing commands found in stream
[2026-06-05 13:48:58,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:48:58,349.349 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 13:49:01,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:49:01,888.888 INFO    ] Checking for system updates...
[2026-06-05 13:49:01,942.942 INFO    ] 200
[2026-06-05 13:49:01,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:02,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:49:02,069.069 INFO    ] No update needed
[2026-06-05 13:49:02,073.073 INFO    ] Checking for camera pi updates...
[2026-06-05 13:49:02,133.133 INFO    ] 200
[2026-06-05 13:49:02,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:02,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:49:02,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:49:02,228.228 INFO    ] No camera update needed
[2026-06-05 13:49:02,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:49:02,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:49:02,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:49:02,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:49:04,288.288 INFO    ] ================================================
[2026-06-05 13:49:04,305.305 INFO    ] Launching Daemon at Fri Jun  5 13:49:04 IST 2026
[2026-06-05 13:49:04,316.316 INFO    ] ================================================
[2026-06-05 13:49:04,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:49:04
[2026-06-05 13:49:05,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:49:05,751.751 INFO    ] Initializing speech engine...
[2026-06-05 13:49:05,766.766 INFO    ] 2026-06-05 13:49:05
[2026-06-05 13:49:06,042.042 INFO    ] 2026-06-05 13:49:06
[2026-06-05 13:49:06,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:49:06,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:49:06,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:49:06,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:49:06,551.551 INFO    ] time= 05/06/2026 13:49:06
[2026-06-05 13:49:06,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:49:06,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:49:06,771.771 INFO    ] No existing commands found in stream
[2026-06-05 13:49:11,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:49:11,799.799 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 13:49:13,071.071 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:49:13,074.074 INFO    ] Checking for system updates...
[2026-06-05 13:49:13,113.113 INFO    ] 200
[2026-06-05 13:49:13,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:13,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:49:13,172.172 INFO    ] No update needed
[2026-06-05 13:49:13,174.174 INFO    ] Checking for camera pi updates...
[2026-06-05 13:49:13,212.212 INFO    ] 200
[2026-06-05 13:49:13,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:13,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:49:13,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:49:13,385.385 INFO    ] No camera update needed
[2026-06-05 13:49:13,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:49:13,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:49:13,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:49:13,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:49:15,443.443 INFO    ] ================================================
[2026-06-05 13:49:15,459.459 INFO    ] Launching Daemon at Fri Jun  5 13:49:15 IST 2026
[2026-06-05 13:49:15,470.470 INFO    ] ================================================
[2026-06-05 13:49:16,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:49:16
[2026-06-05 13:49:16,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:49:16,905.905 INFO    ] Initializing speech engine...
[2026-06-05 13:49:16,920.920 INFO    ] 2026-06-05 13:49:16
[2026-06-05 13:49:17,185.185 INFO    ] 2026-06-05 13:49:17
[2026-06-05 13:49:17,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:49:17,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:49:17,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:49:17,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:49:17,672.672 INFO    ] time= 05/06/2026 13:49:17
[2026-06-05 13:49:17,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:49:17,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:49:17,896.896 INFO    ] No existing commands found in stream
[2026-06-05 13:49:22,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:49:22,913.913 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 13:49:25,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:49:25,140.140 INFO    ] Checking for system updates...
[2026-06-05 13:49:25,175.175 INFO    ] 200
[2026-06-05 13:49:25,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:25,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:49:25,233.233 INFO    ] No update needed
[2026-06-05 13:49:25,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 13:49:25,271.271 INFO    ] 200
[2026-06-05 13:49:25,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:25,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:49:25,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:49:25,374.374 INFO    ] No camera update needed
[2026-06-05 13:49:25,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:49:25,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:49:25,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:49:25,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:49:27,433.433 INFO    ] ================================================
[2026-06-05 13:49:27,452.452 INFO    ] Launching Daemon at Fri Jun  5 13:49:27 IST 2026
[2026-06-05 13:49:27,468.468 INFO    ] ================================================
[2026-06-05 13:49:28,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:49:28
[2026-06-05 13:49:28,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:49:28,987.987 INFO    ] Initializing speech engine...
[2026-06-05 13:49:28,996.996 INFO    ] 2026-06-05 13:49:28
[2026-06-05 13:49:29,262.262 INFO    ] 2026-06-05 13:49:29
[2026-06-05 13:49:29,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:49:29,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:49:29,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:49:29,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:49:29,726.726 INFO    ] time= 05/06/2026 13:49:29
[2026-06-05 13:49:29,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:49:29,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:49:29,946.946 INFO    ] No existing commands found in stream
[2026-06-05 13:49:34,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:49:34,975.975 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 13:49:36,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:49:36,222.222 INFO    ] Checking for system updates...
[2026-06-05 13:49:36,261.261 INFO    ] 200
[2026-06-05 13:49:36,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:36,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:49:36,323.323 INFO    ] No update needed
[2026-06-05 13:49:36,326.326 INFO    ] Checking for camera pi updates...
[2026-06-05 13:49:36,360.360 INFO    ] 200
[2026-06-05 13:49:36,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:36,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:49:36,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:49:36,465.465 INFO    ] No camera update needed
[2026-06-05 13:49:36,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:49:36,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:49:36,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:49:36,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:49:38,520.520 INFO    ] ================================================
[2026-06-05 13:49:38,536.536 INFO    ] Launching Daemon at Fri Jun  5 13:49:38 IST 2026
[2026-06-05 13:49:38,548.548 INFO    ] ================================================
[2026-06-05 13:49:39,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:49:39
[2026-06-05 13:49:39,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:49:40,007.007 INFO    ] Initializing speech engine...
[2026-06-05 13:49:40,023.023 INFO    ] 2026-06-05 13:49:40
[2026-06-05 13:49:40,289.289 INFO    ] 2026-06-05 13:49:40
[2026-06-05 13:49:40,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:49:41,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:49:41,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:49:41,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:49:41,301.301 INFO    ] time= 05/06/2026 13:49:41
[2026-06-05 13:49:41,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:49:41,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:49:41,483.483 INFO    ] No existing commands found in stream
[2026-06-05 13:49:46,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:49:46,517.517 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 13:49:48,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:49:48,151.151 INFO    ] Checking for system updates...
[2026-06-05 13:49:48,188.188 INFO    ] 200
[2026-06-05 13:49:48,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:48,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:49:48,248.248 INFO    ] No update needed
[2026-06-05 13:49:48,251.251 INFO    ] Checking for camera pi updates...
[2026-06-05 13:49:48,286.286 INFO    ] 200
[2026-06-05 13:49:48,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:49:48,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:49:48,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:49:48,387.387 INFO    ] No camera update needed
[2026-06-05 13:49:48,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:49:48,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:49:48,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:49:48,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:49:50,445.445 INFO    ] ================================================
[2026-06-05 13:49:50,461.461 INFO    ] Launching Daemon at Fri Jun  5 13:49:50 IST 2026
[2026-06-05 13:49:50,473.473 INFO    ] ================================================
[2026-06-05 13:49:51,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:49:51
[2026-06-05 13:49:51,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:49:51,889.889 INFO    ] Initializing speech engine...
[2026-06-05 13:49:51,904.904 INFO    ] 2026-06-05 13:49:51
[2026-06-05 13:49:52,178.178 INFO    ] 2026-06-05 13:49:52
[2026-06-05 13:49:52,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:49:52,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:49:52,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:49:52,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:49:52,667.667 INFO    ] time= 05/06/2026 13:49:52
[2026-06-05 13:49:52,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:49:52,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:49:52,881.881 INFO    ] No existing commands found in stream
[2026-06-05 13:49:57,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:49:57,911.911 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 13:50:00,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:50:00,811.811 INFO    ] Checking for system updates...
[2026-06-05 13:50:00,846.846 INFO    ] 200
[2026-06-05 13:50:00,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:00,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:50:00,904.904 INFO    ] No update needed
[2026-06-05 13:50:00,907.907 INFO    ] Checking for camera pi updates...
[2026-06-05 13:50:00,942.942 INFO    ] 200
[2026-06-05 13:50:00,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:00,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:50:01,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:50:01,043.043 INFO    ] No camera update needed
[2026-06-05 13:50:01,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:50:01,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:50:01,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:50:01,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:50:03,138.138 INFO    ] ================================================
[2026-06-05 13:50:03,185.185 INFO    ] Launching Daemon at Fri Jun  5 13:50:03 IST 2026
[2026-06-05 13:50:03,204.204 INFO    ] ================================================
[2026-06-05 13:50:04,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:50:04
[2026-06-05 13:50:04,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:50:05,010.010 INFO    ] Initializing speech engine...
[2026-06-05 13:50:05,021.021 INFO    ] 2026-06-05 13:50:05
[2026-06-05 13:50:05,302.302 INFO    ] 2026-06-05 13:50:05
[2026-06-05 13:50:05,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:50:05,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:50:05,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:50:05,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:50:05,773.773 INFO    ] time= 05/06/2026 13:50:05
[2026-06-05 13:50:05,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:50:05,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:50:06,001.001 INFO    ] No existing commands found in stream
[2026-06-05 13:50:11,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:50:11,029.029 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 13:50:14,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:50:14,711.711 INFO    ] Checking for system updates...
[2026-06-05 13:50:14,752.752 INFO    ] 200
[2026-06-05 13:50:14,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:14,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:50:14,812.812 INFO    ] No update needed
[2026-06-05 13:50:14,815.815 INFO    ] Checking for camera pi updates...
[2026-06-05 13:50:14,850.850 INFO    ] 200
[2026-06-05 13:50:14,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:14,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:50:14,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:50:14,940.940 INFO    ] No camera update needed
[2026-06-05 13:50:14,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:50:14,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:50:14,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:50:14,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:50:17,000.000 INFO    ] ================================================
[2026-06-05 13:50:17,015.015 INFO    ] Launching Daemon at Fri Jun  5 13:50:17 IST 2026
[2026-06-05 13:50:17,027.027 INFO    ] ================================================
[2026-06-05 13:50:17,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:50:17
[2026-06-05 13:50:18,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:50:18,441.441 INFO    ] Initializing speech engine...
[2026-06-05 13:50:18,448.448 INFO    ] 2026-06-05 13:50:18
[2026-06-05 13:50:18,730.730 INFO    ] 2026-06-05 13:50:18
[2026-06-05 13:50:18,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:50:18,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:50:19,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:50:19,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:50:19,227.227 INFO    ] time= 05/06/2026 13:50:19
[2026-06-05 13:50:19,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:50:19,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:50:19,454.454 INFO    ] No existing commands found in stream
[2026-06-05 13:50:24,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:50:24,487.487 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 13:50:25,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:50:25,307.307 INFO    ] Checking for system updates...
[2026-06-05 13:50:25,343.343 INFO    ] 200
[2026-06-05 13:50:25,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:25,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:50:25,402.402 INFO    ] No update needed
[2026-06-05 13:50:25,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 13:50:25,439.439 INFO    ] 200
[2026-06-05 13:50:25,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:25,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:50:25,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:50:25,526.526 INFO    ] No camera update needed
[2026-06-05 13:50:25,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:50:25,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:50:25,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:50:25,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:50:27,581.581 INFO    ] ================================================
[2026-06-05 13:50:27,597.597 INFO    ] Launching Daemon at Fri Jun  5 13:50:27 IST 2026
[2026-06-05 13:50:27,608.608 INFO    ] ================================================
[2026-06-05 13:50:28,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:50:28
[2026-06-05 13:50:28,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:50:29,071.071 INFO    ] Initializing speech engine...
[2026-06-05 13:50:29,080.080 INFO    ] 2026-06-05 13:50:29
[2026-06-05 13:50:29,340.340 INFO    ] 2026-06-05 13:50:29
[2026-06-05 13:50:29,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:50:29,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:50:29,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:50:29,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:50:29,812.812 INFO    ] time= 05/06/2026 13:50:29
[2026-06-05 13:50:29,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:50:29,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:50:30,045.045 INFO    ] No existing commands found in stream
[2026-06-05 13:50:35,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:50:35,074.074 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 13:50:36,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:50:36,383.383 INFO    ] Checking for system updates...
[2026-06-05 13:50:36,422.422 INFO    ] 200
[2026-06-05 13:50:36,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:36,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:50:36,487.487 INFO    ] No update needed
[2026-06-05 13:50:36,489.489 INFO    ] Checking for camera pi updates...
[2026-06-05 13:50:36,522.522 INFO    ] 200
[2026-06-05 13:50:36,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:36,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:50:36,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:50:36,616.616 INFO    ] No camera update needed
[2026-06-05 13:50:36,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:50:36,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:50:36,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:50:36,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:50:38,673.673 INFO    ] ================================================
[2026-06-05 13:50:38,689.689 INFO    ] Launching Daemon at Fri Jun  5 13:50:38 IST 2026
[2026-06-05 13:50:38,700.700 INFO    ] ================================================
[2026-06-05 13:50:39,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:50:39
[2026-06-05 13:50:39,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:50:40,154.154 INFO    ] Initializing speech engine...
[2026-06-05 13:50:40,172.172 INFO    ] 2026-06-05 13:50:40
[2026-06-05 13:50:40,439.439 INFO    ] 2026-06-05 13:50:40
[2026-06-05 13:50:40,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:50:41,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:50:41,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:50:41,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:50:41,309.309 INFO    ] time= 05/06/2026 13:50:41
[2026-06-05 13:50:41,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:50:41,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:50:41,577.577 INFO    ] No existing commands found in stream
[2026-06-05 13:50:46,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:50:46,590.590 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 13:50:49,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:50:49,287.287 INFO    ] Checking for system updates...
[2026-06-05 13:50:49,324.324 INFO    ] 200
[2026-06-05 13:50:49,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:49,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:50:49,381.381 INFO    ] No update needed
[2026-06-05 13:50:49,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 13:50:49,417.417 INFO    ] 200
[2026-06-05 13:50:49,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:50:49,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:50:49,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:50:49,513.513 INFO    ] No camera update needed
[2026-06-05 13:50:49,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:50:49,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:50:49,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:50:49,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:50:51,567.567 INFO    ] ================================================
[2026-06-05 13:50:51,582.582 INFO    ] Launching Daemon at Fri Jun  5 13:50:51 IST 2026
[2026-06-05 13:50:51,594.594 INFO    ] ================================================
[2026-06-05 13:50:52,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:50:52
[2026-06-05 13:50:52,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:50:53,033.033 INFO    ] Initializing speech engine...
[2026-06-05 13:50:53,043.043 INFO    ] 2026-06-05 13:50:53
[2026-06-05 13:50:53,329.329 INFO    ] 2026-06-05 13:50:53
[2026-06-05 13:50:53,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:50:53,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:50:53,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:50:53,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:50:53,812.812 INFO    ] time= 05/06/2026 13:50:53
[2026-06-05 13:50:53,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:50:53,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:50:54,023.023 INFO    ] No existing commands found in stream
[2026-06-05 13:50:59,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:50:59,052.052 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 13:51:02,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:51:02,449.449 INFO    ] Checking for system updates...
[2026-06-05 13:51:02,492.492 INFO    ] 200
[2026-06-05 13:51:02,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:02,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:51:02,563.563 INFO    ] No update needed
[2026-06-05 13:51:02,566.566 INFO    ] Checking for camera pi updates...
[2026-06-05 13:51:02,608.608 INFO    ] 200
[2026-06-05 13:51:02,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:02,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:51:02,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:51:02,699.699 INFO    ] No camera update needed
[2026-06-05 13:51:02,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:51:02,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:51:02,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:51:02,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:51:04,766.766 INFO    ] ================================================
[2026-06-05 13:51:04,782.782 INFO    ] Launching Daemon at Fri Jun  5 13:51:04 IST 2026
[2026-06-05 13:51:04,793.793 INFO    ] ================================================
[2026-06-05 13:51:05,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:51:05
[2026-06-05 13:51:05,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:51:06,256.256 INFO    ] Initializing speech engine...
[2026-06-05 13:51:06,267.267 INFO    ] 2026-06-05 13:51:06
[2026-06-05 13:51:06,531.531 INFO    ] 2026-06-05 13:51:06
[2026-06-05 13:51:06,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:51:06,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:51:06,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:51:06,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:51:06,931.931 INFO    ] time= 05/06/2026 13:51:06
[2026-06-05 13:51:06,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:51:06,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:51:07,054.054 INFO    ] No existing commands found in stream
[2026-06-05 13:51:12,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:51:12,069.069 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 13:51:13,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:51:13,587.587 INFO    ] Checking for system updates...
[2026-06-05 13:51:13,627.627 INFO    ] 200
[2026-06-05 13:51:13,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:13,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:51:13,686.686 INFO    ] No update needed
[2026-06-05 13:51:13,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 13:51:13,726.726 INFO    ] 200
[2026-06-05 13:51:13,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:13,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:51:13,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:51:13,832.832 INFO    ] No camera update needed
[2026-06-05 13:51:13,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:51:13,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:51:13,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:51:13,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:51:15,895.895 INFO    ] ================================================
[2026-06-05 13:51:15,913.913 INFO    ] Launching Daemon at Fri Jun  5 13:51:15 IST 2026
[2026-06-05 13:51:15,924.924 INFO    ] ================================================
[2026-06-05 13:51:16,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:51:16
[2026-06-05 13:51:17,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:51:17,545.545 INFO    ] Initializing speech engine...
[2026-06-05 13:51:17,560.560 INFO    ] 2026-06-05 13:51:17
[2026-06-05 13:51:17,839.839 INFO    ] 2026-06-05 13:51:17
[2026-06-05 13:51:17,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:51:18,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:51:18,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:51:18,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:51:18,382.382 INFO    ] time= 05/06/2026 13:51:18
[2026-06-05 13:51:18,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:51:18,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:51:18,556.556 INFO    ] No existing commands found in stream
[2026-06-05 13:51:23,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:51:23,573.573 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 13:51:25,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:51:25,935.935 INFO    ] Checking for system updates...
[2026-06-05 13:51:25,971.971 INFO    ] 200
[2026-06-05 13:51:25,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:26,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:51:26,028.028 INFO    ] No update needed
[2026-06-05 13:51:26,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 13:51:26,068.068 INFO    ] 200
[2026-06-05 13:51:26,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:26,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:51:26,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:51:26,259.259 INFO    ] No camera update needed
[2026-06-05 13:51:26,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:51:26,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:51:26,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:51:26,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:51:28,316.316 INFO    ] ================================================
[2026-06-05 13:51:28,332.332 INFO    ] Launching Daemon at Fri Jun  5 13:51:28 IST 2026
[2026-06-05 13:51:28,343.343 INFO    ] ================================================
[2026-06-05 13:51:28,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:51:28
[2026-06-05 13:51:29,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:51:29,826.826 INFO    ] Initializing speech engine...
[2026-06-05 13:51:29,838.838 INFO    ] 2026-06-05 13:51:29
[2026-06-05 13:51:30,119.119 INFO    ] 2026-06-05 13:51:30
[2026-06-05 13:51:30,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:51:30,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:51:30,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:51:30,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:51:30,548.548 INFO    ] time= 05/06/2026 13:51:30
[2026-06-05 13:51:30,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:51:30,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:51:30,749.749 INFO    ] No existing commands found in stream
[2026-06-05 13:51:35,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:51:35,788.788 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 13:51:36,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:51:36,309.309 INFO    ] Checking for system updates...
[2026-06-05 13:51:36,345.345 INFO    ] 200
[2026-06-05 13:51:36,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:36,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:51:36,406.406 INFO    ] No update needed
[2026-06-05 13:51:36,409.409 INFO    ] Checking for camera pi updates...
[2026-06-05 13:51:36,443.443 INFO    ] 200
[2026-06-05 13:51:36,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:36,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:51:36,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:51:36,535.535 INFO    ] No camera update needed
[2026-06-05 13:51:36,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:51:36,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:51:36,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:51:36,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:51:38,594.594 INFO    ] ================================================
[2026-06-05 13:51:38,611.611 INFO    ] Launching Daemon at Fri Jun  5 13:51:38 IST 2026
[2026-06-05 13:51:38,623.623 INFO    ] ================================================
[2026-06-05 13:51:39,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:51:39
[2026-06-05 13:51:39,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:51:40,253.253 INFO    ] Initializing speech engine...
[2026-06-05 13:51:40,264.264 INFO    ] 2026-06-05 13:51:40
[2026-06-05 13:51:40,532.532 INFO    ] 2026-06-05 13:51:40
[2026-06-05 13:51:40,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:51:41,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:51:41,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:51:41,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:51:41,562.562 INFO    ] time= 05/06/2026 13:51:41
[2026-06-05 13:51:41,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:51:41,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:51:41,701.701 INFO    ] No existing commands found in stream
[2026-06-05 13:51:46,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:51:46,718.718 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 13:51:48,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:51:48,794.794 INFO    ] Checking for system updates...
[2026-06-05 13:51:48,834.834 INFO    ] 200
[2026-06-05 13:51:48,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:48,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:51:48,900.900 INFO    ] No update needed
[2026-06-05 13:51:48,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 13:51:48,936.936 INFO    ] 200
[2026-06-05 13:51:48,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:51:48,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:51:49,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:51:49,030.030 INFO    ] No camera update needed
[2026-06-05 13:51:49,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:51:49,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:51:49,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:51:49,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:51:51,087.087 INFO    ] ================================================
[2026-06-05 13:51:51,103.103 INFO    ] Launching Daemon at Fri Jun  5 13:51:51 IST 2026
[2026-06-05 13:51:51,114.114 INFO    ] ================================================
[2026-06-05 13:51:51,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:51:51
[2026-06-05 13:51:52,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:51:52,544.544 INFO    ] Initializing speech engine...
[2026-06-05 13:51:52,554.554 INFO    ] 2026-06-05 13:51:52
[2026-06-05 13:51:52,825.825 INFO    ] 2026-06-05 13:51:52
[2026-06-05 13:51:52,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:51:53,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:51:53,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:51:53,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:51:53,666.666 INFO    ] time= 05/06/2026 13:51:53
[2026-06-05 13:51:53,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:51:53,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:51:53,879.879 INFO    ] No existing commands found in stream
[2026-06-05 13:51:58,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:51:58,908.908 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 13:52:02,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:52:02,601.601 INFO    ] Checking for system updates...
[2026-06-05 13:52:02,644.644 INFO    ] 200
[2026-06-05 13:52:02,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:02,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:52:02,722.722 INFO    ] No update needed
[2026-06-05 13:52:02,725.725 INFO    ] Checking for camera pi updates...
[2026-06-05 13:52:02,771.771 INFO    ] 200
[2026-06-05 13:52:02,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:02,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:52:02,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:52:02,862.862 INFO    ] No camera update needed
[2026-06-05 13:52:02,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:52:02,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:52:02,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:52:02,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:52:04,923.923 INFO    ] ================================================
[2026-06-05 13:52:04,941.941 INFO    ] Launching Daemon at Fri Jun  5 13:52:04 IST 2026
[2026-06-05 13:52:04,954.954 INFO    ] ================================================
[2026-06-05 13:52:05,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:52:05
[2026-06-05 13:52:06,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:52:06,411.411 INFO    ] Initializing speech engine...
[2026-06-05 13:52:06,422.422 INFO    ] 2026-06-05 13:52:06
[2026-06-05 13:52:06,726.726 INFO    ] 2026-06-05 13:52:06
[2026-06-05 13:52:06,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:52:06,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:52:06,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:52:07,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:52:07,104.104 INFO    ] time= 05/06/2026 13:52:07
[2026-06-05 13:52:07,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:52:07,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:52:07,228.228 INFO    ] No existing commands found in stream
[2026-06-05 13:52:12,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:52:12,244.244 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 13:52:12,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:52:12,700.700 INFO    ] Checking for system updates...
[2026-06-05 13:52:12,740.740 INFO    ] 200
[2026-06-05 13:52:12,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:12,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:52:12,797.797 INFO    ] No update needed
[2026-06-05 13:52:12,799.799 INFO    ] Checking for camera pi updates...
[2026-06-05 13:52:12,836.836 INFO    ] 200
[2026-06-05 13:52:12,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:12,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:52:12,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:52:12,933.933 INFO    ] No camera update needed
[2026-06-05 13:52:12,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:52:12,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:52:12,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:52:12,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:52:14,989.989 INFO    ] ================================================
[2026-06-05 13:52:15,004.004 INFO    ] Launching Daemon at Fri Jun  5 13:52:14 IST 2026
[2026-06-05 13:52:15,015.015 INFO    ] ================================================
[2026-06-05 13:52:15,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:52:15
[2026-06-05 13:52:16,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:52:16,675.675 INFO    ] Initializing speech engine...
[2026-06-05 13:52:16,688.688 INFO    ] 2026-06-05 13:52:16
[2026-06-05 13:52:17,000.000 INFO    ] 2026-06-05 13:52:16
[2026-06-05 13:52:17,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:52:17,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:52:17,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:52:17,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:52:17,507.507 INFO    ] time= 05/06/2026 13:52:17
[2026-06-05 13:52:17,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:52:17,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:52:17,663.663 INFO    ] No existing commands found in stream
[2026-06-05 13:52:22,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:52:22,686.686 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 13:52:24,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:52:24,821.821 INFO    ] Checking for system updates...
[2026-06-05 13:52:24,862.862 INFO    ] 200
[2026-06-05 13:52:24,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:24,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:52:24,922.922 INFO    ] No update needed
[2026-06-05 13:52:24,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 13:52:24,963.963 INFO    ] 200
[2026-06-05 13:52:24,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:25,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:52:25,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:52:25,061.061 INFO    ] No camera update needed
[2026-06-05 13:52:25,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:52:25,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:52:25,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:52:25,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:52:27,120.120 INFO    ] ================================================
[2026-06-05 13:52:27,135.135 INFO    ] Launching Daemon at Fri Jun  5 13:52:27 IST 2026
[2026-06-05 13:52:27,146.146 INFO    ] ================================================
[2026-06-05 13:52:27,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:52:27
[2026-06-05 13:52:28,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:52:28,791.791 INFO    ] Initializing speech engine...
[2026-06-05 13:52:28,799.799 INFO    ] 2026-06-05 13:52:28
[2026-06-05 13:52:29,094.094 INFO    ] 2026-06-05 13:52:29
[2026-06-05 13:52:29,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:52:29,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:52:29,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:52:29,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:52:29,627.627 INFO    ] time= 05/06/2026 13:52:29
[2026-06-05 13:52:29,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:52:29,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:52:29,783.783 INFO    ] No existing commands found in stream
[2026-06-05 13:52:34,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:52:34,821.821 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-05 13:52:41,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:52:41,366.366 INFO    ] Checking for system updates...
[2026-06-05 13:52:41,405.405 INFO    ] 200
[2026-06-05 13:52:41,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:41,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:52:41,477.477 INFO    ] No update needed
[2026-06-05 13:52:41,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 13:52:41,537.537 INFO    ] 200
[2026-06-05 13:52:41,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:41,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:52:41,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:52:41,651.651 INFO    ] No camera update needed
[2026-06-05 13:52:41,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:52:41,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:52:41,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:52:41,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:52:43,711.711 INFO    ] ================================================
[2026-06-05 13:52:43,727.727 INFO    ] Launching Daemon at Fri Jun  5 13:52:43 IST 2026
[2026-06-05 13:52:43,738.738 INFO    ] ================================================
[2026-06-05 13:52:44,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:52:44
[2026-06-05 13:52:44,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:52:45,200.200 INFO    ] Initializing speech engine...
[2026-06-05 13:52:45,207.207 INFO    ] 2026-06-05 13:52:45
[2026-06-05 13:52:45,499.499 INFO    ] 2026-06-05 13:52:45
[2026-06-05 13:52:45,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:52:45,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:52:45,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:52:45,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:52:45,964.964 INFO    ] time= 05/06/2026 13:52:45
[2026-06-05 13:52:46,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:52:46,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:52:46,203.203 INFO    ] No existing commands found in stream
[2026-06-05 13:52:51,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:52:51,222.222 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 13:52:52,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:52:52,518.518 INFO    ] Checking for system updates...
[2026-06-05 13:52:52,558.558 INFO    ] 200
[2026-06-05 13:52:52,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:52,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:52:52,624.624 INFO    ] No update needed
[2026-06-05 13:52:52,628.628 INFO    ] Checking for camera pi updates...
[2026-06-05 13:52:52,664.664 INFO    ] 200
[2026-06-05 13:52:52,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:52:52,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:52:52,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:52:52,762.762 INFO    ] No camera update needed
[2026-06-05 13:52:52,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:52:52,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:52:52,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:52:52,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:52:54,821.821 INFO    ] ================================================
[2026-06-05 13:52:54,837.837 INFO    ] Launching Daemon at Fri Jun  5 13:52:54 IST 2026
[2026-06-05 13:52:54,848.848 INFO    ] ================================================
[2026-06-05 13:52:55,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:52:55
[2026-06-05 13:52:56,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:52:56,430.430 INFO    ] Initializing speech engine...
[2026-06-05 13:52:56,443.443 INFO    ] 2026-06-05 13:52:56
[2026-06-05 13:52:56,722.722 INFO    ] 2026-06-05 13:52:56
[2026-06-05 13:52:56,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:52:56,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:52:57,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:52:57,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:52:57,207.207 INFO    ] time= 05/06/2026 13:52:57
[2026-06-05 13:52:57,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:52:57,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:52:57,428.428 INFO    ] No existing commands found in stream
[2026-06-05 13:53:02,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:53:02,512.512 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 13:53:03,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:53:03,683.683 INFO    ] Checking for system updates...
[2026-06-05 13:53:03,728.728 INFO    ] 200
[2026-06-05 13:53:03,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:03,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:53:03,796.796 INFO    ] No update needed
[2026-06-05 13:53:03,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 13:53:03,833.833 INFO    ] 200
[2026-06-05 13:53:03,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:03,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:53:03,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:53:03,927.927 INFO    ] No camera update needed
[2026-06-05 13:53:03,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:53:03,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:53:03,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:53:03,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:53:05,985.985 INFO    ] ================================================
[2026-06-05 13:53:06,001.001 INFO    ] Launching Daemon at Fri Jun  5 13:53:05 IST 2026
[2026-06-05 13:53:06,012.012 INFO    ] ================================================
[2026-06-05 13:53:06,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:53:06
[2026-06-05 13:53:07,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:53:07,484.484 INFO    ] Initializing speech engine...
[2026-06-05 13:53:07,573.573 INFO    ] 2026-06-05 13:53:07
[2026-06-05 13:53:07,880.880 INFO    ] 2026-06-05 13:53:07
[2026-06-05 13:53:07,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:53:08,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:53:08,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:53:08,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:53:08,317.317 INFO    ] time= 05/06/2026 13:53:08
[2026-06-05 13:53:08,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:53:08,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:53:08,464.464 INFO    ] No existing commands found in stream
[2026-06-05 13:53:13,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:53:13,489.489 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 13:53:14,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:53:14,119.119 INFO    ] Checking for system updates...
[2026-06-05 13:53:14,155.155 INFO    ] 200
[2026-06-05 13:53:14,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:14,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:53:14,215.215 INFO    ] No update needed
[2026-06-05 13:53:14,217.217 INFO    ] Checking for camera pi updates...
[2026-06-05 13:53:14,252.252 INFO    ] 200
[2026-06-05 13:53:14,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:14,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:53:14,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:53:14,346.346 INFO    ] No camera update needed
[2026-06-05 13:53:14,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:53:14,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:53:14,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:53:14,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:53:16,404.404 INFO    ] ================================================
[2026-06-05 13:53:16,426.426 INFO    ] Launching Daemon at Fri Jun  5 13:53:16 IST 2026
[2026-06-05 13:53:16,438.438 INFO    ] ================================================
[2026-06-05 13:53:17,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:53:17
[2026-06-05 13:53:17,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:53:18,094.094 INFO    ] Initializing speech engine...
[2026-06-05 13:53:18,102.102 INFO    ] 2026-06-05 13:53:18
[2026-06-05 13:53:18,394.394 INFO    ] 2026-06-05 13:53:18
[2026-06-05 13:53:18,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:53:18,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:53:18,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:53:18,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:53:18,948.948 INFO    ] time= 05/06/2026 13:53:18
[2026-06-05 13:53:18,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:53:18,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:53:19,113.113 INFO    ] No existing commands found in stream
[2026-06-05 13:53:24,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:53:24,583.583 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 13:53:26,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:53:26,646.646 INFO    ] Checking for system updates...
[2026-06-05 13:53:26,683.683 INFO    ] 200
[2026-06-05 13:53:26,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:26,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:53:26,744.744 INFO    ] No update needed
[2026-06-05 13:53:26,747.747 INFO    ] Checking for camera pi updates...
[2026-06-05 13:53:26,786.786 INFO    ] 200
[2026-06-05 13:53:26,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:26,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:53:26,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:53:26,880.880 INFO    ] No camera update needed
[2026-06-05 13:53:26,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:53:26,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:53:26,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:53:26,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:53:28,941.941 INFO    ] ================================================
[2026-06-05 13:53:28,958.958 INFO    ] Launching Daemon at Fri Jun  5 13:53:28 IST 2026
[2026-06-05 13:53:28,969.969 INFO    ] ================================================
[2026-06-05 13:53:29,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:53:29
[2026-06-05 13:53:30,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:53:30,393.393 INFO    ] Initializing speech engine...
[2026-06-05 13:53:30,416.416 INFO    ] 2026-06-05 13:53:30
[2026-06-05 13:53:30,673.673 INFO    ] 2026-06-05 13:53:30
[2026-06-05 13:53:30,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:53:30,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:53:30,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:53:31,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:53:31,051.051 INFO    ] time= 05/06/2026 13:53:31
[2026-06-05 13:53:31,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:53:31,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:53:31,224.224 INFO    ] No existing commands found in stream
[2026-06-05 13:53:36,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:53:36,258.258 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 13:53:37,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:53:37,980.980 INFO    ] Checking for system updates...
[2026-06-05 13:53:38,018.018 INFO    ] 200
[2026-06-05 13:53:38,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:38,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:53:38,086.086 INFO    ] No update needed
[2026-06-05 13:53:38,089.089 INFO    ] Checking for camera pi updates...
[2026-06-05 13:53:38,124.124 INFO    ] 200
[2026-06-05 13:53:38,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:38,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:53:38,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:53:38,215.215 INFO    ] No camera update needed
[2026-06-05 13:53:38,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:53:38,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:53:38,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:53:38,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:53:40,276.276 INFO    ] ================================================
[2026-06-05 13:53:40,291.291 INFO    ] Launching Daemon at Fri Jun  5 13:53:40 IST 2026
[2026-06-05 13:53:40,303.303 INFO    ] ================================================
[2026-06-05 13:53:40,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:53:40
[2026-06-05 13:53:41,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:53:41,881.881 INFO    ] Initializing speech engine...
[2026-06-05 13:53:41,890.890 INFO    ] 2026-06-05 13:53:41
[2026-06-05 13:53:42,151.151 INFO    ] 2026-06-05 13:53:42
[2026-06-05 13:53:42,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:53:42,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:53:42,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:53:42,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:53:42,517.517 INFO    ] time= 05/06/2026 13:53:42
[2026-06-05 13:53:42,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:53:42,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:53:42,694.694 INFO    ] No existing commands found in stream
[2026-06-05 13:53:47,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:53:47,726.726 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 13:53:50,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:53:50,713.713 INFO    ] Checking for system updates...
[2026-06-05 13:53:50,753.753 INFO    ] 200
[2026-06-05 13:53:50,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:50,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:53:50,811.811 INFO    ] No update needed
[2026-06-05 13:53:50,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 13:53:50,848.848 INFO    ] 200
[2026-06-05 13:53:50,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:53:50,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:53:50,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:53:50,939.939 INFO    ] No camera update needed
[2026-06-05 13:53:50,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:53:50,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:53:50,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:53:50,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:53:53,997.997 INFO    ] ================================================
[2026-06-05 13:53:53,013.013 INFO    ] Launching Daemon at Fri Jun  5 13:53:53 IST 2026
[2026-06-05 13:53:53,024.024 INFO    ] ================================================
[2026-06-05 13:53:53,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:53:53
[2026-06-05 13:53:54,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:53:54,470.470 INFO    ] Initializing speech engine...
[2026-06-05 13:53:54,476.476 INFO    ] 2026-06-05 13:53:54
[2026-06-05 13:53:54,772.772 INFO    ] 2026-06-05 13:53:54
[2026-06-05 13:53:54,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:53:55,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:53:55,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:53:55,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:53:55,240.240 INFO    ] time= 05/06/2026 13:53:55
[2026-06-05 13:53:55,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:53:55,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:53:55,630.630 INFO    ] No existing commands found in stream
[2026-06-05 13:54:00,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:54:00,664.664 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-05 13:54:01,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:54:01,116.116 INFO    ] Checking for system updates...
[2026-06-05 13:54:01,152.152 INFO    ] 200
[2026-06-05 13:54:01,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:01,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:54:01,210.210 INFO    ] No update needed
[2026-06-05 13:54:01,213.213 INFO    ] Checking for camera pi updates...
[2026-06-05 13:54:01,247.247 INFO    ] 200
[2026-06-05 13:54:01,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:01,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:54:01,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:54:01,325.325 INFO    ] No camera update needed
[2026-06-05 13:54:01,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:54:01,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:54:01,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:54:01,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:54:03,383.383 INFO    ] ================================================
[2026-06-05 13:54:03,398.398 INFO    ] Launching Daemon at Fri Jun  5 13:54:03 IST 2026
[2026-06-05 13:54:03,409.409 INFO    ] ================================================
[2026-06-05 13:54:04,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:54:04
[2026-06-05 13:54:04,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:54:04,967.967 INFO    ] Initializing speech engine...
[2026-06-05 13:54:04,975.975 INFO    ] 2026-06-05 13:54:04
[2026-06-05 13:54:05,228.228 INFO    ] 2026-06-05 13:54:05
[2026-06-05 13:54:05,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:54:05,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:54:05,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:54:05,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:54:05,725.725 INFO    ] time= 05/06/2026 13:54:05
[2026-06-05 13:54:05,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:54:05,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:54:05,936.936 INFO    ] No existing commands found in stream
[2026-06-05 13:54:10,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:54:10,964.964 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 13:54:13,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:54:13,365.365 INFO    ] Checking for system updates...
[2026-06-05 13:54:13,401.401 INFO    ] 200
[2026-06-05 13:54:13,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:13,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:54:13,460.460 INFO    ] No update needed
[2026-06-05 13:54:13,463.463 INFO    ] Checking for camera pi updates...
[2026-06-05 13:54:13,497.497 INFO    ] 200
[2026-06-05 13:54:13,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:13,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:54:13,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:54:13,585.585 INFO    ] No camera update needed
[2026-06-05 13:54:13,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:54:13,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:54:13,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:54:13,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:54:15,648.648 INFO    ] ================================================
[2026-06-05 13:54:15,663.663 INFO    ] Launching Daemon at Fri Jun  5 13:54:15 IST 2026
[2026-06-05 13:54:15,674.674 INFO    ] ================================================
[2026-06-05 13:54:16,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:54:16
[2026-06-05 13:54:16,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:54:17,149.149 INFO    ] Initializing speech engine...
[2026-06-05 13:54:17,170.170 INFO    ] 2026-06-05 13:54:17
[2026-06-05 13:54:17,431.431 INFO    ] 2026-06-05 13:54:17
[2026-06-05 13:54:17,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:54:17,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:54:17,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:54:17,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:54:17,891.891 INFO    ] time= 05/06/2026 13:54:17
[2026-06-05 13:54:17,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:54:18,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:54:18,145.145 INFO    ] No existing commands found in stream
[2026-06-05 13:54:23,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:54:23,171.171 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 13:54:24,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:54:24,103.103 INFO    ] Checking for system updates...
[2026-06-05 13:54:24,139.139 INFO    ] 200
[2026-06-05 13:54:24,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:24,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:54:24,197.197 INFO    ] No update needed
[2026-06-05 13:54:24,200.200 INFO    ] Checking for camera pi updates...
[2026-06-05 13:54:24,234.234 INFO    ] 200
[2026-06-05 13:54:24,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:24,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:54:24,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:54:24,320.320 INFO    ] No camera update needed
[2026-06-05 13:54:24,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:54:24,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:54:24,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:54:24,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:54:26,381.381 INFO    ] ================================================
[2026-06-05 13:54:26,398.398 INFO    ] Launching Daemon at Fri Jun  5 13:54:26 IST 2026
[2026-06-05 13:54:26,409.409 INFO    ] ================================================
[2026-06-05 13:54:27,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:54:27
[2026-06-05 13:54:27,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:54:27,949.949 INFO    ] Initializing speech engine...
[2026-06-05 13:54:27,963.963 INFO    ] 2026-06-05 13:54:27
[2026-06-05 13:54:28,234.234 INFO    ] 2026-06-05 13:54:28
[2026-06-05 13:54:28,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:54:28,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:54:28,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:54:28,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:54:28,729.729 INFO    ] time= 05/06/2026 13:54:28
[2026-06-05 13:54:28,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:54:28,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:54:28,939.939 INFO    ] No existing commands found in stream
[2026-06-05 13:54:33,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:54:33,964.964 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 13:54:35,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:54:35,772.772 INFO    ] Checking for system updates...
[2026-06-05 13:54:35,808.808 INFO    ] 200
[2026-06-05 13:54:35,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:35,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:54:35,868.868 INFO    ] No update needed
[2026-06-05 13:54:35,871.871 INFO    ] Checking for camera pi updates...
[2026-06-05 13:54:35,908.908 INFO    ] 200
[2026-06-05 13:54:35,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:35,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:54:35,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:54:35,999.999 INFO    ] No camera update needed
[2026-06-05 13:54:36,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:54:36,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:54:36,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:54:36,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:54:38,058.058 INFO    ] ================================================
[2026-06-05 13:54:38,074.074 INFO    ] Launching Daemon at Fri Jun  5 13:54:38 IST 2026
[2026-06-05 13:54:38,085.085 INFO    ] ================================================
[2026-06-05 13:54:38,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:54:38
[2026-06-05 13:54:39,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:54:39,753.753 INFO    ] Initializing speech engine...
[2026-06-05 13:54:39,767.767 INFO    ] 2026-06-05 13:54:39
[2026-06-05 13:54:40,052.052 INFO    ] 2026-06-05 13:54:40
[2026-06-05 13:54:40,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:54:40,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:54:40,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:54:40,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:54:40,600.600 INFO    ] time= 05/06/2026 13:54:40
[2026-06-05 13:54:40,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:54:40,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:54:40,788.788 INFO    ] No existing commands found in stream
[2026-06-05 13:54:45,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:54:45,816.816 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 13:54:46,534.534 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:54:46,538.538 INFO    ] Checking for system updates...
[2026-06-05 13:54:46,574.574 INFO    ] 200
[2026-06-05 13:54:46,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:46,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:54:46,632.632 INFO    ] No update needed
[2026-06-05 13:54:46,634.634 INFO    ] Checking for camera pi updates...
[2026-06-05 13:54:46,668.668 INFO    ] 200
[2026-06-05 13:54:46,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:46,716.716 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:54:46,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:54:46,760.760 INFO    ] No camera update needed
[2026-06-05 13:54:46,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:54:46,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:54:46,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:54:46,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:54:48,816.816 INFO    ] ================================================
[2026-06-05 13:54:48,832.832 INFO    ] Launching Daemon at Fri Jun  5 13:54:48 IST 2026
[2026-06-05 13:54:48,844.844 INFO    ] ================================================
[2026-06-05 13:54:49,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:54:49
[2026-06-05 13:54:50,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:54:50,316.316 INFO    ] Initializing speech engine...
[2026-06-05 13:54:50,329.329 INFO    ] 2026-06-05 13:54:50
[2026-06-05 13:54:50,616.616 INFO    ] 2026-06-05 13:54:50
[2026-06-05 13:54:50,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:54:50,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:54:50,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:54:51,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:54:51,083.083 INFO    ] time= 05/06/2026 13:54:51
[2026-06-05 13:54:51,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:54:51,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:54:51,313.313 INFO    ] No existing commands found in stream
[2026-06-05 13:54:56,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:54:56,346.346 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 13:54:58,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:54:58,525.525 INFO    ] Checking for system updates...
[2026-06-05 13:54:58,563.563 INFO    ] 200
[2026-06-05 13:54:58,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:58,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:54:58,622.622 INFO    ] No update needed
[2026-06-05 13:54:58,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 13:54:58,663.663 INFO    ] 200
[2026-06-05 13:54:58,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:54:58,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:54:58,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:54:58,762.762 INFO    ] No camera update needed
[2026-06-05 13:54:58,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:54:58,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:54:58,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:54:58,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:55:00,816.816 INFO    ] ================================================
[2026-06-05 13:55:00,833.833 INFO    ] Launching Daemon at Fri Jun  5 13:55:00 IST 2026
[2026-06-05 13:55:00,844.844 INFO    ] ================================================
[2026-06-05 13:55:01,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:55:01
[2026-06-05 13:55:02,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:55:02,828.828 INFO    ] Initializing speech engine...
[2026-06-05 13:55:02,839.839 INFO    ] 2026-06-05 13:55:02
[2026-06-05 13:55:03,169.169 INFO    ] 2026-06-05 13:55:03
[2026-06-05 13:55:03,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:55:03,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:55:03,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:55:03,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:55:03,649.649 INFO    ] time= 05/06/2026 13:55:03
[2026-06-05 13:55:03,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:55:03,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:55:03,864.864 INFO    ] No existing commands found in stream
[2026-06-05 13:55:08,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:55:08,891.891 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 13:55:10,380.380 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:55:10,383.383 INFO    ] Checking for system updates...
[2026-06-05 13:55:10,421.421 INFO    ] 200
[2026-06-05 13:55:10,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:55:10,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:55:10,493.493 INFO    ] No update needed
[2026-06-05 13:55:10,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 13:55:10,535.535 INFO    ] 200
[2026-06-05 13:55:10,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:55:10,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:55:10,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:55:10,625.625 INFO    ] No camera update needed
[2026-06-05 13:55:10,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:55:10,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:55:10,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:55:10,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:55:12,681.681 INFO    ] ================================================
[2026-06-05 13:55:12,696.696 INFO    ] Launching Daemon at Fri Jun  5 13:55:12 IST 2026
[2026-06-05 13:55:12,707.707 INFO    ] ================================================
[2026-06-05 13:55:13,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:55:13
[2026-06-05 13:55:13,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:55:14,122.122 INFO    ] Initializing speech engine...
[2026-06-05 13:55:14,135.135 INFO    ] 2026-06-05 13:55:14
[2026-06-05 13:55:14,396.396 INFO    ] 2026-06-05 13:55:14
[2026-06-05 13:55:14,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:55:14,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:55:14,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:55:14,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:55:14,963.963 INFO    ] time= 05/06/2026 13:55:14
[2026-06-05 13:55:14,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:55:14,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:55:15,139.139 INFO    ] No existing commands found in stream
[2026-06-05 13:55:20,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:55:20,174.174 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 13:55:23,892.892 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:55:23,894.894 INFO    ] Checking for system updates...
[2026-06-05 13:55:23,935.935 INFO    ] 200
[2026-06-05 13:55:23,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:55:23,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:55:23,992.992 INFO    ] No update needed
[2026-06-05 13:55:23,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 13:55:24,028.028 INFO    ] 200
[2026-06-05 13:55:24,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:55:24,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:55:24,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:55:24,116.116 INFO    ] No camera update needed
[2026-06-05 13:55:24,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:55:24,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:55:24,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:55:24,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:55:26,173.173 INFO    ] ================================================
[2026-06-05 13:55:26,188.188 INFO    ] Launching Daemon at Fri Jun  5 13:55:26 IST 2026
[2026-06-05 13:55:26,199.199 INFO    ] ================================================
[2026-06-05 13:55:26,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:55:26
[2026-06-05 13:55:27,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:55:27,853.853 INFO    ] Initializing speech engine...
[2026-06-05 13:55:27,864.864 INFO    ] 2026-06-05 13:55:27
[2026-06-05 13:55:28,142.142 INFO    ] 2026-06-05 13:55:28
[2026-06-05 13:55:28,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:55:28,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:55:28,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:55:28,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:55:28,674.674 INFO    ] time= 05/06/2026 13:55:28
[2026-06-05 13:55:28,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:55:28,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:55:28,830.830 INFO    ] No existing commands found in stream
[2026-06-05 13:55:33,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:55:33,849.849 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 13:55:35,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:55:35,647.647 INFO    ] Checking for system updates...
[2026-06-05 13:55:35,685.685 INFO    ] 200
[2026-06-05 13:55:35,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:55:35,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:55:35,748.748 INFO    ] No update needed
[2026-06-05 13:55:35,751.751 INFO    ] Checking for camera pi updates...
[2026-06-05 13:55:35,786.786 INFO    ] 200
[2026-06-05 13:55:35,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:55:35,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:55:35,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:55:35,993.993 INFO    ] No camera update needed
[2026-06-05 13:55:35,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:55:35,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:55:36,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:55:36,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:55:38,056.056 INFO    ] ================================================
[2026-06-05 13:55:38,071.071 INFO    ] Launching Daemon at Fri Jun  5 13:55:38 IST 2026
[2026-06-05 13:55:38,082.082 INFO    ] ================================================
[2026-06-05 13:55:38,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:55:38
[2026-06-05 13:55:39,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:55:39,547.547 INFO    ] Initializing speech engine...
[2026-06-05 13:55:39,555.555 INFO    ] 2026-06-05 13:55:39
[2026-06-05 13:55:39,830.830 INFO    ] 2026-06-05 13:55:39
[2026-06-05 13:55:39,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:55:40,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:55:40,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:55:40,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:55:40,212.212 INFO    ] time= 05/06/2026 13:55:40
[2026-06-05 13:55:40,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:55:40,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:55:40,374.374 INFO    ] No existing commands found in stream
[2026-06-05 13:55:45,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:55:45,401.401 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 13:55:49,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:55:49,068.068 INFO    ] Checking for system updates...
[2026-06-05 13:55:49,106.106 INFO    ] 200
[2026-06-05 13:55:49,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:55:49,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:55:49,177.177 INFO    ] No update needed
[2026-06-05 13:55:49,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 13:55:49,219.219 INFO    ] 200
[2026-06-05 13:55:49,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:55:49,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:55:49,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:55:49,313.313 INFO    ] No camera update needed
[2026-06-05 13:55:49,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:55:49,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:55:49,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:55:49,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:55:51,372.372 INFO    ] ================================================
[2026-06-05 13:55:51,388.388 INFO    ] Launching Daemon at Fri Jun  5 13:55:51 IST 2026
[2026-06-05 13:55:51,399.399 INFO    ] ================================================
[2026-06-05 13:55:52,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:55:52
[2026-06-05 13:55:52,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:55:53,020.020 INFO    ] Initializing speech engine...
[2026-06-05 13:55:53,028.028 INFO    ] 2026-06-05 13:55:53
[2026-06-05 13:55:53,345.345 INFO    ] 2026-06-05 13:55:53
[2026-06-05 13:55:53,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:55:53,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:55:53,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:55:53,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:55:53,854.854 INFO    ] time= 05/06/2026 13:55:53
[2026-06-05 13:55:53,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:55:53,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:55:54,009.009 INFO    ] No existing commands found in stream
[2026-06-05 13:55:59,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:55:59,037.037 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 13:56:02,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:56:02,276.276 INFO    ] Checking for system updates...
[2026-06-05 13:56:02,326.326 INFO    ] 200
[2026-06-05 13:56:02,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:02,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:56:02,417.417 INFO    ] No update needed
[2026-06-05 13:56:02,421.421 INFO    ] Checking for camera pi updates...
[2026-06-05 13:56:02,467.467 INFO    ] 200
[2026-06-05 13:56:02,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:02,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:56:02,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:56:02,571.571 INFO    ] No camera update needed
[2026-06-05 13:56:02,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:56:02,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:56:02,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:56:02,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:56:04,637.637 INFO    ] ================================================
[2026-06-05 13:56:04,652.652 INFO    ] Launching Daemon at Fri Jun  5 13:56:04 IST 2026
[2026-06-05 13:56:04,663.663 INFO    ] ================================================
[2026-06-05 13:56:05,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:56:05
[2026-06-05 13:56:05,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:56:06,124.124 INFO    ] Initializing speech engine...
[2026-06-05 13:56:06,132.132 INFO    ] 2026-06-05 13:56:06
[2026-06-05 13:56:06,432.432 INFO    ] 2026-06-05 13:56:06
[2026-06-05 13:56:06,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:56:06,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:56:06,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:56:06,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:56:06,791.791 INFO    ] time= 05/06/2026 13:56:06
[2026-06-05 13:56:06,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:56:06,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:56:06,918.918 INFO    ] No existing commands found in stream
[2026-06-05 13:56:11,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:56:11,930.930 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 13:56:15,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:56:15,009.009 INFO    ] Checking for system updates...
[2026-06-05 13:56:15,047.047 INFO    ] 200
[2026-06-05 13:56:15,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:15,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:56:15,116.116 INFO    ] No update needed
[2026-06-05 13:56:15,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 13:56:15,157.157 INFO    ] 200
[2026-06-05 13:56:15,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:15,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:56:15,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:56:15,252.252 INFO    ] No camera update needed
[2026-06-05 13:56:15,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:56:15,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:56:15,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:56:15,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:56:17,309.309 INFO    ] ================================================
[2026-06-05 13:56:17,324.324 INFO    ] Launching Daemon at Fri Jun  5 13:56:17 IST 2026
[2026-06-05 13:56:17,336.336 INFO    ] ================================================
[2026-06-05 13:56:17,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:56:17
[2026-06-05 13:56:18,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:56:18,758.758 INFO    ] Initializing speech engine...
[2026-06-05 13:56:18,781.781 INFO    ] 2026-06-05 13:56:18
[2026-06-05 13:56:19,040.040 INFO    ] 2026-06-05 13:56:19
[2026-06-05 13:56:19,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:56:19,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:56:19,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:56:19,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:56:19,612.612 INFO    ] time= 05/06/2026 13:56:19
[2026-06-05 13:56:19,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:56:19,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:56:19,770.770 INFO    ] No existing commands found in stream
[2026-06-05 13:56:24,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:56:24,790.790 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 13:56:26,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:56:26,026.026 INFO    ] Checking for system updates...
[2026-06-05 13:56:26,063.063 INFO    ] 200
[2026-06-05 13:56:26,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:26,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:56:26,128.128 INFO    ] No update needed
[2026-06-05 13:56:26,130.130 INFO    ] Checking for camera pi updates...
[2026-06-05 13:56:26,168.168 INFO    ] 200
[2026-06-05 13:56:26,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:26,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:56:26,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:56:26,296.296 INFO    ] No camera update needed
[2026-06-05 13:56:26,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:56:26,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:56:26,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:56:26,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:56:28,354.354 INFO    ] ================================================
[2026-06-05 13:56:28,369.369 INFO    ] Launching Daemon at Fri Jun  5 13:56:28 IST 2026
[2026-06-05 13:56:28,380.380 INFO    ] ================================================
[2026-06-05 13:56:28,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:56:28
[2026-06-05 13:56:29,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:56:29,840.840 INFO    ] Initializing speech engine...
[2026-06-05 13:56:29,857.857 INFO    ] 2026-06-05 13:56:29
[2026-06-05 13:56:30,151.151 INFO    ] 2026-06-05 13:56:30
[2026-06-05 13:56:30,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:56:30,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:56:30,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:56:31,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:56:31,778.778 INFO    ] time= 05/06/2026 13:56:31
[2026-06-05 13:56:31,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:56:31,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:56:31,868.868 INFO    ] No existing commands found in stream
[2026-06-05 13:56:36,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:56:36,882.882 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 13:56:38,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:56:38,646.646 INFO    ] Checking for system updates...
[2026-06-05 13:56:38,682.682 INFO    ] 200
[2026-06-05 13:56:38,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:38,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:56:38,739.739 INFO    ] No update needed
[2026-06-05 13:56:38,741.741 INFO    ] Checking for camera pi updates...
[2026-06-05 13:56:38,776.776 INFO    ] 200
[2026-06-05 13:56:38,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:38,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:56:38,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:56:38,870.870 INFO    ] No camera update needed
[2026-06-05 13:56:38,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:56:38,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:56:38,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:56:38,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:56:40,927.927 INFO    ] ================================================
[2026-06-05 13:56:40,942.942 INFO    ] Launching Daemon at Fri Jun  5 13:56:40 IST 2026
[2026-06-05 13:56:40,953.953 INFO    ] ================================================
[2026-06-05 13:56:41,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:56:41
[2026-06-05 13:56:42,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:56:42,401.401 INFO    ] Initializing speech engine...
[2026-06-05 13:56:42,414.414 INFO    ] 2026-06-05 13:56:42
[2026-06-05 13:56:42,703.703 INFO    ] 2026-06-05 13:56:42
[2026-06-05 13:56:42,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:56:44,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:56:44,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:56:44,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:56:44,730.730 INFO    ] time= 05/06/2026 13:56:44
[2026-06-05 13:56:44,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:56:44,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:56:44,822.822 INFO    ] No existing commands found in stream
[2026-06-05 13:56:49,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:56:49,837.837 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 13:56:51,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:56:51,268.268 INFO    ] Checking for system updates...
[2026-06-05 13:56:51,304.304 INFO    ] 200
[2026-06-05 13:56:51,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:51,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:56:51,372.372 INFO    ] No update needed
[2026-06-05 13:56:51,374.374 INFO    ] Checking for camera pi updates...
[2026-06-05 13:56:51,412.412 INFO    ] 200
[2026-06-05 13:56:51,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:56:51,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:56:51,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:56:51,517.517 INFO    ] No camera update needed
[2026-06-05 13:56:51,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:56:51,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:56:51,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:56:51,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:56:53,573.573 INFO    ] ================================================
[2026-06-05 13:56:53,589.589 INFO    ] Launching Daemon at Fri Jun  5 13:56:53 IST 2026
[2026-06-05 13:56:53,599.599 INFO    ] ================================================
[2026-06-05 13:56:54,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:56:54
[2026-06-05 13:56:54,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:56:55,258.258 INFO    ] Initializing speech engine...
[2026-06-05 13:56:55,263.263 INFO    ] 2026-06-05 13:56:55
[2026-06-05 13:56:55,574.574 INFO    ] 2026-06-05 13:56:55
[2026-06-05 13:56:55,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:56:55,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:56:55,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:56:56,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:56:56,086.086 INFO    ] time= 05/06/2026 13:56:56
[2026-06-05 13:56:56,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:56:56,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:56:56,272.272 INFO    ] No existing commands found in stream
[2026-06-05 13:57:01,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:57:01,307.307 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 13:57:03,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:57:03,048.048 INFO    ] Checking for system updates...
[2026-06-05 13:57:03,084.084 INFO    ] 200
[2026-06-05 13:57:03,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:03,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:57:03,145.145 INFO    ] No update needed
[2026-06-05 13:57:03,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 13:57:03,186.186 INFO    ] 200
[2026-06-05 13:57:03,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:03,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:57:03,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:57:03,277.277 INFO    ] No camera update needed
[2026-06-05 13:57:03,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:57:03,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:57:03,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:57:03,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:57:05,337.337 INFO    ] ================================================
[2026-06-05 13:57:05,352.352 INFO    ] Launching Daemon at Fri Jun  5 13:57:05 IST 2026
[2026-06-05 13:57:05,362.362 INFO    ] ================================================
[2026-06-05 13:57:06,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:57:06
[2026-06-05 13:57:06,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:57:07,020.020 INFO    ] Initializing speech engine...
[2026-06-05 13:57:07,032.032 INFO    ] 2026-06-05 13:57:07
[2026-06-05 13:57:07,305.305 INFO    ] 2026-06-05 13:57:07
[2026-06-05 13:57:07,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:57:07,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:57:07,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:57:07,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:57:07,767.767 INFO    ] time= 05/06/2026 13:57:07
[2026-06-05 13:57:07,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:57:07,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:57:08,032.032 INFO    ] No existing commands found in stream
[2026-06-05 13:57:13,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:57:13,052.052 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 13:57:15,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:57:15,403.403 INFO    ] Checking for system updates...
[2026-06-05 13:57:15,441.441 INFO    ] 200
[2026-06-05 13:57:15,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:15,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:57:15,502.502 INFO    ] No update needed
[2026-06-05 13:57:15,504.504 INFO    ] Checking for camera pi updates...
[2026-06-05 13:57:15,543.543 INFO    ] 200
[2026-06-05 13:57:15,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:15,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:57:15,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:57:15,616.616 INFO    ] No camera update needed
[2026-06-05 13:57:15,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:57:15,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:57:15,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:57:15,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:57:17,671.671 INFO    ] ================================================
[2026-06-05 13:57:17,687.687 INFO    ] Launching Daemon at Fri Jun  5 13:57:17 IST 2026
[2026-06-05 13:57:17,697.697 INFO    ] ================================================
[2026-06-05 13:57:18,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:57:18
[2026-06-05 13:57:18,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:57:19,114.114 INFO    ] Initializing speech engine...
[2026-06-05 13:57:19,124.124 INFO    ] 2026-06-05 13:57:19
[2026-06-05 13:57:19,385.385 INFO    ] 2026-06-05 13:57:19
[2026-06-05 13:57:19,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:57:19,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:57:19,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:57:19,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:57:19,847.847 INFO    ] time= 05/06/2026 13:57:19
[2026-06-05 13:57:19,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:57:19,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:57:20,009.009 INFO    ] No existing commands found in stream
[2026-06-05 13:57:25,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:57:25,021.021 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 13:57:25,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 13:57:25,768.768 INFO    ] Checking for system updates...
[2026-06-05 13:57:25,806.806 INFO    ] 200
[2026-06-05 13:57:25,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:25,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:57:25,870.870 INFO    ] No update needed
[2026-06-05 13:57:25,872.872 INFO    ] Checking for camera pi updates...
[2026-06-05 13:57:25,909.909 INFO    ] 200
[2026-06-05 13:57:25,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:25,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:57:25,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:57:25,998.998 INFO    ] No camera update needed
[2026-06-05 13:57:26,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:57:26,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:57:26,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:57:26,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:57:28,054.054 INFO    ] ================================================
[2026-06-05 13:57:28,070.070 INFO    ] Launching Daemon at Fri Jun  5 13:57:28 IST 2026
[2026-06-05 13:57:28,080.080 INFO    ] ================================================
[2026-06-05 13:57:28,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:57:28
[2026-06-05 13:57:29,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:57:29,721.721 INFO    ] Initializing speech engine...
[2026-06-05 13:57:29,733.733 INFO    ] 2026-06-05 13:57:29
[2026-06-05 13:57:30,022.022 INFO    ] 2026-06-05 13:57:30
[2026-06-05 13:57:30,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:57:30,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:57:30,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:57:30,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:57:30,577.577 INFO    ] time= 05/06/2026 13:57:30
[2026-06-05 13:57:30,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:57:30,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:57:30,738.738 INFO    ] No existing commands found in stream
[2026-06-05 13:57:35,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:57:35,762.762 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 13:57:38,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:57:38,337.337 INFO    ] Checking for system updates...
[2026-06-05 13:57:38,373.373 INFO    ] 200
[2026-06-05 13:57:38,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:38,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:57:38,432.432 INFO    ] No update needed
[2026-06-05 13:57:38,434.434 INFO    ] Checking for camera pi updates...
[2026-06-05 13:57:38,468.468 INFO    ] 200
[2026-06-05 13:57:38,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:38,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:57:38,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:57:38,644.644 INFO    ] No camera update needed
[2026-06-05 13:57:38,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:57:38,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:57:38,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:57:38,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:57:40,700.700 INFO    ] ================================================
[2026-06-05 13:57:40,715.715 INFO    ] Launching Daemon at Fri Jun  5 13:57:40 IST 2026
[2026-06-05 13:57:40,725.725 INFO    ] ================================================
[2026-06-05 13:57:41,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:57:41
[2026-06-05 13:57:41,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:57:42,129.129 INFO    ] Initializing speech engine...
[2026-06-05 13:57:42,150.150 INFO    ] 2026-06-05 13:57:42
[2026-06-05 13:57:42,408.408 INFO    ] 2026-06-05 13:57:42
[2026-06-05 13:57:42,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:57:44,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:57:44,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:57:44,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:57:44,935.935 INFO    ] time= 05/06/2026 13:57:44
[2026-06-05 13:57:44,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:57:44,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:57:45,053.053 INFO    ] No existing commands found in stream
[2026-06-05 13:57:50,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:57:50,068.068 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 13:57:53,787.787 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:57:53,790.790 INFO    ] Checking for system updates...
[2026-06-05 13:57:53,826.826 INFO    ] 200
[2026-06-05 13:57:53,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:53,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:57:53,884.884 INFO    ] No update needed
[2026-06-05 13:57:53,886.886 INFO    ] Checking for camera pi updates...
[2026-06-05 13:57:53,920.920 INFO    ] 200
[2026-06-05 13:57:53,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:57:53,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:57:54,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:57:54,013.013 INFO    ] No camera update needed
[2026-06-05 13:57:54,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:57:54,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:57:54,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:57:54,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:57:56,076.076 INFO    ] ================================================
[2026-06-05 13:57:56,091.091 INFO    ] Launching Daemon at Fri Jun  5 13:57:56 IST 2026
[2026-06-05 13:57:56,102.102 INFO    ] ================================================
[2026-06-05 13:57:56,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:57:56
[2026-06-05 13:57:57,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:57:57,575.575 INFO    ] Initializing speech engine...
[2026-06-05 13:57:57,598.598 INFO    ] 2026-06-05 13:57:57
[2026-06-05 13:57:57,872.872 INFO    ] 2026-06-05 13:57:57
[2026-06-05 13:57:57,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:57:58,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:57:58,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:57:58,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:57:58,282.282 INFO    ] time= 05/06/2026 13:57:58
[2026-06-05 13:57:58,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:57:58,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:57:58,479.479 INFO    ] No existing commands found in stream
[2026-06-05 13:58:03,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:58:03,498.498 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 13:58:05,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:58:05,415.415 INFO    ] Checking for system updates...
[2026-06-05 13:58:05,455.455 INFO    ] 200
[2026-06-05 13:58:05,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:05,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:58:05,520.520 INFO    ] No update needed
[2026-06-05 13:58:05,523.523 INFO    ] Checking for camera pi updates...
[2026-06-05 13:58:05,558.558 INFO    ] 200
[2026-06-05 13:58:05,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:05,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:58:05,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:58:05,653.653 INFO    ] No camera update needed
[2026-06-05 13:58:05,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:58:05,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:58:05,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:58:05,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:58:07,710.710 INFO    ] ================================================
[2026-06-05 13:58:07,726.726 INFO    ] Launching Daemon at Fri Jun  5 13:58:07 IST 2026
[2026-06-05 13:58:07,736.736 INFO    ] ================================================
[2026-06-05 13:58:08,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:58:08
[2026-06-05 13:58:08,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:58:09,181.181 INFO    ] Initializing speech engine...
[2026-06-05 13:58:09,188.188 INFO    ] 2026-06-05 13:58:09
[2026-06-05 13:58:09,455.455 INFO    ] 2026-06-05 13:58:09
[2026-06-05 13:58:09,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:58:09,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:58:09,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:58:09,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:58:09,836.836 INFO    ] time= 05/06/2026 13:58:09
[2026-06-05 13:58:09,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:58:09,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:58:10,022.022 INFO    ] No existing commands found in stream
[2026-06-05 13:58:15,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:58:15,050.050 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 13:58:19,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 13:58:19,474.474 INFO    ] Checking for system updates...
[2026-06-05 13:58:19,509.509 INFO    ] 200
[2026-06-05 13:58:19,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:19,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:58:19,570.570 INFO    ] No update needed
[2026-06-05 13:58:19,573.573 INFO    ] Checking for camera pi updates...
[2026-06-05 13:58:19,606.606 INFO    ] 200
[2026-06-05 13:58:19,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:19,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:58:19,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:58:19,692.692 INFO    ] No camera update needed
[2026-06-05 13:58:19,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:58:19,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:58:19,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:58:19,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:58:21,749.749 INFO    ] ================================================
[2026-06-05 13:58:21,769.769 INFO    ] Launching Daemon at Fri Jun  5 13:58:21 IST 2026
[2026-06-05 13:58:21,781.781 INFO    ] ================================================
[2026-06-05 13:58:22,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:58:22
[2026-06-05 13:58:23,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:58:23,303.303 INFO    ] Initializing speech engine...
[2026-06-05 13:58:23,311.311 INFO    ] 2026-06-05 13:58:23
[2026-06-05 13:58:23,592.592 INFO    ] 2026-06-05 13:58:23
[2026-06-05 13:58:23,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:58:23,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:58:23,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:58:24,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:58:24,063.063 INFO    ] time= 05/06/2026 13:58:24
[2026-06-05 13:58:24,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:58:24,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:58:24,288.288 INFO    ] No existing commands found in stream
[2026-06-05 13:58:29,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:58:29,320.320 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 13:58:31,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:58:31,212.212 INFO    ] Checking for system updates...
[2026-06-05 13:58:31,251.251 INFO    ] 200
[2026-06-05 13:58:31,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:31,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:58:31,310.310 INFO    ] No update needed
[2026-06-05 13:58:31,313.313 INFO    ] Checking for camera pi updates...
[2026-06-05 13:58:31,350.350 INFO    ] 200
[2026-06-05 13:58:31,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:31,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:58:31,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:58:31,442.442 INFO    ] No camera update needed
[2026-06-05 13:58:31,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:58:31,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:58:31,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:58:31,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:58:33,506.506 INFO    ] ================================================
[2026-06-05 13:58:33,520.520 INFO    ] Launching Daemon at Fri Jun  5 13:58:33 IST 2026
[2026-06-05 13:58:33,531.531 INFO    ] ================================================
[2026-06-05 13:58:34,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:58:34
[2026-06-05 13:58:34,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:58:34,995.995 INFO    ] Initializing speech engine...
[2026-06-05 13:58:35,017.017 INFO    ] 2026-06-05 13:58:35
[2026-06-05 13:58:35,284.284 INFO    ] 2026-06-05 13:58:35
[2026-06-05 13:58:35,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:58:35,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:58:35,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:58:35,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:58:35,696.696 INFO    ] time= 05/06/2026 13:58:35
[2026-06-05 13:58:35,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:58:35,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:58:35,782.782 INFO    ] No existing commands found in stream
[2026-06-05 13:58:40,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:58:40,798.798 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 13:58:44,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 13:58:44,853.853 INFO    ] Checking for system updates...
[2026-06-05 13:58:44,893.893 INFO    ] 200
[2026-06-05 13:58:44,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:44,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:58:44,960.960 INFO    ] No update needed
[2026-06-05 13:58:44,963.963 INFO    ] Checking for camera pi updates...
[2026-06-05 13:58:45,001.001 INFO    ] 200
[2026-06-05 13:58:45,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:45,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:58:45,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:58:45,093.093 INFO    ] No camera update needed
[2026-06-05 13:58:45,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:58:45,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:58:45,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:58:45,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:58:47,150.150 INFO    ] ================================================
[2026-06-05 13:58:47,165.165 INFO    ] Launching Daemon at Fri Jun  5 13:58:47 IST 2026
[2026-06-05 13:58:47,176.176 INFO    ] ================================================
[2026-06-05 13:58:47,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:58:47
[2026-06-05 13:58:48,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:58:48,607.607 INFO    ] Initializing speech engine...
[2026-06-05 13:58:48,616.616 INFO    ] 2026-06-05 13:58:48
[2026-06-05 13:58:48,867.867 INFO    ] 2026-06-05 13:58:48
[2026-06-05 13:58:48,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:58:49,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:58:49,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:58:49,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:58:49,368.368 INFO    ] time= 05/06/2026 13:58:49
[2026-06-05 13:58:49,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:58:49,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:58:49,589.589 INFO    ] No existing commands found in stream
[2026-06-05 13:58:54,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:58:54,610.610 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 13:58:57,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:58:57,387.387 INFO    ] Checking for system updates...
[2026-06-05 13:58:57,423.423 INFO    ] 200
[2026-06-05 13:58:57,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:57,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:58:57,480.480 INFO    ] No update needed
[2026-06-05 13:58:57,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 13:58:57,519.519 INFO    ] 200
[2026-06-05 13:58:57,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:58:57,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:58:57,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:58:57,607.607 INFO    ] No camera update needed
[2026-06-05 13:58:57,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:58:57,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:58:57,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:58:57,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:58:59,661.661 INFO    ] ================================================
[2026-06-05 13:58:59,677.677 INFO    ] Launching Daemon at Fri Jun  5 13:58:59 IST 2026
[2026-06-05 13:58:59,687.687 INFO    ] ================================================
[2026-06-05 13:59:00,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:59:00
[2026-06-05 13:59:00,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:59:01,153.153 INFO    ] Initializing speech engine...
[2026-06-05 13:59:01,162.162 INFO    ] 2026-06-05 13:59:01
[2026-06-05 13:59:01,421.421 INFO    ] 2026-06-05 13:59:01
[2026-06-05 13:59:01,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:59:01,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:59:01,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:59:01,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:59:01,880.880 INFO    ] time= 05/06/2026 13:59:01
[2026-06-05 13:59:01,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:59:01,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:59:01,953.953 INFO    ] No existing commands found in stream
[2026-06-05 13:59:06,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:59:06,967.967 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 13:59:09,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:59:09,714.714 INFO    ] Checking for system updates...
[2026-06-05 13:59:09,750.750 INFO    ] 200
[2026-06-05 13:59:09,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:59:09,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:59:09,817.817 INFO    ] No update needed
[2026-06-05 13:59:09,820.820 INFO    ] Checking for camera pi updates...
[2026-06-05 13:59:09,857.857 INFO    ] 200
[2026-06-05 13:59:09,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:59:09,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:59:09,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:59:09,946.946 INFO    ] No camera update needed
[2026-06-05 13:59:09,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:59:09,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:59:09,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:59:09,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:59:12,003.003 INFO    ] ================================================
[2026-06-05 13:59:12,022.022 INFO    ] Launching Daemon at Fri Jun  5 13:59:12 IST 2026
[2026-06-05 13:59:12,036.036 INFO    ] ================================================
[2026-06-05 13:59:12,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:59:12
[2026-06-05 13:59:13,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:59:13,445.445 INFO    ] Initializing speech engine...
[2026-06-05 13:59:13,468.468 INFO    ] 2026-06-05 13:59:13
[2026-06-05 13:59:13,728.728 INFO    ] 2026-06-05 13:59:13
[2026-06-05 13:59:13,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:59:14,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:59:14,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:59:15,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:59:15,054.054 INFO    ] time= 05/06/2026 13:59:15
[2026-06-05 13:59:15,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:59:15,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:59:15,123.123 INFO    ] No existing commands found in stream
[2026-06-05 13:59:20,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:59:20,138.138 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 13:59:24,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 13:59:24,381.381 INFO    ] Checking for system updates...
[2026-06-05 13:59:24,417.417 INFO    ] 200
[2026-06-05 13:59:24,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:59:24,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:59:24,474.474 INFO    ] No update needed
[2026-06-05 13:59:24,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 13:59:24,511.511 INFO    ] 200
[2026-06-05 13:59:24,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:59:24,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:59:24,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:59:24,598.598 INFO    ] No camera update needed
[2026-06-05 13:59:24,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:59:24,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:59:24,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:59:24,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:59:26,656.656 INFO    ] ================================================
[2026-06-05 13:59:26,672.672 INFO    ] Launching Daemon at Fri Jun  5 13:59:26 IST 2026
[2026-06-05 13:59:26,682.682 INFO    ] ================================================
[2026-06-05 13:59:27,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:59:27
[2026-06-05 13:59:27,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:59:28,104.104 INFO    ] Initializing speech engine...
[2026-06-05 13:59:28,113.113 INFO    ] 2026-06-05 13:59:28
[2026-06-05 13:59:28,359.359 INFO    ] 2026-06-05 13:59:28
[2026-06-05 13:59:28,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:59:28,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:59:28,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:59:28,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:59:28,727.727 INFO    ] time= 05/06/2026 13:59:28
[2026-06-05 13:59:28,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:59:28,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:59:28,915.915 INFO    ] No existing commands found in stream
[2026-06-05 13:59:33,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:59:33,936.936 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 13:59:37,919.919 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 13:59:37,922.922 INFO    ] Checking for system updates...
[2026-06-05 13:59:37,960.960 INFO    ] 200
[2026-06-05 13:59:37,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:59:38,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:59:38,022.022 INFO    ] No update needed
[2026-06-05 13:59:38,024.024 INFO    ] Checking for camera pi updates...
[2026-06-05 13:59:38,060.060 INFO    ] 200
[2026-06-05 13:59:38,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:59:38,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:59:38,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 13:59:38,146.146 INFO    ] No camera update needed
[2026-06-05 13:59:38,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:59:38,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:59:38,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:59:38,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:59:40,201.201 INFO    ] ================================================
[2026-06-05 13:59:40,216.216 INFO    ] Launching Daemon at Fri Jun  5 13:59:40 IST 2026
[2026-06-05 13:59:40,227.227 INFO    ] ================================================
[2026-06-05 13:59:40,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:59:40
[2026-06-05 13:59:41,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:59:41,627.627 INFO    ] Initializing speech engine...
[2026-06-05 13:59:41,634.634 INFO    ] 2026-06-05 13:59:41
[2026-06-05 13:59:41,920.920 INFO    ] 2026-06-05 13:59:41
[2026-06-05 13:59:41,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:59:42,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:59:42,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:59:42,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:59:42,364.364 INFO    ] time= 05/06/2026 13:59:42
[2026-06-05 13:59:42,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:59:42,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:59:42,542.542 INFO    ] No existing commands found in stream
[2026-06-05 13:59:47,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 13:59:47,558.558 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 13:59:50,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 13:59:50,714.714 INFO    ] Checking for system updates...
[2026-06-05 13:59:50,752.752 INFO    ] 200
[2026-06-05 13:59:50,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:59:50,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:59:50,810.810 INFO    ] No update needed
[2026-06-05 13:59:50,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 13:59:50,846.846 INFO    ] 200
[2026-06-05 13:59:50,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 13:59:50,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 13:59:51,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 13:59:51,037.037 INFO    ] No camera update needed
[2026-06-05 13:59:51,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 13:59:51,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 13:59:51,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 13:59:51,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 13:59:53,092.092 INFO    ] ================================================
[2026-06-05 13:59:53,107.107 INFO    ] Launching Daemon at Fri Jun  5 13:59:53 IST 2026
[2026-06-05 13:59:53,117.117 INFO    ] ================================================
[2026-06-05 13:59:53,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 13:59:53
[2026-06-05 13:59:54,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 13:59:54,521.521 INFO    ] Initializing speech engine...
[2026-06-05 13:59:54,530.530 INFO    ] 2026-06-05 13:59:54
[2026-06-05 13:59:54,816.816 INFO    ] 2026-06-05 13:59:54
[2026-06-05 13:59:54,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 13:59:55,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 13:59:55,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 13:59:55,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 13:59:55,218.218 INFO    ] time= 05/06/2026 13:59:55
[2026-06-05 13:59:55,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 13:59:55,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-05 13:59:55,309.309 INFO    ] No existing commands found in stream
[2026-06-05 14:00:00,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:00:00,342.342 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 14:00:01,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:00:01,394.394 INFO    ] Checking for system updates...
[2026-06-05 14:00:01,433.433 INFO    ] 200
[2026-06-05 14:00:01,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:01,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:00:01,495.495 INFO    ] No update needed
[2026-06-05 14:00:01,498.498 INFO    ] Checking for camera pi updates...
[2026-06-05 14:00:01,533.533 INFO    ] 200
[2026-06-05 14:00:01,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:01,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:00:01,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:00:01,823.823 INFO    ] No camera update needed
[2026-06-05 14:00:01,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:00:01,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:00:01,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:00:01,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:00:04,114.114 INFO    ] ================================================
[2026-06-05 14:00:04,216.216 INFO    ] Launching Daemon at Fri Jun  5 14:00:04 IST 2026
[2026-06-05 14:00:04,298.298 INFO    ] ================================================
[2026-06-05 14:00:06,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:00:06
[2026-06-05 14:00:07,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:00:07,559.559 INFO    ] Initializing speech engine...
[2026-06-05 14:00:07,566.566 INFO    ] 2026-06-05 14:00:07
[2026-06-05 14:00:07,837.837 INFO    ] 2026-06-05 14:00:07
[2026-06-05 14:00:07,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:00:08,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:00:08,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:00:08,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:00:08,384.384 INFO    ] time= 05/06/2026 14:00:08
[2026-06-05 14:00:08,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:00:08,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:00:08,537.537 INFO    ] No existing commands found in stream
[2026-06-05 14:00:13,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:00:13,557.557 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 14:00:17,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:00:17,208.208 INFO    ] Checking for system updates...
[2026-06-05 14:00:17,249.249 INFO    ] 200
[2026-06-05 14:00:17,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:17,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:00:17,313.313 INFO    ] No update needed
[2026-06-05 14:00:17,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 14:00:17,356.356 INFO    ] 200
[2026-06-05 14:00:17,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:17,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:00:17,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:00:17,467.467 INFO    ] No camera update needed
[2026-06-05 14:00:17,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:00:17,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:00:17,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:00:17,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:00:19,527.527 INFO    ] ================================================
[2026-06-05 14:00:19,543.543 INFO    ] Launching Daemon at Fri Jun  5 14:00:19 IST 2026
[2026-06-05 14:00:19,554.554 INFO    ] ================================================
[2026-06-05 14:00:20,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:00:20
[2026-06-05 14:00:20,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:00:21,066.066 INFO    ] Initializing speech engine...
[2026-06-05 14:00:21,086.086 INFO    ] 2026-06-05 14:00:21
[2026-06-05 14:00:21,390.390 INFO    ] 2026-06-05 14:00:21
[2026-06-05 14:00:21,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:00:21,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:00:21,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:00:21,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:00:21,872.872 INFO    ] time= 05/06/2026 14:00:21
[2026-06-05 14:00:21,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:00:21,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:00:22,024.024 INFO    ] No existing commands found in stream
[2026-06-05 14:00:27,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:00:27,040.040 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 14:00:29,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:00:29,462.462 INFO    ] Checking for system updates...
[2026-06-05 14:00:29,500.500 INFO    ] 200
[2026-06-05 14:00:29,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:29,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:00:29,559.559 INFO    ] No update needed
[2026-06-05 14:00:29,561.561 INFO    ] Checking for camera pi updates...
[2026-06-05 14:00:29,599.599 INFO    ] 200
[2026-06-05 14:00:29,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:29,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:00:29,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:00:29,701.701 INFO    ] No camera update needed
[2026-06-05 14:00:29,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:00:29,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:00:29,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:00:29,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:00:31,758.758 INFO    ] ================================================
[2026-06-05 14:00:31,773.773 INFO    ] Launching Daemon at Fri Jun  5 14:00:31 IST 2026
[2026-06-05 14:00:31,784.784 INFO    ] ================================================
[2026-06-05 14:00:32,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:00:32
[2026-06-05 14:00:33,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:00:33,308.308 INFO    ] Initializing speech engine...
[2026-06-05 14:00:33,322.322 INFO    ] 2026-06-05 14:00:33
[2026-06-05 14:00:33,607.607 INFO    ] 2026-06-05 14:00:33
[2026-06-05 14:00:33,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:00:33,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:00:33,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:00:34,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:00:34,042.042 INFO    ] time= 05/06/2026 14:00:34
[2026-06-05 14:00:34,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:00:34,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:00:34,132.132 INFO    ] No existing commands found in stream
[2026-06-05 14:00:39,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:00:39,148.148 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 14:00:39,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:00:39,797.797 INFO    ] Checking for system updates...
[2026-06-05 14:00:39,834.834 INFO    ] 200
[2026-06-05 14:00:39,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:39,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:00:39,893.893 INFO    ] No update needed
[2026-06-05 14:00:39,895.895 INFO    ] Checking for camera pi updates...
[2026-06-05 14:00:39,930.930 INFO    ] 200
[2026-06-05 14:00:39,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:39,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:00:40,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:00:40,021.021 INFO    ] No camera update needed
[2026-06-05 14:00:40,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:00:40,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:00:40,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:00:40,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:00:42,079.079 INFO    ] ================================================
[2026-06-05 14:00:42,094.094 INFO    ] Launching Daemon at Fri Jun  5 14:00:42 IST 2026
[2026-06-05 14:00:42,105.105 INFO    ] ================================================
[2026-06-05 14:00:42,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:00:42
[2026-06-05 14:00:43,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:00:43,576.576 INFO    ] Initializing speech engine...
[2026-06-05 14:00:43,585.585 INFO    ] 2026-06-05 14:00:43
[2026-06-05 14:00:43,862.862 INFO    ] 2026-06-05 14:00:43
[2026-06-05 14:00:43,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:00:44,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:00:44,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:00:44,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:00:44,975.975 INFO    ] time= 05/06/2026 14:00:44
[2026-06-05 14:00:44,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:00:45,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:00:45,100.100 INFO    ] No existing commands found in stream
[2026-06-05 14:00:50,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:00:50,114.114 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 14:00:53,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:00:53,035.035 INFO    ] Checking for system updates...
[2026-06-05 14:00:53,072.072 INFO    ] 200
[2026-06-05 14:00:53,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:53,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:00:53,130.130 INFO    ] No update needed
[2026-06-05 14:00:53,132.132 INFO    ] Checking for camera pi updates...
[2026-06-05 14:00:53,167.167 INFO    ] 200
[2026-06-05 14:00:53,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:00:53,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:00:53,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:00:53,259.259 INFO    ] No camera update needed
[2026-06-05 14:00:53,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:00:53,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:00:53,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:00:53,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:00:55,315.315 INFO    ] ================================================
[2026-06-05 14:00:55,330.330 INFO    ] Launching Daemon at Fri Jun  5 14:00:55 IST 2026
[2026-06-05 14:00:55,341.341 INFO    ] ================================================
[2026-06-05 14:00:55,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:00:55
[2026-06-05 14:00:56,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:00:56,780.780 INFO    ] Initializing speech engine...
[2026-06-05 14:00:56,789.789 INFO    ] 2026-06-05 14:00:56
[2026-06-05 14:00:57,081.081 INFO    ] 2026-06-05 14:00:57
[2026-06-05 14:00:57,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:00:57,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:00:57,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:00:57,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:00:57,421.421 INFO    ] time= 05/06/2026 14:00:57
[2026-06-05 14:00:57,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:00:57,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:00:57,577.577 INFO    ] No existing commands found in stream
[2026-06-05 14:01:02,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:01:02,612.612 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 14:01:05,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:01:05,395.395 INFO    ] Checking for system updates...
[2026-06-05 14:01:05,433.433 INFO    ] 200
[2026-06-05 14:01:05,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:05,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:01:05,499.499 INFO    ] No update needed
[2026-06-05 14:01:05,502.502 INFO    ] Checking for camera pi updates...
[2026-06-05 14:01:05,538.538 INFO    ] 200
[2026-06-05 14:01:05,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:05,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:01:05,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:01:05,638.638 INFO    ] No camera update needed
[2026-06-05 14:01:05,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:01:05,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:01:05,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:01:05,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:01:07,696.696 INFO    ] ================================================
[2026-06-05 14:01:07,711.711 INFO    ] Launching Daemon at Fri Jun  5 14:01:07 IST 2026
[2026-06-05 14:01:07,721.721 INFO    ] ================================================
[2026-06-05 14:01:08,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:01:08
[2026-06-05 14:01:08,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:01:09,236.236 INFO    ] Initializing speech engine...
[2026-06-05 14:01:09,249.249 INFO    ] 2026-06-05 14:01:09
[2026-06-05 14:01:09,525.525 INFO    ] 2026-06-05 14:01:09
[2026-06-05 14:01:09,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:01:09,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:01:09,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:01:09,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:01:10,022.022 INFO    ] time= 05/06/2026 14:01:09
[2026-06-05 14:01:10,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:01:10,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:01:10,223.223 INFO    ] No existing commands found in stream
[2026-06-05 14:01:15,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:01:15,257.257 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 14:01:17,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:01:17,372.372 INFO    ] Checking for system updates...
[2026-06-05 14:01:17,409.409 INFO    ] 200
[2026-06-05 14:01:17,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:17,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:01:17,468.468 INFO    ] No update needed
[2026-06-05 14:01:17,471.471 INFO    ] Checking for camera pi updates...
[2026-06-05 14:01:17,509.509 INFO    ] 200
[2026-06-05 14:01:17,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:17,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:01:17,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:01:17,603.603 INFO    ] No camera update needed
[2026-06-05 14:01:17,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:01:17,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:01:17,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:01:17,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:01:19,661.661 INFO    ] ================================================
[2026-06-05 14:01:19,677.677 INFO    ] Launching Daemon at Fri Jun  5 14:01:19 IST 2026
[2026-06-05 14:01:19,687.687 INFO    ] ================================================
[2026-06-05 14:01:20,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:01:20
[2026-06-05 14:01:21,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:01:21,316.316 INFO    ] Initializing speech engine...
[2026-06-05 14:01:21,329.329 INFO    ] 2026-06-05 14:01:21
[2026-06-05 14:01:21,613.613 INFO    ] 2026-06-05 14:01:21
[2026-06-05 14:01:21,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:01:21,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:01:21,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:01:22,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:01:22,098.098 INFO    ] time= 05/06/2026 14:01:22
[2026-06-05 14:01:22,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:01:22,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:01:22,307.307 INFO    ] No existing commands found in stream
[2026-06-05 14:01:27,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:01:27,339.339 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 14:01:27,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:01:27,879.879 INFO    ] Checking for system updates...
[2026-06-05 14:01:27,916.916 INFO    ] 200
[2026-06-05 14:01:27,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:27,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:01:27,978.978 INFO    ] No update needed
[2026-06-05 14:01:27,981.981 INFO    ] Checking for camera pi updates...
[2026-06-05 14:01:28,016.016 INFO    ] 200
[2026-06-05 14:01:28,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:28,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:01:28,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:01:28,103.103 INFO    ] No camera update needed
[2026-06-05 14:01:28,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:01:28,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:01:28,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:01:28,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:01:30,164.164 INFO    ] ================================================
[2026-06-05 14:01:30,179.179 INFO    ] Launching Daemon at Fri Jun  5 14:01:30 IST 2026
[2026-06-05 14:01:30,191.191 INFO    ] ================================================
[2026-06-05 14:01:30,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:01:30
[2026-06-05 14:01:31,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:01:31,937.937 INFO    ] Initializing speech engine...
[2026-06-05 14:01:31,949.949 INFO    ] 2026-06-05 14:01:31
[2026-06-05 14:01:32,259.259 INFO    ] 2026-06-05 14:01:32
[2026-06-05 14:01:32,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:01:32,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:01:32,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:01:32,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:01:32,821.821 INFO    ] time= 05/06/2026 14:01:32
[2026-06-05 14:01:32,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:01:32,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:01:33,004.004 INFO    ] No existing commands found in stream
[2026-06-05 14:01:38,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:01:38,037.037 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 14:01:40,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:01:40,042.042 INFO    ] Checking for system updates...
[2026-06-05 14:01:40,080.080 INFO    ] 200
[2026-06-05 14:01:40,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:40,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:01:40,140.140 INFO    ] No update needed
[2026-06-05 14:01:40,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 14:01:40,176.176 INFO    ] 200
[2026-06-05 14:01:40,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:40,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:01:40,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:01:40,268.268 INFO    ] No camera update needed
[2026-06-05 14:01:40,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:01:40,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:01:40,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:01:40,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:01:42,323.323 INFO    ] ================================================
[2026-06-05 14:01:42,339.339 INFO    ] Launching Daemon at Fri Jun  5 14:01:42 IST 2026
[2026-06-05 14:01:42,349.349 INFO    ] ================================================
[2026-06-05 14:01:43,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:01:43
[2026-06-05 14:01:43,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:01:44,003.003 INFO    ] Initializing speech engine...
[2026-06-05 14:01:44,012.012 INFO    ] 2026-06-05 14:01:44
[2026-06-05 14:01:44,288.288 INFO    ] 2026-06-05 14:01:44
[2026-06-05 14:01:44,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:01:44,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:01:44,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:01:44,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:01:44,853.853 INFO    ] time= 05/06/2026 14:01:44
[2026-06-05 14:01:44,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:01:44,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:01:45,026.026 INFO    ] No existing commands found in stream
[2026-06-05 14:01:50,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:01:50,061.061 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 14:01:51,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:01:51,957.957 INFO    ] Checking for system updates...
[2026-06-05 14:01:51,995.995 INFO    ] 200
[2026-06-05 14:01:51,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:52,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:01:52,055.055 INFO    ] No update needed
[2026-06-05 14:01:52,057.057 INFO    ] Checking for camera pi updates...
[2026-06-05 14:01:52,091.091 INFO    ] 200
[2026-06-05 14:01:52,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:01:52,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:01:52,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:01:52,188.188 INFO    ] No camera update needed
[2026-06-05 14:01:52,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:01:52,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:01:52,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:01:52,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:01:54,244.244 INFO    ] ================================================
[2026-06-05 14:01:54,259.259 INFO    ] Launching Daemon at Fri Jun  5 14:01:54 IST 2026
[2026-06-05 14:01:54,269.269 INFO    ] ================================================
[2026-06-05 14:01:54,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:01:54
[2026-06-05 14:01:55,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:01:55,935.935 INFO    ] Initializing speech engine...
[2026-06-05 14:01:55,944.944 INFO    ] 2026-06-05 14:01:55
[2026-06-05 14:01:56,195.195 INFO    ] 2026-06-05 14:01:56
[2026-06-05 14:01:56,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:01:56,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:01:56,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:01:56,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:01:56,710.710 INFO    ] time= 05/06/2026 14:01:56
[2026-06-05 14:01:56,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:01:56,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:01:56,933.933 INFO    ] No existing commands found in stream
[2026-06-05 14:02:01,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:02:01,971.971 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 14:02:06,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:02:06,052.052 INFO    ] Checking for system updates...
[2026-06-05 14:02:06,089.089 INFO    ] 200
[2026-06-05 14:02:06,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:06,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:02:06,147.147 INFO    ] No update needed
[2026-06-05 14:02:06,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 14:02:06,183.183 INFO    ] 200
[2026-06-05 14:02:06,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:06,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:02:06,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:02:06,255.255 INFO    ] No camera update needed
[2026-06-05 14:02:06,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:02:06,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:02:06,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:02:06,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:02:08,314.314 INFO    ] ================================================
[2026-06-05 14:02:08,330.330 INFO    ] Launching Daemon at Fri Jun  5 14:02:08 IST 2026
[2026-06-05 14:02:08,341.341 INFO    ] ================================================
[2026-06-05 14:02:09,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:02:09
[2026-06-05 14:02:09,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:02:09,896.896 INFO    ] Initializing speech engine...
[2026-06-05 14:02:09,906.906 INFO    ] 2026-06-05 14:02:09
[2026-06-05 14:02:10,169.169 INFO    ] 2026-06-05 14:02:10
[2026-06-05 14:02:10,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:02:10,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:02:10,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:02:10,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:02:10,637.637 INFO    ] time= 05/06/2026 14:02:10
[2026-06-05 14:02:10,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:02:10,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:02:10,873.873 INFO    ] No existing commands found in stream
[2026-06-05 14:02:15,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:02:15,896.896 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 14:02:19,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:02:19,954.954 INFO    ] Checking for system updates...
[2026-06-05 14:02:19,991.991 INFO    ] 200
[2026-06-05 14:02:19,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:20,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:02:20,053.053 INFO    ] No update needed
[2026-06-05 14:02:20,055.055 INFO    ] Checking for camera pi updates...
[2026-06-05 14:02:20,090.090 INFO    ] 200
[2026-06-05 14:02:20,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:20,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:02:20,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:02:20,175.175 INFO    ] No camera update needed
[2026-06-05 14:02:20,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:02:20,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:02:20,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:02:20,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:02:22,233.233 INFO    ] ================================================
[2026-06-05 14:02:22,249.249 INFO    ] Launching Daemon at Fri Jun  5 14:02:22 IST 2026
[2026-06-05 14:02:22,261.261 INFO    ] ================================================
[2026-06-05 14:02:22,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:02:22
[2026-06-05 14:02:23,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:02:23,722.722 INFO    ] Initializing speech engine...
[2026-06-05 14:02:23,728.728 INFO    ] 2026-06-05 14:02:23
[2026-06-05 14:02:23,992.992 INFO    ] 2026-06-05 14:02:23
[2026-06-05 14:02:24,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:02:24,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:02:24,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:02:24,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:02:24,452.452 INFO    ] time= 05/06/2026 14:02:24
[2026-06-05 14:02:24,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:02:24,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:02:24,704.704 INFO    ] No existing commands found in stream
[2026-06-05 14:02:29,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:02:29,732.732 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 14:02:32,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:02:32,397.397 INFO    ] Checking for system updates...
[2026-06-05 14:02:32,435.435 INFO    ] 200
[2026-06-05 14:02:32,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:32,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:02:32,501.501 INFO    ] No update needed
[2026-06-05 14:02:32,505.505 INFO    ] Checking for camera pi updates...
[2026-06-05 14:02:32,552.552 INFO    ] 200
[2026-06-05 14:02:32,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:32,598.598 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:02:32,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:02:32,632.632 INFO    ] No camera update needed
[2026-06-05 14:02:32,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:02:32,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:02:32,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:02:32,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:02:34,694.694 INFO    ] ================================================
[2026-06-05 14:02:34,709.709 INFO    ] Launching Daemon at Fri Jun  5 14:02:34 IST 2026
[2026-06-05 14:02:34,721.721 INFO    ] ================================================
[2026-06-05 14:02:35,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:02:35
[2026-06-05 14:02:35,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:02:36,168.168 INFO    ] Initializing speech engine...
[2026-06-05 14:02:36,178.178 INFO    ] 2026-06-05 14:02:36
[2026-06-05 14:02:36,429.429 INFO    ] 2026-06-05 14:02:36
[2026-06-05 14:02:36,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:02:36,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:02:36,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:02:36,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:02:36,812.812 INFO    ] time= 05/06/2026 14:02:36
[2026-06-05 14:02:36,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:02:36,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:02:37,010.010 INFO    ] No existing commands found in stream
[2026-06-05 14:02:42,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:02:42,026.026 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 14:02:44,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:02:44,855.855 INFO    ] Checking for system updates...
[2026-06-05 14:02:44,892.892 INFO    ] 200
[2026-06-05 14:02:44,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:44,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:02:44,954.954 INFO    ] No update needed
[2026-06-05 14:02:44,957.957 INFO    ] Checking for camera pi updates...
[2026-06-05 14:02:44,991.991 INFO    ] 200
[2026-06-05 14:02:44,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:45,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:02:45,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:02:45,078.078 INFO    ] No camera update needed
[2026-06-05 14:02:45,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:02:45,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:02:45,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:02:45,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:02:47,133.133 INFO    ] ================================================
[2026-06-05 14:02:47,150.150 INFO    ] Launching Daemon at Fri Jun  5 14:02:47 IST 2026
[2026-06-05 14:02:47,161.161 INFO    ] ================================================
[2026-06-05 14:02:47,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:02:47
[2026-06-05 14:02:48,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:02:48,571.571 INFO    ] Initializing speech engine...
[2026-06-05 14:02:48,578.578 INFO    ] 2026-06-05 14:02:48
[2026-06-05 14:02:48,885.885 INFO    ] 2026-06-05 14:02:48
[2026-06-05 14:02:48,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:02:49,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:02:49,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:02:49,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:02:49,248.248 INFO    ] time= 05/06/2026 14:02:49
[2026-06-05 14:02:49,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:02:49,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:02:49,404.404 INFO    ] No existing commands found in stream
[2026-06-05 14:02:54,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:02:54,417.417 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 14:02:56,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:02:56,745.745 INFO    ] Checking for system updates...
[2026-06-05 14:02:56,782.782 INFO    ] 200
[2026-06-05 14:02:56,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:56,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:02:56,849.849 INFO    ] No update needed
[2026-06-05 14:02:56,851.851 INFO    ] Checking for camera pi updates...
[2026-06-05 14:02:56,885.885 INFO    ] 200
[2026-06-05 14:02:56,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:02:56,934.934 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:02:56,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:02:56,978.978 INFO    ] No camera update needed
[2026-06-05 14:02:56,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:02:56,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:02:56,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:02:56,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:02:59,037.037 INFO    ] ================================================
[2026-06-05 14:02:59,052.052 INFO    ] Launching Daemon at Fri Jun  5 14:02:59 IST 2026
[2026-06-05 14:02:59,063.063 INFO    ] ================================================
[2026-06-05 14:02:59,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:02:59
[2026-06-05 14:03:00,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:03:00,530.530 INFO    ] Initializing speech engine...
[2026-06-05 14:03:00,536.536 INFO    ] 2026-06-05 14:03:00
[2026-06-05 14:03:00,797.797 INFO    ] 2026-06-05 14:03:00
[2026-06-05 14:03:00,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:03:01,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:03:01,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:03:01,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:03:01,274.274 INFO    ] time= 05/06/2026 14:03:01
[2026-06-05 14:03:01,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:03:01,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:03:01,450.450 INFO    ] No existing commands found in stream
[2026-06-05 14:03:06,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:03:06,464.464 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 14:03:07,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:03:07,209.209 INFO    ] Checking for system updates...
[2026-06-05 14:03:07,246.246 INFO    ] 200
[2026-06-05 14:03:07,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:07,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:03:07,308.308 INFO    ] No update needed
[2026-06-05 14:03:07,310.310 INFO    ] Checking for camera pi updates...
[2026-06-05 14:03:07,346.346 INFO    ] 200
[2026-06-05 14:03:07,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:07,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:03:07,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:03:07,427.427 INFO    ] No camera update needed
[2026-06-05 14:03:07,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:03:07,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:03:07,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:03:07,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:03:09,482.482 INFO    ] ================================================
[2026-06-05 14:03:09,499.499 INFO    ] Launching Daemon at Fri Jun  5 14:03:09 IST 2026
[2026-06-05 14:03:09,510.510 INFO    ] ================================================
[2026-06-05 14:03:10,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:03:10
[2026-06-05 14:03:10,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:03:10,917.917 INFO    ] Initializing speech engine...
[2026-06-05 14:03:10,940.940 INFO    ] 2026-06-05 14:03:10
[2026-06-05 14:03:11,196.196 INFO    ] 2026-06-05 14:03:11
[2026-06-05 14:03:11,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:03:11,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:03:11,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:03:11,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:03:11,682.682 INFO    ] time= 05/06/2026 14:03:11
[2026-06-05 14:03:11,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:03:11,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:03:11,909.909 INFO    ] No existing commands found in stream
[2026-06-05 14:03:16,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:03:16,940.940 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 14:03:17,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:03:17,706.706 INFO    ] Checking for system updates...
[2026-06-05 14:03:17,742.742 INFO    ] 200
[2026-06-05 14:03:17,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:17,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:03:17,800.800 INFO    ] No update needed
[2026-06-05 14:03:17,802.802 INFO    ] Checking for camera pi updates...
[2026-06-05 14:03:17,836.836 INFO    ] 200
[2026-06-05 14:03:17,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:17,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:03:17,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:03:17,930.930 INFO    ] No camera update needed
[2026-06-05 14:03:17,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:03:17,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:03:17,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:03:17,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:03:19,985.985 INFO    ] ================================================
[2026-06-05 14:03:20,001.001 INFO    ] Launching Daemon at Fri Jun  5 14:03:19 IST 2026
[2026-06-05 14:03:20,012.012 INFO    ] ================================================
[2026-06-05 14:03:20,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:03:20
[2026-06-05 14:03:21,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:03:21,690.690 INFO    ] Initializing speech engine...
[2026-06-05 14:03:21,702.702 INFO    ] 2026-06-05 14:03:21
[2026-06-05 14:03:21,991.991 INFO    ] 2026-06-05 14:03:21
[2026-06-05 14:03:22,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:03:22,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:03:22,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:03:22,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:03:22,541.541 INFO    ] time= 05/06/2026 14:03:22
[2026-06-05 14:03:22,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:03:22,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:03:22,684.684 INFO    ] No existing commands found in stream
[2026-06-05 14:03:27,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:03:27,711.711 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 14:03:30,821.821 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:03:30,825.825 INFO    ] Checking for system updates...
[2026-06-05 14:03:30,867.867 INFO    ] 200
[2026-06-05 14:03:30,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:30,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:03:30,931.931 INFO    ] No update needed
[2026-06-05 14:03:30,934.934 INFO    ] Checking for camera pi updates...
[2026-06-05 14:03:30,969.969 INFO    ] 200
[2026-06-05 14:03:30,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:31,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:03:31,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:03:31,068.068 INFO    ] No camera update needed
[2026-06-05 14:03:31,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:03:31,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:03:31,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:03:31,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:03:33,126.126 INFO    ] ================================================
[2026-06-05 14:03:33,142.142 INFO    ] Launching Daemon at Fri Jun  5 14:03:33 IST 2026
[2026-06-05 14:03:33,153.153 INFO    ] ================================================
[2026-06-05 14:03:33,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:03:33
[2026-06-05 14:03:34,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:03:34,619.619 INFO    ] Initializing speech engine...
[2026-06-05 14:03:34,628.628 INFO    ] 2026-06-05 14:03:34
[2026-06-05 14:03:34,880.880 INFO    ] 2026-06-05 14:03:34
[2026-06-05 14:03:34,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:03:35,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:03:35,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:03:35,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:03:35,357.357 INFO    ] time= 05/06/2026 14:03:35
[2026-06-05 14:03:35,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:03:35,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:03:35,596.596 INFO    ] No existing commands found in stream
[2026-06-05 14:03:40,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:03:40,614.614 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 14:03:45,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:03:45,044.044 INFO    ] Checking for system updates...
[2026-06-05 14:03:45,081.081 INFO    ] 200
[2026-06-05 14:03:45,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:45,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:03:45,139.139 INFO    ] No update needed
[2026-06-05 14:03:45,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 14:03:45,177.177 INFO    ] 200
[2026-06-05 14:03:45,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:45,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:03:45,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:03:45,281.281 INFO    ] No camera update needed
[2026-06-05 14:03:45,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:03:45,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:03:45,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:03:45,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:03:47,337.337 INFO    ] ================================================
[2026-06-05 14:03:47,353.353 INFO    ] Launching Daemon at Fri Jun  5 14:03:47 IST 2026
[2026-06-05 14:03:47,365.365 INFO    ] ================================================
[2026-06-05 14:03:47,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:03:47
[2026-06-05 14:03:48,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:03:48,788.788 INFO    ] Initializing speech engine...
[2026-06-05 14:03:48,798.798 INFO    ] 2026-06-05 14:03:48
[2026-06-05 14:03:49,045.045 INFO    ] 2026-06-05 14:03:49
[2026-06-05 14:03:49,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:03:49,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:03:49,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:03:49,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:03:49,412.412 INFO    ] time= 05/06/2026 14:03:49
[2026-06-05 14:03:49,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:03:49,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:03:49,607.607 INFO    ] No existing commands found in stream
[2026-06-05 14:03:54,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:03:54,620.620 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 14:03:55,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:03:55,523.523 INFO    ] Checking for system updates...
[2026-06-05 14:03:55,559.559 INFO    ] 200
[2026-06-05 14:03:55,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:55,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:03:55,618.618 INFO    ] No update needed
[2026-06-05 14:03:55,621.621 INFO    ] Checking for camera pi updates...
[2026-06-05 14:03:55,654.654 INFO    ] 200
[2026-06-05 14:03:55,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:03:55,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:03:55,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:03:55,741.741 INFO    ] No camera update needed
[2026-06-05 14:03:55,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:03:55,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:03:55,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:03:55,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:03:57,796.796 INFO    ] ================================================
[2026-06-05 14:03:57,812.812 INFO    ] Launching Daemon at Fri Jun  5 14:03:57 IST 2026
[2026-06-05 14:03:57,823.823 INFO    ] ================================================
[2026-06-05 14:03:58,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:03:58
[2026-06-05 14:03:59,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:03:59,282.282 INFO    ] Initializing speech engine...
[2026-06-05 14:03:59,307.307 INFO    ] 2026-06-05 14:03:59
[2026-06-05 14:03:59,582.582 INFO    ] 2026-06-05 14:03:59
[2026-06-05 14:03:59,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:03:59,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:03:59,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:03:59,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:03:59,916.916 INFO    ] time= 05/06/2026 14:03:59
[2026-06-05 14:03:59,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:03:59,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:04:00,050.050 INFO    ] No existing commands found in stream
[2026-06-05 14:04:05,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:04:05,063.063 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 14:04:08,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:04:08,441.441 INFO    ] Checking for system updates...
[2026-06-05 14:04:08,498.498 INFO    ] 200
[2026-06-05 14:04:08,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:04:08,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:04:08,566.566 INFO    ] No update needed
[2026-06-05 14:04:08,568.568 INFO    ] Checking for camera pi updates...
[2026-06-05 14:04:08,609.609 INFO    ] 200
[2026-06-05 14:04:08,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:04:08,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:04:08,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:04:08,787.787 INFO    ] No camera update needed
[2026-06-05 14:04:08,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:04:08,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:04:08,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:04:08,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:04:10,850.850 INFO    ] ================================================
[2026-06-05 14:04:10,866.866 INFO    ] Launching Daemon at Fri Jun  5 14:04:10 IST 2026
[2026-06-05 14:04:10,878.878 INFO    ] ================================================
[2026-06-05 14:04:11,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:04:11
[2026-06-05 14:04:12,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:04:12,355.355 INFO    ] Initializing speech engine...
[2026-06-05 14:04:12,365.365 INFO    ] 2026-06-05 14:04:12
[2026-06-05 14:04:12,641.641 INFO    ] 2026-06-05 14:04:12
[2026-06-05 14:04:12,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:04:14,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:04:14,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:04:14,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:04:14,991.991 INFO    ] time= 05/06/2026 14:04:14
[2026-06-05 14:04:14,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:04:15,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:04:15,143.143 INFO    ] No existing commands found in stream
[2026-06-05 14:04:20,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:04:20,184.184 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 14:04:21,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:04:21,914.914 INFO    ] Checking for system updates...
[2026-06-05 14:04:21,951.951 INFO    ] 200
[2026-06-05 14:04:21,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:04:22,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:04:22,012.012 INFO    ] No update needed
[2026-06-05 14:04:22,014.014 INFO    ] Checking for camera pi updates...
[2026-06-05 14:04:22,052.052 INFO    ] 200
[2026-06-05 14:04:22,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:04:22,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:04:22,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:04:22,144.144 INFO    ] No camera update needed
[2026-06-05 14:04:22,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:04:22,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:04:22,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:04:22,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:04:24,202.202 INFO    ] ================================================
[2026-06-05 14:04:24,217.217 INFO    ] Launching Daemon at Fri Jun  5 14:04:24 IST 2026
[2026-06-05 14:04:24,229.229 INFO    ] ================================================
[2026-06-05 14:04:24,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:04:24
[2026-06-05 14:04:25,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:04:25,643.643 INFO    ] Initializing speech engine...
[2026-06-05 14:04:25,657.657 INFO    ] 2026-06-05 14:04:25
[2026-06-05 14:04:25,942.942 INFO    ] 2026-06-05 14:04:25
[2026-06-05 14:04:25,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:04:26,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:04:26,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:04:26,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:04:26,340.340 INFO    ] time= 05/06/2026 14:04:26
[2026-06-05 14:04:26,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:04:26,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:04:26,470.470 INFO    ] No existing commands found in stream
[2026-06-05 14:04:31,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:04:31,486.486 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 14:04:34,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:04:34,134.134 INFO    ] Checking for system updates...
[2026-06-05 14:04:34,170.170 INFO    ] 200
[2026-06-05 14:04:34,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:04:34,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:04:34,228.228 INFO    ] No update needed
[2026-06-05 14:04:34,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 14:04:34,266.266 INFO    ] 200
[2026-06-05 14:04:34,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:04:34,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:04:34,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:04:34,352.352 INFO    ] No camera update needed
[2026-06-05 14:04:34,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:04:34,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:04:34,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:04:34,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:04:36,410.410 INFO    ] ================================================
[2026-06-05 14:04:36,426.426 INFO    ] Launching Daemon at Fri Jun  5 14:04:36 IST 2026
[2026-06-05 14:04:36,436.436 INFO    ] ================================================
[2026-06-05 14:04:37,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:04:37
[2026-06-05 14:04:37,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:04:38,087.087 INFO    ] Initializing speech engine...
[2026-06-05 14:04:38,104.104 INFO    ] 2026-06-05 14:04:38
[2026-06-05 14:04:38,364.364 INFO    ] 2026-06-05 14:04:38
[2026-06-05 14:04:38,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:04:38,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:04:38,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:04:38,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:04:38,743.743 INFO    ] time= 05/06/2026 14:04:38
[2026-06-05 14:04:38,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:04:38,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:04:38,940.940 INFO    ] No existing commands found in stream
[2026-06-05 14:04:43,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:04:43,956.956 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 14:04:47,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:04:47,804.804 INFO    ] Checking for system updates...
[2026-06-05 14:04:47,841.841 INFO    ] 200
[2026-06-05 14:04:47,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:04:47,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:04:47,906.906 INFO    ] No update needed
[2026-06-05 14:04:47,909.909 INFO    ] Checking for camera pi updates...
[2026-06-05 14:04:47,942.942 INFO    ] 200
[2026-06-05 14:04:47,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:04:47,991.991 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:04:48,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:04:48,040.040 INFO    ] No camera update needed
[2026-06-05 14:04:48,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:04:48,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:04:48,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:04:48,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:04:50,097.097 INFO    ] ================================================
[2026-06-05 14:04:50,113.113 INFO    ] Launching Daemon at Fri Jun  5 14:04:50 IST 2026
[2026-06-05 14:04:50,124.124 INFO    ] ================================================
[2026-06-05 14:04:50,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:04:50
[2026-06-05 14:04:51,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:04:51,539.539 INFO    ] Initializing speech engine...
[2026-06-05 14:04:51,562.562 INFO    ] 2026-06-05 14:04:51
[2026-06-05 14:04:51,817.817 INFO    ] 2026-06-05 14:04:51
[2026-06-05 14:04:51,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:04:52,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:04:52,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:04:52,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:04:52,197.197 INFO    ] time= 05/06/2026 14:04:52
[2026-06-05 14:04:52,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:04:52,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:04:52,379.379 INFO    ] No existing commands found in stream
[2026-06-05 14:04:57,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:04:57,412.412 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 14:05:01,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:05:01,587.587 INFO    ] Checking for system updates...
[2026-06-05 14:05:01,851.851 INFO    ] 200
[2026-06-05 14:05:01,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:01,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:05:01,996.996 INFO    ] No update needed
[2026-06-05 14:05:02,000.000 INFO    ] Checking for camera pi updates...
[2026-06-05 14:05:02,108.108 INFO    ] 200
[2026-06-05 14:05:02,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:02,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:05:02,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:05:02,254.254 INFO    ] No camera update needed
[2026-06-05 14:05:02,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:05:02,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:05:02,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:05:02,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:05:04,315.315 INFO    ] ================================================
[2026-06-05 14:05:04,331.331 INFO    ] Launching Daemon at Fri Jun  5 14:05:04 IST 2026
[2026-06-05 14:05:04,342.342 INFO    ] ================================================
[2026-06-05 14:05:04,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:05:04
[2026-06-05 14:05:05,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:05:05,794.794 INFO    ] Initializing speech engine...
[2026-06-05 14:05:05,803.803 INFO    ] 2026-06-05 14:05:05
[2026-06-05 14:05:06,071.071 INFO    ] 2026-06-05 14:05:06
[2026-06-05 14:05:06,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:05:07,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:05:07,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:05:07,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:05:07,611.611 INFO    ] time= 05/06/2026 14:05:07
[2026-06-05 14:05:07,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:05:07,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:05:07,692.692 INFO    ] No existing commands found in stream
[2026-06-05 14:05:12,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:05:12,706.706 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 14:05:15,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:05:15,548.548 INFO    ] Checking for system updates...
[2026-06-05 14:05:15,588.588 INFO    ] 200
[2026-06-05 14:05:15,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:15,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:05:15,646.646 INFO    ] No update needed
[2026-06-05 14:05:15,648.648 INFO    ] Checking for camera pi updates...
[2026-06-05 14:05:15,682.682 INFO    ] 200
[2026-06-05 14:05:15,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:15,725.725 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:05:15,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:05:15,770.770 INFO    ] No camera update needed
[2026-06-05 14:05:15,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:05:15,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:05:15,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:05:15,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:05:17,828.828 INFO    ] ================================================
[2026-06-05 14:05:17,843.843 INFO    ] Launching Daemon at Fri Jun  5 14:05:17 IST 2026
[2026-06-05 14:05:17,854.854 INFO    ] ================================================
[2026-06-05 14:05:18,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:05:18
[2026-06-05 14:05:19,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:05:19,289.289 INFO    ] Initializing speech engine...
[2026-06-05 14:05:19,303.303 INFO    ] 2026-06-05 14:05:19
[2026-06-05 14:05:19,569.569 INFO    ] 2026-06-05 14:05:19
[2026-06-05 14:05:19,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:05:19,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:05:19,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:05:20,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:05:20,141.141 INFO    ] time= 05/06/2026 14:05:20
[2026-06-05 14:05:20,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:05:20,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:05:20,297.297 INFO    ] No existing commands found in stream
[2026-06-05 14:05:25,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:05:25,314.314 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 14:05:25,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:05:25,824.824 INFO    ] Checking for system updates...
[2026-06-05 14:05:25,863.863 INFO    ] 200
[2026-06-05 14:05:25,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:25,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:05:25,922.922 INFO    ] No update needed
[2026-06-05 14:05:25,924.924 INFO    ] Checking for camera pi updates...
[2026-06-05 14:05:25,962.962 INFO    ] 200
[2026-06-05 14:05:25,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:26,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:05:26,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:05:26,047.047 INFO    ] No camera update needed
[2026-06-05 14:05:26,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:05:26,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:05:26,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:05:26,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:05:28,103.103 INFO    ] ================================================
[2026-06-05 14:05:28,118.118 INFO    ] Launching Daemon at Fri Jun  5 14:05:28 IST 2026
[2026-06-05 14:05:28,128.128 INFO    ] ================================================
[2026-06-05 14:05:28,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:05:28
[2026-06-05 14:05:29,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:05:29,747.747 INFO    ] Initializing speech engine...
[2026-06-05 14:05:29,760.760 INFO    ] 2026-06-05 14:05:29
[2026-06-05 14:05:30,050.050 INFO    ] 2026-06-05 14:05:30
[2026-06-05 14:05:30,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:05:30,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:05:30,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:05:30,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:05:30,583.583 INFO    ] time= 05/06/2026 14:05:30
[2026-06-05 14:05:30,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:05:30,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:05:30,744.744 INFO    ] No existing commands found in stream
[2026-06-05 14:05:35,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:05:35,782.782 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 14:05:40,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:05:40,020.020 INFO    ] Checking for system updates...
[2026-06-05 14:05:40,059.059 INFO    ] 200
[2026-06-05 14:05:40,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:40,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:05:40,124.124 INFO    ] No update needed
[2026-06-05 14:05:40,128.128 INFO    ] Checking for camera pi updates...
[2026-06-05 14:05:40,166.166 INFO    ] 200
[2026-06-05 14:05:40,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:40,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:05:40,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:05:40,261.261 INFO    ] No camera update needed
[2026-06-05 14:05:40,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:05:40,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:05:40,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:05:40,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:05:42,319.319 INFO    ] ================================================
[2026-06-05 14:05:42,333.333 INFO    ] Launching Daemon at Fri Jun  5 14:05:42 IST 2026
[2026-06-05 14:05:42,344.344 INFO    ] ================================================
[2026-06-05 14:05:42,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:05:42
[2026-06-05 14:05:43,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:05:43,783.783 INFO    ] Initializing speech engine...
[2026-06-05 14:05:43,792.792 INFO    ] 2026-06-05 14:05:43
[2026-06-05 14:05:44,090.090 INFO    ] 2026-06-05 14:05:44
[2026-06-05 14:05:44,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:05:45,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:05:45,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:05:45,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:05:45,344.344 INFO    ] time= 05/06/2026 14:05:45
[2026-06-05 14:05:45,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:05:45,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:05:45,467.467 INFO    ] No existing commands found in stream
[2026-06-05 14:05:50,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:05:50,483.483 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 14:05:51,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:05:51,126.126 INFO    ] Checking for system updates...
[2026-06-05 14:05:51,162.162 INFO    ] 200
[2026-06-05 14:05:51,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:51,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:05:51,226.226 INFO    ] No update needed
[2026-06-05 14:05:51,229.229 INFO    ] Checking for camera pi updates...
[2026-06-05 14:05:51,262.262 INFO    ] 200
[2026-06-05 14:05:51,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:05:51,305.305 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:05:51,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:05:51,344.344 INFO    ] No camera update needed
[2026-06-05 14:05:51,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:05:51,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:05:51,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:05:51,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:05:53,399.399 INFO    ] ================================================
[2026-06-05 14:05:53,414.414 INFO    ] Launching Daemon at Fri Jun  5 14:05:53 IST 2026
[2026-06-05 14:05:53,425.425 INFO    ] ================================================
[2026-06-05 14:05:54,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:05:54
[2026-06-05 14:05:54,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:05:54,981.981 INFO    ] Initializing speech engine...
[2026-06-05 14:05:54,996.996 INFO    ] 2026-06-05 14:05:54
[2026-06-05 14:05:55,280.280 INFO    ] 2026-06-05 14:05:55
[2026-06-05 14:05:55,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:05:55,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:05:55,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:05:55,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:05:55,725.725 INFO    ] time= 05/06/2026 14:05:55
[2026-06-05 14:05:55,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:05:55,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:05:55,954.954 INFO    ] No existing commands found in stream
[2026-06-05 14:06:00,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:06:00,979.979 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 14:06:01,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:06:01,770.770 INFO    ] Checking for system updates...
[2026-06-05 14:06:01,870.870 INFO    ] 200
[2026-06-05 14:06:01,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:01,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:06:01,994.994 INFO    ] No update needed
[2026-06-05 14:06:01,998.998 INFO    ] Checking for camera pi updates...
[2026-06-05 14:06:02,050.050 INFO    ] 200
[2026-06-05 14:06:02,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:02,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:06:02,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:06:02,133.133 INFO    ] No camera update needed
[2026-06-05 14:06:02,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:06:02,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:06:02,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:06:02,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:06:04,193.193 INFO    ] ================================================
[2026-06-05 14:06:04,209.209 INFO    ] Launching Daemon at Fri Jun  5 14:06:04 IST 2026
[2026-06-05 14:06:04,221.221 INFO    ] ================================================
[2026-06-05 14:06:04,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:06:04
[2026-06-05 14:06:05,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:06:05,680.680 INFO    ] Initializing speech engine...
[2026-06-05 14:06:05,686.686 INFO    ] 2026-06-05 14:06:05
[2026-06-05 14:06:05,931.931 INFO    ] 2026-06-05 14:06:05
[2026-06-05 14:06:05,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:06:06,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:06:06,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:06:06,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:06:06,429.429 INFO    ] time= 05/06/2026 14:06:06
[2026-06-05 14:06:06,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:06:06,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:06:06,634.634 INFO    ] No existing commands found in stream
[2026-06-05 14:06:11,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:06:11,663.663 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 14:06:12,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:06:12,497.497 INFO    ] Checking for system updates...
[2026-06-05 14:06:12,534.534 INFO    ] 200
[2026-06-05 14:06:12,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:12,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:06:12,599.599 INFO    ] No update needed
[2026-06-05 14:06:12,601.601 INFO    ] Checking for camera pi updates...
[2026-06-05 14:06:12,636.636 INFO    ] 200
[2026-06-05 14:06:12,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:12,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:06:12,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:06:12,840.840 INFO    ] No camera update needed
[2026-06-05 14:06:12,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:06:12,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:06:12,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:06:12,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:06:14,897.897 INFO    ] ================================================
[2026-06-05 14:06:14,913.913 INFO    ] Launching Daemon at Fri Jun  5 14:06:14 IST 2026
[2026-06-05 14:06:14,924.924 INFO    ] ================================================
[2026-06-05 14:06:15,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:06:15
[2026-06-05 14:06:16,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:06:16,387.387 INFO    ] Initializing speech engine...
[2026-06-05 14:06:16,397.397 INFO    ] 2026-06-05 14:06:16
[2026-06-05 14:06:16,698.698 INFO    ] 2026-06-05 14:06:16
[2026-06-05 14:06:16,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:06:16,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:06:16,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:06:17,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:06:17,122.122 INFO    ] time= 05/06/2026 14:06:17
[2026-06-05 14:06:17,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:06:17,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:06:17,216.216 INFO    ] No existing commands found in stream
[2026-06-05 14:06:22,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:06:22,249.249 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 14:06:26,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:06:26,334.334 INFO    ] Checking for system updates...
[2026-06-05 14:06:26,375.375 INFO    ] 200
[2026-06-05 14:06:26,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:26,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:06:26,434.434 INFO    ] No update needed
[2026-06-05 14:06:26,437.437 INFO    ] Checking for camera pi updates...
[2026-06-05 14:06:26,473.473 INFO    ] 200
[2026-06-05 14:06:26,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:26,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:06:26,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:06:26,567.567 INFO    ] No camera update needed
[2026-06-05 14:06:26,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:06:26,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:06:26,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:06:26,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:06:28,624.624 INFO    ] ================================================
[2026-06-05 14:06:28,640.640 INFO    ] Launching Daemon at Fri Jun  5 14:06:28 IST 2026
[2026-06-05 14:06:28,652.652 INFO    ] ================================================
[2026-06-05 14:06:29,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:06:29
[2026-06-05 14:06:29,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:06:30,085.085 INFO    ] Initializing speech engine...
[2026-06-05 14:06:30,099.099 INFO    ] 2026-06-05 14:06:30
[2026-06-05 14:06:30,387.387 INFO    ] 2026-06-05 14:06:30
[2026-06-05 14:06:30,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:06:30,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:06:30,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:06:31,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:06:31,079.079 INFO    ] time= 05/06/2026 14:06:31
[2026-06-05 14:06:31,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:06:31,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:06:31,203.203 INFO    ] No existing commands found in stream
[2026-06-05 14:06:36,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:06:36,222.222 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 14:06:37,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:06:37,487.487 INFO    ] Checking for system updates...
[2026-06-05 14:06:37,522.522 INFO    ] 200
[2026-06-05 14:06:37,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:37,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:06:37,580.580 INFO    ] No update needed
[2026-06-05 14:06:37,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 14:06:37,621.621 INFO    ] 200
[2026-06-05 14:06:37,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:37,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:06:37,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:06:37,715.715 INFO    ] No camera update needed
[2026-06-05 14:06:37,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:06:37,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:06:37,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:06:37,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:06:39,772.772 INFO    ] ================================================
[2026-06-05 14:06:39,788.788 INFO    ] Launching Daemon at Fri Jun  5 14:06:39 IST 2026
[2026-06-05 14:06:39,800.800 INFO    ] ================================================
[2026-06-05 14:06:40,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:06:40
[2026-06-05 14:06:40,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:06:41,279.279 INFO    ] Initializing speech engine...
[2026-06-05 14:06:41,288.288 INFO    ] 2026-06-05 14:06:41
[2026-06-05 14:06:41,548.548 INFO    ] 2026-06-05 14:06:41
[2026-06-05 14:06:41,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:06:41,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:06:41,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:06:41,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:06:42,015.015 INFO    ] time= 05/06/2026 14:06:41
[2026-06-05 14:06:42,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:06:42,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:06:42,236.236 INFO    ] No existing commands found in stream
[2026-06-05 14:06:47,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:06:47,261.261 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 14:06:48,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:06:48,940.940 INFO    ] Checking for system updates...
[2026-06-05 14:06:48,988.988 INFO    ] 200
[2026-06-05 14:06:48,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:49,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:06:49,056.056 INFO    ] No update needed
[2026-06-05 14:06:49,059.059 INFO    ] Checking for camera pi updates...
[2026-06-05 14:06:49,105.105 INFO    ] 200
[2026-06-05 14:06:49,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:06:49,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:06:49,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:06:49,206.206 INFO    ] No camera update needed
[2026-06-05 14:06:49,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:06:49,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:06:49,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:06:49,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:06:51,267.267 INFO    ] ================================================
[2026-06-05 14:06:51,283.283 INFO    ] Launching Daemon at Fri Jun  5 14:06:51 IST 2026
[2026-06-05 14:06:51,294.294 INFO    ] ================================================
[2026-06-05 14:06:51,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:06:51
[2026-06-05 14:06:52,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:06:52,724.724 INFO    ] Initializing speech engine...
[2026-06-05 14:06:52,737.737 INFO    ] 2026-06-05 14:06:52
[2026-06-05 14:06:52,986.986 INFO    ] 2026-06-05 14:06:52
[2026-06-05 14:06:53,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:06:53,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:06:53,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:06:53,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:06:53,472.472 INFO    ] time= 05/06/2026 14:06:53
[2026-06-05 14:06:53,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:06:53,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:06:53,671.671 INFO    ] No existing commands found in stream
[2026-06-05 14:06:58,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:06:58,705.705 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 14:07:00,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:07:00,271.271 INFO    ] Checking for system updates...
[2026-06-05 14:07:00,309.309 INFO    ] 200
[2026-06-05 14:07:00,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:00,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:07:00,383.383 INFO    ] No update needed
[2026-06-05 14:07:00,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 14:07:00,419.419 INFO    ] 200
[2026-06-05 14:07:00,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:00,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:07:00,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:07:00,520.520 INFO    ] No camera update needed
[2026-06-05 14:07:00,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:07:00,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:07:00,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:07:00,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:07:02,581.581 INFO    ] ================================================
[2026-06-05 14:07:02,607.607 INFO    ] Launching Daemon at Fri Jun  5 14:07:02 IST 2026
[2026-06-05 14:07:02,621.621 INFO    ] ================================================
[2026-06-05 14:07:03,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:07:03
[2026-06-05 14:07:03,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:07:04,166.166 INFO    ] Initializing speech engine...
[2026-06-05 14:07:04,174.174 INFO    ] 2026-06-05 14:07:04
[2026-06-05 14:07:04,440.440 INFO    ] 2026-06-05 14:07:04
[2026-06-05 14:07:04,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:07:04,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:07:04,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:07:04,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:07:04,867.867 INFO    ] time= 05/06/2026 14:07:04
[2026-06-05 14:07:04,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:07:04,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:07:05,049.049 INFO    ] No existing commands found in stream
[2026-06-05 14:07:10,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:07:10,077.077 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 14:07:12,260.260 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:07:12,263.263 INFO    ] Checking for system updates...
[2026-06-05 14:07:12,301.301 INFO    ] 200
[2026-06-05 14:07:12,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:12,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:07:12,366.366 INFO    ] No update needed
[2026-06-05 14:07:12,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 14:07:12,408.408 INFO    ] 200
[2026-06-05 14:07:12,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:12,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:07:12,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:07:12,500.500 INFO    ] No camera update needed
[2026-06-05 14:07:12,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:07:12,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:07:12,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:07:12,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:07:14,557.557 INFO    ] ================================================
[2026-06-05 14:07:14,572.572 INFO    ] Launching Daemon at Fri Jun  5 14:07:14 IST 2026
[2026-06-05 14:07:14,584.584 INFO    ] ================================================
[2026-06-05 14:07:15,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:07:15
[2026-06-05 14:07:15,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:07:15,998.998 INFO    ] Initializing speech engine...
[2026-06-05 14:07:16,004.004 INFO    ] 2026-06-05 14:07:16
[2026-06-05 14:07:16,302.302 INFO    ] 2026-06-05 14:07:16
[2026-06-05 14:07:16,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:07:16,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:07:16,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:07:16,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:07:16,697.697 INFO    ] time= 05/06/2026 14:07:16
[2026-06-05 14:07:16,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:07:16,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:07:16,802.802 INFO    ] No existing commands found in stream
[2026-06-05 14:07:21,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:07:21,818.818 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 14:07:24,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:07:24,044.044 INFO    ] Checking for system updates...
[2026-06-05 14:07:24,081.081 INFO    ] 200
[2026-06-05 14:07:24,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:24,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:07:24,139.139 INFO    ] No update needed
[2026-06-05 14:07:24,141.141 INFO    ] Checking for camera pi updates...
[2026-06-05 14:07:24,176.176 INFO    ] 200
[2026-06-05 14:07:24,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:24,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:07:24,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:07:24,279.279 INFO    ] No camera update needed
[2026-06-05 14:07:24,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:07:24,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:07:24,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:07:24,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:07:26,335.335 INFO    ] ================================================
[2026-06-05 14:07:26,351.351 INFO    ] Launching Daemon at Fri Jun  5 14:07:26 IST 2026
[2026-06-05 14:07:26,362.362 INFO    ] ================================================
[2026-06-05 14:07:26,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:07:26
[2026-06-05 14:07:27,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:07:27,779.779 INFO    ] Initializing speech engine...
[2026-06-05 14:07:27,794.794 INFO    ] 2026-06-05 14:07:27
[2026-06-05 14:07:28,062.062 INFO    ] 2026-06-05 14:07:28
[2026-06-05 14:07:28,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:07:28,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:07:28,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:07:28,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:07:28,470.470 INFO    ] time= 05/06/2026 14:07:28
[2026-06-05 14:07:28,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:07:28,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:07:28,560.560 INFO    ] No existing commands found in stream
[2026-06-05 14:07:33,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:07:33,598.598 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 14:07:34,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:07:34,313.313 INFO    ] Checking for system updates...
[2026-06-05 14:07:34,356.356 INFO    ] 200
[2026-06-05 14:07:34,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:34,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:07:34,414.414 INFO    ] No update needed
[2026-06-05 14:07:34,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 14:07:34,457.457 INFO    ] 200
[2026-06-05 14:07:34,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:34,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:07:34,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:07:34,542.542 INFO    ] No camera update needed
[2026-06-05 14:07:34,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:07:34,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:07:34,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:07:34,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:07:36,599.599 INFO    ] ================================================
[2026-06-05 14:07:36,615.615 INFO    ] Launching Daemon at Fri Jun  5 14:07:36 IST 2026
[2026-06-05 14:07:36,626.626 INFO    ] ================================================
[2026-06-05 14:07:37,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:07:37
[2026-06-05 14:07:37,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:07:38,238.238 INFO    ] Initializing speech engine...
[2026-06-05 14:07:38,246.246 INFO    ] 2026-06-05 14:07:38
[2026-06-05 14:07:38,518.518 INFO    ] 2026-06-05 14:07:38
[2026-06-05 14:07:38,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:07:38,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:07:38,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:07:38,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:07:38,995.995 INFO    ] time= 05/06/2026 14:07:38
[2026-06-05 14:07:39,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:07:39,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:07:39,223.223 INFO    ] No existing commands found in stream
[2026-06-05 14:07:44,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:07:44,253.253 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 14:07:45,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:07:45,666.666 INFO    ] Checking for system updates...
[2026-06-05 14:07:45,708.708 INFO    ] 200
[2026-06-05 14:07:45,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:45,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:07:45,775.775 INFO    ] No update needed
[2026-06-05 14:07:45,778.778 INFO    ] Checking for camera pi updates...
[2026-06-05 14:07:45,813.813 INFO    ] 200
[2026-06-05 14:07:45,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:45,861.861 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:07:45,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:07:45,913.913 INFO    ] No camera update needed
[2026-06-05 14:07:45,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:07:45,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:07:45,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:07:45,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:07:47,973.973 INFO    ] ================================================
[2026-06-05 14:07:47,989.989 INFO    ] Launching Daemon at Fri Jun  5 14:07:47 IST 2026
[2026-06-05 14:07:48,000.000 INFO    ] ================================================
[2026-06-05 14:07:48,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:07:48
[2026-06-05 14:07:49,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:07:49,423.423 INFO    ] Initializing speech engine...
[2026-06-05 14:07:49,445.445 INFO    ] 2026-06-05 14:07:49
[2026-06-05 14:07:49,709.709 INFO    ] 2026-06-05 14:07:49
[2026-06-05 14:07:49,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:07:49,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:07:49,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:07:50,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:07:50,084.084 INFO    ] time= 05/06/2026 14:07:50
[2026-06-05 14:07:50,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:07:50,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:07:50,206.206 INFO    ] No existing commands found in stream
[2026-06-05 14:07:55,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:07:55,220.220 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 14:07:56,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:07:56,276.276 INFO    ] Checking for system updates...
[2026-06-05 14:07:56,312.312 INFO    ] 200
[2026-06-05 14:07:56,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:56,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:07:56,373.373 INFO    ] No update needed
[2026-06-05 14:07:56,376.376 INFO    ] Checking for camera pi updates...
[2026-06-05 14:07:56,413.413 INFO    ] 200
[2026-06-05 14:07:56,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:07:56,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:07:56,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:07:56,508.508 INFO    ] No camera update needed
[2026-06-05 14:07:56,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:07:56,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:07:56,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:07:56,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:07:58,564.564 INFO    ] ================================================
[2026-06-05 14:07:58,581.581 INFO    ] Launching Daemon at Fri Jun  5 14:07:58 IST 2026
[2026-06-05 14:07:58,592.592 INFO    ] ================================================
[2026-06-05 14:07:59,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:07:59
[2026-06-05 14:07:59,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:08:00,203.203 INFO    ] Initializing speech engine...
[2026-06-05 14:08:00,211.211 INFO    ] 2026-06-05 14:08:00
[2026-06-05 14:08:00,496.496 INFO    ] 2026-06-05 14:08:00
[2026-06-05 14:08:00,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:08:00,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:08:00,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:08:01,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:08:01,049.049 INFO    ] time= 05/06/2026 14:08:01
[2026-06-05 14:08:01,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:08:01,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:08:01,209.209 INFO    ] No existing commands found in stream
[2026-06-05 14:08:06,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:08:06,244.244 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 14:08:09,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:08:09,022.022 INFO    ] Checking for system updates...
[2026-06-05 14:08:09,059.059 INFO    ] 200
[2026-06-05 14:08:09,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:08:09,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:08:09,128.128 INFO    ] No update needed
[2026-06-05 14:08:09,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 14:08:09,167.167 INFO    ] 200
[2026-06-05 14:08:09,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:08:09,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:08:09,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:08:09,258.258 INFO    ] No camera update needed
[2026-06-05 14:08:09,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:08:09,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:08:09,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:08:09,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:08:11,319.319 INFO    ] ================================================
[2026-06-05 14:08:11,334.334 INFO    ] Launching Daemon at Fri Jun  5 14:08:11 IST 2026
[2026-06-05 14:08:11,346.346 INFO    ] ================================================
[2026-06-05 14:08:11,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:08:11
[2026-06-05 14:08:12,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:08:12,770.770 INFO    ] Initializing speech engine...
[2026-06-05 14:08:12,786.786 INFO    ] 2026-06-05 14:08:12
[2026-06-05 14:08:13,069.069 INFO    ] 2026-06-05 14:08:13
[2026-06-05 14:08:13,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:08:15,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:08:15,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:08:15,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:08:15,315.315 INFO    ] time= 05/06/2026 14:08:15
[2026-06-05 14:08:15,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:08:15,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:08:15,429.429 INFO    ] No existing commands found in stream
[2026-06-05 14:08:20,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:08:20,441.441 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 14:08:23,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:08:23,049.049 INFO    ] Checking for system updates...
[2026-06-05 14:08:23,086.086 INFO    ] 200
[2026-06-05 14:08:23,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:08:23,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:08:23,145.145 INFO    ] No update needed
[2026-06-05 14:08:23,147.147 INFO    ] Checking for camera pi updates...
[2026-06-05 14:08:23,184.184 INFO    ] 200
[2026-06-05 14:08:23,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:08:23,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:08:23,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:08:23,376.376 INFO    ] No camera update needed
[2026-06-05 14:08:23,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:08:23,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:08:23,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:08:23,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:08:25,434.434 INFO    ] ================================================
[2026-06-05 14:08:25,450.450 INFO    ] Launching Daemon at Fri Jun  5 14:08:25 IST 2026
[2026-06-05 14:08:25,461.461 INFO    ] ================================================
[2026-06-05 14:08:26,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:08:26
[2026-06-05 14:08:26,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:08:26,928.928 INFO    ] Initializing speech engine...
[2026-06-05 14:08:26,939.939 INFO    ] 2026-06-05 14:08:26
[2026-06-05 14:08:27,187.187 INFO    ] 2026-06-05 14:08:27
[2026-06-05 14:08:27,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:08:28,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:08:28,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:08:28,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:08:28,614.614 INFO    ] time= 05/06/2026 14:08:28
[2026-06-05 14:08:28,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:08:28,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:08:28,700.700 INFO    ] No existing commands found in stream
[2026-06-05 14:08:33,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:08:33,712.712 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 14:08:37,023.023 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:08:37,026.026 INFO    ] Checking for system updates...
[2026-06-05 14:08:37,062.062 INFO    ] 200
[2026-06-05 14:08:37,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:08:37,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:08:37,120.120 INFO    ] No update needed
[2026-06-05 14:08:37,122.122 INFO    ] Checking for camera pi updates...
[2026-06-05 14:08:37,156.156 INFO    ] 200
[2026-06-05 14:08:37,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:08:37,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:08:37,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:08:37,252.252 INFO    ] No camera update needed
[2026-06-05 14:08:37,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:08:37,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:08:37,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:08:37,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:08:39,307.307 INFO    ] ================================================
[2026-06-05 14:08:39,323.323 INFO    ] Launching Daemon at Fri Jun  5 14:08:39 IST 2026
[2026-06-05 14:08:39,334.334 INFO    ] ================================================
[2026-06-05 14:08:39,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:08:39
[2026-06-05 14:08:40,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:08:40,777.777 INFO    ] Initializing speech engine...
[2026-06-05 14:08:40,790.790 INFO    ] 2026-06-05 14:08:40
[2026-06-05 14:08:41,057.057 INFO    ] 2026-06-05 14:08:41
[2026-06-05 14:08:41,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:08:41,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:08:41,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:08:41,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:08:41,641.641 INFO    ] time= 05/06/2026 14:08:41
[2026-06-05 14:08:41,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:08:41,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:08:41,830.830 INFO    ] No existing commands found in stream
[2026-06-05 14:08:46,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:08:46,863.863 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 14:08:48,231.231 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:08:48,234.234 INFO    ] Checking for system updates...
[2026-06-05 14:08:48,270.270 INFO    ] 200
[2026-06-05 14:08:48,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:08:48,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:08:48,328.328 INFO    ] No update needed
[2026-06-05 14:08:48,330.330 INFO    ] Checking for camera pi updates...
[2026-06-05 14:08:48,364.364 INFO    ] 200
[2026-06-05 14:08:48,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:08:48,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:08:48,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:08:48,460.460 INFO    ] No camera update needed
[2026-06-05 14:08:48,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:08:48,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:08:48,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:08:48,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:08:50,517.517 INFO    ] ================================================
[2026-06-05 14:08:50,532.532 INFO    ] Launching Daemon at Fri Jun  5 14:08:50 IST 2026
[2026-06-05 14:08:50,544.544 INFO    ] ================================================
[2026-06-05 14:08:51,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:08:51
[2026-06-05 14:08:51,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:08:52,014.014 INFO    ] Initializing speech engine...
[2026-06-05 14:08:52,021.021 INFO    ] 2026-06-05 14:08:52
[2026-06-05 14:08:52,284.284 INFO    ] 2026-06-05 14:08:52
[2026-06-05 14:08:52,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:08:52,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:08:52,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:08:52,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:08:52,764.764 INFO    ] time= 05/06/2026 14:08:52
[2026-06-05 14:08:52,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:08:52,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:08:52,948.948 INFO    ] No existing commands found in stream
[2026-06-05 14:08:57,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:08:57,970.970 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 14:09:01,461.461 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:09:01,463.463 INFO    ] Checking for system updates...
[2026-06-05 14:09:01,500.500 INFO    ] 200
[2026-06-05 14:09:01,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:01,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:09:01,561.561 INFO    ] No update needed
[2026-06-05 14:09:01,564.564 INFO    ] Checking for camera pi updates...
[2026-06-05 14:09:01,597.597 INFO    ] 200
[2026-06-05 14:09:01,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:01,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:09:01,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:09:01,680.680 INFO    ] No camera update needed
[2026-06-05 14:09:01,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:09:01,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:09:01,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:09:01,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:09:03,744.744 INFO    ] ================================================
[2026-06-05 14:09:03,758.758 INFO    ] Launching Daemon at Fri Jun  5 14:09:03 IST 2026
[2026-06-05 14:09:03,769.769 INFO    ] ================================================
[2026-06-05 14:09:04,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:09:04
[2026-06-05 14:09:04,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:09:05,200.200 INFO    ] Initializing speech engine...
[2026-06-05 14:09:05,206.206 INFO    ] 2026-06-05 14:09:05
[2026-06-05 14:09:05,455.455 INFO    ] 2026-06-05 14:09:05
[2026-06-05 14:09:05,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:09:05,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:09:05,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:09:05,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:09:05,831.831 INFO    ] time= 05/06/2026 14:09:05
[2026-06-05 14:09:05,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:09:05,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:09:06,033.033 INFO    ] No existing commands found in stream
[2026-06-05 14:09:11,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:09:11,047.047 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 14:09:12,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:09:12,143.143 INFO    ] Checking for system updates...
[2026-06-05 14:09:12,179.179 INFO    ] 200
[2026-06-05 14:09:12,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:12,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:09:12,236.236 INFO    ] No update needed
[2026-06-05 14:09:12,239.239 INFO    ] Checking for camera pi updates...
[2026-06-05 14:09:12,272.272 INFO    ] 200
[2026-06-05 14:09:12,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:12,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:09:12,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:09:12,363.363 INFO    ] No camera update needed
[2026-06-05 14:09:12,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:09:12,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:09:12,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:09:12,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:09:14,419.419 INFO    ] ================================================
[2026-06-05 14:09:14,434.434 INFO    ] Launching Daemon at Fri Jun  5 14:09:14 IST 2026
[2026-06-05 14:09:14,445.445 INFO    ] ================================================
[2026-06-05 14:09:15,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:09:15
[2026-06-05 14:09:15,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:09:16,054.054 INFO    ] Initializing speech engine...
[2026-06-05 14:09:16,060.060 INFO    ] 2026-06-05 14:09:16
[2026-06-05 14:09:16,369.369 INFO    ] 2026-06-05 14:09:16
[2026-06-05 14:09:16,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:09:16,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:09:16,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:09:16,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:09:16,889.889 INFO    ] time= 05/06/2026 14:09:16
[2026-06-05 14:09:16,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:09:16,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:09:17,058.058 INFO    ] No existing commands found in stream
[2026-06-05 14:09:22,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:09:22,091.091 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 14:09:23,560.560 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:09:23,563.563 INFO    ] Checking for system updates...
[2026-06-05 14:09:23,601.601 INFO    ] 200
[2026-06-05 14:09:23,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:23,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:09:23,666.666 INFO    ] No update needed
[2026-06-05 14:09:23,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 14:09:23,704.704 INFO    ] 200
[2026-06-05 14:09:23,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:23,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:09:23,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:09:23,795.795 INFO    ] No camera update needed
[2026-06-05 14:09:23,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:09:23,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:09:23,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:09:23,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:09:25,853.853 INFO    ] ================================================
[2026-06-05 14:09:25,868.868 INFO    ] Launching Daemon at Fri Jun  5 14:09:25 IST 2026
[2026-06-05 14:09:25,879.879 INFO    ] ================================================
[2026-06-05 14:09:26,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:09:26
[2026-06-05 14:09:27,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:09:27,292.292 INFO    ] Initializing speech engine...
[2026-06-05 14:09:27,308.308 INFO    ] 2026-06-05 14:09:27
[2026-06-05 14:09:27,589.589 INFO    ] 2026-06-05 14:09:27
[2026-06-05 14:09:27,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:09:27,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:09:27,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:09:27,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:09:28,005.005 INFO    ] time= 05/06/2026 14:09:27
[2026-06-05 14:09:28,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:09:28,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:09:28,168.168 INFO    ] No existing commands found in stream
[2026-06-05 14:09:33,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:09:33,191.191 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 14:09:34,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:09:34,447.447 INFO    ] Checking for system updates...
[2026-06-05 14:09:34,487.487 INFO    ] 200
[2026-06-05 14:09:34,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:34,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:09:34,544.544 INFO    ] No update needed
[2026-06-05 14:09:34,547.547 INFO    ] Checking for camera pi updates...
[2026-06-05 14:09:34,580.580 INFO    ] 200
[2026-06-05 14:09:34,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:34,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:09:34,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:09:34,666.666 INFO    ] No camera update needed
[2026-06-05 14:09:34,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:09:34,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:09:34,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:09:34,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:09:36,722.722 INFO    ] ================================================
[2026-06-05 14:09:36,738.738 INFO    ] Launching Daemon at Fri Jun  5 14:09:36 IST 2026
[2026-06-05 14:09:36,749.749 INFO    ] ================================================
[2026-06-05 14:09:37,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:09:37
[2026-06-05 14:09:37,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:09:38,159.159 INFO    ] Initializing speech engine...
[2026-06-05 14:09:38,176.176 INFO    ] 2026-06-05 14:09:38
[2026-06-05 14:09:38,459.459 INFO    ] 2026-06-05 14:09:38
[2026-06-05 14:09:38,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:09:38,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:09:38,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:09:38,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:09:38,873.873 INFO    ] time= 05/06/2026 14:09:38
[2026-06-05 14:09:38,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:09:38,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:09:39,040.040 INFO    ] No existing commands found in stream
[2026-06-05 14:09:44,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:09:44,060.060 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 14:09:47,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:09:47,784.784 INFO    ] Checking for system updates...
[2026-06-05 14:09:47,820.820 INFO    ] 200
[2026-06-05 14:09:47,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:47,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:09:47,877.877 INFO    ] No update needed
[2026-06-05 14:09:47,880.880 INFO    ] Checking for camera pi updates...
[2026-06-05 14:09:47,914.914 INFO    ] 200
[2026-06-05 14:09:47,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:09:47,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:09:47,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:09:47,989.989 INFO    ] No camera update needed
[2026-06-05 14:09:47,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:09:47,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:09:48,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:09:48,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:09:50,047.047 INFO    ] ================================================
[2026-06-05 14:09:50,063.063 INFO    ] Launching Daemon at Fri Jun  5 14:09:50 IST 2026
[2026-06-05 14:09:50,074.074 INFO    ] ================================================
[2026-06-05 14:09:50,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:09:50
[2026-06-05 14:09:51,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:09:51,485.485 INFO    ] Initializing speech engine...
[2026-06-05 14:09:51,491.491 INFO    ] 2026-06-05 14:09:51
[2026-06-05 14:09:51,762.762 INFO    ] 2026-06-05 14:09:51
[2026-06-05 14:09:51,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:09:51,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:09:51,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:09:52,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:09:52,142.142 INFO    ] time= 05/06/2026 14:09:52
[2026-06-05 14:09:52,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:09:52,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:09:52,307.307 INFO    ] No existing commands found in stream
[2026-06-05 14:09:57,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:09:57,335.335 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 14:10:01,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:10:01,533.533 INFO    ] Checking for system updates...
[2026-06-05 14:10:01,570.570 INFO    ] 200
[2026-06-05 14:10:01,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:10:01,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:10:01,648.648 INFO    ] No update needed
[2026-06-05 14:10:01,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 14:10:01,744.744 INFO    ] 200
[2026-06-05 14:10:01,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:10:01,961.961 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:10:02,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:10:02,068.068 INFO    ] No camera update needed
[2026-06-05 14:10:02,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:10:02,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:10:02,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:10:02,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:10:04,178.178 INFO    ] ================================================
[2026-06-05 14:10:04,196.196 INFO    ] Launching Daemon at Fri Jun  5 14:10:04 IST 2026
[2026-06-05 14:10:04,207.207 INFO    ] ================================================
[2026-06-05 14:10:04,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:10:04
[2026-06-05 14:10:05,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:10:05,772.772 INFO    ] Initializing speech engine...
[2026-06-05 14:10:05,796.796 INFO    ] 2026-06-05 14:10:05
[2026-06-05 14:10:06,055.055 INFO    ] 2026-06-05 14:10:06
[2026-06-05 14:10:06,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:10:06,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:10:06,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:10:06,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:10:06,436.436 INFO    ] time= 05/06/2026 14:10:06
[2026-06-05 14:10:06,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:10:06,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:10:06,627.627 INFO    ] No existing commands found in stream
[2026-06-05 14:10:11,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:10:11,653.653 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 14:10:25,688.688 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-05 14:10:25,716.716 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM07202501 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-05 14:10:25,726.726 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM07202501 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-05 14:10:25,746.746 INFO    ] None
[2026-06-05 14:10:25,749.749 INFO    ] Checking for system updates...
[2026-06-05 14:10:25,790.790 INFO    ] 200
[2026-06-05 14:10:25,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:10:25,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:10:25,848.848 INFO    ] No update needed
[2026-06-05 14:10:25,851.851 INFO    ] Checking for camera pi updates...
[2026-06-05 14:10:25,888.888 INFO    ] 200
[2026-06-05 14:10:25,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:10:25,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:10:26,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:10:26,079.079 INFO    ] No camera update needed
[2026-06-05 14:10:26,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:10:26,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:10:26,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:10:26,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:10:28,137.137 INFO    ] ================================================
[2026-06-05 14:10:28,153.153 INFO    ] Launching Daemon at Fri Jun  5 14:10:28 IST 2026
[2026-06-05 14:10:28,164.164 INFO    ] ================================================
[2026-06-05 14:10:28,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:10:28
[2026-06-05 14:10:29,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:10:29,795.795 INFO    ] Initializing speech engine...
[2026-06-05 14:10:29,803.803 INFO    ] 2026-06-05 14:10:29
[2026-06-05 14:10:30,118.118 INFO    ] 2026-06-05 14:10:30
[2026-06-05 14:10:30,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:10:30,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:10:30,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:10:30,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:10:30,569.569 INFO    ] time= 05/06/2026 14:10:30
[2026-06-05 14:10:30,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:10:30,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:10:30,782.782 INFO    ] No existing commands found in stream
[2026-06-05 14:10:35,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:10:35,801.801 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 14:10:36,560.560 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:10:36,563.563 INFO    ] Checking for system updates...
[2026-06-05 14:10:36,599.599 INFO    ] 200
[2026-06-05 14:10:36,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:10:36,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:10:36,657.657 INFO    ] No update needed
[2026-06-05 14:10:36,659.659 INFO    ] Checking for camera pi updates...
[2026-06-05 14:10:36,693.693 INFO    ] 200
[2026-06-05 14:10:36,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:10:36,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:10:36,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:10:36,787.787 INFO    ] No camera update needed
[2026-06-05 14:10:36,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:10:36,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:10:36,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:10:36,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:10:38,841.841 INFO    ] ================================================
[2026-06-05 14:10:38,857.857 INFO    ] Launching Daemon at Fri Jun  5 14:10:38 IST 2026
[2026-06-05 14:10:38,868.868 INFO    ] ================================================
[2026-06-05 14:10:39,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:10:39
[2026-06-05 14:10:40,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:10:40,506.506 INFO    ] Initializing speech engine...
[2026-06-05 14:10:40,514.514 INFO    ] 2026-06-05 14:10:40
[2026-06-05 14:10:40,807.807 INFO    ] 2026-06-05 14:10:40
[2026-06-05 14:10:40,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:10:41,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:10:41,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:10:41,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:10:41,341.341 INFO    ] time= 05/06/2026 14:10:41
[2026-06-05 14:10:41,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:10:41,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:10:41,492.492 INFO    ] No existing commands found in stream
[2026-06-05 14:10:46,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:10:46,512.512 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 14:10:49,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:10:49,328.328 INFO    ] Checking for system updates...
[2026-06-05 14:10:49,366.366 INFO    ] 200
[2026-06-05 14:10:49,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:10:49,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:10:49,432.432 INFO    ] No update needed
[2026-06-05 14:10:49,434.434 INFO    ] Checking for camera pi updates...
[2026-06-05 14:10:49,468.468 INFO    ] 200
[2026-06-05 14:10:49,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:10:49,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:10:49,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:10:49,564.564 INFO    ] No camera update needed
[2026-06-05 14:10:49,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:10:49,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:10:49,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:10:49,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:10:51,621.621 INFO    ] ================================================
[2026-06-05 14:10:51,637.637 INFO    ] Launching Daemon at Fri Jun  5 14:10:51 IST 2026
[2026-06-05 14:10:51,648.648 INFO    ] ================================================
[2026-06-05 14:10:52,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:10:52
[2026-06-05 14:10:52,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:10:53,063.063 INFO    ] Initializing speech engine...
[2026-06-05 14:10:53,081.081 INFO    ] 2026-06-05 14:10:53
[2026-06-05 14:10:53,328.328 INFO    ] 2026-06-05 14:10:53
[2026-06-05 14:10:53,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:10:53,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:10:53,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:10:53,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:10:53,818.818 INFO    ] time= 05/06/2026 14:10:53
[2026-06-05 14:10:53,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:10:53,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:10:54,024.024 INFO    ] No existing commands found in stream
[2026-06-05 14:10:59,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:10:59,054.054 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 14:11:01,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:11:01,842.842 INFO    ] Checking for system updates...
[2026-06-05 14:11:01,882.882 INFO    ] 200
[2026-06-05 14:11:01,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:01,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:11:01,948.948 INFO    ] No update needed
[2026-06-05 14:11:01,951.951 INFO    ] Checking for camera pi updates...
[2026-06-05 14:11:01,991.991 INFO    ] 200
[2026-06-05 14:11:01,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:02,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:11:02,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:11:02,085.085 INFO    ] No camera update needed
[2026-06-05 14:11:02,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:11:02,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:11:02,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:11:02,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:11:04,150.150 INFO    ] ================================================
[2026-06-05 14:11:04,166.166 INFO    ] Launching Daemon at Fri Jun  5 14:11:04 IST 2026
[2026-06-05 14:11:04,177.177 INFO    ] ================================================
[2026-06-05 14:11:04,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:11:04
[2026-06-05 14:11:05,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:11:05,787.787 INFO    ] Initializing speech engine...
[2026-06-05 14:11:05,795.795 INFO    ] 2026-06-05 14:11:05
[2026-06-05 14:11:06,053.053 INFO    ] 2026-06-05 14:11:06
[2026-06-05 14:11:06,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:11:06,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:11:06,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:11:06,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:11:06,552.552 INFO    ] time= 05/06/2026 14:11:06
[2026-06-05 14:11:06,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:11:06,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:11:06,773.773 INFO    ] No existing commands found in stream
[2026-06-05 14:11:11,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:11:11,792.792 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 14:11:16,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:11:16,385.385 INFO    ] Checking for system updates...
[2026-06-05 14:11:16,423.423 INFO    ] 200
[2026-06-05 14:11:16,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:16,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:11:16,483.483 INFO    ] No update needed
[2026-06-05 14:11:16,485.485 INFO    ] Checking for camera pi updates...
[2026-06-05 14:11:16,520.520 INFO    ] 200
[2026-06-05 14:11:16,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:16,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:11:16,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:11:16,618.618 INFO    ] No camera update needed
[2026-06-05 14:11:16,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:11:16,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:11:16,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:11:16,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:11:18,678.678 INFO    ] ================================================
[2026-06-05 14:11:18,694.694 INFO    ] Launching Daemon at Fri Jun  5 14:11:18 IST 2026
[2026-06-05 14:11:18,705.705 INFO    ] ================================================
[2026-06-05 14:11:19,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:11:19
[2026-06-05 14:11:19,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:11:20,121.121 INFO    ] Initializing speech engine...
[2026-06-05 14:11:20,136.136 INFO    ] 2026-06-05 14:11:20
[2026-06-05 14:11:20,412.412 INFO    ] 2026-06-05 14:11:20
[2026-06-05 14:11:20,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:11:21,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:11:21,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:11:21,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:11:21,943.943 INFO    ] time= 05/06/2026 14:11:21
[2026-06-05 14:11:21,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:11:21,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:11:22,024.024 INFO    ] No existing commands found in stream
[2026-06-05 14:11:27,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:11:27,038.038 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 14:11:30,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:11:30,509.509 INFO    ] Checking for system updates...
[2026-06-05 14:11:30,548.548 INFO    ] 200
[2026-06-05 14:11:30,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:30,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:11:30,605.605 INFO    ] No update needed
[2026-06-05 14:11:30,608.608 INFO    ] Checking for camera pi updates...
[2026-06-05 14:11:30,645.645 INFO    ] 200
[2026-06-05 14:11:30,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:30,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:11:30,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:11:30,734.734 INFO    ] No camera update needed
[2026-06-05 14:11:30,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:11:30,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:11:30,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:11:30,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:11:32,790.790 INFO    ] ================================================
[2026-06-05 14:11:32,806.806 INFO    ] Launching Daemon at Fri Jun  5 14:11:32 IST 2026
[2026-06-05 14:11:32,818.818 INFO    ] ================================================
[2026-06-05 14:11:33,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:11:33
[2026-06-05 14:11:34,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:11:34,446.446 INFO    ] Initializing speech engine...
[2026-06-05 14:11:34,458.458 INFO    ] 2026-06-05 14:11:34
[2026-06-05 14:11:34,735.735 INFO    ] 2026-06-05 14:11:34
[2026-06-05 14:11:34,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:11:35,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:11:35,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:11:35,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:11:35,214.214 INFO    ] time= 05/06/2026 14:11:35
[2026-06-05 14:11:35,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:11:35,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:11:35,433.433 INFO    ] No existing commands found in stream
[2026-06-05 14:11:40,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:11:40,456.456 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 14:11:41,191.191 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:11:41,193.193 INFO    ] Checking for system updates...
[2026-06-05 14:11:41,229.229 INFO    ] 200
[2026-06-05 14:11:41,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:41,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:11:41,288.288 INFO    ] No update needed
[2026-06-05 14:11:41,290.290 INFO    ] Checking for camera pi updates...
[2026-06-05 14:11:41,324.324 INFO    ] 200
[2026-06-05 14:11:41,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:41,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:11:41,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:11:41,414.414 INFO    ] No camera update needed
[2026-06-05 14:11:41,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:11:41,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:11:41,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:11:41,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:11:43,469.469 INFO    ] ================================================
[2026-06-05 14:11:43,484.484 INFO    ] Launching Daemon at Fri Jun  5 14:11:43 IST 2026
[2026-06-05 14:11:43,495.495 INFO    ] ================================================
[2026-06-05 14:11:44,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:11:44
[2026-06-05 14:11:44,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:11:44,925.925 INFO    ] Initializing speech engine...
[2026-06-05 14:11:44,946.946 INFO    ] 2026-06-05 14:11:44
[2026-06-05 14:11:45,207.207 INFO    ] 2026-06-05 14:11:45
[2026-06-05 14:11:45,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:11:45,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:11:45,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:11:45,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:11:45,733.733 INFO    ] time= 05/06/2026 14:11:45
[2026-06-05 14:11:45,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:11:45,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:11:45,928.928 INFO    ] No existing commands found in stream
[2026-06-05 14:11:50,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:11:50,960.960 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 14:11:54,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:11:54,864.864 INFO    ] Checking for system updates...
[2026-06-05 14:11:54,902.902 INFO    ] 200
[2026-06-05 14:11:54,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:54,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:11:54,962.962 INFO    ] No update needed
[2026-06-05 14:11:54,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 14:11:55,000.000 INFO    ] 200
[2026-06-05 14:11:55,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:11:55,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:11:55,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:11:55,096.096 INFO    ] No camera update needed
[2026-06-05 14:11:55,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:11:55,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:11:55,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:11:55,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:11:57,157.157 INFO    ] ================================================
[2026-06-05 14:11:57,172.172 INFO    ] Launching Daemon at Fri Jun  5 14:11:57 IST 2026
[2026-06-05 14:11:57,183.183 INFO    ] ================================================
[2026-06-05 14:11:57,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:11:57
[2026-06-05 14:11:58,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:11:58,652.652 INFO    ] Initializing speech engine...
[2026-06-05 14:11:58,661.661 INFO    ] 2026-06-05 14:11:58
[2026-06-05 14:11:58,964.964 INFO    ] 2026-06-05 14:11:58
[2026-06-05 14:11:59,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:11:59,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:11:59,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:11:59,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:11:59,337.337 INFO    ] time= 05/06/2026 14:11:59
[2026-06-05 14:11:59,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:11:59,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:11:59,515.515 INFO    ] No existing commands found in stream
[2026-06-05 14:12:04,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:12:04,547.547 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 14:12:05,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:12:05,777.777 INFO    ] Checking for system updates...
[2026-06-05 14:12:05,818.818 INFO    ] 200
[2026-06-05 14:12:05,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:05,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:12:05,877.877 INFO    ] No update needed
[2026-06-05 14:12:05,879.879 INFO    ] Checking for camera pi updates...
[2026-06-05 14:12:05,913.913 INFO    ] 200
[2026-06-05 14:12:05,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:05,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:12:05,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:12:05,988.988 INFO    ] No camera update needed
[2026-06-05 14:12:05,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:12:05,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:12:05,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:12:06,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:12:08,047.047 INFO    ] ================================================
[2026-06-05 14:12:08,062.062 INFO    ] Launching Daemon at Fri Jun  5 14:12:08 IST 2026
[2026-06-05 14:12:08,073.073 INFO    ] ================================================
[2026-06-05 14:12:08,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:12:08
[2026-06-05 14:12:09,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:12:09,576.576 INFO    ] Initializing speech engine...
[2026-06-05 14:12:09,598.598 INFO    ] 2026-06-05 14:12:09
[2026-06-05 14:12:09,858.858 INFO    ] 2026-06-05 14:12:09
[2026-06-05 14:12:09,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:12:10,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:12:10,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:12:10,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:12:10,349.349 INFO    ] time= 05/06/2026 14:12:10
[2026-06-05 14:12:10,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:12:10,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:12:10,565.565 INFO    ] No existing commands found in stream
[2026-06-05 14:12:15,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:12:15,583.583 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 14:12:16,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:12:16,894.894 INFO    ] Checking for system updates...
[2026-06-05 14:12:16,932.932 INFO    ] 200
[2026-06-05 14:12:16,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:16,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:12:16,991.991 INFO    ] No update needed
[2026-06-05 14:12:16,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 14:12:17,028.028 INFO    ] 200
[2026-06-05 14:12:17,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:17,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:12:17,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:12:17,114.114 INFO    ] No camera update needed
[2026-06-05 14:12:17,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:12:17,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:12:17,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:12:17,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:12:19,169.169 INFO    ] ================================================
[2026-06-05 14:12:19,184.184 INFO    ] Launching Daemon at Fri Jun  5 14:12:19 IST 2026
[2026-06-05 14:12:19,194.194 INFO    ] ================================================
[2026-06-05 14:12:19,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:12:19
[2026-06-05 14:12:20,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:12:20,796.796 INFO    ] Initializing speech engine...
[2026-06-05 14:12:20,811.811 INFO    ] 2026-06-05 14:12:20
[2026-06-05 14:12:21,088.088 INFO    ] 2026-06-05 14:12:21
[2026-06-05 14:12:21,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:12:21,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:12:21,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:12:21,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:12:21,569.569 INFO    ] time= 05/06/2026 14:12:21
[2026-06-05 14:12:21,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:12:21,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:12:21,759.759 INFO    ] No existing commands found in stream
[2026-06-05 14:12:26,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:12:26,793.793 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 14:12:30,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:12:30,746.746 INFO    ] Checking for system updates...
[2026-06-05 14:12:30,782.782 INFO    ] 200
[2026-06-05 14:12:30,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:30,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:12:30,843.843 INFO    ] No update needed
[2026-06-05 14:12:30,846.846 INFO    ] Checking for camera pi updates...
[2026-06-05 14:12:30,881.881 INFO    ] 200
[2026-06-05 14:12:30,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:30,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:12:31,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:12:31,059.059 INFO    ] No camera update needed
[2026-06-05 14:12:31,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:12:31,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:12:31,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:12:31,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:12:33,117.117 INFO    ] ================================================
[2026-06-05 14:12:33,132.132 INFO    ] Launching Daemon at Fri Jun  5 14:12:33 IST 2026
[2026-06-05 14:12:33,143.143 INFO    ] ================================================
[2026-06-05 14:12:33,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:12:33
[2026-06-05 14:12:34,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:12:34,695.695 INFO    ] Initializing speech engine...
[2026-06-05 14:12:34,703.703 INFO    ] 2026-06-05 14:12:34
[2026-06-05 14:12:34,981.981 INFO    ] 2026-06-05 14:12:34
[2026-06-05 14:12:35,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:12:35,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:12:35,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:12:35,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:12:35,446.446 INFO    ] time= 05/06/2026 14:12:35
[2026-06-05 14:12:35,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:12:35,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:12:35,674.674 INFO    ] No existing commands found in stream
[2026-06-05 14:12:40,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:12:40,706.706 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 14:12:42,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:12:42,947.947 INFO    ] Checking for system updates...
[2026-06-05 14:12:42,987.987 INFO    ] 200
[2026-06-05 14:12:42,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:43,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:12:43,063.063 INFO    ] No update needed
[2026-06-05 14:12:43,067.067 INFO    ] Checking for camera pi updates...
[2026-06-05 14:12:43,106.106 INFO    ] 200
[2026-06-05 14:12:43,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:43,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:12:43,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:12:43,213.213 INFO    ] No camera update needed
[2026-06-05 14:12:43,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:12:43,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:12:43,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:12:43,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:12:45,271.271 INFO    ] ================================================
[2026-06-05 14:12:45,286.286 INFO    ] Launching Daemon at Fri Jun  5 14:12:45 IST 2026
[2026-06-05 14:12:45,296.296 INFO    ] ================================================
[2026-06-05 14:12:45,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:12:45
[2026-06-05 14:12:46,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:12:46,741.741 INFO    ] Initializing speech engine...
[2026-06-05 14:12:46,748.748 INFO    ] 2026-06-05 14:12:46
[2026-06-05 14:12:47,033.033 INFO    ] 2026-06-05 14:12:47
[2026-06-05 14:12:47,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:12:47,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:12:47,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:12:47,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:12:47,515.515 INFO    ] time= 05/06/2026 14:12:47
[2026-06-05 14:12:47,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:12:47,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:12:47,711.711 INFO    ] No existing commands found in stream
[2026-06-05 14:12:52,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:12:52,725.725 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 14:12:56,044.044 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:12:56,047.047 INFO    ] Checking for system updates...
[2026-06-05 14:12:56,085.085 INFO    ] 200
[2026-06-05 14:12:56,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:56,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:12:56,147.147 INFO    ] No update needed
[2026-06-05 14:12:56,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 14:12:56,185.185 INFO    ] 200
[2026-06-05 14:12:56,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:12:56,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:12:56,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:12:56,276.276 INFO    ] No camera update needed
[2026-06-05 14:12:56,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:12:56,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:12:56,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:12:56,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:12:58,330.330 INFO    ] ================================================
[2026-06-05 14:12:58,345.345 INFO    ] Launching Daemon at Fri Jun  5 14:12:58 IST 2026
[2026-06-05 14:12:58,356.356 INFO    ] ================================================
[2026-06-05 14:12:58,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:12:58
[2026-06-05 14:12:59,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:12:59,779.779 INFO    ] Initializing speech engine...
[2026-06-05 14:12:59,788.788 INFO    ] 2026-06-05 14:12:59
[2026-06-05 14:13:00,039.039 INFO    ] 2026-06-05 14:13:00
[2026-06-05 14:13:00,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:13:00,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:13:00,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:13:00,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:13:00,521.521 INFO    ] time= 05/06/2026 14:13:00
[2026-06-05 14:13:00,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:13:00,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:13:00,693.693 INFO    ] No existing commands found in stream
[2026-06-05 14:13:05,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:13:05,720.720 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 14:13:09,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:13:09,531.531 INFO    ] Checking for system updates...
[2026-06-05 14:13:09,567.567 INFO    ] 200
[2026-06-05 14:13:09,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:09,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:13:09,626.626 INFO    ] No update needed
[2026-06-05 14:13:09,629.629 INFO    ] Checking for camera pi updates...
[2026-06-05 14:13:09,662.662 INFO    ] 200
[2026-06-05 14:13:09,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:09,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:13:09,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:13:09,753.753 INFO    ] No camera update needed
[2026-06-05 14:13:09,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:13:09,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:13:09,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:13:09,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:13:11,809.809 INFO    ] ================================================
[2026-06-05 14:13:11,824.824 INFO    ] Launching Daemon at Fri Jun  5 14:13:11 IST 2026
[2026-06-05 14:13:11,834.834 INFO    ] ================================================
[2026-06-05 14:13:12,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:13:12
[2026-06-05 14:13:13,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:13:13,303.303 INFO    ] Initializing speech engine...
[2026-06-05 14:13:13,310.310 INFO    ] 2026-06-05 14:13:13
[2026-06-05 14:13:13,571.571 INFO    ] 2026-06-05 14:13:13
[2026-06-05 14:13:13,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:13:15,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:13:15,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:13:15,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:13:15,499.499 INFO    ] time= 05/06/2026 14:13:15
[2026-06-05 14:13:15,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:13:15,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:13:15,649.649 INFO    ] No existing commands found in stream
[2026-06-05 14:13:20,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:13:20,669.669 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 14:13:22,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:13:22,002.002 INFO    ] Checking for system updates...
[2026-06-05 14:13:22,039.039 INFO    ] 200
[2026-06-05 14:13:22,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:22,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:13:22,097.097 INFO    ] No update needed
[2026-06-05 14:13:22,099.099 INFO    ] Checking for camera pi updates...
[2026-06-05 14:13:22,135.135 INFO    ] 200
[2026-06-05 14:13:22,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:22,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:13:22,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:13:22,236.236 INFO    ] No camera update needed
[2026-06-05 14:13:22,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:13:22,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:13:22,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:13:22,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:13:24,291.291 INFO    ] ================================================
[2026-06-05 14:13:24,306.306 INFO    ] Launching Daemon at Fri Jun  5 14:13:24 IST 2026
[2026-06-05 14:13:24,317.317 INFO    ] ================================================
[2026-06-05 14:13:24,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:13:24
[2026-06-05 14:13:25,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:13:25,782.782 INFO    ] Initializing speech engine...
[2026-06-05 14:13:25,788.788 INFO    ] 2026-06-05 14:13:25
[2026-06-05 14:13:26,050.050 INFO    ] 2026-06-05 14:13:26
[2026-06-05 14:13:26,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:13:26,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:13:26,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:13:26,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:13:26,439.439 INFO    ] time= 05/06/2026 14:13:26
[2026-06-05 14:13:26,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:13:26,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:13:26,542.542 INFO    ] No existing commands found in stream
[2026-06-05 14:13:31,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:13:31,581.581 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 14:13:34,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:13:34,568.568 INFO    ] Checking for system updates...
[2026-06-05 14:13:34,606.606 INFO    ] 200
[2026-06-05 14:13:34,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:34,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:13:34,665.665 INFO    ] No update needed
[2026-06-05 14:13:34,667.667 INFO    ] Checking for camera pi updates...
[2026-06-05 14:13:34,702.702 INFO    ] 200
[2026-06-05 14:13:34,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:34,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:13:34,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:13:34,798.798 INFO    ] No camera update needed
[2026-06-05 14:13:34,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:13:34,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:13:34,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:13:34,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:13:36,853.853 INFO    ] ================================================
[2026-06-05 14:13:36,869.869 INFO    ] Launching Daemon at Fri Jun  5 14:13:36 IST 2026
[2026-06-05 14:13:36,880.880 INFO    ] ================================================
[2026-06-05 14:13:37,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:13:37
[2026-06-05 14:13:38,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:13:38,291.291 INFO    ] Initializing speech engine...
[2026-06-05 14:13:38,314.314 INFO    ] 2026-06-05 14:13:38
[2026-06-05 14:13:38,569.569 INFO    ] 2026-06-05 14:13:38
[2026-06-05 14:13:38,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:13:38,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:13:38,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:13:38,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:13:38,944.944 INFO    ] time= 05/06/2026 14:13:38
[2026-06-05 14:13:38,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:13:38,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:13:39,105.105 INFO    ] No existing commands found in stream
[2026-06-05 14:13:44,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:13:44,133.133 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 14:13:45,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:13:45,495.495 INFO    ] Checking for system updates...
[2026-06-05 14:13:45,531.531 INFO    ] 200
[2026-06-05 14:13:45,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:45,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:13:45,591.591 INFO    ] No update needed
[2026-06-05 14:13:45,594.594 INFO    ] Checking for camera pi updates...
[2026-06-05 14:13:45,627.627 INFO    ] 200
[2026-06-05 14:13:45,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:45,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:13:45,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:13:45,717.717 INFO    ] No camera update needed
[2026-06-05 14:13:45,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:13:45,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:13:45,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:13:45,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:13:47,772.772 INFO    ] ================================================
[2026-06-05 14:13:47,787.787 INFO    ] Launching Daemon at Fri Jun  5 14:13:47 IST 2026
[2026-06-05 14:13:47,799.799 INFO    ] ================================================
[2026-06-05 14:13:48,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:13:48
[2026-06-05 14:13:48,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:13:49,257.257 INFO    ] Initializing speech engine...
[2026-06-05 14:13:49,267.267 INFO    ] 2026-06-05 14:13:49
[2026-06-05 14:13:49,528.528 INFO    ] 2026-06-05 14:13:49
[2026-06-05 14:13:49,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:13:49,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:13:49,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:13:50,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:13:50,070.070 INFO    ] time= 05/06/2026 14:13:50
[2026-06-05 14:13:50,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:13:50,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:13:50,209.209 INFO    ] No existing commands found in stream
[2026-06-05 14:13:55,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:13:55,237.237 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 14:13:57,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:13:57,603.603 INFO    ] Checking for system updates...
[2026-06-05 14:13:57,641.641 INFO    ] 200
[2026-06-05 14:13:57,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:57,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:13:57,699.699 INFO    ] No update needed
[2026-06-05 14:13:57,701.701 INFO    ] Checking for camera pi updates...
[2026-06-05 14:13:57,735.735 INFO    ] 200
[2026-06-05 14:13:57,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:13:57,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:13:57,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:13:57,810.810 INFO    ] No camera update needed
[2026-06-05 14:13:57,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:13:57,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:13:57,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:13:57,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:13:59,867.867 INFO    ] ================================================
[2026-06-05 14:13:59,882.882 INFO    ] Launching Daemon at Fri Jun  5 14:13:59 IST 2026
[2026-06-05 14:13:59,893.893 INFO    ] ================================================
[2026-06-05 14:14:00,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:14:00
[2026-06-05 14:14:01,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:14:01,454.454 INFO    ] Initializing speech engine...
[2026-06-05 14:14:01,461.461 INFO    ] 2026-06-05 14:14:01
[2026-06-05 14:14:01,731.731 INFO    ] 2026-06-05 14:14:01
[2026-06-05 14:14:01,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:14:01,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:14:01,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:14:02,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:14:02,141.141 INFO    ] time= 05/06/2026 14:14:02
[2026-06-05 14:14:02,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:14:02,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:14:02,251.251 INFO    ] No existing commands found in stream
[2026-06-05 14:14:07,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:14:07,267.267 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 14:14:10,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:14:10,383.383 INFO    ] Checking for system updates...
[2026-06-05 14:14:10,420.420 INFO    ] 200
[2026-06-05 14:14:10,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:14:10,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:14:10,478.478 INFO    ] No update needed
[2026-06-05 14:14:10,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 14:14:10,517.517 INFO    ] 200
[2026-06-05 14:14:10,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:14:10,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:14:10,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:14:10,602.602 INFO    ] No camera update needed
[2026-06-05 14:14:10,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:14:10,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:14:10,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:14:10,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:14:12,658.658 INFO    ] ================================================
[2026-06-05 14:14:12,674.674 INFO    ] Launching Daemon at Fri Jun  5 14:14:12 IST 2026
[2026-06-05 14:14:12,685.685 INFO    ] ================================================
[2026-06-05 14:14:13,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:14:13
[2026-06-05 14:14:13,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:14:14,102.102 INFO    ] Initializing speech engine...
[2026-06-05 14:14:14,127.127 INFO    ] 2026-06-05 14:14:14
[2026-06-05 14:14:14,394.394 INFO    ] 2026-06-05 14:14:14
[2026-06-05 14:14:14,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:14:15,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:14:15,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:14:15,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:14:15,626.626 INFO    ] time= 05/06/2026 14:14:15
[2026-06-05 14:14:15,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:14:15,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:14:15,747.747 INFO    ] No existing commands found in stream
[2026-06-05 14:14:20,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:14:20,762.762 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 14:14:23,801.801 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:14:23,804.804 INFO    ] Checking for system updates...
[2026-06-05 14:14:23,840.840 INFO    ] 200
[2026-06-05 14:14:23,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:14:23,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:14:23,899.899 INFO    ] No update needed
[2026-06-05 14:14:23,901.901 INFO    ] Checking for camera pi updates...
[2026-06-05 14:14:23,935.935 INFO    ] 200
[2026-06-05 14:14:23,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:14:23,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:14:24,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:14:24,018.018 INFO    ] No camera update needed
[2026-06-05 14:14:24,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:14:24,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:14:24,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:14:24,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:14:26,074.074 INFO    ] ================================================
[2026-06-05 14:14:26,089.089 INFO    ] Launching Daemon at Fri Jun  5 14:14:26 IST 2026
[2026-06-05 14:14:26,101.101 INFO    ] ================================================
[2026-06-05 14:14:26,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:14:26
[2026-06-05 14:14:27,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:14:27,532.532 INFO    ] Initializing speech engine...
[2026-06-05 14:14:27,541.541 INFO    ] 2026-06-05 14:14:27
[2026-06-05 14:14:27,801.801 INFO    ] 2026-06-05 14:14:27
[2026-06-05 14:14:27,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:14:28,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:14:28,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:14:28,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:14:28,260.260 INFO    ] time= 05/06/2026 14:14:28
[2026-06-05 14:14:28,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:14:28,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:14:28,469.469 INFO    ] No existing commands found in stream
[2026-06-05 14:14:33,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:14:33,497.497 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 14:14:37,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:14:37,272.272 INFO    ] Checking for system updates...
[2026-06-05 14:14:37,310.310 INFO    ] 200
[2026-06-05 14:14:37,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:14:37,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:14:37,367.367 INFO    ] No update needed
[2026-06-05 14:14:37,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 14:14:37,405.405 INFO    ] 200
[2026-06-05 14:14:37,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:14:37,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:14:37,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:14:37,598.598 INFO    ] No camera update needed
[2026-06-05 14:14:37,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:14:37,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:14:37,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:14:37,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:14:39,654.654 INFO    ] ================================================
[2026-06-05 14:14:39,669.669 INFO    ] Launching Daemon at Fri Jun  5 14:14:39 IST 2026
[2026-06-05 14:14:39,680.680 INFO    ] ================================================
[2026-06-05 14:14:40,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:14:40
[2026-06-05 14:14:40,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:14:41,106.106 INFO    ] Initializing speech engine...
[2026-06-05 14:14:41,115.115 INFO    ] 2026-06-05 14:14:41
[2026-06-05 14:14:41,362.362 INFO    ] 2026-06-05 14:14:41
[2026-06-05 14:14:41,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:14:41,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:14:41,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:14:41,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:14:41,841.841 INFO    ] time= 05/06/2026 14:14:41
[2026-06-05 14:14:41,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:14:41,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:14:42,000.000 INFO    ] No existing commands found in stream
[2026-06-05 14:14:47,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:14:47,015.015 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 14:14:50,390.390 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:14:50,392.392 INFO    ] Checking for system updates...
[2026-06-05 14:14:50,429.429 INFO    ] 200
[2026-06-05 14:14:50,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:14:50,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:14:50,495.495 INFO    ] No update needed
[2026-06-05 14:14:50,498.498 INFO    ] Checking for camera pi updates...
[2026-06-05 14:14:50,533.533 INFO    ] 200
[2026-06-05 14:14:50,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:14:50,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:14:50,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:14:50,631.631 INFO    ] No camera update needed
[2026-06-05 14:14:50,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:14:50,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:14:50,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:14:50,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:14:52,687.687 INFO    ] ================================================
[2026-06-05 14:14:52,702.702 INFO    ] Launching Daemon at Fri Jun  5 14:14:52 IST 2026
[2026-06-05 14:14:52,713.713 INFO    ] ================================================
[2026-06-05 14:14:53,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:14:53
[2026-06-05 14:14:53,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:14:54,217.217 INFO    ] Initializing speech engine...
[2026-06-05 14:14:54,231.231 INFO    ] 2026-06-05 14:14:54
[2026-06-05 14:14:54,512.512 INFO    ] 2026-06-05 14:14:54
[2026-06-05 14:14:54,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:14:54,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:14:54,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:14:55,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:14:55,042.042 INFO    ] time= 05/06/2026 14:14:55
[2026-06-05 14:14:55,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:14:55,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:14:55,196.196 INFO    ] No existing commands found in stream
[2026-06-05 14:15:00,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:15:00,213.213 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 14:15:04,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:15:04,610.610 INFO    ] Checking for system updates...
[2026-06-05 14:15:04,647.647 INFO    ] 200
[2026-06-05 14:15:04,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:04,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:15:04,714.714 INFO    ] No update needed
[2026-06-05 14:15:04,716.716 INFO    ] Checking for camera pi updates...
[2026-06-05 14:15:04,751.751 INFO    ] 200
[2026-06-05 14:15:04,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:04,797.797 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:15:04,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:15:04,831.831 INFO    ] No camera update needed
[2026-06-05 14:15:04,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:15:04,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:15:04,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:15:04,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:15:06,895.895 INFO    ] ================================================
[2026-06-05 14:15:06,910.910 INFO    ] Launching Daemon at Fri Jun  5 14:15:06 IST 2026
[2026-06-05 14:15:06,921.921 INFO    ] ================================================
[2026-06-05 14:15:07,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:15:07
[2026-06-05 14:15:08,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:15:08,357.357 INFO    ] Initializing speech engine...
[2026-06-05 14:15:08,363.363 INFO    ] 2026-06-05 14:15:08
[2026-06-05 14:15:08,634.634 INFO    ] 2026-06-05 14:15:08
[2026-06-05 14:15:08,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:15:08,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:15:08,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:15:09,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:15:09,122.122 INFO    ] time= 05/06/2026 14:15:09
[2026-06-05 14:15:09,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:15:09,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:15:09,339.339 INFO    ] No existing commands found in stream
[2026-06-05 14:15:14,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:15:14,358.358 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 14:15:16,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:15:16,799.799 INFO    ] Checking for system updates...
[2026-06-05 14:15:16,839.839 INFO    ] 200
[2026-06-05 14:15:16,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:16,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:15:16,922.922 INFO    ] No update needed
[2026-06-05 14:15:16,926.926 INFO    ] Checking for camera pi updates...
[2026-06-05 14:15:16,963.963 INFO    ] 200
[2026-06-05 14:15:16,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:17,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:15:17,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:15:17,060.060 INFO    ] No camera update needed
[2026-06-05 14:15:17,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:15:17,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:15:17,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:15:17,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:15:19,117.117 INFO    ] ================================================
[2026-06-05 14:15:19,132.132 INFO    ] Launching Daemon at Fri Jun  5 14:15:19 IST 2026
[2026-06-05 14:15:19,143.143 INFO    ] ================================================
[2026-06-05 14:15:19,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:15:19
[2026-06-05 14:15:20,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:15:20,556.556 INFO    ] Initializing speech engine...
[2026-06-05 14:15:20,571.571 INFO    ] 2026-06-05 14:15:20
[2026-06-05 14:15:20,855.855 INFO    ] 2026-06-05 14:15:20
[2026-06-05 14:15:20,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:15:21,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:15:21,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:15:21,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:15:21,339.339 INFO    ] time= 05/06/2026 14:15:21
[2026-06-05 14:15:21,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:15:21,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:15:21,523.523 INFO    ] No existing commands found in stream
[2026-06-05 14:15:26,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:15:26,546.546 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 14:15:27,751.751 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:15:27,755.755 INFO    ] Checking for system updates...
[2026-06-05 14:15:27,800.800 INFO    ] 200
[2026-06-05 14:15:27,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:27,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:15:27,863.863 INFO    ] No update needed
[2026-06-05 14:15:27,866.866 INFO    ] Checking for camera pi updates...
[2026-06-05 14:15:27,901.901 INFO    ] 200
[2026-06-05 14:15:27,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:27,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:15:27,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:15:27,994.994 INFO    ] No camera update needed
[2026-06-05 14:15:27,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:15:27,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:15:28,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:15:28,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:15:30,053.053 INFO    ] ================================================
[2026-06-05 14:15:30,069.069 INFO    ] Launching Daemon at Fri Jun  5 14:15:30 IST 2026
[2026-06-05 14:15:30,080.080 INFO    ] ================================================
[2026-06-05 14:15:30,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:15:30
[2026-06-05 14:15:31,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:15:31,511.511 INFO    ] Initializing speech engine...
[2026-06-05 14:15:31,528.528 INFO    ] 2026-06-05 14:15:31
[2026-06-05 14:15:31,818.818 INFO    ] 2026-06-05 14:15:31
[2026-06-05 14:15:31,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:15:32,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:15:32,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:15:32,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:15:32,218.218 INFO    ] time= 05/06/2026 14:15:32
[2026-06-05 14:15:32,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:15:32,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:15:32,397.397 INFO    ] No existing commands found in stream
[2026-06-05 14:15:37,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:15:37,434.434 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 14:15:38,753.753 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:15:38,756.756 INFO    ] Checking for system updates...
[2026-06-05 14:15:38,793.793 INFO    ] 200
[2026-06-05 14:15:38,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:38,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:15:38,861.861 INFO    ] No update needed
[2026-06-05 14:15:38,864.864 INFO    ] Checking for camera pi updates...
[2026-06-05 14:15:38,899.899 INFO    ] 200
[2026-06-05 14:15:38,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:38,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:15:38,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:15:38,993.993 INFO    ] No camera update needed
[2026-06-05 14:15:38,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:15:38,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:15:39,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:15:39,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:15:41,056.056 INFO    ] ================================================
[2026-06-05 14:15:41,071.071 INFO    ] Launching Daemon at Fri Jun  5 14:15:41 IST 2026
[2026-06-05 14:15:41,083.083 INFO    ] ================================================
[2026-06-05 14:15:41,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:15:41
[2026-06-05 14:15:42,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:15:42,534.534 INFO    ] Initializing speech engine...
[2026-06-05 14:15:42,543.543 INFO    ] 2026-06-05 14:15:42
[2026-06-05 14:15:42,790.790 INFO    ] 2026-06-05 14:15:42
[2026-06-05 14:15:42,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:15:43,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:15:43,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:15:43,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:15:43,288.288 INFO    ] time= 05/06/2026 14:15:43
[2026-06-05 14:15:43,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:15:43,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:15:43,480.480 INFO    ] No existing commands found in stream
[2026-06-05 14:15:48,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:15:48,508.508 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 14:15:52,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:15:52,795.795 INFO    ] Checking for system updates...
[2026-06-05 14:15:52,832.832 INFO    ] 200
[2026-06-05 14:15:52,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:52,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:15:52,894.894 INFO    ] No update needed
[2026-06-05 14:15:52,897.897 INFO    ] Checking for camera pi updates...
[2026-06-05 14:15:52,931.931 INFO    ] 200
[2026-06-05 14:15:52,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:15:52,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:15:53,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:15:53,021.021 INFO    ] No camera update needed
[2026-06-05 14:15:53,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:15:53,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:15:53,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:15:53,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:15:55,078.078 INFO    ] ================================================
[2026-06-05 14:15:55,095.095 INFO    ] Launching Daemon at Fri Jun  5 14:15:55 IST 2026
[2026-06-05 14:15:55,106.106 INFO    ] ================================================
[2026-06-05 14:15:55,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:15:55
[2026-06-05 14:15:56,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:15:56,558.558 INFO    ] Initializing speech engine...
[2026-06-05 14:15:56,567.567 INFO    ] 2026-06-05 14:15:56
[2026-06-05 14:15:56,841.841 INFO    ] 2026-06-05 14:15:56
[2026-06-05 14:15:56,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:15:57,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:15:57,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:15:57,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:15:57,374.374 INFO    ] time= 05/06/2026 14:15:57
[2026-06-05 14:15:57,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:15:57,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:15:57,538.538 INFO    ] No existing commands found in stream
[2026-06-05 14:16:02,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:16:02,570.570 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 14:16:05,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:16:05,625.625 INFO    ] Checking for system updates...
[2026-06-05 14:16:05,661.661 INFO    ] 200
[2026-06-05 14:16:05,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:16:05,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:16:05,720.720 INFO    ] No update needed
[2026-06-05 14:16:05,722.722 INFO    ] Checking for camera pi updates...
[2026-06-05 14:16:05,756.756 INFO    ] 200
[2026-06-05 14:16:05,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:16:05,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:16:05,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:16:05,834.834 INFO    ] No camera update needed
[2026-06-05 14:16:05,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:16:05,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:16:05,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:16:05,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:16:07,891.891 INFO    ] ================================================
[2026-06-05 14:16:07,907.907 INFO    ] Launching Daemon at Fri Jun  5 14:16:07 IST 2026
[2026-06-05 14:16:07,918.918 INFO    ] ================================================
[2026-06-05 14:16:08,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:16:08
[2026-06-05 14:16:09,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:16:09,329.329 INFO    ] Initializing speech engine...
[2026-06-05 14:16:09,342.342 INFO    ] 2026-06-05 14:16:09
[2026-06-05 14:16:09,629.629 INFO    ] 2026-06-05 14:16:09
[2026-06-05 14:16:09,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:16:09,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:16:09,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:16:10,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:16:10,098.098 INFO    ] time= 05/06/2026 14:16:10
[2026-06-05 14:16:10,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:16:10,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:16:10,382.382 INFO    ] No existing commands found in stream
[2026-06-05 14:16:15,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:16:15,399.399 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 14:16:19,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:16:19,513.513 INFO    ] Checking for system updates...
[2026-06-05 14:16:19,553.553 INFO    ] 200
[2026-06-05 14:16:19,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:16:19,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:16:19,611.611 INFO    ] No update needed
[2026-06-05 14:16:19,613.613 INFO    ] Checking for camera pi updates...
[2026-06-05 14:16:19,650.650 INFO    ] 200
[2026-06-05 14:16:19,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:16:19,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:16:19,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:16:19,736.736 INFO    ] No camera update needed
[2026-06-05 14:16:19,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:16:19,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:16:19,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:16:19,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:16:21,791.791 INFO    ] ================================================
[2026-06-05 14:16:21,806.806 INFO    ] Launching Daemon at Fri Jun  5 14:16:21 IST 2026
[2026-06-05 14:16:21,817.817 INFO    ] ================================================
[2026-06-05 14:16:22,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:16:22
[2026-06-05 14:16:23,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:16:23,274.274 INFO    ] Initializing speech engine...
[2026-06-05 14:16:23,283.283 INFO    ] 2026-06-05 14:16:23
[2026-06-05 14:16:23,537.537 INFO    ] 2026-06-05 14:16:23
[2026-06-05 14:16:23,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:16:23,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:16:23,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:16:24,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:16:24,077.077 INFO    ] time= 05/06/2026 14:16:24
[2026-06-05 14:16:24,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:16:24,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:16:24,220.220 INFO    ] No existing commands found in stream
[2026-06-05 14:16:29,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:16:29,250.250 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 14:16:33,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:16:33,519.519 INFO    ] Checking for system updates...
[2026-06-05 14:16:33,555.555 INFO    ] 200
[2026-06-05 14:16:33,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:16:33,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:16:33,613.613 INFO    ] No update needed
[2026-06-05 14:16:33,616.616 INFO    ] Checking for camera pi updates...
[2026-06-05 14:16:33,650.650 INFO    ] 200
[2026-06-05 14:16:33,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:16:33,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:16:33,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:16:33,734.734 INFO    ] No camera update needed
[2026-06-05 14:16:33,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:16:33,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:16:33,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:16:33,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:16:35,791.791 INFO    ] ================================================
[2026-06-05 14:16:35,806.806 INFO    ] Launching Daemon at Fri Jun  5 14:16:35 IST 2026
[2026-06-05 14:16:35,816.816 INFO    ] ================================================
[2026-06-05 14:16:36,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:16:36
[2026-06-05 14:16:36,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:16:37,251.251 INFO    ] Initializing speech engine...
[2026-06-05 14:16:37,261.261 INFO    ] 2026-06-05 14:16:37
[2026-06-05 14:16:37,525.525 INFO    ] 2026-06-05 14:16:37
[2026-06-05 14:16:37,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:16:37,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:16:37,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:16:38,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:16:38,081.081 INFO    ] time= 05/06/2026 14:16:38
[2026-06-05 14:16:38,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:16:38,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:16:38,255.255 INFO    ] No existing commands found in stream
[2026-06-05 14:16:43,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:16:43,283.283 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 14:16:53,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:16:53,203.203 INFO    ] Checking for system updates...
[2026-06-05 14:16:53,240.240 INFO    ] 200
[2026-06-05 14:16:53,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:16:53,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:16:53,299.299 INFO    ] No update needed
[2026-06-05 14:16:53,301.301 INFO    ] Checking for camera pi updates...
[2026-06-05 14:16:53,339.339 INFO    ] 200
[2026-06-05 14:16:53,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:16:53,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:16:53,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:16:53,529.529 INFO    ] No camera update needed
[2026-06-05 14:16:53,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:16:53,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:16:53,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:16:53,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:16:55,589.589 INFO    ] ================================================
[2026-06-05 14:16:55,605.605 INFO    ] Launching Daemon at Fri Jun  5 14:16:55 IST 2026
[2026-06-05 14:16:55,616.616 INFO    ] ================================================
[2026-06-05 14:16:56,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:16:56
[2026-06-05 14:16:56,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:16:57,295.295 INFO    ] Initializing speech engine...
[2026-06-05 14:16:57,307.307 INFO    ] 2026-06-05 14:16:57
[2026-06-05 14:16:57,632.632 INFO    ] 2026-06-05 14:16:57
[2026-06-05 14:16:57,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:16:58,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:16:58,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:16:59,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:16:59,607.607 INFO    ] time= 05/06/2026 14:16:59
[2026-06-05 14:16:59,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:16:59,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:16:59,777.777 INFO    ] No existing commands found in stream
[2026-06-05 14:17:04,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:17:04,799.799 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 14:17:07,195.195 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:17:07,198.198 INFO    ] Checking for system updates...
[2026-06-05 14:17:07,243.243 INFO    ] 200
[2026-06-05 14:17:07,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:07,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:17:07,322.322 INFO    ] No update needed
[2026-06-05 14:17:07,325.325 INFO    ] Checking for camera pi updates...
[2026-06-05 14:17:07,372.372 INFO    ] 200
[2026-06-05 14:17:07,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:07,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:17:07,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:17:07,453.453 INFO    ] No camera update needed
[2026-06-05 14:17:07,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:17:07,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:17:07,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:17:07,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:17:09,513.513 INFO    ] ================================================
[2026-06-05 14:17:09,529.529 INFO    ] Launching Daemon at Fri Jun  5 14:17:09 IST 2026
[2026-06-05 14:17:09,540.540 INFO    ] ================================================
[2026-06-05 14:17:10,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:17:10
[2026-06-05 14:17:10,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:17:11,058.058 INFO    ] Initializing speech engine...
[2026-06-05 14:17:11,064.064 INFO    ] 2026-06-05 14:17:11
[2026-06-05 14:17:11,324.324 INFO    ] 2026-06-05 14:17:11
[2026-06-05 14:17:11,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:17:11,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:17:11,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:17:11,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:17:11,867.867 INFO    ] time= 05/06/2026 14:17:11
[2026-06-05 14:17:11,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:17:11,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:17:12,006.006 INFO    ] No existing commands found in stream
[2026-06-05 14:17:17,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:17:17,035.035 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 14:17:20,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:17:20,788.788 INFO    ] Checking for system updates...
[2026-06-05 14:17:20,829.829 INFO    ] 200
[2026-06-05 14:17:20,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:20,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:17:20,889.889 INFO    ] No update needed
[2026-06-05 14:17:20,891.891 INFO    ] Checking for camera pi updates...
[2026-06-05 14:17:20,926.926 INFO    ] 200
[2026-06-05 14:17:20,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:20,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:17:21,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:17:21,013.013 INFO    ] No camera update needed
[2026-06-05 14:17:21,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:17:21,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:17:21,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:17:21,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:17:23,071.071 INFO    ] ================================================
[2026-06-05 14:17:23,088.088 INFO    ] Launching Daemon at Fri Jun  5 14:17:23 IST 2026
[2026-06-05 14:17:23,099.099 INFO    ] ================================================
[2026-06-05 14:17:23,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:17:23
[2026-06-05 14:17:24,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:17:24,554.554 INFO    ] Initializing speech engine...
[2026-06-05 14:17:24,563.563 INFO    ] 2026-06-05 14:17:24
[2026-06-05 14:17:24,866.866 INFO    ] 2026-06-05 14:17:24
[2026-06-05 14:17:24,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:17:25,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:17:25,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:17:25,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:17:25,258.258 INFO    ] time= 05/06/2026 14:17:25
[2026-06-05 14:17:25,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:17:25,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:17:25,391.391 INFO    ] No existing commands found in stream
[2026-06-05 14:17:30,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:17:30,400.400 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 14:17:31,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:17:31,476.476 INFO    ] Checking for system updates...
[2026-06-05 14:17:31,513.513 INFO    ] 200
[2026-06-05 14:17:31,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:31,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:17:31,580.580 INFO    ] No update needed
[2026-06-05 14:17:31,583.583 INFO    ] Checking for camera pi updates...
[2026-06-05 14:17:31,619.619 INFO    ] 200
[2026-06-05 14:17:31,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:31,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:17:31,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:17:31,708.708 INFO    ] No camera update needed
[2026-06-05 14:17:31,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:17:31,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:17:31,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:17:31,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:17:33,766.766 INFO    ] ================================================
[2026-06-05 14:17:33,782.782 INFO    ] Launching Daemon at Fri Jun  5 14:17:33 IST 2026
[2026-06-05 14:17:33,793.793 INFO    ] ================================================
[2026-06-05 14:17:34,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:17:34
[2026-06-05 14:17:35,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:17:35,422.422 INFO    ] Initializing speech engine...
[2026-06-05 14:17:35,431.431 INFO    ] 2026-06-05 14:17:35
[2026-06-05 14:17:35,723.723 INFO    ] 2026-06-05 14:17:35
[2026-06-05 14:17:35,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:17:36,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:17:36,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:17:36,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:17:36,276.276 INFO    ] time= 05/06/2026 14:17:36
[2026-06-05 14:17:36,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:17:36,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:17:36,435.435 INFO    ] No existing commands found in stream
[2026-06-05 14:17:41,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:17:41,460.460 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 14:17:41,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:17:41,980.980 INFO    ] Checking for system updates...
[2026-06-05 14:17:42,018.018 INFO    ] 200
[2026-06-05 14:17:42,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:42,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:17:42,078.078 INFO    ] No update needed
[2026-06-05 14:17:42,081.081 INFO    ] Checking for camera pi updates...
[2026-06-05 14:17:42,117.117 INFO    ] 200
[2026-06-05 14:17:42,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:42,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:17:42,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:17:42,227.227 INFO    ] No camera update needed
[2026-06-05 14:17:42,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:17:42,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:17:42,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:17:42,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:17:44,282.282 INFO    ] ================================================
[2026-06-05 14:17:44,298.298 INFO    ] Launching Daemon at Fri Jun  5 14:17:44 IST 2026
[2026-06-05 14:17:44,309.309 INFO    ] ================================================
[2026-06-05 14:17:44,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:17:44
[2026-06-05 14:17:45,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:17:45,742.742 INFO    ] Initializing speech engine...
[2026-06-05 14:17:45,756.756 INFO    ] 2026-06-05 14:17:45
[2026-06-05 14:17:46,046.046 INFO    ] 2026-06-05 14:17:46
[2026-06-05 14:17:46,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:17:46,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:17:46,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:17:46,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:17:46,543.543 INFO    ] time= 05/06/2026 14:17:46
[2026-06-05 14:17:46,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:17:46,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:17:46,783.783 INFO    ] No existing commands found in stream
[2026-06-05 14:17:51,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:17:51,801.801 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 14:17:55,772.772 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:17:55,776.776 INFO    ] Checking for system updates...
[2026-06-05 14:17:55,813.813 INFO    ] 200
[2026-06-05 14:17:55,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:55,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:17:55,883.883 INFO    ] No update needed
[2026-06-05 14:17:55,886.886 INFO    ] Checking for camera pi updates...
[2026-06-05 14:17:55,921.921 INFO    ] 200
[2026-06-05 14:17:55,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:17:55,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:17:56,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:17:56,011.011 INFO    ] No camera update needed
[2026-06-05 14:17:56,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:17:56,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:17:56,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:17:56,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:17:58,072.072 INFO    ] ================================================
[2026-06-05 14:17:58,088.088 INFO    ] Launching Daemon at Fri Jun  5 14:17:58 IST 2026
[2026-06-05 14:17:58,099.099 INFO    ] ================================================
[2026-06-05 14:17:58,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:17:58
[2026-06-05 14:17:59,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:17:59,765.765 INFO    ] Initializing speech engine...
[2026-06-05 14:17:59,779.779 INFO    ] 2026-06-05 14:17:59
[2026-06-05 14:18:00,069.069 INFO    ] 2026-06-05 14:18:00
[2026-06-05 14:18:00,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:18:00,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:18:00,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:18:00,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:18:00,554.554 INFO    ] time= 05/06/2026 14:18:00
[2026-06-05 14:18:00,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:18:00,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:18:00,765.765 INFO    ] No existing commands found in stream
[2026-06-05 14:18:05,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:18:05,800.800 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 14:18:06,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:18:06,809.809 INFO    ] Checking for system updates...
[2026-06-05 14:18:06,851.851 INFO    ] 200
[2026-06-05 14:18:06,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:06,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:18:06,912.912 INFO    ] No update needed
[2026-06-05 14:18:06,915.915 INFO    ] Checking for camera pi updates...
[2026-06-05 14:18:06,953.953 INFO    ] 200
[2026-06-05 14:18:06,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:06,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:18:07,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:18:07,027.027 INFO    ] No camera update needed
[2026-06-05 14:18:07,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:18:07,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:18:07,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:18:07,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:18:09,083.083 INFO    ] ================================================
[2026-06-05 14:18:09,099.099 INFO    ] Launching Daemon at Fri Jun  5 14:18:09 IST 2026
[2026-06-05 14:18:09,111.111 INFO    ] ================================================
[2026-06-05 14:18:09,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:18:09
[2026-06-05 14:18:10,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:18:10,753.753 INFO    ] Initializing speech engine...
[2026-06-05 14:18:10,762.762 INFO    ] 2026-06-05 14:18:10
[2026-06-05 14:18:11,056.056 INFO    ] 2026-06-05 14:18:11
[2026-06-05 14:18:11,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:18:11,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:18:11,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:18:11,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:18:11,598.598 INFO    ] time= 05/06/2026 14:18:11
[2026-06-05 14:18:11,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:18:11,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:18:11,745.745 INFO    ] No existing commands found in stream
[2026-06-05 14:18:16,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:18:16,770.770 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 14:18:17,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:18:17,708.708 INFO    ] Checking for system updates...
[2026-06-05 14:18:17,745.745 INFO    ] 200
[2026-06-05 14:18:17,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:17,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:18:17,804.804 INFO    ] No update needed
[2026-06-05 14:18:17,806.806 INFO    ] Checking for camera pi updates...
[2026-06-05 14:18:17,851.851 INFO    ] 200
[2026-06-05 14:18:17,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:17,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:18:17,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:18:17,952.952 INFO    ] No camera update needed
[2026-06-05 14:18:17,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:18:17,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:18:17,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:18:17,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:18:20,009.009 INFO    ] ================================================
[2026-06-05 14:18:20,026.026 INFO    ] Launching Daemon at Fri Jun  5 14:18:20 IST 2026
[2026-06-05 14:18:20,037.037 INFO    ] ================================================
[2026-06-05 14:18:20,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:18:20
[2026-06-05 14:18:21,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:18:21,710.710 INFO    ] Initializing speech engine...
[2026-06-05 14:18:21,723.723 INFO    ] 2026-06-05 14:18:21
[2026-06-05 14:18:22,011.011 INFO    ] 2026-06-05 14:18:22
[2026-06-05 14:18:22,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:18:22,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:18:22,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:18:22,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:18:22,540.540 INFO    ] time= 05/06/2026 14:18:22
[2026-06-05 14:18:22,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:18:22,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:18:22,697.697 INFO    ] No existing commands found in stream
[2026-06-05 14:18:27,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:18:27,720.720 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 14:18:32,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:18:32,143.143 INFO    ] Checking for system updates...
[2026-06-05 14:18:32,187.187 INFO    ] 200
[2026-06-05 14:18:32,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:32,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:18:32,251.251 INFO    ] No update needed
[2026-06-05 14:18:32,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 14:18:32,293.293 INFO    ] 200
[2026-06-05 14:18:32,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:32,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:18:32,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:18:32,388.388 INFO    ] No camera update needed
[2026-06-05 14:18:32,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:18:32,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:18:32,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:18:32,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:18:34,448.448 INFO    ] ================================================
[2026-06-05 14:18:34,464.464 INFO    ] Launching Daemon at Fri Jun  5 14:18:34 IST 2026
[2026-06-05 14:18:34,475.475 INFO    ] ================================================
[2026-06-05 14:18:35,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:18:35
[2026-06-05 14:18:35,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:18:35,958.958 INFO    ] Initializing speech engine...
[2026-06-05 14:18:35,969.969 INFO    ] 2026-06-05 14:18:35
[2026-06-05 14:18:36,231.231 INFO    ] 2026-06-05 14:18:36
[2026-06-05 14:18:36,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:18:36,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:18:36,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:18:36,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:18:36,778.778 INFO    ] time= 05/06/2026 14:18:36
[2026-06-05 14:18:36,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:18:36,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:18:36,932.932 INFO    ] No existing commands found in stream
[2026-06-05 14:18:41,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:18:41,947.947 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 14:18:46,308.308 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:18:46,310.310 INFO    ] Checking for system updates...
[2026-06-05 14:18:46,346.346 INFO    ] 200
[2026-06-05 14:18:46,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:46,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:18:46,412.412 INFO    ] No update needed
[2026-06-05 14:18:46,414.414 INFO    ] Checking for camera pi updates...
[2026-06-05 14:18:46,449.449 INFO    ] 200
[2026-06-05 14:18:46,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:46,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:18:46,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:18:46,550.550 INFO    ] No camera update needed
[2026-06-05 14:18:46,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:18:46,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:18:46,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:18:46,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:18:48,608.608 INFO    ] ================================================
[2026-06-05 14:18:48,624.624 INFO    ] Launching Daemon at Fri Jun  5 14:18:48 IST 2026
[2026-06-05 14:18:48,635.635 INFO    ] ================================================
[2026-06-05 14:18:49,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:18:49
[2026-06-05 14:18:49,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:18:50,277.277 INFO    ] Initializing speech engine...
[2026-06-05 14:18:50,286.286 INFO    ] 2026-06-05 14:18:50
[2026-06-05 14:18:50,611.611 INFO    ] 2026-06-05 14:18:50
[2026-06-05 14:18:50,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:18:50,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:18:50,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:18:51,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:18:51,151.151 INFO    ] time= 05/06/2026 14:18:51
[2026-06-05 14:18:51,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:18:51,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:18:51,325.325 INFO    ] No existing commands found in stream
[2026-06-05 14:18:56,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:18:56,356.356 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 14:18:59,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:18:59,267.267 INFO    ] Checking for system updates...
[2026-06-05 14:18:59,303.303 INFO    ] 200
[2026-06-05 14:18:59,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:59,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:18:59,361.361 INFO    ] No update needed
[2026-06-05 14:18:59,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 14:18:59,397.397 INFO    ] 200
[2026-06-05 14:18:59,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:18:59,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:18:59,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:18:59,600.600 INFO    ] No camera update needed
[2026-06-05 14:18:59,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:18:59,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:18:59,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:18:59,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:19:01,698.698 INFO    ] ================================================
[2026-06-05 14:19:01,738.738 INFO    ] Launching Daemon at Fri Jun  5 14:19:01 IST 2026
[2026-06-05 14:19:01,758.758 INFO    ] ================================================
[2026-06-05 14:19:02,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:19:02
[2026-06-05 14:19:03,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:19:03,552.552 INFO    ] Initializing speech engine...
[2026-06-05 14:19:03,560.560 INFO    ] 2026-06-05 14:19:03
[2026-06-05 14:19:03,831.831 INFO    ] 2026-06-05 14:19:03
[2026-06-05 14:19:03,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:19:04,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:19:04,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:19:04,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:19:04,329.329 INFO    ] time= 05/06/2026 14:19:04
[2026-06-05 14:19:04,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:19:04,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:19:04,549.549 INFO    ] No existing commands found in stream
[2026-06-05 14:19:09,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:19:09,577.577 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 14:19:12,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:19:12,665.665 INFO    ] Checking for system updates...
[2026-06-05 14:19:12,701.701 INFO    ] 200
[2026-06-05 14:19:12,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:19:12,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:19:12,759.759 INFO    ] No update needed
[2026-06-05 14:19:12,761.761 INFO    ] Checking for camera pi updates...
[2026-06-05 14:19:12,795.795 INFO    ] 200
[2026-06-05 14:19:12,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:19:12,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:19:12,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:19:12,884.884 INFO    ] No camera update needed
[2026-06-05 14:19:12,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:19:12,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:19:12,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:19:12,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:19:14,940.940 INFO    ] ================================================
[2026-06-05 14:19:14,956.956 INFO    ] Launching Daemon at Fri Jun  5 14:19:14 IST 2026
[2026-06-05 14:19:14,967.967 INFO    ] ================================================
[2026-06-05 14:19:15,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:19:15
[2026-06-05 14:19:16,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:19:16,626.626 INFO    ] Initializing speech engine...
[2026-06-05 14:19:16,644.644 INFO    ] 2026-06-05 14:19:16
[2026-06-05 14:19:16,940.940 INFO    ] 2026-06-05 14:19:16
[2026-06-05 14:19:16,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:19:17,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:19:17,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:19:17,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:19:17,419.419 INFO    ] time= 05/06/2026 14:19:17
[2026-06-05 14:19:17,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:19:17,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:19:17,606.606 INFO    ] No existing commands found in stream
[2026-06-05 14:19:22,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:19:22,638.638 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 14:19:25,268.268 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:19:25,271.271 INFO    ] Checking for system updates...
[2026-06-05 14:19:25,312.312 INFO    ] 200
[2026-06-05 14:19:25,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:19:25,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:19:25,373.373 INFO    ] No update needed
[2026-06-05 14:19:25,376.376 INFO    ] Checking for camera pi updates...
[2026-06-05 14:19:25,414.414 INFO    ] 200
[2026-06-05 14:19:25,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:19:25,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:19:25,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:19:25,501.501 INFO    ] No camera update needed
[2026-06-05 14:19:25,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:19:25,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:19:25,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:19:25,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:19:27,557.557 INFO    ] ================================================
[2026-06-05 14:19:27,579.579 INFO    ] Launching Daemon at Fri Jun  5 14:19:27 IST 2026
[2026-06-05 14:19:27,591.591 INFO    ] ================================================
[2026-06-05 14:19:28,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:19:28
[2026-06-05 14:19:28,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:19:29,293.293 INFO    ] Initializing speech engine...
[2026-06-05 14:19:29,302.302 INFO    ] 2026-06-05 14:19:29
[2026-06-05 14:19:29,600.600 INFO    ] 2026-06-05 14:19:29
[2026-06-05 14:19:29,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:19:29,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:19:29,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:19:30,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:19:30,065.065 INFO    ] time= 05/06/2026 14:19:30
[2026-06-05 14:19:30,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:19:30,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:19:30,291.291 INFO    ] No existing commands found in stream
[2026-06-05 14:19:35,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:19:35,320.320 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 14:19:39,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:19:39,459.459 INFO    ] Checking for system updates...
[2026-06-05 14:19:39,503.503 INFO    ] 200
[2026-06-05 14:19:39,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:19:39,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:19:39,582.582 INFO    ] No update needed
[2026-06-05 14:19:39,585.585 INFO    ] Checking for camera pi updates...
[2026-06-05 14:19:39,622.622 INFO    ] 200
[2026-06-05 14:19:39,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:19:39,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:19:39,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:19:39,698.698 INFO    ] No camera update needed
[2026-06-05 14:19:39,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:19:39,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:19:39,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:19:39,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:19:41,754.754 INFO    ] ================================================
[2026-06-05 14:19:41,770.770 INFO    ] Launching Daemon at Fri Jun  5 14:19:41 IST 2026
[2026-06-05 14:19:41,782.782 INFO    ] ================================================
[2026-06-05 14:19:42,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:19:42
[2026-06-05 14:19:42,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:19:43,249.249 INFO    ] Initializing speech engine...
[2026-06-05 14:19:43,260.260 INFO    ] 2026-06-05 14:19:43
[2026-06-05 14:19:43,504.504 INFO    ] 2026-06-05 14:19:43
[2026-06-05 14:19:43,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:19:43,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:19:43,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:19:44,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:19:44,844.844 INFO    ] time= 05/06/2026 14:19:44
[2026-06-05 14:19:44,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:19:44,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:19:44,913.913 INFO    ] No existing commands found in stream
[2026-06-05 14:19:49,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:19:49,928.928 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 14:19:52,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:19:52,769.769 INFO    ] Checking for system updates...
[2026-06-05 14:19:52,807.807 INFO    ] 200
[2026-06-05 14:19:52,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:19:52,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:19:52,869.869 INFO    ] No update needed
[2026-06-05 14:19:52,872.872 INFO    ] Checking for camera pi updates...
[2026-06-05 14:19:52,906.906 INFO    ] 200
[2026-06-05 14:19:52,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:19:52,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:19:52,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:19:52,999.999 INFO    ] No camera update needed
[2026-06-05 14:19:53,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:19:53,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:19:53,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:19:53,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:19:55,057.057 INFO    ] ================================================
[2026-06-05 14:19:55,073.073 INFO    ] Launching Daemon at Fri Jun  5 14:19:55 IST 2026
[2026-06-05 14:19:55,084.084 INFO    ] ================================================
[2026-06-05 14:19:55,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:19:55
[2026-06-05 14:19:56,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:19:56,500.500 INFO    ] Initializing speech engine...
[2026-06-05 14:19:56,514.514 INFO    ] 2026-06-05 14:19:56
[2026-06-05 14:19:56,804.804 INFO    ] 2026-06-05 14:19:56
[2026-06-05 14:19:56,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:19:57,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:19:57,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:19:57,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:19:57,232.232 INFO    ] time= 05/06/2026 14:19:57
[2026-06-05 14:19:57,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:19:57,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:19:57,420.420 INFO    ] No existing commands found in stream
[2026-06-05 14:20:02,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:20:02,459.459 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 14:20:07,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:20:07,928.928 INFO    ] Checking for system updates...
[2026-06-05 14:20:07,965.965 INFO    ] 200
[2026-06-05 14:20:07,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:08,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:20:08,022.022 INFO    ] No update needed
[2026-06-05 14:20:08,024.024 INFO    ] Checking for camera pi updates...
[2026-06-05 14:20:08,058.058 INFO    ] 200
[2026-06-05 14:20:08,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:08,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:20:08,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:20:08,133.133 INFO    ] No camera update needed
[2026-06-05 14:20:08,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:20:08,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:20:08,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:20:08,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:20:10,189.189 INFO    ] ================================================
[2026-06-05 14:20:10,205.205 INFO    ] Launching Daemon at Fri Jun  5 14:20:10 IST 2026
[2026-06-05 14:20:10,216.216 INFO    ] ================================================
[2026-06-05 14:20:10,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:20:10
[2026-06-05 14:20:11,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:20:11,646.646 INFO    ] Initializing speech engine...
[2026-06-05 14:20:11,651.651 INFO    ] 2026-06-05 14:20:11
[2026-06-05 14:20:11,898.898 INFO    ] 2026-06-05 14:20:11
[2026-06-05 14:20:11,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:20:12,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:20:12,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:20:12,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:20:12,369.369 INFO    ] time= 05/06/2026 14:20:12
[2026-06-05 14:20:12,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:20:12,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:20:12,589.589 INFO    ] No existing commands found in stream
[2026-06-05 14:20:17,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:20:17,622.622 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 14:20:19,772.772 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:20:19,775.775 INFO    ] Checking for system updates...
[2026-06-05 14:20:19,812.812 INFO    ] 200
[2026-06-05 14:20:19,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:19,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:20:19,870.870 INFO    ] No update needed
[2026-06-05 14:20:19,872.872 INFO    ] Checking for camera pi updates...
[2026-06-05 14:20:19,906.906 INFO    ] 200
[2026-06-05 14:20:19,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:19,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:20:19,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:20:20,000.000 INFO    ] No camera update needed
[2026-06-05 14:20:20,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:20:20,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:20:20,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:20:20,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:20:22,057.057 INFO    ] ================================================
[2026-06-05 14:20:22,073.073 INFO    ] Launching Daemon at Fri Jun  5 14:20:22 IST 2026
[2026-06-05 14:20:22,085.085 INFO    ] ================================================
[2026-06-05 14:20:22,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:20:22
[2026-06-05 14:20:23,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:20:23,521.521 INFO    ] Initializing speech engine...
[2026-06-05 14:20:23,527.527 INFO    ] 2026-06-05 14:20:23
[2026-06-05 14:20:23,834.834 INFO    ] 2026-06-05 14:20:23
[2026-06-05 14:20:23,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:20:24,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:20:24,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:20:24,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:20:24,229.229 INFO    ] time= 05/06/2026 14:20:24
[2026-06-05 14:20:24,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:20:24,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:20:24,345.345 INFO    ] No existing commands found in stream
[2026-06-05 14:20:29,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:20:29,383.383 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 14:20:31,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:20:31,183.183 INFO    ] Checking for system updates...
[2026-06-05 14:20:31,219.219 INFO    ] 200
[2026-06-05 14:20:31,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:31,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:20:31,277.277 INFO    ] No update needed
[2026-06-05 14:20:31,279.279 INFO    ] Checking for camera pi updates...
[2026-06-05 14:20:31,314.314 INFO    ] 200
[2026-06-05 14:20:31,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:31,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:20:31,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:20:31,403.403 INFO    ] No camera update needed
[2026-06-05 14:20:31,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:20:31,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:20:31,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:20:31,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:20:33,458.458 INFO    ] ================================================
[2026-06-05 14:20:33,475.475 INFO    ] Launching Daemon at Fri Jun  5 14:20:33 IST 2026
[2026-06-05 14:20:33,487.487 INFO    ] ================================================
[2026-06-05 14:20:34,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:20:34
[2026-06-05 14:20:34,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:20:34,962.962 INFO    ] Initializing speech engine...
[2026-06-05 14:20:34,972.972 INFO    ] 2026-06-05 14:20:34
[2026-06-05 14:20:35,236.236 INFO    ] 2026-06-05 14:20:35
[2026-06-05 14:20:35,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:20:35,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:20:35,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:20:35,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:20:35,697.697 INFO    ] time= 05/06/2026 14:20:35
[2026-06-05 14:20:35,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:20:35,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:20:35,919.919 INFO    ] No existing commands found in stream
[2026-06-05 14:20:40,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:20:40,949.949 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 14:20:41,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:20:41,426.426 INFO    ] Checking for system updates...
[2026-06-05 14:20:41,468.468 INFO    ] 200
[2026-06-05 14:20:41,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:41,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:20:41,526.526 INFO    ] No update needed
[2026-06-05 14:20:41,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 14:20:41,563.563 INFO    ] 200
[2026-06-05 14:20:41,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:41,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:20:41,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:20:41,649.649 INFO    ] No camera update needed
[2026-06-05 14:20:41,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:20:41,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:20:41,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:20:41,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:20:43,706.706 INFO    ] ================================================
[2026-06-05 14:20:43,721.721 INFO    ] Launching Daemon at Fri Jun  5 14:20:43 IST 2026
[2026-06-05 14:20:43,732.732 INFO    ] ================================================
[2026-06-05 14:20:44,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:20:44
[2026-06-05 14:20:44,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:20:45,140.140 INFO    ] Initializing speech engine...
[2026-06-05 14:20:45,148.148 INFO    ] 2026-06-05 14:20:45
[2026-06-05 14:20:45,427.427 INFO    ] 2026-06-05 14:20:45
[2026-06-05 14:20:45,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:20:46,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:20:46,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:20:46,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:20:46,535.535 INFO    ] time= 05/06/2026 14:20:46
[2026-06-05 14:20:46,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:20:46,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:20:46,645.645 INFO    ] No existing commands found in stream
[2026-06-05 14:20:51,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:20:51,658.658 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 14:20:55,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:20:55,593.593 INFO    ] Checking for system updates...
[2026-06-05 14:20:55,629.629 INFO    ] 200
[2026-06-05 14:20:55,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:55,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:20:55,689.689 INFO    ] No update needed
[2026-06-05 14:20:55,692.692 INFO    ] Checking for camera pi updates...
[2026-06-05 14:20:55,726.726 INFO    ] 200
[2026-06-05 14:20:55,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:20:55,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:20:55,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:20:55,818.818 INFO    ] No camera update needed
[2026-06-05 14:20:55,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:20:55,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:20:55,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:20:55,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:20:57,876.876 INFO    ] ================================================
[2026-06-05 14:20:57,891.891 INFO    ] Launching Daemon at Fri Jun  5 14:20:57 IST 2026
[2026-06-05 14:20:57,902.902 INFO    ] ================================================
[2026-06-05 14:20:58,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:20:58
[2026-06-05 14:20:59,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:20:59,327.327 INFO    ] Initializing speech engine...
[2026-06-05 14:20:59,336.336 INFO    ] 2026-06-05 14:20:59
[2026-06-05 14:20:59,597.597 INFO    ] 2026-06-05 14:20:59
[2026-06-05 14:20:59,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:20:59,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:20:59,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:21:00,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:21:00,045.045 INFO    ] time= 05/06/2026 14:21:00
[2026-06-05 14:21:00,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:21:00,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:21:00,270.270 INFO    ] No existing commands found in stream
[2026-06-05 14:21:05,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:21:05,303.303 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 14:21:06,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:21:06,213.213 INFO    ] Checking for system updates...
[2026-06-05 14:21:06,251.251 INFO    ] 200
[2026-06-05 14:21:06,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:06,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:21:06,317.317 INFO    ] No update needed
[2026-06-05 14:21:06,320.320 INFO    ] Checking for camera pi updates...
[2026-06-05 14:21:06,362.362 INFO    ] 200
[2026-06-05 14:21:06,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:06,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:21:06,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:21:06,445.445 INFO    ] No camera update needed
[2026-06-05 14:21:06,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:21:06,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:21:06,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:21:06,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:21:08,500.500 INFO    ] ================================================
[2026-06-05 14:21:08,515.515 INFO    ] Launching Daemon at Fri Jun  5 14:21:08 IST 2026
[2026-06-05 14:21:08,526.526 INFO    ] ================================================
[2026-06-05 14:21:09,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:21:09
[2026-06-05 14:21:09,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:21:09,968.968 INFO    ] Initializing speech engine...
[2026-06-05 14:21:09,983.983 INFO    ] 2026-06-05 14:21:09
[2026-06-05 14:21:10,250.250 INFO    ] 2026-06-05 14:21:10
[2026-06-05 14:21:10,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:21:10,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:21:10,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:21:10,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:21:10,730.730 INFO    ] time= 05/06/2026 14:21:10
[2026-06-05 14:21:10,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:21:10,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:21:10,939.939 INFO    ] No existing commands found in stream
[2026-06-05 14:21:15,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:21:15,959.959 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 14:21:16,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:21:16,657.657 INFO    ] Checking for system updates...
[2026-06-05 14:21:16,694.694 INFO    ] 200
[2026-06-05 14:21:16,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:16,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:21:16,753.753 INFO    ] No update needed
[2026-06-05 14:21:16,755.755 INFO    ] Checking for camera pi updates...
[2026-06-05 14:21:16,799.799 INFO    ] 200
[2026-06-05 14:21:16,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:16,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:21:16,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:21:16,886.886 INFO    ] No camera update needed
[2026-06-05 14:21:16,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:21:16,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:21:16,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:21:16,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:21:18,947.947 INFO    ] ================================================
[2026-06-05 14:21:18,962.962 INFO    ] Launching Daemon at Fri Jun  5 14:21:18 IST 2026
[2026-06-05 14:21:18,973.973 INFO    ] ================================================
[2026-06-05 14:21:19,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:21:19
[2026-06-05 14:21:20,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:21:20,413.413 INFO    ] Initializing speech engine...
[2026-06-05 14:21:20,418.418 INFO    ] 2026-06-05 14:21:20
[2026-06-05 14:21:20,668.668 INFO    ] 2026-06-05 14:21:20
[2026-06-05 14:21:20,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:21:20,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:21:20,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:21:21,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:21:21,156.156 INFO    ] time= 05/06/2026 14:21:21
[2026-06-05 14:21:21,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:21:21,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:21:21,420.420 INFO    ] No existing commands found in stream
[2026-06-05 14:21:26,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:21:26,444.444 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 14:21:30,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:21:30,734.734 INFO    ] Checking for system updates...
[2026-06-05 14:21:30,774.774 INFO    ] 200
[2026-06-05 14:21:30,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:30,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:21:30,833.833 INFO    ] No update needed
[2026-06-05 14:21:30,836.836 INFO    ] Checking for camera pi updates...
[2026-06-05 14:21:30,870.870 INFO    ] 200
[2026-06-05 14:21:30,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:30,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:21:30,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:21:30,960.960 INFO    ] No camera update needed
[2026-06-05 14:21:30,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:21:30,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:21:30,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:21:30,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:21:33,015.015 INFO    ] ================================================
[2026-06-05 14:21:33,030.030 INFO    ] Launching Daemon at Fri Jun  5 14:21:33 IST 2026
[2026-06-05 14:21:33,041.041 INFO    ] ================================================
[2026-06-05 14:21:33,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:21:33
[2026-06-05 14:21:34,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:21:34,447.447 INFO    ] Initializing speech engine...
[2026-06-05 14:21:34,461.461 INFO    ] 2026-06-05 14:21:34
[2026-06-05 14:21:34,727.727 INFO    ] 2026-06-05 14:21:34
[2026-06-05 14:21:34,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:21:34,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:21:34,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:21:36,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:21:36,164.164 INFO    ] time= 05/06/2026 14:21:36
[2026-06-05 14:21:36,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:21:36,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:21:36,245.245 INFO    ] No existing commands found in stream
[2026-06-05 14:21:41,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:21:41,260.260 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 14:21:42,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:21:42,426.426 INFO    ] Checking for system updates...
[2026-06-05 14:21:42,463.463 INFO    ] 200
[2026-06-05 14:21:42,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:42,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:21:42,529.529 INFO    ] No update needed
[2026-06-05 14:21:42,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 14:21:42,565.565 INFO    ] 200
[2026-06-05 14:21:42,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:42,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:21:42,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:21:42,651.651 INFO    ] No camera update needed
[2026-06-05 14:21:42,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:21:42,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:21:42,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:21:42,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:21:44,708.708 INFO    ] ================================================
[2026-06-05 14:21:44,723.723 INFO    ] Launching Daemon at Fri Jun  5 14:21:44 IST 2026
[2026-06-05 14:21:44,734.734 INFO    ] ================================================
[2026-06-05 14:21:45,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:21:45
[2026-06-05 14:21:45,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:21:46,193.193 INFO    ] Initializing speech engine...
[2026-06-05 14:21:46,202.202 INFO    ] 2026-06-05 14:21:46
[2026-06-05 14:21:46,452.452 INFO    ] 2026-06-05 14:21:46
[2026-06-05 14:21:46,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:21:46,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:21:46,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:21:46,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:21:46,948.948 INFO    ] time= 05/06/2026 14:21:46
[2026-06-05 14:21:47,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:21:47,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:21:47,148.148 INFO    ] No existing commands found in stream
[2026-06-05 14:21:52,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:21:52,175.175 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 14:21:55,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:21:55,711.711 INFO    ] Checking for system updates...
[2026-06-05 14:21:55,747.747 INFO    ] 200
[2026-06-05 14:21:55,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:55,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:21:55,814.814 INFO    ] No update needed
[2026-06-05 14:21:55,817.817 INFO    ] Checking for camera pi updates...
[2026-06-05 14:21:55,852.852 INFO    ] 200
[2026-06-05 14:21:55,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:21:55,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:21:55,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:21:55,949.949 INFO    ] No camera update needed
[2026-06-05 14:21:55,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:21:55,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:21:55,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:21:55,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:21:58,013.013 INFO    ] ================================================
[2026-06-05 14:21:58,029.029 INFO    ] Launching Daemon at Fri Jun  5 14:21:58 IST 2026
[2026-06-05 14:21:58,040.040 INFO    ] ================================================
[2026-06-05 14:21:58,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:21:58
[2026-06-05 14:21:59,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:21:59,455.455 INFO    ] Initializing speech engine...
[2026-06-05 14:21:59,474.474 INFO    ] 2026-06-05 14:21:59
[2026-06-05 14:21:59,724.724 INFO    ] 2026-06-05 14:21:59
[2026-06-05 14:21:59,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:21:59,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:21:59,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:22:00,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:22:00,218.218 INFO    ] time= 05/06/2026 14:22:00
[2026-06-05 14:22:00,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:22:00,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:22:00,425.425 INFO    ] No existing commands found in stream
[2026-06-05 14:22:05,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:22:05,454.454 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 14:22:08,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:22:08,585.585 INFO    ] Checking for system updates...
[2026-06-05 14:22:08,623.623 INFO    ] 200
[2026-06-05 14:22:08,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:22:08,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:22:08,684.684 INFO    ] No update needed
[2026-06-05 14:22:08,687.687 INFO    ] Checking for camera pi updates...
[2026-06-05 14:22:08,723.723 INFO    ] 200
[2026-06-05 14:22:08,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:22:08,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:22:08,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:22:08,819.819 INFO    ] No camera update needed
[2026-06-05 14:22:08,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:22:08,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:22:08,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:22:08,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:22:10,883.883 INFO    ] ================================================
[2026-06-05 14:22:10,901.901 INFO    ] Launching Daemon at Fri Jun  5 14:22:10 IST 2026
[2026-06-05 14:22:10,913.913 INFO    ] ================================================
[2026-06-05 14:22:11,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:22:11
[2026-06-05 14:22:12,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:22:12,395.395 INFO    ] Initializing speech engine...
[2026-06-05 14:22:12,408.408 INFO    ] 2026-06-05 14:22:12
[2026-06-05 14:22:12,669.669 INFO    ] 2026-06-05 14:22:12
[2026-06-05 14:22:12,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:22:12,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:22:12,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:22:13,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:22:13,140.140 INFO    ] time= 05/06/2026 14:22:13
[2026-06-05 14:22:13,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:22:13,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:22:13,380.380 INFO    ] No existing commands found in stream
[2026-06-05 14:22:18,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:22:18,401.401 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 14:22:21,198.198 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:22:21,201.201 INFO    ] Checking for system updates...
[2026-06-05 14:22:21,241.241 INFO    ] 200
[2026-06-05 14:22:21,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:22:21,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:22:21,301.301 INFO    ] No update needed
[2026-06-05 14:22:21,303.303 INFO    ] Checking for camera pi updates...
[2026-06-05 14:22:21,341.341 INFO    ] 200
[2026-06-05 14:22:21,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:22:21,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:22:21,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:22:21,444.444 INFO    ] No camera update needed
[2026-06-05 14:22:21,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:22:21,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:22:21,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:22:21,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:22:23,509.509 INFO    ] ================================================
[2026-06-05 14:22:23,525.525 INFO    ] Launching Daemon at Fri Jun  5 14:22:23 IST 2026
[2026-06-05 14:22:23,536.536 INFO    ] ================================================
[2026-06-05 14:22:24,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:22:24
[2026-06-05 14:22:24,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:22:25,105.105 INFO    ] Initializing speech engine...
[2026-06-05 14:22:25,111.111 INFO    ] 2026-06-05 14:22:25
[2026-06-05 14:22:25,400.400 INFO    ] 2026-06-05 14:22:25
[2026-06-05 14:22:25,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:22:25,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:22:25,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:22:25,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:22:25,875.875 INFO    ] time= 05/06/2026 14:22:25
[2026-06-05 14:22:25,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:22:25,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:22:26,104.104 INFO    ] No existing commands found in stream
[2026-06-05 14:22:31,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:22:31,136.136 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 14:22:34,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:22:34,760.760 INFO    ] Checking for system updates...
[2026-06-05 14:22:34,798.798 INFO    ] 200
[2026-06-05 14:22:34,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:22:34,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:22:34,859.859 INFO    ] No update needed
[2026-06-05 14:22:34,862.862 INFO    ] Checking for camera pi updates...
[2026-06-05 14:22:34,899.899 INFO    ] 200
[2026-06-05 14:22:34,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:22:34,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:22:34,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:22:34,993.993 INFO    ] No camera update needed
[2026-06-05 14:22:34,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:22:34,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:22:35,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:22:35,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:22:37,050.050 INFO    ] ================================================
[2026-06-05 14:22:37,066.066 INFO    ] Launching Daemon at Fri Jun  5 14:22:37 IST 2026
[2026-06-05 14:22:37,077.077 INFO    ] ================================================
[2026-06-05 14:22:37,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:22:37
[2026-06-05 14:22:38,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:22:38,562.562 INFO    ] Initializing speech engine...
[2026-06-05 14:22:38,573.573 INFO    ] 2026-06-05 14:22:38
[2026-06-05 14:22:38,823.823 INFO    ] 2026-06-05 14:22:38
[2026-06-05 14:22:38,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:22:39,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:22:39,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:22:39,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:22:39,307.307 INFO    ] time= 05/06/2026 14:22:39
[2026-06-05 14:22:39,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:22:39,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:22:39,501.501 INFO    ] No existing commands found in stream
[2026-06-05 14:22:44,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:22:44,531.531 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 14:22:47,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:22:47,086.086 INFO    ] Checking for system updates...
[2026-06-05 14:22:47,127.127 INFO    ] 200
[2026-06-05 14:22:47,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:22:47,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:22:47,192.192 INFO    ] No update needed
[2026-06-05 14:22:47,194.194 INFO    ] Checking for camera pi updates...
[2026-06-05 14:22:47,232.232 INFO    ] 200
[2026-06-05 14:22:47,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:22:47,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:22:47,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:22:47,330.330 INFO    ] No camera update needed
[2026-06-05 14:22:47,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:22:47,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:22:47,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:22:47,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:22:49,387.387 INFO    ] ================================================
[2026-06-05 14:22:49,401.401 INFO    ] Launching Daemon at Fri Jun  5 14:22:49 IST 2026
[2026-06-05 14:22:49,412.412 INFO    ] ================================================
[2026-06-05 14:22:49,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:22:49
[2026-06-05 14:22:50,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:22:50,835.835 INFO    ] Initializing speech engine...
[2026-06-05 14:22:50,844.844 INFO    ] 2026-06-05 14:22:50
[2026-06-05 14:22:51,093.093 INFO    ] 2026-06-05 14:22:51
[2026-06-05 14:22:51,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:22:51,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:22:51,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:22:51,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:22:51,888.888 INFO    ] time= 05/06/2026 14:22:51
[2026-06-05 14:22:51,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:22:51,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:22:52,079.079 INFO    ] No existing commands found in stream
[2026-06-05 14:22:57,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:22:57,113.113 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 14:23:00,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:23:00,184.184 INFO    ] Checking for system updates...
[2026-06-05 14:23:00,229.229 INFO    ] 200
[2026-06-05 14:23:00,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:00,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:23:00,289.289 INFO    ] No update needed
[2026-06-05 14:23:00,292.292 INFO    ] Checking for camera pi updates...
[2026-06-05 14:23:00,325.325 INFO    ] 200
[2026-06-05 14:23:00,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:00,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:23:00,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:23:00,419.419 INFO    ] No camera update needed
[2026-06-05 14:23:00,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:23:00,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:23:00,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:23:00,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:23:02,476.476 INFO    ] ================================================
[2026-06-05 14:23:02,493.493 INFO    ] Launching Daemon at Fri Jun  5 14:23:02 IST 2026
[2026-06-05 14:23:02,505.505 INFO    ] ================================================
[2026-06-05 14:23:03,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:23:03
[2026-06-05 14:23:03,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:23:04,155.155 INFO    ] Initializing speech engine...
[2026-06-05 14:23:04,162.162 INFO    ] 2026-06-05 14:23:04
[2026-06-05 14:23:04,441.441 INFO    ] 2026-06-05 14:23:04
[2026-06-05 14:23:04,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:23:04,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:23:04,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:23:04,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:23:04,979.979 INFO    ] time= 05/06/2026 14:23:04
[2026-06-05 14:23:04,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:23:05,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:23:05,136.136 INFO    ] No existing commands found in stream
[2026-06-05 14:23:10,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:23:10,158.158 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 14:23:12,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:23:12,425.425 INFO    ] Checking for system updates...
[2026-06-05 14:23:12,466.466 INFO    ] 200
[2026-06-05 14:23:12,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:12,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:23:12,532.532 INFO    ] No update needed
[2026-06-05 14:23:12,534.534 INFO    ] Checking for camera pi updates...
[2026-06-05 14:23:12,568.568 INFO    ] 200
[2026-06-05 14:23:12,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:12,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:23:12,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:23:12,762.762 INFO    ] No camera update needed
[2026-06-05 14:23:12,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:23:12,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:23:12,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:23:12,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:23:14,817.817 INFO    ] ================================================
[2026-06-05 14:23:14,832.832 INFO    ] Launching Daemon at Fri Jun  5 14:23:14 IST 2026
[2026-06-05 14:23:14,843.843 INFO    ] ================================================
[2026-06-05 14:23:15,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:23:15
[2026-06-05 14:23:16,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:23:16,495.495 INFO    ] Initializing speech engine...
[2026-06-05 14:23:16,506.506 INFO    ] 2026-06-05 14:23:16
[2026-06-05 14:23:16,818.818 INFO    ] 2026-06-05 14:23:16
[2026-06-05 14:23:16,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:23:17,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:23:17,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:23:17,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:23:17,261.261 INFO    ] time= 05/06/2026 14:23:17
[2026-06-05 14:23:17,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:23:17,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:23:17,485.485 INFO    ] No existing commands found in stream
[2026-06-05 14:23:22,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:23:22,511.511 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 14:23:23,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:23:23,865.865 INFO    ] Checking for system updates...
[2026-06-05 14:23:23,913.913 INFO    ] 200
[2026-06-05 14:23:23,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:23,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:23:23,983.983 INFO    ] No update needed
[2026-06-05 14:23:23,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 14:23:24,026.026 INFO    ] 200
[2026-06-05 14:23:24,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:24,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:23:24,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:23:24,122.122 INFO    ] No camera update needed
[2026-06-05 14:23:24,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:23:24,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:23:24,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:23:24,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:23:26,181.181 INFO    ] ================================================
[2026-06-05 14:23:26,197.197 INFO    ] Launching Daemon at Fri Jun  5 14:23:26 IST 2026
[2026-06-05 14:23:26,208.208 INFO    ] ================================================
[2026-06-05 14:23:26,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:23:26
[2026-06-05 14:23:27,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:23:27,866.866 INFO    ] Initializing speech engine...
[2026-06-05 14:23:27,879.879 INFO    ] 2026-06-05 14:23:27
[2026-06-05 14:23:28,162.162 INFO    ] 2026-06-05 14:23:28
[2026-06-05 14:23:28,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:23:28,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:23:28,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:23:28,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:23:28,700.700 INFO    ] time= 05/06/2026 14:23:28
[2026-06-05 14:23:28,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:23:28,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:23:28,855.855 INFO    ] No existing commands found in stream
[2026-06-05 14:23:33,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:23:33,879.879 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 14:23:37,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:23:37,934.934 INFO    ] Checking for system updates...
[2026-06-05 14:23:37,976.976 INFO    ] 200
[2026-06-05 14:23:37,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:38,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:23:38,041.041 INFO    ] No update needed
[2026-06-05 14:23:38,044.044 INFO    ] Checking for camera pi updates...
[2026-06-05 14:23:38,084.084 INFO    ] 200
[2026-06-05 14:23:38,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:38,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:23:38,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:23:38,185.185 INFO    ] No camera update needed
[2026-06-05 14:23:38,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:23:38,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:23:38,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:23:38,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:23:40,243.243 INFO    ] ================================================
[2026-06-05 14:23:40,259.259 INFO    ] Launching Daemon at Fri Jun  5 14:23:40 IST 2026
[2026-06-05 14:23:40,270.270 INFO    ] ================================================
[2026-06-05 14:23:40,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:23:40
[2026-06-05 14:23:41,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:23:41,834.834 INFO    ] Initializing speech engine...
[2026-06-05 14:23:41,847.847 INFO    ] 2026-06-05 14:23:41
[2026-06-05 14:23:42,136.136 INFO    ] 2026-06-05 14:23:42
[2026-06-05 14:23:42,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:23:42,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:23:42,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:23:42,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:23:42,669.669 INFO    ] time= 05/06/2026 14:23:42
[2026-06-05 14:23:42,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:23:42,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:23:42,853.853 INFO    ] No existing commands found in stream
[2026-06-05 14:23:47,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:23:47,888.888 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 14:23:49,390.390 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:23:49,394.394 INFO    ] Checking for system updates...
[2026-06-05 14:23:49,449.449 INFO    ] 200
[2026-06-05 14:23:49,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:49,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:23:49,518.518 INFO    ] No update needed
[2026-06-05 14:23:49,521.521 INFO    ] Checking for camera pi updates...
[2026-06-05 14:23:49,561.561 INFO    ] 200
[2026-06-05 14:23:49,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:23:49,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:23:49,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:23:49,655.655 INFO    ] No camera update needed
[2026-06-05 14:23:49,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:23:49,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:23:49,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:23:49,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:23:51,716.716 INFO    ] ================================================
[2026-06-05 14:23:51,731.731 INFO    ] Launching Daemon at Fri Jun  5 14:23:51 IST 2026
[2026-06-05 14:23:51,742.742 INFO    ] ================================================
[2026-06-05 14:23:52,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:23:52
[2026-06-05 14:23:52,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:23:53,162.162 INFO    ] Initializing speech engine...
[2026-06-05 14:23:53,174.174 INFO    ] 2026-06-05 14:23:53
[2026-06-05 14:23:53,421.421 INFO    ] 2026-06-05 14:23:53
[2026-06-05 14:23:53,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:23:53,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:23:53,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:23:53,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:23:53,875.875 INFO    ] time= 05/06/2026 14:23:53
[2026-06-05 14:23:53,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:23:53,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:23:54,083.083 INFO    ] No existing commands found in stream
[2026-06-05 14:23:59,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:23:59,113.113 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 14:24:05,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:24:05,710.710 INFO    ] Checking for system updates...
[2026-06-05 14:24:05,746.746 INFO    ] 200
[2026-06-05 14:24:05,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:24:05,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:24:05,803.803 INFO    ] No update needed
[2026-06-05 14:24:05,806.806 INFO    ] Checking for camera pi updates...
[2026-06-05 14:24:05,840.840 INFO    ] 200
[2026-06-05 14:24:05,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:24:05,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:24:05,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:24:05,922.922 INFO    ] No camera update needed
[2026-06-05 14:24:05,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:24:05,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:24:05,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:24:05,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:24:07,978.978 INFO    ] ================================================
[2026-06-05 14:24:07,994.994 INFO    ] Launching Daemon at Fri Jun  5 14:24:07 IST 2026
[2026-06-05 14:24:08,005.005 INFO    ] ================================================
[2026-06-05 14:24:08,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:24:08
[2026-06-05 14:24:09,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:24:09,447.447 INFO    ] Initializing speech engine...
[2026-06-05 14:24:09,461.461 INFO    ] 2026-06-05 14:24:09
[2026-06-05 14:24:09,740.740 INFO    ] 2026-06-05 14:24:09
[2026-06-05 14:24:09,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:24:09,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:24:09,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:24:10,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:24:10,124.124 INFO    ] time= 05/06/2026 14:24:10
[2026-06-05 14:24:10,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:24:10,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:24:10,325.325 INFO    ] No existing commands found in stream
[2026-06-05 14:24:15,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:24:15,340.340 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 14:24:18,477.477 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:24:18,480.480 INFO    ] Checking for system updates...
[2026-06-05 14:24:18,520.520 INFO    ] 200
[2026-06-05 14:24:18,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 14:24:18,525.525 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 14:24:18,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 14:24:19,232.232 INFO    ] 200
[2026-06-05 14:24:19,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 14:24:19,237.237 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 14:24:19,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:24:19,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:24:19,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:24:19,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:24:21,292.292 INFO    ] ================================================
[2026-06-05 14:24:21,584.584 INFO    ] Launching Daemon at Fri Jun  5 14:24:21 IST 2026
[2026-06-05 14:24:21,606.606 INFO    ] ================================================
[2026-06-05 14:24:22,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:24:22
[2026-06-05 14:24:22,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:24:23,214.214 INFO    ] Initializing speech engine...
[2026-06-05 14:24:23,226.226 INFO    ] 2026-06-05 14:24:23
[2026-06-05 14:24:23,478.478 INFO    ] 2026-06-05 14:24:23
[2026-06-05 14:24:23,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:24:23,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:24:23,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:24:23,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:24:23,861.861 INFO    ] time= 05/06/2026 14:24:23
[2026-06-05 14:24:23,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:24:23,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:24:24,037.037 INFO    ] No existing commands found in stream
[2026-06-05 14:24:29,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:24:29,065.065 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 14:24:32,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:24:32,891.891 INFO    ] Checking for system updates...
[2026-06-05 14:24:32,931.931 INFO    ] 200
[2026-06-05 14:24:32,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:24:33,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:24:33,028.028 INFO    ] No update needed
[2026-06-05 14:24:33,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 14:24:33,067.067 INFO    ] 200
[2026-06-05 14:24:33,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:24:33,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:24:33,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:24:33,168.168 INFO    ] No camera update needed
[2026-06-05 14:24:33,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:24:33,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:24:33,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:24:33,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:24:35,228.228 INFO    ] ================================================
[2026-06-05 14:24:35,244.244 INFO    ] Launching Daemon at Fri Jun  5 14:24:35 IST 2026
[2026-06-05 14:24:35,255.255 INFO    ] ================================================
[2026-06-05 14:24:35,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:24:35
[2026-06-05 14:24:36,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:24:36,964.964 INFO    ] Initializing speech engine...
[2026-06-05 14:24:36,974.974 INFO    ] 2026-06-05 14:24:36
[2026-06-05 14:24:37,284.284 INFO    ] 2026-06-05 14:24:37
[2026-06-05 14:24:37,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:24:37,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:24:37,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:24:37,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:24:37,794.794 INFO    ] time= 05/06/2026 14:24:37
[2026-06-05 14:24:37,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:24:37,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:24:37,959.959 INFO    ] No existing commands found in stream
[2026-06-05 14:24:42,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:24:42,993.993 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 14:24:46,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:24:46,337.337 INFO    ] Checking for system updates...
[2026-06-05 14:24:46,376.376 INFO    ] 200
[2026-06-05 14:24:46,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:24:46,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:24:46,436.436 INFO    ] No update needed
[2026-06-05 14:24:46,439.439 INFO    ] Checking for camera pi updates...
[2026-06-05 14:24:46,480.480 INFO    ] 200
[2026-06-05 14:24:46,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:24:46,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:24:46,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:24:46,587.587 INFO    ] No camera update needed
[2026-06-05 14:24:46,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:24:46,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:24:46,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:24:46,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:24:48,649.649 INFO    ] ================================================
[2026-06-05 14:24:48,665.665 INFO    ] Launching Daemon at Fri Jun  5 14:24:48 IST 2026
[2026-06-05 14:24:48,677.677 INFO    ] ================================================
[2026-06-05 14:24:49,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:24:49
[2026-06-05 14:24:49,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:24:50,101.101 INFO    ] Initializing speech engine...
[2026-06-05 14:24:50,123.123 INFO    ] 2026-06-05 14:24:50
[2026-06-05 14:24:50,377.377 INFO    ] 2026-06-05 14:24:50
[2026-06-05 14:24:50,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:24:50,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:24:50,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:24:50,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:24:50,935.935 INFO    ] time= 05/06/2026 14:24:50
[2026-06-05 14:24:50,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:24:50,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:24:51,085.085 INFO    ] No existing commands found in stream
[2026-06-05 14:24:56,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:24:56,103.103 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 14:24:58,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:24:58,307.307 INFO    ] Checking for system updates...
[2026-06-05 14:24:58,344.344 INFO    ] 200
[2026-06-05 14:24:58,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:24:58,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:24:58,411.411 INFO    ] No update needed
[2026-06-05 14:24:58,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 14:24:58,447.447 INFO    ] 200
[2026-06-05 14:24:58,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:24:58,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:24:58,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:24:58,537.537 INFO    ] No camera update needed
[2026-06-05 14:24:58,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:24:58,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:24:58,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:24:58,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:25:00,595.595 INFO    ] ================================================
[2026-06-05 14:25:00,611.611 INFO    ] Launching Daemon at Fri Jun  5 14:25:00 IST 2026
[2026-06-05 14:25:00,622.622 INFO    ] ================================================
[2026-06-05 14:25:01,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:25:01
[2026-06-05 14:25:02,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:25:02,543.543 INFO    ] Initializing speech engine...
[2026-06-05 14:25:02,553.553 INFO    ] 2026-06-05 14:25:02
[2026-06-05 14:25:02,837.837 INFO    ] 2026-06-05 14:25:02
[2026-06-05 14:25:02,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:25:03,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:25:03,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:25:03,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:25:03,396.396 INFO    ] time= 05/06/2026 14:25:03
[2026-06-05 14:25:03,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:25:03,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:25:03,582.582 INFO    ] No existing commands found in stream
[2026-06-05 14:25:08,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:25:08,618.618 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 14:25:09,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:25:09,254.254 INFO    ] Checking for system updates...
[2026-06-05 14:25:09,290.290 INFO    ] 200
[2026-06-05 14:25:09,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:25:09,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:25:09,349.349 INFO    ] No update needed
[2026-06-05 14:25:09,351.351 INFO    ] Checking for camera pi updates...
[2026-06-05 14:25:09,386.386 INFO    ] 200
[2026-06-05 14:25:09,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:25:09,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:25:09,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:25:09,478.478 INFO    ] No camera update needed
[2026-06-05 14:25:09,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:25:09,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:25:09,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:25:09,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:25:11,534.534 INFO    ] ================================================
[2026-06-05 14:25:11,550.550 INFO    ] Launching Daemon at Fri Jun  5 14:25:11 IST 2026
[2026-06-05 14:25:11,561.561 INFO    ] ================================================
[2026-06-05 14:25:12,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:25:12
[2026-06-05 14:25:12,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:25:13,185.185 INFO    ] Initializing speech engine...
[2026-06-05 14:25:13,193.193 INFO    ] 2026-06-05 14:25:13
[2026-06-05 14:25:13,467.467 INFO    ] 2026-06-05 14:25:13
[2026-06-05 14:25:13,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:25:13,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:25:13,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:25:13,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:25:13,937.937 INFO    ] time= 05/06/2026 14:25:13
[2026-06-05 14:25:13,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:25:14,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:25:14,143.143 INFO    ] No existing commands found in stream
[2026-06-05 14:25:19,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:25:19,182.182 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 14:25:23,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:25:23,565.565 INFO    ] Checking for system updates...
[2026-06-05 14:25:23,602.602 INFO    ] 200
[2026-06-05 14:25:23,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:25:23,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:25:23,667.667 INFO    ] No update needed
[2026-06-05 14:25:23,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 14:25:23,704.704 INFO    ] 200
[2026-06-05 14:25:23,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:25:23,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:25:23,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:25:23,905.905 INFO    ] No camera update needed
[2026-06-05 14:25:23,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:25:23,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:25:23,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:25:23,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:25:25,959.959 INFO    ] ================================================
[2026-06-05 14:25:25,975.975 INFO    ] Launching Daemon at Fri Jun  5 14:25:25 IST 2026
[2026-06-05 14:25:25,986.986 INFO    ] ================================================
[2026-06-05 14:25:26,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:25:26
[2026-06-05 14:25:27,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:25:27,424.424 INFO    ] Initializing speech engine...
[2026-06-05 14:25:27,431.431 INFO    ] 2026-06-05 14:25:27
[2026-06-05 14:25:27,687.687 INFO    ] 2026-06-05 14:25:27
[2026-06-05 14:25:27,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:25:27,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:25:27,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:25:28,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:25:28,093.093 INFO    ] time= 05/06/2026 14:25:28
[2026-06-05 14:25:28,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:25:28,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:25:28,248.248 INFO    ] No existing commands found in stream
[2026-06-05 14:25:33,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:25:33,263.263 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 14:25:37,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:25:37,240.240 INFO    ] Checking for system updates...
[2026-06-05 14:25:37,277.277 INFO    ] 200
[2026-06-05 14:25:37,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:25:37,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:25:37,336.336 INFO    ] No update needed
[2026-06-05 14:25:37,339.339 INFO    ] Checking for camera pi updates...
[2026-06-05 14:25:37,381.381 INFO    ] 200
[2026-06-05 14:25:37,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:25:37,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:25:37,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:25:37,476.476 INFO    ] No camera update needed
[2026-06-05 14:25:37,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:25:37,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:25:37,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:25:37,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:25:39,537.537 INFO    ] ================================================
[2026-06-05 14:25:39,552.552 INFO    ] Launching Daemon at Fri Jun  5 14:25:39 IST 2026
[2026-06-05 14:25:39,562.562 INFO    ] ================================================
[2026-06-05 14:25:40,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:25:40
[2026-06-05 14:25:40,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:25:40,969.969 INFO    ] Initializing speech engine...
[2026-06-05 14:25:40,992.992 INFO    ] 2026-06-05 14:25:40
[2026-06-05 14:25:41,248.248 INFO    ] 2026-06-05 14:25:41
[2026-06-05 14:25:41,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:25:41,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:25:41,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:25:41,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:25:41,624.624 INFO    ] time= 05/06/2026 14:25:41
[2026-06-05 14:25:41,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:25:41,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:25:41,812.812 INFO    ] No existing commands found in stream
[2026-06-05 14:25:46,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:25:46,837.837 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 14:25:49,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:25:49,223.223 INFO    ] Checking for system updates...
[2026-06-05 14:25:49,259.259 INFO    ] 200
[2026-06-05 14:25:49,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:25:49,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:25:49,317.317 INFO    ] No update needed
[2026-06-05 14:25:49,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 14:25:49,357.357 INFO    ] 200
[2026-06-05 14:25:49,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:25:49,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:25:49,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:25:49,448.448 INFO    ] No camera update needed
[2026-06-05 14:25:49,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:25:49,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:25:49,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:25:49,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:25:51,504.504 INFO    ] ================================================
[2026-06-05 14:25:51,519.519 INFO    ] Launching Daemon at Fri Jun  5 14:25:51 IST 2026
[2026-06-05 14:25:51,529.529 INFO    ] ================================================
[2026-06-05 14:25:52,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:25:52
[2026-06-05 14:25:52,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:25:52,943.943 INFO    ] Initializing speech engine...
[2026-06-05 14:25:52,967.967 INFO    ] 2026-06-05 14:25:52
[2026-06-05 14:25:53,245.245 INFO    ] 2026-06-05 14:25:53
[2026-06-05 14:25:53,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:25:53,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:25:53,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:25:53,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:25:53,624.624 INFO    ] time= 05/06/2026 14:25:53
[2026-06-05 14:25:53,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:25:53,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:25:53,758.758 INFO    ] No existing commands found in stream
[2026-06-05 14:25:58,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:25:58,790.790 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 14:26:01,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:26:01,451.451 INFO    ] Checking for system updates...
[2026-06-05 14:26:01,490.490 INFO    ] 200
[2026-06-05 14:26:01,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:01,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:26:01,549.549 INFO    ] No update needed
[2026-06-05 14:26:01,551.551 INFO    ] Checking for camera pi updates...
[2026-06-05 14:26:01,589.589 INFO    ] 200
[2026-06-05 14:26:01,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:01,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:26:01,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:26:01,672.672 INFO    ] No camera update needed
[2026-06-05 14:26:01,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:26:01,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:26:01,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:26:01,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:26:03,730.730 INFO    ] ================================================
[2026-06-05 14:26:03,745.745 INFO    ] Launching Daemon at Fri Jun  5 14:26:03 IST 2026
[2026-06-05 14:26:03,756.756 INFO    ] ================================================
[2026-06-05 14:26:04,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:26:04
[2026-06-05 14:26:04,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:26:05,197.197 INFO    ] Initializing speech engine...
[2026-06-05 14:26:05,206.206 INFO    ] 2026-06-05 14:26:05
[2026-06-05 14:26:05,468.468 INFO    ] 2026-06-05 14:26:05
[2026-06-05 14:26:05,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:26:05,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:26:05,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:26:05,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:26:05,884.884 INFO    ] time= 05/06/2026 14:26:05
[2026-06-05 14:26:05,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:26:05,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:26:05,971.971 INFO    ] No existing commands found in stream
[2026-06-05 14:26:10,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:26:10,989.989 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 14:26:16,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:26:16,393.393 INFO    ] Checking for system updates...
[2026-06-05 14:26:16,429.429 INFO    ] 200
[2026-06-05 14:26:16,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:16,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:26:16,497.497 INFO    ] No update needed
[2026-06-05 14:26:16,499.499 INFO    ] Checking for camera pi updates...
[2026-06-05 14:26:16,544.544 INFO    ] 200
[2026-06-05 14:26:16,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:16,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:26:16,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:26:16,643.643 INFO    ] No camera update needed
[2026-06-05 14:26:16,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:26:16,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:26:16,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:26:16,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:26:18,700.700 INFO    ] ================================================
[2026-06-05 14:26:18,715.715 INFO    ] Launching Daemon at Fri Jun  5 14:26:18 IST 2026
[2026-06-05 14:26:18,726.726 INFO    ] ================================================
[2026-06-05 14:26:19,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:26:19
[2026-06-05 14:26:20,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:26:20,341.341 INFO    ] Initializing speech engine...
[2026-06-05 14:26:20,354.354 INFO    ] 2026-06-05 14:26:20
[2026-06-05 14:26:20,642.642 INFO    ] 2026-06-05 14:26:20
[2026-06-05 14:26:20,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:26:20,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:26:20,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:26:21,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:26:21,095.095 INFO    ] time= 05/06/2026 14:26:21
[2026-06-05 14:26:21,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:26:21,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:26:21,327.327 INFO    ] No existing commands found in stream
[2026-06-05 14:26:26,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:26:26,352.352 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 14:26:28,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:26:28,244.244 INFO    ] Checking for system updates...
[2026-06-05 14:26:28,283.283 INFO    ] 200
[2026-06-05 14:26:28,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:28,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:26:28,341.341 INFO    ] No update needed
[2026-06-05 14:26:28,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 14:26:28,381.381 INFO    ] 200
[2026-06-05 14:26:28,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:28,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:26:28,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:26:28,479.479 INFO    ] No camera update needed
[2026-06-05 14:26:28,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:26:28,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:26:28,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:26:28,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:26:30,535.535 INFO    ] ================================================
[2026-06-05 14:26:30,550.550 INFO    ] Launching Daemon at Fri Jun  5 14:26:30 IST 2026
[2026-06-05 14:26:30,561.561 INFO    ] ================================================
[2026-06-05 14:26:31,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:26:31
[2026-06-05 14:26:31,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:26:31,984.984 INFO    ] Initializing speech engine...
[2026-06-05 14:26:31,994.994 INFO    ] 2026-06-05 14:26:31
[2026-06-05 14:26:32,293.293 INFO    ] 2026-06-05 14:26:32
[2026-06-05 14:26:32,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:26:32,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:26:32,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:26:32,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:26:32,734.734 INFO    ] time= 05/06/2026 14:26:32
[2026-06-05 14:26:32,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:26:32,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:26:32,833.833 INFO    ] No existing commands found in stream
[2026-06-05 14:26:37,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:26:37,866.866 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 14:26:40,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:26:40,012.012 INFO    ] Checking for system updates...
[2026-06-05 14:26:40,049.049 INFO    ] 200
[2026-06-05 14:26:40,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:40,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:26:40,116.116 INFO    ] No update needed
[2026-06-05 14:26:40,118.118 INFO    ] Checking for camera pi updates...
[2026-06-05 14:26:40,152.152 INFO    ] 200
[2026-06-05 14:26:40,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:40,202.202 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:26:40,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:26:40,258.258 INFO    ] No camera update needed
[2026-06-05 14:26:40,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:26:40,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:26:40,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:26:40,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:26:42,317.317 INFO    ] ================================================
[2026-06-05 14:26:42,332.332 INFO    ] Launching Daemon at Fri Jun  5 14:26:42 IST 2026
[2026-06-05 14:26:42,342.342 INFO    ] ================================================
[2026-06-05 14:26:42,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:26:42
[2026-06-05 14:26:43,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:26:43,957.957 INFO    ] Initializing speech engine...
[2026-06-05 14:26:43,965.965 INFO    ] 2026-06-05 14:26:43
[2026-06-05 14:26:44,237.237 INFO    ] 2026-06-05 14:26:44
[2026-06-05 14:26:44,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:26:46,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:26:46,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:26:46,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:26:46,324.324 INFO    ] time= 05/06/2026 14:26:46
[2026-06-05 14:26:46,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:26:46,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:26:46,432.432 INFO    ] No existing commands found in stream
[2026-06-05 14:26:51,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:26:51,451.451 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 14:26:53,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:26:53,474.474 INFO    ] Checking for system updates...
[2026-06-05 14:26:53,517.517 INFO    ] 200
[2026-06-05 14:26:53,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:53,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:26:53,577.577 INFO    ] No update needed
[2026-06-05 14:26:53,579.579 INFO    ] Checking for camera pi updates...
[2026-06-05 14:26:53,618.618 INFO    ] 200
[2026-06-05 14:26:53,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:26:53,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:26:53,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:26:53,701.701 INFO    ] No camera update needed
[2026-06-05 14:26:53,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:26:53,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:26:53,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:26:53,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:26:55,758.758 INFO    ] ================================================
[2026-06-05 14:26:55,773.773 INFO    ] Launching Daemon at Fri Jun  5 14:26:55 IST 2026
[2026-06-05 14:26:55,784.784 INFO    ] ================================================
[2026-06-05 14:26:56,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:26:56
[2026-06-05 14:26:56,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:26:57,256.256 INFO    ] Initializing speech engine...
[2026-06-05 14:26:57,263.263 INFO    ] 2026-06-05 14:26:57
[2026-06-05 14:26:57,549.549 INFO    ] 2026-06-05 14:26:57
[2026-06-05 14:26:57,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:26:57,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:26:57,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:26:58,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:26:58,088.088 INFO    ] time= 05/06/2026 14:26:58
[2026-06-05 14:26:58,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:26:58,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:26:58,246.246 INFO    ] No existing commands found in stream
[2026-06-05 14:27:03,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:27:03,272.272 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 14:27:05,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:27:05,486.486 INFO    ] Checking for system updates...
[2026-06-05 14:27:05,529.529 INFO    ] 200
[2026-06-05 14:27:05,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:05,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:27:05,595.595 INFO    ] No update needed
[2026-06-05 14:27:05,598.598 INFO    ] Checking for camera pi updates...
[2026-06-05 14:27:05,635.635 INFO    ] 200
[2026-06-05 14:27:05,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:05,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:27:05,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:27:05,713.713 INFO    ] No camera update needed
[2026-06-05 14:27:05,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:27:05,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:27:05,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:27:05,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:27:07,771.771 INFO    ] ================================================
[2026-06-05 14:27:07,787.787 INFO    ] Launching Daemon at Fri Jun  5 14:27:07 IST 2026
[2026-06-05 14:27:07,798.798 INFO    ] ================================================
[2026-06-05 14:27:08,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:27:08
[2026-06-05 14:27:08,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:27:09,243.243 INFO    ] Initializing speech engine...
[2026-06-05 14:27:09,253.253 INFO    ] 2026-06-05 14:27:09
[2026-06-05 14:27:09,523.523 INFO    ] 2026-06-05 14:27:09
[2026-06-05 14:27:09,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:27:09,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:27:09,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:27:09,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:27:09,883.883 INFO    ] time= 05/06/2026 14:27:09
[2026-06-05 14:27:09,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:27:09,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:27:09,962.962 INFO    ] No existing commands found in stream
[2026-06-05 14:27:14,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:27:14,977.977 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 14:27:16,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:27:16,722.722 INFO    ] Checking for system updates...
[2026-06-05 14:27:16,767.767 INFO    ] 200
[2026-06-05 14:27:16,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:16,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:27:16,826.826 INFO    ] No update needed
[2026-06-05 14:27:16,828.828 INFO    ] Checking for camera pi updates...
[2026-06-05 14:27:16,868.868 INFO    ] 200
[2026-06-05 14:27:16,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:16,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:27:16,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:27:16,966.966 INFO    ] No camera update needed
[2026-06-05 14:27:16,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:27:16,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:27:16,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:27:16,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:27:19,028.028 INFO    ] ================================================
[2026-06-05 14:27:19,044.044 INFO    ] Launching Daemon at Fri Jun  5 14:27:19 IST 2026
[2026-06-05 14:27:19,055.055 INFO    ] ================================================
[2026-06-05 14:27:19,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:27:19
[2026-06-05 14:27:20,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:27:20,542.542 INFO    ] Initializing speech engine...
[2026-06-05 14:27:20,550.550 INFO    ] 2026-06-05 14:27:20
[2026-06-05 14:27:20,810.810 INFO    ] 2026-06-05 14:27:20
[2026-06-05 14:27:20,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:27:21,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:27:21,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:27:21,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:27:21,272.272 INFO    ] time= 05/06/2026 14:27:21
[2026-06-05 14:27:21,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:27:21,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:27:21,511.511 INFO    ] No existing commands found in stream
[2026-06-05 14:27:26,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:27:26,529.529 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 14:27:29,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:27:29,924.924 INFO    ] Checking for system updates...
[2026-06-05 14:27:29,960.960 INFO    ] 200
[2026-06-05 14:27:29,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:30,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:27:30,027.027 INFO    ] No update needed
[2026-06-05 14:27:30,029.029 INFO    ] Checking for camera pi updates...
[2026-06-05 14:27:30,064.064 INFO    ] 200
[2026-06-05 14:27:30,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:30,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:27:30,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:27:30,284.284 INFO    ] No camera update needed
[2026-06-05 14:27:30,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:27:30,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:27:30,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:27:30,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:27:32,353.353 INFO    ] ================================================
[2026-06-05 14:27:32,368.368 INFO    ] Launching Daemon at Fri Jun  5 14:27:32 IST 2026
[2026-06-05 14:27:32,378.378 INFO    ] ================================================
[2026-06-05 14:27:32,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:27:32
[2026-06-05 14:27:33,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:27:33,785.785 INFO    ] Initializing speech engine...
[2026-06-05 14:27:33,809.809 INFO    ] 2026-06-05 14:27:33
[2026-06-05 14:27:34,067.067 INFO    ] 2026-06-05 14:27:34
[2026-06-05 14:27:34,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:27:34,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:27:34,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:27:34,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:27:34,513.513 INFO    ] time= 05/06/2026 14:27:34
[2026-06-05 14:27:34,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:27:34,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:27:34,653.653 INFO    ] No existing commands found in stream
[2026-06-05 14:27:39,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:27:39,678.678 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 14:27:42,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:27:42,027.027 INFO    ] Checking for system updates...
[2026-06-05 14:27:42,063.063 INFO    ] 200
[2026-06-05 14:27:42,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:42,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:27:42,128.128 INFO    ] No update needed
[2026-06-05 14:27:42,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 14:27:42,169.169 INFO    ] 200
[2026-06-05 14:27:42,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:42,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:27:42,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:27:42,268.268 INFO    ] No camera update needed
[2026-06-05 14:27:42,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:27:42,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:27:42,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:27:42,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:27:44,324.324 INFO    ] ================================================
[2026-06-05 14:27:44,340.340 INFO    ] Launching Daemon at Fri Jun  5 14:27:44 IST 2026
[2026-06-05 14:27:44,351.351 INFO    ] ================================================
[2026-06-05 14:27:44,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:27:44
[2026-06-05 14:27:45,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:27:45,813.813 INFO    ] Initializing speech engine...
[2026-06-05 14:27:45,823.823 INFO    ] 2026-06-05 14:27:45
[2026-06-05 14:27:46,086.086 INFO    ] 2026-06-05 14:27:46
[2026-06-05 14:27:46,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:27:46,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:27:46,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:27:46,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:27:46,588.588 INFO    ] time= 05/06/2026 14:27:46
[2026-06-05 14:27:46,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:27:46,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:27:46,775.775 INFO    ] No existing commands found in stream
[2026-06-05 14:27:51,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:27:51,798.798 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 14:27:55,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:27:55,606.606 INFO    ] Checking for system updates...
[2026-06-05 14:27:55,643.643 INFO    ] 200
[2026-06-05 14:27:55,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:55,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:27:55,703.703 INFO    ] No update needed
[2026-06-05 14:27:55,706.706 INFO    ] Checking for camera pi updates...
[2026-06-05 14:27:55,740.740 INFO    ] 200
[2026-06-05 14:27:55,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:27:55,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:27:55,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:27:55,827.827 INFO    ] No camera update needed
[2026-06-05 14:27:55,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:27:55,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:27:55,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:27:55,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:27:57,886.886 INFO    ] ================================================
[2026-06-05 14:27:57,902.902 INFO    ] Launching Daemon at Fri Jun  5 14:27:57 IST 2026
[2026-06-05 14:27:57,913.913 INFO    ] ================================================
[2026-06-05 14:27:58,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:27:58
[2026-06-05 14:27:59,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:27:59,317.317 INFO    ] Initializing speech engine...
[2026-06-05 14:27:59,332.332 INFO    ] 2026-06-05 14:27:59
[2026-06-05 14:27:59,597.597 INFO    ] 2026-06-05 14:27:59
[2026-06-05 14:27:59,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:27:59,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:27:59,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:28:00,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:28:00,057.057 INFO    ] time= 05/06/2026 14:28:00
[2026-06-05 14:28:00,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:28:00,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:28:00,298.298 INFO    ] No existing commands found in stream
[2026-06-05 14:28:05,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:28:05,326.326 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 14:28:06,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:28:06,377.377 INFO    ] Checking for system updates...
[2026-06-05 14:28:06,416.416 INFO    ] 200
[2026-06-05 14:28:06,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:06,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:28:06,494.494 INFO    ] No update needed
[2026-06-05 14:28:06,497.497 INFO    ] Checking for camera pi updates...
[2026-06-05 14:28:06,533.533 INFO    ] 200
[2026-06-05 14:28:06,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:06,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:28:06,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:28:06,609.609 INFO    ] No camera update needed
[2026-06-05 14:28:06,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:28:06,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:28:06,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:28:06,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:28:08,668.668 INFO    ] ================================================
[2026-06-05 14:28:08,684.684 INFO    ] Launching Daemon at Fri Jun  5 14:28:08 IST 2026
[2026-06-05 14:28:08,695.695 INFO    ] ================================================
[2026-06-05 14:28:09,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:28:09
[2026-06-05 14:28:09,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:28:10,165.165 INFO    ] Initializing speech engine...
[2026-06-05 14:28:10,174.174 INFO    ] 2026-06-05 14:28:10
[2026-06-05 14:28:10,465.465 INFO    ] 2026-06-05 14:28:10
[2026-06-05 14:28:10,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:28:10,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:28:10,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:28:10,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:28:10,956.956 INFO    ] time= 05/06/2026 14:28:10
[2026-06-05 14:28:11,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:28:11,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:28:11,231.231 INFO    ] No existing commands found in stream
[2026-06-05 14:28:16,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:28:16,257.257 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 14:28:17,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:28:17,986.986 INFO    ] Checking for system updates...
[2026-06-05 14:28:18,025.025 INFO    ] 200
[2026-06-05 14:28:18,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:18,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:28:18,088.088 INFO    ] No update needed
[2026-06-05 14:28:18,090.090 INFO    ] Checking for camera pi updates...
[2026-06-05 14:28:18,128.128 INFO    ] 200
[2026-06-05 14:28:18,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:18,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:28:18,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:28:18,223.223 INFO    ] No camera update needed
[2026-06-05 14:28:18,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:28:18,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:28:18,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:28:18,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:28:20,278.278 INFO    ] ================================================
[2026-06-05 14:28:20,294.294 INFO    ] Launching Daemon at Fri Jun  5 14:28:20 IST 2026
[2026-06-05 14:28:20,305.305 INFO    ] ================================================
[2026-06-05 14:28:20,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:28:20
[2026-06-05 14:28:21,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:28:21,750.750 INFO    ] Initializing speech engine...
[2026-06-05 14:28:21,760.760 INFO    ] 2026-06-05 14:28:21
[2026-06-05 14:28:22,011.011 INFO    ] 2026-06-05 14:28:22
[2026-06-05 14:28:22,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:28:22,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:28:22,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:28:22,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:28:22,460.460 INFO    ] time= 05/06/2026 14:28:22
[2026-06-05 14:28:22,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:28:22,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:28:22,683.683 INFO    ] No existing commands found in stream
[2026-06-05 14:28:27,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:28:27,708.708 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 14:28:31,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:28:31,182.182 INFO    ] Checking for system updates...
[2026-06-05 14:28:31,219.219 INFO    ] 200
[2026-06-05 14:28:31,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:31,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:28:31,285.285 INFO    ] No update needed
[2026-06-05 14:28:31,289.289 INFO    ] Checking for camera pi updates...
[2026-06-05 14:28:31,328.328 INFO    ] 200
[2026-06-05 14:28:31,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:31,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:28:31,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:28:31,418.418 INFO    ] No camera update needed
[2026-06-05 14:28:31,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:28:31,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:28:31,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:28:31,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:28:33,479.479 INFO    ] ================================================
[2026-06-05 14:28:33,494.494 INFO    ] Launching Daemon at Fri Jun  5 14:28:33 IST 2026
[2026-06-05 14:28:33,506.506 INFO    ] ================================================
[2026-06-05 14:28:34,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:28:34
[2026-06-05 14:28:34,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:28:34,942.942 INFO    ] Initializing speech engine...
[2026-06-05 14:28:34,949.949 INFO    ] 2026-06-05 14:28:34
[2026-06-05 14:28:35,208.208 INFO    ] 2026-06-05 14:28:35
[2026-06-05 14:28:35,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:28:35,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:28:35,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:28:35,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:28:35,669.669 INFO    ] time= 05/06/2026 14:28:35
[2026-06-05 14:28:35,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:28:35,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:28:35,890.890 INFO    ] No existing commands found in stream
[2026-06-05 14:28:40,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:28:40,920.920 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 14:28:46,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:28:46,456.456 INFO    ] Checking for system updates...
[2026-06-05 14:28:46,491.491 INFO    ] 200
[2026-06-05 14:28:46,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:46,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:28:46,554.554 INFO    ] No update needed
[2026-06-05 14:28:46,557.557 INFO    ] Checking for camera pi updates...
[2026-06-05 14:28:46,595.595 INFO    ] 200
[2026-06-05 14:28:46,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:46,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:28:46,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:28:46,683.683 INFO    ] No camera update needed
[2026-06-05 14:28:46,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:28:46,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:28:46,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:28:46,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:28:48,740.740 INFO    ] ================================================
[2026-06-05 14:28:48,756.756 INFO    ] Launching Daemon at Fri Jun  5 14:28:48 IST 2026
[2026-06-05 14:28:48,767.767 INFO    ] ================================================
[2026-06-05 14:28:49,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:28:49
[2026-06-05 14:28:49,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:28:50,197.197 INFO    ] Initializing speech engine...
[2026-06-05 14:28:50,216.216 INFO    ] 2026-06-05 14:28:50
[2026-06-05 14:28:50,463.463 INFO    ] 2026-06-05 14:28:50
[2026-06-05 14:28:50,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:28:50,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:28:50,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:28:50,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:28:50,936.936 INFO    ] time= 05/06/2026 14:28:50
[2026-06-05 14:28:51,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:28:51,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:28:51,157.157 INFO    ] No existing commands found in stream
[2026-06-05 14:28:56,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:28:56,189.189 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 14:28:57,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:28:57,318.318 INFO    ] Checking for system updates...
[2026-06-05 14:28:57,356.356 INFO    ] 200
[2026-06-05 14:28:57,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:57,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:28:57,424.424 INFO    ] No update needed
[2026-06-05 14:28:57,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 14:28:57,467.467 INFO    ] 200
[2026-06-05 14:28:57,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:28:57,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:28:57,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:28:57,571.571 INFO    ] No camera update needed
[2026-06-05 14:28:57,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:28:57,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:28:57,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:28:57,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:28:59,631.631 INFO    ] ================================================
[2026-06-05 14:28:59,646.646 INFO    ] Launching Daemon at Fri Jun  5 14:28:59 IST 2026
[2026-06-05 14:28:59,658.658 INFO    ] ================================================
[2026-06-05 14:29:00,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:29:00
[2026-06-05 14:29:00,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:29:01,119.119 INFO    ] Initializing speech engine...
[2026-06-05 14:29:01,128.128 INFO    ] 2026-06-05 14:29:01
[2026-06-05 14:29:01,391.391 INFO    ] 2026-06-05 14:29:01
[2026-06-05 14:29:01,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:29:01,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:29:01,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:29:01,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:29:01,814.814 INFO    ] time= 05/06/2026 14:29:01
[2026-06-05 14:29:01,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:29:01,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:29:01,965.965 INFO    ] No existing commands found in stream
[2026-06-05 14:29:06,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:29:06,979.979 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 14:29:07,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:29:07,885.885 INFO    ] Checking for system updates...
[2026-06-05 14:29:07,931.931 INFO    ] 200
[2026-06-05 14:29:07,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:07,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:29:07,992.992 INFO    ] No update needed
[2026-06-05 14:29:07,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 14:29:08,028.028 INFO    ] 200
[2026-06-05 14:29:08,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:08,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:29:08,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:29:08,102.102 INFO    ] No camera update needed
[2026-06-05 14:29:08,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:29:08,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:29:08,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:29:08,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:29:10,160.160 INFO    ] ================================================
[2026-06-05 14:29:10,176.176 INFO    ] Launching Daemon at Fri Jun  5 14:29:10 IST 2026
[2026-06-05 14:29:10,187.187 INFO    ] ================================================
[2026-06-05 14:29:10,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:29:10
[2026-06-05 14:29:11,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:29:11,650.650 INFO    ] Initializing speech engine...
[2026-06-05 14:29:11,656.656 INFO    ] 2026-06-05 14:29:11
[2026-06-05 14:29:11,944.944 INFO    ] 2026-06-05 14:29:11
[2026-06-05 14:29:11,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:29:12,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:29:12,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:29:12,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:29:12,332.332 INFO    ] time= 05/06/2026 14:29:12
[2026-06-05 14:29:12,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:29:12,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:29:12,463.463 INFO    ] No existing commands found in stream
[2026-06-05 14:29:17,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:29:17,476.476 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 14:29:19,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:29:19,797.797 INFO    ] Checking for system updates...
[2026-06-05 14:29:19,838.838 INFO    ] 200
[2026-06-05 14:29:19,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:19,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:29:19,905.905 INFO    ] No update needed
[2026-06-05 14:29:19,907.907 INFO    ] Checking for camera pi updates...
[2026-06-05 14:29:19,945.945 INFO    ] 200
[2026-06-05 14:29:19,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:19,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:29:20,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:29:20,033.033 INFO    ] No camera update needed
[2026-06-05 14:29:20,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:29:20,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:29:20,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:29:20,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:29:22,088.088 INFO    ] ================================================
[2026-06-05 14:29:22,104.104 INFO    ] Launching Daemon at Fri Jun  5 14:29:22 IST 2026
[2026-06-05 14:29:22,116.116 INFO    ] ================================================
[2026-06-05 14:29:22,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:29:22
[2026-06-05 14:29:23,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:29:23,557.557 INFO    ] Initializing speech engine...
[2026-06-05 14:29:23,566.566 INFO    ] 2026-06-05 14:29:23
[2026-06-05 14:29:23,824.824 INFO    ] 2026-06-05 14:29:23
[2026-06-05 14:29:23,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:29:24,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:29:24,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:29:24,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:29:24,209.209 INFO    ] time= 05/06/2026 14:29:24
[2026-06-05 14:29:24,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:29:24,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:29:24,341.341 INFO    ] No existing commands found in stream
[2026-06-05 14:29:29,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:29:29,354.354 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 14:29:30,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:29:30,210.210 INFO    ] Checking for system updates...
[2026-06-05 14:29:30,246.246 INFO    ] 200
[2026-06-05 14:29:30,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:30,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:29:30,305.305 INFO    ] No update needed
[2026-06-05 14:29:30,307.307 INFO    ] Checking for camera pi updates...
[2026-06-05 14:29:30,342.342 INFO    ] 200
[2026-06-05 14:29:30,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:30,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:29:30,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:29:30,436.436 INFO    ] No camera update needed
[2026-06-05 14:29:30,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:29:30,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:29:30,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:29:30,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:29:32,493.493 INFO    ] ================================================
[2026-06-05 14:29:32,510.510 INFO    ] Launching Daemon at Fri Jun  5 14:29:32 IST 2026
[2026-06-05 14:29:32,523.523 INFO    ] ================================================
[2026-06-05 14:29:33,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:29:33
[2026-06-05 14:29:33,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:29:34,220.220 INFO    ] Initializing speech engine...
[2026-06-05 14:29:34,236.236 INFO    ] 2026-06-05 14:29:34
[2026-06-05 14:29:34,554.554 INFO    ] 2026-06-05 14:29:34
[2026-06-05 14:29:34,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:29:34,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:29:34,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:29:35,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:29:35,089.089 INFO    ] time= 05/06/2026 14:29:35
[2026-06-05 14:29:35,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:29:35,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:29:35,258.258 INFO    ] No existing commands found in stream
[2026-06-05 14:29:40,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:29:40,293.293 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 14:29:41,976.976 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:29:41,979.979 INFO    ] Checking for system updates...
[2026-06-05 14:29:42,016.016 INFO    ] 200
[2026-06-05 14:29:42,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:42,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:29:42,076.076 INFO    ] No update needed
[2026-06-05 14:29:42,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 14:29:42,114.114 INFO    ] 200
[2026-06-05 14:29:42,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:42,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:29:42,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:29:42,201.201 INFO    ] No camera update needed
[2026-06-05 14:29:42,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:29:42,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:29:42,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:29:42,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:29:44,260.260 INFO    ] ================================================
[2026-06-05 14:29:44,276.276 INFO    ] Launching Daemon at Fri Jun  5 14:29:44 IST 2026
[2026-06-05 14:29:44,287.287 INFO    ] ================================================
[2026-06-05 14:29:44,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:29:44
[2026-06-05 14:29:45,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:29:45,766.766 INFO    ] Initializing speech engine...
[2026-06-05 14:29:45,774.774 INFO    ] 2026-06-05 14:29:45
[2026-06-05 14:29:46,024.024 INFO    ] 2026-06-05 14:29:46
[2026-06-05 14:29:46,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:29:47,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:29:47,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:29:47,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:29:47,515.515 INFO    ] time= 05/06/2026 14:29:47
[2026-06-05 14:29:47,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:29:47,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:29:47,671.671 INFO    ] No existing commands found in stream
[2026-06-05 14:29:52,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:29:52,711.711 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 14:29:55,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:29:55,237.237 INFO    ] Checking for system updates...
[2026-06-05 14:29:55,275.275 INFO    ] 200
[2026-06-05 14:29:55,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:55,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:29:55,342.342 INFO    ] No update needed
[2026-06-05 14:29:55,345.345 INFO    ] Checking for camera pi updates...
[2026-06-05 14:29:55,385.385 INFO    ] 200
[2026-06-05 14:29:55,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:29:55,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:29:55,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:29:55,481.481 INFO    ] No camera update needed
[2026-06-05 14:29:55,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:29:55,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:29:55,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:29:55,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:29:57,540.540 INFO    ] ================================================
[2026-06-05 14:29:57,557.557 INFO    ] Launching Daemon at Fri Jun  5 14:29:57 IST 2026
[2026-06-05 14:29:57,569.569 INFO    ] ================================================
[2026-06-05 14:29:58,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:29:58
[2026-06-05 14:29:58,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:29:59,242.242 INFO    ] Initializing speech engine...
[2026-06-05 14:29:59,254.254 INFO    ] 2026-06-05 14:29:59
[2026-06-05 14:29:59,539.539 INFO    ] 2026-06-05 14:29:59
[2026-06-05 14:29:59,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:29:59,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:29:59,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:29:59,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:30:00,027.027 INFO    ] time= 05/06/2026 14:29:59
[2026-06-05 14:30:00,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:30:00,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:30:00,227.227 INFO    ] No existing commands found in stream
[2026-06-05 14:30:05,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:30:05,249.249 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 14:30:08,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:30:08,972.972 INFO    ] Checking for system updates...
[2026-06-05 14:30:09,012.012 INFO    ] 200
[2026-06-05 14:30:09,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:30:09,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:30:09,075.075 INFO    ] No update needed
[2026-06-05 14:30:09,078.078 INFO    ] Checking for camera pi updates...
[2026-06-05 14:30:09,111.111 INFO    ] 200
[2026-06-05 14:30:09,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:30:09,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:30:09,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:30:09,203.203 INFO    ] No camera update needed
[2026-06-05 14:30:09,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:30:09,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:30:09,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:30:09,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:30:11,260.260 INFO    ] ================================================
[2026-06-05 14:30:11,275.275 INFO    ] Launching Daemon at Fri Jun  5 14:30:11 IST 2026
[2026-06-05 14:30:11,287.287 INFO    ] ================================================
[2026-06-05 14:30:11,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:30:11
[2026-06-05 14:30:12,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:30:12,713.713 INFO    ] Initializing speech engine...
[2026-06-05 14:30:12,734.734 INFO    ] 2026-06-05 14:30:12
[2026-06-05 14:30:12,994.994 INFO    ] 2026-06-05 14:30:12
[2026-06-05 14:30:13,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:30:13,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:30:13,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:30:13,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:30:13,498.498 INFO    ] time= 05/06/2026 14:30:13
[2026-06-05 14:30:13,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:30:13,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:30:13,746.746 INFO    ] No existing commands found in stream
[2026-06-05 14:30:18,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:30:18,761.761 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 14:30:21,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:30:21,488.488 INFO    ] Checking for system updates...
[2026-06-05 14:30:21,524.524 INFO    ] 200
[2026-06-05 14:30:21,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:30:21,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:30:21,583.583 INFO    ] No update needed
[2026-06-05 14:30:21,585.585 INFO    ] Checking for camera pi updates...
[2026-06-05 14:30:21,619.619 INFO    ] 200
[2026-06-05 14:30:21,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:30:21,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:30:21,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:30:21,707.707 INFO    ] No camera update needed
[2026-06-05 14:30:21,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:30:21,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:30:21,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:30:21,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:30:23,765.765 INFO    ] ================================================
[2026-06-05 14:30:23,780.780 INFO    ] Launching Daemon at Fri Jun  5 14:30:23 IST 2026
[2026-06-05 14:30:23,791.791 INFO    ] ================================================
[2026-06-05 14:30:24,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:30:24
[2026-06-05 14:30:25,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:30:25,393.393 INFO    ] Initializing speech engine...
[2026-06-05 14:30:25,404.404 INFO    ] 2026-06-05 14:30:25
[2026-06-05 14:30:25,673.673 INFO    ] 2026-06-05 14:30:25
[2026-06-05 14:30:25,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:30:25,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:30:25,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:30:26,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:30:26,060.060 INFO    ] time= 05/06/2026 14:30:26
[2026-06-05 14:30:26,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:30:26,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:30:26,170.170 INFO    ] No existing commands found in stream
[2026-06-05 14:30:31,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:30:31,188.188 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 14:30:32,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:30:32,156.156 INFO    ] Checking for system updates...
[2026-06-05 14:30:32,209.209 INFO    ] 200
[2026-06-05 14:30:32,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 14:30:32,215.215 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 14:30:32,218.218 INFO    ] Checking for camera pi updates...
[2026-06-05 14:30:32,272.272 INFO    ] 200
[2026-06-05 14:30:32,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 14:30:32,278.278 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 14:30:32,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:30:32,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:30:32,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:30:32,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:30:34,345.345 INFO    ] ================================================
[2026-06-05 14:30:34,362.362 INFO    ] Launching Daemon at Fri Jun  5 14:30:34 IST 2026
[2026-06-05 14:30:34,373.373 INFO    ] ================================================
[2026-06-05 14:30:35,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:30:35
[2026-06-05 14:30:35,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:30:36,045.045 INFO    ] Initializing speech engine...
[2026-06-05 14:30:36,054.054 INFO    ] 2026-06-05 14:30:36
[2026-06-05 14:30:36,341.341 INFO    ] 2026-06-05 14:30:36
[2026-06-05 14:30:36,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:30:36,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:30:36,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:30:36,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:30:36,813.813 INFO    ] time= 05/06/2026 14:30:36
[2026-06-05 14:30:36,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:30:36,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:30:37,033.033 INFO    ] No existing commands found in stream
[2026-06-05 14:30:42,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:30:42,050.050 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-05 14:30:42,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:30:42,879.879 INFO    ] Checking for system updates...
[2026-06-05 14:30:42,921.921 INFO    ] 200
[2026-06-05 14:30:42,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:30:42,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:30:42,981.981 INFO    ] No update needed
[2026-06-05 14:30:42,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 14:30:43,019.019 INFO    ] 200
[2026-06-05 14:30:43,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:30:43,064.064 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:30:43,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:30:43,109.109 INFO    ] No camera update needed
[2026-06-05 14:30:43,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:30:43,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:30:43,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:30:43,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:30:45,170.170 INFO    ] ================================================
[2026-06-05 14:30:45,186.186 INFO    ] Launching Daemon at Fri Jun  5 14:30:45 IST 2026
[2026-06-05 14:30:45,197.197 INFO    ] ================================================
[2026-06-05 14:30:45,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:30:45
[2026-06-05 14:30:46,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:30:46,712.712 INFO    ] Initializing speech engine...
[2026-06-05 14:30:46,722.722 INFO    ] 2026-06-05 14:30:46
[2026-06-05 14:30:46,972.972 INFO    ] 2026-06-05 14:30:46
[2026-06-05 14:30:47,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:30:47,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:30:47,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:30:47,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:30:47,347.347 INFO    ] time= 05/06/2026 14:30:47
[2026-06-05 14:30:47,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:30:47,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:30:47,544.544 INFO    ] No existing commands found in stream
[2026-06-05 14:30:52,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:30:52,558.558 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 14:30:56,763.763 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:30:56,765.765 INFO    ] Checking for system updates...
[2026-06-05 14:30:56,802.802 INFO    ] 200
[2026-06-05 14:30:56,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:30:56,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:30:56,862.862 INFO    ] No update needed
[2026-06-05 14:30:56,864.864 INFO    ] Checking for camera pi updates...
[2026-06-05 14:30:56,899.899 INFO    ] 200
[2026-06-05 14:30:56,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:30:56,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:30:56,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:30:56,986.986 INFO    ] No camera update needed
[2026-06-05 14:30:56,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:30:56,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:30:56,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:30:57,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:30:59,046.046 INFO    ] ================================================
[2026-06-05 14:30:59,061.061 INFO    ] Launching Daemon at Fri Jun  5 14:30:59 IST 2026
[2026-06-05 14:30:59,073.073 INFO    ] ================================================
[2026-06-05 14:30:59,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:30:59
[2026-06-05 14:31:00,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:31:00,518.518 INFO    ] Initializing speech engine...
[2026-06-05 14:31:00,527.527 INFO    ] 2026-06-05 14:31:00
[2026-06-05 14:31:00,773.773 INFO    ] 2026-06-05 14:31:00
[2026-06-05 14:31:00,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:31:01,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:31:01,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:31:01,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:31:01,210.210 INFO    ] time= 05/06/2026 14:31:01
[2026-06-05 14:31:01,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:31:01,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:31:01,334.334 INFO    ] No existing commands found in stream
[2026-06-05 14:31:06,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:31:06,361.361 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 14:31:07,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:31:07,115.115 INFO    ] Checking for system updates...
[2026-06-05 14:31:07,155.155 INFO    ] 200
[2026-06-05 14:31:07,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:07,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:31:07,215.215 INFO    ] No update needed
[2026-06-05 14:31:07,218.218 INFO    ] Checking for camera pi updates...
[2026-06-05 14:31:07,255.255 INFO    ] 200
[2026-06-05 14:31:07,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:07,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:31:07,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:31:07,338.338 INFO    ] No camera update needed
[2026-06-05 14:31:07,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:31:07,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:31:07,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:31:07,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:31:09,399.399 INFO    ] ================================================
[2026-06-05 14:31:09,420.420 INFO    ] Launching Daemon at Fri Jun  5 14:31:09 IST 2026
[2026-06-05 14:31:09,432.432 INFO    ] ================================================
[2026-06-05 14:31:10,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:31:10
[2026-06-05 14:31:10,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:31:10,877.877 INFO    ] Initializing speech engine...
[2026-06-05 14:31:10,882.882 INFO    ] 2026-06-05 14:31:10
[2026-06-05 14:31:11,141.141 INFO    ] 2026-06-05 14:31:11
[2026-06-05 14:31:11,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:31:11,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:31:11,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:31:11,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:31:11,609.609 INFO    ] time= 05/06/2026 14:31:11
[2026-06-05 14:31:11,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:31:11,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:31:11,824.824 INFO    ] No existing commands found in stream
[2026-06-05 14:31:16,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:31:16,852.852 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 14:31:21,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:31:21,040.040 INFO    ] Checking for system updates...
[2026-06-05 14:31:21,081.081 INFO    ] 200
[2026-06-05 14:31:21,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:21,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:31:21,144.144 INFO    ] No update needed
[2026-06-05 14:31:21,158.158 INFO    ] Checking for camera pi updates...
[2026-06-05 14:31:21,199.199 INFO    ] 200
[2026-06-05 14:31:21,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:21,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:31:21,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:31:21,282.282 INFO    ] No camera update needed
[2026-06-05 14:31:21,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:31:21,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:31:21,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:31:21,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:31:23,345.345 INFO    ] ================================================
[2026-06-05 14:31:23,361.361 INFO    ] Launching Daemon at Fri Jun  5 14:31:23 IST 2026
[2026-06-05 14:31:23,373.373 INFO    ] ================================================
[2026-06-05 14:31:23,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:31:23
[2026-06-05 14:31:24,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:31:24,851.851 INFO    ] Initializing speech engine...
[2026-06-05 14:31:24,858.858 INFO    ] 2026-06-05 14:31:24
[2026-06-05 14:31:25,117.117 INFO    ] 2026-06-05 14:31:25
[2026-06-05 14:31:25,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:31:25,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:31:25,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:31:25,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:31:25,573.573 INFO    ] time= 05/06/2026 14:31:25
[2026-06-05 14:31:25,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:31:25,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:31:25,811.811 INFO    ] No existing commands found in stream
[2026-06-05 14:31:30,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:31:30,826.826 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 14:31:34,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:31:34,707.707 INFO    ] Checking for system updates...
[2026-06-05 14:31:34,747.747 INFO    ] 200
[2026-06-05 14:31:34,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:34,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:31:34,806.806 INFO    ] No update needed
[2026-06-05 14:31:34,808.808 INFO    ] Checking for camera pi updates...
[2026-06-05 14:31:34,847.847 INFO    ] 200
[2026-06-05 14:31:34,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:34,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:31:35,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:31:35,042.042 INFO    ] No camera update needed
[2026-06-05 14:31:35,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:31:35,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:31:35,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:31:35,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:31:37,100.100 INFO    ] ================================================
[2026-06-05 14:31:37,116.116 INFO    ] Launching Daemon at Fri Jun  5 14:31:37 IST 2026
[2026-06-05 14:31:37,127.127 INFO    ] ================================================
[2026-06-05 14:31:37,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:31:37
[2026-06-05 14:31:38,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:31:38,538.538 INFO    ] Initializing speech engine...
[2026-06-05 14:31:38,544.544 INFO    ] 2026-06-05 14:31:38
[2026-06-05 14:31:38,850.850 INFO    ] 2026-06-05 14:31:38
[2026-06-05 14:31:38,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:31:39,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:31:39,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:31:39,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:31:39,272.272 INFO    ] time= 05/06/2026 14:31:39
[2026-06-05 14:31:39,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:31:39,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:31:39,365.365 INFO    ] No existing commands found in stream
[2026-06-05 14:31:44,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:31:44,404.404 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 14:31:47,805.805 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:31:47,808.808 INFO    ] Checking for system updates...
[2026-06-05 14:31:47,851.851 INFO    ] 200
[2026-06-05 14:31:47,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:47,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:31:47,910.910 INFO    ] No update needed
[2026-06-05 14:31:47,912.912 INFO    ] Checking for camera pi updates...
[2026-06-05 14:31:47,948.948 INFO    ] 200
[2026-06-05 14:31:47,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:47,992.992 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:31:48,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:31:48,037.037 INFO    ] No camera update needed
[2026-06-05 14:31:48,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:31:48,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:31:48,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:31:48,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:31:50,096.096 INFO    ] ================================================
[2026-06-05 14:31:50,111.111 INFO    ] Launching Daemon at Fri Jun  5 14:31:50 IST 2026
[2026-06-05 14:31:50,122.122 INFO    ] ================================================
[2026-06-05 14:31:50,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:31:50
[2026-06-05 14:31:51,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:31:51,530.530 INFO    ] Initializing speech engine...
[2026-06-05 14:31:51,549.549 INFO    ] 2026-06-05 14:31:51
[2026-06-05 14:31:51,795.795 INFO    ] 2026-06-05 14:31:51
[2026-06-05 14:31:51,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:31:52,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:31:52,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:31:52,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:31:52,160.160 INFO    ] time= 05/06/2026 14:31:52
[2026-06-05 14:31:52,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:31:52,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:31:52,241.241 INFO    ] No existing commands found in stream
[2026-06-05 14:31:57,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:31:57,279.279 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 14:31:58,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:31:58,267.267 INFO    ] Checking for system updates...
[2026-06-05 14:31:58,305.305 INFO    ] 200
[2026-06-05 14:31:58,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:58,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:31:58,362.362 INFO    ] No update needed
[2026-06-05 14:31:58,365.365 INFO    ] Checking for camera pi updates...
[2026-06-05 14:31:58,399.399 INFO    ] 200
[2026-06-05 14:31:58,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:31:58,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:31:58,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:31:58,486.486 INFO    ] No camera update needed
[2026-06-05 14:31:58,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:31:58,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:31:58,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:31:58,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:32:00,545.545 INFO    ] ================================================
[2026-06-05 14:32:00,561.561 INFO    ] Launching Daemon at Fri Jun  5 14:32:00 IST 2026
[2026-06-05 14:32:00,573.573 INFO    ] ================================================
[2026-06-05 14:32:01,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:32:01
[2026-06-05 14:32:01,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:32:01,993.993 INFO    ] Initializing speech engine...
[2026-06-05 14:32:02,035.035 INFO    ] 2026-06-05 14:32:02
[2026-06-05 14:32:02,473.473 INFO    ] 2026-06-05 14:32:02
[2026-06-05 14:32:02,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:32:02,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:32:02,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:32:02,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:32:03,035.035 INFO    ] time= 05/06/2026 14:32:02
[2026-06-05 14:32:03,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:32:03,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:32:03,249.249 INFO    ] No existing commands found in stream
[2026-06-05 14:32:08,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:32:08,282.282 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 14:32:09,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:32:09,676.676 INFO    ] Checking for system updates...
[2026-06-05 14:32:09,712.712 INFO    ] 200
[2026-06-05 14:32:09,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:32:09,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:32:09,775.775 INFO    ] No update needed
[2026-06-05 14:32:09,777.777 INFO    ] Checking for camera pi updates...
[2026-06-05 14:32:09,812.812 INFO    ] 200
[2026-06-05 14:32:09,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:32:09,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:32:09,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:32:09,900.900 INFO    ] No camera update needed
[2026-06-05 14:32:09,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:32:09,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:32:09,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:32:09,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:32:11,963.963 INFO    ] ================================================
[2026-06-05 14:32:11,979.979 INFO    ] Launching Daemon at Fri Jun  5 14:32:11 IST 2026
[2026-06-05 14:32:11,989.989 INFO    ] ================================================
[2026-06-05 14:32:12,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:32:12
[2026-06-05 14:32:13,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:32:13,419.419 INFO    ] Initializing speech engine...
[2026-06-05 14:32:13,432.432 INFO    ] 2026-06-05 14:32:13
[2026-06-05 14:32:13,696.696 INFO    ] 2026-06-05 14:32:13
[2026-06-05 14:32:13,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:32:13,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:32:13,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:32:16,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:32:16,133.133 INFO    ] time= 05/06/2026 14:32:16
[2026-06-05 14:32:16,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:32:16,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:32:16,234.234 INFO    ] No existing commands found in stream
[2026-06-05 14:32:21,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:32:21,247.247 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 14:32:22,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:32:22,604.604 INFO    ] Checking for system updates...
[2026-06-05 14:32:22,642.642 INFO    ] 200
[2026-06-05 14:32:22,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:32:22,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:32:22,701.701 INFO    ] No update needed
[2026-06-05 14:32:22,703.703 INFO    ] Checking for camera pi updates...
[2026-06-05 14:32:22,738.738 INFO    ] 200
[2026-06-05 14:32:22,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:32:22,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:32:22,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:32:22,828.828 INFO    ] No camera update needed
[2026-06-05 14:32:22,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:32:22,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:32:22,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:32:22,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:32:24,882.882 INFO    ] ================================================
[2026-06-05 14:32:24,898.898 INFO    ] Launching Daemon at Fri Jun  5 14:32:24 IST 2026
[2026-06-05 14:32:24,908.908 INFO    ] ================================================
[2026-06-05 14:32:25,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:32:25
[2026-06-05 14:32:26,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:32:26,475.475 INFO    ] Initializing speech engine...
[2026-06-05 14:32:26,484.484 INFO    ] 2026-06-05 14:32:26
[2026-06-05 14:32:26,751.751 INFO    ] 2026-06-05 14:32:26
[2026-06-05 14:32:26,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:32:42,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:32:42,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:32:47,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:32:47,157.157 INFO    ] time= 05/06/2026 14:32:47
[2026-06-05 14:32:47,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:32:47,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:32:47,221.221 INFO    ] No existing commands found in stream
[2026-06-05 14:32:52,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:32:52,234.234 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 14:32:56,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:32:56,476.476 INFO    ] Checking for system updates...
[2026-06-05 14:32:56,516.516 INFO    ] 200
[2026-06-05 14:32:56,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:32:56,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:32:56,575.575 INFO    ] No update needed
[2026-06-05 14:32:56,578.578 INFO    ] Checking for camera pi updates...
[2026-06-05 14:32:56,612.612 INFO    ] 200
[2026-06-05 14:32:56,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:32:56,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:32:56,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:32:56,722.722 INFO    ] No camera update needed
[2026-06-05 14:32:56,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:32:56,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:32:56,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:32:56,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:32:58,781.781 INFO    ] ================================================
[2026-06-05 14:32:58,799.799 INFO    ] Launching Daemon at Fri Jun  5 14:32:58 IST 2026
[2026-06-05 14:32:58,810.810 INFO    ] ================================================
[2026-06-05 14:32:59,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:32:59
[2026-06-05 14:32:59,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:33:00,212.212 INFO    ] Initializing speech engine...
[2026-06-05 14:33:00,221.221 INFO    ] 2026-06-05 14:33:00
[2026-06-05 14:33:00,505.505 INFO    ] 2026-06-05 14:33:00
[2026-06-05 14:33:00,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:33:01,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:33:01,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:33:01,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:33:01,577.577 INFO    ] time= 05/06/2026 14:33:01
[2026-06-05 14:33:01,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:33:01,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:33:01,705.705 INFO    ] No existing commands found in stream
[2026-06-05 14:33:06,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:33:06,730.730 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 14:33:07,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:33:07,437.437 INFO    ] Checking for system updates...
[2026-06-05 14:33:07,476.476 INFO    ] 200
[2026-06-05 14:33:07,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:07,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:33:07,534.534 INFO    ] No update needed
[2026-06-05 14:33:07,537.537 INFO    ] Checking for camera pi updates...
[2026-06-05 14:33:07,571.571 INFO    ] 200
[2026-06-05 14:33:07,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:07,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:33:07,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:33:07,654.654 INFO    ] No camera update needed
[2026-06-05 14:33:07,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:33:07,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:33:07,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:33:07,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:33:09,711.711 INFO    ] ================================================
[2026-06-05 14:33:09,726.726 INFO    ] Launching Daemon at Fri Jun  5 14:33:09 IST 2026
[2026-06-05 14:33:09,737.737 INFO    ] ================================================
[2026-06-05 14:33:10,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:33:10
[2026-06-05 14:33:11,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:33:11,315.315 INFO    ] Initializing speech engine...
[2026-06-05 14:33:11,324.324 INFO    ] 2026-06-05 14:33:11
[2026-06-05 14:33:11,604.604 INFO    ] 2026-06-05 14:33:11
[2026-06-05 14:33:11,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:33:11,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:33:11,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:33:12,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:33:12,054.054 INFO    ] time= 05/06/2026 14:33:12
[2026-06-05 14:33:12,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:33:12,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:33:12,296.296 INFO    ] No existing commands found in stream
[2026-06-05 14:33:17,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:33:17,311.311 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 14:33:21,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:33:21,270.270 INFO    ] Checking for system updates...
[2026-06-05 14:33:21,308.308 INFO    ] 200
[2026-06-05 14:33:21,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:21,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:33:21,368.368 INFO    ] No update needed
[2026-06-05 14:33:21,370.370 INFO    ] Checking for camera pi updates...
[2026-06-05 14:33:21,405.405 INFO    ] 200
[2026-06-05 14:33:21,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:21,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:33:21,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:33:21,499.499 INFO    ] No camera update needed
[2026-06-05 14:33:21,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:33:21,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:33:21,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:33:21,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:33:23,555.555 INFO    ] ================================================
[2026-06-05 14:33:23,571.571 INFO    ] Launching Daemon at Fri Jun  5 14:33:23 IST 2026
[2026-06-05 14:33:23,582.582 INFO    ] ================================================
[2026-06-05 14:33:24,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:33:24
[2026-06-05 14:33:24,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:33:24,991.991 INFO    ] Initializing speech engine...
[2026-06-05 14:33:25,007.007 INFO    ] 2026-06-05 14:33:24
[2026-06-05 14:33:25,284.284 INFO    ] 2026-06-05 14:33:25
[2026-06-05 14:33:25,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:33:25,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:33:25,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:33:25,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:33:25,687.687 INFO    ] time= 05/06/2026 14:33:25
[2026-06-05 14:33:25,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:33:25,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:33:25,858.858 INFO    ] No existing commands found in stream
[2026-06-05 14:33:30,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:33:30,886.886 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 14:33:34,935.935 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:33:34,937.937 INFO    ] Checking for system updates...
[2026-06-05 14:33:34,973.973 INFO    ] 200
[2026-06-05 14:33:34,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:35,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:33:35,030.030 INFO    ] No update needed
[2026-06-05 14:33:35,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 14:33:35,066.066 INFO    ] 200
[2026-06-05 14:33:35,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:35,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:33:35,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:33:35,159.159 INFO    ] No camera update needed
[2026-06-05 14:33:35,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:33:35,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:33:35,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:33:35,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:33:37,213.213 INFO    ] ================================================
[2026-06-05 14:33:37,229.229 INFO    ] Launching Daemon at Fri Jun  5 14:33:37 IST 2026
[2026-06-05 14:33:37,240.240 INFO    ] ================================================
[2026-06-05 14:33:37,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:33:37
[2026-06-05 14:33:38,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:33:38,654.654 INFO    ] Initializing speech engine...
[2026-06-05 14:33:38,663.663 INFO    ] 2026-06-05 14:33:38
[2026-06-05 14:33:38,956.956 INFO    ] 2026-06-05 14:33:38
[2026-06-05 14:33:38,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:33:39,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:33:39,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:33:39,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:33:39,325.325 INFO    ] time= 05/06/2026 14:33:39
[2026-06-05 14:33:39,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:33:39,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:33:39,445.445 INFO    ] No existing commands found in stream
[2026-06-05 14:33:44,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:33:44,461.461 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 14:33:46,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:33:46,635.635 INFO    ] Checking for system updates...
[2026-06-05 14:33:46,671.671 INFO    ] 200
[2026-06-05 14:33:46,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:46,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:33:46,734.734 INFO    ] No update needed
[2026-06-05 14:33:46,737.737 INFO    ] Checking for camera pi updates...
[2026-06-05 14:33:46,772.772 INFO    ] 200
[2026-06-05 14:33:46,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:46,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:33:46,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:33:46,969.969 INFO    ] No camera update needed
[2026-06-05 14:33:46,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:33:46,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:33:46,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:33:46,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:33:49,024.024 INFO    ] ================================================
[2026-06-05 14:33:49,039.039 INFO    ] Launching Daemon at Fri Jun  5 14:33:49 IST 2026
[2026-06-05 14:33:49,051.051 INFO    ] ================================================
[2026-06-05 14:33:49,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:33:49
[2026-06-05 14:33:50,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:33:50,474.474 INFO    ] Initializing speech engine...
[2026-06-05 14:33:50,483.483 INFO    ] 2026-06-05 14:33:50
[2026-06-05 14:33:50,729.729 INFO    ] 2026-06-05 14:33:50
[2026-06-05 14:33:50,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:33:50,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:33:50,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:33:51,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:33:51,097.097 INFO    ] time= 05/06/2026 14:33:51
[2026-06-05 14:33:51,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:33:51,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:33:51,278.278 INFO    ] No existing commands found in stream
[2026-06-05 14:33:56,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:33:56,300.300 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 14:33:57,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:33:57,824.824 INFO    ] Checking for system updates...
[2026-06-05 14:33:57,859.859 INFO    ] 200
[2026-06-05 14:33:57,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:57,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:33:57,918.918 INFO    ] No update needed
[2026-06-05 14:33:57,920.920 INFO    ] Checking for camera pi updates...
[2026-06-05 14:33:57,954.954 INFO    ] 200
[2026-06-05 14:33:57,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:33:57,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:33:58,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:33:58,050.050 INFO    ] No camera update needed
[2026-06-05 14:33:58,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:33:58,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:33:58,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:33:58,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:34:00,106.106 INFO    ] ================================================
[2026-06-05 14:34:00,122.122 INFO    ] Launching Daemon at Fri Jun  5 14:34:00 IST 2026
[2026-06-05 14:34:00,133.133 INFO    ] ================================================
[2026-06-05 14:34:00,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:34:00
[2026-06-05 14:34:01,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:34:01,539.539 INFO    ] Initializing speech engine...
[2026-06-05 14:34:01,559.559 INFO    ] 2026-06-05 14:34:01
[2026-06-05 14:34:01,831.831 INFO    ] 2026-06-05 14:34:01
[2026-06-05 14:34:01,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:34:02,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:34:02,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:34:02,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:34:02,214.214 INFO    ] time= 05/06/2026 14:34:02
[2026-06-05 14:34:02,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:34:02,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:34:02,331.331 INFO    ] No existing commands found in stream
[2026-06-05 14:34:07,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:34:07,351.351 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 14:34:10,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:34:10,514.514 INFO    ] Checking for system updates...
[2026-06-05 14:34:10,551.551 INFO    ] 200
[2026-06-05 14:34:10,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:34:10,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:34:10,610.610 INFO    ] No update needed
[2026-06-05 14:34:10,613.613 INFO    ] Checking for camera pi updates...
[2026-06-05 14:34:10,650.650 INFO    ] 200
[2026-06-05 14:34:10,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:34:10,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:34:10,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:34:10,742.742 INFO    ] No camera update needed
[2026-06-05 14:34:10,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:34:10,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:34:10,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:34:10,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:34:12,799.799 INFO    ] ================================================
[2026-06-05 14:34:12,815.815 INFO    ] Launching Daemon at Fri Jun  5 14:34:12 IST 2026
[2026-06-05 14:34:12,826.826 INFO    ] ================================================
[2026-06-05 14:34:13,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:34:13
[2026-06-05 14:34:14,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:34:14,387.387 INFO    ] Initializing speech engine...
[2026-06-05 14:34:14,395.395 INFO    ] 2026-06-05 14:34:14
[2026-06-05 14:34:14,662.662 INFO    ] 2026-06-05 14:34:14
[2026-06-05 14:34:14,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:34:16,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:34:16,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:34:16,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:34:16,663.663 INFO    ] time= 05/06/2026 14:34:16
[2026-06-05 14:34:16,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:34:16,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:34:16,771.771 INFO    ] No existing commands found in stream
[2026-06-05 14:34:21,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:34:21,785.785 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 14:34:25,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:34:25,724.724 INFO    ] Checking for system updates...
[2026-06-05 14:34:25,764.764 INFO    ] 200
[2026-06-05 14:34:25,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:34:25,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:34:25,831.831 INFO    ] No update needed
[2026-06-05 14:34:25,834.834 INFO    ] Checking for camera pi updates...
[2026-06-05 14:34:25,868.868 INFO    ] 200
[2026-06-05 14:34:25,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:34:25,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:34:25,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:34:25,969.969 INFO    ] No camera update needed
[2026-06-05 14:34:25,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:34:25,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:34:25,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:34:25,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:34:28,027.027 INFO    ] ================================================
[2026-06-05 14:34:28,043.043 INFO    ] Launching Daemon at Fri Jun  5 14:34:28 IST 2026
[2026-06-05 14:34:28,054.054 INFO    ] ================================================
[2026-06-05 14:34:28,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:34:28
[2026-06-05 14:34:29,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:34:29,673.673 INFO    ] Initializing speech engine...
[2026-06-05 14:34:29,682.682 INFO    ] 2026-06-05 14:34:29
[2026-06-05 14:34:29,964.964 INFO    ] 2026-06-05 14:34:29
[2026-06-05 14:34:30,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:34:30,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:34:30,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:34:30,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:34:30,501.501 INFO    ] time= 05/06/2026 14:34:30
[2026-06-05 14:34:30,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:34:30,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:34:30,655.655 INFO    ] No existing commands found in stream
[2026-06-05 14:34:35,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:34:35,676.676 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 14:34:36,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:34:36,273.273 INFO    ] Checking for system updates...
[2026-06-05 14:34:36,312.312 INFO    ] 200
[2026-06-05 14:34:36,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:34:36,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:34:36,370.370 INFO    ] No update needed
[2026-06-05 14:34:36,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 14:34:36,406.406 INFO    ] 200
[2026-06-05 14:34:36,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:34:36,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:34:36,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:34:36,500.500 INFO    ] No camera update needed
[2026-06-05 14:34:36,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:34:36,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:34:36,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:34:36,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:34:38,556.556 INFO    ] ================================================
[2026-06-05 14:34:38,571.571 INFO    ] Launching Daemon at Fri Jun  5 14:34:38 IST 2026
[2026-06-05 14:34:38,583.583 INFO    ] ================================================
[2026-06-05 14:34:39,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:34:39
[2026-06-05 14:34:39,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:34:40,098.098 INFO    ] Initializing speech engine...
[2026-06-05 14:34:40,105.105 INFO    ] 2026-06-05 14:34:40
[2026-06-05 14:34:40,369.369 INFO    ] 2026-06-05 14:34:40
[2026-06-05 14:34:40,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:34:40,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:34:40,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:34:40,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:34:40,847.847 INFO    ] time= 05/06/2026 14:34:40
[2026-06-05 14:34:40,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:34:40,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:34:41,067.067 INFO    ] No existing commands found in stream
[2026-06-05 14:34:46,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:34:46,087.087 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 14:34:49,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:34:49,856.856 INFO    ] Checking for system updates...
[2026-06-05 14:34:49,894.894 INFO    ] 200
[2026-06-05 14:34:49,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:34:49,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:34:49,951.951 INFO    ] No update needed
[2026-06-05 14:34:49,954.954 INFO    ] Checking for camera pi updates...
[2026-06-05 14:34:49,988.988 INFO    ] 200
[2026-06-05 14:34:49,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:34:50,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:34:50,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:34:50,078.078 INFO    ] No camera update needed
[2026-06-05 14:34:50,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:34:50,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:34:50,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:34:50,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:34:52,135.135 INFO    ] ================================================
[2026-06-05 14:34:52,150.150 INFO    ] Launching Daemon at Fri Jun  5 14:34:52 IST 2026
[2026-06-05 14:34:52,161.161 INFO    ] ================================================
[2026-06-05 14:34:52,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:34:52
[2026-06-05 14:34:53,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:34:53,679.679 INFO    ] Initializing speech engine...
[2026-06-05 14:34:53,687.687 INFO    ] 2026-06-05 14:34:53
[2026-06-05 14:34:53,960.960 INFO    ] 2026-06-05 14:34:53
[2026-06-05 14:34:54,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:34:54,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:34:54,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:34:54,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:34:54,416.416 INFO    ] time= 05/06/2026 14:34:54
[2026-06-05 14:34:54,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:34:54,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:34:54,495.495 INFO    ] No existing commands found in stream
[2026-06-05 14:34:59,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:34:59,509.509 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 14:35:00,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:35:00,608.608 INFO    ] Checking for system updates...
[2026-06-05 14:35:00,646.646 INFO    ] 200
[2026-06-05 14:35:00,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:00,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:35:00,712.712 INFO    ] No update needed
[2026-06-05 14:35:00,716.716 INFO    ] Checking for camera pi updates...
[2026-06-05 14:35:00,750.750 INFO    ] 200
[2026-06-05 14:35:00,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:00,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:35:00,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:35:00,846.846 INFO    ] No camera update needed
[2026-06-05 14:35:00,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:35:00,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:35:00,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:35:00,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:35:02,921.921 INFO    ] ================================================
[2026-06-05 14:35:02,939.939 INFO    ] Launching Daemon at Fri Jun  5 14:35:02 IST 2026
[2026-06-05 14:35:02,957.957 INFO    ] ================================================
[2026-06-05 14:35:03,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:35:03
[2026-06-05 14:35:04,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:35:04,449.449 INFO    ] Initializing speech engine...
[2026-06-05 14:35:04,467.467 INFO    ] 2026-06-05 14:35:04
[2026-06-05 14:35:04,754.754 INFO    ] 2026-06-05 14:35:04
[2026-06-05 14:35:04,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:35:05,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:35:05,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:35:05,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:35:05,300.300 INFO    ] time= 05/06/2026 14:35:05
[2026-06-05 14:35:05,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:35:05,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:35:05,461.461 INFO    ] No existing commands found in stream
[2026-06-05 14:35:10,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:35:10,490.490 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 14:35:13,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:35:13,376.376 INFO    ] Checking for system updates...
[2026-06-05 14:35:13,419.419 INFO    ] 200
[2026-06-05 14:35:13,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:13,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:35:13,484.484 INFO    ] No update needed
[2026-06-05 14:35:13,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 14:35:13,521.521 INFO    ] 200
[2026-06-05 14:35:13,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:13,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:35:13,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:35:13,621.621 INFO    ] No camera update needed
[2026-06-05 14:35:13,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:35:13,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:35:13,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:35:13,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:35:15,681.681 INFO    ] ================================================
[2026-06-05 14:35:15,697.697 INFO    ] Launching Daemon at Fri Jun  5 14:35:15 IST 2026
[2026-06-05 14:35:15,707.707 INFO    ] ================================================
[2026-06-05 14:35:16,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:35:16
[2026-06-05 14:35:16,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:35:17,135.135 INFO    ] Initializing speech engine...
[2026-06-05 14:35:17,158.158 INFO    ] 2026-06-05 14:35:17
[2026-06-05 14:35:17,409.409 INFO    ] 2026-06-05 14:35:17
[2026-06-05 14:35:17,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:35:18,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:35:18,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:35:19,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:35:19,105.105 INFO    ] time= 05/06/2026 14:35:19
[2026-06-05 14:35:19,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:35:19,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:35:19,264.264 INFO    ] No existing commands found in stream
[2026-06-05 14:35:24,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:35:24,297.297 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 14:35:26,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:35:26,248.248 INFO    ] Checking for system updates...
[2026-06-05 14:35:26,284.284 INFO    ] 200
[2026-06-05 14:35:26,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:26,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:35:26,342.342 INFO    ] No update needed
[2026-06-05 14:35:26,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 14:35:26,383.383 INFO    ] 200
[2026-06-05 14:35:26,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:26,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:35:26,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:35:26,482.482 INFO    ] No camera update needed
[2026-06-05 14:35:26,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:35:26,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:35:26,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:35:26,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:35:28,538.538 INFO    ] ================================================
[2026-06-05 14:35:28,553.553 INFO    ] Launching Daemon at Fri Jun  5 14:35:28 IST 2026
[2026-06-05 14:35:28,564.564 INFO    ] ================================================
[2026-06-05 14:35:29,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:35:29
[2026-06-05 14:35:29,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:35:30,015.015 INFO    ] Initializing speech engine...
[2026-06-05 14:35:30,025.025 INFO    ] 2026-06-05 14:35:30
[2026-06-05 14:35:30,287.287 INFO    ] 2026-06-05 14:35:30
[2026-06-05 14:35:30,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:35:31,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:35:31,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:35:31,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:35:31,258.258 INFO    ] time= 05/06/2026 14:35:31
[2026-06-05 14:35:31,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:35:31,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:35:31,386.386 INFO    ] No existing commands found in stream
[2026-06-05 14:35:36,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:35:36,402.402 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 14:35:38,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:35:38,818.818 INFO    ] Checking for system updates...
[2026-06-05 14:35:38,855.855 INFO    ] 200
[2026-06-05 14:35:38,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:38,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:35:38,918.918 INFO    ] No update needed
[2026-06-05 14:35:38,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 14:35:38,954.954 INFO    ] 200
[2026-06-05 14:35:38,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:38,998.998 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:35:39,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:35:39,046.046 INFO    ] No camera update needed
[2026-06-05 14:35:39,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:35:39,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:35:39,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:35:39,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:35:41,100.100 INFO    ] ================================================
[2026-06-05 14:35:41,116.116 INFO    ] Launching Daemon at Fri Jun  5 14:35:41 IST 2026
[2026-06-05 14:35:41,126.126 INFO    ] ================================================
[2026-06-05 14:35:41,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:35:41
[2026-06-05 14:35:42,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:35:42,618.618 INFO    ] Initializing speech engine...
[2026-06-05 14:35:42,626.626 INFO    ] 2026-06-05 14:35:42
[2026-06-05 14:35:42,880.880 INFO    ] 2026-06-05 14:35:42
[2026-06-05 14:35:42,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:35:43,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:35:43,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:35:43,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:35:43,367.367 INFO    ] time= 05/06/2026 14:35:43
[2026-06-05 14:35:43,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:35:43,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:35:43,587.587 INFO    ] No existing commands found in stream
[2026-06-05 14:35:48,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:35:48,618.618 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 14:35:49,347.347 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:35:49,349.349 INFO    ] Checking for system updates...
[2026-06-05 14:35:49,386.386 INFO    ] 200
[2026-06-05 14:35:49,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:49,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:35:49,450.450 INFO    ] No update needed
[2026-06-05 14:35:49,452.452 INFO    ] Checking for camera pi updates...
[2026-06-05 14:35:49,486.486 INFO    ] 200
[2026-06-05 14:35:49,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:35:49,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:35:49,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:35:49,675.675 INFO    ] No camera update needed
[2026-06-05 14:35:49,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:35:49,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:35:49,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:35:49,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:35:51,732.732 INFO    ] ================================================
[2026-06-05 14:35:51,747.747 INFO    ] Launching Daemon at Fri Jun  5 14:35:51 IST 2026
[2026-06-05 14:35:51,759.759 INFO    ] ================================================
[2026-06-05 14:35:52,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:35:52
[2026-06-05 14:35:52,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:35:53,174.174 INFO    ] Initializing speech engine...
[2026-06-05 14:35:53,183.183 INFO    ] 2026-06-05 14:35:53
[2026-06-05 14:35:53,430.430 INFO    ] 2026-06-05 14:35:53
[2026-06-05 14:35:53,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:35:53,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:35:53,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:35:53,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:35:53,929.929 INFO    ] time= 05/06/2026 14:35:53
[2026-06-05 14:35:53,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:35:53,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:35:54,106.106 INFO    ] No existing commands found in stream
[2026-06-05 14:35:59,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:35:59,140.140 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 14:36:01,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:36:01,785.785 INFO    ] Checking for system updates...
[2026-06-05 14:36:01,821.821 INFO    ] 200
[2026-06-05 14:36:01,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:01,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:36:01,881.881 INFO    ] No update needed
[2026-06-05 14:36:01,883.883 INFO    ] Checking for camera pi updates...
[2026-06-05 14:36:01,938.938 INFO    ] 200
[2026-06-05 14:36:01,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:02,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:36:02,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:36:02,093.093 INFO    ] No camera update needed
[2026-06-05 14:36:02,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:36:02,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:36:02,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:36:02,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:36:04,170.170 INFO    ] ================================================
[2026-06-05 14:36:04,188.188 INFO    ] Launching Daemon at Fri Jun  5 14:36:04 IST 2026
[2026-06-05 14:36:04,201.201 INFO    ] ================================================
[2026-06-05 14:36:04,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:36:04
[2026-06-05 14:36:05,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:36:05,681.681 INFO    ] Initializing speech engine...
[2026-06-05 14:36:05,690.690 INFO    ] 2026-06-05 14:36:05
[2026-06-05 14:36:05,950.950 INFO    ] 2026-06-05 14:36:05
[2026-06-05 14:36:05,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:36:06,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:36:06,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:36:06,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:36:06,427.427 INFO    ] time= 05/06/2026 14:36:06
[2026-06-05 14:36:06,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:36:06,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:36:06,597.597 INFO    ] No existing commands found in stream
[2026-06-05 14:36:11,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:36:11,611.611 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 14:36:13,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:36:13,931.931 INFO    ] Checking for system updates...
[2026-06-05 14:36:13,970.970 INFO    ] 200
[2026-06-05 14:36:13,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:14,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:36:14,037.037 INFO    ] No update needed
[2026-06-05 14:36:14,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 14:36:14,075.075 INFO    ] 200
[2026-06-05 14:36:14,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:14,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:36:14,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:36:14,173.173 INFO    ] No camera update needed
[2026-06-05 14:36:14,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:36:14,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:36:14,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:36:14,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:36:16,232.232 INFO    ] ================================================
[2026-06-05 14:36:16,247.247 INFO    ] Launching Daemon at Fri Jun  5 14:36:16 IST 2026
[2026-06-05 14:36:16,259.259 INFO    ] ================================================
[2026-06-05 14:36:16,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:36:16
[2026-06-05 14:36:17,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:36:17,760.760 INFO    ] Initializing speech engine...
[2026-06-05 14:36:17,773.773 INFO    ] 2026-06-05 14:36:17
[2026-06-05 14:36:18,041.041 INFO    ] 2026-06-05 14:36:18
[2026-06-05 14:36:18,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:36:19,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:36:19,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:36:19,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:36:19,352.352 INFO    ] time= 05/06/2026 14:36:19
[2026-06-05 14:36:19,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:36:19,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:36:19,434.434 INFO    ] No existing commands found in stream
[2026-06-05 14:36:24,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:36:24,448.448 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 14:36:28,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:36:28,305.305 INFO    ] Checking for system updates...
[2026-06-05 14:36:28,342.342 INFO    ] 200
[2026-06-05 14:36:28,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:28,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:36:28,401.401 INFO    ] No update needed
[2026-06-05 14:36:28,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 14:36:28,439.439 INFO    ] 200
[2026-06-05 14:36:28,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:28,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:36:28,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:36:28,536.536 INFO    ] No camera update needed
[2026-06-05 14:36:28,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:36:28,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:36:28,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:36:28,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:36:30,593.593 INFO    ] ================================================
[2026-06-05 14:36:30,609.609 INFO    ] Launching Daemon at Fri Jun  5 14:36:30 IST 2026
[2026-06-05 14:36:30,621.621 INFO    ] ================================================
[2026-06-05 14:36:31,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:36:31
[2026-06-05 14:36:31,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:36:32,161.161 INFO    ] Initializing speech engine...
[2026-06-05 14:36:32,171.171 INFO    ] 2026-06-05 14:36:32
[2026-06-05 14:36:32,445.445 INFO    ] 2026-06-05 14:36:32
[2026-06-05 14:36:32,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:36:32,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:36:32,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:36:32,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:36:32,913.913 INFO    ] time= 05/06/2026 14:36:32
[2026-06-05 14:36:32,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:36:32,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:36:33,112.112 INFO    ] No existing commands found in stream
[2026-06-05 14:36:38,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:36:38,152.152 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 14:36:40,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:36:40,447.447 INFO    ] Checking for system updates...
[2026-06-05 14:36:40,490.490 INFO    ] 200
[2026-06-05 14:36:40,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:40,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:36:40,558.558 INFO    ] No update needed
[2026-06-05 14:36:40,560.560 INFO    ] Checking for camera pi updates...
[2026-06-05 14:36:40,595.595 INFO    ] 200
[2026-06-05 14:36:40,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:40,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:36:40,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:36:40,698.698 INFO    ] No camera update needed
[2026-06-05 14:36:40,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:36:40,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:36:40,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:36:40,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:36:42,755.755 INFO    ] ================================================
[2026-06-05 14:36:42,771.771 INFO    ] Launching Daemon at Fri Jun  5 14:36:42 IST 2026
[2026-06-05 14:36:42,782.782 INFO    ] ================================================
[2026-06-05 14:36:43,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:36:43
[2026-06-05 14:36:43,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:36:44,233.233 INFO    ] Initializing speech engine...
[2026-06-05 14:36:44,240.240 INFO    ] 2026-06-05 14:36:44
[2026-06-05 14:36:44,543.543 INFO    ] 2026-06-05 14:36:44
[2026-06-05 14:36:44,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:36:44,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:36:44,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:36:44,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:36:44,974.974 INFO    ] time= 05/06/2026 14:36:44
[2026-06-05 14:36:44,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:36:44,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:36:45,068.068 INFO    ] No existing commands found in stream
[2026-06-05 14:36:50,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:36:50,089.089 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 14:36:51,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:36:51,365.365 INFO    ] Checking for system updates...
[2026-06-05 14:36:51,402.402 INFO    ] 200
[2026-06-05 14:36:51,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:51,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:36:51,460.460 INFO    ] No update needed
[2026-06-05 14:36:51,462.462 INFO    ] Checking for camera pi updates...
[2026-06-05 14:36:51,501.501 INFO    ] 200
[2026-06-05 14:36:51,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:36:51,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:36:51,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:36:51,595.595 INFO    ] No camera update needed
[2026-06-05 14:36:51,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:36:51,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:36:51,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:36:51,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:36:53,653.653 INFO    ] ================================================
[2026-06-05 14:36:53,669.669 INFO    ] Launching Daemon at Fri Jun  5 14:36:53 IST 2026
[2026-06-05 14:36:53,680.680 INFO    ] ================================================
[2026-06-05 14:36:54,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:36:54
[2026-06-05 14:36:54,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:36:55,084.084 INFO    ] Initializing speech engine...
[2026-06-05 14:36:55,099.099 INFO    ] 2026-06-05 14:36:55
[2026-06-05 14:36:55,367.367 INFO    ] 2026-06-05 14:36:55
[2026-06-05 14:36:55,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:36:55,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:36:55,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:36:55,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:36:55,744.744 INFO    ] time= 05/06/2026 14:36:55
[2026-06-05 14:36:55,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:36:55,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:36:55,926.926 INFO    ] No existing commands found in stream
[2026-06-05 14:37:00,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:37:00,954.954 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 14:37:02,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:37:02,123.123 INFO    ] Checking for system updates...
[2026-06-05 14:37:02,166.166 INFO    ] 200
[2026-06-05 14:37:02,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:02,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:37:02,235.235 INFO    ] No update needed
[2026-06-05 14:37:02,239.239 INFO    ] Checking for camera pi updates...
[2026-06-05 14:37:02,283.283 INFO    ] 200
[2026-06-05 14:37:02,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:02,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:37:02,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:37:02,378.378 INFO    ] No camera update needed
[2026-06-05 14:37:02,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:37:02,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:37:02,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:37:02,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:37:04,443.443 INFO    ] ================================================
[2026-06-05 14:37:04,458.458 INFO    ] Launching Daemon at Fri Jun  5 14:37:04 IST 2026
[2026-06-05 14:37:04,470.470 INFO    ] ================================================
[2026-06-05 14:37:05,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:37:05
[2026-06-05 14:37:05,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:37:05,915.915 INFO    ] Initializing speech engine...
[2026-06-05 14:37:05,930.930 INFO    ] 2026-06-05 14:37:05
[2026-06-05 14:37:06,213.213 INFO    ] 2026-06-05 14:37:06
[2026-06-05 14:37:06,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:37:06,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:37:06,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:37:06,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:37:06,591.591 INFO    ] time= 05/06/2026 14:37:06
[2026-06-05 14:37:06,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:37:06,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:37:06,720.720 INFO    ] No existing commands found in stream
[2026-06-05 14:37:11,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:37:11,734.734 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 14:37:15,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:37:15,214.214 INFO    ] Checking for system updates...
[2026-06-05 14:37:15,255.255 INFO    ] 200
[2026-06-05 14:37:15,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:15,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:37:15,313.313 INFO    ] No update needed
[2026-06-05 14:37:15,315.315 INFO    ] Checking for camera pi updates...
[2026-06-05 14:37:15,353.353 INFO    ] 200
[2026-06-05 14:37:15,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:15,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:37:15,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:37:15,442.442 INFO    ] No camera update needed
[2026-06-05 14:37:15,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:37:15,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:37:15,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:37:15,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:37:17,498.498 INFO    ] ================================================
[2026-06-05 14:37:17,514.514 INFO    ] Launching Daemon at Fri Jun  5 14:37:17 IST 2026
[2026-06-05 14:37:17,525.525 INFO    ] ================================================
[2026-06-05 14:37:18,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:37:18
[2026-06-05 14:37:18,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:37:19,160.160 INFO    ] Initializing speech engine...
[2026-06-05 14:37:19,168.168 INFO    ] 2026-06-05 14:37:19
[2026-06-05 14:37:19,461.461 INFO    ] 2026-06-05 14:37:19
[2026-06-05 14:37:19,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:37:19,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:37:19,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:37:19,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:37:20,006.006 INFO    ] time= 05/06/2026 14:37:19
[2026-06-05 14:37:20,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:37:20,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:37:20,164.164 INFO    ] No existing commands found in stream
[2026-06-05 14:37:25,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:37:25,196.196 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 14:37:28,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:37:28,278.278 INFO    ] Checking for system updates...
[2026-06-05 14:37:28,315.315 INFO    ] 200
[2026-06-05 14:37:28,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:28,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:37:28,383.383 INFO    ] No update needed
[2026-06-05 14:37:28,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 14:37:28,421.421 INFO    ] 200
[2026-06-05 14:37:28,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:28,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:37:28,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:37:28,515.515 INFO    ] No camera update needed
[2026-06-05 14:37:28,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:37:28,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:37:28,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:37:28,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:37:30,574.574 INFO    ] ================================================
[2026-06-05 14:37:30,590.590 INFO    ] Launching Daemon at Fri Jun  5 14:37:30 IST 2026
[2026-06-05 14:37:30,601.601 INFO    ] ================================================
[2026-06-05 14:37:31,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:37:31
[2026-06-05 14:37:31,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:37:32,096.096 INFO    ] Initializing speech engine...
[2026-06-05 14:37:32,105.105 INFO    ] 2026-06-05 14:37:32
[2026-06-05 14:37:32,444.444 INFO    ] 2026-06-05 14:37:32
[2026-06-05 14:37:32,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:37:32,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:37:32,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:37:32,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:37:32,854.854 INFO    ] time= 05/06/2026 14:37:32
[2026-06-05 14:37:32,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:37:32,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:37:32,942.942 INFO    ] No existing commands found in stream
[2026-06-05 14:37:37,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:37:37,956.956 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 14:37:41,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:37:41,668.668 INFO    ] Checking for system updates...
[2026-06-05 14:37:41,705.705 INFO    ] 200
[2026-06-05 14:37:41,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:41,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:37:41,763.763 INFO    ] No update needed
[2026-06-05 14:37:41,766.766 INFO    ] Checking for camera pi updates...
[2026-06-05 14:37:41,800.800 INFO    ] 200
[2026-06-05 14:37:41,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:41,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:37:41,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:37:41,893.893 INFO    ] No camera update needed
[2026-06-05 14:37:41,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:37:41,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:37:41,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:37:41,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:37:43,952.952 INFO    ] ================================================
[2026-06-05 14:37:43,968.968 INFO    ] Launching Daemon at Fri Jun  5 14:37:43 IST 2026
[2026-06-05 14:37:43,980.980 INFO    ] ================================================
[2026-06-05 14:37:44,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:37:44
[2026-06-05 14:37:45,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:37:45,412.412 INFO    ] Initializing speech engine...
[2026-06-05 14:37:45,418.418 INFO    ] 2026-06-05 14:37:45
[2026-06-05 14:37:45,663.663 INFO    ] 2026-06-05 14:37:45
[2026-06-05 14:37:45,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:37:45,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:37:45,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:37:46,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:37:46,119.119 INFO    ] time= 05/06/2026 14:37:46
[2026-06-05 14:37:46,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:37:46,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:37:46,760.760 INFO    ] No existing commands found in stream
[2026-06-05 14:37:51,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:37:51,793.793 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 14:37:52,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:37:52,290.290 INFO    ] Checking for system updates...
[2026-06-05 14:37:52,328.328 INFO    ] 200
[2026-06-05 14:37:52,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:52,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:37:52,394.394 INFO    ] No update needed
[2026-06-05 14:37:52,397.397 INFO    ] Checking for camera pi updates...
[2026-06-05 14:37:52,430.430 INFO    ] 200
[2026-06-05 14:37:52,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:37:52,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:37:52,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:37:52,633.633 INFO    ] No camera update needed
[2026-06-05 14:37:52,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:37:52,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:37:52,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:37:52,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:37:54,690.690 INFO    ] ================================================
[2026-06-05 14:37:54,707.707 INFO    ] Launching Daemon at Fri Jun  5 14:37:54 IST 2026
[2026-06-05 14:37:54,719.719 INFO    ] ================================================
[2026-06-05 14:37:55,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:37:55
[2026-06-05 14:37:55,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:37:56,157.157 INFO    ] Initializing speech engine...
[2026-06-05 14:37:56,166.166 INFO    ] 2026-06-05 14:37:56
[2026-06-05 14:37:56,415.415 INFO    ] 2026-06-05 14:37:56
[2026-06-05 14:37:56,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:37:56,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:37:56,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:37:56,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:37:56,782.782 INFO    ] time= 05/06/2026 14:37:56
[2026-06-05 14:37:56,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:37:56,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:37:56,976.976 INFO    ] No existing commands found in stream
[2026-06-05 14:38:01,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:38:01,991.991 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 14:38:05,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:38:05,158.158 INFO    ] Checking for system updates...
[2026-06-05 14:38:05,194.194 INFO    ] 200
[2026-06-05 14:38:05,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:05,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:38:05,251.251 INFO    ] No update needed
[2026-06-05 14:38:05,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 14:38:05,287.287 INFO    ] 200
[2026-06-05 14:38:05,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:05,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:38:05,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:38:05,403.403 INFO    ] No camera update needed
[2026-06-05 14:38:05,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:38:05,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:38:05,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:38:05,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:38:07,460.460 INFO    ] ================================================
[2026-06-05 14:38:07,476.476 INFO    ] Launching Daemon at Fri Jun  5 14:38:07 IST 2026
[2026-06-05 14:38:07,487.487 INFO    ] ================================================
[2026-06-05 14:38:08,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:38:08
[2026-06-05 14:38:08,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:38:09,094.094 INFO    ] Initializing speech engine...
[2026-06-05 14:38:09,108.108 INFO    ] 2026-06-05 14:38:09
[2026-06-05 14:38:09,420.420 INFO    ] 2026-06-05 14:38:09
[2026-06-05 14:38:09,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:38:09,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:38:09,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:38:09,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:38:09,882.882 INFO    ] time= 05/06/2026 14:38:09
[2026-06-05 14:38:09,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:38:09,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:38:10,090.090 INFO    ] No existing commands found in stream
[2026-06-05 14:38:15,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:38:15,117.117 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 14:38:16,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:38:16,505.505 INFO    ] Checking for system updates...
[2026-06-05 14:38:16,547.547 INFO    ] 200
[2026-06-05 14:38:16,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:16,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:38:16,609.609 INFO    ] No update needed
[2026-06-05 14:38:16,611.611 INFO    ] Checking for camera pi updates...
[2026-06-05 14:38:16,647.647 INFO    ] 200
[2026-06-05 14:38:16,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:16,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:38:16,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:38:16,745.745 INFO    ] No camera update needed
[2026-06-05 14:38:16,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:38:16,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:38:16,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:38:16,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:38:18,804.804 INFO    ] ================================================
[2026-06-05 14:38:18,820.820 INFO    ] Launching Daemon at Fri Jun  5 14:38:18 IST 2026
[2026-06-05 14:38:18,831.831 INFO    ] ================================================
[2026-06-05 14:38:19,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:38:19
[2026-06-05 14:38:20,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:38:20,478.478 INFO    ] Initializing speech engine...
[2026-06-05 14:38:20,484.484 INFO    ] 2026-06-05 14:38:20
[2026-06-05 14:38:20,756.756 INFO    ] 2026-06-05 14:38:20
[2026-06-05 14:38:20,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:38:21,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:38:21,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:38:21,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:38:21,315.315 INFO    ] time= 05/06/2026 14:38:21
[2026-06-05 14:38:21,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:38:21,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:38:21,459.459 INFO    ] No existing commands found in stream
[2026-06-05 14:38:26,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:38:26,493.493 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 14:38:27,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:38:27,427.427 INFO    ] Checking for system updates...
[2026-06-05 14:38:27,465.465 INFO    ] 200
[2026-06-05 14:38:27,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:27,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:38:27,524.524 INFO    ] No update needed
[2026-06-05 14:38:27,527.527 INFO    ] Checking for camera pi updates...
[2026-06-05 14:38:27,565.565 INFO    ] 200
[2026-06-05 14:38:27,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:27,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:38:27,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:38:27,665.665 INFO    ] No camera update needed
[2026-06-05 14:38:27,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:38:27,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:38:27,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:38:27,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:38:29,724.724 INFO    ] ================================================
[2026-06-05 14:38:29,740.740 INFO    ] Launching Daemon at Fri Jun  5 14:38:29 IST 2026
[2026-06-05 14:38:29,751.751 INFO    ] ================================================
[2026-06-05 14:38:30,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:38:30
[2026-06-05 14:38:30,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:38:31,197.197 INFO    ] Initializing speech engine...
[2026-06-05 14:38:31,203.203 INFO    ] 2026-06-05 14:38:31
[2026-06-05 14:38:31,491.491 INFO    ] 2026-06-05 14:38:31
[2026-06-05 14:38:31,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:38:31,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:38:31,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:38:31,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:38:31,879.879 INFO    ] time= 05/06/2026 14:38:31
[2026-06-05 14:38:31,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:38:31,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:38:32,013.013 INFO    ] No existing commands found in stream
[2026-06-05 14:38:37,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:38:37,043.043 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 14:38:38,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:38:38,634.634 INFO    ] Checking for system updates...
[2026-06-05 14:38:38,672.672 INFO    ] 200
[2026-06-05 14:38:38,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:38,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:38:38,731.731 INFO    ] No update needed
[2026-06-05 14:38:38,734.734 INFO    ] Checking for camera pi updates...
[2026-06-05 14:38:38,768.768 INFO    ] 200
[2026-06-05 14:38:38,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:38,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:38:38,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:38:38,864.864 INFO    ] No camera update needed
[2026-06-05 14:38:38,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:38:38,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:38:38,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:38:38,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:38:40,923.923 INFO    ] ================================================
[2026-06-05 14:38:40,939.939 INFO    ] Launching Daemon at Fri Jun  5 14:38:40 IST 2026
[2026-06-05 14:38:40,950.950 INFO    ] ================================================
[2026-06-05 14:38:41,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:38:41
[2026-06-05 14:38:42,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:38:42,402.402 INFO    ] Initializing speech engine...
[2026-06-05 14:38:42,408.408 INFO    ] 2026-06-05 14:38:42
[2026-06-05 14:38:42,679.679 INFO    ] 2026-06-05 14:38:42
[2026-06-05 14:38:42,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:38:42,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:38:42,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:38:43,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:38:43,055.055 INFO    ] time= 05/06/2026 14:38:43
[2026-06-05 14:38:43,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:38:43,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:38:43,246.246 INFO    ] No existing commands found in stream
[2026-06-05 14:38:48,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:38:48,270.270 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 14:38:49,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:38:49,224.224 INFO    ] Checking for system updates...
[2026-06-05 14:38:49,261.261 INFO    ] 200
[2026-06-05 14:38:49,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:49,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:38:49,318.318 INFO    ] No update needed
[2026-06-05 14:38:49,321.321 INFO    ] Checking for camera pi updates...
[2026-06-05 14:38:49,358.358 INFO    ] 200
[2026-06-05 14:38:49,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:38:49,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:38:49,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:38:49,455.455 INFO    ] No camera update needed
[2026-06-05 14:38:49,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:38:49,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:38:49,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:38:49,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:38:51,513.513 INFO    ] ================================================
[2026-06-05 14:38:51,529.529 INFO    ] Launching Daemon at Fri Jun  5 14:38:51 IST 2026
[2026-06-05 14:38:51,540.540 INFO    ] ================================================
[2026-06-05 14:38:52,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:38:52
[2026-06-05 14:38:52,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:38:52,962.962 INFO    ] Initializing speech engine...
[2026-06-05 14:38:52,968.968 INFO    ] 2026-06-05 14:38:52
[2026-06-05 14:38:53,279.279 INFO    ] 2026-06-05 14:38:53
[2026-06-05 14:38:53,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:38:53,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:38:53,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:38:53,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:38:53,717.717 INFO    ] time= 05/06/2026 14:38:53
[2026-06-05 14:38:53,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:38:53,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:38:53,866.866 INFO    ] No existing commands found in stream
[2026-06-05 14:38:58,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:38:58,894.894 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 14:39:02,191.191 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:39:02,194.194 INFO    ] Checking for system updates...
[2026-06-05 14:39:02,245.245 INFO    ] 200
[2026-06-05 14:39:02,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:02,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:39:02,321.321 INFO    ] No update needed
[2026-06-05 14:39:02,324.324 INFO    ] Checking for camera pi updates...
[2026-06-05 14:39:02,365.365 INFO    ] 200
[2026-06-05 14:39:02,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:02,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:39:02,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:39:02,456.456 INFO    ] No camera update needed
[2026-06-05 14:39:02,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:39:02,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:39:02,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:39:02,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:39:04,518.518 INFO    ] ================================================
[2026-06-05 14:39:04,535.535 INFO    ] Launching Daemon at Fri Jun  5 14:39:04 IST 2026
[2026-06-05 14:39:04,546.546 INFO    ] ================================================
[2026-06-05 14:39:05,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:39:05
[2026-06-05 14:39:05,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:39:06,038.038 INFO    ] Initializing speech engine...
[2026-06-05 14:39:06,047.047 INFO    ] 2026-06-05 14:39:06
[2026-06-05 14:39:06,312.312 INFO    ] 2026-06-05 14:39:06
[2026-06-05 14:39:06,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:39:06,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:39:06,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:39:06,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:39:06,717.717 INFO    ] time= 05/06/2026 14:39:06
[2026-06-05 14:39:06,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:39:06,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:39:06,889.889 INFO    ] No existing commands found in stream
[2026-06-05 14:39:11,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:39:11,924.924 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 14:39:15,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:39:15,514.514 INFO    ] Checking for system updates...
[2026-06-05 14:39:15,551.551 INFO    ] 200
[2026-06-05 14:39:15,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:15,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:39:15,608.608 INFO    ] No update needed
[2026-06-05 14:39:15,611.611 INFO    ] Checking for camera pi updates...
[2026-06-05 14:39:15,657.657 INFO    ] 200
[2026-06-05 14:39:15,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:15,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:39:15,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:39:15,754.754 INFO    ] No camera update needed
[2026-06-05 14:39:15,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:39:15,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:39:15,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:39:15,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:39:17,810.810 INFO    ] ================================================
[2026-06-05 14:39:17,825.825 INFO    ] Launching Daemon at Fri Jun  5 14:39:17 IST 2026
[2026-06-05 14:39:17,836.836 INFO    ] ================================================
[2026-06-05 14:39:18,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:39:18
[2026-06-05 14:39:18,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:39:19,253.253 INFO    ] Initializing speech engine...
[2026-06-05 14:39:19,276.276 INFO    ] 2026-06-05 14:39:19
[2026-06-05 14:39:19,532.532 INFO    ] 2026-06-05 14:39:19
[2026-06-05 14:39:19,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:39:19,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:39:19,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:39:19,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:39:19,979.979 INFO    ] time= 05/06/2026 14:39:19
[2026-06-05 14:39:20,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:39:20,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:39:20,167.167 INFO    ] No existing commands found in stream
[2026-06-05 14:39:25,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:39:25,182.182 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 14:39:28,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:39:28,127.127 INFO    ] Checking for system updates...
[2026-06-05 14:39:28,167.167 INFO    ] 200
[2026-06-05 14:39:28,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:28,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:39:28,226.226 INFO    ] No update needed
[2026-06-05 14:39:28,229.229 INFO    ] Checking for camera pi updates...
[2026-06-05 14:39:28,263.263 INFO    ] 200
[2026-06-05 14:39:28,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:28,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:39:28,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:39:28,358.358 INFO    ] No camera update needed
[2026-06-05 14:39:28,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:39:28,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:39:28,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:39:28,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:39:30,417.417 INFO    ] ================================================
[2026-06-05 14:39:30,433.433 INFO    ] Launching Daemon at Fri Jun  5 14:39:30 IST 2026
[2026-06-05 14:39:30,445.445 INFO    ] ================================================
[2026-06-05 14:39:31,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:39:31
[2026-06-05 14:39:31,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:39:31,951.951 INFO    ] Initializing speech engine...
[2026-06-05 14:39:31,968.968 INFO    ] 2026-06-05 14:39:31
[2026-06-05 14:39:32,265.265 INFO    ] 2026-06-05 14:39:32
[2026-06-05 14:39:32,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:39:32,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:39:32,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:39:32,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:39:32,682.682 INFO    ] time= 05/06/2026 14:39:32
[2026-06-05 14:39:32,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:39:32,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:39:32,788.788 INFO    ] No existing commands found in stream
[2026-06-05 14:39:37,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:39:37,822.822 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 14:39:40,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:39:40,041.041 INFO    ] Checking for system updates...
[2026-06-05 14:39:40,083.083 INFO    ] 200
[2026-06-05 14:39:40,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:40,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:39:40,149.149 INFO    ] No update needed
[2026-06-05 14:39:40,152.152 INFO    ] Checking for camera pi updates...
[2026-06-05 14:39:40,192.192 INFO    ] 200
[2026-06-05 14:39:40,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:40,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:39:40,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:39:40,286.286 INFO    ] No camera update needed
[2026-06-05 14:39:40,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:39:40,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:39:40,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:39:40,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:39:42,344.344 INFO    ] ================================================
[2026-06-05 14:39:42,361.361 INFO    ] Launching Daemon at Fri Jun  5 14:39:42 IST 2026
[2026-06-05 14:39:42,372.372 INFO    ] ================================================
[2026-06-05 14:39:42,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:39:42
[2026-06-05 14:39:43,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:39:43,791.791 INFO    ] Initializing speech engine...
[2026-06-05 14:39:43,800.800 INFO    ] 2026-06-05 14:39:43
[2026-06-05 14:39:44,045.045 INFO    ] 2026-06-05 14:39:44
[2026-06-05 14:39:44,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:39:44,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:39:44,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:39:44,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:39:44,517.517 INFO    ] time= 05/06/2026 14:39:44
[2026-06-05 14:39:44,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:39:44,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:39:44,742.742 INFO    ] No existing commands found in stream
[2026-06-05 14:39:49,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:39:49,770.770 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 14:39:53,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:39:53,466.466 INFO    ] Checking for system updates...
[2026-06-05 14:39:53,507.507 INFO    ] 200
[2026-06-05 14:39:53,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:53,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:39:53,577.577 INFO    ] No update needed
[2026-06-05 14:39:53,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 14:39:53,617.617 INFO    ] 200
[2026-06-05 14:39:53,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:39:53,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:39:53,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:39:53,703.703 INFO    ] No camera update needed
[2026-06-05 14:39:53,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:39:53,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:39:53,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:39:53,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:39:55,760.760 INFO    ] ================================================
[2026-06-05 14:39:55,776.776 INFO    ] Launching Daemon at Fri Jun  5 14:39:55 IST 2026
[2026-06-05 14:39:55,788.788 INFO    ] ================================================
[2026-06-05 14:39:56,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:39:56
[2026-06-05 14:39:57,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:39:57,424.424 INFO    ] Initializing speech engine...
[2026-06-05 14:39:57,433.433 INFO    ] 2026-06-05 14:39:57
[2026-06-05 14:39:57,703.703 INFO    ] 2026-06-05 14:39:57
[2026-06-05 14:39:57,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:39:57,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:39:57,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:39:58,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:39:58,189.189 INFO    ] time= 05/06/2026 14:39:58
[2026-06-05 14:39:58,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:39:58,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:39:58,404.404 INFO    ] No existing commands found in stream
[2026-06-05 14:40:03,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:40:03,424.424 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 14:40:08,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:40:08,654.654 INFO    ] Checking for system updates...
[2026-06-05 14:40:08,691.691 INFO    ] 200
[2026-06-05 14:40:08,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:08,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:40:08,752.752 INFO    ] No update needed
[2026-06-05 14:40:08,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 14:40:08,790.790 INFO    ] 200
[2026-06-05 14:40:08,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:08,835.835 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:40:08,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:40:08,878.878 INFO    ] No camera update needed
[2026-06-05 14:40:08,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:40:08,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:40:08,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:40:08,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:40:10,938.938 INFO    ] ================================================
[2026-06-05 14:40:10,954.954 INFO    ] Launching Daemon at Fri Jun  5 14:40:10 IST 2026
[2026-06-05 14:40:10,965.965 INFO    ] ================================================
[2026-06-05 14:40:11,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:40:11
[2026-06-05 14:40:12,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:40:12,399.399 INFO    ] Initializing speech engine...
[2026-06-05 14:40:12,408.408 INFO    ] 2026-06-05 14:40:12
[2026-06-05 14:40:12,662.662 INFO    ] 2026-06-05 14:40:12
[2026-06-05 14:40:12,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:40:12,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:40:12,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:40:13,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:40:13,142.142 INFO    ] time= 05/06/2026 14:40:13
[2026-06-05 14:40:13,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:40:13,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:40:13,368.368 INFO    ] No existing commands found in stream
[2026-06-05 14:40:18,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:40:18,382.382 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 14:40:21,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:40:21,408.408 INFO    ] Checking for system updates...
[2026-06-05 14:40:21,444.444 INFO    ] 200
[2026-06-05 14:40:21,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:21,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:40:21,509.509 INFO    ] No update needed
[2026-06-05 14:40:21,511.511 INFO    ] Checking for camera pi updates...
[2026-06-05 14:40:21,549.549 INFO    ] 200
[2026-06-05 14:40:21,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:21,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:40:21,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:40:21,643.643 INFO    ] No camera update needed
[2026-06-05 14:40:21,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:40:21,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:40:21,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:40:21,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:40:23,699.699 INFO    ] ================================================
[2026-06-05 14:40:23,715.715 INFO    ] Launching Daemon at Fri Jun  5 14:40:23 IST 2026
[2026-06-05 14:40:23,726.726 INFO    ] ================================================
[2026-06-05 14:40:24,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:40:24
[2026-06-05 14:40:25,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:40:25,372.372 INFO    ] Initializing speech engine...
[2026-06-05 14:40:25,384.384 INFO    ] 2026-06-05 14:40:25
[2026-06-05 14:40:25,694.694 INFO    ] 2026-06-05 14:40:25
[2026-06-05 14:40:25,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:40:25,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:40:26,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:40:26,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:40:26,205.205 INFO    ] time= 05/06/2026 14:40:26
[2026-06-05 14:40:26,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:40:26,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:40:26,390.390 INFO    ] No existing commands found in stream
[2026-06-05 14:40:31,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:40:31,430.430 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-05 14:40:31,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:40:31,903.903 INFO    ] Checking for system updates...
[2026-06-05 14:40:31,941.941 INFO    ] 200
[2026-06-05 14:40:31,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:32,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:40:32,018.018 INFO    ] No update needed
[2026-06-05 14:40:32,022.022 INFO    ] Checking for camera pi updates...
[2026-06-05 14:40:32,073.073 INFO    ] 200
[2026-06-05 14:40:32,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:32,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:40:32,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:40:32,167.167 INFO    ] No camera update needed
[2026-06-05 14:40:32,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:40:32,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:40:32,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:40:32,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:40:34,232.232 INFO    ] ================================================
[2026-06-05 14:40:34,247.247 INFO    ] Launching Daemon at Fri Jun  5 14:40:34 IST 2026
[2026-06-05 14:40:34,258.258 INFO    ] ================================================
[2026-06-05 14:40:34,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:40:34
[2026-06-05 14:40:35,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:40:35,665.665 INFO    ] Initializing speech engine...
[2026-06-05 14:40:35,673.673 INFO    ] 2026-06-05 14:40:35
[2026-06-05 14:40:35,970.970 INFO    ] 2026-06-05 14:40:35
[2026-06-05 14:40:36,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:40:36,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:40:36,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:40:36,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:40:36,354.354 INFO    ] time= 05/06/2026 14:40:36
[2026-06-05 14:40:36,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:40:36,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:40:36,437.437 INFO    ] No existing commands found in stream
[2026-06-05 14:40:41,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:40:41,456.456 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 14:40:44,903.903 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:40:44,906.906 INFO    ] Checking for system updates...
[2026-06-05 14:40:44,942.942 INFO    ] 200
[2026-06-05 14:40:44,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:44,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:40:45,000.000 INFO    ] No update needed
[2026-06-05 14:40:45,003.003 INFO    ] Checking for camera pi updates...
[2026-06-05 14:40:45,037.037 INFO    ] 200
[2026-06-05 14:40:45,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:45,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:40:45,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:40:45,136.136 INFO    ] No camera update needed
[2026-06-05 14:40:45,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:40:45,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:40:45,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:40:45,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:40:47,192.192 INFO    ] ================================================
[2026-06-05 14:40:47,208.208 INFO    ] Launching Daemon at Fri Jun  5 14:40:47 IST 2026
[2026-06-05 14:40:47,219.219 INFO    ] ================================================
[2026-06-05 14:40:47,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:40:47
[2026-06-05 14:40:48,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:40:48,767.767 INFO    ] Initializing speech engine...
[2026-06-05 14:40:48,790.790 INFO    ] 2026-06-05 14:40:48
[2026-06-05 14:40:49,043.043 INFO    ] 2026-06-05 14:40:49
[2026-06-05 14:40:49,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:40:49,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:40:49,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:40:49,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:40:49,546.546 INFO    ] time= 05/06/2026 14:40:49
[2026-06-05 14:40:49,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:40:49,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:40:49,751.751 INFO    ] No existing commands found in stream
[2026-06-05 14:40:54,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:40:54,770.770 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 14:40:57,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:40:57,305.305 INFO    ] Checking for system updates...
[2026-06-05 14:40:57,342.342 INFO    ] 200
[2026-06-05 14:40:57,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:57,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:40:57,409.409 INFO    ] No update needed
[2026-06-05 14:40:57,411.411 INFO    ] Checking for camera pi updates...
[2026-06-05 14:40:57,445.445 INFO    ] 200
[2026-06-05 14:40:57,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:40:57,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:40:57,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:40:57,548.548 INFO    ] No camera update needed
[2026-06-05 14:40:57,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:40:57,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:40:57,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:40:57,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:40:59,606.606 INFO    ] ================================================
[2026-06-05 14:40:59,622.622 INFO    ] Launching Daemon at Fri Jun  5 14:40:59 IST 2026
[2026-06-05 14:40:59,634.634 INFO    ] ================================================
[2026-06-05 14:41:00,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:41:00
[2026-06-05 14:41:00,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:41:01,200.200 INFO    ] Initializing speech engine...
[2026-06-05 14:41:01,218.218 INFO    ] 2026-06-05 14:41:01
[2026-06-05 14:41:01,674.674 INFO    ] 2026-06-05 14:41:01
[2026-06-05 14:41:01,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:41:01,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:41:01,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:41:02,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:41:02,151.151 INFO    ] time= 05/06/2026 14:41:02
[2026-06-05 14:41:02,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:41:02,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:41:02,351.351 INFO    ] No existing commands found in stream
[2026-06-05 14:41:07,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:41:07,366.366 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 14:41:10,156.156 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:41:10,158.158 INFO    ] Checking for system updates...
[2026-06-05 14:41:10,195.195 INFO    ] 200
[2026-06-05 14:41:10,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:41:10,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:41:10,261.261 INFO    ] No update needed
[2026-06-05 14:41:10,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 14:41:10,297.297 INFO    ] 200
[2026-06-05 14:41:10,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:41:10,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:41:10,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:41:10,392.392 INFO    ] No camera update needed
[2026-06-05 14:41:10,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:41:10,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:41:10,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:41:10,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:41:12,448.448 INFO    ] ================================================
[2026-06-05 14:41:12,463.463 INFO    ] Launching Daemon at Fri Jun  5 14:41:12 IST 2026
[2026-06-05 14:41:12,475.475 INFO    ] ================================================
[2026-06-05 14:41:13,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:41:13
[2026-06-05 14:41:13,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:41:13,974.974 INFO    ] Initializing speech engine...
[2026-06-05 14:41:13,983.983 INFO    ] 2026-06-05 14:41:13
[2026-06-05 14:41:14,228.228 INFO    ] 2026-06-05 14:41:14
[2026-06-05 14:41:14,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:41:14,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:41:14,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:41:14,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:41:14,705.705 INFO    ] time= 05/06/2026 14:41:14
[2026-06-05 14:41:14,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:41:14,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:41:14,920.920 INFO    ] No existing commands found in stream
[2026-06-05 14:41:19,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:41:19,952.952 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 14:41:24,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:41:24,070.070 INFO    ] Checking for system updates...
[2026-06-05 14:41:24,109.109 INFO    ] 200
[2026-06-05 14:41:24,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:41:24,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:41:24,173.173 INFO    ] No update needed
[2026-06-05 14:41:24,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 14:41:24,213.213 INFO    ] 200
[2026-06-05 14:41:24,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:41:24,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:41:24,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:41:24,285.285 INFO    ] No camera update needed
[2026-06-05 14:41:24,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:41:24,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:41:24,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:41:24,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:41:26,343.343 INFO    ] ================================================
[2026-06-05 14:41:26,359.359 INFO    ] Launching Daemon at Fri Jun  5 14:41:26 IST 2026
[2026-06-05 14:41:26,370.370 INFO    ] ================================================
[2026-06-05 14:41:26,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:41:26
[2026-06-05 14:41:27,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:41:27,902.902 INFO    ] Initializing speech engine...
[2026-06-05 14:41:27,912.912 INFO    ] 2026-06-05 14:41:27
[2026-06-05 14:41:28,162.162 INFO    ] 2026-06-05 14:41:28
[2026-06-05 14:41:28,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:41:28,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:41:28,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:41:28,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:41:28,644.644 INFO    ] time= 05/06/2026 14:41:28
[2026-06-05 14:41:28,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:41:28,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:41:28,876.876 INFO    ] No existing commands found in stream
[2026-06-05 14:41:33,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:41:33,904.904 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 14:41:35,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:41:35,243.243 INFO    ] Checking for system updates...
[2026-06-05 14:41:35,291.291 INFO    ] 200
[2026-06-05 14:41:35,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:41:35,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:41:35,348.348 INFO    ] No update needed
[2026-06-05 14:41:35,351.351 INFO    ] Checking for camera pi updates...
[2026-06-05 14:41:35,388.388 INFO    ] 200
[2026-06-05 14:41:35,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:41:35,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:41:35,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:41:35,476.476 INFO    ] No camera update needed
[2026-06-05 14:41:35,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:41:35,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:41:35,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:41:35,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:41:37,530.530 INFO    ] ================================================
[2026-06-05 14:41:37,545.545 INFO    ] Launching Daemon at Fri Jun  5 14:41:37 IST 2026
[2026-06-05 14:41:37,556.556 INFO    ] ================================================
[2026-06-05 14:41:38,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:41:38
[2026-06-05 14:41:38,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:41:38,989.989 INFO    ] Initializing speech engine...
[2026-06-05 14:41:38,998.998 INFO    ] 2026-06-05 14:41:38
[2026-06-05 14:41:39,254.254 INFO    ] 2026-06-05 14:41:39
[2026-06-05 14:41:39,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:41:39,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:41:39,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:41:39,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:41:39,732.732 INFO    ] time= 05/06/2026 14:41:39
[2026-06-05 14:41:39,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:41:39,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:41:39,957.957 INFO    ] No existing commands found in stream
[2026-06-05 14:41:42,366.366 INFO    ] Received new command: ID=1780650702329-0
[2026-06-05 14:41:42,369.369 INFO    ] process_and_cleanup_command: msg_id=1780650702329-0
[2026-06-05 14:41:42,371.371 INFO    ] is_command_expired: timestamp=2026-06-05T09:11:41.573Z, expiry=30s
[2026-06-05 14:41:42,455.455 INFO    ] Command removed from stream: 1780650702329-0. returning for processing...
[2026-06-05 14:41:42,457.457 INFO    ] ***** get_valid_command
[2026-06-05 14:41:42,460.460 INFO    ] {'timestamp': '2026-06-05T09:11:41.573Z', 'source': 'webapp', 'data': '{"request_id":"start-order-1780650701573-3rxtdzrqu","orderId":"TM07202501260605144059026","is_vending":false}', 'timeout': '10', 'command': 'start-order'}
[2026-06-05 14:41:42,462.462 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1780650701573-3rxtdzrqu', 'orderId': 'TM07202501260605144059026'}
[2026-06-05 14:41:42,465.465 INFO    ] Handling start order...
[2026-06-05 14:41:42,467.467 INFO    ] handle_start_order_command
[2026-06-05 14:41:42,473.473 INFO    ] _send_start_order_success: request_id=start-order-1780650701573-3rxtdzrqu, order_id=TM07202501260605144059026
[2026-06-05 14:41:42,475.475 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-05 14:41:42,532.532 INFO    ] [_send_start_order_success] Message added to stream with ID: 1780650702496-0
[2026-06-05 14:41:42,534.534 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-05 14:41:42,536.536 INFO    ] Checking for system updates...
[2026-06-05 14:41:42,578.578 INFO    ] 200
[2026-06-05 14:41:42,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:41:42,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:41:42,637.637 INFO    ] No update needed
[2026-06-05 14:41:42,639.639 INFO    ] Checking for camera pi updates...
[2026-06-05 14:41:42,676.676 INFO    ] 200
[2026-06-05 14:41:42,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:41:42,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:41:42,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:41:42,766.766 INFO    ] No camera update needed
[2026-06-05 14:41:42,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:41:42,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:41:42,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:41:42,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:41:44,823.823 INFO    ] ================================================
[2026-06-05 14:41:44,838.838 INFO    ] Launching Daemon at Fri Jun  5 14:41:44 IST 2026
[2026-06-05 14:41:44,848.848 INFO    ] ================================================
[2026-06-05 14:41:45,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:41:45
[2026-06-05 14:41:46,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:41:46,463.463 INFO    ] Initializing speech engine...
[2026-06-05 14:41:46,472.472 INFO    ] 2026-06-05 14:41:46
[2026-06-05 14:41:46,732.732 INFO    ] 2026-06-05 14:41:46
[2026-06-05 14:41:46,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:41:48,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:41:48,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:41:48,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:41:48,772.772 INFO    ] time= 05/06/2026 14:41:48
[2026-06-05 14:41:48,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:41:48,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:41:48,891.891 INFO    ] Found 2 existing command(s) in stream
[2026-06-05 14:41:48,913.913 INFO    ] Checking historical command: ID=1780650702496-0
[2026-06-05 14:41:48,920.920 INFO    ] process_and_cleanup_command: msg_id=1780650702496-0
[2026-06-05 14:41:48,924.924 INFO    ] is_command_expired: timestamp=2026-06-05T09:11:42.474069Z, expiry=30s
[2026-06-05 14:41:49,015.015 INFO    ] Command removed from stream: 1780650702496-0. returning for processing...
[2026-06-05 14:41:49,020.020 INFO    ] ***** get_valid_command
[2026-06-05 14:41:49,025.025 INFO    ] {'imei': 'TM07202501', 'message': 'start-order success', 'status': 'success', 'timestamp': '2026-06-05T09:11:42.474069Z', 'metadata_request_id': 'start-order-1780650701573-3rxtdzrqu', 'message_type': 'command_response', 'metadata_order_id': 'TM07202501260605144059026'}
[2026-06-05 14:41:49,030.030 INFO    ] Checking historical command: ID=1780650705971-0
[2026-06-05 14:41:49,035.035 INFO    ] process_and_cleanup_command: msg_id=1780650705971-0
[2026-06-05 14:41:49,041.041 INFO    ] is_command_expired: timestamp=2026-06-05T09:11:45.270Z, expiry=30s
[2026-06-05 14:41:49,190.190 INFO    ] Command removed from stream: 1780650705971-0. returning for processing...
[2026-06-05 14:41:49,208.208 INFO    ] ***** get_valid_command
[2026-06-05 14:41:49,214.214 INFO    ] {'timestamp': '2026-06-05T09:11:45.270Z', 'timeout': '60', 'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1780650705270-tuwxnjrgf","orderId":"TM07202501260605144059026","is_vending":false,"accessCode":"73779152"}'}
[2026-06-05 14:41:49,221.221 INFO    ] ***** Parsed command data: {'accessCode': '73779152', 'orderId': 'TM07202501260605144059026', 'request_id': 'process-order-1780650705270-tuwxnjrgf', 'is_vending': False}
[2026-06-05 14:41:49,242.242 INFO    ] Handling process order...
[2026-06-05 14:41:49,253.253 INFO    ] Processing process-order command...
[2026-06-05 14:41:49,259.259 INFO    ] 🔍 Lock file Order ID: TM07202501260605144059026, TS: 2026-06-05 14:41:42
[2026-06-05 14:41:49,275.275 INFO    ] ✅ Order lock valid for TM07202501260605144059026
[2026-06-05 14:41:49,280.280 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-05 14:41:49,285.285 INFO    ] processing access code 73779152 for order TM07202501260605144059026
[2026-06-05 14:41:49,293.293 INFO    ] 🔍 Lock file Order ID: TM07202501260605144059026, TS: 2026-06-05 14:41:42
[2026-06-05 14:41:49,304.304 INFO    ] ✅ Order lock valid for TM07202501260605144059026
[2026-06-05 14:41:49,311.311 INFO    ] 2026-06-05 14:41:49
[2026-06-05 14:41:49,358.358 INFO    ] 200
[2026-06-05 14:41:49,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:41:49,375.375 INFO    ] 73779152
[2026-06-05 14:41:49,383.383 INFO    ] 2026-06-05 14:41:49
[2026-06-05 14:41:49,398.398 INFO    ] session id :970987305
[2026-06-05 14:41:49,420.420 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=73779152&imei=TM07202501&session_id=970987305
[2026-06-05 14:41:50,440.440 INFO    ] 200
[2026-06-05 14:41:50,442.442 INFO    ] {"rstatus": true, "msg": "Order Data", "data": {"mobile": "9632850806", "bill_amount": "20", "access_code": "73779152", "order_id": "TM07202501260605144059026", "proposed_sku_json": [{"qty": 2, "name": "Eat Bit Peanut  Chikki 32gm", "offer_id": "", "skuid": "4500677", "sku_total": 20, "door_id": "1", "tray_id": "21", "image_url": "https://images.tinymart.in/product/4500677-4669.png", "mrp": "10", "offer_desc": "", "unit_price": 10}], "invoice_bill": "20"}, "status": true}
[2026-06-05 14:41:50,446.446 INFO    ] 20
[2026-06-05 14:41:50,448.448 INFO    ] TM07202501260605144059026
[2026-06-05 14:41:50,451.451 INFO    ] 9632850806
[2026-06-05 14:41:50,453.453 INFO    ] 2026-06-05 14:41:50
[2026-06-05 14:41:50,456.456 INFO    ] Door Opening for user mobile ending with  zero eight zero six 
[2026-06-05 14:41:50,459.459 INFO    ] Door Opening for user mobile ending with  zero eight zero six 
[2026-06-05 14:41:50,461.461 INFO    ] 02b40a7e74acdf845b9136ef7650db5c
[2026-06-05 14:41:50,464.464 INFO    ] 2026-06-05 14:41:50
[2026-06-05 14:41:50,467.467 INFO    ] playing audio file
[2026-06-05 14:41:50,484.484 INFO    ] 2026-06-05 14:41:50
[2026-06-05 14:41:50,487.487 INFO    ] 2026-06-05 14:41:50
[2026-06-05 14:41:50,490.490 INFO    ] publish_status: order_id=TM07202501260605144059026
[2026-06-05 14:41:50,494.494 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605144059026
[2026-06-05 14:41:50,569.569 INFO    ] [publish_status] Message added to stream with ID: 1780650710533-0
[2026-06-05 14:41:50,572.572 INFO    ] Published to order:TM07202501260605144059026: {'timestamp': '2026-06-05T09:11:50.489010Z', 'server_response': '{"msg": "Order Data", "data": {"access_code": "73779152", "invoice_bill": "20", "order_id": "TM07202501260605144059026", "mobile": "9632850806", "bill_amount": "20", "proposed_sku_json": [{"tray_id": "21", "name": "Eat Bit Peanut  Chikki 32gm", "qty": 2, "offer_id": "", "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500677-4669.png", "skuid": "4500677", "offer_desc": "", "unit_price": 10, "mrp": "10", "door_id": "1"}]}, "status": true, "rstatus": true}', 'order_id': 'TM07202501260605144059026', 'server_status': 'order-started'} (ID: 1780650710533-0)
[2026-06-05 14:41:50,962.962 INFO    ] {'server_response': {'msg': 'Order Data', 'data': {'access_code': '73779152', 'invoice_bill': '20', 'order_id': 'TM07202501260605144059026', 'mobile': '9632850806', 'bill_amount': '20', 'proposed_sku_json': [{'tray_id': '21', 'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 2, 'offer_id': '', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'skuid': '4500677', 'offer_desc': '', 'unit_price': 10, 'mrp': '10', 'door_id': '1'}]}, 'status': True, 'rstatus': True}, 'order_id': 'TM07202501260605144059026', 'server_status': 'order-started'}
[2026-06-05 14:41:50,964.964 INFO    ] 200
[2026-06-05 14:41:50,967.967 INFO    ] {"data":{"server_response":{"msg":"Order Data","data":{"access_code":"73779152","invoice_bill":"20","order_id":"TM07202501260605144059026","mobile":"9632850806","bill_amount":"20","proposed_sku_json":[{"tray_id":"21","name":"Eat Bit Peanut  Chikki 32gm","qty":2,"offer_id":"","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500677-4669.png","skuid":"4500677","offer_desc":"","unit_price":10,"mrp":"10","door_id":"1"}]},"status":true,"rstatus":true},"order_id":"TM07202501260605144059026","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 14:41:50,970.970 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'msg': 'Order Data', 'rstatus': True, 'status': True, 'data': {'access_code': '73779152', 'invoice_bill': '20', 'order_id': 'TM07202501260605144059026', 'mobile': '9632850806', 'bill_amount': '20', 'proposed_sku_json': [{'tray_id': '21', 'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 2, 'door_id': '1', 'offer_id': '', 'sku_total': 20, 'skuid': '4500677', 'offer_desc': '', 'unit_price': 10, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png'}]}}, 'order_id': 'TM07202501260605144059026', 'server_status': 'order-started'}}
[2026-06-05 14:41:50,972.972 INFO    ] 2026-06-05 14:41:50
[2026-06-05 14:41:51,016.016 INFO    ] 200
[2026-06-05 14:41:51,019.019 INFO    ] True
[2026-06-05 14:41:51,209.209 INFO    ] 200
[2026-06-05 14:41:51,211.211 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 14:41:51,215.215 INFO    ] {'status': 'False', 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-06-05 14:41:51,217.217 INFO    ] *** process_order ***
[2026-06-05 14:41:52,406.406 INFO    ] 200
[2026-06-05 14:41:52,408.408 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "delay": 0, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True"}
[2026-06-05 14:41:52,411.411 INFO    ] {'status': 'True', 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait'}
[2026-06-05 14:41:52,413.413 INFO    ] *** process_order ***
[2026-06-05 14:41:52,416.416 INFO    ] publish_status: order_id=TM07202501260605144059026
[2026-06-05 14:41:52,418.418 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605144059026
[2026-06-05 14:41:52,484.484 INFO    ] [publish_status] Message added to stream with ID: 1780650712448-0
[2026-06-05 14:41:52,488.488 INFO    ] Published to order:TM07202501260605144059026: {'server_response': '{"delay": 0, "status": "True", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open...", "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'order_id': 'TM07202501260605144059026', 'server_status': 'doorOpened'} (ID: 1780650712448-0)
[2026-06-05 14:41:53,542.542 INFO    ] 2026-06-05 14:41:53
[2026-06-05 14:41:53,545.545 INFO    ] publish_status: order_id=TM07202501260605144059026
[2026-06-05 14:41:53,547.547 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605144059026
[2026-06-05 14:41:53,602.602 INFO    ] [publish_status] Message added to stream with ID: 1780650713566-0
[2026-06-05 14:41:53,605.605 INFO    ] Published to order:TM07202501260605144059026: {'timestamp': '2026-06-05T09:11:53.543798Z', 'server_response': '{"status": "True", "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}', 'order_id': 'TM07202501260605144059026', 'server_status': 'processOrder'} (ID: 1780650713566-0)
[2026-06-05 14:41:53,722.722 INFO    ] {'server_response': {'status': 'True', 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait'}, 'order_id': 'TM07202501260605144059026', 'server_status': 'processOrder'}
[2026-06-05 14:41:53,725.725 INFO    ] 200
[2026-06-05 14:41:53,727.727 INFO    ] {"data":{"server_response":{"status":"true","SectionStatus":{"Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","UI_Header":""},"rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"voiceNote":"Please Wait"},"order_id":"TM07202501260605144059026","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 14:41:53,730.730 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'delay': 0, 'status': 'true', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}, 'order_id': 'TM07202501260605144059026', 'server_status': 'processOrder'}}
[2026-06-05 14:41:53,734.734 INFO    ] 2026-06-05 14:41:53
[2026-06-05 14:41:53,736.736 INFO    ] None
[2026-06-05 14:41:53,739.739 INFO    ] Opening Door now
[2026-06-05 14:41:53,742.742 INFO    ] Opening Door now
[2026-06-05 14:41:53,744.744 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-05 14:41:53,747.747 INFO    ] 2026-06-05 14:41:53
[2026-06-05 14:41:53,749.749 INFO    ] playing audio file
[2026-06-05 14:41:53,768.768 INFO    ] 2026-06-05 14:41:53
[2026-06-05 14:41:53,771.771 INFO    ] 2026-06-05 14:41:53
[2026-06-05 14:41:56,914.914 INFO    ] 200
[2026-06-05 14:41:56,917.917 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Eat Bit Peanut  Chikki 32gm", "qty": 2}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 14:41:56,920.920 INFO    ] {'status': 'False', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 2}]}}
[2026-06-05 14:41:59,991.991 INFO    ] 200
[2026-06-05 14:41:59,994.994 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Eat Bit Peanut  Chikki 32gm", "qty": 2}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 14:41:59,998.998 INFO    ] {'status': 'False', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 2}]}}
[2026-06-05 14:42:03,057.057 INFO    ] 200
[2026-06-05 14:42:03,059.059 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Eat Bit Peanut  Chikki 32gm", "qty": 2}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 14:42:03,062.062 INFO    ] Please close door 1
[2026-06-05 14:42:03,065.065 INFO    ] Please close door 1
[2026-06-05 14:42:03,067.067 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-05 14:42:03,070.070 INFO    ] 2026-06-05 14:42:03
[2026-06-05 14:42:03,073.073 INFO    ] playing audio file
[2026-06-05 14:42:03,094.094 INFO    ] 2026-06-05 14:42:03
[2026-06-05 14:42:03,101.101 INFO    ] publish_status: order_id=TM07202501260605144059026
[2026-06-05 14:42:03,106.106 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605144059026
[2026-06-05 14:42:03,192.192 INFO    ] [publish_status] Message added to stream with ID: 1780650723155-0
[2026-06-05 14:42:03,195.195 INFO    ] Published to order:TM07202501260605144059026: {'timestamp': '2026-06-05T09:12:03.096590Z', 'server_response': '{"status": "False", "SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Eat Bit Peanut  Chikki 32gm", "qty": 2}]}}', 'order_id': 'TM07202501260605144059026', 'server_status': 'OrderStatus'} (ID: 1780650723155-0)
[2026-06-05 14:42:03,838.838 INFO    ] {'server_response': {'status': 'False', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 2}]}}, 'order_id': 'TM07202501260605144059026', 'server_status': 'OrderStatus'}
[2026-06-05 14:42:03,841.841 INFO    ] 200
[2026-06-05 14:42:03,844.844 INFO    ] {"data":{"server_response":{"status":"false","SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Eat Bit Peanut  Chikki 32gm","qty":2}]}},"order_id":"TM07202501260605144059026","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 14:42:03,848.848 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'status': 'false', 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 2}]}, 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1'}, 'order_id': 'TM07202501260605144059026', 'server_status': 'OrderStatus'}}
[2026-06-05 14:42:03,851.851 INFO    ] {'status': 'False', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 2}]}}
[2026-06-05 14:42:06,921.921 INFO    ] 200
[2026-06-05 14:42:06,924.924 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": true, "delay": 100, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True"}
[2026-06-05 14:42:06,927.927 INFO    ] {'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'voiceNote': 'Transaction Completed'}
[2026-06-05 14:42:06,930.930 INFO    ] 2026-06-05 14:42:06
[2026-06-05 14:42:06,933.933 INFO    ] Order Completed 
[2026-06-05 14:42:06,935.935 INFO    ] Order Completed 
[2026-06-05 14:42:06,938.938 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-05 14:42:06,941.941 INFO    ] 2026-06-05 14:42:06
[2026-06-05 14:42:06,944.944 INFO    ] playing audio file
[2026-06-05 14:42:06,961.961 INFO    ] 2026-06-05 14:42:06
[2026-06-05 14:42:06,964.964 INFO    ] {'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'voiceNote': 'Transaction Completed'}
[2026-06-05 14:42:06,968.968 INFO    ] 2026-06-05 14:42:06
[2026-06-05 14:42:08,779.779 INFO    ] 200
[2026-06-05 14:42:08,781.781 INFO    ] {"rstatus": true, "skus": [{"skuid": "4500677", "tray_id": "21", "sku_total": 20.0, "unit_price": "10", "door_id": "", "image_url": "https://images.tinymart.in/product/4500677-4669.png", "mrp": "10", "qty": 2, "name": "Eat Bit Peanut  Chikki 32gm per peice"}], "logic": "WBL", "anomaly": 0, "total_amount": 20.0, "orderId": "TM07202501260605144059026", "res": "True"}
[2026-06-05 14:42:08,784.784 INFO    ] {'orderId': 'TM07202501260605144059026', 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20.0, 'skus': [{'tray_id': '21', 'mrp': '10', 'qty': 2, 'sku_total': 20.0, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'skuid': '4500677', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'door_id': ''}]}
[2026-06-05 14:42:08,787.787 INFO    ] {'orderId': 'TM07202501260605144059026', 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20.0, 'skus': [{'tray_id': '21', 'mrp': '10', 'qty': 2, 'sku_total': 20.0, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'skuid': '4500677', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'door_id': ''}]}
[2026-06-05 14:42:08,790.790 INFO    ] 2026-06-05 14:42:08
[2026-06-05 14:42:08,793.793 INFO    ] 2026-06-05 14:42:08
[2026-06-05 14:42:08,795.795 INFO    ] 20
[2026-06-05 14:42:08,798.798 INFO    ] 2026-06-05 14:42:08
[2026-06-05 14:42:08,801.801 INFO    ] 2026-06-05 14:42:08
[2026-06-05 14:42:08,804.804 INFO    ]  Your Bill Amount is 20
[2026-06-05 14:42:08,807.807 INFO    ]  Your Bill Amount is 20
[2026-06-05 14:42:08,810.810 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-05 14:42:08,813.813 INFO    ] 2026-06-05 14:42:08
[2026-06-05 14:42:08,816.816 INFO    ] playing audio file
[2026-06-05 14:42:08,835.835 INFO    ] 2026-06-05 14:42:08
[2026-06-05 14:42:08,838.838 INFO    ] 2026-06-05 14:42:08
[2026-06-05 14:42:08,842.842 INFO    ] publish_status: order_id=TM07202501260605144059026
[2026-06-05 14:42:08,845.845 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605144059026
[2026-06-05 14:42:08,935.935 INFO    ] [publish_status] Message added to stream with ID: 1780650728897-0
[2026-06-05 14:42:08,942.942 INFO    ] Published to order:TM07202501260605144059026: {'timestamp': '2026-06-05T09:12:08.840216Z', 'server_response': '{"orderId": "TM07202501260605144059026", "res": "True", "rstatus": true, "logic": "WBL", "anomaly": 0, "total_amount": 20.0, "skus": [{"tray_id": "21", "mrp": "10", "qty": 2, "sku_total": 20.0, "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500677-4669.png", "skuid": "4500677", "name": "Eat Bit Peanut  Chikki 32gm per peice", "door_id": ""}]}', 'order_id': 'TM07202501260605144059026', 'server_status': 'invoiceOrder'} (ID: 1780650728897-0)
[2026-06-05 14:42:09,418.418 INFO    ] {'server_response': {'orderId': 'TM07202501260605144059026', 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20.0, 'skus': [{'tray_id': '21', 'mrp': '10', 'qty': 2, 'sku_total': 20.0, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'skuid': '4500677', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'door_id': ''}]}, 'order_id': 'TM07202501260605144059026', 'server_status': 'invoiceOrder'}
[2026-06-05 14:42:09,420.420 INFO    ] 200
[2026-06-05 14:42:09,423.423 INFO    ] {"data":{"server_response":{"orderId":"TM07202501260605144059026","res":"true","rstatus":true,"logic":"WBL","anomaly":0,"total_amount":20,"skus":[{"tray_id":"21","mrp":"10","qty":2,"sku_total":20,"unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500677-4669.png","skuid":"4500677","name":"Eat Bit Peanut  Chikki 32gm per peice","door_id":""}]},"order_id":"TM07202501260605144059026","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 14:42:09,426.426 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM07202501260605144059026', 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20, 'skus': [{'tray_id': '21', 'skuid': '4500677', 'qty': 2, 'sku_total': 20, 'unit_price': '10', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png'}]}, 'order_id': 'TM07202501260605144059026', 'server_status': 'invoiceOrder'}}
[2026-06-05 14:42:09,429.429 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM07202501260605144059026', 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20, 'skus': [{'tray_id': '21', 'skuid': '4500677', 'qty': 2, 'sku_total': 20, 'unit_price': '10', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png'}]}, 'order_id': 'TM07202501260605144059026', 'server_status': 'invoiceOrder'}}
[2026-06-05 14:42:09,431.431 INFO    ] 2026-06-05 14:42:09
[2026-06-05 14:42:13,290.290 INFO    ] 200
[2026-06-05 14:42:13,292.292 INFO    ] {"orders": [], "orders_synced": [], "order_items_synced": [], "orders_data": [], "tray_synced": ["TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026", "TM07202501260605144059026"], "orders_data_synced": [], "order_items": [], "tray_sync": [], "status": true}
[2026-06-05 14:42:13,295.295 INFO    ] 2026-06-05 14:42:13
[2026-06-05 14:42:13,389.389 INFO    ] 200
[2026-06-05 14:42:13,391.391 INFO    ] True
[2026-06-05 14:42:13,394.394 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260605144059026
[2026-06-05 14:42:13,397.397 INFO    ] start order file deleted
[2026-06-05 14:42:13,400.400 INFO    ] Checking for system updates...
[2026-06-05 14:42:13,436.436 INFO    ] 200
[2026-06-05 14:42:13,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:42:13,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:42:13,495.495 INFO    ] No update needed
[2026-06-05 14:42:13,498.498 INFO    ] Checking for camera pi updates...
[2026-06-05 14:42:13,536.536 INFO    ] 200
[2026-06-05 14:42:13,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:42:13,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:42:13,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:42:13,615.615 INFO    ] No camera update needed
[2026-06-05 14:42:13,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:42:13,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:42:13,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:42:13,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:42:15,677.677 INFO    ] ================================================
[2026-06-05 14:42:15,696.696 INFO    ] Launching Daemon at Fri Jun  5 14:42:15 IST 2026
[2026-06-05 14:42:15,707.707 INFO    ] ================================================
[2026-06-05 14:42:16,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:42:16
[2026-06-05 14:42:16,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:42:17,267.267 INFO    ] Initializing speech engine...
[2026-06-05 14:42:17,274.274 INFO    ] 2026-06-05 14:42:17
[2026-06-05 14:42:17,558.558 INFO    ] 2026-06-05 14:42:17
[2026-06-05 14:42:17,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:42:18,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:42:18,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:42:19,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:42:19,062.062 INFO    ] time= 05/06/2026 14:42:19
[2026-06-05 14:42:19,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:42:19,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:42:19,183.183 INFO    ] No existing commands found in stream
[2026-06-05 14:42:24,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:42:24,214.214 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 14:42:24,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:42:24,920.920 INFO    ] Checking for system updates...
[2026-06-05 14:42:24,961.961 INFO    ] 200
[2026-06-05 14:42:24,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:42:25,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:42:25,027.027 INFO    ] No update needed
[2026-06-05 14:42:25,030.030 INFO    ] Checking for camera pi updates...
[2026-06-05 14:42:25,069.069 INFO    ] 200
[2026-06-05 14:42:25,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:42:25,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:42:25,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:42:25,164.164 INFO    ] No camera update needed
[2026-06-05 14:42:25,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:42:25,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:42:25,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:42:25,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:42:27,224.224 INFO    ] ================================================
[2026-06-05 14:42:27,242.242 INFO    ] Launching Daemon at Fri Jun  5 14:42:27 IST 2026
[2026-06-05 14:42:27,256.256 INFO    ] ================================================
[2026-06-05 14:42:27,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:42:27
[2026-06-05 14:42:28,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:42:28,885.885 INFO    ] Initializing speech engine...
[2026-06-05 14:42:28,896.896 INFO    ] 2026-06-05 14:42:28
[2026-06-05 14:42:29,171.171 INFO    ] 2026-06-05 14:42:29
[2026-06-05 14:42:29,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:42:29,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:42:29,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:42:29,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:42:29,687.687 INFO    ] time= 05/06/2026 14:42:29
[2026-06-05 14:42:29,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:42:29,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:42:29,999.999 INFO    ] No existing commands found in stream
[2026-06-05 14:42:35,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:42:35,020.020 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 14:42:39,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:42:39,067.067 INFO    ] Checking for system updates...
[2026-06-05 14:42:39,109.109 INFO    ] 200
[2026-06-05 14:42:39,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:42:39,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:42:39,169.169 INFO    ] No update needed
[2026-06-05 14:42:39,172.172 INFO    ] Checking for camera pi updates...
[2026-06-05 14:42:39,209.209 INFO    ] 200
[2026-06-05 14:42:39,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:42:39,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:42:39,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:42:39,309.309 INFO    ] No camera update needed
[2026-06-05 14:42:39,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:42:39,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:42:39,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:42:39,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:42:41,367.367 INFO    ] ================================================
[2026-06-05 14:42:41,383.383 INFO    ] Launching Daemon at Fri Jun  5 14:42:41 IST 2026
[2026-06-05 14:42:41,393.393 INFO    ] ================================================
[2026-06-05 14:42:42,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:42:42
[2026-06-05 14:42:42,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:42:42,888.888 INFO    ] Initializing speech engine...
[2026-06-05 14:42:42,903.903 INFO    ] 2026-06-05 14:42:42
[2026-06-05 14:42:43,184.184 INFO    ] 2026-06-05 14:42:43
[2026-06-05 14:42:43,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:42:43,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:42:43,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:42:43,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:42:43,559.559 INFO    ] time= 05/06/2026 14:42:43
[2026-06-05 14:42:43,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:42:43,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:42:43,683.683 INFO    ] No existing commands found in stream
[2026-06-05 14:42:48,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:42:48,706.706 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 14:42:49,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:42:49,251.251 INFO    ] Checking for system updates...
[2026-06-05 14:42:49,287.287 INFO    ] 200
[2026-06-05 14:42:49,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:42:49,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:42:49,350.350 INFO    ] No update needed
[2026-06-05 14:42:49,352.352 INFO    ] Checking for camera pi updates...
[2026-06-05 14:42:49,386.386 INFO    ] 200
[2026-06-05 14:42:49,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:42:49,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:42:49,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:42:49,491.491 INFO    ] No camera update needed
[2026-06-05 14:42:49,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:42:49,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:42:49,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:42:49,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:42:51,546.546 INFO    ] ================================================
[2026-06-05 14:42:51,562.562 INFO    ] Launching Daemon at Fri Jun  5 14:42:51 IST 2026
[2026-06-05 14:42:51,574.574 INFO    ] ================================================
[2026-06-05 14:42:52,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:42:52
[2026-06-05 14:42:52,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:42:53,008.008 INFO    ] Initializing speech engine...
[2026-06-05 14:42:53,021.021 INFO    ] 2026-06-05 14:42:53
[2026-06-05 14:42:53,289.289 INFO    ] 2026-06-05 14:42:53
[2026-06-05 14:42:53,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:42:53,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:42:53,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:42:53,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:42:53,662.662 INFO    ] time= 05/06/2026 14:42:53
[2026-06-05 14:42:53,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:42:53,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:42:53,787.787 INFO    ] No existing commands found in stream
[2026-06-05 14:42:58,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:42:58,826.826 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 14:43:01,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:43:01,493.493 INFO    ] Checking for system updates...
[2026-06-05 14:43:01,537.537 INFO    ] 200
[2026-06-05 14:43:01,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:01,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:43:01,603.603 INFO    ] No update needed
[2026-06-05 14:43:01,606.606 INFO    ] Checking for camera pi updates...
[2026-06-05 14:43:01,644.644 INFO    ] 200
[2026-06-05 14:43:01,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:01,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:43:01,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:43:01,735.735 INFO    ] No camera update needed
[2026-06-05 14:43:01,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:43:01,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:43:01,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:43:01,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:43:03,796.796 INFO    ] ================================================
[2026-06-05 14:43:03,811.811 INFO    ] Launching Daemon at Fri Jun  5 14:43:03 IST 2026
[2026-06-05 14:43:03,822.822 INFO    ] ================================================
[2026-06-05 14:43:04,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:43:04
[2026-06-05 14:43:05,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:43:05,436.436 INFO    ] Initializing speech engine...
[2026-06-05 14:43:05,449.449 INFO    ] 2026-06-05 14:43:05
[2026-06-05 14:43:05,728.728 INFO    ] 2026-06-05 14:43:05
[2026-06-05 14:43:05,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:43:06,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:43:06,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:43:06,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:43:06,230.230 INFO    ] time= 05/06/2026 14:43:06
[2026-06-05 14:43:06,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:43:06,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:43:06,430.430 INFO    ] No existing commands found in stream
[2026-06-05 14:43:11,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:43:11,458.458 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 14:43:12,697.697 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:43:12,700.700 INFO    ] Checking for system updates...
[2026-06-05 14:43:12,737.737 INFO    ] 200
[2026-06-05 14:43:12,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:12,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:43:12,798.798 INFO    ] No update needed
[2026-06-05 14:43:12,800.800 INFO    ] Checking for camera pi updates...
[2026-06-05 14:43:12,835.835 INFO    ] 200
[2026-06-05 14:43:12,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:12,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:43:12,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:43:12,927.927 INFO    ] No camera update needed
[2026-06-05 14:43:12,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:43:12,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:43:12,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:43:12,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:43:14,986.986 INFO    ] ================================================
[2026-06-05 14:43:15,001.001 INFO    ] Launching Daemon at Fri Jun  5 14:43:14 IST 2026
[2026-06-05 14:43:15,013.013 INFO    ] ================================================
[2026-06-05 14:43:15,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:43:15
[2026-06-05 14:43:16,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:43:16,599.599 INFO    ] Initializing speech engine...
[2026-06-05 14:43:16,609.609 INFO    ] 2026-06-05 14:43:16
[2026-06-05 14:43:16,884.884 INFO    ] 2026-06-05 14:43:16
[2026-06-05 14:43:16,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:43:18,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:43:18,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:43:18,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:43:18,810.810 INFO    ] time= 05/06/2026 14:43:18
[2026-06-05 14:43:18,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:43:18,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:43:18,908.908 INFO    ] No existing commands found in stream
[2026-06-05 14:43:23,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:43:23,925.925 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 14:43:26,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:43:26,971.971 INFO    ] Checking for system updates...
[2026-06-05 14:43:27,012.012 INFO    ] 200
[2026-06-05 14:43:27,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:27,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:43:27,077.077 INFO    ] No update needed
[2026-06-05 14:43:27,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 14:43:27,118.118 INFO    ] 200
[2026-06-05 14:43:27,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:27,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:43:27,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:43:27,214.214 INFO    ] No camera update needed
[2026-06-05 14:43:27,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:43:27,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:43:27,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:43:27,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:43:29,272.272 INFO    ] ================================================
[2026-06-05 14:43:29,287.287 INFO    ] Launching Daemon at Fri Jun  5 14:43:29 IST 2026
[2026-06-05 14:43:29,298.298 INFO    ] ================================================
[2026-06-05 14:43:29,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:43:29
[2026-06-05 14:43:30,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:43:30,928.928 INFO    ] Initializing speech engine...
[2026-06-05 14:43:30,936.936 INFO    ] 2026-06-05 14:43:30
[2026-06-05 14:43:31,235.235 INFO    ] 2026-06-05 14:43:31
[2026-06-05 14:43:31,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:43:31,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:43:31,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:43:31,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:43:31,630.630 INFO    ] time= 05/06/2026 14:43:31
[2026-06-05 14:43:31,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:43:31,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:43:31,835.835 INFO    ] No existing commands found in stream
[2026-06-05 14:43:36,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:43:36,858.858 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 14:43:38,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:43:38,208.208 INFO    ] Checking for system updates...
[2026-06-05 14:43:38,244.244 INFO    ] 200
[2026-06-05 14:43:38,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:38,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:43:38,302.302 INFO    ] No update needed
[2026-06-05 14:43:38,304.304 INFO    ] Checking for camera pi updates...
[2026-06-05 14:43:38,338.338 INFO    ] 200
[2026-06-05 14:43:38,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:38,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:43:38,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:43:38,422.422 INFO    ] No camera update needed
[2026-06-05 14:43:38,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:43:38,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:43:38,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:43:38,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:43:40,480.480 INFO    ] ================================================
[2026-06-05 14:43:40,496.496 INFO    ] Launching Daemon at Fri Jun  5 14:43:40 IST 2026
[2026-06-05 14:43:40,506.506 INFO    ] ================================================
[2026-06-05 14:43:41,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:43:41
[2026-06-05 14:43:41,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:43:42,089.089 INFO    ] Initializing speech engine...
[2026-06-05 14:43:42,098.098 INFO    ] 2026-06-05 14:43:42
[2026-06-05 14:43:42,383.383 INFO    ] 2026-06-05 14:43:42
[2026-06-05 14:43:42,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:43:42,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:43:42,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:43:42,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:43:42,870.870 INFO    ] time= 05/06/2026 14:43:42
[2026-06-05 14:43:42,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:43:42,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:43:43,085.085 INFO    ] No existing commands found in stream
[2026-06-05 14:43:48,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:43:48,116.116 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 14:43:49,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:43:49,123.123 INFO    ] Checking for system updates...
[2026-06-05 14:43:49,160.160 INFO    ] 200
[2026-06-05 14:43:49,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:49,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:43:49,218.218 INFO    ] No update needed
[2026-06-05 14:43:49,220.220 INFO    ] Checking for camera pi updates...
[2026-06-05 14:43:49,254.254 INFO    ] 200
[2026-06-05 14:43:49,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:43:49,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:43:49,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:43:49,350.350 INFO    ] No camera update needed
[2026-06-05 14:43:49,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:43:49,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:43:49,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:43:49,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:43:51,406.406 INFO    ] ================================================
[2026-06-05 14:43:51,421.421 INFO    ] Launching Daemon at Fri Jun  5 14:43:51 IST 2026
[2026-06-05 14:43:51,432.432 INFO    ] ================================================
[2026-06-05 14:43:52,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:43:52
[2026-06-05 14:43:52,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:43:52,872.872 INFO    ] Initializing speech engine...
[2026-06-05 14:43:52,895.895 INFO    ] 2026-06-05 14:43:52
[2026-06-05 14:43:53,175.175 INFO    ] 2026-06-05 14:43:53
[2026-06-05 14:43:53,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:43:53,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:43:53,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:43:53,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:43:53,557.557 INFO    ] time= 05/06/2026 14:43:53
[2026-06-05 14:43:53,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:43:53,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:43:53,690.690 INFO    ] No existing commands found in stream
[2026-06-05 14:43:58,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:43:58,705.705 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 14:44:00,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:44:00,438.438 INFO    ] Checking for system updates...
[2026-06-05 14:44:00,473.473 INFO    ] 200
[2026-06-05 14:44:00,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:00,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:44:00,532.532 INFO    ] No update needed
[2026-06-05 14:44:00,534.534 INFO    ] Checking for camera pi updates...
[2026-06-05 14:44:00,568.568 INFO    ] 200
[2026-06-05 14:44:00,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:00,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:44:00,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:44:00,662.662 INFO    ] No camera update needed
[2026-06-05 14:44:00,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:44:00,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:44:00,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:44:00,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:44:02,720.720 INFO    ] ================================================
[2026-06-05 14:44:02,735.735 INFO    ] Launching Daemon at Fri Jun  5 14:44:02 IST 2026
[2026-06-05 14:44:02,746.746 INFO    ] ================================================
[2026-06-05 14:44:03,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:44:03
[2026-06-05 14:44:03,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:44:04,207.207 INFO    ] Initializing speech engine...
[2026-06-05 14:44:04,231.231 INFO    ] 2026-06-05 14:44:04
[2026-06-05 14:44:04,503.503 INFO    ] 2026-06-05 14:44:04
[2026-06-05 14:44:04,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:44:04,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:44:04,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:44:04,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:44:04,926.926 INFO    ] time= 05/06/2026 14:44:04
[2026-06-05 14:44:04,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:44:04,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:44:05,114.114 INFO    ] No existing commands found in stream
[2026-06-05 14:44:10,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:44:10,143.143 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 14:44:12,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:44:12,976.976 INFO    ] Checking for system updates...
[2026-06-05 14:44:13,011.011 INFO    ] 200
[2026-06-05 14:44:13,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:13,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:44:13,069.069 INFO    ] No update needed
[2026-06-05 14:44:13,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 14:44:13,112.112 INFO    ] 200
[2026-06-05 14:44:13,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:13,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:44:13,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:44:13,305.305 INFO    ] No camera update needed
[2026-06-05 14:44:13,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:44:13,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:44:13,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:44:13,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:44:15,361.361 INFO    ] ================================================
[2026-06-05 14:44:15,376.376 INFO    ] Launching Daemon at Fri Jun  5 14:44:15 IST 2026
[2026-06-05 14:44:15,387.387 INFO    ] ================================================
[2026-06-05 14:44:15,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:44:15
[2026-06-05 14:44:16,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:44:16,832.832 INFO    ] Initializing speech engine...
[2026-06-05 14:44:16,847.847 INFO    ] 2026-06-05 14:44:16
[2026-06-05 14:44:17,111.111 INFO    ] 2026-06-05 14:44:17
[2026-06-05 14:44:17,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:44:18,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:44:18,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:44:19,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:44:19,087.087 INFO    ] time= 05/06/2026 14:44:19
[2026-06-05 14:44:19,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:44:19,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:44:19,204.204 INFO    ] No existing commands found in stream
[2026-06-05 14:44:24,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:44:24,217.217 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 14:44:27,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:44:27,227.227 INFO    ] Checking for system updates...
[2026-06-05 14:44:27,263.263 INFO    ] 200
[2026-06-05 14:44:27,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:27,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:44:27,331.331 INFO    ] No update needed
[2026-06-05 14:44:27,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 14:44:27,369.369 INFO    ] 200
[2026-06-05 14:44:27,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:27,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:44:27,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:44:27,459.459 INFO    ] No camera update needed
[2026-06-05 14:44:27,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:44:27,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:44:27,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:44:27,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:44:29,518.518 INFO    ] ================================================
[2026-06-05 14:44:29,534.534 INFO    ] Launching Daemon at Fri Jun  5 14:44:29 IST 2026
[2026-06-05 14:44:29,544.544 INFO    ] ================================================
[2026-06-05 14:44:30,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:44:30
[2026-06-05 14:44:30,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:44:31,007.007 INFO    ] Initializing speech engine...
[2026-06-05 14:44:31,016.016 INFO    ] 2026-06-05 14:44:31
[2026-06-05 14:44:31,290.290 INFO    ] 2026-06-05 14:44:31
[2026-06-05 14:44:31,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:44:31,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:44:31,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:44:31,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:44:31,693.693 INFO    ] time= 05/06/2026 14:44:31
[2026-06-05 14:44:31,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:44:31,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:44:31,794.794 INFO    ] No existing commands found in stream
[2026-06-05 14:44:36,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:44:36,812.812 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 14:44:37,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:44:37,825.825 INFO    ] Checking for system updates...
[2026-06-05 14:44:37,861.861 INFO    ] 200
[2026-06-05 14:44:37,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:37,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:44:37,918.918 INFO    ] No update needed
[2026-06-05 14:44:37,920.920 INFO    ] Checking for camera pi updates...
[2026-06-05 14:44:37,954.954 INFO    ] 200
[2026-06-05 14:44:37,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:37,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:44:38,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:44:38,040.040 INFO    ] No camera update needed
[2026-06-05 14:44:38,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:44:38,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:44:38,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:44:38,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:44:40,096.096 INFO    ] ================================================
[2026-06-05 14:44:40,112.112 INFO    ] Launching Daemon at Fri Jun  5 14:44:40 IST 2026
[2026-06-05 14:44:40,123.123 INFO    ] ================================================
[2026-06-05 14:44:40,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:44:40
[2026-06-05 14:44:41,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:44:41,540.540 INFO    ] Initializing speech engine...
[2026-06-05 14:44:41,552.552 INFO    ] 2026-06-05 14:44:41
[2026-06-05 14:44:41,834.834 INFO    ] 2026-06-05 14:44:41
[2026-06-05 14:44:41,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:44:42,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:44:42,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:44:42,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:44:42,399.399 INFO    ] time= 05/06/2026 14:44:42
[2026-06-05 14:44:42,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:44:42,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:44:42,561.561 INFO    ] No existing commands found in stream
[2026-06-05 14:44:47,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:44:47,583.583 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 14:44:50,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:44:50,656.656 INFO    ] Checking for system updates...
[2026-06-05 14:44:50,693.693 INFO    ] 200
[2026-06-05 14:44:50,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:50,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:44:50,762.762 INFO    ] No update needed
[2026-06-05 14:44:50,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 14:44:50,800.800 INFO    ] 200
[2026-06-05 14:44:50,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:44:50,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:44:50,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:44:50,897.897 INFO    ] No camera update needed
[2026-06-05 14:44:50,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:44:50,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:44:50,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:44:50,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:44:52,953.953 INFO    ] ================================================
[2026-06-05 14:44:52,968.968 INFO    ] Launching Daemon at Fri Jun  5 14:44:52 IST 2026
[2026-06-05 14:44:52,979.979 INFO    ] ================================================
[2026-06-05 14:44:53,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:44:53
[2026-06-05 14:44:54,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:44:54,502.502 INFO    ] Initializing speech engine...
[2026-06-05 14:44:54,508.508 INFO    ] 2026-06-05 14:44:54
[2026-06-05 14:44:54,772.772 INFO    ] 2026-06-05 14:44:54
[2026-06-05 14:44:54,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:44:55,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:44:55,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:44:55,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:44:55,232.232 INFO    ] time= 05/06/2026 14:44:55
[2026-06-05 14:44:55,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:44:55,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:44:55,441.441 INFO    ] No existing commands found in stream
[2026-06-05 14:45:00,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:45:00,470.470 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 14:45:03,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:45:03,778.778 INFO    ] Checking for system updates...
[2026-06-05 14:45:03,815.815 INFO    ] 200
[2026-06-05 14:45:03,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:03,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:45:03,874.874 INFO    ] No update needed
[2026-06-05 14:45:03,877.877 INFO    ] Checking for camera pi updates...
[2026-06-05 14:45:03,911.911 INFO    ] 200
[2026-06-05 14:45:03,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:03,955.955 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:45:04,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:45:04,004.004 INFO    ] No camera update needed
[2026-06-05 14:45:04,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:45:04,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:45:04,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:45:04,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:45:06,064.064 INFO    ] ================================================
[2026-06-05 14:45:06,080.080 INFO    ] Launching Daemon at Fri Jun  5 14:45:06 IST 2026
[2026-06-05 14:45:06,090.090 INFO    ] ================================================
[2026-06-05 14:45:06,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:45:06
[2026-06-05 14:45:07,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:45:07,571.571 INFO    ] Initializing speech engine...
[2026-06-05 14:45:07,587.587 INFO    ] 2026-06-05 14:45:07
[2026-06-05 14:45:07,873.873 INFO    ] 2026-06-05 14:45:07
[2026-06-05 14:45:07,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:45:08,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:45:08,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:45:08,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:45:08,662.662 INFO    ] time= 05/06/2026 14:45:08
[2026-06-05 14:45:08,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:45:08,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:45:08,925.925 INFO    ] No existing commands found in stream
[2026-06-05 14:45:13,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:45:13,953.953 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 14:45:14,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:45:14,974.974 INFO    ] Checking for system updates...
[2026-06-05 14:45:15,016.016 INFO    ] 200
[2026-06-05 14:45:15,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:15,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:45:15,074.074 INFO    ] No update needed
[2026-06-05 14:45:15,077.077 INFO    ] Checking for camera pi updates...
[2026-06-05 14:45:15,110.110 INFO    ] 200
[2026-06-05 14:45:15,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:15,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:45:15,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:45:15,204.204 INFO    ] No camera update needed
[2026-06-05 14:45:15,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:45:15,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:45:15,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:45:15,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:45:17,261.261 INFO    ] ================================================
[2026-06-05 14:45:17,276.276 INFO    ] Launching Daemon at Fri Jun  5 14:45:17 IST 2026
[2026-06-05 14:45:17,287.287 INFO    ] ================================================
[2026-06-05 14:45:17,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:45:17
[2026-06-05 14:45:18,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:45:18,702.702 INFO    ] Initializing speech engine...
[2026-06-05 14:45:18,710.710 INFO    ] 2026-06-05 14:45:18
[2026-06-05 14:45:19,002.002 INFO    ] 2026-06-05 14:45:18
[2026-06-05 14:45:19,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:45:19,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:45:19,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:45:19,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:45:19,492.492 INFO    ] time= 05/06/2026 14:45:19
[2026-06-05 14:45:19,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:45:19,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:45:19,700.700 INFO    ] No existing commands found in stream
[2026-06-05 14:45:24,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:45:24,715.715 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 14:45:28,850.850 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:45:28,852.852 INFO    ] Checking for system updates...
[2026-06-05 14:45:28,888.888 INFO    ] 200
[2026-06-05 14:45:28,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:28,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:45:28,946.946 INFO    ] No update needed
[2026-06-05 14:45:28,948.948 INFO    ] Checking for camera pi updates...
[2026-06-05 14:45:28,982.982 INFO    ] 200
[2026-06-05 14:45:28,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:29,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:45:29,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:45:29,077.077 INFO    ] No camera update needed
[2026-06-05 14:45:29,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:45:29,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:45:29,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:45:29,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:45:31,134.134 INFO    ] ================================================
[2026-06-05 14:45:31,149.149 INFO    ] Launching Daemon at Fri Jun  5 14:45:31 IST 2026
[2026-06-05 14:45:31,160.160 INFO    ] ================================================
[2026-06-05 14:45:31,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:45:31
[2026-06-05 14:45:32,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:45:32,700.700 INFO    ] Initializing speech engine...
[2026-06-05 14:45:32,707.707 INFO    ] 2026-06-05 14:45:32
[2026-06-05 14:45:32,992.992 INFO    ] 2026-06-05 14:45:32
[2026-06-05 14:45:33,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:45:33,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:45:33,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:45:33,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:45:33,391.391 INFO    ] time= 05/06/2026 14:45:33
[2026-06-05 14:45:33,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:45:33,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:45:33,503.503 INFO    ] No existing commands found in stream
[2026-06-05 14:45:38,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:45:38,520.520 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 14:45:39,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:45:39,416.416 INFO    ] Checking for system updates...
[2026-06-05 14:45:39,454.454 INFO    ] 200
[2026-06-05 14:45:39,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:39,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:45:39,514.514 INFO    ] No update needed
[2026-06-05 14:45:39,517.517 INFO    ] Checking for camera pi updates...
[2026-06-05 14:45:39,553.553 INFO    ] 200
[2026-06-05 14:45:39,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:39,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:45:39,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:45:39,647.647 INFO    ] No camera update needed
[2026-06-05 14:45:39,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:45:39,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:45:39,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:45:39,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:45:41,703.703 INFO    ] ================================================
[2026-06-05 14:45:41,719.719 INFO    ] Launching Daemon at Fri Jun  5 14:45:41 IST 2026
[2026-06-05 14:45:41,730.730 INFO    ] ================================================
[2026-06-05 14:45:42,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:45:42
[2026-06-05 14:45:42,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:45:43,181.181 INFO    ] Initializing speech engine...
[2026-06-05 14:45:43,196.196 INFO    ] 2026-06-05 14:45:43
[2026-06-05 14:45:43,462.462 INFO    ] 2026-06-05 14:45:43
[2026-06-05 14:45:43,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:45:43,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:45:43,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:45:44,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:45:44,175.175 INFO    ] time= 05/06/2026 14:45:44
[2026-06-05 14:45:44,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:45:44,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:45:44,394.394 INFO    ] No existing commands found in stream
[2026-06-05 14:45:49,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:45:49,428.428 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 14:45:50,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:45:50,582.582 INFO    ] Checking for system updates...
[2026-06-05 14:45:50,622.622 INFO    ] 200
[2026-06-05 14:45:50,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:50,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:45:50,687.687 INFO    ] No update needed
[2026-06-05 14:45:50,689.689 INFO    ] Checking for camera pi updates...
[2026-06-05 14:45:50,724.724 INFO    ] 200
[2026-06-05 14:45:50,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:45:50,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:45:50,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:45:50,803.803 INFO    ] No camera update needed
[2026-06-05 14:45:50,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:45:50,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:45:50,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:45:50,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:45:52,861.861 INFO    ] ================================================
[2026-06-05 14:45:52,877.877 INFO    ] Launching Daemon at Fri Jun  5 14:45:52 IST 2026
[2026-06-05 14:45:52,888.888 INFO    ] ================================================
[2026-06-05 14:45:53,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:45:53
[2026-06-05 14:45:54,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:45:54,333.333 INFO    ] Initializing speech engine...
[2026-06-05 14:45:54,343.343 INFO    ] 2026-06-05 14:45:54
[2026-06-05 14:45:54,593.593 INFO    ] 2026-06-05 14:45:54
[2026-06-05 14:45:54,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:45:54,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:45:54,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:45:55,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:45:55,099.099 INFO    ] time= 05/06/2026 14:45:55
[2026-06-05 14:45:55,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:45:55,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:45:55,318.318 INFO    ] No existing commands found in stream
[2026-06-05 14:46:00,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:46:00,336.336 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 14:46:01,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:46:01,066.066 INFO    ] Checking for system updates...
[2026-06-05 14:46:01,107.107 INFO    ] 200
[2026-06-05 14:46:01,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:01,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:46:01,165.165 INFO    ] No update needed
[2026-06-05 14:46:01,168.168 INFO    ] Checking for camera pi updates...
[2026-06-05 14:46:01,202.202 INFO    ] 200
[2026-06-05 14:46:01,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:01,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:46:01,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:46:01,288.288 INFO    ] No camera update needed
[2026-06-05 14:46:01,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:46:01,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:46:01,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:46:01,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:46:03,347.347 INFO    ] ================================================
[2026-06-05 14:46:03,362.362 INFO    ] Launching Daemon at Fri Jun  5 14:46:03 IST 2026
[2026-06-05 14:46:03,373.373 INFO    ] ================================================
[2026-06-05 14:46:04,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:46:04
[2026-06-05 14:46:04,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:46:04,925.925 INFO    ] Initializing speech engine...
[2026-06-05 14:46:04,934.934 INFO    ] 2026-06-05 14:46:04
[2026-06-05 14:46:05,180.180 INFO    ] 2026-06-05 14:46:05
[2026-06-05 14:46:05,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:46:05,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:46:05,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:46:05,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:46:05,552.552 INFO    ] time= 05/06/2026 14:46:05
[2026-06-05 14:46:05,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:46:05,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:46:05,739.739 INFO    ] No existing commands found in stream
[2026-06-05 14:46:10,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:46:10,764.764 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 14:46:11,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:46:11,273.273 INFO    ] Checking for system updates...
[2026-06-05 14:46:11,309.309 INFO    ] 200
[2026-06-05 14:46:11,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:11,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:46:11,366.366 INFO    ] No update needed
[2026-06-05 14:46:11,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 14:46:11,405.405 INFO    ] 200
[2026-06-05 14:46:11,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:11,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:46:11,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:46:11,500.500 INFO    ] No camera update needed
[2026-06-05 14:46:11,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:46:11,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:46:11,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:46:11,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:46:13,557.557 INFO    ] ================================================
[2026-06-05 14:46:13,572.572 INFO    ] Launching Daemon at Fri Jun  5 14:46:13 IST 2026
[2026-06-05 14:46:13,583.583 INFO    ] ================================================
[2026-06-05 14:46:14,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:46:14
[2026-06-05 14:46:14,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:46:15,057.057 INFO    ] Initializing speech engine...
[2026-06-05 14:46:15,067.067 INFO    ] 2026-06-05 14:46:15
[2026-06-05 14:46:15,333.333 INFO    ] 2026-06-05 14:46:15
[2026-06-05 14:46:15,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:46:15,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:46:15,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:46:15,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:46:15,741.741 INFO    ] time= 05/06/2026 14:46:15
[2026-06-05 14:46:15,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:46:15,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:46:15,891.891 INFO    ] No existing commands found in stream
[2026-06-05 14:46:20,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:46:20,924.924 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 14:46:23,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:46:23,713.713 INFO    ] Checking for system updates...
[2026-06-05 14:46:23,750.750 INFO    ] 200
[2026-06-05 14:46:23,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:23,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:46:23,807.807 INFO    ] No update needed
[2026-06-05 14:46:23,809.809 INFO    ] Checking for camera pi updates...
[2026-06-05 14:46:23,847.847 INFO    ] 200
[2026-06-05 14:46:23,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:23,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:46:24,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:46:24,041.041 INFO    ] No camera update needed
[2026-06-05 14:46:24,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:46:24,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:46:24,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:46:24,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:46:26,104.104 INFO    ] ================================================
[2026-06-05 14:46:26,119.119 INFO    ] Launching Daemon at Fri Jun  5 14:46:26 IST 2026
[2026-06-05 14:46:26,130.130 INFO    ] ================================================
[2026-06-05 14:46:26,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:46:26
[2026-06-05 14:46:27,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:46:27,542.542 INFO    ] Initializing speech engine...
[2026-06-05 14:46:27,568.568 INFO    ] 2026-06-05 14:46:27
[2026-06-05 14:46:27,837.837 INFO    ] 2026-06-05 14:46:27
[2026-06-05 14:46:27,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:46:28,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:46:28,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:46:28,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:46:28,245.245 INFO    ] time= 05/06/2026 14:46:28
[2026-06-05 14:46:28,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:46:28,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:46:28,424.424 INFO    ] No existing commands found in stream
[2026-06-05 14:46:33,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:46:33,457.457 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 14:46:33,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:46:33,936.936 INFO    ] Checking for system updates...
[2026-06-05 14:46:33,971.971 INFO    ] 200
[2026-06-05 14:46:33,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:34,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:46:34,029.029 INFO    ] No update needed
[2026-06-05 14:46:34,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 14:46:34,065.065 INFO    ] 200
[2026-06-05 14:46:34,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:34,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:46:34,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:46:34,160.160 INFO    ] No camera update needed
[2026-06-05 14:46:34,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:46:34,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:46:34,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:46:34,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:46:36,218.218 INFO    ] ================================================
[2026-06-05 14:46:36,234.234 INFO    ] Launching Daemon at Fri Jun  5 14:46:36 IST 2026
[2026-06-05 14:46:36,246.246 INFO    ] ================================================
[2026-06-05 14:46:36,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:46:36
[2026-06-05 14:46:37,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:46:37,822.822 INFO    ] Initializing speech engine...
[2026-06-05 14:46:37,831.831 INFO    ] 2026-06-05 14:46:37
[2026-06-05 14:46:38,106.106 INFO    ] 2026-06-05 14:46:38
[2026-06-05 14:46:38,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:46:38,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:46:38,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:46:38,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:46:38,660.660 INFO    ] time= 05/06/2026 14:46:38
[2026-06-05 14:46:38,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:46:38,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:46:38,818.818 INFO    ] No existing commands found in stream
[2026-06-05 14:46:43,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:46:43,840.840 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 14:46:49,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:46:49,340.340 INFO    ] Checking for system updates...
[2026-06-05 14:46:49,387.387 INFO    ] 200
[2026-06-05 14:46:49,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:49,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:46:49,452.452 INFO    ] No update needed
[2026-06-05 14:46:49,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 14:46:49,492.492 INFO    ] 200
[2026-06-05 14:46:49,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:46:49,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:46:49,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:46:49,582.582 INFO    ] No camera update needed
[2026-06-05 14:46:49,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:46:49,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:46:49,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:46:49,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:46:51,640.640 INFO    ] ================================================
[2026-06-05 14:46:51,655.655 INFO    ] Launching Daemon at Fri Jun  5 14:46:51 IST 2026
[2026-06-05 14:46:51,666.666 INFO    ] ================================================
[2026-06-05 14:46:52,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:46:52
[2026-06-05 14:46:53,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:46:53,344.344 INFO    ] Initializing speech engine...
[2026-06-05 14:46:53,358.358 INFO    ] 2026-06-05 14:46:53
[2026-06-05 14:46:53,624.624 INFO    ] 2026-06-05 14:46:53
[2026-06-05 14:46:53,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:46:53,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:46:53,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:46:54,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:46:54,156.156 INFO    ] time= 05/06/2026 14:46:54
[2026-06-05 14:46:54,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:46:54,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:46:54,300.300 INFO    ] No existing commands found in stream
[2026-06-05 14:46:59,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:46:59,322.322 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 14:47:02,594.594 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:47:02,597.597 INFO    ] Checking for system updates...
[2026-06-05 14:47:02,640.640 INFO    ] 200
[2026-06-05 14:47:02,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:02,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:47:02,706.706 INFO    ] No update needed
[2026-06-05 14:47:02,709.709 INFO    ] Checking for camera pi updates...
[2026-06-05 14:47:02,748.748 INFO    ] 200
[2026-06-05 14:47:02,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:02,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:47:02,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:47:02,856.856 INFO    ] No camera update needed
[2026-06-05 14:47:02,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:47:02,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:47:02,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:47:02,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:47:04,930.930 INFO    ] ================================================
[2026-06-05 14:47:04,946.946 INFO    ] Launching Daemon at Fri Jun  5 14:47:04 IST 2026
[2026-06-05 14:47:04,957.957 INFO    ] ================================================
[2026-06-05 14:47:05,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:47:05
[2026-06-05 14:47:06,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:47:06,374.374 INFO    ] Initializing speech engine...
[2026-06-05 14:47:06,390.390 INFO    ] 2026-06-05 14:47:06
[2026-06-05 14:47:06,670.670 INFO    ] 2026-06-05 14:47:06
[2026-06-05 14:47:06,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:47:06,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:47:06,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:47:07,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:47:07,195.195 INFO    ] time= 05/06/2026 14:47:07
[2026-06-05 14:47:07,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:47:07,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:47:07,392.392 INFO    ] No existing commands found in stream
[2026-06-05 14:47:12,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:47:12,427.427 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 14:47:15,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:47:15,140.140 INFO    ] Checking for system updates...
[2026-06-05 14:47:15,178.178 INFO    ] 200
[2026-06-05 14:47:15,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:15,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:47:15,237.237 INFO    ] No update needed
[2026-06-05 14:47:15,240.240 INFO    ] Checking for camera pi updates...
[2026-06-05 14:47:15,276.276 INFO    ] 200
[2026-06-05 14:47:15,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:15,325.325 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:47:15,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:47:15,368.368 INFO    ] No camera update needed
[2026-06-05 14:47:15,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:47:15,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:47:15,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:47:15,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:47:17,425.425 INFO    ] ================================================
[2026-06-05 14:47:17,440.440 INFO    ] Launching Daemon at Fri Jun  5 14:47:17 IST 2026
[2026-06-05 14:47:17,451.451 INFO    ] ================================================
[2026-06-05 14:47:18,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:47:18
[2026-06-05 14:47:18,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:47:18,913.913 INFO    ] Initializing speech engine...
[2026-06-05 14:47:18,922.922 INFO    ] 2026-06-05 14:47:18
[2026-06-05 14:47:19,182.182 INFO    ] 2026-06-05 14:47:19
[2026-06-05 14:47:19,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:47:19,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:47:19,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:47:19,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:47:19,641.641 INFO    ] time= 05/06/2026 14:47:19
[2026-06-05 14:47:19,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:47:19,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:47:19,865.865 INFO    ] No existing commands found in stream
[2026-06-05 14:47:24,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:47:24,889.889 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 14:47:28,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:47:28,577.577 INFO    ] Checking for system updates...
[2026-06-05 14:47:28,614.614 INFO    ] 200
[2026-06-05 14:47:28,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:28,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:47:28,674.674 INFO    ] No update needed
[2026-06-05 14:47:28,676.676 INFO    ] Checking for camera pi updates...
[2026-06-05 14:47:28,711.711 INFO    ] 200
[2026-06-05 14:47:28,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:28,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:47:28,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:47:28,817.817 INFO    ] No camera update needed
[2026-06-05 14:47:28,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:47:28,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:47:28,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:47:28,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:47:30,872.872 INFO    ] ================================================
[2026-06-05 14:47:30,888.888 INFO    ] Launching Daemon at Fri Jun  5 14:47:30 IST 2026
[2026-06-05 14:47:30,899.899 INFO    ] ================================================
[2026-06-05 14:47:31,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:47:31
[2026-06-05 14:47:32,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:47:32,398.398 INFO    ] Initializing speech engine...
[2026-06-05 14:47:32,422.422 INFO    ] 2026-06-05 14:47:32
[2026-06-05 14:47:32,707.707 INFO    ] 2026-06-05 14:47:32
[2026-06-05 14:47:32,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:47:32,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:47:32,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:47:33,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:47:33,108.108 INFO    ] time= 05/06/2026 14:47:33
[2026-06-05 14:47:33,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:47:33,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:47:33,281.281 INFO    ] No existing commands found in stream
[2026-06-05 14:47:38,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:47:38,309.309 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 14:47:41,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:47:41,988.988 INFO    ] Checking for system updates...
[2026-06-05 14:47:42,028.028 INFO    ] 200
[2026-06-05 14:47:42,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:42,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:47:42,086.086 INFO    ] No update needed
[2026-06-05 14:47:42,089.089 INFO    ] Checking for camera pi updates...
[2026-06-05 14:47:42,122.122 INFO    ] 200
[2026-06-05 14:47:42,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:42,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:47:42,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:47:42,216.216 INFO    ] No camera update needed
[2026-06-05 14:47:42,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:47:42,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:47:42,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:47:42,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:47:44,270.270 INFO    ] ================================================
[2026-06-05 14:47:44,285.285 INFO    ] Launching Daemon at Fri Jun  5 14:47:44 IST 2026
[2026-06-05 14:47:44,296.296 INFO    ] ================================================
[2026-06-05 14:47:44,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:47:44
[2026-06-05 14:47:45,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:47:45,716.716 INFO    ] Initializing speech engine...
[2026-06-05 14:47:45,729.729 INFO    ] 2026-06-05 14:47:45
[2026-06-05 14:47:45,977.977 INFO    ] 2026-06-05 14:47:45
[2026-06-05 14:47:46,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:47:46,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:47:46,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:47:46,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:47:46,437.437 INFO    ] time= 05/06/2026 14:47:46
[2026-06-05 14:47:46,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:47:46,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:47:46,611.611 INFO    ] No existing commands found in stream
[2026-06-05 14:47:51,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:47:51,646.646 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 14:47:54,342.342 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:47:54,345.345 INFO    ] Checking for system updates...
[2026-06-05 14:47:54,387.387 INFO    ] 200
[2026-06-05 14:47:54,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:54,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:47:54,444.444 INFO    ] No update needed
[2026-06-05 14:47:54,447.447 INFO    ] Checking for camera pi updates...
[2026-06-05 14:47:54,481.481 INFO    ] 200
[2026-06-05 14:47:54,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:47:54,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:47:54,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:47:54,574.574 INFO    ] No camera update needed
[2026-06-05 14:47:54,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:47:54,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:47:54,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:47:54,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:47:56,633.633 INFO    ] ================================================
[2026-06-05 14:47:56,648.648 INFO    ] Launching Daemon at Fri Jun  5 14:47:56 IST 2026
[2026-06-05 14:47:56,660.660 INFO    ] ================================================
[2026-06-05 14:47:57,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:47:57
[2026-06-05 14:47:57,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:47:58,059.059 INFO    ] Initializing speech engine...
[2026-06-05 14:47:58,071.071 INFO    ] 2026-06-05 14:47:58
[2026-06-05 14:47:58,337.337 INFO    ] 2026-06-05 14:47:58
[2026-06-05 14:47:58,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:47:58,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:47:58,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:47:58,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:47:58,715.715 INFO    ] time= 05/06/2026 14:47:58
[2026-06-05 14:47:58,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:47:58,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:47:58,904.904 INFO    ] No existing commands found in stream
[2026-06-05 14:48:03,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:48:03,929.929 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 14:48:05,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:48:05,428.428 INFO    ] Checking for system updates...
[2026-06-05 14:48:05,468.468 INFO    ] 200
[2026-06-05 14:48:05,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:05,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:48:05,527.527 INFO    ] No update needed
[2026-06-05 14:48:05,529.529 INFO    ] Checking for camera pi updates...
[2026-06-05 14:48:05,567.567 INFO    ] 200
[2026-06-05 14:48:05,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:05,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:48:05,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:48:05,658.658 INFO    ] No camera update needed
[2026-06-05 14:48:05,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:48:05,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:48:05,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:48:05,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:48:07,715.715 INFO    ] ================================================
[2026-06-05 14:48:07,730.730 INFO    ] Launching Daemon at Fri Jun  5 14:48:07 IST 2026
[2026-06-05 14:48:07,741.741 INFO    ] ================================================
[2026-06-05 14:48:08,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:48:08
[2026-06-05 14:48:09,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:48:09,306.306 INFO    ] Initializing speech engine...
[2026-06-05 14:48:09,315.315 INFO    ] 2026-06-05 14:48:09
[2026-06-05 14:48:09,568.568 INFO    ] 2026-06-05 14:48:09
[2026-06-05 14:48:09,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:48:09,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:48:09,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:48:09,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:48:10,039.039 INFO    ] time= 05/06/2026 14:48:09
[2026-06-05 14:48:10,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:48:10,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:48:10,271.271 INFO    ] No existing commands found in stream
[2026-06-05 14:48:15,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:48:15,288.288 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 14:48:19,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:48:19,261.261 INFO    ] Checking for system updates...
[2026-06-05 14:48:19,302.302 INFO    ] 200
[2026-06-05 14:48:19,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:19,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:48:19,360.360 INFO    ] No update needed
[2026-06-05 14:48:19,362.362 INFO    ] Checking for camera pi updates...
[2026-06-05 14:48:19,400.400 INFO    ] 200
[2026-06-05 14:48:19,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:19,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:48:19,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:48:19,489.489 INFO    ] No camera update needed
[2026-06-05 14:48:19,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:48:19,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:48:19,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:48:19,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:48:21,547.547 INFO    ] ================================================
[2026-06-05 14:48:21,562.562 INFO    ] Launching Daemon at Fri Jun  5 14:48:21 IST 2026
[2026-06-05 14:48:21,573.573 INFO    ] ================================================
[2026-06-05 14:48:22,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:48:22
[2026-06-05 14:48:22,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:48:23,042.042 INFO    ] Initializing speech engine...
[2026-06-05 14:48:23,051.051 INFO    ] 2026-06-05 14:48:23
[2026-06-05 14:48:23,310.310 INFO    ] 2026-06-05 14:48:23
[2026-06-05 14:48:23,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:48:23,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:48:23,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:48:23,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:48:23,775.775 INFO    ] time= 05/06/2026 14:48:23
[2026-06-05 14:48:23,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:48:23,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:48:24,019.019 INFO    ] No existing commands found in stream
[2026-06-05 14:48:29,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:48:29,039.039 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 14:48:31,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:48:31,788.788 INFO    ] Checking for system updates...
[2026-06-05 14:48:31,828.828 INFO    ] 200
[2026-06-05 14:48:31,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:31,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:48:31,893.893 INFO    ] No update needed
[2026-06-05 14:48:31,897.897 INFO    ] Checking for camera pi updates...
[2026-06-05 14:48:31,945.945 INFO    ] 200
[2026-06-05 14:48:31,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:32,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:48:32,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:48:32,141.141 INFO    ] No camera update needed
[2026-06-05 14:48:32,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:48:32,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:48:32,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:48:32,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:48:34,204.204 INFO    ] ================================================
[2026-06-05 14:48:34,220.220 INFO    ] Launching Daemon at Fri Jun  5 14:48:34 IST 2026
[2026-06-05 14:48:34,231.231 INFO    ] ================================================
[2026-06-05 14:48:34,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:48:34
[2026-06-05 14:48:35,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:48:35,681.681 INFO    ] Initializing speech engine...
[2026-06-05 14:48:35,690.690 INFO    ] 2026-06-05 14:48:35
[2026-06-05 14:48:35,964.964 INFO    ] 2026-06-05 14:48:35
[2026-06-05 14:48:35,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:48:36,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:48:36,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:48:36,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:48:36,345.345 INFO    ] time= 05/06/2026 14:48:36
[2026-06-05 14:48:36,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:48:36,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:48:36,433.433 INFO    ] No existing commands found in stream
[2026-06-05 14:48:41,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:48:41,448.448 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 14:48:42,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:48:42,914.914 INFO    ] Checking for system updates...
[2026-06-05 14:48:42,954.954 INFO    ] 200
[2026-06-05 14:48:42,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:43,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:48:43,021.021 INFO    ] No update needed
[2026-06-05 14:48:43,023.023 INFO    ] Checking for camera pi updates...
[2026-06-05 14:48:43,058.058 INFO    ] 200
[2026-06-05 14:48:43,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:43,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:48:43,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:48:43,159.159 INFO    ] No camera update needed
[2026-06-05 14:48:43,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:48:43,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:48:43,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:48:43,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:48:45,215.215 INFO    ] ================================================
[2026-06-05 14:48:45,231.231 INFO    ] Launching Daemon at Fri Jun  5 14:48:45 IST 2026
[2026-06-05 14:48:45,242.242 INFO    ] ================================================
[2026-06-05 14:48:45,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:48:45
[2026-06-05 14:48:46,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:48:46,634.634 INFO    ] Initializing speech engine...
[2026-06-05 14:48:46,643.643 INFO    ] 2026-06-05 14:48:46
[2026-06-05 14:48:46,947.947 INFO    ] 2026-06-05 14:48:46
[2026-06-05 14:48:46,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:48:49,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:48:49,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:48:49,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:48:49,251.251 INFO    ] time= 05/06/2026 14:48:49
[2026-06-05 14:48:49,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:48:49,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:48:49,355.355 INFO    ] No existing commands found in stream
[2026-06-05 14:48:54,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:48:54,373.373 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 14:48:55,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:48:55,387.387 INFO    ] Checking for system updates...
[2026-06-05 14:48:55,423.423 INFO    ] 200
[2026-06-05 14:48:55,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:55,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:48:55,488.488 INFO    ] No update needed
[2026-06-05 14:48:55,491.491 INFO    ] Checking for camera pi updates...
[2026-06-05 14:48:55,532.532 INFO    ] 200
[2026-06-05 14:48:55,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:48:55,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:48:55,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:48:55,622.622 INFO    ] No camera update needed
[2026-06-05 14:48:55,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:48:55,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:48:55,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:48:55,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:48:57,678.678 INFO    ] ================================================
[2026-06-05 14:48:57,693.693 INFO    ] Launching Daemon at Fri Jun  5 14:48:57 IST 2026
[2026-06-05 14:48:57,704.704 INFO    ] ================================================
[2026-06-05 14:48:58,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:48:58
[2026-06-05 14:48:58,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:48:59,145.145 INFO    ] Initializing speech engine...
[2026-06-05 14:48:59,153.153 INFO    ] 2026-06-05 14:48:59
[2026-06-05 14:48:59,404.404 INFO    ] 2026-06-05 14:48:59
[2026-06-05 14:48:59,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:48:59,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:48:59,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:48:59,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:48:59,782.782 INFO    ] time= 05/06/2026 14:48:59
[2026-06-05 14:48:59,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:48:59,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:48:59,966.966 INFO    ] No existing commands found in stream
[2026-06-05 14:49:04,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:49:04,989.989 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 14:49:06,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:49:06,319.319 INFO    ] Checking for system updates...
[2026-06-05 14:49:06,360.360 INFO    ] 200
[2026-06-05 14:49:06,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:06,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:49:06,425.425 INFO    ] No update needed
[2026-06-05 14:49:06,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 14:49:06,466.466 INFO    ] 200
[2026-06-05 14:49:06,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:06,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:49:06,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:49:06,545.545 INFO    ] No camera update needed
[2026-06-05 14:49:06,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:49:06,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:49:06,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:49:06,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:49:08,601.601 INFO    ] ================================================
[2026-06-05 14:49:08,616.616 INFO    ] Launching Daemon at Fri Jun  5 14:49:08 IST 2026
[2026-06-05 14:49:08,627.627 INFO    ] ================================================
[2026-06-05 14:49:09,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:49:09
[2026-06-05 14:49:09,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:49:10,062.062 INFO    ] Initializing speech engine...
[2026-06-05 14:49:10,068.068 INFO    ] 2026-06-05 14:49:10
[2026-06-05 14:49:10,327.327 INFO    ] 2026-06-05 14:49:10
[2026-06-05 14:49:10,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:49:10,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:49:10,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:49:10,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:49:10,786.786 INFO    ] time= 05/06/2026 14:49:10
[2026-06-05 14:49:10,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:49:10,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:49:10,989.989 INFO    ] No existing commands found in stream
[2026-06-05 14:49:16,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:49:16,013.013 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 14:49:19,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:49:19,419.419 INFO    ] Checking for system updates...
[2026-06-05 14:49:19,459.459 INFO    ] 200
[2026-06-05 14:49:19,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:19,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:49:19,529.529 INFO    ] No update needed
[2026-06-05 14:49:19,532.532 INFO    ] Checking for camera pi updates...
[2026-06-05 14:49:19,570.570 INFO    ] 200
[2026-06-05 14:49:19,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:19,627.627 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:49:19,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:49:19,683.683 INFO    ] No camera update needed
[2026-06-05 14:49:19,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:49:19,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:49:19,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:49:19,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:49:21,738.738 INFO    ] ================================================
[2026-06-05 14:49:21,753.753 INFO    ] Launching Daemon at Fri Jun  5 14:49:21 IST 2026
[2026-06-05 14:49:21,764.764 INFO    ] ================================================
[2026-06-05 14:49:22,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:49:22
[2026-06-05 14:49:22,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:49:23,268.268 INFO    ] Initializing speech engine...
[2026-06-05 14:49:23,279.279 INFO    ] 2026-06-05 14:49:23
[2026-06-05 14:49:23,562.562 INFO    ] 2026-06-05 14:49:23
[2026-06-05 14:49:23,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:49:23,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:49:23,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:49:23,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:49:23,912.912 INFO    ] time= 05/06/2026 14:49:23
[2026-06-05 14:49:23,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:49:23,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:49:24,040.040 INFO    ] No existing commands found in stream
[2026-06-05 14:49:29,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:49:29,056.056 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 14:49:33,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:49:33,291.291 INFO    ] Checking for system updates...
[2026-06-05 14:49:33,333.333 INFO    ] 200
[2026-06-05 14:49:33,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:33,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:49:33,403.403 INFO    ] No update needed
[2026-06-05 14:49:33,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 14:49:33,444.444 INFO    ] 200
[2026-06-05 14:49:33,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:33,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:49:33,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:49:33,534.534 INFO    ] No camera update needed
[2026-06-05 14:49:33,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:49:33,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:49:33,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:49:33,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:49:35,597.597 INFO    ] ================================================
[2026-06-05 14:49:35,612.612 INFO    ] Launching Daemon at Fri Jun  5 14:49:35 IST 2026
[2026-06-05 14:49:35,623.623 INFO    ] ================================================
[2026-06-05 14:49:36,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:49:36
[2026-06-05 14:49:36,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:49:37,121.121 INFO    ] Initializing speech engine...
[2026-06-05 14:49:37,132.132 INFO    ] 2026-06-05 14:49:37
[2026-06-05 14:49:37,392.392 INFO    ] 2026-06-05 14:49:37
[2026-06-05 14:49:37,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:49:37,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:49:37,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:49:37,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:49:37,863.863 INFO    ] time= 05/06/2026 14:49:37
[2026-06-05 14:49:37,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:49:37,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:49:38,008.008 INFO    ] No existing commands found in stream
[2026-06-05 14:49:43,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:49:43,023.023 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 14:49:45,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:49:45,761.761 INFO    ] Checking for system updates...
[2026-06-05 14:49:45,806.806 INFO    ] 200
[2026-06-05 14:49:45,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:45,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:49:45,872.872 INFO    ] No update needed
[2026-06-05 14:49:45,874.874 INFO    ] Checking for camera pi updates...
[2026-06-05 14:49:45,914.914 INFO    ] 200
[2026-06-05 14:49:45,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:45,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:49:46,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:49:46,005.005 INFO    ] No camera update needed
[2026-06-05 14:49:46,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:49:46,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:49:46,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:49:46,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:49:48,063.063 INFO    ] ================================================
[2026-06-05 14:49:48,078.078 INFO    ] Launching Daemon at Fri Jun  5 14:49:48 IST 2026
[2026-06-05 14:49:48,088.088 INFO    ] ================================================
[2026-06-05 14:49:48,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:49:48
[2026-06-05 14:49:49,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:49:49,528.528 INFO    ] Initializing speech engine...
[2026-06-05 14:49:49,551.551 INFO    ] 2026-06-05 14:49:49
[2026-06-05 14:49:49,807.807 INFO    ] 2026-06-05 14:49:49
[2026-06-05 14:49:49,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:49:50,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:49:50,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:49:50,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:49:50,306.306 INFO    ] time= 05/06/2026 14:49:50
[2026-06-05 14:49:50,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:49:50,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:49:50,511.511 INFO    ] No existing commands found in stream
[2026-06-05 14:49:55,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:49:55,534.534 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 14:49:58,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:49:58,120.120 INFO    ] Checking for system updates...
[2026-06-05 14:49:58,158.158 INFO    ] 200
[2026-06-05 14:49:58,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:58,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:49:58,218.218 INFO    ] No update needed
[2026-06-05 14:49:58,220.220 INFO    ] Checking for camera pi updates...
[2026-06-05 14:49:58,255.255 INFO    ] 200
[2026-06-05 14:49:58,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:49:58,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:49:58,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:49:58,344.344 INFO    ] No camera update needed
[2026-06-05 14:49:58,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:49:58,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:49:58,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:49:58,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:50:00,401.401 INFO    ] ================================================
[2026-06-05 14:50:00,417.417 INFO    ] Launching Daemon at Fri Jun  5 14:50:00 IST 2026
[2026-06-05 14:50:00,427.427 INFO    ] ================================================
[2026-06-05 14:50:01,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:50:01
[2026-06-05 14:50:01,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:50:02,775.775 INFO    ] Initializing speech engine...
[2026-06-05 14:50:02,779.779 INFO    ] 2026-06-05 14:50:02
[2026-06-05 14:50:03,252.252 INFO    ] 2026-06-05 14:50:03
[2026-06-05 14:50:03,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:50:03,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:50:03,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:50:03,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:50:03,600.600 INFO    ] time= 05/06/2026 14:50:03
[2026-06-05 14:50:03,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:50:03,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:50:03,680.680 INFO    ] No existing commands found in stream
[2026-06-05 14:50:08,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:50:08,738.738 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 14:50:12,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:50:12,319.319 INFO    ] Checking for system updates...
[2026-06-05 14:50:12,360.360 INFO    ] 200
[2026-06-05 14:50:12,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:50:12,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:50:12,425.425 INFO    ] No update needed
[2026-06-05 14:50:12,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 14:50:12,466.466 INFO    ] 200
[2026-06-05 14:50:12,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:50:12,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:50:12,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:50:12,568.568 INFO    ] No camera update needed
[2026-06-05 14:50:12,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:50:12,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:50:12,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:50:12,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:50:14,623.623 INFO    ] ================================================
[2026-06-05 14:50:14,638.638 INFO    ] Launching Daemon at Fri Jun  5 14:50:14 IST 2026
[2026-06-05 14:50:14,649.649 INFO    ] ================================================
[2026-06-05 14:50:15,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:50:15
[2026-06-05 14:50:15,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:50:16,118.118 INFO    ] Initializing speech engine...
[2026-06-05 14:50:16,131.131 INFO    ] 2026-06-05 14:50:16
[2026-06-05 14:50:16,421.421 INFO    ] 2026-06-05 14:50:16
[2026-06-05 14:50:16,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:50:18,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:50:18,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:50:18,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:50:19,010.010 INFO    ] time= 05/06/2026 14:50:18
[2026-06-05 14:50:19,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:50:19,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:50:19,106.106 INFO    ] No existing commands found in stream
[2026-06-05 14:50:24,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:50:24,122.122 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 14:50:26,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:50:26,274.274 INFO    ] Checking for system updates...
[2026-06-05 14:50:26,311.311 INFO    ] 200
[2026-06-05 14:50:26,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:50:26,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:50:26,370.370 INFO    ] No update needed
[2026-06-05 14:50:26,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 14:50:26,411.411 INFO    ] 200
[2026-06-05 14:50:26,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:50:26,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:50:26,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:50:26,509.509 INFO    ] No camera update needed
[2026-06-05 14:50:26,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:50:26,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:50:26,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:50:26,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:50:28,569.569 INFO    ] ================================================
[2026-06-05 14:50:28,584.584 INFO    ] Launching Daemon at Fri Jun  5 14:50:28 IST 2026
[2026-06-05 14:50:28,595.595 INFO    ] ================================================
[2026-06-05 14:50:29,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:50:29
[2026-06-05 14:50:29,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:50:30,204.204 INFO    ] Initializing speech engine...
[2026-06-05 14:50:30,212.212 INFO    ] 2026-06-05 14:50:30
[2026-06-05 14:50:30,495.495 INFO    ] 2026-06-05 14:50:30
[2026-06-05 14:50:30,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:50:30,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:50:31,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:50:31,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:50:31,235.235 INFO    ] time= 05/06/2026 14:50:31
[2026-06-05 14:50:31,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:50:31,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:50:31,481.481 INFO    ] No existing commands found in stream
[2026-06-05 14:50:36,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:50:36,504.504 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 14:50:37,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:50:37,016.016 INFO    ] Checking for system updates...
[2026-06-05 14:50:37,053.053 INFO    ] 200
[2026-06-05 14:50:37,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:50:37,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:50:37,113.113 INFO    ] No update needed
[2026-06-05 14:50:37,116.116 INFO    ] Checking for camera pi updates...
[2026-06-05 14:50:37,152.152 INFO    ] 200
[2026-06-05 14:50:37,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:50:37,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:50:37,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:50:37,346.346 INFO    ] No camera update needed
[2026-06-05 14:50:37,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:50:37,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:50:37,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:50:37,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:50:39,402.402 INFO    ] ================================================
[2026-06-05 14:50:39,418.418 INFO    ] Launching Daemon at Fri Jun  5 14:50:39 IST 2026
[2026-06-05 14:50:39,429.429 INFO    ] ================================================
[2026-06-05 14:50:39,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:50:39
[2026-06-05 14:50:40,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:50:40,873.873 INFO    ] Initializing speech engine...
[2026-06-05 14:50:40,879.879 INFO    ] 2026-06-05 14:50:40
[2026-06-05 14:50:41,141.141 INFO    ] 2026-06-05 14:50:41
[2026-06-05 14:50:41,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:50:41,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:50:41,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:50:41,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:50:41,514.514 INFO    ] time= 05/06/2026 14:50:41
[2026-06-05 14:50:41,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:50:41,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:50:41,710.710 INFO    ] No existing commands found in stream
[2026-06-05 14:50:46,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:50:46,727.727 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 14:50:49,356.356 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:50:49,360.360 INFO    ] Checking for system updates...
[2026-06-05 14:50:49,410.410 INFO    ] 200
[2026-06-05 14:50:49,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:50:49,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:50:49,480.480 INFO    ] No update needed
[2026-06-05 14:50:49,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 14:50:49,516.516 INFO    ] 200
[2026-06-05 14:50:49,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:50:49,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:50:49,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:50:49,612.612 INFO    ] No camera update needed
[2026-06-05 14:50:49,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:50:49,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:50:49,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:50:49,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:50:51,668.668 INFO    ] ================================================
[2026-06-05 14:50:51,683.683 INFO    ] Launching Daemon at Fri Jun  5 14:50:51 IST 2026
[2026-06-05 14:50:51,695.695 INFO    ] ================================================
[2026-06-05 14:50:52,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:50:52
[2026-06-05 14:50:53,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:50:53,309.309 INFO    ] Initializing speech engine...
[2026-06-05 14:50:53,318.318 INFO    ] 2026-06-05 14:50:53
[2026-06-05 14:50:53,590.590 INFO    ] 2026-06-05 14:50:53
[2026-06-05 14:50:53,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:50:53,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:50:53,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:50:54,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:50:54,140.140 INFO    ] time= 05/06/2026 14:50:54
[2026-06-05 14:50:54,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:50:54,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:50:54,299.299 INFO    ] No existing commands found in stream
[2026-06-05 14:50:59,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:50:59,331.331 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 14:51:00,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:51:00,187.187 INFO    ] Checking for system updates...
[2026-06-05 14:51:00,224.224 INFO    ] 200
[2026-06-05 14:51:00,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:00,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:51:00,294.294 INFO    ] No update needed
[2026-06-05 14:51:00,297.297 INFO    ] Checking for camera pi updates...
[2026-06-05 14:51:00,330.330 INFO    ] 200
[2026-06-05 14:51:00,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:00,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:51:00,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:51:00,421.421 INFO    ] No camera update needed
[2026-06-05 14:51:00,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:51:00,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:51:00,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:51:00,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:51:02,482.482 INFO    ] ================================================
[2026-06-05 14:51:02,501.501 INFO    ] Launching Daemon at Fri Jun  5 14:51:02 IST 2026
[2026-06-05 14:51:02,514.514 INFO    ] ================================================
[2026-06-05 14:51:03,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:51:03
[2026-06-05 14:51:03,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:51:03,995.995 INFO    ] Initializing speech engine...
[2026-06-05 14:51:04,010.010 INFO    ] 2026-06-05 14:51:03
[2026-06-05 14:51:04,287.287 INFO    ] 2026-06-05 14:51:04
[2026-06-05 14:51:04,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:51:04,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:51:04,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:51:04,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:51:04,808.808 INFO    ] time= 05/06/2026 14:51:04
[2026-06-05 14:51:04,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:51:04,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:51:04,971.971 INFO    ] No existing commands found in stream
[2026-06-05 14:51:09,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:51:09,995.995 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 14:51:13,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:51:13,522.522 INFO    ] Checking for system updates...
[2026-06-05 14:51:13,560.560 INFO    ] 200
[2026-06-05 14:51:13,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:13,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:51:13,622.622 INFO    ] No update needed
[2026-06-05 14:51:13,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 14:51:13,658.658 INFO    ] 200
[2026-06-05 14:51:13,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:13,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:51:13,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:51:13,747.747 INFO    ] No camera update needed
[2026-06-05 14:51:13,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:51:13,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:51:13,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:51:13,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:51:15,802.802 INFO    ] ================================================
[2026-06-05 14:51:15,819.819 INFO    ] Launching Daemon at Fri Jun  5 14:51:15 IST 2026
[2026-06-05 14:51:15,830.830 INFO    ] ================================================
[2026-06-05 14:51:16,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:51:16
[2026-06-05 14:51:17,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:51:17,377.377 INFO    ] Initializing speech engine...
[2026-06-05 14:51:17,400.400 INFO    ] 2026-06-05 14:51:17
[2026-06-05 14:51:17,656.656 INFO    ] 2026-06-05 14:51:17
[2026-06-05 14:51:17,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:51:18,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:51:18,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:51:19,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:51:19,037.037 INFO    ] time= 05/06/2026 14:51:19
[2026-06-05 14:51:19,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:51:19,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:51:19,111.111 INFO    ] No existing commands found in stream
[2026-06-05 14:51:24,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:51:24,125.125 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 14:51:28,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:51:28,493.493 INFO    ] Checking for system updates...
[2026-06-05 14:51:28,532.532 INFO    ] 200
[2026-06-05 14:51:28,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:28,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:51:28,589.589 INFO    ] No update needed
[2026-06-05 14:51:28,591.591 INFO    ] Checking for camera pi updates...
[2026-06-05 14:51:28,628.628 INFO    ] 200
[2026-06-05 14:51:28,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:28,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:51:28,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:51:28,727.727 INFO    ] No camera update needed
[2026-06-05 14:51:28,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:51:28,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:51:28,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:51:28,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:51:30,783.783 INFO    ] ================================================
[2026-06-05 14:51:30,799.799 INFO    ] Launching Daemon at Fri Jun  5 14:51:30 IST 2026
[2026-06-05 14:51:30,810.810 INFO    ] ================================================
[2026-06-05 14:51:31,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:51:31
[2026-06-05 14:51:32,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:51:32,310.310 INFO    ] Initializing speech engine...
[2026-06-05 14:51:32,319.319 INFO    ] 2026-06-05 14:51:32
[2026-06-05 14:51:32,634.634 INFO    ] 2026-06-05 14:51:32
[2026-06-05 14:51:32,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:51:32,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:51:32,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:51:33,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:51:33,063.063 INFO    ] time= 05/06/2026 14:51:33
[2026-06-05 14:51:33,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:51:33,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:51:33,239.239 INFO    ] No existing commands found in stream
[2026-06-05 14:51:38,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:51:38,268.268 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 14:51:38,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:51:38,934.934 INFO    ] Checking for system updates...
[2026-06-05 14:51:38,973.973 INFO    ] 200
[2026-06-05 14:51:38,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:39,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:51:39,031.031 INFO    ] No update needed
[2026-06-05 14:51:39,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 14:51:39,067.067 INFO    ] 200
[2026-06-05 14:51:39,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:39,110.110 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:51:39,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:51:39,153.153 INFO    ] No camera update needed
[2026-06-05 14:51:39,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:51:39,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:51:39,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:51:39,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:51:41,210.210 INFO    ] ================================================
[2026-06-05 14:51:41,226.226 INFO    ] Launching Daemon at Fri Jun  5 14:51:41 IST 2026
[2026-06-05 14:51:41,237.237 INFO    ] ================================================
[2026-06-05 14:51:41,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:51:41
[2026-06-05 14:51:42,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:51:42,819.819 INFO    ] Initializing speech engine...
[2026-06-05 14:51:42,828.828 INFO    ] 2026-06-05 14:51:42
[2026-06-05 14:51:43,089.089 INFO    ] 2026-06-05 14:51:43
[2026-06-05 14:51:43,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:51:43,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:51:43,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:51:43,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:51:43,580.580 INFO    ] time= 05/06/2026 14:51:43
[2026-06-05 14:51:43,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:51:43,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:51:43,788.788 INFO    ] No existing commands found in stream
[2026-06-05 14:51:48,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:51:48,804.804 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 14:51:50,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:51:50,661.661 INFO    ] Checking for system updates...
[2026-06-05 14:51:50,701.701 INFO    ] 200
[2026-06-05 14:51:50,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:50,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:51:50,762.762 INFO    ] No update needed
[2026-06-05 14:51:50,765.765 INFO    ] Checking for camera pi updates...
[2026-06-05 14:51:50,803.803 INFO    ] 200
[2026-06-05 14:51:50,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:51:50,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:51:50,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:51:50,900.900 INFO    ] No camera update needed
[2026-06-05 14:51:50,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:51:50,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:51:50,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:51:50,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:51:52,955.955 INFO    ] ================================================
[2026-06-05 14:51:52,970.970 INFO    ] Launching Daemon at Fri Jun  5 14:51:52 IST 2026
[2026-06-05 14:51:52,981.981 INFO    ] ================================================
[2026-06-05 14:51:53,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:51:53
[2026-06-05 14:51:54,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:51:54,477.477 INFO    ] Initializing speech engine...
[2026-06-05 14:51:54,484.484 INFO    ] 2026-06-05 14:51:54
[2026-06-05 14:51:54,744.744 INFO    ] 2026-06-05 14:51:54
[2026-06-05 14:51:54,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:51:55,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:51:55,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:51:55,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:51:55,183.183 INFO    ] time= 05/06/2026 14:51:55
[2026-06-05 14:51:55,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:51:55,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:51:55,428.428 INFO    ] No existing commands found in stream
[2026-06-05 14:52:00,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:52:00,455.455 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 14:52:03,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:52:03,227.227 INFO    ] Checking for system updates...
[2026-06-05 14:52:03,267.267 INFO    ] 200
[2026-06-05 14:52:03,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:03,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:03,340.340 INFO    ] No update needed
[2026-06-05 14:52:03,343.343 INFO    ] Checking for camera pi updates...
[2026-06-05 14:52:03,388.388 INFO    ] 200
[2026-06-05 14:52:03,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:03,439.439 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:52:03,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:03,485.485 INFO    ] No camera update needed
[2026-06-05 14:52:03,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:52:03,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:52:03,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:52:03,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:52:05,543.543 INFO    ] ================================================
[2026-06-05 14:52:05,558.558 INFO    ] Launching Daemon at Fri Jun  5 14:52:05 IST 2026
[2026-06-05 14:52:05,569.569 INFO    ] ================================================
[2026-06-05 14:52:06,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:52:06
[2026-06-05 14:52:06,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:52:07,029.029 INFO    ] Initializing speech engine...
[2026-06-05 14:52:07,043.043 INFO    ] 2026-06-05 14:52:07
[2026-06-05 14:52:07,309.309 INFO    ] 2026-06-05 14:52:07
[2026-06-05 14:52:07,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:52:07,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:52:07,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:52:07,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:52:07,700.700 INFO    ] time= 05/06/2026 14:52:07
[2026-06-05 14:52:07,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:52:07,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:52:07,807.807 INFO    ] No existing commands found in stream
[2026-06-05 14:52:12,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:52:12,823.823 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 14:52:14,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:52:14,918.918 INFO    ] Checking for system updates...
[2026-06-05 14:52:14,955.955 INFO    ] 200
[2026-06-05 14:52:14,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:15,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:15,019.019 INFO    ] No update needed
[2026-06-05 14:52:15,021.021 INFO    ] Checking for camera pi updates...
[2026-06-05 14:52:15,058.058 INFO    ] 200
[2026-06-05 14:52:15,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:15,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:52:15,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:15,144.144 INFO    ] No camera update needed
[2026-06-05 14:52:15,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:52:15,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:52:15,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:52:15,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:52:17,200.200 INFO    ] ================================================
[2026-06-05 14:52:17,216.216 INFO    ] Launching Daemon at Fri Jun  5 14:52:17 IST 2026
[2026-06-05 14:52:17,227.227 INFO    ] ================================================
[2026-06-05 14:52:17,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:52:17
[2026-06-05 14:52:18,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:52:18,683.683 INFO    ] Initializing speech engine...
[2026-06-05 14:52:18,692.692 INFO    ] 2026-06-05 14:52:18
[2026-06-05 14:52:18,994.994 INFO    ] 2026-06-05 14:52:18
[2026-06-05 14:52:19,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:52:19,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:52:19,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:52:19,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:52:19,381.381 INFO    ] time= 05/06/2026 14:52:19
[2026-06-05 14:52:19,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:52:19,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:52:19,571.571 INFO    ] No existing commands found in stream
[2026-06-05 14:52:24,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:52:24,594.594 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 14:52:26,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:52:26,493.493 INFO    ] Checking for system updates...
[2026-06-05 14:52:26,533.533 INFO    ] 200
[2026-06-05 14:52:26,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:26,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:26,598.598 INFO    ] No update needed
[2026-06-05 14:52:26,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 14:52:26,638.638 INFO    ] 200
[2026-06-05 14:52:26,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:26,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:52:26,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:26,722.722 INFO    ] No camera update needed
[2026-06-05 14:52:26,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:52:26,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:52:26,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:52:26,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:52:28,780.780 INFO    ] ================================================
[2026-06-05 14:52:28,795.795 INFO    ] Launching Daemon at Fri Jun  5 14:52:28 IST 2026
[2026-06-05 14:52:28,806.806 INFO    ] ================================================
[2026-06-05 14:52:29,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:52:29
[2026-06-05 14:52:30,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:52:30,292.292 INFO    ] Initializing speech engine...
[2026-06-05 14:52:30,299.299 INFO    ] 2026-06-05 14:52:30
[2026-06-05 14:52:30,553.553 INFO    ] 2026-06-05 14:52:30
[2026-06-05 14:52:30,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:52:30,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:52:30,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:52:31,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:52:31,147.147 INFO    ] time= 05/06/2026 14:52:31
[2026-06-05 14:52:31,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:52:31,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:52:31,307.307 INFO    ] No existing commands found in stream
[2026-06-05 14:52:36,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:52:36,341.341 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 14:52:39,620.620 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:52:39,623.623 INFO    ] Checking for system updates...
[2026-06-05 14:52:39,660.660 INFO    ] 200
[2026-06-05 14:52:39,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:39,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:39,718.718 INFO    ] No update needed
[2026-06-05 14:52:39,720.720 INFO    ] Checking for camera pi updates...
[2026-06-05 14:52:39,754.754 INFO    ] 200
[2026-06-05 14:52:39,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:39,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:52:39,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:39,958.958 INFO    ] No camera update needed
[2026-06-05 14:52:39,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:52:39,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:52:39,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:52:39,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:52:42,013.013 INFO    ] ================================================
[2026-06-05 14:52:42,029.029 INFO    ] Launching Daemon at Fri Jun  5 14:52:42 IST 2026
[2026-06-05 14:52:42,040.040 INFO    ] ================================================
[2026-06-05 14:52:42,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:52:42
[2026-06-05 14:52:43,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:52:43,648.648 INFO    ] Initializing speech engine...
[2026-06-05 14:52:43,653.653 INFO    ] 2026-06-05 14:52:43
[2026-06-05 14:52:43,944.944 INFO    ] 2026-06-05 14:52:43
[2026-06-05 14:52:43,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:52:44,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:52:44,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:52:44,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:52:44,495.495 INFO    ] time= 05/06/2026 14:52:44
[2026-06-05 14:52:44,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:52:44,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:52:44,634.634 INFO    ] No existing commands found in stream
[2026-06-05 14:52:49,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:52:49,666.666 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 14:52:53,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:52:53,426.426 INFO    ] Checking for system updates...
[2026-06-05 14:52:53,463.463 INFO    ] 200
[2026-06-05 14:52:53,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:53,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:53,524.524 INFO    ] No update needed
[2026-06-05 14:52:53,527.527 INFO    ] Checking for camera pi updates...
[2026-06-05 14:52:53,563.563 INFO    ] 200
[2026-06-05 14:52:53,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:52:53,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:52:53,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:52:53,662.662 INFO    ] No camera update needed
[2026-06-05 14:52:53,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:52:53,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:52:53,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:52:53,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:52:55,719.719 INFO    ] ================================================
[2026-06-05 14:52:55,735.735 INFO    ] Launching Daemon at Fri Jun  5 14:52:55 IST 2026
[2026-06-05 14:52:55,746.746 INFO    ] ================================================
[2026-06-05 14:52:56,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:52:56
[2026-06-05 14:52:57,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:52:57,362.362 INFO    ] Initializing speech engine...
[2026-06-05 14:52:57,374.374 INFO    ] 2026-06-05 14:52:57
[2026-06-05 14:52:57,661.661 INFO    ] 2026-06-05 14:52:57
[2026-06-05 14:52:57,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:52:57,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:52:57,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:52:58,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:52:58,202.202 INFO    ] time= 05/06/2026 14:52:58
[2026-06-05 14:52:58,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:52:58,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:52:58,364.364 INFO    ] No existing commands found in stream
[2026-06-05 14:53:03,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:53:03,383.383 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 14:53:05,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:53:06,000.000 INFO    ] Checking for system updates...
[2026-06-05 14:53:06,041.041 INFO    ] 200
[2026-06-05 14:53:06,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:53:06,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:53:06,110.110 INFO    ] No update needed
[2026-06-05 14:53:06,113.113 INFO    ] Checking for camera pi updates...
[2026-06-05 14:53:06,147.147 INFO    ] 200
[2026-06-05 14:53:06,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:53:06,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:53:06,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:53:06,223.223 INFO    ] No camera update needed
[2026-06-05 14:53:06,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:53:06,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:53:06,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:53:06,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:53:08,281.281 INFO    ] ================================================
[2026-06-05 14:53:08,297.297 INFO    ] Launching Daemon at Fri Jun  5 14:53:08 IST 2026
[2026-06-05 14:53:08,307.307 INFO    ] ================================================
[2026-06-05 14:53:08,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:53:08
[2026-06-05 14:53:09,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:53:09,917.917 INFO    ] Initializing speech engine...
[2026-06-05 14:53:09,932.932 INFO    ] 2026-06-05 14:53:09
[2026-06-05 14:53:10,215.215 INFO    ] 2026-06-05 14:53:10
[2026-06-05 14:53:10,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:53:10,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:53:10,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:53:10,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:53:10,763.763 INFO    ] time= 05/06/2026 14:53:10
[2026-06-05 14:53:10,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:53:10,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:53:10,914.914 INFO    ] No existing commands found in stream
[2026-06-05 14:53:15,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:53:15,939.939 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 14:53:20,663.663 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:53:20,666.666 INFO    ] Checking for system updates...
[2026-06-05 14:53:20,740.740 INFO    ] 200
[2026-06-05 14:53:20,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 14:53:20,747.747 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 14:53:20,750.750 INFO    ] Checking for camera pi updates...
[2026-06-05 14:53:20,794.794 INFO    ] 200
[2026-06-05 14:53:20,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 14:53:20,799.799 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 14:53:20,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:53:20,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:53:20,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:53:20,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:53:22,861.861 INFO    ] ================================================
[2026-06-05 14:53:22,877.877 INFO    ] Launching Daemon at Fri Jun  5 14:53:22 IST 2026
[2026-06-05 14:53:22,889.889 INFO    ] ================================================
[2026-06-05 14:53:23,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:53:23
[2026-06-05 14:53:24,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:53:24,534.534 INFO    ] Initializing speech engine...
[2026-06-05 14:53:24,545.545 INFO    ] 2026-06-05 14:53:24
[2026-06-05 14:53:24,827.827 INFO    ] 2026-06-05 14:53:24
[2026-06-05 14:53:24,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:53:25,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:53:25,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:53:25,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:53:25,376.376 INFO    ] time= 05/06/2026 14:53:25
[2026-06-05 14:53:25,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:53:25,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:53:25,582.582 INFO    ] No existing commands found in stream
[2026-06-05 14:53:30,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:53:30,621.621 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 14:53:33,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:53:33,600.600 INFO    ] Checking for system updates...
[2026-06-05 14:53:33,638.638 INFO    ] 200
[2026-06-05 14:53:33,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:53:33,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:53:33,705.705 INFO    ] No update needed
[2026-06-05 14:53:33,708.708 INFO    ] Checking for camera pi updates...
[2026-06-05 14:53:33,747.747 INFO    ] 200
[2026-06-05 14:53:33,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:53:33,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:53:33,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:53:33,840.840 INFO    ] No camera update needed
[2026-06-05 14:53:33,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:53:33,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:53:33,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:53:33,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:53:35,902.902 INFO    ] ================================================
[2026-06-05 14:53:35,918.918 INFO    ] Launching Daemon at Fri Jun  5 14:53:35 IST 2026
[2026-06-05 14:53:35,929.929 INFO    ] ================================================
[2026-06-05 14:53:36,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:53:36
[2026-06-05 14:53:37,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:53:37,344.344 INFO    ] Initializing speech engine...
[2026-06-05 14:53:37,353.353 INFO    ] 2026-06-05 14:53:37
[2026-06-05 14:53:37,653.653 INFO    ] 2026-06-05 14:53:37
[2026-06-05 14:53:37,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:53:37,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:53:37,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:53:38,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:53:38,023.023 INFO    ] time= 05/06/2026 14:53:38
[2026-06-05 14:53:38,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:53:38,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:53:38,139.139 INFO    ] No existing commands found in stream
[2026-06-05 14:53:43,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:53:43,167.167 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 14:53:45,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:53:45,882.882 INFO    ] Checking for system updates...
[2026-06-05 14:53:45,922.922 INFO    ] 200
[2026-06-05 14:53:45,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:53:45,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:53:45,980.980 INFO    ] No update needed
[2026-06-05 14:53:45,983.983 INFO    ] Checking for camera pi updates...
[2026-06-05 14:53:46,016.016 INFO    ] 200
[2026-06-05 14:53:46,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:53:46,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:53:46,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:53:46,103.103 INFO    ] No camera update needed
[2026-06-05 14:53:46,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:53:46,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:53:46,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:53:46,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:53:48,160.160 INFO    ] ================================================
[2026-06-05 14:53:48,176.176 INFO    ] Launching Daemon at Fri Jun  5 14:53:48 IST 2026
[2026-06-05 14:53:48,187.187 INFO    ] ================================================
[2026-06-05 14:53:48,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:53:48
[2026-06-05 14:53:49,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:53:49,901.901 INFO    ] Initializing speech engine...
[2026-06-05 14:53:49,912.912 INFO    ] 2026-06-05 14:53:49
[2026-06-05 14:53:50,201.201 INFO    ] 2026-06-05 14:53:50
[2026-06-05 14:53:50,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:53:50,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:53:50,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:53:50,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:53:50,663.663 INFO    ] time= 05/06/2026 14:53:50
[2026-06-05 14:53:50,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:53:50,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:53:50,868.868 INFO    ] No existing commands found in stream
[2026-06-05 14:53:55,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:53:55,896.896 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 14:53:57,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:53:57,017.017 INFO    ] Checking for system updates...
[2026-06-05 14:53:57,059.059 INFO    ] 200
[2026-06-05 14:53:57,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:53:57,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:53:57,116.116 INFO    ] No update needed
[2026-06-05 14:53:57,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 14:53:57,153.153 INFO    ] 200
[2026-06-05 14:53:57,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:53:57,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:53:57,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:53:57,240.240 INFO    ] No camera update needed
[2026-06-05 14:53:57,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:53:57,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:53:57,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:53:57,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:53:59,295.295 INFO    ] ================================================
[2026-06-05 14:53:59,311.311 INFO    ] Launching Daemon at Fri Jun  5 14:53:59 IST 2026
[2026-06-05 14:53:59,322.322 INFO    ] ================================================
[2026-06-05 14:53:59,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:53:59
[2026-06-05 14:54:00,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:54:00,759.759 INFO    ] Initializing speech engine...
[2026-06-05 14:54:00,778.778 INFO    ] 2026-06-05 14:54:00
[2026-06-05 14:54:01,033.033 INFO    ] 2026-06-05 14:54:01
[2026-06-05 14:54:01,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:54:01,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:54:01,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:54:01,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:54:01,440.440 INFO    ] time= 05/06/2026 14:54:01
[2026-06-05 14:54:01,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:54:01,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:54:01,540.540 INFO    ] No existing commands found in stream
[2026-06-05 14:54:06,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:54:06,555.555 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 14:54:08,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:54:08,107.107 INFO    ] Checking for system updates...
[2026-06-05 14:54:08,145.145 INFO    ] 200
[2026-06-05 14:54:08,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:08,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:54:08,212.212 INFO    ] No update needed
[2026-06-05 14:54:08,215.215 INFO    ] Checking for camera pi updates...
[2026-06-05 14:54:08,254.254 INFO    ] 200
[2026-06-05 14:54:08,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:08,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:54:08,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:54:08,333.333 INFO    ] No camera update needed
[2026-06-05 14:54:08,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:54:08,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:54:08,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:54:08,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:54:10,392.392 INFO    ] ================================================
[2026-06-05 14:54:10,408.408 INFO    ] Launching Daemon at Fri Jun  5 14:54:10 IST 2026
[2026-06-05 14:54:10,418.418 INFO    ] ================================================
[2026-06-05 14:54:11,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:54:10
[2026-06-05 14:54:11,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:54:11,876.876 INFO    ] Initializing speech engine...
[2026-06-05 14:54:11,901.901 INFO    ] 2026-06-05 14:54:11
[2026-06-05 14:54:12,176.176 INFO    ] 2026-06-05 14:54:12
[2026-06-05 14:54:12,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:54:12,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:54:12,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:54:12,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:54:12,576.576 INFO    ] time= 05/06/2026 14:54:12
[2026-06-05 14:54:12,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:54:12,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:54:12,750.750 INFO    ] No existing commands found in stream
[2026-06-05 14:54:17,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:54:17,780.780 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 14:54:19,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:54:19,318.318 INFO    ] Checking for system updates...
[2026-06-05 14:54:19,356.356 INFO    ] 200
[2026-06-05 14:54:19,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:19,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:54:19,417.417 INFO    ] No update needed
[2026-06-05 14:54:19,420.420 INFO    ] Checking for camera pi updates...
[2026-06-05 14:54:19,456.456 INFO    ] 200
[2026-06-05 14:54:19,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:19,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:54:19,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:54:19,544.544 INFO    ] No camera update needed
[2026-06-05 14:54:19,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:54:19,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:54:19,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:54:19,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:54:21,600.600 INFO    ] ================================================
[2026-06-05 14:54:21,615.615 INFO    ] Launching Daemon at Fri Jun  5 14:54:21 IST 2026
[2026-06-05 14:54:21,626.626 INFO    ] ================================================
[2026-06-05 14:54:22,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:54:22
[2026-06-05 14:54:22,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:54:23,174.174 INFO    ] Initializing speech engine...
[2026-06-05 14:54:23,185.185 INFO    ] 2026-06-05 14:54:23
[2026-06-05 14:54:23,469.469 INFO    ] 2026-06-05 14:54:23
[2026-06-05 14:54:23,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:54:23,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:54:23,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:54:23,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:54:23,939.939 INFO    ] time= 05/06/2026 14:54:23
[2026-06-05 14:54:24,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:54:24,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:54:24,196.196 INFO    ] No existing commands found in stream
[2026-06-05 14:54:29,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:54:29,224.224 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 14:54:33,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:54:33,310.310 INFO    ] Checking for system updates...
[2026-06-05 14:54:33,347.347 INFO    ] 200
[2026-06-05 14:54:33,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:33,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:54:33,404.404 INFO    ] No update needed
[2026-06-05 14:54:33,411.411 INFO    ] Checking for camera pi updates...
[2026-06-05 14:54:33,445.445 INFO    ] 200
[2026-06-05 14:54:33,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:33,490.490 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:54:33,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:54:33,538.538 INFO    ] No camera update needed
[2026-06-05 14:54:33,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:54:33,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:54:33,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:54:33,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:54:35,594.594 INFO    ] ================================================
[2026-06-05 14:54:35,609.609 INFO    ] Launching Daemon at Fri Jun  5 14:54:35 IST 2026
[2026-06-05 14:54:35,620.620 INFO    ] ================================================
[2026-06-05 14:54:36,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:54:36
[2026-06-05 14:54:36,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:54:37,255.255 INFO    ] Initializing speech engine...
[2026-06-05 14:54:37,264.264 INFO    ] 2026-06-05 14:54:37
[2026-06-05 14:54:37,525.525 INFO    ] 2026-06-05 14:54:37
[2026-06-05 14:54:37,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:54:37,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:54:37,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:54:37,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:54:38,020.020 INFO    ] time= 05/06/2026 14:54:37
[2026-06-05 14:54:38,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:54:38,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:54:38,236.236 INFO    ] No existing commands found in stream
[2026-06-05 14:54:43,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:54:43,253.253 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 14:54:45,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:54:45,878.878 INFO    ] Checking for system updates...
[2026-06-05 14:54:45,918.918 INFO    ] 200
[2026-06-05 14:54:45,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:45,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:54:45,977.977 INFO    ] No update needed
[2026-06-05 14:54:45,980.980 INFO    ] Checking for camera pi updates...
[2026-06-05 14:54:46,015.015 INFO    ] 200
[2026-06-05 14:54:46,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:46,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:54:46,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:54:46,207.207 INFO    ] No camera update needed
[2026-06-05 14:54:46,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:54:46,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:54:46,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:54:46,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:54:48,263.263 INFO    ] ================================================
[2026-06-05 14:54:48,278.278 INFO    ] Launching Daemon at Fri Jun  5 14:54:48 IST 2026
[2026-06-05 14:54:48,289.289 INFO    ] ================================================
[2026-06-05 14:54:48,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:54:48
[2026-06-05 14:54:49,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:54:49,752.752 INFO    ] Initializing speech engine...
[2026-06-05 14:54:49,758.758 INFO    ] 2026-06-05 14:54:49
[2026-06-05 14:54:50,029.029 INFO    ] 2026-06-05 14:54:50
[2026-06-05 14:54:50,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:54:50,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:54:50,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:54:50,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:54:50,766.766 INFO    ] time= 05/06/2026 14:54:50
[2026-06-05 14:54:50,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:54:50,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:54:50,977.977 INFO    ] No existing commands found in stream
[2026-06-05 14:54:55,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:54:56,002.002 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 14:54:56,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:54:56,466.466 INFO    ] Checking for system updates...
[2026-06-05 14:54:56,501.501 INFO    ] 200
[2026-06-05 14:54:56,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:56,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:54:56,559.559 INFO    ] No update needed
[2026-06-05 14:54:56,562.562 INFO    ] Checking for camera pi updates...
[2026-06-05 14:54:56,597.597 INFO    ] 200
[2026-06-05 14:54:56,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:54:56,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:54:56,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:54:56,688.688 INFO    ] No camera update needed
[2026-06-05 14:54:56,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:54:56,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:54:56,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:54:56,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:54:58,743.743 INFO    ] ================================================
[2026-06-05 14:54:58,758.758 INFO    ] Launching Daemon at Fri Jun  5 14:54:58 IST 2026
[2026-06-05 14:54:58,768.768 INFO    ] ================================================
[2026-06-05 14:54:59,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:54:59
[2026-06-05 14:54:59,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:55:00,191.191 INFO    ] Initializing speech engine...
[2026-06-05 14:55:00,201.201 INFO    ] 2026-06-05 14:55:00
[2026-06-05 14:55:00,459.459 INFO    ] 2026-06-05 14:55:00
[2026-06-05 14:55:00,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:55:00,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:55:00,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:55:00,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:55:00,935.935 INFO    ] time= 05/06/2026 14:55:00
[2026-06-05 14:55:00,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:55:01,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:55:01,125.125 INFO    ] No existing commands found in stream
[2026-06-05 14:55:06,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:55:06,154.154 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 14:55:07,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:55:07,956.956 INFO    ] Checking for system updates...
[2026-06-05 14:55:07,992.992 INFO    ] 200
[2026-06-05 14:55:07,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:08,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:55:08,051.051 INFO    ] No update needed
[2026-06-05 14:55:08,053.053 INFO    ] Checking for camera pi updates...
[2026-06-05 14:55:08,093.093 INFO    ] 200
[2026-06-05 14:55:08,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:08,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:55:08,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:55:08,163.163 INFO    ] No camera update needed
[2026-06-05 14:55:08,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:55:08,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:55:08,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:55:08,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:55:10,220.220 INFO    ] ================================================
[2026-06-05 14:55:10,235.235 INFO    ] Launching Daemon at Fri Jun  5 14:55:10 IST 2026
[2026-06-05 14:55:10,246.246 INFO    ] ================================================
[2026-06-05 14:55:10,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:55:10
[2026-06-05 14:55:11,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:55:11,661.661 INFO    ] Initializing speech engine...
[2026-06-05 14:55:11,676.676 INFO    ] 2026-06-05 14:55:11
[2026-06-05 14:55:11,930.930 INFO    ] 2026-06-05 14:55:11
[2026-06-05 14:55:11,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:55:12,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:55:12,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:55:12,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:55:12,309.309 INFO    ] time= 05/06/2026 14:55:12
[2026-06-05 14:55:12,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:55:12,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:55:12,487.487 INFO    ] No existing commands found in stream
[2026-06-05 14:55:17,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:55:17,515.515 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 14:55:20,615.615 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:55:20,617.617 INFO    ] Checking for system updates...
[2026-06-05 14:55:20,653.653 INFO    ] 200
[2026-06-05 14:55:20,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:20,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:55:20,715.715 INFO    ] No update needed
[2026-06-05 14:55:20,718.718 INFO    ] Checking for camera pi updates...
[2026-06-05 14:55:20,756.756 INFO    ] 200
[2026-06-05 14:55:20,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:20,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:55:20,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:55:20,857.857 INFO    ] No camera update needed
[2026-06-05 14:55:20,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:55:20,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:55:20,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:55:20,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:55:22,914.914 INFO    ] ================================================
[2026-06-05 14:55:22,929.929 INFO    ] Launching Daemon at Fri Jun  5 14:55:22 IST 2026
[2026-06-05 14:55:22,939.939 INFO    ] ================================================
[2026-06-05 14:55:23,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:55:23
[2026-06-05 14:55:24,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:55:24,428.428 INFO    ] Initializing speech engine...
[2026-06-05 14:55:24,440.440 INFO    ] 2026-06-05 14:55:24
[2026-06-05 14:55:24,708.708 INFO    ] 2026-06-05 14:55:24
[2026-06-05 14:55:24,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:55:24,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:55:24,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:55:25,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:55:25,046.046 INFO    ] time= 05/06/2026 14:55:25
[2026-06-05 14:55:25,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:55:25,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:55:25,164.164 INFO    ] No existing commands found in stream
[2026-06-05 14:55:30,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:55:30,203.203 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 14:55:31,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:55:31,634.634 INFO    ] Checking for system updates...
[2026-06-05 14:55:31,673.673 INFO    ] 200
[2026-06-05 14:55:31,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:31,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:55:31,747.747 INFO    ] No update needed
[2026-06-05 14:55:31,749.749 INFO    ] Checking for camera pi updates...
[2026-06-05 14:55:31,790.790 INFO    ] 200
[2026-06-05 14:55:31,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:31,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:55:31,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:55:31,909.909 INFO    ] No camera update needed
[2026-06-05 14:55:31,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:55:31,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:55:31,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:55:31,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:55:33,969.969 INFO    ] ================================================
[2026-06-05 14:55:33,984.984 INFO    ] Launching Daemon at Fri Jun  5 14:55:33 IST 2026
[2026-06-05 14:55:34,995.995 INFO    ] ================================================
[2026-06-05 14:55:34,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:55:34
[2026-06-05 14:55:35,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:55:35,399.399 INFO    ] Initializing speech engine...
[2026-06-05 14:55:35,418.418 INFO    ] 2026-06-05 14:55:35
[2026-06-05 14:55:35,691.691 INFO    ] 2026-06-05 14:55:35
[2026-06-05 14:55:35,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:55:35,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:55:35,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:55:36,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:55:36,090.090 INFO    ] time= 05/06/2026 14:55:36
[2026-06-05 14:55:36,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:55:36,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:55:36,257.257 INFO    ] No existing commands found in stream
[2026-06-05 14:55:41,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:55:41,290.290 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 14:55:42,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:55:42,897.897 INFO    ] Checking for system updates...
[2026-06-05 14:55:42,933.933 INFO    ] 200
[2026-06-05 14:55:42,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:42,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:55:42,991.991 INFO    ] No update needed
[2026-06-05 14:55:42,993.993 INFO    ] Checking for camera pi updates...
[2026-06-05 14:55:43,027.027 INFO    ] 200
[2026-06-05 14:55:43,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:43,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:55:43,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:55:43,123.123 INFO    ] No camera update needed
[2026-06-05 14:55:43,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:55:43,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:55:43,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:55:43,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:55:45,180.180 INFO    ] ================================================
[2026-06-05 14:55:45,195.195 INFO    ] Launching Daemon at Fri Jun  5 14:55:45 IST 2026
[2026-06-05 14:55:45,206.206 INFO    ] ================================================
[2026-06-05 14:55:45,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:55:45
[2026-06-05 14:55:46,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:55:46,625.625 INFO    ] Initializing speech engine...
[2026-06-05 14:55:46,635.635 INFO    ] 2026-06-05 14:55:46
[2026-06-05 14:55:46,884.884 INFO    ] 2026-06-05 14:55:46
[2026-06-05 14:55:46,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:55:49,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:55:49,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:55:49,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:55:49,446.446 INFO    ] time= 05/06/2026 14:55:49
[2026-06-05 14:55:49,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:55:49,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:55:49,562.562 INFO    ] No existing commands found in stream
[2026-06-05 14:55:54,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:55:54,576.576 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 14:55:56,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:55:56,805.805 INFO    ] Checking for system updates...
[2026-06-05 14:55:56,845.845 INFO    ] 200
[2026-06-05 14:55:56,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:56,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:55:56,904.904 INFO    ] No update needed
[2026-06-05 14:55:56,907.907 INFO    ] Checking for camera pi updates...
[2026-06-05 14:55:56,941.941 INFO    ] 200
[2026-06-05 14:55:56,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:55:56,991.991 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:55:57,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:55:57,039.039 INFO    ] No camera update needed
[2026-06-05 14:55:57,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:55:57,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:55:57,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:55:57,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:55:59,094.094 INFO    ] ================================================
[2026-06-05 14:55:59,109.109 INFO    ] Launching Daemon at Fri Jun  5 14:55:59 IST 2026
[2026-06-05 14:55:59,120.120 INFO    ] ================================================
[2026-06-05 14:55:59,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:55:59
[2026-06-05 14:56:00,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:56:00,574.574 INFO    ] Initializing speech engine...
[2026-06-05 14:56:00,587.587 INFO    ] 2026-06-05 14:56:00
[2026-06-05 14:56:00,851.851 INFO    ] 2026-06-05 14:56:00
[2026-06-05 14:56:00,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:56:01,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:56:01,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:56:01,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:56:01,374.374 INFO    ] time= 05/06/2026 14:56:01
[2026-06-05 14:56:01,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:56:01,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:56:01,556.556 INFO    ] No existing commands found in stream
[2026-06-05 14:56:06,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:56:06,592.592 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 14:56:08,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:56:08,763.763 INFO    ] Checking for system updates...
[2026-06-05 14:56:08,800.800 INFO    ] 200
[2026-06-05 14:56:08,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:08,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:56:08,863.863 INFO    ] No update needed
[2026-06-05 14:56:08,866.866 INFO    ] Checking for camera pi updates...
[2026-06-05 14:56:08,899.899 INFO    ] 200
[2026-06-05 14:56:08,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:08,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:56:08,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:56:08,987.987 INFO    ] No camera update needed
[2026-06-05 14:56:08,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:56:08,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:56:08,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:56:09,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:56:11,045.045 INFO    ] ================================================
[2026-06-05 14:56:11,060.060 INFO    ] Launching Daemon at Fri Jun  5 14:56:11 IST 2026
[2026-06-05 14:56:11,071.071 INFO    ] ================================================
[2026-06-05 14:56:11,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:56:11
[2026-06-05 14:56:12,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:56:12,698.698 INFO    ] Initializing speech engine...
[2026-06-05 14:56:12,703.703 INFO    ] 2026-06-05 14:56:12
[2026-06-05 14:56:12,991.991 INFO    ] 2026-06-05 14:56:12
[2026-06-05 14:56:13,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:56:13,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:56:13,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:56:13,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:56:13,532.532 INFO    ] time= 05/06/2026 14:56:13
[2026-06-05 14:56:13,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:56:13,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:56:13,690.690 INFO    ] No existing commands found in stream
[2026-06-05 14:56:18,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:56:18,708.708 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 14:56:22,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:56:22,132.132 INFO    ] Checking for system updates...
[2026-06-05 14:56:22,169.169 INFO    ] 200
[2026-06-05 14:56:22,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:22,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:56:22,227.227 INFO    ] No update needed
[2026-06-05 14:56:22,229.229 INFO    ] Checking for camera pi updates...
[2026-06-05 14:56:22,264.264 INFO    ] 200
[2026-06-05 14:56:22,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:22,308.308 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:56:22,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:56:22,353.353 INFO    ] No camera update needed
[2026-06-05 14:56:22,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:56:22,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:56:22,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:56:22,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:56:24,411.411 INFO    ] ================================================
[2026-06-05 14:56:24,427.427 INFO    ] Launching Daemon at Fri Jun  5 14:56:24 IST 2026
[2026-06-05 14:56:24,438.438 INFO    ] ================================================
[2026-06-05 14:56:25,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:56:25
[2026-06-05 14:56:25,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:56:25,940.940 INFO    ] Initializing speech engine...
[2026-06-05 14:56:25,948.948 INFO    ] 2026-06-05 14:56:25
[2026-06-05 14:56:26,212.212 INFO    ] 2026-06-05 14:56:26
[2026-06-05 14:56:26,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:56:26,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:56:26,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:56:26,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:56:26,694.694 INFO    ] time= 05/06/2026 14:56:26
[2026-06-05 14:56:26,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:56:26,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:56:26,940.940 INFO    ] No existing commands found in stream
[2026-06-05 14:56:31,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:56:31,972.972 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 14:56:33,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:56:33,033.033 INFO    ] Checking for system updates...
[2026-06-05 14:56:33,081.081 INFO    ] 200
[2026-06-05 14:56:33,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:33,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:56:33,167.167 INFO    ] No update needed
[2026-06-05 14:56:33,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 14:56:33,211.211 INFO    ] 200
[2026-06-05 14:56:33,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:33,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:56:33,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:56:33,285.285 INFO    ] No camera update needed
[2026-06-05 14:56:33,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:56:33,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:56:33,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:56:33,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:56:35,343.343 INFO    ] ================================================
[2026-06-05 14:56:35,359.359 INFO    ] Launching Daemon at Fri Jun  5 14:56:35 IST 2026
[2026-06-05 14:56:35,370.370 INFO    ] ================================================
[2026-06-05 14:56:35,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:56:35
[2026-06-05 14:56:36,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:56:36,802.802 INFO    ] Initializing speech engine...
[2026-06-05 14:56:36,811.811 INFO    ] 2026-06-05 14:56:36
[2026-06-05 14:56:37,062.062 INFO    ] 2026-06-05 14:56:37
[2026-06-05 14:56:37,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:56:37,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:56:37,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:56:37,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:56:37,440.440 INFO    ] time= 05/06/2026 14:56:37
[2026-06-05 14:56:37,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:56:37,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:56:37,635.635 INFO    ] No existing commands found in stream
[2026-06-05 14:56:42,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:56:42,649.649 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 14:56:45,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:56:45,356.356 INFO    ] Checking for system updates...
[2026-06-05 14:56:45,392.392 INFO    ] 200
[2026-06-05 14:56:45,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:45,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:56:45,462.462 INFO    ] No update needed
[2026-06-05 14:56:45,465.465 INFO    ] Checking for camera pi updates...
[2026-06-05 14:56:45,504.504 INFO    ] 200
[2026-06-05 14:56:45,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:45,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:56:45,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:56:45,608.608 INFO    ] No camera update needed
[2026-06-05 14:56:45,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:56:45,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:56:45,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:56:45,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:56:47,670.670 INFO    ] ================================================
[2026-06-05 14:56:47,685.685 INFO    ] Launching Daemon at Fri Jun  5 14:56:47 IST 2026
[2026-06-05 14:56:47,696.696 INFO    ] ================================================
[2026-06-05 14:56:48,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:56:48
[2026-06-05 14:56:48,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:56:49,115.115 INFO    ] Initializing speech engine...
[2026-06-05 14:56:49,127.127 INFO    ] 2026-06-05 14:56:49
[2026-06-05 14:56:49,393.393 INFO    ] 2026-06-05 14:56:49
[2026-06-05 14:56:49,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:56:49,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:56:49,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:56:49,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:56:49,915.915 INFO    ] time= 05/06/2026 14:56:49
[2026-06-05 14:56:49,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:56:49,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:56:50,097.097 INFO    ] No existing commands found in stream
[2026-06-05 14:56:55,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:56:55,128.128 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 14:56:57,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:56:57,481.481 INFO    ] Checking for system updates...
[2026-06-05 14:56:57,517.517 INFO    ] 200
[2026-06-05 14:56:57,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:57,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:56:57,576.576 INFO    ] No update needed
[2026-06-05 14:56:57,578.578 INFO    ] Checking for camera pi updates...
[2026-06-05 14:56:57,612.612 INFO    ] 200
[2026-06-05 14:56:57,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:56:57,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:56:57,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:56:57,812.812 INFO    ] No camera update needed
[2026-06-05 14:56:57,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:56:57,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:56:57,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:56:57,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:56:59,866.866 INFO    ] ================================================
[2026-06-05 14:56:59,883.883 INFO    ] Launching Daemon at Fri Jun  5 14:56:59 IST 2026
[2026-06-05 14:56:59,894.894 INFO    ] ================================================
[2026-06-05 14:57:00,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:57:00
[2026-06-05 14:57:01,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:57:01,757.757 INFO    ] Initializing speech engine...
[2026-06-05 14:57:01,761.761 INFO    ] 2026-06-05 14:57:01
[2026-06-05 14:57:02,161.161 INFO    ] 2026-06-05 14:57:02
[2026-06-05 14:57:02,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:57:02,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:57:02,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:57:02,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:57:02,556.556 INFO    ] time= 05/06/2026 14:57:02
[2026-06-05 14:57:02,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:57:02,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:57:02,744.744 INFO    ] No existing commands found in stream
[2026-06-05 14:57:07,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:57:07,771.771 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 14:57:09,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:57:09,037.037 INFO    ] Checking for system updates...
[2026-06-05 14:57:09,075.075 INFO    ] 200
[2026-06-05 14:57:09,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:57:09,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:57:09,150.150 INFO    ] No update needed
[2026-06-05 14:57:09,155.155 INFO    ] Checking for camera pi updates...
[2026-06-05 14:57:09,193.193 INFO    ] 200
[2026-06-05 14:57:09,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:57:09,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:57:09,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:57:09,298.298 INFO    ] No camera update needed
[2026-06-05 14:57:09,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:57:09,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:57:09,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:57:09,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:57:11,356.356 INFO    ] ================================================
[2026-06-05 14:57:11,371.371 INFO    ] Launching Daemon at Fri Jun  5 14:57:11 IST 2026
[2026-06-05 14:57:11,382.382 INFO    ] ================================================
[2026-06-05 14:57:11,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:57:11
[2026-06-05 14:57:12,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:57:12,808.808 INFO    ] Initializing speech engine...
[2026-06-05 14:57:12,819.819 INFO    ] 2026-06-05 14:57:12
[2026-06-05 14:57:13,077.077 INFO    ] 2026-06-05 14:57:13
[2026-06-05 14:57:13,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:57:13,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:57:13,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:57:13,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:57:13,462.462 INFO    ] time= 05/06/2026 14:57:13
[2026-06-05 14:57:13,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:57:13,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:57:13,646.646 INFO    ] No existing commands found in stream
[2026-06-05 14:57:18,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:57:18,674.674 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 14:57:20,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:57:20,610.610 INFO    ] Checking for system updates...
[2026-06-05 14:57:20,646.646 INFO    ] 200
[2026-06-05 14:57:20,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:57:20,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:57:20,711.711 INFO    ] No update needed
[2026-06-05 14:57:20,713.713 INFO    ] Checking for camera pi updates...
[2026-06-05 14:57:20,749.749 INFO    ] 200
[2026-06-05 14:57:20,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:57:20,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:57:20,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:57:20,838.838 INFO    ] No camera update needed
[2026-06-05 14:57:20,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:57:20,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:57:20,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:57:20,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:57:22,895.895 INFO    ] ================================================
[2026-06-05 14:57:22,910.910 INFO    ] Launching Daemon at Fri Jun  5 14:57:22 IST 2026
[2026-06-05 14:57:22,921.921 INFO    ] ================================================
[2026-06-05 14:57:23,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:57:23
[2026-06-05 14:57:24,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:57:24,324.324 INFO    ] Initializing speech engine...
[2026-06-05 14:57:24,348.348 INFO    ] 2026-06-05 14:57:24
[2026-06-05 14:57:24,633.633 INFO    ] 2026-06-05 14:57:24
[2026-06-05 14:57:24,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:57:24,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:57:24,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:57:25,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:57:25,016.016 INFO    ] time= 05/06/2026 14:57:25
[2026-06-05 14:57:25,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:57:25,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:57:25,135.135 INFO    ] No existing commands found in stream
[2026-06-05 14:57:30,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:57:30,158.158 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 14:57:34,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:57:34,236.236 INFO    ] Checking for system updates...
[2026-06-05 14:57:34,273.273 INFO    ] 200
[2026-06-05 14:57:34,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:57:34,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:57:34,331.331 INFO    ] No update needed
[2026-06-05 14:57:34,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 14:57:34,371.371 INFO    ] 200
[2026-06-05 14:57:34,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:57:34,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:57:34,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:57:34,462.462 INFO    ] No camera update needed
[2026-06-05 14:57:34,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:57:34,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:57:34,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:57:34,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:57:36,517.517 INFO    ] ================================================
[2026-06-05 14:57:36,533.533 INFO    ] Launching Daemon at Fri Jun  5 14:57:36 IST 2026
[2026-06-05 14:57:36,544.544 INFO    ] ================================================
[2026-06-05 14:57:37,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:57:37
[2026-06-05 14:57:37,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:57:38,070.070 INFO    ] Initializing speech engine...
[2026-06-05 14:57:38,079.079 INFO    ] 2026-06-05 14:57:38
[2026-06-05 14:57:38,323.323 INFO    ] 2026-06-05 14:57:38
[2026-06-05 14:57:38,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:57:38,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:57:38,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:57:38,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:57:38,788.788 INFO    ] time= 05/06/2026 14:57:38
[2026-06-05 14:57:38,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:57:38,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:57:38,996.996 INFO    ] No existing commands found in stream
[2026-06-05 14:57:44,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:57:44,026.026 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 14:57:49,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 14:57:49,299.299 INFO    ] Checking for system updates...
[2026-06-05 14:57:49,339.339 INFO    ] 200
[2026-06-05 14:57:49,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:57:49,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:57:49,397.397 INFO    ] No update needed
[2026-06-05 14:57:49,399.399 INFO    ] Checking for camera pi updates...
[2026-06-05 14:57:49,433.433 INFO    ] 200
[2026-06-05 14:57:49,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:57:49,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:57:49,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:57:49,523.523 INFO    ] No camera update needed
[2026-06-05 14:57:49,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:57:49,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:57:49,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:57:49,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:57:51,577.577 INFO    ] ================================================
[2026-06-05 14:57:51,593.593 INFO    ] Launching Daemon at Fri Jun  5 14:57:51 IST 2026
[2026-06-05 14:57:51,604.604 INFO    ] ================================================
[2026-06-05 14:57:52,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:57:52
[2026-06-05 14:57:52,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:57:53,007.007 INFO    ] Initializing speech engine...
[2026-06-05 14:57:53,030.030 INFO    ] 2026-06-05 14:57:53
[2026-06-05 14:57:53,280.280 INFO    ] 2026-06-05 14:57:53
[2026-06-05 14:57:53,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:57:53,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:57:53,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:57:53,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:57:53,754.754 INFO    ] time= 05/06/2026 14:57:53
[2026-06-05 14:57:53,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:57:53,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:57:53,983.983 INFO    ] No existing commands found in stream
[2026-06-05 14:57:58,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:57:59,002.002 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 14:58:02,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:58:02,281.281 INFO    ] Checking for system updates...
[2026-06-05 14:58:02,328.328 INFO    ] 200
[2026-06-05 14:58:02,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:02,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:58:02,413.413 INFO    ] No update needed
[2026-06-05 14:58:02,416.416 INFO    ] Checking for camera pi updates...
[2026-06-05 14:58:02,460.460 INFO    ] 200
[2026-06-05 14:58:02,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:02,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:58:02,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:58:02,542.542 INFO    ] No camera update needed
[2026-06-05 14:58:02,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:58:02,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:58:02,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:58:02,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:58:04,615.615 INFO    ] ================================================
[2026-06-05 14:58:04,630.630 INFO    ] Launching Daemon at Fri Jun  5 14:58:04 IST 2026
[2026-06-05 14:58:04,640.640 INFO    ] ================================================
[2026-06-05 14:58:05,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:58:05
[2026-06-05 14:58:05,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:58:06,102.102 INFO    ] Initializing speech engine...
[2026-06-05 14:58:06,109.109 INFO    ] 2026-06-05 14:58:06
[2026-06-05 14:58:06,370.370 INFO    ] 2026-06-05 14:58:06
[2026-06-05 14:58:06,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:58:06,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:58:06,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:58:06,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:58:06,849.849 INFO    ] time= 05/06/2026 14:58:06
[2026-06-05 14:58:06,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:58:06,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:58:07,092.092 INFO    ] No existing commands found in stream
[2026-06-05 14:58:12,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:58:12,115.115 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 14:58:14,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:58:14,519.519 INFO    ] Checking for system updates...
[2026-06-05 14:58:14,558.558 INFO    ] 200
[2026-06-05 14:58:14,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:14,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:58:14,621.621 INFO    ] No update needed
[2026-06-05 14:58:14,623.623 INFO    ] Checking for camera pi updates...
[2026-06-05 14:58:14,661.661 INFO    ] 200
[2026-06-05 14:58:14,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:14,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:58:14,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:58:14,752.752 INFO    ] No camera update needed
[2026-06-05 14:58:14,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:58:14,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:58:14,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:58:14,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:58:16,807.807 INFO    ] ================================================
[2026-06-05 14:58:16,823.823 INFO    ] Launching Daemon at Fri Jun  5 14:58:16 IST 2026
[2026-06-05 14:58:16,834.834 INFO    ] ================================================
[2026-06-05 14:58:17,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:58:17
[2026-06-05 14:58:18,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:58:18,352.352 INFO    ] Initializing speech engine...
[2026-06-05 14:58:18,359.359 INFO    ] 2026-06-05 14:58:18
[2026-06-05 14:58:18,608.608 INFO    ] 2026-06-05 14:58:18
[2026-06-05 14:58:18,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:58:19,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:58:19,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:58:19,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:58:19,384.384 INFO    ] time= 05/06/2026 14:58:19
[2026-06-05 14:58:19,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:58:19,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:58:19,597.597 INFO    ] No existing commands found in stream
[2026-06-05 14:58:24,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:58:24,618.618 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 14:58:27,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:58:27,641.641 INFO    ] Checking for system updates...
[2026-06-05 14:58:27,677.677 INFO    ] 200
[2026-06-05 14:58:27,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:27,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:58:27,736.736 INFO    ] No update needed
[2026-06-05 14:58:27,738.738 INFO    ] Checking for camera pi updates...
[2026-06-05 14:58:27,776.776 INFO    ] 200
[2026-06-05 14:58:27,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:27,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:58:27,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:58:27,876.876 INFO    ] No camera update needed
[2026-06-05 14:58:27,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:58:27,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:58:27,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:58:27,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:58:29,935.935 INFO    ] ================================================
[2026-06-05 14:58:29,950.950 INFO    ] Launching Daemon at Fri Jun  5 14:58:29 IST 2026
[2026-06-05 14:58:29,962.962 INFO    ] ================================================
[2026-06-05 14:58:30,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:58:30
[2026-06-05 14:58:31,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:58:31,596.596 INFO    ] Initializing speech engine...
[2026-06-05 14:58:31,607.607 INFO    ] 2026-06-05 14:58:31
[2026-06-05 14:58:31,897.897 INFO    ] 2026-06-05 14:58:31
[2026-06-05 14:58:31,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:58:32,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:58:32,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:58:32,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:58:32,403.403 INFO    ] time= 05/06/2026 14:58:32
[2026-06-05 14:58:32,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:58:32,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:58:32,620.620 INFO    ] No existing commands found in stream
[2026-06-05 14:58:37,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:58:37,648.648 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 14:58:39,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:58:39,133.133 INFO    ] Checking for system updates...
[2026-06-05 14:58:39,172.172 INFO    ] 200
[2026-06-05 14:58:39,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:39,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:58:39,235.235 INFO    ] No update needed
[2026-06-05 14:58:39,238.238 INFO    ] Checking for camera pi updates...
[2026-06-05 14:58:39,271.271 INFO    ] 200
[2026-06-05 14:58:39,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:39,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:58:39,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:58:39,372.372 INFO    ] No camera update needed
[2026-06-05 14:58:39,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:58:39,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:58:39,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:58:39,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:58:41,428.428 INFO    ] ================================================
[2026-06-05 14:58:41,444.444 INFO    ] Launching Daemon at Fri Jun  5 14:58:41 IST 2026
[2026-06-05 14:58:41,455.455 INFO    ] ================================================
[2026-06-05 14:58:42,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:58:42
[2026-06-05 14:58:42,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:58:42,879.879 INFO    ] Initializing speech engine...
[2026-06-05 14:58:42,890.890 INFO    ] 2026-06-05 14:58:42
[2026-06-05 14:58:43,137.137 INFO    ] 2026-06-05 14:58:43
[2026-06-05 14:58:43,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:58:43,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:58:43,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:58:43,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:58:43,513.513 INFO    ] time= 05/06/2026 14:58:43
[2026-06-05 14:58:43,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:58:43,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:58:43,706.706 INFO    ] No existing commands found in stream
[2026-06-05 14:58:48,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:58:48,720.720 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 14:58:49,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 14:58:49,673.673 INFO    ] Checking for system updates...
[2026-06-05 14:58:49,709.709 INFO    ] 200
[2026-06-05 14:58:49,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:49,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:58:49,783.783 INFO    ] No update needed
[2026-06-05 14:58:49,786.786 INFO    ] Checking for camera pi updates...
[2026-06-05 14:58:49,824.824 INFO    ] 200
[2026-06-05 14:58:49,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:58:49,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:58:49,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:58:49,920.920 INFO    ] No camera update needed
[2026-06-05 14:58:49,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:58:49,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:58:49,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:58:49,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:58:51,978.978 INFO    ] ================================================
[2026-06-05 14:58:52,994.994 INFO    ] Launching Daemon at Fri Jun  5 14:58:51 IST 2026
[2026-06-05 14:58:52,006.006 INFO    ] ================================================
[2026-06-05 14:58:52,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:58:52
[2026-06-05 14:58:53,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:58:53,441.441 INFO    ] Initializing speech engine...
[2026-06-05 14:58:53,452.452 INFO    ] 2026-06-05 14:58:53
[2026-06-05 14:58:53,700.700 INFO    ] 2026-06-05 14:58:53
[2026-06-05 14:58:53,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:58:53,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:58:53,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:58:54,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:58:54,089.089 INFO    ] time= 05/06/2026 14:58:54
[2026-06-05 14:58:54,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:58:54,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:58:54,170.170 INFO    ] No existing commands found in stream
[2026-06-05 14:58:59,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:58:59,182.182 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 14:59:00,668.668 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 14:59:00,670.670 INFO    ] Checking for system updates...
[2026-06-05 14:59:00,717.717 INFO    ] 200
[2026-06-05 14:59:00,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:00,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:59:00,779.779 INFO    ] No update needed
[2026-06-05 14:59:00,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 14:59:00,818.818 INFO    ] 200
[2026-06-05 14:59:00,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:00,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:59:01,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:59:01,027.027 INFO    ] No camera update needed
[2026-06-05 14:59:01,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:59:01,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:59:01,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:59:01,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:59:03,097.097 INFO    ] ================================================
[2026-06-05 14:59:03,113.113 INFO    ] Launching Daemon at Fri Jun  5 14:59:03 IST 2026
[2026-06-05 14:59:03,124.124 INFO    ] ================================================
[2026-06-05 14:59:03,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:59:03
[2026-06-05 14:59:04,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:59:04,555.555 INFO    ] Initializing speech engine...
[2026-06-05 14:59:04,570.570 INFO    ] 2026-06-05 14:59:04
[2026-06-05 14:59:04,839.839 INFO    ] 2026-06-05 14:59:04
[2026-06-05 14:59:04,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:59:05,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:59:05,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:59:05,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:59:05,332.332 INFO    ] time= 05/06/2026 14:59:05
[2026-06-05 14:59:05,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:59:05,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:59:05,480.480 INFO    ] No existing commands found in stream
[2026-06-05 14:59:10,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:59:10,502.502 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 14:59:12,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 14:59:12,623.623 INFO    ] Checking for system updates...
[2026-06-05 14:59:12,663.663 INFO    ] 200
[2026-06-05 14:59:12,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:12,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:59:12,745.745 INFO    ] No update needed
[2026-06-05 14:59:12,748.748 INFO    ] Checking for camera pi updates...
[2026-06-05 14:59:12,785.785 INFO    ] 200
[2026-06-05 14:59:12,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:12,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:59:12,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:59:12,881.881 INFO    ] No camera update needed
[2026-06-05 14:59:12,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:59:12,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:59:12,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:59:12,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:59:14,937.937 INFO    ] ================================================
[2026-06-05 14:59:14,953.953 INFO    ] Launching Daemon at Fri Jun  5 14:59:14 IST 2026
[2026-06-05 14:59:14,964.964 INFO    ] ================================================
[2026-06-05 14:59:15,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:59:15
[2026-06-05 14:59:16,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:59:16,396.396 INFO    ] Initializing speech engine...
[2026-06-05 14:59:16,405.405 INFO    ] 2026-06-05 14:59:16
[2026-06-05 14:59:16,666.666 INFO    ] 2026-06-05 14:59:16
[2026-06-05 14:59:16,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:59:17,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:59:17,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:59:19,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:59:19,192.192 INFO    ] time= 05/06/2026 14:59:19
[2026-06-05 14:59:19,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:59:19,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:59:19,345.345 INFO    ] No existing commands found in stream
[2026-06-05 14:59:24,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:59:24,358.358 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 14:59:26,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:59:26,227.227 INFO    ] Checking for system updates...
[2026-06-05 14:59:26,266.266 INFO    ] 200
[2026-06-05 14:59:26,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:26,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:59:26,330.330 INFO    ] No update needed
[2026-06-05 14:59:26,332.332 INFO    ] Checking for camera pi updates...
[2026-06-05 14:59:26,370.370 INFO    ] 200
[2026-06-05 14:59:26,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:26,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:59:26,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:59:26,456.456 INFO    ] No camera update needed
[2026-06-05 14:59:26,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:59:26,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:59:26,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:59:26,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:59:28,514.514 INFO    ] ================================================
[2026-06-05 14:59:28,530.530 INFO    ] Launching Daemon at Fri Jun  5 14:59:28 IST 2026
[2026-06-05 14:59:28,541.541 INFO    ] ================================================
[2026-06-05 14:59:29,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:59:29
[2026-06-05 14:59:29,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:59:30,167.167 INFO    ] Initializing speech engine...
[2026-06-05 14:59:30,180.180 INFO    ] 2026-06-05 14:59:30
[2026-06-05 14:59:30,466.466 INFO    ] 2026-06-05 14:59:30
[2026-06-05 14:59:30,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:59:30,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:59:31,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:59:31,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:59:31,240.240 INFO    ] time= 05/06/2026 14:59:31
[2026-06-05 14:59:31,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:59:31,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:59:31,537.537 INFO    ] No existing commands found in stream
[2026-06-05 14:59:36,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:59:36,571.571 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 14:59:39,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 14:59:39,149.149 INFO    ] Checking for system updates...
[2026-06-05 14:59:39,186.186 INFO    ] 200
[2026-06-05 14:59:39,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:39,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:59:39,246.246 INFO    ] No update needed
[2026-06-05 14:59:39,249.249 INFO    ] Checking for camera pi updates...
[2026-06-05 14:59:39,288.288 INFO    ] 200
[2026-06-05 14:59:39,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:39,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:59:39,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 14:59:39,380.380 INFO    ] No camera update needed
[2026-06-05 14:59:39,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:59:39,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:59:39,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:59:39,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:59:41,437.437 INFO    ] ================================================
[2026-06-05 14:59:41,452.452 INFO    ] Launching Daemon at Fri Jun  5 14:59:41 IST 2026
[2026-06-05 14:59:41,463.463 INFO    ] ================================================
[2026-06-05 14:59:42,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:59:42
[2026-06-05 14:59:42,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:59:42,871.871 INFO    ] Initializing speech engine...
[2026-06-05 14:59:42,895.895 INFO    ] 2026-06-05 14:59:42
[2026-06-05 14:59:43,152.152 INFO    ] 2026-06-05 14:59:43
[2026-06-05 14:59:43,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:59:43,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:59:43,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:59:43,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:59:43,651.651 INFO    ] time= 05/06/2026 14:59:43
[2026-06-05 14:59:43,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:59:43,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:59:43,875.875 INFO    ] No existing commands found in stream
[2026-06-05 14:59:48,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 14:59:48,891.891 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 14:59:51,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 14:59:51,786.786 INFO    ] Checking for system updates...
[2026-06-05 14:59:51,825.825 INFO    ] 200
[2026-06-05 14:59:51,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:51,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:59:51,889.889 INFO    ] No update needed
[2026-06-05 14:59:51,892.892 INFO    ] Checking for camera pi updates...
[2026-06-05 14:59:51,927.927 INFO    ] 200
[2026-06-05 14:59:51,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 14:59:51,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 14:59:52,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 14:59:52,009.009 INFO    ] No camera update needed
[2026-06-05 14:59:52,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-05 14:59:52,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 14:59:52,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 14:59:52,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 14:59:54,064.064 INFO    ] ================================================
[2026-06-05 14:59:54,080.080 INFO    ] Launching Daemon at Fri Jun  5 14:59:54 IST 2026
[2026-06-05 14:59:54,091.091 INFO    ] ================================================
[2026-06-05 14:59:54,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 14:59:54
[2026-06-05 14:59:55,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 14:59:55,510.510 INFO    ] Initializing speech engine...
[2026-06-05 14:59:55,520.520 INFO    ] 2026-06-05 14:59:55
[2026-06-05 14:59:55,766.766 INFO    ] 2026-06-05 14:59:55
[2026-06-05 14:59:55,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 14:59:55,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 14:59:56,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 14:59:56,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 14:59:56,222.222 INFO    ] time= 05/06/2026 14:59:56
[2026-06-05 14:59:56,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 14:59:56,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-05 14:59:56,473.473 INFO    ] No existing commands found in stream
[2026-06-05 15:00:01,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:00:01,490.490 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 15:00:10,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:00:10,108.108 INFO    ] Checking for system updates...
[2026-06-05 15:00:10,145.145 INFO    ] 200
[2026-06-05 15:00:10,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:10,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:00:10,210.210 INFO    ] No update needed
[2026-06-05 15:00:10,213.213 INFO    ] Checking for camera pi updates...
[2026-06-05 15:00:10,246.246 INFO    ] 200
[2026-06-05 15:00:10,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:10,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:00:10,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:00:10,337.337 INFO    ] No camera update needed
[2026-06-05 15:00:10,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:00:10,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:00:10,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:00:10,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:00:12,393.393 INFO    ] ================================================
[2026-06-05 15:00:12,409.409 INFO    ] Launching Daemon at Fri Jun  5 15:00:12 IST 2026
[2026-06-05 15:00:12,421.421 INFO    ] ================================================
[2026-06-05 15:00:13,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:00:13
[2026-06-05 15:00:13,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:00:13,870.870 INFO    ] Initializing speech engine...
[2026-06-05 15:00:13,890.890 INFO    ] 2026-06-05 15:00:13
[2026-06-05 15:00:14,139.139 INFO    ] 2026-06-05 15:00:14
[2026-06-05 15:00:14,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:00:14,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:00:14,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:00:14,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:00:14,515.515 INFO    ] time= 05/06/2026 15:00:14
[2026-06-05 15:00:14,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:00:14,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:00:14,711.711 INFO    ] No existing commands found in stream
[2026-06-05 15:00:19,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:00:19,725.725 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 15:00:21,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:00:21,707.707 INFO    ] Checking for system updates...
[2026-06-05 15:00:21,747.747 INFO    ] 200
[2026-06-05 15:00:21,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:21,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:00:21,812.812 INFO    ] No update needed
[2026-06-05 15:00:21,815.815 INFO    ] Checking for camera pi updates...
[2026-06-05 15:00:21,849.849 INFO    ] 200
[2026-06-05 15:00:21,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:21,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:00:21,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:00:21,942.942 INFO    ] No camera update needed
[2026-06-05 15:00:21,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:00:21,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:00:21,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:00:21,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:00:24,999.999 INFO    ] ================================================
[2026-06-05 15:00:24,016.016 INFO    ] Launching Daemon at Fri Jun  5 15:00:24 IST 2026
[2026-06-05 15:00:24,027.027 INFO    ] ================================================
[2026-06-05 15:00:24,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:00:24
[2026-06-05 15:00:25,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:00:25,591.591 INFO    ] Initializing speech engine...
[2026-06-05 15:00:25,599.599 INFO    ] 2026-06-05 15:00:25
[2026-06-05 15:00:25,860.860 INFO    ] 2026-06-05 15:00:25
[2026-06-05 15:00:25,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:00:26,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:00:26,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:00:26,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:00:26,325.325 INFO    ] time= 05/06/2026 15:00:26
[2026-06-05 15:00:26,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:00:26,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:00:26,539.539 INFO    ] No existing commands found in stream
[2026-06-05 15:00:31,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:00:31,568.568 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 15:00:33,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:00:33,342.342 INFO    ] Checking for system updates...
[2026-06-05 15:00:33,380.380 INFO    ] 200
[2026-06-05 15:00:33,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:33,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:00:33,452.452 INFO    ] No update needed
[2026-06-05 15:00:33,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 15:00:33,500.500 INFO    ] 200
[2026-06-05 15:00:33,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:33,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:00:33,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:00:33,614.614 INFO    ] No camera update needed
[2026-06-05 15:00:33,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:00:33,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:00:33,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:00:33,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:00:35,676.676 INFO    ] ================================================
[2026-06-05 15:00:35,692.692 INFO    ] Launching Daemon at Fri Jun  5 15:00:35 IST 2026
[2026-06-05 15:00:35,704.704 INFO    ] ================================================
[2026-06-05 15:00:36,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:00:36
[2026-06-05 15:00:37,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:00:37,357.357 INFO    ] Initializing speech engine...
[2026-06-05 15:00:37,371.371 INFO    ] 2026-06-05 15:00:37
[2026-06-05 15:00:37,647.647 INFO    ] 2026-06-05 15:00:37
[2026-06-05 15:00:37,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:00:37,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:00:37,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:00:38,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:00:38,128.128 INFO    ] time= 05/06/2026 15:00:38
[2026-06-05 15:00:38,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:00:38,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:00:38,354.354 INFO    ] No existing commands found in stream
[2026-06-05 15:00:43,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:00:43,379.379 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 15:00:43,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:00:43,947.947 INFO    ] Checking for system updates...
[2026-06-05 15:00:43,987.987 INFO    ] 200
[2026-06-05 15:00:43,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:44,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:00:44,065.065 INFO    ] No update needed
[2026-06-05 15:00:44,068.068 INFO    ] Checking for camera pi updates...
[2026-06-05 15:00:44,104.104 INFO    ] 200
[2026-06-05 15:00:44,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:44,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:00:44,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:00:44,199.199 INFO    ] No camera update needed
[2026-06-05 15:00:44,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:00:44,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:00:44,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:00:44,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:00:46,258.258 INFO    ] ================================================
[2026-06-05 15:00:46,273.273 INFO    ] Launching Daemon at Fri Jun  5 15:00:46 IST 2026
[2026-06-05 15:00:46,284.284 INFO    ] ================================================
[2026-06-05 15:00:46,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:00:46
[2026-06-05 15:00:47,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:00:47,890.890 INFO    ] Initializing speech engine...
[2026-06-05 15:00:47,903.903 INFO    ] 2026-06-05 15:00:47
[2026-06-05 15:00:48,171.171 INFO    ] 2026-06-05 15:00:48
[2026-06-05 15:00:48,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:00:49,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:00:49,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:00:49,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:00:49,352.352 INFO    ] time= 05/06/2026 15:00:49
[2026-06-05 15:00:49,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:00:49,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:00:49,555.555 INFO    ] No existing commands found in stream
[2026-06-05 15:00:54,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:00:54,571.571 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 15:00:58,336.336 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:00:58,339.339 INFO    ] Checking for system updates...
[2026-06-05 15:00:58,375.375 INFO    ] 200
[2026-06-05 15:00:58,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:58,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:00:58,439.439 INFO    ] No update needed
[2026-06-05 15:00:58,441.441 INFO    ] Checking for camera pi updates...
[2026-06-05 15:00:58,479.479 INFO    ] 200
[2026-06-05 15:00:58,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:00:58,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:00:58,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:00:58,575.575 INFO    ] No camera update needed
[2026-06-05 15:00:58,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:00:58,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:00:58,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:00:58,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:01:00,631.631 INFO    ] ================================================
[2026-06-05 15:01:00,647.647 INFO    ] Launching Daemon at Fri Jun  5 15:01:00 IST 2026
[2026-06-05 15:01:00,658.658 INFO    ] ================================================
[2026-06-05 15:01:01,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:01:01
[2026-06-05 15:01:02,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:01:02,473.473 INFO    ] Initializing speech engine...
[2026-06-05 15:01:02,488.488 INFO    ] 2026-06-05 15:01:02
[2026-06-05 15:01:02,792.792 INFO    ] 2026-06-05 15:01:02
[2026-06-05 15:01:02,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:01:03,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:01:03,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:01:03,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:01:03,278.278 INFO    ] time= 05/06/2026 15:01:03
[2026-06-05 15:01:03,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:01:03,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:01:03,514.514 INFO    ] No existing commands found in stream
[2026-06-05 15:01:08,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:01:08,543.543 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 15:01:12,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:01:12,795.795 INFO    ] Checking for system updates...
[2026-06-05 15:01:12,835.835 INFO    ] 200
[2026-06-05 15:01:12,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:01:12,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:01:12,899.899 INFO    ] No update needed
[2026-06-05 15:01:12,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 15:01:12,948.948 INFO    ] 200
[2026-06-05 15:01:12,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:01:12,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:01:13,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:01:13,039.039 INFO    ] No camera update needed
[2026-06-05 15:01:13,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:01:13,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:01:13,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:01:13,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:01:15,097.097 INFO    ] ================================================
[2026-06-05 15:01:15,113.113 INFO    ] Launching Daemon at Fri Jun  5 15:01:15 IST 2026
[2026-06-05 15:01:15,124.124 INFO    ] ================================================
[2026-06-05 15:01:15,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:01:15
[2026-06-05 15:01:16,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:01:16,545.545 INFO    ] Initializing speech engine...
[2026-06-05 15:01:16,554.554 INFO    ] 2026-06-05 15:01:16
[2026-06-05 15:01:16,806.806 INFO    ] 2026-06-05 15:01:16
[2026-06-05 15:01:16,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:01:19,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:01:19,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:01:19,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:01:19,303.303 INFO    ] time= 05/06/2026 15:01:19
[2026-06-05 15:01:19,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:01:19,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:01:19,388.388 INFO    ] No existing commands found in stream
[2026-06-05 15:01:24,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:01:24,401.401 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 15:01:26,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:01:26,434.434 INFO    ] Checking for system updates...
[2026-06-05 15:01:26,470.470 INFO    ] 200
[2026-06-05 15:01:26,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:01:26,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:01:26,530.530 INFO    ] No update needed
[2026-06-05 15:01:26,533.533 INFO    ] Checking for camera pi updates...
[2026-06-05 15:01:26,569.569 INFO    ] 200
[2026-06-05 15:01:26,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:01:26,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:01:26,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:01:26,666.666 INFO    ] No camera update needed
[2026-06-05 15:01:26,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:01:26,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:01:26,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:01:26,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:01:28,723.723 INFO    ] ================================================
[2026-06-05 15:01:28,738.738 INFO    ] Launching Daemon at Fri Jun  5 15:01:28 IST 2026
[2026-06-05 15:01:28,749.749 INFO    ] ================================================
[2026-06-05 15:01:29,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:01:29
[2026-06-05 15:01:29,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:01:30,174.174 INFO    ] Initializing speech engine...
[2026-06-05 15:01:30,184.184 INFO    ] 2026-06-05 15:01:30
[2026-06-05 15:01:30,429.429 INFO    ] 2026-06-05 15:01:30
[2026-06-05 15:01:30,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:01:30,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:01:30,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:01:31,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:01:31,331.331 INFO    ] time= 05/06/2026 15:01:31
[2026-06-05 15:01:31,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:01:31,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:01:31,561.561 INFO    ] No existing commands found in stream
[2026-06-05 15:01:36,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:01:36,601.601 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 15:01:39,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:01:39,668.668 INFO    ] Checking for system updates...
[2026-06-05 15:01:39,707.707 INFO    ] 200
[2026-06-05 15:01:39,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:01:39,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:01:39,765.765 INFO    ] No update needed
[2026-06-05 15:01:39,767.767 INFO    ] Checking for camera pi updates...
[2026-06-05 15:01:39,801.801 INFO    ] 200
[2026-06-05 15:01:39,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:01:39,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:01:39,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:01:39,900.900 INFO    ] No camera update needed
[2026-06-05 15:01:39,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:01:39,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:01:39,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:01:39,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:01:41,956.956 INFO    ] ================================================
[2026-06-05 15:01:41,972.972 INFO    ] Launching Daemon at Fri Jun  5 15:01:41 IST 2026
[2026-06-05 15:01:41,983.983 INFO    ] ================================================
[2026-06-05 15:01:42,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:01:42
[2026-06-05 15:01:43,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:01:43,412.412 INFO    ] Initializing speech engine...
[2026-06-05 15:01:43,415.415 INFO    ] 2026-06-05 15:01:43
[2026-06-05 15:01:43,711.711 INFO    ] 2026-06-05 15:01:43
[2026-06-05 15:01:43,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:01:43,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:01:43,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:01:44,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:01:44,196.196 INFO    ] time= 05/06/2026 15:01:44
[2026-06-05 15:01:44,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:01:44,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:01:44,414.414 INFO    ] No existing commands found in stream
[2026-06-05 15:01:49,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:01:49,442.442 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 15:01:53,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:01:53,296.296 INFO    ] Checking for system updates...
[2026-06-05 15:01:53,332.332 INFO    ] 200
[2026-06-05 15:01:53,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:01:53,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:01:53,398.398 INFO    ] No update needed
[2026-06-05 15:01:53,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 15:01:53,436.436 INFO    ] 200
[2026-06-05 15:01:53,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:01:53,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:01:53,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:01:53,541.541 INFO    ] No camera update needed
[2026-06-05 15:01:53,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:01:53,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:01:53,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:01:53,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:01:55,597.597 INFO    ] ================================================
[2026-06-05 15:01:55,614.614 INFO    ] Launching Daemon at Fri Jun  5 15:01:55 IST 2026
[2026-06-05 15:01:55,625.625 INFO    ] ================================================
[2026-06-05 15:01:56,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:01:56
[2026-06-05 15:01:56,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:01:57,071.071 INFO    ] Initializing speech engine...
[2026-06-05 15:01:57,083.083 INFO    ] 2026-06-05 15:01:57
[2026-06-05 15:01:57,349.349 INFO    ] 2026-06-05 15:01:57
[2026-06-05 15:01:57,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:01:57,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:01:57,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:01:57,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:01:57,832.832 INFO    ] time= 05/06/2026 15:01:57
[2026-06-05 15:01:57,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:01:57,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:01:58,063.063 INFO    ] No existing commands found in stream
[2026-06-05 15:02:03,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:02:03,091.091 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 15:02:05,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:02:05,046.046 INFO    ] Checking for system updates...
[2026-06-05 15:02:05,085.085 INFO    ] 200
[2026-06-05 15:02:05,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:05,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:02:05,142.142 INFO    ] No update needed
[2026-06-05 15:02:05,145.145 INFO    ] Checking for camera pi updates...
[2026-06-05 15:02:05,180.180 INFO    ] 200
[2026-06-05 15:02:05,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:05,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:02:05,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:02:05,281.281 INFO    ] No camera update needed
[2026-06-05 15:02:05,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:02:05,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:02:05,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:02:05,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:02:07,339.339 INFO    ] ================================================
[2026-06-05 15:02:07,356.356 INFO    ] Launching Daemon at Fri Jun  5 15:02:07 IST 2026
[2026-06-05 15:02:07,367.367 INFO    ] ================================================
[2026-06-05 15:02:07,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:02:07
[2026-06-05 15:02:08,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:02:08,767.767 INFO    ] Initializing speech engine...
[2026-06-05 15:02:08,782.782 INFO    ] 2026-06-05 15:02:08
[2026-06-05 15:02:09,051.051 INFO    ] 2026-06-05 15:02:09
[2026-06-05 15:02:09,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:02:09,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:02:09,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:02:09,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:02:09,428.428 INFO    ] time= 05/06/2026 15:02:09
[2026-06-05 15:02:09,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:02:09,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:02:09,617.617 INFO    ] No existing commands found in stream
[2026-06-05 15:02:14,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:02:14,641.641 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 15:02:15,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:02:15,965.965 INFO    ] Checking for system updates...
[2026-06-05 15:02:16,001.001 INFO    ] 200
[2026-06-05 15:02:16,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:16,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:02:16,061.061 INFO    ] No update needed
[2026-06-05 15:02:16,063.063 INFO    ] Checking for camera pi updates...
[2026-06-05 15:02:16,098.098 INFO    ] 200
[2026-06-05 15:02:16,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:16,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:02:16,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:02:16,187.187 INFO    ] No camera update needed
[2026-06-05 15:02:16,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:02:16,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:02:16,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:02:16,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:02:18,248.248 INFO    ] ================================================
[2026-06-05 15:02:18,265.265 INFO    ] Launching Daemon at Fri Jun  5 15:02:18 IST 2026
[2026-06-05 15:02:18,276.276 INFO    ] ================================================
[2026-06-05 15:02:18,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:02:18
[2026-06-05 15:02:19,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:02:19,770.770 INFO    ] Initializing speech engine...
[2026-06-05 15:02:19,773.773 INFO    ] 2026-06-05 15:02:19
[2026-06-05 15:02:20,054.054 INFO    ] 2026-06-05 15:02:20
[2026-06-05 15:02:20,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:02:20,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:02:20,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:02:20,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:02:20,542.542 INFO    ] time= 05/06/2026 15:02:20
[2026-06-05 15:02:20,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:02:20,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:02:20,784.784 INFO    ] No existing commands found in stream
[2026-06-05 15:02:25,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:02:25,810.810 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 15:02:28,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:02:28,350.350 INFO    ] Checking for system updates...
[2026-06-05 15:02:28,390.390 INFO    ] 200
[2026-06-05 15:02:28,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:28,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:02:28,453.453 INFO    ] No update needed
[2026-06-05 15:02:28,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 15:02:28,492.492 INFO    ] 200
[2026-06-05 15:02:28,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:28,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:02:28,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:02:28,583.583 INFO    ] No camera update needed
[2026-06-05 15:02:28,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:02:28,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:02:28,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:02:28,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:02:30,643.643 INFO    ] ================================================
[2026-06-05 15:02:30,662.662 INFO    ] Launching Daemon at Fri Jun  5 15:02:30 IST 2026
[2026-06-05 15:02:30,675.675 INFO    ] ================================================
[2026-06-05 15:02:31,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:02:31
[2026-06-05 15:02:31,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:02:32,225.225 INFO    ] Initializing speech engine...
[2026-06-05 15:02:32,240.240 INFO    ] 2026-06-05 15:02:32
[2026-06-05 15:02:32,530.530 INFO    ] 2026-06-05 15:02:32
[2026-06-05 15:02:32,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:02:33,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:02:33,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:02:34,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:02:34,068.068 INFO    ] time= 05/06/2026 15:02:34
[2026-06-05 15:02:34,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:02:34,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:02:34,154.154 INFO    ] No existing commands found in stream
[2026-06-05 15:02:39,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:02:39,169.169 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 15:02:41,383.383 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:02:41,386.386 INFO    ] Checking for system updates...
[2026-06-05 15:02:41,423.423 INFO    ] 200
[2026-06-05 15:02:41,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:41,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:02:41,482.482 INFO    ] No update needed
[2026-06-05 15:02:41,485.485 INFO    ] Checking for camera pi updates...
[2026-06-05 15:02:41,520.520 INFO    ] 200
[2026-06-05 15:02:41,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:41,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:02:41,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:02:41,615.615 INFO    ] No camera update needed
[2026-06-05 15:02:41,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:02:41,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:02:41,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:02:41,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:02:43,674.674 INFO    ] ================================================
[2026-06-05 15:02:43,690.690 INFO    ] Launching Daemon at Fri Jun  5 15:02:43 IST 2026
[2026-06-05 15:02:43,701.701 INFO    ] ================================================
[2026-06-05 15:02:44,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:02:44
[2026-06-05 15:02:44,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:02:45,162.162 INFO    ] Initializing speech engine...
[2026-06-05 15:02:45,169.169 INFO    ] 2026-06-05 15:02:45
[2026-06-05 15:02:45,427.427 INFO    ] 2026-06-05 15:02:45
[2026-06-05 15:02:45,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:02:45,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:02:45,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:02:45,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:02:45,887.887 INFO    ] time= 05/06/2026 15:02:45
[2026-06-05 15:02:45,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:02:45,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:02:46,125.125 INFO    ] No existing commands found in stream
[2026-06-05 15:02:51,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:02:51,141.141 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 15:02:53,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:02:53,547.547 INFO    ] Checking for system updates...
[2026-06-05 15:02:53,597.597 INFO    ] 200
[2026-06-05 15:02:53,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:53,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:02:53,667.667 INFO    ] No update needed
[2026-06-05 15:02:53,670.670 INFO    ] Checking for camera pi updates...
[2026-06-05 15:02:53,711.711 INFO    ] 200
[2026-06-05 15:02:53,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:02:53,801.801 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:02:53,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:02:53,851.851 INFO    ] No camera update needed
[2026-06-05 15:02:53,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:02:53,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:02:53,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:02:53,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:02:55,912.912 INFO    ] ================================================
[2026-06-05 15:02:55,929.929 INFO    ] Launching Daemon at Fri Jun  5 15:02:55 IST 2026
[2026-06-05 15:02:55,941.941 INFO    ] ================================================
[2026-06-05 15:02:56,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:02:56
[2026-06-05 15:02:57,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:02:57,681.681 INFO    ] Initializing speech engine...
[2026-06-05 15:02:57,690.690 INFO    ] 2026-06-05 15:02:57
[2026-06-05 15:02:57,945.945 INFO    ] 2026-06-05 15:02:57
[2026-06-05 15:02:57,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:02:58,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:02:58,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:02:58,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:02:58,414.414 INFO    ] time= 05/06/2026 15:02:58
[2026-06-05 15:02:58,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:02:58,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:02:58,616.616 INFO    ] No existing commands found in stream
[2026-06-05 15:03:03,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:03:03,654.654 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 15:03:04,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:03:04,549.549 INFO    ] Checking for system updates...
[2026-06-05 15:03:04,590.590 INFO    ] 200
[2026-06-05 15:03:04,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:04,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:03:04,647.647 INFO    ] No update needed
[2026-06-05 15:03:04,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 15:03:04,682.682 INFO    ] 200
[2026-06-05 15:03:04,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:04,725.725 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:03:04,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:03:04,870.870 INFO    ] No camera update needed
[2026-06-05 15:03:04,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:03:04,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:03:04,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:03:04,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:03:06,927.927 INFO    ] ================================================
[2026-06-05 15:03:06,942.942 INFO    ] Launching Daemon at Fri Jun  5 15:03:06 IST 2026
[2026-06-05 15:03:06,954.954 INFO    ] ================================================
[2026-06-05 15:03:07,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:03:07
[2026-06-05 15:03:08,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:03:08,419.419 INFO    ] Initializing speech engine...
[2026-06-05 15:03:08,425.425 INFO    ] 2026-06-05 15:03:08
[2026-06-05 15:03:08,672.672 INFO    ] 2026-06-05 15:03:08
[2026-06-05 15:03:08,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:03:08,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:03:08,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:03:09,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:03:09,084.084 INFO    ] time= 05/06/2026 15:03:09
[2026-06-05 15:03:09,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:03:09,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:03:09,259.259 INFO    ] No existing commands found in stream
[2026-06-05 15:03:14,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:03:14,288.288 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 15:03:15,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:03:15,700.700 INFO    ] Checking for system updates...
[2026-06-05 15:03:15,737.737 INFO    ] 200
[2026-06-05 15:03:15,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:15,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:03:15,797.797 INFO    ] No update needed
[2026-06-05 15:03:15,800.800 INFO    ] Checking for camera pi updates...
[2026-06-05 15:03:15,835.835 INFO    ] 200
[2026-06-05 15:03:15,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:15,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:03:15,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:03:15,929.929 INFO    ] No camera update needed
[2026-06-05 15:03:15,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:03:15,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:03:15,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:03:15,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:03:17,988.988 INFO    ] ================================================
[2026-06-05 15:03:18,003.003 INFO    ] Launching Daemon at Fri Jun  5 15:03:17 IST 2026
[2026-06-05 15:03:18,014.014 INFO    ] ================================================
[2026-06-05 15:03:18,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:03:18
[2026-06-05 15:03:19,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:03:19,643.643 INFO    ] Initializing speech engine...
[2026-06-05 15:03:19,653.653 INFO    ] 2026-06-05 15:03:19
[2026-06-05 15:03:19,959.959 INFO    ] 2026-06-05 15:03:19
[2026-06-05 15:03:20,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:03:20,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:03:20,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:03:20,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:03:20,398.398 INFO    ] time= 05/06/2026 15:03:20
[2026-06-05 15:03:20,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:03:20,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:03:20,615.615 INFO    ] No existing commands found in stream
[2026-06-05 15:03:25,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:03:25,635.635 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 15:03:26,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:03:26,500.500 INFO    ] Checking for system updates...
[2026-06-05 15:03:26,540.540 INFO    ] 200
[2026-06-05 15:03:26,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:26,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:03:26,600.600 INFO    ] No update needed
[2026-06-05 15:03:26,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 15:03:26,637.637 INFO    ] 200
[2026-06-05 15:03:26,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:26,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:03:26,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:03:26,730.730 INFO    ] No camera update needed
[2026-06-05 15:03:26,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:03:26,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:03:26,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:03:26,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:03:28,791.791 INFO    ] ================================================
[2026-06-05 15:03:28,807.807 INFO    ] Launching Daemon at Fri Jun  5 15:03:28 IST 2026
[2026-06-05 15:03:28,818.818 INFO    ] ================================================
[2026-06-05 15:03:29,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:03:29
[2026-06-05 15:03:29,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:03:30,242.242 INFO    ] Initializing speech engine...
[2026-06-05 15:03:30,256.256 INFO    ] 2026-06-05 15:03:30
[2026-06-05 15:03:30,535.535 INFO    ] 2026-06-05 15:03:30
[2026-06-05 15:03:30,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:03:30,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:03:30,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:03:31,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:03:31,116.116 INFO    ] time= 05/06/2026 15:03:31
[2026-06-05 15:03:31,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:03:31,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:03:31,257.257 INFO    ] No existing commands found in stream
[2026-06-05 15:03:36,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:03:36,270.270 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 15:03:37,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:03:37,522.522 INFO    ] Checking for system updates...
[2026-06-05 15:03:37,560.560 INFO    ] 200
[2026-06-05 15:03:37,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:37,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:03:37,626.626 INFO    ] No update needed
[2026-06-05 15:03:37,630.630 INFO    ] Checking for camera pi updates...
[2026-06-05 15:03:37,665.665 INFO    ] 200
[2026-06-05 15:03:37,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:37,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:03:37,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:03:37,758.758 INFO    ] No camera update needed
[2026-06-05 15:03:37,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:03:37,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:03:37,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:03:37,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:03:39,819.819 INFO    ] ================================================
[2026-06-05 15:03:39,834.834 INFO    ] Launching Daemon at Fri Jun  5 15:03:39 IST 2026
[2026-06-05 15:03:39,844.844 INFO    ] ================================================
[2026-06-05 15:03:40,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:03:40
[2026-06-05 15:03:41,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:03:41,503.503 INFO    ] Initializing speech engine...
[2026-06-05 15:03:41,517.517 INFO    ] 2026-06-05 15:03:41
[2026-06-05 15:03:41,840.840 INFO    ] 2026-06-05 15:03:41
[2026-06-05 15:03:41,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:03:42,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:03:42,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:03:42,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:03:42,584.584 INFO    ] time= 05/06/2026 15:03:42
[2026-06-05 15:03:42,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:03:42,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:03:42,816.816 INFO    ] No existing commands found in stream
[2026-06-05 15:03:47,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:03:47,831.831 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 15:03:49,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:03:49,846.846 INFO    ] Checking for system updates...
[2026-06-05 15:03:49,883.883 INFO    ] 200
[2026-06-05 15:03:49,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:49,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:03:49,945.945 INFO    ] No update needed
[2026-06-05 15:03:49,948.948 INFO    ] Checking for camera pi updates...
[2026-06-05 15:03:49,983.983 INFO    ] 200
[2026-06-05 15:03:49,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:03:50,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:03:50,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:03:50,073.073 INFO    ] No camera update needed
[2026-06-05 15:03:50,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:03:50,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:03:50,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:03:50,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:03:52,133.133 INFO    ] ================================================
[2026-06-05 15:03:52,149.149 INFO    ] Launching Daemon at Fri Jun  5 15:03:52 IST 2026
[2026-06-05 15:03:52,159.159 INFO    ] ================================================
[2026-06-05 15:03:52,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:03:52
[2026-06-05 15:03:53,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:03:53,642.642 INFO    ] Initializing speech engine...
[2026-06-05 15:03:53,657.657 INFO    ] 2026-06-05 15:03:53
[2026-06-05 15:03:53,949.949 INFO    ] 2026-06-05 15:03:53
[2026-06-05 15:03:53,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:03:54,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:03:54,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:03:54,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:03:54,313.313 INFO    ] time= 05/06/2026 15:03:54
[2026-06-05 15:03:54,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:03:54,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:03:54,420.420 INFO    ] No existing commands found in stream
[2026-06-05 15:03:59,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:03:59,453.453 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 15:03:59,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:03:59,954.954 INFO    ] Checking for system updates...
[2026-06-05 15:03:59,990.990 INFO    ] 200
[2026-06-05 15:03:59,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:00,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:04:00,051.051 INFO    ] No update needed
[2026-06-05 15:04:00,054.054 INFO    ] Checking for camera pi updates...
[2026-06-05 15:04:00,088.088 INFO    ] 200
[2026-06-05 15:04:00,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:00,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:04:00,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:04:00,179.179 INFO    ] No camera update needed
[2026-06-05 15:04:00,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:04:00,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:04:00,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:04:00,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:04:02,240.240 INFO    ] ================================================
[2026-06-05 15:04:02,271.271 INFO    ] Launching Daemon at Fri Jun  5 15:04:02 IST 2026
[2026-06-05 15:04:02,289.289 INFO    ] ================================================
[2026-06-05 15:04:02,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:04:02
[2026-06-05 15:04:03,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:04:04,004.004 INFO    ] Initializing speech engine...
[2026-06-05 15:04:04,012.012 INFO    ] 2026-06-05 15:04:04
[2026-06-05 15:04:04,269.269 INFO    ] 2026-06-05 15:04:04
[2026-06-05 15:04:04,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:04:04,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:04:04,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:04:04,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:04:04,688.688 INFO    ] time= 05/06/2026 15:04:04
[2026-06-05 15:04:04,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:04:04,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:04:04,859.859 INFO    ] No existing commands found in stream
[2026-06-05 15:04:09,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:04:09,899.899 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 15:04:10,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:04:10,325.325 INFO    ] Checking for system updates...
[2026-06-05 15:04:10,363.363 INFO    ] 200
[2026-06-05 15:04:10,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:10,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:04:10,422.422 INFO    ] No update needed
[2026-06-05 15:04:10,424.424 INFO    ] Checking for camera pi updates...
[2026-06-05 15:04:10,459.459 INFO    ] 200
[2026-06-05 15:04:10,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:10,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:04:10,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:04:10,548.548 INFO    ] No camera update needed
[2026-06-05 15:04:10,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:04:10,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:04:10,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:04:10,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:04:12,607.607 INFO    ] ================================================
[2026-06-05 15:04:12,622.622 INFO    ] Launching Daemon at Fri Jun  5 15:04:12 IST 2026
[2026-06-05 15:04:12,633.633 INFO    ] ================================================
[2026-06-05 15:04:13,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:04:13
[2026-06-05 15:04:13,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:04:14,070.070 INFO    ] Initializing speech engine...
[2026-06-05 15:04:14,079.079 INFO    ] 2026-06-05 15:04:14
[2026-06-05 15:04:14,336.336 INFO    ] 2026-06-05 15:04:14
[2026-06-05 15:04:14,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:04:14,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:04:14,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:04:14,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:04:14,820.820 INFO    ] time= 05/06/2026 15:04:14
[2026-06-05 15:04:14,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:04:14,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:04:15,083.083 INFO    ] No existing commands found in stream
[2026-06-05 15:04:20,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:04:20,106.106 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 15:04:23,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:04:23,578.578 INFO    ] Checking for system updates...
[2026-06-05 15:04:23,613.613 INFO    ] 200
[2026-06-05 15:04:23,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:23,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:04:23,672.672 INFO    ] No update needed
[2026-06-05 15:04:23,674.674 INFO    ] Checking for camera pi updates...
[2026-06-05 15:04:23,707.707 INFO    ] 200
[2026-06-05 15:04:23,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:23,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:04:23,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:04:23,800.800 INFO    ] No camera update needed
[2026-06-05 15:04:23,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:04:23,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:04:23,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:04:23,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:04:25,856.856 INFO    ] ================================================
[2026-06-05 15:04:25,872.872 INFO    ] Launching Daemon at Fri Jun  5 15:04:25 IST 2026
[2026-06-05 15:04:25,883.883 INFO    ] ================================================
[2026-06-05 15:04:26,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:04:26
[2026-06-05 15:04:27,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:04:27,290.290 INFO    ] Initializing speech engine...
[2026-06-05 15:04:27,299.299 INFO    ] 2026-06-05 15:04:27
[2026-06-05 15:04:27,587.587 INFO    ] 2026-06-05 15:04:27
[2026-06-05 15:04:27,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:04:27,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:04:27,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:04:27,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:04:27,990.990 INFO    ] time= 05/06/2026 15:04:27
[2026-06-05 15:04:27,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:04:28,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:04:28,155.155 INFO    ] No existing commands found in stream
[2026-06-05 15:04:33,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:04:33,181.181 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 15:04:37,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:04:37,236.236 INFO    ] Checking for system updates...
[2026-06-05 15:04:37,273.273 INFO    ] 200
[2026-06-05 15:04:37,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:37,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:04:37,330.330 INFO    ] No update needed
[2026-06-05 15:04:37,332.332 INFO    ] Checking for camera pi updates...
[2026-06-05 15:04:37,366.366 INFO    ] 200
[2026-06-05 15:04:37,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:37,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:04:37,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:04:37,462.462 INFO    ] No camera update needed
[2026-06-05 15:04:37,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:04:37,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:04:37,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:04:37,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:04:39,517.517 INFO    ] ================================================
[2026-06-05 15:04:39,532.532 INFO    ] Launching Daemon at Fri Jun  5 15:04:39 IST 2026
[2026-06-05 15:04:39,542.542 INFO    ] ================================================
[2026-06-05 15:04:40,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:04:40
[2026-06-05 15:04:40,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:04:41,085.085 INFO    ] Initializing speech engine...
[2026-06-05 15:04:41,100.100 INFO    ] 2026-06-05 15:04:41
[2026-06-05 15:04:41,362.362 INFO    ] 2026-06-05 15:04:41
[2026-06-05 15:04:41,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:04:41,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:04:41,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:04:41,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:04:41,849.849 INFO    ] time= 05/06/2026 15:04:41
[2026-06-05 15:04:41,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:04:41,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:04:42,014.014 INFO    ] No existing commands found in stream
[2026-06-05 15:04:47,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:04:47,044.044 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 15:04:50,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:04:50,809.809 INFO    ] Checking for system updates...
[2026-06-05 15:04:50,845.845 INFO    ] 200
[2026-06-05 15:04:50,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:50,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:04:50,903.903 INFO    ] No update needed
[2026-06-05 15:04:50,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 15:04:50,939.939 INFO    ] 200
[2026-06-05 15:04:50,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:04:50,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:04:51,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:04:51,030.030 INFO    ] No camera update needed
[2026-06-05 15:04:51,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:04:51,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:04:51,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:04:51,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:04:53,086.086 INFO    ] ================================================
[2026-06-05 15:04:53,103.103 INFO    ] Launching Daemon at Fri Jun  5 15:04:53 IST 2026
[2026-06-05 15:04:53,113.113 INFO    ] ================================================
[2026-06-05 15:04:53,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:04:53
[2026-06-05 15:04:54,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:04:54,548.548 INFO    ] Initializing speech engine...
[2026-06-05 15:04:54,554.554 INFO    ] 2026-06-05 15:04:54
[2026-06-05 15:04:54,845.845 INFO    ] 2026-06-05 15:04:54
[2026-06-05 15:04:54,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:04:55,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:04:55,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:04:55,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:04:55,252.252 INFO    ] time= 05/06/2026 15:04:55
[2026-06-05 15:04:55,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:04:55,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:04:55,416.416 INFO    ] No existing commands found in stream
[2026-06-05 15:05:00,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:05:00,439.439 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 15:05:01,711.711 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:05:01,726.726 INFO    ] Checking for system updates...
[2026-06-05 15:05:01,825.825 INFO    ] 200
[2026-06-05 15:05:01,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:02,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:05:02,013.013 INFO    ] No update needed
[2026-06-05 15:05:02,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 15:05:02,120.120 INFO    ] 200
[2026-06-05 15:05:02,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:02,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:05:02,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:05:02,281.281 INFO    ] No camera update needed
[2026-06-05 15:05:02,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:05:02,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:05:02,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:05:02,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:05:04,346.346 INFO    ] ================================================
[2026-06-05 15:05:04,361.361 INFO    ] Launching Daemon at Fri Jun  5 15:05:04 IST 2026
[2026-06-05 15:05:04,377.377 INFO    ] ================================================
[2026-06-05 15:05:04,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:05:04
[2026-06-05 15:05:05,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:05:05,841.841 INFO    ] Initializing speech engine...
[2026-06-05 15:05:05,848.848 INFO    ] 2026-06-05 15:05:05
[2026-06-05 15:05:06,111.111 INFO    ] 2026-06-05 15:05:06
[2026-06-05 15:05:06,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:05:06,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:05:06,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:05:06,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:05:06,615.615 INFO    ] time= 05/06/2026 15:05:06
[2026-06-05 15:05:06,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:05:06,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:05:06,861.861 INFO    ] No existing commands found in stream
[2026-06-05 15:05:11,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:05:11,880.880 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 15:05:12,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:05:12,954.954 INFO    ] Checking for system updates...
[2026-06-05 15:05:12,990.990 INFO    ] 200
[2026-06-05 15:05:12,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:13,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:05:13,047.047 INFO    ] No update needed
[2026-06-05 15:05:13,050.050 INFO    ] Checking for camera pi updates...
[2026-06-05 15:05:13,083.083 INFO    ] 200
[2026-06-05 15:05:13,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:13,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:05:13,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:05:13,280.280 INFO    ] No camera update needed
[2026-06-05 15:05:13,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:05:13,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:05:13,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:05:13,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:05:15,338.338 INFO    ] ================================================
[2026-06-05 15:05:15,354.354 INFO    ] Launching Daemon at Fri Jun  5 15:05:15 IST 2026
[2026-06-05 15:05:15,365.365 INFO    ] ================================================
[2026-06-05 15:05:16,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:05:16
[2026-06-05 15:05:16,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:05:16,927.927 INFO    ] Initializing speech engine...
[2026-06-05 15:05:16,940.940 INFO    ] 2026-06-05 15:05:16
[2026-06-05 15:05:17,211.211 INFO    ] 2026-06-05 15:05:17
[2026-06-05 15:05:17,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:05:19,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:05:19,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:05:19,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:05:19,317.317 INFO    ] time= 05/06/2026 15:05:19
[2026-06-05 15:05:19,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:05:19,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:05:19,425.425 INFO    ] No existing commands found in stream
[2026-06-05 15:05:24,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:05:24,452.452 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 15:05:26,832.832 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:05:26,835.835 INFO    ] Checking for system updates...
[2026-06-05 15:05:26,871.871 INFO    ] 200
[2026-06-05 15:05:26,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:26,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:05:26,929.929 INFO    ] No update needed
[2026-06-05 15:05:26,931.931 INFO    ] Checking for camera pi updates...
[2026-06-05 15:05:26,965.965 INFO    ] 200
[2026-06-05 15:05:26,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:27,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:05:27,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:05:27,058.058 INFO    ] No camera update needed
[2026-06-05 15:05:27,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:05:27,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:05:27,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:05:27,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:05:29,116.116 INFO    ] ================================================
[2026-06-05 15:05:29,132.132 INFO    ] Launching Daemon at Fri Jun  5 15:05:29 IST 2026
[2026-06-05 15:05:29,142.142 INFO    ] ================================================
[2026-06-05 15:05:29,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:05:29
[2026-06-05 15:05:30,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:05:30,624.624 INFO    ] Initializing speech engine...
[2026-06-05 15:05:30,633.633 INFO    ] 2026-06-05 15:05:30
[2026-06-05 15:05:30,891.891 INFO    ] 2026-06-05 15:05:30
[2026-06-05 15:05:30,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:05:31,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:05:31,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:05:31,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:05:31,356.356 INFO    ] time= 05/06/2026 15:05:31
[2026-06-05 15:05:31,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:05:31,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:05:31,585.585 INFO    ] No existing commands found in stream
[2026-06-05 15:05:36,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:05:36,617.617 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 15:05:39,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:05:39,492.492 INFO    ] Checking for system updates...
[2026-06-05 15:05:39,528.528 INFO    ] 200
[2026-06-05 15:05:39,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:39,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:05:39,592.592 INFO    ] No update needed
[2026-06-05 15:05:39,595.595 INFO    ] Checking for camera pi updates...
[2026-06-05 15:05:39,637.637 INFO    ] 200
[2026-06-05 15:05:39,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:39,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:05:39,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:05:39,723.723 INFO    ] No camera update needed
[2026-06-05 15:05:39,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:05:39,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:05:39,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:05:39,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:05:41,780.780 INFO    ] ================================================
[2026-06-05 15:05:41,795.795 INFO    ] Launching Daemon at Fri Jun  5 15:05:41 IST 2026
[2026-06-05 15:05:41,806.806 INFO    ] ================================================
[2026-06-05 15:05:42,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:05:42
[2026-06-05 15:05:43,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:05:43,422.422 INFO    ] Initializing speech engine...
[2026-06-05 15:05:43,428.428 INFO    ] 2026-06-05 15:05:43
[2026-06-05 15:05:43,717.717 INFO    ] 2026-06-05 15:05:43
[2026-06-05 15:05:43,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:05:43,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:05:43,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:05:44,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:05:44,262.262 INFO    ] time= 05/06/2026 15:05:44
[2026-06-05 15:05:44,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:05:44,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:05:44,419.419 INFO    ] No existing commands found in stream
[2026-06-05 15:05:49,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:05:49,440.440 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 15:05:50,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:05:50,640.640 INFO    ] Checking for system updates...
[2026-06-05 15:05:50,684.684 INFO    ] 200
[2026-06-05 15:05:50,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:50,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:05:50,748.748 INFO    ] No update needed
[2026-06-05 15:05:50,750.750 INFO    ] Checking for camera pi updates...
[2026-06-05 15:05:50,784.784 INFO    ] 200
[2026-06-05 15:05:50,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:05:50,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:05:50,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:05:50,885.885 INFO    ] No camera update needed
[2026-06-05 15:05:50,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:05:50,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:05:50,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:05:50,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:05:52,940.940 INFO    ] ================================================
[2026-06-05 15:05:52,956.956 INFO    ] Launching Daemon at Fri Jun  5 15:05:52 IST 2026
[2026-06-05 15:05:52,967.967 INFO    ] ================================================
[2026-06-05 15:05:53,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:05:53
[2026-06-05 15:05:54,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:05:54,387.387 INFO    ] Initializing speech engine...
[2026-06-05 15:05:54,403.403 INFO    ] 2026-06-05 15:05:54
[2026-06-05 15:05:54,690.690 INFO    ] 2026-06-05 15:05:54
[2026-06-05 15:05:54,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:05:54,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:05:54,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:05:55,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:05:55,145.145 INFO    ] time= 05/06/2026 15:05:55
[2026-06-05 15:05:55,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:05:55,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:05:55,305.305 INFO    ] No existing commands found in stream
[2026-06-05 15:06:00,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:06:00,319.319 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 15:06:02,566.566 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:06:02,569.569 INFO    ] Checking for system updates...
[2026-06-05 15:06:02,616.616 INFO    ] 200
[2026-06-05 15:06:02,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:02,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:06:02,693.693 INFO    ] No update needed
[2026-06-05 15:06:02,696.696 INFO    ] Checking for camera pi updates...
[2026-06-05 15:06:02,739.739 INFO    ] 200
[2026-06-05 15:06:02,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:02,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:06:02,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:06:02,817.817 INFO    ] No camera update needed
[2026-06-05 15:06:02,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:06:02,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:06:02,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:06:02,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:06:04,878.878 INFO    ] ================================================
[2026-06-05 15:06:04,894.894 INFO    ] Launching Daemon at Fri Jun  5 15:06:04 IST 2026
[2026-06-05 15:06:04,905.905 INFO    ] ================================================
[2026-06-05 15:06:05,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:06:05
[2026-06-05 15:06:06,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:06:06,491.491 INFO    ] Initializing speech engine...
[2026-06-05 15:06:06,506.506 INFO    ] 2026-06-05 15:06:06
[2026-06-05 15:06:06,785.785 INFO    ] 2026-06-05 15:06:06
[2026-06-05 15:06:06,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:06:07,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:06:07,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:06:07,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:06:07,197.197 INFO    ] time= 05/06/2026 15:06:07
[2026-06-05 15:06:07,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:06:07,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:06:07,280.280 INFO    ] No existing commands found in stream
[2026-06-05 15:06:12,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:06:12,296.296 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 15:06:15,072.072 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:06:15,074.074 INFO    ] Checking for system updates...
[2026-06-05 15:06:15,110.110 INFO    ] 200
[2026-06-05 15:06:15,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:15,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:06:15,168.168 INFO    ] No update needed
[2026-06-05 15:06:15,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 15:06:15,204.204 INFO    ] 200
[2026-06-05 15:06:15,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:15,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:06:15,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:06:15,278.278 INFO    ] No camera update needed
[2026-06-05 15:06:15,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:06:15,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:06:15,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:06:15,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:06:17,332.332 INFO    ] ================================================
[2026-06-05 15:06:17,347.347 INFO    ] Launching Daemon at Fri Jun  5 15:06:17 IST 2026
[2026-06-05 15:06:17,358.358 INFO    ] ================================================
[2026-06-05 15:06:17,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:06:17
[2026-06-05 15:06:18,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:06:18,809.809 INFO    ] Initializing speech engine...
[2026-06-05 15:06:18,823.823 INFO    ] 2026-06-05 15:06:18
[2026-06-05 15:06:19,105.105 INFO    ] 2026-06-05 15:06:19
[2026-06-05 15:06:19,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:06:19,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:06:19,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:06:19,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:06:19,503.503 INFO    ] time= 05/06/2026 15:06:19
[2026-06-05 15:06:19,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:06:19,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:06:19,590.590 INFO    ] No existing commands found in stream
[2026-06-05 15:06:24,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:06:24,606.606 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 15:06:27,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:06:27,390.390 INFO    ] Checking for system updates...
[2026-06-05 15:06:27,426.426 INFO    ] 200
[2026-06-05 15:06:27,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:27,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:06:27,489.489 INFO    ] No update needed
[2026-06-05 15:06:27,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 15:06:27,525.525 INFO    ] 200
[2026-06-05 15:06:27,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:27,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:06:27,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:06:27,616.616 INFO    ] No camera update needed
[2026-06-05 15:06:27,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:06:27,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:06:27,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:06:27,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:06:29,672.672 INFO    ] ================================================
[2026-06-05 15:06:29,688.688 INFO    ] Launching Daemon at Fri Jun  5 15:06:29 IST 2026
[2026-06-05 15:06:29,698.698 INFO    ] ================================================
[2026-06-05 15:06:30,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:06:30
[2026-06-05 15:06:30,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:06:31,152.152 INFO    ] Initializing speech engine...
[2026-06-05 15:06:31,162.162 INFO    ] 2026-06-05 15:06:31
[2026-06-05 15:06:31,421.421 INFO    ] 2026-06-05 15:06:31
[2026-06-05 15:06:31,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:06:31,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:06:31,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:06:31,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:06:31,904.904 INFO    ] time= 05/06/2026 15:06:31
[2026-06-05 15:06:31,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:06:32,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:06:32,075.075 INFO    ] No existing commands found in stream
[2026-06-05 15:06:37,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:06:37,090.090 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 15:06:39,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:06:39,192.192 INFO    ] Checking for system updates...
[2026-06-05 15:06:39,228.228 INFO    ] 200
[2026-06-05 15:06:39,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:39,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:06:39,286.286 INFO    ] No update needed
[2026-06-05 15:06:39,288.288 INFO    ] Checking for camera pi updates...
[2026-06-05 15:06:39,322.322 INFO    ] 200
[2026-06-05 15:06:39,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:39,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:06:39,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:06:39,412.412 INFO    ] No camera update needed
[2026-06-05 15:06:39,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:06:39,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:06:39,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:06:39,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:06:41,469.469 INFO    ] ================================================
[2026-06-05 15:06:41,484.484 INFO    ] Launching Daemon at Fri Jun  5 15:06:41 IST 2026
[2026-06-05 15:06:41,496.496 INFO    ] ================================================
[2026-06-05 15:06:42,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:06:42
[2026-06-05 15:06:42,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:06:43,053.053 INFO    ] Initializing speech engine...
[2026-06-05 15:06:43,060.060 INFO    ] 2026-06-05 15:06:43
[2026-06-05 15:06:43,342.342 INFO    ] 2026-06-05 15:06:43
[2026-06-05 15:06:43,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:06:43,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:06:43,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:06:43,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:06:43,837.837 INFO    ] time= 05/06/2026 15:06:43
[2026-06-05 15:06:43,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:06:43,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:06:44,031.031 INFO    ] No existing commands found in stream
[2026-06-05 15:06:49,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:06:49,051.051 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 15:06:51,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:06:51,622.622 INFO    ] Checking for system updates...
[2026-06-05 15:06:51,660.660 INFO    ] 200
[2026-06-05 15:06:51,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:51,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:06:51,719.719 INFO    ] No update needed
[2026-06-05 15:06:51,721.721 INFO    ] Checking for camera pi updates...
[2026-06-05 15:06:51,760.760 INFO    ] 200
[2026-06-05 15:06:51,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:06:51,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:06:51,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:06:51,853.853 INFO    ] No camera update needed
[2026-06-05 15:06:51,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:06:51,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:06:51,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:06:51,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:06:53,908.908 INFO    ] ================================================
[2026-06-05 15:06:53,924.924 INFO    ] Launching Daemon at Fri Jun  5 15:06:53 IST 2026
[2026-06-05 15:06:53,935.935 INFO    ] ================================================
[2026-06-05 15:06:54,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:06:54
[2026-06-05 15:06:55,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:06:55,393.393 INFO    ] Initializing speech engine...
[2026-06-05 15:06:55,402.402 INFO    ] 2026-06-05 15:06:55
[2026-06-05 15:06:55,660.660 INFO    ] 2026-06-05 15:06:55
[2026-06-05 15:06:55,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:06:55,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:06:55,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:06:56,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:06:56,043.043 INFO    ] time= 05/06/2026 15:06:56
[2026-06-05 15:06:56,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:06:56,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:06:56,143.143 INFO    ] No existing commands found in stream
[2026-06-05 15:07:01,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:07:01,161.161 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 15:07:04,073.073 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:07:04,076.076 INFO    ] Checking for system updates...
[2026-06-05 15:07:04,113.113 INFO    ] 200
[2026-06-05 15:07:04,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:04,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:07:04,177.177 INFO    ] No update needed
[2026-06-05 15:07:04,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 15:07:04,215.215 INFO    ] 200
[2026-06-05 15:07:04,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:04,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:07:04,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:07:04,301.301 INFO    ] No camera update needed
[2026-06-05 15:07:04,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:07:04,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:07:04,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:07:04,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:07:06,355.355 INFO    ] ================================================
[2026-06-05 15:07:06,371.371 INFO    ] Launching Daemon at Fri Jun  5 15:07:06 IST 2026
[2026-06-05 15:07:06,383.383 INFO    ] ================================================
[2026-06-05 15:07:07,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:07:06
[2026-06-05 15:07:07,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:07:07,988.988 INFO    ] Initializing speech engine...
[2026-06-05 15:07:08,001.001 INFO    ] 2026-06-05 15:07:07
[2026-06-05 15:07:08,285.285 INFO    ] 2026-06-05 15:07:08
[2026-06-05 15:07:08,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:07:08,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:07:08,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:07:08,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:07:08,773.773 INFO    ] time= 05/06/2026 15:07:08
[2026-06-05 15:07:08,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:07:08,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:07:08,998.998 INFO    ] No existing commands found in stream
[2026-06-05 15:07:14,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:07:14,021.021 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 15:07:14,574.574 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:07:14,577.577 INFO    ] Checking for system updates...
[2026-06-05 15:07:14,616.616 INFO    ] 200
[2026-06-05 15:07:14,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:14,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:07:14,674.674 INFO    ] No update needed
[2026-06-05 15:07:14,677.677 INFO    ] Checking for camera pi updates...
[2026-06-05 15:07:14,710.710 INFO    ] 200
[2026-06-05 15:07:14,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:14,759.759 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:07:14,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:07:14,908.908 INFO    ] No camera update needed
[2026-06-05 15:07:14,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:07:14,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:07:14,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:07:14,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:07:16,965.965 INFO    ] ================================================
[2026-06-05 15:07:16,981.981 INFO    ] Launching Daemon at Fri Jun  5 15:07:16 IST 2026
[2026-06-05 15:07:16,992.992 INFO    ] ================================================
[2026-06-05 15:07:17,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:07:17
[2026-06-05 15:07:18,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:07:18,392.392 INFO    ] Initializing speech engine...
[2026-06-05 15:07:18,398.398 INFO    ] 2026-06-05 15:07:18
[2026-06-05 15:07:18,673.673 INFO    ] 2026-06-05 15:07:18
[2026-06-05 15:07:18,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:07:19,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:07:19,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:07:19,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:07:19,681.681 INFO    ] time= 05/06/2026 15:07:19
[2026-06-05 15:07:19,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:07:19,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:07:19,803.803 INFO    ] No existing commands found in stream
[2026-06-05 15:07:24,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:07:24,828.828 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 15:07:26,434.434 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:07:26,436.436 INFO    ] Checking for system updates...
[2026-06-05 15:07:26,472.472 INFO    ] 200
[2026-06-05 15:07:26,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:26,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:07:26,531.531 INFO    ] No update needed
[2026-06-05 15:07:26,533.533 INFO    ] Checking for camera pi updates...
[2026-06-05 15:07:26,567.567 INFO    ] 200
[2026-06-05 15:07:26,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:26,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:07:26,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:07:26,653.653 INFO    ] No camera update needed
[2026-06-05 15:07:26,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:07:26,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:07:26,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:07:26,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:07:28,707.707 INFO    ] ================================================
[2026-06-05 15:07:28,723.723 INFO    ] Launching Daemon at Fri Jun  5 15:07:28 IST 2026
[2026-06-05 15:07:28,734.734 INFO    ] ================================================
[2026-06-05 15:07:29,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:07:29
[2026-06-05 15:07:30,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:07:30,391.391 INFO    ] Initializing speech engine...
[2026-06-05 15:07:30,397.397 INFO    ] 2026-06-05 15:07:30
[2026-06-05 15:07:30,710.710 INFO    ] 2026-06-05 15:07:30
[2026-06-05 15:07:30,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:07:30,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:07:30,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:07:31,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:07:31,216.216 INFO    ] time= 05/06/2026 15:07:31
[2026-06-05 15:07:31,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:07:31,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:07:31,391.391 INFO    ] No existing commands found in stream
[2026-06-05 15:07:36,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:07:36,425.425 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 15:07:37,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:07:37,900.900 INFO    ] Checking for system updates...
[2026-06-05 15:07:37,938.938 INFO    ] 200
[2026-06-05 15:07:37,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:37,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:07:37,996.996 INFO    ] No update needed
[2026-06-05 15:07:38,002.002 INFO    ] Checking for camera pi updates...
[2026-06-05 15:07:38,037.037 INFO    ] 200
[2026-06-05 15:07:38,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:38,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:07:38,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:07:38,127.127 INFO    ] No camera update needed
[2026-06-05 15:07:38,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:07:38,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:07:38,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:07:38,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:07:40,182.182 INFO    ] ================================================
[2026-06-05 15:07:40,197.197 INFO    ] Launching Daemon at Fri Jun  5 15:07:40 IST 2026
[2026-06-05 15:07:40,208.208 INFO    ] ================================================
[2026-06-05 15:07:40,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:07:40
[2026-06-05 15:07:41,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:07:41,861.861 INFO    ] Initializing speech engine...
[2026-06-05 15:07:41,870.870 INFO    ] 2026-06-05 15:07:41
[2026-06-05 15:07:42,200.200 INFO    ] 2026-06-05 15:07:42
[2026-06-05 15:07:42,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:07:42,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:07:42,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:07:42,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:07:42,633.633 INFO    ] time= 05/06/2026 15:07:42
[2026-06-05 15:07:42,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:07:42,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:07:42,857.857 INFO    ] No existing commands found in stream
[2026-06-05 15:07:47,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:07:47,886.886 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 15:07:52,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:07:52,084.084 INFO    ] Checking for system updates...
[2026-06-05 15:07:52,126.126 INFO    ] 200
[2026-06-05 15:07:52,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:52,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:07:52,193.193 INFO    ] No update needed
[2026-06-05 15:07:52,196.196 INFO    ] Checking for camera pi updates...
[2026-06-05 15:07:52,231.231 INFO    ] 200
[2026-06-05 15:07:52,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:07:52,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:07:52,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:07:52,322.322 INFO    ] No camera update needed
[2026-06-05 15:07:52,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:07:52,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:07:52,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:07:52,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:07:54,381.381 INFO    ] ================================================
[2026-06-05 15:07:54,396.396 INFO    ] Launching Daemon at Fri Jun  5 15:07:54 IST 2026
[2026-06-05 15:07:54,407.407 INFO    ] ================================================
[2026-06-05 15:07:54,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:07:54
[2026-06-05 15:07:55,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:07:55,864.864 INFO    ] Initializing speech engine...
[2026-06-05 15:07:55,871.871 INFO    ] 2026-06-05 15:07:55
[2026-06-05 15:07:56,177.177 INFO    ] 2026-06-05 15:07:56
[2026-06-05 15:07:56,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:07:56,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:07:56,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:07:56,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:07:56,602.602 INFO    ] time= 05/06/2026 15:07:56
[2026-06-05 15:07:56,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:07:56,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:07:56,692.692 INFO    ] No existing commands found in stream
[2026-06-05 15:08:01,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:08:01,726.726 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 15:08:05,782.782 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:08:05,785.785 INFO    ] Checking for system updates...
[2026-06-05 15:08:05,823.823 INFO    ] 200
[2026-06-05 15:08:05,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:05,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:05,886.886 INFO    ] No update needed
[2026-06-05 15:08:05,889.889 INFO    ] Checking for camera pi updates...
[2026-06-05 15:08:05,925.925 INFO    ] 200
[2026-06-05 15:08:05,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:05,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:08:06,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:06,009.009 INFO    ] No camera update needed
[2026-06-05 15:08:06,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:08:06,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:08:06,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:08:06,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:08:08,070.070 INFO    ] ================================================
[2026-06-05 15:08:08,086.086 INFO    ] Launching Daemon at Fri Jun  5 15:08:08 IST 2026
[2026-06-05 15:08:08,099.099 INFO    ] ================================================
[2026-06-05 15:08:08,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:08:08
[2026-06-05 15:08:09,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:08:09,588.588 INFO    ] Initializing speech engine...
[2026-06-05 15:08:09,605.605 INFO    ] 2026-06-05 15:08:09
[2026-06-05 15:08:09,923.923 INFO    ] 2026-06-05 15:08:09
[2026-06-05 15:08:09,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:08:10,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:08:10,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:08:10,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:08:10,337.337 INFO    ] time= 05/06/2026 15:08:10
[2026-06-05 15:08:10,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:08:10,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:08:10,536.536 INFO    ] No existing commands found in stream
[2026-06-05 15:08:15,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:08:15,551.551 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 15:08:16,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:08:16,262.262 INFO    ] Checking for system updates...
[2026-06-05 15:08:16,298.298 INFO    ] 200
[2026-06-05 15:08:16,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:16,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:16,356.356 INFO    ] No update needed
[2026-06-05 15:08:16,359.359 INFO    ] Checking for camera pi updates...
[2026-06-05 15:08:16,393.393 INFO    ] 200
[2026-06-05 15:08:16,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:16,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:08:16,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:16,489.489 INFO    ] No camera update needed
[2026-06-05 15:08:16,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:08:16,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:08:16,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:08:16,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:08:18,546.546 INFO    ] ================================================
[2026-06-05 15:08:18,561.561 INFO    ] Launching Daemon at Fri Jun  5 15:08:18 IST 2026
[2026-06-05 15:08:18,573.573 INFO    ] ================================================
[2026-06-05 15:08:19,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:08:19
[2026-06-05 15:08:19,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:08:19,981.981 INFO    ] Initializing speech engine...
[2026-06-05 15:08:19,987.987 INFO    ] 2026-06-05 15:08:19
[2026-06-05 15:08:20,285.285 INFO    ] 2026-06-05 15:08:20
[2026-06-05 15:08:20,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:08:20,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:08:20,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:08:20,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:08:20,671.671 INFO    ] time= 05/06/2026 15:08:20
[2026-06-05 15:08:20,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:08:20,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:08:20,798.798 INFO    ] No existing commands found in stream
[2026-06-05 15:08:25,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:08:25,813.813 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 15:08:29,970.970 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:08:29,973.973 INFO    ] Checking for system updates...
[2026-06-05 15:08:30,009.009 INFO    ] 200
[2026-06-05 15:08:30,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:30,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:30,068.068 INFO    ] No update needed
[2026-06-05 15:08:30,070.070 INFO    ] Checking for camera pi updates...
[2026-06-05 15:08:30,103.103 INFO    ] 200
[2026-06-05 15:08:30,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:30,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:08:30,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:30,217.217 INFO    ] No camera update needed
[2026-06-05 15:08:30,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:08:30,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:08:30,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:08:30,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:08:32,276.276 INFO    ] ================================================
[2026-06-05 15:08:32,294.294 INFO    ] Launching Daemon at Fri Jun  5 15:08:32 IST 2026
[2026-06-05 15:08:32,306.306 INFO    ] ================================================
[2026-06-05 15:08:32,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:08:32
[2026-06-05 15:08:33,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:08:33,837.837 INFO    ] Initializing speech engine...
[2026-06-05 15:08:33,846.846 INFO    ] 2026-06-05 15:08:33
[2026-06-05 15:08:34,098.098 INFO    ] 2026-06-05 15:08:34
[2026-06-05 15:08:34,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:08:34,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:08:34,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:08:34,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:08:34,601.601 INFO    ] time= 05/06/2026 15:08:34
[2026-06-05 15:08:34,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:08:34,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:08:34,803.803 INFO    ] No existing commands found in stream
[2026-06-05 15:08:39,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:08:39,830.830 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 15:08:40,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:08:40,460.460 INFO    ] Checking for system updates...
[2026-06-05 15:08:40,496.496 INFO    ] 200
[2026-06-05 15:08:40,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:40,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:40,564.564 INFO    ] No update needed
[2026-06-05 15:08:40,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 15:08:40,602.602 INFO    ] 200
[2026-06-05 15:08:40,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:40,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:08:40,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:40,688.688 INFO    ] No camera update needed
[2026-06-05 15:08:40,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:08:40,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:08:40,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:08:40,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:08:42,745.745 INFO    ] ================================================
[2026-06-05 15:08:42,761.761 INFO    ] Launching Daemon at Fri Jun  5 15:08:42 IST 2026
[2026-06-05 15:08:42,772.772 INFO    ] ================================================
[2026-06-05 15:08:43,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:08:43
[2026-06-05 15:08:44,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:08:44,425.425 INFO    ] Initializing speech engine...
[2026-06-05 15:08:44,434.434 INFO    ] 2026-06-05 15:08:44
[2026-06-05 15:08:44,712.712 INFO    ] 2026-06-05 15:08:44
[2026-06-05 15:08:44,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:08:45,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:08:45,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:08:45,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:08:45,329.329 INFO    ] time= 05/06/2026 15:08:45
[2026-06-05 15:08:45,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:08:45,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:08:45,540.540 INFO    ] No existing commands found in stream
[2026-06-05 15:08:50,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:08:50,555.555 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 15:08:54,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:08:54,615.615 INFO    ] Checking for system updates...
[2026-06-05 15:08:54,654.654 INFO    ] 200
[2026-06-05 15:08:54,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:54,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:54,712.712 INFO    ] No update needed
[2026-06-05 15:08:54,715.715 INFO    ] Checking for camera pi updates...
[2026-06-05 15:08:54,749.749 INFO    ] 200
[2026-06-05 15:08:54,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:08:54,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:08:54,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:08:54,843.843 INFO    ] No camera update needed
[2026-06-05 15:08:54,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:08:54,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:08:54,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:08:54,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:08:56,898.898 INFO    ] ================================================
[2026-06-05 15:08:56,913.913 INFO    ] Launching Daemon at Fri Jun  5 15:08:56 IST 2026
[2026-06-05 15:08:56,924.924 INFO    ] ================================================
[2026-06-05 15:08:57,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:08:57
[2026-06-05 15:08:58,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:08:58,344.344 INFO    ] Initializing speech engine...
[2026-06-05 15:08:58,350.350 INFO    ] 2026-06-05 15:08:58
[2026-06-05 15:08:58,653.653 INFO    ] 2026-06-05 15:08:58
[2026-06-05 15:08:58,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:08:58,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:08:58,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:08:59,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:08:59,179.179 INFO    ] time= 05/06/2026 15:08:59
[2026-06-05 15:08:59,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:08:59,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:08:59,365.365 INFO    ] No existing commands found in stream
[2026-06-05 15:09:04,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:09:04,380.380 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 15:09:07,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:09:07,462.462 INFO    ] Checking for system updates...
[2026-06-05 15:09:07,502.502 INFO    ] 200
[2026-06-05 15:09:07,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:07,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:09:07,562.562 INFO    ] No update needed
[2026-06-05 15:09:07,565.565 INFO    ] Checking for camera pi updates...
[2026-06-05 15:09:07,598.598 INFO    ] 200
[2026-06-05 15:09:07,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:07,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:09:07,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:09:07,674.674 INFO    ] No camera update needed
[2026-06-05 15:09:07,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:09:07,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:09:07,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:09:07,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:09:09,733.733 INFO    ] ================================================
[2026-06-05 15:09:09,748.748 INFO    ] Launching Daemon at Fri Jun  5 15:09:09 IST 2026
[2026-06-05 15:09:09,759.759 INFO    ] ================================================
[2026-06-05 15:09:10,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:09:10
[2026-06-05 15:09:10,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:09:11,219.219 INFO    ] Initializing speech engine...
[2026-06-05 15:09:11,237.237 INFO    ] 2026-06-05 15:09:11
[2026-06-05 15:09:11,529.529 INFO    ] 2026-06-05 15:09:11
[2026-06-05 15:09:11,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:09:11,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:09:11,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:09:11,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:09:11,904.904 INFO    ] time= 05/06/2026 15:09:11
[2026-06-05 15:09:11,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:09:11,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:09:12,002.002 INFO    ] No existing commands found in stream
[2026-06-05 15:09:17,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:09:17,051.051 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 15:09:19,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:09:19,408.408 INFO    ] Checking for system updates...
[2026-06-05 15:09:19,444.444 INFO    ] 200
[2026-06-05 15:09:19,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:19,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:09:19,502.502 INFO    ] No update needed
[2026-06-05 15:09:19,504.504 INFO    ] Checking for camera pi updates...
[2026-06-05 15:09:19,542.542 INFO    ] 200
[2026-06-05 15:09:19,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:19,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:09:19,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:09:19,719.719 INFO    ] No camera update needed
[2026-06-05 15:09:19,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:09:19,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:09:19,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:09:19,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:09:21,777.777 INFO    ] ================================================
[2026-06-05 15:09:21,792.792 INFO    ] Launching Daemon at Fri Jun  5 15:09:21 IST 2026
[2026-06-05 15:09:21,803.803 INFO    ] ================================================
[2026-06-05 15:09:22,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:09:22
[2026-06-05 15:09:22,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:09:23,282.282 INFO    ] Initializing speech engine...
[2026-06-05 15:09:23,289.289 INFO    ] 2026-06-05 15:09:23
[2026-06-05 15:09:23,565.565 INFO    ] 2026-06-05 15:09:23
[2026-06-05 15:09:23,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:09:23,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:09:23,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:09:23,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:09:24,012.012 INFO    ] time= 05/06/2026 15:09:23
[2026-06-05 15:09:24,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:09:24,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:09:24,173.173 INFO    ] No existing commands found in stream
[2026-06-05 15:09:29,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:09:29,186.186 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 15:09:30,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:09:30,339.339 INFO    ] Checking for system updates...
[2026-06-05 15:09:30,379.379 INFO    ] 200
[2026-06-05 15:09:30,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:30,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:09:30,443.443 INFO    ] No update needed
[2026-06-05 15:09:30,446.446 INFO    ] Checking for camera pi updates...
[2026-06-05 15:09:30,480.480 INFO    ] 200
[2026-06-05 15:09:30,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:30,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:09:30,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:09:30,571.571 INFO    ] No camera update needed
[2026-06-05 15:09:30,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:09:30,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:09:30,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:09:30,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:09:32,631.631 INFO    ] ================================================
[2026-06-05 15:09:32,648.648 INFO    ] Launching Daemon at Fri Jun  5 15:09:32 IST 2026
[2026-06-05 15:09:32,659.659 INFO    ] ================================================
[2026-06-05 15:09:33,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:09:33
[2026-06-05 15:09:33,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:09:34,268.268 INFO    ] Initializing speech engine...
[2026-06-05 15:09:34,283.283 INFO    ] 2026-06-05 15:09:34
[2026-06-05 15:09:34,561.561 INFO    ] 2026-06-05 15:09:34
[2026-06-05 15:09:34,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:09:34,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:09:34,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:09:35,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:09:35,012.012 INFO    ] time= 05/06/2026 15:09:35
[2026-06-05 15:09:35,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:09:35,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:09:35,196.196 INFO    ] No existing commands found in stream
[2026-06-05 15:09:40,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:09:40,210.210 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 15:09:43,126.126 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:09:43,128.128 INFO    ] Checking for system updates...
[2026-06-05 15:09:43,164.164 INFO    ] 200
[2026-06-05 15:09:43,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:43,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:09:43,229.229 INFO    ] No update needed
[2026-06-05 15:09:43,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 15:09:43,266.266 INFO    ] 200
[2026-06-05 15:09:43,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:43,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:09:43,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:09:43,359.359 INFO    ] No camera update needed
[2026-06-05 15:09:43,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:09:43,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:09:43,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:09:43,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:09:45,419.419 INFO    ] ================================================
[2026-06-05 15:09:45,434.434 INFO    ] Launching Daemon at Fri Jun  5 15:09:45 IST 2026
[2026-06-05 15:09:45,445.445 INFO    ] ================================================
[2026-06-05 15:09:46,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:09:46
[2026-06-05 15:09:46,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:09:47,075.075 INFO    ] Initializing speech engine...
[2026-06-05 15:09:47,080.080 INFO    ] 2026-06-05 15:09:47
[2026-06-05 15:09:47,360.360 INFO    ] 2026-06-05 15:09:47
[2026-06-05 15:09:47,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:09:49,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:09:49,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:09:49,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:09:49,699.699 INFO    ] time= 05/06/2026 15:09:49
[2026-06-05 15:09:49,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:09:49,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:09:49,820.820 INFO    ] No existing commands found in stream
[2026-06-05 15:09:54,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:09:54,837.837 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 15:09:55,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:09:55,943.943 INFO    ] Checking for system updates...
[2026-06-05 15:09:55,979.979 INFO    ] 200
[2026-06-05 15:09:55,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:56,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:09:56,037.037 INFO    ] No update needed
[2026-06-05 15:09:56,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 15:09:56,073.073 INFO    ] 200
[2026-06-05 15:09:56,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:09:56,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:09:56,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:09:56,167.167 INFO    ] No camera update needed
[2026-06-05 15:09:56,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:09:56,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:09:56,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:09:56,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:09:58,226.226 INFO    ] ================================================
[2026-06-05 15:09:58,241.241 INFO    ] Launching Daemon at Fri Jun  5 15:09:58 IST 2026
[2026-06-05 15:09:58,252.252 INFO    ] ================================================
[2026-06-05 15:09:58,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:09:58
[2026-06-05 15:09:59,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:09:59,716.716 INFO    ] Initializing speech engine...
[2026-06-05 15:09:59,727.727 INFO    ] 2026-06-05 15:09:59
[2026-06-05 15:09:59,987.987 INFO    ] 2026-06-05 15:09:59
[2026-06-05 15:10:00,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:10:00,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:10:00,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:10:00,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:10:00,417.417 INFO    ] time= 05/06/2026 15:10:00
[2026-06-05 15:10:00,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:10:00,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:10:00,605.605 INFO    ] No existing commands found in stream
[2026-06-05 15:10:05,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:10:05,643.643 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 15:10:06,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:10:06,984.984 INFO    ] Checking for system updates...
[2026-06-05 15:10:07,025.025 INFO    ] 200
[2026-06-05 15:10:07,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:07,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:10:07,085.085 INFO    ] No update needed
[2026-06-05 15:10:07,087.087 INFO    ] Checking for camera pi updates...
[2026-06-05 15:10:07,121.121 INFO    ] 200
[2026-06-05 15:10:07,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:07,170.170 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:10:07,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:10:07,207.207 INFO    ] No camera update needed
[2026-06-05 15:10:07,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:10:07,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:10:07,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:10:07,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:10:09,275.275 INFO    ] ================================================
[2026-06-05 15:10:09,290.290 INFO    ] Launching Daemon at Fri Jun  5 15:10:09 IST 2026
[2026-06-05 15:10:09,301.301 INFO    ] ================================================
[2026-06-05 15:10:09,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:10:09
[2026-06-05 15:10:10,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:10:10,775.775 INFO    ] Initializing speech engine...
[2026-06-05 15:10:10,783.783 INFO    ] 2026-06-05 15:10:10
[2026-06-05 15:10:11,044.044 INFO    ] 2026-06-05 15:10:11
[2026-06-05 15:10:11,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:10:11,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:10:11,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:10:11,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:10:11,529.529 INFO    ] time= 05/06/2026 15:10:11
[2026-06-05 15:10:11,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:10:11,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:10:11,729.729 INFO    ] No existing commands found in stream
[2026-06-05 15:10:16,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:10:16,757.757 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 15:10:19,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:10:19,740.740 INFO    ] Checking for system updates...
[2026-06-05 15:10:19,775.775 INFO    ] 200
[2026-06-05 15:10:19,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:19,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:10:19,841.841 INFO    ] No update needed
[2026-06-05 15:10:19,844.844 INFO    ] Checking for camera pi updates...
[2026-06-05 15:10:19,878.878 INFO    ] 200
[2026-06-05 15:10:19,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:19,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:10:19,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:10:19,953.953 INFO    ] No camera update needed
[2026-06-05 15:10:19,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:10:19,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:10:19,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:10:19,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:10:22,009.009 INFO    ] ================================================
[2026-06-05 15:10:22,024.024 INFO    ] Launching Daemon at Fri Jun  5 15:10:22 IST 2026
[2026-06-05 15:10:22,035.035 INFO    ] ================================================
[2026-06-05 15:10:22,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:10:22
[2026-06-05 15:10:23,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:10:23,694.694 INFO    ] Initializing speech engine...
[2026-06-05 15:10:23,703.703 INFO    ] 2026-06-05 15:10:23
[2026-06-05 15:10:23,978.978 INFO    ] 2026-06-05 15:10:23
[2026-06-05 15:10:24,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:10:24,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:10:24,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:10:24,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:10:24,479.479 INFO    ] time= 05/06/2026 15:10:24
[2026-06-05 15:10:24,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:10:24,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:10:24,700.700 INFO    ] No existing commands found in stream
[2026-06-05 15:10:29,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:10:29,728.728 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 15:10:33,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:10:33,692.692 INFO    ] Checking for system updates...
[2026-06-05 15:10:33,732.732 INFO    ] 200
[2026-06-05 15:10:33,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:33,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:10:33,792.792 INFO    ] No update needed
[2026-06-05 15:10:33,795.795 INFO    ] Checking for camera pi updates...
[2026-06-05 15:10:33,829.829 INFO    ] 200
[2026-06-05 15:10:33,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:33,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:10:33,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:10:33,911.911 INFO    ] No camera update needed
[2026-06-05 15:10:33,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:10:33,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:10:33,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:10:33,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:10:35,966.966 INFO    ] ================================================
[2026-06-05 15:10:35,981.981 INFO    ] Launching Daemon at Fri Jun  5 15:10:35 IST 2026
[2026-06-05 15:10:35,992.992 INFO    ] ================================================
[2026-06-05 15:10:36,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:10:36
[2026-06-05 15:10:37,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:10:37,499.499 INFO    ] Initializing speech engine...
[2026-06-05 15:10:37,508.508 INFO    ] 2026-06-05 15:10:37
[2026-06-05 15:10:37,801.801 INFO    ] 2026-06-05 15:10:37
[2026-06-05 15:10:37,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:10:38,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:10:38,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:10:38,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:10:38,218.218 INFO    ] time= 05/06/2026 15:10:38
[2026-06-05 15:10:38,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:10:38,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:10:38,302.302 INFO    ] No existing commands found in stream
[2026-06-05 15:10:43,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:10:43,318.318 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 15:10:45,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:10:45,138.138 INFO    ] Checking for system updates...
[2026-06-05 15:10:45,175.175 INFO    ] 200
[2026-06-05 15:10:45,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:45,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:10:45,239.239 INFO    ] No update needed
[2026-06-05 15:10:45,241.241 INFO    ] Checking for camera pi updates...
[2026-06-05 15:10:45,276.276 INFO    ] 200
[2026-06-05 15:10:45,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:45,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:10:45,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:10:45,363.363 INFO    ] No camera update needed
[2026-06-05 15:10:45,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:10:45,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:10:45,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:10:45,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:10:47,420.420 INFO    ] ================================================
[2026-06-05 15:10:47,435.435 INFO    ] Launching Daemon at Fri Jun  5 15:10:47 IST 2026
[2026-06-05 15:10:47,446.446 INFO    ] ================================================
[2026-06-05 15:10:48,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:10:48
[2026-06-05 15:10:48,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:10:48,889.889 INFO    ] Initializing speech engine...
[2026-06-05 15:10:48,905.905 INFO    ] 2026-06-05 15:10:48
[2026-06-05 15:10:49,174.174 INFO    ] 2026-06-05 15:10:49
[2026-06-05 15:10:49,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:10:49,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:10:49,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:10:49,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:10:49,590.590 INFO    ] time= 05/06/2026 15:10:49
[2026-06-05 15:10:49,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:10:49,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:10:49,677.677 INFO    ] No existing commands found in stream
[2026-06-05 15:10:54,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:10:54,710.710 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 15:10:58,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:10:58,909.909 INFO    ] Checking for system updates...
[2026-06-05 15:10:58,946.946 INFO    ] 200
[2026-06-05 15:10:58,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:59,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:10:59,005.005 INFO    ] No update needed
[2026-06-05 15:10:59,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 15:10:59,046.046 INFO    ] 200
[2026-06-05 15:10:59,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:10:59,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:10:59,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:10:59,139.139 INFO    ] No camera update needed
[2026-06-05 15:10:59,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:10:59,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:10:59,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:10:59,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:11:01,199.199 INFO    ] ================================================
[2026-06-05 15:11:01,214.214 INFO    ] Launching Daemon at Fri Jun  5 15:11:01 IST 2026
[2026-06-05 15:11:01,224.224 INFO    ] ================================================
[2026-06-05 15:11:01,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:11:01
[2026-06-05 15:11:02,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:11:02,928.928 INFO    ] Initializing speech engine...
[2026-06-05 15:11:02,948.948 INFO    ] 2026-06-05 15:11:02
[2026-06-05 15:11:03,211.211 INFO    ] 2026-06-05 15:11:03
[2026-06-05 15:11:03,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:11:03,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:11:03,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:11:03,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:11:03,618.618 INFO    ] time= 05/06/2026 15:11:03
[2026-06-05 15:11:03,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:11:03,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:11:03,783.783 INFO    ] No existing commands found in stream
[2026-06-05 15:11:08,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:11:08,811.811 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 15:11:10,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:11:10,620.620 INFO    ] Checking for system updates...
[2026-06-05 15:11:10,656.656 INFO    ] 200
[2026-06-05 15:11:10,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:11:10,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:11:10,714.714 INFO    ] No update needed
[2026-06-05 15:11:10,716.716 INFO    ] Checking for camera pi updates...
[2026-06-05 15:11:10,750.750 INFO    ] 200
[2026-06-05 15:11:10,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:11:10,797.797 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:11:10,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:11:10,842.842 INFO    ] No camera update needed
[2026-06-05 15:11:10,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:11:10,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:11:10,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:11:10,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:11:12,897.897 INFO    ] ================================================
[2026-06-05 15:11:12,913.913 INFO    ] Launching Daemon at Fri Jun  5 15:11:12 IST 2026
[2026-06-05 15:11:12,925.925 INFO    ] ================================================
[2026-06-05 15:11:13,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:11:13
[2026-06-05 15:11:14,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:11:14,376.376 INFO    ] Initializing speech engine...
[2026-06-05 15:11:14,391.391 INFO    ] 2026-06-05 15:11:14
[2026-06-05 15:11:14,657.657 INFO    ] 2026-06-05 15:11:14
[2026-06-05 15:11:14,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:11:14,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:11:14,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:11:15,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:11:15,066.066 INFO    ] time= 05/06/2026 15:11:15
[2026-06-05 15:11:15,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:11:15,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:11:15,244.244 INFO    ] Found 1 existing command(s) in stream
[2026-06-05 15:11:15,282.282 INFO    ] Checking historical command: ID=1780652471636-0
[2026-06-05 15:11:15,289.289 INFO    ] process_and_cleanup_command: msg_id=1780652471636-0
[2026-06-05 15:11:15,308.308 INFO    ] is_command_expired: timestamp=2026-06-05T09:41:11.195Z, expiry=30s
[2026-06-05 15:11:15,464.464 INFO    ] Command removed from stream: 1780652471636-0. returning for processing...
[2026-06-05 15:11:15,494.494 INFO    ] ***** get_valid_command
[2026-06-05 15:11:15,543.543 INFO    ] {'timestamp': '2026-06-05T09:41:11.195Z', 'data': '{"request_id":"start-order-1780652471195-x1200gzdp","orderId":"TM07202501260605151029293","is_vending":false}', 'timeout': '10', 'source': 'webapp', 'command': 'start-order'}
[2026-06-05 15:11:15,578.578 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1780652471195-x1200gzdp', 'is_vending': False, 'orderId': 'TM07202501260605151029293'}
[2026-06-05 15:11:15,603.603 INFO    ] Handling start order...
[2026-06-05 15:11:15,658.658 INFO    ] handle_start_order_command
[2026-06-05 15:11:15,742.742 INFO    ] _send_start_order_success: request_id=start-order-1780652471195-x1200gzdp, order_id=TM07202501260605151029293
[2026-06-05 15:11:15,778.778 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-05 15:11:15,929.929 INFO    ] [_send_start_order_success] Message added to stream with ID: 1780652475845-0
[2026-06-05 15:11:15,972.972 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-05 15:11:15,979.979 INFO    ] Checking for system updates...
[2026-06-05 15:11:16,050.050 INFO    ] 200
[2026-06-05 15:11:16,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:11:16,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:11:16,129.129 INFO    ] No update needed
[2026-06-05 15:11:16,133.133 INFO    ] Checking for camera pi updates...
[2026-06-05 15:11:16,226.226 INFO    ] 200
[2026-06-05 15:11:16,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:11:16,325.325 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:11:16,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:11:16,383.383 INFO    ] No camera update needed
[2026-06-05 15:11:16,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:11:16,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:11:16,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:11:16,413.413 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 15:11:16,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:11:18,473.473 INFO    ] ================================================
[2026-06-05 15:11:18,489.489 INFO    ] Launching Daemon at Fri Jun  5 15:11:18 IST 2026
[2026-06-05 15:11:18,500.500 INFO    ] ================================================
[2026-06-05 15:11:19,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:11:19
[2026-06-05 15:11:19,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:11:19,999.999 INFO    ] Initializing speech engine...
[2026-06-05 15:11:20,008.008 INFO    ] 2026-06-05 15:11:20
[2026-06-05 15:11:20,271.271 INFO    ] 2026-06-05 15:11:20
[2026-06-05 15:11:20,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:11:20,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:11:20,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:11:20,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:11:20,655.655 INFO    ] time= 05/06/2026 15:11:20
[2026-06-05 15:11:20,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:11:20,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:11:20,855.855 INFO    ] Found 2 existing command(s) in stream
[2026-06-05 15:11:20,866.866 INFO    ] Checking historical command: ID=1780652475845-0
[2026-06-05 15:11:20,884.884 INFO    ] process_and_cleanup_command: msg_id=1780652475845-0
[2026-06-05 15:11:20,913.913 INFO    ] is_command_expired: timestamp=2026-06-05T09:41:15.748590Z, expiry=30s
[2026-06-05 15:11:21,069.069 INFO    ] Command removed from stream: 1780652475845-0. returning for processing...
[2026-06-05 15:11:21,129.129 INFO    ] ***** get_valid_command
[2026-06-05 15:11:21,157.157 INFO    ] {'metadata_order_id': 'TM07202501260605151029293', 'imei': 'TM07202501', 'timestamp': '2026-06-05T09:41:15.748590Z', 'message': 'start-order success', 'metadata_request_id': 'start-order-1780652471195-x1200gzdp', 'status': 'success', 'message_type': 'command_response'}
[2026-06-05 15:11:21,211.211 INFO    ] Checking historical command: ID=1780652477438-0
[2026-06-05 15:11:21,276.276 INFO    ] process_and_cleanup_command: msg_id=1780652477438-0
[2026-06-05 15:11:21,335.335 INFO    ] is_command_expired: timestamp=2026-06-05T09:41:17.056Z, expiry=30s
[2026-06-05 15:11:21,485.485 INFO    ] Command removed from stream: 1780652477438-0. returning for processing...
[2026-06-05 15:11:21,500.500 INFO    ] ***** get_valid_command
[2026-06-05 15:11:21,503.503 INFO    ] {'source': 'webapp', 'command': 'process-order', 'timeout': '60', 'timestamp': '2026-06-05T09:41:17.056Z', 'data': '{"request_id":"process-order-1780652477056-o8hi0vopj","orderId":"TM07202501260605151029293","is_vending":false,"accessCode":"68359228"}'}
[2026-06-05 15:11:21,554.554 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM07202501260605151029293', 'request_id': 'process-order-1780652477056-o8hi0vopj', 'accessCode': '68359228'}
[2026-06-05 15:11:21,558.558 INFO    ] Handling process order...
[2026-06-05 15:11:21,561.561 INFO    ] Processing process-order command...
[2026-06-05 15:11:21,614.614 INFO    ] 🔍 Lock file Order ID: TM07202501260605151029293, TS: 2026-06-05 15:11:15
[2026-06-05 15:11:21,632.632 INFO    ] ✅ Order lock valid for TM07202501260605151029293
[2026-06-05 15:11:21,637.637 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-05 15:11:21,642.642 INFO    ] processing access code 68359228 for order TM07202501260605151029293
[2026-06-05 15:11:21,649.649 INFO    ] 🔍 Lock file Order ID: TM07202501260605151029293, TS: 2026-06-05 15:11:15
[2026-06-05 15:11:21,654.654 INFO    ] ✅ Order lock valid for TM07202501260605151029293
[2026-06-05 15:11:21,659.659 INFO    ] 2026-06-05 15:11:21
[2026-06-05 15:11:21,759.759 INFO    ] 200
[2026-06-05 15:11:21,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:11:21,818.818 INFO    ] 68359228
[2026-06-05 15:11:21,827.827 INFO    ] 2026-06-05 15:11:21
[2026-06-05 15:11:21,835.835 INFO    ] session id :864110251
[2026-06-05 15:11:21,842.842 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=68359228&imei=TM07202501&session_id=864110251
[2026-06-05 15:11:22,823.823 INFO    ] 200
[2026-06-05 15:11:22,829.829 INFO    ] {"rstatus": true, "msg": "Order Data", "data": {"mobile": "9587393539", "bill_amount": "100", "access_code": "68359228", "order_id": "TM07202501260605151029293", "proposed_sku_json": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml", "offer_id": "", "skuid": "4500694", "sku_total": 60, "door_id": "2", "tray_id": "41", "image_url": "https://images.tinymart.in/product/4500694-1219.png", "mrp": "60", "offer_desc": "", "unit_price": 60}, {"qty": 1, "name": "Farmely Classic date Bites 20gm", "offer_id": "", "skuid": "4500667", "sku_total": 40, "door_id": "1", "tray_id": "17", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "mrp": "40", "offer_desc": "", "unit_price": 40}], "invoice_bill": "100"}, "status": true}
[2026-06-05 15:11:22,838.838 INFO    ] 100
[2026-06-05 15:11:22,845.845 INFO    ] TM07202501260605151029293
[2026-06-05 15:11:22,857.857 INFO    ] 9587393539
[2026-06-05 15:11:22,875.875 INFO    ] 2026-06-05 15:11:22
[2026-06-05 15:11:22,893.893 INFO    ] Door Opening for user mobile ending with  three five three nine 
[2026-06-05 15:11:22,906.906 INFO    ] Door Opening for user mobile ending with  three five three nine 
[2026-06-05 15:11:22,920.920 INFO    ] ed94ae9d1b328895d1de2ae1d5319685
[2026-06-05 15:11:22,929.929 INFO    ] 2026-06-05 15:11:22
[2026-06-05 15:11:22,975.975 INFO    ] playing audio file
[2026-06-05 15:11:23,005.005 INFO    ] 2026-06-05 15:11:22
[2026-06-05 15:11:23,017.017 INFO    ] 2026-06-05 15:11:23
[2026-06-05 15:11:23,026.026 INFO    ] publish_status: order_id=TM07202501260605151029293
[2026-06-05 15:11:23,030.030 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605151029293
[2026-06-05 15:11:23,139.139 INFO    ] [publish_status] Message added to stream with ID: 1780652483098-0
[2026-06-05 15:11:23,162.162 INFO    ] Published to order:TM07202501260605151029293: {'server_status': 'order-started', 'order_id': 'TM07202501260605151029293', 'timestamp': '2026-06-05T09:41:23.019589Z', 'server_response': '{"data": {"mobile": "9587393539", "order_id": "TM07202501260605151029293", "proposed_sku_json": [{"offer_id": "", "qty": 1, "name": "Aatral Natural Electrolytes 200ml", "image_url": "https://images.tinymart.in/product/4500694-1219.png", "door_id": "2", "sku_total": 60, "skuid": "4500694", "offer_desc": "", "tray_id": "41", "unit_price": 60, "mrp": "60"}, {"offer_id": "", "qty": 1, "name": "Farmely Classic date Bites 20gm", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "door_id": "1", "sku_total": 40, "skuid": "4500667", "offer_desc": "", "tray_id": "17", "unit_price": 40, "mrp": "40"}], "invoice_bill": "100", "bill_amount": "100", "access_code": "68359228"}, "status": true, "msg": "Order Data", "rstatus": true}'} (ID: 1780652483098-0)
[2026-06-05 15:11:23,682.682 INFO    ] {'server_status': 'order-started', 'order_id': 'TM07202501260605151029293', 'server_response': {'data': {'mobile': '9587393539', 'order_id': 'TM07202501260605151029293', 'proposed_sku_json': [{'offer_id': '', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': '2', 'sku_total': 60, 'skuid': '4500694', 'offer_desc': '', 'tray_id': '41', 'unit_price': 60, 'mrp': '60'}, {'offer_id': '', 'qty': 1, 'name': 'Farmely Classic date Bites 20gm', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '1', 'sku_total': 40, 'skuid': '4500667', 'offer_desc': '', 'tray_id': '17', 'unit_price': 40, 'mrp': '40'}], 'invoice_bill': '100', 'bill_amount': '100', 'access_code': '68359228'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}}
[2026-06-05 15:11:23,684.684 INFO    ] 200
[2026-06-05 15:11:23,687.687 INFO    ] {"data":{"server_status":"order-started","order_id":"TM07202501260605151029293","server_response":{"data":{"mobile":"9587393539","order_id":"TM07202501260605151029293","proposed_sku_json":[{"offer_id":"","qty":1,"name":"Aatral Natural Electrolytes 200ml","image_url":"https:\/\/images.tinymart.in\/product\/4500694-1219.png","door_id":"2","sku_total":60,"skuid":"4500694","offer_desc":"","tray_id":"41","unit_price":60,"mrp":"60"},{"offer_id":"","qty":1,"name":"Farmely Classic date Bites 20gm","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","door_id":"1","sku_total":40,"skuid":"4500667","offer_desc":"","tray_id":"17","unit_price":40,"mrp":"40"}],"invoice_bill":"100","bill_amount":"100","access_code":"68359228"},"status":true,"msg":"Order Data","rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 15:11:23,690.690 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'order_id': 'TM07202501260605151029293', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'mobile': '9587393539', 'order_id': 'TM07202501260605151029293', 'proposed_sku_json': [{'offer_id': '', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml', 'door_id': '2', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'skuid': '4500694', 'offer_desc': '', 'sku_total': 60, 'tray_id': '41', 'mrp': '60', 'unit_price': 60}, {'offer_id': '', 'qty': 1, 'name': 'Farmely Classic date Bites 20gm', 'door_id': '1', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'skuid': '4500667', 'offer_desc': '', 'sku_total': 40, 'tray_id': '17', 'mrp': '40', 'unit_price': 40}], 'invoice_bill': '100', 'bill_amount': '100', 'access_code': '68359228'}}}}
[2026-06-05 15:11:23,693.693 INFO    ] 2026-06-05 15:11:23
[2026-06-05 15:11:23,740.740 INFO    ] 200
[2026-06-05 15:11:23,743.743 INFO    ] True
[2026-06-05 15:11:23,897.897 INFO    ] 200
[2026-06-05 15:11:23,900.900 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 15:11:23,903.903 INFO    ] {'voiceNote': 'Please Wait', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False'}
[2026-06-05 15:11:23,906.906 INFO    ] *** process_order ***
[2026-06-05 15:11:25,097.097 INFO    ] 200
[2026-06-05 15:11:25,099.099 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "delay": 0, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True"}
[2026-06-05 15:11:25,102.102 INFO    ] {'voiceNote': 'Please Wait', 'rstatus': True, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-06-05 15:11:25,104.104 INFO    ] *** process_order ***
[2026-06-05 15:11:25,107.107 INFO    ] publish_status: order_id=TM07202501260605151029293
[2026-06-05 15:11:25,110.110 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605151029293
[2026-06-05 15:11:25,213.213 INFO    ] [publish_status] Message added to stream with ID: 1780652485191-0
[2026-06-05 15:11:25,216.216 INFO    ] Published to order:TM07202501260605151029293: {'server_status': 'doorOpened', 'order_id': 'TM07202501260605151029293', 'server_response': '{"voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "status": "True"}'} (ID: 1780652485191-0)
[2026-06-05 15:11:26,267.267 INFO    ] 2026-06-05 15:11:26
[2026-06-05 15:11:26,274.274 INFO    ] publish_status: order_id=TM07202501260605151029293
[2026-06-05 15:11:26,277.277 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605151029293
[2026-06-05 15:11:26,356.356 INFO    ] [publish_status] Message added to stream with ID: 1780652486336-0
[2026-06-05 15:11:26,360.360 INFO    ] Published to order:TM07202501260605151029293: {'server_status': 'processOrder', 'order_id': 'TM07202501260605151029293', 'timestamp': '2026-06-05T09:41:26.272233Z', 'server_response': '{"voiceNote": "Please Wait", "rstatus": true, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}'} (ID: 1780652486336-0)
[2026-06-05 15:11:26,481.481 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM07202501260605151029293', 'server_response': {'voiceNote': 'Please Wait', 'rstatus': True, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}
[2026-06-05 15:11:26,484.484 INFO    ] 200
[2026-06-05 15:11:26,486.486 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM07202501260605151029293","server_response":{"voiceNote":"Please Wait","rstatus":true,"SectionStatus":{"Note":"","UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  "},"delay":0,"SectionMain":{"Header":"Processing Order"},"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 15:11:26,489.489 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM07202501260605151029293', 'server_response': {'voiceNote': 'Please Wait', 'rstatus': True, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}}
[2026-06-05 15:11:26,492.492 INFO    ] 2026-06-05 15:11:26
[2026-06-05 15:11:26,494.494 INFO    ] None
[2026-06-05 15:11:26,497.497 INFO    ] Opening Door now
[2026-06-05 15:11:26,500.500 INFO    ] Opening Door now
[2026-06-05 15:11:26,502.502 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-05 15:11:26,505.505 INFO    ] 2026-06-05 15:11:26
[2026-06-05 15:11:26,508.508 INFO    ] playing audio file
[2026-06-05 15:11:26,525.525 INFO    ] 2026-06-05 15:11:26
[2026-06-05 15:11:26,528.528 INFO    ] 2026-06-05 15:11:26
[2026-06-05 15:11:29,671.671 INFO    ] 200
[2026-06-05 15:11:29,674.674 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Farmely Classic date Bites 20gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 15:11:29,677.677 INFO    ] {'voiceNote': 'Door 1 is open now', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-05 15:11:32,759.759 INFO    ] 200
[2026-06-05 15:11:32,762.762 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Farmely Classic date Bites 20gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 15:11:32,768.768 INFO    ] {'voiceNote': 'Please close door 1', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-05 15:11:35,831.831 INFO    ] 200
[2026-06-05 15:11:35,834.834 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Farmely Classic date Bites 20gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 15:11:35,838.838 INFO    ] Please close door 1
[2026-06-05 15:11:35,840.840 INFO    ] Please close door 1
[2026-06-05 15:11:35,843.843 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-05 15:11:35,850.850 INFO    ] 2026-06-05 15:11:35
[2026-06-05 15:11:35,853.853 INFO    ] playing audio file
[2026-06-05 15:11:35,870.870 INFO    ] 2026-06-05 15:11:35
[2026-06-05 15:11:35,874.874 INFO    ] publish_status: order_id=TM07202501260605151029293
[2026-06-05 15:11:35,877.877 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605151029293
[2026-06-05 15:11:35,976.976 INFO    ] [publish_status] Message added to stream with ID: 1780652495954-0
[2026-06-05 15:11:35,980.980 INFO    ] Published to order:TM07202501260605151029293: {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605151029293', 'timestamp': '2026-06-05T09:41:35.872478Z', 'server_response': '{"voiceNote": "Please close door 1", "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False"}'} (ID: 1780652495954-0)
[2026-06-05 15:11:36,513.513 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605151029293', 'server_response': {'voiceNote': 'Please close door 1', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}}
[2026-06-05 15:11:36,518.518 INFO    ] 200
[2026-06-05 15:11:36,521.521 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260605151029293","server_response":{"voiceNote":"Please close door 1","error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Farmely Classic date Bites 20gm"}]},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 15:11:36,525.525 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605151029293', 'server_response': {'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': []}, 'status': 'false'}}}
[2026-06-05 15:11:36,528.528 INFO    ] {'voiceNote': 'Please close door 1', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-05 15:11:39,581.581 INFO    ] 200
[2026-06-05 15:11:39,584.584 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Header": "Door 1 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": false, "delay": 1000, "voiceNote": "Door 1 is closed now", "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Farmely Classic date Bites 20gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 15:11:39,587.587 INFO    ] {'voiceNote': 'Door 1 is closed now', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'SubHeader': 'Please wait for invoice to generate', 'Header': 'Door 1 is closed now'}, 'delay': 1000, 'SectionMain': {'Header': 'Door Close'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}}
[2026-06-05 15:11:42,741.741 INFO    ] 200
[2026-06-05 15:11:42,745.745 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Aatral Natural Electrolytes 200ml", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 15:11:42,751.751 INFO    ] {'voiceNote': 'Door 2 is open now', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-05 15:11:45,815.815 INFO    ] 200
[2026-06-05 15:11:45,818.818 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Aatral Natural Electrolytes 200ml", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 15:11:45,821.821 INFO    ] Please close door 2
[2026-06-05 15:11:45,823.823 INFO    ] Please close door 2
[2026-06-05 15:11:45,828.828 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-05 15:11:45,834.834 INFO    ] 2026-06-05 15:11:45
[2026-06-05 15:11:45,837.837 INFO    ] playing audio file
[2026-06-05 15:11:45,858.858 INFO    ] 2026-06-05 15:11:45
[2026-06-05 15:11:45,863.863 INFO    ] publish_status: order_id=TM07202501260605151029293
[2026-06-05 15:11:45,866.866 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605151029293
[2026-06-05 15:11:45,948.948 INFO    ] [publish_status] Message added to stream with ID: 1780652505927-0
[2026-06-05 15:11:45,951.951 INFO    ] Published to order:TM07202501260605151029293: {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605151029293', 'timestamp': '2026-06-05T09:41:45.860639Z', 'server_response': '{"voiceNote": "Please close door 2", "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}]}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False"}'} (ID: 1780652505927-0)
[2026-06-05 15:11:46,433.433 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605151029293', 'server_response': {'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}}
[2026-06-05 15:11:46,437.437 INFO    ] 200
[2026-06-05 15:11:46,441.441 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260605151029293","server_response":{"voiceNote":"Please close door 2","error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Aatral Natural Electrolytes 200ml"}]},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 15:11:46,446.446 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605151029293', 'server_response': {'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': []}, 'status': 'false'}}}
[2026-06-05 15:11:46,449.449 INFO    ] {'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-05 15:11:49,517.517 INFO    ] 200
[2026-06-05 15:11:49,520.520 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Aatral Natural Electrolytes 200ml", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 15:11:49,524.524 INFO    ] {'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-05 15:11:52,577.577 INFO    ] 200
[2026-06-05 15:11:52,580.580 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Aatral Natural Electrolytes 200ml", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 15:11:52,584.584 INFO    ] {'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-05 15:11:55,641.641 INFO    ] 200
[2026-06-05 15:11:55,645.645 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": true, "delay": 100, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True"}
[2026-06-05 15:11:55,649.649 INFO    ] publish_status: order_id=TM07202501260605151029293
[2026-06-05 15:11:55,652.652 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605151029293
[2026-06-05 15:11:55,738.738 INFO    ] [publish_status] Message added to stream with ID: 1780652515717-0
[2026-06-05 15:11:55,741.741 INFO    ] Published to order:TM07202501260605151029293: {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605151029293', 'timestamp': '2026-06-05T09:41:55.647160Z', 'server_response': '{"voiceNote": "Transaction Completed", "rstatus": true, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "SectionMain": {"Header": "Door Closed"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}}'} (ID: 1780652515717-0)
[2026-06-05 15:11:56,562.562 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605151029293', 'server_response': {'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}}
[2026-06-05 15:11:56,565.565 INFO    ] 200
[2026-06-05 15:11:56,568.568 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260605151029293","server_response":{"voiceNote":"Transaction Completed","rstatus":true,"SectionStatus":{"Note":"If any due amount, clear at https:\/\/go.tinymart.in","UI_Header":"","SubHeader":"Please wait for invoice to generate","Header":" Order is complete "},"delay":100,"SectionMain":{"Header":"Door Closed"},"status":"true","SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 15:11:56,572.572 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260605151029293', 'server_response': {'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'true', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}}}
[2026-06-05 15:11:56,575.575 INFO    ] {'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-06-05 15:11:56,578.578 INFO    ] 2026-06-05 15:11:56
[2026-06-05 15:11:56,581.581 INFO    ] Order Completed 
[2026-06-05 15:11:56,584.584 INFO    ] Order Completed 
[2026-06-05 15:11:56,587.587 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-05 15:11:56,590.590 INFO    ] 2026-06-05 15:11:56
[2026-06-05 15:11:56,593.593 INFO    ] playing audio file
[2026-06-05 15:11:56,612.612 INFO    ] 2026-06-05 15:11:56
[2026-06-05 15:11:56,616.616 INFO    ] {'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-06-05 15:11:56,620.620 INFO    ] 2026-06-05 15:11:56
[2026-06-05 15:11:57,048.048 INFO    ] 200
[2026-06-05 15:11:57,051.051 INFO    ] {"rstatus": true, "bill_amount": 100, "res": true, "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm per peice", "offer_id": "", "skuid": "4500667", "door_id": "", "sku_total": 40, "tray_id": "17", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "mrp": "40", "unit_price": "40"}, {"qty": 1, "name": "Aatral Natural Electrolytes 200ml per peice", "offer_id": "", "skuid": "4500694", "door_id": "", "sku_total": 60, "tray_id": "41", "image_url": "https://images.tinymart.in/product/4500694-1219.png", "mrp": "60", "unit_price": "60"}], "anomaly": 0, "cart_offer_desc": "", "order_status": "", "imei": "TM07202501", "userId": "9587393539", "orderId": "TM07202501260605151029293", "total_amount": 100}
[2026-06-05 15:11:57,054.054 INFO    ] {'res': True, 'imei': 'TM07202501', 'total_amount': 100, 'orderId': 'TM07202501260605151029293', 'anomaly': 0, 'cart_offer_desc': '', 'rstatus': True, 'bill_amount': 100, 'order_status': '', 'userId': '9587393539', 'skus': [{'offer_id': '', 'qty': 1, 'name': 'Farmely Classic date Bites 20gm per peice', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '', 'sku_total': 40, 'skuid': '4500667', 'unit_price': '40', 'tray_id': '17', 'mrp': '40'}, {'offer_id': '', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': '', 'sku_total': 60, 'skuid': '4500694', 'unit_price': '60', 'tray_id': '41', 'mrp': '60'}]}
[2026-06-05 15:11:57,057.057 INFO    ] {'res': True, 'imei': 'TM07202501', 'total_amount': 100, 'orderId': 'TM07202501260605151029293', 'anomaly': 0, 'cart_offer_desc': '', 'rstatus': True, 'bill_amount': 100, 'order_status': '', 'userId': '9587393539', 'skus': [{'offer_id': '', 'qty': 1, 'name': 'Farmely Classic date Bites 20gm per peice', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '', 'sku_total': 40, 'skuid': '4500667', 'unit_price': '40', 'tray_id': '17', 'mrp': '40'}, {'offer_id': '', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': '', 'sku_total': 60, 'skuid': '4500694', 'unit_price': '60', 'tray_id': '41', 'mrp': '60'}]}
[2026-06-05 15:11:57,060.060 INFO    ] 2026-06-05 15:11:57
[2026-06-05 15:11:57,064.064 INFO    ] 2026-06-05 15:11:57
[2026-06-05 15:11:57,067.067 INFO    ] 100
[2026-06-05 15:11:57,069.069 INFO    ] 2026-06-05 15:11:57
[2026-06-05 15:11:57,072.072 INFO    ] 2026-06-05 15:11:57
[2026-06-05 15:11:57,075.075 INFO    ]  Your Bill Amount is 100
[2026-06-05 15:11:57,078.078 INFO    ]  Your Bill Amount is 100
[2026-06-05 15:11:57,080.080 INFO    ] d403bfb2a3e236c325436991e756dde3
[2026-06-05 15:11:57,083.083 INFO    ] 2026-06-05 15:11:57
[2026-06-05 15:11:57,086.086 INFO    ] playing audio file
[2026-06-05 15:11:57,104.104 INFO    ] 2026-06-05 15:11:57
[2026-06-05 15:11:57,107.107 INFO    ] 2026-06-05 15:11:57
[2026-06-05 15:11:57,111.111 INFO    ] publish_status: order_id=TM07202501260605151029293
[2026-06-05 15:11:57,114.114 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605151029293
[2026-06-05 15:11:57,186.186 INFO    ] [publish_status] Message added to stream with ID: 1780652517165-0
[2026-06-05 15:11:57,188.188 INFO    ] Published to order:TM07202501260605151029293: {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260605151029293', 'timestamp': '2026-06-05T09:41:57.109207Z', 'server_response': '{"res": true, "imei": "TM07202501", "total_amount": 100, "orderId": "TM07202501260605151029293", "anomaly": 0, "cart_offer_desc": "", "rstatus": true, "bill_amount": 100, "order_status": "", "userId": "9587393539", "skus": [{"offer_id": "", "qty": 1, "name": "Farmely Classic date Bites 20gm per peice", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "door_id": "", "sku_total": 40, "skuid": "4500667", "unit_price": "40", "tray_id": "17", "mrp": "40"}, {"offer_id": "", "qty": 1, "name": "Aatral Natural Electrolytes 200ml per peice", "image_url": "https://images.tinymart.in/product/4500694-1219.png", "door_id": "", "sku_total": 60, "skuid": "4500694", "unit_price": "60", "tray_id": "41", "mrp": "60"}]}'} (ID: 1780652517165-0)
[2026-06-05 15:11:57,409.409 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260605151029293', 'server_response': {'res': True, 'imei': 'TM07202501', 'total_amount': 100, 'orderId': 'TM07202501260605151029293', 'anomaly': 0, 'cart_offer_desc': '', 'rstatus': True, 'bill_amount': 100, 'order_status': '', 'userId': '9587393539', 'skus': [{'offer_id': '', 'qty': 1, 'name': 'Farmely Classic date Bites 20gm per peice', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '', 'sku_total': 40, 'skuid': '4500667', 'unit_price': '40', 'tray_id': '17', 'mrp': '40'}, {'offer_id': '', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': '', 'sku_total': 60, 'skuid': '4500694', 'unit_price': '60', 'tray_id': '41', 'mrp': '60'}]}}
[2026-06-05 15:11:57,411.411 INFO    ] 200
[2026-06-05 15:11:57,414.414 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM07202501260605151029293","server_response":{"res":true,"imei":"TM07202501","total_amount":100,"orderId":"TM07202501260605151029293","anomaly":0,"cart_offer_desc":"","rstatus":true,"bill_amount":100,"order_status":"","userId":"9587393539","skus":[{"offer_id":"","qty":1,"name":"Farmely Classic date Bites 20gm per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","door_id":"","sku_total":40,"skuid":"4500667","unit_price":"40","tray_id":"17","mrp":"40"},{"offer_id":"","qty":1,"name":"Aatral Natural Electrolytes 200ml per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500694-1219.png","door_id":"","sku_total":60,"skuid":"4500694","unit_price":"60","tray_id":"41","mrp":"60"}]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 15:11:57,418.418 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260605151029293', 'server_response': {'res': True, 'imei': 'TM07202501', 'total_amount': 100, 'anomaly': 0, 'cart_offer_desc': '', 'rstatus': True, 'skus': [{'offer_id': '', 'qty': 1, 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'skuid': '4500667', 'sku_total': 40, 'tray_id': '17', 'mrp': '40', 'unit_price': '40'}, {'offer_id': '', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'skuid': '4500694', 'sku_total': 60, 'tray_id': '41', 'mrp': '60', 'unit_price': '60'}], 'order_status': '', 'orderId': 'TM07202501260605151029293', 'bill_amount': 100, 'userId': '9587393539'}}}
[2026-06-05 15:11:57,421.421 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260605151029293', 'server_response': {'res': True, 'imei': 'TM07202501', 'total_amount': 100, 'anomaly': 0, 'cart_offer_desc': '', 'rstatus': True, 'skus': [{'offer_id': '', 'qty': 1, 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'skuid': '4500667', 'sku_total': 40, 'tray_id': '17', 'mrp': '40', 'unit_price': '40'}, {'offer_id': '', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'skuid': '4500694', 'sku_total': 60, 'tray_id': '41', 'mrp': '60', 'unit_price': '60'}], 'order_status': '', 'orderId': 'TM07202501260605151029293', 'bill_amount': 100, 'userId': '9587393539'}}}
[2026-06-05 15:11:57,424.424 INFO    ] 2026-06-05 15:11:57
[2026-06-05 15:12:00,158.158 INFO    ] 200
[2026-06-05 15:12:00,160.160 INFO    ] {"orders": [], "orders_synced": [], "order_items_synced": ["TM07202501260605151029293_0", "TM07202501260605151029293_1"], "orders_data": [], "tray_synced": ["TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293", "TM07202501260605151029293"], "orders_data_synced": [], "order_items": [], "tray_sync": [], "status": true}
[2026-06-05 15:12:00,164.164 INFO    ] 2026-06-05 15:12:00
[2026-06-05 15:12:00,294.294 INFO    ] 200
[2026-06-05 15:12:00,297.297 INFO    ] True
[2026-06-05 15:12:00,300.300 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260605151029293
[2026-06-05 15:12:00,304.304 INFO    ] start order file deleted
[2026-06-05 15:12:00,308.308 INFO    ] Checking for system updates...
[2026-06-05 15:12:00,344.344 INFO    ] 200
[2026-06-05 15:12:00,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:00,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:12:00,412.412 INFO    ] No update needed
[2026-06-05 15:12:00,414.414 INFO    ] Checking for camera pi updates...
[2026-06-05 15:12:00,456.456 INFO    ] 200
[2026-06-05 15:12:00,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:00,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:12:00,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:12:00,553.553 INFO    ] No camera update needed
[2026-06-05 15:12:00,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:12:00,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:12:00,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:12:00,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:12:02,628.628 INFO    ] ================================================
[2026-06-05 15:12:02,647.647 INFO    ] Launching Daemon at Fri Jun  5 15:12:02 IST 2026
[2026-06-05 15:12:02,664.664 INFO    ] ================================================
[2026-06-05 15:12:03,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:12:03
[2026-06-05 15:12:04,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:12:04,295.295 INFO    ] Initializing speech engine...
[2026-06-05 15:12:04,305.305 INFO    ] 2026-06-05 15:12:04
[2026-06-05 15:12:04,557.557 INFO    ] 2026-06-05 15:12:04
[2026-06-05 15:12:04,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:12:04,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:12:04,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:12:05,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:12:05,013.013 INFO    ] time= 05/06/2026 15:12:05
[2026-06-05 15:12:05,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:12:05,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:12:05,175.175 INFO    ] No existing commands found in stream
[2026-06-05 15:12:10,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:12:10,203.203 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 15:12:11,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:12:11,088.088 INFO    ] Checking for system updates...
[2026-06-05 15:12:11,124.124 INFO    ] 200
[2026-06-05 15:12:11,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:11,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:12:11,183.183 INFO    ] No update needed
[2026-06-05 15:12:11,185.185 INFO    ] Checking for camera pi updates...
[2026-06-05 15:12:11,220.220 INFO    ] 200
[2026-06-05 15:12:11,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:11,265.265 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:12:11,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:12:11,311.311 INFO    ] No camera update needed
[2026-06-05 15:12:11,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:12:11,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:12:11,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:12:11,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:12:13,372.372 INFO    ] ================================================
[2026-06-05 15:12:13,389.389 INFO    ] Launching Daemon at Fri Jun  5 15:12:13 IST 2026
[2026-06-05 15:12:13,400.400 INFO    ] ================================================
[2026-06-05 15:12:13,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:12:13
[2026-06-05 15:12:14,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:12:14,825.825 INFO    ] Initializing speech engine...
[2026-06-05 15:12:14,834.834 INFO    ] 2026-06-05 15:12:14
[2026-06-05 15:12:15,084.084 INFO    ] 2026-06-05 15:12:15
[2026-06-05 15:12:15,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:12:15,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:12:15,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:12:15,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:12:15,431.431 INFO    ] time= 05/06/2026 15:12:15
[2026-06-05 15:12:15,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:12:15,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:12:15,545.545 INFO    ] No existing commands found in stream
[2026-06-05 15:12:20,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:12:20,560.560 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 15:12:22,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:12:22,049.049 INFO    ] Checking for system updates...
[2026-06-05 15:12:22,085.085 INFO    ] 200
[2026-06-05 15:12:22,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:22,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:12:22,150.150 INFO    ] No update needed
[2026-06-05 15:12:22,153.153 INFO    ] Checking for camera pi updates...
[2026-06-05 15:12:22,186.186 INFO    ] 200
[2026-06-05 15:12:22,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:22,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:12:22,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:12:22,272.272 INFO    ] No camera update needed
[2026-06-05 15:12:22,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:12:22,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:12:22,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:12:22,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:12:24,329.329 INFO    ] ================================================
[2026-06-05 15:12:24,345.345 INFO    ] Launching Daemon at Fri Jun  5 15:12:24 IST 2026
[2026-06-05 15:12:24,357.357 INFO    ] ================================================
[2026-06-05 15:12:25,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:12:25
[2026-06-05 15:12:25,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:12:26,010.010 INFO    ] Initializing speech engine...
[2026-06-05 15:12:26,024.024 INFO    ] 2026-06-05 15:12:26
[2026-06-05 15:12:26,310.310 INFO    ] 2026-06-05 15:12:26
[2026-06-05 15:12:26,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:12:26,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:12:26,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:12:26,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:12:26,876.876 INFO    ] time= 05/06/2026 15:12:26
[2026-06-05 15:12:26,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:12:26,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:12:27,033.033 INFO    ] No existing commands found in stream
[2026-06-05 15:12:32,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:12:32,071.071 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 15:12:34,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:12:34,440.440 INFO    ] Checking for system updates...
[2026-06-05 15:12:34,478.478 INFO    ] 200
[2026-06-05 15:12:34,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:34,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:12:34,537.537 INFO    ] No update needed
[2026-06-05 15:12:34,540.540 INFO    ] Checking for camera pi updates...
[2026-06-05 15:12:34,581.581 INFO    ] 200
[2026-06-05 15:12:34,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:34,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:12:34,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:12:34,684.684 INFO    ] No camera update needed
[2026-06-05 15:12:34,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:12:34,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:12:34,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:12:34,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:12:36,744.744 INFO    ] ================================================
[2026-06-05 15:12:36,759.759 INFO    ] Launching Daemon at Fri Jun  5 15:12:36 IST 2026
[2026-06-05 15:12:36,770.770 INFO    ] ================================================
[2026-06-05 15:12:37,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:12:37
[2026-06-05 15:12:37,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:12:38,196.196 INFO    ] Initializing speech engine...
[2026-06-05 15:12:38,201.201 INFO    ] 2026-06-05 15:12:38
[2026-06-05 15:12:38,446.446 INFO    ] 2026-06-05 15:12:38
[2026-06-05 15:12:38,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:12:38,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:12:38,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:12:38,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:12:38,938.938 INFO    ] time= 05/06/2026 15:12:38
[2026-06-05 15:12:38,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:12:39,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:12:39,147.147 INFO    ] No existing commands found in stream
[2026-06-05 15:12:44,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:12:44,162.162 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 15:12:49,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:12:49,660.660 INFO    ] Checking for system updates...
[2026-06-05 15:12:49,697.697 INFO    ] 200
[2026-06-05 15:12:49,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:49,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:12:49,753.753 INFO    ] No update needed
[2026-06-05 15:12:49,756.756 INFO    ] Checking for camera pi updates...
[2026-06-05 15:12:49,789.789 INFO    ] 200
[2026-06-05 15:12:49,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:12:49,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:12:49,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:12:49,879.879 INFO    ] No camera update needed
[2026-06-05 15:12:49,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:12:49,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:12:49,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:12:49,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:12:51,933.933 INFO    ] ================================================
[2026-06-05 15:12:51,948.948 INFO    ] Launching Daemon at Fri Jun  5 15:12:51 IST 2026
[2026-06-05 15:12:51,960.960 INFO    ] ================================================
[2026-06-05 15:12:52,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:12:52
[2026-06-05 15:12:53,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:12:53,424.424 INFO    ] Initializing speech engine...
[2026-06-05 15:12:53,434.434 INFO    ] 2026-06-05 15:12:53
[2026-06-05 15:12:53,693.693 INFO    ] 2026-06-05 15:12:53
[2026-06-05 15:12:53,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:12:53,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:12:53,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:12:54,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:12:54,180.180 INFO    ] time= 05/06/2026 15:12:54
[2026-06-05 15:12:54,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:12:54,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:12:54,429.429 INFO    ] No existing commands found in stream
[2026-06-05 15:12:59,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:12:59,457.457 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 15:13:04,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:13:04,284.284 INFO    ] Checking for system updates...
[2026-06-05 15:13:04,327.327 INFO    ] 200
[2026-06-05 15:13:04,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:04,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:04,399.399 INFO    ] No update needed
[2026-06-05 15:13:04,402.402 INFO    ] Checking for camera pi updates...
[2026-06-05 15:13:04,441.441 INFO    ] 200
[2026-06-05 15:13:04,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:04,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:13:04,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:04,533.533 INFO    ] No camera update needed
[2026-06-05 15:13:04,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:13:04,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:13:04,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:13:04,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:13:06,592.592 INFO    ] ================================================
[2026-06-05 15:13:06,607.607 INFO    ] Launching Daemon at Fri Jun  5 15:13:06 IST 2026
[2026-06-05 15:13:06,618.618 INFO    ] ================================================
[2026-06-05 15:13:07,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:13:07
[2026-06-05 15:13:07,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:13:08,073.073 INFO    ] Initializing speech engine...
[2026-06-05 15:13:08,083.083 INFO    ] 2026-06-05 15:13:08
[2026-06-05 15:13:08,381.381 INFO    ] 2026-06-05 15:13:08
[2026-06-05 15:13:08,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:13:08,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:13:08,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:13:08,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:13:08,769.769 INFO    ] time= 05/06/2026 15:13:08
[2026-06-05 15:13:08,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:13:08,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:13:08,944.944 INFO    ] No existing commands found in stream
[2026-06-05 15:13:13,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:13:13,983.983 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 15:13:14,668.668 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:13:14,672.672 INFO    ] Checking for system updates...
[2026-06-05 15:13:14,709.709 INFO    ] 200
[2026-06-05 15:13:14,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:14,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:14,775.775 INFO    ] No update needed
[2026-06-05 15:13:14,779.779 INFO    ] Checking for camera pi updates...
[2026-06-05 15:13:14,813.813 INFO    ] 200
[2026-06-05 15:13:14,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:14,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:13:14,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:14,909.909 INFO    ] No camera update needed
[2026-06-05 15:13:14,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:13:14,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:13:14,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:13:14,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:13:16,966.966 INFO    ] ================================================
[2026-06-05 15:13:16,981.981 INFO    ] Launching Daemon at Fri Jun  5 15:13:16 IST 2026
[2026-06-05 15:13:16,993.993 INFO    ] ================================================
[2026-06-05 15:13:17,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:13:17
[2026-06-05 15:13:18,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:13:18,427.427 INFO    ] Initializing speech engine...
[2026-06-05 15:13:18,441.441 INFO    ] 2026-06-05 15:13:18
[2026-06-05 15:13:18,708.708 INFO    ] 2026-06-05 15:13:18
[2026-06-05 15:13:18,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:13:19,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:13:19,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:13:19,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:13:19,680.680 INFO    ] time= 05/06/2026 15:13:19
[2026-06-05 15:13:19,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:13:19,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:13:19,848.848 INFO    ] No existing commands found in stream
[2026-06-05 15:13:24,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:13:24,871.871 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 15:13:26,169.169 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:13:26,171.171 INFO    ] Checking for system updates...
[2026-06-05 15:13:26,207.207 INFO    ] 200
[2026-06-05 15:13:26,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:26,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:26,264.264 INFO    ] No update needed
[2026-06-05 15:13:26,266.266 INFO    ] Checking for camera pi updates...
[2026-06-05 15:13:26,312.312 INFO    ] 200
[2026-06-05 15:13:26,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:26,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:13:26,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:26,504.504 INFO    ] No camera update needed
[2026-06-05 15:13:26,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:13:26,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:13:26,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:13:26,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:13:28,560.560 INFO    ] ================================================
[2026-06-05 15:13:28,576.576 INFO    ] Launching Daemon at Fri Jun  5 15:13:28 IST 2026
[2026-06-05 15:13:28,587.587 INFO    ] ================================================
[2026-06-05 15:13:29,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:13:29
[2026-06-05 15:13:29,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:13:30,201.201 INFO    ] Initializing speech engine...
[2026-06-05 15:13:30,214.214 INFO    ] 2026-06-05 15:13:30
[2026-06-05 15:13:30,509.509 INFO    ] 2026-06-05 15:13:30
[2026-06-05 15:13:30,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:13:31,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:13:31,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:13:31,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:13:31,260.260 INFO    ] time= 05/06/2026 15:13:31
[2026-06-05 15:13:31,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:13:31,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:13:31,483.483 INFO    ] No existing commands found in stream
[2026-06-05 15:13:36,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:13:36,519.519 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 15:13:37,058.058 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:13:37,060.060 INFO    ] Checking for system updates...
[2026-06-05 15:13:37,097.097 INFO    ] 200
[2026-06-05 15:13:37,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:37,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:37,167.167 INFO    ] No update needed
[2026-06-05 15:13:37,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 15:13:37,208.208 INFO    ] 200
[2026-06-05 15:13:37,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:37,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:13:37,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:37,303.303 INFO    ] No camera update needed
[2026-06-05 15:13:37,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:13:37,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:13:37,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:13:37,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:13:39,360.360 INFO    ] ================================================
[2026-06-05 15:13:39,376.376 INFO    ] Launching Daemon at Fri Jun  5 15:13:39 IST 2026
[2026-06-05 15:13:39,388.388 INFO    ] ================================================
[2026-06-05 15:13:39,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:13:39
[2026-06-05 15:13:40,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:13:40,790.790 INFO    ] Initializing speech engine...
[2026-06-05 15:13:40,804.804 INFO    ] 2026-06-05 15:13:40
[2026-06-05 15:13:41,065.065 INFO    ] 2026-06-05 15:13:41
[2026-06-05 15:13:41,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:13:41,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:13:41,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:13:41,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:13:41,434.434 INFO    ] time= 05/06/2026 15:13:41
[2026-06-05 15:13:41,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:13:41,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:13:41,625.625 INFO    ] No existing commands found in stream
[2026-06-05 15:13:46,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:13:46,643.643 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 15:13:49,477.477 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:13:49,479.479 INFO    ] Checking for system updates...
[2026-06-05 15:13:49,517.517 INFO    ] 200
[2026-06-05 15:13:49,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:49,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:49,578.578 INFO    ] No update needed
[2026-06-05 15:13:49,581.581 INFO    ] Checking for camera pi updates...
[2026-06-05 15:13:49,617.617 INFO    ] 200
[2026-06-05 15:13:49,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:49,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:13:49,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:49,707.707 INFO    ] No camera update needed
[2026-06-05 15:13:49,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:13:49,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:13:49,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:13:49,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:13:51,777.777 INFO    ] ================================================
[2026-06-05 15:13:51,793.793 INFO    ] Launching Daemon at Fri Jun  5 15:13:51 IST 2026
[2026-06-05 15:13:51,804.804 INFO    ] ================================================
[2026-06-05 15:13:52,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:13:52
[2026-06-05 15:13:53,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:13:53,336.336 INFO    ] Initializing speech engine...
[2026-06-05 15:13:53,344.344 INFO    ] 2026-06-05 15:13:53
[2026-06-05 15:13:53,626.626 INFO    ] 2026-06-05 15:13:53
[2026-06-05 15:13:53,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:13:53,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:13:53,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:13:54,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:13:54,010.010 INFO    ] time= 05/06/2026 15:13:54
[2026-06-05 15:13:54,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:13:54,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:13:54,174.174 INFO    ] No existing commands found in stream
[2026-06-05 15:13:59,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:13:59,202.202 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 15:13:59,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:13:59,629.629 INFO    ] Checking for system updates...
[2026-06-05 15:13:59,666.666 INFO    ] 200
[2026-06-05 15:13:59,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:59,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:59,723.723 INFO    ] No update needed
[2026-06-05 15:13:59,726.726 INFO    ] Checking for camera pi updates...
[2026-06-05 15:13:59,764.764 INFO    ] 200
[2026-06-05 15:13:59,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:13:59,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:13:59,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:13:59,869.869 INFO    ] No camera update needed
[2026-06-05 15:13:59,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:13:59,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:13:59,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:13:59,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:14:01,927.927 INFO    ] ================================================
[2026-06-05 15:14:01,943.943 INFO    ] Launching Daemon at Fri Jun  5 15:14:01 IST 2026
[2026-06-05 15:14:01,966.966 INFO    ] ================================================
[2026-06-05 15:14:02,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:14:02
[2026-06-05 15:14:03,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:14:03,639.639 INFO    ] Initializing speech engine...
[2026-06-05 15:14:03,651.651 INFO    ] 2026-06-05 15:14:03
[2026-06-05 15:14:03,914.914 INFO    ] 2026-06-05 15:14:03
[2026-06-05 15:14:03,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:14:04,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:14:04,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:14:04,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:14:04,380.380 INFO    ] time= 05/06/2026 15:14:04
[2026-06-05 15:14:04,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:14:04,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:14:04,564.564 INFO    ] No existing commands found in stream
[2026-06-05 15:14:09,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:14:09,593.593 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 15:14:13,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:14:13,739.739 INFO    ] Checking for system updates...
[2026-06-05 15:14:13,779.779 INFO    ] 200
[2026-06-05 15:14:13,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:14:13,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:14:13,845.845 INFO    ] No update needed
[2026-06-05 15:14:13,848.848 INFO    ] Checking for camera pi updates...
[2026-06-05 15:14:13,886.886 INFO    ] 200
[2026-06-05 15:14:13,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:14:13,934.934 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:14:13,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:14:13,982.982 INFO    ] No camera update needed
[2026-06-05 15:14:13,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:14:13,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:14:13,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:14:13,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:14:16,039.039 INFO    ] ================================================
[2026-06-05 15:14:16,055.055 INFO    ] Launching Daemon at Fri Jun  5 15:14:16 IST 2026
[2026-06-05 15:14:16,068.068 INFO    ] ================================================
[2026-06-05 15:14:16,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:14:16
[2026-06-05 15:14:17,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:14:17,566.566 INFO    ] Initializing speech engine...
[2026-06-05 15:14:17,575.575 INFO    ] 2026-06-05 15:14:17
[2026-06-05 15:14:17,840.840 INFO    ] 2026-06-05 15:14:17
[2026-06-05 15:14:17,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:14:19,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:14:19,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:14:19,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:14:19,728.728 INFO    ] time= 05/06/2026 15:14:19
[2026-06-05 15:14:19,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:14:19,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:14:19,823.823 INFO    ] No existing commands found in stream
[2026-06-05 15:14:24,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:14:24,839.839 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 15:14:25,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:14:25,450.450 INFO    ] Checking for system updates...
[2026-06-05 15:14:25,486.486 INFO    ] 200
[2026-06-05 15:14:25,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:14:25,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:14:25,544.544 INFO    ] No update needed
[2026-06-05 15:14:25,547.547 INFO    ] Checking for camera pi updates...
[2026-06-05 15:14:25,581.581 INFO    ] 200
[2026-06-05 15:14:25,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:14:25,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:14:25,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:14:25,675.675 INFO    ] No camera update needed
[2026-06-05 15:14:25,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:14:25,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:14:25,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:14:25,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:14:27,731.731 INFO    ] ================================================
[2026-06-05 15:14:27,755.755 INFO    ] Launching Daemon at Fri Jun  5 15:14:27 IST 2026
[2026-06-05 15:14:27,767.767 INFO    ] ================================================
[2026-06-05 15:14:28,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:14:28
[2026-06-05 15:14:28,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:14:29,243.243 INFO    ] Initializing speech engine...
[2026-06-05 15:14:29,269.269 INFO    ] 2026-06-05 15:14:29
[2026-06-05 15:14:29,548.548 INFO    ] 2026-06-05 15:14:29
[2026-06-05 15:14:29,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:14:29,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:14:29,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:14:29,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:14:29,974.974 INFO    ] time= 05/06/2026 15:14:29
[2026-06-05 15:14:29,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:14:29,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:14:30,064.064 INFO    ] No existing commands found in stream
[2026-06-05 15:14:35,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:14:35,087.087 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 15:14:36,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:14:36,840.840 INFO    ] Checking for system updates...
[2026-06-05 15:14:36,877.877 INFO    ] 200
[2026-06-05 15:14:36,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:14:38,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:14:38,609.609 INFO    ] No update needed
[2026-06-05 15:14:38,611.611 INFO    ] Checking for camera pi updates...
[2026-06-05 15:14:39,081.081 INFO    ] 200
[2026-06-05 15:14:39,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:14:39,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:14:39,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:14:39,174.174 INFO    ] No camera update needed
[2026-06-05 15:14:39,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:14:39,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:14:39,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:14:39,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:14:41,231.231 INFO    ] ================================================
[2026-06-05 15:14:41,247.247 INFO    ] Launching Daemon at Fri Jun  5 15:14:41 IST 2026
[2026-06-05 15:14:41,258.258 INFO    ] ================================================
[2026-06-05 15:14:41,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:14:41
[2026-06-05 15:14:42,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:14:42,704.704 INFO    ] Initializing speech engine...
[2026-06-05 15:14:42,717.717 INFO    ] 2026-06-05 15:14:42
[2026-06-05 15:14:43,010.010 INFO    ] 2026-06-05 15:14:42
[2026-06-05 15:14:43,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:14:43,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:14:43,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:14:43,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:14:43,515.515 INFO    ] time= 05/06/2026 15:14:43
[2026-06-05 15:14:43,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:14:43,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:14:43,690.690 INFO    ] No existing commands found in stream
[2026-06-05 15:14:48,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:14:48,704.704 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 15:14:52,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:14:52,197.197 INFO    ] Checking for system updates...
[2026-06-05 15:14:52,233.233 INFO    ] 200
[2026-06-05 15:14:52,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:14:52,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:14:52,299.299 INFO    ] No update needed
[2026-06-05 15:14:52,302.302 INFO    ] Checking for camera pi updates...
[2026-06-05 15:14:52,340.340 INFO    ] 200
[2026-06-05 15:14:52,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:14:52,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:14:52,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:14:52,430.430 INFO    ] No camera update needed
[2026-06-05 15:14:52,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:14:52,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:14:52,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:14:52,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:14:54,488.488 INFO    ] ================================================
[2026-06-05 15:14:54,504.504 INFO    ] Launching Daemon at Fri Jun  5 15:14:54 IST 2026
[2026-06-05 15:14:54,516.516 INFO    ] ================================================
[2026-06-05 15:14:55,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:14:55
[2026-06-05 15:14:55,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:14:55,941.941 INFO    ] Initializing speech engine...
[2026-06-05 15:14:55,950.950 INFO    ] 2026-06-05 15:14:55
[2026-06-05 15:14:56,247.247 INFO    ] 2026-06-05 15:14:56
[2026-06-05 15:14:56,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:14:56,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:14:56,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:14:56,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:14:56,644.644 INFO    ] time= 05/06/2026 15:14:56
[2026-06-05 15:14:56,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:14:56,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:14:56,760.760 INFO    ] No existing commands found in stream
[2026-06-05 15:15:01,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:15:01,776.776 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 15:15:03,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:15:03,814.814 INFO    ] Checking for system updates...
[2026-06-05 15:15:03,935.935 INFO    ] 200
[2026-06-05 15:15:03,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:15:03,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:15:03,997.997 INFO    ] No update needed
[2026-06-05 15:15:03,999.999 INFO    ] Checking for camera pi updates...
[2026-06-05 15:15:04,039.039 INFO    ] 200
[2026-06-05 15:15:04,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:15:04,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:15:04,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:15:04,146.146 INFO    ] No camera update needed
[2026-06-05 15:15:04,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:15:04,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:15:04,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:15:04,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:15:06,204.204 INFO    ] ================================================
[2026-06-05 15:15:06,219.219 INFO    ] Launching Daemon at Fri Jun  5 15:15:06 IST 2026
[2026-06-05 15:15:06,230.230 INFO    ] ================================================
[2026-06-05 15:15:12,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:15:06
[2026-06-05 15:15:12,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:15:13,174.174 INFO    ] Initializing speech engine...
[2026-06-05 15:15:13,183.183 INFO    ] 2026-06-05 15:15:13
[2026-06-05 15:15:13,478.478 INFO    ] 2026-06-05 15:15:13
[2026-06-05 15:15:13,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:15:13,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:15:13,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:15:13,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:15:13,866.866 INFO    ] time= 05/06/2026 15:15:13
[2026-06-05 15:15:13,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:15:13,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:15:13,993.993 INFO    ] No existing commands found in stream
[2026-06-05 15:15:19,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:15:19,157.157 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 15:15:21,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:15:21,580.580 INFO    ] Checking for system updates...
[2026-06-05 15:15:21,616.616 INFO    ] 200
[2026-06-05 15:15:21,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:15:21,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:15:21,673.673 INFO    ] No update needed
[2026-06-05 15:15:21,676.676 INFO    ] Checking for camera pi updates...
[2026-06-05 15:15:21,713.713 INFO    ] 200
[2026-06-05 15:15:21,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:15:21,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:15:21,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:15:21,823.823 INFO    ] No camera update needed
[2026-06-05 15:15:21,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:15:21,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:15:21,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:15:21,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:15:23,879.879 INFO    ] ================================================
[2026-06-05 15:15:23,894.894 INFO    ] Launching Daemon at Fri Jun  5 15:15:23 IST 2026
[2026-06-05 15:15:23,905.905 INFO    ] ================================================
[2026-06-05 15:15:24,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:15:24
[2026-06-05 15:15:25,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:15:25,341.341 INFO    ] Initializing speech engine...
[2026-06-05 15:15:25,347.347 INFO    ] 2026-06-05 15:15:25
[2026-06-05 15:15:25,635.635 INFO    ] 2026-06-05 15:15:25
[2026-06-05 15:15:25,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:15:25,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:15:25,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:15:26,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:15:26,032.032 INFO    ] time= 05/06/2026 15:15:26
[2026-06-05 15:15:26,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:15:26,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:15:26,230.230 INFO    ] No existing commands found in stream
[2026-06-05 15:15:31,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:15:31,241.241 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 15:15:33,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:15:33,300.300 INFO    ] Checking for system updates...
[2026-06-05 15:15:33,345.345 INFO    ] 200
[2026-06-05 15:15:33,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 15:15:33,351.351 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 15:15:33,354.354 INFO    ] Checking for camera pi updates...
[2026-06-05 15:15:33,392.392 INFO    ] 200
[2026-06-05 15:15:33,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 15:15:33,398.398 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 15:15:33,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:15:33,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:15:33,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:15:33,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:15:35,461.461 INFO    ] ================================================
[2026-06-05 15:15:35,476.476 INFO    ] Launching Daemon at Fri Jun  5 15:15:35 IST 2026
[2026-06-05 15:15:35,486.486 INFO    ] ================================================
[2026-06-05 15:15:36,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:15:36
[2026-06-05 15:15:36,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:15:37,018.018 INFO    ] Initializing speech engine...
[2026-06-05 15:15:37,027.027 INFO    ] 2026-06-05 15:15:37
[2026-06-05 15:15:37,294.294 INFO    ] 2026-06-05 15:15:37
[2026-06-05 15:15:37,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:15:37,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:15:37,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:15:37,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:15:37,662.662 INFO    ] time= 05/06/2026 15:15:37
[2026-06-05 15:15:37,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:15:37,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:15:37,858.858 INFO    ] No existing commands found in stream
[2026-06-05 15:15:42,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:15:42,872.872 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 15:15:45,448.448 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:15:45,450.450 INFO    ] Checking for system updates...
[2026-06-05 15:15:45,487.487 INFO    ] 200
[2026-06-05 15:15:45,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:15:45,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:15:45,544.544 INFO    ] No update needed
[2026-06-05 15:15:45,547.547 INFO    ] Checking for camera pi updates...
[2026-06-05 15:15:45,581.581 INFO    ] 200
[2026-06-05 15:15:45,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:15:45,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:15:45,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:15:45,673.673 INFO    ] No camera update needed
[2026-06-05 15:15:45,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:15:45,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:15:45,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:15:45,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:15:47,731.731 INFO    ] ================================================
[2026-06-05 15:15:47,746.746 INFO    ] Launching Daemon at Fri Jun  5 15:15:47 IST 2026
[2026-06-05 15:15:47,756.756 INFO    ] ================================================
[2026-06-05 15:15:48,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:15:48
[2026-06-05 15:15:48,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:15:49,248.248 INFO    ] Initializing speech engine...
[2026-06-05 15:15:49,255.255 INFO    ] 2026-06-05 15:15:49
[2026-06-05 15:15:49,563.563 INFO    ] 2026-06-05 15:15:49
[2026-06-05 15:15:49,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:15:49,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:15:49,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:15:49,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:15:49,970.970 INFO    ] time= 05/06/2026 15:15:49
[2026-06-05 15:15:49,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:15:49,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:15:50,123.123 INFO    ] No existing commands found in stream
[2026-06-05 15:15:55,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:15:55,158.158 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 15:15:57,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:15:57,352.352 INFO    ] Checking for system updates...
[2026-06-05 15:15:57,398.398 INFO    ] 200
[2026-06-05 15:15:57,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:15:57,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:15:57,477.477 INFO    ] No update needed
[2026-06-05 15:15:57,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 15:15:57,516.516 INFO    ] 200
[2026-06-05 15:15:57,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:15:57,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:15:57,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:15:57,618.618 INFO    ] No camera update needed
[2026-06-05 15:15:57,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:15:57,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:15:57,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:15:57,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:15:59,677.677 INFO    ] ================================================
[2026-06-05 15:15:59,692.692 INFO    ] Launching Daemon at Fri Jun  5 15:15:59 IST 2026
[2026-06-05 15:15:59,702.702 INFO    ] ================================================
[2026-06-05 15:16:00,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:16:00
[2026-06-05 15:16:00,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:16:01,128.128 INFO    ] Initializing speech engine...
[2026-06-05 15:16:01,138.138 INFO    ] 2026-06-05 15:16:01
[2026-06-05 15:16:01,422.422 INFO    ] 2026-06-05 15:16:01
[2026-06-05 15:16:01,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:16:01,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:16:01,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:16:01,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:16:01,919.919 INFO    ] time= 05/06/2026 15:16:01
[2026-06-05 15:16:01,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:16:01,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:16:02,036.036 INFO    ] No existing commands found in stream
[2026-06-05 15:16:07,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:16:07,051.051 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 15:16:09,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:16:09,956.956 INFO    ] Checking for system updates...
[2026-06-05 15:16:09,993.993 INFO    ] 200
[2026-06-05 15:16:09,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:16:10,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:16:10,054.054 INFO    ] No update needed
[2026-06-05 15:16:10,057.057 INFO    ] Checking for camera pi updates...
[2026-06-05 15:16:10,092.092 INFO    ] 200
[2026-06-05 15:16:10,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:16:10,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:16:10,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:16:10,185.185 INFO    ] No camera update needed
[2026-06-05 15:16:10,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:16:10,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:16:10,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:16:10,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:16:12,241.241 INFO    ] ================================================
[2026-06-05 15:16:12,256.256 INFO    ] Launching Daemon at Fri Jun  5 15:16:12 IST 2026
[2026-06-05 15:16:12,267.267 INFO    ] ================================================
[2026-06-05 15:16:12,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:16:12
[2026-06-05 15:16:13,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:16:13,690.690 INFO    ] Initializing speech engine...
[2026-06-05 15:16:13,709.709 INFO    ] 2026-06-05 15:16:13
[2026-06-05 15:16:13,970.970 INFO    ] 2026-06-05 15:16:13
[2026-06-05 15:16:14,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:16:14,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:16:14,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:16:14,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:16:14,476.476 INFO    ] time= 05/06/2026 15:16:14
[2026-06-05 15:16:14,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:16:14,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:16:14,676.676 INFO    ] No existing commands found in stream
[2026-06-05 15:16:19,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:16:19,708.708 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 15:16:23,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:16:23,217.217 INFO    ] Checking for system updates...
[2026-06-05 15:16:23,253.253 INFO    ] 200
[2026-06-05 15:16:23,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:16:23,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:16:23,314.314 INFO    ] No update needed
[2026-06-05 15:16:23,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 15:16:23,355.355 INFO    ] 200
[2026-06-05 15:16:23,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:16:23,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:16:23,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:16:23,453.453 INFO    ] No camera update needed
[2026-06-05 15:16:23,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:16:23,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:16:23,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:16:23,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:16:25,511.511 INFO    ] ================================================
[2026-06-05 15:16:25,526.526 INFO    ] Launching Daemon at Fri Jun  5 15:16:25 IST 2026
[2026-06-05 15:16:25,537.537 INFO    ] ================================================
[2026-06-05 15:16:26,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:16:26
[2026-06-05 15:16:26,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:16:27,162.162 INFO    ] Initializing speech engine...
[2026-06-05 15:16:27,170.170 INFO    ] 2026-06-05 15:16:27
[2026-06-05 15:16:27,444.444 INFO    ] 2026-06-05 15:16:27
[2026-06-05 15:16:27,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:16:27,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:16:27,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:16:27,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:16:27,947.947 INFO    ] time= 05/06/2026 15:16:27
[2026-06-05 15:16:27,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:16:28,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:16:28,174.174 INFO    ] No existing commands found in stream
[2026-06-05 15:16:33,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:16:33,200.200 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 15:16:34,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:16:34,428.428 INFO    ] Checking for system updates...
[2026-06-05 15:16:34,464.464 INFO    ] 200
[2026-06-05 15:16:34,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:16:34,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:16:34,522.522 INFO    ] No update needed
[2026-06-05 15:16:34,524.524 INFO    ] Checking for camera pi updates...
[2026-06-05 15:16:34,559.559 INFO    ] 200
[2026-06-05 15:16:34,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:16:34,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:16:34,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:16:34,647.647 INFO    ] No camera update needed
[2026-06-05 15:16:34,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:16:34,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:16:34,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:16:34,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:16:36,704.704 INFO    ] ================================================
[2026-06-05 15:16:36,720.720 INFO    ] Launching Daemon at Fri Jun  5 15:16:36 IST 2026
[2026-06-05 15:16:36,731.731 INFO    ] ================================================
[2026-06-05 15:16:37,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:16:37
[2026-06-05 15:16:37,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:16:38,191.191 INFO    ] Initializing speech engine...
[2026-06-05 15:16:38,200.200 INFO    ] 2026-06-05 15:16:38
[2026-06-05 15:16:38,462.462 INFO    ] 2026-06-05 15:16:38
[2026-06-05 15:16:38,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:16:38,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:16:38,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:16:38,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:16:39,012.012 INFO    ] time= 05/06/2026 15:16:38
[2026-06-05 15:16:39,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:16:39,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:16:39,151.151 INFO    ] No existing commands found in stream
[2026-06-05 15:16:44,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:16:44,177.177 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 15:16:49,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:16:49,649.649 INFO    ] Checking for system updates...
[2026-06-05 15:16:49,685.685 INFO    ] 200
[2026-06-05 15:16:49,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:16:49,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:16:49,743.743 INFO    ] No update needed
[2026-06-05 15:16:49,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 15:16:49,783.783 INFO    ] 200
[2026-06-05 15:16:49,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:16:49,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:16:49,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:16:49,884.884 INFO    ] No camera update needed
[2026-06-05 15:16:49,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:16:49,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:16:49,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:16:49,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:16:51,942.942 INFO    ] ================================================
[2026-06-05 15:16:51,957.957 INFO    ] Launching Daemon at Fri Jun  5 15:16:51 IST 2026
[2026-06-05 15:16:51,968.968 INFO    ] ================================================
[2026-06-05 15:16:52,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:16:52
[2026-06-05 15:16:53,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:16:53,493.493 INFO    ] Initializing speech engine...
[2026-06-05 15:16:53,508.508 INFO    ] 2026-06-05 15:16:53
[2026-06-05 15:16:53,789.789 INFO    ] 2026-06-05 15:16:53
[2026-06-05 15:16:53,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:16:54,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:16:54,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:16:54,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:16:54,252.252 INFO    ] time= 05/06/2026 15:16:54
[2026-06-05 15:16:54,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:16:54,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:16:54,497.497 INFO    ] No existing commands found in stream
[2026-06-05 15:16:59,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:16:59,519.519 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 15:17:03,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:17:03,499.499 INFO    ] Checking for system updates...
[2026-06-05 15:17:03,538.538 INFO    ] 200
[2026-06-05 15:17:03,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:03,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:17:03,598.598 INFO    ] No update needed
[2026-06-05 15:17:03,601.601 INFO    ] Checking for camera pi updates...
[2026-06-05 15:17:03,638.638 INFO    ] 200
[2026-06-05 15:17:03,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:03,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:17:03,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:17:03,740.740 INFO    ] No camera update needed
[2026-06-05 15:17:03,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:17:03,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:17:03,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:17:03,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:17:05,802.802 INFO    ] ================================================
[2026-06-05 15:17:05,817.817 INFO    ] Launching Daemon at Fri Jun  5 15:17:05 IST 2026
[2026-06-05 15:17:05,828.828 INFO    ] ================================================
[2026-06-05 15:17:06,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:17:06
[2026-06-05 15:17:07,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:17:07,396.396 INFO    ] Initializing speech engine...
[2026-06-05 15:17:07,413.413 INFO    ] 2026-06-05 15:17:07
[2026-06-05 15:17:07,679.679 INFO    ] 2026-06-05 15:17:07
[2026-06-05 15:17:07,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:17:07,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:17:08,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:17:08,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:17:08,232.232 INFO    ] time= 05/06/2026 15:17:08
[2026-06-05 15:17:08,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:17:08,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:17:08,384.384 INFO    ] No existing commands found in stream
[2026-06-05 15:17:13,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:17:13,404.404 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 15:17:16,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:17:16,349.349 INFO    ] Checking for system updates...
[2026-06-05 15:17:16,386.386 INFO    ] 200
[2026-06-05 15:17:16,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:16,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:17:16,447.447 INFO    ] No update needed
[2026-06-05 15:17:16,450.450 INFO    ] Checking for camera pi updates...
[2026-06-05 15:17:16,488.488 INFO    ] 200
[2026-06-05 15:17:16,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:16,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:17:16,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:17:16,582.582 INFO    ] No camera update needed
[2026-06-05 15:17:16,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:17:16,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:17:16,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:17:16,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:17:18,640.640 INFO    ] ================================================
[2026-06-05 15:17:18,655.655 INFO    ] Launching Daemon at Fri Jun  5 15:17:18 IST 2026
[2026-06-05 15:17:18,666.666 INFO    ] ================================================
[2026-06-05 15:17:19,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:17:19
[2026-06-05 15:17:19,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:17:20,233.233 INFO    ] Initializing speech engine...
[2026-06-05 15:17:20,242.242 INFO    ] 2026-06-05 15:17:20
[2026-06-05 15:17:20,559.559 INFO    ] 2026-06-05 15:17:20
[2026-06-05 15:17:20,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:17:20,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:17:20,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:17:20,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:17:20,958.958 INFO    ] time= 05/06/2026 15:17:20
[2026-06-05 15:17:20,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:17:21,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:17:21,084.084 INFO    ] No existing commands found in stream
[2026-06-05 15:17:26,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:17:26,100.100 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 15:17:28,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:17:28,814.814 INFO    ] Checking for system updates...
[2026-06-05 15:17:28,851.851 INFO    ] 200
[2026-06-05 15:17:28,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:28,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:17:28,916.916 INFO    ] No update needed
[2026-06-05 15:17:28,919.919 INFO    ] Checking for camera pi updates...
[2026-06-05 15:17:28,957.957 INFO    ] 200
[2026-06-05 15:17:28,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:29,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:17:29,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:17:29,044.044 INFO    ] No camera update needed
[2026-06-05 15:17:29,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:17:29,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:17:29,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:17:29,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:17:31,100.100 INFO    ] ================================================
[2026-06-05 15:17:31,115.115 INFO    ] Launching Daemon at Fri Jun  5 15:17:31 IST 2026
[2026-06-05 15:17:31,127.127 INFO    ] ================================================
[2026-06-05 15:17:31,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:17:31
[2026-06-05 15:17:32,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:17:32,706.706 INFO    ] Initializing speech engine...
[2026-06-05 15:17:32,717.717 INFO    ] 2026-06-05 15:17:32
[2026-06-05 15:17:33,054.054 INFO    ] 2026-06-05 15:17:33
[2026-06-05 15:17:33,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:17:33,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:17:33,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:17:33,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:17:33,589.589 INFO    ] time= 05/06/2026 15:17:33
[2026-06-05 15:17:33,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:17:33,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:17:33,729.729 INFO    ] No existing commands found in stream
[2026-06-05 15:17:38,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:17:38,754.754 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 15:17:39,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:17:39,873.873 INFO    ] Checking for system updates...
[2026-06-05 15:17:39,910.910 INFO    ] 200
[2026-06-05 15:17:39,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:39,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:17:39,967.967 INFO    ] No update needed
[2026-06-05 15:17:39,969.969 INFO    ] Checking for camera pi updates...
[2026-06-05 15:17:40,003.003 INFO    ] 200
[2026-06-05 15:17:40,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:40,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:17:40,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:17:40,204.204 INFO    ] No camera update needed
[2026-06-05 15:17:40,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:17:40,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:17:40,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:17:40,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:17:42,259.259 INFO    ] ================================================
[2026-06-05 15:17:42,274.274 INFO    ] Launching Daemon at Fri Jun  5 15:17:42 IST 2026
[2026-06-05 15:17:42,284.284 INFO    ] ================================================
[2026-06-05 15:17:42,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:17:42
[2026-06-05 15:17:43,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:17:43,768.768 INFO    ] Initializing speech engine...
[2026-06-05 15:17:43,783.783 INFO    ] 2026-06-05 15:17:43
[2026-06-05 15:17:44,068.068 INFO    ] 2026-06-05 15:17:44
[2026-06-05 15:17:44,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:17:44,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:17:44,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:17:44,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:17:44,467.467 INFO    ] time= 05/06/2026 15:17:44
[2026-06-05 15:17:44,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:17:44,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:17:44,655.655 INFO    ] No existing commands found in stream
[2026-06-05 15:17:49,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:17:49,682.682 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 15:17:52,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:17:52,705.705 INFO    ] Checking for system updates...
[2026-06-05 15:17:52,742.742 INFO    ] 200
[2026-06-05 15:17:52,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:52,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:17:52,806.806 INFO    ] No update needed
[2026-06-05 15:17:52,809.809 INFO    ] Checking for camera pi updates...
[2026-06-05 15:17:52,843.843 INFO    ] 200
[2026-06-05 15:17:52,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:17:52,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:17:52,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:17:52,946.946 INFO    ] No camera update needed
[2026-06-05 15:17:52,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:17:52,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:17:52,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:17:52,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:17:55,008.008 INFO    ] ================================================
[2026-06-05 15:17:55,023.023 INFO    ] Launching Daemon at Fri Jun  5 15:17:55 IST 2026
[2026-06-05 15:17:55,033.033 INFO    ] ================================================
[2026-06-05 15:17:55,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:17:55
[2026-06-05 15:17:56,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:17:56,504.504 INFO    ] Initializing speech engine...
[2026-06-05 15:17:56,514.514 INFO    ] 2026-06-05 15:17:56
[2026-06-05 15:17:56,763.763 INFO    ] 2026-06-05 15:17:56
[2026-06-05 15:17:56,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:17:57,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:17:57,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:17:57,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:17:57,235.235 INFO    ] time= 05/06/2026 15:17:57
[2026-06-05 15:17:57,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:17:57,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:17:57,471.471 INFO    ] No existing commands found in stream
[2026-06-05 15:18:02,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:18:02,493.493 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 15:18:05,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:18:05,748.748 INFO    ] Checking for system updates...
[2026-06-05 15:18:05,784.784 INFO    ] 200
[2026-06-05 15:18:05,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:05,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:18:05,842.842 INFO    ] No update needed
[2026-06-05 15:18:05,844.844 INFO    ] Checking for camera pi updates...
[2026-06-05 15:18:05,878.878 INFO    ] 200
[2026-06-05 15:18:05,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:05,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:18:05,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:18:05,964.964 INFO    ] No camera update needed
[2026-06-05 15:18:05,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:18:05,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:18:05,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:18:05,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:18:08,026.026 INFO    ] ================================================
[2026-06-05 15:18:08,041.041 INFO    ] Launching Daemon at Fri Jun  5 15:18:08 IST 2026
[2026-06-05 15:18:08,052.052 INFO    ] ================================================
[2026-06-05 15:18:08,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:18:08
[2026-06-05 15:18:09,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:18:09,491.491 INFO    ] Initializing speech engine...
[2026-06-05 15:18:09,514.514 INFO    ] 2026-06-05 15:18:09
[2026-06-05 15:18:09,775.775 INFO    ] 2026-06-05 15:18:09
[2026-06-05 15:18:09,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:18:10,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:18:10,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:18:10,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:18:10,265.265 INFO    ] time= 05/06/2026 15:18:10
[2026-06-05 15:18:10,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:18:10,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:18:10,464.464 INFO    ] No existing commands found in stream
[2026-06-05 15:18:15,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:18:15,491.491 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 15:18:16,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:18:16,562.562 INFO    ] Checking for system updates...
[2026-06-05 15:18:16,606.606 INFO    ] 200
[2026-06-05 15:18:16,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:16,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:18:16,684.684 INFO    ] No update needed
[2026-06-05 15:18:16,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 15:18:16,748.748 INFO    ] 200
[2026-06-05 15:18:16,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:16,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:18:16,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:18:16,874.874 INFO    ] No camera update needed
[2026-06-05 15:18:16,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:18:16,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:18:16,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:18:16,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:18:18,931.931 INFO    ] ================================================
[2026-06-05 15:18:18,946.946 INFO    ] Launching Daemon at Fri Jun  5 15:18:18 IST 2026
[2026-06-05 15:18:18,957.957 INFO    ] ================================================
[2026-06-05 15:18:19,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:18:19
[2026-06-05 15:18:20,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:18:20,354.354 INFO    ] Initializing speech engine...
[2026-06-05 15:18:20,368.368 INFO    ] 2026-06-05 15:18:20
[2026-06-05 15:18:20,630.630 INFO    ] 2026-06-05 15:18:20
[2026-06-05 15:18:20,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:18:20,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:18:20,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:18:21,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:18:21,126.126 INFO    ] time= 05/06/2026 15:18:21
[2026-06-05 15:18:21,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:18:21,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:18:21,566.566 INFO    ] No existing commands found in stream
[2026-06-05 15:18:26,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:18:26,591.591 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 15:18:29,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:18:29,721.721 INFO    ] Checking for system updates...
[2026-06-05 15:18:29,757.757 INFO    ] 200
[2026-06-05 15:18:29,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:29,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:18:29,822.822 INFO    ] No update needed
[2026-06-05 15:18:29,825.825 INFO    ] Checking for camera pi updates...
[2026-06-05 15:18:29,866.866 INFO    ] 200
[2026-06-05 15:18:29,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:29,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:18:29,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:18:29,958.958 INFO    ] No camera update needed
[2026-06-05 15:18:29,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:18:29,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:18:29,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:18:29,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:18:32,019.019 INFO    ] ================================================
[2026-06-05 15:18:32,037.037 INFO    ] Launching Daemon at Fri Jun  5 15:18:32 IST 2026
[2026-06-05 15:18:32,049.049 INFO    ] ================================================
[2026-06-05 15:18:32,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:18:32
[2026-06-05 15:18:33,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:18:33,490.490 INFO    ] Initializing speech engine...
[2026-06-05 15:18:33,499.499 INFO    ] 2026-06-05 15:18:33
[2026-06-05 15:18:33,792.792 INFO    ] 2026-06-05 15:18:33
[2026-06-05 15:18:33,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:18:34,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:18:34,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:18:34,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:18:34,183.183 INFO    ] time= 05/06/2026 15:18:34
[2026-06-05 15:18:34,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:18:34,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:18:34,293.293 INFO    ] No existing commands found in stream
[2026-06-05 15:18:39,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:18:39,311.311 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 15:18:43,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:18:43,385.385 INFO    ] Checking for system updates...
[2026-06-05 15:18:43,421.421 INFO    ] 200
[2026-06-05 15:18:43,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:43,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:18:43,480.480 INFO    ] No update needed
[2026-06-05 15:18:43,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 15:18:43,517.517 INFO    ] 200
[2026-06-05 15:18:43,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:43,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:18:43,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:18:43,608.608 INFO    ] No camera update needed
[2026-06-05 15:18:43,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:18:43,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:18:43,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:18:43,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:18:45,664.664 INFO    ] ================================================
[2026-06-05 15:18:45,679.679 INFO    ] Launching Daemon at Fri Jun  5 15:18:45 IST 2026
[2026-06-05 15:18:45,691.691 INFO    ] ================================================
[2026-06-05 15:18:46,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:18:46
[2026-06-05 15:18:46,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:18:47,140.140 INFO    ] Initializing speech engine...
[2026-06-05 15:18:47,155.155 INFO    ] 2026-06-05 15:18:47
[2026-06-05 15:18:47,442.442 INFO    ] 2026-06-05 15:18:47
[2026-06-05 15:18:47,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:18:49,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:18:49,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:18:49,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:18:49,586.586 INFO    ] time= 05/06/2026 15:18:49
[2026-06-05 15:18:49,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:18:49,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:18:49,674.674 INFO    ] No existing commands found in stream
[2026-06-05 15:18:54,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:18:54,690.690 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 15:18:58,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:18:58,860.860 INFO    ] Checking for system updates...
[2026-06-05 15:18:58,900.900 INFO    ] 200
[2026-06-05 15:18:58,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:58,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:18:58,958.958 INFO    ] No update needed
[2026-06-05 15:18:58,961.961 INFO    ] Checking for camera pi updates...
[2026-06-05 15:18:58,999.999 INFO    ] 200
[2026-06-05 15:18:59,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:18:59,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:18:59,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:18:59,098.098 INFO    ] No camera update needed
[2026-06-05 15:18:59,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:18:59,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:18:59,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:18:59,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:19:01,156.156 INFO    ] ================================================
[2026-06-05 15:19:01,171.171 INFO    ] Launching Daemon at Fri Jun  5 15:19:01 IST 2026
[2026-06-05 15:19:01,181.181 INFO    ] ================================================
[2026-06-05 15:19:01,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:19:01
[2026-06-05 15:19:02,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:19:03,059.059 INFO    ] Initializing speech engine...
[2026-06-05 15:19:03,065.065 INFO    ] 2026-06-05 15:19:03
[2026-06-05 15:19:03,327.327 INFO    ] 2026-06-05 15:19:03
[2026-06-05 15:19:03,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:19:03,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:19:03,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:19:03,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:19:03,794.794 INFO    ] time= 05/06/2026 15:19:03
[2026-06-05 15:19:03,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:19:03,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:19:04,038.038 INFO    ] No existing commands found in stream
[2026-06-05 15:19:09,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:19:09,077.077 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 15:19:10,616.616 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:19:10,619.619 INFO    ] Checking for system updates...
[2026-06-05 15:19:10,655.655 INFO    ] 200
[2026-06-05 15:19:10,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:19:10,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:19:10,713.713 INFO    ] No update needed
[2026-06-05 15:19:10,716.716 INFO    ] Checking for camera pi updates...
[2026-06-05 15:19:10,751.751 INFO    ] 200
[2026-06-05 15:19:10,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:19:10,796.796 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:19:10,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:19:10,840.840 INFO    ] No camera update needed
[2026-06-05 15:19:10,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:19:10,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:19:10,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:19:10,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:19:12,897.897 INFO    ] ================================================
[2026-06-05 15:19:12,912.912 INFO    ] Launching Daemon at Fri Jun  5 15:19:12 IST 2026
[2026-06-05 15:19:12,922.922 INFO    ] ================================================
[2026-06-05 15:19:13,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:19:13
[2026-06-05 15:19:14,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:19:14,417.417 INFO    ] Initializing speech engine...
[2026-06-05 15:19:14,427.427 INFO    ] 2026-06-05 15:19:14
[2026-06-05 15:19:14,696.696 INFO    ] 2026-06-05 15:19:14
[2026-06-05 15:19:14,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:19:14,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:19:14,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:19:15,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:19:15,113.113 INFO    ] time= 05/06/2026 15:19:15
[2026-06-05 15:19:15,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:19:15,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:19:15,266.266 INFO    ] No existing commands found in stream
[2026-06-05 15:19:20,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:19:20,289.289 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 15:19:21,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:19:21,581.581 INFO    ] Checking for system updates...
[2026-06-05 15:19:21,618.618 INFO    ] 200
[2026-06-05 15:19:21,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:19:21,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:19:21,676.676 INFO    ] No update needed
[2026-06-05 15:19:21,678.678 INFO    ] Checking for camera pi updates...
[2026-06-05 15:19:21,713.713 INFO    ] 200
[2026-06-05 15:19:21,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:19:21,756.756 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:19:21,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:19:21,800.800 INFO    ] No camera update needed
[2026-06-05 15:19:21,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:19:21,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:19:21,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:19:21,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:19:23,855.855 INFO    ] ================================================
[2026-06-05 15:19:23,870.870 INFO    ] Launching Daemon at Fri Jun  5 15:19:23 IST 2026
[2026-06-05 15:19:23,880.880 INFO    ] ================================================
[2026-06-05 15:19:24,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:19:24
[2026-06-05 15:19:25,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:19:25,306.306 INFO    ] Initializing speech engine...
[2026-06-05 15:19:25,316.316 INFO    ] 2026-06-05 15:19:25
[2026-06-05 15:19:25,561.561 INFO    ] 2026-06-05 15:19:25
[2026-06-05 15:19:25,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:19:25,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:19:25,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:19:25,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:19:26,038.038 INFO    ] time= 05/06/2026 15:19:25
[2026-06-05 15:19:26,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:19:26,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:19:26,260.260 INFO    ] No existing commands found in stream
[2026-06-05 15:19:31,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:19:31,286.286 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 15:19:35,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:19:35,039.039 INFO    ] Checking for system updates...
[2026-06-05 15:19:35,075.075 INFO    ] 200
[2026-06-05 15:19:35,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:19:35,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:19:35,140.140 INFO    ] No update needed
[2026-06-05 15:19:35,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 15:19:35,176.176 INFO    ] 200
[2026-06-05 15:19:35,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:19:35,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:19:35,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:19:35,264.264 INFO    ] No camera update needed
[2026-06-05 15:19:35,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:19:35,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:19:35,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:19:35,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:19:37,320.320 INFO    ] ================================================
[2026-06-05 15:19:37,336.336 INFO    ] Launching Daemon at Fri Jun  5 15:19:37 IST 2026
[2026-06-05 15:19:37,347.347 INFO    ] ================================================
[2026-06-05 15:19:37,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:19:37
[2026-06-05 15:19:38,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:19:38,771.771 INFO    ] Initializing speech engine...
[2026-06-05 15:19:38,781.781 INFO    ] 2026-06-05 15:19:38
[2026-06-05 15:19:39,025.025 INFO    ] 2026-06-05 15:19:39
[2026-06-05 15:19:39,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:19:39,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:19:39,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:19:39,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:19:39,495.495 INFO    ] time= 05/06/2026 15:19:39
[2026-06-05 15:19:39,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:19:39,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:19:39,726.726 INFO    ] No existing commands found in stream
[2026-06-05 15:19:44,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:19:44,748.748 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 15:19:46,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:19:46,358.358 INFO    ] Checking for system updates...
[2026-06-05 15:19:46,393.393 INFO    ] 200
[2026-06-05 15:19:46,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:19:46,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:19:46,452.452 INFO    ] No update needed
[2026-06-05 15:19:46,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 15:19:46,488.488 INFO    ] 200
[2026-06-05 15:19:46,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:19:46,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:19:46,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:19:46,683.683 INFO    ] No camera update needed
[2026-06-05 15:19:46,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:19:46,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:19:46,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:19:46,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:19:48,739.739 INFO    ] ================================================
[2026-06-05 15:19:48,754.754 INFO    ] Launching Daemon at Fri Jun  5 15:19:48 IST 2026
[2026-06-05 15:19:48,765.765 INFO    ] ================================================
[2026-06-05 15:19:49,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:19:49
[2026-06-05 15:19:50,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:19:50,376.376 INFO    ] Initializing speech engine...
[2026-06-05 15:19:50,390.390 INFO    ] 2026-06-05 15:19:50
[2026-06-05 15:19:50,668.668 INFO    ] 2026-06-05 15:19:50
[2026-06-05 15:19:50,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:19:50,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:19:50,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:19:51,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:19:51,131.131 INFO    ] time= 05/06/2026 15:19:51
[2026-06-05 15:19:51,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:19:51,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:19:51,354.354 INFO    ] No existing commands found in stream
[2026-06-05 15:19:56,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:19:56,379.379 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 15:20:00,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:20:00,483.483 INFO    ] Checking for system updates...
[2026-06-05 15:20:00,521.521 INFO    ] 200
[2026-06-05 15:20:00,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:00,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:20:00,580.580 INFO    ] No update needed
[2026-06-05 15:20:00,583.583 INFO    ] Checking for camera pi updates...
[2026-06-05 15:20:00,618.618 INFO    ] 200
[2026-06-05 15:20:00,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:00,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:20:00,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:20:00,712.712 INFO    ] No camera update needed
[2026-06-05 15:20:00,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:20:00,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:20:00,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:20:00,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:20:02,794.794 INFO    ] ================================================
[2026-06-05 15:20:02,820.820 INFO    ] Launching Daemon at Fri Jun  5 15:20:02 IST 2026
[2026-06-05 15:20:02,838.838 INFO    ] ================================================
[2026-06-05 15:20:03,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:20:03
[2026-06-05 15:20:04,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:20:04,438.438 INFO    ] Initializing speech engine...
[2026-06-05 15:20:04,446.446 INFO    ] 2026-06-05 15:20:04
[2026-06-05 15:20:04,717.717 INFO    ] 2026-06-05 15:20:04
[2026-06-05 15:20:04,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:20:04,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:20:05,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:20:05,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:20:05,213.213 INFO    ] time= 05/06/2026 15:20:05
[2026-06-05 15:20:05,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:20:05,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:20:05,398.398 INFO    ] No existing commands found in stream
[2026-06-05 15:20:10,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:20:10,428.428 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 15:20:12,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:20:12,386.386 INFO    ] Checking for system updates...
[2026-06-05 15:20:12,423.423 INFO    ] 200
[2026-06-05 15:20:12,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:12,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:20:12,482.482 INFO    ] No update needed
[2026-06-05 15:20:12,484.484 INFO    ] Checking for camera pi updates...
[2026-06-05 15:20:12,519.519 INFO    ] 200
[2026-06-05 15:20:12,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:12,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:20:12,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:20:12,607.607 INFO    ] No camera update needed
[2026-06-05 15:20:12,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:20:12,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:20:12,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:20:12,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:20:14,665.665 INFO    ] ================================================
[2026-06-05 15:20:14,680.680 INFO    ] Launching Daemon at Fri Jun  5 15:20:14 IST 2026
[2026-06-05 15:20:14,691.691 INFO    ] ================================================
[2026-06-05 15:20:15,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:20:15
[2026-06-05 15:20:15,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:20:16,201.201 INFO    ] Initializing speech engine...
[2026-06-05 15:20:16,211.211 INFO    ] 2026-06-05 15:20:16
[2026-06-05 15:20:16,484.484 INFO    ] 2026-06-05 15:20:16
[2026-06-05 15:20:16,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:20:16,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:20:16,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:20:16,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:20:16,968.968 INFO    ] time= 05/06/2026 15:20:16
[2026-06-05 15:20:17,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:20:17,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:20:17,168.168 INFO    ] No existing commands found in stream
[2026-06-05 15:20:22,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:20:22,198.198 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 15:20:23,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:20:23,511.511 INFO    ] Checking for system updates...
[2026-06-05 15:20:23,550.550 INFO    ] 200
[2026-06-05 15:20:23,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:23,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:20:23,610.610 INFO    ] No update needed
[2026-06-05 15:20:23,614.614 INFO    ] Checking for camera pi updates...
[2026-06-05 15:20:23,663.663 INFO    ] 200
[2026-06-05 15:20:23,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:23,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:20:23,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:20:23,758.758 INFO    ] No camera update needed
[2026-06-05 15:20:23,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:20:23,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:20:23,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:20:23,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:20:25,815.815 INFO    ] ================================================
[2026-06-05 15:20:25,836.836 INFO    ] Launching Daemon at Fri Jun  5 15:20:25 IST 2026
[2026-06-05 15:20:25,848.848 INFO    ] ================================================
[2026-06-05 15:20:26,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:20:26
[2026-06-05 15:20:27,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:20:27,271.271 INFO    ] Initializing speech engine...
[2026-06-05 15:20:27,282.282 INFO    ] 2026-06-05 15:20:27
[2026-06-05 15:20:27,534.534 INFO    ] 2026-06-05 15:20:27
[2026-06-05 15:20:27,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:20:27,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:20:27,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:20:27,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:20:27,912.912 INFO    ] time= 05/06/2026 15:20:27
[2026-06-05 15:20:27,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:20:27,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:20:28,098.098 INFO    ] No existing commands found in stream
[2026-06-05 15:20:33,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:20:33,126.126 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 15:20:35,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:20:35,660.660 INFO    ] Checking for system updates...
[2026-06-05 15:20:35,695.695 INFO    ] 200
[2026-06-05 15:20:35,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:35,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:20:35,763.763 INFO    ] No update needed
[2026-06-05 15:20:35,766.766 INFO    ] Checking for camera pi updates...
[2026-06-05 15:20:35,799.799 INFO    ] 200
[2026-06-05 15:20:35,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:35,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:20:35,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:20:35,889.889 INFO    ] No camera update needed
[2026-06-05 15:20:35,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:20:35,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:20:35,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:20:35,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:20:37,946.946 INFO    ] ================================================
[2026-06-05 15:20:37,961.961 INFO    ] Launching Daemon at Fri Jun  5 15:20:37 IST 2026
[2026-06-05 15:20:37,972.972 INFO    ] ================================================
[2026-06-05 15:20:38,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:20:38
[2026-06-05 15:20:39,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:20:39,517.517 INFO    ] Initializing speech engine...
[2026-06-05 15:20:39,525.525 INFO    ] 2026-06-05 15:20:39
[2026-06-05 15:20:39,817.817 INFO    ] 2026-06-05 15:20:39
[2026-06-05 15:20:39,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:20:40,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:20:40,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:20:40,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:20:40,203.203 INFO    ] time= 05/06/2026 15:20:40
[2026-06-05 15:20:40,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:20:40,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:20:40,380.380 INFO    ] No existing commands found in stream
[2026-06-05 15:20:45,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:20:45,418.418 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 15:20:49,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:20:49,839.839 INFO    ] Checking for system updates...
[2026-06-05 15:20:49,874.874 INFO    ] 200
[2026-06-05 15:20:49,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:49,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:20:49,939.939 INFO    ] No update needed
[2026-06-05 15:20:49,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 15:20:49,977.977 INFO    ] 200
[2026-06-05 15:20:49,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:20:50,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:20:50,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:20:50,070.070 INFO    ] No camera update needed
[2026-06-05 15:20:50,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:20:50,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:20:50,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:20:50,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:20:52,124.124 INFO    ] ================================================
[2026-06-05 15:20:52,139.139 INFO    ] Launching Daemon at Fri Jun  5 15:20:52 IST 2026
[2026-06-05 15:20:52,150.150 INFO    ] ================================================
[2026-06-05 15:20:52,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:20:52
[2026-06-05 15:20:53,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:20:53,576.576 INFO    ] Initializing speech engine...
[2026-06-05 15:20:53,585.585 INFO    ] 2026-06-05 15:20:53
[2026-06-05 15:20:53,848.848 INFO    ] 2026-06-05 15:20:53
[2026-06-05 15:20:53,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:20:54,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:20:54,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:20:54,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:20:54,326.326 INFO    ] time= 05/06/2026 15:20:54
[2026-06-05 15:20:54,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:20:54,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:20:54,498.498 INFO    ] No existing commands found in stream
[2026-06-05 15:20:59,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:20:59,538.538 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 15:21:00,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:21:00,929.929 INFO    ] Checking for system updates...
[2026-06-05 15:21:00,965.965 INFO    ] 200
[2026-06-05 15:21:00,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:01,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:21:01,026.026 INFO    ] No update needed
[2026-06-05 15:21:01,028.028 INFO    ] Checking for camera pi updates...
[2026-06-05 15:21:01,063.063 INFO    ] 200
[2026-06-05 15:21:01,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:01,106.106 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:21:01,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:21:01,153.153 INFO    ] No camera update needed
[2026-06-05 15:21:01,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:21:01,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:21:01,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:21:01,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:21:03,242.242 INFO    ] ================================================
[2026-06-05 15:21:03,268.268 INFO    ] Launching Daemon at Fri Jun  5 15:21:03 IST 2026
[2026-06-05 15:21:03,286.286 INFO    ] ================================================
[2026-06-05 15:21:03,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:21:03
[2026-06-05 15:21:04,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:21:04,839.839 INFO    ] Initializing speech engine...
[2026-06-05 15:21:04,851.851 INFO    ] 2026-06-05 15:21:04
[2026-06-05 15:21:05,162.162 INFO    ] 2026-06-05 15:21:05
[2026-06-05 15:21:05,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:21:05,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:21:05,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:21:05,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:21:05,676.676 INFO    ] time= 05/06/2026 15:21:05
[2026-06-05 15:21:05,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:21:05,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:21:05,830.830 INFO    ] No existing commands found in stream
[2026-06-05 15:21:10,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:21:10,856.856 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 15:21:14,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:21:14,541.541 INFO    ] Checking for system updates...
[2026-06-05 15:21:14,577.577 INFO    ] 200
[2026-06-05 15:21:14,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:14,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:21:14,636.636 INFO    ] No update needed
[2026-06-05 15:21:14,639.639 INFO    ] Checking for camera pi updates...
[2026-06-05 15:21:14,677.677 INFO    ] 200
[2026-06-05 15:21:14,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:14,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:21:14,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:21:14,768.768 INFO    ] No camera update needed
[2026-06-05 15:21:14,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:21:14,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:21:14,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:21:14,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:21:16,824.824 INFO    ] ================================================
[2026-06-05 15:21:16,840.840 INFO    ] Launching Daemon at Fri Jun  5 15:21:16 IST 2026
[2026-06-05 15:21:16,851.851 INFO    ] ================================================
[2026-06-05 15:21:17,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:21:17
[2026-06-05 15:21:18,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:21:18,256.256 INFO    ] Initializing speech engine...
[2026-06-05 15:21:18,264.264 INFO    ] 2026-06-05 15:21:18
[2026-06-05 15:21:18,537.537 INFO    ] 2026-06-05 15:21:18
[2026-06-05 15:21:18,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:21:19,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:21:19,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:21:19,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:21:19,918.918 INFO    ] time= 05/06/2026 15:21:19
[2026-06-05 15:21:19,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:21:19,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:21:19,994.994 INFO    ] No existing commands found in stream
[2026-06-05 15:21:25,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:21:25,009.009 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 15:21:28,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:21:28,930.930 INFO    ] Checking for system updates...
[2026-06-05 15:21:28,985.985 INFO    ] 200
[2026-06-05 15:21:28,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:29,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:21:29,045.045 INFO    ] No update needed
[2026-06-05 15:21:29,048.048 INFO    ] Checking for camera pi updates...
[2026-06-05 15:21:29,086.086 INFO    ] 200
[2026-06-05 15:21:29,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:29,135.135 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:21:29,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:21:29,179.179 INFO    ] No camera update needed
[2026-06-05 15:21:29,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:21:29,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:21:29,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:21:29,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:21:31,237.237 INFO    ] ================================================
[2026-06-05 15:21:31,252.252 INFO    ] Launching Daemon at Fri Jun  5 15:21:31 IST 2026
[2026-06-05 15:21:31,262.262 INFO    ] ================================================
[2026-06-05 15:21:31,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:21:31
[2026-06-05 15:21:32,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:21:32,806.806 INFO    ] Initializing speech engine...
[2026-06-05 15:21:32,815.815 INFO    ] 2026-06-05 15:21:32
[2026-06-05 15:21:33,103.103 INFO    ] 2026-06-05 15:21:33
[2026-06-05 15:21:33,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:21:33,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:21:33,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:21:33,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:21:33,510.510 INFO    ] time= 05/06/2026 15:21:33
[2026-06-05 15:21:33,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:21:33,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:21:33,702.702 INFO    ] No existing commands found in stream
[2026-06-05 15:21:38,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:21:38,719.719 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 15:21:39,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:21:39,398.398 INFO    ] Checking for system updates...
[2026-06-05 15:21:39,434.434 INFO    ] 200
[2026-06-05 15:21:39,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:39,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:21:39,497.497 INFO    ] No update needed
[2026-06-05 15:21:39,500.500 INFO    ] Checking for camera pi updates...
[2026-06-05 15:21:39,538.538 INFO    ] 200
[2026-06-05 15:21:39,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:39,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:21:39,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:21:39,633.633 INFO    ] No camera update needed
[2026-06-05 15:21:39,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:21:39,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:21:39,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:21:39,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:21:41,689.689 INFO    ] ================================================
[2026-06-05 15:21:41,705.705 INFO    ] Launching Daemon at Fri Jun  5 15:21:41 IST 2026
[2026-06-05 15:21:41,716.716 INFO    ] ================================================
[2026-06-05 15:21:42,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:21:42
[2026-06-05 15:21:43,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:21:43,376.376 INFO    ] Initializing speech engine...
[2026-06-05 15:21:43,389.389 INFO    ] 2026-06-05 15:21:43
[2026-06-05 15:21:43,679.679 INFO    ] 2026-06-05 15:21:43
[2026-06-05 15:21:43,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:21:43,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:21:43,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:21:44,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:21:44,219.219 INFO    ] time= 05/06/2026 15:21:44
[2026-06-05 15:21:44,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:21:44,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:21:44,377.377 INFO    ] No existing commands found in stream
[2026-06-05 15:21:49,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:21:49,398.398 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 15:21:51,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:21:51,270.270 INFO    ] Checking for system updates...
[2026-06-05 15:21:51,307.307 INFO    ] 200
[2026-06-05 15:21:51,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:51,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:21:51,367.367 INFO    ] No update needed
[2026-06-05 15:21:51,370.370 INFO    ] Checking for camera pi updates...
[2026-06-05 15:21:51,409.409 INFO    ] 200
[2026-06-05 15:21:51,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:21:51,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:21:51,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:21:51,607.607 INFO    ] No camera update needed
[2026-06-05 15:21:51,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:21:51,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:21:51,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:21:51,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:21:53,666.666 INFO    ] ================================================
[2026-06-05 15:21:53,682.682 INFO    ] Launching Daemon at Fri Jun  5 15:21:53 IST 2026
[2026-06-05 15:21:53,694.694 INFO    ] ================================================
[2026-06-05 15:21:54,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:21:54
[2026-06-05 15:21:55,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:21:55,285.285 INFO    ] Initializing speech engine...
[2026-06-05 15:21:55,294.294 INFO    ] 2026-06-05 15:21:55
[2026-06-05 15:21:55,594.594 INFO    ] 2026-06-05 15:21:55
[2026-06-05 15:21:55,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:21:55,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:21:55,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:21:56,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:21:56,083.083 INFO    ] time= 05/06/2026 15:21:56
[2026-06-05 15:21:56,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:21:56,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:21:56,315.315 INFO    ] No existing commands found in stream
[2026-06-05 15:22:01,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:22:01,346.346 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 15:22:02,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:22:02,666.666 INFO    ] Checking for system updates...
[2026-06-05 15:22:02,707.707 INFO    ] 200
[2026-06-05 15:22:02,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:02,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:22:02,787.787 INFO    ] No update needed
[2026-06-05 15:22:02,790.790 INFO    ] Checking for camera pi updates...
[2026-06-05 15:22:02,842.842 INFO    ] 200
[2026-06-05 15:22:02,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:02,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:22:02,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:22:02,940.940 INFO    ] No camera update needed
[2026-06-05 15:22:02,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:22:02,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:22:02,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:22:02,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:22:05,999.999 INFO    ] ================================================
[2026-06-05 15:22:05,015.015 INFO    ] Launching Daemon at Fri Jun  5 15:22:05 IST 2026
[2026-06-05 15:22:05,026.026 INFO    ] ================================================
[2026-06-05 15:22:05,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:22:05
[2026-06-05 15:22:06,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:22:06,437.437 INFO    ] Initializing speech engine...
[2026-06-05 15:22:06,452.452 INFO    ] 2026-06-05 15:22:06
[2026-06-05 15:22:06,714.714 INFO    ] 2026-06-05 15:22:06
[2026-06-05 15:22:06,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:22:06,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:22:06,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:22:07,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:22:07,128.128 INFO    ] time= 05/06/2026 15:22:07
[2026-06-05 15:22:07,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:22:07,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:22:07,305.305 INFO    ] No existing commands found in stream
[2026-06-05 15:22:12,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:22:12,338.338 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 15:22:13,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:22:13,355.355 INFO    ] Checking for system updates...
[2026-06-05 15:22:13,391.391 INFO    ] 200
[2026-06-05 15:22:13,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:13,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:22:13,456.456 INFO    ] No update needed
[2026-06-05 15:22:13,458.458 INFO    ] Checking for camera pi updates...
[2026-06-05 15:22:13,496.496 INFO    ] 200
[2026-06-05 15:22:13,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:13,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:22:13,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:22:13,592.592 INFO    ] No camera update needed
[2026-06-05 15:22:13,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:22:13,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:22:13,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:22:13,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:22:15,648.648 INFO    ] ================================================
[2026-06-05 15:22:15,665.665 INFO    ] Launching Daemon at Fri Jun  5 15:22:15 IST 2026
[2026-06-05 15:22:15,676.676 INFO    ] ================================================
[2026-06-05 15:22:16,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:22:16
[2026-06-05 15:22:16,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:22:17,301.301 INFO    ] Initializing speech engine...
[2026-06-05 15:22:17,314.314 INFO    ] 2026-06-05 15:22:17
[2026-06-05 15:22:17,583.583 INFO    ] 2026-06-05 15:22:17
[2026-06-05 15:22:17,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:22:19,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:22:19,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:22:19,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:22:19,629.629 INFO    ] time= 05/06/2026 15:22:19
[2026-06-05 15:22:19,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:22:19,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:22:19,745.745 INFO    ] No existing commands found in stream
[2026-06-05 15:22:24,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:22:24,779.779 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 15:22:27,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:22:27,467.467 INFO    ] Checking for system updates...
[2026-06-05 15:22:27,504.504 INFO    ] 200
[2026-06-05 15:22:27,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:27,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:22:27,564.564 INFO    ] No update needed
[2026-06-05 15:22:27,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 15:22:27,601.601 INFO    ] 200
[2026-06-05 15:22:27,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:27,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:22:27,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:22:27,682.682 INFO    ] No camera update needed
[2026-06-05 15:22:27,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:22:27,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:22:27,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:22:27,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:22:29,741.741 INFO    ] ================================================
[2026-06-05 15:22:29,756.756 INFO    ] Launching Daemon at Fri Jun  5 15:22:29 IST 2026
[2026-06-05 15:22:29,766.766 INFO    ] ================================================
[2026-06-05 15:22:30,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:22:30
[2026-06-05 15:22:30,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:22:31,214.214 INFO    ] Initializing speech engine...
[2026-06-05 15:22:31,230.230 INFO    ] 2026-06-05 15:22:31
[2026-06-05 15:22:31,505.505 INFO    ] 2026-06-05 15:22:31
[2026-06-05 15:22:31,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:22:31,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:22:31,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:22:31,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:22:31,910.910 INFO    ] time= 05/06/2026 15:22:31
[2026-06-05 15:22:31,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:22:31,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:22:32,115.115 INFO    ] No existing commands found in stream
[2026-06-05 15:22:37,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:22:37,137.137 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 15:22:38,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:22:38,928.928 INFO    ] Checking for system updates...
[2026-06-05 15:22:38,968.968 INFO    ] 200
[2026-06-05 15:22:38,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:39,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:22:39,034.034 INFO    ] No update needed
[2026-06-05 15:22:39,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 15:22:39,076.076 INFO    ] 200
[2026-06-05 15:22:39,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:39,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:22:39,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:22:39,159.159 INFO    ] No camera update needed
[2026-06-05 15:22:39,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:22:39,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:22:39,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:22:39,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:22:41,217.217 INFO    ] ================================================
[2026-06-05 15:22:41,232.232 INFO    ] Launching Daemon at Fri Jun  5 15:22:41 IST 2026
[2026-06-05 15:22:41,243.243 INFO    ] ================================================
[2026-06-05 15:22:41,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:22:41
[2026-06-05 15:22:42,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:22:42,702.702 INFO    ] Initializing speech engine...
[2026-06-05 15:22:42,712.712 INFO    ] 2026-06-05 15:22:42
[2026-06-05 15:22:42,961.961 INFO    ] 2026-06-05 15:22:42
[2026-06-05 15:22:43,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:22:43,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:22:43,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:22:43,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:22:43,335.335 INFO    ] time= 05/06/2026 15:22:43
[2026-06-05 15:22:43,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:22:43,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:22:43,513.513 INFO    ] No existing commands found in stream
[2026-06-05 15:22:48,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:22:48,545.545 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 15:22:49,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:22:49,929.929 INFO    ] Checking for system updates...
[2026-06-05 15:22:49,969.969 INFO    ] 200
[2026-06-05 15:22:49,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:50,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:22:50,034.034 INFO    ] No update needed
[2026-06-05 15:22:50,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 15:22:50,074.074 INFO    ] 200
[2026-06-05 15:22:50,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:22:50,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:22:50,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:22:50,160.160 INFO    ] No camera update needed
[2026-06-05 15:22:50,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:22:50,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:22:50,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:22:50,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:22:52,216.216 INFO    ] ================================================
[2026-06-05 15:22:52,231.231 INFO    ] Launching Daemon at Fri Jun  5 15:22:52 IST 2026
[2026-06-05 15:22:52,242.242 INFO    ] ================================================
[2026-06-05 15:22:52,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:22:52
[2026-06-05 15:22:53,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:22:53,704.704 INFO    ] Initializing speech engine...
[2026-06-05 15:22:53,715.715 INFO    ] 2026-06-05 15:22:53
[2026-06-05 15:22:53,963.963 INFO    ] 2026-06-05 15:22:53
[2026-06-05 15:22:54,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:22:54,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:22:54,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:22:54,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:22:54,469.469 INFO    ] time= 05/06/2026 15:22:54
[2026-06-05 15:22:54,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:22:54,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:22:54,667.667 INFO    ] No existing commands found in stream
[2026-06-05 15:22:59,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:22:59,691.691 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 15:23:03,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:23:03,192.192 INFO    ] Checking for system updates...
[2026-06-05 15:23:03,241.241 INFO    ] 200
[2026-06-05 15:23:03,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:03,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:23:03,325.325 INFO    ] No update needed
[2026-06-05 15:23:03,329.329 INFO    ] Checking for camera pi updates...
[2026-06-05 15:23:03,374.374 INFO    ] 200
[2026-06-05 15:23:03,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:03,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:23:03,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:23:03,468.468 INFO    ] No camera update needed
[2026-06-05 15:23:03,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:23:03,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:23:03,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:23:03,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:23:05,524.524 INFO    ] ================================================
[2026-06-05 15:23:05,539.539 INFO    ] Launching Daemon at Fri Jun  5 15:23:05 IST 2026
[2026-06-05 15:23:05,550.550 INFO    ] ================================================
[2026-06-05 15:23:06,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:23:06
[2026-06-05 15:23:06,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:23:07,011.011 INFO    ] Initializing speech engine...
[2026-06-05 15:23:07,019.019 INFO    ] 2026-06-05 15:23:07
[2026-06-05 15:23:07,313.313 INFO    ] 2026-06-05 15:23:07
[2026-06-05 15:23:07,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:23:07,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:23:07,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:23:07,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:23:07,780.780 INFO    ] time= 05/06/2026 15:23:07
[2026-06-05 15:23:07,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:23:07,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:23:07,925.925 INFO    ] No existing commands found in stream
[2026-06-05 15:23:12,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:23:12,942.942 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 15:23:16,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:23:16,778.778 INFO    ] Checking for system updates...
[2026-06-05 15:23:16,814.814 INFO    ] 200
[2026-06-05 15:23:16,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:16,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:23:16,873.873 INFO    ] No update needed
[2026-06-05 15:23:16,875.875 INFO    ] Checking for camera pi updates...
[2026-06-05 15:23:16,909.909 INFO    ] 200
[2026-06-05 15:23:16,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:16,961.961 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:23:17,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:23:17,004.004 INFO    ] No camera update needed
[2026-06-05 15:23:17,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:23:17,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:23:17,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:23:17,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:23:19,059.059 INFO    ] ================================================
[2026-06-05 15:23:19,074.074 INFO    ] Launching Daemon at Fri Jun  5 15:23:19 IST 2026
[2026-06-05 15:23:19,085.085 INFO    ] ================================================
[2026-06-05 15:23:19,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:23:19
[2026-06-05 15:23:20,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:23:20,517.517 INFO    ] Initializing speech engine...
[2026-06-05 15:23:20,526.526 INFO    ] 2026-06-05 15:23:20
[2026-06-05 15:23:20,776.776 INFO    ] 2026-06-05 15:23:20
[2026-06-05 15:23:20,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:23:20,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:23:21,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:23:21,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:23:21,154.154 INFO    ] time= 05/06/2026 15:23:21
[2026-06-05 15:23:21,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:23:21,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:23:21,310.310 INFO    ] No existing commands found in stream
[2026-06-05 15:23:26,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:23:26,339.339 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 15:23:29,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:23:29,298.298 INFO    ] Checking for system updates...
[2026-06-05 15:23:29,337.337 INFO    ] 200
[2026-06-05 15:23:29,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:29,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:23:29,402.402 INFO    ] No update needed
[2026-06-05 15:23:29,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 15:23:29,438.438 INFO    ] 200
[2026-06-05 15:23:29,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:29,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:23:29,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:23:29,542.542 INFO    ] No camera update needed
[2026-06-05 15:23:29,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:23:29,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:23:29,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:23:29,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:23:31,599.599 INFO    ] ================================================
[2026-06-05 15:23:31,615.615 INFO    ] Launching Daemon at Fri Jun  5 15:23:31 IST 2026
[2026-06-05 15:23:31,626.626 INFO    ] ================================================
[2026-06-05 15:23:32,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:23:32
[2026-06-05 15:23:32,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:23:33,152.152 INFO    ] Initializing speech engine...
[2026-06-05 15:23:33,167.167 INFO    ] 2026-06-05 15:23:33
[2026-06-05 15:23:33,447.447 INFO    ] 2026-06-05 15:23:33
[2026-06-05 15:23:33,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:23:33,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:23:33,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:23:33,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:23:33,829.829 INFO    ] time= 05/06/2026 15:23:33
[2026-06-05 15:23:33,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:23:33,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:23:34,027.027 INFO    ] No existing commands found in stream
[2026-06-05 15:23:39,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:23:39,040.040 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 15:23:42,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:23:42,295.295 INFO    ] Checking for system updates...
[2026-06-05 15:23:42,335.335 INFO    ] 200
[2026-06-05 15:23:42,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:42,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:23:42,393.393 INFO    ] No update needed
[2026-06-05 15:23:42,396.396 INFO    ] Checking for camera pi updates...
[2026-06-05 15:23:42,430.430 INFO    ] 200
[2026-06-05 15:23:42,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:42,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:23:42,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:23:42,517.517 INFO    ] No camera update needed
[2026-06-05 15:23:42,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:23:42,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:23:42,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:23:42,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:23:44,574.574 INFO    ] ================================================
[2026-06-05 15:23:44,593.593 INFO    ] Launching Daemon at Fri Jun  5 15:23:44 IST 2026
[2026-06-05 15:23:44,607.607 INFO    ] ================================================
[2026-06-05 15:23:45,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:23:45
[2026-06-05 15:23:45,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:23:46,214.214 INFO    ] Initializing speech engine...
[2026-06-05 15:23:46,225.225 INFO    ] 2026-06-05 15:23:46
[2026-06-05 15:23:46,480.480 INFO    ] 2026-06-05 15:23:46
[2026-06-05 15:23:46,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:23:46,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:23:46,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:23:46,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:23:46,952.952 INFO    ] time= 05/06/2026 15:23:46
[2026-06-05 15:23:47,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:23:47,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:23:47,181.181 INFO    ] No existing commands found in stream
[2026-06-05 15:23:52,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:23:52,199.199 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-05 15:23:56,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:23:56,639.639 INFO    ] Checking for system updates...
[2026-06-05 15:23:56,676.676 INFO    ] 200
[2026-06-05 15:23:56,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:56,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:23:56,736.736 INFO    ] No update needed
[2026-06-05 15:23:56,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 15:23:56,774.774 INFO    ] 200
[2026-06-05 15:23:56,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:23:56,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:23:56,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:23:56,968.968 INFO    ] No camera update needed
[2026-06-05 15:23:56,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:23:56,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:23:56,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:23:56,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:23:59,027.027 INFO    ] ================================================
[2026-06-05 15:23:59,044.044 INFO    ] Launching Daemon at Fri Jun  5 15:23:59 IST 2026
[2026-06-05 15:23:59,055.055 INFO    ] ================================================
[2026-06-05 15:23:59,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:23:59
[2026-06-05 15:24:00,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:24:00,542.542 INFO    ] Initializing speech engine...
[2026-06-05 15:24:00,554.554 INFO    ] 2026-06-05 15:24:00
[2026-06-05 15:24:00,823.823 INFO    ] 2026-06-05 15:24:00
[2026-06-05 15:24:00,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:24:01,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:24:01,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:24:01,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:24:01,253.253 INFO    ] time= 05/06/2026 15:24:01
[2026-06-05 15:24:01,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:24:01,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:24:01,379.379 INFO    ] No existing commands found in stream
[2026-06-05 15:24:06,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:24:06,392.392 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 15:24:08,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:24:08,352.352 INFO    ] Checking for system updates...
[2026-06-05 15:24:08,388.388 INFO    ] 200
[2026-06-05 15:24:08,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:08,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:24:08,446.446 INFO    ] No update needed
[2026-06-05 15:24:08,448.448 INFO    ] Checking for camera pi updates...
[2026-06-05 15:24:08,486.486 INFO    ] 200
[2026-06-05 15:24:08,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:08,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:24:08,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:24:08,558.558 INFO    ] No camera update needed
[2026-06-05 15:24:08,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:24:08,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:24:08,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:24:08,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:24:10,613.613 INFO    ] ================================================
[2026-06-05 15:24:10,628.628 INFO    ] Launching Daemon at Fri Jun  5 15:24:10 IST 2026
[2026-06-05 15:24:10,639.639 INFO    ] ================================================
[2026-06-05 15:24:11,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:24:11
[2026-06-05 15:24:11,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:24:12,069.069 INFO    ] Initializing speech engine...
[2026-06-05 15:24:12,078.078 INFO    ] 2026-06-05 15:24:12
[2026-06-05 15:24:12,324.324 INFO    ] 2026-06-05 15:24:12
[2026-06-05 15:24:12,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:24:12,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:24:12,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:24:12,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:24:12,795.795 INFO    ] time= 05/06/2026 15:24:12
[2026-06-05 15:24:12,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:24:12,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:24:13,028.028 INFO    ] No existing commands found in stream
[2026-06-05 15:24:18,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:24:18,057.057 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 15:24:19,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:24:19,874.874 INFO    ] Checking for system updates...
[2026-06-05 15:24:19,914.914 INFO    ] 200
[2026-06-05 15:24:19,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:19,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:24:19,971.971 INFO    ] No update needed
[2026-06-05 15:24:19,973.973 INFO    ] Checking for camera pi updates...
[2026-06-05 15:24:20,010.010 INFO    ] 200
[2026-06-05 15:24:20,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:20,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:24:20,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:24:20,105.105 INFO    ] No camera update needed
[2026-06-05 15:24:20,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:24:20,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:24:20,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:24:20,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:24:22,161.161 INFO    ] ================================================
[2026-06-05 15:24:22,176.176 INFO    ] Launching Daemon at Fri Jun  5 15:24:22 IST 2026
[2026-06-05 15:24:22,186.186 INFO    ] ================================================
[2026-06-05 15:24:22,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:24:22
[2026-06-05 15:24:23,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:24:23,621.621 INFO    ] Initializing speech engine...
[2026-06-05 15:24:23,627.627 INFO    ] 2026-06-05 15:24:23
[2026-06-05 15:24:23,902.902 INFO    ] 2026-06-05 15:24:23
[2026-06-05 15:24:23,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:24:24,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:24:24,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:24:24,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:24:24,388.388 INFO    ] time= 05/06/2026 15:24:24
[2026-06-05 15:24:24,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:24:24,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:24:24,603.603 INFO    ] No existing commands found in stream
[2026-06-05 15:24:29,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:24:29,628.628 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 15:24:32,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:24:32,157.157 INFO    ] Checking for system updates...
[2026-06-05 15:24:32,195.195 INFO    ] 200
[2026-06-05 15:24:32,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:32,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:24:32,258.258 INFO    ] No update needed
[2026-06-05 15:24:32,260.260 INFO    ] Checking for camera pi updates...
[2026-06-05 15:24:32,301.301 INFO    ] 200
[2026-06-05 15:24:32,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:32,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:24:32,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:24:32,381.381 INFO    ] No camera update needed
[2026-06-05 15:24:32,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:24:32,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:24:32,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:24:32,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:24:34,440.440 INFO    ] ================================================
[2026-06-05 15:24:34,454.454 INFO    ] Launching Daemon at Fri Jun  5 15:24:34 IST 2026
[2026-06-05 15:24:34,465.465 INFO    ] ================================================
[2026-06-05 15:24:35,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:24:35
[2026-06-05 15:24:35,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:24:35,863.863 INFO    ] Initializing speech engine...
[2026-06-05 15:24:35,877.877 INFO    ] 2026-06-05 15:24:35
[2026-06-05 15:24:36,142.142 INFO    ] 2026-06-05 15:24:36
[2026-06-05 15:24:36,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:24:36,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:24:36,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:24:36,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:24:36,620.620 INFO    ] time= 05/06/2026 15:24:36
[2026-06-05 15:24:36,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:24:36,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:24:36,835.835 INFO    ] No existing commands found in stream
[2026-06-05 15:24:41,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:24:41,855.855 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 15:24:44,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:24:44,354.354 INFO    ] Checking for system updates...
[2026-06-05 15:24:44,390.390 INFO    ] 200
[2026-06-05 15:24:44,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:44,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:24:44,448.448 INFO    ] No update needed
[2026-06-05 15:24:44,450.450 INFO    ] Checking for camera pi updates...
[2026-06-05 15:24:44,488.488 INFO    ] 200
[2026-06-05 15:24:44,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:44,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:24:44,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:24:44,578.578 INFO    ] No camera update needed
[2026-06-05 15:24:44,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:24:44,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:24:44,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:24:44,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:24:46,634.634 INFO    ] ================================================
[2026-06-05 15:24:46,649.649 INFO    ] Launching Daemon at Fri Jun  5 15:24:46 IST 2026
[2026-06-05 15:24:46,659.659 INFO    ] ================================================
[2026-06-05 15:24:47,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:24:47
[2026-06-05 15:24:47,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:24:48,084.084 INFO    ] Initializing speech engine...
[2026-06-05 15:24:48,093.093 INFO    ] 2026-06-05 15:24:48
[2026-06-05 15:24:48,342.342 INFO    ] 2026-06-05 15:24:48
[2026-06-05 15:24:48,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:24:49,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:24:49,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:24:49,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:24:49,845.845 INFO    ] time= 05/06/2026 15:24:49
[2026-06-05 15:24:49,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:24:49,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:24:50,003.003 INFO    ] No existing commands found in stream
[2026-06-05 15:24:55,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:24:55,030.030 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 15:24:57,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:24:57,214.214 INFO    ] Checking for system updates...
[2026-06-05 15:24:57,249.249 INFO    ] 200
[2026-06-05 15:24:57,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:57,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:24:57,314.314 INFO    ] No update needed
[2026-06-05 15:24:57,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 15:24:57,350.350 INFO    ] 200
[2026-06-05 15:24:57,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:24:57,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:24:57,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:24:57,442.442 INFO    ] No camera update needed
[2026-06-05 15:24:57,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:24:57,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:24:57,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:24:57,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:24:59,496.496 INFO    ] ================================================
[2026-06-05 15:24:59,512.512 INFO    ] Launching Daemon at Fri Jun  5 15:24:59 IST 2026
[2026-06-05 15:24:59,523.523 INFO    ] ================================================
[2026-06-05 15:25:00,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:25:00
[2026-06-05 15:25:00,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:25:00,977.977 INFO    ] Initializing speech engine...
[2026-06-05 15:25:00,991.991 INFO    ] 2026-06-05 15:25:00
[2026-06-05 15:25:01,281.281 INFO    ] 2026-06-05 15:25:01
[2026-06-05 15:25:01,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:25:01,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:25:01,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:25:01,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:25:01,663.663 INFO    ] time= 05/06/2026 15:25:01
[2026-06-05 15:25:01,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:25:01,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:25:01,792.792 INFO    ] No existing commands found in stream
[2026-06-05 15:25:06,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:25:06,807.807 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 15:25:08,208.208 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:25:08,211.211 INFO    ] Checking for system updates...
[2026-06-05 15:25:08,247.247 INFO    ] 200
[2026-06-05 15:25:08,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:08,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:25:08,311.311 INFO    ] No update needed
[2026-06-05 15:25:08,313.313 INFO    ] Checking for camera pi updates...
[2026-06-05 15:25:08,347.347 INFO    ] 200
[2026-06-05 15:25:08,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:08,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:25:08,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:25:08,419.419 INFO    ] No camera update needed
[2026-06-05 15:25:08,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:25:08,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:25:08,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:25:08,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:25:10,476.476 INFO    ] ================================================
[2026-06-05 15:25:10,491.491 INFO    ] Launching Daemon at Fri Jun  5 15:25:10 IST 2026
[2026-06-05 15:25:10,502.502 INFO    ] ================================================
[2026-06-05 15:25:11,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:25:11
[2026-06-05 15:25:11,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:25:12,134.134 INFO    ] Initializing speech engine...
[2026-06-05 15:25:12,145.145 INFO    ] 2026-06-05 15:25:12
[2026-06-05 15:25:12,459.459 INFO    ] 2026-06-05 15:25:12
[2026-06-05 15:25:12,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:25:12,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:25:12,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:25:12,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:25:12,982.982 INFO    ] time= 05/06/2026 15:25:12
[2026-06-05 15:25:13,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:25:13,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:25:13,201.201 INFO    ] No existing commands found in stream
[2026-06-05 15:25:18,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:25:18,240.240 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 15:25:20,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:25:20,554.554 INFO    ] Checking for system updates...
[2026-06-05 15:25:20,592.592 INFO    ] 200
[2026-06-05 15:25:20,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:20,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:25:20,653.653 INFO    ] No update needed
[2026-06-05 15:25:20,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 15:25:20,691.691 INFO    ] 200
[2026-06-05 15:25:20,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:20,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:25:20,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:25:20,794.794 INFO    ] No camera update needed
[2026-06-05 15:25:20,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:25:20,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:25:20,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:25:20,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:25:22,852.852 INFO    ] ================================================
[2026-06-05 15:25:22,868.868 INFO    ] Launching Daemon at Fri Jun  5 15:25:22 IST 2026
[2026-06-05 15:25:22,879.879 INFO    ] ================================================
[2026-06-05 15:25:23,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:25:23
[2026-06-05 15:25:24,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:25:24,515.515 INFO    ] Initializing speech engine...
[2026-06-05 15:25:24,527.527 INFO    ] 2026-06-05 15:25:24
[2026-06-05 15:25:24,812.812 INFO    ] 2026-06-05 15:25:24
[2026-06-05 15:25:24,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:25:25,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:25:25,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:25:25,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:25:25,357.357 INFO    ] time= 05/06/2026 15:25:25
[2026-06-05 15:25:25,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:25:25,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:25:25,519.519 INFO    ] No existing commands found in stream
[2026-06-05 15:25:30,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:25:30,553.553 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 15:25:32,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:25:32,166.166 INFO    ] Checking for system updates...
[2026-06-05 15:25:32,209.209 INFO    ] 200
[2026-06-05 15:25:32,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:32,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:25:32,280.280 INFO    ] No update needed
[2026-06-05 15:25:32,282.282 INFO    ] Checking for camera pi updates...
[2026-06-05 15:25:32,319.319 INFO    ] 200
[2026-06-05 15:25:32,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:32,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:25:32,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:25:32,409.409 INFO    ] No camera update needed
[2026-06-05 15:25:32,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:25:32,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:25:32,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:25:32,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:25:34,468.468 INFO    ] ================================================
[2026-06-05 15:25:34,483.483 INFO    ] Launching Daemon at Fri Jun  5 15:25:34 IST 2026
[2026-06-05 15:25:34,495.495 INFO    ] ================================================
[2026-06-05 15:25:35,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:25:35
[2026-06-05 15:25:35,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:25:35,906.906 INFO    ] Initializing speech engine...
[2026-06-05 15:25:35,914.914 INFO    ] 2026-06-05 15:25:35
[2026-06-05 15:25:36,189.189 INFO    ] 2026-06-05 15:25:36
[2026-06-05 15:25:36,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:25:36,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:25:36,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:25:37,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:25:37,142.142 INFO    ] time= 05/06/2026 15:25:37
[2026-06-05 15:25:37,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:25:37,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:25:37,323.323 INFO    ] No existing commands found in stream
[2026-06-05 15:25:42,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:25:42,350.350 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 15:25:45,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:25:45,366.366 INFO    ] Checking for system updates...
[2026-06-05 15:25:45,403.403 INFO    ] 200
[2026-06-05 15:25:45,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:45,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:25:45,460.460 INFO    ] No update needed
[2026-06-05 15:25:45,462.462 INFO    ] Checking for camera pi updates...
[2026-06-05 15:25:45,500.500 INFO    ] 200
[2026-06-05 15:25:45,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:45,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:25:45,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:25:45,596.596 INFO    ] No camera update needed
[2026-06-05 15:25:45,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:25:45,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:25:45,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:25:45,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:25:47,653.653 INFO    ] ================================================
[2026-06-05 15:25:47,669.669 INFO    ] Launching Daemon at Fri Jun  5 15:25:47 IST 2026
[2026-06-05 15:25:47,680.680 INFO    ] ================================================
[2026-06-05 15:25:48,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:25:48
[2026-06-05 15:25:48,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:25:49,117.117 INFO    ] Initializing speech engine...
[2026-06-05 15:25:49,137.137 INFO    ] 2026-06-05 15:25:49
[2026-06-05 15:25:49,407.407 INFO    ] 2026-06-05 15:25:49
[2026-06-05 15:25:49,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:25:49,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:25:49,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:25:49,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:25:49,829.829 INFO    ] time= 05/06/2026 15:25:49
[2026-06-05 15:25:49,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:25:49,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:25:49,983.983 INFO    ] No existing commands found in stream
[2026-06-05 15:25:55,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:25:55,011.011 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 15:25:59,022.022 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:25:59,024.024 INFO    ] Checking for system updates...
[2026-06-05 15:25:59,060.060 INFO    ] 200
[2026-06-05 15:25:59,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:59,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:25:59,119.119 INFO    ] No update needed
[2026-06-05 15:25:59,121.121 INFO    ] Checking for camera pi updates...
[2026-06-05 15:25:59,155.155 INFO    ] 200
[2026-06-05 15:25:59,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:25:59,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:25:59,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:25:59,356.356 INFO    ] No camera update needed
[2026-06-05 15:25:59,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:25:59,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:25:59,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:25:59,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:26:01,413.413 INFO    ] ================================================
[2026-06-05 15:26:01,428.428 INFO    ] Launching Daemon at Fri Jun  5 15:26:01 IST 2026
[2026-06-05 15:26:01,440.440 INFO    ] ================================================
[2026-06-05 15:26:02,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:26:02
[2026-06-05 15:26:02,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:26:03,120.120 INFO    ] Initializing speech engine...
[2026-06-05 15:26:03,125.125 INFO    ] 2026-06-05 15:26:03
[2026-06-05 15:26:03,391.391 INFO    ] 2026-06-05 15:26:03
[2026-06-05 15:26:03,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:26:03,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:26:03,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:26:03,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:26:03,780.780 INFO    ] time= 05/06/2026 15:26:03
[2026-06-05 15:26:03,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:26:03,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:26:03,917.917 INFO    ] No existing commands found in stream
[2026-06-05 15:26:08,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:26:08,932.932 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 15:26:11,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:26:11,716.716 INFO    ] Checking for system updates...
[2026-06-05 15:26:11,757.757 INFO    ] 200
[2026-06-05 15:26:11,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:11,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:26:11,816.816 INFO    ] No update needed
[2026-06-05 15:26:11,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 15:26:11,852.852 INFO    ] 200
[2026-06-05 15:26:11,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:11,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:26:11,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:26:11,940.940 INFO    ] No camera update needed
[2026-06-05 15:26:11,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:26:11,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:26:11,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:26:11,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:26:14,996.996 INFO    ] ================================================
[2026-06-05 15:26:14,011.011 INFO    ] Launching Daemon at Fri Jun  5 15:26:14 IST 2026
[2026-06-05 15:26:14,022.022 INFO    ] ================================================
[2026-06-05 15:26:14,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:26:14
[2026-06-05 15:26:15,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:26:15,463.463 INFO    ] Initializing speech engine...
[2026-06-05 15:26:15,485.485 INFO    ] 2026-06-05 15:26:15
[2026-06-05 15:26:15,740.740 INFO    ] 2026-06-05 15:26:15
[2026-06-05 15:26:15,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:26:16,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:26:16,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:26:16,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:26:16,228.228 INFO    ] time= 05/06/2026 15:26:16
[2026-06-05 15:26:16,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:26:16,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:26:16,412.412 INFO    ] No existing commands found in stream
[2026-06-05 15:26:21,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:26:21,437.437 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 15:26:23,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:26:23,116.116 INFO    ] Checking for system updates...
[2026-06-05 15:26:23,152.152 INFO    ] 200
[2026-06-05 15:26:23,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:23,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:26:23,218.218 INFO    ] No update needed
[2026-06-05 15:26:23,220.220 INFO    ] Checking for camera pi updates...
[2026-06-05 15:26:23,254.254 INFO    ] 200
[2026-06-05 15:26:23,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:23,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:26:23,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:26:23,344.344 INFO    ] No camera update needed
[2026-06-05 15:26:23,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:26:23,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:26:23,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:26:23,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:26:25,402.402 INFO    ] ================================================
[2026-06-05 15:26:25,418.418 INFO    ] Launching Daemon at Fri Jun  5 15:26:25 IST 2026
[2026-06-05 15:26:25,428.428 INFO    ] ================================================
[2026-06-05 15:26:26,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:26:26
[2026-06-05 15:26:26,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:26:26,889.889 INFO    ] Initializing speech engine...
[2026-06-05 15:26:26,895.895 INFO    ] 2026-06-05 15:26:26
[2026-06-05 15:26:27,144.144 INFO    ] 2026-06-05 15:26:27
[2026-06-05 15:26:27,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:26:27,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:26:27,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:26:27,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:26:27,632.632 INFO    ] time= 05/06/2026 15:26:27
[2026-06-05 15:26:27,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:26:27,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:26:27,827.827 INFO    ] No existing commands found in stream
[2026-06-05 15:26:32,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:26:32,842.842 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 15:26:33,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:26:33,359.359 INFO    ] Checking for system updates...
[2026-06-05 15:26:33,397.397 INFO    ] 200
[2026-06-05 15:26:33,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:33,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:26:33,456.456 INFO    ] No update needed
[2026-06-05 15:26:33,458.458 INFO    ] Checking for camera pi updates...
[2026-06-05 15:26:33,492.492 INFO    ] 200
[2026-06-05 15:26:33,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:33,535.535 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:26:33,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:26:33,581.581 INFO    ] No camera update needed
[2026-06-05 15:26:33,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:26:33,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:26:33,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:26:33,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:26:35,639.639 INFO    ] ================================================
[2026-06-05 15:26:35,654.654 INFO    ] Launching Daemon at Fri Jun  5 15:26:35 IST 2026
[2026-06-05 15:26:35,665.665 INFO    ] ================================================
[2026-06-05 15:26:36,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:26:36
[2026-06-05 15:26:36,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:26:37,138.138 INFO    ] Initializing speech engine...
[2026-06-05 15:26:37,147.147 INFO    ] 2026-06-05 15:26:37
[2026-06-05 15:26:37,406.406 INFO    ] 2026-06-05 15:26:37
[2026-06-05 15:26:37,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:26:38,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:26:38,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:26:38,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:26:38,604.604 INFO    ] time= 05/06/2026 15:26:38
[2026-06-05 15:26:38,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:26:38,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:26:38,738.738 INFO    ] No existing commands found in stream
[2026-06-05 15:26:43,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:26:43,761.761 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 15:26:48,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:26:48,375.375 INFO    ] Checking for system updates...
[2026-06-05 15:26:48,416.416 INFO    ] 200
[2026-06-05 15:26:48,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:48,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:26:48,481.481 INFO    ] No update needed
[2026-06-05 15:26:48,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 15:26:48,518.518 INFO    ] 200
[2026-06-05 15:26:48,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:48,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:26:48,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:26:48,618.618 INFO    ] No camera update needed
[2026-06-05 15:26:48,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:26:48,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:26:48,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:26:48,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:26:50,680.680 INFO    ] ================================================
[2026-06-05 15:26:50,696.696 INFO    ] Launching Daemon at Fri Jun  5 15:26:50 IST 2026
[2026-06-05 15:26:50,707.707 INFO    ] ================================================
[2026-06-05 15:26:51,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:26:51
[2026-06-05 15:26:51,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:26:52,144.144 INFO    ] Initializing speech engine...
[2026-06-05 15:26:52,153.153 INFO    ] 2026-06-05 15:26:52
[2026-06-05 15:26:52,419.419 INFO    ] 2026-06-05 15:26:52
[2026-06-05 15:26:52,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:26:52,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:26:52,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:26:52,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:26:52,844.844 INFO    ] time= 05/06/2026 15:26:52
[2026-06-05 15:26:52,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:26:52,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:26:53,045.045 INFO    ] No existing commands found in stream
[2026-06-05 15:26:58,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:26:58,077.077 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 15:26:59,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:26:59,285.285 INFO    ] Checking for system updates...
[2026-06-05 15:26:59,321.321 INFO    ] 200
[2026-06-05 15:26:59,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:59,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:26:59,384.384 INFO    ] No update needed
[2026-06-05 15:26:59,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 15:26:59,424.424 INFO    ] 200
[2026-06-05 15:26:59,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:26:59,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:26:59,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:26:59,515.515 INFO    ] No camera update needed
[2026-06-05 15:26:59,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:26:59,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:26:59,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:26:59,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:27:01,571.571 INFO    ] ================================================
[2026-06-05 15:27:01,587.587 INFO    ] Launching Daemon at Fri Jun  5 15:27:01 IST 2026
[2026-06-05 15:27:01,599.599 INFO    ] ================================================
[2026-06-05 15:27:02,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:27:02
[2026-06-05 15:27:02,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:27:03,227.227 INFO    ] Initializing speech engine...
[2026-06-05 15:27:03,236.236 INFO    ] 2026-06-05 15:27:03
[2026-06-05 15:27:03,530.530 INFO    ] 2026-06-05 15:27:03
[2026-06-05 15:27:03,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:27:03,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:27:03,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:27:03,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:27:04,005.005 INFO    ] time= 05/06/2026 15:27:03
[2026-06-05 15:27:04,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:27:04,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:27:04,249.249 INFO    ] No existing commands found in stream
[2026-06-05 15:27:09,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:27:09,288.288 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 15:27:11,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:27:11,810.810 INFO    ] Checking for system updates...
[2026-06-05 15:27:11,848.848 INFO    ] 200
[2026-06-05 15:27:11,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:27:11,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:27:11,913.913 INFO    ] No update needed
[2026-06-05 15:27:11,915.915 INFO    ] Checking for camera pi updates...
[2026-06-05 15:27:11,950.950 INFO    ] 200
[2026-06-05 15:27:11,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:27:11,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:27:12,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:27:12,036.036 INFO    ] No camera update needed
[2026-06-05 15:27:12,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:27:12,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:27:12,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:27:12,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:27:14,093.093 INFO    ] ================================================
[2026-06-05 15:27:14,108.108 INFO    ] Launching Daemon at Fri Jun  5 15:27:14 IST 2026
[2026-06-05 15:27:14,120.120 INFO    ] ================================================
[2026-06-05 15:27:14,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:27:14
[2026-06-05 15:27:15,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:27:15,553.553 INFO    ] Initializing speech engine...
[2026-06-05 15:27:15,563.563 INFO    ] 2026-06-05 15:27:15
[2026-06-05 15:27:15,811.811 INFO    ] 2026-06-05 15:27:15
[2026-06-05 15:27:15,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:27:16,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:27:16,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:27:16,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:27:16,294.294 INFO    ] time= 05/06/2026 15:27:16
[2026-06-05 15:27:16,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:27:16,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:27:16,515.515 INFO    ] No existing commands found in stream
[2026-06-05 15:27:21,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:27:21,543.543 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 15:27:25,740.740 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:27:25,743.743 INFO    ] Checking for system updates...
[2026-06-05 15:27:25,781.781 INFO    ] 200
[2026-06-05 15:27:25,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:27:25,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:27:25,844.844 INFO    ] No update needed
[2026-06-05 15:27:25,847.847 INFO    ] Checking for camera pi updates...
[2026-06-05 15:27:25,883.883 INFO    ] 200
[2026-06-05 15:27:25,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:27:25,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:27:25,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:27:25,976.976 INFO    ] No camera update needed
[2026-06-05 15:27:25,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:27:25,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:27:25,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:27:25,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:27:28,031.031 INFO    ] ================================================
[2026-06-05 15:27:28,047.047 INFO    ] Launching Daemon at Fri Jun  5 15:27:28 IST 2026
[2026-06-05 15:27:28,058.058 INFO    ] ================================================
[2026-06-05 15:27:28,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:27:28
[2026-06-05 15:27:29,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:27:29,512.512 INFO    ] Initializing speech engine...
[2026-06-05 15:27:29,519.519 INFO    ] 2026-06-05 15:27:29
[2026-06-05 15:27:29,770.770 INFO    ] 2026-06-05 15:27:29
[2026-06-05 15:27:29,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:27:30,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:27:30,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:27:30,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:27:30,250.250 INFO    ] time= 05/06/2026 15:27:30
[2026-06-05 15:27:30,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:27:30,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:27:30,386.386 INFO    ] No existing commands found in stream
[2026-06-05 15:27:35,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:27:35,409.409 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 15:27:40,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:27:40,746.746 INFO    ] Checking for system updates...
[2026-06-05 15:27:40,785.785 INFO    ] 200
[2026-06-05 15:27:40,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:27:40,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:27:40,849.849 INFO    ] No update needed
[2026-06-05 15:27:40,851.851 INFO    ] Checking for camera pi updates...
[2026-06-05 15:27:40,885.885 INFO    ] 200
[2026-06-05 15:27:40,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:27:40,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:27:40,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:27:40,976.976 INFO    ] No camera update needed
[2026-06-05 15:27:40,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:27:40,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:27:40,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:27:40,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:27:43,032.032 INFO    ] ================================================
[2026-06-05 15:27:43,047.047 INFO    ] Launching Daemon at Fri Jun  5 15:27:43 IST 2026
[2026-06-05 15:27:43,057.057 INFO    ] ================================================
[2026-06-05 15:27:43,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:27:43
[2026-06-05 15:27:44,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:27:44,530.530 INFO    ] Initializing speech engine...
[2026-06-05 15:27:44,541.541 INFO    ] 2026-06-05 15:27:44
[2026-06-05 15:27:44,803.803 INFO    ] 2026-06-05 15:27:44
[2026-06-05 15:27:44,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:27:45,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:27:45,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:27:45,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:27:45,315.315 INFO    ] time= 05/06/2026 15:27:45
[2026-06-05 15:27:45,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:27:45,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:27:45,539.539 INFO    ] No existing commands found in stream
[2026-06-05 15:27:50,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:27:50,562.562 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 15:27:53,813.813 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:27:53,815.815 INFO    ] Checking for system updates...
[2026-06-05 15:27:53,852.852 INFO    ] 200
[2026-06-05 15:27:53,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:27:53,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:27:53,911.911 INFO    ] No update needed
[2026-06-05 15:27:53,913.913 INFO    ] Checking for camera pi updates...
[2026-06-05 15:27:53,947.947 INFO    ] 200
[2026-06-05 15:27:53,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:27:53,992.992 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:27:54,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:27:54,035.035 INFO    ] No camera update needed
[2026-06-05 15:27:54,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:27:54,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:27:54,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:27:54,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:27:56,091.091 INFO    ] ================================================
[2026-06-05 15:27:56,106.106 INFO    ] Launching Daemon at Fri Jun  5 15:27:56 IST 2026
[2026-06-05 15:27:56,116.116 INFO    ] ================================================
[2026-06-05 15:27:56,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:27:56
[2026-06-05 15:27:57,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:27:57,578.578 INFO    ] Initializing speech engine...
[2026-06-05 15:27:57,587.587 INFO    ] 2026-06-05 15:27:57
[2026-06-05 15:27:57,848.848 INFO    ] 2026-06-05 15:27:57
[2026-06-05 15:27:57,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:27:58,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:27:58,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:27:58,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:27:58,312.312 INFO    ] time= 05/06/2026 15:27:58
[2026-06-05 15:27:58,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:27:58,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:27:58,536.536 INFO    ] No existing commands found in stream
[2026-06-05 15:28:03,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:28:03,560.560 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 15:28:05,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:28:05,867.867 INFO    ] Checking for system updates...
[2026-06-05 15:28:05,903.903 INFO    ] 200
[2026-06-05 15:28:05,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:05,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:28:05,962.962 INFO    ] No update needed
[2026-06-05 15:28:05,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 15:28:06,001.001 INFO    ] 200
[2026-06-05 15:28:06,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:06,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:28:06,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:28:06,085.085 INFO    ] No camera update needed
[2026-06-05 15:28:06,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:28:06,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:28:06,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:28:06,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:28:08,140.140 INFO    ] ================================================
[2026-06-05 15:28:08,155.155 INFO    ] Launching Daemon at Fri Jun  5 15:28:08 IST 2026
[2026-06-05 15:28:08,166.166 INFO    ] ================================================
[2026-06-05 15:28:08,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:28:08
[2026-06-05 15:28:09,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:28:09,604.604 INFO    ] Initializing speech engine...
[2026-06-05 15:28:09,629.629 INFO    ] 2026-06-05 15:28:09
[2026-06-05 15:28:09,895.895 INFO    ] 2026-06-05 15:28:09
[2026-06-05 15:28:09,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:28:10,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:28:10,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:28:10,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:28:10,371.371 INFO    ] time= 05/06/2026 15:28:10
[2026-06-05 15:28:10,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:28:10,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:28:10,568.568 INFO    ] No existing commands found in stream
[2026-06-05 15:28:15,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:28:15,582.582 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 15:28:17,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:28:17,194.194 INFO    ] Checking for system updates...
[2026-06-05 15:28:17,230.230 INFO    ] 200
[2026-06-05 15:28:17,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:17,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:28:17,293.293 INFO    ] No update needed
[2026-06-05 15:28:17,295.295 INFO    ] Checking for camera pi updates...
[2026-06-05 15:28:17,330.330 INFO    ] 200
[2026-06-05 15:28:17,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:17,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:28:17,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:28:17,419.419 INFO    ] No camera update needed
[2026-06-05 15:28:17,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:28:17,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:28:17,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:28:17,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:28:19,476.476 INFO    ] ================================================
[2026-06-05 15:28:19,491.491 INFO    ] Launching Daemon at Fri Jun  5 15:28:19 IST 2026
[2026-06-05 15:28:19,502.502 INFO    ] ================================================
[2026-06-05 15:28:20,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:28:20
[2026-06-05 15:28:20,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:28:20,997.997 INFO    ] Initializing speech engine...
[2026-06-05 15:28:21,005.005 INFO    ] 2026-06-05 15:28:20
[2026-06-05 15:28:21,274.274 INFO    ] 2026-06-05 15:28:21
[2026-06-05 15:28:21,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:28:21,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:28:21,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:28:21,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:28:21,750.750 INFO    ] time= 05/06/2026 15:28:21
[2026-06-05 15:28:21,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:28:21,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:28:21,930.930 INFO    ] No existing commands found in stream
[2026-06-05 15:28:26,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:28:26,968.968 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 15:28:30,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:28:30,171.171 INFO    ] Checking for system updates...
[2026-06-05 15:28:30,207.207 INFO    ] 200
[2026-06-05 15:28:30,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:30,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:28:30,264.264 INFO    ] No update needed
[2026-06-05 15:28:30,266.266 INFO    ] Checking for camera pi updates...
[2026-06-05 15:28:30,300.300 INFO    ] 200
[2026-06-05 15:28:30,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:30,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:28:30,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:28:30,388.388 INFO    ] No camera update needed
[2026-06-05 15:28:30,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:28:30,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:28:30,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:28:30,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:28:32,448.448 INFO    ] ================================================
[2026-06-05 15:28:32,465.465 INFO    ] Launching Daemon at Fri Jun  5 15:28:32 IST 2026
[2026-06-05 15:28:32,477.477 INFO    ] ================================================
[2026-06-05 15:28:33,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:28:33
[2026-06-05 15:28:33,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:28:33,950.950 INFO    ] Initializing speech engine...
[2026-06-05 15:28:33,975.975 INFO    ] 2026-06-05 15:28:33
[2026-06-05 15:28:34,242.242 INFO    ] 2026-06-05 15:28:34
[2026-06-05 15:28:34,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:28:34,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:28:34,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:28:34,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:28:34,647.647 INFO    ] time= 05/06/2026 15:28:34
[2026-06-05 15:28:34,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:28:34,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:28:34,784.784 INFO    ] No existing commands found in stream
[2026-06-05 15:28:39,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:28:39,812.812 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 15:28:41,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:28:41,166.166 INFO    ] Checking for system updates...
[2026-06-05 15:28:41,204.204 INFO    ] 200
[2026-06-05 15:28:41,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:41,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:28:41,262.262 INFO    ] No update needed
[2026-06-05 15:28:41,264.264 INFO    ] Checking for camera pi updates...
[2026-06-05 15:28:41,298.298 INFO    ] 200
[2026-06-05 15:28:41,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:41,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:28:41,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:28:41,388.388 INFO    ] No camera update needed
[2026-06-05 15:28:41,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:28:41,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:28:41,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:28:41,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:28:43,444.444 INFO    ] ================================================
[2026-06-05 15:28:43,459.459 INFO    ] Launching Daemon at Fri Jun  5 15:28:43 IST 2026
[2026-06-05 15:28:43,470.470 INFO    ] ================================================
[2026-06-05 15:28:44,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:28:44
[2026-06-05 15:28:44,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:28:44,890.890 INFO    ] Initializing speech engine...
[2026-06-05 15:28:44,905.905 INFO    ] 2026-06-05 15:28:44
[2026-06-05 15:28:45,182.182 INFO    ] 2026-06-05 15:28:45
[2026-06-05 15:28:45,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:28:45,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:28:45,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:28:45,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:28:45,587.587 INFO    ] time= 05/06/2026 15:28:45
[2026-06-05 15:28:45,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:28:45,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:28:45,669.669 INFO    ] No existing commands found in stream
[2026-06-05 15:28:50,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:28:50,684.684 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 15:28:52,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:28:52,883.883 INFO    ] Checking for system updates...
[2026-06-05 15:28:52,919.919 INFO    ] 200
[2026-06-05 15:28:52,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:52,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:28:52,977.977 INFO    ] No update needed
[2026-06-05 15:28:52,979.979 INFO    ] Checking for camera pi updates...
[2026-06-05 15:28:53,014.014 INFO    ] 200
[2026-06-05 15:28:53,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:28:53,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:28:53,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:28:53,104.104 INFO    ] No camera update needed
[2026-06-05 15:28:53,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:28:53,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:28:53,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:28:53,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:28:55,162.162 INFO    ] ================================================
[2026-06-05 15:28:55,177.177 INFO    ] Launching Daemon at Fri Jun  5 15:28:55 IST 2026
[2026-06-05 15:28:55,188.188 INFO    ] ================================================
[2026-06-05 15:28:55,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:28:55
[2026-06-05 15:28:56,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:28:56,757.757 INFO    ] Initializing speech engine...
[2026-06-05 15:28:56,769.769 INFO    ] 2026-06-05 15:28:56
[2026-06-05 15:28:57,074.074 INFO    ] 2026-06-05 15:28:57
[2026-06-05 15:28:57,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:28:57,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:28:57,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:28:57,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:28:57,578.578 INFO    ] time= 05/06/2026 15:28:57
[2026-06-05 15:28:57,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:28:57,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:28:57,737.737 INFO    ] No existing commands found in stream
[2026-06-05 15:29:02,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:29:02,760.760 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 15:29:03,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:29:03,932.932 INFO    ] Checking for system updates...
[2026-06-05 15:29:03,969.969 INFO    ] 200
[2026-06-05 15:29:03,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:04,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:29:04,028.028 INFO    ] No update needed
[2026-06-05 15:29:04,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 15:29:04,065.065 INFO    ] 200
[2026-06-05 15:29:04,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:04,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:29:04,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:29:04,152.152 INFO    ] No camera update needed
[2026-06-05 15:29:04,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:29:04,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:29:04,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:29:04,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:29:06,207.207 INFO    ] ================================================
[2026-06-05 15:29:06,223.223 INFO    ] Launching Daemon at Fri Jun  5 15:29:06 IST 2026
[2026-06-05 15:29:06,234.234 INFO    ] ================================================
[2026-06-05 15:29:06,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:29:06
[2026-06-05 15:29:07,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:29:07,875.875 INFO    ] Initializing speech engine...
[2026-06-05 15:29:07,883.883 INFO    ] 2026-06-05 15:29:07
[2026-06-05 15:29:08,202.202 INFO    ] 2026-06-05 15:29:08
[2026-06-05 15:29:08,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:29:08,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:29:08,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:29:08,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:29:08,720.720 INFO    ] time= 05/06/2026 15:29:08
[2026-06-05 15:29:08,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:29:08,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:29:08,881.881 INFO    ] No existing commands found in stream
[2026-06-05 15:29:13,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:29:13,909.909 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 15:29:17,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:29:17,033.033 INFO    ] Checking for system updates...
[2026-06-05 15:29:17,071.071 INFO    ] 200
[2026-06-05 15:29:17,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:17,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:29:17,136.136 INFO    ] No update needed
[2026-06-05 15:29:17,138.138 INFO    ] Checking for camera pi updates...
[2026-06-05 15:29:17,176.176 INFO    ] 200
[2026-06-05 15:29:17,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:17,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:29:17,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:29:17,273.273 INFO    ] No camera update needed
[2026-06-05 15:29:17,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:29:17,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:29:17,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:29:17,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:29:19,330.330 INFO    ] ================================================
[2026-06-05 15:29:19,346.346 INFO    ] Launching Daemon at Fri Jun  5 15:29:19 IST 2026
[2026-06-05 15:29:19,357.357 INFO    ] ================================================
[2026-06-05 15:29:19,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:29:19
[2026-06-05 15:29:20,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:29:20,960.960 INFO    ] Initializing speech engine...
[2026-06-05 15:29:20,968.968 INFO    ] 2026-06-05 15:29:20
[2026-06-05 15:29:21,233.233 INFO    ] 2026-06-05 15:29:21
[2026-06-05 15:29:21,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:29:21,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:29:21,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:29:21,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:29:21,727.727 INFO    ] time= 05/06/2026 15:29:21
[2026-06-05 15:29:21,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:29:21,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:29:21,880.880 INFO    ] No existing commands found in stream
[2026-06-05 15:29:26,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:29:26,909.909 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 15:29:29,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:29:29,630.630 INFO    ] Checking for system updates...
[2026-06-05 15:29:29,665.665 INFO    ] 200
[2026-06-05 15:29:29,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:29,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:29:29,724.724 INFO    ] No update needed
[2026-06-05 15:29:29,727.727 INFO    ] Checking for camera pi updates...
[2026-06-05 15:29:29,761.761 INFO    ] 200
[2026-06-05 15:29:29,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:29,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:29:29,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:29:29,857.857 INFO    ] No camera update needed
[2026-06-05 15:29:29,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:29:29,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:29:29,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:29:29,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:29:31,916.916 INFO    ] ================================================
[2026-06-05 15:29:31,932.932 INFO    ] Launching Daemon at Fri Jun  5 15:29:31 IST 2026
[2026-06-05 15:29:31,944.944 INFO    ] ================================================
[2026-06-05 15:29:32,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:29:32
[2026-06-05 15:29:33,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:29:33,460.460 INFO    ] Initializing speech engine...
[2026-06-05 15:29:33,473.473 INFO    ] 2026-06-05 15:29:33
[2026-06-05 15:29:33,753.753 INFO    ] 2026-06-05 15:29:33
[2026-06-05 15:29:33,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:29:33,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:29:33,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:29:34,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:29:34,123.123 INFO    ] time= 05/06/2026 15:29:34
[2026-06-05 15:29:34,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:29:34,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:29:34,245.245 INFO    ] No existing commands found in stream
[2026-06-05 15:29:39,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:29:39,261.261 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 15:29:40,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:29:40,569.569 INFO    ] Checking for system updates...
[2026-06-05 15:29:40,607.607 INFO    ] 200
[2026-06-05 15:29:40,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:40,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:29:40,668.668 INFO    ] No update needed
[2026-06-05 15:29:40,670.670 INFO    ] Checking for camera pi updates...
[2026-06-05 15:29:40,706.706 INFO    ] 200
[2026-06-05 15:29:40,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:40,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:29:40,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:29:40,798.798 INFO    ] No camera update needed
[2026-06-05 15:29:40,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:29:40,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:29:40,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:29:40,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:29:42,856.856 INFO    ] ================================================
[2026-06-05 15:29:42,871.871 INFO    ] Launching Daemon at Fri Jun  5 15:29:42 IST 2026
[2026-06-05 15:29:42,882.882 INFO    ] ================================================
[2026-06-05 15:29:43,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:29:43
[2026-06-05 15:29:44,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:29:44,298.298 INFO    ] Initializing speech engine...
[2026-06-05 15:29:44,314.314 INFO    ] 2026-06-05 15:29:44
[2026-06-05 15:29:44,595.595 INFO    ] 2026-06-05 15:29:44
[2026-06-05 15:29:44,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:29:44,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:29:44,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:29:45,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:29:45,081.081 INFO    ] time= 05/06/2026 15:29:45
[2026-06-05 15:29:45,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:29:45,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:29:45,282.282 INFO    ] No existing commands found in stream
[2026-06-05 15:29:50,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:29:50,297.297 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 15:29:53,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:29:53,258.258 INFO    ] Checking for system updates...
[2026-06-05 15:29:53,297.297 INFO    ] 200
[2026-06-05 15:29:53,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:53,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:29:53,356.356 INFO    ] No update needed
[2026-06-05 15:29:53,359.359 INFO    ] Checking for camera pi updates...
[2026-06-05 15:29:53,397.397 INFO    ] 200
[2026-06-05 15:29:53,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:29:53,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:29:53,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:29:53,486.486 INFO    ] No camera update needed
[2026-06-05 15:29:53,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:29:53,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:29:53,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:29:53,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:29:55,542.542 INFO    ] ================================================
[2026-06-05 15:29:55,558.558 INFO    ] Launching Daemon at Fri Jun  5 15:29:55 IST 2026
[2026-06-05 15:29:55,569.569 INFO    ] ================================================
[2026-06-05 15:29:56,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:29:56
[2026-06-05 15:29:56,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:29:56,976.976 INFO    ] Initializing speech engine...
[2026-06-05 15:29:56,984.984 INFO    ] 2026-06-05 15:29:56
[2026-06-05 15:29:57,273.273 INFO    ] 2026-06-05 15:29:57
[2026-06-05 15:29:57,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:29:57,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:29:57,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:29:57,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:29:57,689.689 INFO    ] time= 05/06/2026 15:29:57
[2026-06-05 15:29:57,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:29:57,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:29:57,867.867 INFO    ] No existing commands found in stream
[2026-06-05 15:30:02,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:30:02,891.891 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 15:30:08,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:30:08,521.521 INFO    ] Checking for system updates...
[2026-06-05 15:30:08,558.558 INFO    ] 200
[2026-06-05 15:30:08,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:30:08,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:30:08,622.622 INFO    ] No update needed
[2026-06-05 15:30:08,625.625 INFO    ] Checking for camera pi updates...
[2026-06-05 15:30:08,659.659 INFO    ] 200
[2026-06-05 15:30:08,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:30:08,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:30:08,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:30:08,834.834 INFO    ] No camera update needed
[2026-06-05 15:30:08,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:30:08,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:30:08,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:30:08,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:30:10,889.889 INFO    ] ================================================
[2026-06-05 15:30:10,905.905 INFO    ] Launching Daemon at Fri Jun  5 15:30:10 IST 2026
[2026-06-05 15:30:10,916.916 INFO    ] ================================================
[2026-06-05 15:30:11,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:30:11
[2026-06-05 15:30:12,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:30:12,370.370 INFO    ] Initializing speech engine...
[2026-06-05 15:30:12,381.381 INFO    ] 2026-06-05 15:30:12
[2026-06-05 15:30:12,629.629 INFO    ] 2026-06-05 15:30:12
[2026-06-05 15:30:12,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:30:12,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:30:12,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:30:13,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:30:13,101.101 INFO    ] time= 05/06/2026 15:30:13
[2026-06-05 15:30:13,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:30:13,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:30:13,339.339 INFO    ] No existing commands found in stream
[2026-06-05 15:30:18,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:30:18,357.357 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 15:30:22,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:30:22,548.548 INFO    ] Checking for system updates...
[2026-06-05 15:30:22,590.590 INFO    ] 200
[2026-06-05 15:30:22,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:30:22,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:30:22,650.650 INFO    ] No update needed
[2026-06-05 15:30:22,653.653 INFO    ] Checking for camera pi updates...
[2026-06-05 15:30:22,688.688 INFO    ] 200
[2026-06-05 15:30:22,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:30:22,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:30:22,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:30:22,780.780 INFO    ] No camera update needed
[2026-06-05 15:30:22,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:30:22,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:30:22,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:30:22,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:30:24,841.841 INFO    ] ================================================
[2026-06-05 15:30:24,857.857 INFO    ] Launching Daemon at Fri Jun  5 15:30:24 IST 2026
[2026-06-05 15:30:24,868.868 INFO    ] ================================================
[2026-06-05 15:30:25,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:30:25
[2026-06-05 15:30:26,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:30:26,277.277 INFO    ] Initializing speech engine...
[2026-06-05 15:30:26,300.300 INFO    ] 2026-06-05 15:30:26
[2026-06-05 15:30:26,561.561 INFO    ] 2026-06-05 15:30:26
[2026-06-05 15:30:26,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:30:26,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:30:26,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:30:26,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:30:26,939.939 INFO    ] time= 05/06/2026 15:30:26
[2026-06-05 15:30:26,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:30:26,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:30:27,112.112 INFO    ] No existing commands found in stream
[2026-06-05 15:30:32,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:30:32,140.140 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 15:30:35,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:30:35,478.478 INFO    ] Checking for system updates...
[2026-06-05 15:30:35,513.513 INFO    ] 200
[2026-06-05 15:30:35,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:30:35,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:30:35,572.572 INFO    ] No update needed
[2026-06-05 15:30:35,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 15:30:35,610.610 INFO    ] 200
[2026-06-05 15:30:35,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:30:35,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:30:35,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:30:35,705.705 INFO    ] No camera update needed
[2026-06-05 15:30:35,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:30:35,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:30:35,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:30:35,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:30:37,759.759 INFO    ] ================================================
[2026-06-05 15:30:37,774.774 INFO    ] Launching Daemon at Fri Jun  5 15:30:37 IST 2026
[2026-06-05 15:30:37,785.785 INFO    ] ================================================
[2026-06-05 15:30:38,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:30:38
[2026-06-05 15:30:39,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:30:39,333.333 INFO    ] Initializing speech engine...
[2026-06-05 15:30:39,339.339 INFO    ] 2026-06-05 15:30:39
[2026-06-05 15:30:39,602.602 INFO    ] 2026-06-05 15:30:39
[2026-06-05 15:30:39,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:30:39,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:30:39,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:30:40,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:30:40,093.093 INFO    ] time= 05/06/2026 15:30:40
[2026-06-05 15:30:40,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:30:40,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:30:40,282.282 INFO    ] No existing commands found in stream
[2026-06-05 15:30:45,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:30:45,311.311 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 15:30:48,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:30:48,100.100 INFO    ] Checking for system updates...
[2026-06-05 15:30:48,140.140 INFO    ] 200
[2026-06-05 15:30:48,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:30:48,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:30:48,201.201 INFO    ] No update needed
[2026-06-05 15:30:48,203.203 INFO    ] Checking for camera pi updates...
[2026-06-05 15:30:48,242.242 INFO    ] 200
[2026-06-05 15:30:48,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:30:48,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:30:48,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:30:48,335.335 INFO    ] No camera update needed
[2026-06-05 15:30:48,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:30:48,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:30:48,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:30:48,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:30:50,389.389 INFO    ] ================================================
[2026-06-05 15:30:50,405.405 INFO    ] Launching Daemon at Fri Jun  5 15:30:50 IST 2026
[2026-06-05 15:30:50,416.416 INFO    ] ================================================
[2026-06-05 15:30:50,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:30:50
[2026-06-05 15:30:51,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:30:51,904.904 INFO    ] Initializing speech engine...
[2026-06-05 15:30:51,915.915 INFO    ] 2026-06-05 15:30:51
[2026-06-05 15:30:52,208.208 INFO    ] 2026-06-05 15:30:52
[2026-06-05 15:30:52,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:30:52,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:30:52,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:30:52,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:30:52,740.740 INFO    ] time= 05/06/2026 15:30:52
[2026-06-05 15:30:52,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:30:52,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:30:52,911.911 INFO    ] No existing commands found in stream
[2026-06-05 15:30:57,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:30:57,947.947 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 15:31:01,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:31:01,539.539 INFO    ] Checking for system updates...
[2026-06-05 15:31:01,596.596 INFO    ] 200
[2026-06-05 15:31:01,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:01,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:31:01,771.771 INFO    ] No update needed
[2026-06-05 15:31:01,775.775 INFO    ] Checking for camera pi updates...
[2026-06-05 15:31:01,841.841 INFO    ] 200
[2026-06-05 15:31:01,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:01,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:31:01,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:31:01,988.988 INFO    ] No camera update needed
[2026-06-05 15:31:01,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:31:02,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:31:02,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:31:02,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:31:04,086.086 INFO    ] ================================================
[2026-06-05 15:31:04,101.101 INFO    ] Launching Daemon at Fri Jun  5 15:31:04 IST 2026
[2026-06-05 15:31:04,111.111 INFO    ] ================================================
[2026-06-05 15:31:04,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:31:04
[2026-06-05 15:31:05,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:31:05,524.524 INFO    ] Initializing speech engine...
[2026-06-05 15:31:05,547.547 INFO    ] 2026-06-05 15:31:05
[2026-06-05 15:31:05,806.806 INFO    ] 2026-06-05 15:31:05
[2026-06-05 15:31:05,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:31:06,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:31:06,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:31:06,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:31:06,268.268 INFO    ] time= 05/06/2026 15:31:06
[2026-06-05 15:31:06,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:31:06,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:31:06,455.455 INFO    ] No existing commands found in stream
[2026-06-05 15:31:11,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:31:11,470.470 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 15:31:13,797.797 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:31:13,800.800 INFO    ] Checking for system updates...
[2026-06-05 15:31:13,837.837 INFO    ] 200
[2026-06-05 15:31:13,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:13,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:31:13,896.896 INFO    ] No update needed
[2026-06-05 15:31:13,899.899 INFO    ] Checking for camera pi updates...
[2026-06-05 15:31:13,938.938 INFO    ] 200
[2026-06-05 15:31:13,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:13,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:31:14,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:31:14,031.031 INFO    ] No camera update needed
[2026-06-05 15:31:14,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:31:14,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:31:14,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:31:14,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:31:16,088.088 INFO    ] ================================================
[2026-06-05 15:31:16,104.104 INFO    ] Launching Daemon at Fri Jun  5 15:31:16 IST 2026
[2026-06-05 15:31:16,115.115 INFO    ] ================================================
[2026-06-05 15:31:16,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:31:16
[2026-06-05 15:31:17,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:31:17,801.801 INFO    ] Initializing speech engine...
[2026-06-05 15:31:17,810.810 INFO    ] 2026-06-05 15:31:17
[2026-06-05 15:31:18,131.131 INFO    ] 2026-06-05 15:31:18
[2026-06-05 15:31:18,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:31:20,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:31:20,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:31:20,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:31:20,634.634 INFO    ] time= 05/06/2026 15:31:20
[2026-06-05 15:31:20,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:31:20,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:31:20,797.797 INFO    ] No existing commands found in stream
[2026-06-05 15:31:25,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:31:25,818.818 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 15:31:26,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:31:26,294.294 INFO    ] Checking for system updates...
[2026-06-05 15:31:26,331.331 INFO    ] 200
[2026-06-05 15:31:26,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:26,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:31:26,392.392 INFO    ] No update needed
[2026-06-05 15:31:26,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 15:31:26,429.429 INFO    ] 200
[2026-06-05 15:31:26,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:26,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:31:26,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:31:26,521.521 INFO    ] No camera update needed
[2026-06-05 15:31:26,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:31:26,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:31:26,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:31:26,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:31:28,578.578 INFO    ] ================================================
[2026-06-05 15:31:28,594.594 INFO    ] Launching Daemon at Fri Jun  5 15:31:28 IST 2026
[2026-06-05 15:31:28,604.604 INFO    ] ================================================
[2026-06-05 15:31:29,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:31:29
[2026-06-05 15:31:29,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:31:30,303.303 INFO    ] Initializing speech engine...
[2026-06-05 15:31:30,312.312 INFO    ] 2026-06-05 15:31:30
[2026-06-05 15:31:30,617.617 INFO    ] 2026-06-05 15:31:30
[2026-06-05 15:31:30,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:31:30,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:31:30,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:31:31,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:31:31,127.127 INFO    ] time= 05/06/2026 15:31:31
[2026-06-05 15:31:31,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:31:31,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:31:31,326.326 INFO    ] No existing commands found in stream
[2026-06-05 15:31:36,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:31:36,366.366 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 15:31:40,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:31:40,267.267 INFO    ] Checking for system updates...
[2026-06-05 15:31:40,304.304 INFO    ] 200
[2026-06-05 15:31:40,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:40,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:31:40,364.364 INFO    ] No update needed
[2026-06-05 15:31:40,366.366 INFO    ] Checking for camera pi updates...
[2026-06-05 15:31:40,400.400 INFO    ] 200
[2026-06-05 15:31:40,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:40,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:31:40,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:31:40,493.493 INFO    ] No camera update needed
[2026-06-05 15:31:40,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:31:40,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:31:40,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:31:40,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:31:42,549.549 INFO    ] ================================================
[2026-06-05 15:31:42,564.564 INFO    ] Launching Daemon at Fri Jun  5 15:31:42 IST 2026
[2026-06-05 15:31:42,575.575 INFO    ] ================================================
[2026-06-05 15:31:43,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:31:43
[2026-06-05 15:31:43,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:31:44,013.013 INFO    ] Initializing speech engine...
[2026-06-05 15:31:44,019.019 INFO    ] 2026-06-05 15:31:44
[2026-06-05 15:31:44,264.264 INFO    ] 2026-06-05 15:31:44
[2026-06-05 15:31:44,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:31:44,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:31:44,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:31:44,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:31:44,766.766 INFO    ] time= 05/06/2026 15:31:44
[2026-06-05 15:31:44,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:31:44,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:31:44,975.975 INFO    ] No existing commands found in stream
[2026-06-05 15:31:49,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:31:49,990.990 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 15:31:54,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:31:54,381.381 INFO    ] Checking for system updates...
[2026-06-05 15:31:54,423.423 INFO    ] 200
[2026-06-05 15:31:54,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:54,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:31:54,490.490 INFO    ] No update needed
[2026-06-05 15:31:54,493.493 INFO    ] Checking for camera pi updates...
[2026-06-05 15:31:54,531.531 INFO    ] 200
[2026-06-05 15:31:54,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:31:54,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:31:54,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:31:54,620.620 INFO    ] No camera update needed
[2026-06-05 15:31:54,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:31:54,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:31:54,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:31:54,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:31:56,676.676 INFO    ] ================================================
[2026-06-05 15:31:56,692.692 INFO    ] Launching Daemon at Fri Jun  5 15:31:56 IST 2026
[2026-06-05 15:31:56,703.703 INFO    ] ================================================
[2026-06-05 15:31:57,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:31:57
[2026-06-05 15:31:58,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:31:58,349.349 INFO    ] Initializing speech engine...
[2026-06-05 15:31:58,356.356 INFO    ] 2026-06-05 15:31:58
[2026-06-05 15:31:58,615.615 INFO    ] 2026-06-05 15:31:58
[2026-06-05 15:31:58,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:31:58,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:31:58,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:31:59,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:31:59,057.057 INFO    ] time= 05/06/2026 15:31:59
[2026-06-05 15:31:59,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:31:59,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:31:59,245.245 INFO    ] No existing commands found in stream
[2026-06-05 15:32:04,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:32:04,260.260 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 15:32:05,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:32:05,604.604 INFO    ] Checking for system updates...
[2026-06-05 15:32:05,640.640 INFO    ] 200
[2026-06-05 15:32:05,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:32:05,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:32:05,699.699 INFO    ] No update needed
[2026-06-05 15:32:05,701.701 INFO    ] Checking for camera pi updates...
[2026-06-05 15:32:05,736.736 INFO    ] 200
[2026-06-05 15:32:05,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:32:05,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:32:05,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:32:05,816.816 INFO    ] No camera update needed
[2026-06-05 15:32:05,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:32:05,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:32:05,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:32:05,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:32:07,870.870 INFO    ] ================================================
[2026-06-05 15:32:07,885.885 INFO    ] Launching Daemon at Fri Jun  5 15:32:07 IST 2026
[2026-06-05 15:32:07,896.896 INFO    ] ================================================
[2026-06-05 15:32:08,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:32:08
[2026-06-05 15:32:09,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:32:09,322.322 INFO    ] Initializing speech engine...
[2026-06-05 15:32:09,328.328 INFO    ] 2026-06-05 15:32:09
[2026-06-05 15:32:09,586.586 INFO    ] 2026-06-05 15:32:09
[2026-06-05 15:32:09,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:32:09,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:32:09,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:32:10,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:32:10,044.044 INFO    ] time= 05/06/2026 15:32:10
[2026-06-05 15:32:10,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:32:10,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:32:10,270.270 INFO    ] No existing commands found in stream
[2026-06-05 15:32:15,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:32:15,297.297 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 15:32:20,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:32:20,561.561 INFO    ] Checking for system updates...
[2026-06-05 15:32:20,598.598 INFO    ] 200
[2026-06-05 15:32:20,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:32:20,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:32:20,664.664 INFO    ] No update needed
[2026-06-05 15:32:20,666.666 INFO    ] Checking for camera pi updates...
[2026-06-05 15:32:20,705.705 INFO    ] 200
[2026-06-05 15:32:20,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:32:20,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:32:20,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:32:20,916.916 INFO    ] No camera update needed
[2026-06-05 15:32:20,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:32:20,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:32:20,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:32:20,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:32:22,976.976 INFO    ] ================================================
[2026-06-05 15:32:23,994.994 INFO    ] Launching Daemon at Fri Jun  5 15:32:22 IST 2026
[2026-06-05 15:32:23,007.007 INFO    ] ================================================
[2026-06-05 15:32:23,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:32:23
[2026-06-05 15:32:24,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:32:24,475.475 INFO    ] Initializing speech engine...
[2026-06-05 15:32:24,501.501 INFO    ] 2026-06-05 15:32:24
[2026-06-05 15:32:24,780.780 INFO    ] 2026-06-05 15:32:24
[2026-06-05 15:32:24,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:32:25,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:32:25,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:32:25,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:32:25,195.195 INFO    ] time= 05/06/2026 15:32:25
[2026-06-05 15:32:25,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:32:25,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:32:25,307.307 INFO    ] No existing commands found in stream
[2026-06-05 15:32:30,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:32:30,322.322 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 15:32:33,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:32:33,704.704 INFO    ] Checking for system updates...
[2026-06-05 15:32:33,748.748 INFO    ] 200
[2026-06-05 15:32:33,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:32:33,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:32:33,814.814 INFO    ] No update needed
[2026-06-05 15:32:33,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 15:32:33,850.850 INFO    ] 200
[2026-06-05 15:32:33,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:32:33,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:32:33,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:32:33,937.937 INFO    ] No camera update needed
[2026-06-05 15:32:33,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:32:33,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:32:33,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:32:33,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:32:35,994.994 INFO    ] ================================================
[2026-06-05 15:32:36,010.010 INFO    ] Launching Daemon at Fri Jun  5 15:32:36 IST 2026
[2026-06-05 15:32:36,021.021 INFO    ] ================================================
[2026-06-05 15:32:36,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:32:36
[2026-06-05 15:32:37,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:32:37,440.440 INFO    ] Initializing speech engine...
[2026-06-05 15:32:37,446.446 INFO    ] 2026-06-05 15:32:37
[2026-06-05 15:32:37,723.723 INFO    ] 2026-06-05 15:32:37
[2026-06-05 15:32:37,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:32:37,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:32:38,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:32:38,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:32:38,192.192 INFO    ] time= 05/06/2026 15:32:38
[2026-06-05 15:32:38,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:32:38,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:32:38,437.437 INFO    ] No existing commands found in stream
[2026-06-05 15:32:43,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:32:43,465.465 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 15:32:47,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:32:47,255.255 INFO    ] Checking for system updates...
[2026-06-05 15:32:47,297.297 INFO    ] 200
[2026-06-05 15:32:47,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:32:47,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:32:47,356.356 INFO    ] No update needed
[2026-06-05 15:32:47,358.358 INFO    ] Checking for camera pi updates...
[2026-06-05 15:32:47,393.393 INFO    ] 200
[2026-06-05 15:32:47,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:32:47,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:32:47,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:32:47,483.483 INFO    ] No camera update needed
[2026-06-05 15:32:47,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:32:47,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:32:47,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:32:47,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:32:49,549.549 INFO    ] ================================================
[2026-06-05 15:32:49,569.569 INFO    ] Launching Daemon at Fri Jun  5 15:32:49 IST 2026
[2026-06-05 15:32:49,587.587 INFO    ] ================================================
[2026-06-05 15:32:50,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:32:50
[2026-06-05 15:32:50,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:32:51,137.137 INFO    ] Initializing speech engine...
[2026-06-05 15:32:51,148.148 INFO    ] 2026-06-05 15:32:51
[2026-06-05 15:32:51,463.463 INFO    ] 2026-06-05 15:32:51
[2026-06-05 15:32:51,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:32:51,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:32:51,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:32:51,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:32:51,885.885 INFO    ] time= 05/06/2026 15:32:51
[2026-06-05 15:32:51,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:32:51,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:32:52,022.022 INFO    ] No existing commands found in stream
[2026-06-05 15:32:57,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:32:57,037.037 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 15:32:59,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:32:59,953.953 INFO    ] Checking for system updates...
[2026-06-05 15:32:59,991.991 INFO    ] 200
[2026-06-05 15:32:59,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:33:00,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:33:00,052.052 INFO    ] No update needed
[2026-06-05 15:33:00,055.055 INFO    ] Checking for camera pi updates...
[2026-06-05 15:33:00,094.094 INFO    ] 200
[2026-06-05 15:33:00,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:33:00,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:33:00,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:33:00,192.192 INFO    ] No camera update needed
[2026-06-05 15:33:00,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:33:00,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:33:00,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:33:00,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:33:02,253.253 INFO    ] ================================================
[2026-06-05 15:33:02,274.274 INFO    ] Launching Daemon at Fri Jun  5 15:33:02 IST 2026
[2026-06-05 15:33:02,290.290 INFO    ] ================================================
[2026-06-05 15:33:02,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:33:02
[2026-06-05 15:33:03,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:33:03,938.938 INFO    ] Initializing speech engine...
[2026-06-05 15:33:03,942.942 INFO    ] 2026-06-05 15:33:03
[2026-06-05 15:33:04,221.221 INFO    ] 2026-06-05 15:33:04
[2026-06-05 15:33:04,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:33:20,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:33:20,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:33:21,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:33:21,415.415 INFO    ] time= 05/06/2026 15:33:21
[2026-06-05 15:33:21,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:33:21,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:33:21,486.486 INFO    ] No existing commands found in stream
[2026-06-05 15:33:26,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:33:26,499.499 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 15:33:28,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:33:28,337.337 INFO    ] Checking for system updates...
[2026-06-05 15:33:28,375.375 INFO    ] 200
[2026-06-05 15:33:28,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:33:28,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:33:28,446.446 INFO    ] No update needed
[2026-06-05 15:33:28,449.449 INFO    ] Checking for camera pi updates...
[2026-06-05 15:33:28,482.482 INFO    ] 200
[2026-06-05 15:33:28,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:33:28,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:33:28,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:33:28,578.578 INFO    ] No camera update needed
[2026-06-05 15:33:28,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:33:28,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:33:28,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:33:28,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:33:30,637.637 INFO    ] ================================================
[2026-06-05 15:33:30,653.653 INFO    ] Launching Daemon at Fri Jun  5 15:33:30 IST 2026
[2026-06-05 15:33:30,663.663 INFO    ] ================================================
[2026-06-05 15:33:31,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:33:31
[2026-06-05 15:33:31,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:33:32,165.165 INFO    ] Initializing speech engine...
[2026-06-05 15:33:32,171.171 INFO    ] 2026-06-05 15:33:32
[2026-06-05 15:33:32,448.448 INFO    ] 2026-06-05 15:33:32
[2026-06-05 15:33:32,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:33:32,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:33:32,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:33:32,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:33:32,975.975 INFO    ] time= 05/06/2026 15:33:32
[2026-06-05 15:33:33,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:33:33,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:33:33,140.140 INFO    ] No existing commands found in stream
[2026-06-05 15:33:38,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:33:38,159.159 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 15:33:39,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:33:39,721.721 INFO    ] Checking for system updates...
[2026-06-05 15:33:39,757.757 INFO    ] 200
[2026-06-05 15:33:39,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:33:39,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:33:39,817.817 INFO    ] No update needed
[2026-06-05 15:33:39,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 15:33:39,853.853 INFO    ] 200
[2026-06-05 15:33:39,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:33:39,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:33:39,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:33:39,949.949 INFO    ] No camera update needed
[2026-06-05 15:33:39,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:33:39,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:33:39,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:33:39,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:33:42,006.006 INFO    ] ================================================
[2026-06-05 15:33:42,021.021 INFO    ] Launching Daemon at Fri Jun  5 15:33:42 IST 2026
[2026-06-05 15:33:42,032.032 INFO    ] ================================================
[2026-06-05 15:33:42,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:33:42
[2026-06-05 15:33:43,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:33:43,438.438 INFO    ] Initializing speech engine...
[2026-06-05 15:33:43,451.451 INFO    ] 2026-06-05 15:33:43
[2026-06-05 15:33:43,725.725 INFO    ] 2026-06-05 15:33:43
[2026-06-05 15:33:43,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:33:43,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:33:43,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:33:44,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:33:44,107.107 INFO    ] time= 05/06/2026 15:33:44
[2026-06-05 15:33:44,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:33:44,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:33:44,300.300 INFO    ] No existing commands found in stream
[2026-06-05 15:33:49,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:33:49,321.321 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 15:33:51,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:33:51,203.203 INFO    ] Checking for system updates...
[2026-06-05 15:33:51,240.240 INFO    ] 200
[2026-06-05 15:33:51,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:33:51,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:33:51,300.300 INFO    ] No update needed
[2026-06-05 15:33:51,302.302 INFO    ] Checking for camera pi updates...
[2026-06-05 15:33:51,336.336 INFO    ] 200
[2026-06-05 15:33:51,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:33:51,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:33:51,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:33:51,429.429 INFO    ] No camera update needed
[2026-06-05 15:33:51,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:33:51,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:33:51,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:33:51,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:33:53,486.486 INFO    ] ================================================
[2026-06-05 15:33:53,501.501 INFO    ] Launching Daemon at Fri Jun  5 15:33:53 IST 2026
[2026-06-05 15:33:53,512.512 INFO    ] ================================================
[2026-06-05 15:33:54,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:33:54
[2026-06-05 15:33:54,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:33:54,916.916 INFO    ] Initializing speech engine...
[2026-06-05 15:33:54,929.929 INFO    ] 2026-06-05 15:33:54
[2026-06-05 15:33:55,193.193 INFO    ] 2026-06-05 15:33:55
[2026-06-05 15:33:55,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:33:55,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:33:55,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:33:55,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:33:55,666.666 INFO    ] time= 05/06/2026 15:33:55
[2026-06-05 15:33:55,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:33:55,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:33:55,906.906 INFO    ] No existing commands found in stream
[2026-06-05 15:34:00,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:34:00,925.925 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-05 15:34:04,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:34:04,024.024 INFO    ] Checking for system updates...
[2026-06-05 15:34:04,064.064 INFO    ] 200
[2026-06-05 15:34:04,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:34:04,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:34:04,130.130 INFO    ] No update needed
[2026-06-05 15:34:04,132.132 INFO    ] Checking for camera pi updates...
[2026-06-05 15:34:04,166.166 INFO    ] 200
[2026-06-05 15:34:04,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:34:04,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:34:04,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:34:04,256.256 INFO    ] No camera update needed
[2026-06-05 15:34:04,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:34:04,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:34:04,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:34:04,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:34:06,313.313 INFO    ] ================================================
[2026-06-05 15:34:06,328.328 INFO    ] Launching Daemon at Fri Jun  5 15:34:06 IST 2026
[2026-06-05 15:34:06,339.339 INFO    ] ================================================
[2026-06-05 15:34:06,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:34:06
[2026-06-05 15:34:07,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:34:07,962.962 INFO    ] Initializing speech engine...
[2026-06-05 15:34:07,973.973 INFO    ] 2026-06-05 15:34:07
[2026-06-05 15:34:08,251.251 INFO    ] 2026-06-05 15:34:08
[2026-06-05 15:34:08,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:34:08,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:34:08,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:34:08,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:34:08,723.723 INFO    ] time= 05/06/2026 15:34:08
[2026-06-05 15:34:08,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:34:08,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:34:08,939.939 INFO    ] No existing commands found in stream
[2026-06-05 15:34:13,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:34:13,960.960 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 15:34:17,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:34:17,746.746 INFO    ] Checking for system updates...
[2026-06-05 15:34:17,783.783 INFO    ] 200
[2026-06-05 15:34:17,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:34:17,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:34:17,844.844 INFO    ] No update needed
[2026-06-05 15:34:17,847.847 INFO    ] Checking for camera pi updates...
[2026-06-05 15:34:17,883.883 INFO    ] 200
[2026-06-05 15:34:17,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:34:17,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:34:17,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:34:17,972.972 INFO    ] No camera update needed
[2026-06-05 15:34:17,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:34:17,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:34:17,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:34:17,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:34:20,030.030 INFO    ] ================================================
[2026-06-05 15:34:20,045.045 INFO    ] Launching Daemon at Fri Jun  5 15:34:20 IST 2026
[2026-06-05 15:34:20,056.056 INFO    ] ================================================
[2026-06-05 15:34:20,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:34:20
[2026-06-05 15:34:21,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:34:21,494.494 INFO    ] Initializing speech engine...
[2026-06-05 15:34:21,501.501 INFO    ] 2026-06-05 15:34:21
[2026-06-05 15:34:21,746.746 INFO    ] 2026-06-05 15:34:21
[2026-06-05 15:34:21,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:34:21,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:34:21,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:34:22,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:34:22,116.116 INFO    ] time= 05/06/2026 15:34:22
[2026-06-05 15:34:22,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:34:22,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:34:22,297.297 INFO    ] No existing commands found in stream
[2026-06-05 15:34:27,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:34:27,326.326 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 15:34:29,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:34:29,426.426 INFO    ] Checking for system updates...
[2026-06-05 15:34:29,466.466 INFO    ] 200
[2026-06-05 15:34:29,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 15:34:29,472.472 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 15:34:29,474.474 INFO    ] Checking for camera pi updates...
[2026-06-05 15:34:29,522.522 INFO    ] 200
[2026-06-05 15:34:29,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 15:34:29,527.527 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 15:34:29,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:34:29,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:34:29,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:34:29,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:34:31,586.586 INFO    ] ================================================
[2026-06-05 15:34:31,602.602 INFO    ] Launching Daemon at Fri Jun  5 15:34:31 IST 2026
[2026-06-05 15:34:31,612.612 INFO    ] ================================================
[2026-06-05 15:34:32,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:34:32
[2026-06-05 15:34:32,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:34:33,097.097 INFO    ] Initializing speech engine...
[2026-06-05 15:34:33,122.122 INFO    ] 2026-06-05 15:34:33
[2026-06-05 15:34:33,412.412 INFO    ] 2026-06-05 15:34:33
[2026-06-05 15:34:33,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:34:33,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:34:33,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:34:33,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:34:33,794.794 INFO    ] time= 05/06/2026 15:34:33
[2026-06-05 15:34:33,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:34:33,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:34:33,971.971 INFO    ] No existing commands found in stream
[2026-06-05 15:34:38,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:34:38,999.999 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 15:34:42,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:34:42,997.997 INFO    ] Checking for system updates...
[2026-06-05 15:34:43,033.033 INFO    ] 200
[2026-06-05 15:34:43,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:34:43,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:34:43,098.098 INFO    ] No update needed
[2026-06-05 15:34:43,101.101 INFO    ] Checking for camera pi updates...
[2026-06-05 15:34:43,135.135 INFO    ] 200
[2026-06-05 15:34:43,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:34:43,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:34:43,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:34:43,221.221 INFO    ] No camera update needed
[2026-06-05 15:34:43,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:34:43,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:34:43,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:34:43,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:34:45,277.277 INFO    ] ================================================
[2026-06-05 15:34:45,292.292 INFO    ] Launching Daemon at Fri Jun  5 15:34:45 IST 2026
[2026-06-05 15:34:45,303.303 INFO    ] ================================================
[2026-06-05 15:34:45,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:34:45
[2026-06-05 15:34:46,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:34:46,716.716 INFO    ] Initializing speech engine...
[2026-06-05 15:34:46,730.730 INFO    ] 2026-06-05 15:34:46
[2026-06-05 15:34:46,993.993 INFO    ] 2026-06-05 15:34:46
[2026-06-05 15:34:47,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:34:47,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:34:47,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:34:47,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:34:47,489.489 INFO    ] time= 05/06/2026 15:34:47
[2026-06-05 15:34:47,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:34:47,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:34:47,704.704 INFO    ] No existing commands found in stream
[2026-06-05 15:34:52,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:34:52,722.722 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 15:34:56,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:34:56,329.329 INFO    ] Checking for system updates...
[2026-06-05 15:34:56,367.367 INFO    ] 200
[2026-06-05 15:34:56,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:34:56,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:34:56,427.427 INFO    ] No update needed
[2026-06-05 15:34:56,430.430 INFO    ] Checking for camera pi updates...
[2026-06-05 15:34:56,466.466 INFO    ] 200
[2026-06-05 15:34:56,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:34:56,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:34:56,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:34:56,557.557 INFO    ] No camera update needed
[2026-06-05 15:34:56,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:34:56,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:34:56,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:34:56,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:34:58,617.617 INFO    ] ================================================
[2026-06-05 15:34:58,634.634 INFO    ] Launching Daemon at Fri Jun  5 15:34:58 IST 2026
[2026-06-05 15:34:58,644.644 INFO    ] ================================================
[2026-06-05 15:34:59,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:34:59
[2026-06-05 15:34:59,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:35:00,075.075 INFO    ] Initializing speech engine...
[2026-06-05 15:35:00,084.084 INFO    ] 2026-06-05 15:35:00
[2026-06-05 15:35:00,331.331 INFO    ] 2026-06-05 15:35:00
[2026-06-05 15:35:00,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:35:00,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:35:00,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:35:00,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:35:00,826.826 INFO    ] time= 05/06/2026 15:35:00
[2026-06-05 15:35:00,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:35:00,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:35:00,961.961 INFO    ] No existing commands found in stream
[2026-06-05 15:35:05,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:35:05,995.995 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 15:35:07,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:35:07,607.607 INFO    ] Checking for system updates...
[2026-06-05 15:35:07,643.643 INFO    ] 200
[2026-06-05 15:35:07,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:07,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:35:07,719.719 INFO    ] No update needed
[2026-06-05 15:35:07,722.722 INFO    ] Checking for camera pi updates...
[2026-06-05 15:35:07,756.756 INFO    ] 200
[2026-06-05 15:35:07,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:07,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:35:07,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:35:07,836.836 INFO    ] No camera update needed
[2026-06-05 15:35:07,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:35:07,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:35:07,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:35:07,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:35:09,895.895 INFO    ] ================================================
[2026-06-05 15:35:09,910.910 INFO    ] Launching Daemon at Fri Jun  5 15:35:09 IST 2026
[2026-06-05 15:35:09,921.921 INFO    ] ================================================
[2026-06-05 15:35:10,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:35:10
[2026-06-05 15:35:11,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:35:11,337.337 INFO    ] Initializing speech engine...
[2026-06-05 15:35:11,352.352 INFO    ] 2026-06-05 15:35:11
[2026-06-05 15:35:11,619.619 INFO    ] 2026-06-05 15:35:11
[2026-06-05 15:35:11,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:35:11,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:35:11,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:35:11,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:35:11,999.999 INFO    ] time= 05/06/2026 15:35:11
[2026-06-05 15:35:12,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:35:12,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:35:12,192.192 INFO    ] No existing commands found in stream
[2026-06-05 15:35:17,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:35:17,210.210 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 15:35:17,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:35:17,747.747 INFO    ] Checking for system updates...
[2026-06-05 15:35:17,787.787 INFO    ] 200
[2026-06-05 15:35:17,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:17,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:35:17,846.846 INFO    ] No update needed
[2026-06-05 15:35:17,849.849 INFO    ] Checking for camera pi updates...
[2026-06-05 15:35:17,884.884 INFO    ] 200
[2026-06-05 15:35:17,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:17,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:35:17,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:35:17,963.963 INFO    ] No camera update needed
[2026-06-05 15:35:17,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:35:17,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:35:17,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:35:17,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:35:20,022.022 INFO    ] ================================================
[2026-06-05 15:35:20,037.037 INFO    ] Launching Daemon at Fri Jun  5 15:35:20 IST 2026
[2026-06-05 15:35:20,047.047 INFO    ] ================================================
[2026-06-05 15:35:20,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:35:20
[2026-06-05 15:35:21,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:35:21,467.467 INFO    ] Initializing speech engine...
[2026-06-05 15:35:21,475.475 INFO    ] 2026-06-05 15:35:21
[2026-06-05 15:35:21,770.770 INFO    ] 2026-06-05 15:35:21
[2026-06-05 15:35:21,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:35:23,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:35:23,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:35:24,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:35:24,197.197 INFO    ] time= 05/06/2026 15:35:24
[2026-06-05 15:35:24,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:35:24,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:35:24,293.293 INFO    ] No existing commands found in stream
[2026-06-05 15:35:29,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:35:29,308.308 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 15:35:33,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:35:33,379.379 INFO    ] Checking for system updates...
[2026-06-05 15:35:33,416.416 INFO    ] 200
[2026-06-05 15:35:33,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:33,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:35:33,474.474 INFO    ] No update needed
[2026-06-05 15:35:33,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 15:35:33,513.513 INFO    ] 200
[2026-06-05 15:35:33,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:33,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:35:33,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:35:33,606.606 INFO    ] No camera update needed
[2026-06-05 15:35:33,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:35:33,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:35:33,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:35:33,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:35:35,667.667 INFO    ] ================================================
[2026-06-05 15:35:35,683.683 INFO    ] Launching Daemon at Fri Jun  5 15:35:35 IST 2026
[2026-06-05 15:35:35,694.694 INFO    ] ================================================
[2026-06-05 15:35:36,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:35:36
[2026-06-05 15:35:37,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:35:37,357.357 INFO    ] Initializing speech engine...
[2026-06-05 15:35:37,368.368 INFO    ] 2026-06-05 15:35:37
[2026-06-05 15:35:37,655.655 INFO    ] 2026-06-05 15:35:37
[2026-06-05 15:35:37,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:35:37,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:35:37,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:35:38,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:35:38,142.142 INFO    ] time= 05/06/2026 15:35:38
[2026-06-05 15:35:38,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:35:38,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:35:38,343.343 INFO    ] No existing commands found in stream
[2026-06-05 15:35:43,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:35:43,380.380 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 15:35:46,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:35:46,470.470 INFO    ] Checking for system updates...
[2026-06-05 15:35:46,511.511 INFO    ] 200
[2026-06-05 15:35:46,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:46,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:35:46,579.579 INFO    ] No update needed
[2026-06-05 15:35:46,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 15:35:46,622.622 INFO    ] 200
[2026-06-05 15:35:46,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:46,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:35:46,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:35:46,717.717 INFO    ] No camera update needed
[2026-06-05 15:35:46,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:35:46,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:35:46,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:35:46,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:35:48,777.777 INFO    ] ================================================
[2026-06-05 15:35:48,793.793 INFO    ] Launching Daemon at Fri Jun  5 15:35:48 IST 2026
[2026-06-05 15:35:48,803.803 INFO    ] ================================================
[2026-06-05 15:35:49,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:35:49
[2026-06-05 15:35:50,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:35:50,459.459 INFO    ] Initializing speech engine...
[2026-06-05 15:35:50,471.471 INFO    ] 2026-06-05 15:35:50
[2026-06-05 15:35:50,757.757 INFO    ] 2026-06-05 15:35:50
[2026-06-05 15:35:50,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:35:51,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:35:51,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:35:51,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:35:51,293.293 INFO    ] time= 05/06/2026 15:35:51
[2026-06-05 15:35:51,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:35:51,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:35:51,464.464 INFO    ] No existing commands found in stream
[2026-06-05 15:35:56,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:35:56,493.493 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 15:35:58,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:35:58,987.987 INFO    ] Checking for system updates...
[2026-06-05 15:35:59,025.025 INFO    ] 200
[2026-06-05 15:35:59,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:59,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:35:59,085.085 INFO    ] No update needed
[2026-06-05 15:35:59,088.088 INFO    ] Checking for camera pi updates...
[2026-06-05 15:35:59,122.122 INFO    ] 200
[2026-06-05 15:35:59,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:35:59,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:35:59,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:35:59,220.220 INFO    ] No camera update needed
[2026-06-05 15:35:59,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:35:59,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:35:59,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:35:59,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:36:01,296.296 INFO    ] ================================================
[2026-06-05 15:36:01,330.330 INFO    ] Launching Daemon at Fri Jun  5 15:36:01 IST 2026
[2026-06-05 15:36:01,358.358 INFO    ] ================================================
[2026-06-05 15:36:02,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:36:02
[2026-06-05 15:36:02,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:36:03,255.255 INFO    ] Initializing speech engine...
[2026-06-05 15:36:03,261.261 INFO    ] 2026-06-05 15:36:03
[2026-06-05 15:36:03,564.564 INFO    ] 2026-06-05 15:36:03
[2026-06-05 15:36:03,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:36:03,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:36:03,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:36:03,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:36:03,948.948 INFO    ] time= 05/06/2026 15:36:03
[2026-06-05 15:36:03,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:36:03,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:36:04,072.072 INFO    ] No existing commands found in stream
[2026-06-05 15:36:09,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:36:09,088.088 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 15:36:12,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:36:12,377.377 INFO    ] Checking for system updates...
[2026-06-05 15:36:12,414.414 INFO    ] 200
[2026-06-05 15:36:12,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:36:12,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:36:12,471.471 INFO    ] No update needed
[2026-06-05 15:36:12,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 15:36:12,511.511 INFO    ] 200
[2026-06-05 15:36:12,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:36:12,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:36:12,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:36:12,597.597 INFO    ] No camera update needed
[2026-06-05 15:36:12,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:36:12,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:36:12,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:36:12,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:36:14,652.652 INFO    ] ================================================
[2026-06-05 15:36:14,667.667 INFO    ] Launching Daemon at Fri Jun  5 15:36:14 IST 2026
[2026-06-05 15:36:14,677.677 INFO    ] ================================================
[2026-06-05 15:36:15,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:36:15
[2026-06-05 15:36:15,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:36:16,117.117 INFO    ] Initializing speech engine...
[2026-06-05 15:36:16,131.131 INFO    ] 2026-06-05 15:36:16
[2026-06-05 15:36:16,419.419 INFO    ] 2026-06-05 15:36:16
[2026-06-05 15:36:16,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:36:16,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:36:16,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:36:16,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:36:16,843.843 INFO    ] time= 05/06/2026 15:36:16
[2026-06-05 15:36:16,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:36:16,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:36:17,055.055 INFO    ] No existing commands found in stream
[2026-06-05 15:36:22,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:36:22,083.083 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 15:36:25,166.166 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:36:25,169.169 INFO    ] Checking for system updates...
[2026-06-05 15:36:25,206.206 INFO    ] 200
[2026-06-05 15:36:25,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:36:25,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:36:25,270.270 INFO    ] No update needed
[2026-06-05 15:36:25,272.272 INFO    ] Checking for camera pi updates...
[2026-06-05 15:36:25,306.306 INFO    ] 200
[2026-06-05 15:36:25,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:36:25,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:36:25,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:36:25,398.398 INFO    ] No camera update needed
[2026-06-05 15:36:25,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:36:25,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:36:25,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:36:25,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:36:27,454.454 INFO    ] ================================================
[2026-06-05 15:36:27,469.469 INFO    ] Launching Daemon at Fri Jun  5 15:36:27 IST 2026
[2026-06-05 15:36:27,480.480 INFO    ] ================================================
[2026-06-05 15:36:28,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:36:28
[2026-06-05 15:36:28,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:36:28,929.929 INFO    ] Initializing speech engine...
[2026-06-05 15:36:28,942.942 INFO    ] 2026-06-05 15:36:28
[2026-06-05 15:36:29,233.233 INFO    ] 2026-06-05 15:36:29
[2026-06-05 15:36:29,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:36:29,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:36:29,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:36:29,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:36:29,623.623 INFO    ] time= 05/06/2026 15:36:29
[2026-06-05 15:36:29,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:36:29,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:36:29,738.738 INFO    ] No existing commands found in stream
[2026-06-05 15:36:34,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:36:34,754.754 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 15:36:36,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:36:36,716.716 INFO    ] Checking for system updates...
[2026-06-05 15:36:36,751.751 INFO    ] 200
[2026-06-05 15:36:36,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:36:36,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:36:36,809.809 INFO    ] No update needed
[2026-06-05 15:36:36,811.811 INFO    ] Checking for camera pi updates...
[2026-06-05 15:36:36,845.845 INFO    ] 200
[2026-06-05 15:36:36,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:36:36,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:36:37,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:36:37,039.039 INFO    ] No camera update needed
[2026-06-05 15:36:37,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:36:37,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:36:37,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:36:37,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:36:39,096.096 INFO    ] ================================================
[2026-06-05 15:36:39,111.111 INFO    ] Launching Daemon at Fri Jun  5 15:36:39 IST 2026
[2026-06-05 15:36:39,122.122 INFO    ] ================================================
[2026-06-05 15:36:39,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:36:39
[2026-06-05 15:36:40,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:36:40,525.525 INFO    ] Initializing speech engine...
[2026-06-05 15:36:40,533.533 INFO    ] 2026-06-05 15:36:40
[2026-06-05 15:36:40,827.827 INFO    ] 2026-06-05 15:36:40
[2026-06-05 15:36:40,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:36:41,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:36:41,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:36:41,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:36:41,248.248 INFO    ] time= 05/06/2026 15:36:41
[2026-06-05 15:36:41,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:36:41,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:36:41,433.433 INFO    ] No existing commands found in stream
[2026-06-05 15:36:46,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:36:46,466.466 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 15:36:49,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:36:49,817.817 INFO    ] Checking for system updates...
[2026-06-05 15:36:49,852.852 INFO    ] 200
[2026-06-05 15:36:49,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:36:49,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:36:49,917.917 INFO    ] No update needed
[2026-06-05 15:36:49,919.919 INFO    ] Checking for camera pi updates...
[2026-06-05 15:36:49,952.952 INFO    ] 200
[2026-06-05 15:36:49,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:36:50,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:36:50,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:36:50,051.051 INFO    ] No camera update needed
[2026-06-05 15:36:50,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:36:50,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:36:50,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:36:50,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:36:52,107.107 INFO    ] ================================================
[2026-06-05 15:36:52,123.123 INFO    ] Launching Daemon at Fri Jun  5 15:36:52 IST 2026
[2026-06-05 15:36:52,134.134 INFO    ] ================================================
[2026-06-05 15:36:52,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:36:52
[2026-06-05 15:36:53,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:36:53,599.599 INFO    ] Initializing speech engine...
[2026-06-05 15:36:53,609.609 INFO    ] 2026-06-05 15:36:53
[2026-06-05 15:36:53,860.860 INFO    ] 2026-06-05 15:36:53
[2026-06-05 15:36:53,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:36:54,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:36:54,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:36:54,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:36:54,340.340 INFO    ] time= 05/06/2026 15:36:54
[2026-06-05 15:36:54,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:36:54,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:36:54,556.556 INFO    ] No existing commands found in stream
[2026-06-05 15:36:59,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:36:59,586.586 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 15:37:02,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:37:02,489.489 INFO    ] Checking for system updates...
[2026-06-05 15:37:02,531.531 INFO    ] 200
[2026-06-05 15:37:02,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:02,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:37:02,600.600 INFO    ] No update needed
[2026-06-05 15:37:02,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 15:37:02,643.643 INFO    ] 200
[2026-06-05 15:37:02,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:02,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:37:02,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:37:02,732.732 INFO    ] No camera update needed
[2026-06-05 15:37:02,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:37:02,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:37:02,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:37:02,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:37:04,793.793 INFO    ] ================================================
[2026-06-05 15:37:04,808.808 INFO    ] Launching Daemon at Fri Jun  5 15:37:04 IST 2026
[2026-06-05 15:37:04,819.819 INFO    ] ================================================
[2026-06-05 15:37:05,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:37:05
[2026-06-05 15:37:06,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:37:06,278.278 INFO    ] Initializing speech engine...
[2026-06-05 15:37:06,294.294 INFO    ] 2026-06-05 15:37:06
[2026-06-05 15:37:06,580.580 INFO    ] 2026-06-05 15:37:06
[2026-06-05 15:37:06,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:37:06,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:37:06,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:37:06,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:37:06,984.984 INFO    ] time= 05/06/2026 15:37:06
[2026-06-05 15:37:06,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:37:07,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:37:07,177.177 INFO    ] No existing commands found in stream
[2026-06-05 15:37:12,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:37:12,195.195 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 15:37:13,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:37:13,757.757 INFO    ] Checking for system updates...
[2026-06-05 15:37:13,793.793 INFO    ] 200
[2026-06-05 15:37:13,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:13,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:37:13,851.851 INFO    ] No update needed
[2026-06-05 15:37:13,854.854 INFO    ] Checking for camera pi updates...
[2026-06-05 15:37:13,888.888 INFO    ] 200
[2026-06-05 15:37:13,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:13,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:37:13,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:37:13,973.973 INFO    ] No camera update needed
[2026-06-05 15:37:13,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:37:13,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:37:13,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:37:13,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:37:16,028.028 INFO    ] ================================================
[2026-06-05 15:37:16,043.043 INFO    ] Launching Daemon at Fri Jun  5 15:37:16 IST 2026
[2026-06-05 15:37:16,054.054 INFO    ] ================================================
[2026-06-05 15:37:16,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:37:16
[2026-06-05 15:37:17,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:37:17,480.480 INFO    ] Initializing speech engine...
[2026-06-05 15:37:17,489.489 INFO    ] 2026-06-05 15:37:17
[2026-06-05 15:37:17,780.780 INFO    ] 2026-06-05 15:37:17
[2026-06-05 15:37:17,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:37:18,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:37:18,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:37:18,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:37:18,157.157 INFO    ] time= 05/06/2026 15:37:18
[2026-06-05 15:37:18,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:37:18,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:37:18,282.282 INFO    ] No existing commands found in stream
[2026-06-05 15:37:23,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:37:23,297.297 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 15:37:26,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:37:26,317.317 INFO    ] Checking for system updates...
[2026-06-05 15:37:26,357.357 INFO    ] 200
[2026-06-05 15:37:26,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:26,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:37:26,413.413 INFO    ] No update needed
[2026-06-05 15:37:26,416.416 INFO    ] Checking for camera pi updates...
[2026-06-05 15:37:26,453.453 INFO    ] 200
[2026-06-05 15:37:26,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:26,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:37:26,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:37:26,539.539 INFO    ] No camera update needed
[2026-06-05 15:37:26,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:37:26,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:37:26,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:37:26,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:37:28,597.597 INFO    ] ================================================
[2026-06-05 15:37:28,612.612 INFO    ] Launching Daemon at Fri Jun  5 15:37:28 IST 2026
[2026-06-05 15:37:28,622.622 INFO    ] ================================================
[2026-06-05 15:37:29,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:37:29
[2026-06-05 15:37:29,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:37:30,229.229 INFO    ] Initializing speech engine...
[2026-06-05 15:37:30,242.242 INFO    ] 2026-06-05 15:37:30
[2026-06-05 15:37:30,531.531 INFO    ] 2026-06-05 15:37:30
[2026-06-05 15:37:30,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:37:30,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:37:30,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:37:31,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:37:31,125.125 INFO    ] time= 05/06/2026 15:37:31
[2026-06-05 15:37:31,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:37:31,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:37:31,353.353 INFO    ] No existing commands found in stream
[2026-06-05 15:37:36,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:37:36,388.388 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 15:37:40,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:37:40,036.036 INFO    ] Checking for system updates...
[2026-06-05 15:37:40,073.073 INFO    ] 200
[2026-06-05 15:37:40,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:40,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:37:40,132.132 INFO    ] No update needed
[2026-06-05 15:37:40,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 15:37:40,173.173 INFO    ] 200
[2026-06-05 15:37:40,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:40,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:37:40,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:37:40,268.268 INFO    ] No camera update needed
[2026-06-05 15:37:40,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:37:40,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:37:40,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:37:40,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:37:42,325.325 INFO    ] ================================================
[2026-06-05 15:37:42,340.340 INFO    ] Launching Daemon at Fri Jun  5 15:37:42 IST 2026
[2026-06-05 15:37:42,351.351 INFO    ] ================================================
[2026-06-05 15:37:42,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:37:42
[2026-06-05 15:37:43,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:37:43,952.952 INFO    ] Initializing speech engine...
[2026-06-05 15:37:43,966.966 INFO    ] 2026-06-05 15:37:43
[2026-06-05 15:37:44,248.248 INFO    ] 2026-06-05 15:37:44
[2026-06-05 15:37:44,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:37:44,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:37:44,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:37:44,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:37:44,727.727 INFO    ] time= 05/06/2026 15:37:44
[2026-06-05 15:37:44,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:37:44,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:37:44,940.940 INFO    ] No existing commands found in stream
[2026-06-05 15:37:49,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:37:49,969.969 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 15:37:54,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:37:54,291.291 INFO    ] Checking for system updates...
[2026-06-05 15:37:54,328.328 INFO    ] 200
[2026-06-05 15:37:54,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:54,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:37:54,387.387 INFO    ] No update needed
[2026-06-05 15:37:54,390.390 INFO    ] Checking for camera pi updates...
[2026-06-05 15:37:54,425.425 INFO    ] 200
[2026-06-05 15:37:54,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:37:54,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:37:54,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:37:54,518.518 INFO    ] No camera update needed
[2026-06-05 15:37:54,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:37:54,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:37:54,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:37:54,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:37:56,573.573 INFO    ] ================================================
[2026-06-05 15:37:56,588.588 INFO    ] Launching Daemon at Fri Jun  5 15:37:56 IST 2026
[2026-06-05 15:37:56,599.599 INFO    ] ================================================
[2026-06-05 15:37:57,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:37:57
[2026-06-05 15:37:57,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:37:58,059.059 INFO    ] Initializing speech engine...
[2026-06-05 15:37:58,070.070 INFO    ] 2026-06-05 15:37:58
[2026-06-05 15:37:58,337.337 INFO    ] 2026-06-05 15:37:58
[2026-06-05 15:37:58,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:37:58,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:37:58,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:37:58,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:37:58,758.758 INFO    ] time= 05/06/2026 15:37:58
[2026-06-05 15:37:58,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:37:58,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:37:58,844.844 INFO    ] No existing commands found in stream
[2026-06-05 15:38:03,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:38:03,871.871 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 15:38:04,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:38:04,353.353 INFO    ] Checking for system updates...
[2026-06-05 15:38:04,389.389 INFO    ] 200
[2026-06-05 15:38:04,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:04,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:38:04,453.453 INFO    ] No update needed
[2026-06-05 15:38:04,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 15:38:04,488.488 INFO    ] 200
[2026-06-05 15:38:04,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:04,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:38:04,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:38:04,587.587 INFO    ] No camera update needed
[2026-06-05 15:38:04,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:38:04,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:38:04,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:38:04,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:38:06,643.643 INFO    ] ================================================
[2026-06-05 15:38:06,659.659 INFO    ] Launching Daemon at Fri Jun  5 15:38:06 IST 2026
[2026-06-05 15:38:06,670.670 INFO    ] ================================================
[2026-06-05 15:38:07,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:38:07
[2026-06-05 15:38:07,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:38:08,153.153 INFO    ] Initializing speech engine...
[2026-06-05 15:38:08,171.171 INFO    ] 2026-06-05 15:38:08
[2026-06-05 15:38:08,441.441 INFO    ] 2026-06-05 15:38:08
[2026-06-05 15:38:08,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:38:08,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:38:08,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:38:08,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:38:08,851.851 INFO    ] time= 05/06/2026 15:38:08
[2026-06-05 15:38:08,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:38:08,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:38:08,934.934 INFO    ] No existing commands found in stream
[2026-06-05 15:38:13,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:38:13,968.968 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 15:38:16,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:38:16,121.121 INFO    ] Checking for system updates...
[2026-06-05 15:38:16,157.157 INFO    ] 200
[2026-06-05 15:38:16,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:16,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:38:16,214.214 INFO    ] No update needed
[2026-06-05 15:38:16,217.217 INFO    ] Checking for camera pi updates...
[2026-06-05 15:38:16,251.251 INFO    ] 200
[2026-06-05 15:38:16,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:16,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:38:16,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:38:16,343.343 INFO    ] No camera update needed
[2026-06-05 15:38:16,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:38:16,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:38:16,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:38:16,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:38:18,400.400 INFO    ] ================================================
[2026-06-05 15:38:18,416.416 INFO    ] Launching Daemon at Fri Jun  5 15:38:18 IST 2026
[2026-06-05 15:38:18,426.426 INFO    ] ================================================
[2026-06-05 15:38:18,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:38:18
[2026-06-05 15:38:19,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:38:19,852.852 INFO    ] Initializing speech engine...
[2026-06-05 15:38:19,861.861 INFO    ] 2026-06-05 15:38:19
[2026-06-05 15:38:20,153.153 INFO    ] 2026-06-05 15:38:20
[2026-06-05 15:38:20,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:38:20,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:38:20,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:38:20,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:38:20,575.575 INFO    ] time= 05/06/2026 15:38:20
[2026-06-05 15:38:20,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:38:20,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:38:20,647.647 INFO    ] No existing commands found in stream
[2026-06-05 15:38:25,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:38:25,660.660 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 15:38:27,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:38:27,075.075 INFO    ] Checking for system updates...
[2026-06-05 15:38:27,111.111 INFO    ] 200
[2026-06-05 15:38:27,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:27,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:38:27,169.169 INFO    ] No update needed
[2026-06-05 15:38:27,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 15:38:27,206.206 INFO    ] 200
[2026-06-05 15:38:27,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:27,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:38:27,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:38:27,299.299 INFO    ] No camera update needed
[2026-06-05 15:38:27,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:38:27,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:38:27,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:38:27,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:38:29,357.357 INFO    ] ================================================
[2026-06-05 15:38:29,372.372 INFO    ] Launching Daemon at Fri Jun  5 15:38:29 IST 2026
[2026-06-05 15:38:29,383.383 INFO    ] ================================================
[2026-06-05 15:38:29,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:38:29
[2026-06-05 15:38:30,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:38:30,803.803 INFO    ] Initializing speech engine...
[2026-06-05 15:38:30,818.818 INFO    ] 2026-06-05 15:38:30
[2026-06-05 15:38:31,098.098 INFO    ] 2026-06-05 15:38:31
[2026-06-05 15:38:31,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:38:31,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:38:31,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:38:31,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:38:31,483.483 INFO    ] time= 05/06/2026 15:38:31
[2026-06-05 15:38:31,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:38:31,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:38:31,665.665 INFO    ] No existing commands found in stream
[2026-06-05 15:38:36,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:38:36,700.700 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 15:38:38,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:38:38,358.358 INFO    ] Checking for system updates...
[2026-06-05 15:38:38,398.398 INFO    ] 200
[2026-06-05 15:38:38,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:38,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:38:38,457.457 INFO    ] No update needed
[2026-06-05 15:38:38,460.460 INFO    ] Checking for camera pi updates...
[2026-06-05 15:38:38,494.494 INFO    ] 200
[2026-06-05 15:38:38,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:38,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:38:38,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:38:38,584.584 INFO    ] No camera update needed
[2026-06-05 15:38:38,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:38:38,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:38:38,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:38:38,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:38:40,642.642 INFO    ] ================================================
[2026-06-05 15:38:40,657.657 INFO    ] Launching Daemon at Fri Jun  5 15:38:40 IST 2026
[2026-06-05 15:38:40,668.668 INFO    ] ================================================
[2026-06-05 15:38:41,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:38:41
[2026-06-05 15:38:41,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:38:42,127.127 INFO    ] Initializing speech engine...
[2026-06-05 15:38:42,136.136 INFO    ] 2026-06-05 15:38:42
[2026-06-05 15:38:42,404.404 INFO    ] 2026-06-05 15:38:42
[2026-06-05 15:38:42,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:38:42,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:38:42,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:38:42,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:38:42,812.812 INFO    ] time= 05/06/2026 15:38:42
[2026-06-05 15:38:42,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:38:42,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:38:42,900.900 INFO    ] No existing commands found in stream
[2026-06-05 15:38:47,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:38:47,928.928 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 15:38:50,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:38:50,366.366 INFO    ] Checking for system updates...
[2026-06-05 15:38:50,403.403 INFO    ] 200
[2026-06-05 15:38:50,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:50,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:38:50,461.461 INFO    ] No update needed
[2026-06-05 15:38:50,463.463 INFO    ] Checking for camera pi updates...
[2026-06-05 15:38:50,500.500 INFO    ] 200
[2026-06-05 15:38:50,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:38:50,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:38:50,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:38:50,691.691 INFO    ] No camera update needed
[2026-06-05 15:38:50,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:38:50,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:38:50,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:38:50,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:38:52,747.747 INFO    ] ================================================
[2026-06-05 15:38:52,762.762 INFO    ] Launching Daemon at Fri Jun  5 15:38:52 IST 2026
[2026-06-05 15:38:52,773.773 INFO    ] ================================================
[2026-06-05 15:38:53,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:38:53
[2026-06-05 15:38:53,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:38:54,237.237 INFO    ] Initializing speech engine...
[2026-06-05 15:38:54,246.246 INFO    ] 2026-06-05 15:38:54
[2026-06-05 15:38:54,494.494 INFO    ] 2026-06-05 15:38:54
[2026-06-05 15:38:54,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:38:54,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:38:54,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:38:54,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:38:54,864.864 INFO    ] time= 05/06/2026 15:38:54
[2026-06-05 15:38:54,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:38:54,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:38:55,031.031 INFO    ] No existing commands found in stream
[2026-06-05 15:39:00,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:39:00,065.065 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 15:39:02,429.429 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:39:02,433.433 INFO    ] Checking for system updates...
[2026-06-05 15:39:02,478.478 INFO    ] 200
[2026-06-05 15:39:02,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:02,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:39:02,544.544 INFO    ] No update needed
[2026-06-05 15:39:02,547.547 INFO    ] Checking for camera pi updates...
[2026-06-05 15:39:02,588.588 INFO    ] 200
[2026-06-05 15:39:02,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:02,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:39:02,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:39:02,674.674 INFO    ] No camera update needed
[2026-06-05 15:39:02,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:39:02,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:39:02,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:39:02,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:39:04,756.756 INFO    ] ================================================
[2026-06-05 15:39:04,771.771 INFO    ] Launching Daemon at Fri Jun  5 15:39:04 IST 2026
[2026-06-05 15:39:04,782.782 INFO    ] ================================================
[2026-06-05 15:39:05,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:39:05
[2026-06-05 15:39:05,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:39:06,260.260 INFO    ] Initializing speech engine...
[2026-06-05 15:39:06,266.266 INFO    ] 2026-06-05 15:39:06
[2026-06-05 15:39:06,541.541 INFO    ] 2026-06-05 15:39:06
[2026-06-05 15:39:06,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:39:06,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:39:06,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:39:06,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:39:06,993.993 INFO    ] time= 05/06/2026 15:39:06
[2026-06-05 15:39:07,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:39:07,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:39:07,201.201 INFO    ] No existing commands found in stream
[2026-06-05 15:39:12,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:39:12,217.217 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 15:39:16,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:39:16,265.265 INFO    ] Checking for system updates...
[2026-06-05 15:39:16,304.304 INFO    ] 200
[2026-06-05 15:39:16,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:16,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:39:16,361.361 INFO    ] No update needed
[2026-06-05 15:39:16,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 15:39:16,397.397 INFO    ] 200
[2026-06-05 15:39:16,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:16,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:39:16,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:39:16,492.492 INFO    ] No camera update needed
[2026-06-05 15:39:16,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:39:16,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:39:16,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:39:16,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:39:18,545.545 INFO    ] ================================================
[2026-06-05 15:39:18,560.560 INFO    ] Launching Daemon at Fri Jun  5 15:39:18 IST 2026
[2026-06-05 15:39:18,571.571 INFO    ] ================================================
[2026-06-05 15:39:19,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:39:19
[2026-06-05 15:39:19,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:39:19,988.988 INFO    ] Initializing speech engine...
[2026-06-05 15:39:20,003.003 INFO    ] 2026-06-05 15:39:19
[2026-06-05 15:39:20,268.268 INFO    ] 2026-06-05 15:39:20
[2026-06-05 15:39:20,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:39:20,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:39:20,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:39:20,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:39:20,760.760 INFO    ] time= 05/06/2026 15:39:20
[2026-06-05 15:39:20,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:39:20,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:39:20,999.999 INFO    ] No existing commands found in stream
[2026-06-05 15:39:26,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:39:26,016.016 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 15:39:28,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:39:28,668.668 INFO    ] Checking for system updates...
[2026-06-05 15:39:28,706.706 INFO    ] 200
[2026-06-05 15:39:28,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:28,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:39:28,764.764 INFO    ] No update needed
[2026-06-05 15:39:28,767.767 INFO    ] Checking for camera pi updates...
[2026-06-05 15:39:28,801.801 INFO    ] 200
[2026-06-05 15:39:28,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:28,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:39:28,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:39:28,911.911 INFO    ] No camera update needed
[2026-06-05 15:39:28,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:39:28,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:39:28,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:39:28,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:39:30,965.965 INFO    ] ================================================
[2026-06-05 15:39:30,980.980 INFO    ] Launching Daemon at Fri Jun  5 15:39:30 IST 2026
[2026-06-05 15:39:30,990.990 INFO    ] ================================================
[2026-06-05 15:39:31,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:39:31
[2026-06-05 15:39:32,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:39:32,601.601 INFO    ] Initializing speech engine...
[2026-06-05 15:39:32,614.614 INFO    ] 2026-06-05 15:39:32
[2026-06-05 15:39:32,882.882 INFO    ] 2026-06-05 15:39:32
[2026-06-05 15:39:32,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:39:33,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:39:33,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:39:33,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:39:33,372.372 INFO    ] time= 05/06/2026 15:39:33
[2026-06-05 15:39:33,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:39:33,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:39:33,523.523 INFO    ] No existing commands found in stream
[2026-06-05 15:39:38,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:39:38,541.541 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 15:39:40,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:39:40,897.897 INFO    ] Checking for system updates...
[2026-06-05 15:39:40,933.933 INFO    ] 200
[2026-06-05 15:39:40,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:40,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:39:40,991.991 INFO    ] No update needed
[2026-06-05 15:39:40,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 15:39:41,027.027 INFO    ] 200
[2026-06-05 15:39:41,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:41,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:39:41,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:39:41,113.113 INFO    ] No camera update needed
[2026-06-05 15:39:41,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:39:41,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:39:41,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:39:41,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:39:43,167.167 INFO    ] ================================================
[2026-06-05 15:39:43,182.182 INFO    ] Launching Daemon at Fri Jun  5 15:39:43 IST 2026
[2026-06-05 15:39:43,193.193 INFO    ] ================================================
[2026-06-05 15:39:43,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:39:43
[2026-06-05 15:39:44,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:39:44,663.663 INFO    ] Initializing speech engine...
[2026-06-05 15:39:44,672.672 INFO    ] 2026-06-05 15:39:44
[2026-06-05 15:39:44,931.931 INFO    ] 2026-06-05 15:39:44
[2026-06-05 15:39:44,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:39:45,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:39:45,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:39:45,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:39:45,473.473 INFO    ] time= 05/06/2026 15:39:45
[2026-06-05 15:39:45,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:39:45,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:39:45,651.651 INFO    ] No existing commands found in stream
[2026-06-05 15:39:50,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:39:50,680.680 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 15:39:54,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:39:54,519.519 INFO    ] Checking for system updates...
[2026-06-05 15:39:54,557.557 INFO    ] 200
[2026-06-05 15:39:54,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:54,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:39:54,614.614 INFO    ] No update needed
[2026-06-05 15:39:54,616.616 INFO    ] Checking for camera pi updates...
[2026-06-05 15:39:54,653.653 INFO    ] 200
[2026-06-05 15:39:54,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:39:54,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:39:54,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:39:54,743.743 INFO    ] No camera update needed
[2026-06-05 15:39:54,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:39:54,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:39:54,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:39:54,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:39:56,799.799 INFO    ] ================================================
[2026-06-05 15:39:56,814.814 INFO    ] Launching Daemon at Fri Jun  5 15:39:56 IST 2026
[2026-06-05 15:39:56,824.824 INFO    ] ================================================
[2026-06-05 15:39:57,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:39:57
[2026-06-05 15:39:57,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:39:58,245.245 INFO    ] Initializing speech engine...
[2026-06-05 15:39:58,258.258 INFO    ] 2026-06-05 15:39:58
[2026-06-05 15:39:58,509.509 INFO    ] 2026-06-05 15:39:58
[2026-06-05 15:39:58,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:39:58,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:39:58,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:39:58,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:39:58,974.974 INFO    ] time= 05/06/2026 15:39:58
[2026-06-05 15:39:59,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:39:59,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:39:59,215.215 INFO    ] No existing commands found in stream
[2026-06-05 15:40:04,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:40:04,243.243 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 15:40:08,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:40:08,558.558 INFO    ] Checking for system updates...
[2026-06-05 15:40:08,596.596 INFO    ] 200
[2026-06-05 15:40:08,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:08,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:40:08,653.653 INFO    ] No update needed
[2026-06-05 15:40:08,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 15:40:08,693.693 INFO    ] 200
[2026-06-05 15:40:08,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:08,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:40:08,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:40:08,783.783 INFO    ] No camera update needed
[2026-06-05 15:40:08,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:40:08,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:40:08,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:40:08,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:40:10,840.840 INFO    ] ================================================
[2026-06-05 15:40:10,855.855 INFO    ] Launching Daemon at Fri Jun  5 15:40:10 IST 2026
[2026-06-05 15:40:10,866.866 INFO    ] ================================================
[2026-06-05 15:40:11,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:40:11
[2026-06-05 15:40:12,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:40:12,370.370 INFO    ] Initializing speech engine...
[2026-06-05 15:40:12,375.375 INFO    ] 2026-06-05 15:40:12
[2026-06-05 15:40:12,626.626 INFO    ] 2026-06-05 15:40:12
[2026-06-05 15:40:12,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:40:12,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:40:12,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:40:13,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:40:13,110.110 INFO    ] time= 05/06/2026 15:40:13
[2026-06-05 15:40:13,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:40:13,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:40:13,343.343 INFO    ] No existing commands found in stream
[2026-06-05 15:40:18,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:40:18,361.361 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 15:40:19,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:40:19,097.097 INFO    ] Checking for system updates...
[2026-06-05 15:40:19,150.150 INFO    ] 200
[2026-06-05 15:40:19,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:19,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:40:19,216.216 INFO    ] No update needed
[2026-06-05 15:40:19,218.218 INFO    ] Checking for camera pi updates...
[2026-06-05 15:40:19,252.252 INFO    ] 200
[2026-06-05 15:40:19,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:19,295.295 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:40:19,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:40:19,341.341 INFO    ] No camera update needed
[2026-06-05 15:40:19,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:40:19,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:40:19,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:40:19,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:40:21,397.397 INFO    ] ================================================
[2026-06-05 15:40:21,412.412 INFO    ] Launching Daemon at Fri Jun  5 15:40:21 IST 2026
[2026-06-05 15:40:21,423.423 INFO    ] ================================================
[2026-06-05 15:40:22,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:40:22
[2026-06-05 15:40:22,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:40:22,870.870 INFO    ] Initializing speech engine...
[2026-06-05 15:40:22,888.888 INFO    ] 2026-06-05 15:40:22
[2026-06-05 15:40:23,140.140 INFO    ] 2026-06-05 15:40:23
[2026-06-05 15:40:23,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:40:23,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:40:23,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:40:24,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:40:24,120.120 INFO    ] time= 05/06/2026 15:40:24
[2026-06-05 15:40:24,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:40:24,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:40:24,247.247 INFO    ] No existing commands found in stream
[2026-06-05 15:40:29,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:40:29,273.273 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 15:40:30,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:40:30,787.787 INFO    ] Checking for system updates...
[2026-06-05 15:40:30,823.823 INFO    ] 200
[2026-06-05 15:40:30,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:30,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:40:30,885.885 INFO    ] No update needed
[2026-06-05 15:40:30,888.888 INFO    ] Checking for camera pi updates...
[2026-06-05 15:40:30,924.924 INFO    ] 200
[2026-06-05 15:40:30,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:30,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:40:31,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:40:31,015.015 INFO    ] No camera update needed
[2026-06-05 15:40:31,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:40:31,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:40:31,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:40:31,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:40:33,075.075 INFO    ] ================================================
[2026-06-05 15:40:33,092.092 INFO    ] Launching Daemon at Fri Jun  5 15:40:33 IST 2026
[2026-06-05 15:40:33,104.104 INFO    ] ================================================
[2026-06-05 15:40:33,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:40:33
[2026-06-05 15:40:34,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:40:34,603.603 INFO    ] Initializing speech engine...
[2026-06-05 15:40:34,612.612 INFO    ] 2026-06-05 15:40:34
[2026-06-05 15:40:34,875.875 INFO    ] 2026-06-05 15:40:34
[2026-06-05 15:40:34,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:40:35,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:40:35,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:40:35,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:40:35,350.350 INFO    ] time= 05/06/2026 15:40:35
[2026-06-05 15:40:35,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:40:35,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:40:35,567.567 INFO    ] No existing commands found in stream
[2026-06-05 15:40:40,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:40:40,596.596 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 15:40:42,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:40:42,189.189 INFO    ] Checking for system updates...
[2026-06-05 15:40:42,225.225 INFO    ] 200
[2026-06-05 15:40:42,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:42,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:40:42,289.289 INFO    ] No update needed
[2026-06-05 15:40:42,291.291 INFO    ] Checking for camera pi updates...
[2026-06-05 15:40:42,325.325 INFO    ] 200
[2026-06-05 15:40:42,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:42,372.372 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:40:42,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:40:42,416.416 INFO    ] No camera update needed
[2026-06-05 15:40:42,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:40:42,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:40:42,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:40:42,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:40:44,473.473 INFO    ] ================================================
[2026-06-05 15:40:44,488.488 INFO    ] Launching Daemon at Fri Jun  5 15:40:44 IST 2026
[2026-06-05 15:40:44,498.498 INFO    ] ================================================
[2026-06-05 15:40:45,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:40:45
[2026-06-05 15:40:45,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:40:45,947.947 INFO    ] Initializing speech engine...
[2026-06-05 15:40:45,955.955 INFO    ] 2026-06-05 15:40:45
[2026-06-05 15:40:46,208.208 INFO    ] 2026-06-05 15:40:46
[2026-06-05 15:40:46,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:40:46,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:40:46,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:40:46,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:40:46,686.686 INFO    ] time= 05/06/2026 15:40:46
[2026-06-05 15:40:46,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:40:46,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:40:46,924.924 INFO    ] No existing commands found in stream
[2026-06-05 15:40:51,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:40:51,950.950 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 15:40:55,125.125 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:40:55,128.128 INFO    ] Checking for system updates...
[2026-06-05 15:40:55,164.164 INFO    ] 200
[2026-06-05 15:40:55,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:55,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:40:55,221.221 INFO    ] No update needed
[2026-06-05 15:40:55,224.224 INFO    ] Checking for camera pi updates...
[2026-06-05 15:40:55,263.263 INFO    ] 200
[2026-06-05 15:40:55,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:40:55,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:40:55,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:40:55,452.452 INFO    ] No camera update needed
[2026-06-05 15:40:55,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:40:55,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:40:55,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:40:55,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:40:57,507.507 INFO    ] ================================================
[2026-06-05 15:40:57,522.522 INFO    ] Launching Daemon at Fri Jun  5 15:40:57 IST 2026
[2026-06-05 15:40:57,533.533 INFO    ] ================================================
[2026-06-05 15:40:58,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:40:58
[2026-06-05 15:40:58,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:40:59,003.003 INFO    ] Initializing speech engine...
[2026-06-05 15:40:59,011.011 INFO    ] 2026-06-05 15:40:59
[2026-06-05 15:40:59,263.263 INFO    ] 2026-06-05 15:40:59
[2026-06-05 15:40:59,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:40:59,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:40:59,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:40:59,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:40:59,772.772 INFO    ] time= 05/06/2026 15:40:59
[2026-06-05 15:40:59,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:40:59,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:40:59,973.973 INFO    ] No existing commands found in stream
[2026-06-05 15:41:04,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:41:05,001.001 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-05 15:41:09,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:41:09,131.131 INFO    ] Checking for system updates...
[2026-06-05 15:41:09,168.168 INFO    ] 200
[2026-06-05 15:41:09,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:09,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:41:09,230.230 INFO    ] No update needed
[2026-06-05 15:41:09,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 15:41:09,268.268 INFO    ] 200
[2026-06-05 15:41:09,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:09,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:41:09,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:41:09,356.356 INFO    ] No camera update needed
[2026-06-05 15:41:09,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:41:09,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:41:09,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:41:09,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:41:11,417.417 INFO    ] ================================================
[2026-06-05 15:41:11,432.432 INFO    ] Launching Daemon at Fri Jun  5 15:41:11 IST 2026
[2026-06-05 15:41:11,443.443 INFO    ] ================================================
[2026-06-05 15:41:12,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:41:12
[2026-06-05 15:41:12,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:41:12,872.872 INFO    ] Initializing speech engine...
[2026-06-05 15:41:12,879.879 INFO    ] 2026-06-05 15:41:12
[2026-06-05 15:41:13,137.137 INFO    ] 2026-06-05 15:41:13
[2026-06-05 15:41:13,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:41:13,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:41:13,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:41:13,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:41:13,634.634 INFO    ] time= 05/06/2026 15:41:13
[2026-06-05 15:41:13,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:41:13,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:41:13,824.824 INFO    ] No existing commands found in stream
[2026-06-05 15:41:18,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:41:18,849.849 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 15:41:19,922.922 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:41:19,925.925 INFO    ] Checking for system updates...
[2026-06-05 15:41:19,964.964 INFO    ] 200
[2026-06-05 15:41:19,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:20,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:41:20,030.030 INFO    ] No update needed
[2026-06-05 15:41:20,036.036 INFO    ] Checking for camera pi updates...
[2026-06-05 15:41:20,074.074 INFO    ] 200
[2026-06-05 15:41:20,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:20,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:41:20,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:41:20,159.159 INFO    ] No camera update needed
[2026-06-05 15:41:20,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:41:20,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:41:20,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:41:20,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:41:22,215.215 INFO    ] ================================================
[2026-06-05 15:41:22,230.230 INFO    ] Launching Daemon at Fri Jun  5 15:41:22 IST 2026
[2026-06-05 15:41:22,241.241 INFO    ] ================================================
[2026-06-05 15:41:22,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:41:22
[2026-06-05 15:41:23,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:41:23,873.873 INFO    ] Initializing speech engine...
[2026-06-05 15:41:23,879.879 INFO    ] 2026-06-05 15:41:23
[2026-06-05 15:41:24,157.157 INFO    ] 2026-06-05 15:41:24
[2026-06-05 15:41:24,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:41:24,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:41:24,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:41:24,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:41:24,694.694 INFO    ] time= 05/06/2026 15:41:24
[2026-06-05 15:41:24,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:41:24,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:41:24,852.852 INFO    ] No existing commands found in stream
[2026-06-05 15:41:29,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:41:29,885.885 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 15:41:30,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:41:30,302.302 INFO    ] Checking for system updates...
[2026-06-05 15:41:30,343.343 INFO    ] 200
[2026-06-05 15:41:30,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:30,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:41:30,412.412 INFO    ] No update needed
[2026-06-05 15:41:30,414.414 INFO    ] Checking for camera pi updates...
[2026-06-05 15:41:30,450.450 INFO    ] 200
[2026-06-05 15:41:30,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:30,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:41:30,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:41:30,540.540 INFO    ] No camera update needed
[2026-06-05 15:41:30,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:41:30,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:41:30,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:41:30,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:41:32,600.600 INFO    ] ================================================
[2026-06-05 15:41:32,615.615 INFO    ] Launching Daemon at Fri Jun  5 15:41:32 IST 2026
[2026-06-05 15:41:32,627.627 INFO    ] ================================================
[2026-06-05 15:41:33,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:41:33
[2026-06-05 15:41:33,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:41:34,094.094 INFO    ] Initializing speech engine...
[2026-06-05 15:41:34,104.104 INFO    ] 2026-06-05 15:41:34
[2026-06-05 15:41:34,364.364 INFO    ] 2026-06-05 15:41:34
[2026-06-05 15:41:34,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:41:34,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:41:34,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:41:34,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:41:34,861.861 INFO    ] time= 05/06/2026 15:41:34
[2026-06-05 15:41:34,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:41:34,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:41:35,109.109 INFO    ] No existing commands found in stream
[2026-06-05 15:41:40,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:41:40,137.137 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 15:41:42,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:41:42,817.817 INFO    ] Checking for system updates...
[2026-06-05 15:41:42,853.853 INFO    ] 200
[2026-06-05 15:41:42,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:42,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:41:42,911.911 INFO    ] No update needed
[2026-06-05 15:41:42,914.914 INFO    ] Checking for camera pi updates...
[2026-06-05 15:41:42,951.951 INFO    ] 200
[2026-06-05 15:41:42,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:42,998.998 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:41:43,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:41:43,042.042 INFO    ] No camera update needed
[2026-06-05 15:41:43,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:41:43,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:41:43,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:41:43,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:41:45,098.098 INFO    ] ================================================
[2026-06-05 15:41:45,113.113 INFO    ] Launching Daemon at Fri Jun  5 15:41:45 IST 2026
[2026-06-05 15:41:45,124.124 INFO    ] ================================================
[2026-06-05 15:41:45,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:41:45
[2026-06-05 15:41:46,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:41:46,533.533 INFO    ] Initializing speech engine...
[2026-06-05 15:41:46,539.539 INFO    ] 2026-06-05 15:41:46
[2026-06-05 15:41:46,825.825 INFO    ] 2026-06-05 15:41:46
[2026-06-05 15:41:46,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:41:47,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:41:47,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:41:47,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:41:47,234.234 INFO    ] time= 05/06/2026 15:41:47
[2026-06-05 15:41:47,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:41:47,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:41:47,318.318 INFO    ] No existing commands found in stream
[2026-06-05 15:41:52,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:41:52,334.334 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 15:41:54,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:41:54,442.442 INFO    ] Checking for system updates...
[2026-06-05 15:41:54,477.477 INFO    ] 200
[2026-06-05 15:41:54,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:54,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:41:54,536.536 INFO    ] No update needed
[2026-06-05 15:41:54,538.538 INFO    ] Checking for camera pi updates...
[2026-06-05 15:41:54,576.576 INFO    ] 200
[2026-06-05 15:41:54,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:41:54,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:41:54,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:41:54,673.673 INFO    ] No camera update needed
[2026-06-05 15:41:54,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:41:54,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:41:54,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:41:54,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:41:56,729.729 INFO    ] ================================================
[2026-06-05 15:41:56,744.744 INFO    ] Launching Daemon at Fri Jun  5 15:41:56 IST 2026
[2026-06-05 15:41:56,755.755 INFO    ] ================================================
[2026-06-05 15:41:57,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:41:57
[2026-06-05 15:41:57,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:41:58,177.177 INFO    ] Initializing speech engine...
[2026-06-05 15:41:58,184.184 INFO    ] 2026-06-05 15:41:58
[2026-06-05 15:41:58,441.441 INFO    ] 2026-06-05 15:41:58
[2026-06-05 15:41:58,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:41:58,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:41:58,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:41:58,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:41:58,842.842 INFO    ] time= 05/06/2026 15:41:58
[2026-06-05 15:41:58,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:41:58,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:41:59,010.010 INFO    ] No existing commands found in stream
[2026-06-05 15:42:04,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:42:04,048.048 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 15:42:08,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:42:08,057.057 INFO    ] Checking for system updates...
[2026-06-05 15:42:08,100.100 INFO    ] 200
[2026-06-05 15:42:08,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:08,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:42:08,157.157 INFO    ] No update needed
[2026-06-05 15:42:08,159.159 INFO    ] Checking for camera pi updates...
[2026-06-05 15:42:08,194.194 INFO    ] 200
[2026-06-05 15:42:08,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:08,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:42:08,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:42:08,270.270 INFO    ] No camera update needed
[2026-06-05 15:42:08,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:42:08,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:42:08,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:42:08,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:42:10,326.326 INFO    ] ================================================
[2026-06-05 15:42:10,341.341 INFO    ] Launching Daemon at Fri Jun  5 15:42:10 IST 2026
[2026-06-05 15:42:10,352.352 INFO    ] ================================================
[2026-06-05 15:42:10,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:42:10
[2026-06-05 15:42:11,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:42:11,782.782 INFO    ] Initializing speech engine...
[2026-06-05 15:42:11,791.791 INFO    ] 2026-06-05 15:42:11
[2026-06-05 15:42:12,037.037 INFO    ] 2026-06-05 15:42:12
[2026-06-05 15:42:12,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:42:12,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:42:12,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:42:12,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:42:12,477.477 INFO    ] time= 05/06/2026 15:42:12
[2026-06-05 15:42:12,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:42:12,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:42:12,550.550 INFO    ] No existing commands found in stream
[2026-06-05 15:42:17,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:42:17,562.562 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 15:42:21,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:42:21,086.086 INFO    ] Checking for system updates...
[2026-06-05 15:42:21,124.124 INFO    ] 200
[2026-06-05 15:42:21,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:21,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:42:21,182.182 INFO    ] No update needed
[2026-06-05 15:42:21,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 15:42:21,218.218 INFO    ] 200
[2026-06-05 15:42:21,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:21,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:42:21,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:42:21,291.291 INFO    ] No camera update needed
[2026-06-05 15:42:21,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:42:21,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:42:21,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:42:21,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:42:23,350.350 INFO    ] ================================================
[2026-06-05 15:42:23,365.365 INFO    ] Launching Daemon at Fri Jun  5 15:42:23 IST 2026
[2026-06-05 15:42:23,376.376 INFO    ] ================================================
[2026-06-05 15:42:23,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:42:23
[2026-06-05 15:42:24,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:42:24,850.850 INFO    ] Initializing speech engine...
[2026-06-05 15:42:24,858.858 INFO    ] 2026-06-05 15:42:24
[2026-06-05 15:42:25,127.127 INFO    ] 2026-06-05 15:42:25
[2026-06-05 15:42:25,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:42:25,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:42:25,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:42:25,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:42:25,584.584 INFO    ] time= 05/06/2026 15:42:25
[2026-06-05 15:42:25,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:42:25,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:42:25,820.820 INFO    ] No existing commands found in stream
[2026-06-05 15:42:30,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:42:30,846.846 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 15:42:31,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:42:31,927.927 INFO    ] Checking for system updates...
[2026-06-05 15:42:31,967.967 INFO    ] 200
[2026-06-05 15:42:31,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:32,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:42:32,036.036 INFO    ] No update needed
[2026-06-05 15:42:32,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 15:42:32,079.079 INFO    ] 200
[2026-06-05 15:42:32,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:32,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:42:32,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:42:32,166.166 INFO    ] No camera update needed
[2026-06-05 15:42:32,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:42:32,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:42:32,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:42:32,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:42:34,225.225 INFO    ] ================================================
[2026-06-05 15:42:34,241.241 INFO    ] Launching Daemon at Fri Jun  5 15:42:34 IST 2026
[2026-06-05 15:42:34,252.252 INFO    ] ================================================
[2026-06-05 15:42:34,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:42:34
[2026-06-05 15:42:35,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:42:35,690.690 INFO    ] Initializing speech engine...
[2026-06-05 15:42:35,695.695 INFO    ] 2026-06-05 15:42:35
[2026-06-05 15:42:35,976.976 INFO    ] 2026-06-05 15:42:35
[2026-06-05 15:42:36,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:42:36,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:42:36,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:42:36,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:42:36,338.338 INFO    ] time= 05/06/2026 15:42:36
[2026-06-05 15:42:36,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:42:36,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:42:36,508.508 INFO    ] No existing commands found in stream
[2026-06-05 15:42:41,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:42:41,542.542 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 15:42:44,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:42:44,183.183 INFO    ] Checking for system updates...
[2026-06-05 15:42:44,220.220 INFO    ] 200
[2026-06-05 15:42:44,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:44,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:42:44,279.279 INFO    ] No update needed
[2026-06-05 15:42:44,281.281 INFO    ] Checking for camera pi updates...
[2026-06-05 15:42:44,316.316 INFO    ] 200
[2026-06-05 15:42:44,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:44,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:42:44,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:42:44,410.410 INFO    ] No camera update needed
[2026-06-05 15:42:44,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:42:44,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:42:44,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:42:44,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:42:46,467.467 INFO    ] ================================================
[2026-06-05 15:42:46,482.482 INFO    ] Launching Daemon at Fri Jun  5 15:42:46 IST 2026
[2026-06-05 15:42:46,493.493 INFO    ] ================================================
[2026-06-05 15:42:47,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:42:47
[2026-06-05 15:42:47,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:42:47,896.896 INFO    ] Initializing speech engine...
[2026-06-05 15:42:47,904.904 INFO    ] 2026-06-05 15:42:47
[2026-06-05 15:42:48,192.192 INFO    ] 2026-06-05 15:42:48
[2026-06-05 15:42:48,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:42:48,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:42:48,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:42:48,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:42:48,606.606 INFO    ] time= 05/06/2026 15:42:48
[2026-06-05 15:42:48,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:42:48,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:42:48,694.694 INFO    ] No existing commands found in stream
[2026-06-05 15:42:53,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:42:53,728.728 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 15:42:54,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:42:54,980.980 INFO    ] Checking for system updates...
[2026-06-05 15:42:55,019.019 INFO    ] 200
[2026-06-05 15:42:55,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:55,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:42:55,082.082 INFO    ] No update needed
[2026-06-05 15:42:55,085.085 INFO    ] Checking for camera pi updates...
[2026-06-05 15:42:55,118.118 INFO    ] 200
[2026-06-05 15:42:55,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:42:55,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:42:55,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:42:55,205.205 INFO    ] No camera update needed
[2026-06-05 15:42:55,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:42:55,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:42:55,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:42:55,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:42:57,260.260 INFO    ] ================================================
[2026-06-05 15:42:57,276.276 INFO    ] Launching Daemon at Fri Jun  5 15:42:57 IST 2026
[2026-06-05 15:42:57,286.286 INFO    ] ================================================
[2026-06-05 15:42:57,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:42:57
[2026-06-05 15:42:58,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:42:58,699.699 INFO    ] Initializing speech engine...
[2026-06-05 15:42:58,713.713 INFO    ] 2026-06-05 15:42:58
[2026-06-05 15:42:58,976.976 INFO    ] 2026-06-05 15:42:58
[2026-06-05 15:42:59,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:42:59,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:42:59,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:42:59,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:42:59,452.452 INFO    ] time= 05/06/2026 15:42:59
[2026-06-05 15:42:59,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:42:59,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:42:59,672.672 INFO    ] No existing commands found in stream
[2026-06-05 15:43:04,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:43:04,699.699 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 15:43:05,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:43:05,089.089 INFO    ] Checking for system updates...
[2026-06-05 15:43:05,125.125 INFO    ] 200
[2026-06-05 15:43:05,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:05,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:43:05,183.183 INFO    ] No update needed
[2026-06-05 15:43:05,186.186 INFO    ] Checking for camera pi updates...
[2026-06-05 15:43:05,219.219 INFO    ] 200
[2026-06-05 15:43:05,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:05,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:43:05,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:43:05,303.303 INFO    ] No camera update needed
[2026-06-05 15:43:05,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:43:05,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:43:05,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:43:05,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:43:07,360.360 INFO    ] ================================================
[2026-06-05 15:43:07,376.376 INFO    ] Launching Daemon at Fri Jun  5 15:43:07 IST 2026
[2026-06-05 15:43:07,387.387 INFO    ] ================================================
[2026-06-05 15:43:08,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:43:08
[2026-06-05 15:43:08,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:43:08,908.908 INFO    ] Initializing speech engine...
[2026-06-05 15:43:08,931.931 INFO    ] 2026-06-05 15:43:08
[2026-06-05 15:43:09,186.186 INFO    ] 2026-06-05 15:43:09
[2026-06-05 15:43:09,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:43:09,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:43:09,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:43:09,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:43:09,630.630 INFO    ] time= 05/06/2026 15:43:09
[2026-06-05 15:43:09,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:43:09,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:43:09,900.900 INFO    ] No existing commands found in stream
[2026-06-05 15:43:14,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:43:14,934.934 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 15:43:16,894.894 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:43:16,897.897 INFO    ] Checking for system updates...
[2026-06-05 15:43:16,934.934 INFO    ] 200
[2026-06-05 15:43:16,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:16,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:43:16,991.991 INFO    ] No update needed
[2026-06-05 15:43:16,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 15:43:17,032.032 INFO    ] 200
[2026-06-05 15:43:17,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:17,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:43:17,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:43:17,119.119 INFO    ] No camera update needed
[2026-06-05 15:43:17,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:43:17,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:43:17,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:43:17,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:43:19,173.173 INFO    ] ================================================
[2026-06-05 15:43:19,189.189 INFO    ] Launching Daemon at Fri Jun  5 15:43:19 IST 2026
[2026-06-05 15:43:19,200.200 INFO    ] ================================================
[2026-06-05 15:43:19,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:43:19
[2026-06-05 15:43:20,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:43:20,728.728 INFO    ] Initializing speech engine...
[2026-06-05 15:43:20,737.737 INFO    ] 2026-06-05 15:43:20
[2026-06-05 15:43:20,996.996 INFO    ] 2026-06-05 15:43:20
[2026-06-05 15:43:21,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:43:21,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:43:21,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:43:21,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:43:21,433.433 INFO    ] time= 05/06/2026 15:43:21
[2026-06-05 15:43:21,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:43:21,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:43:21,669.669 INFO    ] No existing commands found in stream
[2026-06-05 15:43:26,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:43:26,702.702 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 15:43:31,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:43:31,177.177 INFO    ] Checking for system updates...
[2026-06-05 15:43:31,228.228 INFO    ] 200
[2026-06-05 15:43:31,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:31,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:43:31,295.295 INFO    ] No update needed
[2026-06-05 15:43:31,298.298 INFO    ] Checking for camera pi updates...
[2026-06-05 15:43:31,334.334 INFO    ] 200
[2026-06-05 15:43:31,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:31,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:43:31,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:43:31,431.431 INFO    ] No camera update needed
[2026-06-05 15:43:31,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:43:31,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:43:31,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:43:31,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:43:33,492.492 INFO    ] ================================================
[2026-06-05 15:43:33,508.508 INFO    ] Launching Daemon at Fri Jun  5 15:43:33 IST 2026
[2026-06-05 15:43:33,519.519 INFO    ] ================================================
[2026-06-05 15:43:34,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:43:34
[2026-06-05 15:43:34,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:43:34,941.941 INFO    ] Initializing speech engine...
[2026-06-05 15:43:34,950.950 INFO    ] 2026-06-05 15:43:34
[2026-06-05 15:43:35,203.203 INFO    ] 2026-06-05 15:43:35
[2026-06-05 15:43:35,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:43:35,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:43:35,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:43:35,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:43:35,707.707 INFO    ] time= 05/06/2026 15:43:35
[2026-06-05 15:43:35,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:43:35,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:43:35,916.916 INFO    ] No existing commands found in stream
[2026-06-05 15:43:40,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:43:40,940.940 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 15:43:42,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:43:42,809.809 INFO    ] Checking for system updates...
[2026-06-05 15:43:42,845.845 INFO    ] 200
[2026-06-05 15:43:42,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:42,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:43:42,902.902 INFO    ] No update needed
[2026-06-05 15:43:42,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 15:43:42,938.938 INFO    ] 200
[2026-06-05 15:43:42,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:42,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:43:43,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:43:43,029.029 INFO    ] No camera update needed
[2026-06-05 15:43:43,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:43:43,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:43:43,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:43:43,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:43:45,086.086 INFO    ] ================================================
[2026-06-05 15:43:45,107.107 INFO    ] Launching Daemon at Fri Jun  5 15:43:45 IST 2026
[2026-06-05 15:43:45,124.124 INFO    ] ================================================
[2026-06-05 15:43:45,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:43:45
[2026-06-05 15:43:46,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:43:46,542.542 INFO    ] Initializing speech engine...
[2026-06-05 15:43:46,556.556 INFO    ] 2026-06-05 15:43:46
[2026-06-05 15:43:46,848.848 INFO    ] 2026-06-05 15:43:46
[2026-06-05 15:43:46,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:43:47,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:43:47,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:43:47,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:43:47,269.269 INFO    ] time= 05/06/2026 15:43:47
[2026-06-05 15:43:47,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:43:47,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:43:47,387.387 INFO    ] No existing commands found in stream
[2026-06-05 15:43:52,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:43:52,426.426 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 15:43:56,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:43:56,781.781 INFO    ] Checking for system updates...
[2026-06-05 15:43:56,817.817 INFO    ] 200
[2026-06-05 15:43:56,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:56,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:43:56,874.874 INFO    ] No update needed
[2026-06-05 15:43:56,877.877 INFO    ] Checking for camera pi updates...
[2026-06-05 15:43:56,910.910 INFO    ] 200
[2026-06-05 15:43:56,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:43:56,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:43:57,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:43:57,003.003 INFO    ] No camera update needed
[2026-06-05 15:43:57,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:43:57,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:43:57,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:43:57,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:43:59,058.058 INFO    ] ================================================
[2026-06-05 15:43:59,074.074 INFO    ] Launching Daemon at Fri Jun  5 15:43:59 IST 2026
[2026-06-05 15:43:59,085.085 INFO    ] ================================================
[2026-06-05 15:43:59,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:43:59
[2026-06-05 15:44:00,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:44:00,563.563 INFO    ] Initializing speech engine...
[2026-06-05 15:44:00,586.586 INFO    ] 2026-06-05 15:44:00
[2026-06-05 15:44:00,844.844 INFO    ] 2026-06-05 15:44:00
[2026-06-05 15:44:00,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:44:01,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:44:01,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:44:01,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:44:01,323.323 INFO    ] time= 05/06/2026 15:44:01
[2026-06-05 15:44:01,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:44:01,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:44:01,539.539 INFO    ] No existing commands found in stream
[2026-06-05 15:44:06,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:44:06,567.567 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 15:44:08,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:44:08,280.280 INFO    ] Checking for system updates...
[2026-06-05 15:44:08,317.317 INFO    ] 200
[2026-06-05 15:44:08,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:08,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:44:08,383.383 INFO    ] No update needed
[2026-06-05 15:44:08,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 15:44:08,423.423 INFO    ] 200
[2026-06-05 15:44:08,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:08,490.490 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:44:08,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:44:08,520.520 INFO    ] No camera update needed
[2026-06-05 15:44:08,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:44:08,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:44:08,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:44:08,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:44:10,576.576 INFO    ] ================================================
[2026-06-05 15:44:10,591.591 INFO    ] Launching Daemon at Fri Jun  5 15:44:10 IST 2026
[2026-06-05 15:44:10,602.602 INFO    ] ================================================
[2026-06-05 15:44:11,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:44:11
[2026-06-05 15:44:11,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:44:12,042.042 INFO    ] Initializing speech engine...
[2026-06-05 15:44:12,065.065 INFO    ] 2026-06-05 15:44:12
[2026-06-05 15:44:12,320.320 INFO    ] 2026-06-05 15:44:12
[2026-06-05 15:44:12,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:44:12,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:44:12,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:44:12,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:44:12,694.694 INFO    ] time= 05/06/2026 15:44:12
[2026-06-05 15:44:12,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:44:12,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:44:12,861.861 INFO    ] No existing commands found in stream
[2026-06-05 15:44:17,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:44:17,900.900 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 15:44:21,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:44:21,059.059 INFO    ] Checking for system updates...
[2026-06-05 15:44:21,095.095 INFO    ] 200
[2026-06-05 15:44:21,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:21,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:44:21,155.155 INFO    ] No update needed
[2026-06-05 15:44:21,157.157 INFO    ] Checking for camera pi updates...
[2026-06-05 15:44:21,192.192 INFO    ] 200
[2026-06-05 15:44:21,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:21,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:44:21,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:44:21,280.280 INFO    ] No camera update needed
[2026-06-05 15:44:21,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:44:21,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:44:21,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:44:21,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:44:23,337.337 INFO    ] ================================================
[2026-06-05 15:44:23,353.353 INFO    ] Launching Daemon at Fri Jun  5 15:44:23 IST 2026
[2026-06-05 15:44:23,363.363 INFO    ] ================================================
[2026-06-05 15:44:23,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:44:23
[2026-06-05 15:44:24,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:44:24,803.803 INFO    ] Initializing speech engine...
[2026-06-05 15:44:24,826.826 INFO    ] 2026-06-05 15:44:24
[2026-06-05 15:44:25,084.084 INFO    ] 2026-06-05 15:44:25
[2026-06-05 15:44:25,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:44:25,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:44:25,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:44:25,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:44:25,556.556 INFO    ] time= 05/06/2026 15:44:25
[2026-06-05 15:44:25,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:44:25,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:44:25,790.790 INFO    ] No existing commands found in stream
[2026-06-05 15:44:30,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:44:30,819.819 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 15:44:32,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:44:32,140.140 INFO    ] Checking for system updates...
[2026-06-05 15:44:32,188.188 INFO    ] 200
[2026-06-05 15:44:32,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:32,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:44:32,255.255 INFO    ] No update needed
[2026-06-05 15:44:32,258.258 INFO    ] Checking for camera pi updates...
[2026-06-05 15:44:32,298.298 INFO    ] 200
[2026-06-05 15:44:32,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:32,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:44:32,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:44:32,374.374 INFO    ] No camera update needed
[2026-06-05 15:44:32,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:44:32,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:44:32,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:44:32,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:44:34,435.435 INFO    ] ================================================
[2026-06-05 15:44:34,451.451 INFO    ] Launching Daemon at Fri Jun  5 15:44:34 IST 2026
[2026-06-05 15:44:34,462.462 INFO    ] ================================================
[2026-06-05 15:44:35,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:44:35
[2026-06-05 15:44:35,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:44:35,900.900 INFO    ] Initializing speech engine...
[2026-06-05 15:44:35,923.923 INFO    ] 2026-06-05 15:44:35
[2026-06-05 15:44:36,179.179 INFO    ] 2026-06-05 15:44:36
[2026-06-05 15:44:36,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:44:36,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:44:36,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:44:36,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:44:36,656.656 INFO    ] time= 05/06/2026 15:44:36
[2026-06-05 15:44:36,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:44:36,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:44:36,868.868 INFO    ] No existing commands found in stream
[2026-06-05 15:44:41,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:44:41,901.901 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 15:44:43,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:44:43,083.083 INFO    ] Checking for system updates...
[2026-06-05 15:44:43,119.119 INFO    ] 200
[2026-06-05 15:44:43,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:43,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:44:43,176.176 INFO    ] No update needed
[2026-06-05 15:44:43,179.179 INFO    ] Checking for camera pi updates...
[2026-06-05 15:44:43,217.217 INFO    ] 200
[2026-06-05 15:44:43,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:43,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:44:43,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:44:43,303.303 INFO    ] No camera update needed
[2026-06-05 15:44:43,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:44:43,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:44:43,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:44:43,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:44:45,360.360 INFO    ] ================================================
[2026-06-05 15:44:45,376.376 INFO    ] Launching Daemon at Fri Jun  5 15:44:45 IST 2026
[2026-06-05 15:44:45,387.387 INFO    ] ================================================
[2026-06-05 15:44:46,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:44:46
[2026-06-05 15:44:46,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:44:47,041.041 INFO    ] Initializing speech engine...
[2026-06-05 15:44:47,049.049 INFO    ] 2026-06-05 15:44:47
[2026-06-05 15:44:47,337.337 INFO    ] 2026-06-05 15:44:47
[2026-06-05 15:44:47,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:44:47,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:44:47,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:44:47,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:44:47,864.864 INFO    ] time= 05/06/2026 15:44:47
[2026-06-05 15:44:47,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:44:47,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:44:48,041.041 INFO    ] No existing commands found in stream
[2026-06-05 15:44:53,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:44:53,058.058 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 15:44:56,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:44:56,157.157 INFO    ] Checking for system updates...
[2026-06-05 15:44:56,193.193 INFO    ] 200
[2026-06-05 15:44:56,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:56,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:44:56,251.251 INFO    ] No update needed
[2026-06-05 15:44:56,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 15:44:56,287.287 INFO    ] 200
[2026-06-05 15:44:56,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:44:56,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:44:56,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:44:56,374.374 INFO    ] No camera update needed
[2026-06-05 15:44:56,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:44:56,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:44:56,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:44:56,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:44:58,430.430 INFO    ] ================================================
[2026-06-05 15:44:58,445.445 INFO    ] Launching Daemon at Fri Jun  5 15:44:58 IST 2026
[2026-06-05 15:44:58,455.455 INFO    ] ================================================
[2026-06-05 15:44:59,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:44:59
[2026-06-05 15:44:59,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:44:59,914.914 INFO    ] Initializing speech engine...
[2026-06-05 15:44:59,921.921 INFO    ] 2026-06-05 15:44:59
[2026-06-05 15:45:00,182.182 INFO    ] 2026-06-05 15:45:00
[2026-06-05 15:45:00,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:45:00,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:45:00,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:45:00,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:45:00,656.656 INFO    ] time= 05/06/2026 15:45:00
[2026-06-05 15:45:00,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:45:00,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:45:00,864.864 INFO    ] No existing commands found in stream
[2026-06-05 15:45:05,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:45:05,892.892 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 15:45:10,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:45:10,078.078 INFO    ] Checking for system updates...
[2026-06-05 15:45:10,114.114 INFO    ] 200
[2026-06-05 15:45:10,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:45:10,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:45:10,174.174 INFO    ] No update needed
[2026-06-05 15:45:10,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 15:45:10,210.210 INFO    ] 200
[2026-06-05 15:45:10,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:45:10,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:45:10,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:45:10,405.405 INFO    ] No camera update needed
[2026-06-05 15:45:10,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:45:10,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:45:10,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:45:10,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:45:12,464.464 INFO    ] ================================================
[2026-06-05 15:45:12,479.479 INFO    ] Launching Daemon at Fri Jun  5 15:45:12 IST 2026
[2026-06-05 15:45:12,490.490 INFO    ] ================================================
[2026-06-05 15:45:13,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:45:13
[2026-06-05 15:45:13,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:45:13,903.903 INFO    ] Initializing speech engine...
[2026-06-05 15:45:13,918.918 INFO    ] 2026-06-05 15:45:13
[2026-06-05 15:45:14,185.185 INFO    ] 2026-06-05 15:45:14
[2026-06-05 15:45:14,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:45:14,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:45:14,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:45:14,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:45:14,635.635 INFO    ] time= 05/06/2026 15:45:14
[2026-06-05 15:45:14,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:45:14,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:45:14,822.822 INFO    ] No existing commands found in stream
[2026-06-05 15:45:19,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:45:19,837.837 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 15:45:21,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:45:21,628.628 INFO    ] Checking for system updates...
[2026-06-05 15:45:21,664.664 INFO    ] 200
[2026-06-05 15:45:21,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:45:21,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:45:21,723.723 INFO    ] No update needed
[2026-06-05 15:45:21,726.726 INFO    ] Checking for camera pi updates...
[2026-06-05 15:45:21,766.766 INFO    ] 200
[2026-06-05 15:45:21,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:45:21,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:45:21,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:45:21,855.855 INFO    ] No camera update needed
[2026-06-05 15:45:21,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:45:21,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:45:21,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:45:21,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:45:23,916.916 INFO    ] ================================================
[2026-06-05 15:45:23,932.932 INFO    ] Launching Daemon at Fri Jun  5 15:45:23 IST 2026
[2026-06-05 15:45:23,943.943 INFO    ] ================================================
[2026-06-05 15:45:24,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:45:24
[2026-06-05 15:45:25,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:45:25,700.700 INFO    ] Initializing speech engine...
[2026-06-05 15:45:25,705.705 INFO    ] 2026-06-05 15:45:25
[2026-06-05 15:45:25,974.974 INFO    ] 2026-06-05 15:45:25
[2026-06-05 15:45:26,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:45:26,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:45:26,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:45:26,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:45:26,490.490 INFO    ] time= 05/06/2026 15:45:26
[2026-06-05 15:45:26,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:45:26,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:45:26,685.685 INFO    ] No existing commands found in stream
[2026-06-05 15:45:31,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:45:31,717.717 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 15:45:35,705.705 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:45:35,708.708 INFO    ] Checking for system updates...
[2026-06-05 15:45:35,745.745 INFO    ] 200
[2026-06-05 15:45:35,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:45:35,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:45:35,815.815 INFO    ] No update needed
[2026-06-05 15:45:35,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 15:45:35,853.853 INFO    ] 200
[2026-06-05 15:45:35,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:45:35,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:45:35,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:45:35,949.949 INFO    ] No camera update needed
[2026-06-05 15:45:35,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:45:35,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:45:35,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:45:35,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:45:38,016.016 INFO    ] ================================================
[2026-06-05 15:45:38,031.031 INFO    ] Launching Daemon at Fri Jun  5 15:45:38 IST 2026
[2026-06-05 15:45:38,042.042 INFO    ] ================================================
[2026-06-05 15:45:38,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:45:38
[2026-06-05 15:45:39,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:45:39,459.459 INFO    ] Initializing speech engine...
[2026-06-05 15:45:39,469.469 INFO    ] 2026-06-05 15:45:39
[2026-06-05 15:45:39,715.715 INFO    ] 2026-06-05 15:45:39
[2026-06-05 15:45:39,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:45:40,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:45:40,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:45:40,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:45:40,186.186 INFO    ] time= 05/06/2026 15:45:40
[2026-06-05 15:45:40,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:45:40,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:45:40,395.395 INFO    ] No existing commands found in stream
[2026-06-05 15:45:45,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:45:45,429.429 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 15:45:49,385.385 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:45:49,388.388 INFO    ] Checking for system updates...
[2026-06-05 15:45:49,426.426 INFO    ] 200
[2026-06-05 15:45:49,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:45:49,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:45:49,490.490 INFO    ] No update needed
[2026-06-05 15:45:49,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 15:45:49,525.525 INFO    ] 200
[2026-06-05 15:45:49,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:45:49,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:45:49,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:45:49,598.598 INFO    ] No camera update needed
[2026-06-05 15:45:49,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:45:49,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:45:49,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:45:49,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:45:51,653.653 INFO    ] ================================================
[2026-06-05 15:45:51,668.668 INFO    ] Launching Daemon at Fri Jun  5 15:45:51 IST 2026
[2026-06-05 15:45:51,679.679 INFO    ] ================================================
[2026-06-05 15:45:52,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:45:52
[2026-06-05 15:45:52,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:45:53,108.108 INFO    ] Initializing speech engine...
[2026-06-05 15:45:53,112.112 INFO    ] 2026-06-05 15:45:53
[2026-06-05 15:45:53,358.358 INFO    ] 2026-06-05 15:45:53
[2026-06-05 15:45:53,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:45:54,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:45:54,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:45:54,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:45:54,311.311 INFO    ] time= 05/06/2026 15:45:54
[2026-06-05 15:45:54,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:45:54,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:45:54,471.471 INFO    ] No existing commands found in stream
[2026-06-05 15:45:59,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:45:59,491.491 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 15:46:02,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:46:02,668.668 INFO    ] Checking for system updates...
[2026-06-05 15:46:02,708.708 INFO    ] 200
[2026-06-05 15:46:02,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:02,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:46:02,779.779 INFO    ] No update needed
[2026-06-05 15:46:02,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 15:46:02,819.819 INFO    ] 200
[2026-06-05 15:46:02,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:02,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:46:02,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:46:02,922.922 INFO    ] No camera update needed
[2026-06-05 15:46:02,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:46:02,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:46:02,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:46:02,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:46:04,985.985 INFO    ] ================================================
[2026-06-05 15:46:05,001.001 INFO    ] Launching Daemon at Fri Jun  5 15:46:04 IST 2026
[2026-06-05 15:46:05,012.012 INFO    ] ================================================
[2026-06-05 15:46:05,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:46:05
[2026-06-05 15:46:06,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:46:06,549.549 INFO    ] Initializing speech engine...
[2026-06-05 15:46:06,556.556 INFO    ] 2026-06-05 15:46:06
[2026-06-05 15:46:06,817.817 INFO    ] 2026-06-05 15:46:06
[2026-06-05 15:46:06,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:46:07,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:46:07,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:46:07,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:46:07,308.308 INFO    ] time= 05/06/2026 15:46:07
[2026-06-05 15:46:07,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:46:07,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:46:07,498.498 INFO    ] No existing commands found in stream
[2026-06-05 15:46:12,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:46:12,529.529 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 15:46:15,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:46:15,464.464 INFO    ] Checking for system updates...
[2026-06-05 15:46:15,501.501 INFO    ] 200
[2026-06-05 15:46:15,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:15,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:46:15,559.559 INFO    ] No update needed
[2026-06-05 15:46:15,561.561 INFO    ] Checking for camera pi updates...
[2026-06-05 15:46:15,595.595 INFO    ] 200
[2026-06-05 15:46:15,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:15,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:46:15,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:46:15,691.691 INFO    ] No camera update needed
[2026-06-05 15:46:15,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:46:15,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:46:15,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:46:15,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:46:17,749.749 INFO    ] ================================================
[2026-06-05 15:46:17,764.764 INFO    ] Launching Daemon at Fri Jun  5 15:46:17 IST 2026
[2026-06-05 15:46:17,775.775 INFO    ] ================================================
[2026-06-05 15:46:18,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:46:18
[2026-06-05 15:46:18,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:46:19,220.220 INFO    ] Initializing speech engine...
[2026-06-05 15:46:19,229.229 INFO    ] 2026-06-05 15:46:19
[2026-06-05 15:46:19,499.499 INFO    ] 2026-06-05 15:46:19
[2026-06-05 15:46:19,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:46:19,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:46:19,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:46:19,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:46:19,901.901 INFO    ] time= 05/06/2026 15:46:19
[2026-06-05 15:46:19,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:46:19,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:46:20,010.010 INFO    ] No existing commands found in stream
[2026-06-05 15:46:25,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:46:25,025.025 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 15:46:28,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:46:28,936.936 INFO    ] Checking for system updates...
[2026-06-05 15:46:28,976.976 INFO    ] 200
[2026-06-05 15:46:28,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:29,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:46:29,035.035 INFO    ] No update needed
[2026-06-05 15:46:29,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 15:46:29,072.072 INFO    ] 200
[2026-06-05 15:46:29,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:29,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:46:29,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:46:29,170.170 INFO    ] No camera update needed
[2026-06-05 15:46:29,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:46:29,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:46:29,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:46:29,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:46:31,226.226 INFO    ] ================================================
[2026-06-05 15:46:31,242.242 INFO    ] Launching Daemon at Fri Jun  5 15:46:31 IST 2026
[2026-06-05 15:46:31,252.252 INFO    ] ================================================
[2026-06-05 15:46:31,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:46:31
[2026-06-05 15:46:32,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:46:32,787.787 INFO    ] Initializing speech engine...
[2026-06-05 15:46:32,801.801 INFO    ] 2026-06-05 15:46:32
[2026-06-05 15:46:33,123.123 INFO    ] 2026-06-05 15:46:33
[2026-06-05 15:46:33,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:46:33,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:46:33,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:46:33,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:46:33,544.544 INFO    ] time= 05/06/2026 15:46:33
[2026-06-05 15:46:33,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:46:33,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:46:33,630.630 INFO    ] No existing commands found in stream
[2026-06-05 15:46:38,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:46:38,645.645 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 15:46:39,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:46:39,810.810 INFO    ] Checking for system updates...
[2026-06-05 15:46:39,846.846 INFO    ] 200
[2026-06-05 15:46:39,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:39,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:46:39,904.904 INFO    ] No update needed
[2026-06-05 15:46:39,907.907 INFO    ] Checking for camera pi updates...
[2026-06-05 15:46:39,944.944 INFO    ] 200
[2026-06-05 15:46:39,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:39,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:46:40,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:46:40,029.029 INFO    ] No camera update needed
[2026-06-05 15:46:40,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:46:40,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:46:40,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:46:40,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:46:42,086.086 INFO    ] ================================================
[2026-06-05 15:46:42,102.102 INFO    ] Launching Daemon at Fri Jun  5 15:46:42 IST 2026
[2026-06-05 15:46:42,113.113 INFO    ] ================================================
[2026-06-05 15:46:42,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:46:42
[2026-06-05 15:46:43,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:46:43,530.530 INFO    ] Initializing speech engine...
[2026-06-05 15:46:43,540.540 INFO    ] 2026-06-05 15:46:43
[2026-06-05 15:46:43,787.787 INFO    ] 2026-06-05 15:46:43
[2026-06-05 15:46:43,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:46:44,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:46:44,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:46:44,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:46:44,239.239 INFO    ] time= 05/06/2026 15:46:44
[2026-06-05 15:46:44,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:46:44,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:46:44,413.413 INFO    ] No existing commands found in stream
[2026-06-05 15:46:49,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:46:49,429.429 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 15:46:51,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:46:51,076.076 INFO    ] Checking for system updates...
[2026-06-05 15:46:51,116.116 INFO    ] 200
[2026-06-05 15:46:51,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:51,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:46:51,182.182 INFO    ] No update needed
[2026-06-05 15:46:51,185.185 INFO    ] Checking for camera pi updates...
[2026-06-05 15:46:51,223.223 INFO    ] 200
[2026-06-05 15:46:51,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:46:51,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:46:51,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:46:51,330.330 INFO    ] No camera update needed
[2026-06-05 15:46:51,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:46:51,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:46:51,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:46:51,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:46:53,393.393 INFO    ] ================================================
[2026-06-05 15:46:53,408.408 INFO    ] Launching Daemon at Fri Jun  5 15:46:53 IST 2026
[2026-06-05 15:46:53,419.419 INFO    ] ================================================
[2026-06-05 15:46:53,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:46:53
[2026-06-05 15:46:54,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:46:54,907.907 INFO    ] Initializing speech engine...
[2026-06-05 15:46:54,919.919 INFO    ] 2026-06-05 15:46:54
[2026-06-05 15:46:55,193.193 INFO    ] 2026-06-05 15:46:55
[2026-06-05 15:46:55,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:46:55,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:46:55,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:46:55,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:46:55,696.696 INFO    ] time= 05/06/2026 15:46:55
[2026-06-05 15:46:55,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:46:55,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:46:55,893.893 INFO    ] No existing commands found in stream
[2026-06-05 15:47:00,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:47:00,920.920 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 15:47:01,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:47:01,668.668 INFO    ] Checking for system updates...
[2026-06-05 15:47:01,745.745 INFO    ] 200
[2026-06-05 15:47:01,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 15:47:01,752.752 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 15:47:01,758.758 INFO    ] Checking for camera pi updates...
[2026-06-05 15:47:01,822.822 INFO    ] 200
[2026-06-05 15:47:01,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 15:47:01,830.830 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 15:47:01,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:47:01,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:47:01,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:47:01,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:47:03,906.906 INFO    ] ================================================
[2026-06-05 15:47:03,922.922 INFO    ] Launching Daemon at Fri Jun  5 15:47:03 IST 2026
[2026-06-05 15:47:03,933.933 INFO    ] ================================================
[2026-06-05 15:47:04,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:47:04
[2026-06-05 15:47:05,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:47:05,334.334 INFO    ] Initializing speech engine...
[2026-06-05 15:47:05,349.349 INFO    ] 2026-06-05 15:47:05
[2026-06-05 15:47:05,623.623 INFO    ] 2026-06-05 15:47:05
[2026-06-05 15:47:05,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:47:05,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:47:05,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:47:06,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:47:06,106.106 INFO    ] time= 05/06/2026 15:47:06
[2026-06-05 15:47:06,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:47:06,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:47:06,317.317 INFO    ] No existing commands found in stream
[2026-06-05 15:47:11,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:47:11,352.352 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 15:47:14,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:47:14,253.253 INFO    ] Checking for system updates...
[2026-06-05 15:47:14,296.296 INFO    ] 200
[2026-06-05 15:47:14,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:47:14,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:47:14,356.356 INFO    ] No update needed
[2026-06-05 15:47:14,359.359 INFO    ] Checking for camera pi updates...
[2026-06-05 15:47:14,394.394 INFO    ] 200
[2026-06-05 15:47:14,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:47:14,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:47:14,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:47:14,584.584 INFO    ] No camera update needed
[2026-06-05 15:47:14,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:47:14,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:47:14,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:47:14,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:47:16,640.640 INFO    ] ================================================
[2026-06-05 15:47:17,302.302 INFO    ] Launching Daemon at Fri Jun  5 15:47:17 IST 2026
[2026-06-05 15:47:17,313.313 INFO    ] ================================================
[2026-06-05 15:47:17,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:47:17
[2026-06-05 15:47:18,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:47:18,729.729 INFO    ] Initializing speech engine...
[2026-06-05 15:47:18,752.752 INFO    ] 2026-06-05 15:47:18
[2026-06-05 15:47:19,009.009 INFO    ] 2026-06-05 15:47:19
[2026-06-05 15:47:19,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:47:19,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:47:19,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:47:19,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:47:19,489.489 INFO    ] time= 05/06/2026 15:47:19
[2026-06-05 15:47:19,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:47:19,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:47:19,700.700 INFO    ] No existing commands found in stream
[2026-06-05 15:47:24,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:47:24,735.735 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 15:47:27,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:47:28,025.025 INFO    ] Checking for system updates...
[2026-06-05 15:47:28,083.083 INFO    ] 200
[2026-06-05 15:47:28,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:47:28,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:47:28,148.148 INFO    ] No update needed
[2026-06-05 15:47:28,150.150 INFO    ] Checking for camera pi updates...
[2026-06-05 15:47:28,187.187 INFO    ] 200
[2026-06-05 15:47:28,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:47:28,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:47:28,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:47:28,282.282 INFO    ] No camera update needed
[2026-06-05 15:47:28,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:47:28,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:47:28,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:47:28,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:47:30,341.341 INFO    ] ================================================
[2026-06-05 15:47:30,356.356 INFO    ] Launching Daemon at Fri Jun  5 15:47:30 IST 2026
[2026-06-05 15:47:30,368.368 INFO    ] ================================================
[2026-06-05 15:47:30,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:47:30
[2026-06-05 15:47:31,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:47:31,891.891 INFO    ] Initializing speech engine...
[2026-06-05 15:47:31,900.900 INFO    ] 2026-06-05 15:47:31
[2026-06-05 15:47:32,169.169 INFO    ] 2026-06-05 15:47:32
[2026-06-05 15:47:32,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:47:32,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:47:32,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:47:32,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:47:32,675.675 INFO    ] time= 05/06/2026 15:47:32
[2026-06-05 15:47:32,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:47:32,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:47:32,904.904 INFO    ] No existing commands found in stream
[2026-06-05 15:47:37,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:47:37,940.940 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 15:47:39,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:47:39,347.347 INFO    ] Checking for system updates...
[2026-06-05 15:47:39,384.384 INFO    ] 200
[2026-06-05 15:47:39,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:47:39,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:47:39,442.442 INFO    ] No update needed
[2026-06-05 15:47:39,449.449 INFO    ] Checking for camera pi updates...
[2026-06-05 15:47:39,483.483 INFO    ] 200
[2026-06-05 15:47:39,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:47:39,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:47:39,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:47:39,569.569 INFO    ] No camera update needed
[2026-06-05 15:47:39,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:47:39,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:47:39,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:47:39,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:47:41,624.624 INFO    ] ================================================
[2026-06-05 15:47:41,639.639 INFO    ] Launching Daemon at Fri Jun  5 15:47:41 IST 2026
[2026-06-05 15:47:41,650.650 INFO    ] ================================================
[2026-06-05 15:47:42,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:47:42
[2026-06-05 15:47:42,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:47:43,091.091 INFO    ] Initializing speech engine...
[2026-06-05 15:47:43,115.115 INFO    ] 2026-06-05 15:47:43
[2026-06-05 15:47:43,372.372 INFO    ] 2026-06-05 15:47:43
[2026-06-05 15:47:43,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:47:43,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:47:43,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:47:43,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:47:43,868.868 INFO    ] time= 05/06/2026 15:47:43
[2026-06-05 15:47:43,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:47:43,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:47:44,064.064 INFO    ] No existing commands found in stream
[2026-06-05 15:47:49,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:47:49,098.098 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 15:47:54,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:47:54,350.350 INFO    ] Checking for system updates...
[2026-06-05 15:47:54,386.386 INFO    ] 200
[2026-06-05 15:47:54,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:47:54,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:47:54,444.444 INFO    ] No update needed
[2026-06-05 15:47:54,447.447 INFO    ] Checking for camera pi updates...
[2026-06-05 15:47:54,482.482 INFO    ] 200
[2026-06-05 15:47:54,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:47:54,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:47:54,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:47:54,599.599 INFO    ] No camera update needed
[2026-06-05 15:47:54,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:47:54,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:47:54,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:47:54,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:47:56,654.654 INFO    ] ================================================
[2026-06-05 15:47:56,670.670 INFO    ] Launching Daemon at Fri Jun  5 15:47:56 IST 2026
[2026-06-05 15:47:56,681.681 INFO    ] ================================================
[2026-06-05 15:47:57,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:47:57
[2026-06-05 15:47:58,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:47:58,296.296 INFO    ] Initializing speech engine...
[2026-06-05 15:47:58,306.306 INFO    ] 2026-06-05 15:47:58
[2026-06-05 15:47:58,571.571 INFO    ] 2026-06-05 15:47:58
[2026-06-05 15:47:58,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:47:58,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:47:58,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:47:58,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:47:59,041.041 INFO    ] time= 05/06/2026 15:47:58
[2026-06-05 15:47:59,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:47:59,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:47:59,259.259 INFO    ] No existing commands found in stream
[2026-06-05 15:48:04,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:48:04,276.276 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 15:48:09,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:48:09,564.564 INFO    ] Checking for system updates...
[2026-06-05 15:48:09,603.603 INFO    ] 200
[2026-06-05 15:48:09,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:09,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:48:09,667.667 INFO    ] No update needed
[2026-06-05 15:48:09,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 15:48:09,703.703 INFO    ] 200
[2026-06-05 15:48:09,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:09,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:48:09,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:48:09,774.774 INFO    ] No camera update needed
[2026-06-05 15:48:09,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:48:09,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:48:09,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:48:09,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:48:11,830.830 INFO    ] ================================================
[2026-06-05 15:48:11,845.845 INFO    ] Launching Daemon at Fri Jun  5 15:48:11 IST 2026
[2026-06-05 15:48:11,856.856 INFO    ] ================================================
[2026-06-05 15:48:12,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:48:12
[2026-06-05 15:48:13,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:48:13,395.395 INFO    ] Initializing speech engine...
[2026-06-05 15:48:13,408.408 INFO    ] 2026-06-05 15:48:13
[2026-06-05 15:48:13,662.662 INFO    ] 2026-06-05 15:48:13
[2026-06-05 15:48:13,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:48:13,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:48:14,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:48:14,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:48:14,204.204 INFO    ] time= 05/06/2026 15:48:14
[2026-06-05 15:48:14,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:48:14,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:48:14,359.359 INFO    ] No existing commands found in stream
[2026-06-05 15:48:19,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:48:19,379.379 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 15:48:20,711.711 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:48:20,714.714 INFO    ] Checking for system updates...
[2026-06-05 15:48:20,750.750 INFO    ] 200
[2026-06-05 15:48:20,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:20,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:48:20,808.808 INFO    ] No update needed
[2026-06-05 15:48:20,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 15:48:20,845.845 INFO    ] 200
[2026-06-05 15:48:20,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:20,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:48:20,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:48:20,931.931 INFO    ] No camera update needed
[2026-06-05 15:48:20,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:48:20,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:48:20,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:48:20,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:48:22,988.988 INFO    ] ================================================
[2026-06-05 15:48:23,004.004 INFO    ] Launching Daemon at Fri Jun  5 15:48:22 IST 2026
[2026-06-05 15:48:23,015.015 INFO    ] ================================================
[2026-06-05 15:48:23,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:48:23
[2026-06-05 15:48:24,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:48:24,431.431 INFO    ] Initializing speech engine...
[2026-06-05 15:48:24,438.438 INFO    ] 2026-06-05 15:48:24
[2026-06-05 15:48:24,730.730 INFO    ] 2026-06-05 15:48:24
[2026-06-05 15:48:24,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:48:24,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:48:24,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:48:25,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:48:25,139.139 INFO    ] time= 05/06/2026 15:48:25
[2026-06-05 15:48:25,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:48:25,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:48:25,239.239 INFO    ] No existing commands found in stream
[2026-06-05 15:48:30,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:48:30,277.277 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 15:48:31,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:48:31,170.170 INFO    ] Checking for system updates...
[2026-06-05 15:48:31,205.205 INFO    ] 200
[2026-06-05 15:48:31,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:31,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:48:31,266.266 INFO    ] No update needed
[2026-06-05 15:48:31,269.269 INFO    ] Checking for camera pi updates...
[2026-06-05 15:48:31,305.305 INFO    ] 200
[2026-06-05 15:48:31,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:31,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:48:31,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:48:31,394.394 INFO    ] No camera update needed
[2026-06-05 15:48:31,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:48:31,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:48:31,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:48:31,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:48:33,451.451 INFO    ] ================================================
[2026-06-05 15:48:33,467.467 INFO    ] Launching Daemon at Fri Jun  5 15:48:33 IST 2026
[2026-06-05 15:48:33,478.478 INFO    ] ================================================
[2026-06-05 15:48:34,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:48:34
[2026-06-05 15:48:34,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:48:34,943.943 INFO    ] Initializing speech engine...
[2026-06-05 15:48:34,950.950 INFO    ] 2026-06-05 15:48:34
[2026-06-05 15:48:35,210.210 INFO    ] 2026-06-05 15:48:35
[2026-06-05 15:48:35,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:48:35,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:48:35,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:48:35,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:48:35,751.751 INFO    ] time= 05/06/2026 15:48:35
[2026-06-05 15:48:35,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:48:35,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:48:35,902.902 INFO    ] No existing commands found in stream
[2026-06-05 15:48:40,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:48:40,920.920 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 15:48:44,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:48:44,841.841 INFO    ] Checking for system updates...
[2026-06-05 15:48:44,880.880 INFO    ] 200
[2026-06-05 15:48:44,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:44,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:48:44,943.943 INFO    ] No update needed
[2026-06-05 15:48:44,945.945 INFO    ] Checking for camera pi updates...
[2026-06-05 15:48:44,979.979 INFO    ] 200
[2026-06-05 15:48:44,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:45,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:48:45,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:48:45,076.076 INFO    ] No camera update needed
[2026-06-05 15:48:45,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:48:45,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:48:45,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:48:45,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:48:47,132.132 INFO    ] ================================================
[2026-06-05 15:48:47,148.148 INFO    ] Launching Daemon at Fri Jun  5 15:48:47 IST 2026
[2026-06-05 15:48:47,159.159 INFO    ] ================================================
[2026-06-05 15:48:47,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:48:47
[2026-06-05 15:48:48,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:48:48,742.742 INFO    ] Initializing speech engine...
[2026-06-05 15:48:48,748.748 INFO    ] 2026-06-05 15:48:48
[2026-06-05 15:48:49,019.019 INFO    ] 2026-06-05 15:48:49
[2026-06-05 15:48:49,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:48:49,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:48:49,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:48:49,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:48:49,573.573 INFO    ] time= 05/06/2026 15:48:49
[2026-06-05 15:48:49,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:48:49,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:48:49,726.726 INFO    ] No existing commands found in stream
[2026-06-05 15:48:54,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:48:54,747.747 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 15:48:57,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:48:57,344.344 INFO    ] Checking for system updates...
[2026-06-05 15:48:57,380.380 INFO    ] 200
[2026-06-05 15:48:57,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:57,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:48:57,438.438 INFO    ] No update needed
[2026-06-05 15:48:57,441.441 INFO    ] Checking for camera pi updates...
[2026-06-05 15:48:57,474.474 INFO    ] 200
[2026-06-05 15:48:57,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:48:57,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:48:57,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:48:57,561.561 INFO    ] No camera update needed
[2026-06-05 15:48:57,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:48:57,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:48:57,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:48:57,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:48:59,616.616 INFO    ] ================================================
[2026-06-05 15:48:59,632.632 INFO    ] Launching Daemon at Fri Jun  5 15:48:59 IST 2026
[2026-06-05 15:48:59,644.644 INFO    ] ================================================
[2026-06-05 15:49:00,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:49:00
[2026-06-05 15:49:00,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:49:01,240.240 INFO    ] Initializing speech engine...
[2026-06-05 15:49:01,248.248 INFO    ] 2026-06-05 15:49:01
[2026-06-05 15:49:01,624.624 INFO    ] 2026-06-05 15:49:01
[2026-06-05 15:49:01,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:49:01,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:49:01,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:49:02,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:49:02,097.097 INFO    ] time= 05/06/2026 15:49:02
[2026-06-05 15:49:02,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:49:02,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:49:02,240.240 INFO    ] No existing commands found in stream
[2026-06-05 15:49:07,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:49:07,256.256 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 15:49:10,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:49:10,823.823 INFO    ] Checking for system updates...
[2026-06-05 15:49:10,862.862 INFO    ] 200
[2026-06-05 15:49:10,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:49:10,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:49:10,919.919 INFO    ] No update needed
[2026-06-05 15:49:10,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 15:49:10,956.956 INFO    ] 200
[2026-06-05 15:49:10,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:49:11,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:49:11,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:49:11,048.048 INFO    ] No camera update needed
[2026-06-05 15:49:11,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:49:11,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:49:11,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:49:11,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:49:13,105.105 INFO    ] ================================================
[2026-06-05 15:49:13,120.120 INFO    ] Launching Daemon at Fri Jun  5 15:49:13 IST 2026
[2026-06-05 15:49:13,132.132 INFO    ] ================================================
[2026-06-05 15:49:13,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:49:13
[2026-06-05 15:49:14,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:49:14,759.759 INFO    ] Initializing speech engine...
[2026-06-05 15:49:14,771.771 INFO    ] 2026-06-05 15:49:14
[2026-06-05 15:49:15,077.077 INFO    ] 2026-06-05 15:49:15
[2026-06-05 15:49:15,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:49:15,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:49:15,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:49:15,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:49:15,587.587 INFO    ] time= 05/06/2026 15:49:15
[2026-06-05 15:49:15,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:49:15,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:49:15,747.747 INFO    ] No existing commands found in stream
[2026-06-05 15:49:20,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:49:20,782.782 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 15:49:24,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:49:24,244.244 INFO    ] Checking for system updates...
[2026-06-05 15:49:24,282.282 INFO    ] 200
[2026-06-05 15:49:24,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:49:24,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:49:24,343.343 INFO    ] No update needed
[2026-06-05 15:49:24,346.346 INFO    ] Checking for camera pi updates...
[2026-06-05 15:49:24,381.381 INFO    ] 200
[2026-06-05 15:49:24,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:49:24,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:49:24,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:49:24,574.574 INFO    ] No camera update needed
[2026-06-05 15:49:24,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:49:24,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:49:24,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:49:24,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:49:26,635.635 INFO    ] ================================================
[2026-06-05 15:49:26,651.651 INFO    ] Launching Daemon at Fri Jun  5 15:49:26 IST 2026
[2026-06-05 15:49:26,662.662 INFO    ] ================================================
[2026-06-05 15:49:27,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:49:27
[2026-06-05 15:49:27,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:49:28,086.086 INFO    ] Initializing speech engine...
[2026-06-05 15:49:28,095.095 INFO    ] 2026-06-05 15:49:28
[2026-06-05 15:49:28,346.346 INFO    ] 2026-06-05 15:49:28
[2026-06-05 15:49:28,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:49:28,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:49:28,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:49:28,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:49:28,807.807 INFO    ] time= 05/06/2026 15:49:28
[2026-06-05 15:49:28,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:49:28,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:49:29,070.070 INFO    ] No existing commands found in stream
[2026-06-05 15:49:34,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:49:34,089.089 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 15:49:36,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:49:36,172.172 INFO    ] Checking for system updates...
[2026-06-05 15:49:36,208.208 INFO    ] 200
[2026-06-05 15:49:36,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:49:36,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:49:36,271.271 INFO    ] No update needed
[2026-06-05 15:49:36,273.273 INFO    ] Checking for camera pi updates...
[2026-06-05 15:49:36,311.311 INFO    ] 200
[2026-06-05 15:49:36,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:49:36,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:49:36,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:49:36,397.397 INFO    ] No camera update needed
[2026-06-05 15:49:36,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:49:36,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:49:36,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:49:36,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:49:38,453.453 INFO    ] ================================================
[2026-06-05 15:49:38,469.469 INFO    ] Launching Daemon at Fri Jun  5 15:49:38 IST 2026
[2026-06-05 15:49:38,479.479 INFO    ] ================================================
[2026-06-05 15:49:39,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:49:39
[2026-06-05 15:49:39,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:49:39,939.939 INFO    ] Initializing speech engine...
[2026-06-05 15:49:39,949.949 INFO    ] 2026-06-05 15:49:39
[2026-06-05 15:49:40,220.220 INFO    ] 2026-06-05 15:49:40
[2026-06-05 15:49:40,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:49:40,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:49:40,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:49:40,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:49:40,602.602 INFO    ] time= 05/06/2026 15:49:40
[2026-06-05 15:49:40,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:49:40,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:49:40,776.776 INFO    ] No existing commands found in stream
[2026-06-05 15:49:45,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:49:45,809.809 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 15:49:48,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:49:48,513.513 INFO    ] Checking for system updates...
[2026-06-05 15:49:48,554.554 INFO    ] 200
[2026-06-05 15:49:48,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:49:48,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:49:48,619.619 INFO    ] No update needed
[2026-06-05 15:49:48,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 15:49:48,660.660 INFO    ] 200
[2026-06-05 15:49:48,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:49:48,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:49:48,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:49:48,761.761 INFO    ] No camera update needed
[2026-06-05 15:49:48,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:49:48,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:49:48,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:49:48,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:49:50,818.818 INFO    ] ================================================
[2026-06-05 15:49:50,834.834 INFO    ] Launching Daemon at Fri Jun  5 15:49:50 IST 2026
[2026-06-05 15:49:50,845.845 INFO    ] ================================================
[2026-06-05 15:49:51,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:49:51
[2026-06-05 15:49:52,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:49:52,501.501 INFO    ] Initializing speech engine...
[2026-06-05 15:49:52,510.510 INFO    ] 2026-06-05 15:49:52
[2026-06-05 15:49:52,813.813 INFO    ] 2026-06-05 15:49:52
[2026-06-05 15:49:52,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:49:54,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:49:54,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:49:54,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:49:54,188.188 INFO    ] time= 05/06/2026 15:49:54
[2026-06-05 15:49:54,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:49:54,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:49:54,262.262 INFO    ] No existing commands found in stream
[2026-06-05 15:49:59,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:49:59,278.278 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 15:50:00,750.750 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:50:00,753.753 INFO    ] Checking for system updates...
[2026-06-05 15:50:00,790.790 INFO    ] 200
[2026-06-05 15:50:00,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:00,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:50:00,859.859 INFO    ] No update needed
[2026-06-05 15:50:00,862.862 INFO    ] Checking for camera pi updates...
[2026-06-05 15:50:00,897.897 INFO    ] 200
[2026-06-05 15:50:00,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:00,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:50:00,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:50:00,991.991 INFO    ] No camera update needed
[2026-06-05 15:50:00,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:50:00,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:50:01,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:50:01,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:50:03,092.092 INFO    ] ================================================
[2026-06-05 15:50:03,118.118 INFO    ] Launching Daemon at Fri Jun  5 15:50:03 IST 2026
[2026-06-05 15:50:03,139.139 INFO    ] ================================================
[2026-06-05 15:50:03,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:50:03
[2026-06-05 15:50:04,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:50:04,894.894 INFO    ] Initializing speech engine...
[2026-06-05 15:50:04,906.906 INFO    ] 2026-06-05 15:50:04
[2026-06-05 15:50:05,214.214 INFO    ] 2026-06-05 15:50:05
[2026-06-05 15:50:05,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:50:05,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:50:05,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:50:05,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:50:05,723.723 INFO    ] time= 05/06/2026 15:50:05
[2026-06-05 15:50:05,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:50:05,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:50:05,873.873 INFO    ] No existing commands found in stream
[2026-06-05 15:50:10,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:50:10,892.892 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 15:50:12,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:50:12,821.821 INFO    ] Checking for system updates...
[2026-06-05 15:50:12,862.862 INFO    ] 200
[2026-06-05 15:50:12,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:12,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:50:12,930.930 INFO    ] No update needed
[2026-06-05 15:50:12,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 15:50:12,978.978 INFO    ] 200
[2026-06-05 15:50:12,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:13,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:50:13,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:50:13,080.080 INFO    ] No camera update needed
[2026-06-05 15:50:13,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:50:13,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:50:13,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:50:13,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:50:15,149.149 INFO    ] ================================================
[2026-06-05 15:50:15,164.164 INFO    ] Launching Daemon at Fri Jun  5 15:50:15 IST 2026
[2026-06-05 15:50:15,176.176 INFO    ] ================================================
[2026-06-05 15:50:15,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:50:15
[2026-06-05 15:50:16,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:50:16,641.641 INFO    ] Initializing speech engine...
[2026-06-05 15:50:16,649.649 INFO    ] 2026-06-05 15:50:16
[2026-06-05 15:50:16,909.909 INFO    ] 2026-06-05 15:50:16
[2026-06-05 15:50:16,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:50:17,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:50:17,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:50:17,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:50:17,401.401 INFO    ] time= 05/06/2026 15:50:17
[2026-06-05 15:50:17,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:50:17,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:50:17,616.616 INFO    ] No existing commands found in stream
[2026-06-05 15:50:22,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:50:22,634.634 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 15:50:25,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:50:25,731.731 INFO    ] Checking for system updates...
[2026-06-05 15:50:25,767.767 INFO    ] 200
[2026-06-05 15:50:25,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:25,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:50:25,825.825 INFO    ] No update needed
[2026-06-05 15:50:25,828.828 INFO    ] Checking for camera pi updates...
[2026-06-05 15:50:25,865.865 INFO    ] 200
[2026-06-05 15:50:25,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:25,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:50:25,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:50:25,954.954 INFO    ] No camera update needed
[2026-06-05 15:50:25,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:50:25,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:50:25,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:50:25,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:50:28,011.011 INFO    ] ================================================
[2026-06-05 15:50:28,027.027 INFO    ] Launching Daemon at Fri Jun  5 15:50:28 IST 2026
[2026-06-05 15:50:28,038.038 INFO    ] ================================================
[2026-06-05 15:50:28,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:50:28
[2026-06-05 15:50:29,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:50:29,455.455 INFO    ] Initializing speech engine...
[2026-06-05 15:50:29,461.461 INFO    ] 2026-06-05 15:50:29
[2026-06-05 15:50:29,757.757 INFO    ] 2026-06-05 15:50:29
[2026-06-05 15:50:29,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:50:29,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:50:30,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:50:30,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:50:30,171.171 INFO    ] time= 05/06/2026 15:50:30
[2026-06-05 15:50:30,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:50:30,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:50:30,258.258 INFO    ] No existing commands found in stream
[2026-06-05 15:50:35,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:50:35,297.297 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 15:50:39,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:50:39,293.293 INFO    ] Checking for system updates...
[2026-06-05 15:50:39,332.332 INFO    ] 200
[2026-06-05 15:50:39,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:39,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:50:39,391.391 INFO    ] No update needed
[2026-06-05 15:50:39,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 15:50:39,428.428 INFO    ] 200
[2026-06-05 15:50:39,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:39,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:50:39,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:50:39,518.518 INFO    ] No camera update needed
[2026-06-05 15:50:39,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:50:39,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:50:39,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:50:39,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:50:41,575.575 INFO    ] ================================================
[2026-06-05 15:50:41,590.590 INFO    ] Launching Daemon at Fri Jun  5 15:50:41 IST 2026
[2026-06-05 15:50:41,601.601 INFO    ] ================================================
[2026-06-05 15:50:42,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:50:42
[2026-06-05 15:50:42,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:50:43,014.014 INFO    ] Initializing speech engine...
[2026-06-05 15:50:43,029.029 INFO    ] 2026-06-05 15:50:43
[2026-06-05 15:50:43,285.285 INFO    ] 2026-06-05 15:50:43
[2026-06-05 15:50:43,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:50:43,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:50:43,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:50:43,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:50:43,661.661 INFO    ] time= 05/06/2026 15:50:43
[2026-06-05 15:50:43,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:50:43,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:50:43,800.800 INFO    ] No existing commands found in stream
[2026-06-05 15:50:48,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:50:48,813.813 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 15:50:50,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:50:50,314.314 INFO    ] Checking for system updates...
[2026-06-05 15:50:50,355.355 INFO    ] 200
[2026-06-05 15:50:50,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:50,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:50:50,415.415 INFO    ] No update needed
[2026-06-05 15:50:50,418.418 INFO    ] Checking for camera pi updates...
[2026-06-05 15:50:50,452.452 INFO    ] 200
[2026-06-05 15:50:50,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:50:50,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:50:50,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:50:50,543.543 INFO    ] No camera update needed
[2026-06-05 15:50:50,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:50:50,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:50:50,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:50:50,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:50:52,601.601 INFO    ] ================================================
[2026-06-05 15:50:52,616.616 INFO    ] Launching Daemon at Fri Jun  5 15:50:52 IST 2026
[2026-06-05 15:50:52,627.627 INFO    ] ================================================
[2026-06-05 15:50:53,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:50:53
[2026-06-05 15:50:53,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:50:54,183.183 INFO    ] Initializing speech engine...
[2026-06-05 15:50:54,206.206 INFO    ] 2026-06-05 15:50:54
[2026-06-05 15:50:54,478.478 INFO    ] 2026-06-05 15:50:54
[2026-06-05 15:50:54,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:50:54,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:50:54,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:50:54,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:50:54,855.855 INFO    ] time= 05/06/2026 15:50:54
[2026-06-05 15:50:54,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:50:54,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:50:55,051.051 INFO    ] No existing commands found in stream
[2026-06-05 15:51:00,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:51:00,070.070 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 15:51:01,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:51:01,884.884 INFO    ] Checking for system updates...
[2026-06-05 15:51:01,927.927 INFO    ] 200
[2026-06-05 15:51:01,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:01,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:51:01,992.992 INFO    ] No update needed
[2026-06-05 15:51:01,995.995 INFO    ] Checking for camera pi updates...
[2026-06-05 15:51:02,032.032 INFO    ] 200
[2026-06-05 15:51:02,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:02,085.085 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:51:02,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:51:02,134.134 INFO    ] No camera update needed
[2026-06-05 15:51:02,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:51:02,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:51:02,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:51:02,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:51:04,201.201 INFO    ] ================================================
[2026-06-05 15:51:04,217.217 INFO    ] Launching Daemon at Fri Jun  5 15:51:04 IST 2026
[2026-06-05 15:51:04,228.228 INFO    ] ================================================
[2026-06-05 15:51:04,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:51:04
[2026-06-05 15:51:05,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:51:05,763.763 INFO    ] Initializing speech engine...
[2026-06-05 15:51:05,775.775 INFO    ] 2026-06-05 15:51:05
[2026-06-05 15:51:06,041.041 INFO    ] 2026-06-05 15:51:06
[2026-06-05 15:51:06,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:51:06,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:51:06,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:51:06,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:51:06,472.472 INFO    ] time= 05/06/2026 15:51:06
[2026-06-05 15:51:06,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:51:06,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:51:06,652.652 INFO    ] No existing commands found in stream
[2026-06-05 15:51:11,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:51:11,668.668 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 15:51:15,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:51:15,758.758 INFO    ] Checking for system updates...
[2026-06-05 15:51:15,794.794 INFO    ] 200
[2026-06-05 15:51:15,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:15,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:51:15,856.856 INFO    ] No update needed
[2026-06-05 15:51:15,859.859 INFO    ] Checking for camera pi updates...
[2026-06-05 15:51:15,893.893 INFO    ] 200
[2026-06-05 15:51:15,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:15,938.938 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:51:15,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:51:15,983.983 INFO    ] No camera update needed
[2026-06-05 15:51:15,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:51:15,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:51:15,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:51:16,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:51:18,042.042 INFO    ] ================================================
[2026-06-05 15:51:18,057.057 INFO    ] Launching Daemon at Fri Jun  5 15:51:18 IST 2026
[2026-06-05 15:51:18,067.067 INFO    ] ================================================
[2026-06-05 15:51:18,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:51:18
[2026-06-05 15:51:19,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:51:19,509.509 INFO    ] Initializing speech engine...
[2026-06-05 15:51:19,515.515 INFO    ] 2026-06-05 15:51:19
[2026-06-05 15:51:19,776.776 INFO    ] 2026-06-05 15:51:19
[2026-06-05 15:51:19,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:51:20,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:51:20,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:51:20,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:51:20,248.248 INFO    ] time= 05/06/2026 15:51:20
[2026-06-05 15:51:20,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:51:20,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:51:20,427.427 INFO    ] No existing commands found in stream
[2026-06-05 15:51:25,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:51:25,467.467 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 15:51:26,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:51:26,033.033 INFO    ] Checking for system updates...
[2026-06-05 15:51:26,073.073 INFO    ] 200
[2026-06-05 15:51:26,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:26,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:51:26,137.137 INFO    ] No update needed
[2026-06-05 15:51:26,140.140 INFO    ] Checking for camera pi updates...
[2026-06-05 15:51:26,177.177 INFO    ] 200
[2026-06-05 15:51:26,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:26,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:51:26,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:51:26,268.268 INFO    ] No camera update needed
[2026-06-05 15:51:26,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:51:26,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:51:26,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:51:26,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:51:28,325.325 INFO    ] ================================================
[2026-06-05 15:51:28,340.340 INFO    ] Launching Daemon at Fri Jun  5 15:51:28 IST 2026
[2026-06-05 15:51:28,351.351 INFO    ] ================================================
[2026-06-05 15:51:29,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:51:28
[2026-06-05 15:51:29,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:51:29,917.917 INFO    ] Initializing speech engine...
[2026-06-05 15:51:29,939.939 INFO    ] 2026-06-05 15:51:29
[2026-06-05 15:51:30,195.195 INFO    ] 2026-06-05 15:51:30
[2026-06-05 15:51:30,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:51:30,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:51:30,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:51:30,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:51:30,770.770 INFO    ] time= 05/06/2026 15:51:30
[2026-06-05 15:51:30,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:51:30,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:51:30,909.909 INFO    ] No existing commands found in stream
[2026-06-05 15:51:35,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:51:35,936.936 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 15:51:39,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:51:39,832.832 INFO    ] Checking for system updates...
[2026-06-05 15:51:39,868.868 INFO    ] 200
[2026-06-05 15:51:39,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:39,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:51:39,925.925 INFO    ] No update needed
[2026-06-05 15:51:39,928.928 INFO    ] Checking for camera pi updates...
[2026-06-05 15:51:39,962.962 INFO    ] 200
[2026-06-05 15:51:39,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:40,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:51:40,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:51:40,051.051 INFO    ] No camera update needed
[2026-06-05 15:51:40,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:51:40,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:51:40,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:51:40,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:51:42,108.108 INFO    ] ================================================
[2026-06-05 15:51:42,123.123 INFO    ] Launching Daemon at Fri Jun  5 15:51:42 IST 2026
[2026-06-05 15:51:42,134.134 INFO    ] ================================================
[2026-06-05 15:51:42,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:51:42
[2026-06-05 15:51:43,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:51:43,662.662 INFO    ] Initializing speech engine...
[2026-06-05 15:51:43,673.673 INFO    ] 2026-06-05 15:51:43
[2026-06-05 15:51:43,934.934 INFO    ] 2026-06-05 15:51:43
[2026-06-05 15:51:43,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:51:44,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:51:44,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:51:44,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:51:44,390.390 INFO    ] time= 05/06/2026 15:51:44
[2026-06-05 15:51:44,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:51:44,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:51:44,633.633 INFO    ] No existing commands found in stream
[2026-06-05 15:51:49,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:51:49,651.651 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 15:51:54,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:51:54,300.300 INFO    ] Checking for system updates...
[2026-06-05 15:51:54,337.337 INFO    ] 200
[2026-06-05 15:51:54,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:54,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:51:54,395.395 INFO    ] No update needed
[2026-06-05 15:51:54,397.397 INFO    ] Checking for camera pi updates...
[2026-06-05 15:51:54,432.432 INFO    ] 200
[2026-06-05 15:51:54,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:51:54,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:51:54,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:51:54,519.519 INFO    ] No camera update needed
[2026-06-05 15:51:54,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:51:54,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:51:54,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:51:54,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:51:56,576.576 INFO    ] ================================================
[2026-06-05 15:51:56,592.592 INFO    ] Launching Daemon at Fri Jun  5 15:51:56 IST 2026
[2026-06-05 15:51:56,603.603 INFO    ] ================================================
[2026-06-05 15:51:57,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:51:57
[2026-06-05 15:51:57,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:51:58,065.065 INFO    ] Initializing speech engine...
[2026-06-05 15:51:58,076.076 INFO    ] 2026-06-05 15:51:58
[2026-06-05 15:51:58,334.334 INFO    ] 2026-06-05 15:51:58
[2026-06-05 15:51:58,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:51:58,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:51:58,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:51:58,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:51:58,697.697 INFO    ] time= 05/06/2026 15:51:58
[2026-06-05 15:51:58,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:51:58,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:51:58,895.895 INFO    ] No existing commands found in stream
[2026-06-05 15:52:03,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:52:03,909.909 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 15:52:05,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:52:05,956.956 INFO    ] Checking for system updates...
[2026-06-05 15:52:06,002.002 INFO    ] 200
[2026-06-05 15:52:06,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:06,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:52:06,079.079 INFO    ] No update needed
[2026-06-05 15:52:06,081.081 INFO    ] Checking for camera pi updates...
[2026-06-05 15:52:06,130.130 INFO    ] 200
[2026-06-05 15:52:06,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:06,174.174 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:52:06,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:52:06,213.213 INFO    ] No camera update needed
[2026-06-05 15:52:06,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:52:06,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:52:06,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:52:06,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:52:08,283.283 INFO    ] ================================================
[2026-06-05 15:52:08,302.302 INFO    ] Launching Daemon at Fri Jun  5 15:52:08 IST 2026
[2026-06-05 15:52:08,315.315 INFO    ] ================================================
[2026-06-05 15:52:08,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:52:08
[2026-06-05 15:52:09,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:52:09,886.886 INFO    ] Initializing speech engine...
[2026-06-05 15:52:09,899.899 INFO    ] 2026-06-05 15:52:09
[2026-06-05 15:52:10,163.163 INFO    ] 2026-06-05 15:52:10
[2026-06-05 15:52:10,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:52:10,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:52:10,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:52:10,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:52:10,643.643 INFO    ] time= 05/06/2026 15:52:10
[2026-06-05 15:52:10,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:52:10,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:52:10,805.805 INFO    ] No existing commands found in stream
[2026-06-05 15:52:15,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:52:15,821.821 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 15:52:17,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:52:17,454.454 INFO    ] Checking for system updates...
[2026-06-05 15:52:17,492.492 INFO    ] 200
[2026-06-05 15:52:17,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:17,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:52:17,551.551 INFO    ] No update needed
[2026-06-05 15:52:17,554.554 INFO    ] Checking for camera pi updates...
[2026-06-05 15:52:17,596.596 INFO    ] 200
[2026-06-05 15:52:17,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:17,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:52:17,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:52:17,685.685 INFO    ] No camera update needed
[2026-06-05 15:52:17,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:52:17,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:52:17,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:52:17,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:52:19,747.747 INFO    ] ================================================
[2026-06-05 15:52:19,763.763 INFO    ] Launching Daemon at Fri Jun  5 15:52:19 IST 2026
[2026-06-05 15:52:19,773.773 INFO    ] ================================================
[2026-06-05 15:52:20,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:52:20
[2026-06-05 15:52:20,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:52:21,285.285 INFO    ] Initializing speech engine...
[2026-06-05 15:52:21,295.295 INFO    ] 2026-06-05 15:52:21
[2026-06-05 15:52:21,542.542 INFO    ] 2026-06-05 15:52:21
[2026-06-05 15:52:21,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:52:22,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:52:22,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:52:24,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:52:24,133.133 INFO    ] time= 05/06/2026 15:52:24
[2026-06-05 15:52:24,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:52:24,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:52:24,278.278 INFO    ] No existing commands found in stream
[2026-06-05 15:52:29,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:52:29,317.317 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 15:52:31,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:52:31,219.219 INFO    ] Checking for system updates...
[2026-06-05 15:52:31,256.256 INFO    ] 200
[2026-06-05 15:52:31,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:31,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:52:31,324.324 INFO    ] No update needed
[2026-06-05 15:52:31,327.327 INFO    ] Checking for camera pi updates...
[2026-06-05 15:52:31,363.363 INFO    ] 200
[2026-06-05 15:52:31,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:31,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:52:31,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:52:31,446.446 INFO    ] No camera update needed
[2026-06-05 15:52:31,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:52:31,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:52:31,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:52:31,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:52:33,508.508 INFO    ] ================================================
[2026-06-05 15:52:33,523.523 INFO    ] Launching Daemon at Fri Jun  5 15:52:33 IST 2026
[2026-06-05 15:52:33,535.535 INFO    ] ================================================
[2026-06-05 15:52:34,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:52:34
[2026-06-05 15:52:34,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:52:35,036.036 INFO    ] Initializing speech engine...
[2026-06-05 15:52:35,042.042 INFO    ] 2026-06-05 15:52:35
[2026-06-05 15:52:35,316.316 INFO    ] 2026-06-05 15:52:35
[2026-06-05 15:52:35,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:52:35,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:52:35,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:52:35,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:52:35,825.825 INFO    ] time= 05/06/2026 15:52:35
[2026-06-05 15:52:35,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:52:35,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:52:36,055.055 INFO    ] No existing commands found in stream
[2026-06-05 15:52:41,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:52:41,091.091 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 15:52:43,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:52:43,489.489 INFO    ] Checking for system updates...
[2026-06-05 15:52:43,530.530 INFO    ] 200
[2026-06-05 15:52:43,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:43,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:52:43,596.596 INFO    ] No update needed
[2026-06-05 15:52:43,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 15:52:43,638.638 INFO    ] 200
[2026-06-05 15:52:43,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:43,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:52:43,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:52:43,733.733 INFO    ] No camera update needed
[2026-06-05 15:52:43,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:52:43,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:52:43,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:52:43,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:52:45,792.792 INFO    ] ================================================
[2026-06-05 15:52:45,808.808 INFO    ] Launching Daemon at Fri Jun  5 15:52:45 IST 2026
[2026-06-05 15:52:45,818.818 INFO    ] ================================================
[2026-06-05 15:52:46,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:52:46
[2026-06-05 15:52:46,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:52:47,237.237 INFO    ] Initializing speech engine...
[2026-06-05 15:52:47,254.254 INFO    ] 2026-06-05 15:52:47
[2026-06-05 15:52:47,541.541 INFO    ] 2026-06-05 15:52:47
[2026-06-05 15:52:47,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:52:47,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:52:47,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:52:47,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:52:47,960.960 INFO    ] time= 05/06/2026 15:52:47
[2026-06-05 15:52:47,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:52:47,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:52:48,044.044 INFO    ] No existing commands found in stream
[2026-06-05 15:52:53,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:52:53,060.060 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 15:52:54,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:52:54,453.453 INFO    ] Checking for system updates...
[2026-06-05 15:52:54,489.489 INFO    ] 200
[2026-06-05 15:52:54,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:54,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:52:54,549.549 INFO    ] No update needed
[2026-06-05 15:52:54,552.552 INFO    ] Checking for camera pi updates...
[2026-06-05 15:52:54,586.586 INFO    ] 200
[2026-06-05 15:52:54,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:52:54,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:52:54,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:52:54,676.676 INFO    ] No camera update needed
[2026-06-05 15:52:54,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:52:54,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:52:54,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:52:54,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:52:56,732.732 INFO    ] ================================================
[2026-06-05 15:52:56,747.747 INFO    ] Launching Daemon at Fri Jun  5 15:52:56 IST 2026
[2026-06-05 15:52:56,758.758 INFO    ] ================================================
[2026-06-05 15:52:57,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:52:57
[2026-06-05 15:52:57,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:52:58,237.237 INFO    ] Initializing speech engine...
[2026-06-05 15:52:58,251.251 INFO    ] 2026-06-05 15:52:58
[2026-06-05 15:52:58,522.522 INFO    ] 2026-06-05 15:52:58
[2026-06-05 15:52:58,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:52:58,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:52:58,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:52:58,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:52:58,946.946 INFO    ] time= 05/06/2026 15:52:58
[2026-06-05 15:52:58,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:52:59,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:52:59,135.135 INFO    ] No existing commands found in stream
[2026-06-05 15:53:04,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:53:04,168.168 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 15:53:08,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:53:08,174.174 INFO    ] Checking for system updates...
[2026-06-05 15:53:08,210.210 INFO    ] 200
[2026-06-05 15:53:08,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:08,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:53:08,269.269 INFO    ] No update needed
[2026-06-05 15:53:08,272.272 INFO    ] Checking for camera pi updates...
[2026-06-05 15:53:08,306.306 INFO    ] 200
[2026-06-05 15:53:08,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:08,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:53:08,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:53:08,378.378 INFO    ] No camera update needed
[2026-06-05 15:53:08,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:53:08,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:53:08,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:53:08,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:53:10,435.435 INFO    ] ================================================
[2026-06-05 15:53:10,451.451 INFO    ] Launching Daemon at Fri Jun  5 15:53:10 IST 2026
[2026-06-05 15:53:10,461.461 INFO    ] ================================================
[2026-06-05 15:53:11,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:53:11
[2026-06-05 15:53:11,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:53:11,925.925 INFO    ] Initializing speech engine...
[2026-06-05 15:53:11,934.934 INFO    ] 2026-06-05 15:53:11
[2026-06-05 15:53:12,198.198 INFO    ] 2026-06-05 15:53:12
[2026-06-05 15:53:12,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:53:12,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:53:12,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:53:12,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:53:12,656.656 INFO    ] time= 05/06/2026 15:53:12
[2026-06-05 15:53:12,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:53:12,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:53:12,876.876 INFO    ] No existing commands found in stream
[2026-06-05 15:53:17,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:53:17,906.906 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 15:53:18,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:53:18,516.516 INFO    ] Checking for system updates...
[2026-06-05 15:53:18,552.552 INFO    ] 200
[2026-06-05 15:53:18,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:18,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:53:18,617.617 INFO    ] No update needed
[2026-06-05 15:53:18,619.619 INFO    ] Checking for camera pi updates...
[2026-06-05 15:53:18,653.653 INFO    ] 200
[2026-06-05 15:53:18,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:18,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:53:18,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:53:18,745.745 INFO    ] No camera update needed
[2026-06-05 15:53:18,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:53:18,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:53:18,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:53:18,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:53:20,802.802 INFO    ] ================================================
[2026-06-05 15:53:20,817.817 INFO    ] Launching Daemon at Fri Jun  5 15:53:20 IST 2026
[2026-06-05 15:53:20,827.827 INFO    ] ================================================
[2026-06-05 15:53:21,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:53:21
[2026-06-05 15:53:21,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:53:22,245.245 INFO    ] Initializing speech engine...
[2026-06-05 15:53:22,252.252 INFO    ] 2026-06-05 15:53:22
[2026-06-05 15:53:22,547.547 INFO    ] 2026-06-05 15:53:22
[2026-06-05 15:53:22,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:53:23,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:53:23,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:53:24,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:53:24,086.086 INFO    ] time= 05/06/2026 15:53:24
[2026-06-05 15:53:24,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:53:24,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:53:24,168.168 INFO    ] No existing commands found in stream
[2026-06-05 15:53:29,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:53:29,181.181 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 15:53:30,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:53:30,183.183 INFO    ] Checking for system updates...
[2026-06-05 15:53:30,219.219 INFO    ] 200
[2026-06-05 15:53:30,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:30,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:53:30,277.277 INFO    ] No update needed
[2026-06-05 15:53:30,280.280 INFO    ] Checking for camera pi updates...
[2026-06-05 15:53:30,313.313 INFO    ] 200
[2026-06-05 15:53:30,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:30,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:53:30,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:53:30,404.404 INFO    ] No camera update needed
[2026-06-05 15:53:30,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:53:30,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:53:30,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:53:30,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:53:32,460.460 INFO    ] ================================================
[2026-06-05 15:53:32,475.475 INFO    ] Launching Daemon at Fri Jun  5 15:53:32 IST 2026
[2026-06-05 15:53:32,487.487 INFO    ] ================================================
[2026-06-05 15:53:33,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:53:33
[2026-06-05 15:53:33,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:53:33,974.974 INFO    ] Initializing speech engine...
[2026-06-05 15:53:33,981.981 INFO    ] 2026-06-05 15:53:33
[2026-06-05 15:53:34,255.255 INFO    ] 2026-06-05 15:53:34
[2026-06-05 15:53:34,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:53:34,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:53:34,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:53:34,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:53:34,794.794 INFO    ] time= 05/06/2026 15:53:34
[2026-06-05 15:53:34,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:53:34,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:53:34,963.963 INFO    ] No existing commands found in stream
[2026-06-05 15:53:39,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:53:39,997.997 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 15:53:44,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:53:44,696.696 INFO    ] Checking for system updates...
[2026-06-05 15:53:44,732.732 INFO    ] 200
[2026-06-05 15:53:44,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:44,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:53:44,790.790 INFO    ] No update needed
[2026-06-05 15:53:44,792.792 INFO    ] Checking for camera pi updates...
[2026-06-05 15:53:44,827.827 INFO    ] 200
[2026-06-05 15:53:44,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:44,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:53:45,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:53:45,022.022 INFO    ] No camera update needed
[2026-06-05 15:53:45,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:53:45,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:53:45,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:53:45,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:53:47,084.084 INFO    ] ================================================
[2026-06-05 15:53:47,100.100 INFO    ] Launching Daemon at Fri Jun  5 15:53:47 IST 2026
[2026-06-05 15:53:47,111.111 INFO    ] ================================================
[2026-06-05 15:53:47,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:53:47
[2026-06-05 15:53:48,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:53:48,777.777 INFO    ] Initializing speech engine...
[2026-06-05 15:53:48,789.789 INFO    ] 2026-06-05 15:53:48
[2026-06-05 15:53:49,069.069 INFO    ] 2026-06-05 15:53:49
[2026-06-05 15:53:49,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:53:49,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:53:49,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:53:49,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:53:49,608.608 INFO    ] time= 05/06/2026 15:53:49
[2026-06-05 15:53:49,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:53:49,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:53:49,799.799 INFO    ] No existing commands found in stream
[2026-06-05 15:53:54,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:53:54,838.838 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 15:53:57,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:53:57,747.747 INFO    ] Checking for system updates...
[2026-06-05 15:53:57,789.789 INFO    ] 200
[2026-06-05 15:53:57,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:57,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:53:57,853.853 INFO    ] No update needed
[2026-06-05 15:53:57,856.856 INFO    ] Checking for camera pi updates...
[2026-06-05 15:53:57,896.896 INFO    ] 200
[2026-06-05 15:53:57,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:53:57,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:53:57,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:53:57,991.991 INFO    ] No camera update needed
[2026-06-05 15:53:57,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:53:57,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:53:58,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:53:58,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:54:00,051.051 INFO    ] ================================================
[2026-06-05 15:54:00,067.067 INFO    ] Launching Daemon at Fri Jun  5 15:54:00 IST 2026
[2026-06-05 15:54:00,077.077 INFO    ] ================================================
[2026-06-05 15:54:00,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:54:00
[2026-06-05 15:54:01,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:54:01,758.758 INFO    ] Initializing speech engine...
[2026-06-05 15:54:01,764.764 INFO    ] 2026-06-05 15:54:01
[2026-06-05 15:54:02,131.131 INFO    ] 2026-06-05 15:54:02
[2026-06-05 15:54:02,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:54:02,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:54:02,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:54:02,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:54:02,552.552 INFO    ] time= 05/06/2026 15:54:02
[2026-06-05 15:54:02,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:54:02,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:54:02,712.712 INFO    ] No existing commands found in stream
[2026-06-05 15:54:07,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:54:07,729.729 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 15:54:09,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:54:09,877.877 INFO    ] Checking for system updates...
[2026-06-05 15:54:09,914.914 INFO    ] 200
[2026-06-05 15:54:09,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:09,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:54:09,973.973 INFO    ] No update needed
[2026-06-05 15:54:09,975.975 INFO    ] Checking for camera pi updates...
[2026-06-05 15:54:10,009.009 INFO    ] 200
[2026-06-05 15:54:10,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:10,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:54:10,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:54:10,109.109 INFO    ] No camera update needed
[2026-06-05 15:54:10,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:54:10,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:54:10,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:54:10,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:54:12,166.166 INFO    ] ================================================
[2026-06-05 15:54:12,181.181 INFO    ] Launching Daemon at Fri Jun  5 15:54:12 IST 2026
[2026-06-05 15:54:12,192.192 INFO    ] ================================================
[2026-06-05 15:54:12,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:54:12
[2026-06-05 15:54:13,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:54:13,601.601 INFO    ] Initializing speech engine...
[2026-06-05 15:54:13,608.608 INFO    ] 2026-06-05 15:54:13
[2026-06-05 15:54:13,911.911 INFO    ] 2026-06-05 15:54:13
[2026-06-05 15:54:13,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:54:14,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:54:14,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:54:14,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:54:14,301.301 INFO    ] time= 05/06/2026 15:54:14
[2026-06-05 15:54:14,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:54:14,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:54:14,427.427 INFO    ] No existing commands found in stream
[2026-06-05 15:54:19,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:54:19,441.441 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 15:54:20,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:54:20,554.554 INFO    ] Checking for system updates...
[2026-06-05 15:54:20,589.589 INFO    ] 200
[2026-06-05 15:54:20,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:20,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:54:20,647.647 INFO    ] No update needed
[2026-06-05 15:54:20,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 15:54:20,684.684 INFO    ] 200
[2026-06-05 15:54:20,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:20,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:54:20,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:54:20,771.771 INFO    ] No camera update needed
[2026-06-05 15:54:20,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:54:20,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:54:20,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:54:20,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:54:22,828.828 INFO    ] ================================================
[2026-06-05 15:54:22,843.843 INFO    ] Launching Daemon at Fri Jun  5 15:54:22 IST 2026
[2026-06-05 15:54:22,854.854 INFO    ] ================================================
[2026-06-05 15:54:23,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:54:23
[2026-06-05 15:54:24,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:54:24,381.381 INFO    ] Initializing speech engine...
[2026-06-05 15:54:24,404.404 INFO    ] 2026-06-05 15:54:24
[2026-06-05 15:54:24,658.658 INFO    ] 2026-06-05 15:54:24
[2026-06-05 15:54:24,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:54:24,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:54:24,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:54:25,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:54:25,025.025 INFO    ] time= 05/06/2026 15:54:25
[2026-06-05 15:54:25,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:54:25,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:54:25,218.218 INFO    ] No existing commands found in stream
[2026-06-05 15:54:30,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:54:30,236.236 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 15:54:31,272.272 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:54:31,275.275 INFO    ] Checking for system updates...
[2026-06-05 15:54:31,312.312 INFO    ] 200
[2026-06-05 15:54:31,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:31,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:54:31,376.376 INFO    ] No update needed
[2026-06-05 15:54:31,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 15:54:31,414.414 INFO    ] 200
[2026-06-05 15:54:31,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:31,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:54:31,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:54:31,511.511 INFO    ] No camera update needed
[2026-06-05 15:54:31,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:54:31,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:54:31,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:54:31,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:54:33,570.570 INFO    ] ================================================
[2026-06-05 15:54:33,587.587 INFO    ] Launching Daemon at Fri Jun  5 15:54:33 IST 2026
[2026-06-05 15:54:33,598.598 INFO    ] ================================================
[2026-06-05 15:54:34,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:54:34
[2026-06-05 15:54:34,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:54:35,186.186 INFO    ] Initializing speech engine...
[2026-06-05 15:54:35,196.196 INFO    ] 2026-06-05 15:54:35
[2026-06-05 15:54:35,450.450 INFO    ] 2026-06-05 15:54:35
[2026-06-05 15:54:35,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:54:35,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:54:35,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:54:35,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:54:35,919.919 INFO    ] time= 05/06/2026 15:54:35
[2026-06-05 15:54:35,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:54:36,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:54:36,132.132 INFO    ] No existing commands found in stream
[2026-06-05 15:54:41,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:54:41,162.162 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 15:54:44,191.191 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:54:44,194.194 INFO    ] Checking for system updates...
[2026-06-05 15:54:44,230.230 INFO    ] 200
[2026-06-05 15:54:44,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:44,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:54:44,289.289 INFO    ] No update needed
[2026-06-05 15:54:44,291.291 INFO    ] Checking for camera pi updates...
[2026-06-05 15:54:44,326.326 INFO    ] 200
[2026-06-05 15:54:44,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:44,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:54:44,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:54:44,417.417 INFO    ] No camera update needed
[2026-06-05 15:54:44,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:54:44,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:54:44,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:54:44,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:54:46,474.474 INFO    ] ================================================
[2026-06-05 15:54:46,489.489 INFO    ] Launching Daemon at Fri Jun  5 15:54:46 IST 2026
[2026-06-05 15:54:46,500.500 INFO    ] ================================================
[2026-06-05 15:54:47,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:54:47
[2026-06-05 15:54:47,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:54:47,906.906 INFO    ] Initializing speech engine...
[2026-06-05 15:54:47,918.918 INFO    ] 2026-06-05 15:54:47
[2026-06-05 15:54:48,186.186 INFO    ] 2026-06-05 15:54:48
[2026-06-05 15:54:48,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:54:48,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:54:48,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:54:48,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:54:48,565.565 INFO    ] time= 05/06/2026 15:54:48
[2026-06-05 15:54:48,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:54:48,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:54:48,766.766 INFO    ] No existing commands found in stream
[2026-06-05 15:54:53,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:54:53,779.779 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 15:54:57,343.343 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:54:57,346.346 INFO    ] Checking for system updates...
[2026-06-05 15:54:57,381.381 INFO    ] 200
[2026-06-05 15:54:57,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:57,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:54:57,441.441 INFO    ] No update needed
[2026-06-05 15:54:57,443.443 INFO    ] Checking for camera pi updates...
[2026-06-05 15:54:57,477.477 INFO    ] 200
[2026-06-05 15:54:57,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:54:57,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:54:57,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:54:57,569.569 INFO    ] No camera update needed
[2026-06-05 15:54:57,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:54:57,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:54:57,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:54:57,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:54:59,626.626 INFO    ] ================================================
[2026-06-05 15:54:59,641.641 INFO    ] Launching Daemon at Fri Jun  5 15:54:59 IST 2026
[2026-06-05 15:54:59,652.652 INFO    ] ================================================
[2026-06-05 15:55:00,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:55:00
[2026-06-05 15:55:00,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:55:01,257.257 INFO    ] Initializing speech engine...
[2026-06-05 15:55:01,269.269 INFO    ] 2026-06-05 15:55:01
[2026-06-05 15:55:01,581.581 INFO    ] 2026-06-05 15:55:01
[2026-06-05 15:55:01,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:55:01,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:55:01,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:55:02,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:55:02,084.084 INFO    ] time= 05/06/2026 15:55:02
[2026-06-05 15:55:02,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:55:02,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:55:02,218.218 INFO    ] No existing commands found in stream
[2026-06-05 15:55:07,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:55:07,265.265 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 15:55:10,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:55:10,833.833 INFO    ] Checking for system updates...
[2026-06-05 15:55:10,870.870 INFO    ] 200
[2026-06-05 15:55:10,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:55:10,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:55:10,937.937 INFO    ] No update needed
[2026-06-05 15:55:10,940.940 INFO    ] Checking for camera pi updates...
[2026-06-05 15:55:10,975.975 INFO    ] 200
[2026-06-05 15:55:10,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:55:11,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:55:11,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:55:11,067.067 INFO    ] No camera update needed
[2026-06-05 15:55:11,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:55:11,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:55:11,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:55:11,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:55:13,126.126 INFO    ] ================================================
[2026-06-05 15:55:13,141.141 INFO    ] Launching Daemon at Fri Jun  5 15:55:13 IST 2026
[2026-06-05 15:55:13,151.151 INFO    ] ================================================
[2026-06-05 15:55:13,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:55:13
[2026-06-05 15:55:14,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:55:14,780.780 INFO    ] Initializing speech engine...
[2026-06-05 15:55:14,790.790 INFO    ] 2026-06-05 15:55:14
[2026-06-05 15:55:15,080.080 INFO    ] 2026-06-05 15:55:15
[2026-06-05 15:55:15,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:55:15,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:55:15,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:55:15,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:55:15,557.557 INFO    ] time= 05/06/2026 15:55:15
[2026-06-05 15:55:15,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:55:15,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:55:15,790.790 INFO    ] No existing commands found in stream
[2026-06-05 15:55:20,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:55:20,820.820 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 15:55:24,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:55:24,248.248 INFO    ] Checking for system updates...
[2026-06-05 15:55:24,288.288 INFO    ] 200
[2026-06-05 15:55:24,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:55:24,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:55:24,353.353 INFO    ] No update needed
[2026-06-05 15:55:24,355.355 INFO    ] Checking for camera pi updates...
[2026-06-05 15:55:24,393.393 INFO    ] 200
[2026-06-05 15:55:24,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:55:24,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:55:24,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:55:24,493.493 INFO    ] No camera update needed
[2026-06-05 15:55:24,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:55:24,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:55:24,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:55:24,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:55:26,549.549 INFO    ] ================================================
[2026-06-05 15:55:26,564.564 INFO    ] Launching Daemon at Fri Jun  5 15:55:26 IST 2026
[2026-06-05 15:55:26,575.575 INFO    ] ================================================
[2026-06-05 15:55:27,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:55:27
[2026-06-05 15:55:27,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:55:28,037.037 INFO    ] Initializing speech engine...
[2026-06-05 15:55:28,047.047 INFO    ] 2026-06-05 15:55:28
[2026-06-05 15:55:28,305.305 INFO    ] 2026-06-05 15:55:28
[2026-06-05 15:55:28,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:55:28,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:55:28,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:55:28,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:55:28,790.790 INFO    ] time= 05/06/2026 15:55:28
[2026-06-05 15:55:28,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:55:28,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:55:29,005.005 INFO    ] No existing commands found in stream
[2026-06-05 15:55:34,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:55:34,023.023 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-05 15:55:36,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:55:36,440.440 INFO    ] Checking for system updates...
[2026-06-05 15:55:36,481.481 INFO    ] 200
[2026-06-05 15:55:36,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:55:36,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:55:36,546.546 INFO    ] No update needed
[2026-06-05 15:55:36,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 15:55:36,582.582 INFO    ] 200
[2026-06-05 15:55:36,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:55:36,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:55:36,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:55:36,672.672 INFO    ] No camera update needed
[2026-06-05 15:55:36,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:55:36,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:55:36,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:55:36,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:55:38,727.727 INFO    ] ================================================
[2026-06-05 15:55:38,742.742 INFO    ] Launching Daemon at Fri Jun  5 15:55:38 IST 2026
[2026-06-05 15:55:38,753.753 INFO    ] ================================================
[2026-06-05 15:55:39,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:55:39
[2026-06-05 15:55:39,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:55:40,209.209 INFO    ] Initializing speech engine...
[2026-06-05 15:55:40,218.218 INFO    ] 2026-06-05 15:55:40
[2026-06-05 15:55:40,466.466 INFO    ] 2026-06-05 15:55:40
[2026-06-05 15:55:40,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:55:40,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:55:40,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:55:40,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:55:40,935.935 INFO    ] time= 05/06/2026 15:55:40
[2026-06-05 15:55:40,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:55:41,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:55:41,169.169 INFO    ] No existing commands found in stream
[2026-06-05 15:55:46,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:55:46,193.193 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-05 15:55:47,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:55:47,874.874 INFO    ] Checking for system updates...
[2026-06-05 15:55:47,911.911 INFO    ] 200
[2026-06-05 15:55:47,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:55:47,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:55:47,971.971 INFO    ] No update needed
[2026-06-05 15:55:47,973.973 INFO    ] Checking for camera pi updates...
[2026-06-05 15:55:48,008.008 INFO    ] 200
[2026-06-05 15:55:48,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:55:48,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:55:48,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:55:48,200.200 INFO    ] No camera update needed
[2026-06-05 15:55:48,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:55:48,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:55:48,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:55:48,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:55:50,257.257 INFO    ] ================================================
[2026-06-05 15:55:50,272.272 INFO    ] Launching Daemon at Fri Jun  5 15:55:50 IST 2026
[2026-06-05 15:55:50,283.283 INFO    ] ================================================
[2026-06-05 15:55:50,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:55:50
[2026-06-05 15:55:51,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:55:51,695.695 INFO    ] Initializing speech engine...
[2026-06-05 15:55:51,710.710 INFO    ] 2026-06-05 15:55:51
[2026-06-05 15:55:51,977.977 INFO    ] 2026-06-05 15:55:51
[2026-06-05 15:55:52,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:55:54,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:55:54,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:55:54,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:55:54,169.169 INFO    ] time= 05/06/2026 15:55:54
[2026-06-05 15:55:54,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:55:54,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:55:54,267.267 INFO    ] No existing commands found in stream
[2026-06-05 15:55:59,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:55:59,306.306 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 15:56:01,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:56:01,283.283 INFO    ] Checking for system updates...
[2026-06-05 15:56:01,325.325 INFO    ] 200
[2026-06-05 15:56:01,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:01,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:56:01,390.390 INFO    ] No update needed
[2026-06-05 15:56:01,393.393 INFO    ] Checking for camera pi updates...
[2026-06-05 15:56:01,430.430 INFO    ] 200
[2026-06-05 15:56:01,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:01,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:56:01,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:56:01,552.552 INFO    ] No camera update needed
[2026-06-05 15:56:01,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:56:01,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:56:01,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:56:01,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:56:03,646.646 INFO    ] ================================================
[2026-06-05 15:56:03,662.662 INFO    ] Launching Daemon at Fri Jun  5 15:56:03 IST 2026
[2026-06-05 15:56:03,673.673 INFO    ] ================================================
[2026-06-05 15:56:04,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:56:04
[2026-06-05 15:56:04,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:56:05,076.076 INFO    ] Initializing speech engine...
[2026-06-05 15:56:05,084.084 INFO    ] 2026-06-05 15:56:05
[2026-06-05 15:56:05,359.359 INFO    ] 2026-06-05 15:56:05
[2026-06-05 15:56:05,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:56:05,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:56:05,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:56:05,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:56:05,735.735 INFO    ] time= 05/06/2026 15:56:05
[2026-06-05 15:56:05,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:56:05,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:56:05,889.889 INFO    ] No existing commands found in stream
[2026-06-05 15:56:10,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:56:10,922.922 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 15:56:12,272.272 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:56:12,274.274 INFO    ] Checking for system updates...
[2026-06-05 15:56:12,314.314 INFO    ] 200
[2026-06-05 15:56:12,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:12,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:56:12,372.372 INFO    ] No update needed
[2026-06-05 15:56:12,374.374 INFO    ] Checking for camera pi updates...
[2026-06-05 15:56:12,408.408 INFO    ] 200
[2026-06-05 15:56:12,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:12,456.456 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:56:12,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:56:12,503.503 INFO    ] No camera update needed
[2026-06-05 15:56:12,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:56:12,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:56:12,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:56:12,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:56:14,563.563 INFO    ] ================================================
[2026-06-05 15:56:14,579.579 INFO    ] Launching Daemon at Fri Jun  5 15:56:14 IST 2026
[2026-06-05 15:56:14,590.590 INFO    ] ================================================
[2026-06-05 15:56:15,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:56:15
[2026-06-05 15:56:15,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:56:16,173.173 INFO    ] Initializing speech engine...
[2026-06-05 15:56:16,196.196 INFO    ] 2026-06-05 15:56:16
[2026-06-05 15:56:16,451.451 INFO    ] 2026-06-05 15:56:16
[2026-06-05 15:56:16,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:56:16,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:56:16,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:56:16,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:56:16,916.916 INFO    ] time= 05/06/2026 15:56:16
[2026-06-05 15:56:16,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:56:17,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:56:17,162.162 INFO    ] No existing commands found in stream
[2026-06-05 15:56:22,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:56:22,188.188 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 15:56:25,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:56:25,835.835 INFO    ] Checking for system updates...
[2026-06-05 15:56:25,871.871 INFO    ] 200
[2026-06-05 15:56:25,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:25,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:56:25,939.939 INFO    ] No update needed
[2026-06-05 15:56:25,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 15:56:25,977.977 INFO    ] 200
[2026-06-05 15:56:25,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:26,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:56:26,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:56:26,070.070 INFO    ] No camera update needed
[2026-06-05 15:56:26,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:56:26,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:56:26,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:56:26,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:56:28,131.131 INFO    ] ================================================
[2026-06-05 15:56:28,147.147 INFO    ] Launching Daemon at Fri Jun  5 15:56:28 IST 2026
[2026-06-05 15:56:28,158.158 INFO    ] ================================================
[2026-06-05 15:56:28,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:56:28
[2026-06-05 15:56:29,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:56:29,613.613 INFO    ] Initializing speech engine...
[2026-06-05 15:56:29,624.624 INFO    ] 2026-06-05 15:56:29
[2026-06-05 15:56:29,885.885 INFO    ] 2026-06-05 15:56:29
[2026-06-05 15:56:29,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:56:30,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:56:30,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:56:30,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:56:30,428.428 INFO    ] time= 05/06/2026 15:56:30
[2026-06-05 15:56:30,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:56:30,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:56:30,567.567 INFO    ] No existing commands found in stream
[2026-06-05 15:56:35,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:56:35,595.595 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 15:56:38,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:56:38,323.323 INFO    ] Checking for system updates...
[2026-06-05 15:56:38,363.363 INFO    ] 200
[2026-06-05 15:56:38,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:38,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:56:38,428.428 INFO    ] No update needed
[2026-06-05 15:56:38,431.431 INFO    ] Checking for camera pi updates...
[2026-06-05 15:56:38,469.469 INFO    ] 200
[2026-06-05 15:56:38,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:38,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:56:38,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:56:38,554.554 INFO    ] No camera update needed
[2026-06-05 15:56:38,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:56:38,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:56:38,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:56:38,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:56:40,610.610 INFO    ] ================================================
[2026-06-05 15:56:40,625.625 INFO    ] Launching Daemon at Fri Jun  5 15:56:40 IST 2026
[2026-06-05 15:56:40,637.637 INFO    ] ================================================
[2026-06-05 15:56:41,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:56:41
[2026-06-05 15:56:41,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:56:42,077.077 INFO    ] Initializing speech engine...
[2026-06-05 15:56:42,102.102 INFO    ] 2026-06-05 15:56:42
[2026-06-05 15:56:42,383.383 INFO    ] 2026-06-05 15:56:42
[2026-06-05 15:56:42,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:56:42,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:56:42,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:56:42,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:56:42,774.774 INFO    ] time= 05/06/2026 15:56:42
[2026-06-05 15:56:42,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:56:42,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:56:42,900.900 INFO    ] No existing commands found in stream
[2026-06-05 15:56:47,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:56:47,916.916 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 15:56:51,063.063 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 15:56:51,065.065 INFO    ] Checking for system updates...
[2026-06-05 15:56:51,106.106 INFO    ] 200
[2026-06-05 15:56:51,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:51,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:56:51,172.172 INFO    ] No update needed
[2026-06-05 15:56:51,174.174 INFO    ] Checking for camera pi updates...
[2026-06-05 15:56:51,212.212 INFO    ] 200
[2026-06-05 15:56:51,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:56:51,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:56:51,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:56:51,303.303 INFO    ] No camera update needed
[2026-06-05 15:56:51,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:56:51,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:56:51,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:56:51,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:56:53,358.358 INFO    ] ================================================
[2026-06-05 15:56:53,375.375 INFO    ] Launching Daemon at Fri Jun  5 15:56:53 IST 2026
[2026-06-05 15:56:53,386.386 INFO    ] ================================================
[2026-06-05 15:56:53,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:56:53
[2026-06-05 15:56:54,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:56:54,813.813 INFO    ] Initializing speech engine...
[2026-06-05 15:56:54,822.822 INFO    ] 2026-06-05 15:56:54
[2026-06-05 15:56:55,068.068 INFO    ] 2026-06-05 15:56:55
[2026-06-05 15:56:55,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:56:55,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:56:55,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:56:55,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:56:55,573.573 INFO    ] time= 05/06/2026 15:56:55
[2026-06-05 15:56:55,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:56:55,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:56:55,777.777 INFO    ] No existing commands found in stream
[2026-06-05 15:57:00,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:57:00,792.792 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 15:57:04,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:57:04,356.356 INFO    ] Checking for system updates...
[2026-06-05 15:57:04,392.392 INFO    ] 200
[2026-06-05 15:57:04,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:04,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:57:04,450.450 INFO    ] No update needed
[2026-06-05 15:57:04,453.453 INFO    ] Checking for camera pi updates...
[2026-06-05 15:57:04,486.486 INFO    ] 200
[2026-06-05 15:57:04,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:04,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:57:04,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:57:04,573.573 INFO    ] No camera update needed
[2026-06-05 15:57:04,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:57:04,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:57:04,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:57:04,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:57:06,628.628 INFO    ] ================================================
[2026-06-05 15:57:06,644.644 INFO    ] Launching Daemon at Fri Jun  5 15:57:06 IST 2026
[2026-06-05 15:57:06,655.655 INFO    ] ================================================
[2026-06-05 15:57:07,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:57:07
[2026-06-05 15:57:07,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:57:08,067.067 INFO    ] Initializing speech engine...
[2026-06-05 15:57:08,079.079 INFO    ] 2026-06-05 15:57:08
[2026-06-05 15:57:08,342.342 INFO    ] 2026-06-05 15:57:08
[2026-06-05 15:57:08,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:57:08,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:57:08,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:57:08,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:57:08,798.798 INFO    ] time= 05/06/2026 15:57:08
[2026-06-05 15:57:08,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:57:08,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:57:09,041.041 INFO    ] No existing commands found in stream
[2026-06-05 15:57:14,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:57:14,065.065 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 15:57:17,672.672 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:57:17,674.674 INFO    ] Checking for system updates...
[2026-06-05 15:57:17,713.713 INFO    ] 200
[2026-06-05 15:57:17,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:17,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:57:17,776.776 INFO    ] No update needed
[2026-06-05 15:57:17,779.779 INFO    ] Checking for camera pi updates...
[2026-06-05 15:57:17,813.813 INFO    ] 200
[2026-06-05 15:57:17,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:17,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:57:17,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:57:17,900.900 INFO    ] No camera update needed
[2026-06-05 15:57:17,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:57:17,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:57:17,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:57:17,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:57:19,957.957 INFO    ] ================================================
[2026-06-05 15:57:19,972.972 INFO    ] Launching Daemon at Fri Jun  5 15:57:19 IST 2026
[2026-06-05 15:57:19,983.983 INFO    ] ================================================
[2026-06-05 15:57:20,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:57:20
[2026-06-05 15:57:21,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:57:21,422.422 INFO    ] Initializing speech engine...
[2026-06-05 15:57:21,431.431 INFO    ] 2026-06-05 15:57:21
[2026-06-05 15:57:21,681.681 INFO    ] 2026-06-05 15:57:21
[2026-06-05 15:57:21,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:57:23,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:57:23,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:57:24,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:57:24,184.184 INFO    ] time= 05/06/2026 15:57:24
[2026-06-05 15:57:24,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:57:24,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:57:24,272.272 INFO    ] No existing commands found in stream
[2026-06-05 15:57:29,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:57:29,286.286 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 15:57:32,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 15:57:32,825.825 INFO    ] Checking for system updates...
[2026-06-05 15:57:32,871.871 INFO    ] 200
[2026-06-05 15:57:32,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:32,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:57:32,940.940 INFO    ] No update needed
[2026-06-05 15:57:32,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 15:57:32,976.976 INFO    ] 200
[2026-06-05 15:57:32,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:33,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:57:33,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:57:33,052.052 INFO    ] No camera update needed
[2026-06-05 15:57:33,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:57:33,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:57:33,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:57:33,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:57:35,110.110 INFO    ] ================================================
[2026-06-05 15:57:35,126.126 INFO    ] Launching Daemon at Fri Jun  5 15:57:35 IST 2026
[2026-06-05 15:57:35,140.140 INFO    ] ================================================
[2026-06-05 15:57:35,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:57:35
[2026-06-05 15:57:36,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:57:36,573.573 INFO    ] Initializing speech engine...
[2026-06-05 15:57:36,580.580 INFO    ] 2026-06-05 15:57:36
[2026-06-05 15:57:36,828.828 INFO    ] 2026-06-05 15:57:36
[2026-06-05 15:57:36,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:57:37,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:57:37,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:57:37,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:57:37,320.320 INFO    ] time= 05/06/2026 15:57:37
[2026-06-05 15:57:37,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:57:37,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:57:37,525.525 INFO    ] No existing commands found in stream
[2026-06-05 15:57:42,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:57:42,552.552 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 15:57:46,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:57:46,242.242 INFO    ] Checking for system updates...
[2026-06-05 15:57:46,278.278 INFO    ] 200
[2026-06-05 15:57:46,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:46,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:57:46,337.337 INFO    ] No update needed
[2026-06-05 15:57:46,339.339 INFO    ] Checking for camera pi updates...
[2026-06-05 15:57:46,373.373 INFO    ] 200
[2026-06-05 15:57:46,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:46,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:57:46,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:57:46,461.461 INFO    ] No camera update needed
[2026-06-05 15:57:46,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:57:46,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:57:46,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:57:46,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:57:48,518.518 INFO    ] ================================================
[2026-06-05 15:57:48,534.534 INFO    ] Launching Daemon at Fri Jun  5 15:57:48 IST 2026
[2026-06-05 15:57:48,546.546 INFO    ] ================================================
[2026-06-05 15:57:49,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:57:49
[2026-06-05 15:57:49,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:57:50,002.002 INFO    ] Initializing speech engine...
[2026-06-05 15:57:50,011.011 INFO    ] 2026-06-05 15:57:50
[2026-06-05 15:57:50,264.264 INFO    ] 2026-06-05 15:57:50
[2026-06-05 15:57:50,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:57:50,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:57:50,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:57:50,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:57:50,752.752 INFO    ] time= 05/06/2026 15:57:50
[2026-06-05 15:57:50,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:57:50,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:57:50,990.990 INFO    ] No existing commands found in stream
[2026-06-05 15:57:56,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:57:56,010.010 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 15:57:58,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:57:58,774.774 INFO    ] Checking for system updates...
[2026-06-05 15:57:58,814.814 INFO    ] 200
[2026-06-05 15:57:58,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:58,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:57:58,878.878 INFO    ] No update needed
[2026-06-05 15:57:58,880.880 INFO    ] Checking for camera pi updates...
[2026-06-05 15:57:58,917.917 INFO    ] 200
[2026-06-05 15:57:58,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:57:58,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:57:59,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:57:59,110.110 INFO    ] No camera update needed
[2026-06-05 15:57:59,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:57:59,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:57:59,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:57:59,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:58:01,167.167 INFO    ] ================================================
[2026-06-05 15:58:01,182.182 INFO    ] Launching Daemon at Fri Jun  5 15:58:01 IST 2026
[2026-06-05 15:58:01,194.194 INFO    ] ================================================
[2026-06-05 15:58:01,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:58:01
[2026-06-05 15:58:02,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:58:03,060.060 INFO    ] Initializing speech engine...
[2026-06-05 15:58:03,078.078 INFO    ] 2026-06-05 15:58:03
[2026-06-05 15:58:03,372.372 INFO    ] 2026-06-05 15:58:03
[2026-06-05 15:58:03,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:58:03,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:58:03,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:58:03,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:58:03,746.746 INFO    ] time= 05/06/2026 15:58:03
[2026-06-05 15:58:03,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:58:03,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:58:03,929.929 INFO    ] No existing commands found in stream
[2026-06-05 15:58:08,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:58:08,951.951 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 15:58:10,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:58:10,922.922 INFO    ] Checking for system updates...
[2026-06-05 15:58:10,962.962 INFO    ] 200
[2026-06-05 15:58:10,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:58:11,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:58:11,025.025 INFO    ] No update needed
[2026-06-05 15:58:11,027.027 INFO    ] Checking for camera pi updates...
[2026-06-05 15:58:11,065.065 INFO    ] 200
[2026-06-05 15:58:11,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:58:11,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:58:11,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:58:11,161.161 INFO    ] No camera update needed
[2026-06-05 15:58:11,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:58:11,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:58:11,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:58:11,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:58:13,218.218 INFO    ] ================================================
[2026-06-05 15:58:13,233.233 INFO    ] Launching Daemon at Fri Jun  5 15:58:13 IST 2026
[2026-06-05 15:58:13,244.244 INFO    ] ================================================
[2026-06-05 15:58:13,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:58:13
[2026-06-05 15:58:14,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:58:14,712.712 INFO    ] Initializing speech engine...
[2026-06-05 15:58:14,719.719 INFO    ] 2026-06-05 15:58:14
[2026-06-05 15:58:14,979.979 INFO    ] 2026-06-05 15:58:14
[2026-06-05 15:58:15,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:58:15,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:58:15,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:58:15,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:58:15,404.404 INFO    ] time= 05/06/2026 15:58:15
[2026-06-05 15:58:15,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:58:15,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:58:15,664.664 INFO    ] No existing commands found in stream
[2026-06-05 15:58:20,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:58:20,692.692 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 15:58:21,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:58:21,681.681 INFO    ] Checking for system updates...
[2026-06-05 15:58:21,718.718 INFO    ] 200
[2026-06-05 15:58:21,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:58:21,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:58:21,775.775 INFO    ] No update needed
[2026-06-05 15:58:21,778.778 INFO    ] Checking for camera pi updates...
[2026-06-05 15:58:21,812.812 INFO    ] 200
[2026-06-05 15:58:21,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:58:21,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:58:21,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:58:21,903.903 INFO    ] No camera update needed
[2026-06-05 15:58:21,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:58:21,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:58:21,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:58:21,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:58:23,960.960 INFO    ] ================================================
[2026-06-05 15:58:23,975.975 INFO    ] Launching Daemon at Fri Jun  5 15:58:23 IST 2026
[2026-06-05 15:58:23,987.987 INFO    ] ================================================
[2026-06-05 15:58:24,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:58:24
[2026-06-05 15:58:25,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:58:25,420.420 INFO    ] Initializing speech engine...
[2026-06-05 15:58:25,426.426 INFO    ] 2026-06-05 15:58:25
[2026-06-05 15:58:25,671.671 INFO    ] 2026-06-05 15:58:25
[2026-06-05 15:58:25,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:58:25,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:58:25,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:58:26,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:58:26,149.149 INFO    ] time= 05/06/2026 15:58:26
[2026-06-05 15:58:26,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:58:26,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:58:26,373.373 INFO    ] No existing commands found in stream
[2026-06-05 15:58:31,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:58:31,397.397 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 15:58:35,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:58:35,022.022 INFO    ] Checking for system updates...
[2026-06-05 15:58:35,061.061 INFO    ] 200
[2026-06-05 15:58:35,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:58:35,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:58:35,124.124 INFO    ] No update needed
[2026-06-05 15:58:35,127.127 INFO    ] Checking for camera pi updates...
[2026-06-05 15:58:35,161.161 INFO    ] 200
[2026-06-05 15:58:35,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:58:35,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:58:35,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:58:35,252.252 INFO    ] No camera update needed
[2026-06-05 15:58:35,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:58:35,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:58:35,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:58:35,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:58:37,308.308 INFO    ] ================================================
[2026-06-05 15:58:37,323.323 INFO    ] Launching Daemon at Fri Jun  5 15:58:37 IST 2026
[2026-06-05 15:58:37,334.334 INFO    ] ================================================
[2026-06-05 15:58:37,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:58:37
[2026-06-05 15:58:38,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:58:38,745.745 INFO    ] Initializing speech engine...
[2026-06-05 15:58:38,768.768 INFO    ] 2026-06-05 15:58:38
[2026-06-05 15:58:39,021.021 INFO    ] 2026-06-05 15:58:39
[2026-06-05 15:58:39,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:58:39,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:58:39,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:58:39,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:58:39,492.492 INFO    ] time= 05/06/2026 15:58:39
[2026-06-05 15:58:39,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:58:39,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:58:39,730.730 INFO    ] No existing commands found in stream
[2026-06-05 15:58:44,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:58:44,747.747 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 15:58:47,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:58:47,467.467 INFO    ] Checking for system updates...
[2026-06-05 15:58:47,503.503 INFO    ] 200
[2026-06-05 15:58:47,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:58:47,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:58:47,568.568 INFO    ] No update needed
[2026-06-05 15:58:47,570.570 INFO    ] Checking for camera pi updates...
[2026-06-05 15:58:47,604.604 INFO    ] 200
[2026-06-05 15:58:47,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:58:47,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:58:47,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:58:47,691.691 INFO    ] No camera update needed
[2026-06-05 15:58:47,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:58:47,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:58:47,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:58:47,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:58:49,747.747 INFO    ] ================================================
[2026-06-05 15:58:49,763.763 INFO    ] Launching Daemon at Fri Jun  5 15:58:49 IST 2026
[2026-06-05 15:58:49,773.773 INFO    ] ================================================
[2026-06-05 15:58:50,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:58:50
[2026-06-05 15:58:50,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:58:51,181.181 INFO    ] Initializing speech engine...
[2026-06-05 15:58:51,204.204 INFO    ] 2026-06-05 15:58:51
[2026-06-05 15:58:51,460.460 INFO    ] 2026-06-05 15:58:51
[2026-06-05 15:58:51,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:58:52,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:58:52,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:58:53,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:58:53,984.984 INFO    ] time= 05/06/2026 15:58:53
[2026-06-05 15:58:53,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:58:54,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:58:54,123.123 INFO    ] No existing commands found in stream
[2026-06-05 15:58:59,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:58:59,138.138 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 15:59:00,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:59:00,161.161 INFO    ] Checking for system updates...
[2026-06-05 15:59:00,196.196 INFO    ] 200
[2026-06-05 15:59:00,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:00,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:59:00,253.253 INFO    ] No update needed
[2026-06-05 15:59:00,256.256 INFO    ] Checking for camera pi updates...
[2026-06-05 15:59:00,289.289 INFO    ] 200
[2026-06-05 15:59:00,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:00,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:59:00,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:59:00,384.384 INFO    ] No camera update needed
[2026-06-05 15:59:00,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:59:00,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:59:00,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:59:00,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:59:02,443.443 INFO    ] ================================================
[2026-06-05 15:59:02,465.465 INFO    ] Launching Daemon at Fri Jun  5 15:59:02 IST 2026
[2026-06-05 15:59:02,478.478 INFO    ] ================================================
[2026-06-05 15:59:03,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:59:03
[2026-06-05 15:59:03,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:59:04,176.176 INFO    ] Initializing speech engine...
[2026-06-05 15:59:04,185.185 INFO    ] 2026-06-05 15:59:04
[2026-06-05 15:59:04,478.478 INFO    ] 2026-06-05 15:59:04
[2026-06-05 15:59:04,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:59:04,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:59:04,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:59:04,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:59:05,010.010 INFO    ] time= 05/06/2026 15:59:04
[2026-06-05 15:59:05,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:59:05,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:59:05,169.169 INFO    ] No existing commands found in stream
[2026-06-05 15:59:10,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:59:10,195.195 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 15:59:12,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 15:59:12,197.197 INFO    ] Checking for system updates...
[2026-06-05 15:59:12,234.234 INFO    ] 200
[2026-06-05 15:59:12,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:12,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:59:12,302.302 INFO    ] No update needed
[2026-06-05 15:59:12,304.304 INFO    ] Checking for camera pi updates...
[2026-06-05 15:59:12,340.340 INFO    ] 200
[2026-06-05 15:59:12,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:12,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:59:12,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:59:12,419.419 INFO    ] No camera update needed
[2026-06-05 15:59:12,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:59:12,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:59:12,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:59:12,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:59:14,477.477 INFO    ] ================================================
[2026-06-05 15:59:14,493.493 INFO    ] Launching Daemon at Fri Jun  5 15:59:14 IST 2026
[2026-06-05 15:59:14,505.505 INFO    ] ================================================
[2026-06-05 15:59:15,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:59:15
[2026-06-05 15:59:15,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:59:16,081.081 INFO    ] Initializing speech engine...
[2026-06-05 15:59:16,096.096 INFO    ] 2026-06-05 15:59:16
[2026-06-05 15:59:16,377.377 INFO    ] 2026-06-05 15:59:16
[2026-06-05 15:59:16,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:59:16,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:59:16,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:59:16,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:59:16,919.919 INFO    ] time= 05/06/2026 15:59:16
[2026-06-05 15:59:16,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:59:16,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:59:17,081.081 INFO    ] No existing commands found in stream
[2026-06-05 15:59:22,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:59:22,111.111 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 15:59:25,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 15:59:25,947.947 INFO    ] Checking for system updates...
[2026-06-05 15:59:25,988.988 INFO    ] 200
[2026-06-05 15:59:25,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:26,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:59:26,047.047 INFO    ] No update needed
[2026-06-05 15:59:26,050.050 INFO    ] Checking for camera pi updates...
[2026-06-05 15:59:26,085.085 INFO    ] 200
[2026-06-05 15:59:26,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:26,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:59:26,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:59:26,174.174 INFO    ] No camera update needed
[2026-06-05 15:59:26,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:59:26,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:59:26,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:59:26,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:59:28,232.232 INFO    ] ================================================
[2026-06-05 15:59:28,248.248 INFO    ] Launching Daemon at Fri Jun  5 15:59:28 IST 2026
[2026-06-05 15:59:28,259.259 INFO    ] ================================================
[2026-06-05 15:59:28,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:59:28
[2026-06-05 15:59:29,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:59:29,676.676 INFO    ] Initializing speech engine...
[2026-06-05 15:59:29,692.692 INFO    ] 2026-06-05 15:59:29
[2026-06-05 15:59:29,947.947 INFO    ] 2026-06-05 15:59:29
[2026-06-05 15:59:29,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:59:30,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:59:30,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:59:30,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:59:30,388.388 INFO    ] time= 05/06/2026 15:59:30
[2026-06-05 15:59:30,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:59:30,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:59:30,583.583 INFO    ] No existing commands found in stream
[2026-06-05 15:59:35,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:59:35,610.610 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 15:59:39,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 15:59:39,386.386 INFO    ] Checking for system updates...
[2026-06-05 15:59:39,422.422 INFO    ] 200
[2026-06-05 15:59:39,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:39,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:59:39,481.481 INFO    ] No update needed
[2026-06-05 15:59:39,484.484 INFO    ] Checking for camera pi updates...
[2026-06-05 15:59:39,521.521 INFO    ] 200
[2026-06-05 15:59:39,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:39,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:59:39,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 15:59:39,622.622 INFO    ] No camera update needed
[2026-06-05 15:59:39,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:59:39,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:59:39,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:59:39,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:59:41,679.679 INFO    ] ================================================
[2026-06-05 15:59:41,694.694 INFO    ] Launching Daemon at Fri Jun  5 15:59:41 IST 2026
[2026-06-05 15:59:41,706.706 INFO    ] ================================================
[2026-06-05 15:59:42,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:59:42
[2026-06-05 15:59:42,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:59:43,173.173 INFO    ] Initializing speech engine...
[2026-06-05 15:59:43,183.183 INFO    ] 2026-06-05 15:59:43
[2026-06-05 15:59:43,444.444 INFO    ] 2026-06-05 15:59:43
[2026-06-05 15:59:43,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:59:43,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:59:43,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:59:43,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:59:43,924.924 INFO    ] time= 05/06/2026 15:59:43
[2026-06-05 15:59:43,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:59:43,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:59:44,107.107 INFO    ] No existing commands found in stream
[2026-06-05 15:59:49,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 15:59:49,132.132 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 15:59:50,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 15:59:50,657.657 INFO    ] Checking for system updates...
[2026-06-05 15:59:50,695.695 INFO    ] 200
[2026-06-05 15:59:50,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:50,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:59:50,753.753 INFO    ] No update needed
[2026-06-05 15:59:50,755.755 INFO    ] Checking for camera pi updates...
[2026-06-05 15:59:50,790.790 INFO    ] 200
[2026-06-05 15:59:50,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 15:59:50,834.834 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 15:59:50,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 15:59:50,875.875 INFO    ] No camera update needed
[2026-06-05 15:59:50,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 15:59:50,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 15:59:50,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 15:59:50,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 15:59:52,933.933 INFO    ] ================================================
[2026-06-05 15:59:52,949.949 INFO    ] Launching Daemon at Fri Jun  5 15:59:52 IST 2026
[2026-06-05 15:59:52,960.960 INFO    ] ================================================
[2026-06-05 15:59:53,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 15:59:53
[2026-06-05 15:59:54,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 15:59:54,380.380 INFO    ] Initializing speech engine...
[2026-06-05 15:59:54,392.392 INFO    ] 2026-06-05 15:59:54
[2026-06-05 15:59:54,643.643 INFO    ] 2026-06-05 15:59:54
[2026-06-05 15:59:54,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 15:59:54,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 15:59:54,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 15:59:55,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 15:59:55,149.149 INFO    ] time= 05/06/2026 15:59:55
[2026-06-05 15:59:55,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 15:59:55,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-05 15:59:55,348.348 INFO    ] No existing commands found in stream
[2026-06-05 16:00:00,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:00:00,379.379 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 16:00:04,077.077 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:00:04,081.081 INFO    ] Checking for system updates...
[2026-06-05 16:00:04,207.207 INFO    ] 200
[2026-06-05 16:00:04,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:04,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:00:04,423.423 INFO    ] No update needed
[2026-06-05 16:00:04,441.441 INFO    ] Checking for camera pi updates...
[2026-06-05 16:00:04,534.534 INFO    ] 200
[2026-06-05 16:00:04,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:04,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:00:04,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:00:04,819.819 INFO    ] No camera update needed
[2026-06-05 16:00:04,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:00:04,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:00:04,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:00:04,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:00:06,965.965 INFO    ] ================================================
[2026-06-05 16:00:06,981.981 INFO    ] Launching Daemon at Fri Jun  5 16:00:06 IST 2026
[2026-06-05 16:00:06,993.993 INFO    ] ================================================
[2026-06-05 16:00:07,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:00:07
[2026-06-05 16:00:08,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:00:08,630.630 INFO    ] Initializing speech engine...
[2026-06-05 16:00:08,644.644 INFO    ] 2026-06-05 16:00:08
[2026-06-05 16:00:08,930.930 INFO    ] 2026-06-05 16:00:08
[2026-06-05 16:00:09,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:00:09,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:00:09,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:00:09,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:00:09,464.464 INFO    ] time= 05/06/2026 16:00:09
[2026-06-05 16:00:09,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:00:09,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:00:09,614.614 INFO    ] No existing commands found in stream
[2026-06-05 16:00:14,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:00:14,644.644 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 16:00:17,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:00:17,701.701 INFO    ] Checking for system updates...
[2026-06-05 16:00:17,740.740 INFO    ] 200
[2026-06-05 16:00:17,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:17,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:00:17,804.804 INFO    ] No update needed
[2026-06-05 16:00:17,806.806 INFO    ] Checking for camera pi updates...
[2026-06-05 16:00:17,840.840 INFO    ] 200
[2026-06-05 16:00:17,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:17,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:00:17,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:00:17,923.923 INFO    ] No camera update needed
[2026-06-05 16:00:17,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:00:17,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:00:17,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:00:17,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:00:19,982.982 INFO    ] ================================================
[2026-06-05 16:00:20,998.998 INFO    ] Launching Daemon at Fri Jun  5 16:00:19 IST 2026
[2026-06-05 16:00:20,010.010 INFO    ] ================================================
[2026-06-05 16:00:20,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:00:20
[2026-06-05 16:00:21,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:00:21,520.520 INFO    ] Initializing speech engine...
[2026-06-05 16:00:21,527.527 INFO    ] 2026-06-05 16:00:21
[2026-06-05 16:00:21,823.823 INFO    ] 2026-06-05 16:00:21
[2026-06-05 16:00:21,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:00:24,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:00:24,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:00:24,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:00:24,319.319 INFO    ] time= 05/06/2026 16:00:24
[2026-06-05 16:00:24,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:00:24,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:00:24,411.411 INFO    ] No existing commands found in stream
[2026-06-05 16:00:29,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:00:29,427.427 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 16:00:33,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:00:33,629.629 INFO    ] Checking for system updates...
[2026-06-05 16:00:33,671.671 INFO    ] 200
[2026-06-05 16:00:33,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:33,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:00:33,732.732 INFO    ] No update needed
[2026-06-05 16:00:33,735.735 INFO    ] Checking for camera pi updates...
[2026-06-05 16:00:33,774.774 INFO    ] 200
[2026-06-05 16:00:33,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:33,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:00:33,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:00:33,869.869 INFO    ] No camera update needed
[2026-06-05 16:00:33,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:00:33,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:00:33,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:00:33,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:00:35,931.931 INFO    ] ================================================
[2026-06-05 16:00:35,947.947 INFO    ] Launching Daemon at Fri Jun  5 16:00:35 IST 2026
[2026-06-05 16:00:35,958.958 INFO    ] ================================================
[2026-06-05 16:00:36,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:00:36
[2026-06-05 16:00:37,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:00:37,452.452 INFO    ] Initializing speech engine...
[2026-06-05 16:00:37,476.476 INFO    ] 2026-06-05 16:00:37
[2026-06-05 16:00:37,732.732 INFO    ] 2026-06-05 16:00:37
[2026-06-05 16:00:37,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:00:38,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:00:38,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:00:38,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:00:38,218.218 INFO    ] time= 05/06/2026 16:00:38
[2026-06-05 16:00:38,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:00:38,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:00:38,441.441 INFO    ] No existing commands found in stream
[2026-06-05 16:00:43,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:00:43,472.472 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 16:00:46,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:00:46,259.259 INFO    ] Checking for system updates...
[2026-06-05 16:00:46,295.295 INFO    ] 200
[2026-06-05 16:00:46,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:46,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:00:46,360.360 INFO    ] No update needed
[2026-06-05 16:00:46,362.362 INFO    ] Checking for camera pi updates...
[2026-06-05 16:00:46,397.397 INFO    ] 200
[2026-06-05 16:00:46,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:46,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:00:46,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:00:46,492.492 INFO    ] No camera update needed
[2026-06-05 16:00:46,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:00:46,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:00:46,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:00:46,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:00:48,547.547 INFO    ] ================================================
[2026-06-05 16:00:48,562.562 INFO    ] Launching Daemon at Fri Jun  5 16:00:48 IST 2026
[2026-06-05 16:00:48,573.573 INFO    ] ================================================
[2026-06-05 16:00:49,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:00:49
[2026-06-05 16:00:49,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:00:49,975.975 INFO    ] Initializing speech engine...
[2026-06-05 16:00:49,990.990 INFO    ] 2026-06-05 16:00:49
[2026-06-05 16:00:50,260.260 INFO    ] 2026-06-05 16:00:50
[2026-06-05 16:00:50,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:00:50,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:00:50,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:00:50,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:00:50,740.740 INFO    ] time= 05/06/2026 16:00:50
[2026-06-05 16:00:50,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:00:50,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:00:50,895.895 INFO    ] No existing commands found in stream
[2026-06-05 16:00:55,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:00:55,919.919 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 16:00:57,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:00:57,307.307 INFO    ] Checking for system updates...
[2026-06-05 16:00:57,343.343 INFO    ] 200
[2026-06-05 16:00:57,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:57,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:00:57,401.401 INFO    ] No update needed
[2026-06-05 16:00:57,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 16:00:57,437.437 INFO    ] 200
[2026-06-05 16:00:57,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:00:57,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:00:57,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:00:57,518.518 INFO    ] No camera update needed
[2026-06-05 16:00:57,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:00:57,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:00:57,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:00:57,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:00:59,573.573 INFO    ] ================================================
[2026-06-05 16:00:59,589.589 INFO    ] Launching Daemon at Fri Jun  5 16:00:59 IST 2026
[2026-06-05 16:00:59,600.600 INFO    ] ================================================
[2026-06-05 16:01:00,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:01:00
[2026-06-05 16:01:00,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:01:01,056.056 INFO    ] Initializing speech engine...
[2026-06-05 16:01:01,065.065 INFO    ] 2026-06-05 16:01:01
[2026-06-05 16:01:01,314.314 INFO    ] 2026-06-05 16:01:01
[2026-06-05 16:01:01,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:01:01,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:01:01,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:01:01,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:01:01,716.716 INFO    ] time= 05/06/2026 16:01:01
[2026-06-05 16:01:01,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:01:01,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:01:01,789.789 INFO    ] No existing commands found in stream
[2026-06-05 16:01:06,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:01:06,802.802 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-05 16:01:10,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:01:10,155.155 INFO    ] Checking for system updates...
[2026-06-05 16:01:10,192.192 INFO    ] 200
[2026-06-05 16:01:10,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:01:10,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:01:10,251.251 INFO    ] No update needed
[2026-06-05 16:01:10,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 16:01:10,293.293 INFO    ] 200
[2026-06-05 16:01:10,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:01:10,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:01:10,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:01:10,391.391 INFO    ] No camera update needed
[2026-06-05 16:01:10,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:01:10,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:01:10,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:01:10,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:01:12,448.448 INFO    ] ================================================
[2026-06-05 16:01:12,463.463 INFO    ] Launching Daemon at Fri Jun  5 16:01:12 IST 2026
[2026-06-05 16:01:12,474.474 INFO    ] ================================================
[2026-06-05 16:01:13,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:01:13
[2026-06-05 16:01:13,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:01:13,908.908 INFO    ] Initializing speech engine...
[2026-06-05 16:01:13,916.916 INFO    ] 2026-06-05 16:01:13
[2026-06-05 16:01:14,166.166 INFO    ] 2026-06-05 16:01:14
[2026-06-05 16:01:14,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:01:14,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:01:14,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:01:14,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:01:14,545.545 INFO    ] time= 05/06/2026 16:01:14
[2026-06-05 16:01:14,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:01:14,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:01:14,737.737 INFO    ] No existing commands found in stream
[2026-06-05 16:01:19,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:01:19,760.760 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 16:01:24,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:01:24,386.386 INFO    ] Checking for system updates...
[2026-06-05 16:01:24,425.425 INFO    ] 200
[2026-06-05 16:01:24,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:01:24,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:01:24,483.483 INFO    ] No update needed
[2026-06-05 16:01:24,485.485 INFO    ] Checking for camera pi updates...
[2026-06-05 16:01:24,521.521 INFO    ] 200
[2026-06-05 16:01:24,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:01:24,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:01:24,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:01:24,617.617 INFO    ] No camera update needed
[2026-06-05 16:01:24,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:01:24,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:01:24,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:01:24,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:01:26,673.673 INFO    ] ================================================
[2026-06-05 16:01:26,688.688 INFO    ] Launching Daemon at Fri Jun  5 16:01:26 IST 2026
[2026-06-05 16:01:26,699.699 INFO    ] ================================================
[2026-06-05 16:01:27,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:01:27
[2026-06-05 16:01:27,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:01:28,192.192 INFO    ] Initializing speech engine...
[2026-06-05 16:01:28,215.215 INFO    ] 2026-06-05 16:01:28
[2026-06-05 16:01:28,472.472 INFO    ] 2026-06-05 16:01:28
[2026-06-05 16:01:28,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:01:28,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:01:28,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:01:29,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:01:29,042.042 INFO    ] time= 05/06/2026 16:01:29
[2026-06-05 16:01:29,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:01:29,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:01:29,179.179 INFO    ] No existing commands found in stream
[2026-06-05 16:01:34,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:01:34,210.210 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 16:01:38,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:01:38,618.618 INFO    ] Checking for system updates...
[2026-06-05 16:01:38,654.654 INFO    ] 200
[2026-06-05 16:01:38,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:01:38,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:01:38,713.713 INFO    ] No update needed
[2026-06-05 16:01:38,716.716 INFO    ] Checking for camera pi updates...
[2026-06-05 16:01:38,751.751 INFO    ] 200
[2026-06-05 16:01:38,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:01:38,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:01:38,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:01:38,841.841 INFO    ] No camera update needed
[2026-06-05 16:01:38,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:01:38,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:01:38,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:01:38,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:01:40,897.897 INFO    ] ================================================
[2026-06-05 16:01:40,912.912 INFO    ] Launching Daemon at Fri Jun  5 16:01:40 IST 2026
[2026-06-05 16:01:40,924.924 INFO    ] ================================================
[2026-06-05 16:01:41,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:01:41
[2026-06-05 16:01:42,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:01:42,333.333 INFO    ] Initializing speech engine...
[2026-06-05 16:01:42,340.340 INFO    ] 2026-06-05 16:01:42
[2026-06-05 16:01:42,627.627 INFO    ] 2026-06-05 16:01:42
[2026-06-05 16:01:42,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:01:42,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:01:42,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:01:42,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:01:43,005.005 INFO    ] time= 05/06/2026 16:01:42
[2026-06-05 16:01:43,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:01:43,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:01:43,199.199 INFO    ] No existing commands found in stream
[2026-06-05 16:01:48,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:01:48,221.221 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 16:01:50,567.567 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:01:50,570.570 INFO    ] Checking for system updates...
[2026-06-05 16:01:50,606.606 INFO    ] 200
[2026-06-05 16:01:50,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:01:50,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:01:50,665.665 INFO    ] No update needed
[2026-06-05 16:01:50,667.667 INFO    ] Checking for camera pi updates...
[2026-06-05 16:01:50,706.706 INFO    ] 200
[2026-06-05 16:01:50,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:01:50,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:01:50,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:01:50,826.826 INFO    ] No camera update needed
[2026-06-05 16:01:50,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:01:50,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:01:50,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:01:50,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:01:52,880.880 INFO    ] ================================================
[2026-06-05 16:01:52,895.895 INFO    ] Launching Daemon at Fri Jun  5 16:01:52 IST 2026
[2026-06-05 16:01:52,906.906 INFO    ] ================================================
[2026-06-05 16:01:53,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:01:53
[2026-06-05 16:01:54,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:01:54,356.356 INFO    ] Initializing speech engine...
[2026-06-05 16:01:54,371.371 INFO    ] 2026-06-05 16:01:54
[2026-06-05 16:01:54,660.660 INFO    ] 2026-06-05 16:01:54
[2026-06-05 16:01:54,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:01:54,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:01:54,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:01:55,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:01:55,059.059 INFO    ] time= 05/06/2026 16:01:55
[2026-06-05 16:01:55,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:01:55,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:01:55,247.247 INFO    ] No existing commands found in stream
[2026-06-05 16:02:00,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:02:00,269.269 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 16:02:04,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:02:04,539.539 INFO    ] Checking for system updates...
[2026-06-05 16:02:04,581.581 INFO    ] 200
[2026-06-05 16:02:04,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:04,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:04,641.641 INFO    ] No update needed
[2026-06-05 16:02:04,643.643 INFO    ] Checking for camera pi updates...
[2026-06-05 16:02:04,678.678 INFO    ] 200
[2026-06-05 16:02:04,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:04,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:02:04,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:04,756.756 INFO    ] No camera update needed
[2026-06-05 16:02:04,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:02:04,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:02:04,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:02:04,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:02:06,815.815 INFO    ] ================================================
[2026-06-05 16:02:06,831.831 INFO    ] Launching Daemon at Fri Jun  5 16:02:06 IST 2026
[2026-06-05 16:02:06,842.842 INFO    ] ================================================
[2026-06-05 16:02:07,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:02:07
[2026-06-05 16:02:08,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:02:08,315.315 INFO    ] Initializing speech engine...
[2026-06-05 16:02:08,334.334 INFO    ] 2026-06-05 16:02:08
[2026-06-05 16:02:08,603.603 INFO    ] 2026-06-05 16:02:08
[2026-06-05 16:02:08,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:02:08,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:02:08,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:02:09,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:02:09,024.024 INFO    ] time= 05/06/2026 16:02:09
[2026-06-05 16:02:09,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:02:09,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:02:09,111.111 INFO    ] No existing commands found in stream
[2026-06-05 16:02:14,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:02:14,129.129 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 16:02:15,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:02:15,294.294 INFO    ] Checking for system updates...
[2026-06-05 16:02:15,331.331 INFO    ] 200
[2026-06-05 16:02:15,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:15,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:15,391.391 INFO    ] No update needed
[2026-06-05 16:02:15,396.396 INFO    ] Checking for camera pi updates...
[2026-06-05 16:02:15,434.434 INFO    ] 200
[2026-06-05 16:02:15,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:15,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:02:15,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:15,621.621 INFO    ] No camera update needed
[2026-06-05 16:02:15,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:02:15,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:02:15,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:02:15,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:02:17,676.676 INFO    ] ================================================
[2026-06-05 16:02:17,691.691 INFO    ] Launching Daemon at Fri Jun  5 16:02:17 IST 2026
[2026-06-05 16:02:17,702.702 INFO    ] ================================================
[2026-06-05 16:02:18,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:02:18
[2026-06-05 16:02:19,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:02:19,332.332 INFO    ] Initializing speech engine...
[2026-06-05 16:02:19,345.345 INFO    ] 2026-06-05 16:02:19
[2026-06-05 16:02:19,657.657 INFO    ] 2026-06-05 16:02:19
[2026-06-05 16:02:19,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:02:19,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:02:19,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:02:20,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:02:20,168.168 INFO    ] time= 05/06/2026 16:02:20
[2026-06-05 16:02:20,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:02:20,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:02:20,338.338 INFO    ] No existing commands found in stream
[2026-06-05 16:02:25,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:02:25,372.372 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 16:02:29,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:02:29,619.619 INFO    ] Checking for system updates...
[2026-06-05 16:02:29,656.656 INFO    ] 200
[2026-06-05 16:02:29,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:29,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:29,725.725 INFO    ] No update needed
[2026-06-05 16:02:29,727.727 INFO    ] Checking for camera pi updates...
[2026-06-05 16:02:29,765.765 INFO    ] 200
[2026-06-05 16:02:29,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:29,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:02:29,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:29,864.864 INFO    ] No camera update needed
[2026-06-05 16:02:29,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:02:29,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:02:29,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:02:29,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:02:31,922.922 INFO    ] ================================================
[2026-06-05 16:02:31,941.941 INFO    ] Launching Daemon at Fri Jun  5 16:02:31 IST 2026
[2026-06-05 16:02:31,953.953 INFO    ] ================================================
[2026-06-05 16:02:32,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:02:32
[2026-06-05 16:02:33,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:02:33,605.605 INFO    ] Initializing speech engine...
[2026-06-05 16:02:33,619.619 INFO    ] 2026-06-05 16:02:33
[2026-06-05 16:02:33,904.904 INFO    ] 2026-06-05 16:02:33
[2026-06-05 16:02:33,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:02:34,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:02:34,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:02:34,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:02:34,351.351 INFO    ] time= 05/06/2026 16:02:34
[2026-06-05 16:02:34,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:02:34,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:02:34,584.584 INFO    ] No existing commands found in stream
[2026-06-05 16:02:39,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:02:39,601.601 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 16:02:41,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:02:41,080.080 INFO    ] Checking for system updates...
[2026-06-05 16:02:41,121.121 INFO    ] 200
[2026-06-05 16:02:41,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:41,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:41,186.186 INFO    ] No update needed
[2026-06-05 16:02:41,189.189 INFO    ] Checking for camera pi updates...
[2026-06-05 16:02:41,223.223 INFO    ] 200
[2026-06-05 16:02:41,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:41,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:02:41,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:41,324.324 INFO    ] No camera update needed
[2026-06-05 16:02:41,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:02:41,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:02:41,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:02:41,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:02:43,381.381 INFO    ] ================================================
[2026-06-05 16:02:43,396.396 INFO    ] Launching Daemon at Fri Jun  5 16:02:43 IST 2026
[2026-06-05 16:02:43,407.407 INFO    ] ================================================
[2026-06-05 16:02:44,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:02:44
[2026-06-05 16:02:44,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:02:45,019.019 INFO    ] Initializing speech engine...
[2026-06-05 16:02:45,026.026 INFO    ] 2026-06-05 16:02:45
[2026-06-05 16:02:45,307.307 INFO    ] 2026-06-05 16:02:45
[2026-06-05 16:02:45,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:02:45,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:02:45,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:02:45,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:02:45,776.776 INFO    ] time= 05/06/2026 16:02:45
[2026-06-05 16:02:45,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:02:45,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:02:45,991.991 INFO    ] No existing commands found in stream
[2026-06-05 16:02:51,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:02:51,009.009 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 16:02:54,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:02:54,820.820 INFO    ] Checking for system updates...
[2026-06-05 16:02:54,857.857 INFO    ] 200
[2026-06-05 16:02:54,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:54,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:54,917.917 INFO    ] No update needed
[2026-06-05 16:02:54,919.919 INFO    ] Checking for camera pi updates...
[2026-06-05 16:02:54,955.955 INFO    ] 200
[2026-06-05 16:02:54,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:02:55,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:02:55,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:02:55,049.049 INFO    ] No camera update needed
[2026-06-05 16:02:55,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:02:55,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:02:55,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:02:55,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:02:57,108.108 INFO    ] ================================================
[2026-06-05 16:02:57,123.123 INFO    ] Launching Daemon at Fri Jun  5 16:02:57 IST 2026
[2026-06-05 16:02:57,134.134 INFO    ] ================================================
[2026-06-05 16:02:57,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:02:57
[2026-06-05 16:02:58,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:02:58,541.541 INFO    ] Initializing speech engine...
[2026-06-05 16:02:58,547.547 INFO    ] 2026-06-05 16:02:58
[2026-06-05 16:02:58,841.841 INFO    ] 2026-06-05 16:02:58
[2026-06-05 16:02:58,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:02:59,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:02:59,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:02:59,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:02:59,253.253 INFO    ] time= 05/06/2026 16:02:59
[2026-06-05 16:02:59,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:02:59,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:02:59,340.340 INFO    ] No existing commands found in stream
[2026-06-05 16:03:04,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:03:04,356.356 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 16:03:07,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:03:07,771.771 INFO    ] Checking for system updates...
[2026-06-05 16:03:07,818.818 INFO    ] 200
[2026-06-05 16:03:07,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:07,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:03:07,881.881 INFO    ] No update needed
[2026-06-05 16:03:07,883.883 INFO    ] Checking for camera pi updates...
[2026-06-05 16:03:07,920.920 INFO    ] 200
[2026-06-05 16:03:07,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:07,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:03:07,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:03:07,992.992 INFO    ] No camera update needed
[2026-06-05 16:03:07,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:03:07,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:03:08,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:03:08,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:03:10,049.049 INFO    ] ================================================
[2026-06-05 16:03:10,065.065 INFO    ] Launching Daemon at Fri Jun  5 16:03:10 IST 2026
[2026-06-05 16:03:10,076.076 INFO    ] ================================================
[2026-06-05 16:03:10,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:03:10
[2026-06-05 16:03:11,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:03:11,497.497 INFO    ] Initializing speech engine...
[2026-06-05 16:03:11,517.517 INFO    ] 2026-06-05 16:03:11
[2026-06-05 16:03:11,767.767 INFO    ] 2026-06-05 16:03:11
[2026-06-05 16:03:11,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:03:11,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:03:11,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:03:12,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:03:12,143.143 INFO    ] time= 05/06/2026 16:03:12
[2026-06-05 16:03:12,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:03:12,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:03:12,332.332 INFO    ] No existing commands found in stream
[2026-06-05 16:03:17,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:03:17,358.358 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 16:03:21,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:03:21,083.083 INFO    ] Checking for system updates...
[2026-06-05 16:03:21,119.119 INFO    ] 200
[2026-06-05 16:03:21,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:21,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:03:21,177.177 INFO    ] No update needed
[2026-06-05 16:03:21,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 16:03:21,213.213 INFO    ] 200
[2026-06-05 16:03:21,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:21,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:03:21,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:03:21,297.297 INFO    ] No camera update needed
[2026-06-05 16:03:21,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:03:21,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:03:21,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:03:21,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:03:23,354.354 INFO    ] ================================================
[2026-06-05 16:03:23,370.370 INFO    ] Launching Daemon at Fri Jun  5 16:03:23 IST 2026
[2026-06-05 16:03:23,381.381 INFO    ] ================================================
[2026-06-05 16:03:23,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:03:23
[2026-06-05 16:03:24,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:03:24,840.840 INFO    ] Initializing speech engine...
[2026-06-05 16:03:24,849.849 INFO    ] 2026-06-05 16:03:24
[2026-06-05 16:03:25,147.147 INFO    ] 2026-06-05 16:03:25
[2026-06-05 16:03:25,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:03:25,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:03:25,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:03:25,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:03:25,575.575 INFO    ] time= 05/06/2026 16:03:25
[2026-06-05 16:03:25,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:03:25,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:03:25,752.752 INFO    ] No existing commands found in stream
[2026-06-05 16:03:30,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:03:30,785.785 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 16:03:32,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:03:32,087.087 INFO    ] Checking for system updates...
[2026-06-05 16:03:32,125.125 INFO    ] 200
[2026-06-05 16:03:32,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:32,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:03:32,190.190 INFO    ] No update needed
[2026-06-05 16:03:32,196.196 INFO    ] Checking for camera pi updates...
[2026-06-05 16:03:32,232.232 INFO    ] 200
[2026-06-05 16:03:32,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:32,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:03:32,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:03:32,312.312 INFO    ] No camera update needed
[2026-06-05 16:03:32,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:03:32,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:03:32,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:03:32,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:03:34,371.371 INFO    ] ================================================
[2026-06-05 16:03:34,387.387 INFO    ] Launching Daemon at Fri Jun  5 16:03:34 IST 2026
[2026-06-05 16:03:34,398.398 INFO    ] ================================================
[2026-06-05 16:03:35,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:03:35
[2026-06-05 16:03:35,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:03:36,027.027 INFO    ] Initializing speech engine...
[2026-06-05 16:03:36,034.034 INFO    ] 2026-06-05 16:03:36
[2026-06-05 16:03:36,311.311 INFO    ] 2026-06-05 16:03:36
[2026-06-05 16:03:36,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:03:36,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:03:36,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:03:36,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:03:36,820.820 INFO    ] time= 05/06/2026 16:03:36
[2026-06-05 16:03:36,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:03:36,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:03:37,005.005 INFO    ] No existing commands found in stream
[2026-06-05 16:03:42,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:03:42,028.028 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 16:03:43,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:03:43,777.777 INFO    ] Checking for system updates...
[2026-06-05 16:03:43,819.819 INFO    ] 200
[2026-06-05 16:03:43,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:43,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:03:43,885.885 INFO    ] No update needed
[2026-06-05 16:03:43,888.888 INFO    ] Checking for camera pi updates...
[2026-06-05 16:03:43,923.923 INFO    ] 200
[2026-06-05 16:03:43,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:43,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:03:44,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:03:44,022.022 INFO    ] No camera update needed
[2026-06-05 16:03:44,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:03:44,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:03:44,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:03:44,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:03:46,081.081 INFO    ] ================================================
[2026-06-05 16:03:46,097.097 INFO    ] Launching Daemon at Fri Jun  5 16:03:46 IST 2026
[2026-06-05 16:03:46,108.108 INFO    ] ================================================
[2026-06-05 16:03:46,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:03:46
[2026-06-05 16:03:47,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:03:47,523.523 INFO    ] Initializing speech engine...
[2026-06-05 16:03:47,530.530 INFO    ] 2026-06-05 16:03:47
[2026-06-05 16:03:47,825.825 INFO    ] 2026-06-05 16:03:47
[2026-06-05 16:03:47,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:03:48,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:03:48,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:03:48,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:03:48,244.244 INFO    ] time= 05/06/2026 16:03:48
[2026-06-05 16:03:48,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:03:48,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:03:48,333.333 INFO    ] No existing commands found in stream
[2026-06-05 16:03:53,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:03:53,349.349 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 16:03:55,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:03:55,457.457 INFO    ] Checking for system updates...
[2026-06-05 16:03:55,494.494 INFO    ] 200
[2026-06-05 16:03:55,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:55,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:03:55,554.554 INFO    ] No update needed
[2026-06-05 16:03:55,557.557 INFO    ] Checking for camera pi updates...
[2026-06-05 16:03:55,592.592 INFO    ] 200
[2026-06-05 16:03:55,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:03:55,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:03:55,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:03:55,683.683 INFO    ] No camera update needed
[2026-06-05 16:03:55,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:03:55,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:03:55,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:03:55,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:03:57,743.743 INFO    ] ================================================
[2026-06-05 16:03:57,758.758 INFO    ] Launching Daemon at Fri Jun  5 16:03:57 IST 2026
[2026-06-05 16:03:57,770.770 INFO    ] ================================================
[2026-06-05 16:03:58,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:03:58
[2026-06-05 16:03:58,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:03:59,212.212 INFO    ] Initializing speech engine...
[2026-06-05 16:03:59,221.221 INFO    ] 2026-06-05 16:03:59
[2026-06-05 16:03:59,494.494 INFO    ] 2026-06-05 16:03:59
[2026-06-05 16:03:59,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:03:59,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:03:59,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:03:59,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:03:59,986.986 INFO    ] time= 05/06/2026 16:03:59
[2026-06-05 16:04:00,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:04:00,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:04:00,206.206 INFO    ] No existing commands found in stream
[2026-06-05 16:04:05,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:04:05,225.225 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 16:04:09,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:04:09,550.550 INFO    ] Checking for system updates...
[2026-06-05 16:04:09,587.587 INFO    ] 200
[2026-06-05 16:04:09,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:04:09,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:04:09,653.653 INFO    ] No update needed
[2026-06-05 16:04:09,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 16:04:09,700.700 INFO    ] 200
[2026-06-05 16:04:09,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:04:09,763.763 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:04:09,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:04:09,810.810 INFO    ] No camera update needed
[2026-06-05 16:04:09,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:04:09,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:04:09,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:04:09,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:04:11,867.867 INFO    ] ================================================
[2026-06-05 16:04:11,882.882 INFO    ] Launching Daemon at Fri Jun  5 16:04:11 IST 2026
[2026-06-05 16:04:11,893.893 INFO    ] ================================================
[2026-06-05 16:04:12,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:04:12
[2026-06-05 16:04:13,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:04:13,496.496 INFO    ] Initializing speech engine...
[2026-06-05 16:04:13,505.505 INFO    ] 2026-06-05 16:04:13
[2026-06-05 16:04:13,797.797 INFO    ] 2026-06-05 16:04:13
[2026-06-05 16:04:13,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:04:14,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:04:14,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:04:14,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:04:14,330.330 INFO    ] time= 05/06/2026 16:04:14
[2026-06-05 16:04:14,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:04:14,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:04:14,483.483 INFO    ] No existing commands found in stream
[2026-06-05 16:04:19,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:04:19,502.502 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 16:04:24,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:04:24,727.727 INFO    ] Checking for system updates...
[2026-06-05 16:04:24,764.764 INFO    ] 200
[2026-06-05 16:04:24,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:04:24,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:04:24,824.824 INFO    ] No update needed
[2026-06-05 16:04:24,827.827 INFO    ] Checking for camera pi updates...
[2026-06-05 16:04:24,861.861 INFO    ] 200
[2026-06-05 16:04:24,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:04:24,906.906 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:04:25,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:04:25,060.060 INFO    ] No camera update needed
[2026-06-05 16:04:25,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:04:25,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:04:25,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:04:25,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:04:27,118.118 INFO    ] ================================================
[2026-06-05 16:04:27,134.134 INFO    ] Launching Daemon at Fri Jun  5 16:04:27 IST 2026
[2026-06-05 16:04:27,145.145 INFO    ] ================================================
[2026-06-05 16:04:27,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:04:27
[2026-06-05 16:04:28,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:04:28,572.572 INFO    ] Initializing speech engine...
[2026-06-05 16:04:28,586.586 INFO    ] 2026-06-05 16:04:28
[2026-06-05 16:04:28,870.870 INFO    ] 2026-06-05 16:04:28
[2026-06-05 16:04:28,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:04:29,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:04:29,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:04:29,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:04:29,249.249 INFO    ] time= 05/06/2026 16:04:29
[2026-06-05 16:04:29,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:04:29,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:04:29,375.375 INFO    ] No existing commands found in stream
[2026-06-05 16:04:34,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:04:34,391.391 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 16:04:38,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:04:38,418.418 INFO    ] Checking for system updates...
[2026-06-05 16:04:38,455.455 INFO    ] 200
[2026-06-05 16:04:38,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:04:38,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:04:38,513.513 INFO    ] No update needed
[2026-06-05 16:04:38,515.515 INFO    ] Checking for camera pi updates...
[2026-06-05 16:04:38,549.549 INFO    ] 200
[2026-06-05 16:04:38,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:04:38,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:04:38,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:04:38,640.640 INFO    ] No camera update needed
[2026-06-05 16:04:38,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:04:38,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:04:38,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:04:38,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:04:40,697.697 INFO    ] ================================================
[2026-06-05 16:04:40,713.713 INFO    ] Launching Daemon at Fri Jun  5 16:04:40 IST 2026
[2026-06-05 16:04:40,724.724 INFO    ] ================================================
[2026-06-05 16:04:41,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:04:41
[2026-06-05 16:04:41,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:04:42,181.181 INFO    ] Initializing speech engine...
[2026-06-05 16:04:42,191.191 INFO    ] 2026-06-05 16:04:42
[2026-06-05 16:04:42,440.440 INFO    ] 2026-06-05 16:04:42
[2026-06-05 16:04:42,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:04:42,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:04:42,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:04:42,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:04:42,928.928 INFO    ] time= 05/06/2026 16:04:42
[2026-06-05 16:04:42,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:04:43,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:04:43,154.154 INFO    ] No existing commands found in stream
[2026-06-05 16:04:48,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:04:48,180.180 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 16:04:48,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:04:48,605.605 INFO    ] Checking for system updates...
[2026-06-05 16:04:48,641.641 INFO    ] 200
[2026-06-05 16:04:48,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:04:48,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:04:48,700.700 INFO    ] No update needed
[2026-06-05 16:04:48,703.703 INFO    ] Checking for camera pi updates...
[2026-06-05 16:04:48,737.737 INFO    ] 200
[2026-06-05 16:04:48,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:04:48,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:04:48,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:04:48,829.829 INFO    ] No camera update needed
[2026-06-05 16:04:48,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:04:48,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:04:48,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:04:48,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:04:50,890.890 INFO    ] ================================================
[2026-06-05 16:04:50,905.905 INFO    ] Launching Daemon at Fri Jun  5 16:04:50 IST 2026
[2026-06-05 16:04:50,917.917 INFO    ] ================================================
[2026-06-05 16:04:51,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:04:51
[2026-06-05 16:04:52,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:04:52,343.343 INFO    ] Initializing speech engine...
[2026-06-05 16:04:52,351.351 INFO    ] 2026-06-05 16:04:52
[2026-06-05 16:04:52,603.603 INFO    ] 2026-06-05 16:04:52
[2026-06-05 16:04:52,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:04:54,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:04:54,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:04:54,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:04:54,642.642 INFO    ] time= 05/06/2026 16:04:54
[2026-06-05 16:04:54,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:04:54,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:04:54,753.753 INFO    ] No existing commands found in stream
[2026-06-05 16:04:59,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:04:59,771.771 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 16:05:02,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:05:02,091.091 INFO    ] Checking for system updates...
[2026-06-05 16:05:02,179.179 INFO    ] 200
[2026-06-05 16:05:02,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:02,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:02,417.417 INFO    ] No update needed
[2026-06-05 16:05:02,421.421 INFO    ] Checking for camera pi updates...
[2026-06-05 16:05:02,493.493 INFO    ] 200
[2026-06-05 16:05:02,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:02,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:05:02,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:02,601.601 INFO    ] No camera update needed
[2026-06-05 16:05:02,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:05:02,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:05:02,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:05:02,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:05:04,668.668 INFO    ] ================================================
[2026-06-05 16:05:04,684.684 INFO    ] Launching Daemon at Fri Jun  5 16:05:04 IST 2026
[2026-06-05 16:05:04,695.695 INFO    ] ================================================
[2026-06-05 16:05:05,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:05:05
[2026-06-05 16:05:05,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:05:06,156.156 INFO    ] Initializing speech engine...
[2026-06-05 16:05:06,162.162 INFO    ] 2026-06-05 16:05:06
[2026-06-05 16:05:06,474.474 INFO    ] 2026-06-05 16:05:06
[2026-06-05 16:05:06,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:05:06,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:05:06,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:05:06,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:05:06,867.867 INFO    ] time= 05/06/2026 16:05:06
[2026-06-05 16:05:06,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:05:06,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:05:06,995.995 INFO    ] No existing commands found in stream
[2026-06-05 16:05:12,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:05:12,011.011 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 16:05:14,067.067 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:05:14,070.070 INFO    ] Checking for system updates...
[2026-06-05 16:05:14,106.106 INFO    ] 200
[2026-06-05 16:05:14,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:14,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:14,163.163 INFO    ] No update needed
[2026-06-05 16:05:14,166.166 INFO    ] Checking for camera pi updates...
[2026-06-05 16:05:14,200.200 INFO    ] 200
[2026-06-05 16:05:14,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:14,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:05:14,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:14,290.290 INFO    ] No camera update needed
[2026-06-05 16:05:14,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:05:14,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:05:14,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:05:14,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:05:16,347.347 INFO    ] ================================================
[2026-06-05 16:05:16,362.362 INFO    ] Launching Daemon at Fri Jun  5 16:05:16 IST 2026
[2026-06-05 16:05:16,374.374 INFO    ] ================================================
[2026-06-05 16:05:17,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:05:17
[2026-06-05 16:05:17,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:05:18,022.022 INFO    ] Initializing speech engine...
[2026-06-05 16:05:18,034.034 INFO    ] 2026-06-05 16:05:18
[2026-06-05 16:05:18,322.322 INFO    ] 2026-06-05 16:05:18
[2026-06-05 16:05:18,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:05:18,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:05:18,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:05:18,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:05:18,856.856 INFO    ] time= 05/06/2026 16:05:18
[2026-06-05 16:05:18,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:05:18,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:05:19,010.010 INFO    ] No existing commands found in stream
[2026-06-05 16:05:24,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:05:24,030.030 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 16:05:25,245.245 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:05:25,248.248 INFO    ] Checking for system updates...
[2026-06-05 16:05:25,287.287 INFO    ] 200
[2026-06-05 16:05:25,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:25,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:25,348.348 INFO    ] No update needed
[2026-06-05 16:05:25,351.351 INFO    ] Checking for camera pi updates...
[2026-06-05 16:05:25,386.386 INFO    ] 200
[2026-06-05 16:05:25,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:25,431.431 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:05:25,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:25,481.481 INFO    ] No camera update needed
[2026-06-05 16:05:25,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:05:25,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:05:25,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:05:25,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:05:27,541.541 INFO    ] ================================================
[2026-06-05 16:05:27,557.557 INFO    ] Launching Daemon at Fri Jun  5 16:05:27 IST 2026
[2026-06-05 16:05:27,569.569 INFO    ] ================================================
[2026-06-05 16:05:28,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:05:28
[2026-06-05 16:05:28,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:05:29,219.219 INFO    ] Initializing speech engine...
[2026-06-05 16:05:29,230.230 INFO    ] 2026-06-05 16:05:29
[2026-06-05 16:05:29,520.520 INFO    ] 2026-06-05 16:05:29
[2026-06-05 16:05:29,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:05:29,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:05:29,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:05:30,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:05:30,054.054 INFO    ] time= 05/06/2026 16:05:30
[2026-06-05 16:05:30,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:05:30,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:05:30,204.204 INFO    ] No existing commands found in stream
[2026-06-05 16:05:35,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:05:35,220.220 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 16:05:36,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:05:36,252.252 INFO    ] Checking for system updates...
[2026-06-05 16:05:36,295.295 INFO    ] 200
[2026-06-05 16:05:36,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:36,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:36,360.360 INFO    ] No update needed
[2026-06-05 16:05:36,363.363 INFO    ] Checking for camera pi updates...
[2026-06-05 16:05:36,399.399 INFO    ] 200
[2026-06-05 16:05:36,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:36,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:05:36,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:36,497.497 INFO    ] No camera update needed
[2026-06-05 16:05:36,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:05:36,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:05:36,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:05:36,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:05:38,559.559 INFO    ] ================================================
[2026-06-05 16:05:38,575.575 INFO    ] Launching Daemon at Fri Jun  5 16:05:38 IST 2026
[2026-06-05 16:05:38,586.586 INFO    ] ================================================
[2026-06-05 16:05:39,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:05:39
[2026-06-05 16:05:39,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:05:40,047.047 INFO    ] Initializing speech engine...
[2026-06-05 16:05:40,070.070 INFO    ] 2026-06-05 16:05:40
[2026-06-05 16:05:40,323.323 INFO    ] 2026-06-05 16:05:40
[2026-06-05 16:05:40,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:05:40,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:05:40,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:05:40,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:05:40,796.796 INFO    ] time= 05/06/2026 16:05:40
[2026-06-05 16:05:40,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:05:40,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:05:41,017.017 INFO    ] No existing commands found in stream
[2026-06-05 16:05:46,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:05:46,045.045 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 16:05:47,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:05:47,653.653 INFO    ] Checking for system updates...
[2026-06-05 16:05:47,692.692 INFO    ] 200
[2026-06-05 16:05:47,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:47,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:47,753.753 INFO    ] No update needed
[2026-06-05 16:05:47,755.755 INFO    ] Checking for camera pi updates...
[2026-06-05 16:05:47,791.791 INFO    ] 200
[2026-06-05 16:05:47,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:05:47,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:05:47,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:05:47,891.891 INFO    ] No camera update needed
[2026-06-05 16:05:47,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:05:47,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:05:47,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:05:47,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:05:49,951.951 INFO    ] ================================================
[2026-06-05 16:05:49,967.967 INFO    ] Launching Daemon at Fri Jun  5 16:05:49 IST 2026
[2026-06-05 16:05:49,978.978 INFO    ] ================================================
[2026-06-05 16:05:50,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:05:50
[2026-06-05 16:05:51,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:05:51,401.401 INFO    ] Initializing speech engine...
[2026-06-05 16:05:51,410.410 INFO    ] 2026-06-05 16:05:51
[2026-06-05 16:05:51,661.661 INFO    ] 2026-06-05 16:05:51
[2026-06-05 16:05:51,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:05:54,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:05:54,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:05:54,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:05:54,409.409 INFO    ] time= 05/06/2026 16:05:54
[2026-06-05 16:05:54,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:05:54,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:05:54,571.571 INFO    ] No existing commands found in stream
[2026-06-05 16:05:59,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:05:59,583.583 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 16:06:00,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:06:00,345.345 INFO    ] Checking for system updates...
[2026-06-05 16:06:00,381.381 INFO    ] 200
[2026-06-05 16:06:00,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:00,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:06:00,440.440 INFO    ] No update needed
[2026-06-05 16:06:00,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 16:06:00,477.477 INFO    ] 200
[2026-06-05 16:06:00,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:00,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:06:00,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:06:00,562.562 INFO    ] No camera update needed
[2026-06-05 16:06:00,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:06:00,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:06:00,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:06:00,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:06:02,624.624 INFO    ] ================================================
[2026-06-05 16:06:02,640.640 INFO    ] Launching Daemon at Fri Jun  5 16:06:02 IST 2026
[2026-06-05 16:06:02,651.651 INFO    ] ================================================
[2026-06-05 16:06:03,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:06:03
[2026-06-05 16:06:03,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:06:04,097.097 INFO    ] Initializing speech engine...
[2026-06-05 16:06:04,117.117 INFO    ] 2026-06-05 16:06:04
[2026-06-05 16:06:04,367.367 INFO    ] 2026-06-05 16:06:04
[2026-06-05 16:06:04,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:06:04,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:06:04,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:06:04,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:06:04,811.811 INFO    ] time= 05/06/2026 16:06:04
[2026-06-05 16:06:04,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:06:04,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:06:04,971.971 INFO    ] No existing commands found in stream
[2026-06-05 16:06:09,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:06:09,990.990 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 16:06:10,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:06:10,962.962 INFO    ] Checking for system updates...
[2026-06-05 16:06:10,998.998 INFO    ] 200
[2026-06-05 16:06:11,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:11,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:11,056.056 INFO    ] No update needed
[2026-06-05 16:06:11,058.058 INFO    ] Checking for camera pi updates...
[2026-06-05 16:06:11,096.096 INFO    ] 200
[2026-06-05 16:06:11,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:11,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:06:11,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:11,183.183 INFO    ] No camera update needed
[2026-06-05 16:06:11,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:06:11,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:06:11,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:06:11,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:06:13,242.242 INFO    ] ================================================
[2026-06-05 16:06:13,257.257 INFO    ] Launching Daemon at Fri Jun  5 16:06:13 IST 2026
[2026-06-05 16:06:13,268.268 INFO    ] ================================================
[2026-06-05 16:06:13,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:06:13
[2026-06-05 16:06:14,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:06:14,760.760 INFO    ] Initializing speech engine...
[2026-06-05 16:06:14,766.766 INFO    ] 2026-06-05 16:06:14
[2026-06-05 16:06:15,017.017 INFO    ] 2026-06-05 16:06:15
[2026-06-05 16:06:15,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:06:15,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:06:15,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:06:15,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:06:15,499.499 INFO    ] time= 05/06/2026 16:06:15
[2026-06-05 16:06:15,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:06:15,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:06:15,741.741 INFO    ] No existing commands found in stream
[2026-06-05 16:06:20,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:06:20,761.761 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 16:06:21,770.770 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:06:21,774.774 INFO    ] Checking for system updates...
[2026-06-05 16:06:21,816.816 INFO    ] 200
[2026-06-05 16:06:21,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:21,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:21,876.876 INFO    ] No update needed
[2026-06-05 16:06:21,878.878 INFO    ] Checking for camera pi updates...
[2026-06-05 16:06:21,913.913 INFO    ] 200
[2026-06-05 16:06:21,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:21,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:06:22,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:22,011.011 INFO    ] No camera update needed
[2026-06-05 16:06:22,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:06:22,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:06:22,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:06:22,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:06:24,070.070 INFO    ] ================================================
[2026-06-05 16:06:24,089.089 INFO    ] Launching Daemon at Fri Jun  5 16:06:24 IST 2026
[2026-06-05 16:06:24,101.101 INFO    ] ================================================
[2026-06-05 16:06:24,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:06:24
[2026-06-05 16:06:25,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:06:25,563.563 INFO    ] Initializing speech engine...
[2026-06-05 16:06:25,578.578 INFO    ] 2026-06-05 16:06:25
[2026-06-05 16:06:25,846.846 INFO    ] 2026-06-05 16:06:25
[2026-06-05 16:06:25,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:06:26,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:06:26,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:06:26,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:06:26,222.222 INFO    ] time= 05/06/2026 16:06:26
[2026-06-05 16:06:26,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:06:26,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:06:26,403.403 INFO    ] No existing commands found in stream
[2026-06-05 16:06:31,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:06:31,436.436 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 16:06:35,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:06:35,390.390 INFO    ] Checking for system updates...
[2026-06-05 16:06:35,437.437 INFO    ] 200
[2026-06-05 16:06:35,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:35,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:35,517.517 INFO    ] No update needed
[2026-06-05 16:06:35,520.520 INFO    ] Checking for camera pi updates...
[2026-06-05 16:06:35,554.554 INFO    ] 200
[2026-06-05 16:06:35,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:35,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:06:35,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:35,650.650 INFO    ] No camera update needed
[2026-06-05 16:06:35,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:06:35,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:06:35,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:06:35,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:06:37,706.706 INFO    ] ================================================
[2026-06-05 16:06:37,721.721 INFO    ] Launching Daemon at Fri Jun  5 16:06:37 IST 2026
[2026-06-05 16:06:37,732.732 INFO    ] ================================================
[2026-06-05 16:06:38,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:06:38
[2026-06-05 16:06:38,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:06:39,135.135 INFO    ] Initializing speech engine...
[2026-06-05 16:06:39,148.148 INFO    ] 2026-06-05 16:06:39
[2026-06-05 16:06:39,411.411 INFO    ] 2026-06-05 16:06:39
[2026-06-05 16:06:39,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:06:39,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:06:39,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:06:39,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:06:39,888.888 INFO    ] time= 05/06/2026 16:06:39
[2026-06-05 16:06:39,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:06:39,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:06:40,106.106 INFO    ] No existing commands found in stream
[2026-06-05 16:06:45,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:06:45,134.134 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 16:06:46,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:06:46,772.772 INFO    ] Checking for system updates...
[2026-06-05 16:06:46,808.808 INFO    ] 200
[2026-06-05 16:06:46,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:46,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:46,865.865 INFO    ] No update needed
[2026-06-05 16:06:46,868.868 INFO    ] Checking for camera pi updates...
[2026-06-05 16:06:46,901.901 INFO    ] 200
[2026-06-05 16:06:46,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:46,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:06:46,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:46,993.993 INFO    ] No camera update needed
[2026-06-05 16:06:46,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:06:46,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:06:47,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:06:47,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:06:49,050.050 INFO    ] ================================================
[2026-06-05 16:06:49,066.066 INFO    ] Launching Daemon at Fri Jun  5 16:06:49 IST 2026
[2026-06-05 16:06:49,077.077 INFO    ] ================================================
[2026-06-05 16:06:49,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:06:49
[2026-06-05 16:06:50,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:06:50,527.527 INFO    ] Initializing speech engine...
[2026-06-05 16:06:50,540.540 INFO    ] 2026-06-05 16:06:50
[2026-06-05 16:06:50,825.825 INFO    ] 2026-06-05 16:06:50
[2026-06-05 16:06:50,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:06:51,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:06:51,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:06:51,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:06:51,214.214 INFO    ] time= 05/06/2026 16:06:51
[2026-06-05 16:06:51,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:06:51,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:06:51,327.327 INFO    ] No existing commands found in stream
[2026-06-05 16:06:56,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:06:56,343.343 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 16:06:58,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:06:58,312.312 INFO    ] Checking for system updates...
[2026-06-05 16:06:58,348.348 INFO    ] 200
[2026-06-05 16:06:58,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:58,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:58,405.405 INFO    ] No update needed
[2026-06-05 16:06:58,408.408 INFO    ] Checking for camera pi updates...
[2026-06-05 16:06:58,442.442 INFO    ] 200
[2026-06-05 16:06:58,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:06:58,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:06:58,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:06:58,534.534 INFO    ] No camera update needed
[2026-06-05 16:06:58,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:06:58,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:06:58,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:06:58,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:07:00,594.594 INFO    ] ================================================
[2026-06-05 16:07:00,611.611 INFO    ] Launching Daemon at Fri Jun  5 16:07:00 IST 2026
[2026-06-05 16:07:00,624.624 INFO    ] ================================================
[2026-06-05 16:07:01,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:07:01
[2026-06-05 16:07:01,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:07:02,399.399 INFO    ] Initializing speech engine...
[2026-06-05 16:07:02,403.403 INFO    ] 2026-06-05 16:07:02
[2026-06-05 16:07:02,745.745 INFO    ] 2026-06-05 16:07:02
[2026-06-05 16:07:02,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:07:03,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:07:03,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:07:03,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:07:03,233.233 INFO    ] time= 05/06/2026 16:07:03
[2026-06-05 16:07:03,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:07:03,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:07:03,469.469 INFO    ] No existing commands found in stream
[2026-06-05 16:07:08,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:07:08,495.495 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 16:07:09,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:07:09,617.617 INFO    ] Checking for system updates...
[2026-06-05 16:07:09,653.653 INFO    ] 200
[2026-06-05 16:07:09,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:09,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:07:09,711.711 INFO    ] No update needed
[2026-06-05 16:07:09,713.713 INFO    ] Checking for camera pi updates...
[2026-06-05 16:07:09,747.747 INFO    ] 200
[2026-06-05 16:07:09,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:09,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:07:09,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:07:09,835.835 INFO    ] No camera update needed
[2026-06-05 16:07:09,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:07:09,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:07:09,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:07:09,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:07:11,891.891 INFO    ] ================================================
[2026-06-05 16:07:11,907.907 INFO    ] Launching Daemon at Fri Jun  5 16:07:11 IST 2026
[2026-06-05 16:07:11,917.917 INFO    ] ================================================
[2026-06-05 16:07:12,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:07:12
[2026-06-05 16:07:13,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:07:13,371.371 INFO    ] Initializing speech engine...
[2026-06-05 16:07:13,386.386 INFO    ] 2026-06-05 16:07:13
[2026-06-05 16:07:13,672.672 INFO    ] 2026-06-05 16:07:13
[2026-06-05 16:07:13,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:07:13,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:07:13,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:07:14,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:07:14,087.087 INFO    ] time= 05/06/2026 16:07:14
[2026-06-05 16:07:14,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:07:14,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:07:14,173.173 INFO    ] No existing commands found in stream
[2026-06-05 16:07:19,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:07:19,211.211 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 16:07:21,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:07:21,326.326 INFO    ] Checking for system updates...
[2026-06-05 16:07:21,368.368 INFO    ] 200
[2026-06-05 16:07:21,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:21,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:07:21,426.426 INFO    ] No update needed
[2026-06-05 16:07:21,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 16:07:21,462.462 INFO    ] 200
[2026-06-05 16:07:21,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:21,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:07:21,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:07:21,561.561 INFO    ] No camera update needed
[2026-06-05 16:07:21,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:07:21,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:07:21,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:07:21,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:07:23,617.617 INFO    ] ================================================
[2026-06-05 16:07:23,632.632 INFO    ] Launching Daemon at Fri Jun  5 16:07:23 IST 2026
[2026-06-05 16:07:23,643.643 INFO    ] ================================================
[2026-06-05 16:07:24,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:07:24
[2026-06-05 16:07:24,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:07:25,106.106 INFO    ] Initializing speech engine...
[2026-06-05 16:07:25,122.122 INFO    ] 2026-06-05 16:07:25
[2026-06-05 16:07:25,410.410 INFO    ] 2026-06-05 16:07:25
[2026-06-05 16:07:25,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:07:25,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:07:25,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:07:25,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:07:25,790.790 INFO    ] time= 05/06/2026 16:07:25
[2026-06-05 16:07:25,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:07:25,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:07:25,914.914 INFO    ] No existing commands found in stream
[2026-06-05 16:07:30,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:07:30,935.935 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 16:07:32,896.896 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:07:32,899.899 INFO    ] Checking for system updates...
[2026-06-05 16:07:32,936.936 INFO    ] 200
[2026-06-05 16:07:32,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:32,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:07:32,996.996 INFO    ] No update needed
[2026-06-05 16:07:32,999.999 INFO    ] Checking for camera pi updates...
[2026-06-05 16:07:33,036.036 INFO    ] 200
[2026-06-05 16:07:33,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:33,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:07:33,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:07:33,132.132 INFO    ] No camera update needed
[2026-06-05 16:07:33,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:07:33,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:07:33,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:07:33,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:07:35,187.187 INFO    ] ================================================
[2026-06-05 16:07:35,202.202 INFO    ] Launching Daemon at Fri Jun  5 16:07:35 IST 2026
[2026-06-05 16:07:35,213.213 INFO    ] ================================================
[2026-06-05 16:07:35,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:07:35
[2026-06-05 16:07:36,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:07:36,668.668 INFO    ] Initializing speech engine...
[2026-06-05 16:07:36,696.696 INFO    ] 2026-06-05 16:07:36
[2026-06-05 16:07:36,968.968 INFO    ] 2026-06-05 16:07:36
[2026-06-05 16:07:37,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:07:37,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:07:37,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:07:37,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:07:37,386.386 INFO    ] time= 05/06/2026 16:07:37
[2026-06-05 16:07:37,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:07:37,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:07:37,479.479 INFO    ] No existing commands found in stream
[2026-06-05 16:07:42,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:07:42,512.512 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 16:07:46,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:07:46,052.052 INFO    ] Checking for system updates...
[2026-06-05 16:07:46,090.090 INFO    ] 200
[2026-06-05 16:07:46,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:46,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:07:46,150.150 INFO    ] No update needed
[2026-06-05 16:07:46,153.153 INFO    ] Checking for camera pi updates...
[2026-06-05 16:07:46,188.188 INFO    ] 200
[2026-06-05 16:07:46,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:46,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:07:46,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:07:46,280.280 INFO    ] No camera update needed
[2026-06-05 16:07:46,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:07:46,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:07:46,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:07:46,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:07:48,339.339 INFO    ] ================================================
[2026-06-05 16:07:48,356.356 INFO    ] Launching Daemon at Fri Jun  5 16:07:48 IST 2026
[2026-06-05 16:07:48,368.368 INFO    ] ================================================
[2026-06-05 16:07:48,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:07:48
[2026-06-05 16:07:49,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:07:49,802.802 INFO    ] Initializing speech engine...
[2026-06-05 16:07:49,821.821 INFO    ] 2026-06-05 16:07:49
[2026-06-05 16:07:50,063.063 INFO    ] 2026-06-05 16:07:50
[2026-06-05 16:07:50,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:07:50,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:07:50,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:07:50,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:07:50,435.435 INFO    ] time= 05/06/2026 16:07:50
[2026-06-05 16:07:50,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:07:50,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:07:50,627.627 INFO    ] No existing commands found in stream
[2026-06-05 16:07:55,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:07:55,645.645 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 16:07:58,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:07:58,569.569 INFO    ] Checking for system updates...
[2026-06-05 16:07:58,605.605 INFO    ] 200
[2026-06-05 16:07:58,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:58,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:07:58,671.671 INFO    ] No update needed
[2026-06-05 16:07:58,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 16:07:58,710.710 INFO    ] 200
[2026-06-05 16:07:58,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:07:58,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:07:58,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:07:58,799.799 INFO    ] No camera update needed
[2026-06-05 16:07:58,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:07:58,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:07:58,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:07:58,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:08:00,859.859 INFO    ] ================================================
[2026-06-05 16:08:00,875.875 INFO    ] Launching Daemon at Fri Jun  5 16:08:00 IST 2026
[2026-06-05 16:08:00,887.887 INFO    ] ================================================
[2026-06-05 16:08:01,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:08:01
[2026-06-05 16:08:02,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:08:02,572.572 INFO    ] Initializing speech engine...
[2026-06-05 16:08:02,582.582 INFO    ] 2026-06-05 16:08:02
[2026-06-05 16:08:02,873.873 INFO    ] 2026-06-05 16:08:02
[2026-06-05 16:08:02,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:08:03,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:08:03,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:08:03,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:08:03,290.290 INFO    ] time= 05/06/2026 16:08:03
[2026-06-05 16:08:03,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:08:03,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:08:03,399.399 INFO    ] No existing commands found in stream
[2026-06-05 16:08:08,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:08:08,437.437 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 16:08:10,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:08:10,273.273 INFO    ] Checking for system updates...
[2026-06-05 16:08:10,310.310 INFO    ] 200
[2026-06-05 16:08:10,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:08:10,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:08:10,367.367 INFO    ] No update needed
[2026-06-05 16:08:10,370.370 INFO    ] Checking for camera pi updates...
[2026-06-05 16:08:10,404.404 INFO    ] 200
[2026-06-05 16:08:10,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:08:10,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:08:10,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:08:10,503.503 INFO    ] No camera update needed
[2026-06-05 16:08:10,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:08:10,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:08:10,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:08:10,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:08:12,559.559 INFO    ] ================================================
[2026-06-05 16:08:12,575.575 INFO    ] Launching Daemon at Fri Jun  5 16:08:12 IST 2026
[2026-06-05 16:08:12,586.586 INFO    ] ================================================
[2026-06-05 16:08:13,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:08:13
[2026-06-05 16:08:13,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:08:14,022.022 INFO    ] Initializing speech engine...
[2026-06-05 16:08:14,030.030 INFO    ] 2026-06-05 16:08:14
[2026-06-05 16:08:14,333.333 INFO    ] 2026-06-05 16:08:14
[2026-06-05 16:08:14,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:08:14,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:08:14,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:08:14,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:08:14,742.742 INFO    ] time= 05/06/2026 16:08:14
[2026-06-05 16:08:14,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:08:14,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:08:14,854.854 INFO    ] No existing commands found in stream
[2026-06-05 16:08:19,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:08:19,870.870 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 16:08:24,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:08:24,556.556 INFO    ] Checking for system updates...
[2026-06-05 16:08:24,592.592 INFO    ] 200
[2026-06-05 16:08:24,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:08:24,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:08:24,651.651 INFO    ] No update needed
[2026-06-05 16:08:24,653.653 INFO    ] Checking for camera pi updates...
[2026-06-05 16:08:24,687.687 INFO    ] 200
[2026-06-05 16:08:24,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:08:24,731.731 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:08:24,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:08:24,784.784 INFO    ] No camera update needed
[2026-06-05 16:08:24,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:08:24,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:08:24,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:08:24,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:08:26,840.840 INFO    ] ================================================
[2026-06-05 16:08:26,856.856 INFO    ] Launching Daemon at Fri Jun  5 16:08:26 IST 2026
[2026-06-05 16:08:26,867.867 INFO    ] ================================================
[2026-06-05 16:08:27,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:08:27
[2026-06-05 16:08:28,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:08:28,331.331 INFO    ] Initializing speech engine...
[2026-06-05 16:08:28,338.338 INFO    ] 2026-06-05 16:08:28
[2026-06-05 16:08:28,599.599 INFO    ] 2026-06-05 16:08:28
[2026-06-05 16:08:28,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:08:28,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:08:28,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:08:29,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:08:29,079.079 INFO    ] time= 05/06/2026 16:08:29
[2026-06-05 16:08:29,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:08:29,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:08:29,278.278 INFO    ] No existing commands found in stream
[2026-06-05 16:08:34,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:08:34,312.312 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 16:08:35,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:08:35,590.590 INFO    ] Checking for system updates...
[2026-06-05 16:08:35,626.626 INFO    ] 200
[2026-06-05 16:08:35,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:08:35,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:08:35,684.684 INFO    ] No update needed
[2026-06-05 16:08:35,687.687 INFO    ] Checking for camera pi updates...
[2026-06-05 16:08:35,721.721 INFO    ] 200
[2026-06-05 16:08:35,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:08:35,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:08:35,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:08:35,913.913 INFO    ] No camera update needed
[2026-06-05 16:08:35,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:08:35,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:08:35,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:08:35,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:08:37,978.978 INFO    ] ================================================
[2026-06-05 16:08:37,994.994 INFO    ] Launching Daemon at Fri Jun  5 16:08:37 IST 2026
[2026-06-05 16:08:38,005.005 INFO    ] ================================================
[2026-06-05 16:08:38,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:08:38
[2026-06-05 16:08:39,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:08:39,438.438 INFO    ] Initializing speech engine...
[2026-06-05 16:08:39,444.444 INFO    ] 2026-06-05 16:08:39
[2026-06-05 16:08:39,752.752 INFO    ] 2026-06-05 16:08:39
[2026-06-05 16:08:39,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:08:39,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:08:39,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:08:40,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:08:40,139.139 INFO    ] time= 05/06/2026 16:08:40
[2026-06-05 16:08:40,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:08:40,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:08:40,266.266 INFO    ] No existing commands found in stream
[2026-06-05 16:08:45,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:08:45,282.282 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 16:08:49,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:08:49,289.289 INFO    ] Checking for system updates...
[2026-06-05 16:08:49,330.330 INFO    ] 200
[2026-06-05 16:08:49,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:08:49,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:08:49,402.402 INFO    ] No update needed
[2026-06-05 16:08:49,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 16:08:49,439.439 INFO    ] 200
[2026-06-05 16:08:49,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:08:49,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:08:50,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:08:50,530.530 INFO    ] No camera update needed
[2026-06-05 16:08:50,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:08:50,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:08:50,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:08:50,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:08:52,588.588 INFO    ] ================================================
[2026-06-05 16:08:52,604.604 INFO    ] Launching Daemon at Fri Jun  5 16:08:52 IST 2026
[2026-06-05 16:08:52,616.616 INFO    ] ================================================
[2026-06-05 16:08:53,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:08:53
[2026-06-05 16:08:53,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:08:54,281.281 INFO    ] Initializing speech engine...
[2026-06-05 16:08:54,288.288 INFO    ] 2026-06-05 16:08:54
[2026-06-05 16:08:54,584.584 INFO    ] 2026-06-05 16:08:54
[2026-06-05 16:08:54,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:08:54,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:08:54,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:08:55,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:08:55,066.066 INFO    ] time= 05/06/2026 16:08:55
[2026-06-05 16:08:55,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:08:55,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:08:55,252.252 INFO    ] No existing commands found in stream
[2026-06-05 16:09:00,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:09:00,281.281 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 16:09:01,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:09:01,540.540 INFO    ] Checking for system updates...
[2026-06-05 16:09:01,576.576 INFO    ] 200
[2026-06-05 16:09:01,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:01,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:09:01,659.659 INFO    ] No update needed
[2026-06-05 16:09:01,663.663 INFO    ] Checking for camera pi updates...
[2026-06-05 16:09:01,744.744 INFO    ] 200
[2026-06-05 16:09:01,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:01,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:09:01,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:09:01,879.879 INFO    ] No camera update needed
[2026-06-05 16:09:01,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:09:01,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:09:01,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:09:01,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:09:03,949.949 INFO    ] ================================================
[2026-06-05 16:09:03,966.966 INFO    ] Launching Daemon at Fri Jun  5 16:09:03 IST 2026
[2026-06-05 16:09:03,977.977 INFO    ] ================================================
[2026-06-05 16:09:04,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:09:04
[2026-06-05 16:09:05,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:09:05,437.437 INFO    ] Initializing speech engine...
[2026-06-05 16:09:05,446.446 INFO    ] 2026-06-05 16:09:05
[2026-06-05 16:09:05,711.711 INFO    ] 2026-06-05 16:09:05
[2026-06-05 16:09:05,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:09:05,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:09:05,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:09:06,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:09:06,137.137 INFO    ] time= 05/06/2026 16:09:06
[2026-06-05 16:09:06,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:09:06,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:09:06,298.298 INFO    ] No existing commands found in stream
[2026-06-05 16:09:11,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:09:11,326.326 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 16:09:11,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:09:11,856.856 INFO    ] Checking for system updates...
[2026-06-05 16:09:11,892.892 INFO    ] 200
[2026-06-05 16:09:11,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:11,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:09:11,951.951 INFO    ] No update needed
[2026-06-05 16:09:11,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 16:09:11,991.991 INFO    ] 200
[2026-06-05 16:09:11,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:12,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:09:12,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:09:12,079.079 INFO    ] No camera update needed
[2026-06-05 16:09:12,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:09:12,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:09:12,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:09:12,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:09:14,136.136 INFO    ] ================================================
[2026-06-05 16:09:14,152.152 INFO    ] Launching Daemon at Fri Jun  5 16:09:14 IST 2026
[2026-06-05 16:09:14,164.164 INFO    ] ================================================
[2026-06-05 16:09:14,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:09:14
[2026-06-05 16:09:15,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:09:15,823.823 INFO    ] Initializing speech engine...
[2026-06-05 16:09:15,835.835 INFO    ] 2026-06-05 16:09:15
[2026-06-05 16:09:16,121.121 INFO    ] 2026-06-05 16:09:16
[2026-06-05 16:09:16,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:09:16,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:09:16,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:09:16,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:09:16,640.640 INFO    ] time= 05/06/2026 16:09:16
[2026-06-05 16:09:16,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:09:16,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:09:16,828.828 INFO    ] No existing commands found in stream
[2026-06-05 16:09:21,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:09:21,857.857 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 16:09:24,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:09:24,562.562 INFO    ] Checking for system updates...
[2026-06-05 16:09:24,600.600 INFO    ] 200
[2026-06-05 16:09:24,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:24,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:09:24,661.661 INFO    ] No update needed
[2026-06-05 16:09:24,663.663 INFO    ] Checking for camera pi updates...
[2026-06-05 16:09:24,698.698 INFO    ] 200
[2026-06-05 16:09:24,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:24,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:09:24,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:09:24,799.799 INFO    ] No camera update needed
[2026-06-05 16:09:24,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:09:24,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:09:24,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:09:24,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:09:26,858.858 INFO    ] ================================================
[2026-06-05 16:09:26,873.873 INFO    ] Launching Daemon at Fri Jun  5 16:09:26 IST 2026
[2026-06-05 16:09:26,884.884 INFO    ] ================================================
[2026-06-05 16:09:27,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:09:27
[2026-06-05 16:09:28,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:09:28,489.489 INFO    ] Initializing speech engine...
[2026-06-05 16:09:28,496.496 INFO    ] 2026-06-05 16:09:28
[2026-06-05 16:09:28,787.787 INFO    ] 2026-06-05 16:09:28
[2026-06-05 16:09:28,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:09:29,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:09:29,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:09:29,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:09:29,286.286 INFO    ] time= 05/06/2026 16:09:29
[2026-06-05 16:09:29,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:09:29,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:09:29,502.502 INFO    ] No existing commands found in stream
[2026-06-05 16:09:34,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:09:34,525.525 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 16:09:35,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:09:35,244.244 INFO    ] Checking for system updates...
[2026-06-05 16:09:35,282.282 INFO    ] 200
[2026-06-05 16:09:35,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:35,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:09:35,342.342 INFO    ] No update needed
[2026-06-05 16:09:35,345.345 INFO    ] Checking for camera pi updates...
[2026-06-05 16:09:35,380.380 INFO    ] 200
[2026-06-05 16:09:35,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:35,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:09:35,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:09:35,479.479 INFO    ] No camera update needed
[2026-06-05 16:09:35,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:09:35,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:09:35,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:09:35,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:09:37,536.536 INFO    ] ================================================
[2026-06-05 16:09:37,552.552 INFO    ] Launching Daemon at Fri Jun  5 16:09:37 IST 2026
[2026-06-05 16:09:37,563.563 INFO    ] ================================================
[2026-06-05 16:09:38,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:09:38
[2026-06-05 16:09:38,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:09:38,965.965 INFO    ] Initializing speech engine...
[2026-06-05 16:09:38,973.973 INFO    ] 2026-06-05 16:09:38
[2026-06-05 16:09:39,245.245 INFO    ] 2026-06-05 16:09:39
[2026-06-05 16:09:39,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:09:39,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:09:39,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:09:39,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:09:39,625.625 INFO    ] time= 05/06/2026 16:09:39
[2026-06-05 16:09:39,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:09:39,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:09:39,796.796 INFO    ] No existing commands found in stream
[2026-06-05 16:09:44,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:09:44,824.824 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-05 16:09:47,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:09:47,422.422 INFO    ] Checking for system updates...
[2026-06-05 16:09:47,458.458 INFO    ] 200
[2026-06-05 16:09:47,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:47,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:09:47,516.516 INFO    ] No update needed
[2026-06-05 16:09:47,518.518 INFO    ] Checking for camera pi updates...
[2026-06-05 16:09:47,552.552 INFO    ] 200
[2026-06-05 16:09:47,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:09:47,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:09:47,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:09:47,653.653 INFO    ] No camera update needed
[2026-06-05 16:09:47,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:09:47,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:09:47,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:09:47,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:09:49,710.710 INFO    ] ================================================
[2026-06-05 16:09:49,726.726 INFO    ] Launching Daemon at Fri Jun  5 16:09:49 IST 2026
[2026-06-05 16:09:49,737.737 INFO    ] ================================================
[2026-06-05 16:09:50,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:09:50
[2026-06-05 16:09:50,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:09:51,196.196 INFO    ] Initializing speech engine...
[2026-06-05 16:09:51,206.206 INFO    ] 2026-06-05 16:09:51
[2026-06-05 16:09:51,470.470 INFO    ] 2026-06-05 16:09:51
[2026-06-05 16:09:51,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:09:51,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:09:51,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:09:54,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:09:54,051.051 INFO    ] time= 05/06/2026 16:09:54
[2026-06-05 16:09:54,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:09:54,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:09:54,191.191 INFO    ] No existing commands found in stream
[2026-06-05 16:09:59,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:09:59,229.229 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 16:10:01,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:10:01,199.199 INFO    ] Checking for system updates...
[2026-06-05 16:10:01,237.237 INFO    ] 200
[2026-06-05 16:10:01,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:01,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:10:01,298.298 INFO    ] No update needed
[2026-06-05 16:10:01,301.301 INFO    ] Checking for camera pi updates...
[2026-06-05 16:10:01,337.337 INFO    ] 200
[2026-06-05 16:10:01,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:01,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:10:01,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:10:01,413.413 INFO    ] No camera update needed
[2026-06-05 16:10:01,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:10:01,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:10:01,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:10:01,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:10:03,489.489 INFO    ] ================================================
[2026-06-05 16:10:03,520.520 INFO    ] Launching Daemon at Fri Jun  5 16:10:03 IST 2026
[2026-06-05 16:10:03,537.537 INFO    ] ================================================
[2026-06-05 16:10:04,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:10:04
[2026-06-05 16:10:04,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:10:05,057.057 INFO    ] Initializing speech engine...
[2026-06-05 16:10:05,063.063 INFO    ] 2026-06-05 16:10:05
[2026-06-05 16:10:05,358.358 INFO    ] 2026-06-05 16:10:05
[2026-06-05 16:10:05,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:10:05,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:10:05,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:10:05,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:10:05,752.752 INFO    ] time= 05/06/2026 16:10:05
[2026-06-05 16:10:05,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:10:05,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:10:05,867.867 INFO    ] No existing commands found in stream
[2026-06-05 16:10:10,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:10:10,882.882 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 16:10:14,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:10:14,918.918 INFO    ] Checking for system updates...
[2026-06-05 16:10:14,954.954 INFO    ] 200
[2026-06-05 16:10:14,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:15,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:10:15,013.013 INFO    ] No update needed
[2026-06-05 16:10:15,015.015 INFO    ] Checking for camera pi updates...
[2026-06-05 16:10:15,053.053 INFO    ] 200
[2026-06-05 16:10:15,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:15,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:10:15,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:10:15,143.143 INFO    ] No camera update needed
[2026-06-05 16:10:15,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:10:15,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:10:15,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:10:15,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:10:17,200.200 INFO    ] ================================================
[2026-06-05 16:10:17,214.214 INFO    ] Launching Daemon at Fri Jun  5 16:10:17 IST 2026
[2026-06-05 16:10:17,225.225 INFO    ] ================================================
[2026-06-05 16:10:17,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:10:17
[2026-06-05 16:10:18,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:10:18,649.649 INFO    ] Initializing speech engine...
[2026-06-05 16:10:18,665.665 INFO    ] 2026-06-05 16:10:18
[2026-06-05 16:10:18,949.949 INFO    ] 2026-06-05 16:10:18
[2026-06-05 16:10:18,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:10:19,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:10:19,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:10:19,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:10:19,370.370 INFO    ] time= 05/06/2026 16:10:19
[2026-06-05 16:10:19,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:10:19,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:10:19,457.457 INFO    ] No existing commands found in stream
[2026-06-05 16:10:24,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:10:24,496.496 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 16:10:25,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:10:25,611.611 INFO    ] Checking for system updates...
[2026-06-05 16:10:25,651.651 INFO    ] 200
[2026-06-05 16:10:25,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:25,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:10:25,715.715 INFO    ] No update needed
[2026-06-05 16:10:25,717.717 INFO    ] Checking for camera pi updates...
[2026-06-05 16:10:25,751.751 INFO    ] 200
[2026-06-05 16:10:25,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:25,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:10:25,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:10:25,840.840 INFO    ] No camera update needed
[2026-06-05 16:10:25,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:10:25,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:10:25,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:10:25,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:10:27,897.897 INFO    ] ================================================
[2026-06-05 16:10:27,912.912 INFO    ] Launching Daemon at Fri Jun  5 16:10:27 IST 2026
[2026-06-05 16:10:27,923.923 INFO    ] ================================================
[2026-06-05 16:10:28,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:10:28
[2026-06-05 16:10:29,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:10:29,457.457 INFO    ] Initializing speech engine...
[2026-06-05 16:10:29,468.468 INFO    ] 2026-06-05 16:10:29
[2026-06-05 16:10:29,744.744 INFO    ] 2026-06-05 16:10:29
[2026-06-05 16:10:29,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:10:30,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:10:30,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:10:30,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:10:30,297.297 INFO    ] time= 05/06/2026 16:10:30
[2026-06-05 16:10:30,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:10:30,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:10:30,448.448 INFO    ] No existing commands found in stream
[2026-06-05 16:10:35,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:10:35,464.464 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 16:10:35,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:10:35,912.912 INFO    ] Checking for system updates...
[2026-06-05 16:10:35,948.948 INFO    ] 200
[2026-06-05 16:10:35,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:36,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:10:36,006.006 INFO    ] No update needed
[2026-06-05 16:10:36,009.009 INFO    ] Checking for camera pi updates...
[2026-06-05 16:10:36,046.046 INFO    ] 200
[2026-06-05 16:10:36,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:36,089.089 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:10:36,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:10:36,134.134 INFO    ] No camera update needed
[2026-06-05 16:10:36,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:10:36,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:10:36,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:10:36,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:10:38,189.189 INFO    ] ================================================
[2026-06-05 16:10:38,204.204 INFO    ] Launching Daemon at Fri Jun  5 16:10:38 IST 2026
[2026-06-05 16:10:38,221.221 INFO    ] ================================================
[2026-06-05 16:10:38,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:10:38
[2026-06-05 16:10:39,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:10:39,640.640 INFO    ] Initializing speech engine...
[2026-06-05 16:10:39,653.653 INFO    ] 2026-06-05 16:10:39
[2026-06-05 16:10:39,936.936 INFO    ] 2026-06-05 16:10:39
[2026-06-05 16:10:39,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:10:40,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:10:40,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:10:40,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:10:40,353.353 INFO    ] time= 05/06/2026 16:10:40
[2026-06-05 16:10:40,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:10:40,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:10:40,506.506 INFO    ] No existing commands found in stream
[2026-06-05 16:10:45,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:10:45,534.534 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 16:10:48,173.173 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:10:48,176.176 INFO    ] Checking for system updates...
[2026-06-05 16:10:48,213.213 INFO    ] 200
[2026-06-05 16:10:48,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:48,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:10:48,272.272 INFO    ] No update needed
[2026-06-05 16:10:48,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 16:10:48,312.312 INFO    ] 200
[2026-06-05 16:10:48,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:10:48,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:10:48,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:10:48,516.516 INFO    ] No camera update needed
[2026-06-05 16:10:48,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:10:48,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:10:48,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:10:48,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:10:50,571.571 INFO    ] ================================================
[2026-06-05 16:10:50,586.586 INFO    ] Launching Daemon at Fri Jun  5 16:10:50 IST 2026
[2026-06-05 16:10:50,597.597 INFO    ] ================================================
[2026-06-05 16:10:51,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:10:51
[2026-06-05 16:10:51,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:10:52,056.056 INFO    ] Initializing speech engine...
[2026-06-05 16:10:52,071.071 INFO    ] 2026-06-05 16:10:52
[2026-06-05 16:10:52,345.345 INFO    ] 2026-06-05 16:10:52
[2026-06-05 16:10:52,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:10:54,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:10:54,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:10:55,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:10:55,181.181 INFO    ] time= 05/06/2026 16:10:55
[2026-06-05 16:10:55,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:10:55,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:10:55,279.279 INFO    ] No existing commands found in stream
[2026-06-05 16:11:00,211.211 INFO    ] Received new command: ID=1780656060014-0
[2026-06-05 16:11:00,214.214 INFO    ] process_and_cleanup_command: msg_id=1780656060014-0
[2026-06-05 16:11:00,217.217 INFO    ] is_command_expired: timestamp=2026-06-05T10:40:59.501Z, expiry=30s
[2026-06-05 16:11:00,325.325 INFO    ] Command removed from stream: 1780656060014-0. returning for processing...
[2026-06-05 16:11:00,327.327 INFO    ] ***** get_valid_command
[2026-06-05 16:11:00,330.330 INFO    ] {'data': '{"request_id":"start-order-1780656059501-gfu7tvnvd","orderId":"TM07202501260605160957759","is_vending":false}', 'timestamp': '2026-06-05T10:40:59.501Z', 'source': 'webapp', 'timeout': '10', 'command': 'start-order'}
[2026-06-05 16:11:00,332.332 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM07202501260605160957759', 'request_id': 'start-order-1780656059501-gfu7tvnvd'}
[2026-06-05 16:11:00,335.335 INFO    ] Handling start order...
[2026-06-05 16:11:00,337.337 INFO    ] handle_start_order_command
[2026-06-05 16:11:00,343.343 INFO    ] _send_start_order_success: request_id=start-order-1780656059501-gfu7tvnvd, order_id=TM07202501260605160957759
[2026-06-05 16:11:00,346.346 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-05 16:11:00,412.412 INFO    ] [_send_start_order_success] Message added to stream with ID: 1780656060376-0
[2026-06-05 16:11:00,415.415 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-05 16:11:00,417.417 INFO    ] Checking for system updates...
[2026-06-05 16:11:00,460.460 INFO    ] 200
[2026-06-05 16:11:00,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:11:00,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:11:00,523.523 INFO    ] No update needed
[2026-06-05 16:11:00,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 16:11:00,562.562 INFO    ] 200
[2026-06-05 16:11:00,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:11:00,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:11:00,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:11:00,659.659 INFO    ] No camera update needed
[2026-06-05 16:11:00,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:11:00,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:11:00,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:11:00,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:11:02,731.731 INFO    ] ================================================
[2026-06-05 16:11:02,749.749 INFO    ] Launching Daemon at Fri Jun  5 16:11:02 IST 2026
[2026-06-05 16:11:02,766.766 INFO    ] ================================================
[2026-06-05 16:11:03,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:11:03
[2026-06-05 16:11:04,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:11:04,401.401 INFO    ] Initializing speech engine...
[2026-06-05 16:11:04,410.410 INFO    ] 2026-06-05 16:11:04
[2026-06-05 16:11:04,693.693 INFO    ] 2026-06-05 16:11:04
[2026-06-05 16:11:04,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:11:04,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:11:04,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:11:05,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:11:05,201.201 INFO    ] time= 05/06/2026 16:11:05
[2026-06-05 16:11:05,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:11:05,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:11:05,369.369 INFO    ] Found 2 existing command(s) in stream
[2026-06-05 16:11:05,413.413 INFO    ] Checking historical command: ID=1780656060376-0
[2026-06-05 16:11:05,461.461 INFO    ] process_and_cleanup_command: msg_id=1780656060376-0
[2026-06-05 16:11:05,516.516 INFO    ] is_command_expired: timestamp=2026-06-05T10:41:00.344516Z, expiry=30s
[2026-06-05 16:11:05,694.694 INFO    ] Command removed from stream: 1780656060376-0. returning for processing...
[2026-06-05 16:11:05,741.741 INFO    ] ***** get_valid_command
[2026-06-05 16:11:05,744.744 INFO    ] {'metadata_request_id': 'start-order-1780656059501-gfu7tvnvd', 'status': 'success', 'timestamp': '2026-06-05T10:41:00.344516Z', 'message': 'start-order success', 'message_type': 'command_response', 'metadata_order_id': 'TM07202501260605160957759', 'imei': 'TM07202501'}
[2026-06-05 16:11:05,755.755 INFO    ] Checking historical command: ID=1780656062964-0
[2026-06-05 16:11:05,758.758 INFO    ] process_and_cleanup_command: msg_id=1780656062964-0
[2026-06-05 16:11:05,761.761 INFO    ] is_command_expired: timestamp=2026-06-05T10:41:02.391Z, expiry=30s
[2026-06-05 16:11:05,874.874 INFO    ] Command removed from stream: 1780656062964-0. returning for processing...
[2026-06-05 16:11:05,898.898 INFO    ] ***** get_valid_command
[2026-06-05 16:11:05,905.905 INFO    ] {'timeout': '60', 'command': 'process-order', 'source': 'webapp', 'data': '{"request_id":"process-order-1780656062391-pj0ij5lio","orderId":"TM07202501260605160957759","is_vending":false,"accessCode":"12020660"}', 'timestamp': '2026-06-05T10:41:02.391Z'}
[2026-06-05 16:11:05,957.957 INFO    ] ***** Parsed command data: {'accessCode': '12020660', 'orderId': 'TM07202501260605160957759', 'request_id': 'process-order-1780656062391-pj0ij5lio', 'is_vending': False}
[2026-06-05 16:11:05,961.961 INFO    ] Handling process order...
[2026-06-05 16:11:05,964.964 INFO    ] Processing process-order command...
[2026-06-05 16:11:06,017.017 INFO    ] 🔍 Lock file Order ID: TM07202501260605160957759, TS: 2026-06-05 16:11:00
[2026-06-05 16:11:06,036.036 INFO    ] ✅ Order lock valid for TM07202501260605160957759
[2026-06-05 16:11:06,041.041 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-05 16:11:06,046.046 INFO    ] processing access code 12020660 for order TM07202501260605160957759
[2026-06-05 16:11:06,052.052 INFO    ] 🔍 Lock file Order ID: TM07202501260605160957759, TS: 2026-06-05 16:11:00
[2026-06-05 16:11:06,058.058 INFO    ] ✅ Order lock valid for TM07202501260605160957759
[2026-06-05 16:11:06,063.063 INFO    ] 2026-06-05 16:11:06
[2026-06-05 16:11:06,177.177 INFO    ] 200
[2026-06-05 16:11:06,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:11:06,226.226 INFO    ] 12020660
[2026-06-05 16:11:06,234.234 INFO    ] 2026-06-05 16:11:06
[2026-06-05 16:11:06,239.239 INFO    ] session id :596058918
[2026-06-05 16:11:06,246.246 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=12020660&imei=TM07202501&session_id=596058918
[2026-06-05 16:11:07,323.323 INFO    ] 200
[2026-06-05 16:11:07,335.335 INFO    ] {"rstatus": true, "msg": "Order Data", "data": {"mobile": "9896093185", "bill_amount": "20", "access_code": "12020660", "order_id": "TM07202501260605160957759", "proposed_sku_json": [{"qty": 1, "name": "Max Protein Cheese jalapeno  32gm", "offer_id": "", "skuid": "4500671", "sku_total": 20, "door_id": "1", "tray_id": "24", "image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "mrp": "20", "offer_desc": "", "unit_price": 20}], "invoice_bill": "20"}, "status": true}
[2026-06-05 16:11:07,356.356 INFO    ] 20
[2026-06-05 16:11:07,363.363 INFO    ] TM07202501260605160957759
[2026-06-05 16:11:07,369.369 INFO    ] 9896093185
[2026-06-05 16:11:07,409.409 INFO    ] 2026-06-05 16:11:07
[2026-06-05 16:11:07,439.439 INFO    ] Door Opening for user mobile ending with  three one eight five 
[2026-06-05 16:11:07,466.466 INFO    ] Door Opening for user mobile ending with  three one eight five 
[2026-06-05 16:11:07,503.503 INFO    ] 2e6c2b701c3b91e54c57d36a9e1a0f65
[2026-06-05 16:11:07,553.553 INFO    ] 2026-06-05 16:11:07
[2026-06-05 16:11:07,557.557 INFO    ] playing audio file
[2026-06-05 16:11:07,582.582 INFO    ] 2026-06-05 16:11:07
[2026-06-05 16:11:07,593.593 INFO    ] 2026-06-05 16:11:07
[2026-06-05 16:11:07,625.625 INFO    ] publish_status: order_id=TM07202501260605160957759
[2026-06-05 16:11:07,638.638 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605160957759
[2026-06-05 16:11:07,721.721 INFO    ] [publish_status] Message added to stream with ID: 1780656067666-0
[2026-06-05 16:11:07,741.741 INFO    ] Published to order:TM07202501260605160957759: {'timestamp': '2026-06-05T10:41:07.596797Z', 'order_id': 'TM07202501260605160957759', 'server_status': 'order-started', 'server_response': '{"rstatus": true, "msg": "Order Data", "status": true, "data": {"bill_amount": "20", "order_id": "TM07202501260605160957759", "mobile": "9896093185", "access_code": "12020660", "proposed_sku_json": [{"unit_price": 20, "name": "Max Protein Cheese jalapeno  32gm", "skuid": "4500671", "offer_id": "", "sku_total": 20, "tray_id": "24", "qty": 1, "offer_desc": "", "door_id": "1", "image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "mrp": "20"}], "invoice_bill": "20"}}'} (ID: 1780656067666-0)
[2026-06-05 16:11:08,212.212 INFO    ] {'order_id': 'TM07202501260605160957759', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'bill_amount': '20', 'order_id': 'TM07202501260605160957759', 'mobile': '9896093185', 'access_code': '12020660', 'proposed_sku_json': [{'unit_price': 20, 'name': 'Max Protein Cheese jalapeno  32gm', 'skuid': '4500671', 'offer_id': '', 'sku_total': 20, 'tray_id': '24', 'qty': 1, 'offer_desc': '', 'door_id': '1', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'mrp': '20'}], 'invoice_bill': '20'}}}
[2026-06-05 16:11:08,215.215 INFO    ] 200
[2026-06-05 16:11:08,217.217 INFO    ] {"data":{"order_id":"TM07202501260605160957759","server_status":"order-started","server_response":{"rstatus":true,"msg":"Order Data","status":true,"data":{"bill_amount":"20","order_id":"TM07202501260605160957759","mobile":"9896093185","access_code":"12020660","proposed_sku_json":[{"unit_price":20,"name":"Max Protein Cheese jalapeno  32gm","skuid":"4500671","offer_id":"","sku_total":20,"tray_id":"24","qty":1,"offer_desc":"","door_id":"1","image_url":"https:\/\/images.tinymart.in\/product\/4500671-2117.jpg","mrp":"20"}],"invoice_bill":"20"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:11:08,220.220 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM07202501260605160957759', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'bill_amount': '20', 'order_id': 'TM07202501260605160957759', 'mobile': '9896093185', 'access_code': '12020660', 'proposed_sku_json': [{'unit_price': 20, 'name': 'Max Protein Cheese jalapeno  32gm', 'skuid': '4500671', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'tray_id': '24', 'sku_total': 20, 'qty': 1, 'door_id': '1', 'offer_desc': '', 'mrp': '20'}], 'invoice_bill': '20'}, 'status': True}}}
[2026-06-05 16:11:08,223.223 INFO    ] 2026-06-05 16:11:08
[2026-06-05 16:11:08,267.267 INFO    ] 200
[2026-06-05 16:11:08,270.270 INFO    ] True
[2026-06-05 16:11:08,439.439 INFO    ] 200
[2026-06-05 16:11:08,442.442 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:11:08,446.446 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-05 16:11:08,449.449 INFO    ] *** process_order ***
[2026-06-05 16:11:09,636.636 INFO    ] 200
[2026-06-05 16:11:09,639.639 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "delay": 0, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True"}
[2026-06-05 16:11:09,642.642 INFO    ] {'delay': 0, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-05 16:11:09,645.645 INFO    ] *** process_order ***
[2026-06-05 16:11:09,648.648 INFO    ] publish_status: order_id=TM07202501260605160957759
[2026-06-05 16:11:09,650.650 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605160957759
[2026-06-05 16:11:09,712.712 INFO    ] [publish_status] Message added to stream with ID: 1780656069675-0
[2026-06-05 16:11:09,716.716 INFO    ] Published to order:TM07202501260605160957759: {'order_id': 'TM07202501260605160957759', 'server_status': 'doorOpened', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "delay": 0, "status": "True", "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}}'} (ID: 1780656069675-0)
[2026-06-05 16:11:10,788.788 INFO    ] 2026-06-05 16:11:10
[2026-06-05 16:11:10,791.791 INFO    ] publish_status: order_id=TM07202501260605160957759
[2026-06-05 16:11:10,794.794 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605160957759
[2026-06-05 16:11:10,884.884 INFO    ] [publish_status] Message added to stream with ID: 1780656070847-0
[2026-06-05 16:11:10,889.889 INFO    ] Published to order:TM07202501260605160957759: {'timestamp': '2026-06-05T10:41:10.789790Z', 'order_id': 'TM07202501260605160957759', 'server_status': 'processOrder', 'server_response': '{"delay": 0, "rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}}'} (ID: 1780656070847-0)
[2026-06-05 16:11:11,014.014 INFO    ] {'order_id': 'TM07202501260605160957759', 'server_status': 'processOrder', 'server_response': {'delay': 0, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}}
[2026-06-05 16:11:11,017.017 INFO    ] 200
[2026-06-05 16:11:11,019.019 INFO    ] {"data":{"order_id":"TM07202501260605160957759","server_status":"processOrder","server_response":{"delay":0,"rstatus":true,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true","SectionStatus":{"Note":"","UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:11:11,022.022 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM07202501260605160957759', 'server_status': 'processOrder', 'server_response': {'delay': 0, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}}}
[2026-06-05 16:11:11,025.025 INFO    ] 2026-06-05 16:11:11
[2026-06-05 16:11:11,028.028 INFO    ] None
[2026-06-05 16:11:11,030.030 INFO    ] Opening Door now
[2026-06-05 16:11:11,032.032 INFO    ] Opening Door now
[2026-06-05 16:11:11,036.036 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-05 16:11:11,039.039 INFO    ] 2026-06-05 16:11:11
[2026-06-05 16:11:11,041.041 INFO    ] playing audio file
[2026-06-05 16:11:11,058.058 INFO    ] 2026-06-05 16:11:11
[2026-06-05 16:11:11,062.062 INFO    ] 2026-06-05 16:11:11
[2026-06-05 16:11:14,150.150 INFO    ] 200
[2026-06-05 16:11:14,153.153 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Max Protein Cheese jalapeno  32gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:11:14,157.157 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max Protein Cheese jalapeno  32gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-05 16:11:17,261.261 INFO    ] 200
[2026-06-05 16:11:17,264.264 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Max Protein Cheese jalapeno  32gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:11:17,267.267 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max Protein Cheese jalapeno  32gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-05 16:11:20,370.370 INFO    ] 200
[2026-06-05 16:11:20,372.372 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Max Protein Cheese jalapeno  32gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:11:20,376.376 INFO    ] Please close door 1
[2026-06-05 16:11:20,378.378 INFO    ] Please close door 1
[2026-06-05 16:11:20,381.381 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-05 16:11:20,383.383 INFO    ] 2026-06-05 16:11:20
[2026-06-05 16:11:20,385.385 INFO    ] playing audio file
[2026-06-05 16:11:20,403.403 INFO    ] 2026-06-05 16:11:20
[2026-06-05 16:11:20,407.407 INFO    ] publish_status: order_id=TM07202501260605160957759
[2026-06-05 16:11:20,410.410 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605160957759
[2026-06-05 16:11:20,516.516 INFO    ] [publish_status] Message added to stream with ID: 1780656080472-0
[2026-06-05 16:11:20,518.518 INFO    ] Published to order:TM07202501260605160957759: {'timestamp': '2026-06-05T10:41:20.405450Z', 'order_id': 'TM07202501260605160957759', 'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "Max Protein Cheese jalapeno  32gm"}], "Header": "Pick the below items from the door"}, "rstatus": false, "status": "False", "error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}'} (ID: 1780656080472-0)
[2026-06-05 16:11:21,036.036 INFO    ] {'order_id': 'TM07202501260605160957759', 'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max Protein Cheese jalapeno  32gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-05 16:11:21,038.038 INFO    ] 200
[2026-06-05 16:11:21,041.041 INFO    ] {"data":{"order_id":"TM07202501260605160957759","server_status":"OrderStatus","server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"Max Protein Cheese jalapeno  32gm"}],"Header":"Pick the below items from the door"},"rstatus":false,"status":"false","error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door"},"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:11:21,044.044 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM07202501260605160957759', 'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max Protein Cheese jalapeno  32gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'false', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}}}
[2026-06-05 16:11:21,046.046 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max Protein Cheese jalapeno  32gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-05 16:11:24,123.123 INFO    ] 200
[2026-06-05 16:11:24,126.126 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": true, "delay": 100, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True"}
[2026-06-05 16:11:24,129.129 INFO    ] {'delay': 100, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-05 16:11:24,132.132 INFO    ] 2026-06-05 16:11:24
[2026-06-05 16:11:24,135.135 INFO    ] Order Completed 
[2026-06-05 16:11:24,138.138 INFO    ] Order Completed 
[2026-06-05 16:11:24,140.140 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-05 16:11:24,143.143 INFO    ] 2026-06-05 16:11:24
[2026-06-05 16:11:24,146.146 INFO    ] playing audio file
[2026-06-05 16:11:24,165.165 INFO    ] 2026-06-05 16:11:24
[2026-06-05 16:11:24,169.169 INFO    ] {'delay': 100, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-05 16:11:24,172.172 INFO    ] 2026-06-05 16:11:24
[2026-06-05 16:11:26,928.928 INFO    ] 200
[2026-06-05 16:11:26,931.931 INFO    ] {"rstatus": true, "skus": [{"skuid": "4500671", "tray_id": "24", "sku_total": 20.0, "unit_price": "20", "door_id": "", "image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "mrp": "20", "qty": 1, "name": "Max Protein Cheese jalapeno  32gm per peice"}], "logic": "WBL", "anomaly": 0, "total_amount": 20.0, "orderId": "TM07202501260605160957759", "res": "True"}
[2026-06-05 16:11:26,934.934 INFO    ] {'rstatus': True, 'skus': [{'unit_price': '20', 'tray_id': '24', 'sku_total': 20.0, 'skuid': '4500671', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'qty': 1, 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'mrp': '20'}], 'res': 'True', 'anomaly': 0, 'total_amount': 20.0, 'orderId': 'TM07202501260605160957759', 'logic': 'WBL'}
[2026-06-05 16:11:26,937.937 INFO    ] {'rstatus': True, 'skus': [{'unit_price': '20', 'tray_id': '24', 'sku_total': 20.0, 'skuid': '4500671', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'qty': 1, 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'mrp': '20'}], 'res': 'True', 'anomaly': 0, 'total_amount': 20.0, 'orderId': 'TM07202501260605160957759', 'logic': 'WBL'}
[2026-06-05 16:11:26,940.940 INFO    ] 2026-06-05 16:11:26
[2026-06-05 16:11:26,945.945 INFO    ] 2026-06-05 16:11:26
[2026-06-05 16:11:26,948.948 INFO    ] 20
[2026-06-05 16:11:26,953.953 INFO    ] 2026-06-05 16:11:26
[2026-06-05 16:11:26,955.955 INFO    ] 2026-06-05 16:11:26
[2026-06-05 16:11:26,958.958 INFO    ]  Your Bill Amount is 20
[2026-06-05 16:11:26,961.961 INFO    ]  Your Bill Amount is 20
[2026-06-05 16:11:26,963.963 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-05 16:11:26,965.965 INFO    ] 2026-06-05 16:11:26
[2026-06-05 16:11:26,968.968 INFO    ] playing audio file
[2026-06-05 16:11:26,986.986 INFO    ] 2026-06-05 16:11:26
[2026-06-05 16:11:26,989.989 INFO    ] 2026-06-05 16:11:26
[2026-06-05 16:11:26,992.992 INFO    ] publish_status: order_id=TM07202501260605160957759
[2026-06-05 16:11:26,995.995 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605160957759
[2026-06-05 16:11:27,062.062 INFO    ] [publish_status] Message added to stream with ID: 1780656087027-0
[2026-06-05 16:11:27,065.065 INFO    ] Published to order:TM07202501260605160957759: {'timestamp': '2026-06-05T10:41:26.990822Z', 'order_id': 'TM07202501260605160957759', 'server_status': 'invoiceOrder', 'server_response': '{"rstatus": true, "skus": [{"unit_price": "20", "tray_id": "24", "sku_total": 20.0, "skuid": "4500671", "name": "Max Protein Cheese jalapeno  32gm per peice", "qty": 1, "door_id": "", "image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "mrp": "20"}], "res": "True", "anomaly": 0, "total_amount": 20.0, "orderId": "TM07202501260605160957759", "logic": "WBL"}'} (ID: 1780656087027-0)
[2026-06-05 16:11:27,515.515 INFO    ] {'order_id': 'TM07202501260605160957759', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'skus': [{'unit_price': '20', 'tray_id': '24', 'sku_total': 20.0, 'skuid': '4500671', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'qty': 1, 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'mrp': '20'}], 'res': 'True', 'anomaly': 0, 'total_amount': 20.0, 'orderId': 'TM07202501260605160957759', 'logic': 'WBL'}}
[2026-06-05 16:11:27,518.518 INFO    ] 200
[2026-06-05 16:11:27,520.520 INFO    ] {"data":{"order_id":"TM07202501260605160957759","server_status":"invoiceOrder","server_response":{"rstatus":true,"skus":[{"unit_price":"20","tray_id":"24","sku_total":20,"skuid":"4500671","name":"Max Protein Cheese jalapeno  32gm per peice","qty":1,"door_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500671-2117.jpg","mrp":"20"}],"res":"true","anomaly":0,"total_amount":20,"orderId":"TM07202501260605160957759","logic":"WBL"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:11:27,526.526 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM07202501260605160957759', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'skus': [{'unit_price': '20', 'tray_id': '24', 'sku_total': 20, 'skuid': '4500671', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'qty': 1, 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'mrp': '20'}], 'res': 'true', 'anomaly': 0, 'total_amount': 20, 'orderId': 'TM07202501260605160957759', 'logic': 'WBL'}}}
[2026-06-05 16:11:27,529.529 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM07202501260605160957759', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'skus': [{'unit_price': '20', 'tray_id': '24', 'sku_total': 20, 'skuid': '4500671', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'qty': 1, 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'mrp': '20'}], 'res': 'true', 'anomaly': 0, 'total_amount': 20, 'orderId': 'TM07202501260605160957759', 'logic': 'WBL'}}}
[2026-06-05 16:11:27,532.532 INFO    ] 2026-06-05 16:11:27
[2026-06-05 16:11:29,063.063 INFO    ] 200
[2026-06-05 16:11:29,066.066 INFO    ] {"orders": [], "orders_synced": [], "order_items_synced": [], "orders_data": [], "tray_synced": ["TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759", "TM07202501260605160957759"], "orders_data_synced": [], "order_items": [], "tray_sync": [], "status": true}
[2026-06-05 16:11:29,069.069 INFO    ] 2026-06-05 16:11:29
[2026-06-05 16:11:29,193.193 INFO    ] 200
[2026-06-05 16:11:29,196.196 INFO    ] True
[2026-06-05 16:11:29,199.199 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260605160957759
[2026-06-05 16:11:29,203.203 INFO    ] start order file deleted
[2026-06-05 16:11:29,207.207 INFO    ] Checking for system updates...
[2026-06-05 16:11:29,252.252 INFO    ] 200
[2026-06-05 16:11:29,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:11:29,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:11:29,330.330 INFO    ] No update needed
[2026-06-05 16:11:29,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 16:11:29,376.376 INFO    ] 200
[2026-06-05 16:11:29,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:11:29,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:11:29,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:11:29,476.476 INFO    ] No camera update needed
[2026-06-05 16:11:29,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:11:29,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:11:29,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:11:29,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:11:31,545.545 INFO    ] ================================================
[2026-06-05 16:11:31,561.561 INFO    ] Launching Daemon at Fri Jun  5 16:11:31 IST 2026
[2026-06-05 16:11:31,571.571 INFO    ] ================================================
[2026-06-05 16:11:32,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:11:32
[2026-06-05 16:11:32,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:11:33,104.104 INFO    ] Initializing speech engine...
[2026-06-05 16:11:33,109.109 INFO    ] 2026-06-05 16:11:33
[2026-06-05 16:11:33,416.416 INFO    ] 2026-06-05 16:11:33
[2026-06-05 16:11:33,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:11:33,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:11:33,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:11:33,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:11:33,801.801 INFO    ] time= 05/06/2026 16:11:33
[2026-06-05 16:11:33,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:11:33,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:11:33,930.930 INFO    ] No existing commands found in stream
[2026-06-05 16:11:38,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:11:38,946.946 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 16:11:39,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:11:39,918.918 INFO    ] Checking for system updates...
[2026-06-05 16:11:39,954.954 INFO    ] 200
[2026-06-05 16:11:39,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:11:40,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:11:40,013.013 INFO    ] No update needed
[2026-06-05 16:11:40,016.016 INFO    ] Checking for camera pi updates...
[2026-06-05 16:11:40,054.054 INFO    ] 200
[2026-06-05 16:11:40,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:11:40,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:11:40,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:11:40,155.155 INFO    ] No camera update needed
[2026-06-05 16:11:40,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:11:40,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:11:40,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:11:40,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:11:42,211.211 INFO    ] ================================================
[2026-06-05 16:11:42,225.225 INFO    ] Launching Daemon at Fri Jun  5 16:11:42 IST 2026
[2026-06-05 16:11:42,236.236 INFO    ] ================================================
[2026-06-05 16:11:42,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:11:42
[2026-06-05 16:11:43,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:11:43,760.760 INFO    ] Initializing speech engine...
[2026-06-05 16:11:43,769.769 INFO    ] 2026-06-05 16:11:43
[2026-06-05 16:11:44,088.088 INFO    ] 2026-06-05 16:11:44
[2026-06-05 16:11:44,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:11:44,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:11:44,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:11:44,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:11:44,598.598 INFO    ] time= 05/06/2026 16:11:44
[2026-06-05 16:11:44,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:11:44,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:11:44,778.778 INFO    ] No existing commands found in stream
[2026-06-05 16:11:49,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:11:49,818.818 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 16:11:54,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:11:54,974.974 INFO    ] Checking for system updates...
[2026-06-05 16:11:55,015.015 INFO    ] 200
[2026-06-05 16:11:55,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:11:55,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:11:55,073.073 INFO    ] No update needed
[2026-06-05 16:11:55,075.075 INFO    ] Checking for camera pi updates...
[2026-06-05 16:11:55,109.109 INFO    ] 200
[2026-06-05 16:11:55,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:11:55,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:11:55,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:11:55,198.198 INFO    ] No camera update needed
[2026-06-05 16:11:55,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:11:55,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:11:55,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:11:55,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:11:57,258.258 INFO    ] ================================================
[2026-06-05 16:11:57,272.272 INFO    ] Launching Daemon at Fri Jun  5 16:11:57 IST 2026
[2026-06-05 16:11:57,283.283 INFO    ] ================================================
[2026-06-05 16:11:57,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:11:57
[2026-06-05 16:11:58,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:11:58,691.691 INFO    ] Initializing speech engine...
[2026-06-05 16:11:58,697.697 INFO    ] 2026-06-05 16:11:58
[2026-06-05 16:11:58,990.990 INFO    ] 2026-06-05 16:11:58
[2026-06-05 16:11:59,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:11:59,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:11:59,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:11:59,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:11:59,367.367 INFO    ] time= 05/06/2026 16:11:59
[2026-06-05 16:11:59,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:11:59,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:11:59,494.494 INFO    ] No existing commands found in stream
[2026-06-05 16:12:04,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:12:04,510.510 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 16:12:07,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:12:07,490.490 INFO    ] Checking for system updates...
[2026-06-05 16:12:07,529.529 INFO    ] 200
[2026-06-05 16:12:07,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:07,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:12:07,592.592 INFO    ] No update needed
[2026-06-05 16:12:07,595.595 INFO    ] Checking for camera pi updates...
[2026-06-05 16:12:07,630.630 INFO    ] 200
[2026-06-05 16:12:07,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:07,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:12:07,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:12:07,704.704 INFO    ] No camera update needed
[2026-06-05 16:12:07,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:12:07,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:12:07,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:12:07,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:12:09,759.759 INFO    ] ================================================
[2026-06-05 16:12:09,774.774 INFO    ] Launching Daemon at Fri Jun  5 16:12:09 IST 2026
[2026-06-05 16:12:09,785.785 INFO    ] ================================================
[2026-06-05 16:12:10,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:12:10
[2026-06-05 16:12:10,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:12:11,257.257 INFO    ] Initializing speech engine...
[2026-06-05 16:12:11,268.268 INFO    ] 2026-06-05 16:12:11
[2026-06-05 16:12:11,530.530 INFO    ] 2026-06-05 16:12:11
[2026-06-05 16:12:11,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:12:11,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:12:11,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:12:11,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:12:12,021.021 INFO    ] time= 05/06/2026 16:12:11
[2026-06-05 16:12:12,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:12:12,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:12:12,202.202 INFO    ] No existing commands found in stream
[2026-06-05 16:12:17,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:12:17,228.228 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 16:12:18,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:12:18,466.466 INFO    ] Checking for system updates...
[2026-06-05 16:12:18,501.501 INFO    ] 200
[2026-06-05 16:12:18,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:18,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:12:18,561.561 INFO    ] No update needed
[2026-06-05 16:12:18,563.563 INFO    ] Checking for camera pi updates...
[2026-06-05 16:12:18,602.602 INFO    ] 200
[2026-06-05 16:12:18,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:18,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:12:18,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:12:18,691.691 INFO    ] No camera update needed
[2026-06-05 16:12:18,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:12:18,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:12:18,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:12:18,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:12:20,748.748 INFO    ] ================================================
[2026-06-05 16:12:20,762.762 INFO    ] Launching Daemon at Fri Jun  5 16:12:20 IST 2026
[2026-06-05 16:12:20,773.773 INFO    ] ================================================
[2026-06-05 16:12:21,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:12:21
[2026-06-05 16:12:22,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:12:22,384.384 INFO    ] Initializing speech engine...
[2026-06-05 16:12:22,398.398 INFO    ] 2026-06-05 16:12:22
[2026-06-05 16:12:22,680.680 INFO    ] 2026-06-05 16:12:22
[2026-06-05 16:12:22,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:12:24,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:12:24,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:12:24,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:12:24,661.661 INFO    ] time= 05/06/2026 16:12:24
[2026-06-05 16:12:24,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:12:24,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:12:24,759.759 INFO    ] No existing commands found in stream
[2026-06-05 16:12:29,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:12:29,774.774 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 16:12:31,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:12:31,046.046 INFO    ] Checking for system updates...
[2026-06-05 16:12:31,082.082 INFO    ] 200
[2026-06-05 16:12:31,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:31,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:12:31,147.147 INFO    ] No update needed
[2026-06-05 16:12:31,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 16:12:31,187.187 INFO    ] 200
[2026-06-05 16:12:31,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:31,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:12:31,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:12:31,280.280 INFO    ] No camera update needed
[2026-06-05 16:12:31,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:12:31,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:12:31,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:12:31,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:12:33,337.337 INFO    ] ================================================
[2026-06-05 16:12:33,356.356 INFO    ] Launching Daemon at Fri Jun  5 16:12:33 IST 2026
[2026-06-05 16:12:33,368.368 INFO    ] ================================================
[2026-06-05 16:12:34,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:12:34
[2026-06-05 16:12:34,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:12:35,041.041 INFO    ] Initializing speech engine...
[2026-06-05 16:12:35,056.056 INFO    ] 2026-06-05 16:12:35
[2026-06-05 16:12:35,365.365 INFO    ] 2026-06-05 16:12:35
[2026-06-05 16:12:35,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:12:35,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:12:35,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:12:35,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:12:35,874.874 INFO    ] time= 05/06/2026 16:12:35
[2026-06-05 16:12:35,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:12:35,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:12:36,064.064 INFO    ] No existing commands found in stream
[2026-06-05 16:12:41,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:12:41,099.099 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 16:12:41,842.842 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:12:41,845.845 INFO    ] Checking for system updates...
[2026-06-05 16:12:41,886.886 INFO    ] 200
[2026-06-05 16:12:41,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:41,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:12:41,953.953 INFO    ] No update needed
[2026-06-05 16:12:41,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 16:12:41,995.995 INFO    ] 200
[2026-06-05 16:12:41,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:42,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:12:42,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:12:42,086.086 INFO    ] No camera update needed
[2026-06-05 16:12:42,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:12:42,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:12:42,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:12:42,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:12:44,148.148 INFO    ] ================================================
[2026-06-05 16:12:44,162.162 INFO    ] Launching Daemon at Fri Jun  5 16:12:44 IST 2026
[2026-06-05 16:12:44,173.173 INFO    ] ================================================
[2026-06-05 16:12:44,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:12:44
[2026-06-05 16:12:45,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:12:45,592.592 INFO    ] Initializing speech engine...
[2026-06-05 16:12:45,600.600 INFO    ] 2026-06-05 16:12:45
[2026-06-05 16:12:45,887.887 INFO    ] 2026-06-05 16:12:45
[2026-06-05 16:12:45,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:12:46,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:12:46,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:12:46,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:12:46,366.366 INFO    ] time= 05/06/2026 16:12:46
[2026-06-05 16:12:46,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:12:46,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:12:46,599.599 INFO    ] No existing commands found in stream
[2026-06-05 16:12:51,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:12:51,627.627 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 16:12:57,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:12:57,219.219 INFO    ] Checking for system updates...
[2026-06-05 16:12:57,259.259 INFO    ] 200
[2026-06-05 16:12:57,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:57,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:12:57,319.319 INFO    ] No update needed
[2026-06-05 16:12:57,321.321 INFO    ] Checking for camera pi updates...
[2026-06-05 16:12:57,356.356 INFO    ] 200
[2026-06-05 16:12:57,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:12:57,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:12:57,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:12:57,550.550 INFO    ] No camera update needed
[2026-06-05 16:12:57,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:12:57,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:12:57,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:12:57,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:12:59,607.607 INFO    ] ================================================
[2026-06-05 16:12:59,622.622 INFO    ] Launching Daemon at Fri Jun  5 16:12:59 IST 2026
[2026-06-05 16:12:59,633.633 INFO    ] ================================================
[2026-06-05 16:13:00,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:13:00
[2026-06-05 16:13:00,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:13:01,243.243 INFO    ] Initializing speech engine...
[2026-06-05 16:13:01,252.252 INFO    ] 2026-06-05 16:13:01
[2026-06-05 16:13:01,516.516 INFO    ] 2026-06-05 16:13:01
[2026-06-05 16:13:01,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:13:01,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:13:01,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:13:01,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:13:01,962.962 INFO    ] time= 05/06/2026 16:13:01
[2026-06-05 16:13:01,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:13:02,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:13:02,082.082 INFO    ] No existing commands found in stream
[2026-06-05 16:13:07,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:13:07,101.101 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 16:13:10,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:13:10,086.086 INFO    ] Checking for system updates...
[2026-06-05 16:13:10,126.126 INFO    ] 200
[2026-06-05 16:13:10,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:13:10,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:13:10,192.192 INFO    ] No update needed
[2026-06-05 16:13:10,194.194 INFO    ] Checking for camera pi updates...
[2026-06-05 16:13:10,232.232 INFO    ] 200
[2026-06-05 16:13:10,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:13:10,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:13:10,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:13:10,329.329 INFO    ] No camera update needed
[2026-06-05 16:13:10,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:13:10,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:13:10,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:13:10,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:13:12,388.388 INFO    ] ================================================
[2026-06-05 16:13:12,404.404 INFO    ] Launching Daemon at Fri Jun  5 16:13:12 IST 2026
[2026-06-05 16:13:12,416.416 INFO    ] ================================================
[2026-06-05 16:13:12,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:13:12
[2026-06-05 16:13:13,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:13:13,828.828 INFO    ] Initializing speech engine...
[2026-06-05 16:13:13,850.850 INFO    ] 2026-06-05 16:13:13
[2026-06-05 16:13:14,102.102 INFO    ] 2026-06-05 16:13:14
[2026-06-05 16:13:14,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:13:14,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:13:14,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:13:14,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:13:14,604.604 INFO    ] time= 05/06/2026 16:13:14
[2026-06-05 16:13:14,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:13:14,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:13:14,809.809 INFO    ] No existing commands found in stream
[2026-06-05 16:13:19,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:13:19,828.828 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 16:13:24,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:13:24,843.843 INFO    ] Checking for system updates...
[2026-06-05 16:13:24,880.880 INFO    ] 200
[2026-06-05 16:13:24,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:13:24,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:13:24,939.939 INFO    ] No update needed
[2026-06-05 16:13:24,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 16:13:24,975.975 INFO    ] 200
[2026-06-05 16:13:24,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:13:25,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:13:25,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:13:25,066.066 INFO    ] No camera update needed
[2026-06-05 16:13:25,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:13:25,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:13:25,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:13:25,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:13:27,123.123 INFO    ] ================================================
[2026-06-05 16:13:27,138.138 INFO    ] Launching Daemon at Fri Jun  5 16:13:27 IST 2026
[2026-06-05 16:13:27,149.149 INFO    ] ================================================
[2026-06-05 16:13:27,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:13:27
[2026-06-05 16:13:28,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:13:28,565.565 INFO    ] Initializing speech engine...
[2026-06-05 16:13:28,577.577 INFO    ] 2026-06-05 16:13:28
[2026-06-05 16:13:28,823.823 INFO    ] 2026-06-05 16:13:28
[2026-06-05 16:13:28,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:13:29,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:13:29,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:13:29,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:13:29,322.322 INFO    ] time= 05/06/2026 16:13:29
[2026-06-05 16:13:29,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:13:29,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:13:29,515.515 INFO    ] No existing commands found in stream
[2026-06-05 16:13:34,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:13:34,543.543 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 16:13:36,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:13:36,698.698 INFO    ] Checking for system updates...
[2026-06-05 16:13:36,735.735 INFO    ] 200
[2026-06-05 16:13:36,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:13:36,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:13:36,796.796 INFO    ] No update needed
[2026-06-05 16:13:36,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 16:13:36,836.836 INFO    ] 200
[2026-06-05 16:13:36,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:13:36,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:13:36,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:13:36,928.928 INFO    ] No camera update needed
[2026-06-05 16:13:36,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:13:36,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:13:36,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:13:36,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:13:38,986.986 INFO    ] ================================================
[2026-06-05 16:13:39,001.001 INFO    ] Launching Daemon at Fri Jun  5 16:13:38 IST 2026
[2026-06-05 16:13:39,012.012 INFO    ] ================================================
[2026-06-05 16:13:39,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:13:39
[2026-06-05 16:13:40,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:13:40,482.482 INFO    ] Initializing speech engine...
[2026-06-05 16:13:40,492.492 INFO    ] 2026-06-05 16:13:40
[2026-06-05 16:13:40,740.740 INFO    ] 2026-06-05 16:13:40
[2026-06-05 16:13:40,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:13:40,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:13:40,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:13:41,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:13:41,114.114 INFO    ] time= 05/06/2026 16:13:41
[2026-06-05 16:13:41,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:13:41,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:13:41,284.284 INFO    ] No existing commands found in stream
[2026-06-05 16:13:46,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:13:46,317.317 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 16:13:50,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:13:50,627.627 INFO    ] Checking for system updates...
[2026-06-05 16:13:50,664.664 INFO    ] 200
[2026-06-05 16:13:50,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:13:50,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:13:50,732.732 INFO    ] No update needed
[2026-06-05 16:13:50,734.734 INFO    ] Checking for camera pi updates...
[2026-06-05 16:13:50,772.772 INFO    ] 200
[2026-06-05 16:13:50,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:13:50,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:13:50,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:13:50,865.865 INFO    ] No camera update needed
[2026-06-05 16:13:50,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:13:50,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:13:50,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:13:50,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:13:52,925.925 INFO    ] ================================================
[2026-06-05 16:13:52,941.941 INFO    ] Launching Daemon at Fri Jun  5 16:13:52 IST 2026
[2026-06-05 16:13:52,953.953 INFO    ] ================================================
[2026-06-05 16:13:53,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:13:53
[2026-06-05 16:13:54,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:13:54,611.611 INFO    ] Initializing speech engine...
[2026-06-05 16:13:54,617.617 INFO    ] 2026-06-05 16:13:54
[2026-06-05 16:13:54,904.904 INFO    ] 2026-06-05 16:13:54
[2026-06-05 16:13:55,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:13:55,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:13:55,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:13:55,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:13:55,434.434 INFO    ] time= 05/06/2026 16:13:55
[2026-06-05 16:13:55,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:13:55,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:13:55,590.590 INFO    ] No existing commands found in stream
[2026-06-05 16:14:00,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:14:00,610.610 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 16:14:03,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:14:03,536.536 INFO    ] Checking for system updates...
[2026-06-05 16:14:03,573.573 INFO    ] 200
[2026-06-05 16:14:03,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:03,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:14:03,631.631 INFO    ] No update needed
[2026-06-05 16:14:03,633.633 INFO    ] Checking for camera pi updates...
[2026-06-05 16:14:03,672.672 INFO    ] 200
[2026-06-05 16:14:03,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:03,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:14:03,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:14:03,764.764 INFO    ] No camera update needed
[2026-06-05 16:14:03,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:14:03,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:14:03,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:14:03,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:14:05,822.822 INFO    ] ================================================
[2026-06-05 16:14:05,838.838 INFO    ] Launching Daemon at Fri Jun  5 16:14:05 IST 2026
[2026-06-05 16:14:05,849.849 INFO    ] ================================================
[2026-06-05 16:14:06,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:14:06
[2026-06-05 16:14:07,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:14:07,333.333 INFO    ] Initializing speech engine...
[2026-06-05 16:14:07,342.342 INFO    ] 2026-06-05 16:14:07
[2026-06-05 16:14:07,617.617 INFO    ] 2026-06-05 16:14:07
[2026-06-05 16:14:07,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:14:07,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:14:07,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:14:07,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:14:07,998.998 INFO    ] time= 05/06/2026 16:14:07
[2026-06-05 16:14:08,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:14:08,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:14:08,084.084 INFO    ] No existing commands found in stream
[2026-06-05 16:14:13,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:14:13,100.100 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 16:14:14,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:14:14,834.834 INFO    ] Checking for system updates...
[2026-06-05 16:14:14,870.870 INFO    ] 200
[2026-06-05 16:14:14,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:14,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:14:14,936.936 INFO    ] No update needed
[2026-06-05 16:14:14,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 16:14:14,972.972 INFO    ] 200
[2026-06-05 16:14:14,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:15,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:14:15,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:14:15,060.060 INFO    ] No camera update needed
[2026-06-05 16:14:15,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:14:15,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:14:15,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:14:15,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:14:17,115.115 INFO    ] ================================================
[2026-06-05 16:14:17,131.131 INFO    ] Launching Daemon at Fri Jun  5 16:14:17 IST 2026
[2026-06-05 16:14:17,142.142 INFO    ] ================================================
[2026-06-05 16:14:17,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:14:17
[2026-06-05 16:14:18,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:14:18,592.592 INFO    ] Initializing speech engine...
[2026-06-05 16:14:18,615.615 INFO    ] 2026-06-05 16:14:18
[2026-06-05 16:14:18,875.875 INFO    ] 2026-06-05 16:14:18
[2026-06-05 16:14:18,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:14:19,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:14:19,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:14:19,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:14:19,438.438 INFO    ] time= 05/06/2026 16:14:19
[2026-06-05 16:14:19,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:14:19,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:14:19,589.589 INFO    ] No existing commands found in stream
[2026-06-05 16:14:24,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:14:24,613.613 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 16:14:25,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:14:25,697.697 INFO    ] Checking for system updates...
[2026-06-05 16:14:25,737.737 INFO    ] 200
[2026-06-05 16:14:25,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:25,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:14:25,803.803 INFO    ] No update needed
[2026-06-05 16:14:25,805.805 INFO    ] Checking for camera pi updates...
[2026-06-05 16:14:25,843.843 INFO    ] 200
[2026-06-05 16:14:25,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:25,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:14:25,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:14:25,935.935 INFO    ] No camera update needed
[2026-06-05 16:14:25,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:14:25,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:14:25,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:14:25,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:14:27,990.990 INFO    ] ================================================
[2026-06-05 16:14:28,006.006 INFO    ] Launching Daemon at Fri Jun  5 16:14:28 IST 2026
[2026-06-05 16:14:28,017.017 INFO    ] ================================================
[2026-06-05 16:14:28,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:14:28
[2026-06-05 16:14:29,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:14:29,428.428 INFO    ] Initializing speech engine...
[2026-06-05 16:14:29,442.442 INFO    ] 2026-06-05 16:14:29
[2026-06-05 16:14:29,709.709 INFO    ] 2026-06-05 16:14:29
[2026-06-05 16:14:29,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:14:29,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:14:29,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:14:30,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:14:30,087.087 INFO    ] time= 05/06/2026 16:14:30
[2026-06-05 16:14:30,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:14:30,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:14:30,283.283 INFO    ] No existing commands found in stream
[2026-06-05 16:14:35,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:14:35,300.300 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 16:14:39,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:14:39,642.642 INFO    ] Checking for system updates...
[2026-06-05 16:14:39,683.683 INFO    ] 200
[2026-06-05 16:14:39,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:39,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:14:39,740.740 INFO    ] No update needed
[2026-06-05 16:14:39,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 16:14:39,776.776 INFO    ] 200
[2026-06-05 16:14:39,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:39,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:14:39,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:14:39,870.870 INFO    ] No camera update needed
[2026-06-05 16:14:39,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:14:39,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:14:39,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:14:39,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:14:41,924.924 INFO    ] ================================================
[2026-06-05 16:14:41,939.939 INFO    ] Launching Daemon at Fri Jun  5 16:14:41 IST 2026
[2026-06-05 16:14:41,950.950 INFO    ] ================================================
[2026-06-05 16:14:42,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:14:42
[2026-06-05 16:14:43,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:14:43,407.407 INFO    ] Initializing speech engine...
[2026-06-05 16:14:43,416.416 INFO    ] 2026-06-05 16:14:43
[2026-06-05 16:14:43,675.675 INFO    ] 2026-06-05 16:14:43
[2026-06-05 16:14:43,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:14:43,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:14:43,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:14:44,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:14:44,219.219 INFO    ] time= 05/06/2026 16:14:44
[2026-06-05 16:14:44,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:14:44,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:14:44,373.373 INFO    ] No existing commands found in stream
[2026-06-05 16:14:49,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:14:49,395.395 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 16:14:54,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:14:54,785.785 INFO    ] Checking for system updates...
[2026-06-05 16:14:54,825.825 INFO    ] 200
[2026-06-05 16:14:54,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:54,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:14:54,898.898 INFO    ] No update needed
[2026-06-05 16:14:54,901.901 INFO    ] Checking for camera pi updates...
[2026-06-05 16:14:54,939.939 INFO    ] 200
[2026-06-05 16:14:54,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:14:54,988.988 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:14:55,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:14:55,036.036 INFO    ] No camera update needed
[2026-06-05 16:14:55,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:14:55,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:14:55,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:14:55,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:14:57,093.093 INFO    ] ================================================
[2026-06-05 16:14:57,108.108 INFO    ] Launching Daemon at Fri Jun  5 16:14:57 IST 2026
[2026-06-05 16:14:57,119.119 INFO    ] ================================================
[2026-06-05 16:14:57,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:14:57
[2026-06-05 16:14:58,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:14:58,561.561 INFO    ] Initializing speech engine...
[2026-06-05 16:14:58,570.570 INFO    ] 2026-06-05 16:14:58
[2026-06-05 16:14:58,822.822 INFO    ] 2026-06-05 16:14:58
[2026-06-05 16:14:58,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:14:59,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:14:59,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:14:59,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:14:59,185.185 INFO    ] time= 05/06/2026 16:14:59
[2026-06-05 16:14:59,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:14:59,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:14:59,375.375 INFO    ] No existing commands found in stream
[2026-06-05 16:15:04,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:15:04,398.398 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 16:15:05,374.374 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:15:05,377.377 INFO    ] Checking for system updates...
[2026-06-05 16:15:05,418.418 INFO    ] 200
[2026-06-05 16:15:05,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:05,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:15:05,477.477 INFO    ] No update needed
[2026-06-05 16:15:05,479.479 INFO    ] Checking for camera pi updates...
[2026-06-05 16:15:05,517.517 INFO    ] 200
[2026-06-05 16:15:05,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:05,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:15:05,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:15:05,611.611 INFO    ] No camera update needed
[2026-06-05 16:15:05,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:15:05,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:15:05,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:15:05,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:15:07,667.667 INFO    ] ================================================
[2026-06-05 16:15:07,683.683 INFO    ] Launching Daemon at Fri Jun  5 16:15:07 IST 2026
[2026-06-05 16:15:07,694.694 INFO    ] ================================================
[2026-06-05 16:15:08,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:15:08
[2026-06-05 16:15:08,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:15:09,133.133 INFO    ] Initializing speech engine...
[2026-06-05 16:15:09,142.142 INFO    ] 2026-06-05 16:15:09
[2026-06-05 16:15:09,404.404 INFO    ] 2026-06-05 16:15:09
[2026-06-05 16:15:09,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:15:09,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:15:09,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:15:09,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:15:09,948.948 INFO    ] time= 05/06/2026 16:15:09
[2026-06-05 16:15:09,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:15:09,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:15:10,107.107 INFO    ] No existing commands found in stream
[2026-06-05 16:15:15,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:15:15,128.128 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 16:15:16,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:15:16,223.223 INFO    ] Checking for system updates...
[2026-06-05 16:15:16,264.264 INFO    ] 200
[2026-06-05 16:15:16,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:16,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:15:16,330.330 INFO    ] No update needed
[2026-06-05 16:15:16,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 16:15:16,374.374 INFO    ] 200
[2026-06-05 16:15:16,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:16,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:15:16,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:15:16,477.477 INFO    ] No camera update needed
[2026-06-05 16:15:16,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:15:16,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:15:16,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:15:16,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:15:18,544.544 INFO    ] ================================================
[2026-06-05 16:15:18,559.559 INFO    ] Launching Daemon at Fri Jun  5 16:15:18 IST 2026
[2026-06-05 16:15:18,570.570 INFO    ] ================================================
[2026-06-05 16:15:19,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:15:19
[2026-06-05 16:15:19,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:15:19,976.976 INFO    ] Initializing speech engine...
[2026-06-05 16:15:19,991.991 INFO    ] 2026-06-05 16:15:19
[2026-06-05 16:15:20,253.253 INFO    ] 2026-06-05 16:15:20
[2026-06-05 16:15:20,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:15:20,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:15:20,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:15:20,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:15:20,623.623 INFO    ] time= 05/06/2026 16:15:20
[2026-06-05 16:15:20,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:15:20,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:15:20,792.792 INFO    ] No existing commands found in stream
[2026-06-05 16:15:25,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:15:25,830.830 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 16:15:28,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:15:28,585.585 INFO    ] Checking for system updates...
[2026-06-05 16:15:28,621.621 INFO    ] 200
[2026-06-05 16:15:28,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:28,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:15:28,687.687 INFO    ] No update needed
[2026-06-05 16:15:28,690.690 INFO    ] Checking for camera pi updates...
[2026-06-05 16:15:28,723.723 INFO    ] 200
[2026-06-05 16:15:28,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:28,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:15:28,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:15:28,817.817 INFO    ] No camera update needed
[2026-06-05 16:15:28,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:15:28,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:15:28,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:15:28,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:15:30,873.873 INFO    ] ================================================
[2026-06-05 16:15:30,889.889 INFO    ] Launching Daemon at Fri Jun  5 16:15:30 IST 2026
[2026-06-05 16:15:30,899.899 INFO    ] ================================================
[2026-06-05 16:15:31,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:15:31
[2026-06-05 16:15:32,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:15:32,511.511 INFO    ] Initializing speech engine...
[2026-06-05 16:15:32,519.519 INFO    ] 2026-06-05 16:15:32
[2026-06-05 16:15:32,787.787 INFO    ] 2026-06-05 16:15:32
[2026-06-05 16:15:32,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:15:33,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:15:33,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:15:33,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:15:33,179.179 INFO    ] time= 05/06/2026 16:15:33
[2026-06-05 16:15:33,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:15:33,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:15:33,359.359 INFO    ] No existing commands found in stream
[2026-06-05 16:15:38,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:15:38,372.372 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 16:15:38,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:15:38,887.887 INFO    ] Checking for system updates...
[2026-06-05 16:15:38,927.927 INFO    ] 200
[2026-06-05 16:15:38,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:38,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:15:38,992.992 INFO    ] No update needed
[2026-06-05 16:15:38,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 16:15:39,032.032 INFO    ] 200
[2026-06-05 16:15:39,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:39,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:15:39,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:15:39,124.124 INFO    ] No camera update needed
[2026-06-05 16:15:39,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:15:39,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:15:39,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:15:39,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:15:41,184.184 INFO    ] ================================================
[2026-06-05 16:15:41,199.199 INFO    ] Launching Daemon at Fri Jun  5 16:15:41 IST 2026
[2026-06-05 16:15:41,210.210 INFO    ] ================================================
[2026-06-05 16:15:41,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:15:41
[2026-06-05 16:15:42,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:15:42,684.684 INFO    ] Initializing speech engine...
[2026-06-05 16:15:42,694.694 INFO    ] 2026-06-05 16:15:42
[2026-06-05 16:15:42,957.957 INFO    ] 2026-06-05 16:15:42
[2026-06-05 16:15:42,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:15:43,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:15:43,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:15:43,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:15:43,451.451 INFO    ] time= 05/06/2026 16:15:43
[2026-06-05 16:15:43,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:15:43,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:15:43,667.667 INFO    ] No existing commands found in stream
[2026-06-05 16:15:48,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:15:48,686.686 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 16:15:49,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:15:49,236.236 INFO    ] Checking for system updates...
[2026-06-05 16:15:49,272.272 INFO    ] 200
[2026-06-05 16:15:49,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:49,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:15:49,331.331 INFO    ] No update needed
[2026-06-05 16:15:49,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 16:15:49,368.368 INFO    ] 200
[2026-06-05 16:15:49,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:15:49,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:15:49,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:15:49,467.467 INFO    ] No camera update needed
[2026-06-05 16:15:49,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:15:49,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:15:49,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:15:49,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:15:51,524.524 INFO    ] ================================================
[2026-06-05 16:15:51,540.540 INFO    ] Launching Daemon at Fri Jun  5 16:15:51 IST 2026
[2026-06-05 16:15:51,550.550 INFO    ] ================================================
[2026-06-05 16:15:52,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:15:52
[2026-06-05 16:15:52,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:15:53,162.162 INFO    ] Initializing speech engine...
[2026-06-05 16:15:53,170.170 INFO    ] 2026-06-05 16:15:53
[2026-06-05 16:15:53,488.488 INFO    ] 2026-06-05 16:15:53
[2026-06-05 16:15:53,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:15:54,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:15:54,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:15:54,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:15:54,880.880 INFO    ] time= 05/06/2026 16:15:54
[2026-06-05 16:15:54,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:15:54,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:15:54,959.959 INFO    ] No existing commands found in stream
[2026-06-05 16:15:59,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:15:59,973.973 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 16:16:01,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:16:01,270.270 INFO    ] Checking for system updates...
[2026-06-05 16:16:01,350.350 INFO    ] 200
[2026-06-05 16:16:01,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:01,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:16:01,451.451 INFO    ] No update needed
[2026-06-05 16:16:01,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 16:16:01,536.536 INFO    ] 200
[2026-06-05 16:16:01,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:01,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:16:01,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:16:01,680.680 INFO    ] No camera update needed
[2026-06-05 16:16:01,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:16:01,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:16:01,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:16:01,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:16:03,778.778 INFO    ] ================================================
[2026-06-05 16:16:03,793.793 INFO    ] Launching Daemon at Fri Jun  5 16:16:03 IST 2026
[2026-06-05 16:16:03,804.804 INFO    ] ================================================
[2026-06-05 16:16:04,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:16:04
[2026-06-05 16:16:04,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:16:05,236.236 INFO    ] Initializing speech engine...
[2026-06-05 16:16:05,245.245 INFO    ] 2026-06-05 16:16:05
[2026-06-05 16:16:05,497.497 INFO    ] 2026-06-05 16:16:05
[2026-06-05 16:16:05,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:16:05,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:16:05,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:16:05,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:16:05,873.873 INFO    ] time= 05/06/2026 16:16:05
[2026-06-05 16:16:05,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:16:05,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:16:06,064.064 INFO    ] No existing commands found in stream
[2026-06-05 16:16:11,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:16:11,090.090 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 16:16:15,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:16:15,303.303 INFO    ] Checking for system updates...
[2026-06-05 16:16:15,343.343 INFO    ] 200
[2026-06-05 16:16:15,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:15,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:16:15,401.401 INFO    ] No update needed
[2026-06-05 16:16:15,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 16:16:15,437.437 INFO    ] 200
[2026-06-05 16:16:15,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:15,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:16:15,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:16:15,525.525 INFO    ] No camera update needed
[2026-06-05 16:16:15,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:16:15,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:16:15,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:16:15,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:16:17,582.582 INFO    ] ================================================
[2026-06-05 16:16:17,597.597 INFO    ] Launching Daemon at Fri Jun  5 16:16:17 IST 2026
[2026-06-05 16:16:17,608.608 INFO    ] ================================================
[2026-06-05 16:16:18,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:16:18
[2026-06-05 16:16:18,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:16:19,172.172 INFO    ] Initializing speech engine...
[2026-06-05 16:16:19,180.180 INFO    ] 2026-06-05 16:16:19
[2026-06-05 16:16:19,448.448 INFO    ] 2026-06-05 16:16:19
[2026-06-05 16:16:19,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:16:19,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:16:19,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:16:19,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:16:19,993.993 INFO    ] time= 05/06/2026 16:16:19
[2026-06-05 16:16:20,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:16:20,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:16:20,145.145 INFO    ] No existing commands found in stream
[2026-06-05 16:16:25,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:16:25,162.162 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 16:16:25,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:16:25,823.823 INFO    ] Checking for system updates...
[2026-06-05 16:16:25,866.866 INFO    ] 200
[2026-06-05 16:16:25,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:25,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:16:25,931.931 INFO    ] No update needed
[2026-06-05 16:16:25,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 16:16:25,967.967 INFO    ] 200
[2026-06-05 16:16:25,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:26,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:16:26,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:16:26,053.053 INFO    ] No camera update needed
[2026-06-05 16:16:26,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:16:26,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:16:26,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:16:26,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:16:28,109.109 INFO    ] ================================================
[2026-06-05 16:16:28,125.125 INFO    ] Launching Daemon at Fri Jun  5 16:16:28 IST 2026
[2026-06-05 16:16:28,136.136 INFO    ] ================================================
[2026-06-05 16:16:28,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:16:28
[2026-06-05 16:16:29,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:16:29,706.706 INFO    ] Initializing speech engine...
[2026-06-05 16:16:29,712.712 INFO    ] 2026-06-05 16:16:29
[2026-06-05 16:16:29,960.960 INFO    ] 2026-06-05 16:16:29
[2026-06-05 16:16:30,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:16:30,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:16:30,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:16:30,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:16:30,437.437 INFO    ] time= 05/06/2026 16:16:30
[2026-06-05 16:16:30,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:16:30,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:16:30,670.670 INFO    ] No existing commands found in stream
[2026-06-05 16:16:35,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:16:35,688.688 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 16:16:38,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:16:38,486.486 INFO    ] Checking for system updates...
[2026-06-05 16:16:38,522.522 INFO    ] 200
[2026-06-05 16:16:38,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:38,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:16:38,580.580 INFO    ] No update needed
[2026-06-05 16:16:38,583.583 INFO    ] Checking for camera pi updates...
[2026-06-05 16:16:38,619.619 INFO    ] 200
[2026-06-05 16:16:38,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:38,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:16:38,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:16:38,722.722 INFO    ] No camera update needed
[2026-06-05 16:16:38,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:16:38,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:16:38,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:16:38,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:16:40,780.780 INFO    ] ================================================
[2026-06-05 16:16:40,796.796 INFO    ] Launching Daemon at Fri Jun  5 16:16:40 IST 2026
[2026-06-05 16:16:40,808.808 INFO    ] ================================================
[2026-06-05 16:16:41,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:16:41
[2026-06-05 16:16:41,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:16:42,268.268 INFO    ] Initializing speech engine...
[2026-06-05 16:16:42,277.277 INFO    ] 2026-06-05 16:16:42
[2026-06-05 16:16:42,535.535 INFO    ] 2026-06-05 16:16:42
[2026-06-05 16:16:42,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:16:42,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:16:42,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:16:42,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:16:42,999.999 INFO    ] time= 05/06/2026 16:16:42
[2026-06-05 16:16:43,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:16:43,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:16:43,219.219 INFO    ] No existing commands found in stream
[2026-06-05 16:16:48,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:16:48,248.248 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 16:16:51,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:16:51,771.771 INFO    ] Checking for system updates...
[2026-06-05 16:16:51,810.810 INFO    ] 200
[2026-06-05 16:16:51,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:51,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:16:51,868.868 INFO    ] No update needed
[2026-06-05 16:16:51,871.871 INFO    ] Checking for camera pi updates...
[2026-06-05 16:16:51,905.905 INFO    ] 200
[2026-06-05 16:16:51,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:16:51,953.953 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:16:51,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:16:51,997.997 INFO    ] No camera update needed
[2026-06-05 16:16:51,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:16:52,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:16:52,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:16:52,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:16:54,053.053 INFO    ] ================================================
[2026-06-05 16:16:54,069.069 INFO    ] Launching Daemon at Fri Jun  5 16:16:54 IST 2026
[2026-06-05 16:16:54,080.080 INFO    ] ================================================
[2026-06-05 16:16:54,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:16:54
[2026-06-05 16:16:55,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:16:55,484.484 INFO    ] Initializing speech engine...
[2026-06-05 16:16:55,492.492 INFO    ] 2026-06-05 16:16:55
[2026-06-05 16:16:55,787.787 INFO    ] 2026-06-05 16:16:55
[2026-06-05 16:16:55,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:16:56,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:16:56,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:16:56,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:16:56,179.179 INFO    ] time= 05/06/2026 16:16:56
[2026-06-05 16:16:56,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:16:56,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:16:56,286.286 INFO    ] No existing commands found in stream
[2026-06-05 16:17:01,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:17:01,301.301 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 16:17:05,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:17:05,281.281 INFO    ] Checking for system updates...
[2026-06-05 16:17:05,318.318 INFO    ] 200
[2026-06-05 16:17:05,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:05,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:17:05,382.382 INFO    ] No update needed
[2026-06-05 16:17:05,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 16:17:05,419.419 INFO    ] 200
[2026-06-05 16:17:05,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:05,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:17:05,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:17:05,606.606 INFO    ] No camera update needed
[2026-06-05 16:17:05,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:17:05,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:17:05,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:17:05,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:17:07,667.667 INFO    ] ================================================
[2026-06-05 16:17:07,684.684 INFO    ] Launching Daemon at Fri Jun  5 16:17:07 IST 2026
[2026-06-05 16:17:07,695.695 INFO    ] ================================================
[2026-06-05 16:17:08,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:17:08
[2026-06-05 16:17:09,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:17:09,334.334 INFO    ] Initializing speech engine...
[2026-06-05 16:17:09,345.345 INFO    ] 2026-06-05 16:17:09
[2026-06-05 16:17:09,619.619 INFO    ] 2026-06-05 16:17:09
[2026-06-05 16:17:09,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:17:09,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:17:09,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:17:10,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:17:10,089.089 INFO    ] time= 05/06/2026 16:17:10
[2026-06-05 16:17:10,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:17:10,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:17:10,316.316 INFO    ] No existing commands found in stream
[2026-06-05 16:17:15,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:17:15,344.344 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 16:17:18,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:17:18,538.538 INFO    ] Checking for system updates...
[2026-06-05 16:17:18,580.580 INFO    ] 200
[2026-06-05 16:17:18,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:18,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:17:18,647.647 INFO    ] No update needed
[2026-06-05 16:17:18,650.650 INFO    ] Checking for camera pi updates...
[2026-06-05 16:17:18,685.685 INFO    ] 200
[2026-06-05 16:17:18,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:18,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:17:18,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:17:18,782.782 INFO    ] No camera update needed
[2026-06-05 16:17:18,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:17:18,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:17:18,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:17:18,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:17:20,843.843 INFO    ] ================================================
[2026-06-05 16:17:20,859.859 INFO    ] Launching Daemon at Fri Jun  5 16:17:20 IST 2026
[2026-06-05 16:17:20,870.870 INFO    ] ================================================
[2026-06-05 16:17:21,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:17:21
[2026-06-05 16:17:22,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:17:22,325.325 INFO    ] Initializing speech engine...
[2026-06-05 16:17:22,334.334 INFO    ] 2026-06-05 16:17:22
[2026-06-05 16:17:22,582.582 INFO    ] 2026-06-05 16:17:22
[2026-06-05 16:17:22,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:17:24,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:17:24,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:17:24,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:17:24,790.790 INFO    ] time= 05/06/2026 16:17:24
[2026-06-05 16:17:24,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:17:24,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:17:24,916.916 INFO    ] No existing commands found in stream
[2026-06-05 16:17:29,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:17:29,934.934 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 16:17:32,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:17:32,514.514 INFO    ] Checking for system updates...
[2026-06-05 16:17:32,559.559 INFO    ] 200
[2026-06-05 16:17:32,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:32,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:17:32,630.630 INFO    ] No update needed
[2026-06-05 16:17:32,632.632 INFO    ] Checking for camera pi updates...
[2026-06-05 16:17:32,674.674 INFO    ] 200
[2026-06-05 16:17:32,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:32,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:17:32,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:17:32,750.750 INFO    ] No camera update needed
[2026-06-05 16:17:32,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:17:32,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:17:32,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:17:32,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:17:34,809.809 INFO    ] ================================================
[2026-06-05 16:17:34,825.825 INFO    ] Launching Daemon at Fri Jun  5 16:17:34 IST 2026
[2026-06-05 16:17:34,837.837 INFO    ] ================================================
[2026-06-05 16:17:35,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:17:35
[2026-06-05 16:17:36,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:17:36,489.489 INFO    ] Initializing speech engine...
[2026-06-05 16:17:36,503.503 INFO    ] 2026-06-05 16:17:36
[2026-06-05 16:17:36,783.783 INFO    ] 2026-06-05 16:17:36
[2026-06-05 16:17:36,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:17:37,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:17:37,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:17:37,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:17:37,273.273 INFO    ] time= 05/06/2026 16:17:37
[2026-06-05 16:17:37,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:17:37,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:17:37,473.473 INFO    ] No existing commands found in stream
[2026-06-05 16:17:42,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:17:42,492.492 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 16:17:44,995.995 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:17:44,998.998 INFO    ] Checking for system updates...
[2026-06-05 16:17:45,036.036 INFO    ] 200
[2026-06-05 16:17:45,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:45,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:17:45,103.103 INFO    ] No update needed
[2026-06-05 16:17:45,106.106 INFO    ] Checking for camera pi updates...
[2026-06-05 16:17:45,141.141 INFO    ] 200
[2026-06-05 16:17:45,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:45,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:17:45,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:17:45,237.237 INFO    ] No camera update needed
[2026-06-05 16:17:45,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:17:45,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:17:45,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:17:45,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:17:47,300.300 INFO    ] ================================================
[2026-06-05 16:17:47,317.317 INFO    ] Launching Daemon at Fri Jun  5 16:17:47 IST 2026
[2026-06-05 16:17:47,328.328 INFO    ] ================================================
[2026-06-05 16:17:47,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:17:47
[2026-06-05 16:17:48,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:17:48,751.751 INFO    ] Initializing speech engine...
[2026-06-05 16:17:48,773.773 INFO    ] 2026-06-05 16:17:48
[2026-06-05 16:17:49,029.029 INFO    ] 2026-06-05 16:17:49
[2026-06-05 16:17:49,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:17:49,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:17:49,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:17:49,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:17:49,843.843 INFO    ] time= 05/06/2026 16:17:49
[2026-06-05 16:17:49,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:17:49,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:17:50,051.051 INFO    ] No existing commands found in stream
[2026-06-05 16:17:55,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:17:55,063.063 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 16:17:56,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:17:56,592.592 INFO    ] Checking for system updates...
[2026-06-05 16:17:56,628.628 INFO    ] 200
[2026-06-05 16:17:56,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:56,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:17:56,685.685 INFO    ] No update needed
[2026-06-05 16:17:56,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 16:17:56,722.722 INFO    ] 200
[2026-06-05 16:17:56,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:17:56,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:17:56,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:17:56,821.821 INFO    ] No camera update needed
[2026-06-05 16:17:56,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:17:56,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:17:56,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:17:56,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:17:58,879.879 INFO    ] ================================================
[2026-06-05 16:17:58,899.899 INFO    ] Launching Daemon at Fri Jun  5 16:17:58 IST 2026
[2026-06-05 16:17:58,912.912 INFO    ] ================================================
[2026-06-05 16:17:59,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:17:59
[2026-06-05 16:18:00,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:18:00,495.495 INFO    ] Initializing speech engine...
[2026-06-05 16:18:00,505.505 INFO    ] 2026-06-05 16:18:00
[2026-06-05 16:18:00,757.757 INFO    ] 2026-06-05 16:18:00
[2026-06-05 16:18:00,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:18:00,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:18:00,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:18:01,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:18:01,135.135 INFO    ] time= 05/06/2026 16:18:01
[2026-06-05 16:18:01,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:18:01,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:18:01,297.297 INFO    ] No existing commands found in stream
[2026-06-05 16:18:06,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:18:06,330.330 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 16:18:09,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:18:09,975.975 INFO    ] Checking for system updates...
[2026-06-05 16:18:10,011.011 INFO    ] 200
[2026-06-05 16:18:10,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:10,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:18:10,071.071 INFO    ] No update needed
[2026-06-05 16:18:10,073.073 INFO    ] Checking for camera pi updates...
[2026-06-05 16:18:10,108.108 INFO    ] 200
[2026-06-05 16:18:10,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:10,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:18:10,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:18:10,210.210 INFO    ] No camera update needed
[2026-06-05 16:18:10,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:18:10,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:18:10,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:18:10,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:18:12,268.268 INFO    ] ================================================
[2026-06-05 16:18:12,284.284 INFO    ] Launching Daemon at Fri Jun  5 16:18:12 IST 2026
[2026-06-05 16:18:12,294.294 INFO    ] ================================================
[2026-06-05 16:18:12,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:18:12
[2026-06-05 16:18:13,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:18:13,705.705 INFO    ] Initializing speech engine...
[2026-06-05 16:18:13,728.728 INFO    ] 2026-06-05 16:18:13
[2026-06-05 16:18:13,979.979 INFO    ] 2026-06-05 16:18:13
[2026-06-05 16:18:14,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:18:14,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:18:14,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:18:14,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:18:14,453.453 INFO    ] time= 05/06/2026 16:18:14
[2026-06-05 16:18:14,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:18:14,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:18:14,673.673 INFO    ] No existing commands found in stream
[2026-06-05 16:18:19,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:18:19,700.700 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 16:18:22,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:18:22,178.178 INFO    ] Checking for system updates...
[2026-06-05 16:18:22,222.222 INFO    ] 200
[2026-06-05 16:18:22,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:22,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:18:22,284.284 INFO    ] No update needed
[2026-06-05 16:18:22,287.287 INFO    ] Checking for camera pi updates...
[2026-06-05 16:18:22,324.324 INFO    ] 200
[2026-06-05 16:18:22,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:22,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:18:22,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:18:22,419.419 INFO    ] No camera update needed
[2026-06-05 16:18:22,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:18:22,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:18:22,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:18:22,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:18:24,481.481 INFO    ] ================================================
[2026-06-05 16:18:24,497.497 INFO    ] Launching Daemon at Fri Jun  5 16:18:24 IST 2026
[2026-06-05 16:18:24,507.507 INFO    ] ================================================
[2026-06-05 16:18:25,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:18:25
[2026-06-05 16:18:25,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:18:26,148.148 INFO    ] Initializing speech engine...
[2026-06-05 16:18:26,158.158 INFO    ] 2026-06-05 16:18:26
[2026-06-05 16:18:26,457.457 INFO    ] 2026-06-05 16:18:26
[2026-06-05 16:18:26,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:18:26,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:18:26,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:18:26,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:18:27,004.004 INFO    ] time= 05/06/2026 16:18:26
[2026-06-05 16:18:27,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:18:27,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:18:27,163.163 INFO    ] No existing commands found in stream
[2026-06-05 16:18:32,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:18:32,181.181 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 16:18:32,754.754 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:18:32,757.757 INFO    ] Checking for system updates...
[2026-06-05 16:18:32,799.799 INFO    ] 200
[2026-06-05 16:18:32,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:32,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:18:32,863.863 INFO    ] No update needed
[2026-06-05 16:18:32,866.866 INFO    ] Checking for camera pi updates...
[2026-06-05 16:18:32,903.903 INFO    ] 200
[2026-06-05 16:18:32,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:32,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:18:32,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:18:32,981.981 INFO    ] No camera update needed
[2026-06-05 16:18:32,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:18:32,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:18:32,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:18:32,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:18:35,041.041 INFO    ] ================================================
[2026-06-05 16:18:35,056.056 INFO    ] Launching Daemon at Fri Jun  5 16:18:35 IST 2026
[2026-06-05 16:18:35,067.067 INFO    ] ================================================
[2026-06-05 16:18:35,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:18:35
[2026-06-05 16:18:36,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:18:36,703.703 INFO    ] Initializing speech engine...
[2026-06-05 16:18:36,712.712 INFO    ] 2026-06-05 16:18:36
[2026-06-05 16:18:36,999.999 INFO    ] 2026-06-05 16:18:36
[2026-06-05 16:18:37,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:18:37,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:18:37,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:18:37,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:18:37,487.487 INFO    ] time= 05/06/2026 16:18:37
[2026-06-05 16:18:37,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:18:37,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:18:37,708.708 INFO    ] No existing commands found in stream
[2026-06-05 16:18:42,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:18:42,731.731 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 16:18:43,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:18:43,456.456 INFO    ] Checking for system updates...
[2026-06-05 16:18:43,495.495 INFO    ] 200
[2026-06-05 16:18:43,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:43,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:18:43,553.553 INFO    ] No update needed
[2026-06-05 16:18:43,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 16:18:43,594.594 INFO    ] 200
[2026-06-05 16:18:43,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:43,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:18:43,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:18:43,678.678 INFO    ] No camera update needed
[2026-06-05 16:18:43,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:18:43,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:18:43,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:18:43,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:18:45,732.732 INFO    ] ================================================
[2026-06-05 16:18:45,747.747 INFO    ] Launching Daemon at Fri Jun  5 16:18:45 IST 2026
[2026-06-05 16:18:45,757.757 INFO    ] ================================================
[2026-06-05 16:18:46,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:18:46
[2026-06-05 16:18:46,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:18:47,183.183 INFO    ] Initializing speech engine...
[2026-06-05 16:18:47,192.192 INFO    ] 2026-06-05 16:18:47
[2026-06-05 16:18:47,443.443 INFO    ] 2026-06-05 16:18:47
[2026-06-05 16:18:47,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:18:47,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:18:47,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:18:47,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:18:47,904.904 INFO    ] time= 05/06/2026 16:18:47
[2026-06-05 16:18:47,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:18:48,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:18:48,086.086 INFO    ] No existing commands found in stream
[2026-06-05 16:18:53,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:18:53,100.100 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 16:18:54,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:18:54,786.786 INFO    ] Checking for system updates...
[2026-06-05 16:18:54,822.822 INFO    ] 200
[2026-06-05 16:18:54,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:54,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:18:54,882.882 INFO    ] No update needed
[2026-06-05 16:18:54,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 16:18:54,920.920 INFO    ] 200
[2026-06-05 16:18:54,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:18:54,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:18:55,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:18:55,006.006 INFO    ] No camera update needed
[2026-06-05 16:18:55,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:18:55,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:18:55,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:18:55,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:18:57,069.069 INFO    ] ================================================
[2026-06-05 16:18:57,085.085 INFO    ] Launching Daemon at Fri Jun  5 16:18:57 IST 2026
[2026-06-05 16:18:57,096.096 INFO    ] ================================================
[2026-06-05 16:18:57,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:18:57
[2026-06-05 16:18:58,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:18:58,758.758 INFO    ] Initializing speech engine...
[2026-06-05 16:18:58,780.780 INFO    ] 2026-06-05 16:18:58
[2026-06-05 16:18:59,038.038 INFO    ] 2026-06-05 16:18:59
[2026-06-05 16:18:59,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:18:59,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:18:59,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:18:59,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:18:59,465.465 INFO    ] time= 05/06/2026 16:18:59
[2026-06-05 16:18:59,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:18:59,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:18:59,553.553 INFO    ] No existing commands found in stream
[2026-06-05 16:19:04,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:19:04,567.567 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 16:19:07,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:19:07,314.314 INFO    ] Checking for system updates...
[2026-06-05 16:19:07,351.351 INFO    ] 200
[2026-06-05 16:19:07,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:07,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:19:07,413.413 INFO    ] No update needed
[2026-06-05 16:19:07,415.415 INFO    ] Checking for camera pi updates...
[2026-06-05 16:19:07,449.449 INFO    ] 200
[2026-06-05 16:19:07,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:07,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:19:07,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:19:07,635.635 INFO    ] No camera update needed
[2026-06-05 16:19:07,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:19:07,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:19:07,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:19:07,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:19:09,692.692 INFO    ] ================================================
[2026-06-05 16:19:09,707.707 INFO    ] Launching Daemon at Fri Jun  5 16:19:09 IST 2026
[2026-06-05 16:19:09,718.718 INFO    ] ================================================
[2026-06-05 16:19:10,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:19:10
[2026-06-05 16:19:10,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:19:11,202.202 INFO    ] Initializing speech engine...
[2026-06-05 16:19:11,212.212 INFO    ] 2026-06-05 16:19:11
[2026-06-05 16:19:11,482.482 INFO    ] 2026-06-05 16:19:11
[2026-06-05 16:19:11,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:19:11,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:19:11,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:19:11,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:19:11,899.899 INFO    ] time= 05/06/2026 16:19:11
[2026-06-05 16:19:11,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:19:11,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:19:12,059.059 INFO    ] No existing commands found in stream
[2026-06-05 16:19:17,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:19:17,087.087 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 16:19:18,295.295 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:19:18,298.298 INFO    ] Checking for system updates...
[2026-06-05 16:19:18,338.338 INFO    ] 200
[2026-06-05 16:19:18,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:18,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:19:18,402.402 INFO    ] No update needed
[2026-06-05 16:19:18,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 16:19:18,439.439 INFO    ] 200
[2026-06-05 16:19:18,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:18,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:19:18,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:19:18,542.542 INFO    ] No camera update needed
[2026-06-05 16:19:18,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:19:18,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:19:18,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:19:18,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:19:20,598.598 INFO    ] ================================================
[2026-06-05 16:19:20,613.613 INFO    ] Launching Daemon at Fri Jun  5 16:19:20 IST 2026
[2026-06-05 16:19:20,624.624 INFO    ] ================================================
[2026-06-05 16:19:21,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:19:21
[2026-06-05 16:19:21,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:19:22,085.085 INFO    ] Initializing speech engine...
[2026-06-05 16:19:22,099.099 INFO    ] 2026-06-05 16:19:22
[2026-06-05 16:19:22,364.364 INFO    ] 2026-06-05 16:19:22
[2026-06-05 16:19:22,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:19:24,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:19:24,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:19:24,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:19:24,529.529 INFO    ] time= 05/06/2026 16:19:24
[2026-06-05 16:19:24,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:19:24,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:19:24,631.631 INFO    ] No existing commands found in stream
[2026-06-05 16:19:29,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:19:29,653.653 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 16:19:31,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:19:31,792.792 INFO    ] Checking for system updates...
[2026-06-05 16:19:31,833.833 INFO    ] 200
[2026-06-05 16:19:31,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:31,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:19:31,899.899 INFO    ] No update needed
[2026-06-05 16:19:31,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 16:19:31,939.939 INFO    ] 200
[2026-06-05 16:19:31,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:31,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:19:32,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:19:32,023.023 INFO    ] No camera update needed
[2026-06-05 16:19:32,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:19:32,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:19:32,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:19:32,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:19:34,087.087 INFO    ] ================================================
[2026-06-05 16:19:34,102.102 INFO    ] Launching Daemon at Fri Jun  5 16:19:34 IST 2026
[2026-06-05 16:19:34,112.112 INFO    ] ================================================
[2026-06-05 16:19:34,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:19:34
[2026-06-05 16:19:35,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:19:35,716.716 INFO    ] Initializing speech engine...
[2026-06-05 16:19:35,728.728 INFO    ] 2026-06-05 16:19:35
[2026-06-05 16:19:36,041.041 INFO    ] 2026-06-05 16:19:36
[2026-06-05 16:19:36,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:19:36,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:19:36,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:19:36,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:19:36,465.465 INFO    ] time= 05/06/2026 16:19:36
[2026-06-05 16:19:36,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:19:36,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:19:36,699.699 INFO    ] No existing commands found in stream
[2026-06-05 16:19:41,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:19:41,733.733 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 16:19:44,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:19:44,741.741 INFO    ] Checking for system updates...
[2026-06-05 16:19:44,778.778 INFO    ] 200
[2026-06-05 16:19:44,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:44,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:19:44,837.837 INFO    ] No update needed
[2026-06-05 16:19:44,840.840 INFO    ] Checking for camera pi updates...
[2026-06-05 16:19:44,875.875 INFO    ] 200
[2026-06-05 16:19:44,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:44,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:19:44,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:19:44,980.980 INFO    ] No camera update needed
[2026-06-05 16:19:44,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:19:44,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:19:44,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:19:44,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:19:47,038.038 INFO    ] ================================================
[2026-06-05 16:19:47,053.053 INFO    ] Launching Daemon at Fri Jun  5 16:19:47 IST 2026
[2026-06-05 16:19:47,064.064 INFO    ] ================================================
[2026-06-05 16:19:47,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:19:47
[2026-06-05 16:19:48,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:19:48,515.515 INFO    ] Initializing speech engine...
[2026-06-05 16:19:48,523.523 INFO    ] 2026-06-05 16:19:48
[2026-06-05 16:19:48,797.797 INFO    ] 2026-06-05 16:19:48
[2026-06-05 16:19:48,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:19:49,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:19:49,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:19:49,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:19:49,245.245 INFO    ] time= 05/06/2026 16:19:49
[2026-06-05 16:19:49,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:19:49,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:19:49,465.465 INFO    ] No existing commands found in stream
[2026-06-05 16:19:54,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:19:54,496.496 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 16:19:56,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:19:56,925.925 INFO    ] Checking for system updates...
[2026-06-05 16:19:56,963.963 INFO    ] 200
[2026-06-05 16:19:56,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:57,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:19:57,029.029 INFO    ] No update needed
[2026-06-05 16:19:57,032.032 INFO    ] Checking for camera pi updates...
[2026-06-05 16:19:57,070.070 INFO    ] 200
[2026-06-05 16:19:57,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:19:57,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:19:57,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:19:57,165.165 INFO    ] No camera update needed
[2026-06-05 16:19:57,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:19:57,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:19:57,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:19:57,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:19:59,225.225 INFO    ] ================================================
[2026-06-05 16:19:59,240.240 INFO    ] Launching Daemon at Fri Jun  5 16:19:59 IST 2026
[2026-06-05 16:19:59,251.251 INFO    ] ================================================
[2026-06-05 16:19:59,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:19:59
[2026-06-05 16:20:00,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:20:00,728.728 INFO    ] Initializing speech engine...
[2026-06-05 16:20:00,738.738 INFO    ] 2026-06-05 16:20:00
[2026-06-05 16:20:01,008.008 INFO    ] 2026-06-05 16:20:00
[2026-06-05 16:20:01,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:20:01,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:20:01,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:20:01,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:20:01,424.424 INFO    ] time= 05/06/2026 16:20:01
[2026-06-05 16:20:01,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:20:01,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:20:01,611.611 INFO    ] No existing commands found in stream
[2026-06-05 16:20:06,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:20:06,625.625 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 16:20:08,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:20:08,669.669 INFO    ] Checking for system updates...
[2026-06-05 16:20:08,707.707 INFO    ] 200
[2026-06-05 16:20:08,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:08,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:20:08,767.767 INFO    ] No update needed
[2026-06-05 16:20:08,769.769 INFO    ] Checking for camera pi updates...
[2026-06-05 16:20:08,804.804 INFO    ] 200
[2026-06-05 16:20:08,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:08,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:20:08,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:20:08,899.899 INFO    ] No camera update needed
[2026-06-05 16:20:08,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:20:08,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:20:08,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:20:08,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:20:10,955.955 INFO    ] ================================================
[2026-06-05 16:20:10,970.970 INFO    ] Launching Daemon at Fri Jun  5 16:20:10 IST 2026
[2026-06-05 16:20:10,980.980 INFO    ] ================================================
[2026-06-05 16:20:11,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:20:11
[2026-06-05 16:20:12,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:20:12,436.436 INFO    ] Initializing speech engine...
[2026-06-05 16:20:12,444.444 INFO    ] 2026-06-05 16:20:12
[2026-06-05 16:20:12,700.700 INFO    ] 2026-06-05 16:20:12
[2026-06-05 16:20:12,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:20:12,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:20:12,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:20:13,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:20:13,220.220 INFO    ] time= 05/06/2026 16:20:13
[2026-06-05 16:20:13,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:20:13,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:20:13,405.405 INFO    ] No existing commands found in stream
[2026-06-05 16:20:18,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:20:18,434.434 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 16:20:21,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:20:21,948.948 INFO    ] Checking for system updates...
[2026-06-05 16:20:21,986.986 INFO    ] 200
[2026-06-05 16:20:21,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:22,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:20:22,053.053 INFO    ] No update needed
[2026-06-05 16:20:22,060.060 INFO    ] Checking for camera pi updates...
[2026-06-05 16:20:22,098.098 INFO    ] 200
[2026-06-05 16:20:22,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:22,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:20:22,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:20:22,192.192 INFO    ] No camera update needed
[2026-06-05 16:20:22,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:20:22,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:20:22,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:20:22,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:20:24,256.256 INFO    ] ================================================
[2026-06-05 16:20:24,270.270 INFO    ] Launching Daemon at Fri Jun  5 16:20:24 IST 2026
[2026-06-05 16:20:24,281.281 INFO    ] ================================================
[2026-06-05 16:20:24,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:20:24
[2026-06-05 16:20:25,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:20:25,743.743 INFO    ] Initializing speech engine...
[2026-06-05 16:20:25,749.749 INFO    ] 2026-06-05 16:20:25
[2026-06-05 16:20:26,012.012 INFO    ] 2026-06-05 16:20:26
[2026-06-05 16:20:26,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:20:26,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:20:26,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:20:26,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:20:26,368.368 INFO    ] time= 05/06/2026 16:20:26
[2026-06-05 16:20:26,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:20:26,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:20:26,533.533 INFO    ] No existing commands found in stream
[2026-06-05 16:20:31,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:20:31,561.561 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 16:20:34,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:20:34,883.883 INFO    ] Checking for system updates...
[2026-06-05 16:20:34,919.919 INFO    ] 200
[2026-06-05 16:20:34,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:34,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:20:34,978.978 INFO    ] No update needed
[2026-06-05 16:20:34,981.981 INFO    ] Checking for camera pi updates...
[2026-06-05 16:20:35,014.014 INFO    ] 200
[2026-06-05 16:20:35,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:35,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:20:35,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:20:35,107.107 INFO    ] No camera update needed
[2026-06-05 16:20:35,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:20:35,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:20:35,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:20:35,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:20:37,164.164 INFO    ] ================================================
[2026-06-05 16:20:37,179.179 INFO    ] Launching Daemon at Fri Jun  5 16:20:37 IST 2026
[2026-06-05 16:20:37,190.190 INFO    ] ================================================
[2026-06-05 16:20:37,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:20:37
[2026-06-05 16:20:38,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:20:38,795.795 INFO    ] Initializing speech engine...
[2026-06-05 16:20:38,809.809 INFO    ] 2026-06-05 16:20:38
[2026-06-05 16:20:39,086.086 INFO    ] 2026-06-05 16:20:39
[2026-06-05 16:20:39,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:20:39,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:20:39,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:20:39,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:20:39,541.541 INFO    ] time= 05/06/2026 16:20:39
[2026-06-05 16:20:39,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:20:39,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:20:39,763.763 INFO    ] No existing commands found in stream
[2026-06-05 16:20:44,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:20:44,793.793 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 16:20:46,052.052 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:20:46,055.055 INFO    ] Checking for system updates...
[2026-06-05 16:20:46,092.092 INFO    ] 200
[2026-06-05 16:20:46,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:46,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:20:46,159.159 INFO    ] No update needed
[2026-06-05 16:20:46,162.162 INFO    ] Checking for camera pi updates...
[2026-06-05 16:20:46,196.196 INFO    ] 200
[2026-06-05 16:20:46,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:46,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:20:46,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:20:46,284.284 INFO    ] No camera update needed
[2026-06-05 16:20:46,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:20:46,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:20:46,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:20:46,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:20:48,343.343 INFO    ] ================================================
[2026-06-05 16:20:48,359.359 INFO    ] Launching Daemon at Fri Jun  5 16:20:48 IST 2026
[2026-06-05 16:20:48,370.370 INFO    ] ================================================
[2026-06-05 16:20:48,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:20:48
[2026-06-05 16:20:49,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:20:49,838.838 INFO    ] Initializing speech engine...
[2026-06-05 16:20:49,846.846 INFO    ] 2026-06-05 16:20:49
[2026-06-05 16:20:50,114.114 INFO    ] 2026-06-05 16:20:50
[2026-06-05 16:20:50,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:20:50,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:20:50,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:20:50,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:20:50,529.529 INFO    ] time= 05/06/2026 16:20:50
[2026-06-05 16:20:50,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:20:50,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:20:50,617.617 INFO    ] No existing commands found in stream
[2026-06-05 16:20:55,087.087 INFO    ] Received new command: ID=1780656654855-0
[2026-06-05 16:20:55,090.090 INFO    ] process_and_cleanup_command: msg_id=1780656654855-0
[2026-06-05 16:20:55,092.092 INFO    ] is_command_expired: timestamp=2026-06-05T10:50:54.707Z, expiry=30s
[2026-06-05 16:20:55,175.175 INFO    ] Command removed from stream: 1780656654855-0. returning for processing...
[2026-06-05 16:20:55,177.177 INFO    ] ***** get_valid_command
[2026-06-05 16:20:55,180.180 INFO    ] {'timeout': '10', 'timestamp': '2026-06-05T10:50:54.707Z', 'data': '{"request_id":"start-order-1780656654706-n5m8j7crz","orderId":"TM07202501260605162015665","is_vending":false}', 'command': 'start-order', 'source': 'webapp'}
[2026-06-05 16:20:55,182.182 INFO    ] ***** Parsed command data: {'orderId': 'TM07202501260605162015665', 'is_vending': False, 'request_id': 'start-order-1780656654706-n5m8j7crz'}
[2026-06-05 16:20:55,185.185 INFO    ] Handling start order...
[2026-06-05 16:20:55,187.187 INFO    ] handle_start_order_command
[2026-06-05 16:20:55,193.193 INFO    ] _send_start_order_success: request_id=start-order-1780656654706-n5m8j7crz, order_id=TM07202501260605162015665
[2026-06-05 16:20:55,196.196 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-05 16:20:55,251.251 INFO    ] [_send_start_order_success] Message added to stream with ID: 1780656655216-0
[2026-06-05 16:20:55,254.254 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-05 16:20:55,256.256 INFO    ] Checking for system updates...
[2026-06-05 16:20:55,298.298 INFO    ] 200
[2026-06-05 16:20:55,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:55,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:20:55,362.362 INFO    ] No update needed
[2026-06-05 16:20:55,364.364 INFO    ] Checking for camera pi updates...
[2026-06-05 16:20:55,402.402 INFO    ] 200
[2026-06-05 16:20:55,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:20:55,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:20:55,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:20:55,492.492 INFO    ] No camera update needed
[2026-06-05 16:20:55,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:20:55,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:20:55,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:20:55,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:20:57,549.549 INFO    ] ================================================
[2026-06-05 16:20:57,565.565 INFO    ] Launching Daemon at Fri Jun  5 16:20:57 IST 2026
[2026-06-05 16:20:57,576.576 INFO    ] ================================================
[2026-06-05 16:20:58,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:20:58
[2026-06-05 16:20:58,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:20:58,989.989 INFO    ] Initializing speech engine...
[2026-06-05 16:20:58,996.996 INFO    ] 2026-06-05 16:20:58
[2026-06-05 16:20:59,287.287 INFO    ] 2026-06-05 16:20:59
[2026-06-05 16:20:59,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:20:59,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:20:59,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:20:59,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:20:59,675.675 INFO    ] time= 05/06/2026 16:20:59
[2026-06-05 16:20:59,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:20:59,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:20:59,791.791 INFO    ] Found 2 existing command(s) in stream
[2026-06-05 16:20:59,823.823 INFO    ] Checking historical command: ID=1780656655216-0
[2026-06-05 16:20:59,872.872 INFO    ] process_and_cleanup_command: msg_id=1780656655216-0
[2026-06-05 16:20:59,921.921 INFO    ] is_command_expired: timestamp=2026-06-05T10:50:55.194465Z, expiry=30s
[2026-06-05 16:21:00,099.099 INFO    ] Command removed from stream: 1780656655216-0. returning for processing...
[2026-06-05 16:21:00,142.142 INFO    ] ***** get_valid_command
[2026-06-05 16:21:00,169.169 INFO    ] {'metadata_order_id': 'TM07202501260605162015665', 'message': 'start-order success', 'status': 'success', 'imei': 'TM07202501', 'timestamp': '2026-06-05T10:50:55.194465Z', 'metadata_request_id': 'start-order-1780656654706-n5m8j7crz', 'message_type': 'command_response'}
[2026-06-05 16:21:00,218.218 INFO    ] Checking historical command: ID=1780656656237-0
[2026-06-05 16:21:00,267.267 INFO    ] process_and_cleanup_command: msg_id=1780656656237-0
[2026-06-05 16:21:00,279.279 INFO    ] is_command_expired: timestamp=2026-06-05T10:50:56.035Z, expiry=30s
[2026-06-05 16:21:00,419.419 INFO    ] Command removed from stream: 1780656656237-0. returning for processing...
[2026-06-05 16:21:00,448.448 INFO    ] ***** get_valid_command
[2026-06-05 16:21:00,496.496 INFO    ] {'command': 'process-order', 'data': '{"request_id":"process-order-1780656656035-q5g0bd6j5","orderId":"TM07202501260605162015665","is_vending":false,"accessCode":"56293571"}', 'timestamp': '2026-06-05T10:50:56.035Z', 'timeout': '60', 'source': 'webapp'}
[2026-06-05 16:21:00,507.507 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM07202501260605162015665', 'accessCode': '56293571', 'request_id': 'process-order-1780656656035-q5g0bd6j5'}
[2026-06-05 16:21:00,511.511 INFO    ] Handling process order...
[2026-06-05 16:21:00,514.514 INFO    ] Processing process-order command...
[2026-06-05 16:21:00,518.518 INFO    ] 🔍 Lock file Order ID: TM07202501260605162015665, TS: 2026-06-05 16:20:55
[2026-06-05 16:21:00,562.562 INFO    ] ✅ Order lock valid for TM07202501260605162015665
[2026-06-05 16:21:00,623.623 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-05 16:21:00,662.662 INFO    ] processing access code 56293571 for order TM07202501260605162015665
[2026-06-05 16:21:00,682.682 INFO    ] 🔍 Lock file Order ID: TM07202501260605162015665, TS: 2026-06-05 16:20:55
[2026-06-05 16:21:00,690.690 INFO    ] ✅ Order lock valid for TM07202501260605162015665
[2026-06-05 16:21:00,693.693 INFO    ] 2026-06-05 16:21:00
[2026-06-05 16:21:00,764.764 INFO    ] 200
[2026-06-05 16:21:00,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:21:00,816.816 INFO    ] 56293571
[2026-06-05 16:21:00,828.828 INFO    ] 2026-06-05 16:21:00
[2026-06-05 16:21:00,835.835 INFO    ] session id :390602441
[2026-06-05 16:21:00,839.839 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=56293571&imei=TM07202501&session_id=390602441
[2026-06-05 16:21:01,853.853 INFO    ] 200
[2026-06-05 16:21:01,859.859 INFO    ] {"rstatus": true, "msg": "Order Data", "data": {"mobile": "8004765416", "bill_amount": "40", "access_code": "56293571", "order_id": "TM07202501260605162015665", "proposed_sku_json": [{"qty": 1, "name": "Pepsi ZeroSugar  300ml", "offer_id": "", "skuid": "186059", "sku_total": 40, "door_id": "2", "tray_id": "46", "image_url": "https://images.tinymart.in/product/186059-5330.png", "mrp": "40", "offer_desc": "", "unit_price": 40}], "invoice_bill": "40"}, "status": true}
[2026-06-05 16:21:01,866.866 INFO    ] 40
[2026-06-05 16:21:01,888.888 INFO    ] TM07202501260605162015665
[2026-06-05 16:21:01,899.899 INFO    ] 8004765416
[2026-06-05 16:21:01,908.908 INFO    ] 2026-06-05 16:21:01
[2026-06-05 16:21:01,924.924 INFO    ] Door Opening for user mobile ending with  five four one six 
[2026-06-05 16:21:01,930.930 INFO    ] Door Opening for user mobile ending with  five four one six 
[2026-06-05 16:21:01,941.941 INFO    ] 4cc510f65c4886e4ed089be76e6aff9b
[2026-06-05 16:21:01,946.946 INFO    ] 2026-06-05 16:21:01
[2026-06-05 16:21:01,950.950 INFO    ] playing audio file
[2026-06-05 16:21:02,038.038 INFO    ] 2026-06-05 16:21:02
[2026-06-05 16:21:02,046.046 INFO    ] 2026-06-05 16:21:02
[2026-06-05 16:21:02,067.067 INFO    ] publish_status: order_id=TM07202501260605162015665
[2026-06-05 16:21:02,071.071 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162015665
[2026-06-05 16:21:02,148.148 INFO    ] [publish_status] Message added to stream with ID: 1780656662107-0
[2026-06-05 16:21:02,151.151 INFO    ] Published to order:TM07202501260605162015665: {'order_id': 'TM07202501260605162015665', 'server_status': 'order-started', 'server_response': '{"rstatus": true, "data": {"order_id": "TM07202501260605162015665", "mobile": "8004765416", "proposed_sku_json": [{"sku_total": 40, "offer_desc": "", "image_url": "https://images.tinymart.in/product/186059-5330.png", "unit_price": 40, "skuid": "186059", "door_id": "2", "tray_id": "46", "mrp": "40", "offer_id": "", "qty": 1, "name": "Pepsi ZeroSugar  300ml"}], "bill_amount": "40", "invoice_bill": "40", "access_code": "56293571"}, "status": true, "msg": "Order Data"}', 'timestamp': '2026-06-05T10:51:02.048591Z'} (ID: 1780656662107-0)
[2026-06-05 16:21:02,916.916 INFO    ] {'order_id': 'TM07202501260605162015665', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'data': {'order_id': 'TM07202501260605162015665', 'mobile': '8004765416', 'proposed_sku_json': [{'sku_total': 40, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'unit_price': 40, 'skuid': '186059', 'door_id': '2', 'tray_id': '46', 'mrp': '40', 'offer_id': '', 'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}], 'bill_amount': '40', 'invoice_bill': '40', 'access_code': '56293571'}, 'status': True, 'msg': 'Order Data'}}
[2026-06-05 16:21:02,933.933 INFO    ] 200
[2026-06-05 16:21:02,941.941 INFO    ] {"data":{"order_id":"TM07202501260605162015665","server_status":"order-started","server_response":{"rstatus":true,"data":{"order_id":"TM07202501260605162015665","mobile":"8004765416","proposed_sku_json":[{"sku_total":40,"offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/186059-5330.png","unit_price":40,"skuid":"186059","door_id":"2","tray_id":"46","mrp":"40","offer_id":"","qty":1,"name":"Pepsi ZeroSugar  300ml"}],"bill_amount":"40","invoice_bill":"40","access_code":"56293571"},"status":true,"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:21:02,951.951 INFO    ] {'data': {'order_id': 'TM07202501260605162015665', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'data': {'order_id': 'TM07202501260605162015665', 'mobile': '8004765416', 'proposed_sku_json': [{'sku_total': 40, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml', 'door_id': '2', 'mrp': '40', 'qty': 1, 'unit_price': 40, 'offer_desc': '', 'tray_id': '46'}], 'bill_amount': '40', 'invoice_bill': '40', 'access_code': '56293571'}, 'status': True, 'msg': 'Order Data'}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-05 16:21:02,960.960 INFO    ] 2026-06-05 16:21:02
[2026-06-05 16:21:03,019.019 INFO    ] 200
[2026-06-05 16:21:03,022.022 INFO    ] True
[2026-06-05 16:21:03,279.279 INFO    ] 200
[2026-06-05 16:21:03,301.301 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:21:03,317.317 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'voiceNote': 'Please Wait', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-05 16:21:03,337.337 INFO    ] *** process_order ***
[2026-06-05 16:21:04,514.514 INFO    ] 200
[2026-06-05 16:21:04,517.517 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "delay": 0, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True"}
[2026-06-05 16:21:04,519.519 INFO    ] {'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-05 16:21:04,522.522 INFO    ] *** process_order ***
[2026-06-05 16:21:04,525.525 INFO    ] publish_status: order_id=TM07202501260605162015665
[2026-06-05 16:21:04,527.527 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162015665
[2026-06-05 16:21:04,622.622 INFO    ] [publish_status] Message added to stream with ID: 1780656664587-0
[2026-06-05 16:21:04,624.624 INFO    ] Published to order:TM07202501260605162015665: {'order_id': 'TM07202501260605162015665', 'server_status': 'doorOpened', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "voiceNote": "Door is open...", "delay": 0, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "You can pull the door now."}}'} (ID: 1780656664587-0)
[2026-06-05 16:21:05,683.683 INFO    ] 2026-06-05 16:21:05
[2026-06-05 16:21:05,686.686 INFO    ] publish_status: order_id=TM07202501260605162015665
[2026-06-05 16:21:05,688.688 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162015665
[2026-06-05 16:21:05,772.772 INFO    ] [publish_status] Message added to stream with ID: 1780656665737-0
[2026-06-05 16:21:05,775.775 INFO    ] Published to order:TM07202501260605162015665: {'order_id': 'TM07202501260605162015665', 'server_status': 'processOrder', 'server_response': '{"voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order"}}', 'timestamp': '2026-06-05T10:51:05.684393Z'} (ID: 1780656665737-0)
[2026-06-05 16:21:05,914.914 INFO    ] {'order_id': 'TM07202501260605162015665', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}}
[2026-06-05 16:21:05,917.917 INFO    ] 200
[2026-06-05 16:21:05,920.920 INFO    ] {"data":{"order_id":"TM07202501260605162015665","server_status":"processOrder","server_response":{"voiceNote":"Please Wait","delay":0,"SectionMain":{"Header":"Processing Order"},"rstatus":true,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true","SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","Note":"","SubHeader":"Please wait while we process your order"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:21:05,923.923 INFO    ] {'data': {'order_id': 'TM07202501260605162015665', 'server_status': 'processOrder', 'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'status': 'true'}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-05 16:21:05,926.926 INFO    ] 2026-06-05 16:21:05
[2026-06-05 16:21:05,928.928 INFO    ] None
[2026-06-05 16:21:05,931.931 INFO    ] Opening Door now
[2026-06-05 16:21:05,933.933 INFO    ] Opening Door now
[2026-06-05 16:21:05,936.936 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-05 16:21:05,939.939 INFO    ] 2026-06-05 16:21:05
[2026-06-05 16:21:05,941.941 INFO    ] playing audio file
[2026-06-05 16:21:05,959.959 INFO    ] 2026-06-05 16:21:05
[2026-06-05 16:21:05,962.962 INFO    ] 2026-06-05 16:21:05
[2026-06-05 16:21:09,047.047 INFO    ] 200
[2026-06-05 16:21:09,050.050 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:21:09,053.053 INFO    ] {'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Door 2 is open now', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-05 16:21:12,150.150 INFO    ] 200
[2026-06-05 16:21:12,153.153 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:21:12,156.156 INFO    ] {'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-05 16:21:15,218.218 INFO    ] 200
[2026-06-05 16:21:15,220.220 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:21:15,223.223 INFO    ] Please close door 2
[2026-06-05 16:21:15,226.226 INFO    ] Please close door 2
[2026-06-05 16:21:15,228.228 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-05 16:21:15,231.231 INFO    ] 2026-06-05 16:21:15
[2026-06-05 16:21:15,234.234 INFO    ] playing audio file
[2026-06-05 16:21:15,251.251 INFO    ] 2026-06-05 16:21:15
[2026-06-05 16:21:15,254.254 INFO    ] publish_status: order_id=TM07202501260605162015665
[2026-06-05 16:21:15,257.257 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162015665
[2026-06-05 16:21:15,342.342 INFO    ] [publish_status] Message added to stream with ID: 1780656675307-0
[2026-06-05 16:21:15,346.346 INFO    ] Published to order:TM07202501260605162015665: {'order_id': 'TM07202501260605162015665', 'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "rstatus": false, "voiceNote": "Please close door 2", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}}', 'timestamp': '2026-06-05T10:51:15.252770Z'} (ID: 1780656675307-0)
[2026-06-05 16:21:15,827.827 INFO    ] {'order_id': 'TM07202501260605162015665', 'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}}
[2026-06-05 16:21:15,830.830 INFO    ] 200
[2026-06-05 16:21:15,832.832 INFO    ] {"data":{"order_id":"TM07202501260605162015665","server_status":"OrderStatus","server_response":{"SectionSKU":{"skus":[{"name":"Pepsi ZeroSugar  300ml","qty":1}],"Header":"Pick the below items from the door"},"status":"false","SectionMain":{"Header":"Door Open"},"rstatus":false,"voiceNote":"Please close door 2","error":{"umessage":"In Progress","data":[],"code":20001,"tmessage":"In Progress"},"SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:21:15,836.836 INFO    ] {'data': {'order_id': 'TM07202501260605162015665', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'status': 'false', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-05 16:21:15,839.839 INFO    ] {'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-05 16:21:18,901.901 INFO    ] 200
[2026-06-05 16:21:18,904.904 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": true, "delay": 100, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True"}
[2026-06-05 16:21:18,908.908 INFO    ] {'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-05 16:21:18,911.911 INFO    ] 2026-06-05 16:21:18
[2026-06-05 16:21:18,913.913 INFO    ] Order Completed 
[2026-06-05 16:21:18,920.920 INFO    ] Order Completed 
[2026-06-05 16:21:18,923.923 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-05 16:21:18,926.926 INFO    ] 2026-06-05 16:21:18
[2026-06-05 16:21:18,928.928 INFO    ] playing audio file
[2026-06-05 16:21:18,948.948 INFO    ] 2026-06-05 16:21:18
[2026-06-05 16:21:18,951.951 INFO    ] {'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-05 16:21:18,954.954 INFO    ] 2026-06-05 16:21:18
[2026-06-05 16:21:20,310.310 INFO    ] 200
[2026-06-05 16:21:20,313.313 INFO    ] {"rstatus": true, "skus": [{"skuid": "186059", "tray_id": "46", "sku_total": 40.0, "unit_price": "40", "door_id": "", "image_url": "https://images.tinymart.in/product/186059-5330.png", "mrp": "40", "qty": 1, "name": "Pepsi ZeroSugar  300ml per peice"}], "logic": "WBL", "anomaly": 0, "total_amount": 40.0, "orderId": "TM07202501260605162015665", "res": "True"}
[2026-06-05 16:21:20,316.316 INFO    ] {'skus': [{'sku_total': 40.0, 'name': 'Pepsi ZeroSugar  300ml per peice', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'skuid': '186059', 'door_id': '', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'tray_id': '46'}], 'total_amount': 40.0, 'logic': 'WBL', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM07202501260605162015665', 'res': 'True'}
[2026-06-05 16:21:20,320.320 INFO    ] {'skus': [{'sku_total': 40.0, 'name': 'Pepsi ZeroSugar  300ml per peice', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'skuid': '186059', 'door_id': '', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'tray_id': '46'}], 'total_amount': 40.0, 'logic': 'WBL', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM07202501260605162015665', 'res': 'True'}
[2026-06-05 16:21:20,325.325 INFO    ] 2026-06-05 16:21:20
[2026-06-05 16:21:20,328.328 INFO    ] 2026-06-05 16:21:20
[2026-06-05 16:21:20,331.331 INFO    ] 40
[2026-06-05 16:21:20,334.334 INFO    ] 2026-06-05 16:21:20
[2026-06-05 16:21:20,337.337 INFO    ] 2026-06-05 16:21:20
[2026-06-05 16:21:20,339.339 INFO    ]  Your Bill Amount is 40
[2026-06-05 16:21:20,344.344 INFO    ]  Your Bill Amount is 40
[2026-06-05 16:21:20,346.346 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-05 16:21:20,349.349 INFO    ] 2026-06-05 16:21:20
[2026-06-05 16:21:20,353.353 INFO    ] playing audio file
[2026-06-05 16:21:20,372.372 INFO    ] 2026-06-05 16:21:20
[2026-06-05 16:21:20,377.377 INFO    ] 2026-06-05 16:21:20
[2026-06-05 16:21:20,381.381 INFO    ] publish_status: order_id=TM07202501260605162015665
[2026-06-05 16:21:20,385.385 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162015665
[2026-06-05 16:21:20,471.471 INFO    ] [publish_status] Message added to stream with ID: 1780656680435-0
[2026-06-05 16:21:20,474.474 INFO    ] Published to order:TM07202501260605162015665: {'order_id': 'TM07202501260605162015665', 'server_status': 'invoiceOrder', 'server_response': '{"skus": [{"sku_total": 40.0, "name": "Pepsi ZeroSugar  300ml per peice", "image_url": "https://images.tinymart.in/product/186059-5330.png", "skuid": "186059", "door_id": "", "mrp": "40", "unit_price": "40", "qty": 1, "tray_id": "46"}], "total_amount": 40.0, "logic": "WBL", "rstatus": true, "anomaly": 0, "orderId": "TM07202501260605162015665", "res": "True"}', 'timestamp': '2026-06-05T10:51:20.379070Z'} (ID: 1780656680435-0)
[2026-06-05 16:21:20,609.609 INFO    ] {'order_id': 'TM07202501260605162015665', 'server_status': 'invoiceOrder', 'server_response': {'skus': [{'sku_total': 40.0, 'name': 'Pepsi ZeroSugar  300ml per peice', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'skuid': '186059', 'door_id': '', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'tray_id': '46'}], 'total_amount': 40.0, 'logic': 'WBL', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM07202501260605162015665', 'res': 'True'}}
[2026-06-05 16:21:20,612.612 INFO    ] 200
[2026-06-05 16:21:20,615.615 INFO    ] {"data":{"order_id":"TM07202501260605162015665","server_status":"invoiceOrder","server_response":{"skus":[{"sku_total":40,"name":"Pepsi ZeroSugar  300ml per peice","image_url":"https:\/\/images.tinymart.in\/product\/186059-5330.png","skuid":"186059","door_id":"","mrp":"40","unit_price":"40","qty":1,"tray_id":"46"}],"total_amount":40,"logic":"WBL","rstatus":true,"anomaly":0,"orderId":"TM07202501260605162015665","res":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:21:20,618.618 INFO    ] {'data': {'order_id': 'TM07202501260605162015665', 'server_status': 'invoiceOrder', 'server_response': {'skus': [{'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'name': 'Pepsi ZeroSugar  300ml per peice', 'door_id': '', 'tray_id': '46', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'skuid': '186059'}], 'total_amount': 40, 'logic': 'WBL', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM07202501260605162015665', 'res': 'true'}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-05 16:21:20,621.621 INFO    ] {'data': {'order_id': 'TM07202501260605162015665', 'server_status': 'invoiceOrder', 'server_response': {'skus': [{'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'name': 'Pepsi ZeroSugar  300ml per peice', 'door_id': '', 'tray_id': '46', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'skuid': '186059'}], 'total_amount': 40, 'logic': 'WBL', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM07202501260605162015665', 'res': 'true'}}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-05 16:21:20,623.623 INFO    ] 2026-06-05 16:21:20
[2026-06-05 16:21:22,631.631 INFO    ] 200
[2026-06-05 16:21:22,633.633 INFO    ] {"orders": [], "orders_synced": [], "order_items_synced": [], "orders_data": [], "tray_synced": ["TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665", "TM07202501260605162015665"], "orders_data_synced": [], "order_items": [], "tray_sync": [], "status": true}
[2026-06-05 16:21:22,636.636 INFO    ] 2026-06-05 16:21:22
[2026-06-05 16:21:22,764.764 INFO    ] 200
[2026-06-05 16:21:22,768.768 INFO    ] True
[2026-06-05 16:21:22,770.770 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260605162015665
[2026-06-05 16:21:22,774.774 INFO    ] start order file deleted
[2026-06-05 16:21:22,778.778 INFO    ] Checking for system updates...
[2026-06-05 16:21:22,815.815 INFO    ] 200
[2026-06-05 16:21:22,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:21:22,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:21:22,882.882 INFO    ] No update needed
[2026-06-05 16:21:22,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 16:21:22,922.922 INFO    ] 200
[2026-06-05 16:21:22,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:21:22,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:21:23,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:21:23,013.013 INFO    ] No camera update needed
[2026-06-05 16:21:23,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:21:23,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:21:23,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:21:23,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:21:25,071.071 INFO    ] ================================================
[2026-06-05 16:21:25,086.086 INFO    ] Launching Daemon at Fri Jun  5 16:21:25 IST 2026
[2026-06-05 16:21:25,098.098 INFO    ] ================================================
[2026-06-05 16:21:25,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:21:25
[2026-06-05 16:21:26,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:21:26,505.505 INFO    ] Initializing speech engine...
[2026-06-05 16:21:26,520.520 INFO    ] 2026-06-05 16:21:26
[2026-06-05 16:21:26,786.786 INFO    ] 2026-06-05 16:21:26
[2026-06-05 16:21:26,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:21:27,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:21:27,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:21:27,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:21:27,230.230 INFO    ] time= 05/06/2026 16:21:27
[2026-06-05 16:21:27,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:21:27,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:21:27,413.413 INFO    ] No existing commands found in stream
[2026-06-05 16:21:32,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:21:32,428.428 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 16:21:35,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:21:35,933.933 INFO    ] Checking for system updates...
[2026-06-05 16:21:35,969.969 INFO    ] 200
[2026-06-05 16:21:35,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:21:36,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:21:36,035.035 INFO    ] No update needed
[2026-06-05 16:21:36,038.038 INFO    ] Checking for camera pi updates...
[2026-06-05 16:21:36,077.077 INFO    ] 200
[2026-06-05 16:21:36,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:21:36,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:21:36,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:21:36,170.170 INFO    ] No camera update needed
[2026-06-05 16:21:36,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:21:36,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:21:36,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:21:36,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:21:38,232.232 INFO    ] ================================================
[2026-06-05 16:21:38,248.248 INFO    ] Launching Daemon at Fri Jun  5 16:21:38 IST 2026
[2026-06-05 16:21:38,260.260 INFO    ] ================================================
[2026-06-05 16:21:38,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:21:38
[2026-06-05 16:21:39,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:21:39,721.721 INFO    ] Initializing speech engine...
[2026-06-05 16:21:39,732.732 INFO    ] 2026-06-05 16:21:39
[2026-06-05 16:21:40,030.030 INFO    ] 2026-06-05 16:21:40
[2026-06-05 16:21:40,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:21:40,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:21:40,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:21:40,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:21:40,414.414 INFO    ] time= 05/06/2026 16:21:40
[2026-06-05 16:21:40,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:21:40,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:21:40,534.534 INFO    ] No existing commands found in stream
[2026-06-05 16:21:45,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:21:45,552.552 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 16:21:49,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:21:49,747.747 INFO    ] Checking for system updates...
[2026-06-05 16:21:49,784.784 INFO    ] 200
[2026-06-05 16:21:49,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:21:49,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:21:49,855.855 INFO    ] No update needed
[2026-06-05 16:21:49,858.858 INFO    ] Checking for camera pi updates...
[2026-06-05 16:21:49,893.893 INFO    ] 200
[2026-06-05 16:21:49,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:21:49,938.938 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:21:49,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:21:49,968.968 INFO    ] No camera update needed
[2026-06-05 16:21:49,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:21:49,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:21:49,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:21:49,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:21:52,028.028 INFO    ] ================================================
[2026-06-05 16:21:52,043.043 INFO    ] Launching Daemon at Fri Jun  5 16:21:52 IST 2026
[2026-06-05 16:21:52,054.054 INFO    ] ================================================
[2026-06-05 16:21:52,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:21:52
[2026-06-05 16:21:53,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:21:53,532.532 INFO    ] Initializing speech engine...
[2026-06-05 16:21:53,545.545 INFO    ] 2026-06-05 16:21:53
[2026-06-05 16:21:53,795.795 INFO    ] 2026-06-05 16:21:53
[2026-06-05 16:21:53,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:21:54,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:21:54,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:21:54,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:21:54,904.904 INFO    ] time= 05/06/2026 16:21:54
[2026-06-05 16:21:54,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:21:54,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:21:55,012.012 INFO    ] No existing commands found in stream
[2026-06-05 16:22:00,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:22:00,026.026 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 16:22:02,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:22:02,980.980 INFO    ] Checking for system updates...
[2026-06-05 16:22:03,027.027 INFO    ] 200
[2026-06-05 16:22:03,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:03,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:22:03,086.086 INFO    ] No update needed
[2026-06-05 16:22:03,089.089 INFO    ] Checking for camera pi updates...
[2026-06-05 16:22:03,124.124 INFO    ] 200
[2026-06-05 16:22:03,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:03,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:22:03,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:22:03,200.200 INFO    ] No camera update needed
[2026-06-05 16:22:03,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:22:03,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:22:03,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:22:03,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:22:05,257.257 INFO    ] ================================================
[2026-06-05 16:22:05,272.272 INFO    ] Launching Daemon at Fri Jun  5 16:22:05 IST 2026
[2026-06-05 16:22:05,283.283 INFO    ] ================================================
[2026-06-05 16:22:05,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:22:05
[2026-06-05 16:22:06,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:22:06,734.734 INFO    ] Initializing speech engine...
[2026-06-05 16:22:06,740.740 INFO    ] 2026-06-05 16:22:06
[2026-06-05 16:22:06,999.999 INFO    ] 2026-06-05 16:22:06
[2026-06-05 16:22:07,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:22:07,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:22:07,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:22:07,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:22:07,467.467 INFO    ] time= 05/06/2026 16:22:07
[2026-06-05 16:22:07,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:22:07,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:22:07,704.704 INFO    ] No existing commands found in stream
[2026-06-05 16:22:12,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:22:12,732.732 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 16:22:14,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:22:14,424.424 INFO    ] Checking for system updates...
[2026-06-05 16:22:14,460.460 INFO    ] 200
[2026-06-05 16:22:14,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:14,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:22:14,527.527 INFO    ] No update needed
[2026-06-05 16:22:14,529.529 INFO    ] Checking for camera pi updates...
[2026-06-05 16:22:14,563.563 INFO    ] 200
[2026-06-05 16:22:14,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:14,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:22:14,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:22:14,653.653 INFO    ] No camera update needed
[2026-06-05 16:22:14,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:22:14,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:22:14,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:22:14,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:22:16,708.708 INFO    ] ================================================
[2026-06-05 16:22:16,723.723 INFO    ] Launching Daemon at Fri Jun  5 16:22:16 IST 2026
[2026-06-05 16:22:16,734.734 INFO    ] ================================================
[2026-06-05 16:22:17,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:22:17
[2026-06-05 16:22:18,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:22:18,344.344 INFO    ] Initializing speech engine...
[2026-06-05 16:22:18,357.357 INFO    ] 2026-06-05 16:22:18
[2026-06-05 16:22:18,647.647 INFO    ] 2026-06-05 16:22:18
[2026-06-05 16:22:18,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:22:18,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:22:18,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:22:19,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:22:19,126.126 INFO    ] time= 05/06/2026 16:22:19
[2026-06-05 16:22:19,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:22:19,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:22:19,316.316 INFO    ] No existing commands found in stream
[2026-06-05 16:22:24,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:22:24,347.347 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 16:22:28,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:22:28,602.602 INFO    ] Checking for system updates...
[2026-06-05 16:22:28,639.639 INFO    ] 200
[2026-06-05 16:22:28,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:28,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:22:28,698.698 INFO    ] No update needed
[2026-06-05 16:22:28,701.701 INFO    ] Checking for camera pi updates...
[2026-06-05 16:22:28,735.735 INFO    ] 200
[2026-06-05 16:22:28,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:28,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:22:28,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:22:28,829.829 INFO    ] No camera update needed
[2026-06-05 16:22:28,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:22:28,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:22:28,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:22:28,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:22:30,889.889 INFO    ] ================================================
[2026-06-05 16:22:30,904.904 INFO    ] Launching Daemon at Fri Jun  5 16:22:30 IST 2026
[2026-06-05 16:22:30,915.915 INFO    ] ================================================
[2026-06-05 16:22:31,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:22:31
[2026-06-05 16:22:32,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:22:32,597.597 INFO    ] Initializing speech engine...
[2026-06-05 16:22:32,604.604 INFO    ] 2026-06-05 16:22:32
[2026-06-05 16:22:32,876.876 INFO    ] 2026-06-05 16:22:32
[2026-06-05 16:22:32,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:22:33,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:22:33,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:22:33,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:22:33,363.363 INFO    ] time= 05/06/2026 16:22:33
[2026-06-05 16:22:33,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:22:33,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:22:33,582.582 INFO    ] No existing commands found in stream
[2026-06-05 16:22:38,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:22:38,601.601 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 16:22:40,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:22:40,626.626 INFO    ] Checking for system updates...
[2026-06-05 16:22:40,664.664 INFO    ] 200
[2026-06-05 16:22:40,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:40,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:22:40,729.729 INFO    ] No update needed
[2026-06-05 16:22:40,731.731 INFO    ] Checking for camera pi updates...
[2026-06-05 16:22:40,769.769 INFO    ] 200
[2026-06-05 16:22:40,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:40,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:22:40,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:22:40,865.865 INFO    ] No camera update needed
[2026-06-05 16:22:40,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:22:40,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:22:40,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:22:40,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:22:42,924.924 INFO    ] ================================================
[2026-06-05 16:22:42,940.940 INFO    ] Launching Daemon at Fri Jun  5 16:22:42 IST 2026
[2026-06-05 16:22:42,951.951 INFO    ] ================================================
[2026-06-05 16:22:43,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:22:43
[2026-06-05 16:22:44,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:22:44,578.578 INFO    ] Initializing speech engine...
[2026-06-05 16:22:44,586.586 INFO    ] 2026-06-05 16:22:44
[2026-06-05 16:22:44,865.865 INFO    ] 2026-06-05 16:22:44
[2026-06-05 16:22:44,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:22:45,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:22:45,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:22:45,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:22:45,368.368 INFO    ] time= 05/06/2026 16:22:45
[2026-06-05 16:22:45,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:22:45,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:22:45,577.577 INFO    ] No existing commands found in stream
[2026-06-05 16:22:50,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:22:50,608.608 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 16:22:51,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:22:51,410.410 INFO    ] Checking for system updates...
[2026-06-05 16:22:51,447.447 INFO    ] 200
[2026-06-05 16:22:51,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:51,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:22:51,507.507 INFO    ] No update needed
[2026-06-05 16:22:51,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 16:22:51,548.548 INFO    ] 200
[2026-06-05 16:22:51,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:22:51,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:22:51,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:22:51,637.637 INFO    ] No camera update needed
[2026-06-05 16:22:51,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:22:51,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:22:51,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:22:51,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:22:53,695.695 INFO    ] ================================================
[2026-06-05 16:22:53,711.711 INFO    ] Launching Daemon at Fri Jun  5 16:22:53 IST 2026
[2026-06-05 16:22:53,722.722 INFO    ] ================================================
[2026-06-05 16:22:54,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:22:54
[2026-06-05 16:22:55,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:22:55,341.341 INFO    ] Initializing speech engine...
[2026-06-05 16:22:55,348.348 INFO    ] 2026-06-05 16:22:55
[2026-06-05 16:22:55,644.644 INFO    ] 2026-06-05 16:22:55
[2026-06-05 16:22:55,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:22:55,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:22:55,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:22:56,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:22:56,185.185 INFO    ] time= 05/06/2026 16:22:56
[2026-06-05 16:22:56,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:22:56,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:22:56,319.319 INFO    ] No existing commands found in stream
[2026-06-05 16:23:01,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:23:01,354.354 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 16:23:03,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:23:03,587.587 INFO    ] Checking for system updates...
[2026-06-05 16:23:03,624.624 INFO    ] 200
[2026-06-05 16:23:03,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:03,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:23:03,684.684 INFO    ] No update needed
[2026-06-05 16:23:03,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 16:23:03,731.731 INFO    ] 200
[2026-06-05 16:23:03,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:03,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:23:03,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:23:03,826.826 INFO    ] No camera update needed
[2026-06-05 16:23:03,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:23:03,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:23:03,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:23:03,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:23:05,883.883 INFO    ] ================================================
[2026-06-05 16:23:05,899.899 INFO    ] Launching Daemon at Fri Jun  5 16:23:05 IST 2026
[2026-06-05 16:23:05,911.911 INFO    ] ================================================
[2026-06-05 16:23:06,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:23:06
[2026-06-05 16:23:07,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:23:07,347.347 INFO    ] Initializing speech engine...
[2026-06-05 16:23:07,353.353 INFO    ] 2026-06-05 16:23:07
[2026-06-05 16:23:07,634.634 INFO    ] 2026-06-05 16:23:07
[2026-06-05 16:23:07,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:23:07,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:23:07,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:23:08,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:23:08,148.148 INFO    ] time= 05/06/2026 16:23:08
[2026-06-05 16:23:08,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:23:08,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:23:08,347.347 INFO    ] No existing commands found in stream
[2026-06-05 16:23:13,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:23:13,378.378 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 16:23:15,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:23:15,673.673 INFO    ] Checking for system updates...
[2026-06-05 16:23:15,710.710 INFO    ] 200
[2026-06-05 16:23:15,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:15,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:23:15,771.771 INFO    ] No update needed
[2026-06-05 16:23:15,774.774 INFO    ] Checking for camera pi updates...
[2026-06-05 16:23:15,829.829 INFO    ] 200
[2026-06-05 16:23:15,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:15,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:23:15,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:23:15,944.944 INFO    ] No camera update needed
[2026-06-05 16:23:15,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:23:15,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:23:15,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:23:15,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:23:18,007.007 INFO    ] ================================================
[2026-06-05 16:23:18,023.023 INFO    ] Launching Daemon at Fri Jun  5 16:23:18 IST 2026
[2026-06-05 16:23:18,036.036 INFO    ] ================================================
[2026-06-05 16:23:18,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:23:18
[2026-06-05 16:23:19,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:23:19,762.762 INFO    ] Initializing speech engine...
[2026-06-05 16:23:19,768.768 INFO    ] 2026-06-05 16:23:19
[2026-06-05 16:23:20,080.080 INFO    ] 2026-06-05 16:23:20
[2026-06-05 16:23:20,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:23:20,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:23:20,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:23:20,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:23:20,626.626 INFO    ] time= 05/06/2026 16:23:20
[2026-06-05 16:23:20,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:23:20,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:23:20,777.777 INFO    ] No existing commands found in stream
[2026-06-05 16:23:25,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:23:25,799.799 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 16:23:26,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:23:26,519.519 INFO    ] Checking for system updates...
[2026-06-05 16:23:26,556.556 INFO    ] 200
[2026-06-05 16:23:26,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:26,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:23:26,613.613 INFO    ] No update needed
[2026-06-05 16:23:26,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 16:23:26,650.650 INFO    ] 200
[2026-06-05 16:23:26,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:26,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:23:26,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:23:26,842.842 INFO    ] No camera update needed
[2026-06-05 16:23:26,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:23:26,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:23:26,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:23:26,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:23:28,904.904 INFO    ] ================================================
[2026-06-05 16:23:28,919.919 INFO    ] Launching Daemon at Fri Jun  5 16:23:28 IST 2026
[2026-06-05 16:23:28,929.929 INFO    ] ================================================
[2026-06-05 16:23:29,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:23:29
[2026-06-05 16:23:30,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:23:30,400.400 INFO    ] Initializing speech engine...
[2026-06-05 16:23:30,409.409 INFO    ] 2026-06-05 16:23:30
[2026-06-05 16:23:30,660.660 INFO    ] 2026-06-05 16:23:30
[2026-06-05 16:23:30,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:23:30,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:23:30,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:23:31,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:23:31,160.160 INFO    ] time= 05/06/2026 16:23:31
[2026-06-05 16:23:31,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:23:31,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:23:31,409.409 INFO    ] No existing commands found in stream
[2026-06-05 16:23:36,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:23:36,428.428 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 16:23:39,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:23:39,147.147 INFO    ] Checking for system updates...
[2026-06-05 16:23:39,182.182 INFO    ] 200
[2026-06-05 16:23:39,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:39,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:23:39,240.240 INFO    ] No update needed
[2026-06-05 16:23:39,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 16:23:39,276.276 INFO    ] 200
[2026-06-05 16:23:39,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:39,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:23:39,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:23:39,351.351 INFO    ] No camera update needed
[2026-06-05 16:23:39,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:23:39,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:23:39,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:23:39,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:23:41,407.407 INFO    ] ================================================
[2026-06-05 16:23:41,422.422 INFO    ] Launching Daemon at Fri Jun  5 16:23:41 IST 2026
[2026-06-05 16:23:41,432.432 INFO    ] ================================================
[2026-06-05 16:23:42,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:23:41
[2026-06-05 16:23:42,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:23:42,838.838 INFO    ] Initializing speech engine...
[2026-06-05 16:23:42,850.850 INFO    ] 2026-06-05 16:23:42
[2026-06-05 16:23:43,117.117 INFO    ] 2026-06-05 16:23:43
[2026-06-05 16:23:43,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:23:43,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:23:43,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:23:43,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:23:43,615.615 INFO    ] time= 05/06/2026 16:23:43
[2026-06-05 16:23:43,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:23:43,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:23:43,816.816 INFO    ] No existing commands found in stream
[2026-06-05 16:23:48,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:23:48,849.849 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 16:23:50,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:23:50,757.757 INFO    ] Checking for system updates...
[2026-06-05 16:23:50,798.798 INFO    ] 200
[2026-06-05 16:23:50,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:50,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:23:50,861.861 INFO    ] No update needed
[2026-06-05 16:23:50,863.863 INFO    ] Checking for camera pi updates...
[2026-06-05 16:23:50,898.898 INFO    ] 200
[2026-06-05 16:23:50,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:23:50,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:23:50,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:23:50,993.993 INFO    ] No camera update needed
[2026-06-05 16:23:50,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:23:50,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:23:51,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:23:51,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:23:53,052.052 INFO    ] ================================================
[2026-06-05 16:23:53,067.067 INFO    ] Launching Daemon at Fri Jun  5 16:23:53 IST 2026
[2026-06-05 16:23:53,078.078 INFO    ] ================================================
[2026-06-05 16:23:53,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:23:53
[2026-06-05 16:23:54,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:23:54,489.489 INFO    ] Initializing speech engine...
[2026-06-05 16:23:54,512.512 INFO    ] 2026-06-05 16:23:54
[2026-06-05 16:23:54,770.770 INFO    ] 2026-06-05 16:23:54
[2026-06-05 16:23:54,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:23:55,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:23:55,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:23:55,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:23:55,259.259 INFO    ] time= 05/06/2026 16:23:55
[2026-06-05 16:23:55,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:23:55,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:23:55,479.479 INFO    ] No existing commands found in stream
[2026-06-05 16:24:00,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:24:00,511.511 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 16:24:01,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:24:01,711.711 INFO    ] Checking for system updates...
[2026-06-05 16:24:01,751.751 INFO    ] 200
[2026-06-05 16:24:01,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:01,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:24:01,822.822 INFO    ] No update needed
[2026-06-05 16:24:01,825.825 INFO    ] Checking for camera pi updates...
[2026-06-05 16:24:01,867.867 INFO    ] 200
[2026-06-05 16:24:01,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:01,918.918 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:24:01,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:24:01,952.952 INFO    ] No camera update needed
[2026-06-05 16:24:01,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:24:01,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:24:01,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:24:01,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:24:04,016.016 INFO    ] ================================================
[2026-06-05 16:24:04,032.032 INFO    ] Launching Daemon at Fri Jun  5 16:24:04 IST 2026
[2026-06-05 16:24:04,043.043 INFO    ] ================================================
[2026-06-05 16:24:04,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:24:04
[2026-06-05 16:24:05,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:24:05,481.481 INFO    ] Initializing speech engine...
[2026-06-05 16:24:05,491.491 INFO    ] 2026-06-05 16:24:05
[2026-06-05 16:24:05,784.784 INFO    ] 2026-06-05 16:24:05
[2026-06-05 16:24:05,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:24:06,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:24:06,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:24:06,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:24:06,251.251 INFO    ] time= 05/06/2026 16:24:06
[2026-06-05 16:24:06,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:24:06,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:24:06,454.454 INFO    ] No existing commands found in stream
[2026-06-05 16:24:11,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:24:11,490.490 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 16:24:14,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:24:14,806.806 INFO    ] Checking for system updates...
[2026-06-05 16:24:14,848.848 INFO    ] 200
[2026-06-05 16:24:14,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:14,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:24:14,913.913 INFO    ] No update needed
[2026-06-05 16:24:14,916.916 INFO    ] Checking for camera pi updates...
[2026-06-05 16:24:14,952.952 INFO    ] 200
[2026-06-05 16:24:14,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:14,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:24:15,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:24:15,051.051 INFO    ] No camera update needed
[2026-06-05 16:24:15,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:24:15,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:24:15,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:24:15,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:24:17,114.114 INFO    ] ================================================
[2026-06-05 16:24:17,131.131 INFO    ] Launching Daemon at Fri Jun  5 16:24:17 IST 2026
[2026-06-05 16:24:17,147.147 INFO    ] ================================================
[2026-06-05 16:24:17,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:24:17
[2026-06-05 16:24:18,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:24:18,830.830 INFO    ] Initializing speech engine...
[2026-06-05 16:24:18,834.834 INFO    ] 2026-06-05 16:24:18
[2026-06-05 16:24:19,104.104 INFO    ] 2026-06-05 16:24:19
[2026-06-05 16:24:19,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:24:19,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:24:19,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:24:19,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:24:19,560.560 INFO    ] time= 05/06/2026 16:24:19
[2026-06-05 16:24:19,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:24:19,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:24:19,814.814 INFO    ] No existing commands found in stream
[2026-06-05 16:24:24,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:24:24,828.828 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 16:24:27,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:24:27,127.127 INFO    ] Checking for system updates...
[2026-06-05 16:24:27,172.172 INFO    ] 200
[2026-06-05 16:24:27,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:27,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:24:27,230.230 INFO    ] No update needed
[2026-06-05 16:24:27,233.233 INFO    ] Checking for camera pi updates...
[2026-06-05 16:24:27,267.267 INFO    ] 200
[2026-06-05 16:24:27,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:27,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:24:27,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:24:27,352.352 INFO    ] No camera update needed
[2026-06-05 16:24:27,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:24:27,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:24:27,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:24:27,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:24:29,410.410 INFO    ] ================================================
[2026-06-05 16:24:29,425.425 INFO    ] Launching Daemon at Fri Jun  5 16:24:29 IST 2026
[2026-06-05 16:24:29,437.437 INFO    ] ================================================
[2026-06-05 16:24:30,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:24:30
[2026-06-05 16:24:30,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:24:31,052.052 INFO    ] Initializing speech engine...
[2026-06-05 16:24:31,064.064 INFO    ] 2026-06-05 16:24:31
[2026-06-05 16:24:31,358.358 INFO    ] 2026-06-05 16:24:31
[2026-06-05 16:24:31,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:24:31,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:24:31,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:24:31,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:24:31,917.917 INFO    ] time= 05/06/2026 16:24:31
[2026-06-05 16:24:31,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:24:31,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:24:32,070.070 INFO    ] No existing commands found in stream
[2026-06-05 16:24:37,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:24:37,097.097 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 16:24:40,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:24:40,927.927 INFO    ] Checking for system updates...
[2026-06-05 16:24:40,964.964 INFO    ] 200
[2026-06-05 16:24:40,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:41,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:24:41,022.022 INFO    ] No update needed
[2026-06-05 16:24:41,025.025 INFO    ] Checking for camera pi updates...
[2026-06-05 16:24:41,060.060 INFO    ] 200
[2026-06-05 16:24:41,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:41,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:24:41,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:24:41,158.158 INFO    ] No camera update needed
[2026-06-05 16:24:41,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:24:41,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:24:41,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:24:41,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:24:43,215.215 INFO    ] ================================================
[2026-06-05 16:24:43,230.230 INFO    ] Launching Daemon at Fri Jun  5 16:24:43 IST 2026
[2026-06-05 16:24:43,241.241 INFO    ] ================================================
[2026-06-05 16:24:43,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:24:43
[2026-06-05 16:24:44,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:24:44,697.697 INFO    ] Initializing speech engine...
[2026-06-05 16:24:44,704.704 INFO    ] 2026-06-05 16:24:44
[2026-06-05 16:24:44,964.964 INFO    ] 2026-06-05 16:24:44
[2026-06-05 16:24:44,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:24:45,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:24:45,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:24:45,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:24:45,426.426 INFO    ] time= 05/06/2026 16:24:45
[2026-06-05 16:24:45,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:24:45,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:24:45,634.634 INFO    ] No existing commands found in stream
[2026-06-05 16:24:50,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:24:50,659.659 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 16:24:55,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:24:55,094.094 INFO    ] Checking for system updates...
[2026-06-05 16:24:55,132.132 INFO    ] 200
[2026-06-05 16:24:55,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:55,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:24:55,191.191 INFO    ] No update needed
[2026-06-05 16:24:55,193.193 INFO    ] Checking for camera pi updates...
[2026-06-05 16:24:55,231.231 INFO    ] 200
[2026-06-05 16:24:55,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:24:55,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:24:55,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:24:55,327.327 INFO    ] No camera update needed
[2026-06-05 16:24:55,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:24:55,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:24:55,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:24:55,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:24:57,384.384 INFO    ] ================================================
[2026-06-05 16:24:57,400.400 INFO    ] Launching Daemon at Fri Jun  5 16:24:57 IST 2026
[2026-06-05 16:24:57,412.412 INFO    ] ================================================
[2026-06-05 16:24:58,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:24:58
[2026-06-05 16:24:58,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:24:59,051.051 INFO    ] Initializing speech engine...
[2026-06-05 16:24:59,059.059 INFO    ] 2026-06-05 16:24:59
[2026-06-05 16:24:59,334.334 INFO    ] 2026-06-05 16:24:59
[2026-06-05 16:24:59,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:24:59,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:24:59,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:24:59,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:24:59,905.905 INFO    ] time= 05/06/2026 16:24:59
[2026-06-05 16:24:59,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:24:59,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:25:00,063.063 INFO    ] No existing commands found in stream
[2026-06-05 16:25:05,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:25:05,083.083 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 16:25:06,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:25:06,154.154 INFO    ] Checking for system updates...
[2026-06-05 16:25:06,191.191 INFO    ] 200
[2026-06-05 16:25:06,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:06,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:25:06,251.251 INFO    ] No update needed
[2026-06-05 16:25:06,253.253 INFO    ] Checking for camera pi updates...
[2026-06-05 16:25:06,288.288 INFO    ] 200
[2026-06-05 16:25:06,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:06,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:25:06,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:25:06,365.365 INFO    ] No camera update needed
[2026-06-05 16:25:06,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:25:06,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:25:06,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:25:06,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:25:08,425.425 INFO    ] ================================================
[2026-06-05 16:25:08,441.441 INFO    ] Launching Daemon at Fri Jun  5 16:25:08 IST 2026
[2026-06-05 16:25:08,453.453 INFO    ] ================================================
[2026-06-05 16:25:09,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:25:09
[2026-06-05 16:25:11,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:25:11,957.957 INFO    ] Initializing speech engine...
[2026-06-05 16:25:11,963.963 INFO    ] 2026-06-05 16:25:11
[2026-06-05 16:25:12,242.242 INFO    ] 2026-06-05 16:25:12
[2026-06-05 16:25:12,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:25:12,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:25:12,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:25:12,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:25:12,763.763 INFO    ] time= 05/06/2026 16:25:12
[2026-06-05 16:25:12,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:25:12,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:25:12,959.959 INFO    ] No existing commands found in stream
[2026-06-05 16:25:17,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:25:17,981.981 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 16:25:21,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:25:21,567.567 INFO    ] Checking for system updates...
[2026-06-05 16:25:21,605.605 INFO    ] 200
[2026-06-05 16:25:21,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:21,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:25:21,681.681 INFO    ] No update needed
[2026-06-05 16:25:21,685.685 INFO    ] Checking for camera pi updates...
[2026-06-05 16:25:21,727.727 INFO    ] 200
[2026-06-05 16:25:21,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:21,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:25:21,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:25:21,854.854 INFO    ] No camera update needed
[2026-06-05 16:25:21,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:25:21,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:25:21,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:25:21,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:25:23,910.910 INFO    ] ================================================
[2026-06-05 16:25:23,926.926 INFO    ] Launching Daemon at Fri Jun  5 16:25:23 IST 2026
[2026-06-05 16:25:23,936.936 INFO    ] ================================================
[2026-06-05 16:25:24,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:25:24
[2026-06-05 16:25:25,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:25:25,397.397 INFO    ] Initializing speech engine...
[2026-06-05 16:25:25,405.405 INFO    ] 2026-06-05 16:25:25
[2026-06-05 16:25:25,681.681 INFO    ] 2026-06-05 16:25:25
[2026-06-05 16:25:25,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:25:25,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:25:25,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:25:26,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:25:26,168.168 INFO    ] time= 05/06/2026 16:25:26
[2026-06-05 16:25:26,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:25:26,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:25:26,382.382 INFO    ] No existing commands found in stream
[2026-06-05 16:25:31,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:25:31,416.416 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 16:25:33,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:25:33,528.528 INFO    ] Checking for system updates...
[2026-06-05 16:25:33,567.567 INFO    ] 200
[2026-06-05 16:25:33,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:33,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:25:33,634.634 INFO    ] No update needed
[2026-06-05 16:25:33,637.637 INFO    ] Checking for camera pi updates...
[2026-06-05 16:25:33,671.671 INFO    ] 200
[2026-06-05 16:25:33,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:33,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:25:33,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:25:33,757.757 INFO    ] No camera update needed
[2026-06-05 16:25:33,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:25:33,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:25:33,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:25:33,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:25:35,814.814 INFO    ] ================================================
[2026-06-05 16:25:35,829.829 INFO    ] Launching Daemon at Fri Jun  5 16:25:35 IST 2026
[2026-06-05 16:25:35,841.841 INFO    ] ================================================
[2026-06-05 16:25:36,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:25:36
[2026-06-05 16:25:37,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:25:37,373.373 INFO    ] Initializing speech engine...
[2026-06-05 16:25:37,381.381 INFO    ] 2026-06-05 16:25:37
[2026-06-05 16:25:37,679.679 INFO    ] 2026-06-05 16:25:37
[2026-06-05 16:25:37,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:25:37,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:25:37,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:25:38,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:25:38,102.102 INFO    ] time= 05/06/2026 16:25:38
[2026-06-05 16:25:38,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:25:38,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:25:38,191.191 INFO    ] No existing commands found in stream
[2026-06-05 16:25:43,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:25:43,208.208 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 16:25:46,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:25:46,648.648 INFO    ] Checking for system updates...
[2026-06-05 16:25:46,684.684 INFO    ] 200
[2026-06-05 16:25:46,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:46,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:25:46,742.742 INFO    ] No update needed
[2026-06-05 16:25:46,744.744 INFO    ] Checking for camera pi updates...
[2026-06-05 16:25:46,778.778 INFO    ] 200
[2026-06-05 16:25:46,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:46,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:25:46,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:25:46,879.879 INFO    ] No camera update needed
[2026-06-05 16:25:46,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:25:46,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:25:46,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:25:46,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:25:48,936.936 INFO    ] ================================================
[2026-06-05 16:25:48,951.951 INFO    ] Launching Daemon at Fri Jun  5 16:25:48 IST 2026
[2026-06-05 16:25:48,963.963 INFO    ] ================================================
[2026-06-05 16:25:49,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:25:49
[2026-06-05 16:25:50,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:25:50,437.437 INFO    ] Initializing speech engine...
[2026-06-05 16:25:50,448.448 INFO    ] 2026-06-05 16:25:50
[2026-06-05 16:25:50,720.720 INFO    ] 2026-06-05 16:25:50
[2026-06-05 16:25:50,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:25:50,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:25:50,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:25:51,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:25:51,120.120 INFO    ] time= 05/06/2026 16:25:51
[2026-06-05 16:25:51,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:25:51,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:25:51,231.231 INFO    ] No existing commands found in stream
[2026-06-05 16:25:56,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:25:56,265.265 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 16:25:56,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:25:56,964.964 INFO    ] Checking for system updates...
[2026-06-05 16:25:57,001.001 INFO    ] 200
[2026-06-05 16:25:57,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:57,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:25:57,059.059 INFO    ] No update needed
[2026-06-05 16:25:57,061.061 INFO    ] Checking for camera pi updates...
[2026-06-05 16:25:57,100.100 INFO    ] 200
[2026-06-05 16:25:57,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:25:57,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:25:57,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:25:57,183.183 INFO    ] No camera update needed
[2026-06-05 16:25:57,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:25:57,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:25:57,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:25:57,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:25:59,240.240 INFO    ] ================================================
[2026-06-05 16:25:59,257.257 INFO    ] Launching Daemon at Fri Jun  5 16:25:59 IST 2026
[2026-06-05 16:25:59,268.268 INFO    ] ================================================
[2026-06-05 16:25:59,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:25:59
[2026-06-05 16:26:00,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:26:00,732.732 INFO    ] Initializing speech engine...
[2026-06-05 16:26:00,747.747 INFO    ] 2026-06-05 16:26:00
[2026-06-05 16:26:01,026.026 INFO    ] 2026-06-05 16:26:01
[2026-06-05 16:26:01,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:26:01,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:26:01,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:26:01,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:26:01,525.525 INFO    ] time= 05/06/2026 16:26:01
[2026-06-05 16:26:01,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:26:01,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:26:01,726.726 INFO    ] No existing commands found in stream
[2026-06-05 16:26:06,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:26:06,750.750 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 16:26:08,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:26:08,030.030 INFO    ] Checking for system updates...
[2026-06-05 16:26:08,073.073 INFO    ] 200
[2026-06-05 16:26:08,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:26:08,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:26:08,134.134 INFO    ] No update needed
[2026-06-05 16:26:08,137.137 INFO    ] Checking for camera pi updates...
[2026-06-05 16:26:08,172.172 INFO    ] 200
[2026-06-05 16:26:08,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:26:08,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:26:08,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:26:08,243.243 INFO    ] No camera update needed
[2026-06-05 16:26:08,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:26:08,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:26:08,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:26:08,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:26:10,299.299 INFO    ] ================================================
[2026-06-05 16:26:10,316.316 INFO    ] Launching Daemon at Fri Jun  5 16:26:10 IST 2026
[2026-06-05 16:26:10,327.327 INFO    ] ================================================
[2026-06-05 16:26:10,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:26:10
[2026-06-05 16:26:11,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:26:11,790.790 INFO    ] Initializing speech engine...
[2026-06-05 16:26:11,799.799 INFO    ] 2026-06-05 16:26:11
[2026-06-05 16:26:12,061.061 INFO    ] 2026-06-05 16:26:12
[2026-06-05 16:26:12,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:26:12,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:26:12,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:26:12,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:26:12,533.533 INFO    ] time= 05/06/2026 16:26:12
[2026-06-05 16:26:12,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:26:12,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:26:12,757.757 INFO    ] No existing commands found in stream
[2026-06-05 16:26:17,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:26:17,781.781 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 16:26:20,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:26:20,628.628 INFO    ] Checking for system updates...
[2026-06-05 16:26:20,665.665 INFO    ] 200
[2026-06-05 16:26:20,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:26:20,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:26:20,754.754 INFO    ] No update needed
[2026-06-05 16:26:20,756.756 INFO    ] Checking for camera pi updates...
[2026-06-05 16:26:20,796.796 INFO    ] 200
[2026-06-05 16:26:20,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:26:20,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:26:20,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:26:20,889.889 INFO    ] No camera update needed
[2026-06-05 16:26:20,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:26:20,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:26:20,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:26:20,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:26:22,947.947 INFO    ] ================================================
[2026-06-05 16:26:22,963.963 INFO    ] Launching Daemon at Fri Jun  5 16:26:22 IST 2026
[2026-06-05 16:26:22,975.975 INFO    ] ================================================
[2026-06-05 16:26:23,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:26:23
[2026-06-05 16:26:24,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:26:24,389.389 INFO    ] Initializing speech engine...
[2026-06-05 16:26:24,408.408 INFO    ] 2026-06-05 16:26:24
[2026-06-05 16:26:24,658.658 INFO    ] 2026-06-05 16:26:24
[2026-06-05 16:26:24,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:26:24,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:26:24,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:26:25,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:26:25,140.140 INFO    ] time= 05/06/2026 16:26:25
[2026-06-05 16:26:25,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:26:25,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:26:25,300.300 INFO    ] No existing commands found in stream
[2026-06-05 16:26:30,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:26:30,334.334 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 16:26:33,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:26:33,436.436 INFO    ] Checking for system updates...
[2026-06-05 16:26:33,471.471 INFO    ] 200
[2026-06-05 16:26:33,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:26:33,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:26:33,537.537 INFO    ] No update needed
[2026-06-05 16:26:33,539.539 INFO    ] Checking for camera pi updates...
[2026-06-05 16:26:33,577.577 INFO    ] 200
[2026-06-05 16:26:33,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:26:33,625.625 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:26:33,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:26:33,669.669 INFO    ] No camera update needed
[2026-06-05 16:26:33,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:26:33,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:26:33,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:26:33,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:26:35,725.725 INFO    ] ================================================
[2026-06-05 16:26:35,742.742 INFO    ] Launching Daemon at Fri Jun  5 16:26:35 IST 2026
[2026-06-05 16:26:35,753.753 INFO    ] ================================================
[2026-06-05 16:26:36,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:26:36
[2026-06-05 16:26:36,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:26:37,159.159 INFO    ] Initializing speech engine...
[2026-06-05 16:26:37,181.181 INFO    ] 2026-06-05 16:26:37
[2026-06-05 16:26:37,439.439 INFO    ] 2026-06-05 16:26:37
[2026-06-05 16:26:37,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:26:37,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:26:37,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:26:37,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:26:37,926.926 INFO    ] time= 05/06/2026 16:26:37
[2026-06-05 16:26:37,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:26:38,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:26:38,168.168 INFO    ] No existing commands found in stream
[2026-06-05 16:26:43,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:26:43,183.183 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 16:26:50,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:26:50,486.486 INFO    ] Checking for system updates...
[2026-06-05 16:26:50,524.524 INFO    ] 200
[2026-06-05 16:26:50,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:26:50,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:26:50,588.588 INFO    ] No update needed
[2026-06-05 16:26:50,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 16:26:50,636.636 INFO    ] 200
[2026-06-05 16:26:50,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:26:50,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:26:50,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:26:50,731.731 INFO    ] No camera update needed
[2026-06-05 16:26:50,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:26:50,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:26:50,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:26:50,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:26:52,788.788 INFO    ] ================================================
[2026-06-05 16:26:52,805.805 INFO    ] Launching Daemon at Fri Jun  5 16:26:52 IST 2026
[2026-06-05 16:26:52,817.817 INFO    ] ================================================
[2026-06-05 16:26:53,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:26:53
[2026-06-05 16:26:54,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:26:54,273.273 INFO    ] Initializing speech engine...
[2026-06-05 16:26:54,288.288 INFO    ] 2026-06-05 16:26:54
[2026-06-05 16:26:54,546.546 INFO    ] 2026-06-05 16:26:54
[2026-06-05 16:26:54,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:26:54,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:26:54,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:26:54,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:26:54,940.940 INFO    ] time= 05/06/2026 16:26:54
[2026-06-05 16:26:54,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:26:54,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:26:55,133.133 INFO    ] No existing commands found in stream
[2026-06-05 16:27:00,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:27:00,151.151 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 16:27:02,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:27:02,848.848 INFO    ] Checking for system updates...
[2026-06-05 16:27:02,885.885 INFO    ] 200
[2026-06-05 16:27:02,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:27:02,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:27:02,962.962 INFO    ] No update needed
[2026-06-05 16:27:02,966.966 INFO    ] Checking for camera pi updates...
[2026-06-05 16:27:03,011.011 INFO    ] 200
[2026-06-05 16:27:03,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:27:03,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:27:03,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:27:03,120.120 INFO    ] No camera update needed
[2026-06-05 16:27:03,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:27:03,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:27:03,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:27:03,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:27:05,181.181 INFO    ] ================================================
[2026-06-05 16:27:05,197.197 INFO    ] Launching Daemon at Fri Jun  5 16:27:05 IST 2026
[2026-06-05 16:27:05,208.208 INFO    ] ================================================
[2026-06-05 16:27:05,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:27:05
[2026-06-05 16:27:06,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:27:06,891.891 INFO    ] Initializing speech engine...
[2026-06-05 16:27:06,904.904 INFO    ] 2026-06-05 16:27:06
[2026-06-05 16:27:07,217.217 INFO    ] 2026-06-05 16:27:07
[2026-06-05 16:27:07,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:27:07,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:27:07,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:27:07,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:27:07,740.740 INFO    ] time= 05/06/2026 16:27:07
[2026-06-05 16:27:07,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:27:07,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:27:07,929.929 INFO    ] No existing commands found in stream
[2026-06-05 16:27:12,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:27:12,969.969 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 16:27:13,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:27:13,708.708 INFO    ] Checking for system updates...
[2026-06-05 16:27:13,749.749 INFO    ] 200
[2026-06-05 16:27:13,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:27:13,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:27:13,808.808 INFO    ] No update needed
[2026-06-05 16:27:13,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 16:27:13,845.845 INFO    ] 200
[2026-06-05 16:27:13,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:27:13,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:27:13,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:27:13,933.933 INFO    ] No camera update needed
[2026-06-05 16:27:13,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:27:13,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:27:13,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:27:13,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:27:15,988.988 INFO    ] ================================================
[2026-06-05 16:27:16,004.004 INFO    ] Launching Daemon at Fri Jun  5 16:27:15 IST 2026
[2026-06-05 16:27:16,015.015 INFO    ] ================================================
[2026-06-05 16:27:16,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:27:16
[2026-06-05 16:27:17,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:27:17,686.686 INFO    ] Initializing speech engine...
[2026-06-05 16:27:17,692.692 INFO    ] 2026-06-05 16:27:17
[2026-06-05 16:27:17,981.981 INFO    ] 2026-06-05 16:27:17
[2026-06-05 16:27:18,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:27:18,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:27:18,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:27:18,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:27:18,514.514 INFO    ] time= 05/06/2026 16:27:18
[2026-06-05 16:27:18,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:27:18,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:27:18,673.673 INFO    ] No existing commands found in stream
[2026-06-05 16:27:23,568.568 INFO    ] Received new command: ID=1780657043455-0
[2026-06-05 16:27:23,571.571 INFO    ] process_and_cleanup_command: msg_id=1780657043455-0
[2026-06-05 16:27:23,574.574 INFO    ] is_command_expired: timestamp=2026-06-05T10:57:23.248Z, expiry=30s
[2026-06-05 16:27:23,665.665 INFO    ] Command removed from stream: 1780657043455-0. returning for processing...
[2026-06-05 16:27:23,668.668 INFO    ] ***** get_valid_command
[2026-06-05 16:27:23,671.671 INFO    ] {'command': 'start-order', 'source': 'webapp', 'timestamp': '2026-06-05T10:57:23.248Z', 'timeout': '10', 'data': '{"request_id":"start-order-1780657043248-dk6sipys1","orderId":"TM07202501260605162539906","is_vending":false}'}
[2026-06-05 16:27:23,674.674 INFO    ] ***** Parsed command data: {'orderId': 'TM07202501260605162539906', 'is_vending': False, 'request_id': 'start-order-1780657043248-dk6sipys1'}
[2026-06-05 16:27:23,677.677 INFO    ] Handling start order...
[2026-06-05 16:27:23,679.679 INFO    ] handle_start_order_command
[2026-06-05 16:27:23,686.686 INFO    ] _send_start_order_success: request_id=start-order-1780657043248-dk6sipys1, order_id=TM07202501260605162539906
[2026-06-05 16:27:23,689.689 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-05 16:27:23,753.753 INFO    ] [_send_start_order_success] Message added to stream with ID: 1780657043717-0
[2026-06-05 16:27:23,756.756 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-05 16:27:23,759.759 INFO    ] Checking for system updates...
[2026-06-05 16:27:23,804.804 INFO    ] 200
[2026-06-05 16:27:23,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-06-05 16:27:23,810.810 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-06-05 16:27:23,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 16:27:23,852.852 INFO    ] 200
[2026-06-05 16:27:23,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-06-05 16:27:23,859.859 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-06-05 16:27:23,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:27:23,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:27:23,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:27:23,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:27:25,925.925 INFO    ] ================================================
[2026-06-05 16:27:25,945.945 INFO    ] Launching Daemon at Fri Jun  5 16:27:25 IST 2026
[2026-06-05 16:27:25,962.962 INFO    ] ================================================
[2026-06-05 16:27:26,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:27:26
[2026-06-05 16:27:27,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:27:27,699.699 INFO    ] Initializing speech engine...
[2026-06-05 16:27:27,714.714 INFO    ] 2026-06-05 16:27:27
[2026-06-05 16:27:27,981.981 INFO    ] 2026-06-05 16:27:27
[2026-06-05 16:27:28,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:27:28,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:27:28,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:27:28,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:27:28,396.396 INFO    ] time= 05/06/2026 16:27:28
[2026-06-05 16:27:28,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:27:28,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:27:28,489.489 INFO    ] Found 2 existing command(s) in stream
[2026-06-05 16:27:28,549.549 INFO    ] Checking historical command: ID=1780657043717-0
[2026-06-05 16:27:28,583.583 INFO    ] process_and_cleanup_command: msg_id=1780657043717-0
[2026-06-05 16:27:28,637.637 INFO    ] is_command_expired: timestamp=2026-06-05T10:57:23.687772Z, expiry=30s
[2026-06-05 16:27:28,731.731 INFO    ] Command removed from stream: 1780657043717-0. returning for processing...
[2026-06-05 16:27:28,738.738 INFO    ] ***** get_valid_command
[2026-06-05 16:27:28,773.773 INFO    ] {'message': 'start-order success', 'metadata_order_id': 'TM07202501260605162539906', 'timestamp': '2026-06-05T10:57:23.687772Z', 'metadata_request_id': 'start-order-1780657043248-dk6sipys1', 'imei': 'TM07202501', 'status': 'success', 'message_type': 'command_response'}
[2026-06-05 16:27:28,819.819 INFO    ] Checking historical command: ID=1780657045192-0
[2026-06-05 16:27:28,858.858 INFO    ] process_and_cleanup_command: msg_id=1780657045192-0
[2026-06-05 16:27:28,897.897 INFO    ] is_command_expired: timestamp=2026-06-05T10:57:24.933Z, expiry=30s
[2026-06-05 16:27:28,996.996 INFO    ] Command removed from stream: 1780657045192-0. returning for processing...
[2026-06-05 16:27:29,047.047 INFO    ] ***** get_valid_command
[2026-06-05 16:27:29,106.106 INFO    ] {'timestamp': '2026-06-05T10:57:24.933Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1780657044933-tnhid1ev6","orderId":"TM07202501260605162539906","is_vending":false,"accessCode":"70967617"}', 'timeout': '60', 'command': 'process-order'}
[2026-06-05 16:27:29,151.151 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1780657044933-tnhid1ev6', 'orderId': 'TM07202501260605162539906', 'accessCode': '70967617', 'is_vending': False}
[2026-06-05 16:27:29,188.188 INFO    ] Handling process order...
[2026-06-05 16:27:29,215.215 INFO    ] Processing process-order command...
[2026-06-05 16:27:29,219.219 INFO    ] 🔍 Lock file Order ID: TM07202501260605162539906, TS: 2026-06-05 16:27:23
[2026-06-05 16:27:29,242.242 INFO    ] ✅ Order lock valid for TM07202501260605162539906
[2026-06-05 16:27:29,246.246 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-05 16:27:29,248.248 INFO    ] processing access code 70967617 for order TM07202501260605162539906
[2026-06-05 16:27:29,252.252 INFO    ] 🔍 Lock file Order ID: TM07202501260605162539906, TS: 2026-06-05 16:27:23
[2026-06-05 16:27:29,255.255 INFO    ] ✅ Order lock valid for TM07202501260605162539906
[2026-06-05 16:27:29,289.289 INFO    ] 2026-06-05 16:27:29
[2026-06-05 16:27:29,414.414 INFO    ] 200
[2026-06-05 16:27:29,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:27:29,434.434 INFO    ] 70967617
[2026-06-05 16:27:29,474.474 INFO    ] 2026-06-05 16:27:29
[2026-06-05 16:27:29,477.477 INFO    ] session id :298649965
[2026-06-05 16:27:29,521.521 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=70967617&imei=TM07202501&session_id=298649965
[2026-06-05 16:27:30,574.574 INFO    ] 200
[2026-06-05 16:27:30,596.596 INFO    ] {"rstatus": true, "msg": "Order Data", "data": {"mobile": "7019763346", "bill_amount": "29", "access_code": "70967617", "order_id": "TM07202501260605162539906", "proposed_sku_json": [{"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm", "offer_id": "4500623_0701", "skuid": "4500623", "sku_total": 19, "door_id": "1", "tray_id": "12", "image_url": "https://images.tinymart.in/product/4500623-9349.webp", "mrp": "20", "offer_desc": "", "unit_price": 19}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g", "offer_id": "", "skuid": "4500647", "sku_total": 10, "door_id": "1", "tray_id": "26", "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "mrp": "10", "offer_desc": "", "unit_price": 10}], "invoice_bill": "29"}, "status": true}
[2026-06-05 16:27:30,612.612 INFO    ] 29
[2026-06-05 16:27:30,618.618 INFO    ] TM07202501260605162539906
[2026-06-05 16:27:30,672.672 INFO    ] 7019763346
[2026-06-05 16:27:30,677.677 INFO    ] 2026-06-05 16:27:30
[2026-06-05 16:27:30,689.689 INFO    ] Door Opening for user mobile ending with  three three four six 
[2026-06-05 16:27:30,711.711 INFO    ] Door Opening for user mobile ending with  three three four six 
[2026-06-05 16:27:30,733.733 INFO    ] 079ab36f7e414ed3b19ad78f332cc4e7
[2026-06-05 16:27:30,746.746 INFO    ] 2026-06-05 16:27:30
[2026-06-05 16:27:30,767.767 INFO    ] creating audio file
[2026-06-05 16:27:31,350.350 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-05 16:27:31,968.968 INFO    ] gTTS API call completed successfully
[2026-06-05 16:27:33,356.356 INFO    ] 2026-06-05 16:27:33
[2026-06-05 16:27:33,359.359 INFO    ] playing audio file
[2026-06-05 16:27:33,376.376 INFO    ] 2026-06-05 16:27:33
[2026-06-05 16:27:33,379.379 INFO    ] 2026-06-05 16:27:33
[2026-06-05 16:27:33,382.382 INFO    ] publish_status: order_id=TM07202501260605162539906
[2026-06-05 16:27:33,385.385 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162539906
[2026-06-05 16:27:33,472.472 INFO    ] [publish_status] Message added to stream with ID: 1780657053435-0
[2026-06-05 16:27:33,475.475 INFO    ] Published to order:TM07202501260605162539906: {'timestamp': '2026-06-05T10:57:33.380910Z', 'order_id': 'TM07202501260605162539906', 'server_status': 'order-started', 'server_response': '{"rstatus": true, "data": {"proposed_sku_json": [{"tray_id": "12", "offer_desc": "", "skuid": "4500623", "sku_total": 19, "door_id": "1", "name": "Madmix Lemon Mirchi Millet Bhujia 27gm", "mrp": "20", "offer_id": "4500623_0701", "image_url": "https://images.tinymart.in/product/4500623-9349.webp", "unit_price": 19, "qty": 1}, {"tray_id": "26", "offer_desc": "", "skuid": "4500647", "sku_total": 10, "door_id": "1", "name": "Modern kitchens Roasted Channa 32g", "mrp": "10", "offer_id": "", "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "unit_price": 10, "qty": 1}], "order_id": "TM07202501260605162539906", "bill_amount": "29", "access_code": "70967617", "mobile": "7019763346", "invoice_bill": "29"}, "status": true, "msg": "Order Data"}'} (ID: 1780657053435-0)
[2026-06-05 16:27:33,962.962 INFO    ] {'order_id': 'TM07202501260605162539906', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'data': {'proposed_sku_json': [{'tray_id': '12', 'offer_desc': '', 'skuid': '4500623', 'sku_total': 19, 'door_id': '1', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm', 'mrp': '20', 'offer_id': '4500623_0701', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'unit_price': 19, 'qty': 1}, {'tray_id': '26', 'offer_desc': '', 'skuid': '4500647', 'sku_total': 10, 'door_id': '1', 'name': 'Modern kitchens Roasted Channa 32g', 'mrp': '10', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'unit_price': 10, 'qty': 1}], 'order_id': 'TM07202501260605162539906', 'bill_amount': '29', 'access_code': '70967617', 'mobile': '7019763346', 'invoice_bill': '29'}, 'status': True, 'msg': 'Order Data'}}
[2026-06-05 16:27:33,964.964 INFO    ] 200
[2026-06-05 16:27:33,967.967 INFO    ] {"data":{"order_id":"TM07202501260605162539906","server_status":"order-started","server_response":{"rstatus":true,"data":{"proposed_sku_json":[{"tray_id":"12","offer_desc":"","skuid":"4500623","sku_total":19,"door_id":"1","name":"Madmix Lemon Mirchi Millet Bhujia 27gm","mrp":"20","offer_id":"4500623_0701","image_url":"https:\/\/images.tinymart.in\/product\/4500623-9349.webp","unit_price":19,"qty":1},{"tray_id":"26","offer_desc":"","skuid":"4500647","sku_total":10,"door_id":"1","name":"Modern kitchens Roasted Channa 32g","mrp":"10","offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","unit_price":10,"qty":1}],"order_id":"TM07202501260605162539906","bill_amount":"29","access_code":"70967617","mobile":"7019763346","invoice_bill":"29"},"status":true,"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:27:33,970.970 INFO    ] {'data': {'order_id': 'TM07202501260605162539906', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'data': {'proposed_sku_json': [{'tray_id': '12', 'qty': 1, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'sku_total': 19, 'door_id': '1', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm', 'skuid': '4500623', 'mrp': '20', 'unit_price': 19, 'offer_id': '4500623_0701'}, {'tray_id': '26', 'qty': 1, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'sku_total': 10, 'door_id': '1', 'name': 'Modern kitchens Roasted Channa 32g', 'skuid': '4500647', 'mrp': '10', 'unit_price': 10, 'offer_id': ''}], 'access_code': '70967617', 'bill_amount': '29', 'order_id': 'TM07202501260605162539906', 'mobile': '7019763346', 'invoice_bill': '29'}, 'status': True, 'msg': 'Order Data'}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-05 16:27:33,973.973 INFO    ] 2026-06-05 16:27:33
[2026-06-05 16:27:34,026.026 INFO    ] 200
[2026-06-05 16:27:34,029.029 INFO    ] True
[2026-06-05 16:27:34,195.195 INFO    ] 200
[2026-06-05 16:27:34,198.198 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:27:34,201.201 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-05 16:27:34,204.204 INFO    ] *** process_order ***
[2026-06-05 16:27:35,318.318 INFO    ] 200
[2026-06-05 16:27:35,320.320 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:27:35,324.324 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-05 16:27:35,326.326 INFO    ] *** process_order ***
[2026-06-05 16:27:36,443.443 INFO    ] 200
[2026-06-05 16:27:36,446.446 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:27:36,449.449 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-05 16:27:36,452.452 INFO    ] *** process_order ***
[2026-06-05 16:27:37,634.634 INFO    ] 200
[2026-06-05 16:27:37,636.636 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "delay": 0, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True"}
[2026-06-05 16:27:37,639.639 INFO    ] {'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-06-05 16:27:37,642.642 INFO    ] *** process_order ***
[2026-06-05 16:27:37,645.645 INFO    ] publish_status: order_id=TM07202501260605162539906
[2026-06-05 16:27:37,647.647 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162539906
[2026-06-05 16:27:37,743.743 INFO    ] [publish_status] Message added to stream with ID: 1780657057706-0
[2026-06-05 16:27:37,746.746 INFO    ] Published to order:TM07202501260605162539906: {'order_id': 'TM07202501260605162539906', 'server_status': 'doorOpened', 'server_response': '{"delay": 0, "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "You can pull the door now."}, "SectionMain": {"Header": "Processing Order"}, "status": "True"}'} (ID: 1780657057706-0)
[2026-06-05 16:27:38,803.803 INFO    ] 2026-06-05 16:27:38
[2026-06-05 16:27:38,806.806 INFO    ] publish_status: order_id=TM07202501260605162539906
[2026-06-05 16:27:38,809.809 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162539906
[2026-06-05 16:27:38,896.896 INFO    ] [publish_status] Message added to stream with ID: 1780657058859-0
[2026-06-05 16:27:38,899.899 INFO    ] Published to order:TM07202501260605162539906: {'timestamp': '2026-06-05T10:57:38.804453Z', 'order_id': 'TM07202501260605162539906', 'server_status': 'processOrder', 'server_response': '{"delay": 0, "voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order"}, "SectionMain": {"Header": "Processing Order"}, "status": "True"}'} (ID: 1780657058859-0)
[2026-06-05 16:27:39,361.361 INFO    ] {'order_id': 'TM07202501260605162539906', 'server_status': 'processOrder', 'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}}
[2026-06-05 16:27:39,364.364 INFO    ] 200
[2026-06-05 16:27:39,367.367 INFO    ] {"data":{"order_id":"TM07202501260605162539906","server_status":"processOrder","server_response":{"delay":0,"voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true,"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","Note":"","SubHeader":"Please wait while we process your order"},"SectionMain":{"Header":"Processing Order"},"status":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:27:39,370.370 INFO    ] {'data': {'order_id': 'TM07202501260605162539906', 'server_status': 'processOrder', 'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true'}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-05 16:27:39,373.373 INFO    ] 2026-06-05 16:27:39
[2026-06-05 16:27:39,376.376 INFO    ] None
[2026-06-05 16:27:39,378.378 INFO    ] Opening Door now
[2026-06-05 16:27:39,381.381 INFO    ] Opening Door now
[2026-06-05 16:27:39,384.384 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-05 16:27:39,387.387 INFO    ] 2026-06-05 16:27:39
[2026-06-05 16:27:39,390.390 INFO    ] playing audio file
[2026-06-05 16:27:39,408.408 INFO    ] 2026-06-05 16:27:39
[2026-06-05 16:27:39,411.411 INFO    ] 2026-06-05 16:27:39
[2026-06-05 16:27:42,485.485 INFO    ] 200
[2026-06-05 16:27:42,488.488 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Madmix Lemon Mirchi Millet Bhujia 27gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:27:42,491.491 INFO    ] {'voiceNote': 'Door 1 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-05 16:27:45,633.633 INFO    ] 200
[2026-06-05 16:27:45,636.636 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Madmix Lemon Mirchi Millet Bhujia 27gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:27:45,640.640 INFO    ] {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-05 16:27:48,700.700 INFO    ] 200
[2026-06-05 16:27:48,702.702 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Madmix Lemon Mirchi Millet Bhujia 27gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 16:27:48,705.705 INFO    ] Please close door 1
[2026-06-05 16:27:48,711.711 INFO    ] Please close door 1
[2026-06-05 16:27:48,714.714 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-05 16:27:48,717.717 INFO    ] 2026-06-05 16:27:48
[2026-06-05 16:27:48,719.719 INFO    ] playing audio file
[2026-06-05 16:27:48,738.738 INFO    ] 2026-06-05 16:27:48
[2026-06-05 16:27:48,742.742 INFO    ] publish_status: order_id=TM07202501260605162539906
[2026-06-05 16:27:48,745.745 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162539906
[2026-06-05 16:27:48,883.883 INFO    ] [publish_status] Message added to stream with ID: 1780657068847-0
[2026-06-05 16:27:48,886.886 INFO    ] Published to order:TM07202501260605162539906: {'timestamp': '2026-06-05T10:57:48.740249Z', 'order_id': 'TM07202501260605162539906', 'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "status": "False"}'} (ID: 1780657068847-0)
[2026-06-05 16:27:49,417.417 INFO    ] {'order_id': 'TM07202501260605162539906', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}}
[2026-06-05 16:27:49,420.420 INFO    ] 200
[2026-06-05 16:27:49,423.423 INFO    ] {"data":{"order_id":"TM07202501260605162539906","server_status":"OrderStatus","server_response":{"voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Madmix Lemon Mirchi Millet Bhujia 27gm"},{"qty":1,"name":"Modern kitchens Roasted Channa 32g"}]},"rstatus":false,"SectionStatus":{"Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door"},"SectionMain":{"Header":"Door Open"},"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:27:49,427.427 INFO    ] {'data': {'order_id': 'TM07202501260605162539906', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': []}, 'status': 'false'}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-05 16:27:49,430.430 INFO    ] {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-05 16:27:52,496.496 INFO    ] 200
[2026-06-05 16:27:52,499.499 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": true, "delay": 100, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True"}
[2026-06-05 16:27:52,503.503 INFO    ] {'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-05 16:27:52,507.507 INFO    ] 2026-06-05 16:27:52
[2026-06-05 16:27:52,510.510 INFO    ] Order Completed 
[2026-06-05 16:27:52,513.513 INFO    ] Order Completed 
[2026-06-05 16:27:52,517.517 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-05 16:27:52,520.520 INFO    ] 2026-06-05 16:27:52
[2026-06-05 16:27:52,524.524 INFO    ] playing audio file
[2026-06-05 16:27:52,544.544 INFO    ] 2026-06-05 16:27:52
[2026-06-05 16:27:52,548.548 INFO    ] {'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-05 16:27:52,552.552 INFO    ] 2026-06-05 16:27:52
[2026-06-05 16:27:54,560.560 INFO    ] 200
[2026-06-05 16:27:54,563.563 INFO    ] {"rstatus": true, "skus": [{"skuid": "4500623", "tray_id": "12", "sku_total": 19.0, "unit_price": "19", "door_id": "", "image_url": "https://images.tinymart.in/product/4500623-9349.webp", "mrp": "20", "qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm per peice"}, {"skuid": "4500647", "tray_id": "26", "sku_total": 10.0, "unit_price": "10", "door_id": "", "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "mrp": "10", "qty": 1, "name": "Modern kitchens Roasted Channa 32g per peice"}], "logic": "WBL", "anomaly": 0, "total_amount": 29.0, "orderId": "TM07202501260605162539906", "res": "True"}
[2026-06-05 16:27:54,568.568 INFO    ] {'res': 'True', 'orderId': 'TM07202501260605162539906', 'logic': 'WBL', 'skus': [{'tray_id': '12', 'skuid': '4500623', 'sku_total': 19.0, 'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'mrp': '20', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'unit_price': '19'}, {'tray_id': '26', 'skuid': '4500647', 'sku_total': 10.0, 'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'unit_price': '10'}], 'rstatus': True, 'anomaly': 0, 'total_amount': 29.0}
[2026-06-05 16:27:54,571.571 INFO    ] {'res': 'True', 'orderId': 'TM07202501260605162539906', 'logic': 'WBL', 'skus': [{'tray_id': '12', 'skuid': '4500623', 'sku_total': 19.0, 'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'mrp': '20', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'unit_price': '19'}, {'tray_id': '26', 'skuid': '4500647', 'sku_total': 10.0, 'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'unit_price': '10'}], 'rstatus': True, 'anomaly': 0, 'total_amount': 29.0}
[2026-06-05 16:27:54,575.575 INFO    ] 2026-06-05 16:27:54
[2026-06-05 16:27:54,579.579 INFO    ] 2026-06-05 16:27:54
[2026-06-05 16:27:54,582.582 INFO    ] 29
[2026-06-05 16:27:54,586.586 INFO    ] 2026-06-05 16:27:54
[2026-06-05 16:27:54,589.589 INFO    ] 2026-06-05 16:27:54
[2026-06-05 16:27:54,592.592 INFO    ]  Your Bill Amount is 29
[2026-06-05 16:27:54,595.595 INFO    ]  Your Bill Amount is 29
[2026-06-05 16:27:54,598.598 INFO    ] b346f735c8506150aeaa341549eae517
[2026-06-05 16:27:54,601.601 INFO    ] 2026-06-05 16:27:54
[2026-06-05 16:27:54,604.604 INFO    ] playing audio file
[2026-06-05 16:27:54,622.622 INFO    ] 2026-06-05 16:27:54
[2026-06-05 16:27:54,626.626 INFO    ] 2026-06-05 16:27:54
[2026-06-05 16:27:54,631.631 INFO    ] publish_status: order_id=TM07202501260605162539906
[2026-06-05 16:27:54,635.635 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605162539906
[2026-06-05 16:27:54,726.726 INFO    ] [publish_status] Message added to stream with ID: 1780657074687-0
[2026-06-05 16:27:54,729.729 INFO    ] Published to order:TM07202501260605162539906: {'timestamp': '2026-06-05T10:57:54.628434Z', 'order_id': 'TM07202501260605162539906', 'server_status': 'invoiceOrder', 'server_response': '{"res": "True", "orderId": "TM07202501260605162539906", "logic": "WBL", "skus": [{"tray_id": "12", "skuid": "4500623", "sku_total": 19.0, "door_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/4500623-9349.webp", "mrp": "20", "name": "Madmix Lemon Mirchi Millet Bhujia 27gm per peice", "unit_price": "19"}, {"tray_id": "26", "skuid": "4500647", "sku_total": 10.0, "door_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "mrp": "10", "name": "Modern kitchens Roasted Channa 32g per peice", "unit_price": "10"}], "rstatus": true, "anomaly": 0, "total_amount": 29.0}'} (ID: 1780657074687-0)
[2026-06-05 16:27:55,228.228 INFO    ] {'order_id': 'TM07202501260605162539906', 'server_status': 'invoiceOrder', 'server_response': {'res': 'True', 'orderId': 'TM07202501260605162539906', 'logic': 'WBL', 'skus': [{'tray_id': '12', 'skuid': '4500623', 'sku_total': 19.0, 'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'mrp': '20', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'unit_price': '19'}, {'tray_id': '26', 'skuid': '4500647', 'sku_total': 10.0, 'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'unit_price': '10'}], 'rstatus': True, 'anomaly': 0, 'total_amount': 29.0}}
[2026-06-05 16:27:55,231.231 INFO    ] 200
[2026-06-05 16:27:55,234.234 INFO    ] {"data":{"order_id":"TM07202501260605162539906","server_status":"invoiceOrder","server_response":{"res":"true","orderId":"TM07202501260605162539906","logic":"WBL","skus":[{"tray_id":"12","skuid":"4500623","sku_total":19,"door_id":"","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500623-9349.webp","mrp":"20","name":"Madmix Lemon Mirchi Millet Bhujia 27gm per peice","unit_price":"19"},{"tray_id":"26","skuid":"4500647","sku_total":10,"door_id":"","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","mrp":"10","name":"Modern kitchens Roasted Channa 32g per peice","unit_price":"10"}],"rstatus":true,"anomaly":0,"total_amount":29}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 16:27:55,237.237 INFO    ] {'data': {'order_id': 'TM07202501260605162539906', 'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'orderId': 'TM07202501260605162539906', 'logic': 'WBL', 'skus': [{'tray_id': '12', 'skuid': '4500623', 'sku_total': 19, 'door_id': '', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'mrp': '20', 'unit_price': '19', 'qty': 1}, {'tray_id': '26', 'skuid': '4500647', 'sku_total': 10, 'door_id': '', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'mrp': '10', 'unit_price': '10', 'qty': 1}], 'rstatus': True, 'anomaly': 0, 'total_amount': 29}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-05 16:27:55,241.241 INFO    ] {'data': {'order_id': 'TM07202501260605162539906', 'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'orderId': 'TM07202501260605162539906', 'logic': 'WBL', 'skus': [{'tray_id': '12', 'skuid': '4500623', 'sku_total': 19, 'door_id': '', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'mrp': '20', 'unit_price': '19', 'qty': 1}, {'tray_id': '26', 'skuid': '4500647', 'sku_total': 10, 'door_id': '', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'mrp': '10', 'unit_price': '10', 'qty': 1}], 'rstatus': True, 'anomaly': 0, 'total_amount': 29}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-05 16:27:55,244.244 INFO    ] 2026-06-05 16:27:55
[2026-06-05 16:27:56,903.903 INFO    ] 200
[2026-06-05 16:27:56,907.907 INFO    ] {"orders": [], "orders_synced": [], "order_items_synced": [], "orders_data": [], "tray_synced": ["TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906", "TM07202501260605162539906"], "orders_data_synced": [], "order_items": [], "tray_sync": [], "status": true}
[2026-06-05 16:27:56,910.910 INFO    ] 2026-06-05 16:27:56
[2026-06-05 16:27:57,013.013 INFO    ] 200
[2026-06-05 16:27:57,016.016 INFO    ] True
[2026-06-05 16:27:57,019.019 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260605162539906
[2026-06-05 16:27:57,023.023 INFO    ] start order file deleted
[2026-06-05 16:27:57,026.026 INFO    ] Checking for system updates...
[2026-06-05 16:27:57,076.076 INFO    ] 200
[2026-06-05 16:27:57,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:27:57,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:27:57,145.145 INFO    ] No update needed
[2026-06-05 16:27:57,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 16:27:57,192.192 INFO    ] 200
[2026-06-05 16:27:57,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:27:57,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:27:57,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:27:57,306.306 INFO    ] No camera update needed
[2026-06-05 16:27:57,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:27:57,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:27:57,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:27:57,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:27:59,367.367 INFO    ] ================================================
[2026-06-05 16:27:59,382.382 INFO    ] Launching Daemon at Fri Jun  5 16:27:59 IST 2026
[2026-06-05 16:27:59,393.393 INFO    ] ================================================
[2026-06-05 16:27:59,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:27:59
[2026-06-05 16:28:00,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:28:00,842.842 INFO    ] Initializing speech engine...
[2026-06-05 16:28:00,852.852 INFO    ] 2026-06-05 16:28:00
[2026-06-05 16:28:01,110.110 INFO    ] 2026-06-05 16:28:01
[2026-06-05 16:28:01,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:28:01,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:28:01,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:28:01,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:28:01,521.521 INFO    ] time= 05/06/2026 16:28:01
[2026-06-05 16:28:01,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:28:01,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:28:01,599.599 INFO    ] No existing commands found in stream
[2026-06-05 16:28:06,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:28:06,618.618 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 16:28:09,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:28:09,095.095 INFO    ] Checking for system updates...
[2026-06-05 16:28:09,136.136 INFO    ] 200
[2026-06-05 16:28:09,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:09,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:28:09,199.199 INFO    ] No update needed
[2026-06-05 16:28:09,202.202 INFO    ] Checking for camera pi updates...
[2026-06-05 16:28:09,236.236 INFO    ] 200
[2026-06-05 16:28:09,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:09,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:28:09,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:28:09,343.343 INFO    ] No camera update needed
[2026-06-05 16:28:09,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:28:09,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:28:09,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:28:09,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:28:11,400.400 INFO    ] ================================================
[2026-06-05 16:28:11,416.416 INFO    ] Launching Daemon at Fri Jun  5 16:28:11 IST 2026
[2026-06-05 16:28:11,427.427 INFO    ] ================================================
[2026-06-05 16:28:12,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:28:12
[2026-06-05 16:28:12,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:28:12,925.925 INFO    ] Initializing speech engine...
[2026-06-05 16:28:12,933.933 INFO    ] 2026-06-05 16:28:12
[2026-06-05 16:28:13,184.184 INFO    ] 2026-06-05 16:28:13
[2026-06-05 16:28:13,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:28:13,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:28:13,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:28:13,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:28:13,665.665 INFO    ] time= 05/06/2026 16:28:13
[2026-06-05 16:28:13,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:28:13,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:28:13,886.886 INFO    ] No existing commands found in stream
[2026-06-05 16:28:18,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:28:18,914.914 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-05 16:28:19,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:28:19,365.365 INFO    ] Checking for system updates...
[2026-06-05 16:28:19,401.401 INFO    ] 200
[2026-06-05 16:28:19,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:19,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:28:19,459.459 INFO    ] No update needed
[2026-06-05 16:28:19,461.461 INFO    ] Checking for camera pi updates...
[2026-06-05 16:28:19,494.494 INFO    ] 200
[2026-06-05 16:28:19,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:19,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:28:19,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:28:19,590.590 INFO    ] No camera update needed
[2026-06-05 16:28:19,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:28:19,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:28:19,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:28:19,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:28:21,649.649 INFO    ] ================================================
[2026-06-05 16:28:21,666.666 INFO    ] Launching Daemon at Fri Jun  5 16:28:21 IST 2026
[2026-06-05 16:28:21,677.677 INFO    ] ================================================
[2026-06-05 16:28:22,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:28:22
[2026-06-05 16:28:22,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:28:23,135.135 INFO    ] Initializing speech engine...
[2026-06-05 16:28:23,143.143 INFO    ] 2026-06-05 16:28:23
[2026-06-05 16:28:23,401.401 INFO    ] 2026-06-05 16:28:23
[2026-06-05 16:28:23,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:28:24,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:28:24,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:28:24,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:28:24,823.823 INFO    ] time= 05/06/2026 16:28:24
[2026-06-05 16:28:24,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:28:24,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:28:24,926.926 INFO    ] No existing commands found in stream
[2026-06-05 16:28:29,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:28:29,941.941 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 16:28:34,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:28:34,087.087 INFO    ] Checking for system updates...
[2026-06-05 16:28:34,124.124 INFO    ] 200
[2026-06-05 16:28:34,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:34,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:28:34,182.182 INFO    ] No update needed
[2026-06-05 16:28:34,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 16:28:34,219.219 INFO    ] 200
[2026-06-05 16:28:34,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:34,264.264 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:28:34,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:28:34,309.309 INFO    ] No camera update needed
[2026-06-05 16:28:34,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:28:34,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:28:34,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:28:34,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:28:36,366.366 INFO    ] ================================================
[2026-06-05 16:28:36,382.382 INFO    ] Launching Daemon at Fri Jun  5 16:28:36 IST 2026
[2026-06-05 16:28:36,392.392 INFO    ] ================================================
[2026-06-05 16:28:37,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:28:36
[2026-06-05 16:28:37,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:28:37,988.988 INFO    ] Initializing speech engine...
[2026-06-05 16:28:37,997.997 INFO    ] 2026-06-05 16:28:37
[2026-06-05 16:28:38,321.321 INFO    ] 2026-06-05 16:28:38
[2026-06-05 16:28:38,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:28:38,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:28:38,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:28:38,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:28:38,768.768 INFO    ] time= 05/06/2026 16:28:38
[2026-06-05 16:28:38,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:28:38,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:28:38,980.980 INFO    ] No existing commands found in stream
[2026-06-05 16:28:44,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:28:44,014.014 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 16:28:45,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:28:45,628.628 INFO    ] Checking for system updates...
[2026-06-05 16:28:45,664.664 INFO    ] 200
[2026-06-05 16:28:45,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:45,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:28:45,725.725 INFO    ] No update needed
[2026-06-05 16:28:45,727.727 INFO    ] Checking for camera pi updates...
[2026-06-05 16:28:45,762.762 INFO    ] 200
[2026-06-05 16:28:45,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:45,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:28:45,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:28:45,861.861 INFO    ] No camera update needed
[2026-06-05 16:28:45,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:28:45,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:28:45,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:28:45,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:28:47,917.917 INFO    ] ================================================
[2026-06-05 16:28:47,932.932 INFO    ] Launching Daemon at Fri Jun  5 16:28:47 IST 2026
[2026-06-05 16:28:47,942.942 INFO    ] ================================================
[2026-06-05 16:28:48,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:28:48
[2026-06-05 16:28:49,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:28:49,373.373 INFO    ] Initializing speech engine...
[2026-06-05 16:28:49,382.382 INFO    ] 2026-06-05 16:28:49
[2026-06-05 16:28:49,640.640 INFO    ] 2026-06-05 16:28:49
[2026-06-05 16:28:49,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:28:49,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:28:49,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:28:50,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:28:50,104.104 INFO    ] time= 05/06/2026 16:28:50
[2026-06-05 16:28:50,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:28:50,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:28:50,299.299 INFO    ] No existing commands found in stream
[2026-06-05 16:28:55,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:28:55,324.324 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 16:28:59,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:28:59,098.098 INFO    ] Checking for system updates...
[2026-06-05 16:28:59,134.134 INFO    ] 200
[2026-06-05 16:28:59,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:59,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:28:59,191.191 INFO    ] No update needed
[2026-06-05 16:28:59,194.194 INFO    ] Checking for camera pi updates...
[2026-06-05 16:28:59,227.227 INFO    ] 200
[2026-06-05 16:28:59,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:28:59,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:28:59,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:28:59,314.314 INFO    ] No camera update needed
[2026-06-05 16:28:59,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:28:59,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:28:59,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:28:59,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:29:01,389.389 INFO    ] ================================================
[2026-06-05 16:29:01,444.444 INFO    ] Launching Daemon at Fri Jun  5 16:29:01 IST 2026
[2026-06-05 16:29:01,469.469 INFO    ] ================================================
[2026-06-05 16:29:02,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:29:02
[2026-06-05 16:29:02,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:29:03,243.243 INFO    ] Initializing speech engine...
[2026-06-05 16:29:03,253.253 INFO    ] 2026-06-05 16:29:03
[2026-06-05 16:29:03,549.549 INFO    ] 2026-06-05 16:29:03
[2026-06-05 16:29:03,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:29:03,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:29:03,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:29:03,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:29:03,948.948 INFO    ] time= 05/06/2026 16:29:03
[2026-06-05 16:29:03,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:29:04,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:29:04,151.151 INFO    ] No existing commands found in stream
[2026-06-05 16:29:09,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:29:09,164.164 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 16:29:10,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:29:10,076.076 INFO    ] Checking for system updates...
[2026-06-05 16:29:10,112.112 INFO    ] 200
[2026-06-05 16:29:10,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:29:10,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:29:10,179.179 INFO    ] No update needed
[2026-06-05 16:29:10,182.182 INFO    ] Checking for camera pi updates...
[2026-06-05 16:29:10,218.218 INFO    ] 200
[2026-06-05 16:29:10,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:29:10,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:29:10,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:29:10,304.304 INFO    ] No camera update needed
[2026-06-05 16:29:10,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:29:10,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:29:10,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:29:10,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:29:12,361.361 INFO    ] ================================================
[2026-06-05 16:29:12,376.376 INFO    ] Launching Daemon at Fri Jun  5 16:29:12 IST 2026
[2026-06-05 16:29:12,387.387 INFO    ] ================================================
[2026-06-05 16:29:12,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:29:12
[2026-06-05 16:29:13,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:29:13,815.815 INFO    ] Initializing speech engine...
[2026-06-05 16:29:13,824.824 INFO    ] 2026-06-05 16:29:13
[2026-06-05 16:29:14,074.074 INFO    ] 2026-06-05 16:29:14
[2026-06-05 16:29:14,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:29:14,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:29:14,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:29:14,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:29:14,557.557 INFO    ] time= 05/06/2026 16:29:14
[2026-06-05 16:29:14,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:29:14,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:29:14,789.789 INFO    ] No existing commands found in stream
[2026-06-05 16:29:19,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:29:19,818.818 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 16:29:24,877.877 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:29:24,879.879 INFO    ] Checking for system updates...
[2026-06-05 16:29:24,915.915 INFO    ] 200
[2026-06-05 16:29:24,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:29:24,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:29:24,973.973 INFO    ] No update needed
[2026-06-05 16:29:24,975.975 INFO    ] Checking for camera pi updates...
[2026-06-05 16:29:25,012.012 INFO    ] 200
[2026-06-05 16:29:25,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:29:25,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:29:25,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:29:25,107.107 INFO    ] No camera update needed
[2026-06-05 16:29:25,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:29:25,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:29:25,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:29:25,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:29:27,163.163 INFO    ] ================================================
[2026-06-05 16:29:27,178.178 INFO    ] Launching Daemon at Fri Jun  5 16:29:27 IST 2026
[2026-06-05 16:29:27,188.188 INFO    ] ================================================
[2026-06-05 16:29:27,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:29:27
[2026-06-05 16:29:28,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:29:28,644.644 INFO    ] Initializing speech engine...
[2026-06-05 16:29:28,651.651 INFO    ] 2026-06-05 16:29:28
[2026-06-05 16:29:28,910.910 INFO    ] 2026-06-05 16:29:28
[2026-06-05 16:29:28,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:29:29,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:29:29,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:29:29,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:29:29,368.368 INFO    ] time= 05/06/2026 16:29:29
[2026-06-05 16:29:29,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:29:29,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:29:29,594.594 INFO    ] No existing commands found in stream
[2026-06-05 16:29:34,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:29:34,621.621 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 16:29:37,650.650 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:29:37,653.653 INFO    ] Checking for system updates...
[2026-06-05 16:29:37,689.689 INFO    ] 200
[2026-06-05 16:29:37,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:29:37,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:29:37,749.749 INFO    ] No update needed
[2026-06-05 16:29:37,752.752 INFO    ] Checking for camera pi updates...
[2026-06-05 16:29:37,786.786 INFO    ] 200
[2026-06-05 16:29:37,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:29:37,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:29:37,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:29:37,883.883 INFO    ] No camera update needed
[2026-06-05 16:29:37,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:29:37,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:29:37,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:29:37,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:29:39,941.941 INFO    ] ================================================
[2026-06-05 16:29:39,956.956 INFO    ] Launching Daemon at Fri Jun  5 16:29:39 IST 2026
[2026-06-05 16:29:39,967.967 INFO    ] ================================================
[2026-06-05 16:29:40,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:29:40
[2026-06-05 16:29:41,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:29:41,366.366 INFO    ] Initializing speech engine...
[2026-06-05 16:29:41,387.387 INFO    ] 2026-06-05 16:29:41
[2026-06-05 16:29:41,647.647 INFO    ] 2026-06-05 16:29:41
[2026-06-05 16:29:41,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:29:41,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:29:41,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:29:42,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:29:42,022.022 INFO    ] time= 05/06/2026 16:29:42
[2026-06-05 16:29:42,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:29:42,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:29:42,213.213 INFO    ] No existing commands found in stream
[2026-06-05 16:29:47,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:29:47,238.238 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 16:29:50,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:29:50,730.730 INFO    ] Checking for system updates...
[2026-06-05 16:29:50,769.769 INFO    ] 200
[2026-06-05 16:29:50,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:29:50,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:29:50,826.826 INFO    ] No update needed
[2026-06-05 16:29:50,829.829 INFO    ] Checking for camera pi updates...
[2026-06-05 16:29:50,866.866 INFO    ] 200
[2026-06-05 16:29:50,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:29:50,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:29:51,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:29:51,061.061 INFO    ] No camera update needed
[2026-06-05 16:29:51,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:29:51,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:29:51,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:29:51,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:29:53,116.116 INFO    ] ================================================
[2026-06-05 16:29:53,130.130 INFO    ] Launching Daemon at Fri Jun  5 16:29:53 IST 2026
[2026-06-05 16:29:53,141.141 INFO    ] ================================================
[2026-06-05 16:29:53,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:29:53
[2026-06-05 16:29:54,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:29:54,546.546 INFO    ] Initializing speech engine...
[2026-06-05 16:29:54,560.560 INFO    ] 2026-06-05 16:29:54
[2026-06-05 16:29:54,825.825 INFO    ] 2026-06-05 16:29:54
[2026-06-05 16:29:54,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:29:55,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:29:55,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:29:55,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:29:55,306.306 INFO    ] time= 05/06/2026 16:29:55
[2026-06-05 16:29:55,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:29:55,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:29:55,522.522 INFO    ] No existing commands found in stream
[2026-06-05 16:30:00,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:30:00,560.560 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 16:30:02,703.703 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:30:02,706.706 INFO    ] Checking for system updates...
[2026-06-05 16:30:02,762.762 INFO    ] 200
[2026-06-05 16:30:02,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:02,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:30:02,836.836 INFO    ] No update needed
[2026-06-05 16:30:02,840.840 INFO    ] Checking for camera pi updates...
[2026-06-05 16:30:02,883.883 INFO    ] 200
[2026-06-05 16:30:02,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:02,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:30:02,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:30:02,993.993 INFO    ] No camera update needed
[2026-06-05 16:30:02,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:30:03,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:30:03,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:30:03,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:30:05,056.056 INFO    ] ================================================
[2026-06-05 16:30:05,071.071 INFO    ] Launching Daemon at Fri Jun  5 16:30:05 IST 2026
[2026-06-05 16:30:05,087.087 INFO    ] ================================================
[2026-06-05 16:30:05,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:30:05
[2026-06-05 16:30:06,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:30:06,497.497 INFO    ] Initializing speech engine...
[2026-06-05 16:30:06,505.505 INFO    ] 2026-06-05 16:30:06
[2026-06-05 16:30:06,800.800 INFO    ] 2026-06-05 16:30:06
[2026-06-05 16:30:06,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:30:07,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:30:07,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:30:07,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:30:07,239.239 INFO    ] time= 05/06/2026 16:30:07
[2026-06-05 16:30:07,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:30:07,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:30:07,325.325 INFO    ] No existing commands found in stream
[2026-06-05 16:30:12,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:30:12,358.358 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 16:30:14,330.330 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:30:14,332.332 INFO    ] Checking for system updates...
[2026-06-05 16:30:14,368.368 INFO    ] 200
[2026-06-05 16:30:14,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:14,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:30:14,432.432 INFO    ] No update needed
[2026-06-05 16:30:14,434.434 INFO    ] Checking for camera pi updates...
[2026-06-05 16:30:14,471.471 INFO    ] 200
[2026-06-05 16:30:14,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:14,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:30:14,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:30:14,557.557 INFO    ] No camera update needed
[2026-06-05 16:30:14,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:30:14,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:30:14,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:30:14,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:30:16,612.612 INFO    ] ================================================
[2026-06-05 16:30:16,628.628 INFO    ] Launching Daemon at Fri Jun  5 16:30:16 IST 2026
[2026-06-05 16:30:16,639.639 INFO    ] ================================================
[2026-06-05 16:30:17,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:30:17
[2026-06-05 16:30:17,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:30:18,248.248 INFO    ] Initializing speech engine...
[2026-06-05 16:30:18,261.261 INFO    ] 2026-06-05 16:30:18
[2026-06-05 16:30:18,572.572 INFO    ] 2026-06-05 16:30:18
[2026-06-05 16:30:18,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:30:18,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:30:18,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:30:19,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:30:19,080.080 INFO    ] time= 05/06/2026 16:30:19
[2026-06-05 16:30:19,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:30:19,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:30:19,239.239 INFO    ] No existing commands found in stream
[2026-06-05 16:30:24,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:30:24,268.268 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 16:30:26,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:30:26,361.361 INFO    ] Checking for system updates...
[2026-06-05 16:30:26,402.402 INFO    ] 200
[2026-06-05 16:30:26,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:26,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:30:26,461.461 INFO    ] No update needed
[2026-06-05 16:30:26,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 16:30:26,499.499 INFO    ] 200
[2026-06-05 16:30:26,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:26,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:30:26,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:30:26,588.588 INFO    ] No camera update needed
[2026-06-05 16:30:26,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:30:26,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:30:26,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:30:26,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:30:28,647.647 INFO    ] ================================================
[2026-06-05 16:30:28,663.663 INFO    ] Launching Daemon at Fri Jun  5 16:30:28 IST 2026
[2026-06-05 16:30:28,673.673 INFO    ] ================================================
[2026-06-05 16:30:29,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:30:29
[2026-06-05 16:30:29,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:30:30,217.217 INFO    ] Initializing speech engine...
[2026-06-05 16:30:30,224.224 INFO    ] 2026-06-05 16:30:30
[2026-06-05 16:30:30,508.508 INFO    ] 2026-06-05 16:30:30
[2026-06-05 16:30:30,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:30:31,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:30:31,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:30:31,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:30:31,468.468 INFO    ] time= 05/06/2026 16:30:31
[2026-06-05 16:30:31,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:30:31,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:30:31,599.599 INFO    ] No existing commands found in stream
[2026-06-05 16:30:36,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:30:36,623.623 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 16:30:37,195.195 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:30:37,198.198 INFO    ] Checking for system updates...
[2026-06-05 16:30:37,239.239 INFO    ] 200
[2026-06-05 16:30:37,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:37,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:30:37,311.311 INFO    ] No update needed
[2026-06-05 16:30:37,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 16:30:37,357.357 INFO    ] 200
[2026-06-05 16:30:37,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:37,403.403 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:30:37,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:30:37,449.449 INFO    ] No camera update needed
[2026-06-05 16:30:37,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:30:37,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:30:37,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:30:37,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:30:39,507.507 INFO    ] ================================================
[2026-06-05 16:30:39,522.522 INFO    ] Launching Daemon at Fri Jun  5 16:30:39 IST 2026
[2026-06-05 16:30:39,534.534 INFO    ] ================================================
[2026-06-05 16:30:40,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:30:40
[2026-06-05 16:30:40,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:30:40,958.958 INFO    ] Initializing speech engine...
[2026-06-05 16:30:40,964.964 INFO    ] 2026-06-05 16:30:40
[2026-06-05 16:30:41,209.209 INFO    ] 2026-06-05 16:30:41
[2026-06-05 16:30:41,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:30:41,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:30:41,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:30:41,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:30:41,684.684 INFO    ] time= 05/06/2026 16:30:41
[2026-06-05 16:30:41,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:30:41,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:30:41,903.903 INFO    ] No existing commands found in stream
[2026-06-05 16:30:46,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:30:46,931.931 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 16:30:49,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:30:49,239.239 INFO    ] Checking for system updates...
[2026-06-05 16:30:49,276.276 INFO    ] 200
[2026-06-05 16:30:49,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:49,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:30:49,335.335 INFO    ] No update needed
[2026-06-05 16:30:49,338.338 INFO    ] Checking for camera pi updates...
[2026-06-05 16:30:49,374.374 INFO    ] 200
[2026-06-05 16:30:49,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:30:49,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:30:49,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:30:49,470.470 INFO    ] No camera update needed
[2026-06-05 16:30:49,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:30:49,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:30:49,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:30:49,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:30:51,526.526 INFO    ] ================================================
[2026-06-05 16:30:51,541.541 INFO    ] Launching Daemon at Fri Jun  5 16:30:51 IST 2026
[2026-06-05 16:30:51,552.552 INFO    ] ================================================
[2026-06-05 16:30:52,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:30:52
[2026-06-05 16:30:52,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:30:53,145.145 INFO    ] Initializing speech engine...
[2026-06-05 16:30:53,166.166 INFO    ] 2026-06-05 16:30:53
[2026-06-05 16:30:53,440.440 INFO    ] 2026-06-05 16:30:53
[2026-06-05 16:30:53,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:30:54,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:30:54,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:30:55,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:30:55,044.044 INFO    ] time= 05/06/2026 16:30:55
[2026-06-05 16:30:55,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:30:55,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:30:55,119.119 INFO    ] No existing commands found in stream
[2026-06-05 16:31:00,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:31:00,135.135 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 16:31:04,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:31:04,527.527 INFO    ] Checking for system updates...
[2026-06-05 16:31:04,565.565 INFO    ] 200
[2026-06-05 16:31:04,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:04,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:31:04,623.623 INFO    ] No update needed
[2026-06-05 16:31:04,626.626 INFO    ] Checking for camera pi updates...
[2026-06-05 16:31:04,660.660 INFO    ] 200
[2026-06-05 16:31:04,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:04,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:31:04,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:31:04,751.751 INFO    ] No camera update needed
[2026-06-05 16:31:04,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:31:04,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:31:04,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:31:04,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:31:06,806.806 INFO    ] ================================================
[2026-06-05 16:31:06,821.821 INFO    ] Launching Daemon at Fri Jun  5 16:31:06 IST 2026
[2026-06-05 16:31:06,832.832 INFO    ] ================================================
[2026-06-05 16:31:07,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:31:07
[2026-06-05 16:31:08,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:31:08,453.453 INFO    ] Initializing speech engine...
[2026-06-05 16:31:08,464.464 INFO    ] 2026-06-05 16:31:08
[2026-06-05 16:31:08,771.771 INFO    ] 2026-06-05 16:31:08
[2026-06-05 16:31:08,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:31:09,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:31:09,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:31:09,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:31:09,282.282 INFO    ] time= 05/06/2026 16:31:09
[2026-06-05 16:31:09,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:31:09,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:31:09,466.466 INFO    ] No existing commands found in stream
[2026-06-05 16:31:14,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:31:14,501.501 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 16:31:17,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:31:17,758.758 INFO    ] Checking for system updates...
[2026-06-05 16:31:17,795.795 INFO    ] 200
[2026-06-05 16:31:17,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:17,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:31:17,853.853 INFO    ] No update needed
[2026-06-05 16:31:17,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 16:31:17,890.890 INFO    ] 200
[2026-06-05 16:31:17,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:17,934.934 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:31:17,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:31:17,984.984 INFO    ] No camera update needed
[2026-06-05 16:31:17,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:31:17,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:31:17,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:31:17,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:31:20,040.040 INFO    ] ================================================
[2026-06-05 16:31:20,056.056 INFO    ] Launching Daemon at Fri Jun  5 16:31:20 IST 2026
[2026-06-05 16:31:20,067.067 INFO    ] ================================================
[2026-06-05 16:31:20,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:31:20
[2026-06-05 16:31:21,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:31:21,473.473 INFO    ] Initializing speech engine...
[2026-06-05 16:31:21,480.480 INFO    ] 2026-06-05 16:31:21
[2026-06-05 16:31:21,772.772 INFO    ] 2026-06-05 16:31:21
[2026-06-05 16:31:21,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:31:22,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:31:22,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:31:22,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:31:22,149.149 INFO    ] time= 05/06/2026 16:31:22
[2026-06-05 16:31:22,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:31:22,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:31:22,272.272 INFO    ] No existing commands found in stream
[2026-06-05 16:31:27,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:31:27,288.288 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 16:31:31,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:31:31,033.033 INFO    ] Checking for system updates...
[2026-06-05 16:31:31,069.069 INFO    ] 200
[2026-06-05 16:31:31,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:31,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:31:31,131.131 INFO    ] No update needed
[2026-06-05 16:31:31,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 16:31:31,186.186 INFO    ] 200
[2026-06-05 16:31:31,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:31,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:31:31,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:31:31,276.276 INFO    ] No camera update needed
[2026-06-05 16:31:31,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:31:31,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:31:31,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:31:31,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:31:33,335.335 INFO    ] ================================================
[2026-06-05 16:31:33,350.350 INFO    ] Launching Daemon at Fri Jun  5 16:31:33 IST 2026
[2026-06-05 16:31:33,361.361 INFO    ] ================================================
[2026-06-05 16:31:34,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:31:34
[2026-06-05 16:31:34,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:31:34,978.978 INFO    ] Initializing speech engine...
[2026-06-05 16:31:34,985.985 INFO    ] 2026-06-05 16:31:34
[2026-06-05 16:31:35,282.282 INFO    ] 2026-06-05 16:31:35
[2026-06-05 16:31:35,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:31:35,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:31:35,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:31:35,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:31:35,831.831 INFO    ] time= 05/06/2026 16:31:35
[2026-06-05 16:31:35,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:31:35,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:31:35,990.990 INFO    ] No existing commands found in stream
[2026-06-05 16:31:41,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:31:41,009.009 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 16:31:45,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:31:45,136.136 INFO    ] Checking for system updates...
[2026-06-05 16:31:45,172.172 INFO    ] 200
[2026-06-05 16:31:45,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:45,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:31:45,231.231 INFO    ] No update needed
[2026-06-05 16:31:45,233.233 INFO    ] Checking for camera pi updates...
[2026-06-05 16:31:45,271.271 INFO    ] 200
[2026-06-05 16:31:45,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:45,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:31:45,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:31:45,369.369 INFO    ] No camera update needed
[2026-06-05 16:31:45,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:31:45,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:31:45,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:31:45,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:31:47,423.423 INFO    ] ================================================
[2026-06-05 16:31:47,438.438 INFO    ] Launching Daemon at Fri Jun  5 16:31:47 IST 2026
[2026-06-05 16:31:47,449.449 INFO    ] ================================================
[2026-06-05 16:31:48,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:31:48
[2026-06-05 16:31:48,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:31:49,046.046 INFO    ] Initializing speech engine...
[2026-06-05 16:31:49,053.053 INFO    ] 2026-06-05 16:31:49
[2026-06-05 16:31:49,342.342 INFO    ] 2026-06-05 16:31:49
[2026-06-05 16:31:49,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:31:49,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:31:49,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:31:49,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:31:49,813.813 INFO    ] time= 05/06/2026 16:31:49
[2026-06-05 16:31:49,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:31:49,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:31:50,055.055 INFO    ] No existing commands found in stream
[2026-06-05 16:31:55,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:31:55,075.075 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 16:31:57,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:31:57,759.759 INFO    ] Checking for system updates...
[2026-06-05 16:31:57,800.800 INFO    ] 200
[2026-06-05 16:31:57,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:57,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:31:57,860.860 INFO    ] No update needed
[2026-06-05 16:31:57,862.862 INFO    ] Checking for camera pi updates...
[2026-06-05 16:31:57,897.897 INFO    ] 200
[2026-06-05 16:31:57,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:31:57,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:31:58,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:31:58,088.088 INFO    ] No camera update needed
[2026-06-05 16:31:58,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:31:58,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:31:58,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:31:58,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:32:00,143.143 INFO    ] ================================================
[2026-06-05 16:32:00,159.159 INFO    ] Launching Daemon at Fri Jun  5 16:32:00 IST 2026
[2026-06-05 16:32:00,170.170 INFO    ] ================================================
[2026-06-05 16:32:00,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:32:00
[2026-06-05 16:32:01,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:32:01,826.826 INFO    ] Initializing speech engine...
[2026-06-05 16:32:01,834.834 INFO    ] 2026-06-05 16:32:01
[2026-06-05 16:32:02,127.127 INFO    ] 2026-06-05 16:32:02
[2026-06-05 16:32:02,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:32:02,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:32:02,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:32:02,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:32:02,677.677 INFO    ] time= 05/06/2026 16:32:02
[2026-06-05 16:32:02,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:32:02,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:32:02,840.840 INFO    ] No existing commands found in stream
[2026-06-05 16:32:07,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:32:07,856.856 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 16:32:11,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:32:11,132.132 INFO    ] Checking for system updates...
[2026-06-05 16:32:11,170.170 INFO    ] 200
[2026-06-05 16:32:11,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:32:11,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:32:11,235.235 INFO    ] No update needed
[2026-06-05 16:32:11,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 16:32:11,275.275 INFO    ] 200
[2026-06-05 16:32:11,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:32:11,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:32:11,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:32:11,368.368 INFO    ] No camera update needed
[2026-06-05 16:32:11,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:32:11,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:32:11,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:32:11,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:32:13,428.428 INFO    ] ================================================
[2026-06-05 16:32:13,443.443 INFO    ] Launching Daemon at Fri Jun  5 16:32:13 IST 2026
[2026-06-05 16:32:13,454.454 INFO    ] ================================================
[2026-06-05 16:32:14,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:32:14
[2026-06-05 16:32:14,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:32:14,919.919 INFO    ] Initializing speech engine...
[2026-06-05 16:32:14,927.927 INFO    ] 2026-06-05 16:32:14
[2026-06-05 16:32:15,192.192 INFO    ] 2026-06-05 16:32:15
[2026-06-05 16:32:15,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:32:15,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:32:15,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:32:15,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:32:15,687.687 INFO    ] time= 05/06/2026 16:32:15
[2026-06-05 16:32:15,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:32:15,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:32:15,901.901 INFO    ] No existing commands found in stream
[2026-06-05 16:32:20,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:32:20,927.927 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 16:32:22,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:32:22,375.375 INFO    ] Checking for system updates...
[2026-06-05 16:32:22,417.417 INFO    ] 200
[2026-06-05 16:32:22,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:32:22,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:32:22,475.475 INFO    ] No update needed
[2026-06-05 16:32:22,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 16:32:22,511.511 INFO    ] 200
[2026-06-05 16:32:22,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:32:22,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:32:22,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:32:22,595.595 INFO    ] No camera update needed
[2026-06-05 16:32:22,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:32:22,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:32:22,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:32:22,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:32:24,653.653 INFO    ] ================================================
[2026-06-05 16:32:24,669.669 INFO    ] Launching Daemon at Fri Jun  5 16:32:24 IST 2026
[2026-06-05 16:32:24,680.680 INFO    ] ================================================
[2026-06-05 16:32:25,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:32:25
[2026-06-05 16:32:25,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:32:26,283.283 INFO    ] Initializing speech engine...
[2026-06-05 16:32:26,296.296 INFO    ] 2026-06-05 16:32:26
[2026-06-05 16:32:26,575.575 INFO    ] 2026-06-05 16:32:26
[2026-06-05 16:32:26,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:32:26,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:32:26,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:32:26,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:32:27,027.027 INFO    ] time= 05/06/2026 16:32:26
[2026-06-05 16:32:27,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:32:27,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:32:27,250.250 INFO    ] No existing commands found in stream
[2026-06-05 16:32:32,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:32:32,281.281 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 16:32:34,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:32:34,996.996 INFO    ] Checking for system updates...
[2026-06-05 16:32:35,037.037 INFO    ] 200
[2026-06-05 16:32:35,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:32:35,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:32:35,103.103 INFO    ] No update needed
[2026-06-05 16:32:35,106.106 INFO    ] Checking for camera pi updates...
[2026-06-05 16:32:35,142.142 INFO    ] 200
[2026-06-05 16:32:35,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:32:35,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:32:35,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:32:35,244.244 INFO    ] No camera update needed
[2026-06-05 16:32:35,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:32:35,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:32:35,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:32:35,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:32:37,304.304 INFO    ] ================================================
[2026-06-05 16:32:37,319.319 INFO    ] Launching Daemon at Fri Jun  5 16:32:37 IST 2026
[2026-06-05 16:32:37,330.330 INFO    ] ================================================
[2026-06-05 16:32:37,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:32:37
[2026-06-05 16:32:38,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:32:38,945.945 INFO    ] Initializing speech engine...
[2026-06-05 16:32:38,953.953 INFO    ] 2026-06-05 16:32:38
[2026-06-05 16:32:39,226.226 INFO    ] 2026-06-05 16:32:39
[2026-06-05 16:32:39,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:32:40,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:32:40,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:32:40,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:32:40,733.733 INFO    ] time= 05/06/2026 16:32:40
[2026-06-05 16:32:40,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:32:40,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:32:40,826.826 INFO    ] No existing commands found in stream
[2026-06-05 16:32:45,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:32:45,841.841 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 16:32:49,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:32:49,507.507 INFO    ] Checking for system updates...
[2026-06-05 16:32:49,547.547 INFO    ] 200
[2026-06-05 16:32:49,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:32:49,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:32:49,605.605 INFO    ] No update needed
[2026-06-05 16:32:49,608.608 INFO    ] Checking for camera pi updates...
[2026-06-05 16:32:49,645.645 INFO    ] 200
[2026-06-05 16:32:49,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:32:49,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:32:49,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:32:49,738.738 INFO    ] No camera update needed
[2026-06-05 16:32:49,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:32:49,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:32:49,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:32:49,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:32:51,793.793 INFO    ] ================================================
[2026-06-05 16:32:51,808.808 INFO    ] Launching Daemon at Fri Jun  5 16:32:51 IST 2026
[2026-06-05 16:32:51,818.818 INFO    ] ================================================
[2026-06-05 16:32:52,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:32:52
[2026-06-05 16:32:53,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:32:53,370.370 INFO    ] Initializing speech engine...
[2026-06-05 16:32:53,381.381 INFO    ] 2026-06-05 16:32:53
[2026-06-05 16:32:53,659.659 INFO    ] 2026-06-05 16:32:53
[2026-06-05 16:32:53,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:32:54,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:32:54,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:32:54,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:32:54,987.987 INFO    ] time= 05/06/2026 16:32:54
[2026-06-05 16:32:54,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:32:55,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:32:55,066.066 INFO    ] No existing commands found in stream
[2026-06-05 16:33:00,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:33:00,080.080 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 16:33:02,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:33:02,798.798 INFO    ] Checking for system updates...
[2026-06-05 16:33:02,857.857 INFO    ] 200
[2026-06-05 16:33:02,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:02,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:33:02,934.934 INFO    ] No update needed
[2026-06-05 16:33:02,937.937 INFO    ] Checking for camera pi updates...
[2026-06-05 16:33:02,981.981 INFO    ] 200
[2026-06-05 16:33:02,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:03,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:33:03,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:33:03,057.057 INFO    ] No camera update needed
[2026-06-05 16:33:03,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:33:03,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:33:03,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:33:03,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:33:05,113.113 INFO    ] ================================================
[2026-06-05 16:33:05,129.129 INFO    ] Launching Daemon at Fri Jun  5 16:33:05 IST 2026
[2026-06-05 16:33:05,139.139 INFO    ] ================================================
[2026-06-05 16:33:05,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:33:05
[2026-06-05 16:33:06,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:33:06,630.630 INFO    ] Initializing speech engine...
[2026-06-05 16:33:06,635.635 INFO    ] 2026-06-05 16:33:06
[2026-06-05 16:33:06,900.900 INFO    ] 2026-06-05 16:33:06
[2026-06-05 16:33:06,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:33:07,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:33:07,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:33:07,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:33:07,361.361 INFO    ] time= 05/06/2026 16:33:07
[2026-06-05 16:33:07,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:33:07,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:33:07,601.601 INFO    ] No existing commands found in stream
[2026-06-05 16:33:12,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:33:12,620.620 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 16:33:14,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:33:14,990.990 INFO    ] Checking for system updates...
[2026-06-05 16:33:15,027.027 INFO    ] 200
[2026-06-05 16:33:15,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:15,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:33:15,087.087 INFO    ] No update needed
[2026-06-05 16:33:15,089.089 INFO    ] Checking for camera pi updates...
[2026-06-05 16:33:15,123.123 INFO    ] 200
[2026-06-05 16:33:15,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:15,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:33:15,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:33:15,211.211 INFO    ] No camera update needed
[2026-06-05 16:33:15,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:33:15,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:33:15,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:33:15,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:33:17,268.268 INFO    ] ================================================
[2026-06-05 16:33:17,283.283 INFO    ] Launching Daemon at Fri Jun  5 16:33:17 IST 2026
[2026-06-05 16:33:17,294.294 INFO    ] ================================================
[2026-06-05 16:33:17,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:33:17
[2026-06-05 16:33:18,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:33:18,700.700 INFO    ] Initializing speech engine...
[2026-06-05 16:33:18,709.709 INFO    ] 2026-06-05 16:33:18
[2026-06-05 16:33:19,001.001 INFO    ] 2026-06-05 16:33:18
[2026-06-05 16:33:19,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:33:19,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:33:19,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:33:19,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:33:19,417.417 INFO    ] time= 05/06/2026 16:33:19
[2026-06-05 16:33:19,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:33:19,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:33:19,500.500 INFO    ] No existing commands found in stream
[2026-06-05 16:33:24,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:33:24,516.516 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 16:33:27,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:33:27,248.248 INFO    ] Checking for system updates...
[2026-06-05 16:33:27,289.289 INFO    ] 200
[2026-06-05 16:33:27,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:27,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:33:27,354.354 INFO    ] No update needed
[2026-06-05 16:33:27,357.357 INFO    ] Checking for camera pi updates...
[2026-06-05 16:33:27,395.395 INFO    ] 200
[2026-06-05 16:33:27,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:27,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:33:27,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:33:27,498.498 INFO    ] No camera update needed
[2026-06-05 16:33:27,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:33:27,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:33:27,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:33:27,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:33:29,556.556 INFO    ] ================================================
[2026-06-05 16:33:29,573.573 INFO    ] Launching Daemon at Fri Jun  5 16:33:29 IST 2026
[2026-06-05 16:33:29,583.583 INFO    ] ================================================
[2026-06-05 16:33:30,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:33:30
[2026-06-05 16:33:30,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:33:30,998.998 INFO    ] Initializing speech engine...
[2026-06-05 16:33:31,004.004 INFO    ] 2026-06-05 16:33:30
[2026-06-05 16:33:31,295.295 INFO    ] 2026-06-05 16:33:31
[2026-06-05 16:33:31,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:33:36,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:33:36,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:33:36,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:33:36,919.919 INFO    ] time= 05/06/2026 16:33:36
[2026-06-05 16:33:36,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:33:36,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:33:36,982.982 INFO    ] No existing commands found in stream
[2026-06-05 16:33:41,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:33:41,994.994 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 16:33:42,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:33:42,711.711 INFO    ] Checking for system updates...
[2026-06-05 16:33:42,750.750 INFO    ] 200
[2026-06-05 16:33:42,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:42,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:33:42,814.814 INFO    ] No update needed
[2026-06-05 16:33:42,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 16:33:42,850.850 INFO    ] 200
[2026-06-05 16:33:42,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:42,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:33:42,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:33:42,934.934 INFO    ] No camera update needed
[2026-06-05 16:33:42,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:33:42,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:33:42,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:33:42,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:33:44,991.991 INFO    ] ================================================
[2026-06-05 16:33:45,006.006 INFO    ] Launching Daemon at Fri Jun  5 16:33:45 IST 2026
[2026-06-05 16:33:45,017.017 INFO    ] ================================================
[2026-06-05 16:33:45,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:33:45
[2026-06-05 16:33:46,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:33:46,464.464 INFO    ] Initializing speech engine...
[2026-06-05 16:33:46,480.480 INFO    ] 2026-06-05 16:33:46
[2026-06-05 16:33:46,764.764 INFO    ] 2026-06-05 16:33:46
[2026-06-05 16:33:46,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:33:46,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:33:47,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:33:47,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:33:47,180.180 INFO    ] time= 05/06/2026 16:33:47
[2026-06-05 16:33:47,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:33:47,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:33:47,266.266 INFO    ] No existing commands found in stream
[2026-06-05 16:33:52,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:33:52,299.299 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 16:33:56,065.065 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:33:56,067.067 INFO    ] Checking for system updates...
[2026-06-05 16:33:56,104.104 INFO    ] 200
[2026-06-05 16:33:56,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:56,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:33:56,162.162 INFO    ] No update needed
[2026-06-05 16:33:56,164.164 INFO    ] Checking for camera pi updates...
[2026-06-05 16:33:56,198.198 INFO    ] 200
[2026-06-05 16:33:56,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:33:56,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:33:56,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:33:56,291.291 INFO    ] No camera update needed
[2026-06-05 16:33:56,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:33:56,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:33:56,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:33:56,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:33:58,346.346 INFO    ] ================================================
[2026-06-05 16:33:58,362.362 INFO    ] Launching Daemon at Fri Jun  5 16:33:58 IST 2026
[2026-06-05 16:33:58,373.373 INFO    ] ================================================
[2026-06-05 16:33:58,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:33:58
[2026-06-05 16:33:59,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:33:59,793.793 INFO    ] Initializing speech engine...
[2026-06-05 16:33:59,809.809 INFO    ] 2026-06-05 16:33:59
[2026-06-05 16:34:00,078.078 INFO    ] 2026-06-05 16:34:00
[2026-06-05 16:34:00,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:34:00,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:34:00,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:34:00,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:34:00,492.492 INFO    ] time= 05/06/2026 16:34:00
[2026-06-05 16:34:00,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:34:00,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:34:00,575.575 INFO    ] No existing commands found in stream
[2026-06-05 16:34:05,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:34:05,590.590 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 16:34:08,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:34:08,847.847 INFO    ] Checking for system updates...
[2026-06-05 16:34:08,883.883 INFO    ] 200
[2026-06-05 16:34:08,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:34:08,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:34:08,940.940 INFO    ] No update needed
[2026-06-05 16:34:08,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 16:34:08,976.976 INFO    ] 200
[2026-06-05 16:34:08,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:34:09,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:34:09,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:34:09,049.049 INFO    ] No camera update needed
[2026-06-05 16:34:09,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:34:09,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:34:09,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:34:09,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:34:11,106.106 INFO    ] ================================================
[2026-06-05 16:34:11,121.121 INFO    ] Launching Daemon at Fri Jun  5 16:34:11 IST 2026
[2026-06-05 16:34:11,132.132 INFO    ] ================================================
[2026-06-05 16:34:11,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:34:11
[2026-06-05 16:34:12,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:34:12,602.602 INFO    ] Initializing speech engine...
[2026-06-05 16:34:12,611.611 INFO    ] 2026-06-05 16:34:12
[2026-06-05 16:34:12,871.871 INFO    ] 2026-06-05 16:34:12
[2026-06-05 16:34:12,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:34:13,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:34:13,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:34:13,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:34:13,346.346 INFO    ] time= 05/06/2026 16:34:13
[2026-06-05 16:34:13,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:34:13,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:34:13,571.571 INFO    ] No existing commands found in stream
[2026-06-05 16:34:18,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:34:18,603.603 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 16:34:21,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:34:21,434.434 INFO    ] Checking for system updates...
[2026-06-05 16:34:21,470.470 INFO    ] 200
[2026-06-05 16:34:21,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 16:34:21,475.475 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 16:34:21,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 16:34:21,525.525 INFO    ] 200
[2026-06-05 16:34:21,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 16:34:21,530.530 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 16:34:21,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:34:21,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:34:21,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:34:21,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:34:23,589.589 INFO    ] ================================================
[2026-06-05 16:34:23,604.604 INFO    ] Launching Daemon at Fri Jun  5 16:34:23 IST 2026
[2026-06-05 16:34:23,615.615 INFO    ] ================================================
[2026-06-05 16:34:24,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:34:24
[2026-06-05 16:34:24,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:34:25,067.067 INFO    ] Initializing speech engine...
[2026-06-05 16:34:25,077.077 INFO    ] 2026-06-05 16:34:25
[2026-06-05 16:34:25,350.350 INFO    ] 2026-06-05 16:34:25
[2026-06-05 16:34:25,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:34:25,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:34:25,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:34:25,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:34:25,737.737 INFO    ] time= 05/06/2026 16:34:25
[2026-06-05 16:34:25,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:34:25,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:34:25,865.865 INFO    ] No existing commands found in stream
[2026-06-05 16:34:30,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:34:30,880.880 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 16:34:31,485.485 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:34:31,489.489 INFO    ] Checking for system updates...
[2026-06-05 16:34:31,528.528 INFO    ] 200
[2026-06-05 16:34:31,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:34:31,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:34:31,592.592 INFO    ] No update needed
[2026-06-05 16:34:31,595.595 INFO    ] Checking for camera pi updates...
[2026-06-05 16:34:31,636.636 INFO    ] 200
[2026-06-05 16:34:31,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:34:31,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:34:31,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:34:31,724.724 INFO    ] No camera update needed
[2026-06-05 16:34:31,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:34:31,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:34:31,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:34:31,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:34:33,785.785 INFO    ] ================================================
[2026-06-05 16:34:33,801.801 INFO    ] Launching Daemon at Fri Jun  5 16:34:33 IST 2026
[2026-06-05 16:34:33,812.812 INFO    ] ================================================
[2026-06-05 16:34:34,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:34:34
[2026-06-05 16:34:35,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:34:35,501.501 INFO    ] Initializing speech engine...
[2026-06-05 16:34:35,508.508 INFO    ] 2026-06-05 16:34:35
[2026-06-05 16:34:35,824.824 INFO    ] 2026-06-05 16:34:35
[2026-06-05 16:34:35,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:34:36,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:34:36,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:34:36,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:34:36,349.349 INFO    ] time= 05/06/2026 16:34:36
[2026-06-05 16:34:36,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:34:36,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:34:36,521.521 INFO    ] No existing commands found in stream
[2026-06-05 16:34:41,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:34:41,552.552 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 16:34:44,098.098 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:34:44,100.100 INFO    ] Checking for system updates...
[2026-06-05 16:34:44,137.137 INFO    ] 200
[2026-06-05 16:34:44,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:34:44,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:34:44,203.203 INFO    ] No update needed
[2026-06-05 16:34:44,206.206 INFO    ] Checking for camera pi updates...
[2026-06-05 16:34:44,240.240 INFO    ] 200
[2026-06-05 16:34:44,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:34:44,283.283 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:34:44,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:34:44,332.332 INFO    ] No camera update needed
[2026-06-05 16:34:44,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:34:44,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:34:44,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:34:44,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:34:46,389.389 INFO    ] ================================================
[2026-06-05 16:34:46,404.404 INFO    ] Launching Daemon at Fri Jun  5 16:34:46 IST 2026
[2026-06-05 16:34:46,415.415 INFO    ] ================================================
[2026-06-05 16:34:47,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:34:46
[2026-06-05 16:34:47,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:34:47,907.907 INFO    ] Initializing speech engine...
[2026-06-05 16:34:47,916.916 INFO    ] 2026-06-05 16:34:47
[2026-06-05 16:34:48,193.193 INFO    ] 2026-06-05 16:34:48
[2026-06-05 16:34:48,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:34:48,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:34:48,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:34:48,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:34:48,586.586 INFO    ] time= 05/06/2026 16:34:48
[2026-06-05 16:34:48,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:34:48,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:34:48,715.715 INFO    ] No existing commands found in stream
[2026-06-05 16:34:53,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:34:53,731.731 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 16:34:57,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:34:57,940.940 INFO    ] Checking for system updates...
[2026-06-05 16:34:57,977.977 INFO    ] 200
[2026-06-05 16:34:57,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:34:58,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:34:58,035.035 INFO    ] No update needed
[2026-06-05 16:34:58,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 16:34:58,077.077 INFO    ] 200
[2026-06-05 16:34:58,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:34:58,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:34:58,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:34:58,158.158 INFO    ] No camera update needed
[2026-06-05 16:34:58,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:34:58,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:34:58,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:34:58,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:35:00,212.212 INFO    ] ================================================
[2026-06-05 16:35:00,228.228 INFO    ] Launching Daemon at Fri Jun  5 16:35:00 IST 2026
[2026-06-05 16:35:00,238.238 INFO    ] ================================================
[2026-06-05 16:35:00,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:35:00
[2026-06-05 16:35:01,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:35:01,678.678 INFO    ] Initializing speech engine...
[2026-06-05 16:35:01,683.683 INFO    ] 2026-06-05 16:35:01
[2026-06-05 16:35:02,244.244 INFO    ] 2026-06-05 16:35:02
[2026-06-05 16:35:02,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:35:02,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:35:02,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:35:02,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:35:02,585.585 INFO    ] time= 05/06/2026 16:35:02
[2026-06-05 16:35:02,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:35:02,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:35:02,705.705 INFO    ] No existing commands found in stream
[2026-06-05 16:35:07,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:35:07,718.718 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 16:35:09,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:35:09,674.674 INFO    ] Checking for system updates...
[2026-06-05 16:35:09,710.710 INFO    ] 200
[2026-06-05 16:35:09,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:09,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:09,768.768 INFO    ] No update needed
[2026-06-05 16:35:09,770.770 INFO    ] Checking for camera pi updates...
[2026-06-05 16:35:09,805.805 INFO    ] 200
[2026-06-05 16:35:09,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:09,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:35:09,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:09,900.900 INFO    ] No camera update needed
[2026-06-05 16:35:09,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:35:09,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:35:09,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:35:09,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:35:11,956.956 INFO    ] ================================================
[2026-06-05 16:35:11,971.971 INFO    ] Launching Daemon at Fri Jun  5 16:35:11 IST 2026
[2026-06-05 16:35:11,982.982 INFO    ] ================================================
[2026-06-05 16:35:12,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:35:12
[2026-06-05 16:35:13,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:35:13,616.616 INFO    ] Initializing speech engine...
[2026-06-05 16:35:13,630.630 INFO    ] 2026-06-05 16:35:13
[2026-06-05 16:35:13,937.937 INFO    ] 2026-06-05 16:35:13
[2026-06-05 16:35:14,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:35:14,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:35:14,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:35:14,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:35:14,444.444 INFO    ] time= 05/06/2026 16:35:14
[2026-06-05 16:35:14,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:35:14,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:35:14,599.599 INFO    ] No existing commands found in stream
[2026-06-05 16:35:19,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:35:19,619.619 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 16:35:22,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:35:22,286.286 INFO    ] Checking for system updates...
[2026-06-05 16:35:22,323.323 INFO    ] 200
[2026-06-05 16:35:22,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:22,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:22,383.383 INFO    ] No update needed
[2026-06-05 16:35:22,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 16:35:22,421.421 INFO    ] 200
[2026-06-05 16:35:22,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:22,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:35:22,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:22,510.510 INFO    ] No camera update needed
[2026-06-05 16:35:22,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:35:22,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:35:22,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:35:22,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:35:24,569.569 INFO    ] ================================================
[2026-06-05 16:35:24,585.585 INFO    ] Launching Daemon at Fri Jun  5 16:35:24 IST 2026
[2026-06-05 16:35:24,596.596 INFO    ] ================================================
[2026-06-05 16:35:25,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:35:25
[2026-06-05 16:35:25,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:35:26,223.223 INFO    ] Initializing speech engine...
[2026-06-05 16:35:26,232.232 INFO    ] 2026-06-05 16:35:26
[2026-06-05 16:35:26,506.506 INFO    ] 2026-06-05 16:35:26
[2026-06-05 16:35:26,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:35:26,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:35:26,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:35:26,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:35:26,981.981 INFO    ] time= 05/06/2026 16:35:26
[2026-06-05 16:35:27,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:35:27,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:35:27,196.196 INFO    ] No existing commands found in stream
[2026-06-05 16:35:32,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:35:32,228.228 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 16:35:34,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:35:34,772.772 INFO    ] Checking for system updates...
[2026-06-05 16:35:34,809.809 INFO    ] 200
[2026-06-05 16:35:34,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:34,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:34,869.869 INFO    ] No update needed
[2026-06-05 16:35:34,872.872 INFO    ] Checking for camera pi updates...
[2026-06-05 16:35:34,907.907 INFO    ] 200
[2026-06-05 16:35:34,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:34,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:35:34,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:35,000.000 INFO    ] No camera update needed
[2026-06-05 16:35:35,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:35:35,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:35:35,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:35:35,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:35:37,060.060 INFO    ] ================================================
[2026-06-05 16:35:37,079.079 INFO    ] Launching Daemon at Fri Jun  5 16:35:37 IST 2026
[2026-06-05 16:35:37,090.090 INFO    ] ================================================
[2026-06-05 16:35:37,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:35:37
[2026-06-05 16:35:38,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:35:38,559.559 INFO    ] Initializing speech engine...
[2026-06-05 16:35:38,569.569 INFO    ] 2026-06-05 16:35:38
[2026-06-05 16:35:38,837.837 INFO    ] 2026-06-05 16:35:38
[2026-06-05 16:35:38,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:35:39,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:35:39,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:35:39,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:35:39,384.384 INFO    ] time= 05/06/2026 16:35:39
[2026-06-05 16:35:39,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:35:39,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:35:39,471.471 INFO    ] No existing commands found in stream
[2026-06-05 16:35:44,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:35:44,480.480 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 16:35:45,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:35:45,690.690 INFO    ] Checking for system updates...
[2026-06-05 16:35:45,730.730 INFO    ] 200
[2026-06-05 16:35:45,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:45,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:45,788.788 INFO    ] No update needed
[2026-06-05 16:35:45,790.790 INFO    ] Checking for camera pi updates...
[2026-06-05 16:35:45,824.824 INFO    ] 200
[2026-06-05 16:35:45,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:45,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:35:45,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:45,908.908 INFO    ] No camera update needed
[2026-06-05 16:35:45,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:35:45,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:35:45,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:35:45,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:35:47,966.966 INFO    ] ================================================
[2026-06-05 16:35:47,982.982 INFO    ] Launching Daemon at Fri Jun  5 16:35:47 IST 2026
[2026-06-05 16:35:47,993.993 INFO    ] ================================================
[2026-06-05 16:35:48,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:35:48
[2026-06-05 16:35:49,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:35:49,428.428 INFO    ] Initializing speech engine...
[2026-06-05 16:35:49,438.438 INFO    ] 2026-06-05 16:35:49
[2026-06-05 16:35:49,686.686 INFO    ] 2026-06-05 16:35:49
[2026-06-05 16:35:49,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:35:49,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:35:49,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:35:50,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:35:50,189.189 INFO    ] time= 05/06/2026 16:35:50
[2026-06-05 16:35:50,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:35:50,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:35:50,398.398 INFO    ] No existing commands found in stream
[2026-06-05 16:35:55,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:35:55,413.413 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 16:35:58,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:35:58,824.824 INFO    ] Checking for system updates...
[2026-06-05 16:35:58,861.861 INFO    ] 200
[2026-06-05 16:35:58,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:58,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:58,926.926 INFO    ] No update needed
[2026-06-05 16:35:58,929.929 INFO    ] Checking for camera pi updates...
[2026-06-05 16:35:58,966.966 INFO    ] 200
[2026-06-05 16:35:58,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:35:59,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:35:59,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:35:59,056.056 INFO    ] No camera update needed
[2026-06-05 16:35:59,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:35:59,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:35:59,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:35:59,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:36:01,112.112 INFO    ] ================================================
[2026-06-05 16:36:01,128.128 INFO    ] Launching Daemon at Fri Jun  5 16:36:01 IST 2026
[2026-06-05 16:36:01,139.139 INFO    ] ================================================
[2026-06-05 16:36:01,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:36:01
[2026-06-05 16:36:02,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:36:02,890.890 INFO    ] Initializing speech engine...
[2026-06-05 16:36:02,897.897 INFO    ] 2026-06-05 16:36:02
[2026-06-05 16:36:03,163.163 INFO    ] 2026-06-05 16:36:03
[2026-06-05 16:36:03,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:36:03,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:36:03,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:36:03,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:36:03,539.539 INFO    ] time= 05/06/2026 16:36:03
[2026-06-05 16:36:03,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:36:03,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:36:03,655.655 INFO    ] No existing commands found in stream
[2026-06-05 16:36:08,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:36:08,668.668 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 16:36:11,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:36:11,337.337 INFO    ] Checking for system updates...
[2026-06-05 16:36:11,374.374 INFO    ] 200
[2026-06-05 16:36:11,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:36:11,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:36:11,431.431 INFO    ] No update needed
[2026-06-05 16:36:11,433.433 INFO    ] Checking for camera pi updates...
[2026-06-05 16:36:11,468.468 INFO    ] 200
[2026-06-05 16:36:11,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:36:11,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:36:11,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:36:11,661.661 INFO    ] No camera update needed
[2026-06-05 16:36:11,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:36:11,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:36:11,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:36:11,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:36:13,715.715 INFO    ] ================================================
[2026-06-05 16:36:13,731.731 INFO    ] Launching Daemon at Fri Jun  5 16:36:13 IST 2026
[2026-06-05 16:36:13,741.741 INFO    ] ================================================
[2026-06-05 16:36:14,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:36:14
[2026-06-05 16:36:14,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:36:15,159.159 INFO    ] Initializing speech engine...
[2026-06-05 16:36:15,165.165 INFO    ] 2026-06-05 16:36:15
[2026-06-05 16:36:15,456.456 INFO    ] 2026-06-05 16:36:15
[2026-06-05 16:36:15,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:36:15,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:36:15,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:36:16,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:36:16,085.085 INFO    ] time= 05/06/2026 16:36:16
[2026-06-05 16:36:16,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:36:16,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:36:16,228.228 INFO    ] No existing commands found in stream
[2026-06-05 16:36:21,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:36:21,251.251 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 16:36:21,717.717 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:36:21,720.720 INFO    ] Checking for system updates...
[2026-06-05 16:36:21,756.756 INFO    ] 200
[2026-06-05 16:36:21,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:36:21,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:36:21,813.813 INFO    ] No update needed
[2026-06-05 16:36:21,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 16:36:21,850.850 INFO    ] 200
[2026-06-05 16:36:21,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:36:21,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:36:21,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:36:21,937.937 INFO    ] No camera update needed
[2026-06-05 16:36:21,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:36:21,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:36:21,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:36:21,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:36:23,993.993 INFO    ] ================================================
[2026-06-05 16:36:24,009.009 INFO    ] Launching Daemon at Fri Jun  5 16:36:24 IST 2026
[2026-06-05 16:36:24,019.019 INFO    ] ================================================
[2026-06-05 16:36:24,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:36:24
[2026-06-05 16:36:25,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:36:25,422.422 INFO    ] Initializing speech engine...
[2026-06-05 16:36:25,443.443 INFO    ] 2026-06-05 16:36:25
[2026-06-05 16:36:25,704.704 INFO    ] 2026-06-05 16:36:25
[2026-06-05 16:36:25,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:36:25,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:36:25,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:36:26,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:36:26,082.082 INFO    ] time= 05/06/2026 16:36:26
[2026-06-05 16:36:26,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:36:26,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:36:26,248.248 INFO    ] No existing commands found in stream
[2026-06-05 16:36:31,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:36:31,278.278 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 16:36:33,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:36:33,598.598 INFO    ] Checking for system updates...
[2026-06-05 16:36:33,638.638 INFO    ] 200
[2026-06-05 16:36:33,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:36:33,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:36:33,696.696 INFO    ] No update needed
[2026-06-05 16:36:33,698.698 INFO    ] Checking for camera pi updates...
[2026-06-05 16:36:33,733.733 INFO    ] 200
[2026-06-05 16:36:33,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:36:33,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:36:33,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:36:33,825.825 INFO    ] No camera update needed
[2026-06-05 16:36:33,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:36:33,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:36:33,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:36:33,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:36:35,884.884 INFO    ] ================================================
[2026-06-05 16:36:35,900.900 INFO    ] Launching Daemon at Fri Jun  5 16:36:35 IST 2026
[2026-06-05 16:36:35,911.911 INFO    ] ================================================
[2026-06-05 16:36:36,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:36:36
[2026-06-05 16:36:37,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:36:37,355.355 INFO    ] Initializing speech engine...
[2026-06-05 16:36:37,370.370 INFO    ] 2026-06-05 16:36:37
[2026-06-05 16:36:37,638.638 INFO    ] 2026-06-05 16:36:37
[2026-06-05 16:36:37,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:36:37,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:36:37,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:36:38,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:36:38,008.008 INFO    ] time= 05/06/2026 16:36:38
[2026-06-05 16:36:38,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:36:38,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:36:38,187.187 INFO    ] No existing commands found in stream
[2026-06-05 16:36:43,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:36:43,217.217 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 16:36:47,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:36:47,478.478 INFO    ] Checking for system updates...
[2026-06-05 16:36:47,514.514 INFO    ] 200
[2026-06-05 16:36:47,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:36:47,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:36:47,573.573 INFO    ] No update needed
[2026-06-05 16:36:47,576.576 INFO    ] Checking for camera pi updates...
[2026-06-05 16:36:47,610.610 INFO    ] 200
[2026-06-05 16:36:47,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:36:47,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:36:47,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:36:47,691.691 INFO    ] No camera update needed
[2026-06-05 16:36:47,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:36:47,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:36:47,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:36:47,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:36:49,748.748 INFO    ] ================================================
[2026-06-05 16:36:49,764.764 INFO    ] Launching Daemon at Fri Jun  5 16:36:49 IST 2026
[2026-06-05 16:36:49,776.776 INFO    ] ================================================
[2026-06-05 16:36:50,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:36:50
[2026-06-05 16:36:50,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:36:51,218.218 INFO    ] Initializing speech engine...
[2026-06-05 16:36:51,229.229 INFO    ] 2026-06-05 16:36:51
[2026-06-05 16:36:51,488.488 INFO    ] 2026-06-05 16:36:51
[2026-06-05 16:36:51,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:36:51,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:36:51,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:36:51,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:36:51,910.910 INFO    ] time= 05/06/2026 16:36:51
[2026-06-05 16:36:51,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:36:52,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:36:52,091.091 INFO    ] No existing commands found in stream
[2026-06-05 16:36:57,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:36:57,106.106 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 16:37:00,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:37:00,979.979 INFO    ] Checking for system updates...
[2026-06-05 16:37:01,019.019 INFO    ] 200
[2026-06-05 16:37:01,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:01,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:37:01,077.077 INFO    ] No update needed
[2026-06-05 16:37:01,080.080 INFO    ] Checking for camera pi updates...
[2026-06-05 16:37:01,114.114 INFO    ] 200
[2026-06-05 16:37:01,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:01,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:37:01,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:37:01,205.205 INFO    ] No camera update needed
[2026-06-05 16:37:01,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:37:01,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:37:01,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:37:01,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:37:03,269.269 INFO    ] ================================================
[2026-06-05 16:37:03,293.293 INFO    ] Launching Daemon at Fri Jun  5 16:37:03 IST 2026
[2026-06-05 16:37:03,307.307 INFO    ] ================================================
[2026-06-05 16:37:03,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:37:03
[2026-06-05 16:37:04,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:37:04,788.788 INFO    ] Initializing speech engine...
[2026-06-05 16:37:04,797.797 INFO    ] 2026-06-05 16:37:04
[2026-06-05 16:37:05,052.052 INFO    ] 2026-06-05 16:37:05
[2026-06-05 16:37:05,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:37:05,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:37:05,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:37:05,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:37:05,525.525 INFO    ] time= 05/06/2026 16:37:05
[2026-06-05 16:37:05,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:37:05,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:37:05,667.667 INFO    ] No existing commands found in stream
[2026-06-05 16:37:10,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:37:10,682.682 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 16:37:12,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:37:12,786.786 INFO    ] Checking for system updates...
[2026-06-05 16:37:12,823.823 INFO    ] 200
[2026-06-05 16:37:12,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:12,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:37:12,882.882 INFO    ] No update needed
[2026-06-05 16:37:12,884.884 INFO    ] Checking for camera pi updates...
[2026-06-05 16:37:12,919.919 INFO    ] 200
[2026-06-05 16:37:12,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:12,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:37:13,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:37:13,012.012 INFO    ] No camera update needed
[2026-06-05 16:37:13,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:37:13,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:37:13,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:37:13,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:37:15,073.073 INFO    ] ================================================
[2026-06-05 16:37:15,089.089 INFO    ] Launching Daemon at Fri Jun  5 16:37:15 IST 2026
[2026-06-05 16:37:15,100.100 INFO    ] ================================================
[2026-06-05 16:37:15,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:37:15
[2026-06-05 16:37:16,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:37:16,538.538 INFO    ] Initializing speech engine...
[2026-06-05 16:37:16,551.551 INFO    ] 2026-06-05 16:37:16
[2026-06-05 16:37:16,815.815 INFO    ] 2026-06-05 16:37:16
[2026-06-05 16:37:16,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:37:17,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:37:17,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:37:17,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:37:17,187.187 INFO    ] time= 05/06/2026 16:37:17
[2026-06-05 16:37:17,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:37:17,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:37:17,368.368 INFO    ] No existing commands found in stream
[2026-06-05 16:37:22,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:37:22,391.391 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 16:37:25,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:37:25,283.283 INFO    ] Checking for system updates...
[2026-06-05 16:37:25,319.319 INFO    ] 200
[2026-06-05 16:37:25,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:25,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:37:25,378.378 INFO    ] No update needed
[2026-06-05 16:37:25,380.380 INFO    ] Checking for camera pi updates...
[2026-06-05 16:37:25,414.414 INFO    ] 200
[2026-06-05 16:37:25,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:25,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:37:25,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:37:25,489.489 INFO    ] No camera update needed
[2026-06-05 16:37:25,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:37:25,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:37:25,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:37:25,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:37:27,553.553 INFO    ] ================================================
[2026-06-05 16:37:27,568.568 INFO    ] Launching Daemon at Fri Jun  5 16:37:27 IST 2026
[2026-06-05 16:37:27,580.580 INFO    ] ================================================
[2026-06-05 16:37:28,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:37:28
[2026-06-05 16:37:28,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:37:29,009.009 INFO    ] Initializing speech engine...
[2026-06-05 16:37:29,031.031 INFO    ] 2026-06-05 16:37:29
[2026-06-05 16:37:29,309.309 INFO    ] 2026-06-05 16:37:29
[2026-06-05 16:37:29,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:37:29,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:37:29,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:37:29,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:37:29,812.812 INFO    ] time= 05/06/2026 16:37:29
[2026-06-05 16:37:29,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:37:29,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:37:30,029.029 INFO    ] No existing commands found in stream
[2026-06-05 16:37:35,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:37:35,049.049 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 16:37:36,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:37:36,383.383 INFO    ] Checking for system updates...
[2026-06-05 16:37:36,418.418 INFO    ] 200
[2026-06-05 16:37:36,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:36,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:37:36,478.478 INFO    ] No update needed
[2026-06-05 16:37:36,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 16:37:36,521.521 INFO    ] 200
[2026-06-05 16:37:36,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:36,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:37:36,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:37:36,612.612 INFO    ] No camera update needed
[2026-06-05 16:37:36,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:37:36,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:37:36,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:37:36,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:37:38,668.668 INFO    ] ================================================
[2026-06-05 16:37:38,684.684 INFO    ] Launching Daemon at Fri Jun  5 16:37:38 IST 2026
[2026-06-05 16:37:38,696.696 INFO    ] ================================================
[2026-06-05 16:37:39,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:37:39
[2026-06-05 16:37:39,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:37:40,111.111 INFO    ] Initializing speech engine...
[2026-06-05 16:37:40,126.126 INFO    ] 2026-06-05 16:37:40
[2026-06-05 16:37:40,395.395 INFO    ] 2026-06-05 16:37:40
[2026-06-05 16:37:40,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:37:40,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:37:40,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:37:40,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:37:40,879.879 INFO    ] time= 05/06/2026 16:37:40
[2026-06-05 16:37:40,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:37:40,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:37:41,108.108 INFO    ] No existing commands found in stream
[2026-06-05 16:37:46,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:37:46,137.137 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 16:37:47,949.949 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:37:47,951.951 INFO    ] Checking for system updates...
[2026-06-05 16:37:47,987.987 INFO    ] 200
[2026-06-05 16:37:47,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:48,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:37:48,045.045 INFO    ] No update needed
[2026-06-05 16:37:48,047.047 INFO    ] Checking for camera pi updates...
[2026-06-05 16:37:48,081.081 INFO    ] 200
[2026-06-05 16:37:48,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:37:48,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:37:48,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:37:48,171.171 INFO    ] No camera update needed
[2026-06-05 16:37:48,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:37:48,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:37:48,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:37:48,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:37:50,230.230 INFO    ] ================================================
[2026-06-05 16:37:50,246.246 INFO    ] Launching Daemon at Fri Jun  5 16:37:50 IST 2026
[2026-06-05 16:37:50,257.257 INFO    ] ================================================
[2026-06-05 16:37:50,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:37:50
[2026-06-05 16:37:51,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:37:51,722.722 INFO    ] Initializing speech engine...
[2026-06-05 16:37:51,731.731 INFO    ] 2026-06-05 16:37:51
[2026-06-05 16:37:51,982.982 INFO    ] 2026-06-05 16:37:51
[2026-06-05 16:37:52,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:37:52,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:37:52,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:37:52,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:37:52,361.361 INFO    ] time= 05/06/2026 16:37:52
[2026-06-05 16:37:52,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:37:52,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:37:52,537.537 INFO    ] No existing commands found in stream
[2026-06-05 16:37:57,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:37:57,570.570 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 16:38:01,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:38:01,943.943 INFO    ] Checking for system updates...
[2026-06-05 16:38:02,001.001 INFO    ] 200
[2026-06-05 16:38:02,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:02,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:38:02,136.136 INFO    ] No update needed
[2026-06-05 16:38:02,139.139 INFO    ] Checking for camera pi updates...
[2026-06-05 16:38:02,188.188 INFO    ] 200
[2026-06-05 16:38:02,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:02,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:38:02,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:38:02,278.278 INFO    ] No camera update needed
[2026-06-05 16:38:02,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:38:02,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:38:02,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:38:02,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:38:04,338.338 INFO    ] ================================================
[2026-06-05 16:38:04,353.353 INFO    ] Launching Daemon at Fri Jun  5 16:38:04 IST 2026
[2026-06-05 16:38:04,364.364 INFO    ] ================================================
[2026-06-05 16:38:04,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:38:04
[2026-06-05 16:38:05,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:38:05,919.919 INFO    ] Initializing speech engine...
[2026-06-05 16:38:05,928.928 INFO    ] 2026-06-05 16:38:05
[2026-06-05 16:38:06,213.213 INFO    ] 2026-06-05 16:38:06
[2026-06-05 16:38:06,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:38:06,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:38:06,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:38:06,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:38:06,762.762 INFO    ] time= 05/06/2026 16:38:06
[2026-06-05 16:38:06,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:38:06,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:38:06,918.918 INFO    ] No existing commands found in stream
[2026-06-05 16:38:11,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:38:11,952.952 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 16:38:15,384.384 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:38:15,387.387 INFO    ] Checking for system updates...
[2026-06-05 16:38:15,433.433 INFO    ] 200
[2026-06-05 16:38:15,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:15,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:38:15,496.496 INFO    ] No update needed
[2026-06-05 16:38:15,499.499 INFO    ] Checking for camera pi updates...
[2026-06-05 16:38:15,536.536 INFO    ] 200
[2026-06-05 16:38:15,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:15,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:38:15,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:38:15,738.738 INFO    ] No camera update needed
[2026-06-05 16:38:15,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:38:15,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:38:15,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:38:15,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:38:17,795.795 INFO    ] ================================================
[2026-06-05 16:38:17,810.810 INFO    ] Launching Daemon at Fri Jun  5 16:38:17 IST 2026
[2026-06-05 16:38:17,821.821 INFO    ] ================================================
[2026-06-05 16:38:18,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:38:18
[2026-06-05 16:38:18,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:38:19,232.232 INFO    ] Initializing speech engine...
[2026-06-05 16:38:19,238.238 INFO    ] 2026-06-05 16:38:19
[2026-06-05 16:38:19,533.533 INFO    ] 2026-06-05 16:38:19
[2026-06-05 16:38:19,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:38:19,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:38:19,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:38:19,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:38:20,032.032 INFO    ] time= 05/06/2026 16:38:19
[2026-06-05 16:38:20,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:38:20,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:38:20,279.279 INFO    ] No existing commands found in stream
[2026-06-05 16:38:25,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:38:25,313.313 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 16:38:26,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:38:26,295.295 INFO    ] Checking for system updates...
[2026-06-05 16:38:26,333.333 INFO    ] 200
[2026-06-05 16:38:26,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:26,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:38:26,394.394 INFO    ] No update needed
[2026-06-05 16:38:26,397.397 INFO    ] Checking for camera pi updates...
[2026-06-05 16:38:26,431.431 INFO    ] 200
[2026-06-05 16:38:26,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:26,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:38:26,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:38:26,527.527 INFO    ] No camera update needed
[2026-06-05 16:38:26,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:38:26,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:38:26,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:38:26,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:38:28,584.584 INFO    ] ================================================
[2026-06-05 16:38:28,600.600 INFO    ] Launching Daemon at Fri Jun  5 16:38:28 IST 2026
[2026-06-05 16:38:28,611.611 INFO    ] ================================================
[2026-06-05 16:38:29,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:38:29
[2026-06-05 16:38:29,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:38:30,103.103 INFO    ] Initializing speech engine...
[2026-06-05 16:38:30,112.112 INFO    ] 2026-06-05 16:38:30
[2026-06-05 16:38:30,394.394 INFO    ] 2026-06-05 16:38:30
[2026-06-05 16:38:30,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:38:30,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:38:30,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:38:31,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:38:31,088.088 INFO    ] time= 05/06/2026 16:38:31
[2026-06-05 16:38:31,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:38:31,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:38:31,335.335 INFO    ] No existing commands found in stream
[2026-06-05 16:38:36,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:38:36,375.375 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 16:38:36,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:38:36,879.879 INFO    ] Checking for system updates...
[2026-06-05 16:38:36,919.919 INFO    ] 200
[2026-06-05 16:38:36,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:36,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:38:36,983.983 INFO    ] No update needed
[2026-06-05 16:38:36,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 16:38:37,021.021 INFO    ] 200
[2026-06-05 16:38:37,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:37,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:38:37,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:38:37,109.109 INFO    ] No camera update needed
[2026-06-05 16:38:37,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:38:37,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:38:37,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:38:37,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:38:39,167.167 INFO    ] ================================================
[2026-06-05 16:38:39,182.182 INFO    ] Launching Daemon at Fri Jun  5 16:38:39 IST 2026
[2026-06-05 16:38:39,194.194 INFO    ] ================================================
[2026-06-05 16:38:39,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:38:39
[2026-06-05 16:38:40,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:38:40,781.781 INFO    ] Initializing speech engine...
[2026-06-05 16:38:40,792.792 INFO    ] 2026-06-05 16:38:40
[2026-06-05 16:38:41,068.068 INFO    ] 2026-06-05 16:38:41
[2026-06-05 16:38:41,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:38:41,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:38:41,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:38:41,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:38:41,607.607 INFO    ] time= 05/06/2026 16:38:41
[2026-06-05 16:38:41,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:38:41,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:38:41,762.762 INFO    ] No existing commands found in stream
[2026-06-05 16:38:46,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:38:46,799.799 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 16:38:48,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:38:48,865.865 INFO    ] Checking for system updates...
[2026-06-05 16:38:48,901.901 INFO    ] 200
[2026-06-05 16:38:48,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:48,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:38:48,960.960 INFO    ] No update needed
[2026-06-05 16:38:48,963.963 INFO    ] Checking for camera pi updates...
[2026-06-05 16:38:48,997.997 INFO    ] 200
[2026-06-05 16:38:49,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:38:49,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:38:49,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:38:49,099.099 INFO    ] No camera update needed
[2026-06-05 16:38:49,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:38:49,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:38:49,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:38:49,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:38:51,157.157 INFO    ] ================================================
[2026-06-05 16:38:51,172.172 INFO    ] Launching Daemon at Fri Jun  5 16:38:51 IST 2026
[2026-06-05 16:38:51,183.183 INFO    ] ================================================
[2026-06-05 16:38:51,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:38:51
[2026-06-05 16:38:52,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:38:52,601.601 INFO    ] Initializing speech engine...
[2026-06-05 16:38:52,609.609 INFO    ] 2026-06-05 16:38:52
[2026-06-05 16:38:52,861.861 INFO    ] 2026-06-05 16:38:52
[2026-06-05 16:38:52,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:38:55,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:38:55,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:38:55,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:38:55,317.317 INFO    ] time= 05/06/2026 16:38:55
[2026-06-05 16:38:55,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:38:55,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:38:55,443.443 INFO    ] No existing commands found in stream
[2026-06-05 16:39:00,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:39:00,457.457 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 16:39:02,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:39:02,635.635 INFO    ] Checking for system updates...
[2026-06-05 16:39:02,687.687 INFO    ] 200
[2026-06-05 16:39:02,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:02,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:39:02,764.764 INFO    ] No update needed
[2026-06-05 16:39:02,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 16:39:02,813.813 INFO    ] 200
[2026-06-05 16:39:02,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:02,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:39:02,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:39:02,903.903 INFO    ] No camera update needed
[2026-06-05 16:39:02,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:39:02,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:39:02,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:39:02,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:39:04,968.968 INFO    ] ================================================
[2026-06-05 16:39:04,983.983 INFO    ] Launching Daemon at Fri Jun  5 16:39:04 IST 2026
[2026-06-05 16:39:04,994.994 INFO    ] ================================================
[2026-06-05 16:39:05,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:39:05
[2026-06-05 16:39:06,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:39:06,497.497 INFO    ] Initializing speech engine...
[2026-06-05 16:39:06,511.511 INFO    ] 2026-06-05 16:39:06
[2026-06-05 16:39:06,801.801 INFO    ] 2026-06-05 16:39:06
[2026-06-05 16:39:06,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:39:07,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:39:07,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:39:07,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:39:07,317.317 INFO    ] time= 05/06/2026 16:39:07
[2026-06-05 16:39:07,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:39:07,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:39:07,553.553 INFO    ] No existing commands found in stream
[2026-06-05 16:39:12,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:39:12,594.594 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 16:39:15,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:39:15,936.936 INFO    ] Checking for system updates...
[2026-06-05 16:39:15,978.978 INFO    ] 200
[2026-06-05 16:39:15,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:16,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:39:16,051.051 INFO    ] No update needed
[2026-06-05 16:39:16,055.055 INFO    ] Checking for camera pi updates...
[2026-06-05 16:39:16,094.094 INFO    ] 200
[2026-06-05 16:39:16,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:16,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:39:16,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:39:16,195.195 INFO    ] No camera update needed
[2026-06-05 16:39:16,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:39:16,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:39:16,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:39:16,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:39:18,262.262 INFO    ] ================================================
[2026-06-05 16:39:18,279.279 INFO    ] Launching Daemon at Fri Jun  5 16:39:18 IST 2026
[2026-06-05 16:39:18,291.291 INFO    ] ================================================
[2026-06-05 16:39:18,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:39:18
[2026-06-05 16:39:19,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:39:19,802.802 INFO    ] Initializing speech engine...
[2026-06-05 16:39:19,816.816 INFO    ] 2026-06-05 16:39:19
[2026-06-05 16:39:20,127.127 INFO    ] 2026-06-05 16:39:20
[2026-06-05 16:39:20,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:39:20,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:39:20,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:39:20,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:39:20,510.510 INFO    ] time= 05/06/2026 16:39:20
[2026-06-05 16:39:20,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:39:20,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:39:20,601.601 INFO    ] No existing commands found in stream
[2026-06-05 16:39:25,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:39:25,617.617 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 16:39:28,888.888 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:39:28,891.891 INFO    ] Checking for system updates...
[2026-06-05 16:39:28,927.927 INFO    ] 200
[2026-06-05 16:39:28,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:28,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:39:28,986.986 INFO    ] No update needed
[2026-06-05 16:39:28,988.988 INFO    ] Checking for camera pi updates...
[2026-06-05 16:39:29,023.023 INFO    ] 200
[2026-06-05 16:39:29,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:29,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:39:29,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:39:29,123.123 INFO    ] No camera update needed
[2026-06-05 16:39:29,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:39:29,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:39:29,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:39:29,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:39:31,181.181 INFO    ] ================================================
[2026-06-05 16:39:31,197.197 INFO    ] Launching Daemon at Fri Jun  5 16:39:31 IST 2026
[2026-06-05 16:39:31,208.208 INFO    ] ================================================
[2026-06-05 16:39:31,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:39:31
[2026-06-05 16:39:32,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:39:32,770.770 INFO    ] Initializing speech engine...
[2026-06-05 16:39:32,780.780 INFO    ] 2026-06-05 16:39:32
[2026-06-05 16:39:33,046.046 INFO    ] 2026-06-05 16:39:33
[2026-06-05 16:39:33,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:39:33,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:39:33,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:39:33,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:39:33,444.444 INFO    ] time= 05/06/2026 16:39:33
[2026-06-05 16:39:33,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:39:33,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:39:33,635.635 INFO    ] No existing commands found in stream
[2026-06-05 16:39:38,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:39:38,658.658 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 16:39:42,339.339 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:39:42,342.342 INFO    ] Checking for system updates...
[2026-06-05 16:39:42,379.379 INFO    ] 200
[2026-06-05 16:39:42,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:42,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:39:42,447.447 INFO    ] No update needed
[2026-06-05 16:39:42,458.458 INFO    ] Checking for camera pi updates...
[2026-06-05 16:39:42,494.494 INFO    ] 200
[2026-06-05 16:39:42,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:42,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:39:42,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:39:42,593.593 INFO    ] No camera update needed
[2026-06-05 16:39:42,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:39:42,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:39:42,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:39:42,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:39:44,650.650 INFO    ] ================================================
[2026-06-05 16:39:44,665.665 INFO    ] Launching Daemon at Fri Jun  5 16:39:44 IST 2026
[2026-06-05 16:39:44,676.676 INFO    ] ================================================
[2026-06-05 16:39:45,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:39:45
[2026-06-05 16:39:45,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:39:46,201.201 INFO    ] Initializing speech engine...
[2026-06-05 16:39:46,208.208 INFO    ] 2026-06-05 16:39:46
[2026-06-05 16:39:46,468.468 INFO    ] 2026-06-05 16:39:46
[2026-06-05 16:39:46,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:39:46,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:39:46,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:39:46,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:39:46,931.931 INFO    ] time= 05/06/2026 16:39:46
[2026-06-05 16:39:46,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:39:47,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:39:47,160.160 INFO    ] No existing commands found in stream
[2026-06-05 16:39:52,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:39:52,180.180 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 16:39:52,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:39:52,824.824 INFO    ] Checking for system updates...
[2026-06-05 16:39:52,862.862 INFO    ] 200
[2026-06-05 16:39:52,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:52,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:39:52,921.921 INFO    ] No update needed
[2026-06-05 16:39:52,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 16:39:52,958.958 INFO    ] 200
[2026-06-05 16:39:52,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:39:53,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:39:53,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:39:53,044.044 INFO    ] No camera update needed
[2026-06-05 16:39:53,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:39:53,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:39:53,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:39:53,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:39:55,100.100 INFO    ] ================================================
[2026-06-05 16:39:55,115.115 INFO    ] Launching Daemon at Fri Jun  5 16:39:55 IST 2026
[2026-06-05 16:39:55,126.126 INFO    ] ================================================
[2026-06-05 16:39:55,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:39:55
[2026-06-05 16:39:56,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:39:56,803.803 INFO    ] Initializing speech engine...
[2026-06-05 16:39:56,812.812 INFO    ] 2026-06-05 16:39:56
[2026-06-05 16:39:57,081.081 INFO    ] 2026-06-05 16:39:57
[2026-06-05 16:39:57,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:39:57,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:39:57,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:39:57,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:39:57,443.443 INFO    ] time= 05/06/2026 16:39:57
[2026-06-05 16:39:57,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:39:57,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:39:57,521.521 INFO    ] No existing commands found in stream
[2026-06-05 16:40:02,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:40:02,538.538 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 16:40:06,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:40:06,639.639 INFO    ] Checking for system updates...
[2026-06-05 16:40:06,677.677 INFO    ] 200
[2026-06-05 16:40:06,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:06,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:40:06,736.736 INFO    ] No update needed
[2026-06-05 16:40:06,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 16:40:06,773.773 INFO    ] 200
[2026-06-05 16:40:06,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:06,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:40:06,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:40:06,854.854 INFO    ] No camera update needed
[2026-06-05 16:40:06,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:40:06,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:40:06,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:40:06,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:40:08,909.909 INFO    ] ================================================
[2026-06-05 16:40:08,928.928 INFO    ] Launching Daemon at Fri Jun  5 16:40:08 IST 2026
[2026-06-05 16:40:08,940.940 INFO    ] ================================================
[2026-06-05 16:40:09,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:40:09
[2026-06-05 16:40:10,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:40:10,346.346 INFO    ] Initializing speech engine...
[2026-06-05 16:40:10,353.353 INFO    ] 2026-06-05 16:40:10
[2026-06-05 16:40:10,665.665 INFO    ] 2026-06-05 16:40:10
[2026-06-05 16:40:10,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:40:10,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:40:10,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:40:11,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:40:11,056.056 INFO    ] time= 05/06/2026 16:40:11
[2026-06-05 16:40:11,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:40:11,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:40:11,183.183 INFO    ] No existing commands found in stream
[2026-06-05 16:40:16,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:40:16,199.199 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 16:40:18,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:40:18,460.460 INFO    ] Checking for system updates...
[2026-06-05 16:40:18,497.497 INFO    ] 200
[2026-06-05 16:40:18,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:18,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:40:18,556.556 INFO    ] No update needed
[2026-06-05 16:40:18,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 16:40:18,597.597 INFO    ] 200
[2026-06-05 16:40:18,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:18,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:40:18,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:40:18,786.786 INFO    ] No camera update needed
[2026-06-05 16:40:18,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:40:18,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:40:18,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:40:18,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:40:20,842.842 INFO    ] ================================================
[2026-06-05 16:40:20,857.857 INFO    ] Launching Daemon at Fri Jun  5 16:40:20 IST 2026
[2026-06-05 16:40:20,869.869 INFO    ] ================================================
[2026-06-05 16:40:21,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:40:21
[2026-06-05 16:40:22,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:40:22,338.338 INFO    ] Initializing speech engine...
[2026-06-05 16:40:22,345.345 INFO    ] 2026-06-05 16:40:22
[2026-06-05 16:40:22,609.609 INFO    ] 2026-06-05 16:40:22
[2026-06-05 16:40:22,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:40:24,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:40:24,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:40:25,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:40:25,068.068 INFO    ] time= 05/06/2026 16:40:25
[2026-06-05 16:40:25,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:40:25,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:40:25,183.183 INFO    ] No existing commands found in stream
[2026-06-05 16:40:30,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:40:30,199.199 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 16:40:33,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:40:33,909.909 INFO    ] Checking for system updates...
[2026-06-05 16:40:33,945.945 INFO    ] 200
[2026-06-05 16:40:33,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:34,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:40:34,004.004 INFO    ] No update needed
[2026-06-05 16:40:34,007.007 INFO    ] Checking for camera pi updates...
[2026-06-05 16:40:34,040.040 INFO    ] 200
[2026-06-05 16:40:34,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:34,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:40:34,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:40:34,112.112 INFO    ] No camera update needed
[2026-06-05 16:40:34,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:40:34,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:40:34,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:40:34,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:40:36,168.168 INFO    ] ================================================
[2026-06-05 16:40:36,185.185 INFO    ] Launching Daemon at Fri Jun  5 16:40:36 IST 2026
[2026-06-05 16:40:36,195.195 INFO    ] ================================================
[2026-06-05 16:40:36,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:40:36
[2026-06-05 16:40:37,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:40:37,664.664 INFO    ] Initializing speech engine...
[2026-06-05 16:40:37,685.685 INFO    ] 2026-06-05 16:40:37
[2026-06-05 16:40:37,945.945 INFO    ] 2026-06-05 16:40:37
[2026-06-05 16:40:37,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:40:38,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:40:38,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:40:38,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:40:38,317.317 INFO    ] time= 05/06/2026 16:40:38
[2026-06-05 16:40:38,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:40:38,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:40:38,501.501 INFO    ] No existing commands found in stream
[2026-06-05 16:40:43,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:40:43,527.527 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 16:40:46,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:40:46,970.970 INFO    ] Checking for system updates...
[2026-06-05 16:40:47,007.007 INFO    ] 200
[2026-06-05 16:40:47,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:47,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:40:47,067.067 INFO    ] No update needed
[2026-06-05 16:40:47,069.069 INFO    ] Checking for camera pi updates...
[2026-06-05 16:40:47,104.104 INFO    ] 200
[2026-06-05 16:40:47,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:47,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:40:47,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:40:47,199.199 INFO    ] No camera update needed
[2026-06-05 16:40:47,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:40:47,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:40:47,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:40:47,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:40:49,254.254 INFO    ] ================================================
[2026-06-05 16:40:49,271.271 INFO    ] Launching Daemon at Fri Jun  5 16:40:49 IST 2026
[2026-06-05 16:40:49,282.282 INFO    ] ================================================
[2026-06-05 16:40:49,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:40:49
[2026-06-05 16:40:50,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:40:50,955.955 INFO    ] Initializing speech engine...
[2026-06-05 16:40:50,969.969 INFO    ] 2026-06-05 16:40:50
[2026-06-05 16:40:51,249.249 INFO    ] 2026-06-05 16:40:51
[2026-06-05 16:40:51,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:40:51,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:40:51,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:40:51,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:40:51,734.734 INFO    ] time= 05/06/2026 16:40:51
[2026-06-05 16:40:51,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:40:51,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:40:51,941.941 INFO    ] No existing commands found in stream
[2026-06-05 16:40:56,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:40:56,971.971 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 16:40:58,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:40:58,041.041 INFO    ] Checking for system updates...
[2026-06-05 16:40:58,079.079 INFO    ] 200
[2026-06-05 16:40:58,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:58,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:40:58,141.141 INFO    ] No update needed
[2026-06-05 16:40:58,143.143 INFO    ] Checking for camera pi updates...
[2026-06-05 16:40:58,178.178 INFO    ] 200
[2026-06-05 16:40:58,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:40:58,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:40:58,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:40:58,279.279 INFO    ] No camera update needed
[2026-06-05 16:40:58,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:40:58,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:40:58,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:40:58,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:41:00,334.334 INFO    ] ================================================
[2026-06-05 16:41:00,350.350 INFO    ] Launching Daemon at Fri Jun  5 16:41:00 IST 2026
[2026-06-05 16:41:00,361.361 INFO    ] ================================================
[2026-06-05 16:41:00,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:41:00
[2026-06-05 16:41:01,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:41:02,111.111 INFO    ] Initializing speech engine...
[2026-06-05 16:41:02,118.118 INFO    ] 2026-06-05 16:41:02
[2026-06-05 16:41:02,570.570 INFO    ] 2026-06-05 16:41:02
[2026-06-05 16:41:02,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:41:02,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:41:02,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:41:03,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:41:03,096.096 INFO    ] time= 05/06/2026 16:41:03
[2026-06-05 16:41:03,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:41:03,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:41:03,262.262 INFO    ] No existing commands found in stream
[2026-06-05 16:41:08,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:41:08,282.282 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 16:41:10,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:41:10,407.407 INFO    ] Checking for system updates...
[2026-06-05 16:41:10,444.444 INFO    ] 200
[2026-06-05 16:41:10,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:41:10,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:41:10,502.502 INFO    ] No update needed
[2026-06-05 16:41:10,504.504 INFO    ] Checking for camera pi updates...
[2026-06-05 16:41:10,542.542 INFO    ] 200
[2026-06-05 16:41:10,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:41:10,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:41:10,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:41:10,631.631 INFO    ] No camera update needed
[2026-06-05 16:41:10,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:41:10,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:41:10,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:41:10,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:41:12,687.687 INFO    ] ================================================
[2026-06-05 16:41:12,703.703 INFO    ] Launching Daemon at Fri Jun  5 16:41:12 IST 2026
[2026-06-05 16:41:12,714.714 INFO    ] ================================================
[2026-06-05 16:41:13,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:41:13
[2026-06-05 16:41:13,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:41:14,119.119 INFO    ] Initializing speech engine...
[2026-06-05 16:41:14,140.140 INFO    ] 2026-06-05 16:41:14
[2026-06-05 16:41:14,395.395 INFO    ] 2026-06-05 16:41:14
[2026-06-05 16:41:14,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:41:14,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:41:14,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:41:14,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:41:14,860.860 INFO    ] time= 05/06/2026 16:41:14
[2026-06-05 16:41:14,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:41:14,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:41:15,130.130 INFO    ] No existing commands found in stream
[2026-06-05 16:41:20,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:41:20,169.169 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 16:41:25,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:41:25,186.186 INFO    ] Checking for system updates...
[2026-06-05 16:41:25,226.226 INFO    ] 200
[2026-06-05 16:41:25,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:41:25,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:41:25,290.290 INFO    ] No update needed
[2026-06-05 16:41:25,292.292 INFO    ] Checking for camera pi updates...
[2026-06-05 16:41:25,335.335 INFO    ] 200
[2026-06-05 16:41:25,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:41:25,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:41:25,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:41:25,425.425 INFO    ] No camera update needed
[2026-06-05 16:41:25,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:41:25,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:41:25,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:41:25,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:41:27,483.483 INFO    ] ================================================
[2026-06-05 16:41:27,499.499 INFO    ] Launching Daemon at Fri Jun  5 16:41:27 IST 2026
[2026-06-05 16:41:27,511.511 INFO    ] ================================================
[2026-06-05 16:41:28,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:41:28
[2026-06-05 16:41:28,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:41:29,003.003 INFO    ] Initializing speech engine...
[2026-06-05 16:41:29,009.009 INFO    ] 2026-06-05 16:41:29
[2026-06-05 16:41:29,254.254 INFO    ] 2026-06-05 16:41:29
[2026-06-05 16:41:29,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:41:29,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:41:29,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:41:29,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:41:29,756.756 INFO    ] time= 05/06/2026 16:41:29
[2026-06-05 16:41:29,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:41:29,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:41:29,966.966 INFO    ] No existing commands found in stream
[2026-06-05 16:41:34,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:41:34,983.983 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 16:41:36,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:41:36,753.753 INFO    ] Checking for system updates...
[2026-06-05 16:41:36,789.789 INFO    ] 200
[2026-06-05 16:41:36,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:41:36,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:41:36,853.853 INFO    ] No update needed
[2026-06-05 16:41:36,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 16:41:36,889.889 INFO    ] 200
[2026-06-05 16:41:36,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:41:36,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:41:36,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:41:36,980.980 INFO    ] No camera update needed
[2026-06-05 16:41:36,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:41:36,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:41:36,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:41:36,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:41:39,034.034 INFO    ] ================================================
[2026-06-05 16:41:39,051.051 INFO    ] Launching Daemon at Fri Jun  5 16:41:39 IST 2026
[2026-06-05 16:41:39,062.062 INFO    ] ================================================
[2026-06-05 16:41:39,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:41:39
[2026-06-05 16:41:40,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:41:40,528.528 INFO    ] Initializing speech engine...
[2026-06-05 16:41:40,544.544 INFO    ] 2026-06-05 16:41:40
[2026-06-05 16:41:40,814.814 INFO    ] 2026-06-05 16:41:40
[2026-06-05 16:41:40,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:41:41,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:41:41,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:41:41,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:41:41,315.315 INFO    ] time= 05/06/2026 16:41:41
[2026-06-05 16:41:41,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:41:41,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:41:41,478.478 INFO    ] No existing commands found in stream
[2026-06-05 16:41:46,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:41:46,493.493 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 16:41:49,767.767 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:41:49,770.770 INFO    ] Checking for system updates...
[2026-06-05 16:41:49,806.806 INFO    ] 200
[2026-06-05 16:41:49,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:41:49,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:41:49,865.865 INFO    ] No update needed
[2026-06-05 16:41:49,867.867 INFO    ] Checking for camera pi updates...
[2026-06-05 16:41:49,901.901 INFO    ] 200
[2026-06-05 16:41:49,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:41:49,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:41:49,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:41:49,988.988 INFO    ] No camera update needed
[2026-06-05 16:41:49,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:41:49,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:41:49,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:41:50,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:41:52,047.047 INFO    ] ================================================
[2026-06-05 16:41:52,063.063 INFO    ] Launching Daemon at Fri Jun  5 16:41:52 IST 2026
[2026-06-05 16:41:52,074.074 INFO    ] ================================================
[2026-06-05 16:41:52,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:41:52
[2026-06-05 16:41:53,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:41:53,689.689 INFO    ] Initializing speech engine...
[2026-06-05 16:41:53,698.698 INFO    ] 2026-06-05 16:41:53
[2026-06-05 16:41:53,968.968 INFO    ] 2026-06-05 16:41:53
[2026-06-05 16:41:54,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:41:55,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:41:55,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:41:55,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:41:55,354.354 INFO    ] time= 05/06/2026 16:41:55
[2026-06-05 16:41:55,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:41:55,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:41:55,430.430 INFO    ] No existing commands found in stream
[2026-06-05 16:42:00,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:42:00,445.445 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 16:42:01,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:42:01,847.847 INFO    ] Checking for system updates...
[2026-06-05 16:42:01,900.900 INFO    ] 200
[2026-06-05 16:42:01,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:01,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:42:01,986.986 INFO    ] No update needed
[2026-06-05 16:42:01,990.990 INFO    ] Checking for camera pi updates...
[2026-06-05 16:42:02,041.041 INFO    ] 200
[2026-06-05 16:42:02,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:02,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:42:02,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:42:02,134.134 INFO    ] No camera update needed
[2026-06-05 16:42:02,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:42:02,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:42:02,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:42:02,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:42:04,194.194 INFO    ] ================================================
[2026-06-05 16:42:04,211.211 INFO    ] Launching Daemon at Fri Jun  5 16:42:04 IST 2026
[2026-06-05 16:42:04,221.221 INFO    ] ================================================
[2026-06-05 16:42:04,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:42:04
[2026-06-05 16:42:05,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:42:05,650.650 INFO    ] Initializing speech engine...
[2026-06-05 16:42:05,659.659 INFO    ] 2026-06-05 16:42:05
[2026-06-05 16:42:05,932.932 INFO    ] 2026-06-05 16:42:05
[2026-06-05 16:42:05,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:42:06,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:42:06,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:42:06,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:42:06,318.318 INFO    ] time= 05/06/2026 16:42:06
[2026-06-05 16:42:06,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:42:06,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:42:06,505.505 INFO    ] No existing commands found in stream
[2026-06-05 16:42:11,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:42:11,533.533 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 16:42:15,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:42:15,452.452 INFO    ] Checking for system updates...
[2026-06-05 16:42:15,491.491 INFO    ] 200
[2026-06-05 16:42:15,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:15,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:42:15,556.556 INFO    ] No update needed
[2026-06-05 16:42:15,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 16:42:15,592.592 INFO    ] 200
[2026-06-05 16:42:15,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:15,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:42:15,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:42:15,696.696 INFO    ] No camera update needed
[2026-06-05 16:42:15,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:42:15,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:42:15,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:42:15,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:42:17,752.752 INFO    ] ================================================
[2026-06-05 16:42:17,768.768 INFO    ] Launching Daemon at Fri Jun  5 16:42:17 IST 2026
[2026-06-05 16:42:17,778.778 INFO    ] ================================================
[2026-06-05 16:42:18,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:42:18
[2026-06-05 16:42:19,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:42:19,365.365 INFO    ] Initializing speech engine...
[2026-06-05 16:42:19,379.379 INFO    ] 2026-06-05 16:42:19
[2026-06-05 16:42:19,667.667 INFO    ] 2026-06-05 16:42:19
[2026-06-05 16:42:19,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:42:19,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:42:19,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:42:20,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:42:20,053.053 INFO    ] time= 05/06/2026 16:42:20
[2026-06-05 16:42:20,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:42:20,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:42:20,161.161 INFO    ] No existing commands found in stream
[2026-06-05 16:42:25,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:42:25,200.200 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 16:42:29,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:42:29,471.471 INFO    ] Checking for system updates...
[2026-06-05 16:42:29,508.508 INFO    ] 200
[2026-06-05 16:42:29,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:29,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:42:29,573.573 INFO    ] No update needed
[2026-06-05 16:42:29,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 16:42:29,609.609 INFO    ] 200
[2026-06-05 16:42:29,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:29,657.657 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:42:29,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:42:29,813.813 INFO    ] No camera update needed
[2026-06-05 16:42:29,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:42:29,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:42:29,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:42:29,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:42:31,872.872 INFO    ] ================================================
[2026-06-05 16:42:31,889.889 INFO    ] Launching Daemon at Fri Jun  5 16:42:31 IST 2026
[2026-06-05 16:42:31,901.901 INFO    ] ================================================
[2026-06-05 16:42:32,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:42:32
[2026-06-05 16:42:33,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:42:33,423.423 INFO    ] Initializing speech engine...
[2026-06-05 16:42:33,430.430 INFO    ] 2026-06-05 16:42:33
[2026-06-05 16:42:33,692.692 INFO    ] 2026-06-05 16:42:33
[2026-06-05 16:42:33,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:42:33,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:42:33,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:42:34,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:42:34,238.238 INFO    ] time= 05/06/2026 16:42:34
[2026-06-05 16:42:34,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:42:34,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:42:34,390.390 INFO    ] No existing commands found in stream
[2026-06-05 16:42:39,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:42:39,406.406 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 16:42:41,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:42:41,562.562 INFO    ] Checking for system updates...
[2026-06-05 16:42:41,598.598 INFO    ] 200
[2026-06-05 16:42:41,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:41,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:42:41,662.662 INFO    ] No update needed
[2026-06-05 16:42:41,664.664 INFO    ] Checking for camera pi updates...
[2026-06-05 16:42:41,698.698 INFO    ] 200
[2026-06-05 16:42:41,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:41,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:42:41,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:42:41,795.795 INFO    ] No camera update needed
[2026-06-05 16:42:41,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:42:41,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:42:41,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:42:41,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:42:43,852.852 INFO    ] ================================================
[2026-06-05 16:42:43,868.868 INFO    ] Launching Daemon at Fri Jun  5 16:42:43 IST 2026
[2026-06-05 16:42:43,879.879 INFO    ] ================================================
[2026-06-05 16:42:44,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:42:44
[2026-06-05 16:42:45,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:42:45,275.275 INFO    ] Initializing speech engine...
[2026-06-05 16:42:45,283.283 INFO    ] 2026-06-05 16:42:45
[2026-06-05 16:42:45,560.560 INFO    ] 2026-06-05 16:42:45
[2026-06-05 16:42:45,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:42:45,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:42:45,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:42:46,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:42:46,047.047 INFO    ] time= 05/06/2026 16:42:46
[2026-06-05 16:42:46,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:42:46,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:42:46,266.266 INFO    ] No existing commands found in stream
[2026-06-05 16:42:51,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:42:51,297.297 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 16:42:55,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:42:55,371.371 INFO    ] Checking for system updates...
[2026-06-05 16:42:55,409.409 INFO    ] 200
[2026-06-05 16:42:55,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:55,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:42:55,475.475 INFO    ] No update needed
[2026-06-05 16:42:55,478.478 INFO    ] Checking for camera pi updates...
[2026-06-05 16:42:55,515.515 INFO    ] 200
[2026-06-05 16:42:55,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:42:55,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:42:55,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:42:55,612.612 INFO    ] No camera update needed
[2026-06-05 16:42:55,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:42:55,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:42:55,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:42:55,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:42:57,673.673 INFO    ] ================================================
[2026-06-05 16:42:57,688.688 INFO    ] Launching Daemon at Fri Jun  5 16:42:57 IST 2026
[2026-06-05 16:42:57,699.699 INFO    ] ================================================
[2026-06-05 16:42:58,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:42:58
[2026-06-05 16:42:58,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:42:59,184.184 INFO    ] Initializing speech engine...
[2026-06-05 16:42:59,195.195 INFO    ] 2026-06-05 16:42:59
[2026-06-05 16:42:59,503.503 INFO    ] 2026-06-05 16:42:59
[2026-06-05 16:42:59,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:42:59,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:42:59,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:43:00,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:43:00,011.011 INFO    ] time= 05/06/2026 16:43:00
[2026-06-05 16:43:00,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:43:00,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:43:00,207.207 INFO    ] No existing commands found in stream
[2026-06-05 16:43:05,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:43:05,241.241 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 16:43:09,562.562 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:43:09,565.565 INFO    ] Checking for system updates...
[2026-06-05 16:43:09,605.605 INFO    ] 200
[2026-06-05 16:43:09,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:43:09,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:43:09,668.668 INFO    ] No update needed
[2026-06-05 16:43:09,671.671 INFO    ] Checking for camera pi updates...
[2026-06-05 16:43:09,707.707 INFO    ] 200
[2026-06-05 16:43:09,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:43:09,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:43:09,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:43:09,794.794 INFO    ] No camera update needed
[2026-06-05 16:43:09,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:43:09,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:43:09,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:43:09,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:43:11,848.848 INFO    ] ================================================
[2026-06-05 16:43:11,864.864 INFO    ] Launching Daemon at Fri Jun  5 16:43:11 IST 2026
[2026-06-05 16:43:11,875.875 INFO    ] ================================================
[2026-06-05 16:43:12,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:43:12
[2026-06-05 16:43:13,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:43:13,405.405 INFO    ] Initializing speech engine...
[2026-06-05 16:43:13,413.413 INFO    ] 2026-06-05 16:43:13
[2026-06-05 16:43:13,686.686 INFO    ] 2026-06-05 16:43:13
[2026-06-05 16:43:13,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:43:13,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:43:13,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:43:14,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:43:14,169.169 INFO    ] time= 05/06/2026 16:43:14
[2026-06-05 16:43:14,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:43:14,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:43:14,390.390 INFO    ] No existing commands found in stream
[2026-06-05 16:43:19,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:43:19,407.407 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 16:43:25,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:43:25,193.193 INFO    ] Checking for system updates...
[2026-06-05 16:43:25,234.234 INFO    ] 200
[2026-06-05 16:43:25,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:43:25,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:43:25,294.294 INFO    ] No update needed
[2026-06-05 16:43:25,297.297 INFO    ] Checking for camera pi updates...
[2026-06-05 16:43:25,335.335 INFO    ] 200
[2026-06-05 16:43:25,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:43:25,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:43:25,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:43:25,441.441 INFO    ] No camera update needed
[2026-06-05 16:43:25,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:43:25,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:43:25,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:43:25,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:43:27,500.500 INFO    ] ================================================
[2026-06-05 16:43:27,516.516 INFO    ] Launching Daemon at Fri Jun  5 16:43:27 IST 2026
[2026-06-05 16:43:27,527.527 INFO    ] ================================================
[2026-06-05 16:43:28,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:43:28
[2026-06-05 16:43:28,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:43:28,951.951 INFO    ] Initializing speech engine...
[2026-06-05 16:43:28,960.960 INFO    ] 2026-06-05 16:43:28
[2026-06-05 16:43:29,208.208 INFO    ] 2026-06-05 16:43:29
[2026-06-05 16:43:29,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:43:29,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:43:29,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:43:29,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:43:29,712.712 INFO    ] time= 05/06/2026 16:43:29
[2026-06-05 16:43:29,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:43:29,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:43:29,900.900 INFO    ] No existing commands found in stream
[2026-06-05 16:43:34,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:43:34,928.928 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 16:43:39,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:43:39,307.307 INFO    ] Checking for system updates...
[2026-06-05 16:43:39,348.348 INFO    ] 200
[2026-06-05 16:43:39,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:43:39,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:43:39,409.409 INFO    ] No update needed
[2026-06-05 16:43:39,411.411 INFO    ] Checking for camera pi updates...
[2026-06-05 16:43:39,447.447 INFO    ] 200
[2026-06-05 16:43:39,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:43:39,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:43:39,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:43:39,541.541 INFO    ] No camera update needed
[2026-06-05 16:43:39,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:43:39,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:43:39,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:43:39,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:43:41,601.601 INFO    ] ================================================
[2026-06-05 16:43:41,617.617 INFO    ] Launching Daemon at Fri Jun  5 16:43:41 IST 2026
[2026-06-05 16:43:41,628.628 INFO    ] ================================================
[2026-06-05 16:43:42,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:43:42
[2026-06-05 16:43:42,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:43:43,059.059 INFO    ] Initializing speech engine...
[2026-06-05 16:43:43,066.066 INFO    ] 2026-06-05 16:43:43
[2026-06-05 16:43:43,363.363 INFO    ] 2026-06-05 16:43:43
[2026-06-05 16:43:43,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:43:43,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:43:43,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:43:43,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:43:43,790.790 INFO    ] time= 05/06/2026 16:43:43
[2026-06-05 16:43:43,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:43:43,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:43:43,969.969 INFO    ] No existing commands found in stream
[2026-06-05 16:43:48,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:43:48,997.997 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 16:43:52,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:43:52,379.379 INFO    ] Checking for system updates...
[2026-06-05 16:43:52,415.415 INFO    ] 200
[2026-06-05 16:43:52,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:43:52,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:43:52,481.481 INFO    ] No update needed
[2026-06-05 16:43:52,484.484 INFO    ] Checking for camera pi updates...
[2026-06-05 16:43:52,523.523 INFO    ] 200
[2026-06-05 16:43:52,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:43:52,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:43:52,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:43:52,627.627 INFO    ] No camera update needed
[2026-06-05 16:43:52,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:43:52,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:43:52,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:43:52,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:43:54,685.685 INFO    ] ================================================
[2026-06-05 16:43:54,701.701 INFO    ] Launching Daemon at Fri Jun  5 16:43:54 IST 2026
[2026-06-05 16:43:54,712.712 INFO    ] ================================================
[2026-06-05 16:43:55,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:43:55
[2026-06-05 16:43:55,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:43:56,137.137 INFO    ] Initializing speech engine...
[2026-06-05 16:43:56,158.158 INFO    ] 2026-06-05 16:43:56
[2026-06-05 16:43:56,427.427 INFO    ] 2026-06-05 16:43:56
[2026-06-05 16:43:56,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:43:56,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:43:56,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:43:56,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:43:56,822.822 INFO    ] time= 05/06/2026 16:43:56
[2026-06-05 16:43:56,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:43:56,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:43:56,930.930 INFO    ] No existing commands found in stream
[2026-06-05 16:44:01,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:44:01,946.946 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 16:44:03,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:44:03,557.557 INFO    ] Checking for system updates...
[2026-06-05 16:44:03,595.595 INFO    ] 200
[2026-06-05 16:44:03,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:03,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:44:03,660.660 INFO    ] No update needed
[2026-06-05 16:44:03,662.662 INFO    ] Checking for camera pi updates...
[2026-06-05 16:44:03,697.697 INFO    ] 200
[2026-06-05 16:44:03,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:03,741.741 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:44:03,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:44:03,785.785 INFO    ] No camera update needed
[2026-06-05 16:44:03,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:44:03,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:44:03,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:44:03,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:44:05,842.842 INFO    ] ================================================
[2026-06-05 16:44:05,857.857 INFO    ] Launching Daemon at Fri Jun  5 16:44:05 IST 2026
[2026-06-05 16:44:05,869.869 INFO    ] ================================================
[2026-06-05 16:44:06,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:44:06
[2026-06-05 16:44:07,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:44:07,295.295 INFO    ] Initializing speech engine...
[2026-06-05 16:44:07,317.317 INFO    ] 2026-06-05 16:44:07
[2026-06-05 16:44:07,576.576 INFO    ] 2026-06-05 16:44:07
[2026-06-05 16:44:07,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:44:07,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:44:07,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:44:08,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:44:08,039.039 INFO    ] time= 05/06/2026 16:44:08
[2026-06-05 16:44:08,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:44:08,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:44:08,305.305 INFO    ] No existing commands found in stream
[2026-06-05 16:44:13,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:44:13,324.324 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 16:44:15,306.306 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:44:15,308.308 INFO    ] Checking for system updates...
[2026-06-05 16:44:15,344.344 INFO    ] 200
[2026-06-05 16:44:15,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:15,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:44:15,403.403 INFO    ] No update needed
[2026-06-05 16:44:15,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 16:44:15,444.444 INFO    ] 200
[2026-06-05 16:44:15,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:15,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:44:15,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:44:15,537.537 INFO    ] No camera update needed
[2026-06-05 16:44:15,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:44:15,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:44:15,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:44:15,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:44:17,599.599 INFO    ] ================================================
[2026-06-05 16:44:17,615.615 INFO    ] Launching Daemon at Fri Jun  5 16:44:17 IST 2026
[2026-06-05 16:44:17,626.626 INFO    ] ================================================
[2026-06-05 16:44:18,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:44:18
[2026-06-05 16:44:18,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:44:19,077.077 INFO    ] Initializing speech engine...
[2026-06-05 16:44:19,091.091 INFO    ] 2026-06-05 16:44:19
[2026-06-05 16:44:19,346.346 INFO    ] 2026-06-05 16:44:19
[2026-06-05 16:44:19,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:44:19,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:44:19,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:44:19,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:44:19,814.814 INFO    ] time= 05/06/2026 16:44:19
[2026-06-05 16:44:19,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:44:19,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:44:20,038.038 INFO    ] No existing commands found in stream
[2026-06-05 16:44:25,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:44:25,066.066 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 16:44:27,569.569 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:44:27,572.572 INFO    ] Checking for system updates...
[2026-06-05 16:44:27,611.611 INFO    ] 200
[2026-06-05 16:44:27,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:27,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:44:27,672.672 INFO    ] No update needed
[2026-06-05 16:44:27,674.674 INFO    ] Checking for camera pi updates...
[2026-06-05 16:44:27,712.712 INFO    ] 200
[2026-06-05 16:44:27,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:27,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:44:27,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:44:27,807.807 INFO    ] No camera update needed
[2026-06-05 16:44:27,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:44:27,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:44:27,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:44:27,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:44:29,866.866 INFO    ] ================================================
[2026-06-05 16:44:29,882.882 INFO    ] Launching Daemon at Fri Jun  5 16:44:29 IST 2026
[2026-06-05 16:44:29,893.893 INFO    ] ================================================
[2026-06-05 16:44:30,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:44:30
[2026-06-05 16:44:31,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:44:31,368.368 INFO    ] Initializing speech engine...
[2026-06-05 16:44:31,377.377 INFO    ] 2026-06-05 16:44:31
[2026-06-05 16:44:31,675.675 INFO    ] 2026-06-05 16:44:31
[2026-06-05 16:44:31,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:44:31,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:44:31,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:44:32,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:44:32,100.100 INFO    ] time= 05/06/2026 16:44:32
[2026-06-05 16:44:32,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:44:32,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:44:32,219.219 INFO    ] No existing commands found in stream
[2026-06-05 16:44:37,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:44:37,238.238 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 16:44:37,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:44:37,664.664 INFO    ] Checking for system updates...
[2026-06-05 16:44:37,702.702 INFO    ] 200
[2026-06-05 16:44:37,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:37,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:44:37,761.761 INFO    ] No update needed
[2026-06-05 16:44:37,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 16:44:37,804.804 INFO    ] 200
[2026-06-05 16:44:37,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:37,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:44:37,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:44:37,896.896 INFO    ] No camera update needed
[2026-06-05 16:44:37,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:44:37,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:44:37,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:44:37,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:44:39,957.957 INFO    ] ================================================
[2026-06-05 16:44:39,972.972 INFO    ] Launching Daemon at Fri Jun  5 16:44:39 IST 2026
[2026-06-05 16:44:39,984.984 INFO    ] ================================================
[2026-06-05 16:44:40,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:44:40
[2026-06-05 16:44:41,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:44:41,388.388 INFO    ] Initializing speech engine...
[2026-06-05 16:44:41,409.409 INFO    ] 2026-06-05 16:44:41
[2026-06-05 16:44:41,670.670 INFO    ] 2026-06-05 16:44:41
[2026-06-05 16:44:41,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:44:41,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:44:41,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:44:42,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:44:42,046.046 INFO    ] time= 05/06/2026 16:44:42
[2026-06-05 16:44:42,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:44:42,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:44:42,219.219 INFO    ] No existing commands found in stream
[2026-06-05 16:44:47,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:44:47,252.252 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 16:44:50,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:44:50,799.799 INFO    ] Checking for system updates...
[2026-06-05 16:44:50,835.835 INFO    ] 200
[2026-06-05 16:44:50,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:50,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:44:50,892.892 INFO    ] No update needed
[2026-06-05 16:44:50,895.895 INFO    ] Checking for camera pi updates...
[2026-06-05 16:44:50,929.929 INFO    ] 200
[2026-06-05 16:44:50,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:44:50,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:44:51,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:44:51,015.015 INFO    ] No camera update needed
[2026-06-05 16:44:51,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:44:51,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:44:51,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:44:51,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:44:53,071.071 INFO    ] ================================================
[2026-06-05 16:44:53,087.087 INFO    ] Launching Daemon at Fri Jun  5 16:44:53 IST 2026
[2026-06-05 16:44:53,097.097 INFO    ] ================================================
[2026-06-05 16:44:53,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:44:53
[2026-06-05 16:44:54,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:44:54,762.762 INFO    ] Initializing speech engine...
[2026-06-05 16:44:54,771.771 INFO    ] 2026-06-05 16:44:54
[2026-06-05 16:44:55,045.045 INFO    ] 2026-06-05 16:44:55
[2026-06-05 16:44:55,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:44:55,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:44:55,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:44:55,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:44:55,554.554 INFO    ] time= 05/06/2026 16:44:55
[2026-06-05 16:44:55,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:44:55,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:44:55,755.755 INFO    ] No existing commands found in stream
[2026-06-05 16:45:00,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:45:00,790.790 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 16:45:02,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:45:02,654.654 INFO    ] Checking for system updates...
[2026-06-05 16:45:02,708.708 INFO    ] 200
[2026-06-05 16:45:02,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:02,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:45:02,794.794 INFO    ] No update needed
[2026-06-05 16:45:02,797.797 INFO    ] Checking for camera pi updates...
[2026-06-05 16:45:02,836.836 INFO    ] 200
[2026-06-05 16:45:02,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:02,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:45:02,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:45:02,943.943 INFO    ] No camera update needed
[2026-06-05 16:45:02,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:45:02,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:45:02,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:45:02,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:45:05,005.005 INFO    ] ================================================
[2026-06-05 16:45:05,020.020 INFO    ] Launching Daemon at Fri Jun  5 16:45:05 IST 2026
[2026-06-05 16:45:05,031.031 INFO    ] ================================================
[2026-06-05 16:45:05,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:45:05
[2026-06-05 16:45:06,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:45:06,489.489 INFO    ] Initializing speech engine...
[2026-06-05 16:45:06,498.498 INFO    ] 2026-06-05 16:45:06
[2026-06-05 16:45:06,748.748 INFO    ] 2026-06-05 16:45:06
[2026-06-05 16:45:06,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:45:06,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:45:07,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:45:07,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:45:07,204.204 INFO    ] time= 05/06/2026 16:45:07
[2026-06-05 16:45:07,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:45:07,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:45:07,417.417 INFO    ] No existing commands found in stream
[2026-06-05 16:45:12,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:45:12,456.456 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 16:45:16,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:45:16,329.329 INFO    ] Checking for system updates...
[2026-06-05 16:45:16,365.365 INFO    ] 200
[2026-06-05 16:45:16,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:16,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:45:16,423.423 INFO    ] No update needed
[2026-06-05 16:45:16,425.425 INFO    ] Checking for camera pi updates...
[2026-06-05 16:45:16,463.463 INFO    ] 200
[2026-06-05 16:45:16,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:16,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:45:16,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:45:16,558.558 INFO    ] No camera update needed
[2026-06-05 16:45:16,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:45:16,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:45:16,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:45:16,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:45:18,615.615 INFO    ] ================================================
[2026-06-05 16:45:18,631.631 INFO    ] Launching Daemon at Fri Jun  5 16:45:18 IST 2026
[2026-06-05 16:45:18,642.642 INFO    ] ================================================
[2026-06-05 16:45:19,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:45:19
[2026-06-05 16:45:19,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:45:20,080.080 INFO    ] Initializing speech engine...
[2026-06-05 16:45:20,090.090 INFO    ] 2026-06-05 16:45:20
[2026-06-05 16:45:20,395.395 INFO    ] 2026-06-05 16:45:20
[2026-06-05 16:45:20,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:45:20,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:45:20,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:45:20,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:45:20,829.829 INFO    ] time= 05/06/2026 16:45:20
[2026-06-05 16:45:20,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:45:20,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:45:20,920.920 INFO    ] No existing commands found in stream
[2026-06-05 16:45:25,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:45:25,948.948 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 16:45:29,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:45:29,285.285 INFO    ] Checking for system updates...
[2026-06-05 16:45:29,321.321 INFO    ] 200
[2026-06-05 16:45:29,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:29,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:45:29,381.381 INFO    ] No update needed
[2026-06-05 16:45:29,383.383 INFO    ] Checking for camera pi updates...
[2026-06-05 16:45:29,417.417 INFO    ] 200
[2026-06-05 16:45:29,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:29,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:45:29,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:45:29,507.507 INFO    ] No camera update needed
[2026-06-05 16:45:29,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:45:29,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:45:29,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:45:29,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:45:31,565.565 INFO    ] ================================================
[2026-06-05 16:45:31,580.580 INFO    ] Launching Daemon at Fri Jun  5 16:45:31 IST 2026
[2026-06-05 16:45:31,591.591 INFO    ] ================================================
[2026-06-05 16:45:32,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:45:32
[2026-06-05 16:45:33,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:45:33,350.350 INFO    ] Initializing speech engine...
[2026-06-05 16:45:33,359.359 INFO    ] 2026-06-05 16:45:33
[2026-06-05 16:45:33,640.640 INFO    ] 2026-06-05 16:45:33
[2026-06-05 16:45:33,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:45:33,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:45:33,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:45:34,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:45:34,206.206 INFO    ] time= 05/06/2026 16:45:34
[2026-06-05 16:45:34,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:45:34,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:45:34,371.371 INFO    ] No existing commands found in stream
[2026-06-05 16:45:39,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:45:39,394.394 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 16:45:41,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:45:41,771.771 INFO    ] Checking for system updates...
[2026-06-05 16:45:41,809.809 INFO    ] 200
[2026-06-05 16:45:41,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:41,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:45:41,869.869 INFO    ] No update needed
[2026-06-05 16:45:41,872.872 INFO    ] Checking for camera pi updates...
[2026-06-05 16:45:41,907.907 INFO    ] 200
[2026-06-05 16:45:41,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:41,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:45:42,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:45:42,007.007 INFO    ] No camera update needed
[2026-06-05 16:45:42,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:45:42,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:45:42,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:45:42,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:45:44,062.062 INFO    ] ================================================
[2026-06-05 16:45:44,078.078 INFO    ] Launching Daemon at Fri Jun  5 16:45:44 IST 2026
[2026-06-05 16:45:44,088.088 INFO    ] ================================================
[2026-06-05 16:45:44,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:45:44
[2026-06-05 16:45:45,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:45:45,522.522 INFO    ] Initializing speech engine...
[2026-06-05 16:45:45,529.529 INFO    ] 2026-06-05 16:45:45
[2026-06-05 16:45:45,777.777 INFO    ] 2026-06-05 16:45:45
[2026-06-05 16:45:45,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:45:45,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:45:46,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:45:46,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:45:46,155.155 INFO    ] time= 05/06/2026 16:45:46
[2026-06-05 16:45:46,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:45:46,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:45:46,341.341 INFO    ] No existing commands found in stream
[2026-06-05 16:45:51,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:45:51,369.369 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 16:45:51,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:45:51,788.788 INFO    ] Checking for system updates...
[2026-06-05 16:45:51,824.824 INFO    ] 200
[2026-06-05 16:45:51,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:51,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:45:51,884.884 INFO    ] No update needed
[2026-06-05 16:45:51,887.887 INFO    ] Checking for camera pi updates...
[2026-06-05 16:45:51,920.920 INFO    ] 200
[2026-06-05 16:45:51,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:45:51,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:45:52,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:45:52,008.008 INFO    ] No camera update needed
[2026-06-05 16:45:52,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:45:52,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:45:52,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:45:52,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:45:54,065.065 INFO    ] ================================================
[2026-06-05 16:45:54,080.080 INFO    ] Launching Daemon at Fri Jun  5 16:45:54 IST 2026
[2026-06-05 16:45:54,091.091 INFO    ] ================================================
[2026-06-05 16:45:54,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:45:54
[2026-06-05 16:45:55,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:45:55,565.565 INFO    ] Initializing speech engine...
[2026-06-05 16:45:55,570.570 INFO    ] 2026-06-05 16:45:55
[2026-06-05 16:45:55,847.847 INFO    ] 2026-06-05 16:45:55
[2026-06-05 16:45:55,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:45:56,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:45:56,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:45:56,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:45:56,239.239 INFO    ] time= 05/06/2026 16:45:56
[2026-06-05 16:45:56,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:45:56,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:45:56,368.368 INFO    ] No existing commands found in stream
[2026-06-05 16:46:01,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:46:01,385.385 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 16:46:02,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:46:03,001.001 INFO    ] Checking for system updates...
[2026-06-05 16:46:03,038.038 INFO    ] 200
[2026-06-05 16:46:03,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:03,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:46:03,096.096 INFO    ] No update needed
[2026-06-05 16:46:03,098.098 INFO    ] Checking for camera pi updates...
[2026-06-05 16:46:03,132.132 INFO    ] 200
[2026-06-05 16:46:03,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:03,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:46:03,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:46:03,222.222 INFO    ] No camera update needed
[2026-06-05 16:46:03,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:46:03,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:46:03,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:46:03,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:46:05,280.280 INFO    ] ================================================
[2026-06-05 16:46:05,295.295 INFO    ] Launching Daemon at Fri Jun  5 16:46:05 IST 2026
[2026-06-05 16:46:05,306.306 INFO    ] ================================================
[2026-06-05 16:46:05,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:46:05
[2026-06-05 16:46:06,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:46:06,784.784 INFO    ] Initializing speech engine...
[2026-06-05 16:46:06,790.790 INFO    ] 2026-06-05 16:46:06
[2026-06-05 16:46:07,083.083 INFO    ] 2026-06-05 16:46:07
[2026-06-05 16:46:07,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:46:07,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:46:07,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:46:07,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:46:07,483.483 INFO    ] time= 05/06/2026 16:46:07
[2026-06-05 16:46:07,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:46:07,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:46:07,571.571 INFO    ] No existing commands found in stream
[2026-06-05 16:46:12,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:46:12,587.587 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 16:46:16,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:46:16,325.325 INFO    ] Checking for system updates...
[2026-06-05 16:46:16,365.365 INFO    ] 200
[2026-06-05 16:46:16,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:16,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:46:16,431.431 INFO    ] No update needed
[2026-06-05 16:46:16,434.434 INFO    ] Checking for camera pi updates...
[2026-06-05 16:46:16,468.468 INFO    ] 200
[2026-06-05 16:46:16,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:16,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:46:16,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:46:16,570.570 INFO    ] No camera update needed
[2026-06-05 16:46:16,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:46:16,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:46:16,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:46:16,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:46:18,628.628 INFO    ] ================================================
[2026-06-05 16:46:18,643.643 INFO    ] Launching Daemon at Fri Jun  5 16:46:18 IST 2026
[2026-06-05 16:46:18,655.655 INFO    ] ================================================
[2026-06-05 16:46:19,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:46:19
[2026-06-05 16:46:19,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:46:20,101.101 INFO    ] Initializing speech engine...
[2026-06-05 16:46:20,107.107 INFO    ] 2026-06-05 16:46:20
[2026-06-05 16:46:20,399.399 INFO    ] 2026-06-05 16:46:20
[2026-06-05 16:46:20,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:46:20,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:46:20,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:46:20,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:46:20,813.813 INFO    ] time= 05/06/2026 16:46:20
[2026-06-05 16:46:20,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:46:20,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:46:20,895.895 INFO    ] No existing commands found in stream
[2026-06-05 16:46:25,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:46:25,911.911 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 16:46:26,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:46:26,979.979 INFO    ] Checking for system updates...
[2026-06-05 16:46:27,018.018 INFO    ] 200
[2026-06-05 16:46:27,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:27,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:46:27,085.085 INFO    ] No update needed
[2026-06-05 16:46:27,088.088 INFO    ] Checking for camera pi updates...
[2026-06-05 16:46:27,122.122 INFO    ] 200
[2026-06-05 16:46:27,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:27,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:46:27,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:46:27,207.207 INFO    ] No camera update needed
[2026-06-05 16:46:27,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:46:27,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:46:27,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:46:27,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:46:29,264.264 INFO    ] ================================================
[2026-06-05 16:46:29,279.279 INFO    ] Launching Daemon at Fri Jun  5 16:46:29 IST 2026
[2026-06-05 16:46:29,290.290 INFO    ] ================================================
[2026-06-05 16:46:29,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:46:29
[2026-06-05 16:46:30,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:46:30,721.721 INFO    ] Initializing speech engine...
[2026-06-05 16:46:30,747.747 INFO    ] 2026-06-05 16:46:30
[2026-06-05 16:46:31,017.017 INFO    ] 2026-06-05 16:46:30
[2026-06-05 16:46:31,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:46:31,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:46:31,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:46:31,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:46:31,431.431 INFO    ] time= 05/06/2026 16:46:31
[2026-06-05 16:46:31,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:46:31,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:46:31,607.607 INFO    ] No existing commands found in stream
[2026-06-05 16:46:36,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:46:36,647.647 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 16:46:39,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:46:39,910.910 INFO    ] Checking for system updates...
[2026-06-05 16:46:39,947.947 INFO    ] 200
[2026-06-05 16:46:39,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:40,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:46:40,007.007 INFO    ] No update needed
[2026-06-05 16:46:40,010.010 INFO    ] Checking for camera pi updates...
[2026-06-05 16:46:40,044.044 INFO    ] 200
[2026-06-05 16:46:40,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:40,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:46:40,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:46:40,246.246 INFO    ] No camera update needed
[2026-06-05 16:46:40,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:46:40,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:46:40,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:46:40,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:46:42,305.305 INFO    ] ================================================
[2026-06-05 16:46:42,321.321 INFO    ] Launching Daemon at Fri Jun  5 16:46:42 IST 2026
[2026-06-05 16:46:42,331.331 INFO    ] ================================================
[2026-06-05 16:46:42,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:46:42
[2026-06-05 16:46:43,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:46:43,789.789 INFO    ] Initializing speech engine...
[2026-06-05 16:46:43,800.800 INFO    ] 2026-06-05 16:46:43
[2026-06-05 16:46:44,049.049 INFO    ] 2026-06-05 16:46:44
[2026-06-05 16:46:44,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:46:44,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:46:44,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:46:44,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:46:44,515.515 INFO    ] time= 05/06/2026 16:46:44
[2026-06-05 16:46:44,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:46:44,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:46:44,756.756 INFO    ] No existing commands found in stream
[2026-06-05 16:46:49,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:46:49,776.776 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 16:46:52,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:46:52,025.025 INFO    ] Checking for system updates...
[2026-06-05 16:46:52,062.062 INFO    ] 200
[2026-06-05 16:46:52,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:52,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:46:52,128.128 INFO    ] No update needed
[2026-06-05 16:46:52,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 16:46:52,166.166 INFO    ] 200
[2026-06-05 16:46:52,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:46:52,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:46:52,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:46:52,257.257 INFO    ] No camera update needed
[2026-06-05 16:46:52,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:46:52,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:46:52,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:46:52,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:46:54,315.315 INFO    ] ================================================
[2026-06-05 16:46:54,330.330 INFO    ] Launching Daemon at Fri Jun  5 16:46:54 IST 2026
[2026-06-05 16:46:54,345.345 INFO    ] ================================================
[2026-06-05 16:46:54,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:46:54
[2026-06-05 16:46:55,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:46:55,820.820 INFO    ] Initializing speech engine...
[2026-06-05 16:46:55,828.828 INFO    ] 2026-06-05 16:46:55
[2026-06-05 16:46:56,092.092 INFO    ] 2026-06-05 16:46:56
[2026-06-05 16:46:56,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:46:56,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:46:56,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:46:56,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:46:56,566.566 INFO    ] time= 05/06/2026 16:46:56
[2026-06-05 16:46:56,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:46:56,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:46:56,792.792 INFO    ] No existing commands found in stream
[2026-06-05 16:47:01,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:47:01,811.811 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 16:47:04,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:47:04,298.298 INFO    ] Checking for system updates...
[2026-06-05 16:47:04,338.338 INFO    ] 200
[2026-06-05 16:47:04,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:04,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:47:04,397.397 INFO    ] No update needed
[2026-06-05 16:47:04,400.400 INFO    ] Checking for camera pi updates...
[2026-06-05 16:47:04,433.433 INFO    ] 200
[2026-06-05 16:47:04,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:04,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:47:04,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:47:04,524.524 INFO    ] No camera update needed
[2026-06-05 16:47:04,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:47:04,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:47:04,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:47:04,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:47:06,584.584 INFO    ] ================================================
[2026-06-05 16:47:06,601.601 INFO    ] Launching Daemon at Fri Jun  5 16:47:06 IST 2026
[2026-06-05 16:47:06,615.615 INFO    ] ================================================
[2026-06-05 16:47:07,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:47:07
[2026-06-05 16:47:07,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:47:08,235.235 INFO    ] Initializing speech engine...
[2026-06-05 16:47:08,244.244 INFO    ] 2026-06-05 16:47:08
[2026-06-05 16:47:08,503.503 INFO    ] 2026-06-05 16:47:08
[2026-06-05 16:47:08,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:47:08,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:47:08,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:47:08,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:47:08,863.863 INFO    ] time= 05/06/2026 16:47:08
[2026-06-05 16:47:08,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:47:08,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:47:09,050.050 INFO    ] No existing commands found in stream
[2026-06-05 16:47:14,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:47:14,072.072 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 16:47:15,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:47:15,228.228 INFO    ] Checking for system updates...
[2026-06-05 16:47:15,264.264 INFO    ] 200
[2026-06-05 16:47:15,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:15,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:47:15,323.323 INFO    ] No update needed
[2026-06-05 16:47:15,325.325 INFO    ] Checking for camera pi updates...
[2026-06-05 16:47:15,360.360 INFO    ] 200
[2026-06-05 16:47:15,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:15,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:47:15,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:47:15,443.443 INFO    ] No camera update needed
[2026-06-05 16:47:15,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:47:15,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:47:15,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:47:15,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:47:17,500.500 INFO    ] ================================================
[2026-06-05 16:47:17,516.516 INFO    ] Launching Daemon at Fri Jun  5 16:47:17 IST 2026
[2026-06-05 16:47:17,527.527 INFO    ] ================================================
[2026-06-05 16:47:18,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:47:18
[2026-06-05 16:47:18,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:47:19,127.127 INFO    ] Initializing speech engine...
[2026-06-05 16:47:19,136.136 INFO    ] 2026-06-05 16:47:19
[2026-06-05 16:47:19,425.425 INFO    ] 2026-06-05 16:47:19
[2026-06-05 16:47:19,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:47:19,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:47:19,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:47:19,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:47:19,958.958 INFO    ] time= 05/06/2026 16:47:19
[2026-06-05 16:47:19,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:47:20,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:47:20,137.137 INFO    ] No existing commands found in stream
[2026-06-05 16:47:25,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:47:25,181.181 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 16:47:29,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:47:29,307.307 INFO    ] Checking for system updates...
[2026-06-05 16:47:29,344.344 INFO    ] 200
[2026-06-05 16:47:29,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:29,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:47:29,410.410 INFO    ] No update needed
[2026-06-05 16:47:29,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 16:47:29,454.454 INFO    ] 200
[2026-06-05 16:47:29,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:29,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:47:29,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:47:29,554.554 INFO    ] No camera update needed
[2026-06-05 16:47:29,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:47:29,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:47:29,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:47:29,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:47:31,615.615 INFO    ] ================================================
[2026-06-05 16:47:31,632.632 INFO    ] Launching Daemon at Fri Jun  5 16:47:31 IST 2026
[2026-06-05 16:47:31,644.644 INFO    ] ================================================
[2026-06-05 16:47:32,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:47:32
[2026-06-05 16:47:32,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:47:33,122.122 INFO    ] Initializing speech engine...
[2026-06-05 16:47:33,146.146 INFO    ] 2026-06-05 16:47:33
[2026-06-05 16:47:33,432.432 INFO    ] 2026-06-05 16:47:33
[2026-06-05 16:47:33,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:47:33,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:47:33,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:47:33,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:47:33,847.847 INFO    ] time= 05/06/2026 16:47:33
[2026-06-05 16:47:33,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:47:33,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:47:34,032.032 INFO    ] No existing commands found in stream
[2026-06-05 16:47:39,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:47:39,065.065 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 16:47:40,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:47:40,383.383 INFO    ] Checking for system updates...
[2026-06-05 16:47:40,420.420 INFO    ] 200
[2026-06-05 16:47:40,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:40,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:47:40,480.480 INFO    ] No update needed
[2026-06-05 16:47:40,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 16:47:40,518.518 INFO    ] 200
[2026-06-05 16:47:40,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:40,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:47:40,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:47:40,607.607 INFO    ] No camera update needed
[2026-06-05 16:47:40,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:47:40,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:47:40,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:47:40,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:47:42,666.666 INFO    ] ================================================
[2026-06-05 16:47:42,681.681 INFO    ] Launching Daemon at Fri Jun  5 16:47:42 IST 2026
[2026-06-05 16:47:42,692.692 INFO    ] ================================================
[2026-06-05 16:47:43,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:47:43
[2026-06-05 16:47:43,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:47:44,135.135 INFO    ] Initializing speech engine...
[2026-06-05 16:47:44,149.149 INFO    ] 2026-06-05 16:47:44
[2026-06-05 16:47:44,418.418 INFO    ] 2026-06-05 16:47:44
[2026-06-05 16:47:44,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:47:44,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:47:44,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:47:44,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:47:44,827.827 INFO    ] time= 05/06/2026 16:47:44
[2026-06-05 16:47:44,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:47:44,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:47:44,920.920 INFO    ] No existing commands found in stream
[2026-06-05 16:47:49,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:47:49,938.938 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 16:47:55,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:47:55,578.578 INFO    ] Checking for system updates...
[2026-06-05 16:47:55,615.615 INFO    ] 200
[2026-06-05 16:47:55,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:55,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:47:55,674.674 INFO    ] No update needed
[2026-06-05 16:47:55,677.677 INFO    ] Checking for camera pi updates...
[2026-06-05 16:47:55,713.713 INFO    ] 200
[2026-06-05 16:47:55,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:47:55,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:47:55,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:47:55,787.787 INFO    ] No camera update needed
[2026-06-05 16:47:55,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:47:55,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:47:55,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:47:55,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:47:57,846.846 INFO    ] ================================================
[2026-06-05 16:47:57,861.861 INFO    ] Launching Daemon at Fri Jun  5 16:47:57 IST 2026
[2026-06-05 16:47:57,872.872 INFO    ] ================================================
[2026-06-05 16:47:58,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:47:58
[2026-06-05 16:47:59,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:47:59,471.471 INFO    ] Initializing speech engine...
[2026-06-05 16:47:59,480.480 INFO    ] 2026-06-05 16:47:59
[2026-06-05 16:47:59,751.751 INFO    ] 2026-06-05 16:47:59
[2026-06-05 16:47:59,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:47:59,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:48:00,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:48:00,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:48:00,256.256 INFO    ] time= 05/06/2026 16:48:00
[2026-06-05 16:48:00,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:48:00,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:48:00,469.469 INFO    ] No existing commands found in stream
[2026-06-05 16:48:05,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:48:05,498.498 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 16:48:08,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:48:08,173.173 INFO    ] Checking for system updates...
[2026-06-05 16:48:08,210.210 INFO    ] 200
[2026-06-05 16:48:08,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:08,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:48:08,273.273 INFO    ] No update needed
[2026-06-05 16:48:08,276.276 INFO    ] Checking for camera pi updates...
[2026-06-05 16:48:08,310.310 INFO    ] 200
[2026-06-05 16:48:08,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:08,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:48:08,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:48:08,380.380 INFO    ] No camera update needed
[2026-06-05 16:48:08,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:48:08,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:48:08,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:48:08,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:48:10,435.435 INFO    ] ================================================
[2026-06-05 16:48:10,450.450 INFO    ] Launching Daemon at Fri Jun  5 16:48:10 IST 2026
[2026-06-05 16:48:10,461.461 INFO    ] ================================================
[2026-06-05 16:48:11,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:48:11
[2026-06-05 16:48:11,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:48:11,866.866 INFO    ] Initializing speech engine...
[2026-06-05 16:48:11,875.875 INFO    ] 2026-06-05 16:48:11
[2026-06-05 16:48:12,188.188 INFO    ] 2026-06-05 16:48:12
[2026-06-05 16:48:12,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:48:12,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:48:12,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:48:12,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:48:12,585.585 INFO    ] time= 05/06/2026 16:48:12
[2026-06-05 16:48:12,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:48:12,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:48:12,671.671 INFO    ] No existing commands found in stream
[2026-06-05 16:48:17,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:48:17,705.705 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 16:48:18,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:48:18,543.543 INFO    ] Checking for system updates...
[2026-06-05 16:48:18,579.579 INFO    ] 200
[2026-06-05 16:48:18,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:18,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:48:18,638.638 INFO    ] No update needed
[2026-06-05 16:48:18,641.641 INFO    ] Checking for camera pi updates...
[2026-06-05 16:48:18,674.674 INFO    ] 200
[2026-06-05 16:48:18,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:18,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:48:18,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:48:18,763.763 INFO    ] No camera update needed
[2026-06-05 16:48:18,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:48:18,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:48:18,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:48:18,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:48:20,820.820 INFO    ] ================================================
[2026-06-05 16:48:20,835.835 INFO    ] Launching Daemon at Fri Jun  5 16:48:20 IST 2026
[2026-06-05 16:48:20,845.845 INFO    ] ================================================
[2026-06-05 16:48:21,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:48:21
[2026-06-05 16:48:22,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:48:22,473.473 INFO    ] Initializing speech engine...
[2026-06-05 16:48:22,488.488 INFO    ] 2026-06-05 16:48:22
[2026-06-05 16:48:22,774.774 INFO    ] 2026-06-05 16:48:22
[2026-06-05 16:48:22,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:48:25,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:48:25,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:48:25,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:48:25,297.297 INFO    ] time= 05/06/2026 16:48:25
[2026-06-05 16:48:25,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:48:25,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:48:25,389.389 INFO    ] No existing commands found in stream
[2026-06-05 16:48:30,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:48:30,403.403 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 16:48:33,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:48:33,832.832 INFO    ] Checking for system updates...
[2026-06-05 16:48:33,868.868 INFO    ] 200
[2026-06-05 16:48:33,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:33,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:48:33,928.928 INFO    ] No update needed
[2026-06-05 16:48:33,930.930 INFO    ] Checking for camera pi updates...
[2026-06-05 16:48:33,968.968 INFO    ] 200
[2026-06-05 16:48:33,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:34,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:48:34,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:48:34,058.058 INFO    ] No camera update needed
[2026-06-05 16:48:34,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:48:34,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:48:34,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:48:34,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:48:36,114.114 INFO    ] ================================================
[2026-06-05 16:48:36,129.129 INFO    ] Launching Daemon at Fri Jun  5 16:48:36 IST 2026
[2026-06-05 16:48:36,140.140 INFO    ] ================================================
[2026-06-05 16:48:36,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:48:36
[2026-06-05 16:48:37,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:48:37,744.744 INFO    ] Initializing speech engine...
[2026-06-05 16:48:37,758.758 INFO    ] 2026-06-05 16:48:37
[2026-06-05 16:48:38,022.022 INFO    ] 2026-06-05 16:48:38
[2026-06-05 16:48:38,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:48:38,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:48:38,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:48:38,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:48:38,532.532 INFO    ] time= 05/06/2026 16:48:38
[2026-06-05 16:48:38,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:48:38,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:48:38,728.728 INFO    ] No existing commands found in stream
[2026-06-05 16:48:43,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:48:43,753.753 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 16:48:46,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:48:46,499.499 INFO    ] Checking for system updates...
[2026-06-05 16:48:46,539.539 INFO    ] 200
[2026-06-05 16:48:46,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:46,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:48:46,603.603 INFO    ] No update needed
[2026-06-05 16:48:46,606.606 INFO    ] Checking for camera pi updates...
[2026-06-05 16:48:46,640.640 INFO    ] 200
[2026-06-05 16:48:46,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:46,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:48:46,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:48:46,829.829 INFO    ] No camera update needed
[2026-06-05 16:48:46,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:48:46,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:48:46,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:48:46,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:48:48,885.885 INFO    ] ================================================
[2026-06-05 16:48:48,901.901 INFO    ] Launching Daemon at Fri Jun  5 16:48:48 IST 2026
[2026-06-05 16:48:48,911.911 INFO    ] ================================================
[2026-06-05 16:48:49,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:48:49
[2026-06-05 16:48:50,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:48:50,309.309 INFO    ] Initializing speech engine...
[2026-06-05 16:48:50,328.328 INFO    ] 2026-06-05 16:48:50
[2026-06-05 16:48:50,583.583 INFO    ] 2026-06-05 16:48:50
[2026-06-05 16:48:50,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:48:50,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:48:50,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:48:51,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:48:51,055.055 INFO    ] time= 05/06/2026 16:48:51
[2026-06-05 16:48:51,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:48:51,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:48:51,257.257 INFO    ] No existing commands found in stream
[2026-06-05 16:48:56,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:48:56,282.282 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 16:48:57,409.409 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:48:57,412.412 INFO    ] Checking for system updates...
[2026-06-05 16:48:57,450.450 INFO    ] 200
[2026-06-05 16:48:57,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:57,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:48:57,516.516 INFO    ] No update needed
[2026-06-05 16:48:57,519.519 INFO    ] Checking for camera pi updates...
[2026-06-05 16:48:57,554.554 INFO    ] 200
[2026-06-05 16:48:57,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:48:57,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:48:57,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:48:57,656.656 INFO    ] No camera update needed
[2026-06-05 16:48:57,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:48:57,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:48:57,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:48:57,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:48:59,714.714 INFO    ] ================================================
[2026-06-05 16:48:59,743.743 INFO    ] Launching Daemon at Fri Jun  5 16:48:59 IST 2026
[2026-06-05 16:48:59,757.757 INFO    ] ================================================
[2026-06-05 16:49:00,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:49:00
[2026-06-05 16:49:00,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:49:01,272.272 INFO    ] Initializing speech engine...
[2026-06-05 16:49:01,286.286 INFO    ] 2026-06-05 16:49:01
[2026-06-05 16:49:01,562.562 INFO    ] 2026-06-05 16:49:01
[2026-06-05 16:49:01,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:49:01,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:49:01,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:49:01,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:49:02,043.043 INFO    ] time= 05/06/2026 16:49:01
[2026-06-05 16:49:02,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:49:02,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:49:02,159.159 INFO    ] No existing commands found in stream
[2026-06-05 16:49:07,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:49:07,170.170 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 16:49:11,064.064 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:49:11,067.067 INFO    ] Checking for system updates...
[2026-06-05 16:49:11,104.104 INFO    ] 200
[2026-06-05 16:49:11,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:11,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:49:11,170.170 INFO    ] No update needed
[2026-06-05 16:49:11,172.172 INFO    ] Checking for camera pi updates...
[2026-06-05 16:49:11,208.208 INFO    ] 200
[2026-06-05 16:49:11,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:11,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:49:11,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:49:11,298.298 INFO    ] No camera update needed
[2026-06-05 16:49:11,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:49:11,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:49:11,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:49:11,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:49:13,352.352 INFO    ] ================================================
[2026-06-05 16:49:13,367.367 INFO    ] Launching Daemon at Fri Jun  5 16:49:13 IST 2026
[2026-06-05 16:49:13,378.378 INFO    ] ================================================
[2026-06-05 16:49:13,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:49:13
[2026-06-05 16:49:14,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:49:14,909.909 INFO    ] Initializing speech engine...
[2026-06-05 16:49:14,917.917 INFO    ] 2026-06-05 16:49:14
[2026-06-05 16:49:15,198.198 INFO    ] 2026-06-05 16:49:15
[2026-06-05 16:49:15,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:49:15,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:49:15,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:49:15,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:49:15,736.736 INFO    ] time= 05/06/2026 16:49:15
[2026-06-05 16:49:15,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:49:15,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:49:15,895.895 INFO    ] No existing commands found in stream
[2026-06-05 16:49:20,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:49:20,920.920 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 16:49:22,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:49:22,838.838 INFO    ] Checking for system updates...
[2026-06-05 16:49:22,879.879 INFO    ] 200
[2026-06-05 16:49:22,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:22,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:49:22,938.938 INFO    ] No update needed
[2026-06-05 16:49:22,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 16:49:22,975.975 INFO    ] 200
[2026-06-05 16:49:22,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:23,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:49:23,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:49:23,061.061 INFO    ] No camera update needed
[2026-06-05 16:49:23,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:49:23,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:49:23,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:49:23,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:49:25,117.117 INFO    ] ================================================
[2026-06-05 16:49:25,132.132 INFO    ] Launching Daemon at Fri Jun  5 16:49:25 IST 2026
[2026-06-05 16:49:25,143.143 INFO    ] ================================================
[2026-06-05 16:49:25,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:49:25
[2026-06-05 16:49:26,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:49:26,697.697 INFO    ] Initializing speech engine...
[2026-06-05 16:49:26,705.705 INFO    ] 2026-06-05 16:49:26
[2026-06-05 16:49:26,984.984 INFO    ] 2026-06-05 16:49:26
[2026-06-05 16:49:27,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:49:27,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:49:27,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:49:27,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:49:27,521.521 INFO    ] time= 05/06/2026 16:49:27
[2026-06-05 16:49:27,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:49:27,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:49:27,673.673 INFO    ] No existing commands found in stream
[2026-06-05 16:49:32,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:49:32,691.691 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 16:49:33,226.226 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:49:33,229.229 INFO    ] Checking for system updates...
[2026-06-05 16:49:33,275.275 INFO    ] 200
[2026-06-05 16:49:33,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:33,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:49:33,334.334 INFO    ] No update needed
[2026-06-05 16:49:33,336.336 INFO    ] Checking for camera pi updates...
[2026-06-05 16:49:33,374.374 INFO    ] 200
[2026-06-05 16:49:33,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:33,418.418 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:49:33,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:49:33,459.459 INFO    ] No camera update needed
[2026-06-05 16:49:33,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:49:33,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:49:33,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:49:33,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:49:35,515.515 INFO    ] ================================================
[2026-06-05 16:49:35,531.531 INFO    ] Launching Daemon at Fri Jun  5 16:49:35 IST 2026
[2026-06-05 16:49:35,541.541 INFO    ] ================================================
[2026-06-05 16:49:36,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:49:36
[2026-06-05 16:49:36,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:49:37,096.096 INFO    ] Initializing speech engine...
[2026-06-05 16:49:37,103.103 INFO    ] 2026-06-05 16:49:37
[2026-06-05 16:49:37,384.384 INFO    ] 2026-06-05 16:49:37
[2026-06-05 16:49:37,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:49:37,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:49:37,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:49:37,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:49:37,918.918 INFO    ] time= 05/06/2026 16:49:37
[2026-06-05 16:49:37,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:49:37,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:49:38,106.106 INFO    ] No existing commands found in stream
[2026-06-05 16:49:43,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:49:43,140.140 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 16:49:44,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:49:44,289.289 INFO    ] Checking for system updates...
[2026-06-05 16:49:44,328.328 INFO    ] 200
[2026-06-05 16:49:44,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:44,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:49:44,393.393 INFO    ] No update needed
[2026-06-05 16:49:44,396.396 INFO    ] Checking for camera pi updates...
[2026-06-05 16:49:44,432.432 INFO    ] 200
[2026-06-05 16:49:44,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:44,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:49:44,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:49:44,520.520 INFO    ] No camera update needed
[2026-06-05 16:49:44,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:49:44,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:49:44,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:49:44,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:49:46,585.585 INFO    ] ================================================
[2026-06-05 16:49:46,600.600 INFO    ] Launching Daemon at Fri Jun  5 16:49:46 IST 2026
[2026-06-05 16:49:46,610.610 INFO    ] ================================================
[2026-06-05 16:49:47,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:49:47
[2026-06-05 16:49:47,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:49:48,168.168 INFO    ] Initializing speech engine...
[2026-06-05 16:49:48,178.178 INFO    ] 2026-06-05 16:49:48
[2026-06-05 16:49:48,444.444 INFO    ] 2026-06-05 16:49:48
[2026-06-05 16:49:48,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:49:48,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:49:48,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:49:48,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:49:48,991.991 INFO    ] time= 05/06/2026 16:49:48
[2026-06-05 16:49:49,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:49:49,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:49:49,147.147 INFO    ] No existing commands found in stream
[2026-06-05 16:49:54,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:49:54,180.180 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 16:49:57,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:49:57,416.416 INFO    ] Checking for system updates...
[2026-06-05 16:49:57,453.453 INFO    ] 200
[2026-06-05 16:49:57,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:57,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:49:57,559.559 INFO    ] No update needed
[2026-06-05 16:49:57,561.561 INFO    ] Checking for camera pi updates...
[2026-06-05 16:49:57,597.597 INFO    ] 200
[2026-06-05 16:49:57,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:49:57,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:49:57,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:49:57,706.706 INFO    ] No camera update needed
[2026-06-05 16:49:57,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:49:57,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:49:57,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:49:57,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:49:59,764.764 INFO    ] ================================================
[2026-06-05 16:49:59,779.779 INFO    ] Launching Daemon at Fri Jun  5 16:49:59 IST 2026
[2026-06-05 16:49:59,790.790 INFO    ] ================================================
[2026-06-05 16:50:00,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:50:00
[2026-06-05 16:50:01,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:50:02,009.009 INFO    ] Initializing speech engine...
[2026-06-05 16:50:02,012.012 INFO    ] 2026-06-05 16:50:02
[2026-06-05 16:50:02,505.505 INFO    ] 2026-06-05 16:50:02
[2026-06-05 16:50:02,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:50:02,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:50:02,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:50:02,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:50:02,881.881 INFO    ] time= 05/06/2026 16:50:02
[2026-06-05 16:50:02,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:50:02,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:50:02,958.958 INFO    ] No existing commands found in stream
[2026-06-05 16:50:07,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:50:07,972.972 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 16:50:08,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:50:08,950.950 INFO    ] Checking for system updates...
[2026-06-05 16:50:08,986.986 INFO    ] 200
[2026-06-05 16:50:08,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:09,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:50:09,043.043 INFO    ] No update needed
[2026-06-05 16:50:09,046.046 INFO    ] Checking for camera pi updates...
[2026-06-05 16:50:09,087.087 INFO    ] 200
[2026-06-05 16:50:09,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:09,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:50:09,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:50:09,186.186 INFO    ] No camera update needed
[2026-06-05 16:50:09,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:50:09,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:50:09,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:50:09,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:50:11,244.244 INFO    ] ================================================
[2026-06-05 16:50:11,259.259 INFO    ] Launching Daemon at Fri Jun  5 16:50:11 IST 2026
[2026-06-05 16:50:11,270.270 INFO    ] ================================================
[2026-06-05 16:50:11,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:50:11
[2026-06-05 16:50:12,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:50:12,879.879 INFO    ] Initializing speech engine...
[2026-06-05 16:50:12,888.888 INFO    ] 2026-06-05 16:50:12
[2026-06-05 16:50:13,158.158 INFO    ] 2026-06-05 16:50:13
[2026-06-05 16:50:13,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:50:13,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:50:13,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:50:13,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:50:13,543.543 INFO    ] time= 05/06/2026 16:50:13
[2026-06-05 16:50:13,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:50:13,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:50:13,667.667 INFO    ] No existing commands found in stream
[2026-06-05 16:50:18,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:50:18,683.683 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 16:50:21,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:50:21,375.375 INFO    ] Checking for system updates...
[2026-06-05 16:50:21,413.413 INFO    ] 200
[2026-06-05 16:50:21,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:21,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:50:21,479.479 INFO    ] No update needed
[2026-06-05 16:50:21,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 16:50:21,516.516 INFO    ] 200
[2026-06-05 16:50:21,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:21,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:50:21,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:50:21,611.611 INFO    ] No camera update needed
[2026-06-05 16:50:21,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:50:21,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:50:21,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:50:21,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:50:23,670.670 INFO    ] ================================================
[2026-06-05 16:50:23,686.686 INFO    ] Launching Daemon at Fri Jun  5 16:50:23 IST 2026
[2026-06-05 16:50:23,698.698 INFO    ] ================================================
[2026-06-05 16:50:24,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:50:24
[2026-06-05 16:50:24,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:50:25,142.142 INFO    ] Initializing speech engine...
[2026-06-05 16:50:25,155.155 INFO    ] 2026-06-05 16:50:25
[2026-06-05 16:50:25,441.441 INFO    ] 2026-06-05 16:50:25
[2026-06-05 16:50:25,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:50:25,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:50:25,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:50:25,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:50:25,816.816 INFO    ] time= 05/06/2026 16:50:25
[2026-06-05 16:50:25,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:50:25,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:50:25,938.938 INFO    ] No existing commands found in stream
[2026-06-05 16:50:30,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:50:30,960.960 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 16:50:31,866.866 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:50:31,869.869 INFO    ] Checking for system updates...
[2026-06-05 16:50:31,907.907 INFO    ] 200
[2026-06-05 16:50:31,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:31,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:50:31,974.974 INFO    ] No update needed
[2026-06-05 16:50:31,977.977 INFO    ] Checking for camera pi updates...
[2026-06-05 16:50:32,019.019 INFO    ] 200
[2026-06-05 16:50:32,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:32,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:50:32,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:50:32,106.106 INFO    ] No camera update needed
[2026-06-05 16:50:32,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:50:32,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:50:32,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:50:32,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:50:34,165.165 INFO    ] ================================================
[2026-06-05 16:50:34,181.181 INFO    ] Launching Daemon at Fri Jun  5 16:50:34 IST 2026
[2026-06-05 16:50:34,192.192 INFO    ] ================================================
[2026-06-05 16:50:34,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:50:34
[2026-06-05 16:50:35,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:50:35,655.655 INFO    ] Initializing speech engine...
[2026-06-05 16:50:35,664.664 INFO    ] 2026-06-05 16:50:35
[2026-06-05 16:50:35,936.936 INFO    ] 2026-06-05 16:50:35
[2026-06-05 16:50:35,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:50:36,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:50:36,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:50:36,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:50:36,430.430 INFO    ] time= 05/06/2026 16:50:36
[2026-06-05 16:50:36,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:50:36,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:50:36,631.631 INFO    ] No existing commands found in stream
[2026-06-05 16:50:41,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:50:41,659.659 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 16:50:42,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:50:42,667.667 INFO    ] Checking for system updates...
[2026-06-05 16:50:42,704.704 INFO    ] 200
[2026-06-05 16:50:42,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:42,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:50:42,793.793 INFO    ] No update needed
[2026-06-05 16:50:42,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 16:50:42,831.831 INFO    ] 200
[2026-06-05 16:50:42,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:42,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:50:42,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:50:42,929.929 INFO    ] No camera update needed
[2026-06-05 16:50:42,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:50:42,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:50:42,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:50:42,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:50:44,989.989 INFO    ] ================================================
[2026-06-05 16:50:45,005.005 INFO    ] Launching Daemon at Fri Jun  5 16:50:44 IST 2026
[2026-06-05 16:50:45,016.016 INFO    ] ================================================
[2026-06-05 16:50:45,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:50:45
[2026-06-05 16:50:46,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:50:46,471.471 INFO    ] Initializing speech engine...
[2026-06-05 16:50:46,480.480 INFO    ] 2026-06-05 16:50:46
[2026-06-05 16:50:46,779.779 INFO    ] 2026-06-05 16:50:46
[2026-06-05 16:50:46,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:50:47,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:50:47,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:50:47,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:50:47,196.196 INFO    ] time= 05/06/2026 16:50:47
[2026-06-05 16:50:47,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:50:47,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:50:47,286.286 INFO    ] No existing commands found in stream
[2026-06-05 16:50:52,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:50:52,301.301 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 16:50:52,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:50:52,904.904 INFO    ] Checking for system updates...
[2026-06-05 16:50:52,944.944 INFO    ] 200
[2026-06-05 16:50:52,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:53,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:50:53,004.004 INFO    ] No update needed
[2026-06-05 16:50:53,006.006 INFO    ] Checking for camera pi updates...
[2026-06-05 16:50:53,044.044 INFO    ] 200
[2026-06-05 16:50:53,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:50:53,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:50:53,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:50:53,234.234 INFO    ] No camera update needed
[2026-06-05 16:50:53,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:50:53,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:50:53,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:50:53,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:50:55,291.291 INFO    ] ================================================
[2026-06-05 16:50:55,307.307 INFO    ] Launching Daemon at Fri Jun  5 16:50:55 IST 2026
[2026-06-05 16:50:55,324.324 INFO    ] ================================================
[2026-06-05 16:50:55,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:50:55
[2026-06-05 16:50:56,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:50:56,734.734 INFO    ] Initializing speech engine...
[2026-06-05 16:50:56,743.743 INFO    ] 2026-06-05 16:50:56
[2026-06-05 16:50:57,036.036 INFO    ] 2026-06-05 16:50:57
[2026-06-05 16:50:57,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:50:57,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:50:57,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:50:57,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:50:57,411.411 INFO    ] time= 05/06/2026 16:50:57
[2026-06-05 16:50:57,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:50:57,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:50:57,533.533 INFO    ] No existing commands found in stream
[2026-06-05 16:51:02,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:51:02,550.550 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 16:51:06,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:51:06,693.693 INFO    ] Checking for system updates...
[2026-06-05 16:51:06,734.734 INFO    ] 200
[2026-06-05 16:51:06,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:06,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:51:06,793.793 INFO    ] No update needed
[2026-06-05 16:51:06,799.799 INFO    ] Checking for camera pi updates...
[2026-06-05 16:51:06,833.833 INFO    ] 200
[2026-06-05 16:51:06,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:06,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:51:06,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:51:06,907.907 INFO    ] No camera update needed
[2026-06-05 16:51:06,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:51:06,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:51:06,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:51:06,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:51:08,964.964 INFO    ] ================================================
[2026-06-05 16:51:08,979.979 INFO    ] Launching Daemon at Fri Jun  5 16:51:08 IST 2026
[2026-06-05 16:51:08,991.991 INFO    ] ================================================
[2026-06-05 16:51:09,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:51:09
[2026-06-05 16:51:10,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:51:10,611.611 INFO    ] Initializing speech engine...
[2026-06-05 16:51:10,618.618 INFO    ] 2026-06-05 16:51:10
[2026-06-05 16:51:10,905.905 INFO    ] 2026-06-05 16:51:10
[2026-06-05 16:51:10,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:51:11,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:51:11,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:51:11,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:51:11,396.396 INFO    ] time= 05/06/2026 16:51:11
[2026-06-05 16:51:11,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:51:11,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:51:11,602.602 INFO    ] No existing commands found in stream
[2026-06-05 16:51:16,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:51:16,629.629 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 16:51:18,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:51:18,186.186 INFO    ] Checking for system updates...
[2026-06-05 16:51:18,223.223 INFO    ] 200
[2026-06-05 16:51:18,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:18,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:51:18,282.282 INFO    ] No update needed
[2026-06-05 16:51:18,285.285 INFO    ] Checking for camera pi updates...
[2026-06-05 16:51:18,319.319 INFO    ] 200
[2026-06-05 16:51:18,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:18,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:51:18,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:51:18,413.413 INFO    ] No camera update needed
[2026-06-05 16:51:18,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:51:18,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:51:18,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:51:18,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:51:20,470.470 INFO    ] ================================================
[2026-06-05 16:51:20,486.486 INFO    ] Launching Daemon at Fri Jun  5 16:51:20 IST 2026
[2026-06-05 16:51:20,497.497 INFO    ] ================================================
[2026-06-05 16:51:21,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:51:21
[2026-06-05 16:51:21,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:51:22,103.103 INFO    ] Initializing speech engine...
[2026-06-05 16:51:22,110.110 INFO    ] 2026-06-05 16:51:22
[2026-06-05 16:51:22,393.393 INFO    ] 2026-06-05 16:51:22
[2026-06-05 16:51:22,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:51:22,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:51:22,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:51:24,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:51:24,925.925 INFO    ] time= 05/06/2026 16:51:24
[2026-06-05 16:51:24,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:51:24,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:51:25,086.086 INFO    ] No existing commands found in stream
[2026-06-05 16:51:30,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:51:30,106.106 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 16:51:32,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:51:32,929.929 INFO    ] Checking for system updates...
[2026-06-05 16:51:32,971.971 INFO    ] 200
[2026-06-05 16:51:32,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:33,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:51:33,037.037 INFO    ] No update needed
[2026-06-05 16:51:33,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 16:51:33,075.075 INFO    ] 200
[2026-06-05 16:51:33,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:33,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:51:33,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:51:33,152.152 INFO    ] No camera update needed
[2026-06-05 16:51:33,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:51:33,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:51:33,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:51:33,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:51:35,211.211 INFO    ] ================================================
[2026-06-05 16:51:35,227.227 INFO    ] Launching Daemon at Fri Jun  5 16:51:35 IST 2026
[2026-06-05 16:51:35,239.239 INFO    ] ================================================
[2026-06-05 16:51:35,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:51:35
[2026-06-05 16:51:36,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:51:36,844.844 INFO    ] Initializing speech engine...
[2026-06-05 16:51:36,854.854 INFO    ] 2026-06-05 16:51:36
[2026-06-05 16:51:37,142.142 INFO    ] 2026-06-05 16:51:37
[2026-06-05 16:51:37,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:51:37,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:51:37,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:51:37,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:51:37,675.675 INFO    ] time= 05/06/2026 16:51:37
[2026-06-05 16:51:37,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:51:37,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:51:37,826.826 INFO    ] No existing commands found in stream
[2026-06-05 16:51:42,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:51:42,847.847 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 16:51:45,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:51:45,318.318 INFO    ] Checking for system updates...
[2026-06-05 16:51:45,355.355 INFO    ] 200
[2026-06-05 16:51:45,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:45,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:51:45,422.422 INFO    ] No update needed
[2026-06-05 16:51:45,425.425 INFO    ] Checking for camera pi updates...
[2026-06-05 16:51:45,460.460 INFO    ] 200
[2026-06-05 16:51:45,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:45,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:51:45,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:51:45,549.549 INFO    ] No camera update needed
[2026-06-05 16:51:45,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:51:45,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:51:45,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:51:45,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:51:47,608.608 INFO    ] ================================================
[2026-06-05 16:51:47,624.624 INFO    ] Launching Daemon at Fri Jun  5 16:51:47 IST 2026
[2026-06-05 16:51:47,635.635 INFO    ] ================================================
[2026-06-05 16:51:48,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:51:48
[2026-06-05 16:51:48,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:51:49,261.261 INFO    ] Initializing speech engine...
[2026-06-05 16:51:49,271.271 INFO    ] 2026-06-05 16:51:49
[2026-06-05 16:51:49,561.561 INFO    ] 2026-06-05 16:51:49
[2026-06-05 16:51:49,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:51:49,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:51:49,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:51:50,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:51:50,098.098 INFO    ] time= 05/06/2026 16:51:50
[2026-06-05 16:51:50,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:51:50,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:51:50,249.249 INFO    ] No existing commands found in stream
[2026-06-05 16:51:55,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:51:55,270.270 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 16:51:56,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:51:56,657.657 INFO    ] Checking for system updates...
[2026-06-05 16:51:56,698.698 INFO    ] 200
[2026-06-05 16:51:56,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:56,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:51:56,758.758 INFO    ] No update needed
[2026-06-05 16:51:56,761.761 INFO    ] Checking for camera pi updates...
[2026-06-05 16:51:56,796.796 INFO    ] 200
[2026-06-05 16:51:56,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:51:56,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:51:56,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:51:56,885.885 INFO    ] No camera update needed
[2026-06-05 16:51:56,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:51:56,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:51:56,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:51:56,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:51:58,942.942 INFO    ] ================================================
[2026-06-05 16:51:58,958.958 INFO    ] Launching Daemon at Fri Jun  5 16:51:58 IST 2026
[2026-06-05 16:51:58,969.969 INFO    ] ================================================
[2026-06-05 16:51:59,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:51:59
[2026-06-05 16:52:00,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:52:00,382.382 INFO    ] Initializing speech engine...
[2026-06-05 16:52:00,398.398 INFO    ] 2026-06-05 16:52:00
[2026-06-05 16:52:00,682.682 INFO    ] 2026-06-05 16:52:00
[2026-06-05 16:52:00,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:52:00,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:52:00,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:52:01,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:52:01,065.065 INFO    ] time= 05/06/2026 16:52:01
[2026-06-05 16:52:01,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:52:01,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:52:01,191.191 INFO    ] No existing commands found in stream
[2026-06-05 16:52:06,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:52:06,206.206 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 16:52:10,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:52:10,269.269 INFO    ] Checking for system updates...
[2026-06-05 16:52:10,306.306 INFO    ] 200
[2026-06-05 16:52:10,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:52:10,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:52:10,369.369 INFO    ] No update needed
[2026-06-05 16:52:10,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 16:52:10,406.406 INFO    ] 200
[2026-06-05 16:52:10,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:52:10,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:52:10,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:52:10,500.500 INFO    ] No camera update needed
[2026-06-05 16:52:10,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:52:10,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:52:10,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:52:10,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:52:12,556.556 INFO    ] ================================================
[2026-06-05 16:52:12,571.571 INFO    ] Launching Daemon at Fri Jun  5 16:52:12 IST 2026
[2026-06-05 16:52:12,582.582 INFO    ] ================================================
[2026-06-05 16:52:13,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:52:13
[2026-06-05 16:52:13,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:52:14,115.115 INFO    ] Initializing speech engine...
[2026-06-05 16:52:14,121.121 INFO    ] 2026-06-05 16:52:14
[2026-06-05 16:52:14,395.395 INFO    ] 2026-06-05 16:52:14
[2026-06-05 16:52:14,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:52:14,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:52:14,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:52:14,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:52:14,888.888 INFO    ] time= 05/06/2026 16:52:14
[2026-06-05 16:52:14,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:52:14,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:52:15,104.104 INFO    ] No existing commands found in stream
[2026-06-05 16:52:20,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:52:20,123.123 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 16:52:27,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:52:27,950.950 INFO    ] Checking for system updates...
[2026-06-05 16:52:27,987.987 INFO    ] 200
[2026-06-05 16:52:27,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:52:28,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:52:28,045.045 INFO    ] No update needed
[2026-06-05 16:52:28,048.048 INFO    ] Checking for camera pi updates...
[2026-06-05 16:52:28,081.081 INFO    ] 200
[2026-06-05 16:52:28,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:52:28,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:52:28,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:52:28,167.167 INFO    ] No camera update needed
[2026-06-05 16:52:28,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:52:28,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:52:28,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:52:28,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:52:30,223.223 INFO    ] ================================================
[2026-06-05 16:52:30,239.239 INFO    ] Launching Daemon at Fri Jun  5 16:52:30 IST 2026
[2026-06-05 16:52:30,250.250 INFO    ] ================================================
[2026-06-05 16:52:30,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:52:30
[2026-06-05 16:52:31,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:52:31,874.874 INFO    ] Initializing speech engine...
[2026-06-05 16:52:31,882.882 INFO    ] 2026-06-05 16:52:31
[2026-06-05 16:52:32,154.154 INFO    ] 2026-06-05 16:52:32
[2026-06-05 16:52:32,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:52:32,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:52:32,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:52:32,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:52:32,650.650 INFO    ] time= 05/06/2026 16:52:32
[2026-06-05 16:52:32,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:52:32,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:52:32,821.821 INFO    ] No existing commands found in stream
[2026-06-05 16:52:37,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:52:37,836.836 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 16:52:39,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:52:39,425.425 INFO    ] Checking for system updates...
[2026-06-05 16:52:39,461.461 INFO    ] 200
[2026-06-05 16:52:39,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:52:39,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:52:39,518.518 INFO    ] No update needed
[2026-06-05 16:52:39,520.520 INFO    ] Checking for camera pi updates...
[2026-06-05 16:52:39,559.559 INFO    ] 200
[2026-06-05 16:52:39,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:52:39,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:52:39,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:52:39,645.645 INFO    ] No camera update needed
[2026-06-05 16:52:39,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:52:39,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:52:39,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:52:39,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:52:41,706.706 INFO    ] ================================================
[2026-06-05 16:52:41,722.722 INFO    ] Launching Daemon at Fri Jun  5 16:52:41 IST 2026
[2026-06-05 16:52:41,732.732 INFO    ] ================================================
[2026-06-05 16:52:42,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:52:42
[2026-06-05 16:52:42,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:52:43,185.185 INFO    ] Initializing speech engine...
[2026-06-05 16:52:43,191.191 INFO    ] 2026-06-05 16:52:43
[2026-06-05 16:52:43,497.497 INFO    ] 2026-06-05 16:52:43
[2026-06-05 16:52:43,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:52:43,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:52:43,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:52:43,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:52:43,860.860 INFO    ] time= 05/06/2026 16:52:43
[2026-06-05 16:52:43,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:52:43,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:52:43,943.943 INFO    ] No existing commands found in stream
[2026-06-05 16:52:48,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:52:48,959.959 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 16:52:50,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:52:50,359.359 INFO    ] Checking for system updates...
[2026-06-05 16:52:50,397.397 INFO    ] 200
[2026-06-05 16:52:50,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:52:50,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:52:50,456.456 INFO    ] No update needed
[2026-06-05 16:52:50,458.458 INFO    ] Checking for camera pi updates...
[2026-06-05 16:52:50,492.492 INFO    ] 200
[2026-06-05 16:52:50,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:52:50,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:52:50,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:52:50,584.584 INFO    ] No camera update needed
[2026-06-05 16:52:50,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:52:50,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:52:50,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:52:50,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:52:52,640.640 INFO    ] ================================================
[2026-06-05 16:52:52,655.655 INFO    ] Launching Daemon at Fri Jun  5 16:52:52 IST 2026
[2026-06-05 16:52:52,666.666 INFO    ] ================================================
[2026-06-05 16:52:53,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:52:53
[2026-06-05 16:52:53,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:52:54,092.092 INFO    ] Initializing speech engine...
[2026-06-05 16:52:54,098.098 INFO    ] 2026-06-05 16:52:54
[2026-06-05 16:52:54,398.398 INFO    ] 2026-06-05 16:52:54
[2026-06-05 16:52:54,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:52:55,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:52:55,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:52:55,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:52:55,682.682 INFO    ] time= 05/06/2026 16:52:55
[2026-06-05 16:52:55,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:52:55,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:52:55,823.823 INFO    ] No existing commands found in stream
[2026-06-05 16:53:00,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:53:00,850.850 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 16:53:04,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:53:04,526.526 INFO    ] Checking for system updates...
[2026-06-05 16:53:04,563.563 INFO    ] 200
[2026-06-05 16:53:04,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:04,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:53:04,623.623 INFO    ] No update needed
[2026-06-05 16:53:04,625.625 INFO    ] Checking for camera pi updates...
[2026-06-05 16:53:04,660.660 INFO    ] 200
[2026-06-05 16:53:04,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:04,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:53:04,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:53:04,747.747 INFO    ] No camera update needed
[2026-06-05 16:53:04,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:53:04,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:53:04,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:53:04,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:53:06,803.803 INFO    ] ================================================
[2026-06-05 16:53:06,818.818 INFO    ] Launching Daemon at Fri Jun  5 16:53:06 IST 2026
[2026-06-05 16:53:06,828.828 INFO    ] ================================================
[2026-06-05 16:53:07,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:53:07
[2026-06-05 16:53:07,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:53:08,240.240 INFO    ] Initializing speech engine...
[2026-06-05 16:53:08,263.263 INFO    ] 2026-06-05 16:53:08
[2026-06-05 16:53:08,528.528 INFO    ] 2026-06-05 16:53:08
[2026-06-05 16:53:08,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:53:08,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:53:08,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:53:09,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:53:09,096.096 INFO    ] time= 05/06/2026 16:53:09
[2026-06-05 16:53:09,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:53:09,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:53:09,252.252 INFO    ] No existing commands found in stream
[2026-06-05 16:53:14,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:53:14,290.290 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 16:53:16,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:53:16,486.486 INFO    ] Checking for system updates...
[2026-06-05 16:53:16,523.523 INFO    ] 200
[2026-06-05 16:53:16,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:16,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:53:16,589.589 INFO    ] No update needed
[2026-06-05 16:53:16,592.592 INFO    ] Checking for camera pi updates...
[2026-06-05 16:53:16,627.627 INFO    ] 200
[2026-06-05 16:53:16,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:16,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:53:16,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:53:16,713.713 INFO    ] No camera update needed
[2026-06-05 16:53:16,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:53:16,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:53:16,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:53:16,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:53:18,771.771 INFO    ] ================================================
[2026-06-05 16:53:18,786.786 INFO    ] Launching Daemon at Fri Jun  5 16:53:18 IST 2026
[2026-06-05 16:53:18,797.797 INFO    ] ================================================
[2026-06-05 16:53:19,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:53:19
[2026-06-05 16:53:19,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:53:20,223.223 INFO    ] Initializing speech engine...
[2026-06-05 16:53:20,241.241 INFO    ] 2026-06-05 16:53:20
[2026-06-05 16:53:20,491.491 INFO    ] 2026-06-05 16:53:20
[2026-06-05 16:53:20,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:53:20,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:53:20,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:53:20,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:53:20,860.860 INFO    ] time= 05/06/2026 16:53:20
[2026-06-05 16:53:20,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:53:20,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:53:21,049.049 INFO    ] No existing commands found in stream
[2026-06-05 16:53:26,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:53:26,071.071 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 16:53:27,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:53:27,187.187 INFO    ] Checking for system updates...
[2026-06-05 16:53:27,223.223 INFO    ] 200
[2026-06-05 16:53:27,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:27,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:53:27,286.286 INFO    ] No update needed
[2026-06-05 16:53:27,288.288 INFO    ] Checking for camera pi updates...
[2026-06-05 16:53:27,323.323 INFO    ] 200
[2026-06-05 16:53:27,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:27,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:53:27,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:53:27,422.422 INFO    ] No camera update needed
[2026-06-05 16:53:27,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:53:27,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:53:27,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:53:27,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:53:29,482.482 INFO    ] ================================================
[2026-06-05 16:53:29,498.498 INFO    ] Launching Daemon at Fri Jun  5 16:53:29 IST 2026
[2026-06-05 16:53:29,508.508 INFO    ] ================================================
[2026-06-05 16:53:30,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:53:30
[2026-06-05 16:53:30,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:53:31,139.139 INFO    ] Initializing speech engine...
[2026-06-05 16:53:31,147.147 INFO    ] 2026-06-05 16:53:31
[2026-06-05 16:53:31,433.433 INFO    ] 2026-06-05 16:53:31
[2026-06-05 16:53:31,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:53:31,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:53:31,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:53:31,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:53:31,854.854 INFO    ] time= 05/06/2026 16:53:31
[2026-06-05 16:53:31,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:53:31,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:53:31,974.974 INFO    ] No existing commands found in stream
[2026-06-05 16:53:36,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:53:36,993.993 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 16:53:38,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:53:38,459.459 INFO    ] Checking for system updates...
[2026-06-05 16:53:38,495.495 INFO    ] 200
[2026-06-05 16:53:38,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:38,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:53:38,560.560 INFO    ] No update needed
[2026-06-05 16:53:38,563.563 INFO    ] Checking for camera pi updates...
[2026-06-05 16:53:38,597.597 INFO    ] 200
[2026-06-05 16:53:38,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:38,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:53:38,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:53:38,688.688 INFO    ] No camera update needed
[2026-06-05 16:53:38,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:53:38,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:53:38,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:53:38,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:53:40,745.745 INFO    ] ================================================
[2026-06-05 16:53:40,761.761 INFO    ] Launching Daemon at Fri Jun  5 16:53:40 IST 2026
[2026-06-05 16:53:40,772.772 INFO    ] ================================================
[2026-06-05 16:53:41,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:53:41
[2026-06-05 16:53:41,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:53:42,212.212 INFO    ] Initializing speech engine...
[2026-06-05 16:53:42,220.220 INFO    ] 2026-06-05 16:53:42
[2026-06-05 16:53:42,497.497 INFO    ] 2026-06-05 16:53:42
[2026-06-05 16:53:42,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:53:42,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:53:42,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:53:42,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:53:42,869.869 INFO    ] time= 05/06/2026 16:53:42
[2026-06-05 16:53:42,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:53:42,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:53:43,058.058 INFO    ] No existing commands found in stream
[2026-06-05 16:53:48,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:53:48,079.079 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 16:53:48,982.982 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:53:48,984.984 INFO    ] Checking for system updates...
[2026-06-05 16:53:49,020.020 INFO    ] 200
[2026-06-05 16:53:49,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:49,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:53:49,077.077 INFO    ] No update needed
[2026-06-05 16:53:49,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 16:53:49,113.113 INFO    ] 200
[2026-06-05 16:53:49,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:53:49,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:53:49,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:53:49,201.201 INFO    ] No camera update needed
[2026-06-05 16:53:49,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:53:49,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:53:49,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:53:49,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:53:51,257.257 INFO    ] ================================================
[2026-06-05 16:53:51,271.271 INFO    ] Launching Daemon at Fri Jun  5 16:53:51 IST 2026
[2026-06-05 16:53:51,282.282 INFO    ] ================================================
[2026-06-05 16:53:51,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:53:51
[2026-06-05 16:53:52,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:53:52,694.694 INFO    ] Initializing speech engine...
[2026-06-05 16:53:52,714.714 INFO    ] 2026-06-05 16:53:52
[2026-06-05 16:53:52,989.989 INFO    ] 2026-06-05 16:53:52
[2026-06-05 16:53:53,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:53:54,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:53:54,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:53:55,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:53:55,147.147 INFO    ] time= 05/06/2026 16:53:55
[2026-06-05 16:53:55,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:53:55,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:53:55,229.229 INFO    ] No existing commands found in stream
[2026-06-05 16:54:00,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:54:00,247.247 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 16:54:02,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:54:02,136.136 INFO    ] Checking for system updates...
[2026-06-05 16:54:02,180.180 INFO    ] 200
[2026-06-05 16:54:02,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:02,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:54:02,248.248 INFO    ] No update needed
[2026-06-05 16:54:02,251.251 INFO    ] Checking for camera pi updates...
[2026-06-05 16:54:02,289.289 INFO    ] 200
[2026-06-05 16:54:02,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:02,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:54:02,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:54:02,372.372 INFO    ] No camera update needed
[2026-06-05 16:54:02,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:54:02,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:54:02,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:54:02,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:54:04,432.432 INFO    ] ================================================
[2026-06-05 16:54:04,447.447 INFO    ] Launching Daemon at Fri Jun  5 16:54:04 IST 2026
[2026-06-05 16:54:04,458.458 INFO    ] ================================================
[2026-06-05 16:54:05,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:54:05
[2026-06-05 16:54:05,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:54:05,886.886 INFO    ] Initializing speech engine...
[2026-06-05 16:54:05,895.895 INFO    ] 2026-06-05 16:54:05
[2026-06-05 16:54:06,152.152 INFO    ] 2026-06-05 16:54:06
[2026-06-05 16:54:06,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:54:06,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:54:06,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:54:06,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:54:06,553.553 INFO    ] time= 05/06/2026 16:54:06
[2026-06-05 16:54:06,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:54:06,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:54:06,748.748 INFO    ] No existing commands found in stream
[2026-06-05 16:54:11,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:54:11,765.765 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 16:54:15,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:54:15,395.395 INFO    ] Checking for system updates...
[2026-06-05 16:54:15,431.431 INFO    ] 200
[2026-06-05 16:54:15,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:15,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:54:15,489.489 INFO    ] No update needed
[2026-06-05 16:54:15,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 16:54:15,526.526 INFO    ] 200
[2026-06-05 16:54:15,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:15,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:54:15,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:54:15,616.616 INFO    ] No camera update needed
[2026-06-05 16:54:15,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:54:15,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:54:15,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:54:15,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:54:17,674.674 INFO    ] ================================================
[2026-06-05 16:54:17,689.689 INFO    ] Launching Daemon at Fri Jun  5 16:54:17 IST 2026
[2026-06-05 16:54:17,700.700 INFO    ] ================================================
[2026-06-05 16:54:18,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:54:18
[2026-06-05 16:54:19,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:54:19,308.308 INFO    ] Initializing speech engine...
[2026-06-05 16:54:19,316.316 INFO    ] 2026-06-05 16:54:19
[2026-06-05 16:54:19,592.592 INFO    ] 2026-06-05 16:54:19
[2026-06-05 16:54:19,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:54:19,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:54:19,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:54:20,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:54:20,089.089 INFO    ] time= 05/06/2026 16:54:20
[2026-06-05 16:54:20,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:54:20,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:54:20,305.305 INFO    ] No existing commands found in stream
[2026-06-05 16:54:25,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:54:25,322.322 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 16:54:27,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:54:27,799.799 INFO    ] Checking for system updates...
[2026-06-05 16:54:27,837.837 INFO    ] 200
[2026-06-05 16:54:27,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:27,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:54:27,897.897 INFO    ] No update needed
[2026-06-05 16:54:27,899.899 INFO    ] Checking for camera pi updates...
[2026-06-05 16:54:27,934.934 INFO    ] 200
[2026-06-05 16:54:27,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:27,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:54:28,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:54:28,031.031 INFO    ] No camera update needed
[2026-06-05 16:54:28,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:54:28,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:54:28,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:54:28,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:54:30,087.087 INFO    ] ================================================
[2026-06-05 16:54:30,102.102 INFO    ] Launching Daemon at Fri Jun  5 16:54:30 IST 2026
[2026-06-05 16:54:30,113.113 INFO    ] ================================================
[2026-06-05 16:54:30,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:54:30
[2026-06-05 16:54:31,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:54:31,534.534 INFO    ] Initializing speech engine...
[2026-06-05 16:54:31,550.550 INFO    ] 2026-06-05 16:54:31
[2026-06-05 16:54:31,851.851 INFO    ] 2026-06-05 16:54:31
[2026-06-05 16:54:31,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:54:32,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:54:32,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:54:32,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:54:32,283.283 INFO    ] time= 05/06/2026 16:54:32
[2026-06-05 16:54:32,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:54:32,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:54:32,381.381 INFO    ] No existing commands found in stream
[2026-06-05 16:54:37,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:54:37,405.405 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 16:54:39,303.303 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:54:39,306.306 INFO    ] Checking for system updates...
[2026-06-05 16:54:39,344.344 INFO    ] 200
[2026-06-05 16:54:39,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:39,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:54:39,404.404 INFO    ] No update needed
[2026-06-05 16:54:39,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 16:54:39,441.441 INFO    ] 200
[2026-06-05 16:54:39,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:39,490.490 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:54:39,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:54:39,543.543 INFO    ] No camera update needed
[2026-06-05 16:54:39,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:54:39,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:54:39,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:54:39,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:54:41,598.598 INFO    ] ================================================
[2026-06-05 16:54:41,613.613 INFO    ] Launching Daemon at Fri Jun  5 16:54:41 IST 2026
[2026-06-05 16:54:41,624.624 INFO    ] ================================================
[2026-06-05 16:54:42,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:54:42
[2026-06-05 16:54:42,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:54:43,087.087 INFO    ] Initializing speech engine...
[2026-06-05 16:54:43,094.094 INFO    ] 2026-06-05 16:54:43
[2026-06-05 16:54:43,355.355 INFO    ] 2026-06-05 16:54:43
[2026-06-05 16:54:43,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:54:43,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:54:43,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:54:43,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:54:43,815.815 INFO    ] time= 05/06/2026 16:54:43
[2026-06-05 16:54:43,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:54:43,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:54:44,048.048 INFO    ] No existing commands found in stream
[2026-06-05 16:54:49,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:54:49,080.080 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 16:54:50,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:54:50,924.924 INFO    ] Checking for system updates...
[2026-06-05 16:54:50,960.960 INFO    ] 200
[2026-06-05 16:54:50,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:51,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:54:51,018.018 INFO    ] No update needed
[2026-06-05 16:54:51,020.020 INFO    ] Checking for camera pi updates...
[2026-06-05 16:54:51,055.055 INFO    ] 200
[2026-06-05 16:54:51,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:54:51,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:54:51,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:54:51,151.151 INFO    ] No camera update needed
[2026-06-05 16:54:51,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:54:51,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:54:51,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:54:51,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:54:53,208.208 INFO    ] ================================================
[2026-06-05 16:54:53,223.223 INFO    ] Launching Daemon at Fri Jun  5 16:54:53 IST 2026
[2026-06-05 16:54:53,234.234 INFO    ] ================================================
[2026-06-05 16:54:53,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:54:53
[2026-06-05 16:54:54,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:54:54,732.732 INFO    ] Initializing speech engine...
[2026-06-05 16:54:54,742.742 INFO    ] 2026-06-05 16:54:54
[2026-06-05 16:54:55,023.023 INFO    ] 2026-06-05 16:54:55
[2026-06-05 16:54:55,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:54:55,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:54:55,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:54:55,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:54:55,561.561 INFO    ] time= 05/06/2026 16:54:55
[2026-06-05 16:54:55,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:54:55,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:54:55,723.723 INFO    ] No existing commands found in stream
[2026-06-05 16:55:00,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:55:00,757.757 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 16:55:03,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:55:03,468.468 INFO    ] Checking for system updates...
[2026-06-05 16:55:03,505.505 INFO    ] 200
[2026-06-05 16:55:03,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:03,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:55:03,568.568 INFO    ] No update needed
[2026-06-05 16:55:03,570.570 INFO    ] Checking for camera pi updates...
[2026-06-05 16:55:03,604.604 INFO    ] 200
[2026-06-05 16:55:03,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:03,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:55:03,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:55:03,692.692 INFO    ] No camera update needed
[2026-06-05 16:55:03,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:55:03,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:55:03,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:55:03,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:55:05,747.747 INFO    ] ================================================
[2026-06-05 16:55:05,762.762 INFO    ] Launching Daemon at Fri Jun  5 16:55:05 IST 2026
[2026-06-05 16:55:05,773.773 INFO    ] ================================================
[2026-06-05 16:55:06,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:55:06
[2026-06-05 16:55:07,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:55:07,417.417 INFO    ] Initializing speech engine...
[2026-06-05 16:55:07,425.425 INFO    ] 2026-06-05 16:55:07
[2026-06-05 16:55:07,697.697 INFO    ] 2026-06-05 16:55:07
[2026-06-05 16:55:07,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:55:07,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:55:07,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:55:08,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:55:08,203.203 INFO    ] time= 05/06/2026 16:55:08
[2026-06-05 16:55:08,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:55:08,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:55:08,415.415 INFO    ] No existing commands found in stream
[2026-06-05 16:55:13,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:55:13,433.433 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 16:55:14,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:55:14,296.296 INFO    ] Checking for system updates...
[2026-06-05 16:55:14,337.337 INFO    ] 200
[2026-06-05 16:55:14,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:14,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:55:14,402.402 INFO    ] No update needed
[2026-06-05 16:55:14,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 16:55:14,439.439 INFO    ] 200
[2026-06-05 16:55:14,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:14,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:55:14,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:55:14,634.634 INFO    ] No camera update needed
[2026-06-05 16:55:14,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:55:14,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:55:14,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:55:14,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:55:16,692.692 INFO    ] ================================================
[2026-06-05 16:55:16,707.707 INFO    ] Launching Daemon at Fri Jun  5 16:55:16 IST 2026
[2026-06-05 16:55:16,719.719 INFO    ] ================================================
[2026-06-05 16:55:17,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:55:17
[2026-06-05 16:55:17,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:55:18,135.135 INFO    ] Initializing speech engine...
[2026-06-05 16:55:18,154.154 INFO    ] 2026-06-05 16:55:18
[2026-06-05 16:55:18,400.400 INFO    ] 2026-06-05 16:55:18
[2026-06-05 16:55:18,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:55:18,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:55:18,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:55:18,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:55:18,865.865 INFO    ] time= 05/06/2026 16:55:18
[2026-06-05 16:55:18,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:55:18,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:55:19,099.099 INFO    ] No existing commands found in stream
[2026-06-05 16:55:24,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:55:24,118.118 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 16:55:25,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:55:25,355.355 INFO    ] Checking for system updates...
[2026-06-05 16:55:25,392.392 INFO    ] 200
[2026-06-05 16:55:25,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:25,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:55:25,453.453 INFO    ] No update needed
[2026-06-05 16:55:25,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 16:55:25,489.489 INFO    ] 200
[2026-06-05 16:55:25,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:25,533.533 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:55:25,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:55:25,579.579 INFO    ] No camera update needed
[2026-06-05 16:55:25,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:55:25,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:55:25,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:55:25,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:55:27,636.636 INFO    ] ================================================
[2026-06-05 16:55:27,651.651 INFO    ] Launching Daemon at Fri Jun  5 16:55:27 IST 2026
[2026-06-05 16:55:27,663.663 INFO    ] ================================================
[2026-06-05 16:55:28,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:55:28
[2026-06-05 16:55:28,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:55:29,255.255 INFO    ] Initializing speech engine...
[2026-06-05 16:55:29,265.265 INFO    ] 2026-06-05 16:55:29
[2026-06-05 16:55:29,515.515 INFO    ] 2026-06-05 16:55:29
[2026-06-05 16:55:29,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:55:29,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:55:29,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:55:29,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:55:29,890.890 INFO    ] time= 05/06/2026 16:55:29
[2026-06-05 16:55:29,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:55:29,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:55:30,071.071 INFO    ] No existing commands found in stream
[2026-06-05 16:55:35,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:55:35,100.100 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 16:55:37,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:55:37,354.354 INFO    ] Checking for system updates...
[2026-06-05 16:55:37,394.394 INFO    ] 200
[2026-06-05 16:55:37,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:37,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:55:37,453.453 INFO    ] No update needed
[2026-06-05 16:55:37,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 16:55:37,489.489 INFO    ] 200
[2026-06-05 16:55:37,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:37,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:55:37,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:55:37,586.586 INFO    ] No camera update needed
[2026-06-05 16:55:37,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:55:37,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:55:37,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:55:37,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:55:39,641.641 INFO    ] ================================================
[2026-06-05 16:55:39,658.658 INFO    ] Launching Daemon at Fri Jun  5 16:55:39 IST 2026
[2026-06-05 16:55:39,669.669 INFO    ] ================================================
[2026-06-05 16:55:40,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:55:40
[2026-06-05 16:55:40,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:55:41,085.085 INFO    ] Initializing speech engine...
[2026-06-05 16:55:41,100.100 INFO    ] 2026-06-05 16:55:41
[2026-06-05 16:55:41,386.386 INFO    ] 2026-06-05 16:55:41
[2026-06-05 16:55:41,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:55:41,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:55:41,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:55:41,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:55:41,811.811 INFO    ] time= 05/06/2026 16:55:41
[2026-06-05 16:55:41,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:55:41,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:55:41,982.982 INFO    ] No existing commands found in stream
[2026-06-05 16:55:47,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:55:47,010.010 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 16:55:48,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:55:48,006.006 INFO    ] Checking for system updates...
[2026-06-05 16:55:48,042.042 INFO    ] 200
[2026-06-05 16:55:48,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:48,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:55:48,111.111 INFO    ] No update needed
[2026-06-05 16:55:48,113.113 INFO    ] Checking for camera pi updates...
[2026-06-05 16:55:48,147.147 INFO    ] 200
[2026-06-05 16:55:48,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:55:48,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:55:48,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:55:48,250.250 INFO    ] No camera update needed
[2026-06-05 16:55:48,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:55:48,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:55:48,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:55:48,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:55:50,306.306 INFO    ] ================================================
[2026-06-05 16:55:50,321.321 INFO    ] Launching Daemon at Fri Jun  5 16:55:50 IST 2026
[2026-06-05 16:55:50,333.333 INFO    ] ================================================
[2026-06-05 16:55:50,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:55:50
[2026-06-05 16:55:51,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:55:51,796.796 INFO    ] Initializing speech engine...
[2026-06-05 16:55:51,805.805 INFO    ] 2026-06-05 16:55:51
[2026-06-05 16:55:52,065.065 INFO    ] 2026-06-05 16:55:52
[2026-06-05 16:55:52,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:55:52,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:55:52,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:55:52,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:55:52,547.547 INFO    ] time= 05/06/2026 16:55:52
[2026-06-05 16:55:52,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:55:52,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:55:52,736.736 INFO    ] No existing commands found in stream
[2026-06-05 16:55:57,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:55:57,770.770 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 16:56:01,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:56:01,474.474 INFO    ] Checking for system updates...
[2026-06-05 16:56:01,510.510 INFO    ] 200
[2026-06-05 16:56:01,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:01,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:56:01,596.596 INFO    ] No update needed
[2026-06-05 16:56:01,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 16:56:01,694.694 INFO    ] 200
[2026-06-05 16:56:01,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:01,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:56:01,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:56:01,840.840 INFO    ] No camera update needed
[2026-06-05 16:56:01,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:56:01,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:56:01,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:56:01,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:56:03,910.910 INFO    ] ================================================
[2026-06-05 16:56:03,926.926 INFO    ] Launching Daemon at Fri Jun  5 16:56:03 IST 2026
[2026-06-05 16:56:03,937.937 INFO    ] ================================================
[2026-06-05 16:56:04,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:56:04
[2026-06-05 16:56:05,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:56:05,547.547 INFO    ] Initializing speech engine...
[2026-06-05 16:56:05,556.556 INFO    ] 2026-06-05 16:56:05
[2026-06-05 16:56:05,840.840 INFO    ] 2026-06-05 16:56:05
[2026-06-05 16:56:05,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:56:06,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:56:06,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:56:06,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:56:06,357.357 INFO    ] time= 05/06/2026 16:56:06
[2026-06-05 16:56:06,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:56:06,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:56:06,540.540 INFO    ] No existing commands found in stream
[2026-06-05 16:56:11,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:56:11,570.570 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 16:56:14,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:56:14,383.383 INFO    ] Checking for system updates...
[2026-06-05 16:56:14,436.436 INFO    ] 200
[2026-06-05 16:56:14,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:14,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:56:14,493.493 INFO    ] No update needed
[2026-06-05 16:56:14,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 16:56:14,529.529 INFO    ] 200
[2026-06-05 16:56:14,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:14,572.572 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:56:14,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:56:14,614.614 INFO    ] No camera update needed
[2026-06-05 16:56:14,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:56:14,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:56:14,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:56:14,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:56:16,670.670 INFO    ] ================================================
[2026-06-05 16:56:16,685.685 INFO    ] Launching Daemon at Fri Jun  5 16:56:16 IST 2026
[2026-06-05 16:56:16,696.696 INFO    ] ================================================
[2026-06-05 16:56:17,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:56:17
[2026-06-05 16:56:17,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:56:18,227.227 INFO    ] Initializing speech engine...
[2026-06-05 16:56:18,242.242 INFO    ] 2026-06-05 16:56:18
[2026-06-05 16:56:18,508.508 INFO    ] 2026-06-05 16:56:18
[2026-06-05 16:56:18,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:56:18,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:56:18,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:56:18,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:56:18,882.882 INFO    ] time= 05/06/2026 16:56:18
[2026-06-05 16:56:18,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:56:18,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:56:19,074.074 INFO    ] No existing commands found in stream
[2026-06-05 16:56:24,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:56:24,087.087 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 16:56:30,003.003 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:56:30,006.006 INFO    ] Checking for system updates...
[2026-06-05 16:56:30,046.046 INFO    ] 200
[2026-06-05 16:56:30,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:30,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:56:30,104.104 INFO    ] No update needed
[2026-06-05 16:56:30,107.107 INFO    ] Checking for camera pi updates...
[2026-06-05 16:56:30,144.144 INFO    ] 200
[2026-06-05 16:56:30,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:30,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:56:30,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:56:30,234.234 INFO    ] No camera update needed
[2026-06-05 16:56:30,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:56:30,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:56:30,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:56:30,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:56:32,291.291 INFO    ] ================================================
[2026-06-05 16:56:32,306.306 INFO    ] Launching Daemon at Fri Jun  5 16:56:32 IST 2026
[2026-06-05 16:56:32,317.317 INFO    ] ================================================
[2026-06-05 16:56:32,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:56:32
[2026-06-05 16:56:33,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:56:33,776.776 INFO    ] Initializing speech engine...
[2026-06-05 16:56:33,786.786 INFO    ] 2026-06-05 16:56:33
[2026-06-05 16:56:34,047.047 INFO    ] 2026-06-05 16:56:34
[2026-06-05 16:56:34,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:56:34,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:56:34,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:56:34,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:56:34,510.510 INFO    ] time= 05/06/2026 16:56:34
[2026-06-05 16:56:34,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:56:34,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:56:34,742.742 INFO    ] No existing commands found in stream
[2026-06-05 16:56:39,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:56:39,760.760 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 16:56:42,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:56:42,103.103 INFO    ] Checking for system updates...
[2026-06-05 16:56:42,143.143 INFO    ] 200
[2026-06-05 16:56:42,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:42,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:56:42,203.203 INFO    ] No update needed
[2026-06-05 16:56:42,205.205 INFO    ] Checking for camera pi updates...
[2026-06-05 16:56:42,243.243 INFO    ] 200
[2026-06-05 16:56:42,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:42,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:56:42,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:56:42,334.334 INFO    ] No camera update needed
[2026-06-05 16:56:42,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:56:42,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:56:42,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:56:42,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:56:44,392.392 INFO    ] ================================================
[2026-06-05 16:56:44,407.407 INFO    ] Launching Daemon at Fri Jun  5 16:56:44 IST 2026
[2026-06-05 16:56:44,418.418 INFO    ] ================================================
[2026-06-05 16:56:44,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:56:44
[2026-06-05 16:56:45,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:56:45,827.827 INFO    ] Initializing speech engine...
[2026-06-05 16:56:45,842.842 INFO    ] 2026-06-05 16:56:45
[2026-06-05 16:56:46,109.109 INFO    ] 2026-06-05 16:56:46
[2026-06-05 16:56:46,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:56:46,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:56:46,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:56:46,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:56:46,547.547 INFO    ] time= 05/06/2026 16:56:46
[2026-06-05 16:56:46,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:56:46,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:56:46,736.736 INFO    ] No existing commands found in stream
[2026-06-05 16:56:51,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:56:51,750.750 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 16:56:55,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:56:55,085.085 INFO    ] Checking for system updates...
[2026-06-05 16:56:55,124.124 INFO    ] 200
[2026-06-05 16:56:55,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:55,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:56:55,183.183 INFO    ] No update needed
[2026-06-05 16:56:55,185.185 INFO    ] Checking for camera pi updates...
[2026-06-05 16:56:55,219.219 INFO    ] 200
[2026-06-05 16:56:55,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:56:55,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:56:55,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:56:55,308.308 INFO    ] No camera update needed
[2026-06-05 16:56:55,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:56:55,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:56:55,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:56:55,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:56:57,363.363 INFO    ] ================================================
[2026-06-05 16:56:57,378.378 INFO    ] Launching Daemon at Fri Jun  5 16:56:57 IST 2026
[2026-06-05 16:56:57,389.389 INFO    ] ================================================
[2026-06-05 16:56:57,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:56:57
[2026-06-05 16:56:58,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:56:58,812.812 INFO    ] Initializing speech engine...
[2026-06-05 16:56:58,821.821 INFO    ] 2026-06-05 16:56:58
[2026-06-05 16:56:59,071.071 INFO    ] 2026-06-05 16:56:59
[2026-06-05 16:56:59,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:56:59,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:56:59,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:56:59,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:56:59,555.555 INFO    ] time= 05/06/2026 16:56:59
[2026-06-05 16:56:59,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:56:59,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:56:59,759.759 INFO    ] No existing commands found in stream
[2026-06-05 16:57:04,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:57:04,783.783 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 16:57:06,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:57:06,886.886 INFO    ] Checking for system updates...
[2026-06-05 16:57:06,925.925 INFO    ] 200
[2026-06-05 16:57:06,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:57:06,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:57:06,988.988 INFO    ] No update needed
[2026-06-05 16:57:06,991.991 INFO    ] Checking for camera pi updates...
[2026-06-05 16:57:07,028.028 INFO    ] 200
[2026-06-05 16:57:07,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:57:07,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:57:07,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:57:07,104.104 INFO    ] No camera update needed
[2026-06-05 16:57:07,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:57:07,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:57:07,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:57:07,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:57:09,160.160 INFO    ] ================================================
[2026-06-05 16:57:09,175.175 INFO    ] Launching Daemon at Fri Jun  5 16:57:09 IST 2026
[2026-06-05 16:57:09,186.186 INFO    ] ================================================
[2026-06-05 16:57:09,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:57:09
[2026-06-05 16:57:10,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:57:10,606.606 INFO    ] Initializing speech engine...
[2026-06-05 16:57:10,620.620 INFO    ] 2026-06-05 16:57:10
[2026-06-05 16:57:10,885.885 INFO    ] 2026-06-05 16:57:10
[2026-06-05 16:57:10,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:57:11,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:57:11,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:57:11,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:57:11,365.365 INFO    ] time= 05/06/2026 16:57:11
[2026-06-05 16:57:11,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:57:11,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:57:11,573.573 INFO    ] No existing commands found in stream
[2026-06-05 16:57:16,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:57:16,603.603 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 16:57:19,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:57:19,263.263 INFO    ] Checking for system updates...
[2026-06-05 16:57:19,299.299 INFO    ] 200
[2026-06-05 16:57:19,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:57:19,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:57:19,356.356 INFO    ] No update needed
[2026-06-05 16:57:19,358.358 INFO    ] Checking for camera pi updates...
[2026-06-05 16:57:19,393.393 INFO    ] 200
[2026-06-05 16:57:19,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:57:19,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:57:19,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:57:19,583.583 INFO    ] No camera update needed
[2026-06-05 16:57:19,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:57:19,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:57:19,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:57:19,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:57:21,639.639 INFO    ] ================================================
[2026-06-05 16:57:21,655.655 INFO    ] Launching Daemon at Fri Jun  5 16:57:21 IST 2026
[2026-06-05 16:57:21,666.666 INFO    ] ================================================
[2026-06-05 16:57:22,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:57:22
[2026-06-05 16:57:22,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:57:23,278.278 INFO    ] Initializing speech engine...
[2026-06-05 16:57:23,286.286 INFO    ] 2026-06-05 16:57:23
[2026-06-05 16:57:23,561.561 INFO    ] 2026-06-05 16:57:23
[2026-06-05 16:57:23,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:57:24,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:57:24,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:57:25,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:57:25,033.033 INFO    ] time= 05/06/2026 16:57:25
[2026-06-05 16:57:25,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:57:25,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:57:25,148.148 INFO    ] No existing commands found in stream
[2026-06-05 16:57:30,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:57:30,163.163 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 16:57:32,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:57:32,936.936 INFO    ] Checking for system updates...
[2026-06-05 16:57:32,973.973 INFO    ] 200
[2026-06-05 16:57:32,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:57:33,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:57:33,033.033 INFO    ] No update needed
[2026-06-05 16:57:33,035.035 INFO    ] Checking for camera pi updates...
[2026-06-05 16:57:33,069.069 INFO    ] 200
[2026-06-05 16:57:33,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:57:33,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:57:33,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:57:33,142.142 INFO    ] No camera update needed
[2026-06-05 16:57:33,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:57:33,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:57:33,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:57:33,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:57:35,197.197 INFO    ] ================================================
[2026-06-05 16:57:35,213.213 INFO    ] Launching Daemon at Fri Jun  5 16:57:35 IST 2026
[2026-06-05 16:57:35,225.225 INFO    ] ================================================
[2026-06-05 16:57:35,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:57:35
[2026-06-05 16:57:36,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:57:36,626.626 INFO    ] Initializing speech engine...
[2026-06-05 16:57:36,639.639 INFO    ] 2026-06-05 16:57:36
[2026-06-05 16:57:36,905.905 INFO    ] 2026-06-05 16:57:36
[2026-06-05 16:57:36,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:57:37,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:57:37,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:57:37,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:57:37,365.365 INFO    ] time= 05/06/2026 16:57:37
[2026-06-05 16:57:37,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:57:37,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:57:37,620.620 INFO    ] No existing commands found in stream
[2026-06-05 16:57:42,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:57:42,644.644 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 16:57:45,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:57:45,351.351 INFO    ] Checking for system updates...
[2026-06-05 16:57:45,391.391 INFO    ] 200
[2026-06-05 16:57:45,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:57:45,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:57:45,455.455 INFO    ] No update needed
[2026-06-05 16:57:45,458.458 INFO    ] Checking for camera pi updates...
[2026-06-05 16:57:45,495.495 INFO    ] 200
[2026-06-05 16:57:45,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:57:45,546.546 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:57:45,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:57:45,592.592 INFO    ] No camera update needed
[2026-06-05 16:57:45,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:57:45,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:57:45,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:57:45,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:57:47,646.646 INFO    ] ================================================
[2026-06-05 16:57:47,662.662 INFO    ] Launching Daemon at Fri Jun  5 16:57:47 IST 2026
[2026-06-05 16:57:47,674.674 INFO    ] ================================================
[2026-06-05 16:57:48,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:57:48
[2026-06-05 16:57:48,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:57:49,113.113 INFO    ] Initializing speech engine...
[2026-06-05 16:57:49,119.119 INFO    ] 2026-06-05 16:57:49
[2026-06-05 16:57:49,380.380 INFO    ] 2026-06-05 16:57:49
[2026-06-05 16:57:49,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:57:49,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:57:49,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:57:49,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:57:49,863.863 INFO    ] time= 05/06/2026 16:57:49
[2026-06-05 16:57:49,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:57:49,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:57:50,058.058 INFO    ] No existing commands found in stream
[2026-06-05 16:57:55,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:57:55,088.088 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 16:58:00,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:58:00,231.231 INFO    ] Checking for system updates...
[2026-06-05 16:58:00,267.267 INFO    ] 200
[2026-06-05 16:58:00,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:00,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:58:00,325.325 INFO    ] No update needed
[2026-06-05 16:58:00,327.327 INFO    ] Checking for camera pi updates...
[2026-06-05 16:58:00,361.361 INFO    ] 200
[2026-06-05 16:58:00,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:00,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:58:00,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:58:00,452.452 INFO    ] No camera update needed
[2026-06-05 16:58:00,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:58:00,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:58:00,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:58:00,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:58:02,537.537 INFO    ] ================================================
[2026-06-05 16:58:02,561.561 INFO    ] Launching Daemon at Fri Jun  5 16:58:02 IST 2026
[2026-06-05 16:58:02,578.578 INFO    ] ================================================
[2026-06-05 16:58:03,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:58:03
[2026-06-05 16:58:03,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:58:04,116.116 INFO    ] Initializing speech engine...
[2026-06-05 16:58:04,124.124 INFO    ] 2026-06-05 16:58:04
[2026-06-05 16:58:04,418.418 INFO    ] 2026-06-05 16:58:04
[2026-06-05 16:58:04,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:58:04,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:58:04,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:58:04,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:58:04,788.788 INFO    ] time= 05/06/2026 16:58:04
[2026-06-05 16:58:04,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:58:04,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:58:04,983.983 INFO    ] No existing commands found in stream
[2026-06-05 16:58:09,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:58:09,998.998 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 16:58:11,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:58:11,775.775 INFO    ] Checking for system updates...
[2026-06-05 16:58:11,811.811 INFO    ] 200
[2026-06-05 16:58:11,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:11,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:58:11,875.875 INFO    ] No update needed
[2026-06-05 16:58:11,878.878 INFO    ] Checking for camera pi updates...
[2026-06-05 16:58:11,913.913 INFO    ] 200
[2026-06-05 16:58:11,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:11,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:58:12,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:58:12,004.004 INFO    ] No camera update needed
[2026-06-05 16:58:12,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:58:12,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:58:12,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:58:12,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:58:14,061.061 INFO    ] ================================================
[2026-06-05 16:58:14,077.077 INFO    ] Launching Daemon at Fri Jun  5 16:58:14 IST 2026
[2026-06-05 16:58:14,088.088 INFO    ] ================================================
[2026-06-05 16:58:14,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:58:14
[2026-06-05 16:58:15,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:58:15,550.550 INFO    ] Initializing speech engine...
[2026-06-05 16:58:15,559.559 INFO    ] 2026-06-05 16:58:15
[2026-06-05 16:58:15,805.805 INFO    ] 2026-06-05 16:58:15
[2026-06-05 16:58:15,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:58:16,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:58:16,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:58:16,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:58:16,240.240 INFO    ] time= 05/06/2026 16:58:16
[2026-06-05 16:58:16,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:58:16,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:58:16,506.506 INFO    ] No existing commands found in stream
[2026-06-05 16:58:21,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:58:21,530.530 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 16:58:25,265.265 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:58:25,267.267 INFO    ] Checking for system updates...
[2026-06-05 16:58:25,306.306 INFO    ] 200
[2026-06-05 16:58:25,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:25,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:58:25,370.370 INFO    ] No update needed
[2026-06-05 16:58:25,373.373 INFO    ] Checking for camera pi updates...
[2026-06-05 16:58:25,410.410 INFO    ] 200
[2026-06-05 16:58:25,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:25,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:58:25,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:58:25,509.509 INFO    ] No camera update needed
[2026-06-05 16:58:25,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:58:25,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:58:25,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:58:25,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:58:27,565.565 INFO    ] ================================================
[2026-06-05 16:58:27,581.581 INFO    ] Launching Daemon at Fri Jun  5 16:58:27 IST 2026
[2026-06-05 16:58:27,592.592 INFO    ] ================================================
[2026-06-05 16:58:28,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:58:28
[2026-06-05 16:58:28,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:58:29,073.073 INFO    ] Initializing speech engine...
[2026-06-05 16:58:29,085.085 INFO    ] 2026-06-05 16:58:29
[2026-06-05 16:58:29,371.371 INFO    ] 2026-06-05 16:58:29
[2026-06-05 16:58:29,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:58:29,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:58:29,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:58:29,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:58:29,913.913 INFO    ] time= 05/06/2026 16:58:29
[2026-06-05 16:58:29,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:58:29,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:58:30,053.053 INFO    ] No existing commands found in stream
[2026-06-05 16:58:35,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:58:35,088.088 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 16:58:37,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:58:37,507.507 INFO    ] Checking for system updates...
[2026-06-05 16:58:37,544.544 INFO    ] 200
[2026-06-05 16:58:37,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:37,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:58:37,603.603 INFO    ] No update needed
[2026-06-05 16:58:37,606.606 INFO    ] Checking for camera pi updates...
[2026-06-05 16:58:37,642.642 INFO    ] 200
[2026-06-05 16:58:37,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:37,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:58:37,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:58:37,739.739 INFO    ] No camera update needed
[2026-06-05 16:58:37,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:58:37,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:58:37,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:58:37,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:58:39,794.794 INFO    ] ================================================
[2026-06-05 16:58:39,810.810 INFO    ] Launching Daemon at Fri Jun  5 16:58:39 IST 2026
[2026-06-05 16:58:39,821.821 INFO    ] ================================================
[2026-06-05 16:58:40,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:58:40
[2026-06-05 16:58:41,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:58:41,364.364 INFO    ] Initializing speech engine...
[2026-06-05 16:58:41,371.371 INFO    ] 2026-06-05 16:58:41
[2026-06-05 16:58:41,632.632 INFO    ] 2026-06-05 16:58:41
[2026-06-05 16:58:41,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:58:41,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:58:41,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:58:42,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:58:42,111.111 INFO    ] time= 05/06/2026 16:58:42
[2026-06-05 16:58:42,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:58:42,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:58:42,306.306 INFO    ] No existing commands found in stream
[2026-06-05 16:58:47,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:58:47,339.339 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 16:58:48,723.723 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 16:58:48,725.725 INFO    ] Checking for system updates...
[2026-06-05 16:58:48,765.765 INFO    ] 200
[2026-06-05 16:58:48,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:48,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:58:48,824.824 INFO    ] No update needed
[2026-06-05 16:58:48,827.827 INFO    ] Checking for camera pi updates...
[2026-06-05 16:58:48,864.864 INFO    ] 200
[2026-06-05 16:58:48,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:58:48,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:58:48,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:58:48,954.954 INFO    ] No camera update needed
[2026-06-05 16:58:48,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:58:48,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:58:48,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:58:48,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:58:51,010.010 INFO    ] ================================================
[2026-06-05 16:58:51,026.026 INFO    ] Launching Daemon at Fri Jun  5 16:58:51 IST 2026
[2026-06-05 16:58:51,037.037 INFO    ] ================================================
[2026-06-05 16:58:51,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:58:51
[2026-06-05 16:58:52,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:58:52,457.457 INFO    ] Initializing speech engine...
[2026-06-05 16:58:52,482.482 INFO    ] 2026-06-05 16:58:52
[2026-06-05 16:58:52,753.753 INFO    ] 2026-06-05 16:58:52
[2026-06-05 16:58:52,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:58:55,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:58:55,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:58:55,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:58:55,338.338 INFO    ] time= 05/06/2026 16:58:55
[2026-06-05 16:58:55,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:58:55,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:58:55,431.431 INFO    ] No existing commands found in stream
[2026-06-05 16:59:00,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:59:00,445.445 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-05 16:59:02,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 16:59:02,882.882 INFO    ] Checking for system updates...
[2026-06-05 16:59:02,933.933 INFO    ] 200
[2026-06-05 16:59:02,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:03,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:59:03,021.021 INFO    ] No update needed
[2026-06-05 16:59:03,024.024 INFO    ] Checking for camera pi updates...
[2026-06-05 16:59:03,071.071 INFO    ] 200
[2026-06-05 16:59:03,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:03,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:59:03,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:59:03,168.168 INFO    ] No camera update needed
[2026-06-05 16:59:03,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:59:03,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:59:03,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:59:03,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:59:05,235.235 INFO    ] ================================================
[2026-06-05 16:59:05,251.251 INFO    ] Launching Daemon at Fri Jun  5 16:59:05 IST 2026
[2026-06-05 16:59:05,262.262 INFO    ] ================================================
[2026-06-05 16:59:05,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:59:05
[2026-06-05 16:59:06,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:59:06,917.917 INFO    ] Initializing speech engine...
[2026-06-05 16:59:06,930.930 INFO    ] 2026-06-05 16:59:06
[2026-06-05 16:59:07,254.254 INFO    ] 2026-06-05 16:59:07
[2026-06-05 16:59:07,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:59:07,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:59:07,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:59:07,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:59:07,767.767 INFO    ] time= 05/06/2026 16:59:07
[2026-06-05 16:59:07,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:59:07,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:59:07,926.926 INFO    ] No existing commands found in stream
[2026-06-05 16:59:12,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:59:12,951.951 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 16:59:15,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 16:59:15,877.877 INFO    ] Checking for system updates...
[2026-06-05 16:59:15,913.913 INFO    ] 200
[2026-06-05 16:59:15,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:15,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:59:15,976.976 INFO    ] No update needed
[2026-06-05 16:59:15,978.978 INFO    ] Checking for camera pi updates...
[2026-06-05 16:59:16,012.012 INFO    ] 200
[2026-06-05 16:59:16,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:16,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:59:16,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:59:16,101.101 INFO    ] No camera update needed
[2026-06-05 16:59:16,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:59:16,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:59:16,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:59:16,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:59:18,162.162 INFO    ] ================================================
[2026-06-05 16:59:18,178.178 INFO    ] Launching Daemon at Fri Jun  5 16:59:18 IST 2026
[2026-06-05 16:59:18,190.190 INFO    ] ================================================
[2026-06-05 16:59:18,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:59:18
[2026-06-05 16:59:19,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:59:19,621.621 INFO    ] Initializing speech engine...
[2026-06-05 16:59:19,628.628 INFO    ] 2026-06-05 16:59:19
[2026-06-05 16:59:19,873.873 INFO    ] 2026-06-05 16:59:19
[2026-06-05 16:59:19,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:59:20,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:59:20,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:59:20,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:59:20,315.315 INFO    ] time= 05/06/2026 16:59:20
[2026-06-05 16:59:20,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:59:20,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:59:20,579.579 INFO    ] No existing commands found in stream
[2026-06-05 16:59:25,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:59:25,611.611 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 16:59:26,761.761 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 16:59:26,764.764 INFO    ] Checking for system updates...
[2026-06-05 16:59:26,801.801 INFO    ] 200
[2026-06-05 16:59:26,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:26,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:59:26,870.870 INFO    ] No update needed
[2026-06-05 16:59:26,873.873 INFO    ] Checking for camera pi updates...
[2026-06-05 16:59:26,907.907 INFO    ] 200
[2026-06-05 16:59:26,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:26,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:59:27,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:59:27,097.097 INFO    ] No camera update needed
[2026-06-05 16:59:27,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:59:27,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:59:27,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:59:27,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:59:29,153.153 INFO    ] ================================================
[2026-06-05 16:59:29,169.169 INFO    ] Launching Daemon at Fri Jun  5 16:59:29 IST 2026
[2026-06-05 16:59:29,180.180 INFO    ] ================================================
[2026-06-05 16:59:29,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:59:29
[2026-06-05 16:59:30,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:59:30,590.590 INFO    ] Initializing speech engine...
[2026-06-05 16:59:30,599.599 INFO    ] 2026-06-05 16:59:30
[2026-06-05 16:59:30,895.895 INFO    ] 2026-06-05 16:59:30
[2026-06-05 16:59:30,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:59:31,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:59:31,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:59:31,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:59:31,280.280 INFO    ] time= 05/06/2026 16:59:31
[2026-06-05 16:59:31,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:59:31,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:59:31,406.406 INFO    ] No existing commands found in stream
[2026-06-05 16:59:36,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:59:36,421.421 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 16:59:37,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 16:59:37,291.291 INFO    ] Checking for system updates...
[2026-06-05 16:59:37,331.331 INFO    ] 200
[2026-06-05 16:59:37,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:37,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:59:37,389.389 INFO    ] No update needed
[2026-06-05 16:59:37,391.391 INFO    ] Checking for camera pi updates...
[2026-06-05 16:59:37,430.430 INFO    ] 200
[2026-06-05 16:59:37,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:37,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:59:37,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 16:59:37,522.522 INFO    ] No camera update needed
[2026-06-05 16:59:37,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:59:37,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:59:37,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:59:37,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:59:39,578.578 INFO    ] ================================================
[2026-06-05 16:59:39,594.594 INFO    ] Launching Daemon at Fri Jun  5 16:59:39 IST 2026
[2026-06-05 16:59:39,605.605 INFO    ] ================================================
[2026-06-05 16:59:40,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:59:40
[2026-06-05 16:59:40,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:59:41,123.123 INFO    ] Initializing speech engine...
[2026-06-05 16:59:41,136.136 INFO    ] 2026-06-05 16:59:41
[2026-06-05 16:59:41,424.424 INFO    ] 2026-06-05 16:59:41
[2026-06-05 16:59:41,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:59:41,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:59:41,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:59:41,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:59:41,984.984 INFO    ] time= 05/06/2026 16:59:41
[2026-06-05 16:59:41,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:59:42,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:59:42,126.126 INFO    ] No existing commands found in stream
[2026-06-05 16:59:47,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 16:59:47,147.147 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 16:59:50,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 16:59:50,186.186 INFO    ] Checking for system updates...
[2026-06-05 16:59:50,222.222 INFO    ] 200
[2026-06-05 16:59:50,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:50,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:59:50,284.284 INFO    ] No update needed
[2026-06-05 16:59:50,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 16:59:50,320.320 INFO    ] 200
[2026-06-05 16:59:50,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 16:59:50,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 16:59:50,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 16:59:50,431.431 INFO    ] No camera update needed
[2026-06-05 16:59:50,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-05 16:59:50,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 16:59:50,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 16:59:50,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 16:59:52,487.487 INFO    ] ================================================
[2026-06-05 16:59:52,503.503 INFO    ] Launching Daemon at Fri Jun  5 16:59:52 IST 2026
[2026-06-05 16:59:52,514.514 INFO    ] ================================================
[2026-06-05 16:59:53,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 16:59:53
[2026-06-05 16:59:53,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 16:59:53,991.991 INFO    ] Initializing speech engine...
[2026-06-05 16:59:54,001.001 INFO    ] 2026-06-05 16:59:53
[2026-06-05 16:59:54,249.249 INFO    ] 2026-06-05 16:59:54
[2026-06-05 16:59:54,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 16:59:55,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 16:59:55,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 16:59:55,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 16:59:55,348.348 INFO    ] time= 05/06/2026 16:59:55
[2026-06-05 16:59:55,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 16:59:55,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-05 16:59:55,551.551 INFO    ] No existing commands found in stream
[2026-06-05 17:00:00,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:00:00,582.582 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 17:00:02,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:00:02,679.679 INFO    ] Checking for system updates...
[2026-06-05 17:00:02,963.963 INFO    ] 200
[2026-06-05 17:00:02,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:03,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:00:03,371.371 INFO    ] No update needed
[2026-06-05 17:00:03,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 17:00:03,678.678 INFO    ] 200
[2026-06-05 17:00:03,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:04,095.095 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:00:04,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:00:04,200.200 INFO    ] No camera update needed
[2026-06-05 17:00:04,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:00:04,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:00:04,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:00:04,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:00:06,377.377 INFO    ] ================================================
[2026-06-05 17:00:06,392.392 INFO    ] Launching Daemon at Fri Jun  5 17:00:06 IST 2026
[2026-06-05 17:00:06,403.403 INFO    ] ================================================
[2026-06-05 17:00:06,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:00:06
[2026-06-05 17:00:07,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:00:07,903.903 INFO    ] Initializing speech engine...
[2026-06-05 17:00:07,914.914 INFO    ] 2026-06-05 17:00:07
[2026-06-05 17:00:08,200.200 INFO    ] 2026-06-05 17:00:08
[2026-06-05 17:00:08,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:00:08,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:00:08,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:00:08,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:00:08,712.712 INFO    ] time= 05/06/2026 17:00:08
[2026-06-05 17:00:08,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:00:08,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:00:08,874.874 INFO    ] No existing commands found in stream
[2026-06-05 17:00:13,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:00:13,904.904 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 17:00:15,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:00:15,557.557 INFO    ] Checking for system updates...
[2026-06-05 17:00:15,597.597 INFO    ] 200
[2026-06-05 17:00:15,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:15,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:00:15,654.654 INFO    ] No update needed
[2026-06-05 17:00:15,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 17:00:15,691.691 INFO    ] 200
[2026-06-05 17:00:15,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:15,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:00:15,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:00:15,780.780 INFO    ] No camera update needed
[2026-06-05 17:00:15,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:00:15,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:00:15,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:00:15,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:00:17,835.835 INFO    ] ================================================
[2026-06-05 17:00:17,852.852 INFO    ] Launching Daemon at Fri Jun  5 17:00:17 IST 2026
[2026-06-05 17:00:17,862.862 INFO    ] ================================================
[2026-06-05 17:00:18,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:00:18
[2026-06-05 17:00:19,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:00:19,318.318 INFO    ] Initializing speech engine...
[2026-06-05 17:00:19,327.327 INFO    ] 2026-06-05 17:00:19
[2026-06-05 17:00:19,626.626 INFO    ] 2026-06-05 17:00:19
[2026-06-05 17:00:19,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:00:19,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:00:19,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:00:20,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:00:20,059.059 INFO    ] time= 05/06/2026 17:00:20
[2026-06-05 17:00:20,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:00:20,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:00:20,217.217 INFO    ] No existing commands found in stream
[2026-06-05 17:00:25,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:00:25,256.256 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 17:00:26,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:00:26,216.216 INFO    ] Checking for system updates...
[2026-06-05 17:00:26,256.256 INFO    ] 200
[2026-06-05 17:00:26,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:26,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:00:26,313.313 INFO    ] No update needed
[2026-06-05 17:00:26,316.316 INFO    ] Checking for camera pi updates...
[2026-06-05 17:00:26,353.353 INFO    ] 200
[2026-06-05 17:00:26,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:26,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:00:26,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:00:26,451.451 INFO    ] No camera update needed
[2026-06-05 17:00:26,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:00:26,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:00:26,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:00:26,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:00:28,506.506 INFO    ] ================================================
[2026-06-05 17:00:28,522.522 INFO    ] Launching Daemon at Fri Jun  5 17:00:28 IST 2026
[2026-06-05 17:00:28,533.533 INFO    ] ================================================
[2026-06-05 17:00:29,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:00:29
[2026-06-05 17:00:29,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:00:29,974.974 INFO    ] Initializing speech engine...
[2026-06-05 17:00:29,990.990 INFO    ] 2026-06-05 17:00:29
[2026-06-05 17:00:30,275.275 INFO    ] 2026-06-05 17:00:30
[2026-06-05 17:00:30,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:00:30,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:00:30,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:00:30,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:00:30,795.795 INFO    ] time= 05/06/2026 17:00:30
[2026-06-05 17:00:30,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:00:30,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:00:30,990.990 INFO    ] No existing commands found in stream
[2026-06-05 17:00:36,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:00:36,023.023 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 17:00:37,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:00:37,464.464 INFO    ] Checking for system updates...
[2026-06-05 17:00:37,501.501 INFO    ] 200
[2026-06-05 17:00:37,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:37,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:00:37,560.560 INFO    ] No update needed
[2026-06-05 17:00:37,563.563 INFO    ] Checking for camera pi updates...
[2026-06-05 17:00:37,601.601 INFO    ] 200
[2026-06-05 17:00:37,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:37,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:00:37,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:00:37,687.687 INFO    ] No camera update needed
[2026-06-05 17:00:37,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:00:37,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:00:37,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:00:37,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:00:39,742.742 INFO    ] ================================================
[2026-06-05 17:00:39,757.757 INFO    ] Launching Daemon at Fri Jun  5 17:00:39 IST 2026
[2026-06-05 17:00:39,768.768 INFO    ] ================================================
[2026-06-05 17:00:40,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:00:40
[2026-06-05 17:00:40,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:00:41,190.190 INFO    ] Initializing speech engine...
[2026-06-05 17:00:41,209.209 INFO    ] 2026-06-05 17:00:41
[2026-06-05 17:00:41,462.462 INFO    ] 2026-06-05 17:00:41
[2026-06-05 17:00:41,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:00:41,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:00:41,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:00:41,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:00:41,842.842 INFO    ] time= 05/06/2026 17:00:41
[2026-06-05 17:00:41,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:00:41,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:00:42,012.012 INFO    ] No existing commands found in stream
[2026-06-05 17:00:47,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:00:47,045.045 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 17:00:50,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:00:50,915.915 INFO    ] Checking for system updates...
[2026-06-05 17:00:50,951.951 INFO    ] 200
[2026-06-05 17:00:50,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:51,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:00:51,010.010 INFO    ] No update needed
[2026-06-05 17:00:51,013.013 INFO    ] Checking for camera pi updates...
[2026-06-05 17:00:51,047.047 INFO    ] 200
[2026-06-05 17:00:51,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:00:51,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:00:51,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:00:51,141.141 INFO    ] No camera update needed
[2026-06-05 17:00:51,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:00:51,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:00:51,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:00:51,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:00:53,199.199 INFO    ] ================================================
[2026-06-05 17:00:53,215.215 INFO    ] Launching Daemon at Fri Jun  5 17:00:53 IST 2026
[2026-06-05 17:00:53,225.225 INFO    ] ================================================
[2026-06-05 17:00:53,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:00:53
[2026-06-05 17:00:54,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:00:54,701.701 INFO    ] Initializing speech engine...
[2026-06-05 17:00:54,707.707 INFO    ] 2026-06-05 17:00:54
[2026-06-05 17:00:54,969.969 INFO    ] 2026-06-05 17:00:54
[2026-06-05 17:00:55,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:00:55,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:00:55,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:00:55,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:00:55,513.513 INFO    ] time= 05/06/2026 17:00:55
[2026-06-05 17:00:55,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:00:55,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:00:55,655.655 INFO    ] No existing commands found in stream
[2026-06-05 17:01:00,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:01:00,683.683 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 17:01:03,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:01:03,135.135 INFO    ] Checking for system updates...
[2026-06-05 17:01:03,176.176 INFO    ] 200
[2026-06-05 17:01:03,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:03,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:01:03,266.266 INFO    ] No update needed
[2026-06-05 17:01:03,269.269 INFO    ] Checking for camera pi updates...
[2026-06-05 17:01:03,305.305 INFO    ] 200
[2026-06-05 17:01:03,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:03,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:01:03,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:01:03,401.401 INFO    ] No camera update needed
[2026-06-05 17:01:03,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:01:03,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:01:03,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:01:03,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:01:05,458.458 INFO    ] ================================================
[2026-06-05 17:01:05,474.474 INFO    ] Launching Daemon at Fri Jun  5 17:01:05 IST 2026
[2026-06-05 17:01:05,484.484 INFO    ] ================================================
[2026-06-05 17:01:06,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:01:06
[2026-06-05 17:01:06,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:01:06,928.928 INFO    ] Initializing speech engine...
[2026-06-05 17:01:06,938.938 INFO    ] 2026-06-05 17:01:06
[2026-06-05 17:01:07,186.186 INFO    ] 2026-06-05 17:01:07
[2026-06-05 17:01:07,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:01:07,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:01:07,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:01:07,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:01:07,553.553 INFO    ] time= 05/06/2026 17:01:07
[2026-06-05 17:01:07,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:01:07,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:01:07,671.671 INFO    ] No existing commands found in stream
[2026-06-05 17:01:12,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:01:12,681.681 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 17:01:15,922.922 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:01:15,924.924 INFO    ] Checking for system updates...
[2026-06-05 17:01:15,961.961 INFO    ] 200
[2026-06-05 17:01:15,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:16,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:01:16,025.025 INFO    ] No update needed
[2026-06-05 17:01:16,028.028 INFO    ] Checking for camera pi updates...
[2026-06-05 17:01:16,063.063 INFO    ] 200
[2026-06-05 17:01:16,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:16,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:01:16,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:01:16,162.162 INFO    ] No camera update needed
[2026-06-05 17:01:16,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:01:16,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:01:16,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:01:16,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:01:18,217.217 INFO    ] ================================================
[2026-06-05 17:01:18,232.232 INFO    ] Launching Daemon at Fri Jun  5 17:01:18 IST 2026
[2026-06-05 17:01:18,243.243 INFO    ] ================================================
[2026-06-05 17:01:18,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:01:18
[2026-06-05 17:01:19,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:01:19,878.878 INFO    ] Initializing speech engine...
[2026-06-05 17:01:19,884.884 INFO    ] 2026-06-05 17:01:19
[2026-06-05 17:01:20,160.160 INFO    ] 2026-06-05 17:01:20
[2026-06-05 17:01:20,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:01:20,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:01:20,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:01:20,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:01:20,662.662 INFO    ] time= 05/06/2026 17:01:20
[2026-06-05 17:01:20,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:01:20,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:01:20,872.872 INFO    ] No existing commands found in stream
[2026-06-05 17:01:25,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:01:25,900.900 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 17:01:26,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:01:26,328.328 INFO    ] Checking for system updates...
[2026-06-05 17:01:26,366.366 INFO    ] 200
[2026-06-05 17:01:26,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:26,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:01:26,425.425 INFO    ] No update needed
[2026-06-05 17:01:26,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 17:01:26,467.467 INFO    ] 200
[2026-06-05 17:01:26,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:26,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:01:26,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:01:26,566.566 INFO    ] No camera update needed
[2026-06-05 17:01:26,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:01:26,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:01:26,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:01:26,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:01:28,624.624 INFO    ] ================================================
[2026-06-05 17:01:28,640.640 INFO    ] Launching Daemon at Fri Jun  5 17:01:28 IST 2026
[2026-06-05 17:01:28,651.651 INFO    ] ================================================
[2026-06-05 17:01:29,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:01:29
[2026-06-05 17:01:29,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:01:30,295.295 INFO    ] Initializing speech engine...
[2026-06-05 17:01:30,301.301 INFO    ] 2026-06-05 17:01:30
[2026-06-05 17:01:30,611.611 INFO    ] 2026-06-05 17:01:30
[2026-06-05 17:01:30,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:01:30,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:01:31,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:01:31,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:01:31,309.309 INFO    ] time= 05/06/2026 17:01:31
[2026-06-05 17:01:31,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:01:31,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:01:31,560.560 INFO    ] No existing commands found in stream
[2026-06-05 17:01:36,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:01:36,579.579 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 17:01:37,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:01:37,711.711 INFO    ] Checking for system updates...
[2026-06-05 17:01:37,749.749 INFO    ] 200
[2026-06-05 17:01:37,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:37,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:01:37,808.808 INFO    ] No update needed
[2026-06-05 17:01:37,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 17:01:37,845.845 INFO    ] 200
[2026-06-05 17:01:37,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:37,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:01:37,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:01:37,945.945 INFO    ] No camera update needed
[2026-06-05 17:01:37,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:01:37,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:01:37,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:01:37,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:01:40,001.001 INFO    ] ================================================
[2026-06-05 17:01:40,016.016 INFO    ] Launching Daemon at Fri Jun  5 17:01:40 IST 2026
[2026-06-05 17:01:40,026.026 INFO    ] ================================================
[2026-06-05 17:01:40,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:01:40
[2026-06-05 17:01:41,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:01:41,491.491 INFO    ] Initializing speech engine...
[2026-06-05 17:01:41,497.497 INFO    ] 2026-06-05 17:01:41
[2026-06-05 17:01:41,757.757 INFO    ] 2026-06-05 17:01:41
[2026-06-05 17:01:41,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:01:42,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:01:42,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:01:42,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:01:42,216.216 INFO    ] time= 05/06/2026 17:01:42
[2026-06-05 17:01:42,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:01:42,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:01:42,435.435 INFO    ] No existing commands found in stream
[2026-06-05 17:01:47,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:01:47,465.465 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 17:01:51,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:01:51,054.054 INFO    ] Checking for system updates...
[2026-06-05 17:01:51,094.094 INFO    ] 200
[2026-06-05 17:01:51,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:51,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:01:51,152.152 INFO    ] No update needed
[2026-06-05 17:01:51,154.154 INFO    ] Checking for camera pi updates...
[2026-06-05 17:01:51,189.189 INFO    ] 200
[2026-06-05 17:01:51,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:01:51,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:01:51,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:01:51,279.279 INFO    ] No camera update needed
[2026-06-05 17:01:51,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:01:51,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:01:51,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:01:51,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:01:53,335.335 INFO    ] ================================================
[2026-06-05 17:01:53,351.351 INFO    ] Launching Daemon at Fri Jun  5 17:01:53 IST 2026
[2026-06-05 17:01:53,361.361 INFO    ] ================================================
[2026-06-05 17:01:53,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:01:53
[2026-06-05 17:01:54,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:01:54,775.775 INFO    ] Initializing speech engine...
[2026-06-05 17:01:54,795.795 INFO    ] 2026-06-05 17:01:54
[2026-06-05 17:01:55,045.045 INFO    ] 2026-06-05 17:01:55
[2026-06-05 17:01:55,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:01:55,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:01:55,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:01:55,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:01:55,422.422 INFO    ] time= 05/06/2026 17:01:55
[2026-06-05 17:01:55,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:01:55,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:01:55,596.596 INFO    ] No existing commands found in stream
[2026-06-05 17:02:00,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:02:00,629.629 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 17:02:01,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:02:01,721.721 INFO    ] Checking for system updates...
[2026-06-05 17:02:01,778.778 INFO    ] 200
[2026-06-05 17:02:01,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:01,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:02:01,914.914 INFO    ] No update needed
[2026-06-05 17:02:01,919.919 INFO    ] Checking for camera pi updates...
[2026-06-05 17:02:01,970.970 INFO    ] 200
[2026-06-05 17:02:01,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:02,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:02:02,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:02:02,050.050 INFO    ] No camera update needed
[2026-06-05 17:02:02,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:02:02,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:02:02,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:02:02,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:02:04,110.110 INFO    ] ================================================
[2026-06-05 17:02:04,125.125 INFO    ] Launching Daemon at Fri Jun  5 17:02:04 IST 2026
[2026-06-05 17:02:04,136.136 INFO    ] ================================================
[2026-06-05 17:02:04,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:02:04
[2026-06-05 17:02:05,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:02:05,742.742 INFO    ] Initializing speech engine...
[2026-06-05 17:02:05,753.753 INFO    ] 2026-06-05 17:02:05
[2026-06-05 17:02:06,067.067 INFO    ] 2026-06-05 17:02:06
[2026-06-05 17:02:06,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:02:06,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:02:06,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:02:06,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:02:06,627.627 INFO    ] time= 05/06/2026 17:02:06
[2026-06-05 17:02:06,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:02:06,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:02:06,782.782 INFO    ] No existing commands found in stream
[2026-06-05 17:02:11,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:02:11,807.807 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 17:02:12,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:02:12,307.307 INFO    ] Checking for system updates...
[2026-06-05 17:02:12,344.344 INFO    ] 200
[2026-06-05 17:02:12,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:12,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:02:12,405.405 INFO    ] No update needed
[2026-06-05 17:02:12,408.408 INFO    ] Checking for camera pi updates...
[2026-06-05 17:02:12,446.446 INFO    ] 200
[2026-06-05 17:02:12,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:12,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:02:12,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:02:12,542.542 INFO    ] No camera update needed
[2026-06-05 17:02:12,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:02:12,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:02:12,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:02:12,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:02:14,599.599 INFO    ] ================================================
[2026-06-05 17:02:14,614.614 INFO    ] Launching Daemon at Fri Jun  5 17:02:14 IST 2026
[2026-06-05 17:02:14,624.624 INFO    ] ================================================
[2026-06-05 17:02:15,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:02:15
[2026-06-05 17:02:15,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:02:16,025.025 INFO    ] Initializing speech engine...
[2026-06-05 17:02:16,038.038 INFO    ] 2026-06-05 17:02:16
[2026-06-05 17:02:16,301.301 INFO    ] 2026-06-05 17:02:16
[2026-06-05 17:02:16,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:02:16,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:02:16,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:02:16,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:02:16,668.668 INFO    ] time= 05/06/2026 17:02:16
[2026-06-05 17:02:16,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:02:16,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:02:16,847.847 INFO    ] No existing commands found in stream
[2026-06-05 17:02:21,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:02:21,876.876 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 17:02:22,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:02:22,793.793 INFO    ] Checking for system updates...
[2026-06-05 17:02:22,830.830 INFO    ] 200
[2026-06-05 17:02:22,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:22,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:02:22,889.889 INFO    ] No update needed
[2026-06-05 17:02:22,891.891 INFO    ] Checking for camera pi updates...
[2026-06-05 17:02:22,926.926 INFO    ] 200
[2026-06-05 17:02:22,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:22,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:02:23,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:02:23,021.021 INFO    ] No camera update needed
[2026-06-05 17:02:23,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:02:23,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:02:23,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:02:23,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:02:25,079.079 INFO    ] ================================================
[2026-06-05 17:02:25,093.093 INFO    ] Launching Daemon at Fri Jun  5 17:02:25 IST 2026
[2026-06-05 17:02:25,104.104 INFO    ] ================================================
[2026-06-05 17:02:25,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:02:25
[2026-06-05 17:02:26,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:02:26,730.730 INFO    ] Initializing speech engine...
[2026-06-05 17:02:26,744.744 INFO    ] 2026-06-05 17:02:26
[2026-06-05 17:02:27,022.022 INFO    ] 2026-06-05 17:02:27
[2026-06-05 17:02:27,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:02:27,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:02:27,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:02:27,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:02:27,517.517 INFO    ] time= 05/06/2026 17:02:27
[2026-06-05 17:02:27,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:02:27,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:02:27,715.715 INFO    ] No existing commands found in stream
[2026-06-05 17:02:32,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:02:32,741.741 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 17:02:37,126.126 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:02:37,129.129 INFO    ] Checking for system updates...
[2026-06-05 17:02:37,166.166 INFO    ] 200
[2026-06-05 17:02:37,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:37,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:02:37,234.234 INFO    ] No update needed
[2026-06-05 17:02:37,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 17:02:37,270.270 INFO    ] 200
[2026-06-05 17:02:37,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:37,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:02:37,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:02:37,359.359 INFO    ] No camera update needed
[2026-06-05 17:02:37,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:02:37,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:02:37,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:02:37,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:02:39,416.416 INFO    ] ================================================
[2026-06-05 17:02:39,432.432 INFO    ] Launching Daemon at Fri Jun  5 17:02:39 IST 2026
[2026-06-05 17:02:39,444.444 INFO    ] ================================================
[2026-06-05 17:02:40,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:02:40
[2026-06-05 17:02:40,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:02:41,060.060 INFO    ] Initializing speech engine...
[2026-06-05 17:02:41,068.068 INFO    ] 2026-06-05 17:02:41
[2026-06-05 17:02:41,342.342 INFO    ] 2026-06-05 17:02:41
[2026-06-05 17:02:41,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:02:41,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:02:41,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:02:41,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:02:41,722.722 INFO    ] time= 05/06/2026 17:02:41
[2026-06-05 17:02:41,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:02:41,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:02:41,848.848 INFO    ] No existing commands found in stream
[2026-06-05 17:02:46,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:02:46,866.866 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 17:02:47,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:02:47,877.877 INFO    ] Checking for system updates...
[2026-06-05 17:02:47,915.915 INFO    ] 200
[2026-06-05 17:02:47,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:47,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:02:47,979.979 INFO    ] No update needed
[2026-06-05 17:02:47,981.981 INFO    ] Checking for camera pi updates...
[2026-06-05 17:02:48,015.015 INFO    ] 200
[2026-06-05 17:02:48,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:48,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:02:48,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:02:48,103.103 INFO    ] No camera update needed
[2026-06-05 17:02:48,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:02:48,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:02:48,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:02:48,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:02:50,160.160 INFO    ] ================================================
[2026-06-05 17:02:50,177.177 INFO    ] Launching Daemon at Fri Jun  5 17:02:50 IST 2026
[2026-06-05 17:02:50,188.188 INFO    ] ================================================
[2026-06-05 17:02:50,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:02:50
[2026-06-05 17:02:51,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:02:51,635.635 INFO    ] Initializing speech engine...
[2026-06-05 17:02:51,644.644 INFO    ] 2026-06-05 17:02:51
[2026-06-05 17:02:51,892.892 INFO    ] 2026-06-05 17:02:51
[2026-06-05 17:02:51,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:02:52,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:02:52,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:02:52,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:02:52,455.455 INFO    ] time= 05/06/2026 17:02:52
[2026-06-05 17:02:52,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:02:52,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:02:52,868.868 INFO    ] No existing commands found in stream
[2026-06-05 17:02:57,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:02:57,903.903 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 17:02:58,898.898 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:02:58,901.901 INFO    ] Checking for system updates...
[2026-06-05 17:02:58,943.943 INFO    ] 200
[2026-06-05 17:02:58,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:59,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:02:59,013.013 INFO    ] No update needed
[2026-06-05 17:02:59,016.016 INFO    ] Checking for camera pi updates...
[2026-06-05 17:02:59,052.052 INFO    ] 200
[2026-06-05 17:02:59,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:02:59,100.100 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:02:59,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:02:59,149.149 INFO    ] No camera update needed
[2026-06-05 17:02:59,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:02:59,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:02:59,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:02:59,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:03:01,206.206 INFO    ] ================================================
[2026-06-05 17:03:01,222.222 INFO    ] Launching Daemon at Fri Jun  5 17:03:01 IST 2026
[2026-06-05 17:03:01,234.234 INFO    ] ================================================
[2026-06-05 17:03:01,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:03:01
[2026-06-05 17:03:02,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:03:02,986.986 INFO    ] Initializing speech engine...
[2026-06-05 17:03:02,998.998 INFO    ] 2026-06-05 17:03:02
[2026-06-05 17:03:03,263.263 INFO    ] 2026-06-05 17:03:03
[2026-06-05 17:03:03,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:03:03,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:03:03,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:03:03,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:03:03,700.700 INFO    ] time= 05/06/2026 17:03:03
[2026-06-05 17:03:03,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:03:03,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:03:03,935.935 INFO    ] No existing commands found in stream
[2026-06-05 17:03:08,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:03:08,960.960 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 17:03:10,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:03:10,181.181 INFO    ] Checking for system updates...
[2026-06-05 17:03:10,220.220 INFO    ] 200
[2026-06-05 17:03:10,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:10,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:03:10,284.284 INFO    ] No update needed
[2026-06-05 17:03:10,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 17:03:10,326.326 INFO    ] 200
[2026-06-05 17:03:10,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:10,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:03:10,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:03:10,418.418 INFO    ] No camera update needed
[2026-06-05 17:03:10,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:03:10,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:03:10,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:03:10,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:03:12,474.474 INFO    ] ================================================
[2026-06-05 17:03:12,489.489 INFO    ] Launching Daemon at Fri Jun  5 17:03:12 IST 2026
[2026-06-05 17:03:12,501.501 INFO    ] ================================================
[2026-06-05 17:03:13,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:03:13
[2026-06-05 17:03:13,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:03:14,096.096 INFO    ] Initializing speech engine...
[2026-06-05 17:03:14,108.108 INFO    ] 2026-06-05 17:03:14
[2026-06-05 17:03:14,384.384 INFO    ] 2026-06-05 17:03:14
[2026-06-05 17:03:14,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:03:14,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:03:14,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:03:14,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:03:14,853.853 INFO    ] time= 05/06/2026 17:03:14
[2026-06-05 17:03:14,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:03:14,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:03:15,081.081 INFO    ] No existing commands found in stream
[2026-06-05 17:03:20,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:03:20,108.108 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 17:03:23,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:03:23,170.170 INFO    ] Checking for system updates...
[2026-06-05 17:03:23,212.212 INFO    ] 200
[2026-06-05 17:03:23,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:23,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:03:23,272.272 INFO    ] No update needed
[2026-06-05 17:03:23,275.275 INFO    ] Checking for camera pi updates...
[2026-06-05 17:03:23,311.311 INFO    ] 200
[2026-06-05 17:03:23,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:23,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:03:23,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:03:23,400.400 INFO    ] No camera update needed
[2026-06-05 17:03:23,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:03:23,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:03:23,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:03:23,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:03:25,460.460 INFO    ] ================================================
[2026-06-05 17:03:25,475.475 INFO    ] Launching Daemon at Fri Jun  5 17:03:25 IST 2026
[2026-06-05 17:03:25,486.486 INFO    ] ================================================
[2026-06-05 17:03:26,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:03:26
[2026-06-05 17:03:26,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:03:27,058.058 INFO    ] Initializing speech engine...
[2026-06-05 17:03:27,066.066 INFO    ] 2026-06-05 17:03:27
[2026-06-05 17:03:27,331.331 INFO    ] 2026-06-05 17:03:27
[2026-06-05 17:03:27,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:03:27,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:03:27,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:03:27,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:03:27,788.788 INFO    ] time= 05/06/2026 17:03:27
[2026-06-05 17:03:27,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:03:27,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:03:28,015.015 INFO    ] No existing commands found in stream
[2026-06-05 17:03:33,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:03:33,046.046 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 17:03:35,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:03:35,475.475 INFO    ] Checking for system updates...
[2026-06-05 17:03:35,512.512 INFO    ] 200
[2026-06-05 17:03:35,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:35,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:03:35,580.580 INFO    ] No update needed
[2026-06-05 17:03:35,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 17:03:35,617.617 INFO    ] 200
[2026-06-05 17:03:35,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:35,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:03:35,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:03:35,816.816 INFO    ] No camera update needed
[2026-06-05 17:03:35,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:03:35,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:03:35,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:03:35,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:03:37,874.874 INFO    ] ================================================
[2026-06-05 17:03:37,890.890 INFO    ] Launching Daemon at Fri Jun  5 17:03:37 IST 2026
[2026-06-05 17:03:37,902.902 INFO    ] ================================================
[2026-06-05 17:03:38,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:03:38
[2026-06-05 17:03:39,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:03:39,382.382 INFO    ] Initializing speech engine...
[2026-06-05 17:03:39,392.392 INFO    ] 2026-06-05 17:03:39
[2026-06-05 17:03:39,642.642 INFO    ] 2026-06-05 17:03:39
[2026-06-05 17:03:39,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:03:39,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:03:39,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:03:40,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:03:40,077.077 INFO    ] time= 05/06/2026 17:03:40
[2026-06-05 17:03:40,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:03:40,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:03:40,259.259 INFO    ] No existing commands found in stream
[2026-06-05 17:03:45,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:03:45,274.274 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 17:03:46,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:03:46,031.031 INFO    ] Checking for system updates...
[2026-06-05 17:03:46,067.067 INFO    ] 200
[2026-06-05 17:03:46,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:46,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:03:46,133.133 INFO    ] No update needed
[2026-06-05 17:03:46,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 17:03:46,174.174 INFO    ] 200
[2026-06-05 17:03:46,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:46,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:03:46,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:03:46,260.260 INFO    ] No camera update needed
[2026-06-05 17:03:46,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:03:46,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:03:46,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:03:46,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:03:48,318.318 INFO    ] ================================================
[2026-06-05 17:03:48,334.334 INFO    ] Launching Daemon at Fri Jun  5 17:03:48 IST 2026
[2026-06-05 17:03:48,345.345 INFO    ] ================================================
[2026-06-05 17:03:49,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:03:49
[2026-06-05 17:03:49,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:03:49,995.995 INFO    ] Initializing speech engine...
[2026-06-05 17:03:50,007.007 INFO    ] 2026-06-05 17:03:50
[2026-06-05 17:03:50,320.320 INFO    ] 2026-06-05 17:03:50
[2026-06-05 17:03:50,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:03:50,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:03:50,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:03:50,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:03:50,827.827 INFO    ] time= 05/06/2026 17:03:50
[2026-06-05 17:03:50,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:03:50,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:03:51,024.024 INFO    ] No existing commands found in stream
[2026-06-05 17:03:56,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:03:56,064.064 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 17:03:59,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:03:59,435.435 INFO    ] Checking for system updates...
[2026-06-05 17:03:59,472.472 INFO    ] 200
[2026-06-05 17:03:59,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:59,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:03:59,534.534 INFO    ] No update needed
[2026-06-05 17:03:59,537.537 INFO    ] Checking for camera pi updates...
[2026-06-05 17:03:59,572.572 INFO    ] 200
[2026-06-05 17:03:59,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:03:59,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:03:59,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:03:59,663.663 INFO    ] No camera update needed
[2026-06-05 17:03:59,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:03:59,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:03:59,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:03:59,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:04:01,735.735 INFO    ] ================================================
[2026-06-05 17:04:01,768.768 INFO    ] Launching Daemon at Fri Jun  5 17:04:01 IST 2026
[2026-06-05 17:04:01,784.784 INFO    ] ================================================
[2026-06-05 17:04:02,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:04:02
[2026-06-05 17:04:03,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:04:03,339.339 INFO    ] Initializing speech engine...
[2026-06-05 17:04:03,362.362 INFO    ] 2026-06-05 17:04:03
[2026-06-05 17:04:03,624.624 INFO    ] 2026-06-05 17:04:03
[2026-06-05 17:04:03,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:04:03,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:04:03,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:04:04,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:04:04,027.027 INFO    ] time= 05/06/2026 17:04:04
[2026-06-05 17:04:04,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:04:04,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:04:04,215.215 INFO    ] No existing commands found in stream
[2026-06-05 17:04:09,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:04:09,243.243 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 17:04:10,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:04:10,857.857 INFO    ] Checking for system updates...
[2026-06-05 17:04:10,894.894 INFO    ] 200
[2026-06-05 17:04:10,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:04:10,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:04:10,961.961 INFO    ] No update needed
[2026-06-05 17:04:10,963.963 INFO    ] Checking for camera pi updates...
[2026-06-05 17:04:11,002.002 INFO    ] 200
[2026-06-05 17:04:11,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:04:11,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:04:11,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:04:11,090.090 INFO    ] No camera update needed
[2026-06-05 17:04:11,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:04:11,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:04:11,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:04:11,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:04:13,145.145 INFO    ] ================================================
[2026-06-05 17:04:13,161.161 INFO    ] Launching Daemon at Fri Jun  5 17:04:13 IST 2026
[2026-06-05 17:04:13,172.172 INFO    ] ================================================
[2026-06-05 17:04:13,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:04:13
[2026-06-05 17:04:14,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:04:14,630.630 INFO    ] Initializing speech engine...
[2026-06-05 17:04:14,640.640 INFO    ] 2026-06-05 17:04:14
[2026-06-05 17:04:14,901.901 INFO    ] 2026-06-05 17:04:14
[2026-06-05 17:04:14,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:04:15,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:04:15,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:04:15,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:04:15,360.360 INFO    ] time= 05/06/2026 17:04:15
[2026-06-05 17:04:15,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:04:15,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:04:15,579.579 INFO    ] No existing commands found in stream
[2026-06-05 17:04:20,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:04:20,612.612 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 17:04:25,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:04:25,254.254 INFO    ] Checking for system updates...
[2026-06-05 17:04:25,292.292 INFO    ] 200
[2026-06-05 17:04:25,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:04:25,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:04:25,352.352 INFO    ] No update needed
[2026-06-05 17:04:25,354.354 INFO    ] Checking for camera pi updates...
[2026-06-05 17:04:25,388.388 INFO    ] 200
[2026-06-05 17:04:25,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:04:25,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:04:25,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:04:25,462.462 INFO    ] No camera update needed
[2026-06-05 17:04:25,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:04:25,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:04:25,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:04:25,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:04:27,518.518 INFO    ] ================================================
[2026-06-05 17:04:27,534.534 INFO    ] Launching Daemon at Fri Jun  5 17:04:27 IST 2026
[2026-06-05 17:04:27,545.545 INFO    ] ================================================
[2026-06-05 17:04:28,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:04:28
[2026-06-05 17:04:28,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:04:29,021.021 INFO    ] Initializing speech engine...
[2026-06-05 17:04:29,028.028 INFO    ] 2026-06-05 17:04:29
[2026-06-05 17:04:29,289.289 INFO    ] 2026-06-05 17:04:29
[2026-06-05 17:04:29,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:04:29,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:04:29,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:04:29,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:04:29,830.830 INFO    ] time= 05/06/2026 17:04:29
[2026-06-05 17:04:29,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:04:29,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:04:29,974.974 INFO    ] No existing commands found in stream
[2026-06-05 17:04:34,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:04:34,998.998 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 17:04:37,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:04:37,614.614 INFO    ] Checking for system updates...
[2026-06-05 17:04:37,651.651 INFO    ] 200
[2026-06-05 17:04:37,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:04:37,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:04:37,710.710 INFO    ] No update needed
[2026-06-05 17:04:37,713.713 INFO    ] Checking for camera pi updates...
[2026-06-05 17:04:37,747.747 INFO    ] 200
[2026-06-05 17:04:37,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:04:37,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:04:37,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:04:37,834.834 INFO    ] No camera update needed
[2026-06-05 17:04:37,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:04:37,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:04:37,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:04:37,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:04:39,891.891 INFO    ] ================================================
[2026-06-05 17:04:39,907.907 INFO    ] Launching Daemon at Fri Jun  5 17:04:39 IST 2026
[2026-06-05 17:04:39,918.918 INFO    ] ================================================
[2026-06-05 17:04:40,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:04:40
[2026-06-05 17:04:41,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:04:41,383.383 INFO    ] Initializing speech engine...
[2026-06-05 17:04:41,396.396 INFO    ] 2026-06-05 17:04:41
[2026-06-05 17:04:41,664.664 INFO    ] 2026-06-05 17:04:41
[2026-06-05 17:04:41,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:04:41,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:04:41,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:04:42,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:04:42,194.194 INFO    ] time= 05/06/2026 17:04:42
[2026-06-05 17:04:42,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:04:42,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:04:42,351.351 INFO    ] No existing commands found in stream
[2026-06-05 17:04:47,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:04:47,377.377 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 17:04:48,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:04:48,475.475 INFO    ] Checking for system updates...
[2026-06-05 17:04:48,519.519 INFO    ] 200
[2026-06-05 17:04:48,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:04:48,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:04:48,592.592 INFO    ] No update needed
[2026-06-05 17:04:48,594.594 INFO    ] Checking for camera pi updates...
[2026-06-05 17:04:48,633.633 INFO    ] 200
[2026-06-05 17:04:48,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:04:48,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:04:48,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:04:48,733.733 INFO    ] No camera update needed
[2026-06-05 17:04:48,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:04:48,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:04:48,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:04:48,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:04:50,797.797 INFO    ] ================================================
[2026-06-05 17:04:50,813.813 INFO    ] Launching Daemon at Fri Jun  5 17:04:50 IST 2026
[2026-06-05 17:04:50,824.824 INFO    ] ================================================
[2026-06-05 17:04:51,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:04:51
[2026-06-05 17:04:52,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:04:52,322.322 INFO    ] Initializing speech engine...
[2026-06-05 17:04:52,345.345 INFO    ] 2026-06-05 17:04:52
[2026-06-05 17:04:52,615.615 INFO    ] 2026-06-05 17:04:52
[2026-06-05 17:04:52,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:04:55,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:04:55,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:04:55,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:04:55,342.342 INFO    ] time= 05/06/2026 17:04:55
[2026-06-05 17:04:55,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:04:55,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:04:55,475.475 INFO    ] No existing commands found in stream
[2026-06-05 17:05:00,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:05:00,508.508 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 17:05:04,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:05:04,374.374 INFO    ] Checking for system updates...
[2026-06-05 17:05:04,415.415 INFO    ] 200
[2026-06-05 17:05:04,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:04,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:05:04,474.474 INFO    ] No update needed
[2026-06-05 17:05:04,476.476 INFO    ] Checking for camera pi updates...
[2026-06-05 17:05:04,511.511 INFO    ] 200
[2026-06-05 17:05:04,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:04,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:05:04,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:05:04,600.600 INFO    ] No camera update needed
[2026-06-05 17:05:04,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:05:04,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:05:04,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:05:04,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:05:06,659.659 INFO    ] ================================================
[2026-06-05 17:05:06,677.677 INFO    ] Launching Daemon at Fri Jun  5 17:05:06 IST 2026
[2026-06-05 17:05:06,688.688 INFO    ] ================================================
[2026-06-05 17:05:07,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:05:07
[2026-06-05 17:05:07,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:05:08,126.126 INFO    ] Initializing speech engine...
[2026-06-05 17:05:08,133.133 INFO    ] 2026-06-05 17:05:08
[2026-06-05 17:05:08,430.430 INFO    ] 2026-06-05 17:05:08
[2026-06-05 17:05:08,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:05:08,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:05:08,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:05:08,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:05:08,813.813 INFO    ] time= 05/06/2026 17:05:08
[2026-06-05 17:05:08,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:05:08,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:05:08,938.938 INFO    ] No existing commands found in stream
[2026-06-05 17:05:13,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:05:13,954.954 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 17:05:16,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:05:16,092.092 INFO    ] Checking for system updates...
[2026-06-05 17:05:16,127.127 INFO    ] 200
[2026-06-05 17:05:16,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:16,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:05:16,189.189 INFO    ] No update needed
[2026-06-05 17:05:16,196.196 INFO    ] Checking for camera pi updates...
[2026-06-05 17:05:16,235.235 INFO    ] 200
[2026-06-05 17:05:16,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:16,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:05:16,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:05:16,330.330 INFO    ] No camera update needed
[2026-06-05 17:05:16,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:05:16,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:05:16,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:05:16,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:05:18,385.385 INFO    ] ================================================
[2026-06-05 17:05:18,400.400 INFO    ] Launching Daemon at Fri Jun  5 17:05:18 IST 2026
[2026-06-05 17:05:18,411.411 INFO    ] ================================================
[2026-06-05 17:05:19,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:05:19
[2026-06-05 17:05:19,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:05:20,054.054 INFO    ] Initializing speech engine...
[2026-06-05 17:05:20,063.063 INFO    ] 2026-06-05 17:05:20
[2026-06-05 17:05:20,347.347 INFO    ] 2026-06-05 17:05:20
[2026-06-05 17:05:20,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:05:20,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:05:20,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:05:20,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:05:20,908.908 INFO    ] time= 05/06/2026 17:05:20
[2026-06-05 17:05:20,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:05:20,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:05:21,088.088 INFO    ] No existing commands found in stream
[2026-06-05 17:05:26,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:05:26,119.119 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 17:05:30,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:05:30,165.165 INFO    ] Checking for system updates...
[2026-06-05 17:05:30,206.206 INFO    ] 200
[2026-06-05 17:05:30,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:30,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:05:30,263.263 INFO    ] No update needed
[2026-06-05 17:05:30,265.265 INFO    ] Checking for camera pi updates...
[2026-06-05 17:05:30,299.299 INFO    ] 200
[2026-06-05 17:05:30,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:30,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:05:30,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:05:30,387.387 INFO    ] No camera update needed
[2026-06-05 17:05:30,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:05:30,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:05:30,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:05:30,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:05:32,443.443 INFO    ] ================================================
[2026-06-05 17:05:32,459.459 INFO    ] Launching Daemon at Fri Jun  5 17:05:32 IST 2026
[2026-06-05 17:05:32,470.470 INFO    ] ================================================
[2026-06-05 17:05:33,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:05:33
[2026-06-05 17:05:33,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:05:34,097.097 INFO    ] Initializing speech engine...
[2026-06-05 17:05:34,109.109 INFO    ] 2026-06-05 17:05:34
[2026-06-05 17:05:34,396.396 INFO    ] 2026-06-05 17:05:34
[2026-06-05 17:05:34,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:05:34,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:05:34,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:05:34,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:05:34,945.945 INFO    ] time= 05/06/2026 17:05:34
[2026-06-05 17:05:34,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:05:34,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:05:35,095.095 INFO    ] No existing commands found in stream
[2026-06-05 17:05:40,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:05:40,121.121 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 17:05:43,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:05:43,496.496 INFO    ] Checking for system updates...
[2026-06-05 17:05:43,535.535 INFO    ] 200
[2026-06-05 17:05:43,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:43,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:05:43,602.602 INFO    ] No update needed
[2026-06-05 17:05:43,605.605 INFO    ] Checking for camera pi updates...
[2026-06-05 17:05:43,640.640 INFO    ] 200
[2026-06-05 17:05:43,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:43,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:05:43,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:05:43,832.832 INFO    ] No camera update needed
[2026-06-05 17:05:43,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:05:43,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:05:43,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:05:43,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:05:45,890.890 INFO    ] ================================================
[2026-06-05 17:05:45,906.906 INFO    ] Launching Daemon at Fri Jun  5 17:05:45 IST 2026
[2026-06-05 17:05:45,917.917 INFO    ] ================================================
[2026-06-05 17:05:46,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:05:46
[2026-06-05 17:05:47,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:05:47,391.391 INFO    ] Initializing speech engine...
[2026-06-05 17:05:47,400.400 INFO    ] 2026-06-05 17:05:47
[2026-06-05 17:05:47,662.662 INFO    ] 2026-06-05 17:05:47
[2026-06-05 17:05:47,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:05:47,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:05:47,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:05:48,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:05:48,115.115 INFO    ] time= 05/06/2026 17:05:48
[2026-06-05 17:05:48,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:05:48,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:05:48,343.343 INFO    ] No existing commands found in stream
[2026-06-05 17:05:53,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:05:53,368.368 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 17:05:57,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:05:57,167.167 INFO    ] Checking for system updates...
[2026-06-05 17:05:57,204.204 INFO    ] 200
[2026-06-05 17:05:57,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:57,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:05:57,266.266 INFO    ] No update needed
[2026-06-05 17:05:57,269.269 INFO    ] Checking for camera pi updates...
[2026-06-05 17:05:57,302.302 INFO    ] 200
[2026-06-05 17:05:57,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:05:57,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:05:57,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:05:57,400.400 INFO    ] No camera update needed
[2026-06-05 17:05:57,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:05:57,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:05:57,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:05:57,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:05:59,457.457 INFO    ] ================================================
[2026-06-05 17:05:59,471.471 INFO    ] Launching Daemon at Fri Jun  5 17:05:59 IST 2026
[2026-06-05 17:05:59,482.482 INFO    ] ================================================
[2026-06-05 17:06:00,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:06:00
[2026-06-05 17:06:00,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:06:00,959.959 INFO    ] Initializing speech engine...
[2026-06-05 17:06:00,968.968 INFO    ] 2026-06-05 17:06:00
[2026-06-05 17:06:01,355.355 INFO    ] 2026-06-05 17:06:01
[2026-06-05 17:06:01,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:06:01,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:06:01,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:06:01,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:06:01,806.806 INFO    ] time= 05/06/2026 17:06:01
[2026-06-05 17:06:01,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:06:01,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:06:01,936.936 INFO    ] No existing commands found in stream
[2026-06-05 17:06:06,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:06:06,949.949 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 17:06:08,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:06:08,368.368 INFO    ] Checking for system updates...
[2026-06-05 17:06:08,404.404 INFO    ] 200
[2026-06-05 17:06:08,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:08,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:06:08,461.461 INFO    ] No update needed
[2026-06-05 17:06:08,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 17:06:08,500.500 INFO    ] 200
[2026-06-05 17:06:08,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:08,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:06:08,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:06:08,575.575 INFO    ] No camera update needed
[2026-06-05 17:06:08,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:06:08,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:06:08,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:06:08,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:06:10,631.631 INFO    ] ================================================
[2026-06-05 17:06:10,646.646 INFO    ] Launching Daemon at Fri Jun  5 17:06:10 IST 2026
[2026-06-05 17:06:10,657.657 INFO    ] ================================================
[2026-06-05 17:06:11,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:06:11
[2026-06-05 17:06:11,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:06:12,088.088 INFO    ] Initializing speech engine...
[2026-06-05 17:06:12,102.102 INFO    ] 2026-06-05 17:06:12
[2026-06-05 17:06:12,386.386 INFO    ] 2026-06-05 17:06:12
[2026-06-05 17:06:12,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:06:12,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:06:12,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:06:12,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:06:12,778.778 INFO    ] time= 05/06/2026 17:06:12
[2026-06-05 17:06:12,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:06:12,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:06:12,888.888 INFO    ] No existing commands found in stream
[2026-06-05 17:06:17,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:06:17,916.916 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 17:06:19,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:06:19,739.739 INFO    ] Checking for system updates...
[2026-06-05 17:06:19,775.775 INFO    ] 200
[2026-06-05 17:06:19,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:19,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:06:19,833.833 INFO    ] No update needed
[2026-06-05 17:06:19,836.836 INFO    ] Checking for camera pi updates...
[2026-06-05 17:06:19,870.870 INFO    ] 200
[2026-06-05 17:06:19,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:19,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:06:19,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:06:19,958.958 INFO    ] No camera update needed
[2026-06-05 17:06:19,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:06:19,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:06:19,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:06:19,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:06:22,015.015 INFO    ] ================================================
[2026-06-05 17:06:22,029.029 INFO    ] Launching Daemon at Fri Jun  5 17:06:22 IST 2026
[2026-06-05 17:06:22,040.040 INFO    ] ================================================
[2026-06-05 17:06:22,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:06:22
[2026-06-05 17:06:23,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:06:23,445.445 INFO    ] Initializing speech engine...
[2026-06-05 17:06:23,454.454 INFO    ] 2026-06-05 17:06:23
[2026-06-05 17:06:23,745.745 INFO    ] 2026-06-05 17:06:23
[2026-06-05 17:06:23,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:06:25,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:06:25,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:06:25,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:06:25,262.262 INFO    ] time= 05/06/2026 17:06:25
[2026-06-05 17:06:25,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:06:25,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:06:25,351.351 INFO    ] No existing commands found in stream
[2026-06-05 17:06:30,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:06:30,365.365 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 17:06:33,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:06:33,005.005 INFO    ] Checking for system updates...
[2026-06-05 17:06:33,041.041 INFO    ] 200
[2026-06-05 17:06:33,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:33,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:06:33,103.103 INFO    ] No update needed
[2026-06-05 17:06:33,105.105 INFO    ] Checking for camera pi updates...
[2026-06-05 17:06:33,142.142 INFO    ] 200
[2026-06-05 17:06:33,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:33,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:06:33,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:06:33,233.233 INFO    ] No camera update needed
[2026-06-05 17:06:33,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:06:33,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:06:33,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:06:33,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:06:35,287.287 INFO    ] ================================================
[2026-06-05 17:06:35,303.303 INFO    ] Launching Daemon at Fri Jun  5 17:06:35 IST 2026
[2026-06-05 17:06:35,314.314 INFO    ] ================================================
[2026-06-05 17:06:35,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:06:35
[2026-06-05 17:06:36,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:06:36,919.919 INFO    ] Initializing speech engine...
[2026-06-05 17:06:36,930.930 INFO    ] 2026-06-05 17:06:36
[2026-06-05 17:06:37,206.206 INFO    ] 2026-06-05 17:06:37
[2026-06-05 17:06:37,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:06:37,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:06:37,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:06:37,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:06:37,687.687 INFO    ] time= 05/06/2026 17:06:37
[2026-06-05 17:06:37,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:06:37,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:06:37,910.910 INFO    ] No existing commands found in stream
[2026-06-05 17:06:42,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:06:42,942.942 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 17:06:45,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:06:45,368.368 INFO    ] Checking for system updates...
[2026-06-05 17:06:45,407.407 INFO    ] 200
[2026-06-05 17:06:45,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:45,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:06:45,465.465 INFO    ] No update needed
[2026-06-05 17:06:45,468.468 INFO    ] Checking for camera pi updates...
[2026-06-05 17:06:45,502.502 INFO    ] 200
[2026-06-05 17:06:45,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:45,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:06:45,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:06:45,593.593 INFO    ] No camera update needed
[2026-06-05 17:06:45,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:06:45,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:06:45,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:06:45,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:06:47,649.649 INFO    ] ================================================
[2026-06-05 17:06:47,664.664 INFO    ] Launching Daemon at Fri Jun  5 17:06:47 IST 2026
[2026-06-05 17:06:47,675.675 INFO    ] ================================================
[2026-06-05 17:06:48,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:06:48
[2026-06-05 17:06:48,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:06:49,296.296 INFO    ] Initializing speech engine...
[2026-06-05 17:06:49,309.309 INFO    ] 2026-06-05 17:06:49
[2026-06-05 17:06:49,579.579 INFO    ] 2026-06-05 17:06:49
[2026-06-05 17:06:49,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:06:49,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:06:49,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:06:50,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:06:50,100.100 INFO    ] time= 05/06/2026 17:06:50
[2026-06-05 17:06:50,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:06:50,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:06:50,306.306 INFO    ] No existing commands found in stream
[2026-06-05 17:06:55,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:06:55,333.333 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 17:06:57,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:06:57,649.649 INFO    ] Checking for system updates...
[2026-06-05 17:06:57,687.687 INFO    ] 200
[2026-06-05 17:06:57,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:57,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:06:57,747.747 INFO    ] No update needed
[2026-06-05 17:06:57,750.750 INFO    ] Checking for camera pi updates...
[2026-06-05 17:06:57,784.784 INFO    ] 200
[2026-06-05 17:06:57,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:06:57,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:06:57,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:06:57,872.872 INFO    ] No camera update needed
[2026-06-05 17:06:57,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:06:57,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:06:57,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:06:57,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:06:59,931.931 INFO    ] ================================================
[2026-06-05 17:06:59,946.946 INFO    ] Launching Daemon at Fri Jun  5 17:06:59 IST 2026
[2026-06-05 17:06:59,957.957 INFO    ] ================================================
[2026-06-05 17:07:00,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:07:00
[2026-06-05 17:07:01,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:07:01,367.367 INFO    ] Initializing speech engine...
[2026-06-05 17:07:01,374.374 INFO    ] 2026-06-05 17:07:01
[2026-06-05 17:07:01,654.654 INFO    ] 2026-06-05 17:07:01
[2026-06-05 17:07:01,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:07:02,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:07:02,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:07:02,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:07:02,186.186 INFO    ] time= 05/06/2026 17:07:02
[2026-06-05 17:07:02,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:07:02,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:07:02,332.332 INFO    ] No existing commands found in stream
[2026-06-05 17:07:07,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:07:07,347.347 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 17:07:09,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:07:09,989.989 INFO    ] Checking for system updates...
[2026-06-05 17:07:10,029.029 INFO    ] 200
[2026-06-05 17:07:10,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:07:10,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:07:10,093.093 INFO    ] No update needed
[2026-06-05 17:07:10,096.096 INFO    ] Checking for camera pi updates...
[2026-06-05 17:07:10,134.134 INFO    ] 200
[2026-06-05 17:07:10,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:07:10,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:07:10,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:07:10,230.230 INFO    ] No camera update needed
[2026-06-05 17:07:10,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:07:10,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:07:10,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:07:10,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:07:12,290.290 INFO    ] ================================================
[2026-06-05 17:07:12,306.306 INFO    ] Launching Daemon at Fri Jun  5 17:07:12 IST 2026
[2026-06-05 17:07:12,317.317 INFO    ] ================================================
[2026-06-05 17:07:13,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:07:13
[2026-06-05 17:07:13,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:07:14,077.077 INFO    ] Initializing speech engine...
[2026-06-05 17:07:14,086.086 INFO    ] 2026-06-05 17:07:14
[2026-06-05 17:07:14,365.365 INFO    ] 2026-06-05 17:07:14
[2026-06-05 17:07:14,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:07:14,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:07:14,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:07:14,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:07:14,875.875 INFO    ] time= 05/06/2026 17:07:14
[2026-06-05 17:07:14,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:07:14,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:07:15,071.071 INFO    ] No existing commands found in stream
[2026-06-05 17:07:20,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:07:20,105.105 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 17:07:25,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:07:25,533.533 INFO    ] Checking for system updates...
[2026-06-05 17:07:25,571.571 INFO    ] 200
[2026-06-05 17:07:25,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:07:25,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:07:25,634.634 INFO    ] No update needed
[2026-06-05 17:07:25,637.637 INFO    ] Checking for camera pi updates...
[2026-06-05 17:07:25,670.670 INFO    ] 200
[2026-06-05 17:07:25,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:07:25,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:07:25,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:07:25,757.757 INFO    ] No camera update needed
[2026-06-05 17:07:25,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:07:25,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:07:25,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:07:25,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:07:27,815.815 INFO    ] ================================================
[2026-06-05 17:07:27,830.830 INFO    ] Launching Daemon at Fri Jun  5 17:07:27 IST 2026
[2026-06-05 17:07:27,842.842 INFO    ] ================================================
[2026-06-05 17:07:28,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:07:28
[2026-06-05 17:07:29,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:07:29,311.311 INFO    ] Initializing speech engine...
[2026-06-05 17:07:29,315.315 INFO    ] 2026-06-05 17:07:29
[2026-06-05 17:07:29,591.591 INFO    ] 2026-06-05 17:07:29
[2026-06-05 17:07:29,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:07:29,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:07:29,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:07:29,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:07:29,979.979 INFO    ] time= 05/06/2026 17:07:29
[2026-06-05 17:07:30,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:07:30,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:07:30,106.106 INFO    ] No existing commands found in stream
[2026-06-05 17:07:35,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:07:35,120.120 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 17:07:36,865.865 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:07:36,867.867 INFO    ] Checking for system updates...
[2026-06-05 17:07:36,904.904 INFO    ] 200
[2026-06-05 17:07:36,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:07:36,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:07:36,962.962 INFO    ] No update needed
[2026-06-05 17:07:36,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 17:07:37,003.003 INFO    ] 200
[2026-06-05 17:07:37,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:07:37,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:07:37,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:07:37,099.099 INFO    ] No camera update needed
[2026-06-05 17:07:37,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:07:37,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:07:37,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:07:37,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:07:39,156.156 INFO    ] ================================================
[2026-06-05 17:07:39,171.171 INFO    ] Launching Daemon at Fri Jun  5 17:07:39 IST 2026
[2026-06-05 17:07:39,182.182 INFO    ] ================================================
[2026-06-05 17:07:39,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:07:39
[2026-06-05 17:07:40,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:07:40,658.658 INFO    ] Initializing speech engine...
[2026-06-05 17:07:40,668.668 INFO    ] 2026-06-05 17:07:40
[2026-06-05 17:07:40,917.917 INFO    ] 2026-06-05 17:07:40
[2026-06-05 17:07:40,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:07:41,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:07:41,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:07:41,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:07:41,337.337 INFO    ] time= 05/06/2026 17:07:41
[2026-06-05 17:07:41,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:07:41,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:07:41,427.427 INFO    ] No existing commands found in stream
[2026-06-05 17:07:46,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:07:46,442.442 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 17:07:49,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:07:49,316.316 INFO    ] Checking for system updates...
[2026-06-05 17:07:49,352.352 INFO    ] 200
[2026-06-05 17:07:49,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:07:49,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:07:49,420.420 INFO    ] No update needed
[2026-06-05 17:07:49,422.422 INFO    ] Checking for camera pi updates...
[2026-06-05 17:07:49,456.456 INFO    ] 200
[2026-06-05 17:07:49,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:07:49,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:07:49,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:07:49,648.648 INFO    ] No camera update needed
[2026-06-05 17:07:49,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:07:49,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:07:49,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:07:49,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:07:51,707.707 INFO    ] ================================================
[2026-06-05 17:07:51,723.723 INFO    ] Launching Daemon at Fri Jun  5 17:07:51 IST 2026
[2026-06-05 17:07:51,734.734 INFO    ] ================================================
[2026-06-05 17:07:52,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:07:52
[2026-06-05 17:07:52,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:07:53,215.215 INFO    ] Initializing speech engine...
[2026-06-05 17:07:53,225.225 INFO    ] 2026-06-05 17:07:53
[2026-06-05 17:07:53,477.477 INFO    ] 2026-06-05 17:07:53
[2026-06-05 17:07:53,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:07:54,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:07:54,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:07:55,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:07:55,037.037 INFO    ] time= 05/06/2026 17:07:55
[2026-06-05 17:07:55,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:07:55,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:07:55,178.178 INFO    ] No existing commands found in stream
[2026-06-05 17:08:00,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:08:00,206.206 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 17:08:01,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:08:01,670.670 INFO    ] Checking for system updates...
[2026-06-05 17:08:01,723.723 INFO    ] 200
[2026-06-05 17:08:01,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:01,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:08:01,837.837 INFO    ] No update needed
[2026-06-05 17:08:01,841.841 INFO    ] Checking for camera pi updates...
[2026-06-05 17:08:01,889.889 INFO    ] 200
[2026-06-05 17:08:01,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:01,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:08:02,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:08:02,022.022 INFO    ] No camera update needed
[2026-06-05 17:08:02,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:08:02,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:08:02,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:08:02,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:08:04,089.089 INFO    ] ================================================
[2026-06-05 17:08:04,104.104 INFO    ] Launching Daemon at Fri Jun  5 17:08:04 IST 2026
[2026-06-05 17:08:04,115.115 INFO    ] ================================================
[2026-06-05 17:08:04,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:08:04
[2026-06-05 17:08:05,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:08:05,776.776 INFO    ] Initializing speech engine...
[2026-06-05 17:08:05,786.786 INFO    ] 2026-06-05 17:08:05
[2026-06-05 17:08:06,079.079 INFO    ] 2026-06-05 17:08:06
[2026-06-05 17:08:06,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:08:06,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:08:06,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:08:06,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:08:06,570.570 INFO    ] time= 05/06/2026 17:08:06
[2026-06-05 17:08:06,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:08:06,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:08:06,779.779 INFO    ] No existing commands found in stream
[2026-06-05 17:08:11,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:08:11,808.808 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 17:08:15,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:08:15,056.056 INFO    ] Checking for system updates...
[2026-06-05 17:08:15,095.095 INFO    ] 200
[2026-06-05 17:08:15,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:15,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:08:15,159.159 INFO    ] No update needed
[2026-06-05 17:08:15,161.161 INFO    ] Checking for camera pi updates...
[2026-06-05 17:08:15,195.195 INFO    ] 200
[2026-06-05 17:08:15,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:15,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:08:15,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:08:15,289.289 INFO    ] No camera update needed
[2026-06-05 17:08:15,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:08:15,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:08:15,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:08:15,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:08:17,346.346 INFO    ] ================================================
[2026-06-05 17:08:17,361.361 INFO    ] Launching Daemon at Fri Jun  5 17:08:17 IST 2026
[2026-06-05 17:08:17,372.372 INFO    ] ================================================
[2026-06-05 17:08:17,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:08:17
[2026-06-05 17:08:18,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:08:18,814.814 INFO    ] Initializing speech engine...
[2026-06-05 17:08:18,823.823 INFO    ] 2026-06-05 17:08:18
[2026-06-05 17:08:19,117.117 INFO    ] 2026-06-05 17:08:19
[2026-06-05 17:08:19,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:08:19,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:08:19,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:08:19,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:08:19,533.533 INFO    ] time= 05/06/2026 17:08:19
[2026-06-05 17:08:19,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:08:19,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:08:19,723.723 INFO    ] No existing commands found in stream
[2026-06-05 17:08:24,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:08:24,751.751 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 17:08:28,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:08:28,044.044 INFO    ] Checking for system updates...
[2026-06-05 17:08:28,080.080 INFO    ] 200
[2026-06-05 17:08:28,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:28,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:08:28,139.139 INFO    ] No update needed
[2026-06-05 17:08:28,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 17:08:28,176.176 INFO    ] 200
[2026-06-05 17:08:28,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:28,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:08:28,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:08:28,262.262 INFO    ] No camera update needed
[2026-06-05 17:08:28,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:08:28,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:08:28,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:08:28,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:08:30,318.318 INFO    ] ================================================
[2026-06-05 17:08:30,334.334 INFO    ] Launching Daemon at Fri Jun  5 17:08:30 IST 2026
[2026-06-05 17:08:30,346.346 INFO    ] ================================================
[2026-06-05 17:08:30,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:08:30
[2026-06-05 17:08:31,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:08:31,773.773 INFO    ] Initializing speech engine...
[2026-06-05 17:08:31,782.782 INFO    ] 2026-06-05 17:08:31
[2026-06-05 17:08:32,068.068 INFO    ] 2026-06-05 17:08:32
[2026-06-05 17:08:32,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:08:32,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:08:32,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:08:32,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:08:32,474.474 INFO    ] time= 05/06/2026 17:08:32
[2026-06-05 17:08:32,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:08:32,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:08:32,681.681 INFO    ] No existing commands found in stream
[2026-06-05 17:08:37,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:08:37,695.695 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 17:08:41,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:08:41,250.250 INFO    ] Checking for system updates...
[2026-06-05 17:08:41,286.286 INFO    ] 200
[2026-06-05 17:08:41,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:41,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:08:41,344.344 INFO    ] No update needed
[2026-06-05 17:08:41,346.346 INFO    ] Checking for camera pi updates...
[2026-06-05 17:08:41,384.384 INFO    ] 200
[2026-06-05 17:08:41,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:41,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:08:41,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:08:41,471.471 INFO    ] No camera update needed
[2026-06-05 17:08:41,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:08:41,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:08:41,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:08:41,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:08:43,527.527 INFO    ] ================================================
[2026-06-05 17:08:43,542.542 INFO    ] Launching Daemon at Fri Jun  5 17:08:43 IST 2026
[2026-06-05 17:08:43,553.553 INFO    ] ================================================
[2026-06-05 17:08:44,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:08:44
[2026-06-05 17:08:44,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:08:44,966.966 INFO    ] Initializing speech engine...
[2026-06-05 17:08:44,984.984 INFO    ] 2026-06-05 17:08:44
[2026-06-05 17:08:45,234.234 INFO    ] 2026-06-05 17:08:45
[2026-06-05 17:08:45,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:08:45,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:08:45,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:08:45,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:08:45,707.707 INFO    ] time= 05/06/2026 17:08:45
[2026-06-05 17:08:45,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:08:45,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:08:45,925.925 INFO    ] No existing commands found in stream
[2026-06-05 17:08:50,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:08:50,950.950 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 17:08:55,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:08:55,434.434 INFO    ] Checking for system updates...
[2026-06-05 17:08:55,474.474 INFO    ] 200
[2026-06-05 17:08:55,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:55,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:08:55,538.538 INFO    ] No update needed
[2026-06-05 17:08:55,541.541 INFO    ] Checking for camera pi updates...
[2026-06-05 17:08:55,578.578 INFO    ] 200
[2026-06-05 17:08:55,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:08:55,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:08:55,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:08:55,668.668 INFO    ] No camera update needed
[2026-06-05 17:08:55,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:08:55,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:08:55,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:08:55,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:08:57,726.726 INFO    ] ================================================
[2026-06-05 17:08:57,741.741 INFO    ] Launching Daemon at Fri Jun  5 17:08:57 IST 2026
[2026-06-05 17:08:57,753.753 INFO    ] ================================================
[2026-06-05 17:08:58,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:08:58
[2026-06-05 17:08:58,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:08:59,203.203 INFO    ] Initializing speech engine...
[2026-06-05 17:08:59,219.219 INFO    ] 2026-06-05 17:08:59
[2026-06-05 17:08:59,505.505 INFO    ] 2026-06-05 17:08:59
[2026-06-05 17:08:59,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:08:59,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:08:59,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:08:59,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:09:00,032.032 INFO    ] time= 05/06/2026 17:08:59
[2026-06-05 17:09:00,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:09:00,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:09:00,273.273 INFO    ] No existing commands found in stream
[2026-06-05 17:09:05,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:09:05,301.301 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 17:09:06,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:09:06,597.597 INFO    ] Checking for system updates...
[2026-06-05 17:09:06,633.633 INFO    ] 200
[2026-06-05 17:09:06,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:06,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:09:06,692.692 INFO    ] No update needed
[2026-06-05 17:09:06,694.694 INFO    ] Checking for camera pi updates...
[2026-06-05 17:09:06,728.728 INFO    ] 200
[2026-06-05 17:09:06,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:06,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:09:06,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:09:06,808.808 INFO    ] No camera update needed
[2026-06-05 17:09:06,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:09:06,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:09:06,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:09:06,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:09:08,866.866 INFO    ] ================================================
[2026-06-05 17:09:08,882.882 INFO    ] Launching Daemon at Fri Jun  5 17:09:08 IST 2026
[2026-06-05 17:09:08,893.893 INFO    ] ================================================
[2026-06-05 17:09:09,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:09:09
[2026-06-05 17:09:10,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:09:10,303.303 INFO    ] Initializing speech engine...
[2026-06-05 17:09:10,312.312 INFO    ] 2026-06-05 17:09:10
[2026-06-05 17:09:10,586.586 INFO    ] 2026-06-05 17:09:10
[2026-06-05 17:09:10,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:09:10,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:09:10,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:09:11,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:09:11,090.090 INFO    ] time= 05/06/2026 17:09:11
[2026-06-05 17:09:11,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:09:11,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:09:11,284.284 INFO    ] No existing commands found in stream
[2026-06-05 17:09:16,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:09:16,309.309 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 17:09:20,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:09:20,079.079 INFO    ] Checking for system updates...
[2026-06-05 17:09:20,116.116 INFO    ] 200
[2026-06-05 17:09:20,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:20,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:09:20,183.183 INFO    ] No update needed
[2026-06-05 17:09:20,186.186 INFO    ] Checking for camera pi updates...
[2026-06-05 17:09:20,222.222 INFO    ] 200
[2026-06-05 17:09:20,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:20,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:09:20,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:09:20,313.313 INFO    ] No camera update needed
[2026-06-05 17:09:20,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:09:20,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:09:20,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:09:20,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:09:22,377.377 INFO    ] ================================================
[2026-06-05 17:09:22,393.393 INFO    ] Launching Daemon at Fri Jun  5 17:09:22 IST 2026
[2026-06-05 17:09:22,404.404 INFO    ] ================================================
[2026-06-05 17:09:23,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:09:23
[2026-06-05 17:09:23,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:09:24,062.062 INFO    ] Initializing speech engine...
[2026-06-05 17:09:24,076.076 INFO    ] 2026-06-05 17:09:24
[2026-06-05 17:09:24,386.386 INFO    ] 2026-06-05 17:09:24
[2026-06-05 17:09:24,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:09:25,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:09:25,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:09:25,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:09:25,491.491 INFO    ] time= 05/06/2026 17:09:25
[2026-06-05 17:09:25,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:09:25,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:09:25,581.581 INFO    ] No existing commands found in stream
[2026-06-05 17:09:30,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:09:30,597.597 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 17:09:33,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:09:33,820.820 INFO    ] Checking for system updates...
[2026-06-05 17:09:33,856.856 INFO    ] 200
[2026-06-05 17:09:33,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:33,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:09:33,915.915 INFO    ] No update needed
[2026-06-05 17:09:33,917.917 INFO    ] Checking for camera pi updates...
[2026-06-05 17:09:33,951.951 INFO    ] 200
[2026-06-05 17:09:33,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:33,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:09:34,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:09:34,041.041 INFO    ] No camera update needed
[2026-06-05 17:09:34,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:09:34,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:09:34,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:09:34,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:09:36,098.098 INFO    ] ================================================
[2026-06-05 17:09:36,114.114 INFO    ] Launching Daemon at Fri Jun  5 17:09:36 IST 2026
[2026-06-05 17:09:36,125.125 INFO    ] ================================================
[2026-06-05 17:09:36,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:09:36
[2026-06-05 17:09:37,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:09:37,597.597 INFO    ] Initializing speech engine...
[2026-06-05 17:09:37,604.604 INFO    ] 2026-06-05 17:09:37
[2026-06-05 17:09:37,868.868 INFO    ] 2026-06-05 17:09:37
[2026-06-05 17:09:37,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:09:38,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:09:38,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:09:38,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:09:38,373.373 INFO    ] time= 05/06/2026 17:09:38
[2026-06-05 17:09:38,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:09:38,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:09:38,549.549 INFO    ] No existing commands found in stream
[2026-06-05 17:09:43,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:09:43,577.577 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 17:09:45,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:09:45,054.054 INFO    ] Checking for system updates...
[2026-06-05 17:09:45,095.095 INFO    ] 200
[2026-06-05 17:09:45,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:45,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:09:45,153.153 INFO    ] No update needed
[2026-06-05 17:09:45,155.155 INFO    ] Checking for camera pi updates...
[2026-06-05 17:09:45,189.189 INFO    ] 200
[2026-06-05 17:09:45,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:45,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:09:45,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:09:45,280.280 INFO    ] No camera update needed
[2026-06-05 17:09:45,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:09:45,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:09:45,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:09:45,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:09:47,338.338 INFO    ] ================================================
[2026-06-05 17:09:47,353.353 INFO    ] Launching Daemon at Fri Jun  5 17:09:47 IST 2026
[2026-06-05 17:09:47,364.364 INFO    ] ================================================
[2026-06-05 17:09:47,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:09:47
[2026-06-05 17:09:48,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:09:48,776.776 INFO    ] Initializing speech engine...
[2026-06-05 17:09:48,789.789 INFO    ] 2026-06-05 17:09:48
[2026-06-05 17:09:49,055.055 INFO    ] 2026-06-05 17:09:49
[2026-06-05 17:09:49,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:09:49,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:09:49,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:09:49,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:09:49,433.433 INFO    ] time= 05/06/2026 17:09:49
[2026-06-05 17:09:49,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:09:49,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:09:49,626.626 INFO    ] No existing commands found in stream
[2026-06-05 17:09:54,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:09:54,648.648 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 17:09:57,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:09:57,326.326 INFO    ] Checking for system updates...
[2026-06-05 17:09:57,361.361 INFO    ] 200
[2026-06-05 17:09:57,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:57,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:09:57,428.428 INFO    ] No update needed
[2026-06-05 17:09:57,431.431 INFO    ] Checking for camera pi updates...
[2026-06-05 17:09:57,464.464 INFO    ] 200
[2026-06-05 17:09:57,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:09:57,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:09:57,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:09:57,653.653 INFO    ] No camera update needed
[2026-06-05 17:09:57,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:09:57,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:09:57,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:09:57,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:09:59,708.708 INFO    ] ================================================
[2026-06-05 17:09:59,724.724 INFO    ] Launching Daemon at Fri Jun  5 17:09:59 IST 2026
[2026-06-05 17:09:59,735.735 INFO    ] ================================================
[2026-06-05 17:10:00,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:10:00
[2026-06-05 17:10:00,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:10:01,185.185 INFO    ] Initializing speech engine...
[2026-06-05 17:10:01,194.194 INFO    ] 2026-06-05 17:10:01
[2026-06-05 17:10:01,452.452 INFO    ] 2026-06-05 17:10:01
[2026-06-05 17:10:01,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:10:01,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:10:01,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:10:02,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:10:02,023.023 INFO    ] time= 05/06/2026 17:10:02
[2026-06-05 17:10:02,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:10:02,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:10:02,091.091 INFO    ] No existing commands found in stream
[2026-06-05 17:10:07,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:10:07,104.104 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 17:10:09,640.640 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:10:09,643.643 INFO    ] Checking for system updates...
[2026-06-05 17:10:09,678.678 INFO    ] 200
[2026-06-05 17:10:09,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:09,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:10:09,742.742 INFO    ] No update needed
[2026-06-05 17:10:09,744.744 INFO    ] Checking for camera pi updates...
[2026-06-05 17:10:09,778.778 INFO    ] 200
[2026-06-05 17:10:09,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:09,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:10:09,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:10:09,868.868 INFO    ] No camera update needed
[2026-06-05 17:10:09,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:10:09,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:10:09,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:10:09,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:10:11,924.924 INFO    ] ================================================
[2026-06-05 17:10:11,940.940 INFO    ] Launching Daemon at Fri Jun  5 17:10:11 IST 2026
[2026-06-05 17:10:11,951.951 INFO    ] ================================================
[2026-06-05 17:10:12,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:10:12
[2026-06-05 17:10:13,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:10:13,412.412 INFO    ] Initializing speech engine...
[2026-06-05 17:10:13,419.419 INFO    ] 2026-06-05 17:10:13
[2026-06-05 17:10:13,679.679 INFO    ] 2026-06-05 17:10:13
[2026-06-05 17:10:13,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:10:13,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:10:13,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:10:14,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:10:14,180.180 INFO    ] time= 05/06/2026 17:10:14
[2026-06-05 17:10:14,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:10:14,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:10:14,378.378 INFO    ] No existing commands found in stream
[2026-06-05 17:10:19,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:10:19,396.396 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 17:10:21,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:10:21,722.722 INFO    ] Checking for system updates...
[2026-06-05 17:10:21,762.762 INFO    ] 200
[2026-06-05 17:10:21,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:21,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:10:21,825.825 INFO    ] No update needed
[2026-06-05 17:10:21,828.828 INFO    ] Checking for camera pi updates...
[2026-06-05 17:10:21,862.862 INFO    ] 200
[2026-06-05 17:10:21,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:21,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:10:21,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:10:21,952.952 INFO    ] No camera update needed
[2026-06-05 17:10:21,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:10:21,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:10:21,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:10:21,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:10:24,007.007 INFO    ] ================================================
[2026-06-05 17:10:24,023.023 INFO    ] Launching Daemon at Fri Jun  5 17:10:24 IST 2026
[2026-06-05 17:10:24,035.035 INFO    ] ================================================
[2026-06-05 17:10:24,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:10:24
[2026-06-05 17:10:25,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:10:25,500.500 INFO    ] Initializing speech engine...
[2026-06-05 17:10:25,508.508 INFO    ] 2026-06-05 17:10:25
[2026-06-05 17:10:25,770.770 INFO    ] 2026-06-05 17:10:25
[2026-06-05 17:10:25,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:10:26,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:10:26,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:10:26,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:10:26,231.231 INFO    ] time= 05/06/2026 17:10:26
[2026-06-05 17:10:26,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:10:26,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:10:26,455.455 INFO    ] No existing commands found in stream
[2026-06-05 17:10:31,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:10:31,483.483 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 17:10:33,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:10:33,512.512 INFO    ] Checking for system updates...
[2026-06-05 17:10:33,548.548 INFO    ] 200
[2026-06-05 17:10:33,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:33,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:10:33,605.605 INFO    ] No update needed
[2026-06-05 17:10:33,608.608 INFO    ] Checking for camera pi updates...
[2026-06-05 17:10:33,642.642 INFO    ] 200
[2026-06-05 17:10:33,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:33,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:10:33,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:10:33,729.729 INFO    ] No camera update needed
[2026-06-05 17:10:33,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:10:33,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:10:33,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:10:33,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:10:35,785.785 INFO    ] ================================================
[2026-06-05 17:10:35,800.800 INFO    ] Launching Daemon at Fri Jun  5 17:10:35 IST 2026
[2026-06-05 17:10:35,812.812 INFO    ] ================================================
[2026-06-05 17:10:36,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:10:36
[2026-06-05 17:10:37,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:10:37,379.379 INFO    ] Initializing speech engine...
[2026-06-05 17:10:37,387.387 INFO    ] 2026-06-05 17:10:37
[2026-06-05 17:10:37,658.658 INFO    ] 2026-06-05 17:10:37
[2026-06-05 17:10:37,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:10:37,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:10:37,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:10:38,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:10:38,154.154 INFO    ] time= 05/06/2026 17:10:38
[2026-06-05 17:10:38,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:10:38,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:10:38,344.344 INFO    ] No existing commands found in stream
[2026-06-05 17:10:43,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:10:43,373.373 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 17:10:45,114.114 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:10:45,117.117 INFO    ] Checking for system updates...
[2026-06-05 17:10:45,158.158 INFO    ] 200
[2026-06-05 17:10:45,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:45,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:10:45,216.216 INFO    ] No update needed
[2026-06-05 17:10:45,218.218 INFO    ] Checking for camera pi updates...
[2026-06-05 17:10:45,252.252 INFO    ] 200
[2026-06-05 17:10:45,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:45,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:10:45,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:10:45,341.341 INFO    ] No camera update needed
[2026-06-05 17:10:45,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:10:45,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:10:45,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:10:45,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:10:47,397.397 INFO    ] ================================================
[2026-06-05 17:10:47,418.418 INFO    ] Launching Daemon at Fri Jun  5 17:10:47 IST 2026
[2026-06-05 17:10:47,429.429 INFO    ] ================================================
[2026-06-05 17:10:48,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:10:48
[2026-06-05 17:10:48,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:10:49,007.007 INFO    ] Initializing speech engine...
[2026-06-05 17:10:49,014.014 INFO    ] 2026-06-05 17:10:49
[2026-06-05 17:10:49,273.273 INFO    ] 2026-06-05 17:10:49
[2026-06-05 17:10:49,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:10:49,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:10:49,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:10:49,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:10:49,758.758 INFO    ] time= 05/06/2026 17:10:49
[2026-06-05 17:10:49,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:10:49,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:10:49,972.972 INFO    ] No existing commands found in stream
[2026-06-05 17:10:54,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:10:54,994.994 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 17:10:58,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:10:58,434.434 INFO    ] Checking for system updates...
[2026-06-05 17:10:58,470.470 INFO    ] 200
[2026-06-05 17:10:58,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:58,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:10:58,563.563 INFO    ] No update needed
[2026-06-05 17:10:58,566.566 INFO    ] Checking for camera pi updates...
[2026-06-05 17:10:58,603.603 INFO    ] 200
[2026-06-05 17:10:58,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:10:58,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:10:58,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:10:58,690.690 INFO    ] No camera update needed
[2026-06-05 17:10:58,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:10:58,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:10:58,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:10:58,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:11:00,745.745 INFO    ] ================================================
[2026-06-05 17:11:00,762.762 INFO    ] Launching Daemon at Fri Jun  5 17:11:00 IST 2026
[2026-06-05 17:11:00,773.773 INFO    ] ================================================
[2026-06-05 17:11:01,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:11:01
[2026-06-05 17:11:01,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:11:02,470.470 INFO    ] Initializing speech engine...
[2026-06-05 17:11:02,478.478 INFO    ] 2026-06-05 17:11:02
[2026-06-05 17:11:02,840.840 INFO    ] 2026-06-05 17:11:02
[2026-06-05 17:11:02,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:11:03,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:11:03,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:11:03,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:11:03,362.362 INFO    ] time= 05/06/2026 17:11:03
[2026-06-05 17:11:03,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:11:03,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:11:03,561.561 INFO    ] No existing commands found in stream
[2026-06-05 17:11:08,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:11:08,597.597 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 17:11:11,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:11:11,192.192 INFO    ] Checking for system updates...
[2026-06-05 17:11:11,229.229 INFO    ] 200
[2026-06-05 17:11:11,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:11:11,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:11:11,287.287 INFO    ] No update needed
[2026-06-05 17:11:11,289.289 INFO    ] Checking for camera pi updates...
[2026-06-05 17:11:11,323.323 INFO    ] 200
[2026-06-05 17:11:11,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:11:11,372.372 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:11:11,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:11:11,417.417 INFO    ] No camera update needed
[2026-06-05 17:11:11,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:11:11,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:11:11,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:11:11,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:11:13,473.473 INFO    ] ================================================
[2026-06-05 17:11:13,489.489 INFO    ] Launching Daemon at Fri Jun  5 17:11:13 IST 2026
[2026-06-05 17:11:13,501.501 INFO    ] ================================================
[2026-06-05 17:11:14,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:11:14
[2026-06-05 17:11:14,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:11:14,953.953 INFO    ] Initializing speech engine...
[2026-06-05 17:11:14,981.981 INFO    ] 2026-06-05 17:11:14
[2026-06-05 17:11:15,256.256 INFO    ] 2026-06-05 17:11:15
[2026-06-05 17:11:15,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:11:15,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:11:15,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:11:15,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:11:15,611.611 INFO    ] time= 05/06/2026 17:11:15
[2026-06-05 17:11:15,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:11:15,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:11:15,766.766 INFO    ] No existing commands found in stream
[2026-06-05 17:11:20,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:11:20,780.780 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 17:11:26,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:11:26,280.280 INFO    ] Checking for system updates...
[2026-06-05 17:11:26,316.316 INFO    ] 200
[2026-06-05 17:11:26,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:11:26,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:11:26,374.374 INFO    ] No update needed
[2026-06-05 17:11:26,377.377 INFO    ] Checking for camera pi updates...
[2026-06-05 17:11:26,410.410 INFO    ] 200
[2026-06-05 17:11:26,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:11:26,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:11:26,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:11:26,750.750 INFO    ] No camera update needed
[2026-06-05 17:11:26,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:11:26,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:11:26,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:11:26,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:11:28,807.807 INFO    ] ================================================
[2026-06-05 17:11:28,823.823 INFO    ] Launching Daemon at Fri Jun  5 17:11:28 IST 2026
[2026-06-05 17:11:28,835.835 INFO    ] ================================================
[2026-06-05 17:11:29,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:11:29
[2026-06-05 17:11:30,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:11:30,475.475 INFO    ] Initializing speech engine...
[2026-06-05 17:11:30,480.480 INFO    ] 2026-06-05 17:11:30
[2026-06-05 17:11:30,761.761 INFO    ] 2026-06-05 17:11:30
[2026-06-05 17:11:30,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:11:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:11:31,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:11:31,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:11:31,284.284 INFO    ] time= 05/06/2026 17:11:31
[2026-06-05 17:11:31,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:11:31,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:11:31,533.533 INFO    ] No existing commands found in stream
[2026-06-05 17:11:36,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:11:36,553.553 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 17:11:38,430.430 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:11:38,433.433 INFO    ] Checking for system updates...
[2026-06-05 17:11:38,470.470 INFO    ] 200
[2026-06-05 17:11:38,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:11:38,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:11:38,534.534 INFO    ] No update needed
[2026-06-05 17:11:38,536.536 INFO    ] Checking for camera pi updates...
[2026-06-05 17:11:38,574.574 INFO    ] 200
[2026-06-05 17:11:38,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:11:38,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:11:38,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:11:38,667.667 INFO    ] No camera update needed
[2026-06-05 17:11:38,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:11:38,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:11:38,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:11:38,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:11:40,722.722 INFO    ] ================================================
[2026-06-05 17:11:40,738.738 INFO    ] Launching Daemon at Fri Jun  5 17:11:40 IST 2026
[2026-06-05 17:11:40,749.749 INFO    ] ================================================
[2026-06-05 17:11:41,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:11:41
[2026-06-05 17:11:41,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:11:42,210.210 INFO    ] Initializing speech engine...
[2026-06-05 17:11:42,217.217 INFO    ] 2026-06-05 17:11:42
[2026-06-05 17:11:42,464.464 INFO    ] 2026-06-05 17:11:42
[2026-06-05 17:11:42,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:11:42,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:11:42,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:11:42,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:11:42,947.947 INFO    ] time= 05/06/2026 17:11:42
[2026-06-05 17:11:43,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:11:43,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:11:43,168.168 INFO    ] No existing commands found in stream
[2026-06-05 17:11:48,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:11:48,196.196 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 17:11:52,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:11:52,005.005 INFO    ] Checking for system updates...
[2026-06-05 17:11:52,041.041 INFO    ] 200
[2026-06-05 17:11:52,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:11:52,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:11:52,098.098 INFO    ] No update needed
[2026-06-05 17:11:52,101.101 INFO    ] Checking for camera pi updates...
[2026-06-05 17:11:52,135.135 INFO    ] 200
[2026-06-05 17:11:52,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:11:52,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:11:52,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:11:52,206.206 INFO    ] No camera update needed
[2026-06-05 17:11:52,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:11:52,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:11:52,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:11:52,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:11:54,266.266 INFO    ] ================================================
[2026-06-05 17:11:54,281.281 INFO    ] Launching Daemon at Fri Jun  5 17:11:54 IST 2026
[2026-06-05 17:11:54,293.293 INFO    ] ================================================
[2026-06-05 17:11:54,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:11:54
[2026-06-05 17:11:55,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:11:55,752.752 INFO    ] Initializing speech engine...
[2026-06-05 17:11:55,759.759 INFO    ] 2026-06-05 17:11:55
[2026-06-05 17:11:56,018.018 INFO    ] 2026-06-05 17:11:56
[2026-06-05 17:11:56,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:11:56,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:11:56,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:11:56,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:11:56,477.477 INFO    ] time= 05/06/2026 17:11:56
[2026-06-05 17:11:56,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:11:56,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:11:56,705.705 INFO    ] No existing commands found in stream
[2026-06-05 17:12:01,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:12:01,731.731 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 17:12:02,432.432 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:12:02,436.436 INFO    ] Checking for system updates...
[2026-06-05 17:12:02,480.480 INFO    ] 200
[2026-06-05 17:12:02,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:02,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:12:02,547.547 INFO    ] No update needed
[2026-06-05 17:12:02,550.550 INFO    ] Checking for camera pi updates...
[2026-06-05 17:12:02,596.596 INFO    ] 200
[2026-06-05 17:12:02,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:02,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:12:02,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:12:02,730.730 INFO    ] No camera update needed
[2026-06-05 17:12:02,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:12:02,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:12:02,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:12:02,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:12:04,794.794 INFO    ] ================================================
[2026-06-05 17:12:04,809.809 INFO    ] Launching Daemon at Fri Jun  5 17:12:04 IST 2026
[2026-06-05 17:12:04,820.820 INFO    ] ================================================
[2026-06-05 17:12:05,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:12:05
[2026-06-05 17:12:05,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:12:06,230.230 INFO    ] Initializing speech engine...
[2026-06-05 17:12:06,253.253 INFO    ] 2026-06-05 17:12:06
[2026-06-05 17:12:06,509.509 INFO    ] 2026-06-05 17:12:06
[2026-06-05 17:12:06,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:12:06,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:12:06,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:12:06,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:12:06,960.960 INFO    ] time= 05/06/2026 17:12:06
[2026-06-05 17:12:06,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:12:07,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:12:07,147.147 INFO    ] No existing commands found in stream
[2026-06-05 17:12:12,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:12:12,162.162 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 17:12:15,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:12:15,933.933 INFO    ] Checking for system updates...
[2026-06-05 17:12:15,973.973 INFO    ] 200
[2026-06-05 17:12:15,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:16,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:12:16,032.032 INFO    ] No update needed
[2026-06-05 17:12:16,034.034 INFO    ] Checking for camera pi updates...
[2026-06-05 17:12:16,068.068 INFO    ] 200
[2026-06-05 17:12:16,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:16,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:12:16,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:12:16,156.156 INFO    ] No camera update needed
[2026-06-05 17:12:16,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:12:16,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:12:16,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:12:16,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:12:18,212.212 INFO    ] ================================================
[2026-06-05 17:12:18,228.228 INFO    ] Launching Daemon at Fri Jun  5 17:12:18 IST 2026
[2026-06-05 17:12:18,239.239 INFO    ] ================================================
[2026-06-05 17:12:18,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:12:18
[2026-06-05 17:12:19,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:12:19,700.700 INFO    ] Initializing speech engine...
[2026-06-05 17:12:19,712.712 INFO    ] 2026-06-05 17:12:19
[2026-06-05 17:12:20,011.011 INFO    ] 2026-06-05 17:12:19
[2026-06-05 17:12:20,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:12:20,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:12:20,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:12:20,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:12:20,568.568 INFO    ] time= 05/06/2026 17:12:20
[2026-06-05 17:12:20,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:12:20,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:12:20,737.737 INFO    ] No existing commands found in stream
[2026-06-05 17:12:25,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:12:25,763.763 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 17:12:28,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:12:28,120.120 INFO    ] Checking for system updates...
[2026-06-05 17:12:28,157.157 INFO    ] 200
[2026-06-05 17:12:28,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:28,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:12:28,223.223 INFO    ] No update needed
[2026-06-05 17:12:28,226.226 INFO    ] Checking for camera pi updates...
[2026-06-05 17:12:28,265.265 INFO    ] 200
[2026-06-05 17:12:28,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:28,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:12:28,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:12:28,354.354 INFO    ] No camera update needed
[2026-06-05 17:12:28,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:12:28,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:12:28,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:12:28,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:12:30,409.409 INFO    ] ================================================
[2026-06-05 17:12:30,424.424 INFO    ] Launching Daemon at Fri Jun  5 17:12:30 IST 2026
[2026-06-05 17:12:30,435.435 INFO    ] ================================================
[2026-06-05 17:12:31,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:12:31
[2026-06-05 17:12:31,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:12:31,908.908 INFO    ] Initializing speech engine...
[2026-06-05 17:12:31,917.917 INFO    ] 2026-06-05 17:12:31
[2026-06-05 17:12:32,249.249 INFO    ] 2026-06-05 17:12:32
[2026-06-05 17:12:32,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:12:32,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:12:32,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:12:32,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:12:32,666.666 INFO    ] time= 05/06/2026 17:12:32
[2026-06-05 17:12:32,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:12:32,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:12:32,809.809 INFO    ] No existing commands found in stream
[2026-06-05 17:12:37,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:12:37,831.831 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 17:12:38,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:12:38,823.823 INFO    ] Checking for system updates...
[2026-06-05 17:12:38,860.860 INFO    ] 200
[2026-06-05 17:12:38,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:38,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:12:38,932.932 INFO    ] No update needed
[2026-06-05 17:12:38,935.935 INFO    ] Checking for camera pi updates...
[2026-06-05 17:12:38,986.986 INFO    ] 200
[2026-06-05 17:12:38,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:39,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:12:39,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:12:39,082.082 INFO    ] No camera update needed
[2026-06-05 17:12:39,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:12:39,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:12:39,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:12:39,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:12:41,136.136 INFO    ] ================================================
[2026-06-05 17:12:41,151.151 INFO    ] Launching Daemon at Fri Jun  5 17:12:41 IST 2026
[2026-06-05 17:12:41,162.162 INFO    ] ================================================
[2026-06-05 17:12:41,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:12:41
[2026-06-05 17:12:42,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:12:42,644.644 INFO    ] Initializing speech engine...
[2026-06-05 17:12:42,652.652 INFO    ] 2026-06-05 17:12:42
[2026-06-05 17:12:42,928.928 INFO    ] 2026-06-05 17:12:42
[2026-06-05 17:12:42,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:12:43,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:12:43,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:12:43,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:12:43,404.404 INFO    ] time= 05/06/2026 17:12:43
[2026-06-05 17:12:43,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:12:43,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:12:43,636.636 INFO    ] No existing commands found in stream
[2026-06-05 17:12:48,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:12:48,667.667 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 17:12:51,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:12:51,968.968 INFO    ] Checking for system updates...
[2026-06-05 17:12:52,009.009 INFO    ] 200
[2026-06-05 17:12:52,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:52,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:12:52,074.074 INFO    ] No update needed
[2026-06-05 17:12:52,077.077 INFO    ] Checking for camera pi updates...
[2026-06-05 17:12:52,111.111 INFO    ] 200
[2026-06-05 17:12:52,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:12:52,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:12:52,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:12:52,198.198 INFO    ] No camera update needed
[2026-06-05 17:12:52,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:12:52,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:12:52,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:12:52,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:12:54,253.253 INFO    ] ================================================
[2026-06-05 17:12:54,268.268 INFO    ] Launching Daemon at Fri Jun  5 17:12:54 IST 2026
[2026-06-05 17:12:54,278.278 INFO    ] ================================================
[2026-06-05 17:12:54,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:12:54
[2026-06-05 17:12:55,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:12:55,928.928 INFO    ] Initializing speech engine...
[2026-06-05 17:12:55,940.940 INFO    ] 2026-06-05 17:12:55
[2026-06-05 17:12:56,218.218 INFO    ] 2026-06-05 17:12:56
[2026-06-05 17:12:56,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:12:56,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:12:56,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:12:56,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:12:56,691.691 INFO    ] time= 05/06/2026 17:12:56
[2026-06-05 17:12:56,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:12:56,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:12:56,944.944 INFO    ] No existing commands found in stream
[2026-06-05 17:13:01,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:13:01,980.980 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 17:13:04,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:13:04,818.818 INFO    ] Checking for system updates...
[2026-06-05 17:13:04,859.859 INFO    ] 200
[2026-06-05 17:13:04,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:04,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:13:04,923.923 INFO    ] No update needed
[2026-06-05 17:13:04,926.926 INFO    ] Checking for camera pi updates...
[2026-06-05 17:13:04,960.960 INFO    ] 200
[2026-06-05 17:13:04,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:05,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:13:05,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:13:05,046.046 INFO    ] No camera update needed
[2026-06-05 17:13:05,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:13:05,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:13:05,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:13:05,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:13:07,100.100 INFO    ] ================================================
[2026-06-05 17:13:07,115.115 INFO    ] Launching Daemon at Fri Jun  5 17:13:07 IST 2026
[2026-06-05 17:13:07,126.126 INFO    ] ================================================
[2026-06-05 17:13:07,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:13:07
[2026-06-05 17:13:08,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:13:08,546.546 INFO    ] Initializing speech engine...
[2026-06-05 17:13:08,555.555 INFO    ] 2026-06-05 17:13:08
[2026-06-05 17:13:08,803.803 INFO    ] 2026-06-05 17:13:08
[2026-06-05 17:13:08,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:13:09,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:13:09,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:13:09,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:13:09,183.183 INFO    ] time= 05/06/2026 17:13:09
[2026-06-05 17:13:09,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:13:09,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:13:09,400.400 INFO    ] No existing commands found in stream
[2026-06-05 17:13:14,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:13:14,416.416 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 17:13:15,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:13:15,263.263 INFO    ] Checking for system updates...
[2026-06-05 17:13:15,302.302 INFO    ] 200
[2026-06-05 17:13:15,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:15,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:13:15,370.370 INFO    ] No update needed
[2026-06-05 17:13:15,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 17:13:15,407.407 INFO    ] 200
[2026-06-05 17:13:15,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:15,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:13:15,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:13:15,499.499 INFO    ] No camera update needed
[2026-06-05 17:13:15,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:13:15,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:13:15,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:13:15,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:13:17,553.553 INFO    ] ================================================
[2026-06-05 17:13:17,568.568 INFO    ] Launching Daemon at Fri Jun  5 17:13:17 IST 2026
[2026-06-05 17:13:17,578.578 INFO    ] ================================================
[2026-06-05 17:13:18,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:13:18
[2026-06-05 17:13:18,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:13:19,241.241 INFO    ] Initializing speech engine...
[2026-06-05 17:13:19,254.254 INFO    ] 2026-06-05 17:13:19
[2026-06-05 17:13:19,567.567 INFO    ] 2026-06-05 17:13:19
[2026-06-05 17:13:19,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:13:19,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:13:19,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:13:20,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:13:20,081.081 INFO    ] time= 05/06/2026 17:13:20
[2026-06-05 17:13:20,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:13:20,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:13:20,238.238 INFO    ] No existing commands found in stream
[2026-06-05 17:13:25,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:13:25,262.262 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 17:13:26,733.733 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:13:26,737.737 INFO    ] Checking for system updates...
[2026-06-05 17:13:26,778.778 INFO    ] 200
[2026-06-05 17:13:26,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:26,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:13:26,837.837 INFO    ] No update needed
[2026-06-05 17:13:26,839.839 INFO    ] Checking for camera pi updates...
[2026-06-05 17:13:26,873.873 INFO    ] 200
[2026-06-05 17:13:26,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:26,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:13:26,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:13:26,960.960 INFO    ] No camera update needed
[2026-06-05 17:13:26,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:13:26,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:13:26,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:13:26,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:13:29,015.015 INFO    ] ================================================
[2026-06-05 17:13:29,031.031 INFO    ] Launching Daemon at Fri Jun  5 17:13:29 IST 2026
[2026-06-05 17:13:29,041.041 INFO    ] ================================================
[2026-06-05 17:13:29,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:13:29
[2026-06-05 17:13:30,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:13:30,510.510 INFO    ] Initializing speech engine...
[2026-06-05 17:13:30,518.518 INFO    ] 2026-06-05 17:13:30
[2026-06-05 17:13:30,770.770 INFO    ] 2026-06-05 17:13:30
[2026-06-05 17:13:30,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:13:30,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:13:31,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:13:31,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:13:31,198.198 INFO    ] time= 05/06/2026 17:13:31
[2026-06-05 17:13:31,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:13:31,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:13:31,466.466 INFO    ] No existing commands found in stream
[2026-06-05 17:13:36,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:13:36,489.489 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 17:13:39,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:13:39,105.105 INFO    ] Checking for system updates...
[2026-06-05 17:13:39,142.142 INFO    ] 200
[2026-06-05 17:13:39,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:39,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:13:39,208.208 INFO    ] No update needed
[2026-06-05 17:13:39,210.210 INFO    ] Checking for camera pi updates...
[2026-06-05 17:13:39,253.253 INFO    ] 200
[2026-06-05 17:13:39,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:39,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:13:39,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:13:39,356.356 INFO    ] No camera update needed
[2026-06-05 17:13:39,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:13:39,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:13:39,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:13:39,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:13:41,414.414 INFO    ] ================================================
[2026-06-05 17:13:41,430.430 INFO    ] Launching Daemon at Fri Jun  5 17:13:41 IST 2026
[2026-06-05 17:13:41,441.441 INFO    ] ================================================
[2026-06-05 17:13:42,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:13:42
[2026-06-05 17:13:42,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:13:42,888.888 INFO    ] Initializing speech engine...
[2026-06-05 17:13:42,904.904 INFO    ] 2026-06-05 17:13:42
[2026-06-05 17:13:43,162.162 INFO    ] 2026-06-05 17:13:43
[2026-06-05 17:13:43,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:13:43,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:13:43,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:13:43,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:13:43,628.628 INFO    ] time= 05/06/2026 17:13:43
[2026-06-05 17:13:43,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:13:43,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:13:43,876.876 INFO    ] No existing commands found in stream
[2026-06-05 17:13:48,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:13:48,891.891 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 17:13:50,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:13:50,696.696 INFO    ] Checking for system updates...
[2026-06-05 17:13:50,733.733 INFO    ] 200
[2026-06-05 17:13:50,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:50,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:13:50,799.799 INFO    ] No update needed
[2026-06-05 17:13:50,802.802 INFO    ] Checking for camera pi updates...
[2026-06-05 17:13:50,840.840 INFO    ] 200
[2026-06-05 17:13:50,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:13:50,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:13:50,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:13:50,937.937 INFO    ] No camera update needed
[2026-06-05 17:13:50,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:13:50,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:13:50,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:13:50,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:13:52,992.992 INFO    ] ================================================
[2026-06-05 17:13:53,008.008 INFO    ] Launching Daemon at Fri Jun  5 17:13:53 IST 2026
[2026-06-05 17:13:53,020.020 INFO    ] ================================================
[2026-06-05 17:13:53,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:13:53
[2026-06-05 17:13:54,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:13:54,463.463 INFO    ] Initializing speech engine...
[2026-06-05 17:13:54,470.470 INFO    ] 2026-06-05 17:13:54
[2026-06-05 17:13:54,780.780 INFO    ] 2026-06-05 17:13:54
[2026-06-05 17:13:54,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:13:55,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:13:55,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:13:55,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:13:55,308.308 INFO    ] time= 05/06/2026 17:13:55
[2026-06-05 17:13:55,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:13:55,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:13:55,507.507 INFO    ] No existing commands found in stream
[2026-06-05 17:14:00,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:14:00,522.522 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 17:14:03,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:14:03,367.367 INFO    ] Checking for system updates...
[2026-06-05 17:14:03,404.404 INFO    ] 200
[2026-06-05 17:14:03,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:03,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:14:03,462.462 INFO    ] No update needed
[2026-06-05 17:14:03,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 17:14:03,503.503 INFO    ] 200
[2026-06-05 17:14:03,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:03,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:14:03,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:14:03,591.591 INFO    ] No camera update needed
[2026-06-05 17:14:03,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:14:03,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:14:03,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:14:03,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:14:05,647.647 INFO    ] ================================================
[2026-06-05 17:14:05,662.662 INFO    ] Launching Daemon at Fri Jun  5 17:14:05 IST 2026
[2026-06-05 17:14:05,673.673 INFO    ] ================================================
[2026-06-05 17:14:06,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:14:06
[2026-06-05 17:14:06,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:14:07,160.160 INFO    ] Initializing speech engine...
[2026-06-05 17:14:07,168.168 INFO    ] 2026-06-05 17:14:07
[2026-06-05 17:14:07,428.428 INFO    ] 2026-06-05 17:14:07
[2026-06-05 17:14:07,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:14:07,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:14:07,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:14:07,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:14:07,906.906 INFO    ] time= 05/06/2026 17:14:07
[2026-06-05 17:14:07,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:14:07,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:14:08,095.095 INFO    ] No existing commands found in stream
[2026-06-05 17:14:13,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:14:13,134.134 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 17:14:14,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:14:14,716.716 INFO    ] Checking for system updates...
[2026-06-05 17:14:14,761.761 INFO    ] 200
[2026-06-05 17:14:14,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:14,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:14:14,819.819 INFO    ] No update needed
[2026-06-05 17:14:14,822.822 INFO    ] Checking for camera pi updates...
[2026-06-05 17:14:14,856.856 INFO    ] 200
[2026-06-05 17:14:14,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:14,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:14:15,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:14:15,048.048 INFO    ] No camera update needed
[2026-06-05 17:14:15,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:14:15,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:14:15,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:14:15,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:14:17,103.103 INFO    ] ================================================
[2026-06-05 17:14:17,118.118 INFO    ] Launching Daemon at Fri Jun  5 17:14:17 IST 2026
[2026-06-05 17:14:17,129.129 INFO    ] ================================================
[2026-06-05 17:14:17,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:14:17
[2026-06-05 17:14:18,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:14:18,595.595 INFO    ] Initializing speech engine...
[2026-06-05 17:14:18,601.601 INFO    ] 2026-06-05 17:14:18
[2026-06-05 17:14:18,864.864 INFO    ] 2026-06-05 17:14:18
[2026-06-05 17:14:18,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:14:19,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:14:19,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:14:19,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:14:19,408.408 INFO    ] time= 05/06/2026 17:14:19
[2026-06-05 17:14:19,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:14:19,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:14:19,563.563 INFO    ] No existing commands found in stream
[2026-06-05 17:14:24,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:14:24,576.576 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 17:14:28,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:14:28,359.359 INFO    ] Checking for system updates...
[2026-06-05 17:14:28,401.401 INFO    ] 200
[2026-06-05 17:14:28,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:28,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:14:28,466.466 INFO    ] No update needed
[2026-06-05 17:14:28,469.469 INFO    ] Checking for camera pi updates...
[2026-06-05 17:14:28,502.502 INFO    ] 200
[2026-06-05 17:14:28,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:28,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:14:28,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:14:28,598.598 INFO    ] No camera update needed
[2026-06-05 17:14:28,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:14:28,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:14:28,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:14:28,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:14:30,659.659 INFO    ] ================================================
[2026-06-05 17:14:30,675.675 INFO    ] Launching Daemon at Fri Jun  5 17:14:30 IST 2026
[2026-06-05 17:14:30,687.687 INFO    ] ================================================
[2026-06-05 17:14:31,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:14:31
[2026-06-05 17:14:31,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:14:32,244.244 INFO    ] Initializing speech engine...
[2026-06-05 17:14:32,266.266 INFO    ] 2026-06-05 17:14:32
[2026-06-05 17:14:32,537.537 INFO    ] 2026-06-05 17:14:32
[2026-06-05 17:14:32,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:14:32,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:14:32,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:14:32,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:14:32,949.949 INFO    ] time= 05/06/2026 17:14:32
[2026-06-05 17:14:32,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:14:32,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:14:33,051.051 INFO    ] No existing commands found in stream
[2026-06-05 17:14:38,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:14:38,090.090 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 17:14:39,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:14:39,033.033 INFO    ] Checking for system updates...
[2026-06-05 17:14:39,069.069 INFO    ] 200
[2026-06-05 17:14:39,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:39,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:14:39,127.127 INFO    ] No update needed
[2026-06-05 17:14:39,130.130 INFO    ] Checking for camera pi updates...
[2026-06-05 17:14:39,168.168 INFO    ] 200
[2026-06-05 17:14:39,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:39,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:14:39,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:14:39,269.269 INFO    ] No camera update needed
[2026-06-05 17:14:39,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:14:39,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:14:39,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:14:39,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:14:41,325.325 INFO    ] ================================================
[2026-06-05 17:14:41,340.340 INFO    ] Launching Daemon at Fri Jun  5 17:14:41 IST 2026
[2026-06-05 17:14:41,351.351 INFO    ] ================================================
[2026-06-05 17:14:41,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:14:41
[2026-06-05 17:14:42,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:14:42,904.904 INFO    ] Initializing speech engine...
[2026-06-05 17:14:42,916.916 INFO    ] 2026-06-05 17:14:42
[2026-06-05 17:14:43,197.197 INFO    ] 2026-06-05 17:14:43
[2026-06-05 17:14:43,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:14:43,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:14:43,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:14:43,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:14:43,689.689 INFO    ] time= 05/06/2026 17:14:43
[2026-06-05 17:14:43,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:14:43,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:14:43,876.876 INFO    ] No existing commands found in stream
[2026-06-05 17:14:48,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:14:48,908.908 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 17:14:49,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:14:49,457.457 INFO    ] Checking for system updates...
[2026-06-05 17:14:49,498.498 INFO    ] 200
[2026-06-05 17:14:49,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:49,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:14:49,558.558 INFO    ] No update needed
[2026-06-05 17:14:49,561.561 INFO    ] Checking for camera pi updates...
[2026-06-05 17:14:49,615.615 INFO    ] 200
[2026-06-05 17:14:49,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:14:49,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:14:49,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:14:49,713.713 INFO    ] No camera update needed
[2026-06-05 17:14:49,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:14:49,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:14:49,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:14:49,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:14:51,774.774 INFO    ] ================================================
[2026-06-05 17:14:51,790.790 INFO    ] Launching Daemon at Fri Jun  5 17:14:51 IST 2026
[2026-06-05 17:14:51,801.801 INFO    ] ================================================
[2026-06-05 17:14:52,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:14:52
[2026-06-05 17:14:52,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:14:53,251.251 INFO    ] Initializing speech engine...
[2026-06-05 17:14:53,258.258 INFO    ] 2026-06-05 17:14:53
[2026-06-05 17:14:53,520.520 INFO    ] 2026-06-05 17:14:53
[2026-06-05 17:14:53,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:14:55,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:14:55,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:14:55,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:14:55,392.392 INFO    ] time= 05/06/2026 17:14:55
[2026-06-05 17:14:55,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:14:55,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:14:55,463.463 INFO    ] No existing commands found in stream
[2026-06-05 17:15:00,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:15:00,477.477 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 17:15:01,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:15:01,044.044 INFO    ] Checking for system updates...
[2026-06-05 17:15:01,085.085 INFO    ] 200
[2026-06-05 17:15:01,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:01,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:01,150.150 INFO    ] No update needed
[2026-06-05 17:15:01,152.152 INFO    ] Checking for camera pi updates...
[2026-06-05 17:15:01,189.189 INFO    ] 200
[2026-06-05 17:15:01,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:01,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:15:01,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:01,279.279 INFO    ] No camera update needed
[2026-06-05 17:15:01,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:15:01,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:15:01,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:15:01,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:15:03,338.338 INFO    ] ================================================
[2026-06-05 17:15:03,354.354 INFO    ] Launching Daemon at Fri Jun  5 17:15:03 IST 2026
[2026-06-05 17:15:03,364.364 INFO    ] ================================================
[2026-06-05 17:15:03,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:15:03
[2026-06-05 17:15:04,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:15:04,849.849 INFO    ] Initializing speech engine...
[2026-06-05 17:15:04,855.855 INFO    ] 2026-06-05 17:15:04
[2026-06-05 17:15:05,157.157 INFO    ] 2026-06-05 17:15:05
[2026-06-05 17:15:05,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:15:05,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:15:05,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:15:05,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:15:05,585.585 INFO    ] time= 05/06/2026 17:15:05
[2026-06-05 17:15:05,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:15:05,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:15:05,679.679 INFO    ] No existing commands found in stream
[2026-06-05 17:15:10,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:15:10,713.713 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 17:15:14,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:15:14,033.033 INFO    ] Checking for system updates...
[2026-06-05 17:15:14,076.076 INFO    ] 200
[2026-06-05 17:15:14,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:14,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:14,134.134 INFO    ] No update needed
[2026-06-05 17:15:14,137.137 INFO    ] Checking for camera pi updates...
[2026-06-05 17:15:14,170.170 INFO    ] 200
[2026-06-05 17:15:14,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:14,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:15:14,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:14,264.264 INFO    ] No camera update needed
[2026-06-05 17:15:14,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:15:14,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:15:14,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:15:14,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:15:16,322.322 INFO    ] ================================================
[2026-06-05 17:15:16,337.337 INFO    ] Launching Daemon at Fri Jun  5 17:15:16 IST 2026
[2026-06-05 17:15:16,349.349 INFO    ] ================================================
[2026-06-05 17:15:16,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:15:16
[2026-06-05 17:15:17,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:15:17,757.757 INFO    ] Initializing speech engine...
[2026-06-05 17:15:17,771.771 INFO    ] 2026-06-05 17:15:17
[2026-06-05 17:15:18,039.039 INFO    ] 2026-06-05 17:15:18
[2026-06-05 17:15:18,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:15:18,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:15:18,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:15:18,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:15:18,535.535 INFO    ] time= 05/06/2026 17:15:18
[2026-06-05 17:15:18,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:15:18,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:15:18,735.735 INFO    ] No existing commands found in stream
[2026-06-05 17:15:23,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:15:23,754.754 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 17:15:26,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:15:26,013.013 INFO    ] Checking for system updates...
[2026-06-05 17:15:26,054.054 INFO    ] 200
[2026-06-05 17:15:26,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:26,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:26,123.123 INFO    ] No update needed
[2026-06-05 17:15:26,126.126 INFO    ] Checking for camera pi updates...
[2026-06-05 17:15:26,166.166 INFO    ] 200
[2026-06-05 17:15:26,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:26,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:15:26,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:26,263.263 INFO    ] No camera update needed
[2026-06-05 17:15:26,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:15:26,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:15:26,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:15:26,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:15:28,324.324 INFO    ] ================================================
[2026-06-05 17:15:28,340.340 INFO    ] Launching Daemon at Fri Jun  5 17:15:28 IST 2026
[2026-06-05 17:15:28,351.351 INFO    ] ================================================
[2026-06-05 17:15:28,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:15:28
[2026-06-05 17:15:29,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:15:29,771.771 INFO    ] Initializing speech engine...
[2026-06-05 17:15:29,780.780 INFO    ] 2026-06-05 17:15:29
[2026-06-05 17:15:30,079.079 INFO    ] 2026-06-05 17:15:30
[2026-06-05 17:15:30,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:15:30,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:15:30,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:15:30,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:15:30,471.471 INFO    ] time= 05/06/2026 17:15:30
[2026-06-05 17:15:30,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:15:30,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:15:30,599.599 INFO    ] No existing commands found in stream
[2026-06-05 17:15:35,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:15:35,614.614 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 17:15:36,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:15:36,284.284 INFO    ] Checking for system updates...
[2026-06-05 17:15:36,320.320 INFO    ] 200
[2026-06-05 17:15:36,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:36,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:36,379.379 INFO    ] No update needed
[2026-06-05 17:15:36,382.382 INFO    ] Checking for camera pi updates...
[2026-06-05 17:15:36,416.416 INFO    ] 200
[2026-06-05 17:15:36,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:36,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:15:36,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:36,507.507 INFO    ] No camera update needed
[2026-06-05 17:15:36,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:15:36,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:15:36,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:15:36,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:15:38,565.565 INFO    ] ================================================
[2026-06-05 17:15:38,581.581 INFO    ] Launching Daemon at Fri Jun  5 17:15:38 IST 2026
[2026-06-05 17:15:38,592.592 INFO    ] ================================================
[2026-06-05 17:15:39,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:15:39
[2026-06-05 17:15:39,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:15:40,066.066 INFO    ] Initializing speech engine...
[2026-06-05 17:15:40,073.073 INFO    ] 2026-06-05 17:15:40
[2026-06-05 17:15:40,332.332 INFO    ] 2026-06-05 17:15:40
[2026-06-05 17:15:40,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:15:40,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:15:40,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:15:40,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:15:40,865.865 INFO    ] time= 05/06/2026 17:15:40
[2026-06-05 17:15:40,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:15:40,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:15:41,017.017 INFO    ] No existing commands found in stream
[2026-06-05 17:15:46,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:15:46,045.045 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 17:15:50,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:15:50,184.184 INFO    ] Checking for system updates...
[2026-06-05 17:15:50,224.224 INFO    ] 200
[2026-06-05 17:15:50,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:50,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:50,282.282 INFO    ] No update needed
[2026-06-05 17:15:50,285.285 INFO    ] Checking for camera pi updates...
[2026-06-05 17:15:50,319.319 INFO    ] 200
[2026-06-05 17:15:50,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:15:50,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:15:50,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:15:50,407.407 INFO    ] No camera update needed
[2026-06-05 17:15:50,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:15:50,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:15:50,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:15:50,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:15:52,464.464 INFO    ] ================================================
[2026-06-05 17:15:52,480.480 INFO    ] Launching Daemon at Fri Jun  5 17:15:52 IST 2026
[2026-06-05 17:15:52,490.490 INFO    ] ================================================
[2026-06-05 17:15:53,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:15:53
[2026-06-05 17:15:53,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:15:54,143.143 INFO    ] Initializing speech engine...
[2026-06-05 17:15:54,157.157 INFO    ] 2026-06-05 17:15:54
[2026-06-05 17:15:54,477.477 INFO    ] 2026-06-05 17:15:54
[2026-06-05 17:15:54,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:15:55,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:15:55,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:15:55,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:15:55,811.811 INFO    ] time= 05/06/2026 17:15:55
[2026-06-05 17:15:55,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:15:55,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:15:55,892.892 INFO    ] No existing commands found in stream
[2026-06-05 17:16:00,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:16:00,908.908 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 17:16:03,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:16:03,326.326 INFO    ] Checking for system updates...
[2026-06-05 17:16:03,368.368 INFO    ] 200
[2026-06-05 17:16:03,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:03,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:16:03,427.427 INFO    ] No update needed
[2026-06-05 17:16:03,430.430 INFO    ] Checking for camera pi updates...
[2026-06-05 17:16:03,464.464 INFO    ] 200
[2026-06-05 17:16:03,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:03,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:16:03,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:16:03,551.551 INFO    ] No camera update needed
[2026-06-05 17:16:03,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:16:03,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:16:03,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:16:03,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:16:05,607.607 INFO    ] ================================================
[2026-06-05 17:16:05,677.677 INFO    ] Launching Daemon at Fri Jun  5 17:16:05 IST 2026
[2026-06-05 17:16:05,693.693 INFO    ] ================================================
[2026-06-05 17:16:06,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:16:06
[2026-06-05 17:16:06,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:16:07,267.267 INFO    ] Initializing speech engine...
[2026-06-05 17:16:07,273.273 INFO    ] 2026-06-05 17:16:07
[2026-06-05 17:16:07,559.559 INFO    ] 2026-06-05 17:16:07
[2026-06-05 17:16:07,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:16:07,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:16:07,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:16:07,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:16:08,007.007 INFO    ] time= 05/06/2026 17:16:07
[2026-06-05 17:16:08,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:16:08,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:16:08,201.201 INFO    ] No existing commands found in stream
[2026-06-05 17:16:13,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:16:13,234.234 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 17:16:16,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:16:16,494.494 INFO    ] Checking for system updates...
[2026-06-05 17:16:16,530.530 INFO    ] 200
[2026-06-05 17:16:16,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:16,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:16:16,588.588 INFO    ] No update needed
[2026-06-05 17:16:16,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 17:16:16,633.633 INFO    ] 200
[2026-06-05 17:16:16,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:16,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:16:16,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:16:16,828.828 INFO    ] No camera update needed
[2026-06-05 17:16:16,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:16:16,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:16:16,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:16:16,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:16:18,884.884 INFO    ] ================================================
[2026-06-05 17:16:18,900.900 INFO    ] Launching Daemon at Fri Jun  5 17:16:18 IST 2026
[2026-06-05 17:16:18,911.911 INFO    ] ================================================
[2026-06-05 17:16:19,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:16:19
[2026-06-05 17:16:20,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:16:20,369.369 INFO    ] Initializing speech engine...
[2026-06-05 17:16:20,378.378 INFO    ] 2026-06-05 17:16:20
[2026-06-05 17:16:20,632.632 INFO    ] 2026-06-05 17:16:20
[2026-06-05 17:16:20,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:16:20,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:16:20,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:16:21,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:16:21,125.125 INFO    ] time= 05/06/2026 17:16:21
[2026-06-05 17:16:21,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:16:21,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:16:21,335.335 INFO    ] No existing commands found in stream
[2026-06-05 17:16:26,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:16:26,362.362 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 17:16:30,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:16:30,657.657 INFO    ] Checking for system updates...
[2026-06-05 17:16:30,693.693 INFO    ] 200
[2026-06-05 17:16:30,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:30,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:16:30,751.751 INFO    ] No update needed
[2026-06-05 17:16:30,753.753 INFO    ] Checking for camera pi updates...
[2026-06-05 17:16:30,787.787 INFO    ] 200
[2026-06-05 17:16:30,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:30,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:16:30,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:16:30,872.872 INFO    ] No camera update needed
[2026-06-05 17:16:30,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:16:30,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:16:30,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:16:30,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:16:32,928.928 INFO    ] ================================================
[2026-06-05 17:16:32,943.943 INFO    ] Launching Daemon at Fri Jun  5 17:16:32 IST 2026
[2026-06-05 17:16:32,955.955 INFO    ] ================================================
[2026-06-05 17:16:33,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:16:33
[2026-06-05 17:16:34,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:16:34,428.428 INFO    ] Initializing speech engine...
[2026-06-05 17:16:34,438.438 INFO    ] 2026-06-05 17:16:34
[2026-06-05 17:16:34,706.706 INFO    ] 2026-06-05 17:16:34
[2026-06-05 17:16:34,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:16:34,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:16:34,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:16:35,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:16:35,082.082 INFO    ] time= 05/06/2026 17:16:35
[2026-06-05 17:16:35,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:16:35,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:16:35,219.219 INFO    ] No existing commands found in stream
[2026-06-05 17:16:40,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:16:40,258.258 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 17:16:42,218.218 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:16:42,221.221 INFO    ] Checking for system updates...
[2026-06-05 17:16:42,271.271 INFO    ] 200
[2026-06-05 17:16:42,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:42,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:16:42,343.343 INFO    ] No update needed
[2026-06-05 17:16:42,346.346 INFO    ] Checking for camera pi updates...
[2026-06-05 17:16:42,384.384 INFO    ] 200
[2026-06-05 17:16:42,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:42,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:16:42,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:16:42,485.485 INFO    ] No camera update needed
[2026-06-05 17:16:42,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:16:42,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:16:42,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:16:42,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:16:44,543.543 INFO    ] ================================================
[2026-06-05 17:16:44,559.559 INFO    ] Launching Daemon at Fri Jun  5 17:16:44 IST 2026
[2026-06-05 17:16:44,569.569 INFO    ] ================================================
[2026-06-05 17:16:45,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:16:45
[2026-06-05 17:16:45,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:16:46,114.114 INFO    ] Initializing speech engine...
[2026-06-05 17:16:46,123.123 INFO    ] 2026-06-05 17:16:46
[2026-06-05 17:16:46,380.380 INFO    ] 2026-06-05 17:16:46
[2026-06-05 17:16:46,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:16:46,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:16:46,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:16:46,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:16:46,876.876 INFO    ] time= 05/06/2026 17:16:46
[2026-06-05 17:16:46,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:16:46,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:16:47,092.092 INFO    ] No existing commands found in stream
[2026-06-05 17:16:52,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:16:52,111.111 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 17:16:55,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:16:55,738.738 INFO    ] Checking for system updates...
[2026-06-05 17:16:55,775.775 INFO    ] 200
[2026-06-05 17:16:55,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:55,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:16:55,841.841 INFO    ] No update needed
[2026-06-05 17:16:55,844.844 INFO    ] Checking for camera pi updates...
[2026-06-05 17:16:55,887.887 INFO    ] 200
[2026-06-05 17:16:55,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:16:55,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:16:55,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:16:55,991.991 INFO    ] No camera update needed
[2026-06-05 17:16:55,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:16:55,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:16:56,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:16:56,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:16:58,047.047 INFO    ] ================================================
[2026-06-05 17:16:58,062.062 INFO    ] Launching Daemon at Fri Jun  5 17:16:58 IST 2026
[2026-06-05 17:16:58,073.073 INFO    ] ================================================
[2026-06-05 17:16:58,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:16:58
[2026-06-05 17:16:59,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:16:59,657.657 INFO    ] Initializing speech engine...
[2026-06-05 17:16:59,668.668 INFO    ] 2026-06-05 17:16:59
[2026-06-05 17:16:59,955.955 INFO    ] 2026-06-05 17:16:59
[2026-06-05 17:17:00,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:17:00,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:17:00,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:17:00,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:17:00,501.501 INFO    ] time= 05/06/2026 17:17:00
[2026-06-05 17:17:00,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:17:00,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:17:00,709.709 INFO    ] No existing commands found in stream
[2026-06-05 17:17:05,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:17:05,738.738 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 17:17:06,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:17:06,679.679 INFO    ] Checking for system updates...
[2026-06-05 17:17:06,717.717 INFO    ] 200
[2026-06-05 17:17:06,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:06,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:17:06,776.776 INFO    ] No update needed
[2026-06-05 17:17:06,779.779 INFO    ] Checking for camera pi updates...
[2026-06-05 17:17:06,814.814 INFO    ] 200
[2026-06-05 17:17:06,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:06,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:17:06,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:17:06,896.896 INFO    ] No camera update needed
[2026-06-05 17:17:06,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:17:06,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:17:06,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:17:06,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:17:08,957.957 INFO    ] ================================================
[2026-06-05 17:17:08,973.973 INFO    ] Launching Daemon at Fri Jun  5 17:17:08 IST 2026
[2026-06-05 17:17:08,984.984 INFO    ] ================================================
[2026-06-05 17:17:09,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:17:09
[2026-06-05 17:17:10,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:17:10,469.469 INFO    ] Initializing speech engine...
[2026-06-05 17:17:10,475.475 INFO    ] 2026-06-05 17:17:10
[2026-06-05 17:17:10,724.724 INFO    ] 2026-06-05 17:17:10
[2026-06-05 17:17:10,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:17:10,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:17:10,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:17:11,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:17:11,201.201 INFO    ] time= 05/06/2026 17:17:11
[2026-06-05 17:17:11,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:17:11,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:17:11,423.423 INFO    ] No existing commands found in stream
[2026-06-05 17:17:16,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:17:16,453.453 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 17:17:18,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:17:18,621.621 INFO    ] Checking for system updates...
[2026-06-05 17:17:18,657.657 INFO    ] 200
[2026-06-05 17:17:18,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:18,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:17:18,714.714 INFO    ] No update needed
[2026-06-05 17:17:18,717.717 INFO    ] Checking for camera pi updates...
[2026-06-05 17:17:18,751.751 INFO    ] 200
[2026-06-05 17:17:18,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:18,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:17:18,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:17:18,835.835 INFO    ] No camera update needed
[2026-06-05 17:17:18,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:17:18,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:17:18,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:17:18,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:17:20,891.891 INFO    ] ================================================
[2026-06-05 17:17:20,907.907 INFO    ] Launching Daemon at Fri Jun  5 17:17:20 IST 2026
[2026-06-05 17:17:20,918.918 INFO    ] ================================================
[2026-06-05 17:17:21,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:17:21
[2026-06-05 17:17:22,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:17:22,352.352 INFO    ] Initializing speech engine...
[2026-06-05 17:17:22,360.360 INFO    ] 2026-06-05 17:17:22
[2026-06-05 17:17:22,610.610 INFO    ] 2026-06-05 17:17:22
[2026-06-05 17:17:22,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:17:22,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:17:22,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:17:25,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:17:25,260.260 INFO    ] time= 05/06/2026 17:17:25
[2026-06-05 17:17:25,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:17:25,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:17:25,370.370 INFO    ] No existing commands found in stream
[2026-06-05 17:17:30,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:17:30,388.388 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 17:17:34,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:17:34,399.399 INFO    ] Checking for system updates...
[2026-06-05 17:17:34,439.439 INFO    ] 200
[2026-06-05 17:17:34,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:34,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:17:34,496.496 INFO    ] No update needed
[2026-06-05 17:17:34,499.499 INFO    ] Checking for camera pi updates...
[2026-06-05 17:17:34,537.537 INFO    ] 200
[2026-06-05 17:17:34,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:34,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:17:34,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:17:34,628.628 INFO    ] No camera update needed
[2026-06-05 17:17:34,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:17:34,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:17:34,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:17:34,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:17:36,682.682 INFO    ] ================================================
[2026-06-05 17:17:36,698.698 INFO    ] Launching Daemon at Fri Jun  5 17:17:36 IST 2026
[2026-06-05 17:17:36,709.709 INFO    ] ================================================
[2026-06-05 17:17:37,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:17:37
[2026-06-05 17:17:37,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:17:38,115.115 INFO    ] Initializing speech engine...
[2026-06-05 17:17:38,121.121 INFO    ] 2026-06-05 17:17:38
[2026-06-05 17:17:38,418.418 INFO    ] 2026-06-05 17:17:38
[2026-06-05 17:17:38,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:17:38,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:17:38,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:17:38,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:17:38,797.797 INFO    ] time= 05/06/2026 17:17:38
[2026-06-05 17:17:38,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:17:38,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:17:38,920.920 INFO    ] No existing commands found in stream
[2026-06-05 17:17:43,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:17:43,935.935 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 17:17:47,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:17:47,468.468 INFO    ] Checking for system updates...
[2026-06-05 17:17:47,506.506 INFO    ] 200
[2026-06-05 17:17:47,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:47,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:17:47,565.565 INFO    ] No update needed
[2026-06-05 17:17:47,568.568 INFO    ] Checking for camera pi updates...
[2026-06-05 17:17:47,602.602 INFO    ] 200
[2026-06-05 17:17:47,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:47,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:17:47,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:17:47,691.691 INFO    ] No camera update needed
[2026-06-05 17:17:47,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:17:47,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:17:47,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:17:47,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:17:49,750.750 INFO    ] ================================================
[2026-06-05 17:17:49,766.766 INFO    ] Launching Daemon at Fri Jun  5 17:17:49 IST 2026
[2026-06-05 17:17:49,778.778 INFO    ] ================================================
[2026-06-05 17:17:50,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:17:50
[2026-06-05 17:17:51,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:17:51,395.395 INFO    ] Initializing speech engine...
[2026-06-05 17:17:51,406.406 INFO    ] 2026-06-05 17:17:51
[2026-06-05 17:17:51,680.680 INFO    ] 2026-06-05 17:17:51
[2026-06-05 17:17:51,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:17:51,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:17:51,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:17:52,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:17:52,258.258 INFO    ] time= 05/06/2026 17:17:52
[2026-06-05 17:17:52,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:17:52,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:17:52,416.416 INFO    ] No existing commands found in stream
[2026-06-05 17:17:57,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:17:57,439.439 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 17:17:59,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:17:59,056.056 INFO    ] Checking for system updates...
[2026-06-05 17:17:59,097.097 INFO    ] 200
[2026-06-05 17:17:59,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:59,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:17:59,156.156 INFO    ] No update needed
[2026-06-05 17:17:59,159.159 INFO    ] Checking for camera pi updates...
[2026-06-05 17:17:59,193.193 INFO    ] 200
[2026-06-05 17:17:59,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:17:59,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:17:59,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:17:59,284.284 INFO    ] No camera update needed
[2026-06-05 17:17:59,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:17:59,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:17:59,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:17:59,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:18:01,340.340 INFO    ] ================================================
[2026-06-05 17:18:01,356.356 INFO    ] Launching Daemon at Fri Jun  5 17:18:01 IST 2026
[2026-06-05 17:18:01,367.367 INFO    ] ================================================
[2026-06-05 17:18:02,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:18:02
[2026-06-05 17:18:02,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:18:03,136.136 INFO    ] Initializing speech engine...
[2026-06-05 17:18:03,143.143 INFO    ] 2026-06-05 17:18:03
[2026-06-05 17:18:03,447.447 INFO    ] 2026-06-05 17:18:03
[2026-06-05 17:18:03,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:18:03,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:18:03,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:18:03,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:18:03,852.852 INFO    ] time= 05/06/2026 17:18:03
[2026-06-05 17:18:03,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:18:03,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:18:04,008.008 INFO    ] No existing commands found in stream
[2026-06-05 17:18:09,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:18:09,034.034 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 17:18:14,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:18:14,682.682 INFO    ] Checking for system updates...
[2026-06-05 17:18:14,726.726 INFO    ] 200
[2026-06-05 17:18:14,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:18:14,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:18:14,814.814 INFO    ] No update needed
[2026-06-05 17:18:14,817.817 INFO    ] Checking for camera pi updates...
[2026-06-05 17:18:14,852.852 INFO    ] 200
[2026-06-05 17:18:14,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:18:14,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:18:14,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:18:14,952.952 INFO    ] No camera update needed
[2026-06-05 17:18:14,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:18:14,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:18:14,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:18:14,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:18:17,012.012 INFO    ] ================================================
[2026-06-05 17:18:17,028.028 INFO    ] Launching Daemon at Fri Jun  5 17:18:17 IST 2026
[2026-06-05 17:18:17,039.039 INFO    ] ================================================
[2026-06-05 17:18:17,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:18:17
[2026-06-05 17:18:18,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:18:18,603.603 INFO    ] Initializing speech engine...
[2026-06-05 17:18:18,614.614 INFO    ] 2026-06-05 17:18:18
[2026-06-05 17:18:18,888.888 INFO    ] 2026-06-05 17:18:18
[2026-06-05 17:18:18,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:18:19,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:18:19,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:18:19,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:18:19,428.428 INFO    ] time= 05/06/2026 17:18:19
[2026-06-05 17:18:19,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:18:19,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:18:19,585.585 INFO    ] No existing commands found in stream
[2026-06-05 17:18:24,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:18:24,610.610 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 17:18:25,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:18:25,952.952 INFO    ] Checking for system updates...
[2026-06-05 17:18:25,989.989 INFO    ] 200
[2026-06-05 17:18:25,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:18:26,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:18:26,048.048 INFO    ] No update needed
[2026-06-05 17:18:26,051.051 INFO    ] Checking for camera pi updates...
[2026-06-05 17:18:26,086.086 INFO    ] 200
[2026-06-05 17:18:26,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:18:26,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:18:26,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:18:26,274.274 INFO    ] No camera update needed
[2026-06-05 17:18:26,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:18:26,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:18:26,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:18:26,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:18:28,332.332 INFO    ] ================================================
[2026-06-05 17:18:28,347.347 INFO    ] Launching Daemon at Fri Jun  5 17:18:28 IST 2026
[2026-06-05 17:18:28,358.358 INFO    ] ================================================
[2026-06-05 17:18:28,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:18:28
[2026-06-05 17:18:29,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:18:29,770.770 INFO    ] Initializing speech engine...
[2026-06-05 17:18:29,777.777 INFO    ] 2026-06-05 17:18:29
[2026-06-05 17:18:30,062.062 INFO    ] 2026-06-05 17:18:30
[2026-06-05 17:18:30,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:18:30,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:18:30,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:18:30,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:18:30,466.466 INFO    ] time= 05/06/2026 17:18:30
[2026-06-05 17:18:30,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:18:30,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:18:30,638.638 INFO    ] No existing commands found in stream
[2026-06-05 17:18:35,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:18:35,667.667 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 17:18:37,746.746 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:18:37,749.749 INFO    ] Checking for system updates...
[2026-06-05 17:18:37,785.785 INFO    ] 200
[2026-06-05 17:18:37,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:18:37,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:18:37,842.842 INFO    ] No update needed
[2026-06-05 17:18:37,845.845 INFO    ] Checking for camera pi updates...
[2026-06-05 17:18:37,879.879 INFO    ] 200
[2026-06-05 17:18:37,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:18:37,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:18:37,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:18:37,969.969 INFO    ] No camera update needed
[2026-06-05 17:18:37,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:18:37,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:18:37,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:18:37,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:18:40,026.026 INFO    ] ================================================
[2026-06-05 17:18:40,042.042 INFO    ] Launching Daemon at Fri Jun  5 17:18:40 IST 2026
[2026-06-05 17:18:40,053.053 INFO    ] ================================================
[2026-06-05 17:18:40,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:18:40
[2026-06-05 17:18:41,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:18:41,639.639 INFO    ] Initializing speech engine...
[2026-06-05 17:18:41,646.646 INFO    ] 2026-06-05 17:18:41
[2026-06-05 17:18:41,906.906 INFO    ] 2026-06-05 17:18:41
[2026-06-05 17:18:41,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:18:42,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:18:42,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:18:42,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:18:42,420.420 INFO    ] time= 05/06/2026 17:18:42
[2026-06-05 17:18:42,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:18:42,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:18:42,629.629 INFO    ] No existing commands found in stream
[2026-06-05 17:18:47,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:18:47,658.658 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 17:18:51,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:18:51,238.238 INFO    ] Checking for system updates...
[2026-06-05 17:18:51,275.275 INFO    ] 200
[2026-06-05 17:18:51,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:18:51,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:18:51,339.339 INFO    ] No update needed
[2026-06-05 17:18:51,342.342 INFO    ] Checking for camera pi updates...
[2026-06-05 17:18:51,377.377 INFO    ] 200
[2026-06-05 17:18:51,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:18:51,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:18:51,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:18:51,475.475 INFO    ] No camera update needed
[2026-06-05 17:18:51,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:18:51,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:18:51,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:18:51,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:18:53,534.534 INFO    ] ================================================
[2026-06-05 17:18:53,550.550 INFO    ] Launching Daemon at Fri Jun  5 17:18:53 IST 2026
[2026-06-05 17:18:53,561.561 INFO    ] ================================================
[2026-06-05 17:18:54,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:18:54
[2026-06-05 17:18:54,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:18:55,027.027 INFO    ] Initializing speech engine...
[2026-06-05 17:18:55,037.037 INFO    ] 2026-06-05 17:18:55
[2026-06-05 17:18:55,299.299 INFO    ] 2026-06-05 17:18:55
[2026-06-05 17:18:55,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:18:55,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:18:55,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:18:55,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:18:55,785.785 INFO    ] time= 05/06/2026 17:18:55
[2026-06-05 17:18:55,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:18:55,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:18:55,999.999 INFO    ] No existing commands found in stream
[2026-06-05 17:19:01,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:19:01,016.016 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 17:19:04,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:19:04,090.090 INFO    ] Checking for system updates...
[2026-06-05 17:19:04,127.127 INFO    ] 200
[2026-06-05 17:19:04,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:04,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:19:04,185.185 INFO    ] No update needed
[2026-06-05 17:19:04,188.188 INFO    ] Checking for camera pi updates...
[2026-06-05 17:19:04,232.232 INFO    ] 200
[2026-06-05 17:19:04,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:04,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:19:04,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:19:04,322.322 INFO    ] No camera update needed
[2026-06-05 17:19:04,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:19:04,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:19:04,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:19:04,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:19:06,379.379 INFO    ] ================================================
[2026-06-05 17:19:06,395.395 INFO    ] Launching Daemon at Fri Jun  5 17:19:06 IST 2026
[2026-06-05 17:19:06,406.406 INFO    ] ================================================
[2026-06-05 17:19:06,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:19:06
[2026-06-05 17:19:07,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:19:07,859.859 INFO    ] Initializing speech engine...
[2026-06-05 17:19:07,883.883 INFO    ] 2026-06-05 17:19:07
[2026-06-05 17:19:08,150.150 INFO    ] 2026-06-05 17:19:08
[2026-06-05 17:19:08,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:19:08,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:19:08,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:19:08,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:19:08,558.558 INFO    ] time= 05/06/2026 17:19:08
[2026-06-05 17:19:08,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:19:08,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:19:08,642.642 INFO    ] No existing commands found in stream
[2026-06-05 17:19:13,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:19:13,658.658 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 17:19:17,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:19:17,201.201 INFO    ] Checking for system updates...
[2026-06-05 17:19:17,240.240 INFO    ] 200
[2026-06-05 17:19:17,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:17,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:19:17,317.317 INFO    ] No update needed
[2026-06-05 17:19:17,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 17:19:17,353.353 INFO    ] 200
[2026-06-05 17:19:17,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:17,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:19:17,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:19:17,442.442 INFO    ] No camera update needed
[2026-06-05 17:19:17,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:19:17,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:19:17,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:19:17,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:19:19,498.498 INFO    ] ================================================
[2026-06-05 17:19:19,514.514 INFO    ] Launching Daemon at Fri Jun  5 17:19:19 IST 2026
[2026-06-05 17:19:19,525.525 INFO    ] ================================================
[2026-06-05 17:19:20,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:19:20
[2026-06-05 17:19:20,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:19:20,978.978 INFO    ] Initializing speech engine...
[2026-06-05 17:19:20,994.994 INFO    ] 2026-06-05 17:19:20
[2026-06-05 17:19:21,280.280 INFO    ] 2026-06-05 17:19:21
[2026-06-05 17:19:21,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:19:21,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:19:21,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:19:21,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:19:21,765.765 INFO    ] time= 05/06/2026 17:19:21
[2026-06-05 17:19:21,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:19:21,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:19:22,036.036 INFO    ] No existing commands found in stream
[2026-06-05 17:19:27,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:19:27,063.063 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 17:19:27,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:19:27,998.998 INFO    ] Checking for system updates...
[2026-06-05 17:19:28,035.035 INFO    ] 200
[2026-06-05 17:19:28,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:28,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:19:28,094.094 INFO    ] No update needed
[2026-06-05 17:19:28,097.097 INFO    ] Checking for camera pi updates...
[2026-06-05 17:19:28,132.132 INFO    ] 200
[2026-06-05 17:19:28,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:28,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:19:28,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:19:28,219.219 INFO    ] No camera update needed
[2026-06-05 17:19:28,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:19:28,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:19:28,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:19:28,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:19:30,278.278 INFO    ] ================================================
[2026-06-05 17:19:30,293.293 INFO    ] Launching Daemon at Fri Jun  5 17:19:30 IST 2026
[2026-06-05 17:19:30,304.304 INFO    ] ================================================
[2026-06-05 17:19:30,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:19:30
[2026-06-05 17:19:31,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:19:31,752.752 INFO    ] Initializing speech engine...
[2026-06-05 17:19:31,768.768 INFO    ] 2026-06-05 17:19:31
[2026-06-05 17:19:32,052.052 INFO    ] 2026-06-05 17:19:32
[2026-06-05 17:19:32,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:19:32,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:19:32,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:19:32,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:19:32,606.606 INFO    ] time= 05/06/2026 17:19:32
[2026-06-05 17:19:32,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:19:32,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:19:32,781.781 INFO    ] No existing commands found in stream
[2026-06-05 17:19:37,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:19:37,815.815 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 17:19:38,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:19:38,486.486 INFO    ] Checking for system updates...
[2026-06-05 17:19:38,523.523 INFO    ] 200
[2026-06-05 17:19:38,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:38,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:19:38,581.581 INFO    ] No update needed
[2026-06-05 17:19:38,583.583 INFO    ] Checking for camera pi updates...
[2026-06-05 17:19:38,617.617 INFO    ] 200
[2026-06-05 17:19:38,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:38,665.665 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:19:38,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:19:38,708.708 INFO    ] No camera update needed
[2026-06-05 17:19:38,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:19:38,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:19:38,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:19:38,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:19:40,763.763 INFO    ] ================================================
[2026-06-05 17:19:40,778.778 INFO    ] Launching Daemon at Fri Jun  5 17:19:40 IST 2026
[2026-06-05 17:19:40,789.789 INFO    ] ================================================
[2026-06-05 17:19:41,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:19:41
[2026-06-05 17:19:41,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:19:42,186.186 INFO    ] Initializing speech engine...
[2026-06-05 17:19:42,199.199 INFO    ] 2026-06-05 17:19:42
[2026-06-05 17:19:42,467.467 INFO    ] 2026-06-05 17:19:42
[2026-06-05 17:19:42,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:19:42,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:19:42,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:19:42,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:19:42,923.923 INFO    ] time= 05/06/2026 17:19:42
[2026-06-05 17:19:42,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:19:43,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:19:43,170.170 INFO    ] No existing commands found in stream
[2026-06-05 17:19:48,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:19:48,199.199 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 17:19:49,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:19:49,741.741 INFO    ] Checking for system updates...
[2026-06-05 17:19:49,779.779 INFO    ] 200
[2026-06-05 17:19:49,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:49,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:19:49,837.837 INFO    ] No update needed
[2026-06-05 17:19:49,839.839 INFO    ] Checking for camera pi updates...
[2026-06-05 17:19:49,873.873 INFO    ] 200
[2026-06-05 17:19:49,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:19:49,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:19:49,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:19:49,961.961 INFO    ] No camera update needed
[2026-06-05 17:19:49,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:19:49,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:19:49,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:19:49,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:19:52,016.016 INFO    ] ================================================
[2026-06-05 17:19:52,031.031 INFO    ] Launching Daemon at Fri Jun  5 17:19:52 IST 2026
[2026-06-05 17:19:52,042.042 INFO    ] ================================================
[2026-06-05 17:19:52,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:19:52
[2026-06-05 17:19:53,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:19:53,451.451 INFO    ] Initializing speech engine...
[2026-06-05 17:19:53,473.473 INFO    ] 2026-06-05 17:19:53
[2026-06-05 17:19:53,727.727 INFO    ] 2026-06-05 17:19:53
[2026-06-05 17:19:53,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:19:55,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:19:55,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:19:55,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:19:55,603.603 INFO    ] time= 05/06/2026 17:19:55
[2026-06-05 17:19:55,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:19:55,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:19:55,688.688 INFO    ] No existing commands found in stream
[2026-06-05 17:20:00,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:20:00,702.702 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 17:20:09,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:20:09,187.187 INFO    ] Checking for system updates...
[2026-06-05 17:20:09,233.233 INFO    ] 200
[2026-06-05 17:20:09,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:09,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:20:09,308.308 INFO    ] No update needed
[2026-06-05 17:20:09,310.310 INFO    ] Checking for camera pi updates...
[2026-06-05 17:20:09,344.344 INFO    ] 200
[2026-06-05 17:20:09,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:09,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:20:09,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:20:09,433.433 INFO    ] No camera update needed
[2026-06-05 17:20:09,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:20:09,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:20:09,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:20:09,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:20:11,502.502 INFO    ] ================================================
[2026-06-05 17:20:11,517.517 INFO    ] Launching Daemon at Fri Jun  5 17:20:11 IST 2026
[2026-06-05 17:20:11,528.528 INFO    ] ================================================
[2026-06-05 17:20:12,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:20:12
[2026-06-05 17:20:12,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:20:12,951.951 INFO    ] Initializing speech engine...
[2026-06-05 17:20:12,964.964 INFO    ] 2026-06-05 17:20:12
[2026-06-05 17:20:13,247.247 INFO    ] 2026-06-05 17:20:13
[2026-06-05 17:20:13,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:20:13,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:20:13,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:20:13,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:20:13,734.734 INFO    ] time= 05/06/2026 17:20:13
[2026-06-05 17:20:13,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:20:13,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:20:13,935.935 INFO    ] No existing commands found in stream
[2026-06-05 17:20:18,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:20:18,949.949 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 17:20:19,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:20:19,463.463 INFO    ] Checking for system updates...
[2026-06-05 17:20:19,499.499 INFO    ] 200
[2026-06-05 17:20:19,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:19,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:20:19,557.557 INFO    ] No update needed
[2026-06-05 17:20:19,560.560 INFO    ] Checking for camera pi updates...
[2026-06-05 17:20:19,594.594 INFO    ] 200
[2026-06-05 17:20:19,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:19,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:20:19,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:20:19,690.690 INFO    ] No camera update needed
[2026-06-05 17:20:19,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:20:19,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:20:19,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:20:19,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:20:21,746.746 INFO    ] ================================================
[2026-06-05 17:20:21,762.762 INFO    ] Launching Daemon at Fri Jun  5 17:20:21 IST 2026
[2026-06-05 17:20:21,773.773 INFO    ] ================================================
[2026-06-05 17:20:22,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:20:22
[2026-06-05 17:20:23,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:20:23,338.338 INFO    ] Initializing speech engine...
[2026-06-05 17:20:23,348.348 INFO    ] 2026-06-05 17:20:23
[2026-06-05 17:20:23,626.626 INFO    ] 2026-06-05 17:20:23
[2026-06-05 17:20:23,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:20:25,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:20:25,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:20:25,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:20:25,585.585 INFO    ] time= 05/06/2026 17:20:25
[2026-06-05 17:20:25,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:20:25,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:20:25,668.668 INFO    ] No existing commands found in stream
[2026-06-05 17:20:30,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:20:30,683.683 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 17:20:31,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:20:31,214.214 INFO    ] Checking for system updates...
[2026-06-05 17:20:31,251.251 INFO    ] 200
[2026-06-05 17:20:31,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:31,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:20:31,309.309 INFO    ] No update needed
[2026-06-05 17:20:31,311.311 INFO    ] Checking for camera pi updates...
[2026-06-05 17:20:31,346.346 INFO    ] 200
[2026-06-05 17:20:31,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:31,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:20:31,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:20:31,523.523 INFO    ] No camera update needed
[2026-06-05 17:20:31,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:20:31,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:20:31,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:20:31,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:20:33,582.582 INFO    ] ================================================
[2026-06-05 17:20:33,597.597 INFO    ] Launching Daemon at Fri Jun  5 17:20:33 IST 2026
[2026-06-05 17:20:33,608.608 INFO    ] ================================================
[2026-06-05 17:20:34,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:20:34
[2026-06-05 17:20:34,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:20:35,199.199 INFO    ] Initializing speech engine...
[2026-06-05 17:20:35,208.208 INFO    ] 2026-06-05 17:20:35
[2026-06-05 17:20:35,469.469 INFO    ] 2026-06-05 17:20:35
[2026-06-05 17:20:35,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:20:35,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:20:35,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:20:35,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:20:35,981.981 INFO    ] time= 05/06/2026 17:20:35
[2026-06-05 17:20:36,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:20:36,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:20:36,217.217 INFO    ] No existing commands found in stream
[2026-06-05 17:20:41,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:20:41,246.246 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 17:20:43,229.229 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:20:43,232.232 INFO    ] Checking for system updates...
[2026-06-05 17:20:43,271.271 INFO    ] 200
[2026-06-05 17:20:43,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:43,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:20:43,330.330 INFO    ] No update needed
[2026-06-05 17:20:43,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 17:20:43,369.369 INFO    ] 200
[2026-06-05 17:20:43,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:43,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:20:43,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:20:43,455.455 INFO    ] No camera update needed
[2026-06-05 17:20:43,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:20:43,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:20:43,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:20:43,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:20:45,511.511 INFO    ] ================================================
[2026-06-05 17:20:45,527.527 INFO    ] Launching Daemon at Fri Jun  5 17:20:45 IST 2026
[2026-06-05 17:20:45,538.538 INFO    ] ================================================
[2026-06-05 17:20:46,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:20:46
[2026-06-05 17:20:46,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:20:47,015.015 INFO    ] Initializing speech engine...
[2026-06-05 17:20:47,022.022 INFO    ] 2026-06-05 17:20:47
[2026-06-05 17:20:47,304.304 INFO    ] 2026-06-05 17:20:47
[2026-06-05 17:20:47,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:20:47,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:20:47,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:20:47,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:20:47,721.721 INFO    ] time= 05/06/2026 17:20:47
[2026-06-05 17:20:47,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:20:47,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:20:47,889.889 INFO    ] No existing commands found in stream
[2026-06-05 17:20:52,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:20:52,917.917 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 17:20:55,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:20:55,952.952 INFO    ] Checking for system updates...
[2026-06-05 17:20:55,989.989 INFO    ] 200
[2026-06-05 17:20:55,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:56,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:20:56,047.047 INFO    ] No update needed
[2026-06-05 17:20:56,049.049 INFO    ] Checking for camera pi updates...
[2026-06-05 17:20:56,088.088 INFO    ] 200
[2026-06-05 17:20:56,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:20:56,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:20:56,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:20:56,178.178 INFO    ] No camera update needed
[2026-06-05 17:20:56,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:20:56,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:20:56,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:20:56,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:20:58,234.234 INFO    ] ================================================
[2026-06-05 17:20:58,250.250 INFO    ] Launching Daemon at Fri Jun  5 17:20:58 IST 2026
[2026-06-05 17:20:58,260.260 INFO    ] ================================================
[2026-06-05 17:20:58,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:20:58
[2026-06-05 17:20:59,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:20:59,683.683 INFO    ] Initializing speech engine...
[2026-06-05 17:20:59,692.692 INFO    ] 2026-06-05 17:20:59
[2026-06-05 17:20:59,985.985 INFO    ] 2026-06-05 17:20:59
[2026-06-05 17:21:00,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:21:00,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:21:00,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:21:00,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:21:00,399.399 INFO    ] time= 05/06/2026 17:21:00
[2026-06-05 17:21:00,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:21:00,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:21:00,486.486 INFO    ] No existing commands found in stream
[2026-06-05 17:21:05,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:21:05,514.514 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 17:21:06,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:21:06,424.424 INFO    ] Checking for system updates...
[2026-06-05 17:21:06,460.460 INFO    ] 200
[2026-06-05 17:21:06,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:06,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:21:06,525.525 INFO    ] No update needed
[2026-06-05 17:21:06,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 17:21:06,566.566 INFO    ] 200
[2026-06-05 17:21:06,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:06,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:21:06,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:21:06,641.641 INFO    ] No camera update needed
[2026-06-05 17:21:06,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:21:06,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:21:06,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:21:06,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:21:08,701.701 INFO    ] ================================================
[2026-06-05 17:21:08,717.717 INFO    ] Launching Daemon at Fri Jun  5 17:21:08 IST 2026
[2026-06-05 17:21:08,728.728 INFO    ] ================================================
[2026-06-05 17:21:09,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:21:09
[2026-06-05 17:21:10,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:21:10,268.268 INFO    ] Initializing speech engine...
[2026-06-05 17:21:10,283.283 INFO    ] 2026-06-05 17:21:10
[2026-06-05 17:21:10,572.572 INFO    ] 2026-06-05 17:21:10
[2026-06-05 17:21:10,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:21:10,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:21:10,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:21:10,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:21:10,955.955 INFO    ] time= 05/06/2026 17:21:10
[2026-06-05 17:21:10,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:21:10,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:21:11,079.079 INFO    ] No existing commands found in stream
[2026-06-05 17:21:16,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:21:16,094.094 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 17:21:17,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:21:17,675.675 INFO    ] Checking for system updates...
[2026-06-05 17:21:17,711.711 INFO    ] 200
[2026-06-05 17:21:17,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:17,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:21:17,778.778 INFO    ] No update needed
[2026-06-05 17:21:17,780.780 INFO    ] Checking for camera pi updates...
[2026-06-05 17:21:17,814.814 INFO    ] 200
[2026-06-05 17:21:17,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:17,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:21:17,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:21:17,903.903 INFO    ] No camera update needed
[2026-06-05 17:21:17,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:21:17,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:21:17,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:21:17,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:21:19,963.963 INFO    ] ================================================
[2026-06-05 17:21:19,979.979 INFO    ] Launching Daemon at Fri Jun  5 17:21:19 IST 2026
[2026-06-05 17:21:19,990.990 INFO    ] ================================================
[2026-06-05 17:21:20,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:21:20
[2026-06-05 17:21:21,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:21:21,618.618 INFO    ] Initializing speech engine...
[2026-06-05 17:21:21,628.628 INFO    ] 2026-06-05 17:21:21
[2026-06-05 17:21:21,949.949 INFO    ] 2026-06-05 17:21:21
[2026-06-05 17:21:22,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:21:22,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:21:22,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:21:22,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:21:22,390.390 INFO    ] time= 05/06/2026 17:21:22
[2026-06-05 17:21:22,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:21:22,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:21:22,599.599 INFO    ] No existing commands found in stream
[2026-06-05 17:21:27,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:21:27,633.633 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 17:21:28,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:21:28,040.040 INFO    ] Checking for system updates...
[2026-06-05 17:21:28,076.076 INFO    ] 200
[2026-06-05 17:21:28,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:28,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:21:28,134.134 INFO    ] No update needed
[2026-06-05 17:21:28,137.137 INFO    ] Checking for camera pi updates...
[2026-06-05 17:21:28,172.172 INFO    ] 200
[2026-06-05 17:21:28,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:28,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:21:28,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:21:28,260.260 INFO    ] No camera update needed
[2026-06-05 17:21:28,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:21:28,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:21:28,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:21:28,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:21:30,315.315 INFO    ] ================================================
[2026-06-05 17:21:30,331.331 INFO    ] Launching Daemon at Fri Jun  5 17:21:30 IST 2026
[2026-06-05 17:21:30,343.343 INFO    ] ================================================
[2026-06-05 17:21:30,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:21:30
[2026-06-05 17:21:31,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:21:31,831.831 INFO    ] Initializing speech engine...
[2026-06-05 17:21:31,843.843 INFO    ] 2026-06-05 17:21:31
[2026-06-05 17:21:32,140.140 INFO    ] 2026-06-05 17:21:32
[2026-06-05 17:21:32,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:21:32,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:21:32,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:21:32,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:21:32,675.675 INFO    ] time= 05/06/2026 17:21:32
[2026-06-05 17:21:32,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:21:32,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:21:32,888.888 INFO    ] No existing commands found in stream
[2026-06-05 17:21:37,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:21:37,906.906 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 17:21:38,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:21:38,902.902 INFO    ] Checking for system updates...
[2026-06-05 17:21:38,940.940 INFO    ] 200
[2026-06-05 17:21:38,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:38,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:21:39,002.002 INFO    ] No update needed
[2026-06-05 17:21:39,005.005 INFO    ] Checking for camera pi updates...
[2026-06-05 17:21:39,046.046 INFO    ] 200
[2026-06-05 17:21:39,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:39,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:21:39,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:21:39,146.146 INFO    ] No camera update needed
[2026-06-05 17:21:39,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:21:39,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:21:39,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:21:39,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:21:41,207.207 INFO    ] ================================================
[2026-06-05 17:21:41,223.223 INFO    ] Launching Daemon at Fri Jun  5 17:21:41 IST 2026
[2026-06-05 17:21:41,235.235 INFO    ] ================================================
[2026-06-05 17:21:41,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:21:41
[2026-06-05 17:21:42,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:21:42,709.709 INFO    ] Initializing speech engine...
[2026-06-05 17:21:42,715.715 INFO    ] 2026-06-05 17:21:42
[2026-06-05 17:21:42,964.964 INFO    ] 2026-06-05 17:21:42
[2026-06-05 17:21:43,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:21:43,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:21:43,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:21:43,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:21:43,449.449 INFO    ] time= 05/06/2026 17:21:43
[2026-06-05 17:21:43,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:21:43,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:21:43,654.654 INFO    ] No existing commands found in stream
[2026-06-05 17:21:48,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:21:48,689.689 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 17:21:51,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:21:51,375.375 INFO    ] Checking for system updates...
[2026-06-05 17:21:51,416.416 INFO    ] 200
[2026-06-05 17:21:51,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:51,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:21:51,475.475 INFO    ] No update needed
[2026-06-05 17:21:51,478.478 INFO    ] Checking for camera pi updates...
[2026-06-05 17:21:51,516.516 INFO    ] 200
[2026-06-05 17:21:51,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:21:51,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:21:51,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:21:51,606.606 INFO    ] No camera update needed
[2026-06-05 17:21:51,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:21:51,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:21:51,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:21:51,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:21:53,664.664 INFO    ] ================================================
[2026-06-05 17:21:53,680.680 INFO    ] Launching Daemon at Fri Jun  5 17:21:53 IST 2026
[2026-06-05 17:21:53,691.691 INFO    ] ================================================
[2026-06-05 17:21:54,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:21:54
[2026-06-05 17:21:54,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:21:55,094.094 INFO    ] Initializing speech engine...
[2026-06-05 17:21:55,102.102 INFO    ] 2026-06-05 17:21:55
[2026-06-05 17:21:55,385.385 INFO    ] 2026-06-05 17:21:55
[2026-06-05 17:21:55,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:21:55,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:21:55,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:21:55,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:21:55,845.845 INFO    ] time= 05/06/2026 17:21:55
[2026-06-05 17:21:55,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:21:55,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:21:56,035.035 INFO    ] No existing commands found in stream
[2026-06-05 17:22:01,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:22:01,051.051 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 17:22:05,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:22:05,381.381 INFO    ] Checking for system updates...
[2026-06-05 17:22:05,419.419 INFO    ] 200
[2026-06-05 17:22:05,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:22:05,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:22:05,480.480 INFO    ] No update needed
[2026-06-05 17:22:05,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 17:22:05,518.518 INFO    ] 200
[2026-06-05 17:22:05,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:22:05,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:22:05,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:22:05,615.615 INFO    ] No camera update needed
[2026-06-05 17:22:05,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:22:05,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:22:05,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:22:05,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:22:07,676.676 INFO    ] ================================================
[2026-06-05 17:22:07,692.692 INFO    ] Launching Daemon at Fri Jun  5 17:22:07 IST 2026
[2026-06-05 17:22:07,703.703 INFO    ] ================================================
[2026-06-05 17:22:08,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:22:08
[2026-06-05 17:22:08,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:22:09,165.165 INFO    ] Initializing speech engine...
[2026-06-05 17:22:09,172.172 INFO    ] 2026-06-05 17:22:09
[2026-06-05 17:22:09,434.434 INFO    ] 2026-06-05 17:22:09
[2026-06-05 17:22:09,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:22:09,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:22:09,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:22:09,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:22:09,901.901 INFO    ] time= 05/06/2026 17:22:09
[2026-06-05 17:22:09,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:22:09,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:22:10,104.104 INFO    ] No existing commands found in stream
[2026-06-05 17:22:15,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:22:15,129.129 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 17:22:16,070.070 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:22:16,073.073 INFO    ] Checking for system updates...
[2026-06-05 17:22:16,117.117 INFO    ] 200
[2026-06-05 17:22:16,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:22:16,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:22:16,177.177 INFO    ] No update needed
[2026-06-05 17:22:16,179.179 INFO    ] Checking for camera pi updates...
[2026-06-05 17:22:16,213.213 INFO    ] 200
[2026-06-05 17:22:16,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:22:16,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:22:16,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:22:16,286.286 INFO    ] No camera update needed
[2026-06-05 17:22:16,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:22:16,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:22:16,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:22:16,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:22:18,343.343 INFO    ] ================================================
[2026-06-05 17:22:18,358.358 INFO    ] Launching Daemon at Fri Jun  5 17:22:18 IST 2026
[2026-06-05 17:22:18,369.369 INFO    ] ================================================
[2026-06-05 17:22:18,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:22:18
[2026-06-05 17:22:19,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:22:19,929.929 INFO    ] Initializing speech engine...
[2026-06-05 17:22:19,953.953 INFO    ] 2026-06-05 17:22:19
[2026-06-05 17:22:20,234.234 INFO    ] 2026-06-05 17:22:20
[2026-06-05 17:22:20,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:22:20,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:22:20,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:22:21,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:22:21,675.675 INFO    ] time= 05/06/2026 17:22:21
[2026-06-05 17:22:21,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:22:21,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:22:21,753.753 INFO    ] No existing commands found in stream
[2026-06-05 17:22:26,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:22:26,767.767 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 17:22:29,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:22:29,825.825 INFO    ] Checking for system updates...
[2026-06-05 17:22:29,862.862 INFO    ] 200
[2026-06-05 17:22:29,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:22:29,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:22:29,927.927 INFO    ] No update needed
[2026-06-05 17:22:29,930.930 INFO    ] Checking for camera pi updates...
[2026-06-05 17:22:29,964.964 INFO    ] 200
[2026-06-05 17:22:29,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:22:30,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:22:30,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:22:30,054.054 INFO    ] No camera update needed
[2026-06-05 17:22:30,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:22:30,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:22:30,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:22:30,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:22:32,114.114 INFO    ] ================================================
[2026-06-05 17:22:32,137.137 INFO    ] Launching Daemon at Fri Jun  5 17:22:32 IST 2026
[2026-06-05 17:22:32,150.150 INFO    ] ================================================
[2026-06-05 17:22:32,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:22:32
[2026-06-05 17:22:33,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:22:33,708.708 INFO    ] Initializing speech engine...
[2026-06-05 17:22:33,717.717 INFO    ] 2026-06-05 17:22:33
[2026-06-05 17:22:33,967.967 INFO    ] 2026-06-05 17:22:33
[2026-06-05 17:22:34,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:22:34,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:22:34,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:22:34,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:22:34,346.346 INFO    ] time= 05/06/2026 17:22:34
[2026-06-05 17:22:34,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:22:34,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:22:34,539.539 INFO    ] No existing commands found in stream
[2026-06-05 17:22:39,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:22:39,560.560 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 17:22:43,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:22:43,100.100 INFO    ] Checking for system updates...
[2026-06-05 17:22:43,136.136 INFO    ] 200
[2026-06-05 17:22:43,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:22:43,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:22:43,203.203 INFO    ] No update needed
[2026-06-05 17:22:43,205.205 INFO    ] Checking for camera pi updates...
[2026-06-05 17:22:43,240.240 INFO    ] 200
[2026-06-05 17:22:43,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:22:43,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:22:43,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:22:43,443.443 INFO    ] No camera update needed
[2026-06-05 17:22:43,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:22:43,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:22:43,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:22:43,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:22:45,505.505 INFO    ] ================================================
[2026-06-05 17:22:45,520.520 INFO    ] Launching Daemon at Fri Jun  5 17:22:45 IST 2026
[2026-06-05 17:22:45,530.530 INFO    ] ================================================
[2026-06-05 17:22:46,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:22:46
[2026-06-05 17:22:46,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:22:46,938.938 INFO    ] Initializing speech engine...
[2026-06-05 17:22:46,946.946 INFO    ] 2026-06-05 17:22:46
[2026-06-05 17:22:47,243.243 INFO    ] 2026-06-05 17:22:47
[2026-06-05 17:22:47,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:22:47,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:22:47,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:22:47,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:22:47,623.623 INFO    ] time= 05/06/2026 17:22:47
[2026-06-05 17:22:47,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:22:47,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:22:47,751.751 INFO    ] No existing commands found in stream
[2026-06-05 17:22:52,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:22:52,790.790 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 17:22:55,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:22:55,576.576 INFO    ] Checking for system updates...
[2026-06-05 17:22:55,612.612 INFO    ] 200
[2026-06-05 17:22:55,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 17:22:55,617.617 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 17:22:55,620.620 INFO    ] Checking for camera pi updates...
[2026-06-05 17:22:55,664.664 INFO    ] 200
[2026-06-05 17:22:55,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 17:22:55,669.669 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 17:22:55,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:22:55,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:22:55,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:22:55,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:22:57,729.729 INFO    ] ================================================
[2026-06-05 17:22:57,744.744 INFO    ] Launching Daemon at Fri Jun  5 17:22:57 IST 2026
[2026-06-05 17:22:57,755.755 INFO    ] ================================================
[2026-06-05 17:22:58,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:22:58
[2026-06-05 17:22:58,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:22:59,265.265 INFO    ] Initializing speech engine...
[2026-06-05 17:22:59,277.277 INFO    ] 2026-06-05 17:22:59
[2026-06-05 17:22:59,528.528 INFO    ] 2026-06-05 17:22:59
[2026-06-05 17:22:59,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:22:59,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:22:59,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:22:59,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:22:59,984.984 INFO    ] time= 05/06/2026 17:22:59
[2026-06-05 17:23:00,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:23:00,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:23:00,226.226 INFO    ] No existing commands found in stream
[2026-06-05 17:23:05,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:23:05,254.254 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 17:23:07,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:23:07,370.370 INFO    ] Checking for system updates...
[2026-06-05 17:23:07,408.408 INFO    ] 200
[2026-06-05 17:23:07,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:07,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:23:07,470.470 INFO    ] No update needed
[2026-06-05 17:23:07,472.472 INFO    ] Checking for camera pi updates...
[2026-06-05 17:23:07,510.510 INFO    ] 200
[2026-06-05 17:23:07,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:07,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:23:07,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:23:07,593.593 INFO    ] No camera update needed
[2026-06-05 17:23:07,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:23:07,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:23:07,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:23:07,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:23:09,653.653 INFO    ] ================================================
[2026-06-05 17:23:09,669.669 INFO    ] Launching Daemon at Fri Jun  5 17:23:09 IST 2026
[2026-06-05 17:23:09,681.681 INFO    ] ================================================
[2026-06-05 17:23:10,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:23:10
[2026-06-05 17:23:10,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:23:11,098.098 INFO    ] Initializing speech engine...
[2026-06-05 17:23:11,114.114 INFO    ] 2026-06-05 17:23:11
[2026-06-05 17:23:11,397.397 INFO    ] 2026-06-05 17:23:11
[2026-06-05 17:23:11,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:23:11,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:23:11,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:23:11,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:23:11,809.809 INFO    ] time= 05/06/2026 17:23:11
[2026-06-05 17:23:11,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:23:11,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:23:11,901.901 INFO    ] No existing commands found in stream
[2026-06-05 17:23:16,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:23:16,934.934 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 17:23:17,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:23:17,675.675 INFO    ] Checking for system updates...
[2026-06-05 17:23:17,713.713 INFO    ] 200
[2026-06-05 17:23:17,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:17,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:23:17,772.772 INFO    ] No update needed
[2026-06-05 17:23:17,774.774 INFO    ] Checking for camera pi updates...
[2026-06-05 17:23:17,808.808 INFO    ] 200
[2026-06-05 17:23:17,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:17,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:23:17,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:23:17,910.910 INFO    ] No camera update needed
[2026-06-05 17:23:17,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:23:17,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:23:17,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:23:17,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:23:19,965.965 INFO    ] ================================================
[2026-06-05 17:23:19,980.980 INFO    ] Launching Daemon at Fri Jun  5 17:23:19 IST 2026
[2026-06-05 17:23:19,992.992 INFO    ] ================================================
[2026-06-05 17:23:20,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:23:20
[2026-06-05 17:23:21,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:23:21,460.460 INFO    ] Initializing speech engine...
[2026-06-05 17:23:21,467.467 INFO    ] 2026-06-05 17:23:21
[2026-06-05 17:23:21,729.729 INFO    ] 2026-06-05 17:23:21
[2026-06-05 17:23:21,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:23:22,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:23:22,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:23:22,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:23:22,200.200 INFO    ] time= 05/06/2026 17:23:22
[2026-06-05 17:23:22,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:23:22,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:23:22,431.431 INFO    ] No existing commands found in stream
[2026-06-05 17:23:27,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:23:27,454.454 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 17:23:30,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:23:30,262.262 INFO    ] Checking for system updates...
[2026-06-05 17:23:30,298.298 INFO    ] 200
[2026-06-05 17:23:30,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:30,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:23:30,358.358 INFO    ] No update needed
[2026-06-05 17:23:30,360.360 INFO    ] Checking for camera pi updates...
[2026-06-05 17:23:30,397.397 INFO    ] 200
[2026-06-05 17:23:30,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:30,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:23:30,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:23:30,487.487 INFO    ] No camera update needed
[2026-06-05 17:23:30,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:23:30,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:23:30,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:23:30,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:23:32,546.546 INFO    ] ================================================
[2026-06-05 17:23:32,563.563 INFO    ] Launching Daemon at Fri Jun  5 17:23:32 IST 2026
[2026-06-05 17:23:32,574.574 INFO    ] ================================================
[2026-06-05 17:23:33,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:23:33
[2026-06-05 17:23:33,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:23:34,062.062 INFO    ] Initializing speech engine...
[2026-06-05 17:23:34,069.069 INFO    ] 2026-06-05 17:23:34
[2026-06-05 17:23:34,327.327 INFO    ] 2026-06-05 17:23:34
[2026-06-05 17:23:34,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:23:34,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:23:34,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:23:34,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:23:34,762.762 INFO    ] time= 05/06/2026 17:23:34
[2026-06-05 17:23:34,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:23:34,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:23:34,964.964 INFO    ] No existing commands found in stream
[2026-06-05 17:23:39,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:23:40,000.000 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 17:23:42,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:23:42,697.697 INFO    ] Checking for system updates...
[2026-06-05 17:23:42,735.735 INFO    ] 200
[2026-06-05 17:23:42,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:42,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:23:42,799.799 INFO    ] No update needed
[2026-06-05 17:23:42,802.802 INFO    ] Checking for camera pi updates...
[2026-06-05 17:23:42,836.836 INFO    ] 200
[2026-06-05 17:23:42,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:42,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:23:42,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:23:42,932.932 INFO    ] No camera update needed
[2026-06-05 17:23:42,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:23:42,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:23:42,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:23:42,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:23:44,989.989 INFO    ] ================================================
[2026-06-05 17:23:45,004.004 INFO    ] Launching Daemon at Fri Jun  5 17:23:44 IST 2026
[2026-06-05 17:23:45,015.015 INFO    ] ================================================
[2026-06-05 17:23:45,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:23:45
[2026-06-05 17:23:46,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:23:46,617.617 INFO    ] Initializing speech engine...
[2026-06-05 17:23:46,627.627 INFO    ] 2026-06-05 17:23:46
[2026-06-05 17:23:46,899.899 INFO    ] 2026-06-05 17:23:46
[2026-06-05 17:23:46,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:23:47,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:23:47,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:23:47,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:23:47,407.407 INFO    ] time= 05/06/2026 17:23:47
[2026-06-05 17:23:47,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:23:47,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:23:47,608.608 INFO    ] No existing commands found in stream
[2026-06-05 17:23:52,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:23:52,631.631 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-05 17:23:56,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:23:56,066.066 INFO    ] Checking for system updates...
[2026-06-05 17:23:56,104.104 INFO    ] 200
[2026-06-05 17:23:56,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:56,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:23:56,165.165 INFO    ] No update needed
[2026-06-05 17:23:56,168.168 INFO    ] Checking for camera pi updates...
[2026-06-05 17:23:56,207.207 INFO    ] 200
[2026-06-05 17:23:56,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:23:56,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:23:56,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:23:56,302.302 INFO    ] No camera update needed
[2026-06-05 17:23:56,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:23:56,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:23:56,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:23:56,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:23:58,359.359 INFO    ] ================================================
[2026-06-05 17:23:58,375.375 INFO    ] Launching Daemon at Fri Jun  5 17:23:58 IST 2026
[2026-06-05 17:23:58,386.386 INFO    ] ================================================
[2026-06-05 17:23:59,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:23:59
[2026-06-05 17:23:59,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:23:59,871.871 INFO    ] Initializing speech engine...
[2026-06-05 17:23:59,886.886 INFO    ] 2026-06-05 17:23:59
[2026-06-05 17:24:00,172.172 INFO    ] 2026-06-05 17:24:00
[2026-06-05 17:24:00,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:24:00,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:24:00,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:24:00,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:24:00,590.590 INFO    ] time= 05/06/2026 17:24:00
[2026-06-05 17:24:00,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:24:00,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:24:00,784.784 INFO    ] No existing commands found in stream
[2026-06-05 17:24:05,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:24:05,825.825 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 17:24:08,206.206 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:24:08,209.209 INFO    ] Checking for system updates...
[2026-06-05 17:24:08,247.247 INFO    ] 200
[2026-06-05 17:24:08,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:08,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:24:08,307.307 INFO    ] No update needed
[2026-06-05 17:24:08,310.310 INFO    ] Checking for camera pi updates...
[2026-06-05 17:24:08,349.349 INFO    ] 200
[2026-06-05 17:24:08,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:08,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:24:08,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:24:08,427.427 INFO    ] No camera update needed
[2026-06-05 17:24:08,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:24:08,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:24:08,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:24:08,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:24:10,488.488 INFO    ] ================================================
[2026-06-05 17:24:10,504.504 INFO    ] Launching Daemon at Fri Jun  5 17:24:10 IST 2026
[2026-06-05 17:24:10,514.514 INFO    ] ================================================
[2026-06-05 17:24:11,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:24:11
[2026-06-05 17:24:11,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:24:12,175.175 INFO    ] Initializing speech engine...
[2026-06-05 17:24:12,189.189 INFO    ] 2026-06-05 17:24:12
[2026-06-05 17:24:12,500.500 INFO    ] 2026-06-05 17:24:12
[2026-06-05 17:24:12,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:24:12,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:24:12,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:24:12,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:24:13,006.006 INFO    ] time= 05/06/2026 17:24:12
[2026-06-05 17:24:13,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:24:13,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:24:13,162.162 INFO    ] No existing commands found in stream
[2026-06-05 17:24:18,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:24:18,185.185 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 17:24:22,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:24:22,158.158 INFO    ] Checking for system updates...
[2026-06-05 17:24:22,200.200 INFO    ] 200
[2026-06-05 17:24:22,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:22,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:24:22,257.257 INFO    ] No update needed
[2026-06-05 17:24:22,260.260 INFO    ] Checking for camera pi updates...
[2026-06-05 17:24:22,294.294 INFO    ] 200
[2026-06-05 17:24:22,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:22,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:24:22,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:24:22,381.381 INFO    ] No camera update needed
[2026-06-05 17:24:22,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:24:22,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:24:22,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:24:22,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:24:24,438.438 INFO    ] ================================================
[2026-06-05 17:24:24,453.453 INFO    ] Launching Daemon at Fri Jun  5 17:24:24 IST 2026
[2026-06-05 17:24:24,464.464 INFO    ] ================================================
[2026-06-05 17:24:25,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:24:25
[2026-06-05 17:24:25,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:24:25,890.890 INFO    ] Initializing speech engine...
[2026-06-05 17:24:25,904.904 INFO    ] 2026-06-05 17:24:25
[2026-06-05 17:24:26,169.169 INFO    ] 2026-06-05 17:24:26
[2026-06-05 17:24:26,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:24:26,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:24:26,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:24:26,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:24:26,655.655 INFO    ] time= 05/06/2026 17:24:26
[2026-06-05 17:24:26,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:24:26,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:24:26,860.860 INFO    ] No existing commands found in stream
[2026-06-05 17:24:31,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:24:31,890.890 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 17:24:35,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:24:35,441.441 INFO    ] Checking for system updates...
[2026-06-05 17:24:35,477.477 INFO    ] 200
[2026-06-05 17:24:35,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:35,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:24:35,536.536 INFO    ] No update needed
[2026-06-05 17:24:35,539.539 INFO    ] Checking for camera pi updates...
[2026-06-05 17:24:35,573.573 INFO    ] 200
[2026-06-05 17:24:35,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:35,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:24:35,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:24:35,659.659 INFO    ] No camera update needed
[2026-06-05 17:24:35,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:24:35,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:24:35,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:24:35,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:24:37,716.716 INFO    ] ================================================
[2026-06-05 17:24:37,731.731 INFO    ] Launching Daemon at Fri Jun  5 17:24:37 IST 2026
[2026-06-05 17:24:37,742.742 INFO    ] ================================================
[2026-06-05 17:24:38,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:24:38
[2026-06-05 17:24:38,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:24:39,162.162 INFO    ] Initializing speech engine...
[2026-06-05 17:24:39,171.171 INFO    ] 2026-06-05 17:24:39
[2026-06-05 17:24:39,423.423 INFO    ] 2026-06-05 17:24:39
[2026-06-05 17:24:39,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:24:39,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:24:39,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:24:39,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:24:39,923.923 INFO    ] time= 05/06/2026 17:24:39
[2026-06-05 17:24:39,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:24:39,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:24:40,085.085 INFO    ] No existing commands found in stream
[2026-06-05 17:24:45,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:24:45,098.098 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 17:24:45,523.523 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:24:45,526.526 INFO    ] Checking for system updates...
[2026-06-05 17:24:45,562.562 INFO    ] 200
[2026-06-05 17:24:45,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:45,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:24:45,622.622 INFO    ] No update needed
[2026-06-05 17:24:45,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 17:24:45,658.658 INFO    ] 200
[2026-06-05 17:24:45,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:45,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:24:45,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:24:45,868.868 INFO    ] No camera update needed
[2026-06-05 17:24:45,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:24:45,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:24:45,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:24:45,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:24:47,923.923 INFO    ] ================================================
[2026-06-05 17:24:47,938.938 INFO    ] Launching Daemon at Fri Jun  5 17:24:47 IST 2026
[2026-06-05 17:24:47,948.948 INFO    ] ================================================
[2026-06-05 17:24:48,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:24:48
[2026-06-05 17:24:49,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:24:49,389.389 INFO    ] Initializing speech engine...
[2026-06-05 17:24:49,396.396 INFO    ] 2026-06-05 17:24:49
[2026-06-05 17:24:49,672.672 INFO    ] 2026-06-05 17:24:49
[2026-06-05 17:24:49,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:24:49,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:24:49,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:24:50,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:24:50,190.190 INFO    ] time= 05/06/2026 17:24:50
[2026-06-05 17:24:50,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:24:50,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:24:50,385.385 INFO    ] No existing commands found in stream
[2026-06-05 17:24:55,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:24:55,401.401 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 17:24:59,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:24:59,434.434 INFO    ] Checking for system updates...
[2026-06-05 17:24:59,471.471 INFO    ] 200
[2026-06-05 17:24:59,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:59,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:24:59,537.537 INFO    ] No update needed
[2026-06-05 17:24:59,539.539 INFO    ] Checking for camera pi updates...
[2026-06-05 17:24:59,573.573 INFO    ] 200
[2026-06-05 17:24:59,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:24:59,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:24:59,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:24:59,669.669 INFO    ] No camera update needed
[2026-06-05 17:24:59,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:24:59,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:24:59,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:24:59,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:25:01,757.757 INFO    ] ================================================
[2026-06-05 17:25:01,819.819 INFO    ] Launching Daemon at Fri Jun  5 17:25:01 IST 2026
[2026-06-05 17:25:01,850.850 INFO    ] ================================================
[2026-06-05 17:25:02,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:25:02
[2026-06-05 17:25:03,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:25:03,557.557 INFO    ] Initializing speech engine...
[2026-06-05 17:25:03,566.566 INFO    ] 2026-06-05 17:25:03
[2026-06-05 17:25:03,824.824 INFO    ] 2026-06-05 17:25:03
[2026-06-05 17:25:03,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:25:04,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:25:04,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:25:04,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:25:04,289.289 INFO    ] time= 05/06/2026 17:25:04
[2026-06-05 17:25:04,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:25:04,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:25:04,528.528 INFO    ] No existing commands found in stream
[2026-06-05 17:25:09,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:25:09,545.545 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 17:25:11,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:25:11,306.306 INFO    ] Checking for system updates...
[2026-06-05 17:25:11,346.346 INFO    ] 200
[2026-06-05 17:25:11,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:25:11,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:25:11,406.406 INFO    ] No update needed
[2026-06-05 17:25:11,409.409 INFO    ] Checking for camera pi updates...
[2026-06-05 17:25:11,443.443 INFO    ] 200
[2026-06-05 17:25:11,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:25:11,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:25:11,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:25:11,539.539 INFO    ] No camera update needed
[2026-06-05 17:25:11,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:25:11,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:25:11,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:25:11,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:25:13,596.596 INFO    ] ================================================
[2026-06-05 17:25:13,612.612 INFO    ] Launching Daemon at Fri Jun  5 17:25:13 IST 2026
[2026-06-05 17:25:13,622.622 INFO    ] ================================================
[2026-06-05 17:25:14,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:25:14
[2026-06-05 17:25:14,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:25:15,057.057 INFO    ] Initializing speech engine...
[2026-06-05 17:25:15,061.061 INFO    ] 2026-06-05 17:25:15
[2026-06-05 17:25:15,313.313 INFO    ] 2026-06-05 17:25:15
[2026-06-05 17:25:15,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:25:15,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:25:15,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:25:15,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:25:15,695.695 INFO    ] time= 05/06/2026 17:25:15
[2026-06-05 17:25:15,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:25:15,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:25:15,894.894 INFO    ] No existing commands found in stream
[2026-06-05 17:25:20,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:25:20,908.908 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 17:25:25,727.727 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:25:25,729.729 INFO    ] Checking for system updates...
[2026-06-05 17:25:25,769.769 INFO    ] 200
[2026-06-05 17:25:25,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:25:25,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:25:25,827.827 INFO    ] No update needed
[2026-06-05 17:25:25,829.829 INFO    ] Checking for camera pi updates...
[2026-06-05 17:25:25,862.862 INFO    ] 200
[2026-06-05 17:25:25,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:25:25,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:25:25,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:25:25,957.957 INFO    ] No camera update needed
[2026-06-05 17:25:25,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:25:25,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:25:25,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:25:25,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:25:28,014.014 INFO    ] ================================================
[2026-06-05 17:25:28,030.030 INFO    ] Launching Daemon at Fri Jun  5 17:25:28 IST 2026
[2026-06-05 17:25:28,040.040 INFO    ] ================================================
[2026-06-05 17:25:28,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:25:28
[2026-06-05 17:25:29,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:25:29,552.552 INFO    ] Initializing speech engine...
[2026-06-05 17:25:29,566.566 INFO    ] 2026-06-05 17:25:29
[2026-06-05 17:25:29,874.874 INFO    ] 2026-06-05 17:25:29
[2026-06-05 17:25:29,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:25:30,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:25:30,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:25:30,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:25:30,389.389 INFO    ] time= 05/06/2026 17:25:30
[2026-06-05 17:25:30,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:25:30,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:25:30,543.543 INFO    ] No existing commands found in stream
[2026-06-05 17:25:35,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:25:35,565.565 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 17:25:37,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:25:37,381.381 INFO    ] Checking for system updates...
[2026-06-05 17:25:37,422.422 INFO    ] 200
[2026-06-05 17:25:37,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:25:37,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:25:37,489.489 INFO    ] No update needed
[2026-06-05 17:25:37,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 17:25:37,527.527 INFO    ] 200
[2026-06-05 17:25:37,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:25:37,572.572 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:25:37,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:25:37,621.621 INFO    ] No camera update needed
[2026-06-05 17:25:37,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:25:37,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:25:37,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:25:37,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:25:39,680.680 INFO    ] ================================================
[2026-06-05 17:25:39,696.696 INFO    ] Launching Daemon at Fri Jun  5 17:25:39 IST 2026
[2026-06-05 17:25:39,707.707 INFO    ] ================================================
[2026-06-05 17:25:40,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:25:40
[2026-06-05 17:25:40,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:25:41,119.119 INFO    ] Initializing speech engine...
[2026-06-05 17:25:41,142.142 INFO    ] 2026-06-05 17:25:41
[2026-06-05 17:25:41,398.398 INFO    ] 2026-06-05 17:25:41
[2026-06-05 17:25:41,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:25:41,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:25:41,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:25:41,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:25:41,881.881 INFO    ] time= 05/06/2026 17:25:41
[2026-06-05 17:25:41,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:25:41,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:25:42,119.119 INFO    ] No existing commands found in stream
[2026-06-05 17:25:47,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:25:47,142.142 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 17:25:48,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:25:48,282.282 INFO    ] Checking for system updates...
[2026-06-05 17:25:48,318.318 INFO    ] 200
[2026-06-05 17:25:48,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:25:48,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:25:48,385.385 INFO    ] No update needed
[2026-06-05 17:25:48,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 17:25:48,422.422 INFO    ] 200
[2026-06-05 17:25:48,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:25:48,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:25:48,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:25:48,514.514 INFO    ] No camera update needed
[2026-06-05 17:25:48,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:25:48,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:25:48,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:25:48,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:25:50,571.571 INFO    ] ================================================
[2026-06-05 17:25:50,586.586 INFO    ] Launching Daemon at Fri Jun  5 17:25:50 IST 2026
[2026-06-05 17:25:50,597.597 INFO    ] ================================================
[2026-06-05 17:25:51,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:25:51
[2026-06-05 17:25:51,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:25:52,011.011 INFO    ] Initializing speech engine...
[2026-06-05 17:25:52,035.035 INFO    ] 2026-06-05 17:25:52
[2026-06-05 17:25:52,306.306 INFO    ] 2026-06-05 17:25:52
[2026-06-05 17:25:52,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:25:52,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:25:52,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:25:52,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:25:52,694.694 INFO    ] time= 05/06/2026 17:25:52
[2026-06-05 17:25:52,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:25:52,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:25:52,803.803 INFO    ] No existing commands found in stream
[2026-06-05 17:25:57,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:25:57,841.841 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 17:26:01,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:26:01,700.700 INFO    ] Checking for system updates...
[2026-06-05 17:26:01,743.743 INFO    ] 200
[2026-06-05 17:26:01,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:01,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:26:01,809.809 INFO    ] No update needed
[2026-06-05 17:26:01,811.811 INFO    ] Checking for camera pi updates...
[2026-06-05 17:26:01,852.852 INFO    ] 200
[2026-06-05 17:26:01,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:01,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:26:01,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:26:01,950.950 INFO    ] No camera update needed
[2026-06-05 17:26:01,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:26:01,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:26:01,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:26:01,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:26:04,015.015 INFO    ] ================================================
[2026-06-05 17:26:04,031.031 INFO    ] Launching Daemon at Fri Jun  5 17:26:04 IST 2026
[2026-06-05 17:26:04,042.042 INFO    ] ================================================
[2026-06-05 17:26:04,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:26:04
[2026-06-05 17:26:05,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:26:05,704.704 INFO    ] Initializing speech engine...
[2026-06-05 17:26:05,716.716 INFO    ] 2026-06-05 17:26:05
[2026-06-05 17:26:06,026.026 INFO    ] 2026-06-05 17:26:05
[2026-06-05 17:26:06,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:26:06,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:26:06,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:26:06,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:26:06,538.538 INFO    ] time= 05/06/2026 17:26:06
[2026-06-05 17:26:06,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:26:06,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:26:06,696.696 INFO    ] No existing commands found in stream
[2026-06-05 17:26:11,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:26:11,728.728 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 17:26:15,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:26:15,675.675 INFO    ] Checking for system updates...
[2026-06-05 17:26:15,712.712 INFO    ] 200
[2026-06-05 17:26:15,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:15,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:26:15,772.772 INFO    ] No update needed
[2026-06-05 17:26:15,775.775 INFO    ] Checking for camera pi updates...
[2026-06-05 17:26:15,810.810 INFO    ] 200
[2026-06-05 17:26:15,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:15,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:26:15,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:26:15,900.900 INFO    ] No camera update needed
[2026-06-05 17:26:15,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:26:15,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:26:15,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:26:15,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:26:17,959.959 INFO    ] ================================================
[2026-06-05 17:26:17,974.974 INFO    ] Launching Daemon at Fri Jun  5 17:26:17 IST 2026
[2026-06-05 17:26:17,985.985 INFO    ] ================================================
[2026-06-05 17:26:18,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:26:18
[2026-06-05 17:26:19,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:26:19,424.424 INFO    ] Initializing speech engine...
[2026-06-05 17:26:19,429.429 INFO    ] 2026-06-05 17:26:19
[2026-06-05 17:26:19,687.687 INFO    ] 2026-06-05 17:26:19
[2026-06-05 17:26:19,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:26:19,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:26:20,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:26:20,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:26:20,229.229 INFO    ] time= 05/06/2026 17:26:20
[2026-06-05 17:26:20,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:26:20,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:26:20,360.360 INFO    ] No existing commands found in stream
[2026-06-05 17:26:25,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:26:25,388.388 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 17:26:27,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:26:27,448.448 INFO    ] Checking for system updates...
[2026-06-05 17:26:27,488.488 INFO    ] 200
[2026-06-05 17:26:27,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:27,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:26:27,549.549 INFO    ] No update needed
[2026-06-05 17:26:27,551.551 INFO    ] Checking for camera pi updates...
[2026-06-05 17:26:27,590.590 INFO    ] 200
[2026-06-05 17:26:27,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:27,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:26:27,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:26:27,684.684 INFO    ] No camera update needed
[2026-06-05 17:26:27,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:26:27,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:26:27,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:26:27,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:26:29,740.740 INFO    ] ================================================
[2026-06-05 17:26:29,755.755 INFO    ] Launching Daemon at Fri Jun  5 17:26:29 IST 2026
[2026-06-05 17:26:29,766.766 INFO    ] ================================================
[2026-06-05 17:26:30,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:26:30
[2026-06-05 17:26:30,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:26:31,252.252 INFO    ] Initializing speech engine...
[2026-06-05 17:26:31,257.257 INFO    ] 2026-06-05 17:26:31
[2026-06-05 17:26:31,531.531 INFO    ] 2026-06-05 17:26:31
[2026-06-05 17:26:31,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:26:31,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:26:31,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:26:31,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:26:31,964.964 INFO    ] time= 05/06/2026 17:26:31
[2026-06-05 17:26:31,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:26:32,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:26:32,164.164 INFO    ] No existing commands found in stream
[2026-06-05 17:26:37,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:26:37,193.193 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 17:26:39,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:26:39,011.011 INFO    ] Checking for system updates...
[2026-06-05 17:26:39,050.050 INFO    ] 200
[2026-06-05 17:26:39,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:39,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:26:39,108.108 INFO    ] No update needed
[2026-06-05 17:26:39,110.110 INFO    ] Checking for camera pi updates...
[2026-06-05 17:26:39,148.148 INFO    ] 200
[2026-06-05 17:26:39,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:39,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:26:39,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:26:39,237.237 INFO    ] No camera update needed
[2026-06-05 17:26:39,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:26:39,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:26:39,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:26:39,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:26:41,293.293 INFO    ] ================================================
[2026-06-05 17:26:41,308.308 INFO    ] Launching Daemon at Fri Jun  5 17:26:41 IST 2026
[2026-06-05 17:26:41,319.319 INFO    ] ================================================
[2026-06-05 17:26:41,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:26:41
[2026-06-05 17:26:42,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:26:42,784.784 INFO    ] Initializing speech engine...
[2026-06-05 17:26:42,793.793 INFO    ] 2026-06-05 17:26:42
[2026-06-05 17:26:43,055.055 INFO    ] 2026-06-05 17:26:43
[2026-06-05 17:26:43,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:26:43,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:26:43,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:26:43,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:26:43,529.529 INFO    ] time= 05/06/2026 17:26:43
[2026-06-05 17:26:43,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:26:43,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:26:43,736.736 INFO    ] No existing commands found in stream
[2026-06-05 17:26:48,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:26:48,764.764 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 17:26:52,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:26:52,011.011 INFO    ] Checking for system updates...
[2026-06-05 17:26:52,047.047 INFO    ] 200
[2026-06-05 17:26:52,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:52,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:26:52,104.104 INFO    ] No update needed
[2026-06-05 17:26:52,107.107 INFO    ] Checking for camera pi updates...
[2026-06-05 17:26:52,141.141 INFO    ] 200
[2026-06-05 17:26:52,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:26:52,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:26:52,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:26:52,330.330 INFO    ] No camera update needed
[2026-06-05 17:26:52,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:26:52,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:26:52,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:26:52,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:26:54,386.386 INFO    ] ================================================
[2026-06-05 17:26:54,401.401 INFO    ] Launching Daemon at Fri Jun  5 17:26:54 IST 2026
[2026-06-05 17:26:54,411.411 INFO    ] ================================================
[2026-06-05 17:26:55,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:26:54
[2026-06-05 17:26:55,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:26:55,883.883 INFO    ] Initializing speech engine...
[2026-06-05 17:26:55,908.908 INFO    ] 2026-06-05 17:26:55
[2026-06-05 17:26:56,189.189 INFO    ] 2026-06-05 17:26:56
[2026-06-05 17:26:56,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:26:56,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:26:56,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:26:56,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:26:56,613.613 INFO    ] time= 05/06/2026 17:26:56
[2026-06-05 17:26:56,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:26:56,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:26:56,701.701 INFO    ] No existing commands found in stream
[2026-06-05 17:27:01,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:27:01,742.742 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 17:27:05,834.834 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:27:05,837.837 INFO    ] Checking for system updates...
[2026-06-05 17:27:05,875.875 INFO    ] 200
[2026-06-05 17:27:05,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:05,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:27:05,937.937 INFO    ] No update needed
[2026-06-05 17:27:05,939.939 INFO    ] Checking for camera pi updates...
[2026-06-05 17:27:05,978.978 INFO    ] 200
[2026-06-05 17:27:05,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:06,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:27:06,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:27:06,066.066 INFO    ] No camera update needed
[2026-06-05 17:27:06,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:27:06,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:27:06,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:27:06,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:27:08,123.123 INFO    ] ================================================
[2026-06-05 17:27:08,139.139 INFO    ] Launching Daemon at Fri Jun  5 17:27:08 IST 2026
[2026-06-05 17:27:08,149.149 INFO    ] ================================================
[2026-06-05 17:27:08,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:27:08
[2026-06-05 17:27:09,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:27:09,751.751 INFO    ] Initializing speech engine...
[2026-06-05 17:27:09,763.763 INFO    ] 2026-06-05 17:27:09
[2026-06-05 17:27:10,071.071 INFO    ] 2026-06-05 17:27:10
[2026-06-05 17:27:10,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:27:10,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:27:10,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:27:10,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:27:10,580.580 INFO    ] time= 05/06/2026 17:27:10
[2026-06-05 17:27:10,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:27:10,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:27:10,732.732 INFO    ] No existing commands found in stream
[2026-06-05 17:27:15,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:27:15,751.751 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 17:27:17,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:27:17,503.503 INFO    ] Checking for system updates...
[2026-06-05 17:27:17,543.543 INFO    ] 200
[2026-06-05 17:27:17,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:17,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:27:17,603.603 INFO    ] No update needed
[2026-06-05 17:27:17,606.606 INFO    ] Checking for camera pi updates...
[2026-06-05 17:27:17,644.644 INFO    ] 200
[2026-06-05 17:27:17,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:17,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:27:17,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:27:17,739.739 INFO    ] No camera update needed
[2026-06-05 17:27:17,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:27:17,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:27:17,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:27:17,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:27:19,797.797 INFO    ] ================================================
[2026-06-05 17:27:19,813.813 INFO    ] Launching Daemon at Fri Jun  5 17:27:19 IST 2026
[2026-06-05 17:27:19,824.824 INFO    ] ================================================
[2026-06-05 17:27:20,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:27:20
[2026-06-05 17:27:21,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:27:21,393.393 INFO    ] Initializing speech engine...
[2026-06-05 17:27:21,400.400 INFO    ] 2026-06-05 17:27:21
[2026-06-05 17:27:21,684.684 INFO    ] 2026-06-05 17:27:21
[2026-06-05 17:27:21,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:27:21,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:27:21,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:27:22,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:27:22,220.220 INFO    ] time= 05/06/2026 17:27:22
[2026-06-05 17:27:22,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:27:22,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:27:22,373.373 INFO    ] No existing commands found in stream
[2026-06-05 17:27:27,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:27:27,392.392 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 17:27:31,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:27:31,520.520 INFO    ] Checking for system updates...
[2026-06-05 17:27:31,561.561 INFO    ] 200
[2026-06-05 17:27:31,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:31,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:27:31,620.620 INFO    ] No update needed
[2026-06-05 17:27:31,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 17:27:31,657.657 INFO    ] 200
[2026-06-05 17:27:31,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:31,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:27:31,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:27:31,749.749 INFO    ] No camera update needed
[2026-06-05 17:27:31,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:27:31,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:27:31,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:27:31,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:27:33,810.810 INFO    ] ================================================
[2026-06-05 17:27:33,825.825 INFO    ] Launching Daemon at Fri Jun  5 17:27:33 IST 2026
[2026-06-05 17:27:33,836.836 INFO    ] ================================================
[2026-06-05 17:27:34,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:27:34
[2026-06-05 17:27:34,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:27:35,260.260 INFO    ] Initializing speech engine...
[2026-06-05 17:27:35,270.270 INFO    ] 2026-06-05 17:27:35
[2026-06-05 17:27:35,515.515 INFO    ] 2026-06-05 17:27:35
[2026-06-05 17:27:35,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:27:35,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:27:35,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:27:35,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:27:35,891.891 INFO    ] time= 05/06/2026 17:27:35
[2026-06-05 17:27:35,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:27:35,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:27:36,056.056 INFO    ] No existing commands found in stream
[2026-06-05 17:27:41,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:27:41,084.084 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 17:27:42,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:27:42,495.495 INFO    ] Checking for system updates...
[2026-06-05 17:27:42,535.535 INFO    ] 200
[2026-06-05 17:27:42,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:42,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:27:42,600.600 INFO    ] No update needed
[2026-06-05 17:27:42,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 17:27:42,640.640 INFO    ] 200
[2026-06-05 17:27:42,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:42,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:27:42,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:27:42,735.735 INFO    ] No camera update needed
[2026-06-05 17:27:42,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:27:42,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:27:42,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:27:42,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:27:44,793.793 INFO    ] ================================================
[2026-06-05 17:27:44,808.808 INFO    ] Launching Daemon at Fri Jun  5 17:27:44 IST 2026
[2026-06-05 17:27:44,819.819 INFO    ] ================================================
[2026-06-05 17:27:45,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:27:45
[2026-06-05 17:27:46,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:27:46,313.313 INFO    ] Initializing speech engine...
[2026-06-05 17:27:46,321.321 INFO    ] 2026-06-05 17:27:46
[2026-06-05 17:27:46,589.589 INFO    ] 2026-06-05 17:27:46
[2026-06-05 17:27:46,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:27:46,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:27:46,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:27:47,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:27:47,105.105 INFO    ] time= 05/06/2026 17:27:47
[2026-06-05 17:27:47,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:27:47,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:27:47,295.295 INFO    ] No existing commands found in stream
[2026-06-05 17:27:52,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:27:52,327.327 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 17:27:55,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:27:55,639.639 INFO    ] Checking for system updates...
[2026-06-05 17:27:55,679.679 INFO    ] 200
[2026-06-05 17:27:55,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:55,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:27:55,740.740 INFO    ] No update needed
[2026-06-05 17:27:55,742.742 INFO    ] Checking for camera pi updates...
[2026-06-05 17:27:55,777.777 INFO    ] 200
[2026-06-05 17:27:55,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:27:55,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:27:55,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:27:55,869.869 INFO    ] No camera update needed
[2026-06-05 17:27:55,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:27:55,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:27:55,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:27:55,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:27:57,927.927 INFO    ] ================================================
[2026-06-05 17:27:57,943.943 INFO    ] Launching Daemon at Fri Jun  5 17:27:57 IST 2026
[2026-06-05 17:27:57,953.953 INFO    ] ================================================
[2026-06-05 17:27:58,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:27:58
[2026-06-05 17:27:59,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:27:59,384.384 INFO    ] Initializing speech engine...
[2026-06-05 17:27:59,393.393 INFO    ] 2026-06-05 17:27:59
[2026-06-05 17:27:59,648.648 INFO    ] 2026-06-05 17:27:59
[2026-06-05 17:27:59,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:27:59,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:27:59,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:28:00,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:28:00,137.137 INFO    ] time= 05/06/2026 17:28:00
[2026-06-05 17:28:00,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:28:00,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:28:00,339.339 INFO    ] No existing commands found in stream
[2026-06-05 17:28:05,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:28:05,367.367 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 17:28:09,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:28:09,594.594 INFO    ] Checking for system updates...
[2026-06-05 17:28:09,630.630 INFO    ] 200
[2026-06-05 17:28:09,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:28:09,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:28:09,692.692 INFO    ] No update needed
[2026-06-05 17:28:09,694.694 INFO    ] Checking for camera pi updates...
[2026-06-05 17:28:09,727.727 INFO    ] 200
[2026-06-05 17:28:09,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:28:09,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:28:09,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:28:09,816.816 INFO    ] No camera update needed
[2026-06-05 17:28:09,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:28:09,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:28:09,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:28:09,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:28:11,873.873 INFO    ] ================================================
[2026-06-05 17:28:11,888.888 INFO    ] Launching Daemon at Fri Jun  5 17:28:11 IST 2026
[2026-06-05 17:28:11,899.899 INFO    ] ================================================
[2026-06-05 17:28:12,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:28:12
[2026-06-05 17:28:13,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:28:13,295.295 INFO    ] Initializing speech engine...
[2026-06-05 17:28:13,318.318 INFO    ] 2026-06-05 17:28:13
[2026-06-05 17:28:13,573.573 INFO    ] 2026-06-05 17:28:13
[2026-06-05 17:28:13,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:28:13,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:28:13,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:28:14,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:28:14,042.042 INFO    ] time= 05/06/2026 17:28:14
[2026-06-05 17:28:14,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:28:14,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:28:14,287.287 INFO    ] No existing commands found in stream
[2026-06-05 17:28:19,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:28:19,310.310 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 17:28:20,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:28:20,498.498 INFO    ] Checking for system updates...
[2026-06-05 17:28:20,534.534 INFO    ] 200
[2026-06-05 17:28:20,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:28:20,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:28:20,593.593 INFO    ] No update needed
[2026-06-05 17:28:20,596.596 INFO    ] Checking for camera pi updates...
[2026-06-05 17:28:20,630.630 INFO    ] 200
[2026-06-05 17:28:20,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:28:20,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:28:20,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:28:20,717.717 INFO    ] No camera update needed
[2026-06-05 17:28:20,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:28:20,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:28:20,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:28:20,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:28:22,776.776 INFO    ] ================================================
[2026-06-05 17:28:22,791.791 INFO    ] Launching Daemon at Fri Jun  5 17:28:22 IST 2026
[2026-06-05 17:28:22,802.802 INFO    ] ================================================
[2026-06-05 17:28:23,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:28:23
[2026-06-05 17:28:23,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:28:24,227.227 INFO    ] Initializing speech engine...
[2026-06-05 17:28:24,236.236 INFO    ] 2026-06-05 17:28:24
[2026-06-05 17:28:24,497.497 INFO    ] 2026-06-05 17:28:24
[2026-06-05 17:28:24,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:28:25,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:28:25,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:28:25,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:28:25,864.864 INFO    ] time= 05/06/2026 17:28:25
[2026-06-05 17:28:25,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:28:25,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:28:25,932.932 INFO    ] No existing commands found in stream
[2026-06-05 17:28:30,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:28:30,948.948 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 17:28:33,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:28:33,303.303 INFO    ] Checking for system updates...
[2026-06-05 17:28:33,342.342 INFO    ] 200
[2026-06-05 17:28:33,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:28:33,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:28:33,402.402 INFO    ] No update needed
[2026-06-05 17:28:33,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 17:28:33,439.439 INFO    ] 200
[2026-06-05 17:28:33,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:28:33,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:28:33,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:28:33,526.526 INFO    ] No camera update needed
[2026-06-05 17:28:33,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:28:33,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:28:33,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:28:33,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:28:35,581.581 INFO    ] ================================================
[2026-06-05 17:28:35,597.597 INFO    ] Launching Daemon at Fri Jun  5 17:28:35 IST 2026
[2026-06-05 17:28:35,609.609 INFO    ] ================================================
[2026-06-05 17:28:36,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:28:36
[2026-06-05 17:28:36,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:28:37,045.045 INFO    ] Initializing speech engine...
[2026-06-05 17:28:37,054.054 INFO    ] 2026-06-05 17:28:37
[2026-06-05 17:28:37,300.300 INFO    ] 2026-06-05 17:28:37
[2026-06-05 17:28:37,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:28:37,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:28:37,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:28:37,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:28:37,806.806 INFO    ] time= 05/06/2026 17:28:37
[2026-06-05 17:28:37,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:28:37,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:28:38,005.005 INFO    ] No existing commands found in stream
[2026-06-05 17:28:43,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:28:43,024.024 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 17:28:46,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:28:46,899.899 INFO    ] Checking for system updates...
[2026-06-05 17:28:46,936.936 INFO    ] 200
[2026-06-05 17:28:46,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:28:46,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:28:46,994.994 INFO    ] No update needed
[2026-06-05 17:28:46,996.996 INFO    ] Checking for camera pi updates...
[2026-06-05 17:28:47,030.030 INFO    ] 200
[2026-06-05 17:28:47,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:28:47,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:28:47,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:28:47,120.120 INFO    ] No camera update needed
[2026-06-05 17:28:47,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:28:47,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:28:47,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:28:47,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:28:49,174.174 INFO    ] ================================================
[2026-06-05 17:28:49,190.190 INFO    ] Launching Daemon at Fri Jun  5 17:28:49 IST 2026
[2026-06-05 17:28:49,200.200 INFO    ] ================================================
[2026-06-05 17:28:49,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:28:49
[2026-06-05 17:28:50,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:28:50,621.621 INFO    ] Initializing speech engine...
[2026-06-05 17:28:50,631.631 INFO    ] 2026-06-05 17:28:50
[2026-06-05 17:28:50,884.884 INFO    ] 2026-06-05 17:28:50
[2026-06-05 17:28:50,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:28:51,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:28:51,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:28:51,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:28:51,265.265 INFO    ] time= 05/06/2026 17:28:51
[2026-06-05 17:28:51,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:28:51,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:28:51,458.458 INFO    ] No existing commands found in stream
[2026-06-05 17:28:56,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:28:56,474.474 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 17:29:00,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:29:00,118.118 INFO    ] Checking for system updates...
[2026-06-05 17:29:00,154.154 INFO    ] 200
[2026-06-05 17:29:00,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:00,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:29:00,213.213 INFO    ] No update needed
[2026-06-05 17:29:00,216.216 INFO    ] Checking for camera pi updates...
[2026-06-05 17:29:00,251.251 INFO    ] 200
[2026-06-05 17:29:00,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:00,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:29:00,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:29:00,441.441 INFO    ] No camera update needed
[2026-06-05 17:29:00,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:29:00,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:29:00,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:29:00,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:29:02,499.499 INFO    ] ================================================
[2026-06-05 17:29:02,515.515 INFO    ] Launching Daemon at Fri Jun  5 17:29:02 IST 2026
[2026-06-05 17:29:02,526.526 INFO    ] ================================================
[2026-06-05 17:29:03,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:29:03
[2026-06-05 17:29:03,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:29:04,012.012 INFO    ] Initializing speech engine...
[2026-06-05 17:29:04,017.017 INFO    ] 2026-06-05 17:29:04
[2026-06-05 17:29:04,267.267 INFO    ] 2026-06-05 17:29:04
[2026-06-05 17:29:04,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:29:04,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:29:04,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:29:04,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:29:04,738.738 INFO    ] time= 05/06/2026 17:29:04
[2026-06-05 17:29:04,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:29:04,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:29:04,968.968 INFO    ] No existing commands found in stream
[2026-06-05 17:29:09,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:29:09,995.995 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 17:29:12,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:29:12,727.727 INFO    ] Checking for system updates...
[2026-06-05 17:29:12,763.763 INFO    ] 200
[2026-06-05 17:29:12,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:12,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:29:12,827.827 INFO    ] No update needed
[2026-06-05 17:29:12,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 17:29:12,863.863 INFO    ] 200
[2026-06-05 17:29:12,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:12,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:29:12,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:29:12,955.955 INFO    ] No camera update needed
[2026-06-05 17:29:12,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:29:12,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:29:12,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:29:12,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:29:15,011.011 INFO    ] ================================================
[2026-06-05 17:29:15,027.027 INFO    ] Launching Daemon at Fri Jun  5 17:29:15 IST 2026
[2026-06-05 17:29:15,037.037 INFO    ] ================================================
[2026-06-05 17:29:15,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:29:15
[2026-06-05 17:29:16,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:29:16,462.462 INFO    ] Initializing speech engine...
[2026-06-05 17:29:16,477.477 INFO    ] 2026-06-05 17:29:16
[2026-06-05 17:29:16,758.758 INFO    ] 2026-06-05 17:29:16
[2026-06-05 17:29:16,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:29:16,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:29:17,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:29:17,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:29:17,171.171 INFO    ] time= 05/06/2026 17:29:17
[2026-06-05 17:29:17,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:29:17,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:29:17,256.256 INFO    ] No existing commands found in stream
[2026-06-05 17:29:22,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:29:22,289.289 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 17:29:25,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:29:25,845.845 INFO    ] Checking for system updates...
[2026-06-05 17:29:25,880.880 INFO    ] 200
[2026-06-05 17:29:25,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:25,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:29:25,942.942 INFO    ] No update needed
[2026-06-05 17:29:25,945.945 INFO    ] Checking for camera pi updates...
[2026-06-05 17:29:25,978.978 INFO    ] 200
[2026-06-05 17:29:25,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:26,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:29:26,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:29:26,078.078 INFO    ] No camera update needed
[2026-06-05 17:29:26,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:29:26,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:29:26,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:29:26,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:29:28,135.135 INFO    ] ================================================
[2026-06-05 17:29:28,151.151 INFO    ] Launching Daemon at Fri Jun  5 17:29:28 IST 2026
[2026-06-05 17:29:28,162.162 INFO    ] ================================================
[2026-06-05 17:29:28,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:29:28
[2026-06-05 17:29:29,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:29:29,591.591 INFO    ] Initializing speech engine...
[2026-06-05 17:29:29,613.613 INFO    ] 2026-06-05 17:29:29
[2026-06-05 17:29:29,867.867 INFO    ] 2026-06-05 17:29:29
[2026-06-05 17:29:29,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:29:30,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:29:30,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:29:30,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:29:30,366.366 INFO    ] time= 05/06/2026 17:29:30
[2026-06-05 17:29:30,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:29:30,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:29:30,543.543 INFO    ] No existing commands found in stream
[2026-06-05 17:29:35,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:29:35,565.565 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 17:29:36,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:29:36,854.854 INFO    ] Checking for system updates...
[2026-06-05 17:29:36,891.891 INFO    ] 200
[2026-06-05 17:29:36,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:36,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:29:36,951.951 INFO    ] No update needed
[2026-06-05 17:29:36,954.954 INFO    ] Checking for camera pi updates...
[2026-06-05 17:29:36,989.989 INFO    ] 200
[2026-06-05 17:29:36,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:37,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:29:37,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:29:37,077.077 INFO    ] No camera update needed
[2026-06-05 17:29:37,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:29:37,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:29:37,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:29:37,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:29:39,134.134 INFO    ] ================================================
[2026-06-05 17:29:39,150.150 INFO    ] Launching Daemon at Fri Jun  5 17:29:39 IST 2026
[2026-06-05 17:29:39,161.161 INFO    ] ================================================
[2026-06-05 17:29:39,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:29:39
[2026-06-05 17:29:40,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:29:40,766.766 INFO    ] Initializing speech engine...
[2026-06-05 17:29:40,771.771 INFO    ] 2026-06-05 17:29:40
[2026-06-05 17:29:41,023.023 INFO    ] 2026-06-05 17:29:41
[2026-06-05 17:29:41,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:29:41,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:29:41,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:29:41,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:29:41,401.401 INFO    ] time= 05/06/2026 17:29:41
[2026-06-05 17:29:41,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:29:41,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:29:41,582.582 INFO    ] No existing commands found in stream
[2026-06-05 17:29:46,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:29:46,615.615 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 17:29:49,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:29:49,159.159 INFO    ] Checking for system updates...
[2026-06-05 17:29:49,195.195 INFO    ] 200
[2026-06-05 17:29:49,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:49,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:29:49,252.252 INFO    ] No update needed
[2026-06-05 17:29:49,255.255 INFO    ] Checking for camera pi updates...
[2026-06-05 17:29:49,292.292 INFO    ] 200
[2026-06-05 17:29:49,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:29:49,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:29:49,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:29:49,381.381 INFO    ] No camera update needed
[2026-06-05 17:29:49,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:29:49,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:29:49,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:29:49,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:29:51,436.436 INFO    ] ================================================
[2026-06-05 17:29:51,451.451 INFO    ] Launching Daemon at Fri Jun  5 17:29:51 IST 2026
[2026-06-05 17:29:51,462.462 INFO    ] ================================================
[2026-06-05 17:29:52,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:29:52
[2026-06-05 17:29:52,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:29:53,000.000 INFO    ] Initializing speech engine...
[2026-06-05 17:29:53,010.010 INFO    ] 2026-06-05 17:29:53
[2026-06-05 17:29:53,272.272 INFO    ] 2026-06-05 17:29:53
[2026-06-05 17:29:53,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:29:55,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:29:55,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:29:55,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:29:55,557.557 INFO    ] time= 05/06/2026 17:29:55
[2026-06-05 17:29:55,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:29:55,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:29:55,629.629 INFO    ] No existing commands found in stream
[2026-06-05 17:30:00,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:30:00,640.640 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 17:30:07,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:30:07,908.908 INFO    ] Checking for system updates...
[2026-06-05 17:30:07,947.947 INFO    ] 200
[2026-06-05 17:30:07,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:08,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:30:08,006.006 INFO    ] No update needed
[2026-06-05 17:30:08,009.009 INFO    ] Checking for camera pi updates...
[2026-06-05 17:30:08,046.046 INFO    ] 200
[2026-06-05 17:30:08,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:08,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:30:08,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:30:08,123.123 INFO    ] No camera update needed
[2026-06-05 17:30:08,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:30:08,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:30:08,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:30:08,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:30:10,179.179 INFO    ] ================================================
[2026-06-05 17:30:10,194.194 INFO    ] Launching Daemon at Fri Jun  5 17:30:10 IST 2026
[2026-06-05 17:30:10,205.205 INFO    ] ================================================
[2026-06-05 17:30:10,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:30:10
[2026-06-05 17:30:11,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:30:11,702.702 INFO    ] Initializing speech engine...
[2026-06-05 17:30:11,712.712 INFO    ] 2026-06-05 17:30:11
[2026-06-05 17:30:11,986.986 INFO    ] 2026-06-05 17:30:11
[2026-06-05 17:30:12,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:30:12,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:30:12,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:30:12,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:30:12,390.390 INFO    ] time= 05/06/2026 17:30:12
[2026-06-05 17:30:12,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:30:12,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:30:12,560.560 INFO    ] No existing commands found in stream
[2026-06-05 17:30:17,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:30:17,588.588 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 17:30:21,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:30:21,452.452 INFO    ] Checking for system updates...
[2026-06-05 17:30:21,497.497 INFO    ] 200
[2026-06-05 17:30:21,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:21,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:30:21,562.562 INFO    ] No update needed
[2026-06-05 17:30:21,564.564 INFO    ] Checking for camera pi updates...
[2026-06-05 17:30:21,599.599 INFO    ] 200
[2026-06-05 17:30:21,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:21,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:30:21,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:30:21,694.694 INFO    ] No camera update needed
[2026-06-05 17:30:21,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:30:21,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:30:21,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:30:21,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:30:23,752.752 INFO    ] ================================================
[2026-06-05 17:30:23,767.767 INFO    ] Launching Daemon at Fri Jun  5 17:30:23 IST 2026
[2026-06-05 17:30:23,778.778 INFO    ] ================================================
[2026-06-05 17:30:24,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:30:24
[2026-06-05 17:30:24,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:30:25,177.177 INFO    ] Initializing speech engine...
[2026-06-05 17:30:25,189.189 INFO    ] 2026-06-05 17:30:25
[2026-06-05 17:30:25,454.454 INFO    ] 2026-06-05 17:30:25
[2026-06-05 17:30:25,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:30:25,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:30:25,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:30:25,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:30:25,830.830 INFO    ] time= 05/06/2026 17:30:25
[2026-06-05 17:30:25,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:30:25,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:30:26,024.024 INFO    ] No existing commands found in stream
[2026-06-05 17:30:31,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:30:31,040.040 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-05 17:30:32,304.304 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:30:32,307.307 INFO    ] Checking for system updates...
[2026-06-05 17:30:32,349.349 INFO    ] 200
[2026-06-05 17:30:32,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:32,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:30:32,411.411 INFO    ] No update needed
[2026-06-05 17:30:32,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 17:30:32,454.454 INFO    ] 200
[2026-06-05 17:30:32,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:32,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:30:32,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:30:32,533.533 INFO    ] No camera update needed
[2026-06-05 17:30:32,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:30:32,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:30:32,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:30:32,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:30:34,591.591 INFO    ] ================================================
[2026-06-05 17:30:34,607.607 INFO    ] Launching Daemon at Fri Jun  5 17:30:34 IST 2026
[2026-06-05 17:30:34,618.618 INFO    ] ================================================
[2026-06-05 17:30:35,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:30:35
[2026-06-05 17:30:35,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:30:36,014.014 INFO    ] Initializing speech engine...
[2026-06-05 17:30:36,017.017 INFO    ] 2026-06-05 17:30:36
[2026-06-05 17:30:36,288.288 INFO    ] 2026-06-05 17:30:36
[2026-06-05 17:30:36,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:30:36,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:30:36,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:30:36,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:30:36,727.727 INFO    ] time= 05/06/2026 17:30:36
[2026-06-05 17:30:36,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:30:36,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:30:36,982.982 INFO    ] No existing commands found in stream
[2026-06-05 17:30:42,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:30:42,009.009 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 17:30:46,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:30:46,327.327 INFO    ] Checking for system updates...
[2026-06-05 17:30:46,364.364 INFO    ] 200
[2026-06-05 17:30:46,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:46,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:30:46,428.428 INFO    ] No update needed
[2026-06-05 17:30:46,431.431 INFO    ] Checking for camera pi updates...
[2026-06-05 17:30:46,465.465 INFO    ] 200
[2026-06-05 17:30:46,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:46,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:30:46,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:30:46,567.567 INFO    ] No camera update needed
[2026-06-05 17:30:46,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:30:46,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:30:46,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:30:46,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:30:48,625.625 INFO    ] ================================================
[2026-06-05 17:30:48,640.640 INFO    ] Launching Daemon at Fri Jun  5 17:30:48 IST 2026
[2026-06-05 17:30:48,652.652 INFO    ] ================================================
[2026-06-05 17:30:49,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:30:49
[2026-06-05 17:30:49,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:30:50,072.072 INFO    ] Initializing speech engine...
[2026-06-05 17:30:50,081.081 INFO    ] 2026-06-05 17:30:50
[2026-06-05 17:30:50,326.326 INFO    ] 2026-06-05 17:30:50
[2026-06-05 17:30:50,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:30:50,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:30:50,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:30:50,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:30:50,797.797 INFO    ] time= 05/06/2026 17:30:50
[2026-06-05 17:30:50,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:30:50,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:30:50,952.952 INFO    ] No existing commands found in stream
[2026-06-05 17:30:55,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:30:55,987.987 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 17:30:58,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:30:58,066.066 INFO    ] Checking for system updates...
[2026-06-05 17:30:58,106.106 INFO    ] 200
[2026-06-05 17:30:58,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:58,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:30:58,164.164 INFO    ] No update needed
[2026-06-05 17:30:58,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 17:30:58,204.204 INFO    ] 200
[2026-06-05 17:30:58,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:30:58,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:30:58,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:30:58,300.300 INFO    ] No camera update needed
[2026-06-05 17:30:58,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:30:58,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:30:58,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:30:58,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:31:00,357.357 INFO    ] ================================================
[2026-06-05 17:31:00,373.373 INFO    ] Launching Daemon at Fri Jun  5 17:31:00 IST 2026
[2026-06-05 17:31:00,384.384 INFO    ] ================================================
[2026-06-05 17:31:00,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:31:00
[2026-06-05 17:31:01,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:31:01,791.791 INFO    ] Initializing speech engine...
[2026-06-05 17:31:01,881.881 INFO    ] 2026-06-05 17:31:01
[2026-06-05 17:31:02,351.351 INFO    ] 2026-06-05 17:31:02
[2026-06-05 17:31:02,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:31:02,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:31:02,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:31:02,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:31:02,788.788 INFO    ] time= 05/06/2026 17:31:02
[2026-06-05 17:31:02,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:31:02,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:31:03,028.028 INFO    ] No existing commands found in stream
[2026-06-05 17:31:08,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:31:08,059.059 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 17:31:11,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:31:11,142.142 INFO    ] Checking for system updates...
[2026-06-05 17:31:11,190.190 INFO    ] 200
[2026-06-05 17:31:11,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:31:11,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:31:11,252.252 INFO    ] No update needed
[2026-06-05 17:31:11,255.255 INFO    ] Checking for camera pi updates...
[2026-06-05 17:31:11,288.288 INFO    ] 200
[2026-06-05 17:31:11,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:31:11,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:31:11,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:31:11,468.468 INFO    ] No camera update needed
[2026-06-05 17:31:11,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:31:11,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:31:11,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:31:11,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:31:13,523.523 INFO    ] ================================================
[2026-06-05 17:31:13,539.539 INFO    ] Launching Daemon at Fri Jun  5 17:31:13 IST 2026
[2026-06-05 17:31:13,550.550 INFO    ] ================================================
[2026-06-05 17:31:14,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:31:14
[2026-06-05 17:31:14,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:31:15,060.060 INFO    ] Initializing speech engine...
[2026-06-05 17:31:15,069.069 INFO    ] 2026-06-05 17:31:15
[2026-06-05 17:31:15,324.324 INFO    ] 2026-06-05 17:31:15
[2026-06-05 17:31:15,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:31:15,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:31:15,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:31:15,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:31:15,784.784 INFO    ] time= 05/06/2026 17:31:15
[2026-06-05 17:31:15,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:31:15,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:31:16,021.021 INFO    ] No existing commands found in stream
[2026-06-05 17:31:21,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:31:21,039.039 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 17:31:25,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:31:25,722.722 INFO    ] Checking for system updates...
[2026-06-05 17:31:25,758.758 INFO    ] 200
[2026-06-05 17:31:25,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:31:25,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:31:25,816.816 INFO    ] No update needed
[2026-06-05 17:31:25,819.819 INFO    ] Checking for camera pi updates...
[2026-06-05 17:31:25,859.859 INFO    ] 200
[2026-06-05 17:31:25,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:31:25,906.906 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:31:25,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:31:25,956.956 INFO    ] No camera update needed
[2026-06-05 17:31:25,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:31:25,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:31:25,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:31:25,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:31:28,012.012 INFO    ] ================================================
[2026-06-05 17:31:28,028.028 INFO    ] Launching Daemon at Fri Jun  5 17:31:28 IST 2026
[2026-06-05 17:31:28,039.039 INFO    ] ================================================
[2026-06-05 17:31:28,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:31:28
[2026-06-05 17:31:29,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:31:29,496.496 INFO    ] Initializing speech engine...
[2026-06-05 17:31:29,514.514 INFO    ] 2026-06-05 17:31:29
[2026-06-05 17:31:29,767.767 INFO    ] 2026-06-05 17:31:29
[2026-06-05 17:31:29,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:31:30,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:31:30,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:31:30,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:31:30,245.245 INFO    ] time= 05/06/2026 17:31:30
[2026-06-05 17:31:30,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:31:30,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:31:30,460.460 INFO    ] No existing commands found in stream
[2026-06-05 17:31:35,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:31:35,490.490 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 17:31:39,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:31:39,851.851 INFO    ] Checking for system updates...
[2026-06-05 17:31:39,889.889 INFO    ] 200
[2026-06-05 17:31:39,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:31:39,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:31:39,962.962 INFO    ] No update needed
[2026-06-05 17:31:39,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 17:31:39,999.999 INFO    ] 200
[2026-06-05 17:31:40,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:31:40,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:31:40,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:31:40,088.088 INFO    ] No camera update needed
[2026-06-05 17:31:40,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:31:40,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:31:40,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:31:40,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:31:42,145.145 INFO    ] ================================================
[2026-06-05 17:31:42,161.161 INFO    ] Launching Daemon at Fri Jun  5 17:31:42 IST 2026
[2026-06-05 17:31:42,172.172 INFO    ] ================================================
[2026-06-05 17:31:42,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:31:42
[2026-06-05 17:31:43,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:31:43,612.612 INFO    ] Initializing speech engine...
[2026-06-05 17:31:43,620.620 INFO    ] 2026-06-05 17:31:43
[2026-06-05 17:31:43,866.866 INFO    ] 2026-06-05 17:31:43
[2026-06-05 17:31:43,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:31:44,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:31:44,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:31:44,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:31:44,235.235 INFO    ] time= 05/06/2026 17:31:44
[2026-06-05 17:31:44,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:31:44,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:31:44,417.417 INFO    ] No existing commands found in stream
[2026-06-05 17:31:49,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:31:49,443.443 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 17:31:50,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:31:50,700.700 INFO    ] Checking for system updates...
[2026-06-05 17:31:50,738.738 INFO    ] 200
[2026-06-05 17:31:50,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:31:50,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:31:50,802.802 INFO    ] No update needed
[2026-06-05 17:31:50,804.804 INFO    ] Checking for camera pi updates...
[2026-06-05 17:31:50,841.841 INFO    ] 200
[2026-06-05 17:31:50,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:31:50,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:31:50,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:31:50,928.928 INFO    ] No camera update needed
[2026-06-05 17:31:50,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:31:50,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:31:50,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:31:50,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:31:52,984.984 INFO    ] ================================================
[2026-06-05 17:31:53,000.000 INFO    ] Launching Daemon at Fri Jun  5 17:31:52 IST 2026
[2026-06-05 17:31:53,011.011 INFO    ] ================================================
[2026-06-05 17:31:53,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:31:53
[2026-06-05 17:31:54,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:31:54,455.455 INFO    ] Initializing speech engine...
[2026-06-05 17:31:54,464.464 INFO    ] 2026-06-05 17:31:54
[2026-06-05 17:31:54,722.722 INFO    ] 2026-06-05 17:31:54
[2026-06-05 17:31:54,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:31:55,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:31:55,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:31:55,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:31:55,834.834 INFO    ] time= 05/06/2026 17:31:55
[2026-06-05 17:31:55,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:31:55,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:31:55,939.939 INFO    ] No existing commands found in stream
[2026-06-05 17:32:00,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:32:00,954.954 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 17:32:03,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:32:03,292.292 INFO    ] Checking for system updates...
[2026-06-05 17:32:03,329.329 INFO    ] 200
[2026-06-05 17:32:03,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:03,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:32:03,392.392 INFO    ] No update needed
[2026-06-05 17:32:03,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 17:32:03,430.430 INFO    ] 200
[2026-06-05 17:32:03,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:03,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:32:03,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:32:03,528.528 INFO    ] No camera update needed
[2026-06-05 17:32:03,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:32:03,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:32:03,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:32:03,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:32:05,589.589 INFO    ] ================================================
[2026-06-05 17:32:05,605.605 INFO    ] Launching Daemon at Fri Jun  5 17:32:05 IST 2026
[2026-06-05 17:32:05,616.616 INFO    ] ================================================
[2026-06-05 17:32:06,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:32:06
[2026-06-05 17:32:06,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:32:07,155.155 INFO    ] Initializing speech engine...
[2026-06-05 17:32:07,161.161 INFO    ] 2026-06-05 17:32:07
[2026-06-05 17:32:07,443.443 INFO    ] 2026-06-05 17:32:07
[2026-06-05 17:32:07,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:32:07,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:32:07,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:32:07,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:32:07,980.980 INFO    ] time= 05/06/2026 17:32:07
[2026-06-05 17:32:07,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:32:08,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:32:08,116.116 INFO    ] No existing commands found in stream
[2026-06-05 17:32:13,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:32:13,147.147 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 17:32:13,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:32:13,920.920 INFO    ] Checking for system updates...
[2026-06-05 17:32:13,957.957 INFO    ] 200
[2026-06-05 17:32:13,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:14,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:32:14,020.020 INFO    ] No update needed
[2026-06-05 17:32:14,022.022 INFO    ] Checking for camera pi updates...
[2026-06-05 17:32:14,062.062 INFO    ] 200
[2026-06-05 17:32:14,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:14,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:32:14,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:32:14,155.155 INFO    ] No camera update needed
[2026-06-05 17:32:14,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:32:14,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:32:14,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:32:14,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:32:16,214.214 INFO    ] ================================================
[2026-06-05 17:32:16,229.229 INFO    ] Launching Daemon at Fri Jun  5 17:32:16 IST 2026
[2026-06-05 17:32:16,240.240 INFO    ] ================================================
[2026-06-05 17:32:16,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:32:16
[2026-06-05 17:32:17,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:32:17,806.806 INFO    ] Initializing speech engine...
[2026-06-05 17:32:17,814.814 INFO    ] 2026-06-05 17:32:17
[2026-06-05 17:32:18,080.080 INFO    ] 2026-06-05 17:32:18
[2026-06-05 17:32:18,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:32:18,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:32:18,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:32:18,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:32:18,576.576 INFO    ] time= 05/06/2026 17:32:18
[2026-06-05 17:32:18,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:32:18,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:32:18,804.804 INFO    ] No existing commands found in stream
[2026-06-05 17:32:23,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:32:23,824.824 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 17:32:28,033.033 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:32:28,036.036 INFO    ] Checking for system updates...
[2026-06-05 17:32:28,072.072 INFO    ] 200
[2026-06-05 17:32:28,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:28,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:32:28,131.131 INFO    ] No update needed
[2026-06-05 17:32:28,134.134 INFO    ] Checking for camera pi updates...
[2026-06-05 17:32:28,168.168 INFO    ] 200
[2026-06-05 17:32:28,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:28,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:32:28,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:32:28,278.278 INFO    ] No camera update needed
[2026-06-05 17:32:28,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:32:28,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:32:28,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:32:28,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:32:30,341.341 INFO    ] ================================================
[2026-06-05 17:32:30,357.357 INFO    ] Launching Daemon at Fri Jun  5 17:32:30 IST 2026
[2026-06-05 17:32:30,368.368 INFO    ] ================================================
[2026-06-05 17:32:30,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:32:30
[2026-06-05 17:32:31,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:32:31,875.875 INFO    ] Initializing speech engine...
[2026-06-05 17:32:31,885.885 INFO    ] 2026-06-05 17:32:31
[2026-06-05 17:32:32,164.164 INFO    ] 2026-06-05 17:32:32
[2026-06-05 17:32:32,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:32:32,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:32:32,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:32:32,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:32:32,637.637 INFO    ] time= 05/06/2026 17:32:32
[2026-06-05 17:32:32,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:32:32,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:32:32,899.899 INFO    ] No existing commands found in stream
[2026-06-05 17:32:37,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:32:37,919.919 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 17:32:40,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:32:40,653.653 INFO    ] Checking for system updates...
[2026-06-05 17:32:40,690.690 INFO    ] 200
[2026-06-05 17:32:40,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:40,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:32:40,750.750 INFO    ] No update needed
[2026-06-05 17:32:40,752.752 INFO    ] Checking for camera pi updates...
[2026-06-05 17:32:40,790.790 INFO    ] 200
[2026-06-05 17:32:40,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:40,835.835 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:32:40,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:32:40,879.879 INFO    ] No camera update needed
[2026-06-05 17:32:40,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:32:40,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:32:40,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:32:40,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:32:42,937.937 INFO    ] ================================================
[2026-06-05 17:32:42,953.953 INFO    ] Launching Daemon at Fri Jun  5 17:32:42 IST 2026
[2026-06-05 17:32:42,964.964 INFO    ] ================================================
[2026-06-05 17:32:43,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:32:43
[2026-06-05 17:32:44,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:32:44,513.513 INFO    ] Initializing speech engine...
[2026-06-05 17:32:44,520.520 INFO    ] 2026-06-05 17:32:44
[2026-06-05 17:32:44,791.791 INFO    ] 2026-06-05 17:32:44
[2026-06-05 17:32:44,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:32:45,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:32:45,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:32:45,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:32:45,256.256 INFO    ] time= 05/06/2026 17:32:45
[2026-06-05 17:32:45,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:32:45,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:32:45,496.496 INFO    ] No existing commands found in stream
[2026-06-05 17:32:50,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:32:50,514.514 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 17:32:52,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:32:52,484.484 INFO    ] Checking for system updates...
[2026-06-05 17:32:52,521.521 INFO    ] 200
[2026-06-05 17:32:52,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:52,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:32:52,581.581 INFO    ] No update needed
[2026-06-05 17:32:52,583.583 INFO    ] Checking for camera pi updates...
[2026-06-05 17:32:52,617.617 INFO    ] 200
[2026-06-05 17:32:52,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:32:52,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:32:52,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:32:52,712.712 INFO    ] No camera update needed
[2026-06-05 17:32:52,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:32:52,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:32:52,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:32:52,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:32:54,766.766 INFO    ] ================================================
[2026-06-05 17:32:54,782.782 INFO    ] Launching Daemon at Fri Jun  5 17:32:54 IST 2026
[2026-06-05 17:32:54,793.793 INFO    ] ================================================
[2026-06-05 17:32:55,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:32:55
[2026-06-05 17:32:55,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:32:56,208.208 INFO    ] Initializing speech engine...
[2026-06-05 17:32:56,227.227 INFO    ] 2026-06-05 17:32:56
[2026-06-05 17:32:56,477.477 INFO    ] 2026-06-05 17:32:56
[2026-06-05 17:32:56,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:32:56,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:32:56,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:32:56,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:32:56,856.856 INFO    ] time= 05/06/2026 17:32:56
[2026-06-05 17:32:56,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:32:56,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:32:57,035.035 INFO    ] No existing commands found in stream
[2026-06-05 17:33:02,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:33:02,069.069 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 17:33:04,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:33:04,433.433 INFO    ] Checking for system updates...
[2026-06-05 17:33:04,469.469 INFO    ] 200
[2026-06-05 17:33:04,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:33:04,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:33:04,534.534 INFO    ] No update needed
[2026-06-05 17:33:04,537.537 INFO    ] Checking for camera pi updates...
[2026-06-05 17:33:04,571.571 INFO    ] 200
[2026-06-05 17:33:04,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:33:04,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:33:04,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:33:04,674.674 INFO    ] No camera update needed
[2026-06-05 17:33:04,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:33:04,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:33:04,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:33:04,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:33:06,732.732 INFO    ] ================================================
[2026-06-05 17:33:06,750.750 INFO    ] Launching Daemon at Fri Jun  5 17:33:06 IST 2026
[2026-06-05 17:33:06,761.761 INFO    ] ================================================
[2026-06-05 17:33:07,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:33:07
[2026-06-05 17:33:07,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:33:08,198.198 INFO    ] Initializing speech engine...
[2026-06-05 17:33:08,207.207 INFO    ] 2026-06-05 17:33:08
[2026-06-05 17:33:08,457.457 INFO    ] 2026-06-05 17:33:08
[2026-06-05 17:33:08,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:33:08,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:33:08,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:33:08,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:33:08,825.825 INFO    ] time= 05/06/2026 17:33:08
[2026-06-05 17:33:08,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:33:08,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:33:08,932.932 INFO    ] No existing commands found in stream
[2026-06-05 17:33:13,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:33:13,950.950 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 17:33:16,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:33:16,448.448 INFO    ] Checking for system updates...
[2026-06-05 17:33:16,487.487 INFO    ] 200
[2026-06-05 17:33:16,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:33:16,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:33:16,551.551 INFO    ] No update needed
[2026-06-05 17:33:16,553.553 INFO    ] Checking for camera pi updates...
[2026-06-05 17:33:16,590.590 INFO    ] 200
[2026-06-05 17:33:16,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:33:16,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:33:16,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:33:16,802.802 INFO    ] No camera update needed
[2026-06-05 17:33:16,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:33:16,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:33:16,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:33:16,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:33:18,858.858 INFO    ] ================================================
[2026-06-05 17:33:18,873.873 INFO    ] Launching Daemon at Fri Jun  5 17:33:18 IST 2026
[2026-06-05 17:33:18,884.884 INFO    ] ================================================
[2026-06-05 17:33:19,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:33:19
[2026-06-05 17:33:20,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:33:20,364.364 INFO    ] Initializing speech engine...
[2026-06-05 17:33:20,370.370 INFO    ] 2026-06-05 17:33:20
[2026-06-05 17:33:20,628.628 INFO    ] 2026-06-05 17:33:20
[2026-06-05 17:33:20,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:33:20,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:33:20,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:33:21,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:33:21,110.110 INFO    ] time= 05/06/2026 17:33:21
[2026-06-05 17:33:21,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:33:21,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:33:21,328.328 INFO    ] No existing commands found in stream
[2026-06-05 17:33:26,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:33:26,340.340 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 17:33:29,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:33:29,043.043 INFO    ] Checking for system updates...
[2026-06-05 17:33:29,080.080 INFO    ] 200
[2026-06-05 17:33:29,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:33:29,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:33:29,143.143 INFO    ] No update needed
[2026-06-05 17:33:29,146.146 INFO    ] Checking for camera pi updates...
[2026-06-05 17:33:29,189.189 INFO    ] 200
[2026-06-05 17:33:29,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:33:29,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:33:29,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:33:29,279.279 INFO    ] No camera update needed
[2026-06-05 17:33:29,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:33:29,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:33:29,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:33:29,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:33:31,342.342 INFO    ] ================================================
[2026-06-05 17:33:31,358.358 INFO    ] Launching Daemon at Fri Jun  5 17:33:31 IST 2026
[2026-06-05 17:33:31,369.369 INFO    ] ================================================
[2026-06-05 17:33:32,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:33:32
[2026-06-05 17:33:32,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:33:33,041.041 INFO    ] Initializing speech engine...
[2026-06-05 17:33:33,063.063 INFO    ] 2026-06-05 17:33:33
[2026-06-05 17:33:33,342.342 INFO    ] 2026-06-05 17:33:33
[2026-06-05 17:33:33,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:33:33,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:33:33,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:33:33,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:33:33,879.879 INFO    ] time= 05/06/2026 17:33:33
[2026-06-05 17:33:33,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:33:33,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:33:34,040.040 INFO    ] No existing commands found in stream
[2026-06-05 17:33:39,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:33:39,073.073 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 17:33:42,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:33:42,940.940 INFO    ] Checking for system updates...
[2026-06-05 17:33:42,982.982 INFO    ] 200
[2026-06-05 17:33:42,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:33:43,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:33:43,044.044 INFO    ] No update needed
[2026-06-05 17:33:43,047.047 INFO    ] Checking for camera pi updates...
[2026-06-05 17:33:43,087.087 INFO    ] 200
[2026-06-05 17:33:43,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:33:43,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:33:43,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:33:43,200.200 INFO    ] No camera update needed
[2026-06-05 17:33:43,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:33:43,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:33:43,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:33:43,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:33:45,257.257 INFO    ] ================================================
[2026-06-05 17:33:45,273.273 INFO    ] Launching Daemon at Fri Jun  5 17:33:45 IST 2026
[2026-06-05 17:33:45,285.285 INFO    ] ================================================
[2026-06-05 17:33:45,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:33:45
[2026-06-05 17:33:46,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:33:46,859.859 INFO    ] Initializing speech engine...
[2026-06-05 17:33:46,868.868 INFO    ] 2026-06-05 17:33:46
[2026-06-05 17:33:47,191.191 INFO    ] 2026-06-05 17:33:47
[2026-06-05 17:33:47,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:33:54,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:33:54,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:33:55,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:33:55,613.613 INFO    ] time= 05/06/2026 17:33:55
[2026-06-05 17:33:55,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:33:55,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:33:55,677.677 INFO    ] No existing commands found in stream
[2026-06-05 17:33:59,715.715 INFO    ] Received new command: ID=1780661039640-0
[2026-06-05 17:33:59,718.718 INFO    ] process_and_cleanup_command: msg_id=1780661039640-0
[2026-06-05 17:33:59,720.720 INFO    ] is_command_expired: timestamp=2026-06-05T12:03:59.412Z, expiry=30s
[2026-06-05 17:33:59,806.806 INFO    ] Command removed from stream: 1780661039640-0. returning for processing...
[2026-06-05 17:33:59,808.808 INFO    ] ***** get_valid_command
[2026-06-05 17:33:59,811.811 INFO    ] {'data': '{"request_id":"start-order-1780661039412-3ud7eztjr","orderId":"TM07202501260605173325369","is_vending":false}', 'timestamp': '2026-06-05T12:03:59.412Z', 'command': 'start-order', 'source': 'webapp', 'timeout': '10'}
[2026-06-05 17:33:59,814.814 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1780661039412-3ud7eztjr', 'orderId': 'TM07202501260605173325369'}
[2026-06-05 17:33:59,816.816 INFO    ] Handling start order...
[2026-06-05 17:33:59,819.819 INFO    ] handle_start_order_command
[2026-06-05 17:33:59,825.825 INFO    ] _send_start_order_success: request_id=start-order-1780661039412-3ud7eztjr, order_id=TM07202501260605173325369
[2026-06-05 17:33:59,828.828 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-05 17:33:59,886.886 INFO    ] [_send_start_order_success] Message added to stream with ID: 1780661039865-0
[2026-06-05 17:33:59,889.889 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-05 17:33:59,892.892 INFO    ] Checking for system updates...
[2026-06-05 17:33:59,940.940 INFO    ] 200
[2026-06-05 17:33:59,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:34:00,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:34:00,008.008 INFO    ] No update needed
[2026-06-05 17:34:00,010.010 INFO    ] Checking for camera pi updates...
[2026-06-05 17:34:00,052.052 INFO    ] 200
[2026-06-05 17:34:00,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:34:00,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:34:00,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:34:00,150.150 INFO    ] No camera update needed
[2026-06-05 17:34:00,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:34:00,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:34:00,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:34:00,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:34:02,215.215 INFO    ] ================================================
[2026-06-05 17:34:02,238.238 INFO    ] Launching Daemon at Fri Jun  5 17:34:02 IST 2026
[2026-06-05 17:34:02,254.254 INFO    ] ================================================
[2026-06-05 17:34:02,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:34:02
[2026-06-05 17:34:03,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:34:03,921.921 INFO    ] Initializing speech engine...
[2026-06-05 17:34:03,929.929 INFO    ] 2026-06-05 17:34:03
[2026-06-05 17:34:04,228.228 INFO    ] 2026-06-05 17:34:04
[2026-06-05 17:34:04,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:34:04,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:34:04,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:34:04,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:34:04,770.770 INFO    ] time= 05/06/2026 17:34:04
[2026-06-05 17:34:04,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:34:04,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:34:04,943.943 INFO    ] Found 2 existing command(s) in stream
[2026-06-05 17:34:05,008.008 INFO    ] Checking historical command: ID=1780661039865-0
[2026-06-05 17:34:05,047.047 INFO    ] process_and_cleanup_command: msg_id=1780661039865-0
[2026-06-05 17:34:05,107.107 INFO    ] is_command_expired: timestamp=2026-06-05T12:03:59.826382Z, expiry=30s
[2026-06-05 17:34:05,368.368 INFO    ] Command removed from stream: 1780661039865-0. returning for processing...
[2026-06-05 17:34:05,406.406 INFO    ] ***** get_valid_command
[2026-06-05 17:34:05,413.413 INFO    ] {'status': 'success', 'message': 'start-order success', 'message_type': 'command_response', 'imei': 'TM07202501', 'timestamp': '2026-06-05T12:03:59.826382Z', 'metadata_order_id': 'TM07202501260605173325369', 'metadata_request_id': 'start-order-1780661039412-3ud7eztjr'}
[2026-06-05 17:34:05,465.465 INFO    ] Checking historical command: ID=1780661041073-0
[2026-06-05 17:34:05,469.469 INFO    ] process_and_cleanup_command: msg_id=1780661041073-0
[2026-06-05 17:34:05,477.477 INFO    ] is_command_expired: timestamp=2026-06-05T12:04:00.847Z, expiry=30s
[2026-06-05 17:34:05,633.633 INFO    ] Command removed from stream: 1780661041073-0. returning for processing...
[2026-06-05 17:34:05,672.672 INFO    ] ***** get_valid_command
[2026-06-05 17:34:05,680.680 INFO    ] {'timestamp': '2026-06-05T12:04:00.847Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1780661040847-h46c65xa8","orderId":"TM07202501260605173325369","is_vending":false,"accessCode":"49964598"}', 'command': 'process-order', 'timeout': '60'}
[2026-06-05 17:34:05,689.689 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1780661040847-h46c65xa8', 'accessCode': '49964598', 'orderId': 'TM07202501260605173325369', 'is_vending': False}
[2026-06-05 17:34:05,697.697 INFO    ] Handling process order...
[2026-06-05 17:34:05,704.704 INFO    ] Processing process-order command...
[2026-06-05 17:34:05,712.712 INFO    ] 🔍 Lock file Order ID: TM07202501260605173325369, TS: 2026-06-05 17:33:59
[2026-06-05 17:34:05,731.731 INFO    ] ✅ Order lock valid for TM07202501260605173325369
[2026-06-05 17:34:05,738.738 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-05 17:34:05,744.744 INFO    ] processing access code 49964598 for order TM07202501260605173325369
[2026-06-05 17:34:05,751.751 INFO    ] 🔍 Lock file Order ID: TM07202501260605173325369, TS: 2026-06-05 17:33:59
[2026-06-05 17:34:05,758.758 INFO    ] ✅ Order lock valid for TM07202501260605173325369
[2026-06-05 17:34:05,764.764 INFO    ] 2026-06-05 17:34:05
[2026-06-05 17:34:05,822.822 INFO    ] 200
[2026-06-05 17:34:05,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:34:05,836.836 INFO    ] 49964598
[2026-06-05 17:34:05,843.843 INFO    ] 2026-06-05 17:34:05
[2026-06-05 17:34:05,849.849 INFO    ] session id :717433321
[2026-06-05 17:34:05,856.856 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=49964598&imei=TM07202501&session_id=717433321
[2026-06-05 17:34:06,947.947 INFO    ] 200
[2026-06-05 17:34:06,965.965 INFO    ] {"rstatus": true, "msg": "Order Data", "data": {"mobile": "7079826139", "bill_amount": "56", "access_code": "49964598", "order_id": "TM07202501260605173325369", "proposed_sku_json": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm", "offer_id": "", "skuid": "4500648", "sku_total": 10, "door_id": "1", "tray_id": "15", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "mrp": "10", "offer_desc": "", "unit_price": 10}, {"qty": 1, "name": "Modern kitchens Kabuli Channa 26gm", "offer_id": "", "skuid": "4500653", "sku_total": 10, "door_id": "1", "tray_id": "11", "image_url": "https://images.tinymart.in/product/4500653-5107.webp", "mrp": "10", "offer_desc": "", "unit_price": 10}, {"qty": 1, "name": "Alo Frut Mosambi Juice ", "offer_id": "4500612_0701", "skuid": "4500612", "sku_total": 36, "door_id": "2", "tray_id": "34", "image_url": "https://images.tinymart.in/product/4500612-4575.jpg", "mrp": "38", "offer_desc": "", "unit_price": 36}], "invoice_bill": "56"}, "status": true}
[2026-06-05 17:34:06,975.975 INFO    ] 56
[2026-06-05 17:34:07,003.003 INFO    ] TM07202501260605173325369
[2026-06-05 17:34:07,039.039 INFO    ] 7079826139
[2026-06-05 17:34:07,082.082 INFO    ] 2026-06-05 17:34:07
[2026-06-05 17:34:07,088.088 INFO    ] Door Opening for user mobile ending with  six one three nine 
[2026-06-05 17:34:07,096.096 INFO    ] Door Opening for user mobile ending with  six one three nine 
[2026-06-05 17:34:07,106.106 INFO    ] 1c757440cbde1127046fd558e1d5b1a1
[2026-06-05 17:34:07,118.118 INFO    ] 2026-06-05 17:34:07
[2026-06-05 17:34:07,125.125 INFO    ] playing audio file
[2026-06-05 17:34:07,168.168 INFO    ] 2026-06-05 17:34:07
[2026-06-05 17:34:07,179.179 INFO    ] 2026-06-05 17:34:07
[2026-06-05 17:34:07,203.203 INFO    ] publish_status: order_id=TM07202501260605173325369
[2026-06-05 17:34:07,211.211 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605173325369
[2026-06-05 17:34:07,359.359 INFO    ] [publish_status] Message added to stream with ID: 1780661047264-0
[2026-06-05 17:34:07,369.369 INFO    ] Published to order:TM07202501260605173325369: {'timestamp': '2026-06-05T12:04:07.180764Z', 'server_response': '{"status": true, "msg": "Order Data", "data": {"bill_amount": "56", "invoice_bill": "56", "order_id": "TM07202501260605173325369", "mobile": "7079826139", "access_code": "49964598", "proposed_sku_json": [{"sku_total": 10, "skuid": "4500648", "tray_id": "15", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "qty": 1, "door_id": "1", "name": "Modern kitchens Banana Chips 21gm", "offer_desc": "", "mrp": "10", "offer_id": "", "unit_price": 10}, {"sku_total": 10, "skuid": "4500653", "tray_id": "11", "image_url": "https://images.tinymart.in/product/4500653-5107.webp", "qty": 1, "door_id": "1", "name": "Modern kitchens Kabuli Channa 26gm", "offer_desc": "", "mrp": "10", "offer_id": "", "unit_price": 10}, {"sku_total": 36, "skuid": "4500612", "tray_id": "34", "image_url": "https://images.tinymart.in/product/4500612-4575.jpg", "qty": 1, "door_id": "2", "name": "Alo Frut Mosambi Juice ", "offer_desc": "", "mrp": "38", "offer_id": "4500612_0701", "unit_price": 36}]}, "rstatus": true}', 'order_id': 'TM07202501260605173325369', 'server_status': 'order-started'} (ID: 1780661047264-0)
[2026-06-05 17:34:07,848.848 INFO    ] {'server_response': {'status': True, 'msg': 'Order Data', 'data': {'bill_amount': '56', 'invoice_bill': '56', 'order_id': 'TM07202501260605173325369', 'mobile': '7079826139', 'access_code': '49964598', 'proposed_sku_json': [{'sku_total': 10, 'skuid': '4500648', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'qty': 1, 'door_id': '1', 'name': 'Modern kitchens Banana Chips 21gm', 'offer_desc': '', 'mrp': '10', 'offer_id': '', 'unit_price': 10}, {'sku_total': 10, 'skuid': '4500653', 'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500653-5107.webp', 'qty': 1, 'door_id': '1', 'name': 'Modern kitchens Kabuli Channa 26gm', 'offer_desc': '', 'mrp': '10', 'offer_id': '', 'unit_price': 10}, {'sku_total': 36, 'skuid': '4500612', 'tray_id': '34', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'qty': 1, 'door_id': '2', 'name': 'Alo Frut Mosambi Juice ', 'offer_desc': '', 'mrp': '38', 'offer_id': '4500612_0701', 'unit_price': 36}]}, 'rstatus': True}, 'order_id': 'TM07202501260605173325369', 'server_status': 'order-started'}
[2026-06-05 17:34:07,851.851 INFO    ] 200
[2026-06-05 17:34:07,854.854 INFO    ] {"data":{"server_response":{"status":true,"msg":"Order Data","data":{"bill_amount":"56","invoice_bill":"56","order_id":"TM07202501260605173325369","mobile":"7079826139","access_code":"49964598","proposed_sku_json":[{"sku_total":10,"skuid":"4500648","tray_id":"15","image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","qty":1,"door_id":"1","name":"Modern kitchens Banana Chips 21gm","offer_desc":"","mrp":"10","offer_id":"","unit_price":10},{"sku_total":10,"skuid":"4500653","tray_id":"11","image_url":"https:\/\/images.tinymart.in\/product\/4500653-5107.webp","qty":1,"door_id":"1","name":"Modern kitchens Kabuli Channa 26gm","offer_desc":"","mrp":"10","offer_id":"","unit_price":10},{"sku_total":36,"skuid":"4500612","tray_id":"34","image_url":"https:\/\/images.tinymart.in\/product\/4500612-4575.jpg","qty":1,"door_id":"2","name":"Alo Frut Mosambi Juice ","offer_desc":"","mrp":"38","offer_id":"4500612_0701","unit_price":36}]},"rstatus":true},"order_id":"TM07202501260605173325369","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 17:34:07,857.857 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260605173325369', 'server_response': {'status': True, 'data': {'bill_amount': '56', 'invoice_bill': '56', 'order_id': 'TM07202501260605173325369', 'mobile': '7079826139', 'proposed_sku_json': [{'sku_total': 10, 'skuid': '4500648', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'qty': 1, 'door_id': '1', 'name': 'Modern kitchens Banana Chips 21gm', 'offer_desc': '', 'mrp': '10', 'offer_id': '', 'unit_price': 10}, {'sku_total': 10, 'skuid': '4500653', 'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500653-5107.webp', 'qty': 1, 'door_id': '1', 'name': 'Modern kitchens Kabuli Channa 26gm', 'offer_desc': '', 'mrp': '10', 'offer_id': '', 'unit_price': 10}, {'sku_total': 36, 'skuid': '4500612', 'tray_id': '34', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'qty': 1, 'door_id': '2', 'name': 'Alo Frut Mosambi Juice ', 'offer_desc': '', 'mrp': '38', 'offer_id': '4500612_0701', 'unit_price': 36}], 'access_code': '49964598'}, 'rstatus': True, 'msg': 'Order Data'}, 'server_status': 'order-started'}}
[2026-06-05 17:34:07,860.860 INFO    ] 2026-06-05 17:34:07
[2026-06-05 17:34:07,913.913 INFO    ] 200
[2026-06-05 17:34:07,916.916 INFO    ] True
[2026-06-05 17:34:08,105.105 INFO    ] 200
[2026-06-05 17:34:08,108.108 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 17:34:08,111.111 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'False', 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-05 17:34:08,113.113 INFO    ] *** process_order ***
[2026-06-05 17:34:09,346.346 INFO    ] 200
[2026-06-05 17:34:09,348.348 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "delay": 0, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True"}
[2026-06-05 17:34:09,351.351 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'delay': 0, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True}
[2026-06-05 17:34:09,354.354 INFO    ] *** process_order ***
[2026-06-05 17:34:09,357.357 INFO    ] publish_status: order_id=TM07202501260605173325369
[2026-06-05 17:34:09,359.359 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605173325369
[2026-06-05 17:34:09,450.450 INFO    ] [publish_status] Message added to stream with ID: 1780661049427-0
[2026-06-05 17:34:09,452.452 INFO    ] Published to order:TM07202501260605173325369: {'server_response': '{"SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "delay": 0, "voiceNote": "Door is open...", "status": "True", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'order_id': 'TM07202501260605173325369', 'server_status': 'doorOpened'} (ID: 1780661049427-0)
[2026-06-05 17:34:10,522.522 INFO    ] 2026-06-05 17:34:10
[2026-06-05 17:34:10,526.526 INFO    ] publish_status: order_id=TM07202501260605173325369
[2026-06-05 17:34:10,529.529 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605173325369
[2026-06-05 17:34:10,586.586 INFO    ] [publish_status] Message added to stream with ID: 1780661050565-0
[2026-06-05 17:34:10,589.589 INFO    ] Published to order:TM07202501260605173325369: {'timestamp': '2026-06-05T12:04:10.523816Z', 'server_response': '{"SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "delay": 0, "voiceNote": "Please Wait", "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "rstatus": true}', 'order_id': 'TM07202501260605173325369', 'server_status': 'processOrder'} (ID: 1780661050565-0)
[2026-06-05 17:34:10,702.702 INFO    ] {'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'delay': 0, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True}, 'order_id': 'TM07202501260605173325369', 'server_status': 'processOrder'}
[2026-06-05 17:34:10,704.704 INFO    ] 200
[2026-06-05 17:34:10,717.717 INFO    ] {"data":{"server_response":{"SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  ","Note":""},"delay":0,"voiceNote":"Please Wait","status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"rstatus":true},"order_id":"TM07202501260605173325369","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 17:34:10,720.720 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260605173325369', 'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}, 'server_status': 'processOrder'}}
[2026-06-05 17:34:10,723.723 INFO    ] 2026-06-05 17:34:10
[2026-06-05 17:34:10,726.726 INFO    ] None
[2026-06-05 17:34:10,728.728 INFO    ] Opening Door now
[2026-06-05 17:34:10,731.731 INFO    ] Opening Door now
[2026-06-05 17:34:10,733.733 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-05 17:34:10,736.736 INFO    ] 2026-06-05 17:34:10
[2026-06-05 17:34:10,739.739 INFO    ] playing audio file
[2026-06-05 17:34:10,756.756 INFO    ] 2026-06-05 17:34:10
[2026-06-05 17:34:10,759.759 INFO    ] 2026-06-05 17:34:10
[2026-06-05 17:34:13,858.858 INFO    ] 200
[2026-06-05 17:34:13,861.861 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}, {"name": "Modern kitchens Kabuli Channa 26gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 17:34:13,865.865 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Kabuli Channa 26gm', 'qty': 1}]}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-05 17:34:16,942.942 INFO    ] 200
[2026-06-05 17:34:16,944.944 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}, {"name": "Modern kitchens Kabuli Channa 26gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 17:34:16,948.948 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Kabuli Channa 26gm', 'qty': 1}]}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-05 17:34:20,030.030 INFO    ] 200
[2026-06-05 17:34:20,032.032 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}, {"name": "Modern kitchens Kabuli Channa 26gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 17:34:20,035.035 INFO    ] Please close door 1
[2026-06-05 17:34:20,038.038 INFO    ] Please close door 1
[2026-06-05 17:34:20,041.041 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-05 17:34:20,048.048 INFO    ] 2026-06-05 17:34:20
[2026-06-05 17:34:20,051.051 INFO    ] playing audio file
[2026-06-05 17:34:20,072.072 INFO    ] 2026-06-05 17:34:20
[2026-06-05 17:34:20,076.076 INFO    ] publish_status: order_id=TM07202501260605173325369
[2026-06-05 17:34:20,079.079 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605173325369
[2026-06-05 17:34:20,159.159 INFO    ] [publish_status] Message added to stream with ID: 1780661060136-0
[2026-06-05 17:34:20,163.163 INFO    ] Published to order:TM07202501260605173325369: {'timestamp': '2026-06-05T12:04:20.074227Z', 'server_response': '{"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 1", "status": "False", "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}, {"name": "Modern kitchens Kabuli Channa 26gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM07202501260605173325369', 'server_status': 'OrderStatus'} (ID: 1780661060136-0)
[2026-06-05 17:34:20,644.644 INFO    ] {'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Kabuli Channa 26gm', 'qty': 1}]}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM07202501260605173325369', 'server_status': 'OrderStatus'}
[2026-06-05 17:34:20,649.649 INFO    ] 200
[2026-06-05 17:34:20,656.656 INFO    ] {"data":{"server_response":{"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 1","status":"false","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Modern kitchens Banana Chips 21gm","qty":1},{"name":"Modern kitchens Kabuli Channa 26gm","qty":1}]},"error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001},"SectionMain":{"Header":"Door Open"}},"order_id":"TM07202501260605173325369","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 17:34:20,661.661 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260605173325369', 'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Kabuli Channa 26gm', 'qty': 1}]}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}, 'rstatus': False}, 'server_status': 'OrderStatus'}}
[2026-06-05 17:34:20,667.667 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Kabuli Channa 26gm', 'qty': 1}]}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-05 17:34:23,723.723 INFO    ] 200
[2026-06-05 17:34:23,725.725 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Header": "Door 1 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": false, "delay": 1000, "voiceNote": "Door 1 is closed now", "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}, {"name": "Modern kitchens Kabuli Channa 26gm", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 17:34:23,729.729 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'delay': 1000, 'voiceNote': 'Door 1 is closed now', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Kabuli Channa 26gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Close'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'rstatus': False}
[2026-06-05 17:34:26,799.799 INFO    ] 200
[2026-06-05 17:34:26,801.801 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Alo Frut Mosambi Juice ", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 17:34:26,804.804 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'status': 'False', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Alo Frut Mosambi Juice ', 'qty': 1}]}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-05 17:34:29,893.893 INFO    ] 200
[2026-06-05 17:34:29,896.896 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Alo Frut Mosambi Juice ", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 17:34:29,899.899 INFO    ] Please close door 2
[2026-06-05 17:34:29,901.901 INFO    ] Please close door 2
[2026-06-05 17:34:29,904.904 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-05 17:34:29,915.915 INFO    ] 2026-06-05 17:34:29
[2026-06-05 17:34:29,917.917 INFO    ] playing audio file
[2026-06-05 17:34:29,934.934 INFO    ] 2026-06-05 17:34:29
[2026-06-05 17:34:29,957.957 INFO    ] publish_status: order_id=TM07202501260605173325369
[2026-06-05 17:34:29,960.960 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605173325369
[2026-06-05 17:34:30,046.046 INFO    ] [publish_status] Message added to stream with ID: 1780661070024-0
[2026-06-05 17:34:30,048.048 INFO    ] Published to order:TM07202501260605173325369: {'timestamp': '2026-06-05T12:04:29.955519Z', 'server_response': '{"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 2", "status": "False", "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Alo Frut Mosambi Juice ", "qty": 1}]}, "error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM07202501260605173325369', 'server_status': 'OrderStatus'} (ID: 1780661070024-0)
[2026-06-05 17:34:32,917.917 INFO    ] {'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Alo Frut Mosambi Juice ', 'qty': 1}]}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM07202501260605173325369', 'server_status': 'OrderStatus'}
[2026-06-05 17:34:32,920.920 INFO    ] 200
[2026-06-05 17:34:32,922.922 INFO    ] {"data":{"server_response":{"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 2","status":"false","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Alo Frut Mosambi Juice ","qty":1}]},"error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001},"SectionMain":{"Header":"Door Open"}},"order_id":"TM07202501260605173325369","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 17:34:32,926.926 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260605173325369', 'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Alo Frut Mosambi Juice ', 'qty': 1}]}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}, 'rstatus': False}, 'server_status': 'OrderStatus'}}
[2026-06-05 17:34:32,929.929 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Alo Frut Mosambi Juice ', 'qty': 1}]}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-05 17:34:35,989.989 INFO    ] 200
[2026-06-05 17:34:35,992.992 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nCLOSED \nNOW", "Header": "Door 2 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": false, "delay": 1000, "voiceNote": "Door 2 is closed now", "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Alo Frut Mosambi Juice ", "qty": 1}]}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False"}
[2026-06-05 17:34:35,996.996 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW', 'Header': 'Door 2 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'delay': 1000, 'voiceNote': 'Door 2 is closed now', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Alo Frut Mosambi Juice ', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Close'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'rstatus': False}
[2026-06-05 17:34:39,059.059 INFO    ] 200
[2026-06-05 17:34:39,062.062 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": true, "delay": 100, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True"}
[2026-06-05 17:34:39,066.066 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True}
[2026-06-05 17:34:39,069.069 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,072.072 INFO    ] Order Completed 
[2026-06-05 17:34:39,074.074 INFO    ] Order Completed 
[2026-06-05 17:34:39,082.082 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-05 17:34:39,086.086 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,089.089 INFO    ] playing audio file
[2026-06-05 17:34:39,107.107 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,111.111 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True}
[2026-06-05 17:34:39,114.114 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,516.516 INFO    ] 200
[2026-06-05 17:34:39,519.519 INFO    ] {"rstatus": true, "skus": [{"skuid": "4500653", "tray_id": "11", "sku_total": 10.0, "unit_price": "10", "door_id": "", "image_url": "https://images.tinymart.in/product/4500653-5107.webp", "mrp": "10", "qty": 1, "name": "Modern kitchens Kabuli Channa 26gm per peice"}, {"skuid": "4500648", "tray_id": "15", "sku_total": 10.0, "unit_price": "10", "door_id": "", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "mrp": "10", "qty": 1, "name": "Modern kitchens Banana Chips 21gm per peice"}, {"skuid": "4500612", "tray_id": "34", "sku_total": 36.0, "unit_price": "36", "door_id": "", "image_url": "https://images.tinymart.in/product/4500612-4575.jpg", "mrp": "38", "qty": 1, "name": "Alo Frut Mosambi Juice  per peice"}], "logic": "WBL", "anomaly": 0, "total_amount": 56.0, "orderId": "TM07202501260605173325369", "res": "True"}
[2026-06-05 17:34:39,527.527 INFO    ] {'orderId': 'TM07202501260605173325369', 'total_amount': 56.0, 'anomaly': 0, 'res': 'True', 'skus': [{'sku_total': 10.0, 'skuid': '4500653', 'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500653-5107.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Kabuli Channa 26gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 10.0, 'skuid': '4500648', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 36.0, 'skuid': '4500612', 'tray_id': '34', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'qty': 1, 'door_id': '', 'name': 'Alo Frut Mosambi Juice  per peice', 'mrp': '38', 'unit_price': '36'}], 'logic': 'WBL', 'rstatus': True}
[2026-06-05 17:34:39,531.531 INFO    ] {'orderId': 'TM07202501260605173325369', 'total_amount': 56.0, 'anomaly': 0, 'res': 'True', 'skus': [{'sku_total': 10.0, 'skuid': '4500653', 'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500653-5107.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Kabuli Channa 26gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 10.0, 'skuid': '4500648', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 36.0, 'skuid': '4500612', 'tray_id': '34', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'qty': 1, 'door_id': '', 'name': 'Alo Frut Mosambi Juice  per peice', 'mrp': '38', 'unit_price': '36'}], 'logic': 'WBL', 'rstatus': True}
[2026-06-05 17:34:39,534.534 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,537.537 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,540.540 INFO    ] 56
[2026-06-05 17:34:39,543.543 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,546.546 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,549.549 INFO    ]  Your Bill Amount is 56
[2026-06-05 17:34:39,552.552 INFO    ]  Your Bill Amount is 56
[2026-06-05 17:34:39,555.555 INFO    ] e6f6127264a9917503139d6d8551aa48
[2026-06-05 17:34:39,559.559 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,562.562 INFO    ] playing audio file
[2026-06-05 17:34:39,581.581 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,584.584 INFO    ] 2026-06-05 17:34:39
[2026-06-05 17:34:39,589.589 INFO    ] publish_status: order_id=TM07202501260605173325369
[2026-06-05 17:34:39,592.592 INFO    ] [publish_status] Adding message to stream: order:TM07202501260605173325369
[2026-06-05 17:34:39,658.658 INFO    ] [publish_status] Message added to stream with ID: 1780661079636-0
[2026-06-05 17:34:39,661.661 INFO    ] Published to order:TM07202501260605173325369: {'timestamp': '2026-06-05T12:04:39.586658Z', 'server_response': '{"orderId": "TM07202501260605173325369", "total_amount": 56.0, "anomaly": 0, "res": "True", "skus": [{"sku_total": 10.0, "skuid": "4500653", "tray_id": "11", "image_url": "https://images.tinymart.in/product/4500653-5107.webp", "qty": 1, "door_id": "", "name": "Modern kitchens Kabuli Channa 26gm per peice", "mrp": "10", "unit_price": "10"}, {"sku_total": 10.0, "skuid": "4500648", "tray_id": "15", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "qty": 1, "door_id": "", "name": "Modern kitchens Banana Chips 21gm per peice", "mrp": "10", "unit_price": "10"}, {"sku_total": 36.0, "skuid": "4500612", "tray_id": "34", "image_url": "https://images.tinymart.in/product/4500612-4575.jpg", "qty": 1, "door_id": "", "name": "Alo Frut Mosambi Juice  per peice", "mrp": "38", "unit_price": "36"}], "logic": "WBL", "rstatus": true}', 'order_id': 'TM07202501260605173325369', 'server_status': 'invoiceOrder'} (ID: 1780661079636-0)
[2026-06-05 17:34:40,196.196 INFO    ] {'server_response': {'orderId': 'TM07202501260605173325369', 'total_amount': 56.0, 'anomaly': 0, 'res': 'True', 'skus': [{'sku_total': 10.0, 'skuid': '4500653', 'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500653-5107.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Kabuli Channa 26gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 10.0, 'skuid': '4500648', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 36.0, 'skuid': '4500612', 'tray_id': '34', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'qty': 1, 'door_id': '', 'name': 'Alo Frut Mosambi Juice  per peice', 'mrp': '38', 'unit_price': '36'}], 'logic': 'WBL', 'rstatus': True}, 'order_id': 'TM07202501260605173325369', 'server_status': 'invoiceOrder'}
[2026-06-05 17:34:40,198.198 INFO    ] 200
[2026-06-05 17:34:40,201.201 INFO    ] {"data":{"server_response":{"orderId":"TM07202501260605173325369","total_amount":56,"anomaly":0,"res":"true","skus":[{"sku_total":10,"skuid":"4500653","tray_id":"11","image_url":"https:\/\/images.tinymart.in\/product\/4500653-5107.webp","qty":1,"door_id":"","name":"Modern kitchens Kabuli Channa 26gm per peice","mrp":"10","unit_price":"10"},{"sku_total":10,"skuid":"4500648","tray_id":"15","image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","qty":1,"door_id":"","name":"Modern kitchens Banana Chips 21gm per peice","mrp":"10","unit_price":"10"},{"sku_total":36,"skuid":"4500612","tray_id":"34","image_url":"https:\/\/images.tinymart.in\/product\/4500612-4575.jpg","qty":1,"door_id":"","name":"Alo Frut Mosambi Juice  per peice","mrp":"38","unit_price":"36"}],"logic":"WBL","rstatus":true},"order_id":"TM07202501260605173325369","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-05 17:34:40,209.209 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260605173325369', 'server_response': {'orderId': 'TM07202501260605173325369', 'skus': [{'sku_total': 10, 'skuid': '4500653', 'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500653-5107.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Kabuli Channa 26gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 10, 'skuid': '4500648', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 36, 'skuid': '4500612', 'tray_id': '34', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'qty': 1, 'door_id': '', 'name': 'Alo Frut Mosambi Juice  per peice', 'mrp': '38', 'unit_price': '36'}], 'anomaly': 0, 'res': 'true', 'total_amount': 56, 'logic': 'WBL', 'rstatus': True}, 'server_status': 'invoiceOrder'}}
[2026-06-05 17:34:40,213.213 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260605173325369', 'server_response': {'orderId': 'TM07202501260605173325369', 'skus': [{'sku_total': 10, 'skuid': '4500653', 'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500653-5107.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Kabuli Channa 26gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 10, 'skuid': '4500648', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'qty': 1, 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'unit_price': '10'}, {'sku_total': 36, 'skuid': '4500612', 'tray_id': '34', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'qty': 1, 'door_id': '', 'name': 'Alo Frut Mosambi Juice  per peice', 'mrp': '38', 'unit_price': '36'}], 'anomaly': 0, 'res': 'true', 'total_amount': 56, 'logic': 'WBL', 'rstatus': True}, 'server_status': 'invoiceOrder'}}
[2026-06-05 17:34:40,220.220 INFO    ] 2026-06-05 17:34:40
[2026-06-05 17:34:43,921.921 INFO    ] 200
[2026-06-05 17:34:43,924.924 INFO    ] {"orders": [], "orders_synced": [], "order_items_synced": ["TM07202501260605173325369_0", "TM07202501260605173325369_1", "TM07202501260605173325369_2"], "orders_data": [], "tray_synced": ["TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369", "TM07202501260605173325369"], "orders_data_synced": [], "order_items": [], "tray_sync": [], "status": true}
[2026-06-05 17:34:43,927.927 INFO    ] 2026-06-05 17:34:43
[2026-06-05 17:34:44,026.026 INFO    ] 200
[2026-06-05 17:34:44,029.029 INFO    ] True
[2026-06-05 17:34:44,032.032 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260605173325369
[2026-06-05 17:34:44,039.039 INFO    ] start order file deleted
[2026-06-05 17:34:44,042.042 INFO    ] Checking for system updates...
[2026-06-05 17:34:44,077.077 INFO    ] 200
[2026-06-05 17:34:44,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:34:44,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:34:44,138.138 INFO    ] No update needed
[2026-06-05 17:34:44,140.140 INFO    ] Checking for camera pi updates...
[2026-06-05 17:34:44,176.176 INFO    ] 200
[2026-06-05 17:34:44,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:34:44,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:34:44,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:34:44,269.269 INFO    ] No camera update needed
[2026-06-05 17:34:44,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:34:44,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:34:44,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:34:44,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:34:46,328.328 INFO    ] ================================================
[2026-06-05 17:34:46,344.344 INFO    ] Launching Daemon at Fri Jun  5 17:34:46 IST 2026
[2026-06-05 17:34:46,355.355 INFO    ] ================================================
[2026-06-05 17:34:46,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:34:46
[2026-06-05 17:34:47,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:34:47,796.796 INFO    ] Initializing speech engine...
[2026-06-05 17:34:47,805.805 INFO    ] 2026-06-05 17:34:47
[2026-06-05 17:34:48,103.103 INFO    ] 2026-06-05 17:34:48
[2026-06-05 17:34:48,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:34:48,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:34:48,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:34:48,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:34:48,613.613 INFO    ] time= 05/06/2026 17:34:48
[2026-06-05 17:34:48,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:34:48,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:34:48,887.887 INFO    ] No existing commands found in stream
[2026-06-05 17:34:53,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:34:53,913.913 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 17:34:57,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:34:57,844.844 INFO    ] Checking for system updates...
[2026-06-05 17:34:57,883.883 INFO    ] 200
[2026-06-05 17:34:57,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:34:57,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:34:57,950.950 INFO    ] No update needed
[2026-06-05 17:34:57,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 17:34:57,988.988 INFO    ] 200
[2026-06-05 17:34:57,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:34:58,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:34:58,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:34:58,086.086 INFO    ] No camera update needed
[2026-06-05 17:34:58,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:34:58,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:34:58,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:34:58,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:35:00,145.145 INFO    ] ================================================
[2026-06-05 17:35:00,160.160 INFO    ] Launching Daemon at Fri Jun  5 17:35:00 IST 2026
[2026-06-05 17:35:00,172.172 INFO    ] ================================================
[2026-06-05 17:35:00,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:35:00
[2026-06-05 17:35:01,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:35:02,157.157 INFO    ] Initializing speech engine...
[2026-06-05 17:35:02,161.161 INFO    ] 2026-06-05 17:35:02
[2026-06-05 17:35:02,583.583 INFO    ] 2026-06-05 17:35:02
[2026-06-05 17:35:02,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:35:02,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:35:02,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:35:02,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:35:02,995.995 INFO    ] time= 05/06/2026 17:35:02
[2026-06-05 17:35:02,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:35:03,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:35:03,062.062 INFO    ] No existing commands found in stream
[2026-06-05 17:35:08,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:35:08,075.075 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 17:35:09,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:35:09,022.022 INFO    ] Checking for system updates...
[2026-06-05 17:35:09,060.060 INFO    ] 200
[2026-06-05 17:35:09,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:35:09,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:35:09,122.122 INFO    ] No update needed
[2026-06-05 17:35:09,124.124 INFO    ] Checking for camera pi updates...
[2026-06-05 17:35:09,160.160 INFO    ] 200
[2026-06-05 17:35:09,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:35:09,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:35:09,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:35:09,250.250 INFO    ] No camera update needed
[2026-06-05 17:35:09,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:35:09,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:35:09,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:35:09,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:35:11,310.310 INFO    ] ================================================
[2026-06-05 17:35:11,326.326 INFO    ] Launching Daemon at Fri Jun  5 17:35:11 IST 2026
[2026-06-05 17:35:11,338.338 INFO    ] ================================================
[2026-06-05 17:35:11,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:35:11
[2026-06-05 17:35:12,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:35:12,824.824 INFO    ] Initializing speech engine...
[2026-06-05 17:35:12,840.840 INFO    ] 2026-06-05 17:35:12
[2026-06-05 17:35:13,102.102 INFO    ] 2026-06-05 17:35:13
[2026-06-05 17:35:13,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:35:13,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:35:13,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:35:13,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:35:13,606.606 INFO    ] time= 05/06/2026 17:35:13
[2026-06-05 17:35:13,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:35:13,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:35:13,867.867 INFO    ] No existing commands found in stream
[2026-06-05 17:35:18,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:35:18,900.900 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 17:35:22,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:35:22,589.589 INFO    ] Checking for system updates...
[2026-06-05 17:35:22,627.627 INFO    ] 200
[2026-06-05 17:35:22,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:35:22,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:35:22,695.695 INFO    ] No update needed
[2026-06-05 17:35:22,698.698 INFO    ] Checking for camera pi updates...
[2026-06-05 17:35:22,748.748 INFO    ] 200
[2026-06-05 17:35:22,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:35:22,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:35:22,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:35:22,954.954 INFO    ] No camera update needed
[2026-06-05 17:35:22,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:35:22,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:35:22,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:35:22,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:35:25,016.016 INFO    ] ================================================
[2026-06-05 17:35:25,032.032 INFO    ] Launching Daemon at Fri Jun  5 17:35:25 IST 2026
[2026-06-05 17:35:25,044.044 INFO    ] ================================================
[2026-06-05 17:35:25,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:35:25
[2026-06-05 17:35:26,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:35:26,498.498 INFO    ] Initializing speech engine...
[2026-06-05 17:35:26,521.521 INFO    ] 2026-06-05 17:35:26
[2026-06-05 17:35:26,786.786 INFO    ] 2026-06-05 17:35:26
[2026-06-05 17:35:26,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:35:27,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:35:27,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:35:27,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:35:27,173.173 INFO    ] time= 05/06/2026 17:35:27
[2026-06-05 17:35:27,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:35:27,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:35:27,368.368 INFO    ] No existing commands found in stream
[2026-06-05 17:35:32,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:35:32,393.393 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 17:35:33,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:35:33,623.623 INFO    ] Checking for system updates...
[2026-06-05 17:35:33,661.661 INFO    ] 200
[2026-06-05 17:35:33,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:35:33,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:35:33,726.726 INFO    ] No update needed
[2026-06-05 17:35:33,728.728 INFO    ] Checking for camera pi updates...
[2026-06-05 17:35:33,764.764 INFO    ] 200
[2026-06-05 17:35:33,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:35:33,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:35:33,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:35:33,857.857 INFO    ] No camera update needed
[2026-06-05 17:35:33,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:35:33,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:35:33,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:35:33,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:35:35,917.917 INFO    ] ================================================
[2026-06-05 17:35:35,933.933 INFO    ] Launching Daemon at Fri Jun  5 17:35:35 IST 2026
[2026-06-05 17:35:35,946.946 INFO    ] ================================================
[2026-06-05 17:35:36,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:35:36
[2026-06-05 17:35:37,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:35:37,510.510 INFO    ] Initializing speech engine...
[2026-06-05 17:35:37,522.522 INFO    ] 2026-06-05 17:35:37
[2026-06-05 17:35:37,787.787 INFO    ] 2026-06-05 17:35:37
[2026-06-05 17:35:37,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:35:38,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:35:38,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:35:38,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:35:38,307.307 INFO    ] time= 05/06/2026 17:35:38
[2026-06-05 17:35:38,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:35:38,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:35:38,507.507 INFO    ] No existing commands found in stream
[2026-06-05 17:35:43,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:35:43,536.536 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 17:35:47,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:35:47,311.311 INFO    ] Checking for system updates...
[2026-06-05 17:35:47,350.350 INFO    ] 200
[2026-06-05 17:35:47,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:35:47,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:35:47,413.413 INFO    ] No update needed
[2026-06-05 17:35:47,416.416 INFO    ] Checking for camera pi updates...
[2026-06-05 17:35:47,452.452 INFO    ] 200
[2026-06-05 17:35:47,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:35:47,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:35:47,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:35:47,549.549 INFO    ] No camera update needed
[2026-06-05 17:35:47,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:35:47,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:35:47,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:35:47,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:35:49,609.609 INFO    ] ================================================
[2026-06-05 17:35:49,626.626 INFO    ] Launching Daemon at Fri Jun  5 17:35:49 IST 2026
[2026-06-05 17:35:49,638.638 INFO    ] ================================================
[2026-06-05 17:35:50,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:35:50
[2026-06-05 17:35:50,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:35:51,233.233 INFO    ] Initializing speech engine...
[2026-06-05 17:35:51,243.243 INFO    ] 2026-06-05 17:35:51
[2026-06-05 17:35:51,515.515 INFO    ] 2026-06-05 17:35:51
[2026-06-05 17:35:51,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:35:51,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:35:51,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:35:51,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:35:52,007.007 INFO    ] time= 05/06/2026 17:35:51
[2026-06-05 17:35:52,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:35:52,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:35:52,248.248 INFO    ] No existing commands found in stream
[2026-06-05 17:35:57,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:35:57,267.267 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 17:36:00,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:36:00,182.182 INFO    ] Checking for system updates...
[2026-06-05 17:36:00,224.224 INFO    ] 200
[2026-06-05 17:36:00,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:00,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:36:00,290.290 INFO    ] No update needed
[2026-06-05 17:36:00,293.293 INFO    ] Checking for camera pi updates...
[2026-06-05 17:36:00,332.332 INFO    ] 200
[2026-06-05 17:36:00,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:00,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:36:00,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:36:00,423.423 INFO    ] No camera update needed
[2026-06-05 17:36:00,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:36:00,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:36:00,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:36:00,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:36:02,496.496 INFO    ] ================================================
[2026-06-05 17:36:02,519.519 INFO    ] Launching Daemon at Fri Jun  5 17:36:02 IST 2026
[2026-06-05 17:36:02,543.543 INFO    ] ================================================
[2026-06-05 17:36:03,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:36:03
[2026-06-05 17:36:03,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:36:04,170.170 INFO    ] Initializing speech engine...
[2026-06-05 17:36:04,187.187 INFO    ] 2026-06-05 17:36:04
[2026-06-05 17:36:04,476.476 INFO    ] 2026-06-05 17:36:04
[2026-06-05 17:36:04,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:36:04,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:36:04,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:36:04,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:36:04,901.901 INFO    ] time= 05/06/2026 17:36:04
[2026-06-05 17:36:04,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:36:04,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:36:05,090.090 INFO    ] No existing commands found in stream
[2026-06-05 17:36:10,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:36:10,118.118 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 17:36:12,100.100 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:36:12,103.103 INFO    ] Checking for system updates...
[2026-06-05 17:36:12,141.141 INFO    ] 200
[2026-06-05 17:36:12,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:12,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:36:12,202.202 INFO    ] No update needed
[2026-06-05 17:36:12,204.204 INFO    ] Checking for camera pi updates...
[2026-06-05 17:36:12,240.240 INFO    ] 200
[2026-06-05 17:36:12,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:12,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:36:12,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:36:12,330.330 INFO    ] No camera update needed
[2026-06-05 17:36:12,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:36:12,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:36:12,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:36:12,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:36:14,389.389 INFO    ] ================================================
[2026-06-05 17:36:14,405.405 INFO    ] Launching Daemon at Fri Jun  5 17:36:14 IST 2026
[2026-06-05 17:36:14,417.417 INFO    ] ================================================
[2026-06-05 17:36:15,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:36:14
[2026-06-05 17:36:15,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:36:15,888.888 INFO    ] Initializing speech engine...
[2026-06-05 17:36:15,897.897 INFO    ] 2026-06-05 17:36:15
[2026-06-05 17:36:16,155.155 INFO    ] 2026-06-05 17:36:16
[2026-06-05 17:36:16,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:36:16,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:36:16,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:36:16,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:36:16,652.652 INFO    ] time= 05/06/2026 17:36:16
[2026-06-05 17:36:16,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:36:16,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:36:16,856.856 INFO    ] No existing commands found in stream
[2026-06-05 17:36:21,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:36:21,874.874 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 17:36:25,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:36:25,992.992 INFO    ] Checking for system updates...
[2026-06-05 17:36:26,032.032 INFO    ] 200
[2026-06-05 17:36:26,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:26,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:36:26,102.102 INFO    ] No update needed
[2026-06-05 17:36:26,105.105 INFO    ] Checking for camera pi updates...
[2026-06-05 17:36:26,144.144 INFO    ] 200
[2026-06-05 17:36:26,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:26,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:36:26,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:36:26,244.244 INFO    ] No camera update needed
[2026-06-05 17:36:26,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:36:26,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:36:26,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:36:26,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:36:28,306.306 INFO    ] ================================================
[2026-06-05 17:36:28,323.323 INFO    ] Launching Daemon at Fri Jun  5 17:36:28 IST 2026
[2026-06-05 17:36:28,334.334 INFO    ] ================================================
[2026-06-05 17:36:28,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:36:28
[2026-06-05 17:36:29,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:36:29,848.848 INFO    ] Initializing speech engine...
[2026-06-05 17:36:29,863.863 INFO    ] 2026-06-05 17:36:29
[2026-06-05 17:36:30,157.157 INFO    ] 2026-06-05 17:36:30
[2026-06-05 17:36:30,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:36:30,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:36:30,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:36:30,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:36:30,790.790 INFO    ] time= 05/06/2026 17:36:30
[2026-06-05 17:36:30,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:36:30,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:36:30,943.943 INFO    ] No existing commands found in stream
[2026-06-05 17:36:35,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:36:35,970.970 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-05 17:36:39,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:36:39,534.534 INFO    ] Checking for system updates...
[2026-06-05 17:36:39,572.572 INFO    ] 200
[2026-06-05 17:36:39,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:39,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:36:39,632.632 INFO    ] No update needed
[2026-06-05 17:36:39,635.635 INFO    ] Checking for camera pi updates...
[2026-06-05 17:36:39,678.678 INFO    ] 200
[2026-06-05 17:36:39,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:39,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:36:39,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:36:39,773.773 INFO    ] No camera update needed
[2026-06-05 17:36:39,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:36:39,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:36:39,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:36:39,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:36:41,833.833 INFO    ] ================================================
[2026-06-05 17:36:41,849.849 INFO    ] Launching Daemon at Fri Jun  5 17:36:41 IST 2026
[2026-06-05 17:36:41,860.860 INFO    ] ================================================
[2026-06-05 17:36:42,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:36:42
[2026-06-05 17:36:43,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:36:43,457.457 INFO    ] Initializing speech engine...
[2026-06-05 17:36:43,464.464 INFO    ] 2026-06-05 17:36:43
[2026-06-05 17:36:43,752.752 INFO    ] 2026-06-05 17:36:43
[2026-06-05 17:36:43,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:36:44,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:36:44,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:36:44,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:36:44,286.286 INFO    ] time= 05/06/2026 17:36:44
[2026-06-05 17:36:44,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:36:44,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:36:44,451.451 INFO    ] No existing commands found in stream
[2026-06-05 17:36:49,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:36:49,472.472 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 17:36:52,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:36:52,125.125 INFO    ] Checking for system updates...
[2026-06-05 17:36:52,167.167 INFO    ] 200
[2026-06-05 17:36:52,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:52,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:36:52,229.229 INFO    ] No update needed
[2026-06-05 17:36:52,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 17:36:52,267.267 INFO    ] 200
[2026-06-05 17:36:52,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:36:52,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:36:52,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:36:52,359.359 INFO    ] No camera update needed
[2026-06-05 17:36:52,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:36:52,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:36:52,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:36:52,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:36:54,418.418 INFO    ] ================================================
[2026-06-05 17:36:54,433.433 INFO    ] Launching Daemon at Fri Jun  5 17:36:54 IST 2026
[2026-06-05 17:36:54,444.444 INFO    ] ================================================
[2026-06-05 17:36:55,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:36:55
[2026-06-05 17:36:55,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:36:56,058.058 INFO    ] Initializing speech engine...
[2026-06-05 17:36:56,080.080 INFO    ] 2026-06-05 17:36:56
[2026-06-05 17:36:56,358.358 INFO    ] 2026-06-05 17:36:56
[2026-06-05 17:36:56,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:36:56,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:36:56,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:36:56,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:36:56,884.884 INFO    ] time= 05/06/2026 17:36:56
[2026-06-05 17:36:56,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:36:56,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:36:57,059.059 INFO    ] No existing commands found in stream
[2026-06-05 17:37:02,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:37:02,094.094 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 17:37:05,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:37:05,060.060 INFO    ] Checking for system updates...
[2026-06-05 17:37:05,098.098 INFO    ] 200
[2026-06-05 17:37:05,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:05,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:37:05,199.199 INFO    ] No update needed
[2026-06-05 17:37:05,201.201 INFO    ] Checking for camera pi updates...
[2026-06-05 17:37:05,236.236 INFO    ] 200
[2026-06-05 17:37:05,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:05,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:37:05,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:37:05,342.342 INFO    ] No camera update needed
[2026-06-05 17:37:05,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:37:05,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:37:05,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:37:05,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:37:07,398.398 INFO    ] ================================================
[2026-06-05 17:37:07,414.414 INFO    ] Launching Daemon at Fri Jun  5 17:37:07 IST 2026
[2026-06-05 17:37:07,425.425 INFO    ] ================================================
[2026-06-05 17:37:08,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:37:08
[2026-06-05 17:37:08,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:37:08,865.865 INFO    ] Initializing speech engine...
[2026-06-05 17:37:08,888.888 INFO    ] 2026-06-05 17:37:08
[2026-06-05 17:37:09,156.156 INFO    ] 2026-06-05 17:37:09
[2026-06-05 17:37:09,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:37:09,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:37:09,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:37:09,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:37:09,616.616 INFO    ] time= 05/06/2026 17:37:09
[2026-06-05 17:37:09,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:37:09,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:37:09,876.876 INFO    ] No existing commands found in stream
[2026-06-05 17:37:14,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:37:14,901.901 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 17:37:18,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:37:18,202.202 INFO    ] Checking for system updates...
[2026-06-05 17:37:18,240.240 INFO    ] 200
[2026-06-05 17:37:18,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:18,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:37:18,302.302 INFO    ] No update needed
[2026-06-05 17:37:18,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 17:37:18,349.349 INFO    ] 200
[2026-06-05 17:37:18,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:18,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:37:18,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:37:18,424.424 INFO    ] No camera update needed
[2026-06-05 17:37:18,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:37:18,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:37:18,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:37:18,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:37:20,485.485 INFO    ] ================================================
[2026-06-05 17:37:20,501.501 INFO    ] Launching Daemon at Fri Jun  5 17:37:20 IST 2026
[2026-06-05 17:37:20,512.512 INFO    ] ================================================
[2026-06-05 17:37:21,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:37:21
[2026-06-05 17:37:21,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:37:22,086.086 INFO    ] Initializing speech engine...
[2026-06-05 17:37:22,100.100 INFO    ] 2026-06-05 17:37:22
[2026-06-05 17:37:22,379.379 INFO    ] 2026-06-05 17:37:22
[2026-06-05 17:37:22,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:37:22,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:37:22,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:37:22,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:37:22,760.760 INFO    ] time= 05/06/2026 17:37:22
[2026-06-05 17:37:22,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:37:22,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:37:22,887.887 INFO    ] No existing commands found in stream
[2026-06-05 17:37:27,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:37:27,901.901 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 17:37:30,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:37:30,167.167 INFO    ] Checking for system updates...
[2026-06-05 17:37:30,205.205 INFO    ] 200
[2026-06-05 17:37:30,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:30,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:37:30,279.279 INFO    ] No update needed
[2026-06-05 17:37:30,281.281 INFO    ] Checking for camera pi updates...
[2026-06-05 17:37:30,317.317 INFO    ] 200
[2026-06-05 17:37:30,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:30,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:37:30,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:37:30,516.516 INFO    ] No camera update needed
[2026-06-05 17:37:30,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:37:30,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:37:30,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:37:30,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:37:32,576.576 INFO    ] ================================================
[2026-06-05 17:37:32,597.597 INFO    ] Launching Daemon at Fri Jun  5 17:37:32 IST 2026
[2026-06-05 17:37:32,614.614 INFO    ] ================================================
[2026-06-05 17:37:33,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:37:33
[2026-06-05 17:37:33,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:37:34,271.271 INFO    ] Initializing speech engine...
[2026-06-05 17:37:34,283.283 INFO    ] 2026-06-05 17:37:34
[2026-06-05 17:37:34,557.557 INFO    ] 2026-06-05 17:37:34
[2026-06-05 17:37:34,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:37:34,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:37:34,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:37:34,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:37:35,037.037 INFO    ] time= 05/06/2026 17:37:34
[2026-06-05 17:37:35,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:37:35,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:37:35,236.236 INFO    ] No existing commands found in stream
[2026-06-05 17:37:40,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:37:40,268.268 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 17:37:41,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:37:41,816.816 INFO    ] Checking for system updates...
[2026-06-05 17:37:41,857.857 INFO    ] 200
[2026-06-05 17:37:41,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:41,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:37:41,941.941 INFO    ] No update needed
[2026-06-05 17:37:41,944.944 INFO    ] Checking for camera pi updates...
[2026-06-05 17:37:41,984.984 INFO    ] 200
[2026-06-05 17:37:41,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:42,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:37:42,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:37:42,090.090 INFO    ] No camera update needed
[2026-06-05 17:37:42,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:37:42,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:37:42,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:37:42,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:37:44,156.156 INFO    ] ================================================
[2026-06-05 17:37:44,178.178 INFO    ] Launching Daemon at Fri Jun  5 17:37:44 IST 2026
[2026-06-05 17:37:44,202.202 INFO    ] ================================================
[2026-06-05 17:37:44,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:37:44
[2026-06-05 17:37:45,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:37:45,798.798 INFO    ] Initializing speech engine...
[2026-06-05 17:37:45,810.810 INFO    ] 2026-06-05 17:37:45
[2026-06-05 17:37:46,139.139 INFO    ] 2026-06-05 17:37:46
[2026-06-05 17:37:46,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:37:46,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:37:46,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:37:46,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:37:46,655.655 INFO    ] time= 05/06/2026 17:37:46
[2026-06-05 17:37:46,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:37:46,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:37:46,811.811 INFO    ] No existing commands found in stream
[2026-06-05 17:37:51,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:37:51,833.833 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 17:37:55,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:37:55,852.852 INFO    ] Checking for system updates...
[2026-06-05 17:37:55,891.891 INFO    ] 200
[2026-06-05 17:37:55,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:55,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:37:55,953.953 INFO    ] No update needed
[2026-06-05 17:37:55,955.955 INFO    ] Checking for camera pi updates...
[2026-06-05 17:37:55,990.990 INFO    ] 200
[2026-06-05 17:37:55,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:37:56,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:37:56,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:37:56,088.088 INFO    ] No camera update needed
[2026-06-05 17:37:56,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:37:56,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:37:56,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:37:56,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:37:58,149.149 INFO    ] ================================================
[2026-06-05 17:37:58,166.166 INFO    ] Launching Daemon at Fri Jun  5 17:37:58 IST 2026
[2026-06-05 17:37:58,178.178 INFO    ] ================================================
[2026-06-05 17:37:58,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:37:58
[2026-06-05 17:37:59,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:37:59,751.751 INFO    ] Initializing speech engine...
[2026-06-05 17:37:59,776.776 INFO    ] 2026-06-05 17:37:59
[2026-06-05 17:38:00,063.063 INFO    ] 2026-06-05 17:38:00
[2026-06-05 17:38:00,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:38:00,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:38:00,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:38:00,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:38:00,423.423 INFO    ] time= 05/06/2026 17:38:00
[2026-06-05 17:38:00,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:38:00,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:38:00,505.505 INFO    ] No existing commands found in stream
[2026-06-05 17:38:05,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:38:05,520.520 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 17:38:07,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:38:07,050.050 INFO    ] Checking for system updates...
[2026-06-05 17:38:07,087.087 INFO    ] 200
[2026-06-05 17:38:07,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:07,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:38:07,152.152 INFO    ] No update needed
[2026-06-05 17:38:07,154.154 INFO    ] Checking for camera pi updates...
[2026-06-05 17:38:07,190.190 INFO    ] 200
[2026-06-05 17:38:07,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:07,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:38:07,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:38:07,277.277 INFO    ] No camera update needed
[2026-06-05 17:38:07,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:38:07,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:38:07,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:38:07,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:38:09,336.336 INFO    ] ================================================
[2026-06-05 17:38:09,352.352 INFO    ] Launching Daemon at Fri Jun  5 17:38:09 IST 2026
[2026-06-05 17:38:09,364.364 INFO    ] ================================================
[2026-06-05 17:38:10,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:38:10
[2026-06-05 17:38:10,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:38:11,030.030 INFO    ] Initializing speech engine...
[2026-06-05 17:38:11,040.040 INFO    ] 2026-06-05 17:38:11
[2026-06-05 17:38:11,332.332 INFO    ] 2026-06-05 17:38:11
[2026-06-05 17:38:11,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:38:12,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:38:12,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:38:12,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:38:12,774.774 INFO    ] time= 05/06/2026 17:38:12
[2026-06-05 17:38:12,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:38:12,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:38:12,879.879 INFO    ] No existing commands found in stream
[2026-06-05 17:38:17,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:38:17,894.894 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 17:38:20,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:38:20,400.400 INFO    ] Checking for system updates...
[2026-06-05 17:38:20,440.440 INFO    ] 200
[2026-06-05 17:38:20,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:20,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:38:20,507.507 INFO    ] No update needed
[2026-06-05 17:38:20,510.510 INFO    ] Checking for camera pi updates...
[2026-06-05 17:38:20,545.545 INFO    ] 200
[2026-06-05 17:38:20,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:20,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:38:20,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:38:20,639.639 INFO    ] No camera update needed
[2026-06-05 17:38:20,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:38:20,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:38:20,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:38:20,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:38:22,698.698 INFO    ] ================================================
[2026-06-05 17:38:22,716.716 INFO    ] Launching Daemon at Fri Jun  5 17:38:22 IST 2026
[2026-06-05 17:38:22,727.727 INFO    ] ================================================
[2026-06-05 17:38:23,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:38:23
[2026-06-05 17:38:24,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:38:24,363.363 INFO    ] Initializing speech engine...
[2026-06-05 17:38:24,371.371 INFO    ] 2026-06-05 17:38:24
[2026-06-05 17:38:24,649.649 INFO    ] 2026-06-05 17:38:24
[2026-06-05 17:38:24,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:38:25,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:38:25,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:38:25,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:38:26,014.014 INFO    ] time= 05/06/2026 17:38:25
[2026-06-05 17:38:26,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:38:26,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:38:26,092.092 INFO    ] No existing commands found in stream
[2026-06-05 17:38:31,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:38:31,108.108 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 17:38:34,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:38:34,770.770 INFO    ] Checking for system updates...
[2026-06-05 17:38:34,808.808 INFO    ] 200
[2026-06-05 17:38:34,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:34,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:38:34,866.866 INFO    ] No update needed
[2026-06-05 17:38:34,869.869 INFO    ] Checking for camera pi updates...
[2026-06-05 17:38:34,906.906 INFO    ] 200
[2026-06-05 17:38:34,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:34,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:38:34,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:38:35,000.000 INFO    ] No camera update needed
[2026-06-05 17:38:35,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:38:35,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:38:35,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:38:35,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:38:37,055.055 INFO    ] ================================================
[2026-06-05 17:38:37,070.070 INFO    ] Launching Daemon at Fri Jun  5 17:38:37 IST 2026
[2026-06-05 17:38:37,082.082 INFO    ] ================================================
[2026-06-05 17:38:37,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:38:37
[2026-06-05 17:38:38,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:38:38,504.504 INFO    ] Initializing speech engine...
[2026-06-05 17:38:38,512.512 INFO    ] 2026-06-05 17:38:38
[2026-06-05 17:38:38,809.809 INFO    ] 2026-06-05 17:38:38
[2026-06-05 17:38:38,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:38:39,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:38:39,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:38:39,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:38:39,225.225 INFO    ] time= 05/06/2026 17:38:39
[2026-06-05 17:38:39,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:38:39,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:38:39,312.312 INFO    ] No existing commands found in stream
[2026-06-05 17:38:44,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:38:44,351.351 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 17:38:45,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:38:45,668.668 INFO    ] Checking for system updates...
[2026-06-05 17:38:45,708.708 INFO    ] 200
[2026-06-05 17:38:45,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:45,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:38:45,766.766 INFO    ] No update needed
[2026-06-05 17:38:45,769.769 INFO    ] Checking for camera pi updates...
[2026-06-05 17:38:45,808.808 INFO    ] 200
[2026-06-05 17:38:45,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:45,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:38:45,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:38:45,905.905 INFO    ] No camera update needed
[2026-06-05 17:38:45,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:38:45,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:38:45,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:38:45,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:38:47,964.964 INFO    ] ================================================
[2026-06-05 17:38:47,980.980 INFO    ] Launching Daemon at Fri Jun  5 17:38:47 IST 2026
[2026-06-05 17:38:47,991.991 INFO    ] ================================================
[2026-06-05 17:38:48,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:38:48
[2026-06-05 17:38:49,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:38:49,401.401 INFO    ] Initializing speech engine...
[2026-06-05 17:38:49,416.416 INFO    ] 2026-06-05 17:38:49
[2026-06-05 17:38:49,683.683 INFO    ] 2026-06-05 17:38:49
[2026-06-05 17:38:49,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:38:49,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:38:49,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:38:50,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:38:50,182.182 INFO    ] time= 05/06/2026 17:38:50
[2026-06-05 17:38:50,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:38:50,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:38:50,321.321 INFO    ] No existing commands found in stream
[2026-06-05 17:38:55,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:38:55,336.336 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 17:38:57,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:38:57,554.554 INFO    ] Checking for system updates...
[2026-06-05 17:38:57,595.595 INFO    ] 200
[2026-06-05 17:38:57,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:57,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:38:57,654.654 INFO    ] No update needed
[2026-06-05 17:38:57,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 17:38:57,693.693 INFO    ] 200
[2026-06-05 17:38:57,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:38:57,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:38:57,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:38:57,783.783 INFO    ] No camera update needed
[2026-06-05 17:38:57,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:38:57,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:38:57,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:38:57,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:38:59,842.842 INFO    ] ================================================
[2026-06-05 17:38:59,858.858 INFO    ] Launching Daemon at Fri Jun  5 17:38:59 IST 2026
[2026-06-05 17:38:59,869.869 INFO    ] ================================================
[2026-06-05 17:39:00,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:39:00
[2026-06-05 17:39:01,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:39:01,490.490 INFO    ] Initializing speech engine...
[2026-06-05 17:39:01,503.503 INFO    ] 2026-06-05 17:39:01
[2026-06-05 17:39:01,849.849 INFO    ] 2026-06-05 17:39:01
[2026-06-05 17:39:01,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:39:02,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:39:02,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:39:02,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:39:02,301.301 INFO    ] time= 05/06/2026 17:39:02
[2026-06-05 17:39:02,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:39:02,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:39:02,516.516 INFO    ] No existing commands found in stream
[2026-06-05 17:39:07,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:39:07,537.537 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 17:39:11,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:39:11,322.322 INFO    ] Checking for system updates...
[2026-06-05 17:39:11,360.360 INFO    ] 200
[2026-06-05 17:39:11,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:39:11,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:39:11,429.429 INFO    ] No update needed
[2026-06-05 17:39:11,432.432 INFO    ] Checking for camera pi updates...
[2026-06-05 17:39:11,471.471 INFO    ] 200
[2026-06-05 17:39:11,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:39:11,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:39:11,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:39:11,561.561 INFO    ] No camera update needed
[2026-06-05 17:39:11,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:39:11,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:39:11,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:39:11,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:39:13,616.616 INFO    ] ================================================
[2026-06-05 17:39:13,631.631 INFO    ] Launching Daemon at Fri Jun  5 17:39:13 IST 2026
[2026-06-05 17:39:13,642.642 INFO    ] ================================================
[2026-06-05 17:39:14,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:39:14
[2026-06-05 17:39:14,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:39:15,107.107 INFO    ] Initializing speech engine...
[2026-06-05 17:39:15,116.116 INFO    ] 2026-06-05 17:39:15
[2026-06-05 17:39:15,377.377 INFO    ] 2026-06-05 17:39:15
[2026-06-05 17:39:15,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:39:15,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:39:15,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:39:15,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:39:15,854.854 INFO    ] time= 05/06/2026 17:39:15
[2026-06-05 17:39:15,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:39:15,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:39:16,060.060 INFO    ] No existing commands found in stream
[2026-06-05 17:39:21,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:39:21,094.094 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 17:39:25,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:39:25,810.810 INFO    ] Checking for system updates...
[2026-06-05 17:39:25,846.846 INFO    ] 200
[2026-06-05 17:39:25,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:39:25,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:39:25,912.912 INFO    ] No update needed
[2026-06-05 17:39:25,915.915 INFO    ] Checking for camera pi updates...
[2026-06-05 17:39:25,949.949 INFO    ] 200
[2026-06-05 17:39:25,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:39:25,992.992 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:39:26,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:39:26,041.041 INFO    ] No camera update needed
[2026-06-05 17:39:26,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:39:26,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:39:26,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:39:26,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:39:28,098.098 INFO    ] ================================================
[2026-06-05 17:39:28,113.113 INFO    ] Launching Daemon at Fri Jun  5 17:39:28 IST 2026
[2026-06-05 17:39:28,123.123 INFO    ] ================================================
[2026-06-05 17:39:28,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:39:28
[2026-06-05 17:39:29,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:39:29,525.525 INFO    ] Initializing speech engine...
[2026-06-05 17:39:29,547.547 INFO    ] 2026-06-05 17:39:29
[2026-06-05 17:39:29,806.806 INFO    ] 2026-06-05 17:39:29
[2026-06-05 17:39:29,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:39:30,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:39:30,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:39:30,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:39:30,251.251 INFO    ] time= 05/06/2026 17:39:30
[2026-06-05 17:39:30,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:39:30,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:39:30,513.513 INFO    ] No existing commands found in stream
[2026-06-05 17:39:35,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:39:35,543.543 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 17:39:38,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:39:38,430.430 INFO    ] Checking for system updates...
[2026-06-05 17:39:38,468.468 INFO    ] 200
[2026-06-05 17:39:38,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:39:38,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:39:38,534.534 INFO    ] No update needed
[2026-06-05 17:39:38,536.536 INFO    ] Checking for camera pi updates...
[2026-06-05 17:39:38,571.571 INFO    ] 200
[2026-06-05 17:39:38,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:39:38,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:39:38,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:39:38,761.761 INFO    ] No camera update needed
[2026-06-05 17:39:38,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:39:38,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:39:38,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:39:38,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:39:40,817.817 INFO    ] ================================================
[2026-06-05 17:39:40,832.832 INFO    ] Launching Daemon at Fri Jun  5 17:39:40 IST 2026
[2026-06-05 17:39:40,843.843 INFO    ] ================================================
[2026-06-05 17:39:41,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:39:41
[2026-06-05 17:39:42,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:39:42,355.355 INFO    ] Initializing speech engine...
[2026-06-05 17:39:42,364.364 INFO    ] 2026-06-05 17:39:42
[2026-06-05 17:39:42,625.625 INFO    ] 2026-06-05 17:39:42
[2026-06-05 17:39:42,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:39:42,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:39:42,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:39:43,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:39:43,103.103 INFO    ] time= 05/06/2026 17:39:43
[2026-06-05 17:39:43,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:39:43,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:39:43,319.319 INFO    ] No existing commands found in stream
[2026-06-05 17:39:48,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:39:48,350.350 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 17:39:49,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:39:49,740.740 INFO    ] Checking for system updates...
[2026-06-05 17:39:49,776.776 INFO    ] 200
[2026-06-05 17:39:49,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:39:49,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:39:49,833.833 INFO    ] No update needed
[2026-06-05 17:39:49,836.836 INFO    ] Checking for camera pi updates...
[2026-06-05 17:39:49,870.870 INFO    ] 200
[2026-06-05 17:39:49,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:39:49,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:39:49,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:39:49,958.958 INFO    ] No camera update needed
[2026-06-05 17:39:49,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:39:49,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:39:49,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:39:49,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:39:52,013.013 INFO    ] ================================================
[2026-06-05 17:39:52,028.028 INFO    ] Launching Daemon at Fri Jun  5 17:39:52 IST 2026
[2026-06-05 17:39:52,038.038 INFO    ] ================================================
[2026-06-05 17:39:52,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:39:52
[2026-06-05 17:39:53,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:39:53,507.507 INFO    ] Initializing speech engine...
[2026-06-05 17:39:53,516.516 INFO    ] 2026-06-05 17:39:53
[2026-06-05 17:39:53,779.779 INFO    ] 2026-06-05 17:39:53
[2026-06-05 17:39:53,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:39:55,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:39:55,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:39:55,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:39:55,497.497 INFO    ] time= 05/06/2026 17:39:55
[2026-06-05 17:39:55,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:39:55,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:39:55,645.645 INFO    ] No existing commands found in stream
[2026-06-05 17:40:00,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:40:00,679.679 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 17:40:03,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:40:03,231.231 INFO    ] Checking for system updates...
[2026-06-05 17:40:03,269.269 INFO    ] 200
[2026-06-05 17:40:03,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:03,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:40:03,340.340 INFO    ] No update needed
[2026-06-05 17:40:03,342.342 INFO    ] Checking for camera pi updates...
[2026-06-05 17:40:03,379.379 INFO    ] 200
[2026-06-05 17:40:03,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:03,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:40:03,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:40:03,479.479 INFO    ] No camera update needed
[2026-06-05 17:40:03,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:40:03,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:40:03,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:40:03,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:40:05,535.535 INFO    ] ================================================
[2026-06-05 17:40:05,552.552 INFO    ] Launching Daemon at Fri Jun  5 17:40:05 IST 2026
[2026-06-05 17:40:05,563.563 INFO    ] ================================================
[2026-06-05 17:40:06,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:40:06
[2026-06-05 17:40:06,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:40:07,061.061 INFO    ] Initializing speech engine...
[2026-06-05 17:40:07,073.073 INFO    ] 2026-06-05 17:40:07
[2026-06-05 17:40:07,342.342 INFO    ] 2026-06-05 17:40:07
[2026-06-05 17:40:07,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:40:07,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:40:07,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:40:07,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:40:07,792.792 INFO    ] time= 05/06/2026 17:40:07
[2026-06-05 17:40:07,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:40:07,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:40:08,015.015 INFO    ] No existing commands found in stream
[2026-06-05 17:40:13,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:40:13,045.045 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 17:40:14,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:40:14,829.829 INFO    ] Checking for system updates...
[2026-06-05 17:40:14,868.868 INFO    ] 200
[2026-06-05 17:40:14,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:14,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:40:14,930.930 INFO    ] No update needed
[2026-06-05 17:40:14,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 17:40:14,968.968 INFO    ] 200
[2026-06-05 17:40:14,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:15,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:40:15,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:40:15,060.060 INFO    ] No camera update needed
[2026-06-05 17:40:15,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:40:15,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:40:15,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:40:15,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:40:17,117.117 INFO    ] ================================================
[2026-06-05 17:40:17,133.133 INFO    ] Launching Daemon at Fri Jun  5 17:40:17 IST 2026
[2026-06-05 17:40:17,144.144 INFO    ] ================================================
[2026-06-05 17:40:17,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:40:17
[2026-06-05 17:40:18,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:40:18,583.583 INFO    ] Initializing speech engine...
[2026-06-05 17:40:18,592.592 INFO    ] 2026-06-05 17:40:18
[2026-06-05 17:40:18,837.837 INFO    ] 2026-06-05 17:40:18
[2026-06-05 17:40:18,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:40:19,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:40:19,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:40:19,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:40:19,309.309 INFO    ] time= 05/06/2026 17:40:19
[2026-06-05 17:40:19,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:40:19,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:40:19,475.475 INFO    ] No existing commands found in stream
[2026-06-05 17:40:24,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:40:24,515.515 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 17:40:28,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:40:28,514.514 INFO    ] Checking for system updates...
[2026-06-05 17:40:28,551.551 INFO    ] 200
[2026-06-05 17:40:28,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:28,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:40:28,610.610 INFO    ] No update needed
[2026-06-05 17:40:28,612.612 INFO    ] Checking for camera pi updates...
[2026-06-05 17:40:28,646.646 INFO    ] 200
[2026-06-05 17:40:28,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:28,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:40:28,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:40:28,734.734 INFO    ] No camera update needed
[2026-06-05 17:40:28,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:40:28,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:40:28,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:40:28,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:40:30,790.790 INFO    ] ================================================
[2026-06-05 17:40:30,806.806 INFO    ] Launching Daemon at Fri Jun  5 17:40:30 IST 2026
[2026-06-05 17:40:30,818.818 INFO    ] ================================================
[2026-06-05 17:40:31,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:40:31
[2026-06-05 17:40:32,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:40:32,303.303 INFO    ] Initializing speech engine...
[2026-06-05 17:40:32,320.320 INFO    ] 2026-06-05 17:40:32
[2026-06-05 17:40:32,592.592 INFO    ] 2026-06-05 17:40:32
[2026-06-05 17:40:32,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:40:32,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:40:32,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:40:32,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:40:32,994.994 INFO    ] time= 05/06/2026 17:40:32
[2026-06-05 17:40:32,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:40:33,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:40:33,094.094 INFO    ] No existing commands found in stream
[2026-06-05 17:40:38,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:40:38,133.133 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 17:40:42,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:40:42,167.167 INFO    ] Checking for system updates...
[2026-06-05 17:40:42,204.204 INFO    ] 200
[2026-06-05 17:40:42,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:42,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:40:42,262.262 INFO    ] No update needed
[2026-06-05 17:40:42,265.265 INFO    ] Checking for camera pi updates...
[2026-06-05 17:40:42,299.299 INFO    ] 200
[2026-06-05 17:40:42,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:42,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:40:42,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:40:42,391.391 INFO    ] No camera update needed
[2026-06-05 17:40:42,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:40:42,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:40:42,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:40:42,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:40:44,456.456 INFO    ] ================================================
[2026-06-05 17:40:44,472.472 INFO    ] Launching Daemon at Fri Jun  5 17:40:44 IST 2026
[2026-06-05 17:40:44,484.484 INFO    ] ================================================
[2026-06-05 17:40:45,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:40:45
[2026-06-05 17:40:45,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:40:45,950.950 INFO    ] Initializing speech engine...
[2026-06-05 17:40:45,957.957 INFO    ] 2026-06-05 17:40:45
[2026-06-05 17:40:46,219.219 INFO    ] 2026-06-05 17:40:46
[2026-06-05 17:40:46,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:40:47,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:40:47,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:40:47,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:40:47,660.660 INFO    ] time= 05/06/2026 17:40:47
[2026-06-05 17:40:47,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:40:47,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:40:47,750.750 INFO    ] No existing commands found in stream
[2026-06-05 17:40:52,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:40:52,764.764 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 17:40:56,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:40:56,390.390 INFO    ] Checking for system updates...
[2026-06-05 17:40:56,427.427 INFO    ] 200
[2026-06-05 17:40:56,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:56,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:40:56,486.486 INFO    ] No update needed
[2026-06-05 17:40:56,488.488 INFO    ] Checking for camera pi updates...
[2026-06-05 17:40:56,522.522 INFO    ] 200
[2026-06-05 17:40:56,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:40:56,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:40:56,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:40:56,610.610 INFO    ] No camera update needed
[2026-06-05 17:40:56,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:40:56,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:40:56,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:40:56,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:40:58,665.665 INFO    ] ================================================
[2026-06-05 17:40:58,681.681 INFO    ] Launching Daemon at Fri Jun  5 17:40:58 IST 2026
[2026-06-05 17:40:58,692.692 INFO    ] ================================================
[2026-06-05 17:40:59,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:40:59
[2026-06-05 17:40:59,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:41:00,125.125 INFO    ] Initializing speech engine...
[2026-06-05 17:41:00,134.134 INFO    ] 2026-06-05 17:41:00
[2026-06-05 17:41:00,392.392 INFO    ] 2026-06-05 17:41:00
[2026-06-05 17:41:00,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:41:00,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:41:00,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:41:00,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:41:00,850.850 INFO    ] time= 05/06/2026 17:41:00
[2026-06-05 17:41:00,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:41:00,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:41:01,089.089 INFO    ] No existing commands found in stream
[2026-06-05 17:41:06,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:41:06,106.106 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 17:41:08,639.639 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:41:08,642.642 INFO    ] Checking for system updates...
[2026-06-05 17:41:08,677.677 INFO    ] 200
[2026-06-05 17:41:08,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:08,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:08,736.736 INFO    ] No update needed
[2026-06-05 17:41:08,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 17:41:08,777.777 INFO    ] 200
[2026-06-05 17:41:08,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:08,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:41:08,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:08,883.883 INFO    ] No camera update needed
[2026-06-05 17:41:08,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:41:08,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:41:08,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:41:08,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:41:10,942.942 INFO    ] ================================================
[2026-06-05 17:41:10,958.958 INFO    ] Launching Daemon at Fri Jun  5 17:41:10 IST 2026
[2026-06-05 17:41:10,969.969 INFO    ] ================================================
[2026-06-05 17:41:11,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:41:11
[2026-06-05 17:41:12,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:41:12,613.613 INFO    ] Initializing speech engine...
[2026-06-05 17:41:12,622.622 INFO    ] 2026-06-05 17:41:12
[2026-06-05 17:41:12,882.882 INFO    ] 2026-06-05 17:41:12
[2026-06-05 17:41:12,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:41:13,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:41:13,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:41:13,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:41:13,343.343 INFO    ] time= 05/06/2026 17:41:13
[2026-06-05 17:41:13,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:41:13,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:41:13,569.569 INFO    ] No existing commands found in stream
[2026-06-05 17:41:18,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:41:18,596.596 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 17:41:19,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:41:19,363.363 INFO    ] Checking for system updates...
[2026-06-05 17:41:19,400.400 INFO    ] 200
[2026-06-05 17:41:19,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:19,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:19,467.467 INFO    ] No update needed
[2026-06-05 17:41:19,469.469 INFO    ] Checking for camera pi updates...
[2026-06-05 17:41:19,503.503 INFO    ] 200
[2026-06-05 17:41:19,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:19,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:41:19,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:19,595.595 INFO    ] No camera update needed
[2026-06-05 17:41:19,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:41:19,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:41:19,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:41:19,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:41:21,651.651 INFO    ] ================================================
[2026-06-05 17:41:21,668.668 INFO    ] Launching Daemon at Fri Jun  5 17:41:21 IST 2026
[2026-06-05 17:41:21,679.679 INFO    ] ================================================
[2026-06-05 17:41:22,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:41:22
[2026-06-05 17:41:22,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:41:23,144.144 INFO    ] Initializing speech engine...
[2026-06-05 17:41:23,151.151 INFO    ] 2026-06-05 17:41:23
[2026-06-05 17:41:23,450.450 INFO    ] 2026-06-05 17:41:23
[2026-06-05 17:41:23,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:41:25,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:41:25,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:41:25,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:41:25,673.673 INFO    ] time= 05/06/2026 17:41:25
[2026-06-05 17:41:25,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:41:25,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:41:25,777.777 INFO    ] No existing commands found in stream
[2026-06-05 17:41:30,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:41:30,792.792 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 17:41:31,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:41:31,622.622 INFO    ] Checking for system updates...
[2026-06-05 17:41:31,660.660 INFO    ] 200
[2026-06-05 17:41:31,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:31,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:31,720.720 INFO    ] No update needed
[2026-06-05 17:41:31,722.722 INFO    ] Checking for camera pi updates...
[2026-06-05 17:41:31,757.757 INFO    ] 200
[2026-06-05 17:41:31,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:31,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:41:31,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:31,846.846 INFO    ] No camera update needed
[2026-06-05 17:41:31,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:41:31,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:41:31,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:41:31,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:41:33,908.908 INFO    ] ================================================
[2026-06-05 17:41:33,924.924 INFO    ] Launching Daemon at Fri Jun  5 17:41:33 IST 2026
[2026-06-05 17:41:33,935.935 INFO    ] ================================================
[2026-06-05 17:41:34,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:41:34
[2026-06-05 17:41:35,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:41:35,489.489 INFO    ] Initializing speech engine...
[2026-06-05 17:41:35,497.497 INFO    ] 2026-06-05 17:41:35
[2026-06-05 17:41:35,744.744 INFO    ] 2026-06-05 17:41:35
[2026-06-05 17:41:35,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:41:35,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:41:35,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:41:36,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:41:36,123.123 INFO    ] time= 05/06/2026 17:41:36
[2026-06-05 17:41:36,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:41:36,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:41:36,287.287 INFO    ] No existing commands found in stream
[2026-06-05 17:41:41,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:41:41,320.320 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 17:41:44,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:41:44,150.150 INFO    ] Checking for system updates...
[2026-06-05 17:41:44,185.185 INFO    ] 200
[2026-06-05 17:41:44,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:44,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:44,250.250 INFO    ] No update needed
[2026-06-05 17:41:44,253.253 INFO    ] Checking for camera pi updates...
[2026-06-05 17:41:44,290.290 INFO    ] 200
[2026-06-05 17:41:44,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:44,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:41:44,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:44,486.486 INFO    ] No camera update needed
[2026-06-05 17:41:44,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:41:44,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:41:44,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:41:44,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:41:46,545.545 INFO    ] ================================================
[2026-06-05 17:41:46,560.560 INFO    ] Launching Daemon at Fri Jun  5 17:41:46 IST 2026
[2026-06-05 17:41:46,572.572 INFO    ] ================================================
[2026-06-05 17:41:47,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:41:47
[2026-06-05 17:41:47,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:41:48,033.033 INFO    ] Initializing speech engine...
[2026-06-05 17:41:48,039.039 INFO    ] 2026-06-05 17:41:48
[2026-06-05 17:41:48,301.301 INFO    ] 2026-06-05 17:41:48
[2026-06-05 17:41:48,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:41:48,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:41:48,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:41:48,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:41:48,759.759 INFO    ] time= 05/06/2026 17:41:48
[2026-06-05 17:41:48,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:41:48,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:41:48,994.994 INFO    ] No existing commands found in stream
[2026-06-05 17:41:54,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:41:54,012.012 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 17:41:56,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:41:56,255.255 INFO    ] Checking for system updates...
[2026-06-05 17:41:56,295.295 INFO    ] 200
[2026-06-05 17:41:56,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:56,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:56,362.362 INFO    ] No update needed
[2026-06-05 17:41:56,364.364 INFO    ] Checking for camera pi updates...
[2026-06-05 17:41:56,402.402 INFO    ] 200
[2026-06-05 17:41:56,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:41:56,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:41:56,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:41:56,492.492 INFO    ] No camera update needed
[2026-06-05 17:41:56,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:41:56,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:41:56,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:41:56,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:41:58,550.550 INFO    ] ================================================
[2026-06-05 17:41:58,565.565 INFO    ] Launching Daemon at Fri Jun  5 17:41:58 IST 2026
[2026-06-05 17:41:58,577.577 INFO    ] ================================================
[2026-06-05 17:41:59,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:41:59
[2026-06-05 17:41:59,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:42:00,174.174 INFO    ] Initializing speech engine...
[2026-06-05 17:42:00,185.185 INFO    ] 2026-06-05 17:42:00
[2026-06-05 17:42:00,435.435 INFO    ] 2026-06-05 17:42:00
[2026-06-05 17:42:00,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:42:00,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:42:00,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:42:00,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:42:00,911.911 INFO    ] time= 05/06/2026 17:42:00
[2026-06-05 17:42:00,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:42:00,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:42:01,134.134 INFO    ] No existing commands found in stream
[2026-06-05 17:42:06,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:42:06,160.160 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 17:42:09,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:42:09,513.513 INFO    ] Checking for system updates...
[2026-06-05 17:42:09,551.551 INFO    ] 200
[2026-06-05 17:42:09,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:42:09,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:42:09,610.610 INFO    ] No update needed
[2026-06-05 17:42:09,613.613 INFO    ] Checking for camera pi updates...
[2026-06-05 17:42:09,653.653 INFO    ] 200
[2026-06-05 17:42:09,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:42:09,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:42:09,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:42:09,756.756 INFO    ] No camera update needed
[2026-06-05 17:42:09,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:42:09,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:42:09,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:42:09,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:42:11,817.817 INFO    ] ================================================
[2026-06-05 17:42:11,833.833 INFO    ] Launching Daemon at Fri Jun  5 17:42:11 IST 2026
[2026-06-05 17:42:11,844.844 INFO    ] ================================================
[2026-06-05 17:42:12,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:42:12
[2026-06-05 17:42:13,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:42:13,272.272 INFO    ] Initializing speech engine...
[2026-06-05 17:42:13,280.280 INFO    ] 2026-06-05 17:42:13
[2026-06-05 17:42:13,527.527 INFO    ] 2026-06-05 17:42:13
[2026-06-05 17:42:13,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:42:13,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:42:13,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:42:13,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:42:13,897.897 INFO    ] time= 05/06/2026 17:42:13
[2026-06-05 17:42:13,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:42:13,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:42:14,078.078 INFO    ] No existing commands found in stream
[2026-06-05 17:42:19,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:42:19,106.106 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 17:42:22,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:42:22,476.476 INFO    ] Checking for system updates...
[2026-06-05 17:42:22,517.517 INFO    ] 200
[2026-06-05 17:42:22,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:42:22,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:42:22,584.584 INFO    ] No update needed
[2026-06-05 17:42:22,586.586 INFO    ] Checking for camera pi updates...
[2026-06-05 17:42:22,625.625 INFO    ] 200
[2026-06-05 17:42:22,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:42:22,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:42:22,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:42:22,715.715 INFO    ] No camera update needed
[2026-06-05 17:42:22,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:42:22,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:42:22,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:42:22,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:42:24,772.772 INFO    ] ================================================
[2026-06-05 17:42:24,787.787 INFO    ] Launching Daemon at Fri Jun  5 17:42:24 IST 2026
[2026-06-05 17:42:24,798.798 INFO    ] ================================================
[2026-06-05 17:42:25,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:42:25
[2026-06-05 17:42:26,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:42:26,280.280 INFO    ] Initializing speech engine...
[2026-06-05 17:42:26,289.289 INFO    ] 2026-06-05 17:42:26
[2026-06-05 17:42:26,562.562 INFO    ] 2026-06-05 17:42:26
[2026-06-05 17:42:26,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:42:26,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:42:26,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:42:27,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:42:27,093.093 INFO    ] time= 05/06/2026 17:42:27
[2026-06-05 17:42:27,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:42:27,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:42:27,248.248 INFO    ] No existing commands found in stream
[2026-06-05 17:42:32,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:42:32,262.262 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 17:42:36,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:42:36,283.283 INFO    ] Checking for system updates...
[2026-06-05 17:42:36,327.327 INFO    ] 200
[2026-06-05 17:42:36,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:42:36,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:42:36,397.397 INFO    ] No update needed
[2026-06-05 17:42:36,399.399 INFO    ] Checking for camera pi updates...
[2026-06-05 17:42:36,435.435 INFO    ] 200
[2026-06-05 17:42:36,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:42:36,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:42:36,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:42:36,527.527 INFO    ] No camera update needed
[2026-06-05 17:42:36,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:42:36,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:42:36,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:42:36,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:42:38,587.587 INFO    ] ================================================
[2026-06-05 17:42:38,602.602 INFO    ] Launching Daemon at Fri Jun  5 17:42:38 IST 2026
[2026-06-05 17:42:38,614.614 INFO    ] ================================================
[2026-06-05 17:42:39,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:42:39
[2026-06-05 17:42:39,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:42:40,040.040 INFO    ] Initializing speech engine...
[2026-06-05 17:42:40,049.049 INFO    ] 2026-06-05 17:42:40
[2026-06-05 17:42:40,298.298 INFO    ] 2026-06-05 17:42:40
[2026-06-05 17:42:40,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:42:40,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:42:40,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:42:40,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:42:40,786.786 INFO    ] time= 05/06/2026 17:42:40
[2026-06-05 17:42:40,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:42:40,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:42:40,962.962 INFO    ] No existing commands found in stream
[2026-06-05 17:42:45,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:42:45,975.975 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 17:42:46,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:42:46,947.947 INFO    ] Checking for system updates...
[2026-06-05 17:42:46,983.983 INFO    ] 200
[2026-06-05 17:42:46,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:42:47,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:42:47,043.043 INFO    ] No update needed
[2026-06-05 17:42:47,045.045 INFO    ] Checking for camera pi updates...
[2026-06-05 17:42:47,079.079 INFO    ] 200
[2026-06-05 17:42:47,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:42:47,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:42:47,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:42:47,164.164 INFO    ] No camera update needed
[2026-06-05 17:42:47,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:42:47,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:42:47,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:42:47,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:42:49,221.221 INFO    ] ================================================
[2026-06-05 17:42:49,237.237 INFO    ] Launching Daemon at Fri Jun  5 17:42:49 IST 2026
[2026-06-05 17:42:49,248.248 INFO    ] ================================================
[2026-06-05 17:42:49,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:42:49
[2026-06-05 17:42:50,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:42:50,907.907 INFO    ] Initializing speech engine...
[2026-06-05 17:42:50,912.912 INFO    ] 2026-06-05 17:42:50
[2026-06-05 17:42:51,202.202 INFO    ] 2026-06-05 17:42:51
[2026-06-05 17:42:51,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:42:51,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:42:51,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:42:51,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:42:51,659.659 INFO    ] time= 05/06/2026 17:42:51
[2026-06-05 17:42:51,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:42:51,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:42:51,879.879 INFO    ] No existing commands found in stream
[2026-06-05 17:42:56,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:42:56,906.906 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 17:43:00,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:43:00,652.652 INFO    ] Checking for system updates...
[2026-06-05 17:43:00,689.689 INFO    ] 200
[2026-06-05 17:43:00,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:00,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:43:00,755.755 INFO    ] No update needed
[2026-06-05 17:43:00,758.758 INFO    ] Checking for camera pi updates...
[2026-06-05 17:43:00,796.796 INFO    ] 200
[2026-06-05 17:43:00,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:00,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:43:00,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:43:00,891.891 INFO    ] No camera update needed
[2026-06-05 17:43:00,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:43:00,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:43:00,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:43:00,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:43:02,952.952 INFO    ] ================================================
[2026-06-05 17:43:02,968.968 INFO    ] Launching Daemon at Fri Jun  5 17:43:02 IST 2026
[2026-06-05 17:43:02,988.988 INFO    ] ================================================
[2026-06-05 17:43:03,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:43:03
[2026-06-05 17:43:04,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:43:04,400.400 INFO    ] Initializing speech engine...
[2026-06-05 17:43:04,408.408 INFO    ] 2026-06-05 17:43:04
[2026-06-05 17:43:04,681.681 INFO    ] 2026-06-05 17:43:04
[2026-06-05 17:43:04,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:43:04,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:43:04,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:43:05,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:43:05,065.065 INFO    ] time= 05/06/2026 17:43:05
[2026-06-05 17:43:05,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:43:05,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:43:05,262.262 INFO    ] No existing commands found in stream
[2026-06-05 17:43:10,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:43:10,278.278 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 17:43:11,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:43:11,421.421 INFO    ] Checking for system updates...
[2026-06-05 17:43:11,461.461 INFO    ] 200
[2026-06-05 17:43:11,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:11,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:43:11,527.527 INFO    ] No update needed
[2026-06-05 17:43:11,529.529 INFO    ] Checking for camera pi updates...
[2026-06-05 17:43:11,564.564 INFO    ] 200
[2026-06-05 17:43:11,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:11,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:43:11,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:43:11,658.658 INFO    ] No camera update needed
[2026-06-05 17:43:11,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:43:11,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:43:11,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:43:11,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:43:13,719.719 INFO    ] ================================================
[2026-06-05 17:43:13,735.735 INFO    ] Launching Daemon at Fri Jun  5 17:43:13 IST 2026
[2026-06-05 17:43:13,746.746 INFO    ] ================================================
[2026-06-05 17:43:14,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:43:14
[2026-06-05 17:43:14,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:43:15,179.179 INFO    ] Initializing speech engine...
[2026-06-05 17:43:15,189.189 INFO    ] 2026-06-05 17:43:15
[2026-06-05 17:43:15,439.439 INFO    ] 2026-06-05 17:43:15
[2026-06-05 17:43:15,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:43:15,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:43:15,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:43:15,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:43:15,817.817 INFO    ] time= 05/06/2026 17:43:15
[2026-06-05 17:43:15,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:43:15,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:43:15,993.993 INFO    ] No existing commands found in stream
[2026-06-05 17:43:21,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:43:21,021.021 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 17:43:25,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:43:25,482.482 INFO    ] Checking for system updates...
[2026-06-05 17:43:25,524.524 INFO    ] 200
[2026-06-05 17:43:25,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:25,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:43:25,591.591 INFO    ] No update needed
[2026-06-05 17:43:25,594.594 INFO    ] Checking for camera pi updates...
[2026-06-05 17:43:25,634.634 INFO    ] 200
[2026-06-05 17:43:25,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:25,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:43:25,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:43:25,734.734 INFO    ] No camera update needed
[2026-06-05 17:43:25,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:43:25,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:43:25,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:43:25,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:43:27,794.794 INFO    ] ================================================
[2026-06-05 17:43:27,810.810 INFO    ] Launching Daemon at Fri Jun  5 17:43:27 IST 2026
[2026-06-05 17:43:27,821.821 INFO    ] ================================================
[2026-06-05 17:43:28,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:43:28
[2026-06-05 17:43:29,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:43:29,281.281 INFO    ] Initializing speech engine...
[2026-06-05 17:43:29,289.289 INFO    ] 2026-06-05 17:43:29
[2026-06-05 17:43:29,549.549 INFO    ] 2026-06-05 17:43:29
[2026-06-05 17:43:29,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:43:29,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:43:29,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:43:29,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:43:30,011.011 INFO    ] time= 05/06/2026 17:43:29
[2026-06-05 17:43:30,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:43:30,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:43:30,225.225 INFO    ] No existing commands found in stream
[2026-06-05 17:43:35,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:43:35,265.265 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 17:43:38,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:43:38,115.115 INFO    ] Checking for system updates...
[2026-06-05 17:43:38,157.157 INFO    ] 200
[2026-06-05 17:43:38,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:38,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:43:38,223.223 INFO    ] No update needed
[2026-06-05 17:43:38,226.226 INFO    ] Checking for camera pi updates...
[2026-06-05 17:43:38,261.261 INFO    ] 200
[2026-06-05 17:43:38,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:38,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:43:38,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:43:38,363.363 INFO    ] No camera update needed
[2026-06-05 17:43:38,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:43:38,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:43:38,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:43:38,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:43:40,418.418 INFO    ] ================================================
[2026-06-05 17:43:40,433.433 INFO    ] Launching Daemon at Fri Jun  5 17:43:40 IST 2026
[2026-06-05 17:43:40,445.445 INFO    ] ================================================
[2026-06-05 17:43:41,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:43:41
[2026-06-05 17:43:41,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:43:41,984.984 INFO    ] Initializing speech engine...
[2026-06-05 17:43:41,999.999 INFO    ] 2026-06-05 17:43:41
[2026-06-05 17:43:42,254.254 INFO    ] 2026-06-05 17:43:42
[2026-06-05 17:43:42,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:43:42,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:43:42,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:43:42,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:43:42,984.984 INFO    ] time= 05/06/2026 17:43:42
[2026-06-05 17:43:43,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:43:43,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:43:43,247.247 INFO    ] No existing commands found in stream
[2026-06-05 17:43:48,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:43:48,266.266 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 17:43:50,506.506 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:43:50,509.509 INFO    ] Checking for system updates...
[2026-06-05 17:43:50,545.545 INFO    ] 200
[2026-06-05 17:43:50,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:50,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:43:50,613.613 INFO    ] No update needed
[2026-06-05 17:43:50,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 17:43:50,655.655 INFO    ] 200
[2026-06-05 17:43:50,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:43:50,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:43:50,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:43:50,833.833 INFO    ] No camera update needed
[2026-06-05 17:43:50,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:43:50,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:43:50,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:43:50,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:43:52,889.889 INFO    ] ================================================
[2026-06-05 17:43:52,905.905 INFO    ] Launching Daemon at Fri Jun  5 17:43:52 IST 2026
[2026-06-05 17:43:52,916.916 INFO    ] ================================================
[2026-06-05 17:43:53,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:43:53
[2026-06-05 17:43:54,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:43:54,408.408 INFO    ] Initializing speech engine...
[2026-06-05 17:43:54,418.418 INFO    ] 2026-06-05 17:43:54
[2026-06-05 17:43:54,682.682 INFO    ] 2026-06-05 17:43:54
[2026-06-05 17:43:54,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:43:55,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:43:55,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:43:55,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:43:55,787.787 INFO    ] time= 05/06/2026 17:43:55
[2026-06-05 17:43:55,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:43:55,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:43:55,910.910 INFO    ] No existing commands found in stream
[2026-06-05 17:44:00,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:44:00,920.920 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 17:44:01,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:44:01,983.983 INFO    ] Checking for system updates...
[2026-06-05 17:44:02,022.022 INFO    ] 200
[2026-06-05 17:44:02,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:02,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:44:02,085.085 INFO    ] No update needed
[2026-06-05 17:44:02,088.088 INFO    ] Checking for camera pi updates...
[2026-06-05 17:44:02,125.125 INFO    ] 200
[2026-06-05 17:44:02,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:02,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:44:02,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:44:02,210.210 INFO    ] No camera update needed
[2026-06-05 17:44:02,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:44:02,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:44:02,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:44:02,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:44:04,270.270 INFO    ] ================================================
[2026-06-05 17:44:04,285.285 INFO    ] Launching Daemon at Fri Jun  5 17:44:04 IST 2026
[2026-06-05 17:44:04,297.297 INFO    ] ================================================
[2026-06-05 17:44:04,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:44:04
[2026-06-05 17:44:05,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:44:06,003.003 INFO    ] Initializing speech engine...
[2026-06-05 17:44:06,014.014 INFO    ] 2026-06-05 17:44:06
[2026-06-05 17:44:06,330.330 INFO    ] 2026-06-05 17:44:06
[2026-06-05 17:44:06,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:44:06,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:44:06,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:44:06,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:44:06,758.758 INFO    ] time= 05/06/2026 17:44:06
[2026-06-05 17:44:06,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:44:06,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:44:06,984.984 INFO    ] No existing commands found in stream
[2026-06-05 17:44:12,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:44:12,014.014 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 17:44:13,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:44:13,529.529 INFO    ] Checking for system updates...
[2026-06-05 17:44:13,568.568 INFO    ] 200
[2026-06-05 17:44:13,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:13,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:44:13,629.629 INFO    ] No update needed
[2026-06-05 17:44:13,631.631 INFO    ] Checking for camera pi updates...
[2026-06-05 17:44:13,671.671 INFO    ] 200
[2026-06-05 17:44:13,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:13,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:44:13,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:44:13,774.774 INFO    ] No camera update needed
[2026-06-05 17:44:13,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:44:13,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:44:13,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:44:13,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:44:15,836.836 INFO    ] ================================================
[2026-06-05 17:44:15,853.853 INFO    ] Launching Daemon at Fri Jun  5 17:44:15 IST 2026
[2026-06-05 17:44:15,864.864 INFO    ] ================================================
[2026-06-05 17:44:16,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:44:16
[2026-06-05 17:44:17,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:44:17,347.347 INFO    ] Initializing speech engine...
[2026-06-05 17:44:17,353.353 INFO    ] 2026-06-05 17:44:17
[2026-06-05 17:44:17,617.617 INFO    ] 2026-06-05 17:44:17
[2026-06-05 17:44:17,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:44:17,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:44:17,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:44:18,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:44:18,071.071 INFO    ] time= 05/06/2026 17:44:18
[2026-06-05 17:44:18,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:44:18,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:44:18,302.302 INFO    ] No existing commands found in stream
[2026-06-05 17:44:23,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:44:23,329.329 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 17:44:26,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:44:26,011.011 INFO    ] Checking for system updates...
[2026-06-05 17:44:26,052.052 INFO    ] 200
[2026-06-05 17:44:26,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:26,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:44:26,119.119 INFO    ] No update needed
[2026-06-05 17:44:26,121.121 INFO    ] Checking for camera pi updates...
[2026-06-05 17:44:26,156.156 INFO    ] 200
[2026-06-05 17:44:26,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:26,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:44:26,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:44:26,254.254 INFO    ] No camera update needed
[2026-06-05 17:44:26,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:44:26,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:44:26,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:44:26,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:44:28,311.311 INFO    ] ================================================
[2026-06-05 17:44:28,326.326 INFO    ] Launching Daemon at Fri Jun  5 17:44:28 IST 2026
[2026-06-05 17:44:28,338.338 INFO    ] ================================================
[2026-06-05 17:44:28,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:44:28
[2026-06-05 17:44:29,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:44:29,760.760 INFO    ] Initializing speech engine...
[2026-06-05 17:44:29,770.770 INFO    ] 2026-06-05 17:44:29
[2026-06-05 17:44:30,014.014 INFO    ] 2026-06-05 17:44:30
[2026-06-05 17:44:30,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:44:30,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:44:30,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:44:30,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:44:30,392.392 INFO    ] time= 05/06/2026 17:44:30
[2026-06-05 17:44:30,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:44:30,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:44:30,590.590 INFO    ] No existing commands found in stream
[2026-06-05 17:44:35,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:44:35,603.603 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 17:44:37,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:44:37,381.381 INFO    ] Checking for system updates...
[2026-06-05 17:44:37,417.417 INFO    ] 200
[2026-06-05 17:44:37,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:37,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:44:37,474.474 INFO    ] No update needed
[2026-06-05 17:44:37,477.477 INFO    ] Checking for camera pi updates...
[2026-06-05 17:44:37,511.511 INFO    ] 200
[2026-06-05 17:44:37,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:37,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:44:37,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:44:37,598.598 INFO    ] No camera update needed
[2026-06-05 17:44:37,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:44:37,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:44:37,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:44:37,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:44:39,654.654 INFO    ] ================================================
[2026-06-05 17:44:39,670.670 INFO    ] Launching Daemon at Fri Jun  5 17:44:39 IST 2026
[2026-06-05 17:44:39,681.681 INFO    ] ================================================
[2026-06-05 17:44:40,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:44:40
[2026-06-05 17:44:40,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:44:41,184.184 INFO    ] Initializing speech engine...
[2026-06-05 17:44:41,194.194 INFO    ] 2026-06-05 17:44:41
[2026-06-05 17:44:41,459.459 INFO    ] 2026-06-05 17:44:41
[2026-06-05 17:44:41,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:44:41,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:44:41,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:44:41,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:44:41,944.944 INFO    ] time= 05/06/2026 17:44:41
[2026-06-05 17:44:41,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:44:42,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:44:42,139.139 INFO    ] No existing commands found in stream
[2026-06-05 17:44:47,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:44:47,169.169 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 17:44:49,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:44:49,291.291 INFO    ] Checking for system updates...
[2026-06-05 17:44:49,331.331 INFO    ] 200
[2026-06-05 17:44:49,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:49,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:44:49,390.390 INFO    ] No update needed
[2026-06-05 17:44:49,393.393 INFO    ] Checking for camera pi updates...
[2026-06-05 17:44:49,427.427 INFO    ] 200
[2026-06-05 17:44:49,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:44:49,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:44:49,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:44:49,519.519 INFO    ] No camera update needed
[2026-06-05 17:44:49,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:44:49,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:44:49,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:44:49,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:44:51,574.574 INFO    ] ================================================
[2026-06-05 17:44:51,589.589 INFO    ] Launching Daemon at Fri Jun  5 17:44:51 IST 2026
[2026-06-05 17:44:51,600.600 INFO    ] ================================================
[2026-06-05 17:44:52,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:44:52
[2026-06-05 17:44:52,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:44:53,003.003 INFO    ] Initializing speech engine...
[2026-06-05 17:44:53,012.012 INFO    ] 2026-06-05 17:44:53
[2026-06-05 17:44:53,286.286 INFO    ] 2026-06-05 17:44:53
[2026-06-05 17:44:53,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:44:55,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:44:55,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:44:55,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:44:55,568.568 INFO    ] time= 05/06/2026 17:44:55
[2026-06-05 17:44:55,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:44:55,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:44:55,703.703 INFO    ] No existing commands found in stream
[2026-06-05 17:45:00,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:45:00,721.721 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-05 17:45:01,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:45:01,172.172 INFO    ] Checking for system updates...
[2026-06-05 17:45:01,208.208 INFO    ] 200
[2026-06-05 17:45:01,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:01,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:45:01,275.275 INFO    ] No update needed
[2026-06-05 17:45:01,277.277 INFO    ] Checking for camera pi updates...
[2026-06-05 17:45:01,316.316 INFO    ] 200
[2026-06-05 17:45:01,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:01,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:45:01,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:45:01,408.408 INFO    ] No camera update needed
[2026-06-05 17:45:01,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:45:01,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:45:01,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:45:01,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:45:03,463.463 INFO    ] ================================================
[2026-06-05 17:45:03,479.479 INFO    ] Launching Daemon at Fri Jun  5 17:45:03 IST 2026
[2026-06-05 17:45:03,490.490 INFO    ] ================================================
[2026-06-05 17:45:04,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:45:04
[2026-06-05 17:45:04,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:45:04,921.921 INFO    ] Initializing speech engine...
[2026-06-05 17:45:04,927.927 INFO    ] 2026-06-05 17:45:04
[2026-06-05 17:45:05,186.186 INFO    ] 2026-06-05 17:45:05
[2026-06-05 17:45:05,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:45:05,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:45:05,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:45:05,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:45:05,679.679 INFO    ] time= 05/06/2026 17:45:05
[2026-06-05 17:45:05,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:45:05,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:45:05,876.876 INFO    ] No existing commands found in stream
[2026-06-05 17:45:10,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:45:10,903.903 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 17:45:12,958.958 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:45:12,961.961 INFO    ] Checking for system updates...
[2026-06-05 17:45:13,002.002 INFO    ] 200
[2026-06-05 17:45:13,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:13,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:45:13,069.069 INFO    ] No update needed
[2026-06-05 17:45:13,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 17:45:13,106.106 INFO    ] 200
[2026-06-05 17:45:13,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:13,149.149 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:45:13,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:45:13,205.205 INFO    ] No camera update needed
[2026-06-05 17:45:13,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:45:13,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:45:13,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:45:13,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:45:15,264.264 INFO    ] ================================================
[2026-06-05 17:45:15,281.281 INFO    ] Launching Daemon at Fri Jun  5 17:45:15 IST 2026
[2026-06-05 17:45:15,294.294 INFO    ] ================================================
[2026-06-05 17:45:15,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:45:15
[2026-06-05 17:45:16,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:45:16,744.744 INFO    ] Initializing speech engine...
[2026-06-05 17:45:16,768.768 INFO    ] 2026-06-05 17:45:16
[2026-06-05 17:45:17,027.027 INFO    ] 2026-06-05 17:45:17
[2026-06-05 17:45:17,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:45:17,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:45:17,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:45:17,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:45:17,495.495 INFO    ] time= 05/06/2026 17:45:17
[2026-06-05 17:45:17,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:45:17,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:45:17,674.674 INFO    ] No existing commands found in stream
[2026-06-05 17:45:22,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:45:22,690.690 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 17:45:26,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:45:26,313.313 INFO    ] Checking for system updates...
[2026-06-05 17:45:26,351.351 INFO    ] 200
[2026-06-05 17:45:26,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:26,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:45:26,418.418 INFO    ] No update needed
[2026-06-05 17:45:26,421.421 INFO    ] Checking for camera pi updates...
[2026-06-05 17:45:26,459.459 INFO    ] 200
[2026-06-05 17:45:26,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:26,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:45:26,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:45:26,557.557 INFO    ] No camera update needed
[2026-06-05 17:45:26,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:45:26,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:45:26,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:45:26,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:45:28,614.614 INFO    ] ================================================
[2026-06-05 17:45:28,631.631 INFO    ] Launching Daemon at Fri Jun  5 17:45:28 IST 2026
[2026-06-05 17:45:28,642.642 INFO    ] ================================================
[2026-06-05 17:45:29,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:45:29
[2026-06-05 17:45:29,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:45:30,195.195 INFO    ] Initializing speech engine...
[2026-06-05 17:45:30,208.208 INFO    ] 2026-06-05 17:45:30
[2026-06-05 17:45:30,486.486 INFO    ] 2026-06-05 17:45:30
[2026-06-05 17:45:30,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:45:30,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:45:30,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:45:31,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:45:31,160.160 INFO    ] time= 05/06/2026 17:45:31
[2026-06-05 17:45:31,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:45:31,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:45:31,419.419 INFO    ] No existing commands found in stream
[2026-06-05 17:45:36,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:45:36,459.459 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 17:45:39,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:45:39,467.467 INFO    ] Checking for system updates...
[2026-06-05 17:45:39,504.504 INFO    ] 200
[2026-06-05 17:45:39,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:39,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:45:39,563.563 INFO    ] No update needed
[2026-06-05 17:45:39,566.566 INFO    ] Checking for camera pi updates...
[2026-06-05 17:45:39,600.600 INFO    ] 200
[2026-06-05 17:45:39,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:39,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:45:39,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:45:39,705.705 INFO    ] No camera update needed
[2026-06-05 17:45:39,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:45:39,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:45:39,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:45:39,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:45:41,761.761 INFO    ] ================================================
[2026-06-05 17:45:41,777.777 INFO    ] Launching Daemon at Fri Jun  5 17:45:41 IST 2026
[2026-06-05 17:45:41,789.789 INFO    ] ================================================
[2026-06-05 17:45:42,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:45:42
[2026-06-05 17:45:42,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:45:43,262.262 INFO    ] Initializing speech engine...
[2026-06-05 17:45:43,270.270 INFO    ] 2026-06-05 17:45:43
[2026-06-05 17:45:43,532.532 INFO    ] 2026-06-05 17:45:43
[2026-06-05 17:45:43,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:45:43,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:45:43,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:45:43,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:45:43,917.917 INFO    ] time= 05/06/2026 17:45:43
[2026-06-05 17:45:43,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:45:43,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:45:44,104.104 INFO    ] No existing commands found in stream
[2026-06-05 17:45:49,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:45:49,132.132 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 17:45:53,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:45:53,037.037 INFO    ] Checking for system updates...
[2026-06-05 17:45:53,078.078 INFO    ] 200
[2026-06-05 17:45:53,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:53,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:45:53,143.143 INFO    ] No update needed
[2026-06-05 17:45:53,145.145 INFO    ] Checking for camera pi updates...
[2026-06-05 17:45:53,183.183 INFO    ] 200
[2026-06-05 17:45:53,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:45:53,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:45:53,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:45:53,374.374 INFO    ] No camera update needed
[2026-06-05 17:45:53,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:45:53,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:45:53,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:45:53,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:45:55,438.438 INFO    ] ================================================
[2026-06-05 17:45:55,454.454 INFO    ] Launching Daemon at Fri Jun  5 17:45:55 IST 2026
[2026-06-05 17:45:55,465.465 INFO    ] ================================================
[2026-06-05 17:45:56,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:45:56
[2026-06-05 17:45:56,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:45:56,944.944 INFO    ] Initializing speech engine...
[2026-06-05 17:45:56,951.951 INFO    ] 2026-06-05 17:45:56
[2026-06-05 17:45:57,216.216 INFO    ] 2026-06-05 17:45:57
[2026-06-05 17:45:57,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:45:57,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:45:57,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:45:57,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:45:57,685.685 INFO    ] time= 05/06/2026 17:45:57
[2026-06-05 17:45:57,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:45:57,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:45:57,804.804 INFO    ] No existing commands found in stream
[2026-06-05 17:46:02,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:46:02,839.839 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 17:46:04,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:46:04,677.677 INFO    ] Checking for system updates...
[2026-06-05 17:46:04,717.717 INFO    ] 200
[2026-06-05 17:46:04,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:04,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:04,782.782 INFO    ] No update needed
[2026-06-05 17:46:04,785.785 INFO    ] Checking for camera pi updates...
[2026-06-05 17:46:04,819.819 INFO    ] 200
[2026-06-05 17:46:04,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:04,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:46:04,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:04,907.907 INFO    ] No camera update needed
[2026-06-05 17:46:04,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:46:04,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:46:04,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:46:04,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:46:06,963.963 INFO    ] ================================================
[2026-06-05 17:46:06,980.980 INFO    ] Launching Daemon at Fri Jun  5 17:46:06 IST 2026
[2026-06-05 17:46:06,992.992 INFO    ] ================================================
[2026-06-05 17:46:07,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:46:07
[2026-06-05 17:46:08,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:46:08,434.434 INFO    ] Initializing speech engine...
[2026-06-05 17:46:08,444.444 INFO    ] 2026-06-05 17:46:08
[2026-06-05 17:46:08,707.707 INFO    ] 2026-06-05 17:46:08
[2026-06-05 17:46:08,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:46:08,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:46:08,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:46:09,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:46:09,167.167 INFO    ] time= 05/06/2026 17:46:09
[2026-06-05 17:46:09,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:46:09,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:46:09,408.408 INFO    ] No existing commands found in stream
[2026-06-05 17:46:14,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:46:14,426.426 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 17:46:16,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:46:16,993.993 INFO    ] Checking for system updates...
[2026-06-05 17:46:17,029.029 INFO    ] 200
[2026-06-05 17:46:17,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:17,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:17,087.087 INFO    ] No update needed
[2026-06-05 17:46:17,090.090 INFO    ] Checking for camera pi updates...
[2026-06-05 17:46:17,128.128 INFO    ] 200
[2026-06-05 17:46:17,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:17,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:46:17,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:17,224.224 INFO    ] No camera update needed
[2026-06-05 17:46:17,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:46:17,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:46:17,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:46:17,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:46:19,282.282 INFO    ] ================================================
[2026-06-05 17:46:19,298.298 INFO    ] Launching Daemon at Fri Jun  5 17:46:19 IST 2026
[2026-06-05 17:46:19,309.309 INFO    ] ================================================
[2026-06-05 17:46:19,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:46:19
[2026-06-05 17:46:20,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:46:20,999.999 INFO    ] Initializing speech engine...
[2026-06-05 17:46:21,011.011 INFO    ] 2026-06-05 17:46:21
[2026-06-05 17:46:21,330.330 INFO    ] 2026-06-05 17:46:21
[2026-06-05 17:46:21,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:46:21,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:46:21,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:46:21,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:46:21,838.838 INFO    ] time= 05/06/2026 17:46:21
[2026-06-05 17:46:21,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:46:21,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:46:21,994.994 INFO    ] No existing commands found in stream
[2026-06-05 17:46:27,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:46:27,019.019 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 17:46:29,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:46:29,747.747 INFO    ] Checking for system updates...
[2026-06-05 17:46:29,790.790 INFO    ] 200
[2026-06-05 17:46:29,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:29,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:29,859.859 INFO    ] No update needed
[2026-06-05 17:46:29,862.862 INFO    ] Checking for camera pi updates...
[2026-06-05 17:46:29,898.898 INFO    ] 200
[2026-06-05 17:46:29,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:29,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:46:30,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:30,004.004 INFO    ] No camera update needed
[2026-06-05 17:46:30,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:46:30,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:46:30,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:46:30,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:46:32,068.068 INFO    ] ================================================
[2026-06-05 17:46:32,086.086 INFO    ] Launching Daemon at Fri Jun  5 17:46:32 IST 2026
[2026-06-05 17:46:32,098.098 INFO    ] ================================================
[2026-06-05 17:46:32,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:46:32
[2026-06-05 17:46:33,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:46:33,750.750 INFO    ] Initializing speech engine...
[2026-06-05 17:46:33,762.762 INFO    ] 2026-06-05 17:46:33
[2026-06-05 17:46:34,059.059 INFO    ] 2026-06-05 17:46:34
[2026-06-05 17:46:34,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:46:34,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:46:34,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:46:34,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:46:34,603.603 INFO    ] time= 05/06/2026 17:46:34
[2026-06-05 17:46:34,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:46:34,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:46:34,768.768 INFO    ] No existing commands found in stream
[2026-06-05 17:46:39,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:46:39,801.801 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 17:46:43,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:46:43,838.838 INFO    ] Checking for system updates...
[2026-06-05 17:46:43,877.877 INFO    ] 200
[2026-06-05 17:46:43,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:43,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:43,948.948 INFO    ] No update needed
[2026-06-05 17:46:43,951.951 INFO    ] Checking for camera pi updates...
[2026-06-05 17:46:43,991.991 INFO    ] 200
[2026-06-05 17:46:43,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:44,037.037 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:46:44,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:44,095.095 INFO    ] No camera update needed
[2026-06-05 17:46:44,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:46:44,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:46:44,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:46:44,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:46:46,158.158 INFO    ] ================================================
[2026-06-05 17:46:46,174.174 INFO    ] Launching Daemon at Fri Jun  5 17:46:46 IST 2026
[2026-06-05 17:46:46,185.185 INFO    ] ================================================
[2026-06-05 17:46:46,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:46:46
[2026-06-05 17:46:47,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:46:47,613.613 INFO    ] Initializing speech engine...
[2026-06-05 17:46:47,637.637 INFO    ] 2026-06-05 17:46:47
[2026-06-05 17:46:47,893.893 INFO    ] 2026-06-05 17:46:47
[2026-06-05 17:46:47,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:46:48,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:46:48,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:46:48,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:46:48,272.272 INFO    ] time= 05/06/2026 17:46:48
[2026-06-05 17:46:48,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:46:48,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:46:48,451.451 INFO    ] No existing commands found in stream
[2026-06-05 17:46:53,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:46:53,489.489 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 17:46:55,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:46:55,730.730 INFO    ] Checking for system updates...
[2026-06-05 17:46:55,771.771 INFO    ] 200
[2026-06-05 17:46:55,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:55,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:55,829.829 INFO    ] No update needed
[2026-06-05 17:46:55,831.831 INFO    ] Checking for camera pi updates...
[2026-06-05 17:46:55,865.865 INFO    ] 200
[2026-06-05 17:46:55,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:46:55,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:46:55,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:46:55,962.962 INFO    ] No camera update needed
[2026-06-05 17:46:55,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:46:55,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:46:55,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:46:55,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:46:58,020.020 INFO    ] ================================================
[2026-06-05 17:46:58,036.036 INFO    ] Launching Daemon at Fri Jun  5 17:46:58 IST 2026
[2026-06-05 17:46:58,047.047 INFO    ] ================================================
[2026-06-05 17:46:58,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:46:58
[2026-06-05 17:46:59,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:46:59,470.470 INFO    ] Initializing speech engine...
[2026-06-05 17:46:59,480.480 INFO    ] 2026-06-05 17:46:59
[2026-06-05 17:46:59,746.746 INFO    ] 2026-06-05 17:46:59
[2026-06-05 17:46:59,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:46:59,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:47:00,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:47:00,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:47:00,167.167 INFO    ] time= 05/06/2026 17:47:00
[2026-06-05 17:47:00,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:47:00,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:47:00,256.256 INFO    ] No existing commands found in stream
[2026-06-05 17:47:05,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:47:05,272.272 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 17:47:07,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:47:07,854.854 INFO    ] Checking for system updates...
[2026-06-05 17:47:07,891.891 INFO    ] 200
[2026-06-05 17:47:07,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:07,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:47:07,951.951 INFO    ] No update needed
[2026-06-05 17:47:07,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 17:47:07,988.988 INFO    ] 200
[2026-06-05 17:47:07,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:08,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:47:08,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:47:08,059.059 INFO    ] No camera update needed
[2026-06-05 17:47:08,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:47:08,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:47:08,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:47:08,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:47:10,118.118 INFO    ] ================================================
[2026-06-05 17:47:10,135.135 INFO    ] Launching Daemon at Fri Jun  5 17:47:10 IST 2026
[2026-06-05 17:47:10,149.149 INFO    ] ================================================
[2026-06-05 17:47:10,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:47:10
[2026-06-05 17:47:11,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:47:11,667.667 INFO    ] Initializing speech engine...
[2026-06-05 17:47:11,686.686 INFO    ] 2026-06-05 17:47:11
[2026-06-05 17:47:11,976.976 INFO    ] 2026-06-05 17:47:11
[2026-06-05 17:47:12,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:47:12,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:47:12,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:47:12,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:47:12,445.445 INFO    ] time= 05/06/2026 17:47:12
[2026-06-05 17:47:12,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:47:12,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:47:12,675.675 INFO    ] No existing commands found in stream
[2026-06-05 17:47:17,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:47:17,693.693 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 17:47:19,361.361 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:47:19,363.363 INFO    ] Checking for system updates...
[2026-06-05 17:47:19,400.400 INFO    ] 200
[2026-06-05 17:47:19,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:19,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:47:19,463.463 INFO    ] No update needed
[2026-06-05 17:47:19,465.465 INFO    ] Checking for camera pi updates...
[2026-06-05 17:47:19,502.502 INFO    ] 200
[2026-06-05 17:47:19,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:19,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:47:19,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:47:19,588.588 INFO    ] No camera update needed
[2026-06-05 17:47:19,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:47:19,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:47:19,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:47:19,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:47:21,645.645 INFO    ] ================================================
[2026-06-05 17:47:21,661.661 INFO    ] Launching Daemon at Fri Jun  5 17:47:21 IST 2026
[2026-06-05 17:47:21,672.672 INFO    ] ================================================
[2026-06-05 17:47:22,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:47:22
[2026-06-05 17:47:22,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:47:23,107.107 INFO    ] Initializing speech engine...
[2026-06-05 17:47:23,131.131 INFO    ] 2026-06-05 17:47:23
[2026-06-05 17:47:23,401.401 INFO    ] 2026-06-05 17:47:23
[2026-06-05 17:47:23,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:47:25,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:47:25,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:47:25,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:47:25,648.648 INFO    ] time= 05/06/2026 17:47:25
[2026-06-05 17:47:25,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:47:25,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:47:25,773.773 INFO    ] No existing commands found in stream
[2026-06-05 17:47:30,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:47:30,790.790 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 17:47:33,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:47:33,378.378 INFO    ] Checking for system updates...
[2026-06-05 17:47:33,414.414 INFO    ] 200
[2026-06-05 17:47:33,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:33,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:47:33,472.472 INFO    ] No update needed
[2026-06-05 17:47:33,475.475 INFO    ] Checking for camera pi updates...
[2026-06-05 17:47:33,512.512 INFO    ] 200
[2026-06-05 17:47:33,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:33,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:47:33,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:47:33,601.601 INFO    ] No camera update needed
[2026-06-05 17:47:33,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:47:33,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:47:33,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:47:33,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:47:35,662.662 INFO    ] ================================================
[2026-06-05 17:47:35,678.678 INFO    ] Launching Daemon at Fri Jun  5 17:47:35 IST 2026
[2026-06-05 17:47:35,689.689 INFO    ] ================================================
[2026-06-05 17:47:36,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:47:36
[2026-06-05 17:47:36,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:47:37,139.139 INFO    ] Initializing speech engine...
[2026-06-05 17:47:37,152.152 INFO    ] 2026-06-05 17:47:37
[2026-06-05 17:47:37,402.402 INFO    ] 2026-06-05 17:47:37
[2026-06-05 17:47:37,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:47:37,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:47:37,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:47:37,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:47:37,888.888 INFO    ] time= 05/06/2026 17:47:37
[2026-06-05 17:47:37,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:47:37,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:47:38,098.098 INFO    ] No existing commands found in stream
[2026-06-05 17:47:43,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:47:43,123.123 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 17:47:44,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:47:44,506.506 INFO    ] Checking for system updates...
[2026-06-05 17:47:44,542.542 INFO    ] 200
[2026-06-05 17:47:44,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:44,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:47:44,600.600 INFO    ] No update needed
[2026-06-05 17:47:44,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 17:47:44,636.636 INFO    ] 200
[2026-06-05 17:47:44,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:44,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:47:44,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:47:44,724.724 INFO    ] No camera update needed
[2026-06-05 17:47:44,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:47:44,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:47:44,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:47:44,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:47:46,780.780 INFO    ] ================================================
[2026-06-05 17:47:46,796.796 INFO    ] Launching Daemon at Fri Jun  5 17:47:46 IST 2026
[2026-06-05 17:47:46,807.807 INFO    ] ================================================
[2026-06-05 17:47:47,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:47:47
[2026-06-05 17:47:47,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:47:48,239.239 INFO    ] Initializing speech engine...
[2026-06-05 17:47:48,248.248 INFO    ] 2026-06-05 17:47:48
[2026-06-05 17:47:48,544.544 INFO    ] 2026-06-05 17:47:48
[2026-06-05 17:47:48,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:47:48,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:47:48,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:47:48,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:47:48,955.955 INFO    ] time= 05/06/2026 17:47:48
[2026-06-05 17:47:48,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:47:48,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:47:49,043.043 INFO    ] No existing commands found in stream
[2026-06-05 17:47:54,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:47:54,060.060 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 17:47:56,983.983 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:47:56,987.987 INFO    ] Checking for system updates...
[2026-06-05 17:47:57,030.030 INFO    ] 200
[2026-06-05 17:47:57,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:57,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:47:57,092.092 INFO    ] No update needed
[2026-06-05 17:47:57,095.095 INFO    ] Checking for camera pi updates...
[2026-06-05 17:47:57,136.136 INFO    ] 200
[2026-06-05 17:47:57,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:47:57,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:47:57,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:47:57,349.349 INFO    ] No camera update needed
[2026-06-05 17:47:57,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:47:57,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:47:57,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:47:57,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:47:59,409.409 INFO    ] ================================================
[2026-06-05 17:47:59,425.425 INFO    ] Launching Daemon at Fri Jun  5 17:47:59 IST 2026
[2026-06-05 17:47:59,436.436 INFO    ] ================================================
[2026-06-05 17:48:00,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:48:00
[2026-06-05 17:48:00,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:48:00,954.954 INFO    ] Initializing speech engine...
[2026-06-05 17:48:00,963.963 INFO    ] 2026-06-05 17:48:00
[2026-06-05 17:48:01,218.218 INFO    ] 2026-06-05 17:48:01
[2026-06-05 17:48:01,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:48:01,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:48:01,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:48:01,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:48:01,763.763 INFO    ] time= 05/06/2026 17:48:01
[2026-06-05 17:48:01,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:48:01,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:48:01,932.932 INFO    ] No existing commands found in stream
[2026-06-05 17:48:06,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:48:06,948.948 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 17:48:08,937.937 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:48:08,940.940 INFO    ] Checking for system updates...
[2026-06-05 17:48:08,976.976 INFO    ] 200
[2026-06-05 17:48:08,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:48:09,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:48:09,036.036 INFO    ] No update needed
[2026-06-05 17:48:09,039.039 INFO    ] Checking for camera pi updates...
[2026-06-05 17:48:09,072.072 INFO    ] 200
[2026-06-05 17:48:09,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:48:09,116.116 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:48:09,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:48:09,168.168 INFO    ] No camera update needed
[2026-06-05 17:48:09,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:48:09,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:48:09,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:48:09,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:48:11,223.223 INFO    ] ================================================
[2026-06-05 17:48:11,238.238 INFO    ] Launching Daemon at Fri Jun  5 17:48:11 IST 2026
[2026-06-05 17:48:11,250.250 INFO    ] ================================================
[2026-06-05 17:48:11,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:48:11
[2026-06-05 17:48:12,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:48:12,684.684 INFO    ] Initializing speech engine...
[2026-06-05 17:48:12,697.697 INFO    ] 2026-06-05 17:48:12
[2026-06-05 17:48:12,956.956 INFO    ] 2026-06-05 17:48:12
[2026-06-05 17:48:12,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:48:13,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:48:13,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:48:13,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:48:13,409.409 INFO    ] time= 05/06/2026 17:48:13
[2026-06-05 17:48:13,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:48:13,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:48:13,671.671 INFO    ] No existing commands found in stream
[2026-06-05 17:48:18,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:48:18,698.698 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-05 17:48:19,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:48:19,157.157 INFO    ] Checking for system updates...
[2026-06-05 17:48:19,195.195 INFO    ] 200
[2026-06-05 17:48:19,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:48:19,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:48:19,290.290 INFO    ] No update needed
[2026-06-05 17:48:19,293.293 INFO    ] Checking for camera pi updates...
[2026-06-05 17:48:19,334.334 INFO    ] 200
[2026-06-05 17:48:19,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:48:19,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:48:19,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:48:19,449.449 INFO    ] No camera update needed
[2026-06-05 17:48:19,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:48:19,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:48:19,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:48:19,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:48:21,505.505 INFO    ] ================================================
[2026-06-05 17:48:21,520.520 INFO    ] Launching Daemon at Fri Jun  5 17:48:21 IST 2026
[2026-06-05 17:48:21,531.531 INFO    ] ================================================
[2026-06-05 17:48:22,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:48:22
[2026-06-05 17:48:22,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:48:22,992.992 INFO    ] Initializing speech engine...
[2026-06-05 17:48:22,999.999 INFO    ] 2026-06-05 17:48:22
[2026-06-05 17:48:23,261.261 INFO    ] 2026-06-05 17:48:23
[2026-06-05 17:48:23,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:48:25,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:48:25,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:48:26,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:48:26,534.534 INFO    ] time= 05/06/2026 17:48:26
[2026-06-05 17:48:26,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:48:26,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:48:26,608.608 INFO    ] No existing commands found in stream
[2026-06-05 17:48:31,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:48:31,621.621 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 17:48:33,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:48:33,252.252 INFO    ] Checking for system updates...
[2026-06-05 17:48:33,289.289 INFO    ] 200
[2026-06-05 17:48:33,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:48:33,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:48:33,354.354 INFO    ] No update needed
[2026-06-05 17:48:33,358.358 INFO    ] Checking for camera pi updates...
[2026-06-05 17:48:33,395.395 INFO    ] 200
[2026-06-05 17:48:33,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:48:33,439.439 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:48:33,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:48:33,484.484 INFO    ] No camera update needed
[2026-06-05 17:48:33,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:48:33,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:48:33,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:48:33,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:48:35,542.542 INFO    ] ================================================
[2026-06-05 17:48:35,558.558 INFO    ] Launching Daemon at Fri Jun  5 17:48:35 IST 2026
[2026-06-05 17:48:35,569.569 INFO    ] ================================================
[2026-06-05 17:48:36,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:48:36
[2026-06-05 17:48:36,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:48:37,037.037 INFO    ] Initializing speech engine...
[2026-06-05 17:48:37,048.048 INFO    ] 2026-06-05 17:48:37
[2026-06-05 17:48:37,322.322 INFO    ] 2026-06-05 17:48:37
[2026-06-05 17:48:37,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:48:37,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:48:37,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:48:37,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:48:37,844.844 INFO    ] time= 05/06/2026 17:48:37
[2026-06-05 17:48:37,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:48:37,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:48:38,053.053 INFO    ] No existing commands found in stream
[2026-06-05 17:48:43,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:48:43,081.081 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 17:48:46,107.107 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:48:46,110.110 INFO    ] Checking for system updates...
[2026-06-05 17:48:46,148.148 INFO    ] 200
[2026-06-05 17:48:46,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:48:46,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:48:46,207.207 INFO    ] No update needed
[2026-06-05 17:48:46,209.209 INFO    ] Checking for camera pi updates...
[2026-06-05 17:48:46,243.243 INFO    ] 200
[2026-06-05 17:48:46,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:48:46,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:48:46,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:48:46,335.335 INFO    ] No camera update needed
[2026-06-05 17:48:46,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:48:46,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:48:46,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:48:46,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:48:48,393.393 INFO    ] ================================================
[2026-06-05 17:48:48,410.410 INFO    ] Launching Daemon at Fri Jun  5 17:48:48 IST 2026
[2026-06-05 17:48:48,424.424 INFO    ] ================================================
[2026-06-05 17:48:49,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:48:49
[2026-06-05 17:48:49,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:48:49,923.923 INFO    ] Initializing speech engine...
[2026-06-05 17:48:49,944.944 INFO    ] 2026-06-05 17:48:49
[2026-06-05 17:48:50,212.212 INFO    ] 2026-06-05 17:48:50
[2026-06-05 17:48:50,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:48:50,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:48:50,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:48:50,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:48:50,693.693 INFO    ] time= 05/06/2026 17:48:50
[2026-06-05 17:48:50,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:48:50,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:48:50,908.908 INFO    ] No existing commands found in stream
[2026-06-05 17:48:55,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:48:55,933.933 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 17:48:59,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:48:59,853.853 INFO    ] Checking for system updates...
[2026-06-05 17:48:59,890.890 INFO    ] 200
[2026-06-05 17:48:59,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:48:59,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:48:59,958.958 INFO    ] No update needed
[2026-06-05 17:48:59,960.960 INFO    ] Checking for camera pi updates...
[2026-06-05 17:48:59,996.996 INFO    ] 200
[2026-06-05 17:48:59,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:49:00,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:49:00,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:49:00,089.089 INFO    ] No camera update needed
[2026-06-05 17:49:00,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:49:00,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:49:00,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:49:00,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:49:02,151.151 INFO    ] ================================================
[2026-06-05 17:49:02,169.169 INFO    ] Launching Daemon at Fri Jun  5 17:49:02 IST 2026
[2026-06-05 17:49:02,181.181 INFO    ] ================================================
[2026-06-05 17:49:02,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:49:02
[2026-06-05 17:49:03,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:49:03,711.711 INFO    ] Initializing speech engine...
[2026-06-05 17:49:03,724.724 INFO    ] 2026-06-05 17:49:03
[2026-06-05 17:49:03,994.994 INFO    ] 2026-06-05 17:49:03
[2026-06-05 17:49:04,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:49:04,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:49:04,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:49:04,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:49:04,488.488 INFO    ] time= 05/06/2026 17:49:04
[2026-06-05 17:49:04,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:49:04,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:49:04,689.689 INFO    ] No existing commands found in stream
[2026-06-05 17:49:09,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:49:09,713.713 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 17:49:14,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:49:14,858.858 INFO    ] Checking for system updates...
[2026-06-05 17:49:14,896.896 INFO    ] 200
[2026-06-05 17:49:14,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:49:14,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:49:14,958.958 INFO    ] No update needed
[2026-06-05 17:49:14,961.961 INFO    ] Checking for camera pi updates...
[2026-06-05 17:49:14,996.996 INFO    ] 200
[2026-06-05 17:49:14,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:49:15,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:49:15,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:49:15,097.097 INFO    ] No camera update needed
[2026-06-05 17:49:15,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:49:15,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:49:15,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:49:15,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:49:17,153.153 INFO    ] ================================================
[2026-06-05 17:49:17,169.169 INFO    ] Launching Daemon at Fri Jun  5 17:49:17 IST 2026
[2026-06-05 17:49:17,180.180 INFO    ] ================================================
[2026-06-05 17:49:17,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:49:17
[2026-06-05 17:49:18,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:49:18,655.655 INFO    ] Initializing speech engine...
[2026-06-05 17:49:18,663.663 INFO    ] 2026-06-05 17:49:18
[2026-06-05 17:49:18,922.922 INFO    ] 2026-06-05 17:49:18
[2026-06-05 17:49:18,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:49:19,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:49:19,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:49:19,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:49:19,310.310 INFO    ] time= 05/06/2026 17:49:19
[2026-06-05 17:49:19,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:49:19,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:49:19,494.494 INFO    ] No existing commands found in stream
[2026-06-05 17:49:24,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:49:24,522.522 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 17:49:25,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:49:25,742.742 INFO    ] Checking for system updates...
[2026-06-05 17:49:25,781.781 INFO    ] 200
[2026-06-05 17:49:25,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:49:25,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:49:25,846.846 INFO    ] No update needed
[2026-06-05 17:49:25,849.849 INFO    ] Checking for camera pi updates...
[2026-06-05 17:49:25,892.892 INFO    ] 200
[2026-06-05 17:49:25,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:49:25,938.938 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:49:25,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:49:25,992.992 INFO    ] No camera update needed
[2026-06-05 17:49:25,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:49:25,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:49:26,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:49:26,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:49:28,050.050 INFO    ] ================================================
[2026-06-05 17:49:28,065.065 INFO    ] Launching Daemon at Fri Jun  5 17:49:28 IST 2026
[2026-06-05 17:49:28,076.076 INFO    ] ================================================
[2026-06-05 17:49:28,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:49:28
[2026-06-05 17:49:29,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:49:29,541.541 INFO    ] Initializing speech engine...
[2026-06-05 17:49:29,561.561 INFO    ] 2026-06-05 17:49:29
[2026-06-05 17:49:29,818.818 INFO    ] 2026-06-05 17:49:29
[2026-06-05 17:49:29,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:49:30,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:49:30,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:49:30,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:49:30,324.324 INFO    ] time= 05/06/2026 17:49:30
[2026-06-05 17:49:30,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:49:30,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:49:30,539.539 INFO    ] No existing commands found in stream
[2026-06-05 17:49:35,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:49:35,573.573 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 17:49:37,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:49:37,968.968 INFO    ] Checking for system updates...
[2026-06-05 17:49:38,009.009 INFO    ] 200
[2026-06-05 17:49:38,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:49:38,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:49:38,070.070 INFO    ] No update needed
[2026-06-05 17:49:38,072.072 INFO    ] Checking for camera pi updates...
[2026-06-05 17:49:38,110.110 INFO    ] 200
[2026-06-05 17:49:38,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:49:38,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:49:38,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:49:38,209.209 INFO    ] No camera update needed
[2026-06-05 17:49:38,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:49:38,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:49:38,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:49:38,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:49:40,267.267 INFO    ] ================================================
[2026-06-05 17:49:40,283.283 INFO    ] Launching Daemon at Fri Jun  5 17:49:40 IST 2026
[2026-06-05 17:49:40,294.294 INFO    ] ================================================
[2026-06-05 17:49:40,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:49:40
[2026-06-05 17:49:41,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:49:41,796.796 INFO    ] Initializing speech engine...
[2026-06-05 17:49:41,825.825 INFO    ] 2026-06-05 17:49:41
[2026-06-05 17:49:42,092.092 INFO    ] 2026-06-05 17:49:42
[2026-06-05 17:49:42,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:49:42,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:49:42,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:49:42,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:49:42,646.646 INFO    ] time= 05/06/2026 17:49:42
[2026-06-05 17:49:42,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:49:42,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:49:42,876.876 INFO    ] No existing commands found in stream
[2026-06-05 17:49:47,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:49:47,908.908 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 17:49:48,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:49:48,946.946 INFO    ] Checking for system updates...
[2026-06-05 17:49:48,991.991 INFO    ] 200
[2026-06-05 17:49:48,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:49:49,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:49:49,076.076 INFO    ] No update needed
[2026-06-05 17:49:49,078.078 INFO    ] Checking for camera pi updates...
[2026-06-05 17:49:49,128.128 INFO    ] 200
[2026-06-05 17:49:49,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:49:49,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:49:49,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:49:49,238.238 INFO    ] No camera update needed
[2026-06-05 17:49:49,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:49:49,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:49:49,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:49:49,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:49:51,300.300 INFO    ] ================================================
[2026-06-05 17:49:51,316.316 INFO    ] Launching Daemon at Fri Jun  5 17:49:51 IST 2026
[2026-06-05 17:49:51,327.327 INFO    ] ================================================
[2026-06-05 17:49:51,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:49:51
[2026-06-05 17:49:52,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:49:52,944.944 INFO    ] Initializing speech engine...
[2026-06-05 17:49:52,955.955 INFO    ] 2026-06-05 17:49:52
[2026-06-05 17:49:53,250.250 INFO    ] 2026-06-05 17:49:53
[2026-06-05 17:49:53,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:49:55,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:49:55,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:49:55,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:49:55,551.551 INFO    ] time= 05/06/2026 17:49:55
[2026-06-05 17:49:55,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:49:55,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:49:55,711.711 INFO    ] No existing commands found in stream
[2026-06-05 17:50:00,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:50:00,727.727 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 17:50:08,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:50:08,571.571 INFO    ] Checking for system updates...
[2026-06-05 17:50:08,611.611 INFO    ] 200
[2026-06-05 17:50:08,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:08,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:50:08,674.674 INFO    ] No update needed
[2026-06-05 17:50:08,677.677 INFO    ] Checking for camera pi updates...
[2026-06-05 17:50:08,714.714 INFO    ] 200
[2026-06-05 17:50:08,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:08,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:50:08,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:50:08,811.811 INFO    ] No camera update needed
[2026-06-05 17:50:08,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:50:08,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:50:08,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:50:08,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:50:10,874.874 INFO    ] ================================================
[2026-06-05 17:50:10,890.890 INFO    ] Launching Daemon at Fri Jun  5 17:50:10 IST 2026
[2026-06-05 17:50:10,901.901 INFO    ] ================================================
[2026-06-05 17:50:11,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:50:11
[2026-06-05 17:50:12,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:50:12,485.485 INFO    ] Initializing speech engine...
[2026-06-05 17:50:12,491.491 INFO    ] 2026-06-05 17:50:12
[2026-06-05 17:50:12,811.811 INFO    ] 2026-06-05 17:50:12
[2026-06-05 17:50:12,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:50:13,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:50:13,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:50:13,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:50:13,368.368 INFO    ] time= 05/06/2026 17:50:13
[2026-06-05 17:50:13,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:50:13,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:50:13,520.520 INFO    ] No existing commands found in stream
[2026-06-05 17:50:18,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:50:18,550.550 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 17:50:21,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:50:21,823.823 INFO    ] Checking for system updates...
[2026-06-05 17:50:21,861.861 INFO    ] 200
[2026-06-05 17:50:21,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:21,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:50:21,922.922 INFO    ] No update needed
[2026-06-05 17:50:21,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 17:50:21,960.960 INFO    ] 200
[2026-06-05 17:50:21,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:22,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:50:22,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:50:22,049.049 INFO    ] No camera update needed
[2026-06-05 17:50:22,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:50:22,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:50:22,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:50:22,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:50:24,106.106 INFO    ] ================================================
[2026-06-05 17:50:24,122.122 INFO    ] Launching Daemon at Fri Jun  5 17:50:24 IST 2026
[2026-06-05 17:50:24,133.133 INFO    ] ================================================
[2026-06-05 17:50:24,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:50:24
[2026-06-05 17:50:25,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:50:25,653.653 INFO    ] Initializing speech engine...
[2026-06-05 17:50:25,668.668 INFO    ] 2026-06-05 17:50:25
[2026-06-05 17:50:25,933.933 INFO    ] 2026-06-05 17:50:25
[2026-06-05 17:50:25,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:50:26,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:50:26,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:50:26,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:50:26,325.325 INFO    ] time= 05/06/2026 17:50:26
[2026-06-05 17:50:26,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:50:26,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:50:26,516.516 INFO    ] No existing commands found in stream
[2026-06-05 17:50:31,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:50:31,549.549 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 17:50:33,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:50:33,835.835 INFO    ] Checking for system updates...
[2026-06-05 17:50:33,876.876 INFO    ] 200
[2026-06-05 17:50:33,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:33,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:50:33,939.939 INFO    ] No update needed
[2026-06-05 17:50:33,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 17:50:33,981.981 INFO    ] 200
[2026-06-05 17:50:33,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:34,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:50:34,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:50:34,081.081 INFO    ] No camera update needed
[2026-06-05 17:50:34,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:50:34,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:50:34,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:50:34,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:50:36,140.140 INFO    ] ================================================
[2026-06-05 17:50:36,157.157 INFO    ] Launching Daemon at Fri Jun  5 17:50:36 IST 2026
[2026-06-05 17:50:36,169.169 INFO    ] ================================================
[2026-06-05 17:50:36,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:50:36
[2026-06-05 17:50:37,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:50:37,643.643 INFO    ] Initializing speech engine...
[2026-06-05 17:50:37,649.649 INFO    ] 2026-06-05 17:50:37
[2026-06-05 17:50:37,954.954 INFO    ] 2026-06-05 17:50:37
[2026-06-05 17:50:37,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:50:38,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:50:38,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:50:38,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:50:38,385.385 INFO    ] time= 05/06/2026 17:50:38
[2026-06-05 17:50:38,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:50:38,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:50:38,480.480 INFO    ] No existing commands found in stream
[2026-06-05 17:50:43,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:50:43,499.499 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 17:50:46,177.177 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:50:46,180.180 INFO    ] Checking for system updates...
[2026-06-05 17:50:46,217.217 INFO    ] 200
[2026-06-05 17:50:46,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:46,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:50:46,282.282 INFO    ] No update needed
[2026-06-05 17:50:46,284.284 INFO    ] Checking for camera pi updates...
[2026-06-05 17:50:46,320.320 INFO    ] 200
[2026-06-05 17:50:46,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:46,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:50:46,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:50:46,424.424 INFO    ] No camera update needed
[2026-06-05 17:50:46,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:50:46,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:50:46,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:50:46,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:50:48,484.484 INFO    ] ================================================
[2026-06-05 17:50:48,508.508 INFO    ] Launching Daemon at Fri Jun  5 17:50:48 IST 2026
[2026-06-05 17:50:48,519.519 INFO    ] ================================================
[2026-06-05 17:50:49,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:50:49
[2026-06-05 17:50:49,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:50:50,060.060 INFO    ] Initializing speech engine...
[2026-06-05 17:50:50,075.075 INFO    ] 2026-06-05 17:50:50
[2026-06-05 17:50:50,398.398 INFO    ] 2026-06-05 17:50:50
[2026-06-05 17:50:50,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:50:50,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:50:50,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:50:50,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:50:50,909.909 INFO    ] time= 05/06/2026 17:50:50
[2026-06-05 17:50:50,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:50:50,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:50:51,096.096 INFO    ] No existing commands found in stream
[2026-06-05 17:50:56,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:50:56,130.130 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 17:50:58,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:50:58,582.582 INFO    ] Checking for system updates...
[2026-06-05 17:50:58,621.621 INFO    ] 200
[2026-06-05 17:50:58,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:58,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:50:58,684.684 INFO    ] No update needed
[2026-06-05 17:50:58,688.688 INFO    ] Checking for camera pi updates...
[2026-06-05 17:50:58,723.723 INFO    ] 200
[2026-06-05 17:50:58,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:50:58,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:50:58,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:50:58,817.817 INFO    ] No camera update needed
[2026-06-05 17:50:58,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:50:58,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:50:58,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:50:58,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:51:00,875.875 INFO    ] ================================================
[2026-06-05 17:51:00,891.891 INFO    ] Launching Daemon at Fri Jun  5 17:51:00 IST 2026
[2026-06-05 17:51:00,903.903 INFO    ] ================================================
[2026-06-05 17:51:01,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:51:01
[2026-06-05 17:51:02,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:51:02,598.598 INFO    ] Initializing speech engine...
[2026-06-05 17:51:02,608.608 INFO    ] 2026-06-05 17:51:02
[2026-06-05 17:51:02,888.888 INFO    ] 2026-06-05 17:51:02
[2026-06-05 17:51:02,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:51:03,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:51:03,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:51:03,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:51:03,324.324 INFO    ] time= 05/06/2026 17:51:03
[2026-06-05 17:51:03,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:51:03,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:51:03,478.478 INFO    ] No existing commands found in stream
[2026-06-05 17:51:08,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:51:08,500.500 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 17:51:12,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:51:12,853.853 INFO    ] Checking for system updates...
[2026-06-05 17:51:12,890.890 INFO    ] 200
[2026-06-05 17:51:12,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:51:12,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:51:12,956.956 INFO    ] No update needed
[2026-06-05 17:51:12,959.959 INFO    ] Checking for camera pi updates...
[2026-06-05 17:51:12,994.994 INFO    ] 200
[2026-06-05 17:51:12,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:51:13,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:51:13,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:51:13,089.089 INFO    ] No camera update needed
[2026-06-05 17:51:13,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:51:13,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:51:13,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:51:13,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:51:15,146.146 INFO    ] ================================================
[2026-06-05 17:51:15,161.161 INFO    ] Launching Daemon at Fri Jun  5 17:51:15 IST 2026
[2026-06-05 17:51:15,172.172 INFO    ] ================================================
[2026-06-05 17:51:15,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:51:15
[2026-06-05 17:51:16,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:51:16,642.642 INFO    ] Initializing speech engine...
[2026-06-05 17:51:16,653.653 INFO    ] 2026-06-05 17:51:16
[2026-06-05 17:51:16,904.904 INFO    ] 2026-06-05 17:51:16
[2026-06-05 17:51:16,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:51:17,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:51:17,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:51:17,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:51:17,445.445 INFO    ] time= 05/06/2026 17:51:17
[2026-06-05 17:51:17,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:51:17,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:51:17,632.632 INFO    ] No existing commands found in stream
[2026-06-05 17:51:22,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:51:22,653.653 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 17:51:23,215.215 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:51:23,219.219 INFO    ] Checking for system updates...
[2026-06-05 17:51:23,258.258 INFO    ] 200
[2026-06-05 17:51:23,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:51:23,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:51:23,321.321 INFO    ] No update needed
[2026-06-05 17:51:23,324.324 INFO    ] Checking for camera pi updates...
[2026-06-05 17:51:23,363.363 INFO    ] 200
[2026-06-05 17:51:23,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:51:23,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:51:23,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:51:23,469.469 INFO    ] No camera update needed
[2026-06-05 17:51:23,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:51:23,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:51:23,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:51:23,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:51:25,530.530 INFO    ] ================================================
[2026-06-05 17:51:25,546.546 INFO    ] Launching Daemon at Fri Jun  5 17:51:25 IST 2026
[2026-06-05 17:51:25,557.557 INFO    ] ================================================
[2026-06-05 17:51:26,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:51:26
[2026-06-05 17:51:26,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:51:27,184.184 INFO    ] Initializing speech engine...
[2026-06-05 17:51:27,192.192 INFO    ] 2026-06-05 17:51:27
[2026-06-05 17:51:27,507.507 INFO    ] 2026-06-05 17:51:27
[2026-06-05 17:51:27,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:51:27,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:51:27,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:51:28,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:51:28,120.120 INFO    ] time= 05/06/2026 17:51:28
[2026-06-05 17:51:28,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:51:28,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:51:28,280.280 INFO    ] No existing commands found in stream
[2026-06-05 17:51:33,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:51:33,307.307 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 17:51:36,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:51:36,339.339 INFO    ] Checking for system updates...
[2026-06-05 17:51:36,379.379 INFO    ] 200
[2026-06-05 17:51:36,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:51:36,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:51:36,442.442 INFO    ] No update needed
[2026-06-05 17:51:36,445.445 INFO    ] Checking for camera pi updates...
[2026-06-05 17:51:36,483.483 INFO    ] 200
[2026-06-05 17:51:36,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:51:36,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:51:36,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:51:36,599.599 INFO    ] No camera update needed
[2026-06-05 17:51:36,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:51:36,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:51:36,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:51:36,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:51:38,660.660 INFO    ] ================================================
[2026-06-05 17:51:38,675.675 INFO    ] Launching Daemon at Fri Jun  5 17:51:38 IST 2026
[2026-06-05 17:51:38,686.686 INFO    ] ================================================
[2026-06-05 17:51:39,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:51:39
[2026-06-05 17:51:39,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:51:40,150.150 INFO    ] Initializing speech engine...
[2026-06-05 17:51:40,159.159 INFO    ] 2026-06-05 17:51:40
[2026-06-05 17:51:40,413.413 INFO    ] 2026-06-05 17:51:40
[2026-06-05 17:51:40,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:51:40,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:51:40,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:51:40,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:51:40,863.863 INFO    ] time= 05/06/2026 17:51:40
[2026-06-05 17:51:40,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:51:40,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:51:41,053.053 INFO    ] No existing commands found in stream
[2026-06-05 17:51:46,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:51:46,068.068 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 17:51:48,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:51:48,260.260 INFO    ] Checking for system updates...
[2026-06-05 17:51:48,298.298 INFO    ] 200
[2026-06-05 17:51:48,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:51:48,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:51:48,358.358 INFO    ] No update needed
[2026-06-05 17:51:48,361.361 INFO    ] Checking for camera pi updates...
[2026-06-05 17:51:48,397.397 INFO    ] 200
[2026-06-05 17:51:48,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:51:48,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:51:48,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:51:48,497.497 INFO    ] No camera update needed
[2026-06-05 17:51:48,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:51:48,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:51:48,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:51:48,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:51:50,554.554 INFO    ] ================================================
[2026-06-05 17:51:50,569.569 INFO    ] Launching Daemon at Fri Jun  5 17:51:50 IST 2026
[2026-06-05 17:51:50,580.580 INFO    ] ================================================
[2026-06-05 17:51:51,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:51:51
[2026-06-05 17:51:51,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:51:52,019.019 INFO    ] Initializing speech engine...
[2026-06-05 17:51:52,028.028 INFO    ] 2026-06-05 17:51:52
[2026-06-05 17:51:52,314.314 INFO    ] 2026-06-05 17:51:52
[2026-06-05 17:51:52,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:51:52,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:51:52,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:51:52,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:51:52,700.700 INFO    ] time= 05/06/2026 17:51:52
[2026-06-05 17:51:52,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:51:52,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:51:52,884.884 INFO    ] No existing commands found in stream
[2026-06-05 17:51:57,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:51:57,912.912 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 17:51:59,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:51:59,949.949 INFO    ] Checking for system updates...
[2026-06-05 17:51:59,987.987 INFO    ] 200
[2026-06-05 17:51:59,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:00,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:00,052.052 INFO    ] No update needed
[2026-06-05 17:52:00,054.054 INFO    ] Checking for camera pi updates...
[2026-06-05 17:52:00,090.090 INFO    ] 200
[2026-06-05 17:52:00,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:00,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:52:00,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:00,189.189 INFO    ] No camera update needed
[2026-06-05 17:52:00,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:52:00,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:52:00,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:52:00,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:52:02,248.248 INFO    ] ================================================
[2026-06-05 17:52:02,271.271 INFO    ] Launching Daemon at Fri Jun  5 17:52:02 IST 2026
[2026-06-05 17:52:02,287.287 INFO    ] ================================================
[2026-06-05 17:52:03,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:52:03
[2026-06-05 17:52:03,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:52:03,919.919 INFO    ] Initializing speech engine...
[2026-06-05 17:52:03,932.932 INFO    ] 2026-06-05 17:52:03
[2026-06-05 17:52:04,205.205 INFO    ] 2026-06-05 17:52:04
[2026-06-05 17:52:04,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:52:04,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:52:04,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:52:04,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:52:04,597.597 INFO    ] time= 05/06/2026 17:52:04
[2026-06-05 17:52:04,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:52:04,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:52:04,769.769 INFO    ] No existing commands found in stream
[2026-06-05 17:52:09,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:52:09,803.803 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 17:52:13,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:52:13,858.858 INFO    ] Checking for system updates...
[2026-06-05 17:52:13,895.895 INFO    ] 200
[2026-06-05 17:52:13,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:13,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:13,958.958 INFO    ] No update needed
[2026-06-05 17:52:13,961.961 INFO    ] Checking for camera pi updates...
[2026-06-05 17:52:13,997.997 INFO    ] 200
[2026-06-05 17:52:13,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:14,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:52:14,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:14,192.192 INFO    ] No camera update needed
[2026-06-05 17:52:14,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:52:14,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:52:14,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:52:14,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:52:16,251.251 INFO    ] ================================================
[2026-06-05 17:52:16,269.269 INFO    ] Launching Daemon at Fri Jun  5 17:52:16 IST 2026
[2026-06-05 17:52:16,281.281 INFO    ] ================================================
[2026-06-05 17:52:16,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:52:16
[2026-06-05 17:52:17,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:52:18,024.024 INFO    ] Initializing speech engine...
[2026-06-05 17:52:18,033.033 INFO    ] 2026-06-05 17:52:18
[2026-06-05 17:52:18,339.339 INFO    ] 2026-06-05 17:52:18
[2026-06-05 17:52:18,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:52:18,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:52:18,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:52:18,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:52:18,903.903 INFO    ] time= 05/06/2026 17:52:18
[2026-06-05 17:52:18,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:52:18,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:52:19,064.064 INFO    ] No existing commands found in stream
[2026-06-05 17:52:24,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:52:24,084.084 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 17:52:27,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:52:27,350.350 INFO    ] Checking for system updates...
[2026-06-05 17:52:27,389.389 INFO    ] 200
[2026-06-05 17:52:27,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:27,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:27,453.453 INFO    ] No update needed
[2026-06-05 17:52:27,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 17:52:27,492.492 INFO    ] 200
[2026-06-05 17:52:27,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:27,540.540 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:52:27,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:27,571.571 INFO    ] No camera update needed
[2026-06-05 17:52:27,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:52:27,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:52:27,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:52:27,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:52:29,635.635 INFO    ] ================================================
[2026-06-05 17:52:29,652.652 INFO    ] Launching Daemon at Fri Jun  5 17:52:29 IST 2026
[2026-06-05 17:52:29,664.664 INFO    ] ================================================
[2026-06-05 17:52:30,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:52:30
[2026-06-05 17:52:30,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:52:31,111.111 INFO    ] Initializing speech engine...
[2026-06-05 17:52:31,119.119 INFO    ] 2026-06-05 17:52:31
[2026-06-05 17:52:31,423.423 INFO    ] 2026-06-05 17:52:31
[2026-06-05 17:52:31,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:52:32,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:52:32,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:52:32,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:52:32,276.276 INFO    ] time= 05/06/2026 17:52:32
[2026-06-05 17:52:32,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:52:32,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:52:32,498.498 INFO    ] No existing commands found in stream
[2026-06-05 17:52:37,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:52:37,529.529 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 17:52:38,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:52:38,145.145 INFO    ] Checking for system updates...
[2026-06-05 17:52:38,186.186 INFO    ] 200
[2026-06-05 17:52:38,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:38,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:38,247.247 INFO    ] No update needed
[2026-06-05 17:52:38,250.250 INFO    ] Checking for camera pi updates...
[2026-06-05 17:52:38,286.286 INFO    ] 200
[2026-06-05 17:52:38,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:38,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:52:38,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:38,391.391 INFO    ] No camera update needed
[2026-06-05 17:52:38,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:52:38,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:52:38,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:52:38,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:52:40,449.449 INFO    ] ================================================
[2026-06-05 17:52:40,465.465 INFO    ] Launching Daemon at Fri Jun  5 17:52:40 IST 2026
[2026-06-05 17:52:40,476.476 INFO    ] ================================================
[2026-06-05 17:52:41,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:52:41
[2026-06-05 17:52:41,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:52:42,006.006 INFO    ] Initializing speech engine...
[2026-06-05 17:52:42,015.015 INFO    ] 2026-06-05 17:52:42
[2026-06-05 17:52:42,271.271 INFO    ] 2026-06-05 17:52:42
[2026-06-05 17:52:42,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:52:42,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:52:42,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:52:42,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:52:42,764.764 INFO    ] time= 05/06/2026 17:52:42
[2026-06-05 17:52:42,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:52:42,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:52:42,996.996 INFO    ] No existing commands found in stream
[2026-06-05 17:52:48,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:52:48,017.017 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 17:52:51,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:52:51,978.978 INFO    ] Checking for system updates...
[2026-06-05 17:52:52,020.020 INFO    ] 200
[2026-06-05 17:52:52,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:52,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:52,085.085 INFO    ] No update needed
[2026-06-05 17:52:52,088.088 INFO    ] Checking for camera pi updates...
[2026-06-05 17:52:52,123.123 INFO    ] 200
[2026-06-05 17:52:52,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:52:52,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:52:52,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:52:52,217.217 INFO    ] No camera update needed
[2026-06-05 17:52:52,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:52:52,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:52:52,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:52:52,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:52:54,275.275 INFO    ] ================================================
[2026-06-05 17:52:54,291.291 INFO    ] Launching Daemon at Fri Jun  5 17:52:54 IST 2026
[2026-06-05 17:52:54,302.302 INFO    ] ================================================
[2026-06-05 17:52:54,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:52:54
[2026-06-05 17:52:55,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:52:55,814.814 INFO    ] Initializing speech engine...
[2026-06-05 17:52:55,823.823 INFO    ] 2026-06-05 17:52:55
[2026-06-05 17:52:56,081.081 INFO    ] 2026-06-05 17:52:56
[2026-06-05 17:52:56,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:52:56,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:52:56,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:52:56,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:52:56,587.587 INFO    ] time= 05/06/2026 17:52:56
[2026-06-05 17:52:56,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:52:56,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:52:56,790.790 INFO    ] No existing commands found in stream
[2026-06-05 17:53:01,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:53:01,816.816 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 17:53:03,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:53:03,707.707 INFO    ] Checking for system updates...
[2026-06-05 17:53:03,750.750 INFO    ] 200
[2026-06-05 17:53:03,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:03,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:53:03,810.810 INFO    ] No update needed
[2026-06-05 17:53:03,813.813 INFO    ] Checking for camera pi updates...
[2026-06-05 17:53:03,853.853 INFO    ] 200
[2026-06-05 17:53:03,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:03,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:53:03,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:53:03,950.950 INFO    ] No camera update needed
[2026-06-05 17:53:03,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:53:03,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:53:03,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:53:03,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:53:06,010.010 INFO    ] ================================================
[2026-06-05 17:53:06,027.027 INFO    ] Launching Daemon at Fri Jun  5 17:53:06 IST 2026
[2026-06-05 17:53:06,039.039 INFO    ] ================================================
[2026-06-05 17:53:06,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:53:06
[2026-06-05 17:53:07,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:53:07,493.493 INFO    ] Initializing speech engine...
[2026-06-05 17:53:07,501.501 INFO    ] 2026-06-05 17:53:07
[2026-06-05 17:53:07,801.801 INFO    ] 2026-06-05 17:53:07
[2026-06-05 17:53:07,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:53:08,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:53:08,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:53:08,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:53:08,162.162 INFO    ] time= 05/06/2026 17:53:08
[2026-06-05 17:53:08,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:53:08,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:53:08,315.315 INFO    ] No existing commands found in stream
[2026-06-05 17:53:13,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:53:13,328.328 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 17:53:17,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:53:17,060.060 INFO    ] Checking for system updates...
[2026-06-05 17:53:17,097.097 INFO    ] 200
[2026-06-05 17:53:17,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:17,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:53:17,162.162 INFO    ] No update needed
[2026-06-05 17:53:17,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 17:53:17,203.203 INFO    ] 200
[2026-06-05 17:53:17,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:17,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:53:17,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:53:17,297.297 INFO    ] No camera update needed
[2026-06-05 17:53:17,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:53:17,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:53:17,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:53:17,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:53:19,353.353 INFO    ] ================================================
[2026-06-05 17:53:19,370.370 INFO    ] Launching Daemon at Fri Jun  5 17:53:19 IST 2026
[2026-06-05 17:53:19,382.382 INFO    ] ================================================
[2026-06-05 17:53:19,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:53:19
[2026-06-05 17:53:20,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:53:20,894.894 INFO    ] Initializing speech engine...
[2026-06-05 17:53:20,901.901 INFO    ] 2026-06-05 17:53:20
[2026-06-05 17:53:21,154.154 INFO    ] 2026-06-05 17:53:21
[2026-06-05 17:53:21,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:53:21,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:53:21,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:53:21,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:53:21,571.571 INFO    ] time= 05/06/2026 17:53:21
[2026-06-05 17:53:21,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:53:21,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:53:21,749.749 INFO    ] No existing commands found in stream
[2026-06-05 17:53:26,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:53:26,778.778 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 17:53:29,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:53:29,790.790 INFO    ] Checking for system updates...
[2026-06-05 17:53:29,827.827 INFO    ] 200
[2026-06-05 17:53:29,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:29,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:53:29,887.887 INFO    ] No update needed
[2026-06-05 17:53:29,889.889 INFO    ] Checking for camera pi updates...
[2026-06-05 17:53:29,925.925 INFO    ] 200
[2026-06-05 17:53:29,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:29,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:53:30,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:53:30,016.016 INFO    ] No camera update needed
[2026-06-05 17:53:30,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:53:30,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:53:30,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:53:30,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:53:32,075.075 INFO    ] ================================================
[2026-06-05 17:53:32,095.095 INFO    ] Launching Daemon at Fri Jun  5 17:53:32 IST 2026
[2026-06-05 17:53:32,109.109 INFO    ] ================================================
[2026-06-05 17:53:32,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:53:32
[2026-06-05 17:53:33,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:53:33,684.684 INFO    ] Initializing speech engine...
[2026-06-05 17:53:33,698.698 INFO    ] 2026-06-05 17:53:33
[2026-06-05 17:53:33,969.969 INFO    ] 2026-06-05 17:53:33
[2026-06-05 17:53:34,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:53:34,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:53:34,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:53:34,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:53:34,473.473 INFO    ] time= 05/06/2026 17:53:34
[2026-06-05 17:53:34,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:53:34,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:53:34,623.623 INFO    ] No existing commands found in stream
[2026-06-05 17:53:39,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:53:39,663.663 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 17:53:42,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:53:42,781.781 INFO    ] Checking for system updates...
[2026-06-05 17:53:42,819.819 INFO    ] 200
[2026-06-05 17:53:42,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:42,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:53:42,888.888 INFO    ] No update needed
[2026-06-05 17:53:42,891.891 INFO    ] Checking for camera pi updates...
[2026-06-05 17:53:42,927.927 INFO    ] 200
[2026-06-05 17:53:42,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:42,975.975 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:53:43,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:53:43,021.021 INFO    ] No camera update needed
[2026-06-05 17:53:43,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:53:43,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:53:43,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:53:43,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:53:45,083.083 INFO    ] ================================================
[2026-06-05 17:53:45,099.099 INFO    ] Launching Daemon at Fri Jun  5 17:53:45 IST 2026
[2026-06-05 17:53:45,110.110 INFO    ] ================================================
[2026-06-05 17:53:45,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:53:45
[2026-06-05 17:53:46,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:53:46,762.762 INFO    ] Initializing speech engine...
[2026-06-05 17:53:46,772.772 INFO    ] 2026-06-05 17:53:46
[2026-06-05 17:53:47,051.051 INFO    ] 2026-06-05 17:53:47
[2026-06-05 17:53:47,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:53:47,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:53:47,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:53:47,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:53:47,537.537 INFO    ] time= 05/06/2026 17:53:47
[2026-06-05 17:53:47,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:53:47,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:53:47,687.687 INFO    ] No existing commands found in stream
[2026-06-05 17:53:52,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:53:52,704.704 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 17:53:53,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:53:53,139.139 INFO    ] Checking for system updates...
[2026-06-05 17:53:53,178.178 INFO    ] 200
[2026-06-05 17:53:53,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:53,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:53:53,240.240 INFO    ] No update needed
[2026-06-05 17:53:53,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 17:53:53,280.280 INFO    ] 200
[2026-06-05 17:53:53,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:53:53,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:53:53,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:53:53,400.400 INFO    ] No camera update needed
[2026-06-05 17:53:53,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:53:53,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:53:53,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:53:53,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:53:55,462.462 INFO    ] ================================================
[2026-06-05 17:53:55,478.478 INFO    ] Launching Daemon at Fri Jun  5 17:53:55 IST 2026
[2026-06-05 17:53:55,489.489 INFO    ] ================================================
[2026-06-05 17:53:56,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:53:56
[2026-06-05 17:53:56,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:53:56,927.927 INFO    ] Initializing speech engine...
[2026-06-05 17:53:56,950.950 INFO    ] 2026-06-05 17:53:56
[2026-06-05 17:53:57,213.213 INFO    ] 2026-06-05 17:53:57
[2026-06-05 17:53:57,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:53:57,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:53:57,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:53:57,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:53:57,599.599 INFO    ] time= 05/06/2026 17:53:57
[2026-06-05 17:53:57,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:53:57,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:53:57,760.760 INFO    ] No existing commands found in stream
[2026-06-05 17:54:02,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:54:02,795.795 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 17:54:03,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:54:03,715.715 INFO    ] Checking for system updates...
[2026-06-05 17:54:03,752.752 INFO    ] 200
[2026-06-05 17:54:03,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:54:03,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:54:03,813.813 INFO    ] No update needed
[2026-06-05 17:54:03,816.816 INFO    ] Checking for camera pi updates...
[2026-06-05 17:54:03,851.851 INFO    ] 200
[2026-06-05 17:54:03,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:54:03,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:54:03,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:54:03,948.948 INFO    ] No camera update needed
[2026-06-05 17:54:03,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:54:03,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:54:03,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:54:03,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:54:06,006.006 INFO    ] ================================================
[2026-06-05 17:54:06,021.021 INFO    ] Launching Daemon at Fri Jun  5 17:54:06 IST 2026
[2026-06-05 17:54:06,032.032 INFO    ] ================================================
[2026-06-05 17:54:06,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:54:06
[2026-06-05 17:54:07,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:54:07,530.530 INFO    ] Initializing speech engine...
[2026-06-05 17:54:07,541.541 INFO    ] 2026-06-05 17:54:07
[2026-06-05 17:54:07,803.803 INFO    ] 2026-06-05 17:54:07
[2026-06-05 17:54:07,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:54:08,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:54:08,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:54:08,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:54:08,163.163 INFO    ] time= 05/06/2026 17:54:08
[2026-06-05 17:54:08,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:54:08,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:54:08,361.361 INFO    ] No existing commands found in stream
[2026-06-05 17:54:13,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:54:13,407.407 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 17:54:16,655.655 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-05 17:54:16,680.680 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM07202501 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-05 17:54:16,689.689 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM07202501 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-05 17:54:16,698.698 INFO    ] None
[2026-06-05 17:54:16,700.700 INFO    ] Checking for system updates...
[2026-06-05 17:54:16,742.742 INFO    ] 200
[2026-06-05 17:54:16,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:54:16,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:54:16,800.800 INFO    ] No update needed
[2026-06-05 17:54:16,802.802 INFO    ] Checking for camera pi updates...
[2026-06-05 17:54:16,837.837 INFO    ] 200
[2026-06-05 17:54:16,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:54:16,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:54:17,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:54:17,037.037 INFO    ] No camera update needed
[2026-06-05 17:54:17,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:54:17,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:54:17,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:54:17,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:54:19,092.092 INFO    ] ================================================
[2026-06-05 17:54:19,108.108 INFO    ] Launching Daemon at Fri Jun  5 17:54:19 IST 2026
[2026-06-05 17:54:19,119.119 INFO    ] ================================================
[2026-06-05 17:54:19,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:54:19
[2026-06-05 17:54:20,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:54:20,574.574 INFO    ] Initializing speech engine...
[2026-06-05 17:54:20,590.590 INFO    ] 2026-06-05 17:54:20
[2026-06-05 17:54:20,863.863 INFO    ] 2026-06-05 17:54:20
[2026-06-05 17:54:20,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:54:20,959.959 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 17:54:21,131.131 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 17:54:21,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:54:21,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:54:21,250.250 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 17:54:21,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:54:23,324.324 INFO    ] ================================================
[2026-06-05 17:54:23,339.339 INFO    ] Launching Daemon at Fri Jun  5 17:54:23 IST 2026
[2026-06-05 17:54:23,350.350 INFO    ] ================================================
[2026-06-05 17:54:23,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:54:23
[2026-06-05 17:54:24,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:54:24,777.777 INFO    ] Initializing speech engine...
[2026-06-05 17:54:24,799.799 INFO    ] 2026-06-05 17:54:24
[2026-06-05 17:54:25,088.088 INFO    ] 2026-06-05 17:54:25
[2026-06-05 17:54:25,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:54:28,317.317 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 113 connecting to live.vendingbuddy.in:23294. No route to host.
[2026-06-05 17:54:28,344.344 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 17:54:28,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:54:28,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:54:28,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:54:30,398.398 INFO    ] ================================================
[2026-06-05 17:54:30,420.420 INFO    ] Launching Daemon at Fri Jun  5 17:54:30 IST 2026
[2026-06-05 17:54:30,435.435 INFO    ] ================================================
[2026-06-05 17:54:31,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:54:31
[2026-06-05 17:54:31,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:54:32,130.130 INFO    ] Initializing speech engine...
[2026-06-05 17:54:32,143.143 INFO    ] 2026-06-05 17:54:32
[2026-06-05 17:54:32,454.454 INFO    ] 2026-06-05 17:54:32
[2026-06-05 17:54:32,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:54:32,598.598 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 17:54:32,778.778 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 17:54:32,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:54:32,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:54:32,862.862 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 17:54:32,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:54:34,970.970 INFO    ] ================================================
[2026-06-05 17:54:34,986.986 INFO    ] Launching Daemon at Fri Jun  5 17:54:34 IST 2026
[2026-06-05 17:54:35,996.996 INFO    ] ================================================
[2026-06-05 17:54:35,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:54:35
[2026-06-05 17:54:36,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:54:36,654.654 INFO    ] Initializing speech engine...
[2026-06-05 17:54:36,668.668 INFO    ] 2026-06-05 17:54:36
[2026-06-05 17:54:36,951.951 INFO    ] 2026-06-05 17:54:36
[2026-06-05 17:54:36,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:54:37,092.092 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 17:54:37,254.254 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 17:54:37,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:54:37,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:54:37,330.330 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 17:54:37,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:54:39,398.398 INFO    ] ================================================
[2026-06-05 17:54:39,413.413 INFO    ] Launching Daemon at Fri Jun  5 17:54:39 IST 2026
[2026-06-05 17:54:39,423.423 INFO    ] ================================================
[2026-06-05 17:54:40,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:54:40
[2026-06-05 17:54:40,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:54:40,888.888 INFO    ] Initializing speech engine...
[2026-06-05 17:54:40,894.894 INFO    ] 2026-06-05 17:54:40
[2026-06-05 17:54:41,154.154 INFO    ] 2026-06-05 17:54:41
[2026-06-05 17:54:41,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:54:46,267.267 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-05 17:54:46,294.294 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 17:54:46,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:54:46,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:54:46,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:54:48,348.348 INFO    ] ================================================
[2026-06-05 17:54:48,363.363 INFO    ] Launching Daemon at Fri Jun  5 17:54:48 IST 2026
[2026-06-05 17:54:48,374.374 INFO    ] ================================================
[2026-06-05 17:54:48,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:54:48
[2026-06-05 17:54:49,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:54:49,826.826 INFO    ] Initializing speech engine...
[2026-06-05 17:54:49,835.835 INFO    ] 2026-06-05 17:54:49
[2026-06-05 17:54:50,081.081 INFO    ] 2026-06-05 17:54:50
[2026-06-05 17:54:50,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:54:50,239.239 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 17:54:50,335.335 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 17:54:50,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:54:50,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:54:50,443.443 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 17:54:50,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:54:52,521.521 INFO    ] ================================================
[2026-06-05 17:54:52,537.537 INFO    ] Launching Daemon at Fri Jun  5 17:54:52 IST 2026
[2026-06-05 17:54:52,547.547 INFO    ] ================================================
[2026-06-05 17:54:53,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:54:53
[2026-06-05 17:54:53,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:54:53,993.993 INFO    ] Initializing speech engine...
[2026-06-05 17:54:54,002.002 INFO    ] 2026-06-05 17:54:53
[2026-06-05 17:54:54,253.253 INFO    ] 2026-06-05 17:54:54
[2026-06-05 17:54:54,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:54:54,414.414 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-05 17:54:54,522.522 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 17:54:54,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:54:54,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:54:54,627.627 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-05 17:54:54,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:54:56,714.714 INFO    ] ================================================
[2026-06-05 17:54:56,729.729 INFO    ] Launching Daemon at Fri Jun  5 17:54:56 IST 2026
[2026-06-05 17:54:56,740.740 INFO    ] ================================================
[2026-06-05 17:54:57,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:54:57
[2026-06-05 17:54:58,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:54:58,348.348 INFO    ] Initializing speech engine...
[2026-06-05 17:54:58,362.362 INFO    ] 2026-06-05 17:54:58
[2026-06-05 17:54:58,683.683 INFO    ] 2026-06-05 17:54:58
[2026-06-05 17:54:58,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:55:03,828.828 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-05 17:55:03,858.858 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-05 17:55:03,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:55:03,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:55:03,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:55:05,915.915 INFO    ] ================================================
[2026-06-05 17:55:05,930.930 INFO    ] Launching Daemon at Fri Jun  5 17:55:05 IST 2026
[2026-06-05 17:55:05,941.941 INFO    ] ================================================
[2026-06-05 17:55:06,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:55:06
[2026-06-05 17:55:07,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:55:07,634.634 INFO    ] Initializing speech engine...
[2026-06-05 17:55:07,642.642 INFO    ] 2026-06-05 17:55:07
[2026-06-05 17:55:07,924.924 INFO    ] 2026-06-05 17:55:07
[2026-06-05 17:55:07,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:55:08,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:55:08,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:55:08,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:55:08,408.408 INFO    ] time= 05/06/2026 17:55:08
[2026-06-05 17:55:08,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:55:08,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:55:08,559.559 INFO    ] No existing commands found in stream
[2026-06-05 17:55:13,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:55:13,583.583 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 17:55:17,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:55:17,168.168 INFO    ] Checking for system updates...
[2026-06-05 17:55:17,211.211 INFO    ] 200
[2026-06-05 17:55:17,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:55:17,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:55:17,273.273 INFO    ] No update needed
[2026-06-05 17:55:17,276.276 INFO    ] Checking for camera pi updates...
[2026-06-05 17:55:17,310.310 INFO    ] 200
[2026-06-05 17:55:17,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:55:17,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:55:17,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:55:17,414.414 INFO    ] No camera update needed
[2026-06-05 17:55:17,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:55:17,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:55:17,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:55:17,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:55:19,475.475 INFO    ] ================================================
[2026-06-05 17:55:19,491.491 INFO    ] Launching Daemon at Fri Jun  5 17:55:19 IST 2026
[2026-06-05 17:55:19,502.502 INFO    ] ================================================
[2026-06-05 17:55:20,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:55:20
[2026-06-05 17:55:20,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:55:21,008.008 INFO    ] Initializing speech engine...
[2026-06-05 17:55:21,018.018 INFO    ] 2026-06-05 17:55:21
[2026-06-05 17:55:21,267.267 INFO    ] 2026-06-05 17:55:21
[2026-06-05 17:55:21,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:55:21,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:55:21,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:55:21,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:55:21,652.652 INFO    ] time= 05/06/2026 17:55:21
[2026-06-05 17:55:21,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:55:21,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:55:21,731.731 INFO    ] No existing commands found in stream
[2026-06-05 17:55:26,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:55:26,746.746 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 17:55:28,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:55:28,696.696 INFO    ] Checking for system updates...
[2026-06-05 17:55:28,736.736 INFO    ] 200
[2026-06-05 17:55:28,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:55:28,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:55:28,809.809 INFO    ] No update needed
[2026-06-05 17:55:28,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 17:55:28,850.850 INFO    ] 200
[2026-06-05 17:55:28,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:55:28,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:55:28,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:55:28,940.940 INFO    ] No camera update needed
[2026-06-05 17:55:28,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:55:28,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:55:28,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:55:28,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:55:31,998.998 INFO    ] ================================================
[2026-06-05 17:55:31,013.013 INFO    ] Launching Daemon at Fri Jun  5 17:55:31 IST 2026
[2026-06-05 17:55:31,024.024 INFO    ] ================================================
[2026-06-05 17:55:31,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:55:31
[2026-06-05 17:55:32,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:55:32,781.781 INFO    ] Initializing speech engine...
[2026-06-05 17:55:32,796.796 INFO    ] 2026-06-05 17:55:32
[2026-06-05 17:55:33,113.113 INFO    ] 2026-06-05 17:55:33
[2026-06-05 17:55:33,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:55:33,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:55:33,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:55:33,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:55:33,637.637 INFO    ] time= 05/06/2026 17:55:33
[2026-06-05 17:55:33,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:55:33,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:55:33,791.791 INFO    ] No existing commands found in stream
[2026-06-05 17:55:38,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:55:38,811.811 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 17:55:43,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:55:43,192.192 INFO    ] Checking for system updates...
[2026-06-05 17:55:43,228.228 INFO    ] 200
[2026-06-05 17:55:43,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:55:43,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:55:43,293.293 INFO    ] No update needed
[2026-06-05 17:55:43,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 17:55:43,335.335 INFO    ] 200
[2026-06-05 17:55:43,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:55:43,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:55:43,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:55:43,424.424 INFO    ] No camera update needed
[2026-06-05 17:55:43,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:55:43,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:55:43,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:55:43,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:55:45,486.486 INFO    ] ================================================
[2026-06-05 17:55:45,502.502 INFO    ] Launching Daemon at Fri Jun  5 17:55:45 IST 2026
[2026-06-05 17:55:45,514.514 INFO    ] ================================================
[2026-06-05 17:55:46,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:55:46
[2026-06-05 17:55:46,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:55:46,927.927 INFO    ] Initializing speech engine...
[2026-06-05 17:55:46,939.939 INFO    ] 2026-06-05 17:55:46
[2026-06-05 17:55:47,205.205 INFO    ] 2026-06-05 17:55:47
[2026-06-05 17:55:47,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:55:47,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:55:47,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:55:47,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:55:47,936.936 INFO    ] time= 05/06/2026 17:55:47
[2026-06-05 17:55:48,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:55:48,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:55:48,136.136 INFO    ] No existing commands found in stream
[2026-06-05 17:55:53,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:55:53,169.169 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 17:55:57,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:55:57,387.387 INFO    ] Checking for system updates...
[2026-06-05 17:55:57,425.425 INFO    ] 200
[2026-06-05 17:55:57,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:55:57,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:55:57,485.485 INFO    ] No update needed
[2026-06-05 17:55:57,488.488 INFO    ] Checking for camera pi updates...
[2026-06-05 17:55:57,525.525 INFO    ] 200
[2026-06-05 17:55:57,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:55:57,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:55:57,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:55:57,616.616 INFO    ] No camera update needed
[2026-06-05 17:55:57,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:55:57,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:55:57,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:55:57,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:55:59,673.673 INFO    ] ================================================
[2026-06-05 17:55:59,689.689 INFO    ] Launching Daemon at Fri Jun  5 17:55:59 IST 2026
[2026-06-05 17:55:59,700.700 INFO    ] ================================================
[2026-06-05 17:56:00,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:56:00
[2026-06-05 17:56:00,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:56:01,105.105 INFO    ] Initializing speech engine...
[2026-06-05 17:56:01,119.119 INFO    ] 2026-06-05 17:56:01
[2026-06-05 17:56:01,393.393 INFO    ] 2026-06-05 17:56:01
[2026-06-05 17:56:01,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:56:01,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:56:01,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:56:01,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:56:01,972.972 INFO    ] time= 05/06/2026 17:56:01
[2026-06-05 17:56:01,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:56:02,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:56:02,071.071 INFO    ] No existing commands found in stream
[2026-06-05 17:56:07,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:56:07,107.107 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 17:56:09,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:56:09,501.501 INFO    ] Checking for system updates...
[2026-06-05 17:56:09,538.538 INFO    ] 200
[2026-06-05 17:56:09,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:09,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:56:09,605.605 INFO    ] No update needed
[2026-06-05 17:56:09,607.607 INFO    ] Checking for camera pi updates...
[2026-06-05 17:56:09,642.642 INFO    ] 200
[2026-06-05 17:56:09,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:09,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:56:09,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:56:09,744.744 INFO    ] No camera update needed
[2026-06-05 17:56:09,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:56:09,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:56:09,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:56:09,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:56:11,805.805 INFO    ] ================================================
[2026-06-05 17:56:11,820.820 INFO    ] Launching Daemon at Fri Jun  5 17:56:11 IST 2026
[2026-06-05 17:56:11,831.831 INFO    ] ================================================
[2026-06-05 17:56:12,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:56:12
[2026-06-05 17:56:13,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:56:13,488.488 INFO    ] Initializing speech engine...
[2026-06-05 17:56:13,493.493 INFO    ] 2026-06-05 17:56:13
[2026-06-05 17:56:13,763.763 INFO    ] 2026-06-05 17:56:13
[2026-06-05 17:56:13,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:56:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:56:14,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:56:14,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:56:14,178.178 INFO    ] time= 05/06/2026 17:56:14
[2026-06-05 17:56:14,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:56:14,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:56:14,262.262 INFO    ] No existing commands found in stream
[2026-06-05 17:56:19,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:56:19,280.280 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 17:56:22,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:56:22,770.770 INFO    ] Checking for system updates...
[2026-06-05 17:56:22,806.806 INFO    ] 200
[2026-06-05 17:56:22,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:22,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:56:22,863.863 INFO    ] No update needed
[2026-06-05 17:56:22,866.866 INFO    ] Checking for camera pi updates...
[2026-06-05 17:56:22,900.900 INFO    ] 200
[2026-06-05 17:56:22,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:22,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:56:22,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:56:23,001.001 INFO    ] No camera update needed
[2026-06-05 17:56:23,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:56:23,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:56:23,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:56:23,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:56:25,057.057 INFO    ] ================================================
[2026-06-05 17:56:25,073.073 INFO    ] Launching Daemon at Fri Jun  5 17:56:25 IST 2026
[2026-06-05 17:56:25,083.083 INFO    ] ================================================
[2026-06-05 17:56:25,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:56:25
[2026-06-05 17:56:26,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:56:26,533.533 INFO    ] Initializing speech engine...
[2026-06-05 17:56:26,541.541 INFO    ] 2026-06-05 17:56:26
[2026-06-05 17:56:26,841.841 INFO    ] 2026-06-05 17:56:26
[2026-06-05 17:56:26,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:56:27,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:56:27,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:56:27,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:56:27,199.199 INFO    ] time= 05/06/2026 17:56:27
[2026-06-05 17:56:27,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:56:27,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:56:27,281.281 INFO    ] No existing commands found in stream
[2026-06-05 17:56:32,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:56:32,291.291 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-05 17:56:33,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:56:33,422.422 INFO    ] Checking for system updates...
[2026-06-05 17:56:33,458.458 INFO    ] 200
[2026-06-05 17:56:33,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:33,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:56:33,517.517 INFO    ] No update needed
[2026-06-05 17:56:33,520.520 INFO    ] Checking for camera pi updates...
[2026-06-05 17:56:33,554.554 INFO    ] 200
[2026-06-05 17:56:33,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:33,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:56:33,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:56:33,647.647 INFO    ] No camera update needed
[2026-06-05 17:56:33,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:56:33,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:56:33,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:56:33,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:56:35,707.707 INFO    ] ================================================
[2026-06-05 17:56:35,722.722 INFO    ] Launching Daemon at Fri Jun  5 17:56:35 IST 2026
[2026-06-05 17:56:35,733.733 INFO    ] ================================================
[2026-06-05 17:56:36,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:56:36
[2026-06-05 17:56:36,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:56:37,169.169 INFO    ] Initializing speech engine...
[2026-06-05 17:56:37,191.191 INFO    ] 2026-06-05 17:56:37
[2026-06-05 17:56:37,464.464 INFO    ] 2026-06-05 17:56:37
[2026-06-05 17:56:37,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:56:37,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:56:37,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:56:37,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:56:37,890.890 INFO    ] time= 05/06/2026 17:56:37
[2026-06-05 17:56:37,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:56:37,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:56:38,039.039 INFO    ] No existing commands found in stream
[2026-06-05 17:56:43,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:56:43,067.067 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 17:56:43,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:56:43,986.986 INFO    ] Checking for system updates...
[2026-06-05 17:56:44,027.027 INFO    ] 200
[2026-06-05 17:56:44,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:44,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:56:44,085.085 INFO    ] No update needed
[2026-06-05 17:56:44,088.088 INFO    ] Checking for camera pi updates...
[2026-06-05 17:56:44,126.126 INFO    ] 200
[2026-06-05 17:56:44,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:44,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:56:44,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:56:44,217.217 INFO    ] No camera update needed
[2026-06-05 17:56:44,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:56:44,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:56:44,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:56:44,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:56:46,273.273 INFO    ] ================================================
[2026-06-05 17:56:46,289.289 INFO    ] Launching Daemon at Fri Jun  5 17:56:46 IST 2026
[2026-06-05 17:56:46,300.300 INFO    ] ================================================
[2026-06-05 17:56:46,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:56:46
[2026-06-05 17:56:47,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:56:47,737.737 INFO    ] Initializing speech engine...
[2026-06-05 17:56:47,743.743 INFO    ] 2026-06-05 17:56:47
[2026-06-05 17:56:48,049.049 INFO    ] 2026-06-05 17:56:48
[2026-06-05 17:56:48,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:56:48,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:56:48,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:56:48,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:56:48,994.994 INFO    ] time= 05/06/2026 17:56:48
[2026-06-05 17:56:49,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:56:49,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:56:49,230.230 INFO    ] No existing commands found in stream
[2026-06-05 17:56:54,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:56:54,259.259 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 17:56:57,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:56:57,732.732 INFO    ] Checking for system updates...
[2026-06-05 17:56:57,768.768 INFO    ] 200
[2026-06-05 17:56:57,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:57,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:56:57,827.827 INFO    ] No update needed
[2026-06-05 17:56:57,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 17:56:57,864.864 INFO    ] 200
[2026-06-05 17:56:57,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:56:57,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:56:57,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:56:57,962.962 INFO    ] No camera update needed
[2026-06-05 17:56:57,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:56:57,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:56:57,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:56:57,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:57:00,017.017 INFO    ] ================================================
[2026-06-05 17:57:00,034.034 INFO    ] Launching Daemon at Fri Jun  5 17:57:00 IST 2026
[2026-06-05 17:57:00,045.045 INFO    ] ================================================
[2026-06-05 17:57:00,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:57:00
[2026-06-05 17:57:01,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:57:01,694.694 INFO    ] Initializing speech engine...
[2026-06-05 17:57:01,705.705 INFO    ] 2026-06-05 17:57:01
[2026-06-05 17:57:02,061.061 INFO    ] 2026-06-05 17:57:02
[2026-06-05 17:57:02,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:57:02,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:57:02,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:57:02,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:57:02,520.520 INFO    ] time= 05/06/2026 17:57:02
[2026-06-05 17:57:02,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:57:02,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:57:02,725.725 INFO    ] No existing commands found in stream
[2026-06-05 17:57:07,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:57:07,740.740 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 17:57:09,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 17:57:09,289.289 INFO    ] Checking for system updates...
[2026-06-05 17:57:09,325.325 INFO    ] 200
[2026-06-05 17:57:09,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:57:09,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:57:09,382.382 INFO    ] No update needed
[2026-06-05 17:57:09,385.385 INFO    ] Checking for camera pi updates...
[2026-06-05 17:57:09,419.419 INFO    ] 200
[2026-06-05 17:57:09,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:57:09,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:57:09,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:57:09,512.512 INFO    ] No camera update needed
[2026-06-05 17:57:09,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:57:09,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:57:09,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:57:09,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:57:11,568.568 INFO    ] ================================================
[2026-06-05 17:57:11,583.583 INFO    ] Launching Daemon at Fri Jun  5 17:57:11 IST 2026
[2026-06-05 17:57:11,594.594 INFO    ] ================================================
[2026-06-05 17:57:12,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:57:12
[2026-06-05 17:57:12,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:57:13,142.142 INFO    ] Initializing speech engine...
[2026-06-05 17:57:13,165.165 INFO    ] 2026-06-05 17:57:13
[2026-06-05 17:57:13,420.420 INFO    ] 2026-06-05 17:57:13
[2026-06-05 17:57:13,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:57:13,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:57:13,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:57:13,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:57:13,797.797 INFO    ] time= 05/06/2026 17:57:13
[2026-06-05 17:57:13,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:57:13,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:57:13,989.989 INFO    ] No existing commands found in stream
[2026-06-05 17:57:19,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:57:19,012.012 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 17:57:23,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:57:23,009.009 INFO    ] Checking for system updates...
[2026-06-05 17:57:23,045.045 INFO    ] 200
[2026-06-05 17:57:23,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:57:23,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:57:23,111.111 INFO    ] No update needed
[2026-06-05 17:57:23,114.114 INFO    ] Checking for camera pi updates...
[2026-06-05 17:57:23,147.147 INFO    ] 200
[2026-06-05 17:57:23,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:57:23,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:57:23,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:57:23,347.347 INFO    ] No camera update needed
[2026-06-05 17:57:23,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:57:23,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:57:23,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:57:23,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:57:25,404.404 INFO    ] ================================================
[2026-06-05 17:57:25,419.419 INFO    ] Launching Daemon at Fri Jun  5 17:57:25 IST 2026
[2026-06-05 17:57:25,430.430 INFO    ] ================================================
[2026-06-05 17:57:26,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:57:26
[2026-06-05 17:57:26,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:57:26,884.884 INFO    ] Initializing speech engine...
[2026-06-05 17:57:26,898.898 INFO    ] 2026-06-05 17:57:26
[2026-06-05 17:57:27,167.167 INFO    ] 2026-06-05 17:57:27
[2026-06-05 17:57:27,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:57:27,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:57:27,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:57:27,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:57:27,644.644 INFO    ] time= 05/06/2026 17:57:27
[2026-06-05 17:57:27,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:57:27,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:57:27,850.850 INFO    ] No existing commands found in stream
[2026-06-05 17:57:32,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:57:32,880.880 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 17:57:34,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:57:34,868.868 INFO    ] Checking for system updates...
[2026-06-05 17:57:34,904.904 INFO    ] 200
[2026-06-05 17:57:34,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:57:34,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:57:34,961.961 INFO    ] No update needed
[2026-06-05 17:57:34,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 17:57:34,997.997 INFO    ] 200
[2026-06-05 17:57:35,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:57:35,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:57:35,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:57:35,102.102 INFO    ] No camera update needed
[2026-06-05 17:57:35,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:57:35,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:57:35,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:57:35,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:57:37,162.162 INFO    ] ================================================
[2026-06-05 17:57:37,177.177 INFO    ] Launching Daemon at Fri Jun  5 17:57:37 IST 2026
[2026-06-05 17:57:37,189.189 INFO    ] ================================================
[2026-06-05 17:57:37,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:57:37
[2026-06-05 17:57:38,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:57:38,639.639 INFO    ] Initializing speech engine...
[2026-06-05 17:57:38,648.648 INFO    ] 2026-06-05 17:57:38
[2026-06-05 17:57:38,944.944 INFO    ] 2026-06-05 17:57:38
[2026-06-05 17:57:38,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:57:39,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:57:39,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:57:39,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:57:39,303.303 INFO    ] time= 05/06/2026 17:57:39
[2026-06-05 17:57:39,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:57:39,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:57:39,382.382 INFO    ] No existing commands found in stream
[2026-06-05 17:57:44,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:57:44,396.396 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 17:57:49,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:57:49,741.741 INFO    ] Checking for system updates...
[2026-06-05 17:57:49,778.778 INFO    ] 200
[2026-06-05 17:57:49,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:57:49,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:57:49,837.837 INFO    ] No update needed
[2026-06-05 17:57:49,839.839 INFO    ] Checking for camera pi updates...
[2026-06-05 17:57:49,873.873 INFO    ] 200
[2026-06-05 17:57:49,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:57:49,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:57:49,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:57:49,971.971 INFO    ] No camera update needed
[2026-06-05 17:57:49,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:57:49,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:57:49,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:57:49,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:57:52,032.032 INFO    ] ================================================
[2026-06-05 17:57:52,048.048 INFO    ] Launching Daemon at Fri Jun  5 17:57:52 IST 2026
[2026-06-05 17:57:52,059.059 INFO    ] ================================================
[2026-06-05 17:57:52,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:57:52
[2026-06-05 17:57:53,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:57:53,468.468 INFO    ] Initializing speech engine...
[2026-06-05 17:57:53,475.475 INFO    ] 2026-06-05 17:57:53
[2026-06-05 17:57:53,770.770 INFO    ] 2026-06-05 17:57:53
[2026-06-05 17:57:53,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:57:54,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:57:54,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:57:54,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:57:54,186.186 INFO    ] time= 05/06/2026 17:57:54
[2026-06-05 17:57:54,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:57:54,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:57:54,278.278 INFO    ] No existing commands found in stream
[2026-06-05 17:57:59,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:57:59,316.316 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 17:58:02,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 17:58:02,310.310 INFO    ] Checking for system updates...
[2026-06-05 17:58:02,362.362 INFO    ] 200
[2026-06-05 17:58:02,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:02,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:58:02,439.439 INFO    ] No update needed
[2026-06-05 17:58:02,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 17:58:02,489.489 INFO    ] 200
[2026-06-05 17:58:02,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:02,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:58:02,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:58:02,601.601 INFO    ] No camera update needed
[2026-06-05 17:58:02,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:58:02,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:58:02,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:58:02,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:58:04,661.661 INFO    ] ================================================
[2026-06-05 17:58:04,677.677 INFO    ] Launching Daemon at Fri Jun  5 17:58:04 IST 2026
[2026-06-05 17:58:04,689.689 INFO    ] ================================================
[2026-06-05 17:58:05,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:58:05
[2026-06-05 17:58:05,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:58:06,123.123 INFO    ] Initializing speech engine...
[2026-06-05 17:58:06,139.139 INFO    ] 2026-06-05 17:58:06
[2026-06-05 17:58:06,441.441 INFO    ] 2026-06-05 17:58:06
[2026-06-05 17:58:06,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:58:06,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:58:06,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:58:06,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:58:06,845.845 INFO    ] time= 05/06/2026 17:58:06
[2026-06-05 17:58:06,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:58:06,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:58:06,959.959 INFO    ] No existing commands found in stream
[2026-06-05 17:58:11,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:58:11,982.982 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 17:58:14,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:58:14,592.592 INFO    ] Checking for system updates...
[2026-06-05 17:58:14,628.628 INFO    ] 200
[2026-06-05 17:58:14,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:14,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:58:14,686.686 INFO    ] No update needed
[2026-06-05 17:58:14,689.689 INFO    ] Checking for camera pi updates...
[2026-06-05 17:58:14,723.723 INFO    ] 200
[2026-06-05 17:58:14,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:14,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:58:14,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:58:14,816.816 INFO    ] No camera update needed
[2026-06-05 17:58:14,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:58:14,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:58:14,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:58:14,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:58:16,873.873 INFO    ] ================================================
[2026-06-05 17:58:16,889.889 INFO    ] Launching Daemon at Fri Jun  5 17:58:16 IST 2026
[2026-06-05 17:58:16,900.900 INFO    ] ================================================
[2026-06-05 17:58:17,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:58:17
[2026-06-05 17:58:18,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:58:18,479.479 INFO    ] Initializing speech engine...
[2026-06-05 17:58:18,489.489 INFO    ] 2026-06-05 17:58:18
[2026-06-05 17:58:18,735.735 INFO    ] 2026-06-05 17:58:18
[2026-06-05 17:58:18,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:58:20,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:58:20,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:58:20,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:58:20,455.455 INFO    ] time= 05/06/2026 17:58:20
[2026-06-05 17:58:20,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:58:20,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:58:20,621.621 INFO    ] No existing commands found in stream
[2026-06-05 17:58:25,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:58:25,649.649 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 17:58:27,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:58:27,619.619 INFO    ] Checking for system updates...
[2026-06-05 17:58:27,663.663 INFO    ] 200
[2026-06-05 17:58:27,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:27,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:58:27,722.722 INFO    ] No update needed
[2026-06-05 17:58:27,724.724 INFO    ] Checking for camera pi updates...
[2026-06-05 17:58:27,758.758 INFO    ] 200
[2026-06-05 17:58:27,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:27,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:58:27,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:58:27,850.850 INFO    ] No camera update needed
[2026-06-05 17:58:27,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:58:27,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:58:27,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:58:27,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:58:29,912.912 INFO    ] ================================================
[2026-06-05 17:58:29,928.928 INFO    ] Launching Daemon at Fri Jun  5 17:58:29 IST 2026
[2026-06-05 17:58:29,939.939 INFO    ] ================================================
[2026-06-05 17:58:30,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:58:30
[2026-06-05 17:58:31,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:58:31,347.347 INFO    ] Initializing speech engine...
[2026-06-05 17:58:31,355.355 INFO    ] 2026-06-05 17:58:31
[2026-06-05 17:58:31,627.627 INFO    ] 2026-06-05 17:58:31
[2026-06-05 17:58:31,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:58:31,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:58:31,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:58:32,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:58:32,028.028 INFO    ] time= 05/06/2026 17:58:32
[2026-06-05 17:58:32,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:58:32,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:58:32,235.235 INFO    ] No existing commands found in stream
[2026-06-05 17:58:37,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:58:37,251.251 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 17:58:40,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:58:40,201.201 INFO    ] Checking for system updates...
[2026-06-05 17:58:40,243.243 INFO    ] 200
[2026-06-05 17:58:40,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:40,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:58:40,310.310 INFO    ] No update needed
[2026-06-05 17:58:40,312.312 INFO    ] Checking for camera pi updates...
[2026-06-05 17:58:40,346.346 INFO    ] 200
[2026-06-05 17:58:40,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:40,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:58:40,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:58:40,434.434 INFO    ] No camera update needed
[2026-06-05 17:58:40,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:58:40,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:58:40,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:58:40,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:58:42,490.490 INFO    ] ================================================
[2026-06-05 17:58:42,505.505 INFO    ] Launching Daemon at Fri Jun  5 17:58:42 IST 2026
[2026-06-05 17:58:42,516.516 INFO    ] ================================================
[2026-06-05 17:58:43,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:58:43
[2026-06-05 17:58:43,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:58:43,993.993 INFO    ] Initializing speech engine...
[2026-06-05 17:58:43,999.999 INFO    ] 2026-06-05 17:58:43
[2026-06-05 17:58:44,262.262 INFO    ] 2026-06-05 17:58:44
[2026-06-05 17:58:44,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:58:44,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:58:44,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:58:44,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:58:44,752.752 INFO    ] time= 05/06/2026 17:58:44
[2026-06-05 17:58:44,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:58:44,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:58:44,962.962 INFO    ] No existing commands found in stream
[2026-06-05 17:58:49,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:58:49,979.979 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-05 17:58:50,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 17:58:50,847.847 INFO    ] Checking for system updates...
[2026-06-05 17:58:50,884.884 INFO    ] 200
[2026-06-05 17:58:50,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:50,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:58:50,946.946 INFO    ] No update needed
[2026-06-05 17:58:50,949.949 INFO    ] Checking for camera pi updates...
[2026-06-05 17:58:50,986.986 INFO    ] 200
[2026-06-05 17:58:50,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:58:51,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:58:51,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:58:51,074.074 INFO    ] No camera update needed
[2026-06-05 17:58:51,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:58:51,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:58:51,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:58:51,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:58:53,134.134 INFO    ] ================================================
[2026-06-05 17:58:53,149.149 INFO    ] Launching Daemon at Fri Jun  5 17:58:53 IST 2026
[2026-06-05 17:58:53,160.160 INFO    ] ================================================
[2026-06-05 17:58:53,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:58:53
[2026-06-05 17:58:54,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:58:54,585.585 INFO    ] Initializing speech engine...
[2026-06-05 17:58:54,594.594 INFO    ] 2026-06-05 17:58:54
[2026-06-05 17:58:54,839.839 INFO    ] 2026-06-05 17:58:54
[2026-06-05 17:58:54,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:58:55,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:58:55,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:58:55,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:58:55,314.314 INFO    ] time= 05/06/2026 17:58:55
[2026-06-05 17:58:55,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:58:55,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:58:55,540.540 INFO    ] No existing commands found in stream
[2026-06-05 17:59:00,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:59:00,568.568 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 17:59:03,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:59:03,515.515 INFO    ] Checking for system updates...
[2026-06-05 17:59:03,552.552 INFO    ] 200
[2026-06-05 17:59:03,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:03,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:59:03,610.610 INFO    ] No update needed
[2026-06-05 17:59:03,612.612 INFO    ] Checking for camera pi updates...
[2026-06-05 17:59:03,646.646 INFO    ] 200
[2026-06-05 17:59:03,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:03,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:59:03,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:59:03,748.748 INFO    ] No camera update needed
[2026-06-05 17:59:03,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:59:03,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:59:03,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:59:03,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:59:05,805.805 INFO    ] ================================================
[2026-06-05 17:59:05,820.820 INFO    ] Launching Daemon at Fri Jun  5 17:59:05 IST 2026
[2026-06-05 17:59:05,831.831 INFO    ] ================================================
[2026-06-05 17:59:06,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:59:06
[2026-06-05 17:59:07,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:59:07,316.316 INFO    ] Initializing speech engine...
[2026-06-05 17:59:07,325.325 INFO    ] 2026-06-05 17:59:07
[2026-06-05 17:59:07,592.592 INFO    ] 2026-06-05 17:59:07
[2026-06-05 17:59:07,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:59:07,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:59:07,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:59:08,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:59:08,052.052 INFO    ] time= 05/06/2026 17:59:08
[2026-06-05 17:59:08,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:59:08,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:59:08,260.260 INFO    ] No existing commands found in stream
[2026-06-05 17:59:13,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:59:13,285.285 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 17:59:17,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 17:59:17,717.717 INFO    ] Checking for system updates...
[2026-06-05 17:59:17,757.757 INFO    ] 200
[2026-06-05 17:59:17,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:17,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:59:17,823.823 INFO    ] No update needed
[2026-06-05 17:59:17,825.825 INFO    ] Checking for camera pi updates...
[2026-06-05 17:59:17,860.860 INFO    ] 200
[2026-06-05 17:59:17,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:17,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:59:17,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 17:59:17,958.958 INFO    ] No camera update needed
[2026-06-05 17:59:17,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:59:17,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:59:17,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:59:17,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:59:20,016.016 INFO    ] ================================================
[2026-06-05 17:59:20,031.031 INFO    ] Launching Daemon at Fri Jun  5 17:59:20 IST 2026
[2026-06-05 17:59:20,042.042 INFO    ] ================================================
[2026-06-05 17:59:20,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:59:20
[2026-06-05 17:59:21,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:59:21,455.455 INFO    ] Initializing speech engine...
[2026-06-05 17:59:21,473.473 INFO    ] 2026-06-05 17:59:21
[2026-06-05 17:59:21,722.722 INFO    ] 2026-06-05 17:59:21
[2026-06-05 17:59:21,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:59:22,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:59:22,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:59:22,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:59:22,170.170 INFO    ] time= 05/06/2026 17:59:22
[2026-06-05 17:59:22,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:59:22,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:59:22,327.327 INFO    ] No existing commands found in stream
[2026-06-05 17:59:27,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:59:27,350.350 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 17:59:28,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:59:28,109.109 INFO    ] Checking for system updates...
[2026-06-05 17:59:28,145.145 INFO    ] 200
[2026-06-05 17:59:28,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:28,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:59:28,219.219 INFO    ] No update needed
[2026-06-05 17:59:28,221.221 INFO    ] Checking for camera pi updates...
[2026-06-05 17:59:28,257.257 INFO    ] 200
[2026-06-05 17:59:28,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:28,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:59:28,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:59:28,449.449 INFO    ] No camera update needed
[2026-06-05 17:59:28,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:59:28,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:59:28,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:59:28,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:59:30,508.508 INFO    ] ================================================
[2026-06-05 17:59:30,523.523 INFO    ] Launching Daemon at Fri Jun  5 17:59:30 IST 2026
[2026-06-05 17:59:30,534.534 INFO    ] ================================================
[2026-06-05 17:59:31,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:59:31
[2026-06-05 17:59:31,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:59:32,014.014 INFO    ] Initializing speech engine...
[2026-06-05 17:59:32,020.020 INFO    ] 2026-06-05 17:59:32
[2026-06-05 17:59:32,345.345 INFO    ] 2026-06-05 17:59:32
[2026-06-05 17:59:32,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:59:32,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:59:32,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:59:32,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:59:32,743.743 INFO    ] time= 05/06/2026 17:59:32
[2026-06-05 17:59:32,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:59:32,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:59:32,923.923 INFO    ] No existing commands found in stream
[2026-06-05 17:59:37,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:59:37,953.953 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 17:59:41,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 17:59:41,239.239 INFO    ] Checking for system updates...
[2026-06-05 17:59:41,276.276 INFO    ] 200
[2026-06-05 17:59:41,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:41,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:59:41,336.336 INFO    ] No update needed
[2026-06-05 17:59:41,339.339 INFO    ] Checking for camera pi updates...
[2026-06-05 17:59:41,376.376 INFO    ] 200
[2026-06-05 17:59:41,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:41,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:59:41,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:59:41,468.468 INFO    ] No camera update needed
[2026-06-05 17:59:41,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:59:41,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:59:41,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:59:41,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:59:43,524.524 INFO    ] ================================================
[2026-06-05 17:59:43,540.540 INFO    ] Launching Daemon at Fri Jun  5 17:59:43 IST 2026
[2026-06-05 17:59:43,552.552 INFO    ] ================================================
[2026-06-05 17:59:44,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:59:44
[2026-06-05 17:59:44,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:59:44,954.954 INFO    ] Initializing speech engine...
[2026-06-05 17:59:44,976.976 INFO    ] 2026-06-05 17:59:44
[2026-06-05 17:59:45,248.248 INFO    ] 2026-06-05 17:59:45
[2026-06-05 17:59:45,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:59:45,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:59:45,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:59:45,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:59:45,667.667 INFO    ] time= 05/06/2026 17:59:45
[2026-06-05 17:59:45,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:59:45,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:59:45,760.760 INFO    ] No existing commands found in stream
[2026-06-05 17:59:50,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 17:59:50,798.798 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 17:59:52,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 17:59:52,589.589 INFO    ] Checking for system updates...
[2026-06-05 17:59:52,629.629 INFO    ] 200
[2026-06-05 17:59:52,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:52,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:59:52,700.700 INFO    ] No update needed
[2026-06-05 17:59:52,703.703 INFO    ] Checking for camera pi updates...
[2026-06-05 17:59:52,741.741 INFO    ] 200
[2026-06-05 17:59:52,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 17:59:52,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 17:59:52,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 17:59:52,828.828 INFO    ] No camera update needed
[2026-06-05 17:59:52,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-05 17:59:52,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 17:59:52,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 17:59:52,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 17:59:54,886.886 INFO    ] ================================================
[2026-06-05 17:59:54,902.902 INFO    ] Launching Daemon at Fri Jun  5 17:59:54 IST 2026
[2026-06-05 17:59:54,913.913 INFO    ] ================================================
[2026-06-05 17:59:55,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 17:59:55
[2026-06-05 17:59:56,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 17:59:56,373.373 INFO    ] Initializing speech engine...
[2026-06-05 17:59:56,381.381 INFO    ] 2026-06-05 17:59:56
[2026-06-05 17:59:56,640.640 INFO    ] 2026-06-05 17:59:56
[2026-06-05 17:59:56,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 17:59:56,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 17:59:56,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 17:59:57,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 17:59:57,092.092 INFO    ] time= 05/06/2026 17:59:57
[2026-06-05 17:59:57,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 17:59:57,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 17:59:57,288.288 INFO    ] No existing commands found in stream
[2026-06-05 18:00:02,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:00:02,302.302 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 18:00:09,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:00:09,513.513 INFO    ] Checking for system updates...
[2026-06-05 18:00:09,555.555 INFO    ] 200
[2026-06-05 18:00:09,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:09,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:00:09,614.614 INFO    ] No update needed
[2026-06-05 18:00:09,617.617 INFO    ] Checking for camera pi updates...
[2026-06-05 18:00:09,657.657 INFO    ] 200
[2026-06-05 18:00:09,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:09,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:00:09,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:00:09,760.760 INFO    ] No camera update needed
[2026-06-05 18:00:09,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:00:09,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:00:09,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:00:09,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:00:11,820.820 INFO    ] ================================================
[2026-06-05 18:00:11,835.835 INFO    ] Launching Daemon at Fri Jun  5 18:00:11 IST 2026
[2026-06-05 18:00:11,847.847 INFO    ] ================================================
[2026-06-05 18:00:12,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:00:12
[2026-06-05 18:00:13,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:00:13,279.279 INFO    ] Initializing speech engine...
[2026-06-05 18:00:13,286.286 INFO    ] 2026-06-05 18:00:13
[2026-06-05 18:00:13,577.577 INFO    ] 2026-06-05 18:00:13
[2026-06-05 18:00:13,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:00:13,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:00:13,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:00:14,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:00:14,008.008 INFO    ] time= 05/06/2026 18:00:14
[2026-06-05 18:00:14,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:00:14,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:00:14,095.095 INFO    ] No existing commands found in stream
[2026-06-05 18:00:19,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:00:19,110.110 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 18:00:22,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:00:22,663.663 INFO    ] Checking for system updates...
[2026-06-05 18:00:22,703.703 INFO    ] 200
[2026-06-05 18:00:22,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:22,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:00:22,763.763 INFO    ] No update needed
[2026-06-05 18:00:22,765.765 INFO    ] Checking for camera pi updates...
[2026-06-05 18:00:22,799.799 INFO    ] 200
[2026-06-05 18:00:22,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:22,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:00:22,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:00:22,874.874 INFO    ] No camera update needed
[2026-06-05 18:00:22,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:00:22,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:00:22,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:00:22,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:00:24,931.931 INFO    ] ================================================
[2026-06-05 18:00:24,946.946 INFO    ] Launching Daemon at Fri Jun  5 18:00:24 IST 2026
[2026-06-05 18:00:24,958.958 INFO    ] ================================================
[2026-06-05 18:00:25,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:00:25
[2026-06-05 18:00:26,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:00:26,399.399 INFO    ] Initializing speech engine...
[2026-06-05 18:00:26,406.406 INFO    ] 2026-06-05 18:00:26
[2026-06-05 18:00:26,708.708 INFO    ] 2026-06-05 18:00:26
[2026-06-05 18:00:26,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:00:26,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:00:26,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:00:27,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:00:27,111.111 INFO    ] time= 05/06/2026 18:00:27
[2026-06-05 18:00:27,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:00:27,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:00:27,270.270 INFO    ] No existing commands found in stream
[2026-06-05 18:00:32,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:00:32,301.301 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 18:00:35,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:00:35,371.371 INFO    ] Checking for system updates...
[2026-06-05 18:00:35,411.411 INFO    ] 200
[2026-06-05 18:00:35,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:35,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:00:35,490.490 INFO    ] No update needed
[2026-06-05 18:00:35,492.492 INFO    ] Checking for camera pi updates...
[2026-06-05 18:00:35,527.527 INFO    ] 200
[2026-06-05 18:00:35,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:35,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:00:35,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:00:35,631.631 INFO    ] No camera update needed
[2026-06-05 18:00:35,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:00:35,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:00:35,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:00:35,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:00:37,692.692 INFO    ] ================================================
[2026-06-05 18:00:37,708.708 INFO    ] Launching Daemon at Fri Jun  5 18:00:37 IST 2026
[2026-06-05 18:00:37,719.719 INFO    ] ================================================
[2026-06-05 18:00:38,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:00:38
[2026-06-05 18:00:38,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:00:39,180.180 INFO    ] Initializing speech engine...
[2026-06-05 18:00:39,199.199 INFO    ] 2026-06-05 18:00:39
[2026-06-05 18:00:39,460.460 INFO    ] 2026-06-05 18:00:39
[2026-06-05 18:00:39,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:00:39,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:00:39,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:00:39,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:00:39,961.961 INFO    ] time= 05/06/2026 18:00:39
[2026-06-05 18:00:40,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:00:40,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:00:40,172.172 INFO    ] No existing commands found in stream
[2026-06-05 18:00:45,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:00:45,202.202 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 18:00:45,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:00:45,703.703 INFO    ] Checking for system updates...
[2026-06-05 18:00:45,739.739 INFO    ] 200
[2026-06-05 18:00:45,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:45,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:00:45,802.802 INFO    ] No update needed
[2026-06-05 18:00:45,804.804 INFO    ] Checking for camera pi updates...
[2026-06-05 18:00:45,838.838 INFO    ] 200
[2026-06-05 18:00:45,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:45,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:00:45,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:00:45,936.936 INFO    ] No camera update needed
[2026-06-05 18:00:45,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:00:45,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:00:45,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:00:45,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:00:47,992.992 INFO    ] ================================================
[2026-06-05 18:00:48,008.008 INFO    ] Launching Daemon at Fri Jun  5 18:00:48 IST 2026
[2026-06-05 18:00:48,019.019 INFO    ] ================================================
[2026-06-05 18:00:48,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:00:48
[2026-06-05 18:00:49,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:00:49,453.453 INFO    ] Initializing speech engine...
[2026-06-05 18:00:49,476.476 INFO    ] 2026-06-05 18:00:49
[2026-06-05 18:00:49,732.732 INFO    ] 2026-06-05 18:00:49
[2026-06-05 18:00:49,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:00:52,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:00:52,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:00:52,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:00:52,741.741 INFO    ] time= 05/06/2026 18:00:52
[2026-06-05 18:00:52,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:00:52,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:00:52,807.807 INFO    ] No existing commands found in stream
[2026-06-05 18:00:57,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:00:57,819.819 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 18:00:58,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:00:58,579.579 INFO    ] Checking for system updates...
[2026-06-05 18:00:58,618.618 INFO    ] 200
[2026-06-05 18:00:58,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:58,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:00:58,682.682 INFO    ] No update needed
[2026-06-05 18:00:58,684.684 INFO    ] Checking for camera pi updates...
[2026-06-05 18:00:58,719.719 INFO    ] 200
[2026-06-05 18:00:58,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:00:58,763.763 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:00:58,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:00:58,806.806 INFO    ] No camera update needed
[2026-06-05 18:00:58,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:00:58,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:00:58,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:00:58,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:01:00,865.865 INFO    ] ================================================
[2026-06-05 18:01:00,880.880 INFO    ] Launching Daemon at Fri Jun  5 18:01:00 IST 2026
[2026-06-05 18:01:00,890.890 INFO    ] ================================================
[2026-06-05 18:01:01,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:01:01
[2026-06-05 18:01:02,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:01:02,516.516 INFO    ] Initializing speech engine...
[2026-06-05 18:01:02,539.539 INFO    ] 2026-06-05 18:01:02
[2026-06-05 18:01:02,836.836 INFO    ] 2026-06-05 18:01:02
[2026-06-05 18:01:02,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:01:03,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:01:03,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:01:03,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:01:03,328.328 INFO    ] time= 05/06/2026 18:01:03
[2026-06-05 18:01:03,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:01:03,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:01:03,529.529 INFO    ] No existing commands found in stream
[2026-06-05 18:01:08,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:01:08,544.544 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 18:01:12,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:01:12,231.231 INFO    ] Checking for system updates...
[2026-06-05 18:01:12,268.268 INFO    ] 200
[2026-06-05 18:01:12,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:01:12,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:01:12,326.326 INFO    ] No update needed
[2026-06-05 18:01:12,328.328 INFO    ] Checking for camera pi updates...
[2026-06-05 18:01:12,362.362 INFO    ] 200
[2026-06-05 18:01:12,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:01:12,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:01:12,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:01:12,466.466 INFO    ] No camera update needed
[2026-06-05 18:01:12,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:01:12,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:01:12,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:01:12,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:01:14,523.523 INFO    ] ================================================
[2026-06-05 18:01:14,539.539 INFO    ] Launching Daemon at Fri Jun  5 18:01:14 IST 2026
[2026-06-05 18:01:14,551.551 INFO    ] ================================================
[2026-06-05 18:01:15,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:01:15
[2026-06-05 18:01:15,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:01:16,068.068 INFO    ] Initializing speech engine...
[2026-06-05 18:01:16,080.080 INFO    ] 2026-06-05 18:01:16
[2026-06-05 18:01:16,355.355 INFO    ] 2026-06-05 18:01:16
[2026-06-05 18:01:16,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:01:16,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:01:16,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:01:16,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:01:16,837.837 INFO    ] time= 05/06/2026 18:01:16
[2026-06-05 18:01:16,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:01:16,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:01:17,050.050 INFO    ] No existing commands found in stream
[2026-06-05 18:01:22,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:01:22,080.080 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 18:01:25,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:01:25,561.561 INFO    ] Checking for system updates...
[2026-06-05 18:01:25,598.598 INFO    ] 200
[2026-06-05 18:01:25,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:01:25,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:01:25,656.656 INFO    ] No update needed
[2026-06-05 18:01:25,659.659 INFO    ] Checking for camera pi updates...
[2026-06-05 18:01:25,711.711 INFO    ] 200
[2026-06-05 18:01:25,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:01:25,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:01:25,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:01:25,796.796 INFO    ] No camera update needed
[2026-06-05 18:01:25,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:01:25,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:01:25,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:01:25,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:01:27,852.852 INFO    ] ================================================
[2026-06-05 18:01:27,867.867 INFO    ] Launching Daemon at Fri Jun  5 18:01:27 IST 2026
[2026-06-05 18:01:27,878.878 INFO    ] ================================================
[2026-06-05 18:01:28,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:01:28
[2026-06-05 18:01:29,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:01:29,467.467 INFO    ] Initializing speech engine...
[2026-06-05 18:01:29,476.476 INFO    ] 2026-06-05 18:01:29
[2026-06-05 18:01:29,745.745 INFO    ] 2026-06-05 18:01:29
[2026-06-05 18:01:29,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:01:30,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:01:30,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:01:30,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:01:30,239.239 INFO    ] time= 05/06/2026 18:01:30
[2026-06-05 18:01:30,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:01:30,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:01:30,446.446 INFO    ] No existing commands found in stream
[2026-06-05 18:01:35,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:01:35,465.465 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 18:01:40,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:01:40,120.120 INFO    ] Checking for system updates...
[2026-06-05 18:01:40,168.168 INFO    ] 200
[2026-06-05 18:01:40,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:01:40,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:01:40,234.234 INFO    ] No update needed
[2026-06-05 18:01:40,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 18:01:40,274.274 INFO    ] 200
[2026-06-05 18:01:40,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:01:40,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:01:40,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:01:40,365.365 INFO    ] No camera update needed
[2026-06-05 18:01:40,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:01:40,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:01:40,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:01:40,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:01:42,423.423 INFO    ] ================================================
[2026-06-05 18:01:42,438.438 INFO    ] Launching Daemon at Fri Jun  5 18:01:42 IST 2026
[2026-06-05 18:01:42,449.449 INFO    ] ================================================
[2026-06-05 18:01:43,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:01:43
[2026-06-05 18:01:43,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:01:43,910.910 INFO    ] Initializing speech engine...
[2026-06-05 18:01:43,920.920 INFO    ] 2026-06-05 18:01:43
[2026-06-05 18:01:44,175.175 INFO    ] 2026-06-05 18:01:44
[2026-06-05 18:01:44,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:01:44,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:01:44,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:01:44,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:01:44,651.651 INFO    ] time= 05/06/2026 18:01:44
[2026-06-05 18:01:44,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:01:44,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:01:44,843.843 INFO    ] No existing commands found in stream
[2026-06-05 18:01:49,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:01:49,873.873 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 18:01:51,834.834 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:01:51,836.836 INFO    ] Checking for system updates...
[2026-06-05 18:01:51,876.876 INFO    ] 200
[2026-06-05 18:01:51,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:01:51,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:01:51,936.936 INFO    ] No update needed
[2026-06-05 18:01:51,939.939 INFO    ] Checking for camera pi updates...
[2026-06-05 18:01:51,973.973 INFO    ] 200
[2026-06-05 18:01:51,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:01:52,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:01:52,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:01:52,069.069 INFO    ] No camera update needed
[2026-06-05 18:01:52,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:01:52,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:01:52,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:01:52,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:01:54,128.128 INFO    ] ================================================
[2026-06-05 18:01:54,144.144 INFO    ] Launching Daemon at Fri Jun  5 18:01:54 IST 2026
[2026-06-05 18:01:54,155.155 INFO    ] ================================================
[2026-06-05 18:01:54,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:01:54
[2026-06-05 18:01:55,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:01:55,633.633 INFO    ] Initializing speech engine...
[2026-06-05 18:01:55,643.643 INFO    ] 2026-06-05 18:01:55
[2026-06-05 18:01:55,919.919 INFO    ] 2026-06-05 18:01:55
[2026-06-05 18:01:55,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:01:56,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:01:56,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:01:56,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:01:56,372.372 INFO    ] time= 05/06/2026 18:01:56
[2026-06-05 18:01:56,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:01:56,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:01:56,582.582 INFO    ] No existing commands found in stream
[2026-06-05 18:02:01,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:02:01,618.618 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 18:02:05,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:02:05,087.087 INFO    ] Checking for system updates...
[2026-06-05 18:02:05,124.124 INFO    ] 200
[2026-06-05 18:02:05,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:05,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:02:05,186.186 INFO    ] No update needed
[2026-06-05 18:02:05,188.188 INFO    ] Checking for camera pi updates...
[2026-06-05 18:02:05,223.223 INFO    ] 200
[2026-06-05 18:02:05,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:05,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:02:05,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:02:05,321.321 INFO    ] No camera update needed
[2026-06-05 18:02:05,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:02:05,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:02:05,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:02:05,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:02:07,378.378 INFO    ] ================================================
[2026-06-05 18:02:07,394.394 INFO    ] Launching Daemon at Fri Jun  5 18:02:07 IST 2026
[2026-06-05 18:02:07,405.405 INFO    ] ================================================
[2026-06-05 18:02:08,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:02:08
[2026-06-05 18:02:08,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:02:08,984.984 INFO    ] Initializing speech engine...
[2026-06-05 18:02:08,992.992 INFO    ] 2026-06-05 18:02:08
[2026-06-05 18:02:09,279.279 INFO    ] 2026-06-05 18:02:09
[2026-06-05 18:02:09,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:02:09,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:02:09,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:02:09,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:02:09,875.875 INFO    ] time= 05/06/2026 18:02:09
[2026-06-05 18:02:09,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:02:09,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:02:10,040.040 INFO    ] No existing commands found in stream
[2026-06-05 18:02:15,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:02:15,062.062 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 18:02:16,273.273 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:02:16,276.276 INFO    ] Checking for system updates...
[2026-06-05 18:02:16,313.313 INFO    ] 200
[2026-06-05 18:02:16,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:16,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:02:16,383.383 INFO    ] No update needed
[2026-06-05 18:02:16,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 18:02:16,427.427 INFO    ] 200
[2026-06-05 18:02:16,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:16,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:02:16,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:02:16,514.514 INFO    ] No camera update needed
[2026-06-05 18:02:16,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:02:16,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:02:16,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:02:16,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:02:18,575.575 INFO    ] ================================================
[2026-06-05 18:02:18,591.591 INFO    ] Launching Daemon at Fri Jun  5 18:02:18 IST 2026
[2026-06-05 18:02:18,603.603 INFO    ] ================================================
[2026-06-05 18:02:19,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:02:19
[2026-06-05 18:02:19,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:02:20,080.080 INFO    ] Initializing speech engine...
[2026-06-05 18:02:20,090.090 INFO    ] 2026-06-05 18:02:20
[2026-06-05 18:02:20,352.352 INFO    ] 2026-06-05 18:02:20
[2026-06-05 18:02:20,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:02:20,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:02:20,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:02:20,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:02:20,760.760 INFO    ] time= 05/06/2026 18:02:20
[2026-06-05 18:02:20,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:02:20,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:02:20,923.923 INFO    ] No existing commands found in stream
[2026-06-05 18:02:25,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:02:25,951.951 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 18:02:30,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:02:30,113.113 INFO    ] Checking for system updates...
[2026-06-05 18:02:30,149.149 INFO    ] 200
[2026-06-05 18:02:30,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:30,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:02:30,210.210 INFO    ] No update needed
[2026-06-05 18:02:30,212.212 INFO    ] Checking for camera pi updates...
[2026-06-05 18:02:30,251.251 INFO    ] 200
[2026-06-05 18:02:30,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:30,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:02:30,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:02:30,346.346 INFO    ] No camera update needed
[2026-06-05 18:02:30,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:02:30,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:02:30,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:02:30,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:02:32,412.412 INFO    ] ================================================
[2026-06-05 18:02:32,429.429 INFO    ] Launching Daemon at Fri Jun  5 18:02:32 IST 2026
[2026-06-05 18:02:32,441.441 INFO    ] ================================================
[2026-06-05 18:02:33,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:02:33
[2026-06-05 18:02:33,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:02:33,940.940 INFO    ] Initializing speech engine...
[2026-06-05 18:02:33,949.949 INFO    ] 2026-06-05 18:02:33
[2026-06-05 18:02:34,210.210 INFO    ] 2026-06-05 18:02:34
[2026-06-05 18:02:34,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:02:34,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:02:34,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:02:34,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:02:34,701.701 INFO    ] time= 05/06/2026 18:02:34
[2026-06-05 18:02:34,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:02:34,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:02:34,892.892 INFO    ] No existing commands found in stream
[2026-06-05 18:02:39,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:02:39,922.922 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 18:02:42,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:02:42,931.931 INFO    ] Checking for system updates...
[2026-06-05 18:02:42,967.967 INFO    ] 200
[2026-06-05 18:02:42,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:43,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:02:43,023.023 INFO    ] No update needed
[2026-06-05 18:02:43,026.026 INFO    ] Checking for camera pi updates...
[2026-06-05 18:02:43,061.061 INFO    ] 200
[2026-06-05 18:02:43,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:43,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:02:43,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:02:43,148.148 INFO    ] No camera update needed
[2026-06-05 18:02:43,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:02:43,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:02:43,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:02:43,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:02:45,206.206 INFO    ] ================================================
[2026-06-05 18:02:45,222.222 INFO    ] Launching Daemon at Fri Jun  5 18:02:45 IST 2026
[2026-06-05 18:02:45,236.236 INFO    ] ================================================
[2026-06-05 18:02:45,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:02:45
[2026-06-05 18:02:46,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:02:46,736.736 INFO    ] Initializing speech engine...
[2026-06-05 18:02:46,749.749 INFO    ] 2026-06-05 18:02:46
[2026-06-05 18:02:47,021.021 INFO    ] 2026-06-05 18:02:47
[2026-06-05 18:02:47,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:02:47,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:02:47,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:02:47,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:02:47,440.440 INFO    ] time= 05/06/2026 18:02:47
[2026-06-05 18:02:47,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:02:47,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:02:47,617.617 INFO    ] No existing commands found in stream
[2026-06-05 18:02:52,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:02:52,650.650 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 18:02:55,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:02:55,154.154 INFO    ] Checking for system updates...
[2026-06-05 18:02:55,194.194 INFO    ] 200
[2026-06-05 18:02:55,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:55,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:02:55,253.253 INFO    ] No update needed
[2026-06-05 18:02:55,256.256 INFO    ] Checking for camera pi updates...
[2026-06-05 18:02:55,290.290 INFO    ] 200
[2026-06-05 18:02:55,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:02:55,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:02:55,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:02:55,377.377 INFO    ] No camera update needed
[2026-06-05 18:02:55,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:02:55,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:02:55,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:02:55,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:02:57,432.432 INFO    ] ================================================
[2026-06-05 18:02:57,447.447 INFO    ] Launching Daemon at Fri Jun  5 18:02:57 IST 2026
[2026-06-05 18:02:57,458.458 INFO    ] ================================================
[2026-06-05 18:02:58,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:02:58
[2026-06-05 18:02:58,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:02:58,884.884 INFO    ] Initializing speech engine...
[2026-06-05 18:02:58,894.894 INFO    ] 2026-06-05 18:02:58
[2026-06-05 18:02:59,153.153 INFO    ] 2026-06-05 18:02:59
[2026-06-05 18:02:59,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:02:59,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:02:59,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:02:59,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:02:59,626.626 INFO    ] time= 05/06/2026 18:02:59
[2026-06-05 18:02:59,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:02:59,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:02:59,850.850 INFO    ] No existing commands found in stream
[2026-06-05 18:03:04,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:03:04,866.866 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 18:03:07,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:03:07,259.259 INFO    ] Checking for system updates...
[2026-06-05 18:03:07,296.296 INFO    ] 200
[2026-06-05 18:03:07,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:03:07,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:03:07,363.363 INFO    ] No update needed
[2026-06-05 18:03:07,365.365 INFO    ] Checking for camera pi updates...
[2026-06-05 18:03:07,399.399 INFO    ] 200
[2026-06-05 18:03:07,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:03:07,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:03:07,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:03:07,479.479 INFO    ] No camera update needed
[2026-06-05 18:03:07,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:03:07,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:03:07,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:03:07,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:03:09,537.537 INFO    ] ================================================
[2026-06-05 18:03:09,552.552 INFO    ] Launching Daemon at Fri Jun  5 18:03:09 IST 2026
[2026-06-05 18:03:09,564.564 INFO    ] ================================================
[2026-06-05 18:03:10,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:03:10
[2026-06-05 18:03:10,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:03:11,021.021 INFO    ] Initializing speech engine...
[2026-06-05 18:03:11,030.030 INFO    ] 2026-06-05 18:03:11
[2026-06-05 18:03:11,288.288 INFO    ] 2026-06-05 18:03:11
[2026-06-05 18:03:11,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:03:11,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:03:11,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:03:11,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:03:11,658.658 INFO    ] time= 05/06/2026 18:03:11
[2026-06-05 18:03:11,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:03:11,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:03:11,837.837 INFO    ] No existing commands found in stream
[2026-06-05 18:03:16,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:03:16,870.870 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 18:03:20,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:03:20,094.094 INFO    ] Checking for system updates...
[2026-06-05 18:03:20,131.131 INFO    ] 200
[2026-06-05 18:03:20,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:03:20,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:03:20,193.193 INFO    ] No update needed
[2026-06-05 18:03:20,196.196 INFO    ] Checking for camera pi updates...
[2026-06-05 18:03:20,232.232 INFO    ] 200
[2026-06-05 18:03:20,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:03:20,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:03:20,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:03:20,331.331 INFO    ] No camera update needed
[2026-06-05 18:03:20,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:03:20,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:03:20,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:03:20,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:03:22,390.390 INFO    ] ================================================
[2026-06-05 18:03:22,406.406 INFO    ] Launching Daemon at Fri Jun  5 18:03:22 IST 2026
[2026-06-05 18:03:22,417.417 INFO    ] ================================================
[2026-06-05 18:03:23,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:03:23
[2026-06-05 18:03:23,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:03:23,944.944 INFO    ] Initializing speech engine...
[2026-06-05 18:03:23,958.958 INFO    ] 2026-06-05 18:03:23
[2026-06-05 18:03:24,207.207 INFO    ] 2026-06-05 18:03:24
[2026-06-05 18:03:24,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:03:25,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:03:25,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:03:25,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:03:25,698.698 INFO    ] time= 05/06/2026 18:03:25
[2026-06-05 18:03:25,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:03:25,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:03:25,773.773 INFO    ] No existing commands found in stream
[2026-06-05 18:03:30,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:03:30,787.787 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 18:03:33,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:03:33,933.933 INFO    ] Checking for system updates...
[2026-06-05 18:03:33,970.970 INFO    ] 200
[2026-06-05 18:03:33,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 18:03:33,974.974 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 18:03:33,977.977 INFO    ] Checking for camera pi updates...
[2026-06-05 18:03:34,011.011 INFO    ] 200
[2026-06-05 18:03:34,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 18:03:34,016.016 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 18:03:34,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:03:34,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:03:34,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:03:34,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:03:36,074.074 INFO    ] ================================================
[2026-06-05 18:03:36,089.089 INFO    ] Launching Daemon at Fri Jun  5 18:03:36 IST 2026
[2026-06-05 18:03:36,100.100 INFO    ] ================================================
[2026-06-05 18:03:36,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:03:36
[2026-06-05 18:03:37,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:03:37,633.633 INFO    ] Initializing speech engine...
[2026-06-05 18:03:37,642.642 INFO    ] 2026-06-05 18:03:37
[2026-06-05 18:03:37,959.959 INFO    ] 2026-06-05 18:03:37
[2026-06-05 18:03:38,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:03:38,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:03:38,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:03:38,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:03:38,395.395 INFO    ] time= 05/06/2026 18:03:38
[2026-06-05 18:03:38,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:03:38,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:03:38,590.590 INFO    ] No existing commands found in stream
[2026-06-05 18:03:43,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:03:43,614.614 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 18:03:47,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:03:47,038.038 INFO    ] Checking for system updates...
[2026-06-05 18:03:47,080.080 INFO    ] 200
[2026-06-05 18:03:47,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:03:47,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:03:47,139.139 INFO    ] No update needed
[2026-06-05 18:03:47,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 18:03:47,177.177 INFO    ] 200
[2026-06-05 18:03:47,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:03:47,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:03:47,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:03:47,379.379 INFO    ] No camera update needed
[2026-06-05 18:03:47,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:03:47,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:03:47,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:03:47,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:03:49,437.437 INFO    ] ================================================
[2026-06-05 18:03:49,452.452 INFO    ] Launching Daemon at Fri Jun  5 18:03:49 IST 2026
[2026-06-05 18:03:49,464.464 INFO    ] ================================================
[2026-06-05 18:03:50,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:03:50
[2026-06-05 18:03:50,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:03:50,928.928 INFO    ] Initializing speech engine...
[2026-06-05 18:03:50,935.935 INFO    ] 2026-06-05 18:03:50
[2026-06-05 18:03:51,195.195 INFO    ] 2026-06-05 18:03:51
[2026-06-05 18:03:51,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:03:51,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:03:51,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:03:51,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:03:51,694.694 INFO    ] time= 05/06/2026 18:03:51
[2026-06-05 18:03:51,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:03:51,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:03:51,871.871 INFO    ] No existing commands found in stream
[2026-06-05 18:03:56,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:03:56,907.907 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 18:03:58,620.620 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:03:58,622.622 INFO    ] Checking for system updates...
[2026-06-05 18:03:58,659.659 INFO    ] 200
[2026-06-05 18:03:58,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:03:58,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:03:58,718.718 INFO    ] No update needed
[2026-06-05 18:03:58,720.720 INFO    ] Checking for camera pi updates...
[2026-06-05 18:03:58,754.754 INFO    ] 200
[2026-06-05 18:03:58,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:03:58,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:03:58,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:03:58,850.850 INFO    ] No camera update needed
[2026-06-05 18:03:58,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:03:58,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:03:58,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:03:58,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:04:00,907.907 INFO    ] ================================================
[2026-06-05 18:04:00,923.923 INFO    ] Launching Daemon at Fri Jun  5 18:04:00 IST 2026
[2026-06-05 18:04:00,933.933 INFO    ] ================================================
[2026-06-05 18:04:01,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:04:01
[2026-06-05 18:04:02,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:04:02,648.648 INFO    ] Initializing speech engine...
[2026-06-05 18:04:02,672.672 INFO    ] 2026-06-05 18:04:02
[2026-06-05 18:04:03,002.002 INFO    ] 2026-06-05 18:04:02
[2026-06-05 18:04:03,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:04:03,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:04:03,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:04:03,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:04:03,517.517 INFO    ] time= 05/06/2026 18:04:03
[2026-06-05 18:04:03,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:04:03,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:04:03,769.769 INFO    ] No existing commands found in stream
[2026-06-05 18:04:08,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:04:08,795.795 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 18:04:11,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:04:11,821.821 INFO    ] Checking for system updates...
[2026-06-05 18:04:11,857.857 INFO    ] 200
[2026-06-05 18:04:11,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:04:11,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:04:11,916.916 INFO    ] No update needed
[2026-06-05 18:04:11,918.918 INFO    ] Checking for camera pi updates...
[2026-06-05 18:04:11,952.952 INFO    ] 200
[2026-06-05 18:04:11,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:04:11,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:04:12,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:04:12,038.038 INFO    ] No camera update needed
[2026-06-05 18:04:12,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:04:12,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:04:12,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:04:12,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:04:14,094.094 INFO    ] ================================================
[2026-06-05 18:04:14,109.109 INFO    ] Launching Daemon at Fri Jun  5 18:04:14 IST 2026
[2026-06-05 18:04:14,120.120 INFO    ] ================================================
[2026-06-05 18:04:14,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:04:14
[2026-06-05 18:04:15,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:04:15,545.545 INFO    ] Initializing speech engine...
[2026-06-05 18:04:15,558.558 INFO    ] 2026-06-05 18:04:15
[2026-06-05 18:04:15,811.811 INFO    ] 2026-06-05 18:04:15
[2026-06-05 18:04:15,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:04:16,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:04:16,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:04:16,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:04:16,189.189 INFO    ] time= 05/06/2026 18:04:16
[2026-06-05 18:04:16,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:04:16,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:04:16,392.392 INFO    ] No existing commands found in stream
[2026-06-05 18:04:21,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:04:21,406.406 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 18:04:26,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:04:26,602.602 INFO    ] Checking for system updates...
[2026-06-05 18:04:26,639.639 INFO    ] 200
[2026-06-05 18:04:26,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:04:26,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:04:26,708.708 INFO    ] No update needed
[2026-06-05 18:04:26,711.711 INFO    ] Checking for camera pi updates...
[2026-06-05 18:04:26,747.747 INFO    ] 200
[2026-06-05 18:04:26,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:04:26,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:04:26,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:04:26,850.850 INFO    ] No camera update needed
[2026-06-05 18:04:26,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:04:26,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:04:26,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:04:26,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:04:28,911.911 INFO    ] ================================================
[2026-06-05 18:04:28,928.928 INFO    ] Launching Daemon at Fri Jun  5 18:04:28 IST 2026
[2026-06-05 18:04:28,939.939 INFO    ] ================================================
[2026-06-05 18:04:29,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:04:29
[2026-06-05 18:04:30,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:04:30,350.350 INFO    ] Initializing speech engine...
[2026-06-05 18:04:30,355.355 INFO    ] 2026-06-05 18:04:30
[2026-06-05 18:04:30,659.659 INFO    ] 2026-06-05 18:04:30
[2026-06-05 18:04:30,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:04:30,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:04:30,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:04:31,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:04:31,056.056 INFO    ] time= 05/06/2026 18:04:31
[2026-06-05 18:04:31,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:04:31,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:04:31,185.185 INFO    ] No existing commands found in stream
[2026-06-05 18:04:36,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:04:36,200.200 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 18:04:39,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:04:39,691.691 INFO    ] Checking for system updates...
[2026-06-05 18:04:39,727.727 INFO    ] 200
[2026-06-05 18:04:39,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:04:39,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:04:39,786.786 INFO    ] No update needed
[2026-06-05 18:04:39,789.789 INFO    ] Checking for camera pi updates...
[2026-06-05 18:04:39,827.827 INFO    ] 200
[2026-06-05 18:04:39,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:04:39,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:04:39,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:04:39,923.923 INFO    ] No camera update needed
[2026-06-05 18:04:39,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:04:39,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:04:39,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:04:39,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:04:41,979.979 INFO    ] ================================================
[2026-06-05 18:04:42,996.996 INFO    ] Launching Daemon at Fri Jun  5 18:04:41 IST 2026
[2026-06-05 18:04:42,007.007 INFO    ] ================================================
[2026-06-05 18:04:42,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:04:42
[2026-06-05 18:04:43,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:04:43,705.705 INFO    ] Initializing speech engine...
[2026-06-05 18:04:43,713.713 INFO    ] 2026-06-05 18:04:43
[2026-06-05 18:04:44,023.023 INFO    ] 2026-06-05 18:04:43
[2026-06-05 18:04:44,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:04:44,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:04:44,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:04:44,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:04:44,533.533 INFO    ] time= 05/06/2026 18:04:44
[2026-06-05 18:04:44,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:04:44,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:04:44,688.688 INFO    ] No existing commands found in stream
[2026-06-05 18:04:49,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:04:49,707.707 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 18:04:52,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:04:52,373.373 INFO    ] Checking for system updates...
[2026-06-05 18:04:52,411.411 INFO    ] 200
[2026-06-05 18:04:52,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:04:52,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:04:52,471.471 INFO    ] No update needed
[2026-06-05 18:04:52,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 18:04:52,507.507 INFO    ] 200
[2026-06-05 18:04:52,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:04:52,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:04:52,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:04:52,603.603 INFO    ] No camera update needed
[2026-06-05 18:04:52,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:04:52,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:04:52,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:04:52,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:04:54,658.658 INFO    ] ================================================
[2026-06-05 18:04:54,674.674 INFO    ] Launching Daemon at Fri Jun  5 18:04:54 IST 2026
[2026-06-05 18:04:54,685.685 INFO    ] ================================================
[2026-06-05 18:04:55,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:04:55
[2026-06-05 18:04:56,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:04:56,326.326 INFO    ] Initializing speech engine...
[2026-06-05 18:04:56,331.331 INFO    ] 2026-06-05 18:04:56
[2026-06-05 18:04:56,649.649 INFO    ] 2026-06-05 18:04:56
[2026-06-05 18:04:56,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:04:57,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:04:57,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:04:57,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:04:57,586.586 INFO    ] time= 05/06/2026 18:04:57
[2026-06-05 18:04:57,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:04:57,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:04:57,718.718 INFO    ] No existing commands found in stream
[2026-06-05 18:05:02,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:05:02,732.732 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 18:05:04,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:05:04,135.135 INFO    ] Checking for system updates...
[2026-06-05 18:05:04,173.173 INFO    ] 200
[2026-06-05 18:05:04,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:04,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:05:04,239.239 INFO    ] No update needed
[2026-06-05 18:05:04,242.242 INFO    ] Checking for camera pi updates...
[2026-06-05 18:05:04,281.281 INFO    ] 200
[2026-06-05 18:05:04,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:04,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:05:04,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:05:04,380.380 INFO    ] No camera update needed
[2026-06-05 18:05:04,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:05:04,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:05:04,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:05:04,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:05:06,439.439 INFO    ] ================================================
[2026-06-05 18:05:06,454.454 INFO    ] Launching Daemon at Fri Jun  5 18:05:06 IST 2026
[2026-06-05 18:05:06,465.465 INFO    ] ================================================
[2026-06-05 18:05:07,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:05:07
[2026-06-05 18:05:07,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:05:07,902.902 INFO    ] Initializing speech engine...
[2026-06-05 18:05:07,911.911 INFO    ] 2026-06-05 18:05:07
[2026-06-05 18:05:08,203.203 INFO    ] 2026-06-05 18:05:08
[2026-06-05 18:05:08,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:05:08,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:05:08,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:05:08,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:05:08,586.586 INFO    ] time= 05/06/2026 18:05:08
[2026-06-05 18:05:08,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:05:08,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:05:08,710.710 INFO    ] No existing commands found in stream
[2026-06-05 18:05:13,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:05:13,726.726 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 18:05:17,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:05:17,522.522 INFO    ] Checking for system updates...
[2026-06-05 18:05:17,561.561 INFO    ] 200
[2026-06-05 18:05:17,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:17,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:05:17,618.618 INFO    ] No update needed
[2026-06-05 18:05:17,621.621 INFO    ] Checking for camera pi updates...
[2026-06-05 18:05:17,654.654 INFO    ] 200
[2026-06-05 18:05:17,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:17,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:05:17,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:05:17,747.747 INFO    ] No camera update needed
[2026-06-05 18:05:17,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:05:17,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:05:17,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:05:17,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:05:19,804.804 INFO    ] ================================================
[2026-06-05 18:05:19,819.819 INFO    ] Launching Daemon at Fri Jun  5 18:05:19 IST 2026
[2026-06-05 18:05:19,830.830 INFO    ] ================================================
[2026-06-05 18:05:20,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:05:20
[2026-06-05 18:05:20,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:05:21,267.267 INFO    ] Initializing speech engine...
[2026-06-05 18:05:21,276.276 INFO    ] 2026-06-05 18:05:21
[2026-06-05 18:05:21,528.528 INFO    ] 2026-06-05 18:05:21
[2026-06-05 18:05:21,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:05:21,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:05:21,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:05:21,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:05:21,907.907 INFO    ] time= 05/06/2026 18:05:21
[2026-06-05 18:05:21,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:05:21,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:05:22,087.087 INFO    ] No existing commands found in stream
[2026-06-05 18:05:27,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:05:27,121.121 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 18:05:28,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:05:28,651.651 INFO    ] Checking for system updates...
[2026-06-05 18:05:28,688.688 INFO    ] 200
[2026-06-05 18:05:28,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:28,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:05:28,749.749 INFO    ] No update needed
[2026-06-05 18:05:28,751.751 INFO    ] Checking for camera pi updates...
[2026-06-05 18:05:28,788.788 INFO    ] 200
[2026-06-05 18:05:28,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:28,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:05:28,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:05:28,878.878 INFO    ] No camera update needed
[2026-06-05 18:05:28,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:05:28,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:05:28,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:05:28,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:05:30,933.933 INFO    ] ================================================
[2026-06-05 18:05:30,948.948 INFO    ] Launching Daemon at Fri Jun  5 18:05:30 IST 2026
[2026-06-05 18:05:30,959.959 INFO    ] ================================================
[2026-06-05 18:05:31,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:05:31
[2026-06-05 18:05:32,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:05:32,453.453 INFO    ] Initializing speech engine...
[2026-06-05 18:05:32,464.464 INFO    ] 2026-06-05 18:05:32
[2026-06-05 18:05:32,787.787 INFO    ] 2026-06-05 18:05:32
[2026-06-05 18:05:32,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:05:33,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:05:33,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:05:33,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:05:33,231.231 INFO    ] time= 05/06/2026 18:05:33
[2026-06-05 18:05:33,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:05:33,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:05:33,328.328 INFO    ] No existing commands found in stream
[2026-06-05 18:05:38,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:05:38,357.357 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 18:05:41,229.229 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:05:41,231.231 INFO    ] Checking for system updates...
[2026-06-05 18:05:41,268.268 INFO    ] 200
[2026-06-05 18:05:41,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:41,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:05:41,327.327 INFO    ] No update needed
[2026-06-05 18:05:41,330.330 INFO    ] Checking for camera pi updates...
[2026-06-05 18:05:41,365.365 INFO    ] 200
[2026-06-05 18:05:41,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:41,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:05:41,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:05:41,457.457 INFO    ] No camera update needed
[2026-06-05 18:05:41,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:05:41,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:05:41,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:05:41,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:05:43,514.514 INFO    ] ================================================
[2026-06-05 18:05:43,529.529 INFO    ] Launching Daemon at Fri Jun  5 18:05:43 IST 2026
[2026-06-05 18:05:43,541.541 INFO    ] ================================================
[2026-06-05 18:05:44,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:05:44
[2026-06-05 18:05:44,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:05:44,943.943 INFO    ] Initializing speech engine...
[2026-06-05 18:05:44,956.956 INFO    ] 2026-06-05 18:05:44
[2026-06-05 18:05:45,222.222 INFO    ] 2026-06-05 18:05:45
[2026-06-05 18:05:45,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:05:45,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:05:45,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:05:45,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:05:45,708.708 INFO    ] time= 05/06/2026 18:05:45
[2026-06-05 18:05:45,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:05:45,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:05:45,932.932 INFO    ] No existing commands found in stream
[2026-06-05 18:05:50,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:05:50,963.963 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 18:05:54,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:05:54,276.276 INFO    ] Checking for system updates...
[2026-06-05 18:05:54,312.312 INFO    ] 200
[2026-06-05 18:05:54,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:54,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:05:54,383.383 INFO    ] No update needed
[2026-06-05 18:05:54,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 18:05:54,420.420 INFO    ] 200
[2026-06-05 18:05:54,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:05:54,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:05:54,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:05:54,628.628 INFO    ] No camera update needed
[2026-06-05 18:05:54,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:05:54,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:05:54,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:05:54,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:05:56,687.687 INFO    ] ================================================
[2026-06-05 18:05:56,704.704 INFO    ] Launching Daemon at Fri Jun  5 18:05:56 IST 2026
[2026-06-05 18:05:56,716.716 INFO    ] ================================================
[2026-06-05 18:05:57,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:05:57
[2026-06-05 18:05:58,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:05:58,332.332 INFO    ] Initializing speech engine...
[2026-06-05 18:05:58,347.347 INFO    ] 2026-06-05 18:05:58
[2026-06-05 18:05:58,646.646 INFO    ] 2026-06-05 18:05:58
[2026-06-05 18:05:58,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:05:58,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:05:58,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:05:59,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:05:59,171.171 INFO    ] time= 05/06/2026 18:05:59
[2026-06-05 18:05:59,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:05:59,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:05:59,332.332 INFO    ] No existing commands found in stream
[2026-06-05 18:06:04,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:06:04,370.370 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 18:06:07,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:06:07,339.339 INFO    ] Checking for system updates...
[2026-06-05 18:06:07,376.376 INFO    ] 200
[2026-06-05 18:06:07,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:07,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:06:07,444.444 INFO    ] No update needed
[2026-06-05 18:06:07,446.446 INFO    ] Checking for camera pi updates...
[2026-06-05 18:06:07,481.481 INFO    ] 200
[2026-06-05 18:06:07,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:07,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:06:07,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:06:07,567.567 INFO    ] No camera update needed
[2026-06-05 18:06:07,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:06:07,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:06:07,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:06:07,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:06:09,623.623 INFO    ] ================================================
[2026-06-05 18:06:09,640.640 INFO    ] Launching Daemon at Fri Jun  5 18:06:09 IST 2026
[2026-06-05 18:06:09,651.651 INFO    ] ================================================
[2026-06-05 18:06:10,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:06:10
[2026-06-05 18:06:10,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:06:11,096.096 INFO    ] Initializing speech engine...
[2026-06-05 18:06:11,108.108 INFO    ] 2026-06-05 18:06:11
[2026-06-05 18:06:11,359.359 INFO    ] 2026-06-05 18:06:11
[2026-06-05 18:06:11,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:06:11,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:06:11,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:06:11,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:06:11,736.736 INFO    ] time= 05/06/2026 18:06:11
[2026-06-05 18:06:11,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:06:11,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:06:11,932.932 INFO    ] No existing commands found in stream
[2026-06-05 18:06:16,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:06:16,950.950 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 18:06:18,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:06:18,450.450 INFO    ] Checking for system updates...
[2026-06-05 18:06:18,489.489 INFO    ] 200
[2026-06-05 18:06:18,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:18,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:06:18,546.546 INFO    ] No update needed
[2026-06-05 18:06:18,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 18:06:18,586.586 INFO    ] 200
[2026-06-05 18:06:18,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:18,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:06:18,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:06:18,681.681 INFO    ] No camera update needed
[2026-06-05 18:06:18,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:06:18,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:06:18,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:06:18,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:06:20,737.737 INFO    ] ================================================
[2026-06-05 18:06:20,753.753 INFO    ] Launching Daemon at Fri Jun  5 18:06:20 IST 2026
[2026-06-05 18:06:20,764.764 INFO    ] ================================================
[2026-06-05 18:06:21,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:06:21
[2026-06-05 18:06:21,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:06:22,220.220 INFO    ] Initializing speech engine...
[2026-06-05 18:06:22,229.229 INFO    ] 2026-06-05 18:06:22
[2026-06-05 18:06:22,510.510 INFO    ] 2026-06-05 18:06:22
[2026-06-05 18:06:22,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:06:22,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:06:22,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:06:22,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:06:22,974.974 INFO    ] time= 05/06/2026 18:06:22
[2026-06-05 18:06:23,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:06:23,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:06:23,131.131 INFO    ] No existing commands found in stream
[2026-06-05 18:06:28,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:06:28,146.146 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 18:06:31,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:06:31,215.215 INFO    ] Checking for system updates...
[2026-06-05 18:06:31,257.257 INFO    ] 200
[2026-06-05 18:06:31,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:31,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:06:31,323.323 INFO    ] No update needed
[2026-06-05 18:06:31,326.326 INFO    ] Checking for camera pi updates...
[2026-06-05 18:06:31,364.364 INFO    ] 200
[2026-06-05 18:06:31,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:31,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:06:31,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:06:31,446.446 INFO    ] No camera update needed
[2026-06-05 18:06:31,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:06:31,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:06:31,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:06:31,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:06:33,510.510 INFO    ] ================================================
[2026-06-05 18:06:33,526.526 INFO    ] Launching Daemon at Fri Jun  5 18:06:33 IST 2026
[2026-06-05 18:06:33,538.538 INFO    ] ================================================
[2026-06-05 18:06:34,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:06:34
[2026-06-05 18:06:34,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:06:35,147.147 INFO    ] Initializing speech engine...
[2026-06-05 18:06:35,161.161 INFO    ] 2026-06-05 18:06:35
[2026-06-05 18:06:35,469.469 INFO    ] 2026-06-05 18:06:35
[2026-06-05 18:06:35,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:06:35,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:06:35,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:06:35,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:06:35,973.973 INFO    ] time= 05/06/2026 18:06:35
[2026-06-05 18:06:35,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:06:36,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:06:36,133.133 INFO    ] No existing commands found in stream
[2026-06-05 18:06:41,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:06:41,158.158 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 18:06:43,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:06:43,142.142 INFO    ] Checking for system updates...
[2026-06-05 18:06:43,180.180 INFO    ] 200
[2026-06-05 18:06:43,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:43,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:06:43,239.239 INFO    ] No update needed
[2026-06-05 18:06:43,242.242 INFO    ] Checking for camera pi updates...
[2026-06-05 18:06:43,281.281 INFO    ] 200
[2026-06-05 18:06:43,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:43,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:06:43,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:06:43,370.370 INFO    ] No camera update needed
[2026-06-05 18:06:43,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:06:43,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:06:43,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:06:43,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:06:45,432.432 INFO    ] ================================================
[2026-06-05 18:06:45,449.449 INFO    ] Launching Daemon at Fri Jun  5 18:06:45 IST 2026
[2026-06-05 18:06:45,460.460 INFO    ] ================================================
[2026-06-05 18:06:46,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:06:46
[2026-06-05 18:06:46,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:06:46,883.883 INFO    ] Initializing speech engine...
[2026-06-05 18:06:46,903.903 INFO    ] 2026-06-05 18:06:46
[2026-06-05 18:06:47,152.152 INFO    ] 2026-06-05 18:06:47
[2026-06-05 18:06:47,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:06:47,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:06:47,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:06:47,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:06:47,579.579 INFO    ] time= 05/06/2026 18:06:47
[2026-06-05 18:06:47,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:06:47,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:06:47,781.781 INFO    ] No existing commands found in stream
[2026-06-05 18:06:52,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:06:52,796.796 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 18:06:59,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:06:59,249.249 INFO    ] Checking for system updates...
[2026-06-05 18:06:59,290.290 INFO    ] 200
[2026-06-05 18:06:59,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:59,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:06:59,356.356 INFO    ] No update needed
[2026-06-05 18:06:59,359.359 INFO    ] Checking for camera pi updates...
[2026-06-05 18:06:59,392.392 INFO    ] 200
[2026-06-05 18:06:59,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:06:59,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:06:59,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:06:59,490.490 INFO    ] No camera update needed
[2026-06-05 18:06:59,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:06:59,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:06:59,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:06:59,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:07:01,571.571 INFO    ] ================================================
[2026-06-05 18:07:01,609.609 INFO    ] Launching Daemon at Fri Jun  5 18:07:01 IST 2026
[2026-06-05 18:07:01,629.629 INFO    ] ================================================
[2026-06-05 18:07:02,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:07:02
[2026-06-05 18:07:03,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:07:03,328.328 INFO    ] Initializing speech engine...
[2026-06-05 18:07:03,340.340 INFO    ] 2026-06-05 18:07:03
[2026-06-05 18:07:03,607.607 INFO    ] 2026-06-05 18:07:03
[2026-06-05 18:07:03,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:07:03,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:07:03,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:07:04,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:07:04,084.084 INFO    ] time= 05/06/2026 18:07:04
[2026-06-05 18:07:04,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:07:04,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:07:04,263.263 INFO    ] No existing commands found in stream
[2026-06-05 18:07:09,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:07:09,278.278 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 18:07:09,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:07:09,730.730 INFO    ] Checking for system updates...
[2026-06-05 18:07:09,767.767 INFO    ] 200
[2026-06-05 18:07:09,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:07:09,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:07:09,833.833 INFO    ] No update needed
[2026-06-05 18:07:09,837.837 INFO    ] Checking for camera pi updates...
[2026-06-05 18:07:09,872.872 INFO    ] 200
[2026-06-05 18:07:09,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:07:09,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:07:09,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:07:09,968.968 INFO    ] No camera update needed
[2026-06-05 18:07:09,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:07:09,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:07:09,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:07:09,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:07:12,028.028 INFO    ] ================================================
[2026-06-05 18:07:12,043.043 INFO    ] Launching Daemon at Fri Jun  5 18:07:12 IST 2026
[2026-06-05 18:07:12,054.054 INFO    ] ================================================
[2026-06-05 18:07:12,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:07:12
[2026-06-05 18:07:13,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:07:13,565.565 INFO    ] Initializing speech engine...
[2026-06-05 18:07:13,574.574 INFO    ] 2026-06-05 18:07:13
[2026-06-05 18:07:13,828.828 INFO    ] 2026-06-05 18:07:13
[2026-06-05 18:07:13,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:07:14,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:07:14,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:07:14,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:07:14,208.208 INFO    ] time= 05/06/2026 18:07:14
[2026-06-05 18:07:14,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:07:14,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:07:14,368.368 INFO    ] No existing commands found in stream
[2026-06-05 18:07:19,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:07:19,396.396 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 18:07:23,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:07:23,110.110 INFO    ] Checking for system updates...
[2026-06-05 18:07:23,147.147 INFO    ] 200
[2026-06-05 18:07:23,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:07:23,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:07:23,206.206 INFO    ] No update needed
[2026-06-05 18:07:23,209.209 INFO    ] Checking for camera pi updates...
[2026-06-05 18:07:23,243.243 INFO    ] 200
[2026-06-05 18:07:23,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:07:23,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:07:23,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:07:23,336.336 INFO    ] No camera update needed
[2026-06-05 18:07:23,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:07:23,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:07:23,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:07:23,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:07:25,397.397 INFO    ] ================================================
[2026-06-05 18:07:25,413.413 INFO    ] Launching Daemon at Fri Jun  5 18:07:25 IST 2026
[2026-06-05 18:07:25,424.424 INFO    ] ================================================
[2026-06-05 18:07:26,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:07:26
[2026-06-05 18:07:26,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:07:26,889.889 INFO    ] Initializing speech engine...
[2026-06-05 18:07:26,897.897 INFO    ] 2026-06-05 18:07:26
[2026-06-05 18:07:27,152.152 INFO    ] 2026-06-05 18:07:27
[2026-06-05 18:07:27,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:07:29,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:07:29,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:07:29,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:07:29,898.898 INFO    ] time= 05/06/2026 18:07:29
[2026-06-05 18:07:29,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:07:29,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:07:29,997.997 INFO    ] No existing commands found in stream
[2026-06-05 18:07:35,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:07:35,010.010 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 18:07:39,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:07:39,087.087 INFO    ] Checking for system updates...
[2026-06-05 18:07:39,128.128 INFO    ] 200
[2026-06-05 18:07:39,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:07:39,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:07:39,195.195 INFO    ] No update needed
[2026-06-05 18:07:39,197.197 INFO    ] Checking for camera pi updates...
[2026-06-05 18:07:39,237.237 INFO    ] 200
[2026-06-05 18:07:39,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:07:39,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:07:39,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:07:39,342.342 INFO    ] No camera update needed
[2026-06-05 18:07:39,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:07:39,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:07:39,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:07:39,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:07:41,400.400 INFO    ] ================================================
[2026-06-05 18:07:41,415.415 INFO    ] Launching Daemon at Fri Jun  5 18:07:41 IST 2026
[2026-06-05 18:07:41,426.426 INFO    ] ================================================
[2026-06-05 18:07:42,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:07:42
[2026-06-05 18:07:42,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:07:43,001.001 INFO    ] Initializing speech engine...
[2026-06-05 18:07:43,008.008 INFO    ] 2026-06-05 18:07:43
[2026-06-05 18:07:43,270.270 INFO    ] 2026-06-05 18:07:43
[2026-06-05 18:07:43,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:07:43,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:07:43,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:07:43,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:07:43,726.726 INFO    ] time= 05/06/2026 18:07:43
[2026-06-05 18:07:43,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:07:43,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:07:43,967.967 INFO    ] No existing commands found in stream
[2026-06-05 18:07:48,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:07:48,984.984 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 18:07:50,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:07:50,972.972 INFO    ] Checking for system updates...
[2026-06-05 18:07:51,009.009 INFO    ] 200
[2026-06-05 18:07:51,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:07:51,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:07:51,070.070 INFO    ] No update needed
[2026-06-05 18:07:51,073.073 INFO    ] Checking for camera pi updates...
[2026-06-05 18:07:51,107.107 INFO    ] 200
[2026-06-05 18:07:51,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:07:51,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:07:51,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:07:51,203.203 INFO    ] No camera update needed
[2026-06-05 18:07:51,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:07:51,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:07:51,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:07:51,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:07:53,260.260 INFO    ] ================================================
[2026-06-05 18:07:53,275.275 INFO    ] Launching Daemon at Fri Jun  5 18:07:53 IST 2026
[2026-06-05 18:07:53,287.287 INFO    ] ================================================
[2026-06-05 18:07:53,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:07:53
[2026-06-05 18:07:54,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:07:54,708.708 INFO    ] Initializing speech engine...
[2026-06-05 18:07:54,716.716 INFO    ] 2026-06-05 18:07:54
[2026-06-05 18:07:54,989.989 INFO    ] 2026-06-05 18:07:54
[2026-06-05 18:07:55,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:07:55,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:07:55,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:07:55,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:07:55,368.368 INFO    ] time= 05/06/2026 18:07:55
[2026-06-05 18:07:55,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:07:55,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:07:55,564.564 INFO    ] No existing commands found in stream
[2026-06-05 18:08:00,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:08:00,583.583 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 18:08:01,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:08:01,133.133 INFO    ] Checking for system updates...
[2026-06-05 18:08:01,170.170 INFO    ] 200
[2026-06-05 18:08:01,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:01,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:08:01,235.235 INFO    ] No update needed
[2026-06-05 18:08:01,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 18:08:01,286.286 INFO    ] 200
[2026-06-05 18:08:01,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:01,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:08:01,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:08:01,549.549 INFO    ] No camera update needed
[2026-06-05 18:08:01,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:08:01,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:08:01,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:08:01,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:08:03,614.614 INFO    ] ================================================
[2026-06-05 18:08:03,629.629 INFO    ] Launching Daemon at Fri Jun  5 18:08:03 IST 2026
[2026-06-05 18:08:03,640.640 INFO    ] ================================================
[2026-06-05 18:08:04,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:08:04
[2026-06-05 18:08:04,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:08:05,246.246 INFO    ] Initializing speech engine...
[2026-06-05 18:08:05,255.255 INFO    ] 2026-06-05 18:08:05
[2026-06-05 18:08:05,517.517 INFO    ] 2026-06-05 18:08:05
[2026-06-05 18:08:05,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:08:05,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:08:05,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:08:05,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:08:05,971.971 INFO    ] time= 05/06/2026 18:08:05
[2026-06-05 18:08:06,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:08:06,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:08:06,212.212 INFO    ] No existing commands found in stream
[2026-06-05 18:08:11,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:08:11,230.230 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 18:08:15,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:08:15,266.266 INFO    ] Checking for system updates...
[2026-06-05 18:08:15,307.307 INFO    ] 200
[2026-06-05 18:08:15,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:15,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:08:15,366.366 INFO    ] No update needed
[2026-06-05 18:08:15,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 18:08:15,411.411 INFO    ] 200
[2026-06-05 18:08:15,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:15,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:08:15,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:08:15,501.501 INFO    ] No camera update needed
[2026-06-05 18:08:15,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:08:15,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:08:15,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:08:15,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:08:17,558.558 INFO    ] ================================================
[2026-06-05 18:08:17,573.573 INFO    ] Launching Daemon at Fri Jun  5 18:08:17 IST 2026
[2026-06-05 18:08:17,583.583 INFO    ] ================================================
[2026-06-05 18:08:18,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:08:18
[2026-06-05 18:08:18,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:08:19,026.026 INFO    ] Initializing speech engine...
[2026-06-05 18:08:19,034.034 INFO    ] 2026-06-05 18:08:19
[2026-06-05 18:08:19,294.294 INFO    ] 2026-06-05 18:08:19
[2026-06-05 18:08:19,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:08:19,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:08:19,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:08:19,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:08:19,785.785 INFO    ] time= 05/06/2026 18:08:19
[2026-06-05 18:08:19,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:08:19,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:08:20,007.007 INFO    ] No existing commands found in stream
[2026-06-05 18:08:25,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:08:25,038.038 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 18:08:27,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:08:27,323.323 INFO    ] Checking for system updates...
[2026-06-05 18:08:27,359.359 INFO    ] 200
[2026-06-05 18:08:27,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:27,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:08:27,418.418 INFO    ] No update needed
[2026-06-05 18:08:27,420.420 INFO    ] Checking for camera pi updates...
[2026-06-05 18:08:27,454.454 INFO    ] 200
[2026-06-05 18:08:27,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:27,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:08:27,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:08:27,563.563 INFO    ] No camera update needed
[2026-06-05 18:08:27,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:08:27,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:08:27,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:08:27,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:08:29,619.619 INFO    ] ================================================
[2026-06-05 18:08:29,635.635 INFO    ] Launching Daemon at Fri Jun  5 18:08:29 IST 2026
[2026-06-05 18:08:29,646.646 INFO    ] ================================================
[2026-06-05 18:08:30,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:08:30
[2026-06-05 18:08:30,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:08:31,051.051 INFO    ] Initializing speech engine...
[2026-06-05 18:08:31,076.076 INFO    ] 2026-06-05 18:08:31
[2026-06-05 18:08:31,332.332 INFO    ] 2026-06-05 18:08:31
[2026-06-05 18:08:31,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:08:31,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:08:31,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:08:31,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:08:31,739.739 INFO    ] time= 05/06/2026 18:08:31
[2026-06-05 18:08:31,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:08:31,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:08:31,925.925 INFO    ] No existing commands found in stream
[2026-06-05 18:08:36,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:08:36,960.960 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 18:08:38,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:08:38,666.666 INFO    ] Checking for system updates...
[2026-06-05 18:08:38,704.704 INFO    ] 200
[2026-06-05 18:08:38,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:38,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:08:38,768.768 INFO    ] No update needed
[2026-06-05 18:08:38,771.771 INFO    ] Checking for camera pi updates...
[2026-06-05 18:08:38,807.807 INFO    ] 200
[2026-06-05 18:08:38,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:38,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:08:38,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:08:38,910.910 INFO    ] No camera update needed
[2026-06-05 18:08:38,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:08:38,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:08:38,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:08:38,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:08:40,969.969 INFO    ] ================================================
[2026-06-05 18:08:40,986.986 INFO    ] Launching Daemon at Fri Jun  5 18:08:40 IST 2026
[2026-06-05 18:08:41,997.997 INFO    ] ================================================
[2026-06-05 18:08:41,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:08:41
[2026-06-05 18:08:42,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:08:42,505.505 INFO    ] Initializing speech engine...
[2026-06-05 18:08:42,524.524 INFO    ] 2026-06-05 18:08:42
[2026-06-05 18:08:42,840.840 INFO    ] 2026-06-05 18:08:42
[2026-06-05 18:08:42,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:08:43,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:08:43,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:08:43,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:08:43,377.377 INFO    ] time= 05/06/2026 18:08:43
[2026-06-05 18:08:43,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:08:43,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:08:43,556.556 INFO    ] No existing commands found in stream
[2026-06-05 18:08:48,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:08:48,590.590 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 18:08:49,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:08:49,421.421 INFO    ] Checking for system updates...
[2026-06-05 18:08:49,458.458 INFO    ] 200
[2026-06-05 18:08:49,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:49,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:08:49,518.518 INFO    ] No update needed
[2026-06-05 18:08:49,520.520 INFO    ] Checking for camera pi updates...
[2026-06-05 18:08:49,557.557 INFO    ] 200
[2026-06-05 18:08:49,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:08:49,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:08:49,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:08:49,656.656 INFO    ] No camera update needed
[2026-06-05 18:08:49,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:08:49,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:08:49,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:08:49,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:08:51,715.715 INFO    ] ================================================
[2026-06-05 18:08:51,730.730 INFO    ] Launching Daemon at Fri Jun  5 18:08:51 IST 2026
[2026-06-05 18:08:51,741.741 INFO    ] ================================================
[2026-06-05 18:08:52,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:08:52
[2026-06-05 18:08:52,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:08:53,194.194 INFO    ] Initializing speech engine...
[2026-06-05 18:08:53,204.204 INFO    ] 2026-06-05 18:08:53
[2026-06-05 18:08:53,453.453 INFO    ] 2026-06-05 18:08:53
[2026-06-05 18:08:53,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:08:53,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:08:53,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:08:53,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:08:53,828.828 INFO    ] time= 05/06/2026 18:08:53
[2026-06-05 18:08:53,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:08:53,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:08:54,028.028 INFO    ] No existing commands found in stream
[2026-06-05 18:08:59,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:08:59,041.041 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 18:09:02,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:09:02,918.918 INFO    ] Checking for system updates...
[2026-06-05 18:09:02,956.956 INFO    ] 200
[2026-06-05 18:09:02,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:03,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:09:03,014.014 INFO    ] No update needed
[2026-06-05 18:09:03,016.016 INFO    ] Checking for camera pi updates...
[2026-06-05 18:09:03,050.050 INFO    ] 200
[2026-06-05 18:09:03,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:03,093.093 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:09:03,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:09:03,134.134 INFO    ] No camera update needed
[2026-06-05 18:09:03,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:09:03,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:09:03,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:09:03,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:09:05,189.189 INFO    ] ================================================
[2026-06-05 18:09:05,205.205 INFO    ] Launching Daemon at Fri Jun  5 18:09:05 IST 2026
[2026-06-05 18:09:05,215.215 INFO    ] ================================================
[2026-06-05 18:09:05,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:09:05
[2026-06-05 18:09:06,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:09:06,676.676 INFO    ] Initializing speech engine...
[2026-06-05 18:09:06,690.690 INFO    ] 2026-06-05 18:09:06
[2026-06-05 18:09:06,977.977 INFO    ] 2026-06-05 18:09:06
[2026-06-05 18:09:07,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:09:07,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:09:07,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:09:07,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:09:07,452.452 INFO    ] time= 05/06/2026 18:09:07
[2026-06-05 18:09:07,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:09:07,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:09:07,665.665 INFO    ] No existing commands found in stream
[2026-06-05 18:09:12,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:09:12,686.686 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 18:09:14,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:09:14,934.934 INFO    ] Checking for system updates...
[2026-06-05 18:09:14,972.972 INFO    ] 200
[2026-06-05 18:09:14,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:15,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:09:15,039.039 INFO    ] No update needed
[2026-06-05 18:09:15,042.042 INFO    ] Checking for camera pi updates...
[2026-06-05 18:09:15,076.076 INFO    ] 200
[2026-06-05 18:09:15,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:15,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:09:15,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:09:15,160.160 INFO    ] No camera update needed
[2026-06-05 18:09:15,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:09:15,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:09:15,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:09:15,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:09:17,215.215 INFO    ] ================================================
[2026-06-05 18:09:17,234.234 INFO    ] Launching Daemon at Fri Jun  5 18:09:17 IST 2026
[2026-06-05 18:09:17,245.245 INFO    ] ================================================
[2026-06-05 18:09:17,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:09:17
[2026-06-05 18:09:18,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:09:18,861.861 INFO    ] Initializing speech engine...
[2026-06-05 18:09:18,872.872 INFO    ] 2026-06-05 18:09:18
[2026-06-05 18:09:19,177.177 INFO    ] 2026-06-05 18:09:19
[2026-06-05 18:09:19,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:09:19,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:09:19,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:09:19,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:09:19,696.696 INFO    ] time= 05/06/2026 18:09:19
[2026-06-05 18:09:19,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:09:19,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:09:19,842.842 INFO    ] No existing commands found in stream
[2026-06-05 18:09:24,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:09:24,868.868 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 18:09:27,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:09:27,442.442 INFO    ] Checking for system updates...
[2026-06-05 18:09:27,478.478 INFO    ] 200
[2026-06-05 18:09:27,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:27,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:09:27,537.537 INFO    ] No update needed
[2026-06-05 18:09:27,540.540 INFO    ] Checking for camera pi updates...
[2026-06-05 18:09:27,577.577 INFO    ] 200
[2026-06-05 18:09:27,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:27,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:09:27,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:09:27,666.666 INFO    ] No camera update needed
[2026-06-05 18:09:27,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:09:27,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:09:27,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:09:27,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:09:29,722.722 INFO    ] ================================================
[2026-06-05 18:09:29,737.737 INFO    ] Launching Daemon at Fri Jun  5 18:09:29 IST 2026
[2026-06-05 18:09:29,748.748 INFO    ] ================================================
[2026-06-05 18:09:30,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:09:30
[2026-06-05 18:09:31,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:09:31,278.278 INFO    ] Initializing speech engine...
[2026-06-05 18:09:31,291.291 INFO    ] 2026-06-05 18:09:31
[2026-06-05 18:09:31,566.566 INFO    ] 2026-06-05 18:09:31
[2026-06-05 18:09:31,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:09:31,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:09:31,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:09:31,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:09:31,964.964 INFO    ] time= 05/06/2026 18:09:31
[2026-06-05 18:09:31,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:09:31,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:09:32,135.135 INFO    ] No existing commands found in stream
[2026-06-05 18:09:37,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:09:37,173.173 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 18:09:38,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:09:38,876.876 INFO    ] Checking for system updates...
[2026-06-05 18:09:38,912.912 INFO    ] 200
[2026-06-05 18:09:38,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:38,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:09:38,969.969 INFO    ] No update needed
[2026-06-05 18:09:38,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 18:09:39,009.009 INFO    ] 200
[2026-06-05 18:09:39,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:39,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:09:39,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:09:39,098.098 INFO    ] No camera update needed
[2026-06-05 18:09:39,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:09:39,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:09:39,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:09:39,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:09:41,153.153 INFO    ] ================================================
[2026-06-05 18:09:41,169.169 INFO    ] Launching Daemon at Fri Jun  5 18:09:41 IST 2026
[2026-06-05 18:09:41,179.179 INFO    ] ================================================
[2026-06-05 18:09:41,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:09:41
[2026-06-05 18:09:42,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:09:42,602.602 INFO    ] Initializing speech engine...
[2026-06-05 18:09:42,617.617 INFO    ] 2026-06-05 18:09:42
[2026-06-05 18:09:42,900.900 INFO    ] 2026-06-05 18:09:42
[2026-06-05 18:09:42,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:09:43,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:09:43,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:09:43,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:09:43,296.296 INFO    ] time= 05/06/2026 18:09:43
[2026-06-05 18:09:43,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:09:43,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:09:43,494.494 INFO    ] No existing commands found in stream
[2026-06-05 18:09:48,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:09:48,519.519 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 18:09:50,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:09:50,809.809 INFO    ] Checking for system updates...
[2026-06-05 18:09:50,845.845 INFO    ] 200
[2026-06-05 18:09:50,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:50,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:09:50,904.904 INFO    ] No update needed
[2026-06-05 18:09:50,906.906 INFO    ] Checking for camera pi updates...
[2026-06-05 18:09:50,940.940 INFO    ] 200
[2026-06-05 18:09:50,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:09:50,983.983 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:09:51,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:09:51,036.036 INFO    ] No camera update needed
[2026-06-05 18:09:51,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:09:51,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:09:51,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:09:51,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:09:53,091.091 INFO    ] ================================================
[2026-06-05 18:09:53,106.106 INFO    ] Launching Daemon at Fri Jun  5 18:09:53 IST 2026
[2026-06-05 18:09:53,117.117 INFO    ] ================================================
[2026-06-05 18:09:53,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:09:53
[2026-06-05 18:09:54,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:09:54,564.564 INFO    ] Initializing speech engine...
[2026-06-05 18:09:54,572.572 INFO    ] 2026-06-05 18:09:54
[2026-06-05 18:09:54,859.859 INFO    ] 2026-06-05 18:09:54
[2026-06-05 18:09:54,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:09:55,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:09:55,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:09:55,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:09:55,350.350 INFO    ] time= 05/06/2026 18:09:55
[2026-06-05 18:09:55,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:09:55,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:09:55,555.555 INFO    ] No existing commands found in stream
[2026-06-05 18:10:00,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:10:00,572.572 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 18:10:02,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:10:02,888.888 INFO    ] Checking for system updates...
[2026-06-05 18:10:02,963.963 INFO    ] 200
[2026-06-05 18:10:02,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:03,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:10:03,060.060 INFO    ] No update needed
[2026-06-05 18:10:03,064.064 INFO    ] Checking for camera pi updates...
[2026-06-05 18:10:03,106.106 INFO    ] 200
[2026-06-05 18:10:03,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:03,173.173 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:10:03,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:10:03,311.311 INFO    ] No camera update needed
[2026-06-05 18:10:03,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:10:03,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:10:03,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:10:03,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:10:05,374.374 INFO    ] ================================================
[2026-06-05 18:10:05,389.389 INFO    ] Launching Daemon at Fri Jun  5 18:10:05 IST 2026
[2026-06-05 18:10:05,400.400 INFO    ] ================================================
[2026-06-05 18:10:05,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:10:05
[2026-06-05 18:10:06,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:10:06,833.833 INFO    ] Initializing speech engine...
[2026-06-05 18:10:06,851.851 INFO    ] 2026-06-05 18:10:06
[2026-06-05 18:10:07,142.142 INFO    ] 2026-06-05 18:10:07
[2026-06-05 18:10:07,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:10:07,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:10:07,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:10:07,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:10:07,514.514 INFO    ] time= 05/06/2026 18:10:07
[2026-06-05 18:10:07,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:10:07,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:10:07,675.675 INFO    ] No existing commands found in stream
[2026-06-05 18:10:12,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:10:12,697.697 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 18:10:15,871.871 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:10:15,874.874 INFO    ] Checking for system updates...
[2026-06-05 18:10:15,915.915 INFO    ] 200
[2026-06-05 18:10:15,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:15,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:10:15,974.974 INFO    ] No update needed
[2026-06-05 18:10:15,976.976 INFO    ] Checking for camera pi updates...
[2026-06-05 18:10:16,011.011 INFO    ] 200
[2026-06-05 18:10:16,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:16,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:10:16,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:10:16,097.097 INFO    ] No camera update needed
[2026-06-05 18:10:16,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:10:16,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:10:16,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:10:16,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:10:18,152.152 INFO    ] ================================================
[2026-06-05 18:10:18,168.168 INFO    ] Launching Daemon at Fri Jun  5 18:10:18 IST 2026
[2026-06-05 18:10:18,179.179 INFO    ] ================================================
[2026-06-05 18:10:18,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:10:18
[2026-06-05 18:10:19,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:10:19,809.809 INFO    ] Initializing speech engine...
[2026-06-05 18:10:19,822.822 INFO    ] 2026-06-05 18:10:19
[2026-06-05 18:10:20,071.071 INFO    ] 2026-06-05 18:10:20
[2026-06-05 18:10:20,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:10:20,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:10:20,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:10:20,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:10:20,502.502 INFO    ] time= 05/06/2026 18:10:20
[2026-06-05 18:10:20,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:10:20,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:10:20,644.644 INFO    ] No existing commands found in stream
[2026-06-05 18:10:25,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:10:25,672.672 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 18:10:27,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:10:27,752.752 INFO    ] Checking for system updates...
[2026-06-05 18:10:27,789.789 INFO    ] 200
[2026-06-05 18:10:27,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:27,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:10:27,856.856 INFO    ] No update needed
[2026-06-05 18:10:27,859.859 INFO    ] Checking for camera pi updates...
[2026-06-05 18:10:27,894.894 INFO    ] 200
[2026-06-05 18:10:27,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:27,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:10:27,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:10:27,993.993 INFO    ] No camera update needed
[2026-06-05 18:10:27,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:10:27,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:10:28,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:10:28,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:10:30,048.048 INFO    ] ================================================
[2026-06-05 18:10:30,064.064 INFO    ] Launching Daemon at Fri Jun  5 18:10:30 IST 2026
[2026-06-05 18:10:30,075.075 INFO    ] ================================================
[2026-06-05 18:10:30,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:10:30
[2026-06-05 18:10:31,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:10:31,774.774 INFO    ] Initializing speech engine...
[2026-06-05 18:10:31,792.792 INFO    ] 2026-06-05 18:10:31
[2026-06-05 18:10:32,108.108 INFO    ] 2026-06-05 18:10:32
[2026-06-05 18:10:32,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:10:32,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:10:32,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:10:33,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:10:33,150.150 INFO    ] time= 05/06/2026 18:10:33
[2026-06-05 18:10:33,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:10:33,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:10:33,302.302 INFO    ] No existing commands found in stream
[2026-06-05 18:10:38,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:10:38,315.315 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 18:10:40,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:10:40,104.104 INFO    ] Checking for system updates...
[2026-06-05 18:10:40,141.141 INFO    ] 200
[2026-06-05 18:10:40,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:40,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:10:40,198.198 INFO    ] No update needed
[2026-06-05 18:10:40,200.200 INFO    ] Checking for camera pi updates...
[2026-06-05 18:10:40,243.243 INFO    ] 200
[2026-06-05 18:10:40,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:40,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:10:40,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:10:40,334.334 INFO    ] No camera update needed
[2026-06-05 18:10:40,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:10:40,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:10:40,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:10:40,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:10:42,391.391 INFO    ] ================================================
[2026-06-05 18:10:42,407.407 INFO    ] Launching Daemon at Fri Jun  5 18:10:42 IST 2026
[2026-06-05 18:10:42,418.418 INFO    ] ================================================
[2026-06-05 18:10:42,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:10:42
[2026-06-05 18:10:43,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:10:43,833.833 INFO    ] Initializing speech engine...
[2026-06-05 18:10:43,848.848 INFO    ] 2026-06-05 18:10:43
[2026-06-05 18:10:44,128.128 INFO    ] 2026-06-05 18:10:44
[2026-06-05 18:10:44,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:10:44,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:10:44,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:10:44,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:10:44,518.518 INFO    ] time= 05/06/2026 18:10:44
[2026-06-05 18:10:44,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:10:44,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:10:44,718.718 INFO    ] No existing commands found in stream
[2026-06-05 18:10:49,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:10:49,741.741 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 18:10:51,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:10:51,610.610 INFO    ] Checking for system updates...
[2026-06-05 18:10:51,647.647 INFO    ] 200
[2026-06-05 18:10:51,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:51,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:10:51,705.705 INFO    ] No update needed
[2026-06-05 18:10:51,707.707 INFO    ] Checking for camera pi updates...
[2026-06-05 18:10:51,741.741 INFO    ] 200
[2026-06-05 18:10:51,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:10:51,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:10:51,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:10:51,839.839 INFO    ] No camera update needed
[2026-06-05 18:10:51,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:10:51,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:10:51,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:10:51,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:10:53,895.895 INFO    ] ================================================
[2026-06-05 18:10:53,911.911 INFO    ] Launching Daemon at Fri Jun  5 18:10:53 IST 2026
[2026-06-05 18:10:53,922.922 INFO    ] ================================================
[2026-06-05 18:10:54,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:10:54
[2026-06-05 18:10:55,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:10:55,379.379 INFO    ] Initializing speech engine...
[2026-06-05 18:10:55,386.386 INFO    ] 2026-06-05 18:10:55
[2026-06-05 18:10:55,697.697 INFO    ] 2026-06-05 18:10:55
[2026-06-05 18:10:55,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:10:55,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:10:55,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:10:56,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:10:56,099.099 INFO    ] time= 05/06/2026 18:10:56
[2026-06-05 18:10:56,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:10:56,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:10:56,230.230 INFO    ] No existing commands found in stream
[2026-06-05 18:11:01,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:11:01,244.244 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 18:11:03,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:11:03,495.495 INFO    ] Checking for system updates...
[2026-06-05 18:11:03,536.536 INFO    ] 200
[2026-06-05 18:11:03,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:03,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:11:03,595.595 INFO    ] No update needed
[2026-06-05 18:11:03,598.598 INFO    ] Checking for camera pi updates...
[2026-06-05 18:11:03,638.638 INFO    ] 200
[2026-06-05 18:11:03,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:03,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:11:03,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:11:03,748.748 INFO    ] No camera update needed
[2026-06-05 18:11:03,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:11:03,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:11:03,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:11:03,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:11:05,806.806 INFO    ] ================================================
[2026-06-05 18:11:05,822.822 INFO    ] Launching Daemon at Fri Jun  5 18:11:05 IST 2026
[2026-06-05 18:11:05,833.833 INFO    ] ================================================
[2026-06-05 18:11:06,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:11:06
[2026-06-05 18:11:07,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:11:07,376.376 INFO    ] Initializing speech engine...
[2026-06-05 18:11:07,382.382 INFO    ] 2026-06-05 18:11:07
[2026-06-05 18:11:07,660.660 INFO    ] 2026-06-05 18:11:07
[2026-06-05 18:11:07,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:11:07,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:11:07,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:11:08,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:11:08,039.039 INFO    ] time= 05/06/2026 18:11:08
[2026-06-05 18:11:08,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:11:08,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:11:08,170.170 INFO    ] No existing commands found in stream
[2026-06-05 18:11:13,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:11:13,203.203 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 18:11:17,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:11:17,535.535 INFO    ] Checking for system updates...
[2026-06-05 18:11:17,575.575 INFO    ] 200
[2026-06-05 18:11:17,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:17,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:11:17,641.641 INFO    ] No update needed
[2026-06-05 18:11:17,643.643 INFO    ] Checking for camera pi updates...
[2026-06-05 18:11:17,681.681 INFO    ] 200
[2026-06-05 18:11:17,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:17,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:11:17,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:11:17,779.779 INFO    ] No camera update needed
[2026-06-05 18:11:17,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:11:17,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:11:17,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:11:17,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:11:19,835.835 INFO    ] ================================================
[2026-06-05 18:11:19,851.851 INFO    ] Launching Daemon at Fri Jun  5 18:11:19 IST 2026
[2026-06-05 18:11:19,862.862 INFO    ] ================================================
[2026-06-05 18:11:20,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:11:20
[2026-06-05 18:11:21,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:11:21,420.420 INFO    ] Initializing speech engine...
[2026-06-05 18:11:21,432.432 INFO    ] 2026-06-05 18:11:21
[2026-06-05 18:11:21,739.739 INFO    ] 2026-06-05 18:11:21
[2026-06-05 18:11:21,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:11:21,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:11:21,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:11:22,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:11:22,203.203 INFO    ] time= 05/06/2026 18:11:22
[2026-06-05 18:11:22,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:11:22,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:11:22,404.404 INFO    ] No existing commands found in stream
[2026-06-05 18:11:27,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:11:27,420.420 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 18:11:29,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:11:29,269.269 INFO    ] Checking for system updates...
[2026-06-05 18:11:29,307.307 INFO    ] 200
[2026-06-05 18:11:29,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:29,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:11:29,375.375 INFO    ] No update needed
[2026-06-05 18:11:29,378.378 INFO    ] Checking for camera pi updates...
[2026-06-05 18:11:29,417.417 INFO    ] 200
[2026-06-05 18:11:29,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:29,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:11:29,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:11:29,506.506 INFO    ] No camera update needed
[2026-06-05 18:11:29,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:11:29,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:11:29,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:11:29,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:11:31,567.567 INFO    ] ================================================
[2026-06-05 18:11:31,583.583 INFO    ] Launching Daemon at Fri Jun  5 18:11:31 IST 2026
[2026-06-05 18:11:31,594.594 INFO    ] ================================================
[2026-06-05 18:11:32,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:11:32
[2026-06-05 18:11:32,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:11:33,087.087 INFO    ] Initializing speech engine...
[2026-06-05 18:11:33,093.093 INFO    ] 2026-06-05 18:11:33
[2026-06-05 18:11:33,405.405 INFO    ] 2026-06-05 18:11:33
[2026-06-05 18:11:33,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:11:33,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:11:34,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:11:34,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:11:34,232.232 INFO    ] time= 05/06/2026 18:11:34
[2026-06-05 18:11:34,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:11:34,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:11:34,449.449 INFO    ] No existing commands found in stream
[2026-06-05 18:11:39,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:11:39,482.482 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 18:11:40,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:11:40,571.571 INFO    ] Checking for system updates...
[2026-06-05 18:11:40,609.609 INFO    ] 200
[2026-06-05 18:11:40,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:40,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:11:40,676.676 INFO    ] No update needed
[2026-06-05 18:11:40,679.679 INFO    ] Checking for camera pi updates...
[2026-06-05 18:11:40,719.719 INFO    ] 200
[2026-06-05 18:11:40,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:40,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:11:40,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:11:40,815.815 INFO    ] No camera update needed
[2026-06-05 18:11:40,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:11:40,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:11:40,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:11:40,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:11:42,875.875 INFO    ] ================================================
[2026-06-05 18:11:42,890.890 INFO    ] Launching Daemon at Fri Jun  5 18:11:42 IST 2026
[2026-06-05 18:11:42,902.902 INFO    ] ================================================
[2026-06-05 18:11:43,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:11:43
[2026-06-05 18:11:44,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:11:44,574.574 INFO    ] Initializing speech engine...
[2026-06-05 18:11:44,586.586 INFO    ] 2026-06-05 18:11:44
[2026-06-05 18:11:44,871.871 INFO    ] 2026-06-05 18:11:44
[2026-06-05 18:11:44,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:11:45,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:11:45,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:11:45,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:11:45,320.320 INFO    ] time= 05/06/2026 18:11:45
[2026-06-05 18:11:45,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:11:45,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:11:45,559.559 INFO    ] No existing commands found in stream
[2026-06-05 18:11:50,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:11:50,590.590 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 18:11:53,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:11:53,532.532 INFO    ] Checking for system updates...
[2026-06-05 18:11:53,569.569 INFO    ] 200
[2026-06-05 18:11:53,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:53,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:11:53,638.638 INFO    ] No update needed
[2026-06-05 18:11:53,640.640 INFO    ] Checking for camera pi updates...
[2026-06-05 18:11:53,680.680 INFO    ] 200
[2026-06-05 18:11:53,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:11:53,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:11:53,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:11:53,790.790 INFO    ] No camera update needed
[2026-06-05 18:11:53,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:11:53,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:11:53,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:11:53,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:11:55,850.850 INFO    ] ================================================
[2026-06-05 18:11:55,865.865 INFO    ] Launching Daemon at Fri Jun  5 18:11:55 IST 2026
[2026-06-05 18:11:55,876.876 INFO    ] ================================================
[2026-06-05 18:11:56,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:11:56
[2026-06-05 18:11:57,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:11:57,302.302 INFO    ] Initializing speech engine...
[2026-06-05 18:11:57,311.311 INFO    ] 2026-06-05 18:11:57
[2026-06-05 18:11:57,557.557 INFO    ] 2026-06-05 18:11:57
[2026-06-05 18:11:57,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:11:57,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:11:57,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:11:57,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:11:58,028.028 INFO    ] time= 05/06/2026 18:11:57
[2026-06-05 18:11:58,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:11:58,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:11:58,259.259 INFO    ] No existing commands found in stream
[2026-06-05 18:12:03,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:12:03,283.283 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 18:12:04,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:12:04,927.927 INFO    ] Checking for system updates...
[2026-06-05 18:12:04,966.966 INFO    ] 200
[2026-06-05 18:12:04,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:05,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:12:05,027.027 INFO    ] No update needed
[2026-06-05 18:12:05,029.029 INFO    ] Checking for camera pi updates...
[2026-06-05 18:12:05,071.071 INFO    ] 200
[2026-06-05 18:12:05,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:05,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:12:05,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:12:05,177.177 INFO    ] No camera update needed
[2026-06-05 18:12:05,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:12:05,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:12:05,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:12:05,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:12:07,243.243 INFO    ] ================================================
[2026-06-05 18:12:07,259.259 INFO    ] Launching Daemon at Fri Jun  5 18:12:07 IST 2026
[2026-06-05 18:12:07,270.270 INFO    ] ================================================
[2026-06-05 18:12:07,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:12:07
[2026-06-05 18:12:08,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:12:08,697.697 INFO    ] Initializing speech engine...
[2026-06-05 18:12:08,706.706 INFO    ] 2026-06-05 18:12:08
[2026-06-05 18:12:08,963.963 INFO    ] 2026-06-05 18:12:08
[2026-06-05 18:12:08,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:12:09,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:12:09,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:12:09,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:12:09,425.425 INFO    ] time= 05/06/2026 18:12:09
[2026-06-05 18:12:09,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:12:09,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:12:09,646.646 INFO    ] No existing commands found in stream
[2026-06-05 18:12:14,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:12:14,676.676 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 18:12:18,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:12:18,133.133 INFO    ] Checking for system updates...
[2026-06-05 18:12:18,169.169 INFO    ] 200
[2026-06-05 18:12:18,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:18,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:12:18,227.227 INFO    ] No update needed
[2026-06-05 18:12:18,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 18:12:18,267.267 INFO    ] 200
[2026-06-05 18:12:18,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:18,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:12:18,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:12:18,476.476 INFO    ] No camera update needed
[2026-06-05 18:12:18,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:12:18,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:12:18,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:12:18,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:12:20,533.533 INFO    ] ================================================
[2026-06-05 18:12:20,548.548 INFO    ] Launching Daemon at Fri Jun  5 18:12:20 IST 2026
[2026-06-05 18:12:20,559.559 INFO    ] ================================================
[2026-06-05 18:12:21,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:12:21
[2026-06-05 18:12:21,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:12:22,005.005 INFO    ] Initializing speech engine...
[2026-06-05 18:12:22,016.016 INFO    ] 2026-06-05 18:12:22
[2026-06-05 18:12:22,281.281 INFO    ] 2026-06-05 18:12:22
[2026-06-05 18:12:22,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:12:22,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:12:22,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:12:22,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:12:22,747.747 INFO    ] time= 05/06/2026 18:12:22
[2026-06-05 18:12:22,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:12:22,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:12:22,956.956 INFO    ] No existing commands found in stream
[2026-06-05 18:12:27,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:12:27,973.973 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 18:12:30,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:12:30,244.244 INFO    ] Checking for system updates...
[2026-06-05 18:12:30,283.283 INFO    ] 200
[2026-06-05 18:12:30,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:30,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:12:30,348.348 INFO    ] No update needed
[2026-06-05 18:12:30,350.350 INFO    ] Checking for camera pi updates...
[2026-06-05 18:12:30,388.388 INFO    ] 200
[2026-06-05 18:12:30,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:30,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:12:30,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:12:30,482.482 INFO    ] No camera update needed
[2026-06-05 18:12:30,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:12:30,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:12:30,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:12:30,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:12:32,540.540 INFO    ] ================================================
[2026-06-05 18:12:32,558.558 INFO    ] Launching Daemon at Fri Jun  5 18:12:32 IST 2026
[2026-06-05 18:12:32,570.570 INFO    ] ================================================
[2026-06-05 18:12:33,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:12:33
[2026-06-05 18:12:33,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:12:34,230.230 INFO    ] Initializing speech engine...
[2026-06-05 18:12:34,239.239 INFO    ] 2026-06-05 18:12:34
[2026-06-05 18:12:34,521.521 INFO    ] 2026-06-05 18:12:34
[2026-06-05 18:12:34,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:12:35,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:12:35,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:12:35,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:12:35,313.313 INFO    ] time= 05/06/2026 18:12:35
[2026-06-05 18:12:35,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:12:35,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:12:35,639.639 INFO    ] No existing commands found in stream
[2026-06-05 18:12:40,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:12:40,655.655 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 18:12:42,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:12:42,672.672 INFO    ] Checking for system updates...
[2026-06-05 18:12:42,709.709 INFO    ] 200
[2026-06-05 18:12:42,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:42,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:12:42,771.771 INFO    ] No update needed
[2026-06-05 18:12:42,774.774 INFO    ] Checking for camera pi updates...
[2026-06-05 18:12:42,813.813 INFO    ] 200
[2026-06-05 18:12:42,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:42,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:12:42,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:12:42,914.914 INFO    ] No camera update needed
[2026-06-05 18:12:42,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:12:42,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:12:42,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:12:42,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:12:44,972.972 INFO    ] ================================================
[2026-06-05 18:12:44,988.988 INFO    ] Launching Daemon at Fri Jun  5 18:12:44 IST 2026
[2026-06-05 18:12:45,999.999 INFO    ] ================================================
[2026-06-05 18:12:45,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:12:45
[2026-06-05 18:12:46,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:12:46,644.644 INFO    ] Initializing speech engine...
[2026-06-05 18:12:46,655.655 INFO    ] 2026-06-05 18:12:46
[2026-06-05 18:12:46,935.935 INFO    ] 2026-06-05 18:12:46
[2026-06-05 18:12:47,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:12:47,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:12:47,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:12:47,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:12:47,469.469 INFO    ] time= 05/06/2026 18:12:47
[2026-06-05 18:12:47,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:12:47,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:12:47,639.639 INFO    ] No existing commands found in stream
[2026-06-05 18:12:52,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:12:52,679.679 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 18:12:53,690.690 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:12:53,693.693 INFO    ] Checking for system updates...
[2026-06-05 18:12:53,731.731 INFO    ] 200
[2026-06-05 18:12:53,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:53,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:12:53,799.799 INFO    ] No update needed
[2026-06-05 18:12:53,802.802 INFO    ] Checking for camera pi updates...
[2026-06-05 18:12:53,837.837 INFO    ] 200
[2026-06-05 18:12:53,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:12:53,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:12:53,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:12:53,937.937 INFO    ] No camera update needed
[2026-06-05 18:12:53,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:12:53,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:12:53,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:12:53,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:12:56,996.996 INFO    ] ================================================
[2026-06-05 18:12:56,011.011 INFO    ] Launching Daemon at Fri Jun  5 18:12:56 IST 2026
[2026-06-05 18:12:56,023.023 INFO    ] ================================================
[2026-06-05 18:12:56,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:12:56
[2026-06-05 18:12:57,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:12:57,443.443 INFO    ] Initializing speech engine...
[2026-06-05 18:12:57,450.450 INFO    ] 2026-06-05 18:12:57
[2026-06-05 18:12:57,743.743 INFO    ] 2026-06-05 18:12:57
[2026-06-05 18:12:57,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:12:57,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:12:57,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:12:58,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:12:58,161.161 INFO    ] time= 05/06/2026 18:12:58
[2026-06-05 18:12:58,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:12:58,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:12:58,253.253 INFO    ] No existing commands found in stream
[2026-06-05 18:13:03,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:13:03,281.281 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 18:13:05,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:13:05,811.811 INFO    ] Checking for system updates...
[2026-06-05 18:13:05,848.848 INFO    ] 200
[2026-06-05 18:13:05,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:05,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:13:05,914.914 INFO    ] No update needed
[2026-06-05 18:13:05,916.916 INFO    ] Checking for camera pi updates...
[2026-06-05 18:13:05,954.954 INFO    ] 200
[2026-06-05 18:13:05,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:05,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:13:06,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:13:06,029.029 INFO    ] No camera update needed
[2026-06-05 18:13:06,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:13:06,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:13:06,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:13:06,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:13:08,088.088 INFO    ] ================================================
[2026-06-05 18:13:08,105.105 INFO    ] Launching Daemon at Fri Jun  5 18:13:08 IST 2026
[2026-06-05 18:13:08,115.115 INFO    ] ================================================
[2026-06-05 18:13:08,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:13:08
[2026-06-05 18:13:09,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:13:09,604.604 INFO    ] Initializing speech engine...
[2026-06-05 18:13:09,619.619 INFO    ] 2026-06-05 18:13:09
[2026-06-05 18:13:09,889.889 INFO    ] 2026-06-05 18:13:09
[2026-06-05 18:13:09,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:13:10,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:13:10,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:13:10,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:13:10,360.360 INFO    ] time= 05/06/2026 18:13:10
[2026-06-05 18:13:10,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:13:10,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:13:10,608.608 INFO    ] No existing commands found in stream
[2026-06-05 18:13:15,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:13:15,631.631 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 18:13:17,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:13:17,901.901 INFO    ] Checking for system updates...
[2026-06-05 18:13:17,940.940 INFO    ] 200
[2026-06-05 18:13:17,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:17,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:13:18,000.000 INFO    ] No update needed
[2026-06-05 18:13:18,002.002 INFO    ] Checking for camera pi updates...
[2026-06-05 18:13:18,036.036 INFO    ] 200
[2026-06-05 18:13:18,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:18,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:13:18,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:13:18,133.133 INFO    ] No camera update needed
[2026-06-05 18:13:18,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:13:18,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:13:18,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:13:18,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:13:20,187.187 INFO    ] ================================================
[2026-06-05 18:13:20,203.203 INFO    ] Launching Daemon at Fri Jun  5 18:13:20 IST 2026
[2026-06-05 18:13:20,219.219 INFO    ] ================================================
[2026-06-05 18:13:20,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:13:20
[2026-06-05 18:13:21,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:13:21,892.892 INFO    ] Initializing speech engine...
[2026-06-05 18:13:21,904.904 INFO    ] 2026-06-05 18:13:21
[2026-06-05 18:13:22,186.186 INFO    ] 2026-06-05 18:13:22
[2026-06-05 18:13:22,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:13:22,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:13:22,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:13:22,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:13:22,630.630 INFO    ] time= 05/06/2026 18:13:22
[2026-06-05 18:13:22,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:13:22,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:13:22,852.852 INFO    ] No existing commands found in stream
[2026-06-05 18:13:27,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:13:27,889.889 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 18:13:28,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:13:28,786.786 INFO    ] Checking for system updates...
[2026-06-05 18:13:28,825.825 INFO    ] 200
[2026-06-05 18:13:28,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:28,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:13:28,892.892 INFO    ] No update needed
[2026-06-05 18:13:28,894.894 INFO    ] Checking for camera pi updates...
[2026-06-05 18:13:28,929.929 INFO    ] 200
[2026-06-05 18:13:28,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:28,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:13:29,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:13:29,023.023 INFO    ] No camera update needed
[2026-06-05 18:13:29,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:13:29,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:13:29,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:13:29,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:13:31,081.081 INFO    ] ================================================
[2026-06-05 18:13:31,096.096 INFO    ] Launching Daemon at Fri Jun  5 18:13:31 IST 2026
[2026-06-05 18:13:31,108.108 INFO    ] ================================================
[2026-06-05 18:13:31,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:13:31
[2026-06-05 18:13:32,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:13:32,875.875 INFO    ] Initializing speech engine...
[2026-06-05 18:13:32,890.890 INFO    ] 2026-06-05 18:13:32
[2026-06-05 18:13:33,179.179 INFO    ] 2026-06-05 18:13:33
[2026-06-05 18:13:33,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:13:35,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:13:35,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:13:36,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:13:36,196.196 INFO    ] time= 05/06/2026 18:13:36
[2026-06-05 18:13:36,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:13:36,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:13:36,259.259 INFO    ] No existing commands found in stream
[2026-06-05 18:13:41,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:13:41,273.273 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 18:13:42,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:13:42,737.737 INFO    ] Checking for system updates...
[2026-06-05 18:13:42,776.776 INFO    ] 200
[2026-06-05 18:13:42,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:42,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:13:42,836.836 INFO    ] No update needed
[2026-06-05 18:13:42,839.839 INFO    ] Checking for camera pi updates...
[2026-06-05 18:13:42,874.874 INFO    ] 200
[2026-06-05 18:13:42,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:42,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:13:42,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:13:42,967.967 INFO    ] No camera update needed
[2026-06-05 18:13:42,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:13:42,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:13:42,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:13:42,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:13:45,028.028 INFO    ] ================================================
[2026-06-05 18:13:45,044.044 INFO    ] Launching Daemon at Fri Jun  5 18:13:45 IST 2026
[2026-06-05 18:13:45,055.055 INFO    ] ================================================
[2026-06-05 18:13:45,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:13:45
[2026-06-05 18:13:46,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:13:46,716.716 INFO    ] Initializing speech engine...
[2026-06-05 18:13:46,724.724 INFO    ] 2026-06-05 18:13:46
[2026-06-05 18:13:47,025.025 INFO    ] 2026-06-05 18:13:46
[2026-06-05 18:13:47,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:13:47,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:13:47,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:13:47,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:13:47,569.569 INFO    ] time= 05/06/2026 18:13:47
[2026-06-05 18:13:47,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:13:47,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:13:47,729.729 INFO    ] No existing commands found in stream
[2026-06-05 18:13:52,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:13:52,752.752 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 18:13:54,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:13:54,216.216 INFO    ] Checking for system updates...
[2026-06-05 18:13:54,253.253 INFO    ] 200
[2026-06-05 18:13:54,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:54,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:13:54,314.314 INFO    ] No update needed
[2026-06-05 18:13:54,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 18:13:54,353.353 INFO    ] 200
[2026-06-05 18:13:54,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:13:54,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:13:54,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:13:54,454.454 INFO    ] No camera update needed
[2026-06-05 18:13:54,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:13:54,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:13:54,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:13:54,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:13:56,515.515 INFO    ] ================================================
[2026-06-05 18:13:56,530.530 INFO    ] Launching Daemon at Fri Jun  5 18:13:56 IST 2026
[2026-06-05 18:13:56,541.541 INFO    ] ================================================
[2026-06-05 18:13:57,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:13:57
[2026-06-05 18:13:57,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:13:58,194.194 INFO    ] Initializing speech engine...
[2026-06-05 18:13:58,202.202 INFO    ] 2026-06-05 18:13:58
[2026-06-05 18:13:58,493.493 INFO    ] 2026-06-05 18:13:58
[2026-06-05 18:13:58,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:13:58,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:13:58,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:13:58,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:13:58,976.976 INFO    ] time= 05/06/2026 18:13:58
[2026-06-05 18:13:59,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:13:59,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:13:59,175.175 INFO    ] No existing commands found in stream
[2026-06-05 18:14:04,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:14:04,210.210 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 18:14:07,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:14:07,472.472 INFO    ] Checking for system updates...
[2026-06-05 18:14:07,514.514 INFO    ] 200
[2026-06-05 18:14:07,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:07,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:14:07,584.584 INFO    ] No update needed
[2026-06-05 18:14:07,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 18:14:07,627.627 INFO    ] 200
[2026-06-05 18:14:07,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:07,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:14:07,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:14:07,719.719 INFO    ] No camera update needed
[2026-06-05 18:14:07,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:14:07,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:14:07,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:14:07,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:14:09,781.781 INFO    ] ================================================
[2026-06-05 18:14:09,796.796 INFO    ] Launching Daemon at Fri Jun  5 18:14:09 IST 2026
[2026-06-05 18:14:09,807.807 INFO    ] ================================================
[2026-06-05 18:14:10,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:14:10
[2026-06-05 18:14:10,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:14:11,245.245 INFO    ] Initializing speech engine...
[2026-06-05 18:14:11,260.260 INFO    ] 2026-06-05 18:14:11
[2026-06-05 18:14:11,538.538 INFO    ] 2026-06-05 18:14:11
[2026-06-05 18:14:11,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:14:11,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:14:11,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:14:11,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:14:11,950.950 INFO    ] time= 05/06/2026 18:14:11
[2026-06-05 18:14:11,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:14:11,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:14:12,065.065 INFO    ] No existing commands found in stream
[2026-06-05 18:14:17,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:14:17,103.103 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 18:14:20,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:14:20,859.859 INFO    ] Checking for system updates...
[2026-06-05 18:14:20,897.897 INFO    ] 200
[2026-06-05 18:14:20,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:20,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:14:20,958.958 INFO    ] No update needed
[2026-06-05 18:14:20,961.961 INFO    ] Checking for camera pi updates...
[2026-06-05 18:14:20,997.997 INFO    ] 200
[2026-06-05 18:14:21,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:21,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:14:21,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:14:21,190.190 INFO    ] No camera update needed
[2026-06-05 18:14:21,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:14:21,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:14:21,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:14:21,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:14:23,249.249 INFO    ] ================================================
[2026-06-05 18:14:23,265.265 INFO    ] Launching Daemon at Fri Jun  5 18:14:23 IST 2026
[2026-06-05 18:14:23,275.275 INFO    ] ================================================
[2026-06-05 18:14:23,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:14:23
[2026-06-05 18:14:24,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:14:24,737.737 INFO    ] Initializing speech engine...
[2026-06-05 18:14:24,746.746 INFO    ] 2026-06-05 18:14:24
[2026-06-05 18:14:25,028.028 INFO    ] 2026-06-05 18:14:25
[2026-06-05 18:14:25,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:14:25,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:14:25,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:14:25,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:14:25,471.471 INFO    ] time= 05/06/2026 18:14:25
[2026-06-05 18:14:25,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:14:25,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:14:25,577.577 INFO    ] No existing commands found in stream
[2026-06-05 18:14:30,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:14:30,592.592 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 18:14:33,211.211 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:14:33,214.214 INFO    ] Checking for system updates...
[2026-06-05 18:14:33,250.250 INFO    ] 200
[2026-06-05 18:14:33,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:33,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:14:33,309.309 INFO    ] No update needed
[2026-06-05 18:14:33,311.311 INFO    ] Checking for camera pi updates...
[2026-06-05 18:14:33,345.345 INFO    ] 200
[2026-06-05 18:14:33,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:33,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:14:33,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:14:33,436.436 INFO    ] No camera update needed
[2026-06-05 18:14:33,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:14:33,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:14:33,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:14:33,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:14:35,492.492 INFO    ] ================================================
[2026-06-05 18:14:35,508.508 INFO    ] Launching Daemon at Fri Jun  5 18:14:35 IST 2026
[2026-06-05 18:14:35,520.520 INFO    ] ================================================
[2026-06-05 18:14:36,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:14:36
[2026-06-05 18:14:36,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:14:36,993.993 INFO    ] Initializing speech engine...
[2026-06-05 18:14:37,002.002 INFO    ] 2026-06-05 18:14:36
[2026-06-05 18:14:37,268.268 INFO    ] 2026-06-05 18:14:37
[2026-06-05 18:14:37,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:14:37,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:14:37,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:14:37,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:14:37,753.753 INFO    ] time= 05/06/2026 18:14:37
[2026-06-05 18:14:37,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:14:37,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:14:37,966.966 INFO    ] No existing commands found in stream
[2026-06-05 18:14:42,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:14:43,000.000 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 18:14:44,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:14:44,171.171 INFO    ] Checking for system updates...
[2026-06-05 18:14:44,207.207 INFO    ] 200
[2026-06-05 18:14:44,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:44,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:14:44,265.265 INFO    ] No update needed
[2026-06-05 18:14:44,268.268 INFO    ] Checking for camera pi updates...
[2026-06-05 18:14:44,301.301 INFO    ] 200
[2026-06-05 18:14:44,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:44,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:14:44,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:14:44,394.394 INFO    ] No camera update needed
[2026-06-05 18:14:44,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:14:44,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:14:44,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:14:44,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:14:46,452.452 INFO    ] ================================================
[2026-06-05 18:14:46,468.468 INFO    ] Launching Daemon at Fri Jun  5 18:14:46 IST 2026
[2026-06-05 18:14:46,479.479 INFO    ] ================================================
[2026-06-05 18:14:47,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:14:47
[2026-06-05 18:14:47,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:14:47,915.915 INFO    ] Initializing speech engine...
[2026-06-05 18:14:47,923.923 INFO    ] 2026-06-05 18:14:47
[2026-06-05 18:14:48,183.183 INFO    ] 2026-06-05 18:14:48
[2026-06-05 18:14:48,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:14:48,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:14:48,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:14:48,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:14:48,642.642 INFO    ] time= 05/06/2026 18:14:48
[2026-06-05 18:14:48,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:14:48,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:14:48,862.862 INFO    ] No existing commands found in stream
[2026-06-05 18:14:53,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:14:53,877.877 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 18:14:57,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:14:57,532.532 INFO    ] Checking for system updates...
[2026-06-05 18:14:57,569.569 INFO    ] 200
[2026-06-05 18:14:57,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:57,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:14:57,628.628 INFO    ] No update needed
[2026-06-05 18:14:57,630.630 INFO    ] Checking for camera pi updates...
[2026-06-05 18:14:57,677.677 INFO    ] 200
[2026-06-05 18:14:57,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:14:57,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:14:57,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:14:57,765.765 INFO    ] No camera update needed
[2026-06-05 18:14:57,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:14:57,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:14:57,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:14:57,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:14:59,821.821 INFO    ] ================================================
[2026-06-05 18:14:59,837.837 INFO    ] Launching Daemon at Fri Jun  5 18:14:59 IST 2026
[2026-06-05 18:14:59,848.848 INFO    ] ================================================
[2026-06-05 18:15:00,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:15:00
[2026-06-05 18:15:01,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:15:01,368.368 INFO    ] Initializing speech engine...
[2026-06-05 18:15:01,393.393 INFO    ] 2026-06-05 18:15:01
[2026-06-05 18:15:01,675.675 INFO    ] 2026-06-05 18:15:01
[2026-06-05 18:15:01,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:15:01,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:15:01,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:15:02,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:15:02,132.132 INFO    ] time= 05/06/2026 18:15:02
[2026-06-05 18:15:02,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:15:02,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:15:02,253.253 INFO    ] No existing commands found in stream
[2026-06-05 18:15:07,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:15:07,300.300 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 18:15:10,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:15:10,324.324 INFO    ] Checking for system updates...
[2026-06-05 18:15:10,364.364 INFO    ] 200
[2026-06-05 18:15:10,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:15:10,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:15:10,441.441 INFO    ] No update needed
[2026-06-05 18:15:10,443.443 INFO    ] Checking for camera pi updates...
[2026-06-05 18:15:10,477.477 INFO    ] 200
[2026-06-05 18:15:10,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:15:10,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:15:10,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:15:10,568.568 INFO    ] No camera update needed
[2026-06-05 18:15:10,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:15:10,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:15:10,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:15:10,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:15:12,623.623 INFO    ] ================================================
[2026-06-05 18:15:12,639.639 INFO    ] Launching Daemon at Fri Jun  5 18:15:12 IST 2026
[2026-06-05 18:15:12,650.650 INFO    ] ================================================
[2026-06-05 18:15:13,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:15:13
[2026-06-05 18:15:13,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:15:14,134.134 INFO    ] Initializing speech engine...
[2026-06-05 18:15:14,141.141 INFO    ] 2026-06-05 18:15:14
[2026-06-05 18:15:14,404.404 INFO    ] 2026-06-05 18:15:14
[2026-06-05 18:15:14,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:15:14,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:15:14,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:15:14,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:15:14,839.839 INFO    ] time= 05/06/2026 18:15:14
[2026-06-05 18:15:14,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:15:14,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:15:15,089.089 INFO    ] No existing commands found in stream
[2026-06-05 18:15:20,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:15:20,117.117 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 18:15:23,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:15:23,246.246 INFO    ] Checking for system updates...
[2026-06-05 18:15:23,283.283 INFO    ] 200
[2026-06-05 18:15:23,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:15:23,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:15:23,343.343 INFO    ] No update needed
[2026-06-05 18:15:23,346.346 INFO    ] Checking for camera pi updates...
[2026-06-05 18:15:23,381.381 INFO    ] 200
[2026-06-05 18:15:23,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:15:23,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:15:23,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:15:23,465.465 INFO    ] No camera update needed
[2026-06-05 18:15:23,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:15:23,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:15:23,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:15:23,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:15:25,523.523 INFO    ] ================================================
[2026-06-05 18:15:25,539.539 INFO    ] Launching Daemon at Fri Jun  5 18:15:25 IST 2026
[2026-06-05 18:15:25,549.549 INFO    ] ================================================
[2026-06-05 18:15:26,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:15:26
[2026-06-05 18:15:26,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:15:26,978.978 INFO    ] Initializing speech engine...
[2026-06-05 18:15:26,986.986 INFO    ] 2026-06-05 18:15:26
[2026-06-05 18:15:27,281.281 INFO    ] 2026-06-05 18:15:27
[2026-06-05 18:15:27,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:15:27,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:15:27,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:15:27,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:15:27,664.664 INFO    ] time= 05/06/2026 18:15:27
[2026-06-05 18:15:27,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:15:27,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:15:27,791.791 INFO    ] No existing commands found in stream
[2026-06-05 18:15:32,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:15:32,807.807 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 18:15:38,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:15:38,565.565 INFO    ] Checking for system updates...
[2026-06-05 18:15:38,602.602 INFO    ] 200
[2026-06-05 18:15:38,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:15:38,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:15:38,660.660 INFO    ] No update needed
[2026-06-05 18:15:38,662.662 INFO    ] Checking for camera pi updates...
[2026-06-05 18:15:38,696.696 INFO    ] 200
[2026-06-05 18:15:38,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:15:38,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:15:38,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:15:38,793.793 INFO    ] No camera update needed
[2026-06-05 18:15:38,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:15:38,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:15:38,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:15:38,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:15:40,850.850 INFO    ] ================================================
[2026-06-05 18:15:40,865.865 INFO    ] Launching Daemon at Fri Jun  5 18:15:40 IST 2026
[2026-06-05 18:15:40,876.876 INFO    ] ================================================
[2026-06-05 18:15:41,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:15:41
[2026-06-05 18:15:42,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:15:42,286.286 INFO    ] Initializing speech engine...
[2026-06-05 18:15:42,295.295 INFO    ] 2026-06-05 18:15:42
[2026-06-05 18:15:42,587.587 INFO    ] 2026-06-05 18:15:42
[2026-06-05 18:15:42,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:15:42,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:15:42,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:15:42,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:15:43,002.002 INFO    ] time= 05/06/2026 18:15:42
[2026-06-05 18:15:43,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:15:43,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:15:43,094.094 INFO    ] No existing commands found in stream
[2026-06-05 18:15:48,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:15:48,128.128 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 18:15:52,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:15:52,241.241 INFO    ] Checking for system updates...
[2026-06-05 18:15:52,277.277 INFO    ] 200
[2026-06-05 18:15:52,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:15:52,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:15:52,341.341 INFO    ] No update needed
[2026-06-05 18:15:52,343.343 INFO    ] Checking for camera pi updates...
[2026-06-05 18:15:52,380.380 INFO    ] 200
[2026-06-05 18:15:52,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:15:52,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:15:52,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:15:52,493.493 INFO    ] No camera update needed
[2026-06-05 18:15:52,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:15:52,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:15:52,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:15:52,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:15:54,549.549 INFO    ] ================================================
[2026-06-05 18:15:54,564.564 INFO    ] Launching Daemon at Fri Jun  5 18:15:54 IST 2026
[2026-06-05 18:15:54,580.580 INFO    ] ================================================
[2026-06-05 18:15:55,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:15:55
[2026-06-05 18:15:55,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:15:56,008.008 INFO    ] Initializing speech engine...
[2026-06-05 18:15:56,023.023 INFO    ] 2026-06-05 18:15:56
[2026-06-05 18:15:56,289.289 INFO    ] 2026-06-05 18:15:56
[2026-06-05 18:15:56,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:15:56,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:15:56,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:15:56,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:15:56,668.668 INFO    ] time= 05/06/2026 18:15:56
[2026-06-05 18:15:56,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:15:56,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:15:56,859.859 INFO    ] No existing commands found in stream
[2026-06-05 18:16:01,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:16:01,881.881 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 18:16:02,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:16:02,785.785 INFO    ] Checking for system updates...
[2026-06-05 18:16:02,829.829 INFO    ] 200
[2026-06-05 18:16:02,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:02,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:16:02,927.927 INFO    ] No update needed
[2026-06-05 18:16:02,931.931 INFO    ] Checking for camera pi updates...
[2026-06-05 18:16:02,979.979 INFO    ] 200
[2026-06-05 18:16:02,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:03,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:16:03,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:16:03,096.096 INFO    ] No camera update needed
[2026-06-05 18:16:03,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:16:03,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:16:03,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:16:03,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:16:05,155.155 INFO    ] ================================================
[2026-06-05 18:16:05,171.171 INFO    ] Launching Daemon at Fri Jun  5 18:16:05 IST 2026
[2026-06-05 18:16:05,182.182 INFO    ] ================================================
[2026-06-05 18:16:05,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:16:05
[2026-06-05 18:16:06,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:16:06,595.595 INFO    ] Initializing speech engine...
[2026-06-05 18:16:06,609.609 INFO    ] 2026-06-05 18:16:06
[2026-06-05 18:16:06,871.871 INFO    ] 2026-06-05 18:16:06
[2026-06-05 18:16:06,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:16:09,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:16:09,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:16:09,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:16:09,218.218 INFO    ] time= 05/06/2026 18:16:09
[2026-06-05 18:16:09,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:16:09,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:16:09,313.313 INFO    ] No existing commands found in stream
[2026-06-05 18:16:14,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:16:14,335.335 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 18:16:15,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:16:15,094.094 INFO    ] Checking for system updates...
[2026-06-05 18:16:15,131.131 INFO    ] 200
[2026-06-05 18:16:15,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:15,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:16:15,190.190 INFO    ] No update needed
[2026-06-05 18:16:15,192.192 INFO    ] Checking for camera pi updates...
[2026-06-05 18:16:15,230.230 INFO    ] 200
[2026-06-05 18:16:15,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:15,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:16:15,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:16:15,323.323 INFO    ] No camera update needed
[2026-06-05 18:16:15,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:16:15,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:16:15,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:16:15,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:16:17,380.380 INFO    ] ================================================
[2026-06-05 18:16:17,396.396 INFO    ] Launching Daemon at Fri Jun  5 18:16:17 IST 2026
[2026-06-05 18:16:17,407.407 INFO    ] ================================================
[2026-06-05 18:16:18,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:16:18
[2026-06-05 18:16:18,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:16:18,983.983 INFO    ] Initializing speech engine...
[2026-06-05 18:16:18,992.992 INFO    ] 2026-06-05 18:16:18
[2026-06-05 18:16:19,239.239 INFO    ] 2026-06-05 18:16:19
[2026-06-05 18:16:19,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:16:19,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:16:19,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:16:19,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:16:19,610.610 INFO    ] time= 05/06/2026 18:16:19
[2026-06-05 18:16:19,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:16:19,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:16:19,785.785 INFO    ] No existing commands found in stream
[2026-06-05 18:16:24,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:16:24,813.813 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 18:16:26,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:16:26,578.578 INFO    ] Checking for system updates...
[2026-06-05 18:16:26,618.618 INFO    ] 200
[2026-06-05 18:16:26,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:26,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:16:26,685.685 INFO    ] No update needed
[2026-06-05 18:16:26,687.687 INFO    ] Checking for camera pi updates...
[2026-06-05 18:16:26,721.721 INFO    ] 200
[2026-06-05 18:16:26,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:26,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:16:26,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:16:26,914.914 INFO    ] No camera update needed
[2026-06-05 18:16:26,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:16:26,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:16:26,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:16:26,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:16:28,973.973 INFO    ] ================================================
[2026-06-05 18:16:28,988.988 INFO    ] Launching Daemon at Fri Jun  5 18:16:28 IST 2026
[2026-06-05 18:16:29,000.000 INFO    ] ================================================
[2026-06-05 18:16:29,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:16:29
[2026-06-05 18:16:30,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:16:30,634.634 INFO    ] Initializing speech engine...
[2026-06-05 18:16:30,641.641 INFO    ] 2026-06-05 18:16:30
[2026-06-05 18:16:30,899.899 INFO    ] 2026-06-05 18:16:30
[2026-06-05 18:16:30,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:16:31,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:16:31,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:16:31,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:16:31,368.368 INFO    ] time= 05/06/2026 18:16:31
[2026-06-05 18:16:31,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:16:31,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:16:31,566.566 INFO    ] No existing commands found in stream
[2026-06-05 18:16:36,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:16:36,590.590 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 18:16:40,376.376 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:16:40,379.379 INFO    ] Checking for system updates...
[2026-06-05 18:16:40,420.420 INFO    ] 200
[2026-06-05 18:16:40,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:40,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:16:40,478.478 INFO    ] No update needed
[2026-06-05 18:16:40,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 18:16:40,516.516 INFO    ] 200
[2026-06-05 18:16:40,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:40,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:16:40,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:16:40,601.601 INFO    ] No camera update needed
[2026-06-05 18:16:40,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:16:40,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:16:40,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:16:40,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:16:42,661.661 INFO    ] ================================================
[2026-06-05 18:16:42,677.677 INFO    ] Launching Daemon at Fri Jun  5 18:16:42 IST 2026
[2026-06-05 18:16:42,689.689 INFO    ] ================================================
[2026-06-05 18:16:43,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:16:43
[2026-06-05 18:16:43,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:16:44,101.101 INFO    ] Initializing speech engine...
[2026-06-05 18:16:44,121.121 INFO    ] 2026-06-05 18:16:44
[2026-06-05 18:16:44,367.367 INFO    ] 2026-06-05 18:16:44
[2026-06-05 18:16:44,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:16:44,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:16:44,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:16:44,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:16:44,838.838 INFO    ] time= 05/06/2026 18:16:44
[2026-06-05 18:16:44,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:16:44,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:16:45,075.075 INFO    ] No existing commands found in stream
[2026-06-05 18:16:50,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:16:50,092.092 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 18:16:52,164.164 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:16:52,167.167 INFO    ] Checking for system updates...
[2026-06-05 18:16:52,203.203 INFO    ] 200
[2026-06-05 18:16:52,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:52,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:16:52,261.261 INFO    ] No update needed
[2026-06-05 18:16:52,264.264 INFO    ] Checking for camera pi updates...
[2026-06-05 18:16:52,302.302 INFO    ] 200
[2026-06-05 18:16:52,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:16:52,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:16:52,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:16:52,405.405 INFO    ] No camera update needed
[2026-06-05 18:16:52,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:16:52,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:16:52,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:16:52,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:16:54,463.463 INFO    ] ================================================
[2026-06-05 18:16:54,478.478 INFO    ] Launching Daemon at Fri Jun  5 18:16:54 IST 2026
[2026-06-05 18:16:54,489.489 INFO    ] ================================================
[2026-06-05 18:16:55,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:16:55
[2026-06-05 18:16:55,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:16:55,914.914 INFO    ] Initializing speech engine...
[2026-06-05 18:16:55,924.924 INFO    ] 2026-06-05 18:16:55
[2026-06-05 18:16:56,187.187 INFO    ] 2026-06-05 18:16:56
[2026-06-05 18:16:56,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:16:56,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:16:56,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:16:56,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:16:56,667.667 INFO    ] time= 05/06/2026 18:16:56
[2026-06-05 18:16:56,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:16:56,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:16:56,856.856 INFO    ] No existing commands found in stream
[2026-06-05 18:17:01,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:17:01,887.887 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 18:17:02,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:17:02,580.580 INFO    ] Checking for system updates...
[2026-06-05 18:17:02,626.626 INFO    ] 200
[2026-06-05 18:17:02,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:02,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:17:02,702.702 INFO    ] No update needed
[2026-06-05 18:17:02,705.705 INFO    ] Checking for camera pi updates...
[2026-06-05 18:17:02,755.755 INFO    ] 200
[2026-06-05 18:17:02,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:02,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:17:02,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:17:02,868.868 INFO    ] No camera update needed
[2026-06-05 18:17:02,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:17:02,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:17:02,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:17:02,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:17:04,927.927 INFO    ] ================================================
[2026-06-05 18:17:04,943.943 INFO    ] Launching Daemon at Fri Jun  5 18:17:04 IST 2026
[2026-06-05 18:17:04,954.954 INFO    ] ================================================
[2026-06-05 18:17:05,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:17:05
[2026-06-05 18:17:06,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:17:06,545.545 INFO    ] Initializing speech engine...
[2026-06-05 18:17:06,553.553 INFO    ] 2026-06-05 18:17:06
[2026-06-05 18:17:06,838.838 INFO    ] 2026-06-05 18:17:06
[2026-06-05 18:17:06,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:17:09,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:17:09,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:17:10,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:17:10,185.185 INFO    ] time= 05/06/2026 18:17:10
[2026-06-05 18:17:10,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:17:10,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:17:10,257.257 INFO    ] No existing commands found in stream
[2026-06-05 18:17:15,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:17:15,270.270 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 18:17:18,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:17:18,135.135 INFO    ] Checking for system updates...
[2026-06-05 18:17:18,176.176 INFO    ] 200
[2026-06-05 18:17:18,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:18,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:17:18,238.238 INFO    ] No update needed
[2026-06-05 18:17:18,241.241 INFO    ] Checking for camera pi updates...
[2026-06-05 18:17:18,276.276 INFO    ] 200
[2026-06-05 18:17:18,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:18,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:17:18,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:17:18,369.369 INFO    ] No camera update needed
[2026-06-05 18:17:18,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:17:18,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:17:18,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:17:18,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:17:20,433.433 INFO    ] ================================================
[2026-06-05 18:17:20,448.448 INFO    ] Launching Daemon at Fri Jun  5 18:17:20 IST 2026
[2026-06-05 18:17:20,459.459 INFO    ] ================================================
[2026-06-05 18:17:21,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:17:21
[2026-06-05 18:17:21,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:17:21,879.879 INFO    ] Initializing speech engine...
[2026-06-05 18:17:21,895.895 INFO    ] 2026-06-05 18:17:21
[2026-06-05 18:17:22,188.188 INFO    ] 2026-06-05 18:17:22
[2026-06-05 18:17:22,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:17:22,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:17:22,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:17:22,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:17:22,577.577 INFO    ] time= 05/06/2026 18:17:22
[2026-06-05 18:17:22,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:17:22,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:17:22,772.772 INFO    ] No existing commands found in stream
[2026-06-05 18:17:27,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:17:27,789.789 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 18:17:28,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:17:28,519.519 INFO    ] Checking for system updates...
[2026-06-05 18:17:28,556.556 INFO    ] 200
[2026-06-05 18:17:28,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:28,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:17:28,620.620 INFO    ] No update needed
[2026-06-05 18:17:28,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 18:17:28,660.660 INFO    ] 200
[2026-06-05 18:17:28,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:28,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:17:28,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:17:28,752.752 INFO    ] No camera update needed
[2026-06-05 18:17:28,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:17:28,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:17:28,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:17:28,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:17:30,813.813 INFO    ] ================================================
[2026-06-05 18:17:30,829.829 INFO    ] Launching Daemon at Fri Jun  5 18:17:30 IST 2026
[2026-06-05 18:17:30,840.840 INFO    ] ================================================
[2026-06-05 18:17:31,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:17:31
[2026-06-05 18:17:32,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:17:32,331.331 INFO    ] Initializing speech engine...
[2026-06-05 18:17:32,339.339 INFO    ] 2026-06-05 18:17:32
[2026-06-05 18:17:32,593.593 INFO    ] 2026-06-05 18:17:32
[2026-06-05 18:17:32,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:17:32,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:17:32,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:17:33,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:17:33,102.102 INFO    ] time= 05/06/2026 18:17:33
[2026-06-05 18:17:33,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:17:33,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:17:33,320.320 INFO    ] No existing commands found in stream
[2026-06-05 18:17:38,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:17:38,353.353 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 18:17:40,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:17:40,865.865 INFO    ] Checking for system updates...
[2026-06-05 18:17:40,905.905 INFO    ] 200
[2026-06-05 18:17:40,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:40,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:17:40,969.969 INFO    ] No update needed
[2026-06-05 18:17:40,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 18:17:41,008.008 INFO    ] 200
[2026-06-05 18:17:41,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:41,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:17:41,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:17:41,096.096 INFO    ] No camera update needed
[2026-06-05 18:17:41,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:17:41,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:17:41,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:17:41,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:17:43,152.152 INFO    ] ================================================
[2026-06-05 18:17:43,167.167 INFO    ] Launching Daemon at Fri Jun  5 18:17:43 IST 2026
[2026-06-05 18:17:43,177.177 INFO    ] ================================================
[2026-06-05 18:17:43,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:17:43
[2026-06-05 18:17:44,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:17:44,678.678 INFO    ] Initializing speech engine...
[2026-06-05 18:17:44,686.686 INFO    ] 2026-06-05 18:17:44
[2026-06-05 18:17:44,952.952 INFO    ] 2026-06-05 18:17:44
[2026-06-05 18:17:44,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:17:45,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:17:45,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:17:45,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:17:45,327.327 INFO    ] time= 05/06/2026 18:17:45
[2026-06-05 18:17:45,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:17:45,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:17:45,523.523 INFO    ] No existing commands found in stream
[2026-06-05 18:17:50,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:17:50,537.537 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 18:17:53,664.664 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:17:53,667.667 INFO    ] Checking for system updates...
[2026-06-05 18:17:53,707.707 INFO    ] 200
[2026-06-05 18:17:53,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:53,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:17:53,765.765 INFO    ] No update needed
[2026-06-05 18:17:53,767.767 INFO    ] Checking for camera pi updates...
[2026-06-05 18:17:53,802.802 INFO    ] 200
[2026-06-05 18:17:53,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:17:53,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:17:53,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:17:53,893.893 INFO    ] No camera update needed
[2026-06-05 18:17:53,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:17:53,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:17:53,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:17:53,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:17:55,950.950 INFO    ] ================================================
[2026-06-05 18:17:55,967.967 INFO    ] Launching Daemon at Fri Jun  5 18:17:55 IST 2026
[2026-06-05 18:17:55,978.978 INFO    ] ================================================
[2026-06-05 18:17:56,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:17:56
[2026-06-05 18:17:57,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:17:57,645.645 INFO    ] Initializing speech engine...
[2026-06-05 18:17:57,653.653 INFO    ] 2026-06-05 18:17:57
[2026-06-05 18:17:57,911.911 INFO    ] 2026-06-05 18:17:57
[2026-06-05 18:17:57,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:17:58,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:17:58,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:17:58,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:17:58,372.372 INFO    ] time= 05/06/2026 18:17:58
[2026-06-05 18:17:58,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:17:58,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:17:58,609.609 INFO    ] No existing commands found in stream
[2026-06-05 18:18:03,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:18:03,627.627 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 18:18:05,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:18:05,726.726 INFO    ] Checking for system updates...
[2026-06-05 18:18:05,766.766 INFO    ] 200
[2026-06-05 18:18:05,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:05,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:05,824.824 INFO    ] No update needed
[2026-06-05 18:18:05,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 18:18:05,864.864 INFO    ] 200
[2026-06-05 18:18:05,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:05,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:18:05,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:05,962.962 INFO    ] No camera update needed
[2026-06-05 18:18:05,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:18:05,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:18:05,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:18:05,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:18:08,024.024 INFO    ] ================================================
[2026-06-05 18:18:08,041.041 INFO    ] Launching Daemon at Fri Jun  5 18:18:08 IST 2026
[2026-06-05 18:18:08,052.052 INFO    ] ================================================
[2026-06-05 18:18:08,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:18:08
[2026-06-05 18:18:09,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:18:09,644.644 INFO    ] Initializing speech engine...
[2026-06-05 18:18:09,653.653 INFO    ] 2026-06-05 18:18:09
[2026-06-05 18:18:09,969.969 INFO    ] 2026-06-05 18:18:09
[2026-06-05 18:18:10,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:18:11,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:18:11,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:18:11,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:18:11,186.186 INFO    ] time= 05/06/2026 18:18:11
[2026-06-05 18:18:11,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:18:11,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:18:11,312.312 INFO    ] No existing commands found in stream
[2026-06-05 18:18:16,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:18:16,328.328 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 18:18:17,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:18:17,744.744 INFO    ] Checking for system updates...
[2026-06-05 18:18:17,781.781 INFO    ] 200
[2026-06-05 18:18:17,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:17,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:17,845.845 INFO    ] No update needed
[2026-06-05 18:18:17,848.848 INFO    ] Checking for camera pi updates...
[2026-06-05 18:18:17,887.887 INFO    ] 200
[2026-06-05 18:18:17,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:17,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:18:17,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:17,976.976 INFO    ] No camera update needed
[2026-06-05 18:18:17,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:18:17,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:18:17,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:18:17,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:18:20,036.036 INFO    ] ================================================
[2026-06-05 18:18:20,052.052 INFO    ] Launching Daemon at Fri Jun  5 18:18:20 IST 2026
[2026-06-05 18:18:20,063.063 INFO    ] ================================================
[2026-06-05 18:18:20,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:18:20
[2026-06-05 18:18:21,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:18:21,547.547 INFO    ] Initializing speech engine...
[2026-06-05 18:18:21,555.555 INFO    ] 2026-06-05 18:18:21
[2026-06-05 18:18:21,822.822 INFO    ] 2026-06-05 18:18:21
[2026-06-05 18:18:21,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:18:22,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:18:22,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:18:22,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:18:22,339.339 INFO    ] time= 05/06/2026 18:18:22
[2026-06-05 18:18:22,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:18:22,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:18:22,520.520 INFO    ] No existing commands found in stream
[2026-06-05 18:18:27,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:18:27,551.551 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 18:18:28,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:18:28,571.571 INFO    ] Checking for system updates...
[2026-06-05 18:18:28,611.611 INFO    ] 200
[2026-06-05 18:18:28,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:28,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:28,669.669 INFO    ] No update needed
[2026-06-05 18:18:28,672.672 INFO    ] Checking for camera pi updates...
[2026-06-05 18:18:28,705.705 INFO    ] 200
[2026-06-05 18:18:28,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:28,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:18:28,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:28,804.804 INFO    ] No camera update needed
[2026-06-05 18:18:28,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:18:28,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:18:28,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:18:28,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:18:30,861.861 INFO    ] ================================================
[2026-06-05 18:18:30,876.876 INFO    ] Launching Daemon at Fri Jun  5 18:18:30 IST 2026
[2026-06-05 18:18:30,887.887 INFO    ] ================================================
[2026-06-05 18:18:31,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:18:31
[2026-06-05 18:18:32,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:18:32,374.374 INFO    ] Initializing speech engine...
[2026-06-05 18:18:32,388.388 INFO    ] 2026-06-05 18:18:32
[2026-06-05 18:18:32,643.643 INFO    ] 2026-06-05 18:18:32
[2026-06-05 18:18:32,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:18:32,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:18:32,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:18:33,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:18:33,130.130 INFO    ] time= 05/06/2026 18:18:33
[2026-06-05 18:18:33,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:18:33,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:18:33,369.369 INFO    ] No existing commands found in stream
[2026-06-05 18:18:38,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:18:38,397.397 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 18:18:41,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:18:41,910.910 INFO    ] Checking for system updates...
[2026-06-05 18:18:41,950.950 INFO    ] 200
[2026-06-05 18:18:41,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:42,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:42,015.015 INFO    ] No update needed
[2026-06-05 18:18:42,018.018 INFO    ] Checking for camera pi updates...
[2026-06-05 18:18:42,056.056 INFO    ] 200
[2026-06-05 18:18:42,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:42,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:18:42,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:42,159.159 INFO    ] No camera update needed
[2026-06-05 18:18:42,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:18:42,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:18:42,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:18:42,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:18:44,214.214 INFO    ] ================================================
[2026-06-05 18:18:44,230.230 INFO    ] Launching Daemon at Fri Jun  5 18:18:44 IST 2026
[2026-06-05 18:18:44,240.240 INFO    ] ================================================
[2026-06-05 18:18:44,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:18:44
[2026-06-05 18:18:45,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:18:45,740.740 INFO    ] Initializing speech engine...
[2026-06-05 18:18:45,749.749 INFO    ] 2026-06-05 18:18:45
[2026-06-05 18:18:46,017.017 INFO    ] 2026-06-05 18:18:46
[2026-06-05 18:18:46,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:18:46,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:18:46,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:18:46,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:18:46,465.465 INFO    ] time= 05/06/2026 18:18:46
[2026-06-05 18:18:46,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:18:46,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:18:46,632.632 INFO    ] No existing commands found in stream
[2026-06-05 18:18:51,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:18:51,648.648 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 18:18:55,380.380 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:18:55,383.383 INFO    ] Checking for system updates...
[2026-06-05 18:18:55,424.424 INFO    ] 200
[2026-06-05 18:18:55,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:55,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:55,491.491 INFO    ] No update needed
[2026-06-05 18:18:55,494.494 INFO    ] Checking for camera pi updates...
[2026-06-05 18:18:55,545.545 INFO    ] 200
[2026-06-05 18:18:55,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:18:55,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:18:55,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:18:55,666.666 INFO    ] No camera update needed
[2026-06-05 18:18:55,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:18:55,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:18:55,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:18:55,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:18:57,725.725 INFO    ] ================================================
[2026-06-05 18:18:57,741.741 INFO    ] Launching Daemon at Fri Jun  5 18:18:57 IST 2026
[2026-06-05 18:18:57,753.753 INFO    ] ================================================
[2026-06-05 18:18:58,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:18:58
[2026-06-05 18:18:58,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:18:59,200.200 INFO    ] Initializing speech engine...
[2026-06-05 18:18:59,217.217 INFO    ] 2026-06-05 18:18:59
[2026-06-05 18:18:59,507.507 INFO    ] 2026-06-05 18:18:59
[2026-06-05 18:18:59,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:18:59,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:18:59,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:18:59,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:18:59,886.886 INFO    ] time= 05/06/2026 18:18:59
[2026-06-05 18:18:59,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:18:59,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:19:00,009.009 INFO    ] No existing commands found in stream
[2026-06-05 18:19:05,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:19:05,025.025 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 18:19:08,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:19:08,711.711 INFO    ] Checking for system updates...
[2026-06-05 18:19:08,757.757 INFO    ] 200
[2026-06-05 18:19:08,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:08,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:19:08,824.824 INFO    ] No update needed
[2026-06-05 18:19:08,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 18:19:08,865.865 INFO    ] 200
[2026-06-05 18:19:08,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:08,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:19:08,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:19:08,952.952 INFO    ] No camera update needed
[2026-06-05 18:19:08,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:19:08,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:19:08,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:19:08,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:19:11,007.007 INFO    ] ================================================
[2026-06-05 18:19:11,022.022 INFO    ] Launching Daemon at Fri Jun  5 18:19:11 IST 2026
[2026-06-05 18:19:11,033.033 INFO    ] ================================================
[2026-06-05 18:19:11,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:19:11
[2026-06-05 18:19:12,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:19:12,611.611 INFO    ] Initializing speech engine...
[2026-06-05 18:19:12,617.617 INFO    ] 2026-06-05 18:19:12
[2026-06-05 18:19:12,880.880 INFO    ] 2026-06-05 18:19:12
[2026-06-05 18:19:12,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:19:13,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:19:13,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:19:13,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:19:13,429.429 INFO    ] time= 05/06/2026 18:19:13
[2026-06-05 18:19:13,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:19:13,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:19:13,570.570 INFO    ] No existing commands found in stream
[2026-06-05 18:19:18,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:19:18,598.598 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 18:19:20,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:19:20,528.528 INFO    ] Checking for system updates...
[2026-06-05 18:19:20,568.568 INFO    ] 200
[2026-06-05 18:19:20,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:20,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:19:20,627.627 INFO    ] No update needed
[2026-06-05 18:19:20,629.629 INFO    ] Checking for camera pi updates...
[2026-06-05 18:19:20,667.667 INFO    ] 200
[2026-06-05 18:19:20,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:20,710.710 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:19:20,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:19:20,762.762 INFO    ] No camera update needed
[2026-06-05 18:19:20,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:19:20,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:19:20,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:19:20,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:19:22,819.819 INFO    ] ================================================
[2026-06-05 18:19:22,834.834 INFO    ] Launching Daemon at Fri Jun  5 18:19:22 IST 2026
[2026-06-05 18:19:22,845.845 INFO    ] ================================================
[2026-06-05 18:19:23,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:19:23
[2026-06-05 18:19:24,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:19:24,288.288 INFO    ] Initializing speech engine...
[2026-06-05 18:19:24,298.298 INFO    ] 2026-06-05 18:19:24
[2026-06-05 18:19:24,592.592 INFO    ] 2026-06-05 18:19:24
[2026-06-05 18:19:24,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:19:24,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:19:24,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:19:25,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:19:25,009.009 INFO    ] time= 05/06/2026 18:19:25
[2026-06-05 18:19:25,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:19:25,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:19:25,122.122 INFO    ] No existing commands found in stream
[2026-06-05 18:19:30,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:19:30,160.160 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 18:19:33,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:19:33,356.356 INFO    ] Checking for system updates...
[2026-06-05 18:19:33,395.395 INFO    ] 200
[2026-06-05 18:19:33,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:33,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:19:33,454.454 INFO    ] No update needed
[2026-06-05 18:19:33,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 18:19:33,490.490 INFO    ] 200
[2026-06-05 18:19:33,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:33,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:19:33,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:19:33,591.591 INFO    ] No camera update needed
[2026-06-05 18:19:33,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:19:33,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:19:33,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:19:33,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:19:35,648.648 INFO    ] ================================================
[2026-06-05 18:19:35,663.663 INFO    ] Launching Daemon at Fri Jun  5 18:19:35 IST 2026
[2026-06-05 18:19:35,677.677 INFO    ] ================================================
[2026-06-05 18:19:36,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:19:36
[2026-06-05 18:19:36,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:19:37,150.150 INFO    ] Initializing speech engine...
[2026-06-05 18:19:37,160.160 INFO    ] 2026-06-05 18:19:37
[2026-06-05 18:19:37,420.420 INFO    ] 2026-06-05 18:19:37
[2026-06-05 18:19:37,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:19:37,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:19:37,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:19:37,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:19:37,922.922 INFO    ] time= 05/06/2026 18:19:37
[2026-06-05 18:19:37,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:19:37,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:19:38,139.139 INFO    ] No existing commands found in stream
[2026-06-05 18:19:43,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:19:43,152.152 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 18:19:45,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:19:45,973.973 INFO    ] Checking for system updates...
[2026-06-05 18:19:46,011.011 INFO    ] 200
[2026-06-05 18:19:46,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:46,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:19:46,072.072 INFO    ] No update needed
[2026-06-05 18:19:46,074.074 INFO    ] Checking for camera pi updates...
[2026-06-05 18:19:46,109.109 INFO    ] 200
[2026-06-05 18:19:46,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:46,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:19:46,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:19:46,192.192 INFO    ] No camera update needed
[2026-06-05 18:19:46,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:19:46,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:19:46,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:19:46,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:19:48,254.254 INFO    ] ================================================
[2026-06-05 18:19:48,269.269 INFO    ] Launching Daemon at Fri Jun  5 18:19:48 IST 2026
[2026-06-05 18:19:48,279.279 INFO    ] ================================================
[2026-06-05 18:19:48,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:19:48
[2026-06-05 18:19:49,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:19:49,862.862 INFO    ] Initializing speech engine...
[2026-06-05 18:19:49,876.876 INFO    ] 2026-06-05 18:19:49
[2026-06-05 18:19:50,158.158 INFO    ] 2026-06-05 18:19:50
[2026-06-05 18:19:50,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:19:50,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:19:50,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:19:50,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:19:50,690.690 INFO    ] time= 05/06/2026 18:19:50
[2026-06-05 18:19:50,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:19:50,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:19:50,844.844 INFO    ] No existing commands found in stream
[2026-06-05 18:19:55,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:19:55,870.870 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 18:19:58,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:19:58,022.022 INFO    ] Checking for system updates...
[2026-06-05 18:19:58,058.058 INFO    ] 200
[2026-06-05 18:19:58,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:58,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:19:58,121.121 INFO    ] No update needed
[2026-06-05 18:19:58,123.123 INFO    ] Checking for camera pi updates...
[2026-06-05 18:19:58,160.160 INFO    ] 200
[2026-06-05 18:19:58,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:19:58,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:19:58,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:19:58,243.243 INFO    ] No camera update needed
[2026-06-05 18:19:58,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:19:58,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:19:58,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:19:58,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:20:00,299.299 INFO    ] ================================================
[2026-06-05 18:20:00,314.314 INFO    ] Launching Daemon at Fri Jun  5 18:20:00 IST 2026
[2026-06-05 18:20:00,325.325 INFO    ] ================================================
[2026-06-05 18:20:00,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:20:00
[2026-06-05 18:20:01,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:20:02,444.444 INFO    ] Initializing speech engine...
[2026-06-05 18:20:02,473.473 INFO    ] 2026-06-05 18:20:02
[2026-06-05 18:20:02,875.875 INFO    ] 2026-06-05 18:20:02
[2026-06-05 18:20:02,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:20:03,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:20:03,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:20:03,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:20:03,327.327 INFO    ] time= 05/06/2026 18:20:03
[2026-06-05 18:20:03,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:20:03,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:20:03,475.475 INFO    ] No existing commands found in stream
[2026-06-05 18:20:08,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:20:08,504.504 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 18:20:13,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:20:13,377.377 INFO    ] Checking for system updates...
[2026-06-05 18:20:13,417.417 INFO    ] 200
[2026-06-05 18:20:13,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:20:13,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:20:13,482.482 INFO    ] No update needed
[2026-06-05 18:20:13,485.485 INFO    ] Checking for camera pi updates...
[2026-06-05 18:20:13,520.520 INFO    ] 200
[2026-06-05 18:20:13,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:20:13,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:20:13,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:20:13,607.607 INFO    ] No camera update needed
[2026-06-05 18:20:13,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:20:13,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:20:13,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:20:13,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:20:15,666.666 INFO    ] ================================================
[2026-06-05 18:20:15,681.681 INFO    ] Launching Daemon at Fri Jun  5 18:20:15 IST 2026
[2026-06-05 18:20:15,692.692 INFO    ] ================================================
[2026-06-05 18:20:16,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:20:16
[2026-06-05 18:20:16,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:20:17,290.290 INFO    ] Initializing speech engine...
[2026-06-05 18:20:17,303.303 INFO    ] 2026-06-05 18:20:17
[2026-06-05 18:20:17,584.584 INFO    ] 2026-06-05 18:20:17
[2026-06-05 18:20:17,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:20:17,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:20:17,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:20:18,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:20:18,136.136 INFO    ] time= 05/06/2026 18:20:18
[2026-06-05 18:20:18,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:20:18,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:20:18,293.293 INFO    ] No existing commands found in stream
[2026-06-05 18:20:23,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:20:23,322.322 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 18:20:25,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:20:25,608.608 INFO    ] Checking for system updates...
[2026-06-05 18:20:25,644.644 INFO    ] 200
[2026-06-05 18:20:25,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:20:25,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:20:25,703.703 INFO    ] No update needed
[2026-06-05 18:20:25,705.705 INFO    ] Checking for camera pi updates...
[2026-06-05 18:20:25,739.739 INFO    ] 200
[2026-06-05 18:20:25,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:20:25,786.786 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:20:25,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:20:25,830.830 INFO    ] No camera update needed
[2026-06-05 18:20:25,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:20:25,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:20:25,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:20:25,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:20:27,884.884 INFO    ] ================================================
[2026-06-05 18:20:27,899.899 INFO    ] Launching Daemon at Fri Jun  5 18:20:27 IST 2026
[2026-06-05 18:20:27,910.910 INFO    ] ================================================
[2026-06-05 18:20:28,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:20:28
[2026-06-05 18:20:29,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:20:29,415.415 INFO    ] Initializing speech engine...
[2026-06-05 18:20:29,428.428 INFO    ] 2026-06-05 18:20:29
[2026-06-05 18:20:29,680.680 INFO    ] 2026-06-05 18:20:29
[2026-06-05 18:20:29,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:20:29,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:20:29,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:20:30,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:20:30,179.179 INFO    ] time= 05/06/2026 18:20:30
[2026-06-05 18:20:30,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:20:30,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:20:30,372.372 INFO    ] No existing commands found in stream
[2026-06-05 18:20:35,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:20:35,396.396 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 18:20:39,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:20:39,776.776 INFO    ] Checking for system updates...
[2026-06-05 18:20:39,816.816 INFO    ] 200
[2026-06-05 18:20:39,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:20:39,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:20:39,874.874 INFO    ] No update needed
[2026-06-05 18:20:39,877.877 INFO    ] Checking for camera pi updates...
[2026-06-05 18:20:39,914.914 INFO    ] 200
[2026-06-05 18:20:39,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:20:39,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:20:40,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:20:40,113.113 INFO    ] No camera update needed
[2026-06-05 18:20:40,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:20:40,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:20:40,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:20:40,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:20:42,171.171 INFO    ] ================================================
[2026-06-05 18:20:42,186.186 INFO    ] Launching Daemon at Fri Jun  5 18:20:42 IST 2026
[2026-06-05 18:20:42,197.197 INFO    ] ================================================
[2026-06-05 18:20:42,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:20:42
[2026-06-05 18:20:43,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:20:43,638.638 INFO    ] Initializing speech engine...
[2026-06-05 18:20:43,643.643 INFO    ] 2026-06-05 18:20:43
[2026-06-05 18:20:43,895.895 INFO    ] 2026-06-05 18:20:43
[2026-06-05 18:20:43,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:20:44,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:20:44,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:20:44,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:20:44,293.293 INFO    ] time= 05/06/2026 18:20:44
[2026-06-05 18:20:44,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:20:44,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:20:44,498.498 INFO    ] No existing commands found in stream
[2026-06-05 18:20:49,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:20:49,514.514 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 18:20:50,374.374 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:20:50,377.377 INFO    ] Checking for system updates...
[2026-06-05 18:20:50,415.415 INFO    ] 200
[2026-06-05 18:20:50,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:20:50,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:20:50,483.483 INFO    ] No update needed
[2026-06-05 18:20:50,485.485 INFO    ] Checking for camera pi updates...
[2026-06-05 18:20:50,521.521 INFO    ] 200
[2026-06-05 18:20:50,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:20:50,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:20:50,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:20:50,621.621 INFO    ] No camera update needed
[2026-06-05 18:20:50,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:20:50,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:20:50,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:20:50,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:20:52,676.676 INFO    ] ================================================
[2026-06-05 18:20:52,691.691 INFO    ] Launching Daemon at Fri Jun  5 18:20:52 IST 2026
[2026-06-05 18:20:52,702.702 INFO    ] ================================================
[2026-06-05 18:20:53,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:20:53
[2026-06-05 18:20:54,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:20:54,300.300 INFO    ] Initializing speech engine...
[2026-06-05 18:20:54,314.314 INFO    ] 2026-06-05 18:20:54
[2026-06-05 18:20:54,572.572 INFO    ] 2026-06-05 18:20:54
[2026-06-05 18:20:54,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:20:54,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:20:54,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:20:54,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:20:54,955.955 INFO    ] time= 05/06/2026 18:20:54
[2026-06-05 18:20:54,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:20:55,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:20:55,139.139 INFO    ] No existing commands found in stream
[2026-06-05 18:21:00,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:21:00,164.164 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 18:21:03,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:21:03,169.169 INFO    ] Checking for system updates...
[2026-06-05 18:21:03,210.210 INFO    ] 200
[2026-06-05 18:21:03,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:03,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:21:03,268.268 INFO    ] No update needed
[2026-06-05 18:21:03,270.270 INFO    ] Checking for camera pi updates...
[2026-06-05 18:21:03,304.304 INFO    ] 200
[2026-06-05 18:21:03,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:03,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:21:03,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:21:03,404.404 INFO    ] No camera update needed
[2026-06-05 18:21:03,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:21:03,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:21:03,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:21:03,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:21:05,459.459 INFO    ] ================================================
[2026-06-05 18:21:05,474.474 INFO    ] Launching Daemon at Fri Jun  5 18:21:05 IST 2026
[2026-06-05 18:21:05,485.485 INFO    ] ================================================
[2026-06-05 18:21:06,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:21:06
[2026-06-05 18:21:06,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:21:07,080.080 INFO    ] Initializing speech engine...
[2026-06-05 18:21:07,086.086 INFO    ] 2026-06-05 18:21:07
[2026-06-05 18:21:07,352.352 INFO    ] 2026-06-05 18:21:07
[2026-06-05 18:21:07,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:21:07,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:21:07,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:21:07,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:21:07,732.732 INFO    ] time= 05/06/2026 18:21:07
[2026-06-05 18:21:07,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:21:07,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:21:07,916.916 INFO    ] No existing commands found in stream
[2026-06-05 18:21:12,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:21:12,943.943 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 18:21:15,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:21:15,547.547 INFO    ] Checking for system updates...
[2026-06-05 18:21:15,583.583 INFO    ] 200
[2026-06-05 18:21:15,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:15,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:21:15,642.642 INFO    ] No update needed
[2026-06-05 18:21:15,644.644 INFO    ] Checking for camera pi updates...
[2026-06-05 18:21:15,682.682 INFO    ] 200
[2026-06-05 18:21:15,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:15,725.725 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:21:15,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:21:15,769.769 INFO    ] No camera update needed
[2026-06-05 18:21:15,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:21:15,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:21:15,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:21:15,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:21:17,827.827 INFO    ] ================================================
[2026-06-05 18:21:17,841.841 INFO    ] Launching Daemon at Fri Jun  5 18:21:17 IST 2026
[2026-06-05 18:21:17,852.852 INFO    ] ================================================
[2026-06-05 18:21:18,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:21:18
[2026-06-05 18:21:19,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:21:19,539.539 INFO    ] Initializing speech engine...
[2026-06-05 18:21:19,548.548 INFO    ] 2026-06-05 18:21:19
[2026-06-05 18:21:19,831.831 INFO    ] 2026-06-05 18:21:19
[2026-06-05 18:21:19,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:21:20,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:21:20,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:21:20,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:21:20,315.315 INFO    ] time= 05/06/2026 18:21:20
[2026-06-05 18:21:20,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:21:20,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:21:20,476.476 INFO    ] No existing commands found in stream
[2026-06-05 18:21:25,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:21:25,516.516 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 18:21:27,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:21:27,674.674 INFO    ] Checking for system updates...
[2026-06-05 18:21:27,716.716 INFO    ] 200
[2026-06-05 18:21:27,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:27,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:21:27,785.785 INFO    ] No update needed
[2026-06-05 18:21:27,788.788 INFO    ] Checking for camera pi updates...
[2026-06-05 18:21:27,823.823 INFO    ] 200
[2026-06-05 18:21:27,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:27,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:21:27,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:21:27,912.912 INFO    ] No camera update needed
[2026-06-05 18:21:27,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:21:27,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:21:27,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:21:27,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:21:29,973.973 INFO    ] ================================================
[2026-06-05 18:21:29,990.990 INFO    ] Launching Daemon at Fri Jun  5 18:21:29 IST 2026
[2026-06-05 18:21:30,001.001 INFO    ] ================================================
[2026-06-05 18:21:30,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:21:30
[2026-06-05 18:21:31,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:21:31,491.491 INFO    ] Initializing speech engine...
[2026-06-05 18:21:31,516.516 INFO    ] 2026-06-05 18:21:31
[2026-06-05 18:21:31,821.821 INFO    ] 2026-06-05 18:21:31
[2026-06-05 18:21:31,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:21:32,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:21:32,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:21:32,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:21:32,242.242 INFO    ] time= 05/06/2026 18:21:32
[2026-06-05 18:21:32,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:21:32,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:21:32,378.378 INFO    ] No existing commands found in stream
[2026-06-05 18:21:37,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:21:37,394.394 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 18:21:38,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:21:38,472.472 INFO    ] Checking for system updates...
[2026-06-05 18:21:38,508.508 INFO    ] 200
[2026-06-05 18:21:38,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:38,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:21:38,566.566 INFO    ] No update needed
[2026-06-05 18:21:38,568.568 INFO    ] Checking for camera pi updates...
[2026-06-05 18:21:38,602.602 INFO    ] 200
[2026-06-05 18:21:38,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:38,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:21:38,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:21:38,696.696 INFO    ] No camera update needed
[2026-06-05 18:21:38,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:21:38,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:21:38,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:21:38,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:21:40,753.753 INFO    ] ================================================
[2026-06-05 18:21:40,769.769 INFO    ] Launching Daemon at Fri Jun  5 18:21:40 IST 2026
[2026-06-05 18:21:40,781.781 INFO    ] ================================================
[2026-06-05 18:21:41,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:21:41
[2026-06-05 18:21:42,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:21:42,353.353 INFO    ] Initializing speech engine...
[2026-06-05 18:21:42,362.362 INFO    ] 2026-06-05 18:21:42
[2026-06-05 18:21:42,608.608 INFO    ] 2026-06-05 18:21:42
[2026-06-05 18:21:42,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:21:45,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:21:45,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:21:45,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:21:45,373.373 INFO    ] time= 05/06/2026 18:21:45
[2026-06-05 18:21:45,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:21:45,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:21:45,458.458 INFO    ] No existing commands found in stream
[2026-06-05 18:21:50,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:21:50,472.472 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 18:21:51,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:21:51,127.127 INFO    ] Checking for system updates...
[2026-06-05 18:21:51,162.162 INFO    ] 200
[2026-06-05 18:21:51,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:51,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:21:51,228.228 INFO    ] No update needed
[2026-06-05 18:21:51,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 18:21:51,264.264 INFO    ] 200
[2026-06-05 18:21:51,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:21:51,308.308 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:21:51,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:21:51,337.337 INFO    ] No camera update needed
[2026-06-05 18:21:51,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:21:51,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:21:51,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:21:51,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:21:53,396.396 INFO    ] ================================================
[2026-06-05 18:21:53,412.412 INFO    ] Launching Daemon at Fri Jun  5 18:21:53 IST 2026
[2026-06-05 18:21:53,424.424 INFO    ] ================================================
[2026-06-05 18:21:54,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:21:54
[2026-06-05 18:21:54,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:21:55,018.018 INFO    ] Initializing speech engine...
[2026-06-05 18:21:55,032.032 INFO    ] 2026-06-05 18:21:55
[2026-06-05 18:21:55,327.327 INFO    ] 2026-06-05 18:21:55
[2026-06-05 18:21:55,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:21:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:21:55,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:21:55,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:21:55,885.885 INFO    ] time= 05/06/2026 18:21:55
[2026-06-05 18:21:55,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:21:55,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:21:56,058.058 INFO    ] No existing commands found in stream
[2026-06-05 18:22:01,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:22:01,082.082 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 18:22:03,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:22:03,684.684 INFO    ] Checking for system updates...
[2026-06-05 18:22:03,722.722 INFO    ] 200
[2026-06-05 18:22:03,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:03,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:22:03,791.791 INFO    ] No update needed
[2026-06-05 18:22:03,794.794 INFO    ] Checking for camera pi updates...
[2026-06-05 18:22:03,829.829 INFO    ] 200
[2026-06-05 18:22:03,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:03,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:22:03,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:22:03,938.938 INFO    ] No camera update needed
[2026-06-05 18:22:03,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:22:03,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:22:03,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:22:03,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:22:05,993.993 INFO    ] ================================================
[2026-06-05 18:22:06,009.009 INFO    ] Launching Daemon at Fri Jun  5 18:22:06 IST 2026
[2026-06-05 18:22:06,019.019 INFO    ] ================================================
[2026-06-05 18:22:06,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:22:06
[2026-06-05 18:22:07,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:22:07,773.773 INFO    ] Initializing speech engine...
[2026-06-05 18:22:07,784.784 INFO    ] 2026-06-05 18:22:07
[2026-06-05 18:22:08,103.103 INFO    ] 2026-06-05 18:22:08
[2026-06-05 18:22:08,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:22:08,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:22:08,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:22:08,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:22:08,579.579 INFO    ] time= 05/06/2026 18:22:08
[2026-06-05 18:22:08,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:22:08,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:22:08,759.759 INFO    ] No existing commands found in stream
[2026-06-05 18:22:13,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:22:13,782.782 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 18:22:16,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:22:16,507.507 INFO    ] Checking for system updates...
[2026-06-05 18:22:16,544.544 INFO    ] 200
[2026-06-05 18:22:16,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:16,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:22:16,602.602 INFO    ] No update needed
[2026-06-05 18:22:16,604.604 INFO    ] Checking for camera pi updates...
[2026-06-05 18:22:16,645.645 INFO    ] 200
[2026-06-05 18:22:16,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:16,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:22:16,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:22:16,743.743 INFO    ] No camera update needed
[2026-06-05 18:22:16,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:22:16,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:22:16,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:22:16,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:22:18,799.799 INFO    ] ================================================
[2026-06-05 18:22:18,814.814 INFO    ] Launching Daemon at Fri Jun  5 18:22:18 IST 2026
[2026-06-05 18:22:18,825.825 INFO    ] ================================================
[2026-06-05 18:22:19,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:22:19
[2026-06-05 18:22:20,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:22:20,496.496 INFO    ] Initializing speech engine...
[2026-06-05 18:22:20,504.504 INFO    ] 2026-06-05 18:22:20
[2026-06-05 18:22:20,800.800 INFO    ] 2026-06-05 18:22:20
[2026-06-05 18:22:20,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:22:21,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:22:21,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:22:21,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:22:21,348.348 INFO    ] time= 05/06/2026 18:22:21
[2026-06-05 18:22:21,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:22:21,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:22:21,523.523 INFO    ] No existing commands found in stream
[2026-06-05 18:22:26,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:22:26,552.552 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 18:22:27,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:22:27,934.934 INFO    ] Checking for system updates...
[2026-06-05 18:22:27,977.977 INFO    ] 200
[2026-06-05 18:22:27,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:28,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:22:28,037.037 INFO    ] No update needed
[2026-06-05 18:22:28,039.039 INFO    ] Checking for camera pi updates...
[2026-06-05 18:22:28,073.073 INFO    ] 200
[2026-06-05 18:22:28,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:28,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:22:28,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:22:28,170.170 INFO    ] No camera update needed
[2026-06-05 18:22:28,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:22:28,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:22:28,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:22:28,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:22:30,226.226 INFO    ] ================================================
[2026-06-05 18:22:30,241.241 INFO    ] Launching Daemon at Fri Jun  5 18:22:30 IST 2026
[2026-06-05 18:22:30,252.252 INFO    ] ================================================
[2026-06-05 18:22:30,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:22:30
[2026-06-05 18:22:31,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:22:31,771.771 INFO    ] Initializing speech engine...
[2026-06-05 18:22:31,795.795 INFO    ] 2026-06-05 18:22:31
[2026-06-05 18:22:32,065.065 INFO    ] 2026-06-05 18:22:32
[2026-06-05 18:22:32,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:22:32,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:22:32,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:22:32,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:22:32,473.473 INFO    ] time= 05/06/2026 18:22:32
[2026-06-05 18:22:32,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:22:32,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:22:32,667.667 INFO    ] No existing commands found in stream
[2026-06-05 18:22:37,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:22:37,698.698 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 18:22:40,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:22:40,291.291 INFO    ] Checking for system updates...
[2026-06-05 18:22:40,327.327 INFO    ] 200
[2026-06-05 18:22:40,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:40,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:22:40,386.386 INFO    ] No update needed
[2026-06-05 18:22:40,389.389 INFO    ] Checking for camera pi updates...
[2026-06-05 18:22:40,424.424 INFO    ] 200
[2026-06-05 18:22:40,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:40,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:22:40,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:22:40,511.511 INFO    ] No camera update needed
[2026-06-05 18:22:40,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:22:40,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:22:40,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:22:40,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:22:42,566.566 INFO    ] ================================================
[2026-06-05 18:22:42,581.581 INFO    ] Launching Daemon at Fri Jun  5 18:22:42 IST 2026
[2026-06-05 18:22:42,593.593 INFO    ] ================================================
[2026-06-05 18:22:43,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:22:43
[2026-06-05 18:22:44,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:22:44,320.320 INFO    ] Initializing speech engine...
[2026-06-05 18:22:44,331.331 INFO    ] 2026-06-05 18:22:44
[2026-06-05 18:22:44,626.626 INFO    ] 2026-06-05 18:22:44
[2026-06-05 18:22:44,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:22:46,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:22:46,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:22:46,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:22:46,401.401 INFO    ] time= 05/06/2026 18:22:46
[2026-06-05 18:22:46,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:22:46,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:22:46,525.525 INFO    ] No existing commands found in stream
[2026-06-05 18:22:51,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:22:51,560.560 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 18:22:54,752.752 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:22:54,756.756 INFO    ] Checking for system updates...
[2026-06-05 18:22:54,804.804 INFO    ] 200
[2026-06-05 18:22:54,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:54,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:22:54,883.883 INFO    ] No update needed
[2026-06-05 18:22:54,886.886 INFO    ] Checking for camera pi updates...
[2026-06-05 18:22:54,921.921 INFO    ] 200
[2026-06-05 18:22:54,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:22:54,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:22:55,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:22:55,114.114 INFO    ] No camera update needed
[2026-06-05 18:22:55,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:22:55,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:22:55,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:22:55,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:22:57,169.169 INFO    ] ================================================
[2026-06-05 18:22:57,186.186 INFO    ] Launching Daemon at Fri Jun  5 18:22:57 IST 2026
[2026-06-05 18:22:57,198.198 INFO    ] ================================================
[2026-06-05 18:22:57,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:22:57
[2026-06-05 18:22:58,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:22:58,642.642 INFO    ] Initializing speech engine...
[2026-06-05 18:22:58,665.665 INFO    ] 2026-06-05 18:22:58
[2026-06-05 18:22:58,919.919 INFO    ] 2026-06-05 18:22:58
[2026-06-05 18:22:58,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:22:59,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:22:59,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:23:00,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:23:00,381.381 INFO    ] time= 05/06/2026 18:23:00
[2026-06-05 18:23:00,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:23:00,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:23:00,479.479 INFO    ] No existing commands found in stream
[2026-06-05 18:23:05,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:23:05,493.493 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 18:23:09,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:23:09,683.683 INFO    ] Checking for system updates...
[2026-06-05 18:23:09,720.720 INFO    ] 200
[2026-06-05 18:23:09,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:23:09,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:23:09,779.779 INFO    ] No update needed
[2026-06-05 18:23:09,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 18:23:09,822.822 INFO    ] 200
[2026-06-05 18:23:09,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:23:09,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:23:09,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:23:09,922.922 INFO    ] No camera update needed
[2026-06-05 18:23:09,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:23:09,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:23:09,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:23:09,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:23:11,980.980 INFO    ] ================================================
[2026-06-05 18:23:12,996.996 INFO    ] Launching Daemon at Fri Jun  5 18:23:11 IST 2026
[2026-06-05 18:23:12,006.006 INFO    ] ================================================
[2026-06-05 18:23:12,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:23:12
[2026-06-05 18:23:13,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:23:13,684.684 INFO    ] Initializing speech engine...
[2026-06-05 18:23:13,697.697 INFO    ] 2026-06-05 18:23:13
[2026-06-05 18:23:13,987.987 INFO    ] 2026-06-05 18:23:13
[2026-06-05 18:23:14,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:23:16,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:23:16,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:23:16,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:23:16,998.998 INFO    ] time= 05/06/2026 18:23:16
[2026-06-05 18:23:17,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:23:17,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:23:17,062.062 INFO    ] No existing commands found in stream
[2026-06-05 18:23:22,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:23:22,074.074 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 18:23:23,052.052 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:23:23,055.055 INFO    ] Checking for system updates...
[2026-06-05 18:23:23,092.092 INFO    ] 200
[2026-06-05 18:23:23,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:23:23,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:23:23,158.158 INFO    ] No update needed
[2026-06-05 18:23:23,160.160 INFO    ] Checking for camera pi updates...
[2026-06-05 18:23:23,195.195 INFO    ] 200
[2026-06-05 18:23:23,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:23:23,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:23:23,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:23:23,276.276 INFO    ] No camera update needed
[2026-06-05 18:23:23,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:23:23,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:23:23,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:23:23,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:23:25,339.339 INFO    ] ================================================
[2026-06-05 18:23:25,354.354 INFO    ] Launching Daemon at Fri Jun  5 18:23:25 IST 2026
[2026-06-05 18:23:25,365.365 INFO    ] ================================================
[2026-06-05 18:23:25,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:23:25
[2026-06-05 18:23:26,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:23:26,775.775 INFO    ] Initializing speech engine...
[2026-06-05 18:23:26,781.781 INFO    ] 2026-06-05 18:23:26
[2026-06-05 18:23:27,082.082 INFO    ] 2026-06-05 18:23:27
[2026-06-05 18:23:27,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:23:27,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:23:27,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:23:27,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:23:27,485.485 INFO    ] time= 05/06/2026 18:23:27
[2026-06-05 18:23:27,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:23:27,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:23:27,596.596 INFO    ] No existing commands found in stream
[2026-06-05 18:23:32,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:23:32,617.617 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 18:23:33,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:23:33,712.712 INFO    ] Checking for system updates...
[2026-06-05 18:23:33,751.751 INFO    ] 200
[2026-06-05 18:23:33,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:23:33,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:23:33,816.816 INFO    ] No update needed
[2026-06-05 18:23:33,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 18:23:33,856.856 INFO    ] 200
[2026-06-05 18:23:33,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:23:33,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:23:33,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:23:33,947.947 INFO    ] No camera update needed
[2026-06-05 18:23:33,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:23:33,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:23:33,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:23:33,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:23:36,003.003 INFO    ] ================================================
[2026-06-05 18:23:36,019.019 INFO    ] Launching Daemon at Fri Jun  5 18:23:36 IST 2026
[2026-06-05 18:23:36,029.029 INFO    ] ================================================
[2026-06-05 18:23:36,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:23:36
[2026-06-05 18:23:37,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:23:37,678.678 INFO    ] Initializing speech engine...
[2026-06-05 18:23:37,686.686 INFO    ] 2026-06-05 18:23:37
[2026-06-05 18:23:37,976.976 INFO    ] 2026-06-05 18:23:37
[2026-06-05 18:23:38,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:23:38,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:23:38,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:23:38,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:23:38,665.665 INFO    ] time= 05/06/2026 18:23:38
[2026-06-05 18:23:38,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:23:38,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:23:38,938.938 INFO    ] No existing commands found in stream
[2026-06-05 18:23:43,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:23:43,972.972 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 18:23:48,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:23:48,317.317 INFO    ] Checking for system updates...
[2026-06-05 18:23:48,355.355 INFO    ] 200
[2026-06-05 18:23:48,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:23:48,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:23:48,423.423 INFO    ] No update needed
[2026-06-05 18:23:48,426.426 INFO    ] Checking for camera pi updates...
[2026-06-05 18:23:48,466.466 INFO    ] 200
[2026-06-05 18:23:48,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:23:48,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:23:48,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:23:48,557.557 INFO    ] No camera update needed
[2026-06-05 18:23:48,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:23:48,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:23:48,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:23:48,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:23:50,613.613 INFO    ] ================================================
[2026-06-05 18:23:50,628.628 INFO    ] Launching Daemon at Fri Jun  5 18:23:50 IST 2026
[2026-06-05 18:23:50,639.639 INFO    ] ================================================
[2026-06-05 18:23:51,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:23:51
[2026-06-05 18:23:51,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:23:52,093.093 INFO    ] Initializing speech engine...
[2026-06-05 18:23:52,108.108 INFO    ] 2026-06-05 18:23:52
[2026-06-05 18:23:52,413.413 INFO    ] 2026-06-05 18:23:52
[2026-06-05 18:23:52,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:23:52,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:23:52,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:23:52,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:23:52,992.992 INFO    ] time= 05/06/2026 18:23:52
[2026-06-05 18:23:53,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:23:53,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:23:53,192.192 INFO    ] No existing commands found in stream
[2026-06-05 18:23:58,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:23:58,215.215 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 18:23:59,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:23:59,884.884 INFO    ] Checking for system updates...
[2026-06-05 18:23:59,925.925 INFO    ] 200
[2026-06-05 18:23:59,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:23:59,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:23:59,983.983 INFO    ] No update needed
[2026-06-05 18:23:59,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 18:24:00,020.020 INFO    ] 200
[2026-06-05 18:24:00,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:24:00,063.063 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:24:00,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:24:00,096.096 INFO    ] No camera update needed
[2026-06-05 18:24:00,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:24:00,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:24:00,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:24:00,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:24:02,162.162 INFO    ] ================================================
[2026-06-05 18:24:02,179.179 INFO    ] Launching Daemon at Fri Jun  5 18:24:02 IST 2026
[2026-06-05 18:24:02,195.195 INFO    ] ================================================
[2026-06-05 18:24:02,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:24:02
[2026-06-05 18:24:03,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:24:03,756.756 INFO    ] Initializing speech engine...
[2026-06-05 18:24:03,764.764 INFO    ] 2026-06-05 18:24:03
[2026-06-05 18:24:04,033.033 INFO    ] 2026-06-05 18:24:04
[2026-06-05 18:24:04,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:24:04,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:24:04,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:24:04,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:24:04,499.499 INFO    ] time= 05/06/2026 18:24:04
[2026-06-05 18:24:04,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:24:04,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:24:04,726.726 INFO    ] No existing commands found in stream
[2026-06-05 18:24:09,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:24:09,754.754 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 18:24:11,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:24:11,618.618 INFO    ] Checking for system updates...
[2026-06-05 18:24:11,656.656 INFO    ] 200
[2026-06-05 18:24:11,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:24:11,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:24:11,718.718 INFO    ] No update needed
[2026-06-05 18:24:11,720.720 INFO    ] Checking for camera pi updates...
[2026-06-05 18:24:11,754.754 INFO    ] 200
[2026-06-05 18:24:11,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:24:11,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:24:11,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:24:11,859.859 INFO    ] No camera update needed
[2026-06-05 18:24:11,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:24:11,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:24:11,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:24:11,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:24:13,916.916 INFO    ] ================================================
[2026-06-05 18:24:13,931.931 INFO    ] Launching Daemon at Fri Jun  5 18:24:13 IST 2026
[2026-06-05 18:24:13,942.942 INFO    ] ================================================
[2026-06-05 18:24:14,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:24:14
[2026-06-05 18:24:15,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:24:15,593.593 INFO    ] Initializing speech engine...
[2026-06-05 18:24:15,607.607 INFO    ] 2026-06-05 18:24:15
[2026-06-05 18:24:15,896.896 INFO    ] 2026-06-05 18:24:15
[2026-06-05 18:24:15,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:24:18,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:24:18,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:24:18,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:24:18,527.527 INFO    ] time= 05/06/2026 18:24:18
[2026-06-05 18:24:18,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:24:18,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:24:18,670.670 INFO    ] No existing commands found in stream
[2026-06-05 18:24:23,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:24:23,686.686 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 18:24:25,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:24:25,704.704 INFO    ] Checking for system updates...
[2026-06-05 18:24:25,745.745 INFO    ] 200
[2026-06-05 18:24:25,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:24:25,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:24:25,812.812 INFO    ] No update needed
[2026-06-05 18:24:25,815.815 INFO    ] Checking for camera pi updates...
[2026-06-05 18:24:25,855.855 INFO    ] 200
[2026-06-05 18:24:25,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:24:25,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:24:25,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:24:25,947.947 INFO    ] No camera update needed
[2026-06-05 18:24:25,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:24:25,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:24:25,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:24:25,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:24:28,006.006 INFO    ] ================================================
[2026-06-05 18:24:28,021.021 INFO    ] Launching Daemon at Fri Jun  5 18:24:28 IST 2026
[2026-06-05 18:24:28,032.032 INFO    ] ================================================
[2026-06-05 18:24:28,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:24:28
[2026-06-05 18:24:29,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:24:29,478.478 INFO    ] Initializing speech engine...
[2026-06-05 18:24:29,493.493 INFO    ] 2026-06-05 18:24:29
[2026-06-05 18:24:29,780.780 INFO    ] 2026-06-05 18:24:29
[2026-06-05 18:24:29,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:24:30,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:24:30,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:24:30,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:24:30,299.299 INFO    ] time= 05/06/2026 18:24:30
[2026-06-05 18:24:30,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:24:30,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:24:30,505.505 INFO    ] No existing commands found in stream
[2026-06-05 18:24:35,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:24:35,520.520 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 18:24:39,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:24:39,231.231 INFO    ] Checking for system updates...
[2026-06-05 18:24:39,268.268 INFO    ] 200
[2026-06-05 18:24:39,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:24:39,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:24:39,333.333 INFO    ] No update needed
[2026-06-05 18:24:39,335.335 INFO    ] Checking for camera pi updates...
[2026-06-05 18:24:39,373.373 INFO    ] 200
[2026-06-05 18:24:39,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:24:39,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:24:39,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:24:39,461.461 INFO    ] No camera update needed
[2026-06-05 18:24:39,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:24:39,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:24:39,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:24:39,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:24:41,518.518 INFO    ] ================================================
[2026-06-05 18:24:41,534.534 INFO    ] Launching Daemon at Fri Jun  5 18:24:41 IST 2026
[2026-06-05 18:24:41,545.545 INFO    ] ================================================
[2026-06-05 18:24:42,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:24:42
[2026-06-05 18:24:42,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:24:43,203.203 INFO    ] Initializing speech engine...
[2026-06-05 18:24:43,224.224 INFO    ] 2026-06-05 18:24:43
[2026-06-05 18:24:43,488.488 INFO    ] 2026-06-05 18:24:43
[2026-06-05 18:24:43,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:24:43,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:24:43,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:24:43,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:24:43,967.967 INFO    ] time= 05/06/2026 18:24:43
[2026-06-05 18:24:44,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:24:44,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:24:44,232.232 INFO    ] No existing commands found in stream
[2026-06-05 18:24:49,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:24:49,266.266 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 18:24:53,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:24:53,238.238 INFO    ] Checking for system updates...
[2026-06-05 18:24:53,275.275 INFO    ] 200
[2026-06-05 18:24:53,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:24:53,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:24:53,334.334 INFO    ] No update needed
[2026-06-05 18:24:53,337.337 INFO    ] Checking for camera pi updates...
[2026-06-05 18:24:53,375.375 INFO    ] 200
[2026-06-05 18:24:53,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:24:53,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:24:53,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:24:53,478.478 INFO    ] No camera update needed
[2026-06-05 18:24:53,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:24:53,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:24:53,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:24:53,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:24:55,533.533 INFO    ] ================================================
[2026-06-05 18:24:55,549.549 INFO    ] Launching Daemon at Fri Jun  5 18:24:55 IST 2026
[2026-06-05 18:24:55,560.560 INFO    ] ================================================
[2026-06-05 18:24:56,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:24:56
[2026-06-05 18:24:56,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:24:56,959.959 INFO    ] Initializing speech engine...
[2026-06-05 18:24:56,973.973 INFO    ] 2026-06-05 18:24:56
[2026-06-05 18:24:57,240.240 INFO    ] 2026-06-05 18:24:57
[2026-06-05 18:24:57,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:24:57,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:24:57,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:24:57,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:24:57,808.808 INFO    ] time= 05/06/2026 18:24:57
[2026-06-05 18:24:57,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:24:57,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:24:57,967.967 INFO    ] No existing commands found in stream
[2026-06-05 18:25:03,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:25:03,014.014 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 18:25:05,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:25:05,795.795 INFO    ] Checking for system updates...
[2026-06-05 18:25:05,845.845 INFO    ] 200
[2026-06-05 18:25:05,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:05,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:25:05,923.923 INFO    ] No update needed
[2026-06-05 18:25:05,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 18:25:05,969.969 INFO    ] 200
[2026-06-05 18:25:05,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:06,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:25:06,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:25:06,047.047 INFO    ] No camera update needed
[2026-06-05 18:25:06,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:25:06,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:25:06,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:25:06,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:25:08,105.105 INFO    ] ================================================
[2026-06-05 18:25:08,120.120 INFO    ] Launching Daemon at Fri Jun  5 18:25:08 IST 2026
[2026-06-05 18:25:08,132.132 INFO    ] ================================================
[2026-06-05 18:25:08,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:25:08
[2026-06-05 18:25:09,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:25:09,576.576 INFO    ] Initializing speech engine...
[2026-06-05 18:25:09,583.583 INFO    ] 2026-06-05 18:25:09
[2026-06-05 18:25:09,835.835 INFO    ] 2026-06-05 18:25:09
[2026-06-05 18:25:09,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:25:10,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:25:10,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:25:10,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:25:10,310.310 INFO    ] time= 05/06/2026 18:25:10
[2026-06-05 18:25:10,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:25:10,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:25:10,481.481 INFO    ] No existing commands found in stream
[2026-06-05 18:25:15,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:25:15,521.521 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 18:25:17,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:25:17,954.954 INFO    ] Checking for system updates...
[2026-06-05 18:25:17,991.991 INFO    ] 200
[2026-06-05 18:25:17,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:18,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:25:18,049.049 INFO    ] No update needed
[2026-06-05 18:25:18,051.051 INFO    ] Checking for camera pi updates...
[2026-06-05 18:25:18,107.107 INFO    ] 200
[2026-06-05 18:25:18,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:18,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:25:18,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:25:18,197.197 INFO    ] No camera update needed
[2026-06-05 18:25:18,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:25:18,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:25:18,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:25:18,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:25:20,256.256 INFO    ] ================================================
[2026-06-05 18:25:20,271.271 INFO    ] Launching Daemon at Fri Jun  5 18:25:20 IST 2026
[2026-06-05 18:25:20,282.282 INFO    ] ================================================
[2026-06-05 18:25:20,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:25:20
[2026-06-05 18:25:21,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:25:21,680.680 INFO    ] Initializing speech engine...
[2026-06-05 18:25:21,703.703 INFO    ] 2026-06-05 18:25:21
[2026-06-05 18:25:21,958.958 INFO    ] 2026-06-05 18:25:21
[2026-06-05 18:25:21,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:25:23,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:25:23,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:25:23,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:25:23,699.699 INFO    ] time= 05/06/2026 18:25:23
[2026-06-05 18:25:23,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:25:23,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:25:23,867.867 INFO    ] No existing commands found in stream
[2026-06-05 18:25:28,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:25:28,890.890 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 18:25:29,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:25:29,262.262 INFO    ] Checking for system updates...
[2026-06-05 18:25:29,302.302 INFO    ] 200
[2026-06-05 18:25:29,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:29,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:25:29,365.365 INFO    ] No update needed
[2026-06-05 18:25:29,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 18:25:29,401.401 INFO    ] 200
[2026-06-05 18:25:29,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:29,446.446 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:25:29,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:25:29,491.491 INFO    ] No camera update needed
[2026-06-05 18:25:29,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:25:29,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:25:29,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:25:29,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:25:31,547.547 INFO    ] ================================================
[2026-06-05 18:25:31,562.562 INFO    ] Launching Daemon at Fri Jun  5 18:25:31 IST 2026
[2026-06-05 18:25:31,573.573 INFO    ] ================================================
[2026-06-05 18:25:32,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:25:32
[2026-06-05 18:25:32,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:25:33,123.123 INFO    ] Initializing speech engine...
[2026-06-05 18:25:33,139.139 INFO    ] 2026-06-05 18:25:33
[2026-06-05 18:25:33,459.459 INFO    ] 2026-06-05 18:25:33
[2026-06-05 18:25:33,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:25:33,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:25:33,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:25:34,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:25:34,016.016 INFO    ] time= 05/06/2026 18:25:34
[2026-06-05 18:25:34,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:25:34,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:25:34,183.183 INFO    ] No existing commands found in stream
[2026-06-05 18:25:39,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:25:39,216.216 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 18:25:39,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:25:39,720.720 INFO    ] Checking for system updates...
[2026-06-05 18:25:39,761.761 INFO    ] 200
[2026-06-05 18:25:39,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:39,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:25:39,820.820 INFO    ] No update needed
[2026-06-05 18:25:39,822.822 INFO    ] Checking for camera pi updates...
[2026-06-05 18:25:39,860.860 INFO    ] 200
[2026-06-05 18:25:39,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:39,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:25:39,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:25:39,952.952 INFO    ] No camera update needed
[2026-06-05 18:25:39,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:25:39,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:25:39,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:25:39,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:25:42,007.007 INFO    ] ================================================
[2026-06-05 18:25:42,022.022 INFO    ] Launching Daemon at Fri Jun  5 18:25:42 IST 2026
[2026-06-05 18:25:42,032.032 INFO    ] ================================================
[2026-06-05 18:25:42,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:25:42
[2026-06-05 18:25:43,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:25:43,442.442 INFO    ] Initializing speech engine...
[2026-06-05 18:25:43,449.449 INFO    ] 2026-06-05 18:25:43
[2026-06-05 18:25:43,729.729 INFO    ] 2026-06-05 18:25:43
[2026-06-05 18:25:43,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:25:44,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:25:44,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:25:44,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:25:44,210.210 INFO    ] time= 05/06/2026 18:25:44
[2026-06-05 18:25:44,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:25:44,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:25:44,471.471 INFO    ] No existing commands found in stream
[2026-06-05 18:25:49,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:25:49,497.497 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 18:25:50,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:25:50,052.052 INFO    ] Checking for system updates...
[2026-06-05 18:25:50,089.089 INFO    ] 200
[2026-06-05 18:25:50,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:50,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:25:50,147.147 INFO    ] No update needed
[2026-06-05 18:25:50,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 18:25:50,188.188 INFO    ] 200
[2026-06-05 18:25:50,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:25:50,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:25:50,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:25:50,288.288 INFO    ] No camera update needed
[2026-06-05 18:25:50,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:25:50,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:25:50,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:25:50,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:25:52,344.344 INFO    ] ================================================
[2026-06-05 18:25:52,359.359 INFO    ] Launching Daemon at Fri Jun  5 18:25:52 IST 2026
[2026-06-05 18:25:52,370.370 INFO    ] ================================================
[2026-06-05 18:25:52,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:25:52
[2026-06-05 18:25:53,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:25:53,781.781 INFO    ] Initializing speech engine...
[2026-06-05 18:25:53,790.790 INFO    ] 2026-06-05 18:25:53
[2026-06-05 18:25:54,086.086 INFO    ] 2026-06-05 18:25:54
[2026-06-05 18:25:54,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:25:54,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:25:54,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:25:54,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:25:54,658.658 INFO    ] time= 05/06/2026 18:25:54
[2026-06-05 18:25:54,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:25:54,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:25:54,831.831 INFO    ] No existing commands found in stream
[2026-06-05 18:25:59,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:25:59,850.850 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 18:26:01,988.988 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:26:01,991.991 INFO    ] Checking for system updates...
[2026-06-05 18:26:02,036.036 INFO    ] 200
[2026-06-05 18:26:02,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:02,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:26:02,115.115 INFO    ] No update needed
[2026-06-05 18:26:02,118.118 INFO    ] Checking for camera pi updates...
[2026-06-05 18:26:02,159.159 INFO    ] 200
[2026-06-05 18:26:02,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:02,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:26:02,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:26:02,260.260 INFO    ] No camera update needed
[2026-06-05 18:26:02,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:26:02,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:26:02,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:26:02,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:26:04,331.331 INFO    ] ================================================
[2026-06-05 18:26:04,346.346 INFO    ] Launching Daemon at Fri Jun  5 18:26:04 IST 2026
[2026-06-05 18:26:04,357.357 INFO    ] ================================================
[2026-06-05 18:26:05,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:26:05
[2026-06-05 18:26:05,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:26:05,979.979 INFO    ] Initializing speech engine...
[2026-06-05 18:26:05,993.993 INFO    ] 2026-06-05 18:26:05
[2026-06-05 18:26:06,250.250 INFO    ] 2026-06-05 18:26:06
[2026-06-05 18:26:06,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:26:06,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:26:06,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:26:06,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:26:06,763.763 INFO    ] time= 05/06/2026 18:26:06
[2026-06-05 18:26:06,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:26:06,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:26:06,980.980 INFO    ] No existing commands found in stream
[2026-06-05 18:26:12,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:26:12,010.010 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 18:26:14,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:26:14,993.993 INFO    ] Checking for system updates...
[2026-06-05 18:26:15,030.030 INFO    ] 200
[2026-06-05 18:26:15,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:15,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:26:15,094.094 INFO    ] No update needed
[2026-06-05 18:26:15,097.097 INFO    ] Checking for camera pi updates...
[2026-06-05 18:26:15,135.135 INFO    ] 200
[2026-06-05 18:26:15,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:15,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:26:15,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:26:15,219.219 INFO    ] No camera update needed
[2026-06-05 18:26:15,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:26:15,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:26:15,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:26:15,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:26:17,274.274 INFO    ] ================================================
[2026-06-05 18:26:17,290.290 INFO    ] Launching Daemon at Fri Jun  5 18:26:17 IST 2026
[2026-06-05 18:26:17,300.300 INFO    ] ================================================
[2026-06-05 18:26:17,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:26:17
[2026-06-05 18:26:18,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:26:18,746.746 INFO    ] Initializing speech engine...
[2026-06-05 18:26:18,770.770 INFO    ] 2026-06-05 18:26:18
[2026-06-05 18:26:19,042.042 INFO    ] 2026-06-05 18:26:19
[2026-06-05 18:26:19,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:26:19,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:26:19,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:26:19,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:26:19,553.553 INFO    ] time= 05/06/2026 18:26:19
[2026-06-05 18:26:19,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:26:19,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:26:19,812.812 INFO    ] No existing commands found in stream
[2026-06-05 18:26:24,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:26:24,830.830 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 18:26:27,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:26:27,077.077 INFO    ] Checking for system updates...
[2026-06-05 18:26:27,116.116 INFO    ] 200
[2026-06-05 18:26:27,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:27,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:26:27,181.181 INFO    ] No update needed
[2026-06-05 18:26:27,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 18:26:27,221.221 INFO    ] 200
[2026-06-05 18:26:27,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:27,265.265 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:26:27,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:26:27,308.308 INFO    ] No camera update needed
[2026-06-05 18:26:27,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:26:27,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:26:27,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:26:27,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:26:29,363.363 INFO    ] ================================================
[2026-06-05 18:26:29,378.378 INFO    ] Launching Daemon at Fri Jun  5 18:26:29 IST 2026
[2026-06-05 18:26:29,389.389 INFO    ] ================================================
[2026-06-05 18:26:29,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:26:29
[2026-06-05 18:26:30,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:26:30,819.819 INFO    ] Initializing speech engine...
[2026-06-05 18:26:30,842.842 INFO    ] 2026-06-05 18:26:30
[2026-06-05 18:26:31,099.099 INFO    ] 2026-06-05 18:26:31
[2026-06-05 18:26:31,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:26:31,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:26:31,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:26:31,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:26:31,690.690 INFO    ] time= 05/06/2026 18:26:31
[2026-06-05 18:26:31,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:26:31,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:26:31,898.898 INFO    ] No existing commands found in stream
[2026-06-05 18:26:36,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:26:36,931.931 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 18:26:39,791.791 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:26:39,793.793 INFO    ] Checking for system updates...
[2026-06-05 18:26:39,830.830 INFO    ] 200
[2026-06-05 18:26:39,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:39,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:26:39,895.895 INFO    ] No update needed
[2026-06-05 18:26:39,898.898 INFO    ] Checking for camera pi updates...
[2026-06-05 18:26:39,937.937 INFO    ] 200
[2026-06-05 18:26:39,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:39,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:26:40,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:26:40,038.038 INFO    ] No camera update needed
[2026-06-05 18:26:40,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:26:40,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:26:40,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:26:40,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:26:42,098.098 INFO    ] ================================================
[2026-06-05 18:26:42,117.117 INFO    ] Launching Daemon at Fri Jun  5 18:26:42 IST 2026
[2026-06-05 18:26:42,139.139 INFO    ] ================================================
[2026-06-05 18:26:42,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:26:42
[2026-06-05 18:26:43,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:26:43,597.597 INFO    ] Initializing speech engine...
[2026-06-05 18:26:43,619.619 INFO    ] 2026-06-05 18:26:43
[2026-06-05 18:26:43,887.887 INFO    ] 2026-06-05 18:26:43
[2026-06-05 18:26:43,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:26:44,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:26:44,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:26:44,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:26:44,388.388 INFO    ] time= 05/06/2026 18:26:44
[2026-06-05 18:26:44,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:26:44,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:26:44,560.560 INFO    ] No existing commands found in stream
[2026-06-05 18:26:49,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:26:49,576.576 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 18:26:50,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:26:50,396.396 INFO    ] Checking for system updates...
[2026-06-05 18:26:50,436.436 INFO    ] 200
[2026-06-05 18:26:50,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:50,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:26:50,501.501 INFO    ] No update needed
[2026-06-05 18:26:50,503.503 INFO    ] Checking for camera pi updates...
[2026-06-05 18:26:50,537.537 INFO    ] 200
[2026-06-05 18:26:50,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:26:50,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:26:50,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:26:50,631.631 INFO    ] No camera update needed
[2026-06-05 18:26:50,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:26:50,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:26:50,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:26:50,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:26:52,690.690 INFO    ] ================================================
[2026-06-05 18:26:52,705.705 INFO    ] Launching Daemon at Fri Jun  5 18:26:52 IST 2026
[2026-06-05 18:26:52,716.716 INFO    ] ================================================
[2026-06-05 18:26:53,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:26:53
[2026-06-05 18:26:54,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:26:54,374.374 INFO    ] Initializing speech engine...
[2026-06-05 18:26:54,384.384 INFO    ] 2026-06-05 18:26:54
[2026-06-05 18:26:54,672.672 INFO    ] 2026-06-05 18:26:54
[2026-06-05 18:26:54,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:26:55,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:26:55,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:26:55,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:26:55,588.588 INFO    ] time= 05/06/2026 18:26:55
[2026-06-05 18:26:55,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:26:55,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:26:55,838.838 INFO    ] No existing commands found in stream
[2026-06-05 18:27:00,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:27:00,854.854 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 18:27:02,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:27:02,157.157 INFO    ] Checking for system updates...
[2026-06-05 18:27:02,197.197 INFO    ] 200
[2026-06-05 18:27:02,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:02,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:27:02,291.291 INFO    ] No update needed
[2026-06-05 18:27:02,295.295 INFO    ] Checking for camera pi updates...
[2026-06-05 18:27:02,338.338 INFO    ] 200
[2026-06-05 18:27:02,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:02,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:27:02,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:27:02,434.434 INFO    ] No camera update needed
[2026-06-05 18:27:02,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:27:02,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:27:02,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:27:02,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:27:04,502.502 INFO    ] ================================================
[2026-06-05 18:27:04,518.518 INFO    ] Launching Daemon at Fri Jun  5 18:27:04 IST 2026
[2026-06-05 18:27:04,529.529 INFO    ] ================================================
[2026-06-05 18:27:05,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:27:05
[2026-06-05 18:27:05,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:27:05,963.963 INFO    ] Initializing speech engine...
[2026-06-05 18:27:05,978.978 INFO    ] 2026-06-05 18:27:05
[2026-06-05 18:27:06,253.253 INFO    ] 2026-06-05 18:27:06
[2026-06-05 18:27:06,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:27:06,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:27:06,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:27:06,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:27:06,639.639 INFO    ] time= 05/06/2026 18:27:06
[2026-06-05 18:27:06,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:27:06,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:27:06,765.765 INFO    ] No existing commands found in stream
[2026-06-05 18:27:11,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:27:11,780.780 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 18:27:13,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:27:13,488.488 INFO    ] Checking for system updates...
[2026-06-05 18:27:13,525.525 INFO    ] 200
[2026-06-05 18:27:13,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:13,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:27:13,588.588 INFO    ] No update needed
[2026-06-05 18:27:13,593.593 INFO    ] Checking for camera pi updates...
[2026-06-05 18:27:13,640.640 INFO    ] 200
[2026-06-05 18:27:13,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:13,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:27:13,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:27:13,857.857 INFO    ] No camera update needed
[2026-06-05 18:27:13,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:27:13,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:27:13,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:27:13,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:27:15,913.913 INFO    ] ================================================
[2026-06-05 18:27:15,928.928 INFO    ] Launching Daemon at Fri Jun  5 18:27:15 IST 2026
[2026-06-05 18:27:15,938.938 INFO    ] ================================================
[2026-06-05 18:27:16,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:27:16
[2026-06-05 18:27:17,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:27:17,382.382 INFO    ] Initializing speech engine...
[2026-06-05 18:27:17,397.397 INFO    ] 2026-06-05 18:27:17
[2026-06-05 18:27:17,687.687 INFO    ] 2026-06-05 18:27:17
[2026-06-05 18:27:17,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:27:17,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:27:17,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:27:18,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:27:18,092.092 INFO    ] time= 05/06/2026 18:27:18
[2026-06-05 18:27:18,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:27:18,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:27:18,201.201 INFO    ] No existing commands found in stream
[2026-06-05 18:27:23,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:27:23,216.216 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 18:27:25,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:27:25,896.896 INFO    ] Checking for system updates...
[2026-06-05 18:27:25,936.936 INFO    ] 200
[2026-06-05 18:27:25,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:25,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:27:25,994.994 INFO    ] No update needed
[2026-06-05 18:27:25,997.997 INFO    ] Checking for camera pi updates...
[2026-06-05 18:27:26,031.031 INFO    ] 200
[2026-06-05 18:27:26,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:26,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:27:26,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:27:26,136.136 INFO    ] No camera update needed
[2026-06-05 18:27:26,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:27:26,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:27:26,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:27:26,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:27:28,192.192 INFO    ] ================================================
[2026-06-05 18:27:28,207.207 INFO    ] Launching Daemon at Fri Jun  5 18:27:28 IST 2026
[2026-06-05 18:27:28,219.219 INFO    ] ================================================
[2026-06-05 18:27:28,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:27:28
[2026-06-05 18:27:29,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:27:29,682.682 INFO    ] Initializing speech engine...
[2026-06-05 18:27:29,698.698 INFO    ] 2026-06-05 18:27:29
[2026-06-05 18:27:29,978.978 INFO    ] 2026-06-05 18:27:29
[2026-06-05 18:27:30,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:27:30,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:27:30,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:27:30,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:27:30,630.630 INFO    ] time= 05/06/2026 18:27:30
[2026-06-05 18:27:30,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:27:30,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:27:30,795.795 INFO    ] No existing commands found in stream
[2026-06-05 18:27:35,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:27:35,829.829 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-05 18:27:37,479.479 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:27:37,482.482 INFO    ] Checking for system updates...
[2026-06-05 18:27:37,522.522 INFO    ] 200
[2026-06-05 18:27:37,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:37,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:27:37,582.582 INFO    ] No update needed
[2026-06-05 18:27:37,584.584 INFO    ] Checking for camera pi updates...
[2026-06-05 18:27:37,622.622 INFO    ] 200
[2026-06-05 18:27:37,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:37,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:27:37,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:27:37,694.694 INFO    ] No camera update needed
[2026-06-05 18:27:37,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:27:37,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:27:37,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:27:37,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:27:39,753.753 INFO    ] ================================================
[2026-06-05 18:27:39,769.769 INFO    ] Launching Daemon at Fri Jun  5 18:27:39 IST 2026
[2026-06-05 18:27:39,779.779 INFO    ] ================================================
[2026-06-05 18:27:40,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:27:40
[2026-06-05 18:27:40,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:27:41,221.221 INFO    ] Initializing speech engine...
[2026-06-05 18:27:41,231.231 INFO    ] 2026-06-05 18:27:41
[2026-06-05 18:27:41,476.476 INFO    ] 2026-06-05 18:27:41
[2026-06-05 18:27:41,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:27:42,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:27:42,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:27:42,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:27:42,471.471 INFO    ] time= 05/06/2026 18:27:42
[2026-06-05 18:27:42,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:27:42,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:27:42,611.611 INFO    ] No existing commands found in stream
[2026-06-05 18:27:47,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:27:47,623.623 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 18:27:48,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:27:48,129.129 INFO    ] Checking for system updates...
[2026-06-05 18:27:48,170.170 INFO    ] 200
[2026-06-05 18:27:48,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:48,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:27:48,229.229 INFO    ] No update needed
[2026-06-05 18:27:48,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 18:27:48,268.268 INFO    ] 200
[2026-06-05 18:27:48,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:27:48,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:27:48,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:27:48,346.346 INFO    ] No camera update needed
[2026-06-05 18:27:48,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:27:48,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:27:48,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:27:48,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:27:50,408.408 INFO    ] ================================================
[2026-06-05 18:27:50,423.423 INFO    ] Launching Daemon at Fri Jun  5 18:27:50 IST 2026
[2026-06-05 18:27:50,434.434 INFO    ] ================================================
[2026-06-05 18:27:51,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:27:51
[2026-06-05 18:27:51,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:27:51,890.890 INFO    ] Initializing speech engine...
[2026-06-05 18:27:51,896.896 INFO    ] 2026-06-05 18:27:51
[2026-06-05 18:27:52,158.158 INFO    ] 2026-06-05 18:27:52
[2026-06-05 18:27:52,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:27:52,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:27:52,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:27:52,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:27:52,719.719 INFO    ] time= 05/06/2026 18:27:52
[2026-06-05 18:27:52,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:27:52,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:27:52,884.884 INFO    ] No existing commands found in stream
[2026-06-05 18:27:57,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:27:57,917.917 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 18:28:01,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:28:01,755.755 INFO    ] Checking for system updates...
[2026-06-05 18:28:01,805.805 INFO    ] 200
[2026-06-05 18:28:01,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:01,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:28:01,870.870 INFO    ] No update needed
[2026-06-05 18:28:01,873.873 INFO    ] Checking for camera pi updates...
[2026-06-05 18:28:01,916.916 INFO    ] 200
[2026-06-05 18:28:01,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:01,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:28:02,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:28:02,008.008 INFO    ] No camera update needed
[2026-06-05 18:28:02,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:28:02,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:28:02,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:28:02,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:28:04,075.075 INFO    ] ================================================
[2026-06-05 18:28:04,090.090 INFO    ] Launching Daemon at Fri Jun  5 18:28:04 IST 2026
[2026-06-05 18:28:04,101.101 INFO    ] ================================================
[2026-06-05 18:28:04,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:28:04
[2026-06-05 18:28:05,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:28:05,669.669 INFO    ] Initializing speech engine...
[2026-06-05 18:28:05,674.674 INFO    ] 2026-06-05 18:28:05
[2026-06-05 18:28:05,926.926 INFO    ] 2026-06-05 18:28:05
[2026-06-05 18:28:05,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:28:06,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:28:06,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:28:06,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:28:06,300.300 INFO    ] time= 05/06/2026 18:28:06
[2026-06-05 18:28:06,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:28:06,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:28:06,739.739 INFO    ] No existing commands found in stream
[2026-06-05 18:28:11,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:28:11,752.752 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 18:28:15,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:28:15,209.209 INFO    ] Checking for system updates...
[2026-06-05 18:28:15,245.245 INFO    ] 200
[2026-06-05 18:28:15,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:15,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:28:15,312.312 INFO    ] No update needed
[2026-06-05 18:28:15,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 18:28:15,349.349 INFO    ] 200
[2026-06-05 18:28:15,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:15,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:28:15,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:28:15,447.447 INFO    ] No camera update needed
[2026-06-05 18:28:15,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:28:15,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:28:15,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:28:15,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:28:17,508.508 INFO    ] ================================================
[2026-06-05 18:28:17,524.524 INFO    ] Launching Daemon at Fri Jun  5 18:28:17 IST 2026
[2026-06-05 18:28:17,535.535 INFO    ] ================================================
[2026-06-05 18:28:18,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:28:18
[2026-06-05 18:28:18,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:28:19,194.194 INFO    ] Initializing speech engine...
[2026-06-05 18:28:19,207.207 INFO    ] 2026-06-05 18:28:19
[2026-06-05 18:28:19,503.503 INFO    ] 2026-06-05 18:28:19
[2026-06-05 18:28:19,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:28:19,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:28:19,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:28:20,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:28:20,269.269 INFO    ] time= 05/06/2026 18:28:20
[2026-06-05 18:28:20,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:28:20,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:28:20,498.498 INFO    ] No existing commands found in stream
[2026-06-05 18:28:25,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:28:25,520.520 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 18:28:29,801.801 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:28:29,804.804 INFO    ] Checking for system updates...
[2026-06-05 18:28:29,841.841 INFO    ] 200
[2026-06-05 18:28:29,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:29,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:28:29,907.907 INFO    ] No update needed
[2026-06-05 18:28:29,909.909 INFO    ] Checking for camera pi updates...
[2026-06-05 18:28:29,948.948 INFO    ] 200
[2026-06-05 18:28:29,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:29,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:28:30,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:28:30,033.033 INFO    ] No camera update needed
[2026-06-05 18:28:30,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:28:30,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:28:30,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:28:30,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:28:32,094.094 INFO    ] ================================================
[2026-06-05 18:28:32,112.112 INFO    ] Launching Daemon at Fri Jun  5 18:28:32 IST 2026
[2026-06-05 18:28:32,125.125 INFO    ] ================================================
[2026-06-05 18:28:32,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:28:32
[2026-06-05 18:28:33,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:28:33,801.801 INFO    ] Initializing speech engine...
[2026-06-05 18:28:33,816.816 INFO    ] 2026-06-05 18:28:33
[2026-06-05 18:28:34,137.137 INFO    ] 2026-06-05 18:28:34
[2026-06-05 18:28:34,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:28:34,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:28:34,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:28:34,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:28:34,887.887 INFO    ] time= 05/06/2026 18:28:34
[2026-06-05 18:28:34,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:28:34,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:28:35,203.203 INFO    ] No existing commands found in stream
[2026-06-05 18:28:40,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:28:40,238.238 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 18:28:44,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:28:44,469.469 INFO    ] Checking for system updates...
[2026-06-05 18:28:44,508.508 INFO    ] 200
[2026-06-05 18:28:44,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:44,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:28:44,576.576 INFO    ] No update needed
[2026-06-05 18:28:44,579.579 INFO    ] Checking for camera pi updates...
[2026-06-05 18:28:44,620.620 INFO    ] 200
[2026-06-05 18:28:44,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:44,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:28:44,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:28:44,723.723 INFO    ] No camera update needed
[2026-06-05 18:28:44,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:28:44,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:28:44,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:28:44,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:28:46,782.782 INFO    ] ================================================
[2026-06-05 18:28:46,797.797 INFO    ] Launching Daemon at Fri Jun  5 18:28:46 IST 2026
[2026-06-05 18:28:46,808.808 INFO    ] ================================================
[2026-06-05 18:28:47,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:28:47
[2026-06-05 18:28:47,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:28:48,244.244 INFO    ] Initializing speech engine...
[2026-06-05 18:28:48,253.253 INFO    ] 2026-06-05 18:28:48
[2026-06-05 18:28:48,515.515 INFO    ] 2026-06-05 18:28:48
[2026-06-05 18:28:48,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:28:48,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:28:48,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:28:49,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:28:49,062.062 INFO    ] time= 05/06/2026 18:28:49
[2026-06-05 18:28:49,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:28:49,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:28:49,231.231 INFO    ] No existing commands found in stream
[2026-06-05 18:28:54,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:28:54,265.265 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 18:28:58,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:28:58,502.502 INFO    ] Checking for system updates...
[2026-06-05 18:28:58,544.544 INFO    ] 200
[2026-06-05 18:28:58,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:58,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:28:58,610.610 INFO    ] No update needed
[2026-06-05 18:28:58,613.613 INFO    ] Checking for camera pi updates...
[2026-06-05 18:28:58,648.648 INFO    ] 200
[2026-06-05 18:28:58,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:28:58,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:28:58,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:28:58,753.753 INFO    ] No camera update needed
[2026-06-05 18:28:58,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:28:58,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:28:58,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:28:58,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:29:00,814.814 INFO    ] ================================================
[2026-06-05 18:29:00,830.830 INFO    ] Launching Daemon at Fri Jun  5 18:29:00 IST 2026
[2026-06-05 18:29:00,841.841 INFO    ] ================================================
[2026-06-05 18:29:01,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:29:01
[2026-06-05 18:29:02,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:29:02,646.646 INFO    ] Initializing speech engine...
[2026-06-05 18:29:02,655.655 INFO    ] 2026-06-05 18:29:02
[2026-06-05 18:29:02,986.986 INFO    ] 2026-06-05 18:29:02
[2026-06-05 18:29:03,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:29:03,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:29:03,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:29:03,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:29:03,460.460 INFO    ] time= 05/06/2026 18:29:03
[2026-06-05 18:29:03,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:29:03,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:29:03,648.648 INFO    ] No existing commands found in stream
[2026-06-05 18:29:08,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:29:08,677.677 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 18:29:10,299.299 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:29:10,301.301 INFO    ] Checking for system updates...
[2026-06-05 18:29:10,342.342 INFO    ] 200
[2026-06-05 18:29:10,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:29:10,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:29:10,407.407 INFO    ] No update needed
[2026-06-05 18:29:10,410.410 INFO    ] Checking for camera pi updates...
[2026-06-05 18:29:10,448.448 INFO    ] 200
[2026-06-05 18:29:10,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:29:10,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:29:10,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:29:10,541.541 INFO    ] No camera update needed
[2026-06-05 18:29:10,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:29:10,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:29:10,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:29:10,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:29:12,597.597 INFO    ] ================================================
[2026-06-05 18:29:12,613.613 INFO    ] Launching Daemon at Fri Jun  5 18:29:12 IST 2026
[2026-06-05 18:29:12,624.624 INFO    ] ================================================
[2026-06-05 18:29:13,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:29:13
[2026-06-05 18:29:13,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:29:14,036.036 INFO    ] Initializing speech engine...
[2026-06-05 18:29:14,050.050 INFO    ] 2026-06-05 18:29:14
[2026-06-05 18:29:14,360.360 INFO    ] 2026-06-05 18:29:14
[2026-06-05 18:29:14,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:29:14,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:29:14,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:29:14,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:29:14,951.951 INFO    ] time= 05/06/2026 18:29:14
[2026-06-05 18:29:14,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:29:14,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:29:15,164.164 INFO    ] No existing commands found in stream
[2026-06-05 18:29:20,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:29:20,201.201 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 18:29:23,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:29:23,030.030 INFO    ] Checking for system updates...
[2026-06-05 18:29:23,068.068 INFO    ] 200
[2026-06-05 18:29:23,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:29:23,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:29:23,129.129 INFO    ] No update needed
[2026-06-05 18:29:23,132.132 INFO    ] Checking for camera pi updates...
[2026-06-05 18:29:23,168.168 INFO    ] 200
[2026-06-05 18:29:23,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:29:23,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:29:23,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:29:23,303.303 INFO    ] No camera update needed
[2026-06-05 18:29:23,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:29:23,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:29:23,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:29:23,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:29:25,366.366 INFO    ] ================================================
[2026-06-05 18:29:25,382.382 INFO    ] Launching Daemon at Fri Jun  5 18:29:25 IST 2026
[2026-06-05 18:29:25,393.393 INFO    ] ================================================
[2026-06-05 18:29:26,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:29:26
[2026-06-05 18:29:26,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:29:27,081.081 INFO    ] Initializing speech engine...
[2026-06-05 18:29:27,088.088 INFO    ] 2026-06-05 18:29:27
[2026-06-05 18:29:27,385.385 INFO    ] 2026-06-05 18:29:27
[2026-06-05 18:29:27,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:29:27,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:29:27,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:29:28,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:29:28,261.261 INFO    ] time= 05/06/2026 18:29:28
[2026-06-05 18:29:28,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:29:28,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:29:28,525.525 INFO    ] No existing commands found in stream
[2026-06-05 18:29:33,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:29:33,542.542 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 18:29:35,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:29:35,705.705 INFO    ] Checking for system updates...
[2026-06-05 18:29:35,742.742 INFO    ] 200
[2026-06-05 18:29:35,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:29:35,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:29:35,806.806 INFO    ] No update needed
[2026-06-05 18:29:35,809.809 INFO    ] Checking for camera pi updates...
[2026-06-05 18:29:35,848.848 INFO    ] 200
[2026-06-05 18:29:35,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:29:35,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:29:35,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:29:35,947.947 INFO    ] No camera update needed
[2026-06-05 18:29:35,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:29:35,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:29:35,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:29:35,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:29:38,007.007 INFO    ] ================================================
[2026-06-05 18:29:38,023.023 INFO    ] Launching Daemon at Fri Jun  5 18:29:38 IST 2026
[2026-06-05 18:29:38,034.034 INFO    ] ================================================
[2026-06-05 18:29:38,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:29:38
[2026-06-05 18:29:39,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:29:39,457.457 INFO    ] Initializing speech engine...
[2026-06-05 18:29:39,463.463 INFO    ] 2026-06-05 18:29:39
[2026-06-05 18:29:39,762.762 INFO    ] 2026-06-05 18:29:39
[2026-06-05 18:29:39,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:29:40,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:29:40,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:29:40,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:29:40,186.186 INFO    ] time= 05/06/2026 18:29:40
[2026-06-05 18:29:40,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:29:40,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:29:40,277.277 INFO    ] No existing commands found in stream
[2026-06-05 18:29:45,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:29:45,292.292 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 18:29:48,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:29:48,385.385 INFO    ] Checking for system updates...
[2026-06-05 18:29:48,422.422 INFO    ] 200
[2026-06-05 18:29:48,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:29:48,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:29:48,488.488 INFO    ] No update needed
[2026-06-05 18:29:48,490.490 INFO    ] Checking for camera pi updates...
[2026-06-05 18:29:48,528.528 INFO    ] 200
[2026-06-05 18:29:48,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:29:48,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:29:48,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:29:48,620.620 INFO    ] No camera update needed
[2026-06-05 18:29:48,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:29:48,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:29:48,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:29:48,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:29:50,676.676 INFO    ] ================================================
[2026-06-05 18:29:50,692.692 INFO    ] Launching Daemon at Fri Jun  5 18:29:50 IST 2026
[2026-06-05 18:29:50,703.703 INFO    ] ================================================
[2026-06-05 18:29:51,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:29:51
[2026-06-05 18:29:51,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:29:52,142.142 INFO    ] Initializing speech engine...
[2026-06-05 18:29:52,151.151 INFO    ] 2026-06-05 18:29:52
[2026-06-05 18:29:52,402.402 INFO    ] 2026-06-05 18:29:52
[2026-06-05 18:29:52,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:29:52,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:29:52,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:29:52,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:29:52,782.782 INFO    ] time= 05/06/2026 18:29:52
[2026-06-05 18:29:52,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:29:52,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:29:52,965.965 INFO    ] No existing commands found in stream
[2026-06-05 18:29:57,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:29:57,998.998 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 18:30:01,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:30:01,673.673 INFO    ] Checking for system updates...
[2026-06-05 18:30:01,914.914 INFO    ] 200
[2026-06-05 18:30:01,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:02,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:30:02,214.214 INFO    ] No update needed
[2026-06-05 18:30:02,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 18:30:02,403.403 INFO    ] 200
[2026-06-05 18:30:02,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:02,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:30:02,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:30:02,594.594 INFO    ] No camera update needed
[2026-06-05 18:30:02,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:30:02,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:30:02,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:30:02,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:30:04,662.662 INFO    ] ================================================
[2026-06-05 18:30:04,679.679 INFO    ] Launching Daemon at Fri Jun  5 18:30:04 IST 2026
[2026-06-05 18:30:04,690.690 INFO    ] ================================================
[2026-06-05 18:30:05,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:30:05
[2026-06-05 18:30:05,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:30:06,101.101 INFO    ] Initializing speech engine...
[2026-06-05 18:30:06,116.116 INFO    ] 2026-06-05 18:30:06
[2026-06-05 18:30:06,383.383 INFO    ] 2026-06-05 18:30:06
[2026-06-05 18:30:06,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:30:06,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:30:06,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:30:06,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:30:06,868.868 INFO    ] time= 05/06/2026 18:30:06
[2026-06-05 18:30:06,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:30:06,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:30:07,045.045 INFO    ] No existing commands found in stream
[2026-06-05 18:30:12,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:30:12,084.084 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-05 18:30:13,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:30:13,854.854 INFO    ] Checking for system updates...
[2026-06-05 18:30:13,890.890 INFO    ] 200
[2026-06-05 18:30:13,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:13,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:30:13,949.949 INFO    ] No update needed
[2026-06-05 18:30:13,952.952 INFO    ] Checking for camera pi updates...
[2026-06-05 18:30:13,986.986 INFO    ] 200
[2026-06-05 18:30:13,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:14,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:30:14,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:30:14,081.081 INFO    ] No camera update needed
[2026-06-05 18:30:14,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:30:14,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:30:14,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:30:14,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:30:16,140.140 INFO    ] ================================================
[2026-06-05 18:30:16,157.157 INFO    ] Launching Daemon at Fri Jun  5 18:30:16 IST 2026
[2026-06-05 18:30:16,167.167 INFO    ] ================================================
[2026-06-05 18:30:16,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:30:16
[2026-06-05 18:30:17,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:30:17,587.587 INFO    ] Initializing speech engine...
[2026-06-05 18:30:17,593.593 INFO    ] 2026-06-05 18:30:17
[2026-06-05 18:30:17,870.870 INFO    ] 2026-06-05 18:30:17
[2026-06-05 18:30:17,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:30:18,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:30:18,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:30:18,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:30:18,354.354 INFO    ] time= 05/06/2026 18:30:18
[2026-06-05 18:30:18,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:30:18,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:30:18,593.593 INFO    ] No existing commands found in stream
[2026-06-05 18:30:23,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:30:23,618.618 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 18:30:29,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:30:29,283.283 INFO    ] Checking for system updates...
[2026-06-05 18:30:29,324.324 INFO    ] 200
[2026-06-05 18:30:29,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:29,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:30:29,390.390 INFO    ] No update needed
[2026-06-05 18:30:29,393.393 INFO    ] Checking for camera pi updates...
[2026-06-05 18:30:29,427.427 INFO    ] 200
[2026-06-05 18:30:29,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:29,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:30:29,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:30:29,500.500 INFO    ] No camera update needed
[2026-06-05 18:30:29,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:30:29,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:30:29,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:30:29,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:30:31,558.558 INFO    ] ================================================
[2026-06-05 18:30:31,574.574 INFO    ] Launching Daemon at Fri Jun  5 18:30:31 IST 2026
[2026-06-05 18:30:31,585.585 INFO    ] ================================================
[2026-06-05 18:30:32,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:30:32
[2026-06-05 18:30:32,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:30:33,147.147 INFO    ] Initializing speech engine...
[2026-06-05 18:30:33,163.163 INFO    ] 2026-06-05 18:30:33
[2026-06-05 18:30:33,450.450 INFO    ] 2026-06-05 18:30:33
[2026-06-05 18:30:33,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:30:33,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:30:33,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:30:33,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:30:33,855.855 INFO    ] time= 05/06/2026 18:30:33
[2026-06-05 18:30:33,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:30:33,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:30:33,990.990 INFO    ] No existing commands found in stream
[2026-06-05 18:30:39,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:30:39,005.005 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 18:30:41,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:30:41,249.249 INFO    ] Checking for system updates...
[2026-06-05 18:30:41,286.286 INFO    ] 200
[2026-06-05 18:30:41,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:41,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:30:41,345.345 INFO    ] No update needed
[2026-06-05 18:30:41,348.348 INFO    ] Checking for camera pi updates...
[2026-06-05 18:30:41,382.382 INFO    ] 200
[2026-06-05 18:30:41,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:41,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:30:41,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:30:41,458.458 INFO    ] No camera update needed
[2026-06-05 18:30:41,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:30:41,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:30:41,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:30:41,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:30:43,513.513 INFO    ] ================================================
[2026-06-05 18:30:43,528.528 INFO    ] Launching Daemon at Fri Jun  5 18:30:43 IST 2026
[2026-06-05 18:30:43,539.539 INFO    ] ================================================
[2026-06-05 18:30:44,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:30:44
[2026-06-05 18:30:44,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:30:44,997.997 INFO    ] Initializing speech engine...
[2026-06-05 18:30:45,006.006 INFO    ] 2026-06-05 18:30:45
[2026-06-05 18:30:45,292.292 INFO    ] 2026-06-05 18:30:45
[2026-06-05 18:30:45,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:30:45,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:30:45,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:30:45,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:30:45,673.673 INFO    ] time= 05/06/2026 18:30:45
[2026-06-05 18:30:45,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:30:45,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:30:45,756.756 INFO    ] No existing commands found in stream
[2026-06-05 18:30:50,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:30:50,773.773 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 18:30:54,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:30:54,752.752 INFO    ] Checking for system updates...
[2026-06-05 18:30:54,788.788 INFO    ] 200
[2026-06-05 18:30:54,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:54,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:30:54,846.846 INFO    ] No update needed
[2026-06-05 18:30:54,848.848 INFO    ] Checking for camera pi updates...
[2026-06-05 18:30:54,886.886 INFO    ] 200
[2026-06-05 18:30:54,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:30:54,935.935 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:30:54,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:30:54,988.988 INFO    ] No camera update needed
[2026-06-05 18:30:54,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:30:54,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:30:54,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:30:55,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:30:57,045.045 INFO    ] ================================================
[2026-06-05 18:30:57,060.060 INFO    ] Launching Daemon at Fri Jun  5 18:30:57 IST 2026
[2026-06-05 18:30:57,071.071 INFO    ] ================================================
[2026-06-05 18:30:57,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:30:57
[2026-06-05 18:30:58,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:30:58,485.485 INFO    ] Initializing speech engine...
[2026-06-05 18:30:58,499.499 INFO    ] 2026-06-05 18:30:58
[2026-06-05 18:30:58,764.764 INFO    ] 2026-06-05 18:30:58
[2026-06-05 18:30:58,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:30:59,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:30:59,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:30:59,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:30:59,814.814 INFO    ] time= 05/06/2026 18:30:59
[2026-06-05 18:30:59,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:30:59,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:30:59,947.947 INFO    ] No existing commands found in stream
[2026-06-05 18:31:04,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:31:04,963.963 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 18:31:06,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:31:06,229.229 INFO    ] Checking for system updates...
[2026-06-05 18:31:06,272.272 INFO    ] 200
[2026-06-05 18:31:06,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:31:06,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:31:06,338.338 INFO    ] No update needed
[2026-06-05 18:31:06,341.341 INFO    ] Checking for camera pi updates...
[2026-06-05 18:31:06,376.376 INFO    ] 200
[2026-06-05 18:31:06,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:31:06,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:31:06,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:31:06,472.472 INFO    ] No camera update needed
[2026-06-05 18:31:06,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:31:06,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:31:06,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:31:06,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:31:08,533.533 INFO    ] ================================================
[2026-06-05 18:31:08,548.548 INFO    ] Launching Daemon at Fri Jun  5 18:31:08 IST 2026
[2026-06-05 18:31:08,559.559 INFO    ] ================================================
[2026-06-05 18:31:09,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:31:09
[2026-06-05 18:31:09,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:31:10,023.023 INFO    ] Initializing speech engine...
[2026-06-05 18:31:10,029.029 INFO    ] 2026-06-05 18:31:10
[2026-06-05 18:31:10,290.290 INFO    ] 2026-06-05 18:31:10
[2026-06-05 18:31:10,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:31:10,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:31:10,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:31:10,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:31:10,884.884 INFO    ] time= 05/06/2026 18:31:10
[2026-06-05 18:31:10,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:31:10,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:31:11,122.122 INFO    ] No existing commands found in stream
[2026-06-05 18:31:16,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:31:16,140.140 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-05 18:31:19,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:31:19,642.642 INFO    ] Checking for system updates...
[2026-06-05 18:31:19,682.682 INFO    ] 200
[2026-06-05 18:31:19,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:31:19,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:31:19,762.762 INFO    ] No update needed
[2026-06-05 18:31:19,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 18:31:19,799.799 INFO    ] 200
[2026-06-05 18:31:19,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:31:19,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:31:19,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:31:19,887.887 INFO    ] No camera update needed
[2026-06-05 18:31:19,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:31:19,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:31:19,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:31:19,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:31:21,944.944 INFO    ] ================================================
[2026-06-05 18:31:21,959.959 INFO    ] Launching Daemon at Fri Jun  5 18:31:21 IST 2026
[2026-06-05 18:31:21,970.970 INFO    ] ================================================
[2026-06-05 18:31:22,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:31:22
[2026-06-05 18:31:23,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:31:23,479.479 INFO    ] Initializing speech engine...
[2026-06-05 18:31:23,489.489 INFO    ] 2026-06-05 18:31:23
[2026-06-05 18:31:23,771.771 INFO    ] 2026-06-05 18:31:23
[2026-06-05 18:31:23,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:31:24,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:31:24,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:31:24,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:31:24,336.336 INFO    ] time= 05/06/2026 18:31:24
[2026-06-05 18:31:24,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:31:24,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:31:24,493.493 INFO    ] No existing commands found in stream
[2026-06-05 18:31:29,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:31:29,514.514 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 18:31:31,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:31:31,628.628 INFO    ] Checking for system updates...
[2026-06-05 18:31:31,668.668 INFO    ] 200
[2026-06-05 18:31:31,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:31:31,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:31:31,732.732 INFO    ] No update needed
[2026-06-05 18:31:31,735.735 INFO    ] Checking for camera pi updates...
[2026-06-05 18:31:31,770.770 INFO    ] 200
[2026-06-05 18:31:31,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:31:31,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:31:31,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:31:31,953.953 INFO    ] No camera update needed
[2026-06-05 18:31:31,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:31:31,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:31:31,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:31:31,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:31:34,015.015 INFO    ] ================================================
[2026-06-05 18:31:34,031.031 INFO    ] Launching Daemon at Fri Jun  5 18:31:34 IST 2026
[2026-06-05 18:31:34,042.042 INFO    ] ================================================
[2026-06-05 18:31:34,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:31:34
[2026-06-05 18:31:35,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:31:35,527.527 INFO    ] Initializing speech engine...
[2026-06-05 18:31:35,534.534 INFO    ] 2026-06-05 18:31:35
[2026-06-05 18:31:35,808.808 INFO    ] 2026-06-05 18:31:35
[2026-06-05 18:31:35,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:31:36,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:31:36,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:31:36,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:31:36,349.349 INFO    ] time= 05/06/2026 18:31:36
[2026-06-05 18:31:36,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:31:36,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:31:36,504.504 INFO    ] No existing commands found in stream
[2026-06-05 18:31:41,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:31:41,527.527 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 18:31:44,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:31:44,324.324 INFO    ] Checking for system updates...
[2026-06-05 18:31:44,362.362 INFO    ] 200
[2026-06-05 18:31:44,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:31:44,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:31:44,420.420 INFO    ] No update needed
[2026-06-05 18:31:44,422.422 INFO    ] Checking for camera pi updates...
[2026-06-05 18:31:44,456.456 INFO    ] 200
[2026-06-05 18:31:44,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:31:44,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:31:44,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:31:44,542.542 INFO    ] No camera update needed
[2026-06-05 18:31:44,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:31:44,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:31:44,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:31:44,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:31:46,599.599 INFO    ] ================================================
[2026-06-05 18:31:46,615.615 INFO    ] Launching Daemon at Fri Jun  5 18:31:46 IST 2026
[2026-06-05 18:31:46,625.625 INFO    ] ================================================
[2026-06-05 18:31:47,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:31:47
[2026-06-05 18:31:47,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:31:48,237.237 INFO    ] Initializing speech engine...
[2026-06-05 18:31:48,246.246 INFO    ] 2026-06-05 18:31:48
[2026-06-05 18:31:48,516.516 INFO    ] 2026-06-05 18:31:48
[2026-06-05 18:31:48,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:31:49,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:31:49,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:31:50,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:31:50,010.010 INFO    ] time= 05/06/2026 18:31:50
[2026-06-05 18:31:50,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:31:50,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:31:50,088.088 INFO    ] No existing commands found in stream
[2026-06-05 18:31:55,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:31:55,103.103 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 18:32:00,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:32:00,733.733 INFO    ] Checking for system updates...
[2026-06-05 18:32:00,773.773 INFO    ] 200
[2026-06-05 18:32:00,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:00,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:32:00,842.842 INFO    ] No update needed
[2026-06-05 18:32:00,845.845 INFO    ] Checking for camera pi updates...
[2026-06-05 18:32:00,889.889 INFO    ] 200
[2026-06-05 18:32:00,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:00,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:32:00,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:32:00,995.995 INFO    ] No camera update needed
[2026-06-05 18:32:00,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:32:01,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:32:01,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:32:01,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:32:03,052.052 INFO    ] ================================================
[2026-06-05 18:32:03,068.068 INFO    ] Launching Daemon at Fri Jun  5 18:32:03 IST 2026
[2026-06-05 18:32:03,079.079 INFO    ] ================================================
[2026-06-05 18:32:03,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:32:03
[2026-06-05 18:32:04,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:32:04,512.512 INFO    ] Initializing speech engine...
[2026-06-05 18:32:04,521.521 INFO    ] 2026-06-05 18:32:04
[2026-06-05 18:32:04,817.817 INFO    ] 2026-06-05 18:32:04
[2026-06-05 18:32:04,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:32:05,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:32:05,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:32:05,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:32:05,218.218 INFO    ] time= 05/06/2026 18:32:05
[2026-06-05 18:32:05,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:32:05,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:32:05,353.353 INFO    ] No existing commands found in stream
[2026-06-05 18:32:10,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:32:10,368.368 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 18:32:15,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:32:15,571.571 INFO    ] Checking for system updates...
[2026-06-05 18:32:15,607.607 INFO    ] 200
[2026-06-05 18:32:15,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:15,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:32:15,666.666 INFO    ] No update needed
[2026-06-05 18:32:15,668.668 INFO    ] Checking for camera pi updates...
[2026-06-05 18:32:15,706.706 INFO    ] 200
[2026-06-05 18:32:15,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:15,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:32:15,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:32:15,792.792 INFO    ] No camera update needed
[2026-06-05 18:32:15,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:32:15,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:32:15,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:32:15,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:32:17,849.849 INFO    ] ================================================
[2026-06-05 18:32:17,864.864 INFO    ] Launching Daemon at Fri Jun  5 18:32:17 IST 2026
[2026-06-05 18:32:17,875.875 INFO    ] ================================================
[2026-06-05 18:32:18,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:32:18
[2026-06-05 18:32:19,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:32:19,479.479 INFO    ] Initializing speech engine...
[2026-06-05 18:32:19,490.490 INFO    ] 2026-06-05 18:32:19
[2026-06-05 18:32:19,780.780 INFO    ] 2026-06-05 18:32:19
[2026-06-05 18:32:19,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:32:20,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:32:20,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:32:20,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:32:20,530.530 INFO    ] time= 05/06/2026 18:32:20
[2026-06-05 18:32:20,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:32:20,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:32:20,687.687 INFO    ] No existing commands found in stream
[2026-06-05 18:32:25,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:32:25,700.700 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 18:32:31,103.103 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:32:31,107.107 INFO    ] Checking for system updates...
[2026-06-05 18:32:31,143.143 INFO    ] 200
[2026-06-05 18:32:31,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:31,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:32:31,207.207 INFO    ] No update needed
[2026-06-05 18:32:31,210.210 INFO    ] Checking for camera pi updates...
[2026-06-05 18:32:31,243.243 INFO    ] 200
[2026-06-05 18:32:31,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:31,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:32:31,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:32:31,340.340 INFO    ] No camera update needed
[2026-06-05 18:32:31,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:32:31,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:32:31,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:32:31,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:32:33,397.397 INFO    ] ================================================
[2026-06-05 18:32:33,413.413 INFO    ] Launching Daemon at Fri Jun  5 18:32:33 IST 2026
[2026-06-05 18:32:33,423.423 INFO    ] ================================================
[2026-06-05 18:32:34,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:32:33
[2026-06-05 18:32:34,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:32:34,858.858 INFO    ] Initializing speech engine...
[2026-06-05 18:32:34,870.870 INFO    ] 2026-06-05 18:32:34
[2026-06-05 18:32:35,134.134 INFO    ] 2026-06-05 18:32:35
[2026-06-05 18:32:35,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:32:35,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:32:35,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:32:35,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:32:35,639.639 INFO    ] time= 05/06/2026 18:32:35
[2026-06-05 18:32:35,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:32:35,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:32:35,857.857 INFO    ] No existing commands found in stream
[2026-06-05 18:32:40,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:32:40,878.878 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 18:32:43,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:32:43,857.857 INFO    ] Checking for system updates...
[2026-06-05 18:32:43,898.898 INFO    ] 200
[2026-06-05 18:32:43,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:43,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:32:43,962.962 INFO    ] No update needed
[2026-06-05 18:32:43,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 18:32:44,002.002 INFO    ] 200
[2026-06-05 18:32:44,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:44,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:32:44,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:32:44,093.093 INFO    ] No camera update needed
[2026-06-05 18:32:44,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:32:44,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:32:44,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:32:44,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:32:46,149.149 INFO    ] ================================================
[2026-06-05 18:32:46,163.163 INFO    ] Launching Daemon at Fri Jun  5 18:32:46 IST 2026
[2026-06-05 18:32:46,174.174 INFO    ] ================================================
[2026-06-05 18:32:46,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:32:46
[2026-06-05 18:32:47,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:32:47,585.585 INFO    ] Initializing speech engine...
[2026-06-05 18:32:47,594.594 INFO    ] 2026-06-05 18:32:47
[2026-06-05 18:32:47,884.884 INFO    ] 2026-06-05 18:32:47
[2026-06-05 18:32:47,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:32:48,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:32:48,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:32:48,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:32:48,301.301 INFO    ] time= 05/06/2026 18:32:48
[2026-06-05 18:32:48,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:32:48,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:32:48,461.461 INFO    ] No existing commands found in stream
[2026-06-05 18:32:53,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:32:53,494.494 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 18:32:54,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:32:54,490.490 INFO    ] Checking for system updates...
[2026-06-05 18:32:54,526.526 INFO    ] 200
[2026-06-05 18:32:54,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:54,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:32:54,585.585 INFO    ] No update needed
[2026-06-05 18:32:54,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 18:32:54,621.621 INFO    ] 200
[2026-06-05 18:32:54,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:32:54,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:32:54,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:32:54,718.718 INFO    ] No camera update needed
[2026-06-05 18:32:54,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:32:54,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:32:54,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:32:54,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:32:56,773.773 INFO    ] ================================================
[2026-06-05 18:32:56,788.788 INFO    ] Launching Daemon at Fri Jun  5 18:32:56 IST 2026
[2026-06-05 18:32:56,798.798 INFO    ] ================================================
[2026-06-05 18:32:57,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:32:57
[2026-06-05 18:32:57,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:32:58,213.213 INFO    ] Initializing speech engine...
[2026-06-05 18:32:58,230.230 INFO    ] 2026-06-05 18:32:58
[2026-06-05 18:32:58,515.515 INFO    ] 2026-06-05 18:32:58
[2026-06-05 18:32:58,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:33:01,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:33:01,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:33:01,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:33:01,486.486 INFO    ] time= 05/06/2026 18:33:01
[2026-06-05 18:33:01,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:33:01,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:33:01,668.668 INFO    ] No existing commands found in stream
[2026-06-05 18:33:06,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:33:06,682.682 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 18:33:10,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:33:10,610.610 INFO    ] Checking for system updates...
[2026-06-05 18:33:10,651.651 INFO    ] 200
[2026-06-05 18:33:10,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:33:10,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:33:10,713.713 INFO    ] No update needed
[2026-06-05 18:33:10,715.715 INFO    ] Checking for camera pi updates...
[2026-06-05 18:33:10,752.752 INFO    ] 200
[2026-06-05 18:33:10,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:33:10,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:33:10,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:33:10,843.843 INFO    ] No camera update needed
[2026-06-05 18:33:10,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:33:10,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:33:10,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:33:10,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:33:12,898.898 INFO    ] ================================================
[2026-06-05 18:33:12,914.914 INFO    ] Launching Daemon at Fri Jun  5 18:33:12 IST 2026
[2026-06-05 18:33:12,925.925 INFO    ] ================================================
[2026-06-05 18:33:13,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:33:13
[2026-06-05 18:33:14,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:33:14,515.515 INFO    ] Initializing speech engine...
[2026-06-05 18:33:14,525.525 INFO    ] 2026-06-05 18:33:14
[2026-06-05 18:33:14,805.805 INFO    ] 2026-06-05 18:33:14
[2026-06-05 18:33:14,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:33:15,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:33:15,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:33:15,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:33:15,290.290 INFO    ] time= 05/06/2026 18:33:15
[2026-06-05 18:33:15,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:33:15,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:33:15,525.525 INFO    ] No existing commands found in stream
[2026-06-05 18:33:20,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:33:20,551.551 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 18:33:24,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:33:24,649.649 INFO    ] Checking for system updates...
[2026-06-05 18:33:24,685.685 INFO    ] 200
[2026-06-05 18:33:24,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:33:24,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:33:24,757.757 INFO    ] No update needed
[2026-06-05 18:33:24,760.760 INFO    ] Checking for camera pi updates...
[2026-06-05 18:33:24,799.799 INFO    ] 200
[2026-06-05 18:33:24,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:33:24,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:33:24,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:33:24,901.901 INFO    ] No camera update needed
[2026-06-05 18:33:24,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:33:24,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:33:24,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:33:24,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:33:26,961.961 INFO    ] ================================================
[2026-06-05 18:33:26,977.977 INFO    ] Launching Daemon at Fri Jun  5 18:33:26 IST 2026
[2026-06-05 18:33:26,988.988 INFO    ] ================================================
[2026-06-05 18:33:27,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:33:27
[2026-06-05 18:33:28,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:33:28,571.571 INFO    ] Initializing speech engine...
[2026-06-05 18:33:28,579.579 INFO    ] 2026-06-05 18:33:28
[2026-06-05 18:33:28,851.851 INFO    ] 2026-06-05 18:33:28
[2026-06-05 18:33:28,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:33:31,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:33:31,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:33:32,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:33:32,032.032 INFO    ] time= 05/06/2026 18:33:32
[2026-06-05 18:33:32,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:33:32,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:33:32,100.100 INFO    ] No existing commands found in stream
[2026-06-05 18:33:37,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:33:37,112.112 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 18:33:37,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:33:37,810.810 INFO    ] Checking for system updates...
[2026-06-05 18:33:37,846.846 INFO    ] 200
[2026-06-05 18:33:37,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:33:37,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:33:37,909.909 INFO    ] No update needed
[2026-06-05 18:33:37,911.911 INFO    ] Checking for camera pi updates...
[2026-06-05 18:33:37,945.945 INFO    ] 200
[2026-06-05 18:33:37,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:33:37,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:33:38,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:33:38,137.137 INFO    ] No camera update needed
[2026-06-05 18:33:38,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:33:38,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:33:38,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:33:38,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:33:40,195.195 INFO    ] ================================================
[2026-06-05 18:33:40,211.211 INFO    ] Launching Daemon at Fri Jun  5 18:33:40 IST 2026
[2026-06-05 18:33:40,222.222 INFO    ] ================================================
[2026-06-05 18:33:40,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:33:40
[2026-06-05 18:33:41,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:33:41,676.676 INFO    ] Initializing speech engine...
[2026-06-05 18:33:41,685.685 INFO    ] 2026-06-05 18:33:41
[2026-06-05 18:33:41,940.940 INFO    ] 2026-06-05 18:33:41
[2026-06-05 18:33:41,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:33:42,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:33:42,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:33:42,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:33:42,504.504 INFO    ] time= 05/06/2026 18:33:42
[2026-06-05 18:33:42,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:33:42,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:33:42,644.644 INFO    ] No existing commands found in stream
[2026-06-05 18:33:47,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:33:47,671.671 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 18:33:50,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:33:50,321.321 INFO    ] Checking for system updates...
[2026-06-05 18:33:50,358.358 INFO    ] 200
[2026-06-05 18:33:50,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:33:50,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:33:50,422.422 INFO    ] No update needed
[2026-06-05 18:33:50,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 18:33:50,476.476 INFO    ] 200
[2026-06-05 18:33:50,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:33:50,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:33:50,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:33:50,581.581 INFO    ] No camera update needed
[2026-06-05 18:33:50,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:33:50,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:33:50,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:33:50,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:33:52,639.639 INFO    ] ================================================
[2026-06-05 18:33:52,679.679 INFO    ] Launching Daemon at Fri Jun  5 18:33:52 IST 2026
[2026-06-05 18:33:52,690.690 INFO    ] ================================================
[2026-06-05 18:33:53,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:33:53
[2026-06-05 18:33:53,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:33:54,110.110 INFO    ] Initializing speech engine...
[2026-06-05 18:33:54,126.126 INFO    ] 2026-06-05 18:33:54
[2026-06-05 18:33:54,405.405 INFO    ] 2026-06-05 18:33:54
[2026-06-05 18:33:54,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:34:09,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:34:09,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:34:14,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:34:14,752.752 INFO    ] time= 05/06/2026 18:34:14
[2026-06-05 18:34:14,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:34:14,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:34:14,815.815 INFO    ] No existing commands found in stream
[2026-06-05 18:34:19,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:34:19,828.828 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 18:34:23,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:34:23,928.928 INFO    ] Checking for system updates...
[2026-06-05 18:34:23,964.964 INFO    ] 200
[2026-06-05 18:34:23,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:34:24,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:34:24,023.023 INFO    ] No update needed
[2026-06-05 18:34:24,025.025 INFO    ] Checking for camera pi updates...
[2026-06-05 18:34:24,059.059 INFO    ] 200
[2026-06-05 18:34:24,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:34:24,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:34:24,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:34:24,152.152 INFO    ] No camera update needed
[2026-06-05 18:34:24,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:34:24,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:34:24,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:34:24,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:34:26,210.210 INFO    ] ================================================
[2026-06-05 18:34:26,225.225 INFO    ] Launching Daemon at Fri Jun  5 18:34:26 IST 2026
[2026-06-05 18:34:26,236.236 INFO    ] ================================================
[2026-06-05 18:34:26,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:34:26
[2026-06-05 18:34:27,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:34:27,820.820 INFO    ] Initializing speech engine...
[2026-06-05 18:34:27,829.829 INFO    ] 2026-06-05 18:34:27
[2026-06-05 18:34:28,117.117 INFO    ] 2026-06-05 18:34:28
[2026-06-05 18:34:28,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:34:29,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:34:29,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:34:29,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:34:29,305.305 INFO    ] time= 05/06/2026 18:34:29
[2026-06-05 18:34:29,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:34:29,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:34:29,446.446 INFO    ] No existing commands found in stream
[2026-06-05 18:34:34,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:34:34,467.467 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 18:34:36,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:34:36,514.514 INFO    ] Checking for system updates...
[2026-06-05 18:34:36,555.555 INFO    ] 200
[2026-06-05 18:34:36,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:34:36,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:34:36,616.616 INFO    ] No update needed
[2026-06-05 18:34:36,619.619 INFO    ] Checking for camera pi updates...
[2026-06-05 18:34:36,653.653 INFO    ] 200
[2026-06-05 18:34:36,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:34:36,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:34:36,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:34:36,750.750 INFO    ] No camera update needed
[2026-06-05 18:34:36,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:34:36,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:34:36,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:34:36,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:34:38,808.808 INFO    ] ================================================
[2026-06-05 18:34:38,823.823 INFO    ] Launching Daemon at Fri Jun  5 18:34:38 IST 2026
[2026-06-05 18:34:38,834.834 INFO    ] ================================================
[2026-06-05 18:34:39,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:34:39
[2026-06-05 18:34:40,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:34:40,305.305 INFO    ] Initializing speech engine...
[2026-06-05 18:34:40,313.313 INFO    ] 2026-06-05 18:34:40
[2026-06-05 18:34:40,573.573 INFO    ] 2026-06-05 18:34:40
[2026-06-05 18:34:40,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:34:40,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:34:40,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:34:41,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:34:41,134.134 INFO    ] time= 05/06/2026 18:34:41
[2026-06-05 18:34:41,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:34:41,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:34:41,326.326 INFO    ] No existing commands found in stream
[2026-06-05 18:34:46,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:34:46,360.360 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 18:34:50,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:34:50,654.654 INFO    ] Checking for system updates...
[2026-06-05 18:34:50,694.694 INFO    ] 200
[2026-06-05 18:34:50,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:34:50,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:34:50,752.752 INFO    ] No update needed
[2026-06-05 18:34:50,755.755 INFO    ] Checking for camera pi updates...
[2026-06-05 18:34:50,791.791 INFO    ] 200
[2026-06-05 18:34:50,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:34:50,844.844 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:34:50,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:34:50,891.891 INFO    ] No camera update needed
[2026-06-05 18:34:50,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:34:50,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:34:50,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:34:50,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:34:52,946.946 INFO    ] ================================================
[2026-06-05 18:34:52,961.961 INFO    ] Launching Daemon at Fri Jun  5 18:34:52 IST 2026
[2026-06-05 18:34:52,973.973 INFO    ] ================================================
[2026-06-05 18:34:53,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:34:53
[2026-06-05 18:34:54,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:34:54,409.409 INFO    ] Initializing speech engine...
[2026-06-05 18:34:54,418.418 INFO    ] 2026-06-05 18:34:54
[2026-06-05 18:34:54,677.677 INFO    ] 2026-06-05 18:34:54
[2026-06-05 18:34:54,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:34:55,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:34:55,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:34:55,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:34:55,241.241 INFO    ] time= 05/06/2026 18:34:55
[2026-06-05 18:34:55,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:34:55,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:34:55,403.403 INFO    ] No existing commands found in stream
[2026-06-05 18:35:00,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:35:00,430.430 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 18:35:04,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:35:04,451.451 INFO    ] Checking for system updates...
[2026-06-05 18:35:04,487.487 INFO    ] 200
[2026-06-05 18:35:04,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:04,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:04,546.546 INFO    ] No update needed
[2026-06-05 18:35:04,548.548 INFO    ] Checking for camera pi updates...
[2026-06-05 18:35:04,586.586 INFO    ] 200
[2026-06-05 18:35:04,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:04,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:35:04,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:04,663.663 INFO    ] No camera update needed
[2026-06-05 18:35:04,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:35:04,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:35:04,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:35:04,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:35:06,719.719 INFO    ] ================================================
[2026-06-05 18:35:06,734.734 INFO    ] Launching Daemon at Fri Jun  5 18:35:06 IST 2026
[2026-06-05 18:35:06,746.746 INFO    ] ================================================
[2026-06-05 18:35:07,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:35:07
[2026-06-05 18:35:08,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:35:08,325.325 INFO    ] Initializing speech engine...
[2026-06-05 18:35:08,337.337 INFO    ] 2026-06-05 18:35:08
[2026-06-05 18:35:08,602.602 INFO    ] 2026-06-05 18:35:08
[2026-06-05 18:35:08,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:35:08,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:35:09,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:35:09,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:35:09,234.234 INFO    ] time= 05/06/2026 18:35:09
[2026-06-05 18:35:09,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:35:09,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:35:09,511.511 INFO    ] No existing commands found in stream
[2026-06-05 18:35:14,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:35:14,540.540 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 18:35:18,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:35:18,463.463 INFO    ] Checking for system updates...
[2026-06-05 18:35:18,503.503 INFO    ] 200
[2026-06-05 18:35:18,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:18,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:18,563.563 INFO    ] No update needed
[2026-06-05 18:35:18,566.566 INFO    ] Checking for camera pi updates...
[2026-06-05 18:35:18,600.600 INFO    ] 200
[2026-06-05 18:35:18,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:18,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:35:18,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:18,691.691 INFO    ] No camera update needed
[2026-06-05 18:35:18,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:35:18,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:35:18,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:35:18,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:35:20,750.750 INFO    ] ================================================
[2026-06-05 18:35:20,766.766 INFO    ] Launching Daemon at Fri Jun  5 18:35:20 IST 2026
[2026-06-05 18:35:20,777.777 INFO    ] ================================================
[2026-06-05 18:35:21,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:35:21
[2026-06-05 18:35:21,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:35:22,186.186 INFO    ] Initializing speech engine...
[2026-06-05 18:35:22,192.192 INFO    ] 2026-06-05 18:35:22
[2026-06-05 18:35:22,467.467 INFO    ] 2026-06-05 18:35:22
[2026-06-05 18:35:22,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:35:22,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:35:22,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:35:22,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:35:22,977.977 INFO    ] time= 05/06/2026 18:35:22
[2026-06-05 18:35:23,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:35:23,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:35:23,174.174 INFO    ] No existing commands found in stream
[2026-06-05 18:35:28,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:35:28,189.189 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 18:35:31,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:35:31,799.799 INFO    ] Checking for system updates...
[2026-06-05 18:35:31,842.842 INFO    ] 200
[2026-06-05 18:35:31,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:31,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:31,908.908 INFO    ] No update needed
[2026-06-05 18:35:31,911.911 INFO    ] Checking for camera pi updates...
[2026-06-05 18:35:31,948.948 INFO    ] 200
[2026-06-05 18:35:31,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:31,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:35:32,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:32,033.033 INFO    ] No camera update needed
[2026-06-05 18:35:32,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:35:32,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:35:32,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:35:32,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:35:34,095.095 INFO    ] ================================================
[2026-06-05 18:35:34,111.111 INFO    ] Launching Daemon at Fri Jun  5 18:35:34 IST 2026
[2026-06-05 18:35:34,122.122 INFO    ] ================================================
[2026-06-05 18:35:34,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:35:34
[2026-06-05 18:35:35,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:35:35,610.610 INFO    ] Initializing speech engine...
[2026-06-05 18:35:35,618.618 INFO    ] 2026-06-05 18:35:35
[2026-06-05 18:35:35,875.875 INFO    ] 2026-06-05 18:35:35
[2026-06-05 18:35:35,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:35:36,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:35:36,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:35:36,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:35:36,372.372 INFO    ] time= 05/06/2026 18:35:36
[2026-06-05 18:35:36,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:35:36,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:35:36,589.589 INFO    ] No existing commands found in stream
[2026-06-05 18:35:41,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:35:41,619.619 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 18:35:42,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:35:42,878.878 INFO    ] Checking for system updates...
[2026-06-05 18:35:42,914.914 INFO    ] 200
[2026-06-05 18:35:42,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:42,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:42,978.978 INFO    ] No update needed
[2026-06-05 18:35:42,981.981 INFO    ] Checking for camera pi updates...
[2026-06-05 18:35:43,015.015 INFO    ] 200
[2026-06-05 18:35:43,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:43,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:35:43,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:43,213.213 INFO    ] No camera update needed
[2026-06-05 18:35:43,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:35:43,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:35:43,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:35:43,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:35:45,271.271 INFO    ] ================================================
[2026-06-05 18:35:45,287.287 INFO    ] Launching Daemon at Fri Jun  5 18:35:45 IST 2026
[2026-06-05 18:35:45,298.298 INFO    ] ================================================
[2026-06-05 18:35:45,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:35:45
[2026-06-05 18:35:46,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:35:46,790.790 INFO    ] Initializing speech engine...
[2026-06-05 18:35:46,800.800 INFO    ] 2026-06-05 18:35:46
[2026-06-05 18:35:47,075.075 INFO    ] 2026-06-05 18:35:47
[2026-06-05 18:35:47,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:35:47,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:35:47,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:35:47,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:35:47,641.641 INFO    ] time= 05/06/2026 18:35:47
[2026-06-05 18:35:47,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:35:47,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:35:47,816.816 INFO    ] No existing commands found in stream
[2026-06-05 18:35:52,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:35:52,850.850 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 18:35:55,961.961 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:35:55,964.964 INFO    ] Checking for system updates...
[2026-06-05 18:35:56,002.002 INFO    ] 200
[2026-06-05 18:35:56,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:56,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:56,061.061 INFO    ] No update needed
[2026-06-05 18:35:56,063.063 INFO    ] Checking for camera pi updates...
[2026-06-05 18:35:56,097.097 INFO    ] 200
[2026-06-05 18:35:56,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:35:56,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:35:56,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:35:56,201.201 INFO    ] No camera update needed
[2026-06-05 18:35:56,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:35:56,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:35:56,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:35:56,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:35:58,257.257 INFO    ] ================================================
[2026-06-05 18:35:58,272.272 INFO    ] Launching Daemon at Fri Jun  5 18:35:58 IST 2026
[2026-06-05 18:35:58,284.284 INFO    ] ================================================
[2026-06-05 18:35:58,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:35:58
[2026-06-05 18:35:59,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:35:59,756.756 INFO    ] Initializing speech engine...
[2026-06-05 18:35:59,777.777 INFO    ] 2026-06-05 18:35:59
[2026-06-05 18:36:00,062.062 INFO    ] 2026-06-05 18:36:00
[2026-06-05 18:36:00,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:36:00,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:36:00,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:36:00,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:36:00,566.566 INFO    ] time= 05/06/2026 18:36:00
[2026-06-05 18:36:00,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:36:00,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:36:00,846.846 INFO    ] No existing commands found in stream
[2026-06-05 18:36:05,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:36:05,877.877 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 18:36:07,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:36:07,345.345 INFO    ] Checking for system updates...
[2026-06-05 18:36:07,383.383 INFO    ] 200
[2026-06-05 18:36:07,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:07,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:36:07,442.442 INFO    ] No update needed
[2026-06-05 18:36:07,445.445 INFO    ] Checking for camera pi updates...
[2026-06-05 18:36:07,481.481 INFO    ] 200
[2026-06-05 18:36:07,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:07,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:36:07,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:36:07,556.556 INFO    ] No camera update needed
[2026-06-05 18:36:07,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:36:07,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:36:07,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:36:07,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:36:09,613.613 INFO    ] ================================================
[2026-06-05 18:36:09,630.630 INFO    ] Launching Daemon at Fri Jun  5 18:36:09 IST 2026
[2026-06-05 18:36:09,641.641 INFO    ] ================================================
[2026-06-05 18:36:10,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:36:10
[2026-06-05 18:36:10,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:36:11,146.146 INFO    ] Initializing speech engine...
[2026-06-05 18:36:11,154.154 INFO    ] 2026-06-05 18:36:11
[2026-06-05 18:36:11,430.430 INFO    ] 2026-06-05 18:36:11
[2026-06-05 18:36:11,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:36:11,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:36:11,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:36:11,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:36:11,826.826 INFO    ] time= 05/06/2026 18:36:11
[2026-06-05 18:36:11,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:36:11,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:36:11,944.944 INFO    ] No existing commands found in stream
[2026-06-05 18:36:16,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:36:16,962.962 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 18:36:19,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:36:19,955.955 INFO    ] Checking for system updates...
[2026-06-05 18:36:19,996.996 INFO    ] 200
[2026-06-05 18:36:19,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:20,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:36:20,054.054 INFO    ] No update needed
[2026-06-05 18:36:20,057.057 INFO    ] Checking for camera pi updates...
[2026-06-05 18:36:20,095.095 INFO    ] 200
[2026-06-05 18:36:20,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:20,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:36:20,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:36:20,184.184 INFO    ] No camera update needed
[2026-06-05 18:36:20,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:36:20,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:36:20,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:36:20,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:36:22,241.241 INFO    ] ================================================
[2026-06-05 18:36:22,256.256 INFO    ] Launching Daemon at Fri Jun  5 18:36:22 IST 2026
[2026-06-05 18:36:22,267.267 INFO    ] ================================================
[2026-06-05 18:36:22,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:36:22
[2026-06-05 18:36:23,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:36:23,822.822 INFO    ] Initializing speech engine...
[2026-06-05 18:36:23,842.842 INFO    ] 2026-06-05 18:36:23
[2026-06-05 18:36:24,103.103 INFO    ] 2026-06-05 18:36:24
[2026-06-05 18:36:24,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:36:24,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:36:24,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:36:24,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:36:24,645.645 INFO    ] time= 05/06/2026 18:36:24
[2026-06-05 18:36:24,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:36:24,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:36:24,817.817 INFO    ] No existing commands found in stream
[2026-06-05 18:36:29,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:36:29,849.849 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 18:36:31,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:36:31,734.734 INFO    ] Checking for system updates...
[2026-06-05 18:36:31,772.772 INFO    ] 200
[2026-06-05 18:36:31,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:31,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:36:31,840.840 INFO    ] No update needed
[2026-06-05 18:36:31,843.843 INFO    ] Checking for camera pi updates...
[2026-06-05 18:36:31,881.881 INFO    ] 200
[2026-06-05 18:36:31,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:31,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:36:31,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:36:31,964.964 INFO    ] No camera update needed
[2026-06-05 18:36:31,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:36:31,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:36:31,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:36:31,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:36:34,029.029 INFO    ] ================================================
[2026-06-05 18:36:34,045.045 INFO    ] Launching Daemon at Fri Jun  5 18:36:34 IST 2026
[2026-06-05 18:36:34,056.056 INFO    ] ================================================
[2026-06-05 18:36:34,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:36:34
[2026-06-05 18:36:35,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:36:35,509.509 INFO    ] Initializing speech engine...
[2026-06-05 18:36:35,520.520 INFO    ] 2026-06-05 18:36:35
[2026-06-05 18:36:35,768.768 INFO    ] 2026-06-05 18:36:35
[2026-06-05 18:36:35,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:36:36,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:36:36,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:36:36,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:36:36,167.167 INFO    ] time= 05/06/2026 18:36:36
[2026-06-05 18:36:36,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:36:36,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:36:36,262.262 INFO    ] No existing commands found in stream
[2026-06-05 18:36:41,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:36:41,300.300 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 18:36:44,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:36:44,262.262 INFO    ] Checking for system updates...
[2026-06-05 18:36:44,299.299 INFO    ] 200
[2026-06-05 18:36:44,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:44,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:36:44,357.357 INFO    ] No update needed
[2026-06-05 18:36:44,359.359 INFO    ] Checking for camera pi updates...
[2026-06-05 18:36:44,393.393 INFO    ] 200
[2026-06-05 18:36:44,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:44,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:36:44,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:36:44,482.482 INFO    ] No camera update needed
[2026-06-05 18:36:44,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:36:44,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:36:44,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:36:44,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:36:46,538.538 INFO    ] ================================================
[2026-06-05 18:36:46,554.554 INFO    ] Launching Daemon at Fri Jun  5 18:36:46 IST 2026
[2026-06-05 18:36:46,565.565 INFO    ] ================================================
[2026-06-05 18:36:47,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:36:47
[2026-06-05 18:36:47,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:36:48,000.000 INFO    ] Initializing speech engine...
[2026-06-05 18:36:48,013.013 INFO    ] 2026-06-05 18:36:48
[2026-06-05 18:36:48,282.282 INFO    ] 2026-06-05 18:36:48
[2026-06-05 18:36:48,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:36:48,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:36:48,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:36:48,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:36:48,664.664 INFO    ] time= 05/06/2026 18:36:48
[2026-06-05 18:36:48,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:36:48,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:36:48,865.865 INFO    ] No existing commands found in stream
[2026-06-05 18:36:53,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:36:53,879.879 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 18:36:57,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:36:57,838.838 INFO    ] Checking for system updates...
[2026-06-05 18:36:57,874.874 INFO    ] 200
[2026-06-05 18:36:57,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:57,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:36:57,936.936 INFO    ] No update needed
[2026-06-05 18:36:57,939.939 INFO    ] Checking for camera pi updates...
[2026-06-05 18:36:57,972.972 INFO    ] 200
[2026-06-05 18:36:57,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:36:58,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:36:58,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:36:58,072.072 INFO    ] No camera update needed
[2026-06-05 18:36:58,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:36:58,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:36:58,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:36:58,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:37:00,128.128 INFO    ] ================================================
[2026-06-05 18:37:00,143.143 INFO    ] Launching Daemon at Fri Jun  5 18:37:00 IST 2026
[2026-06-05 18:37:00,154.154 INFO    ] ================================================
[2026-06-05 18:37:00,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:37:00
[2026-06-05 18:37:01,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:37:01,923.923 INFO    ] Initializing speech engine...
[2026-06-05 18:37:01,934.934 INFO    ] 2026-06-05 18:37:01
[2026-06-05 18:37:02,283.283 INFO    ] 2026-06-05 18:37:02
[2026-06-05 18:37:02,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:37:02,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:37:02,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:37:02,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:37:02,770.770 INFO    ] time= 05/06/2026 18:37:02
[2026-06-05 18:37:02,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:37:02,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:37:02,908.908 INFO    ] No existing commands found in stream
[2026-06-05 18:37:07,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:37:07,927.927 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 18:37:08,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:37:08,437.437 INFO    ] Checking for system updates...
[2026-06-05 18:37:08,474.474 INFO    ] 200
[2026-06-05 18:37:08,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:37:08,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:37:08,536.536 INFO    ] No update needed
[2026-06-05 18:37:08,538.538 INFO    ] Checking for camera pi updates...
[2026-06-05 18:37:08,576.576 INFO    ] 200
[2026-06-05 18:37:08,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:37:08,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:37:08,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:37:08,652.652 INFO    ] No camera update needed
[2026-06-05 18:37:08,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:37:08,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:37:08,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:37:08,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:37:10,716.716 INFO    ] ================================================
[2026-06-05 18:37:10,732.732 INFO    ] Launching Daemon at Fri Jun  5 18:37:10 IST 2026
[2026-06-05 18:37:10,743.743 INFO    ] ================================================
[2026-06-05 18:37:11,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:37:11
[2026-06-05 18:37:11,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:37:12,246.246 INFO    ] Initializing speech engine...
[2026-06-05 18:37:12,256.256 INFO    ] 2026-06-05 18:37:12
[2026-06-05 18:37:12,520.520 INFO    ] 2026-06-05 18:37:12
[2026-06-05 18:37:12,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:37:12,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:37:12,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:37:13,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:37:13,063.063 INFO    ] time= 05/06/2026 18:37:13
[2026-06-05 18:37:13,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:37:13,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:37:13,219.219 INFO    ] No existing commands found in stream
[2026-06-05 18:37:18,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:37:18,241.241 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 18:37:21,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:37:21,781.781 INFO    ] Checking for system updates...
[2026-06-05 18:37:21,817.817 INFO    ] 200
[2026-06-05 18:37:21,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:37:21,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:37:21,874.874 INFO    ] No update needed
[2026-06-05 18:37:21,876.876 INFO    ] Checking for camera pi updates...
[2026-06-05 18:37:21,911.911 INFO    ] 200
[2026-06-05 18:37:21,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:37:21,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:37:22,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:37:22,012.012 INFO    ] No camera update needed
[2026-06-05 18:37:22,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:37:22,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:37:22,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:37:22,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:37:24,070.070 INFO    ] ================================================
[2026-06-05 18:37:24,085.085 INFO    ] Launching Daemon at Fri Jun  5 18:37:24 IST 2026
[2026-06-05 18:37:24,096.096 INFO    ] ================================================
[2026-06-05 18:37:24,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:37:24
[2026-06-05 18:37:25,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:37:25,671.671 INFO    ] Initializing speech engine...
[2026-06-05 18:37:25,686.686 INFO    ] 2026-06-05 18:37:25
[2026-06-05 18:37:25,961.961 INFO    ] 2026-06-05 18:37:25
[2026-06-05 18:37:25,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:37:26,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:37:26,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:37:26,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:37:26,448.448 INFO    ] time= 05/06/2026 18:37:26
[2026-06-05 18:37:26,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:37:26,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:37:26,677.677 INFO    ] No existing commands found in stream
[2026-06-05 18:37:31,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:37:31,701.701 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 18:37:37,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:37:37,391.391 INFO    ] Checking for system updates...
[2026-06-05 18:37:37,435.435 INFO    ] 200
[2026-06-05 18:37:37,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:37:37,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:37:37,494.494 INFO    ] No update needed
[2026-06-05 18:37:37,497.497 INFO    ] Checking for camera pi updates...
[2026-06-05 18:37:37,534.534 INFO    ] 200
[2026-06-05 18:37:37,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:37:37,579.579 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:37:37,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:37:37,629.629 INFO    ] No camera update needed
[2026-06-05 18:37:37,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:37:37,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:37:37,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:37:37,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:37:39,685.685 INFO    ] ================================================
[2026-06-05 18:37:39,701.701 INFO    ] Launching Daemon at Fri Jun  5 18:37:39 IST 2026
[2026-06-05 18:37:39,712.712 INFO    ] ================================================
[2026-06-05 18:37:40,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:37:40
[2026-06-05 18:37:40,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:37:41,131.131 INFO    ] Initializing speech engine...
[2026-06-05 18:37:41,139.139 INFO    ] 2026-06-05 18:37:41
[2026-06-05 18:37:41,392.392 INFO    ] 2026-06-05 18:37:41
[2026-06-05 18:37:41,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:37:41,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:37:41,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:37:42,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:37:42,590.590 INFO    ] time= 05/06/2026 18:37:42
[2026-06-05 18:37:42,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:37:42,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:37:42,711.711 INFO    ] No existing commands found in stream
[2026-06-05 18:37:47,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:37:47,739.739 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 18:37:49,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:37:49,601.601 INFO    ] Checking for system updates...
[2026-06-05 18:37:49,636.636 INFO    ] 200
[2026-06-05 18:37:49,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:37:49,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:37:49,701.701 INFO    ] No update needed
[2026-06-05 18:37:49,703.703 INFO    ] Checking for camera pi updates...
[2026-06-05 18:37:49,738.738 INFO    ] 200
[2026-06-05 18:37:49,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:37:49,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:37:49,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:37:49,938.938 INFO    ] No camera update needed
[2026-06-05 18:37:49,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:37:49,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:37:49,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:37:49,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:37:52,997.997 INFO    ] ================================================
[2026-06-05 18:37:52,012.012 INFO    ] Launching Daemon at Fri Jun  5 18:37:52 IST 2026
[2026-06-05 18:37:52,023.023 INFO    ] ================================================
[2026-06-05 18:37:52,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:37:52
[2026-06-05 18:37:53,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:37:53,481.481 INFO    ] Initializing speech engine...
[2026-06-05 18:37:53,491.491 INFO    ] 2026-06-05 18:37:53
[2026-06-05 18:37:53,737.737 INFO    ] 2026-06-05 18:37:53
[2026-06-05 18:37:53,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:37:54,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:37:54,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:37:54,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:37:54,239.239 INFO    ] time= 05/06/2026 18:37:54
[2026-06-05 18:37:54,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:37:54,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:37:54,453.453 INFO    ] No existing commands found in stream
[2026-06-05 18:37:59,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:37:59,482.482 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 18:38:03,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:38:03,255.255 INFO    ] Checking for system updates...
[2026-06-05 18:38:03,291.291 INFO    ] 200
[2026-06-05 18:38:03,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:03,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:38:03,349.349 INFO    ] No update needed
[2026-06-05 18:38:03,352.352 INFO    ] Checking for camera pi updates...
[2026-06-05 18:38:03,385.385 INFO    ] 200
[2026-06-05 18:38:03,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:03,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:38:03,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:38:03,478.478 INFO    ] No camera update needed
[2026-06-05 18:38:03,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:38:03,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:38:03,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:38:03,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:38:05,533.533 INFO    ] ================================================
[2026-06-05 18:38:05,548.548 INFO    ] Launching Daemon at Fri Jun  5 18:38:05 IST 2026
[2026-06-05 18:38:05,559.559 INFO    ] ================================================
[2026-06-05 18:38:06,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:38:06
[2026-06-05 18:38:06,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:38:06,979.979 INFO    ] Initializing speech engine...
[2026-06-05 18:38:07,004.004 INFO    ] 2026-06-05 18:38:06
[2026-06-05 18:38:07,260.260 INFO    ] 2026-06-05 18:38:07
[2026-06-05 18:38:07,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:38:07,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:38:07,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:38:07,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:38:07,842.842 INFO    ] time= 05/06/2026 18:38:07
[2026-06-05 18:38:07,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:38:07,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:38:07,996.996 INFO    ] No existing commands found in stream
[2026-06-05 18:38:13,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:38:13,013.013 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 18:38:14,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:38:14,791.791 INFO    ] Checking for system updates...
[2026-06-05 18:38:14,830.830 INFO    ] 200
[2026-06-05 18:38:14,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:14,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:38:14,895.895 INFO    ] No update needed
[2026-06-05 18:38:14,898.898 INFO    ] Checking for camera pi updates...
[2026-06-05 18:38:14,936.936 INFO    ] 200
[2026-06-05 18:38:14,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:14,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:38:15,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:38:15,033.033 INFO    ] No camera update needed
[2026-06-05 18:38:15,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:38:15,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:38:15,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:38:15,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:38:17,088.088 INFO    ] ================================================
[2026-06-05 18:38:17,104.104 INFO    ] Launching Daemon at Fri Jun  5 18:38:17 IST 2026
[2026-06-05 18:38:17,115.115 INFO    ] ================================================
[2026-06-05 18:38:17,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:38:17
[2026-06-05 18:38:18,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:38:18,762.762 INFO    ] Initializing speech engine...
[2026-06-05 18:38:18,773.773 INFO    ] 2026-06-05 18:38:18
[2026-06-05 18:38:19,053.053 INFO    ] 2026-06-05 18:38:19
[2026-06-05 18:38:19,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:38:19,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:38:19,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:38:19,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:38:19,594.594 INFO    ] time= 05/06/2026 18:38:19
[2026-06-05 18:38:19,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:38:19,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:38:19,786.786 INFO    ] No existing commands found in stream
[2026-06-05 18:38:24,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:38:24,820.820 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 18:38:29,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:38:29,271.271 INFO    ] Checking for system updates...
[2026-06-05 18:38:29,314.314 INFO    ] 200
[2026-06-05 18:38:29,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:29,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:38:29,379.379 INFO    ] No update needed
[2026-06-05 18:38:29,382.382 INFO    ] Checking for camera pi updates...
[2026-06-05 18:38:29,417.417 INFO    ] 200
[2026-06-05 18:38:29,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:29,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:38:29,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:38:29,512.512 INFO    ] No camera update needed
[2026-06-05 18:38:29,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:38:29,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:38:29,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:38:29,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:38:31,570.570 INFO    ] ================================================
[2026-06-05 18:38:31,587.587 INFO    ] Launching Daemon at Fri Jun  5 18:38:31 IST 2026
[2026-06-05 18:38:31,599.599 INFO    ] ================================================
[2026-06-05 18:38:32,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:38:32
[2026-06-05 18:38:32,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:38:33,096.096 INFO    ] Initializing speech engine...
[2026-06-05 18:38:33,104.104 INFO    ] 2026-06-05 18:38:33
[2026-06-05 18:38:33,355.355 INFO    ] 2026-06-05 18:38:33
[2026-06-05 18:38:33,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:38:33,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:38:33,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:38:33,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:38:33,859.859 INFO    ] time= 05/06/2026 18:38:33
[2026-06-05 18:38:33,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:38:33,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:38:34,065.065 INFO    ] No existing commands found in stream
[2026-06-05 18:38:39,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:38:39,096.096 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 18:38:40,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:38:40,905.905 INFO    ] Checking for system updates...
[2026-06-05 18:38:40,945.945 INFO    ] 200
[2026-06-05 18:38:40,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:41,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:38:41,008.008 INFO    ] No update needed
[2026-06-05 18:38:41,010.010 INFO    ] Checking for camera pi updates...
[2026-06-05 18:38:41,051.051 INFO    ] 200
[2026-06-05 18:38:41,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:41,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:38:41,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:38:41,156.156 INFO    ] No camera update needed
[2026-06-05 18:38:41,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:38:41,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:38:41,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:38:41,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:38:43,215.215 INFO    ] ================================================
[2026-06-05 18:38:43,232.232 INFO    ] Launching Daemon at Fri Jun  5 18:38:43 IST 2026
[2026-06-05 18:38:43,244.244 INFO    ] ================================================
[2026-06-05 18:38:43,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:38:43
[2026-06-05 18:38:44,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:38:44,780.780 INFO    ] Initializing speech engine...
[2026-06-05 18:38:44,800.800 INFO    ] 2026-06-05 18:38:44
[2026-06-05 18:38:45,065.065 INFO    ] 2026-06-05 18:38:45
[2026-06-05 18:38:45,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:38:45,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:38:45,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:38:45,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:38:45,571.571 INFO    ] time= 05/06/2026 18:38:45
[2026-06-05 18:38:45,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:38:45,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:38:45,767.767 INFO    ] No existing commands found in stream
[2026-06-05 18:38:50,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:38:50,791.791 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 18:38:51,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:38:51,647.647 INFO    ] Checking for system updates...
[2026-06-05 18:38:51,687.687 INFO    ] 200
[2026-06-05 18:38:51,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:51,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:38:51,753.753 INFO    ] No update needed
[2026-06-05 18:38:51,755.755 INFO    ] Checking for camera pi updates...
[2026-06-05 18:38:51,789.789 INFO    ] 200
[2026-06-05 18:38:51,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:38:51,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:38:51,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:38:51,889.889 INFO    ] No camera update needed
[2026-06-05 18:38:51,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:38:51,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:38:51,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:38:51,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:38:53,952.952 INFO    ] ================================================
[2026-06-05 18:38:53,967.967 INFO    ] Launching Daemon at Fri Jun  5 18:38:53 IST 2026
[2026-06-05 18:38:53,978.978 INFO    ] ================================================
[2026-06-05 18:38:54,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:38:54
[2026-06-05 18:38:55,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:38:55,403.403 INFO    ] Initializing speech engine...
[2026-06-05 18:38:55,410.410 INFO    ] 2026-06-05 18:38:55
[2026-06-05 18:38:55,668.668 INFO    ] 2026-06-05 18:38:55
[2026-06-05 18:38:55,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:38:55,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:38:55,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:38:56,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:38:56,210.210 INFO    ] time= 05/06/2026 18:38:56
[2026-06-05 18:38:56,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:38:56,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:38:56,341.341 INFO    ] No existing commands found in stream
[2026-06-05 18:39:01,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:39:01,370.370 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 18:39:02,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:39:02,920.920 INFO    ] Checking for system updates...
[2026-06-05 18:39:02,968.968 INFO    ] 200
[2026-06-05 18:39:02,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:03,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:39:03,035.035 INFO    ] No update needed
[2026-06-05 18:39:03,038.038 INFO    ] Checking for camera pi updates...
[2026-06-05 18:39:03,073.073 INFO    ] 200
[2026-06-05 18:39:03,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:03,122.122 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:39:03,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:39:03,153.153 INFO    ] No camera update needed
[2026-06-05 18:39:03,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:39:03,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:39:03,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:39:03,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:39:05,213.213 INFO    ] ================================================
[2026-06-05 18:39:05,228.228 INFO    ] Launching Daemon at Fri Jun  5 18:39:05 IST 2026
[2026-06-05 18:39:05,239.239 INFO    ] ================================================
[2026-06-05 18:39:05,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:39:05
[2026-06-05 18:39:06,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:39:06,646.646 INFO    ] Initializing speech engine...
[2026-06-05 18:39:06,661.661 INFO    ] 2026-06-05 18:39:06
[2026-06-05 18:39:06,927.927 INFO    ] 2026-06-05 18:39:06
[2026-06-05 18:39:06,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:39:08,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:39:08,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:39:08,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:39:08,898.898 INFO    ] time= 05/06/2026 18:39:08
[2026-06-05 18:39:08,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:39:08,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:39:09,011.011 INFO    ] No existing commands found in stream
[2026-06-05 18:39:14,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:39:14,020.020 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 18:39:16,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:39:16,967.967 INFO    ] Checking for system updates...
[2026-06-05 18:39:17,006.006 INFO    ] 200
[2026-06-05 18:39:17,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:17,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:39:17,079.079 INFO    ] No update needed
[2026-06-05 18:39:17,081.081 INFO    ] Checking for camera pi updates...
[2026-06-05 18:39:17,120.120 INFO    ] 200
[2026-06-05 18:39:17,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:17,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:39:17,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:39:17,199.199 INFO    ] No camera update needed
[2026-06-05 18:39:17,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:39:17,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:39:17,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:39:17,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:39:19,254.254 INFO    ] ================================================
[2026-06-05 18:39:19,270.270 INFO    ] Launching Daemon at Fri Jun  5 18:39:19 IST 2026
[2026-06-05 18:39:19,280.280 INFO    ] ================================================
[2026-06-05 18:39:19,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:39:19
[2026-06-05 18:39:20,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:39:20,884.884 INFO    ] Initializing speech engine...
[2026-06-05 18:39:20,891.891 INFO    ] 2026-06-05 18:39:20
[2026-06-05 18:39:21,162.162 INFO    ] 2026-06-05 18:39:21
[2026-06-05 18:39:21,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:39:21,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:39:21,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:39:21,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:39:21,732.732 INFO    ] time= 05/06/2026 18:39:21
[2026-06-05 18:39:21,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:39:21,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:39:21,919.919 INFO    ] No existing commands found in stream
[2026-06-05 18:39:26,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:39:26,959.959 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 18:39:28,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:39:28,611.611 INFO    ] Checking for system updates...
[2026-06-05 18:39:28,674.674 INFO    ] 200
[2026-06-05 18:39:28,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:28,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:39:28,763.763 INFO    ] No update needed
[2026-06-05 18:39:28,766.766 INFO    ] Checking for camera pi updates...
[2026-06-05 18:39:28,807.807 INFO    ] 200
[2026-06-05 18:39:28,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:28,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:39:28,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:39:28,903.903 INFO    ] No camera update needed
[2026-06-05 18:39:28,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:39:28,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:39:28,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:39:28,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:39:30,964.964 INFO    ] ================================================
[2026-06-05 18:39:30,980.980 INFO    ] Launching Daemon at Fri Jun  5 18:39:30 IST 2026
[2026-06-05 18:39:30,991.991 INFO    ] ================================================
[2026-06-05 18:39:31,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:39:31
[2026-06-05 18:39:32,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:39:32,508.508 INFO    ] Initializing speech engine...
[2026-06-05 18:39:32,514.514 INFO    ] 2026-06-05 18:39:32
[2026-06-05 18:39:32,793.793 INFO    ] 2026-06-05 18:39:32
[2026-06-05 18:39:32,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:39:33,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:39:33,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:39:33,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:39:33,335.335 INFO    ] time= 05/06/2026 18:39:33
[2026-06-05 18:39:33,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:39:33,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:39:33,541.541 INFO    ] No existing commands found in stream
[2026-06-05 18:39:38,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:39:38,558.558 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 18:39:42,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:39:42,457.457 INFO    ] Checking for system updates...
[2026-06-05 18:39:42,495.495 INFO    ] 200
[2026-06-05 18:39:42,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:42,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:39:42,553.553 INFO    ] No update needed
[2026-06-05 18:39:42,555.555 INFO    ] Checking for camera pi updates...
[2026-06-05 18:39:42,610.610 INFO    ] 200
[2026-06-05 18:39:42,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:42,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:39:42,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:39:42,692.692 INFO    ] No camera update needed
[2026-06-05 18:39:42,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:39:42,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:39:42,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:39:42,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:39:44,748.748 INFO    ] ================================================
[2026-06-05 18:39:44,763.763 INFO    ] Launching Daemon at Fri Jun  5 18:39:44 IST 2026
[2026-06-05 18:39:44,774.774 INFO    ] ================================================
[2026-06-05 18:39:45,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:39:45
[2026-06-05 18:39:45,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:39:46,188.188 INFO    ] Initializing speech engine...
[2026-06-05 18:39:46,204.204 INFO    ] 2026-06-05 18:39:46
[2026-06-05 18:39:46,456.456 INFO    ] 2026-06-05 18:39:46
[2026-06-05 18:39:46,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:39:46,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:39:46,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:39:46,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:39:46,934.934 INFO    ] time= 05/06/2026 18:39:46
[2026-06-05 18:39:46,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:39:47,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:39:47,176.176 INFO    ] No existing commands found in stream
[2026-06-05 18:39:52,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:39:52,194.194 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 18:39:54,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:39:54,064.064 INFO    ] Checking for system updates...
[2026-06-05 18:39:54,105.105 INFO    ] 200
[2026-06-05 18:39:54,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:54,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:39:54,163.163 INFO    ] No update needed
[2026-06-05 18:39:54,166.166 INFO    ] Checking for camera pi updates...
[2026-06-05 18:39:54,201.201 INFO    ] 200
[2026-06-05 18:39:54,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:39:54,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:39:54,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:39:54,408.408 INFO    ] No camera update needed
[2026-06-05 18:39:54,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:39:54,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:39:54,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:39:54,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:39:56,468.468 INFO    ] ================================================
[2026-06-05 18:39:56,485.485 INFO    ] Launching Daemon at Fri Jun  5 18:39:56 IST 2026
[2026-06-05 18:39:56,497.497 INFO    ] ================================================
[2026-06-05 18:39:57,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:39:57
[2026-06-05 18:39:57,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:39:57,990.990 INFO    ] Initializing speech engine...
[2026-06-05 18:39:58,012.012 INFO    ] 2026-06-05 18:39:57
[2026-06-05 18:39:58,269.269 INFO    ] 2026-06-05 18:39:58
[2026-06-05 18:39:58,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:39:58,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:39:58,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:39:58,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:39:58,752.752 INFO    ] time= 05/06/2026 18:39:58
[2026-06-05 18:39:58,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:39:58,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:39:58,997.997 INFO    ] No existing commands found in stream
[2026-06-05 18:40:04,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:40:04,015.015 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 18:40:04,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:40:04,831.831 INFO    ] Checking for system updates...
[2026-06-05 18:40:04,870.870 INFO    ] 200
[2026-06-05 18:40:04,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:04,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:40:04,939.939 INFO    ] No update needed
[2026-06-05 18:40:04,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 18:40:04,980.980 INFO    ] 200
[2026-06-05 18:40:04,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:05,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:40:05,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:40:05,079.079 INFO    ] No camera update needed
[2026-06-05 18:40:05,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:40:05,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:40:05,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:40:05,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:40:07,138.138 INFO    ] ================================================
[2026-06-05 18:40:07,153.153 INFO    ] Launching Daemon at Fri Jun  5 18:40:07 IST 2026
[2026-06-05 18:40:07,163.163 INFO    ] ================================================
[2026-06-05 18:40:07,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:40:07
[2026-06-05 18:40:08,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:40:08,767.767 INFO    ] Initializing speech engine...
[2026-06-05 18:40:08,782.782 INFO    ] 2026-06-05 18:40:08
[2026-06-05 18:40:09,068.068 INFO    ] 2026-06-05 18:40:09
[2026-06-05 18:40:09,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:40:10,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:40:10,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:40:10,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:40:10,290.290 INFO    ] time= 05/06/2026 18:40:10
[2026-06-05 18:40:10,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:40:10,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:40:10,429.429 INFO    ] No existing commands found in stream
[2026-06-05 18:40:15,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:40:15,442.442 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 18:40:16,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:40:16,749.749 INFO    ] Checking for system updates...
[2026-06-05 18:40:16,790.790 INFO    ] 200
[2026-06-05 18:40:16,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:16,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:40:16,858.858 INFO    ] No update needed
[2026-06-05 18:40:16,860.860 INFO    ] Checking for camera pi updates...
[2026-06-05 18:40:16,894.894 INFO    ] 200
[2026-06-05 18:40:16,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:16,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:40:16,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:40:16,985.985 INFO    ] No camera update needed
[2026-06-05 18:40:16,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:40:16,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:40:16,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:40:17,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:40:19,042.042 INFO    ] ================================================
[2026-06-05 18:40:19,058.058 INFO    ] Launching Daemon at Fri Jun  5 18:40:19 IST 2026
[2026-06-05 18:40:19,068.068 INFO    ] ================================================
[2026-06-05 18:40:19,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:40:19
[2026-06-05 18:40:20,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:40:20,541.541 INFO    ] Initializing speech engine...
[2026-06-05 18:40:20,554.554 INFO    ] 2026-06-05 18:40:20
[2026-06-05 18:40:20,814.814 INFO    ] 2026-06-05 18:40:20
[2026-06-05 18:40:20,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:40:21,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:40:21,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:40:21,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:40:21,408.408 INFO    ] time= 05/06/2026 18:40:21
[2026-06-05 18:40:21,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:40:21,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:40:21,586.586 INFO    ] No existing commands found in stream
[2026-06-05 18:40:26,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:40:26,614.614 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 18:40:28,268.268 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:40:28,270.270 INFO    ] Checking for system updates...
[2026-06-05 18:40:28,315.315 INFO    ] 200
[2026-06-05 18:40:28,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:28,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:40:28,376.376 INFO    ] No update needed
[2026-06-05 18:40:28,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 18:40:28,418.418 INFO    ] 200
[2026-06-05 18:40:28,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:28,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:40:28,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:40:28,490.490 INFO    ] No camera update needed
[2026-06-05 18:40:28,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:40:28,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:40:28,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:40:28,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:40:30,548.548 INFO    ] ================================================
[2026-06-05 18:40:30,563.563 INFO    ] Launching Daemon at Fri Jun  5 18:40:30 IST 2026
[2026-06-05 18:40:30,575.575 INFO    ] ================================================
[2026-06-05 18:40:31,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:40:31
[2026-06-05 18:40:31,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:40:31,980.980 INFO    ] Initializing speech engine...
[2026-06-05 18:40:31,995.995 INFO    ] 2026-06-05 18:40:31
[2026-06-05 18:40:32,261.261 INFO    ] 2026-06-05 18:40:32
[2026-06-05 18:40:32,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:40:32,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:40:32,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:40:32,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:40:32,861.861 INFO    ] time= 05/06/2026 18:40:32
[2026-06-05 18:40:32,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:40:32,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:40:33,045.045 INFO    ] No existing commands found in stream
[2026-06-05 18:40:38,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:40:38,069.069 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 18:40:40,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:40:40,838.838 INFO    ] Checking for system updates...
[2026-06-05 18:40:40,878.878 INFO    ] 200
[2026-06-05 18:40:40,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:40,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:40:40,943.943 INFO    ] No update needed
[2026-06-05 18:40:40,946.946 INFO    ] Checking for camera pi updates...
[2026-06-05 18:40:40,980.980 INFO    ] 200
[2026-06-05 18:40:40,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:41,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:40:41,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:40:41,084.084 INFO    ] No camera update needed
[2026-06-05 18:40:41,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:40:41,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:40:41,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:40:41,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:40:43,158.158 INFO    ] ================================================
[2026-06-05 18:40:43,173.173 INFO    ] Launching Daemon at Fri Jun  5 18:40:43 IST 2026
[2026-06-05 18:40:43,184.184 INFO    ] ================================================
[2026-06-05 18:40:43,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:40:43
[2026-06-05 18:40:44,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:40:44,648.648 INFO    ] Initializing speech engine...
[2026-06-05 18:40:44,658.658 INFO    ] 2026-06-05 18:40:44
[2026-06-05 18:40:44,921.921 INFO    ] 2026-06-05 18:40:44
[2026-06-05 18:40:44,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:40:45,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:40:45,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:40:45,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:40:45,468.468 INFO    ] time= 05/06/2026 18:40:45
[2026-06-05 18:40:45,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:40:45,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:40:45,644.644 INFO    ] No existing commands found in stream
[2026-06-05 18:40:50,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:40:50,678.678 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 18:40:55,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:40:55,649.649 INFO    ] Checking for system updates...
[2026-06-05 18:40:55,689.689 INFO    ] 200
[2026-06-05 18:40:55,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:55,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:40:55,748.748 INFO    ] No update needed
[2026-06-05 18:40:55,751.751 INFO    ] Checking for camera pi updates...
[2026-06-05 18:40:55,785.785 INFO    ] 200
[2026-06-05 18:40:55,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:40:55,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:40:55,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:40:55,872.872 INFO    ] No camera update needed
[2026-06-05 18:40:55,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:40:55,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:40:55,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:40:55,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:40:57,928.928 INFO    ] ================================================
[2026-06-05 18:40:57,943.943 INFO    ] Launching Daemon at Fri Jun  5 18:40:57 IST 2026
[2026-06-05 18:40:57,953.953 INFO    ] ================================================
[2026-06-05 18:40:58,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:40:58
[2026-06-05 18:40:59,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:40:59,592.592 INFO    ] Initializing speech engine...
[2026-06-05 18:40:59,601.601 INFO    ] 2026-06-05 18:40:59
[2026-06-05 18:40:59,890.890 INFO    ] 2026-06-05 18:40:59
[2026-06-05 18:40:59,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:41:00,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:41:00,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:41:00,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:41:00,440.440 INFO    ] time= 05/06/2026 18:41:00
[2026-06-05 18:41:00,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:41:00,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:41:00,591.591 INFO    ] No existing commands found in stream
[2026-06-05 18:41:05,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:41:05,617.617 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 18:41:11,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:41:11,446.446 INFO    ] Checking for system updates...
[2026-06-05 18:41:11,484.484 INFO    ] 200
[2026-06-05 18:41:11,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:41:11,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:41:11,548.548 INFO    ] No update needed
[2026-06-05 18:41:11,550.550 INFO    ] Checking for camera pi updates...
[2026-06-05 18:41:11,584.584 INFO    ] 200
[2026-06-05 18:41:11,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:41:11,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:41:11,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:41:11,679.679 INFO    ] No camera update needed
[2026-06-05 18:41:11,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:41:11,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:41:11,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:41:11,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:41:13,734.734 INFO    ] ================================================
[2026-06-05 18:41:13,749.749 INFO    ] Launching Daemon at Fri Jun  5 18:41:13 IST 2026
[2026-06-05 18:41:13,760.760 INFO    ] ================================================
[2026-06-05 18:41:14,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:41:14
[2026-06-05 18:41:14,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:41:15,209.209 INFO    ] Initializing speech engine...
[2026-06-05 18:41:15,232.232 INFO    ] 2026-06-05 18:41:15
[2026-06-05 18:41:15,504.504 INFO    ] 2026-06-05 18:41:15
[2026-06-05 18:41:15,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:41:15,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:41:15,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:41:15,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:41:16,004.004 INFO    ] time= 05/06/2026 18:41:15
[2026-06-05 18:41:16,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:41:16,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:41:16,215.215 INFO    ] No existing commands found in stream
[2026-06-05 18:41:21,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:41:21,252.252 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 18:41:23,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:41:23,212.212 INFO    ] Checking for system updates...
[2026-06-05 18:41:23,252.252 INFO    ] 200
[2026-06-05 18:41:23,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:41:23,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:41:23,316.316 INFO    ] No update needed
[2026-06-05 18:41:23,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 18:41:23,354.354 INFO    ] 200
[2026-06-05 18:41:23,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:41:23,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:41:23,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:41:23,444.444 INFO    ] No camera update needed
[2026-06-05 18:41:23,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:41:23,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:41:23,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:41:23,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:41:25,505.505 INFO    ] ================================================
[2026-06-05 18:41:25,521.521 INFO    ] Launching Daemon at Fri Jun  5 18:41:25 IST 2026
[2026-06-05 18:41:25,532.532 INFO    ] ================================================
[2026-06-05 18:41:26,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:41:26
[2026-06-05 18:41:26,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:41:27,161.161 INFO    ] Initializing speech engine...
[2026-06-05 18:41:27,171.171 INFO    ] 2026-06-05 18:41:27
[2026-06-05 18:41:27,447.447 INFO    ] 2026-06-05 18:41:27
[2026-06-05 18:41:27,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:41:27,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:41:27,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:41:27,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:41:27,982.982 INFO    ] time= 05/06/2026 18:41:27
[2026-06-05 18:41:28,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:41:28,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:41:28,162.162 INFO    ] No existing commands found in stream
[2026-06-05 18:41:33,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:41:33,194.194 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 18:41:36,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:41:36,074.074 INFO    ] Checking for system updates...
[2026-06-05 18:41:36,115.115 INFO    ] 200
[2026-06-05 18:41:36,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:41:36,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:41:36,175.175 INFO    ] No update needed
[2026-06-05 18:41:36,177.177 INFO    ] Checking for camera pi updates...
[2026-06-05 18:41:36,216.216 INFO    ] 200
[2026-06-05 18:41:36,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:41:36,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:41:36,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:41:36,315.315 INFO    ] No camera update needed
[2026-06-05 18:41:36,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:41:36,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:41:36,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:41:36,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:41:38,374.374 INFO    ] ================================================
[2026-06-05 18:41:38,390.390 INFO    ] Launching Daemon at Fri Jun  5 18:41:38 IST 2026
[2026-06-05 18:41:38,402.402 INFO    ] ================================================
[2026-06-05 18:41:38,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:41:38
[2026-06-05 18:41:39,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:41:39,864.864 INFO    ] Initializing speech engine...
[2026-06-05 18:41:39,873.873 INFO    ] 2026-06-05 18:41:39
[2026-06-05 18:41:40,131.131 INFO    ] 2026-06-05 18:41:40
[2026-06-05 18:41:40,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:41:41,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:41:41,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:41:42,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:41:42,400.400 INFO    ] time= 05/06/2026 18:41:42
[2026-06-05 18:41:42,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:41:42,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:41:42,518.518 INFO    ] No existing commands found in stream
[2026-06-05 18:41:47,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:41:47,534.534 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 18:41:48,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:41:48,933.933 INFO    ] Checking for system updates...
[2026-06-05 18:41:48,970.970 INFO    ] 200
[2026-06-05 18:41:48,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:41:49,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:41:49,030.030 INFO    ] No update needed
[2026-06-05 18:41:49,032.032 INFO    ] Checking for camera pi updates...
[2026-06-05 18:41:49,070.070 INFO    ] 200
[2026-06-05 18:41:49,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:41:49,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:41:49,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:41:49,158.158 INFO    ] No camera update needed
[2026-06-05 18:41:49,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:41:49,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:41:49,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:41:49,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:41:51,216.216 INFO    ] ================================================
[2026-06-05 18:41:51,232.232 INFO    ] Launching Daemon at Fri Jun  5 18:41:51 IST 2026
[2026-06-05 18:41:51,243.243 INFO    ] ================================================
[2026-06-05 18:41:51,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:41:51
[2026-06-05 18:41:52,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:41:52,669.669 INFO    ] Initializing speech engine...
[2026-06-05 18:41:52,676.676 INFO    ] 2026-06-05 18:41:52
[2026-06-05 18:41:52,987.987 INFO    ] 2026-06-05 18:41:52
[2026-06-05 18:41:53,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:41:53,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:41:53,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:41:53,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:41:53,419.419 INFO    ] time= 05/06/2026 18:41:53
[2026-06-05 18:41:53,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:41:53,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:41:53,524.524 INFO    ] No existing commands found in stream
[2026-06-05 18:41:58,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:41:58,547.547 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 18:42:02,340.340 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:42:02,344.344 INFO    ] Checking for system updates...
[2026-06-05 18:42:02,389.389 INFO    ] 200
[2026-06-05 18:42:02,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:02,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:42:02,464.464 INFO    ] No update needed
[2026-06-05 18:42:02,468.468 INFO    ] Checking for camera pi updates...
[2026-06-05 18:42:02,507.507 INFO    ] 200
[2026-06-05 18:42:02,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:02,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:42:02,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:42:02,599.599 INFO    ] No camera update needed
[2026-06-05 18:42:02,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:42:02,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:42:02,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:42:02,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:42:04,665.665 INFO    ] ================================================
[2026-06-05 18:42:04,681.681 INFO    ] Launching Daemon at Fri Jun  5 18:42:04 IST 2026
[2026-06-05 18:42:04,692.692 INFO    ] ================================================
[2026-06-05 18:42:05,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:42:05
[2026-06-05 18:42:05,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:42:06,168.168 INFO    ] Initializing speech engine...
[2026-06-05 18:42:06,180.180 INFO    ] 2026-06-05 18:42:06
[2026-06-05 18:42:06,446.446 INFO    ] 2026-06-05 18:42:06
[2026-06-05 18:42:06,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:42:06,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:42:06,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:42:06,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:42:06,976.976 INFO    ] time= 05/06/2026 18:42:06
[2026-06-05 18:42:06,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:42:07,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:42:07,120.120 INFO    ] No existing commands found in stream
[2026-06-05 18:42:12,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:42:12,142.142 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 18:42:15,767.767 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:42:15,770.770 INFO    ] Checking for system updates...
[2026-06-05 18:42:15,810.810 INFO    ] 200
[2026-06-05 18:42:15,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:15,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:42:15,874.874 INFO    ] No update needed
[2026-06-05 18:42:15,876.876 INFO    ] Checking for camera pi updates...
[2026-06-05 18:42:15,911.911 INFO    ] 200
[2026-06-05 18:42:15,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:15,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:42:16,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:42:16,013.013 INFO    ] No camera update needed
[2026-06-05 18:42:16,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:42:16,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:42:16,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:42:16,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:42:18,073.073 INFO    ] ================================================
[2026-06-05 18:42:18,088.088 INFO    ] Launching Daemon at Fri Jun  5 18:42:18 IST 2026
[2026-06-05 18:42:18,099.099 INFO    ] ================================================
[2026-06-05 18:42:18,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:42:18
[2026-06-05 18:42:19,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:42:19,710.710 INFO    ] Initializing speech engine...
[2026-06-05 18:42:19,724.724 INFO    ] 2026-06-05 18:42:19
[2026-06-05 18:42:20,010.010 INFO    ] 2026-06-05 18:42:20
[2026-06-05 18:42:20,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:42:20,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:42:20,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:42:20,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:42:20,566.566 INFO    ] time= 05/06/2026 18:42:20
[2026-06-05 18:42:20,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:42:20,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:42:20,711.711 INFO    ] No existing commands found in stream
[2026-06-05 18:42:25,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:42:25,738.738 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 18:42:27,410.410 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:42:27,413.413 INFO    ] Checking for system updates...
[2026-06-05 18:42:27,454.454 INFO    ] 200
[2026-06-05 18:42:27,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:27,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:42:27,519.519 INFO    ] No update needed
[2026-06-05 18:42:27,521.521 INFO    ] Checking for camera pi updates...
[2026-06-05 18:42:27,560.560 INFO    ] 200
[2026-06-05 18:42:27,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:27,605.605 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:42:27,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:42:27,660.660 INFO    ] No camera update needed
[2026-06-05 18:42:27,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:42:27,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:42:27,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:42:27,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:42:29,718.718 INFO    ] ================================================
[2026-06-05 18:42:29,733.733 INFO    ] Launching Daemon at Fri Jun  5 18:42:29 IST 2026
[2026-06-05 18:42:29,744.744 INFO    ] ================================================
[2026-06-05 18:42:30,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:42:30
[2026-06-05 18:42:31,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:42:31,357.357 INFO    ] Initializing speech engine...
[2026-06-05 18:42:31,369.369 INFO    ] 2026-06-05 18:42:31
[2026-06-05 18:42:31,673.673 INFO    ] 2026-06-05 18:42:31
[2026-06-05 18:42:31,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:42:31,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:42:31,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:42:32,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:42:32,103.103 INFO    ] time= 05/06/2026 18:42:32
[2026-06-05 18:42:32,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:42:32,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:42:32,197.197 INFO    ] No existing commands found in stream
[2026-06-05 18:42:37,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:42:37,213.213 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 18:42:39,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:42:39,020.020 INFO    ] Checking for system updates...
[2026-06-05 18:42:39,061.061 INFO    ] 200
[2026-06-05 18:42:39,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:39,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:42:39,120.120 INFO    ] No update needed
[2026-06-05 18:42:39,123.123 INFO    ] Checking for camera pi updates...
[2026-06-05 18:42:39,157.157 INFO    ] 200
[2026-06-05 18:42:39,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:39,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:42:39,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:42:39,259.259 INFO    ] No camera update needed
[2026-06-05 18:42:39,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:42:39,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:42:39,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:42:39,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:42:41,315.315 INFO    ] ================================================
[2026-06-05 18:42:41,331.331 INFO    ] Launching Daemon at Fri Jun  5 18:42:41 IST 2026
[2026-06-05 18:42:41,342.342 INFO    ] ================================================
[2026-06-05 18:42:41,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:42:41
[2026-06-05 18:42:42,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:42:42,816.816 INFO    ] Initializing speech engine...
[2026-06-05 18:42:42,825.825 INFO    ] 2026-06-05 18:42:42
[2026-06-05 18:42:43,071.071 INFO    ] 2026-06-05 18:42:43
[2026-06-05 18:42:43,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:42:43,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:42:44,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:42:44,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:42:44,303.303 INFO    ] time= 05/06/2026 18:42:44
[2026-06-05 18:42:44,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:42:44,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:42:44,414.414 INFO    ] No existing commands found in stream
[2026-06-05 18:42:49,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:42:49,441.441 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 18:42:52,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:42:52,332.332 INFO    ] Checking for system updates...
[2026-06-05 18:42:52,369.369 INFO    ] 200
[2026-06-05 18:42:52,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:52,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:42:52,430.430 INFO    ] No update needed
[2026-06-05 18:42:52,432.432 INFO    ] Checking for camera pi updates...
[2026-06-05 18:42:52,466.466 INFO    ] 200
[2026-06-05 18:42:52,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:42:52,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:42:52,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:42:52,554.554 INFO    ] No camera update needed
[2026-06-05 18:42:52,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:42:52,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:42:52,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:42:52,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:42:54,610.610 INFO    ] ================================================
[2026-06-05 18:42:54,625.625 INFO    ] Launching Daemon at Fri Jun  5 18:42:54 IST 2026
[2026-06-05 18:42:54,635.635 INFO    ] ================================================
[2026-06-05 18:42:55,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:42:55
[2026-06-05 18:42:55,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:42:56,061.061 INFO    ] Initializing speech engine...
[2026-06-05 18:42:56,068.068 INFO    ] 2026-06-05 18:42:56
[2026-06-05 18:42:56,327.327 INFO    ] 2026-06-05 18:42:56
[2026-06-05 18:42:56,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:42:56,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:42:56,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:42:56,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:42:56,816.816 INFO    ] time= 05/06/2026 18:42:56
[2026-06-05 18:42:56,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:42:56,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:42:57,004.004 INFO    ] No existing commands found in stream
[2026-06-05 18:43:02,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:43:02,031.031 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 18:43:03,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:43:03,473.473 INFO    ] Checking for system updates...
[2026-06-05 18:43:03,514.514 INFO    ] 200
[2026-06-05 18:43:03,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:03,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:43:03,572.572 INFO    ] No update needed
[2026-06-05 18:43:03,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 18:43:03,617.617 INFO    ] 200
[2026-06-05 18:43:03,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:03,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:43:03,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:43:03,704.704 INFO    ] No camera update needed
[2026-06-05 18:43:03,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:43:03,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:43:03,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:43:03,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:43:05,762.762 INFO    ] ================================================
[2026-06-05 18:43:05,778.778 INFO    ] Launching Daemon at Fri Jun  5 18:43:05 IST 2026
[2026-06-05 18:43:05,789.789 INFO    ] ================================================
[2026-06-05 18:43:06,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:43:06
[2026-06-05 18:43:06,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:43:07,270.270 INFO    ] Initializing speech engine...
[2026-06-05 18:43:07,280.280 INFO    ] 2026-06-05 18:43:07
[2026-06-05 18:43:07,563.563 INFO    ] 2026-06-05 18:43:07
[2026-06-05 18:43:07,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:43:07,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:43:07,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:43:07,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:43:07,983.983 INFO    ] time= 05/06/2026 18:43:07
[2026-06-05 18:43:07,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:43:07,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:43:08,102.102 INFO    ] No existing commands found in stream
[2026-06-05 18:43:13,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:43:13,130.130 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 18:43:15,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:43:15,783.783 INFO    ] Checking for system updates...
[2026-06-05 18:43:15,823.823 INFO    ] 200
[2026-06-05 18:43:15,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:15,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:43:15,881.881 INFO    ] No update needed
[2026-06-05 18:43:15,883.883 INFO    ] Checking for camera pi updates...
[2026-06-05 18:43:15,917.917 INFO    ] 200
[2026-06-05 18:43:15,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:15,961.961 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:43:15,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:43:15,991.991 INFO    ] No camera update needed
[2026-06-05 18:43:15,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:43:15,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:43:16,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:43:16,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:43:18,050.050 INFO    ] ================================================
[2026-06-05 18:43:18,065.065 INFO    ] Launching Daemon at Fri Jun  5 18:43:18 IST 2026
[2026-06-05 18:43:18,076.076 INFO    ] ================================================
[2026-06-05 18:43:18,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:43:18
[2026-06-05 18:43:19,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:43:19,542.542 INFO    ] Initializing speech engine...
[2026-06-05 18:43:19,549.549 INFO    ] 2026-06-05 18:43:19
[2026-06-05 18:43:19,830.830 INFO    ] 2026-06-05 18:43:19
[2026-06-05 18:43:19,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:43:20,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:43:20,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:43:20,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:43:20,279.279 INFO    ] time= 05/06/2026 18:43:20
[2026-06-05 18:43:20,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:43:20,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:43:20,534.534 INFO    ] No existing commands found in stream
[2026-06-05 18:43:25,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:43:25,569.569 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 18:43:27,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:43:27,814.814 INFO    ] Checking for system updates...
[2026-06-05 18:43:27,851.851 INFO    ] 200
[2026-06-05 18:43:27,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:27,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:43:27,912.912 INFO    ] No update needed
[2026-06-05 18:43:27,914.914 INFO    ] Checking for camera pi updates...
[2026-06-05 18:43:27,948.948 INFO    ] 200
[2026-06-05 18:43:27,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:27,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:43:28,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:43:28,040.040 INFO    ] No camera update needed
[2026-06-05 18:43:28,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:43:28,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:43:28,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:43:28,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:43:30,095.095 INFO    ] ================================================
[2026-06-05 18:43:30,111.111 INFO    ] Launching Daemon at Fri Jun  5 18:43:30 IST 2026
[2026-06-05 18:43:30,122.122 INFO    ] ================================================
[2026-06-05 18:43:30,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:43:30
[2026-06-05 18:43:31,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:43:31,584.584 INFO    ] Initializing speech engine...
[2026-06-05 18:43:31,593.593 INFO    ] 2026-06-05 18:43:31
[2026-06-05 18:43:31,873.873 INFO    ] 2026-06-05 18:43:31
[2026-06-05 18:43:31,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:43:32,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:43:32,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:43:32,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:43:32,402.402 INFO    ] time= 05/06/2026 18:43:32
[2026-06-05 18:43:32,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:43:32,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:43:32,639.639 INFO    ] No existing commands found in stream
[2026-06-05 18:43:37,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:43:37,675.675 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 18:43:41,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:43:41,299.299 INFO    ] Checking for system updates...
[2026-06-05 18:43:41,344.344 INFO    ] 200
[2026-06-05 18:43:41,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:41,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:43:41,417.417 INFO    ] No update needed
[2026-06-05 18:43:41,419.419 INFO    ] Checking for camera pi updates...
[2026-06-05 18:43:41,456.456 INFO    ] 200
[2026-06-05 18:43:41,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:41,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:43:41,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:43:41,550.550 INFO    ] No camera update needed
[2026-06-05 18:43:41,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:43:41,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:43:41,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:43:41,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:43:43,605.605 INFO    ] ================================================
[2026-06-05 18:43:43,620.620 INFO    ] Launching Daemon at Fri Jun  5 18:43:43 IST 2026
[2026-06-05 18:43:43,631.631 INFO    ] ================================================
[2026-06-05 18:43:44,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:43:44
[2026-06-05 18:43:44,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:43:45,319.319 INFO    ] Initializing speech engine...
[2026-06-05 18:43:45,326.326 INFO    ] 2026-06-05 18:43:45
[2026-06-05 18:43:45,631.631 INFO    ] 2026-06-05 18:43:45
[2026-06-05 18:43:45,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:43:45,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:43:45,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:43:46,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:43:46,117.117 INFO    ] time= 05/06/2026 18:43:46
[2026-06-05 18:43:46,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:43:46,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:43:46,331.331 INFO    ] No existing commands found in stream
[2026-06-05 18:43:51,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:43:51,350.350 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 18:43:53,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:43:53,338.338 INFO    ] Checking for system updates...
[2026-06-05 18:43:53,379.379 INFO    ] 200
[2026-06-05 18:43:53,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:53,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:43:53,443.443 INFO    ] No update needed
[2026-06-05 18:43:53,445.445 INFO    ] Checking for camera pi updates...
[2026-06-05 18:43:53,479.479 INFO    ] 200
[2026-06-05 18:43:53,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:43:53,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:43:53,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:43:53,566.566 INFO    ] No camera update needed
[2026-06-05 18:43:53,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:43:53,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:43:53,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:43:53,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:43:55,622.622 INFO    ] ================================================
[2026-06-05 18:43:55,637.637 INFO    ] Launching Daemon at Fri Jun  5 18:43:55 IST 2026
[2026-06-05 18:43:55,647.647 INFO    ] ================================================
[2026-06-05 18:43:56,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:43:56
[2026-06-05 18:43:56,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:43:57,111.111 INFO    ] Initializing speech engine...
[2026-06-05 18:43:57,120.120 INFO    ] 2026-06-05 18:43:57
[2026-06-05 18:43:57,368.368 INFO    ] 2026-06-05 18:43:57
[2026-06-05 18:43:57,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:43:57,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:43:57,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:43:57,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:43:57,805.805 INFO    ] time= 05/06/2026 18:43:57
[2026-06-05 18:43:57,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:43:57,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:43:58,076.076 INFO    ] No existing commands found in stream
[2026-06-05 18:44:03,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:44:03,093.093 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 18:44:06,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:44:06,370.370 INFO    ] Checking for system updates...
[2026-06-05 18:44:06,405.405 INFO    ] 200
[2026-06-05 18:44:06,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:06,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:44:06,462.462 INFO    ] No update needed
[2026-06-05 18:44:06,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 18:44:06,501.501 INFO    ] 200
[2026-06-05 18:44:06,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:06,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:44:06,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:44:06,682.682 INFO    ] No camera update needed
[2026-06-05 18:44:06,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:44:06,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:44:06,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:44:06,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:44:08,741.741 INFO    ] ================================================
[2026-06-05 18:44:08,757.757 INFO    ] Launching Daemon at Fri Jun  5 18:44:08 IST 2026
[2026-06-05 18:44:08,767.767 INFO    ] ================================================
[2026-06-05 18:44:09,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:44:09
[2026-06-05 18:44:09,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:44:10,195.195 INFO    ] Initializing speech engine...
[2026-06-05 18:44:10,204.204 INFO    ] 2026-06-05 18:44:10
[2026-06-05 18:44:10,468.468 INFO    ] 2026-06-05 18:44:10
[2026-06-05 18:44:10,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:44:10,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:44:10,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:44:10,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:44:11,009.009 INFO    ] time= 05/06/2026 18:44:10
[2026-06-05 18:44:11,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:44:11,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:44:11,166.166 INFO    ] No existing commands found in stream
[2026-06-05 18:44:16,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:44:16,188.188 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 18:44:18,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:44:18,155.155 INFO    ] Checking for system updates...
[2026-06-05 18:44:18,197.197 INFO    ] 200
[2026-06-05 18:44:18,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:18,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:44:18,257.257 INFO    ] No update needed
[2026-06-05 18:44:18,259.259 INFO    ] Checking for camera pi updates...
[2026-06-05 18:44:18,294.294 INFO    ] 200
[2026-06-05 18:44:18,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:18,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:44:18,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:44:18,395.395 INFO    ] No camera update needed
[2026-06-05 18:44:18,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:44:18,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:44:18,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:44:18,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:44:20,455.455 INFO    ] ================================================
[2026-06-05 18:44:20,470.470 INFO    ] Launching Daemon at Fri Jun  5 18:44:20 IST 2026
[2026-06-05 18:44:20,481.481 INFO    ] ================================================
[2026-06-05 18:44:21,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:44:21
[2026-06-05 18:44:21,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:44:21,910.910 INFO    ] Initializing speech engine...
[2026-06-05 18:44:21,916.916 INFO    ] 2026-06-05 18:44:21
[2026-06-05 18:44:22,164.164 INFO    ] 2026-06-05 18:44:22
[2026-06-05 18:44:22,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:44:22,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:44:22,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:44:22,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:44:22,669.669 INFO    ] time= 05/06/2026 18:44:22
[2026-06-05 18:44:22,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:44:22,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:44:22,880.880 INFO    ] No existing commands found in stream
[2026-06-05 18:44:27,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:44:27,903.903 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 18:44:32,250.250 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:44:32,254.254 INFO    ] Checking for system updates...
[2026-06-05 18:44:32,306.306 INFO    ] 200
[2026-06-05 18:44:32,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:32,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:44:32,369.369 INFO    ] No update needed
[2026-06-05 18:44:32,372.372 INFO    ] Checking for camera pi updates...
[2026-06-05 18:44:32,410.410 INFO    ] 200
[2026-06-05 18:44:32,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:32,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:44:32,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:44:32,486.486 INFO    ] No camera update needed
[2026-06-05 18:44:32,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:44:32,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:44:32,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:44:32,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:44:34,545.545 INFO    ] ================================================
[2026-06-05 18:44:34,560.560 INFO    ] Launching Daemon at Fri Jun  5 18:44:34 IST 2026
[2026-06-05 18:44:34,571.571 INFO    ] ================================================
[2026-06-05 18:44:35,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:44:35
[2026-06-05 18:44:35,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:44:35,974.974 INFO    ] Initializing speech engine...
[2026-06-05 18:44:35,998.998 INFO    ] 2026-06-05 18:44:35
[2026-06-05 18:44:36,255.255 INFO    ] 2026-06-05 18:44:36
[2026-06-05 18:44:36,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:44:36,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:44:36,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:44:36,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:44:36,632.632 INFO    ] time= 05/06/2026 18:44:36
[2026-06-05 18:44:36,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:44:36,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:44:36,808.808 INFO    ] No existing commands found in stream
[2026-06-05 18:44:41,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:44:41,842.842 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 18:44:46,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:44:46,458.458 INFO    ] Checking for system updates...
[2026-06-05 18:44:46,498.498 INFO    ] 200
[2026-06-05 18:44:46,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:46,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:44:46,556.556 INFO    ] No update needed
[2026-06-05 18:44:46,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 18:44:46,592.592 INFO    ] 200
[2026-06-05 18:44:46,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:46,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:44:46,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:44:46,690.690 INFO    ] No camera update needed
[2026-06-05 18:44:46,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:44:46,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:44:46,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:44:46,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:44:48,744.744 INFO    ] ================================================
[2026-06-05 18:44:48,760.760 INFO    ] Launching Daemon at Fri Jun  5 18:44:48 IST 2026
[2026-06-05 18:44:48,770.770 INFO    ] ================================================
[2026-06-05 18:44:49,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:44:49
[2026-06-05 18:44:49,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:44:50,211.211 INFO    ] Initializing speech engine...
[2026-06-05 18:44:50,220.220 INFO    ] 2026-06-05 18:44:50
[2026-06-05 18:44:50,468.468 INFO    ] 2026-06-05 18:44:50
[2026-06-05 18:44:50,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:44:50,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:44:50,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:44:50,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:44:50,970.970 INFO    ] time= 05/06/2026 18:44:50
[2026-06-05 18:44:51,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:44:51,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:44:51,174.174 INFO    ] No existing commands found in stream
[2026-06-05 18:44:56,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:44:56,192.192 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 18:44:59,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:44:59,349.349 INFO    ] Checking for system updates...
[2026-06-05 18:44:59,389.389 INFO    ] 200
[2026-06-05 18:44:59,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:59,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:44:59,448.448 INFO    ] No update needed
[2026-06-05 18:44:59,450.450 INFO    ] Checking for camera pi updates...
[2026-06-05 18:44:59,484.484 INFO    ] 200
[2026-06-05 18:44:59,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:44:59,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:44:59,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:44:59,562.562 INFO    ] No camera update needed
[2026-06-05 18:44:59,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:44:59,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:44:59,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:44:59,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:45:01,617.617 INFO    ] ================================================
[2026-06-05 18:45:01,633.633 INFO    ] Launching Daemon at Fri Jun  5 18:45:01 IST 2026
[2026-06-05 18:45:01,644.644 INFO    ] ================================================
[2026-06-05 18:45:02,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:45:02
[2026-06-05 18:45:03,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:45:03,750.750 INFO    ] Initializing speech engine...
[2026-06-05 18:45:03,760.760 INFO    ] 2026-06-05 18:45:03
[2026-06-05 18:45:04,108.108 INFO    ] 2026-06-05 18:45:04
[2026-06-05 18:45:04,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:45:04,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:45:04,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:45:04,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:45:04,492.492 INFO    ] time= 05/06/2026 18:45:04
[2026-06-05 18:45:04,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:45:04,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:45:04,599.599 INFO    ] No existing commands found in stream
[2026-06-05 18:45:09,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:45:09,632.632 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-05 18:45:12,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:45:12,758.758 INFO    ] Checking for system updates...
[2026-06-05 18:45:12,796.796 INFO    ] 200
[2026-06-05 18:45:12,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:12,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:45:12,858.858 INFO    ] No update needed
[2026-06-05 18:45:12,860.860 INFO    ] Checking for camera pi updates...
[2026-06-05 18:45:12,898.898 INFO    ] 200
[2026-06-05 18:45:12,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:12,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:45:12,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:45:12,991.991 INFO    ] No camera update needed
[2026-06-05 18:45:12,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:45:12,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:45:13,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:45:13,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:45:15,047.047 INFO    ] ================================================
[2026-06-05 18:45:15,062.062 INFO    ] Launching Daemon at Fri Jun  5 18:45:15 IST 2026
[2026-06-05 18:45:15,072.072 INFO    ] ================================================
[2026-06-05 18:45:15,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:45:15
[2026-06-05 18:45:16,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:45:16,537.537 INFO    ] Initializing speech engine...
[2026-06-05 18:45:16,543.543 INFO    ] 2026-06-05 18:45:16
[2026-06-05 18:45:16,803.803 INFO    ] 2026-06-05 18:45:16
[2026-06-05 18:45:16,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:45:17,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:45:17,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:45:17,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:45:17,206.206 INFO    ] time= 05/06/2026 18:45:17
[2026-06-05 18:45:17,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:45:17,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:45:17,290.290 INFO    ] No existing commands found in stream
[2026-06-05 18:45:22,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:45:22,329.329 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 18:45:26,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:45:26,474.474 INFO    ] Checking for system updates...
[2026-06-05 18:45:26,514.514 INFO    ] 200
[2026-06-05 18:45:26,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:26,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:45:26,579.579 INFO    ] No update needed
[2026-06-05 18:45:26,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 18:45:26,617.617 INFO    ] 200
[2026-06-05 18:45:26,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:26,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:45:26,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:45:26,714.714 INFO    ] No camera update needed
[2026-06-05 18:45:26,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:45:26,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:45:26,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:45:26,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:45:28,772.772 INFO    ] ================================================
[2026-06-05 18:45:28,788.788 INFO    ] Launching Daemon at Fri Jun  5 18:45:28 IST 2026
[2026-06-05 18:45:28,798.798 INFO    ] ================================================
[2026-06-05 18:45:29,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:45:29
[2026-06-05 18:45:29,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:45:30,273.273 INFO    ] Initializing speech engine...
[2026-06-05 18:45:30,283.283 INFO    ] 2026-06-05 18:45:30
[2026-06-05 18:45:30,556.556 INFO    ] 2026-06-05 18:45:30
[2026-06-05 18:45:30,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:45:30,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:45:30,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:45:30,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:45:30,943.943 INFO    ] time= 05/06/2026 18:45:30
[2026-06-05 18:45:30,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:45:30,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:45:31,051.051 INFO    ] No existing commands found in stream
[2026-06-05 18:45:36,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:45:36,084.084 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 18:45:37,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:45:37,309.309 INFO    ] Checking for system updates...
[2026-06-05 18:45:37,347.347 INFO    ] 200
[2026-06-05 18:45:37,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:37,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:45:37,405.405 INFO    ] No update needed
[2026-06-05 18:45:37,408.408 INFO    ] Checking for camera pi updates...
[2026-06-05 18:45:37,442.442 INFO    ] 200
[2026-06-05 18:45:37,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:37,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:45:37,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:45:37,540.540 INFO    ] No camera update needed
[2026-06-05 18:45:37,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:45:37,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:45:37,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:45:37,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:45:39,597.597 INFO    ] ================================================
[2026-06-05 18:45:39,612.612 INFO    ] Launching Daemon at Fri Jun  5 18:45:39 IST 2026
[2026-06-05 18:45:39,623.623 INFO    ] ================================================
[2026-06-05 18:45:40,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:45:40
[2026-06-05 18:45:40,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:45:41,055.055 INFO    ] Initializing speech engine...
[2026-06-05 18:45:41,061.061 INFO    ] 2026-06-05 18:45:41
[2026-06-05 18:45:41,352.352 INFO    ] 2026-06-05 18:45:41
[2026-06-05 18:45:41,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:45:41,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:45:41,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:45:42,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:45:42,258.258 INFO    ] time= 05/06/2026 18:45:42
[2026-06-05 18:45:42,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:45:42,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:45:42,547.547 INFO    ] No existing commands found in stream
[2026-06-05 18:45:47,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:45:47,581.581 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 18:45:48,974.974 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:45:48,976.976 INFO    ] Checking for system updates...
[2026-06-05 18:45:49,013.013 INFO    ] 200
[2026-06-05 18:45:49,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:49,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:45:49,075.075 INFO    ] No update needed
[2026-06-05 18:45:49,078.078 INFO    ] Checking for camera pi updates...
[2026-06-05 18:45:49,114.114 INFO    ] 200
[2026-06-05 18:45:49,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:49,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:45:49,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:45:49,207.207 INFO    ] No camera update needed
[2026-06-05 18:45:49,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:45:49,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:45:49,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:45:49,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:45:51,262.262 INFO    ] ================================================
[2026-06-05 18:45:51,277.277 INFO    ] Launching Daemon at Fri Jun  5 18:45:51 IST 2026
[2026-06-05 18:45:51,288.288 INFO    ] ================================================
[2026-06-05 18:45:51,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:45:51
[2026-06-05 18:45:52,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:45:52,840.840 INFO    ] Initializing speech engine...
[2026-06-05 18:45:52,850.850 INFO    ] 2026-06-05 18:45:52
[2026-06-05 18:45:53,138.138 INFO    ] 2026-06-05 18:45:53
[2026-06-05 18:45:53,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:45:53,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:45:53,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:45:53,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:45:53,695.695 INFO    ] time= 05/06/2026 18:45:53
[2026-06-05 18:45:53,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:45:53,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:45:53,841.841 INFO    ] No existing commands found in stream
[2026-06-05 18:45:58,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:45:58,871.871 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 18:45:59,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:45:59,359.359 INFO    ] Checking for system updates...
[2026-06-05 18:45:59,396.396 INFO    ] 200
[2026-06-05 18:45:59,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:59,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:45:59,473.473 INFO    ] No update needed
[2026-06-05 18:45:59,476.476 INFO    ] Checking for camera pi updates...
[2026-06-05 18:45:59,510.510 INFO    ] 200
[2026-06-05 18:45:59,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:45:59,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:45:59,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:45:59,601.601 INFO    ] No camera update needed
[2026-06-05 18:45:59,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:45:59,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:45:59,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:45:59,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:46:01,662.662 INFO    ] ================================================
[2026-06-05 18:46:01,688.688 INFO    ] Launching Daemon at Fri Jun  5 18:46:01 IST 2026
[2026-06-05 18:46:01,728.728 INFO    ] ================================================
[2026-06-05 18:46:02,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:46:02
[2026-06-05 18:46:03,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:46:03,464.464 INFO    ] Initializing speech engine...
[2026-06-05 18:46:03,470.470 INFO    ] 2026-06-05 18:46:03
[2026-06-05 18:46:03,730.730 INFO    ] 2026-06-05 18:46:03
[2026-06-05 18:46:03,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:46:03,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:46:04,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:46:04,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:46:04,235.235 INFO    ] time= 05/06/2026 18:46:04
[2026-06-05 18:46:04,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:46:04,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:46:04,429.429 INFO    ] No existing commands found in stream
[2026-06-05 18:46:09,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:46:09,463.463 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 18:46:13,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:46:13,375.375 INFO    ] Checking for system updates...
[2026-06-05 18:46:13,419.419 INFO    ] 200
[2026-06-05 18:46:13,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 18:46:13,426.426 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 18:46:13,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 18:46:13,472.472 INFO    ] 200
[2026-06-05 18:46:13,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 18:46:13,478.478 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 18:46:13,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:46:13,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:46:13,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:46:13,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:46:15,539.539 INFO    ] ================================================
[2026-06-05 18:46:15,556.556 INFO    ] Launching Daemon at Fri Jun  5 18:46:15 IST 2026
[2026-06-05 18:46:15,568.568 INFO    ] ================================================
[2026-06-05 18:46:16,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:46:16
[2026-06-05 18:46:16,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:46:17,025.025 INFO    ] Initializing speech engine...
[2026-06-05 18:46:17,037.037 INFO    ] 2026-06-05 18:46:17
[2026-06-05 18:46:17,283.283 INFO    ] 2026-06-05 18:46:17
[2026-06-05 18:46:17,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:46:18,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:46:18,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:46:18,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:46:18,348.348 INFO    ] time= 05/06/2026 18:46:18
[2026-06-05 18:46:18,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:46:18,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:46:18,551.551 INFO    ] No existing commands found in stream
[2026-06-05 18:46:23,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:46:23,565.565 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 18:46:26,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:46:26,198.198 INFO    ] Checking for system updates...
[2026-06-05 18:46:26,238.238 INFO    ] 200
[2026-06-05 18:46:26,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:46:26,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:46:26,310.310 INFO    ] No update needed
[2026-06-05 18:46:26,312.312 INFO    ] Checking for camera pi updates...
[2026-06-05 18:46:26,346.346 INFO    ] 200
[2026-06-05 18:46:26,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:46:26,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:46:26,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:46:26,539.539 INFO    ] No camera update needed
[2026-06-05 18:46:26,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:46:26,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:46:26,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:46:26,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:46:28,596.596 INFO    ] ================================================
[2026-06-05 18:46:28,611.611 INFO    ] Launching Daemon at Fri Jun  5 18:46:28 IST 2026
[2026-06-05 18:46:28,622.622 INFO    ] ================================================
[2026-06-05 18:46:29,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:46:29
[2026-06-05 18:46:29,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:46:30,121.121 INFO    ] Initializing speech engine...
[2026-06-05 18:46:30,134.134 INFO    ] 2026-06-05 18:46:30
[2026-06-05 18:46:30,452.452 INFO    ] 2026-06-05 18:46:30
[2026-06-05 18:46:30,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:46:30,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:46:30,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:46:30,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:46:30,966.966 INFO    ] time= 05/06/2026 18:46:30
[2026-06-05 18:46:30,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:46:31,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:46:31,122.122 INFO    ] No existing commands found in stream
[2026-06-05 18:46:36,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:46:36,141.141 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 18:46:38,215.215 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:46:38,218.218 INFO    ] Checking for system updates...
[2026-06-05 18:46:38,255.255 INFO    ] 200
[2026-06-05 18:46:38,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:46:38,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:46:38,316.316 INFO    ] No update needed
[2026-06-05 18:46:38,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 18:46:38,354.354 INFO    ] 200
[2026-06-05 18:46:38,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:46:38,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:46:38,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:46:38,453.453 INFO    ] No camera update needed
[2026-06-05 18:46:38,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:46:38,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:46:38,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:46:38,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:46:40,511.511 INFO    ] ================================================
[2026-06-05 18:46:40,526.526 INFO    ] Launching Daemon at Fri Jun  5 18:46:40 IST 2026
[2026-06-05 18:46:40,536.536 INFO    ] ================================================
[2026-06-05 18:46:41,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:46:41
[2026-06-05 18:46:41,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:46:42,029.029 INFO    ] Initializing speech engine...
[2026-06-05 18:46:42,038.038 INFO    ] 2026-06-05 18:46:42
[2026-06-05 18:46:42,300.300 INFO    ] 2026-06-05 18:46:42
[2026-06-05 18:46:42,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:46:42,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:46:42,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:46:42,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:46:42,774.774 INFO    ] time= 05/06/2026 18:46:42
[2026-06-05 18:46:42,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:46:42,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:46:43,003.003 INFO    ] No existing commands found in stream
[2026-06-05 18:46:48,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:46:48,021.021 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 18:46:51,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:46:51,323.323 INFO    ] Checking for system updates...
[2026-06-05 18:46:51,358.358 INFO    ] 200
[2026-06-05 18:46:51,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:46:51,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:46:51,422.422 INFO    ] No update needed
[2026-06-05 18:46:51,424.424 INFO    ] Checking for camera pi updates...
[2026-06-05 18:46:51,458.458 INFO    ] 200
[2026-06-05 18:46:51,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:46:51,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:46:51,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:46:51,566.566 INFO    ] No camera update needed
[2026-06-05 18:46:51,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:46:51,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:46:51,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:46:51,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:46:53,621.621 INFO    ] ================================================
[2026-06-05 18:46:53,637.637 INFO    ] Launching Daemon at Fri Jun  5 18:46:53 IST 2026
[2026-06-05 18:46:53,647.647 INFO    ] ================================================
[2026-06-05 18:46:54,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:46:54
[2026-06-05 18:46:54,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:46:55,210.210 INFO    ] Initializing speech engine...
[2026-06-05 18:46:55,218.218 INFO    ] 2026-06-05 18:46:55
[2026-06-05 18:46:55,466.466 INFO    ] 2026-06-05 18:46:55
[2026-06-05 18:46:55,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:46:55,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:46:55,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:46:55,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:46:55,962.962 INFO    ] time= 05/06/2026 18:46:55
[2026-06-05 18:46:56,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:46:56,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:46:56,177.177 INFO    ] No existing commands found in stream
[2026-06-05 18:47:01,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:47:01,191.191 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 18:47:03,292.292 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:47:03,295.295 INFO    ] Checking for system updates...
[2026-06-05 18:47:03,335.335 INFO    ] 200
[2026-06-05 18:47:03,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:03,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:47:03,400.400 INFO    ] No update needed
[2026-06-05 18:47:03,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 18:47:03,441.441 INFO    ] 200
[2026-06-05 18:47:03,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:03,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:47:03,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:47:03,538.538 INFO    ] No camera update needed
[2026-06-05 18:47:03,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:47:03,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:47:03,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:47:03,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:47:05,597.597 INFO    ] ================================================
[2026-06-05 18:47:05,612.612 INFO    ] Launching Daemon at Fri Jun  5 18:47:05 IST 2026
[2026-06-05 18:47:05,623.623 INFO    ] ================================================
[2026-06-05 18:47:06,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:47:06
[2026-06-05 18:47:06,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:47:07,188.188 INFO    ] Initializing speech engine...
[2026-06-05 18:47:07,202.202 INFO    ] 2026-06-05 18:47:07
[2026-06-05 18:47:07,464.464 INFO    ] 2026-06-05 18:47:07
[2026-06-05 18:47:07,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:47:07,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:47:07,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:47:07,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:47:07,829.829 INFO    ] time= 05/06/2026 18:47:07
[2026-06-05 18:47:07,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:47:07,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:47:07,959.959 INFO    ] No existing commands found in stream
[2026-06-05 18:47:12,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:47:12,974.974 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 18:47:14,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:47:14,048.048 INFO    ] Checking for system updates...
[2026-06-05 18:47:14,084.084 INFO    ] 200
[2026-06-05 18:47:14,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:14,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:47:14,143.143 INFO    ] No update needed
[2026-06-05 18:47:14,146.146 INFO    ] Checking for camera pi updates...
[2026-06-05 18:47:14,184.184 INFO    ] 200
[2026-06-05 18:47:14,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:14,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:47:14,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:47:14,276.276 INFO    ] No camera update needed
[2026-06-05 18:47:14,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:47:14,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:47:14,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:47:14,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:47:16,333.333 INFO    ] ================================================
[2026-06-05 18:47:16,348.348 INFO    ] Launching Daemon at Fri Jun  5 18:47:16 IST 2026
[2026-06-05 18:47:16,359.359 INFO    ] ================================================
[2026-06-05 18:47:16,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:47:16
[2026-06-05 18:47:17,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:47:17,769.769 INFO    ] Initializing speech engine...
[2026-06-05 18:47:17,792.792 INFO    ] 2026-06-05 18:47:17
[2026-06-05 18:47:18,050.050 INFO    ] 2026-06-05 18:47:18
[2026-06-05 18:47:18,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:47:19,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:47:19,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:47:19,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:47:19,248.248 INFO    ] time= 05/06/2026 18:47:19
[2026-06-05 18:47:19,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:47:19,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:47:19,358.358 INFO    ] No existing commands found in stream
[2026-06-05 18:47:24,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:47:24,371.371 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 18:47:25,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:47:25,407.407 INFO    ] Checking for system updates...
[2026-06-05 18:47:25,448.448 INFO    ] 200
[2026-06-05 18:47:25,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:25,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:47:25,514.514 INFO    ] No update needed
[2026-06-05 18:47:25,517.517 INFO    ] Checking for camera pi updates...
[2026-06-05 18:47:25,555.555 INFO    ] 200
[2026-06-05 18:47:25,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:25,598.598 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:47:25,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:47:25,650.650 INFO    ] No camera update needed
[2026-06-05 18:47:25,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:47:25,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:47:25,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:47:25,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:47:27,707.707 INFO    ] ================================================
[2026-06-05 18:47:27,722.722 INFO    ] Launching Daemon at Fri Jun  5 18:47:27 IST 2026
[2026-06-05 18:47:27,733.733 INFO    ] ================================================
[2026-06-05 18:47:28,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:47:28
[2026-06-05 18:47:28,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:47:29,194.194 INFO    ] Initializing speech engine...
[2026-06-05 18:47:29,201.201 INFO    ] 2026-06-05 18:47:29
[2026-06-05 18:47:29,484.484 INFO    ] 2026-06-05 18:47:29
[2026-06-05 18:47:29,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:47:29,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:47:29,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:47:30,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:47:30,061.061 INFO    ] time= 05/06/2026 18:47:30
[2026-06-05 18:47:30,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:47:30,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:47:30,211.211 INFO    ] No existing commands found in stream
[2026-06-05 18:47:35,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:47:35,235.235 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 18:47:35,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:47:35,934.934 INFO    ] Checking for system updates...
[2026-06-05 18:47:35,970.970 INFO    ] 200
[2026-06-05 18:47:35,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:36,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:47:36,032.032 INFO    ] No update needed
[2026-06-05 18:47:36,034.034 INFO    ] Checking for camera pi updates...
[2026-06-05 18:47:36,069.069 INFO    ] 200
[2026-06-05 18:47:36,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:36,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:47:36,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:47:36,157.157 INFO    ] No camera update needed
[2026-06-05 18:47:36,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:47:36,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:47:36,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:47:36,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:47:38,211.211 INFO    ] ================================================
[2026-06-05 18:47:38,226.226 INFO    ] Launching Daemon at Fri Jun  5 18:47:38 IST 2026
[2026-06-05 18:47:38,237.237 INFO    ] ================================================
[2026-06-05 18:47:38,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:47:38
[2026-06-05 18:47:39,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:47:39,638.638 INFO    ] Initializing speech engine...
[2026-06-05 18:47:39,650.650 INFO    ] 2026-06-05 18:47:39
[2026-06-05 18:47:39,921.921 INFO    ] 2026-06-05 18:47:39
[2026-06-05 18:47:39,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:47:40,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:47:40,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:47:40,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:47:40,416.416 INFO    ] time= 05/06/2026 18:47:40
[2026-06-05 18:47:40,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:47:40,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:47:40,623.623 INFO    ] No existing commands found in stream
[2026-06-05 18:47:45,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:47:45,640.640 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 18:47:49,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:47:49,942.942 INFO    ] Checking for system updates...
[2026-06-05 18:47:49,982.982 INFO    ] 200
[2026-06-05 18:47:49,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:50,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:47:50,046.046 INFO    ] No update needed
[2026-06-05 18:47:50,049.049 INFO    ] Checking for camera pi updates...
[2026-06-05 18:47:50,083.083 INFO    ] 200
[2026-06-05 18:47:50,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:47:50,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:47:50,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:47:50,159.159 INFO    ] No camera update needed
[2026-06-05 18:47:50,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:47:50,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:47:50,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:47:50,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:47:52,216.216 INFO    ] ================================================
[2026-06-05 18:47:52,231.231 INFO    ] Launching Daemon at Fri Jun  5 18:47:52 IST 2026
[2026-06-05 18:47:52,242.242 INFO    ] ================================================
[2026-06-05 18:47:52,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:47:52
[2026-06-05 18:47:53,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:47:53,773.773 INFO    ] Initializing speech engine...
[2026-06-05 18:47:53,785.785 INFO    ] 2026-06-05 18:47:53
[2026-06-05 18:47:54,043.043 INFO    ] 2026-06-05 18:47:54
[2026-06-05 18:47:54,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:47:54,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:47:54,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:47:54,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:47:54,427.427 INFO    ] time= 05/06/2026 18:47:54
[2026-06-05 18:47:54,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:47:54,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:47:54,574.574 INFO    ] No existing commands found in stream
[2026-06-05 18:47:59,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:47:59,600.600 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 18:48:03,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:48:03,874.874 INFO    ] Checking for system updates...
[2026-06-05 18:48:03,912.912 INFO    ] 200
[2026-06-05 18:48:03,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:48:03,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:48:03,973.973 INFO    ] No update needed
[2026-06-05 18:48:03,976.976 INFO    ] Checking for camera pi updates...
[2026-06-05 18:48:04,012.012 INFO    ] 200
[2026-06-05 18:48:04,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:48:04,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:48:04,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:48:04,087.087 INFO    ] No camera update needed
[2026-06-05 18:48:04,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:48:04,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:48:04,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:48:04,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:48:06,149.149 INFO    ] ================================================
[2026-06-05 18:48:06,164.164 INFO    ] Launching Daemon at Fri Jun  5 18:48:06 IST 2026
[2026-06-05 18:48:06,176.176 INFO    ] ================================================
[2026-06-05 18:48:06,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:48:06
[2026-06-05 18:48:07,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:48:07,593.593 INFO    ] Initializing speech engine...
[2026-06-05 18:48:07,600.600 INFO    ] 2026-06-05 18:48:07
[2026-06-05 18:48:07,895.895 INFO    ] 2026-06-05 18:48:07
[2026-06-05 18:48:07,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:48:08,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:48:08,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:48:08,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:48:08,291.291 INFO    ] time= 05/06/2026 18:48:08
[2026-06-05 18:48:08,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:48:08,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:48:08,409.409 INFO    ] No existing commands found in stream
[2026-06-05 18:48:13,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:48:13,448.448 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 18:48:20,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:48:20,270.270 INFO    ] Checking for system updates...
[2026-06-05 18:48:20,306.306 INFO    ] 200
[2026-06-05 18:48:20,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:48:20,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:48:20,365.365 INFO    ] No update needed
[2026-06-05 18:48:20,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 18:48:20,406.406 INFO    ] 200
[2026-06-05 18:48:20,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:48:20,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:48:20,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:48:20,499.499 INFO    ] No camera update needed
[2026-06-05 18:48:20,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:48:20,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:48:20,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:48:20,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:48:22,555.555 INFO    ] ================================================
[2026-06-05 18:48:22,570.570 INFO    ] Launching Daemon at Fri Jun  5 18:48:22 IST 2026
[2026-06-05 18:48:22,582.582 INFO    ] ================================================
[2026-06-05 18:48:23,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:48:23
[2026-06-05 18:48:23,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:48:24,223.223 INFO    ] Initializing speech engine...
[2026-06-05 18:48:24,231.231 INFO    ] 2026-06-05 18:48:24
[2026-06-05 18:48:24,517.517 INFO    ] 2026-06-05 18:48:24
[2026-06-05 18:48:24,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:48:24,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:48:24,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:48:25,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:48:25,060.060 INFO    ] time= 05/06/2026 18:48:25
[2026-06-05 18:48:25,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:48:25,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:48:25,217.217 INFO    ] No existing commands found in stream
[2026-06-05 18:48:30,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:48:30,244.244 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 18:48:31,962.962 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:48:31,966.966 INFO    ] Checking for system updates...
[2026-06-05 18:48:32,013.013 INFO    ] 200
[2026-06-05 18:48:32,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:48:32,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:48:32,090.090 INFO    ] No update needed
[2026-06-05 18:48:32,092.092 INFO    ] Checking for camera pi updates...
[2026-06-05 18:48:32,130.130 INFO    ] 200
[2026-06-05 18:48:32,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:48:32,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:48:32,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:48:32,315.315 INFO    ] No camera update needed
[2026-06-05 18:48:32,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:48:32,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:48:32,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:48:32,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:48:34,377.377 INFO    ] ================================================
[2026-06-05 18:48:34,392.392 INFO    ] Launching Daemon at Fri Jun  5 18:48:34 IST 2026
[2026-06-05 18:48:34,403.403 INFO    ] ================================================
[2026-06-05 18:48:34,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:48:34
[2026-06-05 18:48:35,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:48:35,817.817 INFO    ] Initializing speech engine...
[2026-06-05 18:48:35,831.831 INFO    ] 2026-06-05 18:48:35
[2026-06-05 18:48:36,100.100 INFO    ] 2026-06-05 18:48:36
[2026-06-05 18:48:36,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:48:36,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:48:36,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:48:36,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:48:36,478.478 INFO    ] time= 05/06/2026 18:48:36
[2026-06-05 18:48:36,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:48:36,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:48:36,651.651 INFO    ] No existing commands found in stream
[2026-06-05 18:48:41,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:48:41,684.684 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 18:48:44,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:48:44,286.286 INFO    ] Checking for system updates...
[2026-06-05 18:48:44,341.341 INFO    ] 200
[2026-06-05 18:48:44,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:48:44,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:48:44,405.405 INFO    ] No update needed
[2026-06-05 18:48:44,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 18:48:44,445.445 INFO    ] 200
[2026-06-05 18:48:44,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:48:44,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:48:44,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:48:44,541.541 INFO    ] No camera update needed
[2026-06-05 18:48:44,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:48:44,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:48:44,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:48:44,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:48:46,604.604 INFO    ] ================================================
[2026-06-05 18:48:46,619.619 INFO    ] Launching Daemon at Fri Jun  5 18:48:46 IST 2026
[2026-06-05 18:48:46,630.630 INFO    ] ================================================
[2026-06-05 18:48:47,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:48:47
[2026-06-05 18:48:47,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:48:48,276.276 INFO    ] Initializing speech engine...
[2026-06-05 18:48:48,285.285 INFO    ] 2026-06-05 18:48:48
[2026-06-05 18:48:48,557.557 INFO    ] 2026-06-05 18:48:48
[2026-06-05 18:48:48,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:48:50,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:48:50,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:48:51,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:48:51,400.400 INFO    ] time= 05/06/2026 18:48:51
[2026-06-05 18:48:51,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:48:51,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:48:51,500.500 INFO    ] No existing commands found in stream
[2026-06-05 18:48:56,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:48:56,514.514 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 18:48:59,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:48:59,910.910 INFO    ] Checking for system updates...
[2026-06-05 18:48:59,948.948 INFO    ] 200
[2026-06-05 18:48:59,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:00,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:49:00,010.010 INFO    ] No update needed
[2026-06-05 18:49:00,012.012 INFO    ] Checking for camera pi updates...
[2026-06-05 18:49:00,050.050 INFO    ] 200
[2026-06-05 18:49:00,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:00,093.093 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:49:00,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:49:00,140.140 INFO    ] No camera update needed
[2026-06-05 18:49:00,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:49:00,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:49:00,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:49:00,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:49:02,201.201 INFO    ] ================================================
[2026-06-05 18:49:02,221.221 INFO    ] Launching Daemon at Fri Jun  5 18:49:02 IST 2026
[2026-06-05 18:49:02,237.237 INFO    ] ================================================
[2026-06-05 18:49:02,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:49:02
[2026-06-05 18:49:03,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:49:03,741.741 INFO    ] Initializing speech engine...
[2026-06-05 18:49:03,750.750 INFO    ] 2026-06-05 18:49:03
[2026-06-05 18:49:04,040.040 INFO    ] 2026-06-05 18:49:04
[2026-06-05 18:49:04,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:49:04,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:49:04,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:49:04,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:49:04,458.458 INFO    ] time= 05/06/2026 18:49:04
[2026-06-05 18:49:04,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:49:04,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:49:04,638.638 INFO    ] No existing commands found in stream
[2026-06-05 18:49:09,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:49:09,667.667 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 18:49:12,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:49:12,054.054 INFO    ] Checking for system updates...
[2026-06-05 18:49:12,094.094 INFO    ] 200
[2026-06-05 18:49:12,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:12,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:49:12,152.152 INFO    ] No update needed
[2026-06-05 18:49:12,154.154 INFO    ] Checking for camera pi updates...
[2026-06-05 18:49:12,191.191 INFO    ] 200
[2026-06-05 18:49:12,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:12,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:49:12,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:49:12,284.284 INFO    ] No camera update needed
[2026-06-05 18:49:12,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:49:12,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:49:12,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:49:12,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:49:14,340.340 INFO    ] ================================================
[2026-06-05 18:49:14,355.355 INFO    ] Launching Daemon at Fri Jun  5 18:49:14 IST 2026
[2026-06-05 18:49:14,366.366 INFO    ] ================================================
[2026-06-05 18:49:14,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:49:14
[2026-06-05 18:49:15,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:49:15,830.830 INFO    ] Initializing speech engine...
[2026-06-05 18:49:15,847.847 INFO    ] 2026-06-05 18:49:15
[2026-06-05 18:49:16,105.105 INFO    ] 2026-06-05 18:49:16
[2026-06-05 18:49:16,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:49:16,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:49:16,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:49:16,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:49:16,511.511 INFO    ] time= 05/06/2026 18:49:16
[2026-06-05 18:49:16,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:49:16,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:49:16,600.600 INFO    ] No existing commands found in stream
[2026-06-05 18:49:21,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:49:21,610.610 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 18:49:25,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:49:25,180.180 INFO    ] Checking for system updates...
[2026-06-05 18:49:25,230.230 INFO    ] 200
[2026-06-05 18:49:25,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:25,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:49:25,296.296 INFO    ] No update needed
[2026-06-05 18:49:25,298.298 INFO    ] Checking for camera pi updates...
[2026-06-05 18:49:25,332.332 INFO    ] 200
[2026-06-05 18:49:25,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:25,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:49:25,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:49:25,426.426 INFO    ] No camera update needed
[2026-06-05 18:49:25,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:49:25,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:49:25,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:49:25,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:49:27,485.485 INFO    ] ================================================
[2026-06-05 18:49:27,500.500 INFO    ] Launching Daemon at Fri Jun  5 18:49:27 IST 2026
[2026-06-05 18:49:27,511.511 INFO    ] ================================================
[2026-06-05 18:49:28,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:49:28
[2026-06-05 18:49:28,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:49:28,996.996 INFO    ] Initializing speech engine...
[2026-06-05 18:49:29,006.006 INFO    ] 2026-06-05 18:49:29
[2026-06-05 18:49:29,258.258 INFO    ] 2026-06-05 18:49:29
[2026-06-05 18:49:29,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:49:29,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:49:29,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:49:29,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:49:29,694.694 INFO    ] time= 05/06/2026 18:49:29
[2026-06-05 18:49:29,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:49:29,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:49:29,948.948 INFO    ] No existing commands found in stream
[2026-06-05 18:49:34,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:49:34,979.979 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 18:49:37,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:49:37,863.863 INFO    ] Checking for system updates...
[2026-06-05 18:49:37,900.900 INFO    ] 200
[2026-06-05 18:49:37,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:37,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:49:37,967.967 INFO    ] No update needed
[2026-06-05 18:49:37,970.970 INFO    ] Checking for camera pi updates...
[2026-06-05 18:49:38,008.008 INFO    ] 200
[2026-06-05 18:49:38,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:38,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:49:38,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:49:38,096.096 INFO    ] No camera update needed
[2026-06-05 18:49:38,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:49:38,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:49:38,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:49:38,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:49:40,154.154 INFO    ] ================================================
[2026-06-05 18:49:40,168.168 INFO    ] Launching Daemon at Fri Jun  5 18:49:40 IST 2026
[2026-06-05 18:49:40,179.179 INFO    ] ================================================
[2026-06-05 18:49:40,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:49:40
[2026-06-05 18:49:41,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:49:41,646.646 INFO    ] Initializing speech engine...
[2026-06-05 18:49:41,653.653 INFO    ] 2026-06-05 18:49:41
[2026-06-05 18:49:41,904.904 INFO    ] 2026-06-05 18:49:41
[2026-06-05 18:49:41,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:49:42,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:49:42,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:49:42,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:49:42,575.575 INFO    ] time= 05/06/2026 18:49:42
[2026-06-05 18:49:42,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:49:42,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:49:42,812.812 INFO    ] No existing commands found in stream
[2026-06-05 18:49:47,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:49:47,851.851 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 18:49:52,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:49:52,095.095 INFO    ] Checking for system updates...
[2026-06-05 18:49:52,142.142 INFO    ] 200
[2026-06-05 18:49:52,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:52,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:49:52,216.216 INFO    ] No update needed
[2026-06-05 18:49:52,220.220 INFO    ] Checking for camera pi updates...
[2026-06-05 18:49:52,256.256 INFO    ] 200
[2026-06-05 18:49:52,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:49:52,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:49:52,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:49:52,331.331 INFO    ] No camera update needed
[2026-06-05 18:49:52,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:49:52,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:49:52,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:49:52,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:49:54,394.394 INFO    ] ================================================
[2026-06-05 18:49:54,409.409 INFO    ] Launching Daemon at Fri Jun  5 18:49:54 IST 2026
[2026-06-05 18:49:54,419.419 INFO    ] ================================================
[2026-06-05 18:49:55,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:49:55
[2026-06-05 18:49:55,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:49:55,882.882 INFO    ] Initializing speech engine...
[2026-06-05 18:49:55,891.891 INFO    ] 2026-06-05 18:49:55
[2026-06-05 18:49:56,152.152 INFO    ] 2026-06-05 18:49:56
[2026-06-05 18:49:56,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:49:56,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:49:56,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:49:56,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:49:56,617.617 INFO    ] time= 05/06/2026 18:49:56
[2026-06-05 18:49:56,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:49:56,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:49:56,855.855 INFO    ] No existing commands found in stream
[2026-06-05 18:50:01,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:50:01,889.889 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 18:50:09,190.190 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:50:09,193.193 INFO    ] Checking for system updates...
[2026-06-05 18:50:09,237.237 INFO    ] 200
[2026-06-05 18:50:09,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:50:09,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:50:09,305.305 INFO    ] No update needed
[2026-06-05 18:50:09,308.308 INFO    ] Checking for camera pi updates...
[2026-06-05 18:50:09,368.368 INFO    ] 200
[2026-06-05 18:50:09,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:50:09,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:50:09,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:50:09,456.456 INFO    ] No camera update needed
[2026-06-05 18:50:09,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:50:09,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:50:09,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:50:09,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:50:11,514.514 INFO    ] ================================================
[2026-06-05 18:50:11,529.529 INFO    ] Launching Daemon at Fri Jun  5 18:50:11 IST 2026
[2026-06-05 18:50:11,540.540 INFO    ] ================================================
[2026-06-05 18:50:12,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:50:12
[2026-06-05 18:50:12,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:50:13,196.196 INFO    ] Initializing speech engine...
[2026-06-05 18:50:13,204.204 INFO    ] 2026-06-05 18:50:13
[2026-06-05 18:50:13,496.496 INFO    ] 2026-06-05 18:50:13
[2026-06-05 18:50:13,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:50:13,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:50:13,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:50:13,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:50:13,983.983 INFO    ] time= 05/06/2026 18:50:13
[2026-06-05 18:50:14,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:50:14,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:50:14,212.212 INFO    ] No existing commands found in stream
[2026-06-05 18:50:19,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:50:19,232.232 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 18:50:22,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:50:22,708.708 INFO    ] Checking for system updates...
[2026-06-05 18:50:22,750.750 INFO    ] 200
[2026-06-05 18:50:22,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:50:22,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:50:22,812.812 INFO    ] No update needed
[2026-06-05 18:50:22,815.815 INFO    ] Checking for camera pi updates...
[2026-06-05 18:50:22,857.857 INFO    ] 200
[2026-06-05 18:50:22,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:50:22,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:50:22,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:50:22,950.950 INFO    ] No camera update needed
[2026-06-05 18:50:22,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:50:22,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:50:22,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:50:22,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:50:25,012.012 INFO    ] ================================================
[2026-06-05 18:50:25,029.029 INFO    ] Launching Daemon at Fri Jun  5 18:50:25 IST 2026
[2026-06-05 18:50:25,041.041 INFO    ] ================================================
[2026-06-05 18:50:25,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:50:25
[2026-06-05 18:50:26,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:50:26,468.468 INFO    ] Initializing speech engine...
[2026-06-05 18:50:26,477.477 INFO    ] 2026-06-05 18:50:26
[2026-06-05 18:50:26,728.728 INFO    ] 2026-06-05 18:50:26
[2026-06-05 18:50:26,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:50:26,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:50:26,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:50:27,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:50:27,105.105 INFO    ] time= 05/06/2026 18:50:27
[2026-06-05 18:50:27,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:50:27,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:50:27,295.295 INFO    ] No existing commands found in stream
[2026-06-05 18:50:32,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:50:32,320.320 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 18:50:34,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:50:34,407.407 INFO    ] Checking for system updates...
[2026-06-05 18:50:34,444.444 INFO    ] 200
[2026-06-05 18:50:34,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:50:34,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:50:34,523.523 INFO    ] No update needed
[2026-06-05 18:50:34,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 18:50:34,564.564 INFO    ] 200
[2026-06-05 18:50:34,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:50:34,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:50:34,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:50:34,764.764 INFO    ] No camera update needed
[2026-06-05 18:50:34,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:50:34,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:50:34,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:50:34,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:50:36,824.824 INFO    ] ================================================
[2026-06-05 18:50:36,841.841 INFO    ] Launching Daemon at Fri Jun  5 18:50:36 IST 2026
[2026-06-05 18:50:36,852.852 INFO    ] ================================================
[2026-06-05 18:50:37,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:50:37
[2026-06-05 18:50:38,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:50:38,295.295 INFO    ] Initializing speech engine...
[2026-06-05 18:50:38,301.301 INFO    ] 2026-06-05 18:50:38
[2026-06-05 18:50:38,561.561 INFO    ] 2026-06-05 18:50:38
[2026-06-05 18:50:38,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:50:38,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:50:38,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:50:38,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:50:39,030.030 INFO    ] time= 05/06/2026 18:50:38
[2026-06-05 18:50:39,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:50:39,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:50:39,254.254 INFO    ] No existing commands found in stream
[2026-06-05 18:50:44,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:50:44,272.272 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 18:50:47,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:50:47,884.884 INFO    ] Checking for system updates...
[2026-06-05 18:50:47,924.924 INFO    ] 200
[2026-06-05 18:50:47,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:50:47,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:50:47,983.983 INFO    ] No update needed
[2026-06-05 18:50:47,985.985 INFO    ] Checking for camera pi updates...
[2026-06-05 18:50:48,019.019 INFO    ] 200
[2026-06-05 18:50:48,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:50:48,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:50:48,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:50:48,098.098 INFO    ] No camera update needed
[2026-06-05 18:50:48,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:50:48,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:50:48,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:50:48,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:50:50,155.155 INFO    ] ================================================
[2026-06-05 18:50:50,171.171 INFO    ] Launching Daemon at Fri Jun  5 18:50:50 IST 2026
[2026-06-05 18:50:50,183.183 INFO    ] ================================================
[2026-06-05 18:50:50,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:50:50
[2026-06-05 18:50:51,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:50:51,625.625 INFO    ] Initializing speech engine...
[2026-06-05 18:50:51,634.634 INFO    ] 2026-06-05 18:50:51
[2026-06-05 18:50:51,880.880 INFO    ] 2026-06-05 18:50:51
[2026-06-05 18:50:51,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:50:52,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:50:52,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:50:53,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:50:53,103.103 INFO    ] time= 05/06/2026 18:50:53
[2026-06-05 18:50:53,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:50:53,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:50:53,230.230 INFO    ] No existing commands found in stream
[2026-06-05 18:50:58,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:50:58,243.243 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-05 18:51:02,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:51:02,623.623 INFO    ] Checking for system updates...
[2026-06-05 18:51:02,667.667 INFO    ] 200
[2026-06-05 18:51:02,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:02,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:51:02,741.741 INFO    ] No update needed
[2026-06-05 18:51:02,744.744 INFO    ] Checking for camera pi updates...
[2026-06-05 18:51:02,786.786 INFO    ] 200
[2026-06-05 18:51:02,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:02,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:51:02,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:51:02,880.880 INFO    ] No camera update needed
[2026-06-05 18:51:02,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:51:02,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:51:02,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:51:02,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:51:04,951.951 INFO    ] ================================================
[2026-06-05 18:51:04,966.966 INFO    ] Launching Daemon at Fri Jun  5 18:51:04 IST 2026
[2026-06-05 18:51:04,977.977 INFO    ] ================================================
[2026-06-05 18:51:05,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:51:05
[2026-06-05 18:51:06,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:51:06,488.488 INFO    ] Initializing speech engine...
[2026-06-05 18:51:06,497.497 INFO    ] 2026-06-05 18:51:06
[2026-06-05 18:51:06,789.789 INFO    ] 2026-06-05 18:51:06
[2026-06-05 18:51:06,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:51:07,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:51:07,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:51:07,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:51:07,257.257 INFO    ] time= 05/06/2026 18:51:07
[2026-06-05 18:51:07,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:51:07,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:51:07,484.484 INFO    ] No existing commands found in stream
[2026-06-05 18:51:12,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:51:12,503.503 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 18:51:13,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:51:13,063.063 INFO    ] Checking for system updates...
[2026-06-05 18:51:13,099.099 INFO    ] 200
[2026-06-05 18:51:13,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:13,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:51:13,163.163 INFO    ] No update needed
[2026-06-05 18:51:13,166.166 INFO    ] Checking for camera pi updates...
[2026-06-05 18:51:13,200.200 INFO    ] 200
[2026-06-05 18:51:13,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:13,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:51:13,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:51:13,294.294 INFO    ] No camera update needed
[2026-06-05 18:51:13,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:51:13,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:51:13,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:51:13,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:51:15,358.358 INFO    ] ================================================
[2026-06-05 18:51:15,374.374 INFO    ] Launching Daemon at Fri Jun  5 18:51:15 IST 2026
[2026-06-05 18:51:15,385.385 INFO    ] ================================================
[2026-06-05 18:51:15,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:51:15
[2026-06-05 18:51:16,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:51:16,829.829 INFO    ] Initializing speech engine...
[2026-06-05 18:51:16,837.837 INFO    ] 2026-06-05 18:51:16
[2026-06-05 18:51:17,092.092 INFO    ] 2026-06-05 18:51:17
[2026-06-05 18:51:17,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:51:17,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:51:17,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:51:17,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:51:17,565.565 INFO    ] time= 05/06/2026 18:51:17
[2026-06-05 18:51:17,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:51:17,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:51:17,812.812 INFO    ] No existing commands found in stream
[2026-06-05 18:51:22,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:51:22,827.827 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 18:51:25,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:51:25,195.195 INFO    ] Checking for system updates...
[2026-06-05 18:51:25,232.232 INFO    ] 200
[2026-06-05 18:51:25,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:25,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:51:25,291.291 INFO    ] No update needed
[2026-06-05 18:51:25,293.293 INFO    ] Checking for camera pi updates...
[2026-06-05 18:51:25,327.327 INFO    ] 200
[2026-06-05 18:51:25,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:25,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:51:25,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:51:25,420.420 INFO    ] No camera update needed
[2026-06-05 18:51:25,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:51:25,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:51:25,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:51:25,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:51:27,476.476 INFO    ] ================================================
[2026-06-05 18:51:27,491.491 INFO    ] Launching Daemon at Fri Jun  5 18:51:27 IST 2026
[2026-06-05 18:51:27,503.503 INFO    ] ================================================
[2026-06-05 18:51:28,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:51:28
[2026-06-05 18:51:28,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:51:28,962.962 INFO    ] Initializing speech engine...
[2026-06-05 18:51:28,972.972 INFO    ] 2026-06-05 18:51:28
[2026-06-05 18:51:29,220.220 INFO    ] 2026-06-05 18:51:29
[2026-06-05 18:51:29,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:51:29,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:51:29,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:51:29,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:51:29,708.708 INFO    ] time= 05/06/2026 18:51:29
[2026-06-05 18:51:29,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:51:29,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:51:29,915.915 INFO    ] No existing commands found in stream
[2026-06-05 18:51:34,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:51:34,945.945 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 18:51:35,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:51:35,405.405 INFO    ] Checking for system updates...
[2026-06-05 18:51:35,442.442 INFO    ] 200
[2026-06-05 18:51:35,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:35,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:51:35,500.500 INFO    ] No update needed
[2026-06-05 18:51:35,503.503 INFO    ] Checking for camera pi updates...
[2026-06-05 18:51:35,537.537 INFO    ] 200
[2026-06-05 18:51:35,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:35,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:51:35,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:51:35,632.632 INFO    ] No camera update needed
[2026-06-05 18:51:35,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:51:35,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:51:35,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:51:35,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:51:37,689.689 INFO    ] ================================================
[2026-06-05 18:51:37,705.705 INFO    ] Launching Daemon at Fri Jun  5 18:51:37 IST 2026
[2026-06-05 18:51:37,716.716 INFO    ] ================================================
[2026-06-05 18:51:38,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:51:38
[2026-06-05 18:51:38,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:51:39,185.185 INFO    ] Initializing speech engine...
[2026-06-05 18:51:39,192.192 INFO    ] 2026-06-05 18:51:39
[2026-06-05 18:51:39,441.441 INFO    ] 2026-06-05 18:51:39
[2026-06-05 18:51:39,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:51:39,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:51:40,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:51:41,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:51:41,209.209 INFO    ] time= 05/06/2026 18:51:41
[2026-06-05 18:51:41,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:51:41,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:51:41,387.387 INFO    ] No existing commands found in stream
[2026-06-05 18:51:46,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:51:46,414.414 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 18:51:46,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:51:46,981.981 INFO    ] Checking for system updates...
[2026-06-05 18:51:47,017.017 INFO    ] 200
[2026-06-05 18:51:47,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:47,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:51:47,080.080 INFO    ] No update needed
[2026-06-05 18:51:47,083.083 INFO    ] Checking for camera pi updates...
[2026-06-05 18:51:47,120.120 INFO    ] 200
[2026-06-05 18:51:47,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:51:47,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:51:47,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:51:47,222.222 INFO    ] No camera update needed
[2026-06-05 18:51:47,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:51:47,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:51:47,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:51:47,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:51:49,278.278 INFO    ] ================================================
[2026-06-05 18:51:49,294.294 INFO    ] Launching Daemon at Fri Jun  5 18:51:49 IST 2026
[2026-06-05 18:51:49,305.305 INFO    ] ================================================
[2026-06-05 18:51:49,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:51:49
[2026-06-05 18:51:50,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:51:50,759.759 INFO    ] Initializing speech engine...
[2026-06-05 18:51:50,773.773 INFO    ] 2026-06-05 18:51:50
[2026-06-05 18:51:51,057.057 INFO    ] 2026-06-05 18:51:51
[2026-06-05 18:51:51,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:51:53,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:51:53,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:51:53,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:51:53,967.967 INFO    ] time= 05/06/2026 18:51:53
[2026-06-05 18:51:53,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:51:53,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:51:54,065.065 INFO    ] No existing commands found in stream
[2026-06-05 18:51:59,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:51:59,081.081 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 18:52:03,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:52:03,456.456 INFO    ] Checking for system updates...
[2026-06-05 18:52:03,494.494 INFO    ] 200
[2026-06-05 18:52:03,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:03,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:52:03,553.553 INFO    ] No update needed
[2026-06-05 18:52:03,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 18:52:03,593.593 INFO    ] 200
[2026-06-05 18:52:03,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:03,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:52:03,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:52:03,680.680 INFO    ] No camera update needed
[2026-06-05 18:52:03,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:52:03,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:52:03,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:52:03,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:52:05,738.738 INFO    ] ================================================
[2026-06-05 18:52:05,758.758 INFO    ] Launching Daemon at Fri Jun  5 18:52:05 IST 2026
[2026-06-05 18:52:05,777.777 INFO    ] ================================================
[2026-06-05 18:52:06,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:52:06
[2026-06-05 18:52:07,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:52:07,278.278 INFO    ] Initializing speech engine...
[2026-06-05 18:52:07,287.287 INFO    ] 2026-06-05 18:52:07
[2026-06-05 18:52:07,539.539 INFO    ] 2026-06-05 18:52:07
[2026-06-05 18:52:07,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:52:07,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:52:07,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:52:07,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:52:07,917.917 INFO    ] time= 05/06/2026 18:52:07
[2026-06-05 18:52:07,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:52:07,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:52:08,111.111 INFO    ] No existing commands found in stream
[2026-06-05 18:52:13,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:52:13,131.131 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 18:52:14,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:52:14,166.166 INFO    ] Checking for system updates...
[2026-06-05 18:52:14,205.205 INFO    ] 200
[2026-06-05 18:52:14,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:14,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:52:14,269.269 INFO    ] No update needed
[2026-06-05 18:52:14,271.271 INFO    ] Checking for camera pi updates...
[2026-06-05 18:52:14,307.307 INFO    ] 200
[2026-06-05 18:52:14,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:14,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:52:14,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:52:14,407.407 INFO    ] No camera update needed
[2026-06-05 18:52:14,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:52:14,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:52:14,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:52:14,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:52:16,464.464 INFO    ] ================================================
[2026-06-05 18:52:16,479.479 INFO    ] Launching Daemon at Fri Jun  5 18:52:16 IST 2026
[2026-06-05 18:52:16,491.491 INFO    ] ================================================
[2026-06-05 18:52:17,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:52:17
[2026-06-05 18:52:17,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:52:17,937.937 INFO    ] Initializing speech engine...
[2026-06-05 18:52:17,945.945 INFO    ] 2026-06-05 18:52:17
[2026-06-05 18:52:18,223.223 INFO    ] 2026-06-05 18:52:18
[2026-06-05 18:52:18,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:52:18,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:52:18,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:52:18,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:52:18,695.695 INFO    ] time= 05/06/2026 18:52:18
[2026-06-05 18:52:18,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:52:18,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:52:18,936.936 INFO    ] No existing commands found in stream
[2026-06-05 18:52:23,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:52:23,964.964 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 18:52:28,255.255 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:52:28,258.258 INFO    ] Checking for system updates...
[2026-06-05 18:52:28,300.300 INFO    ] 200
[2026-06-05 18:52:28,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:28,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:52:28,366.366 INFO    ] No update needed
[2026-06-05 18:52:28,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 18:52:28,403.403 INFO    ] 200
[2026-06-05 18:52:28,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:28,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:52:28,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:52:28,499.499 INFO    ] No camera update needed
[2026-06-05 18:52:28,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:52:28,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:52:28,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:52:28,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:52:30,564.564 INFO    ] ================================================
[2026-06-05 18:52:30,580.580 INFO    ] Launching Daemon at Fri Jun  5 18:52:30 IST 2026
[2026-06-05 18:52:30,592.592 INFO    ] ================================================
[2026-06-05 18:52:31,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:52:31
[2026-06-05 18:52:31,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:52:32,105.105 INFO    ] Initializing speech engine...
[2026-06-05 18:52:32,115.115 INFO    ] 2026-06-05 18:52:32
[2026-06-05 18:52:32,377.377 INFO    ] 2026-06-05 18:52:32
[2026-06-05 18:52:32,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:52:32,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:52:32,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:52:32,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:52:32,767.767 INFO    ] time= 05/06/2026 18:52:32
[2026-06-05 18:52:32,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:52:32,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:52:32,968.968 INFO    ] No existing commands found in stream
[2026-06-05 18:52:37,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:52:37,987.987 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 18:52:41,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:52:41,183.183 INFO    ] Checking for system updates...
[2026-06-05 18:52:41,220.220 INFO    ] 200
[2026-06-05 18:52:41,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:41,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:52:41,279.279 INFO    ] No update needed
[2026-06-05 18:52:41,282.282 INFO    ] Checking for camera pi updates...
[2026-06-05 18:52:41,317.317 INFO    ] 200
[2026-06-05 18:52:41,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:41,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:52:41,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:52:41,511.511 INFO    ] No camera update needed
[2026-06-05 18:52:41,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:52:41,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:52:41,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:52:41,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:52:43,569.569 INFO    ] ================================================
[2026-06-05 18:52:43,585.585 INFO    ] Launching Daemon at Fri Jun  5 18:52:43 IST 2026
[2026-06-05 18:52:43,596.596 INFO    ] ================================================
[2026-06-05 18:52:44,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:52:44
[2026-06-05 18:52:44,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:52:45,028.028 INFO    ] Initializing speech engine...
[2026-06-05 18:52:45,036.036 INFO    ] 2026-06-05 18:52:45
[2026-06-05 18:52:45,290.290 INFO    ] 2026-06-05 18:52:45
[2026-06-05 18:52:45,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:52:45,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:52:45,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:52:45,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:52:45,769.769 INFO    ] time= 05/06/2026 18:52:45
[2026-06-05 18:52:45,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:52:45,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:52:46,017.017 INFO    ] No existing commands found in stream
[2026-06-05 18:52:51,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:52:51,037.037 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 18:52:55,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:52:55,404.404 INFO    ] Checking for system updates...
[2026-06-05 18:52:55,444.444 INFO    ] 200
[2026-06-05 18:52:55,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:55,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:52:55,502.502 INFO    ] No update needed
[2026-06-05 18:52:55,504.504 INFO    ] Checking for camera pi updates...
[2026-06-05 18:52:55,547.547 INFO    ] 200
[2026-06-05 18:52:55,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:52:55,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:52:55,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:52:55,635.635 INFO    ] No camera update needed
[2026-06-05 18:52:55,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:52:55,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:52:55,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:52:55,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:52:57,692.692 INFO    ] ================================================
[2026-06-05 18:52:57,707.707 INFO    ] Launching Daemon at Fri Jun  5 18:52:57 IST 2026
[2026-06-05 18:52:57,718.718 INFO    ] ================================================
[2026-06-05 18:52:58,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:52:58
[2026-06-05 18:52:58,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:52:59,137.137 INFO    ] Initializing speech engine...
[2026-06-05 18:52:59,144.144 INFO    ] 2026-06-05 18:52:59
[2026-06-05 18:52:59,443.443 INFO    ] 2026-06-05 18:52:59
[2026-06-05 18:52:59,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:52:59,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:52:59,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:52:59,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:52:59,869.869 INFO    ] time= 05/06/2026 18:52:59
[2026-06-05 18:52:59,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:52:59,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:52:59,956.956 INFO    ] No existing commands found in stream
[2026-06-05 18:53:04,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:53:04,970.970 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 18:53:06,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:53:06,697.697 INFO    ] Checking for system updates...
[2026-06-05 18:53:06,733.733 INFO    ] 200
[2026-06-05 18:53:06,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:06,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:53:06,792.792 INFO    ] No update needed
[2026-06-05 18:53:06,794.794 INFO    ] Checking for camera pi updates...
[2026-06-05 18:53:06,830.830 INFO    ] 200
[2026-06-05 18:53:06,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:06,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:53:06,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:53:06,918.918 INFO    ] No camera update needed
[2026-06-05 18:53:06,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:53:06,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:53:06,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:53:06,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:53:08,974.974 INFO    ] ================================================
[2026-06-05 18:53:08,990.990 INFO    ] Launching Daemon at Fri Jun  5 18:53:08 IST 2026
[2026-06-05 18:53:09,001.001 INFO    ] ================================================
[2026-06-05 18:53:09,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:53:09
[2026-06-05 18:53:10,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:53:10,461.461 INFO    ] Initializing speech engine...
[2026-06-05 18:53:10,470.470 INFO    ] 2026-06-05 18:53:10
[2026-06-05 18:53:10,768.768 INFO    ] 2026-06-05 18:53:10
[2026-06-05 18:53:10,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:53:11,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:53:11,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:53:11,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:53:11,195.195 INFO    ] time= 05/06/2026 18:53:11
[2026-06-05 18:53:11,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:53:11,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:53:11,354.354 INFO    ] No existing commands found in stream
[2026-06-05 18:53:16,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:53:16,387.387 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 18:53:19,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:53:19,933.933 INFO    ] Checking for system updates...
[2026-06-05 18:53:19,969.969 INFO    ] 200
[2026-06-05 18:53:19,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:20,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:53:20,031.031 INFO    ] No update needed
[2026-06-05 18:53:20,033.033 INFO    ] Checking for camera pi updates...
[2026-06-05 18:53:20,067.067 INFO    ] 200
[2026-06-05 18:53:20,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:20,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:53:20,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:53:20,169.169 INFO    ] No camera update needed
[2026-06-05 18:53:20,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:53:20,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:53:20,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:53:20,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:53:22,224.224 INFO    ] ================================================
[2026-06-05 18:53:22,239.239 INFO    ] Launching Daemon at Fri Jun  5 18:53:22 IST 2026
[2026-06-05 18:53:22,251.251 INFO    ] ================================================
[2026-06-05 18:53:22,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:53:22
[2026-06-05 18:53:23,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:53:23,899.899 INFO    ] Initializing speech engine...
[2026-06-05 18:53:23,905.905 INFO    ] 2026-06-05 18:53:23
[2026-06-05 18:53:24,177.177 INFO    ] 2026-06-05 18:53:24
[2026-06-05 18:53:24,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:53:25,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:53:25,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:53:25,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:53:25,734.734 INFO    ] time= 05/06/2026 18:53:25
[2026-06-05 18:53:25,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:53:25,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:53:25,823.823 INFO    ] No existing commands found in stream
[2026-06-05 18:53:30,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:53:30,838.838 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 18:53:33,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:53:33,691.691 INFO    ] Checking for system updates...
[2026-06-05 18:53:33,727.727 INFO    ] 200
[2026-06-05 18:53:33,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:33,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:53:33,792.792 INFO    ] No update needed
[2026-06-05 18:53:33,794.794 INFO    ] Checking for camera pi updates...
[2026-06-05 18:53:33,828.828 INFO    ] 200
[2026-06-05 18:53:33,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:33,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:53:33,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:53:33,919.919 INFO    ] No camera update needed
[2026-06-05 18:53:33,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:53:33,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:53:33,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:53:33,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:53:35,974.974 INFO    ] ================================================
[2026-06-05 18:53:35,990.990 INFO    ] Launching Daemon at Fri Jun  5 18:53:35 IST 2026
[2026-06-05 18:53:36,002.002 INFO    ] ================================================
[2026-06-05 18:53:36,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:53:36
[2026-06-05 18:53:37,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:53:37,437.437 INFO    ] Initializing speech engine...
[2026-06-05 18:53:37,445.445 INFO    ] 2026-06-05 18:53:37
[2026-06-05 18:53:37,722.722 INFO    ] 2026-06-05 18:53:37
[2026-06-05 18:53:37,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:53:38,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:53:38,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:53:38,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:53:38,288.288 INFO    ] time= 05/06/2026 18:53:38
[2026-06-05 18:53:38,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:53:38,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:53:38,434.434 INFO    ] No existing commands found in stream
[2026-06-05 18:53:43,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:53:43,458.458 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 18:53:44,935.935 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:53:44,938.938 INFO    ] Checking for system updates...
[2026-06-05 18:53:44,975.975 INFO    ] 200
[2026-06-05 18:53:44,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:45,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:53:45,034.034 INFO    ] No update needed
[2026-06-05 18:53:45,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 18:53:45,071.071 INFO    ] 200
[2026-06-05 18:53:45,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:45,116.116 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:53:45,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:53:45,163.163 INFO    ] No camera update needed
[2026-06-05 18:53:45,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:53:45,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:53:45,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:53:45,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:53:47,222.222 INFO    ] ================================================
[2026-06-05 18:53:47,237.237 INFO    ] Launching Daemon at Fri Jun  5 18:53:47 IST 2026
[2026-06-05 18:53:47,247.247 INFO    ] ================================================
[2026-06-05 18:53:47,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:53:47
[2026-06-05 18:53:48,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:53:48,714.714 INFO    ] Initializing speech engine...
[2026-06-05 18:53:48,747.747 INFO    ] 2026-06-05 18:53:48
[2026-06-05 18:53:49,010.010 INFO    ] 2026-06-05 18:53:49
[2026-06-05 18:53:49,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:53:49,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:53:49,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:53:49,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:53:49,384.384 INFO    ] time= 05/06/2026 18:53:49
[2026-06-05 18:53:49,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:53:49,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:53:49,565.565 INFO    ] No existing commands found in stream
[2026-06-05 18:53:54,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:53:54,596.596 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 18:53:58,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:53:58,729.729 INFO    ] Checking for system updates...
[2026-06-05 18:53:58,767.767 INFO    ] 200
[2026-06-05 18:53:58,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:58,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:53:58,827.827 INFO    ] No update needed
[2026-06-05 18:53:58,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 18:53:58,865.865 INFO    ] 200
[2026-06-05 18:53:58,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:53:58,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:53:58,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:53:58,956.956 INFO    ] No camera update needed
[2026-06-05 18:53:58,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:53:58,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:53:58,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:53:58,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:54:01,017.017 INFO    ] ================================================
[2026-06-05 18:54:01,033.033 INFO    ] Launching Daemon at Fri Jun  5 18:54:01 IST 2026
[2026-06-05 18:54:01,044.044 INFO    ] ================================================
[2026-06-05 18:54:01,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:54:01
[2026-06-05 18:54:02,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:54:02,728.728 INFO    ] Initializing speech engine...
[2026-06-05 18:54:02,736.736 INFO    ] 2026-06-05 18:54:02
[2026-06-05 18:54:03,071.071 INFO    ] 2026-06-05 18:54:03
[2026-06-05 18:54:03,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:54:03,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:54:03,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:54:03,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:54:03,555.555 INFO    ] time= 05/06/2026 18:54:03
[2026-06-05 18:54:03,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:54:03,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:54:03,755.755 INFO    ] No existing commands found in stream
[2026-06-05 18:54:08,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:54:08,793.793 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 18:54:09,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:54:09,695.695 INFO    ] Checking for system updates...
[2026-06-05 18:54:09,736.736 INFO    ] 200
[2026-06-05 18:54:09,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:54:09,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:54:09,795.795 INFO    ] No update needed
[2026-06-05 18:54:09,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 18:54:09,833.833 INFO    ] 200
[2026-06-05 18:54:09,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:54:09,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:54:09,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:54:09,913.913 INFO    ] No camera update needed
[2026-06-05 18:54:09,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:54:09,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:54:09,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:54:09,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:54:11,970.970 INFO    ] ================================================
[2026-06-05 18:54:11,985.985 INFO    ] Launching Daemon at Fri Jun  5 18:54:11 IST 2026
[2026-06-05 18:54:12,997.997 INFO    ] ================================================
[2026-06-05 18:54:12,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:54:12
[2026-06-05 18:54:13,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:54:13,461.461 INFO    ] Initializing speech engine...
[2026-06-05 18:54:13,471.471 INFO    ] 2026-06-05 18:54:13
[2026-06-05 18:54:13,733.733 INFO    ] 2026-06-05 18:54:13
[2026-06-05 18:54:13,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:54:14,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:54:14,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:54:14,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:54:14,281.281 INFO    ] time= 05/06/2026 18:54:14
[2026-06-05 18:54:14,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:54:14,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:54:14,427.427 INFO    ] No existing commands found in stream
[2026-06-05 18:54:19,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:54:19,451.451 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 18:54:22,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:54:22,773.773 INFO    ] Checking for system updates...
[2026-06-05 18:54:22,814.814 INFO    ] 200
[2026-06-05 18:54:22,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:54:22,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:54:22,882.882 INFO    ] No update needed
[2026-06-05 18:54:22,899.899 INFO    ] Checking for camera pi updates...
[2026-06-05 18:54:22,943.943 INFO    ] 200
[2026-06-05 18:54:22,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:54:22,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:54:23,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:54:23,040.040 INFO    ] No camera update needed
[2026-06-05 18:54:23,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:54:23,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:54:23,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:54:23,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:54:25,101.101 INFO    ] ================================================
[2026-06-05 18:54:25,117.117 INFO    ] Launching Daemon at Fri Jun  5 18:54:25 IST 2026
[2026-06-05 18:54:25,128.128 INFO    ] ================================================
[2026-06-05 18:54:25,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:54:25
[2026-06-05 18:54:26,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:54:26,601.601 INFO    ] Initializing speech engine...
[2026-06-05 18:54:26,611.611 INFO    ] 2026-06-05 18:54:26
[2026-06-05 18:54:26,862.862 INFO    ] 2026-06-05 18:54:26
[2026-06-05 18:54:26,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:54:27,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:54:27,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:54:27,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:54:27,341.341 INFO    ] time= 05/06/2026 18:54:27
[2026-06-05 18:54:27,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:54:27,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:54:27,575.575 INFO    ] No existing commands found in stream
[2026-06-05 18:54:32,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:54:32,590.590 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 18:54:35,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:54:35,401.401 INFO    ] Checking for system updates...
[2026-06-05 18:54:35,437.437 INFO    ] 200
[2026-06-05 18:54:35,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:54:35,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:54:35,496.496 INFO    ] No update needed
[2026-06-05 18:54:35,498.498 INFO    ] Checking for camera pi updates...
[2026-06-05 18:54:35,532.532 INFO    ] 200
[2026-06-05 18:54:35,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:54:35,574.574 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:54:35,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:54:35,629.629 INFO    ] No camera update needed
[2026-06-05 18:54:35,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:54:35,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:54:35,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:54:35,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:54:37,683.683 INFO    ] ================================================
[2026-06-05 18:54:37,699.699 INFO    ] Launching Daemon at Fri Jun  5 18:54:37 IST 2026
[2026-06-05 18:54:37,709.709 INFO    ] ================================================
[2026-06-05 18:54:38,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:54:38
[2026-06-05 18:54:39,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:54:39,368.368 INFO    ] Initializing speech engine...
[2026-06-05 18:54:39,380.380 INFO    ] 2026-06-05 18:54:39
[2026-06-05 18:54:39,658.658 INFO    ] 2026-06-05 18:54:39
[2026-06-05 18:54:39,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:54:39,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:54:39,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:54:40,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:54:40,190.190 INFO    ] time= 05/06/2026 18:54:40
[2026-06-05 18:54:40,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:54:40,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:54:40,374.374 INFO    ] No existing commands found in stream
[2026-06-05 18:54:45,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:54:45,408.408 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 18:54:47,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:54:47,761.761 INFO    ] Checking for system updates...
[2026-06-05 18:54:47,798.798 INFO    ] 200
[2026-06-05 18:54:47,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:54:47,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:54:47,868.868 INFO    ] No update needed
[2026-06-05 18:54:47,870.870 INFO    ] Checking for camera pi updates...
[2026-06-05 18:54:47,904.904 INFO    ] 200
[2026-06-05 18:54:47,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:54:47,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:54:48,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:54:48,103.103 INFO    ] No camera update needed
[2026-06-05 18:54:48,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:54:48,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:54:48,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:54:48,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:54:50,159.159 INFO    ] ================================================
[2026-06-05 18:54:50,174.174 INFO    ] Launching Daemon at Fri Jun  5 18:54:50 IST 2026
[2026-06-05 18:54:50,185.185 INFO    ] ================================================
[2026-06-05 18:54:50,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:54:50
[2026-06-05 18:54:51,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:54:51,605.605 INFO    ] Initializing speech engine...
[2026-06-05 18:54:51,612.612 INFO    ] 2026-06-05 18:54:51
[2026-06-05 18:54:51,889.889 INFO    ] 2026-06-05 18:54:51
[2026-06-05 18:54:51,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:54:52,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:54:52,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:54:52,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:54:52,357.357 INFO    ] time= 05/06/2026 18:54:52
[2026-06-05 18:54:52,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:54:52,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:54:52,624.624 INFO    ] No existing commands found in stream
[2026-06-05 18:54:57,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:54:57,647.647 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 18:54:59,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:54:59,881.881 INFO    ] Checking for system updates...
[2026-06-05 18:54:59,921.921 INFO    ] 200
[2026-06-05 18:54:59,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:54:59,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:54:59,986.986 INFO    ] No update needed
[2026-06-05 18:54:59,989.989 INFO    ] Checking for camera pi updates...
[2026-06-05 18:55:00,022.022 INFO    ] 200
[2026-06-05 18:55:00,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:55:00,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:55:00,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:55:00,112.112 INFO    ] No camera update needed
[2026-06-05 18:55:00,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:55:00,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:55:00,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:55:00,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:55:02,173.173 INFO    ] ================================================
[2026-06-05 18:55:02,192.192 INFO    ] Launching Daemon at Fri Jun  5 18:55:02 IST 2026
[2026-06-05 18:55:02,205.205 INFO    ] ================================================
[2026-06-05 18:55:02,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:55:02
[2026-06-05 18:55:03,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:55:03,792.792 INFO    ] Initializing speech engine...
[2026-06-05 18:55:03,816.816 INFO    ] 2026-06-05 18:55:03
[2026-06-05 18:55:04,072.072 INFO    ] 2026-06-05 18:55:04
[2026-06-05 18:55:04,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:55:04,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:55:04,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:55:04,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:55:04,572.572 INFO    ] time= 05/06/2026 18:55:04
[2026-06-05 18:55:04,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:55:04,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:55:04,762.762 INFO    ] No existing commands found in stream
[2026-06-05 18:55:09,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:55:09,794.794 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 18:55:13,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:55:13,658.658 INFO    ] Checking for system updates...
[2026-06-05 18:55:13,694.694 INFO    ] 200
[2026-06-05 18:55:13,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:55:13,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:55:13,757.757 INFO    ] No update needed
[2026-06-05 18:55:13,759.759 INFO    ] Checking for camera pi updates...
[2026-06-05 18:55:13,793.793 INFO    ] 200
[2026-06-05 18:55:13,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:55:13,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:55:13,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:55:13,887.887 INFO    ] No camera update needed
[2026-06-05 18:55:13,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:55:13,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:55:13,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:55:13,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:55:15,944.944 INFO    ] ================================================
[2026-06-05 18:55:15,959.959 INFO    ] Launching Daemon at Fri Jun  5 18:55:15 IST 2026
[2026-06-05 18:55:15,970.970 INFO    ] ================================================
[2026-06-05 18:55:16,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:55:16
[2026-06-05 18:55:17,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:55:17,547.547 INFO    ] Initializing speech engine...
[2026-06-05 18:55:17,554.554 INFO    ] 2026-06-05 18:55:17
[2026-06-05 18:55:17,823.823 INFO    ] 2026-06-05 18:55:17
[2026-06-05 18:55:17,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:55:18,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:55:18,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:55:18,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:55:18,294.294 INFO    ] time= 05/06/2026 18:55:18
[2026-06-05 18:55:18,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:55:18,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:55:18,540.540 INFO    ] No existing commands found in stream
[2026-06-05 18:55:23,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:55:23,554.554 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 18:55:28,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:55:28,064.064 INFO    ] Checking for system updates...
[2026-06-05 18:55:28,100.100 INFO    ] 200
[2026-06-05 18:55:28,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:55:28,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:55:28,163.163 INFO    ] No update needed
[2026-06-05 18:55:28,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 18:55:28,202.202 INFO    ] 200
[2026-06-05 18:55:28,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:55:28,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:55:28,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:55:28,292.292 INFO    ] No camera update needed
[2026-06-05 18:55:28,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:55:28,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:55:28,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:55:28,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:55:30,347.347 INFO    ] ================================================
[2026-06-05 18:55:30,363.363 INFO    ] Launching Daemon at Fri Jun  5 18:55:30 IST 2026
[2026-06-05 18:55:30,374.374 INFO    ] ================================================
[2026-06-05 18:55:30,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:55:30
[2026-06-05 18:55:31,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:55:31,878.878 INFO    ] Initializing speech engine...
[2026-06-05 18:55:31,899.899 INFO    ] 2026-06-05 18:55:31
[2026-06-05 18:55:32,239.239 INFO    ] 2026-06-05 18:55:32
[2026-06-05 18:55:32,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:55:32,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:55:32,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:55:32,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:55:32,775.775 INFO    ] time= 05/06/2026 18:55:32
[2026-06-05 18:55:32,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:55:32,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:55:32,952.952 INFO    ] No existing commands found in stream
[2026-06-05 18:55:37,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:55:37,977.977 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 18:55:42,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:55:42,447.447 INFO    ] Checking for system updates...
[2026-06-05 18:55:42,483.483 INFO    ] 200
[2026-06-05 18:55:42,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:55:42,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:55:42,542.542 INFO    ] No update needed
[2026-06-05 18:55:42,544.544 INFO    ] Checking for camera pi updates...
[2026-06-05 18:55:42,580.580 INFO    ] 200
[2026-06-05 18:55:42,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:55:42,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:55:42,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:55:42,670.670 INFO    ] No camera update needed
[2026-06-05 18:55:42,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:55:42,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:55:42,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:55:42,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:55:44,726.726 INFO    ] ================================================
[2026-06-05 18:55:44,741.741 INFO    ] Launching Daemon at Fri Jun  5 18:55:44 IST 2026
[2026-06-05 18:55:44,752.752 INFO    ] ================================================
[2026-06-05 18:55:45,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:55:45
[2026-06-05 18:55:45,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:55:46,189.189 INFO    ] Initializing speech engine...
[2026-06-05 18:55:46,195.195 INFO    ] 2026-06-05 18:55:46
[2026-06-05 18:55:46,456.456 INFO    ] 2026-06-05 18:55:46
[2026-06-05 18:55:46,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:55:46,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:55:46,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:55:46,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:55:46,929.929 INFO    ] time= 05/06/2026 18:55:46
[2026-06-05 18:55:46,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:55:47,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:55:47,158.158 INFO    ] No existing commands found in stream
[2026-06-05 18:55:52,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:55:52,183.183 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-05 18:55:56,067.067 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:55:56,070.070 INFO    ] Checking for system updates...
[2026-06-05 18:55:56,110.110 INFO    ] 200
[2026-06-05 18:55:56,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:55:56,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:55:56,178.178 INFO    ] No update needed
[2026-06-05 18:55:56,181.181 INFO    ] Checking for camera pi updates...
[2026-06-05 18:55:56,228.228 INFO    ] 200
[2026-06-05 18:55:56,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:55:56,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:55:56,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:55:56,323.323 INFO    ] No camera update needed
[2026-06-05 18:55:56,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:55:56,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:55:56,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:55:56,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:55:58,378.378 INFO    ] ================================================
[2026-06-05 18:55:58,393.393 INFO    ] Launching Daemon at Fri Jun  5 18:55:58 IST 2026
[2026-06-05 18:55:58,404.404 INFO    ] ================================================
[2026-06-05 18:55:59,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:55:59
[2026-06-05 18:55:59,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:56:00,012.012 INFO    ] Initializing speech engine...
[2026-06-05 18:56:00,025.025 INFO    ] 2026-06-05 18:56:00
[2026-06-05 18:56:00,301.301 INFO    ] 2026-06-05 18:56:00
[2026-06-05 18:56:00,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:56:00,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:56:00,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:56:00,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:56:00,787.787 INFO    ] time= 05/06/2026 18:56:00
[2026-06-05 18:56:00,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:56:00,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:56:00,992.992 INFO    ] No existing commands found in stream
[2026-06-05 18:56:06,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:56:06,016.016 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 18:56:09,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:56:09,873.873 INFO    ] Checking for system updates...
[2026-06-05 18:56:09,914.914 INFO    ] 200
[2026-06-05 18:56:09,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:56:09,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:56:09,978.978 INFO    ] No update needed
[2026-06-05 18:56:09,981.981 INFO    ] Checking for camera pi updates...
[2026-06-05 18:56:10,018.018 INFO    ] 200
[2026-06-05 18:56:10,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:56:10,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:56:10,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:56:10,092.092 INFO    ] No camera update needed
[2026-06-05 18:56:10,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:56:10,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:56:10,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:56:10,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:56:12,148.148 INFO    ] ================================================
[2026-06-05 18:56:12,163.163 INFO    ] Launching Daemon at Fri Jun  5 18:56:12 IST 2026
[2026-06-05 18:56:12,175.175 INFO    ] ================================================
[2026-06-05 18:56:12,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:56:12
[2026-06-05 18:56:13,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:56:13,602.602 INFO    ] Initializing speech engine...
[2026-06-05 18:56:13,611.611 INFO    ] 2026-06-05 18:56:13
[2026-06-05 18:56:13,906.906 INFO    ] 2026-06-05 18:56:13
[2026-06-05 18:56:13,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:56:14,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:56:14,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:56:14,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:56:14,326.326 INFO    ] time= 05/06/2026 18:56:14
[2026-06-05 18:56:14,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:56:14,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:56:14,476.476 INFO    ] No existing commands found in stream
[2026-06-05 18:56:19,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:56:19,499.499 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 18:56:23,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:56:23,769.769 INFO    ] Checking for system updates...
[2026-06-05 18:56:23,806.806 INFO    ] 200
[2026-06-05 18:56:23,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:56:23,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:56:23,870.870 INFO    ] No update needed
[2026-06-05 18:56:23,872.872 INFO    ] Checking for camera pi updates...
[2026-06-05 18:56:23,906.906 INFO    ] 200
[2026-06-05 18:56:23,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:56:23,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:56:23,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:56:23,996.996 INFO    ] No camera update needed
[2026-06-05 18:56:23,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:56:24,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:56:24,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:56:24,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:56:26,052.052 INFO    ] ================================================
[2026-06-05 18:56:26,068.068 INFO    ] Launching Daemon at Fri Jun  5 18:56:26 IST 2026
[2026-06-05 18:56:26,079.079 INFO    ] ================================================
[2026-06-05 18:56:26,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:56:26
[2026-06-05 18:56:27,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:56:27,657.657 INFO    ] Initializing speech engine...
[2026-06-05 18:56:27,666.666 INFO    ] 2026-06-05 18:56:27
[2026-06-05 18:56:27,941.941 INFO    ] 2026-06-05 18:56:27
[2026-06-05 18:56:27,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:56:30,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:56:30,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:56:30,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:56:30,442.442 INFO    ] time= 05/06/2026 18:56:30
[2026-06-05 18:56:30,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:56:30,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:56:30,514.514 INFO    ] No existing commands found in stream
[2026-06-05 18:56:35,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:56:35,528.528 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 18:56:36,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:56:36,347.347 INFO    ] Checking for system updates...
[2026-06-05 18:56:36,382.382 INFO    ] 200
[2026-06-05 18:56:36,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:56:36,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:56:36,440.440 INFO    ] No update needed
[2026-06-05 18:56:36,443.443 INFO    ] Checking for camera pi updates...
[2026-06-05 18:56:36,476.476 INFO    ] 200
[2026-06-05 18:56:36,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:56:36,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:56:36,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:56:36,570.570 INFO    ] No camera update needed
[2026-06-05 18:56:36,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:56:36,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:56:36,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:56:36,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:56:38,630.630 INFO    ] ================================================
[2026-06-05 18:56:38,646.646 INFO    ] Launching Daemon at Fri Jun  5 18:56:38 IST 2026
[2026-06-05 18:56:38,657.657 INFO    ] ================================================
[2026-06-05 18:56:39,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:56:39
[2026-06-05 18:56:39,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:56:40,139.139 INFO    ] Initializing speech engine...
[2026-06-05 18:56:40,149.149 INFO    ] 2026-06-05 18:56:40
[2026-06-05 18:56:40,419.419 INFO    ] 2026-06-05 18:56:40
[2026-06-05 18:56:40,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:56:40,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:56:40,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:56:40,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:56:40,800.800 INFO    ] time= 05/06/2026 18:56:40
[2026-06-05 18:56:40,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:56:40,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:56:40,925.925 INFO    ] No existing commands found in stream
[2026-06-05 18:56:45,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:56:45,940.940 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 18:56:49,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:56:49,797.797 INFO    ] Checking for system updates...
[2026-06-05 18:56:49,837.837 INFO    ] 200
[2026-06-05 18:56:49,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:56:49,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:56:49,901.901 INFO    ] No update needed
[2026-06-05 18:56:49,903.903 INFO    ] Checking for camera pi updates...
[2026-06-05 18:56:49,937.937 INFO    ] 200
[2026-06-05 18:56:49,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:56:49,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:56:50,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:56:50,136.136 INFO    ] No camera update needed
[2026-06-05 18:56:50,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:56:50,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:56:50,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:56:50,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:56:52,192.192 INFO    ] ================================================
[2026-06-05 18:56:52,208.208 INFO    ] Launching Daemon at Fri Jun  5 18:56:52 IST 2026
[2026-06-05 18:56:52,219.219 INFO    ] ================================================
[2026-06-05 18:56:52,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:56:52
[2026-06-05 18:56:53,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:56:53,671.671 INFO    ] Initializing speech engine...
[2026-06-05 18:56:53,680.680 INFO    ] 2026-06-05 18:56:53
[2026-06-05 18:56:53,975.975 INFO    ] 2026-06-05 18:56:53
[2026-06-05 18:56:54,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:56:54,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:56:54,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:56:54,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:56:54,336.336 INFO    ] time= 05/06/2026 18:56:54
[2026-06-05 18:56:54,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:56:54,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:56:54,490.490 INFO    ] No existing commands found in stream
[2026-06-05 18:56:59,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:56:59,503.503 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 18:57:03,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:57:03,190.190 INFO    ] Checking for system updates...
[2026-06-05 18:57:03,226.226 INFO    ] 200
[2026-06-05 18:57:03,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:03,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:57:03,285.285 INFO    ] No update needed
[2026-06-05 18:57:03,288.288 INFO    ] Checking for camera pi updates...
[2026-06-05 18:57:03,321.321 INFO    ] 200
[2026-06-05 18:57:03,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:03,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:57:03,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:57:03,408.408 INFO    ] No camera update needed
[2026-06-05 18:57:03,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:57:03,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:57:03,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:57:03,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:57:05,465.465 INFO    ] ================================================
[2026-06-05 18:57:05,480.480 INFO    ] Launching Daemon at Fri Jun  5 18:57:05 IST 2026
[2026-06-05 18:57:05,492.492 INFO    ] ================================================
[2026-06-05 18:57:06,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:57:06
[2026-06-05 18:57:06,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:57:06,951.951 INFO    ] Initializing speech engine...
[2026-06-05 18:57:06,962.962 INFO    ] 2026-06-05 18:57:06
[2026-06-05 18:57:07,250.250 INFO    ] 2026-06-05 18:57:07
[2026-06-05 18:57:07,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:57:07,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:57:07,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:57:07,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:57:07,783.783 INFO    ] time= 05/06/2026 18:57:07
[2026-06-05 18:57:07,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:57:07,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:57:07,967.967 INFO    ] No existing commands found in stream
[2026-06-05 18:57:12,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:57:12,995.995 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 18:57:15,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:57:15,976.976 INFO    ] Checking for system updates...
[2026-06-05 18:57:16,019.019 INFO    ] 200
[2026-06-05 18:57:16,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:16,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:57:16,087.087 INFO    ] No update needed
[2026-06-05 18:57:16,090.090 INFO    ] Checking for camera pi updates...
[2026-06-05 18:57:16,125.125 INFO    ] 200
[2026-06-05 18:57:16,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:16,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:57:16,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:57:16,231.231 INFO    ] No camera update needed
[2026-06-05 18:57:16,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:57:16,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:57:16,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:57:16,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:57:18,296.296 INFO    ] ================================================
[2026-06-05 18:57:18,312.312 INFO    ] Launching Daemon at Fri Jun  5 18:57:18 IST 2026
[2026-06-05 18:57:18,323.323 INFO    ] ================================================
[2026-06-05 18:57:18,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:57:18
[2026-06-05 18:57:19,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:57:19,966.966 INFO    ] Initializing speech engine...
[2026-06-05 18:57:19,973.973 INFO    ] 2026-06-05 18:57:19
[2026-06-05 18:57:20,257.257 INFO    ] 2026-06-05 18:57:20
[2026-06-05 18:57:20,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:57:20,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:57:20,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:57:20,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:57:20,789.789 INFO    ] time= 05/06/2026 18:57:20
[2026-06-05 18:57:20,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:57:20,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:57:21,008.008 INFO    ] No existing commands found in stream
[2026-06-05 18:57:26,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:57:26,042.042 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 18:57:31,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:57:31,579.579 INFO    ] Checking for system updates...
[2026-06-05 18:57:31,625.625 INFO    ] 200
[2026-06-05 18:57:31,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:31,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:57:31,695.695 INFO    ] No update needed
[2026-06-05 18:57:31,698.698 INFO    ] Checking for camera pi updates...
[2026-06-05 18:57:31,738.738 INFO    ] 200
[2026-06-05 18:57:31,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:31,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:57:31,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:57:31,841.841 INFO    ] No camera update needed
[2026-06-05 18:57:31,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:57:31,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:57:31,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:57:31,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:57:33,901.901 INFO    ] ================================================
[2026-06-05 18:57:33,917.917 INFO    ] Launching Daemon at Fri Jun  5 18:57:33 IST 2026
[2026-06-05 18:57:33,928.928 INFO    ] ================================================
[2026-06-05 18:57:34,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:57:34
[2026-06-05 18:57:35,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:57:35,572.572 INFO    ] Initializing speech engine...
[2026-06-05 18:57:35,582.582 INFO    ] 2026-06-05 18:57:35
[2026-06-05 18:57:35,873.873 INFO    ] 2026-06-05 18:57:35
[2026-06-05 18:57:35,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:57:36,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:57:36,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:57:36,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:57:36,333.333 INFO    ] time= 05/06/2026 18:57:36
[2026-06-05 18:57:36,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:57:36,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:57:36,576.576 INFO    ] No existing commands found in stream
[2026-06-05 18:57:41,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:57:41,604.604 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 18:57:44,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:57:44,298.298 INFO    ] Checking for system updates...
[2026-06-05 18:57:44,335.335 INFO    ] 200
[2026-06-05 18:57:44,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:44,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:57:44,401.401 INFO    ] No update needed
[2026-06-05 18:57:44,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 18:57:44,439.439 INFO    ] 200
[2026-06-05 18:57:44,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:44,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:57:44,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:57:44,533.533 INFO    ] No camera update needed
[2026-06-05 18:57:44,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:57:44,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:57:44,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:57:44,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:57:46,591.591 INFO    ] ================================================
[2026-06-05 18:57:46,607.607 INFO    ] Launching Daemon at Fri Jun  5 18:57:46 IST 2026
[2026-06-05 18:57:46,618.618 INFO    ] ================================================
[2026-06-05 18:57:47,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:57:47
[2026-06-05 18:57:47,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:57:48,023.023 INFO    ] Initializing speech engine...
[2026-06-05 18:57:48,036.036 INFO    ] 2026-06-05 18:57:48
[2026-06-05 18:57:48,302.302 INFO    ] 2026-06-05 18:57:48
[2026-06-05 18:57:48,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:57:48,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:57:48,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:57:48,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:57:48,790.790 INFO    ] time= 05/06/2026 18:57:48
[2026-06-05 18:57:48,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:57:48,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:57:49,007.007 INFO    ] No existing commands found in stream
[2026-06-05 18:57:54,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:57:54,040.040 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 18:57:55,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:57:55,509.509 INFO    ] Checking for system updates...
[2026-06-05 18:57:55,547.547 INFO    ] 200
[2026-06-05 18:57:55,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:55,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:57:55,607.607 INFO    ] No update needed
[2026-06-05 18:57:55,609.609 INFO    ] Checking for camera pi updates...
[2026-06-05 18:57:55,644.644 INFO    ] 200
[2026-06-05 18:57:55,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:57:55,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:57:55,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:57:55,735.735 INFO    ] No camera update needed
[2026-06-05 18:57:55,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:57:55,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:57:55,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:57:55,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:57:57,795.795 INFO    ] ================================================
[2026-06-05 18:57:57,810.810 INFO    ] Launching Daemon at Fri Jun  5 18:57:57 IST 2026
[2026-06-05 18:57:57,822.822 INFO    ] ================================================
[2026-06-05 18:57:58,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:57:58
[2026-06-05 18:57:59,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:57:59,285.285 INFO    ] Initializing speech engine...
[2026-06-05 18:57:59,293.293 INFO    ] 2026-06-05 18:57:59
[2026-06-05 18:57:59,553.553 INFO    ] 2026-06-05 18:57:59
[2026-06-05 18:57:59,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:58:01,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:58:01,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:58:01,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:58:01,997.997 INFO    ] time= 05/06/2026 18:58:01
[2026-06-05 18:58:02,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:58:02,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:58:02,144.144 INFO    ] No existing commands found in stream
[2026-06-05 18:58:07,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:58:07,159.159 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 18:58:11,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 18:58:11,098.098 INFO    ] Checking for system updates...
[2026-06-05 18:58:11,134.134 INFO    ] 200
[2026-06-05 18:58:11,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:58:11,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:58:11,193.193 INFO    ] No update needed
[2026-06-05 18:58:11,195.195 INFO    ] Checking for camera pi updates...
[2026-06-05 18:58:11,229.229 INFO    ] 200
[2026-06-05 18:58:11,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:58:11,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:58:11,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:58:11,329.329 INFO    ] No camera update needed
[2026-06-05 18:58:11,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:58:11,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:58:11,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:58:11,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:58:13,385.385 INFO    ] ================================================
[2026-06-05 18:58:13,401.401 INFO    ] Launching Daemon at Fri Jun  5 18:58:13 IST 2026
[2026-06-05 18:58:13,412.412 INFO    ] ================================================
[2026-06-05 18:58:14,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:58:14
[2026-06-05 18:58:14,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:58:15,049.049 INFO    ] Initializing speech engine...
[2026-06-05 18:58:15,059.059 INFO    ] 2026-06-05 18:58:15
[2026-06-05 18:58:15,345.345 INFO    ] 2026-06-05 18:58:15
[2026-06-05 18:58:15,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:58:15,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:58:15,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:58:15,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:58:15,817.817 INFO    ] time= 05/06/2026 18:58:15
[2026-06-05 18:58:15,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:58:15,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:58:16,035.035 INFO    ] No existing commands found in stream
[2026-06-05 18:58:21,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:58:21,052.052 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 18:58:22,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:58:22,653.653 INFO    ] Checking for system updates...
[2026-06-05 18:58:22,689.689 INFO    ] 200
[2026-06-05 18:58:22,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:58:22,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:58:22,751.751 INFO    ] No update needed
[2026-06-05 18:58:22,753.753 INFO    ] Checking for camera pi updates...
[2026-06-05 18:58:22,787.787 INFO    ] 200
[2026-06-05 18:58:22,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:58:22,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:58:22,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:58:22,876.876 INFO    ] No camera update needed
[2026-06-05 18:58:22,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:58:22,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:58:22,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:58:22,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:58:24,931.931 INFO    ] ================================================
[2026-06-05 18:58:24,947.947 INFO    ] Launching Daemon at Fri Jun  5 18:58:24 IST 2026
[2026-06-05 18:58:24,958.958 INFO    ] ================================================
[2026-06-05 18:58:25,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:58:25
[2026-06-05 18:58:26,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:58:26,422.422 INFO    ] Initializing speech engine...
[2026-06-05 18:58:26,442.442 INFO    ] 2026-06-05 18:58:26
[2026-06-05 18:58:26,711.711 INFO    ] 2026-06-05 18:58:26
[2026-06-05 18:58:26,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:58:26,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:58:26,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:58:27,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:58:27,125.125 INFO    ] time= 05/06/2026 18:58:27
[2026-06-05 18:58:27,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:58:27,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:58:27,216.216 INFO    ] No existing commands found in stream
[2026-06-05 18:58:32,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:58:32,234.234 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 18:58:36,160.160 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:58:36,163.163 INFO    ] Checking for system updates...
[2026-06-05 18:58:36,199.199 INFO    ] 200
[2026-06-05 18:58:36,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:58:36,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:58:36,258.258 INFO    ] No update needed
[2026-06-05 18:58:36,260.260 INFO    ] Checking for camera pi updates...
[2026-06-05 18:58:36,294.294 INFO    ] 200
[2026-06-05 18:58:36,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:58:36,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:58:36,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:58:36,391.391 INFO    ] No camera update needed
[2026-06-05 18:58:36,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:58:36,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:58:36,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:58:36,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:58:38,447.447 INFO    ] ================================================
[2026-06-05 18:58:38,463.463 INFO    ] Launching Daemon at Fri Jun  5 18:58:38 IST 2026
[2026-06-05 18:58:38,474.474 INFO    ] ================================================
[2026-06-05 18:58:39,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:58:39
[2026-06-05 18:58:39,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:58:40,071.071 INFO    ] Initializing speech engine...
[2026-06-05 18:58:40,079.079 INFO    ] 2026-06-05 18:58:40
[2026-06-05 18:58:40,350.350 INFO    ] 2026-06-05 18:58:40
[2026-06-05 18:58:40,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:58:40,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:58:40,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:58:40,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:58:40,831.831 INFO    ] time= 05/06/2026 18:58:40
[2026-06-05 18:58:40,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:58:40,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:58:41,052.052 INFO    ] No existing commands found in stream
[2026-06-05 18:58:46,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:58:46,075.075 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 18:58:49,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 18:58:49,486.486 INFO    ] Checking for system updates...
[2026-06-05 18:58:49,531.531 INFO    ] 200
[2026-06-05 18:58:49,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:58:49,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:58:49,591.591 INFO    ] No update needed
[2026-06-05 18:58:49,594.594 INFO    ] Checking for camera pi updates...
[2026-06-05 18:58:49,634.634 INFO    ] 200
[2026-06-05 18:58:49,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:58:49,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:58:49,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:58:49,736.736 INFO    ] No camera update needed
[2026-06-05 18:58:49,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:58:49,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:58:49,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:58:49,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:58:51,797.797 INFO    ] ================================================
[2026-06-05 18:58:51,812.812 INFO    ] Launching Daemon at Fri Jun  5 18:58:51 IST 2026
[2026-06-05 18:58:51,824.824 INFO    ] ================================================
[2026-06-05 18:58:52,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:58:52
[2026-06-05 18:58:53,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:58:53,433.433 INFO    ] Initializing speech engine...
[2026-06-05 18:58:53,445.445 INFO    ] 2026-06-05 18:58:53
[2026-06-05 18:58:53,735.735 INFO    ] 2026-06-05 18:58:53
[2026-06-05 18:58:53,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:58:54,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:58:54,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:58:54,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:58:54,279.279 INFO    ] time= 05/06/2026 18:58:54
[2026-06-05 18:58:54,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:58:54,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:58:54,441.441 INFO    ] No existing commands found in stream
[2026-06-05 18:58:59,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:58:59,464.464 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 18:59:03,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:59:03,451.451 INFO    ] Checking for system updates...
[2026-06-05 18:59:03,487.487 INFO    ] 200
[2026-06-05 18:59:03,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:03,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:59:03,545.545 INFO    ] No update needed
[2026-06-05 18:59:03,547.547 INFO    ] Checking for camera pi updates...
[2026-06-05 18:59:03,581.581 INFO    ] 200
[2026-06-05 18:59:03,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:03,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:59:03,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:59:03,660.660 INFO    ] No camera update needed
[2026-06-05 18:59:03,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:59:03,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:59:03,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:59:03,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:59:05,720.720 INFO    ] ================================================
[2026-06-05 18:59:05,736.736 INFO    ] Launching Daemon at Fri Jun  5 18:59:05 IST 2026
[2026-06-05 18:59:05,747.747 INFO    ] ================================================
[2026-06-05 18:59:06,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:59:06
[2026-06-05 18:59:06,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:59:07,194.194 INFO    ] Initializing speech engine...
[2026-06-05 18:59:07,203.203 INFO    ] 2026-06-05 18:59:07
[2026-06-05 18:59:07,452.452 INFO    ] 2026-06-05 18:59:07
[2026-06-05 18:59:07,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:59:07,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:59:07,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:59:07,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:59:07,946.946 INFO    ] time= 05/06/2026 18:59:07
[2026-06-05 18:59:07,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:59:07,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:59:08,055.055 INFO    ] No existing commands found in stream
[2026-06-05 18:59:13,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:59:13,080.080 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 18:59:14,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 18:59:14,218.218 INFO    ] Checking for system updates...
[2026-06-05 18:59:14,255.255 INFO    ] 200
[2026-06-05 18:59:14,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:14,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:59:14,331.331 INFO    ] No update needed
[2026-06-05 18:59:14,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 18:59:14,374.374 INFO    ] 200
[2026-06-05 18:59:14,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:14,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:59:14,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 18:59:14,462.462 INFO    ] No camera update needed
[2026-06-05 18:59:14,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:59:14,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:59:14,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:59:14,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:59:16,518.518 INFO    ] ================================================
[2026-06-05 18:59:16,534.534 INFO    ] Launching Daemon at Fri Jun  5 18:59:16 IST 2026
[2026-06-05 18:59:16,544.544 INFO    ] ================================================
[2026-06-05 18:59:17,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:59:17
[2026-06-05 18:59:17,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:59:17,986.986 INFO    ] Initializing speech engine...
[2026-06-05 18:59:17,993.993 INFO    ] 2026-06-05 18:59:17
[2026-06-05 18:59:18,294.294 INFO    ] 2026-06-05 18:59:18
[2026-06-05 18:59:18,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:59:18,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:59:18,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:59:18,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:59:18,716.716 INFO    ] time= 05/06/2026 18:59:18
[2026-06-05 18:59:18,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:59:18,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:59:18,863.863 INFO    ] No existing commands found in stream
[2026-06-05 18:59:23,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:59:23,891.891 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 18:59:25,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 18:59:25,428.428 INFO    ] Checking for system updates...
[2026-06-05 18:59:25,465.465 INFO    ] 200
[2026-06-05 18:59:25,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:25,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:59:25,523.523 INFO    ] No update needed
[2026-06-05 18:59:25,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 18:59:25,568.568 INFO    ] 200
[2026-06-05 18:59:25,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:25,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:59:25,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:59:25,663.663 INFO    ] No camera update needed
[2026-06-05 18:59:25,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:59:25,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:59:25,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:59:25,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:59:27,725.725 INFO    ] ================================================
[2026-06-05 18:59:27,741.741 INFO    ] Launching Daemon at Fri Jun  5 18:59:27 IST 2026
[2026-06-05 18:59:27,754.754 INFO    ] ================================================
[2026-06-05 18:59:28,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:59:28
[2026-06-05 18:59:29,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:59:29,401.401 INFO    ] Initializing speech engine...
[2026-06-05 18:59:29,407.407 INFO    ] 2026-06-05 18:59:29
[2026-06-05 18:59:29,685.685 INFO    ] 2026-06-05 18:59:29
[2026-06-05 18:59:29,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:59:29,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:59:29,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:59:30,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:59:30,163.163 INFO    ] time= 05/06/2026 18:59:30
[2026-06-05 18:59:30,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:59:30,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:59:30,403.403 INFO    ] No existing commands found in stream
[2026-06-05 18:59:35,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:59:35,430.430 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 18:59:38,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 18:59:38,304.304 INFO    ] Checking for system updates...
[2026-06-05 18:59:38,342.342 INFO    ] 200
[2026-06-05 18:59:38,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:38,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:59:38,402.402 INFO    ] No update needed
[2026-06-05 18:59:38,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 18:59:38,439.439 INFO    ] 200
[2026-06-05 18:59:38,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:38,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:59:38,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:59:38,521.521 INFO    ] No camera update needed
[2026-06-05 18:59:38,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:59:38,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:59:38,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:59:38,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:59:40,580.580 INFO    ] ================================================
[2026-06-05 18:59:40,596.596 INFO    ] Launching Daemon at Fri Jun  5 18:59:40 IST 2026
[2026-06-05 18:59:40,608.608 INFO    ] ================================================
[2026-06-05 18:59:41,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:59:41
[2026-06-05 18:59:41,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:59:42,078.078 INFO    ] Initializing speech engine...
[2026-06-05 18:59:42,084.084 INFO    ] 2026-06-05 18:59:42
[2026-06-05 18:59:42,333.333 INFO    ] 2026-06-05 18:59:42
[2026-06-05 18:59:42,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:59:42,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:59:42,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:59:42,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:59:42,812.812 INFO    ] time= 05/06/2026 18:59:42
[2026-06-05 18:59:42,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:59:42,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:59:43,039.039 INFO    ] No existing commands found in stream
[2026-06-05 18:59:48,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 18:59:48,061.061 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 18:59:50,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 18:59:50,477.477 INFO    ] Checking for system updates...
[2026-06-05 18:59:50,519.519 INFO    ] 200
[2026-06-05 18:59:50,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:50,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:59:50,577.577 INFO    ] No update needed
[2026-06-05 18:59:50,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 18:59:50,618.618 INFO    ] 200
[2026-06-05 18:59:50,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 18:59:50,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 18:59:50,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 18:59:50,693.693 INFO    ] No camera update needed
[2026-06-05 18:59:50,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-05 18:59:50,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 18:59:50,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 18:59:50,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 18:59:52,752.752 INFO    ] ================================================
[2026-06-05 18:59:52,768.768 INFO    ] Launching Daemon at Fri Jun  5 18:59:52 IST 2026
[2026-06-05 18:59:52,779.779 INFO    ] ================================================
[2026-06-05 18:59:53,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 18:59:53
[2026-06-05 18:59:54,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 18:59:54,427.427 INFO    ] Initializing speech engine...
[2026-06-05 18:59:54,441.441 INFO    ] 2026-06-05 18:59:54
[2026-06-05 18:59:54,721.721 INFO    ] 2026-06-05 18:59:54
[2026-06-05 18:59:54,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 18:59:55,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 18:59:55,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 18:59:55,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 18:59:55,266.266 INFO    ] time= 05/06/2026 18:59:55
[2026-06-05 18:59:55,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 18:59:55,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-05 18:59:55,445.445 INFO    ] No existing commands found in stream
[2026-06-05 19:00:00,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:00:00,479.479 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 19:00:07,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:00:07,556.556 INFO    ] Checking for system updates...
[2026-06-05 19:00:07,596.596 INFO    ] 200
[2026-06-05 19:00:07,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:00:07,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:00:07,656.656 INFO    ] No update needed
[2026-06-05 19:00:07,658.658 INFO    ] Checking for camera pi updates...
[2026-06-05 19:00:07,693.693 INFO    ] 200
[2026-06-05 19:00:07,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:00:07,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:00:07,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:00:07,779.779 INFO    ] No camera update needed
[2026-06-05 19:00:07,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:00:07,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:00:07,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:00:07,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:00:09,835.835 INFO    ] ================================================
[2026-06-05 19:00:09,851.851 INFO    ] Launching Daemon at Fri Jun  5 19:00:09 IST 2026
[2026-06-05 19:00:09,863.863 INFO    ] ================================================
[2026-06-05 19:00:10,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:00:10
[2026-06-05 19:00:11,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:00:11,469.469 INFO    ] Initializing speech engine...
[2026-06-05 19:00:11,476.476 INFO    ] 2026-06-05 19:00:11
[2026-06-05 19:00:11,753.753 INFO    ] 2026-06-05 19:00:11
[2026-06-05 19:00:11,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:00:11,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:00:12,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:00:12,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:00:12,150.150 INFO    ] time= 05/06/2026 19:00:12
[2026-06-05 19:00:12,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:00:12,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:00:12,336.336 INFO    ] No existing commands found in stream
[2026-06-05 19:00:17,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:00:17,371.371 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 19:00:21,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:00:21,329.329 INFO    ] Checking for system updates...
[2026-06-05 19:00:21,367.367 INFO    ] 200
[2026-06-05 19:00:21,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:00:21,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:00:21,425.425 INFO    ] No update needed
[2026-06-05 19:00:21,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 19:00:21,469.469 INFO    ] 200
[2026-06-05 19:00:21,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:00:21,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:00:21,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:00:21,557.557 INFO    ] No camera update needed
[2026-06-05 19:00:21,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:00:21,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:00:21,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:00:21,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:00:23,613.613 INFO    ] ================================================
[2026-06-05 19:00:23,628.628 INFO    ] Launching Daemon at Fri Jun  5 19:00:23 IST 2026
[2026-06-05 19:00:23,639.639 INFO    ] ================================================
[2026-06-05 19:00:24,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:00:24
[2026-06-05 19:00:24,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:00:25,047.047 INFO    ] Initializing speech engine...
[2026-06-05 19:00:25,066.066 INFO    ] 2026-06-05 19:00:25
[2026-06-05 19:00:25,329.329 INFO    ] 2026-06-05 19:00:25
[2026-06-05 19:00:25,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:00:25,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:00:25,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:00:25,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:00:25,709.709 INFO    ] time= 05/06/2026 19:00:25
[2026-06-05 19:00:25,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:00:25,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:00:25,908.908 INFO    ] No existing commands found in stream
[2026-06-05 19:00:30,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:00:30,926.926 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 19:00:34,944.944 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:00:34,947.947 INFO    ] Checking for system updates...
[2026-06-05 19:00:34,983.983 INFO    ] 200
[2026-06-05 19:00:34,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:00:35,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:00:35,043.043 INFO    ] No update needed
[2026-06-05 19:00:35,046.046 INFO    ] Checking for camera pi updates...
[2026-06-05 19:00:35,088.088 INFO    ] 200
[2026-06-05 19:00:35,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:00:35,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:00:35,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:00:35,163.163 INFO    ] No camera update needed
[2026-06-05 19:00:35,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:00:35,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:00:35,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:00:35,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:00:37,219.219 INFO    ] ================================================
[2026-06-05 19:00:37,234.234 INFO    ] Launching Daemon at Fri Jun  5 19:00:37 IST 2026
[2026-06-05 19:00:37,244.244 INFO    ] ================================================
[2026-06-05 19:00:37,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:00:37
[2026-06-05 19:00:38,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:00:38,667.667 INFO    ] Initializing speech engine...
[2026-06-05 19:00:38,679.679 INFO    ] 2026-06-05 19:00:38
[2026-06-05 19:00:38,942.942 INFO    ] 2026-06-05 19:00:38
[2026-06-05 19:00:38,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:00:39,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:00:39,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:00:39,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:00:39,420.420 INFO    ] time= 05/06/2026 19:00:39
[2026-06-05 19:00:39,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:00:39,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:00:39,651.651 INFO    ] No existing commands found in stream
[2026-06-05 19:00:44,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:00:44,670.670 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 19:00:47,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:00:47,359.359 INFO    ] Checking for system updates...
[2026-06-05 19:00:47,401.401 INFO    ] 200
[2026-06-05 19:00:47,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:00:47,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:00:47,467.467 INFO    ] No update needed
[2026-06-05 19:00:47,469.469 INFO    ] Checking for camera pi updates...
[2026-06-05 19:00:47,511.511 INFO    ] 200
[2026-06-05 19:00:47,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:00:47,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:00:47,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:00:47,611.611 INFO    ] No camera update needed
[2026-06-05 19:00:47,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:00:47,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:00:47,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:00:47,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:00:49,666.666 INFO    ] ================================================
[2026-06-05 19:00:49,681.681 INFO    ] Launching Daemon at Fri Jun  5 19:00:49 IST 2026
[2026-06-05 19:00:49,692.692 INFO    ] ================================================
[2026-06-05 19:00:50,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:00:50
[2026-06-05 19:00:50,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:00:51,098.098 INFO    ] Initializing speech engine...
[2026-06-05 19:00:51,103.103 INFO    ] 2026-06-05 19:00:51
[2026-06-05 19:00:51,378.378 INFO    ] 2026-06-05 19:00:51
[2026-06-05 19:00:51,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:00:51,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:00:51,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:00:51,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:00:51,870.870 INFO    ] time= 05/06/2026 19:00:51
[2026-06-05 19:00:51,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:00:51,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:00:52,087.087 INFO    ] No existing commands found in stream
[2026-06-05 19:00:57,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:00:57,118.118 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 19:01:00,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:01:00,496.496 INFO    ] Checking for system updates...
[2026-06-05 19:01:00,532.532 INFO    ] 200
[2026-06-05 19:01:00,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:00,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:01:00,590.590 INFO    ] No update needed
[2026-06-05 19:01:00,593.593 INFO    ] Checking for camera pi updates...
[2026-06-05 19:01:00,631.631 INFO    ] 200
[2026-06-05 19:01:00,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:00,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:01:00,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:01:00,721.721 INFO    ] No camera update needed
[2026-06-05 19:01:00,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:01:00,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:01:00,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:01:00,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:01:02,779.779 INFO    ] ================================================
[2026-06-05 19:01:02,801.801 INFO    ] Launching Daemon at Fri Jun  5 19:01:02 IST 2026
[2026-06-05 19:01:02,817.817 INFO    ] ================================================
[2026-06-05 19:01:03,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:01:03
[2026-06-05 19:01:04,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:01:04,327.327 INFO    ] Initializing speech engine...
[2026-06-05 19:01:04,335.335 INFO    ] 2026-06-05 19:01:04
[2026-06-05 19:01:04,588.588 INFO    ] 2026-06-05 19:01:04
[2026-06-05 19:01:04,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:01:05,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:01:05,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:01:05,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:01:05,712.712 INFO    ] time= 05/06/2026 19:01:05
[2026-06-05 19:01:05,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:01:05,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:01:05,870.870 INFO    ] No existing commands found in stream
[2026-06-05 19:01:10,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:01:10,892.892 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 19:01:11,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:01:11,658.658 INFO    ] Checking for system updates...
[2026-06-05 19:01:11,694.694 INFO    ] 200
[2026-06-05 19:01:11,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:11,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:01:11,760.760 INFO    ] No update needed
[2026-06-05 19:01:11,762.762 INFO    ] Checking for camera pi updates...
[2026-06-05 19:01:11,800.800 INFO    ] 200
[2026-06-05 19:01:11,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:11,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:01:11,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:01:11,973.973 INFO    ] No camera update needed
[2026-06-05 19:01:11,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:01:11,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:01:11,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:01:11,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:01:14,029.029 INFO    ] ================================================
[2026-06-05 19:01:14,045.045 INFO    ] Launching Daemon at Fri Jun  5 19:01:14 IST 2026
[2026-06-05 19:01:14,056.056 INFO    ] ================================================
[2026-06-05 19:01:14,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:01:14
[2026-06-05 19:01:15,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:01:15,536.536 INFO    ] Initializing speech engine...
[2026-06-05 19:01:15,545.545 INFO    ] 2026-06-05 19:01:15
[2026-06-05 19:01:15,845.845 INFO    ] 2026-06-05 19:01:15
[2026-06-05 19:01:15,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:01:16,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:01:16,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:01:16,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:01:16,230.230 INFO    ] time= 05/06/2026 19:01:16
[2026-06-05 19:01:16,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:01:16,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:01:16,356.356 INFO    ] No existing commands found in stream
[2026-06-05 19:01:21,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:01:21,372.372 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 19:01:23,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:01:23,447.447 INFO    ] Checking for system updates...
[2026-06-05 19:01:23,488.488 INFO    ] 200
[2026-06-05 19:01:23,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:23,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:01:23,547.547 INFO    ] No update needed
[2026-06-05 19:01:23,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 19:01:23,583.583 INFO    ] 200
[2026-06-05 19:01:23,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:23,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:01:23,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:01:23,699.699 INFO    ] No camera update needed
[2026-06-05 19:01:23,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:01:23,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:01:23,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:01:23,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:01:25,756.756 INFO    ] ================================================
[2026-06-05 19:01:25,771.771 INFO    ] Launching Daemon at Fri Jun  5 19:01:25 IST 2026
[2026-06-05 19:01:25,781.781 INFO    ] ================================================
[2026-06-05 19:01:26,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:01:26
[2026-06-05 19:01:26,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:01:27,202.202 INFO    ] Initializing speech engine...
[2026-06-05 19:01:27,209.209 INFO    ] 2026-06-05 19:01:27
[2026-06-05 19:01:27,509.509 INFO    ] 2026-06-05 19:01:27
[2026-06-05 19:01:27,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:01:27,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:01:27,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:01:27,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:01:27,897.897 INFO    ] time= 05/06/2026 19:01:27
[2026-06-05 19:01:27,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:01:27,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:01:28,027.027 INFO    ] No existing commands found in stream
[2026-06-05 19:01:33,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:01:33,040.040 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 19:01:35,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:01:35,871.871 INFO    ] Checking for system updates...
[2026-06-05 19:01:35,915.915 INFO    ] 200
[2026-06-05 19:01:35,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:35,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:01:35,974.974 INFO    ] No update needed
[2026-06-05 19:01:35,976.976 INFO    ] Checking for camera pi updates...
[2026-06-05 19:01:36,028.028 INFO    ] 200
[2026-06-05 19:01:36,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:36,091.091 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:01:36,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:01:36,127.127 INFO    ] No camera update needed
[2026-06-05 19:01:36,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:01:36,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:01:36,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:01:36,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:01:38,188.188 INFO    ] ================================================
[2026-06-05 19:01:38,203.203 INFO    ] Launching Daemon at Fri Jun  5 19:01:38 IST 2026
[2026-06-05 19:01:38,213.213 INFO    ] ================================================
[2026-06-05 19:01:38,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:01:38
[2026-06-05 19:01:39,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:01:39,697.697 INFO    ] Initializing speech engine...
[2026-06-05 19:01:39,707.707 INFO    ] 2026-06-05 19:01:39
[2026-06-05 19:01:39,959.959 INFO    ] 2026-06-05 19:01:39
[2026-06-05 19:01:39,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:01:40,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:01:40,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:01:40,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:01:40,440.440 INFO    ] time= 05/06/2026 19:01:40
[2026-06-05 19:01:40,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:01:40,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:01:40,674.674 INFO    ] No existing commands found in stream
[2026-06-05 19:01:45,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:01:45,693.693 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 19:01:48,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:01:48,813.813 INFO    ] Checking for system updates...
[2026-06-05 19:01:48,854.854 INFO    ] 200
[2026-06-05 19:01:48,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:48,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:01:48,920.920 INFO    ] No update needed
[2026-06-05 19:01:48,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 19:01:48,962.962 INFO    ] 200
[2026-06-05 19:01:48,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:01:49,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:01:49,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:01:49,058.058 INFO    ] No camera update needed
[2026-06-05 19:01:49,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:01:49,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:01:49,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:01:49,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:01:51,116.116 INFO    ] ================================================
[2026-06-05 19:01:51,132.132 INFO    ] Launching Daemon at Fri Jun  5 19:01:51 IST 2026
[2026-06-05 19:01:51,143.143 INFO    ] ================================================
[2026-06-05 19:01:51,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:01:51
[2026-06-05 19:01:52,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:01:52,546.546 INFO    ] Initializing speech engine...
[2026-06-05 19:01:52,554.554 INFO    ] 2026-06-05 19:01:52
[2026-06-05 19:01:52,825.825 INFO    ] 2026-06-05 19:01:52
[2026-06-05 19:01:52,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:01:53,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:01:53,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:01:53,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:01:53,297.297 INFO    ] time= 05/06/2026 19:01:53
[2026-06-05 19:01:53,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:01:53,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:01:53,521.521 INFO    ] No existing commands found in stream
[2026-06-05 19:01:58,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:01:58,546.546 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 19:02:02,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:02:02,373.373 INFO    ] Checking for system updates...
[2026-06-05 19:02:02,413.413 INFO    ] 200
[2026-06-05 19:02:02,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:02,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:02,480.480 INFO    ] No update needed
[2026-06-05 19:02:02,483.483 INFO    ] Checking for camera pi updates...
[2026-06-05 19:02:02,524.524 INFO    ] 200
[2026-06-05 19:02:02,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:02,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:02:02,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:02,615.615 INFO    ] No camera update needed
[2026-06-05 19:02:02,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:02:02,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:02:02,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:02:02,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:02:04,680.680 INFO    ] ================================================
[2026-06-05 19:02:04,696.696 INFO    ] Launching Daemon at Fri Jun  5 19:02:04 IST 2026
[2026-06-05 19:02:04,707.707 INFO    ] ================================================
[2026-06-05 19:02:05,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:02:05
[2026-06-05 19:02:05,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:02:06,115.115 INFO    ] Initializing speech engine...
[2026-06-05 19:02:06,136.136 INFO    ] 2026-06-05 19:02:06
[2026-06-05 19:02:06,404.404 INFO    ] 2026-06-05 19:02:06
[2026-06-05 19:02:06,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:02:06,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:02:06,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:02:06,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:02:06,786.786 INFO    ] time= 05/06/2026 19:02:06
[2026-06-05 19:02:06,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:02:06,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:02:06,885.885 INFO    ] No existing commands found in stream
[2026-06-05 19:02:11,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:02:11,903.903 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 19:02:13,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:02:13,620.620 INFO    ] Checking for system updates...
[2026-06-05 19:02:13,660.660 INFO    ] 200
[2026-06-05 19:02:13,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:13,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:13,730.730 INFO    ] No update needed
[2026-06-05 19:02:13,732.732 INFO    ] Checking for camera pi updates...
[2026-06-05 19:02:13,766.766 INFO    ] 200
[2026-06-05 19:02:13,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:13,815.815 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:02:13,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:13,843.843 INFO    ] No camera update needed
[2026-06-05 19:02:13,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:02:13,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:02:13,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:02:13,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:02:15,900.900 INFO    ] ================================================
[2026-06-05 19:02:15,916.916 INFO    ] Launching Daemon at Fri Jun  5 19:02:15 IST 2026
[2026-06-05 19:02:15,927.927 INFO    ] ================================================
[2026-06-05 19:02:16,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:02:16
[2026-06-05 19:02:17,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:02:17,484.484 INFO    ] Initializing speech engine...
[2026-06-05 19:02:17,497.497 INFO    ] 2026-06-05 19:02:17
[2026-06-05 19:02:17,774.774 INFO    ] 2026-06-05 19:02:17
[2026-06-05 19:02:17,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:02:18,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:02:18,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:02:18,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:02:18,240.240 INFO    ] time= 05/06/2026 19:02:18
[2026-06-05 19:02:18,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:02:18,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:02:18,495.495 INFO    ] No existing commands found in stream
[2026-06-05 19:02:23,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:02:23,513.513 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 19:02:24,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:02:24,726.726 INFO    ] Checking for system updates...
[2026-06-05 19:02:24,766.766 INFO    ] 200
[2026-06-05 19:02:24,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:24,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:24,824.824 INFO    ] No update needed
[2026-06-05 19:02:24,827.827 INFO    ] Checking for camera pi updates...
[2026-06-05 19:02:24,865.865 INFO    ] 200
[2026-06-05 19:02:24,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:24,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:02:24,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:24,937.937 INFO    ] No camera update needed
[2026-06-05 19:02:24,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:02:24,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:02:24,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:02:24,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:02:26,994.994 INFO    ] ================================================
[2026-06-05 19:02:27,008.008 INFO    ] Launching Daemon at Fri Jun  5 19:02:27 IST 2026
[2026-06-05 19:02:27,020.020 INFO    ] ================================================
[2026-06-05 19:02:27,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:02:27
[2026-06-05 19:02:28,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:02:28,483.483 INFO    ] Initializing speech engine...
[2026-06-05 19:02:28,490.490 INFO    ] 2026-06-05 19:02:28
[2026-06-05 19:02:28,761.761 INFO    ] 2026-06-05 19:02:28
[2026-06-05 19:02:28,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:02:29,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:02:29,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:02:29,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:02:29,299.299 INFO    ] time= 05/06/2026 19:02:29
[2026-06-05 19:02:29,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:02:29,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:02:29,454.454 INFO    ] No existing commands found in stream
[2026-06-05 19:02:34,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:02:34,470.470 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 19:02:37,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:02:37,467.467 INFO    ] Checking for system updates...
[2026-06-05 19:02:37,503.503 INFO    ] 200
[2026-06-05 19:02:37,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:37,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:37,561.561 INFO    ] No update needed
[2026-06-05 19:02:37,563.563 INFO    ] Checking for camera pi updates...
[2026-06-05 19:02:37,597.597 INFO    ] 200
[2026-06-05 19:02:37,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:37,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:02:37,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:37,693.693 INFO    ] No camera update needed
[2026-06-05 19:02:37,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:02:37,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:02:37,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:02:37,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:02:39,753.753 INFO    ] ================================================
[2026-06-05 19:02:39,769.769 INFO    ] Launching Daemon at Fri Jun  5 19:02:39 IST 2026
[2026-06-05 19:02:39,781.781 INFO    ] ================================================
[2026-06-05 19:02:40,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:02:40
[2026-06-05 19:02:40,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:02:41,190.190 INFO    ] Initializing speech engine...
[2026-06-05 19:02:41,202.202 INFO    ] 2026-06-05 19:02:41
[2026-06-05 19:02:41,472.472 INFO    ] 2026-06-05 19:02:41
[2026-06-05 19:02:41,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:02:41,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:02:41,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:02:42,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:02:42,371.371 INFO    ] time= 05/06/2026 19:02:42
[2026-06-05 19:02:42,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:02:42,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:02:42,568.568 INFO    ] No existing commands found in stream
[2026-06-05 19:02:47,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:02:47,600.600 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 19:02:51,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:02:51,488.488 INFO    ] Checking for system updates...
[2026-06-05 19:02:51,528.528 INFO    ] 200
[2026-06-05 19:02:51,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:51,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:51,586.586 INFO    ] No update needed
[2026-06-05 19:02:51,588.588 INFO    ] Checking for camera pi updates...
[2026-06-05 19:02:51,627.627 INFO    ] 200
[2026-06-05 19:02:51,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:02:51,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:02:51,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:02:51,728.728 INFO    ] No camera update needed
[2026-06-05 19:02:51,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:02:51,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:02:51,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:02:51,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:02:53,784.784 INFO    ] ================================================
[2026-06-05 19:02:53,800.800 INFO    ] Launching Daemon at Fri Jun  5 19:02:53 IST 2026
[2026-06-05 19:02:53,811.811 INFO    ] ================================================
[2026-06-05 19:02:54,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:02:54
[2026-06-05 19:02:54,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:02:55,249.249 INFO    ] Initializing speech engine...
[2026-06-05 19:02:55,259.259 INFO    ] 2026-06-05 19:02:55
[2026-06-05 19:02:55,528.528 INFO    ] 2026-06-05 19:02:55
[2026-06-05 19:02:55,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:02:55,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:02:55,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:02:55,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:02:55,933.933 INFO    ] time= 05/06/2026 19:02:55
[2026-06-05 19:02:55,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:02:55,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:02:56,027.027 INFO    ] No existing commands found in stream
[2026-06-05 19:03:01,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:03:01,046.046 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 19:03:07,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:03:07,837.837 INFO    ] Checking for system updates...
[2026-06-05 19:03:07,881.881 INFO    ] 200
[2026-06-05 19:03:07,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:03:07,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:03:07,954.954 INFO    ] No update needed
[2026-06-05 19:03:07,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 19:03:07,997.997 INFO    ] 200
[2026-06-05 19:03:08,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:03:08,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:03:08,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:03:08,093.093 INFO    ] No camera update needed
[2026-06-05 19:03:08,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:03:08,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:03:08,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:03:08,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:03:10,150.150 INFO    ] ================================================
[2026-06-05 19:03:10,165.165 INFO    ] Launching Daemon at Fri Jun  5 19:03:10 IST 2026
[2026-06-05 19:03:10,176.176 INFO    ] ================================================
[2026-06-05 19:03:10,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:03:10
[2026-06-05 19:03:11,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:03:11,639.639 INFO    ] Initializing speech engine...
[2026-06-05 19:03:11,653.653 INFO    ] 2026-06-05 19:03:11
[2026-06-05 19:03:11,917.917 INFO    ] 2026-06-05 19:03:11
[2026-06-05 19:03:11,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:03:12,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:03:12,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:03:12,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:03:12,285.285 INFO    ] time= 05/06/2026 19:03:12
[2026-06-05 19:03:12,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:03:12,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:03:12,482.482 INFO    ] No existing commands found in stream
[2026-06-05 19:03:17,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:03:17,497.497 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 19:03:19,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:03:19,520.520 INFO    ] Checking for system updates...
[2026-06-05 19:03:19,559.559 INFO    ] 200
[2026-06-05 19:03:19,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:03:19,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:03:19,633.633 INFO    ] No update needed
[2026-06-05 19:03:19,636.636 INFO    ] Checking for camera pi updates...
[2026-06-05 19:03:19,672.672 INFO    ] 200
[2026-06-05 19:03:19,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:03:19,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:03:19,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:03:19,860.860 INFO    ] No camera update needed
[2026-06-05 19:03:19,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:03:19,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:03:19,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:03:19,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:03:21,922.922 INFO    ] ================================================
[2026-06-05 19:03:21,937.937 INFO    ] Launching Daemon at Fri Jun  5 19:03:21 IST 2026
[2026-06-05 19:03:21,948.948 INFO    ] ================================================
[2026-06-05 19:03:22,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:03:22
[2026-06-05 19:03:23,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:03:23,379.379 INFO    ] Initializing speech engine...
[2026-06-05 19:03:23,385.385 INFO    ] 2026-06-05 19:03:23
[2026-06-05 19:03:23,633.633 INFO    ] 2026-06-05 19:03:23
[2026-06-05 19:03:23,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:03:23,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:03:23,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:03:24,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:03:24,018.018 INFO    ] time= 05/06/2026 19:03:24
[2026-06-05 19:03:24,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:03:24,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:03:24,189.189 INFO    ] No existing commands found in stream
[2026-06-05 19:03:29,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:03:29,223.223 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-05 19:03:31,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:03:31,032.032 INFO    ] Checking for system updates...
[2026-06-05 19:03:31,070.070 INFO    ] 200
[2026-06-05 19:03:31,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:03:31,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:03:31,144.144 INFO    ] No update needed
[2026-06-05 19:03:31,147.147 INFO    ] Checking for camera pi updates...
[2026-06-05 19:03:31,188.188 INFO    ] 200
[2026-06-05 19:03:31,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:03:31,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:03:31,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:03:31,302.302 INFO    ] No camera update needed
[2026-06-05 19:03:31,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:03:31,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:03:31,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:03:31,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:03:33,367.367 INFO    ] ================================================
[2026-06-05 19:03:33,382.382 INFO    ] Launching Daemon at Fri Jun  5 19:03:33 IST 2026
[2026-06-05 19:03:33,393.393 INFO    ] ================================================
[2026-06-05 19:03:34,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:03:34
[2026-06-05 19:03:34,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:03:35,079.079 INFO    ] Initializing speech engine...
[2026-06-05 19:03:35,086.086 INFO    ] 2026-06-05 19:03:35
[2026-06-05 19:03:35,380.380 INFO    ] 2026-06-05 19:03:35
[2026-06-05 19:03:35,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:03:38,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:03:38,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:03:38,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:03:38,433.433 INFO    ] time= 05/06/2026 19:03:38
[2026-06-05 19:03:38,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:03:38,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:03:38,487.487 INFO    ] No existing commands found in stream
[2026-06-05 19:03:43,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:03:43,501.501 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 19:03:47,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:03:47,414.414 INFO    ] Checking for system updates...
[2026-06-05 19:03:47,459.459 INFO    ] 200
[2026-06-05 19:03:47,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:03:47,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:03:47,518.518 INFO    ] No update needed
[2026-06-05 19:03:47,521.521 INFO    ] Checking for camera pi updates...
[2026-06-05 19:03:47,559.559 INFO    ] 200
[2026-06-05 19:03:47,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:03:47,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:03:47,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:03:47,650.650 INFO    ] No camera update needed
[2026-06-05 19:03:47,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:03:47,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:03:47,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:03:47,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:03:49,706.706 INFO    ] ================================================
[2026-06-05 19:03:49,722.722 INFO    ] Launching Daemon at Fri Jun  5 19:03:49 IST 2026
[2026-06-05 19:03:49,733.733 INFO    ] ================================================
[2026-06-05 19:03:50,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:03:50
[2026-06-05 19:03:50,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:03:51,239.239 INFO    ] Initializing speech engine...
[2026-06-05 19:03:51,247.247 INFO    ] 2026-06-05 19:03:51
[2026-06-05 19:03:51,507.507 INFO    ] 2026-06-05 19:03:51
[2026-06-05 19:03:51,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:03:51,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:03:51,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:03:51,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:03:51,966.966 INFO    ] time= 05/06/2026 19:03:51
[2026-06-05 19:03:52,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:03:52,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:03:52,203.203 INFO    ] No existing commands found in stream
[2026-06-05 19:03:57,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:03:57,219.219 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 19:04:00,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:04:00,178.178 INFO    ] Checking for system updates...
[2026-06-05 19:04:00,215.215 INFO    ] 200
[2026-06-05 19:04:00,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:00,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:00,277.277 INFO    ] No update needed
[2026-06-05 19:04:00,279.279 INFO    ] Checking for camera pi updates...
[2026-06-05 19:04:00,316.316 INFO    ] 200
[2026-06-05 19:04:00,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:00,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:04:00,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:00,419.419 INFO    ] No camera update needed
[2026-06-05 19:04:00,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:04:00,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:04:00,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:04:00,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:04:02,483.483 INFO    ] ================================================
[2026-06-05 19:04:02,505.505 INFO    ] Launching Daemon at Fri Jun  5 19:04:02 IST 2026
[2026-06-05 19:04:02,522.522 INFO    ] ================================================
[2026-06-05 19:04:03,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:04:03
[2026-06-05 19:04:03,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:04:04,076.076 INFO    ] Initializing speech engine...
[2026-06-05 19:04:04,081.081 INFO    ] 2026-06-05 19:04:04
[2026-06-05 19:04:04,331.331 INFO    ] 2026-06-05 19:04:04
[2026-06-05 19:04:04,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:04:04,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:04:04,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:04:04,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:04:04,828.828 INFO    ] time= 05/06/2026 19:04:04
[2026-06-05 19:04:04,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:04:04,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:04:05,054.054 INFO    ] No existing commands found in stream
[2026-06-05 19:04:10,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:04:10,090.090 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 19:04:10,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:04:10,839.839 INFO    ] Checking for system updates...
[2026-06-05 19:04:10,877.877 INFO    ] 200
[2026-06-05 19:04:10,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:10,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:10,946.946 INFO    ] No update needed
[2026-06-05 19:04:10,949.949 INFO    ] Checking for camera pi updates...
[2026-06-05 19:04:10,991.991 INFO    ] 200
[2026-06-05 19:04:10,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:11,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:04:11,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:11,078.078 INFO    ] No camera update needed
[2026-06-05 19:04:11,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:04:11,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:04:11,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:04:11,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:04:13,136.136 INFO    ] ================================================
[2026-06-05 19:04:13,152.152 INFO    ] Launching Daemon at Fri Jun  5 19:04:13 IST 2026
[2026-06-05 19:04:13,163.163 INFO    ] ================================================
[2026-06-05 19:04:13,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:04:13
[2026-06-05 19:04:14,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:04:14,574.574 INFO    ] Initializing speech engine...
[2026-06-05 19:04:14,580.580 INFO    ] 2026-06-05 19:04:14
[2026-06-05 19:04:14,875.875 INFO    ] 2026-06-05 19:04:14
[2026-06-05 19:04:14,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:04:15,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:04:15,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:04:15,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:04:15,250.250 INFO    ] time= 05/06/2026 19:04:15
[2026-06-05 19:04:15,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:04:15,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:04:15,377.377 INFO    ] No existing commands found in stream
[2026-06-05 19:04:20,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:04:20,411.411 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 19:04:20,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:04:20,811.811 INFO    ] Checking for system updates...
[2026-06-05 19:04:20,850.850 INFO    ] 200
[2026-06-05 19:04:20,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:20,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:04:20,922.922 INFO    ] No update needed
[2026-06-05 19:04:20,924.924 INFO    ] Checking for camera pi updates...
[2026-06-05 19:04:20,970.970 INFO    ] 200
[2026-06-05 19:04:20,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:21,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:04:21,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:04:21,106.106 INFO    ] No camera update needed
[2026-06-05 19:04:21,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:04:21,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:04:21,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:04:21,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:04:23,165.165 INFO    ] ================================================
[2026-06-05 19:04:23,181.181 INFO    ] Launching Daemon at Fri Jun  5 19:04:23 IST 2026
[2026-06-05 19:04:23,191.191 INFO    ] ================================================
[2026-06-05 19:04:23,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:04:23
[2026-06-05 19:04:24,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:04:24,639.639 INFO    ] Initializing speech engine...
[2026-06-05 19:04:24,645.645 INFO    ] 2026-06-05 19:04:24
[2026-06-05 19:04:24,945.945 INFO    ] 2026-06-05 19:04:24
[2026-06-05 19:04:24,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:04:25,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:04:25,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:04:25,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:04:25,332.332 INFO    ] time= 05/06/2026 19:04:25
[2026-06-05 19:04:25,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:04:25,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:04:25,458.458 INFO    ] No existing commands found in stream
[2026-06-05 19:04:30,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:04:30,470.470 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 19:04:31,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:04:31,650.650 INFO    ] Checking for system updates...
[2026-06-05 19:04:31,693.693 INFO    ] 200
[2026-06-05 19:04:31,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:31,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:31,752.752 INFO    ] No update needed
[2026-06-05 19:04:31,754.754 INFO    ] Checking for camera pi updates...
[2026-06-05 19:04:31,788.788 INFO    ] 200
[2026-06-05 19:04:31,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:31,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:04:31,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:31,878.878 INFO    ] No camera update needed
[2026-06-05 19:04:31,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:04:31,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:04:31,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:04:31,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:04:33,935.935 INFO    ] ================================================
[2026-06-05 19:04:33,951.951 INFO    ] Launching Daemon at Fri Jun  5 19:04:33 IST 2026
[2026-06-05 19:04:33,962.962 INFO    ] ================================================
[2026-06-05 19:04:34,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:04:34
[2026-06-05 19:04:35,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:04:35,427.427 INFO    ] Initializing speech engine...
[2026-06-05 19:04:35,437.437 INFO    ] 2026-06-05 19:04:35
[2026-06-05 19:04:35,684.684 INFO    ] 2026-06-05 19:04:35
[2026-06-05 19:04:35,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:04:35,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:04:35,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:04:36,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:04:36,161.161 INFO    ] time= 05/06/2026 19:04:36
[2026-06-05 19:04:36,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:04:36,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:04:36,355.355 INFO    ] No existing commands found in stream
[2026-06-05 19:04:41,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:04:41,389.389 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-05 19:04:42,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:04:42,608.608 INFO    ] Checking for system updates...
[2026-06-05 19:04:42,651.651 INFO    ] 200
[2026-06-05 19:04:42,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:42,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:42,712.712 INFO    ] No update needed
[2026-06-05 19:04:42,715.715 INFO    ] Checking for camera pi updates...
[2026-06-05 19:04:42,756.756 INFO    ] 200
[2026-06-05 19:04:42,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:42,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:04:42,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:42,852.852 INFO    ] No camera update needed
[2026-06-05 19:04:42,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:04:42,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:04:42,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:04:42,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:04:44,917.917 INFO    ] ================================================
[2026-06-05 19:04:44,933.933 INFO    ] Launching Daemon at Fri Jun  5 19:04:44 IST 2026
[2026-06-05 19:04:44,945.945 INFO    ] ================================================
[2026-06-05 19:04:45,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:04:45
[2026-06-05 19:04:46,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:04:46,394.394 INFO    ] Initializing speech engine...
[2026-06-05 19:04:46,403.403 INFO    ] 2026-06-05 19:04:46
[2026-06-05 19:04:46,700.700 INFO    ] 2026-06-05 19:04:46
[2026-06-05 19:04:46,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:04:46,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:04:46,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:04:47,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:04:47,128.128 INFO    ] time= 05/06/2026 19:04:47
[2026-06-05 19:04:47,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:04:47,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:04:47,216.216 INFO    ] No existing commands found in stream
[2026-06-05 19:04:52,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:04:52,235.235 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 19:04:53,435.435 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:04:53,438.438 INFO    ] Checking for system updates...
[2026-06-05 19:04:53,478.478 INFO    ] 200
[2026-06-05 19:04:53,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:53,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:53,543.543 INFO    ] No update needed
[2026-06-05 19:04:53,546.546 INFO    ] Checking for camera pi updates...
[2026-06-05 19:04:53,581.581 INFO    ] 200
[2026-06-05 19:04:53,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:04:53,625.625 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:04:53,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:04:53,673.673 INFO    ] No camera update needed
[2026-06-05 19:04:53,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:04:53,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:04:53,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:04:53,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:04:55,733.733 INFO    ] ================================================
[2026-06-05 19:04:55,748.748 INFO    ] Launching Daemon at Fri Jun  5 19:04:55 IST 2026
[2026-06-05 19:04:55,760.760 INFO    ] ================================================
[2026-06-05 19:04:56,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:04:56
[2026-06-05 19:04:56,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:04:57,165.165 INFO    ] Initializing speech engine...
[2026-06-05 19:04:57,180.180 INFO    ] 2026-06-05 19:04:57
[2026-06-05 19:04:57,447.447 INFO    ] 2026-06-05 19:04:57
[2026-06-05 19:04:57,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:04:57,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:04:57,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:04:57,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:04:57,943.943 INFO    ] time= 05/06/2026 19:04:57
[2026-06-05 19:04:57,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:04:58,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:04:58,159.159 INFO    ] No existing commands found in stream
[2026-06-05 19:05:03,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:05:03,186.186 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 19:05:06,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:05:06,618.618 INFO    ] Checking for system updates...
[2026-06-05 19:05:06,658.658 INFO    ] 200
[2026-06-05 19:05:06,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:06,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:05:06,718.718 INFO    ] No update needed
[2026-06-05 19:05:06,720.720 INFO    ] Checking for camera pi updates...
[2026-06-05 19:05:06,761.761 INFO    ] 200
[2026-06-05 19:05:06,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:06,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:05:06,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:05:06,848.848 INFO    ] No camera update needed
[2026-06-05 19:05:06,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:05:06,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:05:06,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:05:06,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:05:08,905.905 INFO    ] ================================================
[2026-06-05 19:05:08,921.921 INFO    ] Launching Daemon at Fri Jun  5 19:05:08 IST 2026
[2026-06-05 19:05:08,932.932 INFO    ] ================================================
[2026-06-05 19:05:09,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:05:09
[2026-06-05 19:05:10,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:05:10,420.420 INFO    ] Initializing speech engine...
[2026-06-05 19:05:10,434.434 INFO    ] 2026-06-05 19:05:10
[2026-06-05 19:05:10,701.701 INFO    ] 2026-06-05 19:05:10
[2026-06-05 19:05:10,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:05:10,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:05:10,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:05:11,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:05:11,175.175 INFO    ] time= 05/06/2026 19:05:11
[2026-06-05 19:05:11,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:05:11,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:05:11,389.389 INFO    ] No existing commands found in stream
[2026-06-05 19:05:16,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:05:16,407.407 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 19:05:18,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:05:18,689.689 INFO    ] Checking for system updates...
[2026-06-05 19:05:18,725.725 INFO    ] 200
[2026-06-05 19:05:18,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:18,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:05:18,784.784 INFO    ] No update needed
[2026-06-05 19:05:18,787.787 INFO    ] Checking for camera pi updates...
[2026-06-05 19:05:18,825.825 INFO    ] 200
[2026-06-05 19:05:18,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:18,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:05:18,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:05:18,918.918 INFO    ] No camera update needed
[2026-06-05 19:05:18,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:05:18,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:05:18,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:05:18,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:05:20,975.975 INFO    ] ================================================
[2026-06-05 19:05:20,991.991 INFO    ] Launching Daemon at Fri Jun  5 19:05:20 IST 2026
[2026-06-05 19:05:21,003.003 INFO    ] ================================================
[2026-06-05 19:05:21,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:05:21
[2026-06-05 19:05:22,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:05:22,659.659 INFO    ] Initializing speech engine...
[2026-06-05 19:05:22,670.670 INFO    ] 2026-06-05 19:05:22
[2026-06-05 19:05:22,964.964 INFO    ] 2026-06-05 19:05:22
[2026-06-05 19:05:23,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:05:23,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:05:23,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:05:23,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:05:23,520.520 INFO    ] time= 05/06/2026 19:05:23
[2026-06-05 19:05:23,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:05:23,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:05:23,682.682 INFO    ] No existing commands found in stream
[2026-06-05 19:05:28,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:05:28,701.701 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 19:05:32,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:05:32,037.037 INFO    ] Checking for system updates...
[2026-06-05 19:05:32,079.079 INFO    ] 200
[2026-06-05 19:05:32,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:32,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:05:32,149.149 INFO    ] No update needed
[2026-06-05 19:05:32,152.152 INFO    ] Checking for camera pi updates...
[2026-06-05 19:05:32,195.195 INFO    ] 200
[2026-06-05 19:05:32,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:32,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:05:32,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:05:32,392.392 INFO    ] No camera update needed
[2026-06-05 19:05:32,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:05:32,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:05:32,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:05:32,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:05:34,450.450 INFO    ] ================================================
[2026-06-05 19:05:34,467.467 INFO    ] Launching Daemon at Fri Jun  5 19:05:34 IST 2026
[2026-06-05 19:05:34,478.478 INFO    ] ================================================
[2026-06-05 19:05:35,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:05:35
[2026-06-05 19:05:35,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:05:35,952.952 INFO    ] Initializing speech engine...
[2026-06-05 19:05:35,959.959 INFO    ] 2026-06-05 19:05:35
[2026-06-05 19:05:36,279.279 INFO    ] 2026-06-05 19:05:36
[2026-06-05 19:05:36,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:05:36,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:05:36,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:05:36,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:05:36,790.790 INFO    ] time= 05/06/2026 19:05:36
[2026-06-05 19:05:36,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:05:36,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:05:36,946.946 INFO    ] No existing commands found in stream
[2026-06-05 19:05:41,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:05:41,961.961 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 19:05:44,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:05:44,539.539 INFO    ] Checking for system updates...
[2026-06-05 19:05:44,577.577 INFO    ] 200
[2026-06-05 19:05:44,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:44,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:05:44,647.647 INFO    ] No update needed
[2026-06-05 19:05:44,650.650 INFO    ] Checking for camera pi updates...
[2026-06-05 19:05:44,686.686 INFO    ] 200
[2026-06-05 19:05:44,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:44,731.731 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:05:44,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:05:44,787.787 INFO    ] No camera update needed
[2026-06-05 19:05:44,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:05:44,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:05:44,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:05:44,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:05:46,847.847 INFO    ] ================================================
[2026-06-05 19:05:46,863.863 INFO    ] Launching Daemon at Fri Jun  5 19:05:46 IST 2026
[2026-06-05 19:05:46,874.874 INFO    ] ================================================
[2026-06-05 19:05:47,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:05:47
[2026-06-05 19:05:48,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:05:48,534.534 INFO    ] Initializing speech engine...
[2026-06-05 19:05:48,545.545 INFO    ] 2026-06-05 19:05:48
[2026-06-05 19:05:48,834.834 INFO    ] 2026-06-05 19:05:48
[2026-06-05 19:05:48,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:05:49,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:05:49,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:05:49,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:05:49,364.364 INFO    ] time= 05/06/2026 19:05:49
[2026-06-05 19:05:49,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:05:49,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:05:49,495.495 INFO    ] No existing commands found in stream
[2026-06-05 19:05:54,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:05:54,525.525 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 19:05:58,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:05:58,632.632 INFO    ] Checking for system updates...
[2026-06-05 19:05:58,675.675 INFO    ] 200
[2026-06-05 19:05:58,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:58,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:05:58,746.746 INFO    ] No update needed
[2026-06-05 19:05:58,749.749 INFO    ] Checking for camera pi updates...
[2026-06-05 19:05:58,787.787 INFO    ] 200
[2026-06-05 19:05:58,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:05:58,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:05:58,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:05:58,873.873 INFO    ] No camera update needed
[2026-06-05 19:05:58,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:05:58,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:05:58,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:05:58,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:06:00,928.928 INFO    ] ================================================
[2026-06-05 19:06:00,945.945 INFO    ] Launching Daemon at Fri Jun  5 19:06:00 IST 2026
[2026-06-05 19:06:00,956.956 INFO    ] ================================================
[2026-06-05 19:06:01,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:06:01
[2026-06-05 19:06:02,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:06:02,680.680 INFO    ] Initializing speech engine...
[2026-06-05 19:06:02,701.701 INFO    ] 2026-06-05 19:06:02
[2026-06-05 19:06:02,999.999 INFO    ] 2026-06-05 19:06:02
[2026-06-05 19:06:03,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:06:03,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:06:03,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:06:03,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:06:03,583.583 INFO    ] time= 05/06/2026 19:06:03
[2026-06-05 19:06:03,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:06:03,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:06:03,789.789 INFO    ] No existing commands found in stream
[2026-06-05 19:06:08,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:06:08,829.829 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 19:06:11,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:06:11,749.749 INFO    ] Checking for system updates...
[2026-06-05 19:06:11,787.787 INFO    ] 200
[2026-06-05 19:06:11,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:06:11,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:06:11,856.856 INFO    ] No update needed
[2026-06-05 19:06:11,858.858 INFO    ] Checking for camera pi updates...
[2026-06-05 19:06:11,893.893 INFO    ] 200
[2026-06-05 19:06:11,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:06:11,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:06:11,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:06:11,982.982 INFO    ] No camera update needed
[2026-06-05 19:06:11,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:06:11,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:06:11,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:06:11,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:06:14,040.040 INFO    ] ================================================
[2026-06-05 19:06:14,055.055 INFO    ] Launching Daemon at Fri Jun  5 19:06:14 IST 2026
[2026-06-05 19:06:14,068.068 INFO    ] ================================================
[2026-06-05 19:06:14,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:06:14
[2026-06-05 19:06:15,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:06:15,569.569 INFO    ] Initializing speech engine...
[2026-06-05 19:06:15,580.580 INFO    ] 2026-06-05 19:06:15
[2026-06-05 19:06:15,860.860 INFO    ] 2026-06-05 19:06:15
[2026-06-05 19:06:15,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:06:16,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:06:16,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:06:16,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:06:16,276.276 INFO    ] time= 05/06/2026 19:06:16
[2026-06-05 19:06:16,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:06:16,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:06:16,468.468 INFO    ] No existing commands found in stream
[2026-06-05 19:06:21,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:06:21,492.492 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 19:06:24,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:06:24,922.922 INFO    ] Checking for system updates...
[2026-06-05 19:06:24,958.958 INFO    ] 200
[2026-06-05 19:06:24,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:06:25,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:06:25,019.019 INFO    ] No update needed
[2026-06-05 19:06:25,021.021 INFO    ] Checking for camera pi updates...
[2026-06-05 19:06:25,060.060 INFO    ] 200
[2026-06-05 19:06:25,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:06:25,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:06:25,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:06:25,154.154 INFO    ] No camera update needed
[2026-06-05 19:06:25,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:06:25,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:06:25,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:06:25,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:06:27,215.215 INFO    ] ================================================
[2026-06-05 19:06:27,231.231 INFO    ] Launching Daemon at Fri Jun  5 19:06:27 IST 2026
[2026-06-05 19:06:27,243.243 INFO    ] ================================================
[2026-06-05 19:06:27,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:06:27
[2026-06-05 19:06:28,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:06:28,899.899 INFO    ] Initializing speech engine...
[2026-06-05 19:06:28,908.908 INFO    ] 2026-06-05 19:06:28
[2026-06-05 19:06:29,198.198 INFO    ] 2026-06-05 19:06:29
[2026-06-05 19:06:29,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:06:29,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:06:29,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:06:29,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:06:29,671.671 INFO    ] time= 05/06/2026 19:06:29
[2026-06-05 19:06:29,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:06:29,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:06:29,910.910 INFO    ] No existing commands found in stream
[2026-06-05 19:06:34,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:06:34,929.929 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 19:06:41,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:06:41,996.996 INFO    ] Checking for system updates...
[2026-06-05 19:06:42,039.039 INFO    ] 200
[2026-06-05 19:06:42,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:06:42,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:06:42,102.102 INFO    ] No update needed
[2026-06-05 19:06:42,105.105 INFO    ] Checking for camera pi updates...
[2026-06-05 19:06:42,143.143 INFO    ] 200
[2026-06-05 19:06:42,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:06:42,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:06:42,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:06:42,237.237 INFO    ] No camera update needed
[2026-06-05 19:06:42,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:06:42,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:06:42,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:06:42,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:06:44,293.293 INFO    ] ================================================
[2026-06-05 19:06:44,309.309 INFO    ] Launching Daemon at Fri Jun  5 19:06:44 IST 2026
[2026-06-05 19:06:44,320.320 INFO    ] ================================================
[2026-06-05 19:06:44,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:06:44
[2026-06-05 19:06:45,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:06:45,774.774 INFO    ] Initializing speech engine...
[2026-06-05 19:06:45,783.783 INFO    ] 2026-06-05 19:06:45
[2026-06-05 19:06:46,033.033 INFO    ] 2026-06-05 19:06:46
[2026-06-05 19:06:46,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:06:46,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:06:46,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:06:46,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:06:46,495.495 INFO    ] time= 05/06/2026 19:06:46
[2026-06-05 19:06:46,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:06:46,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:06:46,746.746 INFO    ] No existing commands found in stream
[2026-06-05 19:06:51,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:06:52,390.390 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 19:06:54,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:06:54,744.744 INFO    ] Checking for system updates...
[2026-06-05 19:06:54,780.780 INFO    ] 200
[2026-06-05 19:06:54,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:06:54,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:06:54,839.839 INFO    ] No update needed
[2026-06-05 19:06:54,841.841 INFO    ] Checking for camera pi updates...
[2026-06-05 19:06:54,880.880 INFO    ] 200
[2026-06-05 19:06:54,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:06:54,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:06:54,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:06:54,992.992 INFO    ] No camera update needed
[2026-06-05 19:06:54,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:06:54,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:06:55,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:06:55,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:06:57,051.051 INFO    ] ================================================
[2026-06-05 19:06:57,123.123 INFO    ] Launching Daemon at Fri Jun  5 19:06:57 IST 2026
[2026-06-05 19:06:57,134.134 INFO    ] ================================================
[2026-06-05 19:06:57,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:06:57
[2026-06-05 19:06:58,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:06:58,746.746 INFO    ] Initializing speech engine...
[2026-06-05 19:06:58,756.756 INFO    ] 2026-06-05 19:06:58
[2026-06-05 19:06:59,067.067 INFO    ] 2026-06-05 19:06:59
[2026-06-05 19:06:59,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:06:59,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:06:59,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:06:59,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:06:59,575.575 INFO    ] time= 05/06/2026 19:06:59
[2026-06-05 19:06:59,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:06:59,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:06:59,734.734 INFO    ] No existing commands found in stream
[2026-06-05 19:07:04,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:07:04,769.769 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 19:07:08,180.180 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:07:08,183.183 INFO    ] Checking for system updates...
[2026-06-05 19:07:08,224.224 INFO    ] 200
[2026-06-05 19:07:08,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:08,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:07:08,294.294 INFO    ] No update needed
[2026-06-05 19:07:08,297.297 INFO    ] Checking for camera pi updates...
[2026-06-05 19:07:08,336.336 INFO    ] 200
[2026-06-05 19:07:08,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:08,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:07:08,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:07:08,419.419 INFO    ] No camera update needed
[2026-06-05 19:07:08,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:07:08,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:07:08,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:07:08,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:07:10,474.474 INFO    ] ================================================
[2026-06-05 19:07:10,490.490 INFO    ] Launching Daemon at Fri Jun  5 19:07:10 IST 2026
[2026-06-05 19:07:10,500.500 INFO    ] ================================================
[2026-06-05 19:07:11,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:07:11
[2026-06-05 19:07:11,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:07:11,898.898 INFO    ] Initializing speech engine...
[2026-06-05 19:07:11,906.906 INFO    ] 2026-06-05 19:07:11
[2026-06-05 19:07:12,193.193 INFO    ] 2026-06-05 19:07:12
[2026-06-05 19:07:12,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:07:12,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:07:12,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:07:12,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:07:12,986.986 INFO    ] time= 05/06/2026 19:07:12
[2026-06-05 19:07:13,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:07:13,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:07:13,199.199 INFO    ] No existing commands found in stream
[2026-06-05 19:07:18,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:07:18,233.233 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 19:07:19,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:07:19,820.820 INFO    ] Checking for system updates...
[2026-06-05 19:07:19,856.856 INFO    ] 200
[2026-06-05 19:07:19,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:19,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:07:19,914.914 INFO    ] No update needed
[2026-06-05 19:07:19,917.917 INFO    ] Checking for camera pi updates...
[2026-06-05 19:07:19,951.951 INFO    ] 200
[2026-06-05 19:07:19,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:19,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:07:20,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:07:20,041.041 INFO    ] No camera update needed
[2026-06-05 19:07:20,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:07:20,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:07:20,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:07:20,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:07:22,097.097 INFO    ] ================================================
[2026-06-05 19:07:22,112.112 INFO    ] Launching Daemon at Fri Jun  5 19:07:22 IST 2026
[2026-06-05 19:07:22,123.123 INFO    ] ================================================
[2026-06-05 19:07:22,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:07:22
[2026-06-05 19:07:23,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:07:23,536.536 INFO    ] Initializing speech engine...
[2026-06-05 19:07:23,553.553 INFO    ] 2026-06-05 19:07:23
[2026-06-05 19:07:23,834.834 INFO    ] 2026-06-05 19:07:23
[2026-06-05 19:07:23,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:07:24,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:07:24,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:07:24,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:07:24,255.255 INFO    ] time= 05/06/2026 19:07:24
[2026-06-05 19:07:24,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:07:24,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:07:24,438.438 INFO    ] No existing commands found in stream
[2026-06-05 19:07:29,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:07:29,471.471 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 19:07:33,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:07:33,559.559 INFO    ] Checking for system updates...
[2026-06-05 19:07:33,599.599 INFO    ] 200
[2026-06-05 19:07:33,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:33,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:07:33,662.662 INFO    ] No update needed
[2026-06-05 19:07:33,664.664 INFO    ] Checking for camera pi updates...
[2026-06-05 19:07:33,702.702 INFO    ] 200
[2026-06-05 19:07:33,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:33,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:07:33,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:07:33,795.795 INFO    ] No camera update needed
[2026-06-05 19:07:33,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:07:33,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:07:33,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:07:33,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:07:35,852.852 INFO    ] ================================================
[2026-06-05 19:07:35,867.867 INFO    ] Launching Daemon at Fri Jun  5 19:07:35 IST 2026
[2026-06-05 19:07:35,878.878 INFO    ] ================================================
[2026-06-05 19:07:36,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:07:36
[2026-06-05 19:07:37,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:07:37,298.298 INFO    ] Initializing speech engine...
[2026-06-05 19:07:37,310.310 INFO    ] 2026-06-05 19:07:37
[2026-06-05 19:07:37,578.578 INFO    ] 2026-06-05 19:07:37
[2026-06-05 19:07:37,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:07:37,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:07:37,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:07:38,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:07:38,150.150 INFO    ] time= 05/06/2026 19:07:38
[2026-06-05 19:07:38,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:07:38,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:07:38,305.305 INFO    ] No existing commands found in stream
[2026-06-05 19:07:43,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:07:43,323.323 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 19:07:47,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:07:47,014.014 INFO    ] Checking for system updates...
[2026-06-05 19:07:47,053.053 INFO    ] 200
[2026-06-05 19:07:47,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:47,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:07:47,112.112 INFO    ] No update needed
[2026-06-05 19:07:47,115.115 INFO    ] Checking for camera pi updates...
[2026-06-05 19:07:47,150.150 INFO    ] 200
[2026-06-05 19:07:47,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:47,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:07:47,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:07:47,362.362 INFO    ] No camera update needed
[2026-06-05 19:07:47,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:07:47,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:07:47,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:07:47,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:07:49,418.418 INFO    ] ================================================
[2026-06-05 19:07:49,433.433 INFO    ] Launching Daemon at Fri Jun  5 19:07:49 IST 2026
[2026-06-05 19:07:49,444.444 INFO    ] ================================================
[2026-06-05 19:07:50,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:07:50
[2026-06-05 19:07:50,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:07:50,906.906 INFO    ] Initializing speech engine...
[2026-06-05 19:07:50,915.915 INFO    ] 2026-06-05 19:07:50
[2026-06-05 19:07:51,164.164 INFO    ] 2026-06-05 19:07:51
[2026-06-05 19:07:51,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:07:51,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:07:51,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:07:51,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:07:51,636.636 INFO    ] time= 05/06/2026 19:07:51
[2026-06-05 19:07:51,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:07:51,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:07:51,877.877 INFO    ] No existing commands found in stream
[2026-06-05 19:07:56,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:07:56,895.895 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 19:07:57,733.733 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:07:57,736.736 INFO    ] Checking for system updates...
[2026-06-05 19:07:57,775.775 INFO    ] 200
[2026-06-05 19:07:57,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:57,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:07:57,839.839 INFO    ] No update needed
[2026-06-05 19:07:57,841.841 INFO    ] Checking for camera pi updates...
[2026-06-05 19:07:57,876.876 INFO    ] 200
[2026-06-05 19:07:57,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:07:57,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:07:57,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:07:57,953.953 INFO    ] No camera update needed
[2026-06-05 19:07:57,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:07:57,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:07:57,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:07:57,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:08:00,011.011 INFO    ] ================================================
[2026-06-05 19:08:00,026.026 INFO    ] Launching Daemon at Fri Jun  5 19:08:00 IST 2026
[2026-06-05 19:08:00,037.037 INFO    ] ================================================
[2026-06-05 19:08:00,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:08:00
[2026-06-05 19:08:01,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:08:01,524.524 INFO    ] Initializing speech engine...
[2026-06-05 19:08:01,627.627 INFO    ] 2026-06-05 19:08:01
[2026-06-05 19:08:02,063.063 INFO    ] 2026-06-05 19:08:02
[2026-06-05 19:08:02,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:08:02,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:08:02,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:08:02,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:08:02,752.752 INFO    ] time= 05/06/2026 19:08:02
[2026-06-05 19:08:02,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:08:02,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:08:02,819.819 INFO    ] No existing commands found in stream
[2026-06-05 19:08:07,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:08:07,832.832 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 19:08:14,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:08:14,858.858 INFO    ] Checking for system updates...
[2026-06-05 19:08:14,900.900 INFO    ] 200
[2026-06-05 19:08:14,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:08:14,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:08:14,962.962 INFO    ] No update needed
[2026-06-05 19:08:14,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 19:08:15,010.010 INFO    ] 200
[2026-06-05 19:08:15,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:08:15,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:08:15,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:08:15,120.120 INFO    ] No camera update needed
[2026-06-05 19:08:15,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:08:15,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:08:15,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:08:15,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:08:17,175.175 INFO    ] ================================================
[2026-06-05 19:08:17,190.190 INFO    ] Launching Daemon at Fri Jun  5 19:08:17 IST 2026
[2026-06-05 19:08:17,201.201 INFO    ] ================================================
[2026-06-05 19:08:17,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:08:17
[2026-06-05 19:08:18,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:08:18,608.608 INFO    ] Initializing speech engine...
[2026-06-05 19:08:18,621.621 INFO    ] 2026-06-05 19:08:18
[2026-06-05 19:08:18,889.889 INFO    ] 2026-06-05 19:08:18
[2026-06-05 19:08:18,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:08:19,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:08:19,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:08:19,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:08:19,246.246 INFO    ] time= 05/06/2026 19:08:19
[2026-06-05 19:08:19,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:08:19,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:08:19,345.345 INFO    ] No existing commands found in stream
[2026-06-05 19:08:24,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:08:24,363.363 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 19:08:25,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:08:25,987.987 INFO    ] Checking for system updates...
[2026-06-05 19:08:26,028.028 INFO    ] 200
[2026-06-05 19:08:26,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:08:26,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:08:26,092.092 INFO    ] No update needed
[2026-06-05 19:08:26,094.094 INFO    ] Checking for camera pi updates...
[2026-06-05 19:08:26,132.132 INFO    ] 200
[2026-06-05 19:08:26,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:08:26,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:08:26,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:08:26,228.228 INFO    ] No camera update needed
[2026-06-05 19:08:26,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:08:26,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:08:26,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:08:26,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:08:28,284.284 INFO    ] ================================================
[2026-06-05 19:08:28,299.299 INFO    ] Launching Daemon at Fri Jun  5 19:08:28 IST 2026
[2026-06-05 19:08:28,310.310 INFO    ] ================================================
[2026-06-05 19:08:28,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:08:28
[2026-06-05 19:08:29,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:08:29,752.752 INFO    ] Initializing speech engine...
[2026-06-05 19:08:29,759.759 INFO    ] 2026-06-05 19:08:29
[2026-06-05 19:08:30,057.057 INFO    ] 2026-06-05 19:08:30
[2026-06-05 19:08:30,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:08:30,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:08:30,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:08:30,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:08:30,476.476 INFO    ] time= 05/06/2026 19:08:30
[2026-06-05 19:08:30,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:08:30,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:08:30,562.562 INFO    ] No existing commands found in stream
[2026-06-05 19:08:35,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:08:35,576.576 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 19:08:38,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:08:38,145.145 INFO    ] Checking for system updates...
[2026-06-05 19:08:38,185.185 INFO    ] 200
[2026-06-05 19:08:38,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:08:38,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:08:38,247.247 INFO    ] No update needed
[2026-06-05 19:08:38,249.249 INFO    ] Checking for camera pi updates...
[2026-06-05 19:08:38,286.286 INFO    ] 200
[2026-06-05 19:08:38,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:08:38,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:08:38,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:08:38,379.379 INFO    ] No camera update needed
[2026-06-05 19:08:38,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:08:38,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:08:38,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:08:38,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:08:40,434.434 INFO    ] ================================================
[2026-06-05 19:08:40,449.449 INFO    ] Launching Daemon at Fri Jun  5 19:08:40 IST 2026
[2026-06-05 19:08:40,460.460 INFO    ] ================================================
[2026-06-05 19:08:41,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:08:41
[2026-06-05 19:08:41,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:08:42,070.070 INFO    ] Initializing speech engine...
[2026-06-05 19:08:42,079.079 INFO    ] 2026-06-05 19:08:42
[2026-06-05 19:08:42,349.349 INFO    ] 2026-06-05 19:08:42
[2026-06-05 19:08:42,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:08:45,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:08:45,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:08:45,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:08:45,779.779 INFO    ] time= 05/06/2026 19:08:45
[2026-06-05 19:08:45,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:08:45,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:08:45,841.841 INFO    ] No existing commands found in stream
[2026-06-05 19:08:50,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:08:50,854.854 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 19:08:53,326.326 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:08:53,329.329 INFO    ] Checking for system updates...
[2026-06-05 19:08:53,366.366 INFO    ] 200
[2026-06-05 19:08:53,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:08:53,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:08:53,424.424 INFO    ] No update needed
[2026-06-05 19:08:53,427.427 INFO    ] Checking for camera pi updates...
[2026-06-05 19:08:53,463.463 INFO    ] 200
[2026-06-05 19:08:53,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:08:53,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:08:53,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:08:53,566.566 INFO    ] No camera update needed
[2026-06-05 19:08:53,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:08:53,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:08:53,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:08:53,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:08:55,627.627 INFO    ] ================================================
[2026-06-05 19:08:55,643.643 INFO    ] Launching Daemon at Fri Jun  5 19:08:55 IST 2026
[2026-06-05 19:08:55,653.653 INFO    ] ================================================
[2026-06-05 19:08:56,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:08:56
[2026-06-05 19:08:56,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:08:57,125.125 INFO    ] Initializing speech engine...
[2026-06-05 19:08:57,134.134 INFO    ] 2026-06-05 19:08:57
[2026-06-05 19:08:57,459.459 INFO    ] 2026-06-05 19:08:57
[2026-06-05 19:08:57,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:08:57,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:08:57,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:08:57,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:08:57,939.939 INFO    ] time= 05/06/2026 19:08:57
[2026-06-05 19:08:57,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:08:58,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:08:58,132.132 INFO    ] No existing commands found in stream
[2026-06-05 19:09:03,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:09:03,162.162 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 19:09:06,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:09:06,131.131 INFO    ] Checking for system updates...
[2026-06-05 19:09:06,176.176 INFO    ] 200
[2026-06-05 19:09:06,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:06,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:09:06,241.241 INFO    ] No update needed
[2026-06-05 19:09:06,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 19:09:06,287.287 INFO    ] 200
[2026-06-05 19:09:06,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:06,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:09:06,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:09:06,369.369 INFO    ] No camera update needed
[2026-06-05 19:09:06,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:09:06,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:09:06,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:09:06,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:09:08,424.424 INFO    ] ================================================
[2026-06-05 19:09:08,439.439 INFO    ] Launching Daemon at Fri Jun  5 19:09:08 IST 2026
[2026-06-05 19:09:08,450.450 INFO    ] ================================================
[2026-06-05 19:09:09,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:09:09
[2026-06-05 19:09:09,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:09:09,936.936 INFO    ] Initializing speech engine...
[2026-06-05 19:09:09,952.952 INFO    ] 2026-06-05 19:09:09
[2026-06-05 19:09:10,239.239 INFO    ] 2026-06-05 19:09:10
[2026-06-05 19:09:10,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:09:10,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:09:10,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:09:10,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:09:10,652.652 INFO    ] time= 05/06/2026 19:09:10
[2026-06-05 19:09:10,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:09:10,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:09:10,736.736 INFO    ] No existing commands found in stream
[2026-06-05 19:09:15,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:09:15,751.751 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 19:09:18,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:09:18,846.846 INFO    ] Checking for system updates...
[2026-06-05 19:09:18,882.882 INFO    ] 200
[2026-06-05 19:09:18,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:18,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:09:18,942.942 INFO    ] No update needed
[2026-06-05 19:09:18,944.944 INFO    ] Checking for camera pi updates...
[2026-06-05 19:09:18,980.980 INFO    ] 200
[2026-06-05 19:09:18,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:19,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:09:19,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:09:19,056.056 INFO    ] No camera update needed
[2026-06-05 19:09:19,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:09:19,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:09:19,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:09:19,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:09:21,114.114 INFO    ] ================================================
[2026-06-05 19:09:21,129.129 INFO    ] Launching Daemon at Fri Jun  5 19:09:21 IST 2026
[2026-06-05 19:09:21,140.140 INFO    ] ================================================
[2026-06-05 19:09:21,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:09:21
[2026-06-05 19:09:22,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:09:22,590.590 INFO    ] Initializing speech engine...
[2026-06-05 19:09:22,604.604 INFO    ] 2026-06-05 19:09:22
[2026-06-05 19:09:22,889.889 INFO    ] 2026-06-05 19:09:22
[2026-06-05 19:09:22,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:09:23,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:09:23,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:09:23,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:09:23,305.305 INFO    ] time= 05/06/2026 19:09:23
[2026-06-05 19:09:23,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:09:23,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:09:23,388.388 INFO    ] No existing commands found in stream
[2026-06-05 19:09:28,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:09:28,403.403 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 19:09:28,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:09:28,966.966 INFO    ] Checking for system updates...
[2026-06-05 19:09:29,002.002 INFO    ] 200
[2026-06-05 19:09:29,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:29,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:09:29,066.066 INFO    ] No update needed
[2026-06-05 19:09:29,069.069 INFO    ] Checking for camera pi updates...
[2026-06-05 19:09:29,103.103 INFO    ] 200
[2026-06-05 19:09:29,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:29,155.155 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:09:29,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:09:29,197.197 INFO    ] No camera update needed
[2026-06-05 19:09:29,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:09:29,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:09:29,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:09:29,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:09:31,254.254 INFO    ] ================================================
[2026-06-05 19:09:31,270.270 INFO    ] Launching Daemon at Fri Jun  5 19:09:31 IST 2026
[2026-06-05 19:09:31,282.282 INFO    ] ================================================
[2026-06-05 19:09:31,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:09:31
[2026-06-05 19:09:32,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:09:32,889.889 INFO    ] Initializing speech engine...
[2026-06-05 19:09:32,895.895 INFO    ] 2026-06-05 19:09:32
[2026-06-05 19:09:33,188.188 INFO    ] 2026-06-05 19:09:33
[2026-06-05 19:09:33,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:09:33,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:09:33,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:09:33,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:09:33,732.732 INFO    ] time= 05/06/2026 19:09:33
[2026-06-05 19:09:33,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:09:33,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:09:33,874.874 INFO    ] No existing commands found in stream
[2026-06-05 19:09:38,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:09:38,902.902 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 19:09:39,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:09:39,966.966 INFO    ] Checking for system updates...
[2026-06-05 19:09:40,004.004 INFO    ] 200
[2026-06-05 19:09:40,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:40,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:09:40,069.069 INFO    ] No update needed
[2026-06-05 19:09:40,072.072 INFO    ] Checking for camera pi updates...
[2026-06-05 19:09:40,110.110 INFO    ] 200
[2026-06-05 19:09:40,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:40,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:09:40,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:09:40,212.212 INFO    ] No camera update needed
[2026-06-05 19:09:40,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:09:40,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:09:40,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:09:40,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:09:42,279.279 INFO    ] ================================================
[2026-06-05 19:09:42,296.296 INFO    ] Launching Daemon at Fri Jun  5 19:09:42 IST 2026
[2026-06-05 19:09:42,307.307 INFO    ] ================================================
[2026-06-05 19:09:42,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:09:42
[2026-06-05 19:09:43,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:09:43,753.753 INFO    ] Initializing speech engine...
[2026-06-05 19:09:43,761.761 INFO    ] 2026-06-05 19:09:43
[2026-06-05 19:09:44,053.053 INFO    ] 2026-06-05 19:09:44
[2026-06-05 19:09:44,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:09:46,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:09:46,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:09:46,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:09:46,692.692 INFO    ] time= 05/06/2026 19:09:46
[2026-06-05 19:09:46,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:09:46,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:09:46,802.802 INFO    ] No existing commands found in stream
[2026-06-05 19:09:51,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:09:51,830.830 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 19:09:52,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:09:52,687.687 INFO    ] Checking for system updates...
[2026-06-05 19:09:52,729.729 INFO    ] 200
[2026-06-05 19:09:52,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:52,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:09:52,791.791 INFO    ] No update needed
[2026-06-05 19:09:52,794.794 INFO    ] Checking for camera pi updates...
[2026-06-05 19:09:52,834.834 INFO    ] 200
[2026-06-05 19:09:52,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:09:52,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:09:53,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:09:53,043.043 INFO    ] No camera update needed
[2026-06-05 19:09:53,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:09:53,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:09:53,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:09:53,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:09:55,108.108 INFO    ] ================================================
[2026-06-05 19:09:55,123.123 INFO    ] Launching Daemon at Fri Jun  5 19:09:55 IST 2026
[2026-06-05 19:09:55,134.134 INFO    ] ================================================
[2026-06-05 19:09:55,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:09:55
[2026-06-05 19:09:56,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:09:56,736.736 INFO    ] Initializing speech engine...
[2026-06-05 19:09:56,750.750 INFO    ] 2026-06-05 19:09:56
[2026-06-05 19:09:57,029.029 INFO    ] 2026-06-05 19:09:57
[2026-06-05 19:09:57,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:09:57,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:09:57,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:09:57,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:09:57,577.577 INFO    ] time= 05/06/2026 19:09:57
[2026-06-05 19:09:57,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:09:57,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:09:57,750.750 INFO    ] No existing commands found in stream
[2026-06-05 19:10:02,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:10:02,782.782 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 19:10:08,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:10:08,205.205 INFO    ] Checking for system updates...
[2026-06-05 19:10:08,247.247 INFO    ] 200
[2026-06-05 19:10:08,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:08,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:10:08,339.339 INFO    ] No update needed
[2026-06-05 19:10:08,342.342 INFO    ] Checking for camera pi updates...
[2026-06-05 19:10:08,378.378 INFO    ] 200
[2026-06-05 19:10:08,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:08,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:10:08,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:10:08,472.472 INFO    ] No camera update needed
[2026-06-05 19:10:08,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:10:08,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:10:08,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:10:08,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:10:10,531.531 INFO    ] ================================================
[2026-06-05 19:10:10,546.546 INFO    ] Launching Daemon at Fri Jun  5 19:10:10 IST 2026
[2026-06-05 19:10:10,557.557 INFO    ] ================================================
[2026-06-05 19:10:11,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:10:11
[2026-06-05 19:10:11,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:10:11,978.978 INFO    ] Initializing speech engine...
[2026-06-05 19:10:11,986.986 INFO    ] 2026-06-05 19:10:11
[2026-06-05 19:10:12,284.284 INFO    ] 2026-06-05 19:10:12
[2026-06-05 19:10:12,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:10:12,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:10:12,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:10:12,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:10:12,641.641 INFO    ] time= 05/06/2026 19:10:12
[2026-06-05 19:10:12,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:10:12,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:10:12,722.722 INFO    ] No existing commands found in stream
[2026-06-05 19:10:17,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:10:17,732.732 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 19:10:20,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:10:20,801.801 INFO    ] Checking for system updates...
[2026-06-05 19:10:20,837.837 INFO    ] 200
[2026-06-05 19:10:20,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:20,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:10:20,900.900 INFO    ] No update needed
[2026-06-05 19:10:20,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 19:10:20,936.936 INFO    ] 200
[2026-06-05 19:10:20,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:20,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:10:21,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:10:21,024.024 INFO    ] No camera update needed
[2026-06-05 19:10:21,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:10:21,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:10:21,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:10:21,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:10:23,079.079 INFO    ] ================================================
[2026-06-05 19:10:23,095.095 INFO    ] Launching Daemon at Fri Jun  5 19:10:23 IST 2026
[2026-06-05 19:10:23,106.106 INFO    ] ================================================
[2026-06-05 19:10:23,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:10:23
[2026-06-05 19:10:24,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:10:24,531.531 INFO    ] Initializing speech engine...
[2026-06-05 19:10:24,543.543 INFO    ] 2026-06-05 19:10:24
[2026-06-05 19:10:24,811.811 INFO    ] 2026-06-05 19:10:24
[2026-06-05 19:10:24,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:10:25,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:10:25,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:10:25,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:10:25,280.280 INFO    ] time= 05/06/2026 19:10:25
[2026-06-05 19:10:25,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:10:25,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:10:25,522.522 INFO    ] No existing commands found in stream
[2026-06-05 19:10:30,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:10:30,542.542 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 19:10:35,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:10:35,231.231 INFO    ] Checking for system updates...
[2026-06-05 19:10:35,267.267 INFO    ] 200
[2026-06-05 19:10:35,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:35,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:10:35,327.327 INFO    ] No update needed
[2026-06-05 19:10:35,329.329 INFO    ] Checking for camera pi updates...
[2026-06-05 19:10:35,363.363 INFO    ] 200
[2026-06-05 19:10:35,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:35,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:10:35,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:10:35,443.443 INFO    ] No camera update needed
[2026-06-05 19:10:35,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:10:35,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:10:35,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:10:35,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:10:37,499.499 INFO    ] ================================================
[2026-06-05 19:10:37,515.515 INFO    ] Launching Daemon at Fri Jun  5 19:10:37 IST 2026
[2026-06-05 19:10:37,526.526 INFO    ] ================================================
[2026-06-05 19:10:38,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:10:38
[2026-06-05 19:10:38,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:10:38,983.983 INFO    ] Initializing speech engine...
[2026-06-05 19:10:39,010.010 INFO    ] 2026-06-05 19:10:38
[2026-06-05 19:10:39,283.283 INFO    ] 2026-06-05 19:10:39
[2026-06-05 19:10:39,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:10:39,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:10:39,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:10:39,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:10:39,750.750 INFO    ] time= 05/06/2026 19:10:39
[2026-06-05 19:10:39,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:10:39,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:10:39,924.924 INFO    ] No existing commands found in stream
[2026-06-05 19:10:44,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:10:44,938.938 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 19:10:48,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:10:48,362.362 INFO    ] Checking for system updates...
[2026-06-05 19:10:48,402.402 INFO    ] 200
[2026-06-05 19:10:48,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:48,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:10:48,467.467 INFO    ] No update needed
[2026-06-05 19:10:48,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 19:10:48,522.522 INFO    ] 200
[2026-06-05 19:10:48,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:48,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:10:48,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:10:48,611.611 INFO    ] No camera update needed
[2026-06-05 19:10:48,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:10:48,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:10:48,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:10:48,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:10:50,667.667 INFO    ] ================================================
[2026-06-05 19:10:50,683.683 INFO    ] Launching Daemon at Fri Jun  5 19:10:50 IST 2026
[2026-06-05 19:10:50,694.694 INFO    ] ================================================
[2026-06-05 19:10:51,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:10:51
[2026-06-05 19:10:51,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:10:52,149.149 INFO    ] Initializing speech engine...
[2026-06-05 19:10:52,159.159 INFO    ] 2026-06-05 19:10:52
[2026-06-05 19:10:52,413.413 INFO    ] 2026-06-05 19:10:52
[2026-06-05 19:10:52,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:10:52,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:10:52,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:10:52,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:10:52,911.911 INFO    ] time= 05/06/2026 19:10:52
[2026-06-05 19:10:52,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:10:52,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:10:53,119.119 INFO    ] No existing commands found in stream
[2026-06-05 19:10:58,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:10:58,137.137 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 19:10:59,233.233 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:10:59,236.236 INFO    ] Checking for system updates...
[2026-06-05 19:10:59,272.272 INFO    ] 200
[2026-06-05 19:10:59,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:59,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:10:59,331.331 INFO    ] No update needed
[2026-06-05 19:10:59,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 19:10:59,379.379 INFO    ] 200
[2026-06-05 19:10:59,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:10:59,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:10:59,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:10:59,478.478 INFO    ] No camera update needed
[2026-06-05 19:10:59,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:10:59,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:10:59,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:10:59,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:11:01,533.533 INFO    ] ================================================
[2026-06-05 19:11:01,548.548 INFO    ] Launching Daemon at Fri Jun  5 19:11:01 IST 2026
[2026-06-05 19:11:01,559.559 INFO    ] ================================================
[2026-06-05 19:11:02,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:11:02
[2026-06-05 19:11:02,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:11:03,264.264 INFO    ] Initializing speech engine...
[2026-06-05 19:11:03,281.281 INFO    ] 2026-06-05 19:11:03
[2026-06-05 19:11:03,580.580 INFO    ] 2026-06-05 19:11:03
[2026-06-05 19:11:03,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:11:03,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:11:03,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:11:03,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:11:03,979.979 INFO    ] time= 05/06/2026 19:11:03
[2026-06-05 19:11:04,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:11:04,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:11:04,088.088 INFO    ] No existing commands found in stream
[2026-06-05 19:11:09,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:11:09,104.104 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 19:11:11,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:11:11,346.346 INFO    ] Checking for system updates...
[2026-06-05 19:11:11,396.396 INFO    ] 200
[2026-06-05 19:11:11,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:11:11,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:11:11,461.461 INFO    ] No update needed
[2026-06-05 19:11:11,463.463 INFO    ] Checking for camera pi updates...
[2026-06-05 19:11:11,503.503 INFO    ] 200
[2026-06-05 19:11:11,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:11:11,546.546 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:11:11,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:11:11,600.600 INFO    ] No camera update needed
[2026-06-05 19:11:11,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:11:11,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:11:11,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:11:11,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:11:13,657.657 INFO    ] ================================================
[2026-06-05 19:11:13,673.673 INFO    ] Launching Daemon at Fri Jun  5 19:11:13 IST 2026
[2026-06-05 19:11:13,684.684 INFO    ] ================================================
[2026-06-05 19:11:14,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:11:14
[2026-06-05 19:11:15,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:11:15,359.359 INFO    ] Initializing speech engine...
[2026-06-05 19:11:15,371.371 INFO    ] 2026-06-05 19:11:15
[2026-06-05 19:11:15,684.684 INFO    ] 2026-06-05 19:11:15
[2026-06-05 19:11:15,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:11:18,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:11:18,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:11:19,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:11:19,199.199 INFO    ] time= 05/06/2026 19:11:19
[2026-06-05 19:11:19,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:11:19,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:11:19,261.261 INFO    ] No existing commands found in stream
[2026-06-05 19:11:24,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:11:24,275.275 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 19:11:26,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:11:26,047.047 INFO    ] Checking for system updates...
[2026-06-05 19:11:26,084.084 INFO    ] 200
[2026-06-05 19:11:26,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:11:26,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:11:26,145.145 INFO    ] No update needed
[2026-06-05 19:11:26,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 19:11:26,183.183 INFO    ] 200
[2026-06-05 19:11:26,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:11:26,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:11:26,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:11:26,273.273 INFO    ] No camera update needed
[2026-06-05 19:11:26,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:11:26,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:11:26,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:11:26,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:11:28,337.337 INFO    ] ================================================
[2026-06-05 19:11:28,353.353 INFO    ] Launching Daemon at Fri Jun  5 19:11:28 IST 2026
[2026-06-05 19:11:28,365.365 INFO    ] ================================================
[2026-06-05 19:11:28,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:11:28
[2026-06-05 19:11:29,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:11:29,999.999 INFO    ] Initializing speech engine...
[2026-06-05 19:11:30,013.013 INFO    ] 2026-06-05 19:11:30
[2026-06-05 19:11:30,298.298 INFO    ] 2026-06-05 19:11:30
[2026-06-05 19:11:30,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:11:30,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:11:30,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:11:30,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:11:30,757.757 INFO    ] time= 05/06/2026 19:11:30
[2026-06-05 19:11:30,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:11:30,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:11:30,998.998 INFO    ] No existing commands found in stream
[2026-06-05 19:11:36,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:11:36,029.029 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 19:11:37,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:11:37,203.203 INFO    ] Checking for system updates...
[2026-06-05 19:11:37,241.241 INFO    ] 200
[2026-06-05 19:11:37,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:11:37,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:11:37,301.301 INFO    ] No update needed
[2026-06-05 19:11:37,304.304 INFO    ] Checking for camera pi updates...
[2026-06-05 19:11:37,339.339 INFO    ] 200
[2026-06-05 19:11:37,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:11:37,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:11:37,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:11:37,436.436 INFO    ] No camera update needed
[2026-06-05 19:11:37,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:11:37,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:11:37,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:11:37,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:11:39,497.497 INFO    ] ================================================
[2026-06-05 19:11:39,513.513 INFO    ] Launching Daemon at Fri Jun  5 19:11:39 IST 2026
[2026-06-05 19:11:39,524.524 INFO    ] ================================================
[2026-06-05 19:11:40,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:11:40
[2026-06-05 19:11:40,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:11:40,950.950 INFO    ] Initializing speech engine...
[2026-06-05 19:11:40,959.959 INFO    ] 2026-06-05 19:11:40
[2026-06-05 19:11:41,258.258 INFO    ] 2026-06-05 19:11:41
[2026-06-05 19:11:41,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:11:41,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:11:41,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:11:41,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:11:41,641.641 INFO    ] time= 05/06/2026 19:11:41
[2026-06-05 19:11:41,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:11:41,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:11:41,770.770 INFO    ] No existing commands found in stream
[2026-06-05 19:11:46,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:11:46,785.785 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 19:11:49,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:11:49,958.958 INFO    ] Checking for system updates...
[2026-06-05 19:11:49,994.994 INFO    ] 200
[2026-06-05 19:11:49,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:11:50,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:11:50,052.052 INFO    ] No update needed
[2026-06-05 19:11:50,055.055 INFO    ] Checking for camera pi updates...
[2026-06-05 19:11:50,089.089 INFO    ] 200
[2026-06-05 19:11:50,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:11:50,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:11:50,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:11:50,182.182 INFO    ] No camera update needed
[2026-06-05 19:11:50,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:11:50,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:11:50,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:11:50,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:11:52,239.239 INFO    ] ================================================
[2026-06-05 19:11:52,255.255 INFO    ] Launching Daemon at Fri Jun  5 19:11:52 IST 2026
[2026-06-05 19:11:52,267.267 INFO    ] ================================================
[2026-06-05 19:11:52,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:11:52
[2026-06-05 19:11:53,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:11:53,698.698 INFO    ] Initializing speech engine...
[2026-06-05 19:11:53,706.706 INFO    ] 2026-06-05 19:11:53
[2026-06-05 19:11:53,981.981 INFO    ] 2026-06-05 19:11:53
[2026-06-05 19:11:54,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:11:54,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:11:54,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:11:54,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:11:54,485.485 INFO    ] time= 05/06/2026 19:11:54
[2026-06-05 19:11:54,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:11:54,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:11:54,687.687 INFO    ] No existing commands found in stream
[2026-06-05 19:11:59,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:11:59,708.708 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 19:12:03,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:12:03,321.321 INFO    ] Checking for system updates...
[2026-06-05 19:12:03,358.358 INFO    ] 200
[2026-06-05 19:12:03,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:03,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:12:03,426.426 INFO    ] No update needed
[2026-06-05 19:12:03,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 19:12:03,468.468 INFO    ] 200
[2026-06-05 19:12:03,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:03,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:12:03,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:12:03,577.577 INFO    ] No camera update needed
[2026-06-05 19:12:03,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:12:03,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:12:03,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:12:03,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:12:05,637.637 INFO    ] ================================================
[2026-06-05 19:12:05,653.653 INFO    ] Launching Daemon at Fri Jun  5 19:12:05 IST 2026
[2026-06-05 19:12:05,664.664 INFO    ] ================================================
[2026-06-05 19:12:06,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:12:06
[2026-06-05 19:12:07,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:12:07,339.339 INFO    ] Initializing speech engine...
[2026-06-05 19:12:07,352.352 INFO    ] 2026-06-05 19:12:07
[2026-06-05 19:12:07,660.660 INFO    ] 2026-06-05 19:12:07
[2026-06-05 19:12:07,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:12:07,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:12:07,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:12:08,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:12:08,117.117 INFO    ] time= 05/06/2026 19:12:08
[2026-06-05 19:12:08,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:12:08,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:12:08,298.298 INFO    ] No existing commands found in stream
[2026-06-05 19:12:13,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:12:13,332.332 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 19:12:14,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:12:14,901.901 INFO    ] Checking for system updates...
[2026-06-05 19:12:14,944.944 INFO    ] 200
[2026-06-05 19:12:14,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:15,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:12:15,007.007 INFO    ] No update needed
[2026-06-05 19:12:15,010.010 INFO    ] Checking for camera pi updates...
[2026-06-05 19:12:15,045.045 INFO    ] 200
[2026-06-05 19:12:15,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:15,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:12:15,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:12:15,125.125 INFO    ] No camera update needed
[2026-06-05 19:12:15,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:12:15,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:12:15,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:12:15,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:12:17,181.181 INFO    ] ================================================
[2026-06-05 19:12:17,197.197 INFO    ] Launching Daemon at Fri Jun  5 19:12:17 IST 2026
[2026-06-05 19:12:17,208.208 INFO    ] ================================================
[2026-06-05 19:12:17,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:12:17
[2026-06-05 19:12:18,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:12:18,617.617 INFO    ] Initializing speech engine...
[2026-06-05 19:12:18,624.624 INFO    ] 2026-06-05 19:12:18
[2026-06-05 19:12:18,922.922 INFO    ] 2026-06-05 19:12:18
[2026-06-05 19:12:18,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:12:20,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:12:20,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:12:20,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:12:20,669.669 INFO    ] time= 05/06/2026 19:12:20
[2026-06-05 19:12:20,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:12:20,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:12:20,796.796 INFO    ] No existing commands found in stream
[2026-06-05 19:12:25,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:12:25,820.820 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 19:12:27,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:12:27,580.580 INFO    ] Checking for system updates...
[2026-06-05 19:12:27,617.617 INFO    ] 200
[2026-06-05 19:12:27,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:27,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:12:27,674.674 INFO    ] No update needed
[2026-06-05 19:12:27,677.677 INFO    ] Checking for camera pi updates...
[2026-06-05 19:12:27,714.714 INFO    ] 200
[2026-06-05 19:12:27,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:27,758.758 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:12:27,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:12:27,801.801 INFO    ] No camera update needed
[2026-06-05 19:12:27,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:12:27,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:12:27,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:12:27,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:12:29,859.859 INFO    ] ================================================
[2026-06-05 19:12:29,875.875 INFO    ] Launching Daemon at Fri Jun  5 19:12:29 IST 2026
[2026-06-05 19:12:29,886.886 INFO    ] ================================================
[2026-06-05 19:12:30,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:12:30
[2026-06-05 19:12:31,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:12:31,328.328 INFO    ] Initializing speech engine...
[2026-06-05 19:12:31,335.335 INFO    ] 2026-06-05 19:12:31
[2026-06-05 19:12:31,594.594 INFO    ] 2026-06-05 19:12:31
[2026-06-05 19:12:31,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:12:31,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:12:31,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:12:32,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:12:32,076.076 INFO    ] time= 05/06/2026 19:12:32
[2026-06-05 19:12:32,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:12:32,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:12:32,337.337 INFO    ] No existing commands found in stream
[2026-06-05 19:12:37,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:12:37,376.376 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 19:12:38,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:12:38,724.724 INFO    ] Checking for system updates...
[2026-06-05 19:12:38,760.760 INFO    ] 200
[2026-06-05 19:12:38,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:38,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:12:38,821.821 INFO    ] No update needed
[2026-06-05 19:12:38,823.823 INFO    ] Checking for camera pi updates...
[2026-06-05 19:12:38,857.857 INFO    ] 200
[2026-06-05 19:12:38,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:38,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:12:38,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:12:38,959.959 INFO    ] No camera update needed
[2026-06-05 19:12:38,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:12:38,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:12:38,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:12:38,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:12:41,016.016 INFO    ] ================================================
[2026-06-05 19:12:41,032.032 INFO    ] Launching Daemon at Fri Jun  5 19:12:41 IST 2026
[2026-06-05 19:12:41,043.043 INFO    ] ================================================
[2026-06-05 19:12:41,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:12:41
[2026-06-05 19:12:42,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:12:42,494.494 INFO    ] Initializing speech engine...
[2026-06-05 19:12:42,509.509 INFO    ] 2026-06-05 19:12:42
[2026-06-05 19:12:42,790.790 INFO    ] 2026-06-05 19:12:42
[2026-06-05 19:12:42,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:12:43,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:12:43,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:12:43,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:12:43,163.163 INFO    ] time= 05/06/2026 19:12:43
[2026-06-05 19:12:43,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:12:43,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:12:43,287.287 INFO    ] No existing commands found in stream
[2026-06-05 19:12:48,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:12:48,302.302 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 19:12:51,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:12:51,889.889 INFO    ] Checking for system updates...
[2026-06-05 19:12:51,927.927 INFO    ] 200
[2026-06-05 19:12:51,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:51,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:12:51,986.986 INFO    ] No update needed
[2026-06-05 19:12:51,988.988 INFO    ] Checking for camera pi updates...
[2026-06-05 19:12:52,022.022 INFO    ] 200
[2026-06-05 19:12:52,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:12:52,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:12:52,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:12:52,117.117 INFO    ] No camera update needed
[2026-06-05 19:12:52,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:12:52,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:12:52,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:12:52,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:12:54,176.176 INFO    ] ================================================
[2026-06-05 19:12:54,191.191 INFO    ] Launching Daemon at Fri Jun  5 19:12:54 IST 2026
[2026-06-05 19:12:54,202.202 INFO    ] ================================================
[2026-06-05 19:12:54,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:12:54
[2026-06-05 19:12:55,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:12:55,807.807 INFO    ] Initializing speech engine...
[2026-06-05 19:12:55,816.816 INFO    ] 2026-06-05 19:12:55
[2026-06-05 19:12:56,086.086 INFO    ] 2026-06-05 19:12:56
[2026-06-05 19:12:56,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:12:56,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:12:56,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:12:56,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:12:56,590.590 INFO    ] time= 05/06/2026 19:12:56
[2026-06-05 19:12:56,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:12:56,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:12:56,754.754 INFO    ] No existing commands found in stream
[2026-06-05 19:13:01,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:13:01,791.791 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 19:13:02,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:13:02,944.944 INFO    ] Checking for system updates...
[2026-06-05 19:13:02,992.992 INFO    ] 200
[2026-06-05 19:13:02,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:03,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:13:03,056.056 INFO    ] No update needed
[2026-06-05 19:13:03,059.059 INFO    ] Checking for camera pi updates...
[2026-06-05 19:13:03,097.097 INFO    ] 200
[2026-06-05 19:13:03,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:03,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:13:03,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:13:03,186.186 INFO    ] No camera update needed
[2026-06-05 19:13:03,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:13:03,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:13:03,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:13:03,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:13:05,243.243 INFO    ] ================================================
[2026-06-05 19:13:05,258.258 INFO    ] Launching Daemon at Fri Jun  5 19:13:05 IST 2026
[2026-06-05 19:13:05,269.269 INFO    ] ================================================
[2026-06-05 19:13:05,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:13:05
[2026-06-05 19:13:06,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:13:06,717.717 INFO    ] Initializing speech engine...
[2026-06-05 19:13:06,725.725 INFO    ] 2026-06-05 19:13:06
[2026-06-05 19:13:06,972.972 INFO    ] 2026-06-05 19:13:06
[2026-06-05 19:13:07,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:13:07,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:13:07,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:13:07,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:13:07,460.460 INFO    ] time= 05/06/2026 19:13:07
[2026-06-05 19:13:07,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:13:07,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:13:07,592.592 INFO    ] No existing commands found in stream
[2026-06-05 19:13:12,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:13:12,607.607 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 19:13:13,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:13:13,369.369 INFO    ] Checking for system updates...
[2026-06-05 19:13:13,405.405 INFO    ] 200
[2026-06-05 19:13:13,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:13,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:13:13,463.463 INFO    ] No update needed
[2026-06-05 19:13:13,466.466 INFO    ] Checking for camera pi updates...
[2026-06-05 19:13:13,504.504 INFO    ] 200
[2026-06-05 19:13:13,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:13,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:13:13,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:13:13,590.590 INFO    ] No camera update needed
[2026-06-05 19:13:13,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:13:13,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:13:13,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:13:13,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:13:15,647.647 INFO    ] ================================================
[2026-06-05 19:13:15,663.663 INFO    ] Launching Daemon at Fri Jun  5 19:13:15 IST 2026
[2026-06-05 19:13:15,674.674 INFO    ] ================================================
[2026-06-05 19:13:16,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:13:16
[2026-06-05 19:13:17,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:13:17,334.334 INFO    ] Initializing speech engine...
[2026-06-05 19:13:17,346.346 INFO    ] 2026-06-05 19:13:17
[2026-06-05 19:13:17,656.656 INFO    ] 2026-06-05 19:13:17
[2026-06-05 19:13:17,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:13:17,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:13:17,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:13:18,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:13:18,166.166 INFO    ] time= 05/06/2026 19:13:18
[2026-06-05 19:13:18,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:13:18,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:13:18,343.343 INFO    ] No existing commands found in stream
[2026-06-05 19:13:23,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:13:23,359.359 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 19:13:24,272.272 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:13:24,275.275 INFO    ] Checking for system updates...
[2026-06-05 19:13:24,313.313 INFO    ] 200
[2026-06-05 19:13:24,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:24,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:13:24,373.373 INFO    ] No update needed
[2026-06-05 19:13:24,376.376 INFO    ] Checking for camera pi updates...
[2026-06-05 19:13:24,410.410 INFO    ] 200
[2026-06-05 19:13:24,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:24,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:13:24,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:13:24,506.506 INFO    ] No camera update needed
[2026-06-05 19:13:24,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:13:24,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:13:24,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:13:24,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:13:26,569.569 INFO    ] ================================================
[2026-06-05 19:13:26,585.585 INFO    ] Launching Daemon at Fri Jun  5 19:13:26 IST 2026
[2026-06-05 19:13:26,596.596 INFO    ] ================================================
[2026-06-05 19:13:27,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:13:27
[2026-06-05 19:13:27,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:13:28,072.072 INFO    ] Initializing speech engine...
[2026-06-05 19:13:28,080.080 INFO    ] 2026-06-05 19:13:28
[2026-06-05 19:13:28,342.342 INFO    ] 2026-06-05 19:13:28
[2026-06-05 19:13:28,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:13:28,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:13:28,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:13:28,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:13:28,822.822 INFO    ] time= 05/06/2026 19:13:28
[2026-06-05 19:13:28,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:13:28,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:13:29,031.031 INFO    ] No existing commands found in stream
[2026-06-05 19:13:34,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:13:34,055.055 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 19:13:36,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:13:36,431.431 INFO    ] Checking for system updates...
[2026-06-05 19:13:36,467.467 INFO    ] 200
[2026-06-05 19:13:36,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:36,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:13:36,524.524 INFO    ] No update needed
[2026-06-05 19:13:36,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 19:13:36,562.562 INFO    ] 200
[2026-06-05 19:13:36,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:36,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:13:36,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:13:36,651.651 INFO    ] No camera update needed
[2026-06-05 19:13:36,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:13:36,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:13:36,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:13:36,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:13:38,708.708 INFO    ] ================================================
[2026-06-05 19:13:38,724.724 INFO    ] Launching Daemon at Fri Jun  5 19:13:38 IST 2026
[2026-06-05 19:13:38,735.735 INFO    ] ================================================
[2026-06-05 19:13:39,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:13:39
[2026-06-05 19:13:39,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:13:40,175.175 INFO    ] Initializing speech engine...
[2026-06-05 19:13:40,184.184 INFO    ] 2026-06-05 19:13:40
[2026-06-05 19:13:40,483.483 INFO    ] 2026-06-05 19:13:40
[2026-06-05 19:13:40,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:13:40,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:13:40,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:13:40,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:13:40,906.906 INFO    ] time= 05/06/2026 19:13:40
[2026-06-05 19:13:40,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:13:40,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:13:40,999.999 INFO    ] No existing commands found in stream
[2026-06-05 19:13:46,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:13:46,032.032 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-05 19:13:48,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:13:48,414.414 INFO    ] Checking for system updates...
[2026-06-05 19:13:48,450.450 INFO    ] 200
[2026-06-05 19:13:48,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:48,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:13:48,508.508 INFO    ] No update needed
[2026-06-05 19:13:48,510.510 INFO    ] Checking for camera pi updates...
[2026-06-05 19:13:48,544.544 INFO    ] 200
[2026-06-05 19:13:48,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:13:48,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:13:48,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:13:48,636.636 INFO    ] No camera update needed
[2026-06-05 19:13:48,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:13:48,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:13:48,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:13:48,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:13:50,693.693 INFO    ] ================================================
[2026-06-05 19:13:50,708.708 INFO    ] Launching Daemon at Fri Jun  5 19:13:50 IST 2026
[2026-06-05 19:13:50,720.720 INFO    ] ================================================
[2026-06-05 19:13:51,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:13:51
[2026-06-05 19:13:52,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:13:52,371.371 INFO    ] Initializing speech engine...
[2026-06-05 19:13:52,384.384 INFO    ] 2026-06-05 19:13:52
[2026-06-05 19:13:52,668.668 INFO    ] 2026-06-05 19:13:52
[2026-06-05 19:13:52,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:13:52,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:13:52,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:13:53,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:13:53,161.161 INFO    ] time= 05/06/2026 19:13:53
[2026-06-05 19:13:53,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:13:53,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:13:53,364.364 INFO    ] No existing commands found in stream
[2026-06-05 19:13:58,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:13:58,385.385 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 19:14:02,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:14:02,100.100 INFO    ] Checking for system updates...
[2026-06-05 19:14:02,145.145 INFO    ] 200
[2026-06-05 19:14:02,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:14:02,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:14:02,211.211 INFO    ] No update needed
[2026-06-05 19:14:02,214.214 INFO    ] Checking for camera pi updates...
[2026-06-05 19:14:02,252.252 INFO    ] 200
[2026-06-05 19:14:02,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:14:02,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:14:02,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:14:02,335.335 INFO    ] No camera update needed
[2026-06-05 19:14:02,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:14:02,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:14:02,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:14:02,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:14:04,396.396 INFO    ] ================================================
[2026-06-05 19:14:04,412.412 INFO    ] Launching Daemon at Fri Jun  5 19:14:04 IST 2026
[2026-06-05 19:14:04,423.423 INFO    ] ================================================
[2026-06-05 19:14:05,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:14:05
[2026-06-05 19:14:05,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:14:06,049.049 INFO    ] Initializing speech engine...
[2026-06-05 19:14:06,068.068 INFO    ] 2026-06-05 19:14:06
[2026-06-05 19:14:06,320.320 INFO    ] 2026-06-05 19:14:06
[2026-06-05 19:14:06,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:14:06,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:14:06,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:14:06,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:14:06,810.810 INFO    ] time= 05/06/2026 19:14:06
[2026-06-05 19:14:06,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:14:06,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:14:07,031.031 INFO    ] No existing commands found in stream
[2026-06-05 19:14:12,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:14:12,065.065 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 19:14:16,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:14:16,412.412 INFO    ] Checking for system updates...
[2026-06-05 19:14:16,450.450 INFO    ] 200
[2026-06-05 19:14:16,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:14:16,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:14:16,509.509 INFO    ] No update needed
[2026-06-05 19:14:16,512.512 INFO    ] Checking for camera pi updates...
[2026-06-05 19:14:16,551.551 INFO    ] 200
[2026-06-05 19:14:16,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:14:16,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:14:16,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:14:16,767.767 INFO    ] No camera update needed
[2026-06-05 19:14:16,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:14:16,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:14:16,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:14:16,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:14:18,828.828 INFO    ] ================================================
[2026-06-05 19:14:18,844.844 INFO    ] Launching Daemon at Fri Jun  5 19:14:18 IST 2026
[2026-06-05 19:14:18,856.856 INFO    ] ================================================
[2026-06-05 19:14:19,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:14:19
[2026-06-05 19:14:20,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:14:20,257.257 INFO    ] Initializing speech engine...
[2026-06-05 19:14:20,271.271 INFO    ] 2026-06-05 19:14:20
[2026-06-05 19:14:20,533.533 INFO    ] 2026-06-05 19:14:20
[2026-06-05 19:14:20,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:14:22,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:14:22,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:14:22,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:14:22,971.971 INFO    ] time= 05/06/2026 19:14:22
[2026-06-05 19:14:22,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:14:23,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:14:23,120.120 INFO    ] No existing commands found in stream
[2026-06-05 19:14:28,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:14:28,133.133 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 19:14:32,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:14:32,126.126 INFO    ] Checking for system updates...
[2026-06-05 19:14:32,164.164 INFO    ] 200
[2026-06-05 19:14:32,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:14:32,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:14:32,226.226 INFO    ] No update needed
[2026-06-05 19:14:32,229.229 INFO    ] Checking for camera pi updates...
[2026-06-05 19:14:32,269.269 INFO    ] 200
[2026-06-05 19:14:32,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:14:32,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:14:32,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:14:32,374.374 INFO    ] No camera update needed
[2026-06-05 19:14:32,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:14:32,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:14:32,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:14:32,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:14:34,440.440 INFO    ] ================================================
[2026-06-05 19:14:34,456.456 INFO    ] Launching Daemon at Fri Jun  5 19:14:34 IST 2026
[2026-06-05 19:14:34,467.467 INFO    ] ================================================
[2026-06-05 19:14:35,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:14:35
[2026-06-05 19:14:35,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:14:35,891.891 INFO    ] Initializing speech engine...
[2026-06-05 19:14:35,900.900 INFO    ] 2026-06-05 19:14:35
[2026-06-05 19:14:36,145.145 INFO    ] 2026-06-05 19:14:36
[2026-06-05 19:14:36,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:14:36,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:14:36,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:14:36,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:14:36,601.601 INFO    ] time= 05/06/2026 19:14:36
[2026-06-05 19:14:36,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:14:36,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:14:36,845.845 INFO    ] No existing commands found in stream
[2026-06-05 19:14:41,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:14:41,868.868 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 19:14:45,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:14:45,604.604 INFO    ] Checking for system updates...
[2026-06-05 19:14:45,640.640 INFO    ] 200
[2026-06-05 19:14:45,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:14:45,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:14:45,697.697 INFO    ] No update needed
[2026-06-05 19:14:45,700.700 INFO    ] Checking for camera pi updates...
[2026-06-05 19:14:45,733.733 INFO    ] 200
[2026-06-05 19:14:45,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:14:45,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:14:45,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:14:45,820.820 INFO    ] No camera update needed
[2026-06-05 19:14:45,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:14:45,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:14:45,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:14:45,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:14:47,875.875 INFO    ] ================================================
[2026-06-05 19:14:47,891.891 INFO    ] Launching Daemon at Fri Jun  5 19:14:47 IST 2026
[2026-06-05 19:14:47,902.902 INFO    ] ================================================
[2026-06-05 19:14:48,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:14:48
[2026-06-05 19:14:49,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:14:49,327.327 INFO    ] Initializing speech engine...
[2026-06-05 19:14:49,342.342 INFO    ] 2026-06-05 19:14:49
[2026-06-05 19:14:49,608.608 INFO    ] 2026-06-05 19:14:49
[2026-06-05 19:14:49,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:14:49,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:14:49,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:14:53,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:14:53,022.022 INFO    ] time= 05/06/2026 19:14:53
[2026-06-05 19:14:53,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:14:53,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:14:53,080.080 INFO    ] No existing commands found in stream
[2026-06-05 19:14:58,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:14:58,091.091 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 19:15:00,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:15:00,402.402 INFO    ] Checking for system updates...
[2026-06-05 19:15:00,439.439 INFO    ] 200
[2026-06-05 19:15:00,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:00,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:15:00,497.497 INFO    ] No update needed
[2026-06-05 19:15:00,499.499 INFO    ] Checking for camera pi updates...
[2026-06-05 19:15:00,533.533 INFO    ] 200
[2026-06-05 19:15:00,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:00,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:15:00,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:15:00,628.628 INFO    ] No camera update needed
[2026-06-05 19:15:00,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:15:00,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:15:00,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:15:00,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:15:02,699.699 INFO    ] ================================================
[2026-06-05 19:15:02,755.755 INFO    ] Launching Daemon at Fri Jun  5 19:15:02 IST 2026
[2026-06-05 19:15:02,782.782 INFO    ] ================================================
[2026-06-05 19:15:03,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:15:03
[2026-06-05 19:15:04,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:15:04,461.461 INFO    ] Initializing speech engine...
[2026-06-05 19:15:04,469.469 INFO    ] 2026-06-05 19:15:04
[2026-06-05 19:15:04,713.713 INFO    ] 2026-06-05 19:15:04
[2026-06-05 19:15:04,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:15:05,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:15:05,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:15:05,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:15:05,203.203 INFO    ] time= 05/06/2026 19:15:05
[2026-06-05 19:15:05,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:15:05,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:15:05,407.407 INFO    ] No existing commands found in stream
[2026-06-05 19:15:10,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:15:10,438.438 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 19:15:13,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:15:13,498.498 INFO    ] Checking for system updates...
[2026-06-05 19:15:13,536.536 INFO    ] 200
[2026-06-05 19:15:13,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:13,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:15:13,595.595 INFO    ] No update needed
[2026-06-05 19:15:13,598.598 INFO    ] Checking for camera pi updates...
[2026-06-05 19:15:13,632.632 INFO    ] 200
[2026-06-05 19:15:13,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:13,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:15:13,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:15:13,717.717 INFO    ] No camera update needed
[2026-06-05 19:15:13,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:15:13,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:15:13,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:15:13,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:15:15,773.773 INFO    ] ================================================
[2026-06-05 19:15:15,789.789 INFO    ] Launching Daemon at Fri Jun  5 19:15:15 IST 2026
[2026-06-05 19:15:15,800.800 INFO    ] ================================================
[2026-06-05 19:15:16,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:15:16
[2026-06-05 19:15:17,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:15:17,380.380 INFO    ] Initializing speech engine...
[2026-06-05 19:15:17,390.390 INFO    ] 2026-06-05 19:15:17
[2026-06-05 19:15:17,641.641 INFO    ] 2026-06-05 19:15:17
[2026-06-05 19:15:17,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:15:17,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:15:17,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:15:18,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:15:18,013.013 INFO    ] time= 05/06/2026 19:15:18
[2026-06-05 19:15:18,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:15:18,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:15:18,207.207 INFO    ] No existing commands found in stream
[2026-06-05 19:15:23,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:15:23,220.220 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 19:15:25,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:15:25,384.384 INFO    ] Checking for system updates...
[2026-06-05 19:15:25,422.422 INFO    ] 200
[2026-06-05 19:15:25,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:25,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:15:25,484.484 INFO    ] No update needed
[2026-06-05 19:15:25,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 19:15:25,521.521 INFO    ] 200
[2026-06-05 19:15:25,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:25,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:15:25,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:15:25,610.610 INFO    ] No camera update needed
[2026-06-05 19:15:25,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:15:25,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:15:25,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:15:25,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:15:27,669.669 INFO    ] ================================================
[2026-06-05 19:15:27,684.684 INFO    ] Launching Daemon at Fri Jun  5 19:15:27 IST 2026
[2026-06-05 19:15:27,695.695 INFO    ] ================================================
[2026-06-05 19:15:28,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:15:28
[2026-06-05 19:15:29,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:15:29,343.343 INFO    ] Initializing speech engine...
[2026-06-05 19:15:29,353.353 INFO    ] 2026-06-05 19:15:29
[2026-06-05 19:15:29,622.622 INFO    ] 2026-06-05 19:15:29
[2026-06-05 19:15:29,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:15:29,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:15:29,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:15:30,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:15:30,102.102 INFO    ] time= 05/06/2026 19:15:30
[2026-06-05 19:15:30,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:15:30,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:15:30,333.333 INFO    ] No existing commands found in stream
[2026-06-05 19:15:35,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:15:35,353.353 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 19:15:39,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:15:39,416.416 INFO    ] Checking for system updates...
[2026-06-05 19:15:39,455.455 INFO    ] 200
[2026-06-05 19:15:39,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:39,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:15:39,519.519 INFO    ] No update needed
[2026-06-05 19:15:39,522.522 INFO    ] Checking for camera pi updates...
[2026-06-05 19:15:39,559.559 INFO    ] 200
[2026-06-05 19:15:39,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:39,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:15:39,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:15:39,666.666 INFO    ] No camera update needed
[2026-06-05 19:15:39,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:15:39,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:15:39,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:15:39,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:15:41,722.722 INFO    ] ================================================
[2026-06-05 19:15:41,738.738 INFO    ] Launching Daemon at Fri Jun  5 19:15:41 IST 2026
[2026-06-05 19:15:41,749.749 INFO    ] ================================================
[2026-06-05 19:15:42,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:15:42
[2026-06-05 19:15:42,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:15:43,209.209 INFO    ] Initializing speech engine...
[2026-06-05 19:15:43,217.217 INFO    ] 2026-06-05 19:15:43
[2026-06-05 19:15:43,479.479 INFO    ] 2026-06-05 19:15:43
[2026-06-05 19:15:43,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:15:43,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:15:43,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:15:43,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:15:43,936.936 INFO    ] time= 05/06/2026 19:15:43
[2026-06-05 19:15:44,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:15:44,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:15:44,098.098 INFO    ] No existing commands found in stream
[2026-06-05 19:15:49,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:15:49,137.137 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 19:15:55,251.251 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:15:55,253.253 INFO    ] Checking for system updates...
[2026-06-05 19:15:55,289.289 INFO    ] 200
[2026-06-05 19:15:55,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:55,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:15:55,347.347 INFO    ] No update needed
[2026-06-05 19:15:55,350.350 INFO    ] Checking for camera pi updates...
[2026-06-05 19:15:55,384.384 INFO    ] 200
[2026-06-05 19:15:55,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:15:55,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:15:55,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:15:55,479.479 INFO    ] No camera update needed
[2026-06-05 19:15:55,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:15:55,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:15:55,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:15:55,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:15:57,536.536 INFO    ] ================================================
[2026-06-05 19:15:57,552.552 INFO    ] Launching Daemon at Fri Jun  5 19:15:57 IST 2026
[2026-06-05 19:15:57,563.563 INFO    ] ================================================
[2026-06-05 19:15:58,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:15:58
[2026-06-05 19:15:58,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:15:59,025.025 INFO    ] Initializing speech engine...
[2026-06-05 19:15:59,032.032 INFO    ] 2026-06-05 19:15:59
[2026-06-05 19:15:59,293.293 INFO    ] 2026-06-05 19:15:59
[2026-06-05 19:15:59,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:15:59,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:15:59,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:15:59,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:15:59,704.704 INFO    ] time= 05/06/2026 19:15:59
[2026-06-05 19:15:59,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:15:59,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:15:59,859.859 INFO    ] No existing commands found in stream
[2026-06-05 19:16:04,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:16:04,872.872 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 19:16:09,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:16:09,064.064 INFO    ] Checking for system updates...
[2026-06-05 19:16:09,101.101 INFO    ] 200
[2026-06-05 19:16:09,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:09,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:16:09,158.158 INFO    ] No update needed
[2026-06-05 19:16:09,161.161 INFO    ] Checking for camera pi updates...
[2026-06-05 19:16:09,208.208 INFO    ] 200
[2026-06-05 19:16:09,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:09,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:16:09,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:16:09,329.329 INFO    ] No camera update needed
[2026-06-05 19:16:09,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:16:09,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:16:09,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:16:09,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:16:11,386.386 INFO    ] ================================================
[2026-06-05 19:16:11,402.402 INFO    ] Launching Daemon at Fri Jun  5 19:16:11 IST 2026
[2026-06-05 19:16:11,413.413 INFO    ] ================================================
[2026-06-05 19:16:11,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:16:11
[2026-06-05 19:16:12,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:16:12,851.851 INFO    ] Initializing speech engine...
[2026-06-05 19:16:12,863.863 INFO    ] 2026-06-05 19:16:12
[2026-06-05 19:16:13,128.128 INFO    ] 2026-06-05 19:16:13
[2026-06-05 19:16:13,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:16:13,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:16:13,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:16:13,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:16:13,600.600 INFO    ] time= 05/06/2026 19:16:13
[2026-06-05 19:16:13,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:16:13,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:16:13,825.825 INFO    ] No existing commands found in stream
[2026-06-05 19:16:18,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:16:18,850.850 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 19:16:21,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:16:21,792.792 INFO    ] Checking for system updates...
[2026-06-05 19:16:21,829.829 INFO    ] 200
[2026-06-05 19:16:21,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:21,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:16:21,893.893 INFO    ] No update needed
[2026-06-05 19:16:21,895.895 INFO    ] Checking for camera pi updates...
[2026-06-05 19:16:21,932.932 INFO    ] 200
[2026-06-05 19:16:21,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:21,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:16:22,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:16:22,125.125 INFO    ] No camera update needed
[2026-06-05 19:16:22,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:16:22,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:16:22,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:16:22,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:16:24,183.183 INFO    ] ================================================
[2026-06-05 19:16:24,198.198 INFO    ] Launching Daemon at Fri Jun  5 19:16:24 IST 2026
[2026-06-05 19:16:24,209.209 INFO    ] ================================================
[2026-06-05 19:16:24,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:16:24
[2026-06-05 19:16:25,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:16:25,638.638 INFO    ] Initializing speech engine...
[2026-06-05 19:16:25,661.661 INFO    ] 2026-06-05 19:16:25
[2026-06-05 19:16:25,914.914 INFO    ] 2026-06-05 19:16:25
[2026-06-05 19:16:25,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:16:26,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:16:26,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:16:26,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:16:26,410.410 INFO    ] time= 05/06/2026 19:16:26
[2026-06-05 19:16:26,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:16:26,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:16:26,636.636 INFO    ] No existing commands found in stream
[2026-06-05 19:16:31,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:16:31,667.667 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 19:16:32,762.762 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:16:32,765.765 INFO    ] Checking for system updates...
[2026-06-05 19:16:32,801.801 INFO    ] 200
[2026-06-05 19:16:32,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:32,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:16:32,858.858 INFO    ] No update needed
[2026-06-05 19:16:32,861.861 INFO    ] Checking for camera pi updates...
[2026-06-05 19:16:32,895.895 INFO    ] 200
[2026-06-05 19:16:32,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:32,938.938 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:16:32,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:16:32,980.980 INFO    ] No camera update needed
[2026-06-05 19:16:32,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:16:32,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:16:32,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:16:32,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:16:35,038.038 INFO    ] ================================================
[2026-06-05 19:16:35,053.053 INFO    ] Launching Daemon at Fri Jun  5 19:16:35 IST 2026
[2026-06-05 19:16:35,063.063 INFO    ] ================================================
[2026-06-05 19:16:35,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:16:35
[2026-06-05 19:16:36,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:16:36,540.540 INFO    ] Initializing speech engine...
[2026-06-05 19:16:36,548.548 INFO    ] 2026-06-05 19:16:36
[2026-06-05 19:16:36,811.811 INFO    ] 2026-06-05 19:16:36
[2026-06-05 19:16:36,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:16:37,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:16:37,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:16:37,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:16:37,280.280 INFO    ] time= 05/06/2026 19:16:37
[2026-06-05 19:16:37,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:16:37,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:16:37,506.506 INFO    ] No existing commands found in stream
[2026-06-05 19:16:42,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:16:42,538.538 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 19:16:44,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:16:44,717.717 INFO    ] Checking for system updates...
[2026-06-05 19:16:44,753.753 INFO    ] 200
[2026-06-05 19:16:44,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:44,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:16:44,816.816 INFO    ] No update needed
[2026-06-05 19:16:44,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 19:16:44,855.855 INFO    ] 200
[2026-06-05 19:16:44,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:44,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:16:44,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:16:44,950.950 INFO    ] No camera update needed
[2026-06-05 19:16:44,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:16:44,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:16:44,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:16:44,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:16:47,006.006 INFO    ] ================================================
[2026-06-05 19:16:47,021.021 INFO    ] Launching Daemon at Fri Jun  5 19:16:47 IST 2026
[2026-06-05 19:16:47,032.032 INFO    ] ================================================
[2026-06-05 19:16:47,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:16:47
[2026-06-05 19:16:48,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:16:48,494.494 INFO    ] Initializing speech engine...
[2026-06-05 19:16:48,500.500 INFO    ] 2026-06-05 19:16:48
[2026-06-05 19:16:48,762.762 INFO    ] 2026-06-05 19:16:48
[2026-06-05 19:16:48,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:16:49,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:16:49,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:16:49,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:16:49,207.207 INFO    ] time= 05/06/2026 19:16:49
[2026-06-05 19:16:49,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:16:49,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:16:49,372.372 INFO    ] No existing commands found in stream
[2026-06-05 19:16:54,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:16:54,389.389 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 19:16:57,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:16:57,328.328 INFO    ] Checking for system updates...
[2026-06-05 19:16:57,364.364 INFO    ] 200
[2026-06-05 19:16:57,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:57,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:16:57,423.423 INFO    ] No update needed
[2026-06-05 19:16:57,426.426 INFO    ] Checking for camera pi updates...
[2026-06-05 19:16:57,461.461 INFO    ] 200
[2026-06-05 19:16:57,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:16:57,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:16:57,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:16:57,558.558 INFO    ] No camera update needed
[2026-06-05 19:16:57,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:16:57,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:16:57,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:16:57,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:16:59,618.618 INFO    ] ================================================
[2026-06-05 19:16:59,633.633 INFO    ] Launching Daemon at Fri Jun  5 19:16:59 IST 2026
[2026-06-05 19:16:59,643.643 INFO    ] ================================================
[2026-06-05 19:17:00,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:17:00
[2026-06-05 19:17:00,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:17:01,093.093 INFO    ] Initializing speech engine...
[2026-06-05 19:17:01,115.115 INFO    ] 2026-06-05 19:17:01
[2026-06-05 19:17:01,374.374 INFO    ] 2026-06-05 19:17:01
[2026-06-05 19:17:01,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:17:01,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:17:01,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:17:01,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:17:01,909.909 INFO    ] time= 05/06/2026 19:17:01
[2026-06-05 19:17:01,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:17:01,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:17:01,992.992 INFO    ] No existing commands found in stream
[2026-06-05 19:17:07,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:17:07,007.007 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 19:17:07,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:17:07,999.999 INFO    ] Checking for system updates...
[2026-06-05 19:17:08,040.040 INFO    ] 200
[2026-06-05 19:17:08,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:08,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:17:08,101.101 INFO    ] No update needed
[2026-06-05 19:17:08,103.103 INFO    ] Checking for camera pi updates...
[2026-06-05 19:17:08,138.138 INFO    ] 200
[2026-06-05 19:17:08,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:08,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:17:08,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:17:08,213.213 INFO    ] No camera update needed
[2026-06-05 19:17:08,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:17:08,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:17:08,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:17:08,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:17:10,276.276 INFO    ] ================================================
[2026-06-05 19:17:10,292.292 INFO    ] Launching Daemon at Fri Jun  5 19:17:10 IST 2026
[2026-06-05 19:17:10,303.303 INFO    ] ================================================
[2026-06-05 19:17:10,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:17:10
[2026-06-05 19:17:11,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:17:11,933.933 INFO    ] Initializing speech engine...
[2026-06-05 19:17:11,943.943 INFO    ] 2026-06-05 19:17:11
[2026-06-05 19:17:12,222.222 INFO    ] 2026-06-05 19:17:12
[2026-06-05 19:17:12,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:17:12,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:17:12,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:17:12,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:17:12,608.608 INFO    ] time= 05/06/2026 19:17:12
[2026-06-05 19:17:12,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:17:12,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:17:12,811.811 INFO    ] No existing commands found in stream
[2026-06-05 19:17:17,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:17:17,827.827 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 19:17:19,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:17:19,865.865 INFO    ] Checking for system updates...
[2026-06-05 19:17:19,907.907 INFO    ] 200
[2026-06-05 19:17:19,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:19,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:17:19,973.973 INFO    ] No update needed
[2026-06-05 19:17:19,975.975 INFO    ] Checking for camera pi updates...
[2026-06-05 19:17:20,011.011 INFO    ] 200
[2026-06-05 19:17:20,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:20,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:17:20,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:17:20,107.107 INFO    ] No camera update needed
[2026-06-05 19:17:20,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:17:20,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:17:20,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:17:20,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:17:22,166.166 INFO    ] ================================================
[2026-06-05 19:17:22,180.180 INFO    ] Launching Daemon at Fri Jun  5 19:17:22 IST 2026
[2026-06-05 19:17:22,191.191 INFO    ] ================================================
[2026-06-05 19:17:22,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:17:22
[2026-06-05 19:17:23,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:17:23,799.799 INFO    ] Initializing speech engine...
[2026-06-05 19:17:23,819.819 INFO    ] 2026-06-05 19:17:23
[2026-06-05 19:17:24,093.093 INFO    ] 2026-06-05 19:17:24
[2026-06-05 19:17:24,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:17:26,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:17:26,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:17:27,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:17:27,228.228 INFO    ] time= 05/06/2026 19:17:27
[2026-06-05 19:17:27,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:17:27,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:17:27,310.310 INFO    ] No existing commands found in stream
[2026-06-05 19:17:32,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:17:32,323.323 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 19:17:34,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:17:34,094.094 INFO    ] Checking for system updates...
[2026-06-05 19:17:34,129.129 INFO    ] 200
[2026-06-05 19:17:34,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:34,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:17:34,187.187 INFO    ] No update needed
[2026-06-05 19:17:34,190.190 INFO    ] Checking for camera pi updates...
[2026-06-05 19:17:34,223.223 INFO    ] 200
[2026-06-05 19:17:34,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:34,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:17:34,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:17:34,312.312 INFO    ] No camera update needed
[2026-06-05 19:17:34,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:17:34,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:17:34,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:17:34,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:17:36,370.370 INFO    ] ================================================
[2026-06-05 19:17:36,385.385 INFO    ] Launching Daemon at Fri Jun  5 19:17:36 IST 2026
[2026-06-05 19:17:36,395.395 INFO    ] ================================================
[2026-06-05 19:17:36,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:17:36
[2026-06-05 19:17:37,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:17:37,869.869 INFO    ] Initializing speech engine...
[2026-06-05 19:17:37,879.879 INFO    ] 2026-06-05 19:17:37
[2026-06-05 19:17:38,161.161 INFO    ] 2026-06-05 19:17:38
[2026-06-05 19:17:38,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:17:38,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:17:38,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:17:38,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:17:38,582.582 INFO    ] time= 05/06/2026 19:17:38
[2026-06-05 19:17:38,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:17:38,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:17:38,675.675 INFO    ] No existing commands found in stream
[2026-06-05 19:17:43,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:17:43,713.713 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 19:17:45,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:17:45,887.887 INFO    ] Checking for system updates...
[2026-06-05 19:17:45,923.923 INFO    ] 200
[2026-06-05 19:17:45,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:45,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:17:45,981.981 INFO    ] No update needed
[2026-06-05 19:17:45,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 19:17:46,017.017 INFO    ] 200
[2026-06-05 19:17:46,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:46,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:17:46,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:17:46,104.104 INFO    ] No camera update needed
[2026-06-05 19:17:46,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:17:46,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:17:46,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:17:46,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:17:48,159.159 INFO    ] ================================================
[2026-06-05 19:17:48,174.174 INFO    ] Launching Daemon at Fri Jun  5 19:17:48 IST 2026
[2026-06-05 19:17:48,185.185 INFO    ] ================================================
[2026-06-05 19:17:48,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:17:48
[2026-06-05 19:17:49,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:17:49,743.743 INFO    ] Initializing speech engine...
[2026-06-05 19:17:49,749.749 INFO    ] 2026-06-05 19:17:49
[2026-06-05 19:17:50,013.013 INFO    ] 2026-06-05 19:17:50
[2026-06-05 19:17:50,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:17:50,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:17:50,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:17:50,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:17:50,496.496 INFO    ] time= 05/06/2026 19:17:50
[2026-06-05 19:17:50,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:17:50,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:17:50,733.733 INFO    ] No existing commands found in stream
[2026-06-05 19:17:55,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:17:55,768.768 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 19:17:58,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:17:58,476.476 INFO    ] Checking for system updates...
[2026-06-05 19:17:58,512.512 INFO    ] 200
[2026-06-05 19:17:58,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:58,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:17:58,570.570 INFO    ] No update needed
[2026-06-05 19:17:58,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 19:17:58,609.609 INFO    ] 200
[2026-06-05 19:17:58,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:17:58,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:17:58,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:17:58,702.702 INFO    ] No camera update needed
[2026-06-05 19:17:58,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:17:58,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:17:58,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:17:58,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:18:00,759.759 INFO    ] ================================================
[2026-06-05 19:18:00,777.777 INFO    ] Launching Daemon at Fri Jun  5 19:18:00 IST 2026
[2026-06-05 19:18:00,791.791 INFO    ] ================================================
[2026-06-05 19:18:01,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:18:01
[2026-06-05 19:18:02,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:18:02,533.533 INFO    ] Initializing speech engine...
[2026-06-05 19:18:02,540.540 INFO    ] 2026-06-05 19:18:02
[2026-06-05 19:18:02,894.894 INFO    ] 2026-06-05 19:18:02
[2026-06-05 19:18:02,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:18:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:18:03,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:18:03,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:18:03,352.352 INFO    ] time= 05/06/2026 19:18:03
[2026-06-05 19:18:03,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:18:03,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:18:03,500.500 INFO    ] No existing commands found in stream
[2026-06-05 19:18:08,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:18:08,520.520 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 19:18:10,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:18:10,456.456 INFO    ] Checking for system updates...
[2026-06-05 19:18:10,493.493 INFO    ] 200
[2026-06-05 19:18:10,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:18:10,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:18:10,564.564 INFO    ] No update needed
[2026-06-05 19:18:10,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 19:18:10,602.602 INFO    ] 200
[2026-06-05 19:18:10,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:18:10,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:18:10,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:18:10,696.696 INFO    ] No camera update needed
[2026-06-05 19:18:10,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:18:10,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:18:10,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:18:10,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:18:12,754.754 INFO    ] ================================================
[2026-06-05 19:18:12,770.770 INFO    ] Launching Daemon at Fri Jun  5 19:18:12 IST 2026
[2026-06-05 19:18:12,781.781 INFO    ] ================================================
[2026-06-05 19:18:13,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:18:13
[2026-06-05 19:18:13,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:18:14,211.211 INFO    ] Initializing speech engine...
[2026-06-05 19:18:14,220.220 INFO    ] 2026-06-05 19:18:14
[2026-06-05 19:18:14,466.466 INFO    ] 2026-06-05 19:18:14
[2026-06-05 19:18:14,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:18:14,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:18:14,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:18:14,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:18:14,902.902 INFO    ] time= 05/06/2026 19:18:14
[2026-06-05 19:18:14,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:18:15,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:18:15,147.147 INFO    ] No existing commands found in stream
[2026-06-05 19:18:20,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:18:20,180.180 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 19:18:22,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:18:22,052.052 INFO    ] Checking for system updates...
[2026-06-05 19:18:22,088.088 INFO    ] 200
[2026-06-05 19:18:22,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:18:22,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:18:22,146.146 INFO    ] No update needed
[2026-06-05 19:18:22,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 19:18:22,182.182 INFO    ] 200
[2026-06-05 19:18:22,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:18:22,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:18:22,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:18:22,272.272 INFO    ] No camera update needed
[2026-06-05 19:18:22,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:18:22,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:18:22,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:18:22,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:18:24,328.328 INFO    ] ================================================
[2026-06-05 19:18:24,343.343 INFO    ] Launching Daemon at Fri Jun  5 19:18:24 IST 2026
[2026-06-05 19:18:24,355.355 INFO    ] ================================================
[2026-06-05 19:18:24,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:18:24
[2026-06-05 19:18:25,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:18:25,816.816 INFO    ] Initializing speech engine...
[2026-06-05 19:18:25,826.826 INFO    ] 2026-06-05 19:18:25
[2026-06-05 19:18:26,102.102 INFO    ] 2026-06-05 19:18:26
[2026-06-05 19:18:26,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:18:28,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:18:28,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:18:28,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:18:28,404.404 INFO    ] time= 05/06/2026 19:18:28
[2026-06-05 19:18:28,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:18:28,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:18:28,508.508 INFO    ] No existing commands found in stream
[2026-06-05 19:18:33,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:18:33,530.530 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 19:18:35,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:18:35,647.647 INFO    ] Checking for system updates...
[2026-06-05 19:18:35,689.689 INFO    ] 200
[2026-06-05 19:18:35,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:18:35,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:18:35,748.748 INFO    ] No update needed
[2026-06-05 19:18:35,751.751 INFO    ] Checking for camera pi updates...
[2026-06-05 19:18:35,786.786 INFO    ] 200
[2026-06-05 19:18:35,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:18:35,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:18:35,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:18:35,876.876 INFO    ] No camera update needed
[2026-06-05 19:18:35,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:18:35,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:18:35,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:18:35,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:18:37,936.936 INFO    ] ================================================
[2026-06-05 19:18:37,952.952 INFO    ] Launching Daemon at Fri Jun  5 19:18:37 IST 2026
[2026-06-05 19:18:37,963.963 INFO    ] ================================================
[2026-06-05 19:18:38,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:18:38
[2026-06-05 19:18:39,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:18:39,531.531 INFO    ] Initializing speech engine...
[2026-06-05 19:18:39,538.538 INFO    ] 2026-06-05 19:18:39
[2026-06-05 19:18:39,812.812 INFO    ] 2026-06-05 19:18:39
[2026-06-05 19:18:39,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:18:40,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:18:40,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:18:40,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:18:40,307.307 INFO    ] time= 05/06/2026 19:18:40
[2026-06-05 19:18:40,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:18:40,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:18:40,521.521 INFO    ] No existing commands found in stream
[2026-06-05 19:18:45,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:18:45,548.548 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 19:18:48,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:18:48,644.644 INFO    ] Checking for system updates...
[2026-06-05 19:18:48,681.681 INFO    ] 200
[2026-06-05 19:18:48,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:18:48,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:18:48,740.740 INFO    ] No update needed
[2026-06-05 19:18:48,742.742 INFO    ] Checking for camera pi updates...
[2026-06-05 19:18:48,777.777 INFO    ] 200
[2026-06-05 19:18:48,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:18:48,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:18:48,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:18:48,876.876 INFO    ] No camera update needed
[2026-06-05 19:18:48,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:18:48,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:18:48,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:18:48,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:18:50,932.932 INFO    ] ================================================
[2026-06-05 19:18:50,948.948 INFO    ] Launching Daemon at Fri Jun  5 19:18:50 IST 2026
[2026-06-05 19:18:50,959.959 INFO    ] ================================================
[2026-06-05 19:18:51,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:18:51
[2026-06-05 19:18:52,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:18:52,391.391 INFO    ] Initializing speech engine...
[2026-06-05 19:18:52,402.402 INFO    ] 2026-06-05 19:18:52
[2026-06-05 19:18:52,663.663 INFO    ] 2026-06-05 19:18:52
[2026-06-05 19:18:52,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:18:52,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:18:52,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:18:53,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:18:53,159.159 INFO    ] time= 05/06/2026 19:18:53
[2026-06-05 19:18:53,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:18:53,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:18:53,365.365 INFO    ] No existing commands found in stream
[2026-06-05 19:18:58,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:18:58,390.390 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 19:19:03,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:19:03,556.556 INFO    ] Checking for system updates...
[2026-06-05 19:19:03,593.593 INFO    ] 200
[2026-06-05 19:19:03,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:03,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:19:03,657.657 INFO    ] No update needed
[2026-06-05 19:19:03,660.660 INFO    ] Checking for camera pi updates...
[2026-06-05 19:19:03,696.696 INFO    ] 200
[2026-06-05 19:19:03,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:03,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:19:03,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:19:03,787.787 INFO    ] No camera update needed
[2026-06-05 19:19:03,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:19:03,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:19:03,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:19:03,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:19:05,847.847 INFO    ] ================================================
[2026-06-05 19:19:05,865.865 INFO    ] Launching Daemon at Fri Jun  5 19:19:05 IST 2026
[2026-06-05 19:19:05,877.877 INFO    ] ================================================
[2026-06-05 19:19:06,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:19:06
[2026-06-05 19:19:07,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:19:07,357.357 INFO    ] Initializing speech engine...
[2026-06-05 19:19:07,367.367 INFO    ] 2026-06-05 19:19:07
[2026-06-05 19:19:07,631.631 INFO    ] 2026-06-05 19:19:07
[2026-06-05 19:19:07,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:19:07,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:19:07,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:19:08,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:19:08,034.034 INFO    ] time= 05/06/2026 19:19:08
[2026-06-05 19:19:08,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:19:08,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:19:08,213.213 INFO    ] No existing commands found in stream
[2026-06-05 19:19:13,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:19:13,237.237 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-05 19:19:16,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:19:16,894.894 INFO    ] Checking for system updates...
[2026-06-05 19:19:16,930.930 INFO    ] 200
[2026-06-05 19:19:16,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:16,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:19:16,990.990 INFO    ] No update needed
[2026-06-05 19:19:16,992.992 INFO    ] Checking for camera pi updates...
[2026-06-05 19:19:17,030.030 INFO    ] 200
[2026-06-05 19:19:17,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:17,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:19:17,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:19:17,116.116 INFO    ] No camera update needed
[2026-06-05 19:19:17,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:19:17,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:19:17,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:19:17,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:19:19,171.171 INFO    ] ================================================
[2026-06-05 19:19:19,187.187 INFO    ] Launching Daemon at Fri Jun  5 19:19:19 IST 2026
[2026-06-05 19:19:19,199.199 INFO    ] ================================================
[2026-06-05 19:19:19,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:19:19
[2026-06-05 19:19:20,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:19:20,644.644 INFO    ] Initializing speech engine...
[2026-06-05 19:19:20,669.669 INFO    ] 2026-06-05 19:19:20
[2026-06-05 19:19:20,941.941 INFO    ] 2026-06-05 19:19:20
[2026-06-05 19:19:20,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:19:21,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:19:21,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:19:21,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:19:21,344.344 INFO    ] time= 05/06/2026 19:19:21
[2026-06-05 19:19:21,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:19:21,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:19:21,427.427 INFO    ] No existing commands found in stream
[2026-06-05 19:19:26,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:19:26,442.442 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 19:19:29,941.941 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:19:29,943.943 INFO    ] Checking for system updates...
[2026-06-05 19:19:29,980.980 INFO    ] 200
[2026-06-05 19:19:29,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:30,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:19:30,041.041 INFO    ] No update needed
[2026-06-05 19:19:30,043.043 INFO    ] Checking for camera pi updates...
[2026-06-05 19:19:30,078.078 INFO    ] 200
[2026-06-05 19:19:30,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:30,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:19:30,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:19:30,170.170 INFO    ] No camera update needed
[2026-06-05 19:19:30,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:19:30,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:19:30,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:19:30,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:19:32,227.227 INFO    ] ================================================
[2026-06-05 19:19:32,244.244 INFO    ] Launching Daemon at Fri Jun  5 19:19:32 IST 2026
[2026-06-05 19:19:32,256.256 INFO    ] ================================================
[2026-06-05 19:19:32,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:19:32
[2026-06-05 19:19:33,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:19:33,780.780 INFO    ] Initializing speech engine...
[2026-06-05 19:19:33,790.790 INFO    ] 2026-06-05 19:19:33
[2026-06-05 19:19:34,044.044 INFO    ] 2026-06-05 19:19:34
[2026-06-05 19:19:34,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:19:34,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:19:34,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:19:34,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:19:34,426.426 INFO    ] time= 05/06/2026 19:19:34
[2026-06-05 19:19:34,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:19:34,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:19:34,601.601 INFO    ] No existing commands found in stream
[2026-06-05 19:19:39,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:19:39,632.632 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 19:19:41,682.682 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:19:41,685.685 INFO    ] Checking for system updates...
[2026-06-05 19:19:41,721.721 INFO    ] 200
[2026-06-05 19:19:41,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:41,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:19:41,780.780 INFO    ] No update needed
[2026-06-05 19:19:41,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 19:19:41,818.818 INFO    ] 200
[2026-06-05 19:19:41,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:41,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:19:41,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:19:41,906.906 INFO    ] No camera update needed
[2026-06-05 19:19:41,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:19:41,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:19:41,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:19:41,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:19:43,961.961 INFO    ] ================================================
[2026-06-05 19:19:43,976.976 INFO    ] Launching Daemon at Fri Jun  5 19:19:43 IST 2026
[2026-06-05 19:19:43,987.987 INFO    ] ================================================
[2026-06-05 19:19:44,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:19:44
[2026-06-05 19:19:45,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:19:45,509.509 INFO    ] Initializing speech engine...
[2026-06-05 19:19:45,518.518 INFO    ] 2026-06-05 19:19:45
[2026-06-05 19:19:45,794.794 INFO    ] 2026-06-05 19:19:45
[2026-06-05 19:19:45,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:19:46,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:19:46,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:19:46,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:19:46,257.257 INFO    ] time= 05/06/2026 19:19:46
[2026-06-05 19:19:46,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:19:46,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:19:46,416.416 INFO    ] No existing commands found in stream
[2026-06-05 19:19:51,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:19:51,439.439 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 19:19:53,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:19:53,397.397 INFO    ] Checking for system updates...
[2026-06-05 19:19:53,433.433 INFO    ] 200
[2026-06-05 19:19:53,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:53,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:19:53,491.491 INFO    ] No update needed
[2026-06-05 19:19:53,494.494 INFO    ] Checking for camera pi updates...
[2026-06-05 19:19:53,528.528 INFO    ] 200
[2026-06-05 19:19:53,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:19:53,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:19:53,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:19:53,613.613 INFO    ] No camera update needed
[2026-06-05 19:19:53,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:19:53,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:19:53,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:19:53,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:19:55,669.669 INFO    ] ================================================
[2026-06-05 19:19:55,684.684 INFO    ] Launching Daemon at Fri Jun  5 19:19:55 IST 2026
[2026-06-05 19:19:55,695.695 INFO    ] ================================================
[2026-06-05 19:19:56,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:19:56
[2026-06-05 19:19:57,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:19:57,304.304 INFO    ] Initializing speech engine...
[2026-06-05 19:19:57,309.309 INFO    ] 2026-06-05 19:19:57
[2026-06-05 19:19:57,581.581 INFO    ] 2026-06-05 19:19:57
[2026-06-05 19:19:57,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:19:59,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:19:59,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:20:00,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:20:00,130.130 INFO    ] time= 05/06/2026 19:20:00
[2026-06-05 19:20:00,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:20:00,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:20:00,227.227 INFO    ] No existing commands found in stream
[2026-06-05 19:20:05,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:20:05,266.266 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 19:20:09,158.158 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:20:09,161.161 INFO    ] Checking for system updates...
[2026-06-05 19:20:09,204.204 INFO    ] 200
[2026-06-05 19:20:09,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:09,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:20:09,290.290 INFO    ] No update needed
[2026-06-05 19:20:09,293.293 INFO    ] Checking for camera pi updates...
[2026-06-05 19:20:09,341.341 INFO    ] 200
[2026-06-05 19:20:09,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:09,385.385 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:20:09,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:20:09,429.429 INFO    ] No camera update needed
[2026-06-05 19:20:09,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:20:09,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:20:09,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:20:09,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:20:11,486.486 INFO    ] ================================================
[2026-06-05 19:20:11,501.501 INFO    ] Launching Daemon at Fri Jun  5 19:20:11 IST 2026
[2026-06-05 19:20:11,513.513 INFO    ] ================================================
[2026-06-05 19:20:12,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:20:12
[2026-06-05 19:20:12,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:20:12,919.919 INFO    ] Initializing speech engine...
[2026-06-05 19:20:12,928.928 INFO    ] 2026-06-05 19:20:12
[2026-06-05 19:20:13,204.204 INFO    ] 2026-06-05 19:20:13
[2026-06-05 19:20:13,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:20:13,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:20:13,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:20:13,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:20:13,586.586 INFO    ] time= 05/06/2026 19:20:13
[2026-06-05 19:20:13,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:20:13,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:20:13,779.779 INFO    ] No existing commands found in stream
[2026-06-05 19:20:18,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:20:18,797.797 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 19:20:22,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:20:22,327.327 INFO    ] Checking for system updates...
[2026-06-05 19:20:22,362.362 INFO    ] 200
[2026-06-05 19:20:22,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:22,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:20:22,420.420 INFO    ] No update needed
[2026-06-05 19:20:22,423.423 INFO    ] Checking for camera pi updates...
[2026-06-05 19:20:22,458.458 INFO    ] 200
[2026-06-05 19:20:22,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:22,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:20:22,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:20:22,554.554 INFO    ] No camera update needed
[2026-06-05 19:20:22,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:20:22,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:20:22,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:20:22,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:20:24,613.613 INFO    ] ================================================
[2026-06-05 19:20:24,629.629 INFO    ] Launching Daemon at Fri Jun  5 19:20:24 IST 2026
[2026-06-05 19:20:24,640.640 INFO    ] ================================================
[2026-06-05 19:20:25,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:20:25
[2026-06-05 19:20:25,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:20:26,097.097 INFO    ] Initializing speech engine...
[2026-06-05 19:20:26,106.106 INFO    ] 2026-06-05 19:20:26
[2026-06-05 19:20:26,355.355 INFO    ] 2026-06-05 19:20:26
[2026-06-05 19:20:26,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:20:26,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:20:26,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:20:26,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:20:26,725.725 INFO    ] time= 05/06/2026 19:20:26
[2026-06-05 19:20:26,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:20:26,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:20:26,888.888 INFO    ] No existing commands found in stream
[2026-06-05 19:20:31,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:20:31,917.917 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 19:20:33,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:20:33,550.550 INFO    ] Checking for system updates...
[2026-06-05 19:20:33,587.587 INFO    ] 200
[2026-06-05 19:20:33,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:33,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:20:33,660.660 INFO    ] No update needed
[2026-06-05 19:20:33,662.662 INFO    ] Checking for camera pi updates...
[2026-06-05 19:20:33,696.696 INFO    ] 200
[2026-06-05 19:20:33,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:33,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:20:33,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:20:33,787.787 INFO    ] No camera update needed
[2026-06-05 19:20:33,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:20:33,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:20:33,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:20:33,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:20:35,845.845 INFO    ] ================================================
[2026-06-05 19:20:35,861.861 INFO    ] Launching Daemon at Fri Jun  5 19:20:35 IST 2026
[2026-06-05 19:20:35,873.873 INFO    ] ================================================
[2026-06-05 19:20:36,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:20:36
[2026-06-05 19:20:37,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:20:37,399.399 INFO    ] Initializing speech engine...
[2026-06-05 19:20:37,412.412 INFO    ] 2026-06-05 19:20:37
[2026-06-05 19:20:37,722.722 INFO    ] 2026-06-05 19:20:37
[2026-06-05 19:20:37,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:20:38,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:20:38,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:20:38,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:20:38,233.233 INFO    ] time= 05/06/2026 19:20:38
[2026-06-05 19:20:38,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:20:38,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:20:38,389.389 INFO    ] No existing commands found in stream
[2026-06-05 19:20:43,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:20:43,418.418 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 19:20:44,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:20:44,274.274 INFO    ] Checking for system updates...
[2026-06-05 19:20:44,328.328 INFO    ] 200
[2026-06-05 19:20:44,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:44,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:20:44,398.398 INFO    ] No update needed
[2026-06-05 19:20:44,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 19:20:44,439.439 INFO    ] 200
[2026-06-05 19:20:44,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:44,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:20:44,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:20:44,639.639 INFO    ] No camera update needed
[2026-06-05 19:20:44,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:20:44,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:20:44,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:20:44,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:20:46,702.702 INFO    ] ================================================
[2026-06-05 19:20:46,718.718 INFO    ] Launching Daemon at Fri Jun  5 19:20:46 IST 2026
[2026-06-05 19:20:46,729.729 INFO    ] ================================================
[2026-06-05 19:20:47,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:20:47
[2026-06-05 19:20:47,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:20:48,161.161 INFO    ] Initializing speech engine...
[2026-06-05 19:20:48,168.168 INFO    ] 2026-06-05 19:20:48
[2026-06-05 19:20:48,417.417 INFO    ] 2026-06-05 19:20:48
[2026-06-05 19:20:48,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:20:48,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:20:48,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:20:48,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:20:48,793.793 INFO    ] time= 05/06/2026 19:20:48
[2026-06-05 19:20:48,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:20:48,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:20:48,989.989 INFO    ] No existing commands found in stream
[2026-06-05 19:20:54,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:20:54,008.008 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 19:20:56,680.680 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:20:56,683.683 INFO    ] Checking for system updates...
[2026-06-05 19:20:56,719.719 INFO    ] 200
[2026-06-05 19:20:56,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:56,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:20:56,778.778 INFO    ] No update needed
[2026-06-05 19:20:56,780.780 INFO    ] Checking for camera pi updates...
[2026-06-05 19:20:56,814.814 INFO    ] 200
[2026-06-05 19:20:56,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:20:56,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:20:56,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:20:56,911.911 INFO    ] No camera update needed
[2026-06-05 19:20:56,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:20:56,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:20:56,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:20:56,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:20:58,966.966 INFO    ] ================================================
[2026-06-05 19:20:58,982.982 INFO    ] Launching Daemon at Fri Jun  5 19:20:58 IST 2026
[2026-06-05 19:20:58,993.993 INFO    ] ================================================
[2026-06-05 19:20:59,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:20:59
[2026-06-05 19:21:00,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:21:00,453.453 INFO    ] Initializing speech engine...
[2026-06-05 19:21:00,471.471 INFO    ] 2026-06-05 19:21:00
[2026-06-05 19:21:00,748.748 INFO    ] 2026-06-05 19:21:00
[2026-06-05 19:21:00,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:21:01,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:21:01,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:21:01,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:21:01,685.685 INFO    ] time= 05/06/2026 19:21:01
[2026-06-05 19:21:01,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:21:01,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:21:01,755.755 INFO    ] No existing commands found in stream
[2026-06-05 19:21:06,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:21:06,768.768 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 19:21:10,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:21:10,154.154 INFO    ] Checking for system updates...
[2026-06-05 19:21:10,194.194 INFO    ] 200
[2026-06-05 19:21:10,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:10,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:21:10,252.252 INFO    ] No update needed
[2026-06-05 19:21:10,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 19:21:10,292.292 INFO    ] 200
[2026-06-05 19:21:10,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:10,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:21:10,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:21:10,387.387 INFO    ] No camera update needed
[2026-06-05 19:21:10,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:21:10,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:21:10,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:21:10,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:21:12,442.442 INFO    ] ================================================
[2026-06-05 19:21:12,458.458 INFO    ] Launching Daemon at Fri Jun  5 19:21:12 IST 2026
[2026-06-05 19:21:12,472.472 INFO    ] ================================================
[2026-06-05 19:21:13,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:21:13
[2026-06-05 19:21:13,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:21:14,081.081 INFO    ] Initializing speech engine...
[2026-06-05 19:21:14,093.093 INFO    ] 2026-06-05 19:21:14
[2026-06-05 19:21:14,372.372 INFO    ] 2026-06-05 19:21:14
[2026-06-05 19:21:14,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:21:14,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:21:14,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:21:14,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:21:14,906.906 INFO    ] time= 05/06/2026 19:21:14
[2026-06-05 19:21:14,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:21:14,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:21:15,067.067 INFO    ] No existing commands found in stream
[2026-06-05 19:21:20,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:21:20,099.099 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 19:21:21,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:21:21,853.853 INFO    ] Checking for system updates...
[2026-06-05 19:21:21,891.891 INFO    ] 200
[2026-06-05 19:21:21,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:21,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:21:21,951.951 INFO    ] No update needed
[2026-06-05 19:21:21,954.954 INFO    ] Checking for camera pi updates...
[2026-06-05 19:21:21,989.989 INFO    ] 200
[2026-06-05 19:21:21,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:22,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:21:22,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:21:22,084.084 INFO    ] No camera update needed
[2026-06-05 19:21:22,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:21:22,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:21:22,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:21:22,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:21:24,143.143 INFO    ] ================================================
[2026-06-05 19:21:24,159.159 INFO    ] Launching Daemon at Fri Jun  5 19:21:24 IST 2026
[2026-06-05 19:21:24,169.169 INFO    ] ================================================
[2026-06-05 19:21:24,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:21:24
[2026-06-05 19:21:25,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:21:25,627.627 INFO    ] Initializing speech engine...
[2026-06-05 19:21:25,635.635 INFO    ] 2026-06-05 19:21:25
[2026-06-05 19:21:25,924.924 INFO    ] 2026-06-05 19:21:25
[2026-06-05 19:21:25,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:21:26,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:21:26,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:21:26,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:21:26,481.481 INFO    ] time= 05/06/2026 19:21:26
[2026-06-05 19:21:26,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:21:26,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:21:26,692.692 INFO    ] No existing commands found in stream
[2026-06-05 19:21:31,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:21:31,731.731 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 19:21:32,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:21:32,927.927 INFO    ] Checking for system updates...
[2026-06-05 19:21:32,968.968 INFO    ] 200
[2026-06-05 19:21:32,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:33,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:21:33,028.028 INFO    ] No update needed
[2026-06-05 19:21:33,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 19:21:33,067.067 INFO    ] 200
[2026-06-05 19:21:33,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:33,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:21:33,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:21:33,144.144 INFO    ] No camera update needed
[2026-06-05 19:21:33,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:21:33,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:21:33,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:21:33,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:21:35,207.207 INFO    ] ================================================
[2026-06-05 19:21:35,222.222 INFO    ] Launching Daemon at Fri Jun  5 19:21:35 IST 2026
[2026-06-05 19:21:35,233.233 INFO    ] ================================================
[2026-06-05 19:21:35,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:21:35
[2026-06-05 19:21:36,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:21:36,672.672 INFO    ] Initializing speech engine...
[2026-06-05 19:21:36,682.682 INFO    ] 2026-06-05 19:21:36
[2026-06-05 19:21:36,979.979 INFO    ] 2026-06-05 19:21:36
[2026-06-05 19:21:37,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:21:37,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:21:37,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:21:37,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:21:37,400.400 INFO    ] time= 05/06/2026 19:21:37
[2026-06-05 19:21:37,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:21:37,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:21:37,581.581 INFO    ] No existing commands found in stream
[2026-06-05 19:21:42,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:21:42,604.604 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 19:21:43,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:21:43,996.996 INFO    ] Checking for system updates...
[2026-06-05 19:21:44,033.033 INFO    ] 200
[2026-06-05 19:21:44,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:44,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:21:44,092.092 INFO    ] No update needed
[2026-06-05 19:21:44,094.094 INFO    ] Checking for camera pi updates...
[2026-06-05 19:21:44,129.129 INFO    ] 200
[2026-06-05 19:21:44,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:44,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:21:44,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:21:44,203.203 INFO    ] No camera update needed
[2026-06-05 19:21:44,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:21:44,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:21:44,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:21:44,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:21:46,259.259 INFO    ] ================================================
[2026-06-05 19:21:46,274.274 INFO    ] Launching Daemon at Fri Jun  5 19:21:46 IST 2026
[2026-06-05 19:21:46,285.285 INFO    ] ================================================
[2026-06-05 19:21:46,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:21:46
[2026-06-05 19:21:47,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:21:47,896.896 INFO    ] Initializing speech engine...
[2026-06-05 19:21:47,910.910 INFO    ] 2026-06-05 19:21:47
[2026-06-05 19:21:48,218.218 INFO    ] 2026-06-05 19:21:48
[2026-06-05 19:21:48,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:21:48,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:21:48,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:21:48,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:21:48,724.724 INFO    ] time= 05/06/2026 19:21:48
[2026-06-05 19:21:48,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:21:48,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:21:48,869.869 INFO    ] No existing commands found in stream
[2026-06-05 19:21:53,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:21:53,894.894 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 19:21:57,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:21:57,626.626 INFO    ] Checking for system updates...
[2026-06-05 19:21:57,663.663 INFO    ] 200
[2026-06-05 19:21:57,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:57,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:21:57,723.723 INFO    ] No update needed
[2026-06-05 19:21:57,726.726 INFO    ] Checking for camera pi updates...
[2026-06-05 19:21:57,760.760 INFO    ] 200
[2026-06-05 19:21:57,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:21:57,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:21:57,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:21:57,855.855 INFO    ] No camera update needed
[2026-06-05 19:21:57,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:21:57,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:21:57,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:21:57,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:21:59,914.914 INFO    ] ================================================
[2026-06-05 19:21:59,929.929 INFO    ] Launching Daemon at Fri Jun  5 19:21:59 IST 2026
[2026-06-05 19:21:59,941.941 INFO    ] ================================================
[2026-06-05 19:22:00,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:22:00
[2026-06-05 19:22:01,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:22:01,573.573 INFO    ] Initializing speech engine...
[2026-06-05 19:22:01,577.577 INFO    ] 2026-06-05 19:22:01
[2026-06-05 19:22:01,895.895 INFO    ] 2026-06-05 19:22:01
[2026-06-05 19:22:01,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:22:02,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:22:02,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:22:02,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:22:02,912.912 INFO    ] time= 05/06/2026 19:22:02
[2026-06-05 19:22:02,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:22:02,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:22:03,104.104 INFO    ] No existing commands found in stream
[2026-06-05 19:22:08,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:22:08,132.132 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 19:22:11,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:22:11,838.838 INFO    ] Checking for system updates...
[2026-06-05 19:22:11,875.875 INFO    ] 200
[2026-06-05 19:22:11,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:11,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:22:11,939.939 INFO    ] No update needed
[2026-06-05 19:22:11,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 19:22:11,975.975 INFO    ] 200
[2026-06-05 19:22:11,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:12,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:22:12,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:22:12,062.062 INFO    ] No camera update needed
[2026-06-05 19:22:12,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:22:12,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:22:12,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:22:12,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:22:14,118.118 INFO    ] ================================================
[2026-06-05 19:22:14,133.133 INFO    ] Launching Daemon at Fri Jun  5 19:22:14 IST 2026
[2026-06-05 19:22:14,144.144 INFO    ] ================================================
[2026-06-05 19:22:14,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:22:14
[2026-06-05 19:22:15,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:22:15,785.785 INFO    ] Initializing speech engine...
[2026-06-05 19:22:15,797.797 INFO    ] 2026-06-05 19:22:15
[2026-06-05 19:22:16,084.084 INFO    ] 2026-06-05 19:22:16
[2026-06-05 19:22:16,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:22:16,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:22:16,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:22:16,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:22:16,636.636 INFO    ] time= 05/06/2026 19:22:16
[2026-06-05 19:22:16,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:22:16,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:22:16,793.793 INFO    ] No existing commands found in stream
[2026-06-05 19:22:21,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:22:21,818.818 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 19:22:22,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:22:22,563.563 INFO    ] Checking for system updates...
[2026-06-05 19:22:22,600.600 INFO    ] 200
[2026-06-05 19:22:22,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:22,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:22:22,660.660 INFO    ] No update needed
[2026-06-05 19:22:22,663.663 INFO    ] Checking for camera pi updates...
[2026-06-05 19:22:22,701.701 INFO    ] 200
[2026-06-05 19:22:22,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:22,745.745 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:22:22,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:22:22,789.789 INFO    ] No camera update needed
[2026-06-05 19:22:22,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:22:22,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:22:22,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:22:22,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:22:24,845.845 INFO    ] ================================================
[2026-06-05 19:22:24,860.860 INFO    ] Launching Daemon at Fri Jun  5 19:22:24 IST 2026
[2026-06-05 19:22:24,872.872 INFO    ] ================================================
[2026-06-05 19:22:25,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:22:25
[2026-06-05 19:22:26,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:22:26,338.338 INFO    ] Initializing speech engine...
[2026-06-05 19:22:26,348.348 INFO    ] 2026-06-05 19:22:26
[2026-06-05 19:22:26,607.607 INFO    ] 2026-06-05 19:22:26
[2026-06-05 19:22:26,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:22:26,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:22:26,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:22:27,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:22:27,100.100 INFO    ] time= 05/06/2026 19:22:27
[2026-06-05 19:22:27,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:22:27,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:22:27,362.362 INFO    ] No existing commands found in stream
[2026-06-05 19:22:32,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:22:32,380.380 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 19:22:34,473.473 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:22:34,476.476 INFO    ] Checking for system updates...
[2026-06-05 19:22:34,512.512 INFO    ] 200
[2026-06-05 19:22:34,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:34,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:22:34,570.570 INFO    ] No update needed
[2026-06-05 19:22:34,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 19:22:34,606.606 INFO    ] 200
[2026-06-05 19:22:34,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:34,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:22:34,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:22:34,691.691 INFO    ] No camera update needed
[2026-06-05 19:22:34,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:22:34,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:22:34,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:22:34,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:22:36,748.748 INFO    ] ================================================
[2026-06-05 19:22:36,764.764 INFO    ] Launching Daemon at Fri Jun  5 19:22:36 IST 2026
[2026-06-05 19:22:36,774.774 INFO    ] ================================================
[2026-06-05 19:22:37,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:22:37
[2026-06-05 19:22:38,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:22:38,416.416 INFO    ] Initializing speech engine...
[2026-06-05 19:22:38,427.427 INFO    ] 2026-06-05 19:22:38
[2026-06-05 19:22:38,701.701 INFO    ] 2026-06-05 19:22:38
[2026-06-05 19:22:38,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:22:38,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:22:38,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:22:39,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:22:39,086.086 INFO    ] time= 05/06/2026 19:22:39
[2026-06-05 19:22:39,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:22:39,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:22:39,212.212 INFO    ] No existing commands found in stream
[2026-06-05 19:22:44,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:22:44,228.228 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 19:22:47,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:22:47,042.042 INFO    ] Checking for system updates...
[2026-06-05 19:22:47,079.079 INFO    ] 200
[2026-06-05 19:22:47,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:47,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:22:47,138.138 INFO    ] No update needed
[2026-06-05 19:22:47,140.140 INFO    ] Checking for camera pi updates...
[2026-06-05 19:22:47,178.178 INFO    ] 200
[2026-06-05 19:22:47,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:47,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:22:47,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:22:47,376.376 INFO    ] No camera update needed
[2026-06-05 19:22:47,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:22:47,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:22:47,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:22:47,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:22:49,431.431 INFO    ] ================================================
[2026-06-05 19:22:49,447.447 INFO    ] Launching Daemon at Fri Jun  5 19:22:49 IST 2026
[2026-06-05 19:22:49,458.458 INFO    ] ================================================
[2026-06-05 19:22:50,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:22:50
[2026-06-05 19:22:50,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:22:50,882.882 INFO    ] Initializing speech engine...
[2026-06-05 19:22:50,891.891 INFO    ] 2026-06-05 19:22:50
[2026-06-05 19:22:51,138.138 INFO    ] 2026-06-05 19:22:51
[2026-06-05 19:22:51,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:22:51,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:22:51,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:22:51,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:22:51,627.627 INFO    ] time= 05/06/2026 19:22:51
[2026-06-05 19:22:51,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:22:51,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:22:51,774.774 INFO    ] No existing commands found in stream
[2026-06-05 19:22:56,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:22:56,792.792 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 19:22:59,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:22:59,016.016 INFO    ] Checking for system updates...
[2026-06-05 19:22:59,052.052 INFO    ] 200
[2026-06-05 19:22:59,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:59,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:22:59,109.109 INFO    ] No update needed
[2026-06-05 19:22:59,112.112 INFO    ] Checking for camera pi updates...
[2026-06-05 19:22:59,146.146 INFO    ] 200
[2026-06-05 19:22:59,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:22:59,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:22:59,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:22:59,238.238 INFO    ] No camera update needed
[2026-06-05 19:22:59,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:22:59,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:22:59,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:22:59,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:23:01,314.314 INFO    ] ================================================
[2026-06-05 19:23:01,344.344 INFO    ] Launching Daemon at Fri Jun  5 19:23:01 IST 2026
[2026-06-05 19:23:01,366.366 INFO    ] ================================================
[2026-06-05 19:23:02,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:23:02
[2026-06-05 19:23:02,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:23:03,127.127 INFO    ] Initializing speech engine...
[2026-06-05 19:23:03,138.138 INFO    ] 2026-06-05 19:23:03
[2026-06-05 19:23:03,408.408 INFO    ] 2026-06-05 19:23:03
[2026-06-05 19:23:03,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:23:04,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:23:04,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:23:04,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:23:04,479.479 INFO    ] time= 05/06/2026 19:23:04
[2026-06-05 19:23:04,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:23:04,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:23:04,653.653 INFO    ] No existing commands found in stream
[2026-06-05 19:23:09,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:23:09,670.670 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 19:23:12,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:23:12,581.581 INFO    ] Checking for system updates...
[2026-06-05 19:23:12,797.797 INFO    ] 200
[2026-06-05 19:23:12,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:23:12,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:23:12,864.864 INFO    ] No update needed
[2026-06-05 19:23:12,867.867 INFO    ] Checking for camera pi updates...
[2026-06-05 19:23:12,906.906 INFO    ] 200
[2026-06-05 19:23:12,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:23:12,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:23:13,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:23:13,003.003 INFO    ] No camera update needed
[2026-06-05 19:23:13,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:23:13,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:23:13,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:23:13,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:23:15,062.062 INFO    ] ================================================
[2026-06-05 19:23:15,078.078 INFO    ] Launching Daemon at Fri Jun  5 19:23:15 IST 2026
[2026-06-05 19:23:15,089.089 INFO    ] ================================================
[2026-06-05 19:23:15,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:23:15
[2026-06-05 19:23:16,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:23:16,672.672 INFO    ] Initializing speech engine...
[2026-06-05 19:23:16,682.682 INFO    ] 2026-06-05 19:23:16
[2026-06-05 19:23:16,971.971 INFO    ] 2026-06-05 19:23:16
[2026-06-05 19:23:17,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:23:17,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:23:17,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:23:17,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:23:17,414.414 INFO    ] time= 05/06/2026 19:23:17
[2026-06-05 19:23:17,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:23:17,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:23:17,655.655 INFO    ] No existing commands found in stream
[2026-06-05 19:23:22,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:23:24,774.774 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 19:23:28,075.075 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:23:28,083.083 INFO    ] Checking for system updates...
[2026-06-05 19:23:28,119.119 INFO    ] 200
[2026-06-05 19:23:28,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:23:28,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:23:28,177.177 INFO    ] No update needed
[2026-06-05 19:23:28,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 19:23:28,217.217 INFO    ] 200
[2026-06-05 19:23:28,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:23:28,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:23:28,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:23:28,307.307 INFO    ] No camera update needed
[2026-06-05 19:23:28,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:23:28,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:23:28,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:23:28,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:23:30,363.363 INFO    ] ================================================
[2026-06-05 19:23:30,378.378 INFO    ] Launching Daemon at Fri Jun  5 19:23:30 IST 2026
[2026-06-05 19:23:30,389.389 INFO    ] ================================================
[2026-06-05 19:23:30,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:23:30
[2026-06-05 19:23:31,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:23:31,861.861 INFO    ] Initializing speech engine...
[2026-06-05 19:23:31,876.876 INFO    ] 2026-06-05 19:23:31
[2026-06-05 19:23:32,148.148 INFO    ] 2026-06-05 19:23:32
[2026-06-05 19:23:32,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:23:34,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:23:34,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:23:34,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:23:34,796.796 INFO    ] time= 05/06/2026 19:23:34
[2026-06-05 19:23:34,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:23:34,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:23:34,897.897 INFO    ] No existing commands found in stream
[2026-06-05 19:23:39,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:23:39,931.931 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 19:23:44,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:23:44,339.339 INFO    ] Checking for system updates...
[2026-06-05 19:23:44,375.375 INFO    ] 200
[2026-06-05 19:23:44,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:23:44,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:23:44,433.433 INFO    ] No update needed
[2026-06-05 19:23:44,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 19:23:44,474.474 INFO    ] 200
[2026-06-05 19:23:44,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:23:44,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:23:44,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:23:44,565.565 INFO    ] No camera update needed
[2026-06-05 19:23:44,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:23:44,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:23:44,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:23:44,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:23:46,622.622 INFO    ] ================================================
[2026-06-05 19:23:46,638.638 INFO    ] Launching Daemon at Fri Jun  5 19:23:46 IST 2026
[2026-06-05 19:23:46,649.649 INFO    ] ================================================
[2026-06-05 19:23:47,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:23:47
[2026-06-05 19:23:47,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:23:48,117.117 INFO    ] Initializing speech engine...
[2026-06-05 19:23:48,125.125 INFO    ] 2026-06-05 19:23:48
[2026-06-05 19:23:48,382.382 INFO    ] 2026-06-05 19:23:48
[2026-06-05 19:23:48,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:23:48,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:23:48,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:23:48,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:23:48,840.840 INFO    ] time= 05/06/2026 19:23:48
[2026-06-05 19:23:48,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:23:48,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:23:49,080.080 INFO    ] No existing commands found in stream
[2026-06-05 19:23:54,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:23:54,102.102 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 19:23:56,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:23:56,653.653 INFO    ] Checking for system updates...
[2026-06-05 19:23:56,690.690 INFO    ] 200
[2026-06-05 19:23:56,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:23:56,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:23:56,755.755 INFO    ] No update needed
[2026-06-05 19:23:56,758.758 INFO    ] Checking for camera pi updates...
[2026-06-05 19:23:56,792.792 INFO    ] 200
[2026-06-05 19:23:56,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:23:56,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:23:56,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:23:56,870.870 INFO    ] No camera update needed
[2026-06-05 19:23:56,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:23:56,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:23:56,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:23:56,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:23:58,925.925 INFO    ] ================================================
[2026-06-05 19:23:58,941.941 INFO    ] Launching Daemon at Fri Jun  5 19:23:58 IST 2026
[2026-06-05 19:23:58,951.951 INFO    ] ================================================
[2026-06-05 19:23:59,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:23:59
[2026-06-05 19:24:00,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:24:00,365.365 INFO    ] Initializing speech engine...
[2026-06-05 19:24:00,371.371 INFO    ] 2026-06-05 19:24:00
[2026-06-05 19:24:00,671.671 INFO    ] 2026-06-05 19:24:00
[2026-06-05 19:24:00,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:24:00,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:24:00,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:24:01,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:24:01,072.072 INFO    ] time= 05/06/2026 19:24:01
[2026-06-05 19:24:01,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:24:01,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:24:01,202.202 INFO    ] No existing commands found in stream
[2026-06-05 19:24:06,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:24:06,214.214 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 19:24:07,709.709 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:24:07,712.712 INFO    ] Checking for system updates...
[2026-06-05 19:24:07,755.755 INFO    ] 200
[2026-06-05 19:24:07,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:07,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:24:07,824.824 INFO    ] No update needed
[2026-06-05 19:24:07,828.828 INFO    ] Checking for camera pi updates...
[2026-06-05 19:24:07,864.864 INFO    ] 200
[2026-06-05 19:24:07,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:07,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:24:07,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:24:07,954.954 INFO    ] No camera update needed
[2026-06-05 19:24:07,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:24:07,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:24:07,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:24:07,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:24:10,010.010 INFO    ] ================================================
[2026-06-05 19:24:10,026.026 INFO    ] Launching Daemon at Fri Jun  5 19:24:10 IST 2026
[2026-06-05 19:24:10,037.037 INFO    ] ================================================
[2026-06-05 19:24:10,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:24:10
[2026-06-05 19:24:11,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:24:11,707.707 INFO    ] Initializing speech engine...
[2026-06-05 19:24:11,714.714 INFO    ] 2026-06-05 19:24:11
[2026-06-05 19:24:12,005.005 INFO    ] 2026-06-05 19:24:11
[2026-06-05 19:24:12,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:24:12,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:24:12,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:24:12,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:24:12,545.545 INFO    ] time= 05/06/2026 19:24:12
[2026-06-05 19:24:12,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:24:12,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:24:12,716.716 INFO    ] No existing commands found in stream
[2026-06-05 19:24:17,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:24:17,752.752 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-05 19:24:19,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:24:19,158.158 INFO    ] Checking for system updates...
[2026-06-05 19:24:19,196.196 INFO    ] 200
[2026-06-05 19:24:19,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:19,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:24:19,258.258 INFO    ] No update needed
[2026-06-05 19:24:19,260.260 INFO    ] Checking for camera pi updates...
[2026-06-05 19:24:19,296.296 INFO    ] 200
[2026-06-05 19:24:19,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:19,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:24:19,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:24:19,387.387 INFO    ] No camera update needed
[2026-06-05 19:24:19,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:24:19,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:24:19,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:24:19,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:24:21,443.443 INFO    ] ================================================
[2026-06-05 19:24:21,458.458 INFO    ] Launching Daemon at Fri Jun  5 19:24:21 IST 2026
[2026-06-05 19:24:21,469.469 INFO    ] ================================================
[2026-06-05 19:24:22,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:24:22
[2026-06-05 19:24:22,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:24:22,908.908 INFO    ] Initializing speech engine...
[2026-06-05 19:24:22,915.915 INFO    ] 2026-06-05 19:24:22
[2026-06-05 19:24:23,173.173 INFO    ] 2026-06-05 19:24:23
[2026-06-05 19:24:23,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:24:23,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:24:23,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:24:23,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:24:23,631.631 INFO    ] time= 05/06/2026 19:24:23
[2026-06-05 19:24:23,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:24:23,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:24:23,870.870 INFO    ] No existing commands found in stream
[2026-06-05 19:24:28,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:24:28,892.892 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 19:24:30,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:24:30,333.333 INFO    ] Checking for system updates...
[2026-06-05 19:24:30,374.374 INFO    ] 200
[2026-06-05 19:24:30,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:30,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:24:30,440.440 INFO    ] No update needed
[2026-06-05 19:24:30,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 19:24:30,481.481 INFO    ] 200
[2026-06-05 19:24:30,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:30,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:24:30,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:24:30,553.553 INFO    ] No camera update needed
[2026-06-05 19:24:30,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:24:30,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:24:30,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:24:30,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:24:32,612.612 INFO    ] ================================================
[2026-06-05 19:24:32,628.628 INFO    ] Launching Daemon at Fri Jun  5 19:24:32 IST 2026
[2026-06-05 19:24:32,639.639 INFO    ] ================================================
[2026-06-05 19:24:33,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:24:33
[2026-06-05 19:24:33,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:24:34,125.125 INFO    ] Initializing speech engine...
[2026-06-05 19:24:34,131.131 INFO    ] 2026-06-05 19:24:34
[2026-06-05 19:24:34,390.390 INFO    ] 2026-06-05 19:24:34
[2026-06-05 19:24:34,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:24:35,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:24:35,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:24:35,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:24:35,826.826 INFO    ] time= 05/06/2026 19:24:35
[2026-06-05 19:24:35,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:24:35,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:24:35,915.915 INFO    ] No existing commands found in stream
[2026-06-05 19:24:40,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:24:40,930.930 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 19:24:43,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:24:43,579.579 INFO    ] Checking for system updates...
[2026-06-05 19:24:43,620.620 INFO    ] 200
[2026-06-05 19:24:43,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:43,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:24:43,678.678 INFO    ] No update needed
[2026-06-05 19:24:43,680.680 INFO    ] Checking for camera pi updates...
[2026-06-05 19:24:43,714.714 INFO    ] 200
[2026-06-05 19:24:43,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:43,758.758 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:24:43,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:24:43,801.801 INFO    ] No camera update needed
[2026-06-05 19:24:43,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:24:43,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:24:43,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:24:43,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:24:45,858.858 INFO    ] ================================================
[2026-06-05 19:24:45,874.874 INFO    ] Launching Daemon at Fri Jun  5 19:24:45 IST 2026
[2026-06-05 19:24:45,885.885 INFO    ] ================================================
[2026-06-05 19:24:46,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:24:46
[2026-06-05 19:24:47,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:24:47,578.578 INFO    ] Initializing speech engine...
[2026-06-05 19:24:47,589.589 INFO    ] 2026-06-05 19:24:47
[2026-06-05 19:24:47,880.880 INFO    ] 2026-06-05 19:24:47
[2026-06-05 19:24:47,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:24:48,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:24:48,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:24:48,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:24:48,411.411 INFO    ] time= 05/06/2026 19:24:48
[2026-06-05 19:24:48,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:24:48,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:24:48,564.564 INFO    ] No existing commands found in stream
[2026-06-05 19:24:53,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:24:53,591.591 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 19:24:56,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:24:56,516.516 INFO    ] Checking for system updates...
[2026-06-05 19:24:56,553.553 INFO    ] 200
[2026-06-05 19:24:56,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:56,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:24:56,613.613 INFO    ] No update needed
[2026-06-05 19:24:56,615.615 INFO    ] Checking for camera pi updates...
[2026-06-05 19:24:56,650.650 INFO    ] 200
[2026-06-05 19:24:56,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:24:56,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:24:56,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:24:56,833.833 INFO    ] No camera update needed
[2026-06-05 19:24:56,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:24:56,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:24:56,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:24:56,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:24:58,889.889 INFO    ] ================================================
[2026-06-05 19:24:58,904.904 INFO    ] Launching Daemon at Fri Jun  5 19:24:58 IST 2026
[2026-06-05 19:24:58,916.916 INFO    ] ================================================
[2026-06-05 19:24:59,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:24:59
[2026-06-05 19:25:00,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:25:00,651.651 INFO    ] Initializing speech engine...
[2026-06-05 19:25:00,655.655 INFO    ] 2026-06-05 19:25:00
[2026-06-05 19:25:01,025.025 INFO    ] 2026-06-05 19:25:00
[2026-06-05 19:25:01,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:25:01,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:25:01,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:25:01,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:25:01,531.531 INFO    ] time= 05/06/2026 19:25:01
[2026-06-05 19:25:01,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:25:01,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:25:01,734.734 INFO    ] No existing commands found in stream
[2026-06-05 19:25:06,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:25:06,771.771 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 19:25:10,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:25:10,690.690 INFO    ] Checking for system updates...
[2026-06-05 19:25:10,726.726 INFO    ] 200
[2026-06-05 19:25:10,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:10,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:25:10,785.785 INFO    ] No update needed
[2026-06-05 19:25:10,788.788 INFO    ] Checking for camera pi updates...
[2026-06-05 19:25:10,825.825 INFO    ] 200
[2026-06-05 19:25:10,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:10,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:25:10,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:25:10,899.899 INFO    ] No camera update needed
[2026-06-05 19:25:10,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:25:10,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:25:10,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:25:10,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:25:12,955.955 INFO    ] ================================================
[2026-06-05 19:25:12,971.971 INFO    ] Launching Daemon at Fri Jun  5 19:25:12 IST 2026
[2026-06-05 19:25:12,983.983 INFO    ] ================================================
[2026-06-05 19:25:13,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:25:13
[2026-06-05 19:25:14,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:25:14,407.407 INFO    ] Initializing speech engine...
[2026-06-05 19:25:14,416.416 INFO    ] 2026-06-05 19:25:14
[2026-06-05 19:25:14,667.667 INFO    ] 2026-06-05 19:25:14
[2026-06-05 19:25:14,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:25:14,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:25:14,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:25:15,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:25:15,148.148 INFO    ] time= 05/06/2026 19:25:15
[2026-06-05 19:25:15,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:25:15,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:25:15,389.389 INFO    ] No existing commands found in stream
[2026-06-05 19:25:20,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:25:20,417.417 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 19:25:22,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:25:22,311.311 INFO    ] Checking for system updates...
[2026-06-05 19:25:22,349.349 INFO    ] 200
[2026-06-05 19:25:22,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:22,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:25:22,409.409 INFO    ] No update needed
[2026-06-05 19:25:22,411.411 INFO    ] Checking for camera pi updates...
[2026-06-05 19:25:22,450.450 INFO    ] 200
[2026-06-05 19:25:22,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:22,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:25:22,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:25:22,551.551 INFO    ] No camera update needed
[2026-06-05 19:25:22,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:25:22,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:25:22,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:25:22,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:25:24,609.609 INFO    ] ================================================
[2026-06-05 19:25:24,624.624 INFO    ] Launching Daemon at Fri Jun  5 19:25:24 IST 2026
[2026-06-05 19:25:24,635.635 INFO    ] ================================================
[2026-06-05 19:25:25,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:25:25
[2026-06-05 19:25:25,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:25:26,275.275 INFO    ] Initializing speech engine...
[2026-06-05 19:25:26,284.284 INFO    ] 2026-06-05 19:25:26
[2026-06-05 19:25:26,571.571 INFO    ] 2026-06-05 19:25:26
[2026-06-05 19:25:26,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:25:26,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:25:26,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:25:27,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:25:27,107.107 INFO    ] time= 05/06/2026 19:25:27
[2026-06-05 19:25:27,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:25:27,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:25:27,309.309 INFO    ] No existing commands found in stream
[2026-06-05 19:25:32,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:25:32,344.344 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 19:25:33,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:25:33,114.114 INFO    ] Checking for system updates...
[2026-06-05 19:25:33,153.153 INFO    ] 200
[2026-06-05 19:25:33,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:33,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:25:33,233.233 INFO    ] No update needed
[2026-06-05 19:25:33,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 19:25:33,279.279 INFO    ] 200
[2026-06-05 19:25:33,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:33,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:25:33,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:25:33,364.364 INFO    ] No camera update needed
[2026-06-05 19:25:33,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:25:33,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:25:33,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:25:33,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:25:35,426.426 INFO    ] ================================================
[2026-06-05 19:25:35,451.451 INFO    ] Launching Daemon at Fri Jun  5 19:25:35 IST 2026
[2026-06-05 19:25:35,463.463 INFO    ] ================================================
[2026-06-05 19:25:36,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:25:36
[2026-06-05 19:25:36,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:25:37,098.098 INFO    ] Initializing speech engine...
[2026-06-05 19:25:37,112.112 INFO    ] 2026-06-05 19:25:37
[2026-06-05 19:25:37,419.419 INFO    ] 2026-06-05 19:25:37
[2026-06-05 19:25:37,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:25:37,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:25:37,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:25:37,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:25:37,950.950 INFO    ] time= 05/06/2026 19:25:37
[2026-06-05 19:25:37,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:25:37,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:25:38,108.108 INFO    ] No existing commands found in stream
[2026-06-05 19:25:43,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:25:43,133.133 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 19:25:43,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:25:43,599.599 INFO    ] Checking for system updates...
[2026-06-05 19:25:43,641.641 INFO    ] 200
[2026-06-05 19:25:43,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:43,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:25:43,702.702 INFO    ] No update needed
[2026-06-05 19:25:43,705.705 INFO    ] Checking for camera pi updates...
[2026-06-05 19:25:43,740.740 INFO    ] 200
[2026-06-05 19:25:43,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:43,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:25:43,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:25:43,829.829 INFO    ] No camera update needed
[2026-06-05 19:25:43,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:25:43,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:25:43,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:25:43,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:25:45,885.885 INFO    ] ================================================
[2026-06-05 19:25:45,900.900 INFO    ] Launching Daemon at Fri Jun  5 19:25:45 IST 2026
[2026-06-05 19:25:45,911.911 INFO    ] ================================================
[2026-06-05 19:25:46,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:25:46
[2026-06-05 19:25:47,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:25:47,325.325 INFO    ] Initializing speech engine...
[2026-06-05 19:25:47,338.338 INFO    ] 2026-06-05 19:25:47
[2026-06-05 19:25:47,621.621 INFO    ] 2026-06-05 19:25:47
[2026-06-05 19:25:47,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:25:47,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:25:47,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:25:48,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:25:48,041.041 INFO    ] time= 05/06/2026 19:25:48
[2026-06-05 19:25:48,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:25:48,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:25:48,194.194 INFO    ] No existing commands found in stream
[2026-06-05 19:25:53,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:25:53,217.217 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 19:25:54,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:25:54,785.785 INFO    ] Checking for system updates...
[2026-06-05 19:25:54,821.821 INFO    ] 200
[2026-06-05 19:25:54,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:54,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:25:54,880.880 INFO    ] No update needed
[2026-06-05 19:25:54,882.882 INFO    ] Checking for camera pi updates...
[2026-06-05 19:25:54,916.916 INFO    ] 200
[2026-06-05 19:25:54,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:25:54,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:25:55,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:25:55,006.006 INFO    ] No camera update needed
[2026-06-05 19:25:55,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:25:55,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:25:55,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:25:55,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:25:57,062.062 INFO    ] ================================================
[2026-06-05 19:25:57,077.077 INFO    ] Launching Daemon at Fri Jun  5 19:25:57 IST 2026
[2026-06-05 19:25:57,087.087 INFO    ] ================================================
[2026-06-05 19:25:57,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:25:57
[2026-06-05 19:25:58,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:25:58,525.525 INFO    ] Initializing speech engine...
[2026-06-05 19:25:58,534.534 INFO    ] 2026-06-05 19:25:58
[2026-06-05 19:25:58,791.791 INFO    ] 2026-06-05 19:25:58
[2026-06-05 19:25:58,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:25:59,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:25:59,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:25:59,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:25:59,331.331 INFO    ] time= 05/06/2026 19:25:59
[2026-06-05 19:25:59,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:25:59,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:25:59,470.470 INFO    ] No existing commands found in stream
[2026-06-05 19:26:04,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:26:04,497.497 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 19:26:08,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:26:08,673.673 INFO    ] Checking for system updates...
[2026-06-05 19:26:08,710.710 INFO    ] 200
[2026-06-05 19:26:08,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:26:08,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:26:08,768.768 INFO    ] No update needed
[2026-06-05 19:26:08,770.770 INFO    ] Checking for camera pi updates...
[2026-06-05 19:26:08,805.805 INFO    ] 200
[2026-06-05 19:26:08,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:26:08,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:26:08,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:26:08,884.884 INFO    ] No camera update needed
[2026-06-05 19:26:08,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:26:08,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:26:08,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:26:08,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:26:10,942.942 INFO    ] ================================================
[2026-06-05 19:26:10,957.957 INFO    ] Launching Daemon at Fri Jun  5 19:26:10 IST 2026
[2026-06-05 19:26:10,968.968 INFO    ] ================================================
[2026-06-05 19:26:11,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:26:11
[2026-06-05 19:26:12,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:26:12,447.447 INFO    ] Initializing speech engine...
[2026-06-05 19:26:12,462.462 INFO    ] 2026-06-05 19:26:12
[2026-06-05 19:26:12,728.728 INFO    ] 2026-06-05 19:26:12
[2026-06-05 19:26:12,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:26:13,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:26:13,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:26:13,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:26:13,221.221 INFO    ] time= 05/06/2026 19:26:13
[2026-06-05 19:26:13,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:26:13,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:26:13,426.426 INFO    ] No existing commands found in stream
[2026-06-05 19:26:18,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:26:18,454.454 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 19:26:22,397.397 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:26:22,400.400 INFO    ] Checking for system updates...
[2026-06-05 19:26:22,437.437 INFO    ] 200
[2026-06-05 19:26:22,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:26:22,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:26:22,495.495 INFO    ] No update needed
[2026-06-05 19:26:22,498.498 INFO    ] Checking for camera pi updates...
[2026-06-05 19:26:22,536.536 INFO    ] 200
[2026-06-05 19:26:22,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:26:22,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:26:22,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:26:22,629.629 INFO    ] No camera update needed
[2026-06-05 19:26:22,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:26:22,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:26:22,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:26:22,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:26:24,689.689 INFO    ] ================================================
[2026-06-05 19:26:24,704.704 INFO    ] Launching Daemon at Fri Jun  5 19:26:24 IST 2026
[2026-06-05 19:26:24,715.715 INFO    ] ================================================
[2026-06-05 19:26:25,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:26:25
[2026-06-05 19:26:26,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:26:26,319.319 INFO    ] Initializing speech engine...
[2026-06-05 19:26:26,333.333 INFO    ] 2026-06-05 19:26:26
[2026-06-05 19:26:26,622.622 INFO    ] 2026-06-05 19:26:26
[2026-06-05 19:26:26,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:26:26,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:26:26,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:26:27,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:26:27,156.156 INFO    ] time= 05/06/2026 19:26:27
[2026-06-05 19:26:27,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:26:27,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:26:27,317.317 INFO    ] No existing commands found in stream
[2026-06-05 19:26:32,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:26:32,349.349 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 19:26:32,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:26:32,996.996 INFO    ] Checking for system updates...
[2026-06-05 19:26:33,034.034 INFO    ] 200
[2026-06-05 19:26:33,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:26:33,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:26:33,096.096 INFO    ] No update needed
[2026-06-05 19:26:33,099.099 INFO    ] Checking for camera pi updates...
[2026-06-05 19:26:33,135.135 INFO    ] 200
[2026-06-05 19:26:33,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:26:33,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:26:33,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:26:33,231.231 INFO    ] No camera update needed
[2026-06-05 19:26:33,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:26:33,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:26:33,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:26:33,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:26:35,292.292 INFO    ] ================================================
[2026-06-05 19:26:35,307.307 INFO    ] Launching Daemon at Fri Jun  5 19:26:35 IST 2026
[2026-06-05 19:26:35,319.319 INFO    ] ================================================
[2026-06-05 19:26:35,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:26:35
[2026-06-05 19:26:36,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:26:36,738.738 INFO    ] Initializing speech engine...
[2026-06-05 19:26:36,761.761 INFO    ] 2026-06-05 19:26:36
[2026-06-05 19:26:37,012.012 INFO    ] 2026-06-05 19:26:37
[2026-06-05 19:26:37,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:26:38,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:26:38,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:26:39,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:26:39,024.024 INFO    ] time= 05/06/2026 19:26:39
[2026-06-05 19:26:39,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:26:39,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:26:39,106.106 INFO    ] No existing commands found in stream
[2026-06-05 19:26:44,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:26:44,130.130 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 19:26:47,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:26:47,665.665 INFO    ] Checking for system updates...
[2026-06-05 19:26:47,701.701 INFO    ] 200
[2026-06-05 19:26:47,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:26:47,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:26:47,761.761 INFO    ] No update needed
[2026-06-05 19:26:47,763.763 INFO    ] Checking for camera pi updates...
[2026-06-05 19:26:47,798.798 INFO    ] 200
[2026-06-05 19:26:47,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:26:47,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:26:47,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:26:47,893.893 INFO    ] No camera update needed
[2026-06-05 19:26:47,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:26:47,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:26:47,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:26:47,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:26:49,950.950 INFO    ] ================================================
[2026-06-05 19:26:49,965.965 INFO    ] Launching Daemon at Fri Jun  5 19:26:49 IST 2026
[2026-06-05 19:26:49,976.976 INFO    ] ================================================
[2026-06-05 19:26:50,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:26:50
[2026-06-05 19:26:51,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:26:51,642.642 INFO    ] Initializing speech engine...
[2026-06-05 19:26:51,651.651 INFO    ] 2026-06-05 19:26:51
[2026-06-05 19:26:51,940.940 INFO    ] 2026-06-05 19:26:51
[2026-06-05 19:26:51,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:26:52,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:26:52,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:26:52,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:26:52,479.479 INFO    ] time= 05/06/2026 19:26:52
[2026-06-05 19:26:52,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:26:52,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:26:52,638.638 INFO    ] No existing commands found in stream
[2026-06-05 19:26:57,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:26:57,670.670 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 19:27:01,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:27:01,048.048 INFO    ] Checking for system updates...
[2026-06-05 19:27:01,087.087 INFO    ] 200
[2026-06-05 19:27:01,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:01,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:27:01,155.155 INFO    ] No update needed
[2026-06-05 19:27:01,158.158 INFO    ] Checking for camera pi updates...
[2026-06-05 19:27:01,197.197 INFO    ] 200
[2026-06-05 19:27:01,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:01,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:27:01,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:27:01,401.401 INFO    ] No camera update needed
[2026-06-05 19:27:01,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:27:01,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:27:01,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:27:01,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:27:03,463.463 INFO    ] ================================================
[2026-06-05 19:27:03,478.478 INFO    ] Launching Daemon at Fri Jun  5 19:27:03 IST 2026
[2026-06-05 19:27:03,489.489 INFO    ] ================================================
[2026-06-05 19:27:04,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:27:04
[2026-06-05 19:27:04,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:27:04,919.919 INFO    ] Initializing speech engine...
[2026-06-05 19:27:04,926.926 INFO    ] 2026-06-05 19:27:04
[2026-06-05 19:27:05,187.187 INFO    ] 2026-06-05 19:27:05
[2026-06-05 19:27:05,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:27:05,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:27:05,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:27:05,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:27:05,651.651 INFO    ] time= 05/06/2026 19:27:05
[2026-06-05 19:27:05,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:27:05,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:27:05,836.836 INFO    ] No existing commands found in stream
[2026-06-05 19:27:10,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:27:10,877.877 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 19:27:13,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:27:13,867.867 INFO    ] Checking for system updates...
[2026-06-05 19:27:13,904.904 INFO    ] 200
[2026-06-05 19:27:13,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:13,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:27:13,965.965 INFO    ] No update needed
[2026-06-05 19:27:13,968.968 INFO    ] Checking for camera pi updates...
[2026-06-05 19:27:14,003.003 INFO    ] 200
[2026-06-05 19:27:14,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:14,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:27:14,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:27:14,098.098 INFO    ] No camera update needed
[2026-06-05 19:27:14,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:27:14,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:27:14,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:27:14,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:27:16,158.158 INFO    ] ================================================
[2026-06-05 19:27:16,174.174 INFO    ] Launching Daemon at Fri Jun  5 19:27:16 IST 2026
[2026-06-05 19:27:16,184.184 INFO    ] ================================================
[2026-06-05 19:27:16,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:27:16
[2026-06-05 19:27:17,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:27:17,806.806 INFO    ] Initializing speech engine...
[2026-06-05 19:27:17,817.817 INFO    ] 2026-06-05 19:27:17
[2026-06-05 19:27:18,092.092 INFO    ] 2026-06-05 19:27:18
[2026-06-05 19:27:18,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:27:18,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:27:18,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:27:18,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:27:18,602.602 INFO    ] time= 05/06/2026 19:27:18
[2026-06-05 19:27:18,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:27:18,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:27:18,798.798 INFO    ] No existing commands found in stream
[2026-06-05 19:27:23,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:27:23,835.835 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 19:27:27,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:27:27,330.330 INFO    ] Checking for system updates...
[2026-06-05 19:27:27,367.367 INFO    ] 200
[2026-06-05 19:27:27,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:27,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:27:27,437.437 INFO    ] No update needed
[2026-06-05 19:27:27,439.439 INFO    ] Checking for camera pi updates...
[2026-06-05 19:27:27,474.474 INFO    ] 200
[2026-06-05 19:27:27,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:27,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:27:27,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:27:27,562.562 INFO    ] No camera update needed
[2026-06-05 19:27:27,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:27:27,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:27:27,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:27:27,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:27:29,619.619 INFO    ] ================================================
[2026-06-05 19:27:29,634.634 INFO    ] Launching Daemon at Fri Jun  5 19:27:29 IST 2026
[2026-06-05 19:27:29,645.645 INFO    ] ================================================
[2026-06-05 19:27:30,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:27:30
[2026-06-05 19:27:30,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:27:31,293.293 INFO    ] Initializing speech engine...
[2026-06-05 19:27:31,300.300 INFO    ] 2026-06-05 19:27:31
[2026-06-05 19:27:31,587.587 INFO    ] 2026-06-05 19:27:31
[2026-06-05 19:27:31,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:27:31,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:27:31,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:27:32,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:27:32,155.155 INFO    ] time= 05/06/2026 19:27:32
[2026-06-05 19:27:32,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:27:32,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:27:32,351.351 INFO    ] No existing commands found in stream
[2026-06-05 19:27:37,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:27:37,398.398 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 19:27:40,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:27:40,558.558 INFO    ] Checking for system updates...
[2026-06-05 19:27:40,596.596 INFO    ] 200
[2026-06-05 19:27:40,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:40,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:27:40,654.654 INFO    ] No update needed
[2026-06-05 19:27:40,657.657 INFO    ] Checking for camera pi updates...
[2026-06-05 19:27:40,695.695 INFO    ] 200
[2026-06-05 19:27:40,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:40,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:27:40,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:27:40,787.787 INFO    ] No camera update needed
[2026-06-05 19:27:40,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:27:40,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:27:40,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:27:40,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:27:42,848.848 INFO    ] ================================================
[2026-06-05 19:27:42,864.864 INFO    ] Launching Daemon at Fri Jun  5 19:27:42 IST 2026
[2026-06-05 19:27:42,874.874 INFO    ] ================================================
[2026-06-05 19:27:43,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:27:43
[2026-06-05 19:27:44,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:27:44,338.338 INFO    ] Initializing speech engine...
[2026-06-05 19:27:44,346.346 INFO    ] 2026-06-05 19:27:44
[2026-06-05 19:27:44,637.637 INFO    ] 2026-06-05 19:27:44
[2026-06-05 19:27:44,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:27:44,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:27:44,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:27:45,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:27:45,109.109 INFO    ] time= 05/06/2026 19:27:45
[2026-06-05 19:27:45,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:27:45,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:27:45,294.294 INFO    ] No existing commands found in stream
[2026-06-05 19:27:50,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:27:50,327.327 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 19:27:51,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:27:51,986.986 INFO    ] Checking for system updates...
[2026-06-05 19:27:52,022.022 INFO    ] 200
[2026-06-05 19:27:52,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:52,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:27:52,082.082 INFO    ] No update needed
[2026-06-05 19:27:52,084.084 INFO    ] Checking for camera pi updates...
[2026-06-05 19:27:52,119.119 INFO    ] 200
[2026-06-05 19:27:52,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:27:52,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:27:52,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:27:52,192.192 INFO    ] No camera update needed
[2026-06-05 19:27:52,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:27:52,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:27:52,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:27:52,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:27:54,248.248 INFO    ] ================================================
[2026-06-05 19:27:54,263.263 INFO    ] Launching Daemon at Fri Jun  5 19:27:54 IST 2026
[2026-06-05 19:27:54,274.274 INFO    ] ================================================
[2026-06-05 19:27:54,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:27:54
[2026-06-05 19:27:55,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:27:55,749.749 INFO    ] Initializing speech engine...
[2026-06-05 19:27:55,763.763 INFO    ] 2026-06-05 19:27:55
[2026-06-05 19:27:56,075.075 INFO    ] 2026-06-05 19:27:56
[2026-06-05 19:27:56,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:27:56,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:27:56,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:27:56,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:27:56,437.437 INFO    ] time= 05/06/2026 19:27:56
[2026-06-05 19:27:56,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:27:56,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:27:56,591.591 INFO    ] No existing commands found in stream
[2026-06-05 19:28:01,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:28:01,607.607 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 19:28:05,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:28:05,579.579 INFO    ] Checking for system updates...
[2026-06-05 19:28:05,626.626 INFO    ] 200
[2026-06-05 19:28:05,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:05,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:28:05,686.686 INFO    ] No update needed
[2026-06-05 19:28:05,694.694 INFO    ] Checking for camera pi updates...
[2026-06-05 19:28:05,739.739 INFO    ] 200
[2026-06-05 19:28:05,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:05,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:28:05,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:28:05,838.838 INFO    ] No camera update needed
[2026-06-05 19:28:05,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:28:05,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:28:05,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:28:05,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:28:07,896.896 INFO    ] ================================================
[2026-06-05 19:28:07,912.912 INFO    ] Launching Daemon at Fri Jun  5 19:28:07 IST 2026
[2026-06-05 19:28:07,922.922 INFO    ] ================================================
[2026-06-05 19:28:08,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:28:08
[2026-06-05 19:28:09,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:28:09,434.434 INFO    ] Initializing speech engine...
[2026-06-05 19:28:09,445.445 INFO    ] 2026-06-05 19:28:09
[2026-06-05 19:28:09,724.724 INFO    ] 2026-06-05 19:28:09
[2026-06-05 19:28:09,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:28:10,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:28:10,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:28:11,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:28:11,203.203 INFO    ] time= 05/06/2026 19:28:11
[2026-06-05 19:28:11,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:28:11,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:28:11,272.272 INFO    ] No existing commands found in stream
[2026-06-05 19:28:16,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:28:16,286.286 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 19:28:17,359.359 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:28:17,361.361 INFO    ] Checking for system updates...
[2026-06-05 19:28:17,400.400 INFO    ] 200
[2026-06-05 19:28:17,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:17,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:28:17,459.459 INFO    ] No update needed
[2026-06-05 19:28:17,461.461 INFO    ] Checking for camera pi updates...
[2026-06-05 19:28:17,495.495 INFO    ] 200
[2026-06-05 19:28:17,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:17,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:28:17,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:28:17,586.586 INFO    ] No camera update needed
[2026-06-05 19:28:17,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:28:17,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:28:17,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:28:17,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:28:19,642.642 INFO    ] ================================================
[2026-06-05 19:28:19,657.657 INFO    ] Launching Daemon at Fri Jun  5 19:28:19 IST 2026
[2026-06-05 19:28:19,667.667 INFO    ] ================================================
[2026-06-05 19:28:20,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:28:20
[2026-06-05 19:28:20,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:28:21,144.144 INFO    ] Initializing speech engine...
[2026-06-05 19:28:21,169.169 INFO    ] 2026-06-05 19:28:21
[2026-06-05 19:28:21,441.441 INFO    ] 2026-06-05 19:28:21
[2026-06-05 19:28:21,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:28:21,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:28:21,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:28:21,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:28:21,859.859 INFO    ] time= 05/06/2026 19:28:21
[2026-06-05 19:28:21,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:28:21,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:28:22,042.042 INFO    ] No existing commands found in stream
[2026-06-05 19:28:27,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:28:27,081.081 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 19:28:28,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:28:28,471.471 INFO    ] Checking for system updates...
[2026-06-05 19:28:28,507.507 INFO    ] 200
[2026-06-05 19:28:28,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:28,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:28:28,564.564 INFO    ] No update needed
[2026-06-05 19:28:28,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 19:28:28,600.600 INFO    ] 200
[2026-06-05 19:28:28,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:28,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:28:28,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:28:28,691.691 INFO    ] No camera update needed
[2026-06-05 19:28:28,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:28:28,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:28:28,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:28:28,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:28:30,748.748 INFO    ] ================================================
[2026-06-05 19:28:30,762.762 INFO    ] Launching Daemon at Fri Jun  5 19:28:30 IST 2026
[2026-06-05 19:28:30,773.773 INFO    ] ================================================
[2026-06-05 19:28:31,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:28:31
[2026-06-05 19:28:31,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:28:32,301.301 INFO    ] Initializing speech engine...
[2026-06-05 19:28:32,323.323 INFO    ] 2026-06-05 19:28:32
[2026-06-05 19:28:32,639.639 INFO    ] 2026-06-05 19:28:32
[2026-06-05 19:28:32,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:28:32,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:28:32,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:28:33,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:28:33,025.025 INFO    ] time= 05/06/2026 19:28:33
[2026-06-05 19:28:33,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:28:33,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:28:33,210.210 INFO    ] No existing commands found in stream
[2026-06-05 19:28:38,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:28:38,243.243 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 19:28:41,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:28:41,965.965 INFO    ] Checking for system updates...
[2026-06-05 19:28:42,005.005 INFO    ] 200
[2026-06-05 19:28:42,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:42,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:28:42,069.069 INFO    ] No update needed
[2026-06-05 19:28:42,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 19:28:42,106.106 INFO    ] 200
[2026-06-05 19:28:42,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:42,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:28:42,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:28:42,199.199 INFO    ] No camera update needed
[2026-06-05 19:28:42,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:28:42,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:28:42,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:28:42,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:28:44,253.253 INFO    ] ================================================
[2026-06-05 19:28:44,268.268 INFO    ] Launching Daemon at Fri Jun  5 19:28:44 IST 2026
[2026-06-05 19:28:44,279.279 INFO    ] ================================================
[2026-06-05 19:28:44,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:28:44
[2026-06-05 19:28:45,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:28:45,681.681 INFO    ] Initializing speech engine...
[2026-06-05 19:28:45,694.694 INFO    ] 2026-06-05 19:28:45
[2026-06-05 19:28:45,960.960 INFO    ] 2026-06-05 19:28:45
[2026-06-05 19:28:45,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:28:46,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:28:46,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:28:46,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:28:46,476.476 INFO    ] time= 05/06/2026 19:28:46
[2026-06-05 19:28:46,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:28:46,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:28:46,653.653 INFO    ] No existing commands found in stream
[2026-06-05 19:28:51,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:28:51,679.679 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 19:28:53,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:28:53,959.959 INFO    ] Checking for system updates...
[2026-06-05 19:28:53,996.996 INFO    ] 200
[2026-06-05 19:28:53,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:54,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:28:54,060.060 INFO    ] No update needed
[2026-06-05 19:28:54,062.062 INFO    ] Checking for camera pi updates...
[2026-06-05 19:28:54,096.096 INFO    ] 200
[2026-06-05 19:28:54,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:28:54,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:28:54,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:28:54,187.187 INFO    ] No camera update needed
[2026-06-05 19:28:54,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:28:54,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:28:54,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:28:54,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:28:56,242.242 INFO    ] ================================================
[2026-06-05 19:28:56,257.257 INFO    ] Launching Daemon at Fri Jun  5 19:28:56 IST 2026
[2026-06-05 19:28:56,267.267 INFO    ] ================================================
[2026-06-05 19:28:56,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:28:56
[2026-06-05 19:28:57,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:28:57,746.746 INFO    ] Initializing speech engine...
[2026-06-05 19:28:57,756.756 INFO    ] 2026-06-05 19:28:57
[2026-06-05 19:28:58,012.012 INFO    ] 2026-06-05 19:28:58
[2026-06-05 19:28:58,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:28:58,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:28:58,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:28:58,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:28:58,469.469 INFO    ] time= 05/06/2026 19:28:58
[2026-06-05 19:28:58,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:28:58,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:28:58,618.618 INFO    ] No existing commands found in stream
[2026-06-05 19:29:03,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:29:03,632.632 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 19:29:07,267.267 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:29:07,270.270 INFO    ] Checking for system updates...
[2026-06-05 19:29:07,306.306 INFO    ] 200
[2026-06-05 19:29:07,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:29:07,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:29:07,364.364 INFO    ] No update needed
[2026-06-05 19:29:07,366.366 INFO    ] Checking for camera pi updates...
[2026-06-05 19:29:07,404.404 INFO    ] 200
[2026-06-05 19:29:07,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:29:07,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:29:07,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:29:07,580.580 INFO    ] No camera update needed
[2026-06-05 19:29:07,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:29:07,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:29:07,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:29:07,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:29:09,636.636 INFO    ] ================================================
[2026-06-05 19:29:09,651.651 INFO    ] Launching Daemon at Fri Jun  5 19:29:09 IST 2026
[2026-06-05 19:29:09,663.663 INFO    ] ================================================
[2026-06-05 19:29:10,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:29:10
[2026-06-05 19:29:10,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:29:11,140.140 INFO    ] Initializing speech engine...
[2026-06-05 19:29:11,145.145 INFO    ] 2026-06-05 19:29:11
[2026-06-05 19:29:11,407.407 INFO    ] 2026-06-05 19:29:11
[2026-06-05 19:29:11,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:29:12,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:29:12,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:29:12,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:29:12,684.684 INFO    ] time= 05/06/2026 19:29:12
[2026-06-05 19:29:12,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:29:12,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:29:12,809.809 INFO    ] No existing commands found in stream
[2026-06-05 19:29:17,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:29:17,820.820 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 19:29:22,204.204 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:29:22,207.207 INFO    ] Checking for system updates...
[2026-06-05 19:29:22,248.248 INFO    ] 200
[2026-06-05 19:29:22,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:29:22,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:29:22,306.306 INFO    ] No update needed
[2026-06-05 19:29:22,309.309 INFO    ] Checking for camera pi updates...
[2026-06-05 19:29:22,347.347 INFO    ] 200
[2026-06-05 19:29:22,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:29:22,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:29:22,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:29:22,436.436 INFO    ] No camera update needed
[2026-06-05 19:29:22,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:29:22,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:29:22,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:29:22,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:29:24,491.491 INFO    ] ================================================
[2026-06-05 19:29:24,507.507 INFO    ] Launching Daemon at Fri Jun  5 19:29:24 IST 2026
[2026-06-05 19:29:24,518.518 INFO    ] ================================================
[2026-06-05 19:29:25,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:29:25
[2026-06-05 19:29:25,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:29:26,165.165 INFO    ] Initializing speech engine...
[2026-06-05 19:29:26,171.171 INFO    ] 2026-06-05 19:29:26
[2026-06-05 19:29:26,479.479 INFO    ] 2026-06-05 19:29:26
[2026-06-05 19:29:26,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:29:26,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:29:26,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:29:26,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:29:26,991.991 INFO    ] time= 05/06/2026 19:29:26
[2026-06-05 19:29:27,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:29:27,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:29:27,147.147 INFO    ] No existing commands found in stream
[2026-06-05 19:29:32,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:29:32,181.181 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 19:29:36,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:29:36,380.380 INFO    ] Checking for system updates...
[2026-06-05 19:29:36,420.420 INFO    ] 200
[2026-06-05 19:29:36,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:29:36,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:29:36,480.480 INFO    ] No update needed
[2026-06-05 19:29:36,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 19:29:36,518.518 INFO    ] 200
[2026-06-05 19:29:36,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:29:36,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:29:36,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:29:36,638.638 INFO    ] No camera update needed
[2026-06-05 19:29:36,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:29:36,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:29:36,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:29:36,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:29:38,694.694 INFO    ] ================================================
[2026-06-05 19:29:38,709.709 INFO    ] Launching Daemon at Fri Jun  5 19:29:38 IST 2026
[2026-06-05 19:29:38,720.720 INFO    ] ================================================
[2026-06-05 19:29:39,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:29:39
[2026-06-05 19:29:39,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:29:40,134.134 INFO    ] Initializing speech engine...
[2026-06-05 19:29:40,142.142 INFO    ] 2026-06-05 19:29:40
[2026-06-05 19:29:40,418.418 INFO    ] 2026-06-05 19:29:40
[2026-06-05 19:29:40,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:29:42,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:29:42,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:29:43,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:29:43,073.073 INFO    ] time= 05/06/2026 19:29:43
[2026-06-05 19:29:43,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:29:43,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:29:43,184.184 INFO    ] No existing commands found in stream
[2026-06-05 19:29:48,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:29:48,212.212 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 19:29:50,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:29:50,988.988 INFO    ] Checking for system updates...
[2026-06-05 19:29:51,024.024 INFO    ] 200
[2026-06-05 19:29:51,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:29:51,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:29:51,081.081 INFO    ] No update needed
[2026-06-05 19:29:51,083.083 INFO    ] Checking for camera pi updates...
[2026-06-05 19:29:51,117.117 INFO    ] 200
[2026-06-05 19:29:51,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:29:51,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:29:51,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:29:51,209.209 INFO    ] No camera update needed
[2026-06-05 19:29:51,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:29:51,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:29:51,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:29:51,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:29:53,264.264 INFO    ] ================================================
[2026-06-05 19:29:53,279.279 INFO    ] Launching Daemon at Fri Jun  5 19:29:53 IST 2026
[2026-06-05 19:29:53,290.290 INFO    ] ================================================
[2026-06-05 19:29:53,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:29:53
[2026-06-05 19:29:54,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:29:54,746.746 INFO    ] Initializing speech engine...
[2026-06-05 19:29:54,756.756 INFO    ] 2026-06-05 19:29:54
[2026-06-05 19:29:55,002.002 INFO    ] 2026-06-05 19:29:54
[2026-06-05 19:29:55,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:29:55,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:29:55,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:29:55,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:29:55,376.376 INFO    ] time= 05/06/2026 19:29:55
[2026-06-05 19:29:55,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:29:55,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:29:55,563.563 INFO    ] No existing commands found in stream
[2026-06-05 19:30:00,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:30:00,586.586 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 19:30:03,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:30:03,030.030 INFO    ] Checking for system updates...
[2026-06-05 19:30:03,082.082 INFO    ] 200
[2026-06-05 19:30:03,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:03,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:30:03,161.161 INFO    ] No update needed
[2026-06-05 19:30:03,165.165 INFO    ] Checking for camera pi updates...
[2026-06-05 19:30:03,222.222 INFO    ] 200
[2026-06-05 19:30:03,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:03,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:30:03,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:30:03,360.360 INFO    ] No camera update needed
[2026-06-05 19:30:03,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:30:03,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:30:03,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:30:03,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:30:05,430.430 INFO    ] ================================================
[2026-06-05 19:30:05,446.446 INFO    ] Launching Daemon at Fri Jun  5 19:30:05 IST 2026
[2026-06-05 19:30:05,457.457 INFO    ] ================================================
[2026-06-05 19:30:06,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:30:06
[2026-06-05 19:30:06,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:30:06,883.883 INFO    ] Initializing speech engine...
[2026-06-05 19:30:06,892.892 INFO    ] 2026-06-05 19:30:06
[2026-06-05 19:30:07,170.170 INFO    ] 2026-06-05 19:30:07
[2026-06-05 19:30:07,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:30:07,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:30:07,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:30:07,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:30:07,560.560 INFO    ] time= 05/06/2026 19:30:07
[2026-06-05 19:30:07,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:30:07,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:30:07,735.735 INFO    ] No existing commands found in stream
[2026-06-05 19:30:12,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:30:12,763.763 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 19:30:14,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:30:14,128.128 INFO    ] Checking for system updates...
[2026-06-05 19:30:14,167.167 INFO    ] 200
[2026-06-05 19:30:14,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:14,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:30:14,230.230 INFO    ] No update needed
[2026-06-05 19:30:14,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 19:30:14,272.272 INFO    ] 200
[2026-06-05 19:30:14,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:14,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:30:14,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:30:14,350.350 INFO    ] No camera update needed
[2026-06-05 19:30:14,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:30:14,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:30:14,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:30:14,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:30:16,408.408 INFO    ] ================================================
[2026-06-05 19:30:16,423.423 INFO    ] Launching Daemon at Fri Jun  5 19:30:16 IST 2026
[2026-06-05 19:30:16,434.434 INFO    ] ================================================
[2026-06-05 19:30:17,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:30:17
[2026-06-05 19:30:17,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:30:17,963.963 INFO    ] Initializing speech engine...
[2026-06-05 19:30:17,969.969 INFO    ] 2026-06-05 19:30:17
[2026-06-05 19:30:18,231.231 INFO    ] 2026-06-05 19:30:18
[2026-06-05 19:30:18,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:30:18,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:30:18,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:30:18,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:30:18,582.582 INFO    ] time= 05/06/2026 19:30:18
[2026-06-05 19:30:18,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:30:18,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:30:18,659.659 INFO    ] No existing commands found in stream
[2026-06-05 19:30:23,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:30:23,680.680 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 19:30:27,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:30:27,223.223 INFO    ] Checking for system updates...
[2026-06-05 19:30:27,264.264 INFO    ] 200
[2026-06-05 19:30:27,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:27,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:30:27,321.321 INFO    ] No update needed
[2026-06-05 19:30:27,324.324 INFO    ] Checking for camera pi updates...
[2026-06-05 19:30:27,362.362 INFO    ] 200
[2026-06-05 19:30:27,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:27,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:30:27,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:30:27,465.465 INFO    ] No camera update needed
[2026-06-05 19:30:27,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:30:27,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:30:27,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:30:27,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:30:29,519.519 INFO    ] ================================================
[2026-06-05 19:30:29,534.534 INFO    ] Launching Daemon at Fri Jun  5 19:30:29 IST 2026
[2026-06-05 19:30:29,545.545 INFO    ] ================================================
[2026-06-05 19:30:30,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:30:30
[2026-06-05 19:30:30,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:30:31,011.011 INFO    ] Initializing speech engine...
[2026-06-05 19:30:31,016.016 INFO    ] 2026-06-05 19:30:31
[2026-06-05 19:30:31,267.267 INFO    ] 2026-06-05 19:30:31
[2026-06-05 19:30:31,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:30:31,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:30:31,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:30:31,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:30:31,650.650 INFO    ] time= 05/06/2026 19:30:31
[2026-06-05 19:30:31,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:30:31,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:30:31,825.825 INFO    ] No existing commands found in stream
[2026-06-05 19:30:36,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:30:36,862.862 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 19:30:37,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:30:37,626.626 INFO    ] Checking for system updates...
[2026-06-05 19:30:37,668.668 INFO    ] 200
[2026-06-05 19:30:37,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:37,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:30:37,732.732 INFO    ] No update needed
[2026-06-05 19:30:37,734.734 INFO    ] Checking for camera pi updates...
[2026-06-05 19:30:37,768.768 INFO    ] 200
[2026-06-05 19:30:37,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:37,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:30:37,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:30:37,859.859 INFO    ] No camera update needed
[2026-06-05 19:30:37,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:30:37,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:30:37,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:30:37,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:30:39,916.916 INFO    ] ================================================
[2026-06-05 19:30:39,932.932 INFO    ] Launching Daemon at Fri Jun  5 19:30:39 IST 2026
[2026-06-05 19:30:39,942.942 INFO    ] ================================================
[2026-06-05 19:30:40,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:30:40
[2026-06-05 19:30:41,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:30:41,373.373 INFO    ] Initializing speech engine...
[2026-06-05 19:30:41,378.378 INFO    ] 2026-06-05 19:30:41
[2026-06-05 19:30:41,629.629 INFO    ] 2026-06-05 19:30:41
[2026-06-05 19:30:41,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:30:44,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:30:44,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:30:44,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:30:44,430.430 INFO    ] time= 05/06/2026 19:30:44
[2026-06-05 19:30:44,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:30:44,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:30:44,572.572 INFO    ] No existing commands found in stream
[2026-06-05 19:30:49,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:30:49,591.591 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 19:30:51,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:30:51,501.501 INFO    ] Checking for system updates...
[2026-06-05 19:30:51,541.541 INFO    ] 200
[2026-06-05 19:30:51,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:51,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:30:51,600.600 INFO    ] No update needed
[2026-06-05 19:30:51,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 19:30:51,636.636 INFO    ] 200
[2026-06-05 19:30:51,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:30:51,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:30:51,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:30:51,732.732 INFO    ] No camera update needed
[2026-06-05 19:30:51,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:30:51,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:30:51,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:30:51,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:30:53,790.790 INFO    ] ================================================
[2026-06-05 19:30:53,805.805 INFO    ] Launching Daemon at Fri Jun  5 19:30:53 IST 2026
[2026-06-05 19:30:53,816.816 INFO    ] ================================================
[2026-06-05 19:30:54,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:30:54
[2026-06-05 19:30:55,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:30:55,298.298 INFO    ] Initializing speech engine...
[2026-06-05 19:30:55,307.307 INFO    ] 2026-06-05 19:30:55
[2026-06-05 19:30:55,559.559 INFO    ] 2026-06-05 19:30:55
[2026-06-05 19:30:55,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:30:55,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:30:55,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:30:55,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:30:55,945.945 INFO    ] time= 05/06/2026 19:30:55
[2026-06-05 19:30:55,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:30:55,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:30:56,131.131 INFO    ] No existing commands found in stream
[2026-06-05 19:31:01,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:31:01,161.161 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 19:31:02,199.199 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:31:02,203.203 INFO    ] Checking for system updates...
[2026-06-05 19:31:02,248.248 INFO    ] 200
[2026-06-05 19:31:02,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:02,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:31:02,327.327 INFO    ] No update needed
[2026-06-05 19:31:02,330.330 INFO    ] Checking for camera pi updates...
[2026-06-05 19:31:02,374.374 INFO    ] 200
[2026-06-05 19:31:02,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:02,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:31:02,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:31:02,459.459 INFO    ] No camera update needed
[2026-06-05 19:31:02,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:31:02,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:31:02,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:31:02,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:31:04,520.520 INFO    ] ================================================
[2026-06-05 19:31:04,539.539 INFO    ] Launching Daemon at Fri Jun  5 19:31:04 IST 2026
[2026-06-05 19:31:04,550.550 INFO    ] ================================================
[2026-06-05 19:31:05,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:31:05
[2026-06-05 19:31:05,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:31:06,009.009 INFO    ] Initializing speech engine...
[2026-06-05 19:31:06,028.028 INFO    ] 2026-06-05 19:31:06
[2026-06-05 19:31:06,305.305 INFO    ] 2026-06-05 19:31:06
[2026-06-05 19:31:06,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:31:06,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:31:06,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:31:06,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:31:06,781.781 INFO    ] time= 05/06/2026 19:31:06
[2026-06-05 19:31:06,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:31:06,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:31:06,938.938 INFO    ] No existing commands found in stream
[2026-06-05 19:31:11,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:31:11,980.980 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 19:31:15,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:31:15,756.756 INFO    ] Checking for system updates...
[2026-06-05 19:31:15,798.798 INFO    ] 200
[2026-06-05 19:31:15,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:15,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:31:15,860.860 INFO    ] No update needed
[2026-06-05 19:31:15,862.862 INFO    ] Checking for camera pi updates...
[2026-06-05 19:31:15,900.900 INFO    ] 200
[2026-06-05 19:31:15,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:15,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:31:16,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:31:16,103.103 INFO    ] No camera update needed
[2026-06-05 19:31:16,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:31:16,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:31:16,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:31:16,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:31:18,159.159 INFO    ] ================================================
[2026-06-05 19:31:18,174.174 INFO    ] Launching Daemon at Fri Jun  5 19:31:18 IST 2026
[2026-06-05 19:31:18,184.184 INFO    ] ================================================
[2026-06-05 19:31:18,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:31:18
[2026-06-05 19:31:19,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:31:19,868.868 INFO    ] Initializing speech engine...
[2026-06-05 19:31:19,882.882 INFO    ] 2026-06-05 19:31:19
[2026-06-05 19:31:20,166.166 INFO    ] 2026-06-05 19:31:20
[2026-06-05 19:31:20,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:31:20,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:31:20,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:31:20,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:31:20,615.615 INFO    ] time= 05/06/2026 19:31:20
[2026-06-05 19:31:20,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:31:20,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:31:20,763.763 INFO    ] No existing commands found in stream
[2026-06-05 19:31:25,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:31:25,778.778 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 19:31:28,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:31:28,575.575 INFO    ] Checking for system updates...
[2026-06-05 19:31:28,615.615 INFO    ] 200
[2026-06-05 19:31:28,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:28,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:31:28,673.673 INFO    ] No update needed
[2026-06-05 19:31:28,676.676 INFO    ] Checking for camera pi updates...
[2026-06-05 19:31:28,712.712 INFO    ] 200
[2026-06-05 19:31:28,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:28,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:31:28,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:31:28,798.798 INFO    ] No camera update needed
[2026-06-05 19:31:28,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:31:28,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:31:28,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:31:28,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:31:30,856.856 INFO    ] ================================================
[2026-06-05 19:31:30,872.872 INFO    ] Launching Daemon at Fri Jun  5 19:31:30 IST 2026
[2026-06-05 19:31:30,883.883 INFO    ] ================================================
[2026-06-05 19:31:31,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:31:31
[2026-06-05 19:31:32,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:31:32,437.437 INFO    ] Initializing speech engine...
[2026-06-05 19:31:32,452.452 INFO    ] 2026-06-05 19:31:32
[2026-06-05 19:31:32,763.763 INFO    ] 2026-06-05 19:31:32
[2026-06-05 19:31:32,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:31:32,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:31:33,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:31:33,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:31:33,136.136 INFO    ] time= 05/06/2026 19:31:33
[2026-06-05 19:31:33,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:31:33,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:31:33,266.266 INFO    ] No existing commands found in stream
[2026-06-05 19:31:38,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:31:38,280.280 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 19:31:41,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:31:41,532.532 INFO    ] Checking for system updates...
[2026-06-05 19:31:41,570.570 INFO    ] 200
[2026-06-05 19:31:41,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:41,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:31:41,640.640 INFO    ] No update needed
[2026-06-05 19:31:41,642.642 INFO    ] Checking for camera pi updates...
[2026-06-05 19:31:41,678.678 INFO    ] 200
[2026-06-05 19:31:41,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:41,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:31:41,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:31:41,796.796 INFO    ] No camera update needed
[2026-06-05 19:31:41,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:31:41,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:31:41,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:31:41,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:31:43,858.858 INFO    ] ================================================
[2026-06-05 19:31:43,873.873 INFO    ] Launching Daemon at Fri Jun  5 19:31:43 IST 2026
[2026-06-05 19:31:43,884.884 INFO    ] ================================================
[2026-06-05 19:31:44,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:31:44
[2026-06-05 19:31:45,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:31:45,501.501 INFO    ] Initializing speech engine...
[2026-06-05 19:31:45,511.511 INFO    ] 2026-06-05 19:31:45
[2026-06-05 19:31:45,791.791 INFO    ] 2026-06-05 19:31:45
[2026-06-05 19:31:45,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:31:45,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:31:46,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:31:46,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:31:46,144.144 INFO    ] time= 05/06/2026 19:31:46
[2026-06-05 19:31:46,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:31:46,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:31:46,324.324 INFO    ] No existing commands found in stream
[2026-06-05 19:31:51,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:31:51,356.356 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 19:31:53,988.988 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:31:53,991.991 INFO    ] Checking for system updates...
[2026-06-05 19:31:54,032.032 INFO    ] 200
[2026-06-05 19:31:54,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:54,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:31:54,093.093 INFO    ] No update needed
[2026-06-05 19:31:54,095.095 INFO    ] Checking for camera pi updates...
[2026-06-05 19:31:54,131.131 INFO    ] 200
[2026-06-05 19:31:54,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:31:54,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:31:54,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:31:54,222.222 INFO    ] No camera update needed
[2026-06-05 19:31:54,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:31:54,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:31:54,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:31:54,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:31:56,277.277 INFO    ] ================================================
[2026-06-05 19:31:56,293.293 INFO    ] Launching Daemon at Fri Jun  5 19:31:56 IST 2026
[2026-06-05 19:31:56,305.305 INFO    ] ================================================
[2026-06-05 19:31:56,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:31:56
[2026-06-05 19:31:57,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:31:57,944.944 INFO    ] Initializing speech engine...
[2026-06-05 19:31:57,953.953 INFO    ] 2026-06-05 19:31:57
[2026-06-05 19:31:58,233.233 INFO    ] 2026-06-05 19:31:58
[2026-06-05 19:31:58,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:31:58,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:31:58,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:31:58,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:31:58,799.799 INFO    ] time= 05/06/2026 19:31:58
[2026-06-05 19:31:58,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:31:58,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:31:58,937.937 INFO    ] No existing commands found in stream
[2026-06-05 19:32:03,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:32:03,966.966 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 19:32:08,063.063 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:32:08,066.066 INFO    ] Checking for system updates...
[2026-06-05 19:32:08,103.103 INFO    ] 200
[2026-06-05 19:32:08,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:08,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:32:08,165.165 INFO    ] No update needed
[2026-06-05 19:32:08,168.168 INFO    ] Checking for camera pi updates...
[2026-06-05 19:32:08,203.203 INFO    ] 200
[2026-06-05 19:32:08,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:08,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:32:08,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:32:08,281.281 INFO    ] No camera update needed
[2026-06-05 19:32:08,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:32:08,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:32:08,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:32:08,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:32:10,338.338 INFO    ] ================================================
[2026-06-05 19:32:10,353.353 INFO    ] Launching Daemon at Fri Jun  5 19:32:10 IST 2026
[2026-06-05 19:32:10,365.365 INFO    ] ================================================
[2026-06-05 19:32:10,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:32:10
[2026-06-05 19:32:11,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:32:11,824.824 INFO    ] Initializing speech engine...
[2026-06-05 19:32:11,833.833 INFO    ] 2026-06-05 19:32:11
[2026-06-05 19:32:12,097.097 INFO    ] 2026-06-05 19:32:12
[2026-06-05 19:32:12,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:32:12,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:32:12,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:32:12,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:32:12,569.569 INFO    ] time= 05/06/2026 19:32:12
[2026-06-05 19:32:12,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:32:12,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:32:12,741.741 INFO    ] No existing commands found in stream
[2026-06-05 19:32:17,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:32:17,781.781 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 19:32:21,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:32:21,194.194 INFO    ] Checking for system updates...
[2026-06-05 19:32:21,235.235 INFO    ] 200
[2026-06-05 19:32:21,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:21,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:32:21,292.292 INFO    ] No update needed
[2026-06-05 19:32:21,295.295 INFO    ] Checking for camera pi updates...
[2026-06-05 19:32:21,333.333 INFO    ] 200
[2026-06-05 19:32:21,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:21,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:32:21,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:32:21,425.425 INFO    ] No camera update needed
[2026-06-05 19:32:21,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:32:21,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:32:21,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:32:21,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:32:23,480.480 INFO    ] ================================================
[2026-06-05 19:32:23,495.495 INFO    ] Launching Daemon at Fri Jun  5 19:32:23 IST 2026
[2026-06-05 19:32:23,505.505 INFO    ] ================================================
[2026-06-05 19:32:24,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:32:24
[2026-06-05 19:32:24,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:32:24,946.946 INFO    ] Initializing speech engine...
[2026-06-05 19:32:24,953.953 INFO    ] 2026-06-05 19:32:24
[2026-06-05 19:32:25,250.250 INFO    ] 2026-06-05 19:32:25
[2026-06-05 19:32:25,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:32:25,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:32:25,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:32:25,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:32:25,665.665 INFO    ] time= 05/06/2026 19:32:25
[2026-06-05 19:32:25,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:32:25,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:32:25,836.836 INFO    ] No existing commands found in stream
[2026-06-05 19:32:30,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:32:30,864.864 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 19:32:31,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:32:31,462.462 INFO    ] Checking for system updates...
[2026-06-05 19:32:31,508.508 INFO    ] 200
[2026-06-05 19:32:31,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:31,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:32:31,578.578 INFO    ] No update needed
[2026-06-05 19:32:31,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 19:32:31,622.622 INFO    ] 200
[2026-06-05 19:32:31,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:31,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:32:31,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:32:31,711.711 INFO    ] No camera update needed
[2026-06-05 19:32:31,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:32:31,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:32:31,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:32:31,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:32:33,771.771 INFO    ] ================================================
[2026-06-05 19:32:33,786.786 INFO    ] Launching Daemon at Fri Jun  5 19:32:33 IST 2026
[2026-06-05 19:32:33,796.796 INFO    ] ================================================
[2026-06-05 19:32:34,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:32:34
[2026-06-05 19:32:34,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:32:35,209.209 INFO    ] Initializing speech engine...
[2026-06-05 19:32:35,232.232 INFO    ] 2026-06-05 19:32:35
[2026-06-05 19:32:35,505.505 INFO    ] 2026-06-05 19:32:35
[2026-06-05 19:32:35,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:32:35,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:32:35,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:32:35,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:32:36,008.008 INFO    ] time= 05/06/2026 19:32:35
[2026-06-05 19:32:36,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:32:36,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:32:36,215.215 INFO    ] No existing commands found in stream
[2026-06-05 19:32:41,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:32:41,250.250 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 19:32:47,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:32:47,047.047 INFO    ] Checking for system updates...
[2026-06-05 19:32:47,089.089 INFO    ] 200
[2026-06-05 19:32:47,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:47,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:32:47,149.149 INFO    ] No update needed
[2026-06-05 19:32:47,151.151 INFO    ] Checking for camera pi updates...
[2026-06-05 19:32:47,187.187 INFO    ] 200
[2026-06-05 19:32:47,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:47,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:32:47,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:32:47,278.278 INFO    ] No camera update needed
[2026-06-05 19:32:47,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:32:47,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:32:47,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:32:47,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:32:49,338.338 INFO    ] ================================================
[2026-06-05 19:32:49,353.353 INFO    ] Launching Daemon at Fri Jun  5 19:32:49 IST 2026
[2026-06-05 19:32:49,364.364 INFO    ] ================================================
[2026-06-05 19:32:49,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:32:49
[2026-06-05 19:32:50,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:32:50,836.836 INFO    ] Initializing speech engine...
[2026-06-05 19:32:50,845.845 INFO    ] 2026-06-05 19:32:50
[2026-06-05 19:32:51,105.105 INFO    ] 2026-06-05 19:32:51
[2026-06-05 19:32:51,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:32:51,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:32:51,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:32:51,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:32:51,598.598 INFO    ] time= 05/06/2026 19:32:51
[2026-06-05 19:32:51,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:32:51,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:32:51,739.739 INFO    ] No existing commands found in stream
[2026-06-05 19:32:56,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:32:56,750.750 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 19:32:59,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:32:59,394.394 INFO    ] Checking for system updates...
[2026-06-05 19:32:59,431.431 INFO    ] 200
[2026-06-05 19:32:59,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:59,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:32:59,497.497 INFO    ] No update needed
[2026-06-05 19:32:59,500.500 INFO    ] Checking for camera pi updates...
[2026-06-05 19:32:59,538.538 INFO    ] 200
[2026-06-05 19:32:59,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:32:59,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:32:59,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:32:59,640.640 INFO    ] No camera update needed
[2026-06-05 19:32:59,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:32:59,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:32:59,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:32:59,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:33:01,706.706 INFO    ] ================================================
[2026-06-05 19:33:01,730.730 INFO    ] Launching Daemon at Fri Jun  5 19:33:01 IST 2026
[2026-06-05 19:33:01,745.745 INFO    ] ================================================
[2026-06-05 19:33:02,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:33:02
[2026-06-05 19:33:03,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:33:03,300.300 INFO    ] Initializing speech engine...
[2026-06-05 19:33:03,307.307 INFO    ] 2026-06-05 19:33:03
[2026-06-05 19:33:03,608.608 INFO    ] 2026-06-05 19:33:03
[2026-06-05 19:33:03,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:33:03,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:33:03,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:33:04,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:33:04,026.026 INFO    ] time= 05/06/2026 19:33:04
[2026-06-05 19:33:04,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:33:04,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:33:04,116.116 INFO    ] No existing commands found in stream
[2026-06-05 19:33:09,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:33:09,130.130 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 19:33:11,750.750 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:33:11,753.753 INFO    ] Checking for system updates...
[2026-06-05 19:33:11,789.789 INFO    ] 200
[2026-06-05 19:33:11,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:33:11,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:33:11,855.855 INFO    ] No update needed
[2026-06-05 19:33:11,857.857 INFO    ] Checking for camera pi updates...
[2026-06-05 19:33:11,895.895 INFO    ] 200
[2026-06-05 19:33:11,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:33:11,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:33:11,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:33:11,983.983 INFO    ] No camera update needed
[2026-06-05 19:33:11,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:33:11,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:33:11,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:33:11,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:33:14,040.040 INFO    ] ================================================
[2026-06-05 19:33:14,056.056 INFO    ] Launching Daemon at Fri Jun  5 19:33:14 IST 2026
[2026-06-05 19:33:14,067.067 INFO    ] ================================================
[2026-06-05 19:33:14,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:33:14
[2026-06-05 19:33:15,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:33:15,724.724 INFO    ] Initializing speech engine...
[2026-06-05 19:33:15,732.732 INFO    ] 2026-06-05 19:33:15
[2026-06-05 19:33:16,017.017 INFO    ] 2026-06-05 19:33:16
[2026-06-05 19:33:16,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:33:17,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:33:17,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:33:17,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:33:17,528.528 INFO    ] time= 05/06/2026 19:33:17
[2026-06-05 19:33:17,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:33:17,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:33:17,664.664 INFO    ] No existing commands found in stream
[2026-06-05 19:33:22,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:33:22,704.704 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 19:33:25,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:33:25,957.957 INFO    ] Checking for system updates...
[2026-06-05 19:33:26,022.022 INFO    ] 200
[2026-06-05 19:33:26,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 19:33:26,029.029 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 19:33:26,032.032 INFO    ] Checking for camera pi updates...
[2026-06-05 19:33:26,079.079 INFO    ] 200
[2026-06-05 19:33:26,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 19:33:26,086.086 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 19:33:26,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:33:26,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:33:26,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:33:26,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:33:28,147.147 INFO    ] ================================================
[2026-06-05 19:33:28,162.162 INFO    ] Launching Daemon at Fri Jun  5 19:33:28 IST 2026
[2026-06-05 19:33:28,174.174 INFO    ] ================================================
[2026-06-05 19:33:28,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:33:28
[2026-06-05 19:33:29,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:33:29,634.634 INFO    ] Initializing speech engine...
[2026-06-05 19:33:29,643.643 INFO    ] 2026-06-05 19:33:29
[2026-06-05 19:33:29,939.939 INFO    ] 2026-06-05 19:33:29
[2026-06-05 19:33:29,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:33:30,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:33:30,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:33:30,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:33:30,344.344 INFO    ] time= 05/06/2026 19:33:30
[2026-06-05 19:33:30,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:33:30,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:33:30,451.451 INFO    ] No existing commands found in stream
[2026-06-05 19:33:35,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:33:35,469.469 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 19:33:37,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:33:37,508.508 INFO    ] Checking for system updates...
[2026-06-05 19:33:37,547.547 INFO    ] 200
[2026-06-05 19:33:37,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:33:37,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:33:37,613.613 INFO    ] No update needed
[2026-06-05 19:33:37,616.616 INFO    ] Checking for camera pi updates...
[2026-06-05 19:33:37,656.656 INFO    ] 200
[2026-06-05 19:33:37,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:33:37,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:33:37,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:33:37,753.753 INFO    ] No camera update needed
[2026-06-05 19:33:37,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:33:37,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:33:37,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:33:37,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:33:39,813.813 INFO    ] ================================================
[2026-06-05 19:33:39,828.828 INFO    ] Launching Daemon at Fri Jun  5 19:33:39 IST 2026
[2026-06-05 19:33:39,840.840 INFO    ] ================================================
[2026-06-05 19:33:40,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:33:40
[2026-06-05 19:33:41,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:33:41,278.278 INFO    ] Initializing speech engine...
[2026-06-05 19:33:41,284.284 INFO    ] 2026-06-05 19:33:41
[2026-06-05 19:33:41,581.581 INFO    ] 2026-06-05 19:33:41
[2026-06-05 19:33:41,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:33:42,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:33:42,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:33:42,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:33:42,835.835 INFO    ] time= 05/06/2026 19:33:42
[2026-06-05 19:33:42,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:33:42,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:33:42,959.959 INFO    ] No existing commands found in stream
[2026-06-05 19:33:47,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:33:47,971.971 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 19:33:49,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:33:49,163.163 INFO    ] Checking for system updates...
[2026-06-05 19:33:49,202.202 INFO    ] 200
[2026-06-05 19:33:49,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:33:49,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:33:49,266.266 INFO    ] No update needed
[2026-06-05 19:33:49,268.268 INFO    ] Checking for camera pi updates...
[2026-06-05 19:33:49,302.302 INFO    ] 200
[2026-06-05 19:33:49,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:33:49,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:33:49,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:33:49,392.392 INFO    ] No camera update needed
[2026-06-05 19:33:49,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:33:49,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:33:49,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:33:49,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:33:51,447.447 INFO    ] ================================================
[2026-06-05 19:33:51,462.462 INFO    ] Launching Daemon at Fri Jun  5 19:33:51 IST 2026
[2026-06-05 19:33:51,473.473 INFO    ] ================================================
[2026-06-05 19:33:52,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:33:52
[2026-06-05 19:33:52,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:33:53,056.056 INFO    ] Initializing speech engine...
[2026-06-05 19:33:53,064.064 INFO    ] 2026-06-05 19:33:53
[2026-06-05 19:33:53,335.335 INFO    ] 2026-06-05 19:33:53
[2026-06-05 19:33:53,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:33:53,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:33:53,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:33:53,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:33:53,818.818 INFO    ] time= 05/06/2026 19:33:53
[2026-06-05 19:33:53,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:33:53,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:33:53,967.967 INFO    ] No existing commands found in stream
[2026-06-05 19:33:58,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:33:58,982.982 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 19:34:03,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:34:03,339.339 INFO    ] Checking for system updates...
[2026-06-05 19:34:03,378.378 INFO    ] 200
[2026-06-05 19:34:03,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:03,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:34:03,440.440 INFO    ] No update needed
[2026-06-05 19:34:03,443.443 INFO    ] Checking for camera pi updates...
[2026-06-05 19:34:03,479.479 INFO    ] 200
[2026-06-05 19:34:03,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:03,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:34:03,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:34:03,579.579 INFO    ] No camera update needed
[2026-06-05 19:34:03,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:34:03,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:34:03,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:34:03,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:34:05,638.638 INFO    ] ================================================
[2026-06-05 19:34:05,654.654 INFO    ] Launching Daemon at Fri Jun  5 19:34:05 IST 2026
[2026-06-05 19:34:05,665.665 INFO    ] ================================================
[2026-06-05 19:34:06,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:34:06
[2026-06-05 19:34:06,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:34:07,268.268 INFO    ] Initializing speech engine...
[2026-06-05 19:34:07,275.275 INFO    ] 2026-06-05 19:34:07
[2026-06-05 19:34:07,594.594 INFO    ] 2026-06-05 19:34:07
[2026-06-05 19:34:07,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:34:07,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:34:07,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:34:08,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:34:08,119.119 INFO    ] time= 05/06/2026 19:34:08
[2026-06-05 19:34:08,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:34:08,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:34:08,267.267 INFO    ] No existing commands found in stream
[2026-06-05 19:34:13,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:34:13,293.293 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 19:34:18,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:34:18,779.779 INFO    ] Checking for system updates...
[2026-06-05 19:34:18,823.823 INFO    ] 200
[2026-06-05 19:34:18,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:18,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:34:18,885.885 INFO    ] No update needed
[2026-06-05 19:34:18,888.888 INFO    ] Checking for camera pi updates...
[2026-06-05 19:34:18,923.923 INFO    ] 200
[2026-06-05 19:34:18,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:18,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:34:19,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:34:19,007.007 INFO    ] No camera update needed
[2026-06-05 19:34:19,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:34:19,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:34:19,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:34:19,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:34:21,067.067 INFO    ] ================================================
[2026-06-05 19:34:21,082.082 INFO    ] Launching Daemon at Fri Jun  5 19:34:21 IST 2026
[2026-06-05 19:34:21,093.093 INFO    ] ================================================
[2026-06-05 19:34:21,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:34:21
[2026-06-05 19:34:22,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:34:22,607.607 INFO    ] Initializing speech engine...
[2026-06-05 19:34:22,622.622 INFO    ] 2026-06-05 19:34:22
[2026-06-05 19:34:22,893.893 INFO    ] 2026-06-05 19:34:22
[2026-06-05 19:34:22,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:34:23,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:34:23,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:34:23,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:34:23,384.384 INFO    ] time= 05/06/2026 19:34:23
[2026-06-05 19:34:23,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:34:23,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:34:23,536.536 INFO    ] No existing commands found in stream
[2026-06-05 19:34:28,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:34:28,553.553 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 19:34:32,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:34:32,056.056 INFO    ] Checking for system updates...
[2026-06-05 19:34:32,103.103 INFO    ] 200
[2026-06-05 19:34:32,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:32,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:34:32,174.174 INFO    ] No update needed
[2026-06-05 19:34:32,177.177 INFO    ] Checking for camera pi updates...
[2026-06-05 19:34:32,215.215 INFO    ] 200
[2026-06-05 19:34:32,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:32,265.265 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:34:32,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:34:32,304.304 INFO    ] No camera update needed
[2026-06-05 19:34:32,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:34:32,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:34:32,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:34:32,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:34:34,372.372 INFO    ] ================================================
[2026-06-05 19:34:34,388.388 INFO    ] Launching Daemon at Fri Jun  5 19:34:34 IST 2026
[2026-06-05 19:34:34,399.399 INFO    ] ================================================
[2026-06-05 19:34:34,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:34:34
[2026-06-05 19:34:35,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:34:35,816.816 INFO    ] Initializing speech engine...
[2026-06-05 19:34:35,823.823 INFO    ] 2026-06-05 19:34:35
[2026-06-05 19:34:36,113.113 INFO    ] 2026-06-05 19:34:36
[2026-06-05 19:34:36,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:34:37,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:34:37,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:34:37,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:34:37,763.763 INFO    ] time= 05/06/2026 19:34:37
[2026-06-05 19:34:37,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:34:37,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:34:37,876.876 INFO    ] No existing commands found in stream
[2026-06-05 19:34:42,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:34:42,900.900 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 19:34:44,219.219 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:34:44,222.222 INFO    ] Checking for system updates...
[2026-06-05 19:34:44,258.258 INFO    ] 200
[2026-06-05 19:34:44,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:44,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:34:44,317.317 INFO    ] No update needed
[2026-06-05 19:34:44,320.320 INFO    ] Checking for camera pi updates...
[2026-06-05 19:34:44,355.355 INFO    ] 200
[2026-06-05 19:34:44,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:44,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:34:44,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:34:44,458.458 INFO    ] No camera update needed
[2026-06-05 19:34:44,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:34:44,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:34:44,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:34:44,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:34:46,515.515 INFO    ] ================================================
[2026-06-05 19:34:46,530.530 INFO    ] Launching Daemon at Fri Jun  5 19:34:46 IST 2026
[2026-06-05 19:34:46,541.541 INFO    ] ================================================
[2026-06-05 19:34:47,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:34:47
[2026-06-05 19:34:47,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:34:47,952.952 INFO    ] Initializing speech engine...
[2026-06-05 19:34:47,961.961 INFO    ] 2026-06-05 19:34:47
[2026-06-05 19:34:48,235.235 INFO    ] 2026-06-05 19:34:48
[2026-06-05 19:34:48,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:34:49,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:34:49,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:34:49,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:34:49,607.607 INFO    ] time= 05/06/2026 19:34:49
[2026-06-05 19:34:49,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:34:49,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:34:49,702.702 INFO    ] No existing commands found in stream
[2026-06-05 19:34:54,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:34:54,717.717 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 19:34:58,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:34:58,521.521 INFO    ] Checking for system updates...
[2026-06-05 19:34:58,564.564 INFO    ] 200
[2026-06-05 19:34:58,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:58,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:34:58,633.633 INFO    ] No update needed
[2026-06-05 19:34:58,636.636 INFO    ] Checking for camera pi updates...
[2026-06-05 19:34:58,672.672 INFO    ] 200
[2026-06-05 19:34:58,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:34:58,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:34:58,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:34:58,773.773 INFO    ] No camera update needed
[2026-06-05 19:34:58,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:34:58,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:34:58,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:34:58,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:35:00,834.834 INFO    ] ================================================
[2026-06-05 19:35:00,850.850 INFO    ] Launching Daemon at Fri Jun  5 19:35:00 IST 2026
[2026-06-05 19:35:00,862.862 INFO    ] ================================================
[2026-06-05 19:35:01,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:35:01
[2026-06-05 19:35:02,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:35:02,848.848 INFO    ] Initializing speech engine...
[2026-06-05 19:35:02,860.860 INFO    ] 2026-06-05 19:35:02
[2026-06-05 19:35:03,159.159 INFO    ] 2026-06-05 19:35:03
[2026-06-05 19:35:03,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:35:03,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:35:03,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:35:03,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:35:03,689.689 INFO    ] time= 05/06/2026 19:35:03
[2026-06-05 19:35:03,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:35:03,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:35:03,821.821 INFO    ] No existing commands found in stream
[2026-06-05 19:35:08,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:35:08,858.858 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 19:35:10,620.620 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:35:10,623.623 INFO    ] Checking for system updates...
[2026-06-05 19:35:10,661.661 INFO    ] 200
[2026-06-05 19:35:10,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:35:10,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:35:10,728.728 INFO    ] No update needed
[2026-06-05 19:35:10,731.731 INFO    ] Checking for camera pi updates...
[2026-06-05 19:35:10,770.770 INFO    ] 200
[2026-06-05 19:35:10,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:35:10,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:35:10,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:35:10,874.874 INFO    ] No camera update needed
[2026-06-05 19:35:10,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:35:10,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:35:10,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:35:10,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:35:12,935.935 INFO    ] ================================================
[2026-06-05 19:35:12,951.951 INFO    ] Launching Daemon at Fri Jun  5 19:35:12 IST 2026
[2026-06-05 19:35:12,962.962 INFO    ] ================================================
[2026-06-05 19:35:13,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:35:13
[2026-06-05 19:35:14,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:35:14,383.383 INFO    ] Initializing speech engine...
[2026-06-05 19:35:14,393.393 INFO    ] 2026-06-05 19:35:14
[2026-06-05 19:35:14,652.652 INFO    ] 2026-06-05 19:35:14
[2026-06-05 19:35:14,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:35:14,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:35:14,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:35:15,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:35:15,089.089 INFO    ] time= 05/06/2026 19:35:15
[2026-06-05 19:35:15,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:35:15,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:35:15,252.252 INFO    ] No existing commands found in stream
[2026-06-05 19:35:20,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:35:20,267.267 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 19:35:22,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:35:22,338.338 INFO    ] Checking for system updates...
[2026-06-05 19:35:22,373.373 INFO    ] 200
[2026-06-05 19:35:22,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:35:22,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:35:22,431.431 INFO    ] No update needed
[2026-06-05 19:35:22,433.433 INFO    ] Checking for camera pi updates...
[2026-06-05 19:35:22,467.467 INFO    ] 200
[2026-06-05 19:35:22,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:35:22,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:35:22,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:35:22,554.554 INFO    ] No camera update needed
[2026-06-05 19:35:22,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:35:22,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:35:22,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:35:22,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:35:24,610.610 INFO    ] ================================================
[2026-06-05 19:35:24,626.626 INFO    ] Launching Daemon at Fri Jun  5 19:35:24 IST 2026
[2026-06-05 19:35:24,637.637 INFO    ] ================================================
[2026-06-05 19:35:25,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:35:25
[2026-06-05 19:35:25,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:35:26,101.101 INFO    ] Initializing speech engine...
[2026-06-05 19:35:26,113.113 INFO    ] 2026-06-05 19:35:26
[2026-06-05 19:35:26,368.368 INFO    ] 2026-06-05 19:35:26
[2026-06-05 19:35:26,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:35:26,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:35:26,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:35:26,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:35:26,856.856 INFO    ] time= 05/06/2026 19:35:26
[2026-06-05 19:35:26,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:35:26,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:35:26,976.976 INFO    ] No existing commands found in stream
[2026-06-05 19:35:31,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:35:31,990.990 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 19:35:35,623.623 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:35:35,626.626 INFO    ] Checking for system updates...
[2026-06-05 19:35:35,662.662 INFO    ] 200
[2026-06-05 19:35:35,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:35:35,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:35:35,728.728 INFO    ] No update needed
[2026-06-05 19:35:35,730.730 INFO    ] Checking for camera pi updates...
[2026-06-05 19:35:35,768.768 INFO    ] 200
[2026-06-05 19:35:35,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:35:35,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:35:35,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:35:35,961.961 INFO    ] No camera update needed
[2026-06-05 19:35:35,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:35:35,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:35:35,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:35:35,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:35:38,017.017 INFO    ] ================================================
[2026-06-05 19:35:38,032.032 INFO    ] Launching Daemon at Fri Jun  5 19:35:38 IST 2026
[2026-06-05 19:35:38,043.043 INFO    ] ================================================
[2026-06-05 19:35:38,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:35:38
[2026-06-05 19:35:39,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:35:39,681.681 INFO    ] Initializing speech engine...
[2026-06-05 19:35:39,696.696 INFO    ] 2026-06-05 19:35:39
[2026-06-05 19:35:40,013.013 INFO    ] 2026-06-05 19:35:39
[2026-06-05 19:35:40,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:35:40,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:35:40,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:35:40,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:35:40,518.518 INFO    ] time= 05/06/2026 19:35:40
[2026-06-05 19:35:40,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:35:40,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:35:40,670.670 INFO    ] No existing commands found in stream
[2026-06-05 19:35:45,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:35:45,689.689 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 19:35:50,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:35:50,280.280 INFO    ] Checking for system updates...
[2026-06-05 19:35:50,317.317 INFO    ] 200
[2026-06-05 19:35:50,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:35:50,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:35:50,376.376 INFO    ] No update needed
[2026-06-05 19:35:50,379.379 INFO    ] Checking for camera pi updates...
[2026-06-05 19:35:50,414.414 INFO    ] 200
[2026-06-05 19:35:50,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:35:50,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:35:50,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:35:50,514.514 INFO    ] No camera update needed
[2026-06-05 19:35:50,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:35:50,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:35:50,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:35:50,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:35:52,573.573 INFO    ] ================================================
[2026-06-05 19:35:52,588.588 INFO    ] Launching Daemon at Fri Jun  5 19:35:52 IST 2026
[2026-06-05 19:35:52,599.599 INFO    ] ================================================
[2026-06-05 19:35:53,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:35:53
[2026-06-05 19:35:53,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:35:54,043.043 INFO    ] Initializing speech engine...
[2026-06-05 19:35:54,058.058 INFO    ] 2026-06-05 19:35:54
[2026-06-05 19:35:54,329.329 INFO    ] 2026-06-05 19:35:54
[2026-06-05 19:35:54,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:35:54,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:35:54,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:35:54,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:35:54,714.714 INFO    ] time= 05/06/2026 19:35:54
[2026-06-05 19:35:54,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:35:54,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:35:54,896.896 INFO    ] No existing commands found in stream
[2026-06-05 19:35:59,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:35:59,924.924 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 19:36:02,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:36:02,243.243 INFO    ] Checking for system updates...
[2026-06-05 19:36:02,291.291 INFO    ] 200
[2026-06-05 19:36:02,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:02,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:36:02,364.364 INFO    ] No update needed
[2026-06-05 19:36:02,367.367 INFO    ] Checking for camera pi updates...
[2026-06-05 19:36:02,411.411 INFO    ] 200
[2026-06-05 19:36:02,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:02,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:36:02,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:36:02,503.503 INFO    ] No camera update needed
[2026-06-05 19:36:02,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:36:02,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:36:02,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:36:02,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:36:04,570.570 INFO    ] ================================================
[2026-06-05 19:36:04,587.587 INFO    ] Launching Daemon at Fri Jun  5 19:36:04 IST 2026
[2026-06-05 19:36:04,598.598 INFO    ] ================================================
[2026-06-05 19:36:05,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:36:05
[2026-06-05 19:36:05,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:36:06,095.095 INFO    ] Initializing speech engine...
[2026-06-05 19:36:06,104.104 INFO    ] 2026-06-05 19:36:06
[2026-06-05 19:36:06,399.399 INFO    ] 2026-06-05 19:36:06
[2026-06-05 19:36:06,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:36:06,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:36:06,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:36:06,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:36:06,782.782 INFO    ] time= 05/06/2026 19:36:06
[2026-06-05 19:36:06,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:36:06,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:36:06,907.907 INFO    ] No existing commands found in stream
[2026-06-05 19:36:11,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:36:11,920.920 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 19:36:13,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:36:13,192.192 INFO    ] Checking for system updates...
[2026-06-05 19:36:13,229.229 INFO    ] 200
[2026-06-05 19:36:13,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:13,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:36:13,294.294 INFO    ] No update needed
[2026-06-05 19:36:13,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 19:36:13,331.331 INFO    ] 200
[2026-06-05 19:36:13,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:13,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:36:13,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:36:13,446.446 INFO    ] No camera update needed
[2026-06-05 19:36:13,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:36:13,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:36:13,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:36:13,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:36:15,505.505 INFO    ] ================================================
[2026-06-05 19:36:15,522.522 INFO    ] Launching Daemon at Fri Jun  5 19:36:15 IST 2026
[2026-06-05 19:36:15,533.533 INFO    ] ================================================
[2026-06-05 19:36:16,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:36:16
[2026-06-05 19:36:16,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:36:16,975.975 INFO    ] Initializing speech engine...
[2026-06-05 19:36:16,994.994 INFO    ] 2026-06-05 19:36:16
[2026-06-05 19:36:17,284.284 INFO    ] 2026-06-05 19:36:17
[2026-06-05 19:36:17,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:36:20,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:36:20,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:36:20,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:36:20,806.806 INFO    ] time= 05/06/2026 19:36:20
[2026-06-05 19:36:20,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:36:20,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:36:20,864.864 INFO    ] No existing commands found in stream
[2026-06-05 19:36:25,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:36:25,875.875 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 19:36:29,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:36:29,827.827 INFO    ] Checking for system updates...
[2026-06-05 19:36:29,864.864 INFO    ] 200
[2026-06-05 19:36:29,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:29,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:36:29,927.927 INFO    ] No update needed
[2026-06-05 19:36:29,929.929 INFO    ] Checking for camera pi updates...
[2026-06-05 19:36:29,964.964 INFO    ] 200
[2026-06-05 19:36:29,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:30,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:36:30,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:36:30,054.054 INFO    ] No camera update needed
[2026-06-05 19:36:30,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:36:30,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:36:30,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:36:30,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:36:32,113.113 INFO    ] ================================================
[2026-06-05 19:36:32,129.129 INFO    ] Launching Daemon at Fri Jun  5 19:36:32 IST 2026
[2026-06-05 19:36:32,142.142 INFO    ] ================================================
[2026-06-05 19:36:32,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:36:32
[2026-06-05 19:36:33,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:36:33,790.790 INFO    ] Initializing speech engine...
[2026-06-05 19:36:33,804.804 INFO    ] 2026-06-05 19:36:33
[2026-06-05 19:36:34,121.121 INFO    ] 2026-06-05 19:36:34
[2026-06-05 19:36:34,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:36:34,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:36:34,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:36:34,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:36:34,645.645 INFO    ] time= 05/06/2026 19:36:34
[2026-06-05 19:36:34,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:36:34,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:36:34,777.777 INFO    ] No existing commands found in stream
[2026-06-05 19:36:39,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:36:39,812.812 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 19:36:43,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:36:43,212.212 INFO    ] Checking for system updates...
[2026-06-05 19:36:43,251.251 INFO    ] 200
[2026-06-05 19:36:43,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:43,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:36:43,320.320 INFO    ] No update needed
[2026-06-05 19:36:43,323.323 INFO    ] Checking for camera pi updates...
[2026-06-05 19:36:43,362.362 INFO    ] 200
[2026-06-05 19:36:43,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:43,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:36:43,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:36:43,453.453 INFO    ] No camera update needed
[2026-06-05 19:36:43,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:36:43,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:36:43,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:36:43,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:36:45,515.515 INFO    ] ================================================
[2026-06-05 19:36:45,532.532 INFO    ] Launching Daemon at Fri Jun  5 19:36:45 IST 2026
[2026-06-05 19:36:45,543.543 INFO    ] ================================================
[2026-06-05 19:36:46,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:36:46
[2026-06-05 19:36:46,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:36:47,032.032 INFO    ] Initializing speech engine...
[2026-06-05 19:36:47,041.041 INFO    ] 2026-06-05 19:36:47
[2026-06-05 19:36:47,302.302 INFO    ] 2026-06-05 19:36:47
[2026-06-05 19:36:47,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:36:47,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:36:47,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:36:47,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:36:47,781.781 INFO    ] time= 05/06/2026 19:36:47
[2026-06-05 19:36:47,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:36:47,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:36:47,972.972 INFO    ] No existing commands found in stream
[2026-06-05 19:36:53,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:36:53,005.005 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 19:36:54,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:36:54,887.887 INFO    ] Checking for system updates...
[2026-06-05 19:36:54,928.928 INFO    ] 200
[2026-06-05 19:36:54,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:54,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:36:54,992.992 INFO    ] No update needed
[2026-06-05 19:36:54,995.995 INFO    ] Checking for camera pi updates...
[2026-06-05 19:36:55,032.032 INFO    ] 200
[2026-06-05 19:36:55,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:36:55,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:36:55,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:36:55,126.126 INFO    ] No camera update needed
[2026-06-05 19:36:55,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:36:55,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:36:55,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:36:55,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:36:57,183.183 INFO    ] ================================================
[2026-06-05 19:36:57,199.199 INFO    ] Launching Daemon at Fri Jun  5 19:36:57 IST 2026
[2026-06-05 19:36:57,210.210 INFO    ] ================================================
[2026-06-05 19:36:57,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:36:57
[2026-06-05 19:36:58,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:36:58,630.630 INFO    ] Initializing speech engine...
[2026-06-05 19:36:58,640.640 INFO    ] 2026-06-05 19:36:58
[2026-06-05 19:36:58,905.905 INFO    ] 2026-06-05 19:36:58
[2026-06-05 19:36:58,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:36:59,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:36:59,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:36:59,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:36:59,261.261 INFO    ] time= 05/06/2026 19:36:59
[2026-06-05 19:36:59,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:36:59,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:36:59,338.338 INFO    ] No existing commands found in stream
[2026-06-05 19:37:04,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:37:04,354.354 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 19:37:07,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:37:07,152.152 INFO    ] Checking for system updates...
[2026-06-05 19:37:07,189.189 INFO    ] 200
[2026-06-05 19:37:07,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:07,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:37:07,248.248 INFO    ] No update needed
[2026-06-05 19:37:07,250.250 INFO    ] Checking for camera pi updates...
[2026-06-05 19:37:07,283.283 INFO    ] 200
[2026-06-05 19:37:07,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:07,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:37:07,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:37:07,366.366 INFO    ] No camera update needed
[2026-06-05 19:37:07,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:37:07,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:37:07,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:37:07,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:37:09,424.424 INFO    ] ================================================
[2026-06-05 19:37:09,440.440 INFO    ] Launching Daemon at Fri Jun  5 19:37:09 IST 2026
[2026-06-05 19:37:09,452.452 INFO    ] ================================================
[2026-06-05 19:37:10,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:37:10
[2026-06-05 19:37:10,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:37:10,865.865 INFO    ] Initializing speech engine...
[2026-06-05 19:37:10,870.870 INFO    ] 2026-06-05 19:37:10
[2026-06-05 19:37:11,170.170 INFO    ] 2026-06-05 19:37:11
[2026-06-05 19:37:11,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:37:11,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:37:11,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:37:11,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:37:11,536.536 INFO    ] time= 05/06/2026 19:37:11
[2026-06-05 19:37:11,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:37:11,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:37:11,616.616 INFO    ] No existing commands found in stream
[2026-06-05 19:37:16,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:37:16,629.629 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 19:37:22,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:37:22,316.316 INFO    ] Checking for system updates...
[2026-06-05 19:37:22,351.351 INFO    ] 200
[2026-06-05 19:37:22,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:22,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:37:22,411.411 INFO    ] No update needed
[2026-06-05 19:37:22,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 19:37:22,451.451 INFO    ] 200
[2026-06-05 19:37:22,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:22,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:37:22,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:37:22,551.551 INFO    ] No camera update needed
[2026-06-05 19:37:22,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:37:22,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:37:22,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:37:22,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:37:24,608.608 INFO    ] ================================================
[2026-06-05 19:37:24,623.623 INFO    ] Launching Daemon at Fri Jun  5 19:37:24 IST 2026
[2026-06-05 19:37:24,634.634 INFO    ] ================================================
[2026-06-05 19:37:25,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:37:25
[2026-06-05 19:37:25,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:37:26,089.089 INFO    ] Initializing speech engine...
[2026-06-05 19:37:26,098.098 INFO    ] 2026-06-05 19:37:26
[2026-06-05 19:37:26,395.395 INFO    ] 2026-06-05 19:37:26
[2026-06-05 19:37:26,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:37:26,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:37:26,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:37:26,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:37:26,751.751 INFO    ] time= 05/06/2026 19:37:26
[2026-06-05 19:37:26,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:37:26,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:37:26,834.834 INFO    ] No existing commands found in stream
[2026-06-05 19:37:31,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:37:31,848.848 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 19:37:32,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:37:32,305.305 INFO    ] Checking for system updates...
[2026-06-05 19:37:32,345.345 INFO    ] 200
[2026-06-05 19:37:32,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:32,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:37:32,413.413 INFO    ] No update needed
[2026-06-05 19:37:32,416.416 INFO    ] Checking for camera pi updates...
[2026-06-05 19:37:32,458.458 INFO    ] 200
[2026-06-05 19:37:32,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:32,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:37:32,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:37:32,546.546 INFO    ] No camera update needed
[2026-06-05 19:37:32,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:37:32,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:37:32,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:37:32,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:37:34,602.602 INFO    ] ================================================
[2026-06-05 19:37:34,618.618 INFO    ] Launching Daemon at Fri Jun  5 19:37:34 IST 2026
[2026-06-05 19:37:34,630.630 INFO    ] ================================================
[2026-06-05 19:37:35,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:37:35
[2026-06-05 19:37:35,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:37:36,053.053 INFO    ] Initializing speech engine...
[2026-06-05 19:37:36,062.062 INFO    ] 2026-06-05 19:37:36
[2026-06-05 19:37:36,310.310 INFO    ] 2026-06-05 19:37:36
[2026-06-05 19:37:36,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:37:36,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:37:36,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:37:36,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:37:36,775.775 INFO    ] time= 05/06/2026 19:37:36
[2026-06-05 19:37:36,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:37:36,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:37:36,941.941 INFO    ] No existing commands found in stream
[2026-06-05 19:37:41,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:37:41,956.956 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 19:37:42,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:37:42,560.560 INFO    ] Checking for system updates...
[2026-06-05 19:37:42,597.597 INFO    ] 200
[2026-06-05 19:37:42,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:42,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:37:42,654.654 INFO    ] No update needed
[2026-06-05 19:37:42,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 19:37:42,690.690 INFO    ] 200
[2026-06-05 19:37:42,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:42,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:37:42,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:37:42,888.888 INFO    ] No camera update needed
[2026-06-05 19:37:42,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:37:42,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:37:42,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:37:42,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:37:44,946.946 INFO    ] ================================================
[2026-06-05 19:37:44,962.962 INFO    ] Launching Daemon at Fri Jun  5 19:37:44 IST 2026
[2026-06-05 19:37:44,973.973 INFO    ] ================================================
[2026-06-05 19:37:45,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:37:45
[2026-06-05 19:37:46,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:37:46,446.446 INFO    ] Initializing speech engine...
[2026-06-05 19:37:46,457.457 INFO    ] 2026-06-05 19:37:46
[2026-06-05 19:37:46,717.717 INFO    ] 2026-06-05 19:37:46
[2026-06-05 19:37:46,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:37:46,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:37:47,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:37:47,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:37:47,209.209 INFO    ] time= 05/06/2026 19:37:47
[2026-06-05 19:37:47,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:37:47,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:37:47,388.388 INFO    ] No existing commands found in stream
[2026-06-05 19:37:52,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:37:52,430.430 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 19:37:55,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:37:55,842.842 INFO    ] Checking for system updates...
[2026-06-05 19:37:55,881.881 INFO    ] 200
[2026-06-05 19:37:55,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:55,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:37:55,939.939 INFO    ] No update needed
[2026-06-05 19:37:55,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 19:37:55,976.976 INFO    ] 200
[2026-06-05 19:37:55,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:37:56,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:37:56,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:37:56,069.069 INFO    ] No camera update needed
[2026-06-05 19:37:56,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:37:56,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:37:56,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:37:56,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:37:58,126.126 INFO    ] ================================================
[2026-06-05 19:37:58,144.144 INFO    ] Launching Daemon at Fri Jun  5 19:37:58 IST 2026
[2026-06-05 19:37:58,155.155 INFO    ] ================================================
[2026-06-05 19:37:58,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:37:58
[2026-06-05 19:37:59,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:37:59,647.647 INFO    ] Initializing speech engine...
[2026-06-05 19:37:59,672.672 INFO    ] 2026-06-05 19:37:59
[2026-06-05 19:37:59,933.933 INFO    ] 2026-06-05 19:37:59
[2026-06-05 19:37:59,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:38:00,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:38:00,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:38:00,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:38:00,310.310 INFO    ] time= 05/06/2026 19:38:00
[2026-06-05 19:38:00,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:38:00,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:38:00,481.481 INFO    ] No existing commands found in stream
[2026-06-05 19:38:05,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:38:05,519.519 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 19:38:09,185.185 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:38:09,188.188 INFO    ] Checking for system updates...
[2026-06-05 19:38:09,224.224 INFO    ] 200
[2026-06-05 19:38:09,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:09,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:38:09,283.283 INFO    ] No update needed
[2026-06-05 19:38:09,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 19:38:09,321.321 INFO    ] 200
[2026-06-05 19:38:09,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:09,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:38:09,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:38:09,397.397 INFO    ] No camera update needed
[2026-06-05 19:38:09,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:38:09,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:38:09,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:38:09,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:38:11,455.455 INFO    ] ================================================
[2026-06-05 19:38:11,471.471 INFO    ] Launching Daemon at Fri Jun  5 19:38:11 IST 2026
[2026-06-05 19:38:11,482.482 INFO    ] ================================================
[2026-06-05 19:38:12,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:38:12
[2026-06-05 19:38:12,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:38:12,889.889 INFO    ] Initializing speech engine...
[2026-06-05 19:38:12,896.896 INFO    ] 2026-06-05 19:38:12
[2026-06-05 19:38:13,200.200 INFO    ] 2026-06-05 19:38:13
[2026-06-05 19:38:13,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:38:13,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:38:13,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:38:13,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:38:13,588.588 INFO    ] time= 05/06/2026 19:38:13
[2026-06-05 19:38:13,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:38:13,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:38:13,715.715 INFO    ] No existing commands found in stream
[2026-06-05 19:38:18,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:38:18,730.730 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 19:38:20,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:38:20,600.600 INFO    ] Checking for system updates...
[2026-06-05 19:38:20,636.636 INFO    ] 200
[2026-06-05 19:38:20,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:20,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:38:20,702.702 INFO    ] No update needed
[2026-06-05 19:38:20,704.704 INFO    ] Checking for camera pi updates...
[2026-06-05 19:38:20,742.742 INFO    ] 200
[2026-06-05 19:38:20,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:20,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:38:20,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:38:20,834.834 INFO    ] No camera update needed
[2026-06-05 19:38:20,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:38:20,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:38:20,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:38:20,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:38:22,892.892 INFO    ] ================================================
[2026-06-05 19:38:22,908.908 INFO    ] Launching Daemon at Fri Jun  5 19:38:22 IST 2026
[2026-06-05 19:38:22,920.920 INFO    ] ================================================
[2026-06-05 19:38:23,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:38:23
[2026-06-05 19:38:24,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:38:24,334.334 INFO    ] Initializing speech engine...
[2026-06-05 19:38:24,353.353 INFO    ] 2026-06-05 19:38:24
[2026-06-05 19:38:24,614.614 INFO    ] 2026-06-05 19:38:24
[2026-06-05 19:38:24,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:38:25,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:38:25,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:38:25,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:38:25,485.485 INFO    ] time= 05/06/2026 19:38:25
[2026-06-05 19:38:25,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:38:25,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:38:25,663.663 INFO    ] No existing commands found in stream
[2026-06-05 19:38:30,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:38:30,691.691 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 19:38:33,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:38:33,266.266 INFO    ] Checking for system updates...
[2026-06-05 19:38:33,302.302 INFO    ] 200
[2026-06-05 19:38:33,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:33,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:38:33,360.360 INFO    ] No update needed
[2026-06-05 19:38:33,362.362 INFO    ] Checking for camera pi updates...
[2026-06-05 19:38:33,396.396 INFO    ] 200
[2026-06-05 19:38:33,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:33,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:38:33,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:38:33,492.492 INFO    ] No camera update needed
[2026-06-05 19:38:33,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:38:33,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:38:33,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:38:33,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:38:35,549.549 INFO    ] ================================================
[2026-06-05 19:38:35,565.565 INFO    ] Launching Daemon at Fri Jun  5 19:38:35 IST 2026
[2026-06-05 19:38:35,575.575 INFO    ] ================================================
[2026-06-05 19:38:36,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:38:36
[2026-06-05 19:38:36,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:38:37,271.271 INFO    ] Initializing speech engine...
[2026-06-05 19:38:37,280.280 INFO    ] 2026-06-05 19:38:37
[2026-06-05 19:38:37,570.570 INFO    ] 2026-06-05 19:38:37
[2026-06-05 19:38:37,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:38:37,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:38:37,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:38:38,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:38:38,018.018 INFO    ] time= 05/06/2026 19:38:38
[2026-06-05 19:38:38,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:38:38,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:38:38,170.170 INFO    ] No existing commands found in stream
[2026-06-05 19:38:43,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:38:43,183.183 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 19:38:44,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:38:44,953.953 INFO    ] Checking for system updates...
[2026-06-05 19:38:44,990.990 INFO    ] 200
[2026-06-05 19:38:44,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:45,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:38:45,057.057 INFO    ] No update needed
[2026-06-05 19:38:45,059.059 INFO    ] Checking for camera pi updates...
[2026-06-05 19:38:45,097.097 INFO    ] 200
[2026-06-05 19:38:45,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:45,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:38:45,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:38:45,180.180 INFO    ] No camera update needed
[2026-06-05 19:38:45,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:38:45,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:38:45,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:38:45,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:38:47,236.236 INFO    ] ================================================
[2026-06-05 19:38:47,252.252 INFO    ] Launching Daemon at Fri Jun  5 19:38:47 IST 2026
[2026-06-05 19:38:47,263.263 INFO    ] ================================================
[2026-06-05 19:38:47,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:38:47
[2026-06-05 19:38:48,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:38:48,701.701 INFO    ] Initializing speech engine...
[2026-06-05 19:38:48,709.709 INFO    ] 2026-06-05 19:38:48
[2026-06-05 19:38:48,983.983 INFO    ] 2026-06-05 19:38:48
[2026-06-05 19:38:49,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:38:49,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:38:49,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:38:49,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:38:49,370.370 INFO    ] time= 05/06/2026 19:38:49
[2026-06-05 19:38:49,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:38:49,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:38:49,549.549 INFO    ] No existing commands found in stream
[2026-06-05 19:38:54,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:38:54,582.582 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 19:38:57,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:38:57,122.122 INFO    ] Checking for system updates...
[2026-06-05 19:38:57,166.166 INFO    ] 200
[2026-06-05 19:38:57,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:57,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:38:57,230.230 INFO    ] No update needed
[2026-06-05 19:38:57,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 19:38:57,269.269 INFO    ] 200
[2026-06-05 19:38:57,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:38:57,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:38:57,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:38:57,364.364 INFO    ] No camera update needed
[2026-06-05 19:38:57,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:38:57,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:38:57,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:38:57,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:38:59,422.422 INFO    ] ================================================
[2026-06-05 19:38:59,438.438 INFO    ] Launching Daemon at Fri Jun  5 19:38:59 IST 2026
[2026-06-05 19:38:59,449.449 INFO    ] ================================================
[2026-06-05 19:39:00,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:39:00
[2026-06-05 19:39:00,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:39:01,143.143 INFO    ] Initializing speech engine...
[2026-06-05 19:39:01,157.157 INFO    ] 2026-06-05 19:39:01
[2026-06-05 19:39:01,673.673 INFO    ] 2026-06-05 19:39:01
[2026-06-05 19:39:01,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:39:01,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:39:02,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:39:02,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:39:02,194.194 INFO    ] time= 05/06/2026 19:39:02
[2026-06-05 19:39:02,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:39:02,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:39:02,389.389 INFO    ] No existing commands found in stream
[2026-06-05 19:39:07,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:39:07,403.403 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 19:39:11,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:39:11,563.563 INFO    ] Checking for system updates...
[2026-06-05 19:39:11,601.601 INFO    ] 200
[2026-06-05 19:39:11,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:39:11,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:39:11,667.667 INFO    ] No update needed
[2026-06-05 19:39:11,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 19:39:11,708.708 INFO    ] 200
[2026-06-05 19:39:11,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:39:11,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:39:11,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:39:11,803.803 INFO    ] No camera update needed
[2026-06-05 19:39:11,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:39:11,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:39:11,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:39:11,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:39:13,861.861 INFO    ] ================================================
[2026-06-05 19:39:13,876.876 INFO    ] Launching Daemon at Fri Jun  5 19:39:13 IST 2026
[2026-06-05 19:39:13,887.887 INFO    ] ================================================
[2026-06-05 19:39:14,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:39:14
[2026-06-05 19:39:15,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:39:15,356.356 INFO    ] Initializing speech engine...
[2026-06-05 19:39:15,373.373 INFO    ] 2026-06-05 19:39:15
[2026-06-05 19:39:15,664.664 INFO    ] 2026-06-05 19:39:15
[2026-06-05 19:39:15,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:39:15,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:39:15,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:39:16,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:39:16,054.054 INFO    ] time= 05/06/2026 19:39:16
[2026-06-05 19:39:16,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:39:16,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:39:16,181.181 INFO    ] No existing commands found in stream
[2026-06-05 19:39:21,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:39:21,194.194 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 19:39:28,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:39:28,566.566 INFO    ] Checking for system updates...
[2026-06-05 19:39:28,607.607 INFO    ] 200
[2026-06-05 19:39:28,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:39:28,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:39:28,666.666 INFO    ] No update needed
[2026-06-05 19:39:28,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 19:39:28,703.703 INFO    ] 200
[2026-06-05 19:39:28,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:39:28,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:39:28,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:39:28,776.776 INFO    ] No camera update needed
[2026-06-05 19:39:28,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:39:28,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:39:28,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:39:28,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:39:30,835.835 INFO    ] ================================================
[2026-06-05 19:39:30,850.850 INFO    ] Launching Daemon at Fri Jun  5 19:39:30 IST 2026
[2026-06-05 19:39:30,860.860 INFO    ] ================================================
[2026-06-05 19:39:31,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:39:31
[2026-06-05 19:39:32,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:39:32,404.404 INFO    ] Initializing speech engine...
[2026-06-05 19:39:32,413.413 INFO    ] 2026-06-05 19:39:32
[2026-06-05 19:39:32,684.684 INFO    ] 2026-06-05 19:39:32
[2026-06-05 19:39:32,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:39:32,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:39:32,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:39:33,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:39:33,135.135 INFO    ] time= 05/06/2026 19:39:33
[2026-06-05 19:39:33,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:39:33,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:39:33,320.320 INFO    ] No existing commands found in stream
[2026-06-05 19:39:38,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:39:38,335.335 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 19:39:39,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:39:39,118.118 INFO    ] Checking for system updates...
[2026-06-05 19:39:39,155.155 INFO    ] 200
[2026-06-05 19:39:39,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:39:39,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:39:39,220.220 INFO    ] No update needed
[2026-06-05 19:39:39,226.226 INFO    ] Checking for camera pi updates...
[2026-06-05 19:39:39,278.278 INFO    ] 200
[2026-06-05 19:39:39,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:39:39,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:39:39,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:39:39,364.364 INFO    ] No camera update needed
[2026-06-05 19:39:39,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:39:39,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:39:39,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:39:39,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:39:41,421.421 INFO    ] ================================================
[2026-06-05 19:39:41,435.435 INFO    ] Launching Daemon at Fri Jun  5 19:39:41 IST 2026
[2026-06-05 19:39:41,447.447 INFO    ] ================================================
[2026-06-05 19:39:42,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:39:42
[2026-06-05 19:39:42,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:39:42,860.860 INFO    ] Initializing speech engine...
[2026-06-05 19:39:42,875.875 INFO    ] 2026-06-05 19:39:42
[2026-06-05 19:39:43,141.141 INFO    ] 2026-06-05 19:39:43
[2026-06-05 19:39:43,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:39:43,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:39:43,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:39:43,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:39:43,636.636 INFO    ] time= 05/06/2026 19:39:43
[2026-06-05 19:39:43,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:39:43,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:39:43,773.773 INFO    ] No existing commands found in stream
[2026-06-05 19:39:48,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:39:48,788.788 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 19:39:52,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:39:52,061.061 INFO    ] Checking for system updates...
[2026-06-05 19:39:52,098.098 INFO    ] 200
[2026-06-05 19:39:52,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:39:52,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:39:52,157.157 INFO    ] No update needed
[2026-06-05 19:39:52,159.159 INFO    ] Checking for camera pi updates...
[2026-06-05 19:39:52,197.197 INFO    ] 200
[2026-06-05 19:39:52,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:39:52,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:39:52,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:39:52,393.393 INFO    ] No camera update needed
[2026-06-05 19:39:52,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:39:52,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:39:52,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:39:52,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:39:54,451.451 INFO    ] ================================================
[2026-06-05 19:39:54,466.466 INFO    ] Launching Daemon at Fri Jun  5 19:39:54 IST 2026
[2026-06-05 19:39:54,477.477 INFO    ] ================================================
[2026-06-05 19:39:55,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:39:55
[2026-06-05 19:39:55,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:39:55,891.891 INFO    ] Initializing speech engine...
[2026-06-05 19:39:55,898.898 INFO    ] 2026-06-05 19:39:55
[2026-06-05 19:39:56,203.203 INFO    ] 2026-06-05 19:39:56
[2026-06-05 19:39:56,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:39:57,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:39:57,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:39:57,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:39:57,323.323 INFO    ] time= 05/06/2026 19:39:57
[2026-06-05 19:39:57,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:39:57,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:39:57,501.501 INFO    ] No existing commands found in stream
[2026-06-05 19:40:02,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:40:02,511.511 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 19:40:08,159.159 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:40:08,162.162 INFO    ] Checking for system updates...
[2026-06-05 19:40:08,201.201 INFO    ] 200
[2026-06-05 19:40:08,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:08,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:40:08,261.261 INFO    ] No update needed
[2026-06-05 19:40:08,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 19:40:08,299.299 INFO    ] 200
[2026-06-05 19:40:08,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:08,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:40:08,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:40:08,378.378 INFO    ] No camera update needed
[2026-06-05 19:40:08,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:40:08,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:40:08,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:40:08,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:40:10,436.436 INFO    ] ================================================
[2026-06-05 19:40:10,450.450 INFO    ] Launching Daemon at Fri Jun  5 19:40:10 IST 2026
[2026-06-05 19:40:10,467.467 INFO    ] ================================================
[2026-06-05 19:40:11,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:40:11
[2026-06-05 19:40:11,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:40:11,900.900 INFO    ] Initializing speech engine...
[2026-06-05 19:40:11,919.919 INFO    ] 2026-06-05 19:40:11
[2026-06-05 19:40:12,177.177 INFO    ] 2026-06-05 19:40:12
[2026-06-05 19:40:12,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:40:12,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:40:12,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:40:12,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:40:12,673.673 INFO    ] time= 05/06/2026 19:40:12
[2026-06-05 19:40:12,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:40:12,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:40:12,888.888 INFO    ] No existing commands found in stream
[2026-06-05 19:40:17,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:40:17,906.906 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 19:40:21,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:40:21,284.284 INFO    ] Checking for system updates...
[2026-06-05 19:40:21,320.320 INFO    ] 200
[2026-06-05 19:40:21,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:21,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:40:21,380.380 INFO    ] No update needed
[2026-06-05 19:40:21,382.382 INFO    ] Checking for camera pi updates...
[2026-06-05 19:40:21,416.416 INFO    ] 200
[2026-06-05 19:40:21,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:21,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:40:21,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:40:21,507.507 INFO    ] No camera update needed
[2026-06-05 19:40:21,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:40:21,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:40:21,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:40:21,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:40:23,565.565 INFO    ] ================================================
[2026-06-05 19:40:23,580.580 INFO    ] Launching Daemon at Fri Jun  5 19:40:23 IST 2026
[2026-06-05 19:40:23,591.591 INFO    ] ================================================
[2026-06-05 19:40:24,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:40:24
[2026-06-05 19:40:24,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:40:25,000.000 INFO    ] Initializing speech engine...
[2026-06-05 19:40:25,015.015 INFO    ] 2026-06-05 19:40:25
[2026-06-05 19:40:25,281.281 INFO    ] 2026-06-05 19:40:25
[2026-06-05 19:40:25,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:40:27,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:40:27,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:40:28,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:40:28,126.126 INFO    ] time= 05/06/2026 19:40:28
[2026-06-05 19:40:28,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:40:28,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:40:28,211.211 INFO    ] No existing commands found in stream
[2026-06-05 19:40:33,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:40:33,220.220 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 19:40:36,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:40:36,193.193 INFO    ] Checking for system updates...
[2026-06-05 19:40:36,233.233 INFO    ] 200
[2026-06-05 19:40:36,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:36,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:40:36,296.296 INFO    ] No update needed
[2026-06-05 19:40:36,299.299 INFO    ] Checking for camera pi updates...
[2026-06-05 19:40:36,334.334 INFO    ] 200
[2026-06-05 19:40:36,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:36,385.385 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:40:36,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:40:36,433.433 INFO    ] No camera update needed
[2026-06-05 19:40:36,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:40:36,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:40:36,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:40:36,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:40:38,490.490 INFO    ] ================================================
[2026-06-05 19:40:38,506.506 INFO    ] Launching Daemon at Fri Jun  5 19:40:38 IST 2026
[2026-06-05 19:40:38,517.517 INFO    ] ================================================
[2026-06-05 19:40:39,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:40:39
[2026-06-05 19:40:39,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:40:39,919.919 INFO    ] Initializing speech engine...
[2026-06-05 19:40:39,928.928 INFO    ] 2026-06-05 19:40:39
[2026-06-05 19:40:40,217.217 INFO    ] 2026-06-05 19:40:40
[2026-06-05 19:40:40,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:40:40,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:40:40,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:40:40,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:40:40,627.627 INFO    ] time= 05/06/2026 19:40:40
[2026-06-05 19:40:40,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:40:40,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:40:40,710.710 INFO    ] No existing commands found in stream
[2026-06-05 19:40:45,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:40:45,725.725 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 19:40:48,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:40:48,290.290 INFO    ] Checking for system updates...
[2026-06-05 19:40:48,326.326 INFO    ] 200
[2026-06-05 19:40:48,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:48,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:40:48,383.383 INFO    ] No update needed
[2026-06-05 19:40:48,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 19:40:48,419.419 INFO    ] 200
[2026-06-05 19:40:48,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:48,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:40:48,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:40:48,506.506 INFO    ] No camera update needed
[2026-06-05 19:40:48,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:40:48,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:40:48,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:40:48,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:40:50,560.560 INFO    ] ================================================
[2026-06-05 19:40:50,575.575 INFO    ] Launching Daemon at Fri Jun  5 19:40:50 IST 2026
[2026-06-05 19:40:50,586.586 INFO    ] ================================================
[2026-06-05 19:40:51,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:40:51
[2026-06-05 19:40:51,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:40:51,989.989 INFO    ] Initializing speech engine...
[2026-06-05 19:40:51,997.997 INFO    ] 2026-06-05 19:40:51
[2026-06-05 19:40:52,287.287 INFO    ] 2026-06-05 19:40:52
[2026-06-05 19:40:52,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:40:52,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:40:52,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:40:52,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:40:52,657.657 INFO    ] time= 05/06/2026 19:40:52
[2026-06-05 19:40:52,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:40:52,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:40:52,778.778 INFO    ] No existing commands found in stream
[2026-06-05 19:40:57,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:40:57,794.794 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 19:40:59,327.327 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:40:59,330.330 INFO    ] Checking for system updates...
[2026-06-05 19:40:59,368.368 INFO    ] 200
[2026-06-05 19:40:59,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:59,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:40:59,427.427 INFO    ] No update needed
[2026-06-05 19:40:59,429.429 INFO    ] Checking for camera pi updates...
[2026-06-05 19:40:59,464.464 INFO    ] 200
[2026-06-05 19:40:59,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:40:59,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:40:59,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:40:59,557.557 INFO    ] No camera update needed
[2026-06-05 19:40:59,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:40:59,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:40:59,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:40:59,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:41:01,641.641 INFO    ] ================================================
[2026-06-05 19:41:01,678.678 INFO    ] Launching Daemon at Fri Jun  5 19:41:01 IST 2026
[2026-06-05 19:41:01,699.699 INFO    ] ================================================
[2026-06-05 19:41:02,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:41:02
[2026-06-05 19:41:03,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:41:03,331.331 INFO    ] Initializing speech engine...
[2026-06-05 19:41:03,337.337 INFO    ] 2026-06-05 19:41:03
[2026-06-05 19:41:03,631.631 INFO    ] 2026-06-05 19:41:03
[2026-06-05 19:41:03,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:41:03,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:41:03,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:41:03,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:41:04,003.003 INFO    ] time= 05/06/2026 19:41:03
[2026-06-05 19:41:04,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:41:04,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:41:04,126.126 INFO    ] No existing commands found in stream
[2026-06-05 19:41:09,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:41:09,141.141 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 19:41:13,285.285 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:41:13,288.288 INFO    ] Checking for system updates...
[2026-06-05 19:41:13,324.324 INFO    ] 200
[2026-06-05 19:41:13,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:41:13,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:41:13,382.382 INFO    ] No update needed
[2026-06-05 19:41:13,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 19:41:13,418.418 INFO    ] 200
[2026-06-05 19:41:13,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:41:13,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:41:13,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:41:13,510.510 INFO    ] No camera update needed
[2026-06-05 19:41:13,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:41:13,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:41:13,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:41:13,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:41:15,565.565 INFO    ] ================================================
[2026-06-05 19:41:15,581.581 INFO    ] Launching Daemon at Fri Jun  5 19:41:15 IST 2026
[2026-06-05 19:41:15,592.592 INFO    ] ================================================
[2026-06-05 19:41:16,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:41:16
[2026-06-05 19:41:16,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:41:17,126.126 INFO    ] Initializing speech engine...
[2026-06-05 19:41:17,137.137 INFO    ] 2026-06-05 19:41:17
[2026-06-05 19:41:17,414.414 INFO    ] 2026-06-05 19:41:17
[2026-06-05 19:41:17,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:41:17,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:41:17,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:41:17,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:41:17,904.904 INFO    ] time= 05/06/2026 19:41:17
[2026-06-05 19:41:17,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:41:17,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:41:18,050.050 INFO    ] No existing commands found in stream
[2026-06-05 19:41:23,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:41:23,090.090 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 19:41:23,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:41:23,656.656 INFO    ] Checking for system updates...
[2026-06-05 19:41:23,698.698 INFO    ] 200
[2026-06-05 19:41:23,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:41:23,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:41:23,757.757 INFO    ] No update needed
[2026-06-05 19:41:23,760.760 INFO    ] Checking for camera pi updates...
[2026-06-05 19:41:23,795.795 INFO    ] 200
[2026-06-05 19:41:23,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:41:23,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:41:23,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:41:23,891.891 INFO    ] No camera update needed
[2026-06-05 19:41:23,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:41:23,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:41:23,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:41:23,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:41:25,946.946 INFO    ] ================================================
[2026-06-05 19:41:25,961.961 INFO    ] Launching Daemon at Fri Jun  5 19:41:25 IST 2026
[2026-06-05 19:41:25,972.972 INFO    ] ================================================
[2026-06-05 19:41:26,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:41:26
[2026-06-05 19:41:27,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:41:27,399.399 INFO    ] Initializing speech engine...
[2026-06-05 19:41:27,410.410 INFO    ] 2026-06-05 19:41:27
[2026-06-05 19:41:27,661.661 INFO    ] 2026-06-05 19:41:27
[2026-06-05 19:41:27,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:41:29,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:41:29,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:41:29,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:41:29,895.895 INFO    ] time= 05/06/2026 19:41:29
[2026-06-05 19:41:29,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:41:29,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:41:29,983.983 INFO    ] No existing commands found in stream
[2026-06-05 19:41:34,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:41:34,998.998 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 19:41:36,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:41:36,812.812 INFO    ] Checking for system updates...
[2026-06-05 19:41:36,854.854 INFO    ] 200
[2026-06-05 19:41:36,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:41:36,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:41:36,920.920 INFO    ] No update needed
[2026-06-05 19:41:36,922.922 INFO    ] Checking for camera pi updates...
[2026-06-05 19:41:36,959.959 INFO    ] 200
[2026-06-05 19:41:36,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:41:37,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:41:37,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:41:37,060.060 INFO    ] No camera update needed
[2026-06-05 19:41:37,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:41:37,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:41:37,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:41:37,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:41:39,126.126 INFO    ] ================================================
[2026-06-05 19:41:39,141.141 INFO    ] Launching Daemon at Fri Jun  5 19:41:39 IST 2026
[2026-06-05 19:41:39,152.152 INFO    ] ================================================
[2026-06-05 19:41:39,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:41:39
[2026-06-05 19:41:40,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:41:40,569.569 INFO    ] Initializing speech engine...
[2026-06-05 19:41:40,578.578 INFO    ] 2026-06-05 19:41:40
[2026-06-05 19:41:40,837.837 INFO    ] 2026-06-05 19:41:40
[2026-06-05 19:41:40,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:41:41,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:41:41,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:41:41,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:41:41,302.302 INFO    ] time= 05/06/2026 19:41:41
[2026-06-05 19:41:41,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:41:41,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:41:41,468.468 INFO    ] No existing commands found in stream
[2026-06-05 19:41:46,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:41:46,520.520 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 19:41:48,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:41:48,425.425 INFO    ] Checking for system updates...
[2026-06-05 19:41:48,461.461 INFO    ] 200
[2026-06-05 19:41:48,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:41:48,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:41:48,526.526 INFO    ] No update needed
[2026-06-05 19:41:48,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 19:41:48,564.564 INFO    ] 200
[2026-06-05 19:41:48,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:41:48,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:41:48,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:41:48,657.657 INFO    ] No camera update needed
[2026-06-05 19:41:48,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:41:48,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:41:48,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:41:48,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:41:50,718.718 INFO    ] ================================================
[2026-06-05 19:41:50,733.733 INFO    ] Launching Daemon at Fri Jun  5 19:41:50 IST 2026
[2026-06-05 19:41:50,744.744 INFO    ] ================================================
[2026-06-05 19:41:51,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:41:51
[2026-06-05 19:41:51,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:41:52,218.218 INFO    ] Initializing speech engine...
[2026-06-05 19:41:52,232.232 INFO    ] 2026-06-05 19:41:52
[2026-06-05 19:41:52,508.508 INFO    ] 2026-06-05 19:41:52
[2026-06-05 19:41:52,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:41:52,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:41:52,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:41:52,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:41:52,893.893 INFO    ] time= 05/06/2026 19:41:52
[2026-06-05 19:41:52,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:41:52,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:41:52,974.974 INFO    ] No existing commands found in stream
[2026-06-05 19:41:57,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:41:57,989.989 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 19:42:00,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:42:00,481.481 INFO    ] Checking for system updates...
[2026-06-05 19:42:00,517.517 INFO    ] 200
[2026-06-05 19:42:00,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:00,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:42:00,579.579 INFO    ] No update needed
[2026-06-05 19:42:00,581.581 INFO    ] Checking for camera pi updates...
[2026-06-05 19:42:00,615.615 INFO    ] 200
[2026-06-05 19:42:00,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:00,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:42:00,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:42:00,806.806 INFO    ] No camera update needed
[2026-06-05 19:42:00,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:42:00,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:42:00,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:42:00,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:42:02,876.876 INFO    ] ================================================
[2026-06-05 19:42:02,897.897 INFO    ] Launching Daemon at Fri Jun  5 19:42:02 IST 2026
[2026-06-05 19:42:02,917.917 INFO    ] ================================================
[2026-06-05 19:42:03,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:42:03
[2026-06-05 19:42:04,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:42:04,463.463 INFO    ] Initializing speech engine...
[2026-06-05 19:42:04,477.477 INFO    ] 2026-06-05 19:42:04
[2026-06-05 19:42:04,745.745 INFO    ] 2026-06-05 19:42:04
[2026-06-05 19:42:04,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:42:04,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:42:04,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:42:05,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:42:05,118.118 INFO    ] time= 05/06/2026 19:42:05
[2026-06-05 19:42:05,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:42:05,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:42:05,239.239 INFO    ] No existing commands found in stream
[2026-06-05 19:42:10,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:42:10,259.259 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 19:42:13,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:42:13,125.125 INFO    ] Checking for system updates...
[2026-06-05 19:42:13,165.165 INFO    ] 200
[2026-06-05 19:42:13,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:13,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:42:13,227.227 INFO    ] No update needed
[2026-06-05 19:42:13,229.229 INFO    ] Checking for camera pi updates...
[2026-06-05 19:42:13,266.266 INFO    ] 200
[2026-06-05 19:42:13,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:13,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:42:13,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:42:13,363.363 INFO    ] No camera update needed
[2026-06-05 19:42:13,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:42:13,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:42:13,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:42:13,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:42:15,418.418 INFO    ] ================================================
[2026-06-05 19:42:15,434.434 INFO    ] Launching Daemon at Fri Jun  5 19:42:15 IST 2026
[2026-06-05 19:42:15,445.445 INFO    ] ================================================
[2026-06-05 19:42:16,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:42:16
[2026-06-05 19:42:16,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:42:16,897.897 INFO    ] Initializing speech engine...
[2026-06-05 19:42:16,903.903 INFO    ] 2026-06-05 19:42:16
[2026-06-05 19:42:17,192.192 INFO    ] 2026-06-05 19:42:17
[2026-06-05 19:42:17,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:42:17,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:42:17,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:42:17,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:42:17,566.566 INFO    ] time= 05/06/2026 19:42:17
[2026-06-05 19:42:17,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:42:17,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:42:17,690.690 INFO    ] No existing commands found in stream
[2026-06-05 19:42:22,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:42:22,705.705 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 19:42:23,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:42:23,851.851 INFO    ] Checking for system updates...
[2026-06-05 19:42:23,890.890 INFO    ] 200
[2026-06-05 19:42:23,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:23,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:42:23,953.953 INFO    ] No update needed
[2026-06-05 19:42:23,955.955 INFO    ] Checking for camera pi updates...
[2026-06-05 19:42:23,989.989 INFO    ] 200
[2026-06-05 19:42:23,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:24,037.037 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:42:24,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:42:24,083.083 INFO    ] No camera update needed
[2026-06-05 19:42:24,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:42:24,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:42:24,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:42:24,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:42:26,139.139 INFO    ] ================================================
[2026-06-05 19:42:26,153.153 INFO    ] Launching Daemon at Fri Jun  5 19:42:26 IST 2026
[2026-06-05 19:42:26,164.164 INFO    ] ================================================
[2026-06-05 19:42:26,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:42:26
[2026-06-05 19:42:27,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:42:27,768.768 INFO    ] Initializing speech engine...
[2026-06-05 19:42:27,776.776 INFO    ] 2026-06-05 19:42:27
[2026-06-05 19:42:28,057.057 INFO    ] 2026-06-05 19:42:28
[2026-06-05 19:42:28,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:42:30,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:42:30,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:42:30,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:42:30,788.788 INFO    ] time= 05/06/2026 19:42:30
[2026-06-05 19:42:30,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:42:30,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:42:30,871.871 INFO    ] No existing commands found in stream
[2026-06-05 19:42:35,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:42:35,884.884 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 19:42:38,116.116 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:42:38,119.119 INFO    ] Checking for system updates...
[2026-06-05 19:42:38,155.155 INFO    ] 200
[2026-06-05 19:42:38,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:38,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:42:38,223.223 INFO    ] No update needed
[2026-06-05 19:42:38,226.226 INFO    ] Checking for camera pi updates...
[2026-06-05 19:42:38,265.265 INFO    ] 200
[2026-06-05 19:42:38,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:38,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:42:38,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:42:38,364.364 INFO    ] No camera update needed
[2026-06-05 19:42:38,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:42:38,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:42:38,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:42:38,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:42:40,419.419 INFO    ] ================================================
[2026-06-05 19:42:40,435.435 INFO    ] Launching Daemon at Fri Jun  5 19:42:40 IST 2026
[2026-06-05 19:42:40,446.446 INFO    ] ================================================
[2026-06-05 19:42:41,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:42:41
[2026-06-05 19:42:41,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:42:41,873.873 INFO    ] Initializing speech engine...
[2026-06-05 19:42:41,888.888 INFO    ] 2026-06-05 19:42:41
[2026-06-05 19:42:42,157.157 INFO    ] 2026-06-05 19:42:42
[2026-06-05 19:42:42,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:42:42,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:42:42,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:42:42,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:42:42,533.533 INFO    ] time= 05/06/2026 19:42:42
[2026-06-05 19:42:42,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:42:42,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:42:42,657.657 INFO    ] No existing commands found in stream
[2026-06-05 19:42:47,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:42:47,672.672 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 19:42:51,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:42:51,885.885 INFO    ] Checking for system updates...
[2026-06-05 19:42:51,924.924 INFO    ] 200
[2026-06-05 19:42:51,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:51,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:42:51,987.987 INFO    ] No update needed
[2026-06-05 19:42:51,990.990 INFO    ] Checking for camera pi updates...
[2026-06-05 19:42:52,026.026 INFO    ] 200
[2026-06-05 19:42:52,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:42:52,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:42:52,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:42:52,117.117 INFO    ] No camera update needed
[2026-06-05 19:42:52,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:42:52,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:42:52,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:42:52,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:42:54,172.172 INFO    ] ================================================
[2026-06-05 19:42:54,187.187 INFO    ] Launching Daemon at Fri Jun  5 19:42:54 IST 2026
[2026-06-05 19:42:54,198.198 INFO    ] ================================================
[2026-06-05 19:42:54,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:42:54
[2026-06-05 19:42:55,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:42:55,792.792 INFO    ] Initializing speech engine...
[2026-06-05 19:42:55,800.800 INFO    ] 2026-06-05 19:42:55
[2026-06-05 19:42:56,068.068 INFO    ] 2026-06-05 19:42:56
[2026-06-05 19:42:56,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:42:56,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:42:56,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:42:56,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:42:56,536.536 INFO    ] time= 05/06/2026 19:42:56
[2026-06-05 19:42:56,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:42:56,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:42:56,680.680 INFO    ] No existing commands found in stream
[2026-06-05 19:43:01,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:43:01,701.701 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 19:43:05,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:43:06,002.002 INFO    ] Checking for system updates...
[2026-06-05 19:43:06,043.043 INFO    ] 200
[2026-06-05 19:43:06,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:06,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:43:06,113.113 INFO    ] No update needed
[2026-06-05 19:43:06,115.115 INFO    ] Checking for camera pi updates...
[2026-06-05 19:43:06,160.160 INFO    ] 200
[2026-06-05 19:43:06,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:06,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:43:06,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:43:06,238.238 INFO    ] No camera update needed
[2026-06-05 19:43:06,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:43:06,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:43:06,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:43:06,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:43:08,294.294 INFO    ] ================================================
[2026-06-05 19:43:08,309.309 INFO    ] Launching Daemon at Fri Jun  5 19:43:08 IST 2026
[2026-06-05 19:43:08,319.319 INFO    ] ================================================
[2026-06-05 19:43:08,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:43:08
[2026-06-05 19:43:09,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:43:09,935.935 INFO    ] Initializing speech engine...
[2026-06-05 19:43:09,946.946 INFO    ] 2026-06-05 19:43:09
[2026-06-05 19:43:10,233.233 INFO    ] 2026-06-05 19:43:10
[2026-06-05 19:43:10,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:43:10,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:43:10,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:43:10,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:43:10,771.771 INFO    ] time= 05/06/2026 19:43:10
[2026-06-05 19:43:10,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:43:10,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:43:10,925.925 INFO    ] No existing commands found in stream
[2026-06-05 19:43:15,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:43:15,944.944 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 19:43:19,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:43:19,967.967 INFO    ] Checking for system updates...
[2026-06-05 19:43:20,008.008 INFO    ] 200
[2026-06-05 19:43:20,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:20,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:43:20,076.076 INFO    ] No update needed
[2026-06-05 19:43:20,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 19:43:20,117.117 INFO    ] 200
[2026-06-05 19:43:20,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:20,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:43:20,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:43:20,210.210 INFO    ] No camera update needed
[2026-06-05 19:43:20,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:43:20,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:43:20,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:43:20,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:43:22,268.268 INFO    ] ================================================
[2026-06-05 19:43:22,283.283 INFO    ] Launching Daemon at Fri Jun  5 19:43:22 IST 2026
[2026-06-05 19:43:22,294.294 INFO    ] ================================================
[2026-06-05 19:43:22,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:43:22
[2026-06-05 19:43:23,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:43:23,708.708 INFO    ] Initializing speech engine...
[2026-06-05 19:43:23,731.731 INFO    ] 2026-06-05 19:43:23
[2026-06-05 19:43:23,984.984 INFO    ] 2026-06-05 19:43:23
[2026-06-05 19:43:24,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:43:24,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:43:24,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:43:24,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:43:24,369.369 INFO    ] time= 05/06/2026 19:43:24
[2026-06-05 19:43:24,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:43:24,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:43:24,560.560 INFO    ] No existing commands found in stream
[2026-06-05 19:43:29,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:43:29,583.583 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 19:43:32,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:43:32,355.355 INFO    ] Checking for system updates...
[2026-06-05 19:43:32,398.398 INFO    ] 200
[2026-06-05 19:43:32,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:32,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:43:32,469.469 INFO    ] No update needed
[2026-06-05 19:43:32,472.472 INFO    ] Checking for camera pi updates...
[2026-06-05 19:43:32,514.514 INFO    ] 200
[2026-06-05 19:43:32,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:32,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:43:32,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:43:32,600.600 INFO    ] No camera update needed
[2026-06-05 19:43:32,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:43:32,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:43:32,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:43:32,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:43:34,658.658 INFO    ] ================================================
[2026-06-05 19:43:34,673.673 INFO    ] Launching Daemon at Fri Jun  5 19:43:34 IST 2026
[2026-06-05 19:43:34,684.684 INFO    ] ================================================
[2026-06-05 19:43:35,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:43:35
[2026-06-05 19:43:35,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:43:36,156.156 INFO    ] Initializing speech engine...
[2026-06-05 19:43:36,162.162 INFO    ] 2026-06-05 19:43:36
[2026-06-05 19:43:36,464.464 INFO    ] 2026-06-05 19:43:36
[2026-06-05 19:43:36,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:43:36,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:43:36,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:43:36,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:43:36,809.809 INFO    ] time= 05/06/2026 19:43:36
[2026-06-05 19:43:36,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:43:36,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:43:36,884.884 INFO    ] No existing commands found in stream
[2026-06-05 19:43:41,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:43:41,897.897 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 19:43:43,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:43:43,210.210 INFO    ] Checking for system updates...
[2026-06-05 19:43:43,249.249 INFO    ] 200
[2026-06-05 19:43:43,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:43,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:43:43,306.306 INFO    ] No update needed
[2026-06-05 19:43:43,309.309 INFO    ] Checking for camera pi updates...
[2026-06-05 19:43:43,342.342 INFO    ] 200
[2026-06-05 19:43:43,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:43,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:43:43,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:43:43,435.435 INFO    ] No camera update needed
[2026-06-05 19:43:43,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:43:43,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:43:43,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:43:43,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:43:45,490.490 INFO    ] ================================================
[2026-06-05 19:43:45,506.506 INFO    ] Launching Daemon at Fri Jun  5 19:43:45 IST 2026
[2026-06-05 19:43:45,518.518 INFO    ] ================================================
[2026-06-05 19:43:46,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:43:46
[2026-06-05 19:43:46,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:43:46,960.960 INFO    ] Initializing speech engine...
[2026-06-05 19:43:46,974.974 INFO    ] 2026-06-05 19:43:46
[2026-06-05 19:43:47,251.251 INFO    ] 2026-06-05 19:43:47
[2026-06-05 19:43:47,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:43:47,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:43:47,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:43:47,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:43:47,722.722 INFO    ] time= 05/06/2026 19:43:47
[2026-06-05 19:43:47,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:43:47,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:43:47,862.862 INFO    ] No existing commands found in stream
[2026-06-05 19:43:52,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:43:52,885.885 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 19:43:53,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:43:53,869.869 INFO    ] Checking for system updates...
[2026-06-05 19:43:53,906.906 INFO    ] 200
[2026-06-05 19:43:53,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:53,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:43:53,963.963 INFO    ] No update needed
[2026-06-05 19:43:53,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 19:43:53,999.999 INFO    ] 200
[2026-06-05 19:43:54,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:43:54,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:43:54,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:43:54,086.086 INFO    ] No camera update needed
[2026-06-05 19:43:54,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:43:54,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:43:54,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:43:54,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:43:56,144.144 INFO    ] ================================================
[2026-06-05 19:43:56,159.159 INFO    ] Launching Daemon at Fri Jun  5 19:43:56 IST 2026
[2026-06-05 19:43:56,171.171 INFO    ] ================================================
[2026-06-05 19:43:56,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:43:56
[2026-06-05 19:43:57,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:43:57,582.582 INFO    ] Initializing speech engine...
[2026-06-05 19:43:57,591.591 INFO    ] 2026-06-05 19:43:57
[2026-06-05 19:43:57,880.880 INFO    ] 2026-06-05 19:43:57
[2026-06-05 19:43:57,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:43:58,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:43:58,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:43:58,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:43:58,301.301 INFO    ] time= 05/06/2026 19:43:58
[2026-06-05 19:43:58,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:43:58,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:43:58,390.390 INFO    ] No existing commands found in stream
[2026-06-05 19:44:03,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:44:03,406.406 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 19:44:06,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:44:06,299.299 INFO    ] Checking for system updates...
[2026-06-05 19:44:06,338.338 INFO    ] 200
[2026-06-05 19:44:06,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:06,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:44:06,402.402 INFO    ] No update needed
[2026-06-05 19:44:06,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 19:44:06,441.441 INFO    ] 200
[2026-06-05 19:44:06,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:06,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:44:06,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:44:06,618.618 INFO    ] No camera update needed
[2026-06-05 19:44:06,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:44:06,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:44:06,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:44:06,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:44:08,675.675 INFO    ] ================================================
[2026-06-05 19:44:08,691.691 INFO    ] Launching Daemon at Fri Jun  5 19:44:08 IST 2026
[2026-06-05 19:44:08,702.702 INFO    ] ================================================
[2026-06-05 19:44:09,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:44:09
[2026-06-05 19:44:09,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:44:10,245.245 INFO    ] Initializing speech engine...
[2026-06-05 19:44:10,252.252 INFO    ] 2026-06-05 19:44:10
[2026-06-05 19:44:10,547.547 INFO    ] 2026-06-05 19:44:10
[2026-06-05 19:44:10,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:44:10,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:44:10,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:44:10,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:44:10,930.930 INFO    ] time= 05/06/2026 19:44:10
[2026-06-05 19:44:10,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:44:10,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:44:11,052.052 INFO    ] No existing commands found in stream
[2026-06-05 19:44:16,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:44:16,068.068 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 19:44:20,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:44:20,228.228 INFO    ] Checking for system updates...
[2026-06-05 19:44:20,263.263 INFO    ] 200
[2026-06-05 19:44:20,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:20,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:44:20,322.322 INFO    ] No update needed
[2026-06-05 19:44:20,324.324 INFO    ] Checking for camera pi updates...
[2026-06-05 19:44:20,361.361 INFO    ] 200
[2026-06-05 19:44:20,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:20,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:44:20,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:44:20,449.449 INFO    ] No camera update needed
[2026-06-05 19:44:20,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:44:20,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:44:20,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:44:20,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:44:22,506.506 INFO    ] ================================================
[2026-06-05 19:44:22,522.522 INFO    ] Launching Daemon at Fri Jun  5 19:44:22 IST 2026
[2026-06-05 19:44:22,533.533 INFO    ] ================================================
[2026-06-05 19:44:23,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:44:23
[2026-06-05 19:44:23,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:44:24,096.096 INFO    ] Initializing speech engine...
[2026-06-05 19:44:24,109.109 INFO    ] 2026-06-05 19:44:24
[2026-06-05 19:44:24,383.383 INFO    ] 2026-06-05 19:44:24
[2026-06-05 19:44:24,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:44:24,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:44:24,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:44:24,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:44:24,917.917 INFO    ] time= 05/06/2026 19:44:24
[2026-06-05 19:44:24,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:44:24,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:44:25,070.070 INFO    ] No existing commands found in stream
[2026-06-05 19:44:30,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:44:30,088.088 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 19:44:33,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:44:33,624.624 INFO    ] Checking for system updates...
[2026-06-05 19:44:33,665.665 INFO    ] 200
[2026-06-05 19:44:33,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:33,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:44:33,731.731 INFO    ] No update needed
[2026-06-05 19:44:33,734.734 INFO    ] Checking for camera pi updates...
[2026-06-05 19:44:33,771.771 INFO    ] 200
[2026-06-05 19:44:33,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:33,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:44:33,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:44:33,862.862 INFO    ] No camera update needed
[2026-06-05 19:44:33,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:44:33,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:44:33,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:44:33,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:44:35,919.919 INFO    ] ================================================
[2026-06-05 19:44:35,935.935 INFO    ] Launching Daemon at Fri Jun  5 19:44:35 IST 2026
[2026-06-05 19:44:35,946.946 INFO    ] ================================================
[2026-06-05 19:44:36,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:44:36
[2026-06-05 19:44:37,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:44:37,361.361 INFO    ] Initializing speech engine...
[2026-06-05 19:44:37,373.373 INFO    ] 2026-06-05 19:44:37
[2026-06-05 19:44:37,618.618 INFO    ] 2026-06-05 19:44:37
[2026-06-05 19:44:37,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:44:37,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:44:37,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:44:38,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:44:38,092.092 INFO    ] time= 05/06/2026 19:44:38
[2026-06-05 19:44:38,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:44:38,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:44:38,245.245 INFO    ] No existing commands found in stream
[2026-06-05 19:44:43,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:44:43,260.260 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 19:44:45,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:44:45,361.361 INFO    ] Checking for system updates...
[2026-06-05 19:44:45,401.401 INFO    ] 200
[2026-06-05 19:44:45,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:45,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:44:45,467.467 INFO    ] No update needed
[2026-06-05 19:44:45,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 19:44:45,508.508 INFO    ] 200
[2026-06-05 19:44:45,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:45,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:44:45,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:44:45,612.612 INFO    ] No camera update needed
[2026-06-05 19:44:45,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:44:45,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:44:45,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:44:45,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:44:47,672.672 INFO    ] ================================================
[2026-06-05 19:44:47,688.688 INFO    ] Launching Daemon at Fri Jun  5 19:44:47 IST 2026
[2026-06-05 19:44:47,700.700 INFO    ] ================================================
[2026-06-05 19:44:48,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:44:48
[2026-06-05 19:44:48,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:44:49,153.153 INFO    ] Initializing speech engine...
[2026-06-05 19:44:49,162.162 INFO    ] 2026-06-05 19:44:49
[2026-06-05 19:44:49,440.440 INFO    ] 2026-06-05 19:44:49
[2026-06-05 19:44:49,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:44:49,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:44:49,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:44:49,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:44:49,971.971 INFO    ] time= 05/06/2026 19:44:49
[2026-06-05 19:44:49,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:44:49,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:44:50,112.112 INFO    ] No existing commands found in stream
[2026-06-05 19:44:55,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:44:55,140.140 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 19:44:57,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:44:57,105.105 INFO    ] Checking for system updates...
[2026-06-05 19:44:57,146.146 INFO    ] 200
[2026-06-05 19:44:57,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:57,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:44:57,205.205 INFO    ] No update needed
[2026-06-05 19:44:57,208.208 INFO    ] Checking for camera pi updates...
[2026-06-05 19:44:57,242.242 INFO    ] 200
[2026-06-05 19:44:57,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:44:57,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:44:57,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:44:57,335.335 INFO    ] No camera update needed
[2026-06-05 19:44:57,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:44:57,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:44:57,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:44:57,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:44:59,391.391 INFO    ] ================================================
[2026-06-05 19:44:59,407.407 INFO    ] Launching Daemon at Fri Jun  5 19:44:59 IST 2026
[2026-06-05 19:44:59,418.418 INFO    ] ================================================
[2026-06-05 19:44:59,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:44:59
[2026-06-05 19:45:00,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:45:00,838.838 INFO    ] Initializing speech engine...
[2026-06-05 19:45:00,855.855 INFO    ] 2026-06-05 19:45:00
[2026-06-05 19:45:01,119.119 INFO    ] 2026-06-05 19:45:01
[2026-06-05 19:45:01,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:45:03,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:45:03,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:45:04,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:45:04,234.234 INFO    ] time= 05/06/2026 19:45:04
[2026-06-05 19:45:04,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:45:04,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:45:04,342.342 INFO    ] No existing commands found in stream
[2026-06-05 19:45:09,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:45:09,358.358 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 19:45:11,569.569 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:45:11,572.572 INFO    ] Checking for system updates...
[2026-06-05 19:45:11,610.610 INFO    ] 200
[2026-06-05 19:45:11,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:11,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:45:11,669.669 INFO    ] No update needed
[2026-06-05 19:45:11,672.672 INFO    ] Checking for camera pi updates...
[2026-06-05 19:45:11,707.707 INFO    ] 200
[2026-06-05 19:45:11,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:11,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:45:11,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:45:11,802.802 INFO    ] No camera update needed
[2026-06-05 19:45:11,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:45:11,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:45:11,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:45:11,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:45:13,863.863 INFO    ] ================================================
[2026-06-05 19:45:13,879.879 INFO    ] Launching Daemon at Fri Jun  5 19:45:13 IST 2026
[2026-06-05 19:45:13,890.890 INFO    ] ================================================
[2026-06-05 19:45:14,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:45:14
[2026-06-05 19:45:15,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:45:15,299.299 INFO    ] Initializing speech engine...
[2026-06-05 19:45:15,308.308 INFO    ] 2026-06-05 19:45:15
[2026-06-05 19:45:15,596.596 INFO    ] 2026-06-05 19:45:15
[2026-06-05 19:45:15,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:45:15,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:45:15,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:45:15,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:45:15,990.990 INFO    ] time= 05/06/2026 19:45:15
[2026-06-05 19:45:16,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:45:16,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:45:16,097.097 INFO    ] No existing commands found in stream
[2026-06-05 19:45:21,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:45:21,113.113 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 19:45:24,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:45:24,230.230 INFO    ] Checking for system updates...
[2026-06-05 19:45:24,268.268 INFO    ] 200
[2026-06-05 19:45:24,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:24,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:45:24,333.333 INFO    ] No update needed
[2026-06-05 19:45:24,336.336 INFO    ] Checking for camera pi updates...
[2026-06-05 19:45:24,371.371 INFO    ] 200
[2026-06-05 19:45:24,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:24,415.415 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:45:24,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:45:24,459.459 INFO    ] No camera update needed
[2026-06-05 19:45:24,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:45:24,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:45:24,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:45:24,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:45:26,520.520 INFO    ] ================================================
[2026-06-05 19:45:26,536.536 INFO    ] Launching Daemon at Fri Jun  5 19:45:26 IST 2026
[2026-06-05 19:45:26,547.547 INFO    ] ================================================
[2026-06-05 19:45:27,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:45:27
[2026-06-05 19:45:27,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:45:27,959.959 INFO    ] Initializing speech engine...
[2026-06-05 19:45:27,967.967 INFO    ] 2026-06-05 19:45:27
[2026-06-05 19:45:28,246.246 INFO    ] 2026-06-05 19:45:28
[2026-06-05 19:45:28,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:45:28,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:45:28,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:45:28,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:45:28,628.628 INFO    ] time= 05/06/2026 19:45:28
[2026-06-05 19:45:28,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:45:28,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:45:28,747.747 INFO    ] No existing commands found in stream
[2026-06-05 19:45:33,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:45:33,762.762 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 19:45:36,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:45:36,290.290 INFO    ] Checking for system updates...
[2026-06-05 19:45:36,331.331 INFO    ] 200
[2026-06-05 19:45:36,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:36,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:45:36,398.398 INFO    ] No update needed
[2026-06-05 19:45:36,400.400 INFO    ] Checking for camera pi updates...
[2026-06-05 19:45:36,433.433 INFO    ] 200
[2026-06-05 19:45:36,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:36,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:45:36,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:45:36,551.551 INFO    ] No camera update needed
[2026-06-05 19:45:36,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:45:36,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:45:36,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:45:36,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:45:38,615.615 INFO    ] ================================================
[2026-06-05 19:45:38,631.631 INFO    ] Launching Daemon at Fri Jun  5 19:45:38 IST 2026
[2026-06-05 19:45:38,641.641 INFO    ] ================================================
[2026-06-05 19:45:39,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:45:39
[2026-06-05 19:45:39,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:45:40,247.247 INFO    ] Initializing speech engine...
[2026-06-05 19:45:40,256.256 INFO    ] 2026-06-05 19:45:40
[2026-06-05 19:45:40,565.565 INFO    ] 2026-06-05 19:45:40
[2026-06-05 19:45:40,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:45:40,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:45:40,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:45:41,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:45:41,069.069 INFO    ] time= 05/06/2026 19:45:41
[2026-06-05 19:45:41,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:45:41,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:45:41,239.239 INFO    ] No existing commands found in stream
[2026-06-05 19:45:46,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:45:46,273.273 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 19:45:49,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:45:49,429.429 INFO    ] Checking for system updates...
[2026-06-05 19:45:49,466.466 INFO    ] 200
[2026-06-05 19:45:49,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:49,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:45:49,528.528 INFO    ] No update needed
[2026-06-05 19:45:49,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 19:45:49,567.567 INFO    ] 200
[2026-06-05 19:45:49,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:49,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:45:49,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:45:49,664.664 INFO    ] No camera update needed
[2026-06-05 19:45:49,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:45:49,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:45:49,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:45:49,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:45:51,727.727 INFO    ] ================================================
[2026-06-05 19:45:51,743.743 INFO    ] Launching Daemon at Fri Jun  5 19:45:51 IST 2026
[2026-06-05 19:45:51,754.754 INFO    ] ================================================
[2026-06-05 19:45:52,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:45:52
[2026-06-05 19:45:53,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:45:53,403.403 INFO    ] Initializing speech engine...
[2026-06-05 19:45:53,416.416 INFO    ] 2026-06-05 19:45:53
[2026-06-05 19:45:53,699.699 INFO    ] 2026-06-05 19:45:53
[2026-06-05 19:45:53,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:45:53,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:45:54,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:45:54,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:45:54,188.188 INFO    ] time= 05/06/2026 19:45:54
[2026-06-05 19:45:54,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:45:54,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:45:54,339.339 INFO    ] No existing commands found in stream
[2026-06-05 19:45:59,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:45:59,355.355 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 19:45:59,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:45:59,798.798 INFO    ] Checking for system updates...
[2026-06-05 19:45:59,835.835 INFO    ] 200
[2026-06-05 19:45:59,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:59,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:45:59,894.894 INFO    ] No update needed
[2026-06-05 19:45:59,897.897 INFO    ] Checking for camera pi updates...
[2026-06-05 19:45:59,936.936 INFO    ] 200
[2026-06-05 19:45:59,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:45:59,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:46:00,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:46:00,034.034 INFO    ] No camera update needed
[2026-06-05 19:46:00,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:46:00,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:46:00,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:46:00,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:46:02,107.107 INFO    ] ================================================
[2026-06-05 19:46:02,152.152 INFO    ] Launching Daemon at Fri Jun  5 19:46:02 IST 2026
[2026-06-05 19:46:02,180.180 INFO    ] ================================================
[2026-06-05 19:46:02,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:46:02
[2026-06-05 19:46:03,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:46:03,987.987 INFO    ] Initializing speech engine...
[2026-06-05 19:46:03,992.992 INFO    ] 2026-06-05 19:46:03
[2026-06-05 19:46:04,287.287 INFO    ] 2026-06-05 19:46:04
[2026-06-05 19:46:04,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:46:04,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:46:04,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:46:04,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:46:04,754.754 INFO    ] time= 05/06/2026 19:46:04
[2026-06-05 19:46:04,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:46:04,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:46:04,980.980 INFO    ] No existing commands found in stream
[2026-06-05 19:46:09,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:46:10,003.003 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 19:46:13,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:46:13,521.521 INFO    ] Checking for system updates...
[2026-06-05 19:46:13,558.558 INFO    ] 200
[2026-06-05 19:46:13,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:46:13,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:46:13,616.616 INFO    ] No update needed
[2026-06-05 19:46:13,619.619 INFO    ] Checking for camera pi updates...
[2026-06-05 19:46:13,653.653 INFO    ] 200
[2026-06-05 19:46:13,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:46:13,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:46:13,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:46:13,855.855 INFO    ] No camera update needed
[2026-06-05 19:46:13,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:46:13,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:46:13,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:46:13,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:46:15,913.913 INFO    ] ================================================
[2026-06-05 19:46:15,929.929 INFO    ] Launching Daemon at Fri Jun  5 19:46:15 IST 2026
[2026-06-05 19:46:15,941.941 INFO    ] ================================================
[2026-06-05 19:46:16,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:46:16
[2026-06-05 19:46:17,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:46:17,434.434 INFO    ] Initializing speech engine...
[2026-06-05 19:46:17,440.440 INFO    ] 2026-06-05 19:46:17
[2026-06-05 19:46:17,721.721 INFO    ] 2026-06-05 19:46:17
[2026-06-05 19:46:17,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:46:18,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:46:18,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:46:18,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:46:18,275.275 INFO    ] time= 05/06/2026 19:46:18
[2026-06-05 19:46:18,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:46:18,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:46:18,432.432 INFO    ] No existing commands found in stream
[2026-06-05 19:46:23,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:46:23,464.464 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 19:46:25,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:46:25,817.817 INFO    ] Checking for system updates...
[2026-06-05 19:46:25,856.856 INFO    ] 200
[2026-06-05 19:46:25,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:46:25,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:46:25,914.914 INFO    ] No update needed
[2026-06-05 19:46:25,916.916 INFO    ] Checking for camera pi updates...
[2026-06-05 19:46:25,950.950 INFO    ] 200
[2026-06-05 19:46:25,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:46:25,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:46:26,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:46:26,046.046 INFO    ] No camera update needed
[2026-06-05 19:46:26,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:46:26,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:46:26,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:46:26,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:46:28,101.101 INFO    ] ================================================
[2026-06-05 19:46:28,117.117 INFO    ] Launching Daemon at Fri Jun  5 19:46:28 IST 2026
[2026-06-05 19:46:28,128.128 INFO    ] ================================================
[2026-06-05 19:46:28,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:46:28
[2026-06-05 19:46:29,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:46:29,579.579 INFO    ] Initializing speech engine...
[2026-06-05 19:46:29,590.590 INFO    ] 2026-06-05 19:46:29
[2026-06-05 19:46:29,835.835 INFO    ] 2026-06-05 19:46:29
[2026-06-05 19:46:29,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:46:30,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:46:30,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:46:30,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:46:30,301.301 INFO    ] time= 05/06/2026 19:46:30
[2026-06-05 19:46:30,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:46:30,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:46:30,529.529 INFO    ] No existing commands found in stream
[2026-06-05 19:46:35,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:46:35,557.557 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 19:46:40,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:46:40,269.269 INFO    ] Checking for system updates...
[2026-06-05 19:46:40,310.310 INFO    ] 200
[2026-06-05 19:46:40,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:46:40,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:46:40,375.375 INFO    ] No update needed
[2026-06-05 19:46:40,378.378 INFO    ] Checking for camera pi updates...
[2026-06-05 19:46:40,412.412 INFO    ] 200
[2026-06-05 19:46:40,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:46:40,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:46:40,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:46:40,516.516 INFO    ] No camera update needed
[2026-06-05 19:46:40,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:46:40,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:46:40,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:46:40,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:46:42,575.575 INFO    ] ================================================
[2026-06-05 19:46:42,590.590 INFO    ] Launching Daemon at Fri Jun  5 19:46:42 IST 2026
[2026-06-05 19:46:42,602.602 INFO    ] ================================================
[2026-06-05 19:46:43,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:46:43
[2026-06-05 19:46:43,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:46:44,011.011 INFO    ] Initializing speech engine...
[2026-06-05 19:46:44,017.017 INFO    ] 2026-06-05 19:46:44
[2026-06-05 19:46:44,315.315 INFO    ] 2026-06-05 19:46:44
[2026-06-05 19:46:44,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:46:44,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:46:44,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:46:44,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:46:44,741.741 INFO    ] time= 05/06/2026 19:46:44
[2026-06-05 19:46:44,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:46:44,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:46:44,910.910 INFO    ] No existing commands found in stream
[2026-06-05 19:46:49,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:46:49,938.938 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 19:46:51,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:46:51,437.437 INFO    ] Checking for system updates...
[2026-06-05 19:46:51,476.476 INFO    ] 200
[2026-06-05 19:46:51,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:46:51,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:46:51,539.539 INFO    ] No update needed
[2026-06-05 19:46:51,543.543 INFO    ] Checking for camera pi updates...
[2026-06-05 19:46:51,584.584 INFO    ] 200
[2026-06-05 19:46:51,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:46:51,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:46:51,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:46:51,693.693 INFO    ] No camera update needed
[2026-06-05 19:46:51,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:46:51,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:46:51,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:46:51,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:46:53,756.756 INFO    ] ================================================
[2026-06-05 19:46:53,771.771 INFO    ] Launching Daemon at Fri Jun  5 19:46:53 IST 2026
[2026-06-05 19:46:53,782.782 INFO    ] ================================================
[2026-06-05 19:46:54,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:46:54
[2026-06-05 19:46:55,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:46:55,434.434 INFO    ] Initializing speech engine...
[2026-06-05 19:46:55,444.444 INFO    ] 2026-06-05 19:46:55
[2026-06-05 19:46:55,723.723 INFO    ] 2026-06-05 19:46:55
[2026-06-05 19:46:55,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:46:55,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:46:56,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:46:56,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:46:56,240.240 INFO    ] time= 05/06/2026 19:46:56
[2026-06-05 19:46:56,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:46:56,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:46:56,455.455 INFO    ] No existing commands found in stream
[2026-06-05 19:47:01,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:47:01,486.486 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 19:47:04,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:47:04,134.134 INFO    ] Checking for system updates...
[2026-06-05 19:47:04,192.192 INFO    ] 200
[2026-06-05 19:47:04,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:04,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:47:04,264.264 INFO    ] No update needed
[2026-06-05 19:47:04,267.267 INFO    ] Checking for camera pi updates...
[2026-06-05 19:47:04,310.310 INFO    ] 200
[2026-06-05 19:47:04,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:04,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:47:04,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:47:04,399.399 INFO    ] No camera update needed
[2026-06-05 19:47:04,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:47:04,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:47:04,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:47:04,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:47:06,462.462 INFO    ] ================================================
[2026-06-05 19:47:06,479.479 INFO    ] Launching Daemon at Fri Jun  5 19:47:06 IST 2026
[2026-06-05 19:47:06,491.491 INFO    ] ================================================
[2026-06-05 19:47:07,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:47:07
[2026-06-05 19:47:07,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:47:07,985.985 INFO    ] Initializing speech engine...
[2026-06-05 19:47:08,005.005 INFO    ] 2026-06-05 19:47:07
[2026-06-05 19:47:08,275.275 INFO    ] 2026-06-05 19:47:08
[2026-06-05 19:47:08,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:47:10,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:47:10,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:47:10,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:47:10,926.926 INFO    ] time= 05/06/2026 19:47:10
[2026-06-05 19:47:10,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:47:10,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:47:11,027.027 INFO    ] No existing commands found in stream
[2026-06-05 19:47:16,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:47:16,041.041 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 19:47:19,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:47:19,791.791 INFO    ] Checking for system updates...
[2026-06-05 19:47:19,831.831 INFO    ] 200
[2026-06-05 19:47:19,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:19,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:47:19,890.890 INFO    ] No update needed
[2026-06-05 19:47:19,893.893 INFO    ] Checking for camera pi updates...
[2026-06-05 19:47:19,934.934 INFO    ] 200
[2026-06-05 19:47:19,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:19,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:47:20,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:47:20,025.025 INFO    ] No camera update needed
[2026-06-05 19:47:20,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:47:20,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:47:20,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:47:20,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:47:22,081.081 INFO    ] ================================================
[2026-06-05 19:47:22,098.098 INFO    ] Launching Daemon at Fri Jun  5 19:47:22 IST 2026
[2026-06-05 19:47:22,109.109 INFO    ] ================================================
[2026-06-05 19:47:22,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:47:22
[2026-06-05 19:47:23,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:47:23,685.685 INFO    ] Initializing speech engine...
[2026-06-05 19:47:23,695.695 INFO    ] 2026-06-05 19:47:23
[2026-06-05 19:47:24,004.004 INFO    ] 2026-06-05 19:47:23
[2026-06-05 19:47:24,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:47:24,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:47:24,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:47:24,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:47:24,527.527 INFO    ] time= 05/06/2026 19:47:24
[2026-06-05 19:47:24,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:47:24,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:47:24,667.667 INFO    ] No existing commands found in stream
[2026-06-05 19:47:29,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:47:29,684.684 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 19:47:33,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:47:33,661.661 INFO    ] Checking for system updates...
[2026-06-05 19:47:33,698.698 INFO    ] 200
[2026-06-05 19:47:33,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:33,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:47:33,758.758 INFO    ] No update needed
[2026-06-05 19:47:33,761.761 INFO    ] Checking for camera pi updates...
[2026-06-05 19:47:33,796.796 INFO    ] 200
[2026-06-05 19:47:33,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:33,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:47:33,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:47:33,881.881 INFO    ] No camera update needed
[2026-06-05 19:47:33,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:47:33,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:47:33,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:47:33,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:47:35,936.936 INFO    ] ================================================
[2026-06-05 19:47:35,953.953 INFO    ] Launching Daemon at Fri Jun  5 19:47:35 IST 2026
[2026-06-05 19:47:35,964.964 INFO    ] ================================================
[2026-06-05 19:47:36,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:47:36
[2026-06-05 19:47:37,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:47:37,447.447 INFO    ] Initializing speech engine...
[2026-06-05 19:47:37,456.456 INFO    ] 2026-06-05 19:47:37
[2026-06-05 19:47:37,709.709 INFO    ] 2026-06-05 19:47:37
[2026-06-05 19:47:37,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:47:39,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:47:39,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:47:41,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:47:41,369.369 INFO    ] time= 05/06/2026 19:47:41
[2026-06-05 19:47:41,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:47:41,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:47:41,441.441 INFO    ] No existing commands found in stream
[2026-06-05 19:47:46,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:47:46,453.453 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 19:47:48,793.793 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:47:48,796.796 INFO    ] Checking for system updates...
[2026-06-05 19:47:48,832.832 INFO    ] 200
[2026-06-05 19:47:48,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:48,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:47:48,890.890 INFO    ] No update needed
[2026-06-05 19:47:48,892.892 INFO    ] Checking for camera pi updates...
[2026-06-05 19:47:48,929.929 INFO    ] 200
[2026-06-05 19:47:48,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:48,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:47:49,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:47:49,031.031 INFO    ] No camera update needed
[2026-06-05 19:47:49,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:47:49,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:47:49,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:47:49,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:47:51,087.087 INFO    ] ================================================
[2026-06-05 19:47:51,102.102 INFO    ] Launching Daemon at Fri Jun  5 19:47:51 IST 2026
[2026-06-05 19:47:51,112.112 INFO    ] ================================================
[2026-06-05 19:47:51,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:47:51
[2026-06-05 19:47:52,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:47:52,554.554 INFO    ] Initializing speech engine...
[2026-06-05 19:47:52,562.562 INFO    ] 2026-06-05 19:47:52
[2026-06-05 19:47:52,837.837 INFO    ] 2026-06-05 19:47:52
[2026-06-05 19:47:52,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:47:53,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:47:53,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:47:53,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:47:53,310.310 INFO    ] time= 05/06/2026 19:47:53
[2026-06-05 19:47:53,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:47:53,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:47:53,530.530 INFO    ] No existing commands found in stream
[2026-06-05 19:47:58,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:47:58,563.563 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 19:47:59,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:47:59,597.597 INFO    ] Checking for system updates...
[2026-06-05 19:47:59,637.637 INFO    ] 200
[2026-06-05 19:47:59,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:59,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:47:59,698.698 INFO    ] No update needed
[2026-06-05 19:47:59,700.700 INFO    ] Checking for camera pi updates...
[2026-06-05 19:47:59,738.738 INFO    ] 200
[2026-06-05 19:47:59,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:47:59,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:47:59,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:47:59,828.828 INFO    ] No camera update needed
[2026-06-05 19:47:59,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:47:59,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:47:59,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:47:59,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:48:01,885.885 INFO    ] ================================================
[2026-06-05 19:48:01,903.903 INFO    ] Launching Daemon at Fri Jun  5 19:48:01 IST 2026
[2026-06-05 19:48:01,916.916 INFO    ] ================================================
[2026-06-05 19:48:02,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:48:02
[2026-06-05 19:48:03,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:48:03,438.438 INFO    ] Initializing speech engine...
[2026-06-05 19:48:03,453.453 INFO    ] 2026-06-05 19:48:03
[2026-06-05 19:48:03,727.727 INFO    ] 2026-06-05 19:48:03
[2026-06-05 19:48:03,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:48:03,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:48:03,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:48:04,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:48:04,154.154 INFO    ] time= 05/06/2026 19:48:04
[2026-06-05 19:48:04,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:48:04,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:48:04,309.309 INFO    ] No existing commands found in stream
[2026-06-05 19:48:09,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:48:09,337.337 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 19:48:12,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:48:12,765.765 INFO    ] Checking for system updates...
[2026-06-05 19:48:12,802.802 INFO    ] 200
[2026-06-05 19:48:12,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:48:12,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:48:12,862.862 INFO    ] No update needed
[2026-06-05 19:48:12,865.865 INFO    ] Checking for camera pi updates...
[2026-06-05 19:48:12,898.898 INFO    ] 200
[2026-06-05 19:48:12,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:48:12,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:48:12,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:48:12,991.991 INFO    ] No camera update needed
[2026-06-05 19:48:12,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:48:12,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:48:13,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:48:13,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:48:15,048.048 INFO    ] ================================================
[2026-06-05 19:48:15,063.063 INFO    ] Launching Daemon at Fri Jun  5 19:48:15 IST 2026
[2026-06-05 19:48:15,073.073 INFO    ] ================================================
[2026-06-05 19:48:15,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:48:15
[2026-06-05 19:48:16,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:48:16,504.504 INFO    ] Initializing speech engine...
[2026-06-05 19:48:16,513.513 INFO    ] 2026-06-05 19:48:16
[2026-06-05 19:48:16,797.797 INFO    ] 2026-06-05 19:48:16
[2026-06-05 19:48:16,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:48:17,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:48:17,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:48:17,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:48:17,205.205 INFO    ] time= 05/06/2026 19:48:17
[2026-06-05 19:48:17,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:48:17,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:48:17,370.370 INFO    ] No existing commands found in stream
[2026-06-05 19:48:22,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:48:22,398.398 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 19:48:24,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:48:24,837.837 INFO    ] Checking for system updates...
[2026-06-05 19:48:24,878.878 INFO    ] 200
[2026-06-05 19:48:24,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:48:24,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:48:24,939.939 INFO    ] No update needed
[2026-06-05 19:48:24,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 19:48:24,976.976 INFO    ] 200
[2026-06-05 19:48:24,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:48:25,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:48:25,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:48:25,172.172 INFO    ] No camera update needed
[2026-06-05 19:48:25,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:48:25,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:48:25,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:48:25,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:48:27,226.226 INFO    ] ================================================
[2026-06-05 19:48:27,241.241 INFO    ] Launching Daemon at Fri Jun  5 19:48:27 IST 2026
[2026-06-05 19:48:27,252.252 INFO    ] ================================================
[2026-06-05 19:48:27,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:48:27
[2026-06-05 19:48:28,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:48:28,744.744 INFO    ] Initializing speech engine...
[2026-06-05 19:48:28,751.751 INFO    ] 2026-06-05 19:48:28
[2026-06-05 19:48:29,009.009 INFO    ] 2026-06-05 19:48:28
[2026-06-05 19:48:29,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:48:29,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:48:29,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:48:29,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:48:29,416.416 INFO    ] time= 05/06/2026 19:48:29
[2026-06-05 19:48:29,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:48:29,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:48:29,619.619 INFO    ] No existing commands found in stream
[2026-06-05 19:48:34,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:48:34,644.644 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-05 19:48:38,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:48:38,564.564 INFO    ] Checking for system updates...
[2026-06-05 19:48:38,601.601 INFO    ] 200
[2026-06-05 19:48:38,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:48:38,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:48:38,664.664 INFO    ] No update needed
[2026-06-05 19:48:38,667.667 INFO    ] Checking for camera pi updates...
[2026-06-05 19:48:38,703.703 INFO    ] 200
[2026-06-05 19:48:38,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:48:38,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:48:38,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:48:38,790.790 INFO    ] No camera update needed
[2026-06-05 19:48:38,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:48:38,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:48:38,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:48:38,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:48:40,845.845 INFO    ] ================================================
[2026-06-05 19:48:40,861.861 INFO    ] Launching Daemon at Fri Jun  5 19:48:40 IST 2026
[2026-06-05 19:48:40,873.873 INFO    ] ================================================
[2026-06-05 19:48:41,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:48:41
[2026-06-05 19:48:42,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:48:42,427.427 INFO    ] Initializing speech engine...
[2026-06-05 19:48:42,441.441 INFO    ] 2026-06-05 19:48:42
[2026-06-05 19:48:42,714.714 INFO    ] 2026-06-05 19:48:42
[2026-06-05 19:48:42,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:48:43,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:48:43,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:48:43,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:48:43,809.809 INFO    ] time= 05/06/2026 19:48:43
[2026-06-05 19:48:43,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:48:43,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:48:43,920.920 INFO    ] No existing commands found in stream
[2026-06-05 19:48:48,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:48:48,934.934 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 19:48:52,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:48:52,732.732 INFO    ] Checking for system updates...
[2026-06-05 19:48:52,769.769 INFO    ] 200
[2026-06-05 19:48:52,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:48:52,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:48:52,831.831 INFO    ] No update needed
[2026-06-05 19:48:52,833.833 INFO    ] Checking for camera pi updates...
[2026-06-05 19:48:52,870.870 INFO    ] 200
[2026-06-05 19:48:52,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:48:52,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:48:52,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:48:52,960.960 INFO    ] No camera update needed
[2026-06-05 19:48:52,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:48:52,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:48:52,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:48:52,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:48:55,018.018 INFO    ] ================================================
[2026-06-05 19:48:55,033.033 INFO    ] Launching Daemon at Fri Jun  5 19:48:55 IST 2026
[2026-06-05 19:48:55,045.045 INFO    ] ================================================
[2026-06-05 19:48:55,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:48:55
[2026-06-05 19:48:56,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:48:56,489.489 INFO    ] Initializing speech engine...
[2026-06-05 19:48:56,505.505 INFO    ] 2026-06-05 19:48:56
[2026-06-05 19:48:56,774.774 INFO    ] 2026-06-05 19:48:56
[2026-06-05 19:48:56,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:48:57,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:48:57,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:48:57,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:48:57,383.383 INFO    ] time= 05/06/2026 19:48:57
[2026-06-05 19:48:57,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:48:57,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:48:57,558.558 INFO    ] No existing commands found in stream
[2026-06-05 19:49:02,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:49:02,571.571 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 19:49:04,826.826 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:49:04,829.829 INFO    ] Checking for system updates...
[2026-06-05 19:49:04,869.869 INFO    ] 200
[2026-06-05 19:49:04,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:04,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:49:04,933.933 INFO    ] No update needed
[2026-06-05 19:49:04,936.936 INFO    ] Checking for camera pi updates...
[2026-06-05 19:49:04,974.974 INFO    ] 200
[2026-06-05 19:49:04,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:05,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:49:05,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:49:05,081.081 INFO    ] No camera update needed
[2026-06-05 19:49:05,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:49:05,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:49:05,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:49:05,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:49:07,141.141 INFO    ] ================================================
[2026-06-05 19:49:07,158.158 INFO    ] Launching Daemon at Fri Jun  5 19:49:07 IST 2026
[2026-06-05 19:49:07,169.169 INFO    ] ================================================
[2026-06-05 19:49:07,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:49:07
[2026-06-05 19:49:08,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:49:08,611.611 INFO    ] Initializing speech engine...
[2026-06-05 19:49:08,617.617 INFO    ] 2026-06-05 19:49:08
[2026-06-05 19:49:08,912.912 INFO    ] 2026-06-05 19:49:08
[2026-06-05 19:49:08,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:49:09,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:49:09,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:49:09,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:49:09,374.374 INFO    ] time= 05/06/2026 19:49:09
[2026-06-05 19:49:09,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:49:09,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:49:09,606.606 INFO    ] No existing commands found in stream
[2026-06-05 19:49:14,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:49:14,638.638 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 19:49:17,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:49:17,091.091 INFO    ] Checking for system updates...
[2026-06-05 19:49:17,130.130 INFO    ] 200
[2026-06-05 19:49:17,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:17,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:49:17,194.194 INFO    ] No update needed
[2026-06-05 19:49:17,197.197 INFO    ] Checking for camera pi updates...
[2026-06-05 19:49:17,231.231 INFO    ] 200
[2026-06-05 19:49:17,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:17,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:49:17,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:49:17,330.330 INFO    ] No camera update needed
[2026-06-05 19:49:17,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:49:17,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:49:17,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:49:17,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:49:19,385.385 INFO    ] ================================================
[2026-06-05 19:49:19,401.401 INFO    ] Launching Daemon at Fri Jun  5 19:49:19 IST 2026
[2026-06-05 19:49:19,411.411 INFO    ] ================================================
[2026-06-05 19:49:19,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:49:19
[2026-06-05 19:49:20,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:49:20,844.844 INFO    ] Initializing speech engine...
[2026-06-05 19:49:20,866.866 INFO    ] 2026-06-05 19:49:20
[2026-06-05 19:49:21,121.121 INFO    ] 2026-06-05 19:49:21
[2026-06-05 19:49:21,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:49:21,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:49:21,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:49:21,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:49:21,617.617 INFO    ] time= 05/06/2026 19:49:21
[2026-06-05 19:49:21,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:49:21,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:49:21,831.831 INFO    ] No existing commands found in stream
[2026-06-05 19:49:26,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:49:26,848.848 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 19:49:30,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:49:30,827.827 INFO    ] Checking for system updates...
[2026-06-05 19:49:30,863.863 INFO    ] 200
[2026-06-05 19:49:30,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:30,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:49:30,927.927 INFO    ] No update needed
[2026-06-05 19:49:30,930.930 INFO    ] Checking for camera pi updates...
[2026-06-05 19:49:30,964.964 INFO    ] 200
[2026-06-05 19:49:30,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:31,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:49:31,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:49:31,055.055 INFO    ] No camera update needed
[2026-06-05 19:49:31,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:49:31,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:49:31,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:49:31,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:49:33,115.115 INFO    ] ================================================
[2026-06-05 19:49:33,131.131 INFO    ] Launching Daemon at Fri Jun  5 19:49:33 IST 2026
[2026-06-05 19:49:33,141.141 INFO    ] ================================================
[2026-06-05 19:49:33,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:49:33
[2026-06-05 19:49:34,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:49:34,745.745 INFO    ] Initializing speech engine...
[2026-06-05 19:49:34,754.754 INFO    ] 2026-06-05 19:49:34
[2026-06-05 19:49:35,025.025 INFO    ] 2026-06-05 19:49:35
[2026-06-05 19:49:35,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:49:35,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:49:35,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:49:35,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:49:35,523.523 INFO    ] time= 05/06/2026 19:49:35
[2026-06-05 19:49:35,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:49:35,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:49:35,736.736 INFO    ] No existing commands found in stream
[2026-06-05 19:49:40,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:49:40,767.767 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 19:49:44,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:49:44,651.651 INFO    ] Checking for system updates...
[2026-06-05 19:49:44,689.689 INFO    ] 200
[2026-06-05 19:49:44,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:44,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:49:44,748.748 INFO    ] No update needed
[2026-06-05 19:49:44,751.751 INFO    ] Checking for camera pi updates...
[2026-06-05 19:49:44,787.787 INFO    ] 200
[2026-06-05 19:49:44,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:44,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:49:44,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:49:44,879.879 INFO    ] No camera update needed
[2026-06-05 19:49:44,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:49:44,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:49:44,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:49:44,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:49:46,938.938 INFO    ] ================================================
[2026-06-05 19:49:46,954.954 INFO    ] Launching Daemon at Fri Jun  5 19:49:46 IST 2026
[2026-06-05 19:49:46,965.965 INFO    ] ================================================
[2026-06-05 19:49:47,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:49:47
[2026-06-05 19:49:48,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:49:48,528.528 INFO    ] Initializing speech engine...
[2026-06-05 19:49:48,537.537 INFO    ] 2026-06-05 19:49:48
[2026-06-05 19:49:48,801.801 INFO    ] 2026-06-05 19:49:48
[2026-06-05 19:49:48,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:49:49,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:49:49,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:49:49,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:49:49,167.167 INFO    ] time= 05/06/2026 19:49:49
[2026-06-05 19:49:49,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:49:49,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:49:49,349.349 INFO    ] No existing commands found in stream
[2026-06-05 19:49:54,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:49:54,382.382 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 19:49:55,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:49:55,709.709 INFO    ] Checking for system updates...
[2026-06-05 19:49:55,749.749 INFO    ] 200
[2026-06-05 19:49:55,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:55,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:49:55,808.808 INFO    ] No update needed
[2026-06-05 19:49:55,811.811 INFO    ] Checking for camera pi updates...
[2026-06-05 19:49:55,844.844 INFO    ] 200
[2026-06-05 19:49:55,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:49:55,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:49:55,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:49:55,933.933 INFO    ] No camera update needed
[2026-06-05 19:49:55,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:49:55,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:49:55,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:49:55,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:49:57,990.990 INFO    ] ================================================
[2026-06-05 19:49:58,005.005 INFO    ] Launching Daemon at Fri Jun  5 19:49:57 IST 2026
[2026-06-05 19:49:58,016.016 INFO    ] ================================================
[2026-06-05 19:49:58,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:49:58
[2026-06-05 19:49:59,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:49:59,478.478 INFO    ] Initializing speech engine...
[2026-06-05 19:49:59,484.484 INFO    ] 2026-06-05 19:49:59
[2026-06-05 19:49:59,764.764 INFO    ] 2026-06-05 19:49:59
[2026-06-05 19:49:59,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:50:00,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:50:00,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:50:00,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:50:00,269.269 INFO    ] time= 05/06/2026 19:50:00
[2026-06-05 19:50:00,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:50:00,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:50:00,459.459 INFO    ] No existing commands found in stream
[2026-06-05 19:50:05,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:50:05,482.482 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 19:50:07,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:50:07,603.603 INFO    ] Checking for system updates...
[2026-06-05 19:50:07,643.643 INFO    ] 200
[2026-06-05 19:50:07,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:07,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:50:07,702.702 INFO    ] No update needed
[2026-06-05 19:50:07,705.705 INFO    ] Checking for camera pi updates...
[2026-06-05 19:50:07,741.741 INFO    ] 200
[2026-06-05 19:50:07,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:07,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:50:07,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:50:07,968.968 INFO    ] No camera update needed
[2026-06-05 19:50:07,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:50:07,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:50:07,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:50:07,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:50:10,023.023 INFO    ] ================================================
[2026-06-05 19:50:10,039.039 INFO    ] Launching Daemon at Fri Jun  5 19:50:10 IST 2026
[2026-06-05 19:50:10,050.050 INFO    ] ================================================
[2026-06-05 19:50:10,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:50:10
[2026-06-05 19:50:11,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:50:11,486.486 INFO    ] Initializing speech engine...
[2026-06-05 19:50:11,496.496 INFO    ] 2026-06-05 19:50:11
[2026-06-05 19:50:11,742.742 INFO    ] 2026-06-05 19:50:11
[2026-06-05 19:50:11,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:50:15,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:50:15,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:50:15,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:50:15,328.328 INFO    ] time= 05/06/2026 19:50:15
[2026-06-05 19:50:15,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:50:15,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:50:15,386.386 INFO    ] No existing commands found in stream
[2026-06-05 19:50:20,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:50:20,398.398 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 19:50:23,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:50:23,819.819 INFO    ] Checking for system updates...
[2026-06-05 19:50:23,856.856 INFO    ] 200
[2026-06-05 19:50:23,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:23,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:50:23,920.920 INFO    ] No update needed
[2026-06-05 19:50:23,922.922 INFO    ] Checking for camera pi updates...
[2026-06-05 19:50:23,962.962 INFO    ] 200
[2026-06-05 19:50:23,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:24,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:50:24,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:50:24,042.042 INFO    ] No camera update needed
[2026-06-05 19:50:24,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:50:24,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:50:24,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:50:24,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:50:26,101.101 INFO    ] ================================================
[2026-06-05 19:50:26,116.116 INFO    ] Launching Daemon at Fri Jun  5 19:50:26 IST 2026
[2026-06-05 19:50:26,128.128 INFO    ] ================================================
[2026-06-05 19:50:26,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:50:26
[2026-06-05 19:50:27,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:50:27,583.583 INFO    ] Initializing speech engine...
[2026-06-05 19:50:27,589.589 INFO    ] 2026-06-05 19:50:27
[2026-06-05 19:50:27,847.847 INFO    ] 2026-06-05 19:50:27
[2026-06-05 19:50:27,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:50:28,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:50:28,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:50:28,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:50:28,315.315 INFO    ] time= 05/06/2026 19:50:28
[2026-06-05 19:50:28,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:50:28,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:50:28,521.521 INFO    ] No existing commands found in stream
[2026-06-05 19:50:33,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:50:33,551.551 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 19:50:34,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:50:34,048.048 INFO    ] Checking for system updates...
[2026-06-05 19:50:34,084.084 INFO    ] 200
[2026-06-05 19:50:34,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:34,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:50:34,142.142 INFO    ] No update needed
[2026-06-05 19:50:34,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 19:50:34,178.178 INFO    ] 200
[2026-06-05 19:50:34,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:34,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:50:34,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:50:34,252.252 INFO    ] No camera update needed
[2026-06-05 19:50:34,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:50:34,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:50:34,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:50:34,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:50:36,307.307 INFO    ] ================================================
[2026-06-05 19:50:36,323.323 INFO    ] Launching Daemon at Fri Jun  5 19:50:36 IST 2026
[2026-06-05 19:50:36,334.334 INFO    ] ================================================
[2026-06-05 19:50:36,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:50:36
[2026-06-05 19:50:37,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:50:37,818.818 INFO    ] Initializing speech engine...
[2026-06-05 19:50:37,833.833 INFO    ] 2026-06-05 19:50:37
[2026-06-05 19:50:38,112.112 INFO    ] 2026-06-05 19:50:38
[2026-06-05 19:50:38,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:50:38,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:50:38,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:50:38,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:50:38,604.604 INFO    ] time= 05/06/2026 19:50:38
[2026-06-05 19:50:38,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:50:38,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:50:38,835.835 INFO    ] No existing commands found in stream
[2026-06-05 19:50:43,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:50:43,867.867 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 19:50:46,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:50:46,401.401 INFO    ] Checking for system updates...
[2026-06-05 19:50:46,445.445 INFO    ] 200
[2026-06-05 19:50:46,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:46,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:50:46,506.506 INFO    ] No update needed
[2026-06-05 19:50:46,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 19:50:46,543.543 INFO    ] 200
[2026-06-05 19:50:46,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:46,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:50:46,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:50:46,638.638 INFO    ] No camera update needed
[2026-06-05 19:50:46,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:50:46,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:50:46,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:50:46,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:50:48,699.699 INFO    ] ================================================
[2026-06-05 19:50:48,715.715 INFO    ] Launching Daemon at Fri Jun  5 19:50:48 IST 2026
[2026-06-05 19:50:48,727.727 INFO    ] ================================================
[2026-06-05 19:50:49,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:50:49
[2026-06-05 19:50:49,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:50:50,165.165 INFO    ] Initializing speech engine...
[2026-06-05 19:50:50,172.172 INFO    ] 2026-06-05 19:50:50
[2026-06-05 19:50:50,471.471 INFO    ] 2026-06-05 19:50:50
[2026-06-05 19:50:50,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:50:50,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:50:50,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:50:50,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:50:50,885.885 INFO    ] time= 05/06/2026 19:50:50
[2026-06-05 19:50:50,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:50:50,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:50:50,972.972 INFO    ] No existing commands found in stream
[2026-06-05 19:50:56,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:50:56,005.005 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-05 19:50:59,804.804 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:50:59,807.807 INFO    ] Checking for system updates...
[2026-06-05 19:50:59,846.846 INFO    ] 200
[2026-06-05 19:50:59,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:59,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:50:59,909.909 INFO    ] No update needed
[2026-06-05 19:50:59,912.912 INFO    ] Checking for camera pi updates...
[2026-06-05 19:50:59,946.946 INFO    ] 200
[2026-06-05 19:50:59,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:50:59,988.988 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:51:00,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:51:00,035.035 INFO    ] No camera update needed
[2026-06-05 19:51:00,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:51:00,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:51:00,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:51:00,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:51:02,103.103 INFO    ] ================================================
[2026-06-05 19:51:02,125.125 INFO    ] Launching Daemon at Fri Jun  5 19:51:02 IST 2026
[2026-06-05 19:51:02,140.140 INFO    ] ================================================
[2026-06-05 19:51:02,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:51:02
[2026-06-05 19:51:03,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:51:03,757.757 INFO    ] Initializing speech engine...
[2026-06-05 19:51:03,767.767 INFO    ] 2026-06-05 19:51:03
[2026-06-05 19:51:04,038.038 INFO    ] 2026-06-05 19:51:04
[2026-06-05 19:51:04,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:51:04,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:51:04,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:51:04,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:51:04,551.551 INFO    ] time= 05/06/2026 19:51:04
[2026-06-05 19:51:04,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:51:04,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:51:04,768.768 INFO    ] No existing commands found in stream
[2026-06-05 19:51:09,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:51:09,789.789 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 19:51:13,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:51:13,135.135 INFO    ] Checking for system updates...
[2026-06-05 19:51:13,172.172 INFO    ] 200
[2026-06-05 19:51:13,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:51:13,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:51:13,245.245 INFO    ] No update needed
[2026-06-05 19:51:13,248.248 INFO    ] Checking for camera pi updates...
[2026-06-05 19:51:13,284.284 INFO    ] 200
[2026-06-05 19:51:13,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:51:13,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:51:13,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:51:13,378.378 INFO    ] No camera update needed
[2026-06-05 19:51:13,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:51:13,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:51:13,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:51:13,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:51:15,437.437 INFO    ] ================================================
[2026-06-05 19:51:15,452.452 INFO    ] Launching Daemon at Fri Jun  5 19:51:15 IST 2026
[2026-06-05 19:51:15,464.464 INFO    ] ================================================
[2026-06-05 19:51:16,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:51:16
[2026-06-05 19:51:16,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:51:16,924.924 INFO    ] Initializing speech engine...
[2026-06-05 19:51:16,934.934 INFO    ] 2026-06-05 19:51:16
[2026-06-05 19:51:17,183.183 INFO    ] 2026-06-05 19:51:17
[2026-06-05 19:51:17,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:51:17,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:51:17,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:51:17,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:51:17,656.656 INFO    ] time= 05/06/2026 19:51:17
[2026-06-05 19:51:17,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:51:17,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:51:17,897.897 INFO    ] No existing commands found in stream
[2026-06-05 19:51:22,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:51:22,914.914 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 19:51:25,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:51:25,827.827 INFO    ] Checking for system updates...
[2026-06-05 19:51:25,864.864 INFO    ] 200
[2026-06-05 19:51:25,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:51:25,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:51:25,923.923 INFO    ] No update needed
[2026-06-05 19:51:25,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 19:51:25,960.960 INFO    ] 200
[2026-06-05 19:51:25,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:51:26,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:51:26,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:51:26,053.053 INFO    ] No camera update needed
[2026-06-05 19:51:26,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:51:26,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:51:26,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:51:26,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:51:28,111.111 INFO    ] ================================================
[2026-06-05 19:51:28,127.127 INFO    ] Launching Daemon at Fri Jun  5 19:51:28 IST 2026
[2026-06-05 19:51:28,138.138 INFO    ] ================================================
[2026-06-05 19:51:28,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:51:28
[2026-06-05 19:51:29,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:51:29,553.553 INFO    ] Initializing speech engine...
[2026-06-05 19:51:29,559.559 INFO    ] 2026-06-05 19:51:29
[2026-06-05 19:51:29,852.852 INFO    ] 2026-06-05 19:51:29
[2026-06-05 19:51:29,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:51:30,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:51:30,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:51:30,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:51:30,229.229 INFO    ] time= 05/06/2026 19:51:30
[2026-06-05 19:51:30,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:51:30,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:51:30,352.352 INFO    ] No existing commands found in stream
[2026-06-05 19:51:35,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:51:35,367.367 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 19:51:35,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:51:35,957.957 INFO    ] Checking for system updates...
[2026-06-05 19:51:35,997.997 INFO    ] 200
[2026-06-05 19:51:35,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:51:36,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:51:36,059.059 INFO    ] No update needed
[2026-06-05 19:51:36,065.065 INFO    ] Checking for camera pi updates...
[2026-06-05 19:51:36,100.100 INFO    ] 200
[2026-06-05 19:51:36,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:51:36,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:51:36,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:51:36,189.189 INFO    ] No camera update needed
[2026-06-05 19:51:36,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:51:36,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:51:36,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:51:36,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:51:38,247.247 INFO    ] ================================================
[2026-06-05 19:51:38,262.262 INFO    ] Launching Daemon at Fri Jun  5 19:51:38 IST 2026
[2026-06-05 19:51:38,274.274 INFO    ] ================================================
[2026-06-05 19:51:38,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:51:38
[2026-06-05 19:51:39,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:51:39,729.729 INFO    ] Initializing speech engine...
[2026-06-05 19:51:39,742.742 INFO    ] 2026-06-05 19:51:39
[2026-06-05 19:51:40,028.028 INFO    ] 2026-06-05 19:51:40
[2026-06-05 19:51:40,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:51:40,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:51:40,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:51:40,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:51:40,522.522 INFO    ] time= 05/06/2026 19:51:40
[2026-06-05 19:51:40,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:51:40,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:51:40,646.646 INFO    ] No existing commands found in stream
[2026-06-05 19:51:45,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:51:45,661.661 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 19:51:49,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:51:49,282.282 INFO    ] Checking for system updates...
[2026-06-05 19:51:49,318.318 INFO    ] 200
[2026-06-05 19:51:49,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:51:49,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:51:49,383.383 INFO    ] No update needed
[2026-06-05 19:51:49,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 19:51:49,430.430 INFO    ] 200
[2026-06-05 19:51:49,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:51:49,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:51:49,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:51:49,529.529 INFO    ] No camera update needed
[2026-06-05 19:51:49,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:51:49,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:51:49,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:51:49,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:51:51,586.586 INFO    ] ================================================
[2026-06-05 19:51:51,601.601 INFO    ] Launching Daemon at Fri Jun  5 19:51:51 IST 2026
[2026-06-05 19:51:51,613.613 INFO    ] ================================================
[2026-06-05 19:51:52,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:51:52
[2026-06-05 19:51:52,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:51:53,057.057 INFO    ] Initializing speech engine...
[2026-06-05 19:51:53,070.070 INFO    ] 2026-06-05 19:51:53
[2026-06-05 19:51:53,355.355 INFO    ] 2026-06-05 19:51:53
[2026-06-05 19:51:53,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:51:53,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:51:53,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:51:53,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:51:53,723.723 INFO    ] time= 05/06/2026 19:51:53
[2026-06-05 19:51:53,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:51:53,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:51:53,849.849 INFO    ] No existing commands found in stream
[2026-06-05 19:51:58,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:51:58,862.862 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 19:52:00,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:52:00,531.531 INFO    ] Checking for system updates...
[2026-06-05 19:52:00,570.570 INFO    ] 200
[2026-06-05 19:52:00,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:00,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:52:00,642.642 INFO    ] No update needed
[2026-06-05 19:52:00,645.645 INFO    ] Checking for camera pi updates...
[2026-06-05 19:52:00,685.685 INFO    ] 200
[2026-06-05 19:52:00,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:00,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:52:00,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:52:00,779.779 INFO    ] No camera update needed
[2026-06-05 19:52:00,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:52:00,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:52:00,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:52:00,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:52:02,872.872 INFO    ] ================================================
[2026-06-05 19:52:02,892.892 INFO    ] Launching Daemon at Fri Jun  5 19:52:02 IST 2026
[2026-06-05 19:52:02,903.903 INFO    ] ================================================
[2026-06-05 19:52:03,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:52:03
[2026-06-05 19:52:04,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:52:04,518.518 INFO    ] Initializing speech engine...
[2026-06-05 19:52:04,530.530 INFO    ] 2026-06-05 19:52:04
[2026-06-05 19:52:04,815.815 INFO    ] 2026-06-05 19:52:04
[2026-06-05 19:52:04,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:52:05,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:52:05,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:52:05,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:52:05,349.349 INFO    ] time= 05/06/2026 19:52:05
[2026-06-05 19:52:05,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:52:05,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:52:05,510.510 INFO    ] No existing commands found in stream
[2026-06-05 19:52:10,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:52:10,543.543 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 19:52:11,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:52:11,107.107 INFO    ] Checking for system updates...
[2026-06-05 19:52:11,149.149 INFO    ] 200
[2026-06-05 19:52:11,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:11,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:52:11,209.209 INFO    ] No update needed
[2026-06-05 19:52:11,212.212 INFO    ] Checking for camera pi updates...
[2026-06-05 19:52:11,247.247 INFO    ] 200
[2026-06-05 19:52:11,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:11,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:52:11,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:52:11,340.340 INFO    ] No camera update needed
[2026-06-05 19:52:11,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:52:11,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:52:11,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:52:11,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:52:13,400.400 INFO    ] ================================================
[2026-06-05 19:52:13,416.416 INFO    ] Launching Daemon at Fri Jun  5 19:52:13 IST 2026
[2026-06-05 19:52:13,427.427 INFO    ] ================================================
[2026-06-05 19:52:14,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:52:14
[2026-06-05 19:52:14,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:52:14,901.901 INFO    ] Initializing speech engine...
[2026-06-05 19:52:14,908.908 INFO    ] 2026-06-05 19:52:14
[2026-06-05 19:52:15,171.171 INFO    ] 2026-06-05 19:52:15
[2026-06-05 19:52:15,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:52:17,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:52:17,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:52:18,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:52:18,229.229 INFO    ] time= 05/06/2026 19:52:18
[2026-06-05 19:52:18,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:52:18,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:52:18,287.287 INFO    ] No existing commands found in stream
[2026-06-05 19:52:23,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:52:23,299.299 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 19:52:26,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:52:26,948.948 INFO    ] Checking for system updates...
[2026-06-05 19:52:26,987.987 INFO    ] 200
[2026-06-05 19:52:26,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:27,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:52:27,052.052 INFO    ] No update needed
[2026-06-05 19:52:27,054.054 INFO    ] Checking for camera pi updates...
[2026-06-05 19:52:27,091.091 INFO    ] 200
[2026-06-05 19:52:27,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:27,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:52:27,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:52:27,176.176 INFO    ] No camera update needed
[2026-06-05 19:52:27,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:52:27,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:52:27,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:52:27,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:52:29,233.233 INFO    ] ================================================
[2026-06-05 19:52:29,249.249 INFO    ] Launching Daemon at Fri Jun  5 19:52:29 IST 2026
[2026-06-05 19:52:29,260.260 INFO    ] ================================================
[2026-06-05 19:52:29,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:52:29
[2026-06-05 19:52:30,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:52:30,718.718 INFO    ] Initializing speech engine...
[2026-06-05 19:52:30,728.728 INFO    ] 2026-06-05 19:52:30
[2026-06-05 19:52:30,989.989 INFO    ] 2026-06-05 19:52:30
[2026-06-05 19:52:31,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:52:31,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:52:31,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:52:31,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:52:31,454.454 INFO    ] time= 05/06/2026 19:52:31
[2026-06-05 19:52:31,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:52:31,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:52:31,689.689 INFO    ] No existing commands found in stream
[2026-06-05 19:52:36,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:52:36,717.717 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 19:52:40,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:52:40,567.567 INFO    ] Checking for system updates...
[2026-06-05 19:52:40,603.603 INFO    ] 200
[2026-06-05 19:52:40,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:40,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:52:40,662.662 INFO    ] No update needed
[2026-06-05 19:52:40,664.664 INFO    ] Checking for camera pi updates...
[2026-06-05 19:52:40,704.704 INFO    ] 200
[2026-06-05 19:52:40,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:40,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:52:40,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:52:40,907.907 INFO    ] No camera update needed
[2026-06-05 19:52:40,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:52:40,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:52:40,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:52:40,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:52:42,965.965 INFO    ] ================================================
[2026-06-05 19:52:42,982.982 INFO    ] Launching Daemon at Fri Jun  5 19:52:42 IST 2026
[2026-06-05 19:52:42,993.993 INFO    ] ================================================
[2026-06-05 19:52:43,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:52:43
[2026-06-05 19:52:44,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:52:44,438.438 INFO    ] Initializing speech engine...
[2026-06-05 19:52:44,447.447 INFO    ] 2026-06-05 19:52:44
[2026-06-05 19:52:44,701.701 INFO    ] 2026-06-05 19:52:44
[2026-06-05 19:52:44,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:52:44,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:52:44,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:52:45,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:52:45,199.199 INFO    ] time= 05/06/2026 19:52:45
[2026-06-05 19:52:45,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:52:45,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:52:45,352.352 INFO    ] No existing commands found in stream
[2026-06-05 19:52:50,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:52:50,362.362 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 19:52:54,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:52:54,497.497 INFO    ] Checking for system updates...
[2026-06-05 19:52:54,534.534 INFO    ] 200
[2026-06-05 19:52:54,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:54,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:52:54,598.598 INFO    ] No update needed
[2026-06-05 19:52:54,601.601 INFO    ] Checking for camera pi updates...
[2026-06-05 19:52:54,635.635 INFO    ] 200
[2026-06-05 19:52:54,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:52:54,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:52:54,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:52:54,732.732 INFO    ] No camera update needed
[2026-06-05 19:52:54,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:52:54,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:52:54,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:52:54,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:52:56,789.789 INFO    ] ================================================
[2026-06-05 19:52:56,804.804 INFO    ] Launching Daemon at Fri Jun  5 19:52:56 IST 2026
[2026-06-05 19:52:56,814.814 INFO    ] ================================================
[2026-06-05 19:52:57,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:52:57
[2026-06-05 19:52:57,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:52:58,248.248 INFO    ] Initializing speech engine...
[2026-06-05 19:52:58,263.263 INFO    ] 2026-06-05 19:52:58
[2026-06-05 19:52:58,526.526 INFO    ] 2026-06-05 19:52:58
[2026-06-05 19:52:58,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:52:58,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:52:58,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:52:59,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:52:59,066.066 INFO    ] time= 05/06/2026 19:52:59
[2026-06-05 19:52:59,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:52:59,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:52:59,236.236 INFO    ] No existing commands found in stream
[2026-06-05 19:53:04,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:53:04,253.253 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 19:53:05,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:53:05,750.750 INFO    ] Checking for system updates...
[2026-06-05 19:53:05,787.787 INFO    ] 200
[2026-06-05 19:53:05,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:05,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:53:05,852.852 INFO    ] No update needed
[2026-06-05 19:53:05,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 19:53:05,895.895 INFO    ] 200
[2026-06-05 19:53:05,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:05,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:53:06,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:53:06,009.009 INFO    ] No camera update needed
[2026-06-05 19:53:06,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:53:06,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:53:06,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:53:06,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:53:08,067.067 INFO    ] ================================================
[2026-06-05 19:53:08,082.082 INFO    ] Launching Daemon at Fri Jun  5 19:53:08 IST 2026
[2026-06-05 19:53:08,092.092 INFO    ] ================================================
[2026-06-05 19:53:08,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:53:08
[2026-06-05 19:53:09,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:53:09,523.523 INFO    ] Initializing speech engine...
[2026-06-05 19:53:09,538.538 INFO    ] 2026-06-05 19:53:09
[2026-06-05 19:53:09,808.808 INFO    ] 2026-06-05 19:53:09
[2026-06-05 19:53:09,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:53:10,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:53:10,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:53:10,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:53:10,191.191 INFO    ] time= 05/06/2026 19:53:10
[2026-06-05 19:53:10,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:53:10,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:53:10,360.360 INFO    ] No existing commands found in stream
[2026-06-05 19:53:15,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:53:15,388.388 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 19:53:19,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:53:19,256.256 INFO    ] Checking for system updates...
[2026-06-05 19:53:19,296.296 INFO    ] 200
[2026-06-05 19:53:19,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:19,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:53:19,354.354 INFO    ] No update needed
[2026-06-05 19:53:19,357.357 INFO    ] Checking for camera pi updates...
[2026-06-05 19:53:19,391.391 INFO    ] 200
[2026-06-05 19:53:19,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:19,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:53:19,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:53:19,485.485 INFO    ] No camera update needed
[2026-06-05 19:53:19,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:53:19,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:53:19,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:53:19,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:53:21,540.540 INFO    ] ================================================
[2026-06-05 19:53:21,555.555 INFO    ] Launching Daemon at Fri Jun  5 19:53:21 IST 2026
[2026-06-05 19:53:21,566.566 INFO    ] ================================================
[2026-06-05 19:53:22,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:53:22
[2026-06-05 19:53:22,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:53:23,009.009 INFO    ] Initializing speech engine...
[2026-06-05 19:53:23,031.031 INFO    ] 2026-06-05 19:53:23
[2026-06-05 19:53:23,285.285 INFO    ] 2026-06-05 19:53:23
[2026-06-05 19:53:23,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:53:23,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:53:23,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:53:23,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:53:23,754.754 INFO    ] time= 05/06/2026 19:53:23
[2026-06-05 19:53:23,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:53:23,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:53:23,983.983 INFO    ] No existing commands found in stream
[2026-06-05 19:53:29,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:53:29,005.005 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 19:53:33,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:53:33,054.054 INFO    ] Checking for system updates...
[2026-06-05 19:53:33,093.093 INFO    ] 200
[2026-06-05 19:53:33,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:33,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:53:33,153.153 INFO    ] No update needed
[2026-06-05 19:53:33,155.155 INFO    ] Checking for camera pi updates...
[2026-06-05 19:53:33,192.192 INFO    ] 200
[2026-06-05 19:53:33,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:33,240.240 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:53:33,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:53:33,287.287 INFO    ] No camera update needed
[2026-06-05 19:53:33,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:53:33,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:53:33,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:53:33,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:53:35,347.347 INFO    ] ================================================
[2026-06-05 19:53:35,364.364 INFO    ] Launching Daemon at Fri Jun  5 19:53:35 IST 2026
[2026-06-05 19:53:35,376.376 INFO    ] ================================================
[2026-06-05 19:53:36,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:53:36
[2026-06-05 19:53:36,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:53:36,937.937 INFO    ] Initializing speech engine...
[2026-06-05 19:53:36,946.946 INFO    ] 2026-06-05 19:53:36
[2026-06-05 19:53:37,212.212 INFO    ] 2026-06-05 19:53:37
[2026-06-05 19:53:37,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:53:37,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:53:37,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:53:37,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:53:37,789.789 INFO    ] time= 05/06/2026 19:53:37
[2026-06-05 19:53:37,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:53:37,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:53:37,981.981 INFO    ] No existing commands found in stream
[2026-06-05 19:53:43,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:53:43,016.016 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 19:53:43,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 19:53:43,955.955 INFO    ] Checking for system updates...
[2026-06-05 19:53:43,993.993 INFO    ] 200
[2026-06-05 19:53:43,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:44,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:53:44,059.059 INFO    ] No update needed
[2026-06-05 19:53:44,061.061 INFO    ] Checking for camera pi updates...
[2026-06-05 19:53:44,096.096 INFO    ] 200
[2026-06-05 19:53:44,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:44,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:53:44,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:53:44,194.194 INFO    ] No camera update needed
[2026-06-05 19:53:44,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:53:44,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:53:44,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:53:44,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:53:46,248.248 INFO    ] ================================================
[2026-06-05 19:53:46,264.264 INFO    ] Launching Daemon at Fri Jun  5 19:53:46 IST 2026
[2026-06-05 19:53:46,275.275 INFO    ] ================================================
[2026-06-05 19:53:46,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:53:46
[2026-06-05 19:53:47,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:53:47,707.707 INFO    ] Initializing speech engine...
[2026-06-05 19:53:47,715.715 INFO    ] 2026-06-05 19:53:47
[2026-06-05 19:53:48,012.012 INFO    ] 2026-06-05 19:53:47
[2026-06-05 19:53:48,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:53:49,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:53:49,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:53:50,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:53:50,023.023 INFO    ] time= 05/06/2026 19:53:50
[2026-06-05 19:53:50,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:53:50,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:53:50,186.186 INFO    ] No existing commands found in stream
[2026-06-05 19:53:55,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:53:55,237.237 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 19:53:56,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:53:56,094.094 INFO    ] Checking for system updates...
[2026-06-05 19:53:56,131.131 INFO    ] 200
[2026-06-05 19:53:56,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:56,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:53:56,189.189 INFO    ] No update needed
[2026-06-05 19:53:56,191.191 INFO    ] Checking for camera pi updates...
[2026-06-05 19:53:56,229.229 INFO    ] 200
[2026-06-05 19:53:56,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:53:56,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:53:56,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:53:56,319.319 INFO    ] No camera update needed
[2026-06-05 19:53:56,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:53:56,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:53:56,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:53:56,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:53:58,374.374 INFO    ] ================================================
[2026-06-05 19:53:58,390.390 INFO    ] Launching Daemon at Fri Jun  5 19:53:58 IST 2026
[2026-06-05 19:53:58,401.401 INFO    ] ================================================
[2026-06-05 19:53:58,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:53:58
[2026-06-05 19:53:59,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:53:59,811.811 INFO    ] Initializing speech engine...
[2026-06-05 19:53:59,818.818 INFO    ] 2026-06-05 19:53:59
[2026-06-05 19:54:00,091.091 INFO    ] 2026-06-05 19:54:00
[2026-06-05 19:54:00,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:54:00,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:54:00,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:54:00,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:54:00,487.487 INFO    ] time= 05/06/2026 19:54:00
[2026-06-05 19:54:00,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:54:00,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:54:00,660.660 INFO    ] No existing commands found in stream
[2026-06-05 19:54:05,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:54:05,693.693 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 19:54:07,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:54:07,541.541 INFO    ] Checking for system updates...
[2026-06-05 19:54:07,581.581 INFO    ] 200
[2026-06-05 19:54:07,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:07,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:54:07,647.647 INFO    ] No update needed
[2026-06-05 19:54:07,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 19:54:07,687.687 INFO    ] 200
[2026-06-05 19:54:07,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:07,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:54:07,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:54:07,769.769 INFO    ] No camera update needed
[2026-06-05 19:54:07,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:54:07,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:54:07,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:54:07,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:54:09,824.824 INFO    ] ================================================
[2026-06-05 19:54:09,839.839 INFO    ] Launching Daemon at Fri Jun  5 19:54:09 IST 2026
[2026-06-05 19:54:09,850.850 INFO    ] ================================================
[2026-06-05 19:54:10,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:54:10
[2026-06-05 19:54:11,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:54:11,311.311 INFO    ] Initializing speech engine...
[2026-06-05 19:54:11,334.334 INFO    ] 2026-06-05 19:54:11
[2026-06-05 19:54:11,585.585 INFO    ] 2026-06-05 19:54:11
[2026-06-05 19:54:11,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:54:11,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:54:11,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:54:12,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:54:12,056.056 INFO    ] time= 05/06/2026 19:54:12
[2026-06-05 19:54:12,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:54:12,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:54:12,288.288 INFO    ] No existing commands found in stream
[2026-06-05 19:54:17,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:54:17,310.310 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 19:54:20,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:54:20,532.532 INFO    ] Checking for system updates...
[2026-06-05 19:54:20,573.573 INFO    ] 200
[2026-06-05 19:54:20,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:20,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:54:20,631.631 INFO    ] No update needed
[2026-06-05 19:54:20,633.633 INFO    ] Checking for camera pi updates...
[2026-06-05 19:54:20,671.671 INFO    ] 200
[2026-06-05 19:54:20,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:20,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:54:20,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:54:20,767.767 INFO    ] No camera update needed
[2026-06-05 19:54:20,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:54:20,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:54:20,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:54:20,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:54:22,823.823 INFO    ] ================================================
[2026-06-05 19:54:22,839.839 INFO    ] Launching Daemon at Fri Jun  5 19:54:22 IST 2026
[2026-06-05 19:54:22,850.850 INFO    ] ================================================
[2026-06-05 19:54:23,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:54:23
[2026-06-05 19:54:24,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:54:24,511.511 INFO    ] Initializing speech engine...
[2026-06-05 19:54:24,519.519 INFO    ] 2026-06-05 19:54:24
[2026-06-05 19:54:24,814.814 INFO    ] 2026-06-05 19:54:24
[2026-06-05 19:54:24,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:54:25,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:54:25,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:54:25,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:54:25,347.347 INFO    ] time= 05/06/2026 19:54:25
[2026-06-05 19:54:25,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:54:25,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:54:25,549.549 INFO    ] No existing commands found in stream
[2026-06-05 19:54:30,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:54:30,583.583 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 19:54:33,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:54:33,072.072 INFO    ] Checking for system updates...
[2026-06-05 19:54:33,115.115 INFO    ] 200
[2026-06-05 19:54:33,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:33,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:54:33,189.189 INFO    ] No update needed
[2026-06-05 19:54:33,192.192 INFO    ] Checking for camera pi updates...
[2026-06-05 19:54:33,232.232 INFO    ] 200
[2026-06-05 19:54:33,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:33,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:54:33,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:54:33,341.341 INFO    ] No camera update needed
[2026-06-05 19:54:33,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:54:33,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:54:33,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:54:33,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:54:35,399.399 INFO    ] ================================================
[2026-06-05 19:54:35,414.414 INFO    ] Launching Daemon at Fri Jun  5 19:54:35 IST 2026
[2026-06-05 19:54:35,425.425 INFO    ] ================================================
[2026-06-05 19:54:36,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:54:36
[2026-06-05 19:54:36,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:54:36,879.879 INFO    ] Initializing speech engine...
[2026-06-05 19:54:36,885.885 INFO    ] 2026-06-05 19:54:36
[2026-06-05 19:54:37,185.185 INFO    ] 2026-06-05 19:54:37
[2026-06-05 19:54:37,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:54:37,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:54:37,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:54:37,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:54:37,608.608 INFO    ] time= 05/06/2026 19:54:37
[2026-06-05 19:54:37,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:54:37,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:54:37,693.693 INFO    ] No existing commands found in stream
[2026-06-05 19:54:42,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:54:42,709.709 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 19:54:43,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:54:43,567.567 INFO    ] Checking for system updates...
[2026-06-05 19:54:43,608.608 INFO    ] 200
[2026-06-05 19:54:43,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:43,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:54:43,672.672 INFO    ] No update needed
[2026-06-05 19:54:43,675.675 INFO    ] Checking for camera pi updates...
[2026-06-05 19:54:43,712.712 INFO    ] 200
[2026-06-05 19:54:43,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:43,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:54:43,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:54:43,907.907 INFO    ] No camera update needed
[2026-06-05 19:54:43,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:54:43,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:54:43,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:54:43,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:54:45,963.963 INFO    ] ================================================
[2026-06-05 19:54:45,978.978 INFO    ] Launching Daemon at Fri Jun  5 19:54:45 IST 2026
[2026-06-05 19:54:45,990.990 INFO    ] ================================================
[2026-06-05 19:54:46,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:54:46
[2026-06-05 19:54:47,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:54:47,440.440 INFO    ] Initializing speech engine...
[2026-06-05 19:54:47,456.456 INFO    ] 2026-06-05 19:54:47
[2026-06-05 19:54:47,744.744 INFO    ] 2026-06-05 19:54:47
[2026-06-05 19:54:47,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:54:50,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:54:50,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:54:51,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:54:51,120.120 INFO    ] time= 05/06/2026 19:54:51
[2026-06-05 19:54:51,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:54:51,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:54:51,180.180 INFO    ] No existing commands found in stream
[2026-06-05 19:54:56,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:54:56,192.192 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 19:54:58,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:54:58,819.819 INFO    ] Checking for system updates...
[2026-06-05 19:54:58,855.855 INFO    ] 200
[2026-06-05 19:54:58,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:58,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:54:58,921.921 INFO    ] No update needed
[2026-06-05 19:54:58,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 19:54:58,957.957 INFO    ] 200
[2026-06-05 19:54:58,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:54:59,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:54:59,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:54:59,053.053 INFO    ] No camera update needed
[2026-06-05 19:54:59,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:54:59,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:54:59,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:54:59,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:55:01,139.139 INFO    ] ================================================
[2026-06-05 19:55:01,219.219 INFO    ] Launching Daemon at Fri Jun  5 19:55:01 IST 2026
[2026-06-05 19:55:01,245.245 INFO    ] ================================================
[2026-06-05 19:55:02,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:55:02
[2026-06-05 19:55:02,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:55:03,004.004 INFO    ] Initializing speech engine...
[2026-06-05 19:55:03,012.012 INFO    ] 2026-06-05 19:55:03
[2026-06-05 19:55:03,262.262 INFO    ] 2026-06-05 19:55:03
[2026-06-05 19:55:03,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:55:03,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:55:03,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:55:03,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:55:03,736.736 INFO    ] time= 05/06/2026 19:55:03
[2026-06-05 19:55:03,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:55:03,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:55:03,913.913 INFO    ] No existing commands found in stream
[2026-06-05 19:55:08,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:55:08,931.931 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 19:55:10,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:55:10,702.702 INFO    ] Checking for system updates...
[2026-06-05 19:55:10,748.748 INFO    ] 200
[2026-06-05 19:55:10,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:55:10,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:55:10,812.812 INFO    ] No update needed
[2026-06-05 19:55:10,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 19:55:10,852.852 INFO    ] 200
[2026-06-05 19:55:10,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:55:10,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:55:10,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:55:10,950.950 INFO    ] No camera update needed
[2026-06-05 19:55:10,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:55:10,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:55:10,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:55:10,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:55:13,007.007 INFO    ] ================================================
[2026-06-05 19:55:13,022.022 INFO    ] Launching Daemon at Fri Jun  5 19:55:13 IST 2026
[2026-06-05 19:55:13,032.032 INFO    ] ================================================
[2026-06-05 19:55:13,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:55:13
[2026-06-05 19:55:14,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:55:14,440.440 INFO    ] Initializing speech engine...
[2026-06-05 19:55:14,449.449 INFO    ] 2026-06-05 19:55:14
[2026-06-05 19:55:14,741.741 INFO    ] 2026-06-05 19:55:14
[2026-06-05 19:55:14,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:55:14,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:55:14,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:55:15,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:55:15,158.158 INFO    ] time= 05/06/2026 19:55:15
[2026-06-05 19:55:15,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:55:15,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:55:15,246.246 INFO    ] No existing commands found in stream
[2026-06-05 19:55:20,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:55:20,262.262 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 19:55:22,807.807 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:55:22,810.810 INFO    ] Checking for system updates...
[2026-06-05 19:55:22,851.851 INFO    ] 200
[2026-06-05 19:55:22,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:55:22,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:55:22,917.917 INFO    ] No update needed
[2026-06-05 19:55:22,920.920 INFO    ] Checking for camera pi updates...
[2026-06-05 19:55:22,953.953 INFO    ] 200
[2026-06-05 19:55:22,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:55:23,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:55:23,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:55:23,056.056 INFO    ] No camera update needed
[2026-06-05 19:55:23,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:55:23,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:55:23,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:55:23,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:55:25,114.114 INFO    ] ================================================
[2026-06-05 19:55:25,129.129 INFO    ] Launching Daemon at Fri Jun  5 19:55:25 IST 2026
[2026-06-05 19:55:25,140.140 INFO    ] ================================================
[2026-06-05 19:55:25,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:55:25
[2026-06-05 19:55:26,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:55:26,762.762 INFO    ] Initializing speech engine...
[2026-06-05 19:55:26,774.774 INFO    ] 2026-06-05 19:55:26
[2026-06-05 19:55:27,062.062 INFO    ] 2026-06-05 19:55:27
[2026-06-05 19:55:27,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:55:27,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:55:27,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:55:27,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:55:27,550.550 INFO    ] time= 05/06/2026 19:55:27
[2026-06-05 19:55:27,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:55:27,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:55:27,751.751 INFO    ] No existing commands found in stream
[2026-06-05 19:55:32,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:55:32,774.774 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 19:55:37,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:55:37,504.504 INFO    ] Checking for system updates...
[2026-06-05 19:55:37,548.548 INFO    ] 200
[2026-06-05 19:55:37,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:55:37,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:55:37,617.617 INFO    ] No update needed
[2026-06-05 19:55:37,620.620 INFO    ] Checking for camera pi updates...
[2026-06-05 19:55:37,656.656 INFO    ] 200
[2026-06-05 19:55:37,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:55:37,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:55:37,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:55:37,747.747 INFO    ] No camera update needed
[2026-06-05 19:55:37,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:55:37,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:55:37,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:55:37,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:55:39,806.806 INFO    ] ================================================
[2026-06-05 19:55:39,822.822 INFO    ] Launching Daemon at Fri Jun  5 19:55:39 IST 2026
[2026-06-05 19:55:39,834.834 INFO    ] ================================================
[2026-06-05 19:55:40,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:55:40
[2026-06-05 19:55:41,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:55:41,503.503 INFO    ] Initializing speech engine...
[2026-06-05 19:55:41,511.511 INFO    ] 2026-06-05 19:55:41
[2026-06-05 19:55:41,804.804 INFO    ] 2026-06-05 19:55:41
[2026-06-05 19:55:41,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:55:42,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:55:42,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:55:42,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:55:42,788.788 INFO    ] time= 05/06/2026 19:55:42
[2026-06-05 19:55:42,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:55:42,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:55:42,922.922 INFO    ] No existing commands found in stream
[2026-06-05 19:55:47,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:55:47,951.951 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 19:55:52,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:55:52,312.312 INFO    ] Checking for system updates...
[2026-06-05 19:55:52,350.350 INFO    ] 200
[2026-06-05 19:55:52,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:55:52,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:55:52,414.414 INFO    ] No update needed
[2026-06-05 19:55:52,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 19:55:52,452.452 INFO    ] 200
[2026-06-05 19:55:52,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:55:52,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:55:52,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:55:52,553.553 INFO    ] No camera update needed
[2026-06-05 19:55:52,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:55:52,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:55:52,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:55:52,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:55:54,612.612 INFO    ] ================================================
[2026-06-05 19:55:54,628.628 INFO    ] Launching Daemon at Fri Jun  5 19:55:54 IST 2026
[2026-06-05 19:55:54,639.639 INFO    ] ================================================
[2026-06-05 19:55:55,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:55:55
[2026-06-05 19:55:55,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:55:56,098.098 INFO    ] Initializing speech engine...
[2026-06-05 19:55:56,113.113 INFO    ] 2026-06-05 19:55:56
[2026-06-05 19:55:56,402.402 INFO    ] 2026-06-05 19:55:56
[2026-06-05 19:55:56,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:55:56,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:55:56,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:55:56,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:55:56,795.795 INFO    ] time= 05/06/2026 19:55:56
[2026-06-05 19:55:56,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:55:56,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:55:56,923.923 INFO    ] No existing commands found in stream
[2026-06-05 19:56:01,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:56:01,937.937 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 19:56:03,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:56:03,596.596 INFO    ] Checking for system updates...
[2026-06-05 19:56:03,636.636 INFO    ] 200
[2026-06-05 19:56:03,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:03,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:56:03,700.700 INFO    ] No update needed
[2026-06-05 19:56:03,702.702 INFO    ] Checking for camera pi updates...
[2026-06-05 19:56:03,739.739 INFO    ] 200
[2026-06-05 19:56:03,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:03,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:56:03,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:56:03,824.824 INFO    ] No camera update needed
[2026-06-05 19:56:03,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:56:03,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:56:03,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:56:03,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:56:05,882.882 INFO    ] ================================================
[2026-06-05 19:56:05,900.900 INFO    ] Launching Daemon at Fri Jun  5 19:56:05 IST 2026
[2026-06-05 19:56:05,913.913 INFO    ] ================================================
[2026-06-05 19:56:06,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:56:06
[2026-06-05 19:56:07,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:56:07,347.347 INFO    ] Initializing speech engine...
[2026-06-05 19:56:07,356.356 INFO    ] 2026-06-05 19:56:07
[2026-06-05 19:56:07,610.610 INFO    ] 2026-06-05 19:56:07
[2026-06-05 19:56:07,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:56:07,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:56:07,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:56:08,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:56:08,059.059 INFO    ] time= 05/06/2026 19:56:08
[2026-06-05 19:56:08,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:56:08,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:56:08,316.316 INFO    ] No existing commands found in stream
[2026-06-05 19:56:13,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:56:13,349.349 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 19:56:17,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:56:17,363.363 INFO    ] Checking for system updates...
[2026-06-05 19:56:17,399.399 INFO    ] 200
[2026-06-05 19:56:17,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:17,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:56:17,458.458 INFO    ] No update needed
[2026-06-05 19:56:17,460.460 INFO    ] Checking for camera pi updates...
[2026-06-05 19:56:17,494.494 INFO    ] 200
[2026-06-05 19:56:17,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:17,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:56:17,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:56:17,590.590 INFO    ] No camera update needed
[2026-06-05 19:56:17,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:56:17,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:56:17,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:56:17,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:56:19,648.648 INFO    ] ================================================
[2026-06-05 19:56:19,664.664 INFO    ] Launching Daemon at Fri Jun  5 19:56:19 IST 2026
[2026-06-05 19:56:19,675.675 INFO    ] ================================================
[2026-06-05 19:56:20,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:56:20
[2026-06-05 19:56:20,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:56:21,105.105 INFO    ] Initializing speech engine...
[2026-06-05 19:56:21,110.110 INFO    ] 2026-06-05 19:56:21
[2026-06-05 19:56:21,417.417 INFO    ] 2026-06-05 19:56:21
[2026-06-05 19:56:21,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:56:23,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:56:23,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:56:23,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:56:23,575.575 INFO    ] time= 05/06/2026 19:56:23
[2026-06-05 19:56:23,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:56:23,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:56:23,726.726 INFO    ] No existing commands found in stream
[2026-06-05 19:56:28,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:56:28,739.739 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 19:56:30,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:56:30,583.583 INFO    ] Checking for system updates...
[2026-06-05 19:56:30,619.619 INFO    ] 200
[2026-06-05 19:56:30,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:30,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:56:30,678.678 INFO    ] No update needed
[2026-06-05 19:56:30,680.680 INFO    ] Checking for camera pi updates...
[2026-06-05 19:56:30,719.719 INFO    ] 200
[2026-06-05 19:56:30,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:30,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:56:30,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:56:30,819.819 INFO    ] No camera update needed
[2026-06-05 19:56:30,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:56:30,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:56:30,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:56:30,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:56:32,879.879 INFO    ] ================================================
[2026-06-05 19:56:32,896.896 INFO    ] Launching Daemon at Fri Jun  5 19:56:32 IST 2026
[2026-06-05 19:56:32,907.907 INFO    ] ================================================
[2026-06-05 19:56:33,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:56:33
[2026-06-05 19:56:34,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:56:34,587.587 INFO    ] Initializing speech engine...
[2026-06-05 19:56:34,600.600 INFO    ] 2026-06-05 19:56:34
[2026-06-05 19:56:34,900.900 INFO    ] 2026-06-05 19:56:34
[2026-06-05 19:56:34,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:56:35,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:56:35,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:56:35,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:56:35,483.483 INFO    ] time= 05/06/2026 19:56:35
[2026-06-05 19:56:35,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:56:35,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:56:35,684.684 INFO    ] No existing commands found in stream
[2026-06-05 19:56:40,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:56:40,719.719 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 19:56:44,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:56:44,381.381 INFO    ] Checking for system updates...
[2026-06-05 19:56:44,421.421 INFO    ] 200
[2026-06-05 19:56:44,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:44,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:56:44,497.497 INFO    ] No update needed
[2026-06-05 19:56:44,501.501 INFO    ] Checking for camera pi updates...
[2026-06-05 19:56:44,544.544 INFO    ] 200
[2026-06-05 19:56:44,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:44,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:56:44,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:56:44,647.647 INFO    ] No camera update needed
[2026-06-05 19:56:44,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:56:44,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:56:44,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:56:44,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:56:46,707.707 INFO    ] ================================================
[2026-06-05 19:56:46,722.722 INFO    ] Launching Daemon at Fri Jun  5 19:56:46 IST 2026
[2026-06-05 19:56:46,734.734 INFO    ] ================================================
[2026-06-05 19:56:47,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:56:47
[2026-06-05 19:56:47,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:56:48,160.160 INFO    ] Initializing speech engine...
[2026-06-05 19:56:48,183.183 INFO    ] 2026-06-05 19:56:48
[2026-06-05 19:56:48,433.433 INFO    ] 2026-06-05 19:56:48
[2026-06-05 19:56:48,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:56:48,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:56:48,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:56:48,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:56:48,901.901 INFO    ] time= 05/06/2026 19:56:48
[2026-06-05 19:56:48,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:56:48,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:56:49,141.141 INFO    ] No existing commands found in stream
[2026-06-05 19:56:54,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:56:54,161.161 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 19:56:55,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:56:55,269.269 INFO    ] Checking for system updates...
[2026-06-05 19:56:55,305.305 INFO    ] 200
[2026-06-05 19:56:55,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:55,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:56:55,371.371 INFO    ] No update needed
[2026-06-05 19:56:55,374.374 INFO    ] Checking for camera pi updates...
[2026-06-05 19:56:55,411.411 INFO    ] 200
[2026-06-05 19:56:55,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:56:55,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:56:55,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:56:55,618.618 INFO    ] No camera update needed
[2026-06-05 19:56:55,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:56:55,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:56:55,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:56:55,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:56:57,678.678 INFO    ] ================================================
[2026-06-05 19:56:57,694.694 INFO    ] Launching Daemon at Fri Jun  5 19:56:57 IST 2026
[2026-06-05 19:56:57,706.706 INFO    ] ================================================
[2026-06-05 19:56:58,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:56:58
[2026-06-05 19:56:58,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:56:59,173.173 INFO    ] Initializing speech engine...
[2026-06-05 19:56:59,195.195 INFO    ] 2026-06-05 19:56:59
[2026-06-05 19:56:59,454.454 INFO    ] 2026-06-05 19:56:59
[2026-06-05 19:56:59,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:56:59,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:56:59,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:56:59,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:56:59,953.953 INFO    ] time= 05/06/2026 19:56:59
[2026-06-05 19:57:00,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:57:00,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:57:00,171.171 INFO    ] No existing commands found in stream
[2026-06-05 19:57:05,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:57:05,188.188 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 19:57:05,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:57:05,885.885 INFO    ] Checking for system updates...
[2026-06-05 19:57:05,934.934 INFO    ] 200
[2026-06-05 19:57:05,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:06,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:57:06,022.022 INFO    ] No update needed
[2026-06-05 19:57:06,025.025 INFO    ] Checking for camera pi updates...
[2026-06-05 19:57:06,067.067 INFO    ] 200
[2026-06-05 19:57:06,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:06,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:57:06,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:57:06,148.148 INFO    ] No camera update needed
[2026-06-05 19:57:06,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:57:06,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:57:06,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:57:06,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:57:08,206.206 INFO    ] ================================================
[2026-06-05 19:57:08,222.222 INFO    ] Launching Daemon at Fri Jun  5 19:57:08 IST 2026
[2026-06-05 19:57:08,233.233 INFO    ] ================================================
[2026-06-05 19:57:08,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:57:08
[2026-06-05 19:57:09,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:57:09,683.683 INFO    ] Initializing speech engine...
[2026-06-05 19:57:09,692.692 INFO    ] 2026-06-05 19:57:09
[2026-06-05 19:57:09,943.943 INFO    ] 2026-06-05 19:57:09
[2026-06-05 19:57:09,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:57:10,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:57:10,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:57:10,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:57:10,378.378 INFO    ] time= 05/06/2026 19:57:10
[2026-06-05 19:57:10,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:57:10,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:57:10,588.588 INFO    ] No existing commands found in stream
[2026-06-05 19:57:15,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:57:15,601.601 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 19:57:19,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:57:19,043.043 INFO    ] Checking for system updates...
[2026-06-05 19:57:19,079.079 INFO    ] 200
[2026-06-05 19:57:19,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:19,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:57:19,137.137 INFO    ] No update needed
[2026-06-05 19:57:19,139.139 INFO    ] Checking for camera pi updates...
[2026-06-05 19:57:19,177.177 INFO    ] 200
[2026-06-05 19:57:19,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:19,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:57:19,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:57:19,266.266 INFO    ] No camera update needed
[2026-06-05 19:57:19,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:57:19,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:57:19,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:57:19,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:57:21,321.321 INFO    ] ================================================
[2026-06-05 19:57:21,338.338 INFO    ] Launching Daemon at Fri Jun  5 19:57:21 IST 2026
[2026-06-05 19:57:21,351.351 INFO    ] ================================================
[2026-06-05 19:57:21,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:57:21
[2026-06-05 19:57:22,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:57:22,775.775 INFO    ] Initializing speech engine...
[2026-06-05 19:57:22,781.781 INFO    ] 2026-06-05 19:57:22
[2026-06-05 19:57:23,082.082 INFO    ] 2026-06-05 19:57:23
[2026-06-05 19:57:23,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:57:24,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:57:24,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:57:24,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:57:24,851.851 INFO    ] time= 05/06/2026 19:57:24
[2026-06-05 19:57:24,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:57:24,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:57:24,995.995 INFO    ] No existing commands found in stream
[2026-06-05 19:57:30,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:57:30,029.029 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 19:57:31,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:57:31,864.864 INFO    ] Checking for system updates...
[2026-06-05 19:57:31,905.905 INFO    ] 200
[2026-06-05 19:57:31,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:31,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:57:31,975.975 INFO    ] No update needed
[2026-06-05 19:57:31,978.978 INFO    ] Checking for camera pi updates...
[2026-06-05 19:57:32,020.020 INFO    ] 200
[2026-06-05 19:57:32,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:32,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:57:32,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:57:32,103.103 INFO    ] No camera update needed
[2026-06-05 19:57:32,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:57:32,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:57:32,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:57:32,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:57:34,163.163 INFO    ] ================================================
[2026-06-05 19:57:34,178.178 INFO    ] Launching Daemon at Fri Jun  5 19:57:34 IST 2026
[2026-06-05 19:57:34,190.190 INFO    ] ================================================
[2026-06-05 19:57:34,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:57:34
[2026-06-05 19:57:35,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:57:35,863.863 INFO    ] Initializing speech engine...
[2026-06-05 19:57:35,870.870 INFO    ] 2026-06-05 19:57:35
[2026-06-05 19:57:36,162.162 INFO    ] 2026-06-05 19:57:36
[2026-06-05 19:57:36,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:57:36,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:57:36,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:57:36,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:57:36,648.648 INFO    ] time= 05/06/2026 19:57:36
[2026-06-05 19:57:36,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:57:36,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:57:36,839.839 INFO    ] No existing commands found in stream
[2026-06-05 19:57:41,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:57:41,872.872 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-05 19:57:42,897.897 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:57:42,900.900 INFO    ] Checking for system updates...
[2026-06-05 19:57:42,938.938 INFO    ] 200
[2026-06-05 19:57:42,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:43,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:57:43,005.005 INFO    ] No update needed
[2026-06-05 19:57:43,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 19:57:43,049.049 INFO    ] 200
[2026-06-05 19:57:43,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:43,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:57:43,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:57:43,139.139 INFO    ] No camera update needed
[2026-06-05 19:57:43,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:57:43,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:57:43,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:57:43,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:57:45,199.199 INFO    ] ================================================
[2026-06-05 19:57:45,215.215 INFO    ] Launching Daemon at Fri Jun  5 19:57:45 IST 2026
[2026-06-05 19:57:45,227.227 INFO    ] ================================================
[2026-06-05 19:57:45,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:57:45
[2026-06-05 19:57:46,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:57:46,647.647 INFO    ] Initializing speech engine...
[2026-06-05 19:57:46,656.656 INFO    ] 2026-06-05 19:57:46
[2026-06-05 19:57:46,949.949 INFO    ] 2026-06-05 19:57:46
[2026-06-05 19:57:46,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:57:47,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:57:47,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:57:47,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:57:47,328.328 INFO    ] time= 05/06/2026 19:57:47
[2026-06-05 19:57:47,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:57:47,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:57:47,446.446 INFO    ] No existing commands found in stream
[2026-06-05 19:57:52,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:57:52,485.485 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 19:57:55,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:57:55,783.783 INFO    ] Checking for system updates...
[2026-06-05 19:57:55,824.824 INFO    ] 200
[2026-06-05 19:57:55,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:55,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:57:55,890.890 INFO    ] No update needed
[2026-06-05 19:57:55,892.892 INFO    ] Checking for camera pi updates...
[2026-06-05 19:57:55,930.930 INFO    ] 200
[2026-06-05 19:57:55,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:57:55,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:57:56,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:57:56,025.025 INFO    ] No camera update needed
[2026-06-05 19:57:56,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:57:56,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:57:56,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:57:56,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:57:58,082.082 INFO    ] ================================================
[2026-06-05 19:57:58,098.098 INFO    ] Launching Daemon at Fri Jun  5 19:57:58 IST 2026
[2026-06-05 19:57:58,109.109 INFO    ] ================================================
[2026-06-05 19:57:58,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:57:58
[2026-06-05 19:57:59,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:57:59,752.752 INFO    ] Initializing speech engine...
[2026-06-05 19:57:59,760.760 INFO    ] 2026-06-05 19:57:59
[2026-06-05 19:58:00,050.050 INFO    ] 2026-06-05 19:58:00
[2026-06-05 19:58:00,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:58:00,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:58:00,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:58:00,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:58:00,592.592 INFO    ] time= 05/06/2026 19:58:00
[2026-06-05 19:58:00,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:58:00,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:58:00,764.764 INFO    ] No existing commands found in stream
[2026-06-05 19:58:05,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:58:05,800.800 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 19:58:08,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:58:08,977.977 INFO    ] Checking for system updates...
[2026-06-05 19:58:09,019.019 INFO    ] 200
[2026-06-05 19:58:09,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:58:09,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:58:09,083.083 INFO    ] No update needed
[2026-06-05 19:58:09,086.086 INFO    ] Checking for camera pi updates...
[2026-06-05 19:58:09,122.122 INFO    ] 200
[2026-06-05 19:58:09,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:58:09,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:58:09,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:58:09,245.245 INFO    ] No camera update needed
[2026-06-05 19:58:09,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:58:09,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:58:09,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:58:09,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:58:11,307.307 INFO    ] ================================================
[2026-06-05 19:58:11,324.324 INFO    ] Launching Daemon at Fri Jun  5 19:58:11 IST 2026
[2026-06-05 19:58:11,335.335 INFO    ] ================================================
[2026-06-05 19:58:11,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:58:11
[2026-06-05 19:58:12,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:58:12,770.770 INFO    ] Initializing speech engine...
[2026-06-05 19:58:12,779.779 INFO    ] 2026-06-05 19:58:12
[2026-06-05 19:58:13,028.028 INFO    ] 2026-06-05 19:58:13
[2026-06-05 19:58:13,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:58:13,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:58:13,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:58:13,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:58:13,500.500 INFO    ] time= 05/06/2026 19:58:13
[2026-06-05 19:58:13,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:58:13,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:58:14,027.027 INFO    ] No existing commands found in stream
[2026-06-05 19:58:19,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:58:19,058.058 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 19:58:23,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:58:23,833.833 INFO    ] Checking for system updates...
[2026-06-05 19:58:23,869.869 INFO    ] 200
[2026-06-05 19:58:23,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:58:23,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:58:23,929.929 INFO    ] No update needed
[2026-06-05 19:58:23,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 19:58:23,965.965 INFO    ] 200
[2026-06-05 19:58:23,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:58:24,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:58:24,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:58:24,057.057 INFO    ] No camera update needed
[2026-06-05 19:58:24,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:58:24,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:58:24,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:58:24,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:58:26,112.112 INFO    ] ================================================
[2026-06-05 19:58:26,128.128 INFO    ] Launching Daemon at Fri Jun  5 19:58:26 IST 2026
[2026-06-05 19:58:26,140.140 INFO    ] ================================================
[2026-06-05 19:58:26,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:58:26
[2026-06-05 19:58:27,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:58:27,598.598 INFO    ] Initializing speech engine...
[2026-06-05 19:58:27,608.608 INFO    ] 2026-06-05 19:58:27
[2026-06-05 19:58:27,854.854 INFO    ] 2026-06-05 19:58:27
[2026-06-05 19:58:27,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:58:28,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:58:28,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:58:28,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:58:28,335.335 INFO    ] time= 05/06/2026 19:58:28
[2026-06-05 19:58:28,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:58:28,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:58:28,560.560 INFO    ] No existing commands found in stream
[2026-06-05 19:58:33,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:58:33,578.578 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 19:58:34,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:58:34,878.878 INFO    ] Checking for system updates...
[2026-06-05 19:58:34,918.918 INFO    ] 200
[2026-06-05 19:58:34,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:58:34,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:58:34,983.983 INFO    ] No update needed
[2026-06-05 19:58:34,985.985 INFO    ] Checking for camera pi updates...
[2026-06-05 19:58:35,023.023 INFO    ] 200
[2026-06-05 19:58:35,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:58:35,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:58:35,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:58:35,102.102 INFO    ] No camera update needed
[2026-06-05 19:58:35,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:58:35,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:58:35,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:58:35,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:58:37,159.159 INFO    ] ================================================
[2026-06-05 19:58:37,177.177 INFO    ] Launching Daemon at Fri Jun  5 19:58:37 IST 2026
[2026-06-05 19:58:37,187.187 INFO    ] ================================================
[2026-06-05 19:58:37,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:58:37
[2026-06-05 19:58:38,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:58:38,616.616 INFO    ] Initializing speech engine...
[2026-06-05 19:58:38,623.623 INFO    ] 2026-06-05 19:58:38
[2026-06-05 19:58:38,917.917 INFO    ] 2026-06-05 19:58:38
[2026-06-05 19:58:38,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:58:39,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:58:39,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:58:39,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:58:39,341.341 INFO    ] time= 05/06/2026 19:58:39
[2026-06-05 19:58:39,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:58:39,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:58:39,521.521 INFO    ] No existing commands found in stream
[2026-06-05 19:58:44,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:58:44,549.549 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 19:58:47,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:58:47,512.512 INFO    ] Checking for system updates...
[2026-06-05 19:58:47,552.552 INFO    ] 200
[2026-06-05 19:58:47,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:58:47,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:58:47,617.617 INFO    ] No update needed
[2026-06-05 19:58:47,619.619 INFO    ] Checking for camera pi updates...
[2026-06-05 19:58:47,658.658 INFO    ] 200
[2026-06-05 19:58:47,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:58:47,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:58:47,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:58:47,748.748 INFO    ] No camera update needed
[2026-06-05 19:58:47,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:58:47,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:58:47,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:58:47,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:58:49,806.806 INFO    ] ================================================
[2026-06-05 19:58:49,821.821 INFO    ] Launching Daemon at Fri Jun  5 19:58:49 IST 2026
[2026-06-05 19:58:49,831.831 INFO    ] ================================================
[2026-06-05 19:58:50,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:58:50
[2026-06-05 19:58:50,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:58:51,240.240 INFO    ] Initializing speech engine...
[2026-06-05 19:58:51,261.261 INFO    ] 2026-06-05 19:58:51
[2026-06-05 19:58:51,529.529 INFO    ] 2026-06-05 19:58:51
[2026-06-05 19:58:51,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:58:51,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:58:51,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:58:51,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:58:52,008.008 INFO    ] time= 05/06/2026 19:58:51
[2026-06-05 19:58:52,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:58:52,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:58:52,244.244 INFO    ] No existing commands found in stream
[2026-06-05 19:58:57,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:58:57,263.263 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 19:59:00,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 19:59:00,244.244 INFO    ] Checking for system updates...
[2026-06-05 19:59:00,281.281 INFO    ] 200
[2026-06-05 19:59:00,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:00,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:59:00,340.340 INFO    ] No update needed
[2026-06-05 19:59:00,342.342 INFO    ] Checking for camera pi updates...
[2026-06-05 19:59:00,379.379 INFO    ] 200
[2026-06-05 19:59:00,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:00,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:59:00,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:59:00,570.570 INFO    ] No camera update needed
[2026-06-05 19:59:00,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:59:00,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:59:00,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:59:00,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:59:02,638.638 INFO    ] ================================================
[2026-06-05 19:59:02,662.662 INFO    ] Launching Daemon at Fri Jun  5 19:59:02 IST 2026
[2026-06-05 19:59:02,675.675 INFO    ] ================================================
[2026-06-05 19:59:03,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:59:03
[2026-06-05 19:59:03,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:59:04,088.088 INFO    ] Initializing speech engine...
[2026-06-05 19:59:04,100.100 INFO    ] 2026-06-05 19:59:04
[2026-06-05 19:59:04,365.365 INFO    ] 2026-06-05 19:59:04
[2026-06-05 19:59:04,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:59:04,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:59:04,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:59:04,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:59:04,859.859 INFO    ] time= 05/06/2026 19:59:04
[2026-06-05 19:59:04,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:59:04,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:59:05,077.077 INFO    ] No existing commands found in stream
[2026-06-05 19:59:10,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:59:10,110.110 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 19:59:13,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 19:59:13,672.672 INFO    ] Checking for system updates...
[2026-06-05 19:59:13,711.711 INFO    ] 200
[2026-06-05 19:59:13,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:13,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:59:13,774.774 INFO    ] No update needed
[2026-06-05 19:59:13,776.776 INFO    ] Checking for camera pi updates...
[2026-06-05 19:59:13,812.812 INFO    ] 200
[2026-06-05 19:59:13,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:13,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:59:13,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:59:13,898.898 INFO    ] No camera update needed
[2026-06-05 19:59:13,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:59:13,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:59:13,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:59:13,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:59:15,952.952 INFO    ] ================================================
[2026-06-05 19:59:15,967.967 INFO    ] Launching Daemon at Fri Jun  5 19:59:15 IST 2026
[2026-06-05 19:59:15,978.978 INFO    ] ================================================
[2026-06-05 19:59:16,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:59:16
[2026-06-05 19:59:17,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:59:17,382.382 INFO    ] Initializing speech engine...
[2026-06-05 19:59:17,391.391 INFO    ] 2026-06-05 19:59:17
[2026-06-05 19:59:17,680.680 INFO    ] 2026-06-05 19:59:17
[2026-06-05 19:59:17,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:59:17,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:59:18,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:59:18,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:59:18,209.209 INFO    ] time= 05/06/2026 19:59:18
[2026-06-05 19:59:18,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:59:18,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:59:18,434.434 INFO    ] No existing commands found in stream
[2026-06-05 19:59:23,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:59:23,454.454 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 19:59:27,264.264 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 19:59:27,267.267 INFO    ] Checking for system updates...
[2026-06-05 19:59:27,308.308 INFO    ] 200
[2026-06-05 19:59:27,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:27,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:59:27,366.366 INFO    ] No update needed
[2026-06-05 19:59:27,368.368 INFO    ] Checking for camera pi updates...
[2026-06-05 19:59:27,402.402 INFO    ] 200
[2026-06-05 19:59:27,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:27,446.446 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:59:27,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 19:59:27,494.494 INFO    ] No camera update needed
[2026-06-05 19:59:27,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:59:27,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:59:27,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:59:27,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:59:29,550.550 INFO    ] ================================================
[2026-06-05 19:59:29,565.565 INFO    ] Launching Daemon at Fri Jun  5 19:59:29 IST 2026
[2026-06-05 19:59:29,576.576 INFO    ] ================================================
[2026-06-05 19:59:30,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:59:30
[2026-06-05 19:59:30,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:59:31,039.039 INFO    ] Initializing speech engine...
[2026-06-05 19:59:31,048.048 INFO    ] 2026-06-05 19:59:31
[2026-06-05 19:59:31,315.315 INFO    ] 2026-06-05 19:59:31
[2026-06-05 19:59:31,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:59:31,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:59:31,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:59:31,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:59:31,714.714 INFO    ] time= 05/06/2026 19:59:31
[2026-06-05 19:59:31,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:59:31,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:59:31,847.847 INFO    ] No existing commands found in stream
[2026-06-05 19:59:36,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:59:36,861.861 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 19:59:38,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:59:38,583.583 INFO    ] Checking for system updates...
[2026-06-05 19:59:38,620.620 INFO    ] 200
[2026-06-05 19:59:38,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:38,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:59:38,682.682 INFO    ] No update needed
[2026-06-05 19:59:38,685.685 INFO    ] Checking for camera pi updates...
[2026-06-05 19:59:38,718.718 INFO    ] 200
[2026-06-05 19:59:38,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:38,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:59:38,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:59:38,813.813 INFO    ] No camera update needed
[2026-06-05 19:59:38,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:59:38,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:59:38,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:59:38,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:59:40,870.870 INFO    ] ================================================
[2026-06-05 19:59:40,886.886 INFO    ] Launching Daemon at Fri Jun  5 19:59:40 IST 2026
[2026-06-05 19:59:40,897.897 INFO    ] ================================================
[2026-06-05 19:59:41,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:59:41
[2026-06-05 19:59:42,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:59:42,350.350 INFO    ] Initializing speech engine...
[2026-06-05 19:59:42,359.359 INFO    ] 2026-06-05 19:59:42
[2026-06-05 19:59:42,654.654 INFO    ] 2026-06-05 19:59:42
[2026-06-05 19:59:42,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:59:42,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:59:42,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:59:43,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:59:43,149.149 INFO    ] time= 05/06/2026 19:59:43
[2026-06-05 19:59:43,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:59:43,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:59:43,342.342 INFO    ] No existing commands found in stream
[2026-06-05 19:59:48,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:59:48,358.358 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 19:59:49,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 19:59:49,572.572 INFO    ] Checking for system updates...
[2026-06-05 19:59:49,608.608 INFO    ] 200
[2026-06-05 19:59:49,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:49,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:59:49,671.671 INFO    ] No update needed
[2026-06-05 19:59:49,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 19:59:49,710.710 INFO    ] 200
[2026-06-05 19:59:49,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:49,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:59:49,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:59:49,797.797 INFO    ] No camera update needed
[2026-06-05 19:59:49,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:59:49,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:59:49,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:59:49,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 19:59:51,852.852 INFO    ] ================================================
[2026-06-05 19:59:51,867.867 INFO    ] Launching Daemon at Fri Jun  5 19:59:51 IST 2026
[2026-06-05 19:59:51,878.878 INFO    ] ================================================
[2026-06-05 19:59:52,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 19:59:52
[2026-06-05 19:59:53,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 19:59:53,286.286 INFO    ] Initializing speech engine...
[2026-06-05 19:59:53,295.295 INFO    ] 2026-06-05 19:59:53
[2026-06-05 19:59:53,583.583 INFO    ] 2026-06-05 19:59:53
[2026-06-05 19:59:53,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 19:59:53,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 19:59:53,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 19:59:53,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 19:59:53,953.953 INFO    ] time= 05/06/2026 19:59:53
[2026-06-05 19:59:53,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 19:59:53,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-05 19:59:54,077.077 INFO    ] No existing commands found in stream
[2026-06-05 19:59:59,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 19:59:59,110.110 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-05 19:59:59,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 19:59:59,553.553 INFO    ] Checking for system updates...
[2026-06-05 19:59:59,592.592 INFO    ] 200
[2026-06-05 19:59:59,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:59,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:59:59,651.651 INFO    ] No update needed
[2026-06-05 19:59:59,654.654 INFO    ] Checking for camera pi updates...
[2026-06-05 19:59:59,687.687 INFO    ] 200
[2026-06-05 19:59:59,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 19:59:59,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 19:59:59,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 19:59:59,773.773 INFO    ] No camera update needed
[2026-06-05 19:59:59,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 19:59:59,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 19:59:59,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 19:59:59,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:00:02,907.907 INFO    ] ================================================
[2026-06-05 20:00:02,138.138 INFO    ] Launching Daemon at Fri Jun  5 20:00:02 IST 2026
[2026-06-05 20:00:02,248.248 INFO    ] ================================================
[2026-06-05 20:00:04,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:00:04
[2026-06-05 20:00:06,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:00:06,420.420 INFO    ] Initializing speech engine...
[2026-06-05 20:00:06,428.428 INFO    ] 2026-06-05 20:00:06
[2026-06-05 20:00:06,709.709 INFO    ] 2026-06-05 20:00:06
[2026-06-05 20:00:06,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:00:06,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:00:06,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:00:07,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:00:07,094.094 INFO    ] time= 05/06/2026 20:00:07
[2026-06-05 20:00:07,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:00:07,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:00:07,288.288 INFO    ] No existing commands found in stream
[2026-06-05 20:00:12,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:00:12,306.306 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 20:00:13,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:00:13,036.036 INFO    ] Checking for system updates...
[2026-06-05 20:00:13,078.078 INFO    ] 200
[2026-06-05 20:00:13,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:00:13,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:00:13,148.148 INFO    ] No update needed
[2026-06-05 20:00:13,150.150 INFO    ] Checking for camera pi updates...
[2026-06-05 20:00:13,187.187 INFO    ] 200
[2026-06-05 20:00:13,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:00:13,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:00:13,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:00:13,287.287 INFO    ] No camera update needed
[2026-06-05 20:00:13,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:00:13,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:00:13,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:00:13,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:00:15,348.348 INFO    ] ================================================
[2026-06-05 20:00:15,364.364 INFO    ] Launching Daemon at Fri Jun  5 20:00:15 IST 2026
[2026-06-05 20:00:15,376.376 INFO    ] ================================================
[2026-06-05 20:00:16,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:00:16
[2026-06-05 20:00:16,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:00:17,045.045 INFO    ] Initializing speech engine...
[2026-06-05 20:00:17,059.059 INFO    ] 2026-06-05 20:00:17
[2026-06-05 20:00:17,348.348 INFO    ] 2026-06-05 20:00:17
[2026-06-05 20:00:17,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:00:17,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:00:17,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:00:17,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:00:17,825.825 INFO    ] time= 05/06/2026 20:00:17
[2026-06-05 20:00:17,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:00:17,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:00:18,013.013 INFO    ] No existing commands found in stream
[2026-06-05 20:00:23,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:00:23,081.081 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 20:00:28,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:00:28,504.504 INFO    ] Checking for system updates...
[2026-06-05 20:00:28,541.541 INFO    ] 200
[2026-06-05 20:00:28,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:00:28,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:00:28,601.601 INFO    ] No update needed
[2026-06-05 20:00:28,604.604 INFO    ] Checking for camera pi updates...
[2026-06-05 20:00:28,646.646 INFO    ] 200
[2026-06-05 20:00:28,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:00:28,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:00:28,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:00:28,733.733 INFO    ] No camera update needed
[2026-06-05 20:00:28,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:00:28,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:00:28,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:00:28,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:00:30,790.790 INFO    ] ================================================
[2026-06-05 20:00:30,804.804 INFO    ] Launching Daemon at Fri Jun  5 20:00:30 IST 2026
[2026-06-05 20:00:30,815.815 INFO    ] ================================================
[2026-06-05 20:00:31,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:00:31
[2026-06-05 20:00:32,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:00:32,451.451 INFO    ] Initializing speech engine...
[2026-06-05 20:00:32,459.459 INFO    ] 2026-06-05 20:00:32
[2026-06-05 20:00:32,778.778 INFO    ] 2026-06-05 20:00:32
[2026-06-05 20:00:32,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:00:33,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:00:33,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:00:33,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:00:33,259.259 INFO    ] time= 05/06/2026 20:00:33
[2026-06-05 20:00:33,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:00:33,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:00:33,458.458 INFO    ] No existing commands found in stream
[2026-06-05 20:00:38,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:00:38,490.490 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 20:00:38,966.966 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:00:38,969.969 INFO    ] Checking for system updates...
[2026-06-05 20:00:39,006.006 INFO    ] 200
[2026-06-05 20:00:39,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:00:39,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:00:39,066.066 INFO    ] No update needed
[2026-06-05 20:00:39,068.068 INFO    ] Checking for camera pi updates...
[2026-06-05 20:00:39,107.107 INFO    ] 200
[2026-06-05 20:00:39,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:00:39,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:00:39,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:00:39,199.199 INFO    ] No camera update needed
[2026-06-05 20:00:39,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:00:39,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:00:39,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:00:39,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:00:41,253.253 INFO    ] ================================================
[2026-06-05 20:00:41,269.269 INFO    ] Launching Daemon at Fri Jun  5 20:00:41 IST 2026
[2026-06-05 20:00:41,281.281 INFO    ] ================================================
[2026-06-05 20:00:41,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:00:41
[2026-06-05 20:00:42,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:00:42,859.859 INFO    ] Initializing speech engine...
[2026-06-05 20:00:42,871.871 INFO    ] 2026-06-05 20:00:42
[2026-06-05 20:00:43,160.160 INFO    ] 2026-06-05 20:00:43
[2026-06-05 20:00:43,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:00:43,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:00:43,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:00:43,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:00:43,718.718 INFO    ] time= 05/06/2026 20:00:43
[2026-06-05 20:00:43,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:00:43,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:00:43,869.869 INFO    ] No existing commands found in stream
[2026-06-05 20:00:48,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:00:48,896.896 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 20:00:50,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:00:50,997.997 INFO    ] Checking for system updates...
[2026-06-05 20:00:51,038.038 INFO    ] 200
[2026-06-05 20:00:51,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:00:51,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:00:51,097.097 INFO    ] No update needed
[2026-06-05 20:00:51,100.100 INFO    ] Checking for camera pi updates...
[2026-06-05 20:00:51,140.140 INFO    ] 200
[2026-06-05 20:00:51,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:00:51,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:00:51,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:00:51,229.229 INFO    ] No camera update needed
[2026-06-05 20:00:51,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:00:51,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:00:51,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:00:51,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:00:53,288.288 INFO    ] ================================================
[2026-06-05 20:00:53,304.304 INFO    ] Launching Daemon at Fri Jun  5 20:00:53 IST 2026
[2026-06-05 20:00:53,315.315 INFO    ] ================================================
[2026-06-05 20:00:53,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:00:53
[2026-06-05 20:00:54,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:00:54,987.987 INFO    ] Initializing speech engine...
[2026-06-05 20:00:55,001.001 INFO    ] 2026-06-05 20:00:54
[2026-06-05 20:00:55,294.294 INFO    ] 2026-06-05 20:00:55
[2026-06-05 20:00:55,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:00:55,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:00:55,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:00:58,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:00:58,818.818 INFO    ] time= 05/06/2026 20:00:58
[2026-06-05 20:00:58,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:00:58,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:00:58,882.882 INFO    ] No existing commands found in stream
[2026-06-05 20:01:03,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:01:03,895.895 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 20:01:05,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:01:05,932.932 INFO    ] Checking for system updates...
[2026-06-05 20:01:05,974.974 INFO    ] 200
[2026-06-05 20:01:05,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:06,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:01:06,042.042 INFO    ] No update needed
[2026-06-05 20:01:06,045.045 INFO    ] Checking for camera pi updates...
[2026-06-05 20:01:06,080.080 INFO    ] 200
[2026-06-05 20:01:06,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:06,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:01:06,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:01:06,260.260 INFO    ] No camera update needed
[2026-06-05 20:01:06,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:01:06,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:01:06,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:01:06,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:01:08,329.329 INFO    ] ================================================
[2026-06-05 20:01:08,346.346 INFO    ] Launching Daemon at Fri Jun  5 20:01:08 IST 2026
[2026-06-05 20:01:08,357.357 INFO    ] ================================================
[2026-06-05 20:01:08,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:01:08
[2026-06-05 20:01:09,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:01:09,821.821 INFO    ] Initializing speech engine...
[2026-06-05 20:01:09,829.829 INFO    ] 2026-06-05 20:01:09
[2026-06-05 20:01:10,090.090 INFO    ] 2026-06-05 20:01:10
[2026-06-05 20:01:10,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:01:10,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:01:10,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:01:10,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:01:10,588.588 INFO    ] time= 05/06/2026 20:01:10
[2026-06-05 20:01:10,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:01:10,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:01:10,812.812 INFO    ] No existing commands found in stream
[2026-06-05 20:01:15,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:01:15,829.829 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 20:01:17,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:01:17,188.188 INFO    ] Checking for system updates...
[2026-06-05 20:01:17,228.228 INFO    ] 200
[2026-06-05 20:01:17,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:17,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:01:17,293.293 INFO    ] No update needed
[2026-06-05 20:01:17,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 20:01:17,333.333 INFO    ] 200
[2026-06-05 20:01:17,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:17,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:01:17,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:01:17,433.433 INFO    ] No camera update needed
[2026-06-05 20:01:17,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:01:17,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:01:17,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:01:17,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:01:19,490.490 INFO    ] ================================================
[2026-06-05 20:01:19,506.506 INFO    ] Launching Daemon at Fri Jun  5 20:01:19 IST 2026
[2026-06-05 20:01:19,517.517 INFO    ] ================================================
[2026-06-05 20:01:20,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:01:20
[2026-06-05 20:01:20,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:01:21,148.148 INFO    ] Initializing speech engine...
[2026-06-05 20:01:21,160.160 INFO    ] 2026-06-05 20:01:21
[2026-06-05 20:01:21,475.475 INFO    ] 2026-06-05 20:01:21
[2026-06-05 20:01:21,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:01:21,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:01:21,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:01:21,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:01:21,999.999 INFO    ] time= 05/06/2026 20:01:21
[2026-06-05 20:01:22,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:01:22,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:01:22,161.161 INFO    ] No existing commands found in stream
[2026-06-05 20:01:27,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:01:27,194.194 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 20:01:30,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:01:30,194.194 INFO    ] Checking for system updates...
[2026-06-05 20:01:30,231.231 INFO    ] 200
[2026-06-05 20:01:30,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:30,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:01:30,308.308 INFO    ] No update needed
[2026-06-05 20:01:30,311.311 INFO    ] Checking for camera pi updates...
[2026-06-05 20:01:30,349.349 INFO    ] 200
[2026-06-05 20:01:30,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:30,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:01:30,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:01:30,448.448 INFO    ] No camera update needed
[2026-06-05 20:01:30,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:01:30,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:01:30,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:01:30,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:01:32,507.507 INFO    ] ================================================
[2026-06-05 20:01:32,523.523 INFO    ] Launching Daemon at Fri Jun  5 20:01:32 IST 2026
[2026-06-05 20:01:32,536.536 INFO    ] ================================================
[2026-06-05 20:01:33,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:01:33
[2026-06-05 20:01:33,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:01:34,153.153 INFO    ] Initializing speech engine...
[2026-06-05 20:01:34,159.159 INFO    ] 2026-06-05 20:01:34
[2026-06-05 20:01:34,468.468 INFO    ] 2026-06-05 20:01:34
[2026-06-05 20:01:34,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:01:34,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:01:34,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:01:34,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:01:34,992.992 INFO    ] time= 05/06/2026 20:01:34
[2026-06-05 20:01:35,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:01:35,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:01:35,152.152 INFO    ] No existing commands found in stream
[2026-06-05 20:01:40,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:01:40,192.192 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 20:01:42,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:01:42,906.906 INFO    ] Checking for system updates...
[2026-06-05 20:01:42,943.943 INFO    ] 200
[2026-06-05 20:01:42,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:43,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:01:43,003.003 INFO    ] No update needed
[2026-06-05 20:01:43,006.006 INFO    ] Checking for camera pi updates...
[2026-06-05 20:01:43,046.046 INFO    ] 200
[2026-06-05 20:01:43,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:43,089.089 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:01:43,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:01:43,137.137 INFO    ] No camera update needed
[2026-06-05 20:01:43,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:01:43,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:01:43,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:01:43,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:01:45,196.196 INFO    ] ================================================
[2026-06-05 20:01:45,211.211 INFO    ] Launching Daemon at Fri Jun  5 20:01:45 IST 2026
[2026-06-05 20:01:45,222.222 INFO    ] ================================================
[2026-06-05 20:01:45,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:01:45
[2026-06-05 20:01:46,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:01:46,921.921 INFO    ] Initializing speech engine...
[2026-06-05 20:01:46,931.931 INFO    ] 2026-06-05 20:01:46
[2026-06-05 20:01:47,242.242 INFO    ] 2026-06-05 20:01:47
[2026-06-05 20:01:47,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:01:47,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:01:47,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:01:47,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:01:47,770.770 INFO    ] time= 05/06/2026 20:01:47
[2026-06-05 20:01:47,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:01:47,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:01:47,916.916 INFO    ] No existing commands found in stream
[2026-06-05 20:01:52,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:01:52,944.944 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-05 20:01:55,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:01:55,520.520 INFO    ] Checking for system updates...
[2026-06-05 20:01:55,564.564 INFO    ] 200
[2026-06-05 20:01:55,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:55,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:01:55,637.637 INFO    ] No update needed
[2026-06-05 20:01:55,640.640 INFO    ] Checking for camera pi updates...
[2026-06-05 20:01:55,680.680 INFO    ] 200
[2026-06-05 20:01:55,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:01:55,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:01:55,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:01:55,774.774 INFO    ] No camera update needed
[2026-06-05 20:01:55,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:01:55,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:01:55,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:01:55,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:01:57,830.830 INFO    ] ================================================
[2026-06-05 20:01:57,845.845 INFO    ] Launching Daemon at Fri Jun  5 20:01:57 IST 2026
[2026-06-05 20:01:57,857.857 INFO    ] ================================================
[2026-06-05 20:01:58,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:01:58
[2026-06-05 20:01:59,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:01:59,384.384 INFO    ] Initializing speech engine...
[2026-06-05 20:01:59,389.389 INFO    ] 2026-06-05 20:01:59
[2026-06-05 20:01:59,652.652 INFO    ] 2026-06-05 20:01:59
[2026-06-05 20:01:59,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:02:00,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:02:00,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:02:00,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:02:00,989.989 INFO    ] time= 05/06/2026 20:02:00
[2026-06-05 20:02:00,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:02:00,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:02:01,060.060 INFO    ] No existing commands found in stream
[2026-06-05 20:02:06,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:02:06,074.074 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 20:02:06,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:02:06,704.704 INFO    ] Checking for system updates...
[2026-06-05 20:02:06,752.752 INFO    ] 200
[2026-06-05 20:02:06,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:06,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:02:06,814.814 INFO    ] No update needed
[2026-06-05 20:02:06,817.817 INFO    ] Checking for camera pi updates...
[2026-06-05 20:02:06,856.856 INFO    ] 200
[2026-06-05 20:02:06,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:06,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:02:06,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:02:06,939.939 INFO    ] No camera update needed
[2026-06-05 20:02:06,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:02:06,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:02:06,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:02:06,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:02:09,998.998 INFO    ] ================================================
[2026-06-05 20:02:09,013.013 INFO    ] Launching Daemon at Fri Jun  5 20:02:09 IST 2026
[2026-06-05 20:02:09,024.024 INFO    ] ================================================
[2026-06-05 20:02:09,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:02:09
[2026-06-05 20:02:10,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:02:10,548.548 INFO    ] Initializing speech engine...
[2026-06-05 20:02:10,557.557 INFO    ] 2026-06-05 20:02:10
[2026-06-05 20:02:10,804.804 INFO    ] 2026-06-05 20:02:10
[2026-06-05 20:02:10,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:02:11,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:02:11,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:02:11,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:02:11,182.182 INFO    ] time= 05/06/2026 20:02:11
[2026-06-05 20:02:11,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:02:11,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:02:11,383.383 INFO    ] No existing commands found in stream
[2026-06-05 20:02:16,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:02:16,396.396 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 20:02:19,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:02:19,889.889 INFO    ] Checking for system updates...
[2026-06-05 20:02:19,929.929 INFO    ] 200
[2026-06-05 20:02:19,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:19,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:02:19,991.991 INFO    ] No update needed
[2026-06-05 20:02:19,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 20:02:20,032.032 INFO    ] 200
[2026-06-05 20:02:20,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:20,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:02:20,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:02:20,133.133 INFO    ] No camera update needed
[2026-06-05 20:02:20,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:02:20,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:02:20,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:02:20,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:02:22,192.192 INFO    ] ================================================
[2026-06-05 20:02:22,208.208 INFO    ] Launching Daemon at Fri Jun  5 20:02:22 IST 2026
[2026-06-05 20:02:22,219.219 INFO    ] ================================================
[2026-06-05 20:02:22,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:02:22
[2026-06-05 20:02:23,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:02:23,671.671 INFO    ] Initializing speech engine...
[2026-06-05 20:02:23,679.679 INFO    ] 2026-06-05 20:02:23
[2026-06-05 20:02:23,938.938 INFO    ] 2026-06-05 20:02:23
[2026-06-05 20:02:23,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:02:24,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:02:24,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:02:24,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:02:24,409.409 INFO    ] time= 05/06/2026 20:02:24
[2026-06-05 20:02:24,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:02:24,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:02:24,636.636 INFO    ] No existing commands found in stream
[2026-06-05 20:02:29,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:02:29,659.659 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 20:02:31,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:02:31,519.519 INFO    ] Checking for system updates...
[2026-06-05 20:02:31,559.559 INFO    ] 200
[2026-06-05 20:02:31,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:31,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:02:31,623.623 INFO    ] No update needed
[2026-06-05 20:02:31,626.626 INFO    ] Checking for camera pi updates...
[2026-06-05 20:02:31,663.663 INFO    ] 200
[2026-06-05 20:02:31,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:31,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:02:31,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:02:31,741.741 INFO    ] No camera update needed
[2026-06-05 20:02:31,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:02:31,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:02:31,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:02:31,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:02:33,798.798 INFO    ] ================================================
[2026-06-05 20:02:33,813.813 INFO    ] Launching Daemon at Fri Jun  5 20:02:33 IST 2026
[2026-06-05 20:02:33,823.823 INFO    ] ================================================
[2026-06-05 20:02:34,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:02:34
[2026-06-05 20:02:35,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:02:35,279.279 INFO    ] Initializing speech engine...
[2026-06-05 20:02:35,284.284 INFO    ] 2026-06-05 20:02:35
[2026-06-05 20:02:35,546.546 INFO    ] 2026-06-05 20:02:35
[2026-06-05 20:02:35,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:02:35,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:02:35,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:02:35,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:02:36,009.009 INFO    ] time= 05/06/2026 20:02:35
[2026-06-05 20:02:36,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:02:36,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:02:36,234.234 INFO    ] No existing commands found in stream
[2026-06-05 20:02:41,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:02:41,258.258 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 20:02:43,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:02:43,129.129 INFO    ] Checking for system updates...
[2026-06-05 20:02:43,169.169 INFO    ] 200
[2026-06-05 20:02:43,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:43,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:02:43,228.228 INFO    ] No update needed
[2026-06-05 20:02:43,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 20:02:43,264.264 INFO    ] 200
[2026-06-05 20:02:43,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:43,308.308 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:02:43,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:02:43,359.359 INFO    ] No camera update needed
[2026-06-05 20:02:43,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:02:43,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:02:43,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:02:43,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:02:45,416.416 INFO    ] ================================================
[2026-06-05 20:02:45,432.432 INFO    ] Launching Daemon at Fri Jun  5 20:02:45 IST 2026
[2026-06-05 20:02:45,443.443 INFO    ] ================================================
[2026-06-05 20:02:46,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:02:46
[2026-06-05 20:02:46,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:02:46,846.846 INFO    ] Initializing speech engine...
[2026-06-05 20:02:46,861.861 INFO    ] 2026-06-05 20:02:46
[2026-06-05 20:02:47,129.129 INFO    ] 2026-06-05 20:02:47
[2026-06-05 20:02:47,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:02:47,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:02:47,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:02:47,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:02:47,612.612 INFO    ] time= 05/06/2026 20:02:47
[2026-06-05 20:02:47,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:02:47,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:02:47,862.862 INFO    ] No existing commands found in stream
[2026-06-05 20:02:52,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:02:52,877.877 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 20:02:54,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:02:54,926.926 INFO    ] Checking for system updates...
[2026-06-05 20:02:54,962.962 INFO    ] 200
[2026-06-05 20:02:54,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:55,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:02:55,033.033 INFO    ] No update needed
[2026-06-05 20:02:55,035.035 INFO    ] Checking for camera pi updates...
[2026-06-05 20:02:55,070.070 INFO    ] 200
[2026-06-05 20:02:55,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:02:55,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:02:55,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:02:55,160.160 INFO    ] No camera update needed
[2026-06-05 20:02:55,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:02:55,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:02:55,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:02:55,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:02:57,215.215 INFO    ] ================================================
[2026-06-05 20:02:57,231.231 INFO    ] Launching Daemon at Fri Jun  5 20:02:57 IST 2026
[2026-06-05 20:02:57,243.243 INFO    ] ================================================
[2026-06-05 20:02:57,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:02:57
[2026-06-05 20:02:58,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:02:58,716.716 INFO    ] Initializing speech engine...
[2026-06-05 20:02:58,725.725 INFO    ] 2026-06-05 20:02:58
[2026-06-05 20:02:58,984.984 INFO    ] 2026-06-05 20:02:58
[2026-06-05 20:02:59,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:03:01,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:03:01,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:03:02,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:03:02,005.005 INFO    ] time= 05/06/2026 20:03:02
[2026-06-05 20:03:02,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:03:02,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:03:02,076.076 INFO    ] No existing commands found in stream
[2026-06-05 20:03:07,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:03:07,089.089 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 20:03:10,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:03:10,373.373 INFO    ] Checking for system updates...
[2026-06-05 20:03:10,414.414 INFO    ] 200
[2026-06-05 20:03:10,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:10,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:03:10,479.479 INFO    ] No update needed
[2026-06-05 20:03:10,482.482 INFO    ] Checking for camera pi updates...
[2026-06-05 20:03:10,516.516 INFO    ] 200
[2026-06-05 20:03:10,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:10,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:03:10,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:03:10,711.711 INFO    ] No camera update needed
[2026-06-05 20:03:10,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:03:10,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:03:10,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:03:10,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:03:12,770.770 INFO    ] ================================================
[2026-06-05 20:03:12,786.786 INFO    ] Launching Daemon at Fri Jun  5 20:03:12 IST 2026
[2026-06-05 20:03:12,798.798 INFO    ] ================================================
[2026-06-05 20:03:13,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:03:13
[2026-06-05 20:03:14,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:03:14,458.458 INFO    ] Initializing speech engine...
[2026-06-05 20:03:14,472.472 INFO    ] 2026-06-05 20:03:14
[2026-06-05 20:03:14,760.760 INFO    ] 2026-06-05 20:03:14
[2026-06-05 20:03:14,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:03:15,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:03:15,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:03:15,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:03:15,312.312 INFO    ] time= 05/06/2026 20:03:15
[2026-06-05 20:03:15,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:03:15,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:03:15,456.456 INFO    ] No existing commands found in stream
[2026-06-05 20:03:20,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:03:20,485.485 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 20:03:21,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:03:21,532.532 INFO    ] Checking for system updates...
[2026-06-05 20:03:21,570.570 INFO    ] 200
[2026-06-05 20:03:21,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:21,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:03:21,636.636 INFO    ] No update needed
[2026-06-05 20:03:21,639.639 INFO    ] Checking for camera pi updates...
[2026-06-05 20:03:21,673.673 INFO    ] 200
[2026-06-05 20:03:21,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:21,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:03:21,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:03:21,768.768 INFO    ] No camera update needed
[2026-06-05 20:03:21,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:03:21,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:03:21,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:03:21,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:03:23,827.827 INFO    ] ================================================
[2026-06-05 20:03:23,842.842 INFO    ] Launching Daemon at Fri Jun  5 20:03:23 IST 2026
[2026-06-05 20:03:23,853.853 INFO    ] ================================================
[2026-06-05 20:03:24,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:03:24
[2026-06-05 20:03:25,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:03:25,333.333 INFO    ] Initializing speech engine...
[2026-06-05 20:03:25,342.342 INFO    ] 2026-06-05 20:03:25
[2026-06-05 20:03:25,603.603 INFO    ] 2026-06-05 20:03:25
[2026-06-05 20:03:25,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:03:25,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:03:25,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:03:26,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:03:26,081.081 INFO    ] time= 05/06/2026 20:03:26
[2026-06-05 20:03:26,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:03:26,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:03:26,288.288 INFO    ] No existing commands found in stream
[2026-06-05 20:03:31,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:03:31,319.319 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 20:03:32,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:03:32,996.996 INFO    ] Checking for system updates...
[2026-06-05 20:03:33,055.055 INFO    ] 200
[2026-06-05 20:03:33,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:33,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:03:33,131.131 INFO    ] No update needed
[2026-06-05 20:03:33,133.133 INFO    ] Checking for camera pi updates...
[2026-06-05 20:03:33,177.177 INFO    ] 200
[2026-06-05 20:03:33,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:33,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:03:33,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:03:33,279.279 INFO    ] No camera update needed
[2026-06-05 20:03:33,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:03:33,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:03:33,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:03:33,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:03:35,340.340 INFO    ] ================================================
[2026-06-05 20:03:35,356.356 INFO    ] Launching Daemon at Fri Jun  5 20:03:35 IST 2026
[2026-06-05 20:03:35,367.367 INFO    ] ================================================
[2026-06-05 20:03:36,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:03:36
[2026-06-05 20:03:36,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:03:36,998.998 INFO    ] Initializing speech engine...
[2026-06-05 20:03:37,007.007 INFO    ] 2026-06-05 20:03:37
[2026-06-05 20:03:37,267.267 INFO    ] 2026-06-05 20:03:37
[2026-06-05 20:03:37,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:03:37,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:03:37,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:03:37,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:03:37,730.730 INFO    ] time= 05/06/2026 20:03:37
[2026-06-05 20:03:37,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:03:37,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:03:37,948.948 INFO    ] No existing commands found in stream
[2026-06-05 20:03:42,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:03:42,976.976 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 20:03:44,871.871 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:03:44,874.874 INFO    ] Checking for system updates...
[2026-06-05 20:03:44,916.916 INFO    ] 200
[2026-06-05 20:03:44,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:44,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:03:44,983.983 INFO    ] No update needed
[2026-06-05 20:03:44,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 20:03:45,024.024 INFO    ] 200
[2026-06-05 20:03:45,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:45,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:03:45,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:03:45,111.111 INFO    ] No camera update needed
[2026-06-05 20:03:45,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:03:45,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:03:45,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:03:45,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:03:47,171.171 INFO    ] ================================================
[2026-06-05 20:03:47,187.187 INFO    ] Launching Daemon at Fri Jun  5 20:03:47 IST 2026
[2026-06-05 20:03:47,198.198 INFO    ] ================================================
[2026-06-05 20:03:47,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:03:47
[2026-06-05 20:03:48,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:03:48,655.655 INFO    ] Initializing speech engine...
[2026-06-05 20:03:48,664.664 INFO    ] 2026-06-05 20:03:48
[2026-06-05 20:03:48,928.928 INFO    ] 2026-06-05 20:03:48
[2026-06-05 20:03:48,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:03:49,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:03:49,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:03:49,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:03:49,432.432 INFO    ] time= 05/06/2026 20:03:49
[2026-06-05 20:03:49,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:03:49,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:03:49,625.625 INFO    ] No existing commands found in stream
[2026-06-05 20:03:54,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:03:54,640.640 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 20:03:58,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:03:58,524.524 INFO    ] Checking for system updates...
[2026-06-05 20:03:58,560.560 INFO    ] 200
[2026-06-05 20:03:58,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:58,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:03:58,620.620 INFO    ] No update needed
[2026-06-05 20:03:58,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 20:03:58,660.660 INFO    ] 200
[2026-06-05 20:03:58,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:03:58,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:03:58,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:03:58,751.751 INFO    ] No camera update needed
[2026-06-05 20:03:58,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:03:58,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:03:58,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:03:58,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:04:00,807.807 INFO    ] ================================================
[2026-06-05 20:04:00,823.823 INFO    ] Launching Daemon at Fri Jun  5 20:04:00 IST 2026
[2026-06-05 20:04:00,833.833 INFO    ] ================================================
[2026-06-05 20:04:01,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:04:01
[2026-06-05 20:04:02,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:04:02,456.456 INFO    ] Initializing speech engine...
[2026-06-05 20:04:02,483.483 INFO    ] 2026-06-05 20:04:02
[2026-06-05 20:04:02,805.805 INFO    ] 2026-06-05 20:04:02
[2026-06-05 20:04:02,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:04:03,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:04:03,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:04:03,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:04:03,901.901 INFO    ] time= 05/06/2026 20:04:03
[2026-06-05 20:04:03,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:04:03,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:04:04,037.037 INFO    ] No existing commands found in stream
[2026-06-05 20:04:09,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:04:09,059.059 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 20:04:13,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:04:13,448.448 INFO    ] Checking for system updates...
[2026-06-05 20:04:13,488.488 INFO    ] 200
[2026-06-05 20:04:13,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:04:13,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:04:13,551.551 INFO    ] No update needed
[2026-06-05 20:04:13,553.553 INFO    ] Checking for camera pi updates...
[2026-06-05 20:04:13,593.593 INFO    ] 200
[2026-06-05 20:04:13,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:04:13,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:04:13,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:04:13,684.684 INFO    ] No camera update needed
[2026-06-05 20:04:13,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:04:13,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:04:13,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:04:13,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:04:15,742.742 INFO    ] ================================================
[2026-06-05 20:04:15,757.757 INFO    ] Launching Daemon at Fri Jun  5 20:04:15 IST 2026
[2026-06-05 20:04:15,769.769 INFO    ] ================================================
[2026-06-05 20:04:16,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:04:16
[2026-06-05 20:04:16,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:04:17,221.221 INFO    ] Initializing speech engine...
[2026-06-05 20:04:17,237.237 INFO    ] 2026-06-05 20:04:17
[2026-06-05 20:04:17,522.522 INFO    ] 2026-06-05 20:04:17
[2026-06-05 20:04:17,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:04:17,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:04:17,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:04:18,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:04:18,045.045 INFO    ] time= 05/06/2026 20:04:18
[2026-06-05 20:04:18,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:04:18,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:04:18,278.278 INFO    ] No existing commands found in stream
[2026-06-05 20:04:23,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:04:23,298.298 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 20:04:27,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:04:27,552.552 INFO    ] Checking for system updates...
[2026-06-05 20:04:27,591.591 INFO    ] 200
[2026-06-05 20:04:27,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:04:27,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:04:27,654.654 INFO    ] No update needed
[2026-06-05 20:04:27,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 20:04:27,690.690 INFO    ] 200
[2026-06-05 20:04:27,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:04:27,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:04:27,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:04:27,777.777 INFO    ] No camera update needed
[2026-06-05 20:04:27,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:04:27,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:04:27,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:04:27,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:04:29,832.832 INFO    ] ================================================
[2026-06-05 20:04:29,848.848 INFO    ] Launching Daemon at Fri Jun  5 20:04:29 IST 2026
[2026-06-05 20:04:29,860.860 INFO    ] ================================================
[2026-06-05 20:04:30,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:04:30
[2026-06-05 20:04:31,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:04:31,315.315 INFO    ] Initializing speech engine...
[2026-06-05 20:04:31,326.326 INFO    ] 2026-06-05 20:04:31
[2026-06-05 20:04:31,586.586 INFO    ] 2026-06-05 20:04:31
[2026-06-05 20:04:31,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:04:33,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:04:33,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:04:34,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:04:34,091.091 INFO    ] time= 05/06/2026 20:04:34
[2026-06-05 20:04:34,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:04:34,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:04:34,231.231 INFO    ] No existing commands found in stream
[2026-06-05 20:04:39,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:04:39,247.247 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 20:04:39,935.935 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:04:39,938.938 INFO    ] Checking for system updates...
[2026-06-05 20:04:39,976.976 INFO    ] 200
[2026-06-05 20:04:39,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:04:40,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:04:40,040.040 INFO    ] No update needed
[2026-06-05 20:04:40,042.042 INFO    ] Checking for camera pi updates...
[2026-06-05 20:04:40,078.078 INFO    ] 200
[2026-06-05 20:04:40,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:04:40,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:04:40,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:04:40,170.170 INFO    ] No camera update needed
[2026-06-05 20:04:40,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:04:40,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:04:40,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:04:40,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:04:42,228.228 INFO    ] ================================================
[2026-06-05 20:04:42,244.244 INFO    ] Launching Daemon at Fri Jun  5 20:04:42 IST 2026
[2026-06-05 20:04:42,256.256 INFO    ] ================================================
[2026-06-05 20:04:42,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:04:42
[2026-06-05 20:04:43,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:04:43,794.794 INFO    ] Initializing speech engine...
[2026-06-05 20:04:43,802.802 INFO    ] 2026-06-05 20:04:43
[2026-06-05 20:04:44,089.089 INFO    ] 2026-06-05 20:04:44
[2026-06-05 20:04:44,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:04:44,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:04:44,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:04:44,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:04:44,564.564 INFO    ] time= 05/06/2026 20:04:44
[2026-06-05 20:04:44,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:04:44,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:04:44,784.784 INFO    ] No existing commands found in stream
[2026-06-05 20:04:49,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:04:49,820.820 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 20:04:51,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:04:51,041.041 INFO    ] Checking for system updates...
[2026-06-05 20:04:51,081.081 INFO    ] 200
[2026-06-05 20:04:51,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:04:51,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:04:51,141.141 INFO    ] No update needed
[2026-06-05 20:04:51,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 20:04:51,178.178 INFO    ] 200
[2026-06-05 20:04:51,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:04:51,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:04:51,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:04:51,274.274 INFO    ] No camera update needed
[2026-06-05 20:04:51,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:04:51,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:04:51,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:04:51,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:04:53,333.333 INFO    ] ================================================
[2026-06-05 20:04:53,349.349 INFO    ] Launching Daemon at Fri Jun  5 20:04:53 IST 2026
[2026-06-05 20:04:53,360.360 INFO    ] ================================================
[2026-06-05 20:04:53,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:04:53
[2026-06-05 20:04:54,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:04:54,776.776 INFO    ] Initializing speech engine...
[2026-06-05 20:04:54,788.788 INFO    ] 2026-06-05 20:04:54
[2026-06-05 20:04:55,054.054 INFO    ] 2026-06-05 20:04:55
[2026-06-05 20:04:55,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:04:55,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:04:55,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:04:55,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:04:55,548.548 INFO    ] time= 05/06/2026 20:04:55
[2026-06-05 20:04:55,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:04:55,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:04:55,773.773 INFO    ] No existing commands found in stream
[2026-06-05 20:05:00,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:05:00,790.790 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 20:05:04,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:05:04,971.971 INFO    ] Checking for system updates...
[2026-06-05 20:05:05,012.012 INFO    ] 200
[2026-06-05 20:05:05,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:05,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:05:05,084.084 INFO    ] No update needed
[2026-06-05 20:05:05,087.087 INFO    ] Checking for camera pi updates...
[2026-06-05 20:05:05,126.126 INFO    ] 200
[2026-06-05 20:05:05,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:05,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:05:05,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:05:05,232.232 INFO    ] No camera update needed
[2026-06-05 20:05:05,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:05:05,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:05:05,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:05:05,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:05:07,293.293 INFO    ] ================================================
[2026-06-05 20:05:07,308.308 INFO    ] Launching Daemon at Fri Jun  5 20:05:07 IST 2026
[2026-06-05 20:05:07,320.320 INFO    ] ================================================
[2026-06-05 20:05:07,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:05:07
[2026-06-05 20:05:08,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:05:08,782.782 INFO    ] Initializing speech engine...
[2026-06-05 20:05:08,791.791 INFO    ] 2026-06-05 20:05:08
[2026-06-05 20:05:09,047.047 INFO    ] 2026-06-05 20:05:09
[2026-06-05 20:05:09,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:05:09,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:05:09,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:05:09,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:05:09,519.519 INFO    ] time= 05/06/2026 20:05:09
[2026-06-05 20:05:09,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:05:09,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:05:09,738.738 INFO    ] No existing commands found in stream
[2026-06-05 20:05:14,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:05:14,765.765 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 20:05:17,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:05:17,317.317 INFO    ] Checking for system updates...
[2026-06-05 20:05:17,355.355 INFO    ] 200
[2026-06-05 20:05:17,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:17,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:05:17,414.414 INFO    ] No update needed
[2026-06-05 20:05:17,416.416 INFO    ] Checking for camera pi updates...
[2026-06-05 20:05:17,450.450 INFO    ] 200
[2026-06-05 20:05:17,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:17,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:05:17,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:05:17,644.644 INFO    ] No camera update needed
[2026-06-05 20:05:17,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:05:17,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:05:17,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:05:17,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:05:19,701.701 INFO    ] ================================================
[2026-06-05 20:05:19,717.717 INFO    ] Launching Daemon at Fri Jun  5 20:05:19 IST 2026
[2026-06-05 20:05:19,727.727 INFO    ] ================================================
[2026-06-05 20:05:20,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:05:20
[2026-06-05 20:05:21,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:05:21,308.308 INFO    ] Initializing speech engine...
[2026-06-05 20:05:21,318.318 INFO    ] 2026-06-05 20:05:21
[2026-06-05 20:05:21,578.578 INFO    ] 2026-06-05 20:05:21
[2026-06-05 20:05:21,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:05:21,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:05:21,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:05:22,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:05:22,047.047 INFO    ] time= 05/06/2026 20:05:22
[2026-06-05 20:05:22,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:05:22,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:05:22,290.290 INFO    ] No existing commands found in stream
[2026-06-05 20:05:27,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:05:27,326.326 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 20:05:30,229.229 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:05:30,232.232 INFO    ] Checking for system updates...
[2026-06-05 20:05:30,270.270 INFO    ] 200
[2026-06-05 20:05:30,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:30,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:05:30,336.336 INFO    ] No update needed
[2026-06-05 20:05:30,339.339 INFO    ] Checking for camera pi updates...
[2026-06-05 20:05:30,377.377 INFO    ] 200
[2026-06-05 20:05:30,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:30,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:05:30,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:05:30,476.476 INFO    ] No camera update needed
[2026-06-05 20:05:30,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:05:30,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:05:30,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:05:30,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:05:32,534.534 INFO    ] ================================================
[2026-06-05 20:05:32,552.552 INFO    ] Launching Daemon at Fri Jun  5 20:05:32 IST 2026
[2026-06-05 20:05:32,565.565 INFO    ] ================================================
[2026-06-05 20:05:33,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:05:33
[2026-06-05 20:05:33,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:05:34,033.033 INFO    ] Initializing speech engine...
[2026-06-05 20:05:34,042.042 INFO    ] 2026-06-05 20:05:34
[2026-06-05 20:05:34,292.292 INFO    ] 2026-06-05 20:05:34
[2026-06-05 20:05:34,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:05:35,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:05:35,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:05:35,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:05:35,664.664 INFO    ] time= 05/06/2026 20:05:35
[2026-06-05 20:05:35,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:05:35,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:05:35,777.777 INFO    ] No existing commands found in stream
[2026-06-05 20:05:40,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:05:40,792.792 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 20:05:41,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:05:41,772.772 INFO    ] Checking for system updates...
[2026-06-05 20:05:41,809.809 INFO    ] 200
[2026-06-05 20:05:41,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:41,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:05:41,873.873 INFO    ] No update needed
[2026-06-05 20:05:41,875.875 INFO    ] Checking for camera pi updates...
[2026-06-05 20:05:41,909.909 INFO    ] 200
[2026-06-05 20:05:41,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:41,953.953 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:05:41,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:05:41,989.989 INFO    ] No camera update needed
[2026-06-05 20:05:41,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:05:41,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:05:41,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:05:42,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:05:44,045.045 INFO    ] ================================================
[2026-06-05 20:05:44,061.061 INFO    ] Launching Daemon at Fri Jun  5 20:05:44 IST 2026
[2026-06-05 20:05:44,073.073 INFO    ] ================================================
[2026-06-05 20:05:44,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:05:44
[2026-06-05 20:05:45,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:05:45,487.487 INFO    ] Initializing speech engine...
[2026-06-05 20:05:45,506.506 INFO    ] 2026-06-05 20:05:45
[2026-06-05 20:05:45,756.756 INFO    ] 2026-06-05 20:05:45
[2026-06-05 20:05:45,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:05:45,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:05:45,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:05:46,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:05:46,134.134 INFO    ] time= 05/06/2026 20:05:46
[2026-06-05 20:05:46,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:05:46,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:05:46,317.317 INFO    ] No existing commands found in stream
[2026-06-05 20:05:51,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:05:51,349.349 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 20:05:54,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:05:54,243.243 INFO    ] Checking for system updates...
[2026-06-05 20:05:54,279.279 INFO    ] 200
[2026-06-05 20:05:54,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:54,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:05:54,354.354 INFO    ] No update needed
[2026-06-05 20:05:54,357.357 INFO    ] Checking for camera pi updates...
[2026-06-05 20:05:54,392.392 INFO    ] 200
[2026-06-05 20:05:54,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:05:54,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:05:54,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:05:54,466.466 INFO    ] No camera update needed
[2026-06-05 20:05:54,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:05:54,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:05:54,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:05:54,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:05:56,523.523 INFO    ] ================================================
[2026-06-05 20:05:56,538.538 INFO    ] Launching Daemon at Fri Jun  5 20:05:56 IST 2026
[2026-06-05 20:05:56,549.549 INFO    ] ================================================
[2026-06-05 20:05:57,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:05:57
[2026-06-05 20:05:57,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:05:57,974.974 INFO    ] Initializing speech engine...
[2026-06-05 20:05:57,980.980 INFO    ] 2026-06-05 20:05:57
[2026-06-05 20:05:58,228.228 INFO    ] 2026-06-05 20:05:58
[2026-06-05 20:05:58,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:05:58,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:05:58,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:05:58,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:05:58,610.610 INFO    ] time= 05/06/2026 20:05:58
[2026-06-05 20:05:58,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:05:58,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:05:58,810.810 INFO    ] No existing commands found in stream
[2026-06-05 20:06:03,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:06:03,825.825 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 20:06:05,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:06:05,973.973 INFO    ] Checking for system updates...
[2026-06-05 20:06:06,014.014 INFO    ] 200
[2026-06-05 20:06:06,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:06:06,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:06:06,093.093 INFO    ] No update needed
[2026-06-05 20:06:06,095.095 INFO    ] Checking for camera pi updates...
[2026-06-05 20:06:06,129.129 INFO    ] 200
[2026-06-05 20:06:06,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:06:06,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:06:06,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:06:06,211.211 INFO    ] No camera update needed
[2026-06-05 20:06:06,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:06:06,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:06:06,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:06:06,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:06:08,267.267 INFO    ] ================================================
[2026-06-05 20:06:08,286.286 INFO    ] Launching Daemon at Fri Jun  5 20:06:08 IST 2026
[2026-06-05 20:06:08,297.297 INFO    ] ================================================
[2026-06-05 20:06:08,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:06:08
[2026-06-05 20:06:09,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:06:09,739.739 INFO    ] Initializing speech engine...
[2026-06-05 20:06:09,749.749 INFO    ] 2026-06-05 20:06:09
[2026-06-05 20:06:09,994.994 INFO    ] 2026-06-05 20:06:09
[2026-06-05 20:06:10,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:06:10,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:06:10,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:06:10,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:06:10,485.485 INFO    ] time= 05/06/2026 20:06:10
[2026-06-05 20:06:10,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:06:10,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:06:10,673.673 INFO    ] No existing commands found in stream
[2026-06-05 20:06:15,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:06:15,703.703 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 20:06:16,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:06:16,965.965 INFO    ] Checking for system updates...
[2026-06-05 20:06:17,006.006 INFO    ] 200
[2026-06-05 20:06:17,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:06:17,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:06:17,063.063 INFO    ] No update needed
[2026-06-05 20:06:17,066.066 INFO    ] Checking for camera pi updates...
[2026-06-05 20:06:17,101.101 INFO    ] 200
[2026-06-05 20:06:17,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:06:17,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:06:17,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:06:17,175.175 INFO    ] No camera update needed
[2026-06-05 20:06:17,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:06:17,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:06:17,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:06:17,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:06:19,230.230 INFO    ] ================================================
[2026-06-05 20:06:19,245.245 INFO    ] Launching Daemon at Fri Jun  5 20:06:19 IST 2026
[2026-06-05 20:06:19,256.256 INFO    ] ================================================
[2026-06-05 20:06:19,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:06:19
[2026-06-05 20:06:20,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:06:20,705.705 INFO    ] Initializing speech engine...
[2026-06-05 20:06:20,728.728 INFO    ] 2026-06-05 20:06:20
[2026-06-05 20:06:20,984.984 INFO    ] 2026-06-05 20:06:20
[2026-06-05 20:06:21,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:06:21,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:06:21,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:06:21,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:06:21,441.441 INFO    ] time= 05/06/2026 20:06:21
[2026-06-05 20:06:21,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:06:21,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:06:21,663.663 INFO    ] No existing commands found in stream
[2026-06-05 20:06:26,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:06:26,692.692 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 20:06:27,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:06:27,218.218 INFO    ] Checking for system updates...
[2026-06-05 20:06:27,263.263 INFO    ] 200
[2026-06-05 20:06:27,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 20:06:27,268.268 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 20:06:27,271.271 INFO    ] Checking for camera pi updates...
[2026-06-05 20:06:27,330.330 INFO    ] 200
[2026-06-05 20:06:27,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 20:06:27,335.335 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 20:06:27,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:06:27,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:06:27,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:06:27,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:06:29,394.394 INFO    ] ================================================
[2026-06-05 20:06:29,409.409 INFO    ] Launching Daemon at Fri Jun  5 20:06:29 IST 2026
[2026-06-05 20:06:29,420.420 INFO    ] ================================================
[2026-06-05 20:06:29,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:06:29
[2026-06-05 20:06:30,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:06:30,853.853 INFO    ] Initializing speech engine...
[2026-06-05 20:06:30,859.859 INFO    ] 2026-06-05 20:06:30
[2026-06-05 20:06:31,163.163 INFO    ] 2026-06-05 20:06:31
[2026-06-05 20:06:31,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:06:31,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:06:31,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:06:31,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:06:31,593.593 INFO    ] time= 05/06/2026 20:06:31
[2026-06-05 20:06:31,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:06:31,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:06:31,737.737 INFO    ] No existing commands found in stream
[2026-06-05 20:06:36,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:06:36,752.752 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 20:06:37,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:06:37,530.530 INFO    ] Checking for system updates...
[2026-06-05 20:06:37,572.572 INFO    ] 200
[2026-06-05 20:06:37,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:06:37,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:06:37,639.639 INFO    ] No update needed
[2026-06-05 20:06:37,641.641 INFO    ] Checking for camera pi updates...
[2026-06-05 20:06:37,676.676 INFO    ] 200
[2026-06-05 20:06:37,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:06:37,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:06:37,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:06:37,760.760 INFO    ] No camera update needed
[2026-06-05 20:06:37,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:06:37,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:06:37,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:06:37,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:06:39,821.821 INFO    ] ================================================
[2026-06-05 20:06:39,837.837 INFO    ] Launching Daemon at Fri Jun  5 20:06:39 IST 2026
[2026-06-05 20:06:39,848.848 INFO    ] ================================================
[2026-06-05 20:06:40,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:06:40
[2026-06-05 20:06:41,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:06:41,556.556 INFO    ] Initializing speech engine...
[2026-06-05 20:06:41,561.561 INFO    ] 2026-06-05 20:06:41
[2026-06-05 20:06:41,824.824 INFO    ] 2026-06-05 20:06:41
[2026-06-05 20:06:41,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:06:42,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:06:42,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:06:42,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:06:42,604.604 INFO    ] time= 05/06/2026 20:06:42
[2026-06-05 20:06:42,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:06:42,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:06:42,817.817 INFO    ] No existing commands found in stream
[2026-06-05 20:06:47,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:06:47,830.830 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 20:06:49,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:06:49,196.196 INFO    ] Checking for system updates...
[2026-06-05 20:06:49,233.233 INFO    ] 200
[2026-06-05 20:06:49,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:06:49,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:06:49,303.303 INFO    ] No update needed
[2026-06-05 20:06:49,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 20:06:49,347.347 INFO    ] 200
[2026-06-05 20:06:49,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:06:49,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:06:49,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:06:49,451.451 INFO    ] No camera update needed
[2026-06-05 20:06:49,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:06:49,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:06:49,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:06:49,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:06:51,511.511 INFO    ] ================================================
[2026-06-05 20:06:51,527.527 INFO    ] Launching Daemon at Fri Jun  5 20:06:51 IST 2026
[2026-06-05 20:06:51,537.537 INFO    ] ================================================
[2026-06-05 20:06:52,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:06:52
[2026-06-05 20:06:52,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:06:53,011.011 INFO    ] Initializing speech engine...
[2026-06-05 20:06:53,023.023 INFO    ] 2026-06-05 20:06:53
[2026-06-05 20:06:53,274.274 INFO    ] 2026-06-05 20:06:53
[2026-06-05 20:06:53,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:06:53,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:06:53,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:06:53,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:06:53,746.746 INFO    ] time= 05/06/2026 20:06:53
[2026-06-05 20:06:53,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:06:53,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:06:53,911.911 INFO    ] No existing commands found in stream
[2026-06-05 20:06:58,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:06:58,920.920 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 20:07:00,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:07:00,374.374 INFO    ] Checking for system updates...
[2026-06-05 20:07:00,412.412 INFO    ] 200
[2026-06-05 20:07:00,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:00,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:07:00,473.473 INFO    ] No update needed
[2026-06-05 20:07:00,476.476 INFO    ] Checking for camera pi updates...
[2026-06-05 20:07:00,511.511 INFO    ] 200
[2026-06-05 20:07:00,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:00,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:07:00,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:07:00,608.608 INFO    ] No camera update needed
[2026-06-05 20:07:00,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:07:00,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:07:00,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:07:00,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:07:02,672.672 INFO    ] ================================================
[2026-06-05 20:07:02,689.689 INFO    ] Launching Daemon at Fri Jun  5 20:07:02 IST 2026
[2026-06-05 20:07:02,701.701 INFO    ] ================================================
[2026-06-05 20:07:03,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:07:03
[2026-06-05 20:07:03,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:07:04,199.199 INFO    ] Initializing speech engine...
[2026-06-05 20:07:04,209.209 INFO    ] 2026-06-05 20:07:04
[2026-06-05 20:07:04,464.464 INFO    ] 2026-06-05 20:07:04
[2026-06-05 20:07:04,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:07:07,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:07:07,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:07:07,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:07:07,526.526 INFO    ] time= 05/06/2026 20:07:07
[2026-06-05 20:07:07,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:07:07,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:07:07,600.600 INFO    ] No existing commands found in stream
[2026-06-05 20:07:12,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:07:12,612.612 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 20:07:13,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:07:13,231.231 INFO    ] Checking for system updates...
[2026-06-05 20:07:13,267.267 INFO    ] 200
[2026-06-05 20:07:13,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:13,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:07:13,326.326 INFO    ] No update needed
[2026-06-05 20:07:13,329.329 INFO    ] Checking for camera pi updates...
[2026-06-05 20:07:13,362.362 INFO    ] 200
[2026-06-05 20:07:13,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:13,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:07:13,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:07:13,452.452 INFO    ] No camera update needed
[2026-06-05 20:07:13,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:07:13,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:07:13,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:07:13,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:07:15,509.509 INFO    ] ================================================
[2026-06-05 20:07:15,525.525 INFO    ] Launching Daemon at Fri Jun  5 20:07:15 IST 2026
[2026-06-05 20:07:15,536.536 INFO    ] ================================================
[2026-06-05 20:07:16,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:07:16
[2026-06-05 20:07:16,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:07:16,955.955 INFO    ] Initializing speech engine...
[2026-06-05 20:07:16,967.967 INFO    ] 2026-06-05 20:07:16
[2026-06-05 20:07:17,230.230 INFO    ] 2026-06-05 20:07:17
[2026-06-05 20:07:17,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:07:17,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:07:17,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:07:17,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:07:17,699.699 INFO    ] time= 05/06/2026 20:07:17
[2026-06-05 20:07:17,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:07:17,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:07:17,927.927 INFO    ] No existing commands found in stream
[2026-06-05 20:07:22,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:07:22,954.954 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 20:07:23,397.397 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:07:23,399.399 INFO    ] Checking for system updates...
[2026-06-05 20:07:23,435.435 INFO    ] 200
[2026-06-05 20:07:23,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:23,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:07:23,493.493 INFO    ] No update needed
[2026-06-05 20:07:23,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 20:07:23,530.530 INFO    ] 200
[2026-06-05 20:07:23,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:23,572.572 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:07:23,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:07:23,715.715 INFO    ] No camera update needed
[2026-06-05 20:07:23,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:07:23,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:07:23,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:07:23,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:07:25,771.771 INFO    ] ================================================
[2026-06-05 20:07:25,787.787 INFO    ] Launching Daemon at Fri Jun  5 20:07:25 IST 2026
[2026-06-05 20:07:25,797.797 INFO    ] ================================================
[2026-06-05 20:07:26,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:07:26
[2026-06-05 20:07:26,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:07:27,221.221 INFO    ] Initializing speech engine...
[2026-06-05 20:07:27,229.229 INFO    ] 2026-06-05 20:07:27
[2026-06-05 20:07:27,529.529 INFO    ] 2026-06-05 20:07:27
[2026-06-05 20:07:27,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:07:27,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:07:27,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:07:27,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:07:27,956.956 INFO    ] time= 05/06/2026 20:07:27
[2026-06-05 20:07:27,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:07:27,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:07:28,050.050 INFO    ] No existing commands found in stream
[2026-06-05 20:07:33,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:07:33,078.078 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 20:07:34,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:07:34,057.057 INFO    ] Checking for system updates...
[2026-06-05 20:07:34,093.093 INFO    ] 200
[2026-06-05 20:07:34,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:34,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:07:34,153.153 INFO    ] No update needed
[2026-06-05 20:07:34,155.155 INFO    ] Checking for camera pi updates...
[2026-06-05 20:07:34,290.290 INFO    ] 200
[2026-06-05 20:07:34,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:34,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:07:34,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:07:34,373.373 INFO    ] No camera update needed
[2026-06-05 20:07:34,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:07:34,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:07:34,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:07:34,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:07:36,427.427 INFO    ] ================================================
[2026-06-05 20:07:36,442.442 INFO    ] Launching Daemon at Fri Jun  5 20:07:36 IST 2026
[2026-06-05 20:07:36,453.453 INFO    ] ================================================
[2026-06-05 20:07:37,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:07:37
[2026-06-05 20:07:37,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:07:38,126.126 INFO    ] Initializing speech engine...
[2026-06-05 20:07:38,154.154 INFO    ] 2026-06-05 20:07:38
[2026-06-05 20:07:38,458.458 INFO    ] 2026-06-05 20:07:38
[2026-06-05 20:07:38,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:07:38,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:07:38,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:07:38,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:07:38,948.948 INFO    ] time= 05/06/2026 20:07:38
[2026-06-05 20:07:39,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:07:39,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:07:39,160.160 INFO    ] No existing commands found in stream
[2026-06-05 20:07:44,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:07:44,187.187 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 20:07:45,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:07:45,066.066 INFO    ] Checking for system updates...
[2026-06-05 20:07:45,104.104 INFO    ] 200
[2026-06-05 20:07:45,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:45,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:07:45,164.164 INFO    ] No update needed
[2026-06-05 20:07:45,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 20:07:45,206.206 INFO    ] 200
[2026-06-05 20:07:45,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:45,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:07:45,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:07:45,305.305 INFO    ] No camera update needed
[2026-06-05 20:07:45,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:07:45,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:07:45,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:07:45,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:07:47,365.365 INFO    ] ================================================
[2026-06-05 20:07:47,381.381 INFO    ] Launching Daemon at Fri Jun  5 20:07:47 IST 2026
[2026-06-05 20:07:47,392.392 INFO    ] ================================================
[2026-06-05 20:07:48,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:07:48
[2026-06-05 20:07:48,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:07:48,937.937 INFO    ] Initializing speech engine...
[2026-06-05 20:07:48,943.943 INFO    ] 2026-06-05 20:07:48
[2026-06-05 20:07:49,203.203 INFO    ] 2026-06-05 20:07:49
[2026-06-05 20:07:49,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:07:49,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:07:49,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:07:49,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:07:49,756.756 INFO    ] time= 05/06/2026 20:07:49
[2026-06-05 20:07:49,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:07:49,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:07:49,925.925 INFO    ] No existing commands found in stream
[2026-06-05 20:07:54,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:07:54,959.959 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 20:07:57,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:07:57,125.125 INFO    ] Checking for system updates...
[2026-06-05 20:07:57,161.161 INFO    ] 200
[2026-06-05 20:07:57,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:57,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:07:57,228.228 INFO    ] No update needed
[2026-06-05 20:07:57,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 20:07:57,269.269 INFO    ] 200
[2026-06-05 20:07:57,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:07:57,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:07:57,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:07:57,364.364 INFO    ] No camera update needed
[2026-06-05 20:07:57,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:07:57,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:07:57,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:07:57,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:07:59,421.421 INFO    ] ================================================
[2026-06-05 20:07:59,436.436 INFO    ] Launching Daemon at Fri Jun  5 20:07:59 IST 2026
[2026-06-05 20:07:59,447.447 INFO    ] ================================================
[2026-06-05 20:08:00,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:08:00
[2026-06-05 20:08:00,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:08:00,857.857 INFO    ] Initializing speech engine...
[2026-06-05 20:08:00,863.863 INFO    ] 2026-06-05 20:08:00
[2026-06-05 20:08:01,160.160 INFO    ] 2026-06-05 20:08:01
[2026-06-05 20:08:01,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:08:01,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:08:01,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:08:01,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:08:01,522.522 INFO    ] time= 05/06/2026 20:08:01
[2026-06-05 20:08:01,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:08:01,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:08:01,678.678 INFO    ] No existing commands found in stream
[2026-06-05 20:08:06,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:08:06,691.691 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 20:08:10,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:08:10,435.435 INFO    ] Checking for system updates...
[2026-06-05 20:08:10,472.472 INFO    ] 200
[2026-06-05 20:08:10,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:08:10,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:08:10,530.530 INFO    ] No update needed
[2026-06-05 20:08:10,533.533 INFO    ] Checking for camera pi updates...
[2026-06-05 20:08:10,578.578 INFO    ] 200
[2026-06-05 20:08:10,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:08:10,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:08:10,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:08:10,686.686 INFO    ] No camera update needed
[2026-06-05 20:08:10,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:08:10,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:08:10,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:08:10,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:08:12,746.746 INFO    ] ================================================
[2026-06-05 20:08:12,761.761 INFO    ] Launching Daemon at Fri Jun  5 20:08:12 IST 2026
[2026-06-05 20:08:12,772.772 INFO    ] ================================================
[2026-06-05 20:08:13,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:08:13
[2026-06-05 20:08:14,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:08:14,465.465 INFO    ] Initializing speech engine...
[2026-06-05 20:08:14,477.477 INFO    ] 2026-06-05 20:08:14
[2026-06-05 20:08:14,768.768 INFO    ] 2026-06-05 20:08:14
[2026-06-05 20:08:14,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:08:15,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:08:15,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:08:15,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:08:15,303.303 INFO    ] time= 05/06/2026 20:08:15
[2026-06-05 20:08:15,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:08:15,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:08:15,468.468 INFO    ] No existing commands found in stream
[2026-06-05 20:08:20,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:08:20,493.493 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 20:08:24,355.355 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:08:24,358.358 INFO    ] Checking for system updates...
[2026-06-05 20:08:24,396.396 INFO    ] 200
[2026-06-05 20:08:24,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:08:24,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:08:24,455.455 INFO    ] No update needed
[2026-06-05 20:08:24,458.458 INFO    ] Checking for camera pi updates...
[2026-06-05 20:08:24,491.491 INFO    ] 200
[2026-06-05 20:08:24,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:08:24,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:08:24,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:08:24,588.588 INFO    ] No camera update needed
[2026-06-05 20:08:24,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:08:24,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:08:24,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:08:24,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:08:26,643.643 INFO    ] ================================================
[2026-06-05 20:08:26,658.658 INFO    ] Launching Daemon at Fri Jun  5 20:08:26 IST 2026
[2026-06-05 20:08:26,669.669 INFO    ] ================================================
[2026-06-05 20:08:27,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:08:27
[2026-06-05 20:08:27,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:08:28,079.079 INFO    ] Initializing speech engine...
[2026-06-05 20:08:28,101.101 INFO    ] 2026-06-05 20:08:28
[2026-06-05 20:08:28,353.353 INFO    ] 2026-06-05 20:08:28
[2026-06-05 20:08:28,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:08:28,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:08:28,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:08:28,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:08:28,801.801 INFO    ] time= 05/06/2026 20:08:28
[2026-06-05 20:08:28,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:08:28,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:08:29,062.062 INFO    ] No existing commands found in stream
[2026-06-05 20:08:34,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:08:34,081.081 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 20:08:39,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:08:39,653.653 INFO    ] Checking for system updates...
[2026-06-05 20:08:39,690.690 INFO    ] 200
[2026-06-05 20:08:39,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:08:39,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:08:39,748.748 INFO    ] No update needed
[2026-06-05 20:08:39,750.750 INFO    ] Checking for camera pi updates...
[2026-06-05 20:08:39,788.788 INFO    ] 200
[2026-06-05 20:08:39,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:08:39,834.834 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:08:39,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:08:39,881.881 INFO    ] No camera update needed
[2026-06-05 20:08:39,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:08:39,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:08:39,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:08:39,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:08:41,937.937 INFO    ] ================================================
[2026-06-05 20:08:41,952.952 INFO    ] Launching Daemon at Fri Jun  5 20:08:41 IST 2026
[2026-06-05 20:08:41,963.963 INFO    ] ================================================
[2026-06-05 20:08:42,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:08:42
[2026-06-05 20:08:43,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:08:43,388.388 INFO    ] Initializing speech engine...
[2026-06-05 20:08:43,404.404 INFO    ] 2026-06-05 20:08:43
[2026-06-05 20:08:43,692.692 INFO    ] 2026-06-05 20:08:43
[2026-06-05 20:08:43,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:08:43,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:08:43,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:08:44,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:08:44,081.081 INFO    ] time= 05/06/2026 20:08:44
[2026-06-05 20:08:44,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:08:44,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:08:44,208.208 INFO    ] No existing commands found in stream
[2026-06-05 20:08:49,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:08:49,223.223 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 20:08:51,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:08:51,007.007 INFO    ] Checking for system updates...
[2026-06-05 20:08:51,044.044 INFO    ] 200
[2026-06-05 20:08:51,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:08:51,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:08:51,110.110 INFO    ] No update needed
[2026-06-05 20:08:51,112.112 INFO    ] Checking for camera pi updates...
[2026-06-05 20:08:51,150.150 INFO    ] 200
[2026-06-05 20:08:51,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:08:51,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:08:51,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:08:51,249.249 INFO    ] No camera update needed
[2026-06-05 20:08:51,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:08:51,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:08:51,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:08:51,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:08:53,305.305 INFO    ] ================================================
[2026-06-05 20:08:53,320.320 INFO    ] Launching Daemon at Fri Jun  5 20:08:53 IST 2026
[2026-06-05 20:08:53,331.331 INFO    ] ================================================
[2026-06-05 20:08:53,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:08:53
[2026-06-05 20:08:54,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:08:54,989.989 INFO    ] Initializing speech engine...
[2026-06-05 20:08:54,998.998 INFO    ] 2026-06-05 20:08:54
[2026-06-05 20:08:55,284.284 INFO    ] 2026-06-05 20:08:55
[2026-06-05 20:08:55,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:08:55,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:08:55,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:08:55,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:08:55,825.825 INFO    ] time= 05/06/2026 20:08:55
[2026-06-05 20:08:55,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:08:55,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:08:55,983.983 INFO    ] No existing commands found in stream
[2026-06-05 20:09:01,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:09:01,008.008 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 20:09:04,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:09:04,859.859 INFO    ] Checking for system updates...
[2026-06-05 20:09:04,897.897 INFO    ] 200
[2026-06-05 20:09:04,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:09:04,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:09:04,958.958 INFO    ] No update needed
[2026-06-05 20:09:04,961.961 INFO    ] Checking for camera pi updates...
[2026-06-05 20:09:04,996.996 INFO    ] 200
[2026-06-05 20:09:04,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:09:05,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:09:05,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:09:05,111.111 INFO    ] No camera update needed
[2026-06-05 20:09:05,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:09:05,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:09:05,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:09:05,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:09:07,166.166 INFO    ] ================================================
[2026-06-05 20:09:07,182.182 INFO    ] Launching Daemon at Fri Jun  5 20:09:07 IST 2026
[2026-06-05 20:09:07,192.192 INFO    ] ================================================
[2026-06-05 20:09:07,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:09:07
[2026-06-05 20:09:08,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:09:08,650.650 INFO    ] Initializing speech engine...
[2026-06-05 20:09:08,658.658 INFO    ] 2026-06-05 20:09:08
[2026-06-05 20:09:08,970.970 INFO    ] 2026-06-05 20:09:08
[2026-06-05 20:09:09,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:09:10,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:09:10,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:09:10,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:09:10,558.558 INFO    ] time= 05/06/2026 20:09:10
[2026-06-05 20:09:10,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:09:10,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:09:10,632.632 INFO    ] No existing commands found in stream
[2026-06-05 20:09:15,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:09:15,646.646 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 20:09:19,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:09:19,886.886 INFO    ] Checking for system updates...
[2026-06-05 20:09:19,923.923 INFO    ] 200
[2026-06-05 20:09:19,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:09:19,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:09:19,990.990 INFO    ] No update needed
[2026-06-05 20:09:19,993.993 INFO    ] Checking for camera pi updates...
[2026-06-05 20:09:20,031.031 INFO    ] 200
[2026-06-05 20:09:20,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:09:20,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:09:20,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:09:20,125.125 INFO    ] No camera update needed
[2026-06-05 20:09:20,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:09:20,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:09:20,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:09:20,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:09:22,182.182 INFO    ] ================================================
[2026-06-05 20:09:22,199.199 INFO    ] Launching Daemon at Fri Jun  5 20:09:22 IST 2026
[2026-06-05 20:09:22,211.211 INFO    ] ================================================
[2026-06-05 20:09:22,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:09:22
[2026-06-05 20:09:23,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:09:23,718.718 INFO    ] Initializing speech engine...
[2026-06-05 20:09:23,724.724 INFO    ] 2026-06-05 20:09:23
[2026-06-05 20:09:24,033.033 INFO    ] 2026-06-05 20:09:23
[2026-06-05 20:09:24,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:09:24,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:09:24,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:09:24,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:09:24,430.430 INFO    ] time= 05/06/2026 20:09:24
[2026-06-05 20:09:24,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:09:24,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:09:24,559.559 INFO    ] No existing commands found in stream
[2026-06-05 20:09:29,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:09:29,574.574 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 20:09:33,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:09:33,974.974 INFO    ] Checking for system updates...
[2026-06-05 20:09:34,015.015 INFO    ] 200
[2026-06-05 20:09:34,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:09:34,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:09:34,072.072 INFO    ] No update needed
[2026-06-05 20:09:34,075.075 INFO    ] Checking for camera pi updates...
[2026-06-05 20:09:34,109.109 INFO    ] 200
[2026-06-05 20:09:34,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:09:34,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:09:34,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:09:34,195.195 INFO    ] No camera update needed
[2026-06-05 20:09:34,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:09:34,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:09:34,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:09:34,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:09:36,250.250 INFO    ] ================================================
[2026-06-05 20:09:36,265.265 INFO    ] Launching Daemon at Fri Jun  5 20:09:36 IST 2026
[2026-06-05 20:09:36,276.276 INFO    ] ================================================
[2026-06-05 20:09:36,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:09:36
[2026-06-05 20:09:37,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:09:37,736.736 INFO    ] Initializing speech engine...
[2026-06-05 20:09:37,749.749 INFO    ] 2026-06-05 20:09:37
[2026-06-05 20:09:37,996.996 INFO    ] 2026-06-05 20:09:37
[2026-06-05 20:09:38,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:09:40,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:09:40,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:09:40,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:09:40,908.908 INFO    ] time= 05/06/2026 20:09:40
[2026-06-05 20:09:40,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:09:40,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:09:40,970.970 INFO    ] No existing commands found in stream
[2026-06-05 20:09:45,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:09:45,982.982 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 20:09:49,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:09:49,223.223 INFO    ] Checking for system updates...
[2026-06-05 20:09:49,259.259 INFO    ] 200
[2026-06-05 20:09:49,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:09:49,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:09:49,320.320 INFO    ] No update needed
[2026-06-05 20:09:49,322.322 INFO    ] Checking for camera pi updates...
[2026-06-05 20:09:49,355.355 INFO    ] 200
[2026-06-05 20:09:49,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:09:49,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:09:49,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:09:49,447.447 INFO    ] No camera update needed
[2026-06-05 20:09:49,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:09:49,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:09:49,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:09:49,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:09:51,504.504 INFO    ] ================================================
[2026-06-05 20:09:51,520.520 INFO    ] Launching Daemon at Fri Jun  5 20:09:51 IST 2026
[2026-06-05 20:09:51,531.531 INFO    ] ================================================
[2026-06-05 20:09:52,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:09:52
[2026-06-05 20:09:52,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:09:53,180.180 INFO    ] Initializing speech engine...
[2026-06-05 20:09:53,194.194 INFO    ] 2026-06-05 20:09:53
[2026-06-05 20:09:53,476.476 INFO    ] 2026-06-05 20:09:53
[2026-06-05 20:09:53,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:09:53,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:09:53,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:09:53,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:09:53,938.938 INFO    ] time= 05/06/2026 20:09:53
[2026-06-05 20:09:53,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:09:54,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:09:54,154.154 INFO    ] No existing commands found in stream
[2026-06-05 20:09:59,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:09:59,180.180 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 20:10:00,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:10:00,937.937 INFO    ] Checking for system updates...
[2026-06-05 20:10:00,977.977 INFO    ] 200
[2026-06-05 20:10:00,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:01,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:10:01,089.089 INFO    ] No update needed
[2026-06-05 20:10:01,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 20:10:01,301.301 INFO    ] 200
[2026-06-05 20:10:01,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:01,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:10:01,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:10:01,482.482 INFO    ] No camera update needed
[2026-06-05 20:10:01,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:10:01,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:10:01,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:10:01,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:10:03,556.556 INFO    ] ================================================
[2026-06-05 20:10:03,572.572 INFO    ] Launching Daemon at Fri Jun  5 20:10:03 IST 2026
[2026-06-05 20:10:03,582.582 INFO    ] ================================================
[2026-06-05 20:10:04,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:10:04
[2026-06-05 20:10:04,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:10:05,251.251 INFO    ] Initializing speech engine...
[2026-06-05 20:10:05,263.263 INFO    ] 2026-06-05 20:10:05
[2026-06-05 20:10:05,576.576 INFO    ] 2026-06-05 20:10:05
[2026-06-05 20:10:05,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:10:06,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:10:06,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:10:06,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:10:06,362.362 INFO    ] time= 05/06/2026 20:10:06
[2026-06-05 20:10:06,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:10:06,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:10:06,504.504 INFO    ] No existing commands found in stream
[2026-06-05 20:10:11,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:10:11,532.532 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 20:10:14,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:10:14,491.491 INFO    ] Checking for system updates...
[2026-06-05 20:10:14,527.527 INFO    ] 200
[2026-06-05 20:10:14,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:14,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:10:14,585.585 INFO    ] No update needed
[2026-06-05 20:10:14,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 20:10:14,621.621 INFO    ] 200
[2026-06-05 20:10:14,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:14,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:10:14,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:10:14,713.713 INFO    ] No camera update needed
[2026-06-05 20:10:14,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:10:14,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:10:14,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:10:14,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:10:16,769.769 INFO    ] ================================================
[2026-06-05 20:10:16,784.784 INFO    ] Launching Daemon at Fri Jun  5 20:10:16 IST 2026
[2026-06-05 20:10:16,796.796 INFO    ] ================================================
[2026-06-05 20:10:17,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:10:17
[2026-06-05 20:10:17,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:10:18,236.236 INFO    ] Initializing speech engine...
[2026-06-05 20:10:18,245.245 INFO    ] 2026-06-05 20:10:18
[2026-06-05 20:10:18,496.496 INFO    ] 2026-06-05 20:10:18
[2026-06-05 20:10:18,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:10:18,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:10:18,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:10:18,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:10:18,875.875 INFO    ] time= 05/06/2026 20:10:18
[2026-06-05 20:10:18,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:10:18,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:10:19,037.037 INFO    ] No existing commands found in stream
[2026-06-05 20:10:24,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:10:24,065.065 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-05 20:10:24,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:10:24,530.530 INFO    ] Checking for system updates...
[2026-06-05 20:10:24,572.572 INFO    ] 200
[2026-06-05 20:10:24,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:24,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:10:24,640.640 INFO    ] No update needed
[2026-06-05 20:10:24,642.642 INFO    ] Checking for camera pi updates...
[2026-06-05 20:10:24,682.682 INFO    ] 200
[2026-06-05 20:10:24,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:24,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:10:24,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:10:24,783.783 INFO    ] No camera update needed
[2026-06-05 20:10:24,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:10:24,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:10:24,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:10:24,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:10:26,843.843 INFO    ] ================================================
[2026-06-05 20:10:26,859.859 INFO    ] Launching Daemon at Fri Jun  5 20:10:26 IST 2026
[2026-06-05 20:10:26,870.870 INFO    ] ================================================
[2026-06-05 20:10:27,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:10:27
[2026-06-05 20:10:28,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:10:28,524.524 INFO    ] Initializing speech engine...
[2026-06-05 20:10:28,537.537 INFO    ] 2026-06-05 20:10:28
[2026-06-05 20:10:28,830.830 INFO    ] 2026-06-05 20:10:28
[2026-06-05 20:10:28,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:10:29,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:10:29,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:10:29,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:10:29,372.372 INFO    ] time= 05/06/2026 20:10:29
[2026-06-05 20:10:29,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:10:29,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:10:29,516.516 INFO    ] No existing commands found in stream
[2026-06-05 20:10:34,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:10:34,547.547 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 20:10:36,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:10:36,013.013 INFO    ] Checking for system updates...
[2026-06-05 20:10:36,055.055 INFO    ] 200
[2026-06-05 20:10:36,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:36,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:10:36,123.123 INFO    ] No update needed
[2026-06-05 20:10:36,126.126 INFO    ] Checking for camera pi updates...
[2026-06-05 20:10:36,166.166 INFO    ] 200
[2026-06-05 20:10:36,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:36,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:10:36,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:10:36,271.271 INFO    ] No camera update needed
[2026-06-05 20:10:36,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:10:36,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:10:36,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:10:36,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:10:38,330.330 INFO    ] ================================================
[2026-06-05 20:10:38,346.346 INFO    ] Launching Daemon at Fri Jun  5 20:10:38 IST 2026
[2026-06-05 20:10:38,357.357 INFO    ] ================================================
[2026-06-05 20:10:38,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:10:38
[2026-06-05 20:10:39,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:10:39,834.834 INFO    ] Initializing speech engine...
[2026-06-05 20:10:39,842.842 INFO    ] 2026-06-05 20:10:39
[2026-06-05 20:10:40,094.094 INFO    ] 2026-06-05 20:10:40
[2026-06-05 20:10:40,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:10:42,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:10:42,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:10:42,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:10:42,992.992 INFO    ] time= 05/06/2026 20:10:42
[2026-06-05 20:10:42,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:10:43,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:10:43,070.070 INFO    ] No existing commands found in stream
[2026-06-05 20:10:48,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:10:48,084.084 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 20:10:49,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:10:49,787.787 INFO    ] Checking for system updates...
[2026-06-05 20:10:49,824.824 INFO    ] 200
[2026-06-05 20:10:49,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:49,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:10:49,883.883 INFO    ] No update needed
[2026-06-05 20:10:49,885.885 INFO    ] Checking for camera pi updates...
[2026-06-05 20:10:49,919.919 INFO    ] 200
[2026-06-05 20:10:49,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:10:49,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:10:50,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:10:50,007.007 INFO    ] No camera update needed
[2026-06-05 20:10:50,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:10:50,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:10:50,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:10:50,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:10:52,068.068 INFO    ] ================================================
[2026-06-05 20:10:52,084.084 INFO    ] Launching Daemon at Fri Jun  5 20:10:52 IST 2026
[2026-06-05 20:10:52,095.095 INFO    ] ================================================
[2026-06-05 20:10:52,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:10:52
[2026-06-05 20:10:53,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:10:53,573.573 INFO    ] Initializing speech engine...
[2026-06-05 20:10:53,583.583 INFO    ] 2026-06-05 20:10:53
[2026-06-05 20:10:53,847.847 INFO    ] 2026-06-05 20:10:53
[2026-06-05 20:10:53,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:10:54,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:10:54,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:10:54,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:10:54,330.330 INFO    ] time= 05/06/2026 20:10:54
[2026-06-05 20:10:54,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:10:54,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:10:54,525.525 INFO    ] No existing commands found in stream
[2026-06-05 20:10:59,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:10:59,561.561 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 20:11:02,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:11:02,486.486 INFO    ] Checking for system updates...
[2026-06-05 20:11:02,526.526 INFO    ] 200
[2026-06-05 20:11:02,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:02,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:11:02,602.602 INFO    ] No update needed
[2026-06-05 20:11:02,606.606 INFO    ] Checking for camera pi updates...
[2026-06-05 20:11:02,652.652 INFO    ] 200
[2026-06-05 20:11:02,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:02,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:11:02,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:11:02,766.766 INFO    ] No camera update needed
[2026-06-05 20:11:02,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:11:02,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:11:02,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:11:02,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:11:04,832.832 INFO    ] ================================================
[2026-06-05 20:11:04,848.848 INFO    ] Launching Daemon at Fri Jun  5 20:11:04 IST 2026
[2026-06-05 20:11:04,860.860 INFO    ] ================================================
[2026-06-05 20:11:05,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:11:05
[2026-06-05 20:11:06,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:11:06,351.351 INFO    ] Initializing speech engine...
[2026-06-05 20:11:06,373.373 INFO    ] 2026-06-05 20:11:06
[2026-06-05 20:11:06,629.629 INFO    ] 2026-06-05 20:11:06
[2026-06-05 20:11:06,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:11:06,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:11:06,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:11:07,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:11:07,093.093 INFO    ] time= 05/06/2026 20:11:07
[2026-06-05 20:11:07,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:11:07,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:11:07,316.316 INFO    ] No existing commands found in stream
[2026-06-05 20:11:12,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:11:12,348.348 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 20:11:14,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:11:14,016.016 INFO    ] Checking for system updates...
[2026-06-05 20:11:14,053.053 INFO    ] 200
[2026-06-05 20:11:14,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:14,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:11:14,113.113 INFO    ] No update needed
[2026-06-05 20:11:14,118.118 INFO    ] Checking for camera pi updates...
[2026-06-05 20:11:14,155.155 INFO    ] 200
[2026-06-05 20:11:14,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:14,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:11:14,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:11:14,242.242 INFO    ] No camera update needed
[2026-06-05 20:11:14,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:11:14,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:11:14,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:11:14,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:11:16,298.298 INFO    ] ================================================
[2026-06-05 20:11:16,314.314 INFO    ] Launching Daemon at Fri Jun  5 20:11:16 IST 2026
[2026-06-05 20:11:16,326.326 INFO    ] ================================================
[2026-06-05 20:11:16,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:11:16
[2026-06-05 20:11:17,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:11:17,744.744 INFO    ] Initializing speech engine...
[2026-06-05 20:11:17,753.753 INFO    ] 2026-06-05 20:11:17
[2026-06-05 20:11:17,997.997 INFO    ] 2026-06-05 20:11:17
[2026-06-05 20:11:18,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:11:18,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:11:18,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:11:18,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:11:18,473.473 INFO    ] time= 05/06/2026 20:11:18
[2026-06-05 20:11:18,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:11:18,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:11:18,677.677 INFO    ] No existing commands found in stream
[2026-06-05 20:11:23,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:11:23,710.710 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 20:11:25,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:11:25,825.825 INFO    ] Checking for system updates...
[2026-06-05 20:11:25,862.862 INFO    ] 200
[2026-06-05 20:11:25,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:25,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:11:25,921.921 INFO    ] No update needed
[2026-06-05 20:11:25,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 20:11:25,957.957 INFO    ] 200
[2026-06-05 20:11:25,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:26,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:11:26,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:11:26,050.050 INFO    ] No camera update needed
[2026-06-05 20:11:26,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:11:26,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:11:26,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:11:26,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:11:28,105.105 INFO    ] ================================================
[2026-06-05 20:11:28,122.122 INFO    ] Launching Daemon at Fri Jun  5 20:11:28 IST 2026
[2026-06-05 20:11:28,133.133 INFO    ] ================================================
[2026-06-05 20:11:28,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:11:28
[2026-06-05 20:11:29,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:11:29,590.590 INFO    ] Initializing speech engine...
[2026-06-05 20:11:29,600.600 INFO    ] 2026-06-05 20:11:29
[2026-06-05 20:11:29,847.847 INFO    ] 2026-06-05 20:11:29
[2026-06-05 20:11:29,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:11:30,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:11:30,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:11:30,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:11:30,346.346 INFO    ] time= 05/06/2026 20:11:30
[2026-06-05 20:11:30,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:11:30,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:11:30,559.559 INFO    ] No existing commands found in stream
[2026-06-05 20:11:35,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:11:35,574.574 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 20:11:38,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:11:38,831.831 INFO    ] Checking for system updates...
[2026-06-05 20:11:38,868.868 INFO    ] 200
[2026-06-05 20:11:38,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:38,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:11:38,927.927 INFO    ] No update needed
[2026-06-05 20:11:38,929.929 INFO    ] Checking for camera pi updates...
[2026-06-05 20:11:38,963.963 INFO    ] 200
[2026-06-05 20:11:38,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:39,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:11:39,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:11:39,157.157 INFO    ] No camera update needed
[2026-06-05 20:11:39,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:11:39,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:11:39,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:11:39,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:11:41,214.214 INFO    ] ================================================
[2026-06-05 20:11:41,230.230 INFO    ] Launching Daemon at Fri Jun  5 20:11:41 IST 2026
[2026-06-05 20:11:41,241.241 INFO    ] ================================================
[2026-06-05 20:11:41,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:11:41
[2026-06-05 20:11:42,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:11:42,666.666 INFO    ] Initializing speech engine...
[2026-06-05 20:11:42,685.685 INFO    ] 2026-06-05 20:11:42
[2026-06-05 20:11:42,933.933 INFO    ] 2026-06-05 20:11:42
[2026-06-05 20:11:42,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:11:44,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:11:44,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:11:44,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:11:44,283.283 INFO    ] time= 05/06/2026 20:11:44
[2026-06-05 20:11:44,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:11:44,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:11:44,372.372 INFO    ] No existing commands found in stream
[2026-06-05 20:11:49,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:11:49,386.386 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 20:11:52,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:11:52,443.443 INFO    ] Checking for system updates...
[2026-06-05 20:11:52,481.481 INFO    ] 200
[2026-06-05 20:11:52,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:52,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:11:52,547.547 INFO    ] No update needed
[2026-06-05 20:11:52,549.549 INFO    ] Checking for camera pi updates...
[2026-06-05 20:11:52,584.584 INFO    ] 200
[2026-06-05 20:11:52,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:11:52,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:11:52,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:11:52,684.684 INFO    ] No camera update needed
[2026-06-05 20:11:52,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:11:52,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:11:52,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:11:52,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:11:54,740.740 INFO    ] ================================================
[2026-06-05 20:11:54,756.756 INFO    ] Launching Daemon at Fri Jun  5 20:11:54 IST 2026
[2026-06-05 20:11:54,767.767 INFO    ] ================================================
[2026-06-05 20:11:55,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:11:55
[2026-06-05 20:11:56,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:11:56,414.414 INFO    ] Initializing speech engine...
[2026-06-05 20:11:56,426.426 INFO    ] 2026-06-05 20:11:56
[2026-06-05 20:11:56,709.709 INFO    ] 2026-06-05 20:11:56
[2026-06-05 20:11:56,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:11:56,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:11:56,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:11:57,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:11:57,256.256 INFO    ] time= 05/06/2026 20:11:57
[2026-06-05 20:11:57,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:11:57,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:11:57,432.432 INFO    ] No existing commands found in stream
[2026-06-05 20:12:02,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:12:02,461.461 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 20:12:04,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:12:04,848.848 INFO    ] Checking for system updates...
[2026-06-05 20:12:04,889.889 INFO    ] 200
[2026-06-05 20:12:04,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:04,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:12:04,947.947 INFO    ] No update needed
[2026-06-05 20:12:04,949.949 INFO    ] Checking for camera pi updates...
[2026-06-05 20:12:04,984.984 INFO    ] 200
[2026-06-05 20:12:04,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:05,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:12:05,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:12:05,079.079 INFO    ] No camera update needed
[2026-06-05 20:12:05,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:12:05,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:12:05,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:12:05,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:12:07,136.136 INFO    ] ================================================
[2026-06-05 20:12:07,151.151 INFO    ] Launching Daemon at Fri Jun  5 20:12:07 IST 2026
[2026-06-05 20:12:07,162.162 INFO    ] ================================================
[2026-06-05 20:12:07,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:12:07
[2026-06-05 20:12:08,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:12:08,736.736 INFO    ] Initializing speech engine...
[2026-06-05 20:12:08,743.743 INFO    ] 2026-06-05 20:12:08
[2026-06-05 20:12:09,029.029 INFO    ] 2026-06-05 20:12:09
[2026-06-05 20:12:09,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:12:09,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:12:09,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:12:09,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:12:09,506.506 INFO    ] time= 05/06/2026 20:12:09
[2026-06-05 20:12:09,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:12:09,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:12:09,716.716 INFO    ] No existing commands found in stream
[2026-06-05 20:12:14,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:12:14,740.740 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 20:12:16,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:12:16,371.371 INFO    ] Checking for system updates...
[2026-06-05 20:12:16,407.407 INFO    ] 200
[2026-06-05 20:12:16,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:16,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:12:16,464.464 INFO    ] No update needed
[2026-06-05 20:12:16,467.467 INFO    ] Checking for camera pi updates...
[2026-06-05 20:12:16,504.504 INFO    ] 200
[2026-06-05 20:12:16,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:16,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:12:16,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:12:16,602.602 INFO    ] No camera update needed
[2026-06-05 20:12:16,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:12:16,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:12:16,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:12:16,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:12:18,660.660 INFO    ] ================================================
[2026-06-05 20:12:18,677.677 INFO    ] Launching Daemon at Fri Jun  5 20:12:18 IST 2026
[2026-06-05 20:12:18,687.687 INFO    ] ================================================
[2026-06-05 20:12:19,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:12:19
[2026-06-05 20:12:19,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:12:20,142.142 INFO    ] Initializing speech engine...
[2026-06-05 20:12:20,151.151 INFO    ] 2026-06-05 20:12:20
[2026-06-05 20:12:20,397.397 INFO    ] 2026-06-05 20:12:20
[2026-06-05 20:12:20,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:12:20,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:12:20,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:12:20,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:12:20,893.893 INFO    ] time= 05/06/2026 20:12:20
[2026-06-05 20:12:20,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:12:20,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:12:21,142.142 INFO    ] No existing commands found in stream
[2026-06-05 20:12:26,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:12:26,159.159 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 20:12:27,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:12:27,703.703 INFO    ] Checking for system updates...
[2026-06-05 20:12:27,743.743 INFO    ] 200
[2026-06-05 20:12:27,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:27,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:12:27,808.808 INFO    ] No update needed
[2026-06-05 20:12:27,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 20:12:27,844.844 INFO    ] 200
[2026-06-05 20:12:27,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:27,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:12:27,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:12:27,936.936 INFO    ] No camera update needed
[2026-06-05 20:12:27,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:12:27,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:12:27,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:12:27,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:12:29,991.991 INFO    ] ================================================
[2026-06-05 20:12:30,006.006 INFO    ] Launching Daemon at Fri Jun  5 20:12:30 IST 2026
[2026-06-05 20:12:30,017.017 INFO    ] ================================================
[2026-06-05 20:12:30,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:12:30
[2026-06-05 20:12:31,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:12:31,469.469 INFO    ] Initializing speech engine...
[2026-06-05 20:12:31,495.495 INFO    ] 2026-06-05 20:12:31
[2026-06-05 20:12:31,817.817 INFO    ] 2026-06-05 20:12:31
[2026-06-05 20:12:31,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:12:32,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:12:32,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:12:32,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:12:32,225.225 INFO    ] time= 05/06/2026 20:12:32
[2026-06-05 20:12:32,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:12:32,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:12:32,398.398 INFO    ] No existing commands found in stream
[2026-06-05 20:12:37,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:12:37,427.427 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-05 20:12:39,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:12:39,083.083 INFO    ] Checking for system updates...
[2026-06-05 20:12:39,122.122 INFO    ] 200
[2026-06-05 20:12:39,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:39,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:12:39,186.186 INFO    ] No update needed
[2026-06-05 20:12:39,188.188 INFO    ] Checking for camera pi updates...
[2026-06-05 20:12:39,223.223 INFO    ] 200
[2026-06-05 20:12:39,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:39,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:12:39,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:12:39,310.310 INFO    ] No camera update needed
[2026-06-05 20:12:39,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:12:39,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:12:39,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:12:39,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:12:41,367.367 INFO    ] ================================================
[2026-06-05 20:12:41,383.383 INFO    ] Launching Daemon at Fri Jun  5 20:12:41 IST 2026
[2026-06-05 20:12:41,394.394 INFO    ] ================================================
[2026-06-05 20:12:41,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:12:41
[2026-06-05 20:12:42,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:12:42,820.820 INFO    ] Initializing speech engine...
[2026-06-05 20:12:42,830.830 INFO    ] 2026-06-05 20:12:42
[2026-06-05 20:12:43,079.079 INFO    ] 2026-06-05 20:12:43
[2026-06-05 20:12:43,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:12:45,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:12:45,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:12:45,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:12:45,479.479 INFO    ] time= 05/06/2026 20:12:45
[2026-06-05 20:12:45,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:12:45,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:12:45,568.568 INFO    ] No existing commands found in stream
[2026-06-05 20:12:50,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:12:50,587.587 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 20:12:51,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:12:51,901.901 INFO    ] Checking for system updates...
[2026-06-05 20:12:51,937.937 INFO    ] 200
[2026-06-05 20:12:51,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:51,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:12:51,995.995 INFO    ] No update needed
[2026-06-05 20:12:51,998.998 INFO    ] Checking for camera pi updates...
[2026-06-05 20:12:52,032.032 INFO    ] 200
[2026-06-05 20:12:52,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:12:52,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:12:52,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:12:52,121.121 INFO    ] No camera update needed
[2026-06-05 20:12:52,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:12:52,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:12:52,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:12:52,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:12:54,177.177 INFO    ] ================================================
[2026-06-05 20:12:54,192.192 INFO    ] Launching Daemon at Fri Jun  5 20:12:54 IST 2026
[2026-06-05 20:12:54,202.202 INFO    ] ================================================
[2026-06-05 20:12:54,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:12:54
[2026-06-05 20:12:55,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:12:55,802.802 INFO    ] Initializing speech engine...
[2026-06-05 20:12:55,808.808 INFO    ] 2026-06-05 20:12:55
[2026-06-05 20:12:56,074.074 INFO    ] 2026-06-05 20:12:56
[2026-06-05 20:12:56,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:12:56,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:12:56,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:12:56,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:12:56,601.601 INFO    ] time= 05/06/2026 20:12:56
[2026-06-05 20:12:56,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:12:56,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:12:56,809.809 INFO    ] No existing commands found in stream
[2026-06-05 20:13:01,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:13:01,826.826 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-05 20:13:06,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:13:06,035.035 INFO    ] Checking for system updates...
[2026-06-05 20:13:06,083.083 INFO    ] 200
[2026-06-05 20:13:06,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:06,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:06,141.141 INFO    ] No update needed
[2026-06-05 20:13:06,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 20:13:06,178.178 INFO    ] 200
[2026-06-05 20:13:06,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:06,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:13:06,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:06,256.256 INFO    ] No camera update needed
[2026-06-05 20:13:06,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:13:06,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:13:06,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:13:06,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:13:08,312.312 INFO    ] ================================================
[2026-06-05 20:13:08,327.327 INFO    ] Launching Daemon at Fri Jun  5 20:13:08 IST 2026
[2026-06-05 20:13:08,338.338 INFO    ] ================================================
[2026-06-05 20:13:08,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:13:08
[2026-06-05 20:13:09,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:13:09,894.894 INFO    ] Initializing speech engine...
[2026-06-05 20:13:09,907.907 INFO    ] 2026-06-05 20:13:09
[2026-06-05 20:13:10,191.191 INFO    ] 2026-06-05 20:13:10
[2026-06-05 20:13:10,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:13:10,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:13:10,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:13:10,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:13:10,669.669 INFO    ] time= 05/06/2026 20:13:10
[2026-06-05 20:13:10,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:13:10,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:13:10,882.882 INFO    ] No existing commands found in stream
[2026-06-05 20:13:15,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:13:15,915.915 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 20:13:17,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:13:17,897.897 INFO    ] Checking for system updates...
[2026-06-05 20:13:17,939.939 INFO    ] 200
[2026-06-05 20:13:17,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:18,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:18,005.005 INFO    ] No update needed
[2026-06-05 20:13:18,008.008 INFO    ] Checking for camera pi updates...
[2026-06-05 20:13:18,044.044 INFO    ] 200
[2026-06-05 20:13:18,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:18,089.089 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:13:18,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:18,138.138 INFO    ] No camera update needed
[2026-06-05 20:13:18,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:13:18,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:13:18,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:13:18,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:13:20,197.197 INFO    ] ================================================
[2026-06-05 20:13:20,214.214 INFO    ] Launching Daemon at Fri Jun  5 20:13:20 IST 2026
[2026-06-05 20:13:20,226.226 INFO    ] ================================================
[2026-06-05 20:13:20,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:13:20
[2026-06-05 20:13:21,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:13:21,823.823 INFO    ] Initializing speech engine...
[2026-06-05 20:13:21,830.830 INFO    ] 2026-06-05 20:13:21
[2026-06-05 20:13:22,091.091 INFO    ] 2026-06-05 20:13:22
[2026-06-05 20:13:22,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:13:22,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:13:22,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:13:22,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:13:22,608.608 INFO    ] time= 05/06/2026 20:13:22
[2026-06-05 20:13:22,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:13:22,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:13:22,797.797 INFO    ] No existing commands found in stream
[2026-06-05 20:13:27,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:13:27,822.822 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 20:13:28,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:13:28,590.590 INFO    ] Checking for system updates...
[2026-06-05 20:13:28,628.628 INFO    ] 200
[2026-06-05 20:13:28,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:28,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:28,696.696 INFO    ] No update needed
[2026-06-05 20:13:28,699.699 INFO    ] Checking for camera pi updates...
[2026-06-05 20:13:28,739.739 INFO    ] 200
[2026-06-05 20:13:28,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:28,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:13:28,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:28,834.834 INFO    ] No camera update needed
[2026-06-05 20:13:28,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:13:28,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:13:28,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:13:28,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:13:30,894.894 INFO    ] ================================================
[2026-06-05 20:13:30,909.909 INFO    ] Launching Daemon at Fri Jun  5 20:13:30 IST 2026
[2026-06-05 20:13:30,921.921 INFO    ] ================================================
[2026-06-05 20:13:31,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:13:31
[2026-06-05 20:13:32,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:13:32,436.436 INFO    ] Initializing speech engine...
[2026-06-05 20:13:32,448.448 INFO    ] 2026-06-05 20:13:32
[2026-06-05 20:13:32,720.720 INFO    ] 2026-06-05 20:13:32
[2026-06-05 20:13:32,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:13:32,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:13:32,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:13:33,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:13:33,096.096 INFO    ] time= 05/06/2026 20:13:33
[2026-06-05 20:13:33,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:13:33,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:13:33,281.281 INFO    ] No existing commands found in stream
[2026-06-05 20:13:38,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:13:38,304.304 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 20:13:38,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:13:38,825.825 INFO    ] Checking for system updates...
[2026-06-05 20:13:38,865.865 INFO    ] 200
[2026-06-05 20:13:38,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:38,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:38,930.930 INFO    ] No update needed
[2026-06-05 20:13:38,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 20:13:38,968.968 INFO    ] 200
[2026-06-05 20:13:38,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:39,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:13:39,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:39,058.058 INFO    ] No camera update needed
[2026-06-05 20:13:39,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:13:39,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:13:39,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:13:39,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:13:41,115.115 INFO    ] ================================================
[2026-06-05 20:13:41,131.131 INFO    ] Launching Daemon at Fri Jun  5 20:13:41 IST 2026
[2026-06-05 20:13:41,142.142 INFO    ] ================================================
[2026-06-05 20:13:41,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:13:41
[2026-06-05 20:13:42,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:13:42,698.698 INFO    ] Initializing speech engine...
[2026-06-05 20:13:42,710.710 INFO    ] 2026-06-05 20:13:42
[2026-06-05 20:13:42,993.993 INFO    ] 2026-06-05 20:13:42
[2026-06-05 20:13:43,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:13:46,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:13:46,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:13:46,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:13:46,267.267 INFO    ] time= 05/06/2026 20:13:46
[2026-06-05 20:13:46,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:13:46,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:13:46,332.332 INFO    ] No existing commands found in stream
[2026-06-05 20:13:51,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:13:51,346.346 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 20:13:55,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:13:55,472.472 INFO    ] Checking for system updates...
[2026-06-05 20:13:55,514.514 INFO    ] 200
[2026-06-05 20:13:55,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:55,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:55,583.583 INFO    ] No update needed
[2026-06-05 20:13:55,586.586 INFO    ] Checking for camera pi updates...
[2026-06-05 20:13:55,621.621 INFO    ] 200
[2026-06-05 20:13:55,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:13:55,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:13:55,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:13:55,818.818 INFO    ] No camera update needed
[2026-06-05 20:13:55,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:13:55,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:13:55,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:13:55,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:13:57,880.880 INFO    ] ================================================
[2026-06-05 20:13:57,896.896 INFO    ] Launching Daemon at Fri Jun  5 20:13:57 IST 2026
[2026-06-05 20:13:57,908.908 INFO    ] ================================================
[2026-06-05 20:13:58,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:13:58
[2026-06-05 20:13:59,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:13:59,317.317 INFO    ] Initializing speech engine...
[2026-06-05 20:13:59,329.329 INFO    ] 2026-06-05 20:13:59
[2026-06-05 20:13:59,591.591 INFO    ] 2026-06-05 20:13:59
[2026-06-05 20:13:59,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:13:59,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:13:59,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:14:00,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:14:00,066.066 INFO    ] time= 05/06/2026 20:14:00
[2026-06-05 20:14:00,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:14:00,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:14:00,295.295 INFO    ] No existing commands found in stream
[2026-06-05 20:14:05,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:14:05,313.313 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 20:14:07,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:14:07,787.787 INFO    ] Checking for system updates...
[2026-06-05 20:14:07,823.823 INFO    ] 200
[2026-06-05 20:14:07,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:07,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:14:07,881.881 INFO    ] No update needed
[2026-06-05 20:14:07,884.884 INFO    ] Checking for camera pi updates...
[2026-06-05 20:14:07,917.917 INFO    ] 200
[2026-06-05 20:14:07,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:07,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:14:08,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:14:08,003.003 INFO    ] No camera update needed
[2026-06-05 20:14:08,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:14:08,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:14:08,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:14:08,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:14:10,060.060 INFO    ] ================================================
[2026-06-05 20:14:10,076.076 INFO    ] Launching Daemon at Fri Jun  5 20:14:10 IST 2026
[2026-06-05 20:14:10,088.088 INFO    ] ================================================
[2026-06-05 20:14:10,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:14:10
[2026-06-05 20:14:11,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:14:11,495.495 INFO    ] Initializing speech engine...
[2026-06-05 20:14:11,502.502 INFO    ] 2026-06-05 20:14:11
[2026-06-05 20:14:11,798.798 INFO    ] 2026-06-05 20:14:11
[2026-06-05 20:14:11,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:14:12,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:14:12,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:14:12,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:14:12,172.172 INFO    ] time= 05/06/2026 20:14:12
[2026-06-05 20:14:12,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:14:12,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:14:12,295.295 INFO    ] No existing commands found in stream
[2026-06-05 20:14:17,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:14:17,310.310 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 20:14:18,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:14:18,829.829 INFO    ] Checking for system updates...
[2026-06-05 20:14:18,868.868 INFO    ] 200
[2026-06-05 20:14:18,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:18,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:14:18,925.925 INFO    ] No update needed
[2026-06-05 20:14:18,928.928 INFO    ] Checking for camera pi updates...
[2026-06-05 20:14:18,961.961 INFO    ] 200
[2026-06-05 20:14:18,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:19,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:14:19,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:14:19,047.047 INFO    ] No camera update needed
[2026-06-05 20:14:19,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:14:19,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:14:19,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:14:19,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:14:21,104.104 INFO    ] ================================================
[2026-06-05 20:14:21,120.120 INFO    ] Launching Daemon at Fri Jun  5 20:14:21 IST 2026
[2026-06-05 20:14:21,131.131 INFO    ] ================================================
[2026-06-05 20:14:21,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:14:21
[2026-06-05 20:14:22,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:14:22,736.736 INFO    ] Initializing speech engine...
[2026-06-05 20:14:22,750.750 INFO    ] 2026-06-05 20:14:22
[2026-06-05 20:14:23,027.027 INFO    ] 2026-06-05 20:14:23
[2026-06-05 20:14:23,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:14:23,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:14:23,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:14:23,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:14:23,562.562 INFO    ] time= 05/06/2026 20:14:23
[2026-06-05 20:14:23,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:14:23,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:14:23,721.721 INFO    ] No existing commands found in stream
[2026-06-05 20:14:28,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:14:28,743.743 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 20:14:30,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:14:30,337.337 INFO    ] Checking for system updates...
[2026-06-05 20:14:30,373.373 INFO    ] 200
[2026-06-05 20:14:30,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:30,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:14:30,432.432 INFO    ] No update needed
[2026-06-05 20:14:30,434.434 INFO    ] Checking for camera pi updates...
[2026-06-05 20:14:30,469.469 INFO    ] 200
[2026-06-05 20:14:30,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:30,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:14:30,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:14:30,564.564 INFO    ] No camera update needed
[2026-06-05 20:14:30,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:14:30,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:14:30,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:14:30,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:14:32,621.621 INFO    ] ================================================
[2026-06-05 20:14:32,643.643 INFO    ] Launching Daemon at Fri Jun  5 20:14:32 IST 2026
[2026-06-05 20:14:32,655.655 INFO    ] ================================================
[2026-06-05 20:14:33,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:14:33
[2026-06-05 20:14:33,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:14:34,083.083 INFO    ] Initializing speech engine...
[2026-06-05 20:14:34,106.106 INFO    ] 2026-06-05 20:14:34
[2026-06-05 20:14:34,360.360 INFO    ] 2026-06-05 20:14:34
[2026-06-05 20:14:34,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:14:34,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:14:34,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:14:34,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:14:34,756.756 INFO    ] time= 05/06/2026 20:14:34
[2026-06-05 20:14:34,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:14:34,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:14:34,840.840 INFO    ] No existing commands found in stream
[2026-06-05 20:14:39,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:14:39,854.854 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 20:14:41,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:14:41,836.836 INFO    ] Checking for system updates...
[2026-06-05 20:14:41,872.872 INFO    ] 200
[2026-06-05 20:14:41,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:41,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:14:41,930.930 INFO    ] No update needed
[2026-06-05 20:14:41,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 20:14:41,966.966 INFO    ] 200
[2026-06-05 20:14:41,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:42,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:14:42,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:14:42,054.054 INFO    ] No camera update needed
[2026-06-05 20:14:42,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:14:42,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:14:42,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:14:42,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:14:44,110.110 INFO    ] ================================================
[2026-06-05 20:14:44,126.126 INFO    ] Launching Daemon at Fri Jun  5 20:14:44 IST 2026
[2026-06-05 20:14:44,137.137 INFO    ] ================================================
[2026-06-05 20:14:44,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:14:44
[2026-06-05 20:14:45,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:14:45,761.761 INFO    ] Initializing speech engine...
[2026-06-05 20:14:45,770.770 INFO    ] 2026-06-05 20:14:45
[2026-06-05 20:14:46,070.070 INFO    ] 2026-06-05 20:14:46
[2026-06-05 20:14:46,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:14:47,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:14:47,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:14:48,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:14:48,010.010 INFO    ] time= 05/06/2026 20:14:48
[2026-06-05 20:14:48,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:14:48,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:14:48,122.122 INFO    ] No existing commands found in stream
[2026-06-05 20:14:53,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:14:53,137.137 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 20:14:54,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:14:54,088.088 INFO    ] Checking for system updates...
[2026-06-05 20:14:54,130.130 INFO    ] 200
[2026-06-05 20:14:54,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:54,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:14:54,195.195 INFO    ] No update needed
[2026-06-05 20:14:54,198.198 INFO    ] Checking for camera pi updates...
[2026-06-05 20:14:54,233.233 INFO    ] 200
[2026-06-05 20:14:54,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:14:54,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:14:54,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:14:54,320.320 INFO    ] No camera update needed
[2026-06-05 20:14:54,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:14:54,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:14:54,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:14:54,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:14:56,378.378 INFO    ] ================================================
[2026-06-05 20:14:56,393.393 INFO    ] Launching Daemon at Fri Jun  5 20:14:56 IST 2026
[2026-06-05 20:14:56,405.405 INFO    ] ================================================
[2026-06-05 20:14:57,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:14:57
[2026-06-05 20:14:57,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:14:57,896.896 INFO    ] Initializing speech engine...
[2026-06-05 20:14:57,917.917 INFO    ] 2026-06-05 20:14:57
[2026-06-05 20:14:58,177.177 INFO    ] 2026-06-05 20:14:58
[2026-06-05 20:14:58,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:14:58,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:14:58,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:14:58,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:14:58,729.729 INFO    ] time= 05/06/2026 20:14:58
[2026-06-05 20:14:58,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:14:58,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:14:58,892.892 INFO    ] No existing commands found in stream
[2026-06-05 20:15:03,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:15:03,917.917 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 20:15:06,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:15:06,680.680 INFO    ] Checking for system updates...
[2026-06-05 20:15:06,717.717 INFO    ] 200
[2026-06-05 20:15:06,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:06,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:15:06,776.776 INFO    ] No update needed
[2026-06-05 20:15:06,779.779 INFO    ] Checking for camera pi updates...
[2026-06-05 20:15:06,815.815 INFO    ] 200
[2026-06-05 20:15:06,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:06,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:15:06,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:15:06,899.899 INFO    ] No camera update needed
[2026-06-05 20:15:06,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:15:06,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:15:06,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:15:06,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:15:08,961.961 INFO    ] ================================================
[2026-06-05 20:15:08,977.977 INFO    ] Launching Daemon at Fri Jun  5 20:15:08 IST 2026
[2026-06-05 20:15:08,989.989 INFO    ] ================================================
[2026-06-05 20:15:09,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:15:09
[2026-06-05 20:15:10,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:15:10,459.459 INFO    ] Initializing speech engine...
[2026-06-05 20:15:10,466.466 INFO    ] 2026-06-05 20:15:10
[2026-06-05 20:15:10,727.727 INFO    ] 2026-06-05 20:15:10
[2026-06-05 20:15:10,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:15:11,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:15:11,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:15:11,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:15:11,187.187 INFO    ] time= 05/06/2026 20:15:11
[2026-06-05 20:15:11,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:15:11,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:15:11,400.400 INFO    ] No existing commands found in stream
[2026-06-05 20:15:16,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:15:16,428.428 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 20:15:20,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:15:20,424.424 INFO    ] Checking for system updates...
[2026-06-05 20:15:20,460.460 INFO    ] 200
[2026-06-05 20:15:20,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:20,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:15:20,518.518 INFO    ] No update needed
[2026-06-05 20:15:20,520.520 INFO    ] Checking for camera pi updates...
[2026-06-05 20:15:20,554.554 INFO    ] 200
[2026-06-05 20:15:20,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:20,598.598 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:15:20,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:15:20,651.651 INFO    ] No camera update needed
[2026-06-05 20:15:20,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:15:20,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:15:20,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:15:20,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:15:22,707.707 INFO    ] ================================================
[2026-06-05 20:15:22,723.723 INFO    ] Launching Daemon at Fri Jun  5 20:15:22 IST 2026
[2026-06-05 20:15:22,734.734 INFO    ] ================================================
[2026-06-05 20:15:23,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:15:23
[2026-06-05 20:15:23,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:15:24,166.166 INFO    ] Initializing speech engine...
[2026-06-05 20:15:24,175.175 INFO    ] 2026-06-05 20:15:24
[2026-06-05 20:15:24,421.421 INFO    ] 2026-06-05 20:15:24
[2026-06-05 20:15:24,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:15:24,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:15:24,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:15:24,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:15:24,905.905 INFO    ] time= 05/06/2026 20:15:24
[2026-06-05 20:15:24,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:15:24,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:15:25,124.124 INFO    ] No existing commands found in stream
[2026-06-05 20:15:30,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:15:30,143.143 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 20:15:33,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:15:33,170.170 INFO    ] Checking for system updates...
[2026-06-05 20:15:33,209.209 INFO    ] 200
[2026-06-05 20:15:33,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:33,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:15:33,281.281 INFO    ] No update needed
[2026-06-05 20:15:33,283.283 INFO    ] Checking for camera pi updates...
[2026-06-05 20:15:33,318.318 INFO    ] 200
[2026-06-05 20:15:33,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:33,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:15:33,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:15:33,413.413 INFO    ] No camera update needed
[2026-06-05 20:15:33,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:15:33,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:15:33,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:15:33,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:15:35,476.476 INFO    ] ================================================
[2026-06-05 20:15:35,492.492 INFO    ] Launching Daemon at Fri Jun  5 20:15:35 IST 2026
[2026-06-05 20:15:35,504.504 INFO    ] ================================================
[2026-06-05 20:15:36,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:15:36
[2026-06-05 20:15:36,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:15:36,919.919 INFO    ] Initializing speech engine...
[2026-06-05 20:15:36,934.934 INFO    ] 2026-06-05 20:15:36
[2026-06-05 20:15:37,204.204 INFO    ] 2026-06-05 20:15:37
[2026-06-05 20:15:37,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:15:37,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:15:37,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:15:37,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:15:37,586.586 INFO    ] time= 05/06/2026 20:15:37
[2026-06-05 20:15:37,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:15:37,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:15:37,784.784 INFO    ] No existing commands found in stream
[2026-06-05 20:15:42,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:15:42,797.797 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 20:15:45,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:15:45,532.532 INFO    ] Checking for system updates...
[2026-06-05 20:15:45,569.569 INFO    ] 200
[2026-06-05 20:15:45,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:45,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:15:45,632.632 INFO    ] No update needed
[2026-06-05 20:15:45,635.635 INFO    ] Checking for camera pi updates...
[2026-06-05 20:15:45,668.668 INFO    ] 200
[2026-06-05 20:15:45,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:45,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:15:45,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:15:45,760.760 INFO    ] No camera update needed
[2026-06-05 20:15:45,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:15:45,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:15:45,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:15:45,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:15:47,815.815 INFO    ] ================================================
[2026-06-05 20:15:47,831.831 INFO    ] Launching Daemon at Fri Jun  5 20:15:47 IST 2026
[2026-06-05 20:15:47,842.842 INFO    ] ================================================
[2026-06-05 20:15:48,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:15:48
[2026-06-05 20:15:49,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:15:49,458.458 INFO    ] Initializing speech engine...
[2026-06-05 20:15:49,463.463 INFO    ] 2026-06-05 20:15:49
[2026-06-05 20:15:49,735.735 INFO    ] 2026-06-05 20:15:49
[2026-06-05 20:15:49,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:15:50,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:15:50,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:15:50,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:15:50,199.199 INFO    ] time= 05/06/2026 20:15:50
[2026-06-05 20:15:50,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:15:50,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:15:50,405.405 INFO    ] No existing commands found in stream
[2026-06-05 20:15:55,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:15:55,444.444 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 20:15:56,982.982 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:15:56,985.985 INFO    ] Checking for system updates...
[2026-06-05 20:15:57,021.021 INFO    ] 200
[2026-06-05 20:15:57,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:57,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:15:57,079.079 INFO    ] No update needed
[2026-06-05 20:15:57,081.081 INFO    ] Checking for camera pi updates...
[2026-06-05 20:15:57,114.114 INFO    ] 200
[2026-06-05 20:15:57,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:15:57,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:15:57,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:15:57,311.311 INFO    ] No camera update needed
[2026-06-05 20:15:57,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:15:57,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:15:57,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:15:57,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:15:59,367.367 INFO    ] ================================================
[2026-06-05 20:15:59,383.383 INFO    ] Launching Daemon at Fri Jun  5 20:15:59 IST 2026
[2026-06-05 20:15:59,393.393 INFO    ] ================================================
[2026-06-05 20:16:00,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:16:00
[2026-06-05 20:16:00,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:16:01,022.022 INFO    ] Initializing speech engine...
[2026-06-05 20:16:01,030.030 INFO    ] 2026-06-05 20:16:01
[2026-06-05 20:16:01,306.306 INFO    ] 2026-06-05 20:16:01
[2026-06-05 20:16:01,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:16:01,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:16:01,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:16:01,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:16:01,768.768 INFO    ] time= 05/06/2026 20:16:01
[2026-06-05 20:16:01,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:16:01,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:16:01,859.859 INFO    ] No existing commands found in stream
[2026-06-05 20:16:06,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:16:06,874.874 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 20:16:10,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:16:10,634.634 INFO    ] Checking for system updates...
[2026-06-05 20:16:10,670.670 INFO    ] 200
[2026-06-05 20:16:10,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:10,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:16:10,729.729 INFO    ] No update needed
[2026-06-05 20:16:10,732.732 INFO    ] Checking for camera pi updates...
[2026-06-05 20:16:10,766.766 INFO    ] 200
[2026-06-05 20:16:10,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:10,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:16:10,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:16:10,851.851 INFO    ] No camera update needed
[2026-06-05 20:16:10,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:16:10,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:16:10,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:16:10,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:16:12,907.907 INFO    ] ================================================
[2026-06-05 20:16:12,922.922 INFO    ] Launching Daemon at Fri Jun  5 20:16:12 IST 2026
[2026-06-05 20:16:12,933.933 INFO    ] ================================================
[2026-06-05 20:16:13,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:16:13
[2026-06-05 20:16:14,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:16:14,540.540 INFO    ] Initializing speech engine...
[2026-06-05 20:16:14,546.546 INFO    ] 2026-06-05 20:16:14
[2026-06-05 20:16:14,842.842 INFO    ] 2026-06-05 20:16:14
[2026-06-05 20:16:14,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:16:15,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:16:15,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:16:15,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:16:15,300.300 INFO    ] time= 05/06/2026 20:16:15
[2026-06-05 20:16:15,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:16:15,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:16:15,532.532 INFO    ] No existing commands found in stream
[2026-06-05 20:16:20,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:16:20,558.558 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 20:16:22,723.723 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:16:22,726.726 INFO    ] Checking for system updates...
[2026-06-05 20:16:22,767.767 INFO    ] 200
[2026-06-05 20:16:22,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:22,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:16:22,827.827 INFO    ] No update needed
[2026-06-05 20:16:22,830.830 INFO    ] Checking for camera pi updates...
[2026-06-05 20:16:22,865.865 INFO    ] 200
[2026-06-05 20:16:22,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:22,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:16:22,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:16:22,954.954 INFO    ] No camera update needed
[2026-06-05 20:16:22,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:16:22,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:16:22,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:16:22,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:16:25,016.016 INFO    ] ================================================
[2026-06-05 20:16:25,032.032 INFO    ] Launching Daemon at Fri Jun  5 20:16:25 IST 2026
[2026-06-05 20:16:25,042.042 INFO    ] ================================================
[2026-06-05 20:16:25,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:16:25
[2026-06-05 20:16:26,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:16:26,481.481 INFO    ] Initializing speech engine...
[2026-06-05 20:16:26,503.503 INFO    ] 2026-06-05 20:16:26
[2026-06-05 20:16:26,770.770 INFO    ] 2026-06-05 20:16:26
[2026-06-05 20:16:26,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:16:26,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:16:26,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:16:27,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:16:27,125.125 INFO    ] time= 05/06/2026 20:16:27
[2026-06-05 20:16:27,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:16:27,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:16:27,207.207 INFO    ] No existing commands found in stream
[2026-06-05 20:16:32,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:16:32,220.220 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 20:16:34,668.668 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:16:34,670.670 INFO    ] Checking for system updates...
[2026-06-05 20:16:34,707.707 INFO    ] 200
[2026-06-05 20:16:34,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:34,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:16:34,766.766 INFO    ] No update needed
[2026-06-05 20:16:34,769.769 INFO    ] Checking for camera pi updates...
[2026-06-05 20:16:34,803.803 INFO    ] 200
[2026-06-05 20:16:34,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:34,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:16:34,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:16:34,894.894 INFO    ] No camera update needed
[2026-06-05 20:16:34,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:16:34,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:16:34,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:16:34,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:16:36,949.949 INFO    ] ================================================
[2026-06-05 20:16:36,965.965 INFO    ] Launching Daemon at Fri Jun  5 20:16:36 IST 2026
[2026-06-05 20:16:36,976.976 INFO    ] ================================================
[2026-06-05 20:16:37,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:16:37
[2026-06-05 20:16:38,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:16:38,394.394 INFO    ] Initializing speech engine...
[2026-06-05 20:16:38,401.401 INFO    ] 2026-06-05 20:16:38
[2026-06-05 20:16:38,704.704 INFO    ] 2026-06-05 20:16:38
[2026-06-05 20:16:38,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:16:39,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:16:39,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:16:39,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:16:39,542.542 INFO    ] time= 05/06/2026 20:16:39
[2026-06-05 20:16:39,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:16:39,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:16:39,794.794 INFO    ] No existing commands found in stream
[2026-06-05 20:16:44,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:16:44,821.821 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 20:16:46,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:16:46,386.386 INFO    ] Checking for system updates...
[2026-06-05 20:16:46,423.423 INFO    ] 200
[2026-06-05 20:16:46,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:46,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:16:46,484.484 INFO    ] No update needed
[2026-06-05 20:16:46,487.487 INFO    ] Checking for camera pi updates...
[2026-06-05 20:16:46,523.523 INFO    ] 200
[2026-06-05 20:16:46,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:46,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:16:46,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:16:46,623.623 INFO    ] No camera update needed
[2026-06-05 20:16:46,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:16:46,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:16:46,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:16:46,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:16:48,684.684 INFO    ] ================================================
[2026-06-05 20:16:48,699.699 INFO    ] Launching Daemon at Fri Jun  5 20:16:48 IST 2026
[2026-06-05 20:16:48,710.710 INFO    ] ================================================
[2026-06-05 20:16:49,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:16:49
[2026-06-05 20:16:49,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:16:50,177.177 INFO    ] Initializing speech engine...
[2026-06-05 20:16:50,186.186 INFO    ] 2026-06-05 20:16:50
[2026-06-05 20:16:50,449.449 INFO    ] 2026-06-05 20:16:50
[2026-06-05 20:16:50,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:16:50,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:16:50,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:16:50,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:16:50,998.998 INFO    ] time= 05/06/2026 20:16:50
[2026-06-05 20:16:51,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:16:51,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:16:51,152.152 INFO    ] No existing commands found in stream
[2026-06-05 20:16:56,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:16:56,176.176 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 20:16:57,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:16:57,901.901 INFO    ] Checking for system updates...
[2026-06-05 20:16:57,938.938 INFO    ] 200
[2026-06-05 20:16:57,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:57,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:16:58,001.001 INFO    ] No update needed
[2026-06-05 20:16:58,003.003 INFO    ] Checking for camera pi updates...
[2026-06-05 20:16:58,037.037 INFO    ] 200
[2026-06-05 20:16:58,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:16:58,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:16:58,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:16:58,125.125 INFO    ] No camera update needed
[2026-06-05 20:16:58,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:16:58,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:16:58,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:16:58,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:17:00,182.182 INFO    ] ================================================
[2026-06-05 20:17:00,198.198 INFO    ] Launching Daemon at Fri Jun  5 20:17:00 IST 2026
[2026-06-05 20:17:00,209.209 INFO    ] ================================================
[2026-06-05 20:17:00,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:17:00
[2026-06-05 20:17:01,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:17:01,637.637 INFO    ] Initializing speech engine...
[2026-06-05 20:17:01,647.647 INFO    ] 2026-06-05 20:17:01
[2026-06-05 20:17:02,110.110 INFO    ] 2026-06-05 20:17:02
[2026-06-05 20:17:02,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:17:02,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:17:02,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:17:02,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:17:02,490.490 INFO    ] time= 05/06/2026 20:17:02
[2026-06-05 20:17:02,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:17:02,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:17:02,557.557 INFO    ] No existing commands found in stream
[2026-06-05 20:17:07,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:17:07,607.607 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 20:17:11,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:17:11,855.855 INFO    ] Checking for system updates...
[2026-06-05 20:17:11,893.893 INFO    ] 200
[2026-06-05 20:17:11,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:17:11,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:17:11,954.954 INFO    ] No update needed
[2026-06-05 20:17:11,957.957 INFO    ] Checking for camera pi updates...
[2026-06-05 20:17:11,994.994 INFO    ] 200
[2026-06-05 20:17:11,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:17:12,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:17:12,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:17:12,091.091 INFO    ] No camera update needed
[2026-06-05 20:17:12,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:17:12,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:17:12,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:17:12,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:17:14,150.150 INFO    ] ================================================
[2026-06-05 20:17:14,166.166 INFO    ] Launching Daemon at Fri Jun  5 20:17:14 IST 2026
[2026-06-05 20:17:14,176.176 INFO    ] ================================================
[2026-06-05 20:17:14,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:17:14
[2026-06-05 20:17:15,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:17:15,579.579 INFO    ] Initializing speech engine...
[2026-06-05 20:17:15,602.602 INFO    ] 2026-06-05 20:17:15
[2026-06-05 20:17:15,854.854 INFO    ] 2026-06-05 20:17:15
[2026-06-05 20:17:15,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:17:16,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:17:16,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:17:16,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:17:16,342.342 INFO    ] time= 05/06/2026 20:17:16
[2026-06-05 20:17:16,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:17:16,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:17:16,535.535 INFO    ] No existing commands found in stream
[2026-06-05 20:17:21,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:17:21,560.560 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 20:17:25,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:17:25,176.176 INFO    ] Checking for system updates...
[2026-06-05 20:17:25,213.213 INFO    ] 200
[2026-06-05 20:17:25,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:17:25,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:17:25,271.271 INFO    ] No update needed
[2026-06-05 20:17:25,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 20:17:25,307.307 INFO    ] 200
[2026-06-05 20:17:25,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:17:25,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:17:25,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:17:25,401.401 INFO    ] No camera update needed
[2026-06-05 20:17:25,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:17:25,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:17:25,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:17:25,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:17:27,457.457 INFO    ] ================================================
[2026-06-05 20:17:27,472.472 INFO    ] Launching Daemon at Fri Jun  5 20:17:27 IST 2026
[2026-06-05 20:17:27,483.483 INFO    ] ================================================
[2026-06-05 20:17:28,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:17:28
[2026-06-05 20:17:28,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:17:28,992.992 INFO    ] Initializing speech engine...
[2026-06-05 20:17:29,005.005 INFO    ] 2026-06-05 20:17:28
[2026-06-05 20:17:29,273.273 INFO    ] 2026-06-05 20:17:29
[2026-06-05 20:17:29,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:17:29,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:17:29,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:17:29,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:17:29,820.820 INFO    ] time= 05/06/2026 20:17:29
[2026-06-05 20:17:29,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:17:29,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:17:29,979.979 INFO    ] No existing commands found in stream
[2026-06-05 20:17:35,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:17:35,011.011 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 20:17:39,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:17:39,018.018 INFO    ] Checking for system updates...
[2026-06-05 20:17:39,059.059 INFO    ] 200
[2026-06-05 20:17:39,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:17:39,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:17:39,118.118 INFO    ] No update needed
[2026-06-05 20:17:39,121.121 INFO    ] Checking for camera pi updates...
[2026-06-05 20:17:39,156.156 INFO    ] 200
[2026-06-05 20:17:39,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:17:39,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:17:39,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:17:39,248.248 INFO    ] No camera update needed
[2026-06-05 20:17:39,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:17:39,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:17:39,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:17:39,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:17:41,306.306 INFO    ] ================================================
[2026-06-05 20:17:41,321.321 INFO    ] Launching Daemon at Fri Jun  5 20:17:41 IST 2026
[2026-06-05 20:17:41,331.331 INFO    ] ================================================
[2026-06-05 20:17:41,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:17:41
[2026-06-05 20:17:42,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:17:42,790.790 INFO    ] Initializing speech engine...
[2026-06-05 20:17:42,800.800 INFO    ] 2026-06-05 20:17:42
[2026-06-05 20:17:43,056.056 INFO    ] 2026-06-05 20:17:43
[2026-06-05 20:17:43,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:17:43,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:17:43,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:17:43,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:17:43,531.531 INFO    ] time= 05/06/2026 20:17:43
[2026-06-05 20:17:43,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:17:43,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:17:43,670.670 INFO    ] No existing commands found in stream
[2026-06-05 20:17:48,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:17:48,685.685 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 20:17:50,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:17:50,354.354 INFO    ] Checking for system updates...
[2026-06-05 20:17:50,392.392 INFO    ] 200
[2026-06-05 20:17:50,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:17:50,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:17:50,452.452 INFO    ] No update needed
[2026-06-05 20:17:50,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 20:17:50,489.489 INFO    ] 200
[2026-06-05 20:17:50,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:17:50,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:17:50,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:17:50,578.578 INFO    ] No camera update needed
[2026-06-05 20:17:50,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:17:50,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:17:50,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:17:50,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:17:52,635.635 INFO    ] ================================================
[2026-06-05 20:17:52,650.650 INFO    ] Launching Daemon at Fri Jun  5 20:17:52 IST 2026
[2026-06-05 20:17:52,661.661 INFO    ] ================================================
[2026-06-05 20:17:53,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:17:53
[2026-06-05 20:17:53,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:17:54,081.081 INFO    ] Initializing speech engine...
[2026-06-05 20:17:54,097.097 INFO    ] 2026-06-05 20:17:54
[2026-06-05 20:17:54,380.380 INFO    ] 2026-06-05 20:17:54
[2026-06-05 20:17:54,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:17:54,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:17:54,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:17:54,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:17:54,879.879 INFO    ] time= 05/06/2026 20:17:54
[2026-06-05 20:17:54,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:17:54,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:17:55,072.072 INFO    ] No existing commands found in stream
[2026-06-05 20:18:00,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:18:00,087.087 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 20:18:02,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:18:02,462.462 INFO    ] Checking for system updates...
[2026-06-05 20:18:02,504.504 INFO    ] 200
[2026-06-05 20:18:02,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:02,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:18:02,574.574 INFO    ] No update needed
[2026-06-05 20:18:02,577.577 INFO    ] Checking for camera pi updates...
[2026-06-05 20:18:02,616.616 INFO    ] 200
[2026-06-05 20:18:02,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:02,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:18:02,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:18:02,716.716 INFO    ] No camera update needed
[2026-06-05 20:18:02,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:18:02,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:18:02,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:18:02,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:18:04,780.780 INFO    ] ================================================
[2026-06-05 20:18:04,795.795 INFO    ] Launching Daemon at Fri Jun  5 20:18:04 IST 2026
[2026-06-05 20:18:04,806.806 INFO    ] ================================================
[2026-06-05 20:18:05,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:18:05
[2026-06-05 20:18:06,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:18:06,287.287 INFO    ] Initializing speech engine...
[2026-06-05 20:18:06,296.296 INFO    ] 2026-06-05 20:18:06
[2026-06-05 20:18:06,577.577 INFO    ] 2026-06-05 20:18:06
[2026-06-05 20:18:06,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:18:06,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:18:06,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:18:06,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:18:06,938.938 INFO    ] time= 05/06/2026 20:18:06
[2026-06-05 20:18:06,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:18:06,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:18:07,039.039 INFO    ] No existing commands found in stream
[2026-06-05 20:18:12,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:18:12,077.077 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 20:18:15,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:18:15,971.971 INFO    ] Checking for system updates...
[2026-06-05 20:18:16,007.007 INFO    ] 200
[2026-06-05 20:18:16,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:16,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:18:16,067.067 INFO    ] No update needed
[2026-06-05 20:18:16,069.069 INFO    ] Checking for camera pi updates...
[2026-06-05 20:18:16,103.103 INFO    ] 200
[2026-06-05 20:18:16,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:16,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:18:16,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:18:16,187.187 INFO    ] No camera update needed
[2026-06-05 20:18:16,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:18:16,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:18:16,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:18:16,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:18:18,243.243 INFO    ] ================================================
[2026-06-05 20:18:18,258.258 INFO    ] Launching Daemon at Fri Jun  5 20:18:18 IST 2026
[2026-06-05 20:18:18,268.268 INFO    ] ================================================
[2026-06-05 20:18:18,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:18:18
[2026-06-05 20:18:19,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:18:19,696.696 INFO    ] Initializing speech engine...
[2026-06-05 20:18:19,709.709 INFO    ] 2026-06-05 20:18:19
[2026-06-05 20:18:19,959.959 INFO    ] 2026-06-05 20:18:19
[2026-06-05 20:18:19,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:18:20,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:18:20,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:18:20,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:18:20,405.405 INFO    ] time= 05/06/2026 20:18:20
[2026-06-05 20:18:20,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:18:20,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:18:20,592.592 INFO    ] No existing commands found in stream
[2026-06-05 20:18:25,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:18:25,606.606 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 20:18:28,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:18:28,987.987 INFO    ] Checking for system updates...
[2026-06-05 20:18:29,024.024 INFO    ] 200
[2026-06-05 20:18:29,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:29,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:18:29,081.081 INFO    ] No update needed
[2026-06-05 20:18:29,084.084 INFO    ] Checking for camera pi updates...
[2026-06-05 20:18:29,122.122 INFO    ] 200
[2026-06-05 20:18:29,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:29,166.166 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:18:29,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:18:29,220.220 INFO    ] No camera update needed
[2026-06-05 20:18:29,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:18:29,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:18:29,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:18:29,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:18:31,277.277 INFO    ] ================================================
[2026-06-05 20:18:31,296.296 INFO    ] Launching Daemon at Fri Jun  5 20:18:31 IST 2026
[2026-06-05 20:18:31,308.308 INFO    ] ================================================
[2026-06-05 20:18:31,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:18:31
[2026-06-05 20:18:32,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:18:33,048.048 INFO    ] Initializing speech engine...
[2026-06-05 20:18:33,058.058 INFO    ] 2026-06-05 20:18:33
[2026-06-05 20:18:33,404.404 INFO    ] 2026-06-05 20:18:33
[2026-06-05 20:18:33,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:18:33,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:18:33,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:18:33,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:18:33,858.858 INFO    ] time= 05/06/2026 20:18:33
[2026-06-05 20:18:33,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:18:33,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:18:34,086.086 INFO    ] No existing commands found in stream
[2026-06-05 20:18:39,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:18:39,118.118 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 20:18:40,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:18:40,955.955 INFO    ] Checking for system updates...
[2026-06-05 20:18:40,992.992 INFO    ] 200
[2026-06-05 20:18:40,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:41,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:18:41,050.050 INFO    ] No update needed
[2026-06-05 20:18:41,052.052 INFO    ] Checking for camera pi updates...
[2026-06-05 20:18:41,090.090 INFO    ] 200
[2026-06-05 20:18:41,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:41,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:18:41,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:18:41,178.178 INFO    ] No camera update needed
[2026-06-05 20:18:41,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:18:41,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:18:41,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:18:41,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:18:43,233.233 INFO    ] ================================================
[2026-06-05 20:18:43,249.249 INFO    ] Launching Daemon at Fri Jun  5 20:18:43 IST 2026
[2026-06-05 20:18:43,260.260 INFO    ] ================================================
[2026-06-05 20:18:43,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:18:43
[2026-06-05 20:18:44,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:18:44,679.679 INFO    ] Initializing speech engine...
[2026-06-05 20:18:44,696.696 INFO    ] 2026-06-05 20:18:44
[2026-06-05 20:18:44,949.949 INFO    ] 2026-06-05 20:18:44
[2026-06-05 20:18:44,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:18:45,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:18:45,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:18:45,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:18:45,324.324 INFO    ] time= 05/06/2026 20:18:45
[2026-06-05 20:18:45,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:18:45,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:18:45,500.500 INFO    ] No existing commands found in stream
[2026-06-05 20:18:50,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:18:50,533.533 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 20:18:55,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:18:55,656.656 INFO    ] Checking for system updates...
[2026-06-05 20:18:55,692.692 INFO    ] 200
[2026-06-05 20:18:55,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:55,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:18:55,752.752 INFO    ] No update needed
[2026-06-05 20:18:55,755.755 INFO    ] Checking for camera pi updates...
[2026-06-05 20:18:55,794.794 INFO    ] 200
[2026-06-05 20:18:55,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:18:55,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:18:55,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:18:55,884.884 INFO    ] No camera update needed
[2026-06-05 20:18:55,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:18:55,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:18:55,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:18:55,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:18:57,943.943 INFO    ] ================================================
[2026-06-05 20:18:57,958.958 INFO    ] Launching Daemon at Fri Jun  5 20:18:57 IST 2026
[2026-06-05 20:18:57,969.969 INFO    ] ================================================
[2026-06-05 20:18:58,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:18:58
[2026-06-05 20:18:59,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:18:59,443.443 INFO    ] Initializing speech engine...
[2026-06-05 20:18:59,451.451 INFO    ] 2026-06-05 20:18:59
[2026-06-05 20:18:59,711.711 INFO    ] 2026-06-05 20:18:59
[2026-06-05 20:18:59,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:18:59,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:18:59,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:19:00,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:19:00,173.173 INFO    ] time= 05/06/2026 20:19:00
[2026-06-05 20:19:00,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:19:00,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:19:00,322.322 INFO    ] No existing commands found in stream
[2026-06-05 20:19:05,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:19:05,337.337 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 20:19:08,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:19:08,480.480 INFO    ] Checking for system updates...
[2026-06-05 20:19:08,516.516 INFO    ] 200
[2026-06-05 20:19:08,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:08,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:19:08,576.576 INFO    ] No update needed
[2026-06-05 20:19:08,579.579 INFO    ] Checking for camera pi updates...
[2026-06-05 20:19:08,613.613 INFO    ] 200
[2026-06-05 20:19:08,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:08,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:19:08,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:19:08,687.687 INFO    ] No camera update needed
[2026-06-05 20:19:08,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:19:08,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:19:08,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:19:08,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:19:10,743.743 INFO    ] ================================================
[2026-06-05 20:19:10,758.758 INFO    ] Launching Daemon at Fri Jun  5 20:19:10 IST 2026
[2026-06-05 20:19:10,769.769 INFO    ] ================================================
[2026-06-05 20:19:11,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:19:11
[2026-06-05 20:19:11,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:19:12,210.210 INFO    ] Initializing speech engine...
[2026-06-05 20:19:12,216.216 INFO    ] 2026-06-05 20:19:12
[2026-06-05 20:19:12,509.509 INFO    ] 2026-06-05 20:19:12
[2026-06-05 20:19:12,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:19:12,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:19:12,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:19:12,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:19:12,885.885 INFO    ] time= 05/06/2026 20:19:12
[2026-06-05 20:19:12,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:19:12,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:19:13,010.010 INFO    ] No existing commands found in stream
[2026-06-05 20:19:18,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:19:18,025.025 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 20:19:20,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:19:20,832.832 INFO    ] Checking for system updates...
[2026-06-05 20:19:20,872.872 INFO    ] 200
[2026-06-05 20:19:20,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:20,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:19:20,930.930 INFO    ] No update needed
[2026-06-05 20:19:20,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 20:19:20,969.969 INFO    ] 200
[2026-06-05 20:19:20,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:21,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:19:21,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:19:21,066.066 INFO    ] No camera update needed
[2026-06-05 20:19:21,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:19:21,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:19:21,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:19:21,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:19:23,123.123 INFO    ] ================================================
[2026-06-05 20:19:23,141.141 INFO    ] Launching Daemon at Fri Jun  5 20:19:23 IST 2026
[2026-06-05 20:19:23,152.152 INFO    ] ================================================
[2026-06-05 20:19:23,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:19:23
[2026-06-05 20:19:24,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:19:24,611.611 INFO    ] Initializing speech engine...
[2026-06-05 20:19:24,618.618 INFO    ] 2026-06-05 20:19:24
[2026-06-05 20:19:24,892.892 INFO    ] 2026-06-05 20:19:24
[2026-06-05 20:19:24,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:19:26,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:19:26,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:19:26,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:19:26,411.411 INFO    ] time= 05/06/2026 20:19:26
[2026-06-05 20:19:26,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:19:26,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:19:26,527.527 INFO    ] No existing commands found in stream
[2026-06-05 20:19:31,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:19:31,544.544 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 20:19:34,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:19:34,060.060 INFO    ] Checking for system updates...
[2026-06-05 20:19:34,097.097 INFO    ] 200
[2026-06-05 20:19:34,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:34,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:19:34,156.156 INFO    ] No update needed
[2026-06-05 20:19:34,159.159 INFO    ] Checking for camera pi updates...
[2026-06-05 20:19:34,196.196 INFO    ] 200
[2026-06-05 20:19:34,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:34,240.240 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:19:34,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:19:34,287.287 INFO    ] No camera update needed
[2026-06-05 20:19:34,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:19:34,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:19:34,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:19:34,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:19:36,346.346 INFO    ] ================================================
[2026-06-05 20:19:36,362.362 INFO    ] Launching Daemon at Fri Jun  5 20:19:36 IST 2026
[2026-06-05 20:19:36,373.373 INFO    ] ================================================
[2026-06-05 20:19:36,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:19:36
[2026-06-05 20:19:37,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:19:37,794.794 INFO    ] Initializing speech engine...
[2026-06-05 20:19:37,803.803 INFO    ] 2026-06-05 20:19:37
[2026-06-05 20:19:38,053.053 INFO    ] 2026-06-05 20:19:38
[2026-06-05 20:19:38,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:19:38,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:19:38,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:19:38,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:19:38,428.428 INFO    ] time= 05/06/2026 20:19:38
[2026-06-05 20:19:38,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:19:38,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:19:38,595.595 INFO    ] No existing commands found in stream
[2026-06-05 20:19:43,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:19:43,623.623 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 20:19:47,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:19:47,023.023 INFO    ] Checking for system updates...
[2026-06-05 20:19:47,059.059 INFO    ] 200
[2026-06-05 20:19:47,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:47,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:19:47,117.117 INFO    ] No update needed
[2026-06-05 20:19:47,120.120 INFO    ] Checking for camera pi updates...
[2026-06-05 20:19:47,153.153 INFO    ] 200
[2026-06-05 20:19:47,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:47,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:19:47,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:19:47,242.242 INFO    ] No camera update needed
[2026-06-05 20:19:47,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:19:47,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:19:47,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:19:47,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:19:49,306.306 INFO    ] ================================================
[2026-06-05 20:19:49,321.321 INFO    ] Launching Daemon at Fri Jun  5 20:19:49 IST 2026
[2026-06-05 20:19:49,332.332 INFO    ] ================================================
[2026-06-05 20:19:49,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:19:49
[2026-06-05 20:19:50,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:19:50,798.798 INFO    ] Initializing speech engine...
[2026-06-05 20:19:50,808.808 INFO    ] 2026-06-05 20:19:50
[2026-06-05 20:19:51,069.069 INFO    ] 2026-06-05 20:19:51
[2026-06-05 20:19:51,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:19:51,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:19:51,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:19:51,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:19:51,554.554 INFO    ] time= 05/06/2026 20:19:51
[2026-06-05 20:19:51,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:19:51,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:19:51,744.744 INFO    ] No existing commands found in stream
[2026-06-05 20:19:56,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:19:56,778.778 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 20:19:58,327.327 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:19:58,329.329 INFO    ] Checking for system updates...
[2026-06-05 20:19:58,367.367 INFO    ] 200
[2026-06-05 20:19:58,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:58,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:19:58,435.435 INFO    ] No update needed
[2026-06-05 20:19:58,438.438 INFO    ] Checking for camera pi updates...
[2026-06-05 20:19:58,472.472 INFO    ] 200
[2026-06-05 20:19:58,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:19:58,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:19:58,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:19:58,575.575 INFO    ] No camera update needed
[2026-06-05 20:19:58,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:19:58,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:19:58,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:19:58,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:20:00,631.631 INFO    ] ================================================
[2026-06-05 20:20:00,646.646 INFO    ] Launching Daemon at Fri Jun  5 20:20:00 IST 2026
[2026-06-05 20:20:00,657.657 INFO    ] ================================================
[2026-06-05 20:20:01,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:20:01
[2026-06-05 20:20:01,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:20:02,689.689 INFO    ] Initializing speech engine...
[2026-06-05 20:20:02,693.693 INFO    ] 2026-06-05 20:20:02
[2026-06-05 20:20:03,179.179 INFO    ] 2026-06-05 20:20:03
[2026-06-05 20:20:03,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:20:03,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:20:03,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:20:03,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:20:03,614.614 INFO    ] time= 05/06/2026 20:20:03
[2026-06-05 20:20:03,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:20:03,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:20:03,675.675 INFO    ] No existing commands found in stream
[2026-06-05 20:20:08,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:20:08,688.688 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 20:20:09,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:20:09,891.891 INFO    ] Checking for system updates...
[2026-06-05 20:20:09,934.934 INFO    ] 200
[2026-06-05 20:20:09,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:09,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:20:09,993.993 INFO    ] No update needed
[2026-06-05 20:20:09,995.995 INFO    ] Checking for camera pi updates...
[2026-06-05 20:20:10,030.030 INFO    ] 200
[2026-06-05 20:20:10,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:10,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:20:10,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:20:10,231.231 INFO    ] No camera update needed
[2026-06-05 20:20:10,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:20:10,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:20:10,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:20:10,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:20:12,290.290 INFO    ] ================================================
[2026-06-05 20:20:12,306.306 INFO    ] Launching Daemon at Fri Jun  5 20:20:12 IST 2026
[2026-06-05 20:20:12,317.317 INFO    ] ================================================
[2026-06-05 20:20:12,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:20:12
[2026-06-05 20:20:13,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:20:13,964.964 INFO    ] Initializing speech engine...
[2026-06-05 20:20:13,977.977 INFO    ] 2026-06-05 20:20:13
[2026-06-05 20:20:14,289.289 INFO    ] 2026-06-05 20:20:14
[2026-06-05 20:20:14,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:20:14,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:20:14,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:20:14,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:20:14,814.814 INFO    ] time= 05/06/2026 20:20:14
[2026-06-05 20:20:14,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:20:14,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:20:14,973.973 INFO    ] No existing commands found in stream
[2026-06-05 20:20:19,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:20:19,997.997 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 20:20:22,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:20:22,257.257 INFO    ] Checking for system updates...
[2026-06-05 20:20:22,295.295 INFO    ] 200
[2026-06-05 20:20:22,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:22,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:20:22,363.363 INFO    ] No update needed
[2026-06-05 20:20:22,366.366 INFO    ] Checking for camera pi updates...
[2026-06-05 20:20:22,401.401 INFO    ] 200
[2026-06-05 20:20:22,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:22,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:20:22,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:20:22,500.500 INFO    ] No camera update needed
[2026-06-05 20:20:22,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:20:22,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:20:22,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:20:22,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:20:24,556.556 INFO    ] ================================================
[2026-06-05 20:20:24,572.572 INFO    ] Launching Daemon at Fri Jun  5 20:20:24 IST 2026
[2026-06-05 20:20:24,583.583 INFO    ] ================================================
[2026-06-05 20:20:25,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:20:25
[2026-06-05 20:20:25,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:20:26,033.033 INFO    ] Initializing speech engine...
[2026-06-05 20:20:26,040.040 INFO    ] 2026-06-05 20:20:26
[2026-06-05 20:20:26,301.301 INFO    ] 2026-06-05 20:20:26
[2026-06-05 20:20:26,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:20:27,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:20:27,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:20:27,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:20:27,779.779 INFO    ] time= 05/06/2026 20:20:27
[2026-06-05 20:20:27,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:20:27,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:20:27,853.853 INFO    ] No existing commands found in stream
[2026-06-05 20:20:32,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:20:32,867.867 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 20:20:35,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:20:35,349.349 INFO    ] Checking for system updates...
[2026-06-05 20:20:35,389.389 INFO    ] 200
[2026-06-05 20:20:35,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:35,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:20:35,454.454 INFO    ] No update needed
[2026-06-05 20:20:35,457.457 INFO    ] Checking for camera pi updates...
[2026-06-05 20:20:35,494.494 INFO    ] 200
[2026-06-05 20:20:35,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:35,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:20:35,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:20:35,582.582 INFO    ] No camera update needed
[2026-06-05 20:20:35,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:20:35,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:20:35,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:20:35,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:20:37,641.641 INFO    ] ================================================
[2026-06-05 20:20:37,657.657 INFO    ] Launching Daemon at Fri Jun  5 20:20:37 IST 2026
[2026-06-05 20:20:37,668.668 INFO    ] ================================================
[2026-06-05 20:20:38,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:20:38
[2026-06-05 20:20:38,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:20:39,295.295 INFO    ] Initializing speech engine...
[2026-06-05 20:20:39,303.303 INFO    ] 2026-06-05 20:20:39
[2026-06-05 20:20:39,578.578 INFO    ] 2026-06-05 20:20:39
[2026-06-05 20:20:39,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:20:39,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:20:39,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:20:40,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:20:40,067.067 INFO    ] time= 05/06/2026 20:20:40
[2026-06-05 20:20:40,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:20:40,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:20:40,194.194 INFO    ] No existing commands found in stream
[2026-06-05 20:20:45,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:20:45,222.222 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 20:20:46,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:20:46,123.123 INFO    ] Checking for system updates...
[2026-06-05 20:20:46,164.164 INFO    ] 200
[2026-06-05 20:20:46,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:46,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:20:46,231.231 INFO    ] No update needed
[2026-06-05 20:20:46,234.234 INFO    ] Checking for camera pi updates...
[2026-06-05 20:20:46,269.269 INFO    ] 200
[2026-06-05 20:20:46,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:46,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:20:46,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:20:46,372.372 INFO    ] No camera update needed
[2026-06-05 20:20:46,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:20:46,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:20:46,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:20:46,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:20:48,437.437 INFO    ] ================================================
[2026-06-05 20:20:48,452.452 INFO    ] Launching Daemon at Fri Jun  5 20:20:48 IST 2026
[2026-06-05 20:20:48,463.463 INFO    ] ================================================
[2026-06-05 20:20:49,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:20:49
[2026-06-05 20:20:49,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:20:49,933.933 INFO    ] Initializing speech engine...
[2026-06-05 20:20:49,943.943 INFO    ] 2026-06-05 20:20:49
[2026-06-05 20:20:50,206.206 INFO    ] 2026-06-05 20:20:50
[2026-06-05 20:20:50,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:20:50,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:20:50,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:20:50,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:20:50,683.683 INFO    ] time= 05/06/2026 20:20:50
[2026-06-05 20:20:50,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:20:50,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:20:50,816.816 INFO    ] No existing commands found in stream
[2026-06-05 20:20:55,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:20:55,830.830 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 20:20:58,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:20:58,638.638 INFO    ] Checking for system updates...
[2026-06-05 20:20:58,680.680 INFO    ] 200
[2026-06-05 20:20:58,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:58,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:20:58,742.742 INFO    ] No update needed
[2026-06-05 20:20:58,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 20:20:58,781.781 INFO    ] 200
[2026-06-05 20:20:58,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:20:58,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:20:58,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:20:58,876.876 INFO    ] No camera update needed
[2026-06-05 20:20:58,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:20:58,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:20:58,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:20:58,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:21:00,937.937 INFO    ] ================================================
[2026-06-05 20:21:00,953.953 INFO    ] Launching Daemon at Fri Jun  5 20:21:00 IST 2026
[2026-06-05 20:21:00,964.964 INFO    ] ================================================
[2026-06-05 20:21:01,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:21:01
[2026-06-05 20:21:02,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:21:02,678.678 INFO    ] Initializing speech engine...
[2026-06-05 20:21:02,694.694 INFO    ] 2026-06-05 20:21:02
[2026-06-05 20:21:03,001.001 INFO    ] 2026-06-05 20:21:02
[2026-06-05 20:21:03,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:21:03,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:21:03,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:21:03,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:21:03,353.353 INFO    ] time= 05/06/2026 20:21:03
[2026-06-05 20:21:03,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:21:03,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:21:03,470.470 INFO    ] No existing commands found in stream
[2026-06-05 20:21:08,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:21:08,508.508 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-05 20:21:12,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:21:12,022.022 INFO    ] Checking for system updates...
[2026-06-05 20:21:12,063.063 INFO    ] 200
[2026-06-05 20:21:12,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:21:12,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:21:12,128.128 INFO    ] No update needed
[2026-06-05 20:21:12,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 20:21:12,164.164 INFO    ] 200
[2026-06-05 20:21:12,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:21:12,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:21:12,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:21:12,258.258 INFO    ] No camera update needed
[2026-06-05 20:21:12,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:21:12,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:21:12,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:21:12,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:21:14,314.314 INFO    ] ================================================
[2026-06-05 20:21:14,329.329 INFO    ] Launching Daemon at Fri Jun  5 20:21:14 IST 2026
[2026-06-05 20:21:14,340.340 INFO    ] ================================================
[2026-06-05 20:21:15,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:21:14
[2026-06-05 20:21:15,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:21:15,998.998 INFO    ] Initializing speech engine...
[2026-06-05 20:21:16,004.004 INFO    ] 2026-06-05 20:21:16
[2026-06-05 20:21:16,319.319 INFO    ] 2026-06-05 20:21:16
[2026-06-05 20:21:16,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:21:16,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:21:16,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:21:16,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:21:16,828.828 INFO    ] time= 05/06/2026 20:21:16
[2026-06-05 20:21:16,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:21:16,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:21:16,985.985 INFO    ] No existing commands found in stream
[2026-06-05 20:21:22,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:21:22,012.012 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 20:21:23,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:21:23,131.131 INFO    ] Checking for system updates...
[2026-06-05 20:21:23,168.168 INFO    ] 200
[2026-06-05 20:21:23,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:21:23,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:21:23,230.230 INFO    ] No update needed
[2026-06-05 20:21:23,232.232 INFO    ] Checking for camera pi updates...
[2026-06-05 20:21:23,267.267 INFO    ] 200
[2026-06-05 20:21:23,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:21:23,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:21:23,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:21:23,361.361 INFO    ] No camera update needed
[2026-06-05 20:21:23,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:21:23,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:21:23,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:21:23,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:21:25,421.421 INFO    ] ================================================
[2026-06-05 20:21:25,437.437 INFO    ] Launching Daemon at Fri Jun  5 20:21:25 IST 2026
[2026-06-05 20:21:25,448.448 INFO    ] ================================================
[2026-06-05 20:21:26,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:21:26
[2026-06-05 20:21:26,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:21:26,919.919 INFO    ] Initializing speech engine...
[2026-06-05 20:21:26,928.928 INFO    ] 2026-06-05 20:21:26
[2026-06-05 20:21:27,186.186 INFO    ] 2026-06-05 20:21:27
[2026-06-05 20:21:27,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:21:28,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:21:28,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:21:29,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:21:29,056.056 INFO    ] time= 05/06/2026 20:21:29
[2026-06-05 20:21:29,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:21:29,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:21:29,123.123 INFO    ] No existing commands found in stream
[2026-06-05 20:21:34,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:21:34,139.139 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 20:21:37,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:21:37,391.391 INFO    ] Checking for system updates...
[2026-06-05 20:21:37,436.436 INFO    ] 200
[2026-06-05 20:21:37,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:21:37,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:21:37,505.505 INFO    ] No update needed
[2026-06-05 20:21:37,508.508 INFO    ] Checking for camera pi updates...
[2026-06-05 20:21:37,546.546 INFO    ] 200
[2026-06-05 20:21:37,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:21:37,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:21:37,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:21:37,645.645 INFO    ] No camera update needed
[2026-06-05 20:21:37,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:21:37,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:21:37,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:21:37,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:21:39,706.706 INFO    ] ================================================
[2026-06-05 20:21:39,722.722 INFO    ] Launching Daemon at Fri Jun  5 20:21:39 IST 2026
[2026-06-05 20:21:39,733.733 INFO    ] ================================================
[2026-06-05 20:21:40,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:21:40
[2026-06-05 20:21:40,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:21:41,272.272 INFO    ] Initializing speech engine...
[2026-06-05 20:21:41,287.287 INFO    ] 2026-06-05 20:21:41
[2026-06-05 20:21:41,603.603 INFO    ] 2026-06-05 20:21:41
[2026-06-05 20:21:41,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:21:42,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:21:42,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:21:42,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:21:42,703.703 INFO    ] time= 05/06/2026 20:21:42
[2026-06-05 20:21:42,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:21:42,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:21:42,814.814 INFO    ] No existing commands found in stream
[2026-06-05 20:21:47,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:21:47,830.830 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 20:21:52,062.062 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:21:52,066.066 INFO    ] Checking for system updates...
[2026-06-05 20:21:52,108.108 INFO    ] 200
[2026-06-05 20:21:52,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:21:52,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:21:52,178.178 INFO    ] No update needed
[2026-06-05 20:21:52,181.181 INFO    ] Checking for camera pi updates...
[2026-06-05 20:21:52,221.221 INFO    ] 200
[2026-06-05 20:21:52,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:21:52,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:21:52,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:21:52,310.310 INFO    ] No camera update needed
[2026-06-05 20:21:52,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:21:52,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:21:52,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:21:52,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:21:54,371.371 INFO    ] ================================================
[2026-06-05 20:21:54,387.387 INFO    ] Launching Daemon at Fri Jun  5 20:21:54 IST 2026
[2026-06-05 20:21:54,398.398 INFO    ] ================================================
[2026-06-05 20:21:55,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:21:55
[2026-06-05 20:21:55,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:21:56,102.102 INFO    ] Initializing speech engine...
[2026-06-05 20:21:56,113.113 INFO    ] 2026-06-05 20:21:56
[2026-06-05 20:21:56,424.424 INFO    ] 2026-06-05 20:21:56
[2026-06-05 20:21:56,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:21:59,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:21:59,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:21:59,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:21:59,663.663 INFO    ] time= 05/06/2026 20:21:59
[2026-06-05 20:21:59,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:21:59,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:21:59,715.715 INFO    ] No existing commands found in stream
[2026-06-05 20:22:04,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:22:04,729.729 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 20:22:08,749.749 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:22:08,753.753 INFO    ] Checking for system updates...
[2026-06-05 20:22:08,791.791 INFO    ] 200
[2026-06-05 20:22:08,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:22:08,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:22:08,852.852 INFO    ] No update needed
[2026-06-05 20:22:08,854.854 INFO    ] Checking for camera pi updates...
[2026-06-05 20:22:08,904.904 INFO    ] 200
[2026-06-05 20:22:08,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:22:08,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:22:09,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:22:09,005.005 INFO    ] No camera update needed
[2026-06-05 20:22:09,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:22:09,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:22:09,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:22:09,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:22:11,069.069 INFO    ] ================================================
[2026-06-05 20:22:11,085.085 INFO    ] Launching Daemon at Fri Jun  5 20:22:11 IST 2026
[2026-06-05 20:22:11,096.096 INFO    ] ================================================
[2026-06-05 20:22:11,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:22:11
[2026-06-05 20:22:12,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:22:12,797.797 INFO    ] Initializing speech engine...
[2026-06-05 20:22:12,809.809 INFO    ] 2026-06-05 20:22:12
[2026-06-05 20:22:13,086.086 INFO    ] 2026-06-05 20:22:13
[2026-06-05 20:22:13,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:22:13,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:22:13,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:22:13,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:22:13,661.661 INFO    ] time= 05/06/2026 20:22:13
[2026-06-05 20:22:13,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:22:13,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:22:13,804.804 INFO    ] No existing commands found in stream
[2026-06-05 20:22:18,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:22:18,837.837 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 20:22:21,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:22:21,934.934 INFO    ] Checking for system updates...
[2026-06-05 20:22:21,972.972 INFO    ] 200
[2026-06-05 20:22:21,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:22:22,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:22:22,032.032 INFO    ] No update needed
[2026-06-05 20:22:22,035.035 INFO    ] Checking for camera pi updates...
[2026-06-05 20:22:22,072.072 INFO    ] 200
[2026-06-05 20:22:22,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:22:22,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:22:22,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:22:22,264.264 INFO    ] No camera update needed
[2026-06-05 20:22:22,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:22:22,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:22:22,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:22:22,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:22:24,321.321 INFO    ] ================================================
[2026-06-05 20:22:24,337.337 INFO    ] Launching Daemon at Fri Jun  5 20:22:24 IST 2026
[2026-06-05 20:22:24,349.349 INFO    ] ================================================
[2026-06-05 20:22:24,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:22:24
[2026-06-05 20:22:25,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:22:25,813.813 INFO    ] Initializing speech engine...
[2026-06-05 20:22:25,821.821 INFO    ] 2026-06-05 20:22:25
[2026-06-05 20:22:26,082.082 INFO    ] 2026-06-05 20:22:26
[2026-06-05 20:22:26,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:22:26,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:22:26,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:22:26,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:22:26,540.540 INFO    ] time= 05/06/2026 20:22:26
[2026-06-05 20:22:26,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:22:26,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:22:26,697.697 INFO    ] No existing commands found in stream
[2026-06-05 20:22:31,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:22:31,726.726 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 20:22:36,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:22:36,102.102 INFO    ] Checking for system updates...
[2026-06-05 20:22:36,140.140 INFO    ] 200
[2026-06-05 20:22:36,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:22:36,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:22:36,200.200 INFO    ] No update needed
[2026-06-05 20:22:36,203.203 INFO    ] Checking for camera pi updates...
[2026-06-05 20:22:36,239.239 INFO    ] 200
[2026-06-05 20:22:36,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:22:36,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:22:36,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:22:36,344.344 INFO    ] No camera update needed
[2026-06-05 20:22:36,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:22:36,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:22:36,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:22:36,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:22:38,406.406 INFO    ] ================================================
[2026-06-05 20:22:38,423.423 INFO    ] Launching Daemon at Fri Jun  5 20:22:38 IST 2026
[2026-06-05 20:22:38,434.434 INFO    ] ================================================
[2026-06-05 20:22:39,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:22:39
[2026-06-05 20:22:39,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:22:40,100.100 INFO    ] Initializing speech engine...
[2026-06-05 20:22:40,112.112 INFO    ] 2026-06-05 20:22:40
[2026-06-05 20:22:40,402.402 INFO    ] 2026-06-05 20:22:40
[2026-06-05 20:22:40,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:22:40,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:22:40,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:22:40,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:22:40,960.960 INFO    ] time= 05/06/2026 20:22:40
[2026-06-05 20:22:40,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:22:41,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:22:41,121.121 INFO    ] No existing commands found in stream
[2026-06-05 20:22:46,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:22:46,137.137 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 20:22:50,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:22:50,951.951 INFO    ] Checking for system updates...
[2026-06-05 20:22:50,989.989 INFO    ] 200
[2026-06-05 20:22:50,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:22:51,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:22:51,049.049 INFO    ] No update needed
[2026-06-05 20:22:51,052.052 INFO    ] Checking for camera pi updates...
[2026-06-05 20:22:51,088.088 INFO    ] 200
[2026-06-05 20:22:51,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:22:51,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:22:51,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:22:51,186.186 INFO    ] No camera update needed
[2026-06-05 20:22:51,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:22:51,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:22:51,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:22:51,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:22:53,241.241 INFO    ] ================================================
[2026-06-05 20:22:53,257.257 INFO    ] Launching Daemon at Fri Jun  5 20:22:53 IST 2026
[2026-06-05 20:22:53,268.268 INFO    ] ================================================
[2026-06-05 20:22:53,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:22:53
[2026-06-05 20:22:54,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:22:54,701.701 INFO    ] Initializing speech engine...
[2026-06-05 20:22:54,716.716 INFO    ] 2026-06-05 20:22:54
[2026-06-05 20:22:54,972.972 INFO    ] 2026-06-05 20:22:54
[2026-06-05 20:22:55,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:22:55,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:22:55,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:22:55,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:22:55,439.439 INFO    ] time= 05/06/2026 20:22:55
[2026-06-05 20:22:55,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:22:55,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:22:55,591.591 INFO    ] No existing commands found in stream
[2026-06-05 20:23:00,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:23:00,606.606 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 20:23:03,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:23:03,299.299 INFO    ] Checking for system updates...
[2026-06-05 20:23:03,335.335 INFO    ] 200
[2026-06-05 20:23:03,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:03,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:23:03,394.394 INFO    ] No update needed
[2026-06-05 20:23:03,397.397 INFO    ] Checking for camera pi updates...
[2026-06-05 20:23:03,435.435 INFO    ] 200
[2026-06-05 20:23:03,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:03,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:23:03,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:23:03,522.522 INFO    ] No camera update needed
[2026-06-05 20:23:03,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:23:03,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:23:03,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:23:03,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:23:05,581.581 INFO    ] ================================================
[2026-06-05 20:23:05,596.596 INFO    ] Launching Daemon at Fri Jun  5 20:23:05 IST 2026
[2026-06-05 20:23:05,607.607 INFO    ] ================================================
[2026-06-05 20:23:06,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:23:06
[2026-06-05 20:23:06,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:23:07,036.036 INFO    ] Initializing speech engine...
[2026-06-05 20:23:07,045.045 INFO    ] 2026-06-05 20:23:07
[2026-06-05 20:23:07,295.295 INFO    ] 2026-06-05 20:23:07
[2026-06-05 20:23:07,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:23:07,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:23:07,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:23:07,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:23:07,777.777 INFO    ] time= 05/06/2026 20:23:07
[2026-06-05 20:23:07,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:23:07,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:23:07,924.924 INFO    ] No existing commands found in stream
[2026-06-05 20:23:12,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:23:12,939.939 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 20:23:15,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:23:15,759.759 INFO    ] Checking for system updates...
[2026-06-05 20:23:15,796.796 INFO    ] 200
[2026-06-05 20:23:15,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:15,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:23:15,854.854 INFO    ] No update needed
[2026-06-05 20:23:15,857.857 INFO    ] Checking for camera pi updates...
[2026-06-05 20:23:15,890.890 INFO    ] 200
[2026-06-05 20:23:15,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:15,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:23:15,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:23:15,980.980 INFO    ] No camera update needed
[2026-06-05 20:23:15,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:23:15,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:23:15,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:23:15,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:23:18,035.035 INFO    ] ================================================
[2026-06-05 20:23:18,051.051 INFO    ] Launching Daemon at Fri Jun  5 20:23:18 IST 2026
[2026-06-05 20:23:18,062.062 INFO    ] ================================================
[2026-06-05 20:23:18,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:23:18
[2026-06-05 20:23:19,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:23:19,526.526 INFO    ] Initializing speech engine...
[2026-06-05 20:23:19,533.533 INFO    ] 2026-06-05 20:23:19
[2026-06-05 20:23:19,798.798 INFO    ] 2026-06-05 20:23:19
[2026-06-05 20:23:19,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:23:20,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:23:20,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:23:20,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:23:20,187.187 INFO    ] time= 05/06/2026 20:23:20
[2026-06-05 20:23:20,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:23:20,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:23:20,333.333 INFO    ] No existing commands found in stream
[2026-06-05 20:23:25,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:23:25,361.361 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 20:23:27,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:23:27,861.861 INFO    ] Checking for system updates...
[2026-06-05 20:23:27,901.901 INFO    ] 200
[2026-06-05 20:23:27,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:27,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:23:27,959.959 INFO    ] No update needed
[2026-06-05 20:23:27,961.961 INFO    ] Checking for camera pi updates...
[2026-06-05 20:23:27,999.999 INFO    ] 200
[2026-06-05 20:23:28,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:28,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:23:28,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:23:28,096.096 INFO    ] No camera update needed
[2026-06-05 20:23:28,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:23:28,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:23:28,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:23:28,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:23:30,151.151 INFO    ] ================================================
[2026-06-05 20:23:30,166.166 INFO    ] Launching Daemon at Fri Jun  5 20:23:30 IST 2026
[2026-06-05 20:23:30,178.178 INFO    ] ================================================
[2026-06-05 20:23:30,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:23:30
[2026-06-05 20:23:31,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:23:31,639.639 INFO    ] Initializing speech engine...
[2026-06-05 20:23:31,657.657 INFO    ] 2026-06-05 20:23:31
[2026-06-05 20:23:31,953.953 INFO    ] 2026-06-05 20:23:31
[2026-06-05 20:23:32,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:23:32,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:23:32,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:23:32,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:23:32,461.461 INFO    ] time= 05/06/2026 20:23:32
[2026-06-05 20:23:32,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:23:32,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:23:32,614.614 INFO    ] No existing commands found in stream
[2026-06-05 20:23:37,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:23:37,655.655 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 20:23:39,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:23:39,826.826 INFO    ] Checking for system updates...
[2026-06-05 20:23:39,866.866 INFO    ] 200
[2026-06-05 20:23:39,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:39,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:23:39,923.923 INFO    ] No update needed
[2026-06-05 20:23:39,926.926 INFO    ] Checking for camera pi updates...
[2026-06-05 20:23:39,963.963 INFO    ] 200
[2026-06-05 20:23:39,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:40,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:23:40,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:23:40,093.093 INFO    ] No camera update needed
[2026-06-05 20:23:40,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:23:40,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:23:40,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:23:40,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:23:42,157.157 INFO    ] ================================================
[2026-06-05 20:23:42,173.173 INFO    ] Launching Daemon at Fri Jun  5 20:23:42 IST 2026
[2026-06-05 20:23:42,184.184 INFO    ] ================================================
[2026-06-05 20:23:42,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:23:42
[2026-06-05 20:23:43,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:23:43,646.646 INFO    ] Initializing speech engine...
[2026-06-05 20:23:43,652.652 INFO    ] 2026-06-05 20:23:43
[2026-06-05 20:23:43,912.912 INFO    ] 2026-06-05 20:23:43
[2026-06-05 20:23:43,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:23:44,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:23:44,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:23:44,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:23:44,320.320 INFO    ] time= 05/06/2026 20:23:44
[2026-06-05 20:23:44,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:23:44,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:23:44,418.418 INFO    ] No existing commands found in stream
[2026-06-05 20:23:49,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:23:49,451.451 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-05 20:23:53,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:23:53,247.247 INFO    ] Checking for system updates...
[2026-06-05 20:23:53,284.284 INFO    ] 200
[2026-06-05 20:23:53,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:53,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:23:53,344.344 INFO    ] No update needed
[2026-06-05 20:23:53,347.347 INFO    ] Checking for camera pi updates...
[2026-06-05 20:23:53,382.382 INFO    ] 200
[2026-06-05 20:23:53,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:23:53,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:23:58,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:23:58,503.503 INFO    ] No camera update needed
[2026-06-05 20:23:58,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:23:58,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:23:58,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:23:58,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:24:00,560.560 INFO    ] ================================================
[2026-06-05 20:24:00,576.576 INFO    ] Launching Daemon at Fri Jun  5 20:24:00 IST 2026
[2026-06-05 20:24:00,587.587 INFO    ] ================================================
[2026-06-05 20:24:01,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:24:01
[2026-06-05 20:24:02,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:24:02,365.365 INFO    ] Initializing speech engine...
[2026-06-05 20:24:02,376.376 INFO    ] 2026-06-05 20:24:02
[2026-06-05 20:24:02,737.737 INFO    ] 2026-06-05 20:24:02
[2026-06-05 20:24:02,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:24:03,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:24:03,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:24:03,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:24:03,280.280 INFO    ] time= 05/06/2026 20:24:03
[2026-06-05 20:24:03,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:24:03,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:24:03,482.482 INFO    ] No existing commands found in stream
[2026-06-05 20:24:08,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:24:08,516.516 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 20:24:12,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:24:12,517.517 INFO    ] Checking for system updates...
[2026-06-05 20:24:12,553.553 INFO    ] 200
[2026-06-05 20:24:12,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:24:12,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:24:12,620.620 INFO    ] No update needed
[2026-06-05 20:24:12,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 20:24:12,660.660 INFO    ] 200
[2026-06-05 20:24:12,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:24:12,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:24:12,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:24:12,763.763 INFO    ] No camera update needed
[2026-06-05 20:24:12,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:24:12,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:24:12,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:24:12,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:24:14,818.818 INFO    ] ================================================
[2026-06-05 20:24:14,834.834 INFO    ] Launching Daemon at Fri Jun  5 20:24:14 IST 2026
[2026-06-05 20:24:14,845.845 INFO    ] ================================================
[2026-06-05 20:24:15,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:24:15
[2026-06-05 20:24:16,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:24:16,271.271 INFO    ] Initializing speech engine...
[2026-06-05 20:24:16,280.280 INFO    ] 2026-06-05 20:24:16
[2026-06-05 20:24:16,529.529 INFO    ] 2026-06-05 20:24:16
[2026-06-05 20:24:16,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:24:16,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:24:16,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:24:16,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:24:17,013.013 INFO    ] time= 05/06/2026 20:24:16
[2026-06-05 20:24:17,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:24:17,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:24:17,176.176 INFO    ] No existing commands found in stream
[2026-06-05 20:24:22,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:24:22,200.200 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-05 20:24:25,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:24:25,034.034 INFO    ] Checking for system updates...
[2026-06-05 20:24:25,074.074 INFO    ] 200
[2026-06-05 20:24:25,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:24:25,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:24:25,138.138 INFO    ] No update needed
[2026-06-05 20:24:25,141.141 INFO    ] Checking for camera pi updates...
[2026-06-05 20:24:25,175.175 INFO    ] 200
[2026-06-05 20:24:25,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:24:25,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:24:25,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:24:25,288.288 INFO    ] No camera update needed
[2026-06-05 20:24:25,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:24:25,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:24:25,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:24:25,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:24:27,348.348 INFO    ] ================================================
[2026-06-05 20:24:27,363.363 INFO    ] Launching Daemon at Fri Jun  5 20:24:27 IST 2026
[2026-06-05 20:24:27,374.374 INFO    ] ================================================
[2026-06-05 20:24:27,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:24:27
[2026-06-05 20:24:28,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:24:28,844.844 INFO    ] Initializing speech engine...
[2026-06-05 20:24:28,854.854 INFO    ] 2026-06-05 20:24:28
[2026-06-05 20:24:29,122.122 INFO    ] 2026-06-05 20:24:29
[2026-06-05 20:24:29,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:24:29,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:24:29,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:24:29,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:24:29,535.535 INFO    ] time= 05/06/2026 20:24:29
[2026-06-05 20:24:29,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:24:29,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:24:29,628.628 INFO    ] No existing commands found in stream
[2026-06-05 20:24:34,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:24:34,647.647 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 20:24:38,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:24:38,604.604 INFO    ] Checking for system updates...
[2026-06-05 20:24:38,644.644 INFO    ] 200
[2026-06-05 20:24:38,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:24:38,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:24:38,709.709 INFO    ] No update needed
[2026-06-05 20:24:38,711.711 INFO    ] Checking for camera pi updates...
[2026-06-05 20:24:38,746.746 INFO    ] 200
[2026-06-05 20:24:38,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:24:38,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:24:38,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:24:38,843.843 INFO    ] No camera update needed
[2026-06-05 20:24:38,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:24:38,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:24:38,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:24:38,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:24:40,900.900 INFO    ] ================================================
[2026-06-05 20:24:40,915.915 INFO    ] Launching Daemon at Fri Jun  5 20:24:40 IST 2026
[2026-06-05 20:24:40,926.926 INFO    ] ================================================
[2026-06-05 20:24:41,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:24:41
[2026-06-05 20:24:42,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:24:42,391.391 INFO    ] Initializing speech engine...
[2026-06-05 20:24:42,401.401 INFO    ] 2026-06-05 20:24:42
[2026-06-05 20:24:42,656.656 INFO    ] 2026-06-05 20:24:42
[2026-06-05 20:24:42,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:24:42,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:24:42,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:24:43,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:24:43,132.132 INFO    ] time= 05/06/2026 20:24:43
[2026-06-05 20:24:43,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:24:43,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:24:43,346.346 INFO    ] No existing commands found in stream
[2026-06-05 20:24:48,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:24:48,375.375 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 20:24:50,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:24:50,847.847 INFO    ] Checking for system updates...
[2026-06-05 20:24:50,886.886 INFO    ] 200
[2026-06-05 20:24:50,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:24:50,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:24:50,950.950 INFO    ] No update needed
[2026-06-05 20:24:50,952.952 INFO    ] Checking for camera pi updates...
[2026-06-05 20:24:50,986.986 INFO    ] 200
[2026-06-05 20:24:50,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:24:51,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:24:51,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:24:51,084.084 INFO    ] No camera update needed
[2026-06-05 20:24:51,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:24:51,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:24:51,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:24:51,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:24:53,143.143 INFO    ] ================================================
[2026-06-05 20:24:53,158.158 INFO    ] Launching Daemon at Fri Jun  5 20:24:53 IST 2026
[2026-06-05 20:24:53,168.168 INFO    ] ================================================
[2026-06-05 20:24:53,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:24:53
[2026-06-05 20:24:54,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:24:54,573.573 INFO    ] Initializing speech engine...
[2026-06-05 20:24:54,580.580 INFO    ] 2026-06-05 20:24:54
[2026-06-05 20:24:54,870.870 INFO    ] 2026-06-05 20:24:54
[2026-06-05 20:24:54,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:24:55,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:24:55,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:24:55,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:24:55,431.431 INFO    ] time= 05/06/2026 20:24:55
[2026-06-05 20:24:55,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:24:55,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:24:55,592.592 INFO    ] No existing commands found in stream
[2026-06-05 20:25:00,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:25:00,630.630 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 20:25:03,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:25:03,578.578 INFO    ] Checking for system updates...
[2026-06-05 20:25:03,615.615 INFO    ] 200
[2026-06-05 20:25:03,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:03,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:25:03,681.681 INFO    ] No update needed
[2026-06-05 20:25:03,684.684 INFO    ] Checking for camera pi updates...
[2026-06-05 20:25:03,722.722 INFO    ] 200
[2026-06-05 20:25:03,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:03,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:25:03,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:25:03,819.819 INFO    ] No camera update needed
[2026-06-05 20:25:03,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:25:03,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:25:03,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:25:03,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:25:05,877.877 INFO    ] ================================================
[2026-06-05 20:25:05,892.892 INFO    ] Launching Daemon at Fri Jun  5 20:25:05 IST 2026
[2026-06-05 20:25:05,902.902 INFO    ] ================================================
[2026-06-05 20:25:06,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:25:06
[2026-06-05 20:25:07,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:25:07,364.364 INFO    ] Initializing speech engine...
[2026-06-05 20:25:07,373.373 INFO    ] 2026-06-05 20:25:07
[2026-06-05 20:25:07,635.635 INFO    ] 2026-06-05 20:25:07
[2026-06-05 20:25:07,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:25:07,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:25:07,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:25:08,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:25:08,187.187 INFO    ] time= 05/06/2026 20:25:08
[2026-06-05 20:25:08,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:25:08,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:25:08,342.342 INFO    ] No existing commands found in stream
[2026-06-05 20:25:13,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:25:13,374.374 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 20:25:15,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:25:15,179.179 INFO    ] Checking for system updates...
[2026-06-05 20:25:15,220.220 INFO    ] 200
[2026-06-05 20:25:15,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:15,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:25:15,282.282 INFO    ] No update needed
[2026-06-05 20:25:15,284.284 INFO    ] Checking for camera pi updates...
[2026-06-05 20:25:15,322.322 INFO    ] 200
[2026-06-05 20:25:15,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:15,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:25:15,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:25:15,421.421 INFO    ] No camera update needed
[2026-06-05 20:25:15,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:25:15,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:25:15,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:25:15,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:25:17,476.476 INFO    ] ================================================
[2026-06-05 20:25:17,493.493 INFO    ] Launching Daemon at Fri Jun  5 20:25:17 IST 2026
[2026-06-05 20:25:17,504.504 INFO    ] ================================================
[2026-06-05 20:25:18,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:25:18
[2026-06-05 20:25:18,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:25:18,913.913 INFO    ] Initializing speech engine...
[2026-06-05 20:25:18,922.922 INFO    ] 2026-06-05 20:25:18
[2026-06-05 20:25:19,217.217 INFO    ] 2026-06-05 20:25:19
[2026-06-05 20:25:19,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:25:19,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:25:19,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:25:19,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:25:19,638.638 INFO    ] time= 05/06/2026 20:25:19
[2026-06-05 20:25:19,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:25:19,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:25:19,786.786 INFO    ] No existing commands found in stream
[2026-06-05 20:25:24,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:25:24,810.810 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 20:25:26,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:25:26,287.287 INFO    ] Checking for system updates...
[2026-06-05 20:25:26,324.324 INFO    ] 200
[2026-06-05 20:25:26,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:26,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:25:26,389.389 INFO    ] No update needed
[2026-06-05 20:25:26,391.391 INFO    ] Checking for camera pi updates...
[2026-06-05 20:25:26,425.425 INFO    ] 200
[2026-06-05 20:25:26,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:26,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:25:26,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:25:26,518.518 INFO    ] No camera update needed
[2026-06-05 20:25:26,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:25:26,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:25:26,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:25:26,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:25:28,573.573 INFO    ] ================================================
[2026-06-05 20:25:28,588.588 INFO    ] Launching Daemon at Fri Jun  5 20:25:28 IST 2026
[2026-06-05 20:25:28,599.599 INFO    ] ================================================
[2026-06-05 20:25:29,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:25:29
[2026-06-05 20:25:29,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:25:30,034.034 INFO    ] Initializing speech engine...
[2026-06-05 20:25:30,043.043 INFO    ] 2026-06-05 20:25:30
[2026-06-05 20:25:30,293.293 INFO    ] 2026-06-05 20:25:30
[2026-06-05 20:25:30,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:25:30,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:25:30,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:25:30,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:25:30,812.812 INFO    ] time= 05/06/2026 20:25:30
[2026-06-05 20:25:30,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:25:30,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:25:31,072.072 INFO    ] No existing commands found in stream
[2026-06-05 20:25:36,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:25:36,092.092 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 20:25:38,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:25:38,286.286 INFO    ] Checking for system updates...
[2026-06-05 20:25:38,323.323 INFO    ] 200
[2026-06-05 20:25:38,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:38,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:25:38,381.381 INFO    ] No update needed
[2026-06-05 20:25:38,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 20:25:38,423.423 INFO    ] 200
[2026-06-05 20:25:38,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:38,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:25:38,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:25:38,550.550 INFO    ] No camera update needed
[2026-06-05 20:25:38,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:25:38,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:25:38,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:25:38,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:25:40,610.610 INFO    ] ================================================
[2026-06-05 20:25:40,626.626 INFO    ] Launching Daemon at Fri Jun  5 20:25:40 IST 2026
[2026-06-05 20:25:40,637.637 INFO    ] ================================================
[2026-06-05 20:25:41,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:25:41
[2026-06-05 20:25:41,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:25:42,110.110 INFO    ] Initializing speech engine...
[2026-06-05 20:25:42,117.117 INFO    ] 2026-06-05 20:25:42
[2026-06-05 20:25:42,391.391 INFO    ] 2026-06-05 20:25:42
[2026-06-05 20:25:42,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:25:42,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:25:42,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:25:42,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:25:42,882.882 INFO    ] time= 05/06/2026 20:25:42
[2026-06-05 20:25:42,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:25:42,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:25:43,085.085 INFO    ] No existing commands found in stream
[2026-06-05 20:25:48,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:25:48,113.113 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 20:25:49,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:25:49,244.244 INFO    ] Checking for system updates...
[2026-06-05 20:25:49,284.284 INFO    ] 200
[2026-06-05 20:25:49,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:49,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:25:49,351.351 INFO    ] No update needed
[2026-06-05 20:25:49,353.353 INFO    ] Checking for camera pi updates...
[2026-06-05 20:25:49,387.387 INFO    ] 200
[2026-06-05 20:25:49,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:25:49,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:25:49,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:25:49,497.497 INFO    ] No camera update needed
[2026-06-05 20:25:49,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:25:49,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:25:49,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:25:49,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:25:51,559.559 INFO    ] ================================================
[2026-06-05 20:25:51,574.574 INFO    ] Launching Daemon at Fri Jun  5 20:25:51 IST 2026
[2026-06-05 20:25:51,584.584 INFO    ] ================================================
[2026-06-05 20:25:52,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:25:52
[2026-06-05 20:25:52,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:25:53,095.095 INFO    ] Initializing speech engine...
[2026-06-05 20:25:53,109.109 INFO    ] 2026-06-05 20:25:53
[2026-06-05 20:25:53,419.419 INFO    ] 2026-06-05 20:25:53
[2026-06-05 20:25:53,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:25:54,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:25:54,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:25:55,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:25:55,460.460 INFO    ] time= 05/06/2026 20:25:55
[2026-06-05 20:25:55,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:25:55,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:25:55,570.570 INFO    ] No existing commands found in stream
[2026-06-05 20:26:00,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:26:00,596.596 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 20:26:02,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:26:02,782.782 INFO    ] Checking for system updates...
[2026-06-05 20:26:02,832.832 INFO    ] 200
[2026-06-05 20:26:02,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:02,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:26:02,918.918 INFO    ] No update needed
[2026-06-05 20:26:02,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 20:26:02,966.966 INFO    ] 200
[2026-06-05 20:26:02,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:03,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:26:03,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:26:03,050.050 INFO    ] No camera update needed
[2026-06-05 20:26:03,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:26:03,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:26:03,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:26:03,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:26:05,105.105 INFO    ] ================================================
[2026-06-05 20:26:05,121.121 INFO    ] Launching Daemon at Fri Jun  5 20:26:05 IST 2026
[2026-06-05 20:26:05,132.132 INFO    ] ================================================
[2026-06-05 20:26:05,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:26:05
[2026-06-05 20:26:06,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:26:06,565.565 INFO    ] Initializing speech engine...
[2026-06-05 20:26:06,574.574 INFO    ] 2026-06-05 20:26:06
[2026-06-05 20:26:06,850.850 INFO    ] 2026-06-05 20:26:06
[2026-06-05 20:26:06,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:26:07,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:26:07,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:26:07,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:26:07,382.382 INFO    ] time= 05/06/2026 20:26:07
[2026-06-05 20:26:07,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:26:07,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:26:07,557.557 INFO    ] No existing commands found in stream
[2026-06-05 20:26:12,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:26:12,582.582 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 20:26:15,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:26:15,240.240 INFO    ] Checking for system updates...
[2026-06-05 20:26:15,276.276 INFO    ] 200
[2026-06-05 20:26:15,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:15,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:26:15,344.344 INFO    ] No update needed
[2026-06-05 20:26:15,347.347 INFO    ] Checking for camera pi updates...
[2026-06-05 20:26:15,385.385 INFO    ] 200
[2026-06-05 20:26:15,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:15,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:26:15,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:26:15,483.483 INFO    ] No camera update needed
[2026-06-05 20:26:15,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:26:15,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:26:15,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:26:15,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:26:17,541.541 INFO    ] ================================================
[2026-06-05 20:26:17,556.556 INFO    ] Launching Daemon at Fri Jun  5 20:26:17 IST 2026
[2026-06-05 20:26:17,566.566 INFO    ] ================================================
[2026-06-05 20:26:18,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:26:18
[2026-06-05 20:26:18,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:26:19,062.062 INFO    ] Initializing speech engine...
[2026-06-05 20:26:19,075.075 INFO    ] 2026-06-05 20:26:19
[2026-06-05 20:26:19,347.347 INFO    ] 2026-06-05 20:26:19
[2026-06-05 20:26:19,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:26:19,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:26:19,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:26:19,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:26:19,734.734 INFO    ] time= 05/06/2026 20:26:19
[2026-06-05 20:26:19,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:26:19,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:26:19,917.917 INFO    ] No existing commands found in stream
[2026-06-05 20:26:24,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:26:24,945.945 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 20:26:25,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:26:25,914.914 INFO    ] Checking for system updates...
[2026-06-05 20:26:25,954.954 INFO    ] 200
[2026-06-05 20:26:25,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:26,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:26:26,013.013 INFO    ] No update needed
[2026-06-05 20:26:26,016.016 INFO    ] Checking for camera pi updates...
[2026-06-05 20:26:26,054.054 INFO    ] 200
[2026-06-05 20:26:26,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:26,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:26:26,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:26:26,162.162 INFO    ] No camera update needed
[2026-06-05 20:26:26,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:26:26,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:26:26,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:26:26,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:26:28,219.219 INFO    ] ================================================
[2026-06-05 20:26:28,235.235 INFO    ] Launching Daemon at Fri Jun  5 20:26:28 IST 2026
[2026-06-05 20:26:28,246.246 INFO    ] ================================================
[2026-06-05 20:26:28,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:26:28
[2026-06-05 20:26:29,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:26:29,707.707 INFO    ] Initializing speech engine...
[2026-06-05 20:26:29,720.720 INFO    ] 2026-06-05 20:26:29
[2026-06-05 20:26:29,970.970 INFO    ] 2026-06-05 20:26:29
[2026-06-05 20:26:30,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:26:30,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:26:30,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:26:30,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:26:30,481.481 INFO    ] time= 05/06/2026 20:26:30
[2026-06-05 20:26:30,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:26:30,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:26:30,703.703 INFO    ] No existing commands found in stream
[2026-06-05 20:26:35,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:26:35,729.729 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 20:26:37,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:26:37,124.124 INFO    ] Checking for system updates...
[2026-06-05 20:26:37,161.161 INFO    ] 200
[2026-06-05 20:26:37,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:37,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:26:37,219.219 INFO    ] No update needed
[2026-06-05 20:26:37,222.222 INFO    ] Checking for camera pi updates...
[2026-06-05 20:26:37,260.260 INFO    ] 200
[2026-06-05 20:26:37,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:37,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:26:37,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:26:37,353.353 INFO    ] No camera update needed
[2026-06-05 20:26:37,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:26:37,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:26:37,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:26:37,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:26:39,410.410 INFO    ] ================================================
[2026-06-05 20:26:39,425.425 INFO    ] Launching Daemon at Fri Jun  5 20:26:39 IST 2026
[2026-06-05 20:26:39,436.436 INFO    ] ================================================
[2026-06-05 20:26:40,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:26:40
[2026-06-05 20:26:40,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:26:40,977.977 INFO    ] Initializing speech engine...
[2026-06-05 20:26:40,991.991 INFO    ] 2026-06-05 20:26:40
[2026-06-05 20:26:41,307.307 INFO    ] 2026-06-05 20:26:41
[2026-06-05 20:26:41,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:26:41,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:26:41,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:26:41,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:26:41,830.830 INFO    ] time= 05/06/2026 20:26:41
[2026-06-05 20:26:41,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:26:41,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:26:41,987.987 INFO    ] No existing commands found in stream
[2026-06-05 20:26:47,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:26:47,004.004 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-05 20:26:48,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:26:48,677.677 INFO    ] Checking for system updates...
[2026-06-05 20:26:48,716.716 INFO    ] 200
[2026-06-05 20:26:48,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:48,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:26:48,773.773 INFO    ] No update needed
[2026-06-05 20:26:48,776.776 INFO    ] Checking for camera pi updates...
[2026-06-05 20:26:48,812.812 INFO    ] 200
[2026-06-05 20:26:48,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:26:48,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:26:48,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:26:48,910.910 INFO    ] No camera update needed
[2026-06-05 20:26:48,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:26:48,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:26:48,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:26:48,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:26:50,965.965 INFO    ] ================================================
[2026-06-05 20:26:50,980.980 INFO    ] Launching Daemon at Fri Jun  5 20:26:50 IST 2026
[2026-06-05 20:26:50,990.990 INFO    ] ================================================
[2026-06-05 20:26:51,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:26:51
[2026-06-05 20:26:52,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:26:52,405.405 INFO    ] Initializing speech engine...
[2026-06-05 20:26:52,424.424 INFO    ] 2026-06-05 20:26:52
[2026-06-05 20:26:52,673.673 INFO    ] 2026-06-05 20:26:52
[2026-06-05 20:26:52,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:26:55,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:26:55,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:26:55,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:26:55,538.538 INFO    ] time= 05/06/2026 20:26:55
[2026-06-05 20:26:55,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:26:55,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:26:55,656.656 INFO    ] No existing commands found in stream
[2026-06-05 20:27:00,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:27:00,669.669 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 20:27:03,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:27:03,160.160 INFO    ] Checking for system updates...
[2026-06-05 20:27:03,199.199 INFO    ] 200
[2026-06-05 20:27:03,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:03,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:27:03,257.257 INFO    ] No update needed
[2026-06-05 20:27:03,259.259 INFO    ] Checking for camera pi updates...
[2026-06-05 20:27:03,294.294 INFO    ] 200
[2026-06-05 20:27:03,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:03,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:27:03,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:27:03,391.391 INFO    ] No camera update needed
[2026-06-05 20:27:03,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:27:03,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:27:03,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:27:03,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:27:05,449.449 INFO    ] ================================================
[2026-06-05 20:27:05,464.464 INFO    ] Launching Daemon at Fri Jun  5 20:27:05 IST 2026
[2026-06-05 20:27:05,475.475 INFO    ] ================================================
[2026-06-05 20:27:06,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:27:06
[2026-06-05 20:27:06,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:27:06,974.974 INFO    ] Initializing speech engine...
[2026-06-05 20:27:06,997.997 INFO    ] 2026-06-05 20:27:06
[2026-06-05 20:27:07,266.266 INFO    ] 2026-06-05 20:27:07
[2026-06-05 20:27:07,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:27:07,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:27:07,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:27:07,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:27:07,875.875 INFO    ] time= 05/06/2026 20:27:07
[2026-06-05 20:27:07,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:27:07,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:27:08,001.001 INFO    ] No existing commands found in stream
[2026-06-05 20:27:13,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:27:13,029.029 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 20:27:15,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:27:15,586.586 INFO    ] Checking for system updates...
[2026-06-05 20:27:15,621.621 INFO    ] 200
[2026-06-05 20:27:15,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:15,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:27:15,685.685 INFO    ] No update needed
[2026-06-05 20:27:15,687.687 INFO    ] Checking for camera pi updates...
[2026-06-05 20:27:15,721.721 INFO    ] 200
[2026-06-05 20:27:15,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:15,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:27:15,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:27:15,822.822 INFO    ] No camera update needed
[2026-06-05 20:27:15,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:27:15,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:27:15,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:27:15,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:27:17,879.879 INFO    ] ================================================
[2026-06-05 20:27:17,894.894 INFO    ] Launching Daemon at Fri Jun  5 20:27:17 IST 2026
[2026-06-05 20:27:17,904.904 INFO    ] ================================================
[2026-06-05 20:27:18,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:27:18
[2026-06-05 20:27:19,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:27:19,397.397 INFO    ] Initializing speech engine...
[2026-06-05 20:27:19,403.403 INFO    ] 2026-06-05 20:27:19
[2026-06-05 20:27:19,653.653 INFO    ] 2026-06-05 20:27:19
[2026-06-05 20:27:19,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:27:19,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:27:19,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:27:20,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:27:20,150.150 INFO    ] time= 05/06/2026 20:27:20
[2026-06-05 20:27:20,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:27:20,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:27:20,357.357 INFO    ] No existing commands found in stream
[2026-06-05 20:27:25,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:27:25,385.385 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 20:27:26,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:27:26,356.356 INFO    ] Checking for system updates...
[2026-06-05 20:27:26,392.392 INFO    ] 200
[2026-06-05 20:27:26,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:26,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:27:26,457.457 INFO    ] No update needed
[2026-06-05 20:27:26,459.459 INFO    ] Checking for camera pi updates...
[2026-06-05 20:27:26,497.497 INFO    ] 200
[2026-06-05 20:27:26,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:26,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:27:26,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:27:26,601.601 INFO    ] No camera update needed
[2026-06-05 20:27:26,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:27:26,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:27:26,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:27:26,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:27:28,658.658 INFO    ] ================================================
[2026-06-05 20:27:28,673.673 INFO    ] Launching Daemon at Fri Jun  5 20:27:28 IST 2026
[2026-06-05 20:27:28,684.684 INFO    ] ================================================
[2026-06-05 20:27:29,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:27:29
[2026-06-05 20:27:29,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:27:30,158.158 INFO    ] Initializing speech engine...
[2026-06-05 20:27:30,184.184 INFO    ] 2026-06-05 20:27:30
[2026-06-05 20:27:30,470.470 INFO    ] 2026-06-05 20:27:30
[2026-06-05 20:27:30,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:27:30,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:27:30,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:27:30,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:27:30,886.886 INFO    ] time= 05/06/2026 20:27:30
[2026-06-05 20:27:30,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:27:30,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:27:31,081.081 INFO    ] No existing commands found in stream
[2026-06-05 20:27:36,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:27:36,107.107 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 20:27:39,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:27:39,666.666 INFO    ] Checking for system updates...
[2026-06-05 20:27:39,702.702 INFO    ] 200
[2026-06-05 20:27:39,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:39,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:27:39,762.762 INFO    ] No update needed
[2026-06-05 20:27:39,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 20:27:39,798.798 INFO    ] 200
[2026-06-05 20:27:39,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:39,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:27:39,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:27:39,893.893 INFO    ] No camera update needed
[2026-06-05 20:27:39,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:27:39,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:27:39,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:27:39,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:27:41,952.952 INFO    ] ================================================
[2026-06-05 20:27:41,967.967 INFO    ] Launching Daemon at Fri Jun  5 20:27:41 IST 2026
[2026-06-05 20:27:41,978.978 INFO    ] ================================================
[2026-06-05 20:27:42,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:27:42
[2026-06-05 20:27:43,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:27:43,411.411 INFO    ] Initializing speech engine...
[2026-06-05 20:27:43,427.427 INFO    ] 2026-06-05 20:27:43
[2026-06-05 20:27:43,696.696 INFO    ] 2026-06-05 20:27:43
[2026-06-05 20:27:43,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:27:43,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:27:44,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:27:44,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:27:44,194.194 INFO    ] time= 05/06/2026 20:27:44
[2026-06-05 20:27:44,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:27:44,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:27:44,406.406 INFO    ] No existing commands found in stream
[2026-06-05 20:27:49,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:27:49,434.434 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 20:27:52,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:27:52,541.541 INFO    ] Checking for system updates...
[2026-06-05 20:27:52,577.577 INFO    ] 200
[2026-06-05 20:27:52,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:52,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:27:52,634.634 INFO    ] No update needed
[2026-06-05 20:27:52,637.637 INFO    ] Checking for camera pi updates...
[2026-06-05 20:27:52,675.675 INFO    ] 200
[2026-06-05 20:27:52,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:27:52,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:27:52,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:27:52,775.775 INFO    ] No camera update needed
[2026-06-05 20:27:52,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:27:52,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:27:52,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:27:52,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:27:54,833.833 INFO    ] ================================================
[2026-06-05 20:27:54,849.849 INFO    ] Launching Daemon at Fri Jun  5 20:27:54 IST 2026
[2026-06-05 20:27:54,860.860 INFO    ] ================================================
[2026-06-05 20:27:55,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:27:55
[2026-06-05 20:27:56,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:27:56,458.458 INFO    ] Initializing speech engine...
[2026-06-05 20:27:56,472.472 INFO    ] 2026-06-05 20:27:56
[2026-06-05 20:27:56,742.742 INFO    ] 2026-06-05 20:27:56
[2026-06-05 20:27:56,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:27:57,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:27:57,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:27:57,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:27:57,300.300 INFO    ] time= 05/06/2026 20:27:57
[2026-06-05 20:27:57,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:27:57,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:27:57,478.478 INFO    ] No existing commands found in stream
[2026-06-05 20:28:02,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:28:02,513.513 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 20:28:06,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:28:06,025.025 INFO    ] Checking for system updates...
[2026-06-05 20:28:06,065.065 INFO    ] 200
[2026-06-05 20:28:06,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:06,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:28:06,131.131 INFO    ] No update needed
[2026-06-05 20:28:06,133.133 INFO    ] Checking for camera pi updates...
[2026-06-05 20:28:06,171.171 INFO    ] 200
[2026-06-05 20:28:06,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:06,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:28:06,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:28:06,364.364 INFO    ] No camera update needed
[2026-06-05 20:28:06,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:28:06,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:28:06,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:28:06,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:28:08,423.423 INFO    ] ================================================
[2026-06-05 20:28:08,438.438 INFO    ] Launching Daemon at Fri Jun  5 20:28:08 IST 2026
[2026-06-05 20:28:08,449.449 INFO    ] ================================================
[2026-06-05 20:28:09,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:28:09
[2026-06-05 20:28:09,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:28:09,923.923 INFO    ] Initializing speech engine...
[2026-06-05 20:28:09,931.931 INFO    ] 2026-06-05 20:28:09
[2026-06-05 20:28:10,224.224 INFO    ] 2026-06-05 20:28:10
[2026-06-05 20:28:10,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:28:10,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:28:10,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:28:10,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:28:10,736.736 INFO    ] time= 05/06/2026 20:28:10
[2026-06-05 20:28:10,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:28:10,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:28:10,994.994 INFO    ] No existing commands found in stream
[2026-06-05 20:28:16,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:28:16,015.015 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 20:28:19,342.342 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:28:19,344.344 INFO    ] Checking for system updates...
[2026-06-05 20:28:19,381.381 INFO    ] 200
[2026-06-05 20:28:19,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:19,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:28:19,439.439 INFO    ] No update needed
[2026-06-05 20:28:19,441.441 INFO    ] Checking for camera pi updates...
[2026-06-05 20:28:19,475.475 INFO    ] 200
[2026-06-05 20:28:19,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:19,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:28:19,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:28:19,582.582 INFO    ] No camera update needed
[2026-06-05 20:28:19,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:28:19,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:28:19,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:28:19,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:28:21,642.642 INFO    ] ================================================
[2026-06-05 20:28:21,657.657 INFO    ] Launching Daemon at Fri Jun  5 20:28:21 IST 2026
[2026-06-05 20:28:21,668.668 INFO    ] ================================================
[2026-06-05 20:28:22,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:28:22
[2026-06-05 20:28:22,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:28:23,082.082 INFO    ] Initializing speech engine...
[2026-06-05 20:28:23,107.107 INFO    ] 2026-06-05 20:28:23
[2026-06-05 20:28:23,376.376 INFO    ] 2026-06-05 20:28:23
[2026-06-05 20:28:23,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:28:25,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:28:25,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:28:26,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:28:26,383.383 INFO    ] time= 05/06/2026 20:28:26
[2026-06-05 20:28:26,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:28:26,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:28:26,533.533 INFO    ] No existing commands found in stream
[2026-06-05 20:28:31,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:28:31,548.548 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 20:28:33,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:28:33,146.146 INFO    ] Checking for system updates...
[2026-06-05 20:28:33,183.183 INFO    ] 200
[2026-06-05 20:28:33,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:33,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:28:33,245.245 INFO    ] No update needed
[2026-06-05 20:28:33,247.247 INFO    ] Checking for camera pi updates...
[2026-06-05 20:28:33,281.281 INFO    ] 200
[2026-06-05 20:28:33,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:33,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:28:33,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:28:33,370.370 INFO    ] No camera update needed
[2026-06-05 20:28:33,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:28:33,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:28:33,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:28:33,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:28:35,425.425 INFO    ] ================================================
[2026-06-05 20:28:35,441.441 INFO    ] Launching Daemon at Fri Jun  5 20:28:35 IST 2026
[2026-06-05 20:28:35,451.451 INFO    ] ================================================
[2026-06-05 20:28:36,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:28:36
[2026-06-05 20:28:36,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:28:36,879.879 INFO    ] Initializing speech engine...
[2026-06-05 20:28:36,900.900 INFO    ] 2026-06-05 20:28:36
[2026-06-05 20:28:37,157.157 INFO    ] 2026-06-05 20:28:37
[2026-06-05 20:28:37,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:28:37,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:28:37,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:28:37,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:28:37,558.558 INFO    ] time= 05/06/2026 20:28:37
[2026-06-05 20:28:37,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:28:37,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:28:37,775.775 INFO    ] No existing commands found in stream
[2026-06-05 20:28:42,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:28:42,789.789 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 20:28:46,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:28:46,276.276 INFO    ] Checking for system updates...
[2026-06-05 20:28:46,312.312 INFO    ] 200
[2026-06-05 20:28:46,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:46,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:28:46,379.379 INFO    ] No update needed
[2026-06-05 20:28:46,382.382 INFO    ] Checking for camera pi updates...
[2026-06-05 20:28:46,418.418 INFO    ] 200
[2026-06-05 20:28:46,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:46,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:28:46,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:28:46,515.515 INFO    ] No camera update needed
[2026-06-05 20:28:46,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:28:46,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:28:46,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:28:46,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:28:48,570.570 INFO    ] ================================================
[2026-06-05 20:28:48,585.585 INFO    ] Launching Daemon at Fri Jun  5 20:28:48 IST 2026
[2026-06-05 20:28:48,596.596 INFO    ] ================================================
[2026-06-05 20:28:49,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:28:49
[2026-06-05 20:28:49,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:28:50,043.043 INFO    ] Initializing speech engine...
[2026-06-05 20:28:50,059.059 INFO    ] 2026-06-05 20:28:50
[2026-06-05 20:28:50,329.329 INFO    ] 2026-06-05 20:28:50
[2026-06-05 20:28:50,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:28:50,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:28:50,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:28:50,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:28:50,871.871 INFO    ] time= 05/06/2026 20:28:50
[2026-06-05 20:28:50,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:28:50,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:28:51,072.072 INFO    ] No existing commands found in stream
[2026-06-05 20:28:56,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:28:56,105.105 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 20:28:57,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:28:57,612.612 INFO    ] Checking for system updates...
[2026-06-05 20:28:57,650.650 INFO    ] 200
[2026-06-05 20:28:57,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:57,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:28:57,708.708 INFO    ] No update needed
[2026-06-05 20:28:57,710.710 INFO    ] Checking for camera pi updates...
[2026-06-05 20:28:57,744.744 INFO    ] 200
[2026-06-05 20:28:57,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:28:57,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:28:57,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:28:57,845.845 INFO    ] No camera update needed
[2026-06-05 20:28:57,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:28:57,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:28:57,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:28:57,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:28:59,902.902 INFO    ] ================================================
[2026-06-05 20:28:59,917.917 INFO    ] Launching Daemon at Fri Jun  5 20:28:59 IST 2026
[2026-06-05 20:28:59,927.927 INFO    ] ================================================
[2026-06-05 20:29:00,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:29:00
[2026-06-05 20:29:01,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:29:01,327.327 INFO    ] Initializing speech engine...
[2026-06-05 20:29:01,336.336 INFO    ] 2026-06-05 20:29:01
[2026-06-05 20:29:01,644.644 INFO    ] 2026-06-05 20:29:01
[2026-06-05 20:29:01,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:29:01,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:29:01,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:29:02,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:29:02,128.128 INFO    ] time= 05/06/2026 20:29:02
[2026-06-05 20:29:02,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:29:02,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:29:02,278.278 INFO    ] No existing commands found in stream
[2026-06-05 20:29:07,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:29:07,296.296 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 20:29:10,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:29:10,792.792 INFO    ] Checking for system updates...
[2026-06-05 20:29:10,831.831 INFO    ] 200
[2026-06-05 20:29:10,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:10,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:29:10,888.888 INFO    ] No update needed
[2026-06-05 20:29:10,890.890 INFO    ] Checking for camera pi updates...
[2026-06-05 20:29:10,924.924 INFO    ] 200
[2026-06-05 20:29:10,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:10,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:29:11,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:29:11,023.023 INFO    ] No camera update needed
[2026-06-05 20:29:11,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:29:11,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:29:11,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:29:11,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:29:13,079.079 INFO    ] ================================================
[2026-06-05 20:29:13,094.094 INFO    ] Launching Daemon at Fri Jun  5 20:29:13 IST 2026
[2026-06-05 20:29:13,104.104 INFO    ] ================================================
[2026-06-05 20:29:13,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:29:13
[2026-06-05 20:29:14,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:29:14,529.529 INFO    ] Initializing speech engine...
[2026-06-05 20:29:14,544.544 INFO    ] 2026-06-05 20:29:14
[2026-06-05 20:29:14,825.825 INFO    ] 2026-06-05 20:29:14
[2026-06-05 20:29:14,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:29:15,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:29:15,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:29:15,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:29:15,356.356 INFO    ] time= 05/06/2026 20:29:15
[2026-06-05 20:29:15,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:29:15,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:29:15,566.566 INFO    ] No existing commands found in stream
[2026-06-05 20:29:20,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:29:20,597.597 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 20:29:23,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:29:23,061.061 INFO    ] Checking for system updates...
[2026-06-05 20:29:23,099.099 INFO    ] 200
[2026-06-05 20:29:23,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:23,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:29:23,160.160 INFO    ] No update needed
[2026-06-05 20:29:23,163.163 INFO    ] Checking for camera pi updates...
[2026-06-05 20:29:23,199.199 INFO    ] 200
[2026-06-05 20:29:23,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:23,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:29:23,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:29:23,289.289 INFO    ] No camera update needed
[2026-06-05 20:29:23,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:29:23,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:29:23,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:29:23,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:29:25,343.343 INFO    ] ================================================
[2026-06-05 20:29:25,358.358 INFO    ] Launching Daemon at Fri Jun  5 20:29:25 IST 2026
[2026-06-05 20:29:25,369.369 INFO    ] ================================================
[2026-06-05 20:29:25,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:29:25
[2026-06-05 20:29:26,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:29:26,811.811 INFO    ] Initializing speech engine...
[2026-06-05 20:29:26,820.820 INFO    ] 2026-06-05 20:29:26
[2026-06-05 20:29:27,083.083 INFO    ] 2026-06-05 20:29:27
[2026-06-05 20:29:27,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:29:27,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:29:27,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:29:27,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:29:27,485.485 INFO    ] time= 05/06/2026 20:29:27
[2026-06-05 20:29:27,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:29:27,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:29:27,673.673 INFO    ] No existing commands found in stream
[2026-06-05 20:29:32,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:29:32,700.700 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 20:29:33,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:29:33,526.526 INFO    ] Checking for system updates...
[2026-06-05 20:29:33,562.562 INFO    ] 200
[2026-06-05 20:29:33,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:33,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:29:33,620.620 INFO    ] No update needed
[2026-06-05 20:29:33,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 20:29:33,655.655 INFO    ] 200
[2026-06-05 20:29:33,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:33,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:29:33,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:29:33,751.751 INFO    ] No camera update needed
[2026-06-05 20:29:33,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:29:33,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:29:33,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:29:33,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:29:35,806.806 INFO    ] ================================================
[2026-06-05 20:29:35,821.821 INFO    ] Launching Daemon at Fri Jun  5 20:29:35 IST 2026
[2026-06-05 20:29:35,832.832 INFO    ] ================================================
[2026-06-05 20:29:36,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:29:36
[2026-06-05 20:29:37,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:29:37,389.389 INFO    ] Initializing speech engine...
[2026-06-05 20:29:37,396.396 INFO    ] 2026-06-05 20:29:37
[2026-06-05 20:29:37,675.675 INFO    ] 2026-06-05 20:29:37
[2026-06-05 20:29:37,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:29:37,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:29:38,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:29:38,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:29:38,221.221 INFO    ] time= 05/06/2026 20:29:38
[2026-06-05 20:29:38,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:29:38,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:29:38,382.382 INFO    ] No existing commands found in stream
[2026-06-05 20:29:43,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:29:43,411.411 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 20:29:45,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:29:45,742.742 INFO    ] Checking for system updates...
[2026-06-05 20:29:45,779.779 INFO    ] 200
[2026-06-05 20:29:45,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:45,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:29:45,843.843 INFO    ] No update needed
[2026-06-05 20:29:45,845.845 INFO    ] Checking for camera pi updates...
[2026-06-05 20:29:45,880.880 INFO    ] 200
[2026-06-05 20:29:45,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:45,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:29:45,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:29:45,986.986 INFO    ] No camera update needed
[2026-06-05 20:29:45,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:29:45,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:29:45,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:29:46,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:29:48,042.042 INFO    ] ================================================
[2026-06-05 20:29:48,057.057 INFO    ] Launching Daemon at Fri Jun  5 20:29:48 IST 2026
[2026-06-05 20:29:48,068.068 INFO    ] ================================================
[2026-06-05 20:29:48,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:29:48
[2026-06-05 20:29:49,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:29:49,639.639 INFO    ] Initializing speech engine...
[2026-06-05 20:29:49,649.649 INFO    ] 2026-06-05 20:29:49
[2026-06-05 20:29:49,920.920 INFO    ] 2026-06-05 20:29:49
[2026-06-05 20:29:49,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:29:50,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:29:50,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:29:50,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:29:50,465.465 INFO    ] time= 05/06/2026 20:29:50
[2026-06-05 20:29:50,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:29:50,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:29:50,616.616 INFO    ] No existing commands found in stream
[2026-06-05 20:29:55,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:29:55,635.635 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 20:29:56,970.970 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:29:56,973.973 INFO    ] Checking for system updates...
[2026-06-05 20:29:57,009.009 INFO    ] 200
[2026-06-05 20:29:57,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:57,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:29:57,073.073 INFO    ] No update needed
[2026-06-05 20:29:57,076.076 INFO    ] Checking for camera pi updates...
[2026-06-05 20:29:57,114.114 INFO    ] 200
[2026-06-05 20:29:57,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:29:57,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:29:57,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:29:57,210.210 INFO    ] No camera update needed
[2026-06-05 20:29:57,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:29:57,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:29:57,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:29:57,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:29:59,267.267 INFO    ] ================================================
[2026-06-05 20:29:59,282.282 INFO    ] Launching Daemon at Fri Jun  5 20:29:59 IST 2026
[2026-06-05 20:29:59,293.293 INFO    ] ================================================
[2026-06-05 20:29:59,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:29:59
[2026-06-05 20:30:00,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:30:00,901.901 INFO    ] Initializing speech engine...
[2026-06-05 20:30:00,912.912 INFO    ] 2026-06-05 20:30:00
[2026-06-05 20:30:01,188.188 INFO    ] 2026-06-05 20:30:01
[2026-06-05 20:30:01,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:30:01,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:30:01,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:30:01,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:30:01,699.699 INFO    ] time= 05/06/2026 20:30:01
[2026-06-05 20:30:01,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:30:01,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:30:01,945.945 INFO    ] No existing commands found in stream
[2026-06-05 20:30:06,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:30:06,969.969 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 20:30:08,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:30:08,953.953 INFO    ] Checking for system updates...
[2026-06-05 20:30:09,003.003 INFO    ] 200
[2026-06-05 20:30:09,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:09,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:30:09,083.083 INFO    ] No update needed
[2026-06-05 20:30:09,086.086 INFO    ] Checking for camera pi updates...
[2026-06-05 20:30:09,123.123 INFO    ] 200
[2026-06-05 20:30:09,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:09,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:30:09,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:30:09,314.314 INFO    ] No camera update needed
[2026-06-05 20:30:09,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:30:09,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:30:09,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:30:09,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:30:11,370.370 INFO    ] ================================================
[2026-06-05 20:30:11,385.385 INFO    ] Launching Daemon at Fri Jun  5 20:30:11 IST 2026
[2026-06-05 20:30:11,398.398 INFO    ] ================================================
[2026-06-05 20:30:11,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:30:11
[2026-06-05 20:30:12,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:30:12,898.898 INFO    ] Initializing speech engine...
[2026-06-05 20:30:12,911.911 INFO    ] 2026-06-05 20:30:12
[2026-06-05 20:30:13,206.206 INFO    ] 2026-06-05 20:30:13
[2026-06-05 20:30:13,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:30:13,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:30:13,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:30:13,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:30:13,703.703 INFO    ] time= 05/06/2026 20:30:13
[2026-06-05 20:30:13,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:30:13,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:30:13,927.927 INFO    ] No existing commands found in stream
[2026-06-05 20:30:18,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:30:18,961.961 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 20:30:22,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:30:22,489.489 INFO    ] Checking for system updates...
[2026-06-05 20:30:22,525.525 INFO    ] 200
[2026-06-05 20:30:22,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:22,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:30:22,588.588 INFO    ] No update needed
[2026-06-05 20:30:22,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 20:30:22,628.628 INFO    ] 200
[2026-06-05 20:30:22,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:22,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:30:22,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:30:22,722.722 INFO    ] No camera update needed
[2026-06-05 20:30:22,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:30:22,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:30:22,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:30:22,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:30:24,777.777 INFO    ] ================================================
[2026-06-05 20:30:24,792.792 INFO    ] Launching Daemon at Fri Jun  5 20:30:24 IST 2026
[2026-06-05 20:30:24,803.803 INFO    ] ================================================
[2026-06-05 20:30:25,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:30:25
[2026-06-05 20:30:25,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:30:26,226.226 INFO    ] Initializing speech engine...
[2026-06-05 20:30:26,242.242 INFO    ] 2026-06-05 20:30:26
[2026-06-05 20:30:26,523.523 INFO    ] 2026-06-05 20:30:26
[2026-06-05 20:30:26,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:30:27,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:30:27,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:30:27,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:30:27,636.636 INFO    ] time= 05/06/2026 20:30:27
[2026-06-05 20:30:27,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:30:27,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:30:27,778.778 INFO    ] No existing commands found in stream
[2026-06-05 20:30:32,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:30:32,807.807 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 20:30:34,946.946 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:30:34,949.949 INFO    ] Checking for system updates...
[2026-06-05 20:30:34,986.986 INFO    ] 200
[2026-06-05 20:30:34,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:35,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:30:35,044.044 INFO    ] No update needed
[2026-06-05 20:30:35,046.046 INFO    ] Checking for camera pi updates...
[2026-06-05 20:30:35,080.080 INFO    ] 200
[2026-06-05 20:30:35,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:35,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:30:35,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:30:35,181.181 INFO    ] No camera update needed
[2026-06-05 20:30:35,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:30:35,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:30:35,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:30:35,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:30:37,237.237 INFO    ] ================================================
[2026-06-05 20:30:37,252.252 INFO    ] Launching Daemon at Fri Jun  5 20:30:37 IST 2026
[2026-06-05 20:30:37,263.263 INFO    ] ================================================
[2026-06-05 20:30:37,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:30:37
[2026-06-05 20:30:38,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:30:38,698.698 INFO    ] Initializing speech engine...
[2026-06-05 20:30:38,707.707 INFO    ] 2026-06-05 20:30:38
[2026-06-05 20:30:38,974.974 INFO    ] 2026-06-05 20:30:38
[2026-06-05 20:30:39,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:30:39,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:30:39,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:30:39,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:30:39,388.388 INFO    ] time= 05/06/2026 20:30:39
[2026-06-05 20:30:39,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:30:39,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:30:39,533.533 INFO    ] No existing commands found in stream
[2026-06-05 20:30:44,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:30:44,560.560 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 20:30:46,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:30:46,223.223 INFO    ] Checking for system updates...
[2026-06-05 20:30:46,268.268 INFO    ] 200
[2026-06-05 20:30:46,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:46,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:30:46,333.333 INFO    ] No update needed
[2026-06-05 20:30:46,336.336 INFO    ] Checking for camera pi updates...
[2026-06-05 20:30:46,374.374 INFO    ] 200
[2026-06-05 20:30:46,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:46,418.418 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:30:46,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:30:46,467.467 INFO    ] No camera update needed
[2026-06-05 20:30:46,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:30:46,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:30:46,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:30:46,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:30:48,523.523 INFO    ] ================================================
[2026-06-05 20:30:48,539.539 INFO    ] Launching Daemon at Fri Jun  5 20:30:48 IST 2026
[2026-06-05 20:30:48,549.549 INFO    ] ================================================
[2026-06-05 20:30:49,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:30:49
[2026-06-05 20:30:49,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:30:50,007.007 INFO    ] Initializing speech engine...
[2026-06-05 20:30:50,016.016 INFO    ] 2026-06-05 20:30:50
[2026-06-05 20:30:50,264.264 INFO    ] 2026-06-05 20:30:50
[2026-06-05 20:30:50,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:30:50,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:30:50,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:30:50,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:30:50,762.762 INFO    ] time= 05/06/2026 20:30:50
[2026-06-05 20:30:50,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:30:50,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:30:50,955.955 INFO    ] No existing commands found in stream
[2026-06-05 20:30:55,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:30:55,986.986 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 20:30:58,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:30:58,767.767 INFO    ] Checking for system updates...
[2026-06-05 20:30:58,807.807 INFO    ] 200
[2026-06-05 20:30:58,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:58,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:30:58,865.865 INFO    ] No update needed
[2026-06-05 20:30:58,868.868 INFO    ] Checking for camera pi updates...
[2026-06-05 20:30:58,906.906 INFO    ] 200
[2026-06-05 20:30:58,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:30:58,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:30:59,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:30:59,010.010 INFO    ] No camera update needed
[2026-06-05 20:30:59,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:30:59,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:30:59,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:30:59,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:31:01,089.089 INFO    ] ================================================
[2026-06-05 20:31:01,145.145 INFO    ] Launching Daemon at Fri Jun  5 20:31:01 IST 2026
[2026-06-05 20:31:01,165.165 INFO    ] ================================================
[2026-06-05 20:31:01,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:31:01
[2026-06-05 20:31:02,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:31:03,057.057 INFO    ] Initializing speech engine...
[2026-06-05 20:31:03,071.071 INFO    ] 2026-06-05 20:31:03
[2026-06-05 20:31:03,356.356 INFO    ] 2026-06-05 20:31:03
[2026-06-05 20:31:03,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:31:03,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:31:03,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:31:03,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:31:03,888.888 INFO    ] time= 05/06/2026 20:31:03
[2026-06-05 20:31:03,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:31:03,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:31:04,044.044 INFO    ] No existing commands found in stream
[2026-06-05 20:31:09,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:31:09,071.071 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 20:31:11,677.677 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:31:11,680.680 INFO    ] Checking for system updates...
[2026-06-05 20:31:11,716.716 INFO    ] 200
[2026-06-05 20:31:11,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:31:11,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:31:11,774.774 INFO    ] No update needed
[2026-06-05 20:31:11,777.777 INFO    ] Checking for camera pi updates...
[2026-06-05 20:31:11,811.811 INFO    ] 200
[2026-06-05 20:31:11,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:31:11,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:31:11,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:31:11,905.905 INFO    ] No camera update needed
[2026-06-05 20:31:11,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:31:11,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:31:11,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:31:11,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:31:13,960.960 INFO    ] ================================================
[2026-06-05 20:31:13,976.976 INFO    ] Launching Daemon at Fri Jun  5 20:31:13 IST 2026
[2026-06-05 20:31:13,987.987 INFO    ] ================================================
[2026-06-05 20:31:14,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:31:14
[2026-06-05 20:31:15,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:31:15,579.579 INFO    ] Initializing speech engine...
[2026-06-05 20:31:15,585.585 INFO    ] 2026-06-05 20:31:15
[2026-06-05 20:31:15,843.843 INFO    ] 2026-06-05 20:31:15
[2026-06-05 20:31:15,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:31:16,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:31:16,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:31:16,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:31:16,343.343 INFO    ] time= 05/06/2026 20:31:16
[2026-06-05 20:31:16,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:31:16,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:31:16,567.567 INFO    ] No existing commands found in stream
[2026-06-05 20:31:21,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:31:21,601.601 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 20:31:24,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:31:24,135.135 INFO    ] Checking for system updates...
[2026-06-05 20:31:24,180.180 INFO    ] 200
[2026-06-05 20:31:24,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:31:24,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:31:24,250.250 INFO    ] No update needed
[2026-06-05 20:31:24,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 20:31:24,287.287 INFO    ] 200
[2026-06-05 20:31:24,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:31:24,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:31:24,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:31:24,388.388 INFO    ] No camera update needed
[2026-06-05 20:31:24,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:31:24,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:31:24,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:31:24,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:31:26,443.443 INFO    ] ================================================
[2026-06-05 20:31:26,463.463 INFO    ] Launching Daemon at Fri Jun  5 20:31:26 IST 2026
[2026-06-05 20:31:26,478.478 INFO    ] ================================================
[2026-06-05 20:31:27,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:31:27
[2026-06-05 20:31:27,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:31:27,900.900 INFO    ] Initializing speech engine...
[2026-06-05 20:31:27,909.909 INFO    ] 2026-06-05 20:31:27
[2026-06-05 20:31:28,198.198 INFO    ] 2026-06-05 20:31:28
[2026-06-05 20:31:28,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:31:28,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:31:28,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:31:28,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:31:28,618.618 INFO    ] time= 05/06/2026 20:31:28
[2026-06-05 20:31:28,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:31:28,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:31:28,829.829 INFO    ] No existing commands found in stream
[2026-06-05 20:31:33,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:31:33,849.849 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 20:31:34,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:31:34,697.697 INFO    ] Checking for system updates...
[2026-06-05 20:31:34,736.736 INFO    ] 200
[2026-06-05 20:31:34,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:31:34,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:31:34,796.796 INFO    ] No update needed
[2026-06-05 20:31:34,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 20:31:34,833.833 INFO    ] 200
[2026-06-05 20:31:34,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:31:34,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:31:34,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:31:34,923.923 INFO    ] No camera update needed
[2026-06-05 20:31:34,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:31:34,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:31:34,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:31:34,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:31:36,978.978 INFO    ] ================================================
[2026-06-05 20:31:36,994.994 INFO    ] Launching Daemon at Fri Jun  5 20:31:36 IST 2026
[2026-06-05 20:31:37,005.005 INFO    ] ================================================
[2026-06-05 20:31:37,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:31:37
[2026-06-05 20:31:38,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:31:38,423.423 INFO    ] Initializing speech engine...
[2026-06-05 20:31:38,431.431 INFO    ] 2026-06-05 20:31:38
[2026-06-05 20:31:38,728.728 INFO    ] 2026-06-05 20:31:38
[2026-06-05 20:31:38,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:31:38,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:31:38,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:31:39,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:31:39,227.227 INFO    ] time= 05/06/2026 20:31:39
[2026-06-05 20:31:39,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:31:39,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:31:39,501.501 INFO    ] No existing commands found in stream
[2026-06-05 20:31:44,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:31:44,521.521 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 20:31:48,490.490 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:31:48,492.492 INFO    ] Checking for system updates...
[2026-06-05 20:31:48,528.528 INFO    ] 200
[2026-06-05 20:31:48,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:31:48,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:31:48,593.593 INFO    ] No update needed
[2026-06-05 20:31:48,596.596 INFO    ] Checking for camera pi updates...
[2026-06-05 20:31:48,630.630 INFO    ] 200
[2026-06-05 20:31:48,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:31:48,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:31:48,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:31:48,723.723 INFO    ] No camera update needed
[2026-06-05 20:31:48,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:31:48,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:31:48,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:31:48,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:31:50,780.780 INFO    ] ================================================
[2026-06-05 20:31:50,796.796 INFO    ] Launching Daemon at Fri Jun  5 20:31:50 IST 2026
[2026-06-05 20:31:50,807.807 INFO    ] ================================================
[2026-06-05 20:31:51,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:31:51
[2026-06-05 20:31:51,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:31:52,211.211 INFO    ] Initializing speech engine...
[2026-06-05 20:31:52,230.230 INFO    ] 2026-06-05 20:31:52
[2026-06-05 20:31:52,490.490 INFO    ] 2026-06-05 20:31:52
[2026-06-05 20:31:52,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:31:52,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:31:52,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:31:53,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:31:53,056.056 INFO    ] time= 05/06/2026 20:31:53
[2026-06-05 20:31:53,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:31:53,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:31:53,216.216 INFO    ] No existing commands found in stream
[2026-06-05 20:31:58,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:31:58,230.230 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 20:32:00,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:32:00,089.089 INFO    ] Checking for system updates...
[2026-06-05 20:32:00,129.129 INFO    ] 200
[2026-06-05 20:32:00,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:00,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:32:00,187.187 INFO    ] No update needed
[2026-06-05 20:32:00,189.189 INFO    ] Checking for camera pi updates...
[2026-06-05 20:32:00,223.223 INFO    ] 200
[2026-06-05 20:32:00,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:00,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:32:00,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:32:00,319.319 INFO    ] No camera update needed
[2026-06-05 20:32:00,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:32:00,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:32:00,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:32:00,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:32:02,380.380 INFO    ] ================================================
[2026-06-05 20:32:02,400.400 INFO    ] Launching Daemon at Fri Jun  5 20:32:02 IST 2026
[2026-06-05 20:32:02,414.414 INFO    ] ================================================
[2026-06-05 20:32:03,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:32:03
[2026-06-05 20:32:03,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:32:03,957.957 INFO    ] Initializing speech engine...
[2026-06-05 20:32:03,966.966 INFO    ] 2026-06-05 20:32:03
[2026-06-05 20:32:04,217.217 INFO    ] 2026-06-05 20:32:04
[2026-06-05 20:32:04,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:32:04,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:32:04,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:32:04,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:32:04,664.664 INFO    ] time= 05/06/2026 20:32:04
[2026-06-05 20:32:04,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:32:04,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:32:04,952.952 INFO    ] No existing commands found in stream
[2026-06-05 20:32:09,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:32:09,969.969 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 20:32:13,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:32:13,765.765 INFO    ] Checking for system updates...
[2026-06-05 20:32:13,801.801 INFO    ] 200
[2026-06-05 20:32:13,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:13,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:32:13,859.859 INFO    ] No update needed
[2026-06-05 20:32:13,862.862 INFO    ] Checking for camera pi updates...
[2026-06-05 20:32:13,899.899 INFO    ] 200
[2026-06-05 20:32:13,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:13,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:32:14,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:32:14,090.090 INFO    ] No camera update needed
[2026-06-05 20:32:14,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:32:14,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:32:14,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:32:14,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:32:16,154.154 INFO    ] ================================================
[2026-06-05 20:32:16,170.170 INFO    ] Launching Daemon at Fri Jun  5 20:32:16 IST 2026
[2026-06-05 20:32:16,181.181 INFO    ] ================================================
[2026-06-05 20:32:16,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:32:16
[2026-06-05 20:32:17,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:32:17,788.788 INFO    ] Initializing speech engine...
[2026-06-05 20:32:17,801.801 INFO    ] 2026-06-05 20:32:17
[2026-06-05 20:32:18,084.084 INFO    ] 2026-06-05 20:32:18
[2026-06-05 20:32:18,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:32:18,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:32:18,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:32:18,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:32:18,649.649 INFO    ] time= 05/06/2026 20:32:18
[2026-06-05 20:32:18,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:32:18,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:32:18,797.797 INFO    ] No existing commands found in stream
[2026-06-05 20:32:23,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:32:23,836.836 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 20:32:28,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:32:28,187.187 INFO    ] Checking for system updates...
[2026-06-05 20:32:28,224.224 INFO    ] 200
[2026-06-05 20:32:28,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:28,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:32:28,284.284 INFO    ] No update needed
[2026-06-05 20:32:28,287.287 INFO    ] Checking for camera pi updates...
[2026-06-05 20:32:28,325.325 INFO    ] 200
[2026-06-05 20:32:28,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:28,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:32:28,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:32:28,427.427 INFO    ] No camera update needed
[2026-06-05 20:32:28,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:32:28,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:32:28,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:32:28,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:32:30,486.486 INFO    ] ================================================
[2026-06-05 20:32:30,502.502 INFO    ] Launching Daemon at Fri Jun  5 20:32:30 IST 2026
[2026-06-05 20:32:30,513.513 INFO    ] ================================================
[2026-06-05 20:32:31,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:32:31
[2026-06-05 20:32:31,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:32:32,042.042 INFO    ] Initializing speech engine...
[2026-06-05 20:32:32,053.053 INFO    ] 2026-06-05 20:32:32
[2026-06-05 20:32:32,336.336 INFO    ] 2026-06-05 20:32:32
[2026-06-05 20:32:32,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:32:32,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:32:32,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:32:32,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:32:32,973.973 INFO    ] time= 05/06/2026 20:32:32
[2026-06-05 20:32:32,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:32:33,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:32:33,167.167 INFO    ] No existing commands found in stream
[2026-06-05 20:32:38,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:32:38,202.202 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 20:32:39,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:32:39,318.318 INFO    ] Checking for system updates...
[2026-06-05 20:32:39,361.361 INFO    ] 200
[2026-06-05 20:32:39,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:39,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:32:39,426.426 INFO    ] No update needed
[2026-06-05 20:32:39,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 20:32:39,463.463 INFO    ] 200
[2026-06-05 20:32:39,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:39,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:32:39,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:32:39,562.562 INFO    ] No camera update needed
[2026-06-05 20:32:39,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:32:39,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:32:39,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:32:39,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:32:41,623.623 INFO    ] ================================================
[2026-06-05 20:32:41,639.639 INFO    ] Launching Daemon at Fri Jun  5 20:32:41 IST 2026
[2026-06-05 20:32:41,651.651 INFO    ] ================================================
[2026-06-05 20:32:42,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:32:42
[2026-06-05 20:32:42,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:32:43,059.059 INFO    ] Initializing speech engine...
[2026-06-05 20:32:43,071.071 INFO    ] 2026-06-05 20:32:43
[2026-06-05 20:32:43,339.339 INFO    ] 2026-06-05 20:32:43
[2026-06-05 20:32:43,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:32:43,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:32:43,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:32:43,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:32:43,821.821 INFO    ] time= 05/06/2026 20:32:43
[2026-06-05 20:32:43,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:32:43,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:32:44,036.036 INFO    ] No existing commands found in stream
[2026-06-05 20:32:49,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:32:49,061.061 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 20:32:53,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:32:53,166.166 INFO    ] Checking for system updates...
[2026-06-05 20:32:53,201.201 INFO    ] 200
[2026-06-05 20:32:53,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:53,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:32:53,259.259 INFO    ] No update needed
[2026-06-05 20:32:53,262.262 INFO    ] Checking for camera pi updates...
[2026-06-05 20:32:53,296.296 INFO    ] 200
[2026-06-05 20:32:53,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:32:53,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:32:53,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:32:53,385.385 INFO    ] No camera update needed
[2026-06-05 20:32:53,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:32:53,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:32:53,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:32:53,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:32:55,443.443 INFO    ] ================================================
[2026-06-05 20:32:55,458.458 INFO    ] Launching Daemon at Fri Jun  5 20:32:55 IST 2026
[2026-06-05 20:32:55,470.470 INFO    ] ================================================
[2026-06-05 20:32:56,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:32:56
[2026-06-05 20:32:56,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:32:56,938.938 INFO    ] Initializing speech engine...
[2026-06-05 20:32:56,947.947 INFO    ] 2026-06-05 20:32:56
[2026-06-05 20:32:57,211.211 INFO    ] 2026-06-05 20:32:57
[2026-06-05 20:32:57,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:32:58,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:32:58,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:32:58,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:32:58,424.424 INFO    ] time= 05/06/2026 20:32:58
[2026-06-05 20:32:58,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:32:58,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:32:58,585.585 INFO    ] No existing commands found in stream
[2026-06-05 20:33:03,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:33:03,606.606 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-05 20:33:07,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:33:07,925.925 INFO    ] Checking for system updates...
[2026-06-05 20:33:07,962.962 INFO    ] 200
[2026-06-05 20:33:07,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:08,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:33:08,024.024 INFO    ] No update needed
[2026-06-05 20:33:08,027.027 INFO    ] Checking for camera pi updates...
[2026-06-05 20:33:08,060.060 INFO    ] 200
[2026-06-05 20:33:08,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:08,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:33:08,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:33:08,142.142 INFO    ] No camera update needed
[2026-06-05 20:33:08,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:33:08,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:33:08,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:33:08,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:33:10,202.202 INFO    ] ================================================
[2026-06-05 20:33:10,219.219 INFO    ] Launching Daemon at Fri Jun  5 20:33:10 IST 2026
[2026-06-05 20:33:10,229.229 INFO    ] ================================================
[2026-06-05 20:33:10,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:33:10
[2026-06-05 20:33:11,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:33:11,797.797 INFO    ] Initializing speech engine...
[2026-06-05 20:33:11,811.811 INFO    ] 2026-06-05 20:33:11
[2026-06-05 20:33:12,091.091 INFO    ] 2026-06-05 20:33:12
[2026-06-05 20:33:12,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:33:12,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:33:12,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:33:12,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:33:12,639.639 INFO    ] time= 05/06/2026 20:33:12
[2026-06-05 20:33:12,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:33:12,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:33:12,794.794 INFO    ] No existing commands found in stream
[2026-06-05 20:33:17,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:33:17,821.821 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 20:33:19,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:33:19,299.299 INFO    ] Checking for system updates...
[2026-06-05 20:33:19,335.335 INFO    ] 200
[2026-06-05 20:33:19,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:19,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:33:19,392.392 INFO    ] No update needed
[2026-06-05 20:33:19,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 20:33:19,430.430 INFO    ] 200
[2026-06-05 20:33:19,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:19,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:33:19,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:33:19,538.538 INFO    ] No camera update needed
[2026-06-05 20:33:19,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:33:19,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:33:19,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:33:19,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:33:21,594.594 INFO    ] ================================================
[2026-06-05 20:33:21,609.609 INFO    ] Launching Daemon at Fri Jun  5 20:33:21 IST 2026
[2026-06-05 20:33:21,621.621 INFO    ] ================================================
[2026-06-05 20:33:22,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:33:22
[2026-06-05 20:33:22,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:33:23,032.032 INFO    ] Initializing speech engine...
[2026-06-05 20:33:23,041.041 INFO    ] 2026-06-05 20:33:23
[2026-06-05 20:33:23,315.315 INFO    ] 2026-06-05 20:33:23
[2026-06-05 20:33:23,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:33:23,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:33:23,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:33:23,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:33:23,691.691 INFO    ] time= 05/06/2026 20:33:23
[2026-06-05 20:33:23,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:33:23,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:33:23,883.883 INFO    ] No existing commands found in stream
[2026-06-05 20:33:28,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:33:28,905.905 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 20:33:32,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:33:32,812.812 INFO    ] Checking for system updates...
[2026-06-05 20:33:32,865.865 INFO    ] 200
[2026-06-05 20:33:32,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:32,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:33:32,931.931 INFO    ] No update needed
[2026-06-05 20:33:32,934.934 INFO    ] Checking for camera pi updates...
[2026-06-05 20:33:32,970.970 INFO    ] 200
[2026-06-05 20:33:32,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:33,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:33:33,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:33:33,066.066 INFO    ] No camera update needed
[2026-06-05 20:33:33,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:33:33,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:33:33,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:33:33,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:33:35,126.126 INFO    ] ================================================
[2026-06-05 20:33:35,142.142 INFO    ] Launching Daemon at Fri Jun  5 20:33:35 IST 2026
[2026-06-05 20:33:35,153.153 INFO    ] ================================================
[2026-06-05 20:33:35,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:33:35
[2026-06-05 20:33:36,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:33:36,615.615 INFO    ] Initializing speech engine...
[2026-06-05 20:33:36,623.623 INFO    ] 2026-06-05 20:33:36
[2026-06-05 20:33:36,894.894 INFO    ] 2026-06-05 20:33:36
[2026-06-05 20:33:36,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:33:37,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:33:37,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:33:37,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:33:37,427.427 INFO    ] time= 05/06/2026 20:33:37
[2026-06-05 20:33:37,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:33:37,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:33:37,572.572 INFO    ] No existing commands found in stream
[2026-06-05 20:33:42,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:33:42,597.597 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 20:33:47,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:33:47,052.052 INFO    ] Checking for system updates...
[2026-06-05 20:33:47,088.088 INFO    ] 200
[2026-06-05 20:33:47,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:47,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:33:47,149.149 INFO    ] No update needed
[2026-06-05 20:33:47,151.151 INFO    ] Checking for camera pi updates...
[2026-06-05 20:33:47,202.202 INFO    ] 200
[2026-06-05 20:33:47,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:47,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:33:47,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:33:47,299.299 INFO    ] No camera update needed
[2026-06-05 20:33:47,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:33:47,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:33:47,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:33:47,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:33:49,355.355 INFO    ] ================================================
[2026-06-05 20:33:49,372.372 INFO    ] Launching Daemon at Fri Jun  5 20:33:49 IST 2026
[2026-06-05 20:33:49,383.383 INFO    ] ================================================
[2026-06-05 20:33:49,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:33:49
[2026-06-05 20:33:50,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:33:50,839.839 INFO    ] Initializing speech engine...
[2026-06-05 20:33:50,847.847 INFO    ] 2026-06-05 20:33:50
[2026-06-05 20:33:51,109.109 INFO    ] 2026-06-05 20:33:51
[2026-06-05 20:33:51,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:33:51,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:33:51,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:33:51,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:33:51,659.659 INFO    ] time= 05/06/2026 20:33:51
[2026-06-05 20:33:51,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:33:51,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:33:51,809.809 INFO    ] No existing commands found in stream
[2026-06-05 20:33:56,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:33:56,828.828 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 20:33:59,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:33:59,006.006 INFO    ] Checking for system updates...
[2026-06-05 20:33:59,043.043 INFO    ] 200
[2026-06-05 20:33:59,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:59,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:33:59,102.102 INFO    ] No update needed
[2026-06-05 20:33:59,104.104 INFO    ] Checking for camera pi updates...
[2026-06-05 20:33:59,139.139 INFO    ] 200
[2026-06-05 20:33:59,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:33:59,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:33:59,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:33:59,221.221 INFO    ] No camera update needed
[2026-06-05 20:33:59,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:33:59,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:33:59,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:33:59,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:34:01,282.282 INFO    ] ================================================
[2026-06-05 20:34:01,298.298 INFO    ] Launching Daemon at Fri Jun  5 20:34:01 IST 2026
[2026-06-05 20:34:01,310.310 INFO    ] ================================================
[2026-06-05 20:34:02,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:34:02
[2026-06-05 20:34:02,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:34:03,135.135 INFO    ] Initializing speech engine...
[2026-06-05 20:34:03,145.145 INFO    ] 2026-06-05 20:34:03
[2026-06-05 20:34:03,429.429 INFO    ] 2026-06-05 20:34:03
[2026-06-05 20:34:03,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:34:03,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:34:03,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:34:03,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:34:04,003.003 INFO    ] time= 05/06/2026 20:34:03
[2026-06-05 20:34:04,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:34:04,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:34:04,161.161 INFO    ] No existing commands found in stream
[2026-06-05 20:34:09,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:34:09,179.179 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 20:34:11,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:34:11,702.702 INFO    ] Checking for system updates...
[2026-06-05 20:34:11,739.739 INFO    ] 200
[2026-06-05 20:34:11,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:34:11,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:34:11,798.798 INFO    ] No update needed
[2026-06-05 20:34:11,801.801 INFO    ] Checking for camera pi updates...
[2026-06-05 20:34:11,834.834 INFO    ] 200
[2026-06-05 20:34:11,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:34:11,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:34:11,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:34:11,936.936 INFO    ] No camera update needed
[2026-06-05 20:34:11,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:34:11,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:34:11,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:34:11,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:34:13,993.993 INFO    ] ================================================
[2026-06-05 20:34:14,008.008 INFO    ] Launching Daemon at Fri Jun  5 20:34:14 IST 2026
[2026-06-05 20:34:14,019.019 INFO    ] ================================================
[2026-06-05 20:34:14,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:34:14
[2026-06-05 20:34:15,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:34:15,556.556 INFO    ] Initializing speech engine...
[2026-06-05 20:34:15,568.568 INFO    ] 2026-06-05 20:34:15
[2026-06-05 20:34:15,854.854 INFO    ] 2026-06-05 20:34:15
[2026-06-05 20:34:15,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:34:16,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:34:16,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:34:16,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:34:16,437.437 INFO    ] time= 05/06/2026 20:34:16
[2026-06-05 20:34:16,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:34:16,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:34:16,645.645 INFO    ] No existing commands found in stream
[2026-06-05 20:34:21,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:34:21,664.664 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 20:34:25,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:34:25,968.968 INFO    ] Checking for system updates...
[2026-06-05 20:34:26,004.004 INFO    ] 200
[2026-06-05 20:34:26,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:34:26,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:34:26,070.070 INFO    ] No update needed
[2026-06-05 20:34:26,072.072 INFO    ] Checking for camera pi updates...
[2026-06-05 20:34:26,107.107 INFO    ] 200
[2026-06-05 20:34:26,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:34:26,149.149 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:34:26,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:34:26,294.294 INFO    ] No camera update needed
[2026-06-05 20:34:26,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:34:26,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:34:26,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:34:26,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:34:28,351.351 INFO    ] ================================================
[2026-06-05 20:34:28,368.368 INFO    ] Launching Daemon at Fri Jun  5 20:34:28 IST 2026
[2026-06-05 20:34:28,379.379 INFO    ] ================================================
[2026-06-05 20:34:29,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:34:29
[2026-06-05 20:34:29,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:34:29,927.927 INFO    ] Initializing speech engine...
[2026-06-05 20:34:29,941.941 INFO    ] 2026-06-05 20:34:29
[2026-06-05 20:34:30,210.210 INFO    ] 2026-06-05 20:34:30
[2026-06-05 20:34:30,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:34:30,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:34:30,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:34:30,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:34:30,689.689 INFO    ] time= 05/06/2026 20:34:30
[2026-06-05 20:34:30,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:34:30,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:34:30,938.938 INFO    ] No existing commands found in stream
[2026-06-05 20:34:35,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:34:35,958.958 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 20:34:36,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:34:36,541.541 INFO    ] Checking for system updates...
[2026-06-05 20:34:36,577.577 INFO    ] 200
[2026-06-05 20:34:36,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:34:36,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:34:36,634.634 INFO    ] No update needed
[2026-06-05 20:34:36,637.637 INFO    ] Checking for camera pi updates...
[2026-06-05 20:34:36,671.671 INFO    ] 200
[2026-06-05 20:34:36,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:34:36,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:34:36,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:34:36,751.751 INFO    ] No camera update needed
[2026-06-05 20:34:36,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:34:36,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:34:36,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:34:36,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:34:38,809.809 INFO    ] ================================================
[2026-06-05 20:34:38,825.825 INFO    ] Launching Daemon at Fri Jun  5 20:34:38 IST 2026
[2026-06-05 20:34:38,837.837 INFO    ] ================================================
[2026-06-05 20:34:39,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:34:39
[2026-06-05 20:34:40,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:34:40,284.284 INFO    ] Initializing speech engine...
[2026-06-05 20:34:40,293.293 INFO    ] 2026-06-05 20:34:40
[2026-06-05 20:34:40,586.586 INFO    ] 2026-06-05 20:34:40
[2026-06-05 20:34:40,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:34:41,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:34:41,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:34:41,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:34:41,845.845 INFO    ] time= 05/06/2026 20:34:41
[2026-06-05 20:34:41,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:34:41,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:34:41,981.981 INFO    ] No existing commands found in stream
[2026-06-05 20:34:46,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:34:46,994.994 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 20:34:48,223.223 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:34:48,226.226 INFO    ] Checking for system updates...
[2026-06-05 20:34:48,266.266 INFO    ] 200
[2026-06-05 20:34:48,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:34:48,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:34:48,332.332 INFO    ] No update needed
[2026-06-05 20:34:48,335.335 INFO    ] Checking for camera pi updates...
[2026-06-05 20:34:48,373.373 INFO    ] 200
[2026-06-05 20:34:48,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:34:48,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:34:48,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:34:48,468.468 INFO    ] No camera update needed
[2026-06-05 20:34:48,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:34:48,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:34:48,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:34:48,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:34:50,523.523 INFO    ] ================================================
[2026-06-05 20:34:50,538.538 INFO    ] Launching Daemon at Fri Jun  5 20:34:50 IST 2026
[2026-06-05 20:34:50,549.549 INFO    ] ================================================
[2026-06-05 20:34:51,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:34:51
[2026-06-05 20:34:51,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:34:51,950.950 INFO    ] Initializing speech engine...
[2026-06-05 20:34:51,971.971 INFO    ] 2026-06-05 20:34:51
[2026-06-05 20:34:52,232.232 INFO    ] 2026-06-05 20:34:52
[2026-06-05 20:34:52,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:34:52,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:34:52,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:34:52,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:34:52,722.722 INFO    ] time= 05/06/2026 20:34:52
[2026-06-05 20:34:52,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:34:52,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:34:52,949.949 INFO    ] No existing commands found in stream
[2026-06-05 20:34:57,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:34:57,970.970 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 20:35:02,401.401 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:35:02,405.405 INFO    ] Checking for system updates...
[2026-06-05 20:35:02,447.447 INFO    ] 200
[2026-06-05 20:35:02,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:02,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:35:02,515.515 INFO    ] No update needed
[2026-06-05 20:35:02,518.518 INFO    ] Checking for camera pi updates...
[2026-06-05 20:35:02,562.562 INFO    ] 200
[2026-06-05 20:35:02,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:02,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:35:02,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:35:02,674.674 INFO    ] No camera update needed
[2026-06-05 20:35:02,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:35:02,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:35:02,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:35:02,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:35:04,743.743 INFO    ] ================================================
[2026-06-05 20:35:04,759.759 INFO    ] Launching Daemon at Fri Jun  5 20:35:04 IST 2026
[2026-06-05 20:35:04,770.770 INFO    ] ================================================
[2026-06-05 20:35:05,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:35:05
[2026-06-05 20:35:05,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:35:06,196.196 INFO    ] Initializing speech engine...
[2026-06-05 20:35:06,202.202 INFO    ] 2026-06-05 20:35:06
[2026-06-05 20:35:06,460.460 INFO    ] 2026-06-05 20:35:06
[2026-06-05 20:35:06,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:35:06,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:35:06,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:35:06,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:35:06,954.954 INFO    ] time= 05/06/2026 20:35:06
[2026-06-05 20:35:07,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:35:07,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:35:07,158.158 INFO    ] No existing commands found in stream
[2026-06-05 20:35:12,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:35:12,186.186 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 20:35:14,826.826 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:35:14,829.829 INFO    ] Checking for system updates...
[2026-06-05 20:35:14,873.873 INFO    ] 200
[2026-06-05 20:35:14,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:14,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:35:14,940.940 INFO    ] No update needed
[2026-06-05 20:35:14,943.943 INFO    ] Checking for camera pi updates...
[2026-06-05 20:35:14,979.979 INFO    ] 200
[2026-06-05 20:35:14,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:15,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:35:15,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:35:15,078.078 INFO    ] No camera update needed
[2026-06-05 20:35:15,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:35:15,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:35:15,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:35:15,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:35:17,139.139 INFO    ] ================================================
[2026-06-05 20:35:17,157.157 INFO    ] Launching Daemon at Fri Jun  5 20:35:17 IST 2026
[2026-06-05 20:35:17,168.168 INFO    ] ================================================
[2026-06-05 20:35:17,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:35:17
[2026-06-05 20:35:18,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:35:18,675.675 INFO    ] Initializing speech engine...
[2026-06-05 20:35:18,685.685 INFO    ] 2026-06-05 20:35:18
[2026-06-05 20:35:18,950.950 INFO    ] 2026-06-05 20:35:18
[2026-06-05 20:35:18,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:35:19,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:35:19,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:35:19,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:35:19,425.425 INFO    ] time= 05/06/2026 20:35:19
[2026-06-05 20:35:19,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:35:19,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:35:19,609.609 INFO    ] No existing commands found in stream
[2026-06-05 20:35:24,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:35:24,628.628 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 20:35:26,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:35:26,304.304 INFO    ] Checking for system updates...
[2026-06-05 20:35:26,344.344 INFO    ] 200
[2026-06-05 20:35:26,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:26,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:35:26,402.402 INFO    ] No update needed
[2026-06-05 20:35:26,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 20:35:26,438.438 INFO    ] 200
[2026-06-05 20:35:26,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:26,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:35:26,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:35:26,533.533 INFO    ] No camera update needed
[2026-06-05 20:35:26,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:35:26,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:35:26,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:35:26,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:35:28,590.590 INFO    ] ================================================
[2026-06-05 20:35:28,607.607 INFO    ] Launching Daemon at Fri Jun  5 20:35:28 IST 2026
[2026-06-05 20:35:28,618.618 INFO    ] ================================================
[2026-06-05 20:35:29,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:35:29
[2026-06-05 20:35:29,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:35:30,252.252 INFO    ] Initializing speech engine...
[2026-06-05 20:35:30,261.261 INFO    ] 2026-06-05 20:35:30
[2026-06-05 20:35:30,532.532 INFO    ] 2026-06-05 20:35:30
[2026-06-05 20:35:30,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:35:30,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:35:30,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:35:31,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:35:31,084.084 INFO    ] time= 05/06/2026 20:35:31
[2026-06-05 20:35:31,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:35:31,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:35:31,238.238 INFO    ] No existing commands found in stream
[2026-06-05 20:35:36,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:35:36,259.259 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 20:35:40,257.257 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:35:40,260.260 INFO    ] Checking for system updates...
[2026-06-05 20:35:40,302.302 INFO    ] 200
[2026-06-05 20:35:40,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:40,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:35:40,362.362 INFO    ] No update needed
[2026-06-05 20:35:40,364.364 INFO    ] Checking for camera pi updates...
[2026-06-05 20:35:40,400.400 INFO    ] 200
[2026-06-05 20:35:40,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:40,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:35:40,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:35:40,494.494 INFO    ] No camera update needed
[2026-06-05 20:35:40,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:35:40,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:35:40,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:35:40,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:35:42,555.555 INFO    ] ================================================
[2026-06-05 20:35:42,571.571 INFO    ] Launching Daemon at Fri Jun  5 20:35:42 IST 2026
[2026-06-05 20:35:42,582.582 INFO    ] ================================================
[2026-06-05 20:35:43,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:35:43
[2026-06-05 20:35:43,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:35:44,015.015 INFO    ] Initializing speech engine...
[2026-06-05 20:35:44,037.037 INFO    ] 2026-06-05 20:35:44
[2026-06-05 20:35:44,293.293 INFO    ] 2026-06-05 20:35:44
[2026-06-05 20:35:44,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:35:44,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:35:44,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:35:44,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:35:44,771.771 INFO    ] time= 05/06/2026 20:35:44
[2026-06-05 20:35:44,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:35:44,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:35:45,008.008 INFO    ] No existing commands found in stream
[2026-06-05 20:35:50,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:35:50,038.038 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 20:35:53,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:35:53,659.659 INFO    ] Checking for system updates...
[2026-06-05 20:35:53,696.696 INFO    ] 200
[2026-06-05 20:35:53,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:53,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:35:53,754.754 INFO    ] No update needed
[2026-06-05 20:35:53,757.757 INFO    ] Checking for camera pi updates...
[2026-06-05 20:35:53,791.791 INFO    ] 200
[2026-06-05 20:35:53,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:35:53,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:35:53,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:35:53,902.902 INFO    ] No camera update needed
[2026-06-05 20:35:53,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:35:53,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:35:53,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:35:53,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:35:55,957.957 INFO    ] ================================================
[2026-06-05 20:35:55,973.973 INFO    ] Launching Daemon at Fri Jun  5 20:35:55 IST 2026
[2026-06-05 20:35:55,984.984 INFO    ] ================================================
[2026-06-05 20:35:56,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:35:56
[2026-06-05 20:35:57,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:35:57,636.636 INFO    ] Initializing speech engine...
[2026-06-05 20:35:57,648.648 INFO    ] 2026-06-05 20:35:57
[2026-06-05 20:35:57,935.935 INFO    ] 2026-06-05 20:35:57
[2026-06-05 20:35:57,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:35:59,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:35:59,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:36:00,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:36:00,130.130 INFO    ] time= 05/06/2026 20:36:00
[2026-06-05 20:36:00,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:36:00,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:36:00,284.284 INFO    ] No existing commands found in stream
[2026-06-05 20:36:05,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:36:05,300.300 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 20:36:06,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:36:06,487.487 INFO    ] Checking for system updates...
[2026-06-05 20:36:06,524.524 INFO    ] 200
[2026-06-05 20:36:06,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:06,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:36:06,584.584 INFO    ] No update needed
[2026-06-05 20:36:06,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 20:36:06,624.624 INFO    ] 200
[2026-06-05 20:36:06,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:06,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:36:06,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:36:06,710.710 INFO    ] No camera update needed
[2026-06-05 20:36:06,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:36:06,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:36:06,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:36:06,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:36:08,769.769 INFO    ] ================================================
[2026-06-05 20:36:08,785.785 INFO    ] Launching Daemon at Fri Jun  5 20:36:08 IST 2026
[2026-06-05 20:36:08,796.796 INFO    ] ================================================
[2026-06-05 20:36:09,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:36:09
[2026-06-05 20:36:09,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:36:10,271.271 INFO    ] Initializing speech engine...
[2026-06-05 20:36:10,279.279 INFO    ] 2026-06-05 20:36:10
[2026-06-05 20:36:10,538.538 INFO    ] 2026-06-05 20:36:10
[2026-06-05 20:36:10,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:36:10,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:36:10,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:36:10,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:36:11,003.003 INFO    ] time= 05/06/2026 20:36:10
[2026-06-05 20:36:11,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:36:11,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:36:11,239.239 INFO    ] No existing commands found in stream
[2026-06-05 20:36:16,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:36:16,264.264 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 20:36:18,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:36:18,340.340 INFO    ] Checking for system updates...
[2026-06-05 20:36:18,376.376 INFO    ] 200
[2026-06-05 20:36:18,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:18,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:36:18,433.433 INFO    ] No update needed
[2026-06-05 20:36:18,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 20:36:18,469.469 INFO    ] 200
[2026-06-05 20:36:18,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:18,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:36:18,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:36:18,561.561 INFO    ] No camera update needed
[2026-06-05 20:36:18,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:36:18,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:36:18,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:36:18,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:36:20,617.617 INFO    ] ================================================
[2026-06-05 20:36:20,632.632 INFO    ] Launching Daemon at Fri Jun  5 20:36:20 IST 2026
[2026-06-05 20:36:20,643.643 INFO    ] ================================================
[2026-06-05 20:36:21,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:36:21
[2026-06-05 20:36:21,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:36:22,046.046 INFO    ] Initializing speech engine...
[2026-06-05 20:36:22,068.068 INFO    ] 2026-06-05 20:36:22
[2026-06-05 20:36:22,320.320 INFO    ] 2026-06-05 20:36:22
[2026-06-05 20:36:22,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:36:22,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:36:22,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:36:22,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:36:22,882.882 INFO    ] time= 05/06/2026 20:36:22
[2026-06-05 20:36:22,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:36:22,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:36:23,047.047 INFO    ] No existing commands found in stream
[2026-06-05 20:36:28,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:36:28,070.070 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 20:36:31,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:36:31,315.315 INFO    ] Checking for system updates...
[2026-06-05 20:36:31,352.352 INFO    ] 200
[2026-06-05 20:36:31,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:31,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:36:31,417.417 INFO    ] No update needed
[2026-06-05 20:36:31,420.420 INFO    ] Checking for camera pi updates...
[2026-06-05 20:36:31,458.458 INFO    ] 200
[2026-06-05 20:36:31,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:31,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:36:31,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:36:31,662.662 INFO    ] No camera update needed
[2026-06-05 20:36:31,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:36:31,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:36:31,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:36:31,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:36:33,723.723 INFO    ] ================================================
[2026-06-05 20:36:33,738.738 INFO    ] Launching Daemon at Fri Jun  5 20:36:33 IST 2026
[2026-06-05 20:36:33,748.748 INFO    ] ================================================
[2026-06-05 20:36:34,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:36:34
[2026-06-05 20:36:34,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:36:35,283.283 INFO    ] Initializing speech engine...
[2026-06-05 20:36:35,291.291 INFO    ] 2026-06-05 20:36:35
[2026-06-05 20:36:35,552.552 INFO    ] 2026-06-05 20:36:35
[2026-06-05 20:36:35,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:36:35,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:36:35,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:36:35,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:36:36,045.045 INFO    ] time= 05/06/2026 20:36:36
[2026-06-05 20:36:36,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:36:36,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:36:36,255.255 INFO    ] No existing commands found in stream
[2026-06-05 20:36:41,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:36:41,278.278 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 20:36:42,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:36:42,854.854 INFO    ] Checking for system updates...
[2026-06-05 20:36:42,893.893 INFO    ] 200
[2026-06-05 20:36:42,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:42,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:36:42,950.950 INFO    ] No update needed
[2026-06-05 20:36:42,953.953 INFO    ] Checking for camera pi updates...
[2026-06-05 20:36:42,987.987 INFO    ] 200
[2026-06-05 20:36:42,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:43,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:36:43,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:36:43,070.070 INFO    ] No camera update needed
[2026-06-05 20:36:43,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:36:43,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:36:43,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:36:43,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:36:45,127.127 INFO    ] ================================================
[2026-06-05 20:36:45,142.142 INFO    ] Launching Daemon at Fri Jun  5 20:36:45 IST 2026
[2026-06-05 20:36:45,153.153 INFO    ] ================================================
[2026-06-05 20:36:45,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:36:45
[2026-06-05 20:36:46,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:36:46,611.611 INFO    ] Initializing speech engine...
[2026-06-05 20:36:46,618.618 INFO    ] 2026-06-05 20:36:46
[2026-06-05 20:36:46,880.880 INFO    ] 2026-06-05 20:36:46
[2026-06-05 20:36:46,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:36:47,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:36:47,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:36:47,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:36:47,434.434 INFO    ] time= 05/06/2026 20:36:47
[2026-06-05 20:36:47,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:36:47,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:36:47,590.590 INFO    ] No existing commands found in stream
[2026-06-05 20:36:52,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:36:52,618.618 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 20:36:53,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:36:53,860.860 INFO    ] Checking for system updates...
[2026-06-05 20:36:53,896.896 INFO    ] 200
[2026-06-05 20:36:53,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:53,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:36:53,953.953 INFO    ] No update needed
[2026-06-05 20:36:53,956.956 INFO    ] Checking for camera pi updates...
[2026-06-05 20:36:53,990.990 INFO    ] 200
[2026-06-05 20:36:53,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:36:54,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:36:54,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:36:54,087.087 INFO    ] No camera update needed
[2026-06-05 20:36:54,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:36:54,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:36:54,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:36:54,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:36:56,143.143 INFO    ] ================================================
[2026-06-05 20:36:56,158.158 INFO    ] Launching Daemon at Fri Jun  5 20:36:56 IST 2026
[2026-06-05 20:36:56,169.169 INFO    ] ================================================
[2026-06-05 20:36:56,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:36:56
[2026-06-05 20:36:57,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:36:57,595.595 INFO    ] Initializing speech engine...
[2026-06-05 20:36:57,603.603 INFO    ] 2026-06-05 20:36:57
[2026-06-05 20:36:57,890.890 INFO    ] 2026-06-05 20:36:57
[2026-06-05 20:36:57,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:37:00,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:37:00,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:37:01,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:37:01,025.025 INFO    ] time= 05/06/2026 20:37:01
[2026-06-05 20:37:01,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:37:01,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:37:01,106.106 INFO    ] No existing commands found in stream
[2026-06-05 20:37:06,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:37:06,118.118 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 20:37:08,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:37:08,345.345 INFO    ] Checking for system updates...
[2026-06-05 20:37:08,382.382 INFO    ] 200
[2026-06-05 20:37:08,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:08,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:37:08,446.446 INFO    ] No update needed
[2026-06-05 20:37:08,448.448 INFO    ] Checking for camera pi updates...
[2026-06-05 20:37:08,482.482 INFO    ] 200
[2026-06-05 20:37:08,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:08,525.525 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:37:08,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:37:08,565.565 INFO    ] No camera update needed
[2026-06-05 20:37:08,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:37:08,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:37:08,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:37:08,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:37:10,621.621 INFO    ] ================================================
[2026-06-05 20:37:10,636.636 INFO    ] Launching Daemon at Fri Jun  5 20:37:10 IST 2026
[2026-06-05 20:37:10,647.647 INFO    ] ================================================
[2026-06-05 20:37:11,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:37:11
[2026-06-05 20:37:11,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:37:12,100.100 INFO    ] Initializing speech engine...
[2026-06-05 20:37:12,108.108 INFO    ] 2026-06-05 20:37:12
[2026-06-05 20:37:12,406.406 INFO    ] 2026-06-05 20:37:12
[2026-06-05 20:37:12,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:37:12,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:37:12,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:37:12,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:37:12,812.812 INFO    ] time= 05/06/2026 20:37:12
[2026-06-05 20:37:12,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:37:12,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:37:13,012.012 INFO    ] No existing commands found in stream
[2026-06-05 20:37:18,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:37:18,025.025 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 20:37:18,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:37:18,700.700 INFO    ] Checking for system updates...
[2026-06-05 20:37:18,736.736 INFO    ] 200
[2026-06-05 20:37:18,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:18,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:37:18,794.794 INFO    ] No update needed
[2026-06-05 20:37:18,797.797 INFO    ] Checking for camera pi updates...
[2026-06-05 20:37:18,831.831 INFO    ] 200
[2026-06-05 20:37:18,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:18,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:37:18,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:37:18,927.927 INFO    ] No camera update needed
[2026-06-05 20:37:18,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:37:18,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:37:18,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:37:18,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:37:20,983.983 INFO    ] ================================================
[2026-06-05 20:37:21,998.998 INFO    ] Launching Daemon at Fri Jun  5 20:37:20 IST 2026
[2026-06-05 20:37:21,009.009 INFO    ] ================================================
[2026-06-05 20:37:21,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:37:21
[2026-06-05 20:37:22,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:37:22,599.599 INFO    ] Initializing speech engine...
[2026-06-05 20:37:22,607.607 INFO    ] 2026-06-05 20:37:22
[2026-06-05 20:37:22,893.893 INFO    ] 2026-06-05 20:37:22
[2026-06-05 20:37:22,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:37:23,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:37:23,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:37:23,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:37:23,432.432 INFO    ] time= 05/06/2026 20:37:23
[2026-06-05 20:37:23,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:37:23,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:37:23,599.599 INFO    ] No existing commands found in stream
[2026-06-05 20:37:28,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:37:28,627.627 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 20:37:31,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:37:31,008.008 INFO    ] Checking for system updates...
[2026-06-05 20:37:31,046.046 INFO    ] 200
[2026-06-05 20:37:31,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:31,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:37:31,104.104 INFO    ] No update needed
[2026-06-05 20:37:31,107.107 INFO    ] Checking for camera pi updates...
[2026-06-05 20:37:31,142.142 INFO    ] 200
[2026-06-05 20:37:31,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:31,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:37:31,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:37:31,239.239 INFO    ] No camera update needed
[2026-06-05 20:37:31,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:37:31,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:37:31,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:37:31,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:37:33,295.295 INFO    ] ================================================
[2026-06-05 20:37:33,312.312 INFO    ] Launching Daemon at Fri Jun  5 20:37:33 IST 2026
[2026-06-05 20:37:33,324.324 INFO    ] ================================================
[2026-06-05 20:37:33,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:37:33
[2026-06-05 20:37:34,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:37:34,839.839 INFO    ] Initializing speech engine...
[2026-06-05 20:37:34,861.861 INFO    ] 2026-06-05 20:37:34
[2026-06-05 20:37:35,112.112 INFO    ] 2026-06-05 20:37:35
[2026-06-05 20:37:35,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:37:35,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:37:35,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:37:35,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:37:35,819.819 INFO    ] time= 05/06/2026 20:37:35
[2026-06-05 20:37:35,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:37:35,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:37:36,063.063 INFO    ] No existing commands found in stream
[2026-06-05 20:37:41,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:37:41,097.097 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-05 20:37:45,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:37:45,421.421 INFO    ] Checking for system updates...
[2026-06-05 20:37:45,458.458 INFO    ] 200
[2026-06-05 20:37:45,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:45,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:37:45,520.520 INFO    ] No update needed
[2026-06-05 20:37:45,522.522 INFO    ] Checking for camera pi updates...
[2026-06-05 20:37:45,556.556 INFO    ] 200
[2026-06-05 20:37:45,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:45,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:37:45,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:37:45,658.658 INFO    ] No camera update needed
[2026-06-05 20:37:45,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:37:45,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:37:45,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:37:45,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:37:47,721.721 INFO    ] ================================================
[2026-06-05 20:37:47,736.736 INFO    ] Launching Daemon at Fri Jun  5 20:37:47 IST 2026
[2026-06-05 20:37:47,747.747 INFO    ] ================================================
[2026-06-05 20:37:48,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:37:48
[2026-06-05 20:37:48,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:37:49,239.239 INFO    ] Initializing speech engine...
[2026-06-05 20:37:49,248.248 INFO    ] 2026-06-05 20:37:49
[2026-06-05 20:37:49,506.506 INFO    ] 2026-06-05 20:37:49
[2026-06-05 20:37:49,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:37:49,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:37:49,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:37:49,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:37:50,046.046 INFO    ] time= 05/06/2026 20:37:49
[2026-06-05 20:37:50,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:37:50,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:37:50,197.197 INFO    ] No existing commands found in stream
[2026-06-05 20:37:55,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:37:55,217.217 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 20:37:56,898.898 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:37:56,901.901 INFO    ] Checking for system updates...
[2026-06-05 20:37:56,940.940 INFO    ] 200
[2026-06-05 20:37:56,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:56,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:37:56,997.997 INFO    ] No update needed
[2026-06-05 20:37:57,000.000 INFO    ] Checking for camera pi updates...
[2026-06-05 20:37:57,033.033 INFO    ] 200
[2026-06-05 20:37:57,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:37:57,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:37:57,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:37:57,129.129 INFO    ] No camera update needed
[2026-06-05 20:37:57,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:37:57,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:37:57,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:37:57,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:37:59,185.185 INFO    ] ================================================
[2026-06-05 20:37:59,200.200 INFO    ] Launching Daemon at Fri Jun  5 20:37:59 IST 2026
[2026-06-05 20:37:59,211.211 INFO    ] ================================================
[2026-06-05 20:37:59,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:37:59
[2026-06-05 20:38:00,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:38:00,777.777 INFO    ] Initializing speech engine...
[2026-06-05 20:38:00,789.789 INFO    ] 2026-06-05 20:38:00
[2026-06-05 20:38:01,058.058 INFO    ] 2026-06-05 20:38:01
[2026-06-05 20:38:01,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:38:01,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:38:01,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:38:01,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:38:01,556.556 INFO    ] time= 05/06/2026 20:38:01
[2026-06-05 20:38:01,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:38:01,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:38:01,643.643 INFO    ] No existing commands found in stream
[2026-06-05 20:38:06,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:38:06,658.658 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 20:38:09,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:38:09,759.759 INFO    ] Checking for system updates...
[2026-06-05 20:38:09,797.797 INFO    ] 200
[2026-06-05 20:38:09,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:09,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:38:09,856.856 INFO    ] No update needed
[2026-06-05 20:38:09,859.859 INFO    ] Checking for camera pi updates...
[2026-06-05 20:38:09,895.895 INFO    ] 200
[2026-06-05 20:38:09,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:09,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:38:10,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:38:10,027.027 INFO    ] No camera update needed
[2026-06-05 20:38:10,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:38:10,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:38:10,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:38:10,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:38:12,086.086 INFO    ] ================================================
[2026-06-05 20:38:12,102.102 INFO    ] Launching Daemon at Fri Jun  5 20:38:12 IST 2026
[2026-06-05 20:38:12,113.113 INFO    ] ================================================
[2026-06-05 20:38:12,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:38:12
[2026-06-05 20:38:13,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:38:13,595.595 INFO    ] Initializing speech engine...
[2026-06-05 20:38:13,621.621 INFO    ] 2026-06-05 20:38:13
[2026-06-05 20:38:13,898.898 INFO    ] 2026-06-05 20:38:13
[2026-06-05 20:38:13,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:38:14,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:38:14,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:38:14,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:38:14,320.320 INFO    ] time= 05/06/2026 20:38:14
[2026-06-05 20:38:14,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:38:14,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:38:14,538.538 INFO    ] No existing commands found in stream
[2026-06-05 20:38:19,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:38:19,553.553 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 20:38:21,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:38:21,674.674 INFO    ] Checking for system updates...
[2026-06-05 20:38:21,712.712 INFO    ] 200
[2026-06-05 20:38:21,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:21,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:38:21,772.772 INFO    ] No update needed
[2026-06-05 20:38:21,774.774 INFO    ] Checking for camera pi updates...
[2026-06-05 20:38:21,809.809 INFO    ] 200
[2026-06-05 20:38:21,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:21,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:38:21,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:38:21,890.890 INFO    ] No camera update needed
[2026-06-05 20:38:21,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:38:21,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:38:21,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:38:21,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:38:23,950.950 INFO    ] ================================================
[2026-06-05 20:38:23,965.965 INFO    ] Launching Daemon at Fri Jun  5 20:38:23 IST 2026
[2026-06-05 20:38:23,977.977 INFO    ] ================================================
[2026-06-05 20:38:24,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:38:24
[2026-06-05 20:38:25,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:38:25,622.622 INFO    ] Initializing speech engine...
[2026-06-05 20:38:25,634.634 INFO    ] 2026-06-05 20:38:25
[2026-06-05 20:38:25,902.902 INFO    ] 2026-06-05 20:38:25
[2026-06-05 20:38:25,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:38:26,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:38:26,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:38:26,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:38:26,462.462 INFO    ] time= 05/06/2026 20:38:26
[2026-06-05 20:38:26,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:38:26,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:38:26,659.659 INFO    ] No existing commands found in stream
[2026-06-05 20:38:31,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:38:31,694.694 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 20:38:32,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:38:32,712.712 INFO    ] Checking for system updates...
[2026-06-05 20:38:32,750.750 INFO    ] 200
[2026-06-05 20:38:32,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:32,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:38:32,809.809 INFO    ] No update needed
[2026-06-05 20:38:32,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 20:38:32,848.848 INFO    ] 200
[2026-06-05 20:38:32,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:32,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:38:32,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:38:32,936.936 INFO    ] No camera update needed
[2026-06-05 20:38:32,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:38:32,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:38:32,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:38:32,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:38:35,995.995 INFO    ] ================================================
[2026-06-05 20:38:35,011.011 INFO    ] Launching Daemon at Fri Jun  5 20:38:35 IST 2026
[2026-06-05 20:38:35,022.022 INFO    ] ================================================
[2026-06-05 20:38:35,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:38:35
[2026-06-05 20:38:36,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:38:36,562.562 INFO    ] Initializing speech engine...
[2026-06-05 20:38:36,570.570 INFO    ] 2026-06-05 20:38:36
[2026-06-05 20:38:36,827.827 INFO    ] 2026-06-05 20:38:36
[2026-06-05 20:38:36,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:38:37,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:38:37,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:38:37,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:38:37,318.318 INFO    ] time= 05/06/2026 20:38:37
[2026-06-05 20:38:37,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:38:37,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:38:37,537.537 INFO    ] No existing commands found in stream
[2026-06-05 20:38:42,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:38:42,556.556 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-05 20:38:43,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:38:43,179.179 INFO    ] Checking for system updates...
[2026-06-05 20:38:43,216.216 INFO    ] 200
[2026-06-05 20:38:43,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:43,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:38:43,275.275 INFO    ] No update needed
[2026-06-05 20:38:43,277.277 INFO    ] Checking for camera pi updates...
[2026-06-05 20:38:43,311.311 INFO    ] 200
[2026-06-05 20:38:43,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:43,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:38:43,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:38:43,499.499 INFO    ] No camera update needed
[2026-06-05 20:38:43,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:38:43,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:38:43,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:38:43,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:38:45,554.554 INFO    ] ================================================
[2026-06-05 20:38:45,571.571 INFO    ] Launching Daemon at Fri Jun  5 20:38:45 IST 2026
[2026-06-05 20:38:45,582.582 INFO    ] ================================================
[2026-06-05 20:38:46,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:38:46
[2026-06-05 20:38:46,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:38:47,036.036 INFO    ] Initializing speech engine...
[2026-06-05 20:38:47,044.044 INFO    ] 2026-06-05 20:38:47
[2026-06-05 20:38:47,308.308 INFO    ] 2026-06-05 20:38:47
[2026-06-05 20:38:47,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:38:47,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:38:47,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:38:47,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:38:47,884.884 INFO    ] time= 05/06/2026 20:38:47
[2026-06-05 20:38:47,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:38:47,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:38:48,038.038 INFO    ] No existing commands found in stream
[2026-06-05 20:38:53,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:38:53,054.054 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 20:38:56,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:38:56,207.207 INFO    ] Checking for system updates...
[2026-06-05 20:38:56,244.244 INFO    ] 200
[2026-06-05 20:38:56,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:56,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:38:56,305.305 INFO    ] No update needed
[2026-06-05 20:38:56,308.308 INFO    ] Checking for camera pi updates...
[2026-06-05 20:38:56,342.342 INFO    ] 200
[2026-06-05 20:38:56,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:38:56,385.385 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:38:56,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:38:56,441.441 INFO    ] No camera update needed
[2026-06-05 20:38:56,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:38:56,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:38:56,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:38:56,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:38:58,495.495 INFO    ] ================================================
[2026-06-05 20:38:58,511.511 INFO    ] Launching Daemon at Fri Jun  5 20:38:58 IST 2026
[2026-06-05 20:38:58,523.523 INFO    ] ================================================
[2026-06-05 20:38:59,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:38:59
[2026-06-05 20:38:59,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:39:00,073.073 INFO    ] Initializing speech engine...
[2026-06-05 20:39:00,087.087 INFO    ] 2026-06-05 20:39:00
[2026-06-05 20:39:00,342.342 INFO    ] 2026-06-05 20:39:00
[2026-06-05 20:39:00,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:39:01,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:39:01,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:39:02,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:39:02,201.201 INFO    ] time= 05/06/2026 20:39:02
[2026-06-05 20:39:02,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:39:02,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:39:02,351.351 INFO    ] No existing commands found in stream
[2026-06-05 20:39:07,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:39:07,365.365 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 20:39:09,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:39:09,491.491 INFO    ] Checking for system updates...
[2026-06-05 20:39:09,528.528 INFO    ] 200
[2026-06-05 20:39:09,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:39:09,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:39:09,587.587 INFO    ] No update needed
[2026-06-05 20:39:09,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 20:39:09,625.625 INFO    ] 200
[2026-06-05 20:39:09,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:39:09,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:39:09,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:39:09,725.725 INFO    ] No camera update needed
[2026-06-05 20:39:09,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:39:09,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:39:09,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:39:09,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:39:11,782.782 INFO    ] ================================================
[2026-06-05 20:39:11,797.797 INFO    ] Launching Daemon at Fri Jun  5 20:39:11 IST 2026
[2026-06-05 20:39:11,808.808 INFO    ] ================================================
[2026-06-05 20:39:12,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:39:12
[2026-06-05 20:39:12,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:39:13,279.279 INFO    ] Initializing speech engine...
[2026-06-05 20:39:13,294.294 INFO    ] 2026-06-05 20:39:13
[2026-06-05 20:39:13,569.569 INFO    ] 2026-06-05 20:39:13
[2026-06-05 20:39:13,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:39:13,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:39:13,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:39:13,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:39:14,005.005 INFO    ] time= 05/06/2026 20:39:14
[2026-06-05 20:39:14,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:39:14,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:39:14,195.195 INFO    ] No existing commands found in stream
[2026-06-05 20:39:19,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:39:19,215.215 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 20:39:22,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:39:22,348.348 INFO    ] Checking for system updates...
[2026-06-05 20:39:22,385.385 INFO    ] 200
[2026-06-05 20:39:22,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:39:22,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:39:22,443.443 INFO    ] No update needed
[2026-06-05 20:39:22,446.446 INFO    ] Checking for camera pi updates...
[2026-06-05 20:39:22,480.480 INFO    ] 200
[2026-06-05 20:39:22,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:39:22,525.525 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:39:22,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:39:22,559.559 INFO    ] No camera update needed
[2026-06-05 20:39:22,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:39:22,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:39:22,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:39:22,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:39:24,615.615 INFO    ] ================================================
[2026-06-05 20:39:24,630.630 INFO    ] Launching Daemon at Fri Jun  5 20:39:24 IST 2026
[2026-06-05 20:39:24,641.641 INFO    ] ================================================
[2026-06-05 20:39:25,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:39:25
[2026-06-05 20:39:25,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:39:26,174.174 INFO    ] Initializing speech engine...
[2026-06-05 20:39:26,184.184 INFO    ] 2026-06-05 20:39:26
[2026-06-05 20:39:26,460.460 INFO    ] 2026-06-05 20:39:26
[2026-06-05 20:39:26,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:39:26,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:39:26,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:39:26,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:39:27,009.009 INFO    ] time= 05/06/2026 20:39:26
[2026-06-05 20:39:27,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:39:27,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:39:27,150.150 INFO    ] No existing commands found in stream
[2026-06-05 20:39:32,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:39:32,180.180 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 20:39:35,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:39:35,827.827 INFO    ] Checking for system updates...
[2026-06-05 20:39:35,870.870 INFO    ] 200
[2026-06-05 20:39:35,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:39:35,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:39:35,935.935 INFO    ] No update needed
[2026-06-05 20:39:35,938.938 INFO    ] Checking for camera pi updates...
[2026-06-05 20:39:35,974.974 INFO    ] 200
[2026-06-05 20:39:35,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:39:36,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:39:36,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:39:36,106.106 INFO    ] No camera update needed
[2026-06-05 20:39:36,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:39:36,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:39:36,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:39:36,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:39:38,161.161 INFO    ] ================================================
[2026-06-05 20:39:38,176.176 INFO    ] Launching Daemon at Fri Jun  5 20:39:38 IST 2026
[2026-06-05 20:39:38,187.187 INFO    ] ================================================
[2026-06-05 20:39:38,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:39:38
[2026-06-05 20:39:39,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:39:39,614.614 INFO    ] Initializing speech engine...
[2026-06-05 20:39:39,623.623 INFO    ] 2026-06-05 20:39:39
[2026-06-05 20:39:39,870.870 INFO    ] 2026-06-05 20:39:39
[2026-06-05 20:39:39,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:39:40,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:39:40,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:39:40,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:39:40,359.359 INFO    ] time= 05/06/2026 20:39:40
[2026-06-05 20:39:40,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:39:40,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:39:40,559.559 INFO    ] No existing commands found in stream
[2026-06-05 20:39:45,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:39:45,592.592 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 20:39:48,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:39:48,974.974 INFO    ] Checking for system updates...
[2026-06-05 20:39:49,010.010 INFO    ] 200
[2026-06-05 20:39:49,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:39:49,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:39:49,068.068 INFO    ] No update needed
[2026-06-05 20:39:49,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 20:39:49,106.106 INFO    ] 200
[2026-06-05 20:39:49,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:39:49,149.149 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:39:49,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:39:49,196.196 INFO    ] No camera update needed
[2026-06-05 20:39:49,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:39:49,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:39:49,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:39:49,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:39:51,251.251 INFO    ] ================================================
[2026-06-05 20:39:51,267.267 INFO    ] Launching Daemon at Fri Jun  5 20:39:51 IST 2026
[2026-06-05 20:39:51,278.278 INFO    ] ================================================
[2026-06-05 20:39:51,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:39:51
[2026-06-05 20:39:52,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:39:52,938.938 INFO    ] Initializing speech engine...
[2026-06-05 20:39:52,949.949 INFO    ] 2026-06-05 20:39:52
[2026-06-05 20:39:53,231.231 INFO    ] 2026-06-05 20:39:53
[2026-06-05 20:39:53,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:39:53,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:39:53,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:39:53,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:39:53,767.767 INFO    ] time= 05/06/2026 20:39:53
[2026-06-05 20:39:53,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:39:53,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:39:53,923.923 INFO    ] No existing commands found in stream
[2026-06-05 20:39:58,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:39:58,953.953 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 20:40:02,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:40:02,603.603 INFO    ] Checking for system updates...
[2026-06-05 20:40:02,700.700 INFO    ] 200
[2026-06-05 20:40:02,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:02,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:40:02,852.852 INFO    ] No update needed
[2026-06-05 20:40:02,866.866 INFO    ] Checking for camera pi updates...
[2026-06-05 20:40:02,915.915 INFO    ] 200
[2026-06-05 20:40:02,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:02,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:40:03,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:40:03,020.020 INFO    ] No camera update needed
[2026-06-05 20:40:03,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:40:03,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:40:03,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:40:03,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:40:05,081.081 INFO    ] ================================================
[2026-06-05 20:40:05,097.097 INFO    ] Launching Daemon at Fri Jun  5 20:40:05 IST 2026
[2026-06-05 20:40:05,108.108 INFO    ] ================================================
[2026-06-05 20:40:05,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:40:05
[2026-06-05 20:40:06,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:40:06,592.592 INFO    ] Initializing speech engine...
[2026-06-05 20:40:06,619.619 INFO    ] 2026-06-05 20:40:06
[2026-06-05 20:40:06,883.883 INFO    ] 2026-06-05 20:40:06
[2026-06-05 20:40:06,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:40:07,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:40:07,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:40:07,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:40:07,438.438 INFO    ] time= 05/06/2026 20:40:07
[2026-06-05 20:40:07,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:40:07,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:40:07,588.588 INFO    ] No existing commands found in stream
[2026-06-05 20:40:12,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:40:12,607.607 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 20:40:15,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:40:15,266.266 INFO    ] Checking for system updates...
[2026-06-05 20:40:15,309.309 INFO    ] 200
[2026-06-05 20:40:15,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:15,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:40:15,367.367 INFO    ] No update needed
[2026-06-05 20:40:15,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 20:40:15,402.402 INFO    ] 200
[2026-06-05 20:40:15,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:15,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:40:15,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:40:15,488.488 INFO    ] No camera update needed
[2026-06-05 20:40:15,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:40:15,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:40:15,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:40:15,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:40:17,543.543 INFO    ] ================================================
[2026-06-05 20:40:17,558.558 INFO    ] Launching Daemon at Fri Jun  5 20:40:17 IST 2026
[2026-06-05 20:40:17,568.568 INFO    ] ================================================
[2026-06-05 20:40:18,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:40:18
[2026-06-05 20:40:18,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:40:18,988.988 INFO    ] Initializing speech engine...
[2026-06-05 20:40:18,998.998 INFO    ] 2026-06-05 20:40:18
[2026-06-05 20:40:19,250.250 INFO    ] 2026-06-05 20:40:19
[2026-06-05 20:40:19,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:40:19,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:40:19,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:40:19,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:40:19,732.732 INFO    ] time= 05/06/2026 20:40:19
[2026-06-05 20:40:19,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:40:19,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:40:19,962.962 INFO    ] No existing commands found in stream
[2026-06-05 20:40:24,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:40:24,988.988 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 20:40:26,087.087 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:40:26,089.089 INFO    ] Checking for system updates...
[2026-06-05 20:40:26,133.133 INFO    ] 200
[2026-06-05 20:40:26,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:26,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:40:26,200.200 INFO    ] No update needed
[2026-06-05 20:40:26,203.203 INFO    ] Checking for camera pi updates...
[2026-06-05 20:40:26,248.248 INFO    ] 200
[2026-06-05 20:40:26,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:26,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:40:26,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:40:26,364.364 INFO    ] No camera update needed
[2026-06-05 20:40:26,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:40:26,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:40:26,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:40:26,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:40:28,420.420 INFO    ] ================================================
[2026-06-05 20:40:28,435.435 INFO    ] Launching Daemon at Fri Jun  5 20:40:28 IST 2026
[2026-06-05 20:40:28,446.446 INFO    ] ================================================
[2026-06-05 20:40:29,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:40:29
[2026-06-05 20:40:29,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:40:29,899.899 INFO    ] Initializing speech engine...
[2026-06-05 20:40:29,908.908 INFO    ] 2026-06-05 20:40:29
[2026-06-05 20:40:30,156.156 INFO    ] 2026-06-05 20:40:30
[2026-06-05 20:40:30,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:40:32,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:40:32,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:40:33,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:40:33,071.071 INFO    ] time= 05/06/2026 20:40:33
[2026-06-05 20:40:33,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:40:33,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:40:33,152.152 INFO    ] No existing commands found in stream
[2026-06-05 20:40:38,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:40:38,164.164 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 20:40:42,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:40:42,242.242 INFO    ] Checking for system updates...
[2026-06-05 20:40:42,282.282 INFO    ] 200
[2026-06-05 20:40:42,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:42,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:40:42,347.347 INFO    ] No update needed
[2026-06-05 20:40:42,349.349 INFO    ] Checking for camera pi updates...
[2026-06-05 20:40:42,383.383 INFO    ] 200
[2026-06-05 20:40:42,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:42,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:40:42,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:40:42,486.486 INFO    ] No camera update needed
[2026-06-05 20:40:42,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:40:42,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:40:42,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:40:42,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:40:44,542.542 INFO    ] ================================================
[2026-06-05 20:40:44,558.558 INFO    ] Launching Daemon at Fri Jun  5 20:40:44 IST 2026
[2026-06-05 20:40:44,572.572 INFO    ] ================================================
[2026-06-05 20:40:45,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:40:45
[2026-06-05 20:40:45,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:40:45,994.994 INFO    ] Initializing speech engine...
[2026-06-05 20:40:46,003.003 INFO    ] 2026-06-05 20:40:45
[2026-06-05 20:40:46,253.253 INFO    ] 2026-06-05 20:40:46
[2026-06-05 20:40:46,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:40:46,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:40:46,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:40:46,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:40:46,764.764 INFO    ] time= 05/06/2026 20:40:46
[2026-06-05 20:40:46,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:40:46,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:40:46,964.964 INFO    ] No existing commands found in stream
[2026-06-05 20:40:51,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:40:51,992.992 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 20:40:53,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:40:53,844.844 INFO    ] Checking for system updates...
[2026-06-05 20:40:53,880.880 INFO    ] 200
[2026-06-05 20:40:53,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:53,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:40:53,947.947 INFO    ] No update needed
[2026-06-05 20:40:53,949.949 INFO    ] Checking for camera pi updates...
[2026-06-05 20:40:53,983.983 INFO    ] 200
[2026-06-05 20:40:53,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:40:54,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:40:54,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:40:54,183.183 INFO    ] No camera update needed
[2026-06-05 20:40:54,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:40:54,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:40:54,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:40:54,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:40:56,245.245 INFO    ] ================================================
[2026-06-05 20:40:56,260.260 INFO    ] Launching Daemon at Fri Jun  5 20:40:56 IST 2026
[2026-06-05 20:40:56,271.271 INFO    ] ================================================
[2026-06-05 20:40:56,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:40:56
[2026-06-05 20:40:57,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:40:57,696.696 INFO    ] Initializing speech engine...
[2026-06-05 20:40:57,712.712 INFO    ] 2026-06-05 20:40:57
[2026-06-05 20:40:57,996.996 INFO    ] 2026-06-05 20:40:57
[2026-06-05 20:40:58,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:40:58,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:40:58,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:40:58,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:40:58,486.486 INFO    ] time= 05/06/2026 20:40:58
[2026-06-05 20:40:58,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:40:58,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:40:58,694.694 INFO    ] No existing commands found in stream
[2026-06-05 20:41:03,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:41:03,708.708 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 20:41:06,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:41:06,666.666 INFO    ] Checking for system updates...
[2026-06-05 20:41:06,702.702 INFO    ] 200
[2026-06-05 20:41:06,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:06,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:41:06,771.771 INFO    ] No update needed
[2026-06-05 20:41:06,774.774 INFO    ] Checking for camera pi updates...
[2026-06-05 20:41:06,812.812 INFO    ] 200
[2026-06-05 20:41:06,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:06,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:41:06,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:41:06,899.899 INFO    ] No camera update needed
[2026-06-05 20:41:06,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:41:06,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:41:06,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:41:06,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:41:08,958.958 INFO    ] ================================================
[2026-06-05 20:41:08,973.973 INFO    ] Launching Daemon at Fri Jun  5 20:41:08 IST 2026
[2026-06-05 20:41:08,984.984 INFO    ] ================================================
[2026-06-05 20:41:09,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:41:09
[2026-06-05 20:41:10,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:41:10,434.434 INFO    ] Initializing speech engine...
[2026-06-05 20:41:10,447.447 INFO    ] 2026-06-05 20:41:10
[2026-06-05 20:41:10,716.716 INFO    ] 2026-06-05 20:41:10
[2026-06-05 20:41:10,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:41:10,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:41:11,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:41:11,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:41:11,145.145 INFO    ] time= 05/06/2026 20:41:11
[2026-06-05 20:41:11,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:41:11,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:41:11,310.310 INFO    ] No existing commands found in stream
[2026-06-05 20:41:16,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:41:16,329.329 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-05 20:41:17,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:41:17,860.860 INFO    ] Checking for system updates...
[2026-06-05 20:41:17,901.901 INFO    ] 200
[2026-06-05 20:41:17,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:17,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:41:17,963.963 INFO    ] No update needed
[2026-06-05 20:41:17,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 20:41:18,000.000 INFO    ] 200
[2026-06-05 20:41:18,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:18,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:41:18,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:41:18,105.105 INFO    ] No camera update needed
[2026-06-05 20:41:18,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:41:18,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:41:18,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:41:18,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:41:20,164.164 INFO    ] ================================================
[2026-06-05 20:41:20,179.179 INFO    ] Launching Daemon at Fri Jun  5 20:41:20 IST 2026
[2026-06-05 20:41:20,190.190 INFO    ] ================================================
[2026-06-05 20:41:20,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:41:20
[2026-06-05 20:41:21,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:41:21,614.614 INFO    ] Initializing speech engine...
[2026-06-05 20:41:21,623.623 INFO    ] 2026-06-05 20:41:21
[2026-06-05 20:41:21,915.915 INFO    ] 2026-06-05 20:41:21
[2026-06-05 20:41:21,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:41:22,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:41:22,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:41:22,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:41:22,410.410 INFO    ] time= 05/06/2026 20:41:22
[2026-06-05 20:41:22,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:41:22,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:41:22,705.705 INFO    ] No existing commands found in stream
[2026-06-05 20:41:27,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:41:27,733.733 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 20:41:28,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:41:28,783.783 INFO    ] Checking for system updates...
[2026-06-05 20:41:28,823.823 INFO    ] 200
[2026-06-05 20:41:28,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:28,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:41:28,886.886 INFO    ] No update needed
[2026-06-05 20:41:28,888.888 INFO    ] Checking for camera pi updates...
[2026-06-05 20:41:28,923.923 INFO    ] 200
[2026-06-05 20:41:28,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:28,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:41:29,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:41:29,025.025 INFO    ] No camera update needed
[2026-06-05 20:41:29,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:41:29,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:41:29,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:41:29,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:41:31,083.083 INFO    ] ================================================
[2026-06-05 20:41:31,099.099 INFO    ] Launching Daemon at Fri Jun  5 20:41:31 IST 2026
[2026-06-05 20:41:31,109.109 INFO    ] ================================================
[2026-06-05 20:41:31,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:41:31
[2026-06-05 20:41:32,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:41:32,748.748 INFO    ] Initializing speech engine...
[2026-06-05 20:41:32,760.760 INFO    ] 2026-06-05 20:41:32
[2026-06-05 20:41:33,038.038 INFO    ] 2026-06-05 20:41:33
[2026-06-05 20:41:33,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:41:33,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:41:33,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:41:33,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:41:33,761.761 INFO    ] time= 05/06/2026 20:41:33
[2026-06-05 20:41:33,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:41:33,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:41:34,000.000 INFO    ] No existing commands found in stream
[2026-06-05 20:41:39,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:41:39,029.029 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 20:41:41,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:41:41,117.117 INFO    ] Checking for system updates...
[2026-06-05 20:41:41,152.152 INFO    ] 200
[2026-06-05 20:41:41,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:41,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:41:41,212.212 INFO    ] No update needed
[2026-06-05 20:41:41,215.215 INFO    ] Checking for camera pi updates...
[2026-06-05 20:41:41,251.251 INFO    ] 200
[2026-06-05 20:41:41,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:41,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:41:41,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:41:41,342.342 INFO    ] No camera update needed
[2026-06-05 20:41:41,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:41:41,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:41:41,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:41:41,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:41:43,397.397 INFO    ] ================================================
[2026-06-05 20:41:43,413.413 INFO    ] Launching Daemon at Fri Jun  5 20:41:43 IST 2026
[2026-06-05 20:41:43,425.425 INFO    ] ================================================
[2026-06-05 20:41:43,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:41:43
[2026-06-05 20:41:44,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:41:44,866.866 INFO    ] Initializing speech engine...
[2026-06-05 20:41:44,875.875 INFO    ] 2026-06-05 20:41:44
[2026-06-05 20:41:45,126.126 INFO    ] 2026-06-05 20:41:45
[2026-06-05 20:41:45,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:41:45,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:41:45,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:41:45,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:41:45,636.636 INFO    ] time= 05/06/2026 20:41:45
[2026-06-05 20:41:45,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:41:45,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:41:45,860.860 INFO    ] No existing commands found in stream
[2026-06-05 20:41:50,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:41:50,878.878 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-05 20:41:53,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:41:53,104.104 INFO    ] Checking for system updates...
[2026-06-05 20:41:53,146.146 INFO    ] 200
[2026-06-05 20:41:53,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:53,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:41:53,210.210 INFO    ] No update needed
[2026-06-05 20:41:53,213.213 INFO    ] Checking for camera pi updates...
[2026-06-05 20:41:53,247.247 INFO    ] 200
[2026-06-05 20:41:53,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:41:53,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:41:53,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:41:53,333.333 INFO    ] No camera update needed
[2026-06-05 20:41:53,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:41:53,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:41:53,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:41:53,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:41:55,388.388 INFO    ] ================================================
[2026-06-05 20:41:55,403.403 INFO    ] Launching Daemon at Fri Jun  5 20:41:55 IST 2026
[2026-06-05 20:41:55,414.414 INFO    ] ================================================
[2026-06-05 20:41:56,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:41:56
[2026-06-05 20:41:56,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:41:57,038.038 INFO    ] Initializing speech engine...
[2026-06-05 20:41:57,049.049 INFO    ] 2026-06-05 20:41:57
[2026-06-05 20:41:57,328.328 INFO    ] 2026-06-05 20:41:57
[2026-06-05 20:41:57,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:41:57,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:41:57,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:41:57,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:41:57,882.882 INFO    ] time= 05/06/2026 20:41:57
[2026-06-05 20:41:57,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:41:57,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:41:58,048.048 INFO    ] No existing commands found in stream
[2026-06-05 20:42:03,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:42:03,087.087 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 20:42:04,071.071 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:42:04,073.073 INFO    ] Checking for system updates...
[2026-06-05 20:42:04,111.111 INFO    ] 200
[2026-06-05 20:42:04,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:04,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:42:04,173.173 INFO    ] No update needed
[2026-06-05 20:42:04,175.175 INFO    ] Checking for camera pi updates...
[2026-06-05 20:42:04,209.209 INFO    ] 200
[2026-06-05 20:42:04,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:04,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:42:04,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:42:04,311.311 INFO    ] No camera update needed
[2026-06-05 20:42:04,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:42:04,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:42:04,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:42:04,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:42:06,367.367 INFO    ] ================================================
[2026-06-05 20:42:06,382.382 INFO    ] Launching Daemon at Fri Jun  5 20:42:06 IST 2026
[2026-06-05 20:42:06,393.393 INFO    ] ================================================
[2026-06-05 20:42:06,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:42:06
[2026-06-05 20:42:07,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:42:07,793.793 INFO    ] Initializing speech engine...
[2026-06-05 20:42:07,818.818 INFO    ] 2026-06-05 20:42:07
[2026-06-05 20:42:08,075.075 INFO    ] 2026-06-05 20:42:08
[2026-06-05 20:42:08,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:42:08,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:42:08,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:42:08,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:42:08,568.568 INFO    ] time= 05/06/2026 20:42:08
[2026-06-05 20:42:08,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:42:08,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:42:08,804.804 INFO    ] No existing commands found in stream
[2026-06-05 20:42:13,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:42:13,833.833 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 20:42:15,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:42:15,159.159 INFO    ] Checking for system updates...
[2026-06-05 20:42:15,197.197 INFO    ] 200
[2026-06-05 20:42:15,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:15,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:42:15,267.267 INFO    ] No update needed
[2026-06-05 20:42:15,270.270 INFO    ] Checking for camera pi updates...
[2026-06-05 20:42:15,310.310 INFO    ] 200
[2026-06-05 20:42:15,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:15,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:42:15,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:42:15,421.421 INFO    ] No camera update needed
[2026-06-05 20:42:15,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:42:15,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:42:15,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:42:15,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:42:17,477.477 INFO    ] ================================================
[2026-06-05 20:42:17,492.492 INFO    ] Launching Daemon at Fri Jun  5 20:42:17 IST 2026
[2026-06-05 20:42:17,503.503 INFO    ] ================================================
[2026-06-05 20:42:18,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:42:18
[2026-06-05 20:42:18,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:42:18,916.916 INFO    ] Initializing speech engine...
[2026-06-05 20:42:18,931.931 INFO    ] 2026-06-05 20:42:18
[2026-06-05 20:42:19,215.215 INFO    ] 2026-06-05 20:42:19
[2026-06-05 20:42:19,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:42:19,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:42:19,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:42:19,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:42:19,642.642 INFO    ] time= 05/06/2026 20:42:19
[2026-06-05 20:42:19,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:42:19,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:42:19,851.851 INFO    ] No existing commands found in stream
[2026-06-05 20:42:24,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:42:24,875.875 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 20:42:27,750.750 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:42:27,757.757 INFO    ] Checking for system updates...
[2026-06-05 20:42:27,797.797 INFO    ] 200
[2026-06-05 20:42:27,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:27,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:42:27,858.858 INFO    ] No update needed
[2026-06-05 20:42:27,860.860 INFO    ] Checking for camera pi updates...
[2026-06-05 20:42:27,899.899 INFO    ] 200
[2026-06-05 20:42:27,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:27,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:42:28,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:42:28,012.012 INFO    ] No camera update needed
[2026-06-05 20:42:28,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:42:28,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:42:28,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:42:28,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:42:30,071.071 INFO    ] ================================================
[2026-06-05 20:42:30,086.086 INFO    ] Launching Daemon at Fri Jun  5 20:42:30 IST 2026
[2026-06-05 20:42:30,097.097 INFO    ] ================================================
[2026-06-05 20:42:30,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:42:30
[2026-06-05 20:42:31,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:42:31,566.566 INFO    ] Initializing speech engine...
[2026-06-05 20:42:31,590.590 INFO    ] 2026-06-05 20:42:31
[2026-06-05 20:42:31,869.869 INFO    ] 2026-06-05 20:42:31
[2026-06-05 20:42:31,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:42:33,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:42:33,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:42:34,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:42:34,036.036 INFO    ] time= 05/06/2026 20:42:34
[2026-06-05 20:42:34,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:42:34,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:42:34,145.145 INFO    ] No existing commands found in stream
[2026-06-05 20:42:39,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:42:39,163.163 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 20:42:43,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:42:43,129.129 INFO    ] Checking for system updates...
[2026-06-05 20:42:43,171.171 INFO    ] 200
[2026-06-05 20:42:43,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:43,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:42:43,233.233 INFO    ] No update needed
[2026-06-05 20:42:43,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 20:42:43,276.276 INFO    ] 200
[2026-06-05 20:42:43,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:43,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:42:43,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:42:43,376.376 INFO    ] No camera update needed
[2026-06-05 20:42:43,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:42:43,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:42:43,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:42:43,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:42:45,436.436 INFO    ] ================================================
[2026-06-05 20:42:45,452.452 INFO    ] Launching Daemon at Fri Jun  5 20:42:45 IST 2026
[2026-06-05 20:42:45,463.463 INFO    ] ================================================
[2026-06-05 20:42:46,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:42:46
[2026-06-05 20:42:46,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:42:46,879.879 INFO    ] Initializing speech engine...
[2026-06-05 20:42:46,894.894 INFO    ] 2026-06-05 20:42:46
[2026-06-05 20:42:47,150.150 INFO    ] 2026-06-05 20:42:47
[2026-06-05 20:42:47,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:42:47,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:42:47,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:42:47,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:42:47,663.663 INFO    ] time= 05/06/2026 20:42:47
[2026-06-05 20:42:47,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:42:47,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:42:47,855.855 INFO    ] No existing commands found in stream
[2026-06-05 20:42:52,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:42:52,891.891 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 20:42:53,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:42:53,588.588 INFO    ] Checking for system updates...
[2026-06-05 20:42:53,629.629 INFO    ] 200
[2026-06-05 20:42:53,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:53,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:42:53,695.695 INFO    ] No update needed
[2026-06-05 20:42:53,698.698 INFO    ] Checking for camera pi updates...
[2026-06-05 20:42:53,736.736 INFO    ] 200
[2026-06-05 20:42:53,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:42:53,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:42:53,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:42:53,835.835 INFO    ] No camera update needed
[2026-06-05 20:42:53,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:42:53,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:42:53,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:42:53,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:42:55,891.891 INFO    ] ================================================
[2026-06-05 20:42:55,907.907 INFO    ] Launching Daemon at Fri Jun  5 20:42:55 IST 2026
[2026-06-05 20:42:55,918.918 INFO    ] ================================================
[2026-06-05 20:42:56,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:42:56
[2026-06-05 20:42:57,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:42:57,347.347 INFO    ] Initializing speech engine...
[2026-06-05 20:42:57,356.356 INFO    ] 2026-06-05 20:42:57
[2026-06-05 20:42:57,617.617 INFO    ] 2026-06-05 20:42:57
[2026-06-05 20:42:57,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:42:57,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:42:57,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:42:58,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:42:58,162.162 INFO    ] time= 05/06/2026 20:42:58
[2026-06-05 20:42:58,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:42:58,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:42:58,316.316 INFO    ] No existing commands found in stream
[2026-06-05 20:43:03,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:43:03,330.330 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 20:43:06,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:43:06,134.134 INFO    ] Checking for system updates...
[2026-06-05 20:43:06,171.171 INFO    ] 200
[2026-06-05 20:43:06,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:06,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:43:06,228.228 INFO    ] No update needed
[2026-06-05 20:43:06,231.231 INFO    ] Checking for camera pi updates...
[2026-06-05 20:43:06,264.264 INFO    ] 200
[2026-06-05 20:43:06,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:06,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:43:06,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:43:06,341.341 INFO    ] No camera update needed
[2026-06-05 20:43:06,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:43:06,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:43:06,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:43:06,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:43:08,398.398 INFO    ] ================================================
[2026-06-05 20:43:08,413.413 INFO    ] Launching Daemon at Fri Jun  5 20:43:08 IST 2026
[2026-06-05 20:43:08,424.424 INFO    ] ================================================
[2026-06-05 20:43:09,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:43:09
[2026-06-05 20:43:09,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:43:09,925.925 INFO    ] Initializing speech engine...
[2026-06-05 20:43:09,931.931 INFO    ] 2026-06-05 20:43:09
[2026-06-05 20:43:10,221.221 INFO    ] 2026-06-05 20:43:10
[2026-06-05 20:43:10,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:43:10,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:43:10,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:43:10,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:43:10,819.819 INFO    ] time= 05/06/2026 20:43:10
[2026-06-05 20:43:10,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:43:10,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:43:11,003.003 INFO    ] No existing commands found in stream
[2026-06-05 20:43:16,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:43:16,037.037 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 20:43:20,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:43:20,224.224 INFO    ] Checking for system updates...
[2026-06-05 20:43:20,263.263 INFO    ] 200
[2026-06-05 20:43:20,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:20,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:43:20,321.321 INFO    ] No update needed
[2026-06-05 20:43:20,324.324 INFO    ] Checking for camera pi updates...
[2026-06-05 20:43:20,357.357 INFO    ] 200
[2026-06-05 20:43:20,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:20,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:43:20,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:43:20,450.450 INFO    ] No camera update needed
[2026-06-05 20:43:20,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:43:20,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:43:20,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:43:20,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:43:22,506.506 INFO    ] ================================================
[2026-06-05 20:43:22,522.522 INFO    ] Launching Daemon at Fri Jun  5 20:43:22 IST 2026
[2026-06-05 20:43:22,533.533 INFO    ] ================================================
[2026-06-05 20:43:23,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:43:23
[2026-06-05 20:43:23,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:43:24,002.002 INFO    ] Initializing speech engine...
[2026-06-05 20:43:24,012.012 INFO    ] 2026-06-05 20:43:24
[2026-06-05 20:43:24,272.272 INFO    ] 2026-06-05 20:43:24
[2026-06-05 20:43:24,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:43:24,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:43:24,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:43:24,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:43:24,812.812 INFO    ] time= 05/06/2026 20:43:24
[2026-06-05 20:43:24,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:43:24,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:43:24,932.932 INFO    ] No existing commands found in stream
[2026-06-05 20:43:29,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:43:29,944.944 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 20:43:33,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:43:33,729.729 INFO    ] Checking for system updates...
[2026-06-05 20:43:33,766.766 INFO    ] 200
[2026-06-05 20:43:33,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:33,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:43:33,824.824 INFO    ] No update needed
[2026-06-05 20:43:33,827.827 INFO    ] Checking for camera pi updates...
[2026-06-05 20:43:33,865.865 INFO    ] 200
[2026-06-05 20:43:33,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:33,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:43:33,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:43:33,956.956 INFO    ] No camera update needed
[2026-06-05 20:43:33,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:43:33,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:43:33,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:43:33,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:43:36,014.014 INFO    ] ================================================
[2026-06-05 20:43:36,031.031 INFO    ] Launching Daemon at Fri Jun  5 20:43:36 IST 2026
[2026-06-05 20:43:36,042.042 INFO    ] ================================================
[2026-06-05 20:43:36,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:43:36
[2026-06-05 20:43:37,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:43:37,465.465 INFO    ] Initializing speech engine...
[2026-06-05 20:43:37,474.474 INFO    ] 2026-06-05 20:43:37
[2026-06-05 20:43:37,727.727 INFO    ] 2026-06-05 20:43:37
[2026-06-05 20:43:37,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:43:38,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:43:38,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:43:38,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:43:38,285.285 INFO    ] time= 05/06/2026 20:43:38
[2026-06-05 20:43:38,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:43:38,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:43:38,441.441 INFO    ] No existing commands found in stream
[2026-06-05 20:43:43,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:43:43,457.457 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 20:43:45,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:43:45,106.106 INFO    ] Checking for system updates...
[2026-06-05 20:43:45,142.142 INFO    ] 200
[2026-06-05 20:43:45,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:45,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:43:45,201.201 INFO    ] No update needed
[2026-06-05 20:43:45,204.204 INFO    ] Checking for camera pi updates...
[2026-06-05 20:43:45,238.238 INFO    ] 200
[2026-06-05 20:43:45,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:45,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:43:45,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:43:45,317.317 INFO    ] No camera update needed
[2026-06-05 20:43:45,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:43:45,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:43:45,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:43:45,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:43:47,372.372 INFO    ] ================================================
[2026-06-05 20:43:47,387.387 INFO    ] Launching Daemon at Fri Jun  5 20:43:47 IST 2026
[2026-06-05 20:43:47,398.398 INFO    ] ================================================
[2026-06-05 20:43:47,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:43:47
[2026-06-05 20:43:48,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:43:48,866.866 INFO    ] Initializing speech engine...
[2026-06-05 20:43:48,874.874 INFO    ] 2026-06-05 20:43:48
[2026-06-05 20:43:49,146.146 INFO    ] 2026-06-05 20:43:49
[2026-06-05 20:43:49,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:43:49,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:43:49,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:43:49,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:43:49,697.697 INFO    ] time= 05/06/2026 20:43:49
[2026-06-05 20:43:49,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:43:49,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:43:49,852.852 INFO    ] No existing commands found in stream
[2026-06-05 20:43:54,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:43:54,879.879 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 20:43:58,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:43:58,758.758 INFO    ] Checking for system updates...
[2026-06-05 20:43:58,795.795 INFO    ] 200
[2026-06-05 20:43:58,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:58,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:43:58,855.855 INFO    ] No update needed
[2026-06-05 20:43:58,857.857 INFO    ] Checking for camera pi updates...
[2026-06-05 20:43:58,892.892 INFO    ] 200
[2026-06-05 20:43:58,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:43:58,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:43:58,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:43:58,979.979 INFO    ] No camera update needed
[2026-06-05 20:43:58,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:43:58,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:43:58,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:43:58,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:44:01,040.040 INFO    ] ================================================
[2026-06-05 20:44:01,056.056 INFO    ] Launching Daemon at Fri Jun  5 20:44:01 IST 2026
[2026-06-05 20:44:01,067.067 INFO    ] ================================================
[2026-06-05 20:44:01,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:44:01
[2026-06-05 20:44:02,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:44:02,801.801 INFO    ] Initializing speech engine...
[2026-06-05 20:44:02,835.835 INFO    ] 2026-06-05 20:44:02
[2026-06-05 20:44:03,125.125 INFO    ] 2026-06-05 20:44:03
[2026-06-05 20:44:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:44:04,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:44:04,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:44:04,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:44:04,352.352 INFO    ] time= 05/06/2026 20:44:04
[2026-06-05 20:44:04,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:44:04,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:44:04,528.528 INFO    ] No existing commands found in stream
[2026-06-05 20:44:09,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:44:09,556.556 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 20:44:12,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:44:12,701.701 INFO    ] Checking for system updates...
[2026-06-05 20:44:12,737.737 INFO    ] 200
[2026-06-05 20:44:12,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:44:12,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:44:12,801.801 INFO    ] No update needed
[2026-06-05 20:44:12,804.804 INFO    ] Checking for camera pi updates...
[2026-06-05 20:44:12,841.841 INFO    ] 200
[2026-06-05 20:44:12,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:44:12,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:44:12,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:44:12,932.932 INFO    ] No camera update needed
[2026-06-05 20:44:12,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:44:12,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:44:12,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:44:12,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:44:14,989.989 INFO    ] ================================================
[2026-06-05 20:44:15,003.003 INFO    ] Launching Daemon at Fri Jun  5 20:44:14 IST 2026
[2026-06-05 20:44:15,014.014 INFO    ] ================================================
[2026-06-05 20:44:15,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:44:15
[2026-06-05 20:44:16,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:44:16,516.516 INFO    ] Initializing speech engine...
[2026-06-05 20:44:16,522.522 INFO    ] 2026-06-05 20:44:16
[2026-06-05 20:44:16,785.785 INFO    ] 2026-06-05 20:44:16
[2026-06-05 20:44:16,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:44:17,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:44:17,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:44:17,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:44:17,334.334 INFO    ] time= 05/06/2026 20:44:17
[2026-06-05 20:44:17,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:44:17,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:44:17,475.475 INFO    ] No existing commands found in stream
[2026-06-05 20:44:22,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:44:22,503.503 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 20:44:24,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:44:24,129.129 INFO    ] Checking for system updates...
[2026-06-05 20:44:24,169.169 INFO    ] 200
[2026-06-05 20:44:24,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:44:24,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:44:24,228.228 INFO    ] No update needed
[2026-06-05 20:44:24,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 20:44:24,265.265 INFO    ] 200
[2026-06-05 20:44:24,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:44:24,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:44:24,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:44:24,357.357 INFO    ] No camera update needed
[2026-06-05 20:44:24,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:44:24,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:44:24,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:44:24,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:44:26,412.412 INFO    ] ================================================
[2026-06-05 20:44:26,428.428 INFO    ] Launching Daemon at Fri Jun  5 20:44:26 IST 2026
[2026-06-05 20:44:26,439.439 INFO    ] ================================================
[2026-06-05 20:44:27,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:44:27
[2026-06-05 20:44:27,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:44:27,914.914 INFO    ] Initializing speech engine...
[2026-06-05 20:44:27,922.922 INFO    ] 2026-06-05 20:44:27
[2026-06-05 20:44:28,220.220 INFO    ] 2026-06-05 20:44:28
[2026-06-05 20:44:28,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:44:28,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:44:28,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:44:28,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:44:28,605.605 INFO    ] time= 05/06/2026 20:44:28
[2026-06-05 20:44:28,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:44:28,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:44:28,784.784 INFO    ] No existing commands found in stream
[2026-06-05 20:44:33,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:44:33,811.811 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-05 20:44:36,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:44:36,644.644 INFO    ] Checking for system updates...
[2026-06-05 20:44:36,680.680 INFO    ] 200
[2026-06-05 20:44:36,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:44:36,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:44:36,739.739 INFO    ] No update needed
[2026-06-05 20:44:36,741.741 INFO    ] Checking for camera pi updates...
[2026-06-05 20:44:36,775.775 INFO    ] 200
[2026-06-05 20:44:36,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:44:36,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:44:36,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:44:36,887.887 INFO    ] No camera update needed
[2026-06-05 20:44:36,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:44:36,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:44:36,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:44:36,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:44:38,945.945 INFO    ] ================================================
[2026-06-05 20:44:38,960.960 INFO    ] Launching Daemon at Fri Jun  5 20:44:38 IST 2026
[2026-06-05 20:44:38,971.971 INFO    ] ================================================
[2026-06-05 20:44:39,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:44:39
[2026-06-05 20:44:40,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:44:40,425.425 INFO    ] Initializing speech engine...
[2026-06-05 20:44:40,441.441 INFO    ] 2026-06-05 20:44:40
[2026-06-05 20:44:40,759.759 INFO    ] 2026-06-05 20:44:40
[2026-06-05 20:44:40,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:44:41,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:44:41,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:44:41,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:44:41,338.338 INFO    ] time= 05/06/2026 20:44:41
[2026-06-05 20:44:41,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:44:41,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:44:41,525.525 INFO    ] No existing commands found in stream
[2026-06-05 20:44:46,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:44:46,553.553 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 20:44:47,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:44:47,272.272 INFO    ] Checking for system updates...
[2026-06-05 20:44:47,309.309 INFO    ] 200
[2026-06-05 20:44:47,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:44:47,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:44:47,378.378 INFO    ] No update needed
[2026-06-05 20:44:47,381.381 INFO    ] Checking for camera pi updates...
[2026-06-05 20:44:47,419.419 INFO    ] 200
[2026-06-05 20:44:47,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:44:47,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:44:47,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:44:47,502.502 INFO    ] No camera update needed
[2026-06-05 20:44:47,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:44:47,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:44:47,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:44:47,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:44:49,562.562 INFO    ] ================================================
[2026-06-05 20:44:49,578.578 INFO    ] Launching Daemon at Fri Jun  5 20:44:49 IST 2026
[2026-06-05 20:44:49,590.590 INFO    ] ================================================
[2026-06-05 20:44:50,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:44:50
[2026-06-05 20:44:50,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:44:51,077.077 INFO    ] Initializing speech engine...
[2026-06-05 20:44:51,090.090 INFO    ] 2026-06-05 20:44:51
[2026-06-05 20:44:51,375.375 INFO    ] 2026-06-05 20:44:51
[2026-06-05 20:44:51,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:44:51,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:44:51,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:44:51,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:44:51,931.931 INFO    ] time= 05/06/2026 20:44:51
[2026-06-05 20:44:51,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:44:51,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:44:52,103.103 INFO    ] No existing commands found in stream
[2026-06-05 20:44:57,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:44:57,143.143 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 20:45:00,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:45:00,442.442 INFO    ] Checking for system updates...
[2026-06-05 20:45:00,480.480 INFO    ] 200
[2026-06-05 20:45:00,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:00,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:45:00,549.549 INFO    ] No update needed
[2026-06-05 20:45:00,552.552 INFO    ] Checking for camera pi updates...
[2026-06-05 20:45:00,587.587 INFO    ] 200
[2026-06-05 20:45:00,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:00,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:45:00,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:45:00,686.686 INFO    ] No camera update needed
[2026-06-05 20:45:00,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:45:00,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:45:00,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:45:00,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:45:02,810.810 INFO    ] ================================================
[2026-06-05 20:45:02,831.831 INFO    ] Launching Daemon at Fri Jun  5 20:45:02 IST 2026
[2026-06-05 20:45:02,846.846 INFO    ] ================================================
[2026-06-05 20:45:03,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:45:03
[2026-06-05 20:45:04,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:45:04,356.356 INFO    ] Initializing speech engine...
[2026-06-05 20:45:04,364.364 INFO    ] 2026-06-05 20:45:04
[2026-06-05 20:45:04,639.639 INFO    ] 2026-06-05 20:45:04
[2026-06-05 20:45:04,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:45:05,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:45:05,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:45:05,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:45:05,232.232 INFO    ] time= 05/06/2026 20:45:05
[2026-06-05 20:45:05,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:45:05,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:45:05,412.412 INFO    ] No existing commands found in stream
[2026-06-05 20:45:10,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:45:10,442.442 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 20:45:12,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:45:12,924.924 INFO    ] Checking for system updates...
[2026-06-05 20:45:12,967.967 INFO    ] 200
[2026-06-05 20:45:12,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:13,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:45:13,034.034 INFO    ] No update needed
[2026-06-05 20:45:13,038.038 INFO    ] Checking for camera pi updates...
[2026-06-05 20:45:13,078.078 INFO    ] 200
[2026-06-05 20:45:13,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:13,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:45:13,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:45:13,286.286 INFO    ] No camera update needed
[2026-06-05 20:45:13,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:45:13,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:45:13,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:45:13,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:45:15,347.347 INFO    ] ================================================
[2026-06-05 20:45:15,363.363 INFO    ] Launching Daemon at Fri Jun  5 20:45:15 IST 2026
[2026-06-05 20:45:15,374.374 INFO    ] ================================================
[2026-06-05 20:45:15,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:45:15
[2026-06-05 20:45:16,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:45:16,894.894 INFO    ] Initializing speech engine...
[2026-06-05 20:45:16,903.903 INFO    ] 2026-06-05 20:45:16
[2026-06-05 20:45:17,176.176 INFO    ] 2026-06-05 20:45:17
[2026-06-05 20:45:17,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:45:17,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:45:17,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:45:17,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:45:17,741.741 INFO    ] time= 05/06/2026 20:45:17
[2026-06-05 20:45:17,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:45:17,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:45:17,915.915 INFO    ] No existing commands found in stream
[2026-06-05 20:45:22,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:45:22,942.942 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 20:45:26,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:45:26,172.172 INFO    ] Checking for system updates...
[2026-06-05 20:45:26,208.208 INFO    ] 200
[2026-06-05 20:45:26,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:26,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:45:26,266.266 INFO    ] No update needed
[2026-06-05 20:45:26,269.269 INFO    ] Checking for camera pi updates...
[2026-06-05 20:45:26,302.302 INFO    ] 200
[2026-06-05 20:45:26,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:26,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:45:26,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:45:26,389.389 INFO    ] No camera update needed
[2026-06-05 20:45:26,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:45:26,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:45:26,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:45:26,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:45:28,443.443 INFO    ] ================================================
[2026-06-05 20:45:28,459.459 INFO    ] Launching Daemon at Fri Jun  5 20:45:28 IST 2026
[2026-06-05 20:45:28,470.470 INFO    ] ================================================
[2026-06-05 20:45:29,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:45:29
[2026-06-05 20:45:29,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:45:29,972.972 INFO    ] Initializing speech engine...
[2026-06-05 20:45:29,981.981 INFO    ] 2026-06-05 20:45:29
[2026-06-05 20:45:30,255.255 INFO    ] 2026-06-05 20:45:30
[2026-06-05 20:45:30,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:45:30,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:45:30,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:45:30,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:45:30,787.787 INFO    ] time= 05/06/2026 20:45:30
[2026-06-05 20:45:30,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:45:30,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:45:30,940.940 INFO    ] No existing commands found in stream
[2026-06-05 20:45:35,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:45:35,958.958 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 20:45:38,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:45:38,392.392 INFO    ] Checking for system updates...
[2026-06-05 20:45:38,429.429 INFO    ] 200
[2026-06-05 20:45:38,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:38,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:45:38,488.488 INFO    ] No update needed
[2026-06-05 20:45:38,490.490 INFO    ] Checking for camera pi updates...
[2026-06-05 20:45:38,528.528 INFO    ] 200
[2026-06-05 20:45:38,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:38,572.572 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:45:38,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:45:38,617.617 INFO    ] No camera update needed
[2026-06-05 20:45:38,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:45:38,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:45:38,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:45:38,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:45:40,674.674 INFO    ] ================================================
[2026-06-05 20:45:40,689.689 INFO    ] Launching Daemon at Fri Jun  5 20:45:40 IST 2026
[2026-06-05 20:45:40,700.700 INFO    ] ================================================
[2026-06-05 20:45:41,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:45:41
[2026-06-05 20:45:42,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:45:42,341.341 INFO    ] Initializing speech engine...
[2026-06-05 20:45:42,355.355 INFO    ] 2026-06-05 20:45:42
[2026-06-05 20:45:42,637.637 INFO    ] 2026-06-05 20:45:42
[2026-06-05 20:45:42,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:45:42,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:45:42,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:45:43,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:45:43,200.200 INFO    ] time= 05/06/2026 20:45:43
[2026-06-05 20:45:43,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:45:43,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:45:43,366.366 INFO    ] No existing commands found in stream
[2026-06-05 20:45:48,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:45:48,400.400 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-05 20:45:52,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:45:52,872.872 INFO    ] Checking for system updates...
[2026-06-05 20:45:52,909.909 INFO    ] 200
[2026-06-05 20:45:52,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:52,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:45:52,969.969 INFO    ] No update needed
[2026-06-05 20:45:52,972.972 INFO    ] Checking for camera pi updates...
[2026-06-05 20:45:53,007.007 INFO    ] 200
[2026-06-05 20:45:53,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:45:53,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:45:53,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:45:53,113.113 INFO    ] No camera update needed
[2026-06-05 20:45:53,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:45:53,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:45:53,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:45:53,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:45:55,172.172 INFO    ] ================================================
[2026-06-05 20:45:55,188.188 INFO    ] Launching Daemon at Fri Jun  5 20:45:55 IST 2026
[2026-06-05 20:45:55,199.199 INFO    ] ================================================
[2026-06-05 20:45:55,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:45:55
[2026-06-05 20:45:56,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:45:56,704.704 INFO    ] Initializing speech engine...
[2026-06-05 20:45:56,724.724 INFO    ] 2026-06-05 20:45:56
[2026-06-05 20:45:56,975.975 INFO    ] 2026-06-05 20:45:56
[2026-06-05 20:45:57,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:45:57,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:45:57,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:45:57,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:45:57,402.402 INFO    ] time= 05/06/2026 20:45:57
[2026-06-05 20:45:57,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:45:57,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:45:57,559.559 INFO    ] No existing commands found in stream
[2026-06-05 20:46:02,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:46:02,580.580 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 20:46:05,381.381 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:46:05,384.384 INFO    ] Checking for system updates...
[2026-06-05 20:46:05,421.421 INFO    ] 200
[2026-06-05 20:46:05,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:05,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:46:05,482.482 INFO    ] No update needed
[2026-06-05 20:46:05,485.485 INFO    ] Checking for camera pi updates...
[2026-06-05 20:46:05,522.522 INFO    ] 200
[2026-06-05 20:46:05,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:05,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:46:05,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:46:05,662.662 INFO    ] No camera update needed
[2026-06-05 20:46:05,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:46:05,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:46:05,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:46:05,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:46:07,724.724 INFO    ] ================================================
[2026-06-05 20:46:07,739.739 INFO    ] Launching Daemon at Fri Jun  5 20:46:07 IST 2026
[2026-06-05 20:46:07,755.755 INFO    ] ================================================
[2026-06-05 20:46:08,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:46:08
[2026-06-05 20:46:08,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:46:09,209.209 INFO    ] Initializing speech engine...
[2026-06-05 20:46:09,215.215 INFO    ] 2026-06-05 20:46:09
[2026-06-05 20:46:09,514.514 INFO    ] 2026-06-05 20:46:09
[2026-06-05 20:46:09,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:46:09,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:46:09,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:46:09,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:46:09,873.873 INFO    ] time= 05/06/2026 20:46:09
[2026-06-05 20:46:09,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:46:09,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:46:10,029.029 INFO    ] No existing commands found in stream
[2026-06-05 20:46:15,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:46:15,045.045 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-05 20:46:17,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:46:17,149.149 INFO    ] Checking for system updates...
[2026-06-05 20:46:17,187.187 INFO    ] 200
[2026-06-05 20:46:17,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:17,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:46:17,255.255 INFO    ] No update needed
[2026-06-05 20:46:17,258.258 INFO    ] Checking for camera pi updates...
[2026-06-05 20:46:17,293.293 INFO    ] 200
[2026-06-05 20:46:17,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:17,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:46:17,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:46:17,399.399 INFO    ] No camera update needed
[2026-06-05 20:46:17,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:46:17,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:46:17,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:46:17,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:46:19,458.458 INFO    ] ================================================
[2026-06-05 20:46:19,474.474 INFO    ] Launching Daemon at Fri Jun  5 20:46:19 IST 2026
[2026-06-05 20:46:19,485.485 INFO    ] ================================================
[2026-06-05 20:46:20,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:46:20
[2026-06-05 20:46:20,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:46:20,922.922 INFO    ] Initializing speech engine...
[2026-06-05 20:46:20,946.946 INFO    ] 2026-06-05 20:46:20
[2026-06-05 20:46:21,201.201 INFO    ] 2026-06-05 20:46:21
[2026-06-05 20:46:21,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:46:21,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:46:21,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:46:21,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:46:21,698.698 INFO    ] time= 05/06/2026 20:46:21
[2026-06-05 20:46:21,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:46:21,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:46:21,895.895 INFO    ] No existing commands found in stream
[2026-06-05 20:46:26,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:46:26,928.928 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 20:46:27,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:46:27,575.575 INFO    ] Checking for system updates...
[2026-06-05 20:46:27,612.612 INFO    ] 200
[2026-06-05 20:46:27,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:27,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:46:27,670.670 INFO    ] No update needed
[2026-06-05 20:46:27,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 20:46:27,707.707 INFO    ] 200
[2026-06-05 20:46:27,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:27,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:46:27,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:46:27,808.808 INFO    ] No camera update needed
[2026-06-05 20:46:27,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:46:27,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:46:27,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:46:27,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:46:29,865.865 INFO    ] ================================================
[2026-06-05 20:46:29,880.880 INFO    ] Launching Daemon at Fri Jun  5 20:46:29 IST 2026
[2026-06-05 20:46:29,891.891 INFO    ] ================================================
[2026-06-05 20:46:30,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:46:30
[2026-06-05 20:46:31,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:46:31,367.367 INFO    ] Initializing speech engine...
[2026-06-05 20:46:31,381.381 INFO    ] 2026-06-05 20:46:31
[2026-06-05 20:46:31,644.644 INFO    ] 2026-06-05 20:46:31
[2026-06-05 20:46:31,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:46:31,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:46:31,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:46:33,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:46:33,951.951 INFO    ] time= 05/06/2026 20:46:33
[2026-06-05 20:46:33,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:46:33,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:46:34,079.079 INFO    ] No existing commands found in stream
[2026-06-05 20:46:39,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:46:39,098.098 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 20:46:40,842.842 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:46:40,844.844 INFO    ] Checking for system updates...
[2026-06-05 20:46:40,880.880 INFO    ] 200
[2026-06-05 20:46:40,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:40,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:46:40,939.939 INFO    ] No update needed
[2026-06-05 20:46:40,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 20:46:40,975.975 INFO    ] 200
[2026-06-05 20:46:40,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:41,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:46:41,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:46:41,072.072 INFO    ] No camera update needed
[2026-06-05 20:46:41,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:46:41,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:46:41,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:46:41,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:46:43,128.128 INFO    ] ================================================
[2026-06-05 20:46:43,145.145 INFO    ] Launching Daemon at Fri Jun  5 20:46:43 IST 2026
[2026-06-05 20:46:43,156.156 INFO    ] ================================================
[2026-06-05 20:46:43,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:46:43
[2026-06-05 20:46:44,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:46:44,582.582 INFO    ] Initializing speech engine...
[2026-06-05 20:46:44,591.591 INFO    ] 2026-06-05 20:46:44
[2026-06-05 20:46:44,837.837 INFO    ] 2026-06-05 20:46:44
[2026-06-05 20:46:44,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:46:45,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:46:45,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:46:45,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:46:45,323.323 INFO    ] time= 05/06/2026 20:46:45
[2026-06-05 20:46:45,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:46:45,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:46:45,527.527 INFO    ] No existing commands found in stream
[2026-06-05 20:46:50,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:46:50,558.558 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 20:46:53,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:46:53,739.739 INFO    ] Checking for system updates...
[2026-06-05 20:46:53,775.775 INFO    ] 200
[2026-06-05 20:46:53,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:53,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:46:53,832.832 INFO    ] No update needed
[2026-06-05 20:46:53,835.835 INFO    ] Checking for camera pi updates...
[2026-06-05 20:46:53,872.872 INFO    ] 200
[2026-06-05 20:46:53,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:46:53,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:46:53,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:46:53,970.970 INFO    ] No camera update needed
[2026-06-05 20:46:53,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:46:53,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:46:53,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:46:53,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:46:56,027.027 INFO    ] ================================================
[2026-06-05 20:46:56,044.044 INFO    ] Launching Daemon at Fri Jun  5 20:46:56 IST 2026
[2026-06-05 20:46:56,055.055 INFO    ] ================================================
[2026-06-05 20:46:56,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:46:56
[2026-06-05 20:46:57,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:46:57,516.516 INFO    ] Initializing speech engine...
[2026-06-05 20:46:57,525.525 INFO    ] 2026-06-05 20:46:57
[2026-06-05 20:46:57,798.798 INFO    ] 2026-06-05 20:46:57
[2026-06-05 20:46:57,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:46:58,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:46:58,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:46:58,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:46:58,226.226 INFO    ] time= 05/06/2026 20:46:58
[2026-06-05 20:46:58,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:46:58,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:46:58,308.308 INFO    ] No existing commands found in stream
[2026-06-05 20:47:03,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:47:03,320.320 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 20:47:06,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:47:06,047.047 INFO    ] Checking for system updates...
[2026-06-05 20:47:06,086.086 INFO    ] 200
[2026-06-05 20:47:06,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:06,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:47:06,144.144 INFO    ] No update needed
[2026-06-05 20:47:06,147.147 INFO    ] Checking for camera pi updates...
[2026-06-05 20:47:06,181.181 INFO    ] 200
[2026-06-05 20:47:06,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:06,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:47:06,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:47:06,271.271 INFO    ] No camera update needed
[2026-06-05 20:47:06,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:47:06,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:47:06,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:47:06,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:47:08,329.329 INFO    ] ================================================
[2026-06-05 20:47:08,353.353 INFO    ] Launching Daemon at Fri Jun  5 20:47:08 IST 2026
[2026-06-05 20:47:08,364.364 INFO    ] ================================================
[2026-06-05 20:47:09,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:47:09
[2026-06-05 20:47:09,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:47:09,942.942 INFO    ] Initializing speech engine...
[2026-06-05 20:47:09,951.951 INFO    ] 2026-06-05 20:47:09
[2026-06-05 20:47:10,245.245 INFO    ] 2026-06-05 20:47:10
[2026-06-05 20:47:10,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:47:10,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:47:10,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:47:10,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:47:10,668.668 INFO    ] time= 05/06/2026 20:47:10
[2026-06-05 20:47:10,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:47:10,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:47:10,832.832 INFO    ] No existing commands found in stream
[2026-06-05 20:47:15,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:47:15,865.865 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 20:47:16,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:47:17,001.001 INFO    ] Checking for system updates...
[2026-06-05 20:47:17,037.037 INFO    ] 200
[2026-06-05 20:47:17,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:17,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:47:17,094.094 INFO    ] No update needed
[2026-06-05 20:47:17,097.097 INFO    ] Checking for camera pi updates...
[2026-06-05 20:47:17,131.131 INFO    ] 200
[2026-06-05 20:47:17,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:17,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:47:17,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:47:17,330.330 INFO    ] No camera update needed
[2026-06-05 20:47:17,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:47:17,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:47:17,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:47:17,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:47:19,388.388 INFO    ] ================================================
[2026-06-05 20:47:19,403.403 INFO    ] Launching Daemon at Fri Jun  5 20:47:19 IST 2026
[2026-06-05 20:47:19,414.414 INFO    ] ================================================
[2026-06-05 20:47:20,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:47:20
[2026-06-05 20:47:20,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:47:20,868.868 INFO    ] Initializing speech engine...
[2026-06-05 20:47:20,873.873 INFO    ] 2026-06-05 20:47:20
[2026-06-05 20:47:21,159.159 INFO    ] 2026-06-05 20:47:21
[2026-06-05 20:47:21,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:47:21,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:47:21,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:47:21,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:47:21,648.648 INFO    ] time= 05/06/2026 20:47:21
[2026-06-05 20:47:21,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:47:21,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:47:21,853.853 INFO    ] No existing commands found in stream
[2026-06-05 20:47:26,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:47:26,881.881 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-05 20:47:27,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:47:27,976.976 INFO    ] Checking for system updates...
[2026-06-05 20:47:28,012.012 INFO    ] 200
[2026-06-05 20:47:28,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:28,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:47:28,069.069 INFO    ] No update needed
[2026-06-05 20:47:28,071.071 INFO    ] Checking for camera pi updates...
[2026-06-05 20:47:28,108.108 INFO    ] 200
[2026-06-05 20:47:28,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:28,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:47:28,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:47:28,209.209 INFO    ] No camera update needed
[2026-06-05 20:47:28,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:47:28,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:47:28,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:47:28,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:47:30,265.265 INFO    ] ================================================
[2026-06-05 20:47:30,281.281 INFO    ] Launching Daemon at Fri Jun  5 20:47:30 IST 2026
[2026-06-05 20:47:30,293.293 INFO    ] ================================================
[2026-06-05 20:47:30,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:47:30
[2026-06-05 20:47:31,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:47:31,813.813 INFO    ] Initializing speech engine...
[2026-06-05 20:47:31,821.821 INFO    ] 2026-06-05 20:47:31
[2026-06-05 20:47:32,108.108 INFO    ] 2026-06-05 20:47:32
[2026-06-05 20:47:32,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:47:32,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:47:32,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:47:32,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:47:32,722.722 INFO    ] time= 05/06/2026 20:47:32
[2026-06-05 20:47:32,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:47:32,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:47:32,907.907 INFO    ] No existing commands found in stream
[2026-06-05 20:47:37,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:47:37,942.942 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 20:47:38,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:47:38,703.703 INFO    ] Checking for system updates...
[2026-06-05 20:47:38,741.741 INFO    ] 200
[2026-06-05 20:47:38,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:38,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:47:38,800.800 INFO    ] No update needed
[2026-06-05 20:47:38,802.802 INFO    ] Checking for camera pi updates...
[2026-06-05 20:47:38,841.841 INFO    ] 200
[2026-06-05 20:47:38,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:38,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:47:38,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:47:38,946.946 INFO    ] No camera update needed
[2026-06-05 20:47:38,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:47:38,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:47:38,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:47:38,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:47:41,007.007 INFO    ] ================================================
[2026-06-05 20:47:41,022.022 INFO    ] Launching Daemon at Fri Jun  5 20:47:41 IST 2026
[2026-06-05 20:47:41,039.039 INFO    ] ================================================
[2026-06-05 20:47:41,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:47:41
[2026-06-05 20:47:42,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:47:42,468.468 INFO    ] Initializing speech engine...
[2026-06-05 20:47:42,478.478 INFO    ] 2026-06-05 20:47:42
[2026-06-05 20:47:42,722.722 INFO    ] 2026-06-05 20:47:42
[2026-06-05 20:47:42,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:47:42,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:47:43,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:47:43,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:47:43,287.287 INFO    ] time= 05/06/2026 20:47:43
[2026-06-05 20:47:43,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:47:43,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:47:43,441.441 INFO    ] No existing commands found in stream
[2026-06-05 20:47:48,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:47:48,456.456 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 20:47:50,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:47:50,543.543 INFO    ] Checking for system updates...
[2026-06-05 20:47:50,580.580 INFO    ] 200
[2026-06-05 20:47:50,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:50,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:47:50,641.641 INFO    ] No update needed
[2026-06-05 20:47:50,644.644 INFO    ] Checking for camera pi updates...
[2026-06-05 20:47:50,681.681 INFO    ] 200
[2026-06-05 20:47:50,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:47:50,728.728 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:47:50,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:47:50,761.761 INFO    ] No camera update needed
[2026-06-05 20:47:50,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:47:50,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:47:50,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:47:50,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:47:52,817.817 INFO    ] ================================================
[2026-06-05 20:47:52,833.833 INFO    ] Launching Daemon at Fri Jun  5 20:47:52 IST 2026
[2026-06-05 20:47:52,846.846 INFO    ] ================================================
[2026-06-05 20:47:53,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:47:53
[2026-06-05 20:47:54,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:47:54,301.301 INFO    ] Initializing speech engine...
[2026-06-05 20:47:54,307.307 INFO    ] 2026-06-05 20:47:54
[2026-06-05 20:47:54,602.602 INFO    ] 2026-06-05 20:47:54
[2026-06-05 20:47:54,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:47:54,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:47:54,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:47:55,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:47:55,094.094 INFO    ] time= 05/06/2026 20:47:55
[2026-06-05 20:47:55,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:47:55,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:47:55,349.349 INFO    ] No existing commands found in stream
[2026-06-05 20:48:00,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:48:00,384.384 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-05 20:48:02,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:48:02,304.304 INFO    ] Checking for system updates...
[2026-06-05 20:48:02,348.348 INFO    ] 200
[2026-06-05 20:48:02,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:02,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:48:02,429.429 INFO    ] No update needed
[2026-06-05 20:48:02,433.433 INFO    ] Checking for camera pi updates...
[2026-06-05 20:48:02,481.481 INFO    ] 200
[2026-06-05 20:48:02,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:02,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:48:02,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:48:02,570.570 INFO    ] No camera update needed
[2026-06-05 20:48:02,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:48:02,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:48:02,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:48:02,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:48:04,637.637 INFO    ] ================================================
[2026-06-05 20:48:04,652.652 INFO    ] Launching Daemon at Fri Jun  5 20:48:04 IST 2026
[2026-06-05 20:48:04,663.663 INFO    ] ================================================
[2026-06-05 20:48:05,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:48:05
[2026-06-05 20:48:05,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:48:06,313.313 INFO    ] Initializing speech engine...
[2026-06-05 20:48:06,323.323 INFO    ] 2026-06-05 20:48:06
[2026-06-05 20:48:06,611.611 INFO    ] 2026-06-05 20:48:06
[2026-06-05 20:48:06,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:48:06,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:48:06,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:48:07,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:48:07,179.179 INFO    ] time= 05/06/2026 20:48:07
[2026-06-05 20:48:07,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:48:07,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:48:07,309.309 INFO    ] No existing commands found in stream
[2026-06-05 20:48:12,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:48:12,343.343 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 20:48:15,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:48:15,046.046 INFO    ] Checking for system updates...
[2026-06-05 20:48:15,083.083 INFO    ] 200
[2026-06-05 20:48:15,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:15,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:48:15,142.142 INFO    ] No update needed
[2026-06-05 20:48:15,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 20:48:15,178.178 INFO    ] 200
[2026-06-05 20:48:15,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:15,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:48:15,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:48:15,270.270 INFO    ] No camera update needed
[2026-06-05 20:48:15,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:48:15,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:48:15,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:48:15,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:48:17,326.326 INFO    ] ================================================
[2026-06-05 20:48:17,341.341 INFO    ] Launching Daemon at Fri Jun  5 20:48:17 IST 2026
[2026-06-05 20:48:17,352.352 INFO    ] ================================================
[2026-06-05 20:48:17,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:48:17
[2026-06-05 20:48:18,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:48:19,001.001 INFO    ] Initializing speech engine...
[2026-06-05 20:48:19,010.010 INFO    ] 2026-06-05 20:48:19
[2026-06-05 20:48:19,300.300 INFO    ] 2026-06-05 20:48:19
[2026-06-05 20:48:19,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:48:19,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:48:19,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:48:19,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:48:19,844.844 INFO    ] time= 05/06/2026 20:48:19
[2026-06-05 20:48:19,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:48:19,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:48:20,025.025 INFO    ] No existing commands found in stream
[2026-06-05 20:48:25,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:48:25,054.054 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 20:48:25,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:48:25,673.673 INFO    ] Checking for system updates...
[2026-06-05 20:48:25,710.710 INFO    ] 200
[2026-06-05 20:48:25,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:25,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:48:25,776.776 INFO    ] No update needed
[2026-06-05 20:48:25,778.778 INFO    ] Checking for camera pi updates...
[2026-06-05 20:48:25,816.816 INFO    ] 200
[2026-06-05 20:48:25,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:25,859.859 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:48:25,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:48:25,912.912 INFO    ] No camera update needed
[2026-06-05 20:48:25,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:48:25,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:48:25,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:48:25,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:48:27,969.969 INFO    ] ================================================
[2026-06-05 20:48:27,984.984 INFO    ] Launching Daemon at Fri Jun  5 20:48:27 IST 2026
[2026-06-05 20:48:28,995.995 INFO    ] ================================================
[2026-06-05 20:48:28,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:48:28
[2026-06-05 20:48:29,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:48:29,507.507 INFO    ] Initializing speech engine...
[2026-06-05 20:48:29,514.514 INFO    ] 2026-06-05 20:48:29
[2026-06-05 20:48:29,794.794 INFO    ] 2026-06-05 20:48:29
[2026-06-05 20:48:29,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:48:30,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:48:30,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:48:30,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:48:30,294.294 INFO    ] time= 05/06/2026 20:48:30
[2026-06-05 20:48:30,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:48:30,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:48:30,473.473 INFO    ] No existing commands found in stream
[2026-06-05 20:48:35,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:48:35,508.508 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 20:48:39,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:48:39,456.456 INFO    ] Checking for system updates...
[2026-06-05 20:48:39,499.499 INFO    ] 200
[2026-06-05 20:48:39,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:39,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:48:39,565.565 INFO    ] No update needed
[2026-06-05 20:48:39,569.569 INFO    ] Checking for camera pi updates...
[2026-06-05 20:48:39,607.607 INFO    ] 200
[2026-06-05 20:48:39,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:39,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:48:39,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:48:39,728.728 INFO    ] No camera update needed
[2026-06-05 20:48:39,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:48:39,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:48:39,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:48:39,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:48:41,798.798 INFO    ] ================================================
[2026-06-05 20:48:41,813.813 INFO    ] Launching Daemon at Fri Jun  5 20:48:41 IST 2026
[2026-06-05 20:48:41,824.824 INFO    ] ================================================
[2026-06-05 20:48:42,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:48:42
[2026-06-05 20:48:43,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:48:43,377.377 INFO    ] Initializing speech engine...
[2026-06-05 20:48:43,383.383 INFO    ] 2026-06-05 20:48:43
[2026-06-05 20:48:43,675.675 INFO    ] 2026-06-05 20:48:43
[2026-06-05 20:48:43,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:48:43,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:48:43,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:48:44,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:48:44,235.235 INFO    ] time= 05/06/2026 20:48:44
[2026-06-05 20:48:44,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:48:44,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:48:44,378.378 INFO    ] No existing commands found in stream
[2026-06-05 20:48:49,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:48:49,410.410 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-05 20:48:49,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:48:49,892.892 INFO    ] Checking for system updates...
[2026-06-05 20:48:49,928.928 INFO    ] 200
[2026-06-05 20:48:49,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:49,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:48:49,986.986 INFO    ] No update needed
[2026-06-05 20:48:49,989.989 INFO    ] Checking for camera pi updates...
[2026-06-05 20:48:50,028.028 INFO    ] 200
[2026-06-05 20:48:50,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:48:50,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:48:50,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:48:50,137.137 INFO    ] No camera update needed
[2026-06-05 20:48:50,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:48:50,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:48:50,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:48:50,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:48:52,193.193 INFO    ] ================================================
[2026-06-05 20:48:52,209.209 INFO    ] Launching Daemon at Fri Jun  5 20:48:52 IST 2026
[2026-06-05 20:48:52,219.219 INFO    ] ================================================
[2026-06-05 20:48:52,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:48:52
[2026-06-05 20:48:53,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:48:53,709.709 INFO    ] Initializing speech engine...
[2026-06-05 20:48:53,724.724 INFO    ] 2026-06-05 20:48:53
[2026-06-05 20:48:54,016.016 INFO    ] 2026-06-05 20:48:53
[2026-06-05 20:48:54,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:48:54,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:48:54,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:48:54,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:48:54,596.596 INFO    ] time= 05/06/2026 20:48:54
[2026-06-05 20:48:54,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:48:54,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:48:54,819.819 INFO    ] No existing commands found in stream
[2026-06-05 20:48:59,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:48:59,839.839 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 20:49:00,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:49:00,424.424 INFO    ] Checking for system updates...
[2026-06-05 20:49:00,461.461 INFO    ] 200
[2026-06-05 20:49:00,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:00,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:49:00,520.520 INFO    ] No update needed
[2026-06-05 20:49:00,523.523 INFO    ] Checking for camera pi updates...
[2026-06-05 20:49:00,561.561 INFO    ] 200
[2026-06-05 20:49:00,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:00,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:49:00,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:49:00,657.657 INFO    ] No camera update needed
[2026-06-05 20:49:00,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:49:00,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:49:00,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:49:00,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:49:02,720.720 INFO    ] ================================================
[2026-06-05 20:49:02,744.744 INFO    ] Launching Daemon at Fri Jun  5 20:49:02 IST 2026
[2026-06-05 20:49:02,761.761 INFO    ] ================================================
[2026-06-05 20:49:03,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:49:03
[2026-06-05 20:49:04,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:49:04,279.279 INFO    ] Initializing speech engine...
[2026-06-05 20:49:04,286.286 INFO    ] 2026-06-05 20:49:04
[2026-06-05 20:49:04,549.549 INFO    ] 2026-06-05 20:49:04
[2026-06-05 20:49:04,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:49:07,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:49:07,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:49:07,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:49:07,618.618 INFO    ] time= 05/06/2026 20:49:07
[2026-06-05 20:49:07,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:49:07,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:49:07,691.691 INFO    ] No existing commands found in stream
[2026-06-05 20:49:12,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:49:12,703.703 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 20:49:13,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:49:13,251.251 INFO    ] Checking for system updates...
[2026-06-05 20:49:13,288.288 INFO    ] 200
[2026-06-05 20:49:13,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:13,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:49:13,352.352 INFO    ] No update needed
[2026-06-05 20:49:13,354.354 INFO    ] Checking for camera pi updates...
[2026-06-05 20:49:13,388.388 INFO    ] 200
[2026-06-05 20:49:13,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:13,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:49:13,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:49:13,481.481 INFO    ] No camera update needed
[2026-06-05 20:49:13,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:49:13,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:49:13,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:49:13,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:49:15,541.541 INFO    ] ================================================
[2026-06-05 20:49:15,557.557 INFO    ] Launching Daemon at Fri Jun  5 20:49:15 IST 2026
[2026-06-05 20:49:15,568.568 INFO    ] ================================================
[2026-06-05 20:49:16,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:49:16
[2026-06-05 20:49:16,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:49:17,024.024 INFO    ] Initializing speech engine...
[2026-06-05 20:49:17,039.039 INFO    ] 2026-06-05 20:49:17
[2026-06-05 20:49:17,324.324 INFO    ] 2026-06-05 20:49:17
[2026-06-05 20:49:17,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:49:17,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:49:17,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:49:17,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:49:17,740.740 INFO    ] time= 05/06/2026 20:49:17
[2026-06-05 20:49:17,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:49:17,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:49:17,932.932 INFO    ] No existing commands found in stream
[2026-06-05 20:49:22,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:49:22,961.961 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 20:49:25,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:49:25,567.567 INFO    ] Checking for system updates...
[2026-06-05 20:49:25,603.603 INFO    ] 200
[2026-06-05 20:49:25,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:25,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:49:25,667.667 INFO    ] No update needed
[2026-06-05 20:49:25,669.669 INFO    ] Checking for camera pi updates...
[2026-06-05 20:49:25,706.706 INFO    ] 200
[2026-06-05 20:49:25,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:25,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:49:25,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:49:25,899.899 INFO    ] No camera update needed
[2026-06-05 20:49:25,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:49:25,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:49:25,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:49:25,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:49:27,955.955 INFO    ] ================================================
[2026-06-05 20:49:27,970.970 INFO    ] Launching Daemon at Fri Jun  5 20:49:27 IST 2026
[2026-06-05 20:49:27,981.981 INFO    ] ================================================
[2026-06-05 20:49:28,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:49:28
[2026-06-05 20:49:29,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:49:29,431.431 INFO    ] Initializing speech engine...
[2026-06-05 20:49:29,439.439 INFO    ] 2026-06-05 20:49:29
[2026-06-05 20:49:29,734.734 INFO    ] 2026-06-05 20:49:29
[2026-06-05 20:49:29,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:49:29,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:49:29,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:49:30,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:49:30,166.166 INFO    ] time= 05/06/2026 20:49:30
[2026-06-05 20:49:30,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:49:30,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:49:30,251.251 INFO    ] No existing commands found in stream
[2026-06-05 20:49:35,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:49:35,267.267 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 20:49:39,675.675 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:49:39,678.678 INFO    ] Checking for system updates...
[2026-06-05 20:49:39,714.714 INFO    ] 200
[2026-06-05 20:49:39,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:39,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:49:39,778.778 INFO    ] No update needed
[2026-06-05 20:49:39,780.780 INFO    ] Checking for camera pi updates...
[2026-06-05 20:49:39,814.814 INFO    ] 200
[2026-06-05 20:49:39,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:39,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:49:39,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:49:39,917.917 INFO    ] No camera update needed
[2026-06-05 20:49:39,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:49:39,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:49:39,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:49:39,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:49:41,972.972 INFO    ] ================================================
[2026-06-05 20:49:41,988.988 INFO    ] Launching Daemon at Fri Jun  5 20:49:41 IST 2026
[2026-06-05 20:49:42,999.999 INFO    ] ================================================
[2026-06-05 20:49:42,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:49:42
[2026-06-05 20:49:43,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:49:43,474.474 INFO    ] Initializing speech engine...
[2026-06-05 20:49:43,493.493 INFO    ] 2026-06-05 20:49:43
[2026-06-05 20:49:43,742.742 INFO    ] 2026-06-05 20:49:43
[2026-06-05 20:49:43,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:49:44,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:49:44,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:49:44,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:49:44,302.302 INFO    ] time= 05/06/2026 20:49:44
[2026-06-05 20:49:44,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:49:44,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:49:44,457.457 INFO    ] No existing commands found in stream
[2026-06-05 20:49:49,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:49:49,470.470 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 20:49:51,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:49:51,446.446 INFO    ] Checking for system updates...
[2026-06-05 20:49:51,485.485 INFO    ] 200
[2026-06-05 20:49:51,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:51,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:49:51,550.550 INFO    ] No update needed
[2026-06-05 20:49:51,552.552 INFO    ] Checking for camera pi updates...
[2026-06-05 20:49:51,589.589 INFO    ] 200
[2026-06-05 20:49:51,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:49:51,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:49:51,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:49:51,683.683 INFO    ] No camera update needed
[2026-06-05 20:49:51,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:49:51,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:49:51,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:49:51,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:49:53,738.738 INFO    ] ================================================
[2026-06-05 20:49:53,753.753 INFO    ] Launching Daemon at Fri Jun  5 20:49:53 IST 2026
[2026-06-05 20:49:53,764.764 INFO    ] ================================================
[2026-06-05 20:49:54,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:49:54
[2026-06-05 20:49:55,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:49:55,405.405 INFO    ] Initializing speech engine...
[2026-06-05 20:49:55,417.417 INFO    ] 2026-06-05 20:49:55
[2026-06-05 20:49:55,726.726 INFO    ] 2026-06-05 20:49:55
[2026-06-05 20:49:55,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:49:55,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:49:55,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:49:56,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:49:56,242.242 INFO    ] time= 05/06/2026 20:49:56
[2026-06-05 20:49:56,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:49:56,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:49:56,396.396 INFO    ] No existing commands found in stream
[2026-06-05 20:50:01,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:50:01,411.411 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 20:50:03,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:50:03,277.277 INFO    ] Checking for system updates...
[2026-06-05 20:50:03,321.321 INFO    ] 200
[2026-06-05 20:50:03,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:03,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:50:03,387.387 INFO    ] No update needed
[2026-06-05 20:50:03,390.390 INFO    ] Checking for camera pi updates...
[2026-06-05 20:50:03,428.428 INFO    ] 200
[2026-06-05 20:50:03,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:03,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:50:03,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:50:03,515.515 INFO    ] No camera update needed
[2026-06-05 20:50:03,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:50:03,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:50:03,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:50:03,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:50:05,572.572 INFO    ] ================================================
[2026-06-05 20:50:05,588.588 INFO    ] Launching Daemon at Fri Jun  5 20:50:05 IST 2026
[2026-06-05 20:50:05,599.599 INFO    ] ================================================
[2026-06-05 20:50:06,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:50:06
[2026-06-05 20:50:06,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:50:07,044.044 INFO    ] Initializing speech engine...
[2026-06-05 20:50:07,061.061 INFO    ] 2026-06-05 20:50:07
[2026-06-05 20:50:07,344.344 INFO    ] 2026-06-05 20:50:07
[2026-06-05 20:50:07,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:50:08,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:50:08,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:50:08,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:50:08,616.616 INFO    ] time= 05/06/2026 20:50:08
[2026-06-05 20:50:08,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:50:08,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:50:08,810.810 INFO    ] No existing commands found in stream
[2026-06-05 20:50:13,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:50:13,839.839 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 20:50:15,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:50:15,080.080 INFO    ] Checking for system updates...
[2026-06-05 20:50:15,116.116 INFO    ] 200
[2026-06-05 20:50:15,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:15,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:50:15,183.183 INFO    ] No update needed
[2026-06-05 20:50:15,186.186 INFO    ] Checking for camera pi updates...
[2026-06-05 20:50:15,223.223 INFO    ] 200
[2026-06-05 20:50:15,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:15,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:50:15,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:50:15,318.318 INFO    ] No camera update needed
[2026-06-05 20:50:15,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:50:15,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:50:15,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:50:15,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:50:17,374.374 INFO    ] ================================================
[2026-06-05 20:50:17,390.390 INFO    ] Launching Daemon at Fri Jun  5 20:50:17 IST 2026
[2026-06-05 20:50:17,401.401 INFO    ] ================================================
[2026-06-05 20:50:17,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:50:17
[2026-06-05 20:50:18,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:50:18,820.820 INFO    ] Initializing speech engine...
[2026-06-05 20:50:18,829.829 INFO    ] 2026-06-05 20:50:18
[2026-06-05 20:50:19,121.121 INFO    ] 2026-06-05 20:50:19
[2026-06-05 20:50:19,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:50:19,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:50:19,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:50:19,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:50:19,538.538 INFO    ] time= 05/06/2026 20:50:19
[2026-06-05 20:50:19,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:50:19,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:50:19,682.682 INFO    ] No existing commands found in stream
[2026-06-05 20:50:24,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:50:24,710.710 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-05 20:50:29,018.018 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:50:29,020.020 INFO    ] Checking for system updates...
[2026-06-05 20:50:29,061.061 INFO    ] 200
[2026-06-05 20:50:29,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:29,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:50:29,118.118 INFO    ] No update needed
[2026-06-05 20:50:29,121.121 INFO    ] Checking for camera pi updates...
[2026-06-05 20:50:29,155.155 INFO    ] 200
[2026-06-05 20:50:29,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:29,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:50:29,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:50:29,253.253 INFO    ] No camera update needed
[2026-06-05 20:50:29,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:50:29,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:50:29,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:50:29,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:50:31,310.310 INFO    ] ================================================
[2026-06-05 20:50:31,326.326 INFO    ] Launching Daemon at Fri Jun  5 20:50:31 IST 2026
[2026-06-05 20:50:31,337.337 INFO    ] ================================================
[2026-06-05 20:50:31,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:50:31
[2026-06-05 20:50:32,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:50:32,897.897 INFO    ] Initializing speech engine...
[2026-06-05 20:50:32,903.903 INFO    ] 2026-06-05 20:50:32
[2026-06-05 20:50:33,204.204 INFO    ] 2026-06-05 20:50:33
[2026-06-05 20:50:33,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:50:33,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:50:33,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:50:33,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:50:33,638.638 INFO    ] time= 05/06/2026 20:50:33
[2026-06-05 20:50:33,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:50:33,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:50:33,842.842 INFO    ] No existing commands found in stream
[2026-06-05 20:50:38,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:50:38,887.887 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-05 20:50:43,081.081 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:50:43,084.084 INFO    ] Checking for system updates...
[2026-06-05 20:50:43,121.121 INFO    ] 200
[2026-06-05 20:50:43,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:43,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:50:43,181.181 INFO    ] No update needed
[2026-06-05 20:50:43,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 20:50:43,224.224 INFO    ] 200
[2026-06-05 20:50:43,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:43,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:50:43,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:50:43,310.310 INFO    ] No camera update needed
[2026-06-05 20:50:43,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:50:43,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:50:43,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:50:43,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:50:45,370.370 INFO    ] ================================================
[2026-06-05 20:50:45,385.385 INFO    ] Launching Daemon at Fri Jun  5 20:50:45 IST 2026
[2026-06-05 20:50:45,396.396 INFO    ] ================================================
[2026-06-05 20:50:46,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:50:46
[2026-06-05 20:50:46,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:50:47,017.017 INFO    ] Initializing speech engine...
[2026-06-05 20:50:47,024.024 INFO    ] 2026-06-05 20:50:47
[2026-06-05 20:50:47,309.309 INFO    ] 2026-06-05 20:50:47
[2026-06-05 20:50:47,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:50:47,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:50:47,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:50:47,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:50:47,875.875 INFO    ] time= 05/06/2026 20:50:47
[2026-06-05 20:50:47,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:50:47,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:50:48,020.020 INFO    ] No existing commands found in stream
[2026-06-05 20:50:53,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:50:53,055.055 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 20:50:55,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:50:55,444.444 INFO    ] Checking for system updates...
[2026-06-05 20:50:55,482.482 INFO    ] 200
[2026-06-05 20:50:55,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:55,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:50:55,542.542 INFO    ] No update needed
[2026-06-05 20:50:55,545.545 INFO    ] Checking for camera pi updates...
[2026-06-05 20:50:55,581.581 INFO    ] 200
[2026-06-05 20:50:55,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:50:55,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:50:55,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:50:55,700.700 INFO    ] No camera update needed
[2026-06-05 20:50:55,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:50:55,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:50:55,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:50:55,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:50:57,762.762 INFO    ] ================================================
[2026-06-05 20:50:57,778.778 INFO    ] Launching Daemon at Fri Jun  5 20:50:57 IST 2026
[2026-06-05 20:50:57,789.789 INFO    ] ================================================
[2026-06-05 20:50:58,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:50:58
[2026-06-05 20:50:58,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:50:59,244.244 INFO    ] Initializing speech engine...
[2026-06-05 20:50:59,254.254 INFO    ] 2026-06-05 20:50:59
[2026-06-05 20:50:59,552.552 INFO    ] 2026-06-05 20:50:59
[2026-06-05 20:50:59,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:50:59,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:50:59,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:50:59,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:50:59,975.975 INFO    ] time= 05/06/2026 20:50:59
[2026-06-05 20:50:59,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:51:00,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:51:00,202.202 INFO    ] No existing commands found in stream
[2026-06-05 20:51:05,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:51:05,216.216 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 20:51:08,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:51:08,790.790 INFO    ] Checking for system updates...
[2026-06-05 20:51:08,827.827 INFO    ] 200
[2026-06-05 20:51:08,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:08,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:51:08,895.895 INFO    ] No update needed
[2026-06-05 20:51:08,899.899 INFO    ] Checking for camera pi updates...
[2026-06-05 20:51:08,944.944 INFO    ] 200
[2026-06-05 20:51:08,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:08,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:51:09,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:51:09,050.050 INFO    ] No camera update needed
[2026-06-05 20:51:09,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:51:09,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:51:09,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:51:09,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:51:11,108.108 INFO    ] ================================================
[2026-06-05 20:51:11,123.123 INFO    ] Launching Daemon at Fri Jun  5 20:51:11 IST 2026
[2026-06-05 20:51:11,135.135 INFO    ] ================================================
[2026-06-05 20:51:11,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:51:11
[2026-06-05 20:51:12,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:51:12,659.659 INFO    ] Initializing speech engine...
[2026-06-05 20:51:12,667.667 INFO    ] 2026-06-05 20:51:12
[2026-06-05 20:51:12,925.925 INFO    ] 2026-06-05 20:51:12
[2026-06-05 20:51:12,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:51:13,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:51:13,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:51:13,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:51:13,402.402 INFO    ] time= 05/06/2026 20:51:13
[2026-06-05 20:51:13,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:51:13,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:51:13,650.650 INFO    ] No existing commands found in stream
[2026-06-05 20:51:18,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:51:18,669.669 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 20:51:21,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:51:21,441.441 INFO    ] Checking for system updates...
[2026-06-05 20:51:21,477.477 INFO    ] 200
[2026-06-05 20:51:21,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:21,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:51:21,544.544 INFO    ] No update needed
[2026-06-05 20:51:21,546.546 INFO    ] Checking for camera pi updates...
[2026-06-05 20:51:21,584.584 INFO    ] 200
[2026-06-05 20:51:21,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:21,627.627 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:51:21,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:51:21,677.677 INFO    ] No camera update needed
[2026-06-05 20:51:21,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:51:21,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:51:21,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:51:21,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:51:23,732.732 INFO    ] ================================================
[2026-06-05 20:51:23,748.748 INFO    ] Launching Daemon at Fri Jun  5 20:51:23 IST 2026
[2026-06-05 20:51:23,758.758 INFO    ] ================================================
[2026-06-05 20:51:24,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:51:24
[2026-06-05 20:51:24,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:51:25,185.185 INFO    ] Initializing speech engine...
[2026-06-05 20:51:25,194.194 INFO    ] 2026-06-05 20:51:25
[2026-06-05 20:51:25,441.441 INFO    ] 2026-06-05 20:51:25
[2026-06-05 20:51:25,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:51:25,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:51:25,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:51:25,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:51:25,936.936 INFO    ] time= 05/06/2026 20:51:25
[2026-06-05 20:51:26,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:51:26,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:51:26,237.237 INFO    ] No existing commands found in stream
[2026-06-05 20:51:31,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:51:31,270.270 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 20:51:34,069.069 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:51:34,072.072 INFO    ] Checking for system updates...
[2026-06-05 20:51:34,108.108 INFO    ] 200
[2026-06-05 20:51:34,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:34,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:51:34,169.169 INFO    ] No update needed
[2026-06-05 20:51:34,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 20:51:34,211.211 INFO    ] 200
[2026-06-05 20:51:34,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:34,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:51:34,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:51:34,330.330 INFO    ] No camera update needed
[2026-06-05 20:51:34,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:51:34,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:51:34,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:51:34,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:51:36,389.389 INFO    ] ================================================
[2026-06-05 20:51:36,406.406 INFO    ] Launching Daemon at Fri Jun  5 20:51:36 IST 2026
[2026-06-05 20:51:36,417.417 INFO    ] ================================================
[2026-06-05 20:51:36,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:51:36
[2026-06-05 20:51:37,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:51:37,864.864 INFO    ] Initializing speech engine...
[2026-06-05 20:51:37,871.871 INFO    ] 2026-06-05 20:51:37
[2026-06-05 20:51:38,127.127 INFO    ] 2026-06-05 20:51:38
[2026-06-05 20:51:38,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:51:38,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:51:39,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:51:39,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:51:39,285.285 INFO    ] time= 05/06/2026 20:51:39
[2026-06-05 20:51:39,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:51:39,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:51:39,364.364 INFO    ] No existing commands found in stream
[2026-06-05 20:51:44,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:51:44,379.379 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-05 20:51:47,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:51:47,602.602 INFO    ] Checking for system updates...
[2026-06-05 20:51:47,643.643 INFO    ] 200
[2026-06-05 20:51:47,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:47,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:51:47,709.709 INFO    ] No update needed
[2026-06-05 20:51:47,711.711 INFO    ] Checking for camera pi updates...
[2026-06-05 20:51:47,746.746 INFO    ] 200
[2026-06-05 20:51:47,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:47,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:51:47,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:51:47,852.852 INFO    ] No camera update needed
[2026-06-05 20:51:47,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:51:47,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:51:47,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:51:47,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:51:49,910.910 INFO    ] ================================================
[2026-06-05 20:51:49,926.926 INFO    ] Launching Daemon at Fri Jun  5 20:51:49 IST 2026
[2026-06-05 20:51:49,938.938 INFO    ] ================================================
[2026-06-05 20:51:50,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:51:50
[2026-06-05 20:51:51,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:51:51,621.621 INFO    ] Initializing speech engine...
[2026-06-05 20:51:51,633.633 INFO    ] 2026-06-05 20:51:51
[2026-06-05 20:51:51,922.922 INFO    ] 2026-06-05 20:51:51
[2026-06-05 20:51:52,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:51:52,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:51:52,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:51:52,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:51:52,456.456 INFO    ] time= 05/06/2026 20:51:52
[2026-06-05 20:51:52,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:51:52,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:51:52,621.621 INFO    ] No existing commands found in stream
[2026-06-05 20:51:57,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:51:57,655.655 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 20:51:58,901.901 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:51:58,904.904 INFO    ] Checking for system updates...
[2026-06-05 20:51:58,941.941 INFO    ] 200
[2026-06-05 20:51:58,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:59,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:51:59,003.003 INFO    ] No update needed
[2026-06-05 20:51:59,006.006 INFO    ] Checking for camera pi updates...
[2026-06-05 20:51:59,045.045 INFO    ] 200
[2026-06-05 20:51:59,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:51:59,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:51:59,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:51:59,140.140 INFO    ] No camera update needed
[2026-06-05 20:51:59,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:51:59,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:51:59,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:51:59,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:52:01,199.199 INFO    ] ================================================
[2026-06-05 20:52:01,215.215 INFO    ] Launching Daemon at Fri Jun  5 20:52:01 IST 2026
[2026-06-05 20:52:01,226.226 INFO    ] ================================================
[2026-06-05 20:52:01,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:52:01
[2026-06-05 20:52:02,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:52:02,865.865 INFO    ] Initializing speech engine...
[2026-06-05 20:52:02,875.875 INFO    ] 2026-06-05 20:52:02
[2026-06-05 20:52:03,164.164 INFO    ] 2026-06-05 20:52:03
[2026-06-05 20:52:03,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:52:03,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:52:03,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:52:03,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:52:03,660.660 INFO    ] time= 05/06/2026 20:52:03
[2026-06-05 20:52:03,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:52:03,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:52:03,878.878 INFO    ] No existing commands found in stream
[2026-06-05 20:52:08,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:52:08,919.919 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 20:52:13,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:52:13,285.285 INFO    ] Checking for system updates...
[2026-06-05 20:52:13,322.322 INFO    ] 200
[2026-06-05 20:52:13,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:52:13,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:52:13,387.387 INFO    ] No update needed
[2026-06-05 20:52:13,389.389 INFO    ] Checking for camera pi updates...
[2026-06-05 20:52:13,426.426 INFO    ] 200
[2026-06-05 20:52:13,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:52:13,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:52:13,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:52:13,527.527 INFO    ] No camera update needed
[2026-06-05 20:52:13,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:52:13,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:52:13,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:52:13,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:52:15,582.582 INFO    ] ================================================
[2026-06-05 20:52:15,598.598 INFO    ] Launching Daemon at Fri Jun  5 20:52:15 IST 2026
[2026-06-05 20:52:15,609.609 INFO    ] ================================================
[2026-06-05 20:52:16,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:52:16
[2026-06-05 20:52:16,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:52:17,067.067 INFO    ] Initializing speech engine...
[2026-06-05 20:52:17,076.076 INFO    ] 2026-06-05 20:52:17
[2026-06-05 20:52:17,334.334 INFO    ] 2026-06-05 20:52:17
[2026-06-05 20:52:17,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:52:17,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:52:17,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:52:17,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:52:17,881.881 INFO    ] time= 05/06/2026 20:52:17
[2026-06-05 20:52:17,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:52:17,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:52:18,033.033 INFO    ] No existing commands found in stream
[2026-06-05 20:52:23,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:52:23,051.051 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 20:52:25,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:52:25,992.992 INFO    ] Checking for system updates...
[2026-06-05 20:52:26,032.032 INFO    ] 200
[2026-06-05 20:52:26,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:52:26,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:52:26,090.090 INFO    ] No update needed
[2026-06-05 20:52:26,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 20:52:26,131.131 INFO    ] 200
[2026-06-05 20:52:26,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:52:26,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:52:26,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:52:26,243.243 INFO    ] No camera update needed
[2026-06-05 20:52:26,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:52:26,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:52:26,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:52:26,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:52:28,300.300 INFO    ] ================================================
[2026-06-05 20:52:28,315.315 INFO    ] Launching Daemon at Fri Jun  5 20:52:28 IST 2026
[2026-06-05 20:52:28,327.327 INFO    ] ================================================
[2026-06-05 20:52:28,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:52:28
[2026-06-05 20:52:29,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:52:29,740.740 INFO    ] Initializing speech engine...
[2026-06-05 20:52:29,763.763 INFO    ] 2026-06-05 20:52:29
[2026-06-05 20:52:30,018.018 INFO    ] 2026-06-05 20:52:30
[2026-06-05 20:52:30,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:52:30,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:52:30,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:52:30,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:52:30,496.496 INFO    ] time= 05/06/2026 20:52:30
[2026-06-05 20:52:30,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:52:30,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:52:30,747.747 INFO    ] No existing commands found in stream
[2026-06-05 20:52:35,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:52:35,763.763 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 20:52:39,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:52:39,351.351 INFO    ] Checking for system updates...
[2026-06-05 20:52:39,387.387 INFO    ] 200
[2026-06-05 20:52:39,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:52:39,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:52:39,444.444 INFO    ] No update needed
[2026-06-05 20:52:39,447.447 INFO    ] Checking for camera pi updates...
[2026-06-05 20:52:39,480.480 INFO    ] 200
[2026-06-05 20:52:39,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:52:39,525.525 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:52:39,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:52:39,577.577 INFO    ] No camera update needed
[2026-06-05 20:52:39,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:52:39,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:52:39,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:52:39,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:52:41,632.632 INFO    ] ================================================
[2026-06-05 20:52:41,648.648 INFO    ] Launching Daemon at Fri Jun  5 20:52:41 IST 2026
[2026-06-05 20:52:41,658.658 INFO    ] ================================================
[2026-06-05 20:52:42,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:52:42
[2026-06-05 20:52:42,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:52:43,268.268 INFO    ] Initializing speech engine...
[2026-06-05 20:52:43,280.280 INFO    ] 2026-06-05 20:52:43
[2026-06-05 20:52:43,562.562 INFO    ] 2026-06-05 20:52:43
[2026-06-05 20:52:43,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:52:43,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:52:43,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:52:44,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:52:44,137.137 INFO    ] time= 05/06/2026 20:52:44
[2026-06-05 20:52:44,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:52:44,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:52:44,288.288 INFO    ] No existing commands found in stream
[2026-06-05 20:52:49,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:52:49,309.309 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 20:52:50,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:52:50,078.078 INFO    ] Checking for system updates...
[2026-06-05 20:52:50,116.116 INFO    ] 200
[2026-06-05 20:52:50,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:52:50,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:52:50,177.177 INFO    ] No update needed
[2026-06-05 20:52:50,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 20:52:50,218.218 INFO    ] 200
[2026-06-05 20:52:50,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:52:50,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:52:50,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:52:50,325.325 INFO    ] No camera update needed
[2026-06-05 20:52:50,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:52:50,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:52:50,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:52:50,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:52:52,384.384 INFO    ] ================================================
[2026-06-05 20:52:52,399.399 INFO    ] Launching Daemon at Fri Jun  5 20:52:52 IST 2026
[2026-06-05 20:52:52,410.410 INFO    ] ================================================
[2026-06-05 20:52:52,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:52:52
[2026-06-05 20:52:53,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:52:53,841.841 INFO    ] Initializing speech engine...
[2026-06-05 20:52:53,850.850 INFO    ] 2026-06-05 20:52:53
[2026-06-05 20:52:54,143.143 INFO    ] 2026-06-05 20:52:54
[2026-06-05 20:52:54,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:52:54,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:52:54,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:52:54,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:52:54,640.640 INFO    ] time= 05/06/2026 20:52:54
[2026-06-05 20:52:54,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:52:54,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:52:54,861.861 INFO    ] No existing commands found in stream
[2026-06-05 20:52:59,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:52:59,899.899 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 20:53:03,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:53:03,557.557 INFO    ] Checking for system updates...
[2026-06-05 20:53:03,594.594 INFO    ] 200
[2026-06-05 20:53:03,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:03,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:53:03,662.662 INFO    ] No update needed
[2026-06-05 20:53:03,665.665 INFO    ] Checking for camera pi updates...
[2026-06-05 20:53:03,704.704 INFO    ] 200
[2026-06-05 20:53:03,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:03,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:53:03,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:53:03,806.806 INFO    ] No camera update needed
[2026-06-05 20:53:03,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:53:03,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:53:03,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:53:03,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:53:05,865.865 INFO    ] ================================================
[2026-06-05 20:53:05,881.881 INFO    ] Launching Daemon at Fri Jun  5 20:53:05 IST 2026
[2026-06-05 20:53:05,891.891 INFO    ] ================================================
[2026-06-05 20:53:06,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:53:06
[2026-06-05 20:53:07,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:53:07,396.396 INFO    ] Initializing speech engine...
[2026-06-05 20:53:07,406.406 INFO    ] 2026-06-05 20:53:07
[2026-06-05 20:53:07,677.677 INFO    ] 2026-06-05 20:53:07
[2026-06-05 20:53:07,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:53:09,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:53:09,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:53:10,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:53:10,152.152 INFO    ] time= 05/06/2026 20:53:10
[2026-06-05 20:53:10,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:53:10,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:53:10,245.245 INFO    ] No existing commands found in stream
[2026-06-05 20:53:15,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:53:15,259.259 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 20:53:15,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:53:15,739.739 INFO    ] Checking for system updates...
[2026-06-05 20:53:15,780.780 INFO    ] 200
[2026-06-05 20:53:15,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:15,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:53:15,841.841 INFO    ] No update needed
[2026-06-05 20:53:15,848.848 INFO    ] Checking for camera pi updates...
[2026-06-05 20:53:15,883.883 INFO    ] 200
[2026-06-05 20:53:15,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:15,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:53:15,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:53:15,990.990 INFO    ] No camera update needed
[2026-06-05 20:53:15,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:53:15,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:53:16,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:53:16,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:53:18,044.044 INFO    ] ================================================
[2026-06-05 20:53:18,060.060 INFO    ] Launching Daemon at Fri Jun  5 20:53:18 IST 2026
[2026-06-05 20:53:18,071.071 INFO    ] ================================================
[2026-06-05 20:53:18,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:53:18
[2026-06-05 20:53:19,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:53:19,489.489 INFO    ] Initializing speech engine...
[2026-06-05 20:53:19,498.498 INFO    ] 2026-06-05 20:53:19
[2026-06-05 20:53:19,743.743 INFO    ] 2026-06-05 20:53:19
[2026-06-05 20:53:19,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:53:20,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:53:20,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:53:20,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:53:20,301.301 INFO    ] time= 05/06/2026 20:53:20
[2026-06-05 20:53:20,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:53:20,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:53:20,453.453 INFO    ] No existing commands found in stream
[2026-06-05 20:53:25,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:53:25,472.472 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 20:53:27,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:53:27,439.439 INFO    ] Checking for system updates...
[2026-06-05 20:53:27,479.479 INFO    ] 200
[2026-06-05 20:53:27,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:27,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:53:27,538.538 INFO    ] No update needed
[2026-06-05 20:53:27,540.540 INFO    ] Checking for camera pi updates...
[2026-06-05 20:53:27,574.574 INFO    ] 200
[2026-06-05 20:53:27,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:27,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:53:27,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:53:27,678.678 INFO    ] No camera update needed
[2026-06-05 20:53:27,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:53:27,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:53:27,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:53:27,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:53:29,736.736 INFO    ] ================================================
[2026-06-05 20:53:29,752.752 INFO    ] Launching Daemon at Fri Jun  5 20:53:29 IST 2026
[2026-06-05 20:53:29,763.763 INFO    ] ================================================
[2026-06-05 20:53:30,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:53:30
[2026-06-05 20:53:31,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:53:31,361.361 INFO    ] Initializing speech engine...
[2026-06-05 20:53:31,369.369 INFO    ] 2026-06-05 20:53:31
[2026-06-05 20:53:31,630.630 INFO    ] 2026-06-05 20:53:31
[2026-06-05 20:53:31,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:53:31,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:53:31,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:53:32,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:53:32,148.148 INFO    ] time= 05/06/2026 20:53:32
[2026-06-05 20:53:32,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:53:32,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:53:32,365.365 INFO    ] No existing commands found in stream
[2026-06-05 20:53:37,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:53:37,392.392 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-05 20:53:40,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:53:40,102.102 INFO    ] Checking for system updates...
[2026-06-05 20:53:40,139.139 INFO    ] 200
[2026-06-05 20:53:40,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:40,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:53:40,204.204 INFO    ] No update needed
[2026-06-05 20:53:40,207.207 INFO    ] Checking for camera pi updates...
[2026-06-05 20:53:40,245.245 INFO    ] 200
[2026-06-05 20:53:40,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:40,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:53:40,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:53:40,440.440 INFO    ] No camera update needed
[2026-06-05 20:53:40,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:53:40,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:53:40,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:53:40,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:53:42,498.498 INFO    ] ================================================
[2026-06-05 20:53:42,513.513 INFO    ] Launching Daemon at Fri Jun  5 20:53:42 IST 2026
[2026-06-05 20:53:42,523.523 INFO    ] ================================================
[2026-06-05 20:53:43,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:53:43
[2026-06-05 20:53:43,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:53:43,989.989 INFO    ] Initializing speech engine...
[2026-06-05 20:53:43,996.996 INFO    ] 2026-06-05 20:53:43
[2026-06-05 20:53:44,253.253 INFO    ] 2026-06-05 20:53:44
[2026-06-05 20:53:44,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:53:44,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:53:44,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:53:44,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:53:44,746.746 INFO    ] time= 05/06/2026 20:53:44
[2026-06-05 20:53:44,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:53:44,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:53:44,991.991 INFO    ] No existing commands found in stream
[2026-06-05 20:53:50,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:53:50,011.011 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-05 20:53:51,068.068 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:53:51,071.071 INFO    ] Checking for system updates...
[2026-06-05 20:53:51,107.107 INFO    ] 200
[2026-06-05 20:53:51,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:51,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:53:51,166.166 INFO    ] No update needed
[2026-06-05 20:53:51,168.168 INFO    ] Checking for camera pi updates...
[2026-06-05 20:53:51,202.202 INFO    ] 200
[2026-06-05 20:53:51,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:53:51,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:53:51,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:53:51,293.293 INFO    ] No camera update needed
[2026-06-05 20:53:51,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:53:51,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:53:51,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:53:51,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:53:53,350.350 INFO    ] ================================================
[2026-06-05 20:53:53,365.365 INFO    ] Launching Daemon at Fri Jun  5 20:53:53 IST 2026
[2026-06-05 20:53:53,376.376 INFO    ] ================================================
[2026-06-05 20:53:53,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:53:53
[2026-06-05 20:53:54,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:53:54,873.873 INFO    ] Initializing speech engine...
[2026-06-05 20:53:54,879.879 INFO    ] 2026-06-05 20:53:54
[2026-06-05 20:53:55,185.185 INFO    ] 2026-06-05 20:53:55
[2026-06-05 20:53:55,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:53:55,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:53:55,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:53:55,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:53:55,707.707 INFO    ] time= 05/06/2026 20:53:55
[2026-06-05 20:53:55,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:53:55,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:53:55,920.920 INFO    ] No existing commands found in stream
[2026-06-05 20:54:00,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:54:00,950.950 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 20:54:04,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:54:04,440.440 INFO    ] Checking for system updates...
[2026-06-05 20:54:04,477.477 INFO    ] 200
[2026-06-05 20:54:04,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:04,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:54:04,538.538 INFO    ] No update needed
[2026-06-05 20:54:04,541.541 INFO    ] Checking for camera pi updates...
[2026-06-05 20:54:04,575.575 INFO    ] 200
[2026-06-05 20:54:04,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:04,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:54:04,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:54:04,677.677 INFO    ] No camera update needed
[2026-06-05 20:54:04,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:54:04,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:54:04,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:54:04,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:54:06,733.733 INFO    ] ================================================
[2026-06-05 20:54:06,748.748 INFO    ] Launching Daemon at Fri Jun  5 20:54:06 IST 2026
[2026-06-05 20:54:06,758.758 INFO    ] ================================================
[2026-06-05 20:54:07,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:54:07
[2026-06-05 20:54:07,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:54:08,213.213 INFO    ] Initializing speech engine...
[2026-06-05 20:54:08,228.228 INFO    ] 2026-06-05 20:54:08
[2026-06-05 20:54:08,496.496 INFO    ] 2026-06-05 20:54:08
[2026-06-05 20:54:08,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:54:09,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:54:09,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:54:10,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:54:10,130.130 INFO    ] time= 05/06/2026 20:54:10
[2026-06-05 20:54:10,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:54:10,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:54:10,252.252 INFO    ] No existing commands found in stream
[2026-06-05 20:54:15,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:54:15,268.268 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-05 20:54:16,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 20:54:16,066.066 INFO    ] Checking for system updates...
[2026-06-05 20:54:16,107.107 INFO    ] 200
[2026-06-05 20:54:16,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:16,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:54:16,173.173 INFO    ] No update needed
[2026-06-05 20:54:16,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 20:54:16,210.210 INFO    ] 200
[2026-06-05 20:54:16,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:16,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:54:16,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:54:16,303.303 INFO    ] No camera update needed
[2026-06-05 20:54:16,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:54:16,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:54:16,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:54:16,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:54:18,358.358 INFO    ] ================================================
[2026-06-05 20:54:18,373.373 INFO    ] Launching Daemon at Fri Jun  5 20:54:18 IST 2026
[2026-06-05 20:54:18,384.384 INFO    ] ================================================
[2026-06-05 20:54:19,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:54:19
[2026-06-05 20:54:19,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:54:20,010.010 INFO    ] Initializing speech engine...
[2026-06-05 20:54:20,018.018 INFO    ] 2026-06-05 20:54:20
[2026-06-05 20:54:20,308.308 INFO    ] 2026-06-05 20:54:20
[2026-06-05 20:54:20,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:54:20,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:54:20,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:54:20,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:54:20,846.846 INFO    ] time= 05/06/2026 20:54:20
[2026-06-05 20:54:20,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:54:20,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:54:21,030.030 INFO    ] No existing commands found in stream
[2026-06-05 20:54:26,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:54:26,061.061 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 20:54:27,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:54:27,191.191 INFO    ] Checking for system updates...
[2026-06-05 20:54:27,229.229 INFO    ] 200
[2026-06-05 20:54:27,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:27,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:54:27,290.290 INFO    ] No update needed
[2026-06-05 20:54:27,292.292 INFO    ] Checking for camera pi updates...
[2026-06-05 20:54:27,327.327 INFO    ] 200
[2026-06-05 20:54:27,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:27,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:54:27,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:54:27,413.413 INFO    ] No camera update needed
[2026-06-05 20:54:27,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:54:27,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:54:27,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:54:27,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:54:29,470.470 INFO    ] ================================================
[2026-06-05 20:54:29,485.485 INFO    ] Launching Daemon at Fri Jun  5 20:54:29 IST 2026
[2026-06-05 20:54:29,496.496 INFO    ] ================================================
[2026-06-05 20:54:30,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:54:30
[2026-06-05 20:54:30,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:54:30,959.959 INFO    ] Initializing speech engine...
[2026-06-05 20:54:30,976.976 INFO    ] 2026-06-05 20:54:30
[2026-06-05 20:54:31,241.241 INFO    ] 2026-06-05 20:54:31
[2026-06-05 20:54:31,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:54:31,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:54:31,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:54:31,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:54:31,721.721 INFO    ] time= 05/06/2026 20:54:31
[2026-06-05 20:54:31,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:54:31,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:54:31,938.938 INFO    ] No existing commands found in stream
[2026-06-05 20:54:36,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:54:36,954.954 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 20:54:39,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:54:40,001.001 INFO    ] Checking for system updates...
[2026-06-05 20:54:40,037.037 INFO    ] 200
[2026-06-05 20:54:40,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:40,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:54:40,099.099 INFO    ] No update needed
[2026-06-05 20:54:40,101.101 INFO    ] Checking for camera pi updates...
[2026-06-05 20:54:40,135.135 INFO    ] 200
[2026-06-05 20:54:40,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:40,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:54:40,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:54:40,234.234 INFO    ] No camera update needed
[2026-06-05 20:54:40,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:54:40,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:54:40,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:54:40,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:54:42,297.297 INFO    ] ================================================
[2026-06-05 20:54:42,312.312 INFO    ] Launching Daemon at Fri Jun  5 20:54:42 IST 2026
[2026-06-05 20:54:42,324.324 INFO    ] ================================================
[2026-06-05 20:54:42,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:54:42
[2026-06-05 20:54:43,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:54:43,792.792 INFO    ] Initializing speech engine...
[2026-06-05 20:54:43,800.800 INFO    ] 2026-06-05 20:54:43
[2026-06-05 20:54:44,060.060 INFO    ] 2026-06-05 20:54:44
[2026-06-05 20:54:44,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:54:44,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:54:44,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:54:44,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:54:44,617.617 INFO    ] time= 05/06/2026 20:54:44
[2026-06-05 20:54:44,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:54:44,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:54:44,776.776 INFO    ] No existing commands found in stream
[2026-06-05 20:54:49,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:54:49,798.798 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 20:54:53,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:54:53,102.102 INFO    ] Checking for system updates...
[2026-06-05 20:54:53,143.143 INFO    ] 200
[2026-06-05 20:54:53,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:53,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:54:53,218.218 INFO    ] No update needed
[2026-06-05 20:54:53,220.220 INFO    ] Checking for camera pi updates...
[2026-06-05 20:54:53,254.254 INFO    ] 200
[2026-06-05 20:54:53,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:54:53,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:54:53,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:54:53,340.340 INFO    ] No camera update needed
[2026-06-05 20:54:53,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:54:53,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:54:53,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:54:53,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:54:55,397.397 INFO    ] ================================================
[2026-06-05 20:54:55,413.413 INFO    ] Launching Daemon at Fri Jun  5 20:54:55 IST 2026
[2026-06-05 20:54:55,424.424 INFO    ] ================================================
[2026-06-05 20:54:56,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:54:56
[2026-06-05 20:54:56,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:54:57,112.112 INFO    ] Initializing speech engine...
[2026-06-05 20:54:57,121.121 INFO    ] 2026-06-05 20:54:57
[2026-06-05 20:54:57,427.427 INFO    ] 2026-06-05 20:54:57
[2026-06-05 20:54:57,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:54:57,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:54:57,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:54:58,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:54:58,120.120 INFO    ] time= 05/06/2026 20:54:58
[2026-06-05 20:54:58,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:54:58,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:54:58,383.383 INFO    ] No existing commands found in stream
[2026-06-05 20:55:03,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:55:03,405.405 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 20:55:10,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:55:10,452.452 INFO    ] Checking for system updates...
[2026-06-05 20:55:10,495.495 INFO    ] 200
[2026-06-05 20:55:10,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:55:10,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:55:10,563.563 INFO    ] No update needed
[2026-06-05 20:55:10,566.566 INFO    ] Checking for camera pi updates...
[2026-06-05 20:55:10,605.605 INFO    ] 200
[2026-06-05 20:55:10,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:55:10,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:55:10,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:55:10,703.703 INFO    ] No camera update needed
[2026-06-05 20:55:10,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:55:10,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:55:10,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:55:10,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:55:12,763.763 INFO    ] ================================================
[2026-06-05 20:55:12,778.778 INFO    ] Launching Daemon at Fri Jun  5 20:55:12 IST 2026
[2026-06-05 20:55:12,789.789 INFO    ] ================================================
[2026-06-05 20:55:13,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:55:13
[2026-06-05 20:55:13,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:55:14,187.187 INFO    ] Initializing speech engine...
[2026-06-05 20:55:14,202.202 INFO    ] 2026-06-05 20:55:14
[2026-06-05 20:55:14,468.468 INFO    ] 2026-06-05 20:55:14
[2026-06-05 20:55:14,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:55:14,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:55:14,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:55:14,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:55:14,967.967 INFO    ] time= 05/06/2026 20:55:14
[2026-06-05 20:55:15,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:55:15,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:55:15,177.177 INFO    ] No existing commands found in stream
[2026-06-05 20:55:20,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:55:20,205.205 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 20:55:24,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:55:24,399.399 INFO    ] Checking for system updates...
[2026-06-05 20:55:24,434.434 INFO    ] 200
[2026-06-05 20:55:24,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:55:24,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:55:24,499.499 INFO    ] No update needed
[2026-06-05 20:55:24,501.501 INFO    ] Checking for camera pi updates...
[2026-06-05 20:55:24,535.535 INFO    ] 200
[2026-06-05 20:55:24,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:55:24,578.578 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:55:24,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:55:24,634.634 INFO    ] No camera update needed
[2026-06-05 20:55:24,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:55:24,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:55:24,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:55:24,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:55:26,690.690 INFO    ] ================================================
[2026-06-05 20:55:26,706.706 INFO    ] Launching Daemon at Fri Jun  5 20:55:26 IST 2026
[2026-06-05 20:55:26,717.717 INFO    ] ================================================
[2026-06-05 20:55:27,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:55:27
[2026-06-05 20:55:27,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:55:28,130.130 INFO    ] Initializing speech engine...
[2026-06-05 20:55:28,142.142 INFO    ] 2026-06-05 20:55:28
[2026-06-05 20:55:28,406.406 INFO    ] 2026-06-05 20:55:28
[2026-06-05 20:55:28,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:55:28,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:55:28,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:55:28,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:55:28,899.899 INFO    ] time= 05/06/2026 20:55:28
[2026-06-05 20:55:28,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:55:28,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:55:29,168.168 INFO    ] No existing commands found in stream
[2026-06-05 20:55:34,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:55:34,192.192 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-05 20:55:36,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:55:36,708.708 INFO    ] Checking for system updates...
[2026-06-05 20:55:36,749.749 INFO    ] 200
[2026-06-05 20:55:36,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:55:36,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:55:36,808.808 INFO    ] No update needed
[2026-06-05 20:55:36,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 20:55:36,844.844 INFO    ] 200
[2026-06-05 20:55:36,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:55:36,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:55:36,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:55:36,937.937 INFO    ] No camera update needed
[2026-06-05 20:55:36,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:55:36,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:55:36,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:55:36,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:55:38,992.992 INFO    ] ================================================
[2026-06-05 20:55:39,008.008 INFO    ] Launching Daemon at Fri Jun  5 20:55:39 IST 2026
[2026-06-05 20:55:39,019.019 INFO    ] ================================================
[2026-06-05 20:55:39,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:55:39
[2026-06-05 20:55:40,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:55:40,637.637 INFO    ] Initializing speech engine...
[2026-06-05 20:55:40,647.647 INFO    ] 2026-06-05 20:55:40
[2026-06-05 20:55:40,908.908 INFO    ] 2026-06-05 20:55:40
[2026-06-05 20:55:40,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:55:41,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:55:41,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:55:41,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:55:41,461.461 INFO    ] time= 05/06/2026 20:55:41
[2026-06-05 20:55:41,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:55:41,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:55:41,594.594 INFO    ] No existing commands found in stream
[2026-06-05 20:55:46,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:55:46,627.627 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 20:55:50,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:55:50,969.969 INFO    ] Checking for system updates...
[2026-06-05 20:55:51,005.005 INFO    ] 200
[2026-06-05 20:55:51,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:55:51,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:55:51,064.064 INFO    ] No update needed
[2026-06-05 20:55:51,066.066 INFO    ] Checking for camera pi updates...
[2026-06-05 20:55:51,101.101 INFO    ] 200
[2026-06-05 20:55:51,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:55:51,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:55:51,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:55:51,308.308 INFO    ] No camera update needed
[2026-06-05 20:55:51,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:55:51,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:55:51,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:55:51,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:55:53,364.364 INFO    ] ================================================
[2026-06-05 20:55:53,380.380 INFO    ] Launching Daemon at Fri Jun  5 20:55:53 IST 2026
[2026-06-05 20:55:53,392.392 INFO    ] ================================================
[2026-06-05 20:55:54,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:55:54
[2026-06-05 20:55:54,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:55:55,039.039 INFO    ] Initializing speech engine...
[2026-06-05 20:55:55,050.050 INFO    ] 2026-06-05 20:55:55
[2026-06-05 20:55:55,360.360 INFO    ] 2026-06-05 20:55:55
[2026-06-05 20:55:55,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:55:55,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:55:55,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:55:55,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:55:55,882.882 INFO    ] time= 05/06/2026 20:55:55
[2026-06-05 20:55:55,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:55:55,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:55:56,026.026 INFO    ] No existing commands found in stream
[2026-06-05 20:56:01,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:56:01,054.054 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 20:56:05,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 20:56:05,400.400 INFO    ] Checking for system updates...
[2026-06-05 20:56:05,442.442 INFO    ] 200
[2026-06-05 20:56:05,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:05,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:56:05,504.504 INFO    ] No update needed
[2026-06-05 20:56:05,507.507 INFO    ] Checking for camera pi updates...
[2026-06-05 20:56:05,542.542 INFO    ] 200
[2026-06-05 20:56:05,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:05,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:56:05,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:56:05,704.704 INFO    ] No camera update needed
[2026-06-05 20:56:05,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:56:05,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:56:05,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:56:05,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:56:07,766.766 INFO    ] ================================================
[2026-06-05 20:56:07,783.783 INFO    ] Launching Daemon at Fri Jun  5 20:56:07 IST 2026
[2026-06-05 20:56:07,794.794 INFO    ] ================================================
[2026-06-05 20:56:08,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:56:08
[2026-06-05 20:56:09,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:56:09,471.471 INFO    ] Initializing speech engine...
[2026-06-05 20:56:09,483.483 INFO    ] 2026-06-05 20:56:09
[2026-06-05 20:56:09,760.760 INFO    ] 2026-06-05 20:56:09
[2026-06-05 20:56:09,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:56:10,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:56:10,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:56:11,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:56:11,148.148 INFO    ] time= 05/06/2026 20:56:11
[2026-06-05 20:56:11,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:56:11,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:56:11,301.301 INFO    ] No existing commands found in stream
[2026-06-05 20:56:16,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:56:16,319.319 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 20:56:17,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:56:17,940.940 INFO    ] Checking for system updates...
[2026-06-05 20:56:17,978.978 INFO    ] 200
[2026-06-05 20:56:17,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:18,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:56:18,040.040 INFO    ] No update needed
[2026-06-05 20:56:18,043.043 INFO    ] Checking for camera pi updates...
[2026-06-05 20:56:18,078.078 INFO    ] 200
[2026-06-05 20:56:18,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:18,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:56:18,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:56:18,191.191 INFO    ] No camera update needed
[2026-06-05 20:56:18,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:56:18,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:56:18,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:56:18,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:56:20,250.250 INFO    ] ================================================
[2026-06-05 20:56:20,265.265 INFO    ] Launching Daemon at Fri Jun  5 20:56:20 IST 2026
[2026-06-05 20:56:20,276.276 INFO    ] ================================================
[2026-06-05 20:56:20,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:56:20
[2026-06-05 20:56:21,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:56:21,937.937 INFO    ] Initializing speech engine...
[2026-06-05 20:56:21,943.943 INFO    ] 2026-06-05 20:56:21
[2026-06-05 20:56:22,217.217 INFO    ] 2026-06-05 20:56:22
[2026-06-05 20:56:22,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:56:22,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:56:22,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:56:22,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:56:22,758.758 INFO    ] time= 05/06/2026 20:56:22
[2026-06-05 20:56:22,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:56:22,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:56:22,917.917 INFO    ] No existing commands found in stream
[2026-06-05 20:56:27,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:56:27,934.934 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 20:56:31,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:56:31,266.266 INFO    ] Checking for system updates...
[2026-06-05 20:56:31,307.307 INFO    ] 200
[2026-06-05 20:56:31,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:31,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:56:31,366.366 INFO    ] No update needed
[2026-06-05 20:56:31,373.373 INFO    ] Checking for camera pi updates...
[2026-06-05 20:56:31,407.407 INFO    ] 200
[2026-06-05 20:56:31,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:31,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:56:31,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:56:31,504.504 INFO    ] No camera update needed
[2026-06-05 20:56:31,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:56:31,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:56:31,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:56:31,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:56:33,571.571 INFO    ] ================================================
[2026-06-05 20:56:33,587.587 INFO    ] Launching Daemon at Fri Jun  5 20:56:33 IST 2026
[2026-06-05 20:56:33,598.598 INFO    ] ================================================
[2026-06-05 20:56:34,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:56:34
[2026-06-05 20:56:34,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:56:35,066.066 INFO    ] Initializing speech engine...
[2026-06-05 20:56:35,082.082 INFO    ] 2026-06-05 20:56:35
[2026-06-05 20:56:35,360.360 INFO    ] 2026-06-05 20:56:35
[2026-06-05 20:56:35,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:56:35,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:56:35,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:56:35,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:56:35,967.967 INFO    ] time= 05/06/2026 20:56:35
[2026-06-05 20:56:36,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:56:36,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:56:36,180.180 INFO    ] No existing commands found in stream
[2026-06-05 20:56:41,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:56:41,198.198 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 20:56:42,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:56:42,535.535 INFO    ] Checking for system updates...
[2026-06-05 20:56:42,572.572 INFO    ] 200
[2026-06-05 20:56:42,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:42,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:56:42,630.630 INFO    ] No update needed
[2026-06-05 20:56:42,632.632 INFO    ] Checking for camera pi updates...
[2026-06-05 20:56:42,667.667 INFO    ] 200
[2026-06-05 20:56:42,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:42,716.716 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:56:42,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:56:42,763.763 INFO    ] No camera update needed
[2026-06-05 20:56:42,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:56:42,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:56:42,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:56:42,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:56:44,819.819 INFO    ] ================================================
[2026-06-05 20:56:44,834.834 INFO    ] Launching Daemon at Fri Jun  5 20:56:44 IST 2026
[2026-06-05 20:56:44,845.845 INFO    ] ================================================
[2026-06-05 20:56:45,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:56:45
[2026-06-05 20:56:46,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:56:46,308.308 INFO    ] Initializing speech engine...
[2026-06-05 20:56:46,315.315 INFO    ] 2026-06-05 20:56:46
[2026-06-05 20:56:46,578.578 INFO    ] 2026-06-05 20:56:46
[2026-06-05 20:56:46,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:56:46,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:56:46,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:56:47,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:56:47,124.124 INFO    ] time= 05/06/2026 20:56:47
[2026-06-05 20:56:47,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:56:47,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:56:47,279.279 INFO    ] No existing commands found in stream
[2026-06-05 20:56:52,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:56:52,301.301 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 20:56:55,103.103 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:56:55,106.106 INFO    ] Checking for system updates...
[2026-06-05 20:56:55,142.142 INFO    ] 200
[2026-06-05 20:56:55,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:55,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:56:55,200.200 INFO    ] No update needed
[2026-06-05 20:56:55,203.203 INFO    ] Checking for camera pi updates...
[2026-06-05 20:56:55,237.237 INFO    ] 200
[2026-06-05 20:56:55,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:56:55,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:56:55,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:56:55,339.339 INFO    ] No camera update needed
[2026-06-05 20:56:55,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:56:55,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:56:55,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:56:55,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:56:57,397.397 INFO    ] ================================================
[2026-06-05 20:56:57,412.412 INFO    ] Launching Daemon at Fri Jun  5 20:56:57 IST 2026
[2026-06-05 20:56:57,423.423 INFO    ] ================================================
[2026-06-05 20:56:57,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:56:57
[2026-06-05 20:56:58,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:56:58,828.828 INFO    ] Initializing speech engine...
[2026-06-05 20:56:58,844.844 INFO    ] 2026-06-05 20:56:58
[2026-06-05 20:56:59,095.095 INFO    ] 2026-06-05 20:56:59
[2026-06-05 20:56:59,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:56:59,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:56:59,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:56:59,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:56:59,649.649 INFO    ] time= 05/06/2026 20:56:59
[2026-06-05 20:56:59,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:56:59,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:56:59,806.806 INFO    ] No existing commands found in stream
[2026-06-05 20:57:04,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:57:04,830.830 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-05 20:57:11,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:57:11,023.023 INFO    ] Checking for system updates...
[2026-06-05 20:57:11,059.059 INFO    ] 200
[2026-06-05 20:57:11,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:57:11,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:57:11,116.116 INFO    ] No update needed
[2026-06-05 20:57:11,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 20:57:11,152.152 INFO    ] 200
[2026-06-05 20:57:11,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:57:11,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:57:11,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:57:11,231.231 INFO    ] No camera update needed
[2026-06-05 20:57:11,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:57:11,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:57:11,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:57:11,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:57:13,286.286 INFO    ] ================================================
[2026-06-05 20:57:13,301.301 INFO    ] Launching Daemon at Fri Jun  5 20:57:13 IST 2026
[2026-06-05 20:57:13,312.312 INFO    ] ================================================
[2026-06-05 20:57:13,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:57:13
[2026-06-05 20:57:14,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:57:14,952.952 INFO    ] Initializing speech engine...
[2026-06-05 20:57:14,965.965 INFO    ] 2026-06-05 20:57:14
[2026-06-05 20:57:15,275.275 INFO    ] 2026-06-05 20:57:15
[2026-06-05 20:57:15,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:57:15,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:57:15,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:57:15,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:57:15,794.794 INFO    ] time= 05/06/2026 20:57:15
[2026-06-05 20:57:15,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:57:15,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:57:15,952.952 INFO    ] No existing commands found in stream
[2026-06-05 20:57:20,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:57:20,971.971 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-05 20:57:24,540.540 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:57:24,543.543 INFO    ] Checking for system updates...
[2026-06-05 20:57:24,580.580 INFO    ] 200
[2026-06-05 20:57:24,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:57:24,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:57:24,637.637 INFO    ] No update needed
[2026-06-05 20:57:24,640.640 INFO    ] Checking for camera pi updates...
[2026-06-05 20:57:24,677.677 INFO    ] 200
[2026-06-05 20:57:24,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:57:24,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:57:24,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:57:24,777.777 INFO    ] No camera update needed
[2026-06-05 20:57:24,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:57:24,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:57:24,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:57:24,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:57:26,831.831 INFO    ] ================================================
[2026-06-05 20:57:26,846.846 INFO    ] Launching Daemon at Fri Jun  5 20:57:26 IST 2026
[2026-06-05 20:57:26,856.856 INFO    ] ================================================
[2026-06-05 20:57:27,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:57:27
[2026-06-05 20:57:28,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:57:28,354.354 INFO    ] Initializing speech engine...
[2026-06-05 20:57:28,363.363 INFO    ] 2026-06-05 20:57:28
[2026-06-05 20:57:28,622.622 INFO    ] 2026-06-05 20:57:28
[2026-06-05 20:57:28,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:57:28,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:57:28,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:57:29,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:57:29,168.168 INFO    ] time= 05/06/2026 20:57:29
[2026-06-05 20:57:29,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:57:29,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:57:29,323.323 INFO    ] No existing commands found in stream
[2026-06-05 20:57:34,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:57:34,338.338 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 20:57:36,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:57:36,700.700 INFO    ] Checking for system updates...
[2026-06-05 20:57:36,737.737 INFO    ] 200
[2026-06-05 20:57:36,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:57:36,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:57:36,802.802 INFO    ] No update needed
[2026-06-05 20:57:36,805.805 INFO    ] Checking for camera pi updates...
[2026-06-05 20:57:36,840.840 INFO    ] 200
[2026-06-05 20:57:36,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:57:36,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:57:36,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:57:36,951.951 INFO    ] No camera update needed
[2026-06-05 20:57:36,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:57:36,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:57:36,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:57:36,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:57:39,010.010 INFO    ] ================================================
[2026-06-05 20:57:39,025.025 INFO    ] Launching Daemon at Fri Jun  5 20:57:39 IST 2026
[2026-06-05 20:57:39,036.036 INFO    ] ================================================
[2026-06-05 20:57:39,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:57:39
[2026-06-05 20:57:40,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:57:40,499.499 INFO    ] Initializing speech engine...
[2026-06-05 20:57:40,506.506 INFO    ] 2026-06-05 20:57:40
[2026-06-05 20:57:40,768.768 INFO    ] 2026-06-05 20:57:40
[2026-06-05 20:57:40,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:57:41,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:57:41,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:57:41,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:57:41,752.752 INFO    ] time= 05/06/2026 20:57:41
[2026-06-05 20:57:41,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:57:41,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:57:41,944.944 INFO    ] No existing commands found in stream
[2026-06-05 20:57:46,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:57:46,957.957 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 20:57:48,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:57:48,160.160 INFO    ] Checking for system updates...
[2026-06-05 20:57:48,199.199 INFO    ] 200
[2026-06-05 20:57:48,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:57:48,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:57:48,271.271 INFO    ] No update needed
[2026-06-05 20:57:48,273.273 INFO    ] Checking for camera pi updates...
[2026-06-05 20:57:48,307.307 INFO    ] 200
[2026-06-05 20:57:48,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:57:48,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:57:48,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:57:48,409.409 INFO    ] No camera update needed
[2026-06-05 20:57:48,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:57:48,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:57:48,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:57:48,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:57:50,463.463 INFO    ] ================================================
[2026-06-05 20:57:50,478.478 INFO    ] Launching Daemon at Fri Jun  5 20:57:50 IST 2026
[2026-06-05 20:57:50,488.488 INFO    ] ================================================
[2026-06-05 20:57:51,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:57:51
[2026-06-05 20:57:51,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:57:51,891.891 INFO    ] Initializing speech engine...
[2026-06-05 20:57:51,906.906 INFO    ] 2026-06-05 20:57:51
[2026-06-05 20:57:52,171.171 INFO    ] 2026-06-05 20:57:52
[2026-06-05 20:57:52,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:57:52,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:57:52,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:57:52,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:57:52,607.607 INFO    ] time= 05/06/2026 20:57:52
[2026-06-05 20:57:52,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:57:52,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:57:52,812.812 INFO    ] No existing commands found in stream
[2026-06-05 20:57:57,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:57:57,828.828 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 20:58:00,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:58:00,490.490 INFO    ] Checking for system updates...
[2026-06-05 20:58:00,528.528 INFO    ] 200
[2026-06-05 20:58:00,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:00,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:58:00,594.594 INFO    ] No update needed
[2026-06-05 20:58:00,597.597 INFO    ] Checking for camera pi updates...
[2026-06-05 20:58:00,635.635 INFO    ] 200
[2026-06-05 20:58:00,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:00,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:58:00,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:58:00,841.841 INFO    ] No camera update needed
[2026-06-05 20:58:00,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:58:00,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:58:00,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:58:00,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:58:02,903.903 INFO    ] ================================================
[2026-06-05 20:58:02,920.920 INFO    ] Launching Daemon at Fri Jun  5 20:58:02 IST 2026
[2026-06-05 20:58:02,931.931 INFO    ] ================================================
[2026-06-05 20:58:03,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:58:03
[2026-06-05 20:58:04,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:58:04,393.393 INFO    ] Initializing speech engine...
[2026-06-05 20:58:04,403.403 INFO    ] 2026-06-05 20:58:04
[2026-06-05 20:58:04,659.659 INFO    ] 2026-06-05 20:58:04
[2026-06-05 20:58:04,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:58:04,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:58:04,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:58:05,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:58:05,249.249 INFO    ] time= 05/06/2026 20:58:05
[2026-06-05 20:58:05,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:58:05,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:58:05,428.428 INFO    ] No existing commands found in stream
[2026-06-05 20:58:10,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:58:10,447.447 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 20:58:11,856.856 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:58:11,858.858 INFO    ] Checking for system updates...
[2026-06-05 20:58:11,898.898 INFO    ] 200
[2026-06-05 20:58:11,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:11,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:58:11,956.956 INFO    ] No update needed
[2026-06-05 20:58:11,959.959 INFO    ] Checking for camera pi updates...
[2026-06-05 20:58:11,993.993 INFO    ] 200
[2026-06-05 20:58:11,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:12,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:58:12,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:58:12,091.091 INFO    ] No camera update needed
[2026-06-05 20:58:12,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:58:12,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:58:12,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:58:12,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:58:14,149.149 INFO    ] ================================================
[2026-06-05 20:58:14,164.164 INFO    ] Launching Daemon at Fri Jun  5 20:58:14 IST 2026
[2026-06-05 20:58:14,178.178 INFO    ] ================================================
[2026-06-05 20:58:14,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:58:14
[2026-06-05 20:58:15,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:58:15,668.668 INFO    ] Initializing speech engine...
[2026-06-05 20:58:15,675.675 INFO    ] 2026-06-05 20:58:15
[2026-06-05 20:58:15,963.963 INFO    ] 2026-06-05 20:58:15
[2026-06-05 20:58:16,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:58:16,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:58:16,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:58:16,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:58:16,523.523 INFO    ] time= 05/06/2026 20:58:16
[2026-06-05 20:58:16,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:58:16,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:58:16,670.670 INFO    ] No existing commands found in stream
[2026-06-05 20:58:21,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:58:21,690.690 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 20:58:23,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:58:23,375.375 INFO    ] Checking for system updates...
[2026-06-05 20:58:23,416.416 INFO    ] 200
[2026-06-05 20:58:23,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:23,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:58:23,482.482 INFO    ] No update needed
[2026-06-05 20:58:23,485.485 INFO    ] Checking for camera pi updates...
[2026-06-05 20:58:23,523.523 INFO    ] 200
[2026-06-05 20:58:23,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:23,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:58:23,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:58:23,622.622 INFO    ] No camera update needed
[2026-06-05 20:58:23,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:58:23,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:58:23,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:58:23,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:58:25,679.679 INFO    ] ================================================
[2026-06-05 20:58:25,694.694 INFO    ] Launching Daemon at Fri Jun  5 20:58:25 IST 2026
[2026-06-05 20:58:25,705.705 INFO    ] ================================================
[2026-06-05 20:58:26,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:58:26
[2026-06-05 20:58:26,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:58:27,102.102 INFO    ] Initializing speech engine...
[2026-06-05 20:58:27,110.110 INFO    ] 2026-06-05 20:58:27
[2026-06-05 20:58:27,379.379 INFO    ] 2026-06-05 20:58:27
[2026-06-05 20:58:27,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:58:27,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:58:27,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:58:27,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:58:27,943.943 INFO    ] time= 05/06/2026 20:58:27
[2026-06-05 20:58:27,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:58:27,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:58:28,109.109 INFO    ] No existing commands found in stream
[2026-06-05 20:58:33,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:58:33,142.142 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 20:58:35,758.758 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:58:35,761.761 INFO    ] Checking for system updates...
[2026-06-05 20:58:35,797.797 INFO    ] 200
[2026-06-05 20:58:35,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:35,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:58:35,863.863 INFO    ] No update needed
[2026-06-05 20:58:35,866.866 INFO    ] Checking for camera pi updates...
[2026-06-05 20:58:35,902.902 INFO    ] 200
[2026-06-05 20:58:35,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:35,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:58:35,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:58:35,997.997 INFO    ] No camera update needed
[2026-06-05 20:58:35,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:58:36,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:58:36,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:58:36,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:58:38,056.056 INFO    ] ================================================
[2026-06-05 20:58:38,071.071 INFO    ] Launching Daemon at Fri Jun  5 20:58:38 IST 2026
[2026-06-05 20:58:38,082.082 INFO    ] ================================================
[2026-06-05 20:58:38,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:58:38
[2026-06-05 20:58:39,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:58:39,682.682 INFO    ] Initializing speech engine...
[2026-06-05 20:58:39,691.691 INFO    ] 2026-06-05 20:58:39
[2026-06-05 20:58:39,949.949 INFO    ] 2026-06-05 20:58:39
[2026-06-05 20:58:39,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:58:41,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:58:41,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:58:42,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:58:42,534.534 INFO    ] time= 05/06/2026 20:58:42
[2026-06-05 20:58:42,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:58:42,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:58:42,682.682 INFO    ] No existing commands found in stream
[2026-06-05 20:58:47,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:58:47,717.717 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 20:58:50,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:58:50,015.015 INFO    ] Checking for system updates...
[2026-06-05 20:58:50,051.051 INFO    ] 200
[2026-06-05 20:58:50,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:50,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:58:50,116.116 INFO    ] No update needed
[2026-06-05 20:58:50,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 20:58:50,152.152 INFO    ] 200
[2026-06-05 20:58:50,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:58:50,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:58:50,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:58:50,247.247 INFO    ] No camera update needed
[2026-06-05 20:58:50,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:58:50,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:58:50,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:58:50,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:58:52,306.306 INFO    ] ================================================
[2026-06-05 20:58:52,321.321 INFO    ] Launching Daemon at Fri Jun  5 20:58:52 IST 2026
[2026-06-05 20:58:52,332.332 INFO    ] ================================================
[2026-06-05 20:58:52,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:58:52
[2026-06-05 20:58:53,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:58:53,852.852 INFO    ] Initializing speech engine...
[2026-06-05 20:58:53,864.864 INFO    ] 2026-06-05 20:58:53
[2026-06-05 20:58:54,159.159 INFO    ] 2026-06-05 20:58:54
[2026-06-05 20:58:54,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:58:54,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:58:54,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:58:54,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:58:54,665.665 INFO    ] time= 05/06/2026 20:58:54
[2026-06-05 20:58:54,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:58:54,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:58:54,857.857 INFO    ] No existing commands found in stream
[2026-06-05 20:58:59,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:58:59,896.896 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 20:59:03,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 20:59:03,416.416 INFO    ] Checking for system updates...
[2026-06-05 20:59:03,452.452 INFO    ] 200
[2026-06-05 20:59:03,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:03,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:59:03,514.514 INFO    ] No update needed
[2026-06-05 20:59:03,517.517 INFO    ] Checking for camera pi updates...
[2026-06-05 20:59:03,551.551 INFO    ] 200
[2026-06-05 20:59:03,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:03,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:59:03,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:59:03,645.645 INFO    ] No camera update needed
[2026-06-05 20:59:03,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:59:03,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:59:03,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:59:03,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:59:05,700.700 INFO    ] ================================================
[2026-06-05 20:59:05,716.716 INFO    ] Launching Daemon at Fri Jun  5 20:59:05 IST 2026
[2026-06-05 20:59:05,730.730 INFO    ] ================================================
[2026-06-05 20:59:06,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:59:06
[2026-06-05 20:59:06,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:59:07,194.194 INFO    ] Initializing speech engine...
[2026-06-05 20:59:07,200.200 INFO    ] 2026-06-05 20:59:07
[2026-06-05 20:59:07,447.447 INFO    ] 2026-06-05 20:59:07
[2026-06-05 20:59:07,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:59:07,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:59:07,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:59:07,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:59:08,016.016 INFO    ] time= 05/06/2026 20:59:08
[2026-06-05 20:59:08,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:59:08,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:59:08,165.165 INFO    ] No existing commands found in stream
[2026-06-05 20:59:13,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:59:13,192.192 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 20:59:16,793.793 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 20:59:16,797.797 INFO    ] Checking for system updates...
[2026-06-05 20:59:16,836.836 INFO    ] 200
[2026-06-05 20:59:16,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:16,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:59:16,899.899 INFO    ] No update needed
[2026-06-05 20:59:16,902.902 INFO    ] Checking for camera pi updates...
[2026-06-05 20:59:16,937.937 INFO    ] 200
[2026-06-05 20:59:16,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:16,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:59:17,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:59:17,033.033 INFO    ] No camera update needed
[2026-06-05 20:59:17,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:59:17,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:59:17,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:59:17,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:59:19,096.096 INFO    ] ================================================
[2026-06-05 20:59:19,110.110 INFO    ] Launching Daemon at Fri Jun  5 20:59:19 IST 2026
[2026-06-05 20:59:19,121.121 INFO    ] ================================================
[2026-06-05 20:59:19,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:59:19
[2026-06-05 20:59:20,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:59:20,558.558 INFO    ] Initializing speech engine...
[2026-06-05 20:59:20,581.581 INFO    ] 2026-06-05 20:59:20
[2026-06-05 20:59:20,836.836 INFO    ] 2026-06-05 20:59:20
[2026-06-05 20:59:20,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:59:21,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:59:21,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:59:21,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:59:21,316.316 INFO    ] time= 05/06/2026 20:59:21
[2026-06-05 20:59:21,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:59:21,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:59:21,547.547 INFO    ] No existing commands found in stream
[2026-06-05 20:59:26,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:59:26,575.575 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 20:59:30,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:59:30,989.989 INFO    ] Checking for system updates...
[2026-06-05 20:59:31,029.029 INFO    ] 200
[2026-06-05 20:59:31,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:31,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:59:31,086.086 INFO    ] No update needed
[2026-06-05 20:59:31,088.088 INFO    ] Checking for camera pi updates...
[2026-06-05 20:59:31,122.122 INFO    ] 200
[2026-06-05 20:59:31,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:31,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:59:31,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 20:59:31,223.223 INFO    ] No camera update needed
[2026-06-05 20:59:31,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:59:31,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:59:31,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:59:31,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:59:33,281.281 INFO    ] ================================================
[2026-06-05 20:59:33,295.295 INFO    ] Launching Daemon at Fri Jun  5 20:59:33 IST 2026
[2026-06-05 20:59:33,306.306 INFO    ] ================================================
[2026-06-05 20:59:33,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:59:33
[2026-06-05 20:59:34,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:59:34,731.731 INFO    ] Initializing speech engine...
[2026-06-05 20:59:34,740.740 INFO    ] 2026-06-05 20:59:34
[2026-06-05 20:59:35,000.000 INFO    ] 2026-06-05 20:59:34
[2026-06-05 20:59:35,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:59:35,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:59:35,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:59:35,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:59:35,971.971 INFO    ] time= 05/06/2026 20:59:35
[2026-06-05 20:59:35,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:59:35,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:59:36,098.098 INFO    ] No existing commands found in stream
[2026-06-05 20:59:41,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:59:41,116.116 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 20:59:44,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 20:59:44,419.419 INFO    ] Checking for system updates...
[2026-06-05 20:59:44,454.454 INFO    ] 200
[2026-06-05 20:59:44,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:44,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:59:44,518.518 INFO    ] No update needed
[2026-06-05 20:59:44,520.520 INFO    ] Checking for camera pi updates...
[2026-06-05 20:59:44,558.558 INFO    ] 200
[2026-06-05 20:59:44,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:44,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:59:44,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:59:44,650.650 INFO    ] No camera update needed
[2026-06-05 20:59:44,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:59:44,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:59:44,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:59:44,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:59:46,704.704 INFO    ] ================================================
[2026-06-05 20:59:46,719.719 INFO    ] Launching Daemon at Fri Jun  5 20:59:46 IST 2026
[2026-06-05 20:59:46,730.730 INFO    ] ================================================
[2026-06-05 20:59:47,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:59:47
[2026-06-05 20:59:48,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:59:48,322.322 INFO    ] Initializing speech engine...
[2026-06-05 20:59:48,330.330 INFO    ] 2026-06-05 20:59:48
[2026-06-05 20:59:48,612.612 INFO    ] 2026-06-05 20:59:48
[2026-06-05 20:59:48,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 20:59:49,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 20:59:49,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 20:59:49,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 20:59:49,330.330 INFO    ] time= 05/06/2026 20:59:49
[2026-06-05 20:59:49,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 20:59:49,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 20:59:49,577.577 INFO    ] No existing commands found in stream
[2026-06-05 20:59:54,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 20:59:54,605.605 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 20:59:56,204.204 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 20:59:56,207.207 INFO    ] Checking for system updates...
[2026-06-05 20:59:56,244.244 INFO    ] 200
[2026-06-05 20:59:56,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:56,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:59:56,303.303 INFO    ] No update needed
[2026-06-05 20:59:56,306.306 INFO    ] Checking for camera pi updates...
[2026-06-05 20:59:56,340.340 INFO    ] 200
[2026-06-05 20:59:56,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 20:59:56,383.383 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 20:59:56,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 20:59:56,437.437 INFO    ] No camera update needed
[2026-06-05 20:59:56,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 20:59:56,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 20:59:56,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 20:59:56,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 20:59:58,492.492 INFO    ] ================================================
[2026-06-05 20:59:58,507.507 INFO    ] Launching Daemon at Fri Jun  5 20:59:58 IST 2026
[2026-06-05 20:59:58,517.517 INFO    ] ================================================
[2026-06-05 20:59:59,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 20:59:59
[2026-06-05 20:59:59,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 20:59:59,917.917 INFO    ] Initializing speech engine...
[2026-06-05 20:59:59,940.940 INFO    ] 2026-06-05 20:59:59
[2026-06-05 21:00:00,192.192 INFO    ] 2026-06-05 21:00:00
[2026-06-05 21:00:00,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:00:00,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:00:00,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:00:00,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:00:00,656.656 INFO    ] time= 05/06/2026 21:00:00
[2026-06-05 21:00:00,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:00:00,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:00:00,885.885 INFO    ] No existing commands found in stream
[2026-06-05 21:00:05,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:00:05,959.959 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 21:00:09,435.435 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:00:09,439.439 INFO    ] Checking for system updates...
[2026-06-05 21:00:09,489.489 INFO    ] 200
[2026-06-05 21:00:09,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:00:09,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:00:09,554.554 INFO    ] No update needed
[2026-06-05 21:00:09,557.557 INFO    ] Checking for camera pi updates...
[2026-06-05 21:00:09,594.594 INFO    ] 200
[2026-06-05 21:00:09,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:00:09,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:00:09,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:00:09,686.686 INFO    ] No camera update needed
[2026-06-05 21:00:09,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:00:09,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:00:09,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:00:09,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:00:11,745.745 INFO    ] ================================================
[2026-06-05 21:00:11,760.760 INFO    ] Launching Daemon at Fri Jun  5 21:00:11 IST 2026
[2026-06-05 21:00:11,771.771 INFO    ] ================================================
[2026-06-05 21:00:12,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:00:12
[2026-06-05 21:00:13,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:00:13,420.420 INFO    ] Initializing speech engine...
[2026-06-05 21:00:13,432.432 INFO    ] 2026-06-05 21:00:13
[2026-06-05 21:00:13,742.742 INFO    ] 2026-06-05 21:00:13
[2026-06-05 21:00:13,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:00:14,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:00:14,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:00:14,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:00:14,903.903 INFO    ] time= 05/06/2026 21:00:14
[2026-06-05 21:00:14,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:00:14,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:00:15,035.035 INFO    ] No existing commands found in stream
[2026-06-05 21:00:20,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:00:20,068.068 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-05 21:00:22,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:00:22,428.428 INFO    ] Checking for system updates...
[2026-06-05 21:00:22,468.468 INFO    ] 200
[2026-06-05 21:00:22,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:00:22,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:00:22,529.529 INFO    ] No update needed
[2026-06-05 21:00:22,532.532 INFO    ] Checking for camera pi updates...
[2026-06-05 21:00:22,567.567 INFO    ] 200
[2026-06-05 21:00:22,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:00:22,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:00:22,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:00:22,662.662 INFO    ] No camera update needed
[2026-06-05 21:00:22,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:00:22,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:00:22,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:00:22,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:00:24,721.721 INFO    ] ================================================
[2026-06-05 21:00:24,736.736 INFO    ] Launching Daemon at Fri Jun  5 21:00:24 IST 2026
[2026-06-05 21:00:24,747.747 INFO    ] ================================================
[2026-06-05 21:00:25,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:00:25
[2026-06-05 21:00:25,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:00:26,177.177 INFO    ] Initializing speech engine...
[2026-06-05 21:00:26,186.186 INFO    ] 2026-06-05 21:00:26
[2026-06-05 21:00:26,431.431 INFO    ] 2026-06-05 21:00:26
[2026-06-05 21:00:26,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:00:26,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:00:26,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:00:26,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:00:26,912.912 INFO    ] time= 05/06/2026 21:00:26
[2026-06-05 21:00:26,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:00:27,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:00:27,145.145 INFO    ] No existing commands found in stream
[2026-06-05 21:00:32,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:00:32,168.168 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 21:00:34,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:00:34,825.825 INFO    ] Checking for system updates...
[2026-06-05 21:00:34,865.865 INFO    ] 200
[2026-06-05 21:00:34,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:00:34,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:00:34,938.938 INFO    ] No update needed
[2026-06-05 21:00:34,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 21:00:34,976.976 INFO    ] 200
[2026-06-05 21:00:34,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:00:35,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:00:35,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:00:35,067.067 INFO    ] No camera update needed
[2026-06-05 21:00:35,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:00:35,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:00:35,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:00:35,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:00:37,123.123 INFO    ] ================================================
[2026-06-05 21:00:37,139.139 INFO    ] Launching Daemon at Fri Jun  5 21:00:37 IST 2026
[2026-06-05 21:00:37,149.149 INFO    ] ================================================
[2026-06-05 21:00:37,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:00:37
[2026-06-05 21:00:38,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:00:38,566.566 INFO    ] Initializing speech engine...
[2026-06-05 21:00:38,596.596 INFO    ] 2026-06-05 21:00:38
[2026-06-05 21:00:38,866.866 INFO    ] 2026-06-05 21:00:38
[2026-06-05 21:00:38,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:00:39,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:00:39,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:00:39,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:00:39,363.363 INFO    ] time= 05/06/2026 21:00:39
[2026-06-05 21:00:39,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:00:39,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:00:39,568.568 INFO    ] No existing commands found in stream
[2026-06-05 21:00:44,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:00:44,580.580 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 21:00:48,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:00:48,421.421 INFO    ] Checking for system updates...
[2026-06-05 21:00:48,458.458 INFO    ] 200
[2026-06-05 21:00:48,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:00:48,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:00:48,516.516 INFO    ] No update needed
[2026-06-05 21:00:48,519.519 INFO    ] Checking for camera pi updates...
[2026-06-05 21:00:48,557.557 INFO    ] 200
[2026-06-05 21:00:48,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:00:48,605.605 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:00:48,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:00:48,646.646 INFO    ] No camera update needed
[2026-06-05 21:00:48,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:00:48,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:00:48,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:00:48,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:00:50,703.703 INFO    ] ================================================
[2026-06-05 21:00:50,719.719 INFO    ] Launching Daemon at Fri Jun  5 21:00:50 IST 2026
[2026-06-05 21:00:50,729.729 INFO    ] ================================================
[2026-06-05 21:00:51,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:00:51
[2026-06-05 21:00:52,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:00:52,369.369 INFO    ] Initializing speech engine...
[2026-06-05 21:00:52,382.382 INFO    ] 2026-06-05 21:00:52
[2026-06-05 21:00:52,697.697 INFO    ] 2026-06-05 21:00:52
[2026-06-05 21:00:52,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:00:53,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:00:53,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:00:53,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:00:53,278.278 INFO    ] time= 05/06/2026 21:00:53
[2026-06-05 21:00:53,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:00:53,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:00:53,504.504 INFO    ] No existing commands found in stream
[2026-06-05 21:00:58,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:00:58,544.544 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 21:01:02,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:01:02,919.919 INFO    ] Checking for system updates...
[2026-06-05 21:01:02,972.972 INFO    ] 200
[2026-06-05 21:01:02,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:03,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:01:03,041.041 INFO    ] No update needed
[2026-06-05 21:01:03,044.044 INFO    ] Checking for camera pi updates...
[2026-06-05 21:01:03,087.087 INFO    ] 200
[2026-06-05 21:01:03,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:03,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:01:03,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:01:03,195.195 INFO    ] No camera update needed
[2026-06-05 21:01:03,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:01:03,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:01:03,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:01:03,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:01:05,260.260 INFO    ] ================================================
[2026-06-05 21:01:05,276.276 INFO    ] Launching Daemon at Fri Jun  5 21:01:05 IST 2026
[2026-06-05 21:01:05,286.286 INFO    ] ================================================
[2026-06-05 21:01:05,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:01:05
[2026-06-05 21:01:06,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:01:06,794.794 INFO    ] Initializing speech engine...
[2026-06-05 21:01:06,806.806 INFO    ] 2026-06-05 21:01:06
[2026-06-05 21:01:07,086.086 INFO    ] 2026-06-05 21:01:07
[2026-06-05 21:01:07,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:01:07,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:01:07,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:01:07,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:01:07,593.593 INFO    ] time= 05/06/2026 21:01:07
[2026-06-05 21:01:07,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:01:07,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:01:07,769.769 INFO    ] No existing commands found in stream
[2026-06-05 21:01:12,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:01:12,794.794 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 21:01:14,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:01:14,841.841 INFO    ] Checking for system updates...
[2026-06-05 21:01:14,882.882 INFO    ] 200
[2026-06-05 21:01:14,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:14,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:01:14,944.944 INFO    ] No update needed
[2026-06-05 21:01:14,946.946 INFO    ] Checking for camera pi updates...
[2026-06-05 21:01:14,982.982 INFO    ] 200
[2026-06-05 21:01:14,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:15,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:01:15,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:01:15,077.077 INFO    ] No camera update needed
[2026-06-05 21:01:15,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:01:15,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:01:15,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:01:15,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:01:17,146.146 INFO    ] ================================================
[2026-06-05 21:01:17,166.166 INFO    ] Launching Daemon at Fri Jun  5 21:01:17 IST 2026
[2026-06-05 21:01:17,177.177 INFO    ] ================================================
[2026-06-05 21:01:17,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:01:17
[2026-06-05 21:01:18,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:01:18,801.801 INFO    ] Initializing speech engine...
[2026-06-05 21:01:18,811.811 INFO    ] 2026-06-05 21:01:18
[2026-06-05 21:01:19,093.093 INFO    ] 2026-06-05 21:01:19
[2026-06-05 21:01:19,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:01:19,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:01:19,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:01:19,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:01:19,634.634 INFO    ] time= 05/06/2026 21:01:19
[2026-06-05 21:01:19,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:01:19,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:01:19,806.806 INFO    ] No existing commands found in stream
[2026-06-05 21:01:24,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:01:24,836.836 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 21:01:27,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:01:27,589.589 INFO    ] Checking for system updates...
[2026-06-05 21:01:27,626.626 INFO    ] 200
[2026-06-05 21:01:27,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:27,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:01:27,691.691 INFO    ] No update needed
[2026-06-05 21:01:27,694.694 INFO    ] Checking for camera pi updates...
[2026-06-05 21:01:27,731.731 INFO    ] 200
[2026-06-05 21:01:27,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:27,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:01:27,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:01:27,824.824 INFO    ] No camera update needed
[2026-06-05 21:01:27,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:01:27,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:01:27,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:01:27,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:01:29,883.883 INFO    ] ================================================
[2026-06-05 21:01:29,898.898 INFO    ] Launching Daemon at Fri Jun  5 21:01:29 IST 2026
[2026-06-05 21:01:29,909.909 INFO    ] ================================================
[2026-06-05 21:01:30,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:01:30
[2026-06-05 21:01:31,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:01:31,332.332 INFO    ] Initializing speech engine...
[2026-06-05 21:01:31,348.348 INFO    ] 2026-06-05 21:01:31
[2026-06-05 21:01:31,636.636 INFO    ] 2026-06-05 21:01:31
[2026-06-05 21:01:31,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:01:31,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:01:31,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:01:32,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:01:32,246.246 INFO    ] time= 05/06/2026 21:01:32
[2026-06-05 21:01:32,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:01:32,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:01:32,401.401 INFO    ] No existing commands found in stream
[2026-06-05 21:01:37,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:01:37,423.423 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-05 21:01:41,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:01:41,175.175 INFO    ] Checking for system updates...
[2026-06-05 21:01:41,211.211 INFO    ] 200
[2026-06-05 21:01:41,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:41,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:01:41,275.275 INFO    ] No update needed
[2026-06-05 21:01:41,277.277 INFO    ] Checking for camera pi updates...
[2026-06-05 21:01:41,311.311 INFO    ] 200
[2026-06-05 21:01:41,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:41,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:01:41,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:01:41,402.402 INFO    ] No camera update needed
[2026-06-05 21:01:41,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:01:41,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:01:41,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:01:41,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:01:43,459.459 INFO    ] ================================================
[2026-06-05 21:01:43,474.474 INFO    ] Launching Daemon at Fri Jun  5 21:01:43 IST 2026
[2026-06-05 21:01:43,484.484 INFO    ] ================================================
[2026-06-05 21:01:44,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:01:44
[2026-06-05 21:01:44,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:01:44,965.965 INFO    ] Initializing speech engine...
[2026-06-05 21:01:44,975.975 INFO    ] 2026-06-05 21:01:44
[2026-06-05 21:01:45,260.260 INFO    ] 2026-06-05 21:01:45
[2026-06-05 21:01:45,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:01:45,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:01:45,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:01:45,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:01:45,767.767 INFO    ] time= 05/06/2026 21:01:45
[2026-06-05 21:01:45,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:01:45,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:01:45,957.957 INFO    ] No existing commands found in stream
[2026-06-05 21:01:50,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:01:50,987.987 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 21:01:54,728.728 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:01:54,731.731 INFO    ] Checking for system updates...
[2026-06-05 21:01:54,771.771 INFO    ] 200
[2026-06-05 21:01:54,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:54,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:01:54,838.838 INFO    ] No update needed
[2026-06-05 21:01:54,840.840 INFO    ] Checking for camera pi updates...
[2026-06-05 21:01:54,878.878 INFO    ] 200
[2026-06-05 21:01:54,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:01:54,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:01:54,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:01:54,990.990 INFO    ] No camera update needed
[2026-06-05 21:01:54,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:01:54,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:01:55,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:01:55,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:01:57,047.047 INFO    ] ================================================
[2026-06-05 21:01:57,062.062 INFO    ] Launching Daemon at Fri Jun  5 21:01:57 IST 2026
[2026-06-05 21:01:57,073.073 INFO    ] ================================================
[2026-06-05 21:01:57,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:01:57
[2026-06-05 21:01:58,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:01:58,501.501 INFO    ] Initializing speech engine...
[2026-06-05 21:01:58,523.523 INFO    ] 2026-06-05 21:01:58
[2026-06-05 21:01:58,777.777 INFO    ] 2026-06-05 21:01:58
[2026-06-05 21:01:58,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:01:59,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:01:59,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:01:59,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:01:59,274.274 INFO    ] time= 05/06/2026 21:01:59
[2026-06-05 21:01:59,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:01:59,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:01:59,488.488 INFO    ] No existing commands found in stream
[2026-06-05 21:02:04,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:02:04,504.504 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 21:02:07,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:02:07,349.349 INFO    ] Checking for system updates...
[2026-06-05 21:02:07,387.387 INFO    ] 200
[2026-06-05 21:02:07,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:02:07,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:02:07,455.455 INFO    ] No update needed
[2026-06-05 21:02:07,458.458 INFO    ] Checking for camera pi updates...
[2026-06-05 21:02:07,499.499 INFO    ] 200
[2026-06-05 21:02:07,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:02:07,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:02:07,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:02:07,697.697 INFO    ] No camera update needed
[2026-06-05 21:02:07,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:02:07,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:02:07,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:02:07,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:02:09,758.758 INFO    ] ================================================
[2026-06-05 21:02:09,776.776 INFO    ] Launching Daemon at Fri Jun  5 21:02:09 IST 2026
[2026-06-05 21:02:09,788.788 INFO    ] ================================================
[2026-06-05 21:02:10,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:02:10
[2026-06-05 21:02:11,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:02:11,293.293 INFO    ] Initializing speech engine...
[2026-06-05 21:02:11,296.296 INFO    ] 2026-06-05 21:02:11
[2026-06-05 21:02:11,598.598 INFO    ] 2026-06-05 21:02:11
[2026-06-05 21:02:11,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:02:14,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:02:14,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:02:15,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:02:15,724.724 INFO    ] time= 05/06/2026 21:02:15
[2026-06-05 21:02:15,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:02:15,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:02:15,802.802 INFO    ] No existing commands found in stream
[2026-06-05 21:02:20,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:02:20,814.814 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 21:02:22,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:02:22,748.748 INFO    ] Checking for system updates...
[2026-06-05 21:02:22,784.784 INFO    ] 200
[2026-06-05 21:02:22,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:02:22,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:02:22,842.842 INFO    ] No update needed
[2026-06-05 21:02:22,844.844 INFO    ] Checking for camera pi updates...
[2026-06-05 21:02:22,882.882 INFO    ] 200
[2026-06-05 21:02:22,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:02:22,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:02:22,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:02:22,978.978 INFO    ] No camera update needed
[2026-06-05 21:02:22,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:02:22,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:02:22,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:02:22,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:02:25,036.036 INFO    ] ================================================
[2026-06-05 21:02:25,052.052 INFO    ] Launching Daemon at Fri Jun  5 21:02:25 IST 2026
[2026-06-05 21:02:25,062.062 INFO    ] ================================================
[2026-06-05 21:02:25,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:02:25
[2026-06-05 21:02:26,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:02:26,509.509 INFO    ] Initializing speech engine...
[2026-06-05 21:02:26,518.518 INFO    ] 2026-06-05 21:02:26
[2026-06-05 21:02:26,768.768 INFO    ] 2026-06-05 21:02:26
[2026-06-05 21:02:26,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:02:27,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:02:27,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:02:27,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:02:27,267.267 INFO    ] time= 05/06/2026 21:02:27
[2026-06-05 21:02:27,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:02:27,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:02:27,487.487 INFO    ] No existing commands found in stream
[2026-06-05 21:02:32,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:02:32,513.513 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 21:02:36,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:02:36,647.647 INFO    ] Checking for system updates...
[2026-06-05 21:02:36,683.683 INFO    ] 200
[2026-06-05 21:02:36,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:02:36,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:02:36,747.747 INFO    ] No update needed
[2026-06-05 21:02:36,749.749 INFO    ] Checking for camera pi updates...
[2026-06-05 21:02:36,786.786 INFO    ] 200
[2026-06-05 21:02:36,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:02:36,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:02:36,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:02:36,873.873 INFO    ] No camera update needed
[2026-06-05 21:02:36,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:02:36,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:02:36,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:02:36,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:02:38,930.930 INFO    ] ================================================
[2026-06-05 21:02:38,945.945 INFO    ] Launching Daemon at Fri Jun  5 21:02:38 IST 2026
[2026-06-05 21:02:38,956.956 INFO    ] ================================================
[2026-06-05 21:02:39,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:02:39
[2026-06-05 21:02:40,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:02:40,421.421 INFO    ] Initializing speech engine...
[2026-06-05 21:02:40,428.428 INFO    ] 2026-06-05 21:02:40
[2026-06-05 21:02:40,697.697 INFO    ] 2026-06-05 21:02:40
[2026-06-05 21:02:40,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:02:40,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:02:40,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:02:41,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:02:41,183.183 INFO    ] time= 05/06/2026 21:02:41
[2026-06-05 21:02:41,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:02:41,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:02:41,388.388 INFO    ] No existing commands found in stream
[2026-06-05 21:02:46,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:02:46,400.400 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 21:02:49,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:02:49,399.399 INFO    ] Checking for system updates...
[2026-06-05 21:02:49,438.438 INFO    ] 200
[2026-06-05 21:02:49,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:02:49,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:02:49,502.502 INFO    ] No update needed
[2026-06-05 21:02:49,505.505 INFO    ] Checking for camera pi updates...
[2026-06-05 21:02:49,542.542 INFO    ] 200
[2026-06-05 21:02:49,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:02:49,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:02:49,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:02:49,637.637 INFO    ] No camera update needed
[2026-06-05 21:02:49,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:02:49,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:02:49,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:02:49,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:02:51,698.698 INFO    ] ================================================
[2026-06-05 21:02:51,714.714 INFO    ] Launching Daemon at Fri Jun  5 21:02:51 IST 2026
[2026-06-05 21:02:51,725.725 INFO    ] ================================================
[2026-06-05 21:02:52,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:02:52
[2026-06-05 21:02:52,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:02:53,224.224 INFO    ] Initializing speech engine...
[2026-06-05 21:02:53,235.235 INFO    ] 2026-06-05 21:02:53
[2026-06-05 21:02:53,500.500 INFO    ] 2026-06-05 21:02:53
[2026-06-05 21:02:53,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:02:53,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:02:53,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:02:53,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:02:54,013.013 INFO    ] time= 05/06/2026 21:02:53
[2026-06-05 21:02:54,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:02:54,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:02:54,244.244 INFO    ] No existing commands found in stream
[2026-06-05 21:02:59,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:02:59,267.267 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-05 21:03:01,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:03:01,934.934 INFO    ] Checking for system updates...
[2026-06-05 21:03:02,047.047 INFO    ] 200
[2026-06-05 21:03:02,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:02,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:03:02,173.173 INFO    ] No update needed
[2026-06-05 21:03:02,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 21:03:02,263.263 INFO    ] 200
[2026-06-05 21:03:02,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:02,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:03:02,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:03:02,379.379 INFO    ] No camera update needed
[2026-06-05 21:03:02,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:03:02,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:03:02,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:03:02,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:03:04,446.446 INFO    ] ================================================
[2026-06-05 21:03:04,461.461 INFO    ] Launching Daemon at Fri Jun  5 21:03:04 IST 2026
[2026-06-05 21:03:04,471.471 INFO    ] ================================================
[2026-06-05 21:03:05,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:03:05
[2026-06-05 21:03:05,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:03:05,919.919 INFO    ] Initializing speech engine...
[2026-06-05 21:03:05,928.928 INFO    ] 2026-06-05 21:03:05
[2026-06-05 21:03:06,190.190 INFO    ] 2026-06-05 21:03:06
[2026-06-05 21:03:06,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:03:06,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:03:06,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:03:06,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:03:06,749.749 INFO    ] time= 05/06/2026 21:03:06
[2026-06-05 21:03:06,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:03:06,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:03:06,907.907 INFO    ] No existing commands found in stream
[2026-06-05 21:03:11,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:03:11,931.931 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 21:03:12,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:03:12,859.859 INFO    ] Checking for system updates...
[2026-06-05 21:03:12,900.900 INFO    ] 200
[2026-06-05 21:03:12,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:12,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:03:12,973.973 INFO    ] No update needed
[2026-06-05 21:03:12,976.976 INFO    ] Checking for camera pi updates...
[2026-06-05 21:03:13,015.015 INFO    ] 200
[2026-06-05 21:03:13,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:13,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:03:13,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:03:13,105.105 INFO    ] No camera update needed
[2026-06-05 21:03:13,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:03:13,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:03:13,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:03:13,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:03:15,166.166 INFO    ] ================================================
[2026-06-05 21:03:15,181.181 INFO    ] Launching Daemon at Fri Jun  5 21:03:15 IST 2026
[2026-06-05 21:03:15,192.192 INFO    ] ================================================
[2026-06-05 21:03:15,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:03:15
[2026-06-05 21:03:16,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:03:16,654.654 INFO    ] Initializing speech engine...
[2026-06-05 21:03:16,661.661 INFO    ] 2026-06-05 21:03:16
[2026-06-05 21:03:16,908.908 INFO    ] 2026-06-05 21:03:16
[2026-06-05 21:03:16,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:03:17,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:03:17,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:03:17,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:03:17,470.470 INFO    ] time= 05/06/2026 21:03:17
[2026-06-05 21:03:17,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:03:17,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:03:17,627.627 INFO    ] No existing commands found in stream
[2026-06-05 21:03:22,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:03:22,652.652 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 21:03:26,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:03:26,859.859 INFO    ] Checking for system updates...
[2026-06-05 21:03:26,895.895 INFO    ] 200
[2026-06-05 21:03:26,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:26,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:03:26,952.952 INFO    ] No update needed
[2026-06-05 21:03:26,955.955 INFO    ] Checking for camera pi updates...
[2026-06-05 21:03:26,989.989 INFO    ] 200
[2026-06-05 21:03:26,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:27,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:03:27,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:03:27,087.087 INFO    ] No camera update needed
[2026-06-05 21:03:27,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:03:27,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:03:27,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:03:27,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:03:29,146.146 INFO    ] ================================================
[2026-06-05 21:03:29,161.161 INFO    ] Launching Daemon at Fri Jun  5 21:03:29 IST 2026
[2026-06-05 21:03:29,172.172 INFO    ] ================================================
[2026-06-05 21:03:29,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:03:29
[2026-06-05 21:03:30,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:03:30,610.610 INFO    ] Initializing speech engine...
[2026-06-05 21:03:30,617.617 INFO    ] 2026-06-05 21:03:30
[2026-06-05 21:03:30,896.896 INFO    ] 2026-06-05 21:03:30
[2026-06-05 21:03:30,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:03:31,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:03:31,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:03:31,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:03:31,465.465 INFO    ] time= 05/06/2026 21:03:31
[2026-06-05 21:03:31,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:03:31,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:03:31,653.653 INFO    ] No existing commands found in stream
[2026-06-05 21:03:36,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:03:36,693.693 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-05 21:03:37,340.340 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:03:37,343.343 INFO    ] Checking for system updates...
[2026-06-05 21:03:37,380.380 INFO    ] 200
[2026-06-05 21:03:37,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:37,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:03:37,440.440 INFO    ] No update needed
[2026-06-05 21:03:37,442.442 INFO    ] Checking for camera pi updates...
[2026-06-05 21:03:37,476.476 INFO    ] 200
[2026-06-05 21:03:37,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:37,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:03:37,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:03:37,574.574 INFO    ] No camera update needed
[2026-06-05 21:03:37,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:03:37,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:03:37,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:03:37,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:03:39,629.629 INFO    ] ================================================
[2026-06-05 21:03:39,644.644 INFO    ] Launching Daemon at Fri Jun  5 21:03:39 IST 2026
[2026-06-05 21:03:39,655.655 INFO    ] ================================================
[2026-06-05 21:03:40,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:03:40
[2026-06-05 21:03:40,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:03:41,121.121 INFO    ] Initializing speech engine...
[2026-06-05 21:03:41,131.131 INFO    ] 2026-06-05 21:03:41
[2026-06-05 21:03:41,434.434 INFO    ] 2026-06-05 21:03:41
[2026-06-05 21:03:41,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:03:41,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:03:41,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:03:41,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:03:42,009.009 INFO    ] time= 05/06/2026 21:03:41
[2026-06-05 21:03:42,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:03:42,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:03:42,166.166 INFO    ] No existing commands found in stream
[2026-06-05 21:03:47,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:03:47,192.192 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 21:03:50,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:03:50,798.798 INFO    ] Checking for system updates...
[2026-06-05 21:03:50,834.834 INFO    ] 200
[2026-06-05 21:03:50,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:50,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:03:50,892.892 INFO    ] No update needed
[2026-06-05 21:03:50,895.895 INFO    ] Checking for camera pi updates...
[2026-06-05 21:03:50,930.930 INFO    ] 200
[2026-06-05 21:03:50,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:03:50,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:03:51,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:03:51,030.030 INFO    ] No camera update needed
[2026-06-05 21:03:51,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:03:51,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:03:51,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:03:51,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:03:53,088.088 INFO    ] ================================================
[2026-06-05 21:03:53,104.104 INFO    ] Launching Daemon at Fri Jun  5 21:03:53 IST 2026
[2026-06-05 21:03:53,116.116 INFO    ] ================================================
[2026-06-05 21:03:53,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:03:53
[2026-06-05 21:03:54,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:03:54,615.615 INFO    ] Initializing speech engine...
[2026-06-05 21:03:54,626.626 INFO    ] 2026-06-05 21:03:54
[2026-06-05 21:03:54,930.930 INFO    ] 2026-06-05 21:03:54
[2026-06-05 21:03:54,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:03:55,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:03:55,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:03:55,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:03:55,351.351 INFO    ] time= 05/06/2026 21:03:55
[2026-06-05 21:03:55,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:03:55,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:03:55,444.444 INFO    ] No existing commands found in stream
[2026-06-05 21:04:00,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:04:00,462.462 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 21:04:03,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:04:03,379.379 INFO    ] Checking for system updates...
[2026-06-05 21:04:03,424.424 INFO    ] 200
[2026-06-05 21:04:03,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:03,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:04:03,492.492 INFO    ] No update needed
[2026-06-05 21:04:03,495.495 INFO    ] Checking for camera pi updates...
[2026-06-05 21:04:03,528.528 INFO    ] 200
[2026-06-05 21:04:03,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:03,574.574 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:04:03,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:04:03,624.624 INFO    ] No camera update needed
[2026-06-05 21:04:03,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:04:03,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:04:03,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:04:03,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:04:05,681.681 INFO    ] ================================================
[2026-06-05 21:04:05,696.696 INFO    ] Launching Daemon at Fri Jun  5 21:04:05 IST 2026
[2026-06-05 21:04:05,707.707 INFO    ] ================================================
[2026-06-05 21:04:06,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:04:06
[2026-06-05 21:04:06,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:04:07,193.193 INFO    ] Initializing speech engine...
[2026-06-05 21:04:07,198.198 INFO    ] 2026-06-05 21:04:07
[2026-06-05 21:04:07,461.461 INFO    ] 2026-06-05 21:04:07
[2026-06-05 21:04:07,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:04:07,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:04:07,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:04:07,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:04:08,007.007 INFO    ] time= 05/06/2026 21:04:07
[2026-06-05 21:04:08,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:04:08,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:04:08,143.143 INFO    ] No existing commands found in stream
[2026-06-05 21:04:13,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:04:13,170.170 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-05 21:04:16,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:04:16,669.669 INFO    ] Checking for system updates...
[2026-06-05 21:04:16,708.708 INFO    ] 200
[2026-06-05 21:04:16,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:16,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:04:16,770.770 INFO    ] No update needed
[2026-06-05 21:04:16,773.773 INFO    ] Checking for camera pi updates...
[2026-06-05 21:04:16,811.811 INFO    ] 200
[2026-06-05 21:04:16,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:16,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:04:17,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:04:17,007.007 INFO    ] No camera update needed
[2026-06-05 21:04:17,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:04:17,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:04:17,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:04:17,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:04:19,067.067 INFO    ] ================================================
[2026-06-05 21:04:19,083.083 INFO    ] Launching Daemon at Fri Jun  5 21:04:19 IST 2026
[2026-06-05 21:04:19,094.094 INFO    ] ================================================
[2026-06-05 21:04:19,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:04:19
[2026-06-05 21:04:20,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:04:20,663.663 INFO    ] Initializing speech engine...
[2026-06-05 21:04:20,672.672 INFO    ] 2026-06-05 21:04:20
[2026-06-05 21:04:20,963.963 INFO    ] 2026-06-05 21:04:20
[2026-06-05 21:04:21,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:04:21,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:04:21,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:04:21,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:04:21,423.423 INFO    ] time= 05/06/2026 21:04:21
[2026-06-05 21:04:21,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:04:21,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:04:21,593.593 INFO    ] No existing commands found in stream
[2026-06-05 21:04:26,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:04:26,608.608 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 21:04:27,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:04:27,863.863 INFO    ] Checking for system updates...
[2026-06-05 21:04:27,899.899 INFO    ] 200
[2026-06-05 21:04:27,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:27,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:04:27,958.958 INFO    ] No update needed
[2026-06-05 21:04:27,960.960 INFO    ] Checking for camera pi updates...
[2026-06-05 21:04:27,995.995 INFO    ] 200
[2026-06-05 21:04:27,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:28,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:04:28,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:04:28,093.093 INFO    ] No camera update needed
[2026-06-05 21:04:28,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:04:28,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:04:28,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:04:28,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:04:30,148.148 INFO    ] ================================================
[2026-06-05 21:04:30,163.163 INFO    ] Launching Daemon at Fri Jun  5 21:04:30 IST 2026
[2026-06-05 21:04:30,174.174 INFO    ] ================================================
[2026-06-05 21:04:30,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:04:30
[2026-06-05 21:04:31,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:04:31,695.695 INFO    ] Initializing speech engine...
[2026-06-05 21:04:31,708.708 INFO    ] 2026-06-05 21:04:31
[2026-06-05 21:04:32,005.005 INFO    ] 2026-06-05 21:04:31
[2026-06-05 21:04:32,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:04:32,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:04:32,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:04:32,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:04:32,591.591 INFO    ] time= 05/06/2026 21:04:32
[2026-06-05 21:04:32,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:04:32,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:04:32,777.777 INFO    ] No existing commands found in stream
[2026-06-05 21:04:37,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:04:37,811.811 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 21:04:40,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:04:40,354.354 INFO    ] Checking for system updates...
[2026-06-05 21:04:40,394.394 INFO    ] 200
[2026-06-05 21:04:40,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:40,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:04:40,453.453 INFO    ] No update needed
[2026-06-05 21:04:40,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 21:04:40,490.490 INFO    ] 200
[2026-06-05 21:04:40,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:40,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:04:40,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:04:40,604.604 INFO    ] No camera update needed
[2026-06-05 21:04:40,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:04:40,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:04:40,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:04:40,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:04:42,659.659 INFO    ] ================================================
[2026-06-05 21:04:42,674.674 INFO    ] Launching Daemon at Fri Jun  5 21:04:42 IST 2026
[2026-06-05 21:04:42,684.684 INFO    ] ================================================
[2026-06-05 21:04:43,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:04:43
[2026-06-05 21:04:43,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:04:44,107.107 INFO    ] Initializing speech engine...
[2026-06-05 21:04:44,117.117 INFO    ] 2026-06-05 21:04:44
[2026-06-05 21:04:44,363.363 INFO    ] 2026-06-05 21:04:44
[2026-06-05 21:04:44,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:04:44,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:04:44,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:04:44,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:04:44,855.855 INFO    ] time= 05/06/2026 21:04:44
[2026-06-05 21:04:44,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:04:44,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:04:45,064.064 INFO    ] No existing commands found in stream
[2026-06-05 21:04:50,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:04:50,108.108 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 21:04:53,976.976 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:04:53,979.979 INFO    ] Checking for system updates...
[2026-06-05 21:04:54,015.015 INFO    ] 200
[2026-06-05 21:04:54,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:54,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:04:54,074.074 INFO    ] No update needed
[2026-06-05 21:04:54,077.077 INFO    ] Checking for camera pi updates...
[2026-06-05 21:04:54,112.112 INFO    ] 200
[2026-06-05 21:04:54,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:04:54,155.155 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:04:54,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:04:54,215.215 INFO    ] No camera update needed
[2026-06-05 21:04:54,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:04:54,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:04:54,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:04:54,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:04:56,282.282 INFO    ] ================================================
[2026-06-05 21:04:56,298.298 INFO    ] Launching Daemon at Fri Jun  5 21:04:56 IST 2026
[2026-06-05 21:04:56,309.309 INFO    ] ================================================
[2026-06-05 21:04:56,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:04:56
[2026-06-05 21:04:57,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:04:57,792.792 INFO    ] Initializing speech engine...
[2026-06-05 21:04:57,802.802 INFO    ] 2026-06-05 21:04:57
[2026-06-05 21:04:58,100.100 INFO    ] 2026-06-05 21:04:58
[2026-06-05 21:04:58,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:04:58,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:04:58,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:04:58,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:04:58,525.525 INFO    ] time= 05/06/2026 21:04:58
[2026-06-05 21:04:58,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:04:58,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:04:58,687.687 INFO    ] No existing commands found in stream
[2026-06-05 21:05:03,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:05:03,716.716 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 21:05:07,025.025 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:05:07,028.028 INFO    ] Checking for system updates...
[2026-06-05 21:05:07,068.068 INFO    ] 200
[2026-06-05 21:05:07,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:05:07,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:05:07,345.345 INFO    ] No update needed
[2026-06-05 21:05:07,348.348 INFO    ] Checking for camera pi updates...
[2026-06-05 21:05:07,382.382 INFO    ] 200
[2026-06-05 21:05:07,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:05:07,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:05:07,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:05:07,473.473 INFO    ] No camera update needed
[2026-06-05 21:05:07,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:05:07,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:05:07,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:05:07,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:05:09,529.529 INFO    ] ================================================
[2026-06-05 21:05:09,544.544 INFO    ] Launching Daemon at Fri Jun  5 21:05:09 IST 2026
[2026-06-05 21:05:09,556.556 INFO    ] ================================================
[2026-06-05 21:05:10,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:05:10
[2026-06-05 21:05:10,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:05:11,084.084 INFO    ] Initializing speech engine...
[2026-06-05 21:05:11,094.094 INFO    ] 2026-06-05 21:05:11
[2026-06-05 21:05:11,371.371 INFO    ] 2026-06-05 21:05:11
[2026-06-05 21:05:11,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:05:11,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:05:11,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:05:11,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:05:11,942.942 INFO    ] time= 05/06/2026 21:05:11
[2026-06-05 21:05:11,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:05:11,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:05:12,123.123 INFO    ] No existing commands found in stream
[2026-06-05 21:05:17,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:05:17,147.147 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 21:05:20,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:05:20,661.661 INFO    ] Checking for system updates...
[2026-06-05 21:05:20,699.699 INFO    ] 200
[2026-06-05 21:05:20,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:05:20,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:05:20,759.759 INFO    ] No update needed
[2026-06-05 21:05:20,763.763 INFO    ] Checking for camera pi updates...
[2026-06-05 21:05:20,807.807 INFO    ] 200
[2026-06-05 21:05:20,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:05:20,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:05:20,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:05:20,899.899 INFO    ] No camera update needed
[2026-06-05 21:05:20,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:05:20,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:05:20,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:05:20,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:05:22,958.958 INFO    ] ================================================
[2026-06-05 21:05:22,973.973 INFO    ] Launching Daemon at Fri Jun  5 21:05:22 IST 2026
[2026-06-05 21:05:22,984.984 INFO    ] ================================================
[2026-06-05 21:05:23,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:05:23
[2026-06-05 21:05:24,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:05:24,457.457 INFO    ] Initializing speech engine...
[2026-06-05 21:05:24,463.463 INFO    ] 2026-06-05 21:05:24
[2026-06-05 21:05:24,740.740 INFO    ] 2026-06-05 21:05:24
[2026-06-05 21:05:24,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:05:24,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:05:25,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:05:25,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:05:25,232.232 INFO    ] time= 05/06/2026 21:05:25
[2026-06-05 21:05:25,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:05:25,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:05:25,452.452 INFO    ] No existing commands found in stream
[2026-06-05 21:05:30,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:05:32,967.967 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 21:05:36,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:05:36,550.550 INFO    ] Checking for system updates...
[2026-06-05 21:05:36,586.586 INFO    ] 200
[2026-06-05 21:05:36,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:05:36,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:05:36,643.643 INFO    ] No update needed
[2026-06-05 21:05:36,646.646 INFO    ] Checking for camera pi updates...
[2026-06-05 21:05:36,680.680 INFO    ] 200
[2026-06-05 21:05:36,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:05:36,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:05:36,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:05:36,779.779 INFO    ] No camera update needed
[2026-06-05 21:05:36,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:05:36,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:05:36,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:05:36,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:05:38,836.836 INFO    ] ================================================
[2026-06-05 21:05:38,852.852 INFO    ] Launching Daemon at Fri Jun  5 21:05:38 IST 2026
[2026-06-05 21:05:38,862.862 INFO    ] ================================================
[2026-06-05 21:05:39,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:05:39
[2026-06-05 21:05:40,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:05:40,442.442 INFO    ] Initializing speech engine...
[2026-06-05 21:05:40,450.450 INFO    ] 2026-06-05 21:05:40
[2026-06-05 21:05:40,733.733 INFO    ] 2026-06-05 21:05:40
[2026-06-05 21:05:40,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:05:41,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:05:41,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:05:41,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:05:41,289.289 INFO    ] time= 05/06/2026 21:05:41
[2026-06-05 21:05:41,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:05:41,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:05:41,444.444 INFO    ] No existing commands found in stream
[2026-06-05 21:05:46,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:05:46,472.472 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 21:05:50,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:05:50,980.980 INFO    ] Checking for system updates...
[2026-06-05 21:05:51,017.017 INFO    ] 200
[2026-06-05 21:05:51,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:05:51,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:05:51,077.077 INFO    ] No update needed
[2026-06-05 21:05:51,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 21:05:51,118.118 INFO    ] 200
[2026-06-05 21:05:51,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:05:51,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:05:51,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:05:51,218.218 INFO    ] No camera update needed
[2026-06-05 21:05:51,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:05:51,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:05:51,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:05:51,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:05:53,275.275 INFO    ] ================================================
[2026-06-05 21:05:53,290.290 INFO    ] Launching Daemon at Fri Jun  5 21:05:53 IST 2026
[2026-06-05 21:05:53,301.301 INFO    ] ================================================
[2026-06-05 21:05:53,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:05:53
[2026-06-05 21:05:54,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:05:54,763.763 INFO    ] Initializing speech engine...
[2026-06-05 21:05:54,771.771 INFO    ] 2026-06-05 21:05:54
[2026-06-05 21:05:55,031.031 INFO    ] 2026-06-05 21:05:55
[2026-06-05 21:05:55,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:05:55,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:05:55,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:05:55,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:05:55,592.592 INFO    ] time= 05/06/2026 21:05:55
[2026-06-05 21:05:55,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:05:55,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:05:55,750.750 INFO    ] No existing commands found in stream
[2026-06-05 21:06:00,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:06:00,768.768 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-05 21:06:03,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:06:03,770.770 INFO    ] Checking for system updates...
[2026-06-05 21:06:03,806.806 INFO    ] 200
[2026-06-05 21:06:03,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:03,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:03,868.868 INFO    ] No update needed
[2026-06-05 21:06:03,870.870 INFO    ] Checking for camera pi updates...
[2026-06-05 21:06:03,908.908 INFO    ] 200
[2026-06-05 21:06:03,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:03,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:06:04,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:04,010.010 INFO    ] No camera update needed
[2026-06-05 21:06:04,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:06:04,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:06:04,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:06:04,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:06:06,068.068 INFO    ] ================================================
[2026-06-05 21:06:06,083.083 INFO    ] Launching Daemon at Fri Jun  5 21:06:06 IST 2026
[2026-06-05 21:06:06,094.094 INFO    ] ================================================
[2026-06-05 21:06:06,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:06:06
[2026-06-05 21:06:07,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:06:07,574.574 INFO    ] Initializing speech engine...
[2026-06-05 21:06:07,589.589 INFO    ] 2026-06-05 21:06:07
[2026-06-05 21:06:07,870.870 INFO    ] 2026-06-05 21:06:07
[2026-06-05 21:06:07,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:06:08,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:06:08,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:06:08,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:06:08,377.377 INFO    ] time= 05/06/2026 21:06:08
[2026-06-05 21:06:08,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:06:08,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:06:08,588.588 INFO    ] No existing commands found in stream
[2026-06-05 21:06:13,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:06:13,614.614 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 21:06:20,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:06:20,630.630 INFO    ] Checking for system updates...
[2026-06-05 21:06:20,667.667 INFO    ] 200
[2026-06-05 21:06:20,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:20,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:20,730.730 INFO    ] No update needed
[2026-06-05 21:06:20,732.732 INFO    ] Checking for camera pi updates...
[2026-06-05 21:06:20,769.769 INFO    ] 200
[2026-06-05 21:06:20,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:20,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:06:20,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:20,969.969 INFO    ] No camera update needed
[2026-06-05 21:06:20,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:06:20,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:06:20,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:06:20,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:06:23,028.028 INFO    ] ================================================
[2026-06-05 21:06:23,043.043 INFO    ] Launching Daemon at Fri Jun  5 21:06:23 IST 2026
[2026-06-05 21:06:23,055.055 INFO    ] ================================================
[2026-06-05 21:06:23,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:06:23
[2026-06-05 21:06:24,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:06:24,515.515 INFO    ] Initializing speech engine...
[2026-06-05 21:06:24,528.528 INFO    ] 2026-06-05 21:06:24
[2026-06-05 21:06:24,815.815 INFO    ] 2026-06-05 21:06:24
[2026-06-05 21:06:24,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:06:25,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:06:25,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:06:25,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:06:25,428.428 INFO    ] time= 05/06/2026 21:06:25
[2026-06-05 21:06:25,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:06:25,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:06:25,579.579 INFO    ] No existing commands found in stream
[2026-06-05 21:06:30,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:06:30,604.604 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 21:06:33,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:06:33,596.596 INFO    ] Checking for system updates...
[2026-06-05 21:06:33,632.632 INFO    ] 200
[2026-06-05 21:06:33,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:33,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:33,689.689 INFO    ] No update needed
[2026-06-05 21:06:33,691.691 INFO    ] Checking for camera pi updates...
[2026-06-05 21:06:33,725.725 INFO    ] 200
[2026-06-05 21:06:33,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:33,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:06:33,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:33,833.833 INFO    ] No camera update needed
[2026-06-05 21:06:33,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:06:33,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:06:33,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:06:33,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:06:35,888.888 INFO    ] ================================================
[2026-06-05 21:06:35,903.903 INFO    ] Launching Daemon at Fri Jun  5 21:06:35 IST 2026
[2026-06-05 21:06:35,914.914 INFO    ] ================================================
[2026-06-05 21:06:36,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:06:36
[2026-06-05 21:06:37,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:06:37,368.368 INFO    ] Initializing speech engine...
[2026-06-05 21:06:37,395.395 INFO    ] 2026-06-05 21:06:37
[2026-06-05 21:06:37,667.667 INFO    ] 2026-06-05 21:06:37
[2026-06-05 21:06:37,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:06:37,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:06:37,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:06:38,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:06:38,086.086 INFO    ] time= 05/06/2026 21:06:38
[2026-06-05 21:06:38,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:06:38,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:06:38,300.300 INFO    ] No existing commands found in stream
[2026-06-05 21:06:43,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:06:43,317.317 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 21:06:46,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:06:46,860.860 INFO    ] Checking for system updates...
[2026-06-05 21:06:46,898.898 INFO    ] 200
[2026-06-05 21:06:46,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:46,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:46,962.962 INFO    ] No update needed
[2026-06-05 21:06:46,965.965 INFO    ] Checking for camera pi updates...
[2026-06-05 21:06:46,999.999 INFO    ] 200
[2026-06-05 21:06:47,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:47,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:06:47,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:47,098.098 INFO    ] No camera update needed
[2026-06-05 21:06:47,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:06:47,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:06:47,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:06:47,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:06:49,153.153 INFO    ] ================================================
[2026-06-05 21:06:49,168.168 INFO    ] Launching Daemon at Fri Jun  5 21:06:49 IST 2026
[2026-06-05 21:06:49,180.180 INFO    ] ================================================
[2026-06-05 21:06:49,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:06:49
[2026-06-05 21:06:50,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:06:50,892.892 INFO    ] Initializing speech engine...
[2026-06-05 21:06:50,900.900 INFO    ] 2026-06-05 21:06:50
[2026-06-05 21:06:51,245.245 INFO    ] 2026-06-05 21:06:51
[2026-06-05 21:06:51,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:06:51,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:06:51,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:06:51,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:06:51,724.724 INFO    ] time= 05/06/2026 21:06:51
[2026-06-05 21:06:51,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:06:51,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:06:51,927.927 INFO    ] No existing commands found in stream
[2026-06-05 21:06:56,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:06:56,941.941 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 21:06:59,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:06:59,219.219 INFO    ] Checking for system updates...
[2026-06-05 21:06:59,258.258 INFO    ] 200
[2026-06-05 21:06:59,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:59,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:59,324.324 INFO    ] No update needed
[2026-06-05 21:06:59,326.326 INFO    ] Checking for camera pi updates...
[2026-06-05 21:06:59,364.364 INFO    ] 200
[2026-06-05 21:06:59,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:06:59,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:06:59,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:06:59,466.466 INFO    ] No camera update needed
[2026-06-05 21:06:59,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:06:59,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:06:59,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:06:59,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:07:01,538.538 INFO    ] ================================================
[2026-06-05 21:07:01,602.602 INFO    ] Launching Daemon at Fri Jun  5 21:07:01 IST 2026
[2026-06-05 21:07:01,624.624 INFO    ] ================================================
[2026-06-05 21:07:02,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:07:02
[2026-06-05 21:07:03,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:07:03,330.330 INFO    ] Initializing speech engine...
[2026-06-05 21:07:03,339.339 INFO    ] 2026-06-05 21:07:03
[2026-06-05 21:07:03,631.631 INFO    ] 2026-06-05 21:07:03
[2026-06-05 21:07:03,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:07:03,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:07:03,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:07:04,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:07:04,155.155 INFO    ] time= 05/06/2026 21:07:04
[2026-06-05 21:07:04,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:07:04,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:07:04,307.307 INFO    ] No existing commands found in stream
[2026-06-05 21:07:09,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:07:09,321.321 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 21:07:10,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:07:10,667.667 INFO    ] Checking for system updates...
[2026-06-05 21:07:10,703.703 INFO    ] 200
[2026-06-05 21:07:10,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:10,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:07:10,761.761 INFO    ] No update needed
[2026-06-05 21:07:10,764.764 INFO    ] Checking for camera pi updates...
[2026-06-05 21:07:10,800.800 INFO    ] 200
[2026-06-05 21:07:10,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:10,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:07:10,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:07:10,902.902 INFO    ] No camera update needed
[2026-06-05 21:07:10,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:07:10,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:07:10,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:07:10,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:07:12,959.959 INFO    ] ================================================
[2026-06-05 21:07:12,974.974 INFO    ] Launching Daemon at Fri Jun  5 21:07:12 IST 2026
[2026-06-05 21:07:12,986.986 INFO    ] ================================================
[2026-06-05 21:07:13,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:07:13
[2026-06-05 21:07:14,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:07:14,428.428 INFO    ] Initializing speech engine...
[2026-06-05 21:07:14,433.433 INFO    ] 2026-06-05 21:07:14
[2026-06-05 21:07:14,679.679 INFO    ] 2026-06-05 21:07:14
[2026-06-05 21:07:14,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:07:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:07:14,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:07:15,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:07:15,234.234 INFO    ] time= 05/06/2026 21:07:15
[2026-06-05 21:07:15,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:07:15,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:07:15,368.368 INFO    ] No existing commands found in stream
[2026-06-05 21:07:20,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:07:20,396.396 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-05 21:07:21,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:07:21,590.590 INFO    ] Checking for system updates...
[2026-06-05 21:07:21,627.627 INFO    ] 200
[2026-06-05 21:07:21,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:21,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:07:21,695.695 INFO    ] No update needed
[2026-06-05 21:07:21,698.698 INFO    ] Checking for camera pi updates...
[2026-06-05 21:07:21,736.736 INFO    ] 200
[2026-06-05 21:07:21,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:21,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:07:21,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:07:21,844.844 INFO    ] No camera update needed
[2026-06-05 21:07:21,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:07:21,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:07:21,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:07:21,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:07:23,900.900 INFO    ] ================================================
[2026-06-05 21:07:23,916.916 INFO    ] Launching Daemon at Fri Jun  5 21:07:23 IST 2026
[2026-06-05 21:07:23,927.927 INFO    ] ================================================
[2026-06-05 21:07:24,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:07:24
[2026-06-05 21:07:25,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:07:25,345.345 INFO    ] Initializing speech engine...
[2026-06-05 21:07:25,353.353 INFO    ] 2026-06-05 21:07:25
[2026-06-05 21:07:25,627.627 INFO    ] 2026-06-05 21:07:25
[2026-06-05 21:07:25,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:07:25,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:07:25,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:07:26,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:07:26,190.190 INFO    ] time= 05/06/2026 21:07:26
[2026-06-05 21:07:26,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:07:26,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:07:26,347.347 INFO    ] No existing commands found in stream
[2026-06-05 21:07:31,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:07:31,367.367 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 21:07:33,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:07:33,173.173 INFO    ] Checking for system updates...
[2026-06-05 21:07:33,218.218 INFO    ] 200
[2026-06-05 21:07:33,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:33,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:07:33,290.290 INFO    ] No update needed
[2026-06-05 21:07:33,292.292 INFO    ] Checking for camera pi updates...
[2026-06-05 21:07:33,331.331 INFO    ] 200
[2026-06-05 21:07:33,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:33,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:07:33,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:07:33,449.449 INFO    ] No camera update needed
[2026-06-05 21:07:33,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:07:33,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:07:33,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:07:33,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:07:35,505.505 INFO    ] ================================================
[2026-06-05 21:07:35,521.521 INFO    ] Launching Daemon at Fri Jun  5 21:07:35 IST 2026
[2026-06-05 21:07:35,532.532 INFO    ] ================================================
[2026-06-05 21:07:36,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:07:36
[2026-06-05 21:07:36,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:07:36,989.989 INFO    ] Initializing speech engine...
[2026-06-05 21:07:36,999.999 INFO    ] 2026-06-05 21:07:36
[2026-06-05 21:07:37,262.262 INFO    ] 2026-06-05 21:07:37
[2026-06-05 21:07:37,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:07:37,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:07:37,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:07:37,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:07:37,808.808 INFO    ] time= 05/06/2026 21:07:37
[2026-06-05 21:07:37,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:07:37,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:07:37,987.987 INFO    ] No existing commands found in stream
[2026-06-05 21:07:43,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:07:43,015.015 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 21:07:44,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:07:44,985.985 INFO    ] Checking for system updates...
[2026-06-05 21:07:45,022.022 INFO    ] 200
[2026-06-05 21:07:45,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:45,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:07:45,081.081 INFO    ] No update needed
[2026-06-05 21:07:45,083.083 INFO    ] Checking for camera pi updates...
[2026-06-05 21:07:45,123.123 INFO    ] 200
[2026-06-05 21:07:45,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:45,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:07:45,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:07:45,214.214 INFO    ] No camera update needed
[2026-06-05 21:07:45,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:07:45,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:07:45,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:07:45,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:07:47,273.273 INFO    ] ================================================
[2026-06-05 21:07:47,289.289 INFO    ] Launching Daemon at Fri Jun  5 21:07:47 IST 2026
[2026-06-05 21:07:47,300.300 INFO    ] ================================================
[2026-06-05 21:07:47,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:07:47
[2026-06-05 21:07:48,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:07:48,951.951 INFO    ] Initializing speech engine...
[2026-06-05 21:07:48,965.965 INFO    ] 2026-06-05 21:07:48
[2026-06-05 21:07:49,256.256 INFO    ] 2026-06-05 21:07:49
[2026-06-05 21:07:49,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:07:51,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:07:51,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:07:52,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:07:52,445.445 INFO    ] time= 05/06/2026 21:07:52
[2026-06-05 21:07:52,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:07:52,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:07:52,548.548 INFO    ] No existing commands found in stream
[2026-06-05 21:07:57,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:07:57,560.560 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 21:07:59,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:07:59,460.460 INFO    ] Checking for system updates...
[2026-06-05 21:07:59,497.497 INFO    ] 200
[2026-06-05 21:07:59,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:59,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:07:59,558.558 INFO    ] No update needed
[2026-06-05 21:07:59,561.561 INFO    ] Checking for camera pi updates...
[2026-06-05 21:07:59,596.596 INFO    ] 200
[2026-06-05 21:07:59,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:07:59,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:07:59,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:07:59,699.699 INFO    ] No camera update needed
[2026-06-05 21:07:59,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:07:59,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:07:59,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:07:59,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:08:01,775.775 INFO    ] ================================================
[2026-06-05 21:08:01,803.803 INFO    ] Launching Daemon at Fri Jun  5 21:08:01 IST 2026
[2026-06-05 21:08:01,832.832 INFO    ] ================================================
[2026-06-05 21:08:02,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:08:02
[2026-06-05 21:08:03,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:08:03,495.495 INFO    ] Initializing speech engine...
[2026-06-05 21:08:03,501.501 INFO    ] 2026-06-05 21:08:03
[2026-06-05 21:08:03,798.798 INFO    ] 2026-06-05 21:08:03
[2026-06-05 21:08:03,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:08:04,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:08:04,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:08:04,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:08:04,313.313 INFO    ] time= 05/06/2026 21:08:04
[2026-06-05 21:08:04,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:08:04,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:08:04,557.557 INFO    ] No existing commands found in stream
[2026-06-05 21:08:09,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:08:09,585.585 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 21:08:12,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:08:12,450.450 INFO    ] Checking for system updates...
[2026-06-05 21:08:12,490.490 INFO    ] 200
[2026-06-05 21:08:12,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:08:12,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:08:12,553.553 INFO    ] No update needed
[2026-06-05 21:08:12,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 21:08:12,593.593 INFO    ] 200
[2026-06-05 21:08:12,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:08:12,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:08:12,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:08:12,691.691 INFO    ] No camera update needed
[2026-06-05 21:08:12,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:08:12,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:08:12,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:08:12,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:08:14,746.746 INFO    ] ================================================
[2026-06-05 21:08:14,761.761 INFO    ] Launching Daemon at Fri Jun  5 21:08:14 IST 2026
[2026-06-05 21:08:14,772.772 INFO    ] ================================================
[2026-06-05 21:08:15,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:08:15
[2026-06-05 21:08:16,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:08:16,369.369 INFO    ] Initializing speech engine...
[2026-06-05 21:08:16,377.377 INFO    ] 2026-06-05 21:08:16
[2026-06-05 21:08:16,661.661 INFO    ] 2026-06-05 21:08:16
[2026-06-05 21:08:16,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:08:17,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:08:17,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:08:17,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:08:17,252.252 INFO    ] time= 05/06/2026 21:08:17
[2026-06-05 21:08:17,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:08:17,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:08:17,459.459 INFO    ] No existing commands found in stream
[2026-06-05 21:08:22,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:08:22,493.493 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 21:08:26,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:08:26,592.592 INFO    ] Checking for system updates...
[2026-06-05 21:08:26,630.630 INFO    ] 200
[2026-06-05 21:08:26,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:08:26,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:08:26,696.696 INFO    ] No update needed
[2026-06-05 21:08:26,699.699 INFO    ] Checking for camera pi updates...
[2026-06-05 21:08:26,738.738 INFO    ] 200
[2026-06-05 21:08:26,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:08:26,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:08:26,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:08:26,946.946 INFO    ] No camera update needed
[2026-06-05 21:08:26,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:08:26,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:08:26,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:08:26,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:08:29,006.006 INFO    ] ================================================
[2026-06-05 21:08:29,026.026 INFO    ] Launching Daemon at Fri Jun  5 21:08:29 IST 2026
[2026-06-05 21:08:29,037.037 INFO    ] ================================================
[2026-06-05 21:08:29,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:08:29
[2026-06-05 21:08:30,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:08:30,499.499 INFO    ] Initializing speech engine...
[2026-06-05 21:08:30,506.506 INFO    ] 2026-06-05 21:08:30
[2026-06-05 21:08:30,769.769 INFO    ] 2026-06-05 21:08:30
[2026-06-05 21:08:30,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:08:31,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:08:31,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:08:31,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:08:31,268.268 INFO    ] time= 05/06/2026 21:08:31
[2026-06-05 21:08:31,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:08:31,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:08:31,513.513 INFO    ] No existing commands found in stream
[2026-06-05 21:08:36,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:08:36,538.538 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 21:08:39,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:08:39,617.617 INFO    ] Checking for system updates...
[2026-06-05 21:08:39,653.653 INFO    ] 200
[2026-06-05 21:08:39,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:08:39,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:08:39,711.711 INFO    ] No update needed
[2026-06-05 21:08:39,713.713 INFO    ] Checking for camera pi updates...
[2026-06-05 21:08:39,748.748 INFO    ] 200
[2026-06-05 21:08:39,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:08:39,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:08:39,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:08:39,847.847 INFO    ] No camera update needed
[2026-06-05 21:08:39,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:08:39,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:08:39,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:08:39,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:08:41,903.903 INFO    ] ================================================
[2026-06-05 21:08:41,918.918 INFO    ] Launching Daemon at Fri Jun  5 21:08:41 IST 2026
[2026-06-05 21:08:41,929.929 INFO    ] ================================================
[2026-06-05 21:08:42,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:08:42
[2026-06-05 21:08:43,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:08:43,346.346 INFO    ] Initializing speech engine...
[2026-06-05 21:08:43,356.356 INFO    ] 2026-06-05 21:08:43
[2026-06-05 21:08:43,601.601 INFO    ] 2026-06-05 21:08:43
[2026-06-05 21:08:43,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:08:43,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:08:43,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:08:44,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:08:44,129.129 INFO    ] time= 05/06/2026 21:08:44
[2026-06-05 21:08:44,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:08:44,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:08:44,303.303 INFO    ] No existing commands found in stream
[2026-06-05 21:08:49,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:08:49,331.331 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 21:08:53,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:08:53,190.190 INFO    ] Checking for system updates...
[2026-06-05 21:08:53,229.229 INFO    ] 200
[2026-06-05 21:08:53,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:08:53,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:08:53,295.295 INFO    ] No update needed
[2026-06-05 21:08:53,297.297 INFO    ] Checking for camera pi updates...
[2026-06-05 21:08:53,331.331 INFO    ] 200
[2026-06-05 21:08:53,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:08:53,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:08:53,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:08:53,422.422 INFO    ] No camera update needed
[2026-06-05 21:08:53,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:08:53,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:08:53,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:08:53,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:08:55,477.477 INFO    ] ================================================
[2026-06-05 21:08:55,494.494 INFO    ] Launching Daemon at Fri Jun  5 21:08:55 IST 2026
[2026-06-05 21:08:55,504.504 INFO    ] ================================================
[2026-06-05 21:08:56,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:08:56
[2026-06-05 21:08:56,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:08:57,122.122 INFO    ] Initializing speech engine...
[2026-06-05 21:08:57,134.134 INFO    ] 2026-06-05 21:08:57
[2026-06-05 21:08:57,424.424 INFO    ] 2026-06-05 21:08:57
[2026-06-05 21:08:57,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:08:57,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:08:57,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:08:57,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:08:57,986.986 INFO    ] time= 05/06/2026 21:08:57
[2026-06-05 21:08:57,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:08:58,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:08:58,169.169 INFO    ] No existing commands found in stream
[2026-06-05 21:09:03,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:09:03,211.211 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 21:09:04,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:09:04,500.500 INFO    ] Checking for system updates...
[2026-06-05 21:09:04,538.538 INFO    ] 200
[2026-06-05 21:09:04,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:04,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:09:04,599.599 INFO    ] No update needed
[2026-06-05 21:09:04,602.602 INFO    ] Checking for camera pi updates...
[2026-06-05 21:09:04,636.636 INFO    ] 200
[2026-06-05 21:09:04,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:04,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:09:04,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:09:04,745.745 INFO    ] No camera update needed
[2026-06-05 21:09:04,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:09:04,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:09:04,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:09:04,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:09:06,801.801 INFO    ] ================================================
[2026-06-05 21:09:06,816.816 INFO    ] Launching Daemon at Fri Jun  5 21:09:06 IST 2026
[2026-06-05 21:09:06,827.827 INFO    ] ================================================
[2026-06-05 21:09:07,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:09:07
[2026-06-05 21:09:08,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:09:08,289.289 INFO    ] Initializing speech engine...
[2026-06-05 21:09:08,299.299 INFO    ] 2026-06-05 21:09:08
[2026-06-05 21:09:08,557.557 INFO    ] 2026-06-05 21:09:08
[2026-06-05 21:09:08,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:09:08,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:09:08,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:09:09,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:09:09,107.107 INFO    ] time= 05/06/2026 21:09:09
[2026-06-05 21:09:09,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:09:09,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:09:09,278.278 INFO    ] No existing commands found in stream
[2026-06-05 21:09:14,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:09:14,308.308 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-05 21:09:15,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:09:15,558.558 INFO    ] Checking for system updates...
[2026-06-05 21:09:15,597.597 INFO    ] 200
[2026-06-05 21:09:15,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:15,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:09:15,666.666 INFO    ] No update needed
[2026-06-05 21:09:15,670.670 INFO    ] Checking for camera pi updates...
[2026-06-05 21:09:15,710.710 INFO    ] 200
[2026-06-05 21:09:15,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:15,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:09:15,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:09:15,819.819 INFO    ] No camera update needed
[2026-06-05 21:09:15,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:09:15,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:09:15,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:09:15,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:09:17,873.873 INFO    ] ================================================
[2026-06-05 21:09:17,888.888 INFO    ] Launching Daemon at Fri Jun  5 21:09:17 IST 2026
[2026-06-05 21:09:17,900.900 INFO    ] ================================================
[2026-06-05 21:09:18,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:09:18
[2026-06-05 21:09:19,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:09:19,322.322 INFO    ] Initializing speech engine...
[2026-06-05 21:09:19,332.332 INFO    ] 2026-06-05 21:09:19
[2026-06-05 21:09:19,577.577 INFO    ] 2026-06-05 21:09:19
[2026-06-05 21:09:19,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:09:19,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:09:19,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:09:23,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:09:23,158.158 INFO    ] time= 05/06/2026 21:09:23
[2026-06-05 21:09:23,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:09:23,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:09:23,215.215 INFO    ] No existing commands found in stream
[2026-06-05 21:09:28,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:09:28,227.227 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 21:09:28,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:09:28,885.885 INFO    ] Checking for system updates...
[2026-06-05 21:09:28,927.927 INFO    ] 200
[2026-06-05 21:09:28,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:28,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:09:29,000.000 INFO    ] No update needed
[2026-06-05 21:09:29,003.003 INFO    ] Checking for camera pi updates...
[2026-06-05 21:09:29,042.042 INFO    ] 200
[2026-06-05 21:09:29,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:29,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:09:29,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:09:29,164.164 INFO    ] No camera update needed
[2026-06-05 21:09:29,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:09:29,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:09:29,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:09:29,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:09:31,223.223 INFO    ] ================================================
[2026-06-05 21:09:31,238.238 INFO    ] Launching Daemon at Fri Jun  5 21:09:31 IST 2026
[2026-06-05 21:09:31,249.249 INFO    ] ================================================
[2026-06-05 21:09:31,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:09:31
[2026-06-05 21:09:32,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:09:32,717.717 INFO    ] Initializing speech engine...
[2026-06-05 21:09:32,740.740 INFO    ] 2026-06-05 21:09:32
[2026-06-05 21:09:33,046.046 INFO    ] 2026-06-05 21:09:33
[2026-06-05 21:09:33,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:09:33,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:09:33,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:09:33,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:09:33,580.580 INFO    ] time= 05/06/2026 21:09:33
[2026-06-05 21:09:33,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:09:33,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:09:33,763.763 INFO    ] No existing commands found in stream
[2026-06-05 21:09:38,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:09:38,802.802 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 21:09:41,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:09:41,816.816 INFO    ] Checking for system updates...
[2026-06-05 21:09:41,857.857 INFO    ] 200
[2026-06-05 21:09:41,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:41,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:09:41,922.922 INFO    ] No update needed
[2026-06-05 21:09:41,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 21:09:41,960.960 INFO    ] 200
[2026-06-05 21:09:41,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:42,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:09:42,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:09:42,062.062 INFO    ] No camera update needed
[2026-06-05 21:09:42,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:09:42,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:09:42,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:09:42,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:09:44,119.119 INFO    ] ================================================
[2026-06-05 21:09:44,135.135 INFO    ] Launching Daemon at Fri Jun  5 21:09:44 IST 2026
[2026-06-05 21:09:44,145.145 INFO    ] ================================================
[2026-06-05 21:09:44,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:09:44
[2026-06-05 21:09:45,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:09:45,567.567 INFO    ] Initializing speech engine...
[2026-06-05 21:09:45,576.576 INFO    ] 2026-06-05 21:09:45
[2026-06-05 21:09:45,822.822 INFO    ] 2026-06-05 21:09:45
[2026-06-05 21:09:45,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:09:46,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:09:46,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:09:46,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:09:46,318.318 INFO    ] time= 05/06/2026 21:09:46
[2026-06-05 21:09:46,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:09:46,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:09:46,528.528 INFO    ] No existing commands found in stream
[2026-06-05 21:09:51,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:09:51,546.546 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 21:09:55,158.158 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:09:55,161.161 INFO    ] Checking for system updates...
[2026-06-05 21:09:55,201.201 INFO    ] 200
[2026-06-05 21:09:55,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:55,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:09:55,258.258 INFO    ] No update needed
[2026-06-05 21:09:55,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 21:09:55,299.299 INFO    ] 200
[2026-06-05 21:09:55,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:09:55,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:09:55,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:09:55,377.377 INFO    ] No camera update needed
[2026-06-05 21:09:55,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:09:55,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:09:55,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:09:55,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:09:57,434.434 INFO    ] ================================================
[2026-06-05 21:09:57,450.450 INFO    ] Launching Daemon at Fri Jun  5 21:09:57 IST 2026
[2026-06-05 21:09:57,460.460 INFO    ] ================================================
[2026-06-05 21:09:58,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:09:58
[2026-06-05 21:09:58,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:09:58,893.893 INFO    ] Initializing speech engine...
[2026-06-05 21:09:58,908.908 INFO    ] 2026-06-05 21:09:58
[2026-06-05 21:09:59,187.187 INFO    ] 2026-06-05 21:09:59
[2026-06-05 21:09:59,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:09:59,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:09:59,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:09:59,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:09:59,731.731 INFO    ] time= 05/06/2026 21:09:59
[2026-06-05 21:09:59,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:09:59,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:09:59,884.884 INFO    ] No existing commands found in stream
[2026-06-05 21:10:04,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:10:04,909.909 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 21:10:09,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:10:09,175.175 INFO    ] Checking for system updates...
[2026-06-05 21:10:09,217.217 INFO    ] 200
[2026-06-05 21:10:09,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:10:09,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:10:09,301.301 INFO    ] No update needed
[2026-06-05 21:10:09,303.303 INFO    ] Checking for camera pi updates...
[2026-06-05 21:10:09,341.341 INFO    ] 200
[2026-06-05 21:10:09,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:10:09,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:10:09,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:10:09,442.442 INFO    ] No camera update needed
[2026-06-05 21:10:09,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:10:09,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:10:09,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:10:09,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:10:11,502.502 INFO    ] ================================================
[2026-06-05 21:10:11,517.517 INFO    ] Launching Daemon at Fri Jun  5 21:10:11 IST 2026
[2026-06-05 21:10:11,528.528 INFO    ] ================================================
[2026-06-05 21:10:12,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:10:12
[2026-06-05 21:10:12,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:10:12,987.987 INFO    ] Initializing speech engine...
[2026-06-05 21:10:12,996.996 INFO    ] 2026-06-05 21:10:12
[2026-06-05 21:10:13,244.244 INFO    ] 2026-06-05 21:10:13
[2026-06-05 21:10:13,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:10:13,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:10:13,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:10:13,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:10:13,808.808 INFO    ] time= 05/06/2026 21:10:13
[2026-06-05 21:10:13,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:10:13,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:10:13,980.980 INFO    ] No existing commands found in stream
[2026-06-05 21:10:19,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:10:19,009.009 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 21:10:24,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:10:24,002.002 INFO    ] Checking for system updates...
[2026-06-05 21:10:24,039.039 INFO    ] 200
[2026-06-05 21:10:24,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:10:24,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:10:24,098.098 INFO    ] No update needed
[2026-06-05 21:10:24,100.100 INFO    ] Checking for camera pi updates...
[2026-06-05 21:10:24,138.138 INFO    ] 200
[2026-06-05 21:10:24,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:10:24,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:10:24,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:10:24,222.222 INFO    ] No camera update needed
[2026-06-05 21:10:24,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:10:24,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:10:24,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:10:24,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:10:26,282.282 INFO    ] ================================================
[2026-06-05 21:10:26,297.297 INFO    ] Launching Daemon at Fri Jun  5 21:10:26 IST 2026
[2026-06-05 21:10:26,308.308 INFO    ] ================================================
[2026-06-05 21:10:26,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:10:26
[2026-06-05 21:10:27,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:10:27,960.960 INFO    ] Initializing speech engine...
[2026-06-05 21:10:27,967.967 INFO    ] 2026-06-05 21:10:27
[2026-06-05 21:10:28,277.277 INFO    ] 2026-06-05 21:10:28
[2026-06-05 21:10:28,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:10:28,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:10:28,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:10:28,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:10:28,835.835 INFO    ] time= 05/06/2026 21:10:28
[2026-06-05 21:10:28,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:10:28,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:10:29,047.047 INFO    ] No existing commands found in stream
[2026-06-05 21:10:34,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:10:34,076.076 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-05 21:10:35,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:10:35,876.876 INFO    ] Checking for system updates...
[2026-06-05 21:10:35,914.914 INFO    ] 200
[2026-06-05 21:10:35,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:10:35,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:10:35,993.993 INFO    ] No update needed
[2026-06-05 21:10:35,997.997 INFO    ] Checking for camera pi updates...
[2026-06-05 21:10:36,036.036 INFO    ] 200
[2026-06-05 21:10:36,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:10:36,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:10:36,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:10:36,148.148 INFO    ] No camera update needed
[2026-06-05 21:10:36,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:10:36,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:10:36,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:10:36,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:10:38,209.209 INFO    ] ================================================
[2026-06-05 21:10:38,224.224 INFO    ] Launching Daemon at Fri Jun  5 21:10:38 IST 2026
[2026-06-05 21:10:38,236.236 INFO    ] ================================================
[2026-06-05 21:10:38,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:10:38
[2026-06-05 21:10:39,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:10:39,661.661 INFO    ] Initializing speech engine...
[2026-06-05 21:10:39,668.668 INFO    ] 2026-06-05 21:10:39
[2026-06-05 21:10:39,966.966 INFO    ] 2026-06-05 21:10:39
[2026-06-05 21:10:40,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:10:40,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:10:40,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:10:40,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:10:40,396.396 INFO    ] time= 05/06/2026 21:10:40
[2026-06-05 21:10:40,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:10:40,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:10:40,545.545 INFO    ] No existing commands found in stream
[2026-06-05 21:10:45,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:10:45,579.579 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-05 21:10:49,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:10:49,472.472 INFO    ] Checking for system updates...
[2026-06-05 21:10:49,510.510 INFO    ] 200
[2026-06-05 21:10:49,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:10:49,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:10:49,577.577 INFO    ] No update needed
[2026-06-05 21:10:49,580.580 INFO    ] Checking for camera pi updates...
[2026-06-05 21:10:49,619.619 INFO    ] 200
[2026-06-05 21:10:49,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:10:49,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:10:49,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:10:49,721.721 INFO    ] No camera update needed
[2026-06-05 21:10:49,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:10:49,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:10:49,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:10:49,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:10:51,780.780 INFO    ] ================================================
[2026-06-05 21:10:51,796.796 INFO    ] Launching Daemon at Fri Jun  5 21:10:51 IST 2026
[2026-06-05 21:10:51,807.807 INFO    ] ================================================
[2026-06-05 21:10:52,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:10:52
[2026-06-05 21:10:53,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:10:53,284.284 INFO    ] Initializing speech engine...
[2026-06-05 21:10:53,294.294 INFO    ] 2026-06-05 21:10:53
[2026-06-05 21:10:53,557.557 INFO    ] 2026-06-05 21:10:53
[2026-06-05 21:10:53,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:10:54,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:10:54,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:10:55,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:10:55,281.281 INFO    ] time= 05/06/2026 21:10:55
[2026-06-05 21:10:55,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:10:55,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:10:55,441.441 INFO    ] No existing commands found in stream
[2026-06-05 21:11:00,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:11:00,467.467 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 21:11:03,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:11:03,291.291 INFO    ] Checking for system updates...
[2026-06-05 21:11:03,338.338 INFO    ] 200
[2026-06-05 21:11:03,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:03,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:11:03,412.412 INFO    ] No update needed
[2026-06-05 21:11:03,415.415 INFO    ] Checking for camera pi updates...
[2026-06-05 21:11:03,452.452 INFO    ] 200
[2026-06-05 21:11:03,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:03,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:11:03,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:11:03,566.566 INFO    ] No camera update needed
[2026-06-05 21:11:03,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:11:03,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:11:03,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:11:03,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:11:05,620.620 INFO    ] ================================================
[2026-06-05 21:11:05,635.635 INFO    ] Launching Daemon at Fri Jun  5 21:11:05 IST 2026
[2026-06-05 21:11:05,646.646 INFO    ] ================================================
[2026-06-05 21:11:06,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:11:06
[2026-06-05 21:11:06,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:11:07,100.100 INFO    ] Initializing speech engine...
[2026-06-05 21:11:07,110.110 INFO    ] 2026-06-05 21:11:07
[2026-06-05 21:11:07,365.365 INFO    ] 2026-06-05 21:11:07
[2026-06-05 21:11:07,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:11:07,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:11:07,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:11:07,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:11:07,800.800 INFO    ] time= 05/06/2026 21:11:07
[2026-06-05 21:11:07,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:11:07,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:11:07,948.948 INFO    ] No existing commands found in stream
[2026-06-05 21:11:12,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:11:12,973.973 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-05 21:11:14,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:11:14,058.058 INFO    ] Checking for system updates...
[2026-06-05 21:11:14,094.094 INFO    ] 200
[2026-06-05 21:11:14,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:14,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:11:14,152.152 INFO    ] No update needed
[2026-06-05 21:11:14,155.155 INFO    ] Checking for camera pi updates...
[2026-06-05 21:11:14,188.188 INFO    ] 200
[2026-06-05 21:11:14,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:14,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:11:14,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:11:14,308.308 INFO    ] No camera update needed
[2026-06-05 21:11:14,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:11:14,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:11:14,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:11:14,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:11:16,362.362 INFO    ] ================================================
[2026-06-05 21:11:16,378.378 INFO    ] Launching Daemon at Fri Jun  5 21:11:16 IST 2026
[2026-06-05 21:11:16,388.388 INFO    ] ================================================
[2026-06-05 21:11:17,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:11:17
[2026-06-05 21:11:17,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:11:17,967.967 INFO    ] Initializing speech engine...
[2026-06-05 21:11:17,986.986 INFO    ] 2026-06-05 21:11:17
[2026-06-05 21:11:18,238.238 INFO    ] 2026-06-05 21:11:18
[2026-06-05 21:11:18,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:11:18,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:11:18,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:11:18,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:11:18,791.791 INFO    ] time= 05/06/2026 21:11:18
[2026-06-05 21:11:18,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:11:18,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:11:18,949.949 INFO    ] No existing commands found in stream
[2026-06-05 21:11:23,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:11:23,976.976 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 21:11:26,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:11:26,119.119 INFO    ] Checking for system updates...
[2026-06-05 21:11:26,156.156 INFO    ] 200
[2026-06-05 21:11:26,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:26,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:11:26,214.214 INFO    ] No update needed
[2026-06-05 21:11:26,217.217 INFO    ] Checking for camera pi updates...
[2026-06-05 21:11:26,259.259 INFO    ] 200
[2026-06-05 21:11:26,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:26,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:11:26,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:11:26,360.360 INFO    ] No camera update needed
[2026-06-05 21:11:26,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:11:26,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:11:26,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:11:26,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:11:28,417.417 INFO    ] ================================================
[2026-06-05 21:11:28,432.432 INFO    ] Launching Daemon at Fri Jun  5 21:11:28 IST 2026
[2026-06-05 21:11:28,442.442 INFO    ] ================================================
[2026-06-05 21:11:29,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:11:29
[2026-06-05 21:11:29,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:11:29,892.892 INFO    ] Initializing speech engine...
[2026-06-05 21:11:29,901.901 INFO    ] 2026-06-05 21:11:29
[2026-06-05 21:11:30,196.196 INFO    ] 2026-06-05 21:11:30
[2026-06-05 21:11:30,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:11:30,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:11:30,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:11:30,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:11:30,691.691 INFO    ] time= 05/06/2026 21:11:30
[2026-06-05 21:11:30,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:11:30,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:11:30,971.971 INFO    ] No existing commands found in stream
[2026-06-05 21:11:35,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:11:35,992.992 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 21:11:37,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:11:37,332.332 INFO    ] Checking for system updates...
[2026-06-05 21:11:37,370.370 INFO    ] 200
[2026-06-05 21:11:37,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:37,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:11:37,432.432 INFO    ] No update needed
[2026-06-05 21:11:37,435.435 INFO    ] Checking for camera pi updates...
[2026-06-05 21:11:37,469.469 INFO    ] 200
[2026-06-05 21:11:37,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:37,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:11:37,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:11:37,548.548 INFO    ] No camera update needed
[2026-06-05 21:11:37,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:11:37,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:11:37,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:11:37,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:11:39,604.604 INFO    ] ================================================
[2026-06-05 21:11:39,618.618 INFO    ] Launching Daemon at Fri Jun  5 21:11:39 IST 2026
[2026-06-05 21:11:39,629.629 INFO    ] ================================================
[2026-06-05 21:11:40,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:11:40
[2026-06-05 21:11:40,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:11:41,255.255 INFO    ] Initializing speech engine...
[2026-06-05 21:11:41,266.266 INFO    ] 2026-06-05 21:11:41
[2026-06-05 21:11:41,546.546 INFO    ] 2026-06-05 21:11:41
[2026-06-05 21:11:41,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:11:41,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:11:41,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:11:42,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:11:42,092.092 INFO    ] time= 05/06/2026 21:11:42
[2026-06-05 21:11:42,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:11:42,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:11:42,246.246 INFO    ] No existing commands found in stream
[2026-06-05 21:11:47,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:11:47,267.267 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 21:11:50,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:11:50,490.490 INFO    ] Checking for system updates...
[2026-06-05 21:11:50,526.526 INFO    ] 200
[2026-06-05 21:11:50,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:50,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:11:50,583.583 INFO    ] No update needed
[2026-06-05 21:11:50,585.585 INFO    ] Checking for camera pi updates...
[2026-06-05 21:11:50,623.623 INFO    ] 200
[2026-06-05 21:11:50,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:11:50,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:11:50,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:11:50,733.733 INFO    ] No camera update needed
[2026-06-05 21:11:50,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:11:50,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:11:50,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:11:50,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:11:52,791.791 INFO    ] ================================================
[2026-06-05 21:11:52,807.807 INFO    ] Launching Daemon at Fri Jun  5 21:11:52 IST 2026
[2026-06-05 21:11:52,818.818 INFO    ] ================================================
[2026-06-05 21:11:53,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:11:53
[2026-06-05 21:11:53,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:11:54,216.216 INFO    ] Initializing speech engine...
[2026-06-05 21:11:54,235.235 INFO    ] 2026-06-05 21:11:54
[2026-06-05 21:11:54,493.493 INFO    ] 2026-06-05 21:11:54
[2026-06-05 21:11:54,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:11:54,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:11:54,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:11:54,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:11:54,969.969 INFO    ] time= 05/06/2026 21:11:54
[2026-06-05 21:11:55,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:11:55,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:11:55,210.210 INFO    ] No existing commands found in stream
[2026-06-05 21:12:00,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:12:00,235.235 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 21:12:03,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:12:03,960.960 INFO    ] Checking for system updates...
[2026-06-05 21:12:03,997.997 INFO    ] 200
[2026-06-05 21:12:03,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:04,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:12:04,055.055 INFO    ] No update needed
[2026-06-05 21:12:04,058.058 INFO    ] Checking for camera pi updates...
[2026-06-05 21:12:04,099.099 INFO    ] 200
[2026-06-05 21:12:04,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:04,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:12:04,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:12:04,196.196 INFO    ] No camera update needed
[2026-06-05 21:12:04,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:12:04,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:12:04,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:12:04,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:12:06,253.253 INFO    ] ================================================
[2026-06-05 21:12:06,269.269 INFO    ] Launching Daemon at Fri Jun  5 21:12:06 IST 2026
[2026-06-05 21:12:06,280.280 INFO    ] ================================================
[2026-06-05 21:12:06,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:12:06
[2026-06-05 21:12:07,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:12:07,773.773 INFO    ] Initializing speech engine...
[2026-06-05 21:12:07,789.789 INFO    ] 2026-06-05 21:12:07
[2026-06-05 21:12:08,050.050 INFO    ] 2026-06-05 21:12:08
[2026-06-05 21:12:08,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:12:08,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:12:08,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:12:08,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:12:08,535.535 INFO    ] time= 05/06/2026 21:12:08
[2026-06-05 21:12:08,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:12:08,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:12:08,750.750 INFO    ] No existing commands found in stream
[2026-06-05 21:12:13,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:12:13,774.774 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 21:12:15,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:12:15,700.700 INFO    ] Checking for system updates...
[2026-06-05 21:12:15,736.736 INFO    ] 200
[2026-06-05 21:12:15,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:15,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:12:15,794.794 INFO    ] No update needed
[2026-06-05 21:12:15,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 21:12:15,830.830 INFO    ] 200
[2026-06-05 21:12:15,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:15,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:12:15,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:12:15,930.930 INFO    ] No camera update needed
[2026-06-05 21:12:15,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:12:15,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:12:15,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:12:15,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:12:17,987.987 INFO    ] ================================================
[2026-06-05 21:12:18,002.002 INFO    ] Launching Daemon at Fri Jun  5 21:12:17 IST 2026
[2026-06-05 21:12:18,014.014 INFO    ] ================================================
[2026-06-05 21:12:18,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:12:18
[2026-06-05 21:12:19,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:12:19,463.463 INFO    ] Initializing speech engine...
[2026-06-05 21:12:19,472.472 INFO    ] 2026-06-05 21:12:19
[2026-06-05 21:12:19,724.724 INFO    ] 2026-06-05 21:12:19
[2026-06-05 21:12:19,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:12:20,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:12:20,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:12:20,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:12:20,213.213 INFO    ] time= 05/06/2026 21:12:20
[2026-06-05 21:12:20,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:12:20,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:12:20,412.412 INFO    ] No existing commands found in stream
[2026-06-05 21:12:25,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:12:25,439.439 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-05 21:12:30,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:12:30,133.133 INFO    ] Checking for system updates...
[2026-06-05 21:12:30,169.169 INFO    ] 200
[2026-06-05 21:12:30,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:30,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:12:30,233.233 INFO    ] No update needed
[2026-06-05 21:12:30,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 21:12:30,269.269 INFO    ] 200
[2026-06-05 21:12:30,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:30,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:12:30,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:12:30,383.383 INFO    ] No camera update needed
[2026-06-05 21:12:30,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:12:30,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:12:30,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:12:30,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:12:32,439.439 INFO    ] ================================================
[2026-06-05 21:12:32,456.456 INFO    ] Launching Daemon at Fri Jun  5 21:12:32 IST 2026
[2026-06-05 21:12:32,468.468 INFO    ] ================================================
[2026-06-05 21:12:33,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:12:33
[2026-06-05 21:12:33,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:12:34,096.096 INFO    ] Initializing speech engine...
[2026-06-05 21:12:34,111.111 INFO    ] 2026-06-05 21:12:34
[2026-06-05 21:12:34,423.423 INFO    ] 2026-06-05 21:12:34
[2026-06-05 21:12:34,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:12:34,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:12:34,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:12:34,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:12:34,948.948 INFO    ] time= 05/06/2026 21:12:34
[2026-06-05 21:12:34,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:12:34,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:12:35,102.102 INFO    ] No existing commands found in stream
[2026-06-05 21:12:40,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:12:40,118.118 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 21:12:42,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:12:42,432.432 INFO    ] Checking for system updates...
[2026-06-05 21:12:42,470.470 INFO    ] 200
[2026-06-05 21:12:42,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:42,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:12:42,532.532 INFO    ] No update needed
[2026-06-05 21:12:42,535.535 INFO    ] Checking for camera pi updates...
[2026-06-05 21:12:42,570.570 INFO    ] 200
[2026-06-05 21:12:42,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:42,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:12:42,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:12:42,781.781 INFO    ] No camera update needed
[2026-06-05 21:12:42,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:12:42,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:12:42,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:12:42,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:12:44,842.842 INFO    ] ================================================
[2026-06-05 21:12:44,858.858 INFO    ] Launching Daemon at Fri Jun  5 21:12:44 IST 2026
[2026-06-05 21:12:44,869.869 INFO    ] ================================================
[2026-06-05 21:12:45,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:12:45
[2026-06-05 21:12:46,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:12:46,366.366 INFO    ] Initializing speech engine...
[2026-06-05 21:12:46,373.373 INFO    ] 2026-06-05 21:12:46
[2026-06-05 21:12:46,640.640 INFO    ] 2026-06-05 21:12:46
[2026-06-05 21:12:46,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:12:46,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:12:46,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:12:47,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:12:47,120.120 INFO    ] time= 05/06/2026 21:12:47
[2026-06-05 21:12:47,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:12:47,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:12:47,341.341 INFO    ] No existing commands found in stream
[2026-06-05 21:12:52,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:12:52,359.359 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 21:12:55,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:12:55,490.490 INFO    ] Checking for system updates...
[2026-06-05 21:12:55,527.527 INFO    ] 200
[2026-06-05 21:12:55,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:55,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:12:55,585.585 INFO    ] No update needed
[2026-06-05 21:12:55,587.587 INFO    ] Checking for camera pi updates...
[2026-06-05 21:12:55,625.625 INFO    ] 200
[2026-06-05 21:12:55,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:12:55,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:12:55,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:12:55,731.731 INFO    ] No camera update needed
[2026-06-05 21:12:55,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:12:55,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:12:55,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:12:55,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:12:57,787.787 INFO    ] ================================================
[2026-06-05 21:12:57,802.802 INFO    ] Launching Daemon at Fri Jun  5 21:12:57 IST 2026
[2026-06-05 21:12:57,812.812 INFO    ] ================================================
[2026-06-05 21:12:58,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:12:58
[2026-06-05 21:12:58,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:12:59,257.257 INFO    ] Initializing speech engine...
[2026-06-05 21:12:59,266.266 INFO    ] 2026-06-05 21:12:59
[2026-06-05 21:12:59,512.512 INFO    ] 2026-06-05 21:12:59
[2026-06-05 21:12:59,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:13:00,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:13:00,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:13:00,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:13:00,744.744 INFO    ] time= 05/06/2026 21:13:00
[2026-06-05 21:13:00,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:13:00,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:13:00,876.876 INFO    ] No existing commands found in stream
[2026-06-05 21:13:05,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:13:05,893.893 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 21:13:09,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:13:09,301.301 INFO    ] Checking for system updates...
[2026-06-05 21:13:09,340.340 INFO    ] 200
[2026-06-05 21:13:09,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:13:09,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:13:09,405.405 INFO    ] No update needed
[2026-06-05 21:13:09,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 21:13:09,441.441 INFO    ] 200
[2026-06-05 21:13:09,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:13:09,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:13:09,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:13:09,535.535 INFO    ] No camera update needed
[2026-06-05 21:13:09,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:13:09,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:13:09,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:13:09,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:13:11,595.595 INFO    ] ================================================
[2026-06-05 21:13:11,616.616 INFO    ] Launching Daemon at Fri Jun  5 21:13:11 IST 2026
[2026-06-05 21:13:11,627.627 INFO    ] ================================================
[2026-06-05 21:13:12,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:13:12
[2026-06-05 21:13:12,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:13:13,066.066 INFO    ] Initializing speech engine...
[2026-06-05 21:13:13,079.079 INFO    ] 2026-06-05 21:13:13
[2026-06-05 21:13:13,364.364 INFO    ] 2026-06-05 21:13:13
[2026-06-05 21:13:13,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:13:13,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:13:13,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:13:13,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:13:13,857.857 INFO    ] time= 05/06/2026 21:13:13
[2026-06-05 21:13:13,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:13:13,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:13:14,007.007 INFO    ] No existing commands found in stream
[2026-06-05 21:13:19,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:13:19,031.031 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-05 21:13:23,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:13:23,431.431 INFO    ] Checking for system updates...
[2026-06-05 21:13:23,469.469 INFO    ] 200
[2026-06-05 21:13:23,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:13:23,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:13:23,526.526 INFO    ] No update needed
[2026-06-05 21:13:23,529.529 INFO    ] Checking for camera pi updates...
[2026-06-05 21:13:23,567.567 INFO    ] 200
[2026-06-05 21:13:23,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:13:23,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:13:23,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:13:23,666.666 INFO    ] No camera update needed
[2026-06-05 21:13:23,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:13:23,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:13:23,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:13:23,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:13:25,726.726 INFO    ] ================================================
[2026-06-05 21:13:25,741.741 INFO    ] Launching Daemon at Fri Jun  5 21:13:25 IST 2026
[2026-06-05 21:13:25,752.752 INFO    ] ================================================
[2026-06-05 21:13:26,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:13:26
[2026-06-05 21:13:26,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:13:27,174.174 INFO    ] Initializing speech engine...
[2026-06-05 21:13:27,193.193 INFO    ] 2026-06-05 21:13:27
[2026-06-05 21:13:27,444.444 INFO    ] 2026-06-05 21:13:27
[2026-06-05 21:13:27,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:13:30,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:13:30,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:13:30,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:13:30,940.940 INFO    ] time= 05/06/2026 21:13:30
[2026-06-05 21:13:30,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:13:30,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:13:31,008.008 INFO    ] No existing commands found in stream
[2026-06-05 21:13:36,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:13:36,020.020 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 21:13:38,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:13:38,752.752 INFO    ] Checking for system updates...
[2026-06-05 21:13:38,787.787 INFO    ] 200
[2026-06-05 21:13:38,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:13:38,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:13:38,850.850 INFO    ] No update needed
[2026-06-05 21:13:38,853.853 INFO    ] Checking for camera pi updates...
[2026-06-05 21:13:38,892.892 INFO    ] 200
[2026-06-05 21:13:38,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:13:38,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:13:38,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:13:39,001.001 INFO    ] No camera update needed
[2026-06-05 21:13:39,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:13:39,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:13:39,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:13:39,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:13:41,061.061 INFO    ] ================================================
[2026-06-05 21:13:41,076.076 INFO    ] Launching Daemon at Fri Jun  5 21:13:41 IST 2026
[2026-06-05 21:13:41,087.087 INFO    ] ================================================
[2026-06-05 21:13:41,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:13:41
[2026-06-05 21:13:42,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:13:42,583.583 INFO    ] Initializing speech engine...
[2026-06-05 21:13:42,600.600 INFO    ] 2026-06-05 21:13:42
[2026-06-05 21:13:42,867.867 INFO    ] 2026-06-05 21:13:42
[2026-06-05 21:13:42,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:13:43,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:13:43,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:13:43,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:13:43,287.287 INFO    ] time= 05/06/2026 21:13:43
[2026-06-05 21:13:43,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:13:43,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:13:43,456.456 INFO    ] No existing commands found in stream
[2026-06-05 21:13:48,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:13:48,489.489 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-05 21:13:51,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:13:51,561.561 INFO    ] Checking for system updates...
[2026-06-05 21:13:51,598.598 INFO    ] 200
[2026-06-05 21:13:51,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:13:51,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:13:51,661.661 INFO    ] No update needed
[2026-06-05 21:13:51,663.663 INFO    ] Checking for camera pi updates...
[2026-06-05 21:13:51,697.697 INFO    ] 200
[2026-06-05 21:13:51,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:13:51,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:13:51,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:13:51,794.794 INFO    ] No camera update needed
[2026-06-05 21:13:51,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:13:51,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:13:51,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:13:51,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:13:53,849.849 INFO    ] ================================================
[2026-06-05 21:13:53,864.864 INFO    ] Launching Daemon at Fri Jun  5 21:13:53 IST 2026
[2026-06-05 21:13:53,875.875 INFO    ] ================================================
[2026-06-05 21:13:54,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:13:54
[2026-06-05 21:13:55,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:13:55,339.339 INFO    ] Initializing speech engine...
[2026-06-05 21:13:55,346.346 INFO    ] 2026-06-05 21:13:55
[2026-06-05 21:13:55,604.604 INFO    ] 2026-06-05 21:13:55
[2026-06-05 21:13:55,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:13:55,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:13:55,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:13:56,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:13:56,083.083 INFO    ] time= 05/06/2026 21:13:56
[2026-06-05 21:13:56,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:13:56,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:13:56,272.272 INFO    ] No existing commands found in stream
[2026-06-05 21:14:01,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:14:01,305.305 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 21:14:05,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:14:05,514.514 INFO    ] Checking for system updates...
[2026-06-05 21:14:05,550.550 INFO    ] 200
[2026-06-05 21:14:05,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:05,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:14:05,614.614 INFO    ] No update needed
[2026-06-05 21:14:05,617.617 INFO    ] Checking for camera pi updates...
[2026-06-05 21:14:05,651.651 INFO    ] 200
[2026-06-05 21:14:05,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:05,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:14:05,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:14:05,751.751 INFO    ] No camera update needed
[2026-06-05 21:14:05,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:14:05,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:14:05,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:14:05,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:14:07,806.806 INFO    ] ================================================
[2026-06-05 21:14:07,821.821 INFO    ] Launching Daemon at Fri Jun  5 21:14:07 IST 2026
[2026-06-05 21:14:07,832.832 INFO    ] ================================================
[2026-06-05 21:14:08,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:14:08
[2026-06-05 21:14:09,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:14:09,285.285 INFO    ] Initializing speech engine...
[2026-06-05 21:14:09,294.294 INFO    ] 2026-06-05 21:14:09
[2026-06-05 21:14:09,551.551 INFO    ] 2026-06-05 21:14:09
[2026-06-05 21:14:09,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:14:09,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:14:09,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:14:10,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:14:10,100.100 INFO    ] time= 05/06/2026 21:14:10
[2026-06-05 21:14:10,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:14:10,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:14:10,256.256 INFO    ] No existing commands found in stream
[2026-06-05 21:14:15,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:14:15,273.273 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 21:14:18,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:14:18,450.450 INFO    ] Checking for system updates...
[2026-06-05 21:14:18,487.487 INFO    ] 200
[2026-06-05 21:14:18,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:18,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:14:18,555.555 INFO    ] No update needed
[2026-06-05 21:14:18,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 21:14:18,593.593 INFO    ] 200
[2026-06-05 21:14:18,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:18,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:14:18,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:14:18,696.696 INFO    ] No camera update needed
[2026-06-05 21:14:18,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:14:18,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:14:18,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:14:18,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:14:20,753.753 INFO    ] ================================================
[2026-06-05 21:14:20,768.768 INFO    ] Launching Daemon at Fri Jun  5 21:14:20 IST 2026
[2026-06-05 21:14:20,779.779 INFO    ] ================================================
[2026-06-05 21:14:21,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:14:21
[2026-06-05 21:14:21,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:14:22,200.200 INFO    ] Initializing speech engine...
[2026-06-05 21:14:22,210.210 INFO    ] 2026-06-05 21:14:22
[2026-06-05 21:14:22,468.468 INFO    ] 2026-06-05 21:14:22
[2026-06-05 21:14:22,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:14:22,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:14:22,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:14:22,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:14:23,008.008 INFO    ] time= 05/06/2026 21:14:22
[2026-06-05 21:14:23,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:14:23,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:14:23,164.164 INFO    ] No existing commands found in stream
[2026-06-05 21:14:28,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:14:28,181.181 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 21:14:31,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:14:31,375.375 INFO    ] Checking for system updates...
[2026-06-05 21:14:31,415.415 INFO    ] 200
[2026-06-05 21:14:31,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:31,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:14:31,473.473 INFO    ] No update needed
[2026-06-05 21:14:31,475.475 INFO    ] Checking for camera pi updates...
[2026-06-05 21:14:31,510.510 INFO    ] 200
[2026-06-05 21:14:31,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:31,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:14:31,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:14:31,609.609 INFO    ] No camera update needed
[2026-06-05 21:14:31,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:14:31,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:14:31,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:14:31,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:14:33,667.667 INFO    ] ================================================
[2026-06-05 21:14:33,683.683 INFO    ] Launching Daemon at Fri Jun  5 21:14:33 IST 2026
[2026-06-05 21:14:33,694.694 INFO    ] ================================================
[2026-06-05 21:14:34,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:14:34
[2026-06-05 21:14:34,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:14:35,147.147 INFO    ] Initializing speech engine...
[2026-06-05 21:14:35,156.156 INFO    ] 2026-06-05 21:14:35
[2026-06-05 21:14:35,402.402 INFO    ] 2026-06-05 21:14:35
[2026-06-05 21:14:35,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:14:35,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:14:35,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:14:35,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:14:35,918.918 INFO    ] time= 05/06/2026 21:14:35
[2026-06-05 21:14:35,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:14:35,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:14:36,124.124 INFO    ] No existing commands found in stream
[2026-06-05 21:14:41,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:14:41,153.153 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 21:14:42,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:14:42,249.249 INFO    ] Checking for system updates...
[2026-06-05 21:14:42,286.286 INFO    ] 200
[2026-06-05 21:14:42,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:42,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:14:42,345.345 INFO    ] No update needed
[2026-06-05 21:14:42,347.347 INFO    ] Checking for camera pi updates...
[2026-06-05 21:14:42,385.385 INFO    ] 200
[2026-06-05 21:14:42,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:42,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:14:42,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:14:42,482.482 INFO    ] No camera update needed
[2026-06-05 21:14:42,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:14:42,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:14:42,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:14:42,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:14:44,540.540 INFO    ] ================================================
[2026-06-05 21:14:44,556.556 INFO    ] Launching Daemon at Fri Jun  5 21:14:44 IST 2026
[2026-06-05 21:14:44,566.566 INFO    ] ================================================
[2026-06-05 21:14:45,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:14:45
[2026-06-05 21:14:45,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:14:45,963.963 INFO    ] Initializing speech engine...
[2026-06-05 21:14:45,971.971 INFO    ] 2026-06-05 21:14:45
[2026-06-05 21:14:46,240.240 INFO    ] 2026-06-05 21:14:46
[2026-06-05 21:14:46,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:14:46,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:14:46,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:14:46,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:14:46,740.740 INFO    ] time= 05/06/2026 21:14:46
[2026-06-05 21:14:46,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:14:46,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:14:46,945.945 INFO    ] No existing commands found in stream
[2026-06-05 21:14:51,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:14:51,974.974 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 21:14:55,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:14:55,013.013 INFO    ] Checking for system updates...
[2026-06-05 21:14:55,049.049 INFO    ] 200
[2026-06-05 21:14:55,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:55,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:14:55,108.108 INFO    ] No update needed
[2026-06-05 21:14:55,110.110 INFO    ] Checking for camera pi updates...
[2026-06-05 21:14:55,145.145 INFO    ] 200
[2026-06-05 21:14:55,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:14:55,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:14:55,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:14:55,337.337 INFO    ] No camera update needed
[2026-06-05 21:14:55,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:14:55,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:14:55,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:14:55,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:14:57,394.394 INFO    ] ================================================
[2026-06-05 21:14:57,409.409 INFO    ] Launching Daemon at Fri Jun  5 21:14:57 IST 2026
[2026-06-05 21:14:57,421.421 INFO    ] ================================================
[2026-06-05 21:14:57,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:14:57
[2026-06-05 21:14:58,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:14:58,852.852 INFO    ] Initializing speech engine...
[2026-06-05 21:14:58,863.863 INFO    ] 2026-06-05 21:14:58
[2026-06-05 21:14:59,115.115 INFO    ] 2026-06-05 21:14:59
[2026-06-05 21:14:59,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:15:00,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:15:00,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:15:01,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:15:01,419.419 INFO    ] time= 05/06/2026 21:15:01
[2026-06-05 21:15:01,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:15:01,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:15:01,497.497 INFO    ] No existing commands found in stream
[2026-06-05 21:15:06,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:15:06,510.510 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 21:15:08,751.751 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:15:08,754.754 INFO    ] Checking for system updates...
[2026-06-05 21:15:08,793.793 INFO    ] 200
[2026-06-05 21:15:08,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:08,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:08,857.857 INFO    ] No update needed
[2026-06-05 21:15:08,860.860 INFO    ] Checking for camera pi updates...
[2026-06-05 21:15:08,896.896 INFO    ] 200
[2026-06-05 21:15:08,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:08,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:15:08,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:09,000.000 INFO    ] No camera update needed
[2026-06-05 21:15:09,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:15:09,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:15:09,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:15:09,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:15:11,062.062 INFO    ] ================================================
[2026-06-05 21:15:11,078.078 INFO    ] Launching Daemon at Fri Jun  5 21:15:11 IST 2026
[2026-06-05 21:15:11,088.088 INFO    ] ================================================
[2026-06-05 21:15:11,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:15:11
[2026-06-05 21:15:12,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:15:12,529.529 INFO    ] Initializing speech engine...
[2026-06-05 21:15:12,540.540 INFO    ] 2026-06-05 21:15:12
[2026-06-05 21:15:12,830.830 INFO    ] 2026-06-05 21:15:12
[2026-06-05 21:15:12,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:15:13,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:15:13,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:15:13,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:15:13,418.418 INFO    ] time= 05/06/2026 21:15:13
[2026-06-05 21:15:13,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:15:13,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:15:13,581.581 INFO    ] No existing commands found in stream
[2026-06-05 21:15:18,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:15:18,609.609 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 21:15:21,716.716 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:15:21,718.718 INFO    ] Checking for system updates...
[2026-06-05 21:15:21,755.755 INFO    ] 200
[2026-06-05 21:15:21,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:21,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:21,813.813 INFO    ] No update needed
[2026-06-05 21:15:21,815.815 INFO    ] Checking for camera pi updates...
[2026-06-05 21:15:21,852.852 INFO    ] 200
[2026-06-05 21:15:21,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:21,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:15:21,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:21,948.948 INFO    ] No camera update needed
[2026-06-05 21:15:21,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:15:21,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:15:21,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:15:21,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:15:24,003.003 INFO    ] ================================================
[2026-06-05 21:15:24,026.026 INFO    ] Launching Daemon at Fri Jun  5 21:15:24 IST 2026
[2026-06-05 21:15:24,044.044 INFO    ] ================================================
[2026-06-05 21:15:24,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:15:24
[2026-06-05 21:15:25,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:15:25,676.676 INFO    ] Initializing speech engine...
[2026-06-05 21:15:25,698.698 INFO    ] 2026-06-05 21:15:25
[2026-06-05 21:15:25,990.990 INFO    ] 2026-06-05 21:15:25
[2026-06-05 21:15:26,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:15:26,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:15:26,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:15:26,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:15:26,541.541 INFO    ] time= 05/06/2026 21:15:26
[2026-06-05 21:15:26,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:15:26,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:15:26,726.726 INFO    ] No existing commands found in stream
[2026-06-05 21:15:31,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:15:31,761.761 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 21:15:35,018.018 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:15:35,022.022 INFO    ] Checking for system updates...
[2026-06-05 21:15:35,060.060 INFO    ] 200
[2026-06-05 21:15:35,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:35,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:35,128.128 INFO    ] No update needed
[2026-06-05 21:15:35,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 21:15:35,166.166 INFO    ] 200
[2026-06-05 21:15:35,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:35,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:15:35,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:35,272.272 INFO    ] No camera update needed
[2026-06-05 21:15:35,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:15:35,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:15:35,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:15:35,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:15:37,338.338 INFO    ] ================================================
[2026-06-05 21:15:37,354.354 INFO    ] Launching Daemon at Fri Jun  5 21:15:37 IST 2026
[2026-06-05 21:15:37,366.366 INFO    ] ================================================
[2026-06-05 21:15:37,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:15:37
[2026-06-05 21:15:38,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:15:38,840.840 INFO    ] Initializing speech engine...
[2026-06-05 21:15:38,860.860 INFO    ] 2026-06-05 21:15:38
[2026-06-05 21:15:39,134.134 INFO    ] 2026-06-05 21:15:39
[2026-06-05 21:15:39,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:15:39,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:15:39,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:15:39,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:15:39,539.539 INFO    ] time= 05/06/2026 21:15:39
[2026-06-05 21:15:39,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:15:39,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:15:39,651.651 INFO    ] No existing commands found in stream
[2026-06-05 21:15:44,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:15:44,690.690 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 21:15:47,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:15:47,578.578 INFO    ] Checking for system updates...
[2026-06-05 21:15:47,618.618 INFO    ] 200
[2026-06-05 21:15:47,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:47,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:47,687.687 INFO    ] No update needed
[2026-06-05 21:15:47,689.689 INFO    ] Checking for camera pi updates...
[2026-06-05 21:15:47,724.724 INFO    ] 200
[2026-06-05 21:15:47,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:47,774.774 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:15:47,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:47,842.842 INFO    ] No camera update needed
[2026-06-05 21:15:47,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:15:47,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:15:47,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:15:47,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:15:49,902.902 INFO    ] ================================================
[2026-06-05 21:15:49,918.918 INFO    ] Launching Daemon at Fri Jun  5 21:15:49 IST 2026
[2026-06-05 21:15:49,929.929 INFO    ] ================================================
[2026-06-05 21:15:50,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:15:50
[2026-06-05 21:15:51,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:15:51,373.373 INFO    ] Initializing speech engine...
[2026-06-05 21:15:51,379.379 INFO    ] 2026-06-05 21:15:51
[2026-06-05 21:15:51,627.627 INFO    ] 2026-06-05 21:15:51
[2026-06-05 21:15:51,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:15:51,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:15:51,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:15:52,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:15:52,035.035 INFO    ] time= 05/06/2026 21:15:52
[2026-06-05 21:15:52,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:15:52,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:15:52,237.237 INFO    ] No existing commands found in stream
[2026-06-05 21:15:57,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:15:57,256.256 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 21:15:58,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:15:58,118.118 INFO    ] Checking for system updates...
[2026-06-05 21:15:58,156.156 INFO    ] 200
[2026-06-05 21:15:58,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:58,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:58,216.216 INFO    ] No update needed
[2026-06-05 21:15:58,219.219 INFO    ] Checking for camera pi updates...
[2026-06-05 21:15:58,256.256 INFO    ] 200
[2026-06-05 21:15:58,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:15:58,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:15:58,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:15:58,366.366 INFO    ] No camera update needed
[2026-06-05 21:15:58,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:15:58,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:15:58,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:15:58,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:16:00,427.427 INFO    ] ================================================
[2026-06-05 21:16:00,441.441 INFO    ] Launching Daemon at Fri Jun  5 21:16:00 IST 2026
[2026-06-05 21:16:00,452.452 INFO    ] ================================================
[2026-06-05 21:16:01,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:16:01
[2026-06-05 21:16:01,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:16:02,216.216 INFO    ] Initializing speech engine...
[2026-06-05 21:16:02,225.225 INFO    ] 2026-06-05 21:16:02
[2026-06-05 21:16:02,499.499 INFO    ] 2026-06-05 21:16:02
[2026-06-05 21:16:02,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:16:02,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:16:02,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:16:02,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:16:03,000.000 INFO    ] time= 05/06/2026 21:16:02
[2026-06-05 21:16:03,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:16:03,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:16:03,141.141 INFO    ] No existing commands found in stream
[2026-06-05 21:16:08,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:16:08,156.156 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 21:16:08,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:16:08,697.697 INFO    ] Checking for system updates...
[2026-06-05 21:16:08,733.733 INFO    ] 200
[2026-06-05 21:16:08,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:08,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:16:08,797.797 INFO    ] No update needed
[2026-06-05 21:16:08,799.799 INFO    ] Checking for camera pi updates...
[2026-06-05 21:16:08,834.834 INFO    ] 200
[2026-06-05 21:16:08,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:08,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:16:08,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:16:08,919.919 INFO    ] No camera update needed
[2026-06-05 21:16:08,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:16:08,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:16:08,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:16:08,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:16:10,979.979 INFO    ] ================================================
[2026-06-05 21:16:11,995.995 INFO    ] Launching Daemon at Fri Jun  5 21:16:10 IST 2026
[2026-06-05 21:16:11,006.006 INFO    ] ================================================
[2026-06-05 21:16:11,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:16:11
[2026-06-05 21:16:12,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:16:12,631.631 INFO    ] Initializing speech engine...
[2026-06-05 21:16:12,643.643 INFO    ] 2026-06-05 21:16:12
[2026-06-05 21:16:12,916.916 INFO    ] 2026-06-05 21:16:12
[2026-06-05 21:16:12,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:16:13,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:16:13,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:16:13,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:16:13,492.492 INFO    ] time= 05/06/2026 21:16:13
[2026-06-05 21:16:13,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:16:13,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:16:13,669.669 INFO    ] No existing commands found in stream
[2026-06-05 21:16:18,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:16:18,699.699 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 21:16:21,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:16:21,616.616 INFO    ] Checking for system updates...
[2026-06-05 21:16:21,655.655 INFO    ] 200
[2026-06-05 21:16:21,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:21,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:16:21,716.716 INFO    ] No update needed
[2026-06-05 21:16:21,718.718 INFO    ] Checking for camera pi updates...
[2026-06-05 21:16:21,757.757 INFO    ] 200
[2026-06-05 21:16:21,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:21,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:16:21,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:16:21,859.859 INFO    ] No camera update needed
[2026-06-05 21:16:21,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:16:21,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:16:21,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:16:21,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:16:23,915.915 INFO    ] ================================================
[2026-06-05 21:16:23,931.931 INFO    ] Launching Daemon at Fri Jun  5 21:16:23 IST 2026
[2026-06-05 21:16:23,942.942 INFO    ] ================================================
[2026-06-05 21:16:24,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:16:24
[2026-06-05 21:16:25,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:16:25,386.386 INFO    ] Initializing speech engine...
[2026-06-05 21:16:25,400.400 INFO    ] 2026-06-05 21:16:25
[2026-06-05 21:16:25,663.663 INFO    ] 2026-06-05 21:16:25
[2026-06-05 21:16:25,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:16:25,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:16:25,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:16:26,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:16:26,097.097 INFO    ] time= 05/06/2026 21:16:26
[2026-06-05 21:16:26,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:16:26,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:16:26,207.207 INFO    ] No existing commands found in stream
[2026-06-05 21:16:31,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:16:31,241.241 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-05 21:16:33,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:16:33,022.022 INFO    ] Checking for system updates...
[2026-06-05 21:16:33,058.058 INFO    ] 200
[2026-06-05 21:16:33,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:33,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:16:33,116.116 INFO    ] No update needed
[2026-06-05 21:16:33,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 21:16:33,153.153 INFO    ] 200
[2026-06-05 21:16:33,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:33,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:16:33,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:16:33,254.254 INFO    ] No camera update needed
[2026-06-05 21:16:33,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:16:33,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:16:33,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:16:33,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:16:35,310.310 INFO    ] ================================================
[2026-06-05 21:16:35,326.326 INFO    ] Launching Daemon at Fri Jun  5 21:16:35 IST 2026
[2026-06-05 21:16:35,337.337 INFO    ] ================================================
[2026-06-05 21:16:35,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:16:35
[2026-06-05 21:16:36,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:16:36,770.770 INFO    ] Initializing speech engine...
[2026-06-05 21:16:36,795.795 INFO    ] 2026-06-05 21:16:36
[2026-06-05 21:16:37,075.075 INFO    ] 2026-06-05 21:16:37
[2026-06-05 21:16:37,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:16:37,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:16:37,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:16:37,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:16:37,593.593 INFO    ] time= 05/06/2026 21:16:37
[2026-06-05 21:16:37,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:16:37,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:16:37,796.796 INFO    ] No existing commands found in stream
[2026-06-05 21:16:42,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:16:42,821.821 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 21:16:45,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:16:45,980.980 INFO    ] Checking for system updates...
[2026-06-05 21:16:46,021.021 INFO    ] 200
[2026-06-05 21:16:46,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:46,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:16:46,105.105 INFO    ] No update needed
[2026-06-05 21:16:46,108.108 INFO    ] Checking for camera pi updates...
[2026-06-05 21:16:46,148.148 INFO    ] 200
[2026-06-05 21:16:46,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:46,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:16:46,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:16:46,247.247 INFO    ] No camera update needed
[2026-06-05 21:16:46,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:16:46,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:16:46,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:16:46,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:16:48,306.306 INFO    ] ================================================
[2026-06-05 21:16:48,322.322 INFO    ] Launching Daemon at Fri Jun  5 21:16:48 IST 2026
[2026-06-05 21:16:48,333.333 INFO    ] ================================================
[2026-06-05 21:16:48,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:16:48
[2026-06-05 21:16:49,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:16:49,879.879 INFO    ] Initializing speech engine...
[2026-06-05 21:16:49,893.893 INFO    ] 2026-06-05 21:16:49
[2026-06-05 21:16:50,206.206 INFO    ] 2026-06-05 21:16:50
[2026-06-05 21:16:50,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:16:50,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:16:50,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:16:50,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:16:50,759.759 INFO    ] time= 05/06/2026 21:16:50
[2026-06-05 21:16:50,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:16:50,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:16:50,904.904 INFO    ] No existing commands found in stream
[2026-06-05 21:16:55,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:16:55,939.939 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 21:16:58,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:16:58,844.844 INFO    ] Checking for system updates...
[2026-06-05 21:16:58,887.887 INFO    ] 200
[2026-06-05 21:16:58,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:58,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:16:58,955.955 INFO    ] No update needed
[2026-06-05 21:16:58,959.959 INFO    ] Checking for camera pi updates...
[2026-06-05 21:16:58,999.999 INFO    ] 200
[2026-06-05 21:16:59,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:16:59,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:16:59,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:16:59,206.206 INFO    ] No camera update needed
[2026-06-05 21:16:59,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:16:59,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:16:59,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:16:59,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:17:01,288.288 INFO    ] ================================================
[2026-06-05 21:17:01,320.320 INFO    ] Launching Daemon at Fri Jun  5 21:17:01 IST 2026
[2026-06-05 21:17:01,353.353 INFO    ] ================================================
[2026-06-05 21:17:02,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:17:02
[2026-06-05 21:17:02,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:17:03,076.076 INFO    ] Initializing speech engine...
[2026-06-05 21:17:03,079.079 INFO    ] 2026-06-05 21:17:03
[2026-06-05 21:17:03,343.343 INFO    ] 2026-06-05 21:17:03
[2026-06-05 21:17:03,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:17:03,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:17:03,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:17:03,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:17:03,910.910 INFO    ] time= 05/06/2026 21:17:03
[2026-06-05 21:17:03,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:17:03,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:17:04,074.074 INFO    ] No existing commands found in stream
[2026-06-05 21:17:09,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:17:09,098.098 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 21:17:13,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:17:13,592.592 INFO    ] Checking for system updates...
[2026-06-05 21:17:13,630.630 INFO    ] 200
[2026-06-05 21:17:13,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:17:13,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:17:13,688.688 INFO    ] No update needed
[2026-06-05 21:17:13,690.690 INFO    ] Checking for camera pi updates...
[2026-06-05 21:17:13,728.728 INFO    ] 200
[2026-06-05 21:17:13,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:17:13,774.774 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:17:13,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:17:13,842.842 INFO    ] No camera update needed
[2026-06-05 21:17:13,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:17:13,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:17:13,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:17:13,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:17:15,915.915 INFO    ] ================================================
[2026-06-05 21:17:15,931.931 INFO    ] Launching Daemon at Fri Jun  5 21:17:15 IST 2026
[2026-06-05 21:17:15,942.942 INFO    ] ================================================
[2026-06-05 21:17:16,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:17:16
[2026-06-05 21:17:17,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:17:17,575.575 INFO    ] Initializing speech engine...
[2026-06-05 21:17:17,586.586 INFO    ] 2026-06-05 21:17:17
[2026-06-05 21:17:17,911.911 INFO    ] 2026-06-05 21:17:17
[2026-06-05 21:17:17,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:17:18,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:17:18,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:17:18,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:17:18,355.355 INFO    ] time= 05/06/2026 21:17:18
[2026-06-05 21:17:18,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:17:18,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:17:18,530.530 INFO    ] No existing commands found in stream
[2026-06-05 21:17:23,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:17:23,559.559 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 21:17:28,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:17:28,045.045 INFO    ] Checking for system updates...
[2026-06-05 21:17:28,082.082 INFO    ] 200
[2026-06-05 21:17:28,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:17:28,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:17:28,143.143 INFO    ] No update needed
[2026-06-05 21:17:28,146.146 INFO    ] Checking for camera pi updates...
[2026-06-05 21:17:28,182.182 INFO    ] 200
[2026-06-05 21:17:28,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:17:28,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:17:28,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:17:28,279.279 INFO    ] No camera update needed
[2026-06-05 21:17:28,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:17:28,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:17:28,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:17:28,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:17:30,339.339 INFO    ] ================================================
[2026-06-05 21:17:30,358.358 INFO    ] Launching Daemon at Fri Jun  5 21:17:30 IST 2026
[2026-06-05 21:17:30,370.370 INFO    ] ================================================
[2026-06-05 21:17:30,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:17:30
[2026-06-05 21:17:31,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:17:31,874.874 INFO    ] Initializing speech engine...
[2026-06-05 21:17:31,900.900 INFO    ] 2026-06-05 21:17:31
[2026-06-05 21:17:32,170.170 INFO    ] 2026-06-05 21:17:32
[2026-06-05 21:17:32,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:17:33,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:17:33,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:17:33,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:17:33,651.651 INFO    ] time= 05/06/2026 21:17:33
[2026-06-05 21:17:33,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:17:33,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:17:33,740.740 INFO    ] No existing commands found in stream
[2026-06-05 21:17:38,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:17:38,753.753 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 21:17:40,523.523 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:17:40,525.525 INFO    ] Checking for system updates...
[2026-06-05 21:17:40,566.566 INFO    ] 200
[2026-06-05 21:17:40,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:17:40,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:17:40,632.632 INFO    ] No update needed
[2026-06-05 21:17:40,634.634 INFO    ] Checking for camera pi updates...
[2026-06-05 21:17:40,669.669 INFO    ] 200
[2026-06-05 21:17:40,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:17:40,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:17:40,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:17:40,772.772 INFO    ] No camera update needed
[2026-06-05 21:17:40,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:17:40,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:17:40,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:17:40,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:17:42,832.832 INFO    ] ================================================
[2026-06-05 21:17:42,848.848 INFO    ] Launching Daemon at Fri Jun  5 21:17:42 IST 2026
[2026-06-05 21:17:42,859.859 INFO    ] ================================================
[2026-06-05 21:17:43,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:17:43
[2026-06-05 21:17:44,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:17:44,276.276 INFO    ] Initializing speech engine...
[2026-06-05 21:17:44,294.294 INFO    ] 2026-06-05 21:17:44
[2026-06-05 21:17:44,546.546 INFO    ] 2026-06-05 21:17:44
[2026-06-05 21:17:44,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:17:44,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:17:44,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:17:44,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:17:45,027.027 INFO    ] time= 05/06/2026 21:17:44
[2026-06-05 21:17:45,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:17:45,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:17:45,253.253 INFO    ] No existing commands found in stream
[2026-06-05 21:17:50,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:17:50,284.284 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 21:17:54,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:17:54,467.467 INFO    ] Checking for system updates...
[2026-06-05 21:17:54,504.504 INFO    ] 200
[2026-06-05 21:17:54,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:17:54,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:17:54,573.573 INFO    ] No update needed
[2026-06-05 21:17:54,576.576 INFO    ] Checking for camera pi updates...
[2026-06-05 21:17:54,612.612 INFO    ] 200
[2026-06-05 21:17:54,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:17:54,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:17:54,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:17:54,712.712 INFO    ] No camera update needed
[2026-06-05 21:17:54,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:17:54,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:17:54,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:17:54,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:17:56,772.772 INFO    ] ================================================
[2026-06-05 21:17:56,788.788 INFO    ] Launching Daemon at Fri Jun  5 21:17:56 IST 2026
[2026-06-05 21:17:56,802.802 INFO    ] ================================================
[2026-06-05 21:17:57,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:17:57
[2026-06-05 21:17:57,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:17:58,242.242 INFO    ] Initializing speech engine...
[2026-06-05 21:17:58,265.265 INFO    ] 2026-06-05 21:17:58
[2026-06-05 21:17:58,520.520 INFO    ] 2026-06-05 21:17:58
[2026-06-05 21:17:58,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:17:58,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:17:58,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:17:59,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:17:59,080.080 INFO    ] time= 05/06/2026 21:17:59
[2026-06-05 21:17:59,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:17:59,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:17:59,225.225 INFO    ] No existing commands found in stream
[2026-06-05 21:18:04,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:18:04,238.238 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 21:18:06,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:18:06,111.111 INFO    ] Checking for system updates...
[2026-06-05 21:18:06,148.148 INFO    ] 200
[2026-06-05 21:18:06,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:06,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:18:06,206.206 INFO    ] No update needed
[2026-06-05 21:18:06,208.208 INFO    ] Checking for camera pi updates...
[2026-06-05 21:18:06,244.244 INFO    ] 200
[2026-06-05 21:18:06,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:06,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:18:06,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:18:06,346.346 INFO    ] No camera update needed
[2026-06-05 21:18:06,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:18:06,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:18:06,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:18:06,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:18:08,405.405 INFO    ] ================================================
[2026-06-05 21:18:08,420.420 INFO    ] Launching Daemon at Fri Jun  5 21:18:08 IST 2026
[2026-06-05 21:18:08,432.432 INFO    ] ================================================
[2026-06-05 21:18:09,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:18:09
[2026-06-05 21:18:09,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:18:09,861.861 INFO    ] Initializing speech engine...
[2026-06-05 21:18:09,870.870 INFO    ] 2026-06-05 21:18:09
[2026-06-05 21:18:10,167.167 INFO    ] 2026-06-05 21:18:10
[2026-06-05 21:18:10,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:18:10,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:18:10,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:18:10,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:18:10,594.594 INFO    ] time= 05/06/2026 21:18:10
[2026-06-05 21:18:10,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:18:10,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:18:10,681.681 INFO    ] No existing commands found in stream
[2026-06-05 21:18:15,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:18:15,699.699 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 21:18:17,261.261 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:18:17,264.264 INFO    ] Checking for system updates...
[2026-06-05 21:18:17,300.300 INFO    ] 200
[2026-06-05 21:18:17,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:17,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:18:17,358.358 INFO    ] No update needed
[2026-06-05 21:18:17,365.365 INFO    ] Checking for camera pi updates...
[2026-06-05 21:18:17,399.399 INFO    ] 200
[2026-06-05 21:18:17,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:17,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:18:17,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:18:17,498.498 INFO    ] No camera update needed
[2026-06-05 21:18:17,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:18:17,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:18:17,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:18:17,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:18:19,554.554 INFO    ] ================================================
[2026-06-05 21:18:19,570.570 INFO    ] Launching Daemon at Fri Jun  5 21:18:19 IST 2026
[2026-06-05 21:18:19,581.581 INFO    ] ================================================
[2026-06-05 21:18:20,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:18:20
[2026-06-05 21:18:20,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:18:20,996.996 INFO    ] Initializing speech engine...
[2026-06-05 21:18:21,019.019 INFO    ] 2026-06-05 21:18:21
[2026-06-05 21:18:21,276.276 INFO    ] 2026-06-05 21:18:21
[2026-06-05 21:18:21,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:18:21,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:18:21,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:18:21,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:18:21,789.789 INFO    ] time= 05/06/2026 21:18:21
[2026-06-05 21:18:21,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:18:21,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:18:22,008.008 INFO    ] No existing commands found in stream
[2026-06-05 21:18:27,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:18:27,033.033 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 21:18:29,628.628 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:18:29,630.630 INFO    ] Checking for system updates...
[2026-06-05 21:18:29,666.666 INFO    ] 200
[2026-06-05 21:18:29,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:29,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:18:29,726.726 INFO    ] No update needed
[2026-06-05 21:18:29,728.728 INFO    ] Checking for camera pi updates...
[2026-06-05 21:18:29,762.762 INFO    ] 200
[2026-06-05 21:18:29,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:29,805.805 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:18:29,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:18:29,862.862 INFO    ] No camera update needed
[2026-06-05 21:18:29,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:18:29,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:18:29,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:18:29,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:18:31,923.923 INFO    ] ================================================
[2026-06-05 21:18:31,940.940 INFO    ] Launching Daemon at Fri Jun  5 21:18:31 IST 2026
[2026-06-05 21:18:31,952.952 INFO    ] ================================================
[2026-06-05 21:18:32,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:18:32
[2026-06-05 21:18:33,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:18:33,523.523 INFO    ] Initializing speech engine...
[2026-06-05 21:18:33,537.537 INFO    ] 2026-06-05 21:18:33
[2026-06-05 21:18:33,820.820 INFO    ] 2026-06-05 21:18:33
[2026-06-05 21:18:33,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:18:36,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:18:36,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:18:36,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:18:36,341.341 INFO    ] time= 05/06/2026 21:18:36
[2026-06-05 21:18:36,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:18:36,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:18:36,482.482 INFO    ] No existing commands found in stream
[2026-06-05 21:18:41,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:18:41,523.523 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 21:18:43,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:18:43,218.218 INFO    ] Checking for system updates...
[2026-06-05 21:18:43,256.256 INFO    ] 200
[2026-06-05 21:18:43,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:43,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:18:43,316.316 INFO    ] No update needed
[2026-06-05 21:18:43,318.318 INFO    ] Checking for camera pi updates...
[2026-06-05 21:18:43,354.354 INFO    ] 200
[2026-06-05 21:18:43,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:43,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:18:43,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:18:43,452.452 INFO    ] No camera update needed
[2026-06-05 21:18:43,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:18:43,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:18:43,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:18:43,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:18:45,512.512 INFO    ] ================================================
[2026-06-05 21:18:45,528.528 INFO    ] Launching Daemon at Fri Jun  5 21:18:45 IST 2026
[2026-06-05 21:18:45,539.539 INFO    ] ================================================
[2026-06-05 21:18:46,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:18:46
[2026-06-05 21:18:46,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:18:47,096.096 INFO    ] Initializing speech engine...
[2026-06-05 21:18:47,105.105 INFO    ] 2026-06-05 21:18:47
[2026-06-05 21:18:47,417.417 INFO    ] 2026-06-05 21:18:47
[2026-06-05 21:18:47,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:18:47,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:18:47,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:18:47,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:18:47,944.944 INFO    ] time= 05/06/2026 21:18:47
[2026-06-05 21:18:47,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:18:48,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:18:48,119.119 INFO    ] No existing commands found in stream
[2026-06-05 21:18:53,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:18:53,135.135 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 21:18:55,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:18:55,873.873 INFO    ] Checking for system updates...
[2026-06-05 21:18:55,910.910 INFO    ] 200
[2026-06-05 21:18:55,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:55,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:18:55,969.969 INFO    ] No update needed
[2026-06-05 21:18:55,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 21:18:56,005.005 INFO    ] 200
[2026-06-05 21:18:56,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:18:56,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:18:56,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:18:56,099.099 INFO    ] No camera update needed
[2026-06-05 21:18:56,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:18:56,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:18:56,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:18:56,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:18:58,157.157 INFO    ] ================================================
[2026-06-05 21:18:58,172.172 INFO    ] Launching Daemon at Fri Jun  5 21:18:58 IST 2026
[2026-06-05 21:18:58,183.183 INFO    ] ================================================
[2026-06-05 21:18:58,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:18:58
[2026-06-05 21:18:59,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:18:59,846.846 INFO    ] Initializing speech engine...
[2026-06-05 21:18:59,852.852 INFO    ] 2026-06-05 21:18:59
[2026-06-05 21:19:00,140.140 INFO    ] 2026-06-05 21:19:00
[2026-06-05 21:19:00,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:19:00,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:19:00,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:19:00,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:19:00,680.680 INFO    ] time= 05/06/2026 21:19:00
[2026-06-05 21:19:00,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:19:00,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:19:00,865.865 INFO    ] No existing commands found in stream
[2026-06-05 21:19:05,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:19:05,899.899 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 21:19:09,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:19:09,707.707 INFO    ] Checking for system updates...
[2026-06-05 21:19:09,747.747 INFO    ] 200
[2026-06-05 21:19:09,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:09,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:19:09,804.804 INFO    ] No update needed
[2026-06-05 21:19:09,806.806 INFO    ] Checking for camera pi updates...
[2026-06-05 21:19:09,841.841 INFO    ] 200
[2026-06-05 21:19:09,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:09,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:19:09,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:19:09,941.941 INFO    ] No camera update needed
[2026-06-05 21:19:09,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:19:09,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:19:09,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:19:09,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:19:12,000.000 INFO    ] ================================================
[2026-06-05 21:19:12,022.022 INFO    ] Launching Daemon at Fri Jun  5 21:19:12 IST 2026
[2026-06-05 21:19:12,035.035 INFO    ] ================================================
[2026-06-05 21:19:12,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:19:12
[2026-06-05 21:19:13,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:19:13,487.487 INFO    ] Initializing speech engine...
[2026-06-05 21:19:13,494.494 INFO    ] 2026-06-05 21:19:13
[2026-06-05 21:19:13,791.791 INFO    ] 2026-06-05 21:19:13
[2026-06-05 21:19:13,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:19:14,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:19:14,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:19:14,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:19:14,285.285 INFO    ] time= 05/06/2026 21:19:14
[2026-06-05 21:19:14,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:19:14,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:19:14,548.548 INFO    ] No existing commands found in stream
[2026-06-05 21:19:19,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:19:19,572.572 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 21:19:20,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:19:20,144.144 INFO    ] Checking for system updates...
[2026-06-05 21:19:20,180.180 INFO    ] 200
[2026-06-05 21:19:20,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:20,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:19:20,240.240 INFO    ] No update needed
[2026-06-05 21:19:20,243.243 INFO    ] Checking for camera pi updates...
[2026-06-05 21:19:20,277.277 INFO    ] 200
[2026-06-05 21:19:20,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:20,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:19:20,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:19:20,370.370 INFO    ] No camera update needed
[2026-06-05 21:19:20,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:19:20,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:19:20,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:19:20,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:19:22,431.431 INFO    ] ================================================
[2026-06-05 21:19:22,451.451 INFO    ] Launching Daemon at Fri Jun  5 21:19:22 IST 2026
[2026-06-05 21:19:22,464.464 INFO    ] ================================================
[2026-06-05 21:19:23,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:19:23
[2026-06-05 21:19:23,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:19:23,995.995 INFO    ] Initializing speech engine...
[2026-06-05 21:19:24,005.005 INFO    ] 2026-06-05 21:19:23
[2026-06-05 21:19:24,255.255 INFO    ] 2026-06-05 21:19:24
[2026-06-05 21:19:24,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:19:24,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:19:24,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:19:24,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:19:24,732.732 INFO    ] time= 05/06/2026 21:19:24
[2026-06-05 21:19:24,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:19:24,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:19:24,986.986 INFO    ] No existing commands found in stream
[2026-06-05 21:19:29,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:19:30,000.000 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 21:19:32,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:19:32,310.310 INFO    ] Checking for system updates...
[2026-06-05 21:19:32,351.351 INFO    ] 200
[2026-06-05 21:19:32,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:32,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:19:32,416.416 INFO    ] No update needed
[2026-06-05 21:19:32,419.419 INFO    ] Checking for camera pi updates...
[2026-06-05 21:19:32,458.458 INFO    ] 200
[2026-06-05 21:19:32,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:32,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:19:32,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:19:32,563.563 INFO    ] No camera update needed
[2026-06-05 21:19:32,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:19:32,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:19:32,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:19:32,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:19:34,630.630 INFO    ] ================================================
[2026-06-05 21:19:34,647.647 INFO    ] Launching Daemon at Fri Jun  5 21:19:34 IST 2026
[2026-06-05 21:19:34,657.657 INFO    ] ================================================
[2026-06-05 21:19:35,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:19:35
[2026-06-05 21:19:35,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:19:36,302.302 INFO    ] Initializing speech engine...
[2026-06-05 21:19:36,312.312 INFO    ] 2026-06-05 21:19:36
[2026-06-05 21:19:36,589.589 INFO    ] 2026-06-05 21:19:36
[2026-06-05 21:19:36,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:19:36,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:19:36,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:19:37,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:19:37,121.121 INFO    ] time= 05/06/2026 21:19:37
[2026-06-05 21:19:37,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:19:37,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:19:37,308.308 INFO    ] No existing commands found in stream
[2026-06-05 21:19:42,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:19:42,349.349 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 21:19:42,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:19:42,856.856 INFO    ] Checking for system updates...
[2026-06-05 21:19:42,897.897 INFO    ] 200
[2026-06-05 21:19:42,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:42,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:19:42,962.962 INFO    ] No update needed
[2026-06-05 21:19:42,964.964 INFO    ] Checking for camera pi updates...
[2026-06-05 21:19:42,998.998 INFO    ] 200
[2026-06-05 21:19:43,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:43,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:19:43,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:19:43,103.103 INFO    ] No camera update needed
[2026-06-05 21:19:43,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:19:43,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:19:43,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:19:43,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:19:45,158.158 INFO    ] ================================================
[2026-06-05 21:19:45,174.174 INFO    ] Launching Daemon at Fri Jun  5 21:19:45 IST 2026
[2026-06-05 21:19:45,184.184 INFO    ] ================================================
[2026-06-05 21:19:45,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:19:45
[2026-06-05 21:19:46,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:19:46,637.637 INFO    ] Initializing speech engine...
[2026-06-05 21:19:46,663.663 INFO    ] 2026-06-05 21:19:46
[2026-06-05 21:19:46,942.942 INFO    ] 2026-06-05 21:19:46
[2026-06-05 21:19:46,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:19:47,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:19:47,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:19:47,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:19:47,508.508 INFO    ] time= 05/06/2026 21:19:47
[2026-06-05 21:19:47,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:19:47,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:19:47,736.736 INFO    ] No existing commands found in stream
[2026-06-05 21:19:52,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:19:52,757.757 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 21:19:53,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:19:53,595.595 INFO    ] Checking for system updates...
[2026-06-05 21:19:53,632.632 INFO    ] 200
[2026-06-05 21:19:53,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:53,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:19:53,690.690 INFO    ] No update needed
[2026-06-05 21:19:53,693.693 INFO    ] Checking for camera pi updates...
[2026-06-05 21:19:53,727.727 INFO    ] 200
[2026-06-05 21:19:53,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:19:53,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:19:53,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:19:53,818.818 INFO    ] No camera update needed
[2026-06-05 21:19:53,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:19:53,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:19:53,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:19:53,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:19:55,872.872 INFO    ] ================================================
[2026-06-05 21:19:55,894.894 INFO    ] Launching Daemon at Fri Jun  5 21:19:55 IST 2026
[2026-06-05 21:19:55,905.905 INFO    ] ================================================
[2026-06-05 21:19:56,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:19:56
[2026-06-05 21:19:57,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:19:57,548.548 INFO    ] Initializing speech engine...
[2026-06-05 21:19:57,559.559 INFO    ] 2026-06-05 21:19:57
[2026-06-05 21:19:57,835.835 INFO    ] 2026-06-05 21:19:57
[2026-06-05 21:19:57,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:19:58,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:19:58,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:19:58,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:19:58,389.389 INFO    ] time= 05/06/2026 21:19:58
[2026-06-05 21:19:58,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:19:58,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:19:58,557.557 INFO    ] No existing commands found in stream
[2026-06-05 21:20:03,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:20:03,579.579 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 21:20:08,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:20:08,525.525 INFO    ] Checking for system updates...
[2026-06-05 21:20:08,568.568 INFO    ] 200
[2026-06-05 21:20:08,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:08,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:20:08,633.633 INFO    ] No update needed
[2026-06-05 21:20:08,636.636 INFO    ] Checking for camera pi updates...
[2026-06-05 21:20:08,670.670 INFO    ] 200
[2026-06-05 21:20:08,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:08,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:20:08,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:20:08,750.750 INFO    ] No camera update needed
[2026-06-05 21:20:08,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:20:08,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:20:08,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:20:08,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:20:10,807.807 INFO    ] ================================================
[2026-06-05 21:20:10,824.824 INFO    ] Launching Daemon at Fri Jun  5 21:20:10 IST 2026
[2026-06-05 21:20:10,835.835 INFO    ] ================================================
[2026-06-05 21:20:11,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:20:11
[2026-06-05 21:20:12,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:20:12,577.577 INFO    ] Initializing speech engine...
[2026-06-05 21:20:12,583.583 INFO    ] 2026-06-05 21:20:12
[2026-06-05 21:20:12,864.864 INFO    ] 2026-06-05 21:20:12
[2026-06-05 21:20:12,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:20:13,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:20:13,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:20:13,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:20:13,349.349 INFO    ] time= 05/06/2026 21:20:13
[2026-06-05 21:20:13,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:20:13,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:20:13,571.571 INFO    ] No existing commands found in stream
[2026-06-05 21:20:18,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:20:18,589.589 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 21:20:19,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:20:19,922.922 INFO    ] Checking for system updates...
[2026-06-05 21:20:19,965.965 INFO    ] 200
[2026-06-05 21:20:19,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:20,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:20:20,023.023 INFO    ] No update needed
[2026-06-05 21:20:20,026.026 INFO    ] Checking for camera pi updates...
[2026-06-05 21:20:20,060.060 INFO    ] 200
[2026-06-05 21:20:20,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:20,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:20:20,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:20:20,151.151 INFO    ] No camera update needed
[2026-06-05 21:20:20,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:20:20,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:20:20,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:20:20,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:20:22,208.208 INFO    ] ================================================
[2026-06-05 21:20:22,223.223 INFO    ] Launching Daemon at Fri Jun  5 21:20:22 IST 2026
[2026-06-05 21:20:22,235.235 INFO    ] ================================================
[2026-06-05 21:20:22,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:20:22
[2026-06-05 21:20:23,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:20:23,720.720 INFO    ] Initializing speech engine...
[2026-06-05 21:20:23,726.726 INFO    ] 2026-06-05 21:20:23
[2026-06-05 21:20:24,026.026 INFO    ] 2026-06-05 21:20:23
[2026-06-05 21:20:24,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:20:24,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:20:24,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:20:24,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:20:24,538.538 INFO    ] time= 05/06/2026 21:20:24
[2026-06-05 21:20:24,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:20:24,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:20:24,741.741 INFO    ] No existing commands found in stream
[2026-06-05 21:20:29,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:20:29,756.756 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 21:20:31,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:20:31,724.724 INFO    ] Checking for system updates...
[2026-06-05 21:20:31,768.768 INFO    ] 200
[2026-06-05 21:20:31,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:31,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:20:31,832.832 INFO    ] No update needed
[2026-06-05 21:20:31,835.835 INFO    ] Checking for camera pi updates...
[2026-06-05 21:20:31,871.871 INFO    ] 200
[2026-06-05 21:20:31,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:31,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:20:31,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:20:31,971.971 INFO    ] No camera update needed
[2026-06-05 21:20:31,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:20:31,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:20:31,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:20:31,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:20:34,036.036 INFO    ] ================================================
[2026-06-05 21:20:34,051.051 INFO    ] Launching Daemon at Fri Jun  5 21:20:34 IST 2026
[2026-06-05 21:20:34,062.062 INFO    ] ================================================
[2026-06-05 21:20:34,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:20:34
[2026-06-05 21:20:35,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:20:35,528.528 INFO    ] Initializing speech engine...
[2026-06-05 21:20:35,536.536 INFO    ] 2026-06-05 21:20:35
[2026-06-05 21:20:35,797.797 INFO    ] 2026-06-05 21:20:35
[2026-06-05 21:20:35,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:20:37,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:20:37,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:20:37,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:20:37,557.557 INFO    ] time= 05/06/2026 21:20:37
[2026-06-05 21:20:37,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:20:37,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:20:37,694.694 INFO    ] No existing commands found in stream
[2026-06-05 21:20:42,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:20:42,717.717 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 21:20:44,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:20:44,095.095 INFO    ] Checking for system updates...
[2026-06-05 21:20:44,132.132 INFO    ] 200
[2026-06-05 21:20:44,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:44,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:20:44,199.199 INFO    ] No update needed
[2026-06-05 21:20:44,201.201 INFO    ] Checking for camera pi updates...
[2026-06-05 21:20:44,236.236 INFO    ] 200
[2026-06-05 21:20:44,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:44,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:20:44,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:20:44,345.345 INFO    ] No camera update needed
[2026-06-05 21:20:44,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:20:44,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:20:44,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:20:44,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:20:46,403.403 INFO    ] ================================================
[2026-06-05 21:20:46,420.420 INFO    ] Launching Daemon at Fri Jun  5 21:20:46 IST 2026
[2026-06-05 21:20:46,431.431 INFO    ] ================================================
[2026-06-05 21:20:47,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:20:47
[2026-06-05 21:20:47,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:20:47,894.894 INFO    ] Initializing speech engine...
[2026-06-05 21:20:47,903.903 INFO    ] 2026-06-05 21:20:47
[2026-06-05 21:20:48,153.153 INFO    ] 2026-06-05 21:20:48
[2026-06-05 21:20:48,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:20:48,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:20:48,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:20:48,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:20:48,723.723 INFO    ] time= 05/06/2026 21:20:48
[2026-06-05 21:20:48,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:20:48,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:20:48,874.874 INFO    ] No existing commands found in stream
[2026-06-05 21:20:53,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:20:53,913.913 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 21:20:57,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:20:57,523.523 INFO    ] Checking for system updates...
[2026-06-05 21:20:57,561.561 INFO    ] 200
[2026-06-05 21:20:57,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:57,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:20:57,619.619 INFO    ] No update needed
[2026-06-05 21:20:57,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 21:20:57,662.662 INFO    ] 200
[2026-06-05 21:20:57,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:20:57,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:20:57,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:20:57,760.760 INFO    ] No camera update needed
[2026-06-05 21:20:57,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:20:57,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:20:57,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:20:57,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:20:59,820.820 INFO    ] ================================================
[2026-06-05 21:20:59,836.836 INFO    ] Launching Daemon at Fri Jun  5 21:20:59 IST 2026
[2026-06-05 21:20:59,847.847 INFO    ] ================================================
[2026-06-05 21:21:00,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:21:00
[2026-06-05 21:21:01,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:21:01,468.468 INFO    ] Initializing speech engine...
[2026-06-05 21:21:01,473.473 INFO    ] 2026-06-05 21:21:01
[2026-06-05 21:21:02,033.033 INFO    ] 2026-06-05 21:21:02
[2026-06-05 21:21:02,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:21:02,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:21:02,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:21:02,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:21:02,580.580 INFO    ] time= 05/06/2026 21:21:02
[2026-06-05 21:21:02,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:21:02,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:21:02,843.843 INFO    ] No existing commands found in stream
[2026-06-05 21:21:07,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:21:07,866.866 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 21:21:11,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:21:11,190.190 INFO    ] Checking for system updates...
[2026-06-05 21:21:11,226.226 INFO    ] 200
[2026-06-05 21:21:11,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:21:11,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:21:11,284.284 INFO    ] No update needed
[2026-06-05 21:21:11,287.287 INFO    ] Checking for camera pi updates...
[2026-06-05 21:21:11,328.328 INFO    ] 200
[2026-06-05 21:21:11,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:21:11,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:21:11,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:21:11,521.521 INFO    ] No camera update needed
[2026-06-05 21:21:11,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:21:11,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:21:11,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:21:11,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:21:13,578.578 INFO    ] ================================================
[2026-06-05 21:21:13,594.594 INFO    ] Launching Daemon at Fri Jun  5 21:21:13 IST 2026
[2026-06-05 21:21:13,605.605 INFO    ] ================================================
[2026-06-05 21:21:14,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:21:14
[2026-06-05 21:21:14,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:21:15,265.265 INFO    ] Initializing speech engine...
[2026-06-05 21:21:15,280.280 INFO    ] 2026-06-05 21:21:15
[2026-06-05 21:21:15,570.570 INFO    ] 2026-06-05 21:21:15
[2026-06-05 21:21:15,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:21:15,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:21:15,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:21:16,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:21:16,128.128 INFO    ] time= 05/06/2026 21:21:16
[2026-06-05 21:21:16,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:21:16,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:21:16,273.273 INFO    ] No existing commands found in stream
[2026-06-05 21:21:21,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:21:21,301.301 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-05 21:21:23,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:21:23,491.491 INFO    ] Checking for system updates...
[2026-06-05 21:21:23,542.542 INFO    ] 200
[2026-06-05 21:21:23,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:21:23,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:21:23,621.621 INFO    ] No update needed
[2026-06-05 21:21:23,627.627 INFO    ] Checking for camera pi updates...
[2026-06-05 21:21:23,669.669 INFO    ] 200
[2026-06-05 21:21:23,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:21:23,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:21:23,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:21:23,776.776 INFO    ] No camera update needed
[2026-06-05 21:21:23,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:21:23,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:21:23,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:21:23,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:21:25,839.839 INFO    ] ================================================
[2026-06-05 21:21:25,856.856 INFO    ] Launching Daemon at Fri Jun  5 21:21:25 IST 2026
[2026-06-05 21:21:25,868.868 INFO    ] ================================================
[2026-06-05 21:21:26,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:21:26
[2026-06-05 21:21:27,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:21:27,662.662 INFO    ] Initializing speech engine...
[2026-06-05 21:21:27,669.669 INFO    ] 2026-06-05 21:21:27
[2026-06-05 21:21:27,972.972 INFO    ] 2026-06-05 21:21:27
[2026-06-05 21:21:28,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:21:28,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:21:28,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:21:28,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:21:28,538.538 INFO    ] time= 05/06/2026 21:21:28
[2026-06-05 21:21:28,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:21:28,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:21:28,729.729 INFO    ] No existing commands found in stream
[2026-06-05 21:21:33,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:21:33,769.769 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 21:21:37,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:21:37,637.637 INFO    ] Checking for system updates...
[2026-06-05 21:21:37,674.674 INFO    ] 200
[2026-06-05 21:21:37,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:21:37,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:21:37,743.743 INFO    ] No update needed
[2026-06-05 21:21:37,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 21:21:37,785.785 INFO    ] 200
[2026-06-05 21:21:37,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:21:37,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:21:37,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:21:37,887.887 INFO    ] No camera update needed
[2026-06-05 21:21:37,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:21:37,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:21:37,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:21:37,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:21:39,953.953 INFO    ] ================================================
[2026-06-05 21:21:39,969.969 INFO    ] Launching Daemon at Fri Jun  5 21:21:39 IST 2026
[2026-06-05 21:21:39,981.981 INFO    ] ================================================
[2026-06-05 21:21:40,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:21:40
[2026-06-05 21:21:41,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:21:41,499.499 INFO    ] Initializing speech engine...
[2026-06-05 21:21:41,511.511 INFO    ] 2026-06-05 21:21:41
[2026-06-05 21:21:41,799.799 INFO    ] 2026-06-05 21:21:41
[2026-06-05 21:21:41,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:21:42,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:21:42,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:21:42,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:21:42,343.343 INFO    ] time= 05/06/2026 21:21:42
[2026-06-05 21:21:42,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:21:42,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:21:42,523.523 INFO    ] No existing commands found in stream
[2026-06-05 21:21:47,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:21:47,558.558 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 21:21:51,630.630 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:21:51,633.633 INFO    ] Checking for system updates...
[2026-06-05 21:21:51,673.673 INFO    ] 200
[2026-06-05 21:21:51,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:21:51,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:21:51,732.732 INFO    ] No update needed
[2026-06-05 21:21:51,734.734 INFO    ] Checking for camera pi updates...
[2026-06-05 21:21:51,771.771 INFO    ] 200
[2026-06-05 21:21:51,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:21:51,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:21:51,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:21:51,880.880 INFO    ] No camera update needed
[2026-06-05 21:21:51,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:21:51,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:21:51,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:21:51,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:21:53,943.943 INFO    ] ================================================
[2026-06-05 21:21:53,959.959 INFO    ] Launching Daemon at Fri Jun  5 21:21:53 IST 2026
[2026-06-05 21:21:53,970.970 INFO    ] ================================================
[2026-06-05 21:21:54,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:21:54
[2026-06-05 21:21:55,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:21:55,438.438 INFO    ] Initializing speech engine...
[2026-06-05 21:21:55,448.448 INFO    ] 2026-06-05 21:21:55
[2026-06-05 21:21:55,712.712 INFO    ] 2026-06-05 21:21:55
[2026-06-05 21:21:55,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:21:55,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:21:55,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:21:56,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:21:56,176.176 INFO    ] time= 05/06/2026 21:21:56
[2026-06-05 21:21:56,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:21:56,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:21:56,409.409 INFO    ] No existing commands found in stream
[2026-06-05 21:22:01,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:22:01,442.442 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 21:22:03,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:22:03,368.368 INFO    ] Checking for system updates...
[2026-06-05 21:22:03,412.412 INFO    ] 200
[2026-06-05 21:22:03,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:03,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:22:03,479.479 INFO    ] No update needed
[2026-06-05 21:22:03,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 21:22:03,517.517 INFO    ] 200
[2026-06-05 21:22:03,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:03,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:22:03,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:22:03,628.628 INFO    ] No camera update needed
[2026-06-05 21:22:03,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:22:03,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:22:03,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:22:03,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:22:05,687.687 INFO    ] ================================================
[2026-06-05 21:22:05,703.703 INFO    ] Launching Daemon at Fri Jun  5 21:22:05 IST 2026
[2026-06-05 21:22:05,715.715 INFO    ] ================================================
[2026-06-05 21:22:06,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:22:06
[2026-06-05 21:22:06,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:22:07,204.204 INFO    ] Initializing speech engine...
[2026-06-05 21:22:07,225.225 INFO    ] 2026-06-05 21:22:07
[2026-06-05 21:22:07,507.507 INFO    ] 2026-06-05 21:22:07
[2026-06-05 21:22:07,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:22:07,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:22:07,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:22:08,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:22:08,332.332 INFO    ] time= 05/06/2026 21:22:08
[2026-06-05 21:22:08,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:22:08,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:22:08,537.537 INFO    ] No existing commands found in stream
[2026-06-05 21:22:13,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:22:13,558.558 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 21:22:15,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:22:15,837.837 INFO    ] Checking for system updates...
[2026-06-05 21:22:15,873.873 INFO    ] 200
[2026-06-05 21:22:15,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:15,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:22:15,931.931 INFO    ] No update needed
[2026-06-05 21:22:15,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 21:22:15,968.968 INFO    ] 200
[2026-06-05 21:22:15,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:16,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:22:16,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:22:16,070.070 INFO    ] No camera update needed
[2026-06-05 21:22:16,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:22:16,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:22:16,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:22:16,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:22:18,125.125 INFO    ] ================================================
[2026-06-05 21:22:18,140.140 INFO    ] Launching Daemon at Fri Jun  5 21:22:18 IST 2026
[2026-06-05 21:22:18,152.152 INFO    ] ================================================
[2026-06-05 21:22:18,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:22:18
[2026-06-05 21:22:19,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:22:19,825.825 INFO    ] Initializing speech engine...
[2026-06-05 21:22:19,836.836 INFO    ] 2026-06-05 21:22:19
[2026-06-05 21:22:20,150.150 INFO    ] 2026-06-05 21:22:20
[2026-06-05 21:22:20,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:22:20,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:22:20,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:22:20,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:22:20,661.661 INFO    ] time= 05/06/2026 21:22:20
[2026-06-05 21:22:20,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:22:20,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:22:20,826.826 INFO    ] No existing commands found in stream
[2026-06-05 21:22:25,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:22:25,855.855 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 21:22:28,007.007 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:22:28,010.010 INFO    ] Checking for system updates...
[2026-06-05 21:22:28,048.048 INFO    ] 200
[2026-06-05 21:22:28,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:28,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:22:28,116.116 INFO    ] No update needed
[2026-06-05 21:22:28,119.119 INFO    ] Checking for camera pi updates...
[2026-06-05 21:22:28,158.158 INFO    ] 200
[2026-06-05 21:22:28,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:28,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:22:28,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:22:28,259.259 INFO    ] No camera update needed
[2026-06-05 21:22:28,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:22:28,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:22:28,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:22:28,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:22:30,320.320 INFO    ] ================================================
[2026-06-05 21:22:30,336.336 INFO    ] Launching Daemon at Fri Jun  5 21:22:30 IST 2026
[2026-06-05 21:22:30,347.347 INFO    ] ================================================
[2026-06-05 21:22:30,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:22:30
[2026-06-05 21:22:31,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:22:31,824.824 INFO    ] Initializing speech engine...
[2026-06-05 21:22:31,839.839 INFO    ] 2026-06-05 21:22:31
[2026-06-05 21:22:32,139.139 INFO    ] 2026-06-05 21:22:32
[2026-06-05 21:22:32,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:22:32,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:22:32,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:22:32,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:22:32,567.567 INFO    ] time= 05/06/2026 21:22:32
[2026-06-05 21:22:32,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:22:32,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:22:32,658.658 INFO    ] No existing commands found in stream
[2026-06-05 21:22:37,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:22:37,670.670 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 21:22:41,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:22:41,869.869 INFO    ] Checking for system updates...
[2026-06-05 21:22:41,911.911 INFO    ] 200
[2026-06-05 21:22:41,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:41,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:22:41,970.970 INFO    ] No update needed
[2026-06-05 21:22:41,972.972 INFO    ] Checking for camera pi updates...
[2026-06-05 21:22:42,007.007 INFO    ] 200
[2026-06-05 21:22:42,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:42,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:22:42,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:22:42,124.124 INFO    ] No camera update needed
[2026-06-05 21:22:42,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:22:42,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:22:42,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:22:42,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:22:44,180.180 INFO    ] ================================================
[2026-06-05 21:22:44,195.195 INFO    ] Launching Daemon at Fri Jun  5 21:22:44 IST 2026
[2026-06-05 21:22:44,207.207 INFO    ] ================================================
[2026-06-05 21:22:44,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:22:44
[2026-06-05 21:22:45,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:22:45,646.646 INFO    ] Initializing speech engine...
[2026-06-05 21:22:45,658.658 INFO    ] 2026-06-05 21:22:45
[2026-06-05 21:22:45,932.932 INFO    ] 2026-06-05 21:22:45
[2026-06-05 21:22:45,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:22:46,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:22:46,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:22:46,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:22:46,320.320 INFO    ] time= 05/06/2026 21:22:46
[2026-06-05 21:22:46,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:22:46,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:22:46,450.450 INFO    ] No existing commands found in stream
[2026-06-05 21:22:51,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:22:51,483.483 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 21:22:52,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:22:52,015.015 INFO    ] Checking for system updates...
[2026-06-05 21:22:52,073.073 INFO    ] 200
[2026-06-05 21:22:52,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:52,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:22:52,154.154 INFO    ] No update needed
[2026-06-05 21:22:52,157.157 INFO    ] Checking for camera pi updates...
[2026-06-05 21:22:52,195.195 INFO    ] 200
[2026-06-05 21:22:52,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:22:52,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:22:52,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:22:52,272.272 INFO    ] No camera update needed
[2026-06-05 21:22:52,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:22:52,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:22:52,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:22:52,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:22:54,333.333 INFO    ] ================================================
[2026-06-05 21:22:54,349.349 INFO    ] Launching Daemon at Fri Jun  5 21:22:54 IST 2026
[2026-06-05 21:22:54,361.361 INFO    ] ================================================
[2026-06-05 21:22:54,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:22:54
[2026-06-05 21:22:55,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:22:55,826.826 INFO    ] Initializing speech engine...
[2026-06-05 21:22:55,838.838 INFO    ] 2026-06-05 21:22:55
[2026-06-05 21:22:56,130.130 INFO    ] 2026-06-05 21:22:56
[2026-06-05 21:22:56,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:22:56,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:22:56,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:22:56,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:22:56,562.562 INFO    ] time= 05/06/2026 21:22:56
[2026-06-05 21:22:56,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:22:56,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:22:56,738.738 INFO    ] No existing commands found in stream
[2026-06-05 21:23:01,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:23:01,766.766 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 21:23:03,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:23:03,703.703 INFO    ] Checking for system updates...
[2026-06-05 21:23:03,743.743 INFO    ] 200
[2026-06-05 21:23:03,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:03,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:03,802.802 INFO    ] No update needed
[2026-06-05 21:23:03,805.805 INFO    ] Checking for camera pi updates...
[2026-06-05 21:23:03,839.839 INFO    ] 200
[2026-06-05 21:23:03,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:03,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:23:03,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:03,946.946 INFO    ] No camera update needed
[2026-06-05 21:23:03,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:23:03,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:23:03,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:23:03,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:23:06,003.003 INFO    ] ================================================
[2026-06-05 21:23:06,019.019 INFO    ] Launching Daemon at Fri Jun  5 21:23:06 IST 2026
[2026-06-05 21:23:06,030.030 INFO    ] ================================================
[2026-06-05 21:23:06,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:23:06
[2026-06-05 21:23:07,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:23:07,545.545 INFO    ] Initializing speech engine...
[2026-06-05 21:23:07,552.552 INFO    ] 2026-06-05 21:23:07
[2026-06-05 21:23:07,810.810 INFO    ] 2026-06-05 21:23:07
[2026-06-05 21:23:07,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:23:08,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:23:08,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:23:09,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:23:09,035.035 INFO    ] time= 05/06/2026 21:23:09
[2026-06-05 21:23:09,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:23:09,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:23:09,161.161 INFO    ] No existing commands found in stream
[2026-06-05 21:23:14,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:23:14,174.174 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 21:23:16,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:23:16,152.152 INFO    ] Checking for system updates...
[2026-06-05 21:23:16,189.189 INFO    ] 200
[2026-06-05 21:23:16,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:16,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:16,249.249 INFO    ] No update needed
[2026-06-05 21:23:16,251.251 INFO    ] Checking for camera pi updates...
[2026-06-05 21:23:16,288.288 INFO    ] 200
[2026-06-05 21:23:16,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:16,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:23:16,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:16,465.465 INFO    ] No camera update needed
[2026-06-05 21:23:16,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:23:16,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:23:16,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:23:16,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:23:18,522.522 INFO    ] ================================================
[2026-06-05 21:23:18,538.538 INFO    ] Launching Daemon at Fri Jun  5 21:23:18 IST 2026
[2026-06-05 21:23:18,549.549 INFO    ] ================================================
[2026-06-05 21:23:19,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:23:19
[2026-06-05 21:23:19,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:23:19,995.995 INFO    ] Initializing speech engine...
[2026-06-05 21:23:20,010.010 INFO    ] 2026-06-05 21:23:19
[2026-06-05 21:23:20,295.295 INFO    ] 2026-06-05 21:23:20
[2026-06-05 21:23:20,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:23:20,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:23:20,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:23:20,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:23:20,733.733 INFO    ] time= 05/06/2026 21:23:20
[2026-06-05 21:23:20,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:23:20,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:23:20,939.939 INFO    ] No existing commands found in stream
[2026-06-05 21:23:25,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:23:25,967.967 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 21:23:26,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:23:26,717.717 INFO    ] Checking for system updates...
[2026-06-05 21:23:26,753.753 INFO    ] 200
[2026-06-05 21:23:26,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:26,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:26,818.818 INFO    ] No update needed
[2026-06-05 21:23:26,821.821 INFO    ] Checking for camera pi updates...
[2026-06-05 21:23:26,854.854 INFO    ] 200
[2026-06-05 21:23:26,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:26,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:23:26,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:26,950.950 INFO    ] No camera update needed
[2026-06-05 21:23:26,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:23:26,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:23:26,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:23:26,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:23:29,006.006 INFO    ] ================================================
[2026-06-05 21:23:29,021.021 INFO    ] Launching Daemon at Fri Jun  5 21:23:29 IST 2026
[2026-06-05 21:23:29,032.032 INFO    ] ================================================
[2026-06-05 21:23:29,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:23:29
[2026-06-05 21:23:30,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:23:30,491.491 INFO    ] Initializing speech engine...
[2026-06-05 21:23:30,500.500 INFO    ] 2026-06-05 21:23:30
[2026-06-05 21:23:30,748.748 INFO    ] 2026-06-05 21:23:30
[2026-06-05 21:23:30,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:23:30,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:23:31,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:23:31,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:23:31,224.224 INFO    ] time= 05/06/2026 21:23:31
[2026-06-05 21:23:31,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:23:31,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:23:31,436.436 INFO    ] No existing commands found in stream
[2026-06-05 21:23:36,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:23:36,469.469 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 21:23:38,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:23:38,909.909 INFO    ] Checking for system updates...
[2026-06-05 21:23:38,949.949 INFO    ] 200
[2026-06-05 21:23:38,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:39,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:39,013.013 INFO    ] No update needed
[2026-06-05 21:23:39,016.016 INFO    ] Checking for camera pi updates...
[2026-06-05 21:23:39,051.051 INFO    ] 200
[2026-06-05 21:23:39,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:39,095.095 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:23:39,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:39,149.149 INFO    ] No camera update needed
[2026-06-05 21:23:39,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:23:39,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:23:39,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:23:39,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:23:41,208.208 INFO    ] ================================================
[2026-06-05 21:23:41,224.224 INFO    ] Launching Daemon at Fri Jun  5 21:23:41 IST 2026
[2026-06-05 21:23:41,236.236 INFO    ] ================================================
[2026-06-05 21:23:41,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:23:41
[2026-06-05 21:23:42,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:23:42,851.851 INFO    ] Initializing speech engine...
[2026-06-05 21:23:42,864.864 INFO    ] 2026-06-05 21:23:42
[2026-06-05 21:23:43,156.156 INFO    ] 2026-06-05 21:23:43
[2026-06-05 21:23:43,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:23:43,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:23:43,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:23:43,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:23:43,701.701 INFO    ] time= 05/06/2026 21:23:43
[2026-06-05 21:23:43,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:23:43,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:23:43,877.877 INFO    ] No existing commands found in stream
[2026-06-05 21:23:48,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:23:48,901.901 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 21:23:50,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:23:50,106.106 INFO    ] Checking for system updates...
[2026-06-05 21:23:50,144.144 INFO    ] 200
[2026-06-05 21:23:50,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:50,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:50,211.211 INFO    ] No update needed
[2026-06-05 21:23:50,214.214 INFO    ] Checking for camera pi updates...
[2026-06-05 21:23:50,248.248 INFO    ] 200
[2026-06-05 21:23:50,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:23:50,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:23:50,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:23:50,345.345 INFO    ] No camera update needed
[2026-06-05 21:23:50,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:23:50,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:23:50,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:23:50,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:23:52,401.401 INFO    ] ================================================
[2026-06-05 21:23:52,417.417 INFO    ] Launching Daemon at Fri Jun  5 21:23:52 IST 2026
[2026-06-05 21:23:52,428.428 INFO    ] ================================================
[2026-06-05 21:23:53,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:23:53
[2026-06-05 21:23:53,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:23:54,039.039 INFO    ] Initializing speech engine...
[2026-06-05 21:23:54,054.054 INFO    ] 2026-06-05 21:23:54
[2026-06-05 21:23:54,337.337 INFO    ] 2026-06-05 21:23:54
[2026-06-05 21:23:54,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:23:54,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:23:54,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:23:54,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:23:54,866.866 INFO    ] time= 05/06/2026 21:23:54
[2026-06-05 21:23:54,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:23:54,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:23:55,022.022 INFO    ] No existing commands found in stream
[2026-06-05 21:24:00,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:24:00,049.049 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-05 21:24:02,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:24:02,372.372 INFO    ] Checking for system updates...
[2026-06-05 21:24:02,419.419 INFO    ] 200
[2026-06-05 21:24:02,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:24:02,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:24:02,493.493 INFO    ] No update needed
[2026-06-05 21:24:02,497.497 INFO    ] Checking for camera pi updates...
[2026-06-05 21:24:02,539.539 INFO    ] 200
[2026-06-05 21:24:02,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:24:02,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:24:02,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:24:02,639.639 INFO    ] No camera update needed
[2026-06-05 21:24:02,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:24:02,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:24:02,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:24:02,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:24:04,701.701 INFO    ] ================================================
[2026-06-05 21:24:04,717.717 INFO    ] Launching Daemon at Fri Jun  5 21:24:04 IST 2026
[2026-06-05 21:24:04,728.728 INFO    ] ================================================
[2026-06-05 21:24:05,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:24:05
[2026-06-05 21:24:05,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:24:06,210.210 INFO    ] Initializing speech engine...
[2026-06-05 21:24:06,223.223 INFO    ] 2026-06-05 21:24:06
[2026-06-05 21:24:06,508.508 INFO    ] 2026-06-05 21:24:06
[2026-06-05 21:24:06,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:24:08,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:24:08,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:24:09,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:24:09,124.124 INFO    ] time= 05/06/2026 21:24:09
[2026-06-05 21:24:09,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:24:09,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:24:09,291.291 INFO    ] No existing commands found in stream
[2026-06-05 21:24:14,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:24:14,308.308 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 21:24:17,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:24:17,625.625 INFO    ] Checking for system updates...
[2026-06-05 21:24:17,662.662 INFO    ] 200
[2026-06-05 21:24:17,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:24:17,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:24:17,730.730 INFO    ] No update needed
[2026-06-05 21:24:17,732.732 INFO    ] Checking for camera pi updates...
[2026-06-05 21:24:17,770.770 INFO    ] 200
[2026-06-05 21:24:17,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:24:17,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:24:17,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:24:17,863.863 INFO    ] No camera update needed
[2026-06-05 21:24:17,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:24:17,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:24:17,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:24:17,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:24:19,920.920 INFO    ] ================================================
[2026-06-05 21:24:19,936.936 INFO    ] Launching Daemon at Fri Jun  5 21:24:19 IST 2026
[2026-06-05 21:24:19,947.947 INFO    ] ================================================
[2026-06-05 21:24:20,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:24:20
[2026-06-05 21:24:21,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:24:21,611.611 INFO    ] Initializing speech engine...
[2026-06-05 21:24:21,619.619 INFO    ] 2026-06-05 21:24:21
[2026-06-05 21:24:21,909.909 INFO    ] 2026-06-05 21:24:21
[2026-06-05 21:24:21,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:24:22,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:24:22,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:24:22,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:24:22,450.450 INFO    ] time= 05/06/2026 21:24:22
[2026-06-05 21:24:22,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:24:22,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:24:22,639.639 INFO    ] No existing commands found in stream
[2026-06-05 21:24:27,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:24:27,673.673 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 21:24:30,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:24:30,745.745 INFO    ] Checking for system updates...
[2026-06-05 21:24:30,785.785 INFO    ] 200
[2026-06-05 21:24:30,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:24:30,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:24:30,842.842 INFO    ] No update needed
[2026-06-05 21:24:30,845.845 INFO    ] Checking for camera pi updates...
[2026-06-05 21:24:30,880.880 INFO    ] 200
[2026-06-05 21:24:30,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:24:30,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:24:30,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:24:30,985.985 INFO    ] No camera update needed
[2026-06-05 21:24:30,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:24:30,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:24:30,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:24:31,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:24:33,044.044 INFO    ] ================================================
[2026-06-05 21:24:33,060.060 INFO    ] Launching Daemon at Fri Jun  5 21:24:33 IST 2026
[2026-06-05 21:24:33,071.071 INFO    ] ================================================
[2026-06-05 21:24:33,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:24:33
[2026-06-05 21:24:34,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:24:34,544.544 INFO    ] Initializing speech engine...
[2026-06-05 21:24:34,549.549 INFO    ] 2026-06-05 21:24:34
[2026-06-05 21:24:34,812.812 INFO    ] 2026-06-05 21:24:34
[2026-06-05 21:24:34,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:24:35,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:24:35,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:24:38,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:24:38,453.453 INFO    ] time= 05/06/2026 21:24:38
[2026-06-05 21:24:38,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:24:38,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:24:38,534.534 INFO    ] No existing commands found in stream
[2026-06-05 21:24:43,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:24:43,547.547 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 21:24:47,101.101 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:24:47,104.104 INFO    ] Checking for system updates...
[2026-06-05 21:24:47,143.143 INFO    ] 200
[2026-06-05 21:24:47,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:24:47,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:24:47,208.208 INFO    ] No update needed
[2026-06-05 21:24:47,210.210 INFO    ] Checking for camera pi updates...
[2026-06-05 21:24:47,244.244 INFO    ] 200
[2026-06-05 21:24:47,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:24:47,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:24:47,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:24:47,340.340 INFO    ] No camera update needed
[2026-06-05 21:24:47,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:24:47,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:24:47,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:24:47,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:24:49,398.398 INFO    ] ================================================
[2026-06-05 21:24:49,414.414 INFO    ] Launching Daemon at Fri Jun  5 21:24:49 IST 2026
[2026-06-05 21:24:49,425.425 INFO    ] ================================================
[2026-06-05 21:24:50,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:24:50
[2026-06-05 21:24:50,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:24:51,032.032 INFO    ] Initializing speech engine...
[2026-06-05 21:24:51,046.046 INFO    ] 2026-06-05 21:24:51
[2026-06-05 21:24:51,328.328 INFO    ] 2026-06-05 21:24:51
[2026-06-05 21:24:51,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:24:51,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:24:51,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:24:52,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:24:52,043.043 INFO    ] time= 05/06/2026 21:24:52
[2026-06-05 21:24:52,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:24:52,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:24:52,439.439 INFO    ] No existing commands found in stream
[2026-06-05 21:24:57,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:24:57,473.473 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 21:25:00,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:25:00,966.966 INFO    ] Checking for system updates...
[2026-06-05 21:25:01,003.003 INFO    ] 200
[2026-06-05 21:25:01,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:01,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:25:01,063.063 INFO    ] No update needed
[2026-06-05 21:25:01,066.066 INFO    ] Checking for camera pi updates...
[2026-06-05 21:25:01,101.101 INFO    ] 200
[2026-06-05 21:25:01,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:01,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:25:01,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:25:01,182.182 INFO    ] No camera update needed
[2026-06-05 21:25:01,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:25:01,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:25:01,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:25:01,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:25:03,252.252 INFO    ] ================================================
[2026-06-05 21:25:03,274.274 INFO    ] Launching Daemon at Fri Jun  5 21:25:03 IST 2026
[2026-06-05 21:25:03,295.295 INFO    ] ================================================
[2026-06-05 21:25:03,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:25:03
[2026-06-05 21:25:04,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:25:04,805.805 INFO    ] Initializing speech engine...
[2026-06-05 21:25:04,815.815 INFO    ] 2026-06-05 21:25:04
[2026-06-05 21:25:05,077.077 INFO    ] 2026-06-05 21:25:05
[2026-06-05 21:25:05,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:25:05,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:25:05,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:25:05,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:25:05,548.548 INFO    ] time= 05/06/2026 21:25:05
[2026-06-05 21:25:05,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:25:05,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:25:05,761.761 INFO    ] No existing commands found in stream
[2026-06-05 21:25:10,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:25:10,794.794 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 21:25:11,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:25:11,285.285 INFO    ] Checking for system updates...
[2026-06-05 21:25:11,327.327 INFO    ] 200
[2026-06-05 21:25:11,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:11,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:25:11,387.387 INFO    ] No update needed
[2026-06-05 21:25:11,390.390 INFO    ] Checking for camera pi updates...
[2026-06-05 21:25:11,429.429 INFO    ] 200
[2026-06-05 21:25:11,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:11,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:25:11,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:25:11,536.536 INFO    ] No camera update needed
[2026-06-05 21:25:11,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:25:11,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:25:11,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:25:11,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:25:13,592.592 INFO    ] ================================================
[2026-06-05 21:25:13,607.607 INFO    ] Launching Daemon at Fri Jun  5 21:25:13 IST 2026
[2026-06-05 21:25:13,618.618 INFO    ] ================================================
[2026-06-05 21:25:14,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:25:14
[2026-06-05 21:25:14,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:25:15,254.254 INFO    ] Initializing speech engine...
[2026-06-05 21:25:15,264.264 INFO    ] 2026-06-05 21:25:15
[2026-06-05 21:25:15,549.549 INFO    ] 2026-06-05 21:25:15
[2026-06-05 21:25:15,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:25:15,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:25:15,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:25:16,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:25:16,085.085 INFO    ] time= 05/06/2026 21:25:16
[2026-06-05 21:25:16,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:25:16,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:25:16,241.241 INFO    ] No existing commands found in stream
[2026-06-05 21:25:21,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:25:21,272.272 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 21:25:22,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:25:22,048.048 INFO    ] Checking for system updates...
[2026-06-05 21:25:22,086.086 INFO    ] 200
[2026-06-05 21:25:22,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:22,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:25:22,146.146 INFO    ] No update needed
[2026-06-05 21:25:22,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 21:25:22,184.184 INFO    ] 200
[2026-06-05 21:25:22,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:22,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:25:22,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:25:22,382.382 INFO    ] No camera update needed
[2026-06-05 21:25:22,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:25:22,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:25:22,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:25:22,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:25:24,440.440 INFO    ] ================================================
[2026-06-05 21:25:24,455.455 INFO    ] Launching Daemon at Fri Jun  5 21:25:24 IST 2026
[2026-06-05 21:25:24,466.466 INFO    ] ================================================
[2026-06-05 21:25:25,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:25:25
[2026-06-05 21:25:25,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:25:26,072.072 INFO    ] Initializing speech engine...
[2026-06-05 21:25:26,087.087 INFO    ] 2026-06-05 21:25:26
[2026-06-05 21:25:26,342.342 INFO    ] 2026-06-05 21:25:26
[2026-06-05 21:25:26,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:25:26,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:25:26,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:25:26,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:25:26,814.814 INFO    ] time= 05/06/2026 21:25:26
[2026-06-05 21:25:26,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:25:26,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:25:27,034.034 INFO    ] No existing commands found in stream
[2026-06-05 21:25:32,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:25:32,060.060 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 21:25:36,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:25:36,183.183 INFO    ] Checking for system updates...
[2026-06-05 21:25:36,220.220 INFO    ] 200
[2026-06-05 21:25:36,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:36,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:25:36,277.277 INFO    ] No update needed
[2026-06-05 21:25:36,280.280 INFO    ] Checking for camera pi updates...
[2026-06-05 21:25:36,316.316 INFO    ] 200
[2026-06-05 21:25:36,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:36,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:25:36,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:25:36,416.416 INFO    ] No camera update needed
[2026-06-05 21:25:36,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:25:36,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:25:36,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:25:36,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:25:38,471.471 INFO    ] ================================================
[2026-06-05 21:25:38,490.490 INFO    ] Launching Daemon at Fri Jun  5 21:25:38 IST 2026
[2026-06-05 21:25:38,500.500 INFO    ] ================================================
[2026-06-05 21:25:39,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:25:39
[2026-06-05 21:25:39,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:25:39,922.922 INFO    ] Initializing speech engine...
[2026-06-05 21:25:39,931.931 INFO    ] 2026-06-05 21:25:39
[2026-06-05 21:25:40,177.177 INFO    ] 2026-06-05 21:25:40
[2026-06-05 21:25:40,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:25:40,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:25:40,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:25:40,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:25:40,667.667 INFO    ] time= 05/06/2026 21:25:40
[2026-06-05 21:25:40,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:25:40,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:25:40,892.892 INFO    ] No existing commands found in stream
[2026-06-05 21:25:45,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:25:45,913.913 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 21:25:48,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:25:48,504.504 INFO    ] Checking for system updates...
[2026-06-05 21:25:48,551.551 INFO    ] 200
[2026-06-05 21:25:48,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:48,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:25:48,611.611 INFO    ] No update needed
[2026-06-05 21:25:48,613.613 INFO    ] Checking for camera pi updates...
[2026-06-05 21:25:48,647.647 INFO    ] 200
[2026-06-05 21:25:48,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:25:48,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:25:48,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:25:48,743.743 INFO    ] No camera update needed
[2026-06-05 21:25:48,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:25:48,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:25:48,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:25:48,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:25:50,797.797 INFO    ] ================================================
[2026-06-05 21:25:50,812.812 INFO    ] Launching Daemon at Fri Jun  5 21:25:50 IST 2026
[2026-06-05 21:25:50,823.823 INFO    ] ================================================
[2026-06-05 21:25:51,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:25:51
[2026-06-05 21:25:51,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:25:52,244.244 INFO    ] Initializing speech engine...
[2026-06-05 21:25:52,253.253 INFO    ] 2026-06-05 21:25:52
[2026-06-05 21:25:52,507.507 INFO    ] 2026-06-05 21:25:52
[2026-06-05 21:25:52,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:25:52,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:25:52,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:25:53,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:25:53,058.058 INFO    ] time= 05/06/2026 21:25:53
[2026-06-05 21:25:53,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:25:53,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:25:53,212.212 INFO    ] No existing commands found in stream
[2026-06-05 21:25:58,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:25:58,236.236 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 21:26:00,885.885 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:26:00,888.888 INFO    ] Checking for system updates...
[2026-06-05 21:26:00,923.923 INFO    ] 200
[2026-06-05 21:26:00,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:00,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:26:00,982.982 INFO    ] No update needed
[2026-06-05 21:26:00,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 21:26:01,018.018 INFO    ] 200
[2026-06-05 21:26:01,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:01,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:26:01,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:26:01,114.114 INFO    ] No camera update needed
[2026-06-05 21:26:01,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:26:01,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:26:01,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:26:01,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:26:03,175.175 INFO    ] ================================================
[2026-06-05 21:26:03,191.191 INFO    ] Launching Daemon at Fri Jun  5 21:26:03 IST 2026
[2026-06-05 21:26:03,201.201 INFO    ] ================================================
[2026-06-05 21:26:03,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:26:03
[2026-06-05 21:26:04,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:26:04,687.687 INFO    ] Initializing speech engine...
[2026-06-05 21:26:04,694.694 INFO    ] 2026-06-05 21:26:04
[2026-06-05 21:26:04,953.953 INFO    ] 2026-06-05 21:26:04
[2026-06-05 21:26:05,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:26:05,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:26:05,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:26:05,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:26:05,499.499 INFO    ] time= 05/06/2026 21:26:05
[2026-06-05 21:26:05,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:26:05,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:26:05,655.655 INFO    ] No existing commands found in stream
[2026-06-05 21:26:10,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:26:10,677.677 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 21:26:13,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:26:13,123.123 INFO    ] Checking for system updates...
[2026-06-05 21:26:13,163.163 INFO    ] 200
[2026-06-05 21:26:13,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:13,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:26:13,221.221 INFO    ] No update needed
[2026-06-05 21:26:13,224.224 INFO    ] Checking for camera pi updates...
[2026-06-05 21:26:13,261.261 INFO    ] 200
[2026-06-05 21:26:13,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:13,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:26:13,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:26:13,353.353 INFO    ] No camera update needed
[2026-06-05 21:26:13,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:26:13,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:26:13,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:26:13,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:26:15,409.409 INFO    ] ================================================
[2026-06-05 21:26:15,424.424 INFO    ] Launching Daemon at Fri Jun  5 21:26:15 IST 2026
[2026-06-05 21:26:15,435.435 INFO    ] ================================================
[2026-06-05 21:26:16,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:26:16
[2026-06-05 21:26:16,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:26:17,074.074 INFO    ] Initializing speech engine...
[2026-06-05 21:26:17,083.083 INFO    ] 2026-06-05 21:26:17
[2026-06-05 21:26:17,357.357 INFO    ] 2026-06-05 21:26:17
[2026-06-05 21:26:17,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:26:17,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:26:17,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:26:17,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:26:17,924.924 INFO    ] time= 05/06/2026 21:26:17
[2026-06-05 21:26:17,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:26:17,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:26:18,086.086 INFO    ] No existing commands found in stream
[2026-06-05 21:26:23,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:26:23,110.110 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 21:26:26,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:26:26,564.564 INFO    ] Checking for system updates...
[2026-06-05 21:26:26,603.603 INFO    ] 200
[2026-06-05 21:26:26,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:26,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:26:26,663.663 INFO    ] No update needed
[2026-06-05 21:26:26,666.666 INFO    ] Checking for camera pi updates...
[2026-06-05 21:26:26,702.702 INFO    ] 200
[2026-06-05 21:26:26,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:26,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:26:26,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:26:26,802.802 INFO    ] No camera update needed
[2026-06-05 21:26:26,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:26:26,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:26:26,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:26:26,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:26:28,862.862 INFO    ] ================================================
[2026-06-05 21:26:28,877.877 INFO    ] Launching Daemon at Fri Jun  5 21:26:28 IST 2026
[2026-06-05 21:26:28,888.888 INFO    ] ================================================
[2026-06-05 21:26:29,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:26:29
[2026-06-05 21:26:30,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:26:30,468.468 INFO    ] Initializing speech engine...
[2026-06-05 21:26:30,476.476 INFO    ] 2026-06-05 21:26:30
[2026-06-05 21:26:30,796.796 INFO    ] 2026-06-05 21:26:30
[2026-06-05 21:26:30,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:26:31,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:26:31,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:26:31,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:26:31,321.321 INFO    ] time= 05/06/2026 21:26:31
[2026-06-05 21:26:31,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:26:31,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:26:31,519.519 INFO    ] No existing commands found in stream
[2026-06-05 21:26:36,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:26:36,554.554 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 21:26:39,748.748 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:26:39,751.751 INFO    ] Checking for system updates...
[2026-06-05 21:26:39,792.792 INFO    ] 200
[2026-06-05 21:26:39,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:39,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:26:39,850.850 INFO    ] No update needed
[2026-06-05 21:26:39,852.852 INFO    ] Checking for camera pi updates...
[2026-06-05 21:26:39,886.886 INFO    ] 200
[2026-06-05 21:26:39,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:39,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:26:39,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:26:39,979.979 INFO    ] No camera update needed
[2026-06-05 21:26:39,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:26:39,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:26:39,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:26:39,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:26:42,036.036 INFO    ] ================================================
[2026-06-05 21:26:42,051.051 INFO    ] Launching Daemon at Fri Jun  5 21:26:42 IST 2026
[2026-06-05 21:26:42,062.062 INFO    ] ================================================
[2026-06-05 21:26:42,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:26:42
[2026-06-05 21:26:43,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:26:43,675.675 INFO    ] Initializing speech engine...
[2026-06-05 21:26:43,682.682 INFO    ] 2026-06-05 21:26:43
[2026-06-05 21:26:43,980.980 INFO    ] 2026-06-05 21:26:43
[2026-06-05 21:26:44,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:26:44,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:26:44,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:26:44,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:26:44,486.486 INFO    ] time= 05/06/2026 21:26:44
[2026-06-05 21:26:44,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:26:44,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:26:44,719.719 INFO    ] No existing commands found in stream
[2026-06-05 21:26:49,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:26:49,747.747 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 21:26:53,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:26:53,239.239 INFO    ] Checking for system updates...
[2026-06-05 21:26:53,277.277 INFO    ] 200
[2026-06-05 21:26:53,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:53,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:26:53,338.338 INFO    ] No update needed
[2026-06-05 21:26:53,341.341 INFO    ] Checking for camera pi updates...
[2026-06-05 21:26:53,376.376 INFO    ] 200
[2026-06-05 21:26:53,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:26:53,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:26:53,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:26:53,471.471 INFO    ] No camera update needed
[2026-06-05 21:26:53,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:26:53,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:26:53,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:26:53,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:26:55,525.525 INFO    ] ================================================
[2026-06-05 21:26:55,540.540 INFO    ] Launching Daemon at Fri Jun  5 21:26:55 IST 2026
[2026-06-05 21:26:55,551.551 INFO    ] ================================================
[2026-06-05 21:26:56,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:26:56
[2026-06-05 21:26:56,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:26:56,985.985 INFO    ] Initializing speech engine...
[2026-06-05 21:26:56,999.999 INFO    ] 2026-06-05 21:26:56
[2026-06-05 21:26:57,263.263 INFO    ] 2026-06-05 21:26:57
[2026-06-05 21:26:57,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:26:57,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:26:57,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:26:57,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:26:57,639.639 INFO    ] time= 05/06/2026 21:26:57
[2026-06-05 21:26:57,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:26:57,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:26:57,765.765 INFO    ] No existing commands found in stream
[2026-06-05 21:27:02,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:27:02,801.801 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 21:27:04,072.072 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:27:04,075.075 INFO    ] Checking for system updates...
[2026-06-05 21:27:04,115.115 INFO    ] 200
[2026-06-05 21:27:04,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:27:04,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:27:04,172.172 INFO    ] No update needed
[2026-06-05 21:27:04,174.174 INFO    ] Checking for camera pi updates...
[2026-06-05 21:27:04,211.211 INFO    ] 200
[2026-06-05 21:27:04,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:27:04,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:27:04,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:27:04,319.319 INFO    ] No camera update needed
[2026-06-05 21:27:04,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:27:04,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:27:04,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:27:04,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:27:06,375.375 INFO    ] ================================================
[2026-06-05 21:27:06,390.390 INFO    ] Launching Daemon at Fri Jun  5 21:27:06 IST 2026
[2026-06-05 21:27:06,400.400 INFO    ] ================================================
[2026-06-05 21:27:06,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:27:06
[2026-06-05 21:27:07,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:27:07,819.819 INFO    ] Initializing speech engine...
[2026-06-05 21:27:07,828.828 INFO    ] 2026-06-05 21:27:07
[2026-06-05 21:27:08,119.119 INFO    ] 2026-06-05 21:27:08
[2026-06-05 21:27:08,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:27:09,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:27:09,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:27:10,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:27:10,514.514 INFO    ] time= 05/06/2026 21:27:10
[2026-06-05 21:27:10,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:27:10,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:27:10,629.629 INFO    ] No existing commands found in stream
[2026-06-05 21:27:15,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:27:15,647.647 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 21:27:19,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:27:19,264.264 INFO    ] Checking for system updates...
[2026-06-05 21:27:19,301.301 INFO    ] 200
[2026-06-05 21:27:19,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:27:19,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:27:19,367.367 INFO    ] No update needed
[2026-06-05 21:27:19,369.369 INFO    ] Checking for camera pi updates...
[2026-06-05 21:27:19,407.407 INFO    ] 200
[2026-06-05 21:27:19,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:27:19,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:27:19,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:27:19,506.506 INFO    ] No camera update needed
[2026-06-05 21:27:19,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:27:19,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:27:19,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:27:19,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:27:21,561.561 INFO    ] ================================================
[2026-06-05 21:27:21,576.576 INFO    ] Launching Daemon at Fri Jun  5 21:27:21 IST 2026
[2026-06-05 21:27:21,587.587 INFO    ] ================================================
[2026-06-05 21:27:22,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:27:22
[2026-06-05 21:27:22,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:27:23,043.043 INFO    ] Initializing speech engine...
[2026-06-05 21:27:23,052.052 INFO    ] 2026-06-05 21:27:23
[2026-06-05 21:27:23,305.305 INFO    ] 2026-06-05 21:27:23
[2026-06-05 21:27:23,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:27:23,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:27:23,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:27:23,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:27:23,788.788 INFO    ] time= 05/06/2026 21:27:23
[2026-06-05 21:27:23,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:27:23,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:27:23,998.998 INFO    ] No existing commands found in stream
[2026-06-05 21:27:29,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:27:29,034.034 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 21:27:34,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:27:34,329.329 INFO    ] Checking for system updates...
[2026-06-05 21:27:34,366.366 INFO    ] 200
[2026-06-05 21:27:34,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:27:34,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:27:34,432.432 INFO    ] No update needed
[2026-06-05 21:27:34,435.435 INFO    ] Checking for camera pi updates...
[2026-06-05 21:27:34,469.469 INFO    ] 200
[2026-06-05 21:27:34,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:27:34,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:27:34,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:27:34,592.592 INFO    ] No camera update needed
[2026-06-05 21:27:34,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:27:34,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:27:34,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:27:34,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:27:36,647.647 INFO    ] ================================================
[2026-06-05 21:27:36,662.662 INFO    ] Launching Daemon at Fri Jun  5 21:27:36 IST 2026
[2026-06-05 21:27:36,672.672 INFO    ] ================================================
[2026-06-05 21:27:37,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:27:37
[2026-06-05 21:27:37,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:27:38,093.093 INFO    ] Initializing speech engine...
[2026-06-05 21:27:38,102.102 INFO    ] 2026-06-05 21:27:38
[2026-06-05 21:27:38,363.363 INFO    ] 2026-06-05 21:27:38
[2026-06-05 21:27:38,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:27:40,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:27:40,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:27:40,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:27:40,862.862 INFO    ] time= 05/06/2026 21:27:40
[2026-06-05 21:27:40,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:27:40,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:27:40,986.986 INFO    ] No existing commands found in stream
[2026-06-05 21:27:45,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:27:45,999.999 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-05 21:27:50,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:27:50,045.045 INFO    ] Checking for system updates...
[2026-06-05 21:27:50,081.081 INFO    ] 200
[2026-06-05 21:27:50,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:27:50,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:27:50,145.145 INFO    ] No update needed
[2026-06-05 21:27:50,148.148 INFO    ] Checking for camera pi updates...
[2026-06-05 21:27:50,181.181 INFO    ] 200
[2026-06-05 21:27:50,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:27:50,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:27:50,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:27:50,282.282 INFO    ] No camera update needed
[2026-06-05 21:27:50,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:27:50,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:27:50,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:27:50,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:27:52,338.338 INFO    ] ================================================
[2026-06-05 21:27:52,354.354 INFO    ] Launching Daemon at Fri Jun  5 21:27:52 IST 2026
[2026-06-05 21:27:52,366.366 INFO    ] ================================================
[2026-06-05 21:27:53,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:27:53
[2026-06-05 21:27:53,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:27:53,964.964 INFO    ] Initializing speech engine...
[2026-06-05 21:27:53,972.972 INFO    ] 2026-06-05 21:27:53
[2026-06-05 21:27:54,242.242 INFO    ] 2026-06-05 21:27:54
[2026-06-05 21:27:54,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:27:54,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:27:54,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:27:54,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:27:54,790.790 INFO    ] time= 05/06/2026 21:27:54
[2026-06-05 21:27:54,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:27:54,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:27:54,942.942 INFO    ] No existing commands found in stream
[2026-06-05 21:27:59,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:27:59,960.960 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 21:28:03,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:28:03,467.467 INFO    ] Checking for system updates...
[2026-06-05 21:28:03,507.507 INFO    ] 200
[2026-06-05 21:28:03,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:28:03,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:28:03,571.571 INFO    ] No update needed
[2026-06-05 21:28:03,573.573 INFO    ] Checking for camera pi updates...
[2026-06-05 21:28:03,611.611 INFO    ] 200
[2026-06-05 21:28:03,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:28:03,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:28:03,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:28:03,707.707 INFO    ] No camera update needed
[2026-06-05 21:28:03,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:28:03,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:28:03,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:28:03,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:28:05,764.764 INFO    ] ================================================
[2026-06-05 21:28:05,780.780 INFO    ] Launching Daemon at Fri Jun  5 21:28:05 IST 2026
[2026-06-05 21:28:05,792.792 INFO    ] ================================================
[2026-06-05 21:28:06,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:28:06
[2026-06-05 21:28:07,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:28:07,422.422 INFO    ] Initializing speech engine...
[2026-06-05 21:28:07,430.430 INFO    ] 2026-06-05 21:28:07
[2026-06-05 21:28:07,722.722 INFO    ] 2026-06-05 21:28:07
[2026-06-05 21:28:07,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:28:10,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:28:10,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:28:10,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:28:10,614.614 INFO    ] time= 05/06/2026 21:28:10
[2026-06-05 21:28:10,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:28:10,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:28:10,688.688 INFO    ] No existing commands found in stream
[2026-06-05 21:28:15,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:28:15,702.702 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 21:28:19,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:28:19,835.835 INFO    ] Checking for system updates...
[2026-06-05 21:28:19,876.876 INFO    ] 200
[2026-06-05 21:28:19,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:28:19,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:28:19,937.937 INFO    ] No update needed
[2026-06-05 21:28:19,940.940 INFO    ] Checking for camera pi updates...
[2026-06-05 21:28:19,976.976 INFO    ] 200
[2026-06-05 21:28:19,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:28:20,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:28:20,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:28:20,076.076 INFO    ] No camera update needed
[2026-06-05 21:28:20,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:28:20,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:28:20,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:28:20,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:28:22,139.139 INFO    ] ================================================
[2026-06-05 21:28:22,157.157 INFO    ] Launching Daemon at Fri Jun  5 21:28:22 IST 2026
[2026-06-05 21:28:22,169.169 INFO    ] ================================================
[2026-06-05 21:28:22,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:28:22
[2026-06-05 21:28:23,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:28:23,809.809 INFO    ] Initializing speech engine...
[2026-06-05 21:28:23,818.818 INFO    ] 2026-06-05 21:28:23
[2026-06-05 21:28:24,102.102 INFO    ] 2026-06-05 21:28:24
[2026-06-05 21:28:24,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:28:24,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:28:24,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:28:24,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:28:24,822.822 INFO    ] time= 05/06/2026 21:28:24
[2026-06-05 21:28:24,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:28:24,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:28:25,040.040 INFO    ] No existing commands found in stream
[2026-06-05 21:28:30,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:28:30,081.081 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 21:28:34,273.273 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:28:34,277.277 INFO    ] Checking for system updates...
[2026-06-05 21:28:34,320.320 INFO    ] 200
[2026-06-05 21:28:34,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:28:34,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:28:34,417.417 INFO    ] No update needed
[2026-06-05 21:28:34,420.420 INFO    ] Checking for camera pi updates...
[2026-06-05 21:28:34,458.458 INFO    ] 200
[2026-06-05 21:28:34,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:28:34,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:28:34,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:28:34,555.555 INFO    ] No camera update needed
[2026-06-05 21:28:34,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:28:34,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:28:34,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:28:34,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:28:36,614.614 INFO    ] ================================================
[2026-06-05 21:28:36,629.629 INFO    ] Launching Daemon at Fri Jun  5 21:28:36 IST 2026
[2026-06-05 21:28:36,640.640 INFO    ] ================================================
[2026-06-05 21:28:37,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:28:37
[2026-06-05 21:28:37,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:28:38,132.132 INFO    ] Initializing speech engine...
[2026-06-05 21:28:38,141.141 INFO    ] 2026-06-05 21:28:38
[2026-06-05 21:28:38,408.408 INFO    ] 2026-06-05 21:28:38
[2026-06-05 21:28:38,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:28:40,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:28:40,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:28:41,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:28:41,033.033 INFO    ] time= 05/06/2026 21:28:41
[2026-06-05 21:28:41,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:28:41,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:28:41,220.220 INFO    ] No existing commands found in stream
[2026-06-05 21:28:46,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:28:46,235.235 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 21:28:50,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:28:50,466.466 INFO    ] Checking for system updates...
[2026-06-05 21:28:50,503.503 INFO    ] 200
[2026-06-05 21:28:50,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:28:50,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:28:50,567.567 INFO    ] No update needed
[2026-06-05 21:28:50,569.569 INFO    ] Checking for camera pi updates...
[2026-06-05 21:28:50,606.606 INFO    ] 200
[2026-06-05 21:28:50,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:28:50,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:28:50,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:28:50,703.703 INFO    ] No camera update needed
[2026-06-05 21:28:50,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:28:50,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:28:50,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:28:50,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:28:52,758.758 INFO    ] ================================================
[2026-06-05 21:28:52,773.773 INFO    ] Launching Daemon at Fri Jun  5 21:28:52 IST 2026
[2026-06-05 21:28:52,784.784 INFO    ] ================================================
[2026-06-05 21:28:53,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:28:53
[2026-06-05 21:28:53,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:28:54,229.229 INFO    ] Initializing speech engine...
[2026-06-05 21:28:54,245.245 INFO    ] 2026-06-05 21:28:54
[2026-06-05 21:28:54,530.530 INFO    ] 2026-06-05 21:28:54
[2026-06-05 21:28:54,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:28:54,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:28:54,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:28:55,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:28:55,045.045 INFO    ] time= 05/06/2026 21:28:55
[2026-06-05 21:28:55,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:28:55,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:28:55,309.309 INFO    ] No existing commands found in stream
[2026-06-05 21:29:00,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:29:00,332.332 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 21:29:03,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:29:03,018.018 INFO    ] Checking for system updates...
[2026-06-05 21:29:03,054.054 INFO    ] 200
[2026-06-05 21:29:03,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:03,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:29:03,114.114 INFO    ] No update needed
[2026-06-05 21:29:03,116.116 INFO    ] Checking for camera pi updates...
[2026-06-05 21:29:03,152.152 INFO    ] 200
[2026-06-05 21:29:03,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:03,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:29:03,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:29:03,259.259 INFO    ] No camera update needed
[2026-06-05 21:29:03,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:29:03,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:29:03,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:29:03,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:29:05,315.315 INFO    ] ================================================
[2026-06-05 21:29:05,331.331 INFO    ] Launching Daemon at Fri Jun  5 21:29:05 IST 2026
[2026-06-05 21:29:05,342.342 INFO    ] ================================================
[2026-06-05 21:29:05,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:29:05
[2026-06-05 21:29:06,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:29:06,799.799 INFO    ] Initializing speech engine...
[2026-06-05 21:29:06,806.806 INFO    ] 2026-06-05 21:29:06
[2026-06-05 21:29:07,101.101 INFO    ] 2026-06-05 21:29:07
[2026-06-05 21:29:07,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:29:07,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:29:07,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:29:07,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:29:07,622.622 INFO    ] time= 05/06/2026 21:29:07
[2026-06-05 21:29:07,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:29:07,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:29:07,864.864 INFO    ] No existing commands found in stream
[2026-06-05 21:29:12,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:29:12,898.898 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 21:29:15,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:29:15,519.519 INFO    ] Checking for system updates...
[2026-06-05 21:29:15,556.556 INFO    ] 200
[2026-06-05 21:29:15,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:15,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:29:15,615.615 INFO    ] No update needed
[2026-06-05 21:29:15,618.618 INFO    ] Checking for camera pi updates...
[2026-06-05 21:29:15,653.653 INFO    ] 200
[2026-06-05 21:29:15,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:15,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:29:15,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:29:15,749.749 INFO    ] No camera update needed
[2026-06-05 21:29:15,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:29:15,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:29:15,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:29:15,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:29:17,808.808 INFO    ] ================================================
[2026-06-05 21:29:17,823.823 INFO    ] Launching Daemon at Fri Jun  5 21:29:17 IST 2026
[2026-06-05 21:29:17,834.834 INFO    ] ================================================
[2026-06-05 21:29:18,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:29:18
[2026-06-05 21:29:18,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:29:19,274.274 INFO    ] Initializing speech engine...
[2026-06-05 21:29:19,280.280 INFO    ] 2026-06-05 21:29:19
[2026-06-05 21:29:19,528.528 INFO    ] 2026-06-05 21:29:19
[2026-06-05 21:29:19,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:29:19,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:29:19,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:29:20,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:29:20,098.098 INFO    ] time= 05/06/2026 21:29:20
[2026-06-05 21:29:20,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:29:20,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:29:20,257.257 INFO    ] No existing commands found in stream
[2026-06-05 21:29:25,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:29:25,274.274 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 21:29:26,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:29:26,327.327 INFO    ] Checking for system updates...
[2026-06-05 21:29:26,366.366 INFO    ] 200
[2026-06-05 21:29:26,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:26,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:29:26,429.429 INFO    ] No update needed
[2026-06-05 21:29:26,431.431 INFO    ] Checking for camera pi updates...
[2026-06-05 21:29:26,468.468 INFO    ] 200
[2026-06-05 21:29:26,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:26,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:29:26,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:29:26,568.568 INFO    ] No camera update needed
[2026-06-05 21:29:26,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:29:26,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:29:26,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:29:26,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:29:28,624.624 INFO    ] ================================================
[2026-06-05 21:29:28,640.640 INFO    ] Launching Daemon at Fri Jun  5 21:29:28 IST 2026
[2026-06-05 21:29:28,651.651 INFO    ] ================================================
[2026-06-05 21:29:29,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:29:29
[2026-06-05 21:29:29,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:29:30,091.091 INFO    ] Initializing speech engine...
[2026-06-05 21:29:30,106.106 INFO    ] 2026-06-05 21:29:30
[2026-06-05 21:29:30,380.380 INFO    ] 2026-06-05 21:29:30
[2026-06-05 21:29:30,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:29:30,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:29:30,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:29:30,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:29:30,788.788 INFO    ] time= 05/06/2026 21:29:30
[2026-06-05 21:29:30,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:29:30,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:29:30,947.947 INFO    ] No existing commands found in stream
[2026-06-05 21:29:35,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:29:35,969.969 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 21:29:41,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:29:41,493.493 INFO    ] Checking for system updates...
[2026-06-05 21:29:41,530.530 INFO    ] 200
[2026-06-05 21:29:41,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:41,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:29:41,588.588 INFO    ] No update needed
[2026-06-05 21:29:41,591.591 INFO    ] Checking for camera pi updates...
[2026-06-05 21:29:41,627.627 INFO    ] 200
[2026-06-05 21:29:41,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:41,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:29:41,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:29:41,823.823 INFO    ] No camera update needed
[2026-06-05 21:29:41,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:29:41,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:29:41,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:29:41,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:29:43,879.879 INFO    ] ================================================
[2026-06-05 21:29:43,895.895 INFO    ] Launching Daemon at Fri Jun  5 21:29:43 IST 2026
[2026-06-05 21:29:43,906.906 INFO    ] ================================================
[2026-06-05 21:29:44,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:29:44
[2026-06-05 21:29:45,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:29:45,368.368 INFO    ] Initializing speech engine...
[2026-06-05 21:29:45,378.378 INFO    ] 2026-06-05 21:29:45
[2026-06-05 21:29:45,640.640 INFO    ] 2026-06-05 21:29:45
[2026-06-05 21:29:45,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:29:45,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:29:45,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:29:46,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:29:46,213.213 INFO    ] time= 05/06/2026 21:29:46
[2026-06-05 21:29:46,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:29:46,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:29:46,365.365 INFO    ] No existing commands found in stream
[2026-06-05 21:29:51,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:29:51,384.384 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 21:29:54,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:29:54,045.045 INFO    ] Checking for system updates...
[2026-06-05 21:29:54,081.081 INFO    ] 200
[2026-06-05 21:29:54,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:54,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:29:54,140.140 INFO    ] No update needed
[2026-06-05 21:29:54,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 21:29:54,176.176 INFO    ] 200
[2026-06-05 21:29:54,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:29:54,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:29:54,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:29:54,270.270 INFO    ] No camera update needed
[2026-06-05 21:29:54,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:29:54,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:29:54,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:29:54,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:29:56,330.330 INFO    ] ================================================
[2026-06-05 21:29:56,346.346 INFO    ] Launching Daemon at Fri Jun  5 21:29:56 IST 2026
[2026-06-05 21:29:56,358.358 INFO    ] ================================================
[2026-06-05 21:29:56,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:29:56
[2026-06-05 21:29:57,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:29:57,843.843 INFO    ] Initializing speech engine...
[2026-06-05 21:29:57,852.852 INFO    ] 2026-06-05 21:29:57
[2026-06-05 21:29:58,146.146 INFO    ] 2026-06-05 21:29:58
[2026-06-05 21:29:58,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:29:58,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:29:58,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:29:58,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:29:58,574.574 INFO    ] time= 05/06/2026 21:29:58
[2026-06-05 21:29:58,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:29:58,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:29:58,776.776 INFO    ] No existing commands found in stream
[2026-06-05 21:30:03,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:30:03,818.818 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 21:30:08,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:30:08,930.930 INFO    ] Checking for system updates...
[2026-06-05 21:30:08,967.967 INFO    ] 200
[2026-06-05 21:30:08,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:30:09,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:30:09,028.028 INFO    ] No update needed
[2026-06-05 21:30:09,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 21:30:09,067.067 INFO    ] 200
[2026-06-05 21:30:09,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:30:09,110.110 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:30:09,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:30:09,163.163 INFO    ] No camera update needed
[2026-06-05 21:30:09,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:30:09,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:30:09,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:30:09,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:30:11,219.219 INFO    ] ================================================
[2026-06-05 21:30:11,236.236 INFO    ] Launching Daemon at Fri Jun  5 21:30:11 IST 2026
[2026-06-05 21:30:11,247.247 INFO    ] ================================================
[2026-06-05 21:30:11,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:30:11
[2026-06-05 21:30:12,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:30:12,742.742 INFO    ] Initializing speech engine...
[2026-06-05 21:30:12,751.751 INFO    ] 2026-06-05 21:30:12
[2026-06-05 21:30:13,014.014 INFO    ] 2026-06-05 21:30:13
[2026-06-05 21:30:13,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:30:13,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:30:13,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:30:13,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:30:13,426.426 INFO    ] time= 05/06/2026 21:30:13
[2026-06-05 21:30:13,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:30:13,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:30:13,571.571 INFO    ] No existing commands found in stream
[2026-06-05 21:30:18,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:30:18,604.604 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 21:30:22,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:30:22,303.303 INFO    ] Checking for system updates...
[2026-06-05 21:30:22,345.345 INFO    ] 200
[2026-06-05 21:30:22,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:30:22,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:30:22,402.402 INFO    ] No update needed
[2026-06-05 21:30:22,405.405 INFO    ] Checking for camera pi updates...
[2026-06-05 21:30:22,439.439 INFO    ] 200
[2026-06-05 21:30:22,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:30:22,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:30:22,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:30:22,521.521 INFO    ] No camera update needed
[2026-06-05 21:30:22,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:30:22,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:30:22,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:30:22,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:30:24,582.582 INFO    ] ================================================
[2026-06-05 21:30:24,599.599 INFO    ] Launching Daemon at Fri Jun  5 21:30:24 IST 2026
[2026-06-05 21:30:24,610.610 INFO    ] ================================================
[2026-06-05 21:30:25,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:30:25
[2026-06-05 21:30:25,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:30:26,204.204 INFO    ] Initializing speech engine...
[2026-06-05 21:30:26,215.215 INFO    ] 2026-06-05 21:30:26
[2026-06-05 21:30:26,534.534 INFO    ] 2026-06-05 21:30:26
[2026-06-05 21:30:26,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:30:26,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:30:26,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:30:27,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:30:27,052.052 INFO    ] time= 05/06/2026 21:30:27
[2026-06-05 21:30:27,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:30:27,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:30:27,207.207 INFO    ] No existing commands found in stream
[2026-06-05 21:30:32,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:30:32,241.241 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-05 21:30:35,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:30:35,785.785 INFO    ] Checking for system updates...
[2026-06-05 21:30:35,823.823 INFO    ] 200
[2026-06-05 21:30:35,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:30:35,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:30:35,891.891 INFO    ] No update needed
[2026-06-05 21:30:35,894.894 INFO    ] Checking for camera pi updates...
[2026-06-05 21:30:35,937.937 INFO    ] 200
[2026-06-05 21:30:35,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:30:35,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:30:36,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:30:36,041.041 INFO    ] No camera update needed
[2026-06-05 21:30:36,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:30:36,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:30:36,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:30:36,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:30:38,097.097 INFO    ] ================================================
[2026-06-05 21:30:38,113.113 INFO    ] Launching Daemon at Fri Jun  5 21:30:38 IST 2026
[2026-06-05 21:30:38,124.124 INFO    ] ================================================
[2026-06-05 21:30:38,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:30:38
[2026-06-05 21:30:39,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:30:39,566.566 INFO    ] Initializing speech engine...
[2026-06-05 21:30:39,587.587 INFO    ] 2026-06-05 21:30:39
[2026-06-05 21:30:39,849.849 INFO    ] 2026-06-05 21:30:39
[2026-06-05 21:30:39,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:30:41,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:30:41,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:30:41,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:30:41,998.998 INFO    ] time= 05/06/2026 21:30:41
[2026-06-05 21:30:42,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:30:42,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:30:42,096.096 INFO    ] No existing commands found in stream
[2026-06-05 21:30:47,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:30:47,116.116 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 21:30:51,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:30:51,069.069 INFO    ] Checking for system updates...
[2026-06-05 21:30:51,106.106 INFO    ] 200
[2026-06-05 21:30:51,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:30:51,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:30:51,164.164 INFO    ] No update needed
[2026-06-05 21:30:51,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 21:30:51,206.206 INFO    ] 200
[2026-06-05 21:30:51,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:30:51,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:30:51,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:30:51,300.300 INFO    ] No camera update needed
[2026-06-05 21:30:51,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:30:51,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:30:51,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:30:51,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:30:53,356.356 INFO    ] ================================================
[2026-06-05 21:30:53,372.372 INFO    ] Launching Daemon at Fri Jun  5 21:30:53 IST 2026
[2026-06-05 21:30:53,384.384 INFO    ] ================================================
[2026-06-05 21:30:54,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:30:53
[2026-06-05 21:30:54,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:30:54,867.867 INFO    ] Initializing speech engine...
[2026-06-05 21:30:54,884.884 INFO    ] 2026-06-05 21:30:54
[2026-06-05 21:30:55,143.143 INFO    ] 2026-06-05 21:30:55
[2026-06-05 21:30:55,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:30:55,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:30:55,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:30:55,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:30:55,630.630 INFO    ] time= 05/06/2026 21:30:55
[2026-06-05 21:30:55,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:30:55,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:30:55,860.860 INFO    ] No existing commands found in stream
[2026-06-05 21:31:00,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:31:00,892.892 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 21:31:02,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:31:02,151.151 INFO    ] Checking for system updates...
[2026-06-05 21:31:02,195.195 INFO    ] 200
[2026-06-05 21:31:02,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:02,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:31:02,271.271 INFO    ] No update needed
[2026-06-05 21:31:02,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 21:31:02,376.376 INFO    ] 200
[2026-06-05 21:31:02,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:02,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:31:02,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:31:02,500.500 INFO    ] No camera update needed
[2026-06-05 21:31:02,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:31:02,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:31:02,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:31:02,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:31:04,561.561 INFO    ] ================================================
[2026-06-05 21:31:04,577.577 INFO    ] Launching Daemon at Fri Jun  5 21:31:04 IST 2026
[2026-06-05 21:31:04,588.588 INFO    ] ================================================
[2026-06-05 21:31:05,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:31:05
[2026-06-05 21:31:05,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:31:06,043.043 INFO    ] Initializing speech engine...
[2026-06-05 21:31:06,052.052 INFO    ] 2026-06-05 21:31:06
[2026-06-05 21:31:06,300.300 INFO    ] 2026-06-05 21:31:06
[2026-06-05 21:31:06,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:31:06,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:31:06,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:31:06,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:31:06,772.772 INFO    ] time= 05/06/2026 21:31:06
[2026-06-05 21:31:06,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:31:06,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:31:07,015.015 INFO    ] No existing commands found in stream
[2026-06-05 21:31:12,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:31:12,040.040 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-05 21:31:14,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:31:14,945.945 INFO    ] Checking for system updates...
[2026-06-05 21:31:14,982.982 INFO    ] 200
[2026-06-05 21:31:14,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:15,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:31:15,045.045 INFO    ] No update needed
[2026-06-05 21:31:15,047.047 INFO    ] Checking for camera pi updates...
[2026-06-05 21:31:15,095.095 INFO    ] 200
[2026-06-05 21:31:15,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:15,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:31:15,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:31:15,182.182 INFO    ] No camera update needed
[2026-06-05 21:31:15,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:31:15,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:31:15,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:31:15,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:31:17,238.238 INFO    ] ================================================
[2026-06-05 21:31:17,254.254 INFO    ] Launching Daemon at Fri Jun  5 21:31:17 IST 2026
[2026-06-05 21:31:17,266.266 INFO    ] ================================================
[2026-06-05 21:31:17,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:31:17
[2026-06-05 21:31:18,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:31:18,692.692 INFO    ] Initializing speech engine...
[2026-06-05 21:31:18,701.701 INFO    ] 2026-06-05 21:31:18
[2026-06-05 21:31:18,995.995 INFO    ] 2026-06-05 21:31:18
[2026-06-05 21:31:19,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:31:19,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:31:19,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:31:19,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:31:19,413.413 INFO    ] time= 05/06/2026 21:31:19
[2026-06-05 21:31:19,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:31:19,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:31:19,588.588 INFO    ] No existing commands found in stream
[2026-06-05 21:31:24,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:31:24,620.620 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 21:31:28,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:31:28,175.175 INFO    ] Checking for system updates...
[2026-06-05 21:31:28,212.212 INFO    ] 200
[2026-06-05 21:31:28,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:28,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:31:28,271.271 INFO    ] No update needed
[2026-06-05 21:31:28,273.273 INFO    ] Checking for camera pi updates...
[2026-06-05 21:31:28,310.310 INFO    ] 200
[2026-06-05 21:31:28,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:28,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:31:28,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:31:28,406.406 INFO    ] No camera update needed
[2026-06-05 21:31:28,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:31:28,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:31:28,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:31:28,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:31:30,461.461 INFO    ] ================================================
[2026-06-05 21:31:30,477.477 INFO    ] Launching Daemon at Fri Jun  5 21:31:30 IST 2026
[2026-06-05 21:31:30,488.488 INFO    ] ================================================
[2026-06-05 21:31:31,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:31:31
[2026-06-05 21:31:31,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:31:31,899.899 INFO    ] Initializing speech engine...
[2026-06-05 21:31:31,922.922 INFO    ] 2026-06-05 21:31:31
[2026-06-05 21:31:32,221.221 INFO    ] 2026-06-05 21:31:32
[2026-06-05 21:31:32,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:31:32,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:31:32,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:31:32,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:31:32,724.724 INFO    ] time= 05/06/2026 21:31:32
[2026-06-05 21:31:32,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:31:32,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:31:32,910.910 INFO    ] No existing commands found in stream
[2026-06-05 21:31:37,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:31:37,937.937 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 21:31:42,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:31:42,526.526 INFO    ] Checking for system updates...
[2026-06-05 21:31:42,562.562 INFO    ] 200
[2026-06-05 21:31:42,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:42,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:31:42,621.621 INFO    ] No update needed
[2026-06-05 21:31:42,623.623 INFO    ] Checking for camera pi updates...
[2026-06-05 21:31:42,657.657 INFO    ] 200
[2026-06-05 21:31:42,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:42,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:31:42,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:31:42,756.756 INFO    ] No camera update needed
[2026-06-05 21:31:42,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:31:42,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:31:42,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:31:42,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:31:44,811.811 INFO    ] ================================================
[2026-06-05 21:31:44,827.827 INFO    ] Launching Daemon at Fri Jun  5 21:31:44 IST 2026
[2026-06-05 21:31:44,838.838 INFO    ] ================================================
[2026-06-05 21:31:45,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:31:45
[2026-06-05 21:31:46,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:31:46,293.293 INFO    ] Initializing speech engine...
[2026-06-05 21:31:46,301.301 INFO    ] 2026-06-05 21:31:46
[2026-06-05 21:31:46,593.593 INFO    ] 2026-06-05 21:31:46
[2026-06-05 21:31:46,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:31:46,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:31:46,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:31:47,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:31:47,120.120 INFO    ] time= 05/06/2026 21:31:47
[2026-06-05 21:31:47,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:31:47,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:31:47,377.377 INFO    ] No existing commands found in stream
[2026-06-05 21:31:52,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:31:52,393.393 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 21:31:55,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:31:55,728.728 INFO    ] Checking for system updates...
[2026-06-05 21:31:55,765.765 INFO    ] 200
[2026-06-05 21:31:55,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:55,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:31:55,829.829 INFO    ] No update needed
[2026-06-05 21:31:55,831.831 INFO    ] Checking for camera pi updates...
[2026-06-05 21:31:55,865.865 INFO    ] 200
[2026-06-05 21:31:55,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:31:55,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:31:56,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:31:56,070.070 INFO    ] No camera update needed
[2026-06-05 21:31:56,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:31:56,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:31:56,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:31:56,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:31:58,126.126 INFO    ] ================================================
[2026-06-05 21:31:58,142.142 INFO    ] Launching Daemon at Fri Jun  5 21:31:58 IST 2026
[2026-06-05 21:31:58,153.153 INFO    ] ================================================
[2026-06-05 21:31:58,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:31:58
[2026-06-05 21:31:59,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:31:59,639.639 INFO    ] Initializing speech engine...
[2026-06-05 21:31:59,645.645 INFO    ] 2026-06-05 21:31:59
[2026-06-05 21:31:59,943.943 INFO    ] 2026-06-05 21:31:59
[2026-06-05 21:31:59,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:32:00,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:32:00,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:32:00,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:32:00,367.367 INFO    ] time= 05/06/2026 21:32:00
[2026-06-05 21:32:00,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:32:00,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:32:00,533.533 INFO    ] No existing commands found in stream
[2026-06-05 21:32:05,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:32:05,561.561 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-05 21:32:07,542.542 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:32:07,544.544 INFO    ] Checking for system updates...
[2026-06-05 21:32:07,581.581 INFO    ] 200
[2026-06-05 21:32:07,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:07,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:32:07,642.642 INFO    ] No update needed
[2026-06-05 21:32:07,648.648 INFO    ] Checking for camera pi updates...
[2026-06-05 21:32:07,682.682 INFO    ] 200
[2026-06-05 21:32:07,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:07,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:32:07,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:32:07,770.770 INFO    ] No camera update needed
[2026-06-05 21:32:07,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:32:07,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:32:07,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:32:07,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:32:09,827.827 INFO    ] ================================================
[2026-06-05 21:32:09,843.843 INFO    ] Launching Daemon at Fri Jun  5 21:32:09 IST 2026
[2026-06-05 21:32:09,854.854 INFO    ] ================================================
[2026-06-05 21:32:10,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:32:10
[2026-06-05 21:32:11,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:32:11,328.328 INFO    ] Initializing speech engine...
[2026-06-05 21:32:11,336.336 INFO    ] 2026-06-05 21:32:11
[2026-06-05 21:32:11,612.612 INFO    ] 2026-06-05 21:32:11
[2026-06-05 21:32:11,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:32:12,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:32:12,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:32:13,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:32:13,180.180 INFO    ] time= 05/06/2026 21:32:13
[2026-06-05 21:32:13,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:32:13,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:32:13,268.268 INFO    ] No existing commands found in stream
[2026-06-05 21:32:18,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:32:18,282.282 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 21:32:20,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:32:20,494.494 INFO    ] Checking for system updates...
[2026-06-05 21:32:20,531.531 INFO    ] 200
[2026-06-05 21:32:20,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:20,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:32:20,593.593 INFO    ] No update needed
[2026-06-05 21:32:20,597.597 INFO    ] Checking for camera pi updates...
[2026-06-05 21:32:20,638.638 INFO    ] 200
[2026-06-05 21:32:20,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:20,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:32:20,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:32:20,731.731 INFO    ] No camera update needed
[2026-06-05 21:32:20,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:32:20,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:32:20,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:32:20,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:32:22,788.788 INFO    ] ================================================
[2026-06-05 21:32:22,804.804 INFO    ] Launching Daemon at Fri Jun  5 21:32:22 IST 2026
[2026-06-05 21:32:22,815.815 INFO    ] ================================================
[2026-06-05 21:32:23,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:32:23
[2026-06-05 21:32:24,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:32:24,445.445 INFO    ] Initializing speech engine...
[2026-06-05 21:32:24,453.453 INFO    ] 2026-06-05 21:32:24
[2026-06-05 21:32:24,743.743 INFO    ] 2026-06-05 21:32:24
[2026-06-05 21:32:24,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:32:25,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:32:25,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:32:25,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:32:25,253.253 INFO    ] time= 05/06/2026 21:32:25
[2026-06-05 21:32:25,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:32:25,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:32:25,472.472 INFO    ] No existing commands found in stream
[2026-06-05 21:32:30,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:32:30,520.520 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-05 21:32:34,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:32:34,146.146 INFO    ] Checking for system updates...
[2026-06-05 21:32:34,185.185 INFO    ] 200
[2026-06-05 21:32:34,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:34,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:32:34,242.242 INFO    ] No update needed
[2026-06-05 21:32:34,245.245 INFO    ] Checking for camera pi updates...
[2026-06-05 21:32:34,279.279 INFO    ] 200
[2026-06-05 21:32:34,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:34,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:32:34,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:32:34,373.373 INFO    ] No camera update needed
[2026-06-05 21:32:34,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:32:34,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:32:34,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:32:34,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:32:36,429.429 INFO    ] ================================================
[2026-06-05 21:32:36,445.445 INFO    ] Launching Daemon at Fri Jun  5 21:32:36 IST 2026
[2026-06-05 21:32:36,456.456 INFO    ] ================================================
[2026-06-05 21:32:37,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:32:37
[2026-06-05 21:32:37,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:32:38,074.074 INFO    ] Initializing speech engine...
[2026-06-05 21:32:38,089.089 INFO    ] 2026-06-05 21:32:38
[2026-06-05 21:32:38,377.377 INFO    ] 2026-06-05 21:32:38
[2026-06-05 21:32:38,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:32:38,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:32:38,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:32:38,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:32:38,943.943 INFO    ] time= 05/06/2026 21:32:38
[2026-06-05 21:32:38,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:32:38,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:32:39,110.110 INFO    ] No existing commands found in stream
[2026-06-05 21:32:44,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:32:44,143.143 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 21:32:46,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:32:46,915.915 INFO    ] Checking for system updates...
[2026-06-05 21:32:46,952.952 INFO    ] 200
[2026-06-05 21:32:46,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:47,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:32:47,011.011 INFO    ] No update needed
[2026-06-05 21:32:47,013.013 INFO    ] Checking for camera pi updates...
[2026-06-05 21:32:47,047.047 INFO    ] 200
[2026-06-05 21:32:47,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:47,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:32:47,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:32:47,150.150 INFO    ] No camera update needed
[2026-06-05 21:32:47,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:32:47,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:32:47,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:32:47,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:32:49,208.208 INFO    ] ================================================
[2026-06-05 21:32:49,223.223 INFO    ] Launching Daemon at Fri Jun  5 21:32:49 IST 2026
[2026-06-05 21:32:49,234.234 INFO    ] ================================================
[2026-06-05 21:32:49,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:32:49
[2026-06-05 21:32:50,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:32:50,641.641 INFO    ] Initializing speech engine...
[2026-06-05 21:32:50,655.655 INFO    ] 2026-06-05 21:32:50
[2026-06-05 21:32:50,920.920 INFO    ] 2026-06-05 21:32:50
[2026-06-05 21:32:50,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:32:51,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:32:51,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:32:51,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:32:51,368.368 INFO    ] time= 05/06/2026 21:32:51
[2026-06-05 21:32:51,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:32:51,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:32:51,557.557 INFO    ] No existing commands found in stream
[2026-06-05 21:32:56,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:32:56,571.571 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 21:32:58,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:32:58,971.971 INFO    ] Checking for system updates...
[2026-06-05 21:32:59,010.010 INFO    ] 200
[2026-06-05 21:32:59,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:59,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:32:59,078.078 INFO    ] No update needed
[2026-06-05 21:32:59,081.081 INFO    ] Checking for camera pi updates...
[2026-06-05 21:32:59,117.117 INFO    ] 200
[2026-06-05 21:32:59,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:32:59,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:32:59,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:32:59,201.201 INFO    ] No camera update needed
[2026-06-05 21:32:59,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:32:59,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:32:59,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:32:59,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:33:01,271.271 INFO    ] ================================================
[2026-06-05 21:33:01,304.304 INFO    ] Launching Daemon at Fri Jun  5 21:33:01 IST 2026
[2026-06-05 21:33:01,322.322 INFO    ] ================================================
[2026-06-05 21:33:01,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:33:01
[2026-06-05 21:33:02,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:33:02,972.972 INFO    ] Initializing speech engine...
[2026-06-05 21:33:02,978.978 INFO    ] 2026-06-05 21:33:02
[2026-06-05 21:33:03,250.250 INFO    ] 2026-06-05 21:33:03
[2026-06-05 21:33:03,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:33:03,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:33:03,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:33:03,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:33:03,802.802 INFO    ] time= 05/06/2026 21:33:03
[2026-06-05 21:33:03,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:33:03,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:33:03,958.958 INFO    ] No existing commands found in stream
[2026-06-05 21:33:08,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:33:08,993.993 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 21:33:13,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:33:13,538.538 INFO    ] Checking for system updates...
[2026-06-05 21:33:13,578.578 INFO    ] 200
[2026-06-05 21:33:13,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:33:13,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:33:13,636.636 INFO    ] No update needed
[2026-06-05 21:33:13,638.638 INFO    ] Checking for camera pi updates...
[2026-06-05 21:33:13,675.675 INFO    ] 200
[2026-06-05 21:33:13,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:33:13,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:33:13,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:33:13,775.775 INFO    ] No camera update needed
[2026-06-05 21:33:13,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:33:13,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:33:13,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:33:13,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:33:15,830.830 INFO    ] ================================================
[2026-06-05 21:33:15,846.846 INFO    ] Launching Daemon at Fri Jun  5 21:33:15 IST 2026
[2026-06-05 21:33:15,856.856 INFO    ] ================================================
[2026-06-05 21:33:16,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:33:16
[2026-06-05 21:33:17,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:33:17,317.317 INFO    ] Initializing speech engine...
[2026-06-05 21:33:17,342.342 INFO    ] 2026-06-05 21:33:17
[2026-06-05 21:33:17,614.614 INFO    ] 2026-06-05 21:33:17
[2026-06-05 21:33:17,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:33:18,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:33:18,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:33:18,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:33:18,246.246 INFO    ] time= 05/06/2026 21:33:18
[2026-06-05 21:33:18,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:33:18,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:33:18,496.496 INFO    ] No existing commands found in stream
[2026-06-05 21:33:23,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:33:23,535.535 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 21:33:25,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:33:25,604.604 INFO    ] Checking for system updates...
[2026-06-05 21:33:25,641.641 INFO    ] 200
[2026-06-05 21:33:25,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:33:25,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:33:25,768.768 INFO    ] No update needed
[2026-06-05 21:33:25,770.770 INFO    ] Checking for camera pi updates...
[2026-06-05 21:33:25,805.805 INFO    ] 200
[2026-06-05 21:33:25,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:33:25,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:33:25,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:33:25,911.911 INFO    ] No camera update needed
[2026-06-05 21:33:25,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:33:25,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:33:25,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:33:25,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:33:27,967.967 INFO    ] ================================================
[2026-06-05 21:33:27,983.983 INFO    ] Launching Daemon at Fri Jun  5 21:33:27 IST 2026
[2026-06-05 21:33:27,994.994 INFO    ] ================================================
[2026-06-05 21:33:28,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:33:28
[2026-06-05 21:33:29,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:33:29,618.618 INFO    ] Initializing speech engine...
[2026-06-05 21:33:29,624.624 INFO    ] 2026-06-05 21:33:29
[2026-06-05 21:33:29,909.909 INFO    ] 2026-06-05 21:33:29
[2026-06-05 21:33:30,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:33:30,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:33:30,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:33:30,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:33:30,454.454 INFO    ] time= 05/06/2026 21:33:30
[2026-06-05 21:33:30,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:33:30,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:33:30,598.598 INFO    ] No existing commands found in stream
[2026-06-05 21:33:35,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:33:35,618.618 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 21:33:38,735.735 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:33:38,738.738 INFO    ] Checking for system updates...
[2026-06-05 21:33:38,775.775 INFO    ] 200
[2026-06-05 21:33:38,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:33:38,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:33:38,841.841 INFO    ] No update needed
[2026-06-05 21:33:38,843.843 INFO    ] Checking for camera pi updates...
[2026-06-05 21:33:38,881.881 INFO    ] 200
[2026-06-05 21:33:38,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:33:38,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:33:38,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:33:38,982.982 INFO    ] No camera update needed
[2026-06-05 21:33:38,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:33:38,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:33:38,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:33:38,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:33:41,038.038 INFO    ] ================================================
[2026-06-05 21:33:41,053.053 INFO    ] Launching Daemon at Fri Jun  5 21:33:41 IST 2026
[2026-06-05 21:33:41,064.064 INFO    ] ================================================
[2026-06-05 21:33:41,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:33:41
[2026-06-05 21:33:42,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:33:42,531.531 INFO    ] Initializing speech engine...
[2026-06-05 21:33:42,540.540 INFO    ] 2026-06-05 21:33:42
[2026-06-05 21:33:42,801.801 INFO    ] 2026-06-05 21:33:42
[2026-06-05 21:33:42,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:33:43,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:33:43,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:33:43,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:33:43,728.728 INFO    ] time= 05/06/2026 21:33:43
[2026-06-05 21:33:43,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:33:43,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:33:43,912.912 INFO    ] No existing commands found in stream
[2026-06-05 21:33:48,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:33:48,926.926 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-05 21:33:52,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:33:52,492.492 INFO    ] Checking for system updates...
[2026-06-05 21:33:52,529.529 INFO    ] 200
[2026-06-05 21:33:52,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:33:52,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:33:52,594.594 INFO    ] No update needed
[2026-06-05 21:33:52,597.597 INFO    ] Checking for camera pi updates...
[2026-06-05 21:33:52,632.632 INFO    ] 200
[2026-06-05 21:33:52,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:33:52,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:33:52,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:33:52,738.738 INFO    ] No camera update needed
[2026-06-05 21:33:52,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:33:52,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:33:52,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:33:52,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:33:54,794.794 INFO    ] ================================================
[2026-06-05 21:33:54,810.810 INFO    ] Launching Daemon at Fri Jun  5 21:33:54 IST 2026
[2026-06-05 21:33:54,820.820 INFO    ] ================================================
[2026-06-05 21:33:55,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:33:55
[2026-06-05 21:33:55,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:33:56,240.240 INFO    ] Initializing speech engine...
[2026-06-05 21:33:56,250.250 INFO    ] 2026-06-05 21:33:56
[2026-06-05 21:33:56,508.508 INFO    ] 2026-06-05 21:33:56
[2026-06-05 21:33:56,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:33:56,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:33:56,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:33:56,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:33:57,038.038 INFO    ] time= 05/06/2026 21:33:56
[2026-06-05 21:33:57,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:33:57,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:33:57,193.193 INFO    ] No existing commands found in stream
[2026-06-05 21:34:02,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:34:02,218.218 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 21:34:03,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:34:03,810.810 INFO    ] Checking for system updates...
[2026-06-05 21:34:03,847.847 INFO    ] 200
[2026-06-05 21:34:03,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:03,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:34:03,907.907 INFO    ] No update needed
[2026-06-05 21:34:03,909.909 INFO    ] Checking for camera pi updates...
[2026-06-05 21:34:03,946.946 INFO    ] 200
[2026-06-05 21:34:03,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:03,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:34:04,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:34:04,051.051 INFO    ] No camera update needed
[2026-06-05 21:34:04,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:34:04,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:34:04,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:34:04,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:34:06,106.106 INFO    ] ================================================
[2026-06-05 21:34:06,122.122 INFO    ] Launching Daemon at Fri Jun  5 21:34:06 IST 2026
[2026-06-05 21:34:06,132.132 INFO    ] ================================================
[2026-06-05 21:34:06,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:34:06
[2026-06-05 21:34:07,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:34:07,547.547 INFO    ] Initializing speech engine...
[2026-06-05 21:34:07,561.561 INFO    ] 2026-06-05 21:34:07
[2026-06-05 21:34:07,824.824 INFO    ] 2026-06-05 21:34:07
[2026-06-05 21:34:07,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:34:08,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:34:08,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:34:08,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:34:08,334.334 INFO    ] time= 05/06/2026 21:34:08
[2026-06-05 21:34:08,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:34:08,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:34:08,575.575 INFO    ] No existing commands found in stream
[2026-06-05 21:34:13,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:34:13,611.611 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 21:34:14,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:34:14,507.507 INFO    ] Checking for system updates...
[2026-06-05 21:34:14,556.556 INFO    ] 200
[2026-06-05 21:34:14,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:14,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:34:14,614.614 INFO    ] No update needed
[2026-06-05 21:34:14,617.617 INFO    ] Checking for camera pi updates...
[2026-06-05 21:34:14,651.651 INFO    ] 200
[2026-06-05 21:34:14,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:14,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:34:14,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:34:14,747.747 INFO    ] No camera update needed
[2026-06-05 21:34:14,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:34:14,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:34:14,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:34:14,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:34:16,806.806 INFO    ] ================================================
[2026-06-05 21:34:16,822.822 INFO    ] Launching Daemon at Fri Jun  5 21:34:16 IST 2026
[2026-06-05 21:34:16,833.833 INFO    ] ================================================
[2026-06-05 21:34:17,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:34:17
[2026-06-05 21:34:17,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:34:18,237.237 INFO    ] Initializing speech engine...
[2026-06-05 21:34:18,252.252 INFO    ] 2026-06-05 21:34:18
[2026-06-05 21:34:18,519.519 INFO    ] 2026-06-05 21:34:18
[2026-06-05 21:34:18,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:34:18,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:34:18,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:34:18,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:34:19,023.023 INFO    ] time= 05/06/2026 21:34:18
[2026-06-05 21:34:19,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:34:19,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:34:19,222.222 INFO    ] No existing commands found in stream
[2026-06-05 21:34:24,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:34:24,245.245 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-05 21:34:25,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:34:25,899.899 INFO    ] Checking for system updates...
[2026-06-05 21:34:25,942.942 INFO    ] 200
[2026-06-05 21:34:25,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:26,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:34:26,061.061 INFO    ] No update needed
[2026-06-05 21:34:26,064.064 INFO    ] Checking for camera pi updates...
[2026-06-05 21:34:26,104.104 INFO    ] 200
[2026-06-05 21:34:26,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:26,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:34:26,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:34:26,216.216 INFO    ] No camera update needed
[2026-06-05 21:34:26,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:34:26,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:34:26,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:34:26,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:34:28,278.278 INFO    ] ================================================
[2026-06-05 21:34:28,293.293 INFO    ] Launching Daemon at Fri Jun  5 21:34:28 IST 2026
[2026-06-05 21:34:28,304.304 INFO    ] ================================================
[2026-06-05 21:34:28,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:34:28
[2026-06-05 21:34:29,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:34:29,994.994 INFO    ] Initializing speech engine...
[2026-06-05 21:34:30,007.007 INFO    ] 2026-06-05 21:34:29
[2026-06-05 21:34:30,295.295 INFO    ] 2026-06-05 21:34:30
[2026-06-05 21:34:30,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:34:30,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:34:30,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:34:30,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:34:30,803.803 INFO    ] time= 05/06/2026 21:34:30
[2026-06-05 21:34:30,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:34:30,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:34:31,006.006 INFO    ] No existing commands found in stream
[2026-06-05 21:34:36,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:34:36,047.047 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-05 21:34:37,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:34:37,480.480 INFO    ] Checking for system updates...
[2026-06-05 21:34:37,518.518 INFO    ] 200
[2026-06-05 21:34:37,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:37,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:34:37,579.579 INFO    ] No update needed
[2026-06-05 21:34:37,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 21:34:37,621.621 INFO    ] 200
[2026-06-05 21:34:37,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:37,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:34:37,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:34:37,719.719 INFO    ] No camera update needed
[2026-06-05 21:34:37,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:34:37,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:34:37,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:34:37,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:34:39,775.775 INFO    ] ================================================
[2026-06-05 21:34:39,791.791 INFO    ] Launching Daemon at Fri Jun  5 21:34:39 IST 2026
[2026-06-05 21:34:39,802.802 INFO    ] ================================================
[2026-06-05 21:34:40,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:34:40
[2026-06-05 21:34:40,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:34:41,230.230 INFO    ] Initializing speech engine...
[2026-06-05 21:34:41,238.238 INFO    ] 2026-06-05 21:34:41
[2026-06-05 21:34:41,511.511 INFO    ] 2026-06-05 21:34:41
[2026-06-05 21:34:41,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:34:47,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:34:47,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:34:47,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:34:47,954.954 INFO    ] time= 05/06/2026 21:34:47
[2026-06-05 21:34:47,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:34:47,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:34:48,028.028 INFO    ] No existing commands found in stream
[2026-06-05 21:34:53,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:34:53,040.040 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 21:34:54,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:34:54,649.649 INFO    ] Checking for system updates...
[2026-06-05 21:34:54,685.685 INFO    ] 200
[2026-06-05 21:34:54,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:54,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:34:54,744.744 INFO    ] No update needed
[2026-06-05 21:34:54,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 21:34:54,780.780 INFO    ] 200
[2026-06-05 21:34:54,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:34:54,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:34:54,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:34:54,875.875 INFO    ] No camera update needed
[2026-06-05 21:34:54,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:34:54,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:34:54,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:34:54,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:34:56,933.933 INFO    ] ================================================
[2026-06-05 21:34:56,949.949 INFO    ] Launching Daemon at Fri Jun  5 21:34:56 IST 2026
[2026-06-05 21:34:56,960.960 INFO    ] ================================================
[2026-06-05 21:34:57,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:34:57
[2026-06-05 21:34:58,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:34:58,375.375 INFO    ] Initializing speech engine...
[2026-06-05 21:34:58,381.381 INFO    ] 2026-06-05 21:34:58
[2026-06-05 21:34:58,685.685 INFO    ] 2026-06-05 21:34:58
[2026-06-05 21:34:58,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:34:58,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:34:58,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:34:59,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:34:59,134.134 INFO    ] time= 05/06/2026 21:34:59
[2026-06-05 21:34:59,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:34:59,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:34:59,304.304 INFO    ] No existing commands found in stream
[2026-06-05 21:35:04,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:35:04,332.332 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-05 21:35:05,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:35:05,089.089 INFO    ] Checking for system updates...
[2026-06-05 21:35:05,126.126 INFO    ] 200
[2026-06-05 21:35:05,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:05,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:35:05,183.183 INFO    ] No update needed
[2026-06-05 21:35:05,186.186 INFO    ] Checking for camera pi updates...
[2026-06-05 21:35:05,220.220 INFO    ] 200
[2026-06-05 21:35:05,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:05,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:35:05,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:35:05,356.356 INFO    ] No camera update needed
[2026-06-05 21:35:05,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:35:05,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:35:05,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:35:05,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:35:07,411.411 INFO    ] ================================================
[2026-06-05 21:35:07,427.427 INFO    ] Launching Daemon at Fri Jun  5 21:35:07 IST 2026
[2026-06-05 21:35:07,437.437 INFO    ] ================================================
[2026-06-05 21:35:08,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:35:08
[2026-06-05 21:35:08,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:35:09,126.126 INFO    ] Initializing speech engine...
[2026-06-05 21:35:09,133.133 INFO    ] 2026-06-05 21:35:09
[2026-06-05 21:35:09,425.425 INFO    ] 2026-06-05 21:35:09
[2026-06-05 21:35:09,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:35:09,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:35:09,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:35:09,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:35:09,847.847 INFO    ] time= 05/06/2026 21:35:09
[2026-06-05 21:35:09,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:35:09,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:35:09,938.938 INFO    ] No existing commands found in stream
[2026-06-05 21:35:14,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:35:14,952.952 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 21:35:15,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:35:15,557.557 INFO    ] Checking for system updates...
[2026-06-05 21:35:15,594.594 INFO    ] 200
[2026-06-05 21:35:15,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:15,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:35:15,660.660 INFO    ] No update needed
[2026-06-05 21:35:15,662.662 INFO    ] Checking for camera pi updates...
[2026-06-05 21:35:15,696.696 INFO    ] 200
[2026-06-05 21:35:15,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:15,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:35:15,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:35:15,796.796 INFO    ] No camera update needed
[2026-06-05 21:35:15,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:35:15,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:35:15,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:35:15,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:35:17,851.851 INFO    ] ================================================
[2026-06-05 21:35:17,866.866 INFO    ] Launching Daemon at Fri Jun  5 21:35:17 IST 2026
[2026-06-05 21:35:17,876.876 INFO    ] ================================================
[2026-06-05 21:35:18,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:35:18
[2026-06-05 21:35:19,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:35:19,347.347 INFO    ] Initializing speech engine...
[2026-06-05 21:35:19,357.357 INFO    ] 2026-06-05 21:35:19
[2026-06-05 21:35:19,606.606 INFO    ] 2026-06-05 21:35:19
[2026-06-05 21:35:19,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:35:19,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:35:19,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:35:20,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:35:20,118.118 INFO    ] time= 05/06/2026 21:35:20
[2026-06-05 21:35:20,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:35:20,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:35:20,326.326 INFO    ] No existing commands found in stream
[2026-06-05 21:35:25,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:35:25,361.361 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 21:35:26,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:35:26,400.400 INFO    ] Checking for system updates...
[2026-06-05 21:35:26,437.437 INFO    ] 200
[2026-06-05 21:35:26,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:26,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:35:26,506.506 INFO    ] No update needed
[2026-06-05 21:35:26,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 21:35:26,544.544 INFO    ] 200
[2026-06-05 21:35:26,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:26,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:35:26,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:35:26,657.657 INFO    ] No camera update needed
[2026-06-05 21:35:26,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:35:26,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:35:26,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:35:26,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:35:28,717.717 INFO    ] ================================================
[2026-06-05 21:35:28,732.732 INFO    ] Launching Daemon at Fri Jun  5 21:35:28 IST 2026
[2026-06-05 21:35:28,743.743 INFO    ] ================================================
[2026-06-05 21:35:29,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:35:29
[2026-06-05 21:35:29,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:35:30,168.168 INFO    ] Initializing speech engine...
[2026-06-05 21:35:30,175.175 INFO    ] 2026-06-05 21:35:30
[2026-06-05 21:35:30,475.475 INFO    ] 2026-06-05 21:35:30
[2026-06-05 21:35:30,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:35:30,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:35:30,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:35:30,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:35:30,866.866 INFO    ] time= 05/06/2026 21:35:30
[2026-06-05 21:35:30,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:35:30,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:35:30,995.995 INFO    ] No existing commands found in stream
[2026-06-05 21:35:36,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:35:36,010.010 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 21:35:37,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:35:37,060.060 INFO    ] Checking for system updates...
[2026-06-05 21:35:37,098.098 INFO    ] 200
[2026-06-05 21:35:37,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:37,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:35:37,168.168 INFO    ] No update needed
[2026-06-05 21:35:37,171.171 INFO    ] Checking for camera pi updates...
[2026-06-05 21:35:37,207.207 INFO    ] 200
[2026-06-05 21:35:37,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:37,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:35:37,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:35:37,308.308 INFO    ] No camera update needed
[2026-06-05 21:35:37,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:35:37,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:35:37,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:35:37,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:35:39,371.371 INFO    ] ================================================
[2026-06-05 21:35:39,388.388 INFO    ] Launching Daemon at Fri Jun  5 21:35:39 IST 2026
[2026-06-05 21:35:39,400.400 INFO    ] ================================================
[2026-06-05 21:35:40,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:35:40
[2026-06-05 21:35:40,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:35:41,104.104 INFO    ] Initializing speech engine...
[2026-06-05 21:35:41,110.110 INFO    ] 2026-06-05 21:35:41
[2026-06-05 21:35:41,425.425 INFO    ] 2026-06-05 21:35:41
[2026-06-05 21:35:41,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:35:44,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:35:44,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:35:44,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:35:44,691.691 INFO    ] time= 05/06/2026 21:35:44
[2026-06-05 21:35:44,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:35:44,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:35:44,777.777 INFO    ] No existing commands found in stream
[2026-06-05 21:35:49,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:35:49,791.791 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 21:35:54,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:35:54,165.165 INFO    ] Checking for system updates...
[2026-06-05 21:35:54,202.202 INFO    ] 200
[2026-06-05 21:35:54,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:54,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:35:54,262.262 INFO    ] No update needed
[2026-06-05 21:35:54,265.265 INFO    ] Checking for camera pi updates...
[2026-06-05 21:35:54,305.305 INFO    ] 200
[2026-06-05 21:35:54,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:35:54,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:35:54,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:35:54,411.411 INFO    ] No camera update needed
[2026-06-05 21:35:54,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:35:54,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:35:54,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:35:54,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:35:56,471.471 INFO    ] ================================================
[2026-06-05 21:35:56,491.491 INFO    ] Launching Daemon at Fri Jun  5 21:35:56 IST 2026
[2026-06-05 21:35:56,503.503 INFO    ] ================================================
[2026-06-05 21:35:57,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:35:57
[2026-06-05 21:35:57,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:35:57,933.933 INFO    ] Initializing speech engine...
[2026-06-05 21:35:57,939.939 INFO    ] 2026-06-05 21:35:57
[2026-06-05 21:35:58,185.185 INFO    ] 2026-06-05 21:35:58
[2026-06-05 21:35:58,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:35:58,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:35:58,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:35:58,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:35:58,663.663 INFO    ] time= 05/06/2026 21:35:58
[2026-06-05 21:35:58,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:35:58,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:35:58,878.878 INFO    ] No existing commands found in stream
[2026-06-05 21:36:03,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:36:03,908.908 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-05 21:36:05,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:36:05,600.600 INFO    ] Checking for system updates...
[2026-06-05 21:36:05,636.636 INFO    ] 200
[2026-06-05 21:36:05,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:05,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:05,694.694 INFO    ] No update needed
[2026-06-05 21:36:05,697.697 INFO    ] Checking for camera pi updates...
[2026-06-05 21:36:05,731.731 INFO    ] 200
[2026-06-05 21:36:05,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:05,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:36:05,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:05,931.931 INFO    ] No camera update needed
[2026-06-05 21:36:05,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:36:05,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:36:05,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:36:05,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:36:07,988.988 INFO    ] ================================================
[2026-06-05 21:36:08,003.003 INFO    ] Launching Daemon at Fri Jun  5 21:36:07 IST 2026
[2026-06-05 21:36:08,014.014 INFO    ] ================================================
[2026-06-05 21:36:08,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:36:08
[2026-06-05 21:36:09,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:36:09,440.440 INFO    ] Initializing speech engine...
[2026-06-05 21:36:09,446.446 INFO    ] 2026-06-05 21:36:09
[2026-06-05 21:36:09,717.717 INFO    ] 2026-06-05 21:36:09
[2026-06-05 21:36:09,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:36:09,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:36:09,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:36:10,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:36:10,208.208 INFO    ] time= 05/06/2026 21:36:10
[2026-06-05 21:36:10,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:36:10,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:36:10,438.438 INFO    ] No existing commands found in stream
[2026-06-05 21:36:15,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:36:15,468.468 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 21:36:18,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:36:18,785.785 INFO    ] Checking for system updates...
[2026-06-05 21:36:18,822.822 INFO    ] 200
[2026-06-05 21:36:18,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:18,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:18,879.879 INFO    ] No update needed
[2026-06-05 21:36:18,881.881 INFO    ] Checking for camera pi updates...
[2026-06-05 21:36:18,919.919 INFO    ] 200
[2026-06-05 21:36:18,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:18,961.961 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:36:19,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:19,010.010 INFO    ] No camera update needed
[2026-06-05 21:36:19,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:36:19,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:36:19,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:36:19,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:36:21,069.069 INFO    ] ================================================
[2026-06-05 21:36:21,084.084 INFO    ] Launching Daemon at Fri Jun  5 21:36:21 IST 2026
[2026-06-05 21:36:21,095.095 INFO    ] ================================================
[2026-06-05 21:36:21,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:36:21
[2026-06-05 21:36:22,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:36:22,536.536 INFO    ] Initializing speech engine...
[2026-06-05 21:36:22,545.545 INFO    ] 2026-06-05 21:36:22
[2026-06-05 21:36:22,798.798 INFO    ] 2026-06-05 21:36:22
[2026-06-05 21:36:22,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:36:23,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:36:23,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:36:23,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:36:23,311.311 INFO    ] time= 05/06/2026 21:36:23
[2026-06-05 21:36:23,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:36:23,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:36:23,471.471 INFO    ] No existing commands found in stream
[2026-06-05 21:36:28,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:36:28,484.484 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 21:36:31,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:36:31,208.208 INFO    ] Checking for system updates...
[2026-06-05 21:36:31,244.244 INFO    ] 200
[2026-06-05 21:36:31,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:31,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:31,302.302 INFO    ] No update needed
[2026-06-05 21:36:31,305.305 INFO    ] Checking for camera pi updates...
[2026-06-05 21:36:31,343.343 INFO    ] 200
[2026-06-05 21:36:31,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:31,386.386 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:36:31,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:31,425.425 INFO    ] No camera update needed
[2026-06-05 21:36:31,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:36:31,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:36:31,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:36:31,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:36:33,481.481 INFO    ] ================================================
[2026-06-05 21:36:33,497.497 INFO    ] Launching Daemon at Fri Jun  5 21:36:33 IST 2026
[2026-06-05 21:36:33,508.508 INFO    ] ================================================
[2026-06-05 21:36:34,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:36:34
[2026-06-05 21:36:34,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:36:34,916.916 INFO    ] Initializing speech engine...
[2026-06-05 21:36:34,924.924 INFO    ] 2026-06-05 21:36:34
[2026-06-05 21:36:35,201.201 INFO    ] 2026-06-05 21:36:35
[2026-06-05 21:36:35,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:36:35,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:36:35,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:36:35,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:36:35,677.677 INFO    ] time= 05/06/2026 21:36:35
[2026-06-05 21:36:35,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:36:35,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:36:35,932.932 INFO    ] No existing commands found in stream
[2026-06-05 21:36:40,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:36:40,950.950 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 21:36:44,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:36:44,862.862 INFO    ] Checking for system updates...
[2026-06-05 21:36:44,899.899 INFO    ] 200
[2026-06-05 21:36:44,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:44,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:44,956.956 INFO    ] No update needed
[2026-06-05 21:36:44,958.958 INFO    ] Checking for camera pi updates...
[2026-06-05 21:36:44,996.996 INFO    ] 200
[2026-06-05 21:36:44,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:45,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:36:45,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:45,092.092 INFO    ] No camera update needed
[2026-06-05 21:36:45,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:36:45,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:36:45,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:36:45,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:36:47,148.148 INFO    ] ================================================
[2026-06-05 21:36:47,163.163 INFO    ] Launching Daemon at Fri Jun  5 21:36:47 IST 2026
[2026-06-05 21:36:47,173.173 INFO    ] ================================================
[2026-06-05 21:36:47,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:36:47
[2026-06-05 21:36:48,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:36:48,811.811 INFO    ] Initializing speech engine...
[2026-06-05 21:36:48,817.817 INFO    ] 2026-06-05 21:36:48
[2026-06-05 21:36:49,076.076 INFO    ] 2026-06-05 21:36:49
[2026-06-05 21:36:49,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:36:49,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:36:49,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:36:49,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:36:49,569.569 INFO    ] time= 05/06/2026 21:36:49
[2026-06-05 21:36:49,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:36:49,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:36:49,786.786 INFO    ] No existing commands found in stream
[2026-06-05 21:36:54,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:36:54,814.814 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-05 21:36:57,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:36:57,247.247 INFO    ] Checking for system updates...
[2026-06-05 21:36:57,283.283 INFO    ] 200
[2026-06-05 21:36:57,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:57,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:57,342.342 INFO    ] No update needed
[2026-06-05 21:36:57,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 21:36:57,377.377 INFO    ] 200
[2026-06-05 21:36:57,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:36:57,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:36:57,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:36:57,480.480 INFO    ] No camera update needed
[2026-06-05 21:36:57,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:36:57,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:36:57,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:36:57,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:36:59,538.538 INFO    ] ================================================
[2026-06-05 21:36:59,555.555 INFO    ] Launching Daemon at Fri Jun  5 21:36:59 IST 2026
[2026-06-05 21:36:59,568.568 INFO    ] ================================================
[2026-06-05 21:37:00,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:37:00
[2026-06-05 21:37:00,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:37:01,012.012 INFO    ] Initializing speech engine...
[2026-06-05 21:37:01,023.023 INFO    ] 2026-06-05 21:37:01
[2026-06-05 21:37:01,337.337 INFO    ] 2026-06-05 21:37:01
[2026-06-05 21:37:01,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:37:01,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:37:01,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:37:02,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:37:02,046.046 INFO    ] time= 05/06/2026 21:37:02
[2026-06-05 21:37:02,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:37:02,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:37:02,297.297 INFO    ] No existing commands found in stream
[2026-06-05 21:37:07,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:37:07,331.331 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-05 21:37:11,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:37:11,417.417 INFO    ] Checking for system updates...
[2026-06-05 21:37:11,453.453 INFO    ] 200
[2026-06-05 21:37:11,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:37:11,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:37:11,511.511 INFO    ] No update needed
[2026-06-05 21:37:11,513.513 INFO    ] Checking for camera pi updates...
[2026-06-05 21:37:11,548.548 INFO    ] 200
[2026-06-05 21:37:11,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:37:11,598.598 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:37:11,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:37:11,650.650 INFO    ] No camera update needed
[2026-06-05 21:37:11,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:37:11,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:37:11,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:37:11,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:37:13,707.707 INFO    ] ================================================
[2026-06-05 21:37:13,724.724 INFO    ] Launching Daemon at Fri Jun  5 21:37:13 IST 2026
[2026-06-05 21:37:13,737.737 INFO    ] ================================================
[2026-06-05 21:37:14,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:37:14
[2026-06-05 21:37:14,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:37:15,235.235 INFO    ] Initializing speech engine...
[2026-06-05 21:37:15,246.246 INFO    ] 2026-06-05 21:37:15
[2026-06-05 21:37:15,520.520 INFO    ] 2026-06-05 21:37:15
[2026-06-05 21:37:15,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:37:15,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:37:15,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:37:15,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:37:16,025.025 INFO    ] time= 05/06/2026 21:37:15
[2026-06-05 21:37:16,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:37:16,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:37:16,231.231 INFO    ] No existing commands found in stream
[2026-06-05 21:37:21,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:37:21,249.249 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 21:37:25,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:37:25,684.684 INFO    ] Checking for system updates...
[2026-06-05 21:37:25,721.721 INFO    ] 200
[2026-06-05 21:37:25,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:37:25,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:37:25,782.782 INFO    ] No update needed
[2026-06-05 21:37:25,784.784 INFO    ] Checking for camera pi updates...
[2026-06-05 21:37:25,820.820 INFO    ] 200
[2026-06-05 21:37:25,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:37:25,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:37:25,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:37:25,919.919 INFO    ] No camera update needed
[2026-06-05 21:37:25,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:37:25,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:37:25,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:37:25,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:37:27,979.979 INFO    ] ================================================
[2026-06-05 21:37:28,994.994 INFO    ] Launching Daemon at Fri Jun  5 21:37:27 IST 2026
[2026-06-05 21:37:28,006.006 INFO    ] ================================================
[2026-06-05 21:37:28,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:37:28
[2026-06-05 21:37:29,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:37:29,450.450 INFO    ] Initializing speech engine...
[2026-06-05 21:37:29,464.464 INFO    ] 2026-06-05 21:37:29
[2026-06-05 21:37:29,749.749 INFO    ] 2026-06-05 21:37:29
[2026-06-05 21:37:29,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:37:30,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:37:30,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:37:30,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:37:30,355.355 INFO    ] time= 05/06/2026 21:37:30
[2026-06-05 21:37:30,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:37:30,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:37:30,545.545 INFO    ] No existing commands found in stream
[2026-06-05 21:37:35,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:37:35,568.568 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 21:37:38,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:37:38,844.844 INFO    ] Checking for system updates...
[2026-06-05 21:37:38,881.881 INFO    ] 200
[2026-06-05 21:37:38,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:37:38,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:37:38,940.940 INFO    ] No update needed
[2026-06-05 21:37:38,942.942 INFO    ] Checking for camera pi updates...
[2026-06-05 21:37:38,976.976 INFO    ] 200
[2026-06-05 21:37:38,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:37:39,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:37:39,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:37:39,080.080 INFO    ] No camera update needed
[2026-06-05 21:37:39,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:37:39,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:37:39,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:37:39,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:37:41,135.135 INFO    ] ================================================
[2026-06-05 21:37:41,151.151 INFO    ] Launching Daemon at Fri Jun  5 21:37:41 IST 2026
[2026-06-05 21:37:41,162.162 INFO    ] ================================================
[2026-06-05 21:37:41,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:37:41
[2026-06-05 21:37:42,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:37:42,769.769 INFO    ] Initializing speech engine...
[2026-06-05 21:37:42,783.783 INFO    ] 2026-06-05 21:37:42
[2026-06-05 21:37:43,066.066 INFO    ] 2026-06-05 21:37:43
[2026-06-05 21:37:43,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:37:43,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:37:43,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:37:43,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:37:43,623.623 INFO    ] time= 05/06/2026 21:37:43
[2026-06-05 21:37:43,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:37:43,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:37:43,783.783 INFO    ] No existing commands found in stream
[2026-06-05 21:37:48,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:37:48,811.811 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 21:37:49,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:37:49,544.544 INFO    ] Checking for system updates...
[2026-06-05 21:37:49,581.581 INFO    ] 200
[2026-06-05 21:37:49,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:37:49,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:37:49,641.641 INFO    ] No update needed
[2026-06-05 21:37:49,644.644 INFO    ] Checking for camera pi updates...
[2026-06-05 21:37:49,679.679 INFO    ] 200
[2026-06-05 21:37:49,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:37:49,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:37:49,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:37:49,778.778 INFO    ] No camera update needed
[2026-06-05 21:37:49,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:37:49,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:37:49,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:37:49,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:37:51,843.843 INFO    ] ================================================
[2026-06-05 21:37:51,858.858 INFO    ] Launching Daemon at Fri Jun  5 21:37:51 IST 2026
[2026-06-05 21:37:51,870.870 INFO    ] ================================================
[2026-06-05 21:37:52,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:37:52
[2026-06-05 21:37:53,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:37:53,330.330 INFO    ] Initializing speech engine...
[2026-06-05 21:37:53,339.339 INFO    ] 2026-06-05 21:37:53
[2026-06-05 21:37:53,589.589 INFO    ] 2026-06-05 21:37:53
[2026-06-05 21:37:53,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:37:53,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:37:53,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:37:54,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:37:54,149.149 INFO    ] time= 05/06/2026 21:37:54
[2026-06-05 21:37:54,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:37:54,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:37:54,305.305 INFO    ] No existing commands found in stream
[2026-06-05 21:37:59,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:37:59,327.327 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 21:38:03,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:38:03,548.548 INFO    ] Checking for system updates...
[2026-06-05 21:38:03,585.585 INFO    ] 200
[2026-06-05 21:38:03,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:03,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:38:03,647.647 INFO    ] No update needed
[2026-06-05 21:38:03,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 21:38:03,684.684 INFO    ] 200
[2026-06-05 21:38:03,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:03,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:38:03,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:38:03,784.784 INFO    ] No camera update needed
[2026-06-05 21:38:03,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:38:03,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:38:03,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:38:03,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:38:05,842.842 INFO    ] ================================================
[2026-06-05 21:38:05,856.856 INFO    ] Launching Daemon at Fri Jun  5 21:38:05 IST 2026
[2026-06-05 21:38:05,867.867 INFO    ] ================================================
[2026-06-05 21:38:06,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:38:06
[2026-06-05 21:38:07,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:38:07,332.332 INFO    ] Initializing speech engine...
[2026-06-05 21:38:07,349.349 INFO    ] 2026-06-05 21:38:07
[2026-06-05 21:38:07,635.635 INFO    ] 2026-06-05 21:38:07
[2026-06-05 21:38:07,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:38:07,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:38:07,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:38:08,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:38:08,052.052 INFO    ] time= 05/06/2026 21:38:08
[2026-06-05 21:38:08,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:38:08,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:38:08,259.259 INFO    ] No existing commands found in stream
[2026-06-05 21:38:13,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:38:13,284.284 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 21:38:17,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:38:17,338.338 INFO    ] Checking for system updates...
[2026-06-05 21:38:17,379.379 INFO    ] 200
[2026-06-05 21:38:17,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:17,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:38:17,444.444 INFO    ] No update needed
[2026-06-05 21:38:17,448.448 INFO    ] Checking for camera pi updates...
[2026-06-05 21:38:17,491.491 INFO    ] 200
[2026-06-05 21:38:17,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:17,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:38:17,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:38:17,696.696 INFO    ] No camera update needed
[2026-06-05 21:38:17,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:38:17,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:38:17,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:38:17,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:38:19,759.759 INFO    ] ================================================
[2026-06-05 21:38:19,775.775 INFO    ] Launching Daemon at Fri Jun  5 21:38:19 IST 2026
[2026-06-05 21:38:19,786.786 INFO    ] ================================================
[2026-06-05 21:38:20,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:38:20
[2026-06-05 21:38:21,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:38:21,418.418 INFO    ] Initializing speech engine...
[2026-06-05 21:38:21,431.431 INFO    ] 2026-06-05 21:38:21
[2026-06-05 21:38:21,741.741 INFO    ] 2026-06-05 21:38:21
[2026-06-05 21:38:21,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:38:22,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:38:22,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:38:22,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:38:22,203.203 INFO    ] time= 05/06/2026 21:38:22
[2026-06-05 21:38:22,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:38:22,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:38:22,414.414 INFO    ] No existing commands found in stream
[2026-06-05 21:38:27,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:38:27,434.434 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 21:38:29,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:38:29,839.839 INFO    ] Checking for system updates...
[2026-06-05 21:38:29,878.878 INFO    ] 200
[2026-06-05 21:38:29,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:29,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:38:29,938.938 INFO    ] No update needed
[2026-06-05 21:38:29,941.941 INFO    ] Checking for camera pi updates...
[2026-06-05 21:38:29,977.977 INFO    ] 200
[2026-06-05 21:38:29,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:30,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:38:30,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:38:30,079.079 INFO    ] No camera update needed
[2026-06-05 21:38:30,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:38:30,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:38:30,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:38:30,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:38:32,139.139 INFO    ] ================================================
[2026-06-05 21:38:32,168.168 INFO    ] Launching Daemon at Fri Jun  5 21:38:32 IST 2026
[2026-06-05 21:38:32,182.182 INFO    ] ================================================
[2026-06-05 21:38:32,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:38:32
[2026-06-05 21:38:33,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:38:33,776.776 INFO    ] Initializing speech engine...
[2026-06-05 21:38:33,790.790 INFO    ] 2026-06-05 21:38:33
[2026-06-05 21:38:34,077.077 INFO    ] 2026-06-05 21:38:34
[2026-06-05 21:38:34,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:38:34,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:38:34,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:38:34,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:38:34,628.628 INFO    ] time= 05/06/2026 21:38:34
[2026-06-05 21:38:34,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:38:34,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:38:34,785.785 INFO    ] No existing commands found in stream
[2026-06-05 21:38:39,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:38:39,805.805 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 21:38:40,788.788 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:38:40,791.791 INFO    ] Checking for system updates...
[2026-06-05 21:38:40,829.829 INFO    ] 200
[2026-06-05 21:38:40,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:40,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:38:40,893.893 INFO    ] No update needed
[2026-06-05 21:38:40,896.896 INFO    ] Checking for camera pi updates...
[2026-06-05 21:38:40,932.932 INFO    ] 200
[2026-06-05 21:38:40,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:40,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:38:41,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:38:41,039.039 INFO    ] No camera update needed
[2026-06-05 21:38:41,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:38:41,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:38:41,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:38:41,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:38:43,097.097 INFO    ] ================================================
[2026-06-05 21:38:43,112.112 INFO    ] Launching Daemon at Fri Jun  5 21:38:43 IST 2026
[2026-06-05 21:38:43,123.123 INFO    ] ================================================
[2026-06-05 21:38:43,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:38:43
[2026-06-05 21:38:44,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:38:44,588.588 INFO    ] Initializing speech engine...
[2026-06-05 21:38:44,594.594 INFO    ] 2026-06-05 21:38:44
[2026-06-05 21:38:44,842.842 INFO    ] 2026-06-05 21:38:44
[2026-06-05 21:38:44,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:38:47,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:38:47,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:38:48,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:38:48,201.201 INFO    ] time= 05/06/2026 21:38:48
[2026-06-05 21:38:48,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:38:48,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:38:48,264.264 INFO    ] No existing commands found in stream
[2026-06-05 21:38:53,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:38:53,277.277 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 21:38:53,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:38:53,785.785 INFO    ] Checking for system updates...
[2026-06-05 21:38:53,823.823 INFO    ] 200
[2026-06-05 21:38:53,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:53,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:38:53,892.892 INFO    ] No update needed
[2026-06-05 21:38:53,894.894 INFO    ] Checking for camera pi updates...
[2026-06-05 21:38:53,930.930 INFO    ] 200
[2026-06-05 21:38:53,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:38:53,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:38:54,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:38:54,038.038 INFO    ] No camera update needed
[2026-06-05 21:38:54,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:38:54,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:38:54,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:38:54,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:38:56,101.101 INFO    ] ================================================
[2026-06-05 21:38:56,117.117 INFO    ] Launching Daemon at Fri Jun  5 21:38:56 IST 2026
[2026-06-05 21:38:56,129.129 INFO    ] ================================================
[2026-06-05 21:38:56,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:38:56
[2026-06-05 21:38:57,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:38:57,589.589 INFO    ] Initializing speech engine...
[2026-06-05 21:38:57,615.615 INFO    ] 2026-06-05 21:38:57
[2026-06-05 21:38:57,878.878 INFO    ] 2026-06-05 21:38:57
[2026-06-05 21:38:57,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:38:58,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:38:58,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:38:58,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:38:58,308.308 INFO    ] time= 05/06/2026 21:38:58
[2026-06-05 21:38:58,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:38:58,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:38:58,495.495 INFO    ] No existing commands found in stream
[2026-06-05 21:39:03,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:39:03,523.523 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 21:39:06,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:39:06,182.182 INFO    ] Checking for system updates...
[2026-06-05 21:39:06,218.218 INFO    ] 200
[2026-06-05 21:39:06,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:06,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:39:06,288.288 INFO    ] No update needed
[2026-06-05 21:39:06,291.291 INFO    ] Checking for camera pi updates...
[2026-06-05 21:39:06,326.326 INFO    ] 200
[2026-06-05 21:39:06,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:06,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:39:06,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:39:06,413.413 INFO    ] No camera update needed
[2026-06-05 21:39:06,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:39:06,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:39:06,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:39:06,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:39:08,471.471 INFO    ] ================================================
[2026-06-05 21:39:08,487.487 INFO    ] Launching Daemon at Fri Jun  5 21:39:08 IST 2026
[2026-06-05 21:39:08,498.498 INFO    ] ================================================
[2026-06-05 21:39:09,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:39:09
[2026-06-05 21:39:09,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:39:10,029.029 INFO    ] Initializing speech engine...
[2026-06-05 21:39:10,041.041 INFO    ] 2026-06-05 21:39:10
[2026-06-05 21:39:10,345.345 INFO    ] 2026-06-05 21:39:10
[2026-06-05 21:39:10,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:39:10,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:39:10,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:39:10,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:39:11,025.025 INFO    ] time= 05/06/2026 21:39:10
[2026-06-05 21:39:11,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:39:11,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:39:11,295.295 INFO    ] No existing commands found in stream
[2026-06-05 21:39:16,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:39:16,314.314 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-05 21:39:19,800.800 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:39:19,803.803 INFO    ] Checking for system updates...
[2026-06-05 21:39:19,841.841 INFO    ] 200
[2026-06-05 21:39:19,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:19,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:39:19,906.906 INFO    ] No update needed
[2026-06-05 21:39:19,909.909 INFO    ] Checking for camera pi updates...
[2026-06-05 21:39:19,947.947 INFO    ] 200
[2026-06-05 21:39:19,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:19,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:39:20,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:39:20,052.052 INFO    ] No camera update needed
[2026-06-05 21:39:20,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:39:20,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:39:20,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:39:20,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:39:22,111.111 INFO    ] ================================================
[2026-06-05 21:39:22,126.126 INFO    ] Launching Daemon at Fri Jun  5 21:39:22 IST 2026
[2026-06-05 21:39:22,137.137 INFO    ] ================================================
[2026-06-05 21:39:22,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:39:22
[2026-06-05 21:39:23,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:39:23,740.740 INFO    ] Initializing speech engine...
[2026-06-05 21:39:23,754.754 INFO    ] 2026-06-05 21:39:23
[2026-06-05 21:39:24,034.034 INFO    ] 2026-06-05 21:39:24
[2026-06-05 21:39:24,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:39:24,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:39:24,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:39:24,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:39:24,585.585 INFO    ] time= 05/06/2026 21:39:24
[2026-06-05 21:39:24,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:39:24,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:39:24,748.748 INFO    ] No existing commands found in stream
[2026-06-05 21:39:29,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:39:29,782.782 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 21:39:34,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:39:34,051.051 INFO    ] Checking for system updates...
[2026-06-05 21:39:34,088.088 INFO    ] 200
[2026-06-05 21:39:34,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:34,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:39:34,149.149 INFO    ] No update needed
[2026-06-05 21:39:34,151.151 INFO    ] Checking for camera pi updates...
[2026-06-05 21:39:34,190.190 INFO    ] 200
[2026-06-05 21:39:34,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:34,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:39:34,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:39:34,286.286 INFO    ] No camera update needed
[2026-06-05 21:39:34,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:39:34,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:39:34,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:39:34,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:39:36,344.344 INFO    ] ================================================
[2026-06-05 21:39:36,359.359 INFO    ] Launching Daemon at Fri Jun  5 21:39:36 IST 2026
[2026-06-05 21:39:36,371.371 INFO    ] ================================================
[2026-06-05 21:39:36,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:39:36
[2026-06-05 21:39:37,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:39:37,779.779 INFO    ] Initializing speech engine...
[2026-06-05 21:39:37,804.804 INFO    ] 2026-06-05 21:39:37
[2026-06-05 21:39:38,062.062 INFO    ] 2026-06-05 21:39:38
[2026-06-05 21:39:38,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:39:38,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:39:38,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:39:38,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:39:38,546.546 INFO    ] time= 05/06/2026 21:39:38
[2026-06-05 21:39:38,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:39:38,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:39:38,738.738 INFO    ] No existing commands found in stream
[2026-06-05 21:39:43,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:39:43,770.770 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 21:39:44,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:39:44,651.651 INFO    ] Checking for system updates...
[2026-06-05 21:39:44,687.687 INFO    ] 200
[2026-06-05 21:39:44,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:44,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:39:44,745.745 INFO    ] No update needed
[2026-06-05 21:39:44,748.748 INFO    ] Checking for camera pi updates...
[2026-06-05 21:39:44,782.782 INFO    ] 200
[2026-06-05 21:39:44,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:44,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:39:44,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:39:44,874.874 INFO    ] No camera update needed
[2026-06-05 21:39:44,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:39:44,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:39:44,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:39:44,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:39:46,933.933 INFO    ] ================================================
[2026-06-05 21:39:46,948.948 INFO    ] Launching Daemon at Fri Jun  5 21:39:46 IST 2026
[2026-06-05 21:39:46,959.959 INFO    ] ================================================
[2026-06-05 21:39:47,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:39:47
[2026-06-05 21:39:48,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:39:48,436.436 INFO    ] Initializing speech engine...
[2026-06-05 21:39:48,443.443 INFO    ] 2026-06-05 21:39:48
[2026-06-05 21:39:48,705.705 INFO    ] 2026-06-05 21:39:48
[2026-06-05 21:39:48,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:39:48,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:39:48,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:39:49,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:39:49,193.193 INFO    ] time= 05/06/2026 21:39:49
[2026-06-05 21:39:49,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:39:49,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:39:49,394.394 INFO    ] No existing commands found in stream
[2026-06-05 21:39:54,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:39:54,418.418 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 21:39:57,742.742 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:39:57,745.745 INFO    ] Checking for system updates...
[2026-06-05 21:39:57,782.782 INFO    ] 200
[2026-06-05 21:39:57,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:57,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:39:57,842.842 INFO    ] No update needed
[2026-06-05 21:39:57,844.844 INFO    ] Checking for camera pi updates...
[2026-06-05 21:39:57,880.880 INFO    ] 200
[2026-06-05 21:39:57,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:39:57,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:39:57,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:39:57,984.984 INFO    ] No camera update needed
[2026-06-05 21:39:57,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:39:57,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:39:57,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:39:58,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:40:00,047.047 INFO    ] ================================================
[2026-06-05 21:40:00,062.062 INFO    ] Launching Daemon at Fri Jun  5 21:40:00 IST 2026
[2026-06-05 21:40:00,073.073 INFO    ] ================================================
[2026-06-05 21:40:00,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:40:00
[2026-06-05 21:40:01,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:40:01,541.541 INFO    ] Initializing speech engine...
[2026-06-05 21:40:01,546.546 INFO    ] 2026-06-05 21:40:01
[2026-06-05 21:40:02,097.097 INFO    ] 2026-06-05 21:40:02
[2026-06-05 21:40:02,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:40:02,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:40:02,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:40:02,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:40:02,579.579 INFO    ] time= 05/06/2026 21:40:02
[2026-06-05 21:40:02,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:40:02,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:40:02,689.689 INFO    ] No existing commands found in stream
[2026-06-05 21:40:07,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:40:07,702.702 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-05 21:40:10,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:40:10,328.328 INFO    ] Checking for system updates...
[2026-06-05 21:40:10,364.364 INFO    ] 200
[2026-06-05 21:40:10,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:10,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:40:10,422.422 INFO    ] No update needed
[2026-06-05 21:40:10,425.425 INFO    ] Checking for camera pi updates...
[2026-06-05 21:40:10,460.460 INFO    ] 200
[2026-06-05 21:40:10,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:10,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:40:10,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:40:10,556.556 INFO    ] No camera update needed
[2026-06-05 21:40:10,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:40:10,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:40:10,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:40:10,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:40:12,610.610 INFO    ] ================================================
[2026-06-05 21:40:12,626.626 INFO    ] Launching Daemon at Fri Jun  5 21:40:12 IST 2026
[2026-06-05 21:40:12,637.637 INFO    ] ================================================
[2026-06-05 21:40:13,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:40:13
[2026-06-05 21:40:13,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:40:14,078.078 INFO    ] Initializing speech engine...
[2026-06-05 21:40:14,088.088 INFO    ] 2026-06-05 21:40:14
[2026-06-05 21:40:14,352.352 INFO    ] 2026-06-05 21:40:14
[2026-06-05 21:40:14,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:40:14,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:40:14,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:40:14,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:40:14,897.897 INFO    ] time= 05/06/2026 21:40:14
[2026-06-05 21:40:14,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:40:14,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:40:15,055.055 INFO    ] No existing commands found in stream
[2026-06-05 21:40:20,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:40:20,077.077 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 21:40:21,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:40:21,462.462 INFO    ] Checking for system updates...
[2026-06-05 21:40:21,498.498 INFO    ] 200
[2026-06-05 21:40:21,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:21,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:40:21,556.556 INFO    ] No update needed
[2026-06-05 21:40:21,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 21:40:21,592.592 INFO    ] 200
[2026-06-05 21:40:21,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:21,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:40:21,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:40:21,788.788 INFO    ] No camera update needed
[2026-06-05 21:40:21,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:40:21,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:40:21,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:40:21,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:40:23,845.845 INFO    ] ================================================
[2026-06-05 21:40:23,860.860 INFO    ] Launching Daemon at Fri Jun  5 21:40:23 IST 2026
[2026-06-05 21:40:23,871.871 INFO    ] ================================================
[2026-06-05 21:40:24,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:40:24
[2026-06-05 21:40:25,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:40:25,299.299 INFO    ] Initializing speech engine...
[2026-06-05 21:40:25,307.307 INFO    ] 2026-06-05 21:40:25
[2026-06-05 21:40:25,608.608 INFO    ] 2026-06-05 21:40:25
[2026-06-05 21:40:25,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:40:25,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:40:25,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:40:26,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:40:26,172.172 INFO    ] time= 05/06/2026 21:40:26
[2026-06-05 21:40:26,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:40:26,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:40:26,324.324 INFO    ] No existing commands found in stream
[2026-06-05 21:40:31,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:40:31,350.350 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 21:40:32,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:40:32,746.746 INFO    ] Checking for system updates...
[2026-06-05 21:40:32,789.789 INFO    ] 200
[2026-06-05 21:40:32,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:32,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:40:32,852.852 INFO    ] No update needed
[2026-06-05 21:40:32,855.855 INFO    ] Checking for camera pi updates...
[2026-06-05 21:40:32,894.894 INFO    ] 200
[2026-06-05 21:40:32,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:32,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:40:32,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:40:32,985.985 INFO    ] No camera update needed
[2026-06-05 21:40:32,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:40:32,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:40:32,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:40:33,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:40:35,046.046 INFO    ] ================================================
[2026-06-05 21:40:35,061.061 INFO    ] Launching Daemon at Fri Jun  5 21:40:35 IST 2026
[2026-06-05 21:40:35,072.072 INFO    ] ================================================
[2026-06-05 21:40:35,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:40:35
[2026-06-05 21:40:36,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:40:36,498.498 INFO    ] Initializing speech engine...
[2026-06-05 21:40:36,506.506 INFO    ] 2026-06-05 21:40:36
[2026-06-05 21:40:36,757.757 INFO    ] 2026-06-05 21:40:36
[2026-06-05 21:40:36,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:40:37,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:40:37,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:40:37,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:40:37,316.316 INFO    ] time= 05/06/2026 21:40:37
[2026-06-05 21:40:37,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:40:37,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:40:37,481.481 INFO    ] No existing commands found in stream
[2026-06-05 21:40:42,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:40:42,497.497 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 21:40:44,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:40:44,913.913 INFO    ] Checking for system updates...
[2026-06-05 21:40:44,954.954 INFO    ] 200
[2026-06-05 21:40:44,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:45,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:40:45,011.011 INFO    ] No update needed
[2026-06-05 21:40:45,014.014 INFO    ] Checking for camera pi updates...
[2026-06-05 21:40:45,047.047 INFO    ] 200
[2026-06-05 21:40:45,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:45,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:40:45,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:40:45,144.144 INFO    ] No camera update needed
[2026-06-05 21:40:45,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:40:45,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:40:45,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:40:45,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:40:47,201.201 INFO    ] ================================================
[2026-06-05 21:40:47,217.217 INFO    ] Launching Daemon at Fri Jun  5 21:40:47 IST 2026
[2026-06-05 21:40:47,228.228 INFO    ] ================================================
[2026-06-05 21:40:47,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:40:47
[2026-06-05 21:40:48,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:40:48,893.893 INFO    ] Initializing speech engine...
[2026-06-05 21:40:48,905.905 INFO    ] 2026-06-05 21:40:48
[2026-06-05 21:40:49,215.215 INFO    ] 2026-06-05 21:40:49
[2026-06-05 21:40:49,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:40:49,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:40:49,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:40:49,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:40:49,884.884 INFO    ] time= 05/06/2026 21:40:49
[2026-06-05 21:40:49,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:40:49,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:40:50,133.133 INFO    ] No existing commands found in stream
[2026-06-05 21:40:55,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:40:55,170.170 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 21:40:57,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:40:57,112.112 INFO    ] Checking for system updates...
[2026-06-05 21:40:57,150.150 INFO    ] 200
[2026-06-05 21:40:57,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:57,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:40:57,212.212 INFO    ] No update needed
[2026-06-05 21:40:57,214.214 INFO    ] Checking for camera pi updates...
[2026-06-05 21:40:57,254.254 INFO    ] 200
[2026-06-05 21:40:57,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:40:57,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:40:57,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:40:57,359.359 INFO    ] No camera update needed
[2026-06-05 21:40:57,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:40:57,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:40:57,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:40:57,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:40:59,419.419 INFO    ] ================================================
[2026-06-05 21:40:59,433.433 INFO    ] Launching Daemon at Fri Jun  5 21:40:59 IST 2026
[2026-06-05 21:40:59,444.444 INFO    ] ================================================
[2026-06-05 21:41:00,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:41:00
[2026-06-05 21:41:00,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:41:01,272.272 INFO    ] Initializing speech engine...
[2026-06-05 21:41:01,278.278 INFO    ] 2026-06-05 21:41:01
[2026-06-05 21:41:01,712.712 INFO    ] 2026-06-05 21:41:01
[2026-06-05 21:41:01,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:41:01,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:41:02,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:41:02,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:41:02,244.244 INFO    ] time= 05/06/2026 21:41:02
[2026-06-05 21:41:02,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:41:02,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:41:02,433.433 INFO    ] No existing commands found in stream
[2026-06-05 21:41:07,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:41:07,460.460 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-05 21:41:11,813.813 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:41:11,816.816 INFO    ] Checking for system updates...
[2026-06-05 21:41:11,853.853 INFO    ] 200
[2026-06-05 21:41:11,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:41:11,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:41:11,914.914 INFO    ] No update needed
[2026-06-05 21:41:11,918.918 INFO    ] Checking for camera pi updates...
[2026-06-05 21:41:11,953.953 INFO    ] 200
[2026-06-05 21:41:11,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:41:11,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:41:12,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:41:12,059.059 INFO    ] No camera update needed
[2026-06-05 21:41:12,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:41:12,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:41:12,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:41:12,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:41:14,118.118 INFO    ] ================================================
[2026-06-05 21:41:14,133.133 INFO    ] Launching Daemon at Fri Jun  5 21:41:14 IST 2026
[2026-06-05 21:41:14,144.144 INFO    ] ================================================
[2026-06-05 21:41:14,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:41:14
[2026-06-05 21:41:15,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:41:15,819.819 INFO    ] Initializing speech engine...
[2026-06-05 21:41:15,826.826 INFO    ] 2026-06-05 21:41:15
[2026-06-05 21:41:16,096.096 INFO    ] 2026-06-05 21:41:16
[2026-06-05 21:41:16,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:41:18,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:41:18,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:41:18,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:41:18,933.933 INFO    ] time= 05/06/2026 21:41:18
[2026-06-05 21:41:18,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:41:18,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:41:19,005.005 INFO    ] No existing commands found in stream
[2026-06-05 21:41:24,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:41:24,018.018 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-05 21:41:27,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:41:27,649.649 INFO    ] Checking for system updates...
[2026-06-05 21:41:27,685.685 INFO    ] 200
[2026-06-05 21:41:27,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:41:27,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:41:27,743.743 INFO    ] No update needed
[2026-06-05 21:41:27,745.745 INFO    ] Checking for camera pi updates...
[2026-06-05 21:41:27,783.783 INFO    ] 200
[2026-06-05 21:41:27,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:41:27,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:41:27,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:41:27,886.886 INFO    ] No camera update needed
[2026-06-05 21:41:27,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:41:27,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:41:27,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:41:27,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:41:29,943.943 INFO    ] ================================================
[2026-06-05 21:41:29,958.958 INFO    ] Launching Daemon at Fri Jun  5 21:41:29 IST 2026
[2026-06-05 21:41:29,969.969 INFO    ] ================================================
[2026-06-05 21:41:30,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:41:30
[2026-06-05 21:41:31,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:41:31,526.526 INFO    ] Initializing speech engine...
[2026-06-05 21:41:31,536.536 INFO    ] 2026-06-05 21:41:31
[2026-06-05 21:41:31,822.822 INFO    ] 2026-06-05 21:41:31
[2026-06-05 21:41:31,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:41:32,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:41:32,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:41:32,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:41:32,237.237 INFO    ] time= 05/06/2026 21:41:32
[2026-06-05 21:41:32,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:41:32,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:41:32,376.376 INFO    ] No existing commands found in stream
[2026-06-05 21:41:37,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:41:37,397.397 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 21:41:39,462.462 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:41:39,465.465 INFO    ] Checking for system updates...
[2026-06-05 21:41:39,502.502 INFO    ] 200
[2026-06-05 21:41:39,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:41:39,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:41:39,567.567 INFO    ] No update needed
[2026-06-05 21:41:39,570.570 INFO    ] Checking for camera pi updates...
[2026-06-05 21:41:39,603.603 INFO    ] 200
[2026-06-05 21:41:39,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:41:39,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:41:39,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:41:39,697.697 INFO    ] No camera update needed
[2026-06-05 21:41:39,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:41:39,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:41:39,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:41:39,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:41:41,753.753 INFO    ] ================================================
[2026-06-05 21:41:41,770.770 INFO    ] Launching Daemon at Fri Jun  5 21:41:41 IST 2026
[2026-06-05 21:41:41,781.781 INFO    ] ================================================
[2026-06-05 21:41:42,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:41:42
[2026-06-05 21:41:43,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:41:43,415.415 INFO    ] Initializing speech engine...
[2026-06-05 21:41:43,434.434 INFO    ] 2026-06-05 21:41:43
[2026-06-05 21:41:43,741.741 INFO    ] 2026-06-05 21:41:43
[2026-06-05 21:41:43,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:41:44,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:41:44,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:41:44,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:41:44,257.257 INFO    ] time= 05/06/2026 21:41:44
[2026-06-05 21:41:44,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:41:44,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:41:44,438.438 INFO    ] No existing commands found in stream
[2026-06-05 21:41:49,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:41:49,478.478 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 21:41:51,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:41:51,283.283 INFO    ] Checking for system updates...
[2026-06-05 21:41:51,322.322 INFO    ] 200
[2026-06-05 21:41:51,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:41:51,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:41:51,381.381 INFO    ] No update needed
[2026-06-05 21:41:51,383.383 INFO    ] Checking for camera pi updates...
[2026-06-05 21:41:51,419.419 INFO    ] 200
[2026-06-05 21:41:51,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:41:51,463.463 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:41:51,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:41:51,514.514 INFO    ] No camera update needed
[2026-06-05 21:41:51,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:41:51,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:41:51,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:41:51,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:41:53,569.569 INFO    ] ================================================
[2026-06-05 21:41:53,584.584 INFO    ] Launching Daemon at Fri Jun  5 21:41:53 IST 2026
[2026-06-05 21:41:53,595.595 INFO    ] ================================================
[2026-06-05 21:41:54,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:41:54
[2026-06-05 21:41:54,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:41:55,123.123 INFO    ] Initializing speech engine...
[2026-06-05 21:41:55,133.133 INFO    ] 2026-06-05 21:41:55
[2026-06-05 21:41:55,383.383 INFO    ] 2026-06-05 21:41:55
[2026-06-05 21:41:55,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:41:55,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:41:55,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:41:55,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:41:55,941.941 INFO    ] time= 05/06/2026 21:41:55
[2026-06-05 21:41:55,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:41:55,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:41:56,097.097 INFO    ] No existing commands found in stream
[2026-06-05 21:42:01,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:42:01,123.123 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 21:42:04,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:42:04,990.990 INFO    ] Checking for system updates...
[2026-06-05 21:42:05,026.026 INFO    ] 200
[2026-06-05 21:42:05,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:05,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:05,093.093 INFO    ] No update needed
[2026-06-05 21:42:05,095.095 INFO    ] Checking for camera pi updates...
[2026-06-05 21:42:05,129.129 INFO    ] 200
[2026-06-05 21:42:05,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:05,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:42:05,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:05,226.226 INFO    ] No camera update needed
[2026-06-05 21:42:05,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:42:05,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:42:05,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:42:05,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:42:07,284.284 INFO    ] ================================================
[2026-06-05 21:42:07,300.300 INFO    ] Launching Daemon at Fri Jun  5 21:42:07 IST 2026
[2026-06-05 21:42:07,311.311 INFO    ] ================================================
[2026-06-05 21:42:07,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:42:07
[2026-06-05 21:42:08,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:42:08,789.789 INFO    ] Initializing speech engine...
[2026-06-05 21:42:08,799.799 INFO    ] 2026-06-05 21:42:08
[2026-06-05 21:42:09,069.069 INFO    ] 2026-06-05 21:42:09
[2026-06-05 21:42:09,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:42:09,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:42:09,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:42:09,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:42:09,626.626 INFO    ] time= 05/06/2026 21:42:09
[2026-06-05 21:42:09,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:42:09,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:42:09,783.783 INFO    ] No existing commands found in stream
[2026-06-05 21:42:14,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:42:14,818.818 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 21:42:19,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:42:19,065.065 INFO    ] Checking for system updates...
[2026-06-05 21:42:19,111.111 INFO    ] 200
[2026-06-05 21:42:19,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:19,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:19,176.176 INFO    ] No update needed
[2026-06-05 21:42:19,183.183 INFO    ] Checking for camera pi updates...
[2026-06-05 21:42:19,220.220 INFO    ] 200
[2026-06-05 21:42:19,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:19,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:42:19,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:19,320.320 INFO    ] No camera update needed
[2026-06-05 21:42:19,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:42:19,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:42:19,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:42:19,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:42:21,379.379 INFO    ] ================================================
[2026-06-05 21:42:21,395.395 INFO    ] Launching Daemon at Fri Jun  5 21:42:21 IST 2026
[2026-06-05 21:42:21,406.406 INFO    ] ================================================
[2026-06-05 21:42:22,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:42:22
[2026-06-05 21:42:22,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:42:23,066.066 INFO    ] Initializing speech engine...
[2026-06-05 21:42:23,078.078 INFO    ] 2026-06-05 21:42:23
[2026-06-05 21:42:23,368.368 INFO    ] 2026-06-05 21:42:23
[2026-06-05 21:42:23,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:42:23,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:42:23,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:42:23,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:42:23,849.849 INFO    ] time= 05/06/2026 21:42:23
[2026-06-05 21:42:23,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:42:23,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:42:24,023.023 INFO    ] No existing commands found in stream
[2026-06-05 21:42:29,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:42:29,039.039 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-05 21:42:31,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:42:31,134.134 INFO    ] Checking for system updates...
[2026-06-05 21:42:31,170.170 INFO    ] 200
[2026-06-05 21:42:31,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:31,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:31,230.230 INFO    ] No update needed
[2026-06-05 21:42:31,233.233 INFO    ] Checking for camera pi updates...
[2026-06-05 21:42:31,268.268 INFO    ] 200
[2026-06-05 21:42:31,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:31,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:42:31,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:31,487.487 INFO    ] No camera update needed
[2026-06-05 21:42:31,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:42:31,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:42:31,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:42:31,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:42:33,546.546 INFO    ] ================================================
[2026-06-05 21:42:33,562.562 INFO    ] Launching Daemon at Fri Jun  5 21:42:33 IST 2026
[2026-06-05 21:42:33,573.573 INFO    ] ================================================
[2026-06-05 21:42:34,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:42:34
[2026-06-05 21:42:34,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:42:35,022.022 INFO    ] Initializing speech engine...
[2026-06-05 21:42:35,031.031 INFO    ] 2026-06-05 21:42:35
[2026-06-05 21:42:35,294.294 INFO    ] 2026-06-05 21:42:35
[2026-06-05 21:42:35,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:42:35,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:42:35,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:42:35,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:42:35,840.840 INFO    ] time= 05/06/2026 21:42:35
[2026-06-05 21:42:35,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:42:35,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:42:35,995.995 INFO    ] No existing commands found in stream
[2026-06-05 21:42:41,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:42:41,017.017 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-05 21:42:44,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:42:44,183.183 INFO    ] Checking for system updates...
[2026-06-05 21:42:44,219.219 INFO    ] 200
[2026-06-05 21:42:44,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:44,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:44,279.279 INFO    ] No update needed
[2026-06-05 21:42:44,281.281 INFO    ] Checking for camera pi updates...
[2026-06-05 21:42:44,320.320 INFO    ] 200
[2026-06-05 21:42:44,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:44,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:42:44,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:44,438.438 INFO    ] No camera update needed
[2026-06-05 21:42:44,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:42:44,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:42:44,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:42:44,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:42:46,496.496 INFO    ] ================================================
[2026-06-05 21:42:46,512.512 INFO    ] Launching Daemon at Fri Jun  5 21:42:46 IST 2026
[2026-06-05 21:42:46,523.523 INFO    ] ================================================
[2026-06-05 21:42:47,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:42:47
[2026-06-05 21:42:47,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:42:47,981.981 INFO    ] Initializing speech engine...
[2026-06-05 21:42:47,991.991 INFO    ] 2026-06-05 21:42:47
[2026-06-05 21:42:48,252.252 INFO    ] 2026-06-05 21:42:48
[2026-06-05 21:42:48,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:42:49,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:42:49,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:42:49,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:42:49,397.397 INFO    ] time= 05/06/2026 21:42:49
[2026-06-05 21:42:49,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:42:49,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:42:49,551.551 INFO    ] No existing commands found in stream
[2026-06-05 21:42:54,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:42:54,579.579 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-05 21:42:55,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:42:55,827.827 INFO    ] Checking for system updates...
[2026-06-05 21:42:55,864.864 INFO    ] 200
[2026-06-05 21:42:55,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:55,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:55,930.930 INFO    ] No update needed
[2026-06-05 21:42:55,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 21:42:55,967.967 INFO    ] 200
[2026-06-05 21:42:55,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:42:56,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:42:56,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:42:56,067.067 INFO    ] No camera update needed
[2026-06-05 21:42:56,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:42:56,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:42:56,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:42:56,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:42:58,125.125 INFO    ] ================================================
[2026-06-05 21:42:58,141.141 INFO    ] Launching Daemon at Fri Jun  5 21:42:58 IST 2026
[2026-06-05 21:42:58,152.152 INFO    ] ================================================
[2026-06-05 21:42:58,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:42:58
[2026-06-05 21:42:59,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:42:59,588.588 INFO    ] Initializing speech engine...
[2026-06-05 21:42:59,597.597 INFO    ] 2026-06-05 21:42:59
[2026-06-05 21:42:59,848.848 INFO    ] 2026-06-05 21:42:59
[2026-06-05 21:42:59,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:43:00,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:43:00,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:43:00,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:43:00,421.421 INFO    ] time= 05/06/2026 21:43:00
[2026-06-05 21:43:00,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:43:00,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:43:00,582.582 INFO    ] No existing commands found in stream
[2026-06-05 21:43:05,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:43:05,597.597 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-05 21:43:07,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:43:07,709.709 INFO    ] Checking for system updates...
[2026-06-05 21:43:07,750.750 INFO    ] 200
[2026-06-05 21:43:07,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:07,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:43:07,816.816 INFO    ] No update needed
[2026-06-05 21:43:07,818.818 INFO    ] Checking for camera pi updates...
[2026-06-05 21:43:07,856.856 INFO    ] 200
[2026-06-05 21:43:07,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:07,905.905 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:43:07,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:43:07,954.954 INFO    ] No camera update needed
[2026-06-05 21:43:07,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:43:07,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:43:07,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:43:07,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:43:10,011.011 INFO    ] ================================================
[2026-06-05 21:43:10,027.027 INFO    ] Launching Daemon at Fri Jun  5 21:43:10 IST 2026
[2026-06-05 21:43:10,040.040 INFO    ] ================================================
[2026-06-05 21:43:10,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:43:10
[2026-06-05 21:43:11,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:43:11,443.443 INFO    ] Initializing speech engine...
[2026-06-05 21:43:11,452.452 INFO    ] 2026-06-05 21:43:11
[2026-06-05 21:43:11,726.726 INFO    ] 2026-06-05 21:43:11
[2026-06-05 21:43:11,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:43:11,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:43:12,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:43:12,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:43:12,295.295 INFO    ] time= 05/06/2026 21:43:12
[2026-06-05 21:43:12,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:43:12,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:43:12,448.448 INFO    ] No existing commands found in stream
[2026-06-05 21:43:17,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:43:17,465.465 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 21:43:20,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:43:20,478.478 INFO    ] Checking for system updates...
[2026-06-05 21:43:20,520.520 INFO    ] 200
[2026-06-05 21:43:20,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:20,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:43:20,586.586 INFO    ] No update needed
[2026-06-05 21:43:20,588.588 INFO    ] Checking for camera pi updates...
[2026-06-05 21:43:20,628.628 INFO    ] 200
[2026-06-05 21:43:20,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:20,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:43:20,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:43:20,728.728 INFO    ] No camera update needed
[2026-06-05 21:43:20,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:43:20,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:43:20,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:43:20,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:43:22,783.783 INFO    ] ================================================
[2026-06-05 21:43:22,798.798 INFO    ] Launching Daemon at Fri Jun  5 21:43:22 IST 2026
[2026-06-05 21:43:22,810.810 INFO    ] ================================================
[2026-06-05 21:43:23,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:43:23
[2026-06-05 21:43:24,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:43:24,275.275 INFO    ] Initializing speech engine...
[2026-06-05 21:43:24,286.286 INFO    ] 2026-06-05 21:43:24
[2026-06-05 21:43:24,549.549 INFO    ] 2026-06-05 21:43:24
[2026-06-05 21:43:24,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:43:24,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:43:24,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:43:24,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:43:25,018.018 INFO    ] time= 05/06/2026 21:43:24
[2026-06-05 21:43:25,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:43:25,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:43:25,227.227 INFO    ] No existing commands found in stream
[2026-06-05 21:43:30,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:43:30,258.258 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 21:43:31,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:43:31,878.878 INFO    ] Checking for system updates...
[2026-06-05 21:43:31,922.922 INFO    ] 200
[2026-06-05 21:43:31,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:31,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:43:31,985.985 INFO    ] No update needed
[2026-06-05 21:43:31,988.988 INFO    ] Checking for camera pi updates...
[2026-06-05 21:43:32,025.025 INFO    ] 200
[2026-06-05 21:43:32,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:32,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:43:32,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:43:32,128.128 INFO    ] No camera update needed
[2026-06-05 21:43:32,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:43:32,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:43:32,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:43:32,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:43:34,187.187 INFO    ] ================================================
[2026-06-05 21:43:34,203.203 INFO    ] Launching Daemon at Fri Jun  5 21:43:34 IST 2026
[2026-06-05 21:43:34,214.214 INFO    ] ================================================
[2026-06-05 21:43:34,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:43:34
[2026-06-05 21:43:35,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:43:35,888.888 INFO    ] Initializing speech engine...
[2026-06-05 21:43:35,901.901 INFO    ] 2026-06-05 21:43:35
[2026-06-05 21:43:36,219.219 INFO    ] 2026-06-05 21:43:36
[2026-06-05 21:43:36,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:43:36,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:43:36,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:43:36,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:43:36,733.733 INFO    ] time= 05/06/2026 21:43:36
[2026-06-05 21:43:36,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:43:36,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:43:36,900.900 INFO    ] No existing commands found in stream
[2026-06-05 21:43:41,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:43:41,910.910 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-05 21:43:43,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:43:43,836.836 INFO    ] Checking for system updates...
[2026-06-05 21:43:43,879.879 INFO    ] 200
[2026-06-05 21:43:43,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:43,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:43:43,947.947 INFO    ] No update needed
[2026-06-05 21:43:43,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 21:43:43,990.990 INFO    ] 200
[2026-06-05 21:43:43,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:44,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:43:44,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:43:44,108.108 INFO    ] No camera update needed
[2026-06-05 21:43:44,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:43:44,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:43:44,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:43:44,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:43:46,165.165 INFO    ] ================================================
[2026-06-05 21:43:46,181.181 INFO    ] Launching Daemon at Fri Jun  5 21:43:46 IST 2026
[2026-06-05 21:43:46,193.193 INFO    ] ================================================
[2026-06-05 21:43:46,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:43:46
[2026-06-05 21:43:47,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:43:47,592.592 INFO    ] Initializing speech engine...
[2026-06-05 21:43:47,606.606 INFO    ] 2026-06-05 21:43:47
[2026-06-05 21:43:47,873.873 INFO    ] 2026-06-05 21:43:47
[2026-06-05 21:43:47,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:43:49,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:43:49,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:43:49,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:43:49,678.678 INFO    ] time= 05/06/2026 21:43:49
[2026-06-05 21:43:49,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:43:49,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:43:49,812.812 INFO    ] No existing commands found in stream
[2026-06-05 21:43:54,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:43:54,837.837 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 21:43:58,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:43:58,970.970 INFO    ] Checking for system updates...
[2026-06-05 21:43:59,006.006 INFO    ] 200
[2026-06-05 21:43:59,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:59,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:43:59,072.072 INFO    ] No update needed
[2026-06-05 21:43:59,075.075 INFO    ] Checking for camera pi updates...
[2026-06-05 21:43:59,114.114 INFO    ] 200
[2026-06-05 21:43:59,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:43:59,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:43:59,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:43:59,219.219 INFO    ] No camera update needed
[2026-06-05 21:43:59,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:43:59,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:43:59,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:43:59,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:44:01,318.318 INFO    ] ================================================
[2026-06-05 21:44:01,346.346 INFO    ] Launching Daemon at Fri Jun  5 21:44:01 IST 2026
[2026-06-05 21:44:01,372.372 INFO    ] ================================================
[2026-06-05 21:44:02,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:44:02
[2026-06-05 21:44:02,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:44:03,079.079 INFO    ] Initializing speech engine...
[2026-06-05 21:44:03,087.087 INFO    ] 2026-06-05 21:44:03
[2026-06-05 21:44:03,358.358 INFO    ] 2026-06-05 21:44:03
[2026-06-05 21:44:03,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:44:03,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:44:03,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:44:03,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:44:03,893.893 INFO    ] time= 05/06/2026 21:44:03
[2026-06-05 21:44:03,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:44:03,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:44:04,043.043 INFO    ] No existing commands found in stream
[2026-06-05 21:44:09,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:44:09,060.060 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 21:44:10,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:44:10,815.815 INFO    ] Checking for system updates...
[2026-06-05 21:44:10,851.851 INFO    ] 200
[2026-06-05 21:44:10,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:44:10,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:44:10,911.911 INFO    ] No update needed
[2026-06-05 21:44:10,914.914 INFO    ] Checking for camera pi updates...
[2026-06-05 21:44:10,949.949 INFO    ] 200
[2026-06-05 21:44:10,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:44:10,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:44:11,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:44:11,048.048 INFO    ] No camera update needed
[2026-06-05 21:44:11,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:44:11,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:44:11,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:44:11,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:44:13,115.115 INFO    ] ================================================
[2026-06-05 21:44:13,131.131 INFO    ] Launching Daemon at Fri Jun  5 21:44:13 IST 2026
[2026-06-05 21:44:13,143.143 INFO    ] ================================================
[2026-06-05 21:44:13,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:44:13
[2026-06-05 21:44:14,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:44:14,725.725 INFO    ] Initializing speech engine...
[2026-06-05 21:44:14,735.735 INFO    ] 2026-06-05 21:44:14
[2026-06-05 21:44:14,996.996 INFO    ] 2026-06-05 21:44:14
[2026-06-05 21:44:15,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:44:15,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:44:15,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:44:15,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:44:15,545.545 INFO    ] time= 05/06/2026 21:44:15
[2026-06-05 21:44:15,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:44:15,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:44:15,717.717 INFO    ] No existing commands found in stream
[2026-06-05 21:44:20,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:44:20,751.751 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 21:44:23,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:44:23,896.896 INFO    ] Checking for system updates...
[2026-06-05 21:44:23,932.932 INFO    ] 200
[2026-06-05 21:44:23,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:44:23,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:44:23,991.991 INFO    ] No update needed
[2026-06-05 21:44:23,993.993 INFO    ] Checking for camera pi updates...
[2026-06-05 21:44:24,031.031 INFO    ] 200
[2026-06-05 21:44:24,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:44:24,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:44:24,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:44:24,128.128 INFO    ] No camera update needed
[2026-06-05 21:44:24,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:44:24,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:44:24,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:44:24,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:44:26,185.185 INFO    ] ================================================
[2026-06-05 21:44:26,201.201 INFO    ] Launching Daemon at Fri Jun  5 21:44:26 IST 2026
[2026-06-05 21:44:26,212.212 INFO    ] ================================================
[2026-06-05 21:44:26,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:44:26
[2026-06-05 21:44:27,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:44:27,641.641 INFO    ] Initializing speech engine...
[2026-06-05 21:44:27,650.650 INFO    ] 2026-06-05 21:44:27
[2026-06-05 21:44:27,905.905 INFO    ] 2026-06-05 21:44:27
[2026-06-05 21:44:27,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:44:28,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:44:28,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:44:28,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:44:28,428.428 INFO    ] time= 05/06/2026 21:44:28
[2026-06-05 21:44:28,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:44:28,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:44:28,620.620 INFO    ] No existing commands found in stream
[2026-06-05 21:44:33,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:44:33,658.658 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 21:44:35,726.726 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:44:35,729.729 INFO    ] Checking for system updates...
[2026-06-05 21:44:35,772.772 INFO    ] 200
[2026-06-05 21:44:35,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:44:35,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:44:35,842.842 INFO    ] No update needed
[2026-06-05 21:44:35,844.844 INFO    ] Checking for camera pi updates...
[2026-06-05 21:44:35,885.885 INFO    ] 200
[2026-06-05 21:44:35,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:44:35,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:44:36,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:44:36,082.082 INFO    ] No camera update needed
[2026-06-05 21:44:36,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:44:36,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:44:36,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:44:36,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:44:38,137.137 INFO    ] ================================================
[2026-06-05 21:44:38,152.152 INFO    ] Launching Daemon at Fri Jun  5 21:44:38 IST 2026
[2026-06-05 21:44:38,163.163 INFO    ] ================================================
[2026-06-05 21:44:38,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:44:38
[2026-06-05 21:44:39,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:44:39,625.625 INFO    ] Initializing speech engine...
[2026-06-05 21:44:39,634.634 INFO    ] 2026-06-05 21:44:39
[2026-06-05 21:44:39,884.884 INFO    ] 2026-06-05 21:44:39
[2026-06-05 21:44:39,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:44:40,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:44:40,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:44:40,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:44:40,364.364 INFO    ] time= 05/06/2026 21:44:40
[2026-06-05 21:44:40,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:44:40,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:44:40,611.611 INFO    ] No existing commands found in stream
[2026-06-05 21:44:45,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:44:45,626.626 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 21:44:50,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:44:50,107.107 INFO    ] Checking for system updates...
[2026-06-05 21:44:50,143.143 INFO    ] 200
[2026-06-05 21:44:50,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:44:50,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:44:50,201.201 INFO    ] No update needed
[2026-06-05 21:44:50,203.203 INFO    ] Checking for camera pi updates...
[2026-06-05 21:44:50,245.245 INFO    ] 200
[2026-06-05 21:44:50,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:44:50,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:44:50,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:44:50,355.355 INFO    ] No camera update needed
[2026-06-05 21:44:50,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:44:50,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:44:50,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:44:50,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:44:52,413.413 INFO    ] ================================================
[2026-06-05 21:44:52,428.428 INFO    ] Launching Daemon at Fri Jun  5 21:44:52 IST 2026
[2026-06-05 21:44:52,439.439 INFO    ] ================================================
[2026-06-05 21:44:53,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:44:53
[2026-06-05 21:44:53,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:44:53,886.886 INFO    ] Initializing speech engine...
[2026-06-05 21:44:53,905.905 INFO    ] 2026-06-05 21:44:53
[2026-06-05 21:44:54,194.194 INFO    ] 2026-06-05 21:44:54
[2026-06-05 21:44:54,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:44:54,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:44:54,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:44:54,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:44:54,635.635 INFO    ] time= 05/06/2026 21:44:54
[2026-06-05 21:44:54,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:44:54,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:44:54,728.728 INFO    ] No existing commands found in stream
[2026-06-05 21:44:59,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:44:59,761.761 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 21:45:02,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:45:02,251.251 INFO    ] Checking for system updates...
[2026-06-05 21:45:02,303.303 INFO    ] 200
[2026-06-05 21:45:02,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:02,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:45:02,395.395 INFO    ] No update needed
[2026-06-05 21:45:02,398.398 INFO    ] Checking for camera pi updates...
[2026-06-05 21:45:02,438.438 INFO    ] 200
[2026-06-05 21:45:02,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:02,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:45:02,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:45:02,540.540 INFO    ] No camera update needed
[2026-06-05 21:45:02,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:45:02,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:45:02,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:45:02,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:45:04,601.601 INFO    ] ================================================
[2026-06-05 21:45:04,616.616 INFO    ] Launching Daemon at Fri Jun  5 21:45:04 IST 2026
[2026-06-05 21:45:04,627.627 INFO    ] ================================================
[2026-06-05 21:45:05,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:45:05
[2026-06-05 21:45:05,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:45:06,061.061 INFO    ] Initializing speech engine...
[2026-06-05 21:45:06,067.067 INFO    ] 2026-06-05 21:45:06
[2026-06-05 21:45:06,344.344 INFO    ] 2026-06-05 21:45:06
[2026-06-05 21:45:06,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:45:06,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:45:06,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:45:06,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:45:06,883.883 INFO    ] time= 05/06/2026 21:45:06
[2026-06-05 21:45:06,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:45:06,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:45:07,094.094 INFO    ] No existing commands found in stream
[2026-06-05 21:45:12,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:45:12,121.121 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 21:45:15,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:45:15,795.795 INFO    ] Checking for system updates...
[2026-06-05 21:45:15,836.836 INFO    ] 200
[2026-06-05 21:45:15,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:15,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:45:15,903.903 INFO    ] No update needed
[2026-06-05 21:45:15,905.905 INFO    ] Checking for camera pi updates...
[2026-06-05 21:45:15,944.944 INFO    ] 200
[2026-06-05 21:45:15,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:15,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:45:16,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:45:16,038.038 INFO    ] No camera update needed
[2026-06-05 21:45:16,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:45:16,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:45:16,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:45:16,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:45:18,092.092 INFO    ] ================================================
[2026-06-05 21:45:18,108.108 INFO    ] Launching Daemon at Fri Jun  5 21:45:18 IST 2026
[2026-06-05 21:45:18,118.118 INFO    ] ================================================
[2026-06-05 21:45:18,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:45:18
[2026-06-05 21:45:19,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:45:19,782.782 INFO    ] Initializing speech engine...
[2026-06-05 21:45:19,789.789 INFO    ] 2026-06-05 21:45:19
[2026-06-05 21:45:20,085.085 INFO    ] 2026-06-05 21:45:20
[2026-06-05 21:45:20,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:45:20,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:45:20,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:45:20,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:45:21,011.011 INFO    ] time= 05/06/2026 21:45:20
[2026-06-05 21:45:21,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:45:21,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:45:21,225.225 INFO    ] No existing commands found in stream
[2026-06-05 21:45:26,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:45:26,250.250 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-05 21:45:28,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:45:28,605.605 INFO    ] Checking for system updates...
[2026-06-05 21:45:28,647.647 INFO    ] 200
[2026-06-05 21:45:28,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:28,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:45:28,708.708 INFO    ] No update needed
[2026-06-05 21:45:28,711.711 INFO    ] Checking for camera pi updates...
[2026-06-05 21:45:28,746.746 INFO    ] 200
[2026-06-05 21:45:28,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:28,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:45:28,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:45:28,843.843 INFO    ] No camera update needed
[2026-06-05 21:45:28,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:45:28,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:45:28,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:45:28,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:45:30,901.901 INFO    ] ================================================
[2026-06-05 21:45:30,917.917 INFO    ] Launching Daemon at Fri Jun  5 21:45:30 IST 2026
[2026-06-05 21:45:30,928.928 INFO    ] ================================================
[2026-06-05 21:45:31,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:45:31
[2026-06-05 21:45:32,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:45:32,557.557 INFO    ] Initializing speech engine...
[2026-06-05 21:45:32,566.566 INFO    ] 2026-06-05 21:45:32
[2026-06-05 21:45:32,850.850 INFO    ] 2026-06-05 21:45:32
[2026-06-05 21:45:32,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:45:33,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:45:33,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:45:33,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:45:33,270.270 INFO    ] time= 05/06/2026 21:45:33
[2026-06-05 21:45:33,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:45:33,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:45:33,463.463 INFO    ] No existing commands found in stream
[2026-06-05 21:45:38,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:45:38,483.483 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 21:45:39,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:45:39,642.642 INFO    ] Checking for system updates...
[2026-06-05 21:45:39,682.682 INFO    ] 200
[2026-06-05 21:45:39,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:39,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:45:39,740.740 INFO    ] No update needed
[2026-06-05 21:45:39,742.742 INFO    ] Checking for camera pi updates...
[2026-06-05 21:45:39,781.781 INFO    ] 200
[2026-06-05 21:45:39,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:39,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:45:39,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:45:39,878.878 INFO    ] No camera update needed
[2026-06-05 21:45:39,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:45:39,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:45:39,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:45:39,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:45:41,933.933 INFO    ] ================================================
[2026-06-05 21:45:41,949.949 INFO    ] Launching Daemon at Fri Jun  5 21:45:41 IST 2026
[2026-06-05 21:45:41,960.960 INFO    ] ================================================
[2026-06-05 21:45:42,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:45:42
[2026-06-05 21:45:43,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:45:43,438.438 INFO    ] Initializing speech engine...
[2026-06-05 21:45:43,448.448 INFO    ] 2026-06-05 21:45:43
[2026-06-05 21:45:43,719.719 INFO    ] 2026-06-05 21:45:43
[2026-06-05 21:45:43,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:45:43,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:45:43,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:45:44,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:45:44,135.135 INFO    ] time= 05/06/2026 21:45:44
[2026-06-05 21:45:44,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:45:44,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:45:44,255.255 INFO    ] No existing commands found in stream
[2026-06-05 21:45:49,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:45:49,270.270 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 21:45:51,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:45:51,548.548 INFO    ] Checking for system updates...
[2026-06-05 21:45:51,589.589 INFO    ] 200
[2026-06-05 21:45:51,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:51,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:45:51,661.661 INFO    ] No update needed
[2026-06-05 21:45:51,664.664 INFO    ] Checking for camera pi updates...
[2026-06-05 21:45:51,698.698 INFO    ] 200
[2026-06-05 21:45:51,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:45:51,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:45:51,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:45:51,811.811 INFO    ] No camera update needed
[2026-06-05 21:45:51,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:45:51,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:45:51,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:45:51,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:45:53,867.867 INFO    ] ================================================
[2026-06-05 21:45:53,882.882 INFO    ] Launching Daemon at Fri Jun  5 21:45:53 IST 2026
[2026-06-05 21:45:53,892.892 INFO    ] ================================================
[2026-06-05 21:45:54,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:45:54
[2026-06-05 21:45:55,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:45:55,390.390 INFO    ] Initializing speech engine...
[2026-06-05 21:45:55,403.403 INFO    ] 2026-06-05 21:45:55
[2026-06-05 21:45:55,694.694 INFO    ] 2026-06-05 21:45:55
[2026-06-05 21:45:55,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:45:55,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:45:56,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:45:56,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:45:56,233.233 INFO    ] time= 05/06/2026 21:45:56
[2026-06-05 21:45:56,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:45:56,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:45:56,420.420 INFO    ] No existing commands found in stream
[2026-06-05 21:46:01,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:46:01,450.450 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 21:46:04,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:46:04,131.131 INFO    ] Checking for system updates...
[2026-06-05 21:46:04,167.167 INFO    ] 200
[2026-06-05 21:46:04,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:04,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:46:04,232.232 INFO    ] No update needed
[2026-06-05 21:46:04,235.235 INFO    ] Checking for camera pi updates...
[2026-06-05 21:46:04,280.280 INFO    ] 200
[2026-06-05 21:46:04,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:04,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:46:04,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:46:04,382.382 INFO    ] No camera update needed
[2026-06-05 21:46:04,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:46:04,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:46:04,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:46:04,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:46:06,438.438 INFO    ] ================================================
[2026-06-05 21:46:06,453.453 INFO    ] Launching Daemon at Fri Jun  5 21:46:06 IST 2026
[2026-06-05 21:46:06,465.465 INFO    ] ================================================
[2026-06-05 21:46:07,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:46:07
[2026-06-05 21:46:07,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:46:08,005.005 INFO    ] Initializing speech engine...
[2026-06-05 21:46:08,016.016 INFO    ] 2026-06-05 21:46:08
[2026-06-05 21:46:08,280.280 INFO    ] 2026-06-05 21:46:08
[2026-06-05 21:46:08,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:46:08,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:46:08,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:46:08,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:46:08,775.775 INFO    ] time= 05/06/2026 21:46:08
[2026-06-05 21:46:08,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:46:08,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:46:09,000.000 INFO    ] No existing commands found in stream
[2026-06-05 21:46:14,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:46:14,029.029 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-05 21:46:16,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:46:16,372.372 INFO    ] Checking for system updates...
[2026-06-05 21:46:16,411.411 INFO    ] 200
[2026-06-05 21:46:16,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:16,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:46:16,475.475 INFO    ] No update needed
[2026-06-05 21:46:16,478.478 INFO    ] Checking for camera pi updates...
[2026-06-05 21:46:16,514.514 INFO    ] 200
[2026-06-05 21:46:16,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:16,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:46:16,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:46:16,614.614 INFO    ] No camera update needed
[2026-06-05 21:46:16,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:46:16,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:46:16,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:46:16,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:46:18,669.669 INFO    ] ================================================
[2026-06-05 21:46:18,684.684 INFO    ] Launching Daemon at Fri Jun  5 21:46:18 IST 2026
[2026-06-05 21:46:18,695.695 INFO    ] ================================================
[2026-06-05 21:46:19,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:46:19
[2026-06-05 21:46:21,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:46:21,497.497 INFO    ] Initializing speech engine...
[2026-06-05 21:46:21,521.521 INFO    ] 2026-06-05 21:46:21
[2026-06-05 21:46:21,779.779 INFO    ] 2026-06-05 21:46:21
[2026-06-05 21:46:21,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:46:22,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:46:22,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:46:22,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:46:22,247.247 INFO    ] time= 05/06/2026 21:46:22
[2026-06-05 21:46:22,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:46:22,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:46:22,488.488 INFO    ] No existing commands found in stream
[2026-06-05 21:46:27,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:46:27,523.523 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 21:46:29,185.185 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:46:29,188.188 INFO    ] Checking for system updates...
[2026-06-05 21:46:29,229.229 INFO    ] 200
[2026-06-05 21:46:29,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:29,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:46:29,289.289 INFO    ] No update needed
[2026-06-05 21:46:29,291.291 INFO    ] Checking for camera pi updates...
[2026-06-05 21:46:29,327.327 INFO    ] 200
[2026-06-05 21:46:29,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:29,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:46:29,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:46:29,420.420 INFO    ] No camera update needed
[2026-06-05 21:46:29,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:46:29,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:46:29,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:46:29,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:46:31,482.482 INFO    ] ================================================
[2026-06-05 21:46:31,497.497 INFO    ] Launching Daemon at Fri Jun  5 21:46:31 IST 2026
[2026-06-05 21:46:31,509.509 INFO    ] ================================================
[2026-06-05 21:46:32,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:46:32
[2026-06-05 21:46:32,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:46:33,024.024 INFO    ] Initializing speech engine...
[2026-06-05 21:46:33,028.028 INFO    ] 2026-06-05 21:46:33
[2026-06-05 21:46:33,338.338 INFO    ] 2026-06-05 21:46:33
[2026-06-05 21:46:33,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:46:33,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:46:33,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:46:33,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:46:33,839.839 INFO    ] time= 05/06/2026 21:46:33
[2026-06-05 21:46:33,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:46:33,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:46:34,051.051 INFO    ] No existing commands found in stream
[2026-06-05 21:46:39,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:46:39,081.081 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 21:46:40,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:46:40,036.036 INFO    ] Checking for system updates...
[2026-06-05 21:46:40,076.076 INFO    ] 200
[2026-06-05 21:46:40,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:40,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:46:40,141.141 INFO    ] No update needed
[2026-06-05 21:46:40,143.143 INFO    ] Checking for camera pi updates...
[2026-06-05 21:46:40,177.177 INFO    ] 200
[2026-06-05 21:46:40,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:40,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:46:40,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:46:40,371.371 INFO    ] No camera update needed
[2026-06-05 21:46:40,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:46:40,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:46:40,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:46:40,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:46:42,429.429 INFO    ] ================================================
[2026-06-05 21:46:42,444.444 INFO    ] Launching Daemon at Fri Jun  5 21:46:42 IST 2026
[2026-06-05 21:46:42,455.455 INFO    ] ================================================
[2026-06-05 21:46:43,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:46:43
[2026-06-05 21:46:43,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:46:44,080.080 INFO    ] Initializing speech engine...
[2026-06-05 21:46:44,086.086 INFO    ] 2026-06-05 21:46:44
[2026-06-05 21:46:44,377.377 INFO    ] 2026-06-05 21:46:44
[2026-06-05 21:46:44,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:46:44,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:46:44,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:46:44,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:46:44,825.825 INFO    ] time= 05/06/2026 21:46:44
[2026-06-05 21:46:44,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:46:44,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:46:45,073.073 INFO    ] No existing commands found in stream
[2026-06-05 21:46:50,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:46:50,100.100 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-05 21:46:51,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:46:51,709.709 INFO    ] Checking for system updates...
[2026-06-05 21:46:51,750.750 INFO    ] 200
[2026-06-05 21:46:51,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:51,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:46:51,808.808 INFO    ] No update needed
[2026-06-05 21:46:51,811.811 INFO    ] Checking for camera pi updates...
[2026-06-05 21:46:51,844.844 INFO    ] 200
[2026-06-05 21:46:51,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:46:51,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:46:51,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:46:51,942.942 INFO    ] No camera update needed
[2026-06-05 21:46:51,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:46:51,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:46:51,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:46:51,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:46:54,000.000 INFO    ] ================================================
[2026-06-05 21:46:54,016.016 INFO    ] Launching Daemon at Fri Jun  5 21:46:54 IST 2026
[2026-06-05 21:46:54,027.027 INFO    ] ================================================
[2026-06-05 21:46:54,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:46:54
[2026-06-05 21:46:55,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:46:55,501.501 INFO    ] Initializing speech engine...
[2026-06-05 21:46:55,520.520 INFO    ] 2026-06-05 21:46:55
[2026-06-05 21:46:55,769.769 INFO    ] 2026-06-05 21:46:55
[2026-06-05 21:46:55,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:46:56,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:46:56,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:46:56,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:46:56,212.212 INFO    ] time= 05/06/2026 21:46:56
[2026-06-05 21:46:56,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:46:56,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:46:56,368.368 INFO    ] No existing commands found in stream
[2026-06-05 21:47:01,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:47:01,407.407 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 21:47:02,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:47:02,364.364 INFO    ] Checking for system updates...
[2026-06-05 21:47:02,411.411 INFO    ] 200
[2026-06-05 21:47:02,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:02,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:47:02,483.483 INFO    ] No update needed
[2026-06-05 21:47:02,486.486 INFO    ] Checking for camera pi updates...
[2026-06-05 21:47:02,530.530 INFO    ] 200
[2026-06-05 21:47:02,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:02,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:47:02,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:47:02,638.638 INFO    ] No camera update needed
[2026-06-05 21:47:02,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:47:02,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:47:02,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:47:02,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:47:04,699.699 INFO    ] ================================================
[2026-06-05 21:47:04,715.715 INFO    ] Launching Daemon at Fri Jun  5 21:47:04 IST 2026
[2026-06-05 21:47:04,726.726 INFO    ] ================================================
[2026-06-05 21:47:05,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:47:05
[2026-06-05 21:47:05,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:47:06,281.281 INFO    ] Initializing speech engine...
[2026-06-05 21:47:06,288.288 INFO    ] 2026-06-05 21:47:06
[2026-06-05 21:47:06,583.583 INFO    ] 2026-06-05 21:47:06
[2026-06-05 21:47:06,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:47:06,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:47:06,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:47:07,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:47:07,038.038 INFO    ] time= 05/06/2026 21:47:07
[2026-06-05 21:47:07,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:47:07,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:47:07,287.287 INFO    ] No existing commands found in stream
[2026-06-05 21:47:12,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:47:12,320.320 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 21:47:17,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:47:17,305.305 INFO    ] Checking for system updates...
[2026-06-05 21:47:17,341.341 INFO    ] 200
[2026-06-05 21:47:17,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:17,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:47:17,398.398 INFO    ] No update needed
[2026-06-05 21:47:17,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 21:47:17,441.441 INFO    ] 200
[2026-06-05 21:47:17,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:17,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:47:17,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:47:17,541.541 INFO    ] No camera update needed
[2026-06-05 21:47:17,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:47:17,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:47:17,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:47:17,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:47:19,599.599 INFO    ] ================================================
[2026-06-05 21:47:19,616.616 INFO    ] Launching Daemon at Fri Jun  5 21:47:19 IST 2026
[2026-06-05 21:47:19,629.629 INFO    ] ================================================
[2026-06-05 21:47:20,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:47:20
[2026-06-05 21:47:20,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:47:21,050.050 INFO    ] Initializing speech engine...
[2026-06-05 21:47:21,068.068 INFO    ] 2026-06-05 21:47:21
[2026-06-05 21:47:21,335.335 INFO    ] 2026-06-05 21:47:21
[2026-06-05 21:47:21,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:47:21,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:47:21,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:47:21,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:47:21,916.916 INFO    ] time= 05/06/2026 21:47:21
[2026-06-05 21:47:21,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:47:21,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:47:22,072.072 INFO    ] No existing commands found in stream
[2026-06-05 21:47:27,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:47:27,089.089 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 21:47:30,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:47:30,977.977 INFO    ] Checking for system updates...
[2026-06-05 21:47:31,012.012 INFO    ] 200
[2026-06-05 21:47:31,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:31,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:47:31,070.070 INFO    ] No update needed
[2026-06-05 21:47:31,073.073 INFO    ] Checking for camera pi updates...
[2026-06-05 21:47:31,108.108 INFO    ] 200
[2026-06-05 21:47:31,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:31,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:47:31,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:47:31,226.226 INFO    ] No camera update needed
[2026-06-05 21:47:31,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:47:31,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:47:31,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:47:31,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:47:33,284.284 INFO    ] ================================================
[2026-06-05 21:47:33,300.300 INFO    ] Launching Daemon at Fri Jun  5 21:47:33 IST 2026
[2026-06-05 21:47:33,315.315 INFO    ] ================================================
[2026-06-05 21:47:33,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:47:33
[2026-06-05 21:47:34,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:47:34,767.767 INFO    ] Initializing speech engine...
[2026-06-05 21:47:34,775.775 INFO    ] 2026-06-05 21:47:34
[2026-06-05 21:47:35,034.034 INFO    ] 2026-06-05 21:47:35
[2026-06-05 21:47:35,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:47:35,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:47:35,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:47:35,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:47:35,823.823 INFO    ] time= 05/06/2026 21:47:35
[2026-06-05 21:47:35,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:47:35,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:47:36,116.116 INFO    ] No existing commands found in stream
[2026-06-05 21:47:41,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:47:41,149.149 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 21:47:41,720.720 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:47:41,723.723 INFO    ] Checking for system updates...
[2026-06-05 21:47:41,761.761 INFO    ] 200
[2026-06-05 21:47:41,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:41,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:47:41,824.824 INFO    ] No update needed
[2026-06-05 21:47:41,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 21:47:41,863.863 INFO    ] 200
[2026-06-05 21:47:41,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:41,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:47:41,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:47:41,954.954 INFO    ] No camera update needed
[2026-06-05 21:47:41,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:47:41,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:47:41,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:47:41,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:47:44,010.010 INFO    ] ================================================
[2026-06-05 21:47:44,025.025 INFO    ] Launching Daemon at Fri Jun  5 21:47:44 IST 2026
[2026-06-05 21:47:44,036.036 INFO    ] ================================================
[2026-06-05 21:47:44,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:47:44
[2026-06-05 21:47:45,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:47:45,677.677 INFO    ] Initializing speech engine...
[2026-06-05 21:47:45,688.688 INFO    ] 2026-06-05 21:47:45
[2026-06-05 21:47:45,976.976 INFO    ] 2026-06-05 21:47:45
[2026-06-05 21:47:46,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:47:46,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:47:46,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:47:46,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:47:46,471.471 INFO    ] time= 05/06/2026 21:47:46
[2026-06-05 21:47:46,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:47:46,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:47:46,704.704 INFO    ] No existing commands found in stream
[2026-06-05 21:47:51,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:47:51,739.739 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-05 21:47:55,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:47:55,864.864 INFO    ] Checking for system updates...
[2026-06-05 21:47:55,904.904 INFO    ] 200
[2026-06-05 21:47:55,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:55,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:47:55,990.990 INFO    ] No update needed
[2026-06-05 21:47:55,993.993 INFO    ] Checking for camera pi updates...
[2026-06-05 21:47:56,028.028 INFO    ] 200
[2026-06-05 21:47:56,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:47:56,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:47:56,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:47:56,128.128 INFO    ] No camera update needed
[2026-06-05 21:47:56,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:47:56,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:47:56,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:47:56,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:47:58,184.184 INFO    ] ================================================
[2026-06-05 21:47:58,199.199 INFO    ] Launching Daemon at Fri Jun  5 21:47:58 IST 2026
[2026-06-05 21:47:58,210.210 INFO    ] ================================================
[2026-06-05 21:47:58,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:47:58
[2026-06-05 21:47:59,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:47:59,614.614 INFO    ] Initializing speech engine...
[2026-06-05 21:47:59,622.622 INFO    ] 2026-06-05 21:47:59
[2026-06-05 21:47:59,916.916 INFO    ] 2026-06-05 21:47:59
[2026-06-05 21:47:59,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:48:00,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:48:00,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:48:00,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:48:00,407.407 INFO    ] time= 05/06/2026 21:48:00
[2026-06-05 21:48:00,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:48:00,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:48:00,618.618 INFO    ] No existing commands found in stream
[2026-06-05 21:48:05,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:48:05,640.640 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 21:48:06,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:48:06,613.613 INFO    ] Checking for system updates...
[2026-06-05 21:48:06,659.659 INFO    ] 200
[2026-06-05 21:48:06,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:06,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:48:06,765.765 INFO    ] No update needed
[2026-06-05 21:48:06,769.769 INFO    ] Checking for camera pi updates...
[2026-06-05 21:48:06,820.820 INFO    ] 200
[2026-06-05 21:48:06,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:06,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:48:06,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:48:06,907.907 INFO    ] No camera update needed
[2026-06-05 21:48:06,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:48:06,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:48:06,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:48:06,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:48:08,966.966 INFO    ] ================================================
[2026-06-05 21:48:08,981.981 INFO    ] Launching Daemon at Fri Jun  5 21:48:08 IST 2026
[2026-06-05 21:48:08,992.992 INFO    ] ================================================
[2026-06-05 21:48:09,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:48:09
[2026-06-05 21:48:10,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:48:10,409.409 INFO    ] Initializing speech engine...
[2026-06-05 21:48:10,415.415 INFO    ] 2026-06-05 21:48:10
[2026-06-05 21:48:10,701.701 INFO    ] 2026-06-05 21:48:10
[2026-06-05 21:48:10,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:48:10,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:48:10,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:48:11,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:48:11,185.185 INFO    ] time= 05/06/2026 21:48:11
[2026-06-05 21:48:11,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:48:11,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:48:11,440.440 INFO    ] No existing commands found in stream
[2026-06-05 21:48:16,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:48:16,458.458 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 21:48:17,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:48:17,315.315 INFO    ] Checking for system updates...
[2026-06-05 21:48:17,351.351 INFO    ] 200
[2026-06-05 21:48:17,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:17,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:48:17,411.411 INFO    ] No update needed
[2026-06-05 21:48:17,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 21:48:17,450.450 INFO    ] 200
[2026-06-05 21:48:17,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:17,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:48:17,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:48:17,547.547 INFO    ] No camera update needed
[2026-06-05 21:48:17,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:48:17,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:48:17,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:48:17,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:48:19,605.605 INFO    ] ================================================
[2026-06-05 21:48:19,620.620 INFO    ] Launching Daemon at Fri Jun  5 21:48:19 IST 2026
[2026-06-05 21:48:19,631.631 INFO    ] ================================================
[2026-06-05 21:48:20,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:48:20
[2026-06-05 21:48:20,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:48:21,188.188 INFO    ] Initializing speech engine...
[2026-06-05 21:48:21,196.196 INFO    ] 2026-06-05 21:48:21
[2026-06-05 21:48:21,482.482 INFO    ] 2026-06-05 21:48:21
[2026-06-05 21:48:21,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:48:22,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:48:22,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:48:23,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:48:23,160.160 INFO    ] time= 05/06/2026 21:48:23
[2026-06-05 21:48:23,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:48:23,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:48:23,291.291 INFO    ] No existing commands found in stream
[2026-06-05 21:48:28,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:48:28,306.306 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 21:48:32,219.219 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:48:32,223.223 INFO    ] Checking for system updates...
[2026-06-05 21:48:32,264.264 INFO    ] 200
[2026-06-05 21:48:32,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:32,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:48:32,330.330 INFO    ] No update needed
[2026-06-05 21:48:32,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 21:48:32,372.372 INFO    ] 200
[2026-06-05 21:48:32,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:32,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:48:32,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:48:32,473.473 INFO    ] No camera update needed
[2026-06-05 21:48:32,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:48:32,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:48:32,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:48:32,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:48:34,531.531 INFO    ] ================================================
[2026-06-05 21:48:34,546.546 INFO    ] Launching Daemon at Fri Jun  5 21:48:34 IST 2026
[2026-06-05 21:48:34,557.557 INFO    ] ================================================
[2026-06-05 21:48:35,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:48:35
[2026-06-05 21:48:35,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:48:35,988.988 INFO    ] Initializing speech engine...
[2026-06-05 21:48:35,994.994 INFO    ] 2026-06-05 21:48:35
[2026-06-05 21:48:36,244.244 INFO    ] 2026-06-05 21:48:36
[2026-06-05 21:48:36,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:48:36,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:48:36,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:48:36,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:48:36,802.802 INFO    ] time= 05/06/2026 21:48:36
[2026-06-05 21:48:36,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:48:36,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:48:36,969.969 INFO    ] No existing commands found in stream
[2026-06-05 21:48:41,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:48:41,986.986 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 21:48:42,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:48:42,944.944 INFO    ] Checking for system updates...
[2026-06-05 21:48:42,981.981 INFO    ] 200
[2026-06-05 21:48:42,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:43,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:48:43,045.045 INFO    ] No update needed
[2026-06-05 21:48:43,048.048 INFO    ] Checking for camera pi updates...
[2026-06-05 21:48:43,086.086 INFO    ] 200
[2026-06-05 21:48:43,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:43,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:48:43,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:48:43,283.283 INFO    ] No camera update needed
[2026-06-05 21:48:43,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:48:43,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:48:43,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:48:43,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:48:45,341.341 INFO    ] ================================================
[2026-06-05 21:48:45,356.356 INFO    ] Launching Daemon at Fri Jun  5 21:48:45 IST 2026
[2026-06-05 21:48:45,366.366 INFO    ] ================================================
[2026-06-05 21:48:45,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:48:45
[2026-06-05 21:48:46,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:48:46,833.833 INFO    ] Initializing speech engine...
[2026-06-05 21:48:46,840.840 INFO    ] 2026-06-05 21:48:46
[2026-06-05 21:48:47,101.101 INFO    ] 2026-06-05 21:48:47
[2026-06-05 21:48:47,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:48:47,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:48:47,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:48:47,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:48:47,653.653 INFO    ] time= 05/06/2026 21:48:47
[2026-06-05 21:48:47,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:48:47,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:48:47,793.793 INFO    ] No existing commands found in stream
[2026-06-05 21:48:52,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:48:52,821.821 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 21:48:53,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:48:53,604.604 INFO    ] Checking for system updates...
[2026-06-05 21:48:53,641.641 INFO    ] 200
[2026-06-05 21:48:53,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:53,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:48:53,701.701 INFO    ] No update needed
[2026-06-05 21:48:53,703.703 INFO    ] Checking for camera pi updates...
[2026-06-05 21:48:53,737.737 INFO    ] 200
[2026-06-05 21:48:53,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:48:53,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:48:53,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:48:53,830.830 INFO    ] No camera update needed
[2026-06-05 21:48:53,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:48:53,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:48:53,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:48:53,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:48:55,887.887 INFO    ] ================================================
[2026-06-05 21:48:55,902.902 INFO    ] Launching Daemon at Fri Jun  5 21:48:55 IST 2026
[2026-06-05 21:48:55,913.913 INFO    ] ================================================
[2026-06-05 21:48:56,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:48:56
[2026-06-05 21:48:57,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:48:57,413.413 INFO    ] Initializing speech engine...
[2026-06-05 21:48:57,423.423 INFO    ] 2026-06-05 21:48:57
[2026-06-05 21:48:57,675.675 INFO    ] 2026-06-05 21:48:57
[2026-06-05 21:48:57,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:48:57,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:48:57,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:48:58,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:48:58,202.202 INFO    ] time= 05/06/2026 21:48:58
[2026-06-05 21:48:58,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:48:58,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:48:58,411.411 INFO    ] No existing commands found in stream
[2026-06-05 21:49:03,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:49:03,428.428 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-05 21:49:07,480.480 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:49:07,483.483 INFO    ] Checking for system updates...
[2026-06-05 21:49:07,520.520 INFO    ] 200
[2026-06-05 21:49:07,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:49:07,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:49:07,579.579 INFO    ] No update needed
[2026-06-05 21:49:07,581.581 INFO    ] Checking for camera pi updates...
[2026-06-05 21:49:07,617.617 INFO    ] 200
[2026-06-05 21:49:07,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:49:07,665.665 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:49:07,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:49:07,699.699 INFO    ] No camera update needed
[2026-06-05 21:49:07,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:49:07,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:49:07,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:49:07,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:49:09,755.755 INFO    ] ================================================
[2026-06-05 21:49:09,770.770 INFO    ] Launching Daemon at Fri Jun  5 21:49:09 IST 2026
[2026-06-05 21:49:09,785.785 INFO    ] ================================================
[2026-06-05 21:49:10,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:49:10
[2026-06-05 21:49:10,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:49:11,262.262 INFO    ] Initializing speech engine...
[2026-06-05 21:49:11,272.272 INFO    ] 2026-06-05 21:49:11
[2026-06-05 21:49:11,530.530 INFO    ] 2026-06-05 21:49:11
[2026-06-05 21:49:11,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:49:12,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:49:12,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:49:12,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:49:12,515.515 INFO    ] time= 05/06/2026 21:49:12
[2026-06-05 21:49:12,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:49:12,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:49:12,631.631 INFO    ] No existing commands found in stream
[2026-06-05 21:49:17,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:49:17,659.659 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-05 21:49:22,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:49:22,636.636 INFO    ] Checking for system updates...
[2026-06-05 21:49:22,673.673 INFO    ] 200
[2026-06-05 21:49:22,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:49:22,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:49:22,733.733 INFO    ] No update needed
[2026-06-05 21:49:22,735.735 INFO    ] Checking for camera pi updates...
[2026-06-05 21:49:22,769.769 INFO    ] 200
[2026-06-05 21:49:22,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:49:22,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:49:22,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:49:22,869.869 INFO    ] No camera update needed
[2026-06-05 21:49:22,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:49:22,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:49:22,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:49:22,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:49:24,926.926 INFO    ] ================================================
[2026-06-05 21:49:24,941.941 INFO    ] Launching Daemon at Fri Jun  5 21:49:24 IST 2026
[2026-06-05 21:49:24,952.952 INFO    ] ================================================
[2026-06-05 21:49:25,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:49:25
[2026-06-05 21:49:26,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:49:26,396.396 INFO    ] Initializing speech engine...
[2026-06-05 21:49:26,416.416 INFO    ] 2026-06-05 21:49:26
[2026-06-05 21:49:26,694.694 INFO    ] 2026-06-05 21:49:26
[2026-06-05 21:49:26,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:49:26,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:49:26,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:49:27,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:49:27,216.216 INFO    ] time= 05/06/2026 21:49:27
[2026-06-05 21:49:27,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:49:27,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:49:27,432.432 INFO    ] No existing commands found in stream
[2026-06-05 21:49:32,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:49:32,450.450 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 21:49:36,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:49:36,234.234 INFO    ] Checking for system updates...
[2026-06-05 21:49:36,273.273 INFO    ] 200
[2026-06-05 21:49:36,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:49:36,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:49:36,331.331 INFO    ] No update needed
[2026-06-05 21:49:36,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 21:49:36,368.368 INFO    ] 200
[2026-06-05 21:49:36,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:49:36,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:49:36,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:49:36,500.500 INFO    ] No camera update needed
[2026-06-05 21:49:36,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:49:36,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:49:36,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:49:36,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:49:38,555.555 INFO    ] ================================================
[2026-06-05 21:49:38,570.570 INFO    ] Launching Daemon at Fri Jun  5 21:49:38 IST 2026
[2026-06-05 21:49:38,581.581 INFO    ] ================================================
[2026-06-05 21:49:39,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:49:39
[2026-06-05 21:49:39,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:49:40,159.159 INFO    ] Initializing speech engine...
[2026-06-05 21:49:40,164.164 INFO    ] 2026-06-05 21:49:40
[2026-06-05 21:49:40,433.433 INFO    ] 2026-06-05 21:49:40
[2026-06-05 21:49:40,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:49:40,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:49:40,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:49:40,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:49:40,983.983 INFO    ] time= 05/06/2026 21:49:40
[2026-06-05 21:49:40,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:49:41,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:49:41,143.143 INFO    ] No existing commands found in stream
[2026-06-05 21:49:46,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:49:46,160.160 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 21:49:48,918.918 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:49:48,921.921 INFO    ] Checking for system updates...
[2026-06-05 21:49:48,958.958 INFO    ] 200
[2026-06-05 21:49:48,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:49:49,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:49:49,016.016 INFO    ] No update needed
[2026-06-05 21:49:49,019.019 INFO    ] Checking for camera pi updates...
[2026-06-05 21:49:49,053.053 INFO    ] 200
[2026-06-05 21:49:49,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:49:49,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:49:49,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:49:49,165.165 INFO    ] No camera update needed
[2026-06-05 21:49:49,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:49:49,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:49:49,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:49:49,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:49:51,220.220 INFO    ] ================================================
[2026-06-05 21:49:51,235.235 INFO    ] Launching Daemon at Fri Jun  5 21:49:51 IST 2026
[2026-06-05 21:49:51,246.246 INFO    ] ================================================
[2026-06-05 21:49:51,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:49:51
[2026-06-05 21:49:52,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:49:52,680.680 INFO    ] Initializing speech engine...
[2026-06-05 21:49:52,685.685 INFO    ] 2026-06-05 21:49:52
[2026-06-05 21:49:52,945.945 INFO    ] 2026-06-05 21:49:52
[2026-06-05 21:49:52,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:49:53,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:49:53,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:49:53,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:49:53,504.504 INFO    ] time= 05/06/2026 21:49:53
[2026-06-05 21:49:53,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:49:53,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:49:53,651.651 INFO    ] No existing commands found in stream
[2026-06-05 21:49:58,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:49:58,675.675 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-05 21:50:01,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:50:01,344.344 INFO    ] Checking for system updates...
[2026-06-05 21:50:01,380.380 INFO    ] 200
[2026-06-05 21:50:01,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:01,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:50:01,438.438 INFO    ] No update needed
[2026-06-05 21:50:01,440.440 INFO    ] Checking for camera pi updates...
[2026-06-05 21:50:01,479.479 INFO    ] 200
[2026-06-05 21:50:01,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:01,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:50:01,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:50:01,572.572 INFO    ] No camera update needed
[2026-06-05 21:50:01,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:50:01,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:50:01,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:50:01,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:50:03,640.640 INFO    ] ================================================
[2026-06-05 21:50:03,661.661 INFO    ] Launching Daemon at Fri Jun  5 21:50:03 IST 2026
[2026-06-05 21:50:03,677.677 INFO    ] ================================================
[2026-06-05 21:50:04,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:50:04
[2026-06-05 21:50:04,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:50:05,118.118 INFO    ] Initializing speech engine...
[2026-06-05 21:50:05,126.126 INFO    ] 2026-06-05 21:50:05
[2026-06-05 21:50:05,401.401 INFO    ] 2026-06-05 21:50:05
[2026-06-05 21:50:05,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:50:05,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:50:05,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:50:05,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:50:05,886.886 INFO    ] time= 05/06/2026 21:50:05
[2026-06-05 21:50:05,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:50:05,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:50:06,113.113 INFO    ] No existing commands found in stream
[2026-06-05 21:50:11,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:50:11,140.140 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 21:50:13,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:50:13,358.358 INFO    ] Checking for system updates...
[2026-06-05 21:50:13,394.394 INFO    ] 200
[2026-06-05 21:50:13,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:13,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:13,455.455 INFO    ] No update needed
[2026-06-05 21:50:13,457.457 INFO    ] Checking for camera pi updates...
[2026-06-05 21:50:13,495.495 INFO    ] 200
[2026-06-05 21:50:13,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:13,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:50:13,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:13,591.591 INFO    ] No camera update needed
[2026-06-05 21:50:13,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:50:13,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:50:13,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:50:13,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:50:15,647.647 INFO    ] ================================================
[2026-06-05 21:50:15,662.662 INFO    ] Launching Daemon at Fri Jun  5 21:50:15 IST 2026
[2026-06-05 21:50:15,673.673 INFO    ] ================================================
[2026-06-05 21:50:16,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:50:16
[2026-06-05 21:50:16,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:50:17,145.145 INFO    ] Initializing speech engine...
[2026-06-05 21:50:17,152.152 INFO    ] 2026-06-05 21:50:17
[2026-06-05 21:50:17,438.438 INFO    ] 2026-06-05 21:50:17
[2026-06-05 21:50:17,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:50:17,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:50:17,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:50:17,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:50:17,992.992 INFO    ] time= 05/06/2026 21:50:17
[2026-06-05 21:50:18,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:50:18,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:50:18,147.147 INFO    ] No existing commands found in stream
[2026-06-05 21:50:23,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:50:23,169.169 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-05 21:50:25,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:50:25,497.497 INFO    ] Checking for system updates...
[2026-06-05 21:50:25,535.535 INFO    ] 200
[2026-06-05 21:50:25,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:25,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:25,598.598 INFO    ] No update needed
[2026-06-05 21:50:25,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 21:50:25,637.637 INFO    ] 200
[2026-06-05 21:50:25,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:25,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:50:25,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:25,735.735 INFO    ] No camera update needed
[2026-06-05 21:50:25,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:50:25,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:50:25,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:50:25,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:50:27,790.790 INFO    ] ================================================
[2026-06-05 21:50:27,806.806 INFO    ] Launching Daemon at Fri Jun  5 21:50:27 IST 2026
[2026-06-05 21:50:27,816.816 INFO    ] ================================================
[2026-06-05 21:50:28,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:50:28
[2026-06-05 21:50:28,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:50:29,277.277 INFO    ] Initializing speech engine...
[2026-06-05 21:50:29,284.284 INFO    ] 2026-06-05 21:50:29
[2026-06-05 21:50:29,545.545 INFO    ] 2026-06-05 21:50:29
[2026-06-05 21:50:29,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:50:29,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:50:29,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:50:30,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:50:30,091.091 INFO    ] time= 05/06/2026 21:50:30
[2026-06-05 21:50:30,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:50:30,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:50:30,246.246 INFO    ] No existing commands found in stream
[2026-06-05 21:50:35,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:50:35,262.262 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 21:50:35,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:50:35,874.874 INFO    ] Checking for system updates...
[2026-06-05 21:50:35,912.912 INFO    ] 200
[2026-06-05 21:50:35,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:35,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:35,971.971 INFO    ] No update needed
[2026-06-05 21:50:35,973.973 INFO    ] Checking for camera pi updates...
[2026-06-05 21:50:36,008.008 INFO    ] 200
[2026-06-05 21:50:36,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:36,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:50:36,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:36,100.100 INFO    ] No camera update needed
[2026-06-05 21:50:36,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:50:36,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:50:36,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:50:36,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:50:38,156.156 INFO    ] ================================================
[2026-06-05 21:50:38,171.171 INFO    ] Launching Daemon at Fri Jun  5 21:50:38 IST 2026
[2026-06-05 21:50:38,181.181 INFO    ] ================================================
[2026-06-05 21:50:38,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:50:38
[2026-06-05 21:50:39,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:50:39,646.646 INFO    ] Initializing speech engine...
[2026-06-05 21:50:39,654.654 INFO    ] 2026-06-05 21:50:39
[2026-06-05 21:50:39,913.913 INFO    ] 2026-06-05 21:50:39
[2026-06-05 21:50:39,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:50:40,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:50:40,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:50:40,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:50:40,400.400 INFO    ] time= 05/06/2026 21:50:40
[2026-06-05 21:50:40,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:50:40,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:50:40,617.617 INFO    ] No existing commands found in stream
[2026-06-05 21:50:45,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:50:45,634.634 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-05 21:50:46,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:50:46,808.808 INFO    ] Checking for system updates...
[2026-06-05 21:50:46,855.855 INFO    ] 200
[2026-06-05 21:50:46,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:46,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:46,930.930 INFO    ] No update needed
[2026-06-05 21:50:46,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 21:50:46,971.971 INFO    ] 200
[2026-06-05 21:50:46,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:47,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:50:47,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:47,169.169 INFO    ] No camera update needed
[2026-06-05 21:50:47,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:50:47,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:50:47,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:50:47,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:50:49,228.228 INFO    ] ================================================
[2026-06-05 21:50:49,244.244 INFO    ] Launching Daemon at Fri Jun  5 21:50:49 IST 2026
[2026-06-05 21:50:49,255.255 INFO    ] ================================================
[2026-06-05 21:50:49,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:50:49
[2026-06-05 21:50:50,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:50:50,683.683 INFO    ] Initializing speech engine...
[2026-06-05 21:50:50,702.702 INFO    ] 2026-06-05 21:50:50
[2026-06-05 21:50:50,971.971 INFO    ] 2026-06-05 21:50:50
[2026-06-05 21:50:51,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:50:52,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:50:53,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:50:53,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:50:53,661.661 INFO    ] time= 05/06/2026 21:50:53
[2026-06-05 21:50:53,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:50:53,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:50:53,855.855 INFO    ] No existing commands found in stream
[2026-06-05 21:50:58,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:50:58,871.871 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 21:50:59,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:50:59,759.759 INFO    ] Checking for system updates...
[2026-06-05 21:50:59,796.796 INFO    ] 200
[2026-06-05 21:50:59,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:59,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:59,854.854 INFO    ] No update needed
[2026-06-05 21:50:59,857.857 INFO    ] Checking for camera pi updates...
[2026-06-05 21:50:59,894.894 INFO    ] 200
[2026-06-05 21:50:59,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:50:59,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:50:59,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:50:59,989.989 INFO    ] No camera update needed
[2026-06-05 21:50:59,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:50:59,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:50:59,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:51:00,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:51:02,045.045 INFO    ] ================================================
[2026-06-05 21:51:02,062.062 INFO    ] Launching Daemon at Fri Jun  5 21:51:02 IST 2026
[2026-06-05 21:51:02,074.074 INFO    ] ================================================
[2026-06-05 21:51:02,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:51:02
[2026-06-05 21:51:03,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:51:03,616.616 INFO    ] Initializing speech engine...
[2026-06-05 21:51:03,640.640 INFO    ] 2026-06-05 21:51:03
[2026-06-05 21:51:03,910.910 INFO    ] 2026-06-05 21:51:03
[2026-06-05 21:51:03,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:51:04,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:51:04,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:51:04,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:51:04,330.330 INFO    ] time= 05/06/2026 21:51:04
[2026-06-05 21:51:04,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:51:04,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:51:04,524.524 INFO    ] No existing commands found in stream
[2026-06-05 21:51:09,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:51:09,558.558 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 21:51:12,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:51:12,250.250 INFO    ] Checking for system updates...
[2026-06-05 21:51:12,289.289 INFO    ] 200
[2026-06-05 21:51:12,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:51:12,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:51:12,346.346 INFO    ] No update needed
[2026-06-05 21:51:12,349.349 INFO    ] Checking for camera pi updates...
[2026-06-05 21:51:12,383.383 INFO    ] 200
[2026-06-05 21:51:12,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:51:12,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:51:12,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:51:12,483.483 INFO    ] No camera update needed
[2026-06-05 21:51:12,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:51:12,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:51:12,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:51:12,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:51:14,539.539 INFO    ] ================================================
[2026-06-05 21:51:14,554.554 INFO    ] Launching Daemon at Fri Jun  5 21:51:14 IST 2026
[2026-06-05 21:51:14,565.565 INFO    ] ================================================
[2026-06-05 21:51:15,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:51:15
[2026-06-05 21:51:15,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:51:16,011.011 INFO    ] Initializing speech engine...
[2026-06-05 21:51:16,018.018 INFO    ] 2026-06-05 21:51:16
[2026-06-05 21:51:16,284.284 INFO    ] 2026-06-05 21:51:16
[2026-06-05 21:51:16,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:51:16,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:51:16,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:51:16,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:51:16,792.792 INFO    ] time= 05/06/2026 21:51:16
[2026-06-05 21:51:16,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:51:16,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:51:17,003.003 INFO    ] No existing commands found in stream
[2026-06-05 21:51:22,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:51:22,020.020 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-05 21:51:23,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:51:23,632.632 INFO    ] Checking for system updates...
[2026-06-05 21:51:23,678.678 INFO    ] 200
[2026-06-05 21:51:23,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:51:23,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:51:23,741.741 INFO    ] No update needed
[2026-06-05 21:51:23,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 21:51:23,780.780 INFO    ] 200
[2026-06-05 21:51:23,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:51:23,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:51:23,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:51:23,880.880 INFO    ] No camera update needed
[2026-06-05 21:51:23,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:51:23,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:51:23,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:51:23,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:51:25,936.936 INFO    ] ================================================
[2026-06-05 21:51:25,952.952 INFO    ] Launching Daemon at Fri Jun  5 21:51:25 IST 2026
[2026-06-05 21:51:25,963.963 INFO    ] ================================================
[2026-06-05 21:51:26,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:51:26
[2026-06-05 21:51:27,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:51:27,420.420 INFO    ] Initializing speech engine...
[2026-06-05 21:51:27,429.429 INFO    ] 2026-06-05 21:51:27
[2026-06-05 21:51:27,677.677 INFO    ] 2026-06-05 21:51:27
[2026-06-05 21:51:27,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:51:27,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:51:27,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:51:28,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:51:28,215.215 INFO    ] time= 05/06/2026 21:51:28
[2026-06-05 21:51:28,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:51:28,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:51:28,389.389 INFO    ] No existing commands found in stream
[2026-06-05 21:51:33,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:51:33,420.420 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 21:51:36,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:51:36,755.755 INFO    ] Checking for system updates...
[2026-06-05 21:51:36,791.791 INFO    ] 200
[2026-06-05 21:51:36,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:51:36,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:51:36,850.850 INFO    ] No update needed
[2026-06-05 21:51:36,853.853 INFO    ] Checking for camera pi updates...
[2026-06-05 21:51:36,887.887 INFO    ] 200
[2026-06-05 21:51:36,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:51:36,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:51:36,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:51:36,987.987 INFO    ] No camera update needed
[2026-06-05 21:51:36,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:51:36,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:51:36,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:51:37,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:51:39,046.046 INFO    ] ================================================
[2026-06-05 21:51:39,062.062 INFO    ] Launching Daemon at Fri Jun  5 21:51:39 IST 2026
[2026-06-05 21:51:39,072.072 INFO    ] ================================================
[2026-06-05 21:51:39,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:51:39
[2026-06-05 21:51:40,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:51:40,523.523 INFO    ] Initializing speech engine...
[2026-06-05 21:51:40,536.536 INFO    ] 2026-06-05 21:51:40
[2026-06-05 21:51:40,796.796 INFO    ] 2026-06-05 21:51:40
[2026-06-05 21:51:40,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:51:41,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:51:41,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:51:41,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:51:41,279.279 INFO    ] time= 05/06/2026 21:51:41
[2026-06-05 21:51:41,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:51:41,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:51:41,494.494 INFO    ] No existing commands found in stream
[2026-06-05 21:51:46,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:51:46,524.524 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 21:51:47,614.614 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:51:47,618.618 INFO    ] Checking for system updates...
[2026-06-05 21:51:47,655.655 INFO    ] 200
[2026-06-05 21:51:47,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:51:47,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:51:47,720.720 INFO    ] No update needed
[2026-06-05 21:51:47,723.723 INFO    ] Checking for camera pi updates...
[2026-06-05 21:51:47,758.758 INFO    ] 200
[2026-06-05 21:51:47,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:51:47,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:51:47,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:51:47,855.855 INFO    ] No camera update needed
[2026-06-05 21:51:47,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:51:47,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:51:47,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:51:47,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:51:49,916.916 INFO    ] ================================================
[2026-06-05 21:51:49,932.932 INFO    ] Launching Daemon at Fri Jun  5 21:51:49 IST 2026
[2026-06-05 21:51:49,943.943 INFO    ] ================================================
[2026-06-05 21:51:50,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:51:50
[2026-06-05 21:51:51,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:51:51,342.342 INFO    ] Initializing speech engine...
[2026-06-05 21:51:51,350.350 INFO    ] 2026-06-05 21:51:51
[2026-06-05 21:51:51,623.623 INFO    ] 2026-06-05 21:51:51
[2026-06-05 21:51:51,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:51:53,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:51:53,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:51:53,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:51:53,807.807 INFO    ] time= 05/06/2026 21:51:53
[2026-06-05 21:51:53,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:51:53,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:51:53,958.958 INFO    ] No existing commands found in stream
[2026-06-05 21:51:58,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:51:58,971.971 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 21:52:01,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:52:01,009.009 INFO    ] Checking for system updates...
[2026-06-05 21:52:01,045.045 INFO    ] 200
[2026-06-05 21:52:01,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:01,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:52:01,102.102 INFO    ] No update needed
[2026-06-05 21:52:01,105.105 INFO    ] Checking for camera pi updates...
[2026-06-05 21:52:01,139.139 INFO    ] 200
[2026-06-05 21:52:01,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:01,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:52:01,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:52:01,237.237 INFO    ] No camera update needed
[2026-06-05 21:52:01,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:52:01,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:52:01,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:52:01,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:52:03,296.296 INFO    ] ================================================
[2026-06-05 21:52:03,312.312 INFO    ] Launching Daemon at Fri Jun  5 21:52:03 IST 2026
[2026-06-05 21:52:03,323.323 INFO    ] ================================================
[2026-06-05 21:52:03,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:52:03
[2026-06-05 21:52:04,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:52:04,769.769 INFO    ] Initializing speech engine...
[2026-06-05 21:52:04,776.776 INFO    ] 2026-06-05 21:52:04
[2026-06-05 21:52:05,064.064 INFO    ] 2026-06-05 21:52:05
[2026-06-05 21:52:05,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:52:05,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:52:05,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:52:05,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:52:05,552.552 INFO    ] time= 05/06/2026 21:52:05
[2026-06-05 21:52:05,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:52:05,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:52:05,725.725 INFO    ] No existing commands found in stream
[2026-06-05 21:52:10,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:52:10,744.744 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 21:52:12,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:52:12,214.214 INFO    ] Checking for system updates...
[2026-06-05 21:52:12,255.255 INFO    ] 200
[2026-06-05 21:52:12,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:12,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:52:12,313.313 INFO    ] No update needed
[2026-06-05 21:52:12,315.315 INFO    ] Checking for camera pi updates...
[2026-06-05 21:52:12,349.349 INFO    ] 200
[2026-06-05 21:52:12,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:12,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:52:12,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:52:12,430.430 INFO    ] No camera update needed
[2026-06-05 21:52:12,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:52:12,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:52:12,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:52:12,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:52:14,485.485 INFO    ] ================================================
[2026-06-05 21:52:14,501.501 INFO    ] Launching Daemon at Fri Jun  5 21:52:14 IST 2026
[2026-06-05 21:52:14,512.512 INFO    ] ================================================
[2026-06-05 21:52:15,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:52:15
[2026-06-05 21:52:15,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:52:15,935.935 INFO    ] Initializing speech engine...
[2026-06-05 21:52:15,944.944 INFO    ] 2026-06-05 21:52:15
[2026-06-05 21:52:16,190.190 INFO    ] 2026-06-05 21:52:16
[2026-06-05 21:52:16,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:52:16,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:52:16,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:52:16,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:52:16,750.750 INFO    ] time= 05/06/2026 21:52:16
[2026-06-05 21:52:16,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:52:16,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:52:16,999.999 INFO    ] No existing commands found in stream
[2026-06-05 21:52:22,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:52:22,015.015 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 21:52:25,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:52:25,579.579 INFO    ] Checking for system updates...
[2026-06-05 21:52:25,615.615 INFO    ] 200
[2026-06-05 21:52:25,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:25,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:52:25,673.673 INFO    ] No update needed
[2026-06-05 21:52:25,676.676 INFO    ] Checking for camera pi updates...
[2026-06-05 21:52:25,710.710 INFO    ] 200
[2026-06-05 21:52:25,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:25,759.759 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:52:25,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:52:25,803.803 INFO    ] No camera update needed
[2026-06-05 21:52:25,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:52:25,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:52:25,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:52:25,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:52:27,862.862 INFO    ] ================================================
[2026-06-05 21:52:27,878.878 INFO    ] Launching Daemon at Fri Jun  5 21:52:27 IST 2026
[2026-06-05 21:52:27,889.889 INFO    ] ================================================
[2026-06-05 21:52:28,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:52:28
[2026-06-05 21:52:29,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:52:29,500.500 INFO    ] Initializing speech engine...
[2026-06-05 21:52:29,513.513 INFO    ] 2026-06-05 21:52:29
[2026-06-05 21:52:29,799.799 INFO    ] 2026-06-05 21:52:29
[2026-06-05 21:52:29,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:52:30,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:52:30,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:52:30,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:52:30,344.344 INFO    ] time= 05/06/2026 21:52:30
[2026-06-05 21:52:30,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:52:30,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:52:30,488.488 INFO    ] No existing commands found in stream
[2026-06-05 21:52:35,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:52:35,508.508 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-05 21:52:36,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:52:36,685.685 INFO    ] Checking for system updates...
[2026-06-05 21:52:36,727.727 INFO    ] 200
[2026-06-05 21:52:36,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:36,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:52:36,789.789 INFO    ] No update needed
[2026-06-05 21:52:36,791.791 INFO    ] Checking for camera pi updates...
[2026-06-05 21:52:36,830.830 INFO    ] 200
[2026-06-05 21:52:36,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:36,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:52:36,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:52:36,923.923 INFO    ] No camera update needed
[2026-06-05 21:52:36,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:52:36,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:52:36,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:52:36,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:52:38,982.982 INFO    ] ================================================
[2026-06-05 21:52:39,998.998 INFO    ] Launching Daemon at Fri Jun  5 21:52:38 IST 2026
[2026-06-05 21:52:39,009.009 INFO    ] ================================================
[2026-06-05 21:52:39,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:52:39
[2026-06-05 21:52:40,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:52:40,467.467 INFO    ] Initializing speech engine...
[2026-06-05 21:52:40,478.478 INFO    ] 2026-06-05 21:52:40
[2026-06-05 21:52:40,741.741 INFO    ] 2026-06-05 21:52:40
[2026-06-05 21:52:40,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:52:41,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:52:41,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:52:41,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:52:41,283.283 INFO    ] time= 05/06/2026 21:52:41
[2026-06-05 21:52:41,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:52:41,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:52:41,438.438 INFO    ] No existing commands found in stream
[2026-06-05 21:52:46,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:52:46,454.454 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 21:52:47,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:52:47,388.388 INFO    ] Checking for system updates...
[2026-06-05 21:52:47,437.437 INFO    ] 200
[2026-06-05 21:52:47,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:47,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:52:47,506.506 INFO    ] No update needed
[2026-06-05 21:52:47,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 21:52:47,544.544 INFO    ] 200
[2026-06-05 21:52:47,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:52:47,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:52:47,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:52:47,638.638 INFO    ] No camera update needed
[2026-06-05 21:52:47,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:52:47,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:52:47,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:52:47,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:52:49,701.701 INFO    ] ================================================
[2026-06-05 21:52:49,717.717 INFO    ] Launching Daemon at Fri Jun  5 21:52:49 IST 2026
[2026-06-05 21:52:49,728.728 INFO    ] ================================================
[2026-06-05 21:52:50,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:52:50
[2026-06-05 21:52:50,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:52:51,133.133 INFO    ] Initializing speech engine...
[2026-06-05 21:52:51,147.147 INFO    ] 2026-06-05 21:52:51
[2026-06-05 21:52:51,416.416 INFO    ] 2026-06-05 21:52:51
[2026-06-05 21:52:51,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:52:53,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:52:53,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:52:54,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:52:54,302.302 INFO    ] time= 05/06/2026 21:52:54
[2026-06-05 21:52:54,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:52:54,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:52:54,426.426 INFO    ] No existing commands found in stream
[2026-06-05 21:52:59,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:52:59,459.459 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-05 21:53:00,832.832 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:53:00,835.835 INFO    ] Checking for system updates...
[2026-06-05 21:53:00,871.871 INFO    ] 200
[2026-06-05 21:53:00,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:00,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:53:00,929.929 INFO    ] No update needed
[2026-06-05 21:53:00,932.932 INFO    ] Checking for camera pi updates...
[2026-06-05 21:53:00,965.965 INFO    ] 200
[2026-06-05 21:53:00,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:01,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:53:01,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:53:01,157.157 INFO    ] No camera update needed
[2026-06-05 21:53:01,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:53:01,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:53:01,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:53:01,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:53:03,213.213 INFO    ] ================================================
[2026-06-05 21:53:03,233.233 INFO    ] Launching Daemon at Fri Jun  5 21:53:03 IST 2026
[2026-06-05 21:53:03,246.246 INFO    ] ================================================
[2026-06-05 21:53:03,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:53:03
[2026-06-05 21:53:04,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:53:04,914.914 INFO    ] Initializing speech engine...
[2026-06-05 21:53:04,927.927 INFO    ] 2026-06-05 21:53:04
[2026-06-05 21:53:05,213.213 INFO    ] 2026-06-05 21:53:05
[2026-06-05 21:53:05,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:53:05,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:53:05,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:53:05,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:53:05,745.745 INFO    ] time= 05/06/2026 21:53:05
[2026-06-05 21:53:05,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:53:05,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:53:05,903.903 INFO    ] No existing commands found in stream
[2026-06-05 21:53:10,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:53:10,937.937 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 21:53:14,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:53:14,864.864 INFO    ] Checking for system updates...
[2026-06-05 21:53:14,903.903 INFO    ] 200
[2026-06-05 21:53:14,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:14,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:53:14,963.963 INFO    ] No update needed
[2026-06-05 21:53:14,966.966 INFO    ] Checking for camera pi updates...
[2026-06-05 21:53:15,001.001 INFO    ] 200
[2026-06-05 21:53:15,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:15,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:53:15,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:53:15,095.095 INFO    ] No camera update needed
[2026-06-05 21:53:15,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:53:15,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:53:15,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:53:15,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:53:17,152.152 INFO    ] ================================================
[2026-06-05 21:53:17,168.168 INFO    ] Launching Daemon at Fri Jun  5 21:53:17 IST 2026
[2026-06-05 21:53:17,179.179 INFO    ] ================================================
[2026-06-05 21:53:17,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:53:17
[2026-06-05 21:53:18,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:53:18,841.841 INFO    ] Initializing speech engine...
[2026-06-05 21:53:18,855.855 INFO    ] 2026-06-05 21:53:18
[2026-06-05 21:53:19,175.175 INFO    ] 2026-06-05 21:53:19
[2026-06-05 21:53:19,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:53:19,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:53:19,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:53:19,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:53:19,697.697 INFO    ] time= 05/06/2026 21:53:19
[2026-06-05 21:53:19,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:53:19,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:53:19,857.857 INFO    ] No existing commands found in stream
[2026-06-05 21:53:24,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:53:24,877.877 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 21:53:26,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:53:26,734.734 INFO    ] Checking for system updates...
[2026-06-05 21:53:26,771.771 INFO    ] 200
[2026-06-05 21:53:26,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:26,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:53:26,832.832 INFO    ] No update needed
[2026-06-05 21:53:26,834.834 INFO    ] Checking for camera pi updates...
[2026-06-05 21:53:26,870.870 INFO    ] 200
[2026-06-05 21:53:26,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:26,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:53:26,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:53:26,970.970 INFO    ] No camera update needed
[2026-06-05 21:53:26,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:53:26,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:53:26,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:53:26,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:53:29,025.025 INFO    ] ================================================
[2026-06-05 21:53:29,041.041 INFO    ] Launching Daemon at Fri Jun  5 21:53:29 IST 2026
[2026-06-05 21:53:29,053.053 INFO    ] ================================================
[2026-06-05 21:53:29,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:53:29
[2026-06-05 21:53:30,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:53:30,522.522 INFO    ] Initializing speech engine...
[2026-06-05 21:53:30,528.528 INFO    ] 2026-06-05 21:53:30
[2026-06-05 21:53:30,790.790 INFO    ] 2026-06-05 21:53:30
[2026-06-05 21:53:30,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:53:31,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:53:31,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:53:31,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:53:31,335.335 INFO    ] time= 05/06/2026 21:53:31
[2026-06-05 21:53:31,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:53:31,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:53:31,487.487 INFO    ] No existing commands found in stream
[2026-06-05 21:53:36,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:53:36,506.506 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 21:53:38,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:53:38,181.181 INFO    ] Checking for system updates...
[2026-06-05 21:53:38,218.218 INFO    ] 200
[2026-06-05 21:53:38,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:38,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:53:38,279.279 INFO    ] No update needed
[2026-06-05 21:53:38,281.281 INFO    ] Checking for camera pi updates...
[2026-06-05 21:53:38,321.321 INFO    ] 200
[2026-06-05 21:53:38,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:38,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:53:38,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:53:38,429.429 INFO    ] No camera update needed
[2026-06-05 21:53:38,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:53:38,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:53:38,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:53:38,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:53:40,484.484 INFO    ] ================================================
[2026-06-05 21:53:40,500.500 INFO    ] Launching Daemon at Fri Jun  5 21:53:40 IST 2026
[2026-06-05 21:53:40,511.511 INFO    ] ================================================
[2026-06-05 21:53:41,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:53:41
[2026-06-05 21:53:41,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:53:41,986.986 INFO    ] Initializing speech engine...
[2026-06-05 21:53:41,996.996 INFO    ] 2026-06-05 21:53:41
[2026-06-05 21:53:42,245.245 INFO    ] 2026-06-05 21:53:42
[2026-06-05 21:53:42,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:53:42,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:53:42,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:53:42,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:53:42,736.736 INFO    ] time= 05/06/2026 21:53:42
[2026-06-05 21:53:42,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:53:42,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:53:42,956.956 INFO    ] No existing commands found in stream
[2026-06-05 21:53:47,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:53:47,976.976 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 21:53:49,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:53:49,977.977 INFO    ] Checking for system updates...
[2026-06-05 21:53:50,015.015 INFO    ] 200
[2026-06-05 21:53:50,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:50,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:53:50,075.075 INFO    ] No update needed
[2026-06-05 21:53:50,078.078 INFO    ] Checking for camera pi updates...
[2026-06-05 21:53:50,116.116 INFO    ] 200
[2026-06-05 21:53:50,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:53:50,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:53:50,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:53:50,219.219 INFO    ] No camera update needed
[2026-06-05 21:53:50,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:53:50,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:53:50,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:53:50,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:53:52,277.277 INFO    ] ================================================
[2026-06-05 21:53:52,293.293 INFO    ] Launching Daemon at Fri Jun  5 21:53:52 IST 2026
[2026-06-05 21:53:52,304.304 INFO    ] ================================================
[2026-06-05 21:53:52,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:53:52
[2026-06-05 21:53:53,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:53:53,756.756 INFO    ] Initializing speech engine...
[2026-06-05 21:53:53,764.764 INFO    ] 2026-06-05 21:53:53
[2026-06-05 21:53:54,018.018 INFO    ] 2026-06-05 21:53:54
[2026-06-05 21:53:54,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:53:54,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:53:54,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:53:55,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:53:55,036.036 INFO    ] time= 05/06/2026 21:53:55
[2026-06-05 21:53:55,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:53:55,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:53:55,158.158 INFO    ] No existing commands found in stream
[2026-06-05 21:54:00,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:54:00,184.184 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-05 21:54:03,424.424 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:54:03,427.427 INFO    ] Checking for system updates...
[2026-06-05 21:54:03,462.462 INFO    ] 200
[2026-06-05 21:54:03,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:03,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:54:03,520.520 INFO    ] No update needed
[2026-06-05 21:54:03,522.522 INFO    ] Checking for camera pi updates...
[2026-06-05 21:54:03,557.557 INFO    ] 200
[2026-06-05 21:54:03,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:03,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:54:03,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:54:03,652.652 INFO    ] No camera update needed
[2026-06-05 21:54:03,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:54:03,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:54:03,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:54:03,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:54:05,712.712 INFO    ] ================================================
[2026-06-05 21:54:05,728.728 INFO    ] Launching Daemon at Fri Jun  5 21:54:05 IST 2026
[2026-06-05 21:54:05,739.739 INFO    ] ================================================
[2026-06-05 21:54:06,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:54:06
[2026-06-05 21:54:06,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:54:07,250.250 INFO    ] Initializing speech engine...
[2026-06-05 21:54:07,260.260 INFO    ] 2026-06-05 21:54:07
[2026-06-05 21:54:07,518.518 INFO    ] 2026-06-05 21:54:07
[2026-06-05 21:54:07,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:54:07,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:54:07,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:54:08,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:54:08,065.065 INFO    ] time= 05/06/2026 21:54:08
[2026-06-05 21:54:08,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:54:08,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:54:08,229.229 INFO    ] No existing commands found in stream
[2026-06-05 21:54:13,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:54:13,262.262 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-05 21:54:16,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:54:16,420.420 INFO    ] Checking for system updates...
[2026-06-05 21:54:16,458.458 INFO    ] 200
[2026-06-05 21:54:16,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:16,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:54:16,527.527 INFO    ] No update needed
[2026-06-05 21:54:16,530.530 INFO    ] Checking for camera pi updates...
[2026-06-05 21:54:16,570.570 INFO    ] 200
[2026-06-05 21:54:16,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:16,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:54:16,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:54:16,674.674 INFO    ] No camera update needed
[2026-06-05 21:54:16,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:54:16,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:54:16,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:54:16,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:54:18,736.736 INFO    ] ================================================
[2026-06-05 21:54:18,751.751 INFO    ] Launching Daemon at Fri Jun  5 21:54:18 IST 2026
[2026-06-05 21:54:18,762.762 INFO    ] ================================================
[2026-06-05 21:54:19,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:54:19
[2026-06-05 21:54:19,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:54:20,217.217 INFO    ] Initializing speech engine...
[2026-06-05 21:54:20,227.227 INFO    ] 2026-06-05 21:54:20
[2026-06-05 21:54:20,489.489 INFO    ] 2026-06-05 21:54:20
[2026-06-05 21:54:20,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:54:20,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:54:20,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:54:21,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:54:21,030.030 INFO    ] time= 05/06/2026 21:54:21
[2026-06-05 21:54:21,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:54:21,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:54:21,169.169 INFO    ] No existing commands found in stream
[2026-06-05 21:54:26,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:54:26,199.199 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 21:54:29,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:54:29,019.019 INFO    ] Checking for system updates...
[2026-06-05 21:54:29,061.061 INFO    ] 200
[2026-06-05 21:54:29,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:29,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:54:29,126.126 INFO    ] No update needed
[2026-06-05 21:54:29,129.129 INFO    ] Checking for camera pi updates...
[2026-06-05 21:54:29,164.164 INFO    ] 200
[2026-06-05 21:54:29,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:29,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:54:29,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:54:29,260.260 INFO    ] No camera update needed
[2026-06-05 21:54:29,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:54:29,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:54:29,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:54:29,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:54:31,323.323 INFO    ] ================================================
[2026-06-05 21:54:31,339.339 INFO    ] Launching Daemon at Fri Jun  5 21:54:31 IST 2026
[2026-06-05 21:54:31,350.350 INFO    ] ================================================
[2026-06-05 21:54:31,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:54:31
[2026-06-05 21:54:32,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:54:32,858.858 INFO    ] Initializing speech engine...
[2026-06-05 21:54:32,865.865 INFO    ] 2026-06-05 21:54:32
[2026-06-05 21:54:33,187.187 INFO    ] 2026-06-05 21:54:33
[2026-06-05 21:54:33,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:54:33,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:54:33,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:54:33,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:54:33,626.626 INFO    ] time= 05/06/2026 21:54:33
[2026-06-05 21:54:33,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:54:33,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:54:33,794.794 INFO    ] No existing commands found in stream
[2026-06-05 21:54:38,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:54:38,823.823 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 21:54:44,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:54:44,235.235 INFO    ] Checking for system updates...
[2026-06-05 21:54:44,272.272 INFO    ] 200
[2026-06-05 21:54:44,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:44,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:54:44,330.330 INFO    ] No update needed
[2026-06-05 21:54:44,333.333 INFO    ] Checking for camera pi updates...
[2026-06-05 21:54:44,366.366 INFO    ] 200
[2026-06-05 21:54:44,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:44,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:54:44,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:54:44,462.462 INFO    ] No camera update needed
[2026-06-05 21:54:44,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:54:44,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:54:44,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:54:44,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:54:46,517.517 INFO    ] ================================================
[2026-06-05 21:54:46,533.533 INFO    ] Launching Daemon at Fri Jun  5 21:54:46 IST 2026
[2026-06-05 21:54:46,543.543 INFO    ] ================================================
[2026-06-05 21:54:47,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:54:47
[2026-06-05 21:54:47,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:54:47,981.981 INFO    ] Initializing speech engine...
[2026-06-05 21:54:48,003.003 INFO    ] 2026-06-05 21:54:47
[2026-06-05 21:54:48,256.256 INFO    ] 2026-06-05 21:54:48
[2026-06-05 21:54:48,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:54:48,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:54:48,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:54:48,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:54:48,738.738 INFO    ] time= 05/06/2026 21:54:48
[2026-06-05 21:54:48,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:54:48,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:54:48,963.963 INFO    ] No existing commands found in stream
[2026-06-05 21:54:53,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:54:53,984.984 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 21:54:55,308.308 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:54:55,311.311 INFO    ] Checking for system updates...
[2026-06-05 21:54:55,352.352 INFO    ] 200
[2026-06-05 21:54:55,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:55,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:54:55,412.412 INFO    ] No update needed
[2026-06-05 21:54:55,414.414 INFO    ] Checking for camera pi updates...
[2026-06-05 21:54:55,448.448 INFO    ] 200
[2026-06-05 21:54:55,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:54:55,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:54:55,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:54:55,543.543 INFO    ] No camera update needed
[2026-06-05 21:54:55,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:54:55,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:54:55,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:54:55,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:54:57,598.598 INFO    ] ================================================
[2026-06-05 21:54:57,613.613 INFO    ] Launching Daemon at Fri Jun  5 21:54:57 IST 2026
[2026-06-05 21:54:57,624.624 INFO    ] ================================================
[2026-06-05 21:54:58,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:54:58
[2026-06-05 21:54:58,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:54:59,223.223 INFO    ] Initializing speech engine...
[2026-06-05 21:54:59,239.239 INFO    ] 2026-06-05 21:54:59
[2026-06-05 21:54:59,561.561 INFO    ] 2026-06-05 21:54:59
[2026-06-05 21:54:59,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:54:59,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:54:59,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:55:00,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:55:00,105.105 INFO    ] time= 05/06/2026 21:55:00
[2026-06-05 21:55:00,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:55:00,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:55:00,256.256 INFO    ] No existing commands found in stream
[2026-06-05 21:55:05,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:55:05,286.286 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-05 21:55:07,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:55:07,214.214 INFO    ] Checking for system updates...
[2026-06-05 21:55:07,251.251 INFO    ] 200
[2026-06-05 21:55:07,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:07,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:07,312.312 INFO    ] No update needed
[2026-06-05 21:55:07,315.315 INFO    ] Checking for camera pi updates...
[2026-06-05 21:55:07,356.356 INFO    ] 200
[2026-06-05 21:55:07,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:07,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:55:07,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:07,543.543 INFO    ] No camera update needed
[2026-06-05 21:55:07,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:55:07,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:55:07,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:55:07,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:55:09,606.606 INFO    ] ================================================
[2026-06-05 21:55:09,623.623 INFO    ] Launching Daemon at Fri Jun  5 21:55:09 IST 2026
[2026-06-05 21:55:09,634.634 INFO    ] ================================================
[2026-06-05 21:55:10,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:55:10
[2026-06-05 21:55:10,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:55:11,253.253 INFO    ] Initializing speech engine...
[2026-06-05 21:55:11,259.259 INFO    ] 2026-06-05 21:55:11
[2026-06-05 21:55:11,534.534 INFO    ] 2026-06-05 21:55:11
[2026-06-05 21:55:11,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:55:11,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:55:11,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:55:12,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:55:12,376.376 INFO    ] time= 05/06/2026 21:55:12
[2026-06-05 21:55:12,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:55:12,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:55:12,638.638 INFO    ] No existing commands found in stream
[2026-06-05 21:55:17,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:55:17,667.667 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 21:55:20,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:55:20,019.019 INFO    ] Checking for system updates...
[2026-06-05 21:55:20,060.060 INFO    ] 200
[2026-06-05 21:55:20,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:20,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:20,118.118 INFO    ] No update needed
[2026-06-05 21:55:20,121.121 INFO    ] Checking for camera pi updates...
[2026-06-05 21:55:20,159.159 INFO    ] 200
[2026-06-05 21:55:20,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:20,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:55:20,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:20,267.267 INFO    ] No camera update needed
[2026-06-05 21:55:20,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:55:20,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:55:20,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:55:20,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:55:22,327.327 INFO    ] ================================================
[2026-06-05 21:55:22,343.343 INFO    ] Launching Daemon at Fri Jun  5 21:55:22 IST 2026
[2026-06-05 21:55:22,354.354 INFO    ] ================================================
[2026-06-05 21:55:23,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:55:23
[2026-06-05 21:55:23,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:55:24,059.059 INFO    ] Initializing speech engine...
[2026-06-05 21:55:24,064.064 INFO    ] 2026-06-05 21:55:24
[2026-06-05 21:55:24,349.349 INFO    ] 2026-06-05 21:55:24
[2026-06-05 21:55:24,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:55:25,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:55:25,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:55:25,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:55:25,473.473 INFO    ] time= 05/06/2026 21:55:25
[2026-06-05 21:55:25,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:55:25,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:55:25,599.599 INFO    ] No existing commands found in stream
[2026-06-05 21:55:30,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:55:30,613.613 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 21:55:33,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:55:33,941.941 INFO    ] Checking for system updates...
[2026-06-05 21:55:33,984.984 INFO    ] 200
[2026-06-05 21:55:33,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:34,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:34,045.045 INFO    ] No update needed
[2026-06-05 21:55:34,048.048 INFO    ] Checking for camera pi updates...
[2026-06-05 21:55:34,083.083 INFO    ] 200
[2026-06-05 21:55:34,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:34,135.135 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:55:34,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:34,188.188 INFO    ] No camera update needed
[2026-06-05 21:55:34,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:55:34,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:55:34,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:55:34,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:55:36,250.250 INFO    ] ================================================
[2026-06-05 21:55:36,267.267 INFO    ] Launching Daemon at Fri Jun  5 21:55:36 IST 2026
[2026-06-05 21:55:36,279.279 INFO    ] ================================================
[2026-06-05 21:55:36,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:55:36
[2026-06-05 21:55:37,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:55:37,951.951 INFO    ] Initializing speech engine...
[2026-06-05 21:55:37,960.960 INFO    ] 2026-06-05 21:55:37
[2026-06-05 21:55:38,280.280 INFO    ] 2026-06-05 21:55:38
[2026-06-05 21:55:38,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:55:38,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:55:38,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:55:38,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:55:38,896.896 INFO    ] time= 05/06/2026 21:55:38
[2026-06-05 21:55:38,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:55:38,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:55:39,192.192 INFO    ] No existing commands found in stream
[2026-06-05 21:55:44,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:55:44,233.233 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 21:55:45,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:55:45,020.020 INFO    ] Checking for system updates...
[2026-06-05 21:55:45,058.058 INFO    ] 200
[2026-06-05 21:55:45,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:45,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:45,118.118 INFO    ] No update needed
[2026-06-05 21:55:45,121.121 INFO    ] Checking for camera pi updates...
[2026-06-05 21:55:45,157.157 INFO    ] 200
[2026-06-05 21:55:45,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:45,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:55:45,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:45,247.247 INFO    ] No camera update needed
[2026-06-05 21:55:45,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:55:45,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:55:45,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:55:45,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:55:47,304.304 INFO    ] ================================================
[2026-06-05 21:55:47,319.319 INFO    ] Launching Daemon at Fri Jun  5 21:55:47 IST 2026
[2026-06-05 21:55:47,330.330 INFO    ] ================================================
[2026-06-05 21:55:47,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:55:47
[2026-06-05 21:55:48,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:55:48,784.784 INFO    ] Initializing speech engine...
[2026-06-05 21:55:48,793.793 INFO    ] 2026-06-05 21:55:48
[2026-06-05 21:55:49,045.045 INFO    ] 2026-06-05 21:55:49
[2026-06-05 21:55:49,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:55:49,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:55:49,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:55:49,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:55:49,605.605 INFO    ] time= 05/06/2026 21:55:49
[2026-06-05 21:55:49,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:55:49,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:55:49,756.756 INFO    ] No existing commands found in stream
[2026-06-05 21:55:54,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:55:54,772.772 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 21:55:56,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:55:56,434.434 INFO    ] Checking for system updates...
[2026-06-05 21:55:56,472.472 INFO    ] 200
[2026-06-05 21:55:56,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:56,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:56,541.541 INFO    ] No update needed
[2026-06-05 21:55:56,544.544 INFO    ] Checking for camera pi updates...
[2026-06-05 21:55:56,580.580 INFO    ] 200
[2026-06-05 21:55:56,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:55:56,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:55:56,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:55:56,678.678 INFO    ] No camera update needed
[2026-06-05 21:55:56,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:55:56,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:55:56,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:55:56,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:55:58,738.738 INFO    ] ================================================
[2026-06-05 21:55:58,755.755 INFO    ] Launching Daemon at Fri Jun  5 21:55:58 IST 2026
[2026-06-05 21:55:58,766.766 INFO    ] ================================================
[2026-06-05 21:55:59,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:55:59
[2026-06-05 21:55:59,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:56:00,204.204 INFO    ] Initializing speech engine...
[2026-06-05 21:56:00,210.210 INFO    ] 2026-06-05 21:56:00
[2026-06-05 21:56:00,496.496 INFO    ] 2026-06-05 21:56:00
[2026-06-05 21:56:00,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:56:00,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:56:00,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:56:00,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:56:00,945.945 INFO    ] time= 05/06/2026 21:56:00
[2026-06-05 21:56:00,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:56:00,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:56:01,081.081 INFO    ] No existing commands found in stream
[2026-06-05 21:56:06,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:56:06,109.109 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 21:56:08,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:56:08,769.769 INFO    ] Checking for system updates...
[2026-06-05 21:56:08,807.807 INFO    ] 200
[2026-06-05 21:56:08,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:56:08,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:56:08,869.869 INFO    ] No update needed
[2026-06-05 21:56:08,871.871 INFO    ] Checking for camera pi updates...
[2026-06-05 21:56:08,905.905 INFO    ] 200
[2026-06-05 21:56:08,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:56:08,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:56:08,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:56:08,985.985 INFO    ] No camera update needed
[2026-06-05 21:56:08,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:56:08,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:56:08,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:56:09,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:56:11,041.041 INFO    ] ================================================
[2026-06-05 21:56:11,058.058 INFO    ] Launching Daemon at Fri Jun  5 21:56:11 IST 2026
[2026-06-05 21:56:11,069.069 INFO    ] ================================================
[2026-06-05 21:56:11,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:56:11
[2026-06-05 21:56:12,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:56:12,475.475 INFO    ] Initializing speech engine...
[2026-06-05 21:56:12,496.496 INFO    ] 2026-06-05 21:56:12
[2026-06-05 21:56:12,756.756 INFO    ] 2026-06-05 21:56:12
[2026-06-05 21:56:12,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:56:13,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:56:13,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:56:13,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:56:13,294.294 INFO    ] time= 05/06/2026 21:56:13
[2026-06-05 21:56:13,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:56:13,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:56:13,478.478 INFO    ] No existing commands found in stream
[2026-06-05 21:56:18,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:56:18,499.499 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-05 21:56:22,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:56:22,043.043 INFO    ] Checking for system updates...
[2026-06-05 21:56:22,079.079 INFO    ] 200
[2026-06-05 21:56:22,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:56:22,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:56:22,149.149 INFO    ] No update needed
[2026-06-05 21:56:22,151.151 INFO    ] Checking for camera pi updates...
[2026-06-05 21:56:22,185.185 INFO    ] 200
[2026-06-05 21:56:22,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:56:22,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:56:22,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:56:22,289.289 INFO    ] No camera update needed
[2026-06-05 21:56:22,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:56:22,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:56:22,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:56:22,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:56:24,347.347 INFO    ] ================================================
[2026-06-05 21:56:24,362.362 INFO    ] Launching Daemon at Fri Jun  5 21:56:24 IST 2026
[2026-06-05 21:56:24,373.373 INFO    ] ================================================
[2026-06-05 21:56:24,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:56:24
[2026-06-05 21:56:25,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:56:25,793.793 INFO    ] Initializing speech engine...
[2026-06-05 21:56:25,807.807 INFO    ] 2026-06-05 21:56:25
[2026-06-05 21:56:26,074.074 INFO    ] 2026-06-05 21:56:26
[2026-06-05 21:56:26,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:56:26,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:56:26,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:56:26,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:56:26,457.457 INFO    ] time= 05/06/2026 21:56:26
[2026-06-05 21:56:26,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:56:26,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:56:26,657.657 INFO    ] No existing commands found in stream
[2026-06-05 21:56:31,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:56:31,670.670 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 21:56:34,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:56:34,567.567 INFO    ] Checking for system updates...
[2026-06-05 21:56:34,604.604 INFO    ] 200
[2026-06-05 21:56:34,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:56:34,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:56:34,665.665 INFO    ] No update needed
[2026-06-05 21:56:34,668.668 INFO    ] Checking for camera pi updates...
[2026-06-05 21:56:34,703.703 INFO    ] 200
[2026-06-05 21:56:34,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:56:34,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:56:34,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:56:34,802.802 INFO    ] No camera update needed
[2026-06-05 21:56:34,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:56:34,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:56:34,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:56:34,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:56:36,862.862 INFO    ] ================================================
[2026-06-05 21:56:36,877.877 INFO    ] Launching Daemon at Fri Jun  5 21:56:36 IST 2026
[2026-06-05 21:56:36,888.888 INFO    ] ================================================
[2026-06-05 21:56:37,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:56:37
[2026-06-05 21:56:38,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:56:38,302.302 INFO    ] Initializing speech engine...
[2026-06-05 21:56:38,310.310 INFO    ] 2026-06-05 21:56:38
[2026-06-05 21:56:38,611.611 INFO    ] 2026-06-05 21:56:38
[2026-06-05 21:56:38,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:56:38,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:56:38,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:56:39,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:56:39,045.045 INFO    ] time= 05/06/2026 21:56:39
[2026-06-05 21:56:39,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:56:39,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:56:39,234.234 INFO    ] No existing commands found in stream
[2026-06-05 21:56:44,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:56:44,262.262 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 21:56:48,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:56:48,136.136 INFO    ] Checking for system updates...
[2026-06-05 21:56:48,173.173 INFO    ] 200
[2026-06-05 21:56:48,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:56:48,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:56:48,233.233 INFO    ] No update needed
[2026-06-05 21:56:48,236.236 INFO    ] Checking for camera pi updates...
[2026-06-05 21:56:48,271.271 INFO    ] 200
[2026-06-05 21:56:48,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:56:48,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:56:48,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:56:48,385.385 INFO    ] No camera update needed
[2026-06-05 21:56:48,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:56:48,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:56:48,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:56:48,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:56:50,443.443 INFO    ] ================================================
[2026-06-05 21:56:50,462.462 INFO    ] Launching Daemon at Fri Jun  5 21:56:50 IST 2026
[2026-06-05 21:56:50,473.473 INFO    ] ================================================
[2026-06-05 21:56:51,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:56:51
[2026-06-05 21:56:51,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:56:51,874.874 INFO    ] Initializing speech engine...
[2026-06-05 21:56:51,896.896 INFO    ] 2026-06-05 21:56:51
[2026-06-05 21:56:52,157.157 INFO    ] 2026-06-05 21:56:52
[2026-06-05 21:56:52,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:56:54,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:56:54,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:56:55,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:56:55,551.551 INFO    ] time= 05/06/2026 21:56:55
[2026-06-05 21:56:55,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:56:55,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:56:55,633.633 INFO    ] No existing commands found in stream
[2026-06-05 21:57:00,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:57:00,645.645 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-05 21:57:02,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:57:02,149.149 INFO    ] Checking for system updates...
[2026-06-05 21:57:02,206.206 INFO    ] 200
[2026-06-05 21:57:02,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:02,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:57:02,280.280 INFO    ] No update needed
[2026-06-05 21:57:02,283.283 INFO    ] Checking for camera pi updates...
[2026-06-05 21:57:02,322.322 INFO    ] 200
[2026-06-05 21:57:02,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:02,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:57:02,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:57:02,414.414 INFO    ] No camera update needed
[2026-06-05 21:57:02,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:57:02,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:57:02,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:57:02,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:57:04,477.477 INFO    ] ================================================
[2026-06-05 21:57:04,493.493 INFO    ] Launching Daemon at Fri Jun  5 21:57:04 IST 2026
[2026-06-05 21:57:04,504.504 INFO    ] ================================================
[2026-06-05 21:57:05,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:57:05
[2026-06-05 21:57:05,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:57:06,227.227 INFO    ] Initializing speech engine...
[2026-06-05 21:57:06,234.234 INFO    ] 2026-06-05 21:57:06
[2026-06-05 21:57:06,506.506 INFO    ] 2026-06-05 21:57:06
[2026-06-05 21:57:06,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:57:06,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:57:06,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:57:06,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:57:06,941.941 INFO    ] time= 05/06/2026 21:57:06
[2026-06-05 21:57:06,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:57:06,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:57:07,094.094 INFO    ] No existing commands found in stream
[2026-06-05 21:57:12,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:57:12,122.122 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 21:57:15,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:57:15,248.248 INFO    ] Checking for system updates...
[2026-06-05 21:57:15,286.286 INFO    ] 200
[2026-06-05 21:57:15,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:15,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:57:15,346.346 INFO    ] No update needed
[2026-06-05 21:57:15,349.349 INFO    ] Checking for camera pi updates...
[2026-06-05 21:57:15,383.383 INFO    ] 200
[2026-06-05 21:57:15,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:15,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:57:15,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:57:15,574.574 INFO    ] No camera update needed
[2026-06-05 21:57:15,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:57:15,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:57:15,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:57:15,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:57:17,630.630 INFO    ] ================================================
[2026-06-05 21:57:17,646.646 INFO    ] Launching Daemon at Fri Jun  5 21:57:17 IST 2026
[2026-06-05 21:57:17,657.657 INFO    ] ================================================
[2026-06-05 21:57:18,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:57:18
[2026-06-05 21:57:19,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:57:19,313.313 INFO    ] Initializing speech engine...
[2026-06-05 21:57:19,321.321 INFO    ] 2026-06-05 21:57:19
[2026-06-05 21:57:19,623.623 INFO    ] 2026-06-05 21:57:19
[2026-06-05 21:57:19,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:57:19,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:57:19,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:57:20,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:57:20,159.159 INFO    ] time= 05/06/2026 21:57:20
[2026-06-05 21:57:20,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:57:20,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:57:20,311.311 INFO    ] No existing commands found in stream
[2026-06-05 21:57:25,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:57:25,330.330 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 21:57:28,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:57:28,437.437 INFO    ] Checking for system updates...
[2026-06-05 21:57:28,473.473 INFO    ] 200
[2026-06-05 21:57:28,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:28,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:57:28,531.531 INFO    ] No update needed
[2026-06-05 21:57:28,534.534 INFO    ] Checking for camera pi updates...
[2026-06-05 21:57:28,568.568 INFO    ] 200
[2026-06-05 21:57:28,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:28,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:57:28,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:57:28,662.662 INFO    ] No camera update needed
[2026-06-05 21:57:28,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:57:28,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:57:28,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:57:28,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:57:30,718.718 INFO    ] ================================================
[2026-06-05 21:57:30,734.734 INFO    ] Launching Daemon at Fri Jun  5 21:57:30 IST 2026
[2026-06-05 21:57:30,746.746 INFO    ] ================================================
[2026-06-05 21:57:31,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:57:31
[2026-06-05 21:57:32,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:57:32,502.502 INFO    ] Initializing speech engine...
[2026-06-05 21:57:32,511.511 INFO    ] 2026-06-05 21:57:32
[2026-06-05 21:57:32,846.846 INFO    ] 2026-06-05 21:57:32
[2026-06-05 21:57:32,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:57:33,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:57:33,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:57:33,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:57:33,352.352 INFO    ] time= 05/06/2026 21:57:33
[2026-06-05 21:57:33,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:57:33,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:57:33,509.509 INFO    ] No existing commands found in stream
[2026-06-05 21:57:38,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:57:38,541.541 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-05 21:57:42,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:57:42,964.964 INFO    ] Checking for system updates...
[2026-06-05 21:57:43,002.002 INFO    ] 200
[2026-06-05 21:57:43,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:43,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:57:43,069.069 INFO    ] No update needed
[2026-06-05 21:57:43,072.072 INFO    ] Checking for camera pi updates...
[2026-06-05 21:57:43,107.107 INFO    ] 200
[2026-06-05 21:57:43,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:43,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:57:43,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:57:43,204.204 INFO    ] No camera update needed
[2026-06-05 21:57:43,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:57:43,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:57:43,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:57:43,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:57:45,260.260 INFO    ] ================================================
[2026-06-05 21:57:45,276.276 INFO    ] Launching Daemon at Fri Jun  5 21:57:45 IST 2026
[2026-06-05 21:57:45,287.287 INFO    ] ================================================
[2026-06-05 21:57:45,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:57:45
[2026-06-05 21:57:46,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:57:46,951.951 INFO    ] Initializing speech engine...
[2026-06-05 21:57:46,963.963 INFO    ] 2026-06-05 21:57:46
[2026-06-05 21:57:47,276.276 INFO    ] 2026-06-05 21:57:47
[2026-06-05 21:57:47,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:57:47,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:57:47,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:57:47,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:57:47,866.866 INFO    ] time= 05/06/2026 21:57:47
[2026-06-05 21:57:47,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:57:47,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:57:48,167.167 INFO    ] No existing commands found in stream
[2026-06-05 21:57:53,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:57:53,202.202 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 21:57:55,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 21:57:55,892.892 INFO    ] Checking for system updates...
[2026-06-05 21:57:55,929.929 INFO    ] 200
[2026-06-05 21:57:55,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:55,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:57:55,988.988 INFO    ] No update needed
[2026-06-05 21:57:55,990.990 INFO    ] Checking for camera pi updates...
[2026-06-05 21:57:56,024.024 INFO    ] 200
[2026-06-05 21:57:56,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:57:56,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:57:56,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:57:56,125.125 INFO    ] No camera update needed
[2026-06-05 21:57:56,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:57:56,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:57:56,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:57:56,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:57:58,181.181 INFO    ] ================================================
[2026-06-05 21:57:58,197.197 INFO    ] Launching Daemon at Fri Jun  5 21:57:58 IST 2026
[2026-06-05 21:57:58,209.209 INFO    ] ================================================
[2026-06-05 21:57:58,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:57:58
[2026-06-05 21:57:59,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:57:59,684.684 INFO    ] Initializing speech engine...
[2026-06-05 21:57:59,698.698 INFO    ] 2026-06-05 21:57:59
[2026-06-05 21:57:59,968.968 INFO    ] 2026-06-05 21:57:59
[2026-06-05 21:58:00,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:58:00,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:58:00,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:58:00,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:58:00,443.443 INFO    ] time= 05/06/2026 21:58:00
[2026-06-05 21:58:00,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:58:00,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:58:00,675.675 INFO    ] No existing commands found in stream
[2026-06-05 21:58:05,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:58:05,708.708 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 21:58:09,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:58:09,106.106 INFO    ] Checking for system updates...
[2026-06-05 21:58:09,147.147 INFO    ] 200
[2026-06-05 21:58:09,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:09,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:58:09,207.207 INFO    ] No update needed
[2026-06-05 21:58:09,209.209 INFO    ] Checking for camera pi updates...
[2026-06-05 21:58:09,243.243 INFO    ] 200
[2026-06-05 21:58:09,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:09,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:58:09,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:58:09,342.342 INFO    ] No camera update needed
[2026-06-05 21:58:09,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:58:09,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:58:09,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:58:09,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:58:11,397.397 INFO    ] ================================================
[2026-06-05 21:58:11,413.413 INFO    ] Launching Daemon at Fri Jun  5 21:58:11 IST 2026
[2026-06-05 21:58:11,423.423 INFO    ] ================================================
[2026-06-05 21:58:12,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:58:12
[2026-06-05 21:58:12,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:58:12,855.855 INFO    ] Initializing speech engine...
[2026-06-05 21:58:12,861.861 INFO    ] 2026-06-05 21:58:12
[2026-06-05 21:58:13,140.140 INFO    ] 2026-06-05 21:58:13
[2026-06-05 21:58:13,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:58:13,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:58:13,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:58:13,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:58:13,697.697 INFO    ] time= 05/06/2026 21:58:13
[2026-06-05 21:58:13,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:58:13,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:58:13,854.854 INFO    ] No existing commands found in stream
[2026-06-05 21:58:18,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:58:18,894.894 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 21:58:20,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 21:58:20,647.647 INFO    ] Checking for system updates...
[2026-06-05 21:58:20,693.693 INFO    ] 200
[2026-06-05 21:58:20,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:20,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:58:20,765.765 INFO    ] No update needed
[2026-06-05 21:58:20,768.768 INFO    ] Checking for camera pi updates...
[2026-06-05 21:58:20,803.803 INFO    ] 200
[2026-06-05 21:58:20,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:20,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:58:20,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:58:20,899.899 INFO    ] No camera update needed
[2026-06-05 21:58:20,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:58:20,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:58:20,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:58:20,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:58:22,959.959 INFO    ] ================================================
[2026-06-05 21:58:22,976.976 INFO    ] Launching Daemon at Fri Jun  5 21:58:22 IST 2026
[2026-06-05 21:58:22,987.987 INFO    ] ================================================
[2026-06-05 21:58:23,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:58:23
[2026-06-05 21:58:24,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:58:24,437.437 INFO    ] Initializing speech engine...
[2026-06-05 21:58:24,459.459 INFO    ] 2026-06-05 21:58:24
[2026-06-05 21:58:24,733.733 INFO    ] 2026-06-05 21:58:24
[2026-06-05 21:58:24,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:58:25,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:58:25,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:58:26,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:58:26,151.151 INFO    ] time= 05/06/2026 21:58:26
[2026-06-05 21:58:26,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:58:26,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:58:26,278.278 INFO    ] No existing commands found in stream
[2026-06-05 21:58:31,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:58:31,311.311 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-05 21:58:34,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:58:34,564.564 INFO    ] Checking for system updates...
[2026-06-05 21:58:34,601.601 INFO    ] 200
[2026-06-05 21:58:34,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:34,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:58:34,666.666 INFO    ] No update needed
[2026-06-05 21:58:34,668.668 INFO    ] Checking for camera pi updates...
[2026-06-05 21:58:34,702.702 INFO    ] 200
[2026-06-05 21:58:34,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:34,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:58:34,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:58:34,800.800 INFO    ] No camera update needed
[2026-06-05 21:58:34,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:58:34,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:58:34,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:58:34,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:58:36,859.859 INFO    ] ================================================
[2026-06-05 21:58:36,875.875 INFO    ] Launching Daemon at Fri Jun  5 21:58:36 IST 2026
[2026-06-05 21:58:36,886.886 INFO    ] ================================================
[2026-06-05 21:58:37,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:58:37
[2026-06-05 21:58:38,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:58:38,410.410 INFO    ] Initializing speech engine...
[2026-06-05 21:58:38,419.419 INFO    ] 2026-06-05 21:58:38
[2026-06-05 21:58:38,714.714 INFO    ] 2026-06-05 21:58:38
[2026-06-05 21:58:38,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:58:38,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:58:39,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:58:39,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:58:39,257.257 INFO    ] time= 05/06/2026 21:58:39
[2026-06-05 21:58:39,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:58:39,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:58:39,426.426 INFO    ] No existing commands found in stream
[2026-06-05 21:58:44,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:58:44,462.462 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-05 21:58:45,069.069 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 21:58:45,072.072 INFO    ] Checking for system updates...
[2026-06-05 21:58:45,109.109 INFO    ] 200
[2026-06-05 21:58:45,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:45,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:58:45,179.179 INFO    ] No update needed
[2026-06-05 21:58:45,182.182 INFO    ] Checking for camera pi updates...
[2026-06-05 21:58:45,220.220 INFO    ] 200
[2026-06-05 21:58:45,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:45,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:58:45,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:58:45,328.328 INFO    ] No camera update needed
[2026-06-05 21:58:45,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:58:45,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:58:45,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:58:45,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:58:47,387.387 INFO    ] ================================================
[2026-06-05 21:58:47,402.402 INFO    ] Launching Daemon at Fri Jun  5 21:58:47 IST 2026
[2026-06-05 21:58:47,412.412 INFO    ] ================================================
[2026-06-05 21:58:48,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:58:48
[2026-06-05 21:58:48,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:58:49,081.081 INFO    ] Initializing speech engine...
[2026-06-05 21:58:49,089.089 INFO    ] 2026-06-05 21:58:49
[2026-06-05 21:58:49,352.352 INFO    ] 2026-06-05 21:58:49
[2026-06-05 21:58:49,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:58:49,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:58:49,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:58:49,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:58:49,820.820 INFO    ] time= 05/06/2026 21:58:49
[2026-06-05 21:58:49,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:58:49,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:58:50,041.041 INFO    ] No existing commands found in stream
[2026-06-05 21:58:55,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:58:55,074.074 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 21:58:57,152.152 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 21:58:57,155.155 INFO    ] Checking for system updates...
[2026-06-05 21:58:57,195.195 INFO    ] 200
[2026-06-05 21:58:57,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:57,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:58:57,260.260 INFO    ] No update needed
[2026-06-05 21:58:57,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 21:58:57,296.296 INFO    ] 200
[2026-06-05 21:58:57,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:58:57,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:58:57,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:58:57,394.394 INFO    ] No camera update needed
[2026-06-05 21:58:57,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:58:57,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:58:57,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:58:57,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:58:59,449.449 INFO    ] ================================================
[2026-06-05 21:58:59,464.464 INFO    ] Launching Daemon at Fri Jun  5 21:58:59 IST 2026
[2026-06-05 21:58:59,475.475 INFO    ] ================================================
[2026-06-05 21:59:00,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:59:00
[2026-06-05 21:59:00,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:59:00,930.930 INFO    ] Initializing speech engine...
[2026-06-05 21:59:00,940.940 INFO    ] 2026-06-05 21:59:00
[2026-06-05 21:59:01,187.187 INFO    ] 2026-06-05 21:59:01
[2026-06-05 21:59:01,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:59:01,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:59:01,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:59:01,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:59:01,719.719 INFO    ] time= 05/06/2026 21:59:01
[2026-06-05 21:59:01,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:59:01,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:59:01,823.823 INFO    ] No existing commands found in stream
[2026-06-05 21:59:06,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:59:06,837.837 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-05 21:59:07,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:59:07,403.403 INFO    ] Checking for system updates...
[2026-06-05 21:59:07,443.443 INFO    ] 200
[2026-06-05 21:59:07,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:59:07,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:59:07,501.501 INFO    ] No update needed
[2026-06-05 21:59:07,504.504 INFO    ] Checking for camera pi updates...
[2026-06-05 21:59:07,541.541 INFO    ] 200
[2026-06-05 21:59:07,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:59:07,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:59:07,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:59:07,641.641 INFO    ] No camera update needed
[2026-06-05 21:59:07,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:59:07,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:59:07,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:59:07,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:59:09,701.701 INFO    ] ================================================
[2026-06-05 21:59:09,718.718 INFO    ] Launching Daemon at Fri Jun  5 21:59:09 IST 2026
[2026-06-05 21:59:09,730.730 INFO    ] ================================================
[2026-06-05 21:59:10,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:59:10
[2026-06-05 21:59:10,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:59:11,201.201 INFO    ] Initializing speech engine...
[2026-06-05 21:59:11,206.206 INFO    ] 2026-06-05 21:59:11
[2026-06-05 21:59:11,468.468 INFO    ] 2026-06-05 21:59:11
[2026-06-05 21:59:11,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:59:11,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:59:11,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:59:12,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:59:12,169.169 INFO    ] time= 05/06/2026 21:59:12
[2026-06-05 21:59:12,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:59:12,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:59:12,341.341 INFO    ] No existing commands found in stream
[2026-06-05 21:59:17,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:59:17,366.366 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 21:59:19,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:59:19,164.164 INFO    ] Checking for system updates...
[2026-06-05 21:59:19,202.202 INFO    ] 200
[2026-06-05 21:59:19,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:59:19,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:59:19,261.261 INFO    ] No update needed
[2026-06-05 21:59:19,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 21:59:19,301.301 INFO    ] 200
[2026-06-05 21:59:19,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:59:19,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:59:19,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:59:19,496.496 INFO    ] No camera update needed
[2026-06-05 21:59:19,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:59:19,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:59:19,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:59:19,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:59:21,551.551 INFO    ] ================================================
[2026-06-05 21:59:21,567.567 INFO    ] Launching Daemon at Fri Jun  5 21:59:21 IST 2026
[2026-06-05 21:59:21,577.577 INFO    ] ================================================
[2026-06-05 21:59:22,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:59:22
[2026-06-05 21:59:22,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:59:22,999.999 INFO    ] Initializing speech engine...
[2026-06-05 21:59:23,008.008 INFO    ] 2026-06-05 21:59:23
[2026-06-05 21:59:23,254.254 INFO    ] 2026-06-05 21:59:23
[2026-06-05 21:59:23,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:59:25,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:59:25,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:59:26,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:59:26,166.166 INFO    ] time= 05/06/2026 21:59:26
[2026-06-05 21:59:26,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:59:26,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:59:26,266.266 INFO    ] No existing commands found in stream
[2026-06-05 21:59:31,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:59:31,279.279 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-05 21:59:35,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 21:59:35,856.856 INFO    ] Checking for system updates...
[2026-06-05 21:59:35,893.893 INFO    ] 200
[2026-06-05 21:59:35,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:59:35,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:59:35,954.954 INFO    ] No update needed
[2026-06-05 21:59:35,957.957 INFO    ] Checking for camera pi updates...
[2026-06-05 21:59:35,997.997 INFO    ] 200
[2026-06-05 21:59:36,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:59:36,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:59:36,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 21:59:36,103.103 INFO    ] No camera update needed
[2026-06-05 21:59:36,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:59:36,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:59:36,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:59:36,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:59:38,164.164 INFO    ] ================================================
[2026-06-05 21:59:38,180.180 INFO    ] Launching Daemon at Fri Jun  5 21:59:38 IST 2026
[2026-06-05 21:59:38,191.191 INFO    ] ================================================
[2026-06-05 21:59:38,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:59:38
[2026-06-05 21:59:39,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:59:39,649.649 INFO    ] Initializing speech engine...
[2026-06-05 21:59:39,663.663 INFO    ] 2026-06-05 21:59:39
[2026-06-05 21:59:39,949.949 INFO    ] 2026-06-05 21:59:39
[2026-06-05 21:59:39,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:59:40,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:59:40,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:59:40,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:59:40,458.458 INFO    ] time= 05/06/2026 21:59:40
[2026-06-05 21:59:40,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:59:40,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:59:40,656.656 INFO    ] No existing commands found in stream
[2026-06-05 21:59:45,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:59:45,676.676 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 21:59:48,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 21:59:48,787.787 INFO    ] Checking for system updates...
[2026-06-05 21:59:48,824.824 INFO    ] 200
[2026-06-05 21:59:48,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:59:48,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:59:48,900.900 INFO    ] No update needed
[2026-06-05 21:59:48,903.903 INFO    ] Checking for camera pi updates...
[2026-06-05 21:59:48,951.951 INFO    ] 200
[2026-06-05 21:59:48,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 21:59:48,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 21:59:49,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 21:59:49,043.043 INFO    ] No camera update needed
[2026-06-05 21:59:49,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-05 21:59:49,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 21:59:49,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 21:59:49,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 21:59:51,100.100 INFO    ] ================================================
[2026-06-05 21:59:51,115.115 INFO    ] Launching Daemon at Fri Jun  5 21:59:51 IST 2026
[2026-06-05 21:59:51,126.126 INFO    ] ================================================
[2026-06-05 21:59:51,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 21:59:51
[2026-06-05 21:59:52,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 21:59:52,552.552 INFO    ] Initializing speech engine...
[2026-06-05 21:59:52,558.558 INFO    ] 2026-06-05 21:59:52
[2026-06-05 21:59:52,815.815 INFO    ] 2026-06-05 21:59:52
[2026-06-05 21:59:52,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 21:59:53,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 21:59:53,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 21:59:53,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 21:59:53,356.356 INFO    ] time= 05/06/2026 21:59:53
[2026-06-05 21:59:53,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 21:59:53,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-05 21:59:53,508.508 INFO    ] No existing commands found in stream
[2026-06-05 21:59:58,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 21:59:58,526.526 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 22:00:06,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:00:06,099.099 INFO    ] Checking for system updates...
[2026-06-05 22:00:06,186.186 INFO    ] 200
[2026-06-05 22:00:06,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:06,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:00:06,350.350 INFO    ] No update needed
[2026-06-05 22:00:06,353.353 INFO    ] Checking for camera pi updates...
[2026-06-05 22:00:06,422.422 INFO    ] 200
[2026-06-05 22:00:06,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:06,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:00:06,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:00:06,533.533 INFO    ] No camera update needed
[2026-06-05 22:00:06,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:00:06,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:00:06,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:00:06,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:00:08,595.595 INFO    ] ================================================
[2026-06-05 22:00:08,610.610 INFO    ] Launching Daemon at Fri Jun  5 22:00:08 IST 2026
[2026-06-05 22:00:08,621.621 INFO    ] ================================================
[2026-06-05 22:00:09,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:00:09
[2026-06-05 22:00:09,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:00:10,112.112 INFO    ] Initializing speech engine...
[2026-06-05 22:00:10,121.121 INFO    ] 2026-06-05 22:00:10
[2026-06-05 22:00:10,384.384 INFO    ] 2026-06-05 22:00:10
[2026-06-05 22:00:10,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:00:10,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:00:10,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:00:10,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:00:10,934.934 INFO    ] time= 05/06/2026 22:00:10
[2026-06-05 22:00:10,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:00:10,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:00:11,090.090 INFO    ] No existing commands found in stream
[2026-06-05 22:00:16,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:00:16,106.106 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 22:00:17,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:00:17,254.254 INFO    ] Checking for system updates...
[2026-06-05 22:00:17,291.291 INFO    ] 200
[2026-06-05 22:00:17,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:17,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:00:17,358.358 INFO    ] No update needed
[2026-06-05 22:00:17,360.360 INFO    ] Checking for camera pi updates...
[2026-06-05 22:00:17,399.399 INFO    ] 200
[2026-06-05 22:00:17,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:17,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:00:17,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:00:17,490.490 INFO    ] No camera update needed
[2026-06-05 22:00:17,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:00:17,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:00:17,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:00:17,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:00:19,546.546 INFO    ] ================================================
[2026-06-05 22:00:19,561.561 INFO    ] Launching Daemon at Fri Jun  5 22:00:19 IST 2026
[2026-06-05 22:00:19,572.572 INFO    ] ================================================
[2026-06-05 22:00:20,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:00:20
[2026-06-05 22:00:20,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:00:21,042.042 INFO    ] Initializing speech engine...
[2026-06-05 22:00:21,050.050 INFO    ] 2026-06-05 22:00:21
[2026-06-05 22:00:21,311.311 INFO    ] 2026-06-05 22:00:21
[2026-06-05 22:00:21,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:00:21,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:00:21,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:00:21,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:00:21,856.856 INFO    ] time= 05/06/2026 22:00:21
[2026-06-05 22:00:21,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:00:21,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:00:22,031.031 INFO    ] No existing commands found in stream
[2026-06-05 22:00:27,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:00:27,070.070 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 22:00:30,557.557 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:00:30,559.559 INFO    ] Checking for system updates...
[2026-06-05 22:00:30,601.601 INFO    ] 200
[2026-06-05 22:00:30,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:30,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:00:30,660.660 INFO    ] No update needed
[2026-06-05 22:00:30,662.662 INFO    ] Checking for camera pi updates...
[2026-06-05 22:00:30,696.696 INFO    ] 200
[2026-06-05 22:00:30,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:30,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:00:30,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:00:30,794.794 INFO    ] No camera update needed
[2026-06-05 22:00:30,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:00:30,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:00:30,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:00:30,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:00:32,852.852 INFO    ] ================================================
[2026-06-05 22:00:32,869.869 INFO    ] Launching Daemon at Fri Jun  5 22:00:32 IST 2026
[2026-06-05 22:00:32,881.881 INFO    ] ================================================
[2026-06-05 22:00:33,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:00:33
[2026-06-05 22:00:34,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:00:34,432.432 INFO    ] Initializing speech engine...
[2026-06-05 22:00:34,455.455 INFO    ] 2026-06-05 22:00:34
[2026-06-05 22:00:34,715.715 INFO    ] 2026-06-05 22:00:34
[2026-06-05 22:00:34,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:00:35,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:00:35,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:00:35,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:00:35,716.716 INFO    ] time= 05/06/2026 22:00:35
[2026-06-05 22:00:35,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:00:35,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:00:35,862.862 INFO    ] No existing commands found in stream
[2026-06-05 22:00:40,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:00:40,890.890 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 22:00:43,460.460 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:00:43,463.463 INFO    ] Checking for system updates...
[2026-06-05 22:00:43,499.499 INFO    ] 200
[2026-06-05 22:00:43,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:43,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:00:43,565.565 INFO    ] No update needed
[2026-06-05 22:00:43,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 22:00:43,601.601 INFO    ] 200
[2026-06-05 22:00:43,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:43,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:00:43,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:00:43,697.697 INFO    ] No camera update needed
[2026-06-05 22:00:43,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:00:43,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:00:43,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:00:43,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:00:45,756.756 INFO    ] ================================================
[2026-06-05 22:00:45,771.771 INFO    ] Launching Daemon at Fri Jun  5 22:00:45 IST 2026
[2026-06-05 22:00:45,782.782 INFO    ] ================================================
[2026-06-05 22:00:46,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:00:46
[2026-06-05 22:00:46,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:00:47,251.251 INFO    ] Initializing speech engine...
[2026-06-05 22:00:47,261.261 INFO    ] 2026-06-05 22:00:47
[2026-06-05 22:00:47,512.512 INFO    ] 2026-06-05 22:00:47
[2026-06-05 22:00:47,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:00:47,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:00:47,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:00:48,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:00:48,069.069 INFO    ] time= 05/06/2026 22:00:48
[2026-06-05 22:00:48,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:00:48,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:00:48,215.215 INFO    ] No existing commands found in stream
[2026-06-05 22:00:53,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:00:53,239.239 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 22:00:56,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:00:56,479.479 INFO    ] Checking for system updates...
[2026-06-05 22:00:56,515.515 INFO    ] 200
[2026-06-05 22:00:56,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:56,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:00:56,581.581 INFO    ] No update needed
[2026-06-05 22:00:56,584.584 INFO    ] Checking for camera pi updates...
[2026-06-05 22:00:56,622.622 INFO    ] 200
[2026-06-05 22:00:56,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:00:56,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:00:56,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:00:56,713.713 INFO    ] No camera update needed
[2026-06-05 22:00:56,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:00:56,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:00:56,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:00:56,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:00:58,769.769 INFO    ] ================================================
[2026-06-05 22:00:58,784.784 INFO    ] Launching Daemon at Fri Jun  5 22:00:58 IST 2026
[2026-06-05 22:00:58,795.795 INFO    ] ================================================
[2026-06-05 22:00:59,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:00:59
[2026-06-05 22:01:00,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:01:00,441.441 INFO    ] Initializing speech engine...
[2026-06-05 22:01:00,453.453 INFO    ] 2026-06-05 22:01:00
[2026-06-05 22:01:00,767.767 INFO    ] 2026-06-05 22:01:00
[2026-06-05 22:01:00,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:01:01,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:01:01,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:01:01,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:01:01,459.459 INFO    ] time= 05/06/2026 22:01:01
[2026-06-05 22:01:01,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:01:01,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:01:01,557.557 INFO    ] No existing commands found in stream
[2026-06-05 22:01:06,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:01:06,571.571 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 22:01:07,103.103 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:01:07,107.107 INFO    ] Checking for system updates...
[2026-06-05 22:01:07,144.144 INFO    ] 200
[2026-06-05 22:01:07,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:07,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:01:07,204.204 INFO    ] No update needed
[2026-06-05 22:01:07,207.207 INFO    ] Checking for camera pi updates...
[2026-06-05 22:01:07,241.241 INFO    ] 200
[2026-06-05 22:01:07,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:07,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:01:07,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:01:07,338.338 INFO    ] No camera update needed
[2026-06-05 22:01:07,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:01:07,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:01:07,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:01:07,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:01:09,392.392 INFO    ] ================================================
[2026-06-05 22:01:09,407.407 INFO    ] Launching Daemon at Fri Jun  5 22:01:09 IST 2026
[2026-06-05 22:01:09,418.418 INFO    ] ================================================
[2026-06-05 22:01:10,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:01:10
[2026-06-05 22:01:10,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:01:11,097.097 INFO    ] Initializing speech engine...
[2026-06-05 22:01:11,111.111 INFO    ] 2026-06-05 22:01:11
[2026-06-05 22:01:11,387.387 INFO    ] 2026-06-05 22:01:11
[2026-06-05 22:01:11,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:01:11,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:01:11,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:01:11,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:01:11,955.955 INFO    ] time= 05/06/2026 22:01:11
[2026-06-05 22:01:11,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:01:12,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:01:12,130.130 INFO    ] No existing commands found in stream
[2026-06-05 22:01:17,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:01:17,169.169 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 22:01:19,433.433 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:01:19,436.436 INFO    ] Checking for system updates...
[2026-06-05 22:01:19,478.478 INFO    ] 200
[2026-06-05 22:01:19,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:19,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:01:19,537.537 INFO    ] No update needed
[2026-06-05 22:01:19,539.539 INFO    ] Checking for camera pi updates...
[2026-06-05 22:01:19,573.573 INFO    ] 200
[2026-06-05 22:01:19,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:19,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:01:19,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:01:19,707.707 INFO    ] No camera update needed
[2026-06-05 22:01:19,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:01:19,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:01:19,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:01:19,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:01:21,763.763 INFO    ] ================================================
[2026-06-05 22:01:21,778.778 INFO    ] Launching Daemon at Fri Jun  5 22:01:21 IST 2026
[2026-06-05 22:01:21,789.789 INFO    ] ================================================
[2026-06-05 22:01:22,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:01:22
[2026-06-05 22:01:22,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:01:23,294.294 INFO    ] Initializing speech engine...
[2026-06-05 22:01:23,307.307 INFO    ] 2026-06-05 22:01:23
[2026-06-05 22:01:23,591.591 INFO    ] 2026-06-05 22:01:23
[2026-06-05 22:01:23,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:01:26,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:01:26,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:01:26,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:01:26,773.773 INFO    ] time= 05/06/2026 22:01:26
[2026-06-05 22:01:26,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:01:26,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:01:26,865.865 INFO    ] No existing commands found in stream
[2026-06-05 22:01:31,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:01:31,879.879 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 22:01:34,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:01:34,325.325 INFO    ] Checking for system updates...
[2026-06-05 22:01:34,363.363 INFO    ] 200
[2026-06-05 22:01:34,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:34,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:01:34,429.429 INFO    ] No update needed
[2026-06-05 22:01:34,431.431 INFO    ] Checking for camera pi updates...
[2026-06-05 22:01:34,469.469 INFO    ] 200
[2026-06-05 22:01:34,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:34,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:01:34,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:01:34,568.568 INFO    ] No camera update needed
[2026-06-05 22:01:34,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:01:34,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:01:34,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:01:34,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:01:36,622.622 INFO    ] ================================================
[2026-06-05 22:01:36,637.637 INFO    ] Launching Daemon at Fri Jun  5 22:01:36 IST 2026
[2026-06-05 22:01:36,648.648 INFO    ] ================================================
[2026-06-05 22:01:37,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:01:37
[2026-06-05 22:01:37,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:01:38,140.140 INFO    ] Initializing speech engine...
[2026-06-05 22:01:38,147.147 INFO    ] 2026-06-05 22:01:38
[2026-06-05 22:01:38,417.417 INFO    ] 2026-06-05 22:01:38
[2026-06-05 22:01:38,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:01:38,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:01:38,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:01:38,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:01:38,951.951 INFO    ] time= 05/06/2026 22:01:38
[2026-06-05 22:01:39,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:01:39,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:01:39,189.189 INFO    ] No existing commands found in stream
[2026-06-05 22:01:44,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:01:44,212.212 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 22:01:45,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:01:45,406.406 INFO    ] Checking for system updates...
[2026-06-05 22:01:45,447.447 INFO    ] 200
[2026-06-05 22:01:45,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:45,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:01:45,506.506 INFO    ] No update needed
[2026-06-05 22:01:45,508.508 INFO    ] Checking for camera pi updates...
[2026-06-05 22:01:45,542.542 INFO    ] 200
[2026-06-05 22:01:45,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:45,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:01:45,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:01:45,647.647 INFO    ] No camera update needed
[2026-06-05 22:01:45,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:01:45,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:01:45,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:01:45,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:01:47,702.702 INFO    ] ================================================
[2026-06-05 22:01:47,718.718 INFO    ] Launching Daemon at Fri Jun  5 22:01:47 IST 2026
[2026-06-05 22:01:47,729.729 INFO    ] ================================================
[2026-06-05 22:01:48,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:01:48
[2026-06-05 22:01:48,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:01:49,254.254 INFO    ] Initializing speech engine...
[2026-06-05 22:01:49,275.275 INFO    ] 2026-06-05 22:01:49
[2026-06-05 22:01:49,564.564 INFO    ] 2026-06-05 22:01:49
[2026-06-05 22:01:49,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:01:49,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:01:49,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:01:49,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:01:49,930.930 INFO    ] time= 05/06/2026 22:01:49
[2026-06-05 22:01:49,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:01:49,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:01:50,057.057 INFO    ] No existing commands found in stream
[2026-06-05 22:01:55,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:01:55,070.070 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 22:01:58,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:01:58,138.138 INFO    ] Checking for system updates...
[2026-06-05 22:01:58,174.174 INFO    ] 200
[2026-06-05 22:01:58,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:58,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:01:58,239.239 INFO    ] No update needed
[2026-06-05 22:01:58,241.241 INFO    ] Checking for camera pi updates...
[2026-06-05 22:01:58,276.276 INFO    ] 200
[2026-06-05 22:01:58,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:01:58,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:01:58,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:01:58,370.370 INFO    ] No camera update needed
[2026-06-05 22:01:58,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:01:58,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:01:58,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:01:58,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:02:00,428.428 INFO    ] ================================================
[2026-06-05 22:02:00,443.443 INFO    ] Launching Daemon at Fri Jun  5 22:02:00 IST 2026
[2026-06-05 22:02:00,454.454 INFO    ] ================================================
[2026-06-05 22:02:01,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:02:01
[2026-06-05 22:02:01,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:02:02,284.284 INFO    ] Initializing speech engine...
[2026-06-05 22:02:02,304.304 INFO    ] 2026-06-05 22:02:02
[2026-06-05 22:02:02,681.681 INFO    ] 2026-06-05 22:02:02
[2026-06-05 22:02:02,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:02:02,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:02:03,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:02:03,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:02:03,218.218 INFO    ] time= 05/06/2026 22:02:03
[2026-06-05 22:02:03,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:02:03,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:02:03,411.411 INFO    ] No existing commands found in stream
[2026-06-05 22:02:08,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:02:08,434.434 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 22:02:11,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:02:11,963.963 INFO    ] Checking for system updates...
[2026-06-05 22:02:12,006.006 INFO    ] 200
[2026-06-05 22:02:12,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:02:12,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:02:12,072.072 INFO    ] No update needed
[2026-06-05 22:02:12,074.074 INFO    ] Checking for camera pi updates...
[2026-06-05 22:02:12,109.109 INFO    ] 200
[2026-06-05 22:02:12,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:02:12,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:02:12,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:02:12,208.208 INFO    ] No camera update needed
[2026-06-05 22:02:12,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:02:12,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:02:12,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:02:12,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:02:14,269.269 INFO    ] ================================================
[2026-06-05 22:02:14,284.284 INFO    ] Launching Daemon at Fri Jun  5 22:02:14 IST 2026
[2026-06-05 22:02:14,295.295 INFO    ] ================================================
[2026-06-05 22:02:14,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:02:14
[2026-06-05 22:02:15,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:02:15,724.724 INFO    ] Initializing speech engine...
[2026-06-05 22:02:15,734.734 INFO    ] 2026-06-05 22:02:15
[2026-06-05 22:02:15,984.984 INFO    ] 2026-06-05 22:02:15
[2026-06-05 22:02:16,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:02:16,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:02:16,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:02:16,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:02:16,599.599 INFO    ] time= 05/06/2026 22:02:16
[2026-06-05 22:02:16,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:02:16,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:02:16,745.745 INFO    ] No existing commands found in stream
[2026-06-05 22:02:21,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:02:21,773.773 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 22:02:26,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:02:26,680.680 INFO    ] Checking for system updates...
[2026-06-05 22:02:26,716.716 INFO    ] 200
[2026-06-05 22:02:26,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:02:26,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:02:26,779.779 INFO    ] No update needed
[2026-06-05 22:02:26,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 22:02:26,826.826 INFO    ] 200
[2026-06-05 22:02:26,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:02:26,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:02:26,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:02:26,932.932 INFO    ] No camera update needed
[2026-06-05 22:02:26,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:02:26,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:02:26,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:02:26,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:02:28,988.988 INFO    ] ================================================
[2026-06-05 22:02:29,003.003 INFO    ] Launching Daemon at Fri Jun  5 22:02:28 IST 2026
[2026-06-05 22:02:29,014.014 INFO    ] ================================================
[2026-06-05 22:02:29,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:02:29
[2026-06-05 22:02:30,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:02:30,442.442 INFO    ] Initializing speech engine...
[2026-06-05 22:02:30,451.451 INFO    ] 2026-06-05 22:02:30
[2026-06-05 22:02:30,702.702 INFO    ] 2026-06-05 22:02:30
[2026-06-05 22:02:30,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:02:30,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:02:31,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:02:31,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:02:31,208.208 INFO    ] time= 05/06/2026 22:02:31
[2026-06-05 22:02:31,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:02:31,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:02:31,424.424 INFO    ] No existing commands found in stream
[2026-06-05 22:02:36,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:02:36,444.444 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 22:02:38,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:02:38,133.133 INFO    ] Checking for system updates...
[2026-06-05 22:02:38,174.174 INFO    ] 200
[2026-06-05 22:02:38,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:02:38,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:02:38,240.240 INFO    ] No update needed
[2026-06-05 22:02:38,242.242 INFO    ] Checking for camera pi updates...
[2026-06-05 22:02:38,283.283 INFO    ] 200
[2026-06-05 22:02:38,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:02:38,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:02:38,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:02:38,395.395 INFO    ] No camera update needed
[2026-06-05 22:02:38,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:02:38,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:02:38,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:02:38,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:02:40,459.459 INFO    ] ================================================
[2026-06-05 22:02:40,474.474 INFO    ] Launching Daemon at Fri Jun  5 22:02:40 IST 2026
[2026-06-05 22:02:40,487.487 INFO    ] ================================================
[2026-06-05 22:02:41,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:02:41
[2026-06-05 22:02:41,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:02:41,936.936 INFO    ] Initializing speech engine...
[2026-06-05 22:02:41,957.957 INFO    ] 2026-06-05 22:02:41
[2026-06-05 22:02:42,217.217 INFO    ] 2026-06-05 22:02:42
[2026-06-05 22:02:42,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:02:42,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:02:42,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:02:42,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:02:42,788.788 INFO    ] time= 05/06/2026 22:02:42
[2026-06-05 22:02:42,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:02:42,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:02:42,932.932 INFO    ] No existing commands found in stream
[2026-06-05 22:02:47,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:02:47,960.960 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-05 22:02:51,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:02:51,723.723 INFO    ] Checking for system updates...
[2026-06-05 22:02:51,759.759 INFO    ] 200
[2026-06-05 22:02:51,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:02:51,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:02:51,824.824 INFO    ] No update needed
[2026-06-05 22:02:51,826.826 INFO    ] Checking for camera pi updates...
[2026-06-05 22:02:51,864.864 INFO    ] 200
[2026-06-05 22:02:51,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:02:51,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:02:51,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:02:51,958.958 INFO    ] No camera update needed
[2026-06-05 22:02:51,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:02:51,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:02:51,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:02:51,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:02:54,017.017 INFO    ] ================================================
[2026-06-05 22:02:54,032.032 INFO    ] Launching Daemon at Fri Jun  5 22:02:54 IST 2026
[2026-06-05 22:02:54,043.043 INFO    ] ================================================
[2026-06-05 22:02:54,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:02:54
[2026-06-05 22:02:55,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:02:55,465.465 INFO    ] Initializing speech engine...
[2026-06-05 22:02:55,479.479 INFO    ] 2026-06-05 22:02:55
[2026-06-05 22:02:55,765.765 INFO    ] 2026-06-05 22:02:55
[2026-06-05 22:02:55,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:02:56,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:02:56,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:02:57,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:02:57,481.481 INFO    ] time= 05/06/2026 22:02:57
[2026-06-05 22:02:57,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:02:57,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:02:57,619.619 INFO    ] No existing commands found in stream
[2026-06-05 22:03:02,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:03:02,653.653 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 22:03:03,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:03:03,816.816 INFO    ] Checking for system updates...
[2026-06-05 22:03:03,852.852 INFO    ] 200
[2026-06-05 22:03:03,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:03,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:03:03,919.919 INFO    ] No update needed
[2026-06-05 22:03:03,921.921 INFO    ] Checking for camera pi updates...
[2026-06-05 22:03:03,959.959 INFO    ] 200
[2026-06-05 22:03:03,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:04,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:03:04,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:03:04,057.057 INFO    ] No camera update needed
[2026-06-05 22:03:04,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:03:04,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:03:04,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:03:04,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:03:06,114.114 INFO    ] ================================================
[2026-06-05 22:03:06,129.129 INFO    ] Launching Daemon at Fri Jun  5 22:03:06 IST 2026
[2026-06-05 22:03:06,140.140 INFO    ] ================================================
[2026-06-05 22:03:06,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:03:06
[2026-06-05 22:03:07,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:03:07,587.587 INFO    ] Initializing speech engine...
[2026-06-05 22:03:07,596.596 INFO    ] 2026-06-05 22:03:07
[2026-06-05 22:03:07,855.855 INFO    ] 2026-06-05 22:03:07
[2026-06-05 22:03:07,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:03:08,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:03:08,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:03:08,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:03:08,344.344 INFO    ] time= 05/06/2026 22:03:08
[2026-06-05 22:03:08,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:03:08,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:03:08,557.557 INFO    ] No existing commands found in stream
[2026-06-05 22:03:13,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:03:13,576.576 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 22:03:14,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:03:14,851.851 INFO    ] Checking for system updates...
[2026-06-05 22:03:14,891.891 INFO    ] 200
[2026-06-05 22:03:14,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:14,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:03:14,949.949 INFO    ] No update needed
[2026-06-05 22:03:14,952.952 INFO    ] Checking for camera pi updates...
[2026-06-05 22:03:14,986.986 INFO    ] 200
[2026-06-05 22:03:14,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:15,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:03:15,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:03:15,083.083 INFO    ] No camera update needed
[2026-06-05 22:03:15,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:03:15,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:03:15,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:03:15,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:03:17,141.141 INFO    ] ================================================
[2026-06-05 22:03:17,157.157 INFO    ] Launching Daemon at Fri Jun  5 22:03:17 IST 2026
[2026-06-05 22:03:17,168.168 INFO    ] ================================================
[2026-06-05 22:03:17,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:03:17
[2026-06-05 22:03:18,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:03:18,823.823 INFO    ] Initializing speech engine...
[2026-06-05 22:03:18,836.836 INFO    ] 2026-06-05 22:03:18
[2026-06-05 22:03:19,148.148 INFO    ] 2026-06-05 22:03:19
[2026-06-05 22:03:19,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:03:19,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:03:19,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:03:19,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:03:19,663.663 INFO    ] time= 05/06/2026 22:03:19
[2026-06-05 22:03:19,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:03:19,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:03:19,833.833 INFO    ] No existing commands found in stream
[2026-06-05 22:03:24,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:03:24,873.873 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 22:03:28,069.069 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:03:28,072.072 INFO    ] Checking for system updates...
[2026-06-05 22:03:28,116.116 INFO    ] 200
[2026-06-05 22:03:28,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:28,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:03:28,190.190 INFO    ] No update needed
[2026-06-05 22:03:28,193.193 INFO    ] Checking for camera pi updates...
[2026-06-05 22:03:28,230.230 INFO    ] 200
[2026-06-05 22:03:28,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:28,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:03:28,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:03:28,334.334 INFO    ] No camera update needed
[2026-06-05 22:03:28,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:03:28,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:03:28,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:03:28,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:03:30,394.394 INFO    ] ================================================
[2026-06-05 22:03:30,410.410 INFO    ] Launching Daemon at Fri Jun  5 22:03:30 IST 2026
[2026-06-05 22:03:30,421.421 INFO    ] ================================================
[2026-06-05 22:03:30,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:03:30
[2026-06-05 22:03:31,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:03:31,898.898 INFO    ] Initializing speech engine...
[2026-06-05 22:03:31,911.911 INFO    ] 2026-06-05 22:03:31
[2026-06-05 22:03:32,218.218 INFO    ] 2026-06-05 22:03:32
[2026-06-05 22:03:32,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:03:32,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:03:32,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:03:32,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:03:32,721.721 INFO    ] time= 05/06/2026 22:03:32
[2026-06-05 22:03:32,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:03:32,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:03:32,969.969 INFO    ] No existing commands found in stream
[2026-06-05 22:03:37,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:03:38,001.001 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 22:03:40,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:03:40,713.713 INFO    ] Checking for system updates...
[2026-06-05 22:03:40,749.749 INFO    ] 200
[2026-06-05 22:03:40,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:40,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:03:40,811.811 INFO    ] No update needed
[2026-06-05 22:03:40,814.814 INFO    ] Checking for camera pi updates...
[2026-06-05 22:03:40,853.853 INFO    ] 200
[2026-06-05 22:03:40,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:40,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:03:41,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:03:41,047.047 INFO    ] No camera update needed
[2026-06-05 22:03:41,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:03:41,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:03:41,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:03:41,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:03:43,103.103 INFO    ] ================================================
[2026-06-05 22:03:43,119.119 INFO    ] Launching Daemon at Fri Jun  5 22:03:43 IST 2026
[2026-06-05 22:03:43,130.130 INFO    ] ================================================
[2026-06-05 22:03:43,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:03:43
[2026-06-05 22:03:44,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:03:44,574.574 INFO    ] Initializing speech engine...
[2026-06-05 22:03:44,583.583 INFO    ] 2026-06-05 22:03:44
[2026-06-05 22:03:44,878.878 INFO    ] 2026-06-05 22:03:44
[2026-06-05 22:03:44,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:03:45,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:03:45,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:03:45,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:03:45,390.390 INFO    ] time= 05/06/2026 22:03:45
[2026-06-05 22:03:45,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:03:45,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:03:45,586.586 INFO    ] No existing commands found in stream
[2026-06-05 22:03:50,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:03:50,602.602 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 22:03:52,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:03:52,476.476 INFO    ] Checking for system updates...
[2026-06-05 22:03:52,516.516 INFO    ] 200
[2026-06-05 22:03:52,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:52,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:03:52,580.580 INFO    ] No update needed
[2026-06-05 22:03:52,582.582 INFO    ] Checking for camera pi updates...
[2026-06-05 22:03:52,616.616 INFO    ] 200
[2026-06-05 22:03:52,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:03:52,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:03:52,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:03:52,725.725 INFO    ] No camera update needed
[2026-06-05 22:03:52,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:03:52,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:03:52,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:03:52,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:03:54,782.782 INFO    ] ================================================
[2026-06-05 22:03:54,798.798 INFO    ] Launching Daemon at Fri Jun  5 22:03:54 IST 2026
[2026-06-05 22:03:54,809.809 INFO    ] ================================================
[2026-06-05 22:03:55,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:03:55
[2026-06-05 22:03:55,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:03:56,271.271 INFO    ] Initializing speech engine...
[2026-06-05 22:03:56,274.274 INFO    ] 2026-06-05 22:03:56
[2026-06-05 22:03:56,531.531 INFO    ] 2026-06-05 22:03:56
[2026-06-05 22:03:56,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:03:57,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:03:57,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:03:57,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:03:57,871.871 INFO    ] time= 05/06/2026 22:03:57
[2026-06-05 22:03:57,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:03:57,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:03:57,951.951 INFO    ] No existing commands found in stream
[2026-06-05 22:04:02,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:04:02,967.967 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 22:04:06,223.223 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:04:06,225.225 INFO    ] Checking for system updates...
[2026-06-05 22:04:06,262.262 INFO    ] 200
[2026-06-05 22:04:06,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:06,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:04:06,333.333 INFO    ] No update needed
[2026-06-05 22:04:06,336.336 INFO    ] Checking for camera pi updates...
[2026-06-05 22:04:06,372.372 INFO    ] 200
[2026-06-05 22:04:06,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:06,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:04:06,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:04:06,453.453 INFO    ] No camera update needed
[2026-06-05 22:04:06,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:04:06,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:04:06,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:04:06,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:04:08,510.510 INFO    ] ================================================
[2026-06-05 22:04:08,526.526 INFO    ] Launching Daemon at Fri Jun  5 22:04:08 IST 2026
[2026-06-05 22:04:08,537.537 INFO    ] ================================================
[2026-06-05 22:04:09,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:04:09
[2026-06-05 22:04:09,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:04:10,054.054 INFO    ] Initializing speech engine...
[2026-06-05 22:04:10,061.061 INFO    ] 2026-06-05 22:04:10
[2026-06-05 22:04:10,328.328 INFO    ] 2026-06-05 22:04:10
[2026-06-05 22:04:10,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:04:10,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:04:10,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:04:10,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:04:10,878.878 INFO    ] time= 05/06/2026 22:04:10
[2026-06-05 22:04:10,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:04:10,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:04:11,032.032 INFO    ] No existing commands found in stream
[2026-06-05 22:04:16,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:04:16,050.050 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 22:04:18,634.634 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:04:18,637.637 INFO    ] Checking for system updates...
[2026-06-05 22:04:18,675.675 INFO    ] 200
[2026-06-05 22:04:18,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:18,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:04:18,739.739 INFO    ] No update needed
[2026-06-05 22:04:18,742.742 INFO    ] Checking for camera pi updates...
[2026-06-05 22:04:18,778.778 INFO    ] 200
[2026-06-05 22:04:18,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:18,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:04:18,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:04:18,876.876 INFO    ] No camera update needed
[2026-06-05 22:04:18,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:04:18,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:04:18,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:04:18,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:04:20,934.934 INFO    ] ================================================
[2026-06-05 22:04:20,949.949 INFO    ] Launching Daemon at Fri Jun  5 22:04:20 IST 2026
[2026-06-05 22:04:20,961.961 INFO    ] ================================================
[2026-06-05 22:04:21,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:04:21
[2026-06-05 22:04:22,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:04:22,517.517 INFO    ] Initializing speech engine...
[2026-06-05 22:04:22,526.526 INFO    ] 2026-06-05 22:04:22
[2026-06-05 22:04:22,779.779 INFO    ] 2026-06-05 22:04:22
[2026-06-05 22:04:22,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:04:23,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:04:23,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:04:23,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:04:23,334.334 INFO    ] time= 05/06/2026 22:04:23
[2026-06-05 22:04:23,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:04:23,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:04:23,475.475 INFO    ] No existing commands found in stream
[2026-06-05 22:04:28,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:04:28,500.500 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 22:04:32,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:04:32,672.672 INFO    ] Checking for system updates...
[2026-06-05 22:04:32,718.718 INFO    ] 200
[2026-06-05 22:04:32,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:32,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:04:32,811.811 INFO    ] No update needed
[2026-06-05 22:04:32,813.813 INFO    ] Checking for camera pi updates...
[2026-06-05 22:04:32,859.859 INFO    ] 200
[2026-06-05 22:04:32,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:32,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:04:32,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:04:32,953.953 INFO    ] No camera update needed
[2026-06-05 22:04:32,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:04:32,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:04:32,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:04:32,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:04:35,009.009 INFO    ] ================================================
[2026-06-05 22:04:35,025.025 INFO    ] Launching Daemon at Fri Jun  5 22:04:35 IST 2026
[2026-06-05 22:04:35,036.036 INFO    ] ================================================
[2026-06-05 22:04:35,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:04:35
[2026-06-05 22:04:36,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:04:36,528.528 INFO    ] Initializing speech engine...
[2026-06-05 22:04:36,546.546 INFO    ] 2026-06-05 22:04:36
[2026-06-05 22:04:36,810.810 INFO    ] 2026-06-05 22:04:36
[2026-06-05 22:04:36,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:04:37,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:04:37,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:04:37,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:04:37,213.213 INFO    ] time= 05/06/2026 22:04:37
[2026-06-05 22:04:37,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:04:37,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:04:37,384.384 INFO    ] No existing commands found in stream
[2026-06-05 22:04:42,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:04:42,417.417 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-05 22:04:44,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:04:44,161.161 INFO    ] Checking for system updates...
[2026-06-05 22:04:44,196.196 INFO    ] 200
[2026-06-05 22:04:44,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:44,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:04:44,258.258 INFO    ] No update needed
[2026-06-05 22:04:44,261.261 INFO    ] Checking for camera pi updates...
[2026-06-05 22:04:44,294.294 INFO    ] 200
[2026-06-05 22:04:44,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:44,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:04:44,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:04:44,391.391 INFO    ] No camera update needed
[2026-06-05 22:04:44,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:04:44,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:04:44,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:04:44,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:04:46,448.448 INFO    ] ================================================
[2026-06-05 22:04:46,464.464 INFO    ] Launching Daemon at Fri Jun  5 22:04:46 IST 2026
[2026-06-05 22:04:46,475.475 INFO    ] ================================================
[2026-06-05 22:04:47,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:04:47
[2026-06-05 22:04:47,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:04:48,044.044 INFO    ] Initializing speech engine...
[2026-06-05 22:04:48,051.051 INFO    ] 2026-06-05 22:04:48
[2026-06-05 22:04:48,320.320 INFO    ] 2026-06-05 22:04:48
[2026-06-05 22:04:48,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:04:48,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:04:48,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:04:48,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:04:48,806.806 INFO    ] time= 05/06/2026 22:04:48
[2026-06-05 22:04:48,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:04:48,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:04:49,090.090 INFO    ] No existing commands found in stream
[2026-06-05 22:04:54,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:04:54,113.113 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 22:04:58,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:04:58,363.363 INFO    ] Checking for system updates...
[2026-06-05 22:04:58,399.399 INFO    ] 200
[2026-06-05 22:04:58,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:58,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:04:58,458.458 INFO    ] No update needed
[2026-06-05 22:04:58,461.461 INFO    ] Checking for camera pi updates...
[2026-06-05 22:04:58,495.495 INFO    ] 200
[2026-06-05 22:04:58,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:04:58,541.541 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:04:58,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:04:58,590.590 INFO    ] No camera update needed
[2026-06-05 22:04:58,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:04:58,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:04:58,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:04:58,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:05:00,647.647 INFO    ] ================================================
[2026-06-05 22:05:00,662.662 INFO    ] Launching Daemon at Fri Jun  5 22:05:00 IST 2026
[2026-06-05 22:05:00,673.673 INFO    ] ================================================
[2026-06-05 22:05:01,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:05:01
[2026-06-05 22:05:02,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:05:02,588.588 INFO    ] Initializing speech engine...
[2026-06-05 22:05:02,602.602 INFO    ] 2026-06-05 22:05:02
[2026-06-05 22:05:02,946.946 INFO    ] 2026-06-05 22:05:02
[2026-06-05 22:05:03,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:05:03,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:05:03,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:05:03,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:05:03,460.460 INFO    ] time= 05/06/2026 22:05:03
[2026-06-05 22:05:03,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:05:03,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:05:03,684.684 INFO    ] No existing commands found in stream
[2026-06-05 22:05:08,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:05:08,719.719 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 22:05:09,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:05:09,289.289 INFO    ] Checking for system updates...
[2026-06-05 22:05:09,325.325 INFO    ] 200
[2026-06-05 22:05:09,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:09,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:05:09,383.383 INFO    ] No update needed
[2026-06-05 22:05:09,386.386 INFO    ] Checking for camera pi updates...
[2026-06-05 22:05:09,420.420 INFO    ] 200
[2026-06-05 22:05:09,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:09,463.463 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:05:09,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:05:09,520.520 INFO    ] No camera update needed
[2026-06-05 22:05:09,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:05:09,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:05:09,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:05:09,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:05:11,576.576 INFO    ] ================================================
[2026-06-05 22:05:11,592.592 INFO    ] Launching Daemon at Fri Jun  5 22:05:11 IST 2026
[2026-06-05 22:05:11,603.603 INFO    ] ================================================
[2026-06-05 22:05:12,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:05:12
[2026-06-05 22:05:12,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:05:13,211.211 INFO    ] Initializing speech engine...
[2026-06-05 22:05:13,223.223 INFO    ] 2026-06-05 22:05:13
[2026-06-05 22:05:13,532.532 INFO    ] 2026-06-05 22:05:13
[2026-06-05 22:05:13,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:05:13,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:05:13,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:05:14,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:05:14,050.050 INFO    ] time= 05/06/2026 22:05:14
[2026-06-05 22:05:14,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:05:14,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:05:14,208.208 INFO    ] No existing commands found in stream
[2026-06-05 22:05:19,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:05:19,241.241 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-05 22:05:22,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:05:22,092.092 INFO    ] Checking for system updates...
[2026-06-05 22:05:22,135.135 INFO    ] 200
[2026-06-05 22:05:22,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:22,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:05:22,205.205 INFO    ] No update needed
[2026-06-05 22:05:22,208.208 INFO    ] Checking for camera pi updates...
[2026-06-05 22:05:22,244.244 INFO    ] 200
[2026-06-05 22:05:22,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:22,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:05:22,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:05:22,343.343 INFO    ] No camera update needed
[2026-06-05 22:05:22,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:05:22,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:05:22,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:05:22,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:05:24,402.402 INFO    ] ================================================
[2026-06-05 22:05:24,417.417 INFO    ] Launching Daemon at Fri Jun  5 22:05:24 IST 2026
[2026-06-05 22:05:24,428.428 INFO    ] ================================================
[2026-06-05 22:05:24,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:05:24
[2026-06-05 22:05:25,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:05:25,845.845 INFO    ] Initializing speech engine...
[2026-06-05 22:05:25,866.866 INFO    ] 2026-06-05 22:05:25
[2026-06-05 22:05:26,124.124 INFO    ] 2026-06-05 22:05:26
[2026-06-05 22:05:26,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:05:27,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:05:27,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:05:28,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:05:28,105.105 INFO    ] time= 05/06/2026 22:05:28
[2026-06-05 22:05:28,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:05:28,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:05:28,180.180 INFO    ] No existing commands found in stream
[2026-06-05 22:05:33,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:05:33,193.193 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 22:05:34,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:05:34,186.186 INFO    ] Checking for system updates...
[2026-06-05 22:05:34,226.226 INFO    ] 200
[2026-06-05 22:05:34,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:34,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:05:34,284.284 INFO    ] No update needed
[2026-06-05 22:05:34,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 22:05:34,327.327 INFO    ] 200
[2026-06-05 22:05:34,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:34,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:05:34,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:05:34,422.422 INFO    ] No camera update needed
[2026-06-05 22:05:34,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:05:34,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:05:34,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:05:34,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:05:36,477.477 INFO    ] ================================================
[2026-06-05 22:05:36,492.492 INFO    ] Launching Daemon at Fri Jun  5 22:05:36 IST 2026
[2026-06-05 22:05:36,503.503 INFO    ] ================================================
[2026-06-05 22:05:37,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:05:37
[2026-06-05 22:05:37,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:05:38,086.086 INFO    ] Initializing speech engine...
[2026-06-05 22:05:38,094.094 INFO    ] 2026-06-05 22:05:38
[2026-06-05 22:05:38,382.382 INFO    ] 2026-06-05 22:05:38
[2026-06-05 22:05:38,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:05:38,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:05:38,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:05:38,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:05:38,902.902 INFO    ] time= 05/06/2026 22:05:38
[2026-06-05 22:05:38,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:05:38,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:05:39,115.115 INFO    ] No existing commands found in stream
[2026-06-05 22:05:44,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:05:44,150.150 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 22:05:46,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:05:46,797.797 INFO    ] Checking for system updates...
[2026-06-05 22:05:46,839.839 INFO    ] 200
[2026-06-05 22:05:46,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:46,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:05:46,905.905 INFO    ] No update needed
[2026-06-05 22:05:46,907.907 INFO    ] Checking for camera pi updates...
[2026-06-05 22:05:46,948.948 INFO    ] 200
[2026-06-05 22:05:46,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:47,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:05:47,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:05:47,146.146 INFO    ] No camera update needed
[2026-06-05 22:05:47,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:05:47,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:05:47,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:05:47,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:05:49,204.204 INFO    ] ================================================
[2026-06-05 22:05:49,220.220 INFO    ] Launching Daemon at Fri Jun  5 22:05:49 IST 2026
[2026-06-05 22:05:49,230.230 INFO    ] ================================================
[2026-06-05 22:05:49,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:05:49
[2026-06-05 22:05:50,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:05:50,639.639 INFO    ] Initializing speech engine...
[2026-06-05 22:05:50,658.658 INFO    ] 2026-06-05 22:05:50
[2026-06-05 22:05:50,911.911 INFO    ] 2026-06-05 22:05:50
[2026-06-05 22:05:50,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:05:51,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:05:51,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:05:51,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:05:51,370.370 INFO    ] time= 05/06/2026 22:05:51
[2026-06-05 22:05:51,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:05:51,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:05:51,595.595 INFO    ] No existing commands found in stream
[2026-06-05 22:05:56,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:05:56,623.623 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-05 22:05:58,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:05:58,565.565 INFO    ] Checking for system updates...
[2026-06-05 22:05:58,600.600 INFO    ] 200
[2026-06-05 22:05:58,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:58,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:05:58,658.658 INFO    ] No update needed
[2026-06-05 22:05:58,660.660 INFO    ] Checking for camera pi updates...
[2026-06-05 22:05:58,694.694 INFO    ] 200
[2026-06-05 22:05:58,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:05:58,739.739 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:05:58,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:05:58,789.789 INFO    ] No camera update needed
[2026-06-05 22:05:58,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:05:58,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:05:58,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:05:58,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:06:00,844.844 INFO    ] ================================================
[2026-06-05 22:06:00,860.860 INFO    ] Launching Daemon at Fri Jun  5 22:06:00 IST 2026
[2026-06-05 22:06:00,871.871 INFO    ] ================================================
[2026-06-05 22:06:01,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:06:01
[2026-06-05 22:06:02,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:06:02,526.526 INFO    ] Initializing speech engine...
[2026-06-05 22:06:02,538.538 INFO    ] 2026-06-05 22:06:02
[2026-06-05 22:06:02,858.858 INFO    ] 2026-06-05 22:06:02
[2026-06-05 22:06:02,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:06:03,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:06:03,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:06:03,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:06:03,445.445 INFO    ] time= 05/06/2026 22:06:03
[2026-06-05 22:06:03,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:06:03,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:06:03,640.640 INFO    ] No existing commands found in stream
[2026-06-05 22:06:08,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:06:08,660.660 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 22:06:09,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:06:09,444.444 INFO    ] Checking for system updates...
[2026-06-05 22:06:09,481.481 INFO    ] 200
[2026-06-05 22:06:09,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:06:09,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:06:09,548.548 INFO    ] No update needed
[2026-06-05 22:06:09,551.551 INFO    ] Checking for camera pi updates...
[2026-06-05 22:06:09,590.590 INFO    ] 200
[2026-06-05 22:06:09,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:06:09,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:06:09,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:06:09,688.688 INFO    ] No camera update needed
[2026-06-05 22:06:09,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:06:09,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:06:09,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:06:09,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:06:11,746.746 INFO    ] ================================================
[2026-06-05 22:06:11,761.761 INFO    ] Launching Daemon at Fri Jun  5 22:06:11 IST 2026
[2026-06-05 22:06:11,772.772 INFO    ] ================================================
[2026-06-05 22:06:12,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:06:12
[2026-06-05 22:06:12,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:06:13,178.178 INFO    ] Initializing speech engine...
[2026-06-05 22:06:13,186.186 INFO    ] 2026-06-05 22:06:13
[2026-06-05 22:06:13,483.483 INFO    ] 2026-06-05 22:06:13
[2026-06-05 22:06:13,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:06:13,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:06:13,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:06:13,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:06:13,899.899 INFO    ] time= 05/06/2026 22:06:13
[2026-06-05 22:06:13,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:06:13,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:06:14,002.002 INFO    ] No existing commands found in stream
[2026-06-05 22:06:19,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:06:19,040.040 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 22:06:23,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:06:23,481.481 INFO    ] Checking for system updates...
[2026-06-05 22:06:23,517.517 INFO    ] 200
[2026-06-05 22:06:23,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:06:23,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:06:23,574.574 INFO    ] No update needed
[2026-06-05 22:06:23,577.577 INFO    ] Checking for camera pi updates...
[2026-06-05 22:06:23,618.618 INFO    ] 200
[2026-06-05 22:06:23,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:06:23,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:06:23,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:06:23,720.720 INFO    ] No camera update needed
[2026-06-05 22:06:23,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:06:23,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:06:23,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:06:23,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:06:25,780.780 INFO    ] ================================================
[2026-06-05 22:06:25,795.795 INFO    ] Launching Daemon at Fri Jun  5 22:06:25 IST 2026
[2026-06-05 22:06:25,806.806 INFO    ] ================================================
[2026-06-05 22:06:26,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:06:26
[2026-06-05 22:06:27,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:06:27,270.270 INFO    ] Initializing speech engine...
[2026-06-05 22:06:27,289.289 INFO    ] 2026-06-05 22:06:27
[2026-06-05 22:06:27,540.540 INFO    ] 2026-06-05 22:06:27
[2026-06-05 22:06:27,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:06:28,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:06:28,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:06:28,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:06:28,340.340 INFO    ] time= 05/06/2026 22:06:28
[2026-06-05 22:06:28,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:06:28,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:06:28,423.423 INFO    ] No existing commands found in stream
[2026-06-05 22:06:33,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:06:33,441.441 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-05 22:06:37,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:06:37,491.491 INFO    ] Checking for system updates...
[2026-06-05 22:06:37,528.528 INFO    ] 200
[2026-06-05 22:06:37,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:06:37,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:06:37,587.587 INFO    ] No update needed
[2026-06-05 22:06:37,590.590 INFO    ] Checking for camera pi updates...
[2026-06-05 22:06:37,625.625 INFO    ] 200
[2026-06-05 22:06:37,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:06:37,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:06:37,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:06:37,731.731 INFO    ] No camera update needed
[2026-06-05 22:06:37,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:06:37,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:06:37,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:06:37,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:06:39,787.787 INFO    ] ================================================
[2026-06-05 22:06:39,803.803 INFO    ] Launching Daemon at Fri Jun  5 22:06:39 IST 2026
[2026-06-05 22:06:39,816.816 INFO    ] ================================================
[2026-06-05 22:06:40,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:06:40
[2026-06-05 22:06:41,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:06:41,418.418 INFO    ] Initializing speech engine...
[2026-06-05 22:06:41,430.430 INFO    ] 2026-06-05 22:06:41
[2026-06-05 22:06:41,711.711 INFO    ] 2026-06-05 22:06:41
[2026-06-05 22:06:41,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:06:42,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:06:42,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:06:42,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:06:42,248.248 INFO    ] time= 05/06/2026 22:06:42
[2026-06-05 22:06:42,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:06:42,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:06:42,418.418 INFO    ] No existing commands found in stream
[2026-06-05 22:06:47,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:06:47,448.448 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 22:06:49,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:06:49,044.044 INFO    ] Checking for system updates...
[2026-06-05 22:06:49,082.082 INFO    ] 200
[2026-06-05 22:06:49,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:06:49,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:06:49,141.141 INFO    ] No update needed
[2026-06-05 22:06:49,144.144 INFO    ] Checking for camera pi updates...
[2026-06-05 22:06:49,177.177 INFO    ] 200
[2026-06-05 22:06:49,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:06:49,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:06:49,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:06:49,282.282 INFO    ] No camera update needed
[2026-06-05 22:06:49,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:06:49,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:06:49,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:06:49,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:06:51,338.338 INFO    ] ================================================
[2026-06-05 22:06:51,355.355 INFO    ] Launching Daemon at Fri Jun  5 22:06:51 IST 2026
[2026-06-05 22:06:51,368.368 INFO    ] ================================================
[2026-06-05 22:06:51,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:06:51
[2026-06-05 22:06:52,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:06:52,982.982 INFO    ] Initializing speech engine...
[2026-06-05 22:06:52,995.995 INFO    ] 2026-06-05 22:06:52
[2026-06-05 22:06:53,286.286 INFO    ] 2026-06-05 22:06:53
[2026-06-05 22:06:53,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:06:53,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:06:53,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:06:53,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:06:53,847.847 INFO    ] time= 05/06/2026 22:06:53
[2026-06-05 22:06:53,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:06:53,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:06:54,017.017 INFO    ] No existing commands found in stream
[2026-06-05 22:06:59,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:06:59,047.047 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 22:07:00,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:07:00,387.387 INFO    ] Checking for system updates...
[2026-06-05 22:07:00,425.425 INFO    ] 200
[2026-06-05 22:07:00,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:00,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:07:00,485.485 INFO    ] No update needed
[2026-06-05 22:07:00,488.488 INFO    ] Checking for camera pi updates...
[2026-06-05 22:07:00,522.522 INFO    ] 200
[2026-06-05 22:07:00,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:00,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:07:00,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:07:00,626.626 INFO    ] No camera update needed
[2026-06-05 22:07:00,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:07:00,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:07:00,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:07:00,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:07:02,684.684 INFO    ] ================================================
[2026-06-05 22:07:02,703.703 INFO    ] Launching Daemon at Fri Jun  5 22:07:02 IST 2026
[2026-06-05 22:07:02,722.722 INFO    ] ================================================
[2026-06-05 22:07:03,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:07:03
[2026-06-05 22:07:04,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:07:04,275.275 INFO    ] Initializing speech engine...
[2026-06-05 22:07:04,285.285 INFO    ] 2026-06-05 22:07:04
[2026-06-05 22:07:04,538.538 INFO    ] 2026-06-05 22:07:04
[2026-06-05 22:07:04,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:07:04,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:07:04,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:07:05,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:07:05,088.088 INFO    ] time= 05/06/2026 22:07:05
[2026-06-05 22:07:05,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:07:05,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:07:05,252.252 INFO    ] No existing commands found in stream
[2026-06-05 22:07:10,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:07:10,269.269 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 22:07:12,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:07:12,822.822 INFO    ] Checking for system updates...
[2026-06-05 22:07:12,858.858 INFO    ] 200
[2026-06-05 22:07:12,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:12,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:07:12,918.918 INFO    ] No update needed
[2026-06-05 22:07:12,920.920 INFO    ] Checking for camera pi updates...
[2026-06-05 22:07:12,962.962 INFO    ] 200
[2026-06-05 22:07:12,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:13,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:07:13,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:07:13,057.057 INFO    ] No camera update needed
[2026-06-05 22:07:13,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:07:13,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:07:13,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:07:13,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:07:15,115.115 INFO    ] ================================================
[2026-06-05 22:07:15,132.132 INFO    ] Launching Daemon at Fri Jun  5 22:07:15 IST 2026
[2026-06-05 22:07:15,147.147 INFO    ] ================================================
[2026-06-05 22:07:15,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:07:15
[2026-06-05 22:07:16,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:07:16,624.624 INFO    ] Initializing speech engine...
[2026-06-05 22:07:16,632.632 INFO    ] 2026-06-05 22:07:16
[2026-06-05 22:07:16,900.900 INFO    ] 2026-06-05 22:07:16
[2026-06-05 22:07:16,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:07:17,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:07:17,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:07:17,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:07:17,456.456 INFO    ] time= 05/06/2026 22:07:17
[2026-06-05 22:07:17,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:07:17,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:07:17,621.621 INFO    ] No existing commands found in stream
[2026-06-05 22:07:22,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:07:22,653.653 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-05 22:07:28,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:07:28,024.024 INFO    ] Checking for system updates...
[2026-06-05 22:07:28,064.064 INFO    ] 200
[2026-06-05 22:07:28,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:28,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:07:28,129.129 INFO    ] No update needed
[2026-06-05 22:07:28,131.131 INFO    ] Checking for camera pi updates...
[2026-06-05 22:07:28,166.166 INFO    ] 200
[2026-06-05 22:07:28,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:28,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:07:28,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:07:28,274.274 INFO    ] No camera update needed
[2026-06-05 22:07:28,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:07:28,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:07:28,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:07:28,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:07:30,334.334 INFO    ] ================================================
[2026-06-05 22:07:30,349.349 INFO    ] Launching Daemon at Fri Jun  5 22:07:30 IST 2026
[2026-06-05 22:07:30,361.361 INFO    ] ================================================
[2026-06-05 22:07:30,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:07:30
[2026-06-05 22:07:31,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:07:31,785.785 INFO    ] Initializing speech engine...
[2026-06-05 22:07:31,800.800 INFO    ] 2026-06-05 22:07:31
[2026-06-05 22:07:32,085.085 INFO    ] 2026-06-05 22:07:32
[2026-06-05 22:07:32,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:07:32,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:07:32,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:07:32,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:07:32,519.519 INFO    ] time= 05/06/2026 22:07:32
[2026-06-05 22:07:32,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:07:32,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:07:32,701.701 INFO    ] No existing commands found in stream
[2026-06-05 22:07:37,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:07:37,734.734 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 22:07:39,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:07:39,266.266 INFO    ] Checking for system updates...
[2026-06-05 22:07:39,302.302 INFO    ] 200
[2026-06-05 22:07:39,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:39,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:07:39,362.362 INFO    ] No update needed
[2026-06-05 22:07:39,365.365 INFO    ] Checking for camera pi updates...
[2026-06-05 22:07:39,414.414 INFO    ] 200
[2026-06-05 22:07:39,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:39,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:07:39,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:07:39,518.518 INFO    ] No camera update needed
[2026-06-05 22:07:39,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:07:39,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:07:39,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:07:39,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:07:41,574.574 INFO    ] ================================================
[2026-06-05 22:07:41,589.589 INFO    ] Launching Daemon at Fri Jun  5 22:07:41 IST 2026
[2026-06-05 22:07:41,601.601 INFO    ] ================================================
[2026-06-05 22:07:42,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:07:42
[2026-06-05 22:07:42,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:07:43,051.051 INFO    ] Initializing speech engine...
[2026-06-05 22:07:43,072.072 INFO    ] 2026-06-05 22:07:43
[2026-06-05 22:07:43,336.336 INFO    ] 2026-06-05 22:07:43
[2026-06-05 22:07:43,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:07:43,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:07:43,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:07:43,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:07:43,751.751 INFO    ] time= 05/06/2026 22:07:43
[2026-06-05 22:07:43,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:07:43,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:07:43,959.959 INFO    ] No existing commands found in stream
[2026-06-05 22:07:48,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:07:48,984.984 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-05 22:07:51,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:07:51,764.764 INFO    ] Checking for system updates...
[2026-06-05 22:07:51,802.802 INFO    ] 200
[2026-06-05 22:07:51,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:51,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:07:51,860.860 INFO    ] No update needed
[2026-06-05 22:07:51,863.863 INFO    ] Checking for camera pi updates...
[2026-06-05 22:07:51,907.907 INFO    ] 200
[2026-06-05 22:07:51,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:07:51,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:07:52,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:07:52,106.106 INFO    ] No camera update needed
[2026-06-05 22:07:52,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:07:52,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:07:52,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:07:52,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:07:54,162.162 INFO    ] ================================================
[2026-06-05 22:07:54,177.177 INFO    ] Launching Daemon at Fri Jun  5 22:07:54 IST 2026
[2026-06-05 22:07:54,187.187 INFO    ] ================================================
[2026-06-05 22:07:54,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:07:54
[2026-06-05 22:07:55,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:07:55,613.613 INFO    ] Initializing speech engine...
[2026-06-05 22:07:55,626.626 INFO    ] 2026-06-05 22:07:55
[2026-06-05 22:07:55,909.909 INFO    ] 2026-06-05 22:07:55
[2026-06-05 22:07:55,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:07:58,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:07:58,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:07:58,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:07:58,945.945 INFO    ] time= 05/06/2026 22:07:58
[2026-06-05 22:07:58,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:07:59,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:07:59,073.073 INFO    ] No existing commands found in stream
[2026-06-05 22:08:04,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:08:04,089.089 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 22:08:07,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:08:07,365.365 INFO    ] Checking for system updates...
[2026-06-05 22:08:07,408.408 INFO    ] 200
[2026-06-05 22:08:07,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:07,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:08:07,477.477 INFO    ] No update needed
[2026-06-05 22:08:07,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 22:08:07,519.519 INFO    ] 200
[2026-06-05 22:08:07,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:07,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:08:07,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:08:07,612.612 INFO    ] No camera update needed
[2026-06-05 22:08:07,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:08:07,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:08:07,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:08:07,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:08:09,677.677 INFO    ] ================================================
[2026-06-05 22:08:09,695.695 INFO    ] Launching Daemon at Fri Jun  5 22:08:09 IST 2026
[2026-06-05 22:08:09,707.707 INFO    ] ================================================
[2026-06-05 22:08:10,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:08:10
[2026-06-05 22:08:10,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:08:11,206.206 INFO    ] Initializing speech engine...
[2026-06-05 22:08:11,215.215 INFO    ] 2026-06-05 22:08:11
[2026-06-05 22:08:11,471.471 INFO    ] 2026-06-05 22:08:11
[2026-06-05 22:08:11,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:08:11,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:08:11,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:08:12,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:08:12,100.100 INFO    ] time= 05/06/2026 22:08:12
[2026-06-05 22:08:12,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:08:12,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:08:12,236.236 INFO    ] No existing commands found in stream
[2026-06-05 22:08:17,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:08:17,261.261 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-05 22:08:20,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:08:20,457.457 INFO    ] Checking for system updates...
[2026-06-05 22:08:20,494.494 INFO    ] 200
[2026-06-05 22:08:20,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:20,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:08:20,555.555 INFO    ] No update needed
[2026-06-05 22:08:20,558.558 INFO    ] Checking for camera pi updates...
[2026-06-05 22:08:20,592.592 INFO    ] 200
[2026-06-05 22:08:20,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:20,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:08:20,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:08:20,702.702 INFO    ] No camera update needed
[2026-06-05 22:08:20,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:08:20,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:08:20,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:08:20,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:08:22,757.757 INFO    ] ================================================
[2026-06-05 22:08:22,773.773 INFO    ] Launching Daemon at Fri Jun  5 22:08:22 IST 2026
[2026-06-05 22:08:22,783.783 INFO    ] ================================================
[2026-06-05 22:08:23,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:08:23
[2026-06-05 22:08:23,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:08:24,247.247 INFO    ] Initializing speech engine...
[2026-06-05 22:08:24,252.252 INFO    ] 2026-06-05 22:08:24
[2026-06-05 22:08:24,515.515 INFO    ] 2026-06-05 22:08:24
[2026-06-05 22:08:24,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:08:24,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:08:24,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:08:24,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:08:24,994.994 INFO    ] time= 05/06/2026 22:08:24
[2026-06-05 22:08:25,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:08:25,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:08:25,194.194 INFO    ] No existing commands found in stream
[2026-06-05 22:08:30,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:08:30,220.220 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 22:08:32,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:08:32,885.885 INFO    ] Checking for system updates...
[2026-06-05 22:08:32,927.927 INFO    ] 200
[2026-06-05 22:08:32,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:32,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:08:32,999.999 INFO    ] No update needed
[2026-06-05 22:08:33,002.002 INFO    ] Checking for camera pi updates...
[2026-06-05 22:08:33,038.038 INFO    ] 200
[2026-06-05 22:08:33,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:33,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:08:33,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:08:33,138.138 INFO    ] No camera update needed
[2026-06-05 22:08:33,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:08:33,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:08:33,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:08:33,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:08:35,201.201 INFO    ] ================================================
[2026-06-05 22:08:35,217.217 INFO    ] Launching Daemon at Fri Jun  5 22:08:35 IST 2026
[2026-06-05 22:08:35,228.228 INFO    ] ================================================
[2026-06-05 22:08:35,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:08:35
[2026-06-05 22:08:36,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:08:36,637.637 INFO    ] Initializing speech engine...
[2026-06-05 22:08:36,652.652 INFO    ] 2026-06-05 22:08:36
[2026-06-05 22:08:36,950.950 INFO    ] 2026-06-05 22:08:36
[2026-06-05 22:08:36,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:08:37,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:08:37,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:08:37,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:08:37,447.447 INFO    ] time= 05/06/2026 22:08:37
[2026-06-05 22:08:37,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:08:37,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:08:37,717.717 INFO    ] No existing commands found in stream
[2026-06-05 22:08:42,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:08:42,737.737 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 22:08:46,763.763 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:08:46,765.765 INFO    ] Checking for system updates...
[2026-06-05 22:08:46,803.803 INFO    ] 200
[2026-06-05 22:08:46,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:46,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:08:46,861.861 INFO    ] No update needed
[2026-06-05 22:08:46,863.863 INFO    ] Checking for camera pi updates...
[2026-06-05 22:08:46,898.898 INFO    ] 200
[2026-06-05 22:08:46,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:46,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:08:47,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:08:47,011.011 INFO    ] No camera update needed
[2026-06-05 22:08:47,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:08:47,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:08:47,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:08:47,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:08:49,066.066 INFO    ] ================================================
[2026-06-05 22:08:49,082.082 INFO    ] Launching Daemon at Fri Jun  5 22:08:49 IST 2026
[2026-06-05 22:08:49,093.093 INFO    ] ================================================
[2026-06-05 22:08:49,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:08:49
[2026-06-05 22:08:50,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:08:50,510.510 INFO    ] Initializing speech engine...
[2026-06-05 22:08:50,525.525 INFO    ] 2026-06-05 22:08:50
[2026-06-05 22:08:50,810.810 INFO    ] 2026-06-05 22:08:50
[2026-06-05 22:08:50,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:08:51,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:08:51,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:08:51,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:08:51,238.238 INFO    ] time= 05/06/2026 22:08:51
[2026-06-05 22:08:51,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:08:51,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:08:51,424.424 INFO    ] No existing commands found in stream
[2026-06-05 22:08:56,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:08:56,457.457 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 22:08:59,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:08:59,751.751 INFO    ] Checking for system updates...
[2026-06-05 22:08:59,788.788 INFO    ] 200
[2026-06-05 22:08:59,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:59,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:08:59,848.848 INFO    ] No update needed
[2026-06-05 22:08:59,850.850 INFO    ] Checking for camera pi updates...
[2026-06-05 22:08:59,883.883 INFO    ] 200
[2026-06-05 22:08:59,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:08:59,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:08:59,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:08:59,979.979 INFO    ] No camera update needed
[2026-06-05 22:08:59,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:08:59,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:08:59,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:08:59,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:09:02,046.046 INFO    ] ================================================
[2026-06-05 22:09:02,073.073 INFO    ] Launching Daemon at Fri Jun  5 22:09:02 IST 2026
[2026-06-05 22:09:02,089.089 INFO    ] ================================================
[2026-06-05 22:09:02,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:09:02
[2026-06-05 22:09:03,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:09:03,698.698 INFO    ] Initializing speech engine...
[2026-06-05 22:09:03,705.705 INFO    ] 2026-06-05 22:09:03
[2026-06-05 22:09:03,992.992 INFO    ] 2026-06-05 22:09:03
[2026-06-05 22:09:04,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:09:04,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:09:04,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:09:04,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:09:04,424.424 INFO    ] time= 05/06/2026 22:09:04
[2026-06-05 22:09:04,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:09:04,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:09:04,628.628 INFO    ] No existing commands found in stream
[2026-06-05 22:09:09,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:09:09,650.650 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-05 22:09:10,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:09:10,402.402 INFO    ] Checking for system updates...
[2026-06-05 22:09:10,442.442 INFO    ] 200
[2026-06-05 22:09:10,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:10,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:09:10,500.500 INFO    ] No update needed
[2026-06-05 22:09:10,503.503 INFO    ] Checking for camera pi updates...
[2026-06-05 22:09:10,537.537 INFO    ] 200
[2026-06-05 22:09:10,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:10,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:09:10,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:09:10,634.634 INFO    ] No camera update needed
[2026-06-05 22:09:10,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:09:10,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:09:10,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:09:10,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:09:12,690.690 INFO    ] ================================================
[2026-06-05 22:09:12,706.706 INFO    ] Launching Daemon at Fri Jun  5 22:09:12 IST 2026
[2026-06-05 22:09:12,718.718 INFO    ] ================================================
[2026-06-05 22:09:13,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:09:13
[2026-06-05 22:09:14,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:09:14,352.352 INFO    ] Initializing speech engine...
[2026-06-05 22:09:14,360.360 INFO    ] 2026-06-05 22:09:14
[2026-06-05 22:09:14,646.646 INFO    ] 2026-06-05 22:09:14
[2026-06-05 22:09:14,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:09:14,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:09:14,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:09:15,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:09:15,131.131 INFO    ] time= 05/06/2026 22:09:15
[2026-06-05 22:09:15,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:09:15,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:09:15,314.314 INFO    ] No existing commands found in stream
[2026-06-05 22:09:20,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:09:20,330.330 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-05 22:09:20,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:09:20,822.822 INFO    ] Checking for system updates...
[2026-06-05 22:09:20,858.858 INFO    ] 200
[2026-06-05 22:09:20,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:20,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:09:20,920.920 INFO    ] No update needed
[2026-06-05 22:09:20,922.922 INFO    ] Checking for camera pi updates...
[2026-06-05 22:09:20,960.960 INFO    ] 200
[2026-06-05 22:09:20,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:21,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:09:21,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:09:21,053.053 INFO    ] No camera update needed
[2026-06-05 22:09:21,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:09:21,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:09:21,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:09:21,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:09:23,109.109 INFO    ] ================================================
[2026-06-05 22:09:23,124.124 INFO    ] Launching Daemon at Fri Jun  5 22:09:23 IST 2026
[2026-06-05 22:09:23,135.135 INFO    ] ================================================
[2026-06-05 22:09:23,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:09:23
[2026-06-05 22:09:24,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:09:24,797.797 INFO    ] Initializing speech engine...
[2026-06-05 22:09:24,806.806 INFO    ] 2026-06-05 22:09:24
[2026-06-05 22:09:25,082.082 INFO    ] 2026-06-05 22:09:25
[2026-06-05 22:09:25,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:09:25,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:09:25,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:09:25,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:09:25,654.654 INFO    ] time= 05/06/2026 22:09:25
[2026-06-05 22:09:25,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:09:25,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:09:25,826.826 INFO    ] No existing commands found in stream
[2026-06-05 22:09:30,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:09:30,861.861 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-05 22:09:32,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:09:32,711.711 INFO    ] Checking for system updates...
[2026-06-05 22:09:32,758.758 INFO    ] 200
[2026-06-05 22:09:32,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:32,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:09:32,921.921 INFO    ] No update needed
[2026-06-05 22:09:32,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 22:09:32,969.969 INFO    ] 200
[2026-06-05 22:09:32,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:33,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:09:33,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:09:33,063.063 INFO    ] No camera update needed
[2026-06-05 22:09:33,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:09:33,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:09:33,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:09:33,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:09:35,125.125 INFO    ] ================================================
[2026-06-05 22:09:35,140.140 INFO    ] Launching Daemon at Fri Jun  5 22:09:35 IST 2026
[2026-06-05 22:09:35,151.151 INFO    ] ================================================
[2026-06-05 22:09:35,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:09:35
[2026-06-05 22:09:36,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:09:36,549.549 INFO    ] Initializing speech engine...
[2026-06-05 22:09:36,564.564 INFO    ] 2026-06-05 22:09:36
[2026-06-05 22:09:36,830.830 INFO    ] 2026-06-05 22:09:36
[2026-06-05 22:09:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:09:37,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:09:37,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:09:37,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:09:37,337.337 INFO    ] time= 05/06/2026 22:09:37
[2026-06-05 22:09:37,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:09:37,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:09:37,537.537 INFO    ] No existing commands found in stream
[2026-06-05 22:09:42,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:09:42,560.560 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 22:09:45,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:09:45,370.370 INFO    ] Checking for system updates...
[2026-06-05 22:09:45,411.411 INFO    ] 200
[2026-06-05 22:09:45,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:45,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:09:45,469.469 INFO    ] No update needed
[2026-06-05 22:09:45,471.471 INFO    ] Checking for camera pi updates...
[2026-06-05 22:09:45,512.512 INFO    ] 200
[2026-06-05 22:09:45,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:45,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:09:45,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:09:45,605.605 INFO    ] No camera update needed
[2026-06-05 22:09:45,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:09:45,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:09:45,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:09:45,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:09:47,662.662 INFO    ] ================================================
[2026-06-05 22:09:47,677.677 INFO    ] Launching Daemon at Fri Jun  5 22:09:47 IST 2026
[2026-06-05 22:09:47,688.688 INFO    ] ================================================
[2026-06-05 22:09:48,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:09:48
[2026-06-05 22:09:48,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:09:49,148.148 INFO    ] Initializing speech engine...
[2026-06-05 22:09:49,156.156 INFO    ] 2026-06-05 22:09:49
[2026-06-05 22:09:49,415.415 INFO    ] 2026-06-05 22:09:49
[2026-06-05 22:09:49,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:09:49,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:09:49,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:09:49,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:09:49,970.970 INFO    ] time= 05/06/2026 22:09:49
[2026-06-05 22:09:49,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:09:50,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:09:50,133.133 INFO    ] No existing commands found in stream
[2026-06-05 22:09:55,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:09:55,158.158 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 22:09:59,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:09:59,511.511 INFO    ] Checking for system updates...
[2026-06-05 22:09:59,549.549 INFO    ] 200
[2026-06-05 22:09:59,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:59,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:09:59,609.609 INFO    ] No update needed
[2026-06-05 22:09:59,611.611 INFO    ] Checking for camera pi updates...
[2026-06-05 22:09:59,645.645 INFO    ] 200
[2026-06-05 22:09:59,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:09:59,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:09:59,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:09:59,842.842 INFO    ] No camera update needed
[2026-06-05 22:09:59,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:09:59,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:09:59,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:09:59,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:10:01,913.913 INFO    ] ================================================
[2026-06-05 22:10:01,954.954 INFO    ] Launching Daemon at Fri Jun  5 22:10:01 IST 2026
[2026-06-05 22:10:02,013.013 INFO    ] ================================================
[2026-06-05 22:10:03,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:10:03
[2026-06-05 22:10:03,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:10:04,095.095 INFO    ] Initializing speech engine...
[2026-06-05 22:10:04,124.124 INFO    ] 2026-06-05 22:10:04
[2026-06-05 22:10:04,393.393 INFO    ] 2026-06-05 22:10:04
[2026-06-05 22:10:04,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:10:04,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:10:04,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:10:04,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:10:04,893.893 INFO    ] time= 05/06/2026 22:10:04
[2026-06-05 22:10:04,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:10:04,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:10:05,097.097 INFO    ] No existing commands found in stream
[2026-06-05 22:10:10,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:10:10,121.121 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 22:10:13,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:10:13,745.745 INFO    ] Checking for system updates...
[2026-06-05 22:10:13,786.786 INFO    ] 200
[2026-06-05 22:10:13,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:10:13,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:10:13,843.843 INFO    ] No update needed
[2026-06-05 22:10:13,846.846 INFO    ] Checking for camera pi updates...
[2026-06-05 22:10:13,885.885 INFO    ] 200
[2026-06-05 22:10:13,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:10:13,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:10:13,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:10:13,981.981 INFO    ] No camera update needed
[2026-06-05 22:10:13,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:10:13,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:10:13,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:10:13,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:10:16,040.040 INFO    ] ================================================
[2026-06-05 22:10:16,055.055 INFO    ] Launching Daemon at Fri Jun  5 22:10:16 IST 2026
[2026-06-05 22:10:16,066.066 INFO    ] ================================================
[2026-06-05 22:10:16,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:10:16
[2026-06-05 22:10:17,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:10:17,536.536 INFO    ] Initializing speech engine...
[2026-06-05 22:10:17,541.541 INFO    ] 2026-06-05 22:10:17
[2026-06-05 22:10:17,803.803 INFO    ] 2026-06-05 22:10:17
[2026-06-05 22:10:17,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:10:18,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:10:18,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:10:18,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:10:18,294.294 INFO    ] time= 05/06/2026 22:10:18
[2026-06-05 22:10:18,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:10:18,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:10:18,472.472 INFO    ] No existing commands found in stream
[2026-06-05 22:10:23,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:10:23,497.497 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-05 22:10:26,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:10:26,362.362 INFO    ] Checking for system updates...
[2026-06-05 22:10:26,399.399 INFO    ] 200
[2026-06-05 22:10:26,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:10:26,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:10:26,458.458 INFO    ] No update needed
[2026-06-05 22:10:26,460.460 INFO    ] Checking for camera pi updates...
[2026-06-05 22:10:26,498.498 INFO    ] 200
[2026-06-05 22:10:26,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:10:26,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:10:26,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:10:26,595.595 INFO    ] No camera update needed
[2026-06-05 22:10:26,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:10:26,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:10:26,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:10:26,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:10:28,652.652 INFO    ] ================================================
[2026-06-05 22:10:28,667.667 INFO    ] Launching Daemon at Fri Jun  5 22:10:28 IST 2026
[2026-06-05 22:10:28,678.678 INFO    ] ================================================
[2026-06-05 22:10:29,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:10:29
[2026-06-05 22:10:29,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:10:30,123.123 INFO    ] Initializing speech engine...
[2026-06-05 22:10:30,130.130 INFO    ] 2026-06-05 22:10:30
[2026-06-05 22:10:30,391.391 INFO    ] 2026-06-05 22:10:30
[2026-06-05 22:10:30,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:10:30,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:10:30,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:10:30,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:10:30,938.938 INFO    ] time= 05/06/2026 22:10:30
[2026-06-05 22:10:30,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:10:30,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:10:31,093.093 INFO    ] No existing commands found in stream
[2026-06-05 22:10:36,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:10:36,125.125 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-05 22:10:39,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:10:39,999.999 INFO    ] Checking for system updates...
[2026-06-05 22:10:40,040.040 INFO    ] 200
[2026-06-05 22:10:40,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:10:40,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:10:40,098.098 INFO    ] No update needed
[2026-06-05 22:10:40,101.101 INFO    ] Checking for camera pi updates...
[2026-06-05 22:10:40,138.138 INFO    ] 200
[2026-06-05 22:10:40,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:10:40,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:10:40,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:10:40,235.235 INFO    ] No camera update needed
[2026-06-05 22:10:40,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:10:40,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:10:40,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:10:40,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:10:42,293.293 INFO    ] ================================================
[2026-06-05 22:10:42,309.309 INFO    ] Launching Daemon at Fri Jun  5 22:10:42 IST 2026
[2026-06-05 22:10:42,320.320 INFO    ] ================================================
[2026-06-05 22:10:42,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:10:42
[2026-06-05 22:10:43,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:10:43,805.805 INFO    ] Initializing speech engine...
[2026-06-05 22:10:43,819.819 INFO    ] 2026-06-05 22:10:43
[2026-06-05 22:10:44,110.110 INFO    ] 2026-06-05 22:10:44
[2026-06-05 22:10:44,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:10:44,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:10:44,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:10:44,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:10:44,496.496 INFO    ] time= 05/06/2026 22:10:44
[2026-06-05 22:10:44,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:10:44,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:10:44,626.626 INFO    ] No existing commands found in stream
[2026-06-05 22:10:49,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:10:49,655.655 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 22:10:53,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:10:53,072.072 INFO    ] Checking for system updates...
[2026-06-05 22:10:53,109.109 INFO    ] 200
[2026-06-05 22:10:53,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:10:53,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:10:53,173.173 INFO    ] No update needed
[2026-06-05 22:10:53,176.176 INFO    ] Checking for camera pi updates...
[2026-06-05 22:10:53,209.209 INFO    ] 200
[2026-06-05 22:10:53,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:10:53,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:10:53,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:10:53,306.306 INFO    ] No camera update needed
[2026-06-05 22:10:53,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:10:53,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:10:53,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:10:53,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:10:55,363.363 INFO    ] ================================================
[2026-06-05 22:10:55,378.378 INFO    ] Launching Daemon at Fri Jun  5 22:10:55 IST 2026
[2026-06-05 22:10:55,390.390 INFO    ] ================================================
[2026-06-05 22:10:56,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:10:56
[2026-06-05 22:10:56,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:10:57,013.013 INFO    ] Initializing speech engine...
[2026-06-05 22:10:57,022.022 INFO    ] 2026-06-05 22:10:57
[2026-06-05 22:10:57,308.308 INFO    ] 2026-06-05 22:10:57
[2026-06-05 22:10:57,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:10:59,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:10:59,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:10:59,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:10:59,810.810 INFO    ] time= 05/06/2026 22:10:59
[2026-06-05 22:10:59,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:10:59,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:10:59,904.904 INFO    ] No existing commands found in stream
[2026-06-05 22:11:04,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:11:04,923.923 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 22:11:07,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:11:07,042.042 INFO    ] Checking for system updates...
[2026-06-05 22:11:07,080.080 INFO    ] 200
[2026-06-05 22:11:07,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:07,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:11:07,150.150 INFO    ] No update needed
[2026-06-05 22:11:07,153.153 INFO    ] Checking for camera pi updates...
[2026-06-05 22:11:07,193.193 INFO    ] 200
[2026-06-05 22:11:07,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:07,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:11:07,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:11:07,300.300 INFO    ] No camera update needed
[2026-06-05 22:11:07,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:11:07,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:11:07,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:11:07,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:11:09,361.361 INFO    ] ================================================
[2026-06-05 22:11:09,377.377 INFO    ] Launching Daemon at Fri Jun  5 22:11:09 IST 2026
[2026-06-05 22:11:09,388.388 INFO    ] ================================================
[2026-06-05 22:11:09,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:11:09
[2026-06-05 22:11:10,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:11:10,826.826 INFO    ] Initializing speech engine...
[2026-06-05 22:11:10,829.829 INFO    ] 2026-06-05 22:11:10
[2026-06-05 22:11:11,133.133 INFO    ] 2026-06-05 22:11:11
[2026-06-05 22:11:11,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:11:11,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:11:11,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:11:11,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:11:11,497.497 INFO    ] time= 05/06/2026 22:11:11
[2026-06-05 22:11:11,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:11:11,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:11:11,652.652 INFO    ] No existing commands found in stream
[2026-06-05 22:11:16,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:11:16,666.666 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 22:11:19,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:11:19,174.174 INFO    ] Checking for system updates...
[2026-06-05 22:11:19,211.211 INFO    ] 200
[2026-06-05 22:11:19,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:19,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:11:19,277.277 INFO    ] No update needed
[2026-06-05 22:11:19,279.279 INFO    ] Checking for camera pi updates...
[2026-06-05 22:11:19,313.313 INFO    ] 200
[2026-06-05 22:11:19,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:19,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:11:19,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:11:19,404.404 INFO    ] No camera update needed
[2026-06-05 22:11:19,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:11:19,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:11:19,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:11:19,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:11:21,459.459 INFO    ] ================================================
[2026-06-05 22:11:21,474.474 INFO    ] Launching Daemon at Fri Jun  5 22:11:21 IST 2026
[2026-06-05 22:11:21,485.485 INFO    ] ================================================
[2026-06-05 22:11:22,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:11:22
[2026-06-05 22:11:22,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:11:22,980.980 INFO    ] Initializing speech engine...
[2026-06-05 22:11:23,000.000 INFO    ] 2026-06-05 22:11:22
[2026-06-05 22:11:23,251.251 INFO    ] 2026-06-05 22:11:23
[2026-06-05 22:11:23,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:11:23,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:11:23,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:11:23,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:11:23,698.698 INFO    ] time= 05/06/2026 22:11:23
[2026-06-05 22:11:23,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:11:23,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:11:23,925.925 INFO    ] No existing commands found in stream
[2026-06-05 22:11:28,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:11:28,960.960 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 22:11:32,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:11:32,316.316 INFO    ] Checking for system updates...
[2026-06-05 22:11:32,361.361 INFO    ] 200
[2026-06-05 22:11:32,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:32,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:11:32,425.425 INFO    ] No update needed
[2026-06-05 22:11:32,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 22:11:32,473.473 INFO    ] 200
[2026-06-05 22:11:32,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:32,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:11:32,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:11:32,568.568 INFO    ] No camera update needed
[2026-06-05 22:11:32,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:11:32,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:11:32,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:11:32,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:11:34,628.628 INFO    ] ================================================
[2026-06-05 22:11:34,644.644 INFO    ] Launching Daemon at Fri Jun  5 22:11:34 IST 2026
[2026-06-05 22:11:34,656.656 INFO    ] ================================================
[2026-06-05 22:11:35,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:11:35
[2026-06-05 22:11:35,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:11:36,138.138 INFO    ] Initializing speech engine...
[2026-06-05 22:11:36,152.152 INFO    ] 2026-06-05 22:11:36
[2026-06-05 22:11:36,419.419 INFO    ] 2026-06-05 22:11:36
[2026-06-05 22:11:36,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:11:36,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:11:36,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:11:36,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:11:36,920.920 INFO    ] time= 05/06/2026 22:11:36
[2026-06-05 22:11:36,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:11:36,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:11:37,171.171 INFO    ] No existing commands found in stream
[2026-06-05 22:11:42,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:11:42,199.199 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 22:11:43,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:11:43,739.739 INFO    ] Checking for system updates...
[2026-06-05 22:11:43,775.775 INFO    ] 200
[2026-06-05 22:11:43,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:43,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:11:43,833.833 INFO    ] No update needed
[2026-06-05 22:11:43,835.835 INFO    ] Checking for camera pi updates...
[2026-06-05 22:11:43,869.869 INFO    ] 200
[2026-06-05 22:11:43,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:43,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:11:43,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:11:43,974.974 INFO    ] No camera update needed
[2026-06-05 22:11:43,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:11:43,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:11:43,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:11:43,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:11:46,029.029 INFO    ] ================================================
[2026-06-05 22:11:46,045.045 INFO    ] Launching Daemon at Fri Jun  5 22:11:46 IST 2026
[2026-06-05 22:11:46,059.059 INFO    ] ================================================
[2026-06-05 22:11:46,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:11:46
[2026-06-05 22:11:47,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:11:47,572.572 INFO    ] Initializing speech engine...
[2026-06-05 22:11:47,581.581 INFO    ] 2026-06-05 22:11:47
[2026-06-05 22:11:47,888.888 INFO    ] 2026-06-05 22:11:47
[2026-06-05 22:11:47,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:11:48,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:11:48,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:11:48,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:11:48,405.405 INFO    ] time= 05/06/2026 22:11:48
[2026-06-05 22:11:48,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:11:48,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:11:48,621.621 INFO    ] No existing commands found in stream
[2026-06-05 22:11:53,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:11:53,639.639 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-05 22:11:56,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:11:56,840.840 INFO    ] Checking for system updates...
[2026-06-05 22:11:56,884.884 INFO    ] 200
[2026-06-05 22:11:56,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:56,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:11:56,943.943 INFO    ] No update needed
[2026-06-05 22:11:56,945.945 INFO    ] Checking for camera pi updates...
[2026-06-05 22:11:56,983.983 INFO    ] 200
[2026-06-05 22:11:56,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:11:57,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:11:57,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:11:57,083.083 INFO    ] No camera update needed
[2026-06-05 22:11:57,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:11:57,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:11:57,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:11:57,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:11:59,138.138 INFO    ] ================================================
[2026-06-05 22:11:59,154.154 INFO    ] Launching Daemon at Fri Jun  5 22:11:59 IST 2026
[2026-06-05 22:11:59,165.165 INFO    ] ================================================
[2026-06-05 22:11:59,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:11:59
[2026-06-05 22:12:00,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:12:00,725.725 INFO    ] Initializing speech engine...
[2026-06-05 22:12:00,739.739 INFO    ] 2026-06-05 22:12:00
[2026-06-05 22:12:01,060.060 INFO    ] 2026-06-05 22:12:01
[2026-06-05 22:12:01,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:12:01,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:12:01,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:12:01,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:12:01,533.533 INFO    ] time= 05/06/2026 22:12:01
[2026-06-05 22:12:01,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:12:01,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:12:01,679.679 INFO    ] No existing commands found in stream
[2026-06-05 22:12:06,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:12:06,694.694 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 22:12:08,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:12:08,662.662 INFO    ] Checking for system updates...
[2026-06-05 22:12:08,699.699 INFO    ] 200
[2026-06-05 22:12:08,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:08,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:12:08,759.759 INFO    ] No update needed
[2026-06-05 22:12:08,761.761 INFO    ] Checking for camera pi updates...
[2026-06-05 22:12:08,803.803 INFO    ] 200
[2026-06-05 22:12:08,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:08,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:12:08,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:12:08,884.884 INFO    ] No camera update needed
[2026-06-05 22:12:08,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:12:08,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:12:08,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:12:08,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:12:10,941.941 INFO    ] ================================================
[2026-06-05 22:12:10,959.959 INFO    ] Launching Daemon at Fri Jun  5 22:12:10 IST 2026
[2026-06-05 22:12:10,971.971 INFO    ] ================================================
[2026-06-05 22:12:11,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:12:11
[2026-06-05 22:12:12,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:12:12,405.405 INFO    ] Initializing speech engine...
[2026-06-05 22:12:12,411.411 INFO    ] 2026-06-05 22:12:12
[2026-06-05 22:12:12,705.705 INFO    ] 2026-06-05 22:12:12
[2026-06-05 22:12:12,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:12:12,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:12:13,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:12:13,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:12:13,200.200 INFO    ] time= 05/06/2026 22:12:13
[2026-06-05 22:12:13,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:12:13,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:12:13,429.429 INFO    ] No existing commands found in stream
[2026-06-05 22:12:18,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:12:18,458.458 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 22:12:20,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:12:20,844.844 INFO    ] Checking for system updates...
[2026-06-05 22:12:20,880.880 INFO    ] 200
[2026-06-05 22:12:20,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:20,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:12:20,938.938 INFO    ] No update needed
[2026-06-05 22:12:20,940.940 INFO    ] Checking for camera pi updates...
[2026-06-05 22:12:20,975.975 INFO    ] 200
[2026-06-05 22:12:20,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:21,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:12:21,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:12:21,068.068 INFO    ] No camera update needed
[2026-06-05 22:12:21,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:12:21,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:12:21,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:12:21,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:12:23,124.124 INFO    ] ================================================
[2026-06-05 22:12:23,141.141 INFO    ] Launching Daemon at Fri Jun  5 22:12:23 IST 2026
[2026-06-05 22:12:23,154.154 INFO    ] ================================================
[2026-06-05 22:12:23,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:12:23
[2026-06-05 22:12:24,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:12:24,609.609 INFO    ] Initializing speech engine...
[2026-06-05 22:12:24,615.615 INFO    ] 2026-06-05 22:12:24
[2026-06-05 22:12:24,873.873 INFO    ] 2026-06-05 22:12:24
[2026-06-05 22:12:24,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:12:25,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:12:25,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:12:25,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:12:25,346.346 INFO    ] time= 05/06/2026 22:12:25
[2026-06-05 22:12:25,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:12:25,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:12:25,581.581 INFO    ] No existing commands found in stream
[2026-06-05 22:12:30,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:12:30,618.618 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-05 22:12:32,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:12:32,989.989 INFO    ] Checking for system updates...
[2026-06-05 22:12:33,025.025 INFO    ] 200
[2026-06-05 22:12:33,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:33,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:12:33,090.090 INFO    ] No update needed
[2026-06-05 22:12:33,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 22:12:33,129.129 INFO    ] 200
[2026-06-05 22:12:33,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:33,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:12:33,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:12:33,232.232 INFO    ] No camera update needed
[2026-06-05 22:12:33,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:12:33,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:12:33,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:12:33,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:12:35,287.287 INFO    ] ================================================
[2026-06-05 22:12:35,302.302 INFO    ] Launching Daemon at Fri Jun  5 22:12:35 IST 2026
[2026-06-05 22:12:35,314.314 INFO    ] ================================================
[2026-06-05 22:12:35,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:12:35
[2026-06-05 22:12:36,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:12:36,738.738 INFO    ] Initializing speech engine...
[2026-06-05 22:12:36,754.754 INFO    ] 2026-06-05 22:12:36
[2026-06-05 22:12:37,022.022 INFO    ] 2026-06-05 22:12:37
[2026-06-05 22:12:37,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:12:37,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:12:37,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:12:37,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:12:37,437.437 INFO    ] time= 05/06/2026 22:12:37
[2026-06-05 22:12:37,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:12:37,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:12:37,609.609 INFO    ] No existing commands found in stream
[2026-06-05 22:12:42,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:12:42,637.637 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 22:12:45,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:12:45,284.284 INFO    ] Checking for system updates...
[2026-06-05 22:12:45,321.321 INFO    ] 200
[2026-06-05 22:12:45,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:45,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:12:45,385.385 INFO    ] No update needed
[2026-06-05 22:12:45,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 22:12:45,424.424 INFO    ] 200
[2026-06-05 22:12:45,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:45,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:12:45,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:12:45,518.518 INFO    ] No camera update needed
[2026-06-05 22:12:45,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:12:45,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:12:45,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:12:45,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:12:47,575.575 INFO    ] ================================================
[2026-06-05 22:12:47,590.590 INFO    ] Launching Daemon at Fri Jun  5 22:12:47 IST 2026
[2026-06-05 22:12:47,602.602 INFO    ] ================================================
[2026-06-05 22:12:48,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:12:48
[2026-06-05 22:12:48,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:12:49,022.022 INFO    ] Initializing speech engine...
[2026-06-05 22:12:49,043.043 INFO    ] 2026-06-05 22:12:49
[2026-06-05 22:12:49,306.306 INFO    ] 2026-06-05 22:12:49
[2026-06-05 22:12:49,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:12:49,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:12:49,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:12:49,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:12:49,755.755 INFO    ] time= 05/06/2026 22:12:49
[2026-06-05 22:12:49,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:12:49,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:12:50,019.019 INFO    ] No existing commands found in stream
[2026-06-05 22:12:55,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:12:55,047.047 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 22:12:56,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:12:56,847.847 INFO    ] Checking for system updates...
[2026-06-05 22:12:56,884.884 INFO    ] 200
[2026-06-05 22:12:56,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:56,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:12:56,949.949 INFO    ] No update needed
[2026-06-05 22:12:56,951.951 INFO    ] Checking for camera pi updates...
[2026-06-05 22:12:56,985.985 INFO    ] 200
[2026-06-05 22:12:56,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:12:57,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:12:57,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:12:57,092.092 INFO    ] No camera update needed
[2026-06-05 22:12:57,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:12:57,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:12:57,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:12:57,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:12:59,149.149 INFO    ] ================================================
[2026-06-05 22:12:59,165.165 INFO    ] Launching Daemon at Fri Jun  5 22:12:59 IST 2026
[2026-06-05 22:12:59,178.178 INFO    ] ================================================
[2026-06-05 22:12:59,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:12:59
[2026-06-05 22:13:00,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:13:00,811.811 INFO    ] Initializing speech engine...
[2026-06-05 22:13:00,822.822 INFO    ] 2026-06-05 22:13:00
[2026-06-05 22:13:01,118.118 INFO    ] 2026-06-05 22:13:01
[2026-06-05 22:13:01,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:13:01,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:13:01,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:13:01,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:13:01,611.611 INFO    ] time= 05/06/2026 22:13:01
[2026-06-05 22:13:01,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:13:01,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:13:01,692.692 INFO    ] No existing commands found in stream
[2026-06-05 22:13:06,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:13:06,705.705 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 22:13:07,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:13:07,351.351 INFO    ] Checking for system updates...
[2026-06-05 22:13:07,391.391 INFO    ] 200
[2026-06-05 22:13:07,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:13:07,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:13:07,454.454 INFO    ] No update needed
[2026-06-05 22:13:07,456.456 INFO    ] Checking for camera pi updates...
[2026-06-05 22:13:07,493.493 INFO    ] 200
[2026-06-05 22:13:07,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:13:07,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:13:07,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:13:07,570.570 INFO    ] No camera update needed
[2026-06-05 22:13:07,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:13:07,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:13:07,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:13:07,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:13:09,627.627 INFO    ] ================================================
[2026-06-05 22:13:09,643.643 INFO    ] Launching Daemon at Fri Jun  5 22:13:09 IST 2026
[2026-06-05 22:13:09,654.654 INFO    ] ================================================
[2026-06-05 22:13:10,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:13:10
[2026-06-05 22:13:10,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:13:11,243.243 INFO    ] Initializing speech engine...
[2026-06-05 22:13:11,256.256 INFO    ] 2026-06-05 22:13:11
[2026-06-05 22:13:11,528.528 INFO    ] 2026-06-05 22:13:11
[2026-06-05 22:13:11,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:13:11,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:13:11,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:13:12,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:13:12,093.093 INFO    ] time= 05/06/2026 22:13:12
[2026-06-05 22:13:12,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:13:12,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:13:12,236.236 INFO    ] No existing commands found in stream
[2026-06-05 22:13:17,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:13:17,270.270 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 22:13:21,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:13:21,501.501 INFO    ] Checking for system updates...
[2026-06-05 22:13:21,539.539 INFO    ] 200
[2026-06-05 22:13:21,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:13:21,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:13:21,601.601 INFO    ] No update needed
[2026-06-05 22:13:21,603.603 INFO    ] Checking for camera pi updates...
[2026-06-05 22:13:21,643.643 INFO    ] 200
[2026-06-05 22:13:21,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:13:21,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:13:21,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:13:21,739.739 INFO    ] No camera update needed
[2026-06-05 22:13:21,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:13:21,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:13:21,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:13:21,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:13:23,794.794 INFO    ] ================================================
[2026-06-05 22:13:23,810.810 INFO    ] Launching Daemon at Fri Jun  5 22:13:23 IST 2026
[2026-06-05 22:13:23,821.821 INFO    ] ================================================
[2026-06-05 22:13:24,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:13:24
[2026-06-05 22:13:25,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:13:25,270.270 INFO    ] Initializing speech engine...
[2026-06-05 22:13:25,285.285 INFO    ] 2026-06-05 22:13:25
[2026-06-05 22:13:25,539.539 INFO    ] 2026-06-05 22:13:25
[2026-06-05 22:13:25,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:13:25,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:13:25,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:13:25,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:13:26,034.034 INFO    ] time= 05/06/2026 22:13:25
[2026-06-05 22:13:26,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:13:26,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:13:26,251.251 INFO    ] No existing commands found in stream
[2026-06-05 22:13:31,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:13:31,281.281 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-05 22:13:35,169.169 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:13:35,172.172 INFO    ] Checking for system updates...
[2026-06-05 22:13:35,208.208 INFO    ] 200
[2026-06-05 22:13:35,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:13:35,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:13:35,271.271 INFO    ] No update needed
[2026-06-05 22:13:35,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 22:13:35,314.314 INFO    ] 200
[2026-06-05 22:13:35,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:13:35,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:13:35,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:13:35,424.424 INFO    ] No camera update needed
[2026-06-05 22:13:35,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:13:35,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:13:35,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:13:35,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:13:37,491.491 INFO    ] ================================================
[2026-06-05 22:13:37,507.507 INFO    ] Launching Daemon at Fri Jun  5 22:13:37 IST 2026
[2026-06-05 22:13:37,518.518 INFO    ] ================================================
[2026-06-05 22:13:38,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:13:38
[2026-06-05 22:13:38,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:13:38,974.974 INFO    ] Initializing speech engine...
[2026-06-05 22:13:38,980.980 INFO    ] 2026-06-05 22:13:38
[2026-06-05 22:13:39,278.278 INFO    ] 2026-06-05 22:13:39
[2026-06-05 22:13:39,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:13:39,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:13:39,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:13:39,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:13:39,699.699 INFO    ] time= 05/06/2026 22:13:39
[2026-06-05 22:13:39,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:13:39,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:13:39,854.854 INFO    ] No existing commands found in stream
[2026-06-05 22:13:44,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:13:44,882.882 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 22:13:47,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:13:47,403.403 INFO    ] Checking for system updates...
[2026-06-05 22:13:47,444.444 INFO    ] 200
[2026-06-05 22:13:47,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:13:47,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:13:47,518.518 INFO    ] No update needed
[2026-06-05 22:13:47,520.520 INFO    ] Checking for camera pi updates...
[2026-06-05 22:13:47,558.558 INFO    ] 200
[2026-06-05 22:13:47,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:13:47,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:13:47,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:13:47,664.664 INFO    ] No camera update needed
[2026-06-05 22:13:47,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:13:47,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:13:47,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:13:47,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:13:49,724.724 INFO    ] ================================================
[2026-06-05 22:13:49,740.740 INFO    ] Launching Daemon at Fri Jun  5 22:13:49 IST 2026
[2026-06-05 22:13:49,751.751 INFO    ] ================================================
[2026-06-05 22:13:50,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:13:50
[2026-06-05 22:13:50,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:13:51,254.254 INFO    ] Initializing speech engine...
[2026-06-05 22:13:51,263.263 INFO    ] 2026-06-05 22:13:51
[2026-06-05 22:13:51,509.509 INFO    ] 2026-06-05 22:13:51
[2026-06-05 22:13:51,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:13:51,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:13:51,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:13:52,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:13:52,062.062 INFO    ] time= 05/06/2026 22:13:52
[2026-06-05 22:13:52,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:13:52,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:13:52,215.215 INFO    ] No existing commands found in stream
[2026-06-05 22:13:57,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:13:57,231.231 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-05 22:14:00,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:14:00,821.821 INFO    ] Checking for system updates...
[2026-06-05 22:14:00,862.862 INFO    ] 200
[2026-06-05 22:14:00,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:00,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:14:00,941.941 INFO    ] No update needed
[2026-06-05 22:14:00,944.944 INFO    ] Checking for camera pi updates...
[2026-06-05 22:14:00,982.982 INFO    ] 200
[2026-06-05 22:14:00,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:01,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:14:01,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:14:01,089.089 INFO    ] No camera update needed
[2026-06-05 22:14:01,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:14:01,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:14:01,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:14:01,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:14:03,151.151 INFO    ] ================================================
[2026-06-05 22:14:03,167.167 INFO    ] Launching Daemon at Fri Jun  5 22:14:03 IST 2026
[2026-06-05 22:14:03,180.180 INFO    ] ================================================
[2026-06-05 22:14:03,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:14:03
[2026-06-05 22:14:04,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:14:04,663.663 INFO    ] Initializing speech engine...
[2026-06-05 22:14:04,673.673 INFO    ] 2026-06-05 22:14:04
[2026-06-05 22:14:04,938.938 INFO    ] 2026-06-05 22:14:04
[2026-06-05 22:14:04,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:14:05,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:14:05,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:14:05,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:14:05,435.435 INFO    ] time= 05/06/2026 22:14:05
[2026-06-05 22:14:05,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:14:05,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:14:05,637.637 INFO    ] No existing commands found in stream
[2026-06-05 22:14:10,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:14:10,653.653 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 22:14:14,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:14:14,469.469 INFO    ] Checking for system updates...
[2026-06-05 22:14:14,506.506 INFO    ] 200
[2026-06-05 22:14:14,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:14,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:14:14,572.572 INFO    ] No update needed
[2026-06-05 22:14:14,574.574 INFO    ] Checking for camera pi updates...
[2026-06-05 22:14:14,608.608 INFO    ] 200
[2026-06-05 22:14:14,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:14,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:14:14,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:14:14,809.809 INFO    ] No camera update needed
[2026-06-05 22:14:14,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:14:14,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:14:14,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:14:14,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:14:16,866.866 INFO    ] ================================================
[2026-06-05 22:14:16,882.882 INFO    ] Launching Daemon at Fri Jun  5 22:14:16 IST 2026
[2026-06-05 22:14:16,893.893 INFO    ] ================================================
[2026-06-05 22:14:17,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:14:17
[2026-06-05 22:14:18,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:14:18,308.308 INFO    ] Initializing speech engine...
[2026-06-05 22:14:18,315.315 INFO    ] 2026-06-05 22:14:18
[2026-06-05 22:14:18,611.611 INFO    ] 2026-06-05 22:14:18
[2026-06-05 22:14:18,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:14:18,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:14:18,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:14:19,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:14:19,203.203 INFO    ] time= 05/06/2026 22:14:19
[2026-06-05 22:14:19,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:14:19,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:14:19,392.392 INFO    ] No existing commands found in stream
[2026-06-05 22:14:24,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:14:24,423.423 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 22:14:27,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:14:27,537.537 INFO    ] Checking for system updates...
[2026-06-05 22:14:27,576.576 INFO    ] 200
[2026-06-05 22:14:27,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:27,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:14:27,639.639 INFO    ] No update needed
[2026-06-05 22:14:27,641.641 INFO    ] Checking for camera pi updates...
[2026-06-05 22:14:27,678.678 INFO    ] 200
[2026-06-05 22:14:27,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:27,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:14:27,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:14:27,771.771 INFO    ] No camera update needed
[2026-06-05 22:14:27,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:14:27,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:14:27,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:14:27,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:14:29,827.827 INFO    ] ================================================
[2026-06-05 22:14:29,843.843 INFO    ] Launching Daemon at Fri Jun  5 22:14:29 IST 2026
[2026-06-05 22:14:29,854.854 INFO    ] ================================================
[2026-06-05 22:14:30,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:14:30
[2026-06-05 22:14:31,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:14:31,453.453 INFO    ] Initializing speech engine...
[2026-06-05 22:14:31,464.464 INFO    ] 2026-06-05 22:14:31
[2026-06-05 22:14:31,774.774 INFO    ] 2026-06-05 22:14:31
[2026-06-05 22:14:31,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:14:32,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:14:32,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:14:32,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:14:32,337.337 INFO    ] time= 05/06/2026 22:14:32
[2026-06-05 22:14:32,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:14:32,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:14:32,504.504 INFO    ] No existing commands found in stream
[2026-06-05 22:14:37,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:14:37,547.547 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-05 22:14:41,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:14:41,461.461 INFO    ] Checking for system updates...
[2026-06-05 22:14:41,497.497 INFO    ] 200
[2026-06-05 22:14:41,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:41,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:14:41,561.561 INFO    ] No update needed
[2026-06-05 22:14:41,563.563 INFO    ] Checking for camera pi updates...
[2026-06-05 22:14:41,598.598 INFO    ] 200
[2026-06-05 22:14:41,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:41,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:14:41,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:14:41,689.689 INFO    ] No camera update needed
[2026-06-05 22:14:41,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:14:41,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:14:41,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:14:41,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:14:43,745.745 INFO    ] ================================================
[2026-06-05 22:14:43,761.761 INFO    ] Launching Daemon at Fri Jun  5 22:14:43 IST 2026
[2026-06-05 22:14:43,772.772 INFO    ] ================================================
[2026-06-05 22:14:44,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:14:44
[2026-06-05 22:14:44,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:14:45,255.255 INFO    ] Initializing speech engine...
[2026-06-05 22:14:45,261.261 INFO    ] 2026-06-05 22:14:45
[2026-06-05 22:14:45,519.519 INFO    ] 2026-06-05 22:14:45
[2026-06-05 22:14:45,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:14:45,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:14:45,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:14:46,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:14:46,067.067 INFO    ] time= 05/06/2026 22:14:46
[2026-06-05 22:14:46,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:14:46,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:14:46,217.217 INFO    ] No existing commands found in stream
[2026-06-05 22:14:51,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:14:51,236.236 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 22:14:55,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:14:55,088.088 INFO    ] Checking for system updates...
[2026-06-05 22:14:55,124.124 INFO    ] 200
[2026-06-05 22:14:55,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:55,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:14:55,181.181 INFO    ] No update needed
[2026-06-05 22:14:55,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 22:14:55,222.222 INFO    ] 200
[2026-06-05 22:14:55,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:14:55,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:14:55,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:14:55,313.313 INFO    ] No camera update needed
[2026-06-05 22:14:55,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:14:55,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:14:55,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:14:55,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:14:57,369.369 INFO    ] ================================================
[2026-06-05 22:14:57,384.384 INFO    ] Launching Daemon at Fri Jun  5 22:14:57 IST 2026
[2026-06-05 22:14:57,395.395 INFO    ] ================================================
[2026-06-05 22:14:58,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:14:58
[2026-06-05 22:14:58,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:14:59,006.006 INFO    ] Initializing speech engine...
[2026-06-05 22:14:59,014.014 INFO    ] 2026-06-05 22:14:59
[2026-06-05 22:14:59,273.273 INFO    ] 2026-06-05 22:14:59
[2026-06-05 22:14:59,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:15:00,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:15:00,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:15:00,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:15:00,993.993 INFO    ] time= 05/06/2026 22:15:00
[2026-06-05 22:15:00,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:15:00,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:15:01,148.148 INFO    ] No existing commands found in stream
[2026-06-05 22:15:06,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:15:06,176.176 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-05 22:15:10,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:15:10,203.203 INFO    ] Checking for system updates...
[2026-06-05 22:15:10,240.240 INFO    ] 200
[2026-06-05 22:15:10,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:15:10,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:15:10,311.311 INFO    ] No update needed
[2026-06-05 22:15:10,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 22:15:10,348.348 INFO    ] 200
[2026-06-05 22:15:10,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:15:10,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:15:10,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:15:10,447.447 INFO    ] No camera update needed
[2026-06-05 22:15:10,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:15:10,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:15:10,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:15:10,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:15:12,507.507 INFO    ] ================================================
[2026-06-05 22:15:12,523.523 INFO    ] Launching Daemon at Fri Jun  5 22:15:12 IST 2026
[2026-06-05 22:15:12,534.534 INFO    ] ================================================
[2026-06-05 22:15:13,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:15:13
[2026-06-05 22:15:13,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:15:14,220.220 INFO    ] Initializing speech engine...
[2026-06-05 22:15:14,232.232 INFO    ] 2026-06-05 22:15:14
[2026-06-05 22:15:14,518.518 INFO    ] 2026-06-05 22:15:14
[2026-06-05 22:15:14,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:15:14,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:15:14,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:15:15,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:15:15,101.101 INFO    ] time= 05/06/2026 22:15:15
[2026-06-05 22:15:15,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:15:15,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:15:15,314.314 INFO    ] No existing commands found in stream
[2026-06-05 22:15:20,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:15:20,354.354 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-05 22:15:21,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:15:21,636.636 INFO    ] Checking for system updates...
[2026-06-05 22:15:21,673.673 INFO    ] 200
[2026-06-05 22:15:21,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:15:21,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:15:21,733.733 INFO    ] No update needed
[2026-06-05 22:15:21,736.736 INFO    ] Checking for camera pi updates...
[2026-06-05 22:15:21,771.771 INFO    ] 200
[2026-06-05 22:15:21,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:15:21,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:15:21,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:15:21,869.869 INFO    ] No camera update needed
[2026-06-05 22:15:21,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:15:21,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:15:21,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:15:21,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:15:23,930.930 INFO    ] ================================================
[2026-06-05 22:15:23,947.947 INFO    ] Launching Daemon at Fri Jun  5 22:15:23 IST 2026
[2026-06-05 22:15:23,959.959 INFO    ] ================================================
[2026-06-05 22:15:24,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:15:24
[2026-06-05 22:15:25,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:15:26,924.924 INFO    ] Initializing speech engine...
[2026-06-05 22:15:26,929.929 INFO    ] 2026-06-05 22:15:26
[2026-06-05 22:15:27,191.191 INFO    ] 2026-06-05 22:15:27
[2026-06-05 22:15:27,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:15:27,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:15:27,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:15:27,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:15:27,632.632 INFO    ] time= 05/06/2026 22:15:27
[2026-06-05 22:15:27,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:15:27,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:15:27,718.718 INFO    ] No existing commands found in stream
[2026-06-05 22:15:32,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:15:32,732.732 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-05 22:15:34,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:15:34,288.288 INFO    ] Checking for system updates...
[2026-06-05 22:15:34,329.329 INFO    ] 200
[2026-06-05 22:15:34,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:15:34,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:15:34,396.396 INFO    ] No update needed
[2026-06-05 22:15:34,398.398 INFO    ] Checking for camera pi updates...
[2026-06-05 22:15:34,436.436 INFO    ] 200
[2026-06-05 22:15:34,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:15:34,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:15:34,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:15:34,536.536 INFO    ] No camera update needed
[2026-06-05 22:15:34,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:15:34,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:15:34,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:15:34,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:15:36,597.597 INFO    ] ================================================
[2026-06-05 22:15:36,613.613 INFO    ] Launching Daemon at Fri Jun  5 22:15:36 IST 2026
[2026-06-05 22:15:36,624.624 INFO    ] ================================================
[2026-06-05 22:15:37,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:15:37
[2026-06-05 22:15:38,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:15:38,482.482 INFO    ] Initializing speech engine...
[2026-06-05 22:15:38,492.492 INFO    ] 2026-06-05 22:15:38
[2026-06-05 22:15:38,744.744 INFO    ] 2026-06-05 22:15:38
[2026-06-05 22:15:38,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:15:39,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:15:39,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:15:39,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:15:39,291.291 INFO    ] time= 05/06/2026 22:15:39
[2026-06-05 22:15:39,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:15:39,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:15:39,431.431 INFO    ] No existing commands found in stream
[2026-06-05 22:15:44,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:15:44,456.456 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-05 22:15:47,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:15:47,333.333 INFO    ] Checking for system updates...
[2026-06-05 22:15:47,385.385 INFO    ] 200
[2026-06-05 22:15:47,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:15:47,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:15:47,445.445 INFO    ] No update needed
[2026-06-05 22:15:47,448.448 INFO    ] Checking for camera pi updates...
[2026-06-05 22:15:47,486.486 INFO    ] 200
[2026-06-05 22:15:47,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:15:47,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:15:47,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:15:47,600.600 INFO    ] No camera update needed
[2026-06-05 22:15:47,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:15:47,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:15:47,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:15:47,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:15:49,657.657 INFO    ] ================================================
[2026-06-05 22:15:49,672.672 INFO    ] Launching Daemon at Fri Jun  5 22:15:49 IST 2026
[2026-06-05 22:15:49,683.683 INFO    ] ================================================
[2026-06-05 22:15:50,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:15:50
[2026-06-05 22:15:50,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:15:51,117.117 INFO    ] Initializing speech engine...
[2026-06-05 22:15:51,122.122 INFO    ] 2026-06-05 22:15:51
[2026-06-05 22:15:51,370.370 INFO    ] 2026-06-05 22:15:51
[2026-06-05 22:15:51,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:15:51,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:15:51,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:15:51,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:15:52,523.523 INFO    ] time= 05/06/2026 22:15:52
[2026-06-05 22:15:52,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:15:52,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:15:52,615.615 INFO    ] No existing commands found in stream
[2026-06-05 22:15:57,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:15:57,629.629 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 22:16:01,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:16:01,122.122 INFO    ] Checking for system updates...
[2026-06-05 22:16:01,160.160 INFO    ] 200
[2026-06-05 22:16:01,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:01,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:16:01,221.221 INFO    ] No update needed
[2026-06-05 22:16:01,224.224 INFO    ] Checking for camera pi updates...
[2026-06-05 22:16:01,259.259 INFO    ] 200
[2026-06-05 22:16:01,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:01,305.305 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:16:01,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:16:01,342.342 INFO    ] No camera update needed
[2026-06-05 22:16:01,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:16:01,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:16:01,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:16:01,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:16:03,406.406 INFO    ] ================================================
[2026-06-05 22:16:03,421.421 INFO    ] Launching Daemon at Fri Jun  5 22:16:03 IST 2026
[2026-06-05 22:16:03,433.433 INFO    ] ================================================
[2026-06-05 22:16:04,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:16:04
[2026-06-05 22:16:04,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:16:04,877.877 INFO    ] Initializing speech engine...
[2026-06-05 22:16:04,885.885 INFO    ] 2026-06-05 22:16:04
[2026-06-05 22:16:05,139.139 INFO    ] 2026-06-05 22:16:05
[2026-06-05 22:16:05,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:16:05,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:16:05,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:16:05,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:16:05,688.688 INFO    ] time= 05/06/2026 22:16:05
[2026-06-05 22:16:05,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:16:05,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:16:05,872.872 INFO    ] No existing commands found in stream
[2026-06-05 22:16:10,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:16:10,905.905 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 22:16:12,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:16:12,120.120 INFO    ] Checking for system updates...
[2026-06-05 22:16:12,160.160 INFO    ] 200
[2026-06-05 22:16:12,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:12,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:16:12,234.234 INFO    ] No update needed
[2026-06-05 22:16:12,237.237 INFO    ] Checking for camera pi updates...
[2026-06-05 22:16:12,277.277 INFO    ] 200
[2026-06-05 22:16:12,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:12,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:16:12,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:16:12,378.378 INFO    ] No camera update needed
[2026-06-05 22:16:12,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:16:12,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:16:12,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:16:12,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:16:14,439.439 INFO    ] ================================================
[2026-06-05 22:16:14,454.454 INFO    ] Launching Daemon at Fri Jun  5 22:16:14 IST 2026
[2026-06-05 22:16:14,465.465 INFO    ] ================================================
[2026-06-05 22:16:15,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:16:15
[2026-06-05 22:16:15,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:16:15,934.934 INFO    ] Initializing speech engine...
[2026-06-05 22:16:15,947.947 INFO    ] 2026-06-05 22:16:15
[2026-06-05 22:16:16,272.272 INFO    ] 2026-06-05 22:16:16
[2026-06-05 22:16:16,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:16:16,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:16:16,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:16:16,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:16:16,861.861 INFO    ] time= 05/06/2026 22:16:16
[2026-06-05 22:16:16,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:16:16,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:16:17,027.027 INFO    ] No existing commands found in stream
[2026-06-05 22:16:22,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:16:22,061.061 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 22:16:22,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:16:22,984.984 INFO    ] Checking for system updates...
[2026-06-05 22:16:23,025.025 INFO    ] 200
[2026-06-05 22:16:23,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:23,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:16:23,139.139 INFO    ] No update needed
[2026-06-05 22:16:23,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 22:16:23,190.190 INFO    ] 200
[2026-06-05 22:16:23,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:23,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:16:23,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:16:23,405.405 INFO    ] No camera update needed
[2026-06-05 22:16:23,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:16:23,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:16:23,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:16:23,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:16:25,467.467 INFO    ] ================================================
[2026-06-05 22:16:25,483.483 INFO    ] Launching Daemon at Fri Jun  5 22:16:25 IST 2026
[2026-06-05 22:16:25,494.494 INFO    ] ================================================
[2026-06-05 22:16:26,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:16:26
[2026-06-05 22:16:26,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:16:26,928.928 INFO    ] Initializing speech engine...
[2026-06-05 22:16:26,938.938 INFO    ] 2026-06-05 22:16:26
[2026-06-05 22:16:27,183.183 INFO    ] 2026-06-05 22:16:27
[2026-06-05 22:16:27,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:16:27,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:16:27,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:16:27,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:16:27,726.726 INFO    ] time= 05/06/2026 22:16:27
[2026-06-05 22:16:27,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:16:27,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:16:27,884.884 INFO    ] No existing commands found in stream
[2026-06-05 22:16:32,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:16:32,909.909 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 22:16:35,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:16:35,009.009 INFO    ] Checking for system updates...
[2026-06-05 22:16:35,050.050 INFO    ] 200
[2026-06-05 22:16:35,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:35,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:16:35,116.116 INFO    ] No update needed
[2026-06-05 22:16:35,118.118 INFO    ] Checking for camera pi updates...
[2026-06-05 22:16:35,160.160 INFO    ] 200
[2026-06-05 22:16:35,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:35,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:16:35,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:16:35,262.262 INFO    ] No camera update needed
[2026-06-05 22:16:35,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:16:35,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:16:35,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:16:35,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:16:37,319.319 INFO    ] ================================================
[2026-06-05 22:16:37,335.335 INFO    ] Launching Daemon at Fri Jun  5 22:16:37 IST 2026
[2026-06-05 22:16:37,345.345 INFO    ] ================================================
[2026-06-05 22:16:37,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:16:37
[2026-06-05 22:16:38,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:16:38,927.927 INFO    ] Initializing speech engine...
[2026-06-05 22:16:38,938.938 INFO    ] 2026-06-05 22:16:38
[2026-06-05 22:16:39,216.216 INFO    ] 2026-06-05 22:16:39
[2026-06-05 22:16:39,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:16:39,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:16:39,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:16:39,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:16:39,754.754 INFO    ] time= 05/06/2026 22:16:39
[2026-06-05 22:16:39,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:16:39,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:16:39,925.925 INFO    ] No existing commands found in stream
[2026-06-05 22:16:44,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:16:44,943.943 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 22:16:46,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:16:46,783.783 INFO    ] Checking for system updates...
[2026-06-05 22:16:46,826.826 INFO    ] 200
[2026-06-05 22:16:46,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:46,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:16:46,885.885 INFO    ] No update needed
[2026-06-05 22:16:46,892.892 INFO    ] Checking for camera pi updates...
[2026-06-05 22:16:46,929.929 INFO    ] 200
[2026-06-05 22:16:46,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:16:46,975.975 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:16:47,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:16:47,027.027 INFO    ] No camera update needed
[2026-06-05 22:16:47,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:16:47,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:16:47,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:16:47,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:16:49,083.083 INFO    ] ================================================
[2026-06-05 22:16:49,099.099 INFO    ] Launching Daemon at Fri Jun  5 22:16:49 IST 2026
[2026-06-05 22:16:49,109.109 INFO    ] ================================================
[2026-06-05 22:16:49,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:16:49
[2026-06-05 22:16:50,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:16:50,506.506 INFO    ] Initializing speech engine...
[2026-06-05 22:16:50,514.514 INFO    ] 2026-06-05 22:16:50
[2026-06-05 22:16:50,789.789 INFO    ] 2026-06-05 22:16:50
[2026-06-05 22:16:50,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:16:51,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:16:51,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:16:51,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:16:51,299.299 INFO    ] time= 05/06/2026 22:16:51
[2026-06-05 22:16:51,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:16:51,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:16:51,498.498 INFO    ] No existing commands found in stream
[2026-06-05 22:16:56,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:16:56,527.527 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-05 22:17:01,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:17:01,130.130 INFO    ] Checking for system updates...
[2026-06-05 22:17:01,170.170 INFO    ] 200
[2026-06-05 22:17:01,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:01,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:17:01,228.228 INFO    ] No update needed
[2026-06-05 22:17:01,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 22:17:01,267.267 INFO    ] 200
[2026-06-05 22:17:01,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:01,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:17:01,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:17:01,348.348 INFO    ] No camera update needed
[2026-06-05 22:17:01,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:17:01,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:17:01,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:17:01,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:17:03,408.408 INFO    ] ================================================
[2026-06-05 22:17:03,426.426 INFO    ] Launching Daemon at Fri Jun  5 22:17:03 IST 2026
[2026-06-05 22:17:03,444.444 INFO    ] ================================================
[2026-06-05 22:17:04,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:17:04
[2026-06-05 22:17:04,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:17:04,878.878 INFO    ] Initializing speech engine...
[2026-06-05 22:17:04,892.892 INFO    ] 2026-06-05 22:17:04
[2026-06-05 22:17:05,172.172 INFO    ] 2026-06-05 22:17:05
[2026-06-05 22:17:05,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:17:05,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:17:05,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:17:05,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:17:05,582.582 INFO    ] time= 05/06/2026 22:17:05
[2026-06-05 22:17:05,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:17:05,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:17:05,743.743 INFO    ] No existing commands found in stream
[2026-06-05 22:17:10,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:17:10,762.762 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-05 22:17:12,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:17:12,697.697 INFO    ] Checking for system updates...
[2026-06-05 22:17:12,737.737 INFO    ] 200
[2026-06-05 22:17:12,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:12,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:17:12,796.796 INFO    ] No update needed
[2026-06-05 22:17:12,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 22:17:12,835.835 INFO    ] 200
[2026-06-05 22:17:12,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:12,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:17:12,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:17:12,926.926 INFO    ] No camera update needed
[2026-06-05 22:17:12,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:17:12,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:17:12,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:17:12,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:17:14,985.985 INFO    ] ================================================
[2026-06-05 22:17:15,000.000 INFO    ] Launching Daemon at Fri Jun  5 22:17:14 IST 2026
[2026-06-05 22:17:15,011.011 INFO    ] ================================================
[2026-06-05 22:17:15,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:17:15
[2026-06-05 22:17:16,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:17:16,598.598 INFO    ] Initializing speech engine...
[2026-06-05 22:17:16,611.611 INFO    ] 2026-06-05 22:17:16
[2026-06-05 22:17:16,888.888 INFO    ] 2026-06-05 22:17:16
[2026-06-05 22:17:16,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:17:17,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:17:17,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:17:17,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:17:17,436.436 INFO    ] time= 05/06/2026 22:17:17
[2026-06-05 22:17:17,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:17:17,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:17:17,580.580 INFO    ] No existing commands found in stream
[2026-06-05 22:17:22,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:17:22,608.608 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-05 22:17:26,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:17:26,881.881 INFO    ] Checking for system updates...
[2026-06-05 22:17:26,918.918 INFO    ] 200
[2026-06-05 22:17:26,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:26,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:17:26,978.978 INFO    ] No update needed
[2026-06-05 22:17:26,981.981 INFO    ] Checking for camera pi updates...
[2026-06-05 22:17:27,017.017 INFO    ] 200
[2026-06-05 22:17:27,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:27,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:17:27,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:17:27,121.121 INFO    ] No camera update needed
[2026-06-05 22:17:27,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:17:27,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:17:27,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:17:27,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:17:29,175.175 INFO    ] ================================================
[2026-06-05 22:17:29,191.191 INFO    ] Launching Daemon at Fri Jun  5 22:17:29 IST 2026
[2026-06-05 22:17:29,201.201 INFO    ] ================================================
[2026-06-05 22:17:29,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:17:29
[2026-06-05 22:17:30,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:17:30,678.678 INFO    ] Initializing speech engine...
[2026-06-05 22:17:30,685.685 INFO    ] 2026-06-05 22:17:30
[2026-06-05 22:17:30,946.946 INFO    ] 2026-06-05 22:17:30
[2026-06-05 22:17:31,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:17:31,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:17:31,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:17:31,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:17:31,511.511 INFO    ] time= 05/06/2026 22:17:31
[2026-06-05 22:17:31,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:17:31,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:17:31,669.669 INFO    ] No existing commands found in stream
[2026-06-05 22:17:36,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:17:36,686.686 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 22:17:38,749.749 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:17:38,752.752 INFO    ] Checking for system updates...
[2026-06-05 22:17:38,792.792 INFO    ] 200
[2026-06-05 22:17:38,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:38,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:17:38,851.851 INFO    ] No update needed
[2026-06-05 22:17:38,854.854 INFO    ] Checking for camera pi updates...
[2026-06-05 22:17:38,889.889 INFO    ] 200
[2026-06-05 22:17:38,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:38,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:17:38,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:17:38,989.989 INFO    ] No camera update needed
[2026-06-05 22:17:38,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:17:38,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:17:39,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:17:39,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:17:41,049.049 INFO    ] ================================================
[2026-06-05 22:17:41,064.064 INFO    ] Launching Daemon at Fri Jun  5 22:17:41 IST 2026
[2026-06-05 22:17:41,075.075 INFO    ] ================================================
[2026-06-05 22:17:41,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:17:41
[2026-06-05 22:17:42,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:17:42,536.536 INFO    ] Initializing speech engine...
[2026-06-05 22:17:42,546.546 INFO    ] 2026-06-05 22:17:42
[2026-06-05 22:17:42,805.805 INFO    ] 2026-06-05 22:17:42
[2026-06-05 22:17:42,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:17:43,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:17:43,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:17:43,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:17:43,348.348 INFO    ] time= 05/06/2026 22:17:43
[2026-06-05 22:17:43,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:17:43,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:17:43,484.484 INFO    ] No existing commands found in stream
[2026-06-05 22:17:48,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:17:48,510.510 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-05 22:17:52,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:17:52,871.871 INFO    ] Checking for system updates...
[2026-06-05 22:17:52,907.907 INFO    ] 200
[2026-06-05 22:17:52,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:52,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:17:52,971.971 INFO    ] No update needed
[2026-06-05 22:17:52,974.974 INFO    ] Checking for camera pi updates...
[2026-06-05 22:17:53,008.008 INFO    ] 200
[2026-06-05 22:17:53,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:17:53,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:17:53,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:17:53,118.118 INFO    ] No camera update needed
[2026-06-05 22:17:53,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:17:53,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:17:53,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:17:53,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:17:55,175.175 INFO    ] ================================================
[2026-06-05 22:17:55,191.191 INFO    ] Launching Daemon at Fri Jun  5 22:17:55 IST 2026
[2026-06-05 22:17:55,201.201 INFO    ] ================================================
[2026-06-05 22:17:55,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:17:55
[2026-06-05 22:17:56,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:17:56,809.809 INFO    ] Initializing speech engine...
[2026-06-05 22:17:56,817.817 INFO    ] 2026-06-05 22:17:56
[2026-06-05 22:17:57,087.087 INFO    ] 2026-06-05 22:17:57
[2026-06-05 22:17:57,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:17:57,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:17:57,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:17:57,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:17:57,582.582 INFO    ] time= 05/06/2026 22:17:57
[2026-06-05 22:17:57,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:17:57,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:17:57,795.795 INFO    ] No existing commands found in stream
[2026-06-05 22:18:02,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:18:02,828.828 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-05 22:18:04,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:18:04,917.917 INFO    ] Checking for system updates...
[2026-06-05 22:18:04,957.957 INFO    ] 200
[2026-06-05 22:18:04,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:05,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:18:05,024.024 INFO    ] No update needed
[2026-06-05 22:18:05,028.028 INFO    ] Checking for camera pi updates...
[2026-06-05 22:18:05,063.063 INFO    ] 200
[2026-06-05 22:18:05,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:05,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:18:05,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:18:05,162.162 INFO    ] No camera update needed
[2026-06-05 22:18:05,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:18:05,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:18:05,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:18:05,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:18:07,218.218 INFO    ] ================================================
[2026-06-05 22:18:07,233.233 INFO    ] Launching Daemon at Fri Jun  5 22:18:07 IST 2026
[2026-06-05 22:18:07,243.243 INFO    ] ================================================
[2026-06-05 22:18:07,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:18:07
[2026-06-05 22:18:08,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:18:08,674.674 INFO    ] Initializing speech engine...
[2026-06-05 22:18:08,699.699 INFO    ] 2026-06-05 22:18:08
[2026-06-05 22:18:08,971.971 INFO    ] 2026-06-05 22:18:08
[2026-06-05 22:18:09,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:18:09,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:18:09,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:18:09,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:18:09,477.477 INFO    ] time= 05/06/2026 22:18:09
[2026-06-05 22:18:09,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:18:09,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:18:09,747.747 INFO    ] No existing commands found in stream
[2026-06-05 22:18:14,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:18:14,775.775 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 22:18:16,906.906 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:18:16,909.909 INFO    ] Checking for system updates...
[2026-06-05 22:18:16,945.945 INFO    ] 200
[2026-06-05 22:18:16,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:17,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:18:17,003.003 INFO    ] No update needed
[2026-06-05 22:18:17,005.005 INFO    ] Checking for camera pi updates...
[2026-06-05 22:18:17,039.039 INFO    ] 200
[2026-06-05 22:18:17,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:17,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:18:17,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:18:17,133.133 INFO    ] No camera update needed
[2026-06-05 22:18:17,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:18:17,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:18:17,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:18:17,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:18:19,190.190 INFO    ] ================================================
[2026-06-05 22:18:19,206.206 INFO    ] Launching Daemon at Fri Jun  5 22:18:19 IST 2026
[2026-06-05 22:18:19,217.217 INFO    ] ================================================
[2026-06-05 22:18:19,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:18:19
[2026-06-05 22:18:20,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:18:20,649.649 INFO    ] Initializing speech engine...
[2026-06-05 22:18:20,657.657 INFO    ] 2026-06-05 22:18:20
[2026-06-05 22:18:20,908.908 INFO    ] 2026-06-05 22:18:20
[2026-06-05 22:18:20,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:18:21,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:18:21,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:18:21,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:18:21,370.370 INFO    ] time= 05/06/2026 22:18:21
[2026-06-05 22:18:21,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:18:21,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:18:21,628.628 INFO    ] No existing commands found in stream
[2026-06-05 22:18:26,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:18:26,651.651 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 22:18:27,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:18:27,879.879 INFO    ] Checking for system updates...
[2026-06-05 22:18:27,918.918 INFO    ] 200
[2026-06-05 22:18:27,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:27,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:18:27,977.977 INFO    ] No update needed
[2026-06-05 22:18:27,980.980 INFO    ] Checking for camera pi updates...
[2026-06-05 22:18:28,017.017 INFO    ] 200
[2026-06-05 22:18:28,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:28,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:18:28,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:18:28,211.211 INFO    ] No camera update needed
[2026-06-05 22:18:28,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:18:28,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:18:28,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:18:28,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:18:30,268.268 INFO    ] ================================================
[2026-06-05 22:18:30,283.283 INFO    ] Launching Daemon at Fri Jun  5 22:18:30 IST 2026
[2026-06-05 22:18:30,294.294 INFO    ] ================================================
[2026-06-05 22:18:30,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:18:30
[2026-06-05 22:18:31,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:18:31,731.731 INFO    ] Initializing speech engine...
[2026-06-05 22:18:31,738.738 INFO    ] 2026-06-05 22:18:31
[2026-06-05 22:18:31,998.998 INFO    ] 2026-06-05 22:18:31
[2026-06-05 22:18:32,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:18:32,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:18:32,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:18:32,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:18:32,522.522 INFO    ] time= 05/06/2026 22:18:32
[2026-06-05 22:18:32,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:18:32,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:18:32,726.726 INFO    ] No existing commands found in stream
[2026-06-05 22:18:37,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:18:37,757.757 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 22:18:40,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:18:40,944.944 INFO    ] Checking for system updates...
[2026-06-05 22:18:40,982.982 INFO    ] 200
[2026-06-05 22:18:40,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:41,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:18:41,049.049 INFO    ] No update needed
[2026-06-05 22:18:41,052.052 INFO    ] Checking for camera pi updates...
[2026-06-05 22:18:41,087.087 INFO    ] 200
[2026-06-05 22:18:41,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:41,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:18:41,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:18:41,186.186 INFO    ] No camera update needed
[2026-06-05 22:18:41,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:18:41,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:18:41,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:18:41,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:18:43,246.246 INFO    ] ================================================
[2026-06-05 22:18:43,261.261 INFO    ] Launching Daemon at Fri Jun  5 22:18:43 IST 2026
[2026-06-05 22:18:43,271.271 INFO    ] ================================================
[2026-06-05 22:18:43,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:18:43
[2026-06-05 22:18:44,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:18:44,736.736 INFO    ] Initializing speech engine...
[2026-06-05 22:18:44,746.746 INFO    ] 2026-06-05 22:18:44
[2026-06-05 22:18:45,005.005 INFO    ] 2026-06-05 22:18:44
[2026-06-05 22:18:45,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:18:45,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:18:45,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:18:45,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:18:45,480.480 INFO    ] time= 05/06/2026 22:18:45
[2026-06-05 22:18:45,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:18:45,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:18:45,702.702 INFO    ] No existing commands found in stream
[2026-06-05 22:18:50,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:18:50,720.720 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 22:18:53,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:18:53,111.111 INFO    ] Checking for system updates...
[2026-06-05 22:18:53,148.148 INFO    ] 200
[2026-06-05 22:18:53,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:53,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:18:53,206.206 INFO    ] No update needed
[2026-06-05 22:18:53,208.208 INFO    ] Checking for camera pi updates...
[2026-06-05 22:18:53,242.242 INFO    ] 200
[2026-06-05 22:18:53,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:18:53,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:18:53,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:18:53,333.333 INFO    ] No camera update needed
[2026-06-05 22:18:53,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:18:53,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:18:53,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:18:53,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:18:55,388.388 INFO    ] ================================================
[2026-06-05 22:18:55,403.403 INFO    ] Launching Daemon at Fri Jun  5 22:18:55 IST 2026
[2026-06-05 22:18:55,414.414 INFO    ] ================================================
[2026-06-05 22:18:55,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:18:55
[2026-06-05 22:18:56,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:18:56,818.818 INFO    ] Initializing speech engine...
[2026-06-05 22:18:56,832.832 INFO    ] 2026-06-05 22:18:56
[2026-06-05 22:18:57,097.097 INFO    ] 2026-06-05 22:18:57
[2026-06-05 22:18:57,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:18:57,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:18:57,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:18:57,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:18:57,633.633 INFO    ] time= 05/06/2026 22:18:57
[2026-06-05 22:18:57,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:18:57,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:18:57,814.814 INFO    ] No existing commands found in stream
[2026-06-05 22:19:02,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:19:02,840.840 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-05 22:19:05,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:19:05,500.500 INFO    ] Checking for system updates...
[2026-06-05 22:19:05,536.536 INFO    ] 200
[2026-06-05 22:19:05,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:05,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:19:05,597.597 INFO    ] No update needed
[2026-06-05 22:19:05,600.600 INFO    ] Checking for camera pi updates...
[2026-06-05 22:19:05,634.634 INFO    ] 200
[2026-06-05 22:19:05,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:05,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:19:05,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:19:05,759.759 INFO    ] No camera update needed
[2026-06-05 22:19:05,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:19:05,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:19:05,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:19:05,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:19:07,815.815 INFO    ] ================================================
[2026-06-05 22:19:07,831.831 INFO    ] Launching Daemon at Fri Jun  5 22:19:07 IST 2026
[2026-06-05 22:19:07,841.841 INFO    ] ================================================
[2026-06-05 22:19:08,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:19:08
[2026-06-05 22:19:09,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:19:09,353.353 INFO    ] Initializing speech engine...
[2026-06-05 22:19:09,361.361 INFO    ] 2026-06-05 22:19:09
[2026-06-05 22:19:09,622.622 INFO    ] 2026-06-05 22:19:09
[2026-06-05 22:19:09,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:19:09,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:19:09,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:19:10,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:19:10,111.111 INFO    ] time= 05/06/2026 22:19:10
[2026-06-05 22:19:10,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:19:10,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:19:10,295.295 INFO    ] No existing commands found in stream
[2026-06-05 22:19:15,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:19:15,323.323 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 22:19:18,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:19:18,738.738 INFO    ] Checking for system updates...
[2026-06-05 22:19:18,776.776 INFO    ] 200
[2026-06-05 22:19:18,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:18,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:19:18,848.848 INFO    ] No update needed
[2026-06-05 22:19:18,851.851 INFO    ] Checking for camera pi updates...
[2026-06-05 22:19:18,893.893 INFO    ] 200
[2026-06-05 22:19:18,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:18,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:19:18,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:19:18,986.986 INFO    ] No camera update needed
[2026-06-05 22:19:18,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:19:18,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:19:18,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:19:19,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:19:21,043.043 INFO    ] ================================================
[2026-06-05 22:19:21,059.059 INFO    ] Launching Daemon at Fri Jun  5 22:19:21 IST 2026
[2026-06-05 22:19:21,070.070 INFO    ] ================================================
[2026-06-05 22:19:21,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:19:21
[2026-06-05 22:19:22,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:19:22,494.494 INFO    ] Initializing speech engine...
[2026-06-05 22:19:22,505.505 INFO    ] 2026-06-05 22:19:22
[2026-06-05 22:19:22,755.755 INFO    ] 2026-06-05 22:19:22
[2026-06-05 22:19:22,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:19:23,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:19:23,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:19:23,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:19:23,258.258 INFO    ] time= 05/06/2026 22:19:23
[2026-06-05 22:19:23,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:19:23,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:19:23,484.484 INFO    ] No existing commands found in stream
[2026-06-05 22:19:28,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:19:28,500.500 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 22:19:32,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:19:32,127.127 INFO    ] Checking for system updates...
[2026-06-05 22:19:32,167.167 INFO    ] 200
[2026-06-05 22:19:32,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:32,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:19:32,242.242 INFO    ] No update needed
[2026-06-05 22:19:32,245.245 INFO    ] Checking for camera pi updates...
[2026-06-05 22:19:32,282.282 INFO    ] 200
[2026-06-05 22:19:32,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:32,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:19:32,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:19:32,380.380 INFO    ] No camera update needed
[2026-06-05 22:19:32,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:19:32,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:19:32,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:19:32,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:19:34,444.444 INFO    ] ================================================
[2026-06-05 22:19:34,460.460 INFO    ] Launching Daemon at Fri Jun  5 22:19:34 IST 2026
[2026-06-05 22:19:34,471.471 INFO    ] ================================================
[2026-06-05 22:19:35,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:19:35
[2026-06-05 22:19:35,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:19:35,919.919 INFO    ] Initializing speech engine...
[2026-06-05 22:19:35,929.929 INFO    ] 2026-06-05 22:19:35
[2026-06-05 22:19:36,180.180 INFO    ] 2026-06-05 22:19:36
[2026-06-05 22:19:36,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:19:36,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:19:36,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:19:36,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:19:36,752.752 INFO    ] time= 05/06/2026 22:19:36
[2026-06-05 22:19:36,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:19:36,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:19:36,923.923 INFO    ] No existing commands found in stream
[2026-06-05 22:19:41,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:19:41,942.942 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 22:19:42,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:19:42,434.434 INFO    ] Checking for system updates...
[2026-06-05 22:19:42,471.471 INFO    ] 200
[2026-06-05 22:19:42,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:42,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:19:42,528.528 INFO    ] No update needed
[2026-06-05 22:19:42,531.531 INFO    ] Checking for camera pi updates...
[2026-06-05 22:19:42,569.569 INFO    ] 200
[2026-06-05 22:19:42,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:42,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:19:42,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:19:42,665.665 INFO    ] No camera update needed
[2026-06-05 22:19:42,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:19:42,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:19:42,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:19:42,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:19:44,722.722 INFO    ] ================================================
[2026-06-05 22:19:44,737.737 INFO    ] Launching Daemon at Fri Jun  5 22:19:44 IST 2026
[2026-06-05 22:19:44,749.749 INFO    ] ================================================
[2026-06-05 22:19:45,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:19:45
[2026-06-05 22:19:45,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:19:46,204.204 INFO    ] Initializing speech engine...
[2026-06-05 22:19:46,216.216 INFO    ] 2026-06-05 22:19:46
[2026-06-05 22:19:46,466.466 INFO    ] 2026-06-05 22:19:46
[2026-06-05 22:19:46,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:19:46,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:19:46,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:19:46,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:19:46,944.944 INFO    ] time= 05/06/2026 22:19:46
[2026-06-05 22:19:46,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:19:47,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:19:47,136.136 INFO    ] No existing commands found in stream
[2026-06-05 22:19:52,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:19:52,153.153 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 22:19:54,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:19:54,137.137 INFO    ] Checking for system updates...
[2026-06-05 22:19:54,175.175 INFO    ] 200
[2026-06-05 22:19:54,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:54,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:19:54,238.238 INFO    ] No update needed
[2026-06-05 22:19:54,241.241 INFO    ] Checking for camera pi updates...
[2026-06-05 22:19:54,276.276 INFO    ] 200
[2026-06-05 22:19:54,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:19:54,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:19:54,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:19:54,394.394 INFO    ] No camera update needed
[2026-06-05 22:19:54,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:19:54,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:19:54,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:19:54,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:19:56,454.454 INFO    ] ================================================
[2026-06-05 22:19:56,469.469 INFO    ] Launching Daemon at Fri Jun  5 22:19:56 IST 2026
[2026-06-05 22:19:56,480.480 INFO    ] ================================================
[2026-06-05 22:19:57,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:19:57
[2026-06-05 22:19:57,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:19:57,891.891 INFO    ] Initializing speech engine...
[2026-06-05 22:19:57,900.900 INFO    ] 2026-06-05 22:19:57
[2026-06-05 22:19:58,175.175 INFO    ] 2026-06-05 22:19:58
[2026-06-05 22:19:58,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:19:58,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:19:58,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:19:58,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:19:58,621.621 INFO    ] time= 05/06/2026 22:19:58
[2026-06-05 22:19:58,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:19:58,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:19:58,818.818 INFO    ] No existing commands found in stream
[2026-06-05 22:20:03,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:20:03,845.845 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-05 22:20:08,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:20:08,003.003 INFO    ] Checking for system updates...
[2026-06-05 22:20:08,040.040 INFO    ] 200
[2026-06-05 22:20:08,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:08,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:20:08,098.098 INFO    ] No update needed
[2026-06-05 22:20:08,100.100 INFO    ] Checking for camera pi updates...
[2026-06-05 22:20:08,138.138 INFO    ] 200
[2026-06-05 22:20:08,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:08,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:20:08,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:20:08,222.222 INFO    ] No camera update needed
[2026-06-05 22:20:08,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:20:08,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:20:08,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:20:08,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:20:10,279.279 INFO    ] ================================================
[2026-06-05 22:20:10,294.294 INFO    ] Launching Daemon at Fri Jun  5 22:20:10 IST 2026
[2026-06-05 22:20:10,305.305 INFO    ] ================================================
[2026-06-05 22:20:10,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:20:10
[2026-06-05 22:20:11,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:20:11,742.742 INFO    ] Initializing speech engine...
[2026-06-05 22:20:11,750.750 INFO    ] 2026-06-05 22:20:11
[2026-06-05 22:20:12,009.009 INFO    ] 2026-06-05 22:20:12
[2026-06-05 22:20:12,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:20:12,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:20:12,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:20:12,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:20:12,551.551 INFO    ] time= 05/06/2026 22:20:12
[2026-06-05 22:20:12,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:20:12,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:20:12,690.690 INFO    ] No existing commands found in stream
[2026-06-05 22:20:17,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:20:17,715.715 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 22:20:19,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:20:19,180.180 INFO    ] Checking for system updates...
[2026-06-05 22:20:19,216.216 INFO    ] 200
[2026-06-05 22:20:19,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:19,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:20:19,274.274 INFO    ] No update needed
[2026-06-05 22:20:19,277.277 INFO    ] Checking for camera pi updates...
[2026-06-05 22:20:19,310.310 INFO    ] 200
[2026-06-05 22:20:19,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:19,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:20:19,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:20:19,388.388 INFO    ] No camera update needed
[2026-06-05 22:20:19,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:20:19,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:20:19,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:20:19,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:20:21,447.447 INFO    ] ================================================
[2026-06-05 22:20:21,462.462 INFO    ] Launching Daemon at Fri Jun  5 22:20:21 IST 2026
[2026-06-05 22:20:21,474.474 INFO    ] ================================================
[2026-06-05 22:20:22,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:20:22
[2026-06-05 22:20:22,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:20:23,120.120 INFO    ] Initializing speech engine...
[2026-06-05 22:20:23,127.127 INFO    ] 2026-06-05 22:20:23
[2026-06-05 22:20:23,413.413 INFO    ] 2026-06-05 22:20:23
[2026-06-05 22:20:23,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:20:23,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:20:23,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:20:23,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:20:23,945.945 INFO    ] time= 05/06/2026 22:20:23
[2026-06-05 22:20:23,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:20:23,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:20:24,110.110 INFO    ] No existing commands found in stream
[2026-06-05 22:20:29,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:20:29,155.155 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 22:20:31,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:20:31,682.682 INFO    ] Checking for system updates...
[2026-06-05 22:20:31,719.719 INFO    ] 200
[2026-06-05 22:20:31,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:31,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:20:31,779.779 INFO    ] No update needed
[2026-06-05 22:20:31,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 22:20:31,818.818 INFO    ] 200
[2026-06-05 22:20:31,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:31,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:20:32,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:20:32,006.006 INFO    ] No camera update needed
[2026-06-05 22:20:32,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:20:32,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:20:32,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:20:32,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:20:34,076.076 INFO    ] ================================================
[2026-06-05 22:20:34,092.092 INFO    ] Launching Daemon at Fri Jun  5 22:20:34 IST 2026
[2026-06-05 22:20:34,103.103 INFO    ] ================================================
[2026-06-05 22:20:34,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:20:34
[2026-06-05 22:20:35,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:20:35,678.678 INFO    ] Initializing speech engine...
[2026-06-05 22:20:35,690.690 INFO    ] 2026-06-05 22:20:35
[2026-06-05 22:20:36,002.002 INFO    ] 2026-06-05 22:20:35
[2026-06-05 22:20:36,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:20:36,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:20:36,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:20:36,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:20:36,724.724 INFO    ] time= 05/06/2026 22:20:36
[2026-06-05 22:20:36,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:20:36,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:20:36,934.934 INFO    ] No existing commands found in stream
[2026-06-05 22:20:41,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:20:41,962.962 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 22:20:44,923.923 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:20:44,926.926 INFO    ] Checking for system updates...
[2026-06-05 22:20:44,968.968 INFO    ] 200
[2026-06-05 22:20:44,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:45,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:20:45,038.038 INFO    ] No update needed
[2026-06-05 22:20:45,040.040 INFO    ] Checking for camera pi updates...
[2026-06-05 22:20:45,081.081 INFO    ] 200
[2026-06-05 22:20:45,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:45,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:20:45,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:20:45,183.183 INFO    ] No camera update needed
[2026-06-05 22:20:45,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:20:45,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:20:45,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:20:45,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:20:47,244.244 INFO    ] ================================================
[2026-06-05 22:20:47,260.260 INFO    ] Launching Daemon at Fri Jun  5 22:20:47 IST 2026
[2026-06-05 22:20:47,271.271 INFO    ] ================================================
[2026-06-05 22:20:47,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:20:47
[2026-06-05 22:20:48,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:20:48,721.721 INFO    ] Initializing speech engine...
[2026-06-05 22:20:48,727.727 INFO    ] 2026-06-05 22:20:48
[2026-06-05 22:20:49,003.003 INFO    ] 2026-06-05 22:20:48
[2026-06-05 22:20:49,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:20:49,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:20:49,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:20:49,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:20:49,410.410 INFO    ] time= 05/06/2026 22:20:49
[2026-06-05 22:20:49,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:20:49,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:20:49,555.555 INFO    ] No existing commands found in stream
[2026-06-05 22:20:54,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:20:54,588.588 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 22:20:55,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:20:55,519.519 INFO    ] Checking for system updates...
[2026-06-05 22:20:55,560.560 INFO    ] 200
[2026-06-05 22:20:55,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:55,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:20:55,617.617 INFO    ] No update needed
[2026-06-05 22:20:55,620.620 INFO    ] Checking for camera pi updates...
[2026-06-05 22:20:55,653.653 INFO    ] 200
[2026-06-05 22:20:55,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:20:55,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:20:55,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:20:55,754.754 INFO    ] No camera update needed
[2026-06-05 22:20:55,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:20:55,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:20:55,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:20:55,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:20:57,810.810 INFO    ] ================================================
[2026-06-05 22:20:57,825.825 INFO    ] Launching Daemon at Fri Jun  5 22:20:57 IST 2026
[2026-06-05 22:20:57,837.837 INFO    ] ================================================
[2026-06-05 22:20:58,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:20:58
[2026-06-05 22:20:59,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:20:59,474.474 INFO    ] Initializing speech engine...
[2026-06-05 22:20:59,480.480 INFO    ] 2026-06-05 22:20:59
[2026-06-05 22:20:59,756.756 INFO    ] 2026-06-05 22:20:59
[2026-06-05 22:20:59,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:21:01,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:21:01,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:21:02,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:21:02,032.032 INFO    ] time= 05/06/2026 22:21:02
[2026-06-05 22:21:02,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:21:02,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:21:02,109.109 INFO    ] No existing commands found in stream
[2026-06-05 22:21:07,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:21:07,121.121 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 22:21:08,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:21:08,038.038 INFO    ] Checking for system updates...
[2026-06-05 22:21:08,074.074 INFO    ] 200
[2026-06-05 22:21:08,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:08,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:21:08,134.134 INFO    ] No update needed
[2026-06-05 22:21:08,137.137 INFO    ] Checking for camera pi updates...
[2026-06-05 22:21:08,172.172 INFO    ] 200
[2026-06-05 22:21:08,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:08,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:21:08,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:21:08,260.260 INFO    ] No camera update needed
[2026-06-05 22:21:08,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:21:08,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:21:08,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:21:08,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:21:10,315.315 INFO    ] ================================================
[2026-06-05 22:21:10,332.332 INFO    ] Launching Daemon at Fri Jun  5 22:21:10 IST 2026
[2026-06-05 22:21:10,343.343 INFO    ] ================================================
[2026-06-05 22:21:10,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:21:10
[2026-06-05 22:21:11,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:21:11,813.813 INFO    ] Initializing speech engine...
[2026-06-05 22:21:11,820.820 INFO    ] 2026-06-05 22:21:11
[2026-06-05 22:21:12,084.084 INFO    ] 2026-06-05 22:21:12
[2026-06-05 22:21:12,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:21:12,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:21:12,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:21:12,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:21:12,639.639 INFO    ] time= 05/06/2026 22:21:12
[2026-06-05 22:21:12,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:21:12,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:21:12,794.794 INFO    ] No existing commands found in stream
[2026-06-05 22:21:17,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:21:17,810.810 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 22:21:20,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:21:20,380.380 INFO    ] Checking for system updates...
[2026-06-05 22:21:20,418.418 INFO    ] 200
[2026-06-05 22:21:20,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:20,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:21:20,476.476 INFO    ] No update needed
[2026-06-05 22:21:20,479.479 INFO    ] Checking for camera pi updates...
[2026-06-05 22:21:20,517.517 INFO    ] 200
[2026-06-05 22:21:20,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:20,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:21:20,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:21:20,609.609 INFO    ] No camera update needed
[2026-06-05 22:21:20,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:21:20,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:21:20,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:21:20,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:21:22,667.667 INFO    ] ================================================
[2026-06-05 22:21:22,682.682 INFO    ] Launching Daemon at Fri Jun  5 22:21:22 IST 2026
[2026-06-05 22:21:22,693.693 INFO    ] ================================================
[2026-06-05 22:21:23,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:21:23
[2026-06-05 22:21:23,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:21:24,236.236 INFO    ] Initializing speech engine...
[2026-06-05 22:21:24,246.246 INFO    ] 2026-06-05 22:21:24
[2026-06-05 22:21:24,562.562 INFO    ] 2026-06-05 22:21:24
[2026-06-05 22:21:24,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:21:24,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:21:25,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:21:25,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:21:25,157.157 INFO    ] time= 05/06/2026 22:21:25
[2026-06-05 22:21:25,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:21:25,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:21:25,387.387 INFO    ] No existing commands found in stream
[2026-06-05 22:21:30,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:21:30,417.417 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 22:21:32,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:21:32,948.948 INFO    ] Checking for system updates...
[2026-06-05 22:21:32,986.986 INFO    ] 200
[2026-06-05 22:21:32,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:33,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:21:33,047.047 INFO    ] No update needed
[2026-06-05 22:21:33,050.050 INFO    ] Checking for camera pi updates...
[2026-06-05 22:21:33,084.084 INFO    ] 200
[2026-06-05 22:21:33,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:33,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:21:33,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:21:33,164.164 INFO    ] No camera update needed
[2026-06-05 22:21:33,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:21:33,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:21:33,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:21:33,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:21:35,220.220 INFO    ] ================================================
[2026-06-05 22:21:35,242.242 INFO    ] Launching Daemon at Fri Jun  5 22:21:35 IST 2026
[2026-06-05 22:21:35,253.253 INFO    ] ================================================
[2026-06-05 22:21:35,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:21:35
[2026-06-05 22:21:36,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:21:36,687.687 INFO    ] Initializing speech engine...
[2026-06-05 22:21:36,693.693 INFO    ] 2026-06-05 22:21:36
[2026-06-05 22:21:36,976.976 INFO    ] 2026-06-05 22:21:36
[2026-06-05 22:21:37,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:21:37,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:21:37,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:21:37,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:21:37,474.474 INFO    ] time= 05/06/2026 22:21:37
[2026-06-05 22:21:37,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:21:37,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:21:37,695.695 INFO    ] No existing commands found in stream
[2026-06-05 22:21:42,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:21:42,715.715 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 22:21:45,539.539 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:21:45,541.541 INFO    ] Checking for system updates...
[2026-06-05 22:21:45,581.581 INFO    ] 200
[2026-06-05 22:21:45,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:45,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:21:45,640.640 INFO    ] No update needed
[2026-06-05 22:21:45,642.642 INFO    ] Checking for camera pi updates...
[2026-06-05 22:21:45,680.680 INFO    ] 200
[2026-06-05 22:21:45,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:45,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:21:45,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:21:45,781.781 INFO    ] No camera update needed
[2026-06-05 22:21:45,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:21:45,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:21:45,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:21:45,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:21:47,838.838 INFO    ] ================================================
[2026-06-05 22:21:47,852.852 INFO    ] Launching Daemon at Fri Jun  5 22:21:47 IST 2026
[2026-06-05 22:21:47,863.863 INFO    ] ================================================
[2026-06-05 22:21:48,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:21:48
[2026-06-05 22:21:49,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:21:49,335.335 INFO    ] Initializing speech engine...
[2026-06-05 22:21:49,342.342 INFO    ] 2026-06-05 22:21:49
[2026-06-05 22:21:49,607.607 INFO    ] 2026-06-05 22:21:49
[2026-06-05 22:21:49,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:21:49,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:21:49,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:21:50,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:21:50,100.100 INFO    ] time= 05/06/2026 22:21:50
[2026-06-05 22:21:50,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:21:50,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:21:50,297.297 INFO    ] No existing commands found in stream
[2026-06-05 22:21:55,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:21:55,320.320 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 22:21:58,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:21:58,766.766 INFO    ] Checking for system updates...
[2026-06-05 22:21:58,812.812 INFO    ] 200
[2026-06-05 22:21:58,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:58,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:21:58,943.943 INFO    ] No update needed
[2026-06-05 22:21:58,950.950 INFO    ] Checking for camera pi updates...
[2026-06-05 22:21:58,994.994 INFO    ] 200
[2026-06-05 22:21:58,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:21:59,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:21:59,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:21:59,097.097 INFO    ] No camera update needed
[2026-06-05 22:21:59,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:21:59,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:21:59,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:21:59,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:22:01,155.155 INFO    ] ================================================
[2026-06-05 22:22:01,171.171 INFO    ] Launching Daemon at Fri Jun  5 22:22:01 IST 2026
[2026-06-05 22:22:01,182.182 INFO    ] ================================================
[2026-06-05 22:22:01,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:22:01
[2026-06-05 22:22:02,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:22:03,293.293 INFO    ] Initializing speech engine...
[2026-06-05 22:22:03,302.302 INFO    ] 2026-06-05 22:22:03
[2026-06-05 22:22:03,600.600 INFO    ] 2026-06-05 22:22:03
[2026-06-05 22:22:03,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:22:03,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:22:03,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:22:04,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:22:04,131.131 INFO    ] time= 05/06/2026 22:22:04
[2026-06-05 22:22:04,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:22:04,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:22:04,363.363 INFO    ] No existing commands found in stream
[2026-06-05 22:22:09,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:22:09,387.387 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-05 22:22:11,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:22:11,600.600 INFO    ] Checking for system updates...
[2026-06-05 22:22:11,637.637 INFO    ] 200
[2026-06-05 22:22:11,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:11,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:22:11,695.695 INFO    ] No update needed
[2026-06-05 22:22:11,698.698 INFO    ] Checking for camera pi updates...
[2026-06-05 22:22:11,736.736 INFO    ] 200
[2026-06-05 22:22:11,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:11,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:22:11,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:22:11,834.834 INFO    ] No camera update needed
[2026-06-05 22:22:11,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:22:11,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:22:11,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:22:11,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:22:13,890.890 INFO    ] ================================================
[2026-06-05 22:22:13,905.905 INFO    ] Launching Daemon at Fri Jun  5 22:22:13 IST 2026
[2026-06-05 22:22:13,916.916 INFO    ] ================================================
[2026-06-05 22:22:14,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:22:14
[2026-06-05 22:22:15,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:22:15,425.425 INFO    ] Initializing speech engine...
[2026-06-05 22:22:15,439.439 INFO    ] 2026-06-05 22:22:15
[2026-06-05 22:22:15,724.724 INFO    ] 2026-06-05 22:22:15
[2026-06-05 22:22:15,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:22:16,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:22:16,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:22:16,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:22:16,269.269 INFO    ] time= 05/06/2026 22:22:16
[2026-06-05 22:22:16,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:22:16,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:22:16,429.429 INFO    ] No existing commands found in stream
[2026-06-05 22:22:21,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:22:21,462.462 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 22:22:22,742.742 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:22:22,745.745 INFO    ] Checking for system updates...
[2026-06-05 22:22:22,782.782 INFO    ] 200
[2026-06-05 22:22:22,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:22,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:22:22,842.842 INFO    ] No update needed
[2026-06-05 22:22:22,844.844 INFO    ] Checking for camera pi updates...
[2026-06-05 22:22:22,879.879 INFO    ] 200
[2026-06-05 22:22:22,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:22,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:22:22,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:22:22,977.977 INFO    ] No camera update needed
[2026-06-05 22:22:22,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:22:22,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:22:22,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:22:22,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:22:25,036.036 INFO    ] ================================================
[2026-06-05 22:22:25,054.054 INFO    ] Launching Daemon at Fri Jun  5 22:22:25 IST 2026
[2026-06-05 22:22:25,064.064 INFO    ] ================================================
[2026-06-05 22:22:25,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:22:25
[2026-06-05 22:22:26,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:22:26,596.596 INFO    ] Initializing speech engine...
[2026-06-05 22:22:26,602.602 INFO    ] 2026-06-05 22:22:26
[2026-06-05 22:22:26,860.860 INFO    ] 2026-06-05 22:22:26
[2026-06-05 22:22:26,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:22:27,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:22:27,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:22:27,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:22:27,408.408 INFO    ] time= 05/06/2026 22:22:27
[2026-06-05 22:22:27,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:22:27,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:22:27,575.575 INFO    ] No existing commands found in stream
[2026-06-05 22:22:32,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:22:32,593.593 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 22:22:35,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:22:35,088.088 INFO    ] Checking for system updates...
[2026-06-05 22:22:35,124.124 INFO    ] 200
[2026-06-05 22:22:35,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:35,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:22:35,184.184 INFO    ] No update needed
[2026-06-05 22:22:35,186.186 INFO    ] Checking for camera pi updates...
[2026-06-05 22:22:35,220.220 INFO    ] 200
[2026-06-05 22:22:35,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:35,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:22:35,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:22:35,400.400 INFO    ] No camera update needed
[2026-06-05 22:22:35,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:22:35,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:22:35,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:22:35,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:22:37,456.456 INFO    ] ================================================
[2026-06-05 22:22:37,471.471 INFO    ] Launching Daemon at Fri Jun  5 22:22:37 IST 2026
[2026-06-05 22:22:37,482.482 INFO    ] ================================================
[2026-06-05 22:22:38,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:22:38
[2026-06-05 22:22:38,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:22:38,914.914 INFO    ] Initializing speech engine...
[2026-06-05 22:22:38,923.923 INFO    ] 2026-06-05 22:22:38
[2026-06-05 22:22:39,222.222 INFO    ] 2026-06-05 22:22:39
[2026-06-05 22:22:39,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:22:39,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:22:39,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:22:39,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:22:39,640.640 INFO    ] time= 05/06/2026 22:22:39
[2026-06-05 22:22:39,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:22:39,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:22:39,808.808 INFO    ] No existing commands found in stream
[2026-06-05 22:22:44,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:22:44,836.836 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 22:22:45,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:22:45,745.745 INFO    ] Checking for system updates...
[2026-06-05 22:22:45,782.782 INFO    ] 200
[2026-06-05 22:22:45,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:45,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:22:45,848.848 INFO    ] No update needed
[2026-06-05 22:22:45,850.850 INFO    ] Checking for camera pi updates...
[2026-06-05 22:22:45,887.887 INFO    ] 200
[2026-06-05 22:22:45,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:45,935.935 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:22:45,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:22:45,989.989 INFO    ] No camera update needed
[2026-06-05 22:22:45,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:22:45,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:22:46,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:22:46,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:22:48,045.045 INFO    ] ================================================
[2026-06-05 22:22:48,060.060 INFO    ] Launching Daemon at Fri Jun  5 22:22:48 IST 2026
[2026-06-05 22:22:48,071.071 INFO    ] ================================================
[2026-06-05 22:22:48,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:22:48
[2026-06-05 22:22:49,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:22:49,559.559 INFO    ] Initializing speech engine...
[2026-06-05 22:22:49,574.574 INFO    ] 2026-06-05 22:22:49
[2026-06-05 22:22:49,868.868 INFO    ] 2026-06-05 22:22:49
[2026-06-05 22:22:49,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:22:50,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:22:50,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:22:50,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:22:50,378.378 INFO    ] time= 05/06/2026 22:22:50
[2026-06-05 22:22:50,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:22:50,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:22:50,577.577 INFO    ] No existing commands found in stream
[2026-06-05 22:22:55,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:22:55,592.592 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 22:22:58,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:22:58,864.864 INFO    ] Checking for system updates...
[2026-06-05 22:22:58,900.900 INFO    ] 200
[2026-06-05 22:22:58,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:58,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:22:58,958.958 INFO    ] No update needed
[2026-06-05 22:22:58,960.960 INFO    ] Checking for camera pi updates...
[2026-06-05 22:22:58,998.998 INFO    ] 200
[2026-06-05 22:22:59,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:22:59,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:22:59,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:22:59,111.111 INFO    ] No camera update needed
[2026-06-05 22:22:59,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:22:59,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:22:59,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:22:59,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:23:01,168.168 INFO    ] ================================================
[2026-06-05 22:23:01,184.184 INFO    ] Launching Daemon at Fri Jun  5 22:23:01 IST 2026
[2026-06-05 22:23:01,195.195 INFO    ] ================================================
[2026-06-05 22:23:01,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:23:01
[2026-06-05 22:23:02,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:23:02,942.942 INFO    ] Initializing speech engine...
[2026-06-05 22:23:02,966.966 INFO    ] 2026-06-05 22:23:02
[2026-06-05 22:23:03,259.259 INFO    ] 2026-06-05 22:23:03
[2026-06-05 22:23:03,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:23:03,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:23:03,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:23:03,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:23:03,678.678 INFO    ] time= 05/06/2026 22:23:03
[2026-06-05 22:23:03,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:23:03,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:23:03,867.867 INFO    ] No existing commands found in stream
[2026-06-05 22:23:08,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:23:08,900.900 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 22:23:10,927.927 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:23:10,930.930 INFO    ] Checking for system updates...
[2026-06-05 22:23:10,967.967 INFO    ] 200
[2026-06-05 22:23:10,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:23:11,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:23:11,034.034 INFO    ] No update needed
[2026-06-05 22:23:11,037.037 INFO    ] Checking for camera pi updates...
[2026-06-05 22:23:11,076.076 INFO    ] 200
[2026-06-05 22:23:11,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:23:11,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:23:11,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:23:11,190.190 INFO    ] No camera update needed
[2026-06-05 22:23:11,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:23:11,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:23:11,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:23:11,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:23:13,246.246 INFO    ] ================================================
[2026-06-05 22:23:13,266.266 INFO    ] Launching Daemon at Fri Jun  5 22:23:13 IST 2026
[2026-06-05 22:23:13,278.278 INFO    ] ================================================
[2026-06-05 22:23:13,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:23:13
[2026-06-05 22:23:14,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:23:14,713.713 INFO    ] Initializing speech engine...
[2026-06-05 22:23:14,720.720 INFO    ] 2026-06-05 22:23:14
[2026-06-05 22:23:15,021.021 INFO    ] 2026-06-05 22:23:14
[2026-06-05 22:23:15,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:23:15,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:23:15,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:23:15,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:23:15,450.450 INFO    ] time= 05/06/2026 22:23:15
[2026-06-05 22:23:15,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:23:15,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:23:15,612.612 INFO    ] No existing commands found in stream
[2026-06-05 22:23:20,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:23:20,645.645 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 22:23:22,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:23:22,944.944 INFO    ] Checking for system updates...
[2026-06-05 22:23:22,981.981 INFO    ] 200
[2026-06-05 22:23:22,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:23:23,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:23:23,038.038 INFO    ] No update needed
[2026-06-05 22:23:23,041.041 INFO    ] Checking for camera pi updates...
[2026-06-05 22:23:23,079.079 INFO    ] 200
[2026-06-05 22:23:23,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:23:23,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:23:23,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:23:23,177.177 INFO    ] No camera update needed
[2026-06-05 22:23:23,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:23:23,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:23:23,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:23:23,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:23:25,235.235 INFO    ] ================================================
[2026-06-05 22:23:25,250.250 INFO    ] Launching Daemon at Fri Jun  5 22:23:25 IST 2026
[2026-06-05 22:23:25,261.261 INFO    ] ================================================
[2026-06-05 22:23:25,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:23:25
[2026-06-05 22:23:26,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:23:26,959.959 INFO    ] Initializing speech engine...
[2026-06-05 22:23:26,970.970 INFO    ] 2026-06-05 22:23:26
[2026-06-05 22:23:27,281.281 INFO    ] 2026-06-05 22:23:27
[2026-06-05 22:23:27,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:23:27,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:23:27,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:23:27,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:23:27,965.965 INFO    ] time= 05/06/2026 22:23:27
[2026-06-05 22:23:28,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:23:28,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:23:28,194.194 INFO    ] No existing commands found in stream
[2026-06-05 22:23:33,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:23:33,221.221 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-05 22:23:34,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:23:34,933.933 INFO    ] Checking for system updates...
[2026-06-05 22:23:34,982.982 INFO    ] 200
[2026-06-05 22:23:34,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:23:35,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:23:35,044.044 INFO    ] No update needed
[2026-06-05 22:23:35,047.047 INFO    ] Checking for camera pi updates...
[2026-06-05 22:23:35,082.082 INFO    ] 200
[2026-06-05 22:23:35,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:23:35,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:23:35,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:23:35,180.180 INFO    ] No camera update needed
[2026-06-05 22:23:35,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:23:35,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:23:35,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:23:35,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:23:37,240.240 INFO    ] ================================================
[2026-06-05 22:23:37,255.255 INFO    ] Launching Daemon at Fri Jun  5 22:23:37 IST 2026
[2026-06-05 22:23:37,265.265 INFO    ] ================================================
[2026-06-05 22:23:37,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:23:37
[2026-06-05 22:23:38,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:23:38,695.695 INFO    ] Initializing speech engine...
[2026-06-05 22:23:38,710.710 INFO    ] 2026-06-05 22:23:38
[2026-06-05 22:23:38,979.979 INFO    ] 2026-06-05 22:23:38
[2026-06-05 22:23:39,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:23:39,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:23:39,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:23:39,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:23:39,542.542 INFO    ] time= 05/06/2026 22:23:39
[2026-06-05 22:23:39,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:23:39,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:23:39,688.688 INFO    ] No existing commands found in stream
[2026-06-05 22:23:44,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:23:44,716.716 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 22:23:48,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:23:48,954.954 INFO    ] Checking for system updates...
[2026-06-05 22:23:48,990.990 INFO    ] 200
[2026-06-05 22:23:48,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:23:49,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:23:49,048.048 INFO    ] No update needed
[2026-06-05 22:23:49,051.051 INFO    ] Checking for camera pi updates...
[2026-06-05 22:23:49,089.089 INFO    ] 200
[2026-06-05 22:23:49,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:23:49,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:23:49,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:23:49,199.199 INFO    ] No camera update needed
[2026-06-05 22:23:49,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:23:49,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:23:49,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:23:49,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:23:51,257.257 INFO    ] ================================================
[2026-06-05 22:23:51,273.273 INFO    ] Launching Daemon at Fri Jun  5 22:23:51 IST 2026
[2026-06-05 22:23:51,284.284 INFO    ] ================================================
[2026-06-05 22:23:51,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:23:51
[2026-06-05 22:23:52,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:23:52,689.689 INFO    ] Initializing speech engine...
[2026-06-05 22:23:52,701.701 INFO    ] 2026-06-05 22:23:52
[2026-06-05 22:23:52,967.967 INFO    ] 2026-06-05 22:23:52
[2026-06-05 22:23:53,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:23:53,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:23:53,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:23:53,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:23:53,433.433 INFO    ] time= 05/06/2026 22:23:53
[2026-06-05 22:23:53,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:23:53,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:23:53,694.694 INFO    ] No existing commands found in stream
[2026-06-05 22:23:58,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:23:58,710.710 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 22:24:02,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:24:02,553.553 INFO    ] Checking for system updates...
[2026-06-05 22:24:02,599.599 INFO    ] 200
[2026-06-05 22:24:02,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:02,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:24:02,684.684 INFO    ] No update needed
[2026-06-05 22:24:02,687.687 INFO    ] Checking for camera pi updates...
[2026-06-05 22:24:02,727.727 INFO    ] 200
[2026-06-05 22:24:02,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:02,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:24:02,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:24:02,827.827 INFO    ] No camera update needed
[2026-06-05 22:24:02,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:24:02,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:24:02,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:24:02,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:24:04,884.884 INFO    ] ================================================
[2026-06-05 22:24:04,899.899 INFO    ] Launching Daemon at Fri Jun  5 22:24:04 IST 2026
[2026-06-05 22:24:04,909.909 INFO    ] ================================================
[2026-06-05 22:24:05,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:24:05
[2026-06-05 22:24:06,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:24:06,448.448 INFO    ] Initializing speech engine...
[2026-06-05 22:24:06,459.459 INFO    ] 2026-06-05 22:24:06
[2026-06-05 22:24:06,722.722 INFO    ] 2026-06-05 22:24:06
[2026-06-05 22:24:06,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:24:06,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:24:06,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:24:07,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:24:07,133.133 INFO    ] time= 05/06/2026 22:24:07
[2026-06-05 22:24:07,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:24:07,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:24:07,322.322 INFO    ] No existing commands found in stream
[2026-06-05 22:24:12,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:24:12,360.360 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 22:24:16,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:24:16,501.501 INFO    ] Checking for system updates...
[2026-06-05 22:24:16,537.537 INFO    ] 200
[2026-06-05 22:24:16,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:16,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:24:16,595.595 INFO    ] No update needed
[2026-06-05 22:24:16,597.597 INFO    ] Checking for camera pi updates...
[2026-06-05 22:24:16,634.634 INFO    ] 200
[2026-06-05 22:24:16,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:16,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:24:16,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:24:16,731.731 INFO    ] No camera update needed
[2026-06-05 22:24:16,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:24:16,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:24:16,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:24:16,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:24:18,787.787 INFO    ] ================================================
[2026-06-05 22:24:18,802.802 INFO    ] Launching Daemon at Fri Jun  5 22:24:18 IST 2026
[2026-06-05 22:24:18,813.813 INFO    ] ================================================
[2026-06-05 22:24:19,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:24:19
[2026-06-05 22:24:19,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:24:20,221.221 INFO    ] Initializing speech engine...
[2026-06-05 22:24:20,227.227 INFO    ] 2026-06-05 22:24:20
[2026-06-05 22:24:20,544.544 INFO    ] 2026-06-05 22:24:20
[2026-06-05 22:24:20,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:24:20,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:24:20,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:24:20,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:24:20,984.984 INFO    ] time= 05/06/2026 22:24:20
[2026-06-05 22:24:21,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:24:21,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:24:21,187.187 INFO    ] No existing commands found in stream
[2026-06-05 22:24:26,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:24:26,215.215 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-05 22:24:27,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:24:27,104.104 INFO    ] Checking for system updates...
[2026-06-05 22:24:27,144.144 INFO    ] 200
[2026-06-05 22:24:27,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:27,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:24:27,210.210 INFO    ] No update needed
[2026-06-05 22:24:27,212.212 INFO    ] Checking for camera pi updates...
[2026-06-05 22:24:27,247.247 INFO    ] 200
[2026-06-05 22:24:27,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:27,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:24:27,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:24:27,355.355 INFO    ] No camera update needed
[2026-06-05 22:24:27,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:24:27,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:24:27,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:24:27,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:24:29,411.411 INFO    ] ================================================
[2026-06-05 22:24:29,426.426 INFO    ] Launching Daemon at Fri Jun  5 22:24:29 IST 2026
[2026-06-05 22:24:29,436.436 INFO    ] ================================================
[2026-06-05 22:24:30,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:24:30
[2026-06-05 22:24:30,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:24:30,859.859 INFO    ] Initializing speech engine...
[2026-06-05 22:24:30,865.865 INFO    ] 2026-06-05 22:24:30
[2026-06-05 22:24:31,164.164 INFO    ] 2026-06-05 22:24:31
[2026-06-05 22:24:31,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:24:31,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:24:31,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:24:32,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:24:32,206.206 INFO    ] time= 05/06/2026 22:24:32
[2026-06-05 22:24:32,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:24:32,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:24:32,414.414 INFO    ] No existing commands found in stream
[2026-06-05 22:24:37,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:24:37,427.427 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 22:24:40,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:24:40,320.320 INFO    ] Checking for system updates...
[2026-06-05 22:24:40,356.356 INFO    ] 200
[2026-06-05 22:24:40,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:40,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:24:40,414.414 INFO    ] No update needed
[2026-06-05 22:24:40,416.416 INFO    ] Checking for camera pi updates...
[2026-06-05 22:24:40,450.450 INFO    ] 200
[2026-06-05 22:24:40,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:40,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:24:40,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:24:40,646.646 INFO    ] No camera update needed
[2026-06-05 22:24:40,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:24:40,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:24:40,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:24:40,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:24:42,701.701 INFO    ] ================================================
[2026-06-05 22:24:42,716.716 INFO    ] Launching Daemon at Fri Jun  5 22:24:42 IST 2026
[2026-06-05 22:24:42,727.727 INFO    ] ================================================
[2026-06-05 22:24:43,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:24:43
[2026-06-05 22:24:44,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:24:44,354.354 INFO    ] Initializing speech engine...
[2026-06-05 22:24:44,362.362 INFO    ] 2026-06-05 22:24:44
[2026-06-05 22:24:44,655.655 INFO    ] 2026-06-05 22:24:44
[2026-06-05 22:24:44,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:24:44,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:24:44,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:24:45,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:24:45,192.192 INFO    ] time= 05/06/2026 22:24:45
[2026-06-05 22:24:45,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:24:45,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:24:45,378.378 INFO    ] No existing commands found in stream
[2026-06-05 22:24:50,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:24:50,418.418 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-05 22:24:53,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:24:53,663.663 INFO    ] Checking for system updates...
[2026-06-05 22:24:53,706.706 INFO    ] 200
[2026-06-05 22:24:53,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:53,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:24:53,771.771 INFO    ] No update needed
[2026-06-05 22:24:53,775.775 INFO    ] Checking for camera pi updates...
[2026-06-05 22:24:53,817.817 INFO    ] 200
[2026-06-05 22:24:53,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:24:53,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:24:53,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:24:53,910.910 INFO    ] No camera update needed
[2026-06-05 22:24:53,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:24:53,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:24:53,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:24:53,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:24:55,970.970 INFO    ] ================================================
[2026-06-05 22:24:55,985.985 INFO    ] Launching Daemon at Fri Jun  5 22:24:55 IST 2026
[2026-06-05 22:24:56,996.996 INFO    ] ================================================
[2026-06-05 22:24:56,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:24:56
[2026-06-05 22:24:57,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:24:57,561.561 INFO    ] Initializing speech engine...
[2026-06-05 22:24:57,575.575 INFO    ] 2026-06-05 22:24:57
[2026-06-05 22:24:57,851.851 INFO    ] 2026-06-05 22:24:57
[2026-06-05 22:24:57,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:24:58,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:24:58,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:24:58,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:24:58,363.363 INFO    ] time= 05/06/2026 22:24:58
[2026-06-05 22:24:58,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:24:58,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:24:58,569.569 INFO    ] No existing commands found in stream
[2026-06-05 22:25:03,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:25:03,591.591 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-05 22:25:05,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:25:05,252.252 INFO    ] Checking for system updates...
[2026-06-05 22:25:05,295.295 INFO    ] 200
[2026-06-05 22:25:05,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:05,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:25:05,374.374 INFO    ] No update needed
[2026-06-05 22:25:05,378.378 INFO    ] Checking for camera pi updates...
[2026-06-05 22:25:05,412.412 INFO    ] 200
[2026-06-05 22:25:05,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:05,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:25:05,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:25:05,512.512 INFO    ] No camera update needed
[2026-06-05 22:25:05,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:25:05,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:25:05,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:25:05,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:25:07,567.567 INFO    ] ================================================
[2026-06-05 22:25:07,582.582 INFO    ] Launching Daemon at Fri Jun  5 22:25:07 IST 2026
[2026-06-05 22:25:07,592.592 INFO    ] ================================================
[2026-06-05 22:25:08,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:25:08
[2026-06-05 22:25:08,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:25:09,006.006 INFO    ] Initializing speech engine...
[2026-06-05 22:25:09,013.013 INFO    ] 2026-06-05 22:25:09
[2026-06-05 22:25:09,314.314 INFO    ] 2026-06-05 22:25:09
[2026-06-05 22:25:09,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:25:09,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:25:09,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:25:09,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:25:09,840.840 INFO    ] time= 05/06/2026 22:25:09
[2026-06-05 22:25:09,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:25:09,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:25:10,116.116 INFO    ] No existing commands found in stream
[2026-06-05 22:25:15,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:25:15,139.139 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 22:25:18,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:25:18,168.168 INFO    ] Checking for system updates...
[2026-06-05 22:25:18,209.209 INFO    ] 200
[2026-06-05 22:25:18,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:18,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:25:18,268.268 INFO    ] No update needed
[2026-06-05 22:25:18,271.271 INFO    ] Checking for camera pi updates...
[2026-06-05 22:25:18,305.305 INFO    ] 200
[2026-06-05 22:25:18,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:18,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:25:18,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:25:18,407.407 INFO    ] No camera update needed
[2026-06-05 22:25:18,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:25:18,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:25:18,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:25:18,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:25:20,462.462 INFO    ] ================================================
[2026-06-05 22:25:20,478.478 INFO    ] Launching Daemon at Fri Jun  5 22:25:20 IST 2026
[2026-06-05 22:25:20,489.489 INFO    ] ================================================
[2026-06-05 22:25:21,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:25:21
[2026-06-05 22:25:21,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:25:22,155.155 INFO    ] Initializing speech engine...
[2026-06-05 22:25:22,166.166 INFO    ] 2026-06-05 22:25:22
[2026-06-05 22:25:22,481.481 INFO    ] 2026-06-05 22:25:22
[2026-06-05 22:25:22,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:25:22,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:25:22,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:25:22,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:25:22,991.991 INFO    ] time= 05/06/2026 22:25:22
[2026-06-05 22:25:23,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:25:23,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:25:23,187.187 INFO    ] No existing commands found in stream
[2026-06-05 22:25:28,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:25:28,227.227 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-05 22:25:32,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:25:32,701.701 INFO    ] Checking for system updates...
[2026-06-05 22:25:32,738.738 INFO    ] 200
[2026-06-05 22:25:32,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:32,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:25:32,807.807 INFO    ] No update needed
[2026-06-05 22:25:32,810.810 INFO    ] Checking for camera pi updates...
[2026-06-05 22:25:32,850.850 INFO    ] 200
[2026-06-05 22:25:32,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:32,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:25:32,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:25:32,960.960 INFO    ] No camera update needed
[2026-06-05 22:25:32,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:25:32,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:25:32,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:25:32,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:25:35,020.020 INFO    ] ================================================
[2026-06-05 22:25:35,036.036 INFO    ] Launching Daemon at Fri Jun  5 22:25:35 IST 2026
[2026-06-05 22:25:35,046.046 INFO    ] ================================================
[2026-06-05 22:25:35,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:25:35
[2026-06-05 22:25:36,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:25:36,482.482 INFO    ] Initializing speech engine...
[2026-06-05 22:25:36,491.491 INFO    ] 2026-06-05 22:25:36
[2026-06-05 22:25:36,777.777 INFO    ] 2026-06-05 22:25:36
[2026-06-05 22:25:36,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:25:36,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:25:37,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:25:37,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:25:37,176.176 INFO    ] time= 05/06/2026 22:25:37
[2026-06-05 22:25:37,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:25:37,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:25:37,372.372 INFO    ] No existing commands found in stream
[2026-06-05 22:25:42,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:25:42,386.386 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 22:25:45,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:25:45,144.144 INFO    ] Checking for system updates...
[2026-06-05 22:25:45,180.180 INFO    ] 200
[2026-06-05 22:25:45,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:45,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:25:45,247.247 INFO    ] No update needed
[2026-06-05 22:25:45,249.249 INFO    ] Checking for camera pi updates...
[2026-06-05 22:25:45,284.284 INFO    ] 200
[2026-06-05 22:25:45,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:45,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:25:45,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:25:45,384.384 INFO    ] No camera update needed
[2026-06-05 22:25:45,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:25:45,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:25:45,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:25:45,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:25:47,445.445 INFO    ] ================================================
[2026-06-05 22:25:47,459.459 INFO    ] Launching Daemon at Fri Jun  5 22:25:47 IST 2026
[2026-06-05 22:25:47,470.470 INFO    ] ================================================
[2026-06-05 22:25:48,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:25:48
[2026-06-05 22:25:48,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:25:48,919.919 INFO    ] Initializing speech engine...
[2026-06-05 22:25:48,932.932 INFO    ] 2026-06-05 22:25:48
[2026-06-05 22:25:49,197.197 INFO    ] 2026-06-05 22:25:49
[2026-06-05 22:25:49,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:25:49,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:25:49,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:25:49,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:25:49,705.705 INFO    ] time= 05/06/2026 22:25:49
[2026-06-05 22:25:49,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:25:49,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:25:49,910.910 INFO    ] No existing commands found in stream
[2026-06-05 22:25:54,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:25:54,927.927 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 22:25:56,701.701 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:25:56,703.703 INFO    ] Checking for system updates...
[2026-06-05 22:25:56,744.744 INFO    ] 200
[2026-06-05 22:25:56,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:56,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:25:56,810.810 INFO    ] No update needed
[2026-06-05 22:25:56,813.813 INFO    ] Checking for camera pi updates...
[2026-06-05 22:25:56,848.848 INFO    ] 200
[2026-06-05 22:25:56,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:25:56,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:25:56,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:25:56,952.952 INFO    ] No camera update needed
[2026-06-05 22:25:56,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:25:56,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:25:56,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:25:56,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:25:59,010.010 INFO    ] ================================================
[2026-06-05 22:25:59,026.026 INFO    ] Launching Daemon at Fri Jun  5 22:25:59 IST 2026
[2026-06-05 22:25:59,036.036 INFO    ] ================================================
[2026-06-05 22:25:59,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:25:59
[2026-06-05 22:26:00,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:26:00,724.724 INFO    ] Initializing speech engine...
[2026-06-05 22:26:00,737.737 INFO    ] 2026-06-05 22:26:00
[2026-06-05 22:26:01,046.046 INFO    ] 2026-06-05 22:26:01
[2026-06-05 22:26:01,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:26:02,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:26:02,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:26:02,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:26:02,585.585 INFO    ] time= 05/06/2026 22:26:02
[2026-06-05 22:26:02,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:26:02,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:26:02,692.692 INFO    ] No existing commands found in stream
[2026-06-05 22:26:07,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:26:07,710.710 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 22:26:11,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:26:11,401.401 INFO    ] Checking for system updates...
[2026-06-05 22:26:11,438.438 INFO    ] 200
[2026-06-05 22:26:11,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:26:11,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:26:11,498.498 INFO    ] No update needed
[2026-06-05 22:26:11,501.501 INFO    ] Checking for camera pi updates...
[2026-06-05 22:26:11,535.535 INFO    ] 200
[2026-06-05 22:26:11,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:26:11,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:26:11,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:26:11,632.632 INFO    ] No camera update needed
[2026-06-05 22:26:11,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:26:11,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:26:11,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:26:11,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:26:13,689.689 INFO    ] ================================================
[2026-06-05 22:26:13,705.705 INFO    ] Launching Daemon at Fri Jun  5 22:26:13 IST 2026
[2026-06-05 22:26:13,716.716 INFO    ] ================================================
[2026-06-05 22:26:14,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:26:14
[2026-06-05 22:26:14,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:26:15,154.154 INFO    ] Initializing speech engine...
[2026-06-05 22:26:15,177.177 INFO    ] 2026-06-05 22:26:15
[2026-06-05 22:26:15,438.438 INFO    ] 2026-06-05 22:26:15
[2026-06-05 22:26:15,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:26:15,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:26:15,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:26:15,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:26:15,938.938 INFO    ] time= 05/06/2026 22:26:15
[2026-06-05 22:26:15,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:26:16,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:26:16,144.144 INFO    ] No existing commands found in stream
[2026-06-05 22:26:21,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:26:21,177.177 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-05 22:26:23,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:26:23,299.299 INFO    ] Checking for system updates...
[2026-06-05 22:26:23,339.339 INFO    ] 200
[2026-06-05 22:26:23,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:26:23,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:26:23,398.398 INFO    ] No update needed
[2026-06-05 22:26:23,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 22:26:23,435.435 INFO    ] 200
[2026-06-05 22:26:23,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:26:23,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:26:23,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:26:23,527.527 INFO    ] No camera update needed
[2026-06-05 22:26:23,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:26:23,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:26:23,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:26:23,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:26:25,586.586 INFO    ] ================================================
[2026-06-05 22:26:25,601.601 INFO    ] Launching Daemon at Fri Jun  5 22:26:25 IST 2026
[2026-06-05 22:26:25,612.612 INFO    ] ================================================
[2026-06-05 22:26:26,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:26:26
[2026-06-05 22:26:26,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:26:27,299.299 INFO    ] Initializing speech engine...
[2026-06-05 22:26:27,313.313 INFO    ] 2026-06-05 22:26:27
[2026-06-05 22:26:27,592.592 INFO    ] 2026-06-05 22:26:27
[2026-06-05 22:26:27,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:26:27,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:26:27,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:26:28,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:26:28,133.133 INFO    ] time= 05/06/2026 22:26:28
[2026-06-05 22:26:28,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:26:28,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:26:28,314.314 INFO    ] No existing commands found in stream
[2026-06-05 22:26:33,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:26:33,354.354 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-05 22:26:33,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:26:33,962.962 INFO    ] Checking for system updates...
[2026-06-05 22:26:34,005.005 INFO    ] 200
[2026-06-05 22:26:34,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:26:34,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:26:34,066.066 INFO    ] No update needed
[2026-06-05 22:26:34,069.069 INFO    ] Checking for camera pi updates...
[2026-06-05 22:26:34,105.105 INFO    ] 200
[2026-06-05 22:26:34,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:26:34,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:26:34,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:26:34,207.207 INFO    ] No camera update needed
[2026-06-05 22:26:34,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:26:34,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:26:34,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:26:34,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:26:36,266.266 INFO    ] ================================================
[2026-06-05 22:26:36,281.281 INFO    ] Launching Daemon at Fri Jun  5 22:26:36 IST 2026
[2026-06-05 22:26:36,292.292 INFO    ] ================================================
[2026-06-05 22:26:36,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:26:36
[2026-06-05 22:26:37,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:26:37,994.994 INFO    ] Initializing speech engine...
[2026-06-05 22:26:38,007.007 INFO    ] 2026-06-05 22:26:37
[2026-06-05 22:26:38,295.295 INFO    ] 2026-06-05 22:26:38
[2026-06-05 22:26:38,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:26:38,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:26:38,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:26:38,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:26:38,769.769 INFO    ] time= 05/06/2026 22:26:38
[2026-06-05 22:26:38,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:26:38,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:26:39,013.013 INFO    ] No existing commands found in stream
[2026-06-05 22:26:44,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:26:44,031.031 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 22:26:45,980.980 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:26:45,983.983 INFO    ] Checking for system updates...
[2026-06-05 22:26:46,021.021 INFO    ] 200
[2026-06-05 22:26:46,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:26:46,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:26:46,082.082 INFO    ] No update needed
[2026-06-05 22:26:46,084.084 INFO    ] Checking for camera pi updates...
[2026-06-05 22:26:46,120.120 INFO    ] 200
[2026-06-05 22:26:46,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:26:46,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:26:46,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:26:46,317.317 INFO    ] No camera update needed
[2026-06-05 22:26:46,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:26:46,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:26:46,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:26:46,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:26:48,379.379 INFO    ] ================================================
[2026-06-05 22:26:48,394.394 INFO    ] Launching Daemon at Fri Jun  5 22:26:48 IST 2026
[2026-06-05 22:26:48,406.406 INFO    ] ================================================
[2026-06-05 22:26:49,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:26:49
[2026-06-05 22:26:49,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:26:49,929.929 INFO    ] Initializing speech engine...
[2026-06-05 22:26:49,937.937 INFO    ] 2026-06-05 22:26:49
[2026-06-05 22:26:50,203.203 INFO    ] 2026-06-05 22:26:50
[2026-06-05 22:26:50,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:26:50,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:26:50,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:26:50,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:26:50,714.714 INFO    ] time= 05/06/2026 22:26:50
[2026-06-05 22:26:50,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:26:50,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:26:50,897.897 INFO    ] No existing commands found in stream
[2026-06-05 22:26:55,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:26:55,916.916 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 22:27:02,247.247 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:27:02,251.251 INFO    ] Checking for system updates...
[2026-06-05 22:27:02,296.296 INFO    ] 200
[2026-06-05 22:27:02,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:02,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:27:02,373.373 INFO    ] No update needed
[2026-06-05 22:27:02,376.376 INFO    ] Checking for camera pi updates...
[2026-06-05 22:27:02,432.432 INFO    ] 200
[2026-06-05 22:27:02,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:02,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:27:02,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:27:02,528.528 INFO    ] No camera update needed
[2026-06-05 22:27:02,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:27:02,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:27:02,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:27:02,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:27:04,594.594 INFO    ] ================================================
[2026-06-05 22:27:04,609.609 INFO    ] Launching Daemon at Fri Jun  5 22:27:04 IST 2026
[2026-06-05 22:27:04,620.620 INFO    ] ================================================
[2026-06-05 22:27:05,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:27:05
[2026-06-05 22:27:05,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:27:06,270.270 INFO    ] Initializing speech engine...
[2026-06-05 22:27:06,283.283 INFO    ] 2026-06-05 22:27:06
[2026-06-05 22:27:06,617.617 INFO    ] 2026-06-05 22:27:06
[2026-06-05 22:27:06,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:27:06,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:27:07,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:27:07,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:27:07,174.174 INFO    ] time= 05/06/2026 22:27:07
[2026-06-05 22:27:07,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:27:07,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:27:07,389.389 INFO    ] No existing commands found in stream
[2026-06-05 22:27:12,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:27:12,423.423 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-05 22:27:17,158.158 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:27:17,163.163 INFO    ] Checking for system updates...
[2026-06-05 22:27:17,204.204 INFO    ] 200
[2026-06-05 22:27:17,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:17,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:27:17,274.274 INFO    ] No update needed
[2026-06-05 22:27:17,278.278 INFO    ] Checking for camera pi updates...
[2026-06-05 22:27:17,314.314 INFO    ] 200
[2026-06-05 22:27:17,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:17,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:27:17,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:27:17,422.422 INFO    ] No camera update needed
[2026-06-05 22:27:17,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:27:17,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:27:17,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:27:17,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:27:19,483.483 INFO    ] ================================================
[2026-06-05 22:27:19,498.498 INFO    ] Launching Daemon at Fri Jun  5 22:27:19 IST 2026
[2026-06-05 22:27:19,509.509 INFO    ] ================================================
[2026-06-05 22:27:20,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:27:20
[2026-06-05 22:27:20,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:27:20,927.927 INFO    ] Initializing speech engine...
[2026-06-05 22:27:20,951.951 INFO    ] 2026-06-05 22:27:20
[2026-06-05 22:27:21,201.201 INFO    ] 2026-06-05 22:27:21
[2026-06-05 22:27:21,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:27:21,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:27:21,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:27:21,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:27:21,756.756 INFO    ] time= 05/06/2026 22:27:21
[2026-06-05 22:27:21,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:27:21,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:27:21,912.912 INFO    ] No existing commands found in stream
[2026-06-05 22:27:26,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:27:26,938.938 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 22:27:27,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:27:27,663.663 INFO    ] Checking for system updates...
[2026-06-05 22:27:27,704.704 INFO    ] 200
[2026-06-05 22:27:27,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:27,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:27:27,763.763 INFO    ] No update needed
[2026-06-05 22:27:27,766.766 INFO    ] Checking for camera pi updates...
[2026-06-05 22:27:27,801.801 INFO    ] 200
[2026-06-05 22:27:27,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:27,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:27:27,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:27:27,908.908 INFO    ] No camera update needed
[2026-06-05 22:27:27,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:27:27,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:27:27,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:27:27,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:27:29,964.964 INFO    ] ================================================
[2026-06-05 22:27:29,980.980 INFO    ] Launching Daemon at Fri Jun  5 22:27:29 IST 2026
[2026-06-05 22:27:29,991.991 INFO    ] ================================================
[2026-06-05 22:27:30,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:27:30
[2026-06-05 22:27:31,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:27:31,416.416 INFO    ] Initializing speech engine...
[2026-06-05 22:27:31,425.425 INFO    ] 2026-06-05 22:27:31
[2026-06-05 22:27:31,707.707 INFO    ] 2026-06-05 22:27:31
[2026-06-05 22:27:31,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:27:32,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:27:32,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:27:32,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:27:32,736.736 INFO    ] time= 05/06/2026 22:27:32
[2026-06-05 22:27:32,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:27:32,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:27:32,952.952 INFO    ] No existing commands found in stream
[2026-06-05 22:27:37,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:27:37,980.980 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-05 22:27:38,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:27:38,644.644 INFO    ] Checking for system updates...
[2026-06-05 22:27:38,681.681 INFO    ] 200
[2026-06-05 22:27:38,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:38,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:27:38,747.747 INFO    ] No update needed
[2026-06-05 22:27:38,749.749 INFO    ] Checking for camera pi updates...
[2026-06-05 22:27:38,784.784 INFO    ] 200
[2026-06-05 22:27:38,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:38,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:27:38,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:27:38,892.892 INFO    ] No camera update needed
[2026-06-05 22:27:38,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:27:38,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:27:38,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:27:38,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:27:40,951.951 INFO    ] ================================================
[2026-06-05 22:27:40,966.966 INFO    ] Launching Daemon at Fri Jun  5 22:27:40 IST 2026
[2026-06-05 22:27:40,978.978 INFO    ] ================================================
[2026-06-05 22:27:41,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:27:41
[2026-06-05 22:27:42,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:27:42,508.508 INFO    ] Initializing speech engine...
[2026-06-05 22:27:42,514.514 INFO    ] 2026-06-05 22:27:42
[2026-06-05 22:27:42,775.775 INFO    ] 2026-06-05 22:27:42
[2026-06-05 22:27:42,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:27:43,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:27:43,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:27:43,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:27:43,259.259 INFO    ] time= 05/06/2026 22:27:43
[2026-06-05 22:27:43,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:27:43,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:27:43,488.488 INFO    ] No existing commands found in stream
[2026-06-05 22:27:48,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:27:48,526.526 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 22:27:51,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:27:52,000.000 INFO    ] Checking for system updates...
[2026-06-05 22:27:52,041.041 INFO    ] 200
[2026-06-05 22:27:52,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:52,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:27:52,106.106 INFO    ] No update needed
[2026-06-05 22:27:52,109.109 INFO    ] Checking for camera pi updates...
[2026-06-05 22:27:52,143.143 INFO    ] 200
[2026-06-05 22:27:52,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:27:52,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:27:52,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:27:52,240.240 INFO    ] No camera update needed
[2026-06-05 22:27:52,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:27:52,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:27:52,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:27:52,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:27:54,296.296 INFO    ] ================================================
[2026-06-05 22:27:54,312.312 INFO    ] Launching Daemon at Fri Jun  5 22:27:54 IST 2026
[2026-06-05 22:27:54,324.324 INFO    ] ================================================
[2026-06-05 22:27:54,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:27:54
[2026-06-05 22:27:55,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:27:55,746.746 INFO    ] Initializing speech engine...
[2026-06-05 22:27:55,756.756 INFO    ] 2026-06-05 22:27:55
[2026-06-05 22:27:56,000.000 INFO    ] 2026-06-05 22:27:55
[2026-06-05 22:27:56,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:27:56,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:27:56,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:27:56,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:27:56,556.556 INFO    ] time= 05/06/2026 22:27:56
[2026-06-05 22:27:56,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:27:56,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:27:56,713.713 INFO    ] No existing commands found in stream
[2026-06-05 22:28:01,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:28:01,733.733 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 22:28:06,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:28:06,200.200 INFO    ] Checking for system updates...
[2026-06-05 22:28:06,239.239 INFO    ] 200
[2026-06-05 22:28:06,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:06,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:28:06,310.310 INFO    ] No update needed
[2026-06-05 22:28:06,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 22:28:06,366.366 INFO    ] 200
[2026-06-05 22:28:06,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:06,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:28:06,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:28:06,449.449 INFO    ] No camera update needed
[2026-06-05 22:28:06,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:28:06,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:28:06,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:28:06,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:28:08,505.505 INFO    ] ================================================
[2026-06-05 22:28:08,521.521 INFO    ] Launching Daemon at Fri Jun  5 22:28:08 IST 2026
[2026-06-05 22:28:08,532.532 INFO    ] ================================================
[2026-06-05 22:28:09,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:28:09
[2026-06-05 22:28:09,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:28:09,934.934 INFO    ] Initializing speech engine...
[2026-06-05 22:28:09,942.942 INFO    ] 2026-06-05 22:28:09
[2026-06-05 22:28:10,216.216 INFO    ] 2026-06-05 22:28:10
[2026-06-05 22:28:10,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:28:10,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:28:10,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:28:10,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:28:10,952.952 INFO    ] time= 05/06/2026 22:28:10
[2026-06-05 22:28:11,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:28:11,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:28:11,234.234 INFO    ] No existing commands found in stream
[2026-06-05 22:28:16,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:28:16,252.252 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 22:28:19,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:28:19,610.610 INFO    ] Checking for system updates...
[2026-06-05 22:28:19,652.652 INFO    ] 200
[2026-06-05 22:28:19,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:19,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:28:19,716.716 INFO    ] No update needed
[2026-06-05 22:28:19,718.718 INFO    ] Checking for camera pi updates...
[2026-06-05 22:28:19,754.754 INFO    ] 200
[2026-06-05 22:28:19,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:19,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:28:19,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:28:19,852.852 INFO    ] No camera update needed
[2026-06-05 22:28:19,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:28:19,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:28:19,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:28:19,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:28:21,908.908 INFO    ] ================================================
[2026-06-05 22:28:21,924.924 INFO    ] Launching Daemon at Fri Jun  5 22:28:21 IST 2026
[2026-06-05 22:28:21,934.934 INFO    ] ================================================
[2026-06-05 22:28:22,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:28:22
[2026-06-05 22:28:23,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:28:23,360.360 INFO    ] Initializing speech engine...
[2026-06-05 22:28:23,365.365 INFO    ] 2026-06-05 22:28:23
[2026-06-05 22:28:23,609.609 INFO    ] 2026-06-05 22:28:23
[2026-06-05 22:28:23,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:28:23,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:28:23,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:28:24,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:28:24,163.163 INFO    ] time= 05/06/2026 22:28:24
[2026-06-05 22:28:24,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:28:24,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:28:24,318.318 INFO    ] No existing commands found in stream
[2026-06-05 22:28:29,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:28:29,340.340 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 22:28:32,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:28:32,140.140 INFO    ] Checking for system updates...
[2026-06-05 22:28:32,182.182 INFO    ] 200
[2026-06-05 22:28:32,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:32,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:28:32,245.245 INFO    ] No update needed
[2026-06-05 22:28:32,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 22:28:32,293.293 INFO    ] 200
[2026-06-05 22:28:32,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:32,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:28:32,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:28:32,376.376 INFO    ] No camera update needed
[2026-06-05 22:28:32,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:28:32,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:28:32,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:28:32,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:28:34,435.435 INFO    ] ================================================
[2026-06-05 22:28:34,450.450 INFO    ] Launching Daemon at Fri Jun  5 22:28:34 IST 2026
[2026-06-05 22:28:34,461.461 INFO    ] ================================================
[2026-06-05 22:28:35,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:28:35
[2026-06-05 22:28:35,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:28:36,049.049 INFO    ] Initializing speech engine...
[2026-06-05 22:28:36,069.069 INFO    ] 2026-06-05 22:28:36
[2026-06-05 22:28:36,342.342 INFO    ] 2026-06-05 22:28:36
[2026-06-05 22:28:36,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:28:36,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:28:36,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:28:36,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:28:36,759.759 INFO    ] time= 05/06/2026 22:28:36
[2026-06-05 22:28:36,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:28:36,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:28:36,858.858 INFO    ] No existing commands found in stream
[2026-06-05 22:28:41,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:28:41,896.896 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-05 22:28:44,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:28:44,930.930 INFO    ] Checking for system updates...
[2026-06-05 22:28:44,966.966 INFO    ] 200
[2026-06-05 22:28:44,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:45,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:28:45,023.023 INFO    ] No update needed
[2026-06-05 22:28:45,026.026 INFO    ] Checking for camera pi updates...
[2026-06-05 22:28:45,064.064 INFO    ] 200
[2026-06-05 22:28:45,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:45,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:28:45,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:28:45,170.170 INFO    ] No camera update needed
[2026-06-05 22:28:45,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:28:45,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:28:45,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:28:45,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:28:47,228.228 INFO    ] ================================================
[2026-06-05 22:28:47,243.243 INFO    ] Launching Daemon at Fri Jun  5 22:28:47 IST 2026
[2026-06-05 22:28:47,255.255 INFO    ] ================================================
[2026-06-05 22:28:47,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:28:47
[2026-06-05 22:28:48,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:28:48,730.730 INFO    ] Initializing speech engine...
[2026-06-05 22:28:48,741.741 INFO    ] 2026-06-05 22:28:48
[2026-06-05 22:28:49,015.015 INFO    ] 2026-06-05 22:28:49
[2026-06-05 22:28:49,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:28:49,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:28:49,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:28:49,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:28:49,589.589 INFO    ] time= 05/06/2026 22:28:49
[2026-06-05 22:28:49,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:28:49,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:28:49,735.735 INFO    ] No existing commands found in stream
[2026-06-05 22:28:54,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:28:54,761.761 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 22:28:56,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:28:56,685.685 INFO    ] Checking for system updates...
[2026-06-05 22:28:56,728.728 INFO    ] 200
[2026-06-05 22:28:56,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:56,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:28:56,795.795 INFO    ] No update needed
[2026-06-05 22:28:56,798.798 INFO    ] Checking for camera pi updates...
[2026-06-05 22:28:56,834.834 INFO    ] 200
[2026-06-05 22:28:56,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:28:56,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:28:57,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:28:57,029.029 INFO    ] No camera update needed
[2026-06-05 22:28:57,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:28:57,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:28:57,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:28:57,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:28:59,088.088 INFO    ] ================================================
[2026-06-05 22:28:59,104.104 INFO    ] Launching Daemon at Fri Jun  5 22:28:59 IST 2026
[2026-06-05 22:28:59,117.117 INFO    ] ================================================
[2026-06-05 22:28:59,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:28:59
[2026-06-05 22:29:00,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:29:00,583.583 INFO    ] Initializing speech engine...
[2026-06-05 22:29:00,589.589 INFO    ] 2026-06-05 22:29:00
[2026-06-05 22:29:00,850.850 INFO    ] 2026-06-05 22:29:00
[2026-06-05 22:29:00,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:29:02,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:29:02,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:29:02,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:29:02,392.392 INFO    ] time= 05/06/2026 22:29:02
[2026-06-05 22:29:02,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:29:02,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:29:02,475.475 INFO    ] No existing commands found in stream
[2026-06-05 22:29:07,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:29:07,489.489 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 22:29:10,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:29:10,740.740 INFO    ] Checking for system updates...
[2026-06-05 22:29:10,777.777 INFO    ] 200
[2026-06-05 22:29:10,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:29:10,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:29:10,834.834 INFO    ] No update needed
[2026-06-05 22:29:10,837.837 INFO    ] Checking for camera pi updates...
[2026-06-05 22:29:10,875.875 INFO    ] 200
[2026-06-05 22:29:10,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:29:10,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:29:10,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:29:10,970.970 INFO    ] No camera update needed
[2026-06-05 22:29:10,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:29:10,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:29:10,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:29:10,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:29:13,026.026 INFO    ] ================================================
[2026-06-05 22:29:13,042.042 INFO    ] Launching Daemon at Fri Jun  5 22:29:13 IST 2026
[2026-06-05 22:29:13,053.053 INFO    ] ================================================
[2026-06-05 22:29:13,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:29:13
[2026-06-05 22:29:14,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:29:14,522.522 INFO    ] Initializing speech engine...
[2026-06-05 22:29:14,528.528 INFO    ] 2026-06-05 22:29:14
[2026-06-05 22:29:14,790.790 INFO    ] 2026-06-05 22:29:14
[2026-06-05 22:29:14,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:29:15,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:29:15,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:29:15,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:29:15,338.338 INFO    ] time= 05/06/2026 22:29:15
[2026-06-05 22:29:15,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:29:15,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:29:15,491.491 INFO    ] No existing commands found in stream
[2026-06-05 22:29:20,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:29:20,514.514 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-05 22:29:24,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:29:24,699.699 INFO    ] Checking for system updates...
[2026-06-05 22:29:24,735.735 INFO    ] 200
[2026-06-05 22:29:24,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:29:24,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:29:24,800.800 INFO    ] No update needed
[2026-06-05 22:29:24,802.802 INFO    ] Checking for camera pi updates...
[2026-06-05 22:29:24,836.836 INFO    ] 200
[2026-06-05 22:29:24,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:29:24,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:29:24,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:29:24,937.937 INFO    ] No camera update needed
[2026-06-05 22:29:24,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:29:24,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:29:24,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:29:24,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:29:26,994.994 INFO    ] ================================================
[2026-06-05 22:29:27,008.008 INFO    ] Launching Daemon at Fri Jun  5 22:29:27 IST 2026
[2026-06-05 22:29:27,019.019 INFO    ] ================================================
[2026-06-05 22:29:27,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:29:27
[2026-06-05 22:29:28,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:29:28,446.446 INFO    ] Initializing speech engine...
[2026-06-05 22:29:28,454.454 INFO    ] 2026-06-05 22:29:28
[2026-06-05 22:29:28,704.704 INFO    ] 2026-06-05 22:29:28
[2026-06-05 22:29:28,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:29:28,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:29:28,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:29:29,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:29:29,219.219 INFO    ] time= 05/06/2026 22:29:29
[2026-06-05 22:29:29,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:29:29,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:29:29,414.414 INFO    ] No existing commands found in stream
[2026-06-05 22:29:34,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:29:34,446.446 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-05 22:29:37,912.912 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:29:37,915.915 INFO    ] Checking for system updates...
[2026-06-05 22:29:37,952.952 INFO    ] 200
[2026-06-05 22:29:37,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:29:38,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:29:38,011.011 INFO    ] No update needed
[2026-06-05 22:29:38,013.013 INFO    ] Checking for camera pi updates...
[2026-06-05 22:29:38,048.048 INFO    ] 200
[2026-06-05 22:29:38,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:29:38,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:29:38,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:29:38,158.158 INFO    ] No camera update needed
[2026-06-05 22:29:38,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:29:38,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:29:38,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:29:38,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:29:40,216.216 INFO    ] ================================================
[2026-06-05 22:29:40,231.231 INFO    ] Launching Daemon at Fri Jun  5 22:29:40 IST 2026
[2026-06-05 22:29:40,242.242 INFO    ] ================================================
[2026-06-05 22:29:40,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:29:40
[2026-06-05 22:29:41,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:29:41,826.826 INFO    ] Initializing speech engine...
[2026-06-05 22:29:41,836.836 INFO    ] 2026-06-05 22:29:41
[2026-06-05 22:29:42,104.104 INFO    ] 2026-06-05 22:29:42
[2026-06-05 22:29:42,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:29:42,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:29:42,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:29:42,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:29:42,666.666 INFO    ] time= 05/06/2026 22:29:42
[2026-06-05 22:29:42,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:29:42,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:29:42,846.846 INFO    ] No existing commands found in stream
[2026-06-05 22:29:47,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:29:47,880.880 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 22:29:52,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:29:52,074.074 INFO    ] Checking for system updates...
[2026-06-05 22:29:52,116.116 INFO    ] 200
[2026-06-05 22:29:52,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:29:52,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:29:52,178.178 INFO    ] No update needed
[2026-06-05 22:29:52,181.181 INFO    ] Checking for camera pi updates...
[2026-06-05 22:29:52,219.219 INFO    ] 200
[2026-06-05 22:29:52,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:29:52,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:29:52,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:29:52,316.316 INFO    ] No camera update needed
[2026-06-05 22:29:52,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:29:52,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:29:52,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:29:52,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:29:54,371.371 INFO    ] ================================================
[2026-06-05 22:29:54,386.386 INFO    ] Launching Daemon at Fri Jun  5 22:29:54 IST 2026
[2026-06-05 22:29:54,397.397 INFO    ] ================================================
[2026-06-05 22:29:55,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:29:55
[2026-06-05 22:29:55,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:29:56,095.095 INFO    ] Initializing speech engine...
[2026-06-05 22:29:56,103.103 INFO    ] 2026-06-05 22:29:56
[2026-06-05 22:29:56,384.384 INFO    ] 2026-06-05 22:29:56
[2026-06-05 22:29:56,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:29:56,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:29:56,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:29:56,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:29:56,969.969 INFO    ] time= 05/06/2026 22:29:56
[2026-06-05 22:29:56,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:29:56,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:29:57,115.115 INFO    ] No existing commands found in stream
[2026-06-05 22:30:02,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:30:02,139.139 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 22:30:08,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:30:08,654.654 INFO    ] Checking for system updates...
[2026-06-05 22:30:08,690.690 INFO    ] 200
[2026-06-05 22:30:08,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:30:08,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:30:08,754.754 INFO    ] No update needed
[2026-06-05 22:30:08,757.757 INFO    ] Checking for camera pi updates...
[2026-06-05 22:30:08,791.791 INFO    ] 200
[2026-06-05 22:30:08,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:30:08,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:30:08,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:30:08,877.877 INFO    ] No camera update needed
[2026-06-05 22:30:08,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:30:08,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:30:08,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:30:08,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:30:10,933.933 INFO    ] ================================================
[2026-06-05 22:30:10,948.948 INFO    ] Launching Daemon at Fri Jun  5 22:30:10 IST 2026
[2026-06-05 22:30:10,959.959 INFO    ] ================================================
[2026-06-05 22:30:11,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:30:11
[2026-06-05 22:30:12,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:30:12,493.493 INFO    ] Initializing speech engine...
[2026-06-05 22:30:12,502.502 INFO    ] 2026-06-05 22:30:12
[2026-06-05 22:30:12,794.794 INFO    ] 2026-06-05 22:30:12
[2026-06-05 22:30:12,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:30:13,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:30:13,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:30:13,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:30:13,392.392 INFO    ] time= 05/06/2026 22:30:13
[2026-06-05 22:30:13,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:30:13,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:30:13,556.556 INFO    ] No existing commands found in stream
[2026-06-05 22:30:18,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:30:18,577.577 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-05 22:30:22,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:30:22,400.400 INFO    ] Checking for system updates...
[2026-06-05 22:30:22,440.440 INFO    ] 200
[2026-06-05 22:30:22,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:30:22,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:30:22,503.503 INFO    ] No update needed
[2026-06-05 22:30:22,506.506 INFO    ] Checking for camera pi updates...
[2026-06-05 22:30:22,543.543 INFO    ] 200
[2026-06-05 22:30:22,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:30:22,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:30:22,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:30:22,639.639 INFO    ] No camera update needed
[2026-06-05 22:30:22,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:30:22,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:30:22,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:30:22,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:30:24,695.695 INFO    ] ================================================
[2026-06-05 22:30:24,710.710 INFO    ] Launching Daemon at Fri Jun  5 22:30:24 IST 2026
[2026-06-05 22:30:24,720.720 INFO    ] ================================================
[2026-06-05 22:30:25,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:30:25
[2026-06-05 22:30:25,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:30:26,227.227 INFO    ] Initializing speech engine...
[2026-06-05 22:30:26,233.233 INFO    ] 2026-06-05 22:30:26
[2026-06-05 22:30:26,505.505 INFO    ] 2026-06-05 22:30:26
[2026-06-05 22:30:26,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:30:26,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:30:26,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:30:26,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:30:26,935.935 INFO    ] time= 05/06/2026 22:30:26
[2026-06-05 22:30:26,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:30:26,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:30:27,132.132 INFO    ] No existing commands found in stream
[2026-06-05 22:30:32,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:30:32,146.146 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 22:30:34,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:30:34,899.899 INFO    ] Checking for system updates...
[2026-06-05 22:30:34,939.939 INFO    ] 200
[2026-06-05 22:30:34,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:30:35,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:30:35,005.005 INFO    ] No update needed
[2026-06-05 22:30:35,007.007 INFO    ] Checking for camera pi updates...
[2026-06-05 22:30:35,042.042 INFO    ] 200
[2026-06-05 22:30:35,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:30:35,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:30:35,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:30:35,134.134 INFO    ] No camera update needed
[2026-06-05 22:30:35,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:30:35,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:30:35,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:30:35,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:30:37,189.189 INFO    ] ================================================
[2026-06-05 22:30:37,205.205 INFO    ] Launching Daemon at Fri Jun  5 22:30:37 IST 2026
[2026-06-05 22:30:37,216.216 INFO    ] ================================================
[2026-06-05 22:30:37,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:30:37
[2026-06-05 22:30:38,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:30:38,906.906 INFO    ] Initializing speech engine...
[2026-06-05 22:30:38,917.917 INFO    ] 2026-06-05 22:30:38
[2026-06-05 22:30:39,229.229 INFO    ] 2026-06-05 22:30:39
[2026-06-05 22:30:39,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:30:39,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:30:39,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:30:39,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:30:39,754.754 INFO    ] time= 05/06/2026 22:30:39
[2026-06-05 22:30:39,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:30:39,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:30:39,894.894 INFO    ] No existing commands found in stream
[2026-06-05 22:30:44,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:30:44,927.927 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-05 22:30:48,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:30:48,984.984 INFO    ] Checking for system updates...
[2026-06-05 22:30:49,028.028 INFO    ] 200
[2026-06-05 22:30:49,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:30:49,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:30:49,118.118 INFO    ] No update needed
[2026-06-05 22:30:49,123.123 INFO    ] Checking for camera pi updates...
[2026-06-05 22:30:49,163.163 INFO    ] 200
[2026-06-05 22:30:49,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:30:49,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:30:49,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:30:49,265.265 INFO    ] No camera update needed
[2026-06-05 22:30:49,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:30:49,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:30:49,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:30:49,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:30:51,327.327 INFO    ] ================================================
[2026-06-05 22:30:51,342.342 INFO    ] Launching Daemon at Fri Jun  5 22:30:51 IST 2026
[2026-06-05 22:30:51,353.353 INFO    ] ================================================
[2026-06-05 22:30:51,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:30:51
[2026-06-05 22:30:52,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:30:52,794.794 INFO    ] Initializing speech engine...
[2026-06-05 22:30:52,802.802 INFO    ] 2026-06-05 22:30:52
[2026-06-05 22:30:53,051.051 INFO    ] 2026-06-05 22:30:53
[2026-06-05 22:30:53,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:30:53,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:30:53,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:30:53,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:30:53,608.608 INFO    ] time= 05/06/2026 22:30:53
[2026-06-05 22:30:53,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:30:53,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:30:53,760.760 INFO    ] No existing commands found in stream
[2026-06-05 22:30:58,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:30:58,778.778 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 22:31:02,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:31:02,551.551 INFO    ] Checking for system updates...
[2026-06-05 22:31:02,603.603 INFO    ] 200
[2026-06-05 22:31:02,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:02,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:31:02,697.697 INFO    ] No update needed
[2026-06-05 22:31:02,701.701 INFO    ] Checking for camera pi updates...
[2026-06-05 22:31:02,743.743 INFO    ] 200
[2026-06-05 22:31:02,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:02,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:31:02,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:31:02,827.827 INFO    ] No camera update needed
[2026-06-05 22:31:02,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:31:02,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:31:02,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:31:02,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:31:04,885.885 INFO    ] ================================================
[2026-06-05 22:31:04,900.900 INFO    ] Launching Daemon at Fri Jun  5 22:31:04 IST 2026
[2026-06-05 22:31:04,910.910 INFO    ] ================================================
[2026-06-05 22:31:05,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:31:05
[2026-06-05 22:31:06,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:31:06,368.368 INFO    ] Initializing speech engine...
[2026-06-05 22:31:06,374.374 INFO    ] 2026-06-05 22:31:06
[2026-06-05 22:31:06,664.664 INFO    ] 2026-06-05 22:31:06
[2026-06-05 22:31:06,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:31:06,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:31:06,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:31:07,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:31:07,073.073 INFO    ] time= 05/06/2026 22:31:07
[2026-06-05 22:31:07,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:31:07,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:31:07,223.223 INFO    ] No existing commands found in stream
[2026-06-05 22:31:12,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:31:12,251.251 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 22:31:14,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:31:14,041.041 INFO    ] Checking for system updates...
[2026-06-05 22:31:14,077.077 INFO    ] 200
[2026-06-05 22:31:14,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:14,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:31:14,140.140 INFO    ] No update needed
[2026-06-05 22:31:14,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 22:31:14,177.177 INFO    ] 200
[2026-06-05 22:31:14,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:14,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:31:14,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:31:14,291.291 INFO    ] No camera update needed
[2026-06-05 22:31:14,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:31:14,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:31:14,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:31:14,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:31:16,345.345 INFO    ] ================================================
[2026-06-05 22:31:16,360.360 INFO    ] Launching Daemon at Fri Jun  5 22:31:16 IST 2026
[2026-06-05 22:31:16,371.371 INFO    ] ================================================
[2026-06-05 22:31:16,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:31:16
[2026-06-05 22:31:17,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:31:17,781.781 INFO    ] Initializing speech engine...
[2026-06-05 22:31:17,806.806 INFO    ] 2026-06-05 22:31:17
[2026-06-05 22:31:18,072.072 INFO    ] 2026-06-05 22:31:18
[2026-06-05 22:31:18,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:31:18,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:31:18,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:31:18,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:31:18,550.550 INFO    ] time= 05/06/2026 22:31:18
[2026-06-05 22:31:18,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:31:18,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:31:18,807.807 INFO    ] No existing commands found in stream
[2026-06-05 22:31:23,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:31:23,831.831 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-05 22:31:28,101.101 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:31:28,104.104 INFO    ] Checking for system updates...
[2026-06-05 22:31:28,140.140 INFO    ] 200
[2026-06-05 22:31:28,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:28,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:31:28,202.202 INFO    ] No update needed
[2026-06-05 22:31:28,205.205 INFO    ] Checking for camera pi updates...
[2026-06-05 22:31:28,241.241 INFO    ] 200
[2026-06-05 22:31:28,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:28,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:31:28,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:31:28,338.338 INFO    ] No camera update needed
[2026-06-05 22:31:28,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:31:28,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:31:28,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:31:28,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:31:30,394.394 INFO    ] ================================================
[2026-06-05 22:31:30,409.409 INFO    ] Launching Daemon at Fri Jun  5 22:31:30 IST 2026
[2026-06-05 22:31:30,420.420 INFO    ] ================================================
[2026-06-05 22:31:31,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:31:30
[2026-06-05 22:31:31,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:31:31,938.938 INFO    ] Initializing speech engine...
[2026-06-05 22:31:31,945.945 INFO    ] 2026-06-05 22:31:31
[2026-06-05 22:31:32,229.229 INFO    ] 2026-06-05 22:31:32
[2026-06-05 22:31:32,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:31:32,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:31:32,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:31:32,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:31:32,626.626 INFO    ] time= 05/06/2026 22:31:32
[2026-06-05 22:31:32,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:31:32,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:31:32,804.804 INFO    ] No existing commands found in stream
[2026-06-05 22:31:37,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:31:37,838.838 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-05 22:31:39,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:31:39,902.902 INFO    ] Checking for system updates...
[2026-06-05 22:31:39,942.942 INFO    ] 200
[2026-06-05 22:31:39,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:39,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:31:40,001.001 INFO    ] No update needed
[2026-06-05 22:31:40,003.003 INFO    ] Checking for camera pi updates...
[2026-06-05 22:31:40,040.040 INFO    ] 200
[2026-06-05 22:31:40,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:40,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:31:40,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:31:40,151.151 INFO    ] No camera update needed
[2026-06-05 22:31:40,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:31:40,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:31:40,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:31:40,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:31:42,208.208 INFO    ] ================================================
[2026-06-05 22:31:42,223.223 INFO    ] Launching Daemon at Fri Jun  5 22:31:42 IST 2026
[2026-06-05 22:31:42,234.234 INFO    ] ================================================
[2026-06-05 22:31:42,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:31:42
[2026-06-05 22:31:43,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:31:43,770.770 INFO    ] Initializing speech engine...
[2026-06-05 22:31:43,776.776 INFO    ] 2026-06-05 22:31:43
[2026-06-05 22:31:44,046.046 INFO    ] 2026-06-05 22:31:44
[2026-06-05 22:31:44,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:31:44,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:31:44,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:31:44,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:31:44,597.597 INFO    ] time= 05/06/2026 22:31:44
[2026-06-05 22:31:44,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:31:44,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:31:44,718.718 INFO    ] No existing commands found in stream
[2026-06-05 22:31:49,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:31:49,741.741 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-05 22:31:53,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:31:53,375.375 INFO    ] Checking for system updates...
[2026-06-05 22:31:53,412.412 INFO    ] 200
[2026-06-05 22:31:53,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:53,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:31:53,471.471 INFO    ] No update needed
[2026-06-05 22:31:53,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 22:31:53,510.510 INFO    ] 200
[2026-06-05 22:31:53,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:31:53,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:31:53,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:31:53,605.605 INFO    ] No camera update needed
[2026-06-05 22:31:53,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:31:53,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:31:53,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:31:53,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:31:55,661.661 INFO    ] ================================================
[2026-06-05 22:31:55,676.676 INFO    ] Launching Daemon at Fri Jun  5 22:31:55 IST 2026
[2026-06-05 22:31:55,687.687 INFO    ] ================================================
[2026-06-05 22:31:56,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:31:56
[2026-06-05 22:31:56,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:31:57,085.085 INFO    ] Initializing speech engine...
[2026-06-05 22:31:57,108.108 INFO    ] 2026-06-05 22:31:57
[2026-06-05 22:31:57,379.379 INFO    ] 2026-06-05 22:31:57
[2026-06-05 22:31:57,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:31:57,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:31:57,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:31:57,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:31:57,788.788 INFO    ] time= 05/06/2026 22:31:57
[2026-06-05 22:31:57,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:31:57,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:31:57,955.955 INFO    ] No existing commands found in stream
[2026-06-05 22:32:02,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:32:02,980.980 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-05 22:32:04,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:32:04,604.604 INFO    ] Checking for system updates...
[2026-06-05 22:32:04,643.643 INFO    ] 200
[2026-06-05 22:32:04,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:04,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:32:04,707.707 INFO    ] No update needed
[2026-06-05 22:32:04,709.709 INFO    ] Checking for camera pi updates...
[2026-06-05 22:32:04,746.746 INFO    ] 200
[2026-06-05 22:32:04,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:04,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:32:04,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:32:04,837.837 INFO    ] No camera update needed
[2026-06-05 22:32:04,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:32:04,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:32:04,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:32:04,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:32:06,893.893 INFO    ] ================================================
[2026-06-05 22:32:06,908.908 INFO    ] Launching Daemon at Fri Jun  5 22:32:06 IST 2026
[2026-06-05 22:32:06,919.919 INFO    ] ================================================
[2026-06-05 22:32:07,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:32:07
[2026-06-05 22:32:08,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:32:08,376.376 INFO    ] Initializing speech engine...
[2026-06-05 22:32:08,385.385 INFO    ] 2026-06-05 22:32:08
[2026-06-05 22:32:08,643.643 INFO    ] 2026-06-05 22:32:08
[2026-06-05 22:32:08,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:32:08,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:32:08,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:32:09,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:32:09,189.189 INFO    ] time= 05/06/2026 22:32:09
[2026-06-05 22:32:09,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:32:09,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:32:09,343.343 INFO    ] No existing commands found in stream
[2026-06-05 22:32:14,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:32:14,359.359 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-05 22:32:15,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:32:15,569.569 INFO    ] Checking for system updates...
[2026-06-05 22:32:15,606.606 INFO    ] 200
[2026-06-05 22:32:15,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:15,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:32:15,671.671 INFO    ] No update needed
[2026-06-05 22:32:15,673.673 INFO    ] Checking for camera pi updates...
[2026-06-05 22:32:15,708.708 INFO    ] 200
[2026-06-05 22:32:15,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:15,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:32:15,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:32:15,803.803 INFO    ] No camera update needed
[2026-06-05 22:32:15,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:32:15,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:32:15,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:32:15,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:32:17,861.861 INFO    ] ================================================
[2026-06-05 22:32:17,877.877 INFO    ] Launching Daemon at Fri Jun  5 22:32:17 IST 2026
[2026-06-05 22:32:17,887.887 INFO    ] ================================================
[2026-06-05 22:32:18,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:32:18
[2026-06-05 22:32:19,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:32:19,294.294 INFO    ] Initializing speech engine...
[2026-06-05 22:32:19,318.318 INFO    ] 2026-06-05 22:32:19
[2026-06-05 22:32:19,574.574 INFO    ] 2026-06-05 22:32:19
[2026-06-05 22:32:19,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:32:19,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:32:19,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:32:20,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:32:20,142.142 INFO    ] time= 05/06/2026 22:32:20
[2026-06-05 22:32:20,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:32:20,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:32:20,295.295 INFO    ] No existing commands found in stream
[2026-06-05 22:32:25,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:32:25,316.316 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-05 22:32:29,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:32:29,638.638 INFO    ] Checking for system updates...
[2026-06-05 22:32:29,673.673 INFO    ] 200
[2026-06-05 22:32:29,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:29,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:32:29,739.739 INFO    ] No update needed
[2026-06-05 22:32:29,742.742 INFO    ] Checking for camera pi updates...
[2026-06-05 22:32:29,779.779 INFO    ] 200
[2026-06-05 22:32:29,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:29,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:32:29,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:32:29,893.893 INFO    ] No camera update needed
[2026-06-05 22:32:29,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:32:29,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:32:29,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:32:29,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:32:31,953.953 INFO    ] ================================================
[2026-06-05 22:32:31,969.969 INFO    ] Launching Daemon at Fri Jun  5 22:32:31 IST 2026
[2026-06-05 22:32:31,981.981 INFO    ] ================================================
[2026-06-05 22:32:32,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:32:32
[2026-06-05 22:32:33,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:32:33,495.495 INFO    ] Initializing speech engine...
[2026-06-05 22:32:33,504.504 INFO    ] 2026-06-05 22:32:33
[2026-06-05 22:32:33,753.753 INFO    ] 2026-06-05 22:32:33
[2026-06-05 22:32:33,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:32:34,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:32:34,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:32:34,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:32:34,302.302 INFO    ] time= 05/06/2026 22:32:34
[2026-06-05 22:32:34,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:32:34,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:32:34,468.468 INFO    ] No existing commands found in stream
[2026-06-05 22:32:39,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:32:39,491.491 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 22:32:42,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:32:42,880.880 INFO    ] Checking for system updates...
[2026-06-05 22:32:42,916.916 INFO    ] 200
[2026-06-05 22:32:42,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:42,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:32:42,982.982 INFO    ] No update needed
[2026-06-05 22:32:42,985.985 INFO    ] Checking for camera pi updates...
[2026-06-05 22:32:43,023.023 INFO    ] 200
[2026-06-05 22:32:43,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:43,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:32:43,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:32:43,121.121 INFO    ] No camera update needed
[2026-06-05 22:32:43,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:32:43,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:32:43,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:32:43,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:32:45,177.177 INFO    ] ================================================
[2026-06-05 22:32:45,192.192 INFO    ] Launching Daemon at Fri Jun  5 22:32:45 IST 2026
[2026-06-05 22:32:45,203.203 INFO    ] ================================================
[2026-06-05 22:32:45,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:32:45
[2026-06-05 22:32:46,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:32:46,650.650 INFO    ] Initializing speech engine...
[2026-06-05 22:32:46,659.659 INFO    ] 2026-06-05 22:32:46
[2026-06-05 22:32:46,923.923 INFO    ] 2026-06-05 22:32:46
[2026-06-05 22:32:46,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:32:47,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:32:47,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:32:47,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:32:47,413.413 INFO    ] time= 05/06/2026 22:32:47
[2026-06-05 22:32:47,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:32:47,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:32:47,660.660 INFO    ] No existing commands found in stream
[2026-06-05 22:32:52,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:32:52,689.689 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-05 22:32:55,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:32:55,865.865 INFO    ] Checking for system updates...
[2026-06-05 22:32:55,901.901 INFO    ] 200
[2026-06-05 22:32:55,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:55,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:32:55,966.966 INFO    ] No update needed
[2026-06-05 22:32:55,969.969 INFO    ] Checking for camera pi updates...
[2026-06-05 22:32:56,002.002 INFO    ] 200
[2026-06-05 22:32:56,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:32:56,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:32:56,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:32:56,102.102 INFO    ] No camera update needed
[2026-06-05 22:32:56,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:32:56,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:32:56,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:32:56,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:32:58,158.158 INFO    ] ================================================
[2026-06-05 22:32:58,173.173 INFO    ] Launching Daemon at Fri Jun  5 22:32:58 IST 2026
[2026-06-05 22:32:58,185.185 INFO    ] ================================================
[2026-06-05 22:32:58,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:32:58
[2026-06-05 22:32:59,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:32:59,668.668 INFO    ] Initializing speech engine...
[2026-06-05 22:32:59,676.676 INFO    ] 2026-06-05 22:32:59
[2026-06-05 22:32:59,954.954 INFO    ] 2026-06-05 22:32:59
[2026-06-05 22:32:59,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:33:01,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:33:01,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:33:02,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:33:02,367.367 INFO    ] time= 05/06/2026 22:33:02
[2026-06-05 22:33:02,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:33:02,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:33:02,480.480 INFO    ] No existing commands found in stream
[2026-06-05 22:33:07,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:33:07,503.503 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-05 22:33:08,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:33:08,034.034 INFO    ] Checking for system updates...
[2026-06-05 22:33:08,073.073 INFO    ] 200
[2026-06-05 22:33:08,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:08,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:08,139.139 INFO    ] No update needed
[2026-06-05 22:33:08,141.141 INFO    ] Checking for camera pi updates...
[2026-06-05 22:33:08,179.179 INFO    ] 200
[2026-06-05 22:33:08,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:08,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:33:08,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:08,373.373 INFO    ] No camera update needed
[2026-06-05 22:33:08,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:33:08,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:33:08,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:33:08,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:33:10,431.431 INFO    ] ================================================
[2026-06-05 22:33:10,447.447 INFO    ] Launching Daemon at Fri Jun  5 22:33:10 IST 2026
[2026-06-05 22:33:10,458.458 INFO    ] ================================================
[2026-06-05 22:33:11,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:33:11
[2026-06-05 22:33:11,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:33:11,931.931 INFO    ] Initializing speech engine...
[2026-06-05 22:33:11,940.940 INFO    ] 2026-06-05 22:33:11
[2026-06-05 22:33:12,185.185 INFO    ] 2026-06-05 22:33:12
[2026-06-05 22:33:12,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:33:12,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:33:12,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:33:12,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:33:12,695.695 INFO    ] time= 05/06/2026 22:33:12
[2026-06-05 22:33:12,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:33:12,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:33:12,897.897 INFO    ] No existing commands found in stream
[2026-06-05 22:33:17,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:33:17,926.926 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-05 22:33:19,034.034 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:33:19,036.036 INFO    ] Checking for system updates...
[2026-06-05 22:33:19,075.075 INFO    ] 200
[2026-06-05 22:33:19,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:19,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:19,138.138 INFO    ] No update needed
[2026-06-05 22:33:19,140.140 INFO    ] Checking for camera pi updates...
[2026-06-05 22:33:19,176.176 INFO    ] 200
[2026-06-05 22:33:19,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:19,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:33:19,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:19,269.269 INFO    ] No camera update needed
[2026-06-05 22:33:19,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:33:19,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:33:19,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:33:19,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:33:21,329.329 INFO    ] ================================================
[2026-06-05 22:33:21,344.344 INFO    ] Launching Daemon at Fri Jun  5 22:33:21 IST 2026
[2026-06-05 22:33:21,356.356 INFO    ] ================================================
[2026-06-05 22:33:21,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:33:21
[2026-06-05 22:33:22,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:33:22,799.799 INFO    ] Initializing speech engine...
[2026-06-05 22:33:22,813.813 INFO    ] 2026-06-05 22:33:22
[2026-06-05 22:33:23,098.098 INFO    ] 2026-06-05 22:33:23
[2026-06-05 22:33:23,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:33:23,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:33:23,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:33:23,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:33:23,572.572 INFO    ] time= 05/06/2026 22:33:23
[2026-06-05 22:33:23,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:33:23,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:33:23,773.773 INFO    ] No existing commands found in stream
[2026-06-05 22:33:28,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:33:28,788.788 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-05 22:33:32,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:33:32,525.525 INFO    ] Checking for system updates...
[2026-06-05 22:33:32,584.584 INFO    ] 200
[2026-06-05 22:33:32,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:32,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:32,659.659 INFO    ] No update needed
[2026-06-05 22:33:32,661.661 INFO    ] Checking for camera pi updates...
[2026-06-05 22:33:32,702.702 INFO    ] 200
[2026-06-05 22:33:32,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:32,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:33:32,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:32,806.806 INFO    ] No camera update needed
[2026-06-05 22:33:32,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:33:32,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:33:32,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:33:32,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:33:34,865.865 INFO    ] ================================================
[2026-06-05 22:33:34,882.882 INFO    ] Launching Daemon at Fri Jun  5 22:33:34 IST 2026
[2026-06-05 22:33:34,894.894 INFO    ] ================================================
[2026-06-05 22:33:35,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:33:35
[2026-06-05 22:33:36,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:33:36,591.591 INFO    ] Initializing speech engine...
[2026-06-05 22:33:36,603.603 INFO    ] 2026-06-05 22:33:36
[2026-06-05 22:33:36,890.890 INFO    ] 2026-06-05 22:33:36
[2026-06-05 22:33:37,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:33:37,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:33:37,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:33:37,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:33:37,465.465 INFO    ] time= 05/06/2026 22:33:37
[2026-06-05 22:33:37,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:33:37,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:33:37,610.610 INFO    ] No existing commands found in stream
[2026-06-05 22:33:42,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:33:42,644.644 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 22:33:46,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:33:46,522.522 INFO    ] Checking for system updates...
[2026-06-05 22:33:46,559.559 INFO    ] 200
[2026-06-05 22:33:46,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:46,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:46,621.621 INFO    ] No update needed
[2026-06-05 22:33:46,624.624 INFO    ] Checking for camera pi updates...
[2026-06-05 22:33:46,659.659 INFO    ] 200
[2026-06-05 22:33:46,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:46,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:33:46,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:46,753.753 INFO    ] No camera update needed
[2026-06-05 22:33:46,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:33:46,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:33:46,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:33:46,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:33:48,816.816 INFO    ] ================================================
[2026-06-05 22:33:48,832.832 INFO    ] Launching Daemon at Fri Jun  5 22:33:48 IST 2026
[2026-06-05 22:33:48,843.843 INFO    ] ================================================
[2026-06-05 22:33:49,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:33:49
[2026-06-05 22:33:50,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:33:50,427.427 INFO    ] Initializing speech engine...
[2026-06-05 22:33:50,441.441 INFO    ] 2026-06-05 22:33:50
[2026-06-05 22:33:50,750.750 INFO    ] 2026-06-05 22:33:50
[2026-06-05 22:33:50,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:33:51,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:33:51,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:33:51,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:33:51,259.259 INFO    ] time= 05/06/2026 22:33:51
[2026-06-05 22:33:51,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:33:51,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:33:51,413.413 INFO    ] No existing commands found in stream
[2026-06-05 22:33:56,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:33:56,438.438 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 22:33:58,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:33:58,523.523 INFO    ] Checking for system updates...
[2026-06-05 22:33:58,565.565 INFO    ] 200
[2026-06-05 22:33:58,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:58,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:58,632.632 INFO    ] No update needed
[2026-06-05 22:33:58,635.635 INFO    ] Checking for camera pi updates...
[2026-06-05 22:33:58,671.671 INFO    ] 200
[2026-06-05 22:33:58,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:33:58,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:33:58,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:33:58,772.772 INFO    ] No camera update needed
[2026-06-05 22:33:58,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:33:58,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:33:58,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:33:58,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:34:00,832.832 INFO    ] ================================================
[2026-06-05 22:34:00,848.848 INFO    ] Launching Daemon at Fri Jun  5 22:34:00 IST 2026
[2026-06-05 22:34:00,859.859 INFO    ] ================================================
[2026-06-05 22:34:01,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:34:01
[2026-06-05 22:34:02,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:34:02,550.550 INFO    ] Initializing speech engine...
[2026-06-05 22:34:02,565.565 INFO    ] 2026-06-05 22:34:02
[2026-06-05 22:34:02,886.886 INFO    ] 2026-06-05 22:34:02
[2026-06-05 22:34:02,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:34:03,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:34:03,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:34:03,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:34:03,422.422 INFO    ] time= 05/06/2026 22:34:03
[2026-06-05 22:34:03,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:34:03,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:34:03,661.661 INFO    ] No existing commands found in stream
[2026-06-05 22:34:08,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:34:08,682.682 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-05 22:34:10,340.340 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:34:10,342.342 INFO    ] Checking for system updates...
[2026-06-05 22:34:10,378.378 INFO    ] 200
[2026-06-05 22:34:10,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:34:10,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:34:10,437.437 INFO    ] No update needed
[2026-06-05 22:34:10,439.439 INFO    ] Checking for camera pi updates...
[2026-06-05 22:34:10,472.472 INFO    ] 200
[2026-06-05 22:34:10,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:34:10,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:34:10,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:34:10,552.552 INFO    ] No camera update needed
[2026-06-05 22:34:10,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:34:10,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:34:10,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:34:10,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:34:12,609.609 INFO    ] ================================================
[2026-06-05 22:34:12,626.626 INFO    ] Launching Daemon at Fri Jun  5 22:34:12 IST 2026
[2026-06-05 22:34:12,636.636 INFO    ] ================================================
[2026-06-05 22:34:13,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:34:13
[2026-06-05 22:34:13,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:34:14,088.088 INFO    ] Initializing speech engine...
[2026-06-05 22:34:14,113.113 INFO    ] 2026-06-05 22:34:14
[2026-06-05 22:34:14,382.382 INFO    ] 2026-06-05 22:34:14
[2026-06-05 22:34:14,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:34:14,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:34:14,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:34:14,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:34:14,918.918 INFO    ] time= 05/06/2026 22:34:14
[2026-06-05 22:34:14,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:34:15,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:34:15,150.150 INFO    ] No existing commands found in stream
[2026-06-05 22:34:20,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:34:20,180.180 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-05 22:34:23,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:34:23,349.349 INFO    ] Checking for system updates...
[2026-06-05 22:34:23,386.386 INFO    ] 200
[2026-06-05 22:34:23,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:34:23,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:34:23,449.449 INFO    ] No update needed
[2026-06-05 22:34:23,452.452 INFO    ] Checking for camera pi updates...
[2026-06-05 22:34:23,486.486 INFO    ] 200
[2026-06-05 22:34:23,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:34:23,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:34:23,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:34:23,582.582 INFO    ] No camera update needed
[2026-06-05 22:34:23,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:34:23,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:34:23,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:34:23,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:34:25,638.638 INFO    ] ================================================
[2026-06-05 22:34:25,654.654 INFO    ] Launching Daemon at Fri Jun  5 22:34:25 IST 2026
[2026-06-05 22:34:25,666.666 INFO    ] ================================================
[2026-06-05 22:34:26,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:34:26
[2026-06-05 22:34:26,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:34:27,258.258 INFO    ] Initializing speech engine...
[2026-06-05 22:34:27,266.266 INFO    ] 2026-06-05 22:34:27
[2026-06-05 22:34:27,539.539 INFO    ] 2026-06-05 22:34:27
[2026-06-05 22:34:27,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:34:27,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:34:28,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:34:28,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:34:28,245.245 INFO    ] time= 05/06/2026 22:34:28
[2026-06-05 22:34:28,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:34:28,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:34:28,505.505 INFO    ] No existing commands found in stream
[2026-06-05 22:34:33,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:34:33,521.521 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-05 22:34:34,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:34:34,401.401 INFO    ] Checking for system updates...
[2026-06-05 22:34:34,439.439 INFO    ] 200
[2026-06-05 22:34:34,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:34:34,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:34:34,499.499 INFO    ] No update needed
[2026-06-05 22:34:34,502.502 INFO    ] Checking for camera pi updates...
[2026-06-05 22:34:34,537.537 INFO    ] 200
[2026-06-05 22:34:34,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:34:34,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:34:34,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:34:34,642.642 INFO    ] No camera update needed
[2026-06-05 22:34:34,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:34:34,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:34:34,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:34:34,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:34:36,701.701 INFO    ] ================================================
[2026-06-05 22:34:36,717.717 INFO    ] Launching Daemon at Fri Jun  5 22:34:36 IST 2026
[2026-06-05 22:34:36,728.728 INFO    ] ================================================
[2026-06-05 22:34:37,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:34:37
[2026-06-05 22:34:37,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:34:38,198.198 INFO    ] Initializing speech engine...
[2026-06-05 22:34:38,208.208 INFO    ] 2026-06-05 22:34:38
[2026-06-05 22:34:38,522.522 INFO    ] 2026-06-05 22:34:38
[2026-06-05 22:34:38,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:34:38,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:34:38,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:34:39,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:34:39,025.025 INFO    ] time= 05/06/2026 22:34:39
[2026-06-05 22:34:39,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:34:39,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:34:39,183.183 INFO    ] No existing commands found in stream
[2026-06-05 22:34:44,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:34:44,210.210 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-05 22:34:47,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:34:47,796.796 INFO    ] Checking for system updates...
[2026-06-05 22:34:47,836.836 INFO    ] 200
[2026-06-05 22:34:47,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:34:47,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:34:47,901.901 INFO    ] No update needed
[2026-06-05 22:34:47,904.904 INFO    ] Checking for camera pi updates...
[2026-06-05 22:34:47,941.941 INFO    ] 200
[2026-06-05 22:34:47,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:34:47,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:34:48,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:34:48,046.046 INFO    ] No camera update needed
[2026-06-05 22:34:48,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:34:48,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:34:48,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:34:48,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:34:50,104.104 INFO    ] ================================================
[2026-06-05 22:34:50,120.120 INFO    ] Launching Daemon at Fri Jun  5 22:34:50 IST 2026
[2026-06-05 22:34:50,131.131 INFO    ] ================================================
[2026-06-05 22:34:50,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:34:50
[2026-06-05 22:34:51,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:34:51,542.542 INFO    ] Initializing speech engine...
[2026-06-05 22:34:51,558.558 INFO    ] 2026-06-05 22:34:51
[2026-06-05 22:34:51,838.838 INFO    ] 2026-06-05 22:34:51
[2026-06-05 22:34:51,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:35:02,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:35:02,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:35:02,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:35:02,675.675 INFO    ] time= 05/06/2026 22:35:02
[2026-06-05 22:35:02,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:35:02,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:35:02,758.758 INFO    ] No existing commands found in stream
[2026-06-05 22:35:07,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:35:07,770.770 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-05 22:35:08,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:35:08,517.517 INFO    ] Checking for system updates...
[2026-06-05 22:35:08,556.556 INFO    ] 200
[2026-06-05 22:35:08,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:08,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:35:08,616.616 INFO    ] No update needed
[2026-06-05 22:35:08,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 22:35:08,657.657 INFO    ] 200
[2026-06-05 22:35:08,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:08,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:35:08,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:35:08,737.737 INFO    ] No camera update needed
[2026-06-05 22:35:08,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:35:08,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:35:08,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:35:08,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:35:10,795.795 INFO    ] ================================================
[2026-06-05 22:35:10,811.811 INFO    ] Launching Daemon at Fri Jun  5 22:35:10 IST 2026
[2026-06-05 22:35:10,826.826 INFO    ] ================================================
[2026-06-05 22:35:11,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:35:11
[2026-06-05 22:35:12,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:35:12,291.291 INFO    ] Initializing speech engine...
[2026-06-05 22:35:12,301.301 INFO    ] 2026-06-05 22:35:12
[2026-06-05 22:35:12,563.563 INFO    ] 2026-06-05 22:35:12
[2026-06-05 22:35:12,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:35:12,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:35:12,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:35:13,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:35:13,092.092 INFO    ] time= 05/06/2026 22:35:13
[2026-06-05 22:35:13,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:35:13,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:35:13,351.351 INFO    ] No existing commands found in stream
[2026-06-05 22:35:18,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:35:18,377.377 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 22:35:18,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:35:18,988.988 INFO    ] Checking for system updates...
[2026-06-05 22:35:19,024.024 INFO    ] 200
[2026-06-05 22:35:19,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:19,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:35:19,084.084 INFO    ] No update needed
[2026-06-05 22:35:19,087.087 INFO    ] Checking for camera pi updates...
[2026-06-05 22:35:19,121.121 INFO    ] 200
[2026-06-05 22:35:19,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:19,166.166 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:35:19,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:35:19,317.317 INFO    ] No camera update needed
[2026-06-05 22:35:19,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:35:19,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:35:19,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:35:19,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:35:21,376.376 INFO    ] ================================================
[2026-06-05 22:35:21,391.391 INFO    ] Launching Daemon at Fri Jun  5 22:35:21 IST 2026
[2026-06-05 22:35:21,401.401 INFO    ] ================================================
[2026-06-05 22:35:21,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:35:21
[2026-06-05 22:35:22,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:35:22,810.810 INFO    ] Initializing speech engine...
[2026-06-05 22:35:22,819.819 INFO    ] 2026-06-05 22:35:22
[2026-06-05 22:35:23,111.111 INFO    ] 2026-06-05 22:35:23
[2026-06-05 22:35:23,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:35:23,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:35:23,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:35:23,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:35:23,645.645 INFO    ] time= 05/06/2026 22:35:23
[2026-06-05 22:35:23,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:35:23,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:35:23,777.777 INFO    ] No existing commands found in stream
[2026-06-05 22:35:28,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:35:28,791.791 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-05 22:35:32,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:35:32,513.513 INFO    ] Checking for system updates...
[2026-06-05 22:35:32,555.555 INFO    ] 200
[2026-06-05 22:35:32,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:32,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:35:32,619.619 INFO    ] No update needed
[2026-06-05 22:35:32,622.622 INFO    ] Checking for camera pi updates...
[2026-06-05 22:35:32,672.672 INFO    ] 200
[2026-06-05 22:35:32,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:32,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:35:32,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:35:32,784.784 INFO    ] No camera update needed
[2026-06-05 22:35:32,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:35:32,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:35:32,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:35:32,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:35:34,847.847 INFO    ] ================================================
[2026-06-05 22:35:34,863.863 INFO    ] Launching Daemon at Fri Jun  5 22:35:34 IST 2026
[2026-06-05 22:35:34,881.881 INFO    ] ================================================
[2026-06-05 22:35:35,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:35:35
[2026-06-05 22:35:36,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:35:36,342.342 INFO    ] Initializing speech engine...
[2026-06-05 22:35:36,349.349 INFO    ] 2026-06-05 22:35:36
[2026-06-05 22:35:36,610.610 INFO    ] 2026-06-05 22:35:36
[2026-06-05 22:35:36,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:35:36,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:35:36,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:35:37,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:35:37,154.154 INFO    ] time= 05/06/2026 22:35:37
[2026-06-05 22:35:37,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:35:37,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:35:37,308.308 INFO    ] No existing commands found in stream
[2026-06-05 22:35:42,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:35:42,324.324 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-05 22:35:46,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:35:46,245.245 INFO    ] Checking for system updates...
[2026-06-05 22:35:46,281.281 INFO    ] 200
[2026-06-05 22:35:46,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:46,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:35:46,342.342 INFO    ] No update needed
[2026-06-05 22:35:46,344.344 INFO    ] Checking for camera pi updates...
[2026-06-05 22:35:46,378.378 INFO    ] 200
[2026-06-05 22:35:46,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:46,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:35:46,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:35:46,479.479 INFO    ] No camera update needed
[2026-06-05 22:35:46,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:35:46,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:35:46,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:35:46,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:35:48,538.538 INFO    ] ================================================
[2026-06-05 22:35:48,554.554 INFO    ] Launching Daemon at Fri Jun  5 22:35:48 IST 2026
[2026-06-05 22:35:48,564.564 INFO    ] ================================================
[2026-06-05 22:35:49,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:35:49
[2026-06-05 22:35:49,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:35:50,002.002 INFO    ] Initializing speech engine...
[2026-06-05 22:35:50,008.008 INFO    ] 2026-06-05 22:35:50
[2026-06-05 22:35:50,268.268 INFO    ] 2026-06-05 22:35:50
[2026-06-05 22:35:50,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:35:50,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:35:50,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:35:50,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:35:50,821.821 INFO    ] time= 05/06/2026 22:35:50
[2026-06-05 22:35:50,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:35:50,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:35:50,989.989 INFO    ] No existing commands found in stream
[2026-06-05 22:35:56,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:35:56,008.008 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-05 22:35:56,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:35:56,606.606 INFO    ] Checking for system updates...
[2026-06-05 22:35:56,642.642 INFO    ] 200
[2026-06-05 22:35:56,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:56,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:35:56,700.700 INFO    ] No update needed
[2026-06-05 22:35:56,703.703 INFO    ] Checking for camera pi updates...
[2026-06-05 22:35:56,737.737 INFO    ] 200
[2026-06-05 22:35:56,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:35:56,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:35:56,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:35:56,836.836 INFO    ] No camera update needed
[2026-06-05 22:35:56,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:35:56,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:35:56,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:35:56,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:35:58,894.894 INFO    ] ================================================
[2026-06-05 22:35:58,910.910 INFO    ] Launching Daemon at Fri Jun  5 22:35:58 IST 2026
[2026-06-05 22:35:58,921.921 INFO    ] ================================================
[2026-06-05 22:35:59,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:35:59
[2026-06-05 22:36:00,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:36:00,556.556 INFO    ] Initializing speech engine...
[2026-06-05 22:36:00,563.563 INFO    ] 2026-06-05 22:36:00
[2026-06-05 22:36:00,851.851 INFO    ] 2026-06-05 22:36:00
[2026-06-05 22:36:00,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:36:02,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:36:02,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:36:02,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:36:02,788.788 INFO    ] time= 05/06/2026 22:36:02
[2026-06-05 22:36:02,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:36:02,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:36:02,984.984 INFO    ] No existing commands found in stream
[2026-06-05 22:36:08,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:36:08,019.019 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-05 22:36:10,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:36:10,577.577 INFO    ] Checking for system updates...
[2026-06-05 22:36:10,614.614 INFO    ] 200
[2026-06-05 22:36:10,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:36:10,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:36:10,680.680 INFO    ] No update needed
[2026-06-05 22:36:10,683.683 INFO    ] Checking for camera pi updates...
[2026-06-05 22:36:10,718.718 INFO    ] 200
[2026-06-05 22:36:10,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:36:10,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:36:10,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:36:10,812.812 INFO    ] No camera update needed
[2026-06-05 22:36:10,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:36:10,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:36:10,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:36:10,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:36:12,870.870 INFO    ] ================================================
[2026-06-05 22:36:12,886.886 INFO    ] Launching Daemon at Fri Jun  5 22:36:12 IST 2026
[2026-06-05 22:36:12,897.897 INFO    ] ================================================
[2026-06-05 22:36:13,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:36:13
[2026-06-05 22:36:14,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:36:14,353.353 INFO    ] Initializing speech engine...
[2026-06-05 22:36:14,370.370 INFO    ] 2026-06-05 22:36:14
[2026-06-05 22:36:14,635.635 INFO    ] 2026-06-05 22:36:14
[2026-06-05 22:36:14,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:36:14,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:36:14,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:36:15,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:36:15,139.139 INFO    ] time= 05/06/2026 22:36:15
[2026-06-05 22:36:15,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:36:15,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:36:15,355.355 INFO    ] No existing commands found in stream
[2026-06-05 22:36:20,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:36:20,380.380 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 22:36:24,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:36:24,777.777 INFO    ] Checking for system updates...
[2026-06-05 22:36:24,816.816 INFO    ] 200
[2026-06-05 22:36:24,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:36:24,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:36:24,875.875 INFO    ] No update needed
[2026-06-05 22:36:24,878.878 INFO    ] Checking for camera pi updates...
[2026-06-05 22:36:24,913.913 INFO    ] 200
[2026-06-05 22:36:24,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:36:24,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:36:25,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:36:25,010.010 INFO    ] No camera update needed
[2026-06-05 22:36:25,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:36:25,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:36:25,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:36:25,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:36:27,067.067 INFO    ] ================================================
[2026-06-05 22:36:27,083.083 INFO    ] Launching Daemon at Fri Jun  5 22:36:27 IST 2026
[2026-06-05 22:36:27,094.094 INFO    ] ================================================
[2026-06-05 22:36:27,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:36:27
[2026-06-05 22:36:28,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:36:28,552.552 INFO    ] Initializing speech engine...
[2026-06-05 22:36:28,567.567 INFO    ] 2026-06-05 22:36:28
[2026-06-05 22:36:28,831.831 INFO    ] 2026-06-05 22:36:28
[2026-06-05 22:36:28,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:36:29,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:36:29,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:36:29,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:36:29,309.309 INFO    ] time= 05/06/2026 22:36:29
[2026-06-05 22:36:29,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:36:29,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:36:29,602.602 INFO    ] No existing commands found in stream
[2026-06-05 22:36:34,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:36:34,621.621 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 22:36:36,285.285 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:36:36,288.288 INFO    ] Checking for system updates...
[2026-06-05 22:36:36,324.324 INFO    ] 200
[2026-06-05 22:36:36,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:36:36,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:36:36,382.382 INFO    ] No update needed
[2026-06-05 22:36:36,384.384 INFO    ] Checking for camera pi updates...
[2026-06-05 22:36:36,420.420 INFO    ] 200
[2026-06-05 22:36:36,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:36:36,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:36:36,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:36:36,518.518 INFO    ] No camera update needed
[2026-06-05 22:36:36,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:36:36,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:36:36,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:36:36,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:36:38,575.575 INFO    ] ================================================
[2026-06-05 22:36:38,592.592 INFO    ] Launching Daemon at Fri Jun  5 22:36:38 IST 2026
[2026-06-05 22:36:38,603.603 INFO    ] ================================================
[2026-06-05 22:36:39,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:36:39
[2026-06-05 22:36:39,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:36:40,031.031 INFO    ] Initializing speech engine...
[2026-06-05 22:36:40,037.037 INFO    ] 2026-06-05 22:36:40
[2026-06-05 22:36:40,328.328 INFO    ] 2026-06-05 22:36:40
[2026-06-05 22:36:40,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:36:40,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:36:40,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:36:40,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:36:40,741.741 INFO    ] time= 05/06/2026 22:36:40
[2026-06-05 22:36:40,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:36:40,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:36:40,918.918 INFO    ] No existing commands found in stream
[2026-06-05 22:36:45,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:36:45,940.940 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 22:36:48,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:36:48,677.677 INFO    ] Checking for system updates...
[2026-06-05 22:36:48,717.717 INFO    ] 200
[2026-06-05 22:36:48,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:36:48,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:36:48,774.774 INFO    ] No update needed
[2026-06-05 22:36:48,777.777 INFO    ] Checking for camera pi updates...
[2026-06-05 22:36:48,814.814 INFO    ] 200
[2026-06-05 22:36:48,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:36:48,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:36:48,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:36:48,908.908 INFO    ] No camera update needed
[2026-06-05 22:36:48,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:36:48,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:36:48,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:36:48,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:36:50,963.963 INFO    ] ================================================
[2026-06-05 22:36:50,979.979 INFO    ] Launching Daemon at Fri Jun  5 22:36:50 IST 2026
[2026-06-05 22:36:50,990.990 INFO    ] ================================================
[2026-06-05 22:36:51,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:36:51
[2026-06-05 22:36:52,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:36:52,408.408 INFO    ] Initializing speech engine...
[2026-06-05 22:36:52,422.422 INFO    ] 2026-06-05 22:36:52
[2026-06-05 22:36:52,708.708 INFO    ] 2026-06-05 22:36:52
[2026-06-05 22:36:52,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:36:52,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:36:52,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:36:53,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:36:53,189.189 INFO    ] time= 05/06/2026 22:36:53
[2026-06-05 22:36:53,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:36:53,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:36:53,339.339 INFO    ] No existing commands found in stream
[2026-06-05 22:36:58,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:36:58,355.355 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 22:37:02,646.646 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:37:02,649.649 INFO    ] Checking for system updates...
[2026-06-05 22:37:02,699.699 INFO    ] 200
[2026-06-05 22:37:02,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:02,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:37:02,774.774 INFO    ] No update needed
[2026-06-05 22:37:02,777.777 INFO    ] Checking for camera pi updates...
[2026-06-05 22:37:02,816.816 INFO    ] 200
[2026-06-05 22:37:02,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:02,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:37:02,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:37:02,908.908 INFO    ] No camera update needed
[2026-06-05 22:37:02,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:37:02,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:37:02,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:37:02,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:37:04,974.974 INFO    ] ================================================
[2026-06-05 22:37:04,989.989 INFO    ] Launching Daemon at Fri Jun  5 22:37:04 IST 2026
[2026-06-05 22:37:05,001.001 INFO    ] ================================================
[2026-06-05 22:37:05,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:37:05
[2026-06-05 22:37:06,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:37:06,426.426 INFO    ] Initializing speech engine...
[2026-06-05 22:37:06,435.435 INFO    ] 2026-06-05 22:37:06
[2026-06-05 22:37:06,702.702 INFO    ] 2026-06-05 22:37:06
[2026-06-05 22:37:06,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:37:06,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:37:07,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:37:07,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:37:07,207.207 INFO    ] time= 05/06/2026 22:37:07
[2026-06-05 22:37:07,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:37:07,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:37:07,420.420 INFO    ] No existing commands found in stream
[2026-06-05 22:37:12,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:37:12,466.466 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 22:37:13,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:37:13,475.475 INFO    ] Checking for system updates...
[2026-06-05 22:37:13,512.512 INFO    ] 200
[2026-06-05 22:37:13,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:13,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:37:13,570.570 INFO    ] No update needed
[2026-06-05 22:37:13,573.573 INFO    ] Checking for camera pi updates...
[2026-06-05 22:37:13,611.611 INFO    ] 200
[2026-06-05 22:37:13,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:13,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:37:13,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:37:13,706.706 INFO    ] No camera update needed
[2026-06-05 22:37:13,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:37:13,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:37:13,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:37:13,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:37:15,768.768 INFO    ] ================================================
[2026-06-05 22:37:15,784.784 INFO    ] Launching Daemon at Fri Jun  5 22:37:15 IST 2026
[2026-06-05 22:37:15,796.796 INFO    ] ================================================
[2026-06-05 22:37:16,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:37:16
[2026-06-05 22:37:16,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:37:17,284.284 INFO    ] Initializing speech engine...
[2026-06-05 22:37:17,290.290 INFO    ] 2026-06-05 22:37:17
[2026-06-05 22:37:17,541.541 INFO    ] 2026-06-05 22:37:17
[2026-06-05 22:37:17,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:37:17,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:37:17,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:37:18,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:37:18,098.098 INFO    ] time= 05/06/2026 22:37:18
[2026-06-05 22:37:18,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:37:18,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:37:18,251.251 INFO    ] No existing commands found in stream
[2026-06-05 22:37:23,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:37:23,267.267 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-05 22:37:26,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:37:26,626.626 INFO    ] Checking for system updates...
[2026-06-05 22:37:26,662.662 INFO    ] 200
[2026-06-05 22:37:26,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:26,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:37:26,722.722 INFO    ] No update needed
[2026-06-05 22:37:26,725.725 INFO    ] Checking for camera pi updates...
[2026-06-05 22:37:26,760.760 INFO    ] 200
[2026-06-05 22:37:26,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:26,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:37:26,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:37:26,961.961 INFO    ] No camera update needed
[2026-06-05 22:37:26,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:37:26,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:37:26,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:37:26,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:37:29,018.018 INFO    ] ================================================
[2026-06-05 22:37:29,033.033 INFO    ] Launching Daemon at Fri Jun  5 22:37:29 IST 2026
[2026-06-05 22:37:29,043.043 INFO    ] ================================================
[2026-06-05 22:37:29,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:37:29
[2026-06-05 22:37:30,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:37:30,462.462 INFO    ] Initializing speech engine...
[2026-06-05 22:37:30,471.471 INFO    ] 2026-06-05 22:37:30
[2026-06-05 22:37:30,728.728 INFO    ] 2026-06-05 22:37:30
[2026-06-05 22:37:30,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:37:32,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:37:32,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:37:32,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:37:32,620.620 INFO    ] time= 05/06/2026 22:37:32
[2026-06-05 22:37:32,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:37:32,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:37:32,765.765 INFO    ] No existing commands found in stream
[2026-06-05 22:37:37,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:37:37,787.787 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 22:37:41,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:37:41,896.896 INFO    ] Checking for system updates...
[2026-06-05 22:37:41,937.937 INFO    ] 200
[2026-06-05 22:37:41,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:41,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:37:41,999.999 INFO    ] No update needed
[2026-06-05 22:37:42,002.002 INFO    ] Checking for camera pi updates...
[2026-06-05 22:37:42,039.039 INFO    ] 200
[2026-06-05 22:37:42,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:42,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:37:42,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:37:42,135.135 INFO    ] No camera update needed
[2026-06-05 22:37:42,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:37:42,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:37:42,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:37:42,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:37:44,192.192 INFO    ] ================================================
[2026-06-05 22:37:44,208.208 INFO    ] Launching Daemon at Fri Jun  5 22:37:44 IST 2026
[2026-06-05 22:37:44,219.219 INFO    ] ================================================
[2026-06-05 22:37:44,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:37:44
[2026-06-05 22:37:45,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:37:45,619.619 INFO    ] Initializing speech engine...
[2026-06-05 22:37:45,627.627 INFO    ] 2026-06-05 22:37:45
[2026-06-05 22:37:45,903.903 INFO    ] 2026-06-05 22:37:45
[2026-06-05 22:37:45,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:37:46,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:37:46,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:37:46,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:37:46,377.377 INFO    ] time= 05/06/2026 22:37:46
[2026-06-05 22:37:46,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:37:46,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:37:46,629.629 INFO    ] No existing commands found in stream
[2026-06-05 22:37:51,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:37:51,649.649 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-05 22:37:53,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:37:53,148.148 INFO    ] Checking for system updates...
[2026-06-05 22:37:53,186.186 INFO    ] 200
[2026-06-05 22:37:53,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:53,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:37:53,251.251 INFO    ] No update needed
[2026-06-05 22:37:53,254.254 INFO    ] Checking for camera pi updates...
[2026-06-05 22:37:53,288.288 INFO    ] 200
[2026-06-05 22:37:53,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:37:53,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:37:53,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:37:53,392.392 INFO    ] No camera update needed
[2026-06-05 22:37:53,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:37:53,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:37:53,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:37:53,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:37:55,448.448 INFO    ] ================================================
[2026-06-05 22:37:55,463.463 INFO    ] Launching Daemon at Fri Jun  5 22:37:55 IST 2026
[2026-06-05 22:37:55,473.473 INFO    ] ================================================
[2026-06-05 22:37:56,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:37:56
[2026-06-05 22:37:56,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:37:56,941.941 INFO    ] Initializing speech engine...
[2026-06-05 22:37:56,951.951 INFO    ] 2026-06-05 22:37:56
[2026-06-05 22:37:57,210.210 INFO    ] 2026-06-05 22:37:57
[2026-06-05 22:37:57,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:37:57,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:37:57,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:37:57,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:37:57,799.799 INFO    ] time= 05/06/2026 22:37:57
[2026-06-05 22:37:57,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:37:57,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:37:57,988.988 INFO    ] No existing commands found in stream
[2026-06-05 22:38:03,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:38:03,019.019 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 22:38:05,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:38:05,787.787 INFO    ] Checking for system updates...
[2026-06-05 22:38:05,826.826 INFO    ] 200
[2026-06-05 22:38:05,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:05,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:38:05,885.885 INFO    ] No update needed
[2026-06-05 22:38:05,888.888 INFO    ] Checking for camera pi updates...
[2026-06-05 22:38:05,926.926 INFO    ] 200
[2026-06-05 22:38:05,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:05,975.975 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:38:06,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:38:06,095.095 INFO    ] No camera update needed
[2026-06-05 22:38:06,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:38:06,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:38:06,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:38:06,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:38:08,152.152 INFO    ] ================================================
[2026-06-05 22:38:08,167.167 INFO    ] Launching Daemon at Fri Jun  5 22:38:08 IST 2026
[2026-06-05 22:38:08,177.177 INFO    ] ================================================
[2026-06-05 22:38:08,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:38:08
[2026-06-05 22:38:09,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:38:09,714.714 INFO    ] Initializing speech engine...
[2026-06-05 22:38:09,734.734 INFO    ] 2026-06-05 22:38:09
[2026-06-05 22:38:09,986.986 INFO    ] 2026-06-05 22:38:09
[2026-06-05 22:38:10,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:38:10,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:38:10,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:38:10,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:38:10,537.537 INFO    ] time= 05/06/2026 22:38:10
[2026-06-05 22:38:10,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:38:10,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:38:10,697.697 INFO    ] No existing commands found in stream
[2026-06-05 22:38:15,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:38:15,720.720 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 22:38:16,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:38:16,943.943 INFO    ] Checking for system updates...
[2026-06-05 22:38:16,985.985 INFO    ] 200
[2026-06-05 22:38:16,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:17,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:38:17,051.051 INFO    ] No update needed
[2026-06-05 22:38:17,053.053 INFO    ] Checking for camera pi updates...
[2026-06-05 22:38:17,088.088 INFO    ] 200
[2026-06-05 22:38:17,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:17,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:38:17,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:38:17,191.191 INFO    ] No camera update needed
[2026-06-05 22:38:17,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:38:17,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:38:17,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:38:17,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:38:19,247.247 INFO    ] ================================================
[2026-06-05 22:38:19,263.263 INFO    ] Launching Daemon at Fri Jun  5 22:38:19 IST 2026
[2026-06-05 22:38:19,274.274 INFO    ] ================================================
[2026-06-05 22:38:19,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:38:19
[2026-06-05 22:38:20,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:38:20,736.736 INFO    ] Initializing speech engine...
[2026-06-05 22:38:20,744.744 INFO    ] 2026-06-05 22:38:20
[2026-06-05 22:38:21,016.016 INFO    ] 2026-06-05 22:38:21
[2026-06-05 22:38:21,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:38:21,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:38:21,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:38:21,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:38:21,545.545 INFO    ] time= 05/06/2026 22:38:21
[2026-06-05 22:38:21,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:38:21,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:38:21,702.702 INFO    ] No existing commands found in stream
[2026-06-05 22:38:26,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:38:26,720.720 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 22:38:27,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:38:27,888.888 INFO    ] Checking for system updates...
[2026-06-05 22:38:27,929.929 INFO    ] 200
[2026-06-05 22:38:27,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:27,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:38:27,989.989 INFO    ] No update needed
[2026-06-05 22:38:27,991.991 INFO    ] Checking for camera pi updates...
[2026-06-05 22:38:28,027.027 INFO    ] 200
[2026-06-05 22:38:28,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:28,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:38:28,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:38:28,130.130 INFO    ] No camera update needed
[2026-06-05 22:38:28,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:38:28,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:38:28,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:38:28,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:38:30,187.187 INFO    ] ================================================
[2026-06-05 22:38:30,203.203 INFO    ] Launching Daemon at Fri Jun  5 22:38:30 IST 2026
[2026-06-05 22:38:30,214.214 INFO    ] ================================================
[2026-06-05 22:38:30,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:38:30
[2026-06-05 22:38:31,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:38:31,688.688 INFO    ] Initializing speech engine...
[2026-06-05 22:38:31,695.695 INFO    ] 2026-06-05 22:38:31
[2026-06-05 22:38:31,993.993 INFO    ] 2026-06-05 22:38:31
[2026-06-05 22:38:32,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:38:32,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:38:32,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:38:32,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:38:32,890.890 INFO    ] time= 05/06/2026 22:38:32
[2026-06-05 22:38:32,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:38:32,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:38:33,036.036 INFO    ] No existing commands found in stream
[2026-06-05 22:38:38,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:38:38,074.074 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-05 22:38:42,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:38:42,017.017 INFO    ] Checking for system updates...
[2026-06-05 22:38:42,055.055 INFO    ] 200
[2026-06-05 22:38:42,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:42,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:38:42,119.119 INFO    ] No update needed
[2026-06-05 22:38:42,122.122 INFO    ] Checking for camera pi updates...
[2026-06-05 22:38:42,160.160 INFO    ] 200
[2026-06-05 22:38:42,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:42,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:38:42,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:38:42,257.257 INFO    ] No camera update needed
[2026-06-05 22:38:42,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:38:42,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:38:42,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:38:42,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:38:44,312.312 INFO    ] ================================================
[2026-06-05 22:38:44,327.327 INFO    ] Launching Daemon at Fri Jun  5 22:38:44 IST 2026
[2026-06-05 22:38:44,337.337 INFO    ] ================================================
[2026-06-05 22:38:44,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:38:44
[2026-06-05 22:38:45,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:38:45,787.787 INFO    ] Initializing speech engine...
[2026-06-05 22:38:45,803.803 INFO    ] 2026-06-05 22:38:45
[2026-06-05 22:38:46,088.088 INFO    ] 2026-06-05 22:38:46
[2026-06-05 22:38:46,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:38:46,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:38:46,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:38:46,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:38:46,664.664 INFO    ] time= 05/06/2026 22:38:46
[2026-06-05 22:38:46,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:38:46,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:38:46,866.866 INFO    ] No existing commands found in stream
[2026-06-05 22:38:51,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:38:51,899.899 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 22:38:55,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:38:55,773.773 INFO    ] Checking for system updates...
[2026-06-05 22:38:55,814.814 INFO    ] 200
[2026-06-05 22:38:55,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:55,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:38:55,873.873 INFO    ] No update needed
[2026-06-05 22:38:55,876.876 INFO    ] Checking for camera pi updates...
[2026-06-05 22:38:55,914.914 INFO    ] 200
[2026-06-05 22:38:55,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:38:55,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:38:56,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:38:56,018.018 INFO    ] No camera update needed
[2026-06-05 22:38:56,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:38:56,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:38:56,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:38:56,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:38:58,073.073 INFO    ] ================================================
[2026-06-05 22:38:58,088.088 INFO    ] Launching Daemon at Fri Jun  5 22:38:58 IST 2026
[2026-06-05 22:38:58,099.099 INFO    ] ================================================
[2026-06-05 22:38:58,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:38:58
[2026-06-05 22:38:59,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:38:59,511.511 INFO    ] Initializing speech engine...
[2026-06-05 22:38:59,530.530 INFO    ] 2026-06-05 22:38:59
[2026-06-05 22:38:59,780.780 INFO    ] 2026-06-05 22:38:59
[2026-06-05 22:38:59,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:39:00,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:39:00,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:39:00,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:39:00,262.262 INFO    ] time= 05/06/2026 22:39:00
[2026-06-05 22:39:00,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:39:00,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:39:00,508.508 INFO    ] No existing commands found in stream
[2026-06-05 22:39:05,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:39:06,259.259 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 22:39:09,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:39:09,214.214 INFO    ] Checking for system updates...
[2026-06-05 22:39:09,252.252 INFO    ] 200
[2026-06-05 22:39:09,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:09,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:39:09,317.317 INFO    ] No update needed
[2026-06-05 22:39:09,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 22:39:09,353.353 INFO    ] 200
[2026-06-05 22:39:09,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:09,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:39:09,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:39:09,453.453 INFO    ] No camera update needed
[2026-06-05 22:39:09,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:39:09,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:39:09,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:39:09,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:39:11,512.512 INFO    ] ================================================
[2026-06-05 22:39:11,527.527 INFO    ] Launching Daemon at Fri Jun  5 22:39:11 IST 2026
[2026-06-05 22:39:11,538.538 INFO    ] ================================================
[2026-06-05 22:39:12,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:39:12
[2026-06-05 22:39:12,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:39:12,999.999 INFO    ] Initializing speech engine...
[2026-06-05 22:39:13,004.004 INFO    ] 2026-06-05 22:39:13
[2026-06-05 22:39:13,267.267 INFO    ] 2026-06-05 22:39:13
[2026-06-05 22:39:13,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:39:13,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:39:13,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:39:13,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:39:13,805.805 INFO    ] time= 05/06/2026 22:39:13
[2026-06-05 22:39:13,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:39:13,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:39:13,962.962 INFO    ] No existing commands found in stream
[2026-06-05 22:39:18,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:39:18,981.981 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 22:39:19,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:39:19,655.655 INFO    ] Checking for system updates...
[2026-06-05 22:39:19,695.695 INFO    ] 200
[2026-06-05 22:39:19,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:19,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:39:19,760.760 INFO    ] No update needed
[2026-06-05 22:39:19,762.762 INFO    ] Checking for camera pi updates...
[2026-06-05 22:39:19,800.800 INFO    ] 200
[2026-06-05 22:39:19,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:19,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:39:19,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:39:19,900.900 INFO    ] No camera update needed
[2026-06-05 22:39:19,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:39:19,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:39:19,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:39:19,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:39:21,956.956 INFO    ] ================================================
[2026-06-05 22:39:21,971.971 INFO    ] Launching Daemon at Fri Jun  5 22:39:21 IST 2026
[2026-06-05 22:39:21,982.982 INFO    ] ================================================
[2026-06-05 22:39:22,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:39:22
[2026-06-05 22:39:23,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:39:23,391.391 INFO    ] Initializing speech engine...
[2026-06-05 22:39:23,400.400 INFO    ] 2026-06-05 22:39:23
[2026-06-05 22:39:23,693.693 INFO    ] 2026-06-05 22:39:23
[2026-06-05 22:39:23,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:39:23,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:39:23,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:39:24,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:39:24,117.117 INFO    ] time= 05/06/2026 22:39:24
[2026-06-05 22:39:24,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:39:24,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:39:24,324.324 INFO    ] No existing commands found in stream
[2026-06-05 22:39:29,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:39:29,350.350 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 22:39:30,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:39:30,075.075 INFO    ] Checking for system updates...
[2026-06-05 22:39:30,111.111 INFO    ] 200
[2026-06-05 22:39:30,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:30,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:39:30,176.176 INFO    ] No update needed
[2026-06-05 22:39:30,178.178 INFO    ] Checking for camera pi updates...
[2026-06-05 22:39:30,212.212 INFO    ] 200
[2026-06-05 22:39:30,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:30,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:39:30,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:39:30,401.401 INFO    ] No camera update needed
[2026-06-05 22:39:30,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:39:30,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:39:30,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:39:30,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:39:32,458.458 INFO    ] ================================================
[2026-06-05 22:39:32,475.475 INFO    ] Launching Daemon at Fri Jun  5 22:39:32 IST 2026
[2026-06-05 22:39:32,487.487 INFO    ] ================================================
[2026-06-05 22:39:33,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:39:33
[2026-06-05 22:39:33,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:39:34,063.063 INFO    ] Initializing speech engine...
[2026-06-05 22:39:34,073.073 INFO    ] 2026-06-05 22:39:34
[2026-06-05 22:39:34,358.358 INFO    ] 2026-06-05 22:39:34
[2026-06-05 22:39:34,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:39:34,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:39:34,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:39:34,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:39:34,897.897 INFO    ] time= 05/06/2026 22:39:34
[2026-06-05 22:39:34,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:39:34,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:39:35,063.063 INFO    ] No existing commands found in stream
[2026-06-05 22:39:40,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:39:40,091.091 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-05 22:39:44,552.552 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:39:44,555.555 INFO    ] Checking for system updates...
[2026-06-05 22:39:44,591.591 INFO    ] 200
[2026-06-05 22:39:44,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:44,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:39:44,649.649 INFO    ] No update needed
[2026-06-05 22:39:44,651.651 INFO    ] Checking for camera pi updates...
[2026-06-05 22:39:44,689.689 INFO    ] 200
[2026-06-05 22:39:44,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:44,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:39:44,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:39:44,780.780 INFO    ] No camera update needed
[2026-06-05 22:39:44,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:39:44,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:39:44,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:39:44,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:39:46,835.835 INFO    ] ================================================
[2026-06-05 22:39:46,850.850 INFO    ] Launching Daemon at Fri Jun  5 22:39:46 IST 2026
[2026-06-05 22:39:46,861.861 INFO    ] ================================================
[2026-06-05 22:39:47,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:39:47
[2026-06-05 22:39:48,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:39:48,273.273 INFO    ] Initializing speech engine...
[2026-06-05 22:39:48,288.288 INFO    ] 2026-06-05 22:39:48
[2026-06-05 22:39:48,571.571 INFO    ] 2026-06-05 22:39:48
[2026-06-05 22:39:48,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:39:48,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:39:48,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:39:48,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:39:48,981.981 INFO    ] time= 05/06/2026 22:39:48
[2026-06-05 22:39:48,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:39:49,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:39:49,159.159 INFO    ] No existing commands found in stream
[2026-06-05 22:39:54,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:39:54,187.187 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-05 22:39:57,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:39:57,852.852 INFO    ] Checking for system updates...
[2026-06-05 22:39:57,891.891 INFO    ] 200
[2026-06-05 22:39:57,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:57,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:39:57,955.955 INFO    ] No update needed
[2026-06-05 22:39:57,957.957 INFO    ] Checking for camera pi updates...
[2026-06-05 22:39:57,994.994 INFO    ] 200
[2026-06-05 22:39:57,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:39:58,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:39:58,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:39:58,090.090 INFO    ] No camera update needed
[2026-06-05 22:39:58,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:39:58,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:39:58,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:39:58,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:40:00,145.145 INFO    ] ================================================
[2026-06-05 22:40:00,160.160 INFO    ] Launching Daemon at Fri Jun  5 22:40:00 IST 2026
[2026-06-05 22:40:00,171.171 INFO    ] ================================================
[2026-06-05 22:40:00,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:40:00
[2026-06-05 22:40:01,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:40:02,244.244 INFO    ] Initializing speech engine...
[2026-06-05 22:40:02,263.263 INFO    ] 2026-06-05 22:40:02
[2026-06-05 22:40:02,762.762 INFO    ] 2026-06-05 22:40:02
[2026-06-05 22:40:02,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:40:03,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:40:03,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:40:03,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:40:03,402.402 INFO    ] time= 05/06/2026 22:40:03
[2026-06-05 22:40:03,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:40:03,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:40:03,652.652 INFO    ] No existing commands found in stream
[2026-06-05 22:40:08,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:40:08,672.672 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 22:40:10,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:40:10,433.433 INFO    ] Checking for system updates...
[2026-06-05 22:40:10,469.469 INFO    ] 200
[2026-06-05 22:40:10,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:40:10,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:40:10,528.528 INFO    ] No update needed
[2026-06-05 22:40:10,530.530 INFO    ] Checking for camera pi updates...
[2026-06-05 22:40:10,564.564 INFO    ] 200
[2026-06-05 22:40:10,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:40:10,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:40:10,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:40:10,664.664 INFO    ] No camera update needed
[2026-06-05 22:40:10,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:40:10,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:40:10,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:40:10,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:40:12,719.719 INFO    ] ================================================
[2026-06-05 22:40:12,734.734 INFO    ] Launching Daemon at Fri Jun  5 22:40:12 IST 2026
[2026-06-05 22:40:12,745.745 INFO    ] ================================================
[2026-06-05 22:40:13,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:40:13
[2026-06-05 22:40:13,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:40:14,204.204 INFO    ] Initializing speech engine...
[2026-06-05 22:40:14,211.211 INFO    ] 2026-06-05 22:40:14
[2026-06-05 22:40:14,469.469 INFO    ] 2026-06-05 22:40:14
[2026-06-05 22:40:14,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:40:14,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:40:14,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:40:14,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:40:15,018.018 INFO    ] time= 05/06/2026 22:40:14
[2026-06-05 22:40:15,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:40:15,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:40:15,183.183 INFO    ] No existing commands found in stream
[2026-06-05 22:40:20,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:40:20,218.218 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 22:40:23,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:40:23,307.307 INFO    ] Checking for system updates...
[2026-06-05 22:40:23,344.344 INFO    ] 200
[2026-06-05 22:40:23,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:40:23,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:40:23,402.402 INFO    ] No update needed
[2026-06-05 22:40:23,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 22:40:23,443.443 INFO    ] 200
[2026-06-05 22:40:23,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:40:23,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:40:23,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:40:23,546.546 INFO    ] No camera update needed
[2026-06-05 22:40:23,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:40:23,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:40:23,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:40:23,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:40:25,605.605 INFO    ] ================================================
[2026-06-05 22:40:25,620.620 INFO    ] Launching Daemon at Fri Jun  5 22:40:25 IST 2026
[2026-06-05 22:40:25,631.631 INFO    ] ================================================
[2026-06-05 22:40:26,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:40:26
[2026-06-05 22:40:26,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:40:27,196.196 INFO    ] Initializing speech engine...
[2026-06-05 22:40:27,204.204 INFO    ] 2026-06-05 22:40:27
[2026-06-05 22:40:27,473.473 INFO    ] 2026-06-05 22:40:27
[2026-06-05 22:40:27,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:40:27,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:40:27,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:40:28,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:40:28,040.040 INFO    ] time= 05/06/2026 22:40:28
[2026-06-05 22:40:28,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:40:28,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:40:28,177.177 INFO    ] No existing commands found in stream
[2026-06-05 22:40:33,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:40:33,201.201 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-05 22:40:37,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:40:37,067.067 INFO    ] Checking for system updates...
[2026-06-05 22:40:37,107.107 INFO    ] 200
[2026-06-05 22:40:37,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:40:37,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:40:37,165.165 INFO    ] No update needed
[2026-06-05 22:40:37,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 22:40:37,205.205 INFO    ] 200
[2026-06-05 22:40:37,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:40:37,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:40:37,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:40:37,315.315 INFO    ] No camera update needed
[2026-06-05 22:40:37,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:40:37,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:40:37,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:40:37,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:40:39,370.370 INFO    ] ================================================
[2026-06-05 22:40:39,386.386 INFO    ] Launching Daemon at Fri Jun  5 22:40:39 IST 2026
[2026-06-05 22:40:39,396.396 INFO    ] ================================================
[2026-06-05 22:40:40,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:40:40
[2026-06-05 22:40:40,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:40:40,967.967 INFO    ] Initializing speech engine...
[2026-06-05 22:40:40,977.977 INFO    ] 2026-06-05 22:40:40
[2026-06-05 22:40:41,259.259 INFO    ] 2026-06-05 22:40:41
[2026-06-05 22:40:41,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:40:41,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:40:41,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:40:41,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:40:41,750.750 INFO    ] time= 05/06/2026 22:40:41
[2026-06-05 22:40:41,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:40:41,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:40:41,945.945 INFO    ] No existing commands found in stream
[2026-06-05 22:40:46,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:40:46,966.966 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 22:40:48,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:40:48,693.693 INFO    ] Checking for system updates...
[2026-06-05 22:40:48,728.728 INFO    ] 200
[2026-06-05 22:40:48,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:40:48,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:40:48,791.791 INFO    ] No update needed
[2026-06-05 22:40:48,793.793 INFO    ] Checking for camera pi updates...
[2026-06-05 22:40:48,827.827 INFO    ] 200
[2026-06-05 22:40:48,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:40:48,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:40:48,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:40:48,924.924 INFO    ] No camera update needed
[2026-06-05 22:40:48,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:40:48,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:40:48,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:40:48,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:40:50,980.980 INFO    ] ================================================
[2026-06-05 22:40:50,995.995 INFO    ] Launching Daemon at Fri Jun  5 22:40:50 IST 2026
[2026-06-05 22:40:51,005.005 INFO    ] ================================================
[2026-06-05 22:40:51,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:40:51
[2026-06-05 22:40:52,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:40:52,564.564 INFO    ] Initializing speech engine...
[2026-06-05 22:40:52,574.574 INFO    ] 2026-06-05 22:40:52
[2026-06-05 22:40:52,842.842 INFO    ] 2026-06-05 22:40:52
[2026-06-05 22:40:52,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:40:53,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:40:53,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:40:53,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:40:53,401.401 INFO    ] time= 05/06/2026 22:40:53
[2026-06-05 22:40:53,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:40:53,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:40:53,556.556 INFO    ] No existing commands found in stream
[2026-06-05 22:40:58,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:40:58,575.575 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-05 22:41:03,244.244 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:41:03,248.248 INFO    ] Checking for system updates...
[2026-06-05 22:41:03,296.296 INFO    ] 200
[2026-06-05 22:41:03,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:03,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:41:03,360.360 INFO    ] No update needed
[2026-06-05 22:41:03,362.362 INFO    ] Checking for camera pi updates...
[2026-06-05 22:41:03,399.399 INFO    ] 200
[2026-06-05 22:41:03,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:03,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:41:03,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:41:03,479.479 INFO    ] No camera update needed
[2026-06-05 22:41:03,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:41:03,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:41:03,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:41:03,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:41:05,534.534 INFO    ] ================================================
[2026-06-05 22:41:05,549.549 INFO    ] Launching Daemon at Fri Jun  5 22:41:05 IST 2026
[2026-06-05 22:41:05,560.560 INFO    ] ================================================
[2026-06-05 22:41:06,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:41:06
[2026-06-05 22:41:06,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:41:06,994.994 INFO    ] Initializing speech engine...
[2026-06-05 22:41:07,015.015 INFO    ] 2026-06-05 22:41:06
[2026-06-05 22:41:07,275.275 INFO    ] 2026-06-05 22:41:07
[2026-06-05 22:41:07,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:41:07,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:41:07,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:41:07,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:41:07,757.757 INFO    ] time= 05/06/2026 22:41:07
[2026-06-05 22:41:07,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:41:07,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:41:07,986.986 INFO    ] No existing commands found in stream
[2026-06-05 22:41:13,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:41:13,017.017 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 22:41:14,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:41:14,796.796 INFO    ] Checking for system updates...
[2026-06-05 22:41:14,846.846 INFO    ] 200
[2026-06-05 22:41:14,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:14,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:41:14,912.912 INFO    ] No update needed
[2026-06-05 22:41:14,914.914 INFO    ] Checking for camera pi updates...
[2026-06-05 22:41:14,951.951 INFO    ] 200
[2026-06-05 22:41:14,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:14,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:41:15,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:41:15,045.045 INFO    ] No camera update needed
[2026-06-05 22:41:15,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:41:15,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:41:15,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:41:15,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:41:17,104.104 INFO    ] ================================================
[2026-06-05 22:41:17,119.119 INFO    ] Launching Daemon at Fri Jun  5 22:41:17 IST 2026
[2026-06-05 22:41:17,130.130 INFO    ] ================================================
[2026-06-05 22:41:17,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:41:17
[2026-06-05 22:41:18,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:41:18,570.570 INFO    ] Initializing speech engine...
[2026-06-05 22:41:18,586.586 INFO    ] 2026-06-05 22:41:18
[2026-06-05 22:41:18,852.852 INFO    ] 2026-06-05 22:41:18
[2026-06-05 22:41:18,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:41:19,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:41:19,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:41:19,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:41:19,348.348 INFO    ] time= 05/06/2026 22:41:19
[2026-06-05 22:41:19,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:41:19,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:41:19,636.636 INFO    ] No existing commands found in stream
[2026-06-05 22:41:24,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:41:24,659.659 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 22:41:27,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:41:27,325.325 INFO    ] Checking for system updates...
[2026-06-05 22:41:27,366.366 INFO    ] 200
[2026-06-05 22:41:27,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:27,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:41:27,425.425 INFO    ] No update needed
[2026-06-05 22:41:27,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 22:41:27,462.462 INFO    ] 200
[2026-06-05 22:41:27,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:27,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:41:27,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:41:27,563.563 INFO    ] No camera update needed
[2026-06-05 22:41:27,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:41:27,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:41:27,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:41:27,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:41:29,620.620 INFO    ] ================================================
[2026-06-05 22:41:29,636.636 INFO    ] Launching Daemon at Fri Jun  5 22:41:29 IST 2026
[2026-06-05 22:41:29,646.646 INFO    ] ================================================
[2026-06-05 22:41:30,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:41:30
[2026-06-05 22:41:30,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:41:31,062.062 INFO    ] Initializing speech engine...
[2026-06-05 22:41:31,086.086 INFO    ] 2026-06-05 22:41:31
[2026-06-05 22:41:31,373.373 INFO    ] 2026-06-05 22:41:31
[2026-06-05 22:41:31,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:41:32,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:41:32,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:41:33,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:41:33,213.213 INFO    ] time= 05/06/2026 22:41:33
[2026-06-05 22:41:33,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:41:33,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:41:33,337.337 INFO    ] No existing commands found in stream
[2026-06-05 22:41:38,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:41:38,350.350 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-05 22:41:42,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:41:42,093.093 INFO    ] Checking for system updates...
[2026-06-05 22:41:42,132.132 INFO    ] 200
[2026-06-05 22:41:42,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:42,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:41:42,194.194 INFO    ] No update needed
[2026-06-05 22:41:42,197.197 INFO    ] Checking for camera pi updates...
[2026-06-05 22:41:42,233.233 INFO    ] 200
[2026-06-05 22:41:42,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:42,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:41:42,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:41:42,436.436 INFO    ] No camera update needed
[2026-06-05 22:41:42,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:41:42,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:41:42,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:41:42,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:41:44,491.491 INFO    ] ================================================
[2026-06-05 22:41:44,506.506 INFO    ] Launching Daemon at Fri Jun  5 22:41:44 IST 2026
[2026-06-05 22:41:44,516.516 INFO    ] ================================================
[2026-06-05 22:41:45,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:41:45
[2026-06-05 22:41:45,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:41:46,040.040 INFO    ] Initializing speech engine...
[2026-06-05 22:41:46,050.050 INFO    ] 2026-06-05 22:41:46
[2026-06-05 22:41:46,331.331 INFO    ] 2026-06-05 22:41:46
[2026-06-05 22:41:46,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:41:46,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:41:46,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:41:46,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:41:46,862.862 INFO    ] time= 05/06/2026 22:41:46
[2026-06-05 22:41:46,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:41:46,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:41:47,014.014 INFO    ] No existing commands found in stream
[2026-06-05 22:41:52,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:41:52,032.032 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-05 22:41:53,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:41:53,894.894 INFO    ] Checking for system updates...
[2026-06-05 22:41:53,934.934 INFO    ] 200
[2026-06-05 22:41:53,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:53,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:41:54,002.002 INFO    ] No update needed
[2026-06-05 22:41:54,004.004 INFO    ] Checking for camera pi updates...
[2026-06-05 22:41:54,039.039 INFO    ] 200
[2026-06-05 22:41:54,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:41:54,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:41:54,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:41:54,129.129 INFO    ] No camera update needed
[2026-06-05 22:41:54,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:41:54,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:41:54,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:41:54,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:41:56,187.187 INFO    ] ================================================
[2026-06-05 22:41:56,203.203 INFO    ] Launching Daemon at Fri Jun  5 22:41:56 IST 2026
[2026-06-05 22:41:56,214.214 INFO    ] ================================================
[2026-06-05 22:41:56,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:41:56
[2026-06-05 22:41:57,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:41:57,756.756 INFO    ] Initializing speech engine...
[2026-06-05 22:41:57,772.772 INFO    ] 2026-06-05 22:41:57
[2026-06-05 22:41:58,037.037 INFO    ] 2026-06-05 22:41:58
[2026-06-05 22:41:58,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:41:58,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:41:58,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:41:58,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:41:58,610.610 INFO    ] time= 05/06/2026 22:41:58
[2026-06-05 22:41:58,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:41:58,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:41:58,775.775 INFO    ] No existing commands found in stream
[2026-06-05 22:42:03,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:42:03,815.815 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-05 22:42:07,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:42:07,443.443 INFO    ] Checking for system updates...
[2026-06-05 22:42:07,480.480 INFO    ] 200
[2026-06-05 22:42:07,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:07,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:42:07,538.538 INFO    ] No update needed
[2026-06-05 22:42:07,541.541 INFO    ] Checking for camera pi updates...
[2026-06-05 22:42:07,579.579 INFO    ] 200
[2026-06-05 22:42:07,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:07,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:42:07,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:42:07,668.668 INFO    ] No camera update needed
[2026-06-05 22:42:07,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:42:07,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:42:07,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:42:07,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:42:09,726.726 INFO    ] ================================================
[2026-06-05 22:42:09,742.742 INFO    ] Launching Daemon at Fri Jun  5 22:42:09 IST 2026
[2026-06-05 22:42:09,753.753 INFO    ] ================================================
[2026-06-05 22:42:10,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:42:10
[2026-06-05 22:42:10,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:42:11,181.181 INFO    ] Initializing speech engine...
[2026-06-05 22:42:11,191.191 INFO    ] 2026-06-05 22:42:11
[2026-06-05 22:42:11,441.441 INFO    ] 2026-06-05 22:42:11
[2026-06-05 22:42:11,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:42:11,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:42:11,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:42:11,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:42:11,950.950 INFO    ] time= 05/06/2026 22:42:11
[2026-06-05 22:42:12,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:42:12,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:42:12,176.176 INFO    ] No existing commands found in stream
[2026-06-05 22:42:17,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:42:17,190.190 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-05 22:42:20,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:42:20,445.445 INFO    ] Checking for system updates...
[2026-06-05 22:42:20,484.484 INFO    ] 200
[2026-06-05 22:42:20,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:20,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:42:20,547.547 INFO    ] No update needed
[2026-06-05 22:42:20,550.550 INFO    ] Checking for camera pi updates...
[2026-06-05 22:42:20,586.586 INFO    ] 200
[2026-06-05 22:42:20,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:20,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:42:20,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:42:20,687.687 INFO    ] No camera update needed
[2026-06-05 22:42:20,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:42:20,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:42:20,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:42:20,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:42:22,743.743 INFO    ] ================================================
[2026-06-05 22:42:22,759.759 INFO    ] Launching Daemon at Fri Jun  5 22:42:22 IST 2026
[2026-06-05 22:42:22,770.770 INFO    ] ================================================
[2026-06-05 22:42:23,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:42:23
[2026-06-05 22:42:24,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:42:24,374.374 INFO    ] Initializing speech engine...
[2026-06-05 22:42:24,388.388 INFO    ] 2026-06-05 22:42:24
[2026-06-05 22:42:24,667.667 INFO    ] 2026-06-05 22:42:24
[2026-06-05 22:42:24,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:42:24,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:42:24,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:42:25,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:42:25,216.216 INFO    ] time= 05/06/2026 22:42:25
[2026-06-05 22:42:25,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:42:25,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:42:25,374.374 INFO    ] No existing commands found in stream
[2026-06-05 22:42:30,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:42:30,400.400 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-05 22:42:33,421.421 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:42:33,424.424 INFO    ] Checking for system updates...
[2026-06-05 22:42:33,461.461 INFO    ] 200
[2026-06-05 22:42:33,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:33,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:42:33,521.521 INFO    ] No update needed
[2026-06-05 22:42:33,524.524 INFO    ] Checking for camera pi updates...
[2026-06-05 22:42:33,559.559 INFO    ] 200
[2026-06-05 22:42:33,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:33,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:42:33,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:42:33,658.658 INFO    ] No camera update needed
[2026-06-05 22:42:33,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:42:33,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:42:33,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:42:33,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:42:35,718.718 INFO    ] ================================================
[2026-06-05 22:42:35,734.734 INFO    ] Launching Daemon at Fri Jun  5 22:42:35 IST 2026
[2026-06-05 22:42:35,745.745 INFO    ] ================================================
[2026-06-05 22:42:36,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:42:36
[2026-06-05 22:42:36,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:42:37,179.179 INFO    ] Initializing speech engine...
[2026-06-05 22:42:37,188.188 INFO    ] 2026-06-05 22:42:37
[2026-06-05 22:42:37,436.436 INFO    ] 2026-06-05 22:42:37
[2026-06-05 22:42:37,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:42:37,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:42:37,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:42:37,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:42:37,901.901 INFO    ] time= 05/06/2026 22:42:37
[2026-06-05 22:42:37,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:42:38,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:42:38,142.142 INFO    ] No existing commands found in stream
[2026-06-05 22:42:43,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:42:43,170.170 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-05 22:42:46,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:42:46,995.995 INFO    ] Checking for system updates...
[2026-06-05 22:42:47,032.032 INFO    ] 200
[2026-06-05 22:42:47,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:47,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:42:47,091.091 INFO    ] No update needed
[2026-06-05 22:42:47,094.094 INFO    ] Checking for camera pi updates...
[2026-06-05 22:42:47,132.132 INFO    ] 200
[2026-06-05 22:42:47,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:47,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:42:47,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:42:47,253.253 INFO    ] No camera update needed
[2026-06-05 22:42:47,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:42:47,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:42:47,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:42:47,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:42:49,312.312 INFO    ] ================================================
[2026-06-05 22:42:49,329.329 INFO    ] Launching Daemon at Fri Jun  5 22:42:49 IST 2026
[2026-06-05 22:42:49,340.340 INFO    ] ================================================
[2026-06-05 22:42:49,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:42:49
[2026-06-05 22:42:50,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:42:50,772.772 INFO    ] Initializing speech engine...
[2026-06-05 22:42:50,781.781 INFO    ] 2026-06-05 22:42:50
[2026-06-05 22:42:51,031.031 INFO    ] 2026-06-05 22:42:51
[2026-06-05 22:42:51,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:42:51,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:42:51,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:42:51,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:42:51,522.522 INFO    ] time= 05/06/2026 22:42:51
[2026-06-05 22:42:51,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:42:51,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:42:51,738.738 INFO    ] No existing commands found in stream
[2026-06-05 22:42:56,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:42:56,761.761 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 22:42:58,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:42:58,653.653 INFO    ] Checking for system updates...
[2026-06-05 22:42:58,693.693 INFO    ] 200
[2026-06-05 22:42:58,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:58,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:42:58,760.760 INFO    ] No update needed
[2026-06-05 22:42:58,763.763 INFO    ] Checking for camera pi updates...
[2026-06-05 22:42:58,800.800 INFO    ] 200
[2026-06-05 22:42:58,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:42:58,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:42:58,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:42:58,897.897 INFO    ] No camera update needed
[2026-06-05 22:42:58,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:42:58,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:42:58,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:42:58,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:43:00,953.953 INFO    ] ================================================
[2026-06-05 22:43:00,969.969 INFO    ] Launching Daemon at Fri Jun  5 22:43:00 IST 2026
[2026-06-05 22:43:00,981.981 INFO    ] ================================================
[2026-06-05 22:43:01,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:43:01
[2026-06-05 22:43:02,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:43:02,606.606 INFO    ] Initializing speech engine...
[2026-06-05 22:43:02,623.623 INFO    ] 2026-06-05 22:43:02
[2026-06-05 22:43:02,931.931 INFO    ] 2026-06-05 22:43:02
[2026-06-05 22:43:02,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:43:03,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:43:03,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:43:03,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:43:03,535.535 INFO    ] time= 05/06/2026 22:43:03
[2026-06-05 22:43:03,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:43:03,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:43:03,692.692 INFO    ] No existing commands found in stream
[2026-06-05 22:43:08,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:43:08,720.720 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-05 22:43:12,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:43:12,234.234 INFO    ] Checking for system updates...
[2026-06-05 22:43:12,270.270 INFO    ] 200
[2026-06-05 22:43:12,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:12,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:43:12,328.328 INFO    ] No update needed
[2026-06-05 22:43:12,330.330 INFO    ] Checking for camera pi updates...
[2026-06-05 22:43:12,364.364 INFO    ] 200
[2026-06-05 22:43:12,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:12,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:43:12,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:43:12,457.457 INFO    ] No camera update needed
[2026-06-05 22:43:12,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:43:12,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:43:12,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:43:12,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:43:14,513.513 INFO    ] ================================================
[2026-06-05 22:43:14,529.529 INFO    ] Launching Daemon at Fri Jun  5 22:43:14 IST 2026
[2026-06-05 22:43:14,540.540 INFO    ] ================================================
[2026-06-05 22:43:15,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:43:15
[2026-06-05 22:43:15,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:43:15,970.970 INFO    ] Initializing speech engine...
[2026-06-05 22:43:15,978.978 INFO    ] 2026-06-05 22:43:15
[2026-06-05 22:43:16,230.230 INFO    ] 2026-06-05 22:43:16
[2026-06-05 22:43:16,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:43:16,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:43:16,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:43:16,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:43:16,803.803 INFO    ] time= 05/06/2026 22:43:16
[2026-06-05 22:43:16,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:43:16,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:43:16,928.928 INFO    ] No existing commands found in stream
[2026-06-05 22:43:21,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:43:21,948.948 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-05 22:43:23,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:43:23,458.458 INFO    ] Checking for system updates...
[2026-06-05 22:43:23,495.495 INFO    ] 200
[2026-06-05 22:43:23,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:23,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:43:23,558.558 INFO    ] No update needed
[2026-06-05 22:43:23,560.560 INFO    ] Checking for camera pi updates...
[2026-06-05 22:43:23,596.596 INFO    ] 200
[2026-06-05 22:43:23,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:23,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:43:23,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:43:23,699.699 INFO    ] No camera update needed
[2026-06-05 22:43:23,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:43:23,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:43:23,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:43:23,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:43:25,755.755 INFO    ] ================================================
[2026-06-05 22:43:25,771.771 INFO    ] Launching Daemon at Fri Jun  5 22:43:25 IST 2026
[2026-06-05 22:43:25,782.782 INFO    ] ================================================
[2026-06-05 22:43:26,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:43:26
[2026-06-05 22:43:27,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:43:27,279.279 INFO    ] Initializing speech engine...
[2026-06-05 22:43:27,287.287 INFO    ] 2026-06-05 22:43:27
[2026-06-05 22:43:27,535.535 INFO    ] 2026-06-05 22:43:27
[2026-06-05 22:43:27,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:43:27,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:43:27,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:43:27,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:43:28,004.004 INFO    ] time= 05/06/2026 22:43:27
[2026-06-05 22:43:28,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:43:28,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:43:28,238.238 INFO    ] No existing commands found in stream
[2026-06-05 22:43:33,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:43:33,258.258 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 22:43:34,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:43:34,292.292 INFO    ] Checking for system updates...
[2026-06-05 22:43:34,333.333 INFO    ] 200
[2026-06-05 22:43:34,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:34,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:43:34,398.398 INFO    ] No update needed
[2026-06-05 22:43:34,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 22:43:34,443.443 INFO    ] 200
[2026-06-05 22:43:34,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:34,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:43:34,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:43:34,547.547 INFO    ] No camera update needed
[2026-06-05 22:43:34,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:43:34,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:43:34,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:43:34,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:43:36,606.606 INFO    ] ================================================
[2026-06-05 22:43:36,621.621 INFO    ] Launching Daemon at Fri Jun  5 22:43:36 IST 2026
[2026-06-05 22:43:36,632.632 INFO    ] ================================================
[2026-06-05 22:43:37,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:43:37
[2026-06-05 22:43:37,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:43:38,073.073 INFO    ] Initializing speech engine...
[2026-06-05 22:43:38,079.079 INFO    ] 2026-06-05 22:43:38
[2026-06-05 22:43:38,342.342 INFO    ] 2026-06-05 22:43:38
[2026-06-05 22:43:38,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:43:38,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:43:38,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:43:38,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:43:38,758.758 INFO    ] time= 05/06/2026 22:43:38
[2026-06-05 22:43:38,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:43:38,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:43:38,948.948 INFO    ] No existing commands found in stream
[2026-06-05 22:43:43,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:43:43,982.982 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 22:43:47,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:43:47,312.312 INFO    ] Checking for system updates...
[2026-06-05 22:43:47,349.349 INFO    ] 200
[2026-06-05 22:43:47,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:47,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:43:47,414.414 INFO    ] No update needed
[2026-06-05 22:43:47,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 22:43:47,451.451 INFO    ] 200
[2026-06-05 22:43:47,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:47,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:43:47,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:43:47,645.645 INFO    ] No camera update needed
[2026-06-05 22:43:47,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:43:47,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:43:47,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:43:47,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:43:49,707.707 INFO    ] ================================================
[2026-06-05 22:43:49,722.722 INFO    ] Launching Daemon at Fri Jun  5 22:43:49 IST 2026
[2026-06-05 22:43:49,732.732 INFO    ] ================================================
[2026-06-05 22:43:50,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:43:50
[2026-06-05 22:43:50,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:43:51,260.260 INFO    ] Initializing speech engine...
[2026-06-05 22:43:51,268.268 INFO    ] 2026-06-05 22:43:51
[2026-06-05 22:43:51,550.550 INFO    ] 2026-06-05 22:43:51
[2026-06-05 22:43:51,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:43:51,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:43:51,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:43:52,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:43:52,088.088 INFO    ] time= 05/06/2026 22:43:52
[2026-06-05 22:43:52,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:43:52,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:43:52,244.244 INFO    ] No existing commands found in stream
[2026-06-05 22:43:57,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:43:57,277.277 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 22:43:59,215.215 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:43:59,218.218 INFO    ] Checking for system updates...
[2026-06-05 22:43:59,255.255 INFO    ] 200
[2026-06-05 22:43:59,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:59,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:43:59,320.320 INFO    ] No update needed
[2026-06-05 22:43:59,323.323 INFO    ] Checking for camera pi updates...
[2026-06-05 22:43:59,358.358 INFO    ] 200
[2026-06-05 22:43:59,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:43:59,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:43:59,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:43:59,460.460 INFO    ] No camera update needed
[2026-06-05 22:43:59,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:43:59,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:43:59,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:43:59,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:44:01,520.520 INFO    ] ================================================
[2026-06-05 22:44:01,535.535 INFO    ] Launching Daemon at Fri Jun  5 22:44:01 IST 2026
[2026-06-05 22:44:01,545.545 INFO    ] ================================================
[2026-06-05 22:44:02,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:44:02
[2026-06-05 22:44:02,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:44:03,265.265 INFO    ] Initializing speech engine...
[2026-06-05 22:44:03,288.288 INFO    ] 2026-06-05 22:44:03
[2026-06-05 22:44:03,593.593 INFO    ] 2026-06-05 22:44:03
[2026-06-05 22:44:03,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:44:03,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:44:03,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:44:04,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:44:04,087.087 INFO    ] time= 05/06/2026 22:44:04
[2026-06-05 22:44:04,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:44:04,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:44:04,293.293 INFO    ] No existing commands found in stream
[2026-06-05 22:44:09,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:44:09,327.327 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 22:44:12,192.192 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:44:12,195.195 INFO    ] Checking for system updates...
[2026-06-05 22:44:12,232.232 INFO    ] 200
[2026-06-05 22:44:12,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:44:12,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:44:12,292.292 INFO    ] No update needed
[2026-06-05 22:44:12,295.295 INFO    ] Checking for camera pi updates...
[2026-06-05 22:44:12,330.330 INFO    ] 200
[2026-06-05 22:44:12,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:44:12,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:44:12,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:44:12,431.431 INFO    ] No camera update needed
[2026-06-05 22:44:12,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:44:12,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:44:12,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:44:12,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:44:14,491.491 INFO    ] ================================================
[2026-06-05 22:44:14,506.506 INFO    ] Launching Daemon at Fri Jun  5 22:44:14 IST 2026
[2026-06-05 22:44:14,517.517 INFO    ] ================================================
[2026-06-05 22:44:15,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:44:15
[2026-06-05 22:44:15,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:44:15,933.933 INFO    ] Initializing speech engine...
[2026-06-05 22:44:15,958.958 INFO    ] 2026-06-05 22:44:15
[2026-06-05 22:44:16,227.227 INFO    ] 2026-06-05 22:44:16
[2026-06-05 22:44:16,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:44:16,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:44:16,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:44:16,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:44:16,643.643 INFO    ] time= 05/06/2026 22:44:16
[2026-06-05 22:44:16,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:44:16,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:44:16,726.726 INFO    ] No existing commands found in stream
[2026-06-05 22:44:21,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:44:21,742.742 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 22:44:25,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:44:25,043.043 INFO    ] Checking for system updates...
[2026-06-05 22:44:25,082.082 INFO    ] 200
[2026-06-05 22:44:25,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:44:25,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:44:25,140.140 INFO    ] No update needed
[2026-06-05 22:44:25,142.142 INFO    ] Checking for camera pi updates...
[2026-06-05 22:44:25,179.179 INFO    ] 200
[2026-06-05 22:44:25,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:44:25,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:44:25,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:44:25,274.274 INFO    ] No camera update needed
[2026-06-05 22:44:25,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:44:25,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:44:25,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:44:25,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:44:27,330.330 INFO    ] ================================================
[2026-06-05 22:44:27,346.346 INFO    ] Launching Daemon at Fri Jun  5 22:44:27 IST 2026
[2026-06-05 22:44:27,357.357 INFO    ] ================================================
[2026-06-05 22:44:27,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:44:27
[2026-06-05 22:44:28,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:44:28,761.761 INFO    ] Initializing speech engine...
[2026-06-05 22:44:28,768.768 INFO    ] 2026-06-05 22:44:28
[2026-06-05 22:44:29,035.035 INFO    ] 2026-06-05 22:44:29
[2026-06-05 22:44:29,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:44:29,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:44:29,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:44:29,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:44:29,417.417 INFO    ] time= 05/06/2026 22:44:29
[2026-06-05 22:44:29,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:44:29,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:44:29,611.611 INFO    ] No existing commands found in stream
[2026-06-05 22:44:34,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:44:34,628.628 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 22:44:38,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:44:38,149.149 INFO    ] Checking for system updates...
[2026-06-05 22:44:38,188.188 INFO    ] 200
[2026-06-05 22:44:38,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:44:38,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:44:38,249.249 INFO    ] No update needed
[2026-06-05 22:44:38,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 22:44:38,286.286 INFO    ] 200
[2026-06-05 22:44:38,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:44:38,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:44:38,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:44:38,392.392 INFO    ] No camera update needed
[2026-06-05 22:44:38,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:44:38,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:44:38,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:44:38,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:44:40,451.451 INFO    ] ================================================
[2026-06-05 22:44:40,467.467 INFO    ] Launching Daemon at Fri Jun  5 22:44:40 IST 2026
[2026-06-05 22:44:40,477.477 INFO    ] ================================================
[2026-06-05 22:44:41,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:44:41
[2026-06-05 22:44:41,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:44:41,913.913 INFO    ] Initializing speech engine...
[2026-06-05 22:44:41,936.936 INFO    ] 2026-06-05 22:44:41
[2026-06-05 22:44:42,194.194 INFO    ] 2026-06-05 22:44:42
[2026-06-05 22:44:42,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:44:42,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:44:42,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:44:42,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:44:42,696.696 INFO    ] time= 05/06/2026 22:44:42
[2026-06-05 22:44:42,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:44:42,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:44:42,919.919 INFO    ] No existing commands found in stream
[2026-06-05 22:44:47,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:44:47,936.936 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 22:44:50,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:44:50,691.691 INFO    ] Checking for system updates...
[2026-06-05 22:44:50,727.727 INFO    ] 200
[2026-06-05 22:44:50,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:44:50,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:44:50,794.794 INFO    ] No update needed
[2026-06-05 22:44:50,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 22:44:50,843.843 INFO    ] 200
[2026-06-05 22:44:50,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:44:50,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:44:50,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:44:50,952.952 INFO    ] No camera update needed
[2026-06-05 22:44:50,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:44:50,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:44:50,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:44:50,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:44:53,008.008 INFO    ] ================================================
[2026-06-05 22:44:53,025.025 INFO    ] Launching Daemon at Fri Jun  5 22:44:53 IST 2026
[2026-06-05 22:44:53,037.037 INFO    ] ================================================
[2026-06-05 22:44:53,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:44:53
[2026-06-05 22:44:54,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:44:54,469.469 INFO    ] Initializing speech engine...
[2026-06-05 22:44:54,478.478 INFO    ] 2026-06-05 22:44:54
[2026-06-05 22:44:54,727.727 INFO    ] 2026-06-05 22:44:54
[2026-06-05 22:44:54,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:44:54,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:44:54,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:44:55,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:44:55,199.199 INFO    ] time= 05/06/2026 22:44:55
[2026-06-05 22:44:55,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:44:55,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:44:55,454.454 INFO    ] No existing commands found in stream
[2026-06-05 22:45:00,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:45:00,472.472 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 22:45:03,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:45:03,997.997 INFO    ] Checking for system updates...
[2026-06-05 22:45:04,032.032 INFO    ] 200
[2026-06-05 22:45:04,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:04,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:45:04,091.091 INFO    ] No update needed
[2026-06-05 22:45:04,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 22:45:04,127.127 INFO    ] 200
[2026-06-05 22:45:04,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:04,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:45:04,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:45:04,222.222 INFO    ] No camera update needed
[2026-06-05 22:45:04,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:45:04,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:45:04,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:45:04,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:45:06,278.278 INFO    ] ================================================
[2026-06-05 22:45:06,294.294 INFO    ] Launching Daemon at Fri Jun  5 22:45:06 IST 2026
[2026-06-05 22:45:06,305.305 INFO    ] ================================================
[2026-06-05 22:45:06,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:45:06
[2026-06-05 22:45:07,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:45:07,850.850 INFO    ] Initializing speech engine...
[2026-06-05 22:45:07,864.864 INFO    ] 2026-06-05 22:45:07
[2026-06-05 22:45:08,176.176 INFO    ] 2026-06-05 22:45:08
[2026-06-05 22:45:08,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:45:08,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:45:08,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:45:08,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:45:08,613.613 INFO    ] time= 05/06/2026 22:45:08
[2026-06-05 22:45:08,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:45:08,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:45:08,786.786 INFO    ] No existing commands found in stream
[2026-06-05 22:45:13,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:45:13,825.825 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 22:45:17,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:45:17,231.231 INFO    ] Checking for system updates...
[2026-06-05 22:45:17,268.268 INFO    ] 200
[2026-06-05 22:45:17,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:17,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:45:17,330.330 INFO    ] No update needed
[2026-06-05 22:45:17,332.332 INFO    ] Checking for camera pi updates...
[2026-06-05 22:45:17,367.367 INFO    ] 200
[2026-06-05 22:45:17,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:17,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:45:17,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:45:17,476.476 INFO    ] No camera update needed
[2026-06-05 22:45:17,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:45:17,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:45:17,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:45:17,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:45:19,530.530 INFO    ] ================================================
[2026-06-05 22:45:19,545.545 INFO    ] Launching Daemon at Fri Jun  5 22:45:19 IST 2026
[2026-06-05 22:45:19,556.556 INFO    ] ================================================
[2026-06-05 22:45:20,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:45:20
[2026-06-05 22:45:20,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:45:21,157.157 INFO    ] Initializing speech engine...
[2026-06-05 22:45:21,165.165 INFO    ] 2026-06-05 22:45:21
[2026-06-05 22:45:21,448.448 INFO    ] 2026-06-05 22:45:21
[2026-06-05 22:45:21,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:45:21,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:45:21,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:45:21,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:45:21,983.983 INFO    ] time= 05/06/2026 22:45:21
[2026-06-05 22:45:21,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:45:22,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:45:22,124.124 INFO    ] No existing commands found in stream
[2026-06-05 22:45:27,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:45:27,148.148 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 22:45:28,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:45:28,936.936 INFO    ] Checking for system updates...
[2026-06-05 22:45:28,971.971 INFO    ] 200
[2026-06-05 22:45:28,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:29,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:45:29,034.034 INFO    ] No update needed
[2026-06-05 22:45:29,036.036 INFO    ] Checking for camera pi updates...
[2026-06-05 22:45:29,070.070 INFO    ] 200
[2026-06-05 22:45:29,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:29,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:45:29,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:45:29,176.176 INFO    ] No camera update needed
[2026-06-05 22:45:29,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:45:29,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:45:29,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:45:29,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:45:31,232.232 INFO    ] ================================================
[2026-06-05 22:45:31,247.247 INFO    ] Launching Daemon at Fri Jun  5 22:45:31 IST 2026
[2026-06-05 22:45:31,258.258 INFO    ] ================================================
[2026-06-05 22:45:31,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:45:31
[2026-06-05 22:45:32,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:45:32,811.811 INFO    ] Initializing speech engine...
[2026-06-05 22:45:32,821.821 INFO    ] 2026-06-05 22:45:32
[2026-06-05 22:45:33,097.097 INFO    ] 2026-06-05 22:45:33
[2026-06-05 22:45:33,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:45:33,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:45:33,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:45:33,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:45:33,522.522 INFO    ] time= 05/06/2026 22:45:33
[2026-06-05 22:45:33,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:45:33,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:45:33,688.688 INFO    ] No existing commands found in stream
[2026-06-05 22:45:38,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:45:38,720.720 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-05 22:45:39,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:45:39,833.833 INFO    ] Checking for system updates...
[2026-06-05 22:45:39,870.870 INFO    ] 200
[2026-06-05 22:45:39,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:39,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:45:39,928.928 INFO    ] No update needed
[2026-06-05 22:45:39,931.931 INFO    ] Checking for camera pi updates...
[2026-06-05 22:45:39,965.965 INFO    ] 200
[2026-06-05 22:45:39,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:40,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:45:40,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:45:40,057.057 INFO    ] No camera update needed
[2026-06-05 22:45:40,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:45:40,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:45:40,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:45:40,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:45:42,112.112 INFO    ] ================================================
[2026-06-05 22:45:42,128.128 INFO    ] Launching Daemon at Fri Jun  5 22:45:42 IST 2026
[2026-06-05 22:45:42,139.139 INFO    ] ================================================
[2026-06-05 22:45:42,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:45:42
[2026-06-05 22:45:43,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:45:43,760.760 INFO    ] Initializing speech engine...
[2026-06-05 22:45:43,767.767 INFO    ] 2026-06-05 22:45:43
[2026-06-05 22:45:44,043.043 INFO    ] 2026-06-05 22:45:44
[2026-06-05 22:45:44,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:45:44,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:45:44,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:45:44,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:45:44,558.558 INFO    ] time= 05/06/2026 22:45:44
[2026-06-05 22:45:44,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:45:44,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:45:44,773.773 INFO    ] No existing commands found in stream
[2026-06-05 22:45:49,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:45:49,800.800 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 22:45:52,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:45:52,228.228 INFO    ] Checking for system updates...
[2026-06-05 22:45:52,269.269 INFO    ] 200
[2026-06-05 22:45:52,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:52,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:45:52,332.332 INFO    ] No update needed
[2026-06-05 22:45:52,335.335 INFO    ] Checking for camera pi updates...
[2026-06-05 22:45:52,374.374 INFO    ] 200
[2026-06-05 22:45:52,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:45:52,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:45:52,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:45:52,583.583 INFO    ] No camera update needed
[2026-06-05 22:45:52,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:45:52,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:45:52,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:45:52,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:45:54,642.642 INFO    ] ================================================
[2026-06-05 22:45:54,658.658 INFO    ] Launching Daemon at Fri Jun  5 22:45:54 IST 2026
[2026-06-05 22:45:54,669.669 INFO    ] ================================================
[2026-06-05 22:45:55,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:45:55
[2026-06-05 22:45:55,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:45:56,102.102 INFO    ] Initializing speech engine...
[2026-06-05 22:45:56,127.127 INFO    ] 2026-06-05 22:45:56
[2026-06-05 22:45:56,387.387 INFO    ] 2026-06-05 22:45:56
[2026-06-05 22:45:56,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:45:56,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:45:56,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:45:56,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:45:56,956.956 INFO    ] time= 05/06/2026 22:45:56
[2026-06-05 22:45:56,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:45:56,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:45:57,117.117 INFO    ] No existing commands found in stream
[2026-06-05 22:46:02,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:46:02,132.132 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-05 22:46:03,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:46:03,347.347 INFO    ] Checking for system updates...
[2026-06-05 22:46:03,386.386 INFO    ] 200
[2026-06-05 22:46:03,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:03,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:46:03,444.444 INFO    ] No update needed
[2026-06-05 22:46:03,446.446 INFO    ] Checking for camera pi updates...
[2026-06-05 22:46:03,483.483 INFO    ] 200
[2026-06-05 22:46:03,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:03,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:46:03,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:46:03,584.584 INFO    ] No camera update needed
[2026-06-05 22:46:03,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:46:03,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:46:03,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:46:03,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:46:05,641.641 INFO    ] ================================================
[2026-06-05 22:46:05,657.657 INFO    ] Launching Daemon at Fri Jun  5 22:46:05 IST 2026
[2026-06-05 22:46:05,667.667 INFO    ] ================================================
[2026-06-05 22:46:06,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:46:06
[2026-06-05 22:46:06,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:46:07,170.170 INFO    ] Initializing speech engine...
[2026-06-05 22:46:07,177.177 INFO    ] 2026-06-05 22:46:07
[2026-06-05 22:46:07,466.466 INFO    ] 2026-06-05 22:46:07
[2026-06-05 22:46:07,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:46:07,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:46:07,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:46:07,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:46:07,968.968 INFO    ] time= 05/06/2026 22:46:07
[2026-06-05 22:46:08,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:46:08,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:46:08,153.153 INFO    ] No existing commands found in stream
[2026-06-05 22:46:13,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:46:13,168.168 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-05 22:46:14,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:46:14,218.218 INFO    ] Checking for system updates...
[2026-06-05 22:46:14,254.254 INFO    ] 200
[2026-06-05 22:46:14,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:14,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:46:14,311.311 INFO    ] No update needed
[2026-06-05 22:46:14,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 22:46:14,348.348 INFO    ] 200
[2026-06-05 22:46:14,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:14,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:46:14,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:46:14,451.451 INFO    ] No camera update needed
[2026-06-05 22:46:14,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:46:14,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:46:14,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:46:14,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:46:16,506.506 INFO    ] ================================================
[2026-06-05 22:46:16,522.522 INFO    ] Launching Daemon at Fri Jun  5 22:46:16 IST 2026
[2026-06-05 22:46:16,533.533 INFO    ] ================================================
[2026-06-05 22:46:17,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:46:17
[2026-06-05 22:46:17,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:46:17,939.939 INFO    ] Initializing speech engine...
[2026-06-05 22:46:17,948.948 INFO    ] 2026-06-05 22:46:17
[2026-06-05 22:46:18,239.239 INFO    ] 2026-06-05 22:46:18
[2026-06-05 22:46:18,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:46:18,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:46:18,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:46:18,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:46:18,653.653 INFO    ] time= 05/06/2026 22:46:18
[2026-06-05 22:46:18,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:46:18,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:46:18,739.739 INFO    ] No existing commands found in stream
[2026-06-05 22:46:23,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:46:23,767.767 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-05 22:46:27,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:46:27,096.096 INFO    ] Checking for system updates...
[2026-06-05 22:46:27,132.132 INFO    ] 200
[2026-06-05 22:46:27,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:27,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:46:27,196.196 INFO    ] No update needed
[2026-06-05 22:46:27,198.198 INFO    ] Checking for camera pi updates...
[2026-06-05 22:46:27,232.232 INFO    ] 200
[2026-06-05 22:46:27,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:27,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:46:27,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:46:27,344.344 INFO    ] No camera update needed
[2026-06-05 22:46:27,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:46:27,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:46:27,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:46:27,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:46:29,402.402 INFO    ] ================================================
[2026-06-05 22:46:29,418.418 INFO    ] Launching Daemon at Fri Jun  5 22:46:29 IST 2026
[2026-06-05 22:46:29,430.430 INFO    ] ================================================
[2026-06-05 22:46:30,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:46:30
[2026-06-05 22:46:30,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:46:30,915.915 INFO    ] Initializing speech engine...
[2026-06-05 22:46:30,930.930 INFO    ] 2026-06-05 22:46:30
[2026-06-05 22:46:31,204.204 INFO    ] 2026-06-05 22:46:31
[2026-06-05 22:46:31,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:46:33,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:46:33,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:46:33,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:46:33,281.281 INFO    ] time= 05/06/2026 22:46:33
[2026-06-05 22:46:33,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:46:33,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:46:33,372.372 INFO    ] No existing commands found in stream
[2026-06-05 22:46:38,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:46:38,387.387 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 22:46:40,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:46:40,287.287 INFO    ] Checking for system updates...
[2026-06-05 22:46:40,323.323 INFO    ] 200
[2026-06-05 22:46:40,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:40,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:46:40,387.387 INFO    ] No update needed
[2026-06-05 22:46:40,390.390 INFO    ] Checking for camera pi updates...
[2026-06-05 22:46:40,424.424 INFO    ] 200
[2026-06-05 22:46:40,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:40,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:46:40,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:46:40,529.529 INFO    ] No camera update needed
[2026-06-05 22:46:40,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:46:40,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:46:40,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:46:40,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:46:42,585.585 INFO    ] ================================================
[2026-06-05 22:46:42,601.601 INFO    ] Launching Daemon at Fri Jun  5 22:46:42 IST 2026
[2026-06-05 22:46:42,612.612 INFO    ] ================================================
[2026-06-05 22:46:43,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:46:43
[2026-06-05 22:46:43,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:46:44,022.022 INFO    ] Initializing speech engine...
[2026-06-05 22:46:44,031.031 INFO    ] 2026-06-05 22:46:44
[2026-06-05 22:46:44,326.326 INFO    ] 2026-06-05 22:46:44
[2026-06-05 22:46:44,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:46:44,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:46:44,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:46:44,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:46:44,817.817 INFO    ] time= 05/06/2026 22:46:44
[2026-06-05 22:46:44,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:46:44,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:46:45,018.018 INFO    ] No existing commands found in stream
[2026-06-05 22:46:50,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:46:50,032.032 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 22:46:53,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:46:53,021.021 INFO    ] Checking for system updates...
[2026-06-05 22:46:53,058.058 INFO    ] 200
[2026-06-05 22:46:53,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:53,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:46:53,118.118 INFO    ] No update needed
[2026-06-05 22:46:53,120.120 INFO    ] Checking for camera pi updates...
[2026-06-05 22:46:53,156.156 INFO    ] 200
[2026-06-05 22:46:53,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:46:53,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:46:53,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:46:53,237.237 INFO    ] No camera update needed
[2026-06-05 22:46:53,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:46:53,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:46:53,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:46:53,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:46:55,299.299 INFO    ] ================================================
[2026-06-05 22:46:55,314.314 INFO    ] Launching Daemon at Fri Jun  5 22:46:55 IST 2026
[2026-06-05 22:46:55,329.329 INFO    ] ================================================
[2026-06-05 22:46:55,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:46:55
[2026-06-05 22:46:56,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:46:56,771.771 INFO    ] Initializing speech engine...
[2026-06-05 22:46:56,794.794 INFO    ] 2026-06-05 22:46:56
[2026-06-05 22:46:57,049.049 INFO    ] 2026-06-05 22:46:57
[2026-06-05 22:46:57,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:46:57,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:46:57,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:46:57,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:46:57,522.522 INFO    ] time= 05/06/2026 22:46:57
[2026-06-05 22:46:57,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:46:57,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:46:57,713.713 INFO    ] No existing commands found in stream
[2026-06-05 22:47:02,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:47:02,728.728 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-05 22:47:05,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:47:05,674.674 INFO    ] Checking for system updates...
[2026-06-05 22:47:05,711.711 INFO    ] 200
[2026-06-05 22:47:05,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:05,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:47:05,769.769 INFO    ] No update needed
[2026-06-05 22:47:05,771.771 INFO    ] Checking for camera pi updates...
[2026-06-05 22:47:05,805.805 INFO    ] 200
[2026-06-05 22:47:05,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:05,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:47:05,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:47:05,945.945 INFO    ] No camera update needed
[2026-06-05 22:47:05,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:47:05,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:47:05,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:47:05,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:47:08,000.000 INFO    ] ================================================
[2026-06-05 22:47:08,017.017 INFO    ] Launching Daemon at Fri Jun  5 22:47:08 IST 2026
[2026-06-05 22:47:08,028.028 INFO    ] ================================================
[2026-06-05 22:47:08,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:47:08
[2026-06-05 22:47:09,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:47:09,581.581 INFO    ] Initializing speech engine...
[2026-06-05 22:47:09,589.589 INFO    ] 2026-06-05 22:47:09
[2026-06-05 22:47:09,882.882 INFO    ] 2026-06-05 22:47:09
[2026-06-05 22:47:09,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:47:10,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:47:10,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:47:10,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:47:10,412.412 INFO    ] time= 05/06/2026 22:47:10
[2026-06-05 22:47:10,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:47:10,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:47:10,567.567 INFO    ] No existing commands found in stream
[2026-06-05 22:47:15,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:47:15,586.586 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-05 22:47:16,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:47:16,393.393 INFO    ] Checking for system updates...
[2026-06-05 22:47:16,431.431 INFO    ] 200
[2026-06-05 22:47:16,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:16,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:47:16,493.493 INFO    ] No update needed
[2026-06-05 22:47:16,496.496 INFO    ] Checking for camera pi updates...
[2026-06-05 22:47:16,538.538 INFO    ] 200
[2026-06-05 22:47:16,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:16,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:47:16,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:47:16,643.643 INFO    ] No camera update needed
[2026-06-05 22:47:16,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:47:16,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:47:16,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:47:16,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:47:18,702.702 INFO    ] ================================================
[2026-06-05 22:47:18,718.718 INFO    ] Launching Daemon at Fri Jun  5 22:47:18 IST 2026
[2026-06-05 22:47:18,729.729 INFO    ] ================================================
[2026-06-05 22:47:19,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:47:19
[2026-06-05 22:47:19,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:47:20,318.318 INFO    ] Initializing speech engine...
[2026-06-05 22:47:20,327.327 INFO    ] 2026-06-05 22:47:20
[2026-06-05 22:47:20,629.629 INFO    ] 2026-06-05 22:47:20
[2026-06-05 22:47:20,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:47:20,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:47:20,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:47:21,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:47:21,125.125 INFO    ] time= 05/06/2026 22:47:21
[2026-06-05 22:47:21,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:47:21,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:47:21,318.318 INFO    ] No existing commands found in stream
[2026-06-05 22:47:26,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:47:26,348.348 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 22:47:28,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:47:28,477.477 INFO    ] Checking for system updates...
[2026-06-05 22:47:28,519.519 INFO    ] 200
[2026-06-05 22:47:28,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:28,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:47:28,581.581 INFO    ] No update needed
[2026-06-05 22:47:28,583.583 INFO    ] Checking for camera pi updates...
[2026-06-05 22:47:28,619.619 INFO    ] 200
[2026-06-05 22:47:28,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:28,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:47:28,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:47:28,724.724 INFO    ] No camera update needed
[2026-06-05 22:47:28,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:47:28,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:47:28,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:47:28,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:47:30,780.780 INFO    ] ================================================
[2026-06-05 22:47:30,796.796 INFO    ] Launching Daemon at Fri Jun  5 22:47:30 IST 2026
[2026-06-05 22:47:30,809.809 INFO    ] ================================================
[2026-06-05 22:47:31,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:47:31
[2026-06-05 22:47:32,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:47:32,489.489 INFO    ] Initializing speech engine...
[2026-06-05 22:47:32,502.502 INFO    ] 2026-06-05 22:47:32
[2026-06-05 22:47:32,806.806 INFO    ] 2026-06-05 22:47:32
[2026-06-05 22:47:32,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:47:33,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:47:33,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:47:33,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:47:33,348.348 INFO    ] time= 05/06/2026 22:47:33
[2026-06-05 22:47:33,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:47:33,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:47:33,503.503 INFO    ] No existing commands found in stream
[2026-06-05 22:47:38,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:47:38,530.530 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-05 22:47:40,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:47:40,993.993 INFO    ] Checking for system updates...
[2026-06-05 22:47:41,033.033 INFO    ] 200
[2026-06-05 22:47:41,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:41,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:47:41,091.091 INFO    ] No update needed
[2026-06-05 22:47:41,093.093 INFO    ] Checking for camera pi updates...
[2026-06-05 22:47:41,130.130 INFO    ] 200
[2026-06-05 22:47:41,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:41,174.174 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:47:41,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:47:41,240.240 INFO    ] No camera update needed
[2026-06-05 22:47:41,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:47:41,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:47:41,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:47:41,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:47:43,295.295 INFO    ] ================================================
[2026-06-05 22:47:43,311.311 INFO    ] Launching Daemon at Fri Jun  5 22:47:43 IST 2026
[2026-06-05 22:47:43,322.322 INFO    ] ================================================
[2026-06-05 22:47:43,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:47:43
[2026-06-05 22:47:44,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:47:44,934.934 INFO    ] Initializing speech engine...
[2026-06-05 22:47:44,943.943 INFO    ] 2026-06-05 22:47:44
[2026-06-05 22:47:45,214.214 INFO    ] 2026-06-05 22:47:45
[2026-06-05 22:47:45,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:47:45,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:47:45,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:47:45,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:47:45,699.699 INFO    ] time= 05/06/2026 22:47:45
[2026-06-05 22:47:45,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:47:45,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:47:45,921.921 INFO    ] No existing commands found in stream
[2026-06-05 22:47:50,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:47:50,958.958 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-05 22:47:53,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:47:53,196.196 INFO    ] Checking for system updates...
[2026-06-05 22:47:53,233.233 INFO    ] 200
[2026-06-05 22:47:53,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:53,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:47:53,294.294 INFO    ] No update needed
[2026-06-05 22:47:53,296.296 INFO    ] Checking for camera pi updates...
[2026-06-05 22:47:53,331.331 INFO    ] 200
[2026-06-05 22:47:53,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:47:53,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:47:53,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:47:53,448.448 INFO    ] No camera update needed
[2026-06-05 22:47:53,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:47:53,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:47:53,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:47:53,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:47:55,508.508 INFO    ] ================================================
[2026-06-05 22:47:55,524.524 INFO    ] Launching Daemon at Fri Jun  5 22:47:55 IST 2026
[2026-06-05 22:47:55,534.534 INFO    ] ================================================
[2026-06-05 22:47:56,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:47:56
[2026-06-05 22:47:56,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:47:57,134.134 INFO    ] Initializing speech engine...
[2026-06-05 22:47:57,141.141 INFO    ] 2026-06-05 22:47:57
[2026-06-05 22:47:57,414.414 INFO    ] 2026-06-05 22:47:57
[2026-06-05 22:47:57,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:47:57,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:47:57,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:47:57,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:47:57,976.976 INFO    ] time= 05/06/2026 22:47:57
[2026-06-05 22:47:57,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:47:58,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:47:58,136.136 INFO    ] No existing commands found in stream
[2026-06-05 22:48:03,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:48:03,151.151 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 22:48:05,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:48:05,026.026 INFO    ] Checking for system updates...
[2026-06-05 22:48:05,063.063 INFO    ] 200
[2026-06-05 22:48:05,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:05,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:48:05,126.126 INFO    ] No update needed
[2026-06-05 22:48:05,128.128 INFO    ] Checking for camera pi updates...
[2026-06-05 22:48:05,163.163 INFO    ] 200
[2026-06-05 22:48:05,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:05,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:48:05,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:48:05,260.260 INFO    ] No camera update needed
[2026-06-05 22:48:05,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:48:05,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:48:05,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:48:05,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:48:07,318.318 INFO    ] ================================================
[2026-06-05 22:48:07,333.333 INFO    ] Launching Daemon at Fri Jun  5 22:48:07 IST 2026
[2026-06-05 22:48:07,344.344 INFO    ] ================================================
[2026-06-05 22:48:07,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:48:07
[2026-06-05 22:48:08,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:48:08,948.948 INFO    ] Initializing speech engine...
[2026-06-05 22:48:08,961.961 INFO    ] 2026-06-05 22:48:08
[2026-06-05 22:48:09,244.244 INFO    ] 2026-06-05 22:48:09
[2026-06-05 22:48:09,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:48:09,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:48:09,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:48:09,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:48:09,791.791 INFO    ] time= 05/06/2026 22:48:09
[2026-06-05 22:48:09,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:48:09,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:48:09,948.948 INFO    ] No existing commands found in stream
[2026-06-05 22:48:14,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:48:14,968.968 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-05 22:48:18,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:48:18,429.429 INFO    ] Checking for system updates...
[2026-06-05 22:48:18,468.468 INFO    ] 200
[2026-06-05 22:48:18,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:18,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:48:18,527.527 INFO    ] No update needed
[2026-06-05 22:48:18,530.530 INFO    ] Checking for camera pi updates...
[2026-06-05 22:48:18,564.564 INFO    ] 200
[2026-06-05 22:48:18,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:18,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:48:18,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:48:18,679.679 INFO    ] No camera update needed
[2026-06-05 22:48:18,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:48:18,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:48:18,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:48:18,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:48:20,737.737 INFO    ] ================================================
[2026-06-05 22:48:20,753.753 INFO    ] Launching Daemon at Fri Jun  5 22:48:20 IST 2026
[2026-06-05 22:48:20,764.764 INFO    ] ================================================
[2026-06-05 22:48:21,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:48:21
[2026-06-05 22:48:21,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:48:22,211.211 INFO    ] Initializing speech engine...
[2026-06-05 22:48:22,226.226 INFO    ] 2026-06-05 22:48:22
[2026-06-05 22:48:22,510.510 INFO    ] 2026-06-05 22:48:22
[2026-06-05 22:48:22,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:48:22,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:48:22,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:48:22,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:48:23,067.067 INFO    ] time= 05/06/2026 22:48:23
[2026-06-05 22:48:23,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:48:23,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:48:23,310.310 INFO    ] No existing commands found in stream
[2026-06-05 22:48:28,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:48:28,329.329 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 22:48:33,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:48:33,116.116 INFO    ] Checking for system updates...
[2026-06-05 22:48:33,154.154 INFO    ] 200
[2026-06-05 22:48:33,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:33,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:48:33,212.212 INFO    ] No update needed
[2026-06-05 22:48:33,214.214 INFO    ] Checking for camera pi updates...
[2026-06-05 22:48:33,249.249 INFO    ] 200
[2026-06-05 22:48:33,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:33,297.297 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:48:33,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:48:33,339.339 INFO    ] No camera update needed
[2026-06-05 22:48:33,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:48:33,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:48:33,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:48:33,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:48:35,396.396 INFO    ] ================================================
[2026-06-05 22:48:35,412.412 INFO    ] Launching Daemon at Fri Jun  5 22:48:35 IST 2026
[2026-06-05 22:48:35,423.423 INFO    ] ================================================
[2026-06-05 22:48:36,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:48:35
[2026-06-05 22:48:36,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:48:36,864.864 INFO    ] Initializing speech engine...
[2026-06-05 22:48:36,877.877 INFO    ] 2026-06-05 22:48:36
[2026-06-05 22:48:37,173.173 INFO    ] 2026-06-05 22:48:37
[2026-06-05 22:48:37,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:48:37,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:48:37,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:48:37,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:48:37,744.744 INFO    ] time= 05/06/2026 22:48:37
[2026-06-05 22:48:37,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:48:37,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:48:37,908.908 INFO    ] No existing commands found in stream
[2026-06-05 22:48:42,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:48:42,935.935 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-05 22:48:45,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:48:45,328.328 INFO    ] Checking for system updates...
[2026-06-05 22:48:45,366.366 INFO    ] 200
[2026-06-05 22:48:45,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:45,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:48:45,425.425 INFO    ] No update needed
[2026-06-05 22:48:45,428.428 INFO    ] Checking for camera pi updates...
[2026-06-05 22:48:45,463.463 INFO    ] 200
[2026-06-05 22:48:45,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:45,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:48:45,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:48:45,572.572 INFO    ] No camera update needed
[2026-06-05 22:48:45,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:48:45,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:48:45,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:48:45,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:48:47,634.634 INFO    ] ================================================
[2026-06-05 22:48:47,650.650 INFO    ] Launching Daemon at Fri Jun  5 22:48:47 IST 2026
[2026-06-05 22:48:47,662.662 INFO    ] ================================================
[2026-06-05 22:48:48,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:48:48
[2026-06-05 22:48:48,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:48:49,128.128 INFO    ] Initializing speech engine...
[2026-06-05 22:48:49,137.137 INFO    ] 2026-06-05 22:48:49
[2026-06-05 22:48:49,396.396 INFO    ] 2026-06-05 22:48:49
[2026-06-05 22:48:49,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:48:49,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:48:49,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:48:49,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:48:49,882.882 INFO    ] time= 05/06/2026 22:48:49
[2026-06-05 22:48:49,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:48:49,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:48:50,120.120 INFO    ] No existing commands found in stream
[2026-06-05 22:48:55,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:48:55,153.153 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 22:48:57,016.016 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:48:57,020.020 INFO    ] Checking for system updates...
[2026-06-05 22:48:57,069.069 INFO    ] 200
[2026-06-05 22:48:57,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:57,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:48:57,130.130 INFO    ] No update needed
[2026-06-05 22:48:57,132.132 INFO    ] Checking for camera pi updates...
[2026-06-05 22:48:57,168.168 INFO    ] 200
[2026-06-05 22:48:57,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:48:57,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:48:57,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:48:57,270.270 INFO    ] No camera update needed
[2026-06-05 22:48:57,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:48:57,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:48:57,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:48:57,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:48:59,329.329 INFO    ] ================================================
[2026-06-05 22:48:59,344.344 INFO    ] Launching Daemon at Fri Jun  5 22:48:59 IST 2026
[2026-06-05 22:48:59,356.356 INFO    ] ================================================
[2026-06-05 22:49:00,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:49:00
[2026-06-05 22:49:00,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:49:01,010.010 INFO    ] Initializing speech engine...
[2026-06-05 22:49:01,019.019 INFO    ] 2026-06-05 22:49:01
[2026-06-05 22:49:01,310.310 INFO    ] 2026-06-05 22:49:01
[2026-06-05 22:49:01,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:49:03,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:49:03,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:49:03,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:49:03,564.564 INFO    ] time= 05/06/2026 22:49:03
[2026-06-05 22:49:03,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:49:03,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:49:03,641.641 INFO    ] No existing commands found in stream
[2026-06-05 22:49:08,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:49:08,656.656 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-05 22:49:11,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:49:11,884.884 INFO    ] Checking for system updates...
[2026-06-05 22:49:11,925.925 INFO    ] 200
[2026-06-05 22:49:11,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:49:11,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:49:12,001.001 INFO    ] No update needed
[2026-06-05 22:49:12,004.004 INFO    ] Checking for camera pi updates...
[2026-06-05 22:49:12,037.037 INFO    ] 200
[2026-06-05 22:49:12,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:49:12,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:49:12,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:49:12,128.128 INFO    ] No camera update needed
[2026-06-05 22:49:12,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:49:12,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:49:12,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:49:12,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:49:14,185.185 INFO    ] ================================================
[2026-06-05 22:49:14,200.200 INFO    ] Launching Daemon at Fri Jun  5 22:49:14 IST 2026
[2026-06-05 22:49:14,212.212 INFO    ] ================================================
[2026-06-05 22:49:14,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:49:14
[2026-06-05 22:49:15,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:49:15,671.671 INFO    ] Initializing speech engine...
[2026-06-05 22:49:15,681.681 INFO    ] 2026-06-05 22:49:15
[2026-06-05 22:49:15,945.945 INFO    ] 2026-06-05 22:49:15
[2026-06-05 22:49:15,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:49:18,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:49:18,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:49:18,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:49:18,298.298 INFO    ] time= 05/06/2026 22:49:18
[2026-06-05 22:49:18,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:49:18,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:49:18,432.432 INFO    ] No existing commands found in stream
[2026-06-05 22:49:23,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:49:23,451.451 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-05 22:49:24,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:49:24,411.411 INFO    ] Checking for system updates...
[2026-06-05 22:49:24,448.448 INFO    ] 200
[2026-06-05 22:49:24,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:49:24,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:49:24,514.514 INFO    ] No update needed
[2026-06-05 22:49:24,517.517 INFO    ] Checking for camera pi updates...
[2026-06-05 22:49:24,555.555 INFO    ] 200
[2026-06-05 22:49:24,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:49:24,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:49:24,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:49:24,662.662 INFO    ] No camera update needed
[2026-06-05 22:49:24,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:49:24,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:49:24,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:49:24,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:49:26,720.720 INFO    ] ================================================
[2026-06-05 22:49:26,736.736 INFO    ] Launching Daemon at Fri Jun  5 22:49:26 IST 2026
[2026-06-05 22:49:26,747.747 INFO    ] ================================================
[2026-06-05 22:49:27,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:49:27
[2026-06-05 22:49:27,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:49:28,156.156 INFO    ] Initializing speech engine...
[2026-06-05 22:49:28,161.161 INFO    ] 2026-06-05 22:49:28
[2026-06-05 22:49:28,462.462 INFO    ] 2026-06-05 22:49:28
[2026-06-05 22:49:28,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:49:28,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:49:28,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:49:28,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:49:28,897.897 INFO    ] time= 05/06/2026 22:49:28
[2026-06-05 22:49:28,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:49:28,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:49:29,066.066 INFO    ] No existing commands found in stream
[2026-06-05 22:49:34,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:49:34,099.099 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 22:49:37,634.634 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:49:37,637.637 INFO    ] Checking for system updates...
[2026-06-05 22:49:37,684.684 INFO    ] 200
[2026-06-05 22:49:37,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:49:37,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:49:37,753.753 INFO    ] No update needed
[2026-06-05 22:49:37,756.756 INFO    ] Checking for camera pi updates...
[2026-06-05 22:49:37,791.791 INFO    ] 200
[2026-06-05 22:49:37,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:49:37,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:49:37,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:49:37,873.873 INFO    ] No camera update needed
[2026-06-05 22:49:37,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:49:37,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:49:37,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:49:37,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:49:39,938.938 INFO    ] ================================================
[2026-06-05 22:49:39,954.954 INFO    ] Launching Daemon at Fri Jun  5 22:49:39 IST 2026
[2026-06-05 22:49:39,965.965 INFO    ] ================================================
[2026-06-05 22:49:40,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:49:40
[2026-06-05 22:49:41,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:49:41,666.666 INFO    ] Initializing speech engine...
[2026-06-05 22:49:41,681.681 INFO    ] 2026-06-05 22:49:41
[2026-06-05 22:49:41,974.974 INFO    ] 2026-06-05 22:49:41
[2026-06-05 22:49:42,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:49:42,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:49:42,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:49:42,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:49:42,524.524 INFO    ] time= 05/06/2026 22:49:42
[2026-06-05 22:49:42,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:49:42,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:49:42,692.692 INFO    ] No existing commands found in stream
[2026-06-05 22:49:47,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:49:47,732.732 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 22:49:51,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:49:51,035.035 INFO    ] Checking for system updates...
[2026-06-05 22:49:51,073.073 INFO    ] 200
[2026-06-05 22:49:51,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:49:51,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:49:51,132.132 INFO    ] No update needed
[2026-06-05 22:49:51,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 22:49:51,169.169 INFO    ] 200
[2026-06-05 22:49:51,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:49:51,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:49:51,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:49:51,254.254 INFO    ] No camera update needed
[2026-06-05 22:49:51,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:49:51,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:49:51,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:49:51,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:49:53,310.310 INFO    ] ================================================
[2026-06-05 22:49:53,326.326 INFO    ] Launching Daemon at Fri Jun  5 22:49:53 IST 2026
[2026-06-05 22:49:53,340.340 INFO    ] ================================================
[2026-06-05 22:49:53,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:49:53
[2026-06-05 22:49:54,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:49:54,754.754 INFO    ] Initializing speech engine...
[2026-06-05 22:49:54,760.760 INFO    ] 2026-06-05 22:49:54
[2026-06-05 22:49:55,067.067 INFO    ] 2026-06-05 22:49:55
[2026-06-05 22:49:55,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:49:55,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:49:55,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:49:55,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:49:55,501.501 INFO    ] time= 05/06/2026 22:49:55
[2026-06-05 22:49:55,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:49:55,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:49:55,588.588 INFO    ] No existing commands found in stream
[2026-06-05 22:50:00,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:50:00,604.604 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 22:50:06,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:50:06,083.083 INFO    ] Checking for system updates...
[2026-06-05 22:50:06,119.119 INFO    ] 200
[2026-06-05 22:50:06,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:06,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:50:06,177.177 INFO    ] No update needed
[2026-06-05 22:50:06,179.179 INFO    ] Checking for camera pi updates...
[2026-06-05 22:50:06,217.217 INFO    ] 200
[2026-06-05 22:50:06,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:06,264.264 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:50:06,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:50:06,396.396 INFO    ] No camera update needed
[2026-06-05 22:50:06,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:50:06,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:50:06,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:50:06,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:50:08,452.452 INFO    ] ================================================
[2026-06-05 22:50:08,468.468 INFO    ] Launching Daemon at Fri Jun  5 22:50:08 IST 2026
[2026-06-05 22:50:08,479.479 INFO    ] ================================================
[2026-06-05 22:50:09,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:50:09
[2026-06-05 22:50:09,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:50:10,093.093 INFO    ] Initializing speech engine...
[2026-06-05 22:50:10,106.106 INFO    ] 2026-06-05 22:50:10
[2026-06-05 22:50:10,398.398 INFO    ] 2026-06-05 22:50:10
[2026-06-05 22:50:10,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:50:10,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:50:10,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:50:10,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:50:10,947.947 INFO    ] time= 05/06/2026 22:50:10
[2026-06-05 22:50:10,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:50:10,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:50:11,127.127 INFO    ] No existing commands found in stream
[2026-06-05 22:50:16,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:50:16,161.161 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 22:50:20,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:50:20,347.347 INFO    ] Checking for system updates...
[2026-06-05 22:50:20,384.384 INFO    ] 200
[2026-06-05 22:50:20,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:20,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:50:20,450.450 INFO    ] No update needed
[2026-06-05 22:50:20,453.453 INFO    ] Checking for camera pi updates...
[2026-06-05 22:50:20,488.488 INFO    ] 200
[2026-06-05 22:50:20,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:20,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:50:20,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:50:20,590.590 INFO    ] No camera update needed
[2026-06-05 22:50:20,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:50:20,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:50:20,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:50:20,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:50:22,646.646 INFO    ] ================================================
[2026-06-05 22:50:22,661.661 INFO    ] Launching Daemon at Fri Jun  5 22:50:22 IST 2026
[2026-06-05 22:50:22,672.672 INFO    ] ================================================
[2026-06-05 22:50:23,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:50:23
[2026-06-05 22:50:23,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:50:24,136.136 INFO    ] Initializing speech engine...
[2026-06-05 22:50:24,145.145 INFO    ] 2026-06-05 22:50:24
[2026-06-05 22:50:24,404.404 INFO    ] 2026-06-05 22:50:24
[2026-06-05 22:50:24,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:50:24,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:50:24,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:50:24,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:50:24,889.889 INFO    ] time= 05/06/2026 22:50:24
[2026-06-05 22:50:24,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:50:24,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:50:25,104.104 INFO    ] No existing commands found in stream
[2026-06-05 22:50:30,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:50:30,116.116 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 22:50:33,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:50:33,098.098 INFO    ] Checking for system updates...
[2026-06-05 22:50:33,138.138 INFO    ] 200
[2026-06-05 22:50:33,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:33,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:50:33,203.203 INFO    ] No update needed
[2026-06-05 22:50:33,205.205 INFO    ] Checking for camera pi updates...
[2026-06-05 22:50:33,251.251 INFO    ] 200
[2026-06-05 22:50:33,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:33,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:50:33,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:50:33,338.338 INFO    ] No camera update needed
[2026-06-05 22:50:33,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:50:33,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:50:33,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:50:33,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:50:35,392.392 INFO    ] ================================================
[2026-06-05 22:50:35,408.408 INFO    ] Launching Daemon at Fri Jun  5 22:50:35 IST 2026
[2026-06-05 22:50:35,420.420 INFO    ] ================================================
[2026-06-05 22:50:35,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:50:35
[2026-06-05 22:50:36,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:50:36,844.844 INFO    ] Initializing speech engine...
[2026-06-05 22:50:36,857.857 INFO    ] 2026-06-05 22:50:36
[2026-06-05 22:50:37,108.108 INFO    ] 2026-06-05 22:50:37
[2026-06-05 22:50:37,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:50:37,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:50:37,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:50:37,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:50:37,678.678 INFO    ] time= 05/06/2026 22:50:37
[2026-06-05 22:50:37,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:50:37,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:50:37,826.826 INFO    ] No existing commands found in stream
[2026-06-05 22:50:42,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:50:42,852.852 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 22:50:45,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:50:45,106.106 INFO    ] Checking for system updates...
[2026-06-05 22:50:45,143.143 INFO    ] 200
[2026-06-05 22:50:45,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:45,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:50:45,202.202 INFO    ] No update needed
[2026-06-05 22:50:45,204.204 INFO    ] Checking for camera pi updates...
[2026-06-05 22:50:45,238.238 INFO    ] 200
[2026-06-05 22:50:45,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:45,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:50:45,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:50:45,332.332 INFO    ] No camera update needed
[2026-06-05 22:50:45,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:50:45,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:50:45,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:50:45,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:50:47,386.386 INFO    ] ================================================
[2026-06-05 22:50:47,403.403 INFO    ] Launching Daemon at Fri Jun  5 22:50:47 IST 2026
[2026-06-05 22:50:47,414.414 INFO    ] ================================================
[2026-06-05 22:50:48,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:50:48
[2026-06-05 22:50:48,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:50:48,866.866 INFO    ] Initializing speech engine...
[2026-06-05 22:50:48,875.875 INFO    ] 2026-06-05 22:50:48
[2026-06-05 22:50:49,134.134 INFO    ] 2026-06-05 22:50:49
[2026-06-05 22:50:49,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:50:49,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:50:49,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:50:49,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:50:49,554.554 INFO    ] time= 05/06/2026 22:50:49
[2026-06-05 22:50:49,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:50:49,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:50:49,751.751 INFO    ] No existing commands found in stream
[2026-06-05 22:50:54,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:50:54,779.779 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 22:50:58,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:50:58,004.004 INFO    ] Checking for system updates...
[2026-06-05 22:50:58,040.040 INFO    ] 200
[2026-06-05 22:50:58,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:58,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:50:58,097.097 INFO    ] No update needed
[2026-06-05 22:50:58,100.100 INFO    ] Checking for camera pi updates...
[2026-06-05 22:50:58,133.133 INFO    ] 200
[2026-06-05 22:50:58,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:50:58,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:50:58,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:50:58,237.237 INFO    ] No camera update needed
[2026-06-05 22:50:58,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:50:58,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:50:58,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:50:58,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:51:00,293.293 INFO    ] ================================================
[2026-06-05 22:51:00,309.309 INFO    ] Launching Daemon at Fri Jun  5 22:51:00 IST 2026
[2026-06-05 22:51:00,319.319 INFO    ] ================================================
[2026-06-05 22:51:00,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:51:00
[2026-06-05 22:51:01,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:51:01,743.743 INFO    ] Initializing speech engine...
[2026-06-05 22:51:01,752.752 INFO    ] 2026-06-05 22:51:01
[2026-06-05 22:51:02,000.000 INFO    ] 2026-06-05 22:51:01
[2026-06-05 22:51:02,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:51:03,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:51:03,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:51:03,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:51:03,454.454 INFO    ] time= 05/06/2026 22:51:03
[2026-06-05 22:51:03,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:51:03,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:51:03,596.596 INFO    ] No existing commands found in stream
[2026-06-05 22:51:08,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:51:08,611.611 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 22:51:09,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:51:09,144.144 INFO    ] Checking for system updates...
[2026-06-05 22:51:09,185.185 INFO    ] 200
[2026-06-05 22:51:09,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:51:09,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:51:09,250.250 INFO    ] No update needed
[2026-06-05 22:51:09,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 22:51:09,290.290 INFO    ] 200
[2026-06-05 22:51:09,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:51:09,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:51:09,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:51:09,384.384 INFO    ] No camera update needed
[2026-06-05 22:51:09,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:51:09,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:51:09,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:51:09,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:51:11,440.440 INFO    ] ================================================
[2026-06-05 22:51:11,455.455 INFO    ] Launching Daemon at Fri Jun  5 22:51:11 IST 2026
[2026-06-05 22:51:11,467.467 INFO    ] ================================================
[2026-06-05 22:51:12,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:51:12
[2026-06-05 22:51:12,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:51:13,083.083 INFO    ] Initializing speech engine...
[2026-06-05 22:51:13,091.091 INFO    ] 2026-06-05 22:51:13
[2026-06-05 22:51:13,353.353 INFO    ] 2026-06-05 22:51:13
[2026-06-05 22:51:13,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:51:13,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:51:13,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:51:13,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:51:13,897.897 INFO    ] time= 05/06/2026 22:51:13
[2026-06-05 22:51:13,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:51:13,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:51:14,023.023 INFO    ] No existing commands found in stream
[2026-06-05 22:51:19,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:51:19,048.048 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 22:51:19,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:51:19,688.688 INFO    ] Checking for system updates...
[2026-06-05 22:51:19,726.726 INFO    ] 200
[2026-06-05 22:51:19,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:51:19,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:51:19,785.785 INFO    ] No update needed
[2026-06-05 22:51:19,788.788 INFO    ] Checking for camera pi updates...
[2026-06-05 22:51:19,827.827 INFO    ] 200
[2026-06-05 22:51:19,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:51:19,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:51:19,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:51:19,947.947 INFO    ] No camera update needed
[2026-06-05 22:51:19,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:51:19,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:51:19,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:51:19,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:51:22,007.007 INFO    ] ================================================
[2026-06-05 22:51:22,023.023 INFO    ] Launching Daemon at Fri Jun  5 22:51:22 IST 2026
[2026-06-05 22:51:22,034.034 INFO    ] ================================================
[2026-06-05 22:51:22,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:51:22
[2026-06-05 22:51:23,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:51:23,519.519 INFO    ] Initializing speech engine...
[2026-06-05 22:51:23,528.528 INFO    ] 2026-06-05 22:51:23
[2026-06-05 22:51:23,795.795 INFO    ] 2026-06-05 22:51:23
[2026-06-05 22:51:23,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:51:24,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:51:24,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:51:24,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:51:24,177.177 INFO    ] time= 05/06/2026 22:51:24
[2026-06-05 22:51:24,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:51:24,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:51:24,306.306 INFO    ] No existing commands found in stream
[2026-06-05 22:51:29,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:51:29,339.339 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-05 22:51:33,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:51:33,187.187 INFO    ] Checking for system updates...
[2026-06-05 22:51:33,232.232 INFO    ] 200
[2026-06-05 22:51:33,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:51:33,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:51:33,298.298 INFO    ] No update needed
[2026-06-05 22:51:33,301.301 INFO    ] Checking for camera pi updates...
[2026-06-05 22:51:33,335.335 INFO    ] 200
[2026-06-05 22:51:33,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:51:33,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:51:33,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:51:33,428.428 INFO    ] No camera update needed
[2026-06-05 22:51:33,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:51:33,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:51:33,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:51:33,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:51:35,483.483 INFO    ] ================================================
[2026-06-05 22:51:35,499.499 INFO    ] Launching Daemon at Fri Jun  5 22:51:35 IST 2026
[2026-06-05 22:51:35,510.510 INFO    ] ================================================
[2026-06-05 22:51:36,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:51:36
[2026-06-05 22:51:36,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:51:37,149.149 INFO    ] Initializing speech engine...
[2026-06-05 22:51:37,156.156 INFO    ] 2026-06-05 22:51:37
[2026-06-05 22:51:37,431.431 INFO    ] 2026-06-05 22:51:37
[2026-06-05 22:51:37,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:51:37,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:51:37,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:51:37,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:51:37,969.969 INFO    ] time= 05/06/2026 22:51:37
[2026-06-05 22:51:37,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:51:38,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:51:38,140.140 INFO    ] No existing commands found in stream
[2026-06-05 22:51:43,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:51:43,172.172 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-05 22:51:46,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:51:46,326.326 INFO    ] Checking for system updates...
[2026-06-05 22:51:46,364.364 INFO    ] 200
[2026-06-05 22:51:46,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:51:46,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:51:46,432.432 INFO    ] No update needed
[2026-06-05 22:51:46,435.435 INFO    ] Checking for camera pi updates...
[2026-06-05 22:51:46,474.474 INFO    ] 200
[2026-06-05 22:51:46,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:51:46,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:51:46,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:51:46,583.583 INFO    ] No camera update needed
[2026-06-05 22:51:46,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:51:46,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:51:46,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:51:46,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:51:48,642.642 INFO    ] ================================================
[2026-06-05 22:51:48,657.657 INFO    ] Launching Daemon at Fri Jun  5 22:51:48 IST 2026
[2026-06-05 22:51:48,668.668 INFO    ] ================================================
[2026-06-05 22:51:49,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:51:49
[2026-06-05 22:51:49,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:51:50,286.286 INFO    ] Initializing speech engine...
[2026-06-05 22:51:50,292.292 INFO    ] 2026-06-05 22:51:50
[2026-06-05 22:51:50,572.572 INFO    ] 2026-06-05 22:51:50
[2026-06-05 22:51:50,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:51:50,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:51:50,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:51:51,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:51:51,138.138 INFO    ] time= 05/06/2026 22:51:51
[2026-06-05 22:51:51,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:51:51,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:51:51,300.300 INFO    ] No existing commands found in stream
[2026-06-05 22:51:56,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:51:56,318.318 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-05 22:52:00,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:52:00,750.750 INFO    ] Checking for system updates...
[2026-06-05 22:52:00,791.791 INFO    ] 200
[2026-06-05 22:52:00,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:52:00,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:52:00,853.853 INFO    ] No update needed
[2026-06-05 22:52:00,856.856 INFO    ] Checking for camera pi updates...
[2026-06-05 22:52:00,891.891 INFO    ] 200
[2026-06-05 22:52:00,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:52:00,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:52:00,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:52:01,000.000 INFO    ] No camera update needed
[2026-06-05 22:52:01,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:52:01,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:52:01,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:52:01,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:52:03,074.074 INFO    ] ================================================
[2026-06-05 22:52:03,096.096 INFO    ] Launching Daemon at Fri Jun  5 22:52:03 IST 2026
[2026-06-05 22:52:03,113.113 INFO    ] ================================================
[2026-06-05 22:52:03,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:52:03
[2026-06-05 22:52:04,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:52:04,589.589 INFO    ] Initializing speech engine...
[2026-06-05 22:52:04,598.598 INFO    ] 2026-06-05 22:52:04
[2026-06-05 22:52:04,872.872 INFO    ] 2026-06-05 22:52:04
[2026-06-05 22:52:04,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:52:05,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:52:05,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:52:05,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:52:05,250.250 INFO    ] time= 05/06/2026 22:52:05
[2026-06-05 22:52:05,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:52:05,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:52:05,450.450 INFO    ] No existing commands found in stream
[2026-06-05 22:52:10,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:52:10,466.466 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-05 22:52:13,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:52:13,958.958 INFO    ] Checking for system updates...
[2026-06-05 22:52:13,999.999 INFO    ] 200
[2026-06-05 22:52:14,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:52:14,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:52:14,060.060 INFO    ] No update needed
[2026-06-05 22:52:14,063.063 INFO    ] Checking for camera pi updates...
[2026-06-05 22:52:14,099.099 INFO    ] 200
[2026-06-05 22:52:14,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:52:14,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:52:14,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:52:14,297.297 INFO    ] No camera update needed
[2026-06-05 22:52:14,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:52:14,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:52:14,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:52:14,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:52:16,353.353 INFO    ] ================================================
[2026-06-05 22:52:16,368.368 INFO    ] Launching Daemon at Fri Jun  5 22:52:16 IST 2026
[2026-06-05 22:52:16,379.379 INFO    ] ================================================
[2026-06-05 22:52:16,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:52:16
[2026-06-05 22:52:17,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:52:17,834.834 INFO    ] Initializing speech engine...
[2026-06-05 22:52:17,839.839 INFO    ] 2026-06-05 22:52:17
[2026-06-05 22:52:18,088.088 INFO    ] 2026-06-05 22:52:18
[2026-06-05 22:52:18,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:52:18,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:52:18,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:52:18,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:52:18,560.560 INFO    ] time= 05/06/2026 22:52:18
[2026-06-05 22:52:18,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:52:18,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:52:18,785.785 INFO    ] No existing commands found in stream
[2026-06-05 22:52:23,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:52:23,815.815 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 22:52:25,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:52:25,058.058 INFO    ] Checking for system updates...
[2026-06-05 22:52:25,094.094 INFO    ] 200
[2026-06-05 22:52:25,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:52:25,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:52:25,152.152 INFO    ] No update needed
[2026-06-05 22:52:25,154.154 INFO    ] Checking for camera pi updates...
[2026-06-05 22:52:25,188.188 INFO    ] 200
[2026-06-05 22:52:25,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:52:25,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:52:25,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:52:25,304.304 INFO    ] No camera update needed
[2026-06-05 22:52:25,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:52:25,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:52:25,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:52:25,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:52:27,364.364 INFO    ] ================================================
[2026-06-05 22:52:27,379.379 INFO    ] Launching Daemon at Fri Jun  5 22:52:27 IST 2026
[2026-06-05 22:52:27,391.391 INFO    ] ================================================
[2026-06-05 22:52:28,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:52:28
[2026-06-05 22:52:28,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:52:29,017.017 INFO    ] Initializing speech engine...
[2026-06-05 22:52:29,027.027 INFO    ] 2026-06-05 22:52:29
[2026-06-05 22:52:29,318.318 INFO    ] 2026-06-05 22:52:29
[2026-06-05 22:52:29,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:52:29,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:52:29,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:52:29,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:52:29,868.868 INFO    ] time= 05/06/2026 22:52:29
[2026-06-05 22:52:29,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:52:29,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:52:30,027.027 INFO    ] No existing commands found in stream
[2026-06-05 22:52:35,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:52:35,046.046 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 22:52:38,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:52:38,149.149 INFO    ] Checking for system updates...
[2026-06-05 22:52:38,188.188 INFO    ] 200
[2026-06-05 22:52:38,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:52:38,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:52:38,246.246 INFO    ] No update needed
[2026-06-05 22:52:38,249.249 INFO    ] Checking for camera pi updates...
[2026-06-05 22:52:38,282.282 INFO    ] 200
[2026-06-05 22:52:38,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:52:38,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:52:38,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:52:38,361.361 INFO    ] No camera update needed
[2026-06-05 22:52:38,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:52:38,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:52:38,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:52:38,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:52:40,415.415 INFO    ] ================================================
[2026-06-05 22:52:40,430.430 INFO    ] Launching Daemon at Fri Jun  5 22:52:40 IST 2026
[2026-06-05 22:52:40,441.441 INFO    ] ================================================
[2026-06-05 22:52:41,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:52:41
[2026-06-05 22:52:41,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:52:41,862.862 INFO    ] Initializing speech engine...
[2026-06-05 22:52:41,887.887 INFO    ] 2026-06-05 22:52:41
[2026-06-05 22:52:42,159.159 INFO    ] 2026-06-05 22:52:42
[2026-06-05 22:52:42,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:52:42,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:52:42,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:52:42,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:52:42,672.672 INFO    ] time= 05/06/2026 22:52:42
[2026-06-05 22:52:42,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:52:42,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:52:42,860.860 INFO    ] No existing commands found in stream
[2026-06-05 22:52:47,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:52:47,875.875 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 22:52:51,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:52:51,091.091 INFO    ] Checking for system updates...
[2026-06-05 22:52:51,137.137 INFO    ] 200
[2026-06-05 22:52:51,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:52:51,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:52:51,215.215 INFO    ] No update needed
[2026-06-05 22:52:51,219.219 INFO    ] Checking for camera pi updates...
[2026-06-05 22:52:51,265.265 INFO    ] 200
[2026-06-05 22:52:51,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 22:52:51,272.272 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-05 22:52:51,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:52:51,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:52:51,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:52:51,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:52:53,334.334 INFO    ] ================================================
[2026-06-05 22:52:53,350.350 INFO    ] Launching Daemon at Fri Jun  5 22:52:53 IST 2026
[2026-06-05 22:52:53,361.361 INFO    ] ================================================
[2026-06-05 22:52:53,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:52:53
[2026-06-05 22:52:54,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:52:54,842.842 INFO    ] Initializing speech engine...
[2026-06-05 22:52:54,851.851 INFO    ] 2026-06-05 22:52:54
[2026-06-05 22:52:55,100.100 INFO    ] 2026-06-05 22:52:55
[2026-06-05 22:52:55,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:52:55,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:52:55,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:52:55,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:52:55,653.653 INFO    ] time= 05/06/2026 22:52:55
[2026-06-05 22:52:55,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:52:55,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:52:55,810.810 INFO    ] No existing commands found in stream
[2026-06-05 22:53:00,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:53:00,831.831 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-05 22:53:03,171.171 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:53:03,174.174 INFO    ] Checking for system updates...
[2026-06-05 22:53:03,219.219 INFO    ] 200
[2026-06-05 22:53:03,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:03,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:53:03,328.328 INFO    ] No update needed
[2026-06-05 22:53:03,331.331 INFO    ] Checking for camera pi updates...
[2026-06-05 22:53:03,373.373 INFO    ] 200
[2026-06-05 22:53:03,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:03,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:53:03,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:53:03,473.473 INFO    ] No camera update needed
[2026-06-05 22:53:03,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:53:03,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:53:03,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:53:03,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:53:05,529.529 INFO    ] ================================================
[2026-06-05 22:53:05,544.544 INFO    ] Launching Daemon at Fri Jun  5 22:53:05 IST 2026
[2026-06-05 22:53:05,555.555 INFO    ] ================================================
[2026-06-05 22:53:06,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:53:06
[2026-06-05 22:53:06,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:53:07,047.047 INFO    ] Initializing speech engine...
[2026-06-05 22:53:07,056.056 INFO    ] 2026-06-05 22:53:07
[2026-06-05 22:53:07,306.306 INFO    ] 2026-06-05 22:53:07
[2026-06-05 22:53:07,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:53:07,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:53:07,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:53:07,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:53:07,862.862 INFO    ] time= 05/06/2026 22:53:07
[2026-06-05 22:53:07,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:53:07,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:53:08,013.013 INFO    ] No existing commands found in stream
[2026-06-05 22:53:13,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:53:13,032.032 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 22:53:14,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:53:14,799.799 INFO    ] Checking for system updates...
[2026-06-05 22:53:14,835.835 INFO    ] 200
[2026-06-05 22:53:14,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:14,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:53:14,902.902 INFO    ] No update needed
[2026-06-05 22:53:14,904.904 INFO    ] Checking for camera pi updates...
[2026-06-05 22:53:14,938.938 INFO    ] 200
[2026-06-05 22:53:14,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:14,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:53:15,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:53:15,029.029 INFO    ] No camera update needed
[2026-06-05 22:53:15,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:53:15,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:53:15,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:53:15,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:53:17,086.086 INFO    ] ================================================
[2026-06-05 22:53:17,101.101 INFO    ] Launching Daemon at Fri Jun  5 22:53:17 IST 2026
[2026-06-05 22:53:17,112.112 INFO    ] ================================================
[2026-06-05 22:53:17,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:53:17
[2026-06-05 22:53:18,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:53:18,579.579 INFO    ] Initializing speech engine...
[2026-06-05 22:53:18,588.588 INFO    ] 2026-06-05 22:53:18
[2026-06-05 22:53:18,884.884 INFO    ] 2026-06-05 22:53:18
[2026-06-05 22:53:18,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:53:19,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:53:19,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:53:19,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:53:19,390.390 INFO    ] time= 05/06/2026 22:53:19
[2026-06-05 22:53:19,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:53:19,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:53:19,606.606 INFO    ] No existing commands found in stream
[2026-06-05 22:53:24,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:53:24,624.624 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 22:53:27,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:53:27,307.307 INFO    ] Checking for system updates...
[2026-06-05 22:53:27,344.344 INFO    ] 200
[2026-06-05 22:53:27,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:27,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:53:27,411.411 INFO    ] No update needed
[2026-06-05 22:53:27,413.413 INFO    ] Checking for camera pi updates...
[2026-06-05 22:53:27,453.453 INFO    ] 200
[2026-06-05 22:53:27,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:27,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:53:27,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:53:27,570.570 INFO    ] No camera update needed
[2026-06-05 22:53:27,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:53:27,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:53:27,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:53:27,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:53:29,629.629 INFO    ] ================================================
[2026-06-05 22:53:29,644.644 INFO    ] Launching Daemon at Fri Jun  5 22:53:29 IST 2026
[2026-06-05 22:53:29,655.655 INFO    ] ================================================
[2026-06-05 22:53:30,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:53:30
[2026-06-05 22:53:30,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:53:31,148.148 INFO    ] Initializing speech engine...
[2026-06-05 22:53:31,154.154 INFO    ] 2026-06-05 22:53:31
[2026-06-05 22:53:31,418.418 INFO    ] 2026-06-05 22:53:31
[2026-06-05 22:53:31,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:53:32,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:53:32,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:53:33,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:53:33,019.019 INFO    ] time= 05/06/2026 22:53:33
[2026-06-05 22:53:33,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:53:33,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:53:33,125.125 INFO    ] No existing commands found in stream
[2026-06-05 22:53:38,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:53:38,140.140 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 22:53:41,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:53:41,428.428 INFO    ] Checking for system updates...
[2026-06-05 22:53:41,469.469 INFO    ] 200
[2026-06-05 22:53:41,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:41,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:53:41,535.535 INFO    ] No update needed
[2026-06-05 22:53:41,537.537 INFO    ] Checking for camera pi updates...
[2026-06-05 22:53:41,572.572 INFO    ] 200
[2026-06-05 22:53:41,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:41,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:53:41,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:53:41,665.665 INFO    ] No camera update needed
[2026-06-05 22:53:41,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:53:41,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:53:41,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:53:41,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:53:43,724.724 INFO    ] ================================================
[2026-06-05 22:53:43,739.739 INFO    ] Launching Daemon at Fri Jun  5 22:53:43 IST 2026
[2026-06-05 22:53:43,750.750 INFO    ] ================================================
[2026-06-05 22:53:44,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:53:44
[2026-06-05 22:53:44,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:53:45,199.199 INFO    ] Initializing speech engine...
[2026-06-05 22:53:45,212.212 INFO    ] 2026-06-05 22:53:45
[2026-06-05 22:53:45,503.503 INFO    ] 2026-06-05 22:53:45
[2026-06-05 22:53:45,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:53:45,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:53:45,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:53:45,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:53:45,930.930 INFO    ] time= 05/06/2026 22:53:45
[2026-06-05 22:53:45,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:53:45,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:53:46,112.112 INFO    ] No existing commands found in stream
[2026-06-05 22:53:51,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:53:51,140.140 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 22:53:52,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:53:52,158.158 INFO    ] Checking for system updates...
[2026-06-05 22:53:52,199.199 INFO    ] 200
[2026-06-05 22:53:52,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:52,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:53:52,257.257 INFO    ] No update needed
[2026-06-05 22:53:52,259.259 INFO    ] Checking for camera pi updates...
[2026-06-05 22:53:52,293.293 INFO    ] 200
[2026-06-05 22:53:52,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:53:52,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:53:52,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:53:52,397.397 INFO    ] No camera update needed
[2026-06-05 22:53:52,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:53:52,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:53:52,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:53:52,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:53:54,455.455 INFO    ] ================================================
[2026-06-05 22:53:54,470.470 INFO    ] Launching Daemon at Fri Jun  5 22:53:54 IST 2026
[2026-06-05 22:53:54,480.480 INFO    ] ================================================
[2026-06-05 22:53:55,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:53:55
[2026-06-05 22:53:55,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:53:55,915.915 INFO    ] Initializing speech engine...
[2026-06-05 22:53:55,925.925 INFO    ] 2026-06-05 22:53:55
[2026-06-05 22:53:56,174.174 INFO    ] 2026-06-05 22:53:56
[2026-06-05 22:53:56,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:53:56,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:53:56,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:53:56,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:53:56,617.617 INFO    ] time= 05/06/2026 22:53:56
[2026-06-05 22:53:56,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:53:56,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:53:56,774.774 INFO    ] No existing commands found in stream
[2026-06-05 22:54:01,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:54:01,788.788 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 22:54:05,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:54:05,033.033 INFO    ] Checking for system updates...
[2026-06-05 22:54:05,074.074 INFO    ] 200
[2026-06-05 22:54:05,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:05,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:54:05,133.133 INFO    ] No update needed
[2026-06-05 22:54:05,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 22:54:05,174.174 INFO    ] 200
[2026-06-05 22:54:05,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:05,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:54:05,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:54:05,275.275 INFO    ] No camera update needed
[2026-06-05 22:54:05,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:54:05,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:54:05,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:54:05,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:54:07,330.330 INFO    ] ================================================
[2026-06-05 22:54:07,346.346 INFO    ] Launching Daemon at Fri Jun  5 22:54:07 IST 2026
[2026-06-05 22:54:07,356.356 INFO    ] ================================================
[2026-06-05 22:54:07,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:54:07
[2026-06-05 22:54:08,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:54:08,854.854 INFO    ] Initializing speech engine...
[2026-06-05 22:54:08,871.871 INFO    ] 2026-06-05 22:54:08
[2026-06-05 22:54:09,124.124 INFO    ] 2026-06-05 22:54:09
[2026-06-05 22:54:09,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:54:09,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:54:09,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:54:09,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:54:09,560.560 INFO    ] time= 05/06/2026 22:54:09
[2026-06-05 22:54:09,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:54:09,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:54:09,699.699 INFO    ] No existing commands found in stream
[2026-06-05 22:54:14,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:54:14,720.720 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 22:54:19,053.053 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:54:19,057.057 INFO    ] Checking for system updates...
[2026-06-05 22:54:19,094.094 INFO    ] 200
[2026-06-05 22:54:19,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:19,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:54:19,156.156 INFO    ] No update needed
[2026-06-05 22:54:19,159.159 INFO    ] Checking for camera pi updates...
[2026-06-05 22:54:19,198.198 INFO    ] 200
[2026-06-05 22:54:19,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:19,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:54:19,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:54:19,394.394 INFO    ] No camera update needed
[2026-06-05 22:54:19,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:54:19,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:54:19,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:54:19,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:54:21,451.451 INFO    ] ================================================
[2026-06-05 22:54:21,466.466 INFO    ] Launching Daemon at Fri Jun  5 22:54:21 IST 2026
[2026-06-05 22:54:21,477.477 INFO    ] ================================================
[2026-06-05 22:54:22,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:54:22
[2026-06-05 22:54:22,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:54:22,927.927 INFO    ] Initializing speech engine...
[2026-06-05 22:54:22,934.934 INFO    ] 2026-06-05 22:54:22
[2026-06-05 22:54:23,234.234 INFO    ] 2026-06-05 22:54:23
[2026-06-05 22:54:23,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:54:23,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:54:23,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:54:23,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:54:23,663.663 INFO    ] time= 05/06/2026 22:54:23
[2026-06-05 22:54:23,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:54:23,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:54:23,754.754 INFO    ] No existing commands found in stream
[2026-06-05 22:54:28,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:54:28,778.778 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-05 22:54:33,083.083 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:54:33,086.086 INFO    ] Checking for system updates...
[2026-06-05 22:54:33,128.128 INFO    ] 200
[2026-06-05 22:54:33,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:33,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:54:33,204.204 INFO    ] No update needed
[2026-06-05 22:54:33,207.207 INFO    ] Checking for camera pi updates...
[2026-06-05 22:54:33,242.242 INFO    ] 200
[2026-06-05 22:54:33,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:33,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:54:33,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:54:33,318.318 INFO    ] No camera update needed
[2026-06-05 22:54:33,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:54:33,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:54:33,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:54:33,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:54:35,374.374 INFO    ] ================================================
[2026-06-05 22:54:35,389.389 INFO    ] Launching Daemon at Fri Jun  5 22:54:35 IST 2026
[2026-06-05 22:54:35,400.400 INFO    ] ================================================
[2026-06-05 22:54:36,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:54:36
[2026-06-05 22:54:36,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:54:37,061.061 INFO    ] Initializing speech engine...
[2026-06-05 22:54:37,069.069 INFO    ] 2026-06-05 22:54:37
[2026-06-05 22:54:37,359.359 INFO    ] 2026-06-05 22:54:37
[2026-06-05 22:54:37,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:54:37,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:54:37,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:54:38,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:54:38,117.117 INFO    ] time= 05/06/2026 22:54:38
[2026-06-05 22:54:38,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:54:38,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:54:38,343.343 INFO    ] No existing commands found in stream
[2026-06-05 22:54:43,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:54:43,360.360 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 22:54:45,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:54:45,119.119 INFO    ] Checking for system updates...
[2026-06-05 22:54:45,157.157 INFO    ] 200
[2026-06-05 22:54:45,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:45,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:54:45,226.226 INFO    ] No update needed
[2026-06-05 22:54:45,229.229 INFO    ] Checking for camera pi updates...
[2026-06-05 22:54:45,269.269 INFO    ] 200
[2026-06-05 22:54:45,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:45,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:54:45,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:54:45,367.367 INFO    ] No camera update needed
[2026-06-05 22:54:45,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:54:45,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:54:45,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:54:45,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:54:47,423.423 INFO    ] ================================================
[2026-06-05 22:54:47,437.437 INFO    ] Launching Daemon at Fri Jun  5 22:54:47 IST 2026
[2026-06-05 22:54:47,448.448 INFO    ] ================================================
[2026-06-05 22:54:48,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:54:48
[2026-06-05 22:54:48,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:54:48,872.872 INFO    ] Initializing speech engine...
[2026-06-05 22:54:48,891.891 INFO    ] 2026-06-05 22:54:48
[2026-06-05 22:54:49,180.180 INFO    ] 2026-06-05 22:54:49
[2026-06-05 22:54:49,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:54:49,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:54:49,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:54:49,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:54:49,586.586 INFO    ] time= 05/06/2026 22:54:49
[2026-06-05 22:54:49,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:54:49,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:54:49,699.699 INFO    ] No existing commands found in stream
[2026-06-05 22:54:54,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:54:54,717.717 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 22:54:55,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:54:55,984.984 INFO    ] Checking for system updates...
[2026-06-05 22:54:56,020.020 INFO    ] 200
[2026-06-05 22:54:56,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:56,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:54:56,080.080 INFO    ] No update needed
[2026-06-05 22:54:56,082.082 INFO    ] Checking for camera pi updates...
[2026-06-05 22:54:56,121.121 INFO    ] 200
[2026-06-05 22:54:56,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:54:56,170.170 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:54:56,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:54:56,224.224 INFO    ] No camera update needed
[2026-06-05 22:54:56,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:54:56,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:54:56,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:54:56,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:54:58,281.281 INFO    ] ================================================
[2026-06-05 22:54:58,296.296 INFO    ] Launching Daemon at Fri Jun  5 22:54:58 IST 2026
[2026-06-05 22:54:58,307.307 INFO    ] ================================================
[2026-06-05 22:54:58,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:54:58
[2026-06-05 22:54:59,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:54:59,789.789 INFO    ] Initializing speech engine...
[2026-06-05 22:54:59,796.796 INFO    ] 2026-06-05 22:54:59
[2026-06-05 22:55:00,059.059 INFO    ] 2026-06-05 22:55:00
[2026-06-05 22:55:00,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:55:00,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:55:00,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:55:00,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:55:00,609.609 INFO    ] time= 05/06/2026 22:55:00
[2026-06-05 22:55:00,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:55:00,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:55:00,763.763 INFO    ] No existing commands found in stream
[2026-06-05 22:55:05,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:55:05,779.779 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 22:55:10,105.105 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:55:10,108.108 INFO    ] Checking for system updates...
[2026-06-05 22:55:10,144.144 INFO    ] 200
[2026-06-05 22:55:10,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:55:10,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:55:10,208.208 INFO    ] No update needed
[2026-06-05 22:55:10,211.211 INFO    ] Checking for camera pi updates...
[2026-06-05 22:55:10,247.247 INFO    ] 200
[2026-06-05 22:55:10,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:55:10,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:55:10,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:55:10,350.350 INFO    ] No camera update needed
[2026-06-05 22:55:10,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:55:10,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:55:10,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:55:10,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:55:12,407.407 INFO    ] ================================================
[2026-06-05 22:55:12,422.422 INFO    ] Launching Daemon at Fri Jun  5 22:55:12 IST 2026
[2026-06-05 22:55:12,433.433 INFO    ] ================================================
[2026-06-05 22:55:13,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:55:13
[2026-06-05 22:55:13,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:55:13,891.891 INFO    ] Initializing speech engine...
[2026-06-05 22:55:13,902.902 INFO    ] 2026-06-05 22:55:13
[2026-06-05 22:55:14,149.149 INFO    ] 2026-06-05 22:55:14
[2026-06-05 22:55:14,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:55:14,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:55:14,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:55:14,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:55:14,656.656 INFO    ] time= 05/06/2026 22:55:14
[2026-06-05 22:55:14,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:55:14,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:55:14,858.858 INFO    ] No existing commands found in stream
[2026-06-05 22:55:19,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:55:19,875.875 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 22:55:23,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:55:23,745.745 INFO    ] Checking for system updates...
[2026-06-05 22:55:23,781.781 INFO    ] 200
[2026-06-05 22:55:23,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:55:23,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:55:23,848.848 INFO    ] No update needed
[2026-06-05 22:55:23,850.850 INFO    ] Checking for camera pi updates...
[2026-06-05 22:55:23,898.898 INFO    ] 200
[2026-06-05 22:55:23,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:55:23,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:55:23,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:55:23,981.981 INFO    ] No camera update needed
[2026-06-05 22:55:23,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:55:23,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:55:23,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:55:23,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:55:26,038.038 INFO    ] ================================================
[2026-06-05 22:55:26,053.053 INFO    ] Launching Daemon at Fri Jun  5 22:55:26 IST 2026
[2026-06-05 22:55:26,065.065 INFO    ] ================================================
[2026-06-05 22:55:26,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:55:26
[2026-06-05 22:55:27,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:55:27,511.511 INFO    ] Initializing speech engine...
[2026-06-05 22:55:27,522.522 INFO    ] 2026-06-05 22:55:27
[2026-06-05 22:55:27,789.789 INFO    ] 2026-06-05 22:55:27
[2026-06-05 22:55:27,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:55:28,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:55:28,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:55:28,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:55:28,210.210 INFO    ] time= 05/06/2026 22:55:28
[2026-06-05 22:55:28,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:55:28,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:55:28,355.355 INFO    ] No existing commands found in stream
[2026-06-05 22:55:33,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:55:33,378.378 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-05 22:55:36,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:55:36,645.645 INFO    ] Checking for system updates...
[2026-06-05 22:55:36,685.685 INFO    ] 200
[2026-06-05 22:55:36,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:55:36,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:55:36,743.743 INFO    ] No update needed
[2026-06-05 22:55:36,746.746 INFO    ] Checking for camera pi updates...
[2026-06-05 22:55:36,780.780 INFO    ] 200
[2026-06-05 22:55:36,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:55:36,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:55:36,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:55:36,892.892 INFO    ] No camera update needed
[2026-06-05 22:55:36,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:55:36,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:55:36,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:55:36,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:55:38,957.957 INFO    ] ================================================
[2026-06-05 22:55:38,973.973 INFO    ] Launching Daemon at Fri Jun  5 22:55:38 IST 2026
[2026-06-05 22:55:38,984.984 INFO    ] ================================================
[2026-06-05 22:55:39,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:55:39
[2026-06-05 22:55:40,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:55:40,618.618 INFO    ] Initializing speech engine...
[2026-06-05 22:55:40,625.625 INFO    ] 2026-06-05 22:55:40
[2026-06-05 22:55:40,915.915 INFO    ] 2026-06-05 22:55:40
[2026-06-05 22:55:40,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:55:41,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:55:41,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:55:41,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:55:41,385.385 INFO    ] time= 05/06/2026 22:55:41
[2026-06-05 22:55:41,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:55:41,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:55:41,628.628 INFO    ] No existing commands found in stream
[2026-06-05 22:55:46,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:55:46,646.646 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 22:55:48,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:55:48,950.950 INFO    ] Checking for system updates...
[2026-06-05 22:55:48,998.998 INFO    ] 200
[2026-06-05 22:55:49,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:55:49,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:55:49,057.057 INFO    ] No update needed
[2026-06-05 22:55:49,060.060 INFO    ] Checking for camera pi updates...
[2026-06-05 22:55:49,099.099 INFO    ] 200
[2026-06-05 22:55:49,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:55:49,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:55:49,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:55:49,198.198 INFO    ] No camera update needed
[2026-06-05 22:55:49,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:55:49,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:55:49,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:55:49,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:55:51,259.259 INFO    ] ================================================
[2026-06-05 22:55:51,274.274 INFO    ] Launching Daemon at Fri Jun  5 22:55:51 IST 2026
[2026-06-05 22:55:51,284.284 INFO    ] ================================================
[2026-06-05 22:55:51,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:55:51
[2026-06-05 22:55:52,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:55:52,817.817 INFO    ] Initializing speech engine...
[2026-06-05 22:55:52,824.824 INFO    ] 2026-06-05 22:55:52
[2026-06-05 22:55:53,101.101 INFO    ] 2026-06-05 22:55:53
[2026-06-05 22:55:53,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:55:53,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:55:53,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:55:53,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:55:53,558.558 INFO    ] time= 05/06/2026 22:55:53
[2026-06-05 22:55:53,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:55:53,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:55:53,814.814 INFO    ] No existing commands found in stream
[2026-06-05 22:55:58,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:55:58,844.844 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 22:56:03,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:56:03,418.418 INFO    ] Checking for system updates...
[2026-06-05 22:56:03,463.463 INFO    ] 200
[2026-06-05 22:56:03,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:03,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:56:03,522.522 INFO    ] No update needed
[2026-06-05 22:56:03,525.525 INFO    ] Checking for camera pi updates...
[2026-06-05 22:56:03,567.567 INFO    ] 200
[2026-06-05 22:56:03,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:03,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:56:03,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:56:03,668.668 INFO    ] No camera update needed
[2026-06-05 22:56:03,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:56:03,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:56:03,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:56:03,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:56:05,726.726 INFO    ] ================================================
[2026-06-05 22:56:05,740.740 INFO    ] Launching Daemon at Fri Jun  5 22:56:05 IST 2026
[2026-06-05 22:56:05,751.751 INFO    ] ================================================
[2026-06-05 22:56:06,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:56:06
[2026-06-05 22:56:06,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:56:07,175.175 INFO    ] Initializing speech engine...
[2026-06-05 22:56:07,198.198 INFO    ] 2026-06-05 22:56:07
[2026-06-05 22:56:07,449.449 INFO    ] 2026-06-05 22:56:07
[2026-06-05 22:56:07,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:56:07,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:56:07,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:56:07,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:56:07,964.964 INFO    ] time= 05/06/2026 22:56:07
[2026-06-05 22:56:08,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:56:08,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:56:08,201.201 INFO    ] No existing commands found in stream
[2026-06-05 22:56:13,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:56:13,226.226 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 22:56:17,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:56:17,248.248 INFO    ] Checking for system updates...
[2026-06-05 22:56:17,284.284 INFO    ] 200
[2026-06-05 22:56:17,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:17,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:56:17,348.348 INFO    ] No update needed
[2026-06-05 22:56:17,350.350 INFO    ] Checking for camera pi updates...
[2026-06-05 22:56:17,384.384 INFO    ] 200
[2026-06-05 22:56:17,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:17,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:56:17,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:56:17,473.473 INFO    ] No camera update needed
[2026-06-05 22:56:17,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:56:17,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:56:17,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:56:17,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:56:19,530.530 INFO    ] ================================================
[2026-06-05 22:56:19,545.545 INFO    ] Launching Daemon at Fri Jun  5 22:56:19 IST 2026
[2026-06-05 22:56:19,556.556 INFO    ] ================================================
[2026-06-05 22:56:20,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:56:20
[2026-06-05 22:56:20,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:56:21,167.167 INFO    ] Initializing speech engine...
[2026-06-05 22:56:21,175.175 INFO    ] 2026-06-05 22:56:21
[2026-06-05 22:56:21,458.458 INFO    ] 2026-06-05 22:56:21
[2026-06-05 22:56:21,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:56:21,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:56:21,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:56:21,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:56:21,941.941 INFO    ] time= 05/06/2026 22:56:21
[2026-06-05 22:56:21,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:56:22,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:56:22,148.148 INFO    ] No existing commands found in stream
[2026-06-05 22:56:27,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:56:27,168.168 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-05 22:56:33,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:56:33,072.072 INFO    ] Checking for system updates...
[2026-06-05 22:56:33,111.111 INFO    ] 200
[2026-06-05 22:56:33,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:33,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:56:33,176.176 INFO    ] No update needed
[2026-06-05 22:56:33,179.179 INFO    ] Checking for camera pi updates...
[2026-06-05 22:56:33,221.221 INFO    ] 200
[2026-06-05 22:56:33,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:33,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:56:33,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:56:33,336.336 INFO    ] No camera update needed
[2026-06-05 22:56:33,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:56:33,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:56:33,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:56:33,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:56:35,393.393 INFO    ] ================================================
[2026-06-05 22:56:35,409.409 INFO    ] Launching Daemon at Fri Jun  5 22:56:35 IST 2026
[2026-06-05 22:56:35,420.420 INFO    ] ================================================
[2026-06-05 22:56:36,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:56:36
[2026-06-05 22:56:36,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:56:36,884.884 INFO    ] Initializing speech engine...
[2026-06-05 22:56:36,909.909 INFO    ] 2026-06-05 22:56:36
[2026-06-05 22:56:37,180.180 INFO    ] 2026-06-05 22:56:37
[2026-06-05 22:56:37,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:56:37,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:56:37,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:56:37,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:56:37,597.597 INFO    ] time= 05/06/2026 22:56:37
[2026-06-05 22:56:37,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:56:37,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:56:37,680.680 INFO    ] No existing commands found in stream
[2026-06-05 22:56:42,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:56:42,696.696 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-05 22:56:43,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:56:43,746.746 INFO    ] Checking for system updates...
[2026-06-05 22:56:43,783.783 INFO    ] 200
[2026-06-05 22:56:43,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:43,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:56:43,849.849 INFO    ] No update needed
[2026-06-05 22:56:43,852.852 INFO    ] Checking for camera pi updates...
[2026-06-05 22:56:43,887.887 INFO    ] 200
[2026-06-05 22:56:43,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:43,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:56:43,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:56:43,993.993 INFO    ] No camera update needed
[2026-06-05 22:56:43,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:56:43,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:56:44,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:56:44,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:56:46,053.053 INFO    ] ================================================
[2026-06-05 22:56:46,068.068 INFO    ] Launching Daemon at Fri Jun  5 22:56:46 IST 2026
[2026-06-05 22:56:46,080.080 INFO    ] ================================================
[2026-06-05 22:56:46,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:56:46
[2026-06-05 22:56:47,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:56:47,513.513 INFO    ] Initializing speech engine...
[2026-06-05 22:56:47,519.519 INFO    ] 2026-06-05 22:56:47
[2026-06-05 22:56:47,780.780 INFO    ] 2026-06-05 22:56:47
[2026-06-05 22:56:47,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:56:48,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:56:48,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:56:48,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:56:48,324.324 INFO    ] time= 05/06/2026 22:56:48
[2026-06-05 22:56:48,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:56:48,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:56:48,491.491 INFO    ] No existing commands found in stream
[2026-06-05 22:56:53,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:56:53,531.531 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-05 22:56:56,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:56:56,340.340 INFO    ] Checking for system updates...
[2026-06-05 22:56:56,376.376 INFO    ] 200
[2026-06-05 22:56:56,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:56,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:56:56,436.436 INFO    ] No update needed
[2026-06-05 22:56:56,438.438 INFO    ] Checking for camera pi updates...
[2026-06-05 22:56:56,472.472 INFO    ] 200
[2026-06-05 22:56:56,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:56:56,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:56:56,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:56:56,567.567 INFO    ] No camera update needed
[2026-06-05 22:56:56,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:56:56,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:56:56,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:56:56,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:56:58,625.625 INFO    ] ================================================
[2026-06-05 22:56:58,641.641 INFO    ] Launching Daemon at Fri Jun  5 22:56:58 IST 2026
[2026-06-05 22:56:58,653.653 INFO    ] ================================================
[2026-06-05 22:56:59,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:56:59
[2026-06-05 22:56:59,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:57:00,074.074 INFO    ] Initializing speech engine...
[2026-06-05 22:57:00,083.083 INFO    ] 2026-06-05 22:57:00
[2026-06-05 22:57:00,328.328 INFO    ] 2026-06-05 22:57:00
[2026-06-05 22:57:00,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:57:00,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:57:00,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:57:02,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:57:02,828.828 INFO    ] time= 05/06/2026 22:57:02
[2026-06-05 22:57:02,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:57:02,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:57:02,908.908 INFO    ] No existing commands found in stream
[2026-06-05 22:57:07,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:57:07,920.920 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 22:57:08,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:57:08,880.880 INFO    ] Checking for system updates...
[2026-06-05 22:57:08,916.916 INFO    ] 200
[2026-06-05 22:57:08,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:08,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:57:08,981.981 INFO    ] No update needed
[2026-06-05 22:57:08,983.983 INFO    ] Checking for camera pi updates...
[2026-06-05 22:57:09,017.017 INFO    ] 200
[2026-06-05 22:57:09,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:09,060.060 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:57:09,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:57:09,116.116 INFO    ] No camera update needed
[2026-06-05 22:57:09,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:57:09,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:57:09,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:57:09,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:57:11,174.174 INFO    ] ================================================
[2026-06-05 22:57:11,191.191 INFO    ] Launching Daemon at Fri Jun  5 22:57:11 IST 2026
[2026-06-05 22:57:11,202.202 INFO    ] ================================================
[2026-06-05 22:57:11,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:57:11
[2026-06-05 22:57:12,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:57:12,629.629 INFO    ] Initializing speech engine...
[2026-06-05 22:57:12,638.638 INFO    ] 2026-06-05 22:57:12
[2026-06-05 22:57:12,890.890 INFO    ] 2026-06-05 22:57:12
[2026-06-05 22:57:12,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:57:13,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:57:13,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:57:13,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:57:13,399.399 INFO    ] time= 05/06/2026 22:57:13
[2026-06-05 22:57:13,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:57:13,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:57:13,594.594 INFO    ] No existing commands found in stream
[2026-06-05 22:57:18,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:57:18,621.621 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-05 22:57:21,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:57:21,015.015 INFO    ] Checking for system updates...
[2026-06-05 22:57:21,051.051 INFO    ] 200
[2026-06-05 22:57:21,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:21,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:57:21,108.108 INFO    ] No update needed
[2026-06-05 22:57:21,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 22:57:21,145.145 INFO    ] 200
[2026-06-05 22:57:21,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:21,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:57:21,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:57:21,238.238 INFO    ] No camera update needed
[2026-06-05 22:57:21,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:57:21,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:57:21,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:57:21,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:57:23,296.296 INFO    ] ================================================
[2026-06-05 22:57:23,312.312 INFO    ] Launching Daemon at Fri Jun  5 22:57:23 IST 2026
[2026-06-05 22:57:23,323.323 INFO    ] ================================================
[2026-06-05 22:57:23,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:57:23
[2026-06-05 22:57:24,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:57:24,950.950 INFO    ] Initializing speech engine...
[2026-06-05 22:57:24,958.958 INFO    ] 2026-06-05 22:57:24
[2026-06-05 22:57:25,279.279 INFO    ] 2026-06-05 22:57:25
[2026-06-05 22:57:25,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:57:25,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:57:25,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:57:25,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:57:25,790.790 INFO    ] time= 05/06/2026 22:57:25
[2026-06-05 22:57:25,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:57:25,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:57:25,961.961 INFO    ] No existing commands found in stream
[2026-06-05 22:57:30,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:57:30,995.995 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-05 22:57:33,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:57:33,302.302 INFO    ] Checking for system updates...
[2026-06-05 22:57:33,342.342 INFO    ] 200
[2026-06-05 22:57:33,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:33,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:57:33,401.401 INFO    ] No update needed
[2026-06-05 22:57:33,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 22:57:33,437.437 INFO    ] 200
[2026-06-05 22:57:33,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:33,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:57:33,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:57:33,541.541 INFO    ] No camera update needed
[2026-06-05 22:57:33,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:57:33,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:57:33,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:57:33,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:57:35,597.597 INFO    ] ================================================
[2026-06-05 22:57:35,612.612 INFO    ] Launching Daemon at Fri Jun  5 22:57:35 IST 2026
[2026-06-05 22:57:35,624.624 INFO    ] ================================================
[2026-06-05 22:57:36,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:57:36
[2026-06-05 22:57:36,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:57:37,098.098 INFO    ] Initializing speech engine...
[2026-06-05 22:57:37,105.105 INFO    ] 2026-06-05 22:57:37
[2026-06-05 22:57:37,367.367 INFO    ] 2026-06-05 22:57:37
[2026-06-05 22:57:37,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:57:37,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:57:37,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:57:37,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:57:37,912.912 INFO    ] time= 05/06/2026 22:57:37
[2026-06-05 22:57:37,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:57:37,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:57:38,080.080 INFO    ] No existing commands found in stream
[2026-06-05 22:57:43,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:57:43,119.119 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 22:57:45,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:57:45,251.251 INFO    ] Checking for system updates...
[2026-06-05 22:57:45,289.289 INFO    ] 200
[2026-06-05 22:57:45,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:45,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:57:45,350.350 INFO    ] No update needed
[2026-06-05 22:57:45,353.353 INFO    ] Checking for camera pi updates...
[2026-06-05 22:57:45,391.391 INFO    ] 200
[2026-06-05 22:57:45,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:45,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:57:45,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:57:45,467.467 INFO    ] No camera update needed
[2026-06-05 22:57:45,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:57:45,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:57:45,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:57:45,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:57:47,523.523 INFO    ] ================================================
[2026-06-05 22:57:47,538.538 INFO    ] Launching Daemon at Fri Jun  5 22:57:47 IST 2026
[2026-06-05 22:57:47,549.549 INFO    ] ================================================
[2026-06-05 22:57:48,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:57:48
[2026-06-05 22:57:48,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:57:48,974.974 INFO    ] Initializing speech engine...
[2026-06-05 22:57:48,980.980 INFO    ] 2026-06-05 22:57:48
[2026-06-05 22:57:49,230.230 INFO    ] 2026-06-05 22:57:49
[2026-06-05 22:57:49,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:57:49,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:57:49,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:57:49,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:57:49,782.782 INFO    ] time= 05/06/2026 22:57:49
[2026-06-05 22:57:49,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:57:49,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:57:49,937.937 INFO    ] No existing commands found in stream
[2026-06-05 22:57:54,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:57:54,968.968 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 22:57:55,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:57:55,878.878 INFO    ] Checking for system updates...
[2026-06-05 22:57:55,914.914 INFO    ] 200
[2026-06-05 22:57:55,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:55,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:57:55,971.971 INFO    ] No update needed
[2026-06-05 22:57:55,974.974 INFO    ] Checking for camera pi updates...
[2026-06-05 22:57:56,007.007 INFO    ] 200
[2026-06-05 22:57:56,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:57:56,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:57:56,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:57:56,097.097 INFO    ] No camera update needed
[2026-06-05 22:57:56,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:57:56,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:57:56,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:57:56,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:57:58,152.152 INFO    ] ================================================
[2026-06-05 22:57:58,167.167 INFO    ] Launching Daemon at Fri Jun  5 22:57:58 IST 2026
[2026-06-05 22:57:58,178.178 INFO    ] ================================================
[2026-06-05 22:57:58,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:57:58
[2026-06-05 22:57:59,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:57:59,669.669 INFO    ] Initializing speech engine...
[2026-06-05 22:57:59,689.689 INFO    ] 2026-06-05 22:57:59
[2026-06-05 22:57:59,958.958 INFO    ] 2026-06-05 22:57:59
[2026-06-05 22:57:59,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:58:00,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:58:00,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:58:00,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:58:00,364.364 INFO    ] time= 05/06/2026 22:58:00
[2026-06-05 22:58:00,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:58:00,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:58:00,455.455 INFO    ] No existing commands found in stream
[2026-06-05 22:58:05,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:58:05,493.493 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-05 22:58:09,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 22:58:09,413.413 INFO    ] Checking for system updates...
[2026-06-05 22:58:09,449.449 INFO    ] 200
[2026-06-05 22:58:09,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:58:09,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:58:09,507.507 INFO    ] No update needed
[2026-06-05 22:58:09,509.509 INFO    ] Checking for camera pi updates...
[2026-06-05 22:58:09,543.543 INFO    ] 200
[2026-06-05 22:58:09,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:58:09,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:58:09,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:58:09,640.640 INFO    ] No camera update needed
[2026-06-05 22:58:09,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:58:09,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:58:09,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:58:09,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:58:11,694.694 INFO    ] ================================================
[2026-06-05 22:58:11,709.709 INFO    ] Launching Daemon at Fri Jun  5 22:58:11 IST 2026
[2026-06-05 22:58:11,719.719 INFO    ] ================================================
[2026-06-05 22:58:12,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:58:12
[2026-06-05 22:58:12,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:58:13,237.237 INFO    ] Initializing speech engine...
[2026-06-05 22:58:13,251.251 INFO    ] 2026-06-05 22:58:13
[2026-06-05 22:58:13,562.562 INFO    ] 2026-06-05 22:58:13
[2026-06-05 22:58:13,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:58:13,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:58:13,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:58:14,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:58:14,070.070 INFO    ] time= 05/06/2026 22:58:14
[2026-06-05 22:58:14,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:58:14,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:58:14,226.226 INFO    ] No existing commands found in stream
[2026-06-05 22:58:19,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:58:19,259.259 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-05 22:58:21,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 22:58:21,044.044 INFO    ] Checking for system updates...
[2026-06-05 22:58:21,082.082 INFO    ] 200
[2026-06-05 22:58:21,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:58:21,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:58:21,147.147 INFO    ] No update needed
[2026-06-05 22:58:21,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 22:58:21,184.184 INFO    ] 200
[2026-06-05 22:58:21,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:58:21,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:58:21,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:58:21,281.281 INFO    ] No camera update needed
[2026-06-05 22:58:21,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:58:21,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:58:21,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:58:21,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:58:23,336.336 INFO    ] ================================================
[2026-06-05 22:58:23,351.351 INFO    ] Launching Daemon at Fri Jun  5 22:58:23 IST 2026
[2026-06-05 22:58:23,363.363 INFO    ] ================================================
[2026-06-05 22:58:24,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:58:23
[2026-06-05 22:58:24,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:58:24,979.979 INFO    ] Initializing speech engine...
[2026-06-05 22:58:24,985.985 INFO    ] 2026-06-05 22:58:24
[2026-06-05 22:58:25,272.272 INFO    ] 2026-06-05 22:58:25
[2026-06-05 22:58:25,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:58:25,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:58:25,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:58:25,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:58:25,831.831 INFO    ] time= 05/06/2026 22:58:25
[2026-06-05 22:58:25,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:58:25,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:58:25,975.975 INFO    ] No existing commands found in stream
[2026-06-05 22:58:30,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:58:31,000.000 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-05 22:58:33,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 22:58:33,334.334 INFO    ] Checking for system updates...
[2026-06-05 22:58:33,370.370 INFO    ] 200
[2026-06-05 22:58:33,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:58:33,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:58:33,435.435 INFO    ] No update needed
[2026-06-05 22:58:33,437.437 INFO    ] Checking for camera pi updates...
[2026-06-05 22:58:33,471.471 INFO    ] 200
[2026-06-05 22:58:33,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:58:33,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:58:33,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:58:33,662.662 INFO    ] No camera update needed
[2026-06-05 22:58:33,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:58:33,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:58:33,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:58:33,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:58:35,717.717 INFO    ] ================================================
[2026-06-05 22:58:35,732.732 INFO    ] Launching Daemon at Fri Jun  5 22:58:35 IST 2026
[2026-06-05 22:58:35,743.743 INFO    ] ================================================
[2026-06-05 22:58:36,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:58:36
[2026-06-05 22:58:36,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:58:37,186.186 INFO    ] Initializing speech engine...
[2026-06-05 22:58:37,210.210 INFO    ] 2026-06-05 22:58:37
[2026-06-05 22:58:37,482.482 INFO    ] 2026-06-05 22:58:37
[2026-06-05 22:58:37,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:58:37,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:58:37,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:58:37,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:58:38,007.007 INFO    ] time= 05/06/2026 22:58:37
[2026-06-05 22:58:38,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:58:38,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:58:38,227.227 INFO    ] No existing commands found in stream
[2026-06-05 22:58:43,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:58:43,257.257 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-05 22:58:47,448.448 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:58:47,450.450 INFO    ] Checking for system updates...
[2026-06-05 22:58:47,490.490 INFO    ] 200
[2026-06-05 22:58:47,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:58:47,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:58:47,548.548 INFO    ] No update needed
[2026-06-05 22:58:47,550.550 INFO    ] Checking for camera pi updates...
[2026-06-05 22:58:47,584.584 INFO    ] 200
[2026-06-05 22:58:47,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:58:47,628.628 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:58:47,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:58:47,682.682 INFO    ] No camera update needed
[2026-06-05 22:58:47,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:58:47,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:58:47,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:58:47,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:58:49,740.740 INFO    ] ================================================
[2026-06-05 22:58:49,755.755 INFO    ] Launching Daemon at Fri Jun  5 22:58:49 IST 2026
[2026-06-05 22:58:49,770.770 INFO    ] ================================================
[2026-06-05 22:58:50,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:58:50
[2026-06-05 22:58:50,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:58:51,217.217 INFO    ] Initializing speech engine...
[2026-06-05 22:58:51,230.230 INFO    ] 2026-06-05 22:58:51
[2026-06-05 22:58:51,517.517 INFO    ] 2026-06-05 22:58:51
[2026-06-05 22:58:51,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:58:51,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:58:51,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:58:51,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:58:51,936.936 INFO    ] time= 05/06/2026 22:58:51
[2026-06-05 22:58:51,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:58:52,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:58:52,123.123 INFO    ] No existing commands found in stream
[2026-06-05 22:58:57,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:58:57,157.157 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-05 22:59:00,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:59:00,644.644 INFO    ] Checking for system updates...
[2026-06-05 22:59:00,681.681 INFO    ] 200
[2026-06-05 22:59:00,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:00,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:59:00,740.740 INFO    ] No update needed
[2026-06-05 22:59:00,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 22:59:00,780.780 INFO    ] 200
[2026-06-05 22:59:00,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:00,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:59:00,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:59:00,888.888 INFO    ] No camera update needed
[2026-06-05 22:59:00,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:59:00,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:59:00,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:59:00,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:59:02,944.944 INFO    ] ================================================
[2026-06-05 22:59:02,959.959 INFO    ] Launching Daemon at Fri Jun  5 22:59:02 IST 2026
[2026-06-05 22:59:02,970.970 INFO    ] ================================================
[2026-06-05 22:59:03,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:59:03
[2026-06-05 22:59:04,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:59:04,483.483 INFO    ] Initializing speech engine...
[2026-06-05 22:59:04,492.492 INFO    ] 2026-06-05 22:59:04
[2026-06-05 22:59:04,768.768 INFO    ] 2026-06-05 22:59:04
[2026-06-05 22:59:04,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:59:04,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:59:05,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:59:05,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:59:05,161.161 INFO    ] time= 05/06/2026 22:59:05
[2026-06-05 22:59:05,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:59:05,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:59:05,354.354 INFO    ] No existing commands found in stream
[2026-06-05 22:59:10,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:59:10,368.368 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 22:59:12,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 22:59:12,060.060 INFO    ] Checking for system updates...
[2026-06-05 22:59:12,101.101 INFO    ] 200
[2026-06-05 22:59:12,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:12,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:59:12,159.159 INFO    ] No update needed
[2026-06-05 22:59:12,161.161 INFO    ] Checking for camera pi updates...
[2026-06-05 22:59:12,196.196 INFO    ] 200
[2026-06-05 22:59:12,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:12,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:59:12,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:59:12,297.297 INFO    ] No camera update needed
[2026-06-05 22:59:12,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:59:12,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:59:12,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:59:12,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:59:14,353.353 INFO    ] ================================================
[2026-06-05 22:59:14,368.368 INFO    ] Launching Daemon at Fri Jun  5 22:59:14 IST 2026
[2026-06-05 22:59:14,380.380 INFO    ] ================================================
[2026-06-05 22:59:15,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:59:15
[2026-06-05 22:59:15,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:59:15,906.906 INFO    ] Initializing speech engine...
[2026-06-05 22:59:15,915.915 INFO    ] 2026-06-05 22:59:15
[2026-06-05 22:59:16,164.164 INFO    ] 2026-06-05 22:59:16
[2026-06-05 22:59:16,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:59:16,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:59:16,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:59:16,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:59:16,722.722 INFO    ] time= 05/06/2026 22:59:16
[2026-06-05 22:59:16,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:59:16,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:59:16,878.878 INFO    ] No existing commands found in stream
[2026-06-05 22:59:21,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:59:21,896.896 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-05 22:59:23,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:59:23,779.779 INFO    ] Checking for system updates...
[2026-06-05 22:59:23,815.815 INFO    ] 200
[2026-06-05 22:59:23,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:23,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:59:23,873.873 INFO    ] No update needed
[2026-06-05 22:59:23,875.875 INFO    ] Checking for camera pi updates...
[2026-06-05 22:59:23,916.916 INFO    ] 200
[2026-06-05 22:59:23,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:23,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:59:24,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:59:24,014.014 INFO    ] No camera update needed
[2026-06-05 22:59:24,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:59:24,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:59:24,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:59:24,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:59:26,069.069 INFO    ] ================================================
[2026-06-05 22:59:26,085.085 INFO    ] Launching Daemon at Fri Jun  5 22:59:26 IST 2026
[2026-06-05 22:59:26,096.096 INFO    ] ================================================
[2026-06-05 22:59:26,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:59:26
[2026-06-05 22:59:27,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:59:27,511.511 INFO    ] Initializing speech engine...
[2026-06-05 22:59:27,518.518 INFO    ] 2026-06-05 22:59:27
[2026-06-05 22:59:27,793.793 INFO    ] 2026-06-05 22:59:27
[2026-06-05 22:59:27,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:59:28,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:59:28,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:59:28,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:59:28,255.255 INFO    ] time= 05/06/2026 22:59:28
[2026-06-05 22:59:28,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:59:28,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:59:28,522.522 INFO    ] No existing commands found in stream
[2026-06-05 22:59:33,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:59:33,537.537 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 22:59:34,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 22:59:34,943.943 INFO    ] Checking for system updates...
[2026-06-05 22:59:34,980.980 INFO    ] 200
[2026-06-05 22:59:34,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:35,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:59:35,056.056 INFO    ] No update needed
[2026-06-05 22:59:35,058.058 INFO    ] Checking for camera pi updates...
[2026-06-05 22:59:35,096.096 INFO    ] 200
[2026-06-05 22:59:35,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:35,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:59:35,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 22:59:35,200.200 INFO    ] No camera update needed
[2026-06-05 22:59:35,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:59:35,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:59:35,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:59:35,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:59:37,257.257 INFO    ] ================================================
[2026-06-05 22:59:37,272.272 INFO    ] Launching Daemon at Fri Jun  5 22:59:37 IST 2026
[2026-06-05 22:59:37,283.283 INFO    ] ================================================
[2026-06-05 22:59:37,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:59:37
[2026-06-05 22:59:38,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:59:38,960.960 INFO    ] Initializing speech engine...
[2026-06-05 22:59:38,967.967 INFO    ] 2026-06-05 22:59:38
[2026-06-05 22:59:39,263.263 INFO    ] 2026-06-05 22:59:39
[2026-06-05 22:59:39,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:59:39,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:59:39,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:59:39,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:59:39,812.812 INFO    ] time= 05/06/2026 22:59:39
[2026-06-05 22:59:39,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:59:39,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:59:39,958.958 INFO    ] No existing commands found in stream
[2026-06-05 22:59:44,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:59:44,988.988 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-05 22:59:48,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 22:59:48,069.069 INFO    ] Checking for system updates...
[2026-06-05 22:59:48,111.111 INFO    ] 200
[2026-06-05 22:59:48,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:48,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:59:48,178.178 INFO    ] No update needed
[2026-06-05 22:59:48,180.180 INFO    ] Checking for camera pi updates...
[2026-06-05 22:59:48,215.215 INFO    ] 200
[2026-06-05 22:59:48,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 22:59:48,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 22:59:48,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 22:59:48,308.308 INFO    ] No camera update needed
[2026-06-05 22:59:48,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-05 22:59:48,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 22:59:48,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 22:59:48,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 22:59:50,364.364 INFO    ] ================================================
[2026-06-05 22:59:50,380.380 INFO    ] Launching Daemon at Fri Jun  5 22:59:50 IST 2026
[2026-06-05 22:59:50,391.391 INFO    ] ================================================
[2026-06-05 22:59:51,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 22:59:51
[2026-06-05 22:59:51,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 22:59:52,077.077 INFO    ] Initializing speech engine...
[2026-06-05 22:59:52,083.083 INFO    ] 2026-06-05 22:59:52
[2026-06-05 22:59:52,366.366 INFO    ] 2026-06-05 22:59:52
[2026-06-05 22:59:52,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 22:59:52,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 22:59:52,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 22:59:53,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 22:59:53,108.108 INFO    ] time= 05/06/2026 22:59:53
[2026-06-05 22:59:53,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 22:59:53,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-05 22:59:53,370.370 INFO    ] No existing commands found in stream
[2026-06-05 22:59:58,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 22:59:58,392.392 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-05 23:00:00,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:00:00,825.825 INFO    ] Checking for system updates...
[2026-06-05 23:00:00,867.867 INFO    ] 200
[2026-06-05 23:00:00,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:00,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:00:00,925.925 INFO    ] No update needed
[2026-06-05 23:00:00,928.928 INFO    ] Checking for camera pi updates...
[2026-06-05 23:00:00,961.961 INFO    ] 200
[2026-06-05 23:00:00,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:01,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:00:01,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:00:01,057.057 INFO    ] No camera update needed
[2026-06-05 23:00:01,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:00:01,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:00:01,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:00:01,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:00:03,198.198 INFO    ] ================================================
[2026-06-05 23:00:03,238.238 INFO    ] Launching Daemon at Fri Jun  5 23:00:03 IST 2026
[2026-06-05 23:00:03,298.298 INFO    ] ================================================
[2026-06-05 23:00:04,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:00:04
[2026-06-05 23:00:06,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:00:06,611.611 INFO    ] Initializing speech engine...
[2026-06-05 23:00:06,624.624 INFO    ] 2026-06-05 23:00:06
[2026-06-05 23:00:06,921.921 INFO    ] 2026-06-05 23:00:06
[2026-06-05 23:00:06,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:00:07,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:00:07,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:00:07,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:00:07,458.458 INFO    ] time= 05/06/2026 23:00:07
[2026-06-05 23:00:07,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:00:07,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:00:07,689.689 INFO    ] No existing commands found in stream
[2026-06-05 23:00:12,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:00:12,716.716 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 23:00:15,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:00:15,311.311 INFO    ] Checking for system updates...
[2026-06-05 23:00:15,348.348 INFO    ] 200
[2026-06-05 23:00:15,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:15,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:00:15,405.405 INFO    ] No update needed
[2026-06-05 23:00:15,408.408 INFO    ] Checking for camera pi updates...
[2026-06-05 23:00:15,445.445 INFO    ] 200
[2026-06-05 23:00:15,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:15,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:00:15,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:00:15,551.551 INFO    ] No camera update needed
[2026-06-05 23:00:15,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:00:15,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:00:15,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:00:15,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:00:17,607.607 INFO    ] ================================================
[2026-06-05 23:00:17,622.622 INFO    ] Launching Daemon at Fri Jun  5 23:00:17 IST 2026
[2026-06-05 23:00:17,633.633 INFO    ] ================================================
[2026-06-05 23:00:18,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:00:18
[2026-06-05 23:00:18,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:00:19,050.050 INFO    ] Initializing speech engine...
[2026-06-05 23:00:19,063.063 INFO    ] 2026-06-05 23:00:19
[2026-06-05 23:00:19,329.329 INFO    ] 2026-06-05 23:00:19
[2026-06-05 23:00:19,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:00:19,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:00:19,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:00:19,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:00:19,813.813 INFO    ] time= 05/06/2026 23:00:19
[2026-06-05 23:00:19,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:00:19,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:00:20,052.052 INFO    ] No existing commands found in stream
[2026-06-05 23:00:25,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:00:25,070.070 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-05 23:00:29,033.033 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:00:29,036.036 INFO    ] Checking for system updates...
[2026-06-05 23:00:29,071.071 INFO    ] 200
[2026-06-05 23:00:29,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:29,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:00:29,129.129 INFO    ] No update needed
[2026-06-05 23:00:29,132.132 INFO    ] Checking for camera pi updates...
[2026-06-05 23:00:29,169.169 INFO    ] 200
[2026-06-05 23:00:29,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:29,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:00:29,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:00:29,265.265 INFO    ] No camera update needed
[2026-06-05 23:00:29,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:00:29,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:00:29,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:00:29,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:00:31,321.321 INFO    ] ================================================
[2026-06-05 23:00:31,337.337 INFO    ] Launching Daemon at Fri Jun  5 23:00:31 IST 2026
[2026-06-05 23:00:31,348.348 INFO    ] ================================================
[2026-06-05 23:00:31,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:00:31
[2026-06-05 23:00:32,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:00:32,811.811 INFO    ] Initializing speech engine...
[2026-06-05 23:00:32,820.820 INFO    ] 2026-06-05 23:00:32
[2026-06-05 23:00:33,129.129 INFO    ] 2026-06-05 23:00:33
[2026-06-05 23:00:33,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:00:33,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:00:33,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:00:33,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:00:33,627.627 INFO    ] time= 05/06/2026 23:00:33
[2026-06-05 23:00:33,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:00:33,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:00:33,752.752 INFO    ] No existing commands found in stream
[2026-06-05 23:00:38,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:00:38,770.770 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-05 23:00:41,233.233 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:00:41,236.236 INFO    ] Checking for system updates...
[2026-06-05 23:00:41,275.275 INFO    ] 200
[2026-06-05 23:00:41,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:41,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:00:41,333.333 INFO    ] No update needed
[2026-06-05 23:00:41,336.336 INFO    ] Checking for camera pi updates...
[2026-06-05 23:00:41,373.373 INFO    ] 200
[2026-06-05 23:00:41,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:41,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:00:41,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:00:41,562.562 INFO    ] No camera update needed
[2026-06-05 23:00:41,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:00:41,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:00:41,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:00:41,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:00:43,620.620 INFO    ] ================================================
[2026-06-05 23:00:43,639.639 INFO    ] Launching Daemon at Fri Jun  5 23:00:43 IST 2026
[2026-06-05 23:00:43,652.652 INFO    ] ================================================
[2026-06-05 23:00:44,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:00:44
[2026-06-05 23:00:44,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:00:45,163.163 INFO    ] Initializing speech engine...
[2026-06-05 23:00:45,172.172 INFO    ] 2026-06-05 23:00:45
[2026-06-05 23:00:45,430.430 INFO    ] 2026-06-05 23:00:45
[2026-06-05 23:00:45,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:00:45,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:00:45,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:00:45,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:00:45,938.938 INFO    ] time= 05/06/2026 23:00:45
[2026-06-05 23:00:45,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:00:46,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:00:46,142.142 INFO    ] No existing commands found in stream
[2026-06-05 23:00:51,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:00:51,171.171 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 23:00:51,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:00:51,825.825 INFO    ] Checking for system updates...
[2026-06-05 23:00:51,871.871 INFO    ] 200
[2026-06-05 23:00:51,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:51,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:00:51,940.940 INFO    ] No update needed
[2026-06-05 23:00:51,947.947 INFO    ] Checking for camera pi updates...
[2026-06-05 23:00:51,983.983 INFO    ] 200
[2026-06-05 23:00:51,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:00:52,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:00:52,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:00:52,087.087 INFO    ] No camera update needed
[2026-06-05 23:00:52,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:00:52,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:00:52,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:00:52,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:00:54,148.148 INFO    ] ================================================
[2026-06-05 23:00:54,164.164 INFO    ] Launching Daemon at Fri Jun  5 23:00:54 IST 2026
[2026-06-05 23:00:54,175.175 INFO    ] ================================================
[2026-06-05 23:00:54,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:00:54
[2026-06-05 23:00:55,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:00:55,843.843 INFO    ] Initializing speech engine...
[2026-06-05 23:00:55,856.856 INFO    ] 2026-06-05 23:00:55
[2026-06-05 23:00:56,112.112 INFO    ] 2026-06-05 23:00:56
[2026-06-05 23:00:56,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:00:56,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:00:56,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:00:56,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:00:56,588.588 INFO    ] time= 05/06/2026 23:00:56
[2026-06-05 23:00:56,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:00:56,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:00:56,818.818 INFO    ] No existing commands found in stream
[2026-06-05 23:01:01,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:01:01,841.841 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 23:01:03,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:01:03,571.571 INFO    ] Checking for system updates...
[2026-06-05 23:01:03,612.612 INFO    ] 200
[2026-06-05 23:01:03,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:03,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:03,676.676 INFO    ] No update needed
[2026-06-05 23:01:03,678.678 INFO    ] Checking for camera pi updates...
[2026-06-05 23:01:03,716.716 INFO    ] 200
[2026-06-05 23:01:03,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:03,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:01:03,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:03,815.815 INFO    ] No camera update needed
[2026-06-05 23:01:03,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:01:03,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:01:03,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:01:03,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:01:05,871.871 INFO    ] ================================================
[2026-06-05 23:01:05,887.887 INFO    ] Launching Daemon at Fri Jun  5 23:01:05 IST 2026
[2026-06-05 23:01:05,898.898 INFO    ] ================================================
[2026-06-05 23:01:06,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:01:06
[2026-06-05 23:01:07,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:01:07,354.354 INFO    ] Initializing speech engine...
[2026-06-05 23:01:07,359.359 INFO    ] 2026-06-05 23:01:07
[2026-06-05 23:01:07,611.611 INFO    ] 2026-06-05 23:01:07
[2026-06-05 23:01:07,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:01:07,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:01:07,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:01:08,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:01:08,122.122 INFO    ] time= 05/06/2026 23:01:08
[2026-06-05 23:01:08,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:01:08,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:01:08,306.306 INFO    ] No existing commands found in stream
[2026-06-05 23:01:13,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:01:13,334.334 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-05 23:01:17,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:01:17,646.646 INFO    ] Checking for system updates...
[2026-06-05 23:01:17,683.683 INFO    ] 200
[2026-06-05 23:01:17,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:17,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:17,750.750 INFO    ] No update needed
[2026-06-05 23:01:17,752.752 INFO    ] Checking for camera pi updates...
[2026-06-05 23:01:17,792.792 INFO    ] 200
[2026-06-05 23:01:17,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:17,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:01:17,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:17,893.893 INFO    ] No camera update needed
[2026-06-05 23:01:17,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:01:17,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:01:17,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:01:17,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:01:19,950.950 INFO    ] ================================================
[2026-06-05 23:01:19,966.966 INFO    ] Launching Daemon at Fri Jun  5 23:01:19 IST 2026
[2026-06-05 23:01:19,977.977 INFO    ] ================================================
[2026-06-05 23:01:20,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:01:20
[2026-06-05 23:01:21,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:01:21,530.530 INFO    ] Initializing speech engine...
[2026-06-05 23:01:21,542.542 INFO    ] 2026-06-05 23:01:21
[2026-06-05 23:01:21,818.818 INFO    ] 2026-06-05 23:01:21
[2026-06-05 23:01:21,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:01:22,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:01:22,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:01:22,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:01:22,383.383 INFO    ] time= 05/06/2026 23:01:22
[2026-06-05 23:01:22,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:01:22,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:01:22,527.527 INFO    ] No existing commands found in stream
[2026-06-05 23:01:27,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:01:27,557.557 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-05 23:01:29,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:01:29,299.299 INFO    ] Checking for system updates...
[2026-06-05 23:01:29,342.342 INFO    ] 200
[2026-06-05 23:01:29,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:29,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:29,410.410 INFO    ] No update needed
[2026-06-05 23:01:29,415.415 INFO    ] Checking for camera pi updates...
[2026-06-05 23:01:29,453.453 INFO    ] 200
[2026-06-05 23:01:29,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:29,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:01:29,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:29,555.555 INFO    ] No camera update needed
[2026-06-05 23:01:29,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:01:29,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:01:29,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:01:29,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:01:31,616.616 INFO    ] ================================================
[2026-06-05 23:01:31,632.632 INFO    ] Launching Daemon at Fri Jun  5 23:01:31 IST 2026
[2026-06-05 23:01:31,644.644 INFO    ] ================================================
[2026-06-05 23:01:32,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:01:32
[2026-06-05 23:01:32,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:01:33,125.125 INFO    ] Initializing speech engine...
[2026-06-05 23:01:33,138.138 INFO    ] 2026-06-05 23:01:33
[2026-06-05 23:01:33,441.441 INFO    ] 2026-06-05 23:01:33
[2026-06-05 23:01:33,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:01:33,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:01:33,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:01:33,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:01:33,956.956 INFO    ] time= 05/06/2026 23:01:33
[2026-06-05 23:01:34,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:01:34,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:01:34,154.154 INFO    ] No existing commands found in stream
[2026-06-05 23:01:39,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:01:39,169.169 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 23:01:42,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:01:42,671.671 INFO    ] Checking for system updates...
[2026-06-05 23:01:42,713.713 INFO    ] 200
[2026-06-05 23:01:42,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:42,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:42,780.780 INFO    ] No update needed
[2026-06-05 23:01:42,782.782 INFO    ] Checking for camera pi updates...
[2026-06-05 23:01:42,821.821 INFO    ] 200
[2026-06-05 23:01:42,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:42,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:01:42,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:42,924.924 INFO    ] No camera update needed
[2026-06-05 23:01:42,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:01:42,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:01:42,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:01:42,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:01:44,979.979 INFO    ] ================================================
[2026-06-05 23:01:45,994.994 INFO    ] Launching Daemon at Fri Jun  5 23:01:44 IST 2026
[2026-06-05 23:01:45,006.006 INFO    ] ================================================
[2026-06-05 23:01:45,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:01:45
[2026-06-05 23:01:46,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:01:46,633.633 INFO    ] Initializing speech engine...
[2026-06-05 23:01:46,639.639 INFO    ] 2026-06-05 23:01:46
[2026-06-05 23:01:46,889.889 INFO    ] 2026-06-05 23:01:46
[2026-06-05 23:01:46,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:01:47,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:01:47,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:01:47,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:01:47,447.447 INFO    ] time= 05/06/2026 23:01:47
[2026-06-05 23:01:47,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:01:47,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:01:47,587.587 INFO    ] No existing commands found in stream
[2026-06-05 23:01:52,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:01:52,615.615 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 23:01:53,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:01:53,234.234 INFO    ] Checking for system updates...
[2026-06-05 23:01:53,270.270 INFO    ] 200
[2026-06-05 23:01:53,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:53,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:53,329.329 INFO    ] No update needed
[2026-06-05 23:01:53,331.331 INFO    ] Checking for camera pi updates...
[2026-06-05 23:01:53,365.365 INFO    ] 200
[2026-06-05 23:01:53,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:01:53,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:01:53,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:01:53,462.462 INFO    ] No camera update needed
[2026-06-05 23:01:53,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:01:53,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:01:53,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:01:53,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:01:55,519.519 INFO    ] ================================================
[2026-06-05 23:01:55,534.534 INFO    ] Launching Daemon at Fri Jun  5 23:01:55 IST 2026
[2026-06-05 23:01:55,544.544 INFO    ] ================================================
[2026-06-05 23:01:56,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:01:56
[2026-06-05 23:01:56,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:01:57,055.055 INFO    ] Initializing speech engine...
[2026-06-05 23:01:57,063.063 INFO    ] 2026-06-05 23:01:57
[2026-06-05 23:01:57,346.346 INFO    ] 2026-06-05 23:01:57
[2026-06-05 23:01:57,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:01:57,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:01:57,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:01:57,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:01:57,993.993 INFO    ] time= 05/06/2026 23:01:57
[2026-06-05 23:01:58,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:01:58,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:01:58,232.232 INFO    ] No existing commands found in stream
[2026-06-05 23:02:03,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:02:03,262.262 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 23:02:05,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:02:05,821.821 INFO    ] Checking for system updates...
[2026-06-05 23:02:05,860.860 INFO    ] 200
[2026-06-05 23:02:05,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:05,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:02:05,925.925 INFO    ] No update needed
[2026-06-05 23:02:05,927.927 INFO    ] Checking for camera pi updates...
[2026-06-05 23:02:05,962.962 INFO    ] 200
[2026-06-05 23:02:05,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:06,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:02:06,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:02:06,148.148 INFO    ] No camera update needed
[2026-06-05 23:02:06,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:02:06,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:02:06,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:02:06,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:02:08,203.203 INFO    ] ================================================
[2026-06-05 23:02:08,218.218 INFO    ] Launching Daemon at Fri Jun  5 23:02:08 IST 2026
[2026-06-05 23:02:08,229.229 INFO    ] ================================================
[2026-06-05 23:02:08,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:02:08
[2026-06-05 23:02:09,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:02:09,833.833 INFO    ] Initializing speech engine...
[2026-06-05 23:02:09,847.847 INFO    ] 2026-06-05 23:02:09
[2026-06-05 23:02:10,127.127 INFO    ] 2026-06-05 23:02:10
[2026-06-05 23:02:10,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:02:10,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:02:10,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:02:10,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:02:10,679.679 INFO    ] time= 05/06/2026 23:02:10
[2026-06-05 23:02:10,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:02:10,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:02:10,839.839 INFO    ] No existing commands found in stream
[2026-06-05 23:02:15,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:02:15,861.861 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 23:02:16,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:02:16,599.599 INFO    ] Checking for system updates...
[2026-06-05 23:02:16,636.636 INFO    ] 200
[2026-06-05 23:02:16,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:16,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:02:16,694.694 INFO    ] No update needed
[2026-06-05 23:02:16,696.696 INFO    ] Checking for camera pi updates...
[2026-06-05 23:02:16,740.740 INFO    ] 200
[2026-06-05 23:02:16,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:16,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:02:16,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:02:16,831.831 INFO    ] No camera update needed
[2026-06-05 23:02:16,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:02:16,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:02:16,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:02:16,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:02:18,886.886 INFO    ] ================================================
[2026-06-05 23:02:18,901.901 INFO    ] Launching Daemon at Fri Jun  5 23:02:18 IST 2026
[2026-06-05 23:02:18,912.912 INFO    ] ================================================
[2026-06-05 23:02:19,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:02:19
[2026-06-05 23:02:20,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:02:20,353.353 INFO    ] Initializing speech engine...
[2026-06-05 23:02:20,360.360 INFO    ] 2026-06-05 23:02:20
[2026-06-05 23:02:20,636.636 INFO    ] 2026-06-05 23:02:20
[2026-06-05 23:02:20,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:02:20,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:02:20,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:02:21,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:02:21,166.166 INFO    ] time= 05/06/2026 23:02:21
[2026-06-05 23:02:21,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:02:21,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:02:21,371.371 INFO    ] No existing commands found in stream
[2026-06-05 23:02:26,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:02:26,390.390 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 23:02:29,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:02:29,379.379 INFO    ] Checking for system updates...
[2026-06-05 23:02:29,420.420 INFO    ] 200
[2026-06-05 23:02:29,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:29,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:02:29,478.478 INFO    ] No update needed
[2026-06-05 23:02:29,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 23:02:29,515.515 INFO    ] 200
[2026-06-05 23:02:29,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:29,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:02:29,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:02:29,618.618 INFO    ] No camera update needed
[2026-06-05 23:02:29,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:02:29,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:02:29,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:02:29,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:02:31,672.672 INFO    ] ================================================
[2026-06-05 23:02:31,688.688 INFO    ] Launching Daemon at Fri Jun  5 23:02:31 IST 2026
[2026-06-05 23:02:31,699.699 INFO    ] ================================================
[2026-06-05 23:02:32,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:02:32
[2026-06-05 23:02:32,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:02:33,191.191 INFO    ] Initializing speech engine...
[2026-06-05 23:02:33,199.199 INFO    ] 2026-06-05 23:02:33
[2026-06-05 23:02:33,498.498 INFO    ] 2026-06-05 23:02:33
[2026-06-05 23:02:33,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:02:33,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:02:33,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:02:33,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:02:33,932.932 INFO    ] time= 05/06/2026 23:02:33
[2026-06-05 23:02:33,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:02:33,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:02:34,018.018 INFO    ] No existing commands found in stream
[2026-06-05 23:02:39,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:02:39,034.034 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-05 23:02:42,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:02:42,585.585 INFO    ] Checking for system updates...
[2026-06-05 23:02:42,625.625 INFO    ] 200
[2026-06-05 23:02:42,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:42,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:02:42,683.683 INFO    ] No update needed
[2026-06-05 23:02:42,685.685 INFO    ] Checking for camera pi updates...
[2026-06-05 23:02:42,723.723 INFO    ] 200
[2026-06-05 23:02:42,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:42,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:02:42,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:02:42,816.816 INFO    ] No camera update needed
[2026-06-05 23:02:42,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:02:42,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:02:42,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:02:42,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:02:44,872.872 INFO    ] ================================================
[2026-06-05 23:02:44,887.887 INFO    ] Launching Daemon at Fri Jun  5 23:02:44 IST 2026
[2026-06-05 23:02:44,898.898 INFO    ] ================================================
[2026-06-05 23:02:45,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:02:45
[2026-06-05 23:02:46,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:02:46,366.366 INFO    ] Initializing speech engine...
[2026-06-05 23:02:46,374.374 INFO    ] 2026-06-05 23:02:46
[2026-06-05 23:02:46,626.626 INFO    ] 2026-06-05 23:02:46
[2026-06-05 23:02:46,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:02:46,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:02:46,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:02:47,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:02:47,074.074 INFO    ] time= 05/06/2026 23:02:47
[2026-06-05 23:02:47,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:02:47,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:02:47,347.347 INFO    ] No existing commands found in stream
[2026-06-05 23:02:52,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:02:52,371.371 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-05 23:02:54,003.003 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:02:54,006.006 INFO    ] Checking for system updates...
[2026-06-05 23:02:54,047.047 INFO    ] 200
[2026-06-05 23:02:54,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:54,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:02:54,111.111 INFO    ] No update needed
[2026-06-05 23:02:54,113.113 INFO    ] Checking for camera pi updates...
[2026-06-05 23:02:54,147.147 INFO    ] 200
[2026-06-05 23:02:54,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:02:54,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:02:54,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:02:54,350.350 INFO    ] No camera update needed
[2026-06-05 23:02:54,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:02:54,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:02:54,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:02:54,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:02:56,405.405 INFO    ] ================================================
[2026-06-05 23:02:56,422.422 INFO    ] Launching Daemon at Fri Jun  5 23:02:56 IST 2026
[2026-06-05 23:02:56,433.433 INFO    ] ================================================
[2026-06-05 23:02:57,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:02:57
[2026-06-05 23:02:57,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:02:57,910.910 INFO    ] Initializing speech engine...
[2026-06-05 23:02:57,934.934 INFO    ] 2026-06-05 23:02:57
[2026-06-05 23:02:58,210.210 INFO    ] 2026-06-05 23:02:58
[2026-06-05 23:02:58,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:02:58,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:02:58,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:02:58,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:02:58,783.783 INFO    ] time= 05/06/2026 23:02:58
[2026-06-05 23:02:58,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:02:58,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:02:58,947.947 INFO    ] No existing commands found in stream
[2026-06-05 23:03:03,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:03:03,974.974 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 23:03:07,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:03:07,627.627 INFO    ] Checking for system updates...
[2026-06-05 23:03:07,669.669 INFO    ] 200
[2026-06-05 23:03:07,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:07,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:03:07,728.728 INFO    ] No update needed
[2026-06-05 23:03:07,731.731 INFO    ] Checking for camera pi updates...
[2026-06-05 23:03:07,772.772 INFO    ] 200
[2026-06-05 23:03:07,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:07,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:03:07,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:03:07,863.863 INFO    ] No camera update needed
[2026-06-05 23:03:07,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:03:07,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:03:07,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:03:07,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:03:09,920.920 INFO    ] ================================================
[2026-06-05 23:03:09,935.935 INFO    ] Launching Daemon at Fri Jun  5 23:03:09 IST 2026
[2026-06-05 23:03:09,947.947 INFO    ] ================================================
[2026-06-05 23:03:10,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:03:10
[2026-06-05 23:03:11,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:03:11,478.478 INFO    ] Initializing speech engine...
[2026-06-05 23:03:11,486.486 INFO    ] 2026-06-05 23:03:11
[2026-06-05 23:03:11,756.756 INFO    ] 2026-06-05 23:03:11
[2026-06-05 23:03:11,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:03:12,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:03:12,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:03:12,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:03:12,231.231 INFO    ] time= 05/06/2026 23:03:12
[2026-06-05 23:03:12,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:03:12,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:03:12,448.448 INFO    ] No existing commands found in stream
[2026-06-05 23:03:17,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:03:17,481.481 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-05 23:03:18,548.548 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:03:18,551.551 INFO    ] Checking for system updates...
[2026-06-05 23:03:18,587.587 INFO    ] 200
[2026-06-05 23:03:18,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:18,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:03:18,644.644 INFO    ] No update needed
[2026-06-05 23:03:18,646.646 INFO    ] Checking for camera pi updates...
[2026-06-05 23:03:18,685.685 INFO    ] 200
[2026-06-05 23:03:18,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:18,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:03:18,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:03:18,779.779 INFO    ] No camera update needed
[2026-06-05 23:03:18,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:03:18,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:03:18,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:03:18,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:03:20,835.835 INFO    ] ================================================
[2026-06-05 23:03:20,851.851 INFO    ] Launching Daemon at Fri Jun  5 23:03:20 IST 2026
[2026-06-05 23:03:20,862.862 INFO    ] ================================================
[2026-06-05 23:03:21,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:03:21
[2026-06-05 23:03:22,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:03:22,274.274 INFO    ] Initializing speech engine...
[2026-06-05 23:03:22,299.299 INFO    ] 2026-06-05 23:03:22
[2026-06-05 23:03:22,568.568 INFO    ] 2026-06-05 23:03:22
[2026-06-05 23:03:22,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:03:22,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:03:22,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:03:23,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:03:23,072.072 INFO    ] time= 05/06/2026 23:03:23
[2026-06-05 23:03:23,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:03:23,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:03:23,338.338 INFO    ] No existing commands found in stream
[2026-06-05 23:03:28,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:03:28,371.371 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-05 23:03:30,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:03:30,053.053 INFO    ] Checking for system updates...
[2026-06-05 23:03:30,095.095 INFO    ] 200
[2026-06-05 23:03:30,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:30,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:03:30,154.154 INFO    ] No update needed
[2026-06-05 23:03:30,157.157 INFO    ] Checking for camera pi updates...
[2026-06-05 23:03:30,195.195 INFO    ] 200
[2026-06-05 23:03:30,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:30,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:03:30,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:03:30,298.298 INFO    ] No camera update needed
[2026-06-05 23:03:30,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:03:30,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:03:30,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:03:30,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:03:32,357.357 INFO    ] ================================================
[2026-06-05 23:03:32,373.373 INFO    ] Launching Daemon at Fri Jun  5 23:03:32 IST 2026
[2026-06-05 23:03:32,385.385 INFO    ] ================================================
[2026-06-05 23:03:33,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:03:33
[2026-06-05 23:03:33,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:03:33,861.861 INFO    ] Initializing speech engine...
[2026-06-05 23:03:33,875.875 INFO    ] 2026-06-05 23:03:33
[2026-06-05 23:03:34,131.131 INFO    ] 2026-06-05 23:03:34
[2026-06-05 23:03:34,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:03:34,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:03:34,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:03:34,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:03:34,591.591 INFO    ] time= 05/06/2026 23:03:34
[2026-06-05 23:03:34,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:03:34,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:03:34,853.853 INFO    ] No existing commands found in stream
[2026-06-05 23:03:39,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:03:39,873.873 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 23:03:41,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:03:41,374.374 INFO    ] Checking for system updates...
[2026-06-05 23:03:41,411.411 INFO    ] 200
[2026-06-05 23:03:41,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:41,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:03:41,477.477 INFO    ] No update needed
[2026-06-05 23:03:41,480.480 INFO    ] Checking for camera pi updates...
[2026-06-05 23:03:41,514.514 INFO    ] 200
[2026-06-05 23:03:41,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:41,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:03:41,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:03:41,625.625 INFO    ] No camera update needed
[2026-06-05 23:03:41,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:03:41,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:03:41,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:03:41,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:03:43,683.683 INFO    ] ================================================
[2026-06-05 23:03:43,699.699 INFO    ] Launching Daemon at Fri Jun  5 23:03:43 IST 2026
[2026-06-05 23:03:43,709.709 INFO    ] ================================================
[2026-06-05 23:03:44,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:03:44
[2026-06-05 23:03:44,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:03:45,176.176 INFO    ] Initializing speech engine...
[2026-06-05 23:03:45,185.185 INFO    ] 2026-06-05 23:03:45
[2026-06-05 23:03:45,444.444 INFO    ] 2026-06-05 23:03:45
[2026-06-05 23:03:45,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:03:45,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:03:45,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:03:45,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:03:45,910.910 INFO    ] time= 05/06/2026 23:03:45
[2026-06-05 23:03:45,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:03:45,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:03:46,124.124 INFO    ] No existing commands found in stream
[2026-06-05 23:03:51,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:03:51,157.157 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-05 23:03:53,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:03:53,489.489 INFO    ] Checking for system updates...
[2026-06-05 23:03:53,529.529 INFO    ] 200
[2026-06-05 23:03:53,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:53,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:03:53,587.587 INFO    ] No update needed
[2026-06-05 23:03:53,589.589 INFO    ] Checking for camera pi updates...
[2026-06-05 23:03:53,623.623 INFO    ] 200
[2026-06-05 23:03:53,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:03:53,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:03:53,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:03:53,720.720 INFO    ] No camera update needed
[2026-06-05 23:03:53,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:03:53,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:03:53,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:03:53,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:03:55,777.777 INFO    ] ================================================
[2026-06-05 23:03:55,792.792 INFO    ] Launching Daemon at Fri Jun  5 23:03:55 IST 2026
[2026-06-05 23:03:55,802.802 INFO    ] ================================================
[2026-06-05 23:03:56,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:03:56
[2026-06-05 23:03:57,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:03:57,281.281 INFO    ] Initializing speech engine...
[2026-06-05 23:03:57,287.287 INFO    ] 2026-06-05 23:03:57
[2026-06-05 23:03:57,549.549 INFO    ] 2026-06-05 23:03:57
[2026-06-05 23:03:57,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:03:57,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:03:57,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:03:58,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:03:58,094.094 INFO    ] time= 05/06/2026 23:03:58
[2026-06-05 23:03:58,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:03:58,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:03:58,247.247 INFO    ] No existing commands found in stream
[2026-06-05 23:04:03,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:04:03,260.260 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 23:04:04,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:04:04,726.726 INFO    ] Checking for system updates...
[2026-06-05 23:04:04,763.763 INFO    ] 200
[2026-06-05 23:04:04,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:04,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:04:04,821.821 INFO    ] No update needed
[2026-06-05 23:04:04,823.823 INFO    ] Checking for camera pi updates...
[2026-06-05 23:04:04,858.858 INFO    ] 200
[2026-06-05 23:04:04,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:04,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:04:04,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:04:04,959.959 INFO    ] No camera update needed
[2026-06-05 23:04:04,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:04:04,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:04:04,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:04:04,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:04:07,016.016 INFO    ] ================================================
[2026-06-05 23:04:07,031.031 INFO    ] Launching Daemon at Fri Jun  5 23:04:07 IST 2026
[2026-06-05 23:04:07,041.041 INFO    ] ================================================
[2026-06-05 23:04:07,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:04:07
[2026-06-05 23:04:08,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:04:08,498.498 INFO    ] Initializing speech engine...
[2026-06-05 23:04:08,508.508 INFO    ] 2026-06-05 23:04:08
[2026-06-05 23:04:08,805.805 INFO    ] 2026-06-05 23:04:08
[2026-06-05 23:04:08,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:04:09,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:04:09,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:04:09,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:04:09,231.231 INFO    ] time= 05/06/2026 23:04:09
[2026-06-05 23:04:09,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:04:09,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:04:09,393.393 INFO    ] No existing commands found in stream
[2026-06-05 23:04:14,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:04:14,416.416 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-05 23:04:16,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:04:16,218.218 INFO    ] Checking for system updates...
[2026-06-05 23:04:16,259.259 INFO    ] 200
[2026-06-05 23:04:16,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:16,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:04:16,317.317 INFO    ] No update needed
[2026-06-05 23:04:16,319.319 INFO    ] Checking for camera pi updates...
[2026-06-05 23:04:16,354.354 INFO    ] 200
[2026-06-05 23:04:16,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:16,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:04:16,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:04:16,466.466 INFO    ] No camera update needed
[2026-06-05 23:04:16,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:04:16,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:04:16,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:04:16,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:04:18,523.523 INFO    ] ================================================
[2026-06-05 23:04:18,539.539 INFO    ] Launching Daemon at Fri Jun  5 23:04:18 IST 2026
[2026-06-05 23:04:18,549.549 INFO    ] ================================================
[2026-06-05 23:04:19,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:04:19
[2026-06-05 23:04:19,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:04:20,046.046 INFO    ] Initializing speech engine...
[2026-06-05 23:04:20,056.056 INFO    ] 2026-06-05 23:04:20
[2026-06-05 23:04:20,317.317 INFO    ] 2026-06-05 23:04:20
[2026-06-05 23:04:20,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:04:20,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:04:20,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:04:20,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:04:20,784.784 INFO    ] time= 05/06/2026 23:04:20
[2026-06-05 23:04:20,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:04:20,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:04:21,028.028 INFO    ] No existing commands found in stream
[2026-06-05 23:04:26,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:04:26,049.049 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 23:04:29,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:04:29,649.649 INFO    ] Checking for system updates...
[2026-06-05 23:04:29,685.685 INFO    ] 200
[2026-06-05 23:04:29,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:29,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:04:29,750.750 INFO    ] No update needed
[2026-06-05 23:04:29,752.752 INFO    ] Checking for camera pi updates...
[2026-06-05 23:04:29,787.787 INFO    ] 200
[2026-06-05 23:04:29,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:29,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:04:29,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:04:29,892.892 INFO    ] No camera update needed
[2026-06-05 23:04:29,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:04:29,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:04:29,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:04:29,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:04:31,950.950 INFO    ] ================================================
[2026-06-05 23:04:31,966.966 INFO    ] Launching Daemon at Fri Jun  5 23:04:31 IST 2026
[2026-06-05 23:04:31,978.978 INFO    ] ================================================
[2026-06-05 23:04:32,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:04:32
[2026-06-05 23:04:33,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:04:33,449.449 INFO    ] Initializing speech engine...
[2026-06-05 23:04:33,459.459 INFO    ] 2026-06-05 23:04:33
[2026-06-05 23:04:33,758.758 INFO    ] 2026-06-05 23:04:33
[2026-06-05 23:04:33,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:04:34,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:04:34,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:04:34,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:04:34,183.183 INFO    ] time= 05/06/2026 23:04:34
[2026-06-05 23:04:34,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:04:34,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:04:34,288.288 INFO    ] No existing commands found in stream
[2026-06-05 23:04:39,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:04:39,321.321 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 23:04:40,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:04:40,599.599 INFO    ] Checking for system updates...
[2026-06-05 23:04:40,637.637 INFO    ] 200
[2026-06-05 23:04:40,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:40,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:04:40,704.704 INFO    ] No update needed
[2026-06-05 23:04:40,707.707 INFO    ] Checking for camera pi updates...
[2026-06-05 23:04:40,742.742 INFO    ] 200
[2026-06-05 23:04:40,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:40,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:04:40,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:04:40,854.854 INFO    ] No camera update needed
[2026-06-05 23:04:40,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:04:40,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:04:40,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:04:40,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:04:42,909.909 INFO    ] ================================================
[2026-06-05 23:04:42,923.923 INFO    ] Launching Daemon at Fri Jun  5 23:04:42 IST 2026
[2026-06-05 23:04:42,934.934 INFO    ] ================================================
[2026-06-05 23:04:43,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:04:43
[2026-06-05 23:04:44,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:04:44,603.603 INFO    ] Initializing speech engine...
[2026-06-05 23:04:44,609.609 INFO    ] 2026-06-05 23:04:44
[2026-06-05 23:04:44,898.898 INFO    ] 2026-06-05 23:04:44
[2026-06-05 23:04:45,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:04:45,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:04:45,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:04:45,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:04:45,448.448 INFO    ] time= 05/06/2026 23:04:45
[2026-06-05 23:04:45,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:04:45,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:04:45,605.605 INFO    ] No existing commands found in stream
[2026-06-05 23:04:50,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:04:50,634.634 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-05 23:04:52,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:04:52,314.314 INFO    ] Checking for system updates...
[2026-06-05 23:04:52,351.351 INFO    ] 200
[2026-06-05 23:04:52,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:52,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:04:52,417.417 INFO    ] No update needed
[2026-06-05 23:04:52,419.419 INFO    ] Checking for camera pi updates...
[2026-06-05 23:04:52,453.453 INFO    ] 200
[2026-06-05 23:04:52,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:04:52,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:04:52,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:04:52,545.545 INFO    ] No camera update needed
[2026-06-05 23:04:52,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:04:52,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:04:52,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:04:52,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:04:54,600.600 INFO    ] ================================================
[2026-06-05 23:04:54,615.615 INFO    ] Launching Daemon at Fri Jun  5 23:04:54 IST 2026
[2026-06-05 23:04:54,625.625 INFO    ] ================================================
[2026-06-05 23:04:55,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:04:55
[2026-06-05 23:04:55,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:04:56,045.045 INFO    ] Initializing speech engine...
[2026-06-05 23:04:56,054.054 INFO    ] 2026-06-05 23:04:56
[2026-06-05 23:04:56,299.299 INFO    ] 2026-06-05 23:04:56
[2026-06-05 23:04:56,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:04:56,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:04:56,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:04:56,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:04:56,773.773 INFO    ] time= 05/06/2026 23:04:56
[2026-06-05 23:04:56,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:04:56,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:04:56,953.953 INFO    ] No existing commands found in stream
[2026-06-05 23:05:01,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:05:01,968.968 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-05 23:05:03,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:05:03,473.473 INFO    ] Checking for system updates...
[2026-06-05 23:05:03,514.514 INFO    ] 200
[2026-06-05 23:05:03,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:03,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:05:03,573.573 INFO    ] No update needed
[2026-06-05 23:05:03,575.575 INFO    ] Checking for camera pi updates...
[2026-06-05 23:05:03,613.613 INFO    ] 200
[2026-06-05 23:05:03,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:03,658.658 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:05:03,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:05:03,693.693 INFO    ] No camera update needed
[2026-06-05 23:05:03,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:05:03,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:05:03,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:05:03,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:05:05,750.750 INFO    ] ================================================
[2026-06-05 23:05:05,766.766 INFO    ] Launching Daemon at Fri Jun  5 23:05:05 IST 2026
[2026-06-05 23:05:05,777.777 INFO    ] ================================================
[2026-06-05 23:05:06,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:05:06
[2026-06-05 23:05:07,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:05:07,348.348 INFO    ] Initializing speech engine...
[2026-06-05 23:05:07,362.362 INFO    ] 2026-06-05 23:05:07
[2026-06-05 23:05:07,676.676 INFO    ] 2026-06-05 23:05:07
[2026-06-05 23:05:07,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:05:07,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:05:07,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:05:08,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:05:08,131.131 INFO    ] time= 05/06/2026 23:05:08
[2026-06-05 23:05:08,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:05:08,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:05:08,344.344 INFO    ] No existing commands found in stream
[2026-06-05 23:05:13,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:05:13,367.367 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 23:05:14,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:05:14,492.492 INFO    ] Checking for system updates...
[2026-06-05 23:05:14,533.533 INFO    ] 200
[2026-06-05 23:05:14,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:14,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:05:14,592.592 INFO    ] No update needed
[2026-06-05 23:05:14,595.595 INFO    ] Checking for camera pi updates...
[2026-06-05 23:05:14,629.629 INFO    ] 200
[2026-06-05 23:05:14,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:14,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:05:14,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:05:14,739.739 INFO    ] No camera update needed
[2026-06-05 23:05:14,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:05:14,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:05:14,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:05:14,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:05:16,794.794 INFO    ] ================================================
[2026-06-05 23:05:16,810.810 INFO    ] Launching Daemon at Fri Jun  5 23:05:16 IST 2026
[2026-06-05 23:05:16,821.821 INFO    ] ================================================
[2026-06-05 23:05:17,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:05:17
[2026-06-05 23:05:18,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:05:18,485.485 INFO    ] Initializing speech engine...
[2026-06-05 23:05:18,494.494 INFO    ] 2026-06-05 23:05:18
[2026-06-05 23:05:18,775.775 INFO    ] 2026-06-05 23:05:18
[2026-06-05 23:05:18,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:05:19,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:05:19,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:05:19,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:05:19,274.274 INFO    ] time= 05/06/2026 23:05:19
[2026-06-05 23:05:19,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:05:19,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:05:19,511.511 INFO    ] No existing commands found in stream
[2026-06-05 23:05:24,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:05:24,545.545 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 23:05:25,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:05:25,763.763 INFO    ] Checking for system updates...
[2026-06-05 23:05:25,800.800 INFO    ] 200
[2026-06-05 23:05:25,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:25,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:05:25,864.864 INFO    ] No update needed
[2026-06-05 23:05:25,866.866 INFO    ] Checking for camera pi updates...
[2026-06-05 23:05:25,900.900 INFO    ] 200
[2026-06-05 23:05:25,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:25,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:05:26,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:05:26,011.011 INFO    ] No camera update needed
[2026-06-05 23:05:26,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:05:26,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:05:26,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:05:26,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:05:28,066.066 INFO    ] ================================================
[2026-06-05 23:05:28,081.081 INFO    ] Launching Daemon at Fri Jun  5 23:05:28 IST 2026
[2026-06-05 23:05:28,092.092 INFO    ] ================================================
[2026-06-05 23:05:28,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:05:28
[2026-06-05 23:05:29,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:05:29,690.690 INFO    ] Initializing speech engine...
[2026-06-05 23:05:29,702.702 INFO    ] 2026-06-05 23:05:29
[2026-06-05 23:05:29,980.980 INFO    ] 2026-06-05 23:05:29
[2026-06-05 23:05:30,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:05:30,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:05:30,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:05:30,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:05:30,518.518 INFO    ] time= 05/06/2026 23:05:30
[2026-06-05 23:05:30,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:05:30,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:05:30,687.687 INFO    ] No existing commands found in stream
[2026-06-05 23:05:35,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:05:35,721.721 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 23:05:38,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:05:38,487.487 INFO    ] Checking for system updates...
[2026-06-05 23:05:38,527.527 INFO    ] 200
[2026-06-05 23:05:38,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:38,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:05:38,591.591 INFO    ] No update needed
[2026-06-05 23:05:38,593.593 INFO    ] Checking for camera pi updates...
[2026-06-05 23:05:38,627.627 INFO    ] 200
[2026-06-05 23:05:38,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:38,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:05:38,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:05:38,727.727 INFO    ] No camera update needed
[2026-06-05 23:05:38,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:05:38,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:05:38,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:05:38,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:05:40,781.781 INFO    ] ================================================
[2026-06-05 23:05:40,801.801 INFO    ] Launching Daemon at Fri Jun  5 23:05:40 IST 2026
[2026-06-05 23:05:40,811.811 INFO    ] ================================================
[2026-06-05 23:05:41,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:05:41
[2026-06-05 23:05:41,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:05:42,257.257 INFO    ] Initializing speech engine...
[2026-06-05 23:05:42,266.266 INFO    ] 2026-06-05 23:05:42
[2026-06-05 23:05:42,534.534 INFO    ] 2026-06-05 23:05:42
[2026-06-05 23:05:42,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:05:42,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:05:42,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:05:42,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:05:42,991.991 INFO    ] time= 05/06/2026 23:05:42
[2026-06-05 23:05:43,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:05:43,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:05:43,179.179 INFO    ] No existing commands found in stream
[2026-06-05 23:05:48,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:05:48,193.193 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 23:05:48,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:05:48,721.721 INFO    ] Checking for system updates...
[2026-06-05 23:05:48,757.757 INFO    ] 200
[2026-06-05 23:05:48,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:48,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:05:48,819.819 INFO    ] No update needed
[2026-06-05 23:05:48,822.822 INFO    ] Checking for camera pi updates...
[2026-06-05 23:05:48,856.856 INFO    ] 200
[2026-06-05 23:05:48,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:05:48,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:05:48,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:05:48,951.951 INFO    ] No camera update needed
[2026-06-05 23:05:48,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:05:48,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:05:48,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:05:48,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:05:51,005.005 INFO    ] ================================================
[2026-06-05 23:05:51,020.020 INFO    ] Launching Daemon at Fri Jun  5 23:05:51 IST 2026
[2026-06-05 23:05:51,031.031 INFO    ] ================================================
[2026-06-05 23:05:51,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:05:51
[2026-06-05 23:05:52,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:05:52,476.476 INFO    ] Initializing speech engine...
[2026-06-05 23:05:52,485.485 INFO    ] 2026-06-05 23:05:52
[2026-06-05 23:05:52,773.773 INFO    ] 2026-06-05 23:05:52
[2026-06-05 23:05:52,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:05:53,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:05:53,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:05:53,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:05:53,179.179 INFO    ] time= 05/06/2026 23:05:53
[2026-06-05 23:05:53,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:05:53,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:05:53,340.340 INFO    ] No existing commands found in stream
[2026-06-05 23:05:58,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:05:58,368.368 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 23:06:03,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:06:03,239.239 INFO    ] Checking for system updates...
[2026-06-05 23:06:03,279.279 INFO    ] 200
[2026-06-05 23:06:03,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:03,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:06:03,357.357 INFO    ] No update needed
[2026-06-05 23:06:03,360.360 INFO    ] Checking for camera pi updates...
[2026-06-05 23:06:03,393.393 INFO    ] 200
[2026-06-05 23:06:03,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:03,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:06:03,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:06:03,494.494 INFO    ] No camera update needed
[2026-06-05 23:06:03,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:06:03,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:06:03,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:06:03,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:06:05,549.549 INFO    ] ================================================
[2026-06-05 23:06:05,564.564 INFO    ] Launching Daemon at Fri Jun  5 23:06:05 IST 2026
[2026-06-05 23:06:05,575.575 INFO    ] ================================================
[2026-06-05 23:06:06,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:06:06
[2026-06-05 23:06:06,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:06:07,024.024 INFO    ] Initializing speech engine...
[2026-06-05 23:06:07,033.033 INFO    ] 2026-06-05 23:06:07
[2026-06-05 23:06:07,288.288 INFO    ] 2026-06-05 23:06:07
[2026-06-05 23:06:07,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:06:07,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:06:07,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:06:07,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:06:07,784.784 INFO    ] time= 05/06/2026 23:06:07
[2026-06-05 23:06:07,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:06:07,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:06:07,968.968 INFO    ] No existing commands found in stream
[2026-06-05 23:06:12,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:06:13,000.000 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 23:06:15,753.753 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:06:15,755.755 INFO    ] Checking for system updates...
[2026-06-05 23:06:15,791.791 INFO    ] 200
[2026-06-05 23:06:15,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:15,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:06:15,855.855 INFO    ] No update needed
[2026-06-05 23:06:15,858.858 INFO    ] Checking for camera pi updates...
[2026-06-05 23:06:15,892.892 INFO    ] 200
[2026-06-05 23:06:15,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:15,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:06:15,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:06:15,997.997 INFO    ] No camera update needed
[2026-06-05 23:06:15,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:06:16,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:06:16,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:06:16,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:06:18,053.053 INFO    ] ================================================
[2026-06-05 23:06:18,068.068 INFO    ] Launching Daemon at Fri Jun  5 23:06:18 IST 2026
[2026-06-05 23:06:18,079.079 INFO    ] ================================================
[2026-06-05 23:06:18,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:06:18
[2026-06-05 23:06:19,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:06:19,522.522 INFO    ] Initializing speech engine...
[2026-06-05 23:06:19,537.537 INFO    ] 2026-06-05 23:06:19
[2026-06-05 23:06:19,806.806 INFO    ] 2026-06-05 23:06:19
[2026-06-05 23:06:19,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:06:20,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:06:20,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:06:20,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:06:20,297.297 INFO    ] time= 05/06/2026 23:06:20
[2026-06-05 23:06:20,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:06:20,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:06:20,543.543 INFO    ] No existing commands found in stream
[2026-06-05 23:06:25,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:06:25,574.574 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 23:06:29,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:06:29,212.212 INFO    ] Checking for system updates...
[2026-06-05 23:06:29,249.249 INFO    ] 200
[2026-06-05 23:06:29,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:29,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:06:29,310.310 INFO    ] No update needed
[2026-06-05 23:06:29,313.313 INFO    ] Checking for camera pi updates...
[2026-06-05 23:06:29,350.350 INFO    ] 200
[2026-06-05 23:06:29,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:29,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:06:29,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:06:29,445.445 INFO    ] No camera update needed
[2026-06-05 23:06:29,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:06:29,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:06:29,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:06:29,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:06:31,500.500 INFO    ] ================================================
[2026-06-05 23:06:31,515.515 INFO    ] Launching Daemon at Fri Jun  5 23:06:31 IST 2026
[2026-06-05 23:06:31,526.526 INFO    ] ================================================
[2026-06-05 23:06:32,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:06:32
[2026-06-05 23:06:32,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:06:33,105.105 INFO    ] Initializing speech engine...
[2026-06-05 23:06:33,124.124 INFO    ] 2026-06-05 23:06:33
[2026-06-05 23:06:33,377.377 INFO    ] 2026-06-05 23:06:33
[2026-06-05 23:06:33,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:06:33,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:06:33,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:06:33,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:06:33,910.910 INFO    ] time= 05/06/2026 23:06:33
[2026-06-05 23:06:33,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:06:33,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:06:34,091.091 INFO    ] No existing commands found in stream
[2026-06-05 23:06:39,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:06:39,119.119 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-05 23:06:40,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:06:40,298.298 INFO    ] Checking for system updates...
[2026-06-05 23:06:40,335.335 INFO    ] 200
[2026-06-05 23:06:40,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:40,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:06:40,392.392 INFO    ] No update needed
[2026-06-05 23:06:40,395.395 INFO    ] Checking for camera pi updates...
[2026-06-05 23:06:40,428.428 INFO    ] 200
[2026-06-05 23:06:40,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:40,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:06:40,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:06:40,542.542 INFO    ] No camera update needed
[2026-06-05 23:06:40,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:06:40,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:06:40,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:06:40,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:06:42,600.600 INFO    ] ================================================
[2026-06-05 23:06:42,615.615 INFO    ] Launching Daemon at Fri Jun  5 23:06:42 IST 2026
[2026-06-05 23:06:42,625.625 INFO    ] ================================================
[2026-06-05 23:06:43,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:06:43
[2026-06-05 23:06:43,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:06:44,039.039 INFO    ] Initializing speech engine...
[2026-06-05 23:06:44,054.054 INFO    ] 2026-06-05 23:06:44
[2026-06-05 23:06:44,311.311 INFO    ] 2026-06-05 23:06:44
[2026-06-05 23:06:44,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:06:44,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:06:44,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:06:44,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:06:44,690.690 INFO    ] time= 05/06/2026 23:06:44
[2026-06-05 23:06:44,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:06:44,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:06:44,881.881 INFO    ] No existing commands found in stream
[2026-06-05 23:06:49,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:06:49,905.905 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-05 23:06:50,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:06:50,753.753 INFO    ] Checking for system updates...
[2026-06-05 23:06:50,789.789 INFO    ] 200
[2026-06-05 23:06:50,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:50,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:06:50,848.848 INFO    ] No update needed
[2026-06-05 23:06:50,850.850 INFO    ] Checking for camera pi updates...
[2026-06-05 23:06:50,887.887 INFO    ] 200
[2026-06-05 23:06:50,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:06:50,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:06:50,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:06:50,986.986 INFO    ] No camera update needed
[2026-06-05 23:06:50,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:06:50,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:06:50,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:06:51,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:06:53,042.042 INFO    ] ================================================
[2026-06-05 23:06:53,057.057 INFO    ] Launching Daemon at Fri Jun  5 23:06:53 IST 2026
[2026-06-05 23:06:53,068.068 INFO    ] ================================================
[2026-06-05 23:06:53,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:06:53
[2026-06-05 23:06:54,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:06:54,705.705 INFO    ] Initializing speech engine...
[2026-06-05 23:06:54,716.716 INFO    ] 2026-06-05 23:06:54
[2026-06-05 23:06:54,995.995 INFO    ] 2026-06-05 23:06:54
[2026-06-05 23:06:55,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:06:55,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:06:55,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:06:55,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:06:55,544.544 INFO    ] time= 05/06/2026 23:06:55
[2026-06-05 23:06:55,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:06:55,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:06:55,719.719 INFO    ] No existing commands found in stream
[2026-06-05 23:07:00,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:07:00,752.752 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 23:07:03,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:07:03,171.171 INFO    ] Checking for system updates...
[2026-06-05 23:07:03,212.212 INFO    ] 200
[2026-06-05 23:07:03,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:03,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:07:03,291.291 INFO    ] No update needed
[2026-06-05 23:07:03,293.293 INFO    ] Checking for camera pi updates...
[2026-06-05 23:07:03,331.331 INFO    ] 200
[2026-06-05 23:07:03,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:03,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:07:03,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:07:03,427.427 INFO    ] No camera update needed
[2026-06-05 23:07:03,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:07:03,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:07:03,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:07:03,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:07:05,486.486 INFO    ] ================================================
[2026-06-05 23:07:05,501.501 INFO    ] Launching Daemon at Fri Jun  5 23:07:05 IST 2026
[2026-06-05 23:07:05,512.512 INFO    ] ================================================
[2026-06-05 23:07:06,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:07:06
[2026-06-05 23:07:06,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:07:07,069.069 INFO    ] Initializing speech engine...
[2026-06-05 23:07:07,077.077 INFO    ] 2026-06-05 23:07:07
[2026-06-05 23:07:07,348.348 INFO    ] 2026-06-05 23:07:07
[2026-06-05 23:07:07,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:07:07,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:07:07,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:07:07,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:07:07,783.783 INFO    ] time= 05/06/2026 23:07:07
[2026-06-05 23:07:07,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:07:07,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:07:08,018.018 INFO    ] No existing commands found in stream
[2026-06-05 23:07:13,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:07:13,040.040 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-05 23:07:16,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:07:16,314.314 INFO    ] Checking for system updates...
[2026-06-05 23:07:16,354.354 INFO    ] 200
[2026-06-05 23:07:16,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:16,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:07:16,419.419 INFO    ] No update needed
[2026-06-05 23:07:16,421.421 INFO    ] Checking for camera pi updates...
[2026-06-05 23:07:16,459.459 INFO    ] 200
[2026-06-05 23:07:16,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:16,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:07:16,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:07:16,657.657 INFO    ] No camera update needed
[2026-06-05 23:07:16,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:07:16,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:07:16,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:07:16,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:07:18,715.715 INFO    ] ================================================
[2026-06-05 23:07:18,730.730 INFO    ] Launching Daemon at Fri Jun  5 23:07:18 IST 2026
[2026-06-05 23:07:18,741.741 INFO    ] ================================================
[2026-06-05 23:07:19,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:07:19
[2026-06-05 23:07:20,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:07:20,345.345 INFO    ] Initializing speech engine...
[2026-06-05 23:07:20,353.353 INFO    ] 2026-06-05 23:07:20
[2026-06-05 23:07:20,630.630 INFO    ] 2026-06-05 23:07:20
[2026-06-05 23:07:20,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:07:20,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:07:20,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:07:21,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:07:21,122.122 INFO    ] time= 05/06/2026 23:07:21
[2026-06-05 23:07:21,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:07:21,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:07:21,349.349 INFO    ] No existing commands found in stream
[2026-06-05 23:07:26,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:07:26,364.364 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 23:07:29,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:07:29,183.183 INFO    ] Checking for system updates...
[2026-06-05 23:07:29,224.224 INFO    ] 200
[2026-06-05 23:07:29,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:29,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:07:29,285.285 INFO    ] No update needed
[2026-06-05 23:07:29,288.288 INFO    ] Checking for camera pi updates...
[2026-06-05 23:07:29,323.323 INFO    ] 200
[2026-06-05 23:07:29,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:29,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:07:29,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:07:29,422.422 INFO    ] No camera update needed
[2026-06-05 23:07:29,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:07:29,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:07:29,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:07:29,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:07:31,481.481 INFO    ] ================================================
[2026-06-05 23:07:31,497.497 INFO    ] Launching Daemon at Fri Jun  5 23:07:31 IST 2026
[2026-06-05 23:07:31,508.508 INFO    ] ================================================
[2026-06-05 23:07:32,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:07:32
[2026-06-05 23:07:32,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:07:33,017.017 INFO    ] Initializing speech engine...
[2026-06-05 23:07:33,042.042 INFO    ] 2026-06-05 23:07:33
[2026-06-05 23:07:33,297.297 INFO    ] 2026-06-05 23:07:33
[2026-06-05 23:07:33,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:07:33,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:07:33,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:07:33,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:07:33,751.751 INFO    ] time= 05/06/2026 23:07:33
[2026-06-05 23:07:33,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:07:33,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:07:33,998.998 INFO    ] No existing commands found in stream
[2026-06-05 23:07:39,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:07:39,029.029 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 23:07:41,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:07:41,895.895 INFO    ] Checking for system updates...
[2026-06-05 23:07:41,933.933 INFO    ] 200
[2026-06-05 23:07:41,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:41,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:07:41,992.992 INFO    ] No update needed
[2026-06-05 23:07:41,995.995 INFO    ] Checking for camera pi updates...
[2026-06-05 23:07:42,030.030 INFO    ] 200
[2026-06-05 23:07:42,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:42,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:07:42,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:07:42,135.135 INFO    ] No camera update needed
[2026-06-05 23:07:42,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:07:42,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:07:42,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:07:42,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:07:44,191.191 INFO    ] ================================================
[2026-06-05 23:07:44,206.206 INFO    ] Launching Daemon at Fri Jun  5 23:07:44 IST 2026
[2026-06-05 23:07:44,217.217 INFO    ] ================================================
[2026-06-05 23:07:44,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:07:44
[2026-06-05 23:07:45,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:07:45,653.653 INFO    ] Initializing speech engine...
[2026-06-05 23:07:45,667.667 INFO    ] 2026-06-05 23:07:45
[2026-06-05 23:07:45,932.932 INFO    ] 2026-06-05 23:07:45
[2026-06-05 23:07:45,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:07:46,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:07:46,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:07:46,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:07:46,427.427 INFO    ] time= 05/06/2026 23:07:46
[2026-06-05 23:07:46,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:07:46,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:07:46,623.623 INFO    ] No existing commands found in stream
[2026-06-05 23:07:51,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:07:51,636.636 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-05 23:07:55,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:07:55,368.368 INFO    ] Checking for system updates...
[2026-06-05 23:07:55,404.404 INFO    ] 200
[2026-06-05 23:07:55,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:55,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:07:55,467.467 INFO    ] No update needed
[2026-06-05 23:07:55,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 23:07:55,507.507 INFO    ] 200
[2026-06-05 23:07:55,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:07:55,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:07:55,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:07:55,610.610 INFO    ] No camera update needed
[2026-06-05 23:07:55,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:07:55,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:07:55,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:07:55,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:07:57,668.668 INFO    ] ================================================
[2026-06-05 23:07:57,683.683 INFO    ] Launching Daemon at Fri Jun  5 23:07:57 IST 2026
[2026-06-05 23:07:57,694.694 INFO    ] ================================================
[2026-06-05 23:07:58,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:07:58
[2026-06-05 23:07:58,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:07:59,101.101 INFO    ] Initializing speech engine...
[2026-06-05 23:07:59,107.107 INFO    ] 2026-06-05 23:07:59
[2026-06-05 23:07:59,403.403 INFO    ] 2026-06-05 23:07:59
[2026-06-05 23:07:59,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:07:59,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:07:59,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:07:59,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:07:59,818.818 INFO    ] time= 05/06/2026 23:07:59
[2026-06-05 23:07:59,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:07:59,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:07:59,903.903 INFO    ] No existing commands found in stream
[2026-06-05 23:08:04,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:08:04,920.920 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 23:08:07,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:08:07,997.997 INFO    ] Checking for system updates...
[2026-06-05 23:08:08,034.034 INFO    ] 200
[2026-06-05 23:08:08,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:08,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:08:08,092.092 INFO    ] No update needed
[2026-06-05 23:08:08,094.094 INFO    ] Checking for camera pi updates...
[2026-06-05 23:08:08,129.129 INFO    ] 200
[2026-06-05 23:08:08,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:08,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:08:08,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:08:08,213.213 INFO    ] No camera update needed
[2026-06-05 23:08:08,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:08:08,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:08:08,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:08:08,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:08:10,267.267 INFO    ] ================================================
[2026-06-05 23:08:10,283.283 INFO    ] Launching Daemon at Fri Jun  5 23:08:10 IST 2026
[2026-06-05 23:08:10,293.293 INFO    ] ================================================
[2026-06-05 23:08:10,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:08:10
[2026-06-05 23:08:11,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:08:11,757.757 INFO    ] Initializing speech engine...
[2026-06-05 23:08:11,766.766 INFO    ] 2026-06-05 23:08:11
[2026-06-05 23:08:12,017.017 INFO    ] 2026-06-05 23:08:12
[2026-06-05 23:08:12,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:08:12,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:08:12,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:08:12,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:08:12,490.490 INFO    ] time= 05/06/2026 23:08:12
[2026-06-05 23:08:12,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:08:12,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:08:12,722.722 INFO    ] No existing commands found in stream
[2026-06-05 23:08:17,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:08:17,746.746 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 23:08:19,303.303 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:08:19,306.306 INFO    ] Checking for system updates...
[2026-06-05 23:08:19,342.342 INFO    ] 200
[2026-06-05 23:08:19,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:19,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:08:19,400.400 INFO    ] No update needed
[2026-06-05 23:08:19,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 23:08:19,440.440 INFO    ] 200
[2026-06-05 23:08:19,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:19,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:08:19,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:08:19,533.533 INFO    ] No camera update needed
[2026-06-05 23:08:19,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:08:19,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:08:19,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:08:19,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:08:21,593.593 INFO    ] ================================================
[2026-06-05 23:08:21,609.609 INFO    ] Launching Daemon at Fri Jun  5 23:08:21 IST 2026
[2026-06-05 23:08:21,620.620 INFO    ] ================================================
[2026-06-05 23:08:22,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:08:22
[2026-06-05 23:08:22,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:08:23,043.043 INFO    ] Initializing speech engine...
[2026-06-05 23:08:23,052.052 INFO    ] 2026-06-05 23:08:23
[2026-06-05 23:08:23,343.343 INFO    ] 2026-06-05 23:08:23
[2026-06-05 23:08:23,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:08:23,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:08:23,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:08:23,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:08:23,760.760 INFO    ] time= 05/06/2026 23:08:23
[2026-06-05 23:08:23,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:08:23,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:08:23,909.909 INFO    ] No existing commands found in stream
[2026-06-05 23:08:28,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:08:28,937.937 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-05 23:08:30,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:08:30,569.569 INFO    ] Checking for system updates...
[2026-06-05 23:08:30,608.608 INFO    ] 200
[2026-06-05 23:08:30,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:30,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:08:30,668.668 INFO    ] No update needed
[2026-06-05 23:08:30,670.670 INFO    ] Checking for camera pi updates...
[2026-06-05 23:08:30,707.707 INFO    ] 200
[2026-06-05 23:08:30,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:30,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:08:30,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:08:30,799.799 INFO    ] No camera update needed
[2026-06-05 23:08:30,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:08:30,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:08:30,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:08:30,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:08:32,856.856 INFO    ] ================================================
[2026-06-05 23:08:32,871.871 INFO    ] Launching Daemon at Fri Jun  5 23:08:32 IST 2026
[2026-06-05 23:08:32,882.882 INFO    ] ================================================
[2026-06-05 23:08:33,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:08:33
[2026-06-05 23:08:34,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:08:34,340.340 INFO    ] Initializing speech engine...
[2026-06-05 23:08:34,347.347 INFO    ] 2026-06-05 23:08:34
[2026-06-05 23:08:34,608.608 INFO    ] 2026-06-05 23:08:34
[2026-06-05 23:08:34,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:08:35,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:08:35,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:08:35,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:08:35,581.581 INFO    ] time= 05/06/2026 23:08:35
[2026-06-05 23:08:35,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:08:35,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:08:35,711.711 INFO    ] No existing commands found in stream
[2026-06-05 23:08:40,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:08:40,727.727 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 23:08:41,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:08:41,488.488 INFO    ] Checking for system updates...
[2026-06-05 23:08:41,524.524 INFO    ] 200
[2026-06-05 23:08:41,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:41,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:08:41,583.583 INFO    ] No update needed
[2026-06-05 23:08:41,586.586 INFO    ] Checking for camera pi updates...
[2026-06-05 23:08:41,623.623 INFO    ] 200
[2026-06-05 23:08:41,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:41,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:08:41,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:08:41,730.730 INFO    ] No camera update needed
[2026-06-05 23:08:41,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:08:41,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:08:41,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:08:41,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:08:43,787.787 INFO    ] ================================================
[2026-06-05 23:08:43,803.803 INFO    ] Launching Daemon at Fri Jun  5 23:08:43 IST 2026
[2026-06-05 23:08:43,814.814 INFO    ] ================================================
[2026-06-05 23:08:44,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:08:44
[2026-06-05 23:08:44,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:08:45,242.242 INFO    ] Initializing speech engine...
[2026-06-05 23:08:45,252.252 INFO    ] 2026-06-05 23:08:45
[2026-06-05 23:08:45,512.512 INFO    ] 2026-06-05 23:08:45
[2026-06-05 23:08:45,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:08:45,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:08:45,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:08:45,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:08:45,981.981 INFO    ] time= 05/06/2026 23:08:45
[2026-06-05 23:08:46,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:08:46,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:08:46,190.190 INFO    ] No existing commands found in stream
[2026-06-05 23:08:51,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:08:51,210.210 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-05 23:08:54,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:08:54,300.300 INFO    ] Checking for system updates...
[2026-06-05 23:08:54,336.336 INFO    ] 200
[2026-06-05 23:08:54,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:54,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:08:54,401.401 INFO    ] No update needed
[2026-06-05 23:08:54,403.403 INFO    ] Checking for camera pi updates...
[2026-06-05 23:08:54,436.436 INFO    ] 200
[2026-06-05 23:08:54,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:08:54,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:08:54,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:08:54,526.526 INFO    ] No camera update needed
[2026-06-05 23:08:54,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:08:54,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:08:54,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:08:54,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:08:56,581.581 INFO    ] ================================================
[2026-06-05 23:08:56,598.598 INFO    ] Launching Daemon at Fri Jun  5 23:08:56 IST 2026
[2026-06-05 23:08:56,609.609 INFO    ] ================================================
[2026-06-05 23:08:57,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:08:57
[2026-06-05 23:08:57,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:08:58,048.048 INFO    ] Initializing speech engine...
[2026-06-05 23:08:58,056.056 INFO    ] 2026-06-05 23:08:58
[2026-06-05 23:08:58,316.316 INFO    ] 2026-06-05 23:08:58
[2026-06-05 23:08:58,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:08:58,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:08:58,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:08:58,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:08:58,798.798 INFO    ] time= 05/06/2026 23:08:58
[2026-06-05 23:08:58,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:08:58,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:08:58,986.986 INFO    ] No existing commands found in stream
[2026-06-05 23:09:04,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:09:04,017.017 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-05 23:09:07,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:09:07,625.625 INFO    ] Checking for system updates...
[2026-06-05 23:09:07,662.662 INFO    ] 200
[2026-06-05 23:09:07,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:07,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:09:07,737.737 INFO    ] No update needed
[2026-06-05 23:09:07,739.739 INFO    ] Checking for camera pi updates...
[2026-06-05 23:09:07,773.773 INFO    ] 200
[2026-06-05 23:09:07,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:07,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:09:07,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:09:07,852.852 INFO    ] No camera update needed
[2026-06-05 23:09:07,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:09:07,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:09:07,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:09:07,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:09:09,909.909 INFO    ] ================================================
[2026-06-05 23:09:09,924.924 INFO    ] Launching Daemon at Fri Jun  5 23:09:09 IST 2026
[2026-06-05 23:09:09,936.936 INFO    ] ================================================
[2026-06-05 23:09:10,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:09:10
[2026-06-05 23:09:11,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:09:11,381.381 INFO    ] Initializing speech engine...
[2026-06-05 23:09:11,391.391 INFO    ] 2026-06-05 23:09:11
[2026-06-05 23:09:11,648.648 INFO    ] 2026-06-05 23:09:11
[2026-06-05 23:09:11,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:09:11,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:09:11,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:09:12,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:09:12,045.045 INFO    ] time= 05/06/2026 23:09:12
[2026-06-05 23:09:12,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:09:12,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:09:12,244.244 INFO    ] No existing commands found in stream
[2026-06-05 23:09:17,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:09:17,266.266 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 23:09:19,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:09:19,381.381 INFO    ] Checking for system updates...
[2026-06-05 23:09:19,420.420 INFO    ] 200
[2026-06-05 23:09:19,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:19,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:09:19,488.488 INFO    ] No update needed
[2026-06-05 23:09:19,491.491 INFO    ] Checking for camera pi updates...
[2026-06-05 23:09:19,527.527 INFO    ] 200
[2026-06-05 23:09:19,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:19,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:09:19,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:09:19,721.721 INFO    ] No camera update needed
[2026-06-05 23:09:19,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:09:19,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:09:19,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:09:19,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:09:21,777.777 INFO    ] ================================================
[2026-06-05 23:09:21,792.792 INFO    ] Launching Daemon at Fri Jun  5 23:09:21 IST 2026
[2026-06-05 23:09:21,804.804 INFO    ] ================================================
[2026-06-05 23:09:22,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:09:22
[2026-06-05 23:09:22,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:09:23,262.262 INFO    ] Initializing speech engine...
[2026-06-05 23:09:23,274.274 INFO    ] 2026-06-05 23:09:23
[2026-06-05 23:09:23,549.549 INFO    ] 2026-06-05 23:09:23
[2026-06-05 23:09:23,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:09:23,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:09:23,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:09:24,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:09:24,116.116 INFO    ] time= 05/06/2026 23:09:24
[2026-06-05 23:09:24,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:09:24,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:09:24,282.282 INFO    ] No existing commands found in stream
[2026-06-05 23:09:29,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:09:29,301.301 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-05 23:09:33,212.212 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:09:33,216.216 INFO    ] Checking for system updates...
[2026-06-05 23:09:33,253.253 INFO    ] 200
[2026-06-05 23:09:33,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:33,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:09:33,314.314 INFO    ] No update needed
[2026-06-05 23:09:33,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 23:09:33,351.351 INFO    ] 200
[2026-06-05 23:09:33,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:33,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:09:33,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:09:33,457.457 INFO    ] No camera update needed
[2026-06-05 23:09:33,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:09:33,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:09:33,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:09:33,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:09:35,512.512 INFO    ] ================================================
[2026-06-05 23:09:35,528.528 INFO    ] Launching Daemon at Fri Jun  5 23:09:35 IST 2026
[2026-06-05 23:09:35,539.539 INFO    ] ================================================
[2026-06-05 23:09:36,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:09:36
[2026-06-05 23:09:36,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:09:36,961.961 INFO    ] Initializing speech engine...
[2026-06-05 23:09:36,972.972 INFO    ] 2026-06-05 23:09:36
[2026-06-05 23:09:37,222.222 INFO    ] 2026-06-05 23:09:37
[2026-06-05 23:09:37,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:09:37,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:09:37,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:09:37,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:09:37,690.690 INFO    ] time= 05/06/2026 23:09:37
[2026-06-05 23:09:37,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:09:37,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:09:37,900.900 INFO    ] No existing commands found in stream
[2026-06-05 23:09:42,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:09:42,930.930 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 23:09:43,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:09:43,888.888 INFO    ] Checking for system updates...
[2026-06-05 23:09:43,926.926 INFO    ] 200
[2026-06-05 23:09:43,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:43,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:09:43,983.983 INFO    ] No update needed
[2026-06-05 23:09:43,986.986 INFO    ] Checking for camera pi updates...
[2026-06-05 23:09:44,025.025 INFO    ] 200
[2026-06-05 23:09:44,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:44,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:09:44,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:09:44,121.121 INFO    ] No camera update needed
[2026-06-05 23:09:44,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:09:44,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:09:44,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:09:44,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:09:46,176.176 INFO    ] ================================================
[2026-06-05 23:09:46,192.192 INFO    ] Launching Daemon at Fri Jun  5 23:09:46 IST 2026
[2026-06-05 23:09:46,204.204 INFO    ] ================================================
[2026-06-05 23:09:46,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:09:46
[2026-06-05 23:09:47,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:09:47,662.662 INFO    ] Initializing speech engine...
[2026-06-05 23:09:47,685.685 INFO    ] 2026-06-05 23:09:47
[2026-06-05 23:09:47,942.942 INFO    ] 2026-06-05 23:09:47
[2026-06-05 23:09:47,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:09:48,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:09:48,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:09:48,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:09:48,320.320 INFO    ] time= 05/06/2026 23:09:48
[2026-06-05 23:09:48,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:09:48,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:09:48,509.509 INFO    ] No existing commands found in stream
[2026-06-05 23:09:53,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:09:53,532.532 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-05 23:09:54,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:09:54,364.364 INFO    ] Checking for system updates...
[2026-06-05 23:09:54,404.404 INFO    ] 200
[2026-06-05 23:09:54,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:54,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:09:54,470.470 INFO    ] No update needed
[2026-06-05 23:09:54,472.472 INFO    ] Checking for camera pi updates...
[2026-06-05 23:09:54,506.506 INFO    ] 200
[2026-06-05 23:09:54,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:09:54,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:09:54,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:09:54,619.619 INFO    ] No camera update needed
[2026-06-05 23:09:54,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:09:54,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:09:54,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:09:54,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:09:56,673.673 INFO    ] ================================================
[2026-06-05 23:09:56,689.689 INFO    ] Launching Daemon at Fri Jun  5 23:09:56 IST 2026
[2026-06-05 23:09:56,700.700 INFO    ] ================================================
[2026-06-05 23:09:57,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:09:57
[2026-06-05 23:09:57,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:09:58,144.144 INFO    ] Initializing speech engine...
[2026-06-05 23:09:58,164.164 INFO    ] 2026-06-05 23:09:58
[2026-06-05 23:09:58,440.440 INFO    ] 2026-06-05 23:09:58
[2026-06-05 23:09:58,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:09:58,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:09:58,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:09:58,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:09:58,962.962 INFO    ] time= 05/06/2026 23:09:58
[2026-06-05 23:09:59,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:09:59,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:09:59,173.173 INFO    ] No existing commands found in stream
[2026-06-05 23:10:04,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:10:04,196.196 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 23:10:08,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:10:08,541.541 INFO    ] Checking for system updates...
[2026-06-05 23:10:08,579.579 INFO    ] 200
[2026-06-05 23:10:08,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:08,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:10:08,646.646 INFO    ] No update needed
[2026-06-05 23:10:08,649.649 INFO    ] Checking for camera pi updates...
[2026-06-05 23:10:08,689.689 INFO    ] 200
[2026-06-05 23:10:08,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:08,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:10:08,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:10:08,770.770 INFO    ] No camera update needed
[2026-06-05 23:10:08,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:10:08,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:10:08,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:10:08,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:10:10,828.828 INFO    ] ================================================
[2026-06-05 23:10:10,844.844 INFO    ] Launching Daemon at Fri Jun  5 23:10:10 IST 2026
[2026-06-05 23:10:10,856.856 INFO    ] ================================================
[2026-06-05 23:10:11,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:10:11
[2026-06-05 23:10:12,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:10:12,276.276 INFO    ] Initializing speech engine...
[2026-06-05 23:10:12,285.285 INFO    ] 2026-06-05 23:10:12
[2026-06-05 23:10:12,575.575 INFO    ] 2026-06-05 23:10:12
[2026-06-05 23:10:12,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:10:12,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:10:12,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:10:12,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:10:12,989.989 INFO    ] time= 05/06/2026 23:10:12
[2026-06-05 23:10:12,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:10:13,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:10:13,154.154 INFO    ] No existing commands found in stream
[2026-06-05 23:10:18,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:10:18,180.180 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-05 23:10:20,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:10:20,240.240 INFO    ] Checking for system updates...
[2026-06-05 23:10:20,280.280 INFO    ] 200
[2026-06-05 23:10:20,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:20,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:10:20,344.344 INFO    ] No update needed
[2026-06-05 23:10:20,346.346 INFO    ] Checking for camera pi updates...
[2026-06-05 23:10:20,383.383 INFO    ] 200
[2026-06-05 23:10:20,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:20,431.431 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:10:20,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:10:20,479.479 INFO    ] No camera update needed
[2026-06-05 23:10:20,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:10:20,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:10:20,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:10:20,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:10:22,535.535 INFO    ] ================================================
[2026-06-05 23:10:22,551.551 INFO    ] Launching Daemon at Fri Jun  5 23:10:22 IST 2026
[2026-06-05 23:10:22,563.563 INFO    ] ================================================
[2026-06-05 23:10:23,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:10:23
[2026-06-05 23:10:23,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:10:23,970.970 INFO    ] Initializing speech engine...
[2026-06-05 23:10:23,988.988 INFO    ] 2026-06-05 23:10:23
[2026-06-05 23:10:24,270.270 INFO    ] 2026-06-05 23:10:24
[2026-06-05 23:10:24,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:10:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:10:24,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:10:24,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:10:24,682.682 INFO    ] time= 05/06/2026 23:10:24
[2026-06-05 23:10:24,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:10:24,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:10:24,769.769 INFO    ] No existing commands found in stream
[2026-06-05 23:10:29,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:10:29,807.807 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 23:10:33,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:10:33,071.071 INFO    ] Checking for system updates...
[2026-06-05 23:10:33,112.112 INFO    ] 200
[2026-06-05 23:10:33,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:33,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:10:33,179.179 INFO    ] No update needed
[2026-06-05 23:10:33,182.182 INFO    ] Checking for camera pi updates...
[2026-06-05 23:10:33,219.219 INFO    ] 200
[2026-06-05 23:10:33,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:33,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:10:33,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:10:33,317.317 INFO    ] No camera update needed
[2026-06-05 23:10:33,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:10:33,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:10:33,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:10:33,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:10:35,371.371 INFO    ] ================================================
[2026-06-05 23:10:35,386.386 INFO    ] Launching Daemon at Fri Jun  5 23:10:35 IST 2026
[2026-06-05 23:10:35,398.398 INFO    ] ================================================
[2026-06-05 23:10:35,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:10:35
[2026-06-05 23:10:36,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:10:36,854.854 INFO    ] Initializing speech engine...
[2026-06-05 23:10:36,863.863 INFO    ] 2026-06-05 23:10:36
[2026-06-05 23:10:37,124.124 INFO    ] 2026-06-05 23:10:37
[2026-06-05 23:10:37,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:10:37,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:10:37,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:10:37,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:10:37,610.610 INFO    ] time= 05/06/2026 23:10:37
[2026-06-05 23:10:37,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:10:37,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:10:37,824.824 INFO    ] No existing commands found in stream
[2026-06-05 23:10:42,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:10:42,839.839 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-05 23:10:45,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:10:45,530.530 INFO    ] Checking for system updates...
[2026-06-05 23:10:45,572.572 INFO    ] 200
[2026-06-05 23:10:45,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:45,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:10:45,632.632 INFO    ] No update needed
[2026-06-05 23:10:45,634.634 INFO    ] Checking for camera pi updates...
[2026-06-05 23:10:45,670.670 INFO    ] 200
[2026-06-05 23:10:45,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:45,715.715 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:10:45,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:10:45,768.768 INFO    ] No camera update needed
[2026-06-05 23:10:45,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:10:45,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:10:45,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:10:45,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:10:47,825.825 INFO    ] ================================================
[2026-06-05 23:10:47,841.841 INFO    ] Launching Daemon at Fri Jun  5 23:10:47 IST 2026
[2026-06-05 23:10:47,852.852 INFO    ] ================================================
[2026-06-05 23:10:48,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:10:48
[2026-06-05 23:10:49,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:10:49,258.258 INFO    ] Initializing speech engine...
[2026-06-05 23:10:49,277.277 INFO    ] 2026-06-05 23:10:49
[2026-06-05 23:10:49,536.536 INFO    ] 2026-06-05 23:10:49
[2026-06-05 23:10:49,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:10:49,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:10:49,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:10:49,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:10:50,043.043 INFO    ] time= 05/06/2026 23:10:49
[2026-06-05 23:10:50,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:10:50,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:10:50,229.229 INFO    ] No existing commands found in stream
[2026-06-05 23:10:55,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:10:55,254.254 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 23:10:57,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:10:57,841.841 INFO    ] Checking for system updates...
[2026-06-05 23:10:57,880.880 INFO    ] 200
[2026-06-05 23:10:57,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:57,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:10:57,944.944 INFO    ] No update needed
[2026-06-05 23:10:57,946.946 INFO    ] Checking for camera pi updates...
[2026-06-05 23:10:57,984.984 INFO    ] 200
[2026-06-05 23:10:57,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:10:58,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:10:58,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:10:58,091.091 INFO    ] No camera update needed
[2026-06-05 23:10:58,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:10:58,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:10:58,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:10:58,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:11:00,148.148 INFO    ] ================================================
[2026-06-05 23:11:00,163.163 INFO    ] Launching Daemon at Fri Jun  5 23:11:00 IST 2026
[2026-06-05 23:11:00,174.174 INFO    ] ================================================
[2026-06-05 23:11:00,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:11:00
[2026-06-05 23:11:01,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:11:01,861.861 INFO    ] Initializing speech engine...
[2026-06-05 23:11:01,864.864 INFO    ] 2026-06-05 23:11:01
[2026-06-05 23:11:02,284.284 INFO    ] 2026-06-05 23:11:02
[2026-06-05 23:11:02,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:11:03,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:11:03,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:11:03,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:11:03,296.296 INFO    ] time= 05/06/2026 23:11:03
[2026-06-05 23:11:03,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:11:03,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:11:03,493.493 INFO    ] No existing commands found in stream
[2026-06-05 23:11:08,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:11:08,510.510 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 23:11:12,958.958 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:11:12,961.961 INFO    ] Checking for system updates...
[2026-06-05 23:11:12,999.999 INFO    ] 200
[2026-06-05 23:11:13,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:13,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:11:13,067.067 INFO    ] No update needed
[2026-06-05 23:11:13,070.070 INFO    ] Checking for camera pi updates...
[2026-06-05 23:11:13,104.104 INFO    ] 200
[2026-06-05 23:11:13,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:13,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:11:13,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:11:13,195.195 INFO    ] No camera update needed
[2026-06-05 23:11:13,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:11:13,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:11:13,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:11:13,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:11:15,252.252 INFO    ] ================================================
[2026-06-05 23:11:15,267.267 INFO    ] Launching Daemon at Fri Jun  5 23:11:15 IST 2026
[2026-06-05 23:11:15,279.279 INFO    ] ================================================
[2026-06-05 23:11:15,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:11:15
[2026-06-05 23:11:16,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:11:16,774.774 INFO    ] Initializing speech engine...
[2026-06-05 23:11:16,783.783 INFO    ] 2026-06-05 23:11:16
[2026-06-05 23:11:17,033.033 INFO    ] 2026-06-05 23:11:17
[2026-06-05 23:11:17,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:11:17,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:11:17,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:11:17,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:11:17,514.514 INFO    ] time= 05/06/2026 23:11:17
[2026-06-05 23:11:17,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:11:17,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:11:17,740.740 INFO    ] No existing commands found in stream
[2026-06-05 23:11:22,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:11:22,764.764 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-05 23:11:24,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:11:24,836.836 INFO    ] Checking for system updates...
[2026-06-05 23:11:24,872.872 INFO    ] 200
[2026-06-05 23:11:24,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:24,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:11:24,931.931 INFO    ] No update needed
[2026-06-05 23:11:24,933.933 INFO    ] Checking for camera pi updates...
[2026-06-05 23:11:24,968.968 INFO    ] 200
[2026-06-05 23:11:24,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:25,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:11:25,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:11:25,168.168 INFO    ] No camera update needed
[2026-06-05 23:11:25,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:11:25,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:11:25,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:11:25,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:11:27,227.227 INFO    ] ================================================
[2026-06-05 23:11:27,243.243 INFO    ] Launching Daemon at Fri Jun  5 23:11:27 IST 2026
[2026-06-05 23:11:27,254.254 INFO    ] ================================================
[2026-06-05 23:11:27,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:11:27
[2026-06-05 23:11:28,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:11:28,678.678 INFO    ] Initializing speech engine...
[2026-06-05 23:11:28,687.687 INFO    ] 2026-06-05 23:11:28
[2026-06-05 23:11:28,937.937 INFO    ] 2026-06-05 23:11:28
[2026-06-05 23:11:28,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:11:29,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:11:29,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:11:29,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:11:29,313.313 INFO    ] time= 05/06/2026 23:11:29
[2026-06-05 23:11:29,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:11:29,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:11:29,505.505 INFO    ] No existing commands found in stream
[2026-06-05 23:11:34,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:11:34,528.528 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 23:11:36,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:11:36,061.061 INFO    ] Checking for system updates...
[2026-06-05 23:11:36,099.099 INFO    ] 200
[2026-06-05 23:11:36,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:36,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:11:36,164.164 INFO    ] No update needed
[2026-06-05 23:11:36,166.166 INFO    ] Checking for camera pi updates...
[2026-06-05 23:11:36,204.204 INFO    ] 200
[2026-06-05 23:11:36,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:36,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:11:36,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:11:36,310.310 INFO    ] No camera update needed
[2026-06-05 23:11:36,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:11:36,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:11:36,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:11:36,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:11:38,366.366 INFO    ] ================================================
[2026-06-05 23:11:38,382.382 INFO    ] Launching Daemon at Fri Jun  5 23:11:38 IST 2026
[2026-06-05 23:11:38,394.394 INFO    ] ================================================
[2026-06-05 23:11:38,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:11:38
[2026-06-05 23:11:39,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:11:39,808.808 INFO    ] Initializing speech engine...
[2026-06-05 23:11:39,823.823 INFO    ] 2026-06-05 23:11:39
[2026-06-05 23:11:40,089.089 INFO    ] 2026-06-05 23:11:40
[2026-06-05 23:11:40,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:11:40,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:11:40,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:11:40,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:11:40,467.467 INFO    ] time= 05/06/2026 23:11:40
[2026-06-05 23:11:40,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:11:40,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:11:40,654.654 INFO    ] No existing commands found in stream
[2026-06-05 23:11:45,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:11:45,678.678 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 23:11:48,036.036 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:11:48,039.039 INFO    ] Checking for system updates...
[2026-06-05 23:11:48,081.081 INFO    ] 200
[2026-06-05 23:11:48,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:48,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:11:48,150.150 INFO    ] No update needed
[2026-06-05 23:11:48,153.153 INFO    ] Checking for camera pi updates...
[2026-06-05 23:11:48,195.195 INFO    ] 200
[2026-06-05 23:11:48,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:48,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:11:48,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:11:48,297.297 INFO    ] No camera update needed
[2026-06-05 23:11:48,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:11:48,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:11:48,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:11:48,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:11:50,357.357 INFO    ] ================================================
[2026-06-05 23:11:50,372.372 INFO    ] Launching Daemon at Fri Jun  5 23:11:50 IST 2026
[2026-06-05 23:11:50,384.384 INFO    ] ================================================
[2026-06-05 23:11:50,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:11:50
[2026-06-05 23:11:51,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:11:51,804.804 INFO    ] Initializing speech engine...
[2026-06-05 23:11:51,813.813 INFO    ] 2026-06-05 23:11:51
[2026-06-05 23:11:52,059.059 INFO    ] 2026-06-05 23:11:52
[2026-06-05 23:11:52,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:11:52,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:11:52,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:11:52,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:11:52,536.536 INFO    ] time= 05/06/2026 23:11:52
[2026-06-05 23:11:52,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:11:52,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:11:52,766.766 INFO    ] No existing commands found in stream
[2026-06-05 23:11:57,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:11:57,797.797 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 23:11:59,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:11:59,664.664 INFO    ] Checking for system updates...
[2026-06-05 23:11:59,700.700 INFO    ] 200
[2026-06-05 23:11:59,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:59,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:11:59,759.759 INFO    ] No update needed
[2026-06-05 23:11:59,761.761 INFO    ] Checking for camera pi updates...
[2026-06-05 23:11:59,796.796 INFO    ] 200
[2026-06-05 23:11:59,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:11:59,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:11:59,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:11:59,892.892 INFO    ] No camera update needed
[2026-06-05 23:11:59,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:11:59,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:11:59,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:11:59,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:12:01,962.962 INFO    ] ================================================
[2026-06-05 23:12:01,979.979 INFO    ] Launching Daemon at Fri Jun  5 23:12:01 IST 2026
[2026-06-05 23:12:01,991.991 INFO    ] ================================================
[2026-06-05 23:12:02,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:12:02
[2026-06-05 23:12:03,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:12:03,569.569 INFO    ] Initializing speech engine...
[2026-06-05 23:12:03,579.579 INFO    ] 2026-06-05 23:12:03
[2026-06-05 23:12:03,826.826 INFO    ] 2026-06-05 23:12:03
[2026-06-05 23:12:03,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:12:04,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:12:04,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:12:04,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:12:04,196.196 INFO    ] time= 05/06/2026 23:12:04
[2026-06-05 23:12:04,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:12:04,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:12:04,354.354 INFO    ] No existing commands found in stream
[2026-06-05 23:12:09,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:12:09,388.388 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 23:12:12,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:12:12,097.097 INFO    ] Checking for system updates...
[2026-06-05 23:12:12,138.138 INFO    ] 200
[2026-06-05 23:12:12,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:12:12,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:12:12,206.206 INFO    ] No update needed
[2026-06-05 23:12:12,208.208 INFO    ] Checking for camera pi updates...
[2026-06-05 23:12:12,247.247 INFO    ] 200
[2026-06-05 23:12:12,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:12:12,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:12:12,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:12:12,363.363 INFO    ] No camera update needed
[2026-06-05 23:12:12,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:12:12,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:12:12,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:12:12,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:12:14,423.423 INFO    ] ================================================
[2026-06-05 23:12:14,438.438 INFO    ] Launching Daemon at Fri Jun  5 23:12:14 IST 2026
[2026-06-05 23:12:14,449.449 INFO    ] ================================================
[2026-06-05 23:12:15,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:12:15
[2026-06-05 23:12:15,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:12:15,898.898 INFO    ] Initializing speech engine...
[2026-06-05 23:12:15,917.917 INFO    ] 2026-06-05 23:12:15
[2026-06-05 23:12:16,164.164 INFO    ] 2026-06-05 23:12:16
[2026-06-05 23:12:16,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:12:16,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:12:16,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:12:16,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:12:16,620.620 INFO    ] time= 05/06/2026 23:12:16
[2026-06-05 23:12:16,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:12:16,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:12:16,869.869 INFO    ] No existing commands found in stream
[2026-06-05 23:12:21,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:12:21,888.888 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 23:12:24,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:12:24,507.507 INFO    ] Checking for system updates...
[2026-06-05 23:12:24,543.543 INFO    ] 200
[2026-06-05 23:12:24,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:12:24,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:12:24,610.610 INFO    ] No update needed
[2026-06-05 23:12:24,612.612 INFO    ] Checking for camera pi updates...
[2026-06-05 23:12:24,646.646 INFO    ] 200
[2026-06-05 23:12:24,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:12:24,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:12:24,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:12:24,746.746 INFO    ] No camera update needed
[2026-06-05 23:12:24,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:12:24,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:12:24,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:12:24,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:12:26,802.802 INFO    ] ================================================
[2026-06-05 23:12:26,817.817 INFO    ] Launching Daemon at Fri Jun  5 23:12:26 IST 2026
[2026-06-05 23:12:26,828.828 INFO    ] ================================================
[2026-06-05 23:12:27,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:12:27
[2026-06-05 23:12:27,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:12:28,223.223 INFO    ] Initializing speech engine...
[2026-06-05 23:12:28,231.231 INFO    ] 2026-06-05 23:12:28
[2026-06-05 23:12:28,506.506 INFO    ] 2026-06-05 23:12:28
[2026-06-05 23:12:28,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:12:28,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:12:28,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:12:28,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:12:28,993.993 INFO    ] time= 05/06/2026 23:12:28
[2026-06-05 23:12:29,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:12:29,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:12:29,223.223 INFO    ] No existing commands found in stream
[2026-06-05 23:12:34,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:12:34,247.247 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-05 23:12:34,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:12:34,673.673 INFO    ] Checking for system updates...
[2026-06-05 23:12:34,709.709 INFO    ] 200
[2026-06-05 23:12:34,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:12:34,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:12:34,767.767 INFO    ] No update needed
[2026-06-05 23:12:34,770.770 INFO    ] Checking for camera pi updates...
[2026-06-05 23:12:34,804.804 INFO    ] 200
[2026-06-05 23:12:34,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:12:34,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:12:34,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:12:34,895.895 INFO    ] No camera update needed
[2026-06-05 23:12:34,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:12:34,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:12:34,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:12:34,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:12:36,954.954 INFO    ] ================================================
[2026-06-05 23:12:36,969.969 INFO    ] Launching Daemon at Fri Jun  5 23:12:36 IST 2026
[2026-06-05 23:12:36,980.980 INFO    ] ================================================
[2026-06-05 23:12:37,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:12:37
[2026-06-05 23:12:38,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:12:38,384.384 INFO    ] Initializing speech engine...
[2026-06-05 23:12:38,391.391 INFO    ] 2026-06-05 23:12:38
[2026-06-05 23:12:38,697.697 INFO    ] 2026-06-05 23:12:38
[2026-06-05 23:12:38,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:12:38,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:12:38,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:12:39,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:12:39,071.071 INFO    ] time= 05/06/2026 23:12:39
[2026-06-05 23:12:39,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:12:39,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:12:39,239.239 INFO    ] No existing commands found in stream
[2026-06-05 23:12:44,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:12:44,267.267 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 23:12:48,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:12:48,596.596 INFO    ] Checking for system updates...
[2026-06-05 23:12:48,633.633 INFO    ] 200
[2026-06-05 23:12:48,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:12:48,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:12:48,699.699 INFO    ] No update needed
[2026-06-05 23:12:48,702.702 INFO    ] Checking for camera pi updates...
[2026-06-05 23:12:48,743.743 INFO    ] 200
[2026-06-05 23:12:48,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:12:48,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:12:48,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:12:48,863.863 INFO    ] No camera update needed
[2026-06-05 23:12:48,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:12:48,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:12:48,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:12:48,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:12:50,920.920 INFO    ] ================================================
[2026-06-05 23:12:50,935.935 INFO    ] Launching Daemon at Fri Jun  5 23:12:50 IST 2026
[2026-06-05 23:12:50,946.946 INFO    ] ================================================
[2026-06-05 23:12:51,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:12:51
[2026-06-05 23:12:52,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:12:52,382.382 INFO    ] Initializing speech engine...
[2026-06-05 23:12:52,392.392 INFO    ] 2026-06-05 23:12:52
[2026-06-05 23:12:52,652.652 INFO    ] 2026-06-05 23:12:52
[2026-06-05 23:12:52,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:12:52,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:12:52,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:12:53,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:12:53,175.175 INFO    ] time= 05/06/2026 23:12:53
[2026-06-05 23:12:53,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:12:53,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:12:53,316.316 INFO    ] No existing commands found in stream
[2026-06-05 23:12:58,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:12:58,340.340 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 23:12:59,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:12:59,822.822 INFO    ] Checking for system updates...
[2026-06-05 23:12:59,860.860 INFO    ] 200
[2026-06-05 23:12:59,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:12:59,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:12:59,925.925 INFO    ] No update needed
[2026-06-05 23:12:59,928.928 INFO    ] Checking for camera pi updates...
[2026-06-05 23:12:59,961.961 INFO    ] 200
[2026-06-05 23:12:59,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:00,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:13:00,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:13:00,073.073 INFO    ] No camera update needed
[2026-06-05 23:13:00,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:13:00,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:13:00,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:13:00,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:13:02,132.132 INFO    ] ================================================
[2026-06-05 23:13:02,152.152 INFO    ] Launching Daemon at Fri Jun  5 23:13:02 IST 2026
[2026-06-05 23:13:02,168.168 INFO    ] ================================================
[2026-06-05 23:13:02,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:13:02
[2026-06-05 23:13:03,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:13:03,759.759 INFO    ] Initializing speech engine...
[2026-06-05 23:13:03,769.769 INFO    ] 2026-06-05 23:13:03
[2026-06-05 23:13:04,034.034 INFO    ] 2026-06-05 23:13:04
[2026-06-05 23:13:04,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:13:04,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:13:04,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:13:04,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:13:04,502.502 INFO    ] time= 05/06/2026 23:13:04
[2026-06-05 23:13:04,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:13:04,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:13:04,714.714 INFO    ] No existing commands found in stream
[2026-06-05 23:13:09,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:13:09,750.750 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 23:13:10,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:13:10,369.369 INFO    ] Checking for system updates...
[2026-06-05 23:13:10,406.406 INFO    ] 200
[2026-06-05 23:13:10,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:10,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:13:10,463.463 INFO    ] No update needed
[2026-06-05 23:13:10,466.466 INFO    ] Checking for camera pi updates...
[2026-06-05 23:13:10,501.501 INFO    ] 200
[2026-06-05 23:13:10,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:10,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:13:10,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:13:10,602.602 INFO    ] No camera update needed
[2026-06-05 23:13:10,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:13:10,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:13:10,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:13:10,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:13:12,661.661 INFO    ] ================================================
[2026-06-05 23:13:12,677.677 INFO    ] Launching Daemon at Fri Jun  5 23:13:12 IST 2026
[2026-06-05 23:13:12,689.689 INFO    ] ================================================
[2026-06-05 23:13:13,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:13:13
[2026-06-05 23:13:13,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:13:14,111.111 INFO    ] Initializing speech engine...
[2026-06-05 23:13:14,129.129 INFO    ] 2026-06-05 23:13:14
[2026-06-05 23:13:14,402.402 INFO    ] 2026-06-05 23:13:14
[2026-06-05 23:13:14,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:13:14,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:13:14,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:13:14,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:13:14,821.821 INFO    ] time= 05/06/2026 23:13:14
[2026-06-05 23:13:14,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:13:14,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:13:14,986.986 INFO    ] No existing commands found in stream
[2026-06-05 23:13:20,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:13:20,019.019 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-05 23:13:21,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:13:21,905.905 INFO    ] Checking for system updates...
[2026-06-05 23:13:21,947.947 INFO    ] 200
[2026-06-05 23:13:21,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:22,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:13:22,005.005 INFO    ] No update needed
[2026-06-05 23:13:22,007.007 INFO    ] Checking for camera pi updates...
[2026-06-05 23:13:22,041.041 INFO    ] 200
[2026-06-05 23:13:22,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:22,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:13:22,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:13:22,133.133 INFO    ] No camera update needed
[2026-06-05 23:13:22,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:13:22,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:13:22,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:13:22,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:13:24,190.190 INFO    ] ================================================
[2026-06-05 23:13:24,206.206 INFO    ] Launching Daemon at Fri Jun  5 23:13:24 IST 2026
[2026-06-05 23:13:24,217.217 INFO    ] ================================================
[2026-06-05 23:13:24,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:13:24
[2026-06-05 23:13:25,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:13:25,639.639 INFO    ] Initializing speech engine...
[2026-06-05 23:13:25,647.647 INFO    ] 2026-06-05 23:13:25
[2026-06-05 23:13:25,922.922 INFO    ] 2026-06-05 23:13:25
[2026-06-05 23:13:25,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:13:26,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:13:26,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:13:26,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:13:26,364.364 INFO    ] time= 05/06/2026 23:13:26
[2026-06-05 23:13:26,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:13:26,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:13:26,516.516 INFO    ] No existing commands found in stream
[2026-06-05 23:13:31,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:13:31,531.531 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-05 23:13:34,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:13:34,558.558 INFO    ] Checking for system updates...
[2026-06-05 23:13:34,598.598 INFO    ] 200
[2026-06-05 23:13:34,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:34,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:13:34,656.656 INFO    ] No update needed
[2026-06-05 23:13:34,658.658 INFO    ] Checking for camera pi updates...
[2026-06-05 23:13:34,692.692 INFO    ] 200
[2026-06-05 23:13:34,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:34,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:13:34,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:13:34,803.803 INFO    ] No camera update needed
[2026-06-05 23:13:34,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:13:34,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:13:34,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:13:34,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:13:36,859.859 INFO    ] ================================================
[2026-06-05 23:13:36,875.875 INFO    ] Launching Daemon at Fri Jun  5 23:13:36 IST 2026
[2026-06-05 23:13:36,887.887 INFO    ] ================================================
[2026-06-05 23:13:37,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:13:37
[2026-06-05 23:13:38,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:13:38,431.431 INFO    ] Initializing speech engine...
[2026-06-05 23:13:38,436.436 INFO    ] 2026-06-05 23:13:38
[2026-06-05 23:13:38,685.685 INFO    ] 2026-06-05 23:13:38
[2026-06-05 23:13:38,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:13:38,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:13:38,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:13:39,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:13:39,197.197 INFO    ] time= 05/06/2026 23:13:39
[2026-06-05 23:13:39,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:13:39,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:13:39,383.383 INFO    ] No existing commands found in stream
[2026-06-05 23:13:44,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:13:44,413.413 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-05 23:13:45,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:13:45,591.591 INFO    ] Checking for system updates...
[2026-06-05 23:13:45,631.631 INFO    ] 200
[2026-06-05 23:13:45,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:45,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:13:45,689.689 INFO    ] No update needed
[2026-06-05 23:13:45,691.691 INFO    ] Checking for camera pi updates...
[2026-06-05 23:13:45,725.725 INFO    ] 200
[2026-06-05 23:13:45,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:45,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:13:45,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:13:45,819.819 INFO    ] No camera update needed
[2026-06-05 23:13:45,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:13:45,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:13:45,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:13:45,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:13:47,876.876 INFO    ] ================================================
[2026-06-05 23:13:47,892.892 INFO    ] Launching Daemon at Fri Jun  5 23:13:47 IST 2026
[2026-06-05 23:13:47,903.903 INFO    ] ================================================
[2026-06-05 23:13:48,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:13:48
[2026-06-05 23:13:49,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:13:49,431.431 INFO    ] Initializing speech engine...
[2026-06-05 23:13:49,444.444 INFO    ] 2026-06-05 23:13:49
[2026-06-05 23:13:49,710.710 INFO    ] 2026-06-05 23:13:49
[2026-06-05 23:13:49,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:13:50,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:13:50,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:13:50,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:13:50,208.208 INFO    ] time= 05/06/2026 23:13:50
[2026-06-05 23:13:50,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:13:50,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:13:50,414.414 INFO    ] No existing commands found in stream
[2026-06-05 23:13:55,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:13:55,442.442 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-05 23:13:56,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:13:56,583.583 INFO    ] Checking for system updates...
[2026-06-05 23:13:56,620.620 INFO    ] 200
[2026-06-05 23:13:56,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:56,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:13:56,688.688 INFO    ] No update needed
[2026-06-05 23:13:56,691.691 INFO    ] Checking for camera pi updates...
[2026-06-05 23:13:56,724.724 INFO    ] 200
[2026-06-05 23:13:56,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:13:56,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:13:56,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:13:56,820.820 INFO    ] No camera update needed
[2026-06-05 23:13:56,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:13:56,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:13:56,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:13:56,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:13:58,877.877 INFO    ] ================================================
[2026-06-05 23:13:58,892.892 INFO    ] Launching Daemon at Fri Jun  5 23:13:58 IST 2026
[2026-06-05 23:13:58,903.903 INFO    ] ================================================
[2026-06-05 23:13:59,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:13:59
[2026-06-05 23:14:00,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:14:00,369.369 INFO    ] Initializing speech engine...
[2026-06-05 23:14:00,392.392 INFO    ] 2026-06-05 23:14:00
[2026-06-05 23:14:00,649.649 INFO    ] 2026-06-05 23:14:00
[2026-06-05 23:14:00,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:14:02,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:14:02,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:14:02,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:14:02,912.912 INFO    ] time= 05/06/2026 23:14:02
[2026-06-05 23:14:02,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:14:02,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:14:03,050.050 INFO    ] No existing commands found in stream
[2026-06-05 23:14:08,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:14:08,089.089 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-05 23:14:10,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:14:10,304.304 INFO    ] Checking for system updates...
[2026-06-05 23:14:10,340.340 INFO    ] 200
[2026-06-05 23:14:10,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:14:10,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:14:10,398.398 INFO    ] No update needed
[2026-06-05 23:14:10,401.401 INFO    ] Checking for camera pi updates...
[2026-06-05 23:14:10,436.436 INFO    ] 200
[2026-06-05 23:14:10,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:14:10,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:14:10,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:14:10,536.536 INFO    ] No camera update needed
[2026-06-05 23:14:10,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:14:10,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:14:10,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:14:10,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:14:12,591.591 INFO    ] ================================================
[2026-06-05 23:14:12,606.606 INFO    ] Launching Daemon at Fri Jun  5 23:14:12 IST 2026
[2026-06-05 23:14:12,617.617 INFO    ] ================================================
[2026-06-05 23:14:13,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:14:13
[2026-06-05 23:14:13,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:14:14,072.072 INFO    ] Initializing speech engine...
[2026-06-05 23:14:14,079.079 INFO    ] 2026-06-05 23:14:14
[2026-06-05 23:14:14,354.354 INFO    ] 2026-06-05 23:14:14
[2026-06-05 23:14:14,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:14:14,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:14:14,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:14:14,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:14:14,825.825 INFO    ] time= 05/06/2026 23:14:14
[2026-06-05 23:14:14,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:14:14,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:14:14,950.950 INFO    ] No existing commands found in stream
[2026-06-05 23:14:19,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:14:19,967.967 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 23:14:24,164.164 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:14:24,166.166 INFO    ] Checking for system updates...
[2026-06-05 23:14:24,202.202 INFO    ] 200
[2026-06-05 23:14:24,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:14:24,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:14:24,261.261 INFO    ] No update needed
[2026-06-05 23:14:24,263.263 INFO    ] Checking for camera pi updates...
[2026-06-05 23:14:24,310.310 INFO    ] 200
[2026-06-05 23:14:24,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:14:24,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:14:24,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:14:24,405.405 INFO    ] No camera update needed
[2026-06-05 23:14:24,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:14:24,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:14:24,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:14:24,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:14:26,461.461 INFO    ] ================================================
[2026-06-05 23:14:26,476.476 INFO    ] Launching Daemon at Fri Jun  5 23:14:26 IST 2026
[2026-06-05 23:14:26,486.486 INFO    ] ================================================
[2026-06-05 23:14:27,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:14:27
[2026-06-05 23:14:27,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:14:28,134.134 INFO    ] Initializing speech engine...
[2026-06-05 23:14:28,141.141 INFO    ] 2026-06-05 23:14:28
[2026-06-05 23:14:28,403.403 INFO    ] 2026-06-05 23:14:28
[2026-06-05 23:14:28,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:14:28,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:14:28,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:14:28,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:14:28,831.831 INFO    ] time= 05/06/2026 23:14:28
[2026-06-05 23:14:28,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:14:28,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:14:29,020.020 INFO    ] No existing commands found in stream
[2026-06-05 23:14:34,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:14:34,048.048 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-05 23:14:37,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:14:37,338.338 INFO    ] Checking for system updates...
[2026-06-05 23:14:37,379.379 INFO    ] 200
[2026-06-05 23:14:37,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:14:37,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:14:37,437.437 INFO    ] No update needed
[2026-06-05 23:14:37,440.440 INFO    ] Checking for camera pi updates...
[2026-06-05 23:14:37,474.474 INFO    ] 200
[2026-06-05 23:14:37,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:14:37,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:14:37,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:14:37,572.572 INFO    ] No camera update needed
[2026-06-05 23:14:37,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:14:37,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:14:37,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:14:37,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:14:39,628.628 INFO    ] ================================================
[2026-06-05 23:14:39,643.643 INFO    ] Launching Daemon at Fri Jun  5 23:14:39 IST 2026
[2026-06-05 23:14:39,654.654 INFO    ] ================================================
[2026-06-05 23:14:40,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:14:40
[2026-06-05 23:14:40,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:14:41,229.229 INFO    ] Initializing speech engine...
[2026-06-05 23:14:41,242.242 INFO    ] 2026-06-05 23:14:41
[2026-06-05 23:14:41,515.515 INFO    ] 2026-06-05 23:14:41
[2026-06-05 23:14:41,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:14:41,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:14:41,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:14:42,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:14:42,079.079 INFO    ] time= 05/06/2026 23:14:42
[2026-06-05 23:14:42,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:14:42,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:14:42,243.243 INFO    ] No existing commands found in stream
[2026-06-05 23:14:47,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:14:47,270.270 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-05 23:14:48,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:14:48,284.284 INFO    ] Checking for system updates...
[2026-06-05 23:14:48,326.326 INFO    ] 200
[2026-06-05 23:14:48,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:14:48,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:14:48,385.385 INFO    ] No update needed
[2026-06-05 23:14:48,387.387 INFO    ] Checking for camera pi updates...
[2026-06-05 23:14:48,425.425 INFO    ] 200
[2026-06-05 23:14:48,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:14:48,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:14:48,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:14:48,522.522 INFO    ] No camera update needed
[2026-06-05 23:14:48,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:14:48,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:14:48,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:14:48,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:14:50,579.579 INFO    ] ================================================
[2026-06-05 23:14:50,593.593 INFO    ] Launching Daemon at Fri Jun  5 23:14:50 IST 2026
[2026-06-05 23:14:50,604.604 INFO    ] ================================================
[2026-06-05 23:14:51,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:14:51
[2026-06-05 23:14:51,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:14:52,260.260 INFO    ] Initializing speech engine...
[2026-06-05 23:14:52,271.271 INFO    ] 2026-06-05 23:14:52
[2026-06-05 23:14:52,588.588 INFO    ] 2026-06-05 23:14:52
[2026-06-05 23:14:52,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:14:52,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:14:52,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:14:53,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:14:53,092.092 INFO    ] time= 05/06/2026 23:14:53
[2026-06-05 23:14:53,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:14:53,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:14:53,262.262 INFO    ] No existing commands found in stream
[2026-06-05 23:14:58,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:14:58,301.301 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-05 23:15:00,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:15:00,691.691 INFO    ] Checking for system updates...
[2026-06-05 23:15:00,733.733 INFO    ] 200
[2026-06-05 23:15:00,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:00,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:00,793.793 INFO    ] No update needed
[2026-06-05 23:15:00,797.797 INFO    ] Checking for camera pi updates...
[2026-06-05 23:15:00,832.832 INFO    ] 200
[2026-06-05 23:15:00,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:00,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:15:00,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:00,924.924 INFO    ] No camera update needed
[2026-06-05 23:15:00,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:15:00,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:15:00,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:15:00,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:15:03,009.009 INFO    ] ================================================
[2026-06-05 23:15:03,030.030 INFO    ] Launching Daemon at Fri Jun  5 23:15:03 IST 2026
[2026-06-05 23:15:03,046.046 INFO    ] ================================================
[2026-06-05 23:15:03,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:15:03
[2026-06-05 23:15:04,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:15:04,700.700 INFO    ] Initializing speech engine...
[2026-06-05 23:15:04,706.706 INFO    ] 2026-06-05 23:15:04
[2026-06-05 23:15:04,957.957 INFO    ] 2026-06-05 23:15:04
[2026-06-05 23:15:04,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:15:05,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:15:05,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:15:05,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:15:05,337.337 INFO    ] time= 05/06/2026 23:15:05
[2026-06-05 23:15:05,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:15:05,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:15:05,501.501 INFO    ] No existing commands found in stream
[2026-06-05 23:15:10,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:15:10,529.529 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 23:15:11,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:15:11,443.443 INFO    ] Checking for system updates...
[2026-06-05 23:15:11,480.480 INFO    ] 200
[2026-06-05 23:15:11,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:11,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:11,538.538 INFO    ] No update needed
[2026-06-05 23:15:11,540.540 INFO    ] Checking for camera pi updates...
[2026-06-05 23:15:11,577.577 INFO    ] 200
[2026-06-05 23:15:11,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:11,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:15:11,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:11,673.673 INFO    ] No camera update needed
[2026-06-05 23:15:11,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:15:11,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:15:11,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:15:11,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:15:13,730.730 INFO    ] ================================================
[2026-06-05 23:15:13,746.746 INFO    ] Launching Daemon at Fri Jun  5 23:15:13 IST 2026
[2026-06-05 23:15:13,757.757 INFO    ] ================================================
[2026-06-05 23:15:14,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:15:14
[2026-06-05 23:15:14,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:15:15,188.188 INFO    ] Initializing speech engine...
[2026-06-05 23:15:15,204.204 INFO    ] 2026-06-05 23:15:15
[2026-06-05 23:15:15,478.478 INFO    ] 2026-06-05 23:15:15
[2026-06-05 23:15:15,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:15:15,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:15:15,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:15:15,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:15:15,852.852 INFO    ] time= 05/06/2026 23:15:15
[2026-06-05 23:15:15,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:15:15,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:15:15,978.978 INFO    ] No existing commands found in stream
[2026-06-05 23:15:21,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:15:21,007.007 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 23:15:22,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:15:22,958.958 INFO    ] Checking for system updates...
[2026-06-05 23:15:22,999.999 INFO    ] 200
[2026-06-05 23:15:23,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:23,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:23,058.058 INFO    ] No update needed
[2026-06-05 23:15:23,061.061 INFO    ] Checking for camera pi updates...
[2026-06-05 23:15:23,096.096 INFO    ] 200
[2026-06-05 23:15:23,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:23,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:15:23,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:23,192.192 INFO    ] No camera update needed
[2026-06-05 23:15:23,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:15:23,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:15:23,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:15:23,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:15:25,252.252 INFO    ] ================================================
[2026-06-05 23:15:25,268.268 INFO    ] Launching Daemon at Fri Jun  5 23:15:25 IST 2026
[2026-06-05 23:15:25,279.279 INFO    ] ================================================
[2026-06-05 23:15:25,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:15:25
[2026-06-05 23:15:26,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:15:26,723.723 INFO    ] Initializing speech engine...
[2026-06-05 23:15:26,732.732 INFO    ] 2026-06-05 23:15:26
[2026-06-05 23:15:27,026.026 INFO    ] 2026-06-05 23:15:26
[2026-06-05 23:15:27,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:15:27,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:15:27,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:15:27,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:15:27,440.440 INFO    ] time= 05/06/2026 23:15:27
[2026-06-05 23:15:27,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:15:27,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:15:27,617.617 INFO    ] No existing commands found in stream
[2026-06-05 23:15:32,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:15:32,645.645 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-05 23:15:33,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:15:33,554.554 INFO    ] Checking for system updates...
[2026-06-05 23:15:33,590.590 INFO    ] 200
[2026-06-05 23:15:33,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:33,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:33,653.653 INFO    ] No update needed
[2026-06-05 23:15:33,656.656 INFO    ] Checking for camera pi updates...
[2026-06-05 23:15:33,689.689 INFO    ] 200
[2026-06-05 23:15:33,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:33,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:15:33,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:33,787.787 INFO    ] No camera update needed
[2026-06-05 23:15:33,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:15:33,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:15:33,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:15:33,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:15:35,844.844 INFO    ] ================================================
[2026-06-05 23:15:35,860.860 INFO    ] Launching Daemon at Fri Jun  5 23:15:35 IST 2026
[2026-06-05 23:15:35,871.871 INFO    ] ================================================
[2026-06-05 23:15:36,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:15:36
[2026-06-05 23:15:37,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:15:37,421.421 INFO    ] Initializing speech engine...
[2026-06-05 23:15:37,427.427 INFO    ] 2026-06-05 23:15:37
[2026-06-05 23:15:37,674.674 INFO    ] 2026-06-05 23:15:37
[2026-06-05 23:15:37,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:15:37,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:15:37,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:15:38,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:15:38,062.062 INFO    ] time= 05/06/2026 23:15:38
[2026-06-05 23:15:38,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:15:38,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:15:38,247.247 INFO    ] No existing commands found in stream
[2026-06-05 23:15:43,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:15:43,271.271 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 23:15:45,269.269 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:15:45,272.272 INFO    ] Checking for system updates...
[2026-06-05 23:15:45,307.307 INFO    ] 200
[2026-06-05 23:15:45,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:45,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:45,371.371 INFO    ] No update needed
[2026-06-05 23:15:45,373.373 INFO    ] Checking for camera pi updates...
[2026-06-05 23:15:45,407.407 INFO    ] 200
[2026-06-05 23:15:45,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:45,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:15:45,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:15:45,598.598 INFO    ] No camera update needed
[2026-06-05 23:15:45,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:15:45,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:15:45,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:15:45,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:15:47,655.655 INFO    ] ================================================
[2026-06-05 23:15:47,671.671 INFO    ] Launching Daemon at Fri Jun  5 23:15:47 IST 2026
[2026-06-05 23:15:47,682.682 INFO    ] ================================================
[2026-06-05 23:15:48,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:15:48
[2026-06-05 23:15:48,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:15:49,143.143 INFO    ] Initializing speech engine...
[2026-06-05 23:15:49,149.149 INFO    ] 2026-06-05 23:15:49
[2026-06-05 23:15:49,397.397 INFO    ] 2026-06-05 23:15:49
[2026-06-05 23:15:49,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:15:49,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:15:49,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:15:49,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:15:49,900.900 INFO    ] time= 05/06/2026 23:15:49
[2026-06-05 23:15:49,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:15:49,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:15:50,093.093 INFO    ] No existing commands found in stream
[2026-06-05 23:15:55,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:15:55,119.119 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 23:15:57,947.947 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:15:57,950.950 INFO    ] Checking for system updates...
[2026-06-05 23:15:57,986.986 INFO    ] 200
[2026-06-05 23:15:57,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:58,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:15:58,044.044 INFO    ] No update needed
[2026-06-05 23:15:58,047.047 INFO    ] Checking for camera pi updates...
[2026-06-05 23:15:58,082.082 INFO    ] 200
[2026-06-05 23:15:58,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:15:58,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:15:58,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:15:58,180.180 INFO    ] No camera update needed
[2026-06-05 23:15:58,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:15:58,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:15:58,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:15:58,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:16:00,236.236 INFO    ] ================================================
[2026-06-05 23:16:00,251.251 INFO    ] Launching Daemon at Fri Jun  5 23:16:00 IST 2026
[2026-06-05 23:16:00,262.262 INFO    ] ================================================
[2026-06-05 23:16:00,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:16:00
[2026-06-05 23:16:01,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:16:01,857.857 INFO    ] Initializing speech engine...
[2026-06-05 23:16:01,865.865 INFO    ] 2026-06-05 23:16:01
[2026-06-05 23:16:02,183.183 INFO    ] 2026-06-05 23:16:02
[2026-06-05 23:16:02,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:16:03,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:16:03,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:16:03,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:16:03,377.377 INFO    ] time= 05/06/2026 23:16:03
[2026-06-05 23:16:03,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:16:03,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:16:03,516.516 INFO    ] No existing commands found in stream
[2026-06-05 23:16:08,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:16:08,529.529 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 23:16:11,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:16:11,313.313 INFO    ] Checking for system updates...
[2026-06-05 23:16:11,350.350 INFO    ] 200
[2026-06-05 23:16:11,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:16:11,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:16:11,409.409 INFO    ] No update needed
[2026-06-05 23:16:11,411.411 INFO    ] Checking for camera pi updates...
[2026-06-05 23:16:11,445.445 INFO    ] 200
[2026-06-05 23:16:11,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:16:11,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:16:11,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:16:11,562.562 INFO    ] No camera update needed
[2026-06-05 23:16:11,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:16:11,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:16:11,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:16:11,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:16:13,618.618 INFO    ] ================================================
[2026-06-05 23:16:13,633.633 INFO    ] Launching Daemon at Fri Jun  5 23:16:13 IST 2026
[2026-06-05 23:16:13,644.644 INFO    ] ================================================
[2026-06-05 23:16:14,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:16:14
[2026-06-05 23:16:14,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:16:15,133.133 INFO    ] Initializing speech engine...
[2026-06-05 23:16:15,140.140 INFO    ] 2026-06-05 23:16:15
[2026-06-05 23:16:15,407.407 INFO    ] 2026-06-05 23:16:15
[2026-06-05 23:16:15,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:16:15,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:16:15,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:16:15,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:16:15,954.954 INFO    ] time= 05/06/2026 23:16:15
[2026-06-05 23:16:15,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:16:15,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:16:16,082.082 INFO    ] No existing commands found in stream
[2026-06-05 23:16:21,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:16:21,110.110 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-05 23:16:25,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:16:25,234.234 INFO    ] Checking for system updates...
[2026-06-05 23:16:25,274.274 INFO    ] 200
[2026-06-05 23:16:25,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:16:25,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:16:25,333.333 INFO    ] No update needed
[2026-06-05 23:16:25,336.336 INFO    ] Checking for camera pi updates...
[2026-06-05 23:16:25,370.370 INFO    ] 200
[2026-06-05 23:16:25,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:16:25,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:16:25,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:16:25,463.463 INFO    ] No camera update needed
[2026-06-05 23:16:25,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:16:25,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:16:25,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:16:25,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:16:27,519.519 INFO    ] ================================================
[2026-06-05 23:16:27,535.535 INFO    ] Launching Daemon at Fri Jun  5 23:16:27 IST 2026
[2026-06-05 23:16:27,545.545 INFO    ] ================================================
[2026-06-05 23:16:28,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:16:28
[2026-06-05 23:16:28,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:16:29,006.006 INFO    ] Initializing speech engine...
[2026-06-05 23:16:29,013.013 INFO    ] 2026-06-05 23:16:29
[2026-06-05 23:16:29,259.259 INFO    ] 2026-06-05 23:16:29
[2026-06-05 23:16:29,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:16:29,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:16:29,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:16:29,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:16:29,761.761 INFO    ] time= 05/06/2026 23:16:29
[2026-06-05 23:16:29,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:16:29,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:16:29,956.956 INFO    ] No existing commands found in stream
[2026-06-05 23:16:34,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:16:34,983.983 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 23:16:36,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:16:36,901.901 INFO    ] Checking for system updates...
[2026-06-05 23:16:36,940.940 INFO    ] 200
[2026-06-05 23:16:36,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:16:37,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:16:37,003.003 INFO    ] No update needed
[2026-06-05 23:16:37,006.006 INFO    ] Checking for camera pi updates...
[2026-06-05 23:16:37,047.047 INFO    ] 200
[2026-06-05 23:16:37,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:16:37,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:16:37,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:16:37,148.148 INFO    ] No camera update needed
[2026-06-05 23:16:37,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:16:37,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:16:37,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:16:37,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:16:39,212.212 INFO    ] ================================================
[2026-06-05 23:16:39,230.230 INFO    ] Launching Daemon at Fri Jun  5 23:16:39 IST 2026
[2026-06-05 23:16:39,242.242 INFO    ] ================================================
[2026-06-05 23:16:39,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:16:39
[2026-06-05 23:16:40,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:16:40,759.759 INFO    ] Initializing speech engine...
[2026-06-05 23:16:40,767.767 INFO    ] 2026-06-05 23:16:40
[2026-06-05 23:16:41,035.035 INFO    ] 2026-06-05 23:16:41
[2026-06-05 23:16:41,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:16:41,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:16:41,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:16:41,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:16:41,510.510 INFO    ] time= 05/06/2026 23:16:41
[2026-06-05 23:16:41,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:16:41,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:16:41,745.745 INFO    ] No existing commands found in stream
[2026-06-05 23:16:46,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:16:46,767.767 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-05 23:16:50,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:16:50,740.740 INFO    ] Checking for system updates...
[2026-06-05 23:16:50,778.778 INFO    ] 200
[2026-06-05 23:16:50,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:16:50,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:16:50,836.836 INFO    ] No update needed
[2026-06-05 23:16:50,839.839 INFO    ] Checking for camera pi updates...
[2026-06-05 23:16:50,875.875 INFO    ] 200
[2026-06-05 23:16:50,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:16:50,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:16:50,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:16:50,977.977 INFO    ] No camera update needed
[2026-06-05 23:16:50,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:16:50,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:16:50,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:16:50,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:16:53,033.033 INFO    ] ================================================
[2026-06-05 23:16:53,049.049 INFO    ] Launching Daemon at Fri Jun  5 23:16:53 IST 2026
[2026-06-05 23:16:53,060.060 INFO    ] ================================================
[2026-06-05 23:16:53,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:16:53
[2026-06-05 23:16:54,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:16:54,507.507 INFO    ] Initializing speech engine...
[2026-06-05 23:16:54,531.531 INFO    ] 2026-06-05 23:16:54
[2026-06-05 23:16:54,805.805 INFO    ] 2026-06-05 23:16:54
[2026-06-05 23:16:54,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:16:55,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:16:55,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:16:55,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:16:55,291.291 INFO    ] time= 05/06/2026 23:16:55
[2026-06-05 23:16:55,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:16:55,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:16:55,485.485 INFO    ] No existing commands found in stream
[2026-06-05 23:17:00,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:17:00,499.499 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 23:17:02,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:17:02,924.924 INFO    ] Checking for system updates...
[2026-06-05 23:17:02,960.960 INFO    ] 200
[2026-06-05 23:17:02,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:03,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:17:03,028.028 INFO    ] No update needed
[2026-06-05 23:17:03,031.031 INFO    ] Checking for camera pi updates...
[2026-06-05 23:17:03,068.068 INFO    ] 200
[2026-06-05 23:17:03,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:03,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:17:03,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:17:03,157.157 INFO    ] No camera update needed
[2026-06-05 23:17:03,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:17:03,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:17:03,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:17:03,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:17:05,212.212 INFO    ] ================================================
[2026-06-05 23:17:05,228.228 INFO    ] Launching Daemon at Fri Jun  5 23:17:05 IST 2026
[2026-06-05 23:17:05,239.239 INFO    ] ================================================
[2026-06-05 23:17:05,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:17:05
[2026-06-05 23:17:06,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:17:06,797.797 INFO    ] Initializing speech engine...
[2026-06-05 23:17:06,806.806 INFO    ] 2026-06-05 23:17:06
[2026-06-05 23:17:07,086.086 INFO    ] 2026-06-05 23:17:07
[2026-06-05 23:17:07,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:17:07,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:17:07,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:17:07,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:17:07,925.925 INFO    ] time= 05/06/2026 23:17:07
[2026-06-05 23:17:07,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:17:08,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:17:08,223.223 INFO    ] No existing commands found in stream
[2026-06-05 23:17:13,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:17:13,252.252 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 23:17:14,588.588 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:17:14,591.591 INFO    ] Checking for system updates...
[2026-06-05 23:17:14,631.631 INFO    ] 200
[2026-06-05 23:17:14,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:14,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:17:14,690.690 INFO    ] No update needed
[2026-06-05 23:17:14,693.693 INFO    ] Checking for camera pi updates...
[2026-06-05 23:17:14,730.730 INFO    ] 200
[2026-06-05 23:17:14,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:14,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:17:14,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:17:14,838.838 INFO    ] No camera update needed
[2026-06-05 23:17:14,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:17:14,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:17:14,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:17:14,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:17:16,897.897 INFO    ] ================================================
[2026-06-05 23:17:16,913.913 INFO    ] Launching Daemon at Fri Jun  5 23:17:16 IST 2026
[2026-06-05 23:17:16,924.924 INFO    ] ================================================
[2026-06-05 23:17:17,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:17:17
[2026-06-05 23:17:18,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:17:18,332.332 INFO    ] Initializing speech engine...
[2026-06-05 23:17:18,340.340 INFO    ] 2026-06-05 23:17:18
[2026-06-05 23:17:18,631.631 INFO    ] 2026-06-05 23:17:18
[2026-06-05 23:17:18,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:17:18,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:17:18,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:17:19,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:17:19,042.042 INFO    ] time= 05/06/2026 23:17:19
[2026-06-05 23:17:19,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:17:19,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:17:19,212.212 INFO    ] No existing commands found in stream
[2026-06-05 23:17:24,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:17:24,240.240 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 23:17:25,777.777 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:17:25,780.780 INFO    ] Checking for system updates...
[2026-06-05 23:17:25,816.816 INFO    ] 200
[2026-06-05 23:17:25,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:25,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:17:25,873.873 INFO    ] No update needed
[2026-06-05 23:17:25,876.876 INFO    ] Checking for camera pi updates...
[2026-06-05 23:17:25,910.910 INFO    ] 200
[2026-06-05 23:17:25,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:25,953.953 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:17:26,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:17:26,006.006 INFO    ] No camera update needed
[2026-06-05 23:17:26,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:17:26,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:17:26,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:17:26,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:17:28,061.061 INFO    ] ================================================
[2026-06-05 23:17:28,076.076 INFO    ] Launching Daemon at Fri Jun  5 23:17:28 IST 2026
[2026-06-05 23:17:28,087.087 INFO    ] ================================================
[2026-06-05 23:17:28,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:17:28
[2026-06-05 23:17:29,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:17:29,492.492 INFO    ] Initializing speech engine...
[2026-06-05 23:17:29,500.500 INFO    ] 2026-06-05 23:17:29
[2026-06-05 23:17:29,787.787 INFO    ] 2026-06-05 23:17:29
[2026-06-05 23:17:29,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:17:30,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:17:30,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:17:30,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:17:30,209.209 INFO    ] time= 05/06/2026 23:17:30
[2026-06-05 23:17:30,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:17:30,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:17:30,403.403 INFO    ] No existing commands found in stream
[2026-06-05 23:17:35,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:17:35,426.426 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-05 23:17:37,693.693 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:17:37,695.695 INFO    ] Checking for system updates...
[2026-06-05 23:17:37,732.732 INFO    ] 200
[2026-06-05 23:17:37,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:37,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:17:37,794.794 INFO    ] No update needed
[2026-06-05 23:17:37,797.797 INFO    ] Checking for camera pi updates...
[2026-06-05 23:17:37,833.833 INFO    ] 200
[2026-06-05 23:17:37,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:37,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:17:37,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:17:37,935.935 INFO    ] No camera update needed
[2026-06-05 23:17:37,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:17:37,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:17:37,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:17:37,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:17:39,989.989 INFO    ] ================================================
[2026-06-05 23:17:40,004.004 INFO    ] Launching Daemon at Fri Jun  5 23:17:39 IST 2026
[2026-06-05 23:17:40,015.015 INFO    ] ================================================
[2026-06-05 23:17:40,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:17:40
[2026-06-05 23:17:41,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:17:41,431.431 INFO    ] Initializing speech engine...
[2026-06-05 23:17:41,447.447 INFO    ] 2026-06-05 23:17:41
[2026-06-05 23:17:41,727.727 INFO    ] 2026-06-05 23:17:41
[2026-06-05 23:17:41,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:17:42,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:17:42,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:17:42,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:17:42,351.351 INFO    ] time= 05/06/2026 23:17:42
[2026-06-05 23:17:42,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:17:42,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:17:42,527.527 INFO    ] No existing commands found in stream
[2026-06-05 23:17:47,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:17:47,543.543 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 23:17:50,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:17:50,325.325 INFO    ] Checking for system updates...
[2026-06-05 23:17:50,390.390 INFO    ] 200
[2026-06-05 23:17:50,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:50,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:17:50,449.449 INFO    ] No update needed
[2026-06-05 23:17:50,455.455 INFO    ] Checking for camera pi updates...
[2026-06-05 23:17:50,490.490 INFO    ] 200
[2026-06-05 23:17:50,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:17:50,533.533 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:17:50,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:17:50,689.689 INFO    ] No camera update needed
[2026-06-05 23:17:50,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:17:50,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:17:50,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:17:50,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:17:52,746.746 INFO    ] ================================================
[2026-06-05 23:17:52,760.760 INFO    ] Launching Daemon at Fri Jun  5 23:17:52 IST 2026
[2026-06-05 23:17:52,772.772 INFO    ] ================================================
[2026-06-05 23:17:53,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:17:53
[2026-06-05 23:17:53,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:17:54,179.179 INFO    ] Initializing speech engine...
[2026-06-05 23:17:54,186.186 INFO    ] 2026-06-05 23:17:54
[2026-06-05 23:17:54,478.478 INFO    ] 2026-06-05 23:17:54
[2026-06-05 23:17:54,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:17:54,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:17:54,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:17:54,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:17:54,868.868 INFO    ] time= 05/06/2026 23:17:54
[2026-06-05 23:17:54,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:17:54,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:17:54,974.974 INFO    ] No existing commands found in stream
[2026-06-05 23:17:59,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:17:59,989.989 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-05 23:18:03,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:18:03,143.143 INFO    ] Checking for system updates...
[2026-06-05 23:18:03,178.178 INFO    ] 200
[2026-06-05 23:18:03,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:03,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:18:03,242.242 INFO    ] No update needed
[2026-06-05 23:18:03,244.244 INFO    ] Checking for camera pi updates...
[2026-06-05 23:18:03,278.278 INFO    ] 200
[2026-06-05 23:18:03,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:03,325.325 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:18:03,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:18:03,383.383 INFO    ] No camera update needed
[2026-06-05 23:18:03,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:18:03,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:18:03,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:18:03,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:18:05,449.449 INFO    ] ================================================
[2026-06-05 23:18:05,464.464 INFO    ] Launching Daemon at Fri Jun  5 23:18:05 IST 2026
[2026-06-05 23:18:05,475.475 INFO    ] ================================================
[2026-06-05 23:18:06,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:18:06
[2026-06-05 23:18:06,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:18:07,040.040 INFO    ] Initializing speech engine...
[2026-06-05 23:18:07,046.046 INFO    ] 2026-06-05 23:18:07
[2026-06-05 23:18:07,310.310 INFO    ] 2026-06-05 23:18:07
[2026-06-05 23:18:07,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:18:07,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:18:07,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:18:07,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:18:07,793.793 INFO    ] time= 05/06/2026 23:18:07
[2026-06-05 23:18:07,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:18:07,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:18:08,017.017 INFO    ] No existing commands found in stream
[2026-06-05 23:18:13,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:18:13,034.034 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 23:18:13,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:18:13,457.457 INFO    ] Checking for system updates...
[2026-06-05 23:18:13,495.495 INFO    ] 200
[2026-06-05 23:18:13,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:13,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:18:13,561.561 INFO    ] No update needed
[2026-06-05 23:18:13,564.564 INFO    ] Checking for camera pi updates...
[2026-06-05 23:18:13,598.598 INFO    ] 200
[2026-06-05 23:18:13,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:13,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:18:13,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:18:13,693.693 INFO    ] No camera update needed
[2026-06-05 23:18:13,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:18:13,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:18:13,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:18:13,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:18:15,747.747 INFO    ] ================================================
[2026-06-05 23:18:15,763.763 INFO    ] Launching Daemon at Fri Jun  5 23:18:15 IST 2026
[2026-06-05 23:18:15,774.774 INFO    ] ================================================
[2026-06-05 23:18:16,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:18:16
[2026-06-05 23:18:17,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:18:17,386.386 INFO    ] Initializing speech engine...
[2026-06-05 23:18:17,394.394 INFO    ] 2026-06-05 23:18:17
[2026-06-05 23:18:17,664.664 INFO    ] 2026-06-05 23:18:17
[2026-06-05 23:18:17,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:18:17,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:18:17,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:18:18,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:18:18,209.209 INFO    ] time= 05/06/2026 23:18:18
[2026-06-05 23:18:18,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:18:18,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:18:18,355.355 INFO    ] No existing commands found in stream
[2026-06-05 23:18:23,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:18:23,383.383 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 23:18:25,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:18:25,956.956 INFO    ] Checking for system updates...
[2026-06-05 23:18:25,996.996 INFO    ] 200
[2026-06-05 23:18:25,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:26,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:18:26,076.076 INFO    ] No update needed
[2026-06-05 23:18:26,079.079 INFO    ] Checking for camera pi updates...
[2026-06-05 23:18:26,125.125 INFO    ] 200
[2026-06-05 23:18:26,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:26,170.170 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:18:26,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:18:26,217.217 INFO    ] No camera update needed
[2026-06-05 23:18:26,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:18:26,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:18:26,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:18:26,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:18:28,273.273 INFO    ] ================================================
[2026-06-05 23:18:28,288.288 INFO    ] Launching Daemon at Fri Jun  5 23:18:28 IST 2026
[2026-06-05 23:18:28,299.299 INFO    ] ================================================
[2026-06-05 23:18:28,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:18:28
[2026-06-05 23:18:29,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:18:29,745.745 INFO    ] Initializing speech engine...
[2026-06-05 23:18:29,767.767 INFO    ] 2026-06-05 23:18:29
[2026-06-05 23:18:30,043.043 INFO    ] 2026-06-05 23:18:30
[2026-06-05 23:18:30,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:18:30,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:18:30,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:18:30,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:18:30,642.642 INFO    ] time= 05/06/2026 23:18:30
[2026-06-05 23:18:30,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:18:30,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:18:30,851.851 INFO    ] No existing commands found in stream
[2026-06-05 23:18:35,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:18:35,886.886 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-05 23:18:37,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:18:37,468.468 INFO    ] Checking for system updates...
[2026-06-05 23:18:37,510.510 INFO    ] 200
[2026-06-05 23:18:37,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:37,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:18:37,569.569 INFO    ] No update needed
[2026-06-05 23:18:37,572.572 INFO    ] Checking for camera pi updates...
[2026-06-05 23:18:37,609.609 INFO    ] 200
[2026-06-05 23:18:37,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:37,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:18:37,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:18:37,706.706 INFO    ] No camera update needed
[2026-06-05 23:18:37,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:18:37,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:18:37,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:18:37,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:18:39,761.761 INFO    ] ================================================
[2026-06-05 23:18:39,777.777 INFO    ] Launching Daemon at Fri Jun  5 23:18:39 IST 2026
[2026-06-05 23:18:39,788.788 INFO    ] ================================================
[2026-06-05 23:18:40,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:18:40
[2026-06-05 23:18:40,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:18:41,190.190 INFO    ] Initializing speech engine...
[2026-06-05 23:18:41,199.199 INFO    ] 2026-06-05 23:18:41
[2026-06-05 23:18:41,489.489 INFO    ] 2026-06-05 23:18:41
[2026-06-05 23:18:41,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:18:41,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:18:41,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:18:41,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:18:41,896.896 INFO    ] time= 05/06/2026 23:18:41
[2026-06-05 23:18:41,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:18:41,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:18:42,064.064 INFO    ] No existing commands found in stream
[2026-06-05 23:18:47,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:18:47,091.091 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-05 23:18:48,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:18:48,270.270 INFO    ] Checking for system updates...
[2026-06-05 23:18:48,309.309 INFO    ] 200
[2026-06-05 23:18:48,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:48,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:18:48,368.368 INFO    ] No update needed
[2026-06-05 23:18:48,371.371 INFO    ] Checking for camera pi updates...
[2026-06-05 23:18:48,406.406 INFO    ] 200
[2026-06-05 23:18:48,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:18:48,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:18:48,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:18:48,502.502 INFO    ] No camera update needed
[2026-06-05 23:18:48,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:18:48,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:18:48,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:18:48,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:18:50,558.558 INFO    ] ================================================
[2026-06-05 23:18:50,573.573 INFO    ] Launching Daemon at Fri Jun  5 23:18:50 IST 2026
[2026-06-05 23:18:50,584.584 INFO    ] ================================================
[2026-06-05 23:18:51,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:18:51
[2026-06-05 23:18:51,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:18:52,178.178 INFO    ] Initializing speech engine...
[2026-06-05 23:18:52,191.191 INFO    ] 2026-06-05 23:18:52
[2026-06-05 23:18:52,473.473 INFO    ] 2026-06-05 23:18:52
[2026-06-05 23:18:52,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:18:52,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:18:52,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:18:52,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:18:53,003.003 INFO    ] time= 05/06/2026 23:18:52
[2026-06-05 23:18:53,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:18:53,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:18:53,172.172 INFO    ] No existing commands found in stream
[2026-06-05 23:18:58,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:18:58,206.206 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-05 23:19:03,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:19:03,176.176 INFO    ] Checking for system updates...
[2026-06-05 23:19:03,218.218 INFO    ] 200
[2026-06-05 23:19:03,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:03,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:19:03,279.279 INFO    ] No update needed
[2026-06-05 23:19:03,282.282 INFO    ] Checking for camera pi updates...
[2026-06-05 23:19:03,316.316 INFO    ] 200
[2026-06-05 23:19:03,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:03,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:19:03,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:19:03,418.418 INFO    ] No camera update needed
[2026-06-05 23:19:03,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:19:03,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:19:03,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:19:03,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:19:05,475.475 INFO    ] ================================================
[2026-06-05 23:19:05,490.490 INFO    ] Launching Daemon at Fri Jun  5 23:19:05 IST 2026
[2026-06-05 23:19:05,502.502 INFO    ] ================================================
[2026-06-05 23:19:06,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:19:06
[2026-06-05 23:19:06,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:19:06,972.972 INFO    ] Initializing speech engine...
[2026-06-05 23:19:06,987.987 INFO    ] 2026-06-05 23:19:06
[2026-06-05 23:19:07,268.268 INFO    ] 2026-06-05 23:19:07
[2026-06-05 23:19:07,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:19:07,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:19:07,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:19:07,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:19:07,758.758 INFO    ] time= 05/06/2026 23:19:07
[2026-06-05 23:19:07,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:19:07,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:19:07,927.927 INFO    ] No existing commands found in stream
[2026-06-05 23:19:12,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:19:12,941.941 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-05 23:19:15,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:19:15,620.620 INFO    ] Checking for system updates...
[2026-06-05 23:19:15,660.660 INFO    ] 200
[2026-06-05 23:19:15,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:15,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:19:15,719.719 INFO    ] No update needed
[2026-06-05 23:19:15,721.721 INFO    ] Checking for camera pi updates...
[2026-06-05 23:19:15,772.772 INFO    ] 200
[2026-06-05 23:19:15,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:15,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:19:15,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:19:15,887.887 INFO    ] No camera update needed
[2026-06-05 23:19:15,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:19:15,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:19:15,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:19:15,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:19:17,944.944 INFO    ] ================================================
[2026-06-05 23:19:17,959.959 INFO    ] Launching Daemon at Fri Jun  5 23:19:17 IST 2026
[2026-06-05 23:19:17,971.971 INFO    ] ================================================
[2026-06-05 23:19:18,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:19:18
[2026-06-05 23:19:19,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:19:19,622.622 INFO    ] Initializing speech engine...
[2026-06-05 23:19:19,631.631 INFO    ] 2026-06-05 23:19:19
[2026-06-05 23:19:19,951.951 INFO    ] 2026-06-05 23:19:19
[2026-06-05 23:19:20,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:19:20,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:19:20,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:19:20,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:19:20,471.471 INFO    ] time= 05/06/2026 23:19:20
[2026-06-05 23:19:20,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:19:20,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:19:20,632.632 INFO    ] No existing commands found in stream
[2026-06-05 23:19:25,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:19:25,665.665 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-05 23:19:28,596.596 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:19:28,599.599 INFO    ] Checking for system updates...
[2026-06-05 23:19:28,637.637 INFO    ] 200
[2026-06-05 23:19:28,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:28,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:19:28,697.697 INFO    ] No update needed
[2026-06-05 23:19:28,700.700 INFO    ] Checking for camera pi updates...
[2026-06-05 23:19:28,736.736 INFO    ] 200
[2026-06-05 23:19:28,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:28,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:19:28,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:19:28,834.834 INFO    ] No camera update needed
[2026-06-05 23:19:28,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:19:28,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:19:28,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:19:28,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:19:30,894.894 INFO    ] ================================================
[2026-06-05 23:19:30,909.909 INFO    ] Launching Daemon at Fri Jun  5 23:19:30 IST 2026
[2026-06-05 23:19:30,920.920 INFO    ] ================================================
[2026-06-05 23:19:31,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:19:31
[2026-06-05 23:19:32,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:19:32,457.457 INFO    ] Initializing speech engine...
[2026-06-05 23:19:32,470.470 INFO    ] 2026-06-05 23:19:32
[2026-06-05 23:19:32,760.760 INFO    ] 2026-06-05 23:19:32
[2026-06-05 23:19:32,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:19:33,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:19:33,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:19:33,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:19:33,246.246 INFO    ] time= 05/06/2026 23:19:33
[2026-06-05 23:19:33,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:19:33,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:19:33,436.436 INFO    ] No existing commands found in stream
[2026-06-05 23:19:38,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:19:38,466.466 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 23:19:40,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:19:40,125.125 INFO    ] Checking for system updates...
[2026-06-05 23:19:40,161.161 INFO    ] 200
[2026-06-05 23:19:40,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:40,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:19:40,220.220 INFO    ] No update needed
[2026-06-05 23:19:40,222.222 INFO    ] Checking for camera pi updates...
[2026-06-05 23:19:40,260.260 INFO    ] 200
[2026-06-05 23:19:40,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:40,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:19:40,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:19:40,370.370 INFO    ] No camera update needed
[2026-06-05 23:19:40,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:19:40,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:19:40,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:19:40,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:19:42,426.426 INFO    ] ================================================
[2026-06-05 23:19:42,448.448 INFO    ] Launching Daemon at Fri Jun  5 23:19:42 IST 2026
[2026-06-05 23:19:42,459.459 INFO    ] ================================================
[2026-06-05 23:19:43,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:19:43
[2026-06-05 23:19:43,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:19:43,929.929 INFO    ] Initializing speech engine...
[2026-06-05 23:19:43,939.939 INFO    ] 2026-06-05 23:19:43
[2026-06-05 23:19:44,189.189 INFO    ] 2026-06-05 23:19:44
[2026-06-05 23:19:44,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:19:44,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:19:44,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:19:44,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:19:44,669.669 INFO    ] time= 05/06/2026 23:19:44
[2026-06-05 23:19:44,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:19:44,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:19:44,876.876 INFO    ] No existing commands found in stream
[2026-06-05 23:19:49,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:19:49,910.910 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 23:19:53,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:19:53,645.645 INFO    ] Checking for system updates...
[2026-06-05 23:19:53,686.686 INFO    ] 200
[2026-06-05 23:19:53,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:53,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:19:53,751.751 INFO    ] No update needed
[2026-06-05 23:19:53,753.753 INFO    ] Checking for camera pi updates...
[2026-06-05 23:19:53,787.787 INFO    ] 200
[2026-06-05 23:19:53,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:19:53,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:19:53,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:19:53,986.986 INFO    ] No camera update needed
[2026-06-05 23:19:53,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:19:53,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:19:53,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:19:54,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:19:56,043.043 INFO    ] ================================================
[2026-06-05 23:19:56,059.059 INFO    ] Launching Daemon at Fri Jun  5 23:19:56 IST 2026
[2026-06-05 23:19:56,069.069 INFO    ] ================================================
[2026-06-05 23:19:56,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:19:56
[2026-06-05 23:19:57,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:19:57,536.536 INFO    ] Initializing speech engine...
[2026-06-05 23:19:57,545.545 INFO    ] 2026-06-05 23:19:57
[2026-06-05 23:19:57,796.796 INFO    ] 2026-06-05 23:19:57
[2026-06-05 23:19:57,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:19:58,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:19:58,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:19:58,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:19:58,296.296 INFO    ] time= 05/06/2026 23:19:58
[2026-06-05 23:19:58,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:19:58,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:19:58,490.490 INFO    ] No existing commands found in stream
[2026-06-05 23:20:03,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:20:03,520.520 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-05 23:20:08,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:20:08,178.178 INFO    ] Checking for system updates...
[2026-06-05 23:20:08,215.215 INFO    ] 200
[2026-06-05 23:20:08,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:08,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:20:08,275.275 INFO    ] No update needed
[2026-06-05 23:20:08,278.278 INFO    ] Checking for camera pi updates...
[2026-06-05 23:20:08,316.316 INFO    ] 200
[2026-06-05 23:20:08,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:08,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:20:08,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:20:08,410.410 INFO    ] No camera update needed
[2026-06-05 23:20:08,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:20:08,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:20:08,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:20:08,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:20:10,466.466 INFO    ] ================================================
[2026-06-05 23:20:10,483.483 INFO    ] Launching Daemon at Fri Jun  5 23:20:10 IST 2026
[2026-06-05 23:20:10,494.494 INFO    ] ================================================
[2026-06-05 23:20:11,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:20:11
[2026-06-05 23:20:11,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:20:11,950.950 INFO    ] Initializing speech engine...
[2026-06-05 23:20:11,959.959 INFO    ] 2026-06-05 23:20:11
[2026-06-05 23:20:12,261.261 INFO    ] 2026-06-05 23:20:12
[2026-06-05 23:20:12,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:20:12,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:20:12,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:20:12,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:20:12,694.694 INFO    ] time= 05/06/2026 23:20:12
[2026-06-05 23:20:12,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:20:12,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:20:12,902.902 INFO    ] No existing commands found in stream
[2026-06-05 23:20:17,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:20:17,935.935 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-05 23:20:21,833.833 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:20:21,836.836 INFO    ] Checking for system updates...
[2026-06-05 23:20:21,877.877 INFO    ] 200
[2026-06-05 23:20:21,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:21,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:20:21,943.943 INFO    ] No update needed
[2026-06-05 23:20:21,945.945 INFO    ] Checking for camera pi updates...
[2026-06-05 23:20:21,979.979 INFO    ] 200
[2026-06-05 23:20:21,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:22,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:20:22,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:20:22,090.090 INFO    ] No camera update needed
[2026-06-05 23:20:22,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:20:22,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:20:22,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:20:22,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:20:24,145.145 INFO    ] ================================================
[2026-06-05 23:20:24,162.162 INFO    ] Launching Daemon at Fri Jun  5 23:20:24 IST 2026
[2026-06-05 23:20:24,173.173 INFO    ] ================================================
[2026-06-05 23:20:24,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:20:24
[2026-06-05 23:20:25,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:20:25,604.604 INFO    ] Initializing speech engine...
[2026-06-05 23:20:25,620.620 INFO    ] 2026-06-05 23:20:25
[2026-06-05 23:20:25,913.913 INFO    ] 2026-06-05 23:20:25
[2026-06-05 23:20:25,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:20:26,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:20:26,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:20:26,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:20:26,351.351 INFO    ] time= 05/06/2026 23:20:26
[2026-06-05 23:20:26,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:20:26,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:20:26,438.438 INFO    ] No existing commands found in stream
[2026-06-05 23:20:31,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:20:31,455.455 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 23:20:33,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:20:33,010.010 INFO    ] Checking for system updates...
[2026-06-05 23:20:33,048.048 INFO    ] 200
[2026-06-05 23:20:33,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:33,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:20:33,107.107 INFO    ] No update needed
[2026-06-05 23:20:33,109.109 INFO    ] Checking for camera pi updates...
[2026-06-05 23:20:33,145.145 INFO    ] 200
[2026-06-05 23:20:33,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:33,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:20:33,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:20:33,225.225 INFO    ] No camera update needed
[2026-06-05 23:20:33,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:20:33,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:20:33,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:20:33,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:20:35,281.281 INFO    ] ================================================
[2026-06-05 23:20:35,297.297 INFO    ] Launching Daemon at Fri Jun  5 23:20:35 IST 2026
[2026-06-05 23:20:35,309.309 INFO    ] ================================================
[2026-06-05 23:20:35,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:20:35
[2026-06-05 23:20:36,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:20:36,984.984 INFO    ] Initializing speech engine...
[2026-06-05 23:20:36,994.994 INFO    ] 2026-06-05 23:20:36
[2026-06-05 23:20:37,289.289 INFO    ] 2026-06-05 23:20:37
[2026-06-05 23:20:37,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:20:37,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:20:37,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:20:37,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:20:37,788.788 INFO    ] time= 05/06/2026 23:20:37
[2026-06-05 23:20:37,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:20:37,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:20:38,024.024 INFO    ] No existing commands found in stream
[2026-06-05 23:20:43,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:20:43,055.055 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-05 23:20:45,244.244 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:20:45,246.246 INFO    ] Checking for system updates...
[2026-06-05 23:20:45,283.283 INFO    ] 200
[2026-06-05 23:20:45,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:45,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:20:45,343.343 INFO    ] No update needed
[2026-06-05 23:20:45,346.346 INFO    ] Checking for camera pi updates...
[2026-06-05 23:20:45,381.381 INFO    ] 200
[2026-06-05 23:20:45,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:45,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:20:45,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:20:45,484.484 INFO    ] No camera update needed
[2026-06-05 23:20:45,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:20:45,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:20:45,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:20:45,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:20:47,541.541 INFO    ] ================================================
[2026-06-05 23:20:47,557.557 INFO    ] Launching Daemon at Fri Jun  5 23:20:47 IST 2026
[2026-06-05 23:20:47,569.569 INFO    ] ================================================
[2026-06-05 23:20:48,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:20:48
[2026-06-05 23:20:48,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:20:49,050.050 INFO    ] Initializing speech engine...
[2026-06-05 23:20:49,062.062 INFO    ] 2026-06-05 23:20:49
[2026-06-05 23:20:49,373.373 INFO    ] 2026-06-05 23:20:49
[2026-06-05 23:20:49,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:20:49,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:20:49,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:20:49,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:20:49,886.886 INFO    ] time= 05/06/2026 23:20:49
[2026-06-05 23:20:49,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:20:49,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:20:50,041.041 INFO    ] No existing commands found in stream
[2026-06-05 23:20:55,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:20:55,057.057 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-05 23:20:57,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:20:57,835.835 INFO    ] Checking for system updates...
[2026-06-05 23:20:57,877.877 INFO    ] 200
[2026-06-05 23:20:57,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:57,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:20:57,943.943 INFO    ] No update needed
[2026-06-05 23:20:57,946.946 INFO    ] Checking for camera pi updates...
[2026-06-05 23:20:57,985.985 INFO    ] 200
[2026-06-05 23:20:57,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:20:58,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:20:58,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:20:58,088.088 INFO    ] No camera update needed
[2026-06-05 23:20:58,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:20:58,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:20:58,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:20:58,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:21:00,149.149 INFO    ] ================================================
[2026-06-05 23:21:00,164.164 INFO    ] Launching Daemon at Fri Jun  5 23:21:00 IST 2026
[2026-06-05 23:21:00,175.175 INFO    ] ================================================
[2026-06-05 23:21:00,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:21:00
[2026-06-05 23:21:01,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:21:01,857.857 INFO    ] Initializing speech engine...
[2026-06-05 23:21:01,861.861 INFO    ] 2026-06-05 23:21:01
[2026-06-05 23:21:02,261.261 INFO    ] 2026-06-05 23:21:02
[2026-06-05 23:21:02,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:21:03,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:21:03,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:21:03,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:21:03,358.358 INFO    ] time= 05/06/2026 23:21:03
[2026-06-05 23:21:03,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:21:03,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:21:03,480.480 INFO    ] No existing commands found in stream
[2026-06-05 23:21:08,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:21:08,495.495 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-05 23:21:13,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:21:13,073.073 INFO    ] Checking for system updates...
[2026-06-05 23:21:13,110.110 INFO    ] 200
[2026-06-05 23:21:13,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:21:13,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:21:13,172.172 INFO    ] No update needed
[2026-06-05 23:21:13,175.175 INFO    ] Checking for camera pi updates...
[2026-06-05 23:21:13,209.209 INFO    ] 200
[2026-06-05 23:21:13,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:21:13,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:21:13,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:21:13,303.303 INFO    ] No camera update needed
[2026-06-05 23:21:13,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:21:13,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:21:13,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:21:13,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:21:15,358.358 INFO    ] ================================================
[2026-06-05 23:21:15,374.374 INFO    ] Launching Daemon at Fri Jun  5 23:21:15 IST 2026
[2026-06-05 23:21:15,386.386 INFO    ] ================================================
[2026-06-05 23:21:16,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:21:16
[2026-06-05 23:21:16,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:21:17,062.062 INFO    ] Initializing speech engine...
[2026-06-05 23:21:17,070.070 INFO    ] 2026-06-05 23:21:17
[2026-06-05 23:21:17,366.366 INFO    ] 2026-06-05 23:21:17
[2026-06-05 23:21:17,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:21:17,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:21:17,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:21:17,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:21:17,920.920 INFO    ] time= 05/06/2026 23:21:17
[2026-06-05 23:21:17,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:21:17,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:21:18,083.083 INFO    ] No existing commands found in stream
[2026-06-05 23:21:23,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:21:23,099.099 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-05 23:21:24,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:21:24,797.797 INFO    ] Checking for system updates...
[2026-06-05 23:21:24,841.841 INFO    ] 200
[2026-06-05 23:21:24,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:21:24,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:21:24,914.914 INFO    ] No update needed
[2026-06-05 23:21:24,918.918 INFO    ] Checking for camera pi updates...
[2026-06-05 23:21:24,954.954 INFO    ] 200
[2026-06-05 23:21:24,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:21:25,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:21:25,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:21:25,060.060 INFO    ] No camera update needed
[2026-06-05 23:21:25,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:21:25,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:21:25,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:21:25,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:21:27,116.116 INFO    ] ================================================
[2026-06-05 23:21:27,132.132 INFO    ] Launching Daemon at Fri Jun  5 23:21:27 IST 2026
[2026-06-05 23:21:27,143.143 INFO    ] ================================================
[2026-06-05 23:21:27,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:21:27
[2026-06-05 23:21:28,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:21:28,556.556 INFO    ] Initializing speech engine...
[2026-06-05 23:21:28,571.571 INFO    ] 2026-06-05 23:21:28
[2026-06-05 23:21:28,868.868 INFO    ] 2026-06-05 23:21:28
[2026-06-05 23:21:28,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:21:29,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:21:29,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:21:29,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:21:29,294.294 INFO    ] time= 05/06/2026 23:21:29
[2026-06-05 23:21:29,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:21:29,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:21:29,387.387 INFO    ] No existing commands found in stream
[2026-06-05 23:21:34,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:21:34,410.410 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 23:21:36,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:21:36,210.210 INFO    ] Checking for system updates...
[2026-06-05 23:21:36,246.246 INFO    ] 200
[2026-06-05 23:21:36,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:21:36,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:21:36,312.312 INFO    ] No update needed
[2026-06-05 23:21:36,314.314 INFO    ] Checking for camera pi updates...
[2026-06-05 23:21:36,353.353 INFO    ] 200
[2026-06-05 23:21:36,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:21:36,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:21:36,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:21:36,491.491 INFO    ] No camera update needed
[2026-06-05 23:21:36,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:21:36,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:21:36,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:21:36,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:21:38,548.548 INFO    ] ================================================
[2026-06-05 23:21:38,563.563 INFO    ] Launching Daemon at Fri Jun  5 23:21:38 IST 2026
[2026-06-05 23:21:38,574.574 INFO    ] ================================================
[2026-06-05 23:21:39,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:21:39
[2026-06-05 23:21:39,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:21:40,000.000 INFO    ] Initializing speech engine...
[2026-06-05 23:21:40,009.009 INFO    ] 2026-06-05 23:21:40
[2026-06-05 23:21:40,261.261 INFO    ] 2026-06-05 23:21:40
[2026-06-05 23:21:40,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:21:40,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:21:40,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:21:40,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:21:40,752.752 INFO    ] time= 05/06/2026 23:21:40
[2026-06-05 23:21:40,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:21:40,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:21:40,956.956 INFO    ] No existing commands found in stream
[2026-06-05 23:21:45,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:21:45,971.971 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 23:21:47,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:21:47,538.538 INFO    ] Checking for system updates...
[2026-06-05 23:21:47,576.576 INFO    ] 200
[2026-06-05 23:21:47,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:21:47,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:21:47,634.634 INFO    ] No update needed
[2026-06-05 23:21:47,636.636 INFO    ] Checking for camera pi updates...
[2026-06-05 23:21:47,671.671 INFO    ] 200
[2026-06-05 23:21:47,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:21:47,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:21:47,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:21:47,773.773 INFO    ] No camera update needed
[2026-06-05 23:21:47,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:21:47,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:21:47,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:21:47,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:21:49,831.831 INFO    ] ================================================
[2026-06-05 23:21:49,846.846 INFO    ] Launching Daemon at Fri Jun  5 23:21:49 IST 2026
[2026-06-05 23:21:49,857.857 INFO    ] ================================================
[2026-06-05 23:21:50,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:21:50
[2026-06-05 23:21:51,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:21:51,518.518 INFO    ] Initializing speech engine...
[2026-06-05 23:21:51,532.532 INFO    ] 2026-06-05 23:21:51
[2026-06-05 23:21:51,820.820 INFO    ] 2026-06-05 23:21:51
[2026-06-05 23:21:51,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:21:52,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:21:52,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:21:52,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:21:52,358.358 INFO    ] time= 05/06/2026 23:21:52
[2026-06-05 23:21:52,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:21:52,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:21:52,515.515 INFO    ] No existing commands found in stream
[2026-06-05 23:21:57,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:21:57,543.543 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-05 23:22:00,367.367 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:22:00,370.370 INFO    ] Checking for system updates...
[2026-06-05 23:22:00,410.410 INFO    ] 200
[2026-06-05 23:22:00,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:00,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:22:00,470.470 INFO    ] No update needed
[2026-06-05 23:22:00,473.473 INFO    ] Checking for camera pi updates...
[2026-06-05 23:22:00,508.508 INFO    ] 200
[2026-06-05 23:22:00,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:00,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:22:00,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:22:00,718.718 INFO    ] No camera update needed
[2026-06-05 23:22:00,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:22:00,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:22:00,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:22:00,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:22:02,783.783 INFO    ] ================================================
[2026-06-05 23:22:02,807.807 INFO    ] Launching Daemon at Fri Jun  5 23:22:02 IST 2026
[2026-06-05 23:22:02,820.820 INFO    ] ================================================
[2026-06-05 23:22:03,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:22:03
[2026-06-05 23:22:04,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:22:04,359.359 INFO    ] Initializing speech engine...
[2026-06-05 23:22:04,367.367 INFO    ] 2026-06-05 23:22:04
[2026-06-05 23:22:04,630.630 INFO    ] 2026-06-05 23:22:04
[2026-06-05 23:22:04,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:22:04,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:22:04,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:22:05,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:22:05,173.173 INFO    ] time= 05/06/2026 23:22:05
[2026-06-05 23:22:05,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:22:05,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:22:05,315.315 INFO    ] No existing commands found in stream
[2026-06-05 23:22:10,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:22:10,342.342 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-05 23:22:11,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:22:11,635.635 INFO    ] Checking for system updates...
[2026-06-05 23:22:11,676.676 INFO    ] 200
[2026-06-05 23:22:11,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:11,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:22:11,741.741 INFO    ] No update needed
[2026-06-05 23:22:11,743.743 INFO    ] Checking for camera pi updates...
[2026-06-05 23:22:11,781.781 INFO    ] 200
[2026-06-05 23:22:11,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:11,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:22:11,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:22:11,884.884 INFO    ] No camera update needed
[2026-06-05 23:22:11,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:22:11,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:22:11,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:22:11,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:22:13,944.944 INFO    ] ================================================
[2026-06-05 23:22:13,960.960 INFO    ] Launching Daemon at Fri Jun  5 23:22:13 IST 2026
[2026-06-05 23:22:13,973.973 INFO    ] ================================================
[2026-06-05 23:22:14,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:22:14
[2026-06-05 23:22:15,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:22:15,503.503 INFO    ] Initializing speech engine...
[2026-06-05 23:22:15,511.511 INFO    ] 2026-06-05 23:22:15
[2026-06-05 23:22:15,795.795 INFO    ] 2026-06-05 23:22:15
[2026-06-05 23:22:15,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:22:16,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:22:16,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:22:16,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:22:16,341.341 INFO    ] time= 05/06/2026 23:22:16
[2026-06-05 23:22:16,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:22:16,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:22:16,509.509 INFO    ] No existing commands found in stream
[2026-06-05 23:22:21,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:22:21,550.550 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-05 23:22:25,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:22:25,180.180 INFO    ] Checking for system updates...
[2026-06-05 23:22:25,221.221 INFO    ] 200
[2026-06-05 23:22:25,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:25,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:22:25,287.287 INFO    ] No update needed
[2026-06-05 23:22:25,290.290 INFO    ] Checking for camera pi updates...
[2026-06-05 23:22:25,326.326 INFO    ] 200
[2026-06-05 23:22:25,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:25,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:22:25,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:22:25,432.432 INFO    ] No camera update needed
[2026-06-05 23:22:25,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:22:25,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:22:25,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:22:25,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:22:27,492.492 INFO    ] ================================================
[2026-06-05 23:22:27,508.508 INFO    ] Launching Daemon at Fri Jun  5 23:22:27 IST 2026
[2026-06-05 23:22:27,519.519 INFO    ] ================================================
[2026-06-05 23:22:28,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:22:28
[2026-06-05 23:22:28,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:22:28,926.926 INFO    ] Initializing speech engine...
[2026-06-05 23:22:28,935.935 INFO    ] 2026-06-05 23:22:28
[2026-06-05 23:22:29,229.229 INFO    ] 2026-06-05 23:22:29
[2026-06-05 23:22:29,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:22:29,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:22:29,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:22:29,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:22:29,651.651 INFO    ] time= 05/06/2026 23:22:29
[2026-06-05 23:22:29,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:22:29,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:22:29,740.740 INFO    ] No existing commands found in stream
[2026-06-05 23:22:34,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:22:34,760.760 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 23:22:35,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:22:35,411.411 INFO    ] Checking for system updates...
[2026-06-05 23:22:35,447.447 INFO    ] 200
[2026-06-05 23:22:35,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:35,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:22:35,512.512 INFO    ] No update needed
[2026-06-05 23:22:35,514.514 INFO    ] Checking for camera pi updates...
[2026-06-05 23:22:35,553.553 INFO    ] 200
[2026-06-05 23:22:35,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:35,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:22:35,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:22:35,656.656 INFO    ] No camera update needed
[2026-06-05 23:22:35,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:22:35,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:22:35,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:22:35,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:22:37,712.712 INFO    ] ================================================
[2026-06-05 23:22:37,729.729 INFO    ] Launching Daemon at Fri Jun  5 23:22:37 IST 2026
[2026-06-05 23:22:37,740.740 INFO    ] ================================================
[2026-06-05 23:22:38,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:22:38
[2026-06-05 23:22:38,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:22:39,150.150 INFO    ] Initializing speech engine...
[2026-06-05 23:22:39,156.156 INFO    ] 2026-06-05 23:22:39
[2026-06-05 23:22:39,451.451 INFO    ] 2026-06-05 23:22:39
[2026-06-05 23:22:39,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:22:39,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:22:39,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:22:40,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:22:40,034.034 INFO    ] time= 05/06/2026 23:22:40
[2026-06-05 23:22:40,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:22:40,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:22:40,329.329 INFO    ] No existing commands found in stream
[2026-06-05 23:22:45,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:22:45,362.362 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-05 23:22:45,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:22:45,913.913 INFO    ] Checking for system updates...
[2026-06-05 23:22:45,952.952 INFO    ] 200
[2026-06-05 23:22:45,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:46,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:22:46,015.015 INFO    ] No update needed
[2026-06-05 23:22:46,018.018 INFO    ] Checking for camera pi updates...
[2026-06-05 23:22:46,051.051 INFO    ] 200
[2026-06-05 23:22:46,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:46,095.095 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:22:46,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:22:46,140.140 INFO    ] No camera update needed
[2026-06-05 23:22:46,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:22:46,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:22:46,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:22:46,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:22:48,196.196 INFO    ] ================================================
[2026-06-05 23:22:48,212.212 INFO    ] Launching Daemon at Fri Jun  5 23:22:48 IST 2026
[2026-06-05 23:22:48,222.222 INFO    ] ================================================
[2026-06-05 23:22:48,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:22:48
[2026-06-05 23:22:49,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:22:49,835.835 INFO    ] Initializing speech engine...
[2026-06-05 23:22:49,848.848 INFO    ] 2026-06-05 23:22:49
[2026-06-05 23:22:50,154.154 INFO    ] 2026-06-05 23:22:50
[2026-06-05 23:22:50,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:22:50,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:22:50,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:22:50,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:22:50,662.662 INFO    ] time= 05/06/2026 23:22:50
[2026-06-05 23:22:50,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:22:50,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:22:50,819.819 INFO    ] No existing commands found in stream
[2026-06-05 23:22:55,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:22:55,852.852 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 23:22:59,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:22:59,638.638 INFO    ] Checking for system updates...
[2026-06-05 23:22:59,679.679 INFO    ] 200
[2026-06-05 23:22:59,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:59,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:22:59,746.746 INFO    ] No update needed
[2026-06-05 23:22:59,749.749 INFO    ] Checking for camera pi updates...
[2026-06-05 23:22:59,785.785 INFO    ] 200
[2026-06-05 23:22:59,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:22:59,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:22:59,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:22:59,871.871 INFO    ] No camera update needed
[2026-06-05 23:22:59,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:22:59,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:22:59,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:22:59,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:23:01,935.935 INFO    ] ================================================
[2026-06-05 23:23:01,958.958 INFO    ] Launching Daemon at Fri Jun  5 23:23:01 IST 2026
[2026-06-05 23:23:01,975.975 INFO    ] ================================================
[2026-06-05 23:23:02,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:23:02
[2026-06-05 23:23:03,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:23:03,659.659 INFO    ] Initializing speech engine...
[2026-06-05 23:23:03,669.669 INFO    ] 2026-06-05 23:23:03
[2026-06-05 23:23:03,918.918 INFO    ] 2026-06-05 23:23:03
[2026-06-05 23:23:03,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:23:04,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:23:04,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:23:04,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:23:04,403.403 INFO    ] time= 05/06/2026 23:23:04
[2026-06-05 23:23:04,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:23:04,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:23:04,619.619 INFO    ] No existing commands found in stream
[2026-06-05 23:23:09,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:23:09,646.646 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 23:23:13,624.624 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:23:13,627.627 INFO    ] Checking for system updates...
[2026-06-05 23:23:13,668.668 INFO    ] 200
[2026-06-05 23:23:13,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:23:13,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:23:13,732.732 INFO    ] No update needed
[2026-06-05 23:23:13,735.735 INFO    ] Checking for camera pi updates...
[2026-06-05 23:23:13,774.774 INFO    ] 200
[2026-06-05 23:23:13,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:23:13,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:23:13,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:23:13,883.883 INFO    ] No camera update needed
[2026-06-05 23:23:13,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:23:13,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:23:13,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:23:13,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:23:15,941.941 INFO    ] ================================================
[2026-06-05 23:23:15,956.956 INFO    ] Launching Daemon at Fri Jun  5 23:23:15 IST 2026
[2026-06-05 23:23:15,967.967 INFO    ] ================================================
[2026-06-05 23:23:16,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:23:16
[2026-06-05 23:23:17,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:23:17,394.394 INFO    ] Initializing speech engine...
[2026-06-05 23:23:17,402.402 INFO    ] 2026-06-05 23:23:17
[2026-06-05 23:23:17,675.675 INFO    ] 2026-06-05 23:23:17
[2026-06-05 23:23:17,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:23:17,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:23:17,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:23:18,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:23:18,181.181 INFO    ] time= 05/06/2026 23:23:18
[2026-06-05 23:23:18,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:23:18,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:23:18,366.366 INFO    ] No existing commands found in stream
[2026-06-05 23:23:23,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:23:23,399.399 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-05 23:23:27,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:23:27,466.466 INFO    ] Checking for system updates...
[2026-06-05 23:23:27,506.506 INFO    ] 200
[2026-06-05 23:23:27,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:23:27,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:23:27,565.565 INFO    ] No update needed
[2026-06-05 23:23:27,567.567 INFO    ] Checking for camera pi updates...
[2026-06-05 23:23:27,601.601 INFO    ] 200
[2026-06-05 23:23:27,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:23:27,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:23:27,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:23:27,711.711 INFO    ] No camera update needed
[2026-06-05 23:23:27,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:23:27,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:23:27,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:23:27,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:23:29,767.767 INFO    ] ================================================
[2026-06-05 23:23:29,783.783 INFO    ] Launching Daemon at Fri Jun  5 23:23:29 IST 2026
[2026-06-05 23:23:29,795.795 INFO    ] ================================================
[2026-06-05 23:23:30,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:23:30
[2026-06-05 23:23:31,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:23:31,430.430 INFO    ] Initializing speech engine...
[2026-06-05 23:23:31,444.444 INFO    ] 2026-06-05 23:23:31
[2026-06-05 23:23:31,729.729 INFO    ] 2026-06-05 23:23:31
[2026-06-05 23:23:31,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:23:32,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:23:32,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:23:32,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:23:32,928.928 INFO    ] time= 05/06/2026 23:23:32
[2026-06-05 23:23:32,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:23:32,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:23:33,046.046 INFO    ] No existing commands found in stream
[2026-06-05 23:23:38,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:23:38,060.060 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-05 23:23:38,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:23:38,598.598 INFO    ] Checking for system updates...
[2026-06-05 23:23:38,634.634 INFO    ] 200
[2026-06-05 23:23:38,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:23:38,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:23:38,698.698 INFO    ] No update needed
[2026-06-05 23:23:38,700.700 INFO    ] Checking for camera pi updates...
[2026-06-05 23:23:38,735.735 INFO    ] 200
[2026-06-05 23:23:38,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:23:38,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:23:38,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:23:38,846.846 INFO    ] No camera update needed
[2026-06-05 23:23:38,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:23:38,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:23:38,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:23:38,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:23:40,902.902 INFO    ] ================================================
[2026-06-05 23:23:40,918.918 INFO    ] Launching Daemon at Fri Jun  5 23:23:40 IST 2026
[2026-06-05 23:23:40,930.930 INFO    ] ================================================
[2026-06-05 23:23:41,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:23:41
[2026-06-05 23:23:42,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:23:42,330.330 INFO    ] Initializing speech engine...
[2026-06-05 23:23:42,339.339 INFO    ] 2026-06-05 23:23:42
[2026-06-05 23:23:42,614.614 INFO    ] 2026-06-05 23:23:42
[2026-06-05 23:23:42,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:23:42,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:23:42,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:23:43,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:23:43,105.105 INFO    ] time= 05/06/2026 23:23:43
[2026-06-05 23:23:43,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:23:43,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:23:43,327.327 INFO    ] No existing commands found in stream
[2026-06-05 23:23:48,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:23:48,355.355 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-05 23:23:50,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:23:50,174.174 INFO    ] Checking for system updates...
[2026-06-05 23:23:50,215.215 INFO    ] 200
[2026-06-05 23:23:50,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:23:50,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:23:50,283.283 INFO    ] No update needed
[2026-06-05 23:23:50,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 23:23:50,325.325 INFO    ] 200
[2026-06-05 23:23:50,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:23:50,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:23:50,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:23:50,436.436 INFO    ] No camera update needed
[2026-06-05 23:23:50,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:23:50,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:23:50,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:23:50,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:23:52,496.496 INFO    ] ================================================
[2026-06-05 23:23:52,511.511 INFO    ] Launching Daemon at Fri Jun  5 23:23:52 IST 2026
[2026-06-05 23:23:52,523.523 INFO    ] ================================================
[2026-06-05 23:23:53,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:23:53
[2026-06-05 23:23:53,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:23:54,016.016 INFO    ] Initializing speech engine...
[2026-06-05 23:23:54,030.030 INFO    ] 2026-06-05 23:23:54
[2026-06-05 23:23:54,296.296 INFO    ] 2026-06-05 23:23:54
[2026-06-05 23:23:54,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:23:54,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:23:54,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:23:54,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:23:54,745.745 INFO    ] time= 05/06/2026 23:23:54
[2026-06-05 23:23:54,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:23:54,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:23:55,011.011 INFO    ] No existing commands found in stream
[2026-06-05 23:24:00,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:24:00,029.029 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-05 23:24:03,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:24:03,439.439 INFO    ] Checking for system updates...
[2026-06-05 23:24:03,479.479 INFO    ] 200
[2026-06-05 23:24:03,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:03,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:24:03,539.539 INFO    ] No update needed
[2026-06-05 23:24:03,541.541 INFO    ] Checking for camera pi updates...
[2026-06-05 23:24:03,576.576 INFO    ] 200
[2026-06-05 23:24:03,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:03,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:24:03,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:24:03,677.677 INFO    ] No camera update needed
[2026-06-05 23:24:03,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:24:03,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:24:03,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:24:03,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:24:05,737.737 INFO    ] ================================================
[2026-06-05 23:24:05,752.752 INFO    ] Launching Daemon at Fri Jun  5 23:24:05 IST 2026
[2026-06-05 23:24:05,763.763 INFO    ] ================================================
[2026-06-05 23:24:06,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:24:06
[2026-06-05 23:24:06,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:24:07,217.217 INFO    ] Initializing speech engine...
[2026-06-05 23:24:07,232.232 INFO    ] 2026-06-05 23:24:07
[2026-06-05 23:24:07,509.509 INFO    ] 2026-06-05 23:24:07
[2026-06-05 23:24:07,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:24:07,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:24:07,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:24:07,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:24:07,913.913 INFO    ] time= 05/06/2026 23:24:07
[2026-06-05 23:24:07,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:24:07,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:24:07,994.994 INFO    ] No existing commands found in stream
[2026-06-05 23:24:13,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:24:13,010.010 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-05 23:24:14,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:24:14,964.964 INFO    ] Checking for system updates...
[2026-06-05 23:24:14,999.999 INFO    ] 200
[2026-06-05 23:24:15,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:15,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:24:15,058.058 INFO    ] No update needed
[2026-06-05 23:24:15,060.060 INFO    ] Checking for camera pi updates...
[2026-06-05 23:24:15,094.094 INFO    ] 200
[2026-06-05 23:24:15,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:15,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:24:15,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:24:15,202.202 INFO    ] No camera update needed
[2026-06-05 23:24:15,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:24:15,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:24:15,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:24:15,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:24:17,257.257 INFO    ] ================================================
[2026-06-05 23:24:17,272.272 INFO    ] Launching Daemon at Fri Jun  5 23:24:17 IST 2026
[2026-06-05 23:24:17,283.283 INFO    ] ================================================
[2026-06-05 23:24:17,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:24:17
[2026-06-05 23:24:18,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:24:18,709.709 INFO    ] Initializing speech engine...
[2026-06-05 23:24:18,735.735 INFO    ] 2026-06-05 23:24:18
[2026-06-05 23:24:18,999.999 INFO    ] 2026-06-05 23:24:18
[2026-06-05 23:24:19,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:24:19,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:24:19,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:24:19,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:24:19,506.506 INFO    ] time= 05/06/2026 23:24:19
[2026-06-05 23:24:19,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:24:19,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:24:19,771.771 INFO    ] No existing commands found in stream
[2026-06-05 23:24:24,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:24:24,789.789 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 23:24:25,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:24:25,770.770 INFO    ] Checking for system updates...
[2026-06-05 23:24:25,806.806 INFO    ] 200
[2026-06-05 23:24:25,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:25,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:24:25,868.868 INFO    ] No update needed
[2026-06-05 23:24:25,870.870 INFO    ] Checking for camera pi updates...
[2026-06-05 23:24:25,906.906 INFO    ] 200
[2026-06-05 23:24:25,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:25,953.953 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:24:26,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:24:26,005.005 INFO    ] No camera update needed
[2026-06-05 23:24:26,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:24:26,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:24:26,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:24:26,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:24:28,060.060 INFO    ] ================================================
[2026-06-05 23:24:28,074.074 INFO    ] Launching Daemon at Fri Jun  5 23:24:28 IST 2026
[2026-06-05 23:24:28,085.085 INFO    ] ================================================
[2026-06-05 23:24:28,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:24:28
[2026-06-05 23:24:29,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:24:29,575.575 INFO    ] Initializing speech engine...
[2026-06-05 23:24:29,583.583 INFO    ] 2026-06-05 23:24:29
[2026-06-05 23:24:29,863.863 INFO    ] 2026-06-05 23:24:29
[2026-06-05 23:24:29,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:24:30,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:24:30,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:24:30,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:24:30,320.320 INFO    ] time= 05/06/2026 23:24:30
[2026-06-05 23:24:30,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:24:30,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:24:30,523.523 INFO    ] No existing commands found in stream
[2026-06-05 23:24:35,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:24:35,549.549 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-05 23:24:37,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:24:37,917.917 INFO    ] Checking for system updates...
[2026-06-05 23:24:37,954.954 INFO    ] 200
[2026-06-05 23:24:37,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:38,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:24:38,015.015 INFO    ] No update needed
[2026-06-05 23:24:38,018.018 INFO    ] Checking for camera pi updates...
[2026-06-05 23:24:38,055.055 INFO    ] 200
[2026-06-05 23:24:38,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:38,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:24:38,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:24:38,159.159 INFO    ] No camera update needed
[2026-06-05 23:24:38,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:24:38,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:24:38,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:24:38,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:24:40,217.217 INFO    ] ================================================
[2026-06-05 23:24:40,231.231 INFO    ] Launching Daemon at Fri Jun  5 23:24:40 IST 2026
[2026-06-05 23:24:40,242.242 INFO    ] ================================================
[2026-06-05 23:24:40,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:24:40
[2026-06-05 23:24:41,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:24:41,801.801 INFO    ] Initializing speech engine...
[2026-06-05 23:24:41,810.810 INFO    ] 2026-06-05 23:24:41
[2026-06-05 23:24:42,096.096 INFO    ] 2026-06-05 23:24:42
[2026-06-05 23:24:42,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:24:42,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:24:42,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:24:42,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:24:42,644.644 INFO    ] time= 05/06/2026 23:24:42
[2026-06-05 23:24:42,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:24:42,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:24:42,801.801 INFO    ] No existing commands found in stream
[2026-06-05 23:24:47,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:24:47,820.820 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 23:24:52,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:24:52,031.031 INFO    ] Checking for system updates...
[2026-06-05 23:24:52,069.069 INFO    ] 200
[2026-06-05 23:24:52,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:52,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:24:52,129.129 INFO    ] No update needed
[2026-06-05 23:24:52,132.132 INFO    ] Checking for camera pi updates...
[2026-06-05 23:24:52,166.166 INFO    ] 200
[2026-06-05 23:24:52,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:24:52,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:24:52,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:24:52,270.270 INFO    ] No camera update needed
[2026-06-05 23:24:52,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:24:52,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:24:52,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:24:52,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:24:54,324.324 INFO    ] ================================================
[2026-06-05 23:24:54,339.339 INFO    ] Launching Daemon at Fri Jun  5 23:24:54 IST 2026
[2026-06-05 23:24:54,350.350 INFO    ] ================================================
[2026-06-05 23:24:54,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:24:54
[2026-06-05 23:24:55,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:24:55,812.812 INFO    ] Initializing speech engine...
[2026-06-05 23:24:55,818.818 INFO    ] 2026-06-05 23:24:55
[2026-06-05 23:24:56,065.065 INFO    ] 2026-06-05 23:24:56
[2026-06-05 23:24:56,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:24:56,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:24:56,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:24:56,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:24:56,540.540 INFO    ] time= 05/06/2026 23:24:56
[2026-06-05 23:24:56,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:24:56,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:24:56,771.771 INFO    ] No existing commands found in stream
[2026-06-05 23:25:01,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:25:01,800.800 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-05 23:25:03,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:25:03,370.370 INFO    ] Checking for system updates...
[2026-06-05 23:25:03,412.412 INFO    ] 200
[2026-06-05 23:25:03,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:03,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:25:03,471.471 INFO    ] No update needed
[2026-06-05 23:25:03,474.474 INFO    ] Checking for camera pi updates...
[2026-06-05 23:25:03,507.507 INFO    ] 200
[2026-06-05 23:25:03,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:03,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:25:03,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:25:03,609.609 INFO    ] No camera update needed
[2026-06-05 23:25:03,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:25:03,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:25:03,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:25:03,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:25:05,667.667 INFO    ] ================================================
[2026-06-05 23:25:05,682.682 INFO    ] Launching Daemon at Fri Jun  5 23:25:05 IST 2026
[2026-06-05 23:25:05,693.693 INFO    ] ================================================
[2026-06-05 23:25:06,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:25:06
[2026-06-05 23:25:06,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:25:07,216.216 INFO    ] Initializing speech engine...
[2026-06-05 23:25:07,231.231 INFO    ] 2026-06-05 23:25:07
[2026-06-05 23:25:07,510.510 INFO    ] 2026-06-05 23:25:07
[2026-06-05 23:25:07,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:25:07,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:25:07,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:25:07,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:25:07,959.959 INFO    ] time= 05/06/2026 23:25:07
[2026-06-05 23:25:08,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:25:08,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:25:08,219.219 INFO    ] No existing commands found in stream
[2026-06-05 23:25:13,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:25:13,245.245 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 23:25:14,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:25:14,444.444 INFO    ] Checking for system updates...
[2026-06-05 23:25:14,482.482 INFO    ] 200
[2026-06-05 23:25:14,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:14,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:25:14,539.539 INFO    ] No update needed
[2026-06-05 23:25:14,541.541 INFO    ] Checking for camera pi updates...
[2026-06-05 23:25:14,576.576 INFO    ] 200
[2026-06-05 23:25:14,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:14,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:25:14,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:25:14,663.663 INFO    ] No camera update needed
[2026-06-05 23:25:14,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:25:14,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:25:14,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:25:14,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:25:16,718.718 INFO    ] ================================================
[2026-06-05 23:25:16,733.733 INFO    ] Launching Daemon at Fri Jun  5 23:25:16 IST 2026
[2026-06-05 23:25:16,744.744 INFO    ] ================================================
[2026-06-05 23:25:17,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:25:17
[2026-06-05 23:25:17,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:25:18,148.148 INFO    ] Initializing speech engine...
[2026-06-05 23:25:18,163.163 INFO    ] 2026-06-05 23:25:18
[2026-06-05 23:25:18,430.430 INFO    ] 2026-06-05 23:25:18
[2026-06-05 23:25:18,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:25:18,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:25:18,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:25:18,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:25:18,915.915 INFO    ] time= 05/06/2026 23:25:18
[2026-06-05 23:25:18,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:25:19,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:25:19,113.113 INFO    ] No existing commands found in stream
[2026-06-05 23:25:24,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:25:24,144.144 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 23:25:27,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:25:27,534.534 INFO    ] Checking for system updates...
[2026-06-05 23:25:27,584.584 INFO    ] 200
[2026-06-05 23:25:27,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:27,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:25:27,650.650 INFO    ] No update needed
[2026-06-05 23:25:27,652.652 INFO    ] Checking for camera pi updates...
[2026-06-05 23:25:27,691.691 INFO    ] 200
[2026-06-05 23:25:27,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:27,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:25:27,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:25:27,804.804 INFO    ] No camera update needed
[2026-06-05 23:25:27,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:25:27,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:25:27,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:25:27,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:25:29,863.863 INFO    ] ================================================
[2026-06-05 23:25:29,878.878 INFO    ] Launching Daemon at Fri Jun  5 23:25:29 IST 2026
[2026-06-05 23:25:29,889.889 INFO    ] ================================================
[2026-06-05 23:25:30,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:25:30
[2026-06-05 23:25:31,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:25:31,485.485 INFO    ] Initializing speech engine...
[2026-06-05 23:25:31,492.492 INFO    ] 2026-06-05 23:25:31
[2026-06-05 23:25:31,768.768 INFO    ] 2026-06-05 23:25:31
[2026-06-05 23:25:31,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:25:33,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:25:33,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:25:33,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:25:33,270.270 INFO    ] time= 05/06/2026 23:25:33
[2026-06-05 23:25:33,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:25:33,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:25:33,371.371 INFO    ] No existing commands found in stream
[2026-06-05 23:25:38,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:25:38,388.388 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 23:25:39,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:25:39,570.570 INFO    ] Checking for system updates...
[2026-06-05 23:25:39,607.607 INFO    ] 200
[2026-06-05 23:25:39,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:39,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:25:39,668.668 INFO    ] No update needed
[2026-06-05 23:25:39,670.670 INFO    ] Checking for camera pi updates...
[2026-06-05 23:25:39,715.715 INFO    ] 200
[2026-06-05 23:25:39,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:39,759.759 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:25:39,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:25:39,812.812 INFO    ] No camera update needed
[2026-06-05 23:25:39,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:25:39,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:25:39,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:25:39,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:25:41,871.871 INFO    ] ================================================
[2026-06-05 23:25:41,887.887 INFO    ] Launching Daemon at Fri Jun  5 23:25:41 IST 2026
[2026-06-05 23:25:41,897.897 INFO    ] ================================================
[2026-06-05 23:25:42,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:25:42
[2026-06-05 23:25:43,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:25:43,338.338 INFO    ] Initializing speech engine...
[2026-06-05 23:25:43,347.347 INFO    ] 2026-06-05 23:25:43
[2026-06-05 23:25:43,603.603 INFO    ] 2026-06-05 23:25:43
[2026-06-05 23:25:43,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:25:43,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:25:43,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:25:44,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:25:44,074.074 INFO    ] time= 05/06/2026 23:25:44
[2026-06-05 23:25:44,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:25:44,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:25:44,311.311 INFO    ] No existing commands found in stream
[2026-06-05 23:25:49,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:25:49,332.332 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 23:25:51,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:25:51,132.132 INFO    ] Checking for system updates...
[2026-06-05 23:25:51,169.169 INFO    ] 200
[2026-06-05 23:25:51,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:51,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:25:51,228.228 INFO    ] No update needed
[2026-06-05 23:25:51,230.230 INFO    ] Checking for camera pi updates...
[2026-06-05 23:25:51,265.265 INFO    ] 200
[2026-06-05 23:25:51,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:25:51,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:25:51,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:25:51,387.387 INFO    ] No camera update needed
[2026-06-05 23:25:51,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:25:51,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:25:51,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:25:51,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:25:53,444.444 INFO    ] ================================================
[2026-06-05 23:25:53,459.459 INFO    ] Launching Daemon at Fri Jun  5 23:25:53 IST 2026
[2026-06-05 23:25:53,470.470 INFO    ] ================================================
[2026-06-05 23:25:54,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:25:54
[2026-06-05 23:25:54,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:25:54,913.913 INFO    ] Initializing speech engine...
[2026-06-05 23:25:54,923.923 INFO    ] 2026-06-05 23:25:54
[2026-06-05 23:25:55,187.187 INFO    ] 2026-06-05 23:25:55
[2026-06-05 23:25:55,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:25:55,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:25:55,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:25:55,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:25:55,678.678 INFO    ] time= 05/06/2026 23:25:55
[2026-06-05 23:25:55,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:25:55,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:25:55,871.871 INFO    ] No existing commands found in stream
[2026-06-05 23:26:00,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:26:00,898.898 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 23:26:03,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:26:03,037.037 INFO    ] Checking for system updates...
[2026-06-05 23:26:03,077.077 INFO    ] 200
[2026-06-05 23:26:03,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:03,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:26:03,149.149 INFO    ] No update needed
[2026-06-05 23:26:03,152.152 INFO    ] Checking for camera pi updates...
[2026-06-05 23:26:03,188.188 INFO    ] 200
[2026-06-05 23:26:03,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:03,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:26:03,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:26:03,279.279 INFO    ] No camera update needed
[2026-06-05 23:26:03,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:26:03,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:26:03,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:26:03,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:26:05,335.335 INFO    ] ================================================
[2026-06-05 23:26:05,350.350 INFO    ] Launching Daemon at Fri Jun  5 23:26:05 IST 2026
[2026-06-05 23:26:05,361.361 INFO    ] ================================================
[2026-06-05 23:26:05,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:26:05
[2026-06-05 23:26:06,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:26:06,930.930 INFO    ] Initializing speech engine...
[2026-06-05 23:26:06,940.940 INFO    ] 2026-06-05 23:26:06
[2026-06-05 23:26:07,199.199 INFO    ] 2026-06-05 23:26:07
[2026-06-05 23:26:07,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:26:07,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:26:07,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:26:07,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:26:07,768.768 INFO    ] time= 05/06/2026 23:26:07
[2026-06-05 23:26:07,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:26:07,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:26:07,969.969 INFO    ] No existing commands found in stream
[2026-06-05 23:26:13,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:26:13,008.008 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-05 23:26:14,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:26:14,081.081 INFO    ] Checking for system updates...
[2026-06-05 23:26:14,118.118 INFO    ] 200
[2026-06-05 23:26:14,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:14,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:26:14,182.182 INFO    ] No update needed
[2026-06-05 23:26:14,184.184 INFO    ] Checking for camera pi updates...
[2026-06-05 23:26:14,221.221 INFO    ] 200
[2026-06-05 23:26:14,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:14,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:26:14,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:26:14,414.414 INFO    ] No camera update needed
[2026-06-05 23:26:14,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:26:14,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:26:14,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:26:14,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:26:16,471.471 INFO    ] ================================================
[2026-06-05 23:26:16,487.487 INFO    ] Launching Daemon at Fri Jun  5 23:26:16 IST 2026
[2026-06-05 23:26:16,497.497 INFO    ] ================================================
[2026-06-05 23:26:17,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:26:17
[2026-06-05 23:26:17,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:26:17,902.902 INFO    ] Initializing speech engine...
[2026-06-05 23:26:17,923.923 INFO    ] 2026-06-05 23:26:17
[2026-06-05 23:26:18,183.183 INFO    ] 2026-06-05 23:26:18
[2026-06-05 23:26:18,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:26:18,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:26:18,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:26:18,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:26:18,594.594 INFO    ] time= 05/06/2026 23:26:18
[2026-06-05 23:26:18,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:26:18,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:26:18,768.768 INFO    ] No existing commands found in stream
[2026-06-05 23:26:23,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:26:23,796.796 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-05 23:26:24,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:26:24,864.864 INFO    ] Checking for system updates...
[2026-06-05 23:26:24,903.903 INFO    ] 200
[2026-06-05 23:26:24,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:24,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:26:24,966.966 INFO    ] No update needed
[2026-06-05 23:26:24,969.969 INFO    ] Checking for camera pi updates...
[2026-06-05 23:26:25,003.003 INFO    ] 200
[2026-06-05 23:26:25,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:25,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:26:25,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:26:25,101.101 INFO    ] No camera update needed
[2026-06-05 23:26:25,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:26:25,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:26:25,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:26:25,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:26:27,155.155 INFO    ] ================================================
[2026-06-05 23:26:27,170.170 INFO    ] Launching Daemon at Fri Jun  5 23:26:27 IST 2026
[2026-06-05 23:26:27,181.181 INFO    ] ================================================
[2026-06-05 23:26:27,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:26:27
[2026-06-05 23:26:28,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:26:28,648.648 INFO    ] Initializing speech engine...
[2026-06-05 23:26:28,659.659 INFO    ] 2026-06-05 23:26:28
[2026-06-05 23:26:28,917.917 INFO    ] 2026-06-05 23:26:28
[2026-06-05 23:26:28,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:26:29,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:26:29,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:26:29,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:26:29,286.286 INFO    ] time= 05/06/2026 23:26:29
[2026-06-05 23:26:29,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:26:29,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:26:29,487.487 INFO    ] No existing commands found in stream
[2026-06-05 23:26:34,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:26:34,501.501 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-05 23:26:38,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:26:38,533.533 INFO    ] Checking for system updates...
[2026-06-05 23:26:38,570.570 INFO    ] 200
[2026-06-05 23:26:38,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:38,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:26:38,627.627 INFO    ] No update needed
[2026-06-05 23:26:38,630.630 INFO    ] Checking for camera pi updates...
[2026-06-05 23:26:38,671.671 INFO    ] 200
[2026-06-05 23:26:38,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:38,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:26:38,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:26:38,769.769 INFO    ] No camera update needed
[2026-06-05 23:26:38,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:26:38,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:26:38,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:26:38,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:26:40,826.826 INFO    ] ================================================
[2026-06-05 23:26:40,841.841 INFO    ] Launching Daemon at Fri Jun  5 23:26:40 IST 2026
[2026-06-05 23:26:40,852.852 INFO    ] ================================================
[2026-06-05 23:26:41,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:26:41
[2026-06-05 23:26:42,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:26:42,296.296 INFO    ] Initializing speech engine...
[2026-06-05 23:26:42,310.310 INFO    ] 2026-06-05 23:26:42
[2026-06-05 23:26:42,593.593 INFO    ] 2026-06-05 23:26:42
[2026-06-05 23:26:42,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:26:42,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:26:42,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:26:42,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:26:43,001.001 INFO    ] time= 05/06/2026 23:26:42
[2026-06-05 23:26:43,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:26:43,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:26:43,089.089 INFO    ] No existing commands found in stream
[2026-06-05 23:26:48,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:26:48,127.127 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 23:26:49,714.714 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:26:49,717.717 INFO    ] Checking for system updates...
[2026-06-05 23:26:49,752.752 INFO    ] 200
[2026-06-05 23:26:49,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:49,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:26:49,810.810 INFO    ] No update needed
[2026-06-05 23:26:49,812.812 INFO    ] Checking for camera pi updates...
[2026-06-05 23:26:49,851.851 INFO    ] 200
[2026-06-05 23:26:49,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:26:49,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:26:49,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:26:49,949.949 INFO    ] No camera update needed
[2026-06-05 23:26:49,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:26:49,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:26:49,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:26:49,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:26:52,005.005 INFO    ] ================================================
[2026-06-05 23:26:52,020.020 INFO    ] Launching Daemon at Fri Jun  5 23:26:52 IST 2026
[2026-06-05 23:26:52,031.031 INFO    ] ================================================
[2026-06-05 23:26:52,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:26:52
[2026-06-05 23:26:53,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:26:53,637.637 INFO    ] Initializing speech engine...
[2026-06-05 23:26:53,648.648 INFO    ] 2026-06-05 23:26:53
[2026-06-05 23:26:53,938.938 INFO    ] 2026-06-05 23:26:53
[2026-06-05 23:26:53,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:26:54,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:26:54,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:26:54,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:26:54,422.422 INFO    ] time= 05/06/2026 23:26:54
[2026-06-05 23:26:54,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:26:54,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:26:54,649.649 INFO    ] No existing commands found in stream
[2026-06-05 23:26:59,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:26:59,673.673 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 23:27:03,074.074 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:27:03,078.078 INFO    ] Checking for system updates...
[2026-06-05 23:27:03,125.125 INFO    ] 200
[2026-06-05 23:27:03,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:03,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:27:03,200.200 INFO    ] No update needed
[2026-06-05 23:27:03,202.202 INFO    ] Checking for camera pi updates...
[2026-06-05 23:27:03,236.236 INFO    ] 200
[2026-06-05 23:27:03,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:03,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:27:03,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:27:03,334.334 INFO    ] No camera update needed
[2026-06-05 23:27:03,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:27:03,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:27:03,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:27:03,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:27:05,389.389 INFO    ] ================================================
[2026-06-05 23:27:05,404.404 INFO    ] Launching Daemon at Fri Jun  5 23:27:05 IST 2026
[2026-06-05 23:27:05,415.415 INFO    ] ================================================
[2026-06-05 23:27:05,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:27:05
[2026-06-05 23:27:06,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:27:06,875.875 INFO    ] Initializing speech engine...
[2026-06-05 23:27:06,883.883 INFO    ] 2026-06-05 23:27:06
[2026-06-05 23:27:07,135.135 INFO    ] 2026-06-05 23:27:07
[2026-06-05 23:27:07,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:27:07,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:27:07,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:27:07,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:27:07,512.512 INFO    ] time= 05/06/2026 23:27:07
[2026-06-05 23:27:07,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:27:07,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:27:07,696.696 INFO    ] No existing commands found in stream
[2026-06-05 23:27:12,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:27:12,724.724 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-05 23:27:14,552.552 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:27:14,555.555 INFO    ] Checking for system updates...
[2026-06-05 23:27:14,591.591 INFO    ] 200
[2026-06-05 23:27:14,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:14,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:27:14,658.658 INFO    ] No update needed
[2026-06-05 23:27:14,660.660 INFO    ] Checking for camera pi updates...
[2026-06-05 23:27:14,697.697 INFO    ] 200
[2026-06-05 23:27:14,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:14,745.745 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:27:14,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:27:14,807.807 INFO    ] No camera update needed
[2026-06-05 23:27:14,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:27:14,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:27:14,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:27:14,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:27:16,863.863 INFO    ] ================================================
[2026-06-05 23:27:16,878.878 INFO    ] Launching Daemon at Fri Jun  5 23:27:16 IST 2026
[2026-06-05 23:27:16,888.888 INFO    ] ================================================
[2026-06-05 23:27:17,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:27:17
[2026-06-05 23:27:18,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:27:18,511.511 INFO    ] Initializing speech engine...
[2026-06-05 23:27:18,519.519 INFO    ] 2026-06-05 23:27:18
[2026-06-05 23:27:18,814.814 INFO    ] 2026-06-05 23:27:18
[2026-06-05 23:27:18,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:27:19,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:27:19,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:27:19,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:27:19,370.370 INFO    ] time= 05/06/2026 23:27:19
[2026-06-05 23:27:19,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:27:19,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:27:19,604.604 INFO    ] No existing commands found in stream
[2026-06-05 23:27:24,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:27:24,628.628 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-05 23:27:29,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:27:29,134.134 INFO    ] Checking for system updates...
[2026-06-05 23:27:29,171.171 INFO    ] 200
[2026-06-05 23:27:29,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:29,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:27:29,238.238 INFO    ] No update needed
[2026-06-05 23:27:29,241.241 INFO    ] Checking for camera pi updates...
[2026-06-05 23:27:29,280.280 INFO    ] 200
[2026-06-05 23:27:29,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:29,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:27:29,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:27:29,389.389 INFO    ] No camera update needed
[2026-06-05 23:27:29,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:27:29,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:27:29,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:27:29,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:27:31,447.447 INFO    ] ================================================
[2026-06-05 23:27:31,463.463 INFO    ] Launching Daemon at Fri Jun  5 23:27:31 IST 2026
[2026-06-05 23:27:31,475.475 INFO    ] ================================================
[2026-06-05 23:27:32,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:27:32
[2026-06-05 23:27:32,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:27:33,002.002 INFO    ] Initializing speech engine...
[2026-06-05 23:27:33,009.009 INFO    ] 2026-06-05 23:27:33
[2026-06-05 23:27:33,308.308 INFO    ] 2026-06-05 23:27:33
[2026-06-05 23:27:33,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:27:33,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:27:33,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:27:33,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:27:33,727.727 INFO    ] time= 05/06/2026 23:27:33
[2026-06-05 23:27:33,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:27:33,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:27:33,922.922 INFO    ] No existing commands found in stream
[2026-06-05 23:27:38,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:27:38,950.950 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 23:27:39,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:27:39,920.920 INFO    ] Checking for system updates...
[2026-06-05 23:27:39,959.959 INFO    ] 200
[2026-06-05 23:27:39,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:40,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:27:40,024.024 INFO    ] No update needed
[2026-06-05 23:27:40,027.027 INFO    ] Checking for camera pi updates...
[2026-06-05 23:27:40,061.061 INFO    ] 200
[2026-06-05 23:27:40,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:40,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:27:40,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:27:40,151.151 INFO    ] No camera update needed
[2026-06-05 23:27:40,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:27:40,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:27:40,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:27:40,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:27:42,208.208 INFO    ] ================================================
[2026-06-05 23:27:42,223.223 INFO    ] Launching Daemon at Fri Jun  5 23:27:42 IST 2026
[2026-06-05 23:27:42,234.234 INFO    ] ================================================
[2026-06-05 23:27:42,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:27:42
[2026-06-05 23:27:43,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:27:43,831.831 INFO    ] Initializing speech engine...
[2026-06-05 23:27:43,841.841 INFO    ] 2026-06-05 23:27:43
[2026-06-05 23:27:44,111.111 INFO    ] 2026-06-05 23:27:44
[2026-06-05 23:27:44,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:27:44,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:27:44,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:27:44,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:27:44,606.606 INFO    ] time= 05/06/2026 23:27:44
[2026-06-05 23:27:44,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:27:44,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:27:44,857.857 INFO    ] No existing commands found in stream
[2026-06-05 23:27:49,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:27:49,881.881 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 23:27:51,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:27:51,765.765 INFO    ] Checking for system updates...
[2026-06-05 23:27:51,801.801 INFO    ] 200
[2026-06-05 23:27:51,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:51,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:27:51,859.859 INFO    ] No update needed
[2026-06-05 23:27:51,861.861 INFO    ] Checking for camera pi updates...
[2026-06-05 23:27:51,898.898 INFO    ] 200
[2026-06-05 23:27:51,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:27:51,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:27:51,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:27:51,999.999 INFO    ] No camera update needed
[2026-06-05 23:27:52,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:27:52,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:27:52,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:27:52,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:27:54,056.056 INFO    ] ================================================
[2026-06-05 23:27:54,070.070 INFO    ] Launching Daemon at Fri Jun  5 23:27:54 IST 2026
[2026-06-05 23:27:54,081.081 INFO    ] ================================================
[2026-06-05 23:27:54,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:27:54
[2026-06-05 23:27:55,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:27:55,684.684 INFO    ] Initializing speech engine...
[2026-06-05 23:27:55,692.692 INFO    ] 2026-06-05 23:27:55
[2026-06-05 23:27:55,973.973 INFO    ] 2026-06-05 23:27:55
[2026-06-05 23:27:56,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:27:56,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:27:56,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:27:56,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:27:56,508.508 INFO    ] time= 05/06/2026 23:27:56
[2026-06-05 23:27:56,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:27:56,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:27:56,666.666 INFO    ] No existing commands found in stream
[2026-06-05 23:28:01,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:28:01,703.703 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 23:28:05,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:28:05,026.026 INFO    ] Checking for system updates...
[2026-06-05 23:28:05,063.063 INFO    ] 200
[2026-06-05 23:28:05,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:05,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:05,123.123 INFO    ] No update needed
[2026-06-05 23:28:05,126.126 INFO    ] Checking for camera pi updates...
[2026-06-05 23:28:05,166.166 INFO    ] 200
[2026-06-05 23:28:05,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:05,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:28:05,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:05,289.289 INFO    ] No camera update needed
[2026-06-05 23:28:05,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:28:05,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:28:05,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:28:05,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:28:07,348.348 INFO    ] ================================================
[2026-06-05 23:28:07,364.364 INFO    ] Launching Daemon at Fri Jun  5 23:28:07 IST 2026
[2026-06-05 23:28:07,375.375 INFO    ] ================================================
[2026-06-05 23:28:07,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:28:07
[2026-06-05 23:28:08,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:28:08,804.804 INFO    ] Initializing speech engine...
[2026-06-05 23:28:08,810.810 INFO    ] 2026-06-05 23:28:08
[2026-06-05 23:28:09,111.111 INFO    ] 2026-06-05 23:28:09
[2026-06-05 23:28:09,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:28:09,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:28:09,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:28:09,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:28:09,514.514 INFO    ] time= 05/06/2026 23:28:09
[2026-06-05 23:28:09,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:28:09,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:28:09,624.624 INFO    ] No existing commands found in stream
[2026-06-05 23:28:14,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:28:14,639.639 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 23:28:16,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:28:16,425.425 INFO    ] Checking for system updates...
[2026-06-05 23:28:16,466.466 INFO    ] 200
[2026-06-05 23:28:16,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:16,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:16,523.523 INFO    ] No update needed
[2026-06-05 23:28:16,526.526 INFO    ] Checking for camera pi updates...
[2026-06-05 23:28:16,560.560 INFO    ] 200
[2026-06-05 23:28:16,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:16,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:28:16,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:16,751.751 INFO    ] No camera update needed
[2026-06-05 23:28:16,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:28:16,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:28:16,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:28:16,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:28:18,806.806 INFO    ] ================================================
[2026-06-05 23:28:18,821.821 INFO    ] Launching Daemon at Fri Jun  5 23:28:18 IST 2026
[2026-06-05 23:28:18,832.832 INFO    ] ================================================
[2026-06-05 23:28:19,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:28:19
[2026-06-05 23:28:20,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:28:20,486.486 INFO    ] Initializing speech engine...
[2026-06-05 23:28:20,498.498 INFO    ] 2026-06-05 23:28:20
[2026-06-05 23:28:20,789.789 INFO    ] 2026-06-05 23:28:20
[2026-06-05 23:28:20,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:28:21,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:28:21,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:28:21,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:28:21,331.331 INFO    ] time= 05/06/2026 23:28:21
[2026-06-05 23:28:21,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:28:21,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:28:21,477.477 INFO    ] No existing commands found in stream
[2026-06-05 23:28:26,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:28:26,508.508 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-05 23:28:27,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:28:27,776.776 INFO    ] Checking for system updates...
[2026-06-05 23:28:27,812.812 INFO    ] 200
[2026-06-05 23:28:27,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:27,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:27,878.878 INFO    ] No update needed
[2026-06-05 23:28:27,880.880 INFO    ] Checking for camera pi updates...
[2026-06-05 23:28:27,918.918 INFO    ] 200
[2026-06-05 23:28:27,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:27,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:28:28,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:28,041.041 INFO    ] No camera update needed
[2026-06-05 23:28:28,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:28:28,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:28:28,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:28:28,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:28:30,097.097 INFO    ] ================================================
[2026-06-05 23:28:30,112.112 INFO    ] Launching Daemon at Fri Jun  5 23:28:30 IST 2026
[2026-06-05 23:28:30,124.124 INFO    ] ================================================
[2026-06-05 23:28:30,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:28:30
[2026-06-05 23:28:31,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:28:31,751.751 INFO    ] Initializing speech engine...
[2026-06-05 23:28:31,766.766 INFO    ] 2026-06-05 23:28:31
[2026-06-05 23:28:32,044.044 INFO    ] 2026-06-05 23:28:32
[2026-06-05 23:28:32,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:28:32,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:28:32,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:28:33,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:28:33,084.084 INFO    ] time= 05/06/2026 23:28:33
[2026-06-05 23:28:33,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:28:33,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:28:33,212.212 INFO    ] No existing commands found in stream
[2026-06-05 23:28:38,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:28:38,235.235 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-05 23:28:39,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:28:39,748.748 INFO    ] Checking for system updates...
[2026-06-05 23:28:39,785.785 INFO    ] 200
[2026-06-05 23:28:39,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:39,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:39,845.845 INFO    ] No update needed
[2026-06-05 23:28:39,848.848 INFO    ] Checking for camera pi updates...
[2026-06-05 23:28:39,883.883 INFO    ] 200
[2026-06-05 23:28:39,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:39,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:28:39,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:39,988.988 INFO    ] No camera update needed
[2026-06-05 23:28:39,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:28:39,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:28:40,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:28:40,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:28:42,047.047 INFO    ] ================================================
[2026-06-05 23:28:42,063.063 INFO    ] Launching Daemon at Fri Jun  5 23:28:42 IST 2026
[2026-06-05 23:28:42,074.074 INFO    ] ================================================
[2026-06-05 23:28:42,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:28:42
[2026-06-05 23:28:43,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:28:43,540.540 INFO    ] Initializing speech engine...
[2026-06-05 23:28:43,550.550 INFO    ] 2026-06-05 23:28:43
[2026-06-05 23:28:43,808.808 INFO    ] 2026-06-05 23:28:43
[2026-06-05 23:28:43,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:28:44,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:28:44,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:28:44,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:28:44,285.285 INFO    ] time= 05/06/2026 23:28:44
[2026-06-05 23:28:44,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:28:44,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:28:44,566.566 INFO    ] No existing commands found in stream
[2026-06-05 23:28:49,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:28:49,596.596 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-05 23:28:52,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:28:52,733.733 INFO    ] Checking for system updates...
[2026-06-05 23:28:52,772.772 INFO    ] 200
[2026-06-05 23:28:52,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:52,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:52,838.838 INFO    ] No update needed
[2026-06-05 23:28:52,840.840 INFO    ] Checking for camera pi updates...
[2026-06-05 23:28:52,878.878 INFO    ] 200
[2026-06-05 23:28:52,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:28:52,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:28:52,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:28:52,985.985 INFO    ] No camera update needed
[2026-06-05 23:28:52,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:28:52,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:28:52,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:28:53,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:28:55,040.040 INFO    ] ================================================
[2026-06-05 23:28:55,056.056 INFO    ] Launching Daemon at Fri Jun  5 23:28:55 IST 2026
[2026-06-05 23:28:55,067.067 INFO    ] ================================================
[2026-06-05 23:28:55,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:28:55
[2026-06-05 23:28:56,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:28:56,498.498 INFO    ] Initializing speech engine...
[2026-06-05 23:28:56,508.508 INFO    ] 2026-06-05 23:28:56
[2026-06-05 23:28:56,803.803 INFO    ] 2026-06-05 23:28:56
[2026-06-05 23:28:56,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:28:57,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:28:57,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:28:57,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:28:57,300.300 INFO    ] time= 05/06/2026 23:28:57
[2026-06-05 23:28:57,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:28:57,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:28:57,482.482 INFO    ] No existing commands found in stream
[2026-06-05 23:29:02,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:29:02,508.508 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-05 23:29:03,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:29:03,450.450 INFO    ] Checking for system updates...
[2026-06-05 23:29:03,487.487 INFO    ] 200
[2026-06-05 23:29:03,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:03,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:29:03,547.547 INFO    ] No update needed
[2026-06-05 23:29:03,550.550 INFO    ] Checking for camera pi updates...
[2026-06-05 23:29:03,584.584 INFO    ] 200
[2026-06-05 23:29:03,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:03,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:29:03,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:29:03,770.770 INFO    ] No camera update needed
[2026-06-05 23:29:03,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:29:03,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:29:03,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:29:03,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:29:05,827.827 INFO    ] ================================================
[2026-06-05 23:29:05,843.843 INFO    ] Launching Daemon at Fri Jun  5 23:29:05 IST 2026
[2026-06-05 23:29:05,854.854 INFO    ] ================================================
[2026-06-05 23:29:06,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:29:06
[2026-06-05 23:29:07,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:29:07,315.315 INFO    ] Initializing speech engine...
[2026-06-05 23:29:07,325.325 INFO    ] 2026-06-05 23:29:07
[2026-06-05 23:29:07,574.574 INFO    ] 2026-06-05 23:29:07
[2026-06-05 23:29:07,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:29:07,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:29:07,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:29:08,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:29:08,071.071 INFO    ] time= 05/06/2026 23:29:08
[2026-06-05 23:29:08,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:29:08,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:29:08,271.271 INFO    ] No existing commands found in stream
[2026-06-05 23:29:13,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:29:13,299.299 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-05 23:29:16,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:29:16,146.146 INFO    ] Checking for system updates...
[2026-06-05 23:29:16,186.186 INFO    ] 200
[2026-06-05 23:29:16,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:16,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:29:16,251.251 INFO    ] No update needed
[2026-06-05 23:29:16,253.253 INFO    ] Checking for camera pi updates...
[2026-06-05 23:29:16,290.290 INFO    ] 200
[2026-06-05 23:29:16,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:16,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:29:16,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:29:16,387.387 INFO    ] No camera update needed
[2026-06-05 23:29:16,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:29:16,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:29:16,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:29:16,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:29:18,445.445 INFO    ] ================================================
[2026-06-05 23:29:18,461.461 INFO    ] Launching Daemon at Fri Jun  5 23:29:18 IST 2026
[2026-06-05 23:29:18,472.472 INFO    ] ================================================
[2026-06-05 23:29:19,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:29:19
[2026-06-05 23:29:19,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:29:19,890.890 INFO    ] Initializing speech engine...
[2026-06-05 23:29:19,899.899 INFO    ] 2026-06-05 23:29:19
[2026-06-05 23:29:20,190.190 INFO    ] 2026-06-05 23:29:20
[2026-06-05 23:29:20,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:29:20,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:29:20,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:29:20,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:29:20,570.570 INFO    ] time= 05/06/2026 23:29:20
[2026-06-05 23:29:20,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:29:20,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:29:20,693.693 INFO    ] No existing commands found in stream
[2026-06-05 23:29:25,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:29:25,708.708 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 23:29:26,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:29:26,423.423 INFO    ] Checking for system updates...
[2026-06-05 23:29:26,459.459 INFO    ] 200
[2026-06-05 23:29:26,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:26,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:29:26,517.517 INFO    ] No update needed
[2026-06-05 23:29:26,519.519 INFO    ] Checking for camera pi updates...
[2026-06-05 23:29:26,557.557 INFO    ] 200
[2026-06-05 23:29:26,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:26,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:29:26,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:29:26,664.664 INFO    ] No camera update needed
[2026-06-05 23:29:26,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:29:26,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:29:26,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:29:26,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:29:28,720.720 INFO    ] ================================================
[2026-06-05 23:29:28,735.735 INFO    ] Launching Daemon at Fri Jun  5 23:29:28 IST 2026
[2026-06-05 23:29:28,746.746 INFO    ] ================================================
[2026-06-05 23:29:29,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:29:29
[2026-06-05 23:29:30,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:29:30,350.350 INFO    ] Initializing speech engine...
[2026-06-05 23:29:30,358.358 INFO    ] 2026-06-05 23:29:30
[2026-06-05 23:29:30,631.631 INFO    ] 2026-06-05 23:29:30
[2026-06-05 23:29:30,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:29:32,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:29:32,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:29:32,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:29:32,737.737 INFO    ] time= 05/06/2026 23:29:32
[2026-06-05 23:29:32,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:29:32,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:29:32,805.805 INFO    ] No existing commands found in stream
[2026-06-05 23:29:37,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:29:37,821.821 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-05 23:29:41,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:29:41,851.851 INFO    ] Checking for system updates...
[2026-06-05 23:29:41,888.888 INFO    ] 200
[2026-06-05 23:29:41,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:41,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:29:41,946.946 INFO    ] No update needed
[2026-06-05 23:29:41,948.948 INFO    ] Checking for camera pi updates...
[2026-06-05 23:29:41,983.983 INFO    ] 200
[2026-06-05 23:29:41,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:42,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:29:42,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:29:42,101.101 INFO    ] No camera update needed
[2026-06-05 23:29:42,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:29:42,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:29:42,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:29:42,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:29:44,156.156 INFO    ] ================================================
[2026-06-05 23:29:44,171.171 INFO    ] Launching Daemon at Fri Jun  5 23:29:44 IST 2026
[2026-06-05 23:29:44,181.181 INFO    ] ================================================
[2026-06-05 23:29:44,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:29:44
[2026-06-05 23:29:45,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:29:45,602.602 INFO    ] Initializing speech engine...
[2026-06-05 23:29:45,611.611 INFO    ] 2026-06-05 23:29:45
[2026-06-05 23:29:45,905.905 INFO    ] 2026-06-05 23:29:45
[2026-06-05 23:29:45,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:29:46,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:29:46,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:29:46,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:29:46,318.318 INFO    ] time= 05/06/2026 23:29:46
[2026-06-05 23:29:46,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:29:46,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:29:46,477.477 INFO    ] No existing commands found in stream
[2026-06-05 23:29:51,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:29:51,500.500 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-05 23:29:53,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:29:53,139.139 INFO    ] Checking for system updates...
[2026-06-05 23:29:53,175.175 INFO    ] 200
[2026-06-05 23:29:53,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:53,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:29:53,239.239 INFO    ] No update needed
[2026-06-05 23:29:53,242.242 INFO    ] Checking for camera pi updates...
[2026-06-05 23:29:53,279.279 INFO    ] 200
[2026-06-05 23:29:53,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:29:53,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:29:53,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:29:53,383.383 INFO    ] No camera update needed
[2026-06-05 23:29:53,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:29:53,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:29:53,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:29:53,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:29:55,439.439 INFO    ] ================================================
[2026-06-05 23:29:55,455.455 INFO    ] Launching Daemon at Fri Jun  5 23:29:55 IST 2026
[2026-06-05 23:29:55,466.466 INFO    ] ================================================
[2026-06-05 23:29:56,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:29:56
[2026-06-05 23:29:56,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:29:56,887.887 INFO    ] Initializing speech engine...
[2026-06-05 23:29:56,903.903 INFO    ] 2026-06-05 23:29:56
[2026-06-05 23:29:57,186.186 INFO    ] 2026-06-05 23:29:57
[2026-06-05 23:29:57,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:29:57,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:29:57,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:29:57,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:29:57,603.603 INFO    ] time= 05/06/2026 23:29:57
[2026-06-05 23:29:57,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:29:57,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:29:57,757.757 INFO    ] No existing commands found in stream
[2026-06-05 23:30:02,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:30:02,780.780 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-05 23:30:08,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:30:08,761.761 INFO    ] Checking for system updates...
[2026-06-05 23:30:08,800.800 INFO    ] 200
[2026-06-05 23:30:08,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:08,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:08,866.866 INFO    ] No update needed
[2026-06-05 23:30:08,868.868 INFO    ] Checking for camera pi updates...
[2026-06-05 23:30:08,908.908 INFO    ] 200
[2026-06-05 23:30:08,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:08,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:30:08,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:08,988.988 INFO    ] No camera update needed
[2026-06-05 23:30:08,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:30:09,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:30:09,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:30:09,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:30:11,053.053 INFO    ] ================================================
[2026-06-05 23:30:11,068.068 INFO    ] Launching Daemon at Fri Jun  5 23:30:11 IST 2026
[2026-06-05 23:30:11,079.079 INFO    ] ================================================
[2026-06-05 23:30:11,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:30:11
[2026-06-05 23:30:12,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:30:12,494.494 INFO    ] Initializing speech engine...
[2026-06-05 23:30:12,500.500 INFO    ] 2026-06-05 23:30:12
[2026-06-05 23:30:12,802.802 INFO    ] 2026-06-05 23:30:12
[2026-06-05 23:30:12,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:30:13,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:30:13,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:30:13,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:30:13,227.227 INFO    ] time= 05/06/2026 23:30:13
[2026-06-05 23:30:13,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:30:13,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:30:13,313.313 INFO    ] No existing commands found in stream
[2026-06-05 23:30:18,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:30:18,329.329 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-05 23:30:20,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:30:20,795.795 INFO    ] Checking for system updates...
[2026-06-05 23:30:20,831.831 INFO    ] 200
[2026-06-05 23:30:20,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:20,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:20,889.889 INFO    ] No update needed
[2026-06-05 23:30:20,891.891 INFO    ] Checking for camera pi updates...
[2026-06-05 23:30:20,925.925 INFO    ] 200
[2026-06-05 23:30:20,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:20,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:30:21,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:21,126.126 INFO    ] No camera update needed
[2026-06-05 23:30:21,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:30:21,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:30:21,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:30:21,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:30:23,183.183 INFO    ] ================================================
[2026-06-05 23:30:23,200.200 INFO    ] Launching Daemon at Fri Jun  5 23:30:23 IST 2026
[2026-06-05 23:30:23,212.212 INFO    ] ================================================
[2026-06-05 23:30:23,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:30:23
[2026-06-05 23:30:24,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:30:24,651.651 INFO    ] Initializing speech engine...
[2026-06-05 23:30:24,658.658 INFO    ] 2026-06-05 23:30:24
[2026-06-05 23:30:24,918.918 INFO    ] 2026-06-05 23:30:24
[2026-06-05 23:30:24,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:30:25,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:30:25,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:30:25,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:30:25,412.412 INFO    ] time= 05/06/2026 23:30:25
[2026-06-05 23:30:25,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:30:25,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:30:25,606.606 INFO    ] No existing commands found in stream
[2026-06-05 23:30:30,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:30:30,629.629 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-05 23:30:33,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:30:33,034.034 INFO    ] Checking for system updates...
[2026-06-05 23:30:33,073.073 INFO    ] 200
[2026-06-05 23:30:33,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:33,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:33,137.137 INFO    ] No update needed
[2026-06-05 23:30:33,140.140 INFO    ] Checking for camera pi updates...
[2026-06-05 23:30:33,177.177 INFO    ] 200
[2026-06-05 23:30:33,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:33,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:30:33,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:33,261.261 INFO    ] No camera update needed
[2026-06-05 23:30:33,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:30:33,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:30:33,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:30:33,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:30:35,319.319 INFO    ] ================================================
[2026-06-05 23:30:35,335.335 INFO    ] Launching Daemon at Fri Jun  5 23:30:35 IST 2026
[2026-06-05 23:30:35,347.347 INFO    ] ================================================
[2026-06-05 23:30:35,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:30:35
[2026-06-05 23:30:36,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:30:36,957.957 INFO    ] Initializing speech engine...
[2026-06-05 23:30:36,966.966 INFO    ] 2026-06-05 23:30:36
[2026-06-05 23:30:37,256.256 INFO    ] 2026-06-05 23:30:37
[2026-06-05 23:30:37,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:30:37,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:30:37,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:30:37,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:30:37,790.790 INFO    ] time= 05/06/2026 23:30:37
[2026-06-05 23:30:37,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:30:37,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:30:37,947.947 INFO    ] No existing commands found in stream
[2026-06-05 23:30:42,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:30:42,977.977 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-05 23:30:44,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:30:44,431.431 INFO    ] Checking for system updates...
[2026-06-05 23:30:44,472.472 INFO    ] 200
[2026-06-05 23:30:44,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:44,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:44,538.538 INFO    ] No update needed
[2026-06-05 23:30:44,541.541 INFO    ] Checking for camera pi updates...
[2026-06-05 23:30:44,579.579 INFO    ] 200
[2026-06-05 23:30:44,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:44,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:30:44,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:44,678.678 INFO    ] No camera update needed
[2026-06-05 23:30:44,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:30:44,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:30:44,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:30:44,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:30:46,737.737 INFO    ] ================================================
[2026-06-05 23:30:46,752.752 INFO    ] Launching Daemon at Fri Jun  5 23:30:46 IST 2026
[2026-06-05 23:30:46,764.764 INFO    ] ================================================
[2026-06-05 23:30:47,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:30:47
[2026-06-05 23:30:47,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:30:48,192.192 INFO    ] Initializing speech engine...
[2026-06-05 23:30:48,202.202 INFO    ] 2026-06-05 23:30:48
[2026-06-05 23:30:48,450.450 INFO    ] 2026-06-05 23:30:48
[2026-06-05 23:30:48,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:30:48,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:30:48,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:30:48,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:30:48,889.889 INFO    ] time= 05/06/2026 23:30:48
[2026-06-05 23:30:48,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:30:48,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:30:49,127.127 INFO    ] No existing commands found in stream
[2026-06-05 23:30:54,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:30:54,152.152 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-05 23:30:57,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:30:57,053.053 INFO    ] Checking for system updates...
[2026-06-05 23:30:57,089.089 INFO    ] 200
[2026-06-05 23:30:57,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:57,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:57,147.147 INFO    ] No update needed
[2026-06-05 23:30:57,149.149 INFO    ] Checking for camera pi updates...
[2026-06-05 23:30:57,187.187 INFO    ] 200
[2026-06-05 23:30:57,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:30:57,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:30:57,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:30:57,291.291 INFO    ] No camera update needed
[2026-06-05 23:30:57,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:30:57,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:30:57,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:30:57,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:30:59,349.349 INFO    ] ================================================
[2026-06-05 23:30:59,364.364 INFO    ] Launching Daemon at Fri Jun  5 23:30:59 IST 2026
[2026-06-05 23:30:59,376.376 INFO    ] ================================================
[2026-06-05 23:31:00,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:31:00
[2026-06-05 23:31:00,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:31:00,988.988 INFO    ] Initializing speech engine...
[2026-06-05 23:31:00,996.996 INFO    ] 2026-06-05 23:31:00
[2026-06-05 23:31:01,269.269 INFO    ] 2026-06-05 23:31:01
[2026-06-05 23:31:01,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:31:02,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:31:02,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:31:02,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:31:02,943.943 INFO    ] time= 05/06/2026 23:31:02
[2026-06-05 23:31:02,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:31:02,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:31:03,265.265 INFO    ] No existing commands found in stream
[2026-06-05 23:31:08,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:31:08,289.289 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-05 23:31:12,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:31:12,533.533 INFO    ] Checking for system updates...
[2026-06-05 23:31:12,570.570 INFO    ] 200
[2026-06-05 23:31:12,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:31:12,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:31:12,633.633 INFO    ] No update needed
[2026-06-05 23:31:12,639.639 INFO    ] Checking for camera pi updates...
[2026-06-05 23:31:12,674.674 INFO    ] 200
[2026-06-05 23:31:12,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:31:12,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:31:12,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:31:12,784.784 INFO    ] No camera update needed
[2026-06-05 23:31:12,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:31:12,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:31:12,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:31:12,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:31:14,843.843 INFO    ] ================================================
[2026-06-05 23:31:14,858.858 INFO    ] Launching Daemon at Fri Jun  5 23:31:14 IST 2026
[2026-06-05 23:31:14,869.869 INFO    ] ================================================
[2026-06-05 23:31:15,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:31:15
[2026-06-05 23:31:16,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:31:16,498.498 INFO    ] Initializing speech engine...
[2026-06-05 23:31:16,506.506 INFO    ] 2026-06-05 23:31:16
[2026-06-05 23:31:16,796.796 INFO    ] 2026-06-05 23:31:16
[2026-06-05 23:31:16,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:31:17,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:31:17,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:31:17,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:31:17,245.245 INFO    ] time= 05/06/2026 23:31:17
[2026-06-05 23:31:17,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:31:17,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:31:17,477.477 INFO    ] No existing commands found in stream
[2026-06-05 23:31:22,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:31:22,497.497 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-05 23:31:24,462.462 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:31:24,465.465 INFO    ] Checking for system updates...
[2026-06-05 23:31:24,502.502 INFO    ] 200
[2026-06-05 23:31:24,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:31:24,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:31:24,571.571 INFO    ] No update needed
[2026-06-05 23:31:24,574.574 INFO    ] Checking for camera pi updates...
[2026-06-05 23:31:24,609.609 INFO    ] 200
[2026-06-05 23:31:24,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:31:24,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:31:24,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:31:24,708.708 INFO    ] No camera update needed
[2026-06-05 23:31:24,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:31:24,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:31:24,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:31:24,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:31:26,768.768 INFO    ] ================================================
[2026-06-05 23:31:26,784.784 INFO    ] Launching Daemon at Fri Jun  5 23:31:26 IST 2026
[2026-06-05 23:31:26,795.795 INFO    ] ================================================
[2026-06-05 23:31:27,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:31:27
[2026-06-05 23:31:27,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:31:28,227.227 INFO    ] Initializing speech engine...
[2026-06-05 23:31:28,233.233 INFO    ] 2026-06-05 23:31:28
[2026-06-05 23:31:28,479.479 INFO    ] 2026-06-05 23:31:28
[2026-06-05 23:31:28,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:31:28,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:31:28,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:31:28,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:31:28,942.942 INFO    ] time= 05/06/2026 23:31:28
[2026-06-05 23:31:29,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:31:29,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:31:29,183.183 INFO    ] No existing commands found in stream
[2026-06-05 23:31:34,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:31:34,200.200 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-05 23:31:36,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:31:36,417.417 INFO    ] Checking for system updates...
[2026-06-05 23:31:36,454.454 INFO    ] 200
[2026-06-05 23:31:36,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:31:36,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:31:36,519.519 INFO    ] No update needed
[2026-06-05 23:31:36,521.521 INFO    ] Checking for camera pi updates...
[2026-06-05 23:31:36,559.559 INFO    ] 200
[2026-06-05 23:31:36,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:31:36,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:31:36,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:31:36,669.669 INFO    ] No camera update needed
[2026-06-05 23:31:36,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:31:36,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:31:36,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:31:36,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:31:38,726.726 INFO    ] ================================================
[2026-06-05 23:31:38,742.742 INFO    ] Launching Daemon at Fri Jun  5 23:31:38 IST 2026
[2026-06-05 23:31:38,753.753 INFO    ] ================================================
[2026-06-05 23:31:39,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:31:39
[2026-06-05 23:31:39,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:31:40,197.197 INFO    ] Initializing speech engine...
[2026-06-05 23:31:40,205.205 INFO    ] 2026-06-05 23:31:40
[2026-06-05 23:31:40,453.453 INFO    ] 2026-06-05 23:31:40
[2026-06-05 23:31:40,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:31:40,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:31:40,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:31:40,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:31:40,919.919 INFO    ] time= 05/06/2026 23:31:40
[2026-06-05 23:31:40,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:31:41,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:31:41,133.133 INFO    ] No existing commands found in stream
[2026-06-05 23:31:46,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:31:46,158.158 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-05 23:31:48,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:31:48,185.185 INFO    ] Checking for system updates...
[2026-06-05 23:31:48,223.223 INFO    ] 200
[2026-06-05 23:31:48,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:31:48,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:31:48,282.282 INFO    ] No update needed
[2026-06-05 23:31:48,284.284 INFO    ] Checking for camera pi updates...
[2026-06-05 23:31:48,319.319 INFO    ] 200
[2026-06-05 23:31:48,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:31:48,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:31:48,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:31:48,424.424 INFO    ] No camera update needed
[2026-06-05 23:31:48,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:31:48,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:31:48,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:31:48,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:31:50,480.480 INFO    ] ================================================
[2026-06-05 23:31:50,496.496 INFO    ] Launching Daemon at Fri Jun  5 23:31:50 IST 2026
[2026-06-05 23:31:50,507.507 INFO    ] ================================================
[2026-06-05 23:31:51,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:31:51
[2026-06-05 23:31:51,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:31:52,069.069 INFO    ] Initializing speech engine...
[2026-06-05 23:31:52,083.083 INFO    ] 2026-06-05 23:31:52
[2026-06-05 23:31:52,347.347 INFO    ] 2026-06-05 23:31:52
[2026-06-05 23:31:52,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:31:52,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:31:52,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:31:52,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:31:52,945.945 INFO    ] time= 05/06/2026 23:31:52
[2026-06-05 23:31:52,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:31:53,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:31:53,157.157 INFO    ] No existing commands found in stream
[2026-06-05 23:31:58,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:31:58,191.191 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-05 23:32:00,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:32:00,564.564 INFO    ] Checking for system updates...
[2026-06-05 23:32:00,600.600 INFO    ] 200
[2026-06-05 23:32:00,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:00,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:32:00,662.662 INFO    ] No update needed
[2026-06-05 23:32:00,664.664 INFO    ] Checking for camera pi updates...
[2026-06-05 23:32:00,700.700 INFO    ] 200
[2026-06-05 23:32:00,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:00,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:32:00,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:32:00,802.802 INFO    ] No camera update needed
[2026-06-05 23:32:00,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:32:00,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:32:00,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:32:00,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:32:02,862.862 INFO    ] ================================================
[2026-06-05 23:32:02,880.880 INFO    ] Launching Daemon at Fri Jun  5 23:32:02 IST 2026
[2026-06-05 23:32:02,898.898 INFO    ] ================================================
[2026-06-05 23:32:03,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:32:03
[2026-06-05 23:32:04,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:32:04,397.397 INFO    ] Initializing speech engine...
[2026-06-05 23:32:04,405.405 INFO    ] 2026-06-05 23:32:04
[2026-06-05 23:32:04,703.703 INFO    ] 2026-06-05 23:32:04
[2026-06-05 23:32:04,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:32:04,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:32:04,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:32:05,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:32:05,108.108 INFO    ] time= 05/06/2026 23:32:05
[2026-06-05 23:32:05,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:32:05,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:32:05,189.189 INFO    ] No existing commands found in stream
[2026-06-05 23:32:10,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:32:10,204.204 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 23:32:10,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:32:10,757.757 INFO    ] Checking for system updates...
[2026-06-05 23:32:10,795.795 INFO    ] 200
[2026-06-05 23:32:10,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:10,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:32:10,858.858 INFO    ] No update needed
[2026-06-05 23:32:10,860.860 INFO    ] Checking for camera pi updates...
[2026-06-05 23:32:10,896.896 INFO    ] 200
[2026-06-05 23:32:10,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:10,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:32:11,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:32:11,005.005 INFO    ] No camera update needed
[2026-06-05 23:32:11,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:32:11,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:32:11,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:32:11,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:32:13,062.062 INFO    ] ================================================
[2026-06-05 23:32:13,077.077 INFO    ] Launching Daemon at Fri Jun  5 23:32:13 IST 2026
[2026-06-05 23:32:13,088.088 INFO    ] ================================================
[2026-06-05 23:32:13,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:32:13
[2026-06-05 23:32:14,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:32:14,507.507 INFO    ] Initializing speech engine...
[2026-06-05 23:32:14,531.531 INFO    ] 2026-06-05 23:32:14
[2026-06-05 23:32:14,799.799 INFO    ] 2026-06-05 23:32:14
[2026-06-05 23:32:14,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:32:15,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:32:15,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:32:15,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:32:15,207.207 INFO    ] time= 05/06/2026 23:32:15
[2026-06-05 23:32:15,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:32:15,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:32:15,367.367 INFO    ] No existing commands found in stream
[2026-06-05 23:32:20,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:32:20,395.395 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 23:32:22,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:32:22,358.358 INFO    ] Checking for system updates...
[2026-06-05 23:32:22,395.395 INFO    ] 200
[2026-06-05 23:32:22,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:22,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:32:22,457.457 INFO    ] No update needed
[2026-06-05 23:32:22,460.460 INFO    ] Checking for camera pi updates...
[2026-06-05 23:32:22,493.493 INFO    ] 200
[2026-06-05 23:32:22,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:22,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:32:22,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:32:22,585.585 INFO    ] No camera update needed
[2026-06-05 23:32:22,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:32:22,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:32:22,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:32:22,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:32:24,641.641 INFO    ] ================================================
[2026-06-05 23:32:24,657.657 INFO    ] Launching Daemon at Fri Jun  5 23:32:24 IST 2026
[2026-06-05 23:32:24,668.668 INFO    ] ================================================
[2026-06-05 23:32:25,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:32:25
[2026-06-05 23:32:25,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:32:26,256.256 INFO    ] Initializing speech engine...
[2026-06-05 23:32:26,262.262 INFO    ] 2026-06-05 23:32:26
[2026-06-05 23:32:26,546.546 INFO    ] 2026-06-05 23:32:26
[2026-06-05 23:32:26,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:32:26,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:32:26,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:32:27,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:32:27,066.066 INFO    ] time= 05/06/2026 23:32:27
[2026-06-05 23:32:27,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:32:27,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:32:27,273.273 INFO    ] No existing commands found in stream
[2026-06-05 23:32:32,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:32:32,291.291 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 23:32:35,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:32:35,735.735 INFO    ] Checking for system updates...
[2026-06-05 23:32:35,772.772 INFO    ] 200
[2026-06-05 23:32:35,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:35,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:32:35,833.833 INFO    ] No update needed
[2026-06-05 23:32:35,836.836 INFO    ] Checking for camera pi updates...
[2026-06-05 23:32:35,871.871 INFO    ] 200
[2026-06-05 23:32:35,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:35,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:32:35,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:32:35,981.981 INFO    ] No camera update needed
[2026-06-05 23:32:35,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:32:35,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:32:35,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:32:35,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:32:38,039.039 INFO    ] ================================================
[2026-06-05 23:32:38,055.055 INFO    ] Launching Daemon at Fri Jun  5 23:32:38 IST 2026
[2026-06-05 23:32:38,066.066 INFO    ] ================================================
[2026-06-05 23:32:38,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:32:38
[2026-06-05 23:32:39,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:32:39,487.487 INFO    ] Initializing speech engine...
[2026-06-05 23:32:39,505.505 INFO    ] 2026-06-05 23:32:39
[2026-06-05 23:32:39,759.759 INFO    ] 2026-06-05 23:32:39
[2026-06-05 23:32:39,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:32:40,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:32:40,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:32:40,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:32:40,326.326 INFO    ] time= 05/06/2026 23:32:40
[2026-06-05 23:32:40,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:32:40,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:32:40,469.469 INFO    ] No existing commands found in stream
[2026-06-05 23:32:45,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:32:45,494.494 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-05 23:32:48,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:32:48,348.348 INFO    ] Checking for system updates...
[2026-06-05 23:32:48,389.389 INFO    ] 200
[2026-06-05 23:32:48,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:48,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:32:48,454.454 INFO    ] No update needed
[2026-06-05 23:32:48,457.457 INFO    ] Checking for camera pi updates...
[2026-06-05 23:32:48,495.495 INFO    ] 200
[2026-06-05 23:32:48,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:32:48,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:32:48,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:32:48,588.588 INFO    ] No camera update needed
[2026-06-05 23:32:48,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:32:48,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:32:48,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:32:48,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:32:50,647.647 INFO    ] ================================================
[2026-06-05 23:32:50,662.662 INFO    ] Launching Daemon at Fri Jun  5 23:32:50 IST 2026
[2026-06-05 23:32:50,674.674 INFO    ] ================================================
[2026-06-05 23:32:51,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:32:51
[2026-06-05 23:32:51,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:32:52,081.081 INFO    ] Initializing speech engine...
[2026-06-05 23:32:52,106.106 INFO    ] 2026-06-05 23:32:52
[2026-06-05 23:32:52,362.362 INFO    ] 2026-06-05 23:32:52
[2026-06-05 23:32:52,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:32:52,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:32:52,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:32:52,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:32:52,738.738 INFO    ] time= 05/06/2026 23:32:52
[2026-06-05 23:32:52,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:32:52,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:32:52,917.917 INFO    ] No existing commands found in stream
[2026-06-05 23:32:57,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:32:57,945.945 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-05 23:33:02,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:33:02,946.946 INFO    ] Checking for system updates...
[2026-06-05 23:33:02,989.989 INFO    ] 200
[2026-06-05 23:33:02,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:03,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:33:03,055.055 INFO    ] No update needed
[2026-06-05 23:33:03,058.058 INFO    ] Checking for camera pi updates...
[2026-06-05 23:33:03,096.096 INFO    ] 200
[2026-06-05 23:33:03,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:03,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:33:03,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:33:03,193.193 INFO    ] No camera update needed
[2026-06-05 23:33:03,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:33:03,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:33:03,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:33:03,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:33:05,258.258 INFO    ] ================================================
[2026-06-05 23:33:05,274.274 INFO    ] Launching Daemon at Fri Jun  5 23:33:05 IST 2026
[2026-06-05 23:33:05,285.285 INFO    ] ================================================
[2026-06-05 23:33:05,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:33:05
[2026-06-05 23:33:06,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:33:06,696.696 INFO    ] Initializing speech engine...
[2026-06-05 23:33:06,724.724 INFO    ] 2026-06-05 23:33:06
[2026-06-05 23:33:07,003.003 INFO    ] 2026-06-05 23:33:06
[2026-06-05 23:33:07,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:33:07,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:33:07,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:33:07,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:33:07,571.571 INFO    ] time= 05/06/2026 23:33:07
[2026-06-05 23:33:07,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:33:07,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:33:07,734.734 INFO    ] No existing commands found in stream
[2026-06-05 23:33:12,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:33:12,762.762 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-05 23:33:15,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:33:15,813.813 INFO    ] Checking for system updates...
[2026-06-05 23:33:15,851.851 INFO    ] 200
[2026-06-05 23:33:15,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:15,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:33:15,910.910 INFO    ] No update needed
[2026-06-05 23:33:15,913.913 INFO    ] Checking for camera pi updates...
[2026-06-05 23:33:15,948.948 INFO    ] 200
[2026-06-05 23:33:15,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:15,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:33:16,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:33:16,046.046 INFO    ] No camera update needed
[2026-06-05 23:33:16,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:33:16,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:33:16,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:33:16,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:33:18,104.104 INFO    ] ================================================
[2026-06-05 23:33:18,120.120 INFO    ] Launching Daemon at Fri Jun  5 23:33:18 IST 2026
[2026-06-05 23:33:18,132.132 INFO    ] ================================================
[2026-06-05 23:33:18,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:33:18
[2026-06-05 23:33:19,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:33:19,554.554 INFO    ] Initializing speech engine...
[2026-06-05 23:33:19,567.567 INFO    ] 2026-06-05 23:33:19
[2026-06-05 23:33:19,841.841 INFO    ] 2026-06-05 23:33:19
[2026-06-05 23:33:19,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:33:20,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:33:20,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:33:20,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:33:20,293.293 INFO    ] time= 05/06/2026 23:33:20
[2026-06-05 23:33:20,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:33:20,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:33:20,526.526 INFO    ] No existing commands found in stream
[2026-06-05 23:33:25,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:33:25,543.543 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-05 23:33:29,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:33:29,592.592 INFO    ] Checking for system updates...
[2026-06-05 23:33:29,628.628 INFO    ] 200
[2026-06-05 23:33:29,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:29,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:33:29,686.686 INFO    ] No update needed
[2026-06-05 23:33:29,689.689 INFO    ] Checking for camera pi updates...
[2026-06-05 23:33:29,723.723 INFO    ] 200
[2026-06-05 23:33:29,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:29,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:33:29,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:33:29,822.822 INFO    ] No camera update needed
[2026-06-05 23:33:29,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:33:29,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:33:29,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:33:29,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:33:31,881.881 INFO    ] ================================================
[2026-06-05 23:33:31,896.896 INFO    ] Launching Daemon at Fri Jun  5 23:33:31 IST 2026
[2026-06-05 23:33:31,907.907 INFO    ] ================================================
[2026-06-05 23:33:32,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:33:32
[2026-06-05 23:33:33,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:33:33,561.561 INFO    ] Initializing speech engine...
[2026-06-05 23:33:33,570.570 INFO    ] 2026-06-05 23:33:33
[2026-06-05 23:33:33,831.831 INFO    ] 2026-06-05 23:33:33
[2026-06-05 23:33:33,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:33:34,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:33:34,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:33:34,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:33:34,309.309 INFO    ] time= 05/06/2026 23:33:34
[2026-06-05 23:33:34,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:33:34,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:33:34,514.514 INFO    ] No existing commands found in stream
[2026-06-05 23:33:39,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:33:39,544.544 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-05 23:33:40,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:33:40,699.699 INFO    ] Checking for system updates...
[2026-06-05 23:33:40,736.736 INFO    ] 200
[2026-06-05 23:33:40,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:40,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:33:40,793.793 INFO    ] No update needed
[2026-06-05 23:33:40,796.796 INFO    ] Checking for camera pi updates...
[2026-06-05 23:33:40,829.829 INFO    ] 200
[2026-06-05 23:33:40,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:40,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:33:40,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:33:40,926.926 INFO    ] No camera update needed
[2026-06-05 23:33:40,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:33:40,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:33:40,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:33:40,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:33:42,984.984 INFO    ] ================================================
[2026-06-05 23:33:43,000.000 INFO    ] Launching Daemon at Fri Jun  5 23:33:42 IST 2026
[2026-06-05 23:33:43,011.011 INFO    ] ================================================
[2026-06-05 23:33:43,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:33:43
[2026-06-05 23:33:44,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:33:44,497.497 INFO    ] Initializing speech engine...
[2026-06-05 23:33:44,510.510 INFO    ] 2026-06-05 23:33:44
[2026-06-05 23:33:44,792.792 INFO    ] 2026-06-05 23:33:44
[2026-06-05 23:33:44,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:33:45,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:33:45,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:33:45,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:33:45,345.345 INFO    ] time= 05/06/2026 23:33:45
[2026-06-05 23:33:45,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:33:45,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:33:45,504.504 INFO    ] No existing commands found in stream
[2026-06-05 23:33:50,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:33:50,530.530 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-05 23:33:52,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:33:52,606.606 INFO    ] Checking for system updates...
[2026-06-05 23:33:52,647.647 INFO    ] 200
[2026-06-05 23:33:52,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:52,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:33:52,712.712 INFO    ] No update needed
[2026-06-05 23:33:52,715.715 INFO    ] Checking for camera pi updates...
[2026-06-05 23:33:52,753.753 INFO    ] 200
[2026-06-05 23:33:52,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:33:52,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:33:52,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:33:52,861.861 INFO    ] No camera update needed
[2026-06-05 23:33:52,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:33:52,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:33:52,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:33:52,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:33:54,919.919 INFO    ] ================================================
[2026-06-05 23:33:54,935.935 INFO    ] Launching Daemon at Fri Jun  5 23:33:54 IST 2026
[2026-06-05 23:33:54,946.946 INFO    ] ================================================
[2026-06-05 23:33:55,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:33:55
[2026-06-05 23:33:56,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:33:56,361.361 INFO    ] Initializing speech engine...
[2026-06-05 23:33:56,384.384 INFO    ] 2026-06-05 23:33:56
[2026-06-05 23:33:56,659.659 INFO    ] 2026-06-05 23:33:56
[2026-06-05 23:33:56,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:33:56,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:33:56,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:33:57,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:33:57,073.073 INFO    ] time= 05/06/2026 23:33:57
[2026-06-05 23:33:57,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:33:57,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:33:57,226.226 INFO    ] No existing commands found in stream
[2026-06-05 23:34:02,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:34:02,260.260 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-05 23:34:06,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:34:06,419.419 INFO    ] Checking for system updates...
[2026-06-05 23:34:06,459.459 INFO    ] 200
[2026-06-05 23:34:06,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:06,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:34:06,523.523 INFO    ] No update needed
[2026-06-05 23:34:06,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 23:34:06,570.570 INFO    ] 200
[2026-06-05 23:34:06,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:06,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:34:06,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:34:06,706.706 INFO    ] No camera update needed
[2026-06-05 23:34:06,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:34:06,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:34:06,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:34:06,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:34:08,776.776 INFO    ] ================================================
[2026-06-05 23:34:08,792.792 INFO    ] Launching Daemon at Fri Jun  5 23:34:08 IST 2026
[2026-06-05 23:34:08,803.803 INFO    ] ================================================
[2026-06-05 23:34:09,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:34:09
[2026-06-05 23:34:10,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:34:10,284.284 INFO    ] Initializing speech engine...
[2026-06-05 23:34:10,291.291 INFO    ] 2026-06-05 23:34:10
[2026-06-05 23:34:10,608.608 INFO    ] 2026-06-05 23:34:10
[2026-06-05 23:34:10,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:34:10,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:34:10,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:34:11,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:34:11,136.136 INFO    ] time= 05/06/2026 23:34:11
[2026-06-05 23:34:11,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:34:11,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:34:11,337.337 INFO    ] No existing commands found in stream
[2026-06-05 23:34:16,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:34:16,377.377 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-05 23:34:17,321.321 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:34:17,323.323 INFO    ] Checking for system updates...
[2026-06-05 23:34:17,362.362 INFO    ] 200
[2026-06-05 23:34:17,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:17,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:34:17,433.433 INFO    ] No update needed
[2026-06-05 23:34:17,436.436 INFO    ] Checking for camera pi updates...
[2026-06-05 23:34:17,473.473 INFO    ] 200
[2026-06-05 23:34:17,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:17,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:34:17,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:34:17,584.584 INFO    ] No camera update needed
[2026-06-05 23:34:17,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:34:17,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:34:17,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:34:17,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:34:19,643.643 INFO    ] ================================================
[2026-06-05 23:34:19,660.660 INFO    ] Launching Daemon at Fri Jun  5 23:34:19 IST 2026
[2026-06-05 23:34:19,671.671 INFO    ] ================================================
[2026-06-05 23:34:20,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:34:20
[2026-06-05 23:34:20,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:34:21,148.148 INFO    ] Initializing speech engine...
[2026-06-05 23:34:21,158.158 INFO    ] 2026-06-05 23:34:21
[2026-06-05 23:34:21,417.417 INFO    ] 2026-06-05 23:34:21
[2026-06-05 23:34:21,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:34:21,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:34:21,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:34:21,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:34:21,820.820 INFO    ] time= 05/06/2026 23:34:21
[2026-06-05 23:34:21,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:34:21,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:34:22,000.000 INFO    ] No existing commands found in stream
[2026-06-05 23:34:27,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:34:27,028.028 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-05 23:34:29,991.991 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:34:29,993.993 INFO    ] Checking for system updates...
[2026-06-05 23:34:30,029.029 INFO    ] 200
[2026-06-05 23:34:30,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:30,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:34:30,088.088 INFO    ] No update needed
[2026-06-05 23:34:30,091.091 INFO    ] Checking for camera pi updates...
[2026-06-05 23:34:30,127.127 INFO    ] 200
[2026-06-05 23:34:30,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:30,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:34:30,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:34:30,237.237 INFO    ] No camera update needed
[2026-06-05 23:34:30,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:34:30,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:34:30,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:34:30,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:34:32,292.292 INFO    ] ================================================
[2026-06-05 23:34:32,308.308 INFO    ] Launching Daemon at Fri Jun  5 23:34:32 IST 2026
[2026-06-05 23:34:32,320.320 INFO    ] ================================================
[2026-06-05 23:34:32,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:34:32
[2026-06-05 23:34:33,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:34:33,802.802 INFO    ] Initializing speech engine...
[2026-06-05 23:34:33,811.811 INFO    ] 2026-06-05 23:34:33
[2026-06-05 23:34:34,058.058 INFO    ] 2026-06-05 23:34:34
[2026-06-05 23:34:34,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:34:34,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:34:34,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:34:34,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:34:34,525.525 INFO    ] time= 05/06/2026 23:34:34
[2026-06-05 23:34:34,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:34:34,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:34:34,774.774 INFO    ] No existing commands found in stream
[2026-06-05 23:34:39,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:34:39,788.788 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 23:34:42,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:34:42,348.348 INFO    ] Checking for system updates...
[2026-06-05 23:34:42,385.385 INFO    ] 200
[2026-06-05 23:34:42,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:42,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:34:42,446.446 INFO    ] No update needed
[2026-06-05 23:34:42,449.449 INFO    ] Checking for camera pi updates...
[2026-06-05 23:34:42,488.488 INFO    ] 200
[2026-06-05 23:34:42,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:42,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:34:42,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:34:42,677.677 INFO    ] No camera update needed
[2026-06-05 23:34:42,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:34:42,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:34:42,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:34:42,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:34:44,733.733 INFO    ] ================================================
[2026-06-05 23:34:44,749.749 INFO    ] Launching Daemon at Fri Jun  5 23:34:44 IST 2026
[2026-06-05 23:34:44,760.760 INFO    ] ================================================
[2026-06-05 23:34:45,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:34:45
[2026-06-05 23:34:45,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:34:46,185.185 INFO    ] Initializing speech engine...
[2026-06-05 23:34:46,195.195 INFO    ] 2026-06-05 23:34:46
[2026-06-05 23:34:46,446.446 INFO    ] 2026-06-05 23:34:46
[2026-06-05 23:34:46,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:34:46,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:34:46,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:34:46,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:34:46,914.914 INFO    ] time= 05/06/2026 23:34:46
[2026-06-05 23:34:46,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:34:47,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:34:47,129.129 INFO    ] No existing commands found in stream
[2026-06-05 23:34:52,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:34:52,161.161 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-05 23:34:56,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:34:56,374.374 INFO    ] Checking for system updates...
[2026-06-05 23:34:56,410.410 INFO    ] 200
[2026-06-05 23:34:56,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:56,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:34:56,469.469 INFO    ] No update needed
[2026-06-05 23:34:56,471.471 INFO    ] Checking for camera pi updates...
[2026-06-05 23:34:56,506.506 INFO    ] 200
[2026-06-05 23:34:56,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:34:56,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:34:56,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:34:56,609.609 INFO    ] No camera update needed
[2026-06-05 23:34:56,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:34:56,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:34:56,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:34:56,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:34:58,665.665 INFO    ] ================================================
[2026-06-05 23:34:58,681.681 INFO    ] Launching Daemon at Fri Jun  5 23:34:58 IST 2026
[2026-06-05 23:34:58,692.692 INFO    ] ================================================
[2026-06-05 23:34:59,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:34:59
[2026-06-05 23:34:59,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:35:00,134.134 INFO    ] Initializing speech engine...
[2026-06-05 23:35:00,156.156 INFO    ] 2026-06-05 23:35:00
[2026-06-05 23:35:00,427.427 INFO    ] 2026-06-05 23:35:00
[2026-06-05 23:35:00,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:35:00,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:35:00,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:35:00,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:35:00,903.903 INFO    ] time= 05/06/2026 23:35:00
[2026-06-05 23:35:00,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:35:00,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:35:01,125.125 INFO    ] No existing commands found in stream
[2026-06-05 23:35:06,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:35:06,153.153 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-05 23:35:06,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:35:06,737.737 INFO    ] Checking for system updates...
[2026-06-05 23:35:06,774.774 INFO    ] 200
[2026-06-05 23:35:06,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:06,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:35:06,834.834 INFO    ] No update needed
[2026-06-05 23:35:06,837.837 INFO    ] Checking for camera pi updates...
[2026-06-05 23:35:06,875.875 INFO    ] 200
[2026-06-05 23:35:06,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:06,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:35:06,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:35:06,970.970 INFO    ] No camera update needed
[2026-06-05 23:35:06,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:35:06,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:35:06,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:35:06,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:35:09,028.028 INFO    ] ================================================
[2026-06-05 23:35:09,043.043 INFO    ] Launching Daemon at Fri Jun  5 23:35:09 IST 2026
[2026-06-05 23:35:09,055.055 INFO    ] ================================================
[2026-06-05 23:35:09,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:35:09
[2026-06-05 23:35:10,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:35:10,460.460 INFO    ] Initializing speech engine...
[2026-06-05 23:35:10,473.473 INFO    ] 2026-06-05 23:35:10
[2026-06-05 23:35:10,754.754 INFO    ] 2026-06-05 23:35:10
[2026-06-05 23:35:10,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:35:11,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:35:11,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:35:11,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:35:11,991.991 INFO    ] time= 05/06/2026 23:35:11
[2026-06-05 23:35:12,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:35:12,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:35:12,115.115 INFO    ] No existing commands found in stream
[2026-06-05 23:35:17,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:35:17,129.129 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 23:35:18,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:35:18,326.326 INFO    ] Checking for system updates...
[2026-06-05 23:35:18,362.362 INFO    ] 200
[2026-06-05 23:35:18,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:18,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:35:18,420.420 INFO    ] No update needed
[2026-06-05 23:35:18,422.422 INFO    ] Checking for camera pi updates...
[2026-06-05 23:35:18,462.462 INFO    ] 200
[2026-06-05 23:35:18,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:18,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:35:18,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:35:18,560.560 INFO    ] No camera update needed
[2026-06-05 23:35:18,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:35:18,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:35:18,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:35:18,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:35:20,615.615 INFO    ] ================================================
[2026-06-05 23:35:20,631.631 INFO    ] Launching Daemon at Fri Jun  5 23:35:20 IST 2026
[2026-06-05 23:35:20,642.642 INFO    ] ================================================
[2026-06-05 23:35:21,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:35:21
[2026-06-05 23:35:21,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:35:22,071.071 INFO    ] Initializing speech engine...
[2026-06-05 23:35:22,087.087 INFO    ] 2026-06-05 23:35:22
[2026-06-05 23:35:22,357.357 INFO    ] 2026-06-05 23:35:22
[2026-06-05 23:35:22,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:35:22,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:35:22,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:35:22,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:35:22,837.837 INFO    ] time= 05/06/2026 23:35:22
[2026-06-05 23:35:22,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:35:22,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:35:23,001.001 INFO    ] No existing commands found in stream
[2026-06-05 23:35:28,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:35:28,017.017 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-05 23:35:28,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:35:28,461.461 INFO    ] Checking for system updates...
[2026-06-05 23:35:28,497.497 INFO    ] 200
[2026-06-05 23:35:28,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:28,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:35:28,554.554 INFO    ] No update needed
[2026-06-05 23:35:28,556.556 INFO    ] Checking for camera pi updates...
[2026-06-05 23:35:28,589.589 INFO    ] 200
[2026-06-05 23:35:28,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:28,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:35:28,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:35:28,691.691 INFO    ] No camera update needed
[2026-06-05 23:35:28,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:35:28,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:35:28,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:35:28,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:35:30,746.746 INFO    ] ================================================
[2026-06-05 23:35:30,762.762 INFO    ] Launching Daemon at Fri Jun  5 23:35:30 IST 2026
[2026-06-05 23:35:30,773.773 INFO    ] ================================================
[2026-06-05 23:35:31,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:35:31
[2026-06-05 23:35:31,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:35:32,274.274 INFO    ] Initializing speech engine...
[2026-06-05 23:35:32,282.282 INFO    ] 2026-06-05 23:35:32
[2026-06-05 23:35:32,556.556 INFO    ] 2026-06-05 23:35:32
[2026-06-05 23:35:32,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:35:33,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:35:33,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:35:33,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:35:33,370.370 INFO    ] time= 05/06/2026 23:35:33
[2026-06-05 23:35:33,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:35:33,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:35:33,604.604 INFO    ] No existing commands found in stream
[2026-06-05 23:35:38,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:35:38,623.623 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-05 23:35:40,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:35:40,233.233 INFO    ] Checking for system updates...
[2026-06-05 23:35:40,271.271 INFO    ] 200
[2026-06-05 23:35:40,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:40,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:35:40,331.331 INFO    ] No update needed
[2026-06-05 23:35:40,334.334 INFO    ] Checking for camera pi updates...
[2026-06-05 23:35:40,369.369 INFO    ] 200
[2026-06-05 23:35:40,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:40,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:35:40,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:35:40,491.491 INFO    ] No camera update needed
[2026-06-05 23:35:40,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:35:40,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:35:40,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:35:40,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:35:42,551.551 INFO    ] ================================================
[2026-06-05 23:35:42,568.568 INFO    ] Launching Daemon at Fri Jun  5 23:35:42 IST 2026
[2026-06-05 23:35:42,579.579 INFO    ] ================================================
[2026-06-05 23:35:43,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:35:43
[2026-06-05 23:35:43,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:35:44,214.214 INFO    ] Initializing speech engine...
[2026-06-05 23:35:44,228.228 INFO    ] 2026-06-05 23:35:44
[2026-06-05 23:35:44,540.540 INFO    ] 2026-06-05 23:35:44
[2026-06-05 23:35:44,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:35:44,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:35:44,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:35:45,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:35:45,283.283 INFO    ] time= 05/06/2026 23:35:45
[2026-06-05 23:35:45,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:35:45,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:35:45,487.487 INFO    ] No existing commands found in stream
[2026-06-05 23:35:50,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:35:50,506.506 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-05 23:35:51,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:35:51,448.448 INFO    ] Checking for system updates...
[2026-06-05 23:35:51,487.487 INFO    ] 200
[2026-06-05 23:35:51,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:51,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:35:51,547.547 INFO    ] No update needed
[2026-06-05 23:35:51,550.550 INFO    ] Checking for camera pi updates...
[2026-06-05 23:35:51,585.585 INFO    ] 200
[2026-06-05 23:35:51,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:35:51,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:35:51,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:35:51,686.686 INFO    ] No camera update needed
[2026-06-05 23:35:51,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:35:51,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:35:51,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:35:51,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:35:53,744.744 INFO    ] ================================================
[2026-06-05 23:35:53,760.760 INFO    ] Launching Daemon at Fri Jun  5 23:35:53 IST 2026
[2026-06-05 23:35:53,771.771 INFO    ] ================================================
[2026-06-05 23:35:54,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:35:54
[2026-06-05 23:35:55,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:35:55,409.409 INFO    ] Initializing speech engine...
[2026-06-05 23:35:55,418.418 INFO    ] 2026-06-05 23:35:55
[2026-06-05 23:35:55,700.700 INFO    ] 2026-06-05 23:35:55
[2026-06-05 23:35:55,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:35:55,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:35:55,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:35:56,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:35:56,266.266 INFO    ] time= 05/06/2026 23:35:56
[2026-06-05 23:35:56,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:35:56,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:35:56,407.407 INFO    ] No existing commands found in stream
[2026-06-05 23:36:01,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:36:01,442.442 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 23:36:05,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:36:05,613.613 INFO    ] Checking for system updates...
[2026-06-05 23:36:05,650.650 INFO    ] 200
[2026-06-05 23:36:05,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:05,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:05,710.710 INFO    ] No update needed
[2026-06-05 23:36:05,712.712 INFO    ] Checking for camera pi updates...
[2026-06-05 23:36:05,748.748 INFO    ] 200
[2026-06-05 23:36:05,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:05,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:36:05,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:05,894.894 INFO    ] No camera update needed
[2026-06-05 23:36:05,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:36:05,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:36:05,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:36:05,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:36:07,954.954 INFO    ] ================================================
[2026-06-05 23:36:07,970.970 INFO    ] Launching Daemon at Fri Jun  5 23:36:07 IST 2026
[2026-06-05 23:36:07,982.982 INFO    ] ================================================
[2026-06-05 23:36:08,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:36:08
[2026-06-05 23:36:09,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:36:09,554.554 INFO    ] Initializing speech engine...
[2026-06-05 23:36:09,563.563 INFO    ] 2026-06-05 23:36:09
[2026-06-05 23:36:09,868.868 INFO    ] 2026-06-05 23:36:09
[2026-06-05 23:36:09,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:36:10,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:36:10,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:36:10,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:36:10,338.338 INFO    ] time= 05/06/2026 23:36:10
[2026-06-05 23:36:10,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:36:10,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:36:10,505.505 INFO    ] No existing commands found in stream
[2026-06-05 23:36:15,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:36:15,519.519 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 23:36:18,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:36:18,286.286 INFO    ] Checking for system updates...
[2026-06-05 23:36:18,322.322 INFO    ] 200
[2026-06-05 23:36:18,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:18,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:18,381.381 INFO    ] No update needed
[2026-06-05 23:36:18,383.383 INFO    ] Checking for camera pi updates...
[2026-06-05 23:36:18,417.417 INFO    ] 200
[2026-06-05 23:36:18,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:18,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:36:18,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:18,512.512 INFO    ] No camera update needed
[2026-06-05 23:36:18,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:36:18,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:36:18,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:36:18,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:36:20,568.568 INFO    ] ================================================
[2026-06-05 23:36:20,583.583 INFO    ] Launching Daemon at Fri Jun  5 23:36:20 IST 2026
[2026-06-05 23:36:20,594.594 INFO    ] ================================================
[2026-06-05 23:36:21,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:36:21
[2026-06-05 23:36:21,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:36:22,052.052 INFO    ] Initializing speech engine...
[2026-06-05 23:36:22,070.070 INFO    ] 2026-06-05 23:36:22
[2026-06-05 23:36:22,337.337 INFO    ] 2026-06-05 23:36:22
[2026-06-05 23:36:22,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:36:22,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:36:22,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:36:22,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:36:22,847.847 INFO    ] time= 05/06/2026 23:36:22
[2026-06-05 23:36:22,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:36:22,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:36:23,073.073 INFO    ] No existing commands found in stream
[2026-06-05 23:36:28,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:36:28,094.094 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-05 23:36:29,401.401 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:36:29,403.403 INFO    ] Checking for system updates...
[2026-06-05 23:36:29,440.440 INFO    ] 200
[2026-06-05 23:36:29,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:29,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:29,500.500 INFO    ] No update needed
[2026-06-05 23:36:29,502.502 INFO    ] Checking for camera pi updates...
[2026-06-05 23:36:29,536.536 INFO    ] 200
[2026-06-05 23:36:29,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:29,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:36:29,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:29,632.632 INFO    ] No camera update needed
[2026-06-05 23:36:29,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:36:29,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:36:29,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:36:29,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:36:31,698.698 INFO    ] ================================================
[2026-06-05 23:36:31,714.714 INFO    ] Launching Daemon at Fri Jun  5 23:36:31 IST 2026
[2026-06-05 23:36:31,727.727 INFO    ] ================================================
[2026-06-05 23:36:32,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:36:32
[2026-06-05 23:36:32,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:36:33,175.175 INFO    ] Initializing speech engine...
[2026-06-05 23:36:33,190.190 INFO    ] 2026-06-05 23:36:33
[2026-06-05 23:36:33,451.451 INFO    ] 2026-06-05 23:36:33
[2026-06-05 23:36:33,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:36:33,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:36:33,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:36:33,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:36:33,921.921 INFO    ] time= 05/06/2026 23:36:33
[2026-06-05 23:36:33,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:36:34,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:36:34,147.147 INFO    ] No existing commands found in stream
[2026-06-05 23:36:39,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:36:39,174.174 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-05 23:36:40,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:36:40,417.417 INFO    ] Checking for system updates...
[2026-06-05 23:36:40,454.454 INFO    ] 200
[2026-06-05 23:36:40,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:40,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:40,512.512 INFO    ] No update needed
[2026-06-05 23:36:40,515.515 INFO    ] Checking for camera pi updates...
[2026-06-05 23:36:40,549.549 INFO    ] 200
[2026-06-05 23:36:40,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:40,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:36:40,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:40,645.645 INFO    ] No camera update needed
[2026-06-05 23:36:40,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:36:40,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:36:40,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:36:40,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:36:42,700.700 INFO    ] ================================================
[2026-06-05 23:36:42,717.717 INFO    ] Launching Daemon at Fri Jun  5 23:36:42 IST 2026
[2026-06-05 23:36:42,728.728 INFO    ] ================================================
[2026-06-05 23:36:43,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:36:43
[2026-06-05 23:36:43,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:36:44,157.157 INFO    ] Initializing speech engine...
[2026-06-05 23:36:44,166.166 INFO    ] 2026-06-05 23:36:44
[2026-06-05 23:36:44,411.411 INFO    ] 2026-06-05 23:36:44
[2026-06-05 23:36:44,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:36:44,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:36:44,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:36:44,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:36:44,910.910 INFO    ] time= 05/06/2026 23:36:44
[2026-06-05 23:36:44,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:36:44,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:36:45,032.032 INFO    ] No existing commands found in stream
[2026-06-05 23:36:50,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:36:50,048.048 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 23:36:52,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:36:52,753.753 INFO    ] Checking for system updates...
[2026-06-05 23:36:52,790.790 INFO    ] 200
[2026-06-05 23:36:52,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:52,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:52,855.855 INFO    ] No update needed
[2026-06-05 23:36:52,858.858 INFO    ] Checking for camera pi updates...
[2026-06-05 23:36:52,896.896 INFO    ] 200
[2026-06-05 23:36:52,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:36:52,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:36:53,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:36:53,097.097 INFO    ] No camera update needed
[2026-06-05 23:36:53,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:36:53,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:36:53,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:36:53,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:36:55,152.152 INFO    ] ================================================
[2026-06-05 23:36:55,168.168 INFO    ] Launching Daemon at Fri Jun  5 23:36:55 IST 2026
[2026-06-05 23:36:55,180.180 INFO    ] ================================================
[2026-06-05 23:36:55,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:36:55
[2026-06-05 23:36:56,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:36:56,594.594 INFO    ] Initializing speech engine...
[2026-06-05 23:36:56,602.602 INFO    ] 2026-06-05 23:36:56
[2026-06-05 23:36:56,904.904 INFO    ] 2026-06-05 23:36:56
[2026-06-05 23:36:56,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:36:57,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:36:57,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:36:57,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:36:57,411.411 INFO    ] time= 05/06/2026 23:36:57
[2026-06-05 23:36:57,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:36:57,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:36:57,633.633 INFO    ] No existing commands found in stream
[2026-06-05 23:37:02,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:37:02,654.654 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-05 23:37:05,506.506 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:37:05,509.509 INFO    ] Checking for system updates...
[2026-06-05 23:37:05,549.549 INFO    ] 200
[2026-06-05 23:37:05,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:05,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:37:05,612.612 INFO    ] No update needed
[2026-06-05 23:37:05,614.614 INFO    ] Checking for camera pi updates...
[2026-06-05 23:37:05,652.652 INFO    ] 200
[2026-06-05 23:37:05,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:05,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:37:05,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:37:05,747.747 INFO    ] No camera update needed
[2026-06-05 23:37:05,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:37:05,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:37:05,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:37:05,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:37:07,804.804 INFO    ] ================================================
[2026-06-05 23:37:07,820.820 INFO    ] Launching Daemon at Fri Jun  5 23:37:07 IST 2026
[2026-06-05 23:37:07,831.831 INFO    ] ================================================
[2026-06-05 23:37:08,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:37:08
[2026-06-05 23:37:08,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:37:09,248.248 INFO    ] Initializing speech engine...
[2026-06-05 23:37:09,268.268 INFO    ] 2026-06-05 23:37:09
[2026-06-05 23:37:09,516.516 INFO    ] 2026-06-05 23:37:09
[2026-06-05 23:37:09,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:37:09,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:37:09,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:37:09,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:37:09,981.981 INFO    ] time= 05/06/2026 23:37:09
[2026-06-05 23:37:10,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:37:10,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:37:10,241.241 INFO    ] No existing commands found in stream
[2026-06-05 23:37:15,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:37:15,259.259 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-05 23:37:18,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:37:18,692.692 INFO    ] Checking for system updates...
[2026-06-05 23:37:18,729.729 INFO    ] 200
[2026-06-05 23:37:18,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:18,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:37:18,789.789 INFO    ] No update needed
[2026-06-05 23:37:18,792.792 INFO    ] Checking for camera pi updates...
[2026-06-05 23:37:18,827.827 INFO    ] 200
[2026-06-05 23:37:18,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:18,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:37:18,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:37:18,925.925 INFO    ] No camera update needed
[2026-06-05 23:37:18,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:37:18,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:37:18,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:37:18,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:37:20,984.984 INFO    ] ================================================
[2026-06-05 23:37:21,000.000 INFO    ] Launching Daemon at Fri Jun  5 23:37:20 IST 2026
[2026-06-05 23:37:21,014.014 INFO    ] ================================================
[2026-06-05 23:37:21,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:37:21
[2026-06-05 23:37:22,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:37:22,511.511 INFO    ] Initializing speech engine...
[2026-06-05 23:37:22,520.520 INFO    ] 2026-06-05 23:37:22
[2026-06-05 23:37:22,770.770 INFO    ] 2026-06-05 23:37:22
[2026-06-05 23:37:22,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:37:23,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:37:23,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:37:23,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:37:23,244.244 INFO    ] time= 05/06/2026 23:37:23
[2026-06-05 23:37:23,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:37:23,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:37:23,447.447 INFO    ] No existing commands found in stream
[2026-06-05 23:37:28,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:37:28,477.477 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-05 23:37:30,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:37:30,431.431 INFO    ] Checking for system updates...
[2026-06-05 23:37:30,472.472 INFO    ] 200
[2026-06-05 23:37:30,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:30,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:37:30,533.533 INFO    ] No update needed
[2026-06-05 23:37:30,536.536 INFO    ] Checking for camera pi updates...
[2026-06-05 23:37:30,570.570 INFO    ] 200
[2026-06-05 23:37:30,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:30,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:37:30,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:37:30,670.670 INFO    ] No camera update needed
[2026-06-05 23:37:30,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:37:30,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:37:30,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:37:30,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:37:32,731.731 INFO    ] ================================================
[2026-06-05 23:37:32,747.747 INFO    ] Launching Daemon at Fri Jun  5 23:37:32 IST 2026
[2026-06-05 23:37:32,759.759 INFO    ] ================================================
[2026-06-05 23:37:33,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:37:33
[2026-06-05 23:37:33,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:37:34,224.224 INFO    ] Initializing speech engine...
[2026-06-05 23:37:34,230.230 INFO    ] 2026-06-05 23:37:34
[2026-06-05 23:37:34,507.507 INFO    ] 2026-06-05 23:37:34
[2026-06-05 23:37:34,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:37:35,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:37:35,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:37:35,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:37:35,437.437 INFO    ] time= 05/06/2026 23:37:35
[2026-06-05 23:37:35,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:37:35,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:37:35,597.597 INFO    ] No existing commands found in stream
[2026-06-05 23:37:40,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:37:40,610.610 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-05 23:37:41,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:37:41,145.145 INFO    ] Checking for system updates...
[2026-06-05 23:37:41,182.182 INFO    ] 200
[2026-06-05 23:37:41,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:41,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:37:41,249.249 INFO    ] No update needed
[2026-06-05 23:37:41,252.252 INFO    ] Checking for camera pi updates...
[2026-06-05 23:37:41,286.286 INFO    ] 200
[2026-06-05 23:37:41,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:41,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:37:41,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:37:41,386.386 INFO    ] No camera update needed
[2026-06-05 23:37:41,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:37:41,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:37:41,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:37:41,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:37:43,443.443 INFO    ] ================================================
[2026-06-05 23:37:43,458.458 INFO    ] Launching Daemon at Fri Jun  5 23:37:43 IST 2026
[2026-06-05 23:37:43,472.472 INFO    ] ================================================
[2026-06-05 23:37:44,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:37:44
[2026-06-05 23:37:44,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:37:44,893.893 INFO    ] Initializing speech engine...
[2026-06-05 23:37:44,906.906 INFO    ] 2026-06-05 23:37:44
[2026-06-05 23:37:45,159.159 INFO    ] 2026-06-05 23:37:45
[2026-06-05 23:37:45,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:37:45,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:37:45,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:37:45,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:37:45,539.539 INFO    ] time= 05/06/2026 23:37:45
[2026-06-05 23:37:45,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:37:45,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:37:45,736.736 INFO    ] No existing commands found in stream
[2026-06-05 23:37:50,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:37:50,755.755 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 23:37:51,634.634 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:37:51,637.637 INFO    ] Checking for system updates...
[2026-06-05 23:37:51,673.673 INFO    ] 200
[2026-06-05 23:37:51,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:51,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:37:51,731.731 INFO    ] No update needed
[2026-06-05 23:37:51,733.733 INFO    ] Checking for camera pi updates...
[2026-06-05 23:37:51,768.768 INFO    ] 200
[2026-06-05 23:37:51,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:37:51,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:37:51,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:37:51,866.866 INFO    ] No camera update needed
[2026-06-05 23:37:51,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:37:51,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:37:51,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:37:51,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:37:53,926.926 INFO    ] ================================================
[2026-06-05 23:37:53,942.942 INFO    ] Launching Daemon at Fri Jun  5 23:37:53 IST 2026
[2026-06-05 23:37:53,953.953 INFO    ] ================================================
[2026-06-05 23:37:54,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:37:54
[2026-06-05 23:37:55,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:37:55,356.356 INFO    ] Initializing speech engine...
[2026-06-05 23:37:55,370.370 INFO    ] 2026-06-05 23:37:55
[2026-06-05 23:37:55,637.637 INFO    ] 2026-06-05 23:37:55
[2026-06-05 23:37:55,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:37:55,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:37:55,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:37:56,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:37:56,118.118 INFO    ] time= 05/06/2026 23:37:56
[2026-06-05 23:37:56,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:37:56,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:37:56,344.344 INFO    ] No existing commands found in stream
[2026-06-05 23:38:01,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:38:01,371.371 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-05 23:38:04,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:38:04,901.901 INFO    ] Checking for system updates...
[2026-06-05 23:38:04,937.937 INFO    ] 200
[2026-06-05 23:38:04,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:04,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:38:04,999.999 INFO    ] No update needed
[2026-06-05 23:38:05,001.001 INFO    ] Checking for camera pi updates...
[2026-06-05 23:38:05,035.035 INFO    ] 200
[2026-06-05 23:38:05,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:05,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:38:05,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:38:05,141.141 INFO    ] No camera update needed
[2026-06-05 23:38:05,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:38:05,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:38:05,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:38:05,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:38:07,199.199 INFO    ] ================================================
[2026-06-05 23:38:07,214.214 INFO    ] Launching Daemon at Fri Jun  5 23:38:07 IST 2026
[2026-06-05 23:38:07,225.225 INFO    ] ================================================
[2026-06-05 23:38:07,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:38:07
[2026-06-05 23:38:08,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:38:08,645.645 INFO    ] Initializing speech engine...
[2026-06-05 23:38:08,654.654 INFO    ] 2026-06-05 23:38:08
[2026-06-05 23:38:08,899.899 INFO    ] 2026-06-05 23:38:08
[2026-06-05 23:38:08,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:38:09,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:38:09,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:38:09,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:38:09,399.399 INFO    ] time= 05/06/2026 23:38:09
[2026-06-05 23:38:09,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:38:09,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:38:09,603.603 INFO    ] No existing commands found in stream
[2026-06-05 23:38:14,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:38:14,620.620 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-05 23:38:15,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:38:15,038.038 INFO    ] Checking for system updates...
[2026-06-05 23:38:15,076.076 INFO    ] 200
[2026-06-05 23:38:15,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:15,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:38:15,133.133 INFO    ] No update needed
[2026-06-05 23:38:15,136.136 INFO    ] Checking for camera pi updates...
[2026-06-05 23:38:15,172.172 INFO    ] 200
[2026-06-05 23:38:15,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:15,216.216 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:38:15,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:38:15,277.277 INFO    ] No camera update needed
[2026-06-05 23:38:15,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:38:15,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:38:15,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:38:15,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:38:17,333.333 INFO    ] ================================================
[2026-06-05 23:38:17,348.348 INFO    ] Launching Daemon at Fri Jun  5 23:38:17 IST 2026
[2026-06-05 23:38:17,359.359 INFO    ] ================================================
[2026-06-05 23:38:17,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:38:17
[2026-06-05 23:38:18,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:38:18,775.775 INFO    ] Initializing speech engine...
[2026-06-05 23:38:18,793.793 INFO    ] 2026-06-05 23:38:18
[2026-06-05 23:38:19,044.044 INFO    ] 2026-06-05 23:38:19
[2026-06-05 23:38:19,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:38:19,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:38:19,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:38:19,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:38:19,419.419 INFO    ] time= 05/06/2026 23:38:19
[2026-06-05 23:38:19,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:38:19,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:38:19,607.607 INFO    ] No existing commands found in stream
[2026-06-05 23:38:24,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:38:24,633.633 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-05 23:38:28,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:38:28,373.373 INFO    ] Checking for system updates...
[2026-06-05 23:38:28,409.409 INFO    ] 200
[2026-06-05 23:38:28,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:28,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:38:28,468.468 INFO    ] No update needed
[2026-06-05 23:38:28,471.471 INFO    ] Checking for camera pi updates...
[2026-06-05 23:38:28,505.505 INFO    ] 200
[2026-06-05 23:38:28,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:28,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:38:28,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:38:28,608.608 INFO    ] No camera update needed
[2026-06-05 23:38:28,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:38:28,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:38:28,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:38:28,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:38:30,663.663 INFO    ] ================================================
[2026-06-05 23:38:30,679.679 INFO    ] Launching Daemon at Fri Jun  5 23:38:30 IST 2026
[2026-06-05 23:38:30,690.690 INFO    ] ================================================
[2026-06-05 23:38:31,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:38:31
[2026-06-05 23:38:31,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:38:32,181.181 INFO    ] Initializing speech engine...
[2026-06-05 23:38:32,190.190 INFO    ] 2026-06-05 23:38:32
[2026-06-05 23:38:32,448.448 INFO    ] 2026-06-05 23:38:32
[2026-06-05 23:38:32,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:38:32,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:38:32,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:38:33,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:38:33,032.032 INFO    ] time= 05/06/2026 23:38:33
[2026-06-05 23:38:33,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:38:33,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:38:33,170.170 INFO    ] No existing commands found in stream
[2026-06-05 23:38:38,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:38:38,199.199 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-05 23:38:40,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:38:40,172.172 INFO    ] Checking for system updates...
[2026-06-05 23:38:40,210.210 INFO    ] 200
[2026-06-05 23:38:40,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:40,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:38:40,269.269 INFO    ] No update needed
[2026-06-05 23:38:40,272.272 INFO    ] Checking for camera pi updates...
[2026-06-05 23:38:40,308.308 INFO    ] 200
[2026-06-05 23:38:40,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:40,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:38:40,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:38:40,419.419 INFO    ] No camera update needed
[2026-06-05 23:38:40,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:38:40,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:38:40,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:38:40,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:38:42,478.478 INFO    ] ================================================
[2026-06-05 23:38:42,515.515 INFO    ] Launching Daemon at Fri Jun  5 23:38:42 IST 2026
[2026-06-05 23:38:42,526.526 INFO    ] ================================================
[2026-06-05 23:38:43,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:38:43
[2026-06-05 23:38:43,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:38:44,116.116 INFO    ] Initializing speech engine...
[2026-06-05 23:38:44,130.130 INFO    ] 2026-06-05 23:38:44
[2026-06-05 23:38:44,411.411 INFO    ] 2026-06-05 23:38:44
[2026-06-05 23:38:44,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:38:44,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:38:44,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:38:44,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:38:44,893.893 INFO    ] time= 05/06/2026 23:38:44
[2026-06-05 23:38:44,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:38:44,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:38:45,120.120 INFO    ] No existing commands found in stream
[2026-06-05 23:38:50,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:38:50,137.137 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-05 23:38:53,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:38:53,509.509 INFO    ] Checking for system updates...
[2026-06-05 23:38:53,546.546 INFO    ] 200
[2026-06-05 23:38:53,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:53,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:38:53,611.611 INFO    ] No update needed
[2026-06-05 23:38:53,613.613 INFO    ] Checking for camera pi updates...
[2026-06-05 23:38:53,655.655 INFO    ] 200
[2026-06-05 23:38:53,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:38:53,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:38:53,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:38:53,750.750 INFO    ] No camera update needed
[2026-06-05 23:38:53,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:38:53,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:38:53,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:38:53,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:38:55,806.806 INFO    ] ================================================
[2026-06-05 23:38:55,821.821 INFO    ] Launching Daemon at Fri Jun  5 23:38:55 IST 2026
[2026-06-05 23:38:55,832.832 INFO    ] ================================================
[2026-06-05 23:38:56,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:38:56
[2026-06-05 23:38:57,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:38:57,299.299 INFO    ] Initializing speech engine...
[2026-06-05 23:38:57,308.308 INFO    ] 2026-06-05 23:38:57
[2026-06-05 23:38:57,558.558 INFO    ] 2026-06-05 23:38:57
[2026-06-05 23:38:57,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:38:57,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:38:57,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:38:57,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:38:57,935.935 INFO    ] time= 05/06/2026 23:38:57
[2026-06-05 23:38:57,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:38:57,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:38:58,014.014 INFO    ] No existing commands found in stream
[2026-06-05 23:39:03,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:39:03,049.049 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 23:39:05,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:39:05,130.130 INFO    ] Checking for system updates...
[2026-06-05 23:39:05,167.167 INFO    ] 200
[2026-06-05 23:39:05,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:05,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:39:05,225.225 INFO    ] No update needed
[2026-06-05 23:39:05,228.228 INFO    ] Checking for camera pi updates...
[2026-06-05 23:39:05,266.266 INFO    ] 200
[2026-06-05 23:39:05,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:05,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:39:05,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:39:05,466.466 INFO    ] No camera update needed
[2026-06-05 23:39:05,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:39:05,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:39:05,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:39:05,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:39:07,522.522 INFO    ] ================================================
[2026-06-05 23:39:07,538.538 INFO    ] Launching Daemon at Fri Jun  5 23:39:07 IST 2026
[2026-06-05 23:39:07,550.550 INFO    ] ================================================
[2026-06-05 23:39:08,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:39:08
[2026-06-05 23:39:08,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:39:09,007.007 INFO    ] Initializing speech engine...
[2026-06-05 23:39:09,016.016 INFO    ] 2026-06-05 23:39:09
[2026-06-05 23:39:09,265.265 INFO    ] 2026-06-05 23:39:09
[2026-06-05 23:39:09,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:39:09,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:39:09,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:39:09,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:39:09,766.766 INFO    ] time= 05/06/2026 23:39:09
[2026-06-05 23:39:09,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:39:09,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:39:09,980.980 INFO    ] No existing commands found in stream
[2026-06-05 23:39:15,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:39:15,013.013 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-05 23:39:17,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:39:17,287.287 INFO    ] Checking for system updates...
[2026-06-05 23:39:17,328.328 INFO    ] 200
[2026-06-05 23:39:17,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:17,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:39:17,391.391 INFO    ] No update needed
[2026-06-05 23:39:17,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 23:39:17,431.431 INFO    ] 200
[2026-06-05 23:39:17,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:17,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:39:17,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:39:17,542.542 INFO    ] No camera update needed
[2026-06-05 23:39:17,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:39:17,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:39:17,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:39:17,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:39:19,599.599 INFO    ] ================================================
[2026-06-05 23:39:19,615.615 INFO    ] Launching Daemon at Fri Jun  5 23:39:19 IST 2026
[2026-06-05 23:39:19,626.626 INFO    ] ================================================
[2026-06-05 23:39:20,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:39:20
[2026-06-05 23:39:20,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:39:21,238.238 INFO    ] Initializing speech engine...
[2026-06-05 23:39:21,247.247 INFO    ] 2026-06-05 23:39:21
[2026-06-05 23:39:21,523.523 INFO    ] 2026-06-05 23:39:21
[2026-06-05 23:39:21,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:39:21,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:39:21,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:39:21,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:39:22,024.024 INFO    ] time= 05/06/2026 23:39:21
[2026-06-05 23:39:22,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:39:22,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:39:22,232.232 INFO    ] No existing commands found in stream
[2026-06-05 23:39:27,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:39:27,257.257 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-05 23:39:27,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:39:27,744.744 INFO    ] Checking for system updates...
[2026-06-05 23:39:27,785.785 INFO    ] 200
[2026-06-05 23:39:27,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:27,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:39:27,853.853 INFO    ] No update needed
[2026-06-05 23:39:27,856.856 INFO    ] Checking for camera pi updates...
[2026-06-05 23:39:27,894.894 INFO    ] 200
[2026-06-05 23:39:27,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:27,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:39:27,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:39:27,999.999 INFO    ] No camera update needed
[2026-06-05 23:39:28,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:39:28,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:39:28,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:39:28,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:39:30,057.057 INFO    ] ================================================
[2026-06-05 23:39:30,073.073 INFO    ] Launching Daemon at Fri Jun  5 23:39:30 IST 2026
[2026-06-05 23:39:30,084.084 INFO    ] ================================================
[2026-06-05 23:39:30,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:39:30
[2026-06-05 23:39:31,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:39:31,560.560 INFO    ] Initializing speech engine...
[2026-06-05 23:39:31,569.569 INFO    ] 2026-06-05 23:39:31
[2026-06-05 23:39:31,867.867 INFO    ] 2026-06-05 23:39:31
[2026-06-05 23:39:31,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:39:32,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:39:32,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:39:33,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:39:33,062.062 INFO    ] time= 05/06/2026 23:39:33
[2026-06-05 23:39:33,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:39:33,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:39:33,285.285 INFO    ] No existing commands found in stream
[2026-06-05 23:39:38,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:39:38,313.313 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-05 23:39:41,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:39:41,025.025 INFO    ] Checking for system updates...
[2026-06-05 23:39:41,062.062 INFO    ] 200
[2026-06-05 23:39:41,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:41,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:39:41,122.122 INFO    ] No update needed
[2026-06-05 23:39:41,125.125 INFO    ] Checking for camera pi updates...
[2026-06-05 23:39:41,160.160 INFO    ] 200
[2026-06-05 23:39:41,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:41,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:39:41,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:39:41,265.265 INFO    ] No camera update needed
[2026-06-05 23:39:41,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:39:41,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:39:41,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:39:41,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:39:43,324.324 INFO    ] ================================================
[2026-06-05 23:39:43,339.339 INFO    ] Launching Daemon at Fri Jun  5 23:39:43 IST 2026
[2026-06-05 23:39:43,350.350 INFO    ] ================================================
[2026-06-05 23:39:43,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:39:43
[2026-06-05 23:39:44,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:39:44,958.958 INFO    ] Initializing speech engine...
[2026-06-05 23:39:44,965.965 INFO    ] 2026-06-05 23:39:44
[2026-06-05 23:39:45,237.237 INFO    ] 2026-06-05 23:39:45
[2026-06-05 23:39:45,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:39:45,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:39:45,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:39:45,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:39:45,714.714 INFO    ] time= 05/06/2026 23:39:45
[2026-06-05 23:39:45,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:39:45,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:39:45,943.943 INFO    ] No existing commands found in stream
[2026-06-05 23:39:50,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:39:50,981.981 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-05 23:39:54,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:39:54,030.030 INFO    ] Checking for system updates...
[2026-06-05 23:39:54,067.067 INFO    ] 200
[2026-06-05 23:39:54,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:54,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:39:54,132.132 INFO    ] No update needed
[2026-06-05 23:39:54,135.135 INFO    ] Checking for camera pi updates...
[2026-06-05 23:39:54,173.173 INFO    ] 200
[2026-06-05 23:39:54,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:39:54,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:39:54,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:39:54,276.276 INFO    ] No camera update needed
[2026-06-05 23:39:54,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:39:54,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:39:54,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:39:54,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:39:56,332.332 INFO    ] ================================================
[2026-06-05 23:39:56,348.348 INFO    ] Launching Daemon at Fri Jun  5 23:39:56 IST 2026
[2026-06-05 23:39:56,359.359 INFO    ] ================================================
[2026-06-05 23:39:56,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:39:56
[2026-06-05 23:39:57,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:39:57,807.807 INFO    ] Initializing speech engine...
[2026-06-05 23:39:57,815.815 INFO    ] 2026-06-05 23:39:57
[2026-06-05 23:39:58,113.113 INFO    ] 2026-06-05 23:39:58
[2026-06-05 23:39:58,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:39:58,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:39:58,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:39:58,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:39:58,532.532 INFO    ] time= 05/06/2026 23:39:58
[2026-06-05 23:39:58,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:39:58,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:39:58,724.724 INFO    ] No existing commands found in stream
[2026-06-05 23:40:03,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:40:03,758.758 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-05 23:40:07,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:40:07,308.308 INFO    ] Checking for system updates...
[2026-06-05 23:40:07,345.345 INFO    ] 200
[2026-06-05 23:40:07,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:07,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:40:07,404.404 INFO    ] No update needed
[2026-06-05 23:40:07,407.407 INFO    ] Checking for camera pi updates...
[2026-06-05 23:40:07,442.442 INFO    ] 200
[2026-06-05 23:40:07,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:07,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:40:07,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:40:07,531.531 INFO    ] No camera update needed
[2026-06-05 23:40:07,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:40:07,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:40:07,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:40:07,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:40:09,591.591 INFO    ] ================================================
[2026-06-05 23:40:09,607.607 INFO    ] Launching Daemon at Fri Jun  5 23:40:09 IST 2026
[2026-06-05 23:40:09,618.618 INFO    ] ================================================
[2026-06-05 23:40:10,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:40:10
[2026-06-05 23:40:10,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:40:11,072.072 INFO    ] Initializing speech engine...
[2026-06-05 23:40:11,078.078 INFO    ] 2026-06-05 23:40:11
[2026-06-05 23:40:11,335.335 INFO    ] 2026-06-05 23:40:11
[2026-06-05 23:40:11,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:40:11,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:40:11,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:40:11,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:40:11,741.741 INFO    ] time= 05/06/2026 23:40:11
[2026-06-05 23:40:11,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:40:11,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:40:11,880.880 INFO    ] No existing commands found in stream
[2026-06-05 23:40:16,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:40:16,914.914 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-05 23:40:18,813.813 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:40:18,817.817 INFO    ] Checking for system updates...
[2026-06-05 23:40:18,854.854 INFO    ] 200
[2026-06-05 23:40:18,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:18,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:40:18,920.920 INFO    ] No update needed
[2026-06-05 23:40:18,923.923 INFO    ] Checking for camera pi updates...
[2026-06-05 23:40:18,961.961 INFO    ] 200
[2026-06-05 23:40:18,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:19,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:40:19,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:40:19,057.057 INFO    ] No camera update needed
[2026-06-05 23:40:19,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:40:19,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:40:19,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:40:19,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:40:21,115.115 INFO    ] ================================================
[2026-06-05 23:40:21,131.131 INFO    ] Launching Daemon at Fri Jun  5 23:40:21 IST 2026
[2026-06-05 23:40:21,142.142 INFO    ] ================================================
[2026-06-05 23:40:21,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:40:21
[2026-06-05 23:40:22,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:40:22,581.581 INFO    ] Initializing speech engine...
[2026-06-05 23:40:22,604.604 INFO    ] 2026-06-05 23:40:22
[2026-06-05 23:40:22,860.860 INFO    ] 2026-06-05 23:40:22
[2026-06-05 23:40:22,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:40:23,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:40:23,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:40:23,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:40:23,335.335 INFO    ] time= 05/06/2026 23:40:23
[2026-06-05 23:40:23,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:40:23,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:40:23,540.540 INFO    ] No existing commands found in stream
[2026-06-05 23:40:28,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:40:28,573.573 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-05 23:40:32,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:40:32,342.342 INFO    ] Checking for system updates...
[2026-06-05 23:40:32,386.386 INFO    ] 200
[2026-06-05 23:40:32,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:32,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:40:32,450.450 INFO    ] No update needed
[2026-06-05 23:40:32,452.452 INFO    ] Checking for camera pi updates...
[2026-06-05 23:40:32,494.494 INFO    ] 200
[2026-06-05 23:40:32,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:32,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:40:32,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:40:32,594.594 INFO    ] No camera update needed
[2026-06-05 23:40:32,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:40:32,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:40:32,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:40:32,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:40:34,658.658 INFO    ] ================================================
[2026-06-05 23:40:34,674.674 INFO    ] Launching Daemon at Fri Jun  5 23:40:34 IST 2026
[2026-06-05 23:40:34,688.688 INFO    ] ================================================
[2026-06-05 23:40:35,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:40:35
[2026-06-05 23:40:35,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:40:36,093.093 INFO    ] Initializing speech engine...
[2026-06-05 23:40:36,102.102 INFO    ] 2026-06-05 23:40:36
[2026-06-05 23:40:36,396.396 INFO    ] 2026-06-05 23:40:36
[2026-06-05 23:40:36,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:40:36,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:40:36,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:40:36,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:40:36,887.887 INFO    ] time= 05/06/2026 23:40:36
[2026-06-05 23:40:36,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:40:36,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:40:37,091.091 INFO    ] No existing commands found in stream
[2026-06-05 23:40:42,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:40:42,105.105 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 23:40:43,096.096 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:40:43,099.099 INFO    ] Checking for system updates...
[2026-06-05 23:40:43,136.136 INFO    ] 200
[2026-06-05 23:40:43,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:43,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:40:43,195.195 INFO    ] No update needed
[2026-06-05 23:40:43,198.198 INFO    ] Checking for camera pi updates...
[2026-06-05 23:40:43,232.232 INFO    ] 200
[2026-06-05 23:40:43,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:43,275.275 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:40:43,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:40:43,322.322 INFO    ] No camera update needed
[2026-06-05 23:40:43,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:40:43,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:40:43,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:40:43,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:40:45,377.377 INFO    ] ================================================
[2026-06-05 23:40:45,392.392 INFO    ] Launching Daemon at Fri Jun  5 23:40:45 IST 2026
[2026-06-05 23:40:45,403.403 INFO    ] ================================================
[2026-06-05 23:40:46,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:40:46
[2026-06-05 23:40:46,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:40:46,997.997 INFO    ] Initializing speech engine...
[2026-06-05 23:40:47,003.003 INFO    ] 2026-06-05 23:40:46
[2026-06-05 23:40:47,261.261 INFO    ] 2026-06-05 23:40:47
[2026-06-05 23:40:47,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:40:47,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:40:47,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:40:47,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:40:47,822.822 INFO    ] time= 05/06/2026 23:40:47
[2026-06-05 23:40:47,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:40:47,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:40:47,958.958 INFO    ] No existing commands found in stream
[2026-06-05 23:40:52,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:40:52,989.989 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 23:40:56,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:40:56,385.385 INFO    ] Checking for system updates...
[2026-06-05 23:40:56,421.421 INFO    ] 200
[2026-06-05 23:40:56,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:56,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:40:56,479.479 INFO    ] No update needed
[2026-06-05 23:40:56,481.481 INFO    ] Checking for camera pi updates...
[2026-06-05 23:40:56,515.515 INFO    ] 200
[2026-06-05 23:40:56,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:40:56,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:40:56,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:40:56,611.611 INFO    ] No camera update needed
[2026-06-05 23:40:56,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:40:56,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:40:56,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:40:56,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:40:58,666.666 INFO    ] ================================================
[2026-06-05 23:40:58,681.681 INFO    ] Launching Daemon at Fri Jun  5 23:40:58 IST 2026
[2026-06-05 23:40:58,691.691 INFO    ] ================================================
[2026-06-05 23:40:59,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:40:59
[2026-06-05 23:40:59,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:41:00,098.098 INFO    ] Initializing speech engine...
[2026-06-05 23:41:00,119.119 INFO    ] 2026-06-05 23:41:00
[2026-06-05 23:41:00,379.379 INFO    ] 2026-06-05 23:41:00
[2026-06-05 23:41:00,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:41:00,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:41:00,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:41:00,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:41:00,856.856 INFO    ] time= 05/06/2026 23:41:00
[2026-06-05 23:41:00,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:41:00,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:41:01,094.094 INFO    ] No existing commands found in stream
[2026-06-05 23:41:06,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:41:06,120.120 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-05 23:41:08,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:41:08,846.846 INFO    ] Checking for system updates...
[2026-06-05 23:41:08,882.882 INFO    ] 200
[2026-06-05 23:41:08,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:08,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:41:08,945.945 INFO    ] No update needed
[2026-06-05 23:41:08,948.948 INFO    ] Checking for camera pi updates...
[2026-06-05 23:41:08,984.984 INFO    ] 200
[2026-06-05 23:41:08,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:09,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:41:09,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:41:09,178.178 INFO    ] No camera update needed
[2026-06-05 23:41:09,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:41:09,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:41:09,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:41:09,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:41:11,233.233 INFO    ] ================================================
[2026-06-05 23:41:11,249.249 INFO    ] Launching Daemon at Fri Jun  5 23:41:11 IST 2026
[2026-06-05 23:41:11,259.259 INFO    ] ================================================
[2026-06-05 23:41:11,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:41:11
[2026-06-05 23:41:12,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:41:12,681.681 INFO    ] Initializing speech engine...
[2026-06-05 23:41:12,705.705 INFO    ] 2026-06-05 23:41:12
[2026-06-05 23:41:12,975.975 INFO    ] 2026-06-05 23:41:12
[2026-06-05 23:41:13,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:41:13,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:41:13,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:41:13,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:41:13,474.474 INFO    ] time= 05/06/2026 23:41:13
[2026-06-05 23:41:13,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:41:13,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:41:13,696.696 INFO    ] No existing commands found in stream
[2026-06-05 23:41:18,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:41:18,730.730 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-05 23:41:20,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:41:20,367.367 INFO    ] Checking for system updates...
[2026-06-05 23:41:20,404.404 INFO    ] 200
[2026-06-05 23:41:20,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:20,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:41:20,462.462 INFO    ] No update needed
[2026-06-05 23:41:20,464.464 INFO    ] Checking for camera pi updates...
[2026-06-05 23:41:20,503.503 INFO    ] 200
[2026-06-05 23:41:20,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:20,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:41:20,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:41:20,604.604 INFO    ] No camera update needed
[2026-06-05 23:41:20,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:41:20,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:41:20,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:41:20,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:41:22,659.659 INFO    ] ================================================
[2026-06-05 23:41:22,674.674 INFO    ] Launching Daemon at Fri Jun  5 23:41:22 IST 2026
[2026-06-05 23:41:22,685.685 INFO    ] ================================================
[2026-06-05 23:41:23,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:41:23
[2026-06-05 23:41:23,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:41:24,151.151 INFO    ] Initializing speech engine...
[2026-06-05 23:41:24,157.157 INFO    ] 2026-06-05 23:41:24
[2026-06-05 23:41:24,412.412 INFO    ] 2026-06-05 23:41:24
[2026-06-05 23:41:24,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:41:24,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:41:24,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:41:24,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:41:24,879.879 INFO    ] time= 05/06/2026 23:41:24
[2026-06-05 23:41:24,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:41:24,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:41:25,117.117 INFO    ] No existing commands found in stream
[2026-06-05 23:41:30,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:41:30,134.134 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-05 23:41:32,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:41:32,987.987 INFO    ] Checking for system updates...
[2026-06-05 23:41:33,024.024 INFO    ] 200
[2026-06-05 23:41:33,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:33,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:41:33,085.085 INFO    ] No update needed
[2026-06-05 23:41:33,088.088 INFO    ] Checking for camera pi updates...
[2026-06-05 23:41:33,121.121 INFO    ] 200
[2026-06-05 23:41:33,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:33,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:41:33,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:41:33,224.224 INFO    ] No camera update needed
[2026-06-05 23:41:33,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:41:33,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:41:33,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:41:33,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:41:35,281.281 INFO    ] ================================================
[2026-06-05 23:41:35,297.297 INFO    ] Launching Daemon at Fri Jun  5 23:41:35 IST 2026
[2026-06-05 23:41:35,307.307 INFO    ] ================================================
[2026-06-05 23:41:35,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:41:35
[2026-06-05 23:41:36,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:41:36,764.764 INFO    ] Initializing speech engine...
[2026-06-05 23:41:36,769.769 INFO    ] 2026-06-05 23:41:36
[2026-06-05 23:41:37,036.036 INFO    ] 2026-06-05 23:41:37
[2026-06-05 23:41:37,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:41:37,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:41:37,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:41:37,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:41:37,447.447 INFO    ] time= 05/06/2026 23:41:37
[2026-06-05 23:41:37,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:41:37,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:41:37,535.535 INFO    ] No existing commands found in stream
[2026-06-05 23:41:42,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:41:42,558.558 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-05 23:41:45,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:41:45,896.896 INFO    ] Checking for system updates...
[2026-06-05 23:41:45,933.933 INFO    ] 200
[2026-06-05 23:41:45,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:45,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:41:45,996.996 INFO    ] No update needed
[2026-06-05 23:41:45,998.998 INFO    ] Checking for camera pi updates...
[2026-06-05 23:41:46,036.036 INFO    ] 200
[2026-06-05 23:41:46,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:46,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:41:46,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:41:46,132.132 INFO    ] No camera update needed
[2026-06-05 23:41:46,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:41:46,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:41:46,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:41:46,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:41:48,187.187 INFO    ] ================================================
[2026-06-05 23:41:48,202.202 INFO    ] Launching Daemon at Fri Jun  5 23:41:48 IST 2026
[2026-06-05 23:41:48,213.213 INFO    ] ================================================
[2026-06-05 23:41:48,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:41:48
[2026-06-05 23:41:49,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:41:49,745.745 INFO    ] Initializing speech engine...
[2026-06-05 23:41:49,753.753 INFO    ] 2026-06-05 23:41:49
[2026-06-05 23:41:50,042.042 INFO    ] 2026-06-05 23:41:50
[2026-06-05 23:41:50,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:41:50,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:41:50,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:41:50,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:41:50,515.515 INFO    ] time= 05/06/2026 23:41:50
[2026-06-05 23:41:50,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:41:50,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:41:50,752.752 INFO    ] No existing commands found in stream
[2026-06-05 23:41:55,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:41:55,778.778 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-05 23:41:59,397.397 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:41:59,400.400 INFO    ] Checking for system updates...
[2026-06-05 23:41:59,443.443 INFO    ] 200
[2026-06-05 23:41:59,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:59,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:41:59,502.502 INFO    ] No update needed
[2026-06-05 23:41:59,505.505 INFO    ] Checking for camera pi updates...
[2026-06-05 23:41:59,539.539 INFO    ] 200
[2026-06-05 23:41:59,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:41:59,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:41:59,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:41:59,637.637 INFO    ] No camera update needed
[2026-06-05 23:41:59,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:41:59,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:41:59,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:41:59,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:42:01,698.698 INFO    ] ================================================
[2026-06-05 23:42:01,737.737 INFO    ] Launching Daemon at Fri Jun  5 23:42:01 IST 2026
[2026-06-05 23:42:01,765.765 INFO    ] ================================================
[2026-06-05 23:42:02,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:42:02
[2026-06-05 23:42:03,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:42:03,421.421 INFO    ] Initializing speech engine...
[2026-06-05 23:42:03,445.445 INFO    ] 2026-06-05 23:42:03
[2026-06-05 23:42:03,716.716 INFO    ] 2026-06-05 23:42:03
[2026-06-05 23:42:03,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:42:03,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:42:04,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:42:04,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:42:04,235.235 INFO    ] time= 05/06/2026 23:42:04
[2026-06-05 23:42:04,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:42:04,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:42:04,436.436 INFO    ] No existing commands found in stream
[2026-06-05 23:42:09,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:42:09,471.471 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-05 23:42:13,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:42:13,473.473 INFO    ] Checking for system updates...
[2026-06-05 23:42:13,511.511 INFO    ] 200
[2026-06-05 23:42:13,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:42:13,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:42:13,578.578 INFO    ] No update needed
[2026-06-05 23:42:13,581.581 INFO    ] Checking for camera pi updates...
[2026-06-05 23:42:13,616.616 INFO    ] 200
[2026-06-05 23:42:13,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:42:13,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:42:13,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:42:13,709.709 INFO    ] No camera update needed
[2026-06-05 23:42:13,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:42:13,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:42:13,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:42:13,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:42:15,763.763 INFO    ] ================================================
[2026-06-05 23:42:15,779.779 INFO    ] Launching Daemon at Fri Jun  5 23:42:15 IST 2026
[2026-06-05 23:42:15,791.791 INFO    ] ================================================
[2026-06-05 23:42:16,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:42:16
[2026-06-05 23:42:16,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:42:17,254.254 INFO    ] Initializing speech engine...
[2026-06-05 23:42:17,261.261 INFO    ] 2026-06-05 23:42:17
[2026-06-05 23:42:17,525.525 INFO    ] 2026-06-05 23:42:17
[2026-06-05 23:42:17,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:42:17,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:42:17,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:42:17,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:42:18,012.012 INFO    ] time= 05/06/2026 23:42:17
[2026-06-05 23:42:18,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:42:18,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:42:18,228.228 INFO    ] No existing commands found in stream
[2026-06-05 23:42:23,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:42:23,246.246 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 23:42:25,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:42:25,888.888 INFO    ] Checking for system updates...
[2026-06-05 23:42:25,929.929 INFO    ] 200
[2026-06-05 23:42:25,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:42:25,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:42:25,993.993 INFO    ] No update needed
[2026-06-05 23:42:25,995.995 INFO    ] Checking for camera pi updates...
[2026-06-05 23:42:26,033.033 INFO    ] 200
[2026-06-05 23:42:26,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:42:26,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:42:26,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:42:26,132.132 INFO    ] No camera update needed
[2026-06-05 23:42:26,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:42:26,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:42:26,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:42:26,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:42:28,188.188 INFO    ] ================================================
[2026-06-05 23:42:28,204.204 INFO    ] Launching Daemon at Fri Jun  5 23:42:28 IST 2026
[2026-06-05 23:42:28,217.217 INFO    ] ================================================
[2026-06-05 23:42:28,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:42:28
[2026-06-05 23:42:29,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:42:29,678.678 INFO    ] Initializing speech engine...
[2026-06-05 23:42:29,686.686 INFO    ] 2026-06-05 23:42:29
[2026-06-05 23:42:30,007.007 INFO    ] 2026-06-05 23:42:29
[2026-06-05 23:42:30,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:42:30,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:42:30,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:42:30,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:42:30,516.516 INFO    ] time= 05/06/2026 23:42:30
[2026-06-05 23:42:30,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:42:30,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:42:30,668.668 INFO    ] No existing commands found in stream
[2026-06-05 23:42:35,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:42:35,688.688 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-05 23:42:37,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:42:37,528.528 INFO    ] Checking for system updates...
[2026-06-05 23:42:37,569.569 INFO    ] 200
[2026-06-05 23:42:37,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:42:37,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:42:37,634.634 INFO    ] No update needed
[2026-06-05 23:42:37,637.637 INFO    ] Checking for camera pi updates...
[2026-06-05 23:42:37,675.675 INFO    ] 200
[2026-06-05 23:42:37,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:42:37,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:42:37,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:42:37,775.775 INFO    ] No camera update needed
[2026-06-05 23:42:37,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:42:37,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:42:37,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:42:37,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:42:39,836.836 INFO    ] ================================================
[2026-06-05 23:42:39,852.852 INFO    ] Launching Daemon at Fri Jun  5 23:42:39 IST 2026
[2026-06-05 23:42:39,863.863 INFO    ] ================================================
[2026-06-05 23:42:40,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:42:40
[2026-06-05 23:42:41,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:42:41,297.297 INFO    ] Initializing speech engine...
[2026-06-05 23:42:41,306.306 INFO    ] 2026-06-05 23:42:41
[2026-06-05 23:42:41,553.553 INFO    ] 2026-06-05 23:42:41
[2026-06-05 23:42:41,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:42:41,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:42:41,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:42:41,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:42:42,026.026 INFO    ] time= 05/06/2026 23:42:41
[2026-06-05 23:42:42,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:42:42,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:42:42,251.251 INFO    ] No existing commands found in stream
[2026-06-05 23:42:47,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:42:47,276.276 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-05 23:42:49,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:42:49,535.535 INFO    ] Checking for system updates...
[2026-06-05 23:42:49,572.572 INFO    ] 200
[2026-06-05 23:42:49,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:42:49,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:42:49,633.633 INFO    ] No update needed
[2026-06-05 23:42:49,636.636 INFO    ] Checking for camera pi updates...
[2026-06-05 23:42:49,671.671 INFO    ] 200
[2026-06-05 23:42:49,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:42:49,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:42:49,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:42:49,780.780 INFO    ] No camera update needed
[2026-06-05 23:42:49,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:42:49,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:42:49,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:42:49,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:42:51,838.838 INFO    ] ================================================
[2026-06-05 23:42:51,853.853 INFO    ] Launching Daemon at Fri Jun  5 23:42:51 IST 2026
[2026-06-05 23:42:51,864.864 INFO    ] ================================================
[2026-06-05 23:42:52,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:42:52
[2026-06-05 23:42:53,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:42:53,318.318 INFO    ] Initializing speech engine...
[2026-06-05 23:42:53,329.329 INFO    ] 2026-06-05 23:42:53
[2026-06-05 23:42:53,589.589 INFO    ] 2026-06-05 23:42:53
[2026-06-05 23:42:53,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:42:53,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:42:53,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:42:54,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:42:54,068.068 INFO    ] time= 05/06/2026 23:42:54
[2026-06-05 23:42:54,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:42:54,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:42:54,290.290 INFO    ] No existing commands found in stream
[2026-06-05 23:42:59,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:42:59,315.315 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-05 23:43:00,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:43:00,823.823 INFO    ] Checking for system updates...
[2026-06-05 23:43:00,861.861 INFO    ] 200
[2026-06-05 23:43:00,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:00,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:43:00,924.924 INFO    ] No update needed
[2026-06-05 23:43:00,926.926 INFO    ] Checking for camera pi updates...
[2026-06-05 23:43:00,963.963 INFO    ] 200
[2026-06-05 23:43:00,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:01,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:43:01,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:43:01,062.062 INFO    ] No camera update needed
[2026-06-05 23:43:01,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:43:01,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:43:01,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:43:01,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:43:03,128.128 INFO    ] ================================================
[2026-06-05 23:43:03,146.146 INFO    ] Launching Daemon at Fri Jun  5 23:43:03 IST 2026
[2026-06-05 23:43:03,157.157 INFO    ] ================================================
[2026-06-05 23:43:03,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:43:03
[2026-06-05 23:43:04,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:43:04,640.640 INFO    ] Initializing speech engine...
[2026-06-05 23:43:04,649.649 INFO    ] 2026-06-05 23:43:04
[2026-06-05 23:43:04,918.918 INFO    ] 2026-06-05 23:43:04
[2026-06-05 23:43:04,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:43:05,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:43:05,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:43:05,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:43:05,432.432 INFO    ] time= 05/06/2026 23:43:05
[2026-06-05 23:43:05,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:43:05,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:43:05,612.612 INFO    ] No existing commands found in stream
[2026-06-05 23:43:10,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:43:10,652.652 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-05 23:43:12,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:43:12,285.285 INFO    ] Checking for system updates...
[2026-06-05 23:43:12,321.321 INFO    ] 200
[2026-06-05 23:43:12,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:12,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:43:12,402.402 INFO    ] No update needed
[2026-06-05 23:43:12,404.404 INFO    ] Checking for camera pi updates...
[2026-06-05 23:43:12,455.455 INFO    ] 200
[2026-06-05 23:43:12,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:12,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:43:12,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:43:12,645.645 INFO    ] No camera update needed
[2026-06-05 23:43:12,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:43:12,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:43:12,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:43:12,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:43:14,700.700 INFO    ] ================================================
[2026-06-05 23:43:14,716.716 INFO    ] Launching Daemon at Fri Jun  5 23:43:14 IST 2026
[2026-06-05 23:43:14,728.728 INFO    ] ================================================
[2026-06-05 23:43:15,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:43:15
[2026-06-05 23:43:16,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:43:16,330.330 INFO    ] Initializing speech engine...
[2026-06-05 23:43:16,343.343 INFO    ] 2026-06-05 23:43:16
[2026-06-05 23:43:16,622.622 INFO    ] 2026-06-05 23:43:16
[2026-06-05 23:43:16,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:43:16,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:43:16,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:43:17,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:43:17,155.155 INFO    ] time= 05/06/2026 23:43:17
[2026-06-05 23:43:17,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:43:17,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:43:17,322.322 INFO    ] No existing commands found in stream
[2026-06-05 23:43:22,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:43:22,356.356 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-05 23:43:26,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:43:26,634.634 INFO    ] Checking for system updates...
[2026-06-05 23:43:26,670.670 INFO    ] 200
[2026-06-05 23:43:26,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:26,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:43:26,739.739 INFO    ] No update needed
[2026-06-05 23:43:26,741.741 INFO    ] Checking for camera pi updates...
[2026-06-05 23:43:26,780.780 INFO    ] 200
[2026-06-05 23:43:26,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:26,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:43:26,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:43:26,880.880 INFO    ] No camera update needed
[2026-06-05 23:43:26,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:43:26,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:43:26,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:43:26,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:43:28,937.937 INFO    ] ================================================
[2026-06-05 23:43:28,953.953 INFO    ] Launching Daemon at Fri Jun  5 23:43:28 IST 2026
[2026-06-05 23:43:28,966.966 INFO    ] ================================================
[2026-06-05 23:43:29,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:43:29
[2026-06-05 23:43:30,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:43:30,620.620 INFO    ] Initializing speech engine...
[2026-06-05 23:43:30,627.627 INFO    ] 2026-06-05 23:43:30
[2026-06-05 23:43:30,916.916 INFO    ] 2026-06-05 23:43:30
[2026-06-05 23:43:30,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:43:32,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:43:32,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:43:32,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:43:32,926.926 INFO    ] time= 05/06/2026 23:43:32
[2026-06-05 23:43:32,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:43:32,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:43:33,073.073 INFO    ] No existing commands found in stream
[2026-06-05 23:43:38,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:43:38,089.089 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-05 23:43:41,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:43:41,847.847 INFO    ] Checking for system updates...
[2026-06-05 23:43:41,889.889 INFO    ] 200
[2026-06-05 23:43:41,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:41,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:43:41,949.949 INFO    ] No update needed
[2026-06-05 23:43:41,952.952 INFO    ] Checking for camera pi updates...
[2026-06-05 23:43:41,987.987 INFO    ] 200
[2026-06-05 23:43:41,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:42,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:43:42,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:43:42,089.089 INFO    ] No camera update needed
[2026-06-05 23:43:42,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:43:42,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:43:42,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:43:42,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:43:44,148.148 INFO    ] ================================================
[2026-06-05 23:43:44,165.165 INFO    ] Launching Daemon at Fri Jun  5 23:43:44 IST 2026
[2026-06-05 23:43:44,177.177 INFO    ] ================================================
[2026-06-05 23:43:44,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:43:44
[2026-06-05 23:43:45,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:43:45,799.799 INFO    ] Initializing speech engine...
[2026-06-05 23:43:45,809.809 INFO    ] 2026-06-05 23:43:45
[2026-06-05 23:43:46,085.085 INFO    ] 2026-06-05 23:43:46
[2026-06-05 23:43:46,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:43:46,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:43:46,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:43:46,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:43:46,637.637 INFO    ] time= 05/06/2026 23:43:46
[2026-06-05 23:43:46,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:43:46,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:43:46,793.793 INFO    ] No existing commands found in stream
[2026-06-05 23:43:51,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:43:51,811.811 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-05 23:43:55,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:43:55,620.620 INFO    ] Checking for system updates...
[2026-06-05 23:43:55,662.662 INFO    ] 200
[2026-06-05 23:43:55,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:55,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:43:55,727.727 INFO    ] No update needed
[2026-06-05 23:43:55,729.729 INFO    ] Checking for camera pi updates...
[2026-06-05 23:43:55,764.764 INFO    ] 200
[2026-06-05 23:43:55,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:43:55,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:43:55,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:43:55,862.862 INFO    ] No camera update needed
[2026-06-05 23:43:55,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:43:55,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:43:55,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:43:55,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:43:57,918.918 INFO    ] ================================================
[2026-06-05 23:43:57,934.934 INFO    ] Launching Daemon at Fri Jun  5 23:43:57 IST 2026
[2026-06-05 23:43:57,945.945 INFO    ] ================================================
[2026-06-05 23:43:58,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:43:58
[2026-06-05 23:43:59,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:43:59,408.408 INFO    ] Initializing speech engine...
[2026-06-05 23:43:59,416.416 INFO    ] 2026-06-05 23:43:59
[2026-06-05 23:43:59,676.676 INFO    ] 2026-06-05 23:43:59
[2026-06-05 23:43:59,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:43:59,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:43:59,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:44:00,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:44:00,169.169 INFO    ] time= 05/06/2026 23:44:00
[2026-06-05 23:44:00,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:44:00,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:44:00,380.380 INFO    ] No existing commands found in stream
[2026-06-05 23:44:05,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:44:05,402.402 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-05 23:44:07,312.312 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:44:07,315.315 INFO    ] Checking for system updates...
[2026-06-05 23:44:07,354.354 INFO    ] 200
[2026-06-05 23:44:07,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:07,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:44:07,417.417 INFO    ] No update needed
[2026-06-05 23:44:07,419.419 INFO    ] Checking for camera pi updates...
[2026-06-05 23:44:07,457.457 INFO    ] 200
[2026-06-05 23:44:07,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:07,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:44:07,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:44:07,541.541 INFO    ] No camera update needed
[2026-06-05 23:44:07,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:44:07,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:44:07,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:44:07,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:44:09,598.598 INFO    ] ================================================
[2026-06-05 23:44:09,613.613 INFO    ] Launching Daemon at Fri Jun  5 23:44:09 IST 2026
[2026-06-05 23:44:09,625.625 INFO    ] ================================================
[2026-06-05 23:44:10,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:44:10
[2026-06-05 23:44:10,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:44:11,184.184 INFO    ] Initializing speech engine...
[2026-06-05 23:44:11,195.195 INFO    ] 2026-06-05 23:44:11
[2026-06-05 23:44:11,481.481 INFO    ] 2026-06-05 23:44:11
[2026-06-05 23:44:11,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:44:11,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:44:11,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:44:11,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:44:12,030.030 INFO    ] time= 05/06/2026 23:44:11
[2026-06-05 23:44:12,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:44:12,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:44:12,191.191 INFO    ] No existing commands found in stream
[2026-06-05 23:44:17,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:44:17,210.210 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-05 23:44:19,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:44:19,889.889 INFO    ] Checking for system updates...
[2026-06-05 23:44:19,926.926 INFO    ] 200
[2026-06-05 23:44:19,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:19,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:44:19,985.985 INFO    ] No update needed
[2026-06-05 23:44:19,988.988 INFO    ] Checking for camera pi updates...
[2026-06-05 23:44:20,022.022 INFO    ] 200
[2026-06-05 23:44:20,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:20,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:44:20,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:44:20,118.118 INFO    ] No camera update needed
[2026-06-05 23:44:20,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:44:20,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:44:20,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:44:20,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:44:22,177.177 INFO    ] ================================================
[2026-06-05 23:44:22,192.192 INFO    ] Launching Daemon at Fri Jun  5 23:44:22 IST 2026
[2026-06-05 23:44:22,203.203 INFO    ] ================================================
[2026-06-05 23:44:22,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:44:22
[2026-06-05 23:44:23,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:44:23,680.680 INFO    ] Initializing speech engine...
[2026-06-05 23:44:23,690.690 INFO    ] 2026-06-05 23:44:23
[2026-06-05 23:44:23,955.955 INFO    ] 2026-06-05 23:44:23
[2026-06-05 23:44:23,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:44:24,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:44:24,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:44:24,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:44:24,343.343 INFO    ] time= 05/06/2026 23:44:24
[2026-06-05 23:44:24,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:44:24,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:44:24,452.452 INFO    ] No existing commands found in stream
[2026-06-05 23:44:29,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:44:29,490.490 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 23:44:30,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:44:30,815.815 INFO    ] Checking for system updates...
[2026-06-05 23:44:30,851.851 INFO    ] 200
[2026-06-05 23:44:30,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:30,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:44:30,909.909 INFO    ] No update needed
[2026-06-05 23:44:30,911.911 INFO    ] Checking for camera pi updates...
[2026-06-05 23:44:30,945.945 INFO    ] 200
[2026-06-05 23:44:30,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:30,992.992 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:44:31,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:44:31,037.037 INFO    ] No camera update needed
[2026-06-05 23:44:31,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:44:31,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:44:31,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:44:31,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:44:33,096.096 INFO    ] ================================================
[2026-06-05 23:44:33,112.112 INFO    ] Launching Daemon at Fri Jun  5 23:44:33 IST 2026
[2026-06-05 23:44:33,123.123 INFO    ] ================================================
[2026-06-05 23:44:33,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:44:33
[2026-06-05 23:44:34,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:44:34,577.577 INFO    ] Initializing speech engine...
[2026-06-05 23:44:34,586.586 INFO    ] 2026-06-05 23:44:34
[2026-06-05 23:44:34,840.840 INFO    ] 2026-06-05 23:44:34
[2026-06-05 23:44:34,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:44:35,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:44:35,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:44:35,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:44:35,316.316 INFO    ] time= 05/06/2026 23:44:35
[2026-06-05 23:44:35,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:44:35,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:44:35,548.548 INFO    ] No existing commands found in stream
[2026-06-05 23:44:40,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:44:40,567.567 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-05 23:44:42,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:44:42,386.386 INFO    ] Checking for system updates...
[2026-06-05 23:44:42,423.423 INFO    ] 200
[2026-06-05 23:44:42,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:42,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:44:42,496.496 INFO    ] No update needed
[2026-06-05 23:44:42,499.499 INFO    ] Checking for camera pi updates...
[2026-06-05 23:44:42,538.538 INFO    ] 200
[2026-06-05 23:44:42,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:42,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:44:42,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:44:42,661.661 INFO    ] No camera update needed
[2026-06-05 23:44:42,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:44:42,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:44:42,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:44:42,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:44:44,716.716 INFO    ] ================================================
[2026-06-05 23:44:44,732.732 INFO    ] Launching Daemon at Fri Jun  5 23:44:44 IST 2026
[2026-06-05 23:44:44,743.743 INFO    ] ================================================
[2026-06-05 23:44:45,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:44:45
[2026-06-05 23:44:45,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:44:46,259.259 INFO    ] Initializing speech engine...
[2026-06-05 23:44:46,273.273 INFO    ] 2026-06-05 23:44:46
[2026-06-05 23:44:46,538.538 INFO    ] 2026-06-05 23:44:46
[2026-06-05 23:44:46,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:44:46,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:44:46,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:44:46,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:44:47,025.025 INFO    ] time= 05/06/2026 23:44:46
[2026-06-05 23:44:47,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:44:47,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:44:47,230.230 INFO    ] No existing commands found in stream
[2026-06-05 23:44:52,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:44:52,255.255 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-05 23:44:54,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:44:54,010.010 INFO    ] Checking for system updates...
[2026-06-05 23:44:54,046.046 INFO    ] 200
[2026-06-05 23:44:54,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:54,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:44:54,109.109 INFO    ] No update needed
[2026-06-05 23:44:54,111.111 INFO    ] Checking for camera pi updates...
[2026-06-05 23:44:54,145.145 INFO    ] 200
[2026-06-05 23:44:54,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:44:54,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:44:54,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:44:54,251.251 INFO    ] No camera update needed
[2026-06-05 23:44:54,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:44:54,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:44:54,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:44:54,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:44:56,305.305 INFO    ] ================================================
[2026-06-05 23:44:56,321.321 INFO    ] Launching Daemon at Fri Jun  5 23:44:56 IST 2026
[2026-06-05 23:44:56,333.333 INFO    ] ================================================
[2026-06-05 23:44:56,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:44:56
[2026-06-05 23:44:57,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:44:57,766.766 INFO    ] Initializing speech engine...
[2026-06-05 23:44:57,776.776 INFO    ] 2026-06-05 23:44:57
[2026-06-05 23:44:58,025.025 INFO    ] 2026-06-05 23:44:58
[2026-06-05 23:44:58,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:44:58,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:44:58,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:44:58,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:44:58,529.529 INFO    ] time= 05/06/2026 23:44:58
[2026-06-05 23:44:58,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:44:58,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:44:58,736.736 INFO    ] No existing commands found in stream
[2026-06-05 23:45:03,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:45:03,767.767 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-05 23:45:06,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:45:06,003.003 INFO    ] Checking for system updates...
[2026-06-05 23:45:06,042.042 INFO    ] 200
[2026-06-05 23:45:06,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:06,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:45:06,100.100 INFO    ] No update needed
[2026-06-05 23:45:06,103.103 INFO    ] Checking for camera pi updates...
[2026-06-05 23:45:06,137.137 INFO    ] 200
[2026-06-05 23:45:06,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:06,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:45:06,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:45:06,244.244 INFO    ] No camera update needed
[2026-06-05 23:45:06,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:45:06,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:45:06,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:45:06,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:45:08,300.300 INFO    ] ================================================
[2026-06-05 23:45:08,317.317 INFO    ] Launching Daemon at Fri Jun  5 23:45:08 IST 2026
[2026-06-05 23:45:08,328.328 INFO    ] ================================================
[2026-06-05 23:45:08,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:45:08
[2026-06-05 23:45:09,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:45:09,796.796 INFO    ] Initializing speech engine...
[2026-06-05 23:45:09,803.803 INFO    ] 2026-06-05 23:45:09
[2026-06-05 23:45:10,065.065 INFO    ] 2026-06-05 23:45:10
[2026-06-05 23:45:10,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:45:10,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:45:10,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:45:10,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:45:10,533.533 INFO    ] time= 05/06/2026 23:45:10
[2026-06-05 23:45:10,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:45:10,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:45:10,755.755 INFO    ] No existing commands found in stream
[2026-06-05 23:45:15,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:45:15,782.782 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 23:45:18,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:45:18,437.437 INFO    ] Checking for system updates...
[2026-06-05 23:45:18,478.478 INFO    ] 200
[2026-06-05 23:45:18,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:18,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:45:18,542.542 INFO    ] No update needed
[2026-06-05 23:45:18,544.544 INFO    ] Checking for camera pi updates...
[2026-06-05 23:45:18,579.579 INFO    ] 200
[2026-06-05 23:45:18,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:18,628.628 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:45:18,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:45:18,778.778 INFO    ] No camera update needed
[2026-06-05 23:45:18,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:45:18,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:45:18,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:45:18,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:45:20,837.837 INFO    ] ================================================
[2026-06-05 23:45:20,852.852 INFO    ] Launching Daemon at Fri Jun  5 23:45:20 IST 2026
[2026-06-05 23:45:20,863.863 INFO    ] ================================================
[2026-06-05 23:45:21,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:45:21
[2026-06-05 23:45:22,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:45:22,324.324 INFO    ] Initializing speech engine...
[2026-06-05 23:45:22,336.336 INFO    ] 2026-06-05 23:45:22
[2026-06-05 23:45:22,597.597 INFO    ] 2026-06-05 23:45:22
[2026-06-05 23:45:22,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:45:22,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:45:22,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:45:23,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:45:23,063.063 INFO    ] time= 05/06/2026 23:45:23
[2026-06-05 23:45:23,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:45:23,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:45:23,277.277 INFO    ] No existing commands found in stream
[2026-06-05 23:45:28,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:45:28,316.316 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 23:45:30,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:45:30,824.824 INFO    ] Checking for system updates...
[2026-06-05 23:45:30,860.860 INFO    ] 200
[2026-06-05 23:45:30,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:30,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:45:30,923.923 INFO    ] No update needed
[2026-06-05 23:45:30,925.925 INFO    ] Checking for camera pi updates...
[2026-06-05 23:45:30,962.962 INFO    ] 200
[2026-06-05 23:45:30,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:31,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:45:31,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:45:31,057.057 INFO    ] No camera update needed
[2026-06-05 23:45:31,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:45:31,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:45:31,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:45:31,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:45:33,117.117 INFO    ] ================================================
[2026-06-05 23:45:33,136.136 INFO    ] Launching Daemon at Fri Jun  5 23:45:33 IST 2026
[2026-06-05 23:45:33,150.150 INFO    ] ================================================
[2026-06-05 23:45:33,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:45:33
[2026-06-05 23:45:34,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:45:34,597.597 INFO    ] Initializing speech engine...
[2026-06-05 23:45:34,605.605 INFO    ] 2026-06-05 23:45:34
[2026-06-05 23:45:34,900.900 INFO    ] 2026-06-05 23:45:34
[2026-06-05 23:45:34,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:45:35,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:45:35,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:45:35,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:45:35,319.319 INFO    ] time= 05/06/2026 23:45:35
[2026-06-05 23:45:35,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:45:35,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:45:35,494.494 INFO    ] No existing commands found in stream
[2026-06-05 23:45:40,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:45:40,527.527 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-05 23:45:43,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:45:43,120.120 INFO    ] Checking for system updates...
[2026-06-05 23:45:43,156.156 INFO    ] 200
[2026-06-05 23:45:43,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:43,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:45:43,220.220 INFO    ] No update needed
[2026-06-05 23:45:43,223.223 INFO    ] Checking for camera pi updates...
[2026-06-05 23:45:43,264.264 INFO    ] 200
[2026-06-05 23:45:43,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:43,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:45:43,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:45:43,362.362 INFO    ] No camera update needed
[2026-06-05 23:45:43,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:45:43,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:45:43,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:45:43,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:45:45,417.417 INFO    ] ================================================
[2026-06-05 23:45:45,432.432 INFO    ] Launching Daemon at Fri Jun  5 23:45:45 IST 2026
[2026-06-05 23:45:45,443.443 INFO    ] ================================================
[2026-06-05 23:45:46,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:45:46
[2026-06-05 23:45:46,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:45:46,902.902 INFO    ] Initializing speech engine...
[2026-06-05 23:45:46,908.908 INFO    ] 2026-06-05 23:45:46
[2026-06-05 23:45:47,169.169 INFO    ] 2026-06-05 23:45:47
[2026-06-05 23:45:47,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:45:47,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:45:47,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:45:47,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:45:47,632.632 INFO    ] time= 05/06/2026 23:45:47
[2026-06-05 23:45:47,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:45:47,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:45:47,857.857 INFO    ] No existing commands found in stream
[2026-06-05 23:45:52,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:45:52,879.879 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-05 23:45:54,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:45:54,397.397 INFO    ] Checking for system updates...
[2026-06-05 23:45:54,438.438 INFO    ] 200
[2026-06-05 23:45:54,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:54,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:45:54,499.499 INFO    ] No update needed
[2026-06-05 23:45:54,501.501 INFO    ] Checking for camera pi updates...
[2026-06-05 23:45:54,540.540 INFO    ] 200
[2026-06-05 23:45:54,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:45:54,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:45:54,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:45:54,653.653 INFO    ] No camera update needed
[2026-06-05 23:45:54,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:45:54,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:45:54,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:45:54,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:45:56,712.712 INFO    ] ================================================
[2026-06-05 23:45:56,727.727 INFO    ] Launching Daemon at Fri Jun  5 23:45:56 IST 2026
[2026-06-05 23:45:56,737.737 INFO    ] ================================================
[2026-06-05 23:45:57,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:45:57
[2026-06-05 23:45:58,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:45:58,388.388 INFO    ] Initializing speech engine...
[2026-06-05 23:45:58,402.402 INFO    ] 2026-06-05 23:45:58
[2026-06-05 23:45:58,694.694 INFO    ] 2026-06-05 23:45:58
[2026-06-05 23:45:58,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:45:58,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:45:58,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:45:59,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:45:59,189.189 INFO    ] time= 05/06/2026 23:45:59
[2026-06-05 23:45:59,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:45:59,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:45:59,379.379 INFO    ] No existing commands found in stream
[2026-06-05 23:46:04,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:46:04,419.419 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-05 23:46:05,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:46:05,454.454 INFO    ] Checking for system updates...
[2026-06-05 23:46:05,498.498 INFO    ] 200
[2026-06-05 23:46:05,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:05,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:46:05,566.566 INFO    ] No update needed
[2026-06-05 23:46:05,569.569 INFO    ] Checking for camera pi updates...
[2026-06-05 23:46:05,607.607 INFO    ] 200
[2026-06-05 23:46:05,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:05,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:46:05,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:46:05,735.735 INFO    ] No camera update needed
[2026-06-05 23:46:05,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:46:05,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:46:05,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:46:05,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:46:07,791.791 INFO    ] ================================================
[2026-06-05 23:46:07,806.806 INFO    ] Launching Daemon at Fri Jun  5 23:46:07 IST 2026
[2026-06-05 23:46:07,817.817 INFO    ] ================================================
[2026-06-05 23:46:08,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:46:08
[2026-06-05 23:46:09,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:46:09,442.442 INFO    ] Initializing speech engine...
[2026-06-05 23:46:09,453.453 INFO    ] 2026-06-05 23:46:09
[2026-06-05 23:46:09,743.743 INFO    ] 2026-06-05 23:46:09
[2026-06-05 23:46:09,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:46:10,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:46:10,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:46:10,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:46:10,230.230 INFO    ] time= 05/06/2026 23:46:10
[2026-06-05 23:46:10,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:46:10,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:46:10,461.461 INFO    ] No existing commands found in stream
[2026-06-05 23:46:15,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:46:15,485.485 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-05 23:46:16,774.774 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:46:16,777.777 INFO    ] Checking for system updates...
[2026-06-05 23:46:16,814.814 INFO    ] 200
[2026-06-05 23:46:16,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:16,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:46:16,873.873 INFO    ] No update needed
[2026-06-05 23:46:16,876.876 INFO    ] Checking for camera pi updates...
[2026-06-05 23:46:16,913.913 INFO    ] 200
[2026-06-05 23:46:16,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:16,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:46:17,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:46:17,005.005 INFO    ] No camera update needed
[2026-06-05 23:46:17,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:46:17,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:46:17,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:46:17,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:46:19,059.059 INFO    ] ================================================
[2026-06-05 23:46:19,075.075 INFO    ] Launching Daemon at Fri Jun  5 23:46:19 IST 2026
[2026-06-05 23:46:19,086.086 INFO    ] ================================================
[2026-06-05 23:46:19,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:46:19
[2026-06-05 23:46:20,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:46:20,541.541 INFO    ] Initializing speech engine...
[2026-06-05 23:46:20,551.551 INFO    ] 2026-06-05 23:46:20
[2026-06-05 23:46:20,816.816 INFO    ] 2026-06-05 23:46:20
[2026-06-05 23:46:20,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:46:21,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:46:21,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:46:21,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:46:21,273.273 INFO    ] time= 05/06/2026 23:46:21
[2026-06-05 23:46:21,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:46:21,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:46:21,617.617 INFO    ] No existing commands found in stream
[2026-06-05 23:46:26,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:46:26,647.647 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-05 23:46:29,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:46:29,209.209 INFO    ] Checking for system updates...
[2026-06-05 23:46:29,245.245 INFO    ] 200
[2026-06-05 23:46:29,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:29,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:46:29,303.303 INFO    ] No update needed
[2026-06-05 23:46:29,305.305 INFO    ] Checking for camera pi updates...
[2026-06-05 23:46:29,340.340 INFO    ] 200
[2026-06-05 23:46:29,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:29,383.383 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:46:29,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:46:29,434.434 INFO    ] No camera update needed
[2026-06-05 23:46:29,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:46:29,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:46:29,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:46:29,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:46:31,494.494 INFO    ] ================================================
[2026-06-05 23:46:31,511.511 INFO    ] Launching Daemon at Fri Jun  5 23:46:31 IST 2026
[2026-06-05 23:46:31,522.522 INFO    ] ================================================
[2026-06-05 23:46:32,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:46:32
[2026-06-05 23:46:32,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:46:33,042.042 INFO    ] Initializing speech engine...
[2026-06-05 23:46:33,049.049 INFO    ] 2026-06-05 23:46:33
[2026-06-05 23:46:33,332.332 INFO    ] 2026-06-05 23:46:33
[2026-06-05 23:46:33,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:46:33,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:46:33,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:46:33,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:46:33,767.767 INFO    ] time= 05/06/2026 23:46:33
[2026-06-05 23:46:33,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:46:33,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:46:33,859.859 INFO    ] No existing commands found in stream
[2026-06-05 23:46:38,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:46:38,876.876 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-05 23:46:41,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:46:41,303.303 INFO    ] Checking for system updates...
[2026-06-05 23:46:41,340.340 INFO    ] 200
[2026-06-05 23:46:41,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:41,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:46:41,408.408 INFO    ] No update needed
[2026-06-05 23:46:41,410.410 INFO    ] Checking for camera pi updates...
[2026-06-05 23:46:41,444.444 INFO    ] 200
[2026-06-05 23:46:41,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:41,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:46:41,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:46:41,545.545 INFO    ] No camera update needed
[2026-06-05 23:46:41,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:46:41,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:46:41,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:46:41,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:46:43,602.602 INFO    ] ================================================
[2026-06-05 23:46:43,617.617 INFO    ] Launching Daemon at Fri Jun  5 23:46:43 IST 2026
[2026-06-05 23:46:43,628.628 INFO    ] ================================================
[2026-06-05 23:46:44,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:46:44
[2026-06-05 23:46:45,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:46:45,321.321 INFO    ] Initializing speech engine...
[2026-06-05 23:46:45,335.335 INFO    ] 2026-06-05 23:46:45
[2026-06-05 23:46:45,647.647 INFO    ] 2026-06-05 23:46:45
[2026-06-05 23:46:45,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:46:45,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:46:45,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:46:46,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:46:46,159.159 INFO    ] time= 05/06/2026 23:46:46
[2026-06-05 23:46:46,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:46:46,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:46:46,319.319 INFO    ] No existing commands found in stream
[2026-06-05 23:46:51,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:46:51,342.342 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-05 23:46:55,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:46:55,085.085 INFO    ] Checking for system updates...
[2026-06-05 23:46:55,123.123 INFO    ] 200
[2026-06-05 23:46:55,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:55,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:46:55,192.192 INFO    ] No update needed
[2026-06-05 23:46:55,194.194 INFO    ] Checking for camera pi updates...
[2026-06-05 23:46:55,228.228 INFO    ] 200
[2026-06-05 23:46:55,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:46:55,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:46:55,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:46:55,321.321 INFO    ] No camera update needed
[2026-06-05 23:46:55,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:46:55,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:46:55,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:46:55,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:46:57,376.376 INFO    ] ================================================
[2026-06-05 23:46:57,392.392 INFO    ] Launching Daemon at Fri Jun  5 23:46:57 IST 2026
[2026-06-05 23:46:57,402.402 INFO    ] ================================================
[2026-06-05 23:46:57,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:46:57
[2026-06-05 23:46:58,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:46:58,865.865 INFO    ] Initializing speech engine...
[2026-06-05 23:46:58,874.874 INFO    ] 2026-06-05 23:46:58
[2026-06-05 23:46:59,134.134 INFO    ] 2026-06-05 23:46:59
[2026-06-05 23:46:59,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:46:59,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:46:59,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:46:59,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:46:59,595.595 INFO    ] time= 05/06/2026 23:46:59
[2026-06-05 23:46:59,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:46:59,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:46:59,821.821 INFO    ] No existing commands found in stream
[2026-06-05 23:47:04,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:47:04,850.850 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-05 23:47:08,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:47:08,189.189 INFO    ] Checking for system updates...
[2026-06-05 23:47:08,225.225 INFO    ] 200
[2026-06-05 23:47:08,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:08,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:47:08,284.284 INFO    ] No update needed
[2026-06-05 23:47:08,286.286 INFO    ] Checking for camera pi updates...
[2026-06-05 23:47:08,321.321 INFO    ] 200
[2026-06-05 23:47:08,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:08,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:47:08,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:47:08,408.408 INFO    ] No camera update needed
[2026-06-05 23:47:08,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:47:08,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:47:08,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:47:08,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:47:10,467.467 INFO    ] ================================================
[2026-06-05 23:47:10,482.482 INFO    ] Launching Daemon at Fri Jun  5 23:47:10 IST 2026
[2026-06-05 23:47:10,493.493 INFO    ] ================================================
[2026-06-05 23:47:11,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:47:11
[2026-06-05 23:47:11,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:47:11,959.959 INFO    ] Initializing speech engine...
[2026-06-05 23:47:11,968.968 INFO    ] 2026-06-05 23:47:11
[2026-06-05 23:47:12,227.227 INFO    ] 2026-06-05 23:47:12
[2026-06-05 23:47:12,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:47:12,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:47:12,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:47:12,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:47:12,706.706 INFO    ] time= 05/06/2026 23:47:12
[2026-06-05 23:47:12,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:47:12,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:47:12,930.930 INFO    ] No existing commands found in stream
[2026-06-05 23:47:17,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:47:17,963.963 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-05 23:47:20,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:47:20,865.865 INFO    ] Checking for system updates...
[2026-06-05 23:47:20,910.910 INFO    ] 200
[2026-06-05 23:47:20,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:20,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:47:20,969.969 INFO    ] No update needed
[2026-06-05 23:47:20,971.971 INFO    ] Checking for camera pi updates...
[2026-06-05 23:47:21,006.006 INFO    ] 200
[2026-06-05 23:47:21,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:21,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:47:21,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:47:21,201.201 INFO    ] No camera update needed
[2026-06-05 23:47:21,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:47:21,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:47:21,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:47:21,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:47:23,259.259 INFO    ] ================================================
[2026-06-05 23:47:23,275.275 INFO    ] Launching Daemon at Fri Jun  5 23:47:23 IST 2026
[2026-06-05 23:47:23,286.286 INFO    ] ================================================
[2026-06-05 23:47:23,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:47:23
[2026-06-05 23:47:24,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:47:24,872.872 INFO    ] Initializing speech engine...
[2026-06-05 23:47:24,879.879 INFO    ] 2026-06-05 23:47:24
[2026-06-05 23:47:25,164.164 INFO    ] 2026-06-05 23:47:25
[2026-06-05 23:47:25,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:47:25,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:47:25,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:47:25,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:47:25,700.700 INFO    ] time= 05/06/2026 23:47:25
[2026-06-05 23:47:25,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:47:25,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:47:25,858.858 INFO    ] No existing commands found in stream
[2026-06-05 23:47:30,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:47:30,884.884 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-05 23:47:34,185.185 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:47:34,188.188 INFO    ] Checking for system updates...
[2026-06-05 23:47:34,225.225 INFO    ] 200
[2026-06-05 23:47:34,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:34,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:47:34,284.284 INFO    ] No update needed
[2026-06-05 23:47:34,287.287 INFO    ] Checking for camera pi updates...
[2026-06-05 23:47:34,322.322 INFO    ] 200
[2026-06-05 23:47:34,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:34,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:47:34,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:47:34,419.419 INFO    ] No camera update needed
[2026-06-05 23:47:34,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:47:34,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:47:34,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:47:34,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:47:36,477.477 INFO    ] ================================================
[2026-06-05 23:47:36,493.493 INFO    ] Launching Daemon at Fri Jun  5 23:47:36 IST 2026
[2026-06-05 23:47:36,503.503 INFO    ] ================================================
[2026-06-05 23:47:37,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:47:37
[2026-06-05 23:47:37,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:47:37,908.908 INFO    ] Initializing speech engine...
[2026-06-05 23:47:37,932.932 INFO    ] 2026-06-05 23:47:37
[2026-06-05 23:47:38,188.188 INFO    ] 2026-06-05 23:47:38
[2026-06-05 23:47:38,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:47:38,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:47:38,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:47:38,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:47:38,663.663 INFO    ] time= 05/06/2026 23:47:38
[2026-06-05 23:47:38,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:47:38,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:47:38,918.918 INFO    ] No existing commands found in stream
[2026-06-05 23:47:43,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:47:43,936.936 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-05 23:47:47,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:47:47,175.175 INFO    ] Checking for system updates...
[2026-06-05 23:47:47,212.212 INFO    ] 200
[2026-06-05 23:47:47,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:47,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:47:47,271.271 INFO    ] No update needed
[2026-06-05 23:47:47,274.274 INFO    ] Checking for camera pi updates...
[2026-06-05 23:47:47,308.308 INFO    ] 200
[2026-06-05 23:47:47,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:47,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:47:47,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:47:47,408.408 INFO    ] No camera update needed
[2026-06-05 23:47:47,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:47:47,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:47:47,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:47:47,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:47:49,465.465 INFO    ] ================================================
[2026-06-05 23:47:49,480.480 INFO    ] Launching Daemon at Fri Jun  5 23:47:49 IST 2026
[2026-06-05 23:47:49,491.491 INFO    ] ================================================
[2026-06-05 23:47:50,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:47:50
[2026-06-05 23:47:50,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:47:51,015.015 INFO    ] Initializing speech engine...
[2026-06-05 23:47:51,023.023 INFO    ] 2026-06-05 23:47:51
[2026-06-05 23:47:51,308.308 INFO    ] 2026-06-05 23:47:51
[2026-06-05 23:47:51,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:47:51,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:47:51,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:47:51,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:47:51,795.795 INFO    ] time= 05/06/2026 23:47:51
[2026-06-05 23:47:51,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:47:51,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:47:51,985.985 INFO    ] No existing commands found in stream
[2026-06-05 23:47:57,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:47:57,011.011 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-05 23:47:58,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:47:58,370.370 INFO    ] Checking for system updates...
[2026-06-05 23:47:58,408.408 INFO    ] 200
[2026-06-05 23:47:58,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:58,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:47:58,468.468 INFO    ] No update needed
[2026-06-05 23:47:58,470.470 INFO    ] Checking for camera pi updates...
[2026-06-05 23:47:58,509.509 INFO    ] 200
[2026-06-05 23:47:58,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:47:58,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:47:58,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:47:58,618.618 INFO    ] No camera update needed
[2026-06-05 23:47:58,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:47:58,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:47:58,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:47:58,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:48:00,678.678 INFO    ] ================================================
[2026-06-05 23:48:00,694.694 INFO    ] Launching Daemon at Fri Jun  5 23:48:00 IST 2026
[2026-06-05 23:48:00,705.705 INFO    ] ================================================
[2026-06-05 23:48:01,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:48:01
[2026-06-05 23:48:02,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:48:02,495.495 INFO    ] Initializing speech engine...
[2026-06-05 23:48:02,508.508 INFO    ] 2026-06-05 23:48:02
[2026-06-05 23:48:02,848.848 INFO    ] 2026-06-05 23:48:02
[2026-06-05 23:48:02,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:48:03,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:48:03,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:48:03,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:48:03,323.323 INFO    ] time= 05/06/2026 23:48:03
[2026-06-05 23:48:03,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:48:03,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:48:03,523.523 INFO    ] No existing commands found in stream
[2026-06-05 23:48:08,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:48:08,553.553 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-05 23:48:12,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:48:12,799.799 INFO    ] Checking for system updates...
[2026-06-05 23:48:12,836.836 INFO    ] 200
[2026-06-05 23:48:12,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:48:12,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:48:12,893.893 INFO    ] No update needed
[2026-06-05 23:48:12,896.896 INFO    ] Checking for camera pi updates...
[2026-06-05 23:48:12,934.934 INFO    ] 200
[2026-06-05 23:48:12,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:48:12,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:48:13,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:48:13,032.032 INFO    ] No camera update needed
[2026-06-05 23:48:13,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:48:13,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:48:13,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:48:13,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:48:15,088.088 INFO    ] ================================================
[2026-06-05 23:48:15,104.104 INFO    ] Launching Daemon at Fri Jun  5 23:48:15 IST 2026
[2026-06-05 23:48:15,115.115 INFO    ] ================================================
[2026-06-05 23:48:15,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:48:15
[2026-06-05 23:48:16,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:48:16,542.542 INFO    ] Initializing speech engine...
[2026-06-05 23:48:16,551.551 INFO    ] 2026-06-05 23:48:16
[2026-06-05 23:48:16,806.806 INFO    ] 2026-06-05 23:48:16
[2026-06-05 23:48:16,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:48:17,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:48:17,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:48:17,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:48:17,282.282 INFO    ] time= 05/06/2026 23:48:17
[2026-06-05 23:48:17,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:48:17,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:48:17,519.519 INFO    ] No existing commands found in stream
[2026-06-05 23:48:22,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:48:22,548.548 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-05 23:48:25,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:48:25,723.723 INFO    ] Checking for system updates...
[2026-06-05 23:48:25,759.759 INFO    ] 200
[2026-06-05 23:48:25,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:48:25,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:48:25,822.822 INFO    ] No update needed
[2026-06-05 23:48:25,824.824 INFO    ] Checking for camera pi updates...
[2026-06-05 23:48:25,858.858 INFO    ] 200
[2026-06-05 23:48:25,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:48:25,906.906 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:48:25,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:48:25,952.952 INFO    ] No camera update needed
[2026-06-05 23:48:25,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:48:25,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:48:25,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:48:25,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:48:28,010.010 INFO    ] ================================================
[2026-06-05 23:48:28,025.025 INFO    ] Launching Daemon at Fri Jun  5 23:48:28 IST 2026
[2026-06-05 23:48:28,036.036 INFO    ] ================================================
[2026-06-05 23:48:28,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:48:28
[2026-06-05 23:48:29,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:48:29,441.441 INFO    ] Initializing speech engine...
[2026-06-05 23:48:29,465.465 INFO    ] 2026-06-05 23:48:29
[2026-06-05 23:48:29,721.721 INFO    ] 2026-06-05 23:48:29
[2026-06-05 23:48:29,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:48:29,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:48:29,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:48:30,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:48:30,099.099 INFO    ] time= 05/06/2026 23:48:30
[2026-06-05 23:48:30,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:48:30,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:48:30,289.289 INFO    ] No existing commands found in stream
[2026-06-05 23:48:35,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:48:35,314.314 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-05 23:48:38,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:48:38,391.391 INFO    ] Checking for system updates...
[2026-06-05 23:48:38,427.427 INFO    ] 200
[2026-06-05 23:48:38,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:48:38,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:48:38,492.492 INFO    ] No update needed
[2026-06-05 23:48:38,494.494 INFO    ] Checking for camera pi updates...
[2026-06-05 23:48:38,528.528 INFO    ] 200
[2026-06-05 23:48:38,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:48:38,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:48:38,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:48:38,629.629 INFO    ] No camera update needed
[2026-06-05 23:48:38,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:48:38,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:48:38,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:48:38,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:48:40,686.686 INFO    ] ================================================
[2026-06-05 23:48:40,702.702 INFO    ] Launching Daemon at Fri Jun  5 23:48:40 IST 2026
[2026-06-05 23:48:40,713.713 INFO    ] ================================================
[2026-06-05 23:48:41,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:48:41
[2026-06-05 23:48:41,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:48:42,137.137 INFO    ] Initializing speech engine...
[2026-06-05 23:48:42,146.146 INFO    ] 2026-06-05 23:48:42
[2026-06-05 23:48:42,396.396 INFO    ] 2026-06-05 23:48:42
[2026-06-05 23:48:42,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:48:42,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:48:42,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:48:42,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:48:42,905.905 INFO    ] time= 05/06/2026 23:48:42
[2026-06-05 23:48:42,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:48:42,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:48:43,108.108 INFO    ] No existing commands found in stream
[2026-06-05 23:48:48,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:48:48,136.136 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-05 23:48:49,319.319 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:48:49,322.322 INFO    ] Checking for system updates...
[2026-06-05 23:48:49,357.357 INFO    ] 200
[2026-06-05 23:48:49,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:48:49,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:48:49,414.414 INFO    ] No update needed
[2026-06-05 23:48:49,417.417 INFO    ] Checking for camera pi updates...
[2026-06-05 23:48:49,451.451 INFO    ] 200
[2026-06-05 23:48:49,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:48:49,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:48:49,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:48:49,550.550 INFO    ] No camera update needed
[2026-06-05 23:48:49,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:48:49,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:48:49,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:48:49,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:48:51,607.607 INFO    ] ================================================
[2026-06-05 23:48:51,624.624 INFO    ] Launching Daemon at Fri Jun  5 23:48:51 IST 2026
[2026-06-05 23:48:51,635.635 INFO    ] ================================================
[2026-06-05 23:48:52,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:48:52
[2026-06-05 23:48:52,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:48:53,296.296 INFO    ] Initializing speech engine...
[2026-06-05 23:48:53,310.310 INFO    ] 2026-06-05 23:48:53
[2026-06-05 23:48:53,626.626 INFO    ] 2026-06-05 23:48:53
[2026-06-05 23:48:53,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:48:53,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:48:54,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:48:54,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:48:54,309.309 INFO    ] time= 05/06/2026 23:48:54
[2026-06-05 23:48:54,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:48:54,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:48:54,708.708 INFO    ] No existing commands found in stream
[2026-06-05 23:48:59,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:48:59,727.727 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-05 23:49:03,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:49:03,119.119 INFO    ] Checking for system updates...
[2026-06-05 23:49:03,160.160 INFO    ] 200
[2026-06-05 23:49:03,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:03,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:49:03,224.224 INFO    ] No update needed
[2026-06-05 23:49:03,226.226 INFO    ] Checking for camera pi updates...
[2026-06-05 23:49:03,264.264 INFO    ] 200
[2026-06-05 23:49:03,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:03,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:49:03,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:49:03,353.353 INFO    ] No camera update needed
[2026-06-05 23:49:03,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:49:03,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:49:03,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:49:03,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:49:05,409.409 INFO    ] ================================================
[2026-06-05 23:49:05,426.426 INFO    ] Launching Daemon at Fri Jun  5 23:49:05 IST 2026
[2026-06-05 23:49:05,437.437 INFO    ] ================================================
[2026-06-05 23:49:06,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:49:06
[2026-06-05 23:49:06,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:49:06,877.877 INFO    ] Initializing speech engine...
[2026-06-05 23:49:06,884.884 INFO    ] 2026-06-05 23:49:06
[2026-06-05 23:49:07,161.161 INFO    ] 2026-06-05 23:49:07
[2026-06-05 23:49:07,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:49:07,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:49:07,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:49:07,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:49:07,629.629 INFO    ] time= 05/06/2026 23:49:07
[2026-06-05 23:49:07,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:49:07,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:49:07,882.882 INFO    ] No existing commands found in stream
[2026-06-05 23:49:12,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:49:12,905.905 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-05 23:49:14,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:49:14,983.983 INFO    ] Checking for system updates...
[2026-06-05 23:49:15,023.023 INFO    ] 200
[2026-06-05 23:49:15,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:15,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:49:15,082.082 INFO    ] No update needed
[2026-06-05 23:49:15,085.085 INFO    ] Checking for camera pi updates...
[2026-06-05 23:49:15,123.123 INFO    ] 200
[2026-06-05 23:49:15,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:15,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:49:15,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:49:15,213.213 INFO    ] No camera update needed
[2026-06-05 23:49:15,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:49:15,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:49:15,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:49:15,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:49:17,270.270 INFO    ] ================================================
[2026-06-05 23:49:17,285.285 INFO    ] Launching Daemon at Fri Jun  5 23:49:17 IST 2026
[2026-06-05 23:49:17,296.296 INFO    ] ================================================
[2026-06-05 23:49:17,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:49:17
[2026-06-05 23:49:18,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:49:18,925.925 INFO    ] Initializing speech engine...
[2026-06-05 23:49:18,932.932 INFO    ] 2026-06-05 23:49:18
[2026-06-05 23:49:19,211.211 INFO    ] 2026-06-05 23:49:19
[2026-06-05 23:49:19,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:49:19,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:49:19,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:49:19,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:49:20,002.002 INFO    ] time= 05/06/2026 23:49:19
[2026-06-05 23:49:20,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:49:20,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:49:20,206.206 INFO    ] No existing commands found in stream
[2026-06-05 23:49:25,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:49:25,220.220 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-05 23:49:27,725.725 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:49:27,728.728 INFO    ] Checking for system updates...
[2026-06-05 23:49:27,770.770 INFO    ] 200
[2026-06-05 23:49:27,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:27,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:49:27,834.834 INFO    ] No update needed
[2026-06-05 23:49:27,837.837 INFO    ] Checking for camera pi updates...
[2026-06-05 23:49:27,876.876 INFO    ] 200
[2026-06-05 23:49:27,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:27,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:49:28,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:49:28,077.077 INFO    ] No camera update needed
[2026-06-05 23:49:28,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:49:28,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:49:28,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:49:28,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:49:30,136.136 INFO    ] ================================================
[2026-06-05 23:49:30,152.152 INFO    ] Launching Daemon at Fri Jun  5 23:49:30 IST 2026
[2026-06-05 23:49:30,163.163 INFO    ] ================================================
[2026-06-05 23:49:30,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:49:30
[2026-06-05 23:49:31,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:49:31,749.749 INFO    ] Initializing speech engine...
[2026-06-05 23:49:31,759.759 INFO    ] 2026-06-05 23:49:31
[2026-06-05 23:49:32,059.059 INFO    ] 2026-06-05 23:49:32
[2026-06-05 23:49:32,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:49:32,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:49:32,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:49:33,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:49:33,127.127 INFO    ] time= 05/06/2026 23:49:33
[2026-06-05 23:49:33,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:49:33,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:49:33,311.311 INFO    ] No existing commands found in stream
[2026-06-05 23:49:38,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:49:38,324.324 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-05 23:49:39,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:49:39,587.587 INFO    ] Checking for system updates...
[2026-06-05 23:49:39,627.627 INFO    ] 200
[2026-06-05 23:49:39,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:39,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:49:39,692.692 INFO    ] No update needed
[2026-06-05 23:49:39,695.695 INFO    ] Checking for camera pi updates...
[2026-06-05 23:49:39,729.729 INFO    ] 200
[2026-06-05 23:49:39,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:39,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:49:39,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:49:39,838.838 INFO    ] No camera update needed
[2026-06-05 23:49:39,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:49:39,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:49:39,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:49:39,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:49:41,894.894 INFO    ] ================================================
[2026-06-05 23:49:41,910.910 INFO    ] Launching Daemon at Fri Jun  5 23:49:41 IST 2026
[2026-06-05 23:49:41,920.920 INFO    ] ================================================
[2026-06-05 23:49:42,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:49:42
[2026-06-05 23:49:43,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:49:43,353.353 INFO    ] Initializing speech engine...
[2026-06-05 23:49:43,363.363 INFO    ] 2026-06-05 23:49:43
[2026-06-05 23:49:43,608.608 INFO    ] 2026-06-05 23:49:43
[2026-06-05 23:49:43,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:49:43,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:49:43,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:49:44,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:49:44,130.130 INFO    ] time= 05/06/2026 23:49:44
[2026-06-05 23:49:44,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:49:44,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:49:44,282.282 INFO    ] No existing commands found in stream
[2026-06-05 23:49:49,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:49:49,316.316 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-05 23:49:51,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:49:51,652.652 INFO    ] Checking for system updates...
[2026-06-05 23:49:51,688.688 INFO    ] 200
[2026-06-05 23:49:51,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:51,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:49:51,750.750 INFO    ] No update needed
[2026-06-05 23:49:51,752.752 INFO    ] Checking for camera pi updates...
[2026-06-05 23:49:51,789.789 INFO    ] 200
[2026-06-05 23:49:51,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:49:51,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:49:51,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:49:51,889.889 INFO    ] No camera update needed
[2026-06-05 23:49:51,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:49:51,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:49:51,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:49:51,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:49:53,945.945 INFO    ] ================================================
[2026-06-05 23:49:53,961.961 INFO    ] Launching Daemon at Fri Jun  5 23:49:53 IST 2026
[2026-06-05 23:49:53,971.971 INFO    ] ================================================
[2026-06-05 23:49:54,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:49:54
[2026-06-05 23:49:55,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:49:55,576.576 INFO    ] Initializing speech engine...
[2026-06-05 23:49:55,588.588 INFO    ] 2026-06-05 23:49:55
[2026-06-05 23:49:55,864.864 INFO    ] 2026-06-05 23:49:55
[2026-06-05 23:49:55,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:49:56,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:49:56,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:49:56,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:49:56,442.442 INFO    ] time= 05/06/2026 23:49:56
[2026-06-05 23:49:56,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:49:56,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:49:56,590.590 INFO    ] No existing commands found in stream
[2026-06-05 23:50:01,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:50:01,623.623 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-05 23:50:04,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:50:04,758.758 INFO    ] Checking for system updates...
[2026-06-05 23:50:04,799.799 INFO    ] 200
[2026-06-05 23:50:04,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:04,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:50:04,868.868 INFO    ] No update needed
[2026-06-05 23:50:04,871.871 INFO    ] Checking for camera pi updates...
[2026-06-05 23:50:04,906.906 INFO    ] 200
[2026-06-05 23:50:04,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:04,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:50:05,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:50:05,010.010 INFO    ] No camera update needed
[2026-06-05 23:50:05,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:50:05,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:50:05,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:50:05,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:50:07,064.064 INFO    ] ================================================
[2026-06-05 23:50:07,080.080 INFO    ] Launching Daemon at Fri Jun  5 23:50:07 IST 2026
[2026-06-05 23:50:07,091.091 INFO    ] ================================================
[2026-06-05 23:50:07,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:50:07
[2026-06-05 23:50:08,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:50:08,713.713 INFO    ] Initializing speech engine...
[2026-06-05 23:50:08,720.720 INFO    ] 2026-06-05 23:50:08
[2026-06-05 23:50:08,973.973 INFO    ] 2026-06-05 23:50:08
[2026-06-05 23:50:09,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:50:09,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:50:09,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:50:09,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:50:09,460.460 INFO    ] time= 05/06/2026 23:50:09
[2026-06-05 23:50:09,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:50:09,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:50:09,685.685 INFO    ] No existing commands found in stream
[2026-06-05 23:50:14,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:50:14,716.716 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 23:50:18,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:50:18,060.060 INFO    ] Checking for system updates...
[2026-06-05 23:50:18,103.103 INFO    ] 200
[2026-06-05 23:50:18,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:18,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:50:18,161.161 INFO    ] No update needed
[2026-06-05 23:50:18,163.163 INFO    ] Checking for camera pi updates...
[2026-06-05 23:50:18,202.202 INFO    ] 200
[2026-06-05 23:50:18,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:18,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:50:18,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:50:18,301.301 INFO    ] No camera update needed
[2026-06-05 23:50:18,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:50:18,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:50:18,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:50:18,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:50:20,358.358 INFO    ] ================================================
[2026-06-05 23:50:20,374.374 INFO    ] Launching Daemon at Fri Jun  5 23:50:20 IST 2026
[2026-06-05 23:50:20,386.386 INFO    ] ================================================
[2026-06-05 23:50:21,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:50:21
[2026-06-05 23:50:21,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:50:22,051.051 INFO    ] Initializing speech engine...
[2026-06-05 23:50:22,059.059 INFO    ] 2026-06-05 23:50:22
[2026-06-05 23:50:22,352.352 INFO    ] 2026-06-05 23:50:22
[2026-06-05 23:50:22,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:50:22,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:50:22,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:50:22,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:50:22,906.906 INFO    ] time= 05/06/2026 23:50:22
[2026-06-05 23:50:22,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:50:22,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:50:23,064.064 INFO    ] No existing commands found in stream
[2026-06-05 23:50:28,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:50:28,093.093 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-05 23:50:30,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:50:30,958.958 INFO    ] Checking for system updates...
[2026-06-05 23:50:30,999.999 INFO    ] 200
[2026-06-05 23:50:31,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:31,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:50:31,060.060 INFO    ] No update needed
[2026-06-05 23:50:31,062.062 INFO    ] Checking for camera pi updates...
[2026-06-05 23:50:31,101.101 INFO    ] 200
[2026-06-05 23:50:31,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:31,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:50:31,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:50:31,230.230 INFO    ] No camera update needed
[2026-06-05 23:50:31,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:50:31,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:50:31,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:50:31,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:50:33,289.289 INFO    ] ================================================
[2026-06-05 23:50:33,305.305 INFO    ] Launching Daemon at Fri Jun  5 23:50:33 IST 2026
[2026-06-05 23:50:33,320.320 INFO    ] ================================================
[2026-06-05 23:50:33,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:50:33
[2026-06-05 23:50:34,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:50:34,762.762 INFO    ] Initializing speech engine...
[2026-06-05 23:50:34,771.771 INFO    ] 2026-06-05 23:50:34
[2026-06-05 23:50:35,039.039 INFO    ] 2026-06-05 23:50:35
[2026-06-05 23:50:35,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:50:35,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:50:35,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:50:35,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:50:35,529.529 INFO    ] time= 05/06/2026 23:50:35
[2026-06-05 23:50:35,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:50:35,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:50:35,799.799 INFO    ] No existing commands found in stream
[2026-06-05 23:50:40,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:50:40,824.824 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-05 23:50:43,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:50:43,445.445 INFO    ] Checking for system updates...
[2026-06-05 23:50:43,482.482 INFO    ] 200
[2026-06-05 23:50:43,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:43,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:50:43,542.542 INFO    ] No update needed
[2026-06-05 23:50:43,544.544 INFO    ] Checking for camera pi updates...
[2026-06-05 23:50:43,580.580 INFO    ] 200
[2026-06-05 23:50:43,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:43,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:50:43,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:50:43,683.683 INFO    ] No camera update needed
[2026-06-05 23:50:43,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:50:43,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:50:43,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:50:43,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:50:45,740.740 INFO    ] ================================================
[2026-06-05 23:50:45,757.757 INFO    ] Launching Daemon at Fri Jun  5 23:50:45 IST 2026
[2026-06-05 23:50:45,767.767 INFO    ] ================================================
[2026-06-05 23:50:46,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:50:46
[2026-06-05 23:50:46,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:50:47,194.194 INFO    ] Initializing speech engine...
[2026-06-05 23:50:47,219.219 INFO    ] 2026-06-05 23:50:47
[2026-06-05 23:50:47,489.489 INFO    ] 2026-06-05 23:50:47
[2026-06-05 23:50:47,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:50:47,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:50:47,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:50:47,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:50:47,902.902 INFO    ] time= 05/06/2026 23:50:47
[2026-06-05 23:50:47,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:50:47,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:50:47,988.988 INFO    ] No existing commands found in stream
[2026-06-05 23:50:53,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:50:53,026.026 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-05 23:50:56,421.421 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:50:56,423.423 INFO    ] Checking for system updates...
[2026-06-05 23:50:56,463.463 INFO    ] 200
[2026-06-05 23:50:56,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:56,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:50:56,526.526 INFO    ] No update needed
[2026-06-05 23:50:56,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 23:50:56,562.562 INFO    ] 200
[2026-06-05 23:50:56,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:50:56,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:50:56,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:50:56,673.673 INFO    ] No camera update needed
[2026-06-05 23:50:56,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:50:56,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:50:56,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:50:56,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:50:58,729.729 INFO    ] ================================================
[2026-06-05 23:50:58,745.745 INFO    ] Launching Daemon at Fri Jun  5 23:50:58 IST 2026
[2026-06-05 23:50:58,757.757 INFO    ] ================================================
[2026-06-05 23:50:59,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:50:59
[2026-06-05 23:50:59,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:51:00,219.219 INFO    ] Initializing speech engine...
[2026-06-05 23:51:00,228.228 INFO    ] 2026-06-05 23:51:00
[2026-06-05 23:51:00,479.479 INFO    ] 2026-06-05 23:51:00
[2026-06-05 23:51:00,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:51:00,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:51:00,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:51:00,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:51:01,033.033 INFO    ] time= 05/06/2026 23:51:00
[2026-06-05 23:51:01,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:51:01,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:51:01,190.190 INFO    ] No existing commands found in stream
[2026-06-05 23:51:06,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:51:06,208.208 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-05 23:51:07,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:51:07,009.009 INFO    ] Checking for system updates...
[2026-06-05 23:51:07,070.070 INFO    ] 200
[2026-06-05 23:51:07,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-05 23:51:07,076.076 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-05 23:51:07,078.078 INFO    ] Checking for camera pi updates...
[2026-06-05 23:51:07,135.135 INFO    ] 200
[2026-06-05 23:51:07,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:51:07,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:51:07,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:51:07,236.236 INFO    ] No camera update needed
[2026-06-05 23:51:07,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:51:07,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:51:07,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:51:07,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:51:09,293.293 INFO    ] ================================================
[2026-06-05 23:51:09,309.309 INFO    ] Launching Daemon at Fri Jun  5 23:51:09 IST 2026
[2026-06-05 23:51:09,320.320 INFO    ] ================================================
[2026-06-05 23:51:09,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:51:09
[2026-06-05 23:51:10,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:51:10,978.978 INFO    ] Initializing speech engine...
[2026-06-05 23:51:10,987.987 INFO    ] 2026-06-05 23:51:10
[2026-06-05 23:51:11,267.267 INFO    ] 2026-06-05 23:51:11
[2026-06-05 23:51:11,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:51:11,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:51:11,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:51:11,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:51:11,772.772 INFO    ] time= 05/06/2026 23:51:11
[2026-06-05 23:51:11,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:51:11,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:51:12,009.009 INFO    ] No existing commands found in stream
[2026-06-05 23:51:17,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:51:17,050.050 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-05 23:51:19,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:51:19,598.598 INFO    ] Checking for system updates...
[2026-06-05 23:51:19,639.639 INFO    ] 200
[2026-06-05 23:51:19,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:51:19,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:51:19,699.699 INFO    ] No update needed
[2026-06-05 23:51:19,702.702 INFO    ] Checking for camera pi updates...
[2026-06-05 23:51:19,750.750 INFO    ] 200
[2026-06-05 23:51:19,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:51:19,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:51:19,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:51:19,830.830 INFO    ] No camera update needed
[2026-06-05 23:51:19,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:51:19,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:51:19,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:51:19,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:51:21,889.889 INFO    ] ================================================
[2026-06-05 23:51:21,904.904 INFO    ] Launching Daemon at Fri Jun  5 23:51:21 IST 2026
[2026-06-05 23:51:21,914.914 INFO    ] ================================================
[2026-06-05 23:51:22,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:51:22
[2026-06-05 23:51:23,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:51:23,365.365 INFO    ] Initializing speech engine...
[2026-06-05 23:51:23,380.380 INFO    ] 2026-06-05 23:51:23
[2026-06-05 23:51:23,666.666 INFO    ] 2026-06-05 23:51:23
[2026-06-05 23:51:23,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:51:23,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:51:23,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:51:24,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:51:24,090.090 INFO    ] time= 05/06/2026 23:51:24
[2026-06-05 23:51:24,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:51:24,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:51:24,179.179 INFO    ] No existing commands found in stream
[2026-06-05 23:51:29,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:51:29,212.212 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-05 23:51:30,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:51:30,526.526 INFO    ] Checking for system updates...
[2026-06-05 23:51:30,562.562 INFO    ] 200
[2026-06-05 23:51:30,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:51:30,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:51:30,627.627 INFO    ] No update needed
[2026-06-05 23:51:30,630.630 INFO    ] Checking for camera pi updates...
[2026-06-05 23:51:30,664.664 INFO    ] 200
[2026-06-05 23:51:30,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:51:30,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:51:30,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:51:30,858.858 INFO    ] No camera update needed
[2026-06-05 23:51:30,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:51:30,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:51:30,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:51:30,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:51:32,918.918 INFO    ] ================================================
[2026-06-05 23:51:32,935.935 INFO    ] Launching Daemon at Fri Jun  5 23:51:32 IST 2026
[2026-06-05 23:51:32,948.948 INFO    ] ================================================
[2026-06-05 23:51:33,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:51:33
[2026-06-05 23:51:34,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:51:34,362.362 INFO    ] Initializing speech engine...
[2026-06-05 23:51:34,382.382 INFO    ] 2026-06-05 23:51:34
[2026-06-05 23:51:34,643.643 INFO    ] 2026-06-05 23:51:34
[2026-06-05 23:51:34,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:51:35,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:51:35,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:51:35,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:51:35,436.436 INFO    ] time= 05/06/2026 23:51:35
[2026-06-05 23:51:35,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:51:35,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:51:35,629.629 INFO    ] No existing commands found in stream
[2026-06-05 23:51:40,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:51:40,664.664 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-05 23:51:45,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:51:45,458.458 INFO    ] Checking for system updates...
[2026-06-05 23:51:45,499.499 INFO    ] 200
[2026-06-05 23:51:45,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:51:45,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:51:45,557.557 INFO    ] No update needed
[2026-06-05 23:51:45,560.560 INFO    ] Checking for camera pi updates...
[2026-06-05 23:51:45,594.594 INFO    ] 200
[2026-06-05 23:51:45,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:51:45,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:51:45,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:51:45,692.692 INFO    ] No camera update needed
[2026-06-05 23:51:45,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:51:45,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:51:45,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:51:45,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:51:47,747.747 INFO    ] ================================================
[2026-06-05 23:51:47,763.763 INFO    ] Launching Daemon at Fri Jun  5 23:51:47 IST 2026
[2026-06-05 23:51:47,774.774 INFO    ] ================================================
[2026-06-05 23:51:48,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:51:48
[2026-06-05 23:51:48,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:51:49,225.225 INFO    ] Initializing speech engine...
[2026-06-05 23:51:49,233.233 INFO    ] 2026-06-05 23:51:49
[2026-06-05 23:51:49,536.536 INFO    ] 2026-06-05 23:51:49
[2026-06-05 23:51:49,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:51:49,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:51:49,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:51:49,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:51:49,927.927 INFO    ] time= 05/06/2026 23:51:49
[2026-06-05 23:51:49,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:51:49,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:51:50,114.114 INFO    ] No existing commands found in stream
[2026-06-05 23:51:55,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:51:55,142.142 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-05 23:51:55,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:51:55,743.743 INFO    ] Checking for system updates...
[2026-06-05 23:51:55,785.785 INFO    ] 200
[2026-06-05 23:51:55,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:51:55,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:51:55,846.846 INFO    ] No update needed
[2026-06-05 23:51:55,848.848 INFO    ] Checking for camera pi updates...
[2026-06-05 23:51:55,884.884 INFO    ] 200
[2026-06-05 23:51:55,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:51:55,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:51:55,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:51:55,982.982 INFO    ] No camera update needed
[2026-06-05 23:51:55,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:51:55,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:51:55,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:51:56,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:51:58,041.041 INFO    ] ================================================
[2026-06-05 23:51:58,056.056 INFO    ] Launching Daemon at Fri Jun  5 23:51:58 IST 2026
[2026-06-05 23:51:58,067.067 INFO    ] ================================================
[2026-06-05 23:51:58,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:51:58
[2026-06-05 23:51:59,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:51:59,539.539 INFO    ] Initializing speech engine...
[2026-06-05 23:51:59,558.558 INFO    ] 2026-06-05 23:51:59
[2026-06-05 23:51:59,837.837 INFO    ] 2026-06-05 23:51:59
[2026-06-05 23:51:59,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:52:00,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:52:00,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:52:00,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:52:00,266.266 INFO    ] time= 05/06/2026 23:52:00
[2026-06-05 23:52:00,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:52:00,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:52:00,431.431 INFO    ] No existing commands found in stream
[2026-06-05 23:52:05,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:52:05,459.459 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-05 23:52:08,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:52:08,670.670 INFO    ] Checking for system updates...
[2026-06-05 23:52:08,709.709 INFO    ] 200
[2026-06-05 23:52:08,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:08,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:52:08,768.768 INFO    ] No update needed
[2026-06-05 23:52:08,770.770 INFO    ] Checking for camera pi updates...
[2026-06-05 23:52:08,805.805 INFO    ] 200
[2026-06-05 23:52:08,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:08,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:52:08,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:52:08,898.898 INFO    ] No camera update needed
[2026-06-05 23:52:08,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:52:08,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:52:08,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:52:08,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:52:10,954.954 INFO    ] ================================================
[2026-06-05 23:52:10,969.969 INFO    ] Launching Daemon at Fri Jun  5 23:52:10 IST 2026
[2026-06-05 23:52:10,980.980 INFO    ] ================================================
[2026-06-05 23:52:11,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:52:11
[2026-06-05 23:52:12,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:52:12,440.440 INFO    ] Initializing speech engine...
[2026-06-05 23:52:12,449.449 INFO    ] 2026-06-05 23:52:12
[2026-06-05 23:52:12,707.707 INFO    ] 2026-06-05 23:52:12
[2026-06-05 23:52:12,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:52:13,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:52:13,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:52:13,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:52:13,267.267 INFO    ] time= 05/06/2026 23:52:13
[2026-06-05 23:52:13,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:52:13,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:52:13,502.502 INFO    ] No existing commands found in stream
[2026-06-05 23:52:18,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:52:18,520.520 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-05 23:52:22,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:52:22,047.047 INFO    ] Checking for system updates...
[2026-06-05 23:52:22,089.089 INFO    ] 200
[2026-06-05 23:52:22,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:22,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:52:22,157.157 INFO    ] No update needed
[2026-06-05 23:52:22,160.160 INFO    ] Checking for camera pi updates...
[2026-06-05 23:52:22,195.195 INFO    ] 200
[2026-06-05 23:52:22,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:22,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:52:22,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:52:22,286.286 INFO    ] No camera update needed
[2026-06-05 23:52:22,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:52:22,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:52:22,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:52:22,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:52:24,343.343 INFO    ] ================================================
[2026-06-05 23:52:24,358.358 INFO    ] Launching Daemon at Fri Jun  5 23:52:24 IST 2026
[2026-06-05 23:52:24,369.369 INFO    ] ================================================
[2026-06-05 23:52:24,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:52:24
[2026-06-05 23:52:25,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:52:25,813.813 INFO    ] Initializing speech engine...
[2026-06-05 23:52:25,837.837 INFO    ] 2026-06-05 23:52:25
[2026-06-05 23:52:26,105.105 INFO    ] 2026-06-05 23:52:26
[2026-06-05 23:52:26,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:52:26,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:52:26,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:52:26,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:52:26,511.511 INFO    ] time= 05/06/2026 23:52:26
[2026-06-05 23:52:26,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:52:26,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:52:26,710.710 INFO    ] No existing commands found in stream
[2026-06-05 23:52:31,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:52:31,736.736 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 23:52:33,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:52:33,507.507 INFO    ] Checking for system updates...
[2026-06-05 23:52:33,543.543 INFO    ] 200
[2026-06-05 23:52:33,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:33,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:52:33,616.616 INFO    ] No update needed
[2026-06-05 23:52:33,618.618 INFO    ] Checking for camera pi updates...
[2026-06-05 23:52:33,652.652 INFO    ] 200
[2026-06-05 23:52:33,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:33,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:52:33,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:52:33,747.747 INFO    ] No camera update needed
[2026-06-05 23:52:33,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:52:33,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:52:33,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:52:33,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:52:35,804.804 INFO    ] ================================================
[2026-06-05 23:52:35,820.820 INFO    ] Launching Daemon at Fri Jun  5 23:52:35 IST 2026
[2026-06-05 23:52:35,831.831 INFO    ] ================================================
[2026-06-05 23:52:36,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:52:36
[2026-06-05 23:52:36,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:52:37,255.255 INFO    ] Initializing speech engine...
[2026-06-05 23:52:37,269.269 INFO    ] 2026-06-05 23:52:37
[2026-06-05 23:52:37,553.553 INFO    ] 2026-06-05 23:52:37
[2026-06-05 23:52:37,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:52:37,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:52:37,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:52:37,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:52:37,979.979 INFO    ] time= 05/06/2026 23:52:37
[2026-06-05 23:52:37,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:52:37,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:52:38,083.083 INFO    ] No existing commands found in stream
[2026-06-05 23:52:43,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:52:43,111.111 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-05 23:52:45,836.836 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:52:45,838.838 INFO    ] Checking for system updates...
[2026-06-05 23:52:45,874.874 INFO    ] 200
[2026-06-05 23:52:45,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:45,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:52:45,934.934 INFO    ] No update needed
[2026-06-05 23:52:45,936.936 INFO    ] Checking for camera pi updates...
[2026-06-05 23:52:45,977.977 INFO    ] 200
[2026-06-05 23:52:45,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:46,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:52:46,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:52:46,073.073 INFO    ] No camera update needed
[2026-06-05 23:52:46,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:52:46,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:52:46,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:52:46,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:52:48,128.128 INFO    ] ================================================
[2026-06-05 23:52:48,144.144 INFO    ] Launching Daemon at Fri Jun  5 23:52:48 IST 2026
[2026-06-05 23:52:48,154.154 INFO    ] ================================================
[2026-06-05 23:52:48,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:52:48
[2026-06-05 23:52:49,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:52:49,679.679 INFO    ] Initializing speech engine...
[2026-06-05 23:52:49,692.692 INFO    ] 2026-06-05 23:52:49
[2026-06-05 23:52:49,972.972 INFO    ] 2026-06-05 23:52:49
[2026-06-05 23:52:50,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:52:50,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:52:50,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:52:50,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:52:50,375.375 INFO    ] time= 05/06/2026 23:52:50
[2026-06-05 23:52:50,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:52:50,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:52:50,551.551 INFO    ] No existing commands found in stream
[2026-06-05 23:52:55,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:52:55,579.579 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-05 23:52:56,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:52:56,750.750 INFO    ] Checking for system updates...
[2026-06-05 23:52:56,789.789 INFO    ] 200
[2026-06-05 23:52:56,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:56,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:52:56,847.847 INFO    ] No update needed
[2026-06-05 23:52:56,850.850 INFO    ] Checking for camera pi updates...
[2026-06-05 23:52:56,884.884 INFO    ] 200
[2026-06-05 23:52:56,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:52:56,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:52:56,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:52:56,973.973 INFO    ] No camera update needed
[2026-06-05 23:52:56,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:52:56,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:52:56,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:52:56,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:52:59,030.030 INFO    ] ================================================
[2026-06-05 23:52:59,046.046 INFO    ] Launching Daemon at Fri Jun  5 23:52:59 IST 2026
[2026-06-05 23:52:59,056.056 INFO    ] ================================================
[2026-06-05 23:52:59,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:52:59
[2026-06-05 23:53:00,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:53:00,643.643 INFO    ] Initializing speech engine...
[2026-06-05 23:53:00,658.658 INFO    ] 2026-06-05 23:53:00
[2026-06-05 23:53:00,933.933 INFO    ] 2026-06-05 23:53:00
[2026-06-05 23:53:00,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:53:02,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:53:02,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:53:03,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:53:03,023.023 INFO    ] time= 05/06/2026 23:53:03
[2026-06-05 23:53:03,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:53:03,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:53:03,112.112 INFO    ] No existing commands found in stream
[2026-06-05 23:53:08,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:53:08,128.128 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-05 23:53:11,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:53:11,587.587 INFO    ] Checking for system updates...
[2026-06-05 23:53:11,624.624 INFO    ] 200
[2026-06-05 23:53:11,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:11,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:53:11,688.688 INFO    ] No update needed
[2026-06-05 23:53:11,691.691 INFO    ] Checking for camera pi updates...
[2026-06-05 23:53:11,728.728 INFO    ] 200
[2026-06-05 23:53:11,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:11,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:53:11,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:53:11,832.832 INFO    ] No camera update needed
[2026-06-05 23:53:11,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:53:11,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:53:11,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:53:11,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:53:13,890.890 INFO    ] ================================================
[2026-06-05 23:53:13,906.906 INFO    ] Launching Daemon at Fri Jun  5 23:53:13 IST 2026
[2026-06-05 23:53:13,917.917 INFO    ] ================================================
[2026-06-05 23:53:14,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:53:14
[2026-06-05 23:53:15,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:53:15,370.370 INFO    ] Initializing speech engine...
[2026-06-05 23:53:15,378.378 INFO    ] 2026-06-05 23:53:15
[2026-06-05 23:53:15,637.637 INFO    ] 2026-06-05 23:53:15
[2026-06-05 23:53:15,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:53:15,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:53:15,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:53:16,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:53:16,122.122 INFO    ] time= 05/06/2026 23:53:16
[2026-06-05 23:53:16,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:53:16,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:53:16,330.330 INFO    ] No existing commands found in stream
[2026-06-05 23:53:21,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:53:21,351.351 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-05 23:53:22,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:53:22,213.213 INFO    ] Checking for system updates...
[2026-06-05 23:53:22,251.251 INFO    ] 200
[2026-06-05 23:53:22,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:22,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:53:22,314.314 INFO    ] No update needed
[2026-06-05 23:53:22,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 23:53:22,352.352 INFO    ] 200
[2026-06-05 23:53:22,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:22,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:53:22,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:53:22,452.452 INFO    ] No camera update needed
[2026-06-05 23:53:22,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:53:22,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:53:22,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:53:22,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:53:24,513.513 INFO    ] ================================================
[2026-06-05 23:53:24,531.531 INFO    ] Launching Daemon at Fri Jun  5 23:53:24 IST 2026
[2026-06-05 23:53:24,544.544 INFO    ] ================================================
[2026-06-05 23:53:25,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:53:25
[2026-06-05 23:53:25,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:53:26,213.213 INFO    ] Initializing speech engine...
[2026-06-05 23:53:26,222.222 INFO    ] 2026-06-05 23:53:26
[2026-06-05 23:53:26,506.506 INFO    ] 2026-06-05 23:53:26
[2026-06-05 23:53:26,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:53:26,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:53:26,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:53:27,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:53:27,093.093 INFO    ] time= 05/06/2026 23:53:27
[2026-06-05 23:53:27,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:53:27,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:53:27,260.260 INFO    ] No existing commands found in stream
[2026-06-05 23:53:32,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:53:32,288.288 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-05 23:53:33,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:53:33,469.469 INFO    ] Checking for system updates...
[2026-06-05 23:53:33,506.506 INFO    ] 200
[2026-06-05 23:53:33,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:33,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:53:33,566.566 INFO    ] No update needed
[2026-06-05 23:53:33,568.568 INFO    ] Checking for camera pi updates...
[2026-06-05 23:53:33,603.603 INFO    ] 200
[2026-06-05 23:53:33,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:33,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:53:33,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:53:33,808.808 INFO    ] No camera update needed
[2026-06-05 23:53:33,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:53:33,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:53:33,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:53:33,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:53:35,870.870 INFO    ] ================================================
[2026-06-05 23:53:35,886.886 INFO    ] Launching Daemon at Fri Jun  5 23:53:35 IST 2026
[2026-06-05 23:53:35,897.897 INFO    ] ================================================
[2026-06-05 23:53:36,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:53:36
[2026-06-05 23:53:37,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:53:37,484.484 INFO    ] Initializing speech engine...
[2026-06-05 23:53:37,498.498 INFO    ] 2026-06-05 23:53:37
[2026-06-05 23:53:37,774.774 INFO    ] 2026-06-05 23:53:37
[2026-06-05 23:53:37,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:53:38,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:53:38,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:53:38,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:53:38,310.310 INFO    ] time= 05/06/2026 23:53:38
[2026-06-05 23:53:38,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:53:38,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:53:38,463.463 INFO    ] No existing commands found in stream
[2026-06-05 23:53:43,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:53:43,482.482 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-05 23:53:47,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:53:47,737.737 INFO    ] Checking for system updates...
[2026-06-05 23:53:47,774.774 INFO    ] 200
[2026-06-05 23:53:47,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:47,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:53:47,833.833 INFO    ] No update needed
[2026-06-05 23:53:47,835.835 INFO    ] Checking for camera pi updates...
[2026-06-05 23:53:47,870.870 INFO    ] 200
[2026-06-05 23:53:47,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:47,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:53:47,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:53:47,979.979 INFO    ] No camera update needed
[2026-06-05 23:53:47,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:53:47,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:53:47,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:53:47,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:53:50,037.037 INFO    ] ================================================
[2026-06-05 23:53:50,053.053 INFO    ] Launching Daemon at Fri Jun  5 23:53:50 IST 2026
[2026-06-05 23:53:50,064.064 INFO    ] ================================================
[2026-06-05 23:53:50,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:53:50
[2026-06-05 23:53:51,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:53:51,519.519 INFO    ] Initializing speech engine...
[2026-06-05 23:53:51,528.528 INFO    ] 2026-06-05 23:53:51
[2026-06-05 23:53:51,779.779 INFO    ] 2026-06-05 23:53:51
[2026-06-05 23:53:51,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:53:52,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:53:52,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:53:52,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:53:52,335.335 INFO    ] time= 05/06/2026 23:53:52
[2026-06-05 23:53:52,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:53:52,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:53:52,475.475 INFO    ] No existing commands found in stream
[2026-06-05 23:53:57,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:53:57,502.502 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-05 23:53:59,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:53:59,290.290 INFO    ] Checking for system updates...
[2026-06-05 23:53:59,329.329 INFO    ] 200
[2026-06-05 23:53:59,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:59,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:53:59,392.392 INFO    ] No update needed
[2026-06-05 23:53:59,394.394 INFO    ] Checking for camera pi updates...
[2026-06-05 23:53:59,432.432 INFO    ] 200
[2026-06-05 23:53:59,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:53:59,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:53:59,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:53:59,525.525 INFO    ] No camera update needed
[2026-06-05 23:53:59,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:53:59,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:53:59,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:53:59,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:54:01,580.580 INFO    ] ================================================
[2026-06-05 23:54:01,596.596 INFO    ] Launching Daemon at Fri Jun  5 23:54:01 IST 2026
[2026-06-05 23:54:01,607.607 INFO    ] ================================================
[2026-06-05 23:54:02,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:54:02
[2026-06-05 23:54:02,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:54:03,261.261 INFO    ] Initializing speech engine...
[2026-06-05 23:54:03,265.265 INFO    ] 2026-06-05 23:54:03
[2026-06-05 23:54:03,585.585 INFO    ] 2026-06-05 23:54:03
[2026-06-05 23:54:03,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:54:03,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:54:03,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:54:04,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:54:04,087.087 INFO    ] time= 05/06/2026 23:54:04
[2026-06-05 23:54:04,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:54:04,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:54:04,307.307 INFO    ] No existing commands found in stream
[2026-06-05 23:54:09,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:54:09,338.338 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-05 23:54:13,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:54:13,064.064 INFO    ] Checking for system updates...
[2026-06-05 23:54:13,100.100 INFO    ] 200
[2026-06-05 23:54:13,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:54:13,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:54:13,158.158 INFO    ] No update needed
[2026-06-05 23:54:13,160.160 INFO    ] Checking for camera pi updates...
[2026-06-05 23:54:13,194.194 INFO    ] 200
[2026-06-05 23:54:13,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:54:13,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:54:13,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:54:13,285.285 INFO    ] No camera update needed
[2026-06-05 23:54:13,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:54:13,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:54:13,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:54:13,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:54:15,341.341 INFO    ] ================================================
[2026-06-05 23:54:15,357.357 INFO    ] Launching Daemon at Fri Jun  5 23:54:15 IST 2026
[2026-06-05 23:54:15,367.367 INFO    ] ================================================
[2026-06-05 23:54:15,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:54:15
[2026-06-05 23:54:16,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:54:16,937.937 INFO    ] Initializing speech engine...
[2026-06-05 23:54:16,950.950 INFO    ] 2026-06-05 23:54:16
[2026-06-05 23:54:17,227.227 INFO    ] 2026-06-05 23:54:17
[2026-06-05 23:54:17,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:54:17,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:54:17,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:54:17,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:54:17,774.774 INFO    ] time= 05/06/2026 23:54:17
[2026-06-05 23:54:17,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:54:17,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:54:17,928.928 INFO    ] No existing commands found in stream
[2026-06-05 23:54:22,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:54:22,947.947 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-05 23:54:24,892.892 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:54:24,895.895 INFO    ] Checking for system updates...
[2026-06-05 23:54:24,932.932 INFO    ] 200
[2026-06-05 23:54:24,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:54:24,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:54:24,991.991 INFO    ] No update needed
[2026-06-05 23:54:24,994.994 INFO    ] Checking for camera pi updates...
[2026-06-05 23:54:25,029.029 INFO    ] 200
[2026-06-05 23:54:25,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:54:25,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:54:25,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:54:25,129.129 INFO    ] No camera update needed
[2026-06-05 23:54:25,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:54:25,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:54:25,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:54:25,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:54:27,186.186 INFO    ] ================================================
[2026-06-05 23:54:27,201.201 INFO    ] Launching Daemon at Fri Jun  5 23:54:27 IST 2026
[2026-06-05 23:54:27,211.211 INFO    ] ================================================
[2026-06-05 23:54:27,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:54:27
[2026-06-05 23:54:28,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:54:28,667.667 INFO    ] Initializing speech engine...
[2026-06-05 23:54:28,686.686 INFO    ] 2026-06-05 23:54:28
[2026-06-05 23:54:28,937.937 INFO    ] 2026-06-05 23:54:28
[2026-06-05 23:54:28,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:54:29,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:54:29,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:54:29,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:54:29,446.446 INFO    ] time= 05/06/2026 23:54:29
[2026-06-05 23:54:29,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:54:29,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:54:29,645.645 INFO    ] No existing commands found in stream
[2026-06-05 23:54:34,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:54:34,673.673 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-05 23:54:39,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:54:39,005.005 INFO    ] Checking for system updates...
[2026-06-05 23:54:39,041.041 INFO    ] 200
[2026-06-05 23:54:39,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:54:39,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:54:39,101.101 INFO    ] No update needed
[2026-06-05 23:54:39,104.104 INFO    ] Checking for camera pi updates...
[2026-06-05 23:54:39,140.140 INFO    ] 200
[2026-06-05 23:54:39,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:54:39,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:54:39,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:54:39,241.241 INFO    ] No camera update needed
[2026-06-05 23:54:39,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:54:39,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:54:39,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:54:39,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:54:41,298.298 INFO    ] ================================================
[2026-06-05 23:54:41,313.313 INFO    ] Launching Daemon at Fri Jun  5 23:54:41 IST 2026
[2026-06-05 23:54:41,323.323 INFO    ] ================================================
[2026-06-05 23:54:41,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:54:41
[2026-06-05 23:54:42,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:54:42,735.735 INFO    ] Initializing speech engine...
[2026-06-05 23:54:42,744.744 INFO    ] 2026-06-05 23:54:42
[2026-06-05 23:54:43,038.038 INFO    ] 2026-06-05 23:54:43
[2026-06-05 23:54:43,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:54:43,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:54:43,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:54:43,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:54:43,536.536 INFO    ] time= 05/06/2026 23:54:43
[2026-06-05 23:54:43,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:54:43,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:54:43,739.739 INFO    ] No existing commands found in stream
[2026-06-05 23:54:48,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:54:48,754.754 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-05 23:54:51,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:54:51,352.352 INFO    ] Checking for system updates...
[2026-06-05 23:54:51,388.388 INFO    ] 200
[2026-06-05 23:54:51,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:54:51,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:54:51,447.447 INFO    ] No update needed
[2026-06-05 23:54:51,449.449 INFO    ] Checking for camera pi updates...
[2026-06-05 23:54:51,484.484 INFO    ] 200
[2026-06-05 23:54:51,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:54:51,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:54:51,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:54:51,578.578 INFO    ] No camera update needed
[2026-06-05 23:54:51,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:54:51,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:54:51,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:54:51,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:54:53,634.634 INFO    ] ================================================
[2026-06-05 23:54:53,649.649 INFO    ] Launching Daemon at Fri Jun  5 23:54:53 IST 2026
[2026-06-05 23:54:53,660.660 INFO    ] ================================================
[2026-06-05 23:54:54,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:54:54
[2026-06-05 23:54:54,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:54:55,068.068 INFO    ] Initializing speech engine...
[2026-06-05 23:54:55,076.076 INFO    ] 2026-06-05 23:54:55
[2026-06-05 23:54:55,371.371 INFO    ] 2026-06-05 23:54:55
[2026-06-05 23:54:55,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:54:55,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:54:55,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:54:55,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:54:55,790.790 INFO    ] time= 05/06/2026 23:54:55
[2026-06-05 23:54:55,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:54:55,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:54:55,933.933 INFO    ] No existing commands found in stream
[2026-06-05 23:55:00,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:55:00,956.956 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-05 23:55:03,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:55:03,458.458 INFO    ] Checking for system updates...
[2026-06-05 23:55:03,493.493 INFO    ] 200
[2026-06-05 23:55:03,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:03,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:55:03,551.551 INFO    ] No update needed
[2026-06-05 23:55:03,553.553 INFO    ] Checking for camera pi updates...
[2026-06-05 23:55:03,588.588 INFO    ] 200
[2026-06-05 23:55:03,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:03,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:55:03,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:55:03,667.667 INFO    ] No camera update needed
[2026-06-05 23:55:03,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:55:03,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:55:03,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:55:03,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:55:05,723.723 INFO    ] ================================================
[2026-06-05 23:55:05,739.739 INFO    ] Launching Daemon at Fri Jun  5 23:55:05 IST 2026
[2026-06-05 23:55:05,751.751 INFO    ] ================================================
[2026-06-05 23:55:06,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:55:06
[2026-06-05 23:55:07,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:55:07,271.271 INFO    ] Initializing speech engine...
[2026-06-05 23:55:07,294.294 INFO    ] 2026-06-05 23:55:07
[2026-06-05 23:55:07,549.549 INFO    ] 2026-06-05 23:55:07
[2026-06-05 23:55:07,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:55:07,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:55:07,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:55:07,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:55:08,019.019 INFO    ] time= 05/06/2026 23:55:07
[2026-06-05 23:55:08,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:55:08,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:55:08,249.249 INFO    ] No existing commands found in stream
[2026-06-05 23:55:13,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:55:13,273.273 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-05 23:55:16,719.719 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:55:16,721.721 INFO    ] Checking for system updates...
[2026-06-05 23:55:16,763.763 INFO    ] 200
[2026-06-05 23:55:16,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:16,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:55:16,820.820 INFO    ] No update needed
[2026-06-05 23:55:16,823.823 INFO    ] Checking for camera pi updates...
[2026-06-05 23:55:16,857.857 INFO    ] 200
[2026-06-05 23:55:16,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:16,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:55:16,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:55:16,953.953 INFO    ] No camera update needed
[2026-06-05 23:55:16,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:55:16,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:55:16,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:55:16,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:55:19,007.007 INFO    ] ================================================
[2026-06-05 23:55:19,022.022 INFO    ] Launching Daemon at Fri Jun  5 23:55:19 IST 2026
[2026-06-05 23:55:19,033.033 INFO    ] ================================================
[2026-06-05 23:55:19,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:55:19
[2026-06-05 23:55:20,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:55:20,676.676 INFO    ] Initializing speech engine...
[2026-06-05 23:55:20,688.688 INFO    ] 2026-06-05 23:55:20
[2026-06-05 23:55:20,976.976 INFO    ] 2026-06-05 23:55:20
[2026-06-05 23:55:21,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:55:21,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:55:21,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:55:21,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:55:21,697.697 INFO    ] time= 05/06/2026 23:55:21
[2026-06-05 23:55:21,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:55:21,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:55:21,938.938 INFO    ] No existing commands found in stream
[2026-06-05 23:55:26,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:55:26,962.962 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-05 23:55:31,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:55:31,386.386 INFO    ] Checking for system updates...
[2026-06-05 23:55:31,426.426 INFO    ] 200
[2026-06-05 23:55:31,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:31,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:55:31,488.488 INFO    ] No update needed
[2026-06-05 23:55:31,491.491 INFO    ] Checking for camera pi updates...
[2026-06-05 23:55:31,528.528 INFO    ] 200
[2026-06-05 23:55:31,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:31,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:55:31,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:55:31,634.634 INFO    ] No camera update needed
[2026-06-05 23:55:31,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:55:31,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:55:31,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:55:31,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:55:33,693.693 INFO    ] ================================================
[2026-06-05 23:55:33,708.708 INFO    ] Launching Daemon at Fri Jun  5 23:55:33 IST 2026
[2026-06-05 23:55:33,719.719 INFO    ] ================================================
[2026-06-05 23:55:34,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:55:34
[2026-06-05 23:55:34,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:55:35,179.179 INFO    ] Initializing speech engine...
[2026-06-05 23:55:35,188.188 INFO    ] 2026-06-05 23:55:35
[2026-06-05 23:55:35,449.449 INFO    ] 2026-06-05 23:55:35
[2026-06-05 23:55:35,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:55:35,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:55:35,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:55:35,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:55:35,926.926 INFO    ] time= 05/06/2026 23:55:35
[2026-06-05 23:55:35,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:55:36,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:55:36,107.107 INFO    ] No existing commands found in stream
[2026-06-05 23:55:41,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:55:41,120.120 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-05 23:55:45,519.519 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:55:45,522.522 INFO    ] Checking for system updates...
[2026-06-05 23:55:45,563.563 INFO    ] 200
[2026-06-05 23:55:45,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:45,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:55:45,626.626 INFO    ] No update needed
[2026-06-05 23:55:45,629.629 INFO    ] Checking for camera pi updates...
[2026-06-05 23:55:45,665.665 INFO    ] 200
[2026-06-05 23:55:45,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:45,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:55:45,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:55:45,862.862 INFO    ] No camera update needed
[2026-06-05 23:55:45,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:55:45,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:55:45,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:55:45,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:55:47,921.921 INFO    ] ================================================
[2026-06-05 23:55:47,937.937 INFO    ] Launching Daemon at Fri Jun  5 23:55:47 IST 2026
[2026-06-05 23:55:47,947.947 INFO    ] ================================================
[2026-06-05 23:55:48,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:55:48
[2026-06-05 23:55:49,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:55:49,430.430 INFO    ] Initializing speech engine...
[2026-06-05 23:55:49,439.439 INFO    ] 2026-06-05 23:55:49
[2026-06-05 23:55:49,701.701 INFO    ] 2026-06-05 23:55:49
[2026-06-05 23:55:49,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:55:49,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:55:49,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:55:50,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:55:50,252.252 INFO    ] time= 05/06/2026 23:55:50
[2026-06-05 23:55:50,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:55:50,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:55:50,446.446 INFO    ] No existing commands found in stream
[2026-06-05 23:55:55,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:55:55,479.479 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-05 23:55:59,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:55:59,685.685 INFO    ] Checking for system updates...
[2026-06-05 23:55:59,722.722 INFO    ] 200
[2026-06-05 23:55:59,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:59,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:55:59,789.789 INFO    ] No update needed
[2026-06-05 23:55:59,792.792 INFO    ] Checking for camera pi updates...
[2026-06-05 23:55:59,830.830 INFO    ] 200
[2026-06-05 23:55:59,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:55:59,874.874 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:55:59,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:55:59,941.941 INFO    ] No camera update needed
[2026-06-05 23:55:59,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:55:59,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:55:59,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:55:59,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:56:02,001.001 INFO    ] ================================================
[2026-06-05 23:56:02,022.022 INFO    ] Launching Daemon at Fri Jun  5 23:56:02 IST 2026
[2026-06-05 23:56:02,039.039 INFO    ] ================================================
[2026-06-05 23:56:02,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:56:02
[2026-06-05 23:56:03,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:56:03,626.626 INFO    ] Initializing speech engine...
[2026-06-05 23:56:03,635.635 INFO    ] 2026-06-05 23:56:03
[2026-06-05 23:56:03,880.880 INFO    ] 2026-06-05 23:56:03
[2026-06-05 23:56:03,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:56:04,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:56:04,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:56:04,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:56:04,366.366 INFO    ] time= 05/06/2026 23:56:04
[2026-06-05 23:56:04,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:56:04,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:56:04,548.548 INFO    ] No existing commands found in stream
[2026-06-05 23:56:09,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:56:09,582.582 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-05 23:56:10,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:56:10,231.231 INFO    ] Checking for system updates...
[2026-06-05 23:56:10,267.267 INFO    ] 200
[2026-06-05 23:56:10,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:10,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:56:10,326.326 INFO    ] No update needed
[2026-06-05 23:56:10,328.328 INFO    ] Checking for camera pi updates...
[2026-06-05 23:56:10,366.366 INFO    ] 200
[2026-06-05 23:56:10,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:10,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:56:10,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:56:10,460.460 INFO    ] No camera update needed
[2026-06-05 23:56:10,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:56:10,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:56:10,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:56:10,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:56:12,517.517 INFO    ] ================================================
[2026-06-05 23:56:12,532.532 INFO    ] Launching Daemon at Fri Jun  5 23:56:12 IST 2026
[2026-06-05 23:56:12,547.547 INFO    ] ================================================
[2026-06-05 23:56:13,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:56:13
[2026-06-05 23:56:13,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:56:13,945.945 INFO    ] Initializing speech engine...
[2026-06-05 23:56:13,967.967 INFO    ] 2026-06-05 23:56:13
[2026-06-05 23:56:14,219.219 INFO    ] 2026-06-05 23:56:14
[2026-06-05 23:56:14,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:56:14,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:56:14,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:56:14,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:56:14,703.703 INFO    ] time= 05/06/2026 23:56:14
[2026-06-05 23:56:14,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:56:14,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:56:14,906.906 INFO    ] No existing commands found in stream
[2026-06-05 23:56:19,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:56:19,934.934 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-05 23:56:21,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:56:21,677.677 INFO    ] Checking for system updates...
[2026-06-05 23:56:21,715.715 INFO    ] 200
[2026-06-05 23:56:21,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:21,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:56:21,781.781 INFO    ] No update needed
[2026-06-05 23:56:21,783.783 INFO    ] Checking for camera pi updates...
[2026-06-05 23:56:21,822.822 INFO    ] 200
[2026-06-05 23:56:21,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:21,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:56:21,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:56:21,918.918 INFO    ] No camera update needed
[2026-06-05 23:56:21,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:56:21,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:56:21,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:56:21,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:56:23,974.974 INFO    ] ================================================
[2026-06-05 23:56:23,989.989 INFO    ] Launching Daemon at Fri Jun  5 23:56:23 IST 2026
[2026-06-05 23:56:24,000.000 INFO    ] ================================================
[2026-06-05 23:56:24,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:56:24
[2026-06-05 23:56:25,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:56:25,622.622 INFO    ] Initializing speech engine...
[2026-06-05 23:56:25,636.636 INFO    ] 2026-06-05 23:56:25
[2026-06-05 23:56:25,905.905 INFO    ] 2026-06-05 23:56:25
[2026-06-05 23:56:25,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:56:26,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:56:26,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:56:26,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:56:26,383.383 INFO    ] time= 05/06/2026 23:56:26
[2026-06-05 23:56:26,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:56:26,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:56:26,637.637 INFO    ] No existing commands found in stream
[2026-06-05 23:56:31,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:56:31,673.673 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-05 23:56:33,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:56:33,714.714 INFO    ] Checking for system updates...
[2026-06-05 23:56:33,757.757 INFO    ] 200
[2026-06-05 23:56:33,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:33,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:56:33,822.822 INFO    ] No update needed
[2026-06-05 23:56:33,825.825 INFO    ] Checking for camera pi updates...
[2026-06-05 23:56:33,859.859 INFO    ] 200
[2026-06-05 23:56:33,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:33,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:56:33,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:56:33,955.955 INFO    ] No camera update needed
[2026-06-05 23:56:33,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:56:33,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:56:33,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:56:33,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:56:36,010.010 INFO    ] ================================================
[2026-06-05 23:56:36,025.025 INFO    ] Launching Daemon at Fri Jun  5 23:56:36 IST 2026
[2026-06-05 23:56:36,035.035 INFO    ] ================================================
[2026-06-05 23:56:36,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:56:36
[2026-06-05 23:56:37,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:56:37,641.641 INFO    ] Initializing speech engine...
[2026-06-05 23:56:37,651.651 INFO    ] 2026-06-05 23:56:37
[2026-06-05 23:56:37,937.937 INFO    ] 2026-06-05 23:56:37
[2026-06-05 23:56:37,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:56:38,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:56:38,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:56:38,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:56:38,474.474 INFO    ] time= 05/06/2026 23:56:38
[2026-06-05 23:56:38,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:56:38,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:56:38,639.639 INFO    ] No existing commands found in stream
[2026-06-05 23:56:43,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:56:43,673.673 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-05 23:56:45,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:56:45,062.062 INFO    ] Checking for system updates...
[2026-06-05 23:56:45,104.104 INFO    ] 200
[2026-06-05 23:56:45,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:45,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:56:45,166.166 INFO    ] No update needed
[2026-06-05 23:56:45,169.169 INFO    ] Checking for camera pi updates...
[2026-06-05 23:56:45,204.204 INFO    ] 200
[2026-06-05 23:56:45,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:45,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:56:45,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:56:45,306.306 INFO    ] No camera update needed
[2026-06-05 23:56:45,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:56:45,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:56:45,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:56:45,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:56:47,364.364 INFO    ] ================================================
[2026-06-05 23:56:47,380.380 INFO    ] Launching Daemon at Fri Jun  5 23:56:47 IST 2026
[2026-06-05 23:56:47,391.391 INFO    ] ================================================
[2026-06-05 23:56:47,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:56:47
[2026-06-05 23:56:48,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:56:48,813.813 INFO    ] Initializing speech engine...
[2026-06-05 23:56:48,823.823 INFO    ] 2026-06-05 23:56:48
[2026-06-05 23:56:49,080.080 INFO    ] 2026-06-05 23:56:49
[2026-06-05 23:56:49,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:56:49,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:56:49,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:56:49,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:56:49,623.623 INFO    ] time= 05/06/2026 23:56:49
[2026-06-05 23:56:49,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:56:49,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:56:49,768.768 INFO    ] No existing commands found in stream
[2026-06-05 23:56:54,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:56:54,787.787 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 23:56:58,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:56:58,956.956 INFO    ] Checking for system updates...
[2026-06-05 23:56:58,993.993 INFO    ] 200
[2026-06-05 23:56:58,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:59,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:56:59,050.050 INFO    ] No update needed
[2026-06-05 23:56:59,053.053 INFO    ] Checking for camera pi updates...
[2026-06-05 23:56:59,090.090 INFO    ] 200
[2026-06-05 23:56:59,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:56:59,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:56:59,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:56:59,193.193 INFO    ] No camera update needed
[2026-06-05 23:56:59,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:56:59,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:56:59,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:56:59,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:57:01,251.251 INFO    ] ================================================
[2026-06-05 23:57:01,267.267 INFO    ] Launching Daemon at Fri Jun  5 23:57:01 IST 2026
[2026-06-05 23:57:01,278.278 INFO    ] ================================================
[2026-06-05 23:57:01,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:57:01
[2026-06-05 23:57:02,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:57:02,960.960 INFO    ] Initializing speech engine...
[2026-06-05 23:57:02,969.969 INFO    ] 2026-06-05 23:57:02
[2026-06-05 23:57:03,298.298 INFO    ] 2026-06-05 23:57:03
[2026-06-05 23:57:03,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:57:03,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:57:03,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:57:03,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:57:03,799.799 INFO    ] time= 05/06/2026 23:57:03
[2026-06-05 23:57:03,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:57:03,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:57:04,026.026 INFO    ] No existing commands found in stream
[2026-06-05 23:57:09,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:57:09,054.054 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-05 23:57:13,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:57:13,805.805 INFO    ] Checking for system updates...
[2026-06-05 23:57:13,841.841 INFO    ] 200
[2026-06-05 23:57:13,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:57:13,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:57:13,900.900 INFO    ] No update needed
[2026-06-05 23:57:13,903.903 INFO    ] Checking for camera pi updates...
[2026-06-05 23:57:13,940.940 INFO    ] 200
[2026-06-05 23:57:13,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:57:13,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:57:14,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:57:14,044.044 INFO    ] No camera update needed
[2026-06-05 23:57:14,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:57:14,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:57:14,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:57:14,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:57:16,099.099 INFO    ] ================================================
[2026-06-05 23:57:16,114.114 INFO    ] Launching Daemon at Fri Jun  5 23:57:16 IST 2026
[2026-06-05 23:57:16,125.125 INFO    ] ================================================
[2026-06-05 23:57:16,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:57:16
[2026-06-05 23:57:17,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:57:17,725.725 INFO    ] Initializing speech engine...
[2026-06-05 23:57:17,731.731 INFO    ] 2026-06-05 23:57:17
[2026-06-05 23:57:18,004.004 INFO    ] 2026-06-05 23:57:17
[2026-06-05 23:57:18,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:57:18,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:57:18,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:57:18,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:57:18,495.495 INFO    ] time= 05/06/2026 23:57:18
[2026-06-05 23:57:18,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:57:18,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:57:18,711.711 INFO    ] No existing commands found in stream
[2026-06-05 23:57:23,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:57:23,730.730 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-05 23:57:25,423.423 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:57:25,426.426 INFO    ] Checking for system updates...
[2026-06-05 23:57:25,464.464 INFO    ] 200
[2026-06-05 23:57:25,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:57:25,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:57:25,525.525 INFO    ] No update needed
[2026-06-05 23:57:25,528.528 INFO    ] Checking for camera pi updates...
[2026-06-05 23:57:25,563.563 INFO    ] 200
[2026-06-05 23:57:25,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:57:25,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:57:25,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:57:25,662.662 INFO    ] No camera update needed
[2026-06-05 23:57:25,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:57:25,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:57:25,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:57:25,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:57:27,719.719 INFO    ] ================================================
[2026-06-05 23:57:27,736.736 INFO    ] Launching Daemon at Fri Jun  5 23:57:27 IST 2026
[2026-06-05 23:57:27,747.747 INFO    ] ================================================
[2026-06-05 23:57:28,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:57:28
[2026-06-05 23:57:28,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:57:29,172.172 INFO    ] Initializing speech engine...
[2026-06-05 23:57:29,181.181 INFO    ] 2026-06-05 23:57:29
[2026-06-05 23:57:29,427.427 INFO    ] 2026-06-05 23:57:29
[2026-06-05 23:57:29,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:57:29,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:57:29,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:57:29,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:57:29,885.885 INFO    ] time= 05/06/2026 23:57:29
[2026-06-05 23:57:29,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:57:29,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:57:30,127.127 INFO    ] No existing commands found in stream
[2026-06-05 23:57:35,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:57:35,149.149 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-05 23:57:37,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:57:37,060.060 INFO    ] Checking for system updates...
[2026-06-05 23:57:37,096.096 INFO    ] 200
[2026-06-05 23:57:37,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:57:37,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:57:37,165.165 INFO    ] No update needed
[2026-06-05 23:57:37,167.167 INFO    ] Checking for camera pi updates...
[2026-06-05 23:57:37,204.204 INFO    ] 200
[2026-06-05 23:57:37,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:57:37,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:57:37,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:57:37,307.307 INFO    ] No camera update needed
[2026-06-05 23:57:37,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:57:37,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:57:37,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:57:37,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:57:39,364.364 INFO    ] ================================================
[2026-06-05 23:57:39,380.380 INFO    ] Launching Daemon at Fri Jun  5 23:57:39 IST 2026
[2026-06-05 23:57:39,391.391 INFO    ] ================================================
[2026-06-05 23:57:39,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:57:39
[2026-06-05 23:57:40,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:57:40,799.799 INFO    ] Initializing speech engine...
[2026-06-05 23:57:40,821.821 INFO    ] 2026-06-05 23:57:40
[2026-06-05 23:57:41,073.073 INFO    ] 2026-06-05 23:57:41
[2026-06-05 23:57:41,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:57:41,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:57:41,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:57:41,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:57:41,441.441 INFO    ] time= 05/06/2026 23:57:41
[2026-06-05 23:57:41,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:57:41,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:57:41,627.627 INFO    ] No existing commands found in stream
[2026-06-05 23:57:46,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:57:46,653.653 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-05 23:57:48,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:57:48,609.609 INFO    ] Checking for system updates...
[2026-06-05 23:57:48,646.646 INFO    ] 200
[2026-06-05 23:57:48,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:57:48,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:57:48,704.704 INFO    ] No update needed
[2026-06-05 23:57:48,707.707 INFO    ] Checking for camera pi updates...
[2026-06-05 23:57:48,742.742 INFO    ] 200
[2026-06-05 23:57:48,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:57:48,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:57:48,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:57:48,936.936 INFO    ] No camera update needed
[2026-06-05 23:57:48,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:57:48,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:57:48,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:57:48,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:57:51,998.998 INFO    ] ================================================
[2026-06-05 23:57:51,013.013 INFO    ] Launching Daemon at Fri Jun  5 23:57:51 IST 2026
[2026-06-05 23:57:51,023.023 INFO    ] ================================================
[2026-06-05 23:57:51,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:57:51
[2026-06-05 23:57:52,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:57:52,472.472 INFO    ] Initializing speech engine...
[2026-06-05 23:57:52,494.494 INFO    ] 2026-06-05 23:57:52
[2026-06-05 23:57:52,750.750 INFO    ] 2026-06-05 23:57:52
[2026-06-05 23:57:52,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:57:53,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:57:53,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:57:53,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:57:53,249.249 INFO    ] time= 05/06/2026 23:57:53
[2026-06-05 23:57:53,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:57:53,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:57:53,420.420 INFO    ] No existing commands found in stream
[2026-06-05 23:57:58,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:57:58,449.449 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-05 23:58:00,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-05 23:58:00,886.886 INFO    ] Checking for system updates...
[2026-06-05 23:58:00,923.923 INFO    ] 200
[2026-06-05 23:58:00,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:00,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:58:00,982.982 INFO    ] No update needed
[2026-06-05 23:58:00,984.984 INFO    ] Checking for camera pi updates...
[2026-06-05 23:58:01,020.020 INFO    ] 200
[2026-06-05 23:58:01,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:01,064.064 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:58:01,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:58:01,117.117 INFO    ] No camera update needed
[2026-06-05 23:58:01,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:58:01,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:58:01,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:58:01,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:58:03,176.176 INFO    ] ================================================
[2026-06-05 23:58:03,192.192 INFO    ] Launching Daemon at Fri Jun  5 23:58:03 IST 2026
[2026-06-05 23:58:03,204.204 INFO    ] ================================================
[2026-06-05 23:58:03,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:58:03
[2026-06-05 23:58:04,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:58:04,699.699 INFO    ] Initializing speech engine...
[2026-06-05 23:58:04,707.707 INFO    ] 2026-06-05 23:58:04
[2026-06-05 23:58:04,988.988 INFO    ] 2026-06-05 23:58:04
[2026-06-05 23:58:05,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:58:05,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:58:05,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:58:05,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:58:05,511.511 INFO    ] time= 05/06/2026 23:58:05
[2026-06-05 23:58:05,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:58:05,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:58:05,651.651 INFO    ] No existing commands found in stream
[2026-06-05 23:58:10,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:58:10,679.679 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-05 23:58:11,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:58:11,365.365 INFO    ] Checking for system updates...
[2026-06-05 23:58:11,405.405 INFO    ] 200
[2026-06-05 23:58:11,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:11,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:58:11,469.469 INFO    ] No update needed
[2026-06-05 23:58:11,471.471 INFO    ] Checking for camera pi updates...
[2026-06-05 23:58:11,508.508 INFO    ] 200
[2026-06-05 23:58:11,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:11,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:58:11,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:58:11,614.614 INFO    ] No camera update needed
[2026-06-05 23:58:11,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:58:11,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:58:11,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:58:11,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:58:13,672.672 INFO    ] ================================================
[2026-06-05 23:58:13,687.687 INFO    ] Launching Daemon at Fri Jun  5 23:58:13 IST 2026
[2026-06-05 23:58:13,698.698 INFO    ] ================================================
[2026-06-05 23:58:14,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:58:14
[2026-06-05 23:58:14,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:58:15,123.123 INFO    ] Initializing speech engine...
[2026-06-05 23:58:15,136.136 INFO    ] 2026-06-05 23:58:15
[2026-06-05 23:58:15,402.402 INFO    ] 2026-06-05 23:58:15
[2026-06-05 23:58:15,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:58:15,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:58:15,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:58:15,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:58:15,874.874 INFO    ] time= 05/06/2026 23:58:15
[2026-06-05 23:58:15,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:58:15,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:58:16,156.156 INFO    ] No existing commands found in stream
[2026-06-05 23:58:21,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:58:21,184.184 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-05 23:58:24,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:58:24,501.501 INFO    ] Checking for system updates...
[2026-06-05 23:58:24,536.536 INFO    ] 200
[2026-06-05 23:58:24,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:24,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:58:24,594.594 INFO    ] No update needed
[2026-06-05 23:58:24,596.596 INFO    ] Checking for camera pi updates...
[2026-06-05 23:58:24,633.633 INFO    ] 200
[2026-06-05 23:58:24,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:24,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:58:24,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:58:24,736.736 INFO    ] No camera update needed
[2026-06-05 23:58:24,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:58:24,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:58:24,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:58:24,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:58:26,792.792 INFO    ] ================================================
[2026-06-05 23:58:26,807.807 INFO    ] Launching Daemon at Fri Jun  5 23:58:26 IST 2026
[2026-06-05 23:58:26,818.818 INFO    ] ================================================
[2026-06-05 23:58:27,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:58:27
[2026-06-05 23:58:28,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:58:28,424.424 INFO    ] Initializing speech engine...
[2026-06-05 23:58:28,442.442 INFO    ] 2026-06-05 23:58:28
[2026-06-05 23:58:28,710.710 INFO    ] 2026-06-05 23:58:28
[2026-06-05 23:58:28,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:58:29,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:58:29,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:58:29,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:58:29,288.288 INFO    ] time= 05/06/2026 23:58:29
[2026-06-05 23:58:29,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:58:29,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:58:29,482.482 INFO    ] No existing commands found in stream
[2026-06-05 23:58:34,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:58:34,521.521 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-05 23:58:36,939.939 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:58:36,942.942 INFO    ] Checking for system updates...
[2026-06-05 23:58:36,983.983 INFO    ] 200
[2026-06-05 23:58:36,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:38,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:58:39,002.002 INFO    ] No update needed
[2026-06-05 23:58:39,005.005 INFO    ] Checking for camera pi updates...
[2026-06-05 23:58:39,043.043 INFO    ] 200
[2026-06-05 23:58:39,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:39,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:58:39,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:58:39,179.179 INFO    ] No camera update needed
[2026-06-05 23:58:39,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:58:39,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:58:39,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:58:39,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:58:41,237.237 INFO    ] ================================================
[2026-06-05 23:58:41,252.252 INFO    ] Launching Daemon at Fri Jun  5 23:58:41 IST 2026
[2026-06-05 23:58:41,262.262 INFO    ] ================================================
[2026-06-05 23:58:41,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:58:41
[2026-06-05 23:58:42,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:58:42,730.730 INFO    ] Initializing speech engine...
[2026-06-05 23:58:42,755.755 INFO    ] 2026-06-05 23:58:42
[2026-06-05 23:58:43,026.026 INFO    ] 2026-06-05 23:58:43
[2026-06-05 23:58:43,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:58:43,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:58:43,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:58:43,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:58:43,869.869 INFO    ] time= 05/06/2026 23:58:43
[2026-06-05 23:58:43,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:58:43,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:58:44,067.067 INFO    ] No existing commands found in stream
[2026-06-05 23:58:49,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:58:49,100.100 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-05 23:58:51,739.739 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:58:51,742.742 INFO    ] Checking for system updates...
[2026-06-05 23:58:51,780.780 INFO    ] 200
[2026-06-05 23:58:51,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:51,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:58:51,844.844 INFO    ] No update needed
[2026-06-05 23:58:51,847.847 INFO    ] Checking for camera pi updates...
[2026-06-05 23:58:51,884.884 INFO    ] 200
[2026-06-05 23:58:51,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:58:51,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:58:51,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-05 23:58:51,976.976 INFO    ] No camera update needed
[2026-06-05 23:58:51,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:58:51,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:58:51,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:58:51,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:58:54,032.032 INFO    ] ================================================
[2026-06-05 23:58:54,047.047 INFO    ] Launching Daemon at Fri Jun  5 23:58:54 IST 2026
[2026-06-05 23:58:54,059.059 INFO    ] ================================================
[2026-06-05 23:58:54,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:58:54
[2026-06-05 23:58:55,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:58:55,660.660 INFO    ] Initializing speech engine...
[2026-06-05 23:58:55,667.667 INFO    ] 2026-06-05 23:58:55
[2026-06-05 23:58:55,938.938 INFO    ] 2026-06-05 23:58:55
[2026-06-05 23:58:55,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:58:56,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:58:56,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:58:56,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:58:56,313.313 INFO    ] time= 05/06/2026 23:58:56
[2026-06-05 23:58:56,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:58:56,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:58:56,498.498 INFO    ] No existing commands found in stream
[2026-06-05 23:59:01,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:59:01,531.531 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-05 23:59:05,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-05 23:59:05,877.877 INFO    ] Checking for system updates...
[2026-06-05 23:59:05,914.914 INFO    ] 200
[2026-06-05 23:59:05,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:05,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:05,981.981 INFO    ] No update needed
[2026-06-05 23:59:05,983.983 INFO    ] Checking for camera pi updates...
[2026-06-05 23:59:06,021.021 INFO    ] 200
[2026-06-05 23:59:06,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:06,063.063 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:59:06,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:06,199.199 INFO    ] No camera update needed
[2026-06-05 23:59:06,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:59:06,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:59:06,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:59:06,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:59:08,254.254 INFO    ] ================================================
[2026-06-05 23:59:08,269.269 INFO    ] Launching Daemon at Fri Jun  5 23:59:08 IST 2026
[2026-06-05 23:59:08,279.279 INFO    ] ================================================
[2026-06-05 23:59:08,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:59:08
[2026-06-05 23:59:09,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:59:09,809.809 INFO    ] Initializing speech engine...
[2026-06-05 23:59:09,818.818 INFO    ] 2026-06-05 23:59:09
[2026-06-05 23:59:10,067.067 INFO    ] 2026-06-05 23:59:10
[2026-06-05 23:59:10,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:59:10,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:59:10,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:59:10,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:59:10,443.443 INFO    ] time= 05/06/2026 23:59:10
[2026-06-05 23:59:10,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:59:10,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:59:10,617.617 INFO    ] No existing commands found in stream
[2026-06-05 23:59:15,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:59:15,645.645 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-05 23:59:20,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-05 23:59:20,236.236 INFO    ] Checking for system updates...
[2026-06-05 23:59:20,272.272 INFO    ] 200
[2026-06-05 23:59:20,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:20,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:20,337.337 INFO    ] No update needed
[2026-06-05 23:59:20,339.339 INFO    ] Checking for camera pi updates...
[2026-06-05 23:59:20,374.374 INFO    ] 200
[2026-06-05 23:59:20,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:20,418.418 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:59:20,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:20,464.464 INFO    ] No camera update needed
[2026-06-05 23:59:20,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:59:20,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:59:20,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:59:20,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:59:22,521.521 INFO    ] ================================================
[2026-06-05 23:59:22,536.536 INFO    ] Launching Daemon at Fri Jun  5 23:59:22 IST 2026
[2026-06-05 23:59:22,547.547 INFO    ] ================================================
[2026-06-05 23:59:23,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:59:23
[2026-06-05 23:59:23,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:59:24,010.010 INFO    ] Initializing speech engine...
[2026-06-05 23:59:24,019.019 INFO    ] 2026-06-05 23:59:24
[2026-06-05 23:59:24,272.272 INFO    ] 2026-06-05 23:59:24
[2026-06-05 23:59:24,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:59:24,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:59:24,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:59:24,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:59:24,756.756 INFO    ] time= 05/06/2026 23:59:24
[2026-06-05 23:59:24,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:59:24,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:59:24,905.905 INFO    ] No existing commands found in stream
[2026-06-05 23:59:29,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:59:29,920.920 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-05 23:59:33,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-05 23:59:33,540.540 INFO    ] Checking for system updates...
[2026-06-05 23:59:33,577.577 INFO    ] 200
[2026-06-05 23:59:33,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:33,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:33,635.635 INFO    ] No update needed
[2026-06-05 23:59:33,638.638 INFO    ] Checking for camera pi updates...
[2026-06-05 23:59:33,672.672 INFO    ] 200
[2026-06-05 23:59:33,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:33,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:59:33,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:33,770.770 INFO    ] No camera update needed
[2026-06-05 23:59:33,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:59:33,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:59:33,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:59:33,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:59:35,829.829 INFO    ] ================================================
[2026-06-05 23:59:35,844.844 INFO    ] Launching Daemon at Fri Jun  5 23:59:35 IST 2026
[2026-06-05 23:59:35,854.854 INFO    ] ================================================
[2026-06-05 23:59:36,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:59:36
[2026-06-05 23:59:37,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:59:37,449.449 INFO    ] Initializing speech engine...
[2026-06-05 23:59:37,456.456 INFO    ] 2026-06-05 23:59:37
[2026-06-05 23:59:37,742.742 INFO    ] 2026-06-05 23:59:37
[2026-06-05 23:59:37,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:59:38,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:59:38,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:59:38,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:59:38,275.275 INFO    ] time= 05/06/2026 23:59:38
[2026-06-05 23:59:38,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:59:38,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:59:38,421.421 INFO    ] No existing commands found in stream
[2026-06-05 23:59:43,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:59:43,447.447 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-05 23:59:46,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-05 23:59:46,208.208 INFO    ] Checking for system updates...
[2026-06-05 23:59:46,249.249 INFO    ] 200
[2026-06-05 23:59:46,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:46,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:46,314.314 INFO    ] No update needed
[2026-06-05 23:59:46,317.317 INFO    ] Checking for camera pi updates...
[2026-06-05 23:59:46,353.353 INFO    ] 200
[2026-06-05 23:59:46,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:46,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:59:46,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:46,460.460 INFO    ] No camera update needed
[2026-06-05 23:59:46,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:59:46,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:59:46,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:59:46,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:59:48,518.518 INFO    ] ================================================
[2026-06-05 23:59:48,533.533 INFO    ] Launching Daemon at Fri Jun  5 23:59:48 IST 2026
[2026-06-05 23:59:48,544.544 INFO    ] ================================================
[2026-06-05 23:59:49,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:59:49
[2026-06-05 23:59:49,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-05 23:59:50,071.071 INFO    ] Initializing speech engine...
[2026-06-05 23:59:50,079.079 INFO    ] 2026-06-05 23:59:50
[2026-06-05 23:59:50,326.326 INFO    ] 2026-06-05 23:59:50
[2026-06-05 23:59:50,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-05 23:59:50,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-05 23:59:50,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-05 23:59:50,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-05 23:59:50,809.809 INFO    ] time= 05/06/2026 23:59:50
[2026-06-05 23:59:50,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-05 23:59:50,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-05 23:59:51,024.024 INFO    ] No existing commands found in stream
[2026-06-05 23:59:56,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-05 23:59:56,051.051 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-05 23:59:56,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-05 23:59:56,674.674 INFO    ] Checking for system updates...
[2026-06-05 23:59:56,714.714 INFO    ] 200
[2026-06-05 23:59:56,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:56,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:56,773.773 INFO    ] No update needed
[2026-06-05 23:59:56,776.776 INFO    ] Checking for camera pi updates...
[2026-06-05 23:59:56,810.810 INFO    ] 200
[2026-06-05 23:59:56,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-05 23:59:56,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-05 23:59:57,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-05 23:59:57,009.009 INFO    ] No camera update needed
[2026-06-05 23:59:57,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-05 23:59:57,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-05 23:59:57,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-05 23:59:57,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-05 23:59:59,066.066 INFO    ] ================================================
[2026-06-05 23:59:59,082.082 INFO    ] Launching Daemon at Fri Jun  5 23:59:59 IST 2026
[2026-06-05 23:59:59,093.093 INFO    ] ================================================
[2026-06-05 23:59:59,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-05 23:59:59
